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.
Files changed (130) hide show
  1. package/package/buttons/Button.svelte +142 -78
  2. package/package/buttons/Button.svelte.d.ts +17 -34
  3. package/package/buttons/ConnectedButtons.svelte +26 -0
  4. package/package/buttons/ConnectedButtons.svelte.d.ts +8 -0
  5. package/package/buttons/FAB.svelte +30 -15
  6. package/package/buttons/FAB.svelte.d.ts +14 -25
  7. package/package/containers/BottomSheet.svelte +33 -27
  8. package/package/containers/BottomSheet.svelte.d.ts +7 -21
  9. package/package/containers/Card.svelte +45 -14
  10. package/package/containers/Card.svelte.d.ts +10 -30
  11. package/package/containers/Dialog.svelte +46 -32
  12. package/package/containers/Dialog.svelte.d.ts +9 -34
  13. package/package/containers/ListItem.svelte +78 -14
  14. package/package/containers/ListItem.svelte.d.ts +14 -25
  15. package/package/containers/Menu.svelte +6 -3
  16. package/package/containers/Menu.svelte.d.ts +6 -28
  17. package/package/containers/MenuItem.svelte +15 -5
  18. package/package/containers/MenuItem.svelte.d.ts +7 -29
  19. package/package/containers/Snackbar.svelte +35 -37
  20. package/package/containers/Snackbar.svelte.d.ts +7 -22
  21. package/package/containers/SnackbarItem.svelte +6 -6
  22. package/package/containers/SnackbarItem.svelte.d.ts +6 -29
  23. package/package/containers/StandardSideSheet.svelte +14 -8
  24. package/package/containers/StandardSideSheet.svelte.d.ts +7 -30
  25. package/package/forms/Checkbox.svelte +19 -4
  26. package/package/forms/Checkbox.svelte.d.ts +6 -29
  27. package/package/forms/Chip.svelte +41 -29
  28. package/package/forms/Chip.svelte.d.ts +18 -41
  29. package/package/forms/CircularProgress.svelte +4 -6
  30. package/package/forms/CircularProgress.svelte.d.ts +4 -20
  31. package/package/forms/CircularProgressIndeterminate.svelte +3 -4
  32. package/package/forms/CircularProgressIndeterminate.svelte.d.ts +2 -20
  33. package/package/forms/DatePickerDocked.svelte +52 -35
  34. package/package/forms/DatePickerDocked.svelte.d.ts +6 -22
  35. package/package/forms/LinearProgress.svelte +10 -5
  36. package/package/forms/LinearProgress.svelte.d.ts +4 -20
  37. package/package/forms/LinearProgressIndeterminate.svelte +4 -3
  38. package/package/forms/LinearProgressIndeterminate.svelte.d.ts +2 -20
  39. package/package/forms/RadioAnim1.svelte +10 -4
  40. package/package/forms/RadioAnim1.svelte.d.ts +6 -29
  41. package/package/forms/RadioAnim2.svelte +10 -4
  42. package/package/forms/RadioAnim2.svelte.d.ts +6 -29
  43. package/package/forms/RadioAnim3.svelte +10 -4
  44. package/package/forms/RadioAnim3.svelte.d.ts +6 -29
  45. package/package/forms/Slider.svelte +32 -26
  46. package/package/forms/Slider.svelte.d.ts +5 -21
  47. package/package/forms/SliderTicks.svelte +40 -33
  48. package/package/forms/SliderTicks.svelte.d.ts +5 -21
  49. package/package/forms/Switch.svelte +23 -21
  50. package/package/forms/Switch.svelte.d.ts +5 -22
  51. package/package/forms/TextField.svelte +36 -19
  52. package/package/forms/TextField.svelte.d.ts +14 -27
  53. package/package/forms/TextFieldMultiline.svelte +21 -21
  54. package/package/forms/TextFieldMultiline.svelte.d.ts +6 -23
  55. package/package/forms/TextFieldOutlined.svelte +36 -18
  56. package/package/forms/TextFieldOutlined.svelte.d.ts +14 -26
  57. package/package/forms/TextFieldOutlinedMultiline.svelte +21 -21
  58. package/package/forms/TextFieldOutlinedMultiline.svelte.d.ts +6 -23
  59. package/package/forms/_picker/Actions.svelte +16 -18
  60. package/package/forms/_picker/Actions.svelte.d.ts +7 -22
  61. package/package/forms/_picker/CalendarPicker.svelte +14 -4
  62. package/package/forms/_picker/CalendarPicker.svelte.d.ts +4 -18
  63. package/package/forms/_picker/FocusPicker.svelte +8 -9
  64. package/package/forms/_picker/FocusPicker.svelte.d.ts +5 -21
  65. package/package/forms/_picker/Header.svelte +20 -9
  66. package/package/forms/_picker/Header.svelte.d.ts +4 -18
  67. package/package/forms/_picker/Item.svelte +15 -6
  68. package/package/forms/_picker/Item.svelte.d.ts +8 -23
  69. package/package/index.d.ts +3 -9
  70. package/package/index.js +1 -8
  71. package/package/misc/Layer.svelte +7 -3
  72. package/package/misc/Layer.svelte.d.ts +5 -17
  73. package/package/misc/StyleFromScheme.svelte +6 -2
  74. package/package/misc/StyleFromScheme.svelte.d.ts +5 -19
  75. package/package/misc/_icon.svelte +12 -5
  76. package/package/misc/_icon.svelte.d.ts +5 -19
  77. package/package/misc/_ripple.svelte +11 -3
  78. package/package/misc/_ripple.svelte.d.ts +5 -17
  79. package/package/misc/_ripplesimple.svelte +4 -0
  80. package/package/misc/_ripplesimple.svelte.d.ts +5 -25
  81. package/package/misc/_styling.svelte +7 -3
  82. package/package/misc/_styling.svelte.d.ts +5 -19
  83. package/package/misc/animation.js +1 -5
  84. package/package/misc/easing.js +1 -28
  85. package/package/misc/styles.css +135 -107
  86. package/package/misc/utils.d.ts +1 -0
  87. package/package/misc/utils.js +5 -0
  88. package/package/nav/NavDrawer.svelte +9 -5
  89. package/package/nav/NavDrawer.svelte.d.ts +6 -30
  90. package/package/nav/NavDrawerButton.svelte +22 -12
  91. package/package/nav/NavDrawerButton.svelte.d.ts +8 -31
  92. package/package/nav/NavDrawerLink.svelte +21 -12
  93. package/package/nav/NavDrawerLink.svelte.d.ts +8 -30
  94. package/package/nav/NavList.svelte +13 -9
  95. package/package/nav/NavList.svelte.d.ts +7 -31
  96. package/package/nav/NavListButton.svelte +26 -22
  97. package/package/nav/NavListButton.svelte.d.ts +9 -33
  98. package/package/nav/NavListLink.svelte +26 -23
  99. package/package/nav/NavListLink.svelte.d.ts +9 -32
  100. package/package/nav/Tabs.svelte +20 -19
  101. package/package/nav/Tabs.svelte.d.ts +5 -22
  102. package/package/nav/TabsLink.svelte +22 -18
  103. package/package/nav/TabsLink.svelte.d.ts +5 -22
  104. package/package/nav/VariableTabs.svelte +25 -20
  105. package/package/nav/VariableTabs.svelte.d.ts +5 -22
  106. package/package/nav/VariableTabsLink.svelte +29 -22
  107. package/package/nav/VariableTabsLink.svelte.d.ts +5 -22
  108. package/package/utils/ChipChooser.svelte +10 -4
  109. package/package/utils/ChipChooser.svelte.d.ts +5 -19
  110. package/package/utils/DateField.svelte +24 -18
  111. package/package/utils/DateField.svelte.d.ts +4 -19
  112. package/package/utils/Divider.svelte +5 -1
  113. package/package/utils/Divider.svelte.d.ts +4 -18
  114. package/package.json +44 -43
  115. package/package/buttons/ButtonLink.svelte +0 -116
  116. package/package/buttons/ButtonLink.svelte.d.ts +0 -34
  117. package/package/buttons/SegmentedButtonContainer.svelte +0 -27
  118. package/package/buttons/SegmentedButtonContainer.svelte.d.ts +0 -31
  119. package/package/buttons/SegmentedButtonItem.svelte +0 -119
  120. package/package/buttons/SegmentedButtonItem.svelte.d.ts +0 -34
  121. package/package/containers/CardClickable.svelte +0 -78
  122. package/package/containers/CardClickable.svelte.d.ts +0 -34
  123. package/package/containers/ListItemButton.svelte +0 -86
  124. package/package/containers/ListItemButton.svelte.d.ts +0 -31
  125. package/package/containers/ListItemLabel.svelte +0 -82
  126. package/package/containers/ListItemLabel.svelte.d.ts +0 -29
  127. package/package/containers/SnackbarAnim.svelte +0 -127
  128. package/package/containers/SnackbarAnim.svelte.d.ts +0 -33
  129. package/package/forms/CheckboxAnim.svelte +0 -116
  130. package/package/forms/CheckboxAnim.svelte.d.ts +0 -31
