@flightlesslabs/dodo-ui 0.6.5 → 0.7.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 (241) hide show
  1. package/dist/index.d.ts +32 -9
  2. package/dist/index.js +12 -2
  3. package/dist/stories/Home.mdx +4 -6
  4. package/dist/stories/components/Form/Button/Button.stories.svelte +16 -37
  5. package/dist/stories/components/Form/Button/Button.svelte +45 -47
  6. package/dist/stories/components/Form/Button/Button.svelte.d.ts +16 -12
  7. package/dist/stories/components/Form/Button/Color/Color.stories.svelte +23 -48
  8. package/dist/stories/components/Form/Button/Events/Events.stories.svelte +1 -7
  9. package/dist/stories/components/Form/Button/IconButton/IconButton.stories.svelte +4 -12
  10. package/dist/stories/components/Form/Button/Roundness/Roundness.stories.svelte +5 -31
  11. package/dist/stories/components/Form/Button/Size/Size.stories.svelte +3 -9
  12. package/dist/stories/components/Form/Button/Variant/Variant.stories.svelte +5 -8
  13. package/dist/stories/components/Form/FormControl/FormControl.stories.svelte +11 -12
  14. package/dist/stories/components/Form/FormControl/FormControl.svelte +6 -8
  15. package/dist/stories/components/Form/FormControl/FormControl.svelte.d.ts +1 -1
  16. package/dist/stories/components/Form/Label/Label.stories.svelte +1 -11
  17. package/dist/stories/components/Form/Label/Label.svelte +6 -5
  18. package/dist/stories/components/Form/Label/Label.svelte.d.ts +1 -3
  19. package/dist/stories/components/Form/Message/Color/Color.stories.svelte +9 -9
  20. package/dist/stories/components/Form/Message/Message.stories.svelte +5 -13
  21. package/dist/stories/components/Form/Message/Message.svelte +5 -7
  22. package/dist/stories/components/Form/Message/Message.svelte.d.ts +4 -6
  23. package/dist/stories/components/Form/Message/Size/Size.stories.svelte +3 -5
  24. package/dist/stories/components/Form/PasswordInput/Events/Events.stories.svelte +8 -72
  25. package/dist/stories/components/Form/PasswordInput/PasswordInput.stories.svelte +5 -3
  26. package/dist/stories/components/Form/PasswordInput/PasswordInput.svelte +26 -33
  27. package/dist/stories/components/Form/PasswordInput/PasswordInput.svelte.d.ts +6 -5
  28. package/dist/stories/components/Form/PasswordInput/Roundness/Roundness.stories.svelte +4 -4
  29. package/dist/stories/components/Form/PasswordInput/WithIcon/WithIcon.stories.svelte +2 -2
  30. package/dist/stories/components/Form/Select/Customize/Customize.stories.svelte +120 -0
  31. package/dist/stories/components/Form/Select/Customize/Customize.stories.svelte.d.ts +18 -0
  32. package/dist/stories/components/Form/Select/Events/Events.stories.svelte +138 -0
  33. package/dist/stories/components/Form/Select/Options/OptionFormat.mdx +40 -0
  34. package/dist/stories/components/Form/Select/Roundness/Roundness.stories.svelte +28 -0
  35. package/dist/stories/components/Form/Select/Roundness/Roundness.stories.svelte.d.ts +18 -0
  36. package/dist/stories/components/Form/Select/Select.stories.svelte +114 -0
  37. package/dist/stories/components/Form/Select/Select.stories.svelte.d.ts +22 -0
  38. package/dist/stories/components/Form/Select/Select.svelte +285 -0
  39. package/dist/stories/components/Form/Select/Select.svelte.d.ts +87 -0
  40. package/dist/stories/components/Form/Select/Size/Size.stories.svelte +24 -0
  41. package/dist/stories/components/Form/Select/Size/Size.stories.svelte.d.ts +18 -0
  42. package/dist/stories/components/Form/Select/WithIcon/WithIcon.stories.svelte +39 -0
  43. package/dist/stories/components/Form/Select/WithIcon/WithIcon.stories.svelte.d.ts +18 -0
  44. package/dist/stories/components/Form/TextInput/Events/Events.stories.svelte +7 -63
  45. package/dist/stories/components/Form/TextInput/Roundness/Roundness.stories.svelte +4 -4
  46. package/dist/stories/components/Form/TextInput/TextInput.stories.svelte +6 -4
  47. package/dist/stories/components/Form/TextInput/TextInput.svelte +18 -30
  48. package/dist/stories/components/Form/TextInput/TextInput.svelte.d.ts +10 -5
  49. package/dist/stories/components/Form/TextInput/WithIcon/WithIcon.stories.svelte +4 -4
  50. package/dist/stories/components/Layout/Menu/Menu.stories.svelte +65 -0
  51. package/dist/stories/components/Layout/Menu/Menu.stories.svelte.d.ts +21 -0
  52. package/dist/stories/components/Layout/Menu/Menu.svelte +30 -0
  53. package/dist/stories/components/Layout/Menu/Menu.svelte.d.ts +23 -0
  54. package/dist/stories/components/Layout/Menu/MenuItem/MenuItem.stories.svelte +30 -0
  55. package/dist/stories/components/Layout/Menu/MenuItem/MenuItem.stories.svelte.d.ts +21 -0
  56. package/dist/stories/components/Layout/Menu/MenuItem/MenuItem.svelte +164 -0
  57. package/dist/stories/components/Layout/Menu/MenuItem/MenuItem.svelte.d.ts +49 -0
  58. package/dist/stories/components/Layout/Menu/MenuItem/Size/Size.stories.svelte +16 -0
  59. package/dist/stories/components/Layout/Menu/MenuItem/Type/Type.stories.svelte +21 -0
  60. package/dist/stories/components/{Form/SimpleSelect/WithIcon/WithIcon.stories.svelte.d.ts → Layout/Menu/MenuItem/Type/Type.stories.svelte.d.ts} +3 -3
  61. package/dist/stories/components/Layout/Menu/Size/Size.stories.svelte +37 -0
  62. package/dist/stories/components/{Form/SimpleSelect/Roundness/Roundness.stories.svelte.d.ts → Layout/Menu/Size/Size.stories.svelte.d.ts} +3 -3
  63. package/dist/stories/components/Layout/Paper/Color/Color.stories.svelte +63 -0
  64. package/dist/stories/components/Layout/Paper/Color/Color.stories.svelte.d.ts +26 -0
  65. package/dist/stories/components/Layout/Paper/Paper.stories.svelte +25 -16
  66. package/dist/stories/components/Layout/Paper/Paper.svelte +211 -14
  67. package/dist/stories/components/Layout/Paper/Paper.svelte.d.ts +20 -9
  68. package/dist/stories/components/Layout/Paper/Roundness/Roundness.stories.svelte +8 -13
  69. package/dist/stories/components/Layout/Paper/Shadow/Shadow.stories.svelte +6 -24
  70. package/dist/stories/components/Layout/Paper/utils/scss/mixins.scss +46 -0
  71. package/dist/stories/components/Layout/Separator/Color/Color.stories.svelte +19 -0
  72. package/dist/stories/components/Layout/Separator/Color/Color.stories.svelte.d.ts +26 -0
  73. package/dist/stories/components/Layout/Separator/Separator.stories.svelte +26 -0
  74. package/dist/stories/components/Layout/Separator/Separator.stories.svelte.d.ts +21 -0
  75. package/dist/stories/components/Layout/Separator/Separator.svelte +66 -0
  76. package/dist/stories/components/Layout/Separator/Separator.svelte.d.ts +22 -0
  77. package/dist/stories/components/Layout/Separator/utils/scss/mixins.scss +24 -0
  78. package/dist/stories/developer tools/Intro.mdx +2 -0
  79. package/dist/stories/developer tools/components/DynamicInput/DynamicInput.stories.svelte +49 -0
  80. package/dist/stories/{components/Form/SimpleSelect/SimpleSelect.stories.svelte.d.ts → developer tools/components/DynamicInput/DynamicInput.stories.svelte.d.ts } +5 -7
  81. package/dist/stories/developer tools/components/DynamicInput/DynamicInput.svelte +92 -0
  82. package/dist/stories/developer tools/components/DynamicInput/DynamicInput.svelte.d.ts +60 -0
  83. package/{src/lib/stories/components/Form/TextInput/Size/Size.stories.svelte → dist/stories/developer tools/components/DynamicInput/Size/Size.stories.svelte } +4 -4
  84. package/dist/stories/developer tools/components/DynamicInput/Size/Size.stories.svelte.d.ts +26 -0
  85. package/dist/stories/developer tools/components/InputEnclosure/InputEnclosure.stories.svelte +5 -5
  86. package/dist/stories/developer tools/components/InputEnclosure/InputEnclosure.svelte +19 -15
  87. package/dist/stories/developer tools/components/InputEnclosure/InputEnclosure.svelte.d.ts +4 -3
  88. package/dist/stories/developer tools/components/InputEnclosure/Roundness/Roundness.stories.svelte +4 -4
  89. package/dist/stories/developer tools/components/InputEnclosure/WithIcon/WithIcon.stories.svelte +4 -4
  90. package/dist/stories/developer tools/components/Popper/Popper.stories.svelte +119 -0
  91. package/dist/stories/developer tools/components/Popper/Popper.stories.svelte.d.ts +21 -0
  92. package/dist/stories/developer tools/components/Popper/Popper.svelte +77 -0
  93. package/dist/stories/developer tools/components/Popper/Popper.svelte.d.ts +50 -0
  94. package/dist/stories/developer tools/components/Popper/PopperPopup/PopperPopup.stories.svelte +60 -0
  95. package/dist/stories/developer tools/components/Popper/PopperPopup/PopperPopup.stories.svelte.d.ts +21 -0
  96. package/dist/stories/developer tools/components/Popper/PopperPopup/PopperPopup.svelte +66 -0
  97. package/dist/stories/developer tools/components/Popper/PopperPopup/PopperPopup.svelte.d.ts +34 -0
  98. package/dist/stories/developer tools/components/Popper/PopperPopup/utils/getPopupPosition.d.ts +21 -0
  99. package/dist/stories/developer tools/components/Popper/PopperPopup/utils/getPopupPosition.js +62 -0
  100. package/dist/stories/developer tools/components/Popper/Positions/AutoPosition/AutoPosition.stories.svelte +89 -0
  101. package/dist/stories/developer tools/components/Popper/Positions/AutoPosition/AutoPosition.stories.svelte.d.ts +18 -0
  102. package/dist/stories/developer tools/components/Popper/Positions/Positions.stories.svelte +111 -0
  103. package/dist/stories/developer tools/components/Popper/Positions/Positions.stories.svelte.d.ts +18 -0
  104. package/dist/stories/developer tools/components/UtilityButton/Size/Size.stories.svelte +6 -8
  105. package/dist/stories/developer tools/components/UtilityButton/UtilityButton.stories.svelte +4 -7
  106. package/dist/stories/developer tools/components/UtilityButton/UtilityButton.svelte +8 -5
  107. package/dist/stories/developer tools/components/UtilityButton/UtilityButton.svelte.d.ts +2 -2
  108. package/dist/stories/developer tools/directives/clickOutside/clickOutside.d.ts +3 -0
  109. package/dist/stories/developer tools/directives/clickOutside/clickOutside.js +14 -0
  110. package/dist/stories/developer tools/directives/clickOutside/index.mdx +25 -0
  111. package/dist/stories/{philosophy/Colors/Colors.mdx → developer tools/philosophy/Colors/Colors.mdx } +2 -2
  112. package/dist/stories/{philosophy/Colors/Swatches/Palette.svelte → developer tools/philosophy/Colors/Swatches/Palette.svelte } +1 -1
  113. package/dist/stories/{philosophy/Colors/Swatches/Swatch.svelte → developer tools/philosophy/Colors/Swatches/Swatch.svelte } +1 -1
  114. package/dist/stories/{philosophy/Colors/Swatches/Swatches.svelte → developer tools/philosophy/Colors/Swatches/Swatches.svelte } +1 -1
  115. package/dist/stories/{philosophy/Colors/utils/color.js → developer tools/philosophy/Colors/utils/color.js } +1 -1
  116. package/dist/stories/{philosophy/Themes.mdx → developer tools/philosophy/Themes.mdx } +1 -1
  117. package/dist/styles/_colors.css +44 -44
  118. package/dist/styles/_components.css +6 -3
  119. package/dist/styles/_shadow.css +13 -20
  120. package/dist/styles/_space.css +7 -0
  121. package/dist/styles/_z-index.css +9 -0
  122. package/dist/styles/global.css +2 -0
  123. package/dist/types/colors.d.ts +7 -0
  124. package/dist/types/colors.js +10 -0
  125. package/dist/types/position.d.ts +4 -0
  126. package/dist/types/position.js +2 -0
  127. package/dist/types/roundness.d.ts +3 -0
  128. package/dist/types/roundness.js +1 -0
  129. package/dist/types/shadow.d.ts +3 -0
  130. package/dist/types/shadow.js +1 -0
  131. package/dist/types/size.d.ts +3 -0
  132. package/dist/types/size.js +1 -0
  133. package/dist/types/weight.d.ts +3 -0
  134. package/dist/types/weight.js +1 -0
  135. package/package.json +26 -24
  136. package/src/lib/index.ts +61 -15
  137. package/src/lib/stories/components/Form/Button/Button.svelte +39 -36
  138. package/src/lib/stories/components/Form/FormControl/FormControl.svelte +9 -11
  139. package/src/lib/stories/components/Form/Label/Label.svelte +5 -8
  140. package/src/lib/stories/components/Form/Message/Message.svelte +11 -16
  141. package/src/lib/stories/components/Form/PasswordInput/PasswordInput.svelte +50 -50
  142. package/src/lib/stories/components/Form/Select/Select.svelte +501 -0
  143. package/src/lib/stories/components/Form/TextInput/TextInput.svelte +43 -60
  144. package/src/lib/stories/components/Layout/Menu/Menu.svelte +65 -0
  145. package/src/lib/stories/components/Layout/Menu/MenuItem/MenuItem.svelte +268 -0
  146. package/src/lib/stories/components/Layout/Paper/Paper.svelte +154 -27
  147. package/src/lib/stories/components/Layout/Paper/utils/scss/mixins.scss +46 -0
  148. package/src/lib/stories/components/Layout/Separator/Separator.svelte +96 -0
  149. package/src/lib/stories/components/Layout/Separator/utils/scss/mixins.scss +24 -0
  150. package/src/lib/stories/developer tools/components/DynamicInput/DynamicInput.svelte +195 -0
  151. package/src/lib/stories/developer tools/components/InputEnclosure/InputEnclosure.svelte +22 -18
  152. package/src/lib/stories/developer tools/components/Popper/Popper.svelte +159 -0
  153. package/src/lib/stories/developer tools/components/Popper/PopperPopup/PopperPopup.svelte +120 -0
  154. package/src/lib/stories/developer tools/components/Popper/PopperPopup/utils/getPopupPosition.ts +87 -0
  155. package/src/lib/stories/developer tools/components/UtilityButton/UtilityButton.svelte +8 -6
  156. package/src/lib/stories/developer tools/directives/clickOutside/clickOutside.ts +17 -0
  157. package/src/lib/stories/{philosophy/Colors/Swatches/Palette.svelte → developer tools/philosophy/Colors/Swatches/Palette.svelte } +1 -1
  158. package/src/lib/stories/{philosophy/Colors/Swatches/Swatch.svelte → developer tools/philosophy/Colors/Swatches/Swatch.svelte } +1 -1
  159. package/src/lib/stories/{philosophy/Colors/Swatches/Swatches.svelte → developer tools/philosophy/Colors/Swatches/Swatches.svelte } +1 -1
  160. package/src/lib/stories/{philosophy/Colors/utils/color.ts → developer tools/philosophy/Colors/utils/color.ts } +1 -1
  161. package/src/lib/styles/_colors.css +44 -44
  162. package/src/lib/styles/_components.css +6 -3
  163. package/src/lib/styles/_shadow.css +13 -20
  164. package/src/lib/styles/_space.css +7 -0
  165. package/src/lib/styles/_z-index.css +9 -0
  166. package/src/lib/styles/global.css +2 -0
  167. package/src/lib/types/colors.ts +16 -0
  168. package/src/lib/types/position.ts +5 -0
  169. package/src/lib/types/roundness.ts +3 -0
  170. package/src/lib/types/shadow.ts +3 -0
  171. package/src/lib/types/size.ts +3 -0
  172. package/src/lib/types/weight.ts +3 -0
  173. package/dist/stories/components/Form/SimpleSelect/Events/Events.stories.svelte +0 -74
  174. package/dist/stories/components/Form/SimpleSelect/Roundness/Roundness.stories.svelte +0 -24
  175. package/dist/stories/components/Form/SimpleSelect/SimpleSelect.stories.svelte +0 -59
  176. package/dist/stories/components/Form/SimpleSelect/SimpleSelect.svelte +0 -69
  177. package/dist/stories/components/Form/SimpleSelect/SimpleSelect.svelte.d.ts +0 -50
  178. package/dist/stories/components/Form/SimpleSelect/Size/Size.stories.svelte +0 -20
  179. package/dist/stories/components/Form/SimpleSelect/WithIcon/WithIcon.stories.svelte +0 -36
  180. package/dist/types.d.ts +0 -5
  181. package/dist/types.js +0 -1
  182. package/src/lib/stories/Home.mdx +0 -61
  183. package/src/lib/stories/assets/dark-theme-toggle.png +0 -0
  184. package/src/lib/stories/components/Form/Button/Button.stories.svelte +0 -82
  185. package/src/lib/stories/components/Form/Button/Color/Color.stories.svelte +0 -68
  186. package/src/lib/stories/components/Form/Button/Events/Events.stories.svelte +0 -42
  187. package/src/lib/stories/components/Form/Button/IconButton/IconButton.stories.svelte +0 -51
  188. package/src/lib/stories/components/Form/Button/Roundness/Roundness.stories.svelte +0 -49
  189. package/src/lib/stories/components/Form/Button/Size/Size.stories.svelte +0 -22
  190. package/src/lib/stories/components/Form/Button/Variant/Variant.stories.svelte +0 -21
  191. package/src/lib/stories/components/Form/FormControl/FormControl.stories.svelte +0 -29
  192. package/src/lib/stories/components/Form/Label/Label.stories.svelte +0 -23
  193. package/src/lib/stories/components/Form/Message/Color/Color.stories.svelte +0 -36
  194. package/src/lib/stories/components/Form/Message/Message.stories.svelte +0 -35
  195. package/src/lib/stories/components/Form/Message/Size/Size.stories.svelte +0 -24
  196. package/src/lib/stories/components/Form/PasswordInput/Events/Events.stories.svelte +0 -174
  197. package/src/lib/stories/components/Form/PasswordInput/PasswordInput.stories.svelte +0 -57
  198. package/src/lib/stories/components/Form/PasswordInput/Roundness/Roundness.stories.svelte +0 -20
  199. package/src/lib/stories/components/Form/PasswordInput/Size/Size.stories.svelte +0 -16
  200. package/src/lib/stories/components/Form/PasswordInput/WithIcon/WithIcon.stories.svelte +0 -31
  201. package/src/lib/stories/components/Form/SimpleSelect/Events/Events.stories.svelte +0 -79
  202. package/src/lib/stories/components/Form/SimpleSelect/Roundness/Roundness.stories.svelte +0 -24
  203. package/src/lib/stories/components/Form/SimpleSelect/SimpleSelect.stories.svelte +0 -64
  204. package/src/lib/stories/components/Form/SimpleSelect/SimpleSelect.svelte +0 -159
  205. package/src/lib/stories/components/Form/SimpleSelect/Size/Size.stories.svelte +0 -20
  206. package/src/lib/stories/components/Form/SimpleSelect/WithIcon/WithIcon.stories.svelte +0 -36
  207. package/src/lib/stories/components/Form/TextInput/Events/Events.stories.svelte +0 -153
  208. package/src/lib/stories/components/Form/TextInput/Roundness/Roundness.stories.svelte +0 -21
  209. package/src/lib/stories/components/Form/TextInput/TextInput.stories.svelte +0 -41
  210. package/src/lib/stories/components/Form/TextInput/WithIcon/WithIcon.stories.svelte +0 -47
  211. package/src/lib/stories/components/Layout/Paper/Paper.stories.svelte +0 -41
  212. package/src/lib/stories/components/Layout/Paper/Roundness/Roundness.stories.svelte +0 -30
  213. package/src/lib/stories/components/Layout/Paper/Shadow/Shadow.stories.svelte +0 -42
  214. package/src/lib/stories/developer tools/Intro.mdx +0 -7
  215. package/src/lib/stories/developer tools/components/InputEnclosure/InputEnclosure.stories.svelte +0 -38
  216. package/src/lib/stories/developer tools/components/InputEnclosure/Roundness/Roundness.stories.svelte +0 -20
  217. package/src/lib/stories/developer tools/components/InputEnclosure/Size/Size.stories.svelte +0 -16
  218. package/src/lib/stories/developer tools/components/InputEnclosure/WithIcon/WithIcon.stories.svelte +0 -47
  219. package/src/lib/stories/developer tools/components/UtilityButton/Size/Size.stories.svelte +0 -27
  220. package/src/lib/stories/developer tools/components/UtilityButton/UtilityButton.stories.svelte +0 -33
  221. package/src/lib/stories/philosophy/Colors/Colors.mdx +0 -43
  222. package/src/lib/stories/philosophy/Colors/Colors.stories.svelte +0 -22
  223. package/src/lib/stories/philosophy/Colors/Opacity.stories.svelte +0 -11
  224. package/src/lib/stories/philosophy/Themes.mdx +0 -23
  225. package/src/lib/types.ts +0 -6
  226. /package/dist/stories/components/Form/{SimpleSelect → Select}/Events/Events.stories.svelte.d.ts +0 -0
  227. /package/dist/stories/components/{Form/SimpleSelect → Layout/Menu/MenuItem}/Size/Size.stories.svelte.d.ts +0 -0
  228. /package/dist/stories/{philosophy → developer tools/philosophy}/Colors/Colors.stories.svelte +0 -0
  229. /package/dist/stories/{philosophy → developer tools/philosophy}/Colors/Colors.stories.svelte.d.ts +0 -0
  230. /package/dist/stories/{philosophy → developer tools/philosophy}/Colors/Colors.svelte +0 -0
  231. /package/dist/stories/{philosophy → developer tools/philosophy}/Colors/Colors.svelte.d.ts +0 -0
  232. /package/dist/stories/{philosophy → developer tools/philosophy}/Colors/Opacity.stories.svelte +0 -0
  233. /package/dist/stories/{philosophy → developer tools/philosophy}/Colors/Opacity.stories.svelte.d.ts +0 -0
  234. /package/dist/stories/{philosophy → developer tools/philosophy}/Colors/Opacity.svelte +0 -0
  235. /package/dist/stories/{philosophy → developer tools/philosophy}/Colors/Opacity.svelte.d.ts +0 -0
  236. /package/dist/stories/{philosophy → developer tools/philosophy}/Colors/Swatches/Palette.svelte.d.ts +0 -0
  237. /package/dist/stories/{philosophy → developer tools/philosophy}/Colors/Swatches/Swatch.svelte.d.ts +0 -0
  238. /package/dist/stories/{philosophy → developer tools/philosophy}/Colors/Swatches/Swatches.svelte.d.ts +0 -0
  239. /package/dist/stories/{philosophy → developer tools/philosophy}/Colors/utils/color.d.ts +0 -0
  240. /package/src/lib/stories/{philosophy → developer tools/philosophy}/Colors/Colors.svelte +0 -0
  241. /package/src/lib/stories/{philosophy → developer tools/philosophy}/Colors/Opacity.svelte +0 -0
