@reshape-biotech/design-system 0.0.47 → 0.0.48

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 (281) hide show
  1. package/dist/app.css +115 -0
  2. package/dist/components/activity/Activity.stories.svelte +100 -0
  3. package/dist/components/activity/Activity.stories.svelte.d.ts +19 -0
  4. package/dist/components/activity/Activity.svelte +80 -0
  5. package/dist/components/activity/Activity.svelte.d.ts +18 -0
  6. package/dist/components/activity/index.d.ts +1 -0
  7. package/dist/components/activity/index.js +1 -0
  8. package/dist/components/avatar/Avatar.svelte +63 -0
  9. package/dist/components/avatar/Avatar.svelte.d.ts +8 -0
  10. package/dist/components/avatar/index.d.ts +1 -0
  11. package/dist/components/avatar/index.js +1 -0
  12. package/dist/components/banner/Banner.stories.svelte +129 -0
  13. package/dist/components/banner/Banner.stories.svelte.d.ts +19 -0
  14. package/dist/components/banner/Banner.svelte +59 -0
  15. package/dist/components/banner/Banner.svelte.d.ts +11 -0
  16. package/dist/components/banner/index.d.ts +1 -0
  17. package/dist/components/banner/index.js +1 -0
  18. package/dist/components/button/Button.stories.svelte +37 -0
  19. package/dist/components/button/Button.stories.svelte.d.ts +19 -0
  20. package/dist/components/button/Button.svelte +263 -0
  21. package/dist/components/button/Button.svelte.d.ts +20 -0
  22. package/dist/components/button/index.d.ts +1 -0
  23. package/dist/components/button/index.js +1 -0
  24. package/dist/components/collapsible/Collapsible.stories.svelte +40 -0
  25. package/dist/components/collapsible/Collapsible.stories.svelte.d.ts +19 -0
  26. package/dist/components/collapsible/components/collapsible-content.svelte +26 -0
  27. package/dist/components/collapsible/components/collapsible-content.svelte.d.ts +10 -0
  28. package/dist/components/collapsible/components/collapsible-trigger.svelte +36 -0
  29. package/dist/components/collapsible/components/collapsible-trigger.svelte.d.ts +4 -0
  30. package/dist/components/collapsible/index.d.ts +5 -0
  31. package/dist/components/collapsible/index.js +4 -0
  32. package/dist/components/collapsible/types.d.ts +9 -0
  33. package/dist/components/collapsible/types.js +1 -0
  34. package/dist/components/combobox/Combobox.stories.svelte +119 -0
  35. package/dist/components/combobox/Combobox.stories.svelte.d.ts +19 -0
  36. package/dist/components/combobox/components/combobox-add.svelte +30 -0
  37. package/dist/components/combobox/components/combobox-add.svelte.d.ts +8 -0
  38. package/dist/components/combobox/components/combobox-content.svelte +137 -0
  39. package/dist/components/combobox/components/combobox-content.svelte.d.ts +4 -0
  40. package/dist/components/combobox/components/combobox-indicator.svelte +5 -0
  41. package/dist/components/combobox/components/combobox-indicator.svelte.d.ts +18 -0
  42. package/dist/components/combobox/index.d.ts +14 -0
  43. package/dist/components/combobox/index.js +15 -0
  44. package/dist/components/combobox/types.d.ts +20 -0
  45. package/dist/components/combobox/types.js +1 -0
  46. package/dist/components/datepicker/DatePicker.svelte +344 -0
  47. package/dist/components/datepicker/DatePicker.svelte.d.ts +8 -0
  48. package/dist/components/datepicker/index.d.ts +1 -0
  49. package/dist/components/datepicker/index.js +1 -0
  50. package/dist/components/divider/Divider.stories.svelte +14 -0
  51. package/dist/components/divider/Divider.stories.svelte.d.ts +27 -0
  52. package/dist/components/divider/Divider.svelte +9 -0
  53. package/dist/components/divider/Divider.svelte.d.ts +6 -0
  54. package/dist/components/divider/index.d.ts +1 -0
  55. package/dist/components/divider/index.js +1 -0
  56. package/dist/components/drawer/Drawer.stories.svelte +64 -0
  57. package/dist/components/drawer/Drawer.stories.svelte.d.ts +27 -0
  58. package/dist/components/drawer/Drawer.svelte +41 -0
  59. package/dist/components/drawer/Drawer.svelte.d.ts +12 -0
  60. package/dist/components/drawer/DrawerLabel.svelte +62 -0
  61. package/dist/components/drawer/DrawerLabel.svelte.d.ts +9 -0
  62. package/dist/components/drawer/index.d.ts +1 -0
  63. package/dist/components/drawer/index.js +1 -0
  64. package/dist/components/dropdown/Dropdown.stories.svelte +236 -0
  65. package/dist/components/dropdown/Dropdown.stories.svelte.d.ts +27 -0
  66. package/dist/components/dropdown/Dropdown.svelte +69 -0
  67. package/dist/components/dropdown/Dropdown.svelte.d.ts +26 -0
  68. package/dist/components/dropdown/components/DropdownContent.svelte +29 -0
  69. package/dist/components/dropdown/components/DropdownContent.svelte.d.ts +10 -0
  70. package/dist/components/dropdown/components/DropdownMenu.svelte +23 -0
  71. package/dist/components/dropdown/components/DropdownMenu.svelte.d.ts +8 -0
  72. package/dist/components/dropdown/components/DropdownTrigger.svelte +46 -0
  73. package/dist/components/dropdown/components/DropdownTrigger.svelte.d.ts +13 -0
  74. package/dist/components/dropdown/components/OutlinedButton.svelte +61 -0
  75. package/dist/components/dropdown/components/OutlinedButton.svelte.d.ts +8 -0
  76. package/dist/components/dropdown/index.d.ts +1 -0
  77. package/dist/components/dropdown/index.js +1 -0
  78. package/dist/components/empty-content/EmptyContent.svelte +19 -0
  79. package/dist/components/empty-content/EmptyContent.svelte.d.ts +8 -0
  80. package/dist/components/graphs/chart/Chart.stories.svelte +128 -0
  81. package/dist/components/graphs/chart/Chart.stories.svelte.d.ts +19 -0
  82. package/dist/components/graphs/chart/Chart.svelte +145 -0
  83. package/dist/components/graphs/chart/Chart.svelte.d.ts +17 -0
  84. package/dist/components/graphs/index.d.ts +4 -0
  85. package/dist/components/graphs/index.js +4 -0
  86. package/dist/components/graphs/line/LineChart.stories.svelte +73 -0
  87. package/dist/components/graphs/line/LineChart.stories.svelte.d.ts +19 -0
  88. package/dist/components/graphs/line/LineChart.svelte +102 -0
  89. package/dist/components/graphs/line/LineChart.svelte.d.ts +18 -0
  90. package/dist/components/graphs/multiline/MultiLineChart.stories.svelte +77 -0
  91. package/dist/components/graphs/multiline/MultiLineChart.stories.svelte.d.ts +19 -0
  92. package/dist/components/graphs/multiline/MultiLineChart.svelte +108 -0
  93. package/dist/components/graphs/multiline/MultiLineChart.svelte.d.ts +22 -0
  94. package/dist/components/graphs/scatterplot/Scatterplot.stories.svelte +78 -0
  95. package/dist/components/graphs/scatterplot/Scatterplot.stories.svelte.d.ts +19 -0
  96. package/dist/components/graphs/scatterplot/Scatterplot.svelte +67 -0
  97. package/dist/components/graphs/scatterplot/Scatterplot.svelte.d.ts +16 -0
  98. package/dist/components/icon-button/IconButton.stories.svelte +82 -0
  99. package/dist/components/icon-button/IconButton.stories.svelte.d.ts +19 -0
  100. package/dist/components/icon-button/IconButton.svelte +152 -0
  101. package/dist/components/icon-button/IconButton.svelte.d.ts +16 -0
  102. package/dist/components/icon-button/index.d.ts +1 -0
  103. package/dist/components/icon-button/index.js +1 -0
  104. package/dist/components/icons/AnalysisIcon.stories.svelte +38 -0
  105. package/dist/components/icons/AnalysisIcon.stories.svelte.d.ts +27 -0
  106. package/dist/components/icons/AnalysisIcon.svelte +110 -0
  107. package/dist/components/icons/AnalysisIcon.svelte.d.ts +10 -0
  108. package/dist/components/icons/Icon.svelte +23 -0
  109. package/dist/components/icons/Icon.svelte.d.ts +4 -0
  110. package/dist/components/icons/custom/Halo.svelte +32 -0
  111. package/dist/components/icons/custom/Halo.svelte.d.ts +26 -0
  112. package/dist/components/icons/custom/Well.svelte +26 -0
  113. package/dist/components/icons/custom/Well.svelte.d.ts +26 -0
  114. package/dist/components/icons/index.d.ts +17 -0
  115. package/dist/components/icons/index.js +21 -0
  116. package/dist/components/icons/types.d.ts +0 -0
  117. package/dist/components/icons/types.js +1 -0
  118. package/dist/components/image/Image.svelte +55 -0
  119. package/dist/components/image/Image.svelte.d.ts +7 -0
  120. package/dist/components/image/index.d.ts +1 -0
  121. package/dist/components/image/index.js +1 -0
  122. package/dist/components/input/Input.stories.svelte +87 -0
  123. package/dist/components/input/Input.stories.svelte.d.ts +27 -0
  124. package/dist/components/input/Input.svelte +204 -0
  125. package/dist/components/input/Input.svelte.d.ts +24 -0
  126. package/dist/components/input/index.d.ts +1 -0
  127. package/dist/components/input/index.js +1 -0
  128. package/dist/components/list/List.stories.svelte +97 -0
  129. package/dist/components/list/List.stories.svelte.d.ts +19 -0
  130. package/dist/components/list/List.svelte +69 -0
  131. package/dist/components/list/List.svelte.d.ts +24 -0
  132. package/dist/components/list/index.d.ts +1 -0
  133. package/dist/components/list/index.js +1 -0
  134. package/dist/components/logo/Logo.stories.svelte +21 -0
  135. package/dist/components/logo/Logo.stories.svelte.d.ts +27 -0
  136. package/dist/components/logo/Logo.svelte +39 -0
  137. package/dist/components/logo/Logo.svelte.d.ts +7 -0
  138. package/dist/components/logo/index.d.ts +1 -0
  139. package/dist/components/logo/index.js +1 -0
  140. package/dist/components/markdown/Markdown.stories.svelte +41 -0
  141. package/dist/components/markdown/Markdown.stories.svelte.d.ts +27 -0
  142. package/dist/components/markdown/Markdown.svelte +12 -0
  143. package/dist/components/markdown/Markdown.svelte.d.ts +6 -0
  144. package/dist/components/markdown/index.d.ts +1 -0
  145. package/dist/components/markdown/index.js +1 -0
  146. package/dist/components/modal/Modal.stories.svelte +39 -0
  147. package/dist/components/modal/Modal.stories.svelte.d.ts +19 -0
  148. package/dist/components/modal/Modal.svelte +76 -0
  149. package/dist/components/modal/Modal.svelte.d.ts +17 -0
  150. package/dist/components/modal/index.d.ts +1 -0
  151. package/dist/components/modal/index.js +1 -0
  152. package/dist/components/notification-popup/NotificationPopup.stories.svelte +27 -0
  153. package/dist/components/notification-popup/NotificationPopup.stories.svelte.d.ts +27 -0
  154. package/dist/components/notification-popup/NotificationPopup.svelte +33 -0
  155. package/dist/components/notification-popup/NotificationPopup.svelte.d.ts +11 -0
  156. package/dist/components/notification-popup/index.d.ts +1 -0
  157. package/dist/components/notification-popup/index.js +1 -0
  158. package/dist/components/pill/Pill.svelte +39 -0
  159. package/dist/components/pill/Pill.svelte.d.ts +10 -0
  160. package/dist/components/pill/index.d.ts +1 -0
  161. package/dist/components/pill/index.js +1 -0
  162. package/dist/components/progress-circle/ProgressCircle.svelte +79 -0
  163. package/dist/components/progress-circle/ProgressCircle.svelte.d.ts +7 -0
  164. package/dist/components/progress-circle/index.d.ts +1 -0
  165. package/dist/components/progress-circle/index.js +1 -0
  166. package/dist/components/segmented-control-buttons/ControlButton.svelte +57 -0
  167. package/dist/components/segmented-control-buttons/ControlButton.svelte.d.ts +14 -0
  168. package/dist/components/segmented-control-buttons/SegmentedControlButtons.stories.svelte +45 -0
  169. package/dist/components/segmented-control-buttons/SegmentedControlButtons.stories.svelte.d.ts +19 -0
  170. package/dist/components/segmented-control-buttons/SegmentedControlButtons.svelte +21 -0
  171. package/dist/components/segmented-control-buttons/SegmentedControlButtons.svelte.d.ts +12 -0
  172. package/dist/components/segmented-control-buttons/index.d.ts +1 -0
  173. package/dist/components/segmented-control-buttons/index.js +1 -0
  174. package/dist/components/select/Select.stories.svelte +113 -0
  175. package/dist/components/select/Select.stories.svelte.d.ts +19 -0
  176. package/dist/components/select/Select.svelte +141 -0
  177. package/dist/components/select/Select.svelte.d.ts +60 -0
  178. package/dist/components/select/index.d.ts +7 -0
  179. package/dist/components/select/index.js +1 -0
  180. package/dist/components/skeleton-loader/SkeletonLoader.stories.svelte +45 -0
  181. package/dist/components/skeleton-loader/SkeletonLoader.stories.svelte.d.ts +27 -0
  182. package/dist/components/skeleton-loader/SkeletonLoader.svelte +17 -0
  183. package/dist/components/skeleton-loader/SkeletonLoader.svelte.d.ts +14 -0
  184. package/dist/components/skeleton-loader/StatcardSkeleton.svelte +14 -0
  185. package/dist/components/skeleton-loader/StatcardSkeleton.svelte.d.ts +18 -0
  186. package/dist/components/skeleton-loader/components/Skeleton.svelte +14 -0
  187. package/dist/components/skeleton-loader/components/Skeleton.svelte.d.ts +8 -0
  188. package/dist/components/skeleton-loader/components/SkeletonImage.svelte +14 -0
  189. package/dist/components/skeleton-loader/components/SkeletonImage.svelte.d.ts +26 -0
  190. package/dist/components/skeleton-loader/index.d.ts +3 -0
  191. package/dist/components/skeleton-loader/index.js +3 -0
  192. package/dist/components/slider/Slider.stories.svelte +37 -0
  193. package/dist/components/slider/Slider.stories.svelte.d.ts +27 -0
  194. package/dist/components/slider/Slider.svelte +126 -0
  195. package/dist/components/slider/Slider.svelte.d.ts +31 -0
  196. package/dist/components/slider/index.d.ts +1 -0
  197. package/dist/components/slider/index.js +1 -0
  198. package/dist/components/spinner/Spinner.svelte +27 -0
  199. package/dist/components/spinner/Spinner.svelte.d.ts +6 -0
  200. package/dist/components/spinner/index.d.ts +1 -0
  201. package/dist/components/spinner/index.js +1 -0
  202. package/dist/components/stat-card/StatCard.stories.svelte +32 -0
  203. package/dist/components/stat-card/StatCard.stories.svelte.d.ts +27 -0
  204. package/dist/components/stat-card/StatCard.svelte +52 -0
  205. package/dist/components/stat-card/StatCard.svelte.d.ts +10 -0
  206. package/dist/components/stat-card/index.d.ts +1 -0
  207. package/dist/components/stat-card/index.js +1 -0
  208. package/dist/components/status-badge/StatusBadge.stories.svelte +401 -0
  209. package/dist/components/status-badge/StatusBadge.stories.svelte.d.ts +19 -0
  210. package/dist/components/status-badge/StatusBadge.svelte +147 -0
  211. package/dist/components/status-badge/StatusBadge.svelte.d.ts +12 -0
  212. package/dist/components/status-badge/index.d.ts +1 -0
  213. package/dist/components/status-badge/index.js +1 -0
  214. package/dist/components/table/Table.stories.svelte +90 -0
  215. package/dist/components/table/Table.stories.svelte.d.ts +24 -0
  216. package/dist/components/table/Table.svelte +47 -0
  217. package/dist/components/table/Table.svelte.d.ts +21 -0
  218. package/dist/components/table/components/TBody.svelte +14 -0
  219. package/dist/components/table/components/TBody.svelte.d.ts +8 -0
  220. package/dist/components/table/components/THead.svelte +14 -0
  221. package/dist/components/table/components/THead.svelte.d.ts +8 -0
  222. package/dist/components/table/components/Td.svelte +14 -0
  223. package/dist/components/table/components/Td.svelte.d.ts +8 -0
  224. package/dist/components/table/components/Th.svelte +15 -0
  225. package/dist/components/table/components/Th.svelte.d.ts +9 -0
  226. package/dist/components/table/components/Tr.svelte +31 -0
  227. package/dist/components/table/components/Tr.svelte.d.ts +8 -0
  228. package/dist/components/table/index.d.ts +1 -0
  229. package/dist/components/table/index.js +1 -0
  230. package/dist/components/tabs/Tabs.stories.svelte +28 -0
  231. package/dist/components/tabs/Tabs.stories.svelte.d.ts +27 -0
  232. package/dist/components/tabs/Tabs.svelte +13 -0
  233. package/dist/components/tabs/Tabs.svelte.d.ts +14 -0
  234. package/dist/components/tabs/components/Content.svelte +15 -0
  235. package/dist/components/tabs/components/Content.svelte.d.ts +9 -0
  236. package/dist/components/tabs/components/Tab.svelte +21 -0
  237. package/dist/components/tabs/components/Tab.svelte.d.ts +10 -0
  238. package/dist/components/tabs/components/Tabs.svelte +14 -0
  239. package/dist/components/tabs/components/Tabs.svelte.d.ts +8 -0
  240. package/dist/components/tabs/index.d.ts +1 -0
  241. package/dist/components/tabs/index.js +1 -0
  242. package/dist/components/tag/Tag.stories.svelte +51 -0
  243. package/dist/components/tag/Tag.stories.svelte.d.ts +19 -0
  244. package/dist/components/tag/Tag.svelte +102 -0
  245. package/dist/components/tag/Tag.svelte.d.ts +12 -0
  246. package/dist/components/tag/index.d.ts +1 -0
  247. package/dist/components/tag/index.js +1 -0
  248. package/dist/components/toggle/Toggle.stories.svelte +15 -0
  249. package/dist/components/toggle/Toggle.stories.svelte.d.ts +27 -0
  250. package/dist/components/toggle/Toggle.svelte +73 -0
  251. package/dist/components/toggle/Toggle.svelte.d.ts +8 -0
  252. package/dist/components/toggle/index.d.ts +1 -0
  253. package/dist/components/toggle/index.js +1 -0
  254. package/dist/components/tooltip/Tooltip.stories.svelte +126 -0
  255. package/dist/components/tooltip/Tooltip.stories.svelte.d.ts +27 -0
  256. package/dist/components/tooltip/Tooltip.svelte +49 -0
  257. package/dist/components/tooltip/Tooltip.svelte.d.ts +13 -0
  258. package/dist/components/tooltip/index.d.ts +1 -0
  259. package/dist/components/tooltip/index.js +1 -0
  260. package/dist/fonts/MDSystemMono-Regular.woff +0 -0
  261. package/dist/fonts/MDSystemMono-Regular.woff2 +0 -0
  262. package/dist/fonts/afAnotherSans-Medium.woff2 +0 -0
  263. package/dist/fonts/afAnotherSans-Regular.woff2 +0 -0
  264. package/dist/fonts/afAnotherSans-SemiBold.woff2 +0 -0
  265. package/dist/fonts/afAnotherSans.woff2 +0 -0
  266. package/dist/fonts/index.d.ts +4 -0
  267. package/dist/fonts/index.js +6 -0
  268. package/dist/index.d.ts +37 -0
  269. package/dist/index.js +39 -68464
  270. package/dist/tailwind-safelist.d.ts +27 -0
  271. package/dist/tailwind-safelist.js +475 -0
  272. package/dist/tailwind.d.ts +11 -0
  273. package/dist/tailwind.js +1 -0
  274. package/dist/tailwind.preset.d.ts +344 -0
  275. package/dist/tailwind.preset.js +55 -0
  276. package/dist/tokens.d.ts +598 -0
  277. package/dist/tokens.js +285 -0
  278. package/dist/types/fonts.d.ts +4 -0
  279. package/package.json +2 -1
  280. package/dist/index.css +0 -1
  281. package/dist/index.umd.cjs +0 -148
