@a-type/ui 2.4.1 → 2.5.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 (292) hide show
  1. package/dist/cjs/colors.stories.d.ts +1 -0
  2. package/dist/cjs/colors.stories.js +13 -2
  3. package/dist/cjs/colors.stories.js.map +1 -1
  4. package/dist/cjs/components/actions/ActionBar.stories.js +1 -1
  5. package/dist/cjs/components/actions/ActionBar.stories.js.map +1 -1
  6. package/dist/cjs/components/box/Box.d.ts +8 -2
  7. package/dist/cjs/components/box/Box.js +10 -3
  8. package/dist/cjs/components/box/Box.js.map +1 -1
  9. package/dist/cjs/components/box/Box.stories.d.ts +28 -0
  10. package/dist/cjs/components/box/Box.stories.js +46 -1
  11. package/dist/cjs/components/box/Box.stories.js.map +1 -1
  12. package/dist/cjs/components/button/Button.stories.js +1 -1
  13. package/dist/cjs/components/button/Button.stories.js.map +1 -1
  14. package/dist/cjs/components/camera/Camera.stories.js +2 -2
  15. package/dist/cjs/components/camera/Camera.stories.js.map +1 -1
  16. package/dist/cjs/components/card/Card.stories.js +1 -1
  17. package/dist/cjs/components/card/Card.stories.js.map +1 -1
  18. package/dist/cjs/components/checkbox/Checkbox.stories.js +1 -1
  19. package/dist/cjs/components/checkbox/Checkbox.stories.js.map +1 -1
  20. package/dist/cjs/components/collapsible/Collapsible.stories.js +2 -2
  21. package/dist/cjs/components/collapsible/Collapsible.stories.js.map +1 -1
  22. package/dist/cjs/components/colorMode/ColorModeToggle.stories.js +1 -1
  23. package/dist/cjs/components/colorMode/ColorModeToggle.stories.js.map +1 -1
  24. package/dist/cjs/components/contextMenu/contextMenu.js +3 -3
  25. package/dist/cjs/components/contextMenu/contextMenu.js.map +1 -1
  26. package/dist/cjs/components/datePicker/DatePicker.stories.js +2 -2
  27. package/dist/cjs/components/datePicker/DatePicker.stories.js.map +1 -1
  28. package/dist/cjs/components/dialog/Dialog.js +1 -1
  29. package/dist/cjs/components/dialog/Dialog.js.map +1 -1
  30. package/dist/cjs/components/dialog/Dialog.stories.js +1 -1
  31. package/dist/cjs/components/dialog/Dialog.stories.js.map +1 -1
  32. package/dist/cjs/components/dropdownMenu/DropdownMenu.js +2 -2
  33. package/dist/cjs/components/dropdownMenu/DropdownMenu.js.map +1 -1
  34. package/dist/cjs/components/dropdownMenu/DropdownMenu.stories.js +1 -1
  35. package/dist/cjs/components/dropdownMenu/DropdownMenu.stories.js.map +1 -1
  36. package/dist/cjs/components/editableText/EditableText.stories.js +2 -2
  37. package/dist/cjs/components/editableText/EditableText.stories.js.map +1 -1
  38. package/dist/cjs/components/emojiPicker/EmojiPicker.stories.js +1 -1
  39. package/dist/cjs/components/emojiPicker/EmojiPicker.stories.js.map +1 -1
  40. package/dist/cjs/components/forms/FormikForm.stories.d.ts +2 -2
  41. package/dist/cjs/components/forms/FormikForm.stories.js +4 -4
  42. package/dist/cjs/components/forms/FormikForm.stories.js.map +1 -1
  43. package/dist/cjs/components/horizontalList/HorizontalList.stories.js +1 -1
  44. package/dist/cjs/components/horizontalList/HorizontalList.stories.js.map +1 -1
  45. package/dist/cjs/components/imageUploader/ImageUploader.stories.js +1 -1
  46. package/dist/cjs/components/imageUploader/ImageUploader.stories.js.map +1 -1
  47. package/dist/cjs/components/input/Input.js +1 -1
  48. package/dist/cjs/components/input/Input.js.map +1 -1
  49. package/dist/cjs/components/input/Input.stories.js +1 -1
  50. package/dist/cjs/components/input/Input.stories.js.map +1 -1
  51. package/dist/cjs/components/layouts/layouts.stories.js +1 -1
  52. package/dist/cjs/components/layouts/layouts.stories.js.map +1 -1
  53. package/dist/cjs/components/marquee/marquee.stories.js +1 -1
  54. package/dist/cjs/components/marquee/marquee.stories.js.map +1 -1
  55. package/dist/cjs/components/masonry/masonry.js +5 -0
  56. package/dist/cjs/components/masonry/masonry.js.map +1 -1
  57. package/dist/cjs/components/masonry/masonry.stories.js +3 -2
  58. package/dist/cjs/components/masonry/masonry.stories.js.map +1 -1
  59. package/dist/cjs/components/note/Note.js +1 -1
  60. package/dist/cjs/components/note/Note.js.map +1 -1
  61. package/dist/cjs/components/note/Note.stories.js +1 -1
  62. package/dist/cjs/components/note/Note.stories.js.map +1 -1
  63. package/dist/cjs/components/numberStepper/NumberStepper.stories.js +1 -1
  64. package/dist/cjs/components/numberStepper/NumberStepper.stories.js.map +1 -1
  65. package/dist/cjs/components/particles/ParticleLayer.stories.js +1 -1
  66. package/dist/cjs/components/particles/ParticleLayer.stories.js.map +1 -1
  67. package/dist/cjs/components/peek/Peek.js +11 -2
  68. package/dist/cjs/components/peek/Peek.js.map +1 -1
  69. package/dist/cjs/components/peek/Peek.stories.js +1 -1
  70. package/dist/cjs/components/peek/Peek.stories.js.map +1 -1
  71. package/dist/cjs/components/popover/Popover.js +2 -2
  72. package/dist/cjs/components/popover/Popover.js.map +1 -1
  73. package/dist/cjs/components/popover/Popover.stories.js +1 -1
  74. package/dist/cjs/components/popover/Popover.stories.js.map +1 -1
  75. package/dist/cjs/components/progress/Progress.stories.js +1 -1
  76. package/dist/cjs/components/progress/Progress.stories.js.map +1 -1
  77. package/dist/cjs/components/relativeTime/RelativeTime.stories.js +1 -1
  78. package/dist/cjs/components/relativeTime/RelativeTime.stories.js.map +1 -1
  79. package/dist/cjs/components/richEditor/richEditor.stories.js +1 -1
  80. package/dist/cjs/components/richEditor/richEditor.stories.js.map +1 -1
  81. package/dist/cjs/components/scrollArea/ScrollArea.stories.js +1 -1
  82. package/dist/cjs/components/scrollArea/ScrollArea.stories.js.map +1 -1
  83. package/dist/cjs/components/select/Select.stories.js +1 -1
  84. package/dist/cjs/components/select/Select.stories.js.map +1 -1
  85. package/dist/cjs/components/skeletons/TextSkeleton.stories.d.ts +29 -0
  86. package/dist/cjs/components/skeletons/TextSkeleton.stories.js +35 -0
  87. package/dist/cjs/components/skeletons/TextSkeleton.stories.js.map +1 -0
  88. package/dist/cjs/components/skeletons/skeletons.js +1 -1
  89. package/dist/cjs/components/skeletons/skeletons.js.map +1 -1
  90. package/dist/cjs/components/slider/Slider.stories.js +1 -1
  91. package/dist/cjs/components/slider/Slider.stories.js.map +1 -1
  92. package/dist/cjs/components/tabs/tabs.stories.js +1 -1
  93. package/dist/cjs/components/tabs/tabs.stories.js.map +1 -1
  94. package/dist/cjs/components/textArea/TextArea.stories.js +1 -1
  95. package/dist/cjs/components/textArea/TextArea.stories.js.map +1 -1
  96. package/dist/cjs/components/tooltip/Tooltip.js +1 -1
  97. package/dist/cjs/components/tooltip/Tooltip.js.map +1 -1
  98. package/dist/cjs/components/tooltip/Tooltip.stories.js +1 -1
  99. package/dist/cjs/components/tooltip/Tooltip.stories.js.map +1 -1
  100. package/dist/cjs/hooks/useTitleBarColor.stories.js +1 -1
  101. package/dist/cjs/hooks/useTitleBarColor.stories.js.map +1 -1
  102. package/dist/cjs/shadows.stories.d.ts +27 -0
  103. package/dist/cjs/shadows.stories.js +46 -0
  104. package/dist/cjs/shadows.stories.js.map +1 -0
  105. package/dist/cjs/themes.stories.js +3 -3
  106. package/dist/cjs/themes.stories.js.map +1 -1
  107. package/dist/cjs/uno/colors.d.ts +4 -0
  108. package/dist/cjs/uno/colors.js +5 -0
  109. package/dist/cjs/uno/colors.js.map +1 -1
  110. package/dist/cjs/uno/shadows.d.ts +6 -0
  111. package/dist/cjs/uno/shadows.js +17 -0
  112. package/dist/cjs/uno/shadows.js.map +1 -0
  113. package/dist/cjs/{uno.preset.d.ts → uno/uno.preset.d.ts} +3 -2
  114. package/dist/cjs/{uno.preset.js → uno/uno.preset.js} +83 -54
  115. package/dist/cjs/uno/uno.preset.js.map +1 -0
  116. package/dist/cjs/utilities.stories.js +1 -1
  117. package/dist/cjs/utilities.stories.js.map +1 -1
  118. package/dist/css/main.css +23 -2
  119. package/dist/esm/colors.stories.d.ts +1 -0
  120. package/dist/esm/colors.stories.js +12 -1
  121. package/dist/esm/colors.stories.js.map +1 -1
  122. package/dist/esm/components/actions/ActionBar.stories.js +1 -1
  123. package/dist/esm/components/actions/ActionBar.stories.js.map +1 -1
  124. package/dist/esm/components/box/Box.d.ts +8 -2
  125. package/dist/esm/components/box/Box.js +10 -3
  126. package/dist/esm/components/box/Box.js.map +1 -1
  127. package/dist/esm/components/box/Box.stories.d.ts +28 -0
  128. package/dist/esm/components/box/Box.stories.js +46 -1
  129. package/dist/esm/components/box/Box.stories.js.map +1 -1
  130. package/dist/esm/components/button/Button.stories.js +1 -1
  131. package/dist/esm/components/button/Button.stories.js.map +1 -1
  132. package/dist/esm/components/camera/Camera.stories.js +2 -2
  133. package/dist/esm/components/camera/Camera.stories.js.map +1 -1
  134. package/dist/esm/components/card/Card.stories.js +1 -1
  135. package/dist/esm/components/card/Card.stories.js.map +1 -1
  136. package/dist/esm/components/checkbox/Checkbox.stories.js +1 -1
  137. package/dist/esm/components/checkbox/Checkbox.stories.js.map +1 -1
  138. package/dist/esm/components/collapsible/Collapsible.stories.js +2 -2
  139. package/dist/esm/components/collapsible/Collapsible.stories.js.map +1 -1
  140. package/dist/esm/components/colorMode/ColorModeToggle.stories.js +1 -1
  141. package/dist/esm/components/colorMode/ColorModeToggle.stories.js.map +1 -1
  142. package/dist/esm/components/contextMenu/contextMenu.js +3 -3
  143. package/dist/esm/components/contextMenu/contextMenu.js.map +1 -1
  144. package/dist/esm/components/datePicker/DatePicker.stories.js +2 -2
  145. package/dist/esm/components/datePicker/DatePicker.stories.js.map +1 -1
  146. package/dist/esm/components/dialog/Dialog.js +1 -1
  147. package/dist/esm/components/dialog/Dialog.js.map +1 -1
  148. package/dist/esm/components/dialog/Dialog.stories.js +1 -1
  149. package/dist/esm/components/dialog/Dialog.stories.js.map +1 -1
  150. package/dist/esm/components/dropdownMenu/DropdownMenu.js +2 -2
  151. package/dist/esm/components/dropdownMenu/DropdownMenu.js.map +1 -1
  152. package/dist/esm/components/dropdownMenu/DropdownMenu.stories.js +1 -1
  153. package/dist/esm/components/dropdownMenu/DropdownMenu.stories.js.map +1 -1
  154. package/dist/esm/components/editableText/EditableText.stories.js +2 -2
  155. package/dist/esm/components/editableText/EditableText.stories.js.map +1 -1
  156. package/dist/esm/components/emojiPicker/EmojiPicker.stories.js +1 -1
  157. package/dist/esm/components/emojiPicker/EmojiPicker.stories.js.map +1 -1
  158. package/dist/esm/components/forms/FormikForm.stories.d.ts +2 -2
  159. package/dist/esm/components/forms/FormikForm.stories.js +4 -4
  160. package/dist/esm/components/forms/FormikForm.stories.js.map +1 -1
  161. package/dist/esm/components/horizontalList/HorizontalList.stories.js +1 -1
  162. package/dist/esm/components/horizontalList/HorizontalList.stories.js.map +1 -1
  163. package/dist/esm/components/imageUploader/ImageUploader.stories.js +1 -1
  164. package/dist/esm/components/imageUploader/ImageUploader.stories.js.map +1 -1
  165. package/dist/esm/components/input/Input.js +1 -1
  166. package/dist/esm/components/input/Input.js.map +1 -1
  167. package/dist/esm/components/input/Input.stories.js +1 -1
  168. package/dist/esm/components/input/Input.stories.js.map +1 -1
  169. package/dist/esm/components/layouts/layouts.stories.js +1 -1
  170. package/dist/esm/components/layouts/layouts.stories.js.map +1 -1
  171. package/dist/esm/components/marquee/marquee.stories.js +1 -1
  172. package/dist/esm/components/marquee/marquee.stories.js.map +1 -1
  173. package/dist/esm/components/masonry/masonry.js +5 -0
  174. package/dist/esm/components/masonry/masonry.js.map +1 -1
  175. package/dist/esm/components/masonry/masonry.stories.js +3 -2
  176. package/dist/esm/components/masonry/masonry.stories.js.map +1 -1
  177. package/dist/esm/components/note/Note.js +1 -1
  178. package/dist/esm/components/note/Note.js.map +1 -1
  179. package/dist/esm/components/note/Note.stories.js +1 -1
  180. package/dist/esm/components/note/Note.stories.js.map +1 -1
  181. package/dist/esm/components/numberStepper/NumberStepper.stories.js +1 -1
  182. package/dist/esm/components/numberStepper/NumberStepper.stories.js.map +1 -1
  183. package/dist/esm/components/particles/ParticleLayer.stories.js +1 -1
  184. package/dist/esm/components/particles/ParticleLayer.stories.js.map +1 -1
  185. package/dist/esm/components/peek/Peek.js +11 -2
  186. package/dist/esm/components/peek/Peek.js.map +1 -1
  187. package/dist/esm/components/peek/Peek.stories.js +1 -1
  188. package/dist/esm/components/peek/Peek.stories.js.map +1 -1
  189. package/dist/esm/components/popover/Popover.js +2 -2
  190. package/dist/esm/components/popover/Popover.js.map +1 -1
  191. package/dist/esm/components/popover/Popover.stories.js +1 -1
  192. package/dist/esm/components/popover/Popover.stories.js.map +1 -1
  193. package/dist/esm/components/progress/Progress.stories.js +1 -1
  194. package/dist/esm/components/progress/Progress.stories.js.map +1 -1
  195. package/dist/esm/components/relativeTime/RelativeTime.stories.js +1 -1
  196. package/dist/esm/components/relativeTime/RelativeTime.stories.js.map +1 -1
  197. package/dist/esm/components/richEditor/richEditor.stories.js +1 -1
  198. package/dist/esm/components/richEditor/richEditor.stories.js.map +1 -1
  199. package/dist/esm/components/scrollArea/ScrollArea.stories.js +1 -1
  200. package/dist/esm/components/scrollArea/ScrollArea.stories.js.map +1 -1
  201. package/dist/esm/components/select/Select.stories.js +1 -1
  202. package/dist/esm/components/select/Select.stories.js.map +1 -1
  203. package/dist/esm/components/skeletons/TextSkeleton.stories.d.ts +29 -0
  204. package/dist/esm/components/skeletons/TextSkeleton.stories.js +32 -0
  205. package/dist/esm/components/skeletons/TextSkeleton.stories.js.map +1 -0
  206. package/dist/esm/components/skeletons/skeletons.js +1 -1
  207. package/dist/esm/components/skeletons/skeletons.js.map +1 -1
  208. package/dist/esm/components/slider/Slider.stories.js +1 -1
  209. package/dist/esm/components/slider/Slider.stories.js.map +1 -1
  210. package/dist/esm/components/tabs/tabs.stories.js +1 -1
  211. package/dist/esm/components/tabs/tabs.stories.js.map +1 -1
  212. package/dist/esm/components/textArea/TextArea.stories.js +1 -1
  213. package/dist/esm/components/textArea/TextArea.stories.js.map +1 -1
  214. package/dist/esm/components/tooltip/Tooltip.js +1 -1
  215. package/dist/esm/components/tooltip/Tooltip.js.map +1 -1
  216. package/dist/esm/components/tooltip/Tooltip.stories.js +1 -1
  217. package/dist/esm/components/tooltip/Tooltip.stories.js.map +1 -1
  218. package/dist/esm/hooks/useTitleBarColor.stories.js +1 -1
  219. package/dist/esm/hooks/useTitleBarColor.stories.js.map +1 -1
  220. package/dist/esm/shadows.stories.d.ts +27 -0
  221. package/dist/esm/shadows.stories.js +40 -0
  222. package/dist/esm/shadows.stories.js.map +1 -0
  223. package/dist/esm/themes.stories.js +4 -4
  224. package/dist/esm/themes.stories.js.map +1 -1
  225. package/dist/esm/uno/colors.d.ts +4 -0
  226. package/dist/esm/uno/colors.js +5 -0
  227. package/dist/esm/uno/colors.js.map +1 -1
  228. package/dist/esm/uno/shadows.d.ts +6 -0
  229. package/dist/esm/uno/shadows.js +14 -0
  230. package/dist/esm/uno/shadows.js.map +1 -0
  231. package/dist/esm/{uno.preset.d.ts → uno/uno.preset.d.ts} +3 -2
  232. package/dist/esm/{uno.preset.js → uno/uno.preset.js} +83 -54
  233. package/dist/esm/uno/uno.preset.js.map +1 -0
  234. package/dist/esm/utilities.stories.js +1 -1
  235. package/dist/esm/utilities.stories.js.map +1 -1
  236. package/package.json +6 -6
  237. package/src/colors.stories.tsx +23 -1
  238. package/src/components/actions/ActionBar.stories.tsx +1 -1
  239. package/src/components/box/Box.stories.tsx +46 -1
  240. package/src/components/box/Box.tsx +18 -2
  241. package/src/components/button/Button.stories.tsx +1 -1
  242. package/src/components/camera/Camera.stories.tsx +2 -2
  243. package/src/components/card/Card.stories.tsx +1 -1
  244. package/src/components/checkbox/Checkbox.stories.tsx +1 -1
  245. package/src/components/collapsible/Collapsible.stories.tsx +2 -2
  246. package/src/components/colorMode/ColorModeToggle.stories.tsx +1 -1
  247. package/src/components/contextMenu/contextMenu.tsx +3 -2
  248. package/src/components/datePicker/DatePicker.stories.tsx +2 -2
  249. package/src/components/dialog/Dialog.stories.tsx +1 -1
  250. package/src/components/dialog/Dialog.tsx +2 -2
  251. package/src/components/dropdownMenu/DropdownMenu.stories.tsx +1 -1
  252. package/src/components/dropdownMenu/DropdownMenu.tsx +2 -2
  253. package/src/components/editableText/EditableText.stories.tsx +2 -2
  254. package/src/components/emojiPicker/EmojiPicker.stories.tsx +1 -1
  255. package/src/components/forms/FormikForm.stories.tsx +4 -4
  256. package/src/components/horizontalList/HorizontalList.stories.tsx +1 -1
  257. package/src/components/imageUploader/ImageUploader.stories.tsx +1 -1
  258. package/src/components/input/Input.stories.tsx +1 -1
  259. package/src/components/input/Input.tsx +1 -1
  260. package/src/components/layouts/layouts.stories.tsx +1 -1
  261. package/src/components/marquee/marquee.stories.tsx +1 -1
  262. package/src/components/masonry/masonry.stories.tsx +8 -5
  263. package/src/components/masonry/masonry.tsx +4 -0
  264. package/src/components/note/Note.stories.tsx +1 -1
  265. package/src/components/note/Note.tsx +1 -1
  266. package/src/components/numberStepper/NumberStepper.stories.tsx +1 -1
  267. package/src/components/particles/ParticleLayer.stories.tsx +1 -1
  268. package/src/components/peek/Peek.stories.tsx +1 -1
  269. package/src/components/peek/Peek.tsx +18 -3
  270. package/src/components/popover/Popover.stories.tsx +1 -1
  271. package/src/components/popover/Popover.tsx +2 -2
  272. package/src/components/progress/Progress.stories.tsx +1 -1
  273. package/src/components/relativeTime/RelativeTime.stories.tsx +1 -1
  274. package/src/components/richEditor/richEditor.stories.tsx +1 -1
  275. package/src/components/scrollArea/ScrollArea.stories.tsx +1 -1
  276. package/src/components/select/Select.stories.tsx +1 -1
  277. package/src/components/skeletons/TextSkeleton.stories.tsx +42 -0
  278. package/src/components/skeletons/skeletons.tsx +1 -1
  279. package/src/components/slider/Slider.stories.tsx +1 -1
  280. package/src/components/tabs/tabs.stories.tsx +1 -1
  281. package/src/components/textArea/TextArea.stories.tsx +1 -1
  282. package/src/components/tooltip/Tooltip.stories.tsx +1 -1
  283. package/src/components/tooltip/Tooltip.tsx +1 -1
  284. package/src/hooks/useTitleBarColor.stories.tsx +1 -1
  285. package/src/shadows.stories.tsx +100 -0
  286. package/src/themes.stories.tsx +43 -36
  287. package/src/uno/colors.ts +7 -0
  288. package/src/uno/shadows.ts +12 -0
  289. package/src/{uno.preset.ts → uno/uno.preset.ts} +91 -68
  290. package/src/utilities.stories.tsx +1 -1
  291. package/dist/cjs/uno.preset.js.map +0 -1
  292. package/dist/esm/uno.preset.js.map +0 -1