package/package.json CHANGED
@@ -1,6 +1,19 @@
1
1
  {
2
2
  "name": "@flightlesslabs/dodo-ui",
3
- "version": "0.6.5",
3
+ "version": "0.7.0",
4
+ "scripts": {
5
+ "build": "vite build && pnpm run prepack",
6
+ "preview": "vite preview",
7
+ "prepare": "svelte-kit sync || echo ''",
8
+ "prepack": "svelte-kit sync && svelte-package && publint",
9
+ "svelte-check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
10
+ "format": "prettier --write .",
11
+ "lint": "prettier --check . && eslint .",
12
+ "dev": "storybook dev -p 6006",
13
+ "build-storybook": "storybook build && touch ./storybook-static/.nojekyll",
14
+ "check": "pnpm run svelte-check && eslint . && pnpm run lint",
15
+ "check:fix": "pnpm run svelte-check && eslint . && pnpm run format"
16
+ },
4
17
  "homepage": "https://flightlesslabs.github.io/dodo-ui",
5
18
  "repository": {
6
19
  "type": "git",
@@ -37,9 +50,9 @@
37
50
  "devDependencies": {
38
51
  "@chromatic-com/storybook": "^3.2.6",
39
52
  "@eslint/compat": "^1.2.9",
40
- "@eslint/js": "^9.26.0",
53
+ "@eslint/js": "^9.27.0",
41
54
  "@storybook/addon-essentials": "^8.6.14",
42
- "@storybook/addon-svelte-csf": "5.0.0-next.28",
55
+ "@storybook/addon-svelte-csf": "5.0.1",
43
56
  "@storybook/blocks": "^8.6.14",
44
57
  "@storybook/experimental-addon-test": "^8.6.14",
45
58
  "@storybook/manager-api": "^8.6.14",
@@ -48,14 +61,14 @@
48
61
  "@storybook/test": "^8.6.14",
49
62
  "@storybook/theming": "^8.6.14",
50
63
  "@sveltejs/adapter-static": "^3.0.8",
51
- "@sveltejs/kit": "^2.21.0",
64
+ "@sveltejs/kit": "^2.21.1",
52
65
  "@sveltejs/package": "^2.3.11",
53
66
  "@sveltejs/vite-plugin-svelte": "^5.0.3",
54
- "@vitest/browser": "^3.1.3",
55
- "@vitest/coverage-v8": "^3.1.3",
56
- "eslint": "^9.26.0",
67
+ "@vitest/browser": "^3.1.4",
68
+ "@vitest/coverage-v8": "^3.1.4",
69
+ "eslint": "^9.27.0",
57
70
  "eslint-config-prettier": "^10.1.5",
58
- "eslint-plugin-svelte": "^3.7.0",
71
+ "eslint-plugin-svelte": "^3.8.1",
59
72
  "globals": "^16.1.0",
60
73
  "playwright": "^1.52.0",
61
74
  "prettier": "^3.5.3",
@@ -64,33 +77,22 @@
64
77
  "sass": "^1.89.0",
65
78
  "storybook": "^8.6.14",
66
79
  "storybook-dark-mode": "^4.0.2",
67
- "svelte": "^5.30.1",
80
+ "svelte": "^5.31.1",
68
81
  "svelte-check": "^4.2.1",
69
82
  "svelte-preprocess": "^6.0.3",
70
83
  "typescript": "^5.8.3",
71
84
  "typescript-eslint": "^8.32.1",
72
85
  "vite": "^6.3.5",
73
- "vitest": "^3.1.3"
86
+ "vitest": "^3.1.4"
74
87
  },
75
88
  "keywords": [
76
89
  "svelte"
77
90
  ],
78
91
  "volta": {
79
- "node": "22.15.0",
80
- "pnpm": "10.10.0"
92
+ "node": "22.15.1",
93
+ "pnpm": "10.11.0"
81
94
  },
82
95
  "dependencies": {
83
96
  "@iconify/svelte": "^5.0.0"
84
- },
85
- "scripts": {
86
- "build": "vite build && pnpm run prepack",
87
- "preview": "vite preview",
88
- "svelte-check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
89
- "format": "prettier --write .",
90
- "lint": "prettier --check . && eslint .",
91
- "dev": "storybook dev -p 6006",
92
- "build-storybook": "storybook build && touch ./storybook-static/.nojekyll",
93
- "check": "pnpm run svelte-check && eslint . && pnpm run lint",
94
- "check:fix": "pnpm run svelte-check && eslint . && pnpm run format"
95
97
  }
96
- }
98
+ }
package/src/lib/index.ts CHANGED
@@ -1,20 +1,53 @@
1
1
  import '$lib/styles/global.css';
