m3-svelte 3.6.1 → 4.0.0-beta.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/package/buttons/Button.svelte +142 -78
- package/package/buttons/Button.svelte.d.ts +17 -34
- package/package/buttons/ConnectedButtons.svelte +26 -0
- package/package/buttons/ConnectedButtons.svelte.d.ts +8 -0
- package/package/buttons/FAB.svelte +30 -15
- package/package/buttons/FAB.svelte.d.ts +14 -25
- package/package/containers/BottomSheet.svelte +33 -27
- package/package/containers/BottomSheet.svelte.d.ts +7 -21
- package/package/containers/Card.svelte +45 -14
- package/package/containers/Card.svelte.d.ts +10 -30
- package/package/containers/Dialog.svelte +46 -32
- package/package/containers/Dialog.svelte.d.ts +9 -34
- package/package/containers/ListItem.svelte +78 -14
- package/package/containers/ListItem.svelte.d.ts +14 -25
- package/package/containers/Menu.svelte +6 -3
- package/package/containers/Menu.svelte.d.ts +6 -28
- package/package/containers/MenuItem.svelte +15 -5
- package/package/containers/MenuItem.svelte.d.ts +7 -29
- package/package/containers/Snackbar.svelte +35 -37
- package/package/containers/Snackbar.svelte.d.ts +7 -22
- package/package/containers/SnackbarItem.svelte +6 -6
- package/package/containers/SnackbarItem.svelte.d.ts +6 -29
- package/package/containers/StandardSideSheet.svelte +14 -8
- package/package/containers/StandardSideSheet.svelte.d.ts +7 -30
- package/package/forms/Checkbox.svelte +19 -4
- package/package/forms/Checkbox.svelte.d.ts +6 -29
- package/package/forms/Chip.svelte +41 -29
- package/package/forms/Chip.svelte.d.ts +18 -41
- package/package/forms/CircularProgress.svelte +4 -6
- package/package/forms/CircularProgress.svelte.d.ts +4 -20
- package/package/forms/CircularProgressIndeterminate.svelte +3 -4
- package/package/forms/CircularProgressIndeterminate.svelte.d.ts +2 -20
- package/package/forms/DatePickerDocked.svelte +52 -35
- package/package/forms/DatePickerDocked.svelte.d.ts +6 -22
- package/package/forms/LinearProgress.svelte +10 -5
- package/package/forms/LinearProgress.svelte.d.ts +4 -20
- package/package/forms/LinearProgressIndeterminate.svelte +4 -3
- package/package/forms/LinearProgressIndeterminate.svelte.d.ts +2 -20
- package/package/forms/RadioAnim1.svelte +10 -4
- package/package/forms/RadioAnim1.svelte.d.ts +6 -29
- package/package/forms/RadioAnim2.svelte +10 -4
- package/package/forms/RadioAnim2.svelte.d.ts +6 -29
- package/package/forms/RadioAnim3.svelte +10 -4
- package/package/forms/RadioAnim3.svelte.d.ts +6 -29
- package/package/forms/Slider.svelte +32 -26
- package/package/forms/Slider.svelte.d.ts +5 -21
- package/package/forms/SliderTicks.svelte +40 -33
- package/package/forms/SliderTicks.svelte.d.ts +5 -21
- package/package/forms/Switch.svelte +23 -21
- package/package/forms/Switch.svelte.d.ts +5 -22
- package/package/forms/TextField.svelte +36 -19
- package/package/forms/TextField.svelte.d.ts +14 -27
- package/package/forms/TextFieldMultiline.svelte +21 -21
- package/package/forms/TextFieldMultiline.svelte.d.ts +6 -23
- package/package/forms/TextFieldOutlined.svelte +36 -18
- package/package/forms/TextFieldOutlined.svelte.d.ts +14 -26
- package/package/forms/TextFieldOutlinedMultiline.svelte +21 -21
- package/package/forms/TextFieldOutlinedMultiline.svelte.d.ts +6 -23
- package/package/forms/_picker/Actions.svelte +16 -18
- package/package/forms/_picker/Actions.svelte.d.ts +7 -22
- package/package/forms/_picker/CalendarPicker.svelte +14 -4
- package/package/forms/_picker/CalendarPicker.svelte.d.ts +4 -18
- package/package/forms/_picker/FocusPicker.svelte +8 -9
- package/package/forms/_picker/FocusPicker.svelte.d.ts +5 -21
- package/package/forms/_picker/Header.svelte +20 -9
- package/package/forms/_picker/Header.svelte.d.ts +4 -18
- package/package/forms/_picker/Item.svelte +15 -6
- package/package/forms/_picker/Item.svelte.d.ts +8 -23
- package/package/index.d.ts +3 -9
- package/package/index.js +1 -8
- package/package/misc/Layer.svelte +7 -3
- package/package/misc/Layer.svelte.d.ts +5 -17
- package/package/misc/StyleFromScheme.svelte +6 -2
- package/package/misc/StyleFromScheme.svelte.d.ts +5 -19
- package/package/misc/_icon.svelte +12 -5
- package/package/misc/_icon.svelte.d.ts +5 -19
- package/package/misc/_ripple.svelte +11 -3
- package/package/misc/_ripple.svelte.d.ts +5 -17
- package/package/misc/_ripplesimple.svelte +4 -0
- package/package/misc/_ripplesimple.svelte.d.ts +5 -25
- package/package/misc/_styling.svelte +7 -3
- package/package/misc/_styling.svelte.d.ts +5 -19
- package/package/misc/animation.js +1 -5
- package/package/misc/easing.js +1 -28
- package/package/misc/styles.css +135 -107
- package/package/misc/utils.d.ts +1 -0
- package/package/misc/utils.js +5 -0
- package/package/nav/NavDrawer.svelte +9 -5
- package/package/nav/NavDrawer.svelte.d.ts +6 -30
- package/package/nav/NavDrawerButton.svelte +22 -12
- package/package/nav/NavDrawerButton.svelte.d.ts +8 -31
- package/package/nav/NavDrawerLink.svelte +21 -12
- package/package/nav/NavDrawerLink.svelte.d.ts +8 -30
- package/package/nav/NavList.svelte +13 -9
- package/package/nav/NavList.svelte.d.ts +7 -31
- package/package/nav/NavListButton.svelte +26 -22
- package/package/nav/NavListButton.svelte.d.ts +9 -33
- package/package/nav/NavListLink.svelte +26 -23
- package/package/nav/NavListLink.svelte.d.ts +9 -32
- package/package/nav/Tabs.svelte +20 -19
- package/package/nav/Tabs.svelte.d.ts +5 -22
- package/package/nav/TabsLink.svelte +22 -18
- package/package/nav/TabsLink.svelte.d.ts +5 -22
- package/package/nav/VariableTabs.svelte +25 -20
- package/package/nav/VariableTabs.svelte.d.ts +5 -22
- package/package/nav/VariableTabsLink.svelte +29 -22
- package/package/nav/VariableTabsLink.svelte.d.ts +5 -22
- package/package/utils/ChipChooser.svelte +10 -4
- package/package/utils/ChipChooser.svelte.d.ts +5 -19
- package/package/utils/DateField.svelte +24 -18
- package/package/utils/DateField.svelte.d.ts +4 -19
- package/package/utils/Divider.svelte +5 -1
- package/package/utils/Divider.svelte.d.ts +4 -18
- package/package.json +44 -43
- package/package/buttons/ButtonLink.svelte +0 -116
- package/package/buttons/ButtonLink.svelte.d.ts +0 -34
- package/package/buttons/SegmentedButtonContainer.svelte +0 -27
- package/package/buttons/SegmentedButtonContainer.svelte.d.ts +0 -31
- package/package/buttons/SegmentedButtonItem.svelte +0 -119
- package/package/buttons/SegmentedButtonItem.svelte.d.ts +0 -34
- package/package/containers/CardClickable.svelte +0 -78
- package/package/containers/CardClickable.svelte.d.ts +0 -34
- package/package/containers/ListItemButton.svelte +0 -86
- package/package/containers/ListItemButton.svelte.d.ts +0 -31
- package/package/containers/ListItemLabel.svelte +0 -82
- package/package/containers/ListItemLabel.svelte.d.ts +0 -29
- package/package/containers/SnackbarAnim.svelte +0 -127
- package/package/containers/SnackbarAnim.svelte.d.ts +0 -33
- package/package/forms/CheckboxAnim.svelte +0 -116
- package/package/forms/CheckboxAnim.svelte.d.ts +0 -31
|
@@ -1,32 +1,35 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { IconifyIcon } from "@iconify/types";
|
|
3
|
-
import type {
|
|
3
|
+
import type { HTMLAnchorAttributes } from "svelte/elements";
|
|
4
4
|
import Icon from "../misc/_icon.svelte";
|
|
5
5
|
import Layer from "../misc/Layer.svelte";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
6
|
+
|
|
7
|
+
let {
|
|
8
|
+
secondary = false,
|
|
9
|
+
tab,
|
|
10
|
+
items,
|
|
11
|
+
...extra
|
|
12
|
+
}: {
|
|
13
|
+
secondary?: boolean;
|
|
14
|
+
tab: string;
|
|
15
|
+
items: {
|
|
16
|
+
icon?: IconifyIcon;
|
|
17
|
+
name: string;
|
|
18
|
+
value: string;
|
|
19
|
+
href: string;
|
|
20
|
+
}[];
|
|
21
|
+
} & HTMLAnchorAttributes = $props();
|
|
17
22
|
</script>
|
|
18
23
|
|
|
19
24
|
<div
|
|
20
25
|
class="m3-container"
|
|
21
26
|
class:primary={!secondary}
|
|
22
|
-
style=
|
|
23
|
-
|
|
24
|
-
)};"
|
|
25
|
-
{...extraWrapperOptions}
|
|
27
|
+
style:--items={items.length}
|
|
28
|
+
style:--i={items.findIndex((i) => i.value == tab)}
|
|
26
29
|
>
|
|
27
30
|
<div class="divider"></div>
|
|
28
31
|
{#each items as item}
|
|
29
|
-
<a href={item.href} class:tall={item.icon} class:selected={item.value == tab} {...
|
|
32
|
+
<a href={item.href} class:tall={item.icon} class:selected={item.value == tab} {...extra}>
|
|
30
33
|
<Layer />
|
|
31
34
|
{#if item.icon}
|
|
32
35
|
<Icon icon={item.icon} />
|
|
@@ -39,13 +42,14 @@
|
|
|
39
42
|
|
|
40
43
|
<style>
|
|
41
44
|
.m3-container {
|
|
45
|
+
display: flex;
|
|
42
46
|
position: relative;
|
|
43
47
|
background-color: rgb(var(--m3-scheme-surface));
|
|
44
48
|
}
|
|
45
49
|
.divider {
|
|
46
50
|
position: absolute;
|
|
47
51
|
inset: auto 0 0 0;
|
|
48
|
-
height:
|
|
52
|
+
height: 1px;
|
|
49
53
|
background-color: rgb(var(--m3-scheme-surface-container-highest));
|
|
50
54
|
}
|
|
51
55
|
a {
|
|
@@ -1,22 +1,6 @@
|
|
|
1
1
|
import type { IconifyIcon } from "@iconify/types";
|
|
2
|
-
import type {
|
|
3
|
-
|
|
4
|
-
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
5
|
-
$$bindings?: Bindings;
|
|
6
|
-
} & Exports;
|
|
7
|
-
(internal: unknown, props: Props & {
|
|
8
|
-
$$events?: Events;
|
|
9
|
-
$$slots?: Slots;
|
|
10
|
-
}): Exports & {
|
|
11
|
-
$set?: any;
|
|
12
|
-
$on?: any;
|
|
13
|
-
};
|
|
14
|
-
z_$$bindings?: Bindings;
|
|
15
|
-
}
|
|
16
|
-
declare const TabsLink: $$__sveltets_2_IsomorphicComponent<{
|
|
17
|
-
display?: string;
|
|
18
|
-
extraWrapperOptions?: HTMLAttributes<HTMLDivElement>;
|
|
19
|
-
extraOptions?: HTMLAnchorAttributes;
|
|
2
|
+
import type { HTMLAnchorAttributes } from "svelte/elements";
|
|
3
|
+
type $$ComponentProps = {
|
|
20
4
|
secondary?: boolean;
|
|
21
5
|
tab: string;
|
|
22
6
|
items: {
|
|
@@ -25,8 +9,7 @@ declare const TabsLink: $$__sveltets_2_IsomorphicComponent<{
|
|
|
25
9
|
value: string;
|
|
26
10
|
href: string;
|
|
27
11
|
}[];
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
type TabsLink = InstanceType<typeof TabsLink>;
|
|
12
|
+
} & HTMLAnchorAttributes;
|
|
13
|
+
declare const TabsLink: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
14
|
+
type TabsLink = ReturnType<typeof TabsLink>;
|
|
32
15
|
export default TabsLink;
|
|
@@ -1,27 +1,33 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { IconifyIcon } from "@iconify/types";
|
|
3
|
-
import type {
|
|
3
|
+
import type { HTMLInputAttributes } from "svelte/elements";
|
|
4
4
|
import Icon from "../misc/_icon.svelte";
|
|
5
5
|
import Layer from "../misc/Layer.svelte";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
6
|
+
|
|
7
|
+
let {
|
|
8
|
+
secondary = false,
|
|
9
|
+
tab = $bindable(),
|
|
10
|
+
items,
|
|
11
|
+
...extra
|
|
12
|
+
}: {
|
|
13
|
+
secondary?: boolean;
|
|
14
|
+
tab: string;
|
|
15
|
+
items: {
|
|
16
|
+
icon?: IconifyIcon;
|
|
17
|
+
name: string;
|
|
18
|
+
value: string;
|
|
19
|
+
}[];
|
|
20
|
+
} & HTMLInputAttributes = $props();
|
|
16
21
|
|
|
17
22
|
const name = crypto.randomUUID();
|
|
23
|
+
let wrapper: HTMLDivElement | undefined = $state();
|
|
18
24
|
const handleInput = (e: Event & { currentTarget: EventTarget & HTMLInputElement }) => {
|
|
19
25
|
const before = tab;
|
|
20
26
|
const after = e.currentTarget.value;
|
|
21
|
-
const beforeE = wrapper
|
|
22
|
-
const afterE = wrapper
|
|
27
|
+
const beforeE = wrapper!.querySelector(`input[value="${before}"] + label`) as HTMLInputElement;
|
|
28
|
+
const afterE = wrapper!.querySelector(`input[value="${after}"] + label`) as HTMLInputElement;
|
|
23
29
|
|
|
24
|
-
const bar = wrapper
|
|
30
|
+
const bar = wrapper!.querySelector(".bar") as HTMLDivElement;
|
|
25
31
|
const beforeX = beforeE.offsetLeft + 0.5 * beforeE.offsetWidth;
|
|
26
32
|
const afterX = afterE.offsetLeft + 0.5 * afterE.offsetWidth;
|
|
27
33
|
const deltaX = afterX - beforeX;
|
|
@@ -59,15 +65,13 @@
|
|
|
59
65
|
);
|
|
60
66
|
}
|
|
61
67
|
};
|
|
62
|
-
let wrapper: HTMLDivElement;
|
|
63
68
|
</script>
|
|
64
69
|
|
|
65
70
|
<div
|
|
66
71
|
class="m3-container"
|
|
67
72
|
class:primary={!secondary}
|
|
68
|
-
style=
|
|
73
|
+
style:--items={items.length}
|
|
69
74
|
bind:this={wrapper}
|
|
70
|
-
{...extraWrapperOptions}
|
|
71
75
|
>
|
|
72
76
|
<div class="divider"></div>
|
|
73
77
|
{#each items as item}
|
|
@@ -78,8 +82,8 @@
|
|
|
78
82
|
{id}
|
|
79
83
|
value={item.value}
|
|
80
84
|
bind:group={tab}
|
|
81
|
-
|
|
82
|
-
{...
|
|
85
|
+
oninput={handleInput}
|
|
86
|
+
{...extra}
|
|
83
87
|
/>
|
|
84
88
|
<label for={id} class:tall={item.icon}>
|
|
85
89
|
<Layer />
|
|
@@ -94,6 +98,7 @@
|
|
|
94
98
|
|
|
95
99
|
<style>
|
|
96
100
|
.m3-container {
|
|
101
|
+
display: grid;
|
|
97
102
|
position: relative;
|
|
98
103
|
background-color: rgb(var(--m3-scheme-surface));
|
|
99
104
|
grid-template-columns: repeat(var(--items), auto);
|
|
@@ -109,7 +114,7 @@
|
|
|
109
114
|
.divider {
|
|
110
115
|
position: absolute;
|
|
111
116
|
inset: auto 0 0 0;
|
|
112
|
-
height:
|
|
117
|
+
height: 1px;
|
|
113
118
|
background-color: rgb(var(--m3-scheme-surface-container-highest));
|
|
114
119
|
}
|
|
115
120
|
label {
|
|
@@ -1,22 +1,6 @@
|
|
|
1
1
|
import type { IconifyIcon } from "@iconify/types";
|
|
2
|
-
import type {
|
|
3
|
-
|
|
4
|
-
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
5
|
-
$$bindings?: Bindings;
|
|
6
|
-
} & Exports;
|
|
7
|
-
(internal: unknown, props: Props & {
|
|
8
|
-
$$events?: Events;
|
|
9
|
-
$$slots?: Slots;
|
|
10
|
-
}): Exports & {
|
|
11
|
-
$set?: any;
|
|
12
|
-
$on?: any;
|
|
13
|
-
};
|
|
14
|
-
z_$$bindings?: Bindings;
|
|
15
|
-
}
|
|
16
|
-
declare const VariableTabs: $$__sveltets_2_IsomorphicComponent<{
|
|
17
|
-
display?: string;
|
|
18
|
-
extraWrapperOptions?: HTMLAttributes<HTMLDivElement>;
|
|
19
|
-
extraOptions?: HTMLInputAttributes;
|
|
2
|
+
import type { HTMLInputAttributes } from "svelte/elements";
|
|
3
|
+
type $$ComponentProps = {
|
|
20
4
|
secondary?: boolean;
|
|
21
5
|
tab: string;
|
|
22
6
|
items: {
|
|
@@ -24,8 +8,7 @@ declare const VariableTabs: $$__sveltets_2_IsomorphicComponent<{
|
|
|
24
8
|
name: string;
|
|
25
9
|
value: string;
|
|
26
10
|
}[];
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
type VariableTabs = InstanceType<typeof VariableTabs>;
|
|
11
|
+
} & HTMLInputAttributes;
|
|
12
|
+
declare const VariableTabs: import("svelte").Component<$$ComponentProps, {}, "tab">;
|
|
13
|
+
type VariableTabs = ReturnType<typeof VariableTabs>;
|
|
31
14
|
export default VariableTabs;
|
|
@@ -1,22 +1,30 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { IconifyIcon } from "@iconify/types";
|
|
3
|
-
import type {
|
|
3
|
+
import type { HTMLAnchorAttributes } from "svelte/elements";
|
|
4
4
|
import Icon from "../misc/_icon.svelte";
|
|
5
5
|
import Layer from "../misc/Layer.svelte";
|
|
6
|
-
export let display = "grid";
|
|
7
|
-
export let extraWrapperOptions: HTMLAttributes<HTMLDivElement> = {};
|
|
8
|
-
export let extraOptions: HTMLAnchorAttributes = {};
|
|
9
|
-
export let secondary = false;
|
|
10
|
-
export let tab: string;
|
|
11
|
-
export let items: {
|
|
12
|
-
icon?: IconifyIcon;
|
|
13
|
-
name: string;
|
|
14
|
-
value: string;
|
|
15
|
-
href: string;
|
|
16
|
-
}[];
|
|
17
6
|
|
|
18
|
-
let
|
|
19
|
-
|
|
7
|
+
let {
|
|
8
|
+
secondary = false,
|
|
9
|
+
tab,
|
|
10
|
+
items,
|
|
11
|
+
...extra
|
|
12
|
+
}: {
|
|
13
|
+
secondary?: boolean;
|
|
14
|
+
tab: string;
|
|
15
|
+
items: {
|
|
16
|
+
icon?: IconifyIcon;
|
|
17
|
+
name: string;
|
|
18
|
+
value: string;
|
|
19
|
+
href: string;
|
|
20
|
+
}[];
|
|
21
|
+
} & HTMLAnchorAttributes = $props();
|
|
22
|
+
|
|
23
|
+
let prevTab = $state(tab);
|
|
24
|
+
let wrapper: HTMLDivElement | undefined = $state();
|
|
25
|
+
$effect(() => {
|
|
26
|
+
if (!wrapper) return;
|
|
27
|
+
|
|
20
28
|
const before = prevTab;
|
|
21
29
|
const after = tab;
|
|
22
30
|
const beforeI = items.findIndex((i) => i.value == before) + 1;
|
|
@@ -63,16 +71,14 @@
|
|
|
63
71
|
}
|
|
64
72
|
|
|
65
73
|
prevTab = tab;
|
|
66
|
-
}
|
|
67
|
-
let wrapper: HTMLDivElement;
|
|
74
|
+
});
|
|
68
75
|
</script>
|
|
69
76
|
|
|
70
77
|
<div
|
|
71
78
|
class="m3-container"
|
|
72
79
|
class:primary={!secondary}
|
|
73
|
-
style=
|
|
80
|
+
style:--items={items.length}
|
|
74
81
|
bind:this={wrapper}
|
|
75
|
-
{...extraWrapperOptions}
|
|
76
82
|
>
|
|
77
83
|
<div class="divider"></div>
|
|
78
84
|
{#each items as item, i}
|
|
@@ -80,8 +86,8 @@
|
|
|
80
86
|
href={item.href}
|
|
81
87
|
class:tall={item.icon}
|
|
82
88
|
class:selected={item.value == tab}
|
|
83
|
-
style
|
|
84
|
-
{...
|
|
89
|
+
style:grid-column={i + 1}
|
|
90
|
+
{...extra}
|
|
85
91
|
>
|
|
86
92
|
<Layer />
|
|
87
93
|
{#if item.icon}
|
|
@@ -95,9 +101,10 @@
|
|
|
95
101
|
|
|
96
102
|
<style>
|
|
97
103
|
.m3-container {
|
|
104
|
+
display: grid;
|
|
105
|
+
grid-template-columns: repeat(var(--items), auto);
|
|
98
106
|
position: relative;
|
|
99
107
|
background-color: rgb(var(--m3-scheme-surface));
|
|
100
|
-
grid-template-columns: repeat(var(--items), auto);
|
|
101
108
|
padding-inline: 1rem;
|
|
102
109
|
justify-content: start;
|
|
103
110
|
overflow-x: auto;
|
|
@@ -105,7 +112,7 @@
|
|
|
105
112
|
.divider {
|
|
106
113
|
position: absolute;
|
|
107
114
|
inset: auto 0 0 0;
|
|
108
|
-
height:
|
|
115
|
+
height: 1px;
|
|
109
116
|
background-color: rgb(var(--m3-scheme-surface-container-highest));
|
|
110
117
|
}
|
|
111
118
|
a {
|
|
@@ -1,22 +1,6 @@
|
|
|
1
1
|
import type { IconifyIcon } from "@iconify/types";
|
|
2
|
-
import type {
|
|
3
|
-
|
|
4
|
-
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
5
|
-
$$bindings?: Bindings;
|
|
6
|
-
} & Exports;
|
|
7
|
-
(internal: unknown, props: Props & {
|
|
8
|
-
$$events?: Events;
|
|
9
|
-
$$slots?: Slots;
|
|
10
|
-
}): Exports & {
|
|
11
|
-
$set?: any;
|
|
12
|
-
$on?: any;
|
|
13
|
-
};
|
|
14
|
-
z_$$bindings?: Bindings;
|
|
15
|
-
}
|
|
16
|
-
declare const VariableTabsLink: $$__sveltets_2_IsomorphicComponent<{
|
|
17
|
-
display?: string;
|
|
18
|
-
extraWrapperOptions?: HTMLAttributes<HTMLDivElement>;
|
|
19
|
-
extraOptions?: HTMLAnchorAttributes;
|
|
2
|
+
import type { HTMLAnchorAttributes } from "svelte/elements";
|
|
3
|
+
type $$ComponentProps = {
|
|
20
4
|
secondary?: boolean;
|
|
21
5
|
tab: string;
|
|
22
6
|
items: {
|
|
@@ -25,8 +9,7 @@ declare const VariableTabsLink: $$__sveltets_2_IsomorphicComponent<{
|
|
|
25
9
|
value: string;
|
|
26
10
|
href: string;
|
|
27
11
|
}[];
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
type VariableTabsLink = InstanceType<typeof VariableTabsLink>;
|
|
12
|
+
} & HTMLAnchorAttributes;
|
|
13
|
+
declare const VariableTabsLink: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
14
|
+
type VariableTabsLink = ReturnType<typeof VariableTabsLink>;
|
|
32
15
|
export default VariableTabsLink;
|
|
@@ -1,17 +1,23 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import Chip from "../forms/Chip.svelte";
|
|
3
3
|
import type { IconifyIcon } from "@iconify/types";
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
|
|
5
|
+
let {
|
|
6
|
+
options,
|
|
7
|
+
chosenOptions,
|
|
8
|
+
}: {
|
|
9
|
+
options: { label: string; value: string; icon?: IconifyIcon }[];
|
|
10
|
+
chosenOptions: string[];
|
|
11
|
+
} = $props();
|
|
6
12
|
</script>
|
|
7
13
|
|
|
8
14
|
<div class="m3-container">
|
|
9
15
|
{#each options as option}
|
|
10
16
|
<Chip
|
|
11
17
|
{...option}
|
|
12
|
-
|
|
18
|
+
variant="input"
|
|
13
19
|
selected={chosenOptions.includes(option.value)}
|
|
14
|
-
|
|
20
|
+
click={() =>
|
|
15
21
|
chosenOptions.includes(option.value)
|
|
16
22
|
? (chosenOptions = chosenOptions.filter((o) => o != option.value))
|
|
17
23
|
: (chosenOptions = [...chosenOptions, option.value])}
|
|
@@ -1,26 +1,12 @@
|
|
|
1
1
|
import type { IconifyIcon } from "@iconify/types";
|
|
2
|
-
|
|
3
|
-
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
4
|
-
$$bindings?: Bindings;
|
|
5
|
-
} & Exports;
|
|
6
|
-
(internal: unknown, props: Props & {
|
|
7
|
-
$$events?: Events;
|
|
8
|
-
$$slots?: Slots;
|
|
9
|
-
}): Exports & {
|
|
10
|
-
$set?: any;
|
|
11
|
-
$on?: any;
|
|
12
|
-
};
|
|
13
|
-
z_$$bindings?: Bindings;
|
|
14
|
-
}
|
|
15
|
-
declare const ChipChooser: $$__sveltets_2_IsomorphicComponent<{
|
|
2
|
+
type $$ComponentProps = {
|
|
16
3
|
options: {
|
|
17
4
|
label: string;
|
|
18
5
|
value: string;
|
|
19
6
|
icon?: IconifyIcon;
|
|
20
7
|
}[];
|
|
21
|
-
chosenOptions
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
type ChipChooser = InstanceType<typeof ChipChooser>;
|
|
8
|
+
chosenOptions: string[];
|
|
9
|
+
};
|
|
10
|
+
declare const ChipChooser: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
11
|
+
type ChipChooser = ReturnType<typeof ChipChooser>;
|
|
26
12
|
export default ChipChooser;
|
|
@@ -8,21 +8,27 @@
|
|
|
8
8
|
import DatePickerDocked from "../forms/DatePickerDocked.svelte";
|
|
9
9
|
import { easeEmphasized } from "../misc/easing";
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
let {
|
|
12
|
+
name,
|
|
13
|
+
date = $bindable(""),
|
|
14
|
+
required = false,
|
|
15
|
+
disabled = false,
|
|
16
|
+
...extra
|
|
17
|
+
}: {
|
|
18
|
+
name: string;
|
|
19
|
+
date?: string;
|
|
20
|
+
required?: boolean;
|
|
21
|
+
disabled?: boolean;
|
|
22
|
+
} & HTMLInputAttributes = $props();
|
|
16
23
|
|
|
17
24
|
const id = crypto.randomUUID();
|
|
18
|
-
let hasJs = false;
|
|
25
|
+
let hasJs = $state(false);
|
|
19
26
|
onMount(() => {
|
|
20
27
|
hasJs = true;
|
|
21
28
|
});
|
|
22
29
|
|
|
23
|
-
let picker = false;
|
|
24
|
-
|
|
25
|
-
const clickOutside = (_node: Node) => {
|
|
30
|
+
let picker = $state(false);
|
|
31
|
+
const clickOutside = (container: Node) => {
|
|
26
32
|
const handleClick = (event: Event) => {
|
|
27
33
|
if (!container.contains(event.target as Node)) {
|
|
28
34
|
picker = false;
|
|
@@ -35,7 +41,7 @@
|
|
|
35
41
|
},
|
|
36
42
|
};
|
|
37
43
|
};
|
|
38
|
-
const enterExit = (
|
|
44
|
+
const enterExit = (_: Node): TransitionConfig => {
|
|
39
45
|
return {
|
|
40
46
|
duration: 400,
|
|
41
47
|
easing: easeEmphasized,
|
|
@@ -47,7 +53,7 @@ opacity: ${Math.min(t * 3, 1)};`,
|
|
|
47
53
|
};
|
|
48
54
|
</script>
|
|
49
55
|
|
|
50
|
-
<div class="m3-container" class:has-js={hasJs} class:disabled
|
|
56
|
+
<div class="m3-container" class:has-js={hasJs} class:disabled use:clickOutside>
|
|
51
57
|
<input
|
|
52
58
|
type="date"
|
|
53
59
|
class="m3-font-body-large"
|
|
@@ -55,19 +61,19 @@ opacity: ${Math.min(t * 3, 1)};`,
|
|
|
55
61
|
{required}
|
|
56
62
|
{id}
|
|
57
63
|
bind:value={date}
|
|
58
|
-
{...
|
|
64
|
+
{...extra}
|
|
59
65
|
/>
|
|
60
66
|
<label class="m3-font-body-small" for={id}>{name}</label>
|
|
61
|
-
<button type="button" {disabled}
|
|
67
|
+
<button type="button" {disabled} onclick={() => (picker = !picker)}>
|
|
62
68
|
<Icon icon={iconCalendar} />
|
|
63
69
|
</button>
|
|
64
70
|
{#if picker}
|
|
65
|
-
<div class="picker"
|
|
71
|
+
<div class="picker" transition:enterExit>
|
|
66
72
|
<DatePickerDocked
|
|
73
|
+
{date}
|
|
67
74
|
clearable={!required}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
on:setDate={(e) => (date = e.detail)}
|
|
75
|
+
close={() => (picker = false)}
|
|
76
|
+
setDate={(d) => (date = d)}
|
|
71
77
|
/>
|
|
72
78
|
</div>
|
|
73
79
|
{/if}
|
|
@@ -83,7 +89,7 @@ opacity: ${Math.min(t * 3, 1)};`,
|
|
|
83
89
|
min-width: 15rem;
|
|
84
90
|
background-color: rgb(var(--m3-scheme-surface-container-highest));
|
|
85
91
|
border-radius: var(--m3-datefield-shape) var(--m3-datefield-shape) 0 0;
|
|
86
|
-
border-bottom: solid
|
|
92
|
+
border-bottom: solid 1px rgb(var(--m3-scheme-on-surface-variant));
|
|
87
93
|
}
|
|
88
94
|
input {
|
|
89
95
|
position: absolute;
|
|
@@ -1,25 +1,10 @@
|
|
|
1
1
|
import type { HTMLInputAttributes } from "svelte/elements";
|
|
2
|
-
|
|
3
|
-
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
4
|
-
$$bindings?: Bindings;
|
|
5
|
-
} & Exports;
|
|
6
|
-
(internal: unknown, props: Props & {
|
|
7
|
-
$$events?: Events;
|
|
8
|
-
$$slots?: Slots;
|
|
9
|
-
}): Exports & {
|
|
10
|
-
$set?: any;
|
|
11
|
-
$on?: any;
|
|
12
|
-
};
|
|
13
|
-
z_$$bindings?: Bindings;
|
|
14
|
-
}
|
|
15
|
-
declare const DateField: $$__sveltets_2_IsomorphicComponent<{
|
|
2
|
+
type $$ComponentProps = {
|
|
16
3
|
name: string;
|
|
17
4
|
date?: string;
|
|
18
5
|
required?: boolean;
|
|
19
6
|
disabled?: boolean;
|
|
20
|
-
|
|
21
|
-
},
|
|
22
|
-
|
|
23
|
-
}, {}, {}, string>;
|
|
24
|
-
type DateField = InstanceType<typeof DateField>;
|
|
7
|
+
} & HTMLInputAttributes;
|
|
8
|
+
declare const DateField: import("svelte").Component<$$ComponentProps, {}, "date">;
|
|
9
|
+
type DateField = ReturnType<typeof DateField>;
|
|
25
10
|
export default DateField;
|
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
3
|
-
$$bindings?: Bindings;
|
|
4
|
-
} & Exports;
|
|
5
|
-
(internal: unknown, props: Props & {
|
|
6
|
-
$$events?: Events;
|
|
7
|
-
$$slots?: Slots;
|
|
8
|
-
}): Exports & {
|
|
9
|
-
$set?: any;
|
|
10
|
-
$on?: any;
|
|
11
|
-
};
|
|
12
|
-
z_$$bindings?: Bindings;
|
|
13
|
-
}
|
|
14
|
-
declare const Divider: $$__sveltets_2_IsomorphicComponent<{
|
|
1
|
+
type $$ComponentProps = {
|
|
15
2
|
inset?: boolean;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
type Divider = InstanceType<typeof Divider>;
|
|
3
|
+
};
|
|
4
|
+
declare const Divider: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
5
|
+
type Divider = ReturnType<typeof Divider>;
|
|
20
6
|
export default Divider;
|