Skip to content

Commit

Permalink
refactor(overflow-menu): convert item to flex item (#2053)
Browse files Browse the repository at this point in the history
* chore: prettier

* refactor(overflow-menu): convert item to flex item

* docs(overflow-menu): make icon menu item v10 only
  • Loading branch information
emyarod authored and asudoh committed Mar 13, 2019
1 parent 4bd06f5 commit 4ed2c36
Show file tree
Hide file tree
Showing 2 changed files with 92 additions and 24 deletions.
12 changes: 8 additions & 4 deletions src/components/overflow-menu/_overflow-menu.scss
Original file line number Diff line number Diff line change
Expand Up @@ -319,16 +319,14 @@
width: 100%;
height: 100%;
border: none;
display: inline-block;
display: inline-flex;
align-items: center;
background-color: transparent;
text-align: left;
padding: 0 $spacing-md;
cursor: pointer;
color: $text-02;
max-width: 11.25rem;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
transition: outline $transition--base, background-color $transition--base, color $transition--base;

&:hover {
Expand All @@ -344,6 +342,12 @@
}
}

.#{$prefix}--overflow-menu-options__option-content {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}

.#{$prefix}--overflow-menu-options__option:hover {
background-color: $hover-ui;
}
Expand Down
104 changes: 84 additions & 20 deletions src/components/overflow-menu/overflow-menu.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,30 @@
class="{{@root.prefix}}--overflow-menu-options__option {{#if disabled}} {{@root.prefix}}--overflow-menu-options__option--disabled {{/if}} {{#if danger}} {{@root.prefix}}--overflow-menu-options__option--danger {{/if}}"
role="presentation" {{#if disabled}} aria-disabled="true" {{/if}}>
<button class="{{@root.prefix}}--overflow-menu-options__btn" role="menuitem" {{#if title}} title="{{title}}"
{{/if}} {{#if primaryFocus}} data-floating-menu-primary-focus {{/if}} {{#if disabled}} tabindex="-1"
{{/if}}>{{label}}</button>
{{/if}} {{#if primaryFocus}} data-floating-menu-primary-focus {{/if}} {{#if disabled}} tabindex="-1" {{/if}}>
{{#if @root.featureFlags.componentsX}}
<div class="{{@root.prefix}}--overflow-menu-options__option-content">
{{/if}}
{{label}}
{{#if @root.featureFlags.componentsX}}
</div>
{{/if}}
</button>
</li>
{{/each}}
{{#if @root.featureFlags.componentsX}}
<li
class="{{@root.prefix}}--overflow-menu-options__option {{#if disabled}} {{@root.prefix}}--overflow-menu-options__option--disabled {{/if}} {{#if danger}} {{@root.prefix}}--overflow-menu-options__option--danger {{/if}}"
role="presentation" {{#if disabled}} aria-disabled="true" {{/if}}>
<button class="{{@root.prefix}}--overflow-menu-options__btn" role="menuitem" {{#if title}} title="{{title}}"
{{/if}} {{#if primaryFocus}} data-floating-menu-primary-focus {{/if}} {{#if disabled}} tabindex="-1" {{/if}}>
<div class="{{@root.prefix}}--overflow-menu-options__option-content">
Add
</div>
{{carbon-icon 'Add16'}}
</button>
</li>
{{/if}}
</ul>
</div>

Expand All @@ -52,34 +72,78 @@
class="{{@root.prefix}}--overflow-menu-options__option {{#if disabled}} {{@root.prefix}}--overflow-menu-options__option--disabled {{/if}} {{#if danger}} {{@root.prefix}}--overflow-menu-options__option--danger {{/if}}"
role="presentation" {{#if disabled}} aria-disabled="true" {{/if}}>
<button class="{{@root.prefix}}--overflow-menu-options__btn" role="menuitem" {{#if title}} title="{{title}}"
{{/if}} {{#if primaryFocus}} data-floating-menu-primary-focus {{/if}} {{#if disabled}} tabindex="-1"
{{/if}}>{{label}}</button>
{{/if}} {{#if primaryFocus}} data-floating-menu-primary-focus {{/if}} {{#if disabled}} tabindex="-1" {{/if}}>
{{#if @root.featureFlags.componentsX}}
<div class="{{@root.prefix}}--overflow-menu-options__option-content">
{{/if}}
{{label}}
{{#if @root.featureFlags.componentsX}}
</div>
{{/if}}
</button>
</li>
{{/each}}
{{#if @root.featureFlags.componentsX}}
<li
class="{{@root.prefix}}--overflow-menu-options__option {{#if disabled}} {{@root.prefix}}--overflow-menu-options__option--disabled {{/if}} {{#if danger}} {{@root.prefix}}--overflow-menu-options__option--danger {{/if}}"
role="presentation" {{#if disabled}} aria-disabled="true" {{/if}}>
<button class="{{@root.prefix}}--overflow-menu-options__btn" role="menuitem" {{#if title}} title="{{title}}"
{{/if}} {{#if primaryFocus}} data-floating-menu-primary-focus {{/if}} {{#if disabled}} tabindex="-1" {{/if}}>
<div class="{{@root.prefix}}--overflow-menu-options__option-content">
Add
</div>
{{carbon-icon 'Add16'}}
</button>
</li>
{{/if}}
</ul>
</div>

<div data-overflow-menu tabindex="0" aria-label="Overflow" class="{{@root.prefix}}--overflow-menu" role="button" aria-haspopup="true"
aria-expanded="false">
<div data-overflow-menu tabindex="0" aria-label="Overflow" class="{{@root.prefix}}--overflow-menu" role="button"
aria-haspopup="true" aria-expanded="false">
{{#if @root.featureFlags.componentsX}}
{{ carbon-icon 'OverflowMenuVertical16' class=(add @root.prefix '--overflow-menu__icon') }}
{{ carbon-icon 'OverflowMenuVertical16' class=(add @root.prefix '--overflow-menu__icon') }}
{{else}}
<svg aria-hidden="true" class="{{@root.prefix}}--overflow-menu__icon" width="3" height="15" viewBox="0 0 3 15">
<g fill-rule="evenodd">
<circle cx="1.5" cy="1.5" r="1.5" />
<circle cx="1.5" cy="7.5" r="1.5" />
<circle cx="1.5" cy="13.5" r="1.5" />
</g>
</svg>
<svg aria-hidden="true" class="{{@root.prefix}}--overflow-menu__icon" width="3" height="15" viewBox="0 0 3 15">
<g fill-rule="evenodd">
<circle cx="1.5" cy="1.5" r="1.5" />
<circle cx="1.5" cy="7.5" r="1.5" />
<circle cx="1.5" cy="13.5" r="1.5" />
</g>
</svg>
{{/if}}
<ul class="{{@root.prefix}}--overflow-menu-options {{@root.prefix}}--overflow-menu--flip" tabindex="-1" data-floating-menu-direction="{{direction}}"
role="menu" aria-label="Overflow">
<ul class="{{@root.prefix}}--overflow-menu-options {{@root.prefix}}--overflow-menu--flip" tabindex="-1"
data-floating-menu-direction="{{direction}}" role="menu" aria-label="Overflow">
{{#each items}}
<li class="{{@root.prefix}}--overflow-menu-options__option{{#if disabled}} {{@root.prefix}}--overflow-menu-options__option--disabled{{/if}}{{#if danger}} {{@root.prefix}}--overflow-menu-options__option--danger{{/if}}"
<li
class="{{@root.prefix}}--overflow-menu-options__option{{#if disabled}} {{@root.prefix}}--overflow-menu-options__option--disabled{{/if}}{{#if danger}} {{@root.prefix}}--overflow-menu-options__option--danger{{/if}}"
role="presentation">
<a href="https://www.ibm.com" class="{{@root.prefix}}--overflow-menu-options__btn" role="menuitem" {{#if title}} title="{{title}}" {{/if}}
{{#if primaryFocus}} data-floating-menu-primary-focus{{/if}}{{#if disabled}} tabindex="-1" {{/if}}>{{label}}</a>
<a href="https://www.ibm.com" class="{{@root.prefix}}--overflow-menu-options__btn" role="menuitem" {{#if title}}
title="{{title}}" {{/if}} {{#if primaryFocus}} data-floating-menu-primary-focus{{/if}}{{#if disabled}}
tabindex="-1" {{/if}}>
{{#if @root.featureFlags.componentsX}}
<div class="{{@root.prefix}}--overflow-menu-options__option-content">
{{/if}}
{{label}}
{{#if @root.featureFlags.componentsX}}
</div>
{{/if}}
</a>
</li>
{{/each}}
{{#if @root.featureFlags.componentsX}}
<li
class="{{@root.prefix}}--overflow-menu-options__option {{#if disabled}} {{@root.prefix}}--overflow-menu-options__option--disabled {{/if}} {{#if danger}} {{@root.prefix}}--overflow-menu-options__option--danger {{/if}}"
role="presentation" {{#if disabled}} aria-disabled="true" {{/if}}>
<a href="https://www.ibm.com" class="{{@root.prefix}}--overflow-menu-options__btn" role="menuitem" {{#if title}}
title="{{title}}" {{/if}} {{#if primaryFocus}} data-floating-menu-primary-focus{{/if}}{{#if disabled}}
tabindex="-1" {{/if}}>
<div class="{{@root.prefix}}--overflow-menu-options__option-content">
Add
</div>
{{carbon-icon 'Add16'}}
</a>
</li>
{{/if}}
</ul>
</div>
</div>

0 comments on commit 4ed2c36

Please sign in to comment.