2
2
 
3
- export type { ComponentSize, ComponentRoundness, ComponentRoundnessFull } from './types.js';
3
+ export type {
4
+ ComponentColorPriority,
5
+ ComponentColorSeverity,
6
+ ComponentColor,
7
+ } from './types/colors.js';
8
+
9
+ export type { ComponentRoundness } from './types/roundness.js';
10
+
11
+ export type { ComponentSize } from './types/size.js';
12
+
13
+ export type { ComponentWeight } from './types/weight.js';
14
+
15
+ export type { PositionY, PositionX } from './types/position.js';
16
+
17
+ /** developer tools: directives: clickOutside */
18
+ export { clickOutside } from '$lib/stories/developer tools/directives/clickOutside/clickOutside.js';
4
19
 
5
20
  /** developer tools: components: UtilityButton */
6
21
  export { default as UtilityButton } from '$lib/stories/developer tools/components/UtilityButton/UtilityButton.svelte';
22
+ export type { UtilityButtonProps } from '$lib/stories/developer tools/components/UtilityButton/UtilityButton.svelte';
7
23
 
8
24
  /** developer tools: components: InputEnclosure */
9
25
  export { default as InputEnclosure } from '$lib/stories/developer tools/components/InputEnclosure/InputEnclosure.svelte';
