diff options
Diffstat (limited to 'src/objects')
| -rw-r--r-- | src/objects/_dialog.scss | 32 | ||||
| -rw-r--r-- | src/objects/_dialog.vars.scss | 10 |
2 files changed, 40 insertions, 2 deletions
diff --git a/src/objects/_dialog.scss b/src/objects/_dialog.scss index 479bcc6..5a323bb 100644 --- a/src/objects/_dialog.scss +++ b/src/objects/_dialog.scss | |||
| @@ -7,11 +7,13 @@ | |||
| 7 | @use 'dialog.vars' as vars; | 7 | @use 'dialog.vars' as vars; |
| 8 | 8 | ||
| 9 | @use 'backdrop.vars' as backdrop; | 9 | @use 'backdrop.vars' as backdrop; |
| 10 | @use 'divider.vars' as divider; | ||
| 10 | 11 | ||
| 11 | @mixin styles { | 12 | @mixin styles { |
| 12 | @include materialize-at-root(meta.module-variables('vars')); | 13 | @include materialize-at-root(meta.module-variables('vars')); |
| 13 | 14 | ||
| 14 | @include bem.object('dialog') { | 15 | @include bem.object('dialog') { |
| 16 | display: none; | ||
| 15 | box-sizing: border-box; | 17 | box-sizing: border-box; |
| 16 | inline-size: 100%; | 18 | inline-size: 100%; |
| 17 | max-inline-size: none; | 19 | max-inline-size: none; |
| @@ -28,10 +30,40 @@ | |||
| 28 | backdrop-filter: blur(props.get(backdrop.$blur)); | 30 | backdrop-filter: blur(props.get(backdrop.$blur)); |
| 29 | } | 31 | } |
| 30 | 32 | ||
| 33 | &[open], | ||
| 34 | &:popover-open { | ||
| 35 | display: flex; | ||
| 36 | flex-direction: column; | ||
| 37 | } | ||
| 38 | |||
| 31 | @include bem.elem('content') { | 39 | @include bem.elem('content') { |
| 32 | pointer-events: auto; | 40 | pointer-events: auto; |
| 33 | border-radius: props.get(vars.$rounding); | 41 | border-radius: props.get(vars.$rounding); |
| 34 | background-color: props.get(vars.$bg-color); | 42 | background-color: props.get(vars.$bg-color); |
| 35 | } | 43 | } |
| 44 | |||
| 45 | @include bem.elem('header') { | ||
| 46 | display: flex; | ||
| 47 | align-items: center; | ||
| 48 | padding: props.get(vars.$body--pad-i) props.get(vars.$body--pad-i) 0; | ||
| 49 | } | ||
| 50 | |||
| 51 | @include bem.elem('divider') { | ||
| 52 | margin-inline: props.get(vars.$body--pad-i); | ||
| 53 | |||
| 54 | @include bem.next-elem('body') { | ||
| 55 | padding-block-start: calc(props.get(vars.$body--pad-b) - props.get(divider.$margin-b)); | ||
| 56 | } | ||
| 57 | } | ||
| 58 | |||
| 59 | @include bem.elem('body') { | ||
| 60 | padding: props.get(vars.$body--pad-b) props.get(vars.$body--pad-i); | ||
| 61 | |||
| 62 | &::before { | ||
| 63 | display: block; | ||
| 64 | margin-block: -100em 100em; | ||
| 65 | content: ''; | ||
| 66 | } | ||
| 67 | } | ||
| 36 | } | 68 | } |
| 37 | } | 69 | } |
diff --git a/src/objects/_dialog.vars.scss b/src/objects/_dialog.vars.scss index 5fd2fbd..490dc40 100644 --- a/src/objects/_dialog.vars.scss +++ b/src/objects/_dialog.vars.scss | |||
| @@ -3,8 +3,14 @@ | |||
| 3 | @use '../core.vars' as core; | 3 | @use '../core.vars' as core; |
| 4 | @use '../layouts/container.vars' as container; | 4 | @use '../layouts/container.vars' as container; |
| 5 | 5 | ||
| 6 | $pad-b: props.def(--o-dialog--pad-b, props.get(container.$pad-b)) !default; | 6 | $pad-b: props.def(--o-dialog--pad-b, props.get(container.$pad-i)) !default; |
| 7 | $pad-i: props.def(--o-dialog--pad-b, props.get(container.$pad-i)) !default; | 7 | $pad-i: props.def(--o-dialog--pad-b, props.get(container.$pad-i)) !default; |
| 8 | $rounding: props.def(--o-dialog--rounding, props.get(core.$rounding)) !default; | 8 | $rounding: props.def(--o-dialog--rounding, props.get(core.$rounding)) !default; |
| 9 | 9 | ||
| 10 | $bg-color: props.def(--o-dialog--bg-color, props.get(core.$theme, --bg-l1), 'color') !default; | 10 | $border-width: props.def(--o-dialog--border-width, props.get(core.$border-width--thin)) !default; |
| 11 | |||
| 12 | $body--pad-b: props.def(--o-dialog--body--pad-b, props.get(container.$pad-i)) !default; | ||
| 13 | $body--pad-i: props.def(--o-dialog--body--pad-i, props.get(container.$pad-i)) !default; | ||
| 14 | |||
| 15 | $bg-color: props.def(--o-dialog--bg-color, props.get(core.$theme, --bg-l1), 'color') !default; | ||
| 16 | $border-color: props.def(--o-dialog--border-color, props.get(core.$theme, --border-mute), 'color') !default; | ||
