@hyvor/design 0.0.68 → 1.0.5

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 (165) hide show
  1. package/dist/components/ActionList/ActionList.svelte +22 -9
  2. package/dist/components/ActionList/ActionList.svelte.d.ts +8 -19
  3. package/dist/components/ActionList/ActionListGroup.svelte +18 -8
  4. package/dist/components/ActionList/ActionListGroup.svelte.d.ts +8 -19
  5. package/dist/components/ActionList/ActionListItem.svelte +49 -25
  6. package/dist/components/ActionList/ActionListItem.svelte.d.ts +28 -25
  7. package/dist/components/ActionList/Selected.svelte +10 -4
  8. package/dist/components/ActionList/Selected.svelte.d.ts +6 -16
  9. package/dist/components/Avatar/Avatar.svelte +16 -9
  10. package/dist/components/Avatar/Avatar.svelte.d.ts +7 -17
  11. package/dist/components/Avatar/AvatarStack.svelte +14 -8
  12. package/dist/components/Avatar/AvatarStack.svelte.d.ts +6 -17
  13. package/dist/components/Base/Base.svelte +14 -6
  14. package/dist/components/Base/Base.svelte.d.ts +6 -17
  15. package/dist/components/Box/Box.svelte +10 -3
  16. package/dist/components/Box/Box.svelte.d.ts +7 -18
  17. package/dist/components/Button/Button.svelte +52 -25
  18. package/dist/components/Button/Button.svelte.d.ts +16 -38
  19. package/dist/components/Button/ButtonGroup.svelte +9 -1
  20. package/dist/components/Button/ButtonGroup.svelte.d.ts +5 -26
  21. package/dist/components/Callout/Callout.svelte +41 -20
  22. package/dist/components/Callout/Callout.svelte.d.ts +11 -22
  23. package/dist/components/Checkbox/Checkbox.svelte +58 -38
  24. package/dist/components/Checkbox/Checkbox.svelte.d.ts +11 -34
  25. package/dist/components/CodeBlock/CodeBlock.svelte +21 -11
  26. package/dist/components/CodeBlock/CodeBlock.svelte.d.ts +7 -16
  27. package/dist/components/CodeBlock/getCode.js +2 -0
  28. package/dist/components/ColorPicker/ColorPicker.svelte +34 -15
  29. package/dist/components/ColorPicker/ColorPicker.svelte.d.ts +26 -19
  30. package/dist/components/Dark/DarkProvider.svelte +7 -5
  31. package/dist/components/Dark/DarkProvider.svelte.d.ts +16 -12
  32. package/dist/components/Dark/DarkToggle.svelte +8 -6
  33. package/dist/components/Dark/DarkToggle.svelte.d.ts +16 -12
  34. package/dist/components/Divider/Divider.svelte +17 -6
  35. package/dist/components/Divider/Divider.svelte.d.ts +9 -19
  36. package/dist/components/Dropdown/Dropdown.svelte +33 -14
  37. package/dist/components/Dropdown/Dropdown.svelte.d.ts +13 -23
  38. package/dist/components/Dropdown/DropdownContent.svelte +124 -92
  39. package/dist/components/Dropdown/DropdownContent.svelte.d.ts +12 -24
  40. package/dist/components/FormControl/Caption.svelte +10 -3
  41. package/dist/components/FormControl/Caption.svelte.d.ts +7 -18
  42. package/dist/components/FormControl/FormControl.svelte +11 -2
  43. package/dist/components/FormControl/FormControl.svelte.d.ts +6 -26
  44. package/dist/components/FormControl/InputGroup.svelte +17 -9
  45. package/dist/components/FormControl/InputGroup.svelte.d.ts +7 -18
  46. package/dist/components/FormControl/Label.svelte +11 -2
  47. package/dist/components/FormControl/Label.svelte.d.ts +6 -26
  48. package/dist/components/FormControl/Validation.svelte +18 -9
  49. package/dist/components/FormControl/Validation.svelte.d.ts +8 -19
  50. package/dist/components/HyvorBar/BarProducts.svelte +44 -25
  51. package/dist/components/HyvorBar/BarSupport.svelte +165 -101
  52. package/dist/components/HyvorBar/BarSupport.svelte.d.ts +7 -17
  53. package/dist/components/HyvorBar/BarUpdates.svelte +25 -15
  54. package/dist/components/HyvorBar/BarUpdates.svelte.d.ts +6 -16
  55. package/dist/components/HyvorBar/BarUpdatesList.svelte +73 -48
  56. package/dist/components/HyvorBar/BarUpdatesList.svelte.d.ts +6 -16
  57. package/dist/components/HyvorBar/BarUser.svelte +36 -24
  58. package/dist/components/HyvorBar/BarUser.svelte.d.ts +5 -15
  59. package/dist/components/HyvorBar/BarUserPreview.svelte +2 -1
  60. package/dist/components/HyvorBar/BarUserPreview.svelte.d.ts +16 -12
  61. package/dist/components/HyvorBar/HyvorBar.svelte +69 -36
  62. package/dist/components/HyvorBar/HyvorBar.svelte.d.ts +7 -18
  63. package/dist/components/HyvorBar/bar.d.ts +2 -2
  64. package/dist/components/HyvorBar/img/G2.svelte.d.ts +22 -19
  65. package/dist/components/HyvorBar/img/Trustpilot.svelte.d.ts +22 -19
  66. package/dist/components/IconButton/IconButton.svelte +43 -22
  67. package/dist/components/IconButton/IconButton.svelte.d.ts +10 -32
  68. package/dist/components/IconMessage/IconMessage.svelte +111 -56
  69. package/dist/components/IconMessage/IconMessage.svelte.d.ts +19 -35
  70. package/dist/components/Internationalization/InternationalizationProvider.svelte +14 -7
  71. package/dist/components/Internationalization/InternationalizationProvider.svelte.d.ts +6 -17
  72. package/dist/components/Internationalization/LanguageToggle.svelte +73 -47
  73. package/dist/components/Internationalization/LanguageToggle.svelte.d.ts +10 -20
  74. package/dist/components/Internationalization/T.svelte +158 -114
  75. package/dist/components/Internationalization/T.svelte.d.ts +17 -15
  76. package/dist/components/Internationalization/i18n.d.ts +1 -3
  77. package/dist/components/Internationalization/t.d.ts +1 -2
  78. package/dist/components/Internationalization/types.d.ts +1 -0
  79. package/dist/components/Link/Link.svelte +31 -19
  80. package/dist/components/Link/Link.svelte.d.ts +11 -33
  81. package/dist/components/Loader/LoadButton.svelte +24 -9
  82. package/dist/components/Loader/LoadButton.svelte.d.ts +29 -42
  83. package/dist/components/Loader/Loader.svelte +69 -42
  84. package/dist/components/Loader/Loader.svelte.d.ts +15 -26
  85. package/dist/components/Modal/ConfirmModalProvider.svelte +28 -20
  86. package/dist/components/Modal/ConfirmModalProvider.svelte.d.ts +3 -14
  87. package/dist/components/Modal/Modal.svelte +76 -47
  88. package/dist/components/Modal/Modal.svelte.d.ts +32 -29
  89. package/dist/components/Modal/ModalFooter.svelte +14 -6
  90. package/dist/components/Modal/ModalFooter.svelte.d.ts +23 -18
  91. package/dist/components/Modal/confirm.d.ts +2 -2
  92. package/dist/components/Modal/modal-types.d.ts +2 -2
  93. package/dist/components/NavLink/NavLink.svelte +31 -18
  94. package/dist/components/NavLink/NavLink.svelte.d.ts +11 -32
  95. package/dist/components/Radio/Radio.svelte +35 -16
  96. package/dist/components/Radio/Radio.svelte.d.ts +10 -32
  97. package/dist/components/Slider/Slider.svelte +86 -36
  98. package/dist/components/Slider/Slider.svelte.d.ts +25 -20
  99. package/dist/components/SplitControl/SplitControl.svelte +27 -18
  100. package/dist/components/SplitControl/SplitControl.svelte.d.ts +11 -23
  101. package/dist/components/Switch/Switch.svelte +30 -15
  102. package/dist/components/Switch/Switch.svelte.d.ts +8 -30
  103. package/dist/components/TabNav/TabNav.svelte +29 -15
  104. package/dist/components/TabNav/TabNav.svelte.d.ts +7 -18
  105. package/dist/components/TabNav/TabNavItem.svelte +36 -15
  106. package/dist/components/TabNav/TabNavItem.svelte.d.ts +10 -23
  107. package/dist/components/Table/Table.svelte +11 -4
  108. package/dist/components/Table/Table.svelte.d.ts +7 -18
  109. package/dist/components/Table/TableRow.svelte +11 -3
  110. package/dist/components/Table/TableRow.svelte.d.ts +7 -18
  111. package/dist/components/Tag/Tag.svelte +65 -31
  112. package/dist/components/Tag/Tag.svelte.d.ts +16 -38
  113. package/dist/components/Text/Text.svelte +20 -6
  114. package/dist/components/Text/Text.svelte.d.ts +10 -21
  115. package/dist/components/TextInput/TextInput.svelte +81 -28
  116. package/dist/components/TextInput/TextInput.svelte.d.ts +14 -36
  117. package/dist/components/Textarea/Textarea.svelte +46 -24
  118. package/dist/components/Textarea/Textarea.svelte.d.ts +13 -37
  119. package/dist/components/Toast/ToastIcon.svelte +26 -15
  120. package/dist/components/Toast/ToastIcon.svelte.d.ts +5 -15
  121. package/dist/components/Toast/ToastMessage.svelte +11 -4
  122. package/dist/components/Toast/ToastMessage.svelte.d.ts +5 -15
  123. package/dist/components/Toast/ToastProvider.svelte +6 -4
  124. package/dist/components/Toast/ToastProvider.svelte.d.ts +16 -12
  125. package/dist/components/Toast/toast.d.ts +2 -2
  126. package/dist/components/Tooltip/Tooltip.svelte +71 -55
  127. package/dist/components/Tooltip/Tooltip.svelte.d.ts +35 -23
  128. package/dist/marketing/Container/Container.svelte +8 -2
  129. package/dist/marketing/Container/Container.svelte.d.ts +6 -17
  130. package/dist/marketing/Docs/Content/Content.svelte +41 -29
  131. package/dist/marketing/Docs/Content/Content.svelte.d.ts +5 -15
  132. package/dist/marketing/Docs/Content/DocsImage.svelte +17 -9
  133. package/dist/marketing/Docs/Content/DocsImage.svelte.d.ts +9 -19
  134. package/dist/marketing/Docs/Docs.svelte +9 -3
  135. package/dist/marketing/Docs/Docs.svelte.d.ts +6 -28
  136. package/dist/marketing/Docs/Nav/Nav.svelte +77 -50
  137. package/dist/marketing/Docs/Nav/Nav.svelte.d.ts +5 -15
  138. package/dist/marketing/Docs/Nav/NavCategory.svelte +16 -6
  139. package/dist/marketing/Docs/Nav/NavCategory.svelte.d.ts +8 -19
  140. package/dist/marketing/Docs/Nav/NavItem.svelte +10 -3
  141. package/dist/marketing/Docs/Nav/NavItem.svelte.d.ts +6 -17
  142. package/dist/marketing/Docs/Sidebar/Sidebar.svelte.d.ts +22 -19
  143. package/dist/marketing/Docs/Toc.svelte +49 -39
  144. package/dist/marketing/Docs/Toc.svelte.d.ts +3 -14
  145. package/dist/marketing/Document/Document.svelte +11 -4
  146. package/dist/marketing/Document/Document.svelte.d.ts +7 -18
  147. package/dist/marketing/Document/DocumentTitle.svelte +16 -5
  148. package/dist/marketing/Document/DocumentTitle.svelte.d.ts +9 -19
  149. package/dist/marketing/Footer/Footer.svelte +55 -38
  150. package/dist/marketing/Footer/Footer.svelte.d.ts +8 -19
  151. package/dist/marketing/Footer/FooterLinkList.svelte +8 -2
  152. package/dist/marketing/Footer/FooterLinkList.svelte.d.ts +6 -17
  153. package/dist/marketing/Header/Header.svelte +41 -23
  154. package/dist/marketing/Header/Header.svelte.d.ts +10 -21
  155. package/dist/marketing/Logo/LogoBlogs.svelte +6 -1
  156. package/dist/marketing/Logo/LogoBlogs.svelte.d.ts +5 -15
  157. package/dist/marketing/Logo/LogoCore.svelte +6 -1
  158. package/dist/marketing/Logo/LogoCore.svelte.d.ts +5 -15
  159. package/dist/marketing/Logo/LogoFortguard.svelte +7 -2
  160. package/dist/marketing/Logo/LogoFortguard.svelte.d.ts +5 -15
  161. package/dist/marketing/Logo/LogoTalk.svelte +6 -1
  162. package/dist/marketing/Logo/LogoTalk.svelte.d.ts +5 -15
  163. package/dist/stores/dark.d.ts +0 -1
  164. package/package.json +10 -10
  165. package/dist/components/HyvorBar/BarProducts.svelte.d.ts +0 -39