26
+ export type { InputEnclosureProps } from '$lib/stories/developer tools/components/InputEnclosure/InputEnclosure.svelte';
27
+
28
+ /** developer tools: components: DynamicInput */
29
+ export { default as DynamicInput } from '$lib/stories/developer tools/components/DynamicInput/DynamicInput.svelte';
30
+ export type {
31
+ DynamicInputVariant,
32
+ DynamicInputProps,
33
+ DynamicInputClickEvent,
34
+ DynamicInputFocusEvent,
35
+ } from '$lib/stories/developer tools/components/DynamicInput/DynamicInput.svelte';
36
+
37
+ /** developer tools: components: Popper */
38
+ export { default as Popper } from '$lib/stories/developer tools/components/Popper/Popper.svelte';
39
+ export type { PopperProps } from '$lib/stories/developer tools/components/Popper/Popper.svelte';
40
+ export { default as PopperPopup } from '$lib/stories/developer tools/components/Popper/PopperPopup/PopperPopup.svelte';
41
+ export type { PopperPopupProps } from '$lib/stories/developer tools/components/Popper/PopperPopup/PopperPopup.svelte';
10
42
 
11
43
  /** Form: Button */
12
44
  export { default as Button } from '$lib/stories/components/Form/Button/Button.svelte';