@@ -0,0 +1,137 @@
1
+ <script lang="ts">
2
+ import { Combobox } from 'bits-ui';
3
+ import type { ComboboxContentProps } from '../types';
4
+ import { CaretDown, CaretUp } from 'phosphor-svelte';
5
+
6
+ let {
7
+ children,
8
+ class: className,
9
+ showScroll = true,
10
+ portalled = true,
11
+ ...props
12
+ }: ComboboxContentProps = $props();
13
+ </script>
14
+
15
+ {#snippet content()}
16
+ <Combobox.Content {...props} class={className}>
17
+ {#if showScroll}
18
+ <Combobox.ScrollUpButton class="flex justify-center">
19
+ <CaretUp />
20
+ </Combobox.ScrollUpButton>
21
+ <Combobox.Viewport class="p-1">
22
+ {@render children()}
23
+ </Combobox.Viewport>
24
+ <Combobox.ScrollDownButton class="flex justify-center">
25
+ <CaretDown />
26
+ </Combobox.ScrollDownButton>
27
+ {:else}
28
+ {@render children()}
29
+ {/if}
30
+ </Combobox.Content>
31
+ {/snippet}
32
+
33
+ {#if portalled}
34
+ <Combobox.Portal>
35
+ {@render content()}
36
+ </Combobox.Portal>
37
+ {:else}
38
+ {@render content()}
39
+ {/if}
40
+
41
+ <style>
42
+ :global([data-combobox-content]) {
43
+
44
+ width: 100%;
45
+
46
+ border-radius: 0.75rem;
47
+
48
+ border-width: 1px;
49
+
50
+ --tw-bg-opacity: 1;
51
+
52
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
53
+
54
+ --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
55
+
56
+ --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
57
+
58
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
59
+
60
+ outline: 2px solid transparent;
61
+
62
+ outline-offset: 2px
63
+ }
64
+
65
+ :global([data-combobox-input]) {
66
+
67
+ width: 100%;
68
+
69
+ --tw-bg-opacity: 1;
70
+
71
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
72
+
73
+ padding-left: 0.75rem;
74
+
75
+ padding-right: 0.75rem;
76
+
77
+ padding-top: 0.5rem;
78
+
79
+ padding-bottom: 0.5rem;
80
+
81
+ font-size: 0.875rem;
82
+
83
+ line-height: 1.25rem;
84
+
85
+ outline: 2px solid transparent;
86
+
87
+ outline-offset: 2px
88
+ }
89
+
90
+ :global([data-combobox-item]) {
91
+
92
+ display: flex;
93
+
94
+ height: 2.5rem;
95
+
96
+ width: 100%;
97
+
98
+ cursor: pointer;
99
+
100
+ align-items: center;
101
+
102
+ justify-content: space-between;
103
+
104
+ border-radius: 0.375rem;
105
+
106
+ padding-left: 0.75rem;
107
+
108
+ padding-right: 0.75rem;
109
+
110
+ font-size: 0.875rem;
111
+
112
+ line-height: 1.25rem
113
+ }
114
+ :global([data-combobox-item][data-highlighted]) {
115
+
116
+ background-color: #12192a0d
117
+ }
118
+
119
+ :global([data-combobox-group-label]) {
120
+
121
+ padding-left: 0.75rem;
122
+
123
+ padding-right: 0.75rem;
124
+
125
+ padding-top: 0.5rem;
126
+
127
+ padding-bottom: 0.5rem;
128
+
129
+ font-size: 0.75rem;
130
+
131
+ line-height: 1rem;
132
+
133
+ --tw-text-opacity: 1;
134
+
135
+ color: rgb(136 140 148 / var(--tw-text-opacity, 1))
136
+ }
137
+ </style>
@@ -0,0 +1,4 @@
1
+ import type { ComboboxContentProps } from '../types';
2
+ declare const ComboboxContent: import("svelte").Component<ComboboxContentProps, {}, "">;
3
+ type ComboboxContent = ReturnType<typeof ComboboxContent>;
4
+ export default ComboboxContent;
@@ -0,0 +1,5 @@
1
+ <script lang="ts">
2
+ import { Check } from 'phosphor-svelte';
3
+ </script>
4
+
5
+ <Check size={16} />
@@ -0,0 +1,18 @@
1
+ interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
2
+ new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
3
+ $$bindings?: Bindings;
4
+ } & Exports;
5
+ (internal: unknown, props: {
6
+ $$events?: Events;
7
+ $$slots?: Slots;
8
+ }): Exports & {
9
+ $set?: any;
10
+ $on?: any;
11
+ };
12
+ z_$$bindings?: Bindings;
13
+ }
14
+ declare const ComboboxIndicator: $$__sveltets_2_IsomorphicComponent<Record<string, never>, {
15
+ [evt: string]: CustomEvent<any>;
16
+ }, {}, {}, string>;
17
+ type ComboboxIndicator = InstanceType<typeof ComboboxIndicator>;
18
+ export default ComboboxIndicator;
@@ -0,0 +1,14 @@
1
+ import { Combobox } from 'bits-ui';
2
+ export declare const Root: import("svelte").Component<import("bits-ui").ComboboxRootPropsWithoutHTML, {}, "open" | "value">;
3
+ export declare const Item: import("svelte").Component<Combobox.ItemProps, {}, "ref">;
4
+ export declare const Group: import("svelte").Component<Combobox.GroupProps, {}, "ref">;
5
+ export declare const GroupHeading: import("svelte").Component<Combobox.GroupHeadingProps, {}, "ref">;
6
+ export declare const Separator: import("svelte").Component<import("bits-ui").SeparatorRootProps, {}, "ref">;
7
+ export declare const Trigger: import("svelte").Component<Combobox.TriggerProps, {}, "ref">;
8
+ export declare const Portal: import("svelte").Component<import("bits-ui").PortalProps, {}, "">;
9
+ export declare const Input: import("svelte").Component<Combobox.InputProps, {}, "ref">;
10
+ export declare const Arrow: import("svelte").Component<import("bits-ui/dist/bits/utilities/arrow").ArrowProps, {}, "">;
11
+ export { default as Add } from './components/combobox-add.svelte';
12
+ export { default as Content } from './components/combobox-content.svelte';
13
+ export { default as Indicator } from './components/combobox-indicator.svelte';
14
+ export * from './types';
@@ -0,0 +1,15 @@
1
+ import { Combobox } from 'bits-ui';
2
+ // Non-modified components
3
+ export const Root = Combobox.Root;
4
+ export const Item = Combobox.Item;
5
+ export const Group = Combobox.Group;
6
+ export const GroupHeading = Combobox.GroupHeading;
7
+ export const Separator = Combobox.Separator;
8
+ export const Trigger = Combobox.Trigger;
9
+ export const Portal = Combobox.Portal;
10
+ export const Input = Combobox.Input;
11
+ export const Arrow = Combobox.Arrow;
12
+ export { default as Add } from './components/combobox-add.svelte';
13
+ export { default as Content } from './components/combobox-content.svelte';
14
+ export { default as Indicator } from './components/combobox-indicator.svelte';
15
+ export * from './types';
@@ -0,0 +1,20 @@
1
+ import { type ComboboxContentProps as BitsComboboxContentProps, type ComboboxRootProps as BitsComboboxRootProps, type ComboboxItemProps as BitsComboboxItemProps, type ComboboxInputProps as BitsComboboxInputProps, type ComboboxTriggerProps as BitsComboboxTriggerProps, type ComboboxArrowProps as BitsComboboxArrowProps, type ComboboxContentStaticProps as BitsComboboxContentStaticProps, type ComboboxGroupHeadingProps as BitsComboboxGroupHeadingProps, type SelectItemSnippetProps } from 'bits-ui';
2
+ import type { Snippet } from 'svelte';
3
+ export type ComboboxRootProps = BitsComboboxRootProps;
4
+ export type ComboboxContentProps = {
5
+ children: Snippet;
6
+ showScroll?: boolean;
7
+ portalled?: boolean;
8
+ } & BitsComboboxContentProps;
9
+ export type ComboboxTriggerProps = {
10
+ children: Snippet;
11
+ } & BitsComboboxTriggerProps;
12
+ export type ComboboxItemProps = {
13
+ children?: Snippet<[SelectItemSnippetProps]>;
14
+ } & BitsComboboxItemProps;
15
+ export type ComboboxGroupHeadingProps = {
16
+ children: Snippet;
17
+ } & BitsComboboxGroupHeadingProps;
18
+ export type ComboboxInputProps = BitsComboboxInputProps;
19
+ export type ComboboxContentStatic = BitsComboboxContentStaticProps;
20
+ export type ComboboxArrowProps = BitsComboboxArrowProps;
@@ -0,0 +1 @@
1
+ import {} from 'bits-ui';
@@ -0,0 +1,344 @@
1
+ <script lang="ts">
2
+ import { run } from 'svelte/legacy';
3
+
4
+ import { DateTime, type MonthNumbers } from 'luxon';
5
+ import { CaretLeft, CaretRight } from 'phosphor-svelte';
6
+ import IconButton from '../icon-button/IconButton.svelte';
7
+
8
+ interface Props {
9
+ selectedDate: DateTime | undefined;
10
+ onClick?: any;
11
+ }
12
+
13
+ let { selectedDate = $bindable(), onClick = (date: DateTime) => {} }: Props = $props();
14
+
15
+ const arrDays = ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'];
16
+ let today = DateTime.local();
17
+ const currentDay = today.day;
18
+ const currentMonth = today.month;
19
+ const currentYear = today.year;
20
+ let shownMonth = $state(today.month);
21
+ let shownYear = $state(today.year);
22
+ let selectedDay: number | undefined = $state();
23
+ let selectedMonth: number | undefined = $state();
24
+ let selectedYear: number | undefined = $state();
25
+ let rows = $state(initRows());
26
+
27
+ run(() => {
28
+ if (selectedDate) {
29
+ selectedDay = selectedDate.day;
30
+ selectedMonth = selectedDate.month;
31
+ selectedYear = selectedDate.year;
32
+ }
33
+ });
34
+
35
+ affectedRows();
36
+
37
+ function initRows() {
38
+ return [
39
+ [0, 0, 0, 0, 0, 0, 0],
40
+ [0, 0, 0, 0, 0, 0, 0],
41
+ [0, 0, 0, 0, 0, 0, 0],
42
+ [0, 0, 0, 0, 0, 0, 0],
43
+ [0, 0, 0, 0, 0, 0, 0],
44
+ [0, 0, 0, 0, 0, 0, 0]
45
+ ];
46
+ }
47
+
48
+ function affectedRows() {
49
+ rows = initRows();
50
+ const firstDayOfCurrentMonth = DateTime.local(shownYear, shownMonth, 1).weekday - 1; // 0-based index
51
+ const lastDayOfCurrentMonth = DateTime.local(shownYear, shownMonth, 1).daysInMonth;
52
+
53
+ if (lastDayOfCurrentMonth === undefined) {
54
+ // Handle invalid date
55
+ return;
56
+ }
57
+
58
+ let iRow = 0;
59
+ let iCol = firstDayOfCurrentMonth; // Start at the correct weekday
60
+ let cpt = 1; // Start from day 1
61
+
62
+ for (iRow = 0; iRow < 6; iRow++) {
63
+ while (iCol < 7 && cpt <= lastDayOfCurrentMonth) {
64
+ rows[iRow][iCol] = cpt++;
65
+ iCol++;
66
+ }
67
+ iCol = 0; // Reset for the next row
68
+ }
69
+ }
70
+
71
+ function previousMonth() {
72
+ let dt = DateTime.local(shownYear, shownMonth).minus({ months: 1 });
73
+ shownMonth = dt.month as MonthNumbers;
74
+ shownYear = dt.year;
75
+ affectedRows();
76
+ }
77
+
78
+ function nextMonth() {
79
+ let dt = DateTime.local(shownYear, shownMonth).plus({ months: 1 });
80
+ shownMonth = dt.month as MonthNumbers;
81
+ shownYear = dt.year;
82
+ affectedRows();
83
+ }
84
+
85
+ function selectDate(y: number, m: number, d: number) {
86
+ selectedDate = DateTime.local(y, m, d);
87
+ onClick(selectedDate);
88
+ }
89
+ </script>
90
+
91
+ <!-- svelte-ignore a11y_click_events_have_key_events -->
92
+ <!-- svelte-ignore a11y_no_static_element_interactions -->
93
+ <div class="calendar-container" onclick={(e) => e.stopPropagation()}>
94
+ <div class="calendar">
95
+ <div class="calendar-header">
96
+ <div class="month-year">
97
+ <IconButton onclick={previousMonth}
98
+ ><CaretLeft class="text-secondary" weight="bold" size="0.75rem" /></IconButton
99
+ >
100
+ <h5>{DateTime.local(shownYear, shownMonth).toFormat('MMM yyyy')}</h5>
101
+ <IconButton onclick={nextMonth}
102
+ ><CaretRight class="text-secondary" weight="bold" size="0.75rem" /></IconButton
103
+ >
104
+ </div>
105
+ </div>
106
+ <div class="calendar-body">
107
+ <table>
108
+ <thead>
109
+ <tr>
110
+ {#each arrDays as day}
111
+ <th>
112
+ <p>{day}</p>
113
+ </th>
114
+ {/each}
115
+ </tr>
116
+ </thead>
117
+ <tbody>
118
+ {#each rows as col}
119
+ <tr>
120
+ {#each col as dayOfMonth}
121
+ <td>
122
+ {#if dayOfMonth > 0}
123
+ <div class="date-container">
124
+ <p
125
+ class={dayOfMonth === selectedDay &&
126
+ selectedMonth === shownMonth &&
127
+ selectedYear === shownYear
128
+ ? 'date selected-date'
129
+ : 'date'}
130
+ >
131
+ <button
132
+ onclick={() => {
133
+ selectDate(shownYear, shownMonth, dayOfMonth);
134
+ }}
135
+ >
136
+ {dayOfMonth}
137
+ </button>
138
+ </p>
139
+ {#if dayOfMonth === currentDay && shownMonth === currentMonth && shownYear === currentYear && dayOfMonth != selectedDay}
140
+ <svg
141
+ class="current-date-indicator text-accent"
142
+ xmlns="http://www.w3.org/2000/svg"
143
+ width="4"
144
+ height="4"
145
+ viewBox="0 0 4 4"
146
+ >
147
+ <circle cx="2" cy="2" r="2" fill="currentColor" />
148
+ </svg>
149
+ {/if}
150
+ </div>
151
+ {/if}
152
+ </td>
153
+ {/each}
154
+ </tr>
155
+ {/each}
156
+ </tbody>
157
+ </table>
158
+ </div>
159
+ </div>
160
+ </div>
161
+
162
+ <style>
163
+ .calendar-container {
164
+
165
+ display: flex;
166
+
167
+ width: 312px
168
+ }
169
+
170
+ .calendar {
171
+
172
+ overflow: hidden;
173
+
174
+ border-radius: 0.5rem;
175
+
176
+ --tw-bg-opacity: 1;
177
+
178
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
179
+
180
+ padding: 1rem;
181
+
182
+ --tw-shadow: 0 4px 20px 0 rgba(18, 25, 42, 0.06), 0 0 0 0.5px rgba(18, 25, 42, 0.08);
183
+
184
+ --tw-shadow-colored: 0 4px 20px 0 var(--tw-shadow-color), 0 0 0 0.5px var(--tw-shadow-color);
185
+
186
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
187
+ }
188
+
189
+ .month-year {
190
+
191
+ display: flex;
192
+
193
+ align-items: center;
194
+
195
+ justify-content: space-between
196
+ }
197
+
198
+ .month-year .btn-custom {
199
+
200
+ border-style: none;
201
+
202
+ background-image: none
203
+ }
204
+
205
+ .calendar-body {
206
+
207
+ display: flex;
208
+
209
+ align-items: center;
210
+
211
+ justify-content: space-between;
212
+
213
+ overflow-x: auto;
214
+
215
+ padding-top: 22px
216
+ }
217
+
218
+ table {
219
+
220
+ margin: 0px;
221
+
222
+ width: 100%;
223
+
224
+ border-collapse: collapse;
225
+
226
+ --tw-border-spacing-x: 0px;
227
+
228
+ --tw-border-spacing-y: 0px;
229
+
230
+ border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
231
+
232
+ padding: 0px
233
+ }
234
+
235
+ table thead th p {
236
+
237
+ text-align: center;
238
+
239
+ font-size: 0.75rem;
240
+
241
+ line-height: 1rem;
242
+
243
+ font-weight: 500;
244
+
245
+ --tw-text-opacity: 1;
246
+
247
+ color: rgb(136 140 148 / var(--tw-text-opacity, 1))
248
+ }
249
+
250
+ tr {
251
+
252
+ height: 2.5rem;
253
+
254
+ border-style: none
255
+ }
256
+
257
+ table th,
258
+ table td {
259
+
260
+ margin: 0px;
261
+
262
+ border-style: none;
263
+
264
+ padding: 0px
265
+ }
266
+
267
+ .date-container {
268
+
269
+ position: relative
270
+ }
271
+
272
+ .date {
273
+
274
+ display: flex;
275
+
276
+ height: 2.5rem;
277
+
278
+ width: 2.5rem;
279
+
280
+ cursor: pointer;
281
+
282
+ align-items: center;
283
+
284
+ justify-content: center;
285
+
286
+ border-radius: 0.5rem;
287
+
288
+ font-size: 0.875rem;
289
+
290
+ line-height: 1.25rem;
291
+
292
+ transition-duration: 150ms
293
+ }
294
+
295
+ .date:hover {
296
+
297
+ background-color: #5750ee1A
298
+ }
299
+
300
+ .date:focus {
301
+
302
+ --tw-bg-opacity: 1;
303
+
304
+ background-color: rgb(87 80 238 / var(--tw-bg-opacity, 1));
305
+
306
+ --tw-text-opacity: 1;
307
+
308
+ color: rgb(255 255 255 / var(--tw-text-opacity, 1))
309
+ }
310
+
311
+ .selected-date {
312
+
313
+ --tw-bg-opacity: 1;
314
+
315
+ background-color: rgb(87 80 238 / var(--tw-bg-opacity, 1));
316
+
317
+ --tw-text-opacity: 1;
318
+
319
+ color: rgb(255 255 255 / var(--tw-text-opacity, 1))
320
+ }
321
+
322
+ .selected-date:hover {
323
+
324
+ --tw-bg-opacity: 1;
325
+
326
+ background-color: rgb(87 80 238 / var(--tw-bg-opacity, 1))
327
+ }
328
+
329
+ .current-date-indicator {
330
+
331
+ position: absolute;
332
+
333
+ left: 18px;
334
+
335
+ top: 2rem
336
+ }
337
+
338
+ .date button {
339
+
340
+ border-style: none;
341
+
342
+ background-image: none
343
+ }
344
+ </style>
@@ -0,0 +1,8 @@
1
+ import { DateTime } from 'luxon';
2
+ interface Props {
3
+ selectedDate: DateTime | undefined;
4
+ onClick?: any;
5
+ }
6
+ declare const DatePicker: import("svelte").Component<Props, {}, "selectedDate">;
7
+ type DatePicker = ReturnType<typeof DatePicker>;
8
+ export default DatePicker;
@@ -0,0 +1 @@
1
+ export { default as DatePicker } from './DatePicker.svelte';
@@ -0,0 +1 @@
1
+ export { default as DatePicker } from './DatePicker.svelte';
@@ -0,0 +1,14 @@
1
+ <script module>
2
+ import Divider from './Divider.svelte';
3
+ import { defineMeta } from '@storybook/addon-svelte-csf';
4
+
5
+ const { Story } = defineMeta({
6
+ component: Divider,
7
+ title: 'Design System/Divider',
8
+ tags: ['autodocs']
9
+ });
10
+ </script>
11
+
12
+ <Story name="Primary">
13
+ <Divider />
14
+ </Story>
@@ -0,0 +1,27 @@
1
+ export default Divider;
2
+ type Divider = SvelteComponent<{
3
+ [x: string]: never;
4
+ }, {
5
+ [evt: string]: CustomEvent<any>;
6
+ }, {}> & {
7
+ $$bindings?: string | undefined;
8
+ };
9
+ declare const Divider: $$__sveltets_2_IsomorphicComponent<{
10
+ [x: string]: never;
11
+ }, {
12
+ [evt: string]: CustomEvent<any>;
13
+ }, {}, {}, string>;
14
+ import Divider from './Divider.svelte';
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> {
16
+ new (options: import("svelte").ComponentConstructorOptions<Props>): import("svelte").SvelteComponent<Props, Events, Slots> & {
17
+ $$bindings?: Bindings;
18
+ } & Exports;
19
+ (internal: unknown, props: {
20
+ $$events?: Events;
21
+ $$slots?: Slots;
22
+ }): Exports & {
23
+ $set?: any;
24
+ $on?: any;
25
+ };
26
+ z_$$bindings?: Bindings;
27
+ }
@@ -0,0 +1,9 @@
1
+ <script lang="ts">
2
+ interface Props {
3
+ class?: string;
4
+ }
5
+
6
+ let { class: className = '' }: Props = $props();
7
+ </script>
8
+
9
+ <div class={`h-0 w-full border-b border-static ${className}`}></div>
@@ -0,0 +1,6 @@
1
+ interface Props {
2
+ class?: string;
3
+ }
4
+ declare const Divider: import("svelte").Component<Props, {}, "">;
5
+ type Divider = ReturnType<typeof Divider>;
6
+ export default Divider;
@@ -0,0 +1 @@
1
+ export { default as Divider } from './Divider.svelte';
@@ -0,0 +1 @@
1
+ export { default as Divider } from './Divider.svelte';