lism-css 0.3.4 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/bin/build-config.js +157 -0
- package/bin/build-css.cjs +92 -0
- package/bin/build-css.js +90 -0
- package/bin/cli.mjs +69 -0
- package/bin/script-build-css.js +6 -0
- package/config/__prop_list.js +44 -0
- package/config/__props.scss +25 -0
- package/config/default-config.js +9 -0
- package/config/defaults/__props-memo.js +45 -0
- package/config/defaults/props.js +370 -0
- package/config/defaults/states.js +42 -0
- package/config/defaults/tokens.js +26 -0
- package/config/helper/getSvgUrl.js +28 -0
- package/config/helper/minifyHtml.js +22 -0
- package/config/helper.js +67 -0
- package/config/index.js +15 -0
- package/config.js +2 -0
- package/dist/components/Accordion/AccIcon.js +1 -1
- package/dist/components/Accordion/getProps.js +15 -17
- package/dist/components/Accordion/index.js +4 -4
- package/dist/components/Accordion/index2.js +28 -23
- package/dist/components/Accordion/setAccordion.js +11 -11
- package/dist/components/Box/index.js +5 -6
- package/dist/components/Center/index.js +2 -2
- package/dist/components/Cluster/index.js +8 -0
- package/dist/components/Columns/index.js +5 -6
- package/dist/components/Container/index.js +3 -3
- package/dist/components/Dummy/index.js +9 -14
- package/dist/components/Dummy/texts.js +6 -6
- package/dist/components/Flex/index.js +5 -6
- package/dist/components/Flow/index.js +8 -0
- package/dist/components/Frame/index.js +5 -6
- package/dist/components/Grid/index.js +5 -6
- package/dist/components/HTML/index.js +5 -0
- package/dist/components/HTML/index2.js +44 -0
- package/dist/components/Layer/index.js +5 -5
- package/dist/components/LinkBox/index.js +6 -6
- package/dist/components/Lism/Link.js +5 -5
- package/dist/components/Lism/Text.js +4 -4
- package/dist/components/Lism/index.js +5 -4
- package/dist/components/Modal/Body.js +5 -5
- package/dist/components/Modal/CloseBtn.js +13 -0
- package/dist/components/Modal/Inner.js +5 -5
- package/dist/components/Modal/OpenBtn.js +9 -0
- package/dist/components/Modal/getProps.js +12 -13
- package/dist/components/Modal/index.js +4 -5
- package/dist/components/Modal/index2.js +12 -12
- package/dist/components/Stack/index.js +5 -5
- package/dist/components/Tabs/Tab.js +7 -9
- package/dist/components/Tabs/TabList.js +4 -4
- package/dist/components/Tabs/TabPanel.js +6 -7
- package/dist/components/Tabs/getProps.js +1 -8
- package/dist/components/Tabs/index2.js +14 -23
- package/dist/components/WithSide/index.js +4 -5
- package/dist/components/atomic/Decorator/getProps.js +13 -0
- package/dist/components/{Decorator → atomic/Decorator}/index.js +1 -1
- package/dist/components/atomic/Divider/getProps.js +10 -0
- package/dist/components/atomic/Divider/index.js +9 -0
- package/dist/components/atomic/Icon/getProps.js +59 -0
- package/dist/components/{Icon → atomic/Icon}/index.js +1 -1
- package/dist/components/atomic/Media/getProps.js +9 -0
- package/dist/components/atomic/Media/index.js +9 -0
- package/dist/components/atomic/Spacer/getProps.js +21 -0
- package/dist/components/atomic/Spacer/index.js +9 -0
- package/dist/components/getFilterProps.js +8 -18
- package/dist/components/getLayoutProps.js +27 -0
- package/dist/config/default-config.js +11 -0
- package/dist/config/defaults/props.js +342 -0
- package/dist/config/defaults/states.js +36 -0
- package/dist/config/defaults/tokens.js +29 -0
- package/dist/config/helper/getSvgUrl.js +4 -0
- package/dist/config/helper.js +31 -0
- package/dist/config/index.js +11 -0
- package/dist/index.js +50 -50
- package/dist/lib/getBpData.js +1 -1
- package/dist/lib/getLismProps.js +109 -177
- package/dist/lib/getMaybeCssVar.js +30 -54
- package/dist/lib/getMaybeTokenValue.js +26 -0
- package/dist/lib/getUtilKey.js +13 -0
- package/dist/lib/isPresetValue.js +3 -3
- package/dist/lib/isTokenValue.js +6 -5
- package/package.json +16 -3
- package/packages/astro/Accordion/AccBody.astro +5 -6
- package/packages/astro/Accordion/AccHeader.astro +4 -4
- package/packages/astro/Accordion/AccHeaderLabel.astro +12 -0
- package/packages/astro/Accordion/AccIcon.astro +1 -1
- package/packages/astro/Accordion/AccLabel.astro +1 -1
- package/packages/astro/Accordion/Accordion.astro +1 -1
- package/packages/astro/Accordion/index.js +2 -1
- package/packages/astro/Box/Box.astro +2 -3
- package/packages/astro/Center/Center.astro +2 -8
- package/packages/astro/Cluster/Cluster.astro +5 -0
- package/packages/astro/Cluster/index.js +1 -0
- package/packages/astro/Columns/Columns.astro +2 -8
- package/packages/astro/Container/Container.astro +3 -4
- package/packages/astro/Decorator/Decorator.astro +2 -2
- package/packages/astro/Divider/Divider.astro +3 -3
- package/packages/astro/Dummy/Dummy.astro +3 -2
- package/packages/astro/Flex/Flex.astro +1 -10
- package/packages/astro/Flex/index.js +0 -1
- package/packages/astro/Flow/Flow.astro +5 -0
- package/packages/astro/Flow/index.js +1 -0
- package/packages/astro/Frame/Frame.astro +1 -8
- package/packages/astro/Grid/Grid.astro +1 -9
- package/packages/astro/Grid/index.js +0 -1
- package/packages/astro/HTML/a.astro +5 -0
- package/packages/astro/HTML/button.astro +5 -0
- package/packages/astro/HTML/div.astro +5 -0
- package/packages/astro/HTML/h.astro +6 -0
- package/packages/astro/HTML/img.astro +5 -0
- package/packages/astro/HTML/index.js +12 -0
- package/packages/astro/HTML/li.astro +5 -0
- package/packages/astro/HTML/ol.astro +5 -0
- package/packages/astro/HTML/p.astro +5 -0
- package/packages/astro/HTML/span.astro +5 -0
- package/packages/astro/HTML/ul.astro +5 -0
- package/packages/astro/Icon/Icon.astro +3 -5
- package/packages/astro/Layer/Layer.astro +3 -10
- package/packages/astro/LinkBox/LinkBox.astro +4 -5
- package/packages/astro/Lism/Link.astro +2 -2
- package/packages/astro/Lism/Lism.astro +4 -3
- package/packages/astro/Lism/Text.astro +2 -2
- package/packages/astro/Lism/index.js +0 -1
- package/packages/astro/{Lism → Media}/Media.astro +1 -9
- package/packages/astro/Media/index.js +1 -0
- package/packages/astro/Modal/Body.astro +4 -5
- package/packages/astro/Modal/CloseBtn.astro +24 -0
- package/packages/astro/Modal/Inner.astro +4 -4
- package/packages/astro/Modal/Modal.astro +4 -5
- package/packages/astro/Modal/OpenBtn.astro +14 -0
- package/packages/astro/Modal/index.js +3 -4
- package/packages/astro/OverlayLink/OverlayLink.astro +1 -1
- package/packages/astro/Spacer/Spacer.astro +3 -3
- package/packages/astro/Stack/Stack.astro +2 -4
- package/packages/astro/Tabs/Tab.astro +2 -11
- package/packages/astro/Tabs/TabList.astro +4 -4
- package/packages/astro/Tabs/TabPanel.astro +4 -4
- package/packages/astro/Tabs/Tabs.astro +6 -10
- package/packages/astro/Test/Test.astro +1 -1
- package/packages/astro/Test/TestItem.astro +1 -1
- package/packages/astro/WithSide/WithSide.astro +1 -8
- package/packages/astro/index.js +6 -2
- package/packages/types/index.d.ts +31 -38
- package/src/scss/{_props.scss → __props copy.scss } +146 -169
- package/src/scss/__props.scss +786 -0
- package/src/scss/_auto_output.scss +102 -76
- package/src/scss/_prop-config.scss +862 -0
- package/src/scss/_setting.scss +2 -3
- package/src/scss/_with_layer.scss +19 -14
- package/src/scss/base/_dom.scss +35 -26
- package/src/scss/base/_property.scss +4 -16
- package/src/scss/base/_tokens.scss +105 -116
- package/src/scss/base/index.scss +18 -42
- package/src/scss/base/set/_hover.scss +13 -0
- package/src/scss/base/set/_innerRs.scss +3 -0
- package/src/scss/base/set/_mask.scss +6 -0
- package/src/scss/base/set/_plain.scss +14 -0
- package/src/scss/base/set/_shadow.scss +27 -0
- package/src/scss/base/set/_snap.scss +8 -0
- package/src/scss/base/set/_transition.scss +20 -0
- package/src/scss/main.scss +0 -1
- package/src/scss/main_no_layer.scss +6 -14
- package/src/scss/modules/atomic/_divider.scss +6 -0
- package/src/scss/{layout → modules/atomic}/_icon.scss +3 -9
- package/src/scss/modules/atomic/_media.scss +3 -0
- package/src/scss/{layout → modules/atomic}/_spacer.scss +1 -1
- package/src/scss/modules/atomic/index.scss +6 -0
- package/src/scss/{dynamic → modules/dynamic}/_accordion.scss +24 -24
- package/src/scss/modules/dynamic/_modal.scss +33 -0
- package/src/scss/{dynamic → modules/dynamic}/_tabs.scss +4 -5
- package/src/scss/{layout/_flex.scss → modules/layout/_cluster.scss} +1 -4
- package/src/scss/modules/layout/_columns.scss +9 -0
- package/src/scss/modules/layout/_flex.scss +3 -0
- package/src/scss/modules/layout/_flow.scss +46 -0
- package/src/scss/{layout → modules/layout}/_frame.scss +1 -1
- package/src/scss/modules/layout/_grid.scss +35 -0
- package/src/scss/{layout → modules/layout}/_withSide.scss +3 -3
- package/src/scss/{layout → modules/layout}/index.scss +4 -6
- package/src/scss/modules/state/_container.scss +37 -0
- package/src/scss/{state → modules/state}/_linkbox.scss +1 -1
- package/src/scss/modules/state/index.scss +5 -0
- package/src/scss/props/_border.scss +25 -40
- package/src/scss/props/_hover.scss +12 -23
- package/src/scss/props/_size.scss +17 -0
- package/src/scss/props/index.scss +1 -2
- package/src/scss/reset.scss +1 -1
- package/src/scss/utility/_cbox.scss +5 -4
- package/src/scss/utility/_hidden.scss +14 -0
- package/src/scss/utility/_itemDivider.scss +11 -0
- package/src/scss/utility/_linkExpand.scss +10 -0
- package/src/scss/utility/_trimHL.scss +29 -13
- package/src/scss/utility/index.scss +3 -45
- package/dist/components/Box/getProps.js +0 -7
- package/dist/components/Columns/getProps.js +0 -6
- package/dist/components/Decorator/getProps.js +0 -17
- package/dist/components/Divider/getProps.js +0 -11
- package/dist/components/Divider/index.js +0 -9
- package/dist/components/Flex/Cluster.js +0 -8
- package/dist/components/Flex/FlexItem.js +0 -8
- package/dist/components/Flex/getProps.js +0 -13
- package/dist/components/Frame/getProps.js +0 -7
- package/dist/components/Grid/GridItem.js +0 -9
- package/dist/components/Grid/getProps.js +0 -28
- package/dist/components/Icon/getProps.js +0 -60
- package/dist/components/Layer/getProps.js +0 -9
- package/dist/components/Lism/Media.js +0 -9
- package/dist/components/Modal/CloseIconBtn.js +0 -19
- package/dist/components/Modal/Footer.js +0 -9
- package/dist/components/Modal/Header.js +0 -9
- package/dist/components/Spacer/getProps.js +0 -21
- package/dist/components/Spacer/index.js +0 -9
- package/dist/components/WithSide/getProps.js +0 -14
- package/dist/components/getInsetProps.js +0 -8
- package/dist/components/getMediaProps.js +0 -7
- package/dist/components/getTransformProps.js +0 -8
- package/dist/config/prop_list.js +0 -386
- package/dist/config/tokens.js +0 -43
- package/dist/config.js +0 -9
- package/dist/css/base.css +0 -1
- package/dist/css/dynamic.css +0 -1
- package/dist/css/layout.css +0 -1
- package/dist/css/main.css +0 -1
- package/dist/css/main_no_layer.css +0 -1
- package/dist/css/props.css +0 -1
- package/dist/css/reset.css +0 -1
- package/dist/css/state.css +0 -1
- package/dist/css/utility.css +0 -1
- package/dist/lib/getMaybeUtilValue.js +0 -6
- package/packages/astro/Flex/Cluster.astro +0 -11
- package/packages/astro/Grid/GridItem.astro +0 -15
- package/packages/astro/Modal/CloseIconBtn.astro +0 -24
- package/packages/astro/Modal/Footer.astro +0 -14
- package/packages/astro/Modal/Header.astro +0 -14
- package/src/scss/dynamic/_modal.scss +0 -30
- package/src/scss/layout/_columns.scss +0 -13
- package/src/scss/layout/_divider.scss +0 -3
- package/src/scss/layout/_grid.scss +0 -9
- package/src/scss/props/__memo.scss +0 -15
- package/src/scss/props/_color.scss +0 -7
- package/src/scss/props/_transition.scss +0 -20
- package/src/scss/state/_container.scss +0 -34
- package/src/scss/state/_flow.scss +0 -45
- package/src/scss/state/_size.scss +0 -22
- package/src/scss/state/index.scss +0 -12
- /package/dist/components/{Icon → atomic/Icon}/SVG.js +0 -0
- /package/dist/components/{Icon → atomic/Icon}/presets.js +0 -0
- /package/packages/astro/{helper/index.js → helper.js} +0 -0
- /package/src/scss/{dynamic → modules/dynamic}/index.scss +0 -0
- /package/src/scss/{layout → modules/layout}/_center.scss +0 -0
- /package/src/scss/{layout → modules/layout}/_stack.scss +0 -0
- /package/src/scss/{state → modules/state}/_gutter.scss +0 -0
- /package/src/scss/{state → modules/state}/_layer.scss +0 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
@use '../../_mixin' as mixin;
|
|
2
|
+
|
|
3
|
+
.set-transition {
|
|
4
|
+
--duration: var(--transition-duration, 0.4s);
|
|
5
|
+
--delay: 0s;
|
|
6
|
+
--ease: ease;
|
|
7
|
+
--property: all;
|
|
8
|
+
transition: var(--duration) var(--ease) var(--delay);
|
|
9
|
+
transition-property: var(--property);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
// .-ease\:in {--ease: ease-in;}
|
|
13
|
+
// .-ease\:out {--ease: ease-out;}
|
|
14
|
+
// .-ease\:in-out {--ease: ease-in-out;}
|
|
15
|
+
// .-ease\:linear {--ease: linear;}
|
|
16
|
+
|
|
17
|
+
// .set--animation {
|
|
18
|
+
// animation: var(--duration) var(--ease) var(--delay) var(--animation);
|
|
19
|
+
// }
|
|
20
|
+
// .-anim:slideIn
|
package/src/scss/main.scss
CHANGED
|
@@ -5,26 +5,18 @@
|
|
|
5
5
|
$layer_mode: 0
|
|
6
6
|
);
|
|
7
7
|
|
|
8
|
-
// reset
|
|
9
|
-
@use './reset' as reset;
|
|
10
|
-
|
|
11
8
|
// base
|
|
9
|
+
@use './reset' as reset;
|
|
12
10
|
@use './base/index' as base;
|
|
13
11
|
|
|
14
|
-
//
|
|
15
|
-
@use './state/index' as state;
|
|
12
|
+
// Modules
|
|
13
|
+
@use './modules/state/index' as state;
|
|
14
|
+
@use './modules/layout/index' as layout;
|
|
15
|
+
@use './modules/atomic/index' as atomic;
|
|
16
|
+
@use './modules/dynamic/index' as dynamic;
|
|
16
17
|
|
|
17
|
-
// layout modules
|
|
18
|
-
@use './layout/index' as layout;
|
|
19
|
-
|
|
20
|
-
// dynamic modules
|
|
21
|
-
@use './dynamic/index' as dynamic;
|
|
22
|
-
|
|
23
|
-
// other modules
|
|
24
18
|
// @use './component/index' as component;
|
|
25
19
|
|
|
26
20
|
// utility
|
|
27
21
|
@use './utility/index' as utility;
|
|
28
|
-
|
|
29
|
-
// props
|
|
30
22
|
@use './props/index' as props;
|
|
@@ -1,20 +1,14 @@
|
|
|
1
|
-
.
|
|
2
|
-
--scale: 1;
|
|
3
|
-
--offset: 0;
|
|
4
|
-
scale: var(--scale);
|
|
5
|
-
translate: var(--offset);
|
|
6
|
-
display: inline-flex;
|
|
7
|
-
vertical-align: middle; //下にスペースができるのを防ぐ
|
|
1
|
+
.a--icon {
|
|
8
2
|
flex-shrink: 0; // Callout など、アイコンはflex直下の子要素にしたい場合も多いので、指定しておく
|
|
9
3
|
}
|
|
10
4
|
|
|
11
5
|
/* fill指定のない svg にテキストカラーを継承させる */
|
|
12
|
-
.
|
|
6
|
+
.a--icon:where(:not([fill])) {
|
|
13
7
|
fill: currentcolor;
|
|
14
8
|
}
|
|
15
9
|
|
|
16
10
|
/* 属性によるサイズ指定がない場合 */
|
|
17
|
-
.
|
|
11
|
+
.a--icon:where(:not([width])) {
|
|
18
12
|
width: 1em;
|
|
19
13
|
height: 1em;
|
|
20
14
|
}
|
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
.d--accordion {
|
|
2
|
-
--
|
|
3
|
-
&.
|
|
4
|
-
--
|
|
2
|
+
--duration: var(--acc-duration, 0.4s);
|
|
3
|
+
&.js-opened {
|
|
4
|
+
--notOpened_: ;
|
|
5
5
|
}
|
|
6
|
-
&:not(.
|
|
7
|
-
--
|
|
6
|
+
&:not(.js-opened) {
|
|
7
|
+
--isOpened_: ;
|
|
8
8
|
}
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
.d--accordion_header {
|
|
12
|
-
|
|
12
|
+
display: grid;
|
|
13
|
+
grid: auto / 1fr auto;
|
|
13
14
|
gap: 0.5em;
|
|
15
|
+
align-items: center;
|
|
16
|
+
outline-offset: -1px; // overflow:clip|hidden; で見えなくなってしまうのを防ぐ
|
|
14
17
|
|
|
15
18
|
/* Safariで表示されるデフォルトの三角形アイコンを消す */
|
|
16
19
|
&::-webkit-details-marker {
|
|
@@ -18,37 +21,34 @@
|
|
|
18
21
|
}
|
|
19
22
|
}
|
|
20
23
|
|
|
21
|
-
// .d--accordion_label {
|
|
22
|
-
// flex: 1;
|
|
23
|
-
// font: inherit;
|
|
24
|
-
// }
|
|
25
|
-
|
|
26
24
|
.d--accordion_body {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
transition-
|
|
25
|
+
display: grid;
|
|
26
|
+
grid: 1fr / auto;
|
|
27
|
+
transition-property: margin-block, padding-block, opacity, grid-template;
|
|
28
|
+
transition-duration: var(--duration);
|
|
30
29
|
}
|
|
31
30
|
|
|
32
31
|
// ※ 正常な animation には必須
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
32
|
+
.d--accordion_inner {
|
|
33
|
+
overflow: hidden;
|
|
34
|
+
}
|
|
36
35
|
|
|
37
36
|
// 閉じている時
|
|
38
|
-
|
|
37
|
+
.d--accordion:not(.js-opened) {
|
|
39
38
|
> .d--accordion_body {
|
|
40
|
-
|
|
41
|
-
grid-template-rows: 0fr;
|
|
39
|
+
grid: 0fr / auto;
|
|
42
40
|
padding-block: 0 !important;
|
|
43
41
|
margin-block: 0 !important;
|
|
44
42
|
}
|
|
45
43
|
}
|
|
46
44
|
|
|
47
45
|
// アコーディオンブロックのネスト時、別のアイコンタイプにすると表示が崩れるがそこまでは考慮しない。
|
|
48
|
-
|
|
46
|
+
.d--accordion_icon {
|
|
47
|
+
display: grid;
|
|
48
|
+
|
|
49
49
|
// __icon 自体にborderつけたりすると回転が見えてしまうので、 icon自体を回転させる。
|
|
50
|
-
> .
|
|
51
|
-
transition-duration: var(--
|
|
52
|
-
rotate: var(--
|
|
50
|
+
> .a--icon {
|
|
51
|
+
transition-duration: var(--duration);
|
|
52
|
+
rotate: var(--isOpened_, -180deg);
|
|
53
53
|
}
|
|
54
54
|
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// dialog,
|
|
2
|
+
.d--modal {
|
|
3
|
+
--my-s: 0; // flow直下にきても影響しないように
|
|
4
|
+
--offset: 0 0; // アニメーション用
|
|
5
|
+
--duration: var(--modal-duration, 0.5s);
|
|
6
|
+
--backdropBg: rgb(0 0 0 / 0.6);
|
|
7
|
+
max-width: 100%;
|
|
8
|
+
max-height: 100%;
|
|
9
|
+
transition-duration: var(--duration, 0.5s);
|
|
10
|
+
|
|
11
|
+
&::backdrop {
|
|
12
|
+
transition: opacity var(--duration, 0.5s);
|
|
13
|
+
background: var(--backdropBg);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.d--modal_inner {
|
|
18
|
+
max-height: 100%;
|
|
19
|
+
background-color: var(--c--base);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.d--modal_body {
|
|
23
|
+
overflow: auto;
|
|
24
|
+
overscroll-behavior: contain;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.d--modal:not([data-is-open]) {
|
|
28
|
+
translate: var(--offset);
|
|
29
|
+
}
|
|
30
|
+
.d--modal:not([data-is-open]),
|
|
31
|
+
.d--modal:not([data-is-open])::backdrop {
|
|
32
|
+
opacity: 0;
|
|
33
|
+
}
|
|
@@ -4,26 +4,25 @@
|
|
|
4
4
|
}
|
|
5
5
|
.d--tabs_list {
|
|
6
6
|
grid-area: list;
|
|
7
|
+
display: flex;
|
|
7
8
|
overflow-x: auto;
|
|
8
9
|
}
|
|
9
10
|
.d--tabs_tab {
|
|
10
11
|
&[aria-selected='true'] {
|
|
11
|
-
--
|
|
12
|
+
--notSelected_: ;
|
|
12
13
|
}
|
|
13
14
|
&[aria-selected='false'] {
|
|
14
|
-
--
|
|
15
|
+
--isSelected_: ;
|
|
15
16
|
}
|
|
16
17
|
// 非アクティブの時、薄いカラーに
|
|
17
18
|
:where(&) {
|
|
18
|
-
color: var(--
|
|
19
|
+
color: var(--notSelected_, var(--c--text-2));
|
|
19
20
|
}
|
|
20
21
|
}
|
|
21
22
|
|
|
22
23
|
.d--tabs_panel {
|
|
23
|
-
// position: relative;
|
|
24
24
|
grid-area: panel;
|
|
25
25
|
width: 100%;
|
|
26
|
-
overflow-x: auto;
|
|
27
26
|
|
|
28
27
|
&:where([aria-hidden='true']) {
|
|
29
28
|
display: none;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Memo:
|
|
3
|
+
- > * + * を使えば :first-child への my-s の打ち消しは不要になるが、 my-e 0 を :first-child にも効かせたいので、 > * で書いている。
|
|
4
|
+
- --flow を inherit させることで -flow:custom クラスがなくても任意の値をセットできるようにしつつ、離れたネストであれば l--flow 単体で使っても base に戻るようにしている。(ただし直下のネストでは影響が出る。)
|
|
5
|
+
*/
|
|
6
|
+
.l--flow {
|
|
7
|
+
display: flow-root;
|
|
8
|
+
--flow: var(--flow--base);
|
|
9
|
+
|
|
10
|
+
> * {
|
|
11
|
+
--flow: inherit;
|
|
12
|
+
--my-s: var(--flow);
|
|
13
|
+
margin-block: var(--my-s) 0;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// flow 直下のメディア要素は block に初期リセット
|
|
17
|
+
> :where(img, video, audio) {
|
|
18
|
+
display: block;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.-flow\:base > * {
|
|
23
|
+
--flow: var(--flow--base);
|
|
24
|
+
}
|
|
25
|
+
.-flow\:s > * {
|
|
26
|
+
--flow: var(--flow--s);
|
|
27
|
+
}
|
|
28
|
+
.-flow\:l > * {
|
|
29
|
+
--flow: var(--flow--l);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// 見出しの上部余白は少しだけ広くする.
|
|
33
|
+
.l--flow > :where(h1, h2, h3, h4) {
|
|
34
|
+
// --my-s: var(--flow--h);
|
|
35
|
+
--my-s: calc(var(--flow) + var(--flow--h));
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// Note: 打ち消しを最後に書く
|
|
39
|
+
// .l--flow > :where(.-max-sz\:full + .-max-sz\:full),
|
|
40
|
+
.l--flow > :first-child,
|
|
41
|
+
.is--skipFlow + * {
|
|
42
|
+
--my-s: 0px;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// is--side
|
|
46
|
+
// is--skipFlow
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
.l--grid {
|
|
2
|
+
--gtr: none;
|
|
3
|
+
--gtc: none;
|
|
4
|
+
--gta: none;
|
|
5
|
+
display: grid;
|
|
6
|
+
grid-template: var(--gtr) / var(--gtc);
|
|
7
|
+
grid-template-areas: var(--gta);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
// .-gtr\:repeat {
|
|
11
|
+
// --rows: 1;
|
|
12
|
+
// --gtr: repeat(var(--rows), 1fr);
|
|
13
|
+
// }
|
|
14
|
+
|
|
15
|
+
// .-gtc\:repeat {
|
|
16
|
+
// --cols: 1;
|
|
17
|
+
// --gtc: repeat(var(--cols), 1fr);
|
|
18
|
+
// }
|
|
19
|
+
|
|
20
|
+
// .-gtc\:liquid {
|
|
21
|
+
// --cols: var(--sz--min);
|
|
22
|
+
// --gtc: repeat(auto-fill, minmax(min(var(--cols), 100%), 1fr));
|
|
23
|
+
// }
|
|
24
|
+
|
|
25
|
+
// .l--grid--repeat {
|
|
26
|
+
// --rows: 1;
|
|
27
|
+
// --cols: 1;
|
|
28
|
+
// --gtr: repeat(var(--rows), 1fr);
|
|
29
|
+
// --gtc: repeat(var(--cols), 1fr);
|
|
30
|
+
// }
|
|
31
|
+
|
|
32
|
+
// .l--grid--liquid {
|
|
33
|
+
// --cols: var(--sz--min);
|
|
34
|
+
// --gtc: repeat(auto-fill, minmax(min(var(--cols), 100%), 1fr));
|
|
35
|
+
// }
|
|
@@ -4,16 +4,16 @@
|
|
|
4
4
|
*/
|
|
5
5
|
.l--withSide {
|
|
6
6
|
--sideW: auto;
|
|
7
|
-
--mainW: max(var(--
|
|
7
|
+
--mainW: max(var(--sz--min), 50%);
|
|
8
8
|
display: flex;
|
|
9
9
|
flex-wrap: wrap;
|
|
10
10
|
|
|
11
|
-
>
|
|
11
|
+
> .is--side {
|
|
12
12
|
flex-basis: var(--sideW);
|
|
13
13
|
flex-grow: 1; /* 0 だと折り返されたときに広がらない */
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
> :not(
|
|
16
|
+
> :not(.is--side) {
|
|
17
17
|
flex-grow: 9999999; /* できるだけ fix側を 指定値ピッタリに近づけるためにかなり大きな数値を指定 */
|
|
18
18
|
flex-basis: min(100%, var(--mainW)); /* このサイズが折り返しポイントの基準となる */
|
|
19
19
|
}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
// modules
|
|
2
|
-
@forward './
|
|
2
|
+
@forward './flow';
|
|
3
3
|
@forward './flex';
|
|
4
|
-
@forward './
|
|
4
|
+
@forward './cluster';
|
|
5
5
|
@forward './stack';
|
|
6
|
+
@forward './grid';
|
|
6
7
|
@forward './center';
|
|
7
8
|
@forward './columns';
|
|
8
9
|
@forward './withSide';
|
|
9
|
-
|
|
10
|
-
@forward './icon';
|
|
11
|
-
@forward './divider';
|
|
12
|
-
// @forward './spacer';
|
|
10
|
+
@forward './frame';
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// コンテナ定義 + 併用クラスで内部のコンテンツ幅を制御する。
|
|
2
|
+
.is--container {
|
|
3
|
+
container-type: inline-size;
|
|
4
|
+
// margin-inline: auto;
|
|
5
|
+
// inline-size: 100%; // gridやflex内での挙動を考慮。(mx:autoにするとcontainer-type:inline-sizeだと横幅つぶれる)
|
|
6
|
+
|
|
7
|
+
// is--container ごとにセット。
|
|
8
|
+
// --sz--outer: 100cqi;
|
|
9
|
+
|
|
10
|
+
// コンテナの親にhas--gutterがある場合はその分を加算
|
|
11
|
+
// :where(.has--gutter) > & {
|
|
12
|
+
// --sz--outer: calc(100cqi + var(--gutter) * 2);
|
|
13
|
+
// }
|
|
14
|
+
|
|
15
|
+
// 子要素の制御
|
|
16
|
+
> * {
|
|
17
|
+
--max-sz: var(--contentSz, 100%);
|
|
18
|
+
max-inline-size: var(--max-sz, 100%);
|
|
19
|
+
margin-inline: auto;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// 一番トップレベルのcontainerで outer サイズセット
|
|
24
|
+
.is--container:not(.is--container .is--container) {
|
|
25
|
+
--sz--outer: 100cqi;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
// Memo: それぞれの直下要素( > * ) に対してスタイルをセットした方がネスト時の影響をなくせるが、constrainedのネストが多様されることは少ないので親側の変数管理のみで実装。
|
|
29
|
+
.-container\:s {
|
|
30
|
+
--contentSz: var(--sz--s);
|
|
31
|
+
}
|
|
32
|
+
.-container\:m {
|
|
33
|
+
--contentSz: var(--sz--m);
|
|
34
|
+
}
|
|
35
|
+
.-container\:l {
|
|
36
|
+
--contentSz: var(--sz--l);
|
|
37
|
+
}
|
|
@@ -1,26 +1,19 @@
|
|
|
1
1
|
@use '../_mixin' as mixin;
|
|
2
2
|
|
|
3
|
-
// has--border?
|
|
4
|
-
// bdc だけとかの指定でも -bd:出力?
|
|
5
3
|
/*
|
|
6
4
|
|
|
7
5
|
使用される環境(resetCSS)によって挙動が変わりやすいので 各プロパティを変数で管理する。
|
|
8
|
-
ブラウザのデフォルト挙動では、bds指定でborder出現してくるが、nextraのresetCSSみたいな特殊な環境だとbdwの指定でborderでてきたりする。
|
|
6
|
+
Memo: ブラウザのデフォルト挙動では、bds指定でborder出現してくるが、nextraのresetCSSみたいな特殊な環境だとbdwの指定でborderでてきたりする。
|
|
9
7
|
|
|
10
|
-
borderはLismの中でも特殊な仕様になっている。
|
|
11
|
-
--bds, --bdw, --bdc で管理できるようにしていて、そのために .-bd
|
|
12
|
-
*/
|
|
8
|
+
各方向にそれぞれBP対応しているとCSSが肥大化することもあり、border はLismの中でも特殊な仕様になっている。
|
|
9
|
+
--bds, --bdw, --bdc で管理できるようにしていて、そのために .-bd, .-bd-{side} クラスを使う。
|
|
13
10
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
@include mixin.maybe_where('.-bd,[class*="-bd:"]', 'base') {
|
|
17
|
-
--bds: solid;
|
|
18
|
-
--bdw: 1px;
|
|
19
|
-
--bdc: currentColor;
|
|
20
|
-
}
|
|
11
|
+
--bdw を変化させることで方向を変化させたりできるようになっている。
|
|
12
|
+
*/
|
|
21
13
|
|
|
14
|
+
// Memo: base レイヤーで初期値セット済み
|
|
22
15
|
.-bd,
|
|
23
|
-
[class*='-bd
|
|
16
|
+
[class*='-bd-'] {
|
|
24
17
|
border-width: var(--bdw) #{mixin.$maybe_important};
|
|
25
18
|
border-color: var(--bdc) #{mixin.$maybe_important};
|
|
26
19
|
}
|
|
@@ -31,42 +24,34 @@
|
|
|
31
24
|
border-style: var(--bds) #{mixin.$maybe_important};
|
|
32
25
|
}
|
|
33
26
|
|
|
34
|
-
/* stylelint-disable */
|
|
35
|
-
.-bd\:n {
|
|
36
|
-
border: none #{mixin.$maybe_important};
|
|
37
|
-
}
|
|
38
|
-
|
|
39
27
|
// 方向指定
|
|
40
|
-
|
|
41
|
-
// border-style: var(--bds) #{mixin.$maybe_important};
|
|
42
|
-
// }
|
|
43
|
-
.-bd\:l {
|
|
44
|
-
border-left-style: var(--bds) #{mixin.$maybe_important};
|
|
45
|
-
}
|
|
46
|
-
.-bd\:r {
|
|
47
|
-
border-right-style: var(--bds) #{mixin.$maybe_important};
|
|
48
|
-
}
|
|
49
|
-
.-bd\:t {
|
|
50
|
-
border-top-style: var(--bds) #{mixin.$maybe_important};
|
|
51
|
-
}
|
|
52
|
-
.-bd\:b {
|
|
53
|
-
border-bottom-style: var(--bds) #{mixin.$maybe_important};
|
|
54
|
-
}
|
|
55
|
-
.-bd\:x {
|
|
28
|
+
.-bd-x {
|
|
56
29
|
border-inline-style: var(--bds) #{mixin.$maybe_important};
|
|
57
30
|
}
|
|
58
|
-
.-bd
|
|
31
|
+
.-bd-y {
|
|
59
32
|
border-block-style: var(--bds) #{mixin.$maybe_important};
|
|
60
33
|
}
|
|
61
|
-
.-bd
|
|
34
|
+
.-bd-x-s {
|
|
62
35
|
border-inline-start-style: var(--bds) #{mixin.$maybe_important};
|
|
63
36
|
}
|
|
64
|
-
.-bd
|
|
37
|
+
.-bd-x-e {
|
|
65
38
|
border-inline-end-style: var(--bds) #{mixin.$maybe_important};
|
|
66
39
|
}
|
|
67
|
-
.-bd
|
|
40
|
+
.-bd-t {
|
|
41
|
+
border-top-style: var(--bds) #{mixin.$maybe_important};
|
|
42
|
+
}
|
|
43
|
+
.-bd-b {
|
|
44
|
+
border-bottom-style: var(--bds) #{mixin.$maybe_important};
|
|
45
|
+
}
|
|
46
|
+
.-bd-l {
|
|
47
|
+
border-left-style: var(--bds) #{mixin.$maybe_important};
|
|
48
|
+
}
|
|
49
|
+
.-bd-r {
|
|
50
|
+
border-right-style: var(--bds) #{mixin.$maybe_important};
|
|
51
|
+
}
|
|
52
|
+
.-bd-y-s {
|
|
68
53
|
border-block-start-style: var(--bds) #{mixin.$maybe_important};
|
|
69
54
|
}
|
|
70
|
-
.-bd
|
|
55
|
+
.-bd-y-e {
|
|
71
56
|
border-block-end-style: var(--bds) #{mixin.$maybe_important};
|
|
72
57
|
}
|
|
@@ -2,45 +2,34 @@
|
|
|
2
2
|
|
|
3
3
|
@media (any-hover: hover) {
|
|
4
4
|
.-hov\:c:hover {
|
|
5
|
-
color: var(--hov-c, var(--c
|
|
5
|
+
color: var(--hov-c, var(--c--link)) #{mixin.$maybe_important};
|
|
6
6
|
}
|
|
7
7
|
.-hov\:bdc:hover {
|
|
8
|
-
border-color: var(--hov-bdc, var(--c
|
|
8
|
+
border-color: var(--hov-bdc, var(--c--link)) #{mixin.$maybe_important};
|
|
9
9
|
}
|
|
10
10
|
.-hov\:bgc:hover {
|
|
11
|
-
background-color: var(--hov-bgc, var(--c
|
|
11
|
+
background-color: var(--hov-bgc, var(--c--base-2)) #{mixin.$maybe_important};
|
|
12
12
|
}
|
|
13
|
-
.-hov\:
|
|
14
|
-
opacity: var(--hov-
|
|
13
|
+
.-hov\:o:hover {
|
|
14
|
+
opacity: var(--hov-o, 0.7) !important;
|
|
15
15
|
}
|
|
16
16
|
.-hov\:bxsh:hover {
|
|
17
|
-
box-shadow: var(--hov-bxsh, var(--bxsh
|
|
17
|
+
box-shadow: var(--hov-bxsh, var(--bxsh--40)) #{mixin.$maybe_important};
|
|
18
18
|
}
|
|
19
19
|
// .-hov\:filter:hover {
|
|
20
20
|
// filter: var(--hov-filter) !important;
|
|
21
21
|
// }
|
|
22
|
-
.-hov\:set:hover {
|
|
23
|
-
--_notHov: ;
|
|
24
|
-
}
|
|
25
|
-
.-hov\:set:not(:hover) {
|
|
26
|
-
--_isHov: ;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
@media (any-hover: none) {
|
|
30
|
-
.-hov\:set {
|
|
31
|
-
--_isHov: ;
|
|
32
|
-
}
|
|
33
22
|
}
|
|
34
23
|
|
|
35
24
|
// ------------------------------------------------------------
|
|
36
|
-
// .-hov\:
|
|
25
|
+
// .-hov\:to
|
|
37
26
|
// ------------------------------------------------------------
|
|
38
27
|
|
|
39
|
-
.-hov\:
|
|
40
|
-
opacity: var(--
|
|
28
|
+
.-hov\:to\:hide {
|
|
29
|
+
opacity: var(--isHov_, 0) #{mixin.$maybe_important};
|
|
41
30
|
}
|
|
42
31
|
|
|
43
|
-
.-hov\:
|
|
44
|
-
opacity: var(--
|
|
45
|
-
visibility: var(--
|
|
32
|
+
.-hov\:to\:show {
|
|
33
|
+
opacity: var(--notHov_, 0) #{mixin.$maybe_important};
|
|
34
|
+
visibility: var(--notHov_, hidden) #{mixin.$maybe_important};
|
|
46
35
|
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
.-max-sz\:full {
|
|
2
|
+
max-inline-size: 100%;
|
|
3
|
+
|
|
4
|
+
:where(.has--gutter) > & {
|
|
5
|
+
max-inline-size: calc(100% + var(--gutter) * 2);
|
|
6
|
+
margin-inline: calc(var(--gutter) * -1);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.-max-sz\:outer {
|
|
11
|
+
max-inline-size: var(--sz--outer, 100vi);
|
|
12
|
+
margin-inline: calc(50% - var(--sz--outer) / 2);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
// .-max-sz\:wide {
|
|
16
|
+
// max-inline-size: var(--sz--wide, 100%);
|
|
17
|
+
// }
|