From 8911fdeb9913e6a54b08520b11e4753d98171a12 Mon Sep 17 00:00:00 2001 From: Volpeon Date: Sat, 28 Feb 2026 15:48:37 +0100 Subject: Update --- src/layouts/_split-view.scss | 30 +++++++++++++++++++++++++----- src/layouts/_split-view.vars.scss | 1 + src/objects/_dialog.scss | 32 +++++++++++++++++++++----------- src/objects/_dialog.vars.scss | 10 ++++++++++ 4 files changed, 57 insertions(+), 16 deletions(-) create mode 100644 src/objects/_dialog.vars.scss diff --git a/src/layouts/_split-view.scss b/src/layouts/_split-view.scss index 33511d2..3cbd775 100644 --- a/src/layouts/_split-view.scss +++ b/src/layouts/_split-view.scss @@ -20,9 +20,22 @@ inline-size: 100%; min-inline-size: 0; + &::before { + display: block; + margin-block: -100em 100em; + content: ''; + } + @include bem.modifier('side-25') { - flex: 0 0 auto; - inline-size: 25%; + flex: 0 0 auto; + inline-size: 25%; + } + + @include bem.modifier('min-50') { + min-inline-size: props.get(vars.$panel--min-50); + } + + @include bem.modifier('min-100') { min-inline-size: props.get(vars.$panel--min-100); } @@ -45,7 +58,11 @@ gap: props.get(vars.$gapless); @include bem.elem('panel') { - @include bem.modifier('side-25') { + @include bem.modifier('min-50') { + min-inline-size: calc(props.get(vars.$panel--min-50) + props.get(vars.$col-gap) - props.get(vars.$gapless)); + } + + @include bem.modifier('min-100') { min-inline-size: calc(props.get(vars.$panel--min-100) + props.get(vars.$col-gap) - props.get(vars.$gapless)); } @@ -76,11 +93,14 @@ inline-size: auto; @include bem.modifier('side-25') { - inline-size: auto; + inline-size: auto; + } + + @include bem.modifier('min-50', 'min-100', 'min-200') { min-inline-size: 0; } - @include bem.modifier('sticky', 'sticky-400', 'sticky-1200') { + @include bem.modifier('sticky', 'sticky-400') { position: static; } } diff --git a/src/layouts/_split-view.vars.scss b/src/layouts/_split-view.vars.scss index 5a8be2b..c3583b9 100644 --- a/src/layouts/_split-view.vars.scss +++ b/src/layouts/_split-view.vars.scss @@ -6,6 +6,7 @@ $row-gap: props.def(--l-split-view--row-gap, props.get(core.$size--600)) !defau $gapless: props.def(--l-split-view--gapless, 0rem) !default; +$panel--min-50: props.def(--l-split-view--panel--min-50, props.get(core.$size--2400)) !default; $panel--min-100: props.def(--l-split-view--panel--min-100, props.get(core.$size--3200)) !default; $panel--min-200: props.def(--l-split-view--panel--min-200, props.get(core.$size--4200)) !default; diff --git a/src/objects/_dialog.scss b/src/objects/_dialog.scss index d93543f..479bcc6 100644 --- a/src/objects/_dialog.scss +++ b/src/objects/_dialog.scss @@ -3,25 +3,35 @@ @use 'iro-sass/src/props'; @use '../props' as *; +@forward 'dialog.vars'; +@use 'dialog.vars' as vars; + @use 'backdrop.vars' as backdrop; @mixin styles { + @include materialize-at-root(meta.module-variables('vars')); + @include bem.object('dialog') { - box-sizing: border-box; - inline-size: 100%; - max-inline-size: none; - block-size: 100%; - min-block-size: 0; - max-block-size: none; - padding: 0; - margin: 0; - overflow: hidden; - background-color: transparent; - border: 0; + box-sizing: border-box; + inline-size: 100%; + max-inline-size: none; + block-size: 100%; + min-block-size: 0; + max-block-size: none; + padding: props.get(vars.$pad-b) props.get(vars.$pad-i); + margin: 0; + background-color: transparent; + border: 0; &::backdrop { background-color: props.get(backdrop.$bg-color); backdrop-filter: blur(props.get(backdrop.$blur)); } + + @include bem.elem('content') { + pointer-events: auto; + border-radius: props.get(vars.$rounding); + background-color: props.get(vars.$bg-color); + } } } diff --git a/src/objects/_dialog.vars.scss b/src/objects/_dialog.vars.scss new file mode 100644 index 0000000..5fd2fbd --- /dev/null +++ b/src/objects/_dialog.vars.scss @@ -0,0 +1,10 @@ +@use 'sass:map'; +@use 'iro-sass/src/props'; +@use '../core.vars' as core; +@use '../layouts/container.vars' as container; + +$pad-b: props.def(--o-dialog--pad-b, props.get(container.$pad-b)) !default; +$pad-i: props.def(--o-dialog--pad-b, props.get(container.$pad-i)) !default; +$rounding: props.def(--o-dialog--rounding, props.get(core.$rounding)) !default; + +$bg-color: props.def(--o-dialog--bg-color, props.get(core.$theme, --bg-l1), 'color') !default; -- cgit v1.2.3-70-g09d2