@svelte-atoms/core 1.0.0-alpha.29 → 1.0.0-alpha.31

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 (176) hide show
  1. package/README.md +3 -2
  2. package/dist/attachments/clickout.svelte.d.ts +1 -1
  3. package/dist/attachments/clickout.svelte.js +2 -2
  4. package/dist/components/accordion/accordion-root.svelte +65 -61
  5. package/dist/components/accordion/accordion-root.svelte.d.ts +1 -1
  6. package/dist/components/accordion/accordion.stories.svelte +70 -134
  7. package/dist/components/accordion/item/accordion-item-body.svelte +44 -42
  8. package/dist/components/accordion/item/accordion-item-header.svelte +51 -50
  9. package/dist/components/accordion/item/accordion-item-indicator.svelte +51 -50
  10. package/dist/components/accordion/item/accordion-item-root.svelte +66 -65
  11. package/dist/components/accordion/item/bond.svelte.d.ts +2 -0
  12. package/dist/components/accordion/item/index.d.ts +3 -0
  13. package/dist/components/accordion/item/index.js +3 -0
  14. package/dist/components/accordion/item/motion.svelte.d.ts +15 -0
  15. package/dist/components/accordion/item/motion.svelte.js +30 -0
  16. package/dist/components/accordion/item/types.d.ts +7 -24
  17. package/dist/components/alert/alert-close-button.svelte +66 -70
  18. package/dist/components/alert/alert-description.svelte +42 -42
  19. package/dist/components/alert/alert-description.svelte.d.ts +3 -6
  20. package/dist/components/alert/alert-root.svelte +68 -103
  21. package/dist/components/alert/alert-root.svelte.d.ts +2 -2
  22. package/dist/components/alert/alert.stories.svelte +10 -11
  23. package/dist/components/alert/bond.svelte.d.ts +0 -13
  24. package/dist/components/alert/bond.svelte.js +0 -32
  25. package/dist/components/alert/types.d.ts +8 -32
  26. package/dist/components/atom/html-atom.svelte +261 -207
  27. package/dist/components/avatar/avatar.stories.svelte +8 -13
  28. package/dist/components/badge/badge.stories.svelte +1 -6
  29. package/dist/components/badge/badge.svelte +1 -1
  30. package/dist/components/breadcrumb/breadcrumb.stories.svelte +16 -21
  31. package/dist/components/button/button.stories.svelte +1 -34
  32. package/dist/components/calendar/calendar-day.svelte +9 -4
  33. package/dist/components/calendar/calendar-header.svelte +29 -29
  34. package/dist/components/calendar/calendar-root.svelte +206 -206
  35. package/dist/components/calendar/calendar.stories.svelte +26 -31
  36. package/dist/components/card/card-body.svelte +1 -1
  37. package/dist/components/card/card-footer.svelte +1 -1
  38. package/dist/components/card/card-root.svelte +1 -1
  39. package/dist/components/card/card.stories.svelte +92 -104
  40. package/dist/components/checkbox/checkbox.stories.svelte +4 -9
  41. package/dist/components/checkbox/checkbox.svelte +159 -157
  42. package/dist/components/collapsible/collapsible.stories.svelte +2 -3
  43. package/dist/components/combobox/atoms.d.ts +1 -1
  44. package/dist/components/combobox/atoms.js +1 -1
  45. package/dist/components/combobox/combobox-root.svelte +1 -1
  46. package/dist/components/combobox/compobox.stories.svelte +19 -22
  47. package/dist/components/combobox/index.d.ts +1 -0
  48. package/dist/components/container/container.stories.svelte +8 -11
  49. package/dist/components/container/container.svelte.d.ts +1 -1
  50. package/dist/components/datagrid/datagrid-root.svelte +59 -59
  51. package/dist/components/datagrid/datagrid.css +5 -5
  52. package/dist/components/datagrid/datagrid.stories.svelte +47 -50
  53. package/dist/components/datagrid/tr/bond.svelte.d.ts +4 -2
  54. package/dist/components/datagrid/tr/bond.svelte.js +9 -7
  55. package/dist/components/datagrid/tr/datagrid-tr.svelte +90 -88
  56. package/dist/components/date-picker/date-picker-calendar.svelte +2 -2
  57. package/dist/components/date-picker/date-picker-header.svelte +100 -100
  58. package/dist/components/date-picker/date-picker-months.svelte +142 -142
  59. package/dist/components/date-picker/date-picker-root.svelte +95 -95
  60. package/dist/components/date-picker/date-picker-years.svelte +205 -205
  61. package/dist/components/date-picker/date-picker.stories.svelte +35 -42
  62. package/dist/components/dialog/bond.svelte.d.ts +13 -3
  63. package/dist/components/dialog/bond.svelte.js +66 -5
  64. package/dist/components/dialog/dialog-content.svelte +2 -20
  65. package/dist/components/dialog/dialog-root.svelte +91 -110
  66. package/dist/components/dialog/dialog.stories.svelte +34 -37
  67. package/dist/components/dialog/motion.svelte.d.ts +13 -0
  68. package/dist/components/dialog/motion.svelte.js +44 -0
  69. package/dist/components/drawer/attachments.svelte.d.ts +1 -1
  70. package/dist/components/drawer/attachments.svelte.js +7 -10
  71. package/dist/components/drawer/bond.svelte.d.ts +24 -5
  72. package/dist/components/drawer/bond.svelte.js +77 -11
  73. package/dist/components/drawer/drawer-content.svelte +49 -42
  74. package/dist/components/drawer/drawer.stories.svelte +144 -224
  75. package/dist/components/drawer/index.d.ts +2 -0
  76. package/dist/components/drawer/index.js +2 -0
  77. package/dist/components/drawer/motion.d.ts +15 -0
  78. package/dist/components/drawer/motion.js +28 -0
  79. package/dist/components/dropdown/atoms.d.ts +1 -1
  80. package/dist/components/dropdown/atoms.js +1 -1
  81. package/dist/components/dropdown/bond.svelte.d.ts +5 -1
  82. package/dist/components/dropdown/dropdown-root.svelte +1 -1
  83. package/dist/components/dropdown/dropdown.stories.svelte +38 -41
  84. package/dist/components/dropdown/index.d.ts +1 -0
  85. package/dist/components/form/form.stories.svelte +58 -61
  86. package/dist/components/image/image.stories.svelte +9 -12
  87. package/dist/components/input/input.stories.svelte +11 -14
  88. package/dist/components/label/label.stories.svelte +1 -12
  89. package/dist/components/label/label.stories.svelte.d.ts +24 -4
  90. package/dist/components/lazy/lazy.stories.svelte +28 -35
  91. package/dist/components/lazy/lazy.svelte +28 -28
  92. package/dist/components/link/link.stories.svelte +1 -12
  93. package/dist/components/link/link.stories.svelte.d.ts +24 -4
  94. package/dist/components/list/list-item.svelte +20 -20
  95. package/dist/components/menu/atoms.d.ts +1 -0
  96. package/dist/components/menu/atoms.js +1 -0
  97. package/dist/components/menu/index.d.ts +2 -1
  98. package/dist/components/menu/index.js +1 -1
  99. package/dist/components/menu/menu-item.svelte +69 -51
  100. package/dist/components/menu/menu-item.svelte.d.ts +1 -0
  101. package/dist/components/menu/menu-list.svelte +40 -40
  102. package/dist/components/menu/menu.stories.svelte +9 -12
  103. package/dist/components/popover/bond.svelte.d.ts +20 -7
  104. package/dist/components/popover/bond.svelte.js +104 -45
  105. package/dist/components/popover/motion.d.ts +6 -0
  106. package/dist/components/popover/motion.js +56 -0
  107. package/dist/components/popover/popover-arrow.svelte +4 -4
  108. package/dist/components/popover/popover-content.svelte +137 -178
  109. package/dist/components/popover/popover-indicator.svelte +2 -1
  110. package/dist/components/popover/popover-root.svelte +1 -1
  111. package/dist/components/popover/popover.stories.svelte +49 -52
  112. package/dist/components/popover/types.d.ts +9 -7
  113. package/dist/components/portal/active-portal.svelte +29 -22
  114. package/dist/components/portal/active-portal.svelte.d.ts +2 -9
  115. package/dist/components/portal/portal-root.svelte +76 -83
  116. package/dist/components/portal/portal-root.svelte.d.ts +4 -6
  117. package/dist/components/portal/teleport.svelte +49 -50
  118. package/dist/components/portal/teleport.svelte.d.ts +3 -4
  119. package/dist/components/qr-code/qr-code.stories.svelte +18 -27
  120. package/dist/components/qr-code/qr-code.svelte +75 -75
  121. package/dist/components/radio/radio-group.stories.svelte +21 -30
  122. package/dist/components/radio/radio.stories.svelte +1 -10
  123. package/dist/components/radio/radio.svelte +109 -109
  124. package/dist/components/radio/types.d.ts +98 -0
  125. package/dist/components/radio/types.js +2 -0
  126. package/dist/components/root/root.svelte +104 -121
  127. package/dist/components/scrollable/scrollable-root.svelte.d.ts +2 -2
  128. package/dist/components/scrollable/scrollable.stories.svelte +95 -105
  129. package/dist/components/sidebar/index.d.ts +2 -0
  130. package/dist/components/sidebar/index.js +2 -0
  131. package/dist/components/sidebar/motion.svelte.d.ts +11 -0
  132. package/dist/components/sidebar/motion.svelte.js +16 -0
  133. package/dist/components/sidebar/sidebar-content.svelte +3 -2
  134. package/dist/components/sidebar/sidebar-root.svelte +39 -41
  135. package/dist/components/sidebar/sidebar.stories.svelte +43 -54
  136. package/dist/components/sidebar/types.d.ts +3 -12
  137. package/dist/components/tabs/tab/bond.svelte.d.ts +4 -1
  138. package/dist/components/tabs/tab/bond.svelte.js +4 -1
  139. package/dist/components/tabs/tabs.stories.svelte +31 -34
  140. package/dist/components/textarea/atoms.d.ts +1 -0
  141. package/dist/components/textarea/atoms.js +1 -0
  142. package/dist/components/textarea/textarea-input.svelte +9 -6
  143. package/dist/components/textarea/textarea-root.svelte +9 -9
  144. package/dist/components/textarea/textarea-root.svelte.d.ts +2 -0
  145. package/dist/components/tooltip/tooltip-trigger.svelte +39 -37
  146. package/dist/components/tooltip/tooltip-trigger.svelte.d.ts +1 -0
  147. package/dist/components/tooltip/tooltip.stories.svelte +7 -10
  148. package/dist/components/tree/tree.stories.svelte +102 -94
  149. package/dist/context/preset.svelte.d.ts +3 -3
  150. package/dist/icons/icon-copy.svelte +6 -0
  151. package/dist/{components/radio/types.svelte.d.ts → icons/icon-copy.svelte.d.ts} +3 -3
  152. package/dist/utils/function.d.ts +2 -0
  153. package/dist/utils/function.js +6 -0
  154. package/dist/utils/markdown-to-llm.d.ts +28 -0
  155. package/dist/utils/markdown-to-llm.js +76 -0
  156. package/package.json +6 -10
  157. package/dist/actions/animation.svelte.d.ts +0 -6
  158. package/dist/actions/animation.svelte.js +0 -14
  159. package/dist/actions/clickout.svelte.d.ts +0 -2
  160. package/dist/actions/clickout.svelte.js +0 -15
  161. package/dist/actions/popover.svelte.d.ts +0 -19
  162. package/dist/actions/popover.svelte.js +0 -81
  163. package/dist/actions/portal.svelte.d.ts +0 -8
  164. package/dist/actions/portal.svelte.js +0 -32
  165. package/dist/attachments/gsap.svelte.d.ts +0 -2
  166. package/dist/attachments/gsap.svelte.js +0 -26
  167. package/dist/components/radio/types.svelte +0 -0
  168. package/llm/composition.md +0 -395
  169. package/llm/crafting.md +0 -838
  170. package/llm/motion.md +0 -970
  171. package/llm/philosophy.md +0 -23
  172. package/llm/preset-variant-integration.md +0 -516
  173. package/llm/preset.md +0 -383
  174. package/llm/styling.md +0 -216
  175. package/llm/usage.md +0 -46
  176. package/llm/variants.md +0 -1259
