diff options
Diffstat (limited to 'tpl/objects')
| -rw-r--r-- | tpl/objects/action-button.pug | 37 | ||||
| -rw-r--r-- | tpl/objects/action-menu.pug | 25 | ||||
| -rw-r--r-- | tpl/objects/icon.pug | 15 | ||||
| -rw-r--r-- | tpl/objects/status-indicator.pug | 5 |
4 files changed, 59 insertions, 23 deletions
diff --git a/tpl/objects/action-button.pug b/tpl/objects/action-button.pug index 0afe1ea..eb524a2 100644 --- a/tpl/objects/action-button.pug +++ b/tpl/objects/action-button.pug | |||
| @@ -1,21 +1,24 @@ | |||
| 1 | include icon.pug | 1 | include icon.pug |
| 2 | 2 | ||
| 3 | mixin action-button | 3 | mixin action-button |
| 4 | - | 4 | - |
| 5 | let classes = { | 5 | let classes = { |
| 6 | 'o-action-button': true, | 6 | 'o-action-button': true, |
| 7 | 'o-action-button--block': attributes.block, | 7 | 'o-action-button--block': attributes.block, |
| 8 | 'o-action-button--quiet': attributes.quiet, | 8 | 'o-action-button--quiet': attributes.quiet, |
| 9 | 'is-disabled': attributes.disabled, | 9 | 'is-disabled': attributes.disabled, |
| 10 | 'is-selected': attributes.selected | 10 | 'is-selected': attributes.selected |
| 11 | } | 11 | } |
| 12 | 12 | if (attributes.class) { | |
| 13 | let href = attributes.disabled ? null : '#'; | 13 | classes[attributes.class] = true; |
| 14 | } | ||
| 14 | 15 | ||
| 15 | a(class=classes href=href) | 16 | let href = attributes.disabled ? null : '#'; |
| 16 | if attributes.icon | 17 | |
| 17 | +icon(attributes.icon) | 18 | a(class=classes href=href) |
| 18 | = ' ' | 19 | if attributes.icon |
| 19 | if block | 20 | +icon(attributes.icon) |
| 20 | span.o-action-button__label | 21 | = ' ' |
| 21 | block | 22 | if block |
| 23 | span.o-action-button__label | ||
| 24 | block | ||
diff --git a/tpl/objects/action-menu.pug b/tpl/objects/action-menu.pug new file mode 100644 index 0000000..85f93bf --- /dev/null +++ b/tpl/objects/action-menu.pug | |||
| @@ -0,0 +1,25 @@ | |||
| 1 | include ../objects/action-button.pug | ||
| 2 | include icon.pug | ||
| 3 | |||
| 4 | mixin action-menu | ||
| 5 | - | ||
| 6 | let classes = { | ||
| 7 | 'o-action-menu': true, | ||
| 8 | 'o-action-menu--static': true, | ||
| 9 | 't-raised': true | ||
| 10 | } | ||
| 11 | |||
| 12 | div(class=classes) | ||
| 13 | block | ||
| 14 | |||
| 15 | mixin action-menu-item | ||
| 16 | button.o-action-menu__item.o-action-menu__item--native | ||
| 17 | .l-card.l-card--flush | ||
| 18 | .l-card__block.o-action-menu__icon-slot | ||
| 19 | if attributes.icon | ||
| 20 | +icon(attributes.icon) | ||
| 21 | .l-card__block.l-card__block--main | ||
| 22 | block | ||
| 23 | |||
| 24 | mixin action-menu-separator | ||
| 25 | .o-action-menu__separator | ||
diff --git a/tpl/objects/icon.pug b/tpl/objects/icon.pug index 0e444f9..494abf6 100644 --- a/tpl/objects/icon.pug +++ b/tpl/objects/icon.pug | |||
| @@ -1,7 +1,12 @@ | |||
| 1 | mixin icon(id) | 1 | mixin icon(id) |
| 2 | - | 2 | - |
| 3 | let href = 'icons.svg#' + id | 3 | let href = 'icons.svg#' + id |
| 4 | let classes = attributes.class ? attributes.class : '' | 4 | let classes = { |
| 5 | 'o-icon': true | ||
| 6 | } | ||
| 7 | if (attributes.class) { | ||
| 8 | classes[attributes.class] = true; | ||
| 9 | } | ||
| 5 | 10 | ||
| 6 | svg(class=['o-icon', classes] width='1em' height='1em') | 11 | svg(class=classes width='1em' height='1em') |
| 7 | use(href=href) | 12 | use(href=href) |
diff --git a/tpl/objects/status-indicator.pug b/tpl/objects/status-indicator.pug index 9b240e1..7ecb08a 100644 --- a/tpl/objects/status-indicator.pug +++ b/tpl/objects/status-indicator.pug | |||
| @@ -4,5 +4,8 @@ mixin status-indicator(status) | |||
| 4 | 'o-status-indicator': true, | 4 | 'o-status-indicator': true, |
| 5 | } | 5 | } |
| 6 | classes['is-' + status] = true | 6 | classes['is-' + status] = true |
| 7 | if (attributes.class) { | ||
| 8 | classes[attributes.class] = true; | ||
| 9 | } | ||
| 7 | 10 | ||
| 8 | div(class=classes)&attributes(attributes) | 11 | div(class=classes) |
