<!-- 
RSS generated by JIRA (9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b) at Mon Feb 12 09:17:25 CET 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Magnolia - Issue tracker</title>
    <link>https://jira.magnolia-cms.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-uk</language>    <build-info>
        <version>9.4.2</version>
        <build-number>940002</build-number>
        <build-date>19-01-2023</build-date>
    </build-info>


<item>
            <title>[MGNLUI-4517] Migrate LinkField to Vaadin 8</title>
                <link>https://jira.magnolia-cms.com/browse/MGNLUI-4517</link>
                <project id="10625" key="MGNLUI">Magnolia UI</project>
                    <description>&lt;p&gt;&lt;b&gt;Acceptance criteria:&lt;/b&gt;&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;functionality-wise there should be no regression compared to the current status of M5-based link field.
	&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
		&lt;li&gt;i.e. one should be able to reference the content items from arbitrary apps&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;the definition should be prepared to allow referencing content from sources that aren&apos;t bound to any app (see the technical steps below)&lt;/li&gt;
	&lt;li&gt;Preview of selected item (image, contact) is displayed next to the link field.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;The following technical steps need to be accomplished:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;come up with a link field definiton that is less bound to the apps, so that we would eventually be able to link the content that is not connected to any app (content type, remote service etc). Ideally the definition should not require the app to be present, however though, it should still be possible to delegate the chooser resolution to an app.&lt;/li&gt;
	&lt;li&gt;carefully design interaction with chooser dialog (should be done as a joint venture with chooser dialog story &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLUI-4638&quot; title=&quot;Chooser dialog in Vaadin 8&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLUI-4638&quot;&gt;&lt;del&gt;DEV-974&lt;/del&gt;&lt;/a&gt;, which is a pre-requisite for this story)&lt;/li&gt;
	&lt;li&gt;provide Vaadin 8 based field factory&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;tips:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;some relation to the select fields may be traced (both connect to a datasource after all, both select smth)&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="68203">MGNLUI-4517</key>
            <summary>Migrate LinkField to Vaadin 8</summary>
                <type id="3" iconUrl="https://jira.magnolia-cms.com/secure/viewavatar?size=xsmall&amp;avatarId=10898&amp;avatarType=issuetype">Task</type>
                                            <priority id="6" iconUrl="https://jira.magnolia-cms.com/images/icons/priorities/neutral.gif">Neutral</priority>
                        <status id="6" iconUrl="https://jira.magnolia-cms.com/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="11">Done</resolution>
                                        <assignee username="fgrilli">Federico Grilli</assignee>
                                    <reporter username="apchelintcev">Aleksandr Pchelintcev</reporter>
                        <labels>
                    </labels>
                <created>Fri, 20 Jul 2018 15:13:52 +0200</created>
                <updated>Wed, 26 Jun 2019 09:24:41 +0200</updated>
                            <resolved>Fri, 21 Sep 2018 14:08:37 +0200</resolved>
                                                    <fixVersion>6.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="165806" author="czimmermann" created="Tue, 31 Jul 2018 14:21:56 +0200"  >&lt;p&gt;RE: &quot;eventually be able to link the content that is not connected to any app (content type, remote service etc)&quot;. Does this ticket include how the link reference is &quot;physically&quot; stored? Or is it just about how the link/chooser is configured?&lt;/p&gt;</comment>
                            <comment id="165807" author="apchelintcev" created="Tue, 31 Jul 2018 14:33:54 +0200"  >&lt;p&gt;&lt;a href=&quot;https://jira.magnolia-cms.com/secure/ViewProfile.jspa?name=czimmermann&quot; class=&quot;user-hover&quot; rel=&quot;czimmermann&quot;&gt;czimmermann&lt;/a&gt; no, this story does not propose how exactly the link should be generated, which should be a datasource-specific operation anyway. What needs to be done in the scope of this story though is untiying the definition from the JCR-only concepts like &lt;tt&gt;IdentifierToPathConverter&lt;/tt&gt;, which should be shifted away from the &lt;tt&gt;LinkFieldDefinition&lt;/tt&gt; to its respective place.&lt;/p&gt;