@@ -1,103 +1,68 @@
1
- <script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
2
- import { defineProperty, defineState } from '../../utils';
3
- import { HtmlAtom, type Base } from '../atom';
4
- import { AlertBond, AlertBondState, type AlertBondProps } from './bond.svelte';
5
- import type { AlertRootProps } from './types';
6
- import './alert.css';
7
-
8
- let {
9
- class: klass = '',
10
- preset = 'alert',
11
- dismissible = false,
12
- dismissed = $bindable(false),
13
- disabled = false,
14
- extend = {},
15
- factory = _factory,
16
- children = undefined,
17
- onmount = undefined,
18
- ondestroy = undefined,
19
- animate = undefined,
20
- enter = undefined,
21
- exit = undefined,
22
- initial = undefined,
23
- ...restProps
24
- }: AlertRootProps<E, B> = $props();
25
-
26
- const bondProps = defineState<AlertBondProps>(
27
- [
28
- defineProperty(
29
- 'dismissed',
30
- () => dismissed,
31
- (v) => {
32
- dismissed = v;
33
- }
34
- )
35
- ],
36
- () => ({ dismissible, disabled, extend })
37
- );
38
- const bond = factory(bondProps).share();
39
-
40
- const rootProps = $derived({
41
- ...bond.root(),
42
- ...restProps
43
- });
44
-
45
- // Auto-hide logic for dismissed alerts
46
- $effect(() => {
47
- if (dismissed && bond.elements.root) {
48
- // Add smooth transition out animation
49
- const element = bond.elements.root;
50
- element.style.transition = 'opacity 0.3s ease-out, transform 0.3s ease-out';
51
- element.style.opacity = '0';
52
- element.style.transform = 'translateY(-10px)';
53
-
54
- // Optional: Remove from DOM after animation
55
- setTimeout(() => {
56
- if (element?.parentNode) {
57
- element.style.display = 'none';
58
- }
59
- }, 300);
60
- } else if (!dismissed && bond.elements.root) {
61
- // Restore visibility
62
- const element = bond.elements.root;
63
- element.style.display = '';
64
- element.style.opacity = '1';
65
- element.style.transform = 'translateY(0)';
66
- }
67
- });
68
-
69
- function _factory(props: typeof bondProps) {
70
- const bondState = new AlertBondState(() => props);
71
- return new AlertBond(bondState);
72
- }
73
-
74
- export function getBond() {
75
- return bond;
76
- }
77
- </script>
78
-
79
- <HtmlAtom
80
- {preset}
81
- class={[
82
- 'alert border-border relative flex gap-1 rounded-md border p-4 transition-all duration-200',
83
- // Base styles
84
- 'bg-background text-foreground',
85
- // State styles
86
- {
87
- 'pointer-events-none opacity-60': disabled,
88
- 'pointer-events-none opacity-0': dismissed
89
- },
90
- '$preset',
91
- klass
92
- ]}
93
- {bond}
94
- onmount={onmount?.bind(bond.state)}
95
- ondestroy={ondestroy?.bind(bond.state)}
96
- animate={animate?.bind(bond.state)}
97
- enter={enter?.bind(bond.state)}
98
- exit={exit?.bind(bond.state)}
99
- initial={initial?.bind(bond.state)}
100
- {...rootProps}
101
- >
102
- {@render children?.({ alert: bond })}
103
- </HtmlAtom>
1
+ <script lang="ts" generics="E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base">
2
+ import { defineProperty, defineState } from '../../utils';
3
+ import { HtmlAtom, type Base } from '../atom';
4
+ import { AlertBond, AlertBondState, type AlertBondProps } from './bond.svelte';
5
+ import type { AlertRootProps } from './types';
6
+ import './alert.css';
7
+
8
+ let {
9
+ class: klass = '',
10
+ preset = 'alert',
11
+ disabled = false,
12
+ extend = {},
13
+ factory = _factory,
14
+ children = undefined,
15
+ onmount = undefined,
16
+ ondestroy = undefined,
17
+ animate = undefined,
18
+ enter = undefined,
19
+ exit = undefined,
20
+ initial = undefined,
21
+ ...restProps
22
+ }: AlertRootProps<E, B> = $props();
23
+
24
+ const bondProps = defineState<AlertBondProps>(
25
+ [defineProperty('disabled', () => disabled)],
26
+ () => ({ disabled, extend })
27
+ );
28
+ const bond = factory(bondProps).share();
29
+
30
+ const rootProps = $derived({
31
+ ...bond.root(),
32
+ ...restProps
33
+ });
34
+
35
+ function _factory(props: typeof bondProps) {
36
+ const bondState = new AlertBondState(() => props);
37
+ return new AlertBond(bondState);
38
+ }
39
+
40
+ export function getBond() {
41
+ return bond;
42
+ }
43
+ </script>
44
+
45
+ <HtmlAtom
46
+ {preset}
47
+ class={[
48
+ 'alert border-border relative flex gap-1 rounded-md border p-4 transition-all duration-200',
49
+ // Base styles
50
+ 'bg-background text-foreground',
51
+ // State styles
52
+ {
53
+ 'pointer-events-none opacity-50': disabled
54
+ },
55
+ '$preset',
56
+ klass
57
+ ]}
58
+ {bond}
59
+ onmount={onmount?.bind(bond.state)}
60
+ ondestroy={ondestroy?.bind(bond.state)}
61
+ animate={animate?.bind(bond.state)}
62
+ enter={enter?.bind(bond.state)}
63
+ exit={exit?.bind(bond.state)}
64
+ initial={initial?.bind(bond.state)}
65
+ {...rootProps}
66
+ >
67
+ {@render children?.({ alert: bond })}
68
+ </HtmlAtom>
@@ -7,7 +7,7 @@ declare function $$render<E extends keyof HTMLElementTagNameMap = 'div', B exten
7
7
  exports: {
8
8
  getBond: () => AlertBond<AlertBondState<AlertBondProps>>;
9
9
  };