@@ -1,33 +1,12 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- href: string;
5
- active?: boolean | undefined;
6
- disabled?: boolean | undefined;
7
- };
8
- events: {
9
- keyup: KeyboardEvent;
10
- keydown: KeyboardEvent;
11
- keypress: KeyboardEvent;
12
- focus: FocusEvent;
13
- blur: FocusEvent;
14
- click: MouseEvent;
15
- mouseover: MouseEvent;
16
- mouseenter: MouseEvent;
17
- mouseleave: MouseEvent;
18
- change: Event;
19
- } & {
20
- [evt: string]: CustomEvent<any>;
21
- };
22
- slots: {
23
- start: {};
24
- default: {};
25
- end: {};
26
- };
1
+ type Props = {
2
+ href: string;
3
+ active?: boolean;
4
+ disabled?: boolean;
5
+ start?: import('svelte').Snippet;
6
+ children?: import('svelte').Snippet;
7
+ end?: import('svelte').Snippet;
8
+ [key: string]: any;
27
9
  };
28
- export type NavLinkProps = typeof __propDef.props;
29
- export type NavLinkEvents = typeof __propDef.events;
30
- export type NavLinkSlots = typeof __propDef.slots;
31
- export default class NavLink extends SvelteComponent<NavLinkProps, NavLinkEvents, NavLinkSlots> {
32
- }
33
- export {};
10
+ declare const NavLink: import("svelte").Component<Props, {}, "">;
11
+ type NavLink = ReturnType<typeof NavLink>;
12
+ export default NavLink;
@@ -1,7 +1,26 @@
1
- <script>export let value = "";
2
- export let group = "";
3
- export let disabled = false;
4
- export let input = {};
1
+ <script lang="ts">
2
+ import { createBubbler } from 'svelte/legacy';
3
+
4
+ const bubble = createBubbler();
5
+
6
+ interface Props {
7
+ /* for whatever reason simply passing value with rest props doesn't work */
8
+ value?: number | string;
9
+ group?: number | string;
10
+ disabled?: boolean;
11
+ input?: any;
12
+ children?: import('svelte').Snippet;
13
+ [key: string]: any;
14
+ }
15
+
16
+ let {
17
+ value = '',
18
+ group = $bindable(''),
19
+ disabled = false,
20
+ input = $bindable({} as HTMLInputElement),
21
+ children,
22
+ ...rest
23
+ }: Props = $props();
5
24
  </script>