&lt;p&gt;Once the definition is non bound to any particular domain, it would be essentially possible to re-use the LinkFields with other domains.&lt;/p&gt;</comment>
                            <comment id="169286" author="czimmermann" created="Tue, 18 Sep 2018 16:30:04 +0200"  >&lt;p&gt;So, if I am configuring a linkField to link to an asset - do I still need to provide:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;tt&gt;identifierToPathConverter:&lt;/tt&gt;&lt;br/&gt;
 &lt;tt&gt;&#160;&#160;&#160;&#160;&lt;/tt&gt;&lt;tt&gt;class&lt;/tt&gt;&lt;tt&gt;: &lt;a href=&quot;https://wiki.magnolia-cms.com/display/TH2/info.magnolia.dam.app.assets.field.translator.AssetCompositeIdKeyTranslator&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;info.magnolia.dam.app.assets.field.translator.AssetCompositeIdKeyTranslator&lt;/a&gt;&lt;/tt&gt;&lt;br/&gt;
 &lt;tt&gt;&#160;&#160;&lt;/tt&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;And for linking to a &quot;normal&quot; content app do i need to provide:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;identifierToPathConverter:&lt;br/&gt;
&#160; &#160; &#160; &#160; &#160;class: info.magnolia.ui.form.field.converter.BaseIdentifierToPathConverter&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Or can the datasource in the app provide that?&lt;/p&gt;</comment>
                            <comment id="169288" author="fgrilli" created="Tue, 18 Sep 2018 16:51:04 +0200"  >&lt;p&gt;&lt;a href=&quot;https://jira.magnolia-cms.com/secure/ViewProfile.jspa?name=czimmermann&quot; class=&quot;user-hover&quot; rel=&quot;czimmermann&quot;&gt;czimmermann&lt;/a&gt; no need to provide that anymore. M6 framework provides a strategy to resolve those converters starting from datasources. Quoting the javadoc  from &lt;tt&gt;ItemToLinkConverterResolverStrategy&lt;/tt&gt; can hopefully help clarifying this. At any rate, users do not need to specify those in configuration.&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
/**
 * Attempts to resolve an item to link {@link com.vaadin.data.Converter} &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; a given field based on its datasource configuration.
 * Typically item to link converters are used to represent a complex object as a simple object that references the complex one.
 * For instance, a JCR Node may be represented by its identifier, that is a plain &lt;span class=&quot;code-object&quot;&gt;String&lt;/span&gt;.
 * In &lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt; example, an item to link converter will be able to transform a Node to its identifier and vice versa.
 */
&lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;interface&lt;/span&gt; ItemToLinkConverterResolverStrategy&amp;lt;PRESENTATION, MODEL&amp;gt; ...
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="169348" author="czimmermann" created="Wed, 19 Sep 2018 10:50:43 +0200"  >&lt;p&gt;Cool!&lt;/p&gt;

&lt;p&gt;What if my linkfield is linking to an M5 style app, what works and doesn&apos;t in this case?&lt;br/&gt;
I guess none of the datasource based things work, or is there a sort of &quot;compatibility layer&quot;?&lt;/p&gt;</comment>
                            <comment id="169359" author="fgrilli" created="Wed, 19 Sep 2018 12:05:12 +0200"  >&lt;p&gt;That case currently won&apos;t work. A compatibility layer hasn&apos;t been considered yet afaik. However, migration is of course in our radar &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLUI-4584&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;https://jira.magnolia-cms.com/browse/MGNLUI-4584&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="169470" author="czimmermann" created="Thu, 20 Sep 2018 09:05:46 +0200"  >&lt;p&gt;OK, makes sense.&lt;br/&gt;
I see developers getting tripped up by this - they follow a docs example of setting up a link field to M6 app, but it does not work when they do it because they try to link to M5 app with new syntax. &lt;/p&gt;

