contain-css-svelte 1.0.1 → 1.0.2
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/dist/Card.svelte +2 -0
- package/dist/controls/Select.svelte +1 -0
- package/dist/controls/TabItem.svelte +28 -0
- package/dist/dropdowns/DropdownMenu.svelte +3 -2
- package/dist/index.d.ts +3 -0
- package/dist/index.js +3 -0
- package/dist/layout/Container.svelte +2 -0
- package/dist/layout/DataList.svelte +88 -0
- package/dist/layout/DataList.svelte.d.ts +33 -0
- package/dist/layout/DataListItem.svelte +456 -0
- package/dist/layout/DataListItem.svelte.d.ts +40 -0
- package/dist/layout/Hero.svelte +2 -0
- package/dist/layout/MenuList.svelte +69 -15
- package/dist/layout/SplitPane.svelte +24 -7
- package/dist/layout/Table.svelte +2 -0
- package/dist/layout/Tile.svelte +2 -0
- package/dist/misc/Progress.svelte +2 -0
- package/dist/overlays/Tooltip.svelte +2 -0
- package/dist/sass/_typography.scss +23 -0
- package/dist/typography/TextLayout.svelte +2 -0
- package/dist/vars/affordances.css +8 -0
- package/dist/vars/defaults.css +12 -0
- package/dist/vars/themes/light.css +1 -0
- package/dist/vars/themes/lightordark.css +6 -5
- package/dist/vars/typography.css +4 -0
- package/package.json +3 -2
package/dist/Card.svelte
CHANGED
|
@@ -150,6 +150,8 @@ let hasFooter = $derived(Boolean(footer));
|
|
|
150
150
|
text-indent: var(--card-first-paragraph-indent, var(--container-first-paragraph-indent, var(--first-paragraph-indent, var(--first-paragraph-indent, inherit))));
|
|
151
151
|
font-variant: var(--card-first-paragraph-font-variant, var(--container-first-paragraph-font-variant, var(--first-paragraph-font-variant, var(--first-paragraph-font-variant, inherit))));
|
|
152
152
|
text-align: var(--card-first-paragraph-text-align, var(--container-first-paragraph-text-align, var(--first-paragraph-text-align, var(--first-paragraph-text-align, inherit))));
|
|
153
|
+
font-size: var(--card-first-paragraph-first-paragraph-font-size, var(--container-first-paragraph-first-paragraph-font-size, var(--first-paragraph-font-size, var(--card-paragraph-font-size, var(--container-paragraph-font-size, var(--paragraph-font-size, var(--card-font-size, var(--container-font-size, var(--font-size, inherit)))))))));
|
|
154
|
+
line-height: var(--card-first-paragraph-first-paragraph-line-height, var(--container-first-paragraph-first-paragraph-line-height, var(--first-paragraph-line-height, var(--card-paragraph-line-height, var(--container-paragraph-line-height, var(--paragraph-line-height, var(--card-line-height, var(--container-line-height, var(--line-height, inherit)))))))));
|
|
153
155
|
margin-block-start: var(--card-first-paragraph-margin-top, var(--container-first-paragraph-margin-top, var(--first-paragraph-margin-top, 0)));
|
|
154
156
|
}
|
|
155
157
|
|
|
@@ -190,6 +190,7 @@ button:focus-visible {
|
|
|
190
190
|
--link-fg: var(--select-link-fg, var(--input-link-fg, var(--menu-link-fg, var(--control-link-fg, var(--container-link-fg, var(--container-link-fg, inherit))))));
|
|
191
191
|
--fg: var(--select-fg, var(--input-fg, var(--menu-fg, var(--control-fg, var(--container-fg, var(--fg, unset))))));
|
|
192
192
|
--bg: var(--select-bg, var(--input-bg, var(--menu-bg, var(--control-bg, var(--container-bg, var(--bg, unset))))));
|
|
193
|
+
--menu-item-justify: var(--select-menu-item-justify, flex-start);
|
|
193
194
|
}
|
|
194
195
|
|
|
195
196
|
.dropdown-menu :global(.dropdown-menu) > :global(button) {
|
|
@@ -38,6 +38,20 @@ div > :global(div > button) {
|
|
|
38
38
|
border-bottom: var(--tab-border-bottom, var(--button-border-bottom, var(--control-border-bottom, var(--secondary-border-bottom, var(--border-bottom, var(--tab-border, var(--button-border, var(--control-border, var(--secondary-border, var(--border, none))))))))));
|
|
39
39
|
border-left: var(--tab-border-left, var(--button-border-left, var(--control-border-left, var(--secondary-border-left, var(--border-left, var(--tab-border, var(--button-border, var(--control-border, var(--secondary-border, var(--border, none))))))))));
|
|
40
40
|
border-radius: var(--tab-border-radius, var(--button-border-radius, var(--control-border-radius, var(--secondary-border-radius, var(--border-radius, none)))));
|
|
41
|
+
font-family: var(--tab-font-family, var(--button-font-family, var(--control-font-family, var(--secondary-font-family, var(--font-family, unset)))));
|
|
42
|
+
text-transform: var(--tab-text-transform, var(--button-text-transform, var(--control-text-transform, var(--secondary-text-transform, var(--text-transform, unset)))));
|
|
43
|
+
text-decoration: var(--tab-text-decoration, var(--button-text-decoration, var(--control-text-decoration, var(--secondary-text-decoration, var(--text-decoration, unset)))));
|
|
44
|
+
font-size: var(--tab-font-size, var(--button-font-size, var(--control-font-size, var(--secondary-font-size, var(--font-size, unset)))));
|
|
45
|
+
font-weight: var(--tab-font-weight, var(--button-font-weight, var(--control-font-weight, var(--secondary-font-weight, var(--font-weight, unset)))));
|
|
46
|
+
line-height: var(--tab-line-height, var(--button-line-height, var(--control-line-height, var(--secondary-line-height, var(--line-height, unset)))));
|
|
47
|
+
letter-spacing: var(--tab-letter-spacing, var(--button-letter-spacing, var(--control-letter-spacing, var(--secondary-letter-spacing, var(--letter-spacing, unset)))));
|
|
48
|
+
margin-top: var(--tab-margin, var(--button-margin, var(--control-margin, var(--secondary-margin, var(--margin, unset)))));
|
|
49
|
+
margin-top: var(--tab-margin-top, var(--button-margin-top, var(--control-margin-top, var(--secondary-margin-top, var(--margin-top, unset)))));
|
|
50
|
+
margin-bottom: var(--tab-margin, var(--button-margin, var(--control-margin, var(--secondary-margin, var(--margin, unset)))));
|
|
51
|
+
margin-bottom: var(--tab-margin-bottom, var(--button-margin-bottom, var(--control-margin-bottom, var(--secondary-margin-bottom, var(--margin-bottom, unset)))));
|
|
52
|
+
text-indent: var(--tab-indent, var(--button-indent, var(--control-indent, var(--secondary-indent, var(--indent, unset)))));
|
|
53
|
+
font-variant: var(--tab-font-variant, var(--button-font-variant, var(--control-font-variant, var(--secondary-font-variant, var(--font-variant, unset)))));
|
|
54
|
+
text-align: var(--tab-text-align, var(--button-text-align, var(--control-text-align, var(--secondary-text-align, var(--text-align, unset)))));
|
|
41
55
|
}
|
|
42
56
|
|
|
43
57
|
div > :global(button):focus-visible,
|
|
@@ -61,4 +75,18 @@ div.active > :global(div > button) {
|
|
|
61
75
|
--link-fg: var(--tab-active-link-fg, var(--primary-link-fg, var(--tab-link-fg, var(--button-link-fg, var(--control-link-fg, var(--secondary-link-fg, var(--secondary-link-fg, inherit)))))));
|
|
62
76
|
--fg: var(--tab-active-fg, var(--primary-fg, var(--tab-fg, var(--button-fg, var(--control-fg, var(--secondary-fg, var(--fg, unset)))))));
|
|
63
77
|
--bg: var(--tab-active-bg, var(--primary-bg, var(--tab-bg, var(--button-bg, var(--control-bg, var(--secondary-bg, var(--bg, unset)))))));
|
|
78
|
+
font-family: var(--tab-active-font-family, var(--tab-font-family, var(--button-font-family, var(--control-font-family, var(--secondary-font-family, var(--font-family, unset))))));
|
|
79
|
+
text-transform: var(--tab-active-text-transform, var(--tab-text-transform, var(--button-text-transform, var(--control-text-transform, var(--secondary-text-transform, var(--text-transform, unset))))));
|
|
80
|
+
text-decoration: var(--tab-active-text-decoration, var(--tab-text-decoration, var(--button-text-decoration, var(--control-text-decoration, var(--secondary-text-decoration, var(--text-decoration, unset))))));
|
|
81
|
+
font-size: var(--tab-active-font-size, var(--tab-font-size, var(--button-font-size, var(--control-font-size, var(--secondary-font-size, var(--font-size, unset))))));
|
|
82
|
+
font-weight: var(--tab-active-font-weight, var(--tab-font-weight, var(--button-font-weight, var(--control-font-weight, var(--secondary-font-weight, var(--font-weight, unset))))));
|
|
83
|
+
line-height: var(--tab-active-line-height, var(--tab-line-height, var(--button-line-height, var(--control-line-height, var(--secondary-line-height, var(--line-height, unset))))));
|
|
84
|
+
letter-spacing: var(--tab-active-letter-spacing, var(--tab-letter-spacing, var(--button-letter-spacing, var(--control-letter-spacing, var(--secondary-letter-spacing, var(--letter-spacing, unset))))));
|
|
85
|
+
margin-top: var(--tab-active-margin, var(--tab-margin, var(--button-margin, var(--control-margin, var(--secondary-margin, var(--margin, unset))))));
|
|
86
|
+
margin-top: var(--tab-active-margin-top, var(--tab-margin-top, var(--button-margin-top, var(--control-margin-top, var(--secondary-margin-top, var(--margin-top, unset))))));
|
|
87
|
+
margin-bottom: var(--tab-active-margin, var(--tab-margin, var(--button-margin, var(--control-margin, var(--secondary-margin, var(--margin, unset))))));
|
|
88
|
+
margin-bottom: var(--tab-active-margin-bottom, var(--tab-margin-bottom, var(--button-margin-bottom, var(--control-margin-bottom, var(--secondary-margin-bottom, var(--margin-bottom, unset))))));
|
|
89
|
+
text-indent: var(--tab-active-indent, var(--tab-indent, var(--button-indent, var(--control-indent, var(--secondary-indent, var(--indent, unset))))));
|
|
90
|
+
font-variant: var(--tab-active-font-variant, var(--tab-font-variant, var(--button-font-variant, var(--control-font-variant, var(--secondary-font-variant, var(--font-variant, unset))))));
|
|
91
|
+
text-align: var(--tab-active-text-align, var(--tab-text-align, var(--button-text-align, var(--control-text-align, var(--secondary-text-align, var(--text-align, unset))))));
|
|
64
92
|
}</style>
|
|
@@ -316,7 +316,7 @@ button {
|
|
|
316
316
|
}
|
|
317
317
|
|
|
318
318
|
.dropdown-container {
|
|
319
|
-
overflow: hidden;
|
|
319
|
+
overflow-x: hidden;
|
|
320
320
|
}
|
|
321
321
|
|
|
322
322
|
.dropdown-container:popover-open {
|
|
@@ -324,7 +324,8 @@ button {
|
|
|
324
324
|
pointer-events: all;
|
|
325
325
|
position: fixed;
|
|
326
326
|
inset: unset;
|
|
327
|
-
overflow:
|
|
327
|
+
overflow-y: auto;
|
|
328
|
+
overflow-x: hidden;
|
|
328
329
|
}
|
|
329
330
|
|
|
330
331
|
.dropdown-content {
|
package/dist/index.d.ts
CHANGED
|
@@ -14,6 +14,8 @@ import Bar from "./layout/Bar.svelte";
|
|
|
14
14
|
import Column from "./layout/Column.svelte";
|
|
15
15
|
import Columns from "./layout/Columns.svelte";
|
|
16
16
|
import Container from "./layout/Container.svelte";
|
|
17
|
+
import DataList from "./layout/DataList.svelte";
|
|
18
|
+
import DataListItem from "./layout/DataListItem.svelte";
|
|
17
19
|
import Fieldset from "./layout/Fieldset.svelte";
|
|
18
20
|
import Form from "./layout/Form.svelte";
|
|
19
21
|
import FormItem from "./layout/FormItem.svelte";
|
|
@@ -44,6 +46,7 @@ export { Button, ButtonLink, Checkbox, Input, Slider, RadioButton, MiniButton, S
|
|
|
44
46
|
export { Bar, Container, GridLayout, MenuList, Page, ResponsiveText, TabBar };
|
|
45
47
|
export { TextLayout, Code, Accordion };
|
|
46
48
|
export { Card, Tile, Form, FormItem, FormProvider, Fieldset };
|
|
49
|
+
export { DataList, DataListItem };
|
|
47
50
|
export { Row, Column, Columns, SplitPane, Sidebar };
|
|
48
51
|
export { Dialog };
|
|
49
52
|
export { Progress, Tooltip };
|
package/dist/index.js
CHANGED
|
@@ -15,6 +15,8 @@ import Bar from "./layout/Bar.svelte";
|
|
|
15
15
|
import Column from "./layout/Column.svelte";
|
|
16
16
|
import Columns from "./layout/Columns.svelte";
|
|
17
17
|
import Container from "./layout/Container.svelte";
|
|
18
|
+
import DataList from "./layout/DataList.svelte";
|
|
19
|
+
import DataListItem from "./layout/DataListItem.svelte";
|
|
18
20
|
import Fieldset from "./layout/Fieldset.svelte";
|
|
19
21
|
import Form from "./layout/Form.svelte";
|
|
20
22
|
import FormItem from "./layout/FormItem.svelte";
|
|
@@ -44,6 +46,7 @@ export { Button, ButtonLink, Checkbox, Input, Slider, RadioButton, MiniButton, S
|
|
|
44
46
|
export { Bar, Container, GridLayout, MenuList, Page, ResponsiveText, TabBar };
|
|
45
47
|
export { TextLayout, Code, Accordion };
|
|
46
48
|
export { Card, Tile, Form, FormItem, FormProvider, Fieldset };
|
|
49
|
+
export { DataList, DataListItem };
|
|
47
50
|
export { Row, Column, Columns, SplitPane, Sidebar };
|
|
48
51
|
export { Dialog };
|
|
49
52
|
export { Progress, Tooltip };
|
|
@@ -136,6 +136,8 @@ section :global(h6 + p) {
|
|
|
136
136
|
text-indent: var(--container-first-paragraph-indent, var(--block-first-paragraph-indent, var(--first-paragraph-indent, var(--first-paragraph-indent, inherit))));
|
|
137
137
|
font-variant: var(--container-first-paragraph-font-variant, var(--block-first-paragraph-font-variant, var(--first-paragraph-font-variant, var(--first-paragraph-font-variant, inherit))));
|
|
138
138
|
text-align: var(--container-first-paragraph-text-align, var(--block-first-paragraph-text-align, var(--first-paragraph-text-align, var(--first-paragraph-text-align, inherit))));
|
|
139
|
+
font-size: var(--container-first-paragraph-first-paragraph-font-size, var(--block-first-paragraph-first-paragraph-font-size, var(--first-paragraph-font-size, var(--container-paragraph-font-size, var(--block-paragraph-font-size, var(--paragraph-font-size, var(--container-font-size, var(--block-font-size, var(--font-size, inherit)))))))));
|
|
140
|
+
line-height: var(--container-first-paragraph-first-paragraph-line-height, var(--block-first-paragraph-first-paragraph-line-height, var(--first-paragraph-line-height, var(--container-paragraph-line-height, var(--block-paragraph-line-height, var(--paragraph-line-height, var(--container-line-height, var(--block-line-height, var(--line-height, inherit)))))))));
|
|
139
141
|
margin-block-start: var(--container-first-paragraph-margin-top, var(--block-first-paragraph-margin-top, var(--first-paragraph-margin-top, 0)));
|
|
140
142
|
}
|
|
141
143
|
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
<script lang="ts">import { injectVars } from "../util";
|
|
2
|
+
let { children, stackable = false, ...restProps } = $props();
|
|
3
|
+
const style = $derived(injectVars(restProps, "data-list", [
|
|
4
|
+
"bg",
|
|
5
|
+
"fg",
|
|
6
|
+
"padding",
|
|
7
|
+
"width",
|
|
8
|
+
"marginInline",
|
|
9
|
+
"marginLeft",
|
|
10
|
+
"marginRight",
|
|
11
|
+
"minWidth",
|
|
12
|
+
"maxWidth",
|
|
13
|
+
"height",
|
|
14
|
+
"gap",
|
|
15
|
+
"itemPadding",
|
|
16
|
+
"itemMinHeight",
|
|
17
|
+
"iconWidth",
|
|
18
|
+
"iconSize",
|
|
19
|
+
"iconBorderRadius",
|
|
20
|
+
"actionWidth",
|
|
21
|
+
"actionFlexDirection",
|
|
22
|
+
"actionWrap",
|
|
23
|
+
"actionCompactFlexDirection",
|
|
24
|
+
"actionCompactWrap",
|
|
25
|
+
"actionGap",
|
|
26
|
+
"itemBorder",
|
|
27
|
+
"selectedBg",
|
|
28
|
+
"selectedFg",
|
|
29
|
+
"selectedOutline",
|
|
30
|
+
"selectedBorder",
|
|
31
|
+
"selectionColor",
|
|
32
|
+
]));
|
|
33
|
+
</script>
|
|
34
|
+
|
|
35
|
+
<ul class="data-list" class:stackable {style} {...restProps}>
|
|
36
|
+
{@render children?.()}
|
|
37
|
+
</ul>
|
|
38
|
+
|
|
39
|
+
<style>/* Warning: because we define a fallback
|
|
40
|
+
media query, the media query can override the container
|
|
41
|
+
if we stack a bunch of these in a row and aren't thoughtful about the order.
|
|
42
|
+
Put min-width queries *after* max-width queries so that smaller
|
|
43
|
+
container queries don't get their styles overridden by large media queries.
|
|
44
|
+
*/
|
|
45
|
+
/* Convenience groupings */
|
|
46
|
+
.data-list {
|
|
47
|
+
background: var(--data-list-bg, var(--container-bg, var(--bg, unset)));
|
|
48
|
+
color: var(--data-list-fg, var(--container-fg, var(--fg, unset)));
|
|
49
|
+
--link-bg: var(--data-list-link-bg, var(--container-link-bg, var(--container-link-bg, inherit)));
|
|
50
|
+
--link-fg: var(--data-list-link-fg, var(--container-link-fg, var(--container-link-fg, inherit)));
|
|
51
|
+
--fg: var(--data-list-fg, var(--container-fg, var(--fg, unset)));
|
|
52
|
+
--bg: var(--data-list-bg, var(--container-bg, var(--bg, unset)));
|
|
53
|
+
box-sizing: border-box;
|
|
54
|
+
border: var(--data-list-border, var(--container-border, var(--border, var(--border-width, 1px) var(--border-style, solid) var(--border-color, var(--fg)))));
|
|
55
|
+
/* border-top: fn.var-with-fallbacks(--border-top,
|
|
56
|
+
append($prefixes,
|
|
57
|
+
fn.var-with-fallbacks(--border,$prefixes...)
|
|
58
|
+
)...) */
|
|
59
|
+
/* border-right: fn.var-with-fallbacks(--border-right,
|
|
60
|
+
append($prefixes,
|
|
61
|
+
fn.var-with-fallbacks(--border,$prefixes...)
|
|
62
|
+
)...) */
|
|
63
|
+
/* border-bottom: fn.var-with-fallbacks(--border-bottom,
|
|
64
|
+
append($prefixes,
|
|
65
|
+
fn.var-with-fallbacks(--border,$prefixes...)
|
|
66
|
+
)...) */
|
|
67
|
+
/* border-left: fn.var-with-fallbacks(--border-left,
|
|
68
|
+
append($prefixes,
|
|
69
|
+
fn.var-with-fallbacks(--border,$prefixes...)
|
|
70
|
+
)...) */
|
|
71
|
+
padding: var(--data-list-padding, var(--container-padding, var(--padding, 4px)));
|
|
72
|
+
border-radius: var(--data-list-square-radius, var(--container-square-radius, var(--square-radius, 0)));
|
|
73
|
+
box-shadow: var(--data-list-shadow-distance, var(--container-shadow-distance, var(--shadow-distance, var(--space)))) var(--data-list-shadow-distance, var(--container-shadow-distance, var(--shadow-distance, var(--space)))) var(--data-list-shadow-blur, var(--container-shadow-blur, var(--shadow-blur, var(--space)))) var(--data-list-shadow-color, var(--container-shadow-color, var(--shadow-color, rgba(127, 127, 127, 0.4))));
|
|
74
|
+
list-style: none;
|
|
75
|
+
padding: 0;
|
|
76
|
+
margin: var(--data-list-margin, var(--margin, 0));
|
|
77
|
+
margin-left: var(--data-list-margin-left, var(--margin-left, var(--data-list-margin-inline, auto)));
|
|
78
|
+
margin-right: var(--data-list-margin-right, var(--margin-right, var(--data-list-margin-inline, auto)));
|
|
79
|
+
width: var(--data-list-width, var(--width, 100%));
|
|
80
|
+
min-width: var(--data-list-min-width, var(--min-width, 0));
|
|
81
|
+
max-width: var(--data-list-max-width, var(--max-width, none));
|
|
82
|
+
overflow: hidden;
|
|
83
|
+
container-type: inline-size;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.data-list :global(.data-list-item:last-child) {
|
|
87
|
+
border-bottom: none;
|
|
88
|
+
}</style>
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { Snippet } from "svelte";
|
|
2
|
+
import type { HTMLAttributes } from "svelte/elements";
|
|
3
|
+
import type { BaseStyleProps } from "../types";
|
|
4
|
+
type Props = {
|
|
5
|
+
children?: Snippet;
|
|
6
|
+
stackable?: boolean;
|
|
7
|
+
marginInline?: string | null;
|
|
8
|
+
marginLeft?: string | null;
|
|
9
|
+
marginRight?: string | null;
|
|
10
|
+
minWidth?: string | null;
|
|
11
|
+
maxWidth?: string | null;
|
|
12
|
+
gap?: string | null;
|
|
13
|
+
itemPadding?: string | null;
|
|
14
|
+
itemMinHeight?: string | null;
|
|
15
|
+
iconWidth?: string | null;
|
|
16
|
+
iconSize?: string | null;
|
|
17
|
+
iconBorderRadius?: string | null;
|
|
18
|
+
actionWidth?: string | null;
|
|
19
|
+
actionFlexDirection?: string | null;
|
|
20
|
+
actionWrap?: string | null;
|
|
21
|
+
actionCompactFlexDirection?: string | null;
|
|
22
|
+
actionCompactWrap?: string | null;
|
|
23
|
+
actionGap?: string | null;
|
|
24
|
+
itemBorder?: string | null;
|
|
25
|
+
selectedBg?: string | null;
|
|
26
|
+
selectedFg?: string | null;
|
|
27
|
+
selectedOutline?: string | null;
|
|
28
|
+
selectedBorder?: string | null;
|
|
29
|
+
selectionColor?: string | null;
|
|
30
|
+
} & BaseStyleProps & HTMLAttributes<HTMLUListElement>;
|
|
31
|
+
declare const DataList: import("svelte").Component<Props, {}, "">;
|
|
32
|
+
type DataList = ReturnType<typeof DataList>;
|
|
33
|
+
export default DataList;
|
|
@@ -0,0 +1,456 @@
|
|
|
1
|
+
<script lang="ts">import Checkbox from "../controls/Checkbox.svelte";
|
|
2
|
+
import { injectVars } from "../util";
|
|
3
|
+
let { start, end, children, interactive = false, selectable = false, checked = $bindable(false), tabindex = undefined, onclick = null, onkeydown = null, ...restProps } = $props();
|
|
4
|
+
const style = $derived(injectVars(restProps, "data-list-item", [
|
|
5
|
+
"bg",
|
|
6
|
+
"fg",
|
|
7
|
+
"padding",
|
|
8
|
+
"width",
|
|
9
|
+
"height",
|
|
10
|
+
"gap",
|
|
11
|
+
"rowGap",
|
|
12
|
+
"mainGap",
|
|
13
|
+
"itemPadding",
|
|
14
|
+
"itemMinHeight",
|
|
15
|
+
"iconWidth",
|
|
16
|
+
"iconSize",
|
|
17
|
+
"iconBorderRadius",
|
|
18
|
+
"actionWidth",
|
|
19
|
+
"actionFlexDirection",
|
|
20
|
+
"actionWrap",
|
|
21
|
+
"actionCompactFlexDirection",
|
|
22
|
+
"actionCompactWrap",
|
|
23
|
+
"actionGap",
|
|
24
|
+
"actionAlign",
|
|
25
|
+
"actionJustify",
|
|
26
|
+
"actionMobileJustify",
|
|
27
|
+
"itemBorder",
|
|
28
|
+
"selectedBg",
|
|
29
|
+
"selectedFg",
|
|
30
|
+
"selectedOutline",
|
|
31
|
+
"selectedBorder",
|
|
32
|
+
"selectionColor",
|
|
33
|
+
]));
|
|
34
|
+
const hasStart = $derived(Boolean(start));
|
|
35
|
+
const hasCustomEnd = $derived(Boolean(end));
|
|
36
|
+
const hasDefaultSelector = $derived(selectable && !hasCustomEnd);
|
|
37
|
+
const hasEnd = $derived(hasCustomEnd || hasDefaultSelector);
|
|
38
|
+
const isInteractive = $derived(interactive || selectable);
|
|
39
|
+
const rowTabIndex = $derived(tabindex ?? (isInteractive ? 0 : undefined));
|
|
40
|
+
const rowRole = $derived(selectable ? "checkbox" : interactive ? "button" : undefined);
|
|
41
|
+
function isNestedControlTarget(target, currentTarget) {
|
|
42
|
+
if (!(target instanceof Element))
|
|
43
|
+
return false;
|
|
44
|
+
const nearestControl = target.closest("button, a, input, select, textarea, summary, [role='button'], [role='link'], [role='checkbox'], [role='menuitem']");
|
|
45
|
+
return Boolean(nearestControl && nearestControl !== currentTarget);
|
|
46
|
+
}
|
|
47
|
+
function handleClick(event) {
|
|
48
|
+
const bubblingFromNestedControl = event.target !== event.currentTarget &&
|
|
49
|
+
isNestedControlTarget(event.target, event.currentTarget);
|
|
50
|
+
if (bubblingFromNestedControl) {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
if (selectable) {
|
|
54
|
+
checked = !checked;
|
|
55
|
+
}
|
|
56
|
+
onclick?.(event);
|
|
57
|
+
}
|
|
58
|
+
function handleKeydown(event) {
|
|
59
|
+
const bubblingFromNestedControl = event.target !== event.currentTarget &&
|
|
60
|
+
isNestedControlTarget(event.target, event.currentTarget);
|
|
61
|
+
const isActivationKey = event.key === " " || event.key === "Enter";
|
|
62
|
+
if (selectable) {
|
|
63
|
+
if (!bubblingFromNestedControl && isActivationKey) {
|
|
64
|
+
event.preventDefault();
|
|
65
|
+
checked = !checked;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
if (interactive && !selectable && !bubblingFromNestedControl && isActivationKey) {
|
|
69
|
+
event.preventDefault();
|
|
70
|
+
event.currentTarget.click();
|
|
71
|
+
}
|
|
72
|
+
onkeydown?.(event);
|
|
73
|
+
}
|
|
74
|
+
</script>
|
|
75
|
+
|
|
76
|
+
<!-- svelte-ignore a11y_no_noninteractive_tabindex -->
|
|
77
|
+
<!-- svelte-ignore a11y_no_noninteractive_element_interactions -->
|
|
78
|
+
<li
|
|
79
|
+
class="data-list-item"
|
|
80
|
+
class:hasStart
|
|
81
|
+
class:hasEnd
|
|
82
|
+
class:isInteractive
|
|
83
|
+
class:selectable
|
|
84
|
+
class:checked={selectable && checked}
|
|
85
|
+
{style}
|
|
86
|
+
tabindex={rowTabIndex}
|
|
87
|
+
role={rowRole}
|
|
88
|
+
aria-checked={selectable ? checked : undefined}
|
|
89
|
+
onclick={handleClick}
|
|
90
|
+
onkeydown={handleKeydown}
|
|
91
|
+
{...restProps}
|
|
92
|
+
>
|
|
93
|
+
{#if hasStart}
|
|
94
|
+
<div class="start">
|
|
95
|
+
{@render start?.()}
|
|
96
|
+
</div>
|
|
97
|
+
{/if}
|
|
98
|
+
|
|
99
|
+
<div class="main">
|
|
100
|
+
{@render children?.()}
|
|
101
|
+
</div>
|
|
102
|
+
|
|
103
|
+
{#if hasEnd}
|
|
104
|
+
<div class="end">
|
|
105
|
+
{#if hasCustomEnd}
|
|
106
|
+
{@render end?.()}
|
|
107
|
+
{:else if hasDefaultSelector}
|
|
108
|
+
<Checkbox
|
|
109
|
+
bind:checked
|
|
110
|
+
padding="0"
|
|
111
|
+
tabindex="-1"
|
|
112
|
+
aria-label={checked ? "Unselect row" : "Select row"}
|
|
113
|
+
/>
|
|
114
|
+
{/if}
|
|
115
|
+
</div>
|
|
116
|
+
{/if}
|
|
117
|
+
</li>
|
|
118
|
+
|
|
119
|
+
<style>/* Warning: because we define a fallback
|
|
120
|
+
media query, the media query can override the container
|
|
121
|
+
if we stack a bunch of these in a row and aren't thoughtful about the order.
|
|
122
|
+
Put min-width queries *after* max-width queries so that smaller
|
|
123
|
+
container queries don't get their styles overridden by large media queries.
|
|
124
|
+
*/
|
|
125
|
+
/* Convenience groupings */
|
|
126
|
+
.data-list-item {
|
|
127
|
+
background: var(--data-list-item-bg, var(--data-list-bg, var(--container-bg, var(--bg, unset))));
|
|
128
|
+
color: var(--data-list-item-fg, var(--data-list-fg, var(--container-fg, var(--fg, unset))));
|
|
129
|
+
--link-bg: var(--data-list-item-link-bg, var(--data-list-link-bg, var(--container-link-bg, var(--container-link-bg, inherit))));
|
|
130
|
+
--link-fg: var(--data-list-item-link-fg, var(--data-list-link-fg, var(--container-link-fg, var(--container-link-fg, inherit))));
|
|
131
|
+
--fg: var(--data-list-item-fg, var(--data-list-fg, var(--container-fg, var(--fg, unset))));
|
|
132
|
+
--bg: var(--data-list-item-bg, var(--data-list-bg, var(--container-bg, var(--bg, unset))));
|
|
133
|
+
max-width: var(--data-list-item-line-width, var(--data-list-line-width, var(--container-line-width, var(--line-width, unset))));
|
|
134
|
+
font-family: var(--data-list-item-body-font-family, var(--data-list-body-font-family, var(--container-body-font-family, var(--body-font-family, var(--font-family)))));
|
|
135
|
+
font-family: var(--data-list-item-font-family, var(--data-list-font-family, var(--container-font-family, var(--font-family, unset))));
|
|
136
|
+
text-transform: var(--data-list-item-text-transform, var(--data-list-text-transform, var(--container-text-transform, var(--text-transform, unset))));
|
|
137
|
+
text-decoration: var(--data-list-item-text-decoration, var(--data-list-text-decoration, var(--container-text-decoration, var(--text-decoration, unset))));
|
|
138
|
+
font-size: var(--data-list-item-font-size, var(--data-list-font-size, var(--container-font-size, var(--font-size, unset))));
|
|
139
|
+
font-weight: var(--data-list-item-font-weight, var(--data-list-font-weight, var(--container-font-weight, var(--font-weight, unset))));
|
|
140
|
+
line-height: var(--data-list-item-line-height, var(--data-list-line-height, var(--container-line-height, var(--line-height, unset))));
|
|
141
|
+
letter-spacing: var(--data-list-item-letter-spacing, var(--data-list-letter-spacing, var(--container-letter-spacing, var(--letter-spacing, unset))));
|
|
142
|
+
margin-top: var(--data-list-item-margin, var(--data-list-margin, var(--container-margin, var(--margin, unset))));
|
|
143
|
+
margin-top: var(--data-list-item-margin-top, var(--data-list-margin-top, var(--container-margin-top, var(--margin-top, unset))));
|
|
144
|
+
margin-bottom: var(--data-list-item-margin, var(--data-list-margin, var(--container-margin, var(--margin, unset))));
|
|
145
|
+
margin-bottom: var(--data-list-item-margin-bottom, var(--data-list-margin-bottom, var(--container-margin-bottom, var(--margin-bottom, unset))));
|
|
146
|
+
text-indent: var(--data-list-item-indent, var(--data-list-indent, var(--container-indent, var(--indent, unset))));
|
|
147
|
+
font-variant: var(--data-list-item-font-variant, var(--data-list-font-variant, var(--container-font-variant, var(--font-variant, unset))));
|
|
148
|
+
text-align: var(--data-list-item-text-align, var(--data-list-text-align, var(--container-text-align, var(--text-align, unset))));
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
.data-list-item :global(p),
|
|
152
|
+
.data-list-item :global(blockquote),
|
|
153
|
+
.data-list-item :global(dl),
|
|
154
|
+
.data-list-item :global(ul),
|
|
155
|
+
.data-list-item :global(ol) {
|
|
156
|
+
max-width: var(--data-list-item-line-width, var(--data-list-line-width, var(--container-line-width, var(--line-width, 40em))));
|
|
157
|
+
font-family: var(--data-list-item-body-font-family, var(--data-list-body-font-family, var(--container-body-font-family, var(--body-font-family, var(--font-family)))));
|
|
158
|
+
line-height: var(--data-list-item-line-height, var(--data-list-line-height, var(--container-line-height, var(--line-height, 1.5))));
|
|
159
|
+
margin-left: auto;
|
|
160
|
+
margin-right: auto;
|
|
161
|
+
font-weight: var(--data-list-item-body-font-weight, var(--data-list-body-font-weight, var(--container-body-font-weight, var(--body-font-weight, unset))));
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
.data-list-item :global(h1),
|
|
165
|
+
.data-list-item :global(h2),
|
|
166
|
+
.data-list-item :global(h3),
|
|
167
|
+
.data-list-item :global(h4),
|
|
168
|
+
.data-list-item :global(h5),
|
|
169
|
+
.data-list-item :global(h6) {
|
|
170
|
+
color: var(--data-list-item-heading-fg, var(--data-list-heading-fg, var(--container-heading-fg, var(--heading-fg, unset))));
|
|
171
|
+
background: var(--data-list-item-heading-bg, var(--data-list-heading-bg, var(--container-heading-bg, var(--heading-bg, transparent))));
|
|
172
|
+
max-width: var(--data-list-item-line-width, var(--data-list-line-width, var(--container-line-width, var(--line-width, unset))));
|
|
173
|
+
margin-left: auto;
|
|
174
|
+
margin-right: auto;
|
|
175
|
+
margin-bottom: var(--data-list-item-heading-margin-bottom, var(--data-list-heading-margin-bottom, var(--container-heading-margin-bottom, var(--heading-margin-bottom, 0))));
|
|
176
|
+
margin-top: var(--data-list-item-heading-margin-top, var(--data-list-heading-margin-top, var(--container-heading-margin-top, var(--heading-margin-top, 1.5em))));
|
|
177
|
+
/* Typography */
|
|
178
|
+
font-family: var(--data-list-item-heading-font-family, var(--data-list-heading-font-family, var(--container-heading-font-family, var(--heading-font-family, var(--heading-font-family, inherit)))));
|
|
179
|
+
text-transform: var(--data-list-item-heading-text-transform, var(--data-list-heading-text-transform, var(--container-heading-text-transform, var(--heading-text-transform, var(--heading-text-transform, inherit)))));
|
|
180
|
+
text-decoration: var(--data-list-item-heading-text-decoration, var(--data-list-heading-text-decoration, var(--container-heading-text-decoration, var(--heading-text-decoration, var(--heading-text-decoration, inherit)))));
|
|
181
|
+
font-size: var(--data-list-item-heading-font-size, var(--data-list-heading-font-size, var(--container-heading-font-size, var(--heading-font-size, var(--heading-font-size, inherit)))));
|
|
182
|
+
font-weight: var(--data-list-item-heading-font-weight, var(--data-list-heading-font-weight, var(--container-heading-font-weight, var(--heading-font-weight, var(--heading-font-weight, inherit)))));
|
|
183
|
+
line-height: var(--data-list-item-heading-line-height, var(--data-list-heading-line-height, var(--container-heading-line-height, var(--heading-line-height, var(--heading-line-height, inherit)))));
|
|
184
|
+
letter-spacing: var(--data-list-item-heading-letter-spacing, var(--data-list-heading-letter-spacing, var(--container-heading-letter-spacing, var(--heading-letter-spacing, var(--heading-letter-spacing, inherit)))));
|
|
185
|
+
text-indent: var(--data-list-item-heading-indent, var(--data-list-heading-indent, var(--container-heading-indent, var(--heading-indent, var(--heading-indent, inherit)))));
|
|
186
|
+
font-variant: var(--data-list-item-heading-font-variant, var(--data-list-heading-font-variant, var(--container-heading-font-variant, var(--heading-font-variant, var(--heading-font-variant, inherit)))));
|
|
187
|
+
text-align: var(--data-list-item-heading-text-align, var(--data-list-heading-text-align, var(--container-heading-text-align, var(--heading-text-align, var(--heading-text-align, inherit)))));
|
|
188
|
+
/* font-family: fn.var(--heading-font-family, var(--body-font-family, var(--font-family, inherit)));
|
|
189
|
+
font-size: fn.var(--heading-font-size, inherit);
|
|
190
|
+
font-weight: fn.var(--heading-font-weight, var(--body-font-weight, var(--font-weight, inherit)));
|
|
191
|
+
line-height: fn.var(--heading-line-height, var(--body-line-height, var(--line-height, inherit)));
|
|
192
|
+
letter-spacing: fn.var(--heading-letter-spacing, var(--body-letter-spacing, var(--letter-spacing, inherit)));
|
|
193
|
+
text-indent: fn.var(--heading-indent, var(--body-indent, var(--indent, inherit)));
|
|
194
|
+
font-variant: fn.var(--heading-font-variant, var(--body-font-variant, var(--font-variant, inherit)));
|
|
195
|
+
text-align: fn.var(--heading-text-align, var(--body-text-align, var(--text-align, inherit))); */
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
.data-list-item :global(p) {
|
|
199
|
+
font-family: var(--data-list-item-paragraph-font-family, var(--data-list-paragraph-font-family, var(--container-paragraph-font-family, var(--paragraph-font-family, var(--paragraph-font-family, inherit)))));
|
|
200
|
+
text-transform: var(--data-list-item-paragraph-text-transform, var(--data-list-paragraph-text-transform, var(--container-paragraph-text-transform, var(--paragraph-text-transform, var(--paragraph-text-transform, inherit)))));
|
|
201
|
+
text-decoration: var(--data-list-item-paragraph-text-decoration, var(--data-list-paragraph-text-decoration, var(--container-paragraph-text-decoration, var(--paragraph-text-decoration, var(--paragraph-text-decoration, inherit)))));
|
|
202
|
+
font-size: var(--data-list-item-paragraph-font-size, var(--data-list-paragraph-font-size, var(--container-paragraph-font-size, var(--paragraph-font-size, var(--paragraph-font-size, inherit)))));
|
|
203
|
+
font-weight: var(--data-list-item-paragraph-font-weight, var(--data-list-paragraph-font-weight, var(--container-paragraph-font-weight, var(--paragraph-font-weight, var(--paragraph-font-weight, inherit)))));
|
|
204
|
+
line-height: var(--data-list-item-paragraph-line-height, var(--data-list-paragraph-line-height, var(--container-paragraph-line-height, var(--paragraph-line-height, var(--paragraph-line-height, inherit)))));
|
|
205
|
+
letter-spacing: var(--data-list-item-paragraph-letter-spacing, var(--data-list-paragraph-letter-spacing, var(--container-paragraph-letter-spacing, var(--paragraph-letter-spacing, var(--paragraph-letter-spacing, inherit)))));
|
|
206
|
+
text-indent: var(--data-list-item-paragraph-indent, var(--data-list-paragraph-indent, var(--container-paragraph-indent, var(--paragraph-indent, var(--paragraph-indent, inherit)))));
|
|
207
|
+
font-variant: var(--data-list-item-paragraph-font-variant, var(--data-list-paragraph-font-variant, var(--container-paragraph-font-variant, var(--paragraph-font-variant, var(--paragraph-font-variant, inherit)))));
|
|
208
|
+
text-align: var(--data-list-item-paragraph-text-align, var(--data-list-paragraph-text-align, var(--container-paragraph-text-align, var(--paragraph-text-align, var(--paragraph-text-align, inherit)))));
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
.data-list-item :global(p:first-of-type),
|
|
212
|
+
.data-list-item :global(h1 + p),
|
|
213
|
+
.data-list-item :global(h2 + p),
|
|
214
|
+
.data-list-item :global(h3 + p),
|
|
215
|
+
.data-list-item :global(h4 + p),
|
|
216
|
+
.data-list-item :global(h5 + p),
|
|
217
|
+
.data-list-item :global(h6 + p) {
|
|
218
|
+
font-family: var(--data-list-item-first-paragraph-font-family, var(--data-list-first-paragraph-font-family, var(--container-first-paragraph-font-family, var(--first-paragraph-font-family, var(--first-paragraph-font-family, inherit)))));
|
|
219
|
+
text-transform: var(--data-list-item-first-paragraph-text-transform, var(--data-list-first-paragraph-text-transform, var(--container-first-paragraph-text-transform, var(--first-paragraph-text-transform, var(--first-paragraph-text-transform, inherit)))));
|
|
220
|
+
text-decoration: var(--data-list-item-first-paragraph-text-decoration, var(--data-list-first-paragraph-text-decoration, var(--container-first-paragraph-text-decoration, var(--first-paragraph-text-decoration, var(--first-paragraph-text-decoration, inherit)))));
|
|
221
|
+
font-size: var(--data-list-item-first-paragraph-font-size, var(--data-list-first-paragraph-font-size, var(--container-first-paragraph-font-size, var(--first-paragraph-font-size, var(--first-paragraph-font-size, inherit)))));
|
|
222
|
+
font-weight: var(--data-list-item-first-paragraph-font-weight, var(--data-list-first-paragraph-font-weight, var(--container-first-paragraph-font-weight, var(--first-paragraph-font-weight, var(--first-paragraph-font-weight, inherit)))));
|
|
223
|
+
line-height: var(--data-list-item-first-paragraph-line-height, var(--data-list-first-paragraph-line-height, var(--container-first-paragraph-line-height, var(--first-paragraph-line-height, var(--first-paragraph-line-height, inherit)))));
|
|
224
|
+
letter-spacing: var(--data-list-item-first-paragraph-letter-spacing, var(--data-list-first-paragraph-letter-spacing, var(--container-first-paragraph-letter-spacing, var(--first-paragraph-letter-spacing, var(--first-paragraph-letter-spacing, inherit)))));
|
|
225
|
+
text-indent: var(--data-list-item-first-paragraph-indent, var(--data-list-first-paragraph-indent, var(--container-first-paragraph-indent, var(--first-paragraph-indent, var(--first-paragraph-indent, inherit)))));
|
|
226
|
+
font-variant: var(--data-list-item-first-paragraph-font-variant, var(--data-list-first-paragraph-font-variant, var(--container-first-paragraph-font-variant, var(--first-paragraph-font-variant, var(--first-paragraph-font-variant, inherit)))));
|
|
227
|
+
text-align: var(--data-list-item-first-paragraph-text-align, var(--data-list-first-paragraph-text-align, var(--container-first-paragraph-text-align, var(--first-paragraph-text-align, var(--first-paragraph-text-align, inherit)))));
|
|
228
|
+
font-size: var(--data-list-item-first-paragraph-first-paragraph-font-size, var(--data-list-first-paragraph-first-paragraph-font-size, var(--container-first-paragraph-first-paragraph-font-size, var(--first-paragraph-font-size, var(--data-list-item-paragraph-font-size, var(--data-list-paragraph-font-size, var(--container-paragraph-font-size, var(--paragraph-font-size, var(--data-list-item-font-size, var(--data-list-font-size, var(--container-font-size, var(--font-size, inherit))))))))))));
|
|
229
|
+
line-height: var(--data-list-item-first-paragraph-first-paragraph-line-height, var(--data-list-first-paragraph-first-paragraph-line-height, var(--container-first-paragraph-first-paragraph-line-height, var(--first-paragraph-line-height, var(--data-list-item-paragraph-line-height, var(--data-list-paragraph-line-height, var(--container-paragraph-line-height, var(--paragraph-line-height, var(--data-list-item-line-height, var(--data-list-line-height, var(--container-line-height, var(--line-height, inherit))))))))))));
|
|
230
|
+
margin-block-start: var(--data-list-item-first-paragraph-margin-top, var(--data-list-first-paragraph-margin-top, var(--container-first-paragraph-margin-top, var(--first-paragraph-margin-top, 0))));
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
.data-list-item :global(p:first-of-type::first-line) {
|
|
234
|
+
font-family: var(--first-line-font-family, var(--data-list-item-first-line-font-family, var(--data-list-first-line-font-family, var(--container-first-line-font-family, var(--first-line-font-family, var(--first-line-font-family, inherit))))));
|
|
235
|
+
text-transform: var(--first-line-text-transform, var(--data-list-item-first-line-text-transform, var(--data-list-first-line-text-transform, var(--container-first-line-text-transform, var(--first-line-text-transform, var(--first-line-text-transform, inherit))))));
|
|
236
|
+
text-decoration: var(--first-line-text-decoration, var(--data-list-item-first-line-text-decoration, var(--data-list-first-line-text-decoration, var(--container-first-line-text-decoration, var(--first-line-text-decoration, var(--first-line-text-decoration, inherit))))));
|
|
237
|
+
font-size: var(--first-line-font-size, var(--data-list-item-first-line-font-size, var(--data-list-first-line-font-size, var(--container-first-line-font-size, var(--first-line-font-size, var(--first-line-font-size, inherit))))));
|
|
238
|
+
font-weight: var(--first-line-font-weight, var(--data-list-item-first-line-font-weight, var(--data-list-first-line-font-weight, var(--container-first-line-font-weight, var(--first-line-font-weight, var(--first-line-font-weight, inherit))))));
|
|
239
|
+
line-height: var(--first-line-line-height, var(--data-list-item-first-line-line-height, var(--data-list-first-line-line-height, var(--container-first-line-line-height, var(--first-line-line-height, var(--first-line-line-height, inherit))))));
|
|
240
|
+
letter-spacing: var(--first-line-letter-spacing, var(--data-list-item-first-line-letter-spacing, var(--data-list-first-line-letter-spacing, var(--container-first-line-letter-spacing, var(--first-line-letter-spacing, var(--first-line-letter-spacing, inherit))))));
|
|
241
|
+
text-indent: var(--first-line-indent, var(--data-list-item-first-line-indent, var(--data-list-first-line-indent, var(--container-first-line-indent, var(--first-line-indent, var(--first-line-indent, inherit))))));
|
|
242
|
+
font-variant: var(--first-line-font-variant, var(--data-list-item-first-line-font-variant, var(--data-list-first-line-font-variant, var(--container-first-line-font-variant, var(--first-line-font-variant, var(--first-line-font-variant, inherit))))));
|
|
243
|
+
text-align: var(--first-line-text-align, var(--data-list-item-first-line-text-align, var(--data-list-first-line-text-align, var(--container-first-line-text-align, var(--first-line-text-align, var(--first-line-text-align, inherit))))));
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
.data-list-item :global(p:first-of-type::first-letter) {
|
|
247
|
+
font-family: var(--first-letter-font-family, var(--data-list-item-first-letter-font-family, var(--data-list-first-letter-font-family, var(--container-first-letter-font-family, var(--container-first-letter-font-family, inherit)))));
|
|
248
|
+
text-transform: var(--first-letter-text-transform, var(--data-list-item-first-letter-text-transform, var(--data-list-first-letter-text-transform, var(--container-first-letter-text-transform, var(--container-first-letter-text-transform, inherit)))));
|
|
249
|
+
text-decoration: var(--first-letter-text-decoration, var(--data-list-item-first-letter-text-decoration, var(--data-list-first-letter-text-decoration, var(--container-first-letter-text-decoration, var(--container-first-letter-text-decoration, inherit)))));
|
|
250
|
+
font-size: var(--first-letter-font-size, var(--data-list-item-first-letter-font-size, var(--data-list-first-letter-font-size, var(--container-first-letter-font-size, var(--container-first-letter-font-size, inherit)))));
|
|
251
|
+
font-weight: var(--first-letter-font-weight, var(--data-list-item-first-letter-font-weight, var(--data-list-first-letter-font-weight, var(--container-first-letter-font-weight, var(--container-first-letter-font-weight, inherit)))));
|
|
252
|
+
line-height: var(--first-letter-line-height, var(--data-list-item-first-letter-line-height, var(--data-list-first-letter-line-height, var(--container-first-letter-line-height, var(--container-first-letter-line-height, inherit)))));
|
|
253
|
+
letter-spacing: var(--first-letter-letter-spacing, var(--data-list-item-first-letter-letter-spacing, var(--data-list-first-letter-letter-spacing, var(--container-first-letter-letter-spacing, var(--container-first-letter-letter-spacing, inherit)))));
|
|
254
|
+
text-indent: var(--first-letter-indent, var(--data-list-item-first-letter-indent, var(--data-list-first-letter-indent, var(--container-first-letter-indent, var(--container-first-letter-indent, inherit)))));
|
|
255
|
+
font-variant: var(--first-letter-font-variant, var(--data-list-item-first-letter-font-variant, var(--data-list-first-letter-font-variant, var(--container-first-letter-font-variant, var(--container-first-letter-font-variant, inherit)))));
|
|
256
|
+
text-align: var(--first-letter-text-align, var(--data-list-item-first-letter-text-align, var(--data-list-first-letter-text-align, var(--container-first-letter-text-align, var(--container-first-letter-text-align, inherit)))));
|
|
257
|
+
--link-bg: var(--data-list-item-link-bg, var(--data-list-link-bg, var(--container-link-bg, var(--container-link-bg, inherit))));
|
|
258
|
+
--link-fg: var(--data-list-item-link-fg, var(--data-list-link-fg, var(--container-link-fg, var(--container-link-fg, inherit))));
|
|
259
|
+
background: var(--data-list-item-first-letter-bg, var(--data-list-first-letter-bg, var(--container-first-letter-bg, var(--first-letter-bg, inherit))));
|
|
260
|
+
color: var(--data-list-item-first-letter-fg, var(--data-list-first-letter-fg, var(--container-first-letter-fg, var(--first-letter-fg, inherit))));
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
.data-list-item {
|
|
264
|
+
display: grid;
|
|
265
|
+
grid-template-columns: var(--data-list-item-icon-width, var(--data-list-icon-width, var(--icon-width, var(--data-list-item-icon-size, var(--data-list-icon-size, var(--icon-size, 2.5rem)))))) minmax(0, 1fr) var(--data-list-item-action-width, var(--data-list-action-width, var(--action-width, auto)));
|
|
266
|
+
grid-template-areas: "start main end";
|
|
267
|
+
column-gap: var(--data-list-item-gap, var(--data-list-gap, var(--gap, var(--space))));
|
|
268
|
+
row-gap: var(--data-list-item-row-gap, var(--data-list-row-gap, var(--row-gap, calc(var(--space) / 2))));
|
|
269
|
+
align-items: var(--data-list-item-align, var(--data-list-align, var(--align, center)));
|
|
270
|
+
padding: var(--data-list-item-item-padding, var(--data-list-item-padding, var(--item-padding, var(--padding))));
|
|
271
|
+
min-height: var(--data-list-item-item-min-height, var(--data-list-item-min-height, var(--item-min-height, 4.5rem)));
|
|
272
|
+
border-bottom: var(--data-list-item-item-border, var(--data-list-item-border, var(--item-border, 1px solid var(--border-color, rgba(127, 127, 127, 0.4)))));
|
|
273
|
+
box-sizing: border-box;
|
|
274
|
+
width: 100%;
|
|
275
|
+
max-width: none;
|
|
276
|
+
position: relative;
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
.data-list-item:not(.hasStart) {
|
|
280
|
+
grid-template-columns: minmax(0, 1fr) var(--data-list-item-action-width, var(--data-list-action-width, var(--action-width, auto)));
|
|
281
|
+
grid-template-areas: "main end";
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
.data-list-item:not(.hasEnd) {
|
|
285
|
+
grid-template-columns: var(--data-list-item-icon-width, var(--data-list-icon-width, var(--icon-width, var(--data-list-item-icon-size, var(--data-list-icon-size, var(--icon-size, 2.5rem)))))) minmax(0, 1fr);
|
|
286
|
+
grid-template-areas: "start main";
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
.data-list-item:not(.hasStart):not(.hasEnd) {
|
|
290
|
+
grid-template-columns: minmax(0, 1fr);
|
|
291
|
+
grid-template-areas: "main";
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
.start {
|
|
295
|
+
grid-area: start;
|
|
296
|
+
display: flex;
|
|
297
|
+
align-items: center;
|
|
298
|
+
justify-content: var(--data-list-item-icon-justify, var(--data-list-icon-justify, var(--icon-justify, center)));
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
.start :global(img) {
|
|
302
|
+
width: var(--data-list-item-icon-size, var(--data-list-icon-size, var(--icon-size, 2.5rem)));
|
|
303
|
+
height: var(--data-list-item-icon-size, var(--data-list-icon-size, var(--icon-size, 2.5rem)));
|
|
304
|
+
object-fit: cover;
|
|
305
|
+
border-radius: var(--data-list-item-icon-border-radius, var(--data-list-icon-border-radius, var(--icon-border-radius, var(--data-list-item-icon-radius, var(--data-list-icon-radius, var(--icon-radius, 0.375rem))))));
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
.main :global(h4),
|
|
309
|
+
.main :global(h5) {
|
|
310
|
+
font-size: var(--data-list-item-heading-font-size, var(--data-list-heading-font-size, var(--heading-font-size, var(--data-list-item-title-font-size, var(--data-list-title-font-size, var(--title-font-size, var(--heading-font-size, 1rem)))))));
|
|
311
|
+
font-weight: var(--data-list-item-heading-font-weight, var(--data-list-heading-font-weight, var(--heading-font-weight, var(--data-list-item-title-font-weight, var(--data-list-title-font-weight, var(--title-font-weight, 600))))));
|
|
312
|
+
line-height: var(--data-list-item-heading-line-height, var(--data-list-heading-line-height, var(--heading-line-height, var(--data-list-item-title-line-height, var(--data-list-title-line-height, var(--title-line-height, 1.25))))));
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
.main :global(p),
|
|
316
|
+
.main :global(p:first-of-type),
|
|
317
|
+
.main :global(h1 + p),
|
|
318
|
+
.main :global(h2 + p),
|
|
319
|
+
.main :global(h3 + p),
|
|
320
|
+
.main :global(h4 + p),
|
|
321
|
+
.main :global(h5 + p),
|
|
322
|
+
.main :global(h6 + p) {
|
|
323
|
+
font-size: var(--data-list-item-paragraph-font-size, var(--data-list-paragraph-font-size, var(--paragraph-font-size, var(--data-list-item-body-font-size, var(--data-list-body-font-size, var(--body-font-size, var(--font-size-small, 0.9rem)))))));
|
|
324
|
+
line-height: var(--data-list-item-paragraph-line-height, var(--data-list-paragraph-line-height, var(--paragraph-line-height, var(--data-list-item-body-line-height, var(--data-list-body-line-height, var(--body-line-height, 1.35))))));
|
|
325
|
+
opacity: var(--data-list-item-body-opacity, var(--data-list-body-opacity, var(--body-opacity, 0.9)));
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
.main {
|
|
329
|
+
grid-area: main;
|
|
330
|
+
min-width: 0;
|
|
331
|
+
display: flex;
|
|
332
|
+
flex-direction: column;
|
|
333
|
+
gap: var(--data-list-item-main-gap, var(--data-list-main-gap, var(--main-gap, 0.25em)));
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
.main :global(h1),
|
|
337
|
+
.main :global(h2),
|
|
338
|
+
.main :global(h3),
|
|
339
|
+
.main :global(h4),
|
|
340
|
+
.main :global(h5),
|
|
341
|
+
.main :global(h6),
|
|
342
|
+
.main :global(p) {
|
|
343
|
+
margin: 0;
|
|
344
|
+
max-width: none;
|
|
345
|
+
margin-left: 0;
|
|
346
|
+
margin-right: 0;
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
.end {
|
|
350
|
+
grid-area: end;
|
|
351
|
+
display: flex;
|
|
352
|
+
flex-direction: var(--data-list-item-action-flex-direction, var(--data-list-action-flex-direction, var(--action-flex-direction, row)));
|
|
353
|
+
flex-wrap: var(--data-list-item-action-wrap, var(--data-list-action-wrap, var(--action-wrap, nowrap)));
|
|
354
|
+
align-items: var(--data-list-item-action-align, var(--data-list-action-align, var(--action-align, center)));
|
|
355
|
+
justify-content: var(--data-list-item-action-justify, var(--data-list-action-justify, var(--action-justify, flex-end)));
|
|
356
|
+
gap: var(--data-list-item-action-gap, var(--data-list-action-gap, var(--action-gap, var(--space))));
|
|
357
|
+
min-width: 0;
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
.end :global(button),
|
|
361
|
+
.end :global(.button),
|
|
362
|
+
.end :global(a) {
|
|
363
|
+
margin: var(--data-list-action-control-margin, 0);
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
.data-list-item.isInteractive {
|
|
367
|
+
cursor: var(--data-list-item-cursor, var(--cursor, pointer));
|
|
368
|
+
transition: filter, transform var(--data-list-item-transition, var(--transition, 300ms));
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
.data-list-item.isInteractive:hover {
|
|
372
|
+
filter: var(--data-list-item-hover-filter, var(--hover-filter, brightness(1.05)));
|
|
373
|
+
transform: var(--data-list-item-hover-transform, var(--hover-transform, none));
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
.data-list-item.isInteractive:active {
|
|
377
|
+
filter: var(--data-list-item-active-filter, var(--active-filter, brightness(0.9)));
|
|
378
|
+
transform: var(--data-list-item-active-transform, var(--active-transform, none));
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
.data-list-item.isInteractive:disabled {
|
|
382
|
+
cursor: var(--data-list-item-disabled-cursor, var(--disabled-cursor, not-allowed));
|
|
383
|
+
transform: var(--data-list-item-disabled-transform, var(--disabled-transform, none));
|
|
384
|
+
filter: var(--data-list-item-disabled-filter, var(--disabled-filter, grayscale(0.5)));
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
.data-list-item.isInteractive:focus-visible::before {
|
|
388
|
+
content: "";
|
|
389
|
+
position: absolute;
|
|
390
|
+
inset: 0;
|
|
391
|
+
pointer-events: none;
|
|
392
|
+
z-index: 2;
|
|
393
|
+
outline: var(--focus-color, -webkit-focus-ring-color) auto 1px;
|
|
394
|
+
outline-offset: var(--focus-outline-offset, 2px);
|
|
395
|
+
box-shadow: var(--focus-ring-box-shadow, 0 0 0 3px var(--focus-shadow-color, rgba(100, 150, 250, 0.5)));
|
|
396
|
+
outline-offset: var(--data-list-item-focus-outline-offset, -2px);
|
|
397
|
+
box-shadow: var(--data-list-item-focus-ring-box-shadow, inset 0 0 0 2px var(--focus-shadow-color, rgba(100, 150, 250, 0.5)));
|
|
398
|
+
}
|
|
399
|
+
|
|
400
|
+
.data-list-item.selectable.checked {
|
|
401
|
+
background: var(--data-list-item-selected-bg, var(--data-list-selected-bg, var(--selected-bg, color-mix(in srgb, var(--primary-bg) 15%, transparent))));
|
|
402
|
+
color: var(--data-list-item-selected-fg, var(--data-list-selected-fg, var(--selected-fg, var(--data-list-item-fg, var(--data-list-fg, var(--fg, inherit))))));
|
|
403
|
+
--fg: var-with-fallbacks(
|
|
404
|
+
--selected-fg,
|
|
405
|
+
data-list-item,
|
|
406
|
+
data-list,
|
|
407
|
+
var-with-fallbacks(--fg, data-list-item, data-list, inherit)
|
|
408
|
+
);
|
|
409
|
+
--link-fg: var-with-fallbacks(
|
|
410
|
+
--selected-link-fg,
|
|
411
|
+
data-list-item,
|
|
412
|
+
data-list,
|
|
413
|
+
var-with-fallbacks(
|
|
414
|
+
--selected-fg,
|
|
415
|
+
data-list-item,
|
|
416
|
+
data-list,
|
|
417
|
+
var-with-fallbacks(--link-fg, data-list-item, data-list, inherit)
|
|
418
|
+
)
|
|
419
|
+
);
|
|
420
|
+
--data-list-item-selected-accent: var-with-fallbacks(
|
|
421
|
+
--selection-color,
|
|
422
|
+
data-list-item,
|
|
423
|
+
data-list,
|
|
424
|
+
var(--primary-bg)
|
|
425
|
+
);
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
.data-list-item.selectable.checked::after {
|
|
429
|
+
content: "";
|
|
430
|
+
position: absolute;
|
|
431
|
+
inset: 0;
|
|
432
|
+
z-index: 1;
|
|
433
|
+
border: var(--data-list-item-selected-border, var(--data-list-selected-border, var(--data-list-item-selected-outline, var(--data-list-selected-outline, none))));
|
|
434
|
+
pointer-events: none;
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
.data-list-item.selectable.checked + .data-list-item.selectable.checked::after {
|
|
438
|
+
border-top-width: 0;
|
|
439
|
+
}
|
|
440
|
+
|
|
441
|
+
@container (max-width: 640px) {
|
|
442
|
+
:global(.data-list.stackable) .data-list-item.hasStart.hasEnd {
|
|
443
|
+
grid-template-columns: var(--data-list-item-icon-width, var(--data-list-icon-width, var(--icon-width, var(--data-list-item-icon-size, var(--data-list-icon-size, var(--icon-size, 2.5rem)))))) minmax(0, 1fr);
|
|
444
|
+
grid-template-areas: "start main" "end end";
|
|
445
|
+
}
|
|
446
|
+
:global(.data-list.stackable) .data-list-item.hasStart.hasEnd .end {
|
|
447
|
+
flex-direction: var(--data-list-item-action-compact-flex-direction, var(--data-list-action-compact-flex-direction, var(--action-compact-flex-direction, row)));
|
|
448
|
+
flex-wrap: var(--data-list-item-action-compact-wrap, var(--data-list-action-compact-wrap, var(--action-compact-wrap, wrap)));
|
|
449
|
+
justify-content: var(--data-list-item-action-mobile-justify, var(--data-list-action-mobile-justify, var(--action-mobile-justify, flex-start)));
|
|
450
|
+
padding-inline-start: calc(var(--data-list-item-icon-width, var(--data-list-icon-width, var(--icon-width, var(--data-list-item-icon-size, var(--data-list-icon-size, var(--icon-size, 2.5rem)))))) + var(--data-list-item-gap, var(--data-list-gap, var(--gap, var(--space)))));
|
|
451
|
+
}
|
|
452
|
+
:global(.data-list.stackable) .data-list-item:not(.hasStart).hasEnd {
|
|
453
|
+
grid-template-columns: minmax(0, 1fr);
|
|
454
|
+
grid-template-areas: "main" "end";
|
|
455
|
+
}
|
|
456
|
+
}</style>
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { Snippet } from "svelte";
|
|
2
|
+
import type { HTMLAttributes } from "svelte/elements";
|
|
3
|
+
import type { BaseStyleProps } from "../types";
|
|
4
|
+
type Props = {
|
|
5
|
+
start?: Snippet;
|
|
6
|
+
end?: Snippet;
|
|
7
|
+
children?: Snippet;
|
|
8
|
+
interactive?: boolean;
|
|
9
|
+
selectable?: boolean;
|
|
10
|
+
checked?: boolean;
|
|
11
|
+
tabindex?: number;
|
|
12
|
+
onclick?: ((event: MouseEvent) => void) | null;
|
|
13
|
+
onkeydown?: ((event: KeyboardEvent) => void) | null;
|
|
14
|
+
gap?: string | null;
|
|
15
|
+
rowGap?: string | null;
|
|
16
|
+
mainGap?: string | null;
|
|
17
|
+
itemPadding?: string | null;
|
|
18
|
+
itemMinHeight?: string | null;
|
|
19
|
+
iconWidth?: string | null;
|
|
20
|
+
iconSize?: string | null;
|
|
21
|
+
iconBorderRadius?: string | null;
|
|
22
|
+
actionWidth?: string | null;
|
|
23
|
+
actionFlexDirection?: string | null;
|
|
24
|
+
actionWrap?: string | null;
|
|
25
|
+
actionCompactFlexDirection?: string | null;
|
|
26
|
+
actionCompactWrap?: string | null;
|
|
27
|
+
actionGap?: string | null;
|
|
28
|
+
actionAlign?: string | null;
|
|
29
|
+
actionJustify?: string | null;
|
|
30
|
+
actionMobileJustify?: string | null;
|
|
31
|
+
itemBorder?: string | null;
|
|
32
|
+
selectedBg?: string | null;
|
|
33
|
+
selectedFg?: string | null;
|
|
34
|
+
selectedOutline?: string | null;
|
|
35
|
+
selectedBorder?: string | null;
|
|
36
|
+
selectionColor?: string | null;
|
|
37
|
+
} & BaseStyleProps & HTMLAttributes<HTMLLIElement>;
|
|
38
|
+
declare const DataListItem: import("svelte").Component<Props, {}, "checked">;
|
|
39
|
+
type DataListItem = ReturnType<typeof DataListItem>;
|
|
40
|
+
export default DataListItem;
|
package/dist/layout/Hero.svelte
CHANGED
|
@@ -130,6 +130,8 @@ const style = $derived(injectVars(restProps, "hero", [
|
|
|
130
130
|
text-indent: var(--hero-first-paragraph-indent, var(--container-first-paragraph-indent, var(--first-paragraph-indent, var(--first-paragraph-indent, inherit))));
|
|
131
131
|
font-variant: var(--hero-first-paragraph-font-variant, var(--container-first-paragraph-font-variant, var(--first-paragraph-font-variant, var(--first-paragraph-font-variant, inherit))));
|
|
132
132
|
text-align: var(--hero-first-paragraph-text-align, var(--container-first-paragraph-text-align, var(--first-paragraph-text-align, var(--first-paragraph-text-align, inherit))));
|
|
133
|
+
font-size: var(--hero-first-paragraph-first-paragraph-font-size, var(--container-first-paragraph-first-paragraph-font-size, var(--first-paragraph-font-size, var(--hero-paragraph-font-size, var(--container-paragraph-font-size, var(--paragraph-font-size, var(--hero-font-size, var(--container-font-size, var(--font-size, inherit)))))))));
|
|
134
|
+
line-height: var(--hero-first-paragraph-first-paragraph-line-height, var(--container-first-paragraph-first-paragraph-line-height, var(--first-paragraph-line-height, var(--hero-paragraph-line-height, var(--container-paragraph-line-height, var(--paragraph-line-height, var(--hero-line-height, var(--container-line-height, var(--line-height, inherit)))))))));
|
|
133
135
|
margin-block-start: var(--hero-first-paragraph-margin-top, var(--container-first-paragraph-margin-top, var(--first-paragraph-margin-top, 0)));
|
|
134
136
|
}
|
|
135
137
|
|
|
@@ -41,31 +41,57 @@ const style = $derived(injectVars(restProps, "menu", [
|
|
|
41
41
|
overflow: hidden;
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
.menu :global(li
|
|
45
|
-
.menu :global(li
|
|
44
|
+
.menu :global(li > a),
|
|
45
|
+
.menu :global(li > button),
|
|
46
|
+
.menu :global(li > input[type="submit"]),
|
|
47
|
+
.menu :global(li > .button) {
|
|
48
|
+
width: 100%;
|
|
49
|
+
flex: 1 1 auto;
|
|
50
|
+
box-sizing: border-box;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.menu :global(li.subheader),
|
|
54
|
+
.menu :global(li.interactive),
|
|
55
|
+
.menu :global(li[role="button"]),
|
|
56
|
+
.menu :global(li[tabindex]:not([tabindex="-1"])) {
|
|
46
57
|
cursor: var(--menu-item-cursor, var(--cursor, pointer));
|
|
47
58
|
transition: filter, transform var(--menu-item-transition, var(--transition, 300ms));
|
|
48
59
|
}
|
|
49
60
|
|
|
50
|
-
.menu :global(li
|
|
51
|
-
.menu :global(li
|
|
61
|
+
.menu :global(li.subheader):hover,
|
|
62
|
+
.menu :global(li.interactive):hover,
|
|
63
|
+
.menu :global(li[role="button"]):hover,
|
|
64
|
+
.menu :global(li[tabindex]:not([tabindex="-1"])):hover {
|
|
52
65
|
filter: var(--menu-item-hover-filter, var(--hover-filter, brightness(1.05)));
|
|
53
66
|
transform: var(--menu-item-hover-transform, var(--hover-transform, none));
|
|
54
67
|
}
|
|
55
68
|
|
|
56
|
-
.menu :global(li
|
|
57
|
-
.menu :global(li
|
|
69
|
+
.menu :global(li.subheader):active,
|
|
70
|
+
.menu :global(li.interactive):active,
|
|
71
|
+
.menu :global(li[role="button"]):active,
|
|
72
|
+
.menu :global(li[tabindex]:not([tabindex="-1"])):active {
|
|
58
73
|
filter: var(--menu-item-active-filter, var(--active-filter, brightness(0.9)));
|
|
59
74
|
transform: var(--menu-item-active-transform, var(--active-transform, none));
|
|
60
75
|
}
|
|
61
76
|
|
|
62
|
-
.menu :global(li
|
|
63
|
-
.menu :global(li
|
|
77
|
+
.menu :global(li.subheader):disabled,
|
|
78
|
+
.menu :global(li.interactive):disabled,
|
|
79
|
+
.menu :global(li[role="button"]):disabled,
|
|
80
|
+
.menu :global(li[tabindex]:not([tabindex="-1"])):disabled {
|
|
64
81
|
cursor: var(--menu-item-disabled-cursor, var(--disabled-cursor, not-allowed));
|
|
65
82
|
transform: var(--menu-item-disabled-transform, var(--disabled-transform, none));
|
|
66
83
|
filter: var(--menu-item-disabled-filter, var(--disabled-filter, grayscale(0.5)));
|
|
67
84
|
}
|
|
68
85
|
|
|
86
|
+
.menu :global(li.subheader):focus-visible,
|
|
87
|
+
.menu :global(li.interactive):focus-visible,
|
|
88
|
+
.menu :global(li[role="button"]):focus-visible,
|
|
89
|
+
.menu :global(li[tabindex]:not([tabindex="-1"])):focus-visible {
|
|
90
|
+
outline: var(--focus-color, -webkit-focus-ring-color) auto 1px;
|
|
91
|
+
outline-offset: var(--focus-outline-offset, 2px);
|
|
92
|
+
box-shadow: var(--focus-ring-box-shadow, 0 0 0 3px var(--focus-shadow-color, rgba(100, 150, 250, 0.5)));
|
|
93
|
+
}
|
|
94
|
+
|
|
69
95
|
.menu :global(a), .menu :global(button), .menu :global(input[type="submit"]), .menu :global(.button) {
|
|
70
96
|
display: flex;
|
|
71
97
|
justify-content: var(--menu-item-justify, center);
|
|
@@ -87,12 +113,12 @@ const style = $derived(injectVars(restProps, "menu", [
|
|
|
87
113
|
text-indent: var(--menu-item-indent, var(--button-indent, var(--ui-indent, var(--control-indent, var(--indent, unset)))));
|
|
88
114
|
font-variant: var(--menu-item-font-variant, var(--button-font-variant, var(--ui-font-variant, var(--control-font-variant, var(--font-variant, unset)))));
|
|
89
115
|
text-align: var(--menu-item-text-align, var(--button-text-align, var(--ui-text-align, var(--control-text-align, var(--text-align, unset)))));
|
|
90
|
-
background: var(--menu-item-bg, var(--button-bg, var(--control-bg, var(--bg, unset))));
|
|
91
|
-
color: var(--menu-item-fg, var(--button-fg, var(--control-fg, var(--fg, unset))));
|
|
92
|
-
--link-bg: var(--menu-item-link-bg, var(--button-link-bg, var(--control-link-bg, var(--control-link-bg, inherit))));
|
|
93
|
-
--link-fg: var(--menu-item-link-fg, var(--button-link-fg, var(--control-link-fg, var(--control-link-fg, inherit))));
|
|
94
|
-
--fg: var(--menu-item-fg, var(--button-fg, var(--control-fg, var(--fg, unset))));
|
|
95
|
-
--bg: var(--menu-item-bg, var(--button-bg, var(--control-bg, var(--bg, unset))));
|
|
116
|
+
background: var(--menu-item-bg, var(--menu-bg, var(--button-bg, var(--control-bg, var(--bg, unset)))));
|
|
117
|
+
color: var(--menu-item-fg, var(--menu-fg, var(--button-fg, var(--control-fg, var(--fg, unset)))));
|
|
118
|
+
--link-bg: var(--menu-item-link-bg, var(--menu-link-bg, var(--button-link-bg, var(--control-link-bg, var(--control-link-bg, inherit)))));
|
|
119
|
+
--link-fg: var(--menu-item-link-fg, var(--menu-link-fg, var(--button-link-fg, var(--control-link-fg, var(--control-link-fg, inherit)))));
|
|
120
|
+
--fg: var(--menu-item-fg, var(--menu-fg, var(--button-fg, var(--control-fg, var(--fg, unset)))));
|
|
121
|
+
--bg: var(--menu-item-bg, var(--menu-bg, var(--button-bg, var(--control-bg, var(--bg, unset)))));
|
|
96
122
|
box-sizing: border-box;
|
|
97
123
|
border: var(--menu-item-border, var(--button-border, var(--control-border, var(--border, inherit))));
|
|
98
124
|
border-top: var(--menu-item-border-top, var(--button-border-top, var(--control-border-top, var(--border-top, var(--menu-item-border, var(--button-border, var(--control-border, var(--border, none))))))));
|
|
@@ -101,6 +127,7 @@ const style = $derived(injectVars(restProps, "menu", [
|
|
|
101
127
|
border-left: var(--menu-item-border-left, var(--button-border-left, var(--control-border-left, var(--border-left, var(--menu-item-border, var(--button-border, var(--control-border, var(--border, none))))))));
|
|
102
128
|
padding: var(--menu-item-padding, var(--button-padding, var(--control-padding, var(--padding, 4px))));
|
|
103
129
|
border-radius: var(--menu-item-square-radius, var(--button-square-radius, var(--control-square-radius, var(--square-radius, 0))));
|
|
130
|
+
margin: 0;
|
|
104
131
|
}
|
|
105
132
|
|
|
106
133
|
.menu :global(a):focus-visible, .menu :global(button):focus-visible, .menu :global(input[type="submit"]):focus-visible, .menu :global(.button):focus-visible {
|
|
@@ -110,7 +137,34 @@ const style = $derived(injectVars(restProps, "menu", [
|
|
|
110
137
|
}
|
|
111
138
|
|
|
112
139
|
.menu :global(a), .menu :global(button), .menu :global(input[type="submit"]), .menu :global(.button) {
|
|
113
|
-
|
|
140
|
+
cursor: var(--menu-item-cursor, var(--cursor, pointer));
|
|
141
|
+
transition: filter, transform var(--menu-item-transition, var(--transition, 300ms));
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.menu :global(a):hover, .menu :global(button):hover, .menu :global(input[type="submit"]):hover, .menu :global(.button):hover {
|
|
145
|
+
filter: var(--menu-item-hover-filter, var(--hover-filter, brightness(1.05)));
|
|
146
|
+
transform: var(--menu-item-hover-transform, var(--hover-transform, none));
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
.menu :global(a):active, .menu :global(button):active, .menu :global(input[type="submit"]):active, .menu :global(.button):active {
|
|
150
|
+
filter: var(--menu-item-active-filter, var(--active-filter, brightness(0.9)));
|
|
151
|
+
transform: var(--menu-item-active-transform, var(--active-transform, none));
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.menu :global(a):disabled, .menu :global(button):disabled, .menu :global(input[type="submit"]):disabled, .menu :global(.button):disabled {
|
|
155
|
+
cursor: var(--menu-item-disabled-cursor, var(--disabled-cursor, not-allowed));
|
|
156
|
+
transform: var(--menu-item-disabled-transform, var(--disabled-transform, none));
|
|
157
|
+
filter: var(--menu-item-disabled-filter, var(--disabled-filter, grayscale(0.5)));
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.menu :global(li:hover > a:not(.active)), .menu :global(li:hover > button:not(.active)), .menu :global(li:hover > input[type="submit"]:not(.active)), .menu :global(li:hover > .button:not(.active)) {
|
|
161
|
+
background: var(--menu-item-hover-bg, var(--menu-item-bg, var(--menu-bg, var(--bg, unset))));
|
|
162
|
+
color: var(--menu-item-hover-fg, var(--menu-item-fg, var(--menu-fg, var(--fg, inherit))));
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.menu :global(li:active > a:not(.active)), .menu :global(li:active > button:not(.active)), .menu :global(li:active > input[type="submit"]:not(.active)), .menu :global(li:active > .button:not(.active)) {
|
|
166
|
+
background: var(--menu-item-active-bg, var(--menu-item-bg, var(--menu-bg, var(--bg, unset))));
|
|
167
|
+
color: var(--menu-item-active-fg, var(--menu-item-fg, var(--menu-fg, var(--fg, inherit))));
|
|
114
168
|
}
|
|
115
169
|
|
|
116
170
|
.menu :global(.active) {
|
|
@@ -36,14 +36,30 @@ function setSize(newLeftWidth, newRightWidth) {
|
|
|
36
36
|
// Don't allow too small of widths
|
|
37
37
|
return;
|
|
38
38
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
39
|
+
const containerStyle = getComputedStyle(splitPaneContainer);
|
|
40
|
+
const columnGap = Number.parseFloat(containerStyle.columnGap || "0") || 0;
|
|
41
|
+
const totalGap = columnGap * 2; // 3 columns => 2 gaps
|
|
42
|
+
const resizerWidth = resizerDiv.getBoundingClientRect().width;
|
|
43
|
+
const availableWidth = splitPaneContainer.clientWidth - totalGap;
|
|
44
|
+
const minRequired = resizerWidth + MIN_SIZE * 2;
|
|
45
|
+
if (availableWidth <= minRequired) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (newLeftWidth + newRightWidth + resizerWidth > availableWidth) {
|
|
49
|
+
// Don't allow panes to overflow the available grid track width.
|
|
50
|
+
// Keep the left and shrink the right.
|
|
51
|
+
newRightWidth = availableWidth - newLeftWidth - resizerWidth;
|
|
52
|
+
}
|
|
53
|
+
if (newRightWidth < MIN_SIZE) {
|
|
54
|
+
// If right becomes too small after clamping, keep both panes usable.
|
|
55
|
+
newRightWidth = MIN_SIZE;
|
|
56
|
+
newLeftWidth = availableWidth - resizerWidth - newRightWidth;
|
|
57
|
+
}
|
|
58
|
+
if (newLeftWidth < MIN_SIZE) {
|
|
59
|
+
newLeftWidth = MIN_SIZE;
|
|
60
|
+
newRightWidth = availableWidth - resizerWidth - newLeftWidth;
|
|
45
61
|
}
|
|
46
|
-
resizeStyle = `grid-template-columns: ${newLeftWidth}px
|
|
62
|
+
resizeStyle = `grid-template-columns: ${newLeftWidth}px ${resizerWidth}px ${newRightWidth}px`;
|
|
47
63
|
}
|
|
48
64
|
function onMouseUp() {
|
|
49
65
|
document.removeEventListener("mousemove", onMouseMove);
|
|
@@ -129,6 +145,7 @@ onMount(() => {
|
|
|
129
145
|
container-type: inline-size;
|
|
130
146
|
display: flex;
|
|
131
147
|
flex-direction: column;
|
|
148
|
+
min-width: 0;
|
|
132
149
|
}
|
|
133
150
|
|
|
134
151
|
/* Resizer */
|
package/dist/layout/Table.svelte
CHANGED
|
@@ -297,6 +297,8 @@ table :global(h6 + p) {
|
|
|
297
297
|
text-indent: var(--table-first-paragraph-indent, var(--container-first-paragraph-indent, var(--paragraph-first-paragraph-indent, var(--first-paragraph-indent, var(--first-paragraph-indent, inherit)))));
|
|
298
298
|
font-variant: var(--table-first-paragraph-font-variant, var(--container-first-paragraph-font-variant, var(--paragraph-first-paragraph-font-variant, var(--first-paragraph-font-variant, var(--first-paragraph-font-variant, inherit)))));
|
|
299
299
|
text-align: var(--table-first-paragraph-text-align, var(--container-first-paragraph-text-align, var(--paragraph-first-paragraph-text-align, var(--first-paragraph-text-align, var(--first-paragraph-text-align, inherit)))));
|
|
300
|
+
font-size: var(--table-first-paragraph-first-paragraph-font-size, var(--container-first-paragraph-first-paragraph-font-size, var(--paragraph-first-paragraph-first-paragraph-font-size, var(--first-paragraph-font-size, var(--table-paragraph-font-size, var(--container-paragraph-font-size, var(--paragraph-paragraph-font-size, var(--paragraph-font-size, var(--table-font-size, var(--container-font-size, var(--paragraph-font-size, var(--font-size, inherit))))))))))));
|
|
301
|
+
line-height: var(--table-first-paragraph-first-paragraph-line-height, var(--container-first-paragraph-first-paragraph-line-height, var(--paragraph-first-paragraph-first-paragraph-line-height, var(--first-paragraph-line-height, var(--table-paragraph-line-height, var(--container-paragraph-line-height, var(--paragraph-paragraph-line-height, var(--paragraph-line-height, var(--table-line-height, var(--container-line-height, var(--paragraph-line-height, var(--line-height, inherit))))))))))));
|
|
300
302
|
margin-block-start: var(--table-first-paragraph-margin-top, var(--container-first-paragraph-margin-top, var(--paragraph-first-paragraph-margin-top, var(--first-paragraph-margin-top, 0))));
|
|
301
303
|
}
|
|
302
304
|
|
package/dist/layout/Tile.svelte
CHANGED
|
@@ -158,6 +158,8 @@ export {};
|
|
|
158
158
|
text-indent: var(--tile-first-paragraph-indent, var(--first-paragraph-indent, var(--first-paragraph-indent, inherit)));
|
|
159
159
|
font-variant: var(--tile-first-paragraph-font-variant, var(--first-paragraph-font-variant, var(--first-paragraph-font-variant, inherit)));
|
|
160
160
|
text-align: var(--tile-first-paragraph-text-align, var(--first-paragraph-text-align, var(--first-paragraph-text-align, inherit)));
|
|
161
|
+
font-size: var(--tile-first-paragraph-first-paragraph-font-size, var(--first-paragraph-font-size, var(--tile-paragraph-font-size, var(--paragraph-font-size, var(--tile-font-size, var(--font-size, inherit))))));
|
|
162
|
+
line-height: var(--tile-first-paragraph-first-paragraph-line-height, var(--first-paragraph-line-height, var(--tile-paragraph-line-height, var(--paragraph-line-height, var(--tile-line-height, var(--line-height, inherit))))));
|
|
161
163
|
margin-block-start: var(--tile-first-paragraph-margin-top, var(--first-paragraph-margin-top, 0));
|
|
162
164
|
}
|
|
163
165
|
|
|
@@ -171,6 +171,8 @@ let halfFull = $derived(fillFraction > 0.5);
|
|
|
171
171
|
text-indent: var(--progress-first-paragraph-indent, var(--ui-first-paragraph-indent, var(--first-paragraph-indent, var(--first-paragraph-indent, inherit))));
|
|
172
172
|
font-variant: var(--progress-first-paragraph-font-variant, var(--ui-first-paragraph-font-variant, var(--first-paragraph-font-variant, var(--first-paragraph-font-variant, inherit))));
|
|
173
173
|
text-align: var(--progress-first-paragraph-text-align, var(--ui-first-paragraph-text-align, var(--first-paragraph-text-align, var(--first-paragraph-text-align, inherit))));
|
|
174
|
+
font-size: var(--progress-first-paragraph-first-paragraph-font-size, var(--ui-first-paragraph-first-paragraph-font-size, var(--first-paragraph-font-size, var(--progress-paragraph-font-size, var(--ui-paragraph-font-size, var(--paragraph-font-size, var(--progress-font-size, var(--ui-font-size, var(--font-size, inherit)))))))));
|
|
175
|
+
line-height: var(--progress-first-paragraph-first-paragraph-line-height, var(--ui-first-paragraph-first-paragraph-line-height, var(--first-paragraph-line-height, var(--progress-paragraph-line-height, var(--ui-paragraph-line-height, var(--paragraph-line-height, var(--progress-line-height, var(--ui-line-height, var(--line-height, inherit)))))))));
|
|
174
176
|
margin-block-start: var(--progress-first-paragraph-margin-top, var(--ui-first-paragraph-margin-top, var(--first-paragraph-margin-top, 0)));
|
|
175
177
|
}
|
|
176
178
|
|
|
@@ -237,6 +237,8 @@ function showPopover() {
|
|
|
237
237
|
text-indent: var(--tooltip-first-paragraph-indent, var(--ui-first-paragraph-indent, var(--first-paragraph-indent, var(--first-paragraph-indent, inherit))));
|
|
238
238
|
font-variant: var(--tooltip-first-paragraph-font-variant, var(--ui-first-paragraph-font-variant, var(--first-paragraph-font-variant, var(--first-paragraph-font-variant, inherit))));
|
|
239
239
|
text-align: var(--tooltip-first-paragraph-text-align, var(--ui-first-paragraph-text-align, var(--first-paragraph-text-align, var(--first-paragraph-text-align, inherit))));
|
|
240
|
+
font-size: var(--tooltip-first-paragraph-first-paragraph-font-size, var(--ui-first-paragraph-first-paragraph-font-size, var(--first-paragraph-font-size, var(--tooltip-paragraph-font-size, var(--ui-paragraph-font-size, var(--paragraph-font-size, var(--tooltip-font-size, var(--ui-font-size, var(--font-size, inherit)))))))));
|
|
241
|
+
line-height: var(--tooltip-first-paragraph-first-paragraph-line-height, var(--ui-first-paragraph-first-paragraph-line-height, var(--first-paragraph-line-height, var(--tooltip-paragraph-line-height, var(--ui-paragraph-line-height, var(--paragraph-line-height, var(--tooltip-line-height, var(--ui-line-height, var(--line-height, inherit)))))))));
|
|
240
242
|
margin-block-start: var(--tooltip-first-paragraph-margin-top, var(--ui-first-paragraph-margin-top, var(--first-paragraph-margin-top, 0)));
|
|
241
243
|
}
|
|
242
244
|
|
|
@@ -120,6 +120,29 @@
|
|
|
120
120
|
@include typography-props-bare(
|
|
121
121
|
append(map-prefixes(first-paragraph, $prefixes), first-paragraph)...
|
|
122
122
|
);
|
|
123
|
+
font-size: fn.var-with-fallbacks(
|
|
124
|
+
--first-paragraph-font-size,
|
|
125
|
+
append(
|
|
126
|
+
map-prefixes(first-paragraph, $prefixes),
|
|
127
|
+
fn.var-with-fallbacks(
|
|
128
|
+
--paragraph-font-size,
|
|
129
|
+
append($prefixes, fn.var-with-fallbacks(--font-size, append($prefixes, inherit)...))...
|
|
130
|
+
)
|
|
131
|
+
)...
|
|
132
|
+
);
|
|
133
|
+
line-height: fn.var-with-fallbacks(
|
|
134
|
+
--first-paragraph-line-height,
|
|
135
|
+
append(
|
|
136
|
+
map-prefixes(first-paragraph, $prefixes),
|
|
137
|
+
fn.var-with-fallbacks(
|
|
138
|
+
--paragraph-line-height,
|
|
139
|
+
append(
|
|
140
|
+
$prefixes,
|
|
141
|
+
fn.var-with-fallbacks(--line-height, append($prefixes, inherit)...)
|
|
142
|
+
)...
|
|
143
|
+
)
|
|
144
|
+
)...
|
|
145
|
+
);
|
|
123
146
|
margin-block-start: fn.var-with-fallbacks(
|
|
124
147
|
--first-paragraph-margin-top,
|
|
125
148
|
append($prefixes, 0)...
|
|
@@ -109,6 +109,8 @@ div :global(h6 + p) {
|
|
|
109
109
|
text-indent: var(--body-first-paragraph-indent, var(--text-first-paragraph-indent, var(--first-paragraph-indent, var(--first-paragraph-indent, inherit))));
|
|
110
110
|
font-variant: var(--body-first-paragraph-font-variant, var(--text-first-paragraph-font-variant, var(--first-paragraph-font-variant, var(--first-paragraph-font-variant, inherit))));
|
|
111
111
|
text-align: var(--body-first-paragraph-text-align, var(--text-first-paragraph-text-align, var(--first-paragraph-text-align, var(--first-paragraph-text-align, inherit))));
|
|
112
|
+
font-size: var(--body-first-paragraph-first-paragraph-font-size, var(--text-first-paragraph-first-paragraph-font-size, var(--first-paragraph-font-size, var(--body-paragraph-font-size, var(--text-paragraph-font-size, var(--paragraph-font-size, var(--body-font-size, var(--text-font-size, var(--font-size, inherit)))))))));
|
|
113
|
+
line-height: var(--body-first-paragraph-first-paragraph-line-height, var(--text-first-paragraph-first-paragraph-line-height, var(--first-paragraph-line-height, var(--body-paragraph-line-height, var(--text-paragraph-line-height, var(--paragraph-line-height, var(--body-line-height, var(--text-line-height, var(--line-height, inherit)))))))));
|
|
112
114
|
margin-block-start: var(--body-first-paragraph-margin-top, var(--text-first-paragraph-margin-top, var(--first-paragraph-margin-top, 0)));
|
|
113
115
|
}
|
|
114
116
|
|
|
@@ -9,6 +9,14 @@
|
|
|
9
9
|
/* --button-hover-filter: var(--hover-filter); */
|
|
10
10
|
--menu-hover-filter: var(--hover-filter);
|
|
11
11
|
--menu-hover-transform: var(--hover-transform);
|
|
12
|
+
/* Menu items are often on light backgrounds; brighten can look invisible there. */
|
|
13
|
+
--menu-item-hover-filter: brightness(0.95)
|
|
14
|
+
drop-shadow(
|
|
15
|
+
var(--space) var(--space) var(--shadow-blur) var(--shadow-color)
|
|
16
|
+
);
|
|
17
|
+
/* Default menu items to the menu surface so row-wide filters read clearly. */
|
|
18
|
+
--menu-item-bg: var(--menu-bg, var(--bg));
|
|
19
|
+
--menu-item-active-filter: brightness(0.92);
|
|
12
20
|
/* --button-hover-transform: var(var(--button-hover-transform));
|
|
13
21
|
--button-hover-filter: var(var(--button-hover-filter)); */
|
|
14
22
|
--transition: 300ms;
|
package/dist/vars/defaults.css
CHANGED
|
@@ -18,6 +18,10 @@
|
|
|
18
18
|
--first-heading-padding: 0;
|
|
19
19
|
--paragraph-padding: 0;
|
|
20
20
|
--paragraph-margin-top: 1em;
|
|
21
|
+
|
|
22
|
+
/* DataList defaults: denser than global heading/paragraph text */
|
|
23
|
+
--data-list-heading-font-size: var(--font-size);
|
|
24
|
+
--data-list-paragraph-font-size: var(--font-size-small);
|
|
21
25
|
}
|
|
22
26
|
:root {
|
|
23
27
|
--white: #fff;
|
|
@@ -400,6 +404,14 @@ a {
|
|
|
400
404
|
/* --button-hover-filter: var(--hover-filter); */
|
|
401
405
|
--menu-hover-filter: var(--hover-filter);
|
|
402
406
|
--menu-hover-transform: var(--hover-transform);
|
|
407
|
+
/* Menu items are often on light backgrounds; brighten can look invisible there. */
|
|
408
|
+
--menu-item-hover-filter: brightness(0.95)
|
|
409
|
+
drop-shadow(
|
|
410
|
+
var(--space) var(--space) var(--shadow-blur) var(--shadow-color)
|
|
411
|
+
);
|
|
412
|
+
/* Default menu items to the menu surface so row-wide filters read clearly. */
|
|
413
|
+
--menu-item-bg: var(--menu-bg, var(--bg));
|
|
414
|
+
--menu-item-active-filter: brightness(0.92);
|
|
403
415
|
/* --button-hover-transform: var(var(--button-hover-transform));
|
|
404
416
|
--button-hover-filter: var(var(--button-hover-filter)); */
|
|
405
417
|
--transition: 300ms;
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
--sidebar-fg: var(--material-color-grey-900);
|
|
10
10
|
|
|
11
11
|
--menu-fg: var(--material-color-grey-900);
|
|
12
|
+
--menu-bg: var(--material-color-grey-100);
|
|
12
13
|
--primary-bg: var(--material-color-blue-500);
|
|
13
14
|
--primary-fg: var(--material-color-grey-100);
|
|
14
15
|
--secondary-bg: var(--material-color-grey-400);
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
--container-fg: var(--material-color-blue-grey-800);
|
|
12
12
|
--sidebar-bg: var(--material-color-blue-grey-50);
|
|
13
13
|
--sidebar-fg: var(--material-color-blue-grey-900);
|
|
14
|
-
|
|
15
|
-
--menu-fg: var(--material-color-blue-grey-900);
|
|
14
|
+
--menu-bg: var(--material-color-blue-grey-50);
|
|
15
|
+
--menu-fg: var(--material-color-blue-grey-900);
|
|
16
16
|
--primary-bg: var(--material-color-blue-700);
|
|
17
17
|
--primary-fg: var(--material-color-blue-grey-50);
|
|
18
18
|
--secondary-bg: var(--material-color-blue-grey-100);
|
|
@@ -80,8 +80,8 @@
|
|
|
80
80
|
--container-fg: var(--material-color-blue-grey-50);
|
|
81
81
|
--sidebar-bg: var(--material-color-blue-grey-900);
|
|
82
82
|
--sidebar-fg: var(--material-color-blue-grey-50);
|
|
83
|
-
|
|
84
|
-
--menu-fg: var(--material-color-blue-grey-50);
|
|
83
|
+
--menu-bg: var(--material-color-blue-grey-900);
|
|
84
|
+
--menu-fg: var(--material-color-blue-grey-50);
|
|
85
85
|
--primary-bg: var(--material-color-light-blue-100);
|
|
86
86
|
--primary-fg: var(--material-color-blue-grey-800);
|
|
87
87
|
--warning-fg: var(--white);
|
|
@@ -101,7 +101,8 @@
|
|
|
101
101
|
--input-fg: var(--material-color-blue-grey-50);
|
|
102
102
|
--button-bg: var(--material-color-blue-grey-800);
|
|
103
103
|
--button-fg: var(--material-color-blue-grey-50);
|
|
104
|
-
--hover-filter: brightness(1.
|
|
104
|
+
--hover-filter: brightness(1.15);
|
|
105
|
+
--menu-item-hover-filter: brightness(1.25);
|
|
105
106
|
/* Code Block */
|
|
106
107
|
--code-bg: var(--material-color-blue-grey-800); /* Darker background */
|
|
107
108
|
--code-fg: var(--material-color-blue-grey-100); /* Lighter text */
|
package/dist/vars/typography.css
CHANGED
|
@@ -18,4 +18,8 @@
|
|
|
18
18
|
--first-heading-padding: 0;
|
|
19
19
|
--paragraph-padding: 0;
|
|
20
20
|
--paragraph-margin-top: 1em;
|
|
21
|
+
|
|
22
|
+
/* DataList defaults: denser than global heading/paragraph text */
|
|
23
|
+
--data-list-heading-font-size: var(--font-size);
|
|
24
|
+
--data-list-paragraph-font-size: var(--font-size-small);
|
|
21
25
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "contain-css-svelte",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"dev": "vite dev",
|
|
6
6
|
"build-css": "postcss src/lib/vars/defaults.css -o dist/vars/defaults.css",
|
|
@@ -18,7 +18,8 @@
|
|
|
18
18
|
".": {
|
|
19
19
|
"types": "./dist/index.d.ts",
|
|
20
20
|
"svelte": "./dist/index.js",
|
|
21
|
-
"css": "./dist/vars/defaults.css"
|
|
21
|
+
"css": "./dist/vars/defaults.css",
|
|
22
|
+
"default": "./dist/index.js"
|
|
22
23
|
},
|
|
23
24
|
"./vars/*": "./dist/vars/*",
|
|
24
25
|
"./themes/*": "./dist/vars/themes/*",
|