@witchcraft/ui 0.3.26 → 0.4.0-beta.10

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 (287) hide show
  1. package/README.md +54 -61
  2. package/dist/module.json +1 -1
  3. package/dist/module.mjs +1 -1
  4. package/dist/runtime/assets/animations.css +1 -1
  5. package/dist/runtime/assets/locales/en.json +2 -0
  6. package/dist/runtime/build/WitchcraftUiResolver.js +2 -2
  7. package/dist/runtime/components/TestControls/TestControls.vue +3 -3
  8. package/dist/runtime/components/WButton/WButton.d.vue.ts +34 -0
  9. package/dist/runtime/components/{LibButton/LibButton.vue → WButton/WButton.vue} +26 -38
  10. package/dist/runtime/components/WButton/WButton.vue.d.ts +34 -0
  11. package/dist/runtime/components/WCheckbox/WCheckbox.d.vue.ts +33 -0
  12. package/dist/runtime/components/WCheckbox/WCheckbox.vue +110 -0
  13. package/dist/runtime/components/WCheckbox/WCheckbox.vue.d.ts +33 -0
  14. package/dist/runtime/components/WColorInput/WColorInput.d.vue.ts +45 -0
  15. package/dist/runtime/components/WColorInput/WColorInput.vue +85 -0
  16. package/dist/runtime/components/WColorInput/WColorInput.vue.d.ts +45 -0
  17. package/dist/runtime/components/WColorInput/WColorSwatchButton.d.vue.ts +28 -0
  18. package/dist/runtime/components/WColorInput/WColorSwatchButton.vue +86 -0
  19. package/dist/runtime/components/WColorInput/WColorSwatchButton.vue.d.ts +28 -0
  20. package/dist/runtime/components/{LibColorPicker/LibColorPicker.d.vue.ts → WColorPicker/WColorPicker.d.vue.ts} +7 -6
  21. package/dist/runtime/components/{LibColorPicker/LibColorPicker.vue → WColorPicker/WColorPicker.vue} +41 -29
  22. package/dist/runtime/components/{LibColorPicker/LibColorPicker.vue.d.ts → WColorPicker/WColorPicker.vue.d.ts} +7 -6
  23. package/dist/runtime/components/WCombobox/WCombobox.d.vue.ts +111 -0
  24. package/dist/runtime/components/WCombobox/WCombobox.vue +405 -0
  25. package/dist/runtime/components/WCombobox/WCombobox.vue.d.ts +111 -0
  26. package/dist/runtime/components/WCombobox/storyPlays.d.ts +18 -0
  27. package/dist/runtime/components/WCombobox/storyPlays.js +68 -0
  28. package/dist/runtime/components/{LibDarkModeSwitcher/LibDarkModeSwitcher.d.vue.ts → WDarkModeSwitcher/WDarkModeSwitcher.d.vue.ts} +8 -13
  29. package/dist/runtime/components/{LibDarkModeSwitcher/LibDarkModeSwitcher.vue → WDarkModeSwitcher/WDarkModeSwitcher.vue} +11 -14
  30. package/dist/runtime/components/{LibDarkModeSwitcher/LibDarkModeSwitcher.vue.d.ts → WDarkModeSwitcher/WDarkModeSwitcher.vue.d.ts} +8 -13
  31. package/dist/runtime/components/WDatePicker/WDatePicker.d.vue.ts +40 -0
  32. package/dist/runtime/components/{LibDatePicker/LibDatePicker.vue → WDatePicker/WDatePicker.vue} +3 -7
  33. package/dist/runtime/components/WDatePicker/WDatePicker.vue.d.ts +40 -0
  34. package/dist/runtime/components/{LibDatePicker/LibRangeDatePicker.vue → WDatePicker/WRangeDatePicker.vue} +21 -21
  35. package/dist/runtime/components/{LibDatePicker/LibSingleDatePicker.vue → WDatePicker/WSingleDatePicker.vue} +21 -21
  36. package/dist/runtime/components/{LibDatePicker/LibTimeZonePicker.d.vue.ts → WDatePicker/WTimeZonePicker.d.vue.ts} +1 -11
  37. package/dist/runtime/components/{LibDatePicker/LibTimeZonePicker.vue → WDatePicker/WTimeZonePicker.vue} +5 -12
  38. package/dist/runtime/components/{LibDatePicker/LibTimeZonePicker.vue.d.ts → WDatePicker/WTimeZonePicker.vue.d.ts} +1 -11
  39. package/dist/runtime/components/{LibDebug/LibDebug.vue → WDebug/WDebug.vue} +10 -12
  40. package/dist/runtime/components/{LibDevOnly/LibDevOnly.d.vue.ts → WDevOnly/WDevOnly.d.vue.ts} +0 -3
  41. package/dist/runtime/components/{LibDevOnly/LibDevOnly.vue.d.ts → WDevOnly/WDevOnly.vue.d.ts} +0 -3
  42. package/dist/runtime/components/WFileInput/WFileInput.d.vue.ts +58 -0
  43. package/dist/runtime/components/{LibFileInput/LibFileInput.vue → WFileInput/WFileInput.vue} +74 -57
  44. package/dist/runtime/components/WFileInput/WFileInput.vue.d.ts +58 -0
  45. package/dist/runtime/components/{Icon/Icon.vue.d.ts → WIcon/WIcon.d.vue.ts} +2 -6
  46. package/dist/runtime/components/{Icon/Icon.vue → WIcon/WIcon.vue} +1 -1
  47. package/dist/runtime/components/{Icon/Icon.d.vue.ts → WIcon/WIcon.vue.d.ts} +2 -6
  48. package/dist/runtime/components/{LibMultiValues/LibMultiValues.d.vue.ts → WMultiValues/WMultiValues.d.vue.ts} +8 -14
  49. package/dist/runtime/components/WMultiValues/WMultiValues.vue +150 -0
  50. package/dist/runtime/components/{LibMultiValues/LibMultiValues.vue.d.ts → WMultiValues/WMultiValues.vue.d.ts} +8 -14
  51. package/dist/runtime/components/WNotifications/WNotification.d.vue.ts +37 -0
  52. package/dist/runtime/components/{LibNotifications/LibNotification.vue → WNotifications/WNotification.vue} +34 -47
  53. package/dist/runtime/components/WNotifications/WNotification.vue.d.ts +37 -0
  54. package/dist/runtime/components/WNotifications/WNotifications.d.vue.ts +11 -0
  55. package/dist/runtime/components/{LibNotifications/LibNotifications.vue → WNotifications/WNotifications.vue} +35 -17
  56. package/dist/runtime/components/WNotifications/WNotifications.vue.d.ts +11 -0
  57. package/dist/runtime/components/WNumberInput/WNumberInput.d.vue.ts +27 -0
  58. package/dist/runtime/components/WNumberInput/WNumberInput.vue +96 -0
  59. package/dist/runtime/components/WNumberInput/WNumberInput.vue.d.ts +27 -0
  60. package/dist/runtime/components/WPagination/WPagination.d.vue.ts +59 -0
  61. package/dist/runtime/components/WPagination/WPagination.vue +182 -0
  62. package/dist/runtime/components/WPagination/WPagination.vue.d.ts +59 -0
  63. package/dist/runtime/components/WPalette/WPalette.d.vue.ts +11 -0
  64. package/dist/runtime/components/{LibPalette/LibPalette.vue → WPalette/WPalette.vue} +3 -8
  65. package/dist/runtime/components/WPalette/WPalette.vue.d.ts +11 -0
  66. package/dist/runtime/components/WPopover/WPopover.d.vue.ts +45 -0
  67. package/dist/runtime/components/WPopover/WPopover.vue +144 -0
  68. package/dist/runtime/components/WPopover/WPopover.vue.d.ts +45 -0
  69. package/dist/runtime/components/WPopup/WPopup.d.vue.ts +51 -0
  70. package/dist/runtime/components/WPopup/WPopup.vue +106 -0
  71. package/dist/runtime/components/WPopup/WPopup.vue.d.ts +51 -0
  72. package/dist/runtime/components/{LibProgressBar/LibProgressBar.d.vue.ts → WProgressBar/WProgressBar.d.vue.ts} +14 -18
  73. package/dist/runtime/components/WProgressBar/WProgressBar.vue +150 -0
  74. package/dist/runtime/components/{LibProgressBar/LibProgressBar.vue.d.ts → WProgressBar/WProgressBar.vue.d.ts} +14 -18
  75. package/dist/runtime/components/{LibRecorder/LibRecorder.d.vue.ts → WRecorder/WRecorder.d.vue.ts} +14 -29
  76. package/dist/runtime/components/{LibRecorder/LibRecorder.vue → WRecorder/WRecorder.vue} +37 -36
  77. package/dist/runtime/components/{LibRecorder/LibRecorder.vue.d.ts → WRecorder/WRecorder.vue.d.ts} +14 -29
  78. package/dist/runtime/components/{LibRoot/LibRoot.d.vue.ts → WRoot/WRoot.d.vue.ts} +6 -5
  79. package/dist/runtime/components/{LibRoot/LibRoot.vue → WRoot/WRoot.vue} +17 -15
  80. package/dist/runtime/components/{LibRoot/LibRoot.vue.d.ts → WRoot/WRoot.vue.d.ts} +6 -5
  81. package/dist/runtime/components/{LibSimpleInput/LibSimpleInput.d.vue.ts → WSimpleInput/WSimpleInput.d.vue.ts} +10 -16
  82. package/dist/runtime/components/{LibSimpleInput/LibSimpleInput.vue → WSimpleInput/WSimpleInput.vue} +14 -24
  83. package/dist/runtime/components/{LibSimpleInput/LibSimpleInput.vue.d.ts → WSimpleInput/WSimpleInput.vue.d.ts} +10 -16
  84. package/dist/runtime/components/WTable/WTable.d.vue.ts +102 -0
  85. package/dist/runtime/components/{LibTable/LibTable.vue → WTable/WTable.vue} +13 -14
  86. package/dist/runtime/components/WTable/WTable.vue.d.ts +102 -0
  87. package/dist/runtime/components/WTooltip/WTooltip.d.vue.ts +40 -0
  88. package/dist/runtime/components/WTooltip/WTooltip.vue +112 -0
  89. package/dist/runtime/components/WTooltip/WTooltip.vue.d.ts +40 -0
  90. package/dist/runtime/components/index.d.ts +20 -20
  91. package/dist/runtime/components/index.js +20 -20
  92. package/dist/runtime/composables/index.d.ts +4 -4
  93. package/dist/runtime/composables/index.js +4 -4
  94. package/dist/runtime/composables/useDelayedLoadingIndicator.d.ts +9 -0
  95. package/dist/runtime/composables/useDelayedLoadingIndicator.js +18 -0
  96. package/dist/runtime/composables/useDisplayForReka.d.ts +25 -0
  97. package/dist/runtime/composables/useDisplayForReka.js +16 -0
  98. package/dist/runtime/composables/useFallbackId.d.ts +3 -0
  99. package/dist/runtime/composables/useFallbackId.js +5 -0
  100. package/dist/runtime/composables/useInjectedDarkMode.d.ts +1 -1
  101. package/dist/runtime/composables/usePopupConstrainToStyle.d.ts +8 -0
  102. package/dist/runtime/composables/usePopupConstrainToStyle.js +8 -0
  103. package/dist/runtime/composables/useSetupDarkMode.d.ts +2 -3
  104. package/dist/runtime/composables/useSetupDarkMode.js +90 -4
  105. package/dist/runtime/helpers/NotificationHandler.d.ts +2 -2
  106. package/dist/runtime/injectionKeys.d.ts +1 -5
  107. package/dist/runtime/injectionKeys.js +0 -2
  108. package/dist/runtime/types/index.d.ts +85 -27
  109. package/dist/runtime/types/index.js +1 -0
  110. package/package.json +1 -1
  111. package/src/module.ts +1 -1
  112. package/src/runtime/assets/animations.css +3 -3
  113. package/src/runtime/assets/locales/en.json +2 -0
  114. package/src/runtime/build/WitchcraftUiResolver.ts +2 -2
  115. package/src/runtime/components/TestControls/TestControls.vue +3 -3
  116. package/src/runtime/components/WButton/WButton.stories.ts +112 -0
  117. package/src/runtime/components/{LibButton/LibButton.vue → WButton/WButton.vue} +34 -50
  118. package/src/runtime/components/{LibCheckbox/LibCheckbox.stories.ts → WCheckbox/WCheckbox.stories.ts} +5 -5
  119. package/src/runtime/components/WCheckbox/WCheckbox.vue +125 -0
  120. package/src/runtime/components/{LibColorInput/LibColorInput.stories.ts → WColorInput/WColorInput.stories.ts} +8 -8
  121. package/src/runtime/components/WColorInput/WColorInput.vue +112 -0
  122. package/src/runtime/components/WColorInput/WColorSwatchButton.vue +102 -0
  123. package/src/runtime/components/{LibColorPicker/LibColorPicker.stories.ts → WColorPicker/WColorPicker.stories.ts} +12 -12
  124. package/src/runtime/components/{LibColorPicker/LibColorPicker.vue → WColorPicker/WColorPicker.vue} +44 -31
  125. package/src/runtime/components/WCombobox/WCombobox.stories.ts +209 -0
  126. package/src/runtime/components/WCombobox/WCombobox.vue +450 -0
  127. package/src/runtime/components/WCombobox/storyPlays.ts +92 -0
  128. package/src/runtime/components/{LibDarkModeSwitcher/LibDarkModeSwitcher.stories.ts → WDarkModeSwitcher/WDarkModeSwitcher.stories.ts} +6 -6
  129. package/src/runtime/components/{LibDarkModeSwitcher/LibDarkModeSwitcher.vue → WDarkModeSwitcher/WDarkModeSwitcher.vue} +19 -30
  130. package/src/runtime/components/{LibDatePicker/LibDatePicker.stories.ts → WDatePicker/WDatePicker.stories.ts} +42 -34
  131. package/src/runtime/components/{LibDatePicker/LibDatePicker.vue → WDatePicker/WDatePicker.vue} +3 -7
  132. package/src/runtime/components/{LibDatePicker/LibRangeDatePicker.vue → WDatePicker/WRangeDatePicker.vue} +21 -21
  133. package/src/runtime/components/{LibDatePicker/LibSingleDatePicker.vue → WDatePicker/WSingleDatePicker.vue} +21 -21
  134. package/src/runtime/components/{LibDatePicker/LibTimeZonePicker.vue → WDatePicker/WTimeZonePicker.vue} +5 -12
  135. package/src/runtime/components/{LibDebug/LibDebug.stories.ts → WDebug/WDebug.stories.ts} +5 -5
  136. package/src/runtime/components/{LibDebug/LibDebug.vue → WDebug/WDebug.vue} +9 -10
  137. package/src/runtime/components/{LibDevOnly/LibDevOnly.vue → WDevOnly/WDevOnly.vue} +0 -4
  138. package/src/runtime/components/{LibFileInput/LibFileInput.stories.ts → WFileInput/WFileInput.stories.ts} +7 -7
  139. package/src/runtime/components/{LibFileInput/LibFileInput.vue → WFileInput/WFileInput.vue} +98 -97
  140. package/src/runtime/components/{Icon/Icon.vue → WIcon/WIcon.vue} +5 -8
  141. package/src/runtime/components/{LibMultiValues/LibMultiValues.stories.ts → WMultiValues/WMultiValues.stories.ts} +9 -9
  142. package/src/runtime/components/WMultiValues/WMultiValues.vue +163 -0
  143. package/src/runtime/components/{LibNotifications/LibNotification.stories.ts → WNotifications/WNotification.stories.ts} +9 -9
  144. package/src/runtime/components/{LibNotifications/LibNotification.vue → WNotifications/WNotification.vue} +45 -65
  145. package/src/runtime/components/WNotifications/WNotifications.stories.ts +139 -0
  146. package/src/runtime/components/{LibNotifications/LibNotifications.vue → WNotifications/WNotifications.vue} +51 -29
  147. package/src/runtime/components/WNumberInput/WNumberInput.vue +109 -0
  148. package/src/runtime/components/WPagination/WPagination.stories.ts +51 -0
  149. package/src/runtime/components/WPagination/WPagination.vue +207 -0
  150. package/src/runtime/components/{LibPalette/LibPalette.stories.ts → WPalette/WPalette.stories.ts} +6 -6
  151. package/src/runtime/components/{LibPalette/LibPalette.vue → WPalette/WPalette.vue} +3 -8
  152. package/src/runtime/components/WPopover/WPopover.stories.ts +218 -0
  153. package/src/runtime/components/WPopover/WPopover.vue +168 -0
  154. package/src/runtime/components/WPopup/WPopup.stories.ts +104 -0
  155. package/src/runtime/components/WPopup/WPopup.vue +125 -0
  156. package/src/runtime/components/WProgressBar/WProgressBar.stories.ts +119 -0
  157. package/src/runtime/components/WProgressBar/WProgressBar.vue +185 -0
  158. package/src/runtime/components/{LibRecorder/LibRecorder.stories.ts → WRecorder/WRecorder.stories.ts} +9 -6
  159. package/src/runtime/components/{LibRecorder/LibRecorder.vue → WRecorder/WRecorder.vue} +69 -68
  160. package/src/runtime/components/{LibRoot/LibRoot.vue → WRoot/WRoot.vue} +18 -15
  161. package/src/runtime/components/{LibSimpleInput/LibSimpleInput.stories.ts → WSimpleInput/WSimpleInput.stories.ts} +11 -12
  162. package/src/runtime/components/{LibSimpleInput/LibSimpleInput.vue → WSimpleInput/WSimpleInput.vue} +28 -44
  163. package/src/runtime/components/{LibTable/LibTable.stories.ts → WTable/WTable.stories.ts} +60 -52
  164. package/src/runtime/components/{LibTable/LibTable.vue → WTable/WTable.vue} +85 -88
  165. package/src/runtime/components/WTooltip/WTooltip.stories.ts +82 -0
  166. package/src/runtime/components/WTooltip/WTooltip.vue +128 -0
  167. package/src/runtime/components/index.ts +20 -20
  168. package/src/runtime/composables/index.ts +4 -4
  169. package/src/runtime/composables/useDelayedLoadingIndicator.ts +30 -0
  170. package/src/runtime/composables/useDisplayForReka.ts +37 -0
  171. package/src/runtime/composables/useFallbackId.ts +6 -0
  172. package/src/runtime/composables/useInjectedDarkMode.ts +1 -2
  173. package/src/runtime/composables/usePopupConstrainToStyle.ts +29 -0
  174. package/src/runtime/composables/useSetupDarkMode.ts +122 -4
  175. package/src/runtime/helpers/NotificationHandler.ts +2 -2
  176. package/src/runtime/injectionKeys.ts +1 -7
  177. package/src/runtime/types/index.ts +105 -32
  178. package/types/components.d.ts +14 -15
  179. package/dist/runtime/components/Aria/Aria.d.vue.ts +0 -6
  180. package/dist/runtime/components/Aria/Aria.vue +0 -16
  181. package/dist/runtime/components/Aria/Aria.vue.d.ts +0 -6
  182. package/dist/runtime/components/LibButton/LibButton.d.vue.ts +0 -37
  183. package/dist/runtime/components/LibButton/LibButton.vue.d.ts +0 -37
  184. package/dist/runtime/components/LibCheckbox/LibCheckbox.d.vue.ts +0 -41
  185. package/dist/runtime/components/LibCheckbox/LibCheckbox.vue +0 -103
  186. package/dist/runtime/components/LibCheckbox/LibCheckbox.vue.d.ts +0 -41
  187. package/dist/runtime/components/LibColorInput/LibColorInput.d.vue.ts +0 -64
  188. package/dist/runtime/components/LibColorInput/LibColorInput.vue +0 -162
  189. package/dist/runtime/components/LibColorInput/LibColorInput.vue.d.ts +0 -64
  190. package/dist/runtime/components/LibDatePicker/LibDatePicker.d.vue.ts +0 -191
  191. package/dist/runtime/components/LibDatePicker/LibDatePicker.vue.d.ts +0 -191
  192. package/dist/runtime/components/LibFileInput/LibFileInput.d.vue.ts +0 -46
  193. package/dist/runtime/components/LibFileInput/LibFileInput.vue.d.ts +0 -46
  194. package/dist/runtime/components/LibInputDeprecated/LibInputDeprecated.d.vue.ts +0 -256
  195. package/dist/runtime/components/LibInputDeprecated/LibInputDeprecated.vue +0 -387
  196. package/dist/runtime/components/LibInputDeprecated/LibInputDeprecated.vue.d.ts +0 -256
  197. package/dist/runtime/components/LibLabel/LibLabel.d.vue.ts +0 -27
  198. package/dist/runtime/components/LibLabel/LibLabel.vue +0 -45
  199. package/dist/runtime/components/LibLabel/LibLabel.vue.d.ts +0 -27
  200. package/dist/runtime/components/LibMultiValues/LibMultiValues.vue +0 -109
  201. package/dist/runtime/components/LibNotifications/LibNotification.d.vue.ts +0 -45
  202. package/dist/runtime/components/LibNotifications/LibNotification.vue.d.ts +0 -45
  203. package/dist/runtime/components/LibNotifications/LibNotifications.d.vue.ts +0 -15
  204. package/dist/runtime/components/LibNotifications/LibNotifications.vue.d.ts +0 -15
  205. package/dist/runtime/components/LibPagination/LibPagination.d.vue.ts +0 -105
  206. package/dist/runtime/components/LibPagination/LibPagination.vue +0 -229
  207. package/dist/runtime/components/LibPagination/LibPagination.vue.d.ts +0 -105
  208. package/dist/runtime/components/LibPalette/LibPalette.d.vue.ts +0 -15
  209. package/dist/runtime/components/LibPalette/LibPalette.vue.d.ts +0 -15
  210. package/dist/runtime/components/LibPopup/LibPopup.d.vue.ts +0 -52
  211. package/dist/runtime/components/LibPopup/LibPopup.vue +0 -365
  212. package/dist/runtime/components/LibPopup/LibPopup.vue.d.ts +0 -52
  213. package/dist/runtime/components/LibProgressBar/LibProgressBar.vue +0 -169
  214. package/dist/runtime/components/LibSuggestions/LibSuggestions.d.vue.ts +0 -99
  215. package/dist/runtime/components/LibSuggestions/LibSuggestions.vue +0 -178
  216. package/dist/runtime/components/LibSuggestions/LibSuggestions.vue.d.ts +0 -99
  217. package/dist/runtime/components/LibTable/LibTable.d.vue.ts +0 -125
  218. package/dist/runtime/components/LibTable/LibTable.vue.d.ts +0 -125
  219. package/dist/runtime/components/Template/NAME.d.vue.ts +0 -18
  220. package/dist/runtime/components/Template/NAME.vue +0 -27
  221. package/dist/runtime/components/Template/NAME.vue.d.ts +0 -18
  222. package/dist/runtime/components/Template/TemplateStory.d.ts +0 -7
  223. package/dist/runtime/components/Template/TemplateStory.js +0 -22
  224. package/dist/runtime/components/shared/props.d.ts +0 -171
  225. package/dist/runtime/components/shared/props.js +0 -2
  226. package/dist/runtime/composables/useAriaLabel.d.ts +0 -6
  227. package/dist/runtime/composables/useAriaLabel.js +0 -15
  228. package/dist/runtime/composables/useDarkMode.d.ts +0 -77
  229. package/dist/runtime/composables/useDarkMode.js +0 -89
  230. package/dist/runtime/composables/useDivideAttrs.d.ts +0 -27
  231. package/dist/runtime/composables/useDivideAttrs.js +0 -27
  232. package/dist/runtime/composables/useSuggestions.d.ts +0 -40
  233. package/dist/runtime/composables/useSuggestions.js +0 -263
  234. package/src/runtime/components/Aria/Aria.vue +0 -26
  235. package/src/runtime/components/LibButton/LibButton.stories.ts +0 -106
  236. package/src/runtime/components/LibCheckbox/LibCheckbox.vue +0 -131
  237. package/src/runtime/components/LibColorInput/LibColorInput.vue +0 -203
  238. package/src/runtime/components/LibInputDeprecated/LibInputDeprecated.stories.ts +0 -405
  239. package/src/runtime/components/LibInputDeprecated/LibInputDeprecated.vue +0 -419
  240. package/src/runtime/components/LibLabel/LibLabel.stories.ts +0 -33
  241. package/src/runtime/components/LibLabel/LibLabel.vue +0 -65
  242. package/src/runtime/components/LibMultiValues/LibMultiValues.vue +0 -123
  243. package/src/runtime/components/LibNotifications/LibNotifications.stories.ts +0 -131
  244. package/src/runtime/components/LibPagination/LibPagination.stories.ts +0 -49
  245. package/src/runtime/components/LibPagination/LibPagination.vue +0 -274
  246. package/src/runtime/components/LibPopup/LibPopup.stories.ts +0 -153
  247. package/src/runtime/components/LibPopup/LibPopup.vue +0 -396
  248. package/src/runtime/components/LibProgressBar/LibProgressBar.stories.ts +0 -90
  249. package/src/runtime/components/LibProgressBar/LibProgressBar.vue +0 -197
  250. package/src/runtime/components/LibSuggestions/LibSuggestions.stories.ts +0 -134
  251. package/src/runtime/components/LibSuggestions/LibSuggestions.vue +0 -212
  252. package/src/runtime/components/Template/NAME.vue +0 -49
  253. package/src/runtime/components/Template/TemplateStory.ts +0 -37
  254. package/src/runtime/components/shared/props.ts +0 -199
  255. package/src/runtime/composables/useAriaLabel.ts +0 -23
  256. package/src/runtime/composables/useDarkMode.ts +0 -199
  257. package/src/runtime/composables/useDivideAttrs.ts +0 -53
  258. package/src/runtime/composables/useSuggestions.ts +0 -339
  259. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToHsva.d.ts +0 -0
  260. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToHsva.js +0 -0
  261. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToRgba.d.ts +0 -0
  262. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToRgba.js +0 -0
  263. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/toLowPrecisionRgbaString.d.ts +0 -0
  264. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/toLowPrecisionRgbaString.js +0 -0
  265. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/truncate.d.ts +0 -0
  266. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/truncate.js +0 -0
  267. /package/dist/runtime/components/{LibDatePicker/LibRangeDatePicker.d.vue.ts → WDatePicker/WRangeDatePicker.d.vue.ts} +0 -0
  268. /package/dist/runtime/components/{LibDatePicker/LibRangeDatePicker.vue.d.ts → WDatePicker/WRangeDatePicker.vue.d.ts} +0 -0
  269. /package/dist/runtime/components/{LibDatePicker/LibSingleDatePicker.d.vue.ts → WDatePicker/WSingleDatePicker.d.vue.ts} +0 -0
  270. /package/dist/runtime/components/{LibDatePicker/LibSingleDatePicker.vue.d.ts → WDatePicker/WSingleDatePicker.vue.d.ts} +0 -0
  271. /package/dist/runtime/components/{LibDatePicker → WDatePicker}/helpers.d.ts +0 -0
  272. /package/dist/runtime/components/{LibDatePicker → WDatePicker}/helpers.js +0 -0
  273. /package/dist/runtime/components/{LibDebug/LibDebug.d.vue.ts → WDebug/WDebug.d.vue.ts} +0 -0
  274. /package/dist/runtime/components/{LibDebug/LibDebug.vue.d.ts → WDebug/WDebug.vue.d.ts} +0 -0
  275. /package/dist/runtime/components/{LibDevOnly/LibDevOnly.vue → WDevOnly/WDevOnly.vue} +0 -0
  276. /package/dist/runtime/components/{LibNotifications/LibNotificationTestMessageComponent.d.vue.ts → WNotifications/WNotificationTestMessageComponent.d.vue.ts} +0 -0
  277. /package/dist/runtime/components/{LibNotifications/LibNotificationTestMessageComponent.vue → WNotifications/WNotificationTestMessageComponent.vue} +0 -0
  278. /package/dist/runtime/components/{LibNotifications/LibNotificationTestMessageComponent.vue.d.ts → WNotifications/WNotificationTestMessageComponent.vue.d.ts} +0 -0
  279. /package/dist/runtime/components/{LibNotifications → WNotifications}/calculateNotificationProgress.d.ts +0 -0
  280. /package/dist/runtime/components/{LibNotifications → WNotifications}/calculateNotificationProgress.js +0 -0
  281. /package/src/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToHsva.ts +0 -0
  282. /package/src/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToRgba.ts +0 -0
  283. /package/src/runtime/components/{LibColorPicker → WColorPicker}/utils/toLowPrecisionRgbaString.ts +0 -0
  284. /package/src/runtime/components/{LibColorPicker → WColorPicker}/utils/truncate.ts +0 -0
  285. /package/src/runtime/components/{LibDatePicker → WDatePicker}/helpers.ts +0 -0
  286. /package/src/runtime/components/{LibNotifications/LibNotificationTestMessageComponent.vue → WNotifications/WNotificationTestMessageComponent.vue} +0 -0
  287. /package/src/runtime/components/{LibNotifications → WNotifications}/calculateNotificationProgress.ts +0 -0