13
45
  export type {
14
- ButtonColor,
15
- ButtonRoundness,
16
46
  ButtonLinkTarget,
17
47
  ButtonLinkReferrerpolicy,
48
+ ButtonType,
49
+ ButtonProps,
50
+ ButtonClickEvent,
18
51
  } from '$lib/stories/components/Form/Button/Button.svelte';
19
52
 
20
53
  /** Form: TextInput */
@@ -23,32 +56,45 @@ export type {
23
56
  TextInputType,
24
57
  TextInputFocusEvent,
25
58
  TextInputClipboardEvent,
59
+ TextInputInputEvent,
60
+ TextInputProps,
26
61
  } from '$lib/stories/components/Form/TextInput/TextInput.svelte';
27
62
 
28
63
  /** Form: PasswordInput */
29
64
  export { default as PasswordInput } from '$lib/stories/components/Form/PasswordInput/PasswordInput.svelte';
30
- export type { PasswordInputToggleEvent } from '$lib/stories/components/Form/PasswordInput/PasswordInput.svelte';
65
+ export type {
66
+ PasswordInputToggleEvent,
67
+ PasswordInputProps,
68
+ } from '$lib/stories/components/Form/PasswordInput/PasswordInput.svelte';
31
69
 
32
70
  /** Form: Label */