6
25
 
7
26
  <label class:disabled>
@@ -11,22 +30,22 @@ export let input = {};
11
30
  bind:group
12
31
  bind:this={input}
13
32
  {value}
14
- on:keyup
15
- on:keydown
16
- on:keypress
17
- on:focus
18
- on:blur
19
- on:click
20
- on:mouseover
21
- on:mouseenter
22
- on:mouseleave
23
- on:change
24
- {...$$restProps}
33
+ onkeyup={bubble('keyup')}
34
+ onkeydown={bubble('keydown')}
35
+ onkeypress={bubble('keypress')}
36
+ onfocus={bubble('focus')}
37
+ onblur={bubble('blur')}
38
+ onclick={bubble('click')}
39
+ onmouseover={bubble('mouseover')}
40
+ onmouseenter={bubble('mouseenter')}
41
+ onmouseleave={bubble('mouseleave')}
42
+ onchange={bubble('change')}
43
+ {...rest}
25
44
  />
26
45
 
27
46
  <span class="checkmark"></span>
28
47
 
29
- <slot />
48
+ {@render children?.()}
30
49
  </label>
31
50
 
32
51
  <style>label {
@@ -1,33 +1,11 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- [x: string]: any;
5
- value?: string | number | undefined;
6
- group?: string | number | undefined;
7
- disabled?: boolean | undefined;
8
- input?: HTMLInputElement | undefined;
9
- };
10
- events: {
11
- keyup: KeyboardEvent;
12
- keydown: KeyboardEvent;
13
- keypress: KeyboardEvent;
14
- focus: FocusEvent;
15
- blur: FocusEvent;
16
- click: MouseEvent;
17
- mouseover: MouseEvent;
18
- mouseenter: MouseEvent;
19
- mouseleave: MouseEvent;
20
- change: Event;
21
- } & {
22
- [evt: string]: CustomEvent<any>;
23
- };
24
- slots: {
25
- default: {};
26
- };
27
- };
28
- export type RadioProps = typeof __propDef.props;
29
- export type RadioEvents = typeof __propDef.events;
30
- export type RadioSlots = typeof __propDef.slots;
31
- export default class Radio extends SvelteComponent<RadioProps, RadioEvents, RadioSlots> {
1
+ interface Props {
2
+ value?: number | string;
3
+ group?: number | string;
4
+ disabled?: boolean;
5
+ input?: any;
6
+ children?: import('svelte').Snippet;
7
+ [key: string]: any;
32
8
  }
33
- export {};
9
+ declare const Radio: import("svelte").Component<Props, {}, "group" | "input">;
10
+ type Radio = ReturnType<typeof Radio>;
11
+ export default Radio;
@@ -1,42 +1,92 @@
1
- <script>import { createEventDispatcher } from "svelte";
2
- export let min;
3
- export let max;
4
- export let value;
5
- export let step = 1;
6
- export let dots = false;
7
- const dispatch = createEventDispatcher();
8
- function toStep(value2) {
9
- return Math.max(min, Math.min(max, Math.round(value2 / step) * step));
10
- }
11
- $:
12
- progress = (value - min) / (max - min) * 100;
13
- let dragging = false;
14
- let trackEl;
15
- function handleMousedown(event) {
16
- dragging = true;
17
- handleMousemove(event);
18
- window.addEventListener("mousemove", handleMousemove);
19
- window.addEventListener("mouseup", handleMouseup);
20
- }
21
- function handleMouseup() {
22
- dragging = false;
23
- window.removeEventListener("mousemove", handleMousemove);
24
- }
25
- function handleMousemove(event) {
26
- if (dragging) {
27
- const rect = trackEl.getBoundingClientRect();
28
- const x = event.clientX - rect.left;
29
- const width = rect.width;
30
- const newValue = min + x / width * (max - min);
31
- value = toStep(newValue);
32
- dispatch("change", value);
33
- }
34
- }
1
+ <script lang="ts">
2
+ import { createEventDispatcher } from 'svelte';
3
+
4
+ interface Props {
5
+ min: number;
6
+ max: number;
7
+ value: number;
8
+ step?: number;
9
+ // export let disabled = false;
10
+ dots?: boolean;
11
+ }
12
+
13
+ let { min, max, value = $bindable(), step = 1, dots = false }: Props = $props();
14
+
15
+ const dispatch = createEventDispatcher<{
16
+ change: number;
17
+ }>();
18
+
19
+ function toStep(value: number) {
20
+ return Math.max(min, Math.min(max, Math.round(value / step) * step));
21
+ }
22
+
23
+ let progress = $derived(((value - min) / (max - min)) * 100);
24
+
25
+ let dragging = $state(false);
26
+ let trackEl: HTMLDivElement | undefined = $state();
27
+
28
+ function handleMousedown(event: MouseEvent) {
29
+ dragging = true;
30
+ handleMousemove(event);
31
+
32
+ window.addEventListener('mousemove', handleMousemove);
33
+ window.addEventListener('mouseup', handleMouseup);
34
+ }
35
+
36
+ function handleMouseup() {
37
+ dragging = false;
38
+ window.removeEventListener('mousemove', handleMousemove);
39
+ window.removeEventListener('mouseup', handleMouseup);
40
+ }
41
+
42
+ function handleMousemove(event: MouseEvent) {
43
+ if (!trackEl) return;
44
+ if (dragging) {
45
+ calcPosUpdateValue(trackEl, event.clientX);
46
+ }
47
+ }
48
+
49
+ // touch events
50
+ function handleTouchstart(event: TouchEvent) {
51
+ dragging = true;
52
+ handleTouchmove(event);
53
+
54
+ window.addEventListener('touchmove', handleTouchmove);
55
+ window.addEventListener('touchend', handleTouchend);
56
+ }
57
+
58
+ function handleTouchend() {
59
+ dragging = false;
60
+ window.removeEventListener('touchmove', handleTouchmove);
61
+ window.removeEventListener('touchend', handleTouchend);
62
+ }
63
+
64
+ function handleTouchmove(event: TouchEvent) {
65
+ if (!trackEl) return;
66
+ if (dragging) {
67
+ calcPosUpdateValue(trackEl, event.touches[0].clientX);
68
+ }
69
+ }
70
+
71
+ function calcPosUpdateValue(trackEl: HTMLDivElement, clientX: number) {
72
+ const rect = trackEl.getBoundingClientRect();
73
+ const x = clientX - rect.left;
74
+ const width = rect.width;
75
+ const newValue = min + (x / width) * (max - min);
76
+ value = toStep(newValue);
77
+ dispatch('change', value);
78
+ }
35
79
  </script>
36
80
 
37
81
  <div class="slider">
38
- <!-- svelte-ignore a11y-no-static-element-interactions -->
39
- <div class="track" bind:this={trackEl} class:dragging on:mousedown={handleMousedown}>
82
+ <!-- svelte-ignore a11y_no_static_element_interactions -->
83
+ <div
84
+ class="track"
85
+ bind:this={trackEl}
86
+ class:dragging
87
+ onmousedown={handleMousedown}
88
+ ontouchstart={handleTouchstart}
89
+ >
40
90
  <div class="progress" style="width: {progress}%"></div>
41
91
  <button class="handle" style="left: {progress}%">
42
92
  <span class="tip">
@@ -1,22 +1,27 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- min: number;
5
- max: number;
6
- value: number;
7
- step?: number | undefined;
8
- dots?: boolean | undefined;
9
- };
10
- events: {
11
- change: CustomEvent<number>;
12
- } & {
13
- [evt: string]: CustomEvent<any>;
1
+ interface Props {
2
+ min: number;
3
+ max: number;
4
+ value: number;
5
+ step?: number;
6
+ dots?: boolean;
7
+ }
8
+ 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> {
9
+ new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
10
+ $$bindings?: Bindings;
11
+ } & Exports;
12
+ (internal: unknown, props: Props & {
13
+ $$events?: Events;
14
+ $$slots?: Slots;
15
+ }): Exports & {
16
+ $set?: any;
17
+ $on?: any;
14
18
  };
15
- slots: {};
16
- };
17
- export type SliderProps = typeof __propDef.props;
18
- export type SliderEvents = typeof __propDef.events;
19
- export type SliderSlots = typeof __propDef.slots;
20
- export default class Slider extends SvelteComponent<SliderProps, SliderEvents, SliderSlots> {
19
+ z_$$bindings?: Bindings;
21
20
  }