@@ -1,33 +1,21 @@
1
1
  import type { IconifyIcon } from "@iconify/types";
2
- import type { HTMLAttributes, HTMLInputAttributes } from "svelte/elements";
3
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
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 TextFieldOutlined: $$__sveltets_2_IsomorphicComponent<{
17
- display?: string;
18
- extraWrapperOptions?: HTMLAttributes<HTMLDivElement>;
19
- extraOptions?: HTMLInputAttributes;
2
+ import type { HTMLInputAttributes } from "svelte/elements";
3
+ type TrailingProps = {
4
+ trailingIcon: IconifyIcon;
5
+ trailingClick: () => void;
6
+ } | {
7
+ trailingIcon?: undefined;
8
+ trailingClick?: undefined;
9
+ };
10
+ type $$ComponentProps = {
20
11
  name: string;
21
- leadingIcon?: IconifyIcon | undefined;
22
- trailingIcon?: IconifyIcon | undefined;
12
+ leadingIcon?: IconifyIcon;
23
13
  disabled?: boolean;
24
14
  required?: boolean;
25
15
  error?: boolean;
26
16
  value?: string;
27
- }, {
28
- trailingClick: CustomEvent<any>;
29
- } & {
30
- [evt: string]: CustomEvent<any>;
31
- }, {}, {}, string>;
32
- type TextFieldOutlined = InstanceType<typeof TextFieldOutlined>;
17
+ enter?: () => void;
18
+ } & TrailingProps & HTMLInputAttributes;
19
+ declare const TextFieldOutlined: import("svelte").Component<$$ComponentProps, {}, "value">;
20
+ type TextFieldOutlined = ReturnType<typeof TextFieldOutlined>;
33
21
  export default TextFieldOutlined;