10
- bindings: "dismissed";
10
+ bindings: "";
11
11
  slots: {};
12
12
  events: {};
13
13
  };
@@ -15,7 +15,7 @@ declare class __sveltets_Render<E extends keyof HTMLElementTagNameMap = 'div', B
15
15
  props(): ReturnType<typeof $$render<E, B>>['props'];
16
16
  events(): ReturnType<typeof $$render<E, B>>['events'];
17
17
  slots(): ReturnType<typeof $$render<E, B>>['slots'];
18
- bindings(): "dismissed";
18
+ bindings(): "";
19
19
  exports(): {
20
20
  getBond: () => AlertBond<AlertBondState<AlertBondProps>>;
21
21
  };
@@ -1,6 +1,5 @@
1
1
  <script module>
2
2
  import { defineMeta } from '@storybook/addon-svelte-csf';
3
- import Root from '../root/root.svelte';
4
3
  import { Alert as AAlert } from './index';
5
4
  import { Button } from '../button';
6
5
  import { Icon } from '../icon';
@@ -44,7 +43,7 @@
44
43
  {/snippet}
45
44
 
46
45
  <Story name="All Variants">
47
- <Root class="space-y-6 p-8">
46
+ <div class="space-y-6 p-8">
48
47
  <div class="space-y-4">
