@witchcraft/ui 0.3.26 → 0.4.0-beta.2

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 +1 -1
  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 +109 -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} +40 -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 +109 -0
  24. package/dist/runtime/components/WCombobox/WCombobox.vue +402 -0
  25. package/dist/runtime/components/WCombobox/WCombobox.vue.d.ts +109 -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} +16 -21
  35. package/dist/runtime/components/{LibDatePicker/LibSingleDatePicker.vue → WDatePicker/WSingleDatePicker.vue} +16 -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} +9 -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} +71 -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 +149 -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} +32 -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 +43 -0
  67. package/dist/runtime/components/WPopover/WPopover.vue +138 -0
  68. package/dist/runtime/components/WPopover/WPopover.vue.d.ts +43 -0
  69. package/dist/runtime/components/WPopup/WPopup.d.vue.ts +41 -0
  70. package/dist/runtime/components/WPopup/WPopup.vue +74 -0
  71. package/dist/runtime/components/WPopup/WPopup.vue.d.ts +41 -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} +9 -16
  82. package/dist/runtime/components/{LibSimpleInput/LibSimpleInput.vue → WSimpleInput/WSimpleInput.vue} +12 -23
  83. package/dist/runtime/components/{LibSimpleInput/LibSimpleInput.vue.d.ts → WSimpleInput/WSimpleInput.vue.d.ts} +9 -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 +111 -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 +1 -1
  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 +123 -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} +43 -32
  125. package/src/runtime/components/WCombobox/WCombobox.stories.ts +209 -0
  126. package/src/runtime/components/WCombobox/WCombobox.vue +446 -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} +16 -22
  133. package/src/runtime/components/{LibDatePicker/LibSingleDatePicker.vue → WDatePicker/WSingleDatePicker.vue} +16 -22
  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} +8 -11
  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} +95 -98
  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 +161 -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} +43 -66
  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 +161 -0
  154. package/src/runtime/components/WPopup/WPopup.stories.ts +60 -0
  155. package/src/runtime/components/WPopup/WPopup.vue +93 -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} +27 -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 -87
  165. package/src/runtime/components/WTooltip/WTooltip.stories.ts +82 -0
  166. package/src/runtime/components/WTooltip/WTooltip.vue +126 -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 +13 -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,93 @@
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-wrapper
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
50
+ flex
51
+ flex-col
52
+ bg-neutral-100
53
+ dark:bg-neutral-800
54
+ rounded-md
55
+ `)"
56
+ >
57
+ <slot name="popup"/>
58
+ </div>
59
+ </DialogContent>
60
+ </DialogPortal>
61
+ </DialogRoot>
62
+ </template>
63
+
64
+ <script setup lang="ts">
65
+ import type {
66
+ DialogContentEmits,
67
+ DialogContentProps,
68
+ DialogRootEmits,
69
+ DialogRootProps } from "reka-ui"
70
+ import { DialogContent, DialogOverlay, DialogPortal, DialogRoot, DialogTrigger } from "reka-ui"
71
+ import type { EmitsToProps, HTMLAttributes } from "vue"
72
+
73
+ import type { TailwindClassProp } from "../../types/index.js"
74
+ import { twMerge } from "../../utils/twMerge.js"
75
+
76
+ defineOptions({ name: "WPopup", inheritAttrs: false })
77
+
78
+ withDefaults(defineProps<
79
+ & {
80
+ backdropClass?: string
81
+ /** Overrides reka-ui's DialogContentProps */
82
+ contentProps?: DialogContentProps & EmitsToProps<DialogContentEmits> & Omit<HTMLAttributes, "class"> & TailwindClassProp
83
+ /** Overrides reka-ui's DialogRootProps */
84
+ rootProps?: DialogRootProps & EmitsToProps<DialogRootEmits> & Omit<HTMLAttributes, "class"> & TailwindClassProp
85
+ /** Overrides teleport target. */
86
+ to?: string
87
+ }
88
+ >(), {
89
+ to: "#root"
90
+ })
91
+
92
+ const modelValue = defineModel<boolean>({ default: false })
93
+ </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
  })