@sveltia/ui 0.16.0 → 0.17.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 (156) hide show
  1. package/package/components/alert/alert.svelte +22 -7
  2. package/package/components/alert/alert.svelte.d.ts +32 -28
  3. package/package/components/button/button-group.svelte +16 -6
  4. package/package/components/button/button-group.svelte.d.ts +23 -23
  5. package/package/components/button/button.svelte +41 -136
  6. package/package/components/button/button.svelte.d.ts +5 -146
  7. package/package/components/button/select-button-group.svelte +31 -37
  8. package/package/components/button/select-button-group.svelte.d.ts +76 -34
  9. package/package/components/button/select-button.svelte +19 -62
  10. package/package/components/button/select-button.svelte.d.ts +17 -73
  11. package/package/components/button/split-button.svelte +37 -47
  12. package/package/components/button/split-button.svelte.d.ts +40 -47
  13. package/package/components/calendar/calendar.svelte +80 -55
  14. package/package/components/calendar/calendar.svelte.d.ts +13 -10
  15. package/package/components/checkbox/checkbox-group.svelte +23 -20
  16. package/package/components/checkbox/checkbox-group.svelte.d.ts +49 -27
  17. package/package/components/checkbox/checkbox.svelte +57 -67
  18. package/package/components/checkbox/checkbox.svelte.d.ts +67 -55
  19. package/package/components/dialog/alert-dialog.svelte +9 -36
  20. package/package/components/dialog/alert-dialog.svelte.d.ts +5 -44
  21. package/package/components/dialog/confirmation-dialog.svelte +9 -41
  22. package/package/components/dialog/confirmation-dialog.svelte.d.ts +5 -46
  23. package/package/components/dialog/dialog.svelte +60 -105
  24. package/package/components/dialog/dialog.svelte.d.ts +5 -102
  25. package/package/components/dialog/prompt-dialog.svelte +32 -61
  26. package/package/components/dialog/prompt-dialog.svelte.d.ts +38 -62
  27. package/package/components/disclosure/disclosure.svelte +39 -34
  28. package/package/components/disclosure/disclosure.svelte.d.ts +74 -56
  29. package/package/components/divider/divider.svelte +18 -14
  30. package/package/components/divider/divider.svelte.d.ts +31 -10
  31. package/package/components/divider/spacer.svelte +13 -8
  32. package/package/components/divider/spacer.svelte.d.ts +20 -9
  33. package/package/components/drawer/drawer.svelte +63 -76
  34. package/package/components/drawer/drawer.svelte.d.ts +102 -84
  35. package/package/components/grid/grid-body.svelte +15 -10
  36. package/package/components/grid/grid-body.svelte.d.ts +30 -24
  37. package/package/components/grid/grid-cell.svelte +16 -6
  38. package/package/components/grid/grid-cell.svelte.d.ts +23 -23
  39. package/package/components/grid/grid-col-header.svelte +16 -6
  40. package/package/components/grid/grid-col-header.svelte.d.ts +23 -23
  41. package/package/components/grid/grid-foot.svelte +16 -6
  42. package/package/components/grid/grid-foot.svelte.d.ts +23 -23
  43. package/package/components/grid/grid-head.svelte +16 -6
  44. package/package/components/grid/grid-head.svelte.d.ts +23 -23
  45. package/package/components/grid/grid-row-header.svelte +16 -6
  46. package/package/components/grid/grid-row-header.svelte.d.ts +23 -23
  47. package/package/components/grid/grid-row.svelte +19 -23
  48. package/package/components/grid/grid-row.svelte.d.ts +48 -38
  49. package/package/components/grid/grid.svelte +26 -25
  50. package/package/components/grid/grid.svelte.d.ts +56 -32
  51. package/package/components/icon/icon.svelte +14 -9
  52. package/package/components/icon/icon.svelte.d.ts +20 -9
  53. package/package/components/listbox/listbox.svelte +46 -52
  54. package/package/components/listbox/listbox.svelte.d.ts +102 -40
  55. package/package/components/listbox/option-group.svelte +23 -19
  56. package/package/components/listbox/option-group.svelte.d.ts +49 -27
  57. package/package/components/listbox/option.svelte +44 -57
  58. package/package/components/listbox/option.svelte.d.ts +54 -84
  59. package/package/components/menu/menu-button.svelte +42 -63
  60. package/package/components/menu/menu-button.svelte.d.ts +18 -72
  61. package/package/components/menu/menu-item-checkbox.svelte +29 -41
  62. package/package/components/menu/menu-item-checkbox.svelte.d.ts +5 -44
  63. package/package/components/menu/menu-item-group.svelte +22 -19
  64. package/package/components/menu/menu-item-group.svelte.d.ts +41 -27
  65. package/package/components/menu/menu-item-radio.svelte +29 -41
  66. package/package/components/menu/menu-item-radio.svelte.d.ts +5 -44
  67. package/package/components/menu/menu-item.svelte +66 -75
  68. package/package/components/menu/menu-item.svelte.d.ts +5 -80
  69. package/package/components/menu/menu.svelte +25 -22
  70. package/package/components/menu/menu.svelte.d.ts +50 -30
  71. package/package/components/radio/radio-group.svelte +36 -42
  72. package/package/components/radio/radio-group.svelte.d.ts +85 -35
  73. package/package/components/radio/radio.svelte +45 -48
  74. package/package/components/radio/radio.svelte.d.ts +96 -42
  75. package/package/components/select/combobox.svelte +76 -101
  76. package/package/components/select/combobox.svelte.d.ts +5 -56
  77. package/package/components/select/select-tags.svelte +48 -59
  78. package/package/components/select/select-tags.svelte.d.ts +109 -28
  79. package/package/components/select/select.svelte +18 -37
  80. package/package/components/select/select.svelte.d.ts +5 -40
  81. package/package/components/slider/slider.svelte +71 -68
  82. package/package/components/slider/slider.svelte.d.ts +142 -31
  83. package/package/components/switch/switch.svelte +36 -46
  84. package/package/components/switch/switch.svelte.d.ts +83 -37
  85. package/package/components/table/table-body.svelte +15 -11
  86. package/package/components/table/table-body.svelte.d.ts +30 -24
  87. package/package/components/table/table-cell.svelte +16 -6
  88. package/package/components/table/table-cell.svelte.d.ts +23 -23
  89. package/package/components/table/table-col-header.svelte +16 -6
  90. package/package/components/table/table-col-header.svelte.d.ts +23 -23
  91. package/package/components/table/table-foot.svelte +16 -6
  92. package/package/components/table/table-foot.svelte.d.ts +23 -23
  93. package/package/components/table/table-head.svelte +16 -6
  94. package/package/components/table/table-head.svelte.d.ts +23 -23
  95. package/package/components/table/table-row-header.svelte +16 -6
  96. package/package/components/table/table-row-header.svelte.d.ts +23 -23
  97. package/package/components/table/table-row.svelte +16 -6
  98. package/package/components/table/table-row.svelte.d.ts +23 -23
  99. package/package/components/table/table.svelte +16 -6
  100. package/package/components/table/table.svelte.d.ts +23 -23
  101. package/package/components/tabs/tab-box.svelte +16 -9
  102. package/package/components/tabs/tab-box.svelte.d.ts +32 -22
  103. package/package/components/tabs/tab-list.svelte +36 -35
  104. package/package/components/tabs/tab-list.svelte.d.ts +65 -33
  105. package/package/components/tabs/tab-panel.svelte +16 -6
  106. package/package/components/tabs/tab-panel.svelte.d.ts +23 -23
  107. package/package/components/tabs/tab-panels.svelte +16 -6
  108. package/package/components/tabs/tab-panels.svelte.d.ts +23 -21
  109. package/package/components/tabs/tab.svelte +28 -25
  110. package/package/components/tabs/tab.svelte.d.ts +17 -63
  111. package/package/components/text-editor/lexical-root.svelte +38 -32
  112. package/package/components/text-editor/lexical-root.svelte.d.ts +74 -13
  113. package/package/components/text-editor/text-editor.svelte +63 -79
  114. package/package/components/text-editor/text-editor.svelte.d.ts +97 -20
  115. package/package/components/text-editor/toolbar/editor-toolbar.svelte +41 -24
  116. package/package/components/text-editor/toolbar/editor-toolbar.svelte.d.ts +32 -7
  117. package/package/components/text-editor/toolbar/format-text-button.svelte +15 -5
  118. package/package/components/text-editor/toolbar/format-text-button.svelte.d.ts +13 -6
  119. package/package/components/text-editor/toolbar/insert-link-button.svelte +18 -16
  120. package/package/components/text-editor/toolbar/insert-link-button.svelte.d.ts +4 -8
  121. package/package/components/text-editor/toolbar/toggle-block-menu-item.svelte +19 -7
  122. package/package/components/text-editor/toolbar/toggle-block-menu-item.svelte.d.ts +13 -6
  123. package/package/components/text-field/number-input.svelte +63 -81
  124. package/package/components/text-field/number-input.svelte.d.ts +48 -55
  125. package/package/components/text-field/password-input.svelte +38 -57
  126. package/package/components/text-field/password-input.svelte.d.ts +16 -45
  127. package/package/components/text-field/search-bar.svelte +45 -62
  128. package/package/components/text-field/search-bar.svelte.d.ts +25 -66
  129. package/package/components/text-field/text-area.svelte +38 -54
  130. package/package/components/text-field/text-area.svelte.d.ts +100 -35
  131. package/package/components/text-field/text-input.svelte +30 -86
  132. package/package/components/text-field/text-input.svelte.d.ts +4 -78
  133. package/package/components/toast/toast.svelte +36 -30
  134. package/package/components/toast/toast.svelte.d.ts +50 -28
  135. package/package/components/toolbar/toolbar.svelte +25 -25
  136. package/package/components/toolbar/toolbar.svelte.d.ts +57 -29
  137. package/package/components/util/app-shell.svelte +22 -10
  138. package/package/components/util/app-shell.svelte.d.ts +25 -29
  139. package/package/components/util/group.svelte +20 -15
  140. package/package/components/util/group.svelte.d.ts +40 -26
  141. package/package/components/util/modal.svelte +89 -105
  142. package/package/components/util/modal.svelte.d.ts +6 -71
  143. package/package/components/util/placeholder.svelte +21 -0
  144. package/package/components/util/{portal.svelte.d.ts → placeholder.svelte.d.ts} +17 -25
  145. package/package/components/util/popup.svelte +65 -62
  146. package/package/components/util/popup.svelte.d.ts +89 -77
  147. package/package/services/{group.js → group.svelte.js} +11 -12
  148. package/package/services/{popup.js → popup.svelte.js} +6 -5
  149. package/package/typedefs.d.ts +545 -0
  150. package/package/typedefs.js +202 -0
  151. package/package.json +11 -18
  152. package/package/components/util/portal.svelte +0 -36
  153. /package/package/services/{events.d.ts → events.svelte.d.ts} +0 -0
  154. /package/package/services/{events.js → events.svelte.js} +0 -0
  155. /package/package/services/{group.d.ts → group.svelte.d.ts} +0 -0
  156. /package/package/services/{popup.d.ts → popup.svelte.d.ts} +0 -0