22
- export {};
21
+ declare const Slider: $$__sveltets_2_IsomorphicComponent<Props, {
22
+ change: CustomEvent<number>;
23
+ } & {
24
+ [evt: string]: CustomEvent<any>;
25
+ }, {}, {}, "value">;
26
+ type Slider = InstanceType<typeof Slider>;
27
+ export default Slider;
@@ -1,42 +1,51 @@
1
- <script>import Caption from "../FormControl/Caption.svelte";
2
- import Label from "../FormControl/Label.svelte";
3
- export let label = "";
4
- export let caption = "";
5
- export let column = false;
6
- export let flex = [1, 2];
1
+ <script lang="ts">
2
+ import type { Snippet } from 'svelte';
3
+ import Caption from '../FormControl/Caption.svelte';
4
+ import Label from '../FormControl/Label.svelte';
5
+
6
+ interface Props {
7
+ label?: string | Snippet;
8
+ caption?: string | Snippet;
9
+ column?: boolean;
10
+ flex?: number[];
11
+ children?: Snippet;
12
+ nested?: Snippet;
13
+ }
14
+
15
+ const { label, caption, column = false, flex = [1, 2], children, nested }: Props = $props();
7
16
  </script>
8
17
 
9
- <div class="split-control" class:has-nested={$$slots.nested} class:column>
18
+ <div class="split-control" class:has-nested={!!nested} class:column>
10
19
  <div class="left" style:flex={flex[0]}>