33
71
  export { default as Label } from '$lib/stories/components/Form/Label/Label.svelte';
72
+ export type { LabelProps } from '$lib/stories/components/Form/Label/Label.svelte';
34
73
 
35
74
  /** Form: FormControl */
36
75
  export { default as FormControl } from '$lib/stories/components/Form/FormControl/FormControl.svelte';
76
+ export type { FormControlProps } from '$lib/stories/components/Form/FormControl/FormControl.svelte';
37
77
 
38
78
  /** Form: Message */
39
79
  export { default as Message } from '$lib/stories/components/Form/Message/Message.svelte';
40
- export type { MessageColor } from '$lib/stories/components/Form/Message/Message.svelte';
41
-
42
- /** Form: SimpleSelect */
43
- export { default as SimpleSelect } from '$lib/stories/components/Form/SimpleSelect/SimpleSelect.svelte';
44
- export type {
45
- SimpleSelectFocusEvent,
46
- SimpleSelectOption,
47
- } from '$lib/stories/components/Form/SimpleSelect/SimpleSelect.svelte';
80
+ export type { MessageProps } from '$lib/stories/components/Form/Message/Message.svelte';
48
81
 
49
82
  /** Layout: Paper */
50
83
  export { default as Paper } from '$lib/stories/components/Layout/Paper/Paper.svelte';
84
+ export type { PaperColor, PaperProps } from '$lib/stories/components/Layout/Paper/Paper.svelte';
85
+
86
+ /** Layout: Separator */
87
+ export { default as Separator } from '$lib/stories/components/Layout/Separator/Separator.svelte';
88
+ export type {
89
+ SeparatorProps,
90
+ SeparatorOrientation,
91
+ } from '$lib/stories/components/Layout/Separator/Separator.svelte';
92
+
93
+ /** Layout: Menu */
94
+ export { default as Menu } from '$lib/stories/components/Layout/Menu/Menu.svelte';
95
+ export type { MenuProps } from '$lib/stories/components/Layout/Menu/Menu.svelte';
96
+ export { default as MenuItem } from '$lib/stories/components/Layout/Menu/MenuItem/MenuItem.svelte';
51
97
  export type {
52
- PaperRoundness,
53
- PaperShadow,
54
- } from '$lib/stories/components/Layout/Paper/Paper.svelte';
98
+ MenuItemType,
99
+ MenuItemProps,
100
+ } from '$lib/stories/components/Layout/Menu/MenuItem/MenuItem.svelte';
@@ -1,6 +1,12 @@
1
1
  <script lang="ts" module>
2
- export type ButtonColor = 'default' | 'primary' | 'secondary' | 'safe' | 'warning' | 'danger';
3
- export type ButtonRoundness = ComponentRoundness | false | ComponentRoundnessFull;
2
+ import type { ComponentColor } from '$lib/types/colors.js';
3
+ import type { ComponentRoundness } from '$lib/types/roundness.js';
4
+ import type { ComponentSize } from '$lib/types/size.js';
5
+ import type { ComponentWeight } from '$lib/types/weight.js';
6
+
7
+ import type { Snippet } from 'svelte';
8
+ import type { MouseEventHandler } from 'svelte/elements';
9
+
4
10
  export type ButtonLinkTarget =
5
11
  | '_self'
6
12
  | '_blank'
@@ -10,30 +16,30 @@
10
16
  | undefined
11
17
  | null;
12
18
  export type ButtonLinkReferrerpolicy = ReferrerPolicy | undefined | null;
13
- </script>
19
+ export type ButtonType = 'button' | 'submit';
20
+ export const buttonTypeArray: ButtonType[] = ['button', 'submit'];
14
21
 
15
- <script lang="ts">
16
- import type { ComponentRoundness, ComponentRoundnessFull, ComponentSize } from '$lib/types.js';
17
- import type { Snippet } from 'svelte';
18
- import type { MouseEventHandler } from 'svelte/elements';
22
+ export type ButtonClickEvent = MouseEvent & {
23
+ currentTarget: EventTarget & HTMLButtonElement;
24
+ };
19
25
 