&lt;p&gt;Is there a clear error message in the logs in this case?&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10160">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="68199">MGNLUI-4516</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10020">
                    <name>dependency</name>
                                            <outwardlinks description="depends upon">
                                        <issuelink>
            <issuekey id="66610">MGNLUI-4638</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_14166" key="com.okapya.jira.checklist:checklist">
                        <customfieldname>Acceptance criteria</customfieldname>
                        <customfieldvalues>
                            
        <checklist>
        <![CDATA[
                            




                
                                    <div class="o-completion" style="display: flex; flex-shrink: 0;"><span  class="aui-lozenge aui-lozenge-complete" style="font-size: 12px; font-weight: normal; display: flex; flex-direction: row; align-items: center;" ><span style="padding-right: 4px; vertical-align: middle;"><svg width="15" height="15" viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg" fill="white"><path clip-rule="evenodd" d="m10.41037,3.42544l-7.86501,0c-0.72395,0 -1.31084,0.58688 -1.31084,1.31084l0,7.86508c0,0.7239 0.58689,1.3108 1.31084,1.3108l7.86501,0c0.724,0 1.3109,-0.5869 1.3109,-1.3108l0,-7.86508c0,-0.72396 -0.5869,-1.31084 -1.3109,-1.31084zm-7.86501,-0.65542c-1.08593,0 -1.96626,0.88032 -1.96626,1.96626l0,7.86508c0,1.0859 0.88033,1.9662 1.96626,1.9662l7.86501,0c1.086,0 1.9663,-0.8803 1.9663,-1.9662l0,-7.86508c0,-1.08594 -0.8803,-1.96626 -1.9663,-1.96626l-7.86501,0z" fill-rule="evenodd"/><path d="m5.09049,10.18526l-1.82767,-1.82766l-0.78479,0.78479l2.61246,2.61246l5.38758,-5.38754l-0.78483,-0.78479l-4.60275,4.60274z"/></svg></span><span>Empty</span></span></div>
                        ]]>
    </checklist>


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10111" key="com.atlassian.jira.toolkit:reporterdomain">
                        <customfieldname>Company</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>magnolia-cms.com</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10031" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Tue, 31 Jul 2018 14:21:56 +0200</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_12730" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_14151" key="com.atlassian.jira.toolkit:message">
                        <customfieldname>Docu info</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_12130" key="com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes">
                        <customfieldname>Documentation update required</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="13300"><![CDATA[Yes]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_10246" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>MGNLUI-2542</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10061" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comm is not jira-dev</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10071" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last participant</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>apchelintcev</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13136" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            5 years, 21 weeks, 4 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10020" key="com.atlassian.jira.toolkit:attachments">
                        <customfieldname>Number of attachments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10150" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname>Number of comments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>7.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>apchelintcev</customfieldvalue>
            <customfieldvalue>czimmermann</customfieldvalue>
            <customfieldvalue>fgrilli</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_10833" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|hzzydd:5r</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10244" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10245" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="788">Basel 153</customfieldvalue>
    <customfieldvalue id="795">Basel 154</customfieldvalue>
    <customfieldvalue id="802">Basel 155</customfieldvalue>
    <customfieldvalue id="813">Basel 156</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10242" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Story Points</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>13.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_12631" key="com.atlassian.jpo:jpo-custom-field-baseline-end">
                        <customfieldname>Target end</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Sat, 1 Sep 2018 01:59:59 +0200</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_12630" key="com.atlassian.jpo:jpo-custom-field-baseline-start">
                        <customfieldname>Target start</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Mon, 20 Aug 2018 02:00:00 +0200</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_14167" key="com.okapya.jira.checklist:checklist">
                        <customfieldname>Task DoR</customfieldname>
                        <customfieldvalues>
                            
        <checklist>
        <![CDATA[
                            




                
                                    <div class="o-completion" style="display: flex; flex-shrink: 0;"><span  class="aui-lozenge aui-lozenge-complete" style="font-size: 12px; font-weight: normal; display: flex; flex-direction: row; align-items: center;" ><span style="padding-right: 4px; vertical-align: middle;"><svg width="15" height="15" viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg" fill="white"><path clip-rule="evenodd" d="m10.41037,3.42544l-7.86501,0c-0.72395,0 -1.31084,0.58688 -1.31084,1.31084l0,7.86508c0,0.7239 0.58689,1.3108 1.31084,1.3108l7.86501,0c0.724,0 1.3109,-0.5869 1.3109,-1.3108l0,-7.86508c0,-0.72396 -0.5869,-1.31084 -1.3109,-1.31084zm-7.86501,-0.65542c-1.08593,0 -1.96626,0.88032 -1.96626,1.96626l0,7.86508c0,1.0859 0.88033,1.9662 1.96626,1.9662l7.86501,0c1.086,0 1.9663,-0.8803 1.9663,-1.9662l0,-7.86508c0,-1.08594 -0.8803,-1.96626 -1.9663,-1.96626l-7.86501,0z" fill-rule="evenodd"/><path d="m5.09049,10.18526l-1.82767,-1.82766l-0.78479,0.78479l2.61246,2.61246l5.38758,-5.38754l-0.78483,-0.78479l-4.60275,4.60274z"/></svg></span><span>Empty</span></span></div>
                        ]]>
    </checklist>


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_14145" key="com.intenso.jira.issue-templates:issue-templates-customfield">
                        <customfieldname>Template</customfieldname>
                        <customfieldvalues>
                            


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_15131" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Time in Discovery</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10032" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time in Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>