@@ -1,18 +1,24 @@
1
1
  <script lang="ts">
2
2
  import type { IconifyIcon } from "@iconify/types";
3
3
  import Icon from "../misc/_icon.svelte";
4
- import type { HTMLAttributes, HTMLTextareaAttributes } from "svelte/elements";
4
+ import type { HTMLTextareaAttributes } from "svelte/elements";
5
5
 
6
- export let display = "inline-flex";
7
- export let extraWrapperOptions: HTMLAttributes<HTMLDivElement> = {};
8
- export let extraOptions: HTMLTextareaAttributes = {};
9
- export let name: string;
10
- export let leadingIcon: IconifyIcon | undefined = undefined;
11
-
12
- export let disabled = false;
13
- export let required = false;
14
- export let error = false;
15
- export let value = "";
6
+ let {
7
+ name,
8
+ leadingIcon,
9
+ disabled = false,
10
+ required = false,
11
+ error = false,
12
+ value = $bindable(""),
13
+ ...extra
14
+ }: {
15
+ name: string;
16
+ leadingIcon?: IconifyIcon;
17
+ disabled?: boolean;
18
+ required?: boolean;
19
+ error?: boolean;
20
+ value?: string;
21
+ } & HTMLTextareaAttributes = $props();
16
22
  const id = crypto.randomUUID();
17
23
  const resize = (node: HTMLElement) => {
18
24
  const update = () => {
@@ -30,14 +36,7 @@
30
36
  };
31
37
  </script>
32
38
 
33
- <div
34
- class="m3-container"
35
- class:leading-icon={leadingIcon}
36
- class:error
37
- style="display: {display}"
38
- use:resize
39
- {...extraWrapperOptions}
40
- >
39
+ <div class="m3-container" class:leading-icon={leadingIcon} class:error use:resize>
41
40
  <textarea
42
41
  class="focus-none m3-font-body-large"
43
42
  placeholder=" "
@@ -45,7 +44,7 @@
45
44
  {id}
46
45
  {disabled}
47
46
  {required}
48
- {...extraOptions}
47
+ {...extra}
49
48
  ></textarea>
50
49
  <div class="layer"></div>
51
50
  <label class="m3-font-body-large" for={id}>{name}</label>
@@ -63,6 +62,7 @@
63
62
  --m3-textfield-outlined-shape: var(--m3-util-rounding-extra-small);
64
63
  }
