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,22 +1,4 @@
|
|
|
1
1
|
import type { HTMLAttributes } from "svelte/elements";
|
|
2
|
-
|
|
3
|
-
|
|
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 CircularProgressIndeterminate: $$__sveltets_2_IsomorphicComponent<{
|
|
16
|
-
display?: string;
|
|
17
|
-
extraOptions?: HTMLAttributes<SVGElement>;
|
|
18
|
-
}, {
|
|
19
|
-
[evt: string]: CustomEvent<any>;
|
|
20
|
-
}, {}, {}, string>;
|
|
21
|
-
type CircularProgressIndeterminate = InstanceType<typeof CircularProgressIndeterminate>;
|
|
2
|
+
declare const CircularProgressIndeterminate: import("svelte").Component<HTMLAttributes<SVGElement>, {}, "">;
|
|
3
|
+
type CircularProgressIndeterminate = ReturnType<typeof CircularProgressIndeterminate>;
|
|
22
4
|
export default CircularProgressIndeterminate;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
|
-
import { createEventDispatcher } from "svelte";
|
|
3
2
|
import Actions from "./_picker/Actions.svelte";
|
|
4
3
|
import CalendarPicker from "./_picker/CalendarPicker.svelte";
|
|
5
4
|
import FocusPicker from "./_picker/FocusPicker.svelte";
|
|
@@ -7,59 +6,76 @@
|
|
|
7
6
|
|
|
8
7
|
const now = new Date();
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
focusedYear = parseInt(date.slice(0, 4)) || now.getFullYear(),
|
|
9
|
+
let {
|
|
10
|
+
date = "",
|
|
11
|
+
clearable,
|
|
12
|
+
focusedMonth = $bindable(parseInt(date.slice(5, 7)) - 1 || now.getMonth()),
|
|
13
|
+
focusedYear = $bindable(parseInt(date.slice(0, 4)) || now.getFullYear()),
|
|
15
14
|
startYear = now.getFullYear() - 50,
|
|
16
|
-
endYear = now.getFullYear() + 10
|
|
17
|
-
|
|
15
|
+
endYear = now.getFullYear() + 10,
|
|
16
|
+
dateValidator = (_date: string) => true,
|
|
17
|
+
close,
|
|
18
|
+
setDate,
|
|
19
|
+
}: {
|
|
20
|
+
date?: string;
|
|
21
|
+
clearable: boolean;
|
|
22
|
+
focusedMonth?: number;
|
|
23
|
+
focusedYear?: number;
|
|
24
|
+
startYear?: number;
|
|
25
|
+
endYear?: number;
|
|
26
|
+
dateValidator?: (date: string) => boolean;
|
|
27
|
+
close: () => void;
|
|
28
|
+
setDate: (date: string) => void;
|
|
29
|
+
} = $props();
|
|
18
30
|
|
|
19
|
-
let currentView: "calendar" | "year" | "month" = "calendar"
|
|
20
|
-
|
|
21
|
-
|
|
31
|
+
let currentView: "calendar" | "year" | "month" = $state("calendar");
|
|
32
|
+
let chosenDate = $state(date);
|
|
33
|
+
$effect(() => {
|
|
34
|
+
chosenDate = date;
|
|
35
|
+
});
|
|
22
36
|
|
|
23
37
|
const getLongMonth = (month: number) =>
|
|
24
38
|
new Date(0, month).toLocaleDateString(undefined, { month: "long" });
|
|
25
|
-
const dispatch = createEventDispatcher();
|
|
26
39
|
</script>
|
|
27
40
|
|
|
28
|
-
<div class="m3-container"
|
|
41
|
+
<div class="m3-container">
|
|
29
42
|
<Header bind:currentView bind:focusedMonth bind:focusedYear {startYear} {endYear} />
|
|
30
43
|
{#if currentView == "calendar"}
|
|
31
44
|
<CalendarPicker {focusedMonth} {focusedYear} {dateValidator} bind:chosenDate />
|
|
32
45
|
<Actions
|
|
33
46
|
{clearable}
|
|
34
47
|
chosenDate={Boolean(chosenDate)}
|
|
35
|
-
|
|
36
|
-
|
|
48
|
+
clear={() => (chosenDate = "")}
|
|
49
|
+
cancel={() => {
|
|
37
50
|
chosenDate = date;
|
|
38
|
-
|
|
51
|
+
close();
|
|
39
52
|
}}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
53
|
+
ok={() => {
|
|
54
|
+
setDate(chosenDate);
|
|
55
|
+
close();
|
|
43
56
|
}}
|
|
44
57
|
/>
|
|
58
|
+
{:else if currentView == "month"}
|
|
59
|
+
<FocusPicker
|
|
60
|
+
options={Array.from({ length: 12 }, (_, i) => ({
|
|
61
|
+
name: getLongMonth(i),
|
|
62
|
+
selected: i == focusedMonth,
|
|
63
|
+
activate: () => {
|
|
64
|
+
focusedMonth = i;
|
|
65
|
+
currentView = "calendar";
|
|
66
|
+
},
|
|
67
|
+
}))}
|
|
68
|
+
/>
|
|
45
69
|
{:else}
|
|
46
70
|
<FocusPicker
|
|
47
|
-
options={
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
name: (startYear + i + 1).toString(),
|
|
56
|
-
selected: startYear + i + 1 == focusedYear,
|
|
57
|
-
}))}
|
|
58
|
-
on:chosen={(e) => {
|
|
59
|
-
if (currentView == "month") focusedMonth = e.detail;
|
|
60
|
-
else focusedYear = e.detail;
|
|
61
|
-
currentView = "calendar";
|
|
62
|
-
}}
|
|
71
|
+
options={Array.from({ length: endYear - startYear }, (_, i) => ({
|
|
72
|
+
name: (startYear + i + 1).toString(),
|
|
73
|
+
selected: startYear + i + 1 == focusedYear,
|
|
74
|
+
activate: () => {
|
|
75
|
+
focusedYear = startYear + i + 1;
|
|
76
|
+
currentView = "calendar";
|
|
77
|
+
},
|
|
78
|
+
}))}
|
|
63
79
|
/>
|
|
64
80
|
{/if}
|
|
65
81
|
</div>
|
|
@@ -70,6 +86,7 @@
|
|
|
70
86
|
}
|
|
71
87
|
|
|
72
88
|
.m3-container {
|
|
89
|
+
display: flex;
|
|
73
90
|
position: relative;
|
|
74
91
|
overflow: hidden;
|
|
75
92
|
flex-direction: column;
|
|
@@ -1,18 +1,4 @@
|
|
|
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 DatePickerDocked: $$__sveltets_2_IsomorphicComponent<{
|
|
15
|
-
display?: string;
|
|
1
|
+
type $$ComponentProps = {
|
|
16
2
|
date?: string;
|
|
17
3
|
clearable: boolean;
|
|
18
4
|
focusedMonth?: number;
|
|
@@ -20,11 +6,9 @@ declare const DatePickerDocked: $$__sveltets_2_IsomorphicComponent<{
|
|
|
20
6
|
startYear?: number;
|
|
21
7
|
endYear?: number;
|
|
22
8
|
dateValidator?: (date: string) => boolean;
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
}, {}, {}, string>;
|
|
29
|
-
type DatePickerDocked = InstanceType<typeof DatePickerDocked>;
|
|
9
|
+
close: () => void;
|
|
10
|
+
setDate: (date: string) => void;
|
|
11
|
+
};
|
|
12
|
+
declare const DatePickerDocked: import("svelte").Component<$$ComponentProps, {}, "focusedMonth" | "focusedYear">;
|
|
13
|
+
type DatePickerDocked = ReturnType<typeof DatePickerDocked>;
|
|
30
14
|
export default DatePickerDocked;
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { HTMLAttributes } from "svelte/elements";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
|
|
4
|
+
let {
|
|
5
|
+
percent,
|
|
6
|
+
...extra
|
|
7
|
+
}: {
|
|
8
|
+
percent: number;
|
|
9
|
+
} & HTMLAttributes<HTMLDivElement> = $props();
|
|
6
10
|
</script>
|
|
7
11
|
|
|
8
|
-
<div class="m3-container"
|
|
9
|
-
<div class="percent" style="
|
|
12
|
+
<div class="m3-container" role="progressbar" {...extra}>
|
|
13
|
+
<div class="percent" style:width="{percent}%"></div>
|
|
10
14
|
</div>
|
|
11
15
|
|
|
12
16
|
<style>
|
|
@@ -14,6 +18,7 @@
|
|
|
14
18
|
--m3-linear-progress-shape: var(--m3-util-rounding-full);
|
|
15
19
|
}
|
|
16
20
|
.m3-container {
|
|
21
|
+
display: inline-flex;
|
|
17
22
|
background-color: rgb(var(--m3-scheme-primary-container));
|
|
18
23
|
height: 0.25rem;
|
|
19
24
|
min-width: 8rem;
|
|
@@ -1,23 +1,7 @@
|
|
|
1
1
|
import type { HTMLAttributes } 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 LinearProgress: $$__sveltets_2_IsomorphicComponent<{
|
|
16
|
-
display?: string;
|
|
17
|
-
extraOptions?: HTMLAttributes<HTMLDivElement>;
|
|
2
|
+
type $$ComponentProps = {
|
|
18
3
|
percent: number;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
type LinearProgress = InstanceType<typeof LinearProgress>;
|
|
4
|
+
} & HTMLAttributes<HTMLDivElement>;
|
|
5
|
+
declare const LinearProgress: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
6
|
+
type LinearProgress = ReturnType<typeof LinearProgress>;
|
|
23
7
|
export default LinearProgress;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { HTMLAttributes } from "svelte/elements";
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
|
|
4
|
+
let extra: HTMLAttributes<HTMLDivElement> = $props();
|
|
5
5
|
</script>
|
|
6
6
|
|
|
7
|
-
<div class="m3-container"
|
|
7
|
+
<div class="m3-container" role="progressbar" {...extra}>
|
|
8
8
|
<div class="percent"></div>
|
|
9
9
|
</div>
|
|
10
10
|
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
--m3-linear-progress-shape: var(--m3-util-rounding-full);
|
|
14
14
|
}
|
|
15
15
|
.m3-container {
|
|
16
|
+
display: inline-flex;
|
|
16
17
|
background-color: rgb(var(--m3-scheme-primary-container));
|
|
17
18
|
height: 0.25rem;
|
|
18
19
|
min-width: 8rem;
|
|
@@ -1,22 +1,4 @@
|
|
|
1
1
|
import type { HTMLAttributes } from "svelte/elements";
|
|
2
|
-
|
|
3
|
-
|
|
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 LinearProgressIndeterminate: $$__sveltets_2_IsomorphicComponent<{
|
|
16
|
-
display?: string;
|
|
17
|
-
extraOptions?: HTMLAttributes<HTMLDivElement>;
|
|
18
|
-
}, {
|
|
19
|
-
[evt: string]: CustomEvent<any>;
|
|
20
|
-
}, {}, {}, string>;
|
|
21
|
-
type LinearProgressIndeterminate = InstanceType<typeof LinearProgressIndeterminate>;
|
|
2
|
+
declare const LinearProgressIndeterminate: import("svelte").Component<HTMLAttributes<HTMLDivElement>, {}, "">;
|
|
3
|
+
type LinearProgressIndeterminate = ReturnType<typeof LinearProgressIndeterminate>;
|
|
22
4
|
export default LinearProgressIndeterminate;
|
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
|
+
import type { Snippet } from "svelte";
|
|
2
3
|
import type { HTMLAttributes } from "svelte/elements";
|
|
3
4
|
import Layer from "../misc/Layer.svelte";
|
|
4
5
|
|
|
5
|
-
export let display = "inline-flex";
|
|
6
|
-
export let extraOptions: HTMLAttributes<HTMLDivElement> = {};
|
|
7
6
|
// MUST BE WRAPPED IN A <label>
|
|
7
|
+
let {
|
|
8
|
+
children,
|
|
9
|
+
...extra
|
|
10
|
+
}: {
|
|
11
|
+
children: Snippet;
|
|
12
|
+
} & HTMLAttributes<HTMLDivElement> = $props();
|
|
8
13
|
</script>
|
|
9
14
|
|
|
10
|
-
<div class="m3-container"
|
|
11
|
-
|
|
15
|
+
<div class="m3-container" {...extra}>
|
|
16
|
+
{@render children()}
|
|
12
17
|
<div class="layer-container">
|
|
13
18
|
<Layer />
|
|
14
19
|
<div class="radio-circle"></div>
|
|
@@ -18,6 +23,7 @@
|
|
|
18
23
|
|
|
19
24
|
<style>
|
|
20
25
|
.m3-container {
|
|
26
|
+
display: inline-flex;
|
|
21
27
|
position: relative;
|
|
22
28
|
width: 1.25rem;
|
|
23
29
|
height: 1.25rem;
|
|
@@ -1,31 +1,8 @@
|
|
|
1
|
+
import type { Snippet } from "svelte";
|
|
1
2
|
import type { HTMLAttributes } from "svelte/elements";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
$$events?: Events;
|
|
8
|
-
$$slots?: Slots;
|
|
9
|
-
}): Exports & {
|
|
10
|
-
$set?: any;
|
|
11
|
-
$on?: any;
|
|
12
|
-
};
|
|
13
|
-
z_$$bindings?: Bindings;
|
|
14
|
-
}
|
|
15
|
-
type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
|
|
16
|
-
default: any;
|
|
17
|
-
} ? Props extends Record<string, never> ? any : {
|
|
18
|
-
children?: any;
|
|
19
|
-
} : {});
|
|
20
|
-
declare const RadioAnim1: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
|
|
21
|
-
display?: string;
|
|
22
|
-
extraOptions?: HTMLAttributes<HTMLDivElement>;
|
|
23
|
-
}, {
|
|
24
|
-
default: {};
|
|
25
|
-
}>, {
|
|
26
|
-
[evt: string]: CustomEvent<any>;
|
|
27
|
-
}, {
|
|
28
|
-
default: {};
|
|
29
|
-
}, {}, string>;
|
|
30
|
-
type RadioAnim1 = InstanceType<typeof RadioAnim1>;
|
|
3
|
+
type $$ComponentProps = {
|
|
4
|
+
children: Snippet;
|
|
5
|
+
} & HTMLAttributes<HTMLDivElement>;
|
|
6
|
+
declare const RadioAnim1: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
7
|
+
type RadioAnim1 = ReturnType<typeof RadioAnim1>;
|
|
31
8
|
export default RadioAnim1;
|
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
|
+
import type { Snippet } from "svelte";
|
|
2
3
|
import type { HTMLAttributes } from "svelte/elements";
|
|
3
4
|
import Layer from "../misc/Layer.svelte";
|
|
4
5
|
|
|
5
|
-
export let display = "inline-flex";
|
|
6
|
-
export let extraOptions: HTMLAttributes<HTMLDivElement> = {};
|
|
7
6
|
// MUST BE WRAPPED IN A <label>
|
|
7
|
+
let {
|
|
8
|
+
children,
|
|
9
|
+
...extra
|
|
10
|
+
}: {
|
|
11
|
+
children: Snippet;
|
|
12
|
+
} & HTMLAttributes<HTMLDivElement> = $props();
|
|
8
13
|
</script>
|
|
9
14
|
|
|
10
|
-
<div class="m3-container"
|
|
11
|
-
|
|
15
|
+
<div class="m3-container" {...extra}>
|
|
16
|
+
{@render children()}
|
|
12
17
|
<div class="layer-container">
|
|
13
18
|
<Layer />
|
|
14
19
|
<div class="radio-circle"></div>
|
|
@@ -18,6 +23,7 @@
|
|
|
18
23
|
|
|
19
24
|
<style>
|
|
20
25
|
.m3-container {
|
|
26
|
+
display: inline-flex;
|
|
21
27
|
position: relative;
|
|
22
28
|
width: 1.25rem;
|
|
23
29
|
height: 1.25rem;
|
|
@@ -1,31 +1,8 @@
|
|
|
1
|
+
import type { Snippet } from "svelte";
|
|
1
2
|
import type { HTMLAttributes } from "svelte/elements";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
$$events?: Events;
|
|
8
|
-
$$slots?: Slots;
|
|
9
|
-
}): Exports & {
|
|
10
|
-
$set?: any;
|
|
11
|
-
$on?: any;
|
|
12
|
-
};
|
|
13
|
-
z_$$bindings?: Bindings;
|
|
14
|
-
}
|
|
15
|
-
type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
|
|
16
|
-
default: any;
|
|
17
|
-
} ? Props extends Record<string, never> ? any : {
|
|
18
|
-
children?: any;
|
|
19
|
-
} : {});
|
|
20
|
-
declare const RadioAnim2: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
|
|
21
|
-
display?: string;
|
|
22
|
-
extraOptions?: HTMLAttributes<HTMLDivElement>;
|
|
23
|
-
}, {
|
|
24
|
-
default: {};
|
|
25
|
-
}>, {
|
|
26
|
-
[evt: string]: CustomEvent<any>;
|
|
27
|
-
}, {
|
|
28
|
-
default: {};
|
|
29
|
-
}, {}, string>;
|
|
30
|
-
type RadioAnim2 = InstanceType<typeof RadioAnim2>;
|
|
3
|
+
type $$ComponentProps = {
|
|
4
|
+
children: Snippet;
|
|
5
|
+
} & HTMLAttributes<HTMLDivElement>;
|
|
6
|
+
declare const RadioAnim2: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
7
|
+
type RadioAnim2 = ReturnType<typeof RadioAnim2>;
|
|
31
8
|
export default RadioAnim2;
|
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
|
+
import type { Snippet } from "svelte";
|
|
2
3
|
import type { HTMLAttributes } from "svelte/elements";
|
|
3
4
|
import Layer from "../misc/Layer.svelte";
|
|
4
5
|
|
|
5
|
-
export let display = "inline-flex";
|
|
6
|
-
export let extraOptions: HTMLAttributes<HTMLDivElement> = {};
|
|
7
6
|
// MUST BE WRAPPED IN A <label>
|
|
7
|
+
let {
|
|
8
|
+
children,
|
|
9
|
+
...extra
|
|
10
|
+
}: {
|
|
11
|
+
children: Snippet;
|
|
12
|
+
} & HTMLAttributes<HTMLDivElement> = $props();
|
|
8
13
|
</script>
|
|
9
14
|
|
|
10
|
-
<div class="m3-container"
|
|
11
|
-
|
|
15
|
+
<div class="m3-container" {...extra}>
|
|
16
|
+
{@render children()}
|
|
12
17
|
<div class="layer-container">
|
|
13
18
|
<Layer />
|
|
14
19
|
<div class="radio-circle"></div>
|
|
@@ -18,6 +23,7 @@
|
|
|
18
23
|
|
|
19
24
|
<style>
|
|
20
25
|
.m3-container {
|
|
26
|
+
display: inline-flex;
|
|
21
27
|
position: relative;
|
|
22
28
|
width: 1.25rem;
|
|
23
29
|
height: 1.25rem;
|
|
@@ -1,31 +1,8 @@
|
|
|
1
|
+
import type { Snippet } from "svelte";
|
|
1
2
|
import type { HTMLAttributes } from "svelte/elements";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
$$events?: Events;
|
|
8
|
-
$$slots?: Slots;
|
|
9
|
-
}): Exports & {
|
|
10
|
-
$set?: any;
|
|
11
|
-
$on?: any;
|
|
12
|
-
};
|
|
13
|
-
z_$$bindings?: Bindings;
|
|
14
|
-
}
|
|
15
|
-
type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
|
|
16
|
-
default: any;
|
|
17
|
-
} ? Props extends Record<string, never> ? any : {
|
|
18
|
-
children?: any;
|
|
19
|
-
} : {});
|
|
20
|
-
declare const RadioAnim3: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
|
|
21
|
-
display?: string;
|
|
22
|
-
extraOptions?: HTMLAttributes<HTMLDivElement>;
|
|
23
|
-
}, {
|
|
24
|
-
default: {};
|
|
25
|
-
}>, {
|
|
26
|
-
[evt: string]: CustomEvent<any>;
|
|
27
|
-
}, {
|
|
28
|
-
default: {};
|
|
29
|
-
}, {}, string>;
|
|
30
|
-
type RadioAnim3 = InstanceType<typeof RadioAnim3>;
|
|
3
|
+
type $$ComponentProps = {
|
|
4
|
+
children: Snippet;
|
|
5
|
+
} & HTMLAttributes<HTMLDivElement>;
|
|
6
|
+
declare const RadioAnim3: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
7
|
+
type RadioAnim3 = ReturnType<typeof RadioAnim3>;
|
|
31
8
|
export default RadioAnim3;
|
|
@@ -1,44 +1,50 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
|
-
import type {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
2
|
+
import type { HTMLInputAttributes } from "svelte/elements";
|
|
3
|
+
import { Spring } from "svelte/motion";
|
|
4
|
+
|
|
5
|
+
let {
|
|
6
|
+
value = $bindable(),
|
|
7
|
+
min = 0,
|
|
8
|
+
max = 100,
|
|
9
|
+
step = "any",
|
|
10
|
+
disabled = false,
|
|
11
|
+
showValue = true,
|
|
12
|
+
format = (n: number) => {
|
|
13
|
+
return n.toFixed(0);
|
|
14
|
+
},
|
|
15
|
+
...extra
|
|
16
|
+
}: {
|
|
17
|
+
value: number;
|
|
18
|
+
min?: number;
|
|
19
|
+
max?: number;
|
|
20
|
+
step?: number | "any";
|
|
21
|
+
disabled?: boolean;
|
|
22
|
+
showValue?: boolean;
|
|
23
|
+
format?: (n: number) => string;
|
|
24
|
+
} & HTMLInputAttributes = $props();
|
|
25
|
+
|
|
26
|
+
const valueDisplayed = new Spring(value, { stiffness: 0.3, damping: 1 });
|
|
18
27
|
const updateValue = (e: Event & { currentTarget: EventTarget & HTMLInputElement }) => {
|
|
19
28
|
const newValue = Number(e.currentTarget.value);
|
|
20
29
|
e.preventDefault();
|
|
21
30
|
value = newValue;
|
|
22
|
-
|
|
31
|
+
valueDisplayed.target = newValue;
|
|
23
32
|
};
|
|
24
33
|
|
|
25
|
-
let range
|
|
26
|
-
|
|
27
|
-
range = max - min;
|
|
28
|
-
percent = ($valueDisplayed - min) / range;
|
|
29
|
-
}
|
|
34
|
+
let range = $derived(max - min);
|
|
35
|
+
let percent = $derived((valueDisplayed.current - min) / range);
|
|
30
36
|
</script>
|
|
31
37
|
|
|
32
|
-
<div class="m3-container" style="
|
|
38
|
+
<div class="m3-container" style:--percent="{percent * 100}%">
|
|
33
39
|
<input
|
|
34
40
|
type="range"
|
|
35
|
-
|
|
36
|
-
value={
|
|
41
|
+
oninput={updateValue}
|
|
42
|
+
value={valueDisplayed.current}
|
|
37
43
|
{min}
|
|
38
44
|
{max}
|
|
39
45
|
{step}
|
|
40
46
|
{disabled}
|
|
41
|
-
{...
|
|
47
|
+
{...extra}
|
|
42
48
|
/>
|
|
43
49
|
<div class="track"></div>
|
|
44
50
|
<div class="thumb"></div>
|
|
@@ -1,20 +1,5 @@
|
|
|
1
|
-
import type {
|
|
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 Slider: $$__sveltets_2_IsomorphicComponent<{
|
|
16
|
-
extraWrapperOptions?: HTMLAttributes<HTMLDivElement>;
|
|
17
|
-
extraOptions?: HTMLInputAttributes;
|
|
1
|
+
import type { HTMLInputAttributes } from "svelte/elements";
|
|
2
|
+
type $$ComponentProps = {
|
|
18
3
|
value: number;
|
|
19
4
|
min?: number;
|
|
20
5
|
max?: number;
|
|
@@ -22,8 +7,7 @@ declare const Slider: $$__sveltets_2_IsomorphicComponent<{
|
|
|
22
7
|
disabled?: boolean;
|
|
23
8
|
showValue?: boolean;
|
|
24
9
|
format?: (n: number) => string;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
type Slider = InstanceType<typeof Slider>;
|
|
10
|
+
} & HTMLInputAttributes;
|
|
11
|
+
declare const Slider: import("svelte").Component<$$ComponentProps, {}, "value">;
|
|
12
|
+
type Slider = ReturnType<typeof Slider>;
|
|
29
13
|
export default Slider;
|