@svelte-atoms/core 1.0.0-alpha.30 → 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 (147) hide show
  1. package/README.md +853 -852
  2. package/dist/components/accordion/accordion-root.svelte +7 -3
  3. package/dist/components/accordion/accordion.stories.svelte +7 -82
  4. package/dist/components/accordion/item/accordion-item-body.svelte +44 -42
  5. package/dist/components/accordion/item/accordion-item-header.svelte +51 -50
  6. package/dist/components/accordion/item/accordion-item-indicator.svelte +51 -50
  7. package/dist/components/accordion/item/accordion-item-root.svelte +66 -65
  8. package/dist/components/accordion/item/bond.svelte.d.ts +2 -0
  9. package/dist/components/accordion/item/index.d.ts +3 -0
  10. package/dist/components/accordion/item/index.js +3 -0
  11. package/dist/components/accordion/item/motion.svelte.d.ts +15 -0
  12. package/dist/components/accordion/item/motion.svelte.js +30 -0
  13. package/dist/components/accordion/item/types.d.ts +7 -24
  14. package/dist/components/alert/alert-close-button.svelte +66 -70
  15. package/dist/components/alert/alert-description.svelte +42 -42
  16. package/dist/components/alert/alert-description.svelte.d.ts +3 -6
  17. package/dist/components/alert/alert-root.svelte +68 -103
  18. package/dist/components/alert/alert-root.svelte.d.ts +2 -2
  19. package/dist/components/alert/alert.stories.svelte +400 -400
  20. package/dist/components/alert/bond.svelte.d.ts +0 -13
  21. package/dist/components/alert/bond.svelte.js +0 -32
  22. package/dist/components/alert/types.d.ts +8 -32
  23. package/dist/components/atom/html-atom.svelte +261 -261
  24. package/dist/components/avatar/avatar.stories.svelte +22 -22
  25. package/dist/components/badge/badge.stories.svelte +12 -12
  26. package/dist/components/badge/badge.svelte +19 -19
  27. package/dist/components/breadcrumb/breadcrumb.stories.svelte +5 -5
  28. package/dist/components/button/button.stories.svelte +27 -27
  29. package/dist/components/calendar/calendar-day.svelte +101 -96
  30. package/dist/components/calendar/calendar.stories.svelte +26 -26
  31. package/dist/components/card/card-body.svelte +39 -39
  32. package/dist/components/card/card-footer.svelte +41 -41
  33. package/dist/components/card/card-root.svelte +91 -91
  34. package/dist/components/card/card.stories.svelte +133 -133
  35. package/dist/components/checkbox/checkbox.stories.svelte +22 -22
  36. package/dist/components/checkbox/checkbox.svelte +6 -2
  37. package/dist/components/collapsible/collapsible.stories.svelte +172 -172
  38. package/dist/components/combobox/atoms.d.ts +1 -1
  39. package/dist/components/combobox/atoms.js +1 -1
  40. package/dist/components/combobox/combobox-root.svelte +65 -65
  41. package/dist/components/combobox/compobox.stories.svelte +51 -51
  42. package/dist/components/combobox/index.d.ts +1 -0
  43. package/dist/components/container/container.stories.svelte +20 -20
  44. package/dist/components/container/container.svelte.d.ts +1 -1
  45. package/dist/components/datagrid/datagrid.stories.svelte +72 -72
  46. package/dist/components/datagrid/tr/bond.svelte.d.ts +4 -2
  47. package/dist/components/datagrid/tr/bond.svelte.js +9 -7
  48. package/dist/components/datagrid/tr/datagrid-tr.svelte +90 -88
  49. package/dist/components/date-picker/date-picker-calendar.svelte +67 -67
  50. package/dist/components/date-picker/date-picker-root.svelte +95 -95
  51. package/dist/components/date-picker/date-picker.stories.svelte +35 -35
  52. package/dist/components/dialog/bond.svelte.d.ts +13 -3
  53. package/dist/components/dialog/bond.svelte.js +66 -5
  54. package/dist/components/dialog/dialog-content.svelte +44 -62
  55. package/dist/components/dialog/dialog-root.svelte +91 -110
  56. package/dist/components/dialog/dialog.stories.svelte +64 -64
  57. package/dist/components/dialog/motion.svelte.d.ts +13 -0
  58. package/dist/components/dialog/motion.svelte.js +44 -0
  59. package/dist/components/drawer/attachments.svelte.d.ts +1 -1
  60. package/dist/components/drawer/attachments.svelte.js +1 -3
  61. package/dist/components/drawer/bond.svelte.d.ts +24 -5
  62. package/dist/components/drawer/bond.svelte.js +77 -11
  63. package/dist/components/drawer/drawer-content.svelte +6 -14
  64. package/dist/components/drawer/drawer.stories.svelte +27 -95
  65. package/dist/components/drawer/index.d.ts +2 -0
  66. package/dist/components/drawer/index.js +2 -0
  67. package/dist/components/drawer/motion.d.ts +15 -0
  68. package/dist/components/drawer/motion.js +28 -0
  69. package/dist/components/dropdown/atoms.d.ts +1 -1
  70. package/dist/components/dropdown/atoms.js +1 -1
  71. package/dist/components/dropdown/bond.svelte.d.ts +5 -1
  72. package/dist/components/dropdown/dropdown-root.svelte +59 -59
  73. package/dist/components/dropdown/dropdown.stories.svelte +80 -80
  74. package/dist/components/dropdown/index.d.ts +1 -0
  75. package/dist/components/form/form.stories.svelte +96 -96
  76. package/dist/components/image/image.stories.svelte +20 -20
  77. package/dist/components/input/input.stories.svelte +35 -35
  78. package/dist/components/label/label.stories.svelte +15 -15
  79. package/dist/components/lazy/lazy.stories.svelte +28 -28
  80. package/dist/components/link/link.stories.svelte +15 -15
  81. package/dist/components/list/list-item.svelte +20 -20
  82. package/dist/components/menu/atoms.d.ts +1 -0
  83. package/dist/components/menu/atoms.js +1 -0
  84. package/dist/components/menu/index.d.ts +2 -1
  85. package/dist/components/menu/index.js +1 -1
  86. package/dist/components/menu/menu-item.svelte +69 -51
  87. package/dist/components/menu/menu-item.svelte.d.ts +1 -0
  88. package/dist/components/menu/menu.stories.svelte +33 -33
  89. package/dist/components/popover/bond.svelte.d.ts +20 -7
  90. package/dist/components/popover/bond.svelte.js +80 -27
  91. package/dist/components/popover/motion.d.ts +6 -0
  92. package/dist/components/popover/motion.js +56 -0
  93. package/dist/components/popover/popover-arrow.svelte +111 -111
  94. package/dist/components/popover/popover-content.svelte +34 -72
  95. package/dist/components/popover/popover-indicator.svelte +44 -44
  96. package/dist/components/popover/popover-root.svelte +48 -48
  97. package/dist/components/popover/popover.stories.svelte +3 -3
  98. package/dist/components/popover/types.d.ts +9 -7
  99. package/dist/components/portal/active-portal.svelte +29 -22
  100. package/dist/components/portal/active-portal.svelte.d.ts +2 -9
  101. package/dist/components/portal/portal-root.svelte +76 -83
  102. package/dist/components/portal/portal-root.svelte.d.ts +4 -6
  103. package/dist/components/portal/teleport.svelte +49 -50
  104. package/dist/components/portal/teleport.svelte.d.ts +3 -4
  105. package/dist/components/qr-code/qr-code.stories.svelte +18 -18
  106. package/dist/components/radio/radio-group.stories.svelte +41 -41
  107. package/dist/components/radio/radio.stories.svelte +17 -17
  108. package/dist/components/radio/radio.svelte +1 -1
  109. package/dist/components/radio/types.d.ts +98 -0
  110. package/dist/components/radio/types.js +2 -0
  111. package/dist/components/root/root.svelte +13 -30
  112. package/dist/components/root/root.svelte.d.ts +1 -1
  113. package/dist/components/scrollable/scrollable-root.svelte.d.ts +2 -2
  114. package/dist/components/scrollable/scrollable.stories.svelte +116 -116
  115. package/dist/components/sidebar/index.d.ts +2 -0
  116. package/dist/components/sidebar/index.js +2 -0
  117. package/dist/components/sidebar/motion.svelte.d.ts +11 -0
  118. package/dist/components/sidebar/motion.svelte.js +16 -0
  119. package/dist/components/sidebar/sidebar-content.svelte +3 -13
  120. package/dist/components/sidebar/sidebar-root.svelte +39 -39
  121. package/dist/components/sidebar/sidebar.stories.svelte +43 -43
  122. package/dist/components/sidebar/types.d.ts +2 -12
  123. package/dist/components/tabs/tabs.stories.svelte +56 -56
  124. package/dist/components/textarea/atoms.d.ts +1 -0
  125. package/dist/components/textarea/atoms.js +1 -0
  126. package/dist/components/textarea/textarea-input.svelte +9 -6
  127. package/dist/components/textarea/textarea-root.svelte +9 -9
  128. package/dist/components/textarea/textarea-root.svelte.d.ts +2 -0
  129. package/dist/components/tooltip/tooltip-trigger.svelte +2 -2
  130. package/dist/components/tooltip/tooltip-trigger.svelte.d.ts +1 -0
  131. package/dist/components/tooltip/tooltip.stories.svelte +32 -32
  132. package/dist/components/tree/tree.stories.svelte +142 -142
  133. package/dist/icons/icon-copy.svelte +6 -0
  134. package/dist/{components/radio/types.svelte.d.ts → icons/icon-copy.svelte.d.ts} +3 -3
  135. package/dist/utils/markdown-to-llm.d.ts +28 -0
  136. package/dist/utils/markdown-to-llm.js +76 -0
  137. package/package.json +1 -2
  138. package/dist/components/radio/types.svelte +0 -0
  139. package/llm/composition.md +0 -395
  140. package/llm/crafting.md +0 -838
  141. package/llm/motion.md +0 -970
  142. package/llm/philosophy.md +0 -23
  143. package/llm/preset-variant-integration.md +0 -516
  144. package/llm/preset.md +0 -383
  145. package/llm/styling.md +0 -216
  146. package/llm/usage.md +0 -46
  147. package/llm/variants.md +0 -1259