11
20
  <div class="label-wrap">
12
- {#if $$slots.label}
13
- <slot name="label" />
14
- {:else}
21
+ {#if typeof label === 'string'}
15
22
  <Label>{label}</Label>
23
+ {:else}
24
+ {@render label?.()}
16
25
  {/if}
17
26
  </div>
18
27
 
19
- {#if $$slots.caption || caption}
28
+ {#if caption}
20
29
  <div class="caption-wrap">
21
- {#if $$slots.caption}
22
- <slot name="caption" />
23
- {:else if caption}
30
+ {#if typeof caption === 'string'}
24
31
  <Caption>{caption}</Caption>
32
+ {:else}
33
+ {@render caption()}
25
34
  {/if}
26
35
  </div>
27
36
  {/if}
28
37
  </div>
29
38
 
30
- {#if $$slots.default}
39
+ {#if children}
31
40
  <div class="right" style:flex={flex[1]}>
32
- <slot></slot>
41
+ {@render children()}
33
42
  </div>
34
43
  {/if}
35
44
  </div>
36
45
 
37
- {#if $$slots.nested}
46
+ {#if nested}
38
47
  <div class="nested">
39
- <slot name="nested"></slot>
48
+ {@render nested()}
40
49
  </div>
41
50
  {/if}
42
51
 
@@ -1,24 +1,12 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- label?: string | undefined;
5
- caption?: string | undefined;
6
- column?: boolean | undefined;
7
- flex?: number[] | undefined;
8
- };
9
- events: {
10
- [evt: string]: CustomEvent<any>;
11
- };
12
- slots: {
13
- label: {};
14
- caption: {};
15
- default: {};
16
- nested: {};
17
- };
18
- };
19
- export type SplitControlProps = typeof __propDef.props;
20
- export type SplitControlEvents = typeof __propDef.events;
21
- export type SplitControlSlots = typeof __propDef.slots;
22
- export default class SplitControl extends SvelteComponent<SplitControlProps, SplitControlEvents, SplitControlSlots> {
1
+ import type { Snippet } from 'svelte';
2
+ interface Props {
3
+ label?: string | Snippet;
4
+ caption?: string | Snippet;
5
+ column?: boolean;
6
+ flex?: number[];
7
+ children?: Snippet;
8
+ nested?: Snippet;
23
9
  }
24
- export {};
10
+ declare const SplitControl: import("svelte").Component<Props, {}, "">;
11
+ type SplitControl = ReturnType<typeof SplitControl>;
12
+ export default SplitControl;
@@ -1,5 +1,20 @@
1
- <script>export let checked = false;
2
- export let input = {};
1
+ <script lang="ts">
2
+ import { createBubbler } from 'svelte/legacy';
3
+
4
+ const bubble = createBubbler();
5
+ interface Props {
6
+ checked?: boolean;
7
+ input?: any;
8
+ children?: import('svelte').Snippet;
9
+ [key: string]: any;
10
+ }
11
+
12
+ let {
13
+ checked = $bindable(false),
14
+ input = $bindable({} as HTMLInputElement),
15
+ children,
16
+ ...rest
17
+ }: Props = $props();
3
18
  </script>
4
19
 
5
20
  <label class="switch-wrap">
@@ -8,23 +23,23 @@ export let input = {};
8
23
  type="checkbox"
9
24
  bind:checked
10
25
  bind:this={input}
11
- {...$$restProps}
12
- on:keyup
13
- on:keydown
14
- on:keypress
15
- on:focus
16
- on:blur
17
- on:click
18
- on:mouseover
19
- on:mouseenter
20
- on:mouseleave
21
- on:change
26
+ {...rest}
27
+ onkeyup={bubble('keyup')}
28
+ onkeydown={bubble('keydown')}
29
+ onkeypress={bubble('keypress')}
30
+ onfocus={bubble('focus')}
31
+ onblur={bubble('blur')}
32
+ onclick={bubble('click')}
33
+ onmouseover={bubble('mouseover')}
34
+ onmouseenter={bubble('mouseenter')}
35
+ onmouseleave={bubble('mouseleave')}
36
+ onchange={bubble('change')}
22
37
  />
23
38
  <span class="slider"></span>
24
39
  </span>
25
- {#if $$slots.default}
40
+ {#if children}
26
41
  <span class="message">
27
- <slot />
42
+ {@render children?.()}
28
43
  </span>
29
44
  {/if}
30
45
  </label>
@@ -1,31 +1,9 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- [x: string]: any;
5
- checked?: boolean | undefined;
6
- input?: HTMLInputElement | undefined;
7
- };
8
- events: {
9
- keyup: KeyboardEvent;
10
- keydown: KeyboardEvent;
11
- keypress: KeyboardEvent;
12
- focus: FocusEvent;
13
- blur: FocusEvent;
14
- click: MouseEvent;
15
- mouseover: MouseEvent;
16
- mouseenter: MouseEvent;
17
- mouseleave: MouseEvent;
18
- change: Event;
19
- } & {
20
- [evt: string]: CustomEvent<any>;
21
- };
22
- slots: {
23
- default: {};
24
- };
25
- };
26
- export type SwitchProps = typeof __propDef.props;
27
- export type SwitchEvents = typeof __propDef.events;
28
- export type SwitchSlots = typeof __propDef.slots;
29
- export default class Switch extends SvelteComponent<SwitchProps, SwitchEvents, SwitchSlots> {
1
+ interface Props {
2
+ checked?: boolean;
3
+ input?: any;
4
+ children?: import('svelte').Snippet;
5
+ [key: string]: any;
30
6
  }
31
- export {};
7
+ declare const Switch: import("svelte").Component<Props, {}, "checked" | "input">;
8
+ type Switch = ReturnType<typeof Switch>;
9
+ export default Switch;
@@ -1,20 +1,34 @@
1
- <script>import { onMount, setContext } from "svelte";
2
- import { writable } from "svelte/store";
3
- export let active;
4
- const activeStore = writable(active);
5
- setContext("tab-nav-active", activeStore);
6
- $:
7
- active, activeStore.set(active);
8
- onMount(() => {
9
- const unsubscribe = activeStore.subscribe((value) => {
10
- active = value;
11
- });
12
- return unsubscribe;
13
- });
1
+ <script lang="ts">
2
+ import { run } from 'svelte/legacy';
3
+
4
+ import { onMount, setContext } from 'svelte';
5
+ import { writable } from 'svelte/store';
6
+
7
+ interface Props {
8
+ active: string;
9
+ children?: import('svelte').Snippet;
10
+ [key: string]: any;
11
+ }
12
+
13
+ let { active = $bindable(), children, ...rest }: Props = $props();
14
+
15
+ const activeStore = writable(active);
16
+ setContext('tab-nav-active', activeStore);
17
+
18
+ $effect(() => {
19
+ activeStore.set(active);
20
+ });
21
+
22
+ onMount(() => {
23
+ const unsubscribe = activeStore.subscribe((value) => {
24
+ active = value;
25
+ });
26
+ return unsubscribe;
27
+ });
14
28
  </script>
15
29
 
16
- <div class="tab-nav" {...$$restProps}>
17
- <slot />
30
+ <div class="tab-nav" {...rest}>
31
+ {@render children?.()}
18
32
  </div>
19
33
 
20
34
  <style>
@@ -1,19 +1,8 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- [x: string]: any;
5
- active: string;
6
- };
7
- events: {
8
- [evt: string]: CustomEvent<any>;
9
- };
10
- slots: {
11
- default: {};
12
- };
13
- };
14
- export type TabNavProps = typeof __propDef.props;
15
- export type TabNavEvents = typeof __propDef.events;
16
- export type TabNavSlots = typeof __propDef.slots;
17
- export default class TabNav extends SvelteComponent<TabNavProps, TabNavEvents, TabNavSlots> {
1
+ interface Props {
2
+ active: string;
3
+ children?: import('svelte').Snippet;
4
+ [key: string]: any;
18
5
  }
19
- export {};
6
+ declare const TabNav: import("svelte").Component<Props, {}, "active">;
7
+ type TabNav = ReturnType<typeof TabNav>;
8
+ export default TabNav;