20
- interface ButtonProps {
26
+ export interface ButtonProps {
21
27
  /** Button contents goes here */
22
28
  children?: Snippet;
23
29
  /** Button ref */
24
30
  ref?: HTMLButtonElement | HTMLAnchorElement;
25
31
  /** Regular button or submit button? */
26
- type?: 'button' | 'submit';
32
+ type?: ButtonType;
27
33
  /** How large should the button be? */
28
34
  size?: ComponentSize;
29
35
  /** Full width button? */
30
36
  fullWidth?: boolean;
31
37
  /** What color to use? */
32
- color?: ButtonColor;
38
+ color?: ComponentColor;
33
39
  /** How round should the border radius be? */
34
- roundness?: ButtonRoundness;
40
+ roundness?: ComponentRoundness;
35
41
  /** How should the button appear? */
36
- variant?: 'text' | 'solid';
42
+ variant?: ComponentWeight;
37
43
  /** Add a border around the button */
38
44
  outline?: boolean;
39
45
  /** Compact button for icons */
@@ -73,17 +79,17 @@
73
79
  anchorMediaType?: string | undefined | null;
74
80
  /** Link button: referrerpolicy */
75
81
  referrerpolicy?: ButtonLinkReferrerpolicy;
76
- /** Test: ⚠️ Unsafe Children String. Do Not use*/
77
- _unsafeChildrenStringForTesting?: string;
78
82
  }
83
+ </script>
79
84
 
85
+ <script lang="ts">
80
86
  let {
81
87
  children,
82
88
  type = 'button',
83
89
  size = 'normal',
84
- color = 'default',
85
- roundness = '1x',
86
- variant = 'text',
90
+ color = 'primary',
91
+ roundness = 1,
92
+ variant = 'solid',
87
93
  outline = false,
88
94
  compact = false,
89
95
  fullWidth = false,
@@ -104,7 +110,6 @@
104
110
  target,
105
111
  anchorMediaType,
106
112
  referrerpolicy,
107
- _unsafeChildrenStringForTesting,
108
113
  ref = $bindable<HTMLButtonElement | HTMLAnchorElement>(),
109
114
  }: ButtonProps = $props();
110
115
  </script>
@@ -118,8 +123,6 @@
118
123
 
119
124
  {#if children}
120
125
  {@render children()}
121
- {:else if _unsafeChildrenStringForTesting}
122
- {_unsafeChildrenStringForTesting}
123
126
  {/if}
124
127
 
125
128
  {#if after}
@@ -187,10 +190,10 @@
187
190
  @use 'utils/scss/mixins.scss' as *;
188
191
 
189
192
  :global(:root) {
190
- --dodo-ui-Button-disabled-color: var(--dodo-color-default-400);
191
- --dodo-ui-Button-disabled-bg: var(--dodo-color-default-200);
193
+ --dodo-ui-Button-disabled-color: var(--dodo-color-neutral-400);
194
+ --dodo-ui-Button-disabled-bg: var(--dodo-color-neutral-200);
192
195
 
193
- @include generate-dodo-ui-button-colors(default);
196
+ @include generate-dodo-ui-button-colors(neutral);
194
197
  @include generate-dodo-ui-button-colors(primary);
195
198
  @include generate-dodo-ui-button-colors(secondary);
196
199
  @include generate-dodo-ui-button-colors(safe);
@@ -199,10 +202,10 @@
199
202
  }
200
203
 
201
204
  :global(.dodo-theme--dark) {
202
- --dodo-ui-Button-disabled-bg: var(--dodo-color-default-100);
203
- --dodo-ui-Button-disabled-color: var(--dodo-color-default-500);
205
+ --dodo-ui-Button-disabled-bg: var(--dodo-color-neutral-100);
206
+ --dodo-ui-Button-disabled-color: var(--dodo-color-neutral-500);
204
207
 
205
- @include generate-dodo-ui-button-colors-dark(default);
208
+ @include generate-dodo-ui-button-colors-dark(neutral);
206
209
  @include generate-dodo-ui-button-colors-dark(primary);
207
210
  @include generate-dodo-ui-button-colors-dark(secondary);
208
211
  @include generate-dodo-ui-button-colors-dark(safe);
@@ -233,13 +236,13 @@
233
236
  &--normal {
234
237
  height: var(--dodo-ui-element-height-normal);
235
238
  font-size: 1rem;
236
- padding: 0 12px;
239
+ padding: 0 calc(var(--dodo-ui-space-small) * 2);
237
240
  min-width: 45px;
238
241
  }
239
242
 
240
243
  &--small {
241
244
  height: var(--dodo-ui-element-height-small);
242
- padding: 0 8px;
245
+ padding: 0 var(--dodo-ui-space);
243
246
  font-size: 0.9rem;
244
247
  min-width: 35px;
245
248
  }
@@ -247,22 +250,22 @@
247
250
  &--large {
248
251
  height: var(--dodo-ui-element-height-large);
249
252
  font-size: 1.1rem;
250
- padding: 0 16px;
253
+ padding: 0 calc(var(--dodo-ui-space) * 2);
251
254
  min-width: 85px;
252
255
  }
253
256
  }
254
257
 
255
258
  &.roundness {
256
- &--1x {
257
- border-radius: var(--dodo-ui-element-roundness-1x);
259
+ &--1 {
260
+ border-radius: var(--dodo-ui-element-roundness-1);
258
261
  }
259
262
 
260
- &--2x {
261
- border-radius: var(--dodo-ui-element-roundness-2x);
263
+ &--2 {
264
+ border-radius: var(--dodo-ui-element-roundness-2);
262
265
  }
263
266
 
264
- &--3x {
265
- border-radius: var(--dodo-ui-element-roundness-3x);
267
+ &--3 {
268
+ border-radius: var(--dodo-ui-element-roundness-3);
266
269
  }
267
270
 
268
271
  &--full {
@@ -271,7 +274,7 @@
271
274
  }
272
275
 
273
276
  &.color {
274
- @include generate-dodo-ui-button-color(default);
277
+ @include generate-dodo-ui-button-color(neutral);
275
278
  @include generate-dodo-ui-button-color(primary);
276
279
  @include generate-dodo-ui-button-color(secondary);
277
280
  @include generate-dodo-ui-button-color(safe);
@@ -1,9 +1,7 @@
1
- <script lang="ts">
1
+ <script lang="ts" module>
2
2
  import type { Snippet } from 'svelte';
3
- import Label from '../Label/Label.svelte';
4
- import Message from '../Message/Message.svelte';
5
3
 
6
- interface FormControlProps {
4
+ export interface FormControlProps {
7
5
  /** FormControl contents goes here */
8
6
  children?: Snippet;
9
7
  /** Label for FormControl */
@@ -19,6 +17,11 @@
19
17
  /** Custom css class*/
20
18
  class?: string;
21
19
  }
20
+ </script>
21
+
22
+ <script lang="ts">
23
+ import Label from '../Label/Label.svelte';
24
+ import Message from '../Message/Message.svelte';
22
25
 
23
26
  let {
24
27
  children,
@@ -50,18 +53,13 @@
50
53
  </div>
51
54
 
52
55
  <style lang="scss">
53
- :global(:root) {
54
- --dodo-ui-FormControl-LabelSection-gap: 8px;
55
- --dodo-ui-FormControl-errorMessage-gap: 10px;
56
- }
57
-
58
56
  .dodo-ui-FormControl {
59
57
  .LabelSection {
60
- margin-bottom: var(--dodo-ui-FormControl-LabelSection-gap);
58
+ margin-bottom: var(--dodo-ui-space);
61
59
  }
62
60
 
63
61
  .errorMessage {
64
- margin-top: var(--dodo-ui-FormControl-errorMessage-gap);
62
+ margin-top: var(--dodo-ui-space-large);
65
63
  }
66
64
  }
67
65
  </style>
@@ -1,7 +1,7 @@
1
- <script lang="ts">
1
+ <script lang="ts" module>
2
2
  import type { Snippet } from 'svelte';
3
3
 
4
- interface LabelProps {
4
+ export interface LabelProps {
5
5
  /** Label contents goes here */
6
6
  children?: Snippet;
7
7
  /** Label ref */
@@ -12,16 +12,15 @@
12
12
  form?: string;
13
13
  /** Custom css class*/
14
14
  class?: string;
15
- /** Test: ⚠️ Unsafe Children String. Do Not use*/
16
- _unsafeChildrenStringForTesting?: string;
17
15
  }
16
+ </script>
18
17
 
18
+ <script lang="ts">
19
19
  let {
20
20
  children,
21
21
  class: className = '',
22
22
  for: htmlFor,
23
23
  form,
24
- _unsafeChildrenStringForTesting,
25
24
  ref = $bindable<HTMLLabelElement>(),
26
25
  }: LabelProps = $props();
27
26
  </script>
@@ -29,15 +28,13 @@
29
28
  <label class={['dodo-ui-Label', className].join(' ')} for={htmlFor} {form} bind:this={ref}>
30
29
  {#if children}
31
30
  {@render children()}
32
- {:else if _unsafeChildrenStringForTesting}
33
- {_unsafeChildrenStringForTesting}
34
31
  {/if}
35
32
  </label>
36
33
 
37
34
  <style lang="scss">
38
35
  .dodo-ui-Label {
39
36
  font-size: 0.95rem;
40
- color: var(--dodo-color-default-700);
37
+ color: var(--dodo-color-neutral-700);
41
38
  display: flex;
42
39
  align-items: center;
43
40
  font-family: inherit;
@@ -1,33 +1,30 @@
1
1
  <script lang="ts" module>
2
- export type MessageColor = 'default' | 'primary' | 'secondary' | 'safe' | 'warning' | 'danger';
3
- </script>
2
+ import type { ComponentColor } from '$lib/types/colors.js';
4
3
 
5
- <script lang="ts">
6
- import type { ComponentSize } from '$lib/types.js';
4
+ import type { ComponentSize } from '$lib/types/size.js';
7
5
 
8
6
  import type { Snippet } from 'svelte';
9
7
 
10
- interface MessageProps {
8
+ export interface MessageProps {
11
9
  /** Message contents goes here */
12
10
  children?: Snippet;
13
11
  /** Message ref */
14
12
  ref?: HTMLDivElement;
15
13
  /** What color to use? */
16
- color?: MessageColor;
14
+ color?: ComponentColor;
17
15
  /** Message size */
18
16
  size?: ComponentSize;
19
17
  /** Custom css class*/
20
18
  class?: string;
21
- /** Test: ⚠️ Unsafe Children String. Do Not use*/
22
- _unsafeChildrenStringForTesting?: string;
23
19
  }
20
+ </script>
24
21
 
22
+ <script lang="ts">
25
23
  let {
26
24
  children,
27
25
  class: className = '',
28
- color = 'default',
26
+ color = 'primary',
29
27
  ref = $bindable<HTMLDivElement>(),
30
- _unsafeChildrenStringForTesting,
31
28
  size = 'normal',
32
29
  }: MessageProps = $props();
33
30
  </script>
@@ -38,8 +35,6 @@
38
35
  >
39
36
  {#if children}
40
37
  {@render children()}
41
- {:else if _unsafeChildrenStringForTesting}
42
- {_unsafeChildrenStringForTesting}
43
38
  {/if}
44
39
  </div>
45
40
 
@@ -64,10 +59,6 @@
64
59
  }
65
60
 
66
61
  &.color {
67
- &--default {
68
- color: var(--dodo-color-default-800);
69
- }
70
-
71
62
  &--primary {
72
63
  color: var(--dodo-color-primary-600);
73
64
  }
@@ -76,6 +67,10 @@
76
67
  color: var(--dodo-color-secondary-600);
77
68
  }
78
69
 
70
+ &--neutral {
71
+ color: var(--dodo-color-neutral-600);
72
+ }
73
+
79
74
  &--safe {
80
75
  color: var(--dodo-color-safe-600);
81
76
  }