<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://sugarclub.sugarai.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav</link><description /><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav</link><pubDate>Mon, 12 Dec 2022 16:46:06 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Current Revision posted to Dev Tutorials by Rafael Fernandes on 12/12/2022 4:46:06 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table style="height:1000px;"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;li&gt;Quick Create menu dedicated to create new records&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/321x344/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_27-at-10.43.13-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;Quick Create view has been redesigned and presents the modules on click.&lt;/p&gt;
&lt;p&gt;Note this view does not require secondary-action as others with submenu.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;p&gt;It displays all the default modules available to the user ordered by the &lt;a href="/dev-club/w/dev-tutorials/758/expected-behavior"&gt;current user&amp;#39;s preference&lt;/a&gt;.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/500x375/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_12_2D00_02-at-9.05.53-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;When Sidebar is collapsed, Sugar&amp;nbsp;displays a list of &amp;quot;pinned&amp;quot; modules.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Displays icons or abbreviations of modules available to the current user.&lt;/li&gt;
&lt;li&gt;It uses sugar&amp;#39;s config called&amp;nbsp;&lt;code&gt;maxPinnedModules&lt;/code&gt; to determine how many modules to display&lt;/li&gt;
&lt;li&gt;This setting is defaulted to 4 (four) items but &lt;a href="/dev-club/w/dev-tutorials/759/pinned-modules-override"&gt;can be updated by an admin&lt;/a&gt; with access to the filesystem&lt;/li&gt;
&lt;li&gt;Keep in mind that Sugar always adds 1 (one) extra item to the bottom of the list for the module in focus.&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gdtnm4ua0"&gt;Actions&lt;/h2&gt;
&lt;h3 id="mcetoc_1gdtnm4ua1"&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views. By default if a &lt;code&gt;route&lt;/code&gt; property is provided in the view object in the layout metadata, the Primary Action will be a link to the route provided. For example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;&amp;lt;some-custom-view&amp;gt;&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Otherwise, if you&amp;#39;re using a custom view and the controller has a &lt;code&gt;primaryActionOnClick&lt;/code&gt; method defined, that will be used in addition to the &lt;code&gt;route&lt;/code&gt; property.&amp;nbsp;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdtnm4ua2"&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Secondary Actions do have&amp;nbsp;some default behaviour. If the template has the following markup present, the kebab will render on hover:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="html"&gt;&amp;lt;button class=&amp;quot;sidebar-nav-item-kebab bg-transparent absolute p-0 h-full&amp;quot;&amp;gt;
   &amp;lt;i class=&amp;quot;{{buildIcon &amp;#39;sicon-kebab&amp;#39;}} text-white&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;
&amp;lt;/button&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;If metadata is provided with certain keys, clicking on the kebab icon will render a flyout menu. From the &lt;a href="/dev-club/dev-onboarding/w/documentation/742/moving-footer-content-to-sidebar-nav"&gt;Moving Footer Content to Sidebar Nav&lt;/a&gt; example, the following metadata is defined in;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;./custom/Extension/application/Ext/clients/base/layouts/sidebar-nav/sidebar-nav.php&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;?php

$viewdefs[&amp;#39;base&amp;#39;][&amp;#39;layout&amp;#39;][&amp;#39;sidebar-nav&amp;#39;][&amp;#39;components&amp;#39;][] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-bell-lg&amp;#39;,
                    &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;Hello!&amp;#39;,
                    &amp;#39;flyoutComponents&amp;#39; =&amp;gt; [
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-header&amp;#39;,
                            &amp;#39;title&amp;#39; =&amp;gt; &amp;#39;Greetings&amp;#39;,
                        ],
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; [
                                &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-actions&amp;#39;,
                                &amp;#39;actions&amp;#39; =&amp;gt; [
                                    [
                                        &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                                        &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;LBL_ACCOUNTS&amp;#39;,
                                        &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-account-lg&amp;#39;,
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The flyoutComponents array will render all the views that are pass to it. In this case, we load a &lt;code&gt;sidebar-nav-item-header&lt;/code&gt; component and a &lt;code&gt;sidebar-nav-item-flyout-actions&lt;/code&gt; component. Similar to a Primary Action, you can override the default&amp;nbsp;&lt;code&gt;secondaryActionOnClick&lt;/code&gt; method in your custom view controller to change the behaviour of clicking on the kebab menu.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;p id="mcetoc_1f5uvkqns0"&gt;&lt;span style="font-size:18px;"&gt;You understand the new&lt;span&gt;&amp;nbsp;sidebar-nav&lt;/span&gt;, let&amp;#39;s get to component mapping:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;&lt;strong&gt;Move on to&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href="/dev-club/w/dev-tutorials/729/component-mapping"&gt;Component Mapping&lt;/a&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/20</link><pubDate>Mon, 12 Dec 2022 16:45:31 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 20 posted to Dev Tutorials by Rafael Fernandes on 12/12/2022 4:45:31 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table style="height:800px;"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;li&gt;Quick Create menu dedicated to create new records&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/321x344/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_27-at-10.43.13-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;Quick Create view has been redesigned and presents the modules on click.&lt;/p&gt;
&lt;p&gt;Note this view does not require secondary-action as others with submenu.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;p&gt;It displays all the default modules available to the user ordered by the &lt;a href="/dev-club/w/dev-tutorials/758/expected-behavior"&gt;current user&amp;#39;s preference&lt;/a&gt;.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/500x375/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_12_2D00_02-at-9.05.53-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;When Sidebar is collapsed, Sugar&amp;nbsp;displays a list of &amp;quot;pinned&amp;quot; modules.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Displays icons or abbreviations of modules available to the current user.&lt;/li&gt;
&lt;li&gt;It uses sugar&amp;#39;s config called&amp;nbsp;&lt;code&gt;maxPinnedModules&lt;/code&gt; to determine how many modules to display&lt;/li&gt;
&lt;li&gt;This setting is defaulted to 4 (four) items but &lt;a href="/dev-club/w/dev-tutorials/759/pinned-modules-override"&gt;can be updated by an admin&lt;/a&gt; with access to the filesystem&lt;/li&gt;
&lt;li&gt;Keep in mind that Sugar always adds 1 (one) extra item to the bottom of the list for the module in focus.&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gdtnm4ua0"&gt;Actions&lt;/h2&gt;
&lt;h3 id="mcetoc_1gdtnm4ua1"&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views. By default if a &lt;code&gt;route&lt;/code&gt; property is provided in the view object in the layout metadata, the Primary Action will be a link to the route provided. For example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;&amp;lt;some-custom-view&amp;gt;&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Otherwise, if you&amp;#39;re using a custom view and the controller has a &lt;code&gt;primaryActionOnClick&lt;/code&gt; method defined, that will be used in addition to the &lt;code&gt;route&lt;/code&gt; property.&amp;nbsp;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdtnm4ua2"&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Secondary Actions do have&amp;nbsp;some default behaviour. If the template has the following markup present, the kebab will render on hover:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="html"&gt;&amp;lt;button class=&amp;quot;sidebar-nav-item-kebab bg-transparent absolute p-0 h-full&amp;quot;&amp;gt;
   &amp;lt;i class=&amp;quot;{{buildIcon &amp;#39;sicon-kebab&amp;#39;}} text-white&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;
&amp;lt;/button&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;If metadata is provided with certain keys, clicking on the kebab icon will render a flyout menu. From the &lt;a href="/dev-club/dev-onboarding/w/documentation/742/moving-footer-content-to-sidebar-nav"&gt;Moving Footer Content to Sidebar Nav&lt;/a&gt; example, the following metadata is defined in;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;./custom/Extension/application/Ext/clients/base/layouts/sidebar-nav/sidebar-nav.php&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;?php

$viewdefs[&amp;#39;base&amp;#39;][&amp;#39;layout&amp;#39;][&amp;#39;sidebar-nav&amp;#39;][&amp;#39;components&amp;#39;][] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-bell-lg&amp;#39;,
                    &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;Hello!&amp;#39;,
                    &amp;#39;flyoutComponents&amp;#39; =&amp;gt; [
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-header&amp;#39;,
                            &amp;#39;title&amp;#39; =&amp;gt; &amp;#39;Greetings&amp;#39;,
                        ],
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; [
                                &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-actions&amp;#39;,
                                &amp;#39;actions&amp;#39; =&amp;gt; [
                                    [
                                        &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                                        &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;LBL_ACCOUNTS&amp;#39;,
                                        &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-account-lg&amp;#39;,
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The flyoutComponents array will render all the views that are pass to it. In this case, we load a &lt;code&gt;sidebar-nav-item-header&lt;/code&gt; component and a &lt;code&gt;sidebar-nav-item-flyout-actions&lt;/code&gt; component. Similar to a Primary Action, you can override the default&amp;nbsp;&lt;code&gt;secondaryActionOnClick&lt;/code&gt; method in your custom view controller to change the behaviour of clicking on the kebab menu.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;p id="mcetoc_1f5uvkqns0"&gt;&lt;span style="font-size:18px;"&gt;You understand the new&lt;span&gt;&amp;nbsp;sidebar-nav&lt;/span&gt;, let&amp;#39;s get to component mapping:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;&lt;strong&gt;Move on to&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href="/dev-club/w/dev-tutorials/729/component-mapping"&gt;Component Mapping&lt;/a&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/19</link><pubDate>Fri, 02 Dec 2022 14:13:35 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 19 posted to Dev Tutorials by Rafael Fernandes on 12/2/2022 2:13:35 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;li&gt;Quick Create menu dedicated to create new records&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/321x344/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_27-at-10.43.13-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;Quick Create view has been redesigned and presents the modules on click.&lt;/p&gt;
&lt;p&gt;Note this view does not require secondary-action as others with submenu.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;p&gt;It displays all the default modules available to the user ordered by the &lt;a href="/dev-club/w/dev-tutorials/758/expected-behavior"&gt;current user&amp;#39;s preference&lt;/a&gt;.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/500x375/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_12_2D00_02-at-9.05.53-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;When Sidebar is collapsed, Sugar&amp;nbsp;displays a list of &amp;quot;pinned&amp;quot; modules.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Displays icons or abbreviations of modules available to the current user.&lt;/li&gt;
&lt;li&gt;It uses sugar&amp;#39;s config called&amp;nbsp;&lt;code&gt;maxPinnedModules&lt;/code&gt; to determine how many modules to display&lt;/li&gt;
&lt;li&gt;This setting is defaulted to 4 (four) items but &lt;a href="/dev-club/w/dev-tutorials/759/pinned-modules-override"&gt;can be updated by an admin&lt;/a&gt; with access to the filesystem&lt;/li&gt;
&lt;li&gt;Keep in mind that Sugar always adds 1 (one) extra item to the bottom of the list for the module in focus.&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gdtnm4ua0"&gt;Actions&lt;/h2&gt;
&lt;h3 id="mcetoc_1gdtnm4ua1"&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views. By default if a &lt;code&gt;route&lt;/code&gt; property is provided in the view object in the layout metadata, the Primary Action will be a link to the route provided. For example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;&amp;lt;some-custom-view&amp;gt;&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Otherwise, if you&amp;#39;re using a custom view and the controller has a &lt;code&gt;primaryActionOnClick&lt;/code&gt; method defined, that will be used in addition to the &lt;code&gt;route&lt;/code&gt; property.&amp;nbsp;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdtnm4ua2"&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Secondary Actions do have&amp;nbsp;some default behaviour. If the template has the following markup present, the kebab will render on hover:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="html"&gt;&amp;lt;button class=&amp;quot;sidebar-nav-item-kebab bg-transparent absolute p-0 h-full&amp;quot;&amp;gt;
   &amp;lt;i class=&amp;quot;{{buildIcon &amp;#39;sicon-kebab&amp;#39;}} text-white&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;
&amp;lt;/button&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;If metadata is provided with certain keys, clicking on the kebab icon will render a flyout menu. From the &lt;a href="/dev-club/dev-onboarding/w/documentation/742/moving-footer-content-to-sidebar-nav"&gt;Moving Footer Content to Sidebar Nav&lt;/a&gt; example, the following metadata is defined in;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;./custom/Extension/application/Ext/clients/base/layouts/sidebar-nav/sidebar-nav.php&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;?php

$viewdefs[&amp;#39;base&amp;#39;][&amp;#39;layout&amp;#39;][&amp;#39;sidebar-nav&amp;#39;][&amp;#39;components&amp;#39;][] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-bell-lg&amp;#39;,
                    &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;Hello!&amp;#39;,
                    &amp;#39;flyoutComponents&amp;#39; =&amp;gt; [
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-header&amp;#39;,
                            &amp;#39;title&amp;#39; =&amp;gt; &amp;#39;Greetings&amp;#39;,
                        ],
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; [
                                &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-actions&amp;#39;,
                                &amp;#39;actions&amp;#39; =&amp;gt; [
                                    [
                                        &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                                        &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;LBL_ACCOUNTS&amp;#39;,
                                        &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-account-lg&amp;#39;,
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The flyoutComponents array will render all the views that are pass to it. In this case, we load a &lt;code&gt;sidebar-nav-item-header&lt;/code&gt; component and a &lt;code&gt;sidebar-nav-item-flyout-actions&lt;/code&gt; component. Similar to a Primary Action, you can override the default&amp;nbsp;&lt;code&gt;secondaryActionOnClick&lt;/code&gt; method in your custom view controller to change the behaviour of clicking on the kebab menu.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;p id="mcetoc_1f5uvkqns0"&gt;&lt;span style="font-size:18px;"&gt;You understand the new&lt;span&gt;&amp;nbsp;sidebar-nav&lt;/span&gt;, let&amp;#39;s get to component mapping:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;&lt;strong&gt;Move on to&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href="/dev-club/w/dev-tutorials/729/component-mapping"&gt;Component Mapping&lt;/a&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/18</link><pubDate>Mon, 10 Oct 2022 12:59:23 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 18 posted to Dev Tutorials by Rafael Fernandes on 10/10/2022 12:59:23 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;li&gt;Quick Create menu dedicated to create new records&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/321x344/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_27-at-10.43.13-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;Quick Create view has been redesigned and presents the modules on click.&lt;/p&gt;
&lt;p&gt;Note this view does not require secondary-action as others with submenu.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gdtnm4ua0"&gt;Actions&lt;/h2&gt;
&lt;h3 id="mcetoc_1gdtnm4ua1"&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views. By default if a &lt;code&gt;route&lt;/code&gt; property is provided in the view object in the layout metadata, the Primary Action will be a link to the route provided. For example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;&amp;lt;some-custom-view&amp;gt;&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Otherwise, if you&amp;#39;re using a custom view and the controller has a &lt;code&gt;primaryActionOnClick&lt;/code&gt; method defined, that will be used in addition to the &lt;code&gt;route&lt;/code&gt; property.&amp;nbsp;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdtnm4ua2"&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Secondary Actions do have&amp;nbsp;some default behaviour. If the template has the following markup present, the kebab will render on hover:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="html"&gt;&amp;lt;button class=&amp;quot;sidebar-nav-item-kebab bg-transparent absolute p-0 h-full&amp;quot;&amp;gt;
   &amp;lt;i class=&amp;quot;{{buildIcon &amp;#39;sicon-kebab&amp;#39;}} text-white&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;
&amp;lt;/button&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;If metadata is provided with certain keys, clicking on the kebab icon will render a flyout menu. From the &lt;a href="/dev-club/dev-onboarding/w/documentation/742/moving-footer-content-to-sidebar-nav"&gt;Moving Footer Content to Sidebar Nav&lt;/a&gt; example, the following metadata is defined in;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;./custom/Extension/application/Ext/clients/base/layouts/sidebar-nav/sidebar-nav.php&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;?php

$viewdefs[&amp;#39;base&amp;#39;][&amp;#39;layout&amp;#39;][&amp;#39;sidebar-nav&amp;#39;][&amp;#39;components&amp;#39;][] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-bell-lg&amp;#39;,
                    &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;Hello!&amp;#39;,
                    &amp;#39;flyoutComponents&amp;#39; =&amp;gt; [
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-header&amp;#39;,
                            &amp;#39;title&amp;#39; =&amp;gt; &amp;#39;Greetings&amp;#39;,
                        ],
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; [
                                &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-actions&amp;#39;,
                                &amp;#39;actions&amp;#39; =&amp;gt; [
                                    [
                                        &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                                        &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;LBL_ACCOUNTS&amp;#39;,
                                        &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-account-lg&amp;#39;,
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The flyoutComponents array will render all the views that are pass to it. In this case, we load a &lt;code&gt;sidebar-nav-item-header&lt;/code&gt; component and a &lt;code&gt;sidebar-nav-item-flyout-actions&lt;/code&gt; component. Similar to a Primary Action, you can override the default&amp;nbsp;&lt;code&gt;secondaryActionOnClick&lt;/code&gt; method in your custom view controller to change the behaviour of clicking on the kebab menu.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;p id="mcetoc_1f5uvkqns0"&gt;&lt;span style="font-size:18px;"&gt;You understand the new&lt;span&gt;&amp;nbsp;sidebar-nav&lt;/span&gt;, let&amp;#39;s get to component mapping:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;&lt;strong&gt;Move on to&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href="/dev-club/w/dev-tutorials/729/component-mapping"&gt;Component Mapping&lt;/a&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/16</link><pubDate>Wed, 05 Oct 2022 15:18:37 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Scott King</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 16 posted to Dev Tutorials by Scott King on 10/5/2022 3:18:37 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;li&gt;Quick Create menu dedicated to create new records&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/321x344/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_27-at-10.43.13-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;Quick Create view has been redesigned and presents the modules on click.&lt;/p&gt;
&lt;p&gt;Note this view does not require secondary-action as others with submenu.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gdtnm4ua0"&gt;Actions&lt;/h2&gt;
&lt;h3 id="mcetoc_1gdtnm4ua1"&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views. By default if a &lt;code&gt;route&lt;/code&gt; property is provided in the view object in the layout metadata, the Primary Action will be a link to the route provided. For example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;&amp;lt;some-custom-view&amp;gt;&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Otherwise, if you&amp;#39;re using a custom view and the controller has a &lt;code&gt;primaryActionOnClick&lt;/code&gt; method defined, that will be used in addition to the &lt;code&gt;route&lt;/code&gt; property.&amp;nbsp;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdtnm4ua2"&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Secondary Actions do have&amp;nbsp;some default behaviour. If the template has the following markup present, the kebab will render on hover:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="html"&gt;&amp;lt;button class=&amp;quot;sidebar-nav-item-kebab bg-transparent absolute p-0 h-full&amp;quot;&amp;gt;
   &amp;lt;i class=&amp;quot;{{buildIcon &amp;#39;sicon-kebab&amp;#39;}} text-white&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;
&amp;lt;/button&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;If metadata is provided with certain keys, clicking on the kebab icon will render a flyout menu. From the &lt;a href="/dev-club/dev-onboarding/w/documentation/742/moving-footer-content-to-sidebar-nav"&gt;Moving Footer Content to Sidebar Nav&lt;/a&gt; example, the following metadata is defined in;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;./custom/Extension/application/Ext/clients/base/layouts/sidebar-nav/sidebar-nav.php&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;?php

$viewdefs[&amp;#39;base&amp;#39;][&amp;#39;layout&amp;#39;][&amp;#39;sidebar-nav&amp;#39;][&amp;#39;components&amp;#39;][] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-bell-lg&amp;#39;,
                    &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;Hello!&amp;#39;,
                    &amp;#39;flyoutComponents&amp;#39; =&amp;gt; [
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-header&amp;#39;,
                            &amp;#39;title&amp;#39; =&amp;gt; &amp;#39;Greetings&amp;#39;,
                        ],
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; [
                                &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-actions&amp;#39;,
                                &amp;#39;actions&amp;#39; =&amp;gt; [
                                    [
                                        &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                                        &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;LBL_ACCOUNTS&amp;#39;,
                                        &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-account-lg&amp;#39;,
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The flyoutComponents array will render all the views that are pass to it. In this case, we load a &lt;code&gt;sidebar-nav-item-header&lt;/code&gt; component and a &lt;code&gt;sidebar-nav-item-flyout-actions&lt;/code&gt; component. Similar to a Primary Action, you can override the default&amp;nbsp;&lt;code&gt;secondaryActionOnClick&lt;/code&gt; method in your custom view controller to change the behaviour of clicking on the kebab menu.&amp;nbsp;&lt;/p&gt;
&lt;hr /&gt;
&lt;p id="mcetoc_1f5uvkqns0"&gt;&lt;span style="font-size:18px;"&gt;You understand the new&lt;span&gt;&amp;nbsp;sidebar-nav&lt;/span&gt;, let&amp;#39;s get to component mapping:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;&lt;strong&gt;Move on to&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href="/dev-club/dev-onboarding/w/documentation/729/component-mapping"&gt;Component Mapping&lt;/a&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/17</link><pubDate>Wed, 05 Oct 2022 15:18:37 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Scott King</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 17 posted to Dev Tutorials by Scott King on 10/5/2022 3:18:37 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;li&gt;Quick Create menu dedicated to create new records&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/321x344/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_27-at-10.43.13-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;Quick Create view has been redesigned and presents the modules on click.&lt;/p&gt;
&lt;p&gt;Note this view does not require secondary-action as others with submenu.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-14/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gdtnm4ua0"&gt;Actions&lt;/h2&gt;
&lt;h3 id="mcetoc_1gdtnm4ua1"&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views. By default if a &lt;code&gt;route&lt;/code&gt; property is provided in the view object in the layout metadata, the Primary Action will be a link to the route provided. For example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;&amp;lt;some-custom-view&amp;gt;&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Otherwise, if you&amp;#39;re using a custom view and the controller has a &lt;code&gt;primaryActionOnClick&lt;/code&gt; method defined, that will be used in addition to the &lt;code&gt;route&lt;/code&gt; property.&amp;nbsp;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdtnm4ua2"&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Secondary Actions do have&amp;nbsp;some default behaviour. If the template has the following markup present, the kebab will render on hover:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="html"&gt;&amp;lt;button class=&amp;quot;sidebar-nav-item-kebab bg-transparent absolute p-0 h-full&amp;quot;&amp;gt;
   &amp;lt;i class=&amp;quot;{{buildIcon &amp;#39;sicon-kebab&amp;#39;}} text-white&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;
&amp;lt;/button&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;If metadata is provided with certain keys, clicking on the kebab icon will render a flyout menu. From the &lt;a href="/dev-club/dev-onboarding/w/documentation/742/moving-footer-content-to-sidebar-nav"&gt;Moving Footer Content to Sidebar Nav&lt;/a&gt; example, the following metadata is defined in;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;./custom/Extension/application/Ext/clients/base/layouts/sidebar-nav/sidebar-nav.php&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;?php

$viewdefs[&amp;#39;base&amp;#39;][&amp;#39;layout&amp;#39;][&amp;#39;sidebar-nav&amp;#39;][&amp;#39;components&amp;#39;][] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-bell-lg&amp;#39;,
                    &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;Hello!&amp;#39;,
                    &amp;#39;flyoutComponents&amp;#39; =&amp;gt; [
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-header&amp;#39;,
                            &amp;#39;title&amp;#39; =&amp;gt; &amp;#39;Greetings&amp;#39;,
                        ],
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; [
                                &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-actions&amp;#39;,
                                &amp;#39;actions&amp;#39; =&amp;gt; [
                                    [
                                        &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                                        &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;LBL_ACCOUNTS&amp;#39;,
                                        &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-account-lg&amp;#39;,
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The flyoutComponents array will render all the views that are pass to it. In this case, we load a &lt;code&gt;sidebar-nav-item-header&lt;/code&gt; component and a &lt;code&gt;sidebar-nav-item-flyout-actions&lt;/code&gt; component. Similar to a Primary Action, you can override the default&amp;nbsp;&lt;code&gt;secondaryActionOnClick&lt;/code&gt; method in your custom view controller to change the behaviour of clicking on the kebab menu.&amp;nbsp;&lt;/p&gt;
&lt;hr /&gt;
&lt;p id="mcetoc_1f5uvkqns0"&gt;&lt;span style="font-size:18px;"&gt;You understand the new&lt;span&gt;&amp;nbsp;sidebar-nav&lt;/span&gt;, let&amp;#39;s get to component mapping:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;&lt;strong&gt;Move on to&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href="/dev-club/dev-onboarding/w/documentation/729/component-mapping"&gt;Component Mapping&lt;/a&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/15</link><pubDate>Wed, 05 Oct 2022 15:17:47 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Scott King</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 15 posted to Dev Tutorials by Scott King on 10/5/2022 3:17:47 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;li&gt;Quick Create menu dedicated to create new records&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/321x344/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_27-at-10.43.13-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;Quick Create view has been redesigned and presents the modules on click.&lt;/p&gt;
&lt;p&gt;Note this view does not require secondary-action as others with submenu.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gdtnm4ua0"&gt;Actions&lt;/h2&gt;
&lt;h3 id="mcetoc_1gdtnm4ua1"&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views. By default if a &lt;code&gt;route&lt;/code&gt; property is provided in the view object in the layout metadata, the Primary Action will be a link to the route provided. For example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;&amp;lt;some-custom-view&amp;gt;&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Otherwise, if you&amp;#39;re using a custom view and the controller has a &lt;code&gt;primaryActionOnClick&lt;/code&gt; method defined, that will be used in addition to the &lt;code&gt;route&lt;/code&gt; property.&amp;nbsp;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdtnm4ua2"&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Secondary Actions do have&amp;nbsp;some default behaviour. If the template has the following markup present, the kebab will render on hover:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="html"&gt;&amp;lt;button class=&amp;quot;sidebar-nav-item-kebab bg-transparent absolute p-0 h-full&amp;quot;&amp;gt;
   &amp;lt;i class=&amp;quot;{{buildIcon &amp;#39;sicon-kebab&amp;#39;}} text-white&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;
&amp;lt;/button&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;If metadata is provided with certain keys, clicking on the kebab icon will render a flyout menu. From the &lt;a href="/dev-club/dev-onboarding/w/documentation/742/moving-footer-content-to-sidebar-nav"&gt;Moving Footer Content to Sidebar Nav&lt;/a&gt; example, the following metadata is defined in;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;./custom/Extension/application/Ext/clients/base/layouts/sidebar-nav/sidebar-nav.php&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;?php

$viewdefs[&amp;#39;base&amp;#39;][&amp;#39;layout&amp;#39;][&amp;#39;sidebar-nav&amp;#39;][&amp;#39;components&amp;#39;][] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;greeting-nav-item&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-bell-lg&amp;#39;,
                    &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;Hello!&amp;#39;,
                    &amp;#39;flyoutComponents&amp;#39; =&amp;gt; [
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-header&amp;#39;,
                            &amp;#39;title&amp;#39; =&amp;gt; &amp;#39;Greetings&amp;#39;,
                        ],
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; [
                                &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-actions&amp;#39;,
                                &amp;#39;actions&amp;#39; =&amp;gt; [
                                    [
                                        &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                                        &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;LBL_ACCOUNTS&amp;#39;,
                                        &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-account-lg&amp;#39;,
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The flyoutComponents array will render all the views that are pass to it. In this case, we load a &lt;code&gt;sidebar-nav-item-header&lt;/code&gt; component and a &lt;code&gt;sidebar-nav-item-flyout-actions&lt;/code&gt; component. Similar to a Primary Action, you can override the default&amp;nbsp;&lt;code&gt;secondaryActionOnClick&lt;/code&gt; method in your custom view controller to change the behaviour of clicking on the kebab menu.&amp;nbsp;&lt;/p&gt;
&lt;hr /&gt;
&lt;p id="mcetoc_1f5uvkqns0"&gt;&lt;span style="font-size:18px;"&gt;You understand the new&lt;span&gt;&amp;nbsp;sidebar-nav&lt;/span&gt;, let&amp;#39;s get to component mapping:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;&lt;strong&gt;Move on to&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href="/dev-club/dev-onboarding/w/documentation/729/component-mapping"&gt;Component Mapping&lt;/a&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/14</link><pubDate>Wed, 28 Sep 2022 18:35:49 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 14 posted to Dev Tutorials by Rafael Fernandes on 9/28/2022 6:35:49 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;li&gt;Quick Create menu dedicated to create new records&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/321x344/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_27-at-10.43.13-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;Quick Create view has been redesigned and presents the modules on click.&lt;/p&gt;
&lt;p&gt;Note this view does not require secondary-action as others with submenu.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gdtnm4ua0"&gt;Actions&lt;/h2&gt;
&lt;h3 id="mcetoc_1gdtnm4ua1"&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views. By default if a &lt;code&gt;route&lt;/code&gt; property is provided in the view object in the layout metadata, the Primary Action will be a link to the route provided. For example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;footer-greet-button&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;&amp;lt;some-custom-view&amp;gt;&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Otherwise, if you&amp;#39;re using a custom view and the controller has a &lt;code&gt;primaryActionOnClick&lt;/code&gt; method defined, that will be used in addition to the &lt;code&gt;route&lt;/code&gt; property.&amp;nbsp;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdtnm4ua2"&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Secondary Actions do have&amp;nbsp;some default behaviour. If the template has the following markup present, the kebab will render on hover:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="html"&gt;&amp;lt;button class=&amp;quot;sidebar-nav-item-kebab bg-transparent absolute p-0 h-full&amp;quot;&amp;gt;
   &amp;lt;i class=&amp;quot;{{buildIcon &amp;#39;sicon-kebab&amp;#39;}} text-white&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;
&amp;lt;/button&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;If metadata is provided with certain keys, clicking on the kebab icon will render a flyout menu. From the &lt;a href="/dev-club/dev-onboarding/w/documentation/742/moving-footer-content-to-sidebar-nav"&gt;Moving Footer Content to Sidebar Nav&lt;/a&gt; example, the following metadata is defined in;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;./custom/Extension/application/Ext/clients/base/layouts/sidebar-nav/sidebar-nav.php&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;?php

$viewdefs[&amp;#39;base&amp;#39;][&amp;#39;layout&amp;#39;][&amp;#39;sidebar-nav&amp;#39;][&amp;#39;components&amp;#39;][] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;footer-greet-button&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;footer-greet-button&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-bell-lg&amp;#39;,
                    &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;Hello!&amp;#39;,
                    &amp;#39;flyoutComponents&amp;#39; =&amp;gt; [
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-header&amp;#39;,
                            &amp;#39;title&amp;#39; =&amp;gt; &amp;#39;Greetings&amp;#39;,
                        ],
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; [
                                &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-actions&amp;#39;,
                                &amp;#39;actions&amp;#39; =&amp;gt; [
                                    [
                                        &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                                        &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;LBL_ACCOUNTS&amp;#39;,
                                        &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-account-lg&amp;#39;,
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The flyoutComponents array will render all the views that are pass to it. In this case, we load a &lt;code&gt;sidebar-nav-item-header&lt;/code&gt; component and a &lt;code&gt;sidebar-nav-item-flyout-actions&lt;/code&gt; component. Similar to a Primary Action, you can override the default&amp;nbsp;&lt;code&gt;secondaryActionOnClick&lt;/code&gt; method in your custom view controller to change the behaviour of clicking on the kebab menu.&amp;nbsp;&lt;/p&gt;
&lt;hr /&gt;
&lt;p id="mcetoc_1f5uvkqns0"&gt;&lt;span style="font-size:18px;"&gt;You understand the new&lt;span&gt;&amp;nbsp;sidebar-nav&lt;/span&gt;, let&amp;#39;s get to component mapping:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:150%;"&gt;&lt;strong&gt;Move on to&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href="/dev-club/dev-onboarding/w/documentation/729/component-mapping"&gt;Component Mapping&lt;/a&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/13</link><pubDate>Wed, 28 Sep 2022 13:27:39 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Scott King</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 13 posted to Dev Tutorials by Scott King on 9/28/2022 1:27:39 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;li&gt;Quick Create menu dedicated to create new records&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/321x344/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_27-at-10.43.13-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;Quick Create view has been redesigned and presents the modules on click.&lt;/p&gt;
&lt;p&gt;Note this view does not require secondary-action as others with submenu.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gdtnm4ua0"&gt;Actions&lt;/h2&gt;
&lt;h3 id="mcetoc_1gdtnm4ua1"&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views. By default if a &lt;code&gt;route&lt;/code&gt; property is provided in the view object in the layout metadata, the Primary Action will be a link to the route provided. For example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;footer-greet-button&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;&amp;lt;some-custom-view&amp;gt;&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Otherwise, if you&amp;#39;re using a custom view and the controller has a &lt;code&gt;primaryActionOnClick&lt;/code&gt; method defined, that will be used in addition to the &lt;code&gt;route&lt;/code&gt; property.&amp;nbsp;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdtnm4ua2"&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Secondary Actions do have&amp;nbsp;some default behaviour. If the template has the following markup present, the kebab will render on hover:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="html"&gt;&amp;lt;button class=&amp;quot;sidebar-nav-item-kebab bg-transparent absolute p-0 h-full&amp;quot;&amp;gt;
   &amp;lt;i class=&amp;quot;{{buildIcon &amp;#39;sicon-kebab&amp;#39;}} text-white&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;
&amp;lt;/button&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;If metadata is provided with certain keys, clicking on the kebab icon will render a flyout menu. From the &lt;a href="/dev-club/dev-onboarding/w/documentation/742/moving-footer-content-to-sidebar-nav"&gt;Moving Footer Content to Sidebar Nav&lt;/a&gt; example, the following metadata is defined in;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;./custom/Extension/application/Ext/clients/base/layouts/sidebar-nav/sidebar-nav.php&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;?php

$viewdefs[&amp;#39;base&amp;#39;][&amp;#39;layout&amp;#39;][&amp;#39;sidebar-nav&amp;#39;][&amp;#39;components&amp;#39;][] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;footer-greet-button&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;footer-greet-button&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-bell-lg&amp;#39;,
                    &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;Hello!&amp;#39;,
                    &amp;#39;flyoutComponents&amp;#39; =&amp;gt; [
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-header&amp;#39;,
                            &amp;#39;title&amp;#39; =&amp;gt; &amp;#39;Greetings&amp;#39;,
                        ],
                        [
                            &amp;#39;view&amp;#39; =&amp;gt; [
                                &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-flyout-actions&amp;#39;,
                                &amp;#39;actions&amp;#39; =&amp;gt; [
                                    [
                                        &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                                        &amp;#39;label&amp;#39; =&amp;gt; &amp;#39;LBL_ACCOUNTS&amp;#39;,
                                        &amp;#39;icon&amp;#39; =&amp;gt; &amp;#39;sicon-account-lg&amp;#39;,
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The flyoutComponents array will render all the views that are pass to it. In this case, we load a &lt;code&gt;sidebar-nav-item-header&lt;/code&gt; component and a &lt;code&gt;sidebar-nav-item-flyout-actions&lt;/code&gt; component. Similar to a Primary Action, you can override the default&amp;nbsp;&lt;code&gt;secondaryActionOnClick&lt;/code&gt; method in your custom view controller to change the behaviour of clicking on the kebab menu.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/12</link><pubDate>Tue, 27 Sep 2022 14:43:42 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 12 posted to Dev Tutorials by Rafael Fernandes on 9/27/2022 2:43:42 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;li&gt;Quick Create menu dedicated to create new records&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/321x344/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_27-at-10.43.13-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;Quick Create view has been redesigned and presents the modules on click.&lt;/p&gt;
&lt;p&gt;Note this view does not require secondary-action as others with submenu.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gdtnm4ua0"&gt;Actions&lt;/h2&gt;
&lt;h3 id="mcetoc_1gdtnm4ua1"&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views. By default if a &lt;code&gt;route&lt;/code&gt; property is provided in the view object in the layout metadata, the Primary Action will be a link to the route provided. For example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;footer-greet-button&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;&amp;lt;some-custom-view&amp;gt;&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Otherwise, if you&amp;#39;re using a custom view and the controller has a &lt;code&gt;primaryActionOnClick&lt;/code&gt; method defined, that will be used in addition to the &lt;code&gt;route&lt;/code&gt; property.&amp;nbsp;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdtnm4ua2"&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;TODO update&lt;/p&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added. It can be configured similar to a Primary Action.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/11</link><pubDate>Tue, 27 Sep 2022 14:40:26 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 11 posted to Dev Tutorials by Rafael Fernandes on 9/27/2022 2:40:26 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;li&gt;Quick Create menu dedicated to create new records&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gdtnm4ua0"&gt;Actions&lt;/h2&gt;
&lt;h3 id="mcetoc_1gdtnm4ua1"&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views. By default if a &lt;code&gt;route&lt;/code&gt; property is provided in the view object in the layout metadata, the Primary Action will be a link to the route provided. For example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;footer-greet-button&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;&amp;lt;some-custom-view&amp;gt;&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Otherwise, if you&amp;#39;re using a custom view and the controller has a &lt;code&gt;primaryActionOnClick&lt;/code&gt; method defined, that will be used in addition to the &lt;code&gt;route&lt;/code&gt; property.&amp;nbsp;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdtnm4ua2"&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;TODO update&lt;/p&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added. It can be configured similar to a Primary Action.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/10</link><pubDate>Mon, 26 Sep 2022 20:27:31 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Scott King</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 10 posted to Dev Tutorials by Scott King on 9/26/2022 8:27:31 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
Quick Create menu dedicated to create new records&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2 id="mcetoc_1gdtnm4ua0"&gt;Actions&lt;/h2&gt;
&lt;h3 id="mcetoc_1gdtnm4ua1"&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views. By default if a &lt;code&gt;route&lt;/code&gt; property is provided in the view object in the layout metadata, the Primary Action will be a link to the route provided. For example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$viewdefs[...] = [
    &amp;#39;layout&amp;#39; =&amp;gt; [
        &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group&amp;#39;,
        &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;sidebar-nav-item-group-bottom&amp;#39;,
        &amp;#39;css_class&amp;#39; =&amp;gt; &amp;#39;flex-grow-0 flex-shrink-0&amp;#39;,
        &amp;#39;components&amp;#39; =&amp;gt; [
            [
                &amp;#39;view&amp;#39; =&amp;gt; [
                    &amp;#39;name&amp;#39; =&amp;gt; &amp;#39;footer-greet-button&amp;#39;,
                    &amp;#39;type&amp;#39; =&amp;gt; &amp;#39;&amp;lt;some-custom-view&amp;gt;&amp;#39;,
                    &amp;#39;route&amp;#39; =&amp;gt; &amp;#39;#Accounts&amp;#39;,
                    ...
                ],
            ],
        ],
    ],
];&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Otherwise, if you&amp;#39;re using a custom view and the controller has a &lt;code&gt;primaryActionOnClick&lt;/code&gt; method defined, that will be used in addition to the &lt;code&gt;route&lt;/code&gt; property.&amp;nbsp;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdtnm4ua2"&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;TODO update&lt;/p&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added. It can be configured similar to a Primary Action.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/9</link><pubDate>Mon, 26 Sep 2022 17:56:50 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 9 posted to Dev Tutorials by Rafael Fernandes on 9/26/2022 5:56:50 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
Quick Create menu dedicated to create new records&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2&gt;Actions&lt;/h2&gt;
&lt;h3&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views.&lt;/p&gt;
&lt;h3&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;With the introduction of the sidebar-nav-item component, we&amp;rsquo;re now introducing secondary actions. These appear by way of a kebab menu when hovering on the &lt;code&gt;sidebar-nav-item&lt;/code&gt; container to which they are added. It can be configured similar to a Primary Action.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/8</link><pubDate>Mon, 26 Sep 2022 17:46:31 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 8 posted to Dev Tutorials by Rafael Fernandes on 9/26/2022 5:46:31 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
Quick Create menu dedicated to create new records&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2&gt;Actions&lt;/h2&gt;
&lt;h3&gt;Primary Action&lt;/h3&gt;
&lt;p&gt;Primary&amp;nbsp;actions are triggered by the click of a button on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; views.&lt;/p&gt;
&lt;h3&gt;Secondary Action&lt;/h3&gt;
&lt;p&gt;Secondary actions, are triggered as part of the submenu on the &lt;code&gt;sidebar-nav&amp;#39;s&lt;/code&gt; view when &lt;code&gt;secondary-action&lt;/code&gt; is enabled.&lt;/p&gt;
&lt;p&gt;It uses &lt;code&gt;flyoutComponents&lt;/code&gt;&amp;nbsp;definitions to render the submenu and render views.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/7</link><pubDate>Mon, 26 Sep 2022 15:52:42 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 7 posted to Dev Tutorials by Rafael Fernandes on 9/26/2022 3:52:42 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
Quick Create menu dedicated to create new records&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/396x231/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/6</link><pubDate>Mon, 26 Sep 2022 15:52:03 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 6 posted to Dev Tutorials by Rafael Fernandes on 9/26/2022 3:52:03 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
Quick Create menu dedicated to create new records&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/5</link><pubDate>Mon, 26 Sep 2022 15:49:20 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 5 posted to Dev Tutorials by Rafael Fernandes on 9/26/2022 3:49:20 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
Quick Create menu dedicated to create new records&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/4</link><pubDate>Mon, 26 Sep 2022 15:44:35 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 4 posted to Dev Tutorials by Rafael Fernandes on 9/26/2022 3:44:35 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gdt7d2n10"&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
Quick Create menu dedicated to create new records&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.56.30-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;Each item in the menu contains a set of submenus providing the user extra options prior to accessing the functionality (such as header submenus)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/188x479/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.44.29-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group brings a scrollable modules list (now called sidebar-nav-item-module).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Brings all the default modules available to the user&lt;/li&gt;
&lt;li&gt;Gets the first &amp;ldquo;max display modules&amp;rdquo; setting from the config (defaults to 4)&lt;/li&gt;
&lt;/ul&gt;
It will always add 1 extra to the bottom of the list for the module in focus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/320x240/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_23-at-10.57.46-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;This layout group is where Sugar&amp;rsquo;s footer now resides.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Last icon is Sugar&amp;rsquo;s platform home page&lt;/li&gt;
&lt;li&gt;For better experience, as a rule of thumb should not exceed 4 items&lt;/li&gt;
&lt;/ul&gt;
If more buttons needed, add one button and use submenus&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/3</link><pubDate>Mon, 26 Sep 2022 15:24:10 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 3 posted to Dev Tutorials by Rafael Fernandes on 9/26/2022 3:24:10 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h3&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
Quick Create menu dedicated to create new records&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/2</link><pubDate>Mon, 26 Sep 2022 15:21:32 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 2 posted to Dev Tutorials by Rafael Fernandes on 9/26/2022 3:21:32 PM&lt;br /&gt;
&lt;p&gt;This new layout is Sugar&amp;#39;s main component that hosts overall Menu options structure in the newly redesigned Home Page.&lt;/p&gt;
&lt;p&gt;It has been designed to group functionalities in layouts, where each layout/group is separated by a line/divisor within sidebar-nav definition.&lt;/p&gt;
&lt;p&gt;Natively on 12.3, Sugar is shipping 4 layouts:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img alt=" " src="/resized-image/__size/264x139/__key/communityserver-wikis-components-files/00-00-00-00-61/Screen-Shot-2022_2D00_09_2D00_26-at-11.22.32-AM.png" /&gt;&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;For the sake of simplicity, we&amp;rsquo;re grouping 2 layouts in this image.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First group contains the &amp;ldquo;hamburger&amp;rdquo; icon menu that&amp;rsquo;s sole purpose is to expand/collapse side nav.&lt;/li&gt;
&lt;li&gt;Second group contains:
&lt;ul&gt;
&lt;li&gt;Home menu dedicated to Dashboards&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
Quick Create menu dedicated to create new records&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>Sidebar Nav (sidebar-nav)</title><link>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav/revision/1</link><pubDate>Thu, 22 Sep 2022 20:19:45 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:3134447b-857f-43ab-b9bc-40a7e7a215b1</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarai.com/dev-club/w/dev-tutorials/731/sidebar-nav-sidebar-nav#comments</comments><description>Revision 1 posted to Dev Tutorials by Rafael Fernandes on 9/22/2022 8:19:45 PM&lt;br /&gt;
&lt;p&gt;Sidebar Nav (sidebar-nav)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item></channel></rss>