65
64
  .m3-container {
65
+ display: inline-flex;
66
66
  position: relative;
67
67
  align-items: center;
68
68
  min-height: 5rem;
@@ -98,7 +98,7 @@
98
98
  .layer {
99
99
  position: absolute;
100
100
  inset: 0;
101
- border: 0.0625rem solid rgb(var(--error, var(--m3-scheme-outline)));
101
+ border: 1px solid rgb(var(--error, var(--m3-scheme-outline)));
102
102
  border-radius: var(--m3-textfield-outlined-shape);
103
103
  pointer-events: none;
104
104
  transition: all 200ms;
@@ -1,30 +1,13 @@
1
1
  import type { IconifyIcon } from "@iconify/types";
2
- import type { HTMLAttributes, HTMLTextareaAttributes } from "svelte/elements";
3
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
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 TextFieldOutlinedMultiline: $$__sveltets_2_IsomorphicComponent<{
17
- display?: string;
18
- extraWrapperOptions?: HTMLAttributes<HTMLDivElement>;
19
- extraOptions?: HTMLTextareaAttributes;
2
+ import type { HTMLTextareaAttributes } from "svelte/elements";
3
+ type $$ComponentProps = {
20
4
  name: string;
21
- leadingIcon?: IconifyIcon | undefined;
5
+ leadingIcon?: IconifyIcon;
22
6
  disabled?: boolean;
23
7
  required?: boolean;
24
8
  error?: boolean;
25
9
  value?: string;
26
- }, {
27
- [evt: string]: CustomEvent<any>;
28
- }, {}, {}, string>;
29
- type TextFieldOutlinedMultiline = InstanceType<typeof TextFieldOutlinedMultiline>;
10
+ } & HTMLTextareaAttributes;
11
+ declare const TextFieldOutlinedMultiline: import("svelte").Component<$$ComponentProps, {}, "value">;
12
+ type TextFieldOutlinedMultiline = ReturnType<typeof TextFieldOutlinedMultiline>;
30
13
  export default TextFieldOutlinedMultiline;
@@ -1,31 +1,29 @@
1
1
  <script lang="ts">
2
- import { createEventDispatcher } from "svelte";
3
2
  import Button from "../../buttons/Button.svelte";
4
3
 
5
- export let clearable: boolean;
6
- export let chosenDate: boolean;
7
- const dispatch = createEventDispatcher();
4
+ let {
5
+ clearable,
6
+ chosenDate,
7
+ clear,
8
+ cancel,
9
+ ok,
10
+ }: {
11
+ clearable: boolean;
12
+ chosenDate: boolean;
13
+ clear: () => void;
14
+ cancel: () => void;
15
+ ok: () => void;
16
+ } = $props();
8
17
  </script>
9
18
 
10
19
  <div class="m3-container">
11
20
  {#if clearable}
12
21
  <span class="left">
13
- <Button type="text" on:click={() => dispatch("clear")} extraOptions={{ type: "button" }}>
14
- Clear
15
- </Button>
22
+ <Button variant="text" click={clear} type="button">Clear</Button>
16
23
  </span>
17
24
  {/if}
18
- <Button type="text" on:click={() => dispatch("cancel")} extraOptions={{ type: "button" }}>
19
- Cancel
20
- </Button>
21
- <Button
22
- type="text"
23
- disabled={!clearable && !chosenDate}
24
- on:click={() => dispatch("ok")}
25
- extraOptions={{ type: "button" }}
26
- >
27
- OK
28
- </Button>
25
+ <Button variant="text" click={cancel} type="button">Cancel</Button>
26
+ <Button variant="text" disabled={!clearable && !chosenDate} click={ok} type="button">OK</Button>
29
27
  </div>
30
28
 
31
29
  <style>
@@ -1,25 +1,10 @@
1
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
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 Actions: $$__sveltets_2_IsomorphicComponent<{
1
+ type $$ComponentProps = {
15
2
  clearable: boolean;
16
3
  chosenDate: boolean;
17
- }, {
18
- clear: CustomEvent<any>;
19
- cancel: CustomEvent<any>;
20
- ok: CustomEvent<any>;
21
- } & {
22
- [evt: string]: CustomEvent<any>;
23
- }, {}, {}, string>;
24
- type Actions = InstanceType<typeof Actions>;
4
+ clear: () => void;
5
+ cancel: () => void;
6
+ ok: () => void;
7
+ };
8
+ declare const Actions: import("svelte").Component<$$ComponentProps, {}, "">;
9
+ type Actions = ReturnType<typeof Actions>;
25
10
  export default Actions;
@@ -1,8 +1,18 @@
1
1
  <script lang="ts">
2
2
  import Item from "./Item.svelte";
3
3
 
4
- export let focusedMonth: number, focusedYear: number, dateValidator: (date: string) => boolean;
5
- export let chosenDate: string;
4
+ let {
5
+ focusedMonth,
6
+ focusedYear,
7
+ dateValidator,
8
+ chosenDate = $bindable(),
9
+ }: {
10
+ focusedMonth: number;
11
+ focusedYear: number;
12
+ dateValidator: (date: string) => boolean;
13
+ chosenDate: string;
14
+ } = $props();
15
+
6
16
  const makeCalendar = (year: number, month: number) => {
7
17
  const firstDay = new Date(year, month, 1);
8
18
  return Array.from({ length: 42 }, (_, i: number) => {
@@ -18,7 +28,7 @@
18
28
  });
19
29
  };
20
30
 
21
- let today = new Date();
31
+ let today = $state(new Date());
22
32
  setInterval(() => (today = new Date()), 1000 * 60);
23
33
  </script>
24
34
 
@@ -35,7 +45,7 @@
35
45
  day.day == today.getDate()}
36
46
  selected={!day.disabled && day.iso == chosenDate}
37
47
  label={day.day.toString()}
38
- on:click={() => (chosenDate = day.iso)}
48
+ click={() => (chosenDate = day.iso)}
39
49
  />
40
50
  {/each}
41
51
  </div>
@@ -1,23 +1,9 @@
1
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
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 CalendarPicker: $$__sveltets_2_IsomorphicComponent<{
1
+ type $$ComponentProps = {
15
2
  focusedMonth: number;
16
3
  focusedYear: number;
17
4
  dateValidator: (date: string) => boolean;
18
5
  chosenDate: string;
19
- }, {
20
- [evt: string]: CustomEvent<any>;
21
- }, {}, {}, string>;
22
- type CalendarPicker = InstanceType<typeof CalendarPicker>;
6
+ };
7
+ declare const CalendarPicker: import("svelte").Component<$$ComponentProps, {}, "chosenDate">;
8
+ type CalendarPicker = ReturnType<typeof CalendarPicker>;
23
9
  export default CalendarPicker;
@@ -1,22 +1,21 @@
1
1
  <script lang="ts">
2
- import { createEventDispatcher } from "svelte";
3
2
  import Icon from "../../misc/_icon.svelte";
4
3
  import iconCheck from "@ktibow/iconset-material-symbols/check";
5
4
 
6
- const dispatch = createEventDispatcher();
7
5
  const conditionalScroll = (node: Element, shouldScroll: boolean) => {
8
6
  if (shouldScroll) node.scrollIntoView({ block: "nearest" });
9
7
  };
10
- export let options: { id: number; name: string; selected: boolean }[];
8
+
9
+ let {
10
+ options,
11
+ }: {
12
+ options: { name: string; selected: boolean; activate: () => void }[];
13
+ } = $props();
11
14
  </script>
12
15
 
13
16
  <div class="m3-container">
14
- {#each options as { id, name, selected }}
15
- <button
16
- class="m3-font-body-large"
17
- on:click={() => dispatch("chosen", id)}
18
- use:conditionalScroll={selected}
19
- >
17
+ {#each options as { name, selected, activate }}
18
+ <button class="m3-font-body-large" onclick={activate} use:conditionalScroll={selected}>
20
19
  {#if selected}
21
20
  <Icon icon={iconCheck} />
22
21
  {/if}
@@ -1,26 +1,10 @@
1
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
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 FocusPicker: $$__sveltets_2_IsomorphicComponent<{
1
+ type $$ComponentProps = {
15
2
  options: {
16
- id: number;
17
3
  name: string;
18
4
  selected: boolean;
5
+ activate: () => void;
19
6
  }[];
20
- }, {
21
- chosen: CustomEvent<any>;
22
- } & {
23
- [evt: string]: CustomEvent<any>;
24
- }, {}, {}, string>;
25
- type FocusPicker = InstanceType<typeof FocusPicker>;
7
+ };
8
+ declare const FocusPicker: import("svelte").Component<$$ComponentProps, {}, "">;
9
+ type FocusPicker = ReturnType<typeof FocusPicker>;
26
10
  export default FocusPicker;
@@ -4,8 +4,19 @@
4
4
  import iconRight from "@ktibow/iconset-material-symbols/chevron-right";
5
5
  import iconDown from "@ktibow/iconset-material-symbols/arrow-drop-down";
6
6
 
7
- export let currentView: "calendar" | "year" | "month", focusedMonth: number, focusedYear: number;
8
- export let startYear: number, endYear: number;
7
+ let {
8
+ currentView = $bindable(),
9
+ focusedMonth = $bindable(),
10
+ focusedYear = $bindable(),
11
+ startYear,
12
+ endYear,
13
+ }: {
14
+ currentView: "calendar" | "year" | "month";
15
+ focusedMonth: number;
16
+ focusedYear: number;
17
+ startYear: number;
18
+ endYear: number;
19
+ } = $props();
9
20
 
10
21
  const yearClick = () => (currentView = currentView == "calendar" ? "year" : "calendar");
11
22
  const monthClick = () => (currentView = currentView == "calendar" ? "month" : "calendar");
@@ -18,20 +29,20 @@
18
29
  <button
19
30
  type="button"
20
31
  class="arrow"
21
- on:click={() => (focusedMonth = (focusedMonth - 1 + 12) % 12)}
32
+ onclick={() => (focusedMonth = (focusedMonth - 1 + 12) % 12)}
22
33
  >
23
34
  <Icon icon={iconLeft} />
24
35
  </button>
25
36
  <button
26
37
  type="button"
27
38
  class="chooser m3-font-label-large"
28
- on:click={monthClick}
39
+ onclick={monthClick}
29
40
  disabled={currentView == "year"}
30
41
  >
31
42
  {getShortMonth(focusedMonth)}
32
43
  <Icon icon={iconDown} />
33
44
  </button>
34
- <button type="button" class="arrow" on:click={() => (focusedMonth = (focusedMonth + 1) % 12)}>
45
+ <button type="button" class="arrow" onclick={() => (focusedMonth = (focusedMonth + 1) % 12)}>
35
46
  <Icon icon={iconRight} />
36
47
  </button>
37
48
  </div>
@@ -40,14 +51,14 @@
40
51
  type="button"
41
52
  class="arrow"
42
53
  disabled={focusedYear <= startYear}
43
- on:click={() => focusedYear--}
54
+ onclick={() => focusedYear--}
44
55
  >
45
56
  <Icon icon={iconLeft} />
46
57
  </button>
47
58
  <button
48
59
  type="button"
49
60
  class="chooser m3-font-label-large"
50
- on:click={yearClick}
61
+ onclick={yearClick}
51
62
  disabled={currentView == "month"}
52
63
  >
53
64
  {focusedYear}
@@ -57,7 +68,7 @@
57
68
  type="button"
58
69
  class="arrow"
59
70
  disabled={focusedYear >= endYear}
60
- on:click={() => focusedYear++}
71
+ onclick={() => focusedYear++}
61
72
  >
62
73
  <Icon icon={iconRight} />
63
74
  </button>
@@ -69,7 +80,7 @@
69
80
  display: flex;
70
81
  height: 4rem;
71
82
  transition: all 200ms;
72
- border-bottom: solid 0.0625rem transparent;
83
+ border-bottom: solid 1px transparent;
73
84
  flex-shrink: 0;
74
85
  }
75
86
  .m3-container > div {
@@ -1,24 +1,10 @@
1
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
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 Header: $$__sveltets_2_IsomorphicComponent<{
1
+ type $$ComponentProps = {
15
2
  currentView: "calendar" | "year" | "month";
16
3
  focusedMonth: number;
17
4
  focusedYear: number;
18
5
  startYear: number;
19
6
  endYear: number;
20
- }, {
21
- [evt: string]: CustomEvent<any>;
22
- }, {}, {}, string>;
23
- type Header = InstanceType<typeof Header>;
7
+ };
8
+ declare const Header: import("svelte").Component<$$ComponentProps, {}, "focusedMonth" | "focusedYear" | "currentView">;
9
+ type Header = ReturnType<typeof Header>;
24
10
  export default Header;
@@ -1,8 +1,17 @@
1
1
  <script lang="ts">
2
- export let disabled = false;
3
- export let today = false;
4
- export let selected = false;
5
- export let label: string;
2
+ let {
3
+ disabled,
4
+ today,
5
+ selected,
6
+ label,
7
+ click,
8
+ }: {
9
+ disabled: boolean;
10
+ today: boolean;
11
+ selected: boolean;
12
+ label: string;
13
+ click: () => void;
14
+ } = $props();
6
15
  </script>
7
16
 
8
17
  <button
@@ -11,7 +20,7 @@
11
20
  type="button"
12
21
  class:today
13
22
  class:selected
14
- on:click
23
+ onclick={click}
15
24
  >
16
25
  {label}
17
26
  </button>
@@ -47,7 +56,7 @@
47
56
  color: rgb(var(--m3-scheme-on-surface-variant) / 0.38);
48
57
  }
49
58
  .today {
50
- border: solid 0.0625rem rgb(var(--text));
59
+ border: solid 1px rgb(var(--text));
51
60
  --text: var(--m3-scheme-primary);
52
61
  }
53
62
  .selected {
@@ -1,25 +1,10 @@
1
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
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 Item: $$__sveltets_2_IsomorphicComponent<{
15
- disabled?: boolean;
16
- today?: boolean;
17
- selected?: boolean;
1
+ type $$ComponentProps = {
2
+ disabled: boolean;
3
+ today: boolean;
4
+ selected: boolean;
18
5
  label: string;
19
- }, {
20
- click: MouseEvent;
21
- } & {
22
- [evt: string]: CustomEvent<any>;
23
- }, {}, {}, string>;
24
- type Item = InstanceType<typeof Item>;
6
+ click: () => void;
7
+ };
8
+ declare const Item: import("svelte").Component<$$ComponentProps, {}, "">;
9
+ type Item = ReturnType<typeof Item>;
25
10
  export default Item;
@@ -6,21 +6,16 @@ export * from "./misc/utils.js";
6
6
  export * from "./misc/easing.js";
7
7
  export * from "./misc/serializeScheme.js";
8
8
  export { default as Button } from "./buttons/Button.svelte";
9
- export { default as ButtonLink } from "./buttons/ButtonLink.svelte";
10
- export { default as SegmentedButtonContainer } from "./buttons/SegmentedButtonContainer.svelte";
11
- export { default as SegmentedButtonItem } from "./buttons/SegmentedButtonItem.svelte";
9
+ export { default as ConnectedButtons } from "./buttons/ConnectedButtons.svelte";
12
10
  export { default as FAB } from "./buttons/FAB.svelte";
13
11
  export { default as BottomSheet } from "./containers/BottomSheet.svelte";
14
12
  export { default as Card } from "./containers/Card.svelte";
15
- export { default as CardClickable } from "./containers/CardClickable.svelte";
16
13
  export { default as Dialog } from "./containers/Dialog.svelte";
17
14
  export { default as ListItem } from "./containers/ListItem.svelte";
18
- export { default as ListItemButton } from "./containers/ListItemButton.svelte";
19
- export { default as ListItemLabel } from "./containers/ListItemLabel.svelte";
20
15
  export { default as Menu } from "./containers/Menu.svelte";
21
16
  export { default as MenuItem } from "./containers/MenuItem.svelte";
22
- export { default as Snackbar, type SnackbarIn } from "./containers/Snackbar.svelte";
23
- export { default as SnackbarAnim } from "./containers/SnackbarAnim.svelte";
17
+ export { default as Snackbar } from "./containers/Snackbar.svelte";
18
+ export type { SnackbarIn } from "./containers/Snackbar.svelte";
24
19
  export { default as SnackbarItem } from "./containers/SnackbarItem.svelte";
25
20
  export { default as LinearProgress } from "./forms/LinearProgress.svelte";
26
21
  export { default as LinearProgressIndeterminate } from "./forms/LinearProgressIndeterminate.svelte";
@@ -30,7 +25,6 @@ export { default as RadioAnim1 } from "./forms/RadioAnim1.svelte";
30
25
  export { default as RadioAnim2 } from "./forms/RadioAnim2.svelte";
31
26
  export { default as RadioAnim3 } from "./forms/RadioAnim3.svelte";
32
27
  export { default as Checkbox } from "./forms/Checkbox.svelte";
33
- export { default as CheckboxAnim } from "./forms/CheckboxAnim.svelte";
34
28
  export { default as Switch } from "./forms/Switch.svelte";
35
29
  export { default as Slider } from "./forms/Slider.svelte";
36
30
  export { default as SliderTicks } from "./forms/SliderTicks.svelte";
package/package/index.js CHANGED
@@ -6,21 +6,15 @@ export * from "./misc/utils.js";
6
6
  export * from "./misc/easing.js";
7
7
  export * from "./misc/serializeScheme.js";
8
8
  export { default as Button } from "./buttons/Button.svelte";
9
- export { default as ButtonLink } from "./buttons/ButtonLink.svelte";
10
- export { default as SegmentedButtonContainer } from "./buttons/SegmentedButtonContainer.svelte";
11
- export { default as SegmentedButtonItem } from "./buttons/SegmentedButtonItem.svelte";
9
+ export { default as ConnectedButtons } from "./buttons/ConnectedButtons.svelte";
12
10
  export { default as FAB } from "./buttons/FAB.svelte";
13
11
  export { default as BottomSheet } from "./containers/BottomSheet.svelte";
14
12
  export { default as Card } from "./containers/Card.svelte";
15
- export { default as CardClickable } from "./containers/CardClickable.svelte";
16
13
  export { default as Dialog } from "./containers/Dialog.svelte";
17
14
  export { default as ListItem } from "./containers/ListItem.svelte";
18
- export { default as ListItemButton } from "./containers/ListItemButton.svelte";
19
- export { default as ListItemLabel } from "./containers/ListItemLabel.svelte";
20
15
  export { default as Menu } from "./containers/Menu.svelte";
21
16
  export { default as MenuItem } from "./containers/MenuItem.svelte";
22
17
  export { default as Snackbar } from "./containers/Snackbar.svelte";
23
- export { default as SnackbarAnim } from "./containers/SnackbarAnim.svelte";
24
18
  export { default as SnackbarItem } from "./containers/SnackbarItem.svelte";
25
19
  export { default as LinearProgress } from "./forms/LinearProgress.svelte";
26
20
  export { default as LinearProgressIndeterminate } from "./forms/LinearProgressIndeterminate.svelte";
@@ -30,7 +24,6 @@ export { default as RadioAnim1 } from "./forms/RadioAnim1.svelte";
30
24
  export { default as RadioAnim2 } from "./forms/RadioAnim2.svelte";
31
25
  export { default as RadioAnim3 } from "./forms/RadioAnim3.svelte";
32
26
  export { default as Checkbox } from "./forms/Checkbox.svelte";
33
- export { default as CheckboxAnim } from "./forms/CheckboxAnim.svelte";
34
27
  export { default as Switch } from "./forms/Switch.svelte";
35
28
  export { default as Slider } from "./forms/Slider.svelte";
36
29
  export { default as SliderTicks } from "./forms/SliderTicks.svelte";
@@ -2,14 +2,18 @@
2
2
  import Ripple from "./_ripple.svelte";
3
3
  import RippleSimple from "./_ripplesimple.svelte";
4
4
 
5
- let ripple = RippleSimple;
5
+ let { morph = false }: { morph?: boolean } = $props();
6
+
7
+ let ripple = $state(RippleSimple);
6
8
  if (
7
- // @ts-ignore
9
+ // @ts-expect-error about M3_SVELTE_NO_RIPPLE
8
10
  typeof M3_SVELTE_NO_RIPPLE == "undefined" &&
9
11
  (typeof window == "undefined" || !window.matchMedia("(prefers-reduced-motion: reduce)").matches)
10
12
  ) {
11
13
  ripple = Ripple;
12
14
  }
15
+
16
+ const Component = $derived(ripple);
13
17
  </script>
14
18
 
15
- <svelte:component this={ripple} />
19
+ <Component {morph} />