Allowing multiple levels on dropdowns

This commit is contained in:
Bruno Alves de Faria 2017-03-23 15:08:37 -03:00
parent d9e1c9e04e
commit d47bcb9c2a
2 changed files with 71 additions and 30 deletions

View File

@ -4,7 +4,7 @@
cursor: default cursor: default
outline: none outline: none
ul.dropdown-menu &>ul.dropdown-menu
display: block display: block
z-index: 1000 z-index: 1000
transform(scale(0)) transform(scale(0))
@ -35,3 +35,37 @@
&.open ul.dropdown-menu &.open ul.dropdown-menu
transform(scale(1)) transform(scale(1))
.dropdown-submenu
position: relative
&>.dropdown-menu
top: 0
left: 100%
margin-top: -6px
margin-left: -1px
-webkit-border-radius: 0 6px 6px 6px
-moz-border-radius: 0 6px 6px 6px
border-radius: 0 6px 6px 6px
&:hover
&>.dropdown-menu
display: block
&>a:after
border-left-color:#FFFFFF
&>a:after
display: block
float: right
content: " "
width: 0
height: 0
border-color: transparent
border-style: solid
border-width: 5px 0 5px 5px
border-left-color: #CCCCCC
margin-top: 5px
margin-right: -10px

View File

@ -1,6 +1,11 @@
<template name="dropdownForm"> <template name="dropdownForm">
{{#form (extend this mixins='dropdown' class='dropdown' hideValidationBox=true)}} {{#form (extend this mixins='dropdown' class='dropdown' hideValidationBox=true)}}
<ul class="dropdown-menu {{this.options.menuClasses}}"> {{>dropdownFormMenu items=this.items classes=this.options.menuClasses}}
{{/form}}
</template>
<template name="dropdownFormMenu">
<ul class="dropdown-menu {{this.classes}}">
{{#if UI.contentBlock}} {{#if UI.contentBlock}}
{{>UI.contentBlock}} {{>UI.contentBlock}}
{{else}} {{else}}
@ -8,7 +13,7 @@
{{#if item.separatorBefore}} {{#if item.separatorBefore}}
<li role="separator" class="divider"></li> <li role="separator" class="divider"></li>
{{/if}} {{/if}}
<li class="{{#if item.disabled}}disabled{{/if}}"> <li class="{{#if item.disabled}}disabled{{/if}} {{#if item.items}}dropdown-submenu{{/if}}">
{{#link item}} {{#link item}}
{{#if item.icon}} {{#if item.icon}}
<i class="{{item.icon}} {{item.iconClasses}}"></i> <i class="{{item.icon}} {{item.iconClasses}}"></i>
@ -22,6 +27,9 @@
<span>{{item.text}}</span> <span>{{item.text}}</span>
{{/if}} {{/if}}
{{/link}} {{/link}}
{{#if item.items}}
{{>dropdownFormMenu items=item.items}}
{{/if}}
</li> </li>
{{#if item.separatorAfter}} {{#if item.separatorAfter}}
<li role="separator" class="divider"></li> <li role="separator" class="divider"></li>
@ -29,5 +37,4 @@
{{/each}} {{/each}}
{{/if}} {{/if}}
</ul> </ul>
{{/form}}
</template> </template>