@@ -1,9 +1,9 @@
1
1
  import type { Meta, StoryObj } from '@storybook/react';
2
- import { EditableText } from './EditableText.js';
3
2
  import { useState } from 'react';
3
+ import { EditableText } from './EditableText.js';
4
4
 
5
5
  const meta = {
6
- title: 'EditableText',
6
+ title: 'Components/EditableText',
7
7
  component: EditableText,
8
8
  argTypes: {},
9
9
  args: {
@@ -2,7 +2,7 @@ import type { Meta, StoryObj } from '@storybook/react';
2
2
  import { EmojiPicker } from './EmojiPicker.js';
3
3
 
4
4
  const meta = {
5
- title: 'EmojiPicker',
5
+ title: 'Components/EmojiPicker',
6
6
  component: EmojiPicker,
7
7
  argTypes: {},
8
8
  parameters: {
@@ -1,12 +1,12 @@
1
1
  import type { Meta, StoryObj } from '@storybook/react';
2
- import { FormikForm } from './FormikForm.js';
3
- import { TextField } from './TextField.js';
4
2
  import { CheckboxField } from './CheckboxField.js';
5
- import { SubmitButton } from './SubmitButton.js';
3
+ import { FormikForm } from './FormikForm.js';
6
4
  import { NumberStepperField } from './NumberStepperField.js';
5
+ import { SubmitButton } from './SubmitButton.js';
6
+ import { TextField } from './TextField.js';
7
7
 
8
8
  const meta = {
9
- title: 'Form',
9
+ title: 'Components/Form',
10
10
  component: FormikForm,
11
11
  argTypes: {},
12
12
  parameters: {
@@ -5,7 +5,7 @@ import { Icon } from '../icon/index.js';
5
5
  import { HorizontalList } from './HorizontalList.js';
6
6
 
7
7
  const meta = {
8
- title: 'HorizontalList',
8
+ title: 'Components/HorizontalList',
9
9
  component: HorizontalList,
10
10
  argTypes: {},
11
11
  args: {
@@ -3,7 +3,7 @@ import { useState } from 'react';
3
3
  import { ImageUploader } from './ImageUploader.js';
4
4
 
5
5
  const meta = {
6
- title: 'ImageUploader',
6
+ title: 'Components/ImageUploader',
7
7
  component: ImageUploader,
8
8
  argTypes: {
9
9
  onChange: { action: 'change' },
@@ -4,7 +4,7 @@ import { Button } from '../button/Button.js';
4
4
  import { Input } from './Input.js';
5
5
 
6
6
  const meta = {
7
- title: 'Input',
7
+ title: 'Components/Input',
8
8
  component: Input,
9
9
  argTypes: {
10
10
  disabled: { control: 'boolean' },
@@ -9,7 +9,7 @@ import {
9
9
  import { useRotatingShuffledValue } from '../../hooks/useRotatingShuffledValue.js';
10
10
 
11
11
  export const inputClassName = classNames(
12
- 'layer-components:(px-5 py-1.25 text-md font-inherit rounded-lg bg-white select-auto min-w-60px color-black border-solid border-width-thin border-gray-dark shadow-sm-inset)',
12
+ 'layer-components:(px-5 py-1.25 text-md font-inherit rounded-lg bg-white select-auto min-w-60px color-black border-solid border-width-thin border-gray-dark shadow-sm-inset transition-shadow)',
13
13
  'layer-components:focus:(outline-none bg-lighten-3 ring-4 ring-white)',
14
14
  'layer-components:focus-visible:(outline-none ring-gray)',
15
15
  'layer-components:disabled:(bg-transparent border-gray placeholder-gray-dark shadow-none)',
@@ -19,7 +19,7 @@ import { PageNowPlaying } from './PageNowPlaying.js';
19
19
  import { PageRoot } from './PageRoot.js';
20
20
 
21
21
  const meta = {
22
- title: 'layouts',
22
+ title: 'Components/Layouts',
23
23
  argTypes: {},
24
24
  parameters: {
25
25
  controls: { expanded: true },
@@ -2,7 +2,7 @@ import type { Meta, StoryObj } from '@storybook/react';
2
2
  import { Marquee } from './marquee.js';
3
3
 
4
4
  const meta = {
5
- title: 'Marquee',
5
+ title: 'Components/Marquee',
6
6
  component: Marquee,
7
7
  argTypes: {},
8
8
  parameters: {
@@ -1,9 +1,10 @@
1
1
  import type { Meta, StoryObj } from '@storybook/react';
2
2
  import { useState } from 'react';
3
+ import { Box } from '../box/Box.js';
3
4
  import { Masonry } from './masonry.js';
4
5
 
5
6
  const meta = {
6
- title: 'Masonry',
7
+ title: 'Components/Masonry',
7
8
  component: Masonry,
8
9
  argTypes: {},
9
10
  parameters: {
@@ -31,15 +32,17 @@ const content = (spans?: boolean) =>
31
32
  const [span, setSpan] = useState(randomSpan);
32
33
 
33
34
  return (
34
- <div
35
+ <Box
35
36
  key={i}
36
- className="bg-gray-light rounded-lg"
37
+ layout="center center"
38
+ surface="primary"
39
+ border
37
40
  style={{ height: size }}
38
41
  data-span={spans ? span : undefined}
39
42
  onClick={() => setSpan((v) => (v === 1 ? 2 : 1))}
40
43
  >
41
- {size}
42
- </div>
44
+ <div>{size}</div>
45
+ </Box>
43
46
  );
44
47
  });
45
48
 
@@ -53,6 +53,10 @@ abstract class MasonryLayout implements Layout {
53
53
  this.relayout();
54
54
  return true;
55
55
  }
56
+ } else if (this.config.columns !== this.columns) {
57
+ this.columns = this.config.columns;
58
+ this.relayout();
59
+ return true;
56
60
  }
57
61
  return false;
58
62
  };
@@ -2,7 +2,7 @@ import type { Meta, StoryObj } from '@storybook/react';
2
2
  import { Note } from './Note.js';
3
3
 
4
4
  const meta = {
5
- title: 'Note',
5
+ title: 'Components/Note',
6
6
  component: Note,
7
7
 
8
8
  args: {
@@ -17,7 +17,7 @@ export function Note({ className, children, ...rest }: NoteProps) {
17
17
  aria-hidden
18
18
  >
19
19
  <div className="layer-components:(border-0 border-solid border-primary-dark flex-[0_0_20px] w-[20px] h-[20px] relative) layer-variants:(border-b-1px border-l-1px)">
20
- <div className="layer-components:(absolute w-1px bg-primary-dark h-26px rotate--45 left-9px top--4px transform-origin-cc)" />
20
+ <div className="layer-components:(absolute w-0.5px bg-primary-dark h-27px rotate--45 left-9px top--3px transform-origin-cc)" />
21
21
  <div
22
22
  className={`layer-components:(border-solid box-content border-transparent border-r-primary-wash border-13px w-0 h-0 rotate--45 translate--7px transform-origin-br)`}
23
23
  />
@@ -2,7 +2,7 @@ import type { Meta, StoryObj } from '@storybook/react';
2
2
  import { NumberStepper } from './NumberStepper.js';
3
3
 
4
4
  const meta = {
5
- title: 'NumberStepper',
5
+ title: 'Components/NumberStepper',
6
6
  component: NumberStepper,
7
7
  argTypes: {},
8
8
  parameters: {
@@ -7,7 +7,7 @@ import { useParticles } from './ParticleContext.js';
7
7
  import { ParticleLayer } from './ParticleLayer.js';
8
8
 
9
9
  const meta = {
10
- title: 'ParticleLayer',
10
+ title: 'Components/ParticleLayer',
11
11
  component: ParticleLayer,
12
12
  argTypes: {},
13
13
  parameters: {},
@@ -4,7 +4,7 @@ import { P } from '../typography/typography.js';
4
4
  import { Peek } from './Peek.js';
5
5
 
6
6
  const meta = {
7
- title: 'Peek',
7
+ title: 'Components/Peek',
8
8
  component: Peek,
9
9
  argTypes: {},
10
10
  parameters: {
@@ -36,7 +36,12 @@ export function Peek({ peekHeight = 120, children, className }: PeekProps) {
36
36
  ),
37
37
  );
38
38
 
39
- const [open, toggle] = useToggle(false);
39
+ const [open, rootToggle] = useToggle(false);
40
+ const hasInteracted = useRef(false);
41
+ const toggle = () => {
42
+ hasInteracted.current = true;
43
+ rootToggle();
44
+ };
40
45
 
41
46
  useLayoutEffect(() => {
42
47
  if (containerRef.current) {
@@ -52,11 +57,20 @@ export function Peek({ peekHeight = 120, children, className }: PeekProps) {
52
57
  return (
53
58
  <div
54
59
  className={classNames(
55
- 'relative animate-ease-default animate-forwards overflow-hidden [&[data-state=closed]]:(animate-keyframes-peek-close animate-duration-300 max-h-[var(--peek-height,120px)]) [&[data-state=open]]:(animate-keyframes-peek-open animate-duration-600 animate-forwards)',
60
+ 'relative',
61
+ '[&[data-state=closed]]:max-h-[var(--peek-height,120px)] overflow-hidden',
62
+ hasInteracted.current &&
63
+ 'animate-ease-default animate-forwards [&[data-state=closed]]:(animate-keyframes-peek-close animate-duration-300) [&[data-state=open]]:(animate-keyframes-peek-open animate-duration-600 animate-forwards)',
56
64
  className,
57
65
  )}
58
66
  ref={containerRef}
59
- data-state={isPeekable ? (open ? 'open' : 'closed') : undefined}
67
+ data-state={isPeekable ? (open ? 'open' : 'closed') : 'closed'}
68
+ style={
69
+ {
70
+ '--peek-height': `${peekHeight}px`,
71
+ '--collapsible-height': '0px',
72
+ } as any
73
+ }
60
74
  >
61
75
  <div ref={contentRef} id={id}>
62
76
  {children}
@@ -66,6 +80,7 @@ export function Peek({ peekHeight = 120, children, className }: PeekProps) {
66
80
  data-state={open ? 'open' : 'closed'}
67
81
  className={classNames(
68
82
  'h-80px absolute bottom-0 z-1 bg-transparent border-none w-full cursor-pointer border-b border-b-solid border-white',
83
+ 'animate-fade-in',
69
84
  'focus-visible:(outline-none bg-gradient-to-b from-transparent to-primary-wash border-b border-b-solid border-primary',
70
85
  'after:(content-["-_tap_to_expand_-"] p-3 color-gray-dark text-xs flex flex-col justify-end items-center absolute inset-0 top-auto h-80px bg-gradient-to-b from-transparent to-white)',
71
86
  'after:[&[data-state=open]]:content-["-_tap_to_collapse_-"]',
@@ -3,7 +3,7 @@ import { Button } from '../button/Button.js';
3
3
  import { Popover } from './Popover.js';
4
4
 
5
5
  const meta = {
6
- title: 'Popover',
6
+ title: 'Components/Popover',
7
7
  component: Popover,
8
8
  argTypes: {},
9
9
  parameters: {
@@ -9,7 +9,7 @@ import { BoxContext } from '../box/Box.js';
9
9
 
10
10
  const StyledContent = withClassName(
11
11
  PopoverPrimitive.Content,
12
- 'layer-components:(rounded-xl min-w-120px bg-white z-menu shadow-lg op-0 hidden max-w-90vw border border-gray)',
12
+ 'layer-components:(rounded-xl min-w-120px bg-white z-menu shadow-lg op-0 hidden max-w-90vw border border-gray-dark)',
13
13
  'will-change-transform',
14
14
  'layer-components:transform-origin-[var(--radix-popover-transform-origin)]',
15
15
  'layer-components:[&[data-state=open]]:animate-popover-in',
@@ -22,7 +22,7 @@ const StyledContent = withClassName(
22
22
 
23
23
  const StyledArrow = withClassName(
24
24
  PopoverPrimitive.Arrow,
25
- 'layer-components:(fill-white stroke-gray w-15px h-8px)',
25
+ 'layer-components:(arrow)',
26
26
  );
27
27
 
28
28
  const StyledClose = withClassName(
@@ -2,7 +2,7 @@ import type { Meta, StoryObj } from '@storybook/react';
2
2
  import { Progress } from './Progress.js';
3
3
 
4
4
  const meta = {
5
- title: 'Progress',
5
+ title: 'Components/Progress',
6
6
  component: Progress,
7
7
  argTypes: {},
8
8
  parameters: {
@@ -2,7 +2,7 @@ import type { Meta, StoryObj } from '@storybook/react';
2
2
  import { RelativeTime } from './RelativeTime.js';
3
3
 
4
4
  const meta = {
5
- title: 'RelativeTime',
5
+ title: 'Components/RelativeTime',
6
6
  component: RelativeTime,
7
7
  argTypes: {},
8
8
  args: {
@@ -3,7 +3,7 @@ import clsx from 'clsx';
3
3
  import { tipTapClassName, tipTapReadonlyClassName } from './index.js';
4
4
 
5
5
  const meta = {
6
- title: 'richEditor',
6
+ title: 'Components/RichEditor',
7
7
  argTypes: {
8
8
  readonly: { control: 'boolean' },
9
9
  },
@@ -3,7 +3,7 @@ import { useState } from 'react';
3
3
  import { ScrollArea } from './ScrollArea.js';
4
4
 
5
5
  const meta = {
6
- title: 'ScrollArea',
6
+ title: 'Components/ScrollArea',
7
7
  component: ScrollArea,
8
8
  argTypes: {},
9
9
  parameters: {
@@ -3,7 +3,7 @@ import { Button } from '../button/index.js';
3
3
  import { Select, SelectContent, SelectItem, SelectTrigger } from './Select.js';
4
4
 
5
5
  const meta = {
6
- title: 'Select',
6
+ title: 'Components/Select',
7
7
  component: Select,
8
8
  argTypes: {},
9
9
  parameters: {
@@ -0,0 +1,42 @@
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import { Box } from '../index.js';
3
+ import { TextSkeleton } from './skeletons.js';
4
+
5
+ const meta = {
6
+ title: 'Components/TextSkeleton',
7
+ component: TextSkeleton,
8
+ argTypes: {
9
+ maxLength: {
10
+ control: { type: 'number' },
11
+ description: 'Maximum length of the random skeleton text',
12
+ },
13
+ },
14
+ args: {
15
+ maxLength: 20,
16
+ },
17
+ parameters: {
18
+ controls: { expanded: true },
19
+ },
20
+ } satisfies Meta<typeof TextSkeleton>;
21
+
22
+ export default meta;
23
+
24
+ type Story = StoryObj<typeof TextSkeleton>;
25
+
26
+ export const Default: Story = {
27
+ render(args) {
28
+ return <TextSkeleton {...args} />;
29
+ },
30
+ };
31
+
32
+ export const OnBackground: Story = {
33
+ render(args) {
34
+ return (
35
+ <Box col gap p surface="attention" layout="start center">
36
+ <TextSkeleton {...args} />
37
+ <TextSkeleton {...args} />
38
+ <TextSkeleton {...args} />
39
+ </Box>
40
+ );
41
+ },
42
+ };
@@ -15,7 +15,7 @@ export const TextSkeleton = ({
15
15
  return (
16
16
  <span
17
17
  className={classNames(
18
- 'w-full h-full rounded-md bg-gradient-to-r from-gray-wash via-gray-light to-gray-wash [background-size:400%_400%] max-w-full animate-skeleton animate-duration-1200 animate-ease-in-out animate-iteration-infinite animate-alternate',
18
+ 'inline-block shrink-0 w-full h-full rounded-md bg-gradient-to-r from-transparent via-fg to-transparent [background-size:400%_400%] max-w-full animate-skeleton animate-duration-1200 animate-ease-in-out animate-iteration-infinite animate-alternate opacity-30',
19
19
  className,
20
20
  )}
21
21
  style={{
@@ -2,7 +2,7 @@ import type { Meta, StoryObj } from '@storybook/react';
2
2
  import { Slider } from './Slider.js';
3
3
 
4
4
  const meta = {
5
- title: 'Slider',
5
+ title: 'Components/Slider',
6
6
  component: Slider,
7
7
  argTypes: {},
8
8
  parameters: {
@@ -3,7 +3,7 @@ import { useState } from 'react';
3
3
  import { TabsContent, TabsList, TabsRoot, TabsTrigger } from './tabs.js';
4
4
 
5
5
  const meta = {
6
- title: 'Tabs',
6
+ title: 'Components/Tabs',
7
7
  argTypes: {
8
8
  color: {
9
9
  control: 'select',
@@ -2,7 +2,7 @@ import type { Meta, StoryObj } from '@storybook/react';
2
2
  import { TextArea } from './TextArea.js';
3
3
 
4
4
  const meta = {
5
- title: 'TextArea',
5
+ title: 'Components/TextArea',
6
6
  component: TextArea,
7
7
  argTypes: {},
8
8
  parameters: {
@@ -3,7 +3,7 @@ import { Box } from '../box/Box.js';
3
3
  import { Tooltip } from './Tooltip.js';
4
4
 
5
5
  const meta = {
6
- title: 'Tooltip',
6
+ title: 'Components/Tooltip',
7
7
  component: Tooltip,
8
8
  argTypes: {},
9
9
  parameters: {
@@ -37,7 +37,7 @@ function Content({
37
37
  {...props}
38
38
  >
39
39
  {children}
40
- <TooltipPrimitive.Arrow className="layer-components:fill-[var(--v-bg)]" />
40
+ <TooltipPrimitive.Arrow className="layer-components:arrow" />
41
41
  </TooltipPrimitive.Content>
42
42
  </BoxContext.Provider>
43
43
  </TooltipPrimitive.Portal>
@@ -4,7 +4,7 @@ import { Box, Button, Dialog, Icon, Provider } from '../components/index.js';
4
4
  import { useTitleBarColor } from './useTitleBarColor.js';
5
5
 
6
6
  const meta = {
7
- title: 'useTitleBarColor',
7
+ title: 'Hooks/useTitleBarColor',
8
8
  argTypes: {},
9
9
  parameters: {
10
10
  controls: { expanded: true },
@@ -0,0 +1,100 @@
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import clsx from 'clsx';
3
+ import { Box } from './components/index.js';
4
+
5
+ const meta = {
6
+ title: 'System/Shadows',
7
+ argTypes: {
8
+ opacity: {
9
+ control: { type: 'range', min: 0, max: 1, step: 0.1 },
10
+ defaultValue: 0.1,
11
+ description: 'Opacity modifier',
12
+ },
13
+ },
14
+ args: {
15
+ opacity: 0.1,
16
+ },
17
+ parameters: {
18
+ controls: { expanded: true },
19
+ },
20
+ } satisfies Meta<{ opacity: number }>;
21
+
22
+ export default meta;
23
+
24
+ type Story = StoryObj<Meta>;
25
+
26
+ const opacityClasses = [
27
+ 'shadow-op-0',
28
+ 'shadow-op-10',
29
+ 'shadow-op-20',
30
+ 'shadow-op-30',
31
+ 'shadow-op-40',
32
+ 'shadow-op-50',
33
+ 'shadow-op-60',
34
+ 'shadow-op-70',
35
+ 'shadow-op-80',
36
+ 'shadow-op-90',
37
+ 'shadow-op-100',
38
+ ];
39
+
40
+ export const Default: Story = {
41
+ render(args) {
42
+ return (
43
+ <div
44
+ className={clsx(
45
+ 'grid grid-cols-4 gap-xl',
46
+ opacityClasses[args.opacity * 10],
47
+ )}
48
+ >
49
+ <Box surface border p elevated="sm">
50
+ Small Shadow
51
+ </Box>
52
+ <Box surface border p elevated="md">
53
+ Medium Shadow
54
+ </Box>
55
+ <Box surface border p elevated="lg">
56
+ Large Shadow
57
+ </Box>
58
+ <Box surface border p elevated="xl">
59
+ Extra Large Shadow
60
+ </Box>
61
+ <Box surface border p elevated="-sm">
62
+ Small Inset Shadow
63
+ </Box>
64
+ <Box surface border p elevated="-md">
65
+ Medium Inset Shadow
66
+ </Box>
67
+ <Box surface border p elevated="-lg">
68
+ Large Inset Shadow
69
+ </Box>
70
+ <Box surface border p elevated="-xl">
71
+ Extra Large Inset Shadow
72
+ </Box>
73
+ <Box surface border p elevated="sm-up">
74
+ Small Shadow Up
75
+ </Box>
76
+ <Box surface border p elevated="md-up">
77
+ Medium Shadow Up
78
+ </Box>
79
+ <Box surface border p elevated="lg-up">
80
+ Large Shadow Up
81
+ </Box>
82
+ <Box surface border p elevated="xl-up">
83
+ Extra Large Shadow Up
84
+ </Box>
85
+ <Box surface border p elevated="-sm-up">
86
+ Small Inset Shadow Up
87
+ </Box>
88
+ <Box surface border p elevated="-md-up">
89
+ Medium Inset Shadow Up
90
+ </Box>
91
+ <Box surface border p elevated="-lg-up">
92
+ Large Inset Shadow Up
93
+ </Box>
94
+ <Box surface border p elevated="-xl-up">
95
+ Extra Large Inset Shadow Up
96
+ </Box>
97
+ </div>
98
+ );
99
+ },
100
+ };
@@ -34,7 +34,6 @@ import {
34
34
  PageRoot,
35
35
  Progress,
36
36
  Provider,
37
- ScrollArea,
38
37
  Select,
39
38
  TextSkeleton,
40
39
  ThemeName,
@@ -48,7 +47,7 @@ import { useAnimationFrame } from './hooks.js';
48
47
  import { useOverrideTheme } from './hooks/useOverrideTheme.js';
49
48
 
50
49
  const meta = {
51
- title: 'themes',
50
+ title: 'Theme Demo',
52
51
  argTypes: {},
53
52
  parameters: {
54
53
  controls: { expanded: true },
@@ -94,19 +93,24 @@ function DemoUI({ className }: { className?: string }) {
94
93
  <ToggleGroup.Item value="2">Toggle 2</ToggleGroup.Item>
95
94
  </ToggleGroup>
96
95
  </Box>
97
- <Box layout="start center" d="col" gap p className="max-h-200px">
98
- <ScrollArea>
99
- <H1>Heading 1</H1>
100
- <H2>Heading 2</H2>
101
- <H3>Heading 3</H3>
102
- <H4>Heading 4</H4>
103
- <P>
104
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do
105
- eiusmod tempor incididunt ut labore et dolore magna aliqua.
106
- </P>
107
- <TextSkeleton maxLength={30} />
108
- <TextSkeleton maxLength={10} />
109
- </ScrollArea>
96
+ <Box
97
+ layout="start safe-center"
98
+ d="col"
99
+ gap
100
+ p
101
+ className="max-h-200px"
102
+ overflow="auto-y"
103
+ >
104
+ <H1>Heading 1</H1>
105
+ <H2>Heading 2</H2>
106
+ <H3>Heading 3</H3>
107
+ <H4>Heading 4</H4>
108
+ <P>
109
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do
110
+ eiusmod tempor incididunt ut labore et dolore magna aliqua.
111
+ </P>
112
+ <TextSkeleton maxLength={30} />
113
+ <TextSkeleton maxLength={10} />
110
114
  </Box>
111
115
  <Box d="col" gap>
112
116
  <Card>
@@ -171,7 +175,6 @@ function DemoUI({ className }: { className?: string }) {
171
175
  </Tooltip>
172
176
  </ContextMenu.Trigger>
173
177
  <ContextMenu.Content>
174
- <ContextMenu.Arrow />
175
178
  <ContextMenu.Item>Item 1</ContextMenu.Item>
176
179
  <ContextMenu.Item>Item 2</ContextMenu.Item>
177
180
  <ContextMenu.Item>Item 3</ContextMenu.Item>
@@ -206,26 +209,30 @@ function DemoUI({ className }: { className?: string }) {
206
209
  <div>Primary surface</div>
207
210
  <Button color="ghost">Ghost</Button>
208
211
  </Box>
209
- <Box surface="accent" p d="col" className="max-h-200px">
210
- <ScrollArea>
211
- <H2>Accent surface</H2>
212
- <H3>Accent surface</H3>
213
- <P>
214
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do
215
- eiusmod tempor incididunt ut labore et dolore magna aliqua.
216
- </P>
217
- <P>
218
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do
219
- eiusmod tempor incididunt ut labore et dolore magna aliqua.
220
- </P>
221
- <P>
222
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do
223
- eiusmod tempor incididunt ut labore et dolore magna aliqua.
224
- </P>
225
- <TextSkeleton maxLength={30} />
226
- <TextSkeleton maxLength={10} />
227
- Accent surface
228
- </ScrollArea>
212
+ <Box
213
+ surface="accent"
214
+ p
215
+ d="col"
216
+ className="max-h-200px"
217
+ overflow="auto-y"
218
+ >
219
+ <H2>Accent surface</H2>
220
+ <H3>Accent surface</H3>
221
+ <P>
222
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do
223
+ eiusmod tempor incididunt ut labore et dolore magna aliqua.
224
+ </P>
225
+ <P>
226
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do
227
+ eiusmod tempor incididunt ut labore et dolore magna aliqua.
228
+ </P>
229
+ <P>
230
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do
231
+ eiusmod tempor incididunt ut labore et dolore magna aliqua.
232
+ </P>
233
+ <TextSkeleton maxLength={30} />
234
+ <TextSkeleton maxLength={10} />
235
+ Accent surface
229
236
  </Box>
230
237
  <Box surface="default" p d="col">
231
238
  Default surface