49
48
  <h2 class="text-2xl font-bold">Alert Variants</h2>
50
49
 
@@ -113,11 +112,11 @@
113
112
  <AAlert.Content></AAlert.Content>
114
113
  </AAlert.Root>
115
114
  </div>
116
- </Root>
115
+ </div>
117
116
  </Story>
118
117
 
119
118
  <Story name="Dismissible">
120
- <Root class="space-y-6 p-8">
119
+ <div class="space-y-6 p-8">
121
120
  <div class="space-y-4">
122
121
  <h2 class="text-2xl font-bold">Dismissible Alerts</h2>
123
122
 
@@ -172,11 +171,11 @@
172
171
  </AAlert.CloseButton>
173
172
  </AAlert.Root>
174
173
  </div>
175
- </Root>
174
+ </div>
176
175
  </Story>
177
176
 
178
177
  <Story name="With Actions">
179
- <Root class="space-y-6 p-8">
178
+ <div class="space-y-6 p-8">
180
179
  <div class="space-y-4">
181
180
  <h2 class="text-2xl font-bold">Alerts with Action Buttons</h2>
182
181
 
@@ -243,11 +242,11 @@
243
242
  <AAlert.Content></AAlert.Content>
244
243
  </AAlert.Root>
245
244
  </div>
246
- </Root>
245
+ </div>
247
246
  </Story>
248
247
 
249
248
  <Story name="Minimal">
250
- <Root class="space-y-6 p-8">
249
+ <div class="space-y-6 p-8">
251
250
  <div class="space-y-4">
252
251
  <h2 class="text-2xl font-bold">Minimal Alerts</h2>
253
252
 
@@ -268,11 +267,11 @@
268
267
  <AAlert.Content>Connection lost. Attempting to reconnect...</AAlert.Content>
269
268
  </AAlert.Root>
270
269
  </div>
271
- </Root>
270
+ </div>
272
271
  </Story>
273
272
 
274
273
  <Story name="Real-World Examples">
275
- <Root class="space-y-6 p-8">
274
+ <div class="space-y-6 p-8">
276
275
  <div class="space-y-4">
277
276
  <h2 class="text-2xl font-bold">Real-World Use Cases</h2>
278
277
 
@@ -397,5 +396,5 @@
397
396
  </AAlert.Actions>
398
397
  </AAlert.Root>
399
398
  </div>
400
- </Root>
399
+ </div>
401
400
  </Story>
@@ -1,8 +1,5 @@
1
1
  import { Bond, BondState, type BondStateProps } from '../../shared/bond.svelte';
2
2
  export type AlertBondProps = BondStateProps & {
3
- variant?: 'info' | 'success' | 'warning' | 'error';
4
- dismissible?: boolean;
5
- dismissed?: boolean;
6
3
  disabled?: boolean;
7
4
  extend?: Record<string, unknown>;
8
5
  };