@@ -1,39 +1,53 @@
1
1
  export default Group;
2
- type Group = SvelteComponent<$$__sveltets_2_PropsWithChildren<{
3
- [x: string]: any;
4
- class?: string | undefined;
5
- disabled?: boolean | undefined;
6
- hidden?: boolean | undefined;
7
- }, {
8
- default: {};
9
- }>, {
2
+ type Group = SvelteComponent<Props & Record<string, any>, {
10
3
  [evt: string]: CustomEvent<any>;
11
- }, {
12
- default: {};
13
- }> & {
14
- $$bindings?: string | undefined;
4
+ }, {}> & {
5
+ $$bindings?: "" | undefined;
15
6
  };
16
7
  /**
17
8
  * A generic group layout.
18
9
  * @see https://w3c.github.io/aria/#group
19
10
  */
20
- declare const Group: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
21
- [x: string]: any;
11
+ declare const Group: $$__sveltets_2_IsomorphicComponent<{
12
+ /**
13
+ * - The `class` attribute on the wrapper element.
14
+ */
22
15
  class?: string | undefined;
23
- disabled?: boolean | undefined;
16
+ /**
17
+ * - Whether to hide the widget.
18
+ */
24
19
  hidden?: boolean | undefined;
25
- }, {
26
- default: {};
27
- }>, {
20
+ /**
21
+ * - Whether to disable the widget. An alias of the `aria-disabled`
22
+ * attribute.
23
+ */
24
+ disabled?: boolean | undefined;
25
+ /**
26
+ * - Primary slot content.
27
+ */
28
+ children?: import("svelte").Snippet<[]> | undefined;
29
+ } & Record<string, any>, {
28
30
  [evt: string]: CustomEvent<any>;
29
- }, {
30
- default: {};
31
- }, {}, string>;
32
- type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
33
- default: any;
34
- } ? Props extends Record<string, never> ? any : {
35
- children?: any;
36
- } : {});
31
+ }, {}, {}, "">;
32
+ type Props = {
33
+ /**
34
+ * - The `class` attribute on the wrapper element.
35
+ */
36
+ class?: string | undefined;
37
+ /**
38
+ * - Whether to hide the widget.
39
+ */
40
+ hidden?: boolean | undefined;
41
+ /**
42
+ * - Whether to disable the widget. An alias of the `aria-disabled`
43
+ * attribute.
44
+ */
45
+ disabled?: boolean | undefined;
46
+ /**
47
+ * - Primary slot content.
48
+ */
49
+ children?: import("svelte").Snippet<[]> | undefined;
50
+ };
37
51
  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> {
38
52
  new (options: import("svelte").ComponentConstructorOptions<Props>): import("svelte").SvelteComponent<Props, Events, Slots> & {
39
53
  $$bindings?: Bindings;
@@ -2,53 +2,36 @@
2
2
  @component
3
3
  A generic modal top-layer helper based on the HTML `<dialog>` element.
4
4
  -->
5
- <svelte:options accessors={true} />
6
-
7
5
  <script>
8
6
  import { sleep } from '@sveltia/utils/misc';
9
- import { createEventDispatcher, onMount } from 'svelte';
7
+ import { mount, onMount, unmount } from 'svelte';
8
+ import Placeholder from './placeholder.svelte';
10
9
 
11
10
  /**
12
- * The `class` attribute on the `<dialog>` element.
13
- * @type {string}
14
- */
15
- let className = '';
16
- export { className as class };
17
- /**
18
- * The `role` attribute on the `<dialog>` element.
19
- * @type {'dialog' | 'alertdialog' | 'none'}
20
- */
21
- export let role = 'dialog';
22
- /**
23
- * Whether to show the modal.
24
- * @type {boolean}
25
- */
26
- export let open = false;
27
- /**
28
- * Whether to show the backdrop.
29
- * @type {boolean}
30
- */
31
- export let showBackdrop = false;
32
- /**
33
- * Whether to close the modal when the backdrop (outside of the modal) is clicked.
34
- * @type {boolean}
35
- */
36
- export let lightDismiss = false;
37
- /**
38
- * Whether to close the modal when the Escape key is pressed.
39
- * @type {boolean}
40
- */
41
- export let escapeDismiss = true;
42
- /**
43
- * Whether to keep the content in the DOM tree when the modal is not displayed.
44
- * @type {boolean}
45
- */
46
- export let keepContent = false;
47
- /**
48
- * A reference to the `<dialog>` element.
49
- * @type {HTMLDialogElement | undefined}
11
+ * @type {import('../../typedefs').ModalProps & Record<string, any>}
50
12
  */
51
- export let dialog = undefined;
13
+ let {
14
+ /* eslint-disable prefer-const */
15
+ open = $bindable(false),
16
+ dialog = $bindable(),
17
+ class: className,
18
+ role = 'dialog',
19
+ showBackdrop = false,
20
+ lightDismiss = false,
21
+ escapeDismiss = true,
22
+ keepContent = false,
23
+ children,
24
+ extraContent,
25
+ onOpening,
26
+ onOpen,
27
+ onClosing,
28
+ onOk,
29
+ onCancel,
30
+ onClose,
31
+ ...restProps
32
+ /* eslint-enable prefer-const */
33
+ } = $props();
34
+
52
35
  /**
53
36
  * Close the modal.
54
37
  * @param {string} returnValue - Return value to be used for `<dialog>`.
@@ -62,10 +45,9 @@
62
45
  open = false;
63
46
  };
64
47
 
65
- const dispatch = createEventDispatcher();
66
- let setOpenClass = false;
67
- let setActiveClass = false;
68
- let showContent = false;
48
+ let setOpenClass = $state(false);
49
+ let setActiveClass = $state(false);
50
+ let showContent = $state(false);
69
51
 
70
52
  /**
71
53
  * Resolve once the transition is complete.
@@ -91,15 +73,14 @@
91
73
  * Show the modal.
92
74
  */
93
75
  const openDialog = async () => {
94
- if (!dialog) {
76
+ if (!dialog || dialog?.open) {
95
77
  return;
96
78
  }
97
79
 
98
- dispatch('opening');
99
- (document.querySelector('.sui.app-shell') ?? document.body).appendChild(dialog);
80
+ onOpening?.(new CustomEvent('Opening'));
100
81
  showContent = true;
101
82
  dialog.showModal();
102
- dispatch('open');
83
+ onOpen?.(new CustomEvent('Open'));
103
84
  await sleep(100);
104
85
  setOpenClass = true;
105
86
  await waitForTransition();
@@ -110,90 +91,93 @@
110
91
  * Hide the modal.
111
92
  */
112
93
  const closeDialog = async () => {
113
- if (!dialog) {
94
+ if (!dialog || !dialog.open) {
114
95
  return;
115
96
  }
116
97
 
117
- dispatch('closing');
98
+ onClosing?.(new CustomEvent('Closing'));
118
99
  setActiveClass = false;
119
100
  setOpenClass = false;
120
101
  await waitForTransition();
121
102
  showContent = false;
122
103
  dialog.close();
123
- dialog.remove();
124
104
 
125
- if (['ok', 'cancel'].includes(dialog.returnValue)) {
126
- dispatch(dialog?.returnValue);
105
+ if (dialog.returnValue === 'ok') {
106
+ onOk?.(new CustomEvent('Ok'));
107
+ onClose?.(new CustomEvent('Close', { detail: { returnValue: 'ok' } }));
108
+ }
109
+
110
+ if (dialog.returnValue === 'cancel') {
111
+ onCancel?.(new CustomEvent('Cancel'));
112
+ onClose?.(new CustomEvent('Close', { detail: { returnValue: 'cancel' } }));
127
113
  }
128
114
 
129
- dispatch('close', dialog.returnValue);
130
115
  dialog.returnValue = '';
131
116
  };
132
117
 
133
- /**
134
- * Toggle the modal.
135
- */
136
- const toggleDialog = () => {
137
- if (dialog) {
138
- if (open) {
139
- openDialog();
140
- } else {
141
- closeDialog();
142
- }
118
+ $effect(() => {
119
+ if (open) {
120
+ openDialog();
121
+ } else {
122
+ closeDialog();
143
123
  }
144
- };
145
-
146
- $: {
147
- void open;
148
- toggleDialog();
149
- }
124
+ });
150
125
 
151
126
  onMount(() => {
152
- dialog?.remove();
127
+ const placeholder = mount(Placeholder, {
128
+ target: document.querySelector('.sui.app-shell') ?? document.body,
129
+ // eslint-disable-next-line no-use-before-define
130
+ props: { children: dialogSnippet },
131
+ });
153
132
 
154
133
  // onUnmount
155
134
  return () => {
156
135
  dialog?.close();
157
- dialog?.remove();
136
+ unmount(placeholder);
158
137
  };
159
138
  });
160
139
  </script>
161
140
 
162
- <dialog
163
- {role}
164
- class="sui modal {className}"
165
- class:backdrop={showBackdrop}
166
- class:open={setOpenClass}
167
- class:active={setActiveClass}
168
- {...$$restProps}
169
- bind:this={dialog}
170
- on:click={({ target }) => {
171
- if (
172
- dialog &&
173
- lightDismiss &&
174
- /** @type {HTMLElement | undefined} */ (target)?.matches('dialog')
175
- ) {
176
- dialog.returnValue = 'cancel';
177
- open = false;
178
- }
179
- }}
180
- on:cancel|preventDefault={() => {
181
- // Escape key is pressed
182
- if (dialog && escapeDismiss) {
183
- dialog.returnValue = 'cancel';
184
- open = false;
185
- }
186
- }}
187
- >
188
- <slot name="extra-content" />
189
- {#if showContent || keepContent}
190
- <slot />
191
- {/if}
192
- </dialog>
141
+ {#snippet dialogSnippet()}
142
+ <dialog
143
+ bind:this={dialog}
144
+ {...restProps}
145
+ {role}
146
+ class="sui modal {className}"
147
+ class:backdrop={showBackdrop}
148
+ class:open={setOpenClass}
149
+ class:active={setActiveClass}
150
+ onclick={({ target }) => {
151
+ if (
152
+ dialog &&
153
+ lightDismiss &&
154
+ /** @type {HTMLElement | undefined} */ (target)?.matches('dialog')
155
+ ) {
156
+ dialog.returnValue = 'cancel';
157
+ open = false;
158
+ }
159
+ }}
160
+ oncancel={(event) => {
161
+ event.preventDefault();
162
+
163
+ // Escape key is pressed
164
+ if (dialog && escapeDismiss) {
165
+ dialog.returnValue = 'cancel';
166
+ open = false;
167
+ }
168
+ }}
169
+ >
170
+ {@render extraContent?.()}
171
+ {#if showContent || keepContent}
172
+ {@render children?.()}
173
+ {/if}
174
+ </dialog>
175
+ {/snippet}
193
176
 
194
177
  <style>dialog {
195
178
  position: fixed;
196
179
  inset: 0;
180
+ z-index: 9999999;
197
181
  display: flex;
198
182
  justify-content: center;
199
183
  align-items: center;
@@ -1,82 +1,17 @@
1
1
  export default Modal;
2
- type Modal = SvelteComponent<$$__sveltets_2_PropsWithChildren<{
3
- [x: string]: any;
4
- class?: string | undefined;
5
- close?: ((returnValue: string) => void) | undefined;
6
- dialog?: HTMLDialogElement | undefined;
7
- role?: "dialog" | "none" | "alertdialog" | undefined;
8
- open?: boolean | undefined;
9
- showBackdrop?: boolean | undefined;
10
- lightDismiss?: boolean | undefined;
11
- escapeDismiss?: boolean | undefined;
12
- keepContent?: boolean | undefined;
13
- }, {
14
- 'extra-content': {};
15
- default: {};
16
- }>, {
17
- opening: CustomEvent<any>;
18
- open: CustomEvent<any>;
19
- closing: CustomEvent<any>;
20
- close: CustomEvent<any>;
21
- } & {
2
+ type Modal = SvelteComponent<ModalProps & Record<string, any>, {
22
3
  [evt: string]: CustomEvent<any>;
23
- }, {
24
- 'extra-content': {};
25
- default: {};
26
- }> & {
27
- $$bindings?: string | undefined;
4
+ }, {}> & {
5
+ $$bindings?: "dialog" | "open" | undefined;
28
6
  } & {
29
- class: string;
30
- role: "dialog" | "none" | "alertdialog";
31
- open: boolean;
32
- showBackdrop: boolean;
33
- lightDismiss: boolean;
34
- escapeDismiss: boolean;
35
- keepContent: boolean;
36
- dialog: HTMLDialogElement | undefined;
37
7
  close: (returnValue: string) => void;
38
8
  };
39
9
  /** A generic modal top-layer helper based on the HTML `<dialog>` element. */
40
- declare const Modal: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
41
- [x: string]: any;
42
- class?: string | undefined;
43
- close?: ((returnValue: string) => void) | undefined;
44
- dialog?: HTMLDialogElement | undefined;
45
- role?: "dialog" | "none" | "alertdialog" | undefined;
46
- open?: boolean | undefined;
47
- showBackdrop?: boolean | undefined;
48
- lightDismiss?: boolean | undefined;
49
- escapeDismiss?: boolean | undefined;
50
- keepContent?: boolean | undefined;
51
- }, {
52
- 'extra-content': {};
53
- default: {};
54
- }>, {
55
- opening: CustomEvent<any>;
56
- open: CustomEvent<any>;
57
- closing: CustomEvent<any>;
58
- close: CustomEvent<any>;
59
- } & {
10
+ declare const Modal: $$__sveltets_2_IsomorphicComponent<import("../../typedefs").ModalProps & Record<string, any>, {
60
11
  [evt: string]: CustomEvent<any>;
61
- }, {
62
- 'extra-content': {};
63
- default: {};
64
- }, {
65
- class: string;
66
- role: "dialog" | "none" | "alertdialog";
67
- open: boolean;
68
- showBackdrop: boolean;
69
- lightDismiss: boolean;
70
- escapeDismiss: boolean;
71
- keepContent: boolean;
72
- dialog: HTMLDialogElement | undefined;
12
+ }, {}, {
73
13
  close: (returnValue: string) => void;
74
- }, string>;
75
- type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
76
- default: any;
77
- } ? Props extends Record<string, never> ? any : {
78
- children?: any;
79
- } : {});
14
+ }, "dialog" | "open">;
80
15
  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> {
81
16
  new (options: import("svelte").ComponentConstructorOptions<Props>): import("svelte").SvelteComponent<Props, Events, Slots> & {
82
17
  $$bindings?: Bindings;
@@ -0,0 +1,21 @@
1
+ <!--
2
+ @component
3
+ @see https://github.com/sveltejs/svelte/issues/3088
4
+ -->
5
+ <script>
6
+ /**
7
+ * @typedef {object} Props
8
+ * @property {import('svelte').Snippet} [children] - Primary slot content.
9
+ */
10
+
11
+ /**
12
+ * @type {Props & Record<string, any>}
13
+ */
14
+ let {
15
+ /* eslint-disable prefer-const */
16
+ children,
17
+ /* eslint-enable prefer-const */
18
+ } = $props();
19
+ </script>
20
+
21
+ {@render children?.()}
@@ -1,32 +1,24 @@
1
- export default Portal;
2
- type Portal = SvelteComponent<$$__sveltets_2_PropsWithChildren<{
3
- [x: string]: any;
4
- class?: string | undefined;
5
- }, {
6
- default: {};
7
- }>, {
1
+ export default Placeholder;
2
+ type Placeholder = SvelteComponent<Props & Record<string, any>, {
8
3
  [evt: string]: CustomEvent<any>;
9
- }, {
10
- default: {};
11
- }> & {
12
- $$bindings?: string | undefined;
4
+ }, {}> & {
5
+ $$bindings?: "" | undefined;
13
6
  };
14
7
  /** @see https://github.com/sveltejs/svelte/issues/3088 */
15
- declare const Portal: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
16
- [x: string]: any;
17
- class?: string | undefined;
18
- }, {
19
- default: {};
20
- }>, {
8
+ declare const Placeholder: $$__sveltets_2_IsomorphicComponent<{
9
+ /**
10
+ * - Primary slot content.
11
+ */
12
+ children?: import("svelte").Snippet<[]> | undefined;
13
+ } & Record<string, any>, {
21
14
  [evt: string]: CustomEvent<any>;
22
- }, {
23
- default: {};
24
- }, {}, string>;
25
- type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
26
- default: any;
27
- } ? Props extends Record<string, never> ? any : {
28
- children?: any;
29
- } : {});
15
+ }, {}, {}, "">;
16
+ type Props = {
17
+ /**
18
+ * - Primary slot content.
19
+ */
20
+ children?: import("svelte").Snippet<[]> | undefined;
21
+ };
30
22
  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> {
31
23
  new (options: import("svelte").ComponentConstructorOptions<Props>): import("svelte").SvelteComponent<Props, Events, Slots> & {
32
24
  $$bindings?: Bindings;