@@ -0,0 +1,104 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ import type { Meta, StoryObj } from "@storybook/vue3"
3
+ import { ref } from "vue"
4
+
5
+ import WPopup from "./WPopup.vue"
6
+
7
+ import * as components from "../index.js"
8
+
9
+ type ExtraTestArgs = {
10
+ _slots: string
11
+ }
12
+ const meta: Meta<typeof WPopup> = {
13
+ component: WPopup,
14
+ title: "Components/Popup",
15
+ args: {
16
+ title: "Popup Title",
17
+ description: "Popup Description"
18
+ }
19
+ }
20
+
21
+ export default meta
22
+ type Story = StoryObj<typeof WPopup> & { args?: ExtraTestArgs }
23
+
24
+ export const Primary: Story = {
25
+ render: args => {
26
+ const extraArgs = args as ExtraTestArgs
27
+ return {
28
+ components,
29
+ setup: () => {
30
+ const value = ref(false)
31
+ return { args, value }
32
+ },
33
+ template: `
34
+ <div class="test bg-transparency-squares flex items-center justify-center" style="height:80vh;border:1px solid black;">
35
+ <WPopup
36
+ :title="args.title"
37
+ :description="args.description"
38
+ v-model="value"
39
+ v-bind="args"
40
+ >
41
+ ${extraArgs._slots}
42
+ <template #button>
43
+ <WButton>Open Modal Popup</WButton>
44
+ </template>
45
+ <template #extra>
46
+ <div
47
+ :style="{width: args.width, height: args.height}"
48
+ >
49
+ <div>Extra Slot</div>
50
+ </div>
51
+ </template>
52
+ </WPopup>
53
+ </div>
54
+ `
55
+ }
56
+ }
57
+ }
58
+
59
+ export const OtherSlots = {
60
+ ...Primary,
61
+ args: {
62
+ _slots: `
63
+ <template #title>
64
+ <div>Title Slot</div>
65
+ </template>
66
+ <template #description>
67
+ <div>Description Slot</div>
68
+ </template>
69
+ <template #close>
70
+ <div>Close Slot</div>
71
+ </template>
72
+ <template #backdrop>
73
+ <div>Backdrop Slot</div>
74
+ </template>
75
+ `
76
+ }
77
+ }
78
+
79
+ export const PopupSlots = {
80
+ ...Primary,
81
+ args: {
82
+ _slots: `
83
+ <template #popup>
84
+ <div>Popup Slot - Replaces Other Slots except Close (note, you must provide reka's DialogTitle and DialogDescription to avoid it's warnings</div>
85
+ </template>
86
+ `
87
+ }
88
+ }
89
+ export const PopupLarge = {
90
+ ...Primary,
91
+ args: {
92
+ width: "80vw",
93
+ height: "80vh"
94
+ }
95
+ }
96
+
97
+ // popup should scroll contents instead of getting to big (popup will limit it)
98
+ export const PopupTooBig = {
99
+ ...Primary,
100
+ args: {
101
+ width: "110vw",
102
+ height: "110vh"
103
+ }
104
+ }
@@ -0,0 +1,125 @@
1
+ <template>
2
+ <DialogRoot
3
+ v-bind="rootProps"
4
+ v-model:open="modelValue"
5
+ >
6
+ <DialogTrigger
7
+ v-if="$slots.button"
8
+ as-child
9
+ >
10
+ <slot name="button"/>
11
+ </DialogTrigger>
12
+
13
+ <DialogPortal :to="to">
14
+ <DialogOverlay
15
+ as-child
16
+ >
17
+ <slot
18
+ name="backdrop"
19
+ class="popup--backdrop absolute inset-0 bg-black/50"
20
+ >
21
+ <div
22
+ class="popup--backdrop absolute inset-0 bg-black/50"
23
+ />
24
+ </slot>
25
+ </DialogOverlay>
26
+
27
+
28
+ <DialogContent
29
+ v-bind="{ ...contentProps, class: undefined }"
30
+ :class="twMerge(`
31
+ popup--content
32
+ z-100
33
+ focus:outline-none
34
+ fixed
35
+ top-1/2
36
+ left-1/2
37
+ -translate-x-1/2
38
+ -translate-y-1/2
39
+ animate-contentShow
40
+ max-w-[100dvw]
41
+ max-h-[100dvh]
42
+ overflow-auto
43
+ scrollbar-hidden
44
+ p-5
45
+ `, contentProps?.class)"
46
+ >
47
+ <div
48
+ :class="twMerge(`
49
+ popup--content-inner
50
+ flex
51
+ flex-col
52
+ bg-neutral-100
53
+ dark:bg-neutral-800
54
+ rounded-md
55
+ flex
56
+ flex-col
57
+ gap-3
58
+ p-2
59
+ `)"
60
+ >
61
+ <slot name="popup">
62
+ <slot name="title">
63
+ <DialogTitle
64
+ v-if="title"
65
+ class="text-lg font-bold"
66
+ >
67
+ {{ title }}
68
+ </DialogTitle>
69
+ </slot>
70
+ <slot name="description">
71
+ <DialogDescription v-if="description">
72
+ {{ description }}
73
+ </DialogDescription>
74
+ </slot>
75
+ <slot name="extra"/>
76
+ </slot>
77
+ <DialogCloseButton as-child>
78
+ <slot name="close">
79
+ <WButton
80
+ class="justify-self-end"
81
+ @click="modelValue = false"
82
+ >
83
+ Close
84
+ </WButton>
85
+ </slot>
86
+ </DialogCloseButton>
87
+ </div>
88
+ </DialogContent>
89
+ </DialogPortal>
90
+ </DialogRoot>
91
+ </template>
92
+
93
+ <script setup lang="ts">
94
+ import type {
95
+ DialogContentEmits,
96
+ DialogContentProps,
97
+ DialogRootEmits,
98
+ DialogRootProps } from "reka-ui"
99
+ import { DialogContent, DialogOverlay, DialogPortal, DialogRoot, DialogTrigger } from "reka-ui"
100
+ import type { EmitsToProps, HTMLAttributes } from "vue"
101
+
102
+ import type { TailwindClassProp } from "../../types/index.js"
103
+ import { twMerge } from "../../utils/twMerge.js"
104
+ import WButton from "../WButton/WButton.vue"
105
+
106
+ defineOptions({ name: "WPopup", inheritAttrs: false })
107
+
108
+ withDefaults(defineProps<
109
+ & {
110
+ title?: string
111
+ description?: string
112
+ backdropClass?: string
113
+ /** Overrides reka-ui's DialogContentProps */
114
+ contentProps?: DialogContentProps & EmitsToProps<DialogContentEmits> & Omit<HTMLAttributes, "class"> & TailwindClassProp
115
+ /** Overrides reka-ui's DialogRootProps */
116
+ rootProps?: DialogRootProps & EmitsToProps<DialogRootEmits> & Omit<HTMLAttributes, "class"> & TailwindClassProp
117
+ /** Overrides teleport target. */
118
+ to?: string
119
+ }
120
+ >(), {
121
+ to: "#root"
122
+ })
123
+
124
+ const modelValue = defineModel<boolean>({ default: false })
125
+ </script>
@@ -0,0 +1,119 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ import type { Meta, StoryObj } from "@storybook/vue3"
3
+ import { onUnmounted, ref } from "vue"
4
+
5
+ import WProgressBar from "./WProgressBar.vue"
6
+
7
+ import * as components from "../index.js"
8
+
9
+ type ExtraTestArgs = {
10
+ _start?: number
11
+ _timeout?: number
12
+ _add?: number
13
+ }
14
+ const meta: Meta<typeof WProgressBar> = {
15
+ component: WProgressBar,
16
+ title: "Components/ProgressBar",
17
+ args: {
18
+ label: "Label",
19
+ ...{
20
+ _timeout: 1000,
21
+ _add: 10,
22
+ _start: 50
23
+ } satisfies ExtraTestArgs as any
24
+ }
25
+ }
26
+
27
+ export default meta
28
+ type Story = StoryObj<typeof WProgressBar> & { args?: ExtraTestArgs }
29
+
30
+ export const Primary: Story = {
31
+ render: args => {
32
+ const extraArgs = args as ExtraTestArgs
33
+ return {
34
+ components,
35
+ setup: () => {
36
+ const forceFull = ref(false)
37
+ const progress = ref(extraArgs._start as number)
38
+ if (args.progress) {
39
+ progress.value = args.progress
40
+ } else {
41
+ let justHitFull = false
42
+ const interval = setInterval(() => {
43
+ if (justHitFull) return
44
+ if (progress.value >= 100) {
45
+ justHitFull = true
46
+ // give it time to hide
47
+ setTimeout(() => {
48
+ progress.value = 0
49
+ justHitFull = false
50
+ }, 2000)
51
+ } else {
52
+ progress.value += extraArgs._add as number
53
+ }
54
+ }, extraArgs._timeout as number)
55
+ onUnmounted(() => {
56
+ clearInterval(interval)
57
+ })
58
+ }
59
+ return {
60
+ args: { ...args },
61
+ forceFull,
62
+ progress
63
+ }
64
+ },
65
+ template: `
66
+ <WCheckbox v-model="forceFull">Force 100%</WCheckbox>
67
+ <WProgressBar class="flex-1" v-bind="args" :progress="forceFull ? 100 : progress"></WProgressBar>
68
+ <br/>
69
+ Stretched in flexbox:
70
+ <div class="flex w-full">
71
+ <WProgressBar class="flex-1" v-bind="args" :progress="forceFull ? 100 : progress"></WProgressBar>
72
+ </div>
73
+ <hr class="mt-2"/>
74
+ `
75
+ }
76
+ }
77
+ }
78
+
79
+
80
+ export const ReallyLongLabel: Story = {
81
+ ...Primary,
82
+ args: {
83
+ ...Primary.args,
84
+ label: "Really Long Label Label to See Effect Really Long Label Label to See Effect Really Long Label Label to See Effect Really Long Label Label to See Effect"
85
+ }
86
+ }
87
+ export const Static: Story = {
88
+ ...Primary,
89
+ args: {
90
+ ...Primary.args,
91
+ progress: 50
92
+ }
93
+ }
94
+
95
+ export const AutoHiding: Story = {
96
+ ...Primary,
97
+ args: {
98
+ ...Primary.args,
99
+ autohideOnComplete: 500,
100
+ clamp: [10, 100],
101
+ // keepSpaceWhenHidden: true,
102
+ _start: 0,
103
+ _timeout: 1000,
104
+ _add: 10
105
+ }
106
+ }
107
+
108
+ export const AutoHidingNoKeepSpace: Story = {
109
+ ...Primary,
110
+ args: {
111
+ ...Primary.args,
112
+ autohideOnComplete: 500,
113
+ keepSpaceWhenHidden: false,
114
+ clamp: [10, 100],
115
+ _start: 0,
116
+ _timeout: 1000,
117
+ _add: 10
118
+ }
119
+ }
@@ -0,0 +1,185 @@
1
+ <template>
2
+ <Transition>
3
+ <div
4
+ v-if="currentVisibility !== 'hidden'"
5
+ :class="twMerge(`
6
+ progress-bar
7
+ w-[200px]
8
+ whitespace-nowrap
9
+ overflow-x-scroll
10
+ scrollbar-hidden
11
+ rounded-sm
12
+ flex
13
+ relative
14
+ text-sm
15
+ min-w-[50px]
16
+ after:shadow-inner
17
+ after:shadow-black/50
18
+ after:content-['']
19
+ after:absolute
20
+ after:inset-0
21
+ after:pointer-events-none
22
+ after:z-2
23
+ after:transition-all
24
+ before:content-['']
25
+ before:shadow-inner
26
+ before:shadow-black/50
27
+ before:rounded-sm
28
+ before:bg-bars-gradient
29
+ before:animate-slideBgInf
30
+ before:[background-size:15px_15px]
31
+ before:absolute
32
+ before:w-[var(--progress)]
33
+ before:top-0 before:bottom-0 before:left-0
34
+ before:transition-all
35
+ before:z-1
36
+ before:duration-500
37
+ `, currentVisibility === 'pseudo' && `
38
+ after:opacity-0
39
+ before:opacity-0
40
+ `, ($attrs as any).class)"
41
+ :data-value="progress"
42
+ role="progressbar"
43
+ :aria-valuenow="clampNumber(progress, clamp[0] ?? 0, clamp[1] ?? 100)"
44
+ :aria-valuemin="clamp[0] ?? 0"
45
+ :aria-valuemax="clamp[1] ?? 100"
46
+ :aria-label="label"
47
+ v-bind="{ ...$attrs, class: undefined }"
48
+ :style="`--progress: ${clampNumber(progress, clamp[0] ?? 0, clamp[1] ?? 100)}%;`"
49
+ >
50
+ <div
51
+ class="progress-bar--label-wrapper relative flex-1 z-3"
52
+ aria-hidden="true"
53
+ >
54
+ <span class="before:content-vertical-holder"/>
55
+
56
+ <Transition v-if="currentVisibility === 'visible'">
57
+ <slot>
58
+ <div
59
+ class="
60
+ progress-bar--bottom-label
61
+ text-black
62
+ dark:text-white
63
+ absolute
64
+ inset-0
65
+ flex
66
+ justify-center
67
+ px-2
68
+ "
69
+ >
70
+ <div class="truncate">
71
+ {{ label ?? "" }}
72
+ </div>
73
+ </div>
74
+ </slot>
75
+ </Transition>
76
+ <Transition v-if="currentVisibility === 'visible'">
77
+ <slot>
78
+ <div
79
+ class="
80
+ progress-bar--top-label
81
+ pointer-events-none
82
+ absolute
83
+ inset-0
84
+ flex
85
+ justify-center
86
+ transition-all
87
+ duration-500
88
+ text-white
89
+ [clip-path:inset(0_calc(100%-var(--progress))_0_0)]
90
+ px-2
91
+ "
92
+ >
93
+ <div class="truncate">
94
+ {{ label ?? "" }}
95
+ </div>
96
+ </div>
97
+ </slot>
98
+ </Transition>
99
+ </div>
100
+ </div>
101
+ </Transition>
102
+ </template>
103
+
104
+ <script setup lang="ts">
105
+ import { clampNumber } from "@alanscodelog/utils/clampNumber"
106
+ import { unreachable } from "@alanscodelog/utils/unreachable"
107
+ import type { HTMLAttributes } from "vue"
108
+ import { ref, useAttrs, watch } from "vue"
109
+
110
+ import type { TailwindClassProp } from "../../types/index.js"
111
+ import { twMerge } from "../../utils/twMerge.js"
112
+
113
+ defineOptions({
114
+ name: "WProgressBar",
115
+ inheritAttrs: false
116
+ })
117
+
118
+ const $attrs = useAttrs()
119
+ const props = withDefaults(defineProps<
120
+ & /** @vue-ignore */ Omit<HTMLAttributes, "class">
121
+ & /** @vue-ignore */ TailwindClassProp
122
+ & {
123
+ label?: string
124
+ /** A number from 0-100. It is auto-clamped. */
125
+ progress: number
126
+ /** Will auto hide after this given time if progress is 100% or more or less than 0% until progress is set to something else. Disabled (-1) by default. */
127
+ autohideOnComplete?: number
128
+ /**
129
+ * Do not actually hide the element, just leave an unstyled div,
130
+ * so the whole layout doesn't change on completion when autohideOnComplete is set.
131
+ */
132
+ keepSpaceWhenHidden?: boolean
133
+ /**
134
+ * By default the progress bar is visually clamped to 0-100, even if the value might be something else.
135
+ * You can change what it's clamped to here, to for example,
136
+ * show at least a small sliver of the progress bar when it's still 0.
137
+ */
138
+ clamp?: [start: number, end: number]
139
+ }
140
+ >(), {
141
+ autohideOnComplete: -1,
142
+ keepSpaceWhenHidden: false,
143
+ clamp: () => [0, 100]
144
+ })
145
+
146
+ type Visibility = "visible" | "pseudo" | "hidden"
147
+ const currentVisibility = ref<Visibility>("visible")
148
+ let lastVisibility: Visibility | null = null
149
+
150
+ function updateVisibility(
151
+ immediate: boolean = false,
152
+ onCleanup?: (cb: () => void) => void
153
+ ): void {
154
+ const isComplete = props.progress >= 100 || props.progress < 0
155
+ const shouldHide = props.autohideOnComplete > -1 && isComplete
156
+
157
+ if (!shouldHide) {
158
+ lastVisibility = null
159
+ currentVisibility.value = "visible"
160
+ return
161
+ }
162
+
163
+ const newVisibility: Visibility = props.keepSpaceWhenHidden ? "pseudo" : "hidden"
164
+
165
+ if (immediate) {
166
+ currentVisibility.value = newVisibility
167
+ lastVisibility = newVisibility
168
+ } else if (lastVisibility !== newVisibility) {
169
+ lastVisibility = newVisibility
170
+ const timeout = setTimeout(() => {
171
+ currentVisibility.value = newVisibility
172
+ }, props.autohideOnComplete) as any
173
+ if (!onCleanup) unreachable()
174
+ onCleanup(() => clearTimeout(timeout))
175
+ }
176
+ }
177
+
178
+ updateVisibility(true)
179
+
180
+ watch([
181
+ () => [props.progress, props.keepSpaceWhenHidden, props.autohideOnComplete]
182
+ ], (_new, _old, onCleanup) => {
183
+ updateVisibility(false, onCleanup)
184
+ })
185
+ </script>
@@ -2,8 +2,10 @@
2
2
  import type { Meta, StoryObj } from "@storybook/vue3"
3
3
  import { ref, watchEffect } from "vue"
4
4
 
5
+ import { vExtractRootEl } from "../../directives/vExtractRootEl.js"
5
6
  import { createRecorderHandler, createRecorderWatchEffect } from "../../helpers/storybook.js"
6
7
  import * as components from "../index.js"
8
+
7
9
  /**
8
10
  * This is a special input component designed to record any type of event.
9
11
  *
@@ -11,22 +13,22 @@ import * as components from "../index.js"
11
13
  *
12
14
  * This basic implementation just lists the keys. Enter accepts the recording, escape cancels back to the initial value.
13
15
  */
14
- const meta: Meta<typeof components.LibRecorder> = {
15
- component: components.LibRecorder,
16
+ const meta: Meta<typeof components.WRecorder> = {
17
+ component: components.WRecorder,
16
18
  title: "Components/Recorder",
17
19
  args: {
18
- label: "Some Label",
19
20
  recordingTitle: "Recording. Press enter or click away to accept. Press escape to cancel.",
20
21
  modelValue: "K E Y S"
21
22
  }
22
23
  }
23
24
 
24
25
  export default meta
25
- type Story = StoryObj<typeof components.LibRecorder>
26
+ type Story = StoryObj<typeof components.WRecorder>
26
27
 
27
28
  export const Primary: Story = {
28
29
  render: args => ({
29
30
  components,
31
+ directives: { vExtractRootEl },
30
32
  setup: () => {
31
33
  const recording = ref(false)
32
34
  const recordingValue = ref("")
@@ -44,14 +46,15 @@ export const Primary: Story = {
44
46
  }
45
47
  },
46
48
  template: `
47
- <lib-recorder
49
+ <WRecorder
48
50
  v-bind="args"
49
51
  v-extract-root-el="_ => recorderEl = _"
50
52
  :recordingValue="recordingValue"
51
53
  :recorder="recorder"
52
54
  v-model:recording="recording"
53
55
  v-model="modelValue"
54
- @recorder:click="recording = !recording"
56
+ @recorder:pointerdown="recording = !recording"
57
+ @recorder:blur="recordingValue = modelValue; recording = false"
55
58
  />
56
59
  `
57
60
  })