@@ -25,9 +22,6 @@ export declare class AlertBond<State extends AlertBondState<AlertBondProps> = Al
25
22
  'aria-labelledby': string;
26
23
  'aria-describedby': string;
27
24
  'aria-disabled': boolean;
28
- 'data-variant': "success" | "error" | "info" | "warning";
29
- 'data-dismissed': boolean;
30
- 'data-dismissible': boolean;
31
25
  };
32
26
  icon(props?: Record<string, unknown>): {
33
27
  id: string;
@@ -49,17 +43,10 @@ export declare class AlertBond<State extends AlertBondState<AlertBondProps> = Al
49
43
  id: string;
50
44
  type: string;
51
45
  'aria-label': string;
52
- 'aria-expanded': boolean;
53
- onclick: () => void;
54
46
  };
55
47
  static get(): AlertBond | undefined;
56
48
  static set(bond: AlertBond): AlertBond;
57
49
  }
58
50
  export declare class AlertBondState<Props extends AlertBondProps> extends BondState<Props> {
59
51
  constructor(props: () => Props);
60
- dismiss(): void;
61
- restore(): void;
62
- get isDismissed(): boolean;
63
- get isDismissible(): boolean;
64
- get variant(): "success" | "error" | "info" | "warning";
65
52
  }
@@ -10,8 +10,6 @@ export class AlertBond extends Bond {
10
10
  return AlertBond.set(this);
11
11
  }