@@ -1,133 +1,133 @@
1
- <script module lang="ts">
2
- import { defineMeta } from '@storybook/addon-svelte-csf';
3
-
4
- const { Story } = defineMeta({
5
- title: 'Atoms/Card',
6
- args: {}
7
- });
8
- </script>
9
-
10
- <script lang="ts">
11
- import { Card } from '.';
12
- </script>
13
-
14
- <!-- Default Card -->
15
- <Story name="Default">
16
- <Card.Root class="max-w-sm">
17
- <Card.Header>
18
- <Card.Title>Card Title</Card.Title>
19
- <Card.Description
20
- >This is a card description that provides additional context.</Card.Description
21
- >
22
- </Card.Header>
23
- <Card.Body>
24
- <p>
25
- This is the main content area of the card. You can put any content here including text,
26
- images, or other components.
27
- </p>
28
- </Card.Body>
29
- <Card.Footer>
30
- <button
31
- class="rounded bg-blue-500 px-3 py-1 text-sm text-white hover:bg-blue-600 active:bg-blue-700"
32
- >Action</button
33
- >
34
- <button
35
- class="border-border hover:bg-foreground/5 active:bg-foreground/10 rounded border px-3 py-1 text-sm"
36
- >Cancel</button
37
- >
38
- </Card.Footer>
39
- </Card.Root>
40
- </Story>
41
-
42
- <!-- Card with Media -->
43
- <Story name="With Media">
44
- <Card.Root class="max-w-sm">
45
- <Card.Media>
46
- <img
47
- src="https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=400&h=200&fit=crop"
48
- alt="Beautiful landscape"
49
- class="h-48 w-full object-cover"
50
- />
51
- </Card.Media>
52
- <Card.Header>
53
- <Card.Title>Beautiful Landscape</Card.Title>
54
- <Card.Subtitle>Photography</Card.Subtitle>
55
- </Card.Header>
56
- <Card.Body>
57
- <p>A stunning landscape photograph capturing the beauty of nature.</p>
58
- </Card.Body>
59
- <Card.Footer>
60
- <span class="text-sm text-gray-500">Posted 2 hours ago</span>
61
- </Card.Footer>
62
- </Card.Root>
63
- </Story>
64
-
65
- <!-- Clickable Card -->
66
- <Story name="Clickable">
67
- <Card.Root
68
- class="hover:bg-card/90 active:bg-card/80 max-w-sm cursor-pointer pb-4"
69
- onclick={() => alert('Card clicked!')}
70
- >
71
- <Card.Header>
72
- <Card.Title>Clickable Card</Card.Title>
73
- <Card.Description
74
- >This card is clickable and will show an alert when clicked.</Card.Description
75
- >
76
- </Card.Header>
77
- <Card.Body>
78
- <p>Click anywhere on this card to trigger the action.</p>
79
- </Card.Body>
80
- </Card.Root>
81
- </Story>
82
-
83
- <!-- Card Variants -->
84
- <Story name="Variants">
85
- <div class="grid grid-cols-2 gap-4">
86
- <Card.Root>
87
- <Card.Header>
88
- <Card.Title>Default Card</Card.Title>
89
- <Card.Description>Default variant with border and shadow.</Card.Description>
90
- </Card.Header>
91
- </Card.Root>
92
-
93
- <Card.Root class="bg-transparent shadow-none">
94
- <Card.Header>
95
- <Card.Title>Outlined Card</Card.Title>
96
- <Card.Description>Outlined variant with border only.</Card.Description>
97
- </Card.Header>
98
- </Card.Root>
99
-
100
- <Card.Root class="shadow-lg">
101
- <Card.Header>
102
- <Card.Title>Elevated Card</Card.Title>
103
- <Card.Description>Elevated variant with enhanced shadow.</Card.Description>
104
- </Card.Header>
105
- </Card.Root>
106
-
107
- <Card.Root class="bg-background border-none">
108
- <Card.Header>
109
- <Card.Title>Filled Card</Card.Title>
110
- <Card.Description>Filled variant with background color.</Card.Description>
111
- </Card.Header>
112
- </Card.Root>
113
- </div>
114
- </Story>
115
-
116
- <!-- Disabled Card -->
117
- <Story
118
- name="Disabled"
119
- args={{
120
- clickable: true,
121
- disabled: true
122
- }}
123
- >
124
- <Card.Root class="max-w-sm pb-4 opacity-50">
125
- <Card.Header>
126
- <Card.Title>Disabled Card</Card.Title>
127
- <Card.Description>This card is disabled and cannot be interacted with.</Card.Description>
128
- </Card.Header>
129
- <Card.Body>
130
- <p>The card appears dimmed and is not clickable.</p>
131
- </Card.Body>
132
- </Card.Root>
133
- </Story>
1
+ <script module lang="ts">
2
+ import { defineMeta } from '@storybook/addon-svelte-csf';
3
+
4
+ const { Story } = defineMeta({
5
+ title: 'Atoms/Card',
6
+ args: {}
7
+ });
8
+ </script>
9
+
10
+ <script lang="ts">
11
+ import { Card } from '.';
12
+ </script>
13
+
14
+ <!-- Default Card -->
15
+ <Story name="Default">
16
+ <Card.Root class="max-w-sm">
17
+ <Card.Header>
18
+ <Card.Title>Card Title</Card.Title>
19
+ <Card.Description
20
+ >This is a card description that provides additional context.</Card.Description
21
+ >
22
+ </Card.Header>
23
+ <Card.Body>
24
+ <p>
25
+ This is the main content area of the card. You can put any content here including text,
26
+ images, or other components.
27
+ </p>
28
+ </Card.Body>
29
+ <Card.Footer>
30
+ <button
31
+ class="rounded bg-blue-500 px-3 py-1 text-sm text-white hover:bg-blue-600 active:bg-blue-700"
32
+ >Action</button
33
+ >
34
+ <button
35
+ class="border-border hover:bg-foreground/5 active:bg-foreground/10 rounded border px-3 py-1 text-sm"
36
+ >Cancel</button
37
+ >
38
+ </Card.Footer>
39
+ </Card.Root>
40
+ </Story>
41
+
42
+ <!-- Card with Media -->
43
+ <Story name="With Media">
44
+ <Card.Root class="max-w-sm">
45
+ <Card.Media>
46
+ <img
47
+ src="https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=400&h=200&fit=crop"
48
+ alt="Beautiful landscape"
49
+ class="h-48 w-full object-cover"
50
+ />
51
+ </Card.Media>
52
+ <Card.Header>
53
+ <Card.Title>Beautiful Landscape</Card.Title>
54
+ <Card.Subtitle>Photography</Card.Subtitle>
55
+ </Card.Header>
56
+ <Card.Body>
57
+ <p>A stunning landscape photograph capturing the beauty of nature.</p>
58
+ </Card.Body>
59
+ <Card.Footer>
60
+ <span class="text-sm text-gray-500">Posted 2 hours ago</span>
61
+ </Card.Footer>
62
+ </Card.Root>
63
+ </Story>
64
+
65
+ <!-- Clickable Card -->
66
+ <Story name="Clickable">
67
+ <Card.Root
68
+ class="hover:bg-card/90 active:bg-card/80 max-w-sm cursor-pointer pb-4"
69
+ onclick={() => alert('Card clicked!')}
70
+ >
71
+ <Card.Header>
72
+ <Card.Title>Clickable Card</Card.Title>
73
+ <Card.Description
74
+ >This card is clickable and will show an alert when clicked.</Card.Description
75
+ >
76
+ </Card.Header>
77
+ <Card.Body>
78
+ <p>Click anywhere on this card to trigger the action.</p>
79
+ </Card.Body>
80
+ </Card.Root>
81
+ </Story>
82
+
83
+ <!-- Card Variants -->
84
+ <Story name="Variants">
85
+ <div class="grid grid-cols-2 gap-4">
86
+ <Card.Root>
87
+ <Card.Header>
88
+ <Card.Title>Default Card</Card.Title>
89
+ <Card.Description>Default variant with border and shadow.</Card.Description>
90
+ </Card.Header>
91
+ </Card.Root>
92
+
93
+ <Card.Root class="bg-transparent shadow-none">
94
+ <Card.Header>
95
+ <Card.Title>Outlined Card</Card.Title>
96
+ <Card.Description>Outlined variant with border only.</Card.Description>
97
+ </Card.Header>
98
+ </Card.Root>
99
+
100
+ <Card.Root class="shadow-lg">
101
+ <Card.Header>
102
+ <Card.Title>Elevated Card</Card.Title>
103
+ <Card.Description>Elevated variant with enhanced shadow.</Card.Description>
104
+ </Card.Header>
105
+ </Card.Root>
106
+
107
+ <Card.Root class="bg-background border-none">
108
+ <Card.Header>
109
+ <Card.Title>Filled Card</Card.Title>
110
+ <Card.Description>Filled variant with background color.</Card.Description>
111
+ </Card.Header>
112
+ </Card.Root>
113
+ </div>
114
+ </Story>
115
+
116
+ <!-- Disabled Card -->
117
+ <Story
118
+ name="Disabled"
119
+ args={{
120
+ clickable: true,
121
+ disabled: true
122
+ }}
123
+ >
124
+ <Card.Root class="max-w-sm pb-4 opacity-50">
125
+ <Card.Header>
126
+ <Card.Title>Disabled Card</Card.Title>
127
+ <Card.Description>This card is disabled and cannot be interacted with.</Card.Description>
128
+ </Card.Header>
129
+ <Card.Body>
130
+ <p>The card appears dimmed and is not clickable.</p>
131
+ </Card.Body>
132
+ </Card.Root>
133
+ </Story>
@@ -1,22 +1,22 @@
1
- <script module>
2
- import { defineMeta } from '@storybook/addon-svelte-csf';
3
- import { default as CheckboxCmp } from './checkbox.svelte';
4
-
5
- const { Story } = defineMeta({
6
- title: 'ATOMS/Checkbox'
7
- });
8
- </script>
9
-
10
- <script>
11
- let checked = $state(false);
12
- </script>
13
-
14
- <Story name="Checkbox">
15
- {#snippet children({ args })}
16
- <div class="flex gap-2">
17
- <CheckboxCmp bind:checked />
18
-
19
- <CheckboxCmp indeterminate />
20
- </div>
21
- {/snippet}
22
- </Story>
1
+ <script module>
2
+ import { defineMeta } from '@storybook/addon-svelte-csf';
3
+ import { default as CheckboxCmp } from './checkbox.svelte';
4
+
5
+ const { Story } = defineMeta({
6
+ title: 'ATOMS/Checkbox'
7
+ });
8
+ </script>
9
+
10
+ <script>
11
+ let checked = $state(false);
12
+ </script>
13
+
14
+ <Story name="Checkbox">
15
+ {#snippet children({ args })}
16
+ <div class="flex gap-2">
17
+ <CheckboxCmp bind:checked />
18
+
19
+ <CheckboxCmp indeterminate />
20
+ </div>
21
+ {/snippet}
22
+ </Story>
@@ -15,6 +15,7 @@
15
15
  indeterminate = $bindable(false),
16
16
  value = $bindable(undefined),
17
17
  group = $bindable([]),
18
+ disabled = false,
18
19
  id,
19
20
  name,
20
21
  checkedContent,
@@ -54,6 +55,8 @@
54
55
  }
55
56
 
56
57
  function handleClick(ev: MouseEvent) {
58
+ if (disabled) return;
59
+
57
60
  onclick?.(ev);
58
61
 
59
62
  if (ev.defaultPrevented) {
@@ -100,11 +103,12 @@
100
103
  bind:checked
101
104
  bind:group
102
105
  bind:indeterminate
103
- type="checkbox"
104
- class="checkbox-input pointer-events-none"
105
106
  {value}
106
107
  {id}
107
108
  {name}
109
+ {disabled}
110
+ type="checkbox"
111
+ class="checkbox-input pointer-events-none"
108
112
  onchange={handleChange}
109
113
  oninput={handleInput}
110
114
  {onblur}