12
12
  root(props = {}) {
13
- const variant = this.state.props.variant ?? 'info';
14
- const dismissed = this.state.props.dismissed ?? false;
15
13
  const disabled = this.state.props.disabled ?? false;
16
14
  return {
17
15
  id: `alert-root-${this.id}`,
@@ -19,9 +17,6 @@ export class AlertBond extends Bond {
19
17
  'aria-labelledby': `alert-title-${this.id}`,
20
18
  'aria-describedby': `alert-description-${this.id}`,
21
19
  'aria-disabled': disabled,
22
- 'data-variant': variant,
23
- 'data-dismissed': dismissed,
24
- 'data-dismissible': this.state.props.dismissible ?? false,
25
20
  ...props,
26
21
  [createAttachmentKey()]: (node) => {
27
22
  this.elements.root = node;
@@ -75,13 +70,10 @@ export class AlertBond extends Bond {
75
70
  };
76
71
  }
77
72
  closeButton(props = {}) {
78
- const dismissed = this.state.props.dismissed ?? false;
79
73
  return {
80
74
  id: `alert-close-button-${this.id}`,
81
75
  type: 'button',
82
76
  'aria-label': 'Dismiss alert',
83
- 'aria-expanded': !dismissed,
84
- onclick: () => this.state.dismiss(),
85
77
  ...props,
86
78
  [createAttachmentKey()]: (node) => {
87
79
  this.elements.closeButton = node;
@@ -99,28 +91,4 @@ export class AlertBondState extends BondState {
99
91
  constructor(props) {
100
92
  super(props);
101
93
  }
102
- dismiss() {
103
- if (this.props.dismissible && !this.props.disabled) {
104
- // Update the dismissed state through props if mutable
105
- const props = this.props;
106
- if ('dismissed' in props) {
107
- props.dismissed = true;
108
- }
109
- }
110
- }
111
- restore() {
112
- const props = this.props;
113
- if ('dismissed' in props) {
114
- props.dismissed = false;
115
- }
116
- }
117
- get isDismissed() {
118
- return this.props.dismissed ?? false;
119
- }
120
- get isDismissible() {
121
- return this.props.dismissible ?? false;
122
- }
123
- get variant() {
124
- return this.props.variant ?? 'info';
125
- }
126
94
  }
@@ -1,6 +1,6 @@
1
1
  import type { Snippet } from 'svelte';
2
2
  import type { HtmlAtomProps, Base } from '../atom';
3
- import type { Factory, Override } from '../../types';
3
+ import type { Factory } from '../../types';
4
4
  import type { AlertBond } from './bond.svelte';
5
5
  /**
6
6
  * Extend this interface to add custom alert root properties in your application.
@@ -37,7 +37,7 @@ export interface AlertActionsExtendProps {
37
37
  */
38
38
  export interface AlertCloseButtonExtendProps {
39
39
  }
40
- export interface AlertRootProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends Omit<HtmlAtomProps<E, B>, 'children'>, AlertRootExtendProps {
40
+ export interface AlertRootProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends HtmlAtomProps<E, B>, AlertRootExtendProps {
41
41
  dismissible?: boolean;
42
42
  dismissed?: boolean;
43
43
  disabled?: boolean;
@@ -47,39 +47,15 @@ export interface AlertRootProps<E extends keyof HTMLElementTagNameMap = 'div', B
47
47
  alert: AlertBond;
48
48
  }]>;
49
49
  }
50
- export interface AlertContentProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends Override<HtmlAtomProps<E, B>, {
51
- children?: Snippet<[{
52
- alert: AlertBond;
53
- }]>;
54
- }>, AlertContentExtendProps {
50
+ export interface AlertContentProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends HtmlAtomProps<E, B>, AlertContentExtendProps {
55
51
  }
56
- export interface AlertTitleProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends Override<HtmlAtomProps<E, B>, {
57
- children?: Snippet<[{
58
- alert: AlertBond;
59
- }]>;
60
- }>, AlertTitleExtendProps {
52
+ export interface AlertTitleProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends HtmlAtomProps<E, B>, AlertTitleExtendProps {
61
53
  }
62
- export interface AlertDescriptionProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends Override<HtmlAtomProps<E, B>, {
63
- children?: Snippet<[{
64
- alert: AlertBond;
65
- }]>;
66
- }>, AlertDescriptionExtendProps {
54
+ export interface AlertDescriptionProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends HtmlAtomProps<E, B>, AlertDescriptionExtendProps {
67
55
  }
68
- export interface AlertIconProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends Override<HtmlAtomProps<E, B>, {
69
- children?: Snippet<[{
70
- alert: AlertBond;
71
- }]>;
72
- }>, AlertIconExtendProps {
56
+ export interface AlertIconProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends HtmlAtomProps<E, B>, AlertIconExtendProps {
73
57
  }
74
- export interface AlertActionsProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends Override<HtmlAtomProps<E, B>, {
75
- children?: Snippet<[{
76
- alert: AlertBond;
77
- }]>;
78
- }>, AlertActionsExtendProps {
58
+ export interface AlertActionsProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends HtmlAtomProps<E, B>, AlertActionsExtendProps {
79
59
  }
80
- export interface AlertCloseButtonProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends Override<HtmlAtomProps<E, B>, {
81
- children?: Snippet<[{
82
- alert: AlertBond;
83
- }]>;
84
- }>, AlertCloseButtonExtendProps {
60
+ export interface AlertCloseButtonProps<E extends keyof HTMLElementTagNameMap = 'div', B extends Base = Base> extends HtmlAtomProps<E, B>, AlertCloseButtonExtendProps {
85
61
  }