@witchcraft/ui 0.3.25 → 0.4.0-beta.1

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 (288) hide show
  1. package/README.md +54 -61
  2. package/dist/module.json +1 -1
  3. package/dist/runtime/assets/animations.css +1 -1
  4. package/dist/runtime/assets/locales/en.json +2 -0
  5. package/dist/runtime/assets/utils.css +1 -1
  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 +8 -4
  106. package/dist/runtime/helpers/NotificationHandler.js +5 -8
  107. package/dist/runtime/injectionKeys.d.ts +1 -5
  108. package/dist/runtime/injectionKeys.js +0 -2
  109. package/dist/runtime/types/index.d.ts +85 -27
  110. package/dist/runtime/types/index.js +1 -0
  111. package/package.json +7 -7
  112. package/src/runtime/assets/animations.css +3 -3
  113. package/src/runtime/assets/locales/en.json +2 -0
  114. package/src/runtime/assets/utils.css +43 -0
  115. package/src/runtime/build/WitchcraftUiResolver.ts +1 -1
  116. package/src/runtime/components/TestControls/TestControls.vue +3 -3
  117. package/src/runtime/components/WButton/WButton.stories.ts +112 -0
  118. package/src/runtime/components/{LibButton/LibButton.vue → WButton/WButton.vue} +34 -50
  119. package/src/runtime/components/{LibCheckbox/LibCheckbox.stories.ts → WCheckbox/WCheckbox.stories.ts} +5 -5
  120. package/src/runtime/components/WCheckbox/WCheckbox.vue +123 -0
  121. package/src/runtime/components/{LibColorInput/LibColorInput.stories.ts → WColorInput/WColorInput.stories.ts} +8 -8
  122. package/src/runtime/components/WColorInput/WColorInput.vue +112 -0
  123. package/src/runtime/components/WColorInput/WColorSwatchButton.vue +102 -0
  124. package/src/runtime/components/{LibColorPicker/LibColorPicker.stories.ts → WColorPicker/WColorPicker.stories.ts} +12 -12
  125. package/src/runtime/components/{LibColorPicker/LibColorPicker.vue → WColorPicker/WColorPicker.vue} +43 -32
  126. package/src/runtime/components/WCombobox/WCombobox.stories.ts +209 -0
  127. package/src/runtime/components/WCombobox/WCombobox.vue +446 -0
  128. package/src/runtime/components/WCombobox/storyPlays.ts +92 -0
  129. package/src/runtime/components/{LibDarkModeSwitcher/LibDarkModeSwitcher.stories.ts → WDarkModeSwitcher/WDarkModeSwitcher.stories.ts} +6 -6
  130. package/src/runtime/components/{LibDarkModeSwitcher/LibDarkModeSwitcher.vue → WDarkModeSwitcher/WDarkModeSwitcher.vue} +19 -30
  131. package/src/runtime/components/{LibDatePicker/LibDatePicker.stories.ts → WDatePicker/WDatePicker.stories.ts} +42 -34
  132. package/src/runtime/components/{LibDatePicker/LibDatePicker.vue → WDatePicker/WDatePicker.vue} +3 -7
  133. package/src/runtime/components/{LibDatePicker/LibRangeDatePicker.vue → WDatePicker/WRangeDatePicker.vue} +16 -22
  134. package/src/runtime/components/{LibDatePicker/LibSingleDatePicker.vue → WDatePicker/WSingleDatePicker.vue} +16 -22
  135. package/src/runtime/components/{LibDatePicker/LibTimeZonePicker.vue → WDatePicker/WTimeZonePicker.vue} +5 -12
  136. package/src/runtime/components/{LibDebug/LibDebug.stories.ts → WDebug/WDebug.stories.ts} +5 -5
  137. package/src/runtime/components/{LibDebug/LibDebug.vue → WDebug/WDebug.vue} +8 -11
  138. package/src/runtime/components/{LibDevOnly/LibDevOnly.vue → WDevOnly/WDevOnly.vue} +0 -4
  139. package/src/runtime/components/{LibFileInput/LibFileInput.stories.ts → WFileInput/WFileInput.stories.ts} +7 -7
  140. package/src/runtime/components/{LibFileInput/LibFileInput.vue → WFileInput/WFileInput.vue} +95 -98
  141. package/src/runtime/components/{Icon/Icon.vue → WIcon/WIcon.vue} +5 -8
  142. package/src/runtime/components/{LibMultiValues/LibMultiValues.stories.ts → WMultiValues/WMultiValues.stories.ts} +9 -9
  143. package/src/runtime/components/WMultiValues/WMultiValues.vue +161 -0
  144. package/src/runtime/components/{LibNotifications/LibNotification.stories.ts → WNotifications/WNotification.stories.ts} +9 -9
  145. package/src/runtime/components/{LibNotifications/LibNotification.vue → WNotifications/WNotification.vue} +43 -66
  146. package/src/runtime/components/WNotifications/WNotifications.stories.ts +139 -0
  147. package/src/runtime/components/{LibNotifications/LibNotifications.vue → WNotifications/WNotifications.vue} +51 -29
  148. package/src/runtime/components/WNumberInput/WNumberInput.vue +109 -0
  149. package/src/runtime/components/WPagination/WPagination.stories.ts +51 -0
  150. package/src/runtime/components/WPagination/WPagination.vue +207 -0
  151. package/src/runtime/components/{LibPalette/LibPalette.stories.ts → WPalette/WPalette.stories.ts} +6 -6
  152. package/src/runtime/components/{LibPalette/LibPalette.vue → WPalette/WPalette.vue} +3 -8
  153. package/src/runtime/components/WPopover/WPopover.stories.ts +218 -0
  154. package/src/runtime/components/WPopover/WPopover.vue +161 -0
  155. package/src/runtime/components/WPopup/WPopup.stories.ts +60 -0
  156. package/src/runtime/components/WPopup/WPopup.vue +93 -0
  157. package/src/runtime/components/WProgressBar/WProgressBar.stories.ts +119 -0
  158. package/src/runtime/components/WProgressBar/WProgressBar.vue +185 -0
  159. package/src/runtime/components/{LibRecorder/LibRecorder.stories.ts → WRecorder/WRecorder.stories.ts} +9 -6
  160. package/src/runtime/components/{LibRecorder/LibRecorder.vue → WRecorder/WRecorder.vue} +69 -68
  161. package/src/runtime/components/{LibRoot/LibRoot.vue → WRoot/WRoot.vue} +18 -15
  162. package/src/runtime/components/{LibSimpleInput/LibSimpleInput.stories.ts → WSimpleInput/WSimpleInput.stories.ts} +11 -12
  163. package/src/runtime/components/{LibSimpleInput/LibSimpleInput.vue → WSimpleInput/WSimpleInput.vue} +27 -44
  164. package/src/runtime/components/{LibTable/LibTable.stories.ts → WTable/WTable.stories.ts} +60 -52
  165. package/src/runtime/components/{LibTable/LibTable.vue → WTable/WTable.vue} +85 -87
  166. package/src/runtime/components/WTooltip/WTooltip.stories.ts +82 -0
  167. package/src/runtime/components/WTooltip/WTooltip.vue +126 -0
  168. package/src/runtime/components/index.ts +20 -20
  169. package/src/runtime/composables/index.ts +4 -4
  170. package/src/runtime/composables/useDelayedLoadingIndicator.ts +30 -0
  171. package/src/runtime/composables/useDisplayForReka.ts +37 -0
  172. package/src/runtime/composables/useFallbackId.ts +6 -0
  173. package/src/runtime/composables/useInjectedDarkMode.ts +1 -2
  174. package/src/runtime/composables/usePopupConstrainToStyle.ts +29 -0
  175. package/src/runtime/composables/useSetupDarkMode.ts +122 -4
  176. package/src/runtime/helpers/NotificationHandler.ts +9 -11
  177. package/src/runtime/injectionKeys.ts +1 -7
  178. package/src/runtime/types/index.ts +105 -32
  179. package/types/components.d.ts +13 -15
  180. package/dist/runtime/components/Aria/Aria.d.vue.ts +0 -6
  181. package/dist/runtime/components/Aria/Aria.vue +0 -16
  182. package/dist/runtime/components/Aria/Aria.vue.d.ts +0 -6
  183. package/dist/runtime/components/LibButton/LibButton.d.vue.ts +0 -37
  184. package/dist/runtime/components/LibButton/LibButton.vue.d.ts +0 -37
  185. package/dist/runtime/components/LibCheckbox/LibCheckbox.d.vue.ts +0 -41
  186. package/dist/runtime/components/LibCheckbox/LibCheckbox.vue +0 -103
  187. package/dist/runtime/components/LibCheckbox/LibCheckbox.vue.d.ts +0 -41
  188. package/dist/runtime/components/LibColorInput/LibColorInput.d.vue.ts +0 -64
  189. package/dist/runtime/components/LibColorInput/LibColorInput.vue +0 -162
  190. package/dist/runtime/components/LibColorInput/LibColorInput.vue.d.ts +0 -64
  191. package/dist/runtime/components/LibDatePicker/LibDatePicker.d.vue.ts +0 -191
  192. package/dist/runtime/components/LibDatePicker/LibDatePicker.vue.d.ts +0 -191
  193. package/dist/runtime/components/LibFileInput/LibFileInput.d.vue.ts +0 -46
  194. package/dist/runtime/components/LibFileInput/LibFileInput.vue.d.ts +0 -46
  195. package/dist/runtime/components/LibInputDeprecated/LibInputDeprecated.d.vue.ts +0 -256
  196. package/dist/runtime/components/LibInputDeprecated/LibInputDeprecated.vue +0 -387
  197. package/dist/runtime/components/LibInputDeprecated/LibInputDeprecated.vue.d.ts +0 -256
  198. package/dist/runtime/components/LibLabel/LibLabel.d.vue.ts +0 -27
  199. package/dist/runtime/components/LibLabel/LibLabel.vue +0 -45
  200. package/dist/runtime/components/LibLabel/LibLabel.vue.d.ts +0 -27
  201. package/dist/runtime/components/LibMultiValues/LibMultiValues.vue +0 -109
  202. package/dist/runtime/components/LibNotifications/LibNotification.d.vue.ts +0 -45
  203. package/dist/runtime/components/LibNotifications/LibNotification.vue.d.ts +0 -45
  204. package/dist/runtime/components/LibNotifications/LibNotifications.d.vue.ts +0 -15
  205. package/dist/runtime/components/LibNotifications/LibNotifications.vue.d.ts +0 -15
  206. package/dist/runtime/components/LibPagination/LibPagination.d.vue.ts +0 -105
  207. package/dist/runtime/components/LibPagination/LibPagination.vue +0 -229
  208. package/dist/runtime/components/LibPagination/LibPagination.vue.d.ts +0 -105
  209. package/dist/runtime/components/LibPalette/LibPalette.d.vue.ts +0 -15
  210. package/dist/runtime/components/LibPalette/LibPalette.vue.d.ts +0 -15
  211. package/dist/runtime/components/LibPopup/LibPopup.d.vue.ts +0 -52
  212. package/dist/runtime/components/LibPopup/LibPopup.vue +0 -365
  213. package/dist/runtime/components/LibPopup/LibPopup.vue.d.ts +0 -52
  214. package/dist/runtime/components/LibProgressBar/LibProgressBar.vue +0 -169
  215. package/dist/runtime/components/LibSuggestions/LibSuggestions.d.vue.ts +0 -99
  216. package/dist/runtime/components/LibSuggestions/LibSuggestions.vue +0 -178
  217. package/dist/runtime/components/LibSuggestions/LibSuggestions.vue.d.ts +0 -99
  218. package/dist/runtime/components/LibTable/LibTable.d.vue.ts +0 -125
  219. package/dist/runtime/components/LibTable/LibTable.vue.d.ts +0 -125
  220. package/dist/runtime/components/Template/NAME.d.vue.ts +0 -18
  221. package/dist/runtime/components/Template/NAME.vue +0 -27
  222. package/dist/runtime/components/Template/NAME.vue.d.ts +0 -18
  223. package/dist/runtime/components/Template/TemplateStory.d.ts +0 -7
  224. package/dist/runtime/components/Template/TemplateStory.js +0 -22
  225. package/dist/runtime/components/shared/props.d.ts +0 -171
  226. package/dist/runtime/components/shared/props.js +0 -2
  227. package/dist/runtime/composables/useAriaLabel.d.ts +0 -6
  228. package/dist/runtime/composables/useAriaLabel.js +0 -15
  229. package/dist/runtime/composables/useDarkMode.d.ts +0 -77
  230. package/dist/runtime/composables/useDarkMode.js +0 -89
  231. package/dist/runtime/composables/useDivideAttrs.d.ts +0 -27
  232. package/dist/runtime/composables/useDivideAttrs.js +0 -27
  233. package/dist/runtime/composables/useSuggestions.d.ts +0 -40
  234. package/dist/runtime/composables/useSuggestions.js +0 -263
  235. package/src/runtime/components/Aria/Aria.vue +0 -26
  236. package/src/runtime/components/LibButton/LibButton.stories.ts +0 -106
  237. package/src/runtime/components/LibCheckbox/LibCheckbox.vue +0 -131
  238. package/src/runtime/components/LibColorInput/LibColorInput.vue +0 -203
  239. package/src/runtime/components/LibInputDeprecated/LibInputDeprecated.stories.ts +0 -405
  240. package/src/runtime/components/LibInputDeprecated/LibInputDeprecated.vue +0 -419
  241. package/src/runtime/components/LibLabel/LibLabel.stories.ts +0 -33
  242. package/src/runtime/components/LibLabel/LibLabel.vue +0 -65
  243. package/src/runtime/components/LibMultiValues/LibMultiValues.vue +0 -123
  244. package/src/runtime/components/LibNotifications/LibNotifications.stories.ts +0 -131
  245. package/src/runtime/components/LibPagination/LibPagination.stories.ts +0 -49
  246. package/src/runtime/components/LibPagination/LibPagination.vue +0 -274
  247. package/src/runtime/components/LibPopup/LibPopup.stories.ts +0 -153
  248. package/src/runtime/components/LibPopup/LibPopup.vue +0 -396
  249. package/src/runtime/components/LibProgressBar/LibProgressBar.stories.ts +0 -90
  250. package/src/runtime/components/LibProgressBar/LibProgressBar.vue +0 -197
  251. package/src/runtime/components/LibSuggestions/LibSuggestions.stories.ts +0 -134
  252. package/src/runtime/components/LibSuggestions/LibSuggestions.vue +0 -212
  253. package/src/runtime/components/Template/NAME.vue +0 -49
  254. package/src/runtime/components/Template/TemplateStory.ts +0 -37
  255. package/src/runtime/components/shared/props.ts +0 -199
  256. package/src/runtime/composables/useAriaLabel.ts +0 -23
  257. package/src/runtime/composables/useDarkMode.ts +0 -199
  258. package/src/runtime/composables/useDivideAttrs.ts +0 -53
  259. package/src/runtime/composables/useSuggestions.ts +0 -339
  260. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToHsva.d.ts +0 -0
  261. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToHsva.js +0 -0
  262. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToRgba.d.ts +0 -0
  263. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToRgba.js +0 -0
  264. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/toLowPrecisionRgbaString.d.ts +0 -0
  265. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/toLowPrecisionRgbaString.js +0 -0
  266. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/truncate.d.ts +0 -0
  267. /package/dist/runtime/components/{LibColorPicker → WColorPicker}/utils/truncate.js +0 -0
  268. /package/dist/runtime/components/{LibDatePicker/LibRangeDatePicker.d.vue.ts → WDatePicker/WRangeDatePicker.d.vue.ts} +0 -0
  269. /package/dist/runtime/components/{LibDatePicker/LibRangeDatePicker.vue.d.ts → WDatePicker/WRangeDatePicker.vue.d.ts} +0 -0
  270. /package/dist/runtime/components/{LibDatePicker/LibSingleDatePicker.d.vue.ts → WDatePicker/WSingleDatePicker.d.vue.ts} +0 -0
  271. /package/dist/runtime/components/{LibDatePicker/LibSingleDatePicker.vue.d.ts → WDatePicker/WSingleDatePicker.vue.d.ts} +0 -0
  272. /package/dist/runtime/components/{LibDatePicker → WDatePicker}/helpers.d.ts +0 -0
  273. /package/dist/runtime/components/{LibDatePicker → WDatePicker}/helpers.js +0 -0
  274. /package/dist/runtime/components/{LibDebug/LibDebug.d.vue.ts → WDebug/WDebug.d.vue.ts} +0 -0
  275. /package/dist/runtime/components/{LibDebug/LibDebug.vue.d.ts → WDebug/WDebug.vue.d.ts} +0 -0
  276. /package/dist/runtime/components/{LibDevOnly/LibDevOnly.vue → WDevOnly/WDevOnly.vue} +0 -0
  277. /package/dist/runtime/components/{LibNotifications/LibNotificationTestMessageComponent.d.vue.ts → WNotifications/WNotificationTestMessageComponent.d.vue.ts} +0 -0
  278. /package/dist/runtime/components/{LibNotifications/LibNotificationTestMessageComponent.vue → WNotifications/WNotificationTestMessageComponent.vue} +0 -0
  279. /package/dist/runtime/components/{LibNotifications/LibNotificationTestMessageComponent.vue.d.ts → WNotifications/WNotificationTestMessageComponent.vue.d.ts} +0 -0
  280. /package/dist/runtime/components/{LibNotifications → WNotifications}/calculateNotificationProgress.d.ts +0 -0
  281. /package/dist/runtime/components/{LibNotifications → WNotifications}/calculateNotificationProgress.js +0 -0
  282. /package/src/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToHsva.ts +0 -0
  283. /package/src/runtime/components/{LibColorPicker → WColorPicker}/utils/safeConvertToRgba.ts +0 -0
  284. /package/src/runtime/components/{LibColorPicker → WColorPicker}/utils/toLowPrecisionRgbaString.ts +0 -0
  285. /package/src/runtime/components/{LibColorPicker → WColorPicker}/utils/truncate.ts +0 -0
  286. /package/src/runtime/components/{LibDatePicker → WDatePicker}/helpers.ts +0 -0
  287. /package/src/runtime/components/{LibNotifications/LibNotificationTestMessageComponent.vue → WNotifications/WNotificationTestMessageComponent.vue} +0 -0
  288. /package/src/runtime/components/{LibNotifications → WNotifications}/calculateNotificationProgress.ts +0 -0
@@ -1,131 +0,0 @@
1
- /* eslint-disable @typescript-eslint/naming-convention */
2
- import { faker } from "@faker-js/faker"
3
- import type { Meta, StoryObj } from "@storybook/vue3"
4
- import { computed, ref } from "vue"
5
-
6
- import LibNotifications from "./LibNotifications.vue"
7
-
8
- import { NotificationHandler } from "../../helpers/NotificationHandler.js"
9
- import * as components from "../index.js"
10
-
11
- const meta: Meta<typeof LibNotifications> = {
12
- component: LibNotifications,
13
- title: "Components/Notifications",
14
- args: {
15
- // @ts-expect-error story only arg
16
- withTitle: true
17
- }
18
- }
19
-
20
- export default meta
21
- type Story = StoryObj<typeof LibNotifications>
22
-
23
- export const Primary: Story = {
24
- render: args => ({
25
- components,
26
- setup() {
27
- const handler = new NotificationHandler({})
28
-
29
- let count = 0
30
-
31
- const withTitle = ref(args.withTitle)
32
- const disableTimeout = ref(false)
33
- const lotsOfText = ref(false)
34
- const paragraphs = `\n Simulating lots of text:\n${faker.lorem.paragraphs(20)}`
35
- const extraText = computed(() => lotsOfText.value ? paragraphs : "")
36
-
37
- const notifyRequiresAction = (options: any) => {
38
- count++
39
- void handler.notify({
40
- title: withTitle.value ? `Notification(${count})` : undefined,
41
- message: `This is a cancellable notification that requires action. Pick an option:${extraText.value}`,
42
- requiresAction: true,
43
- options: ["Ok", "Default Answer", "Cancel"],
44
- default: "Default Answer",
45
- cancellable: true,
46
- ...options
47
- })
48
- }
49
-
50
- const notifyWithDangerousOption = () => {
51
- count++
52
- void handler.notify({
53
- title: withTitle.value ? `Notification(${count})` : undefined,
54
- message: `This is a cancellable notification that has a dangerous option. Pick an option:${extraText.value}`,
55
- options: ["Ok", "Default Answer", "Dangerous Option", "Cancel"],
56
- cancellable: true,
57
- default: "Default Answer",
58
- dangerous: ["Dangerous Option"]
59
- })
60
- }
61
- const notifyNonCancellable = () => {
62
- count++
63
- void handler.notify({
64
- title: withTitle.value ? `Notification(${count})` : undefined,
65
- message: `This is a non-cancellable notification. Pick an option:${extraText.value}`,
66
- options: ["Ok", "Default Answer"],
67
- default: "Default Answer",
68
- cancellable: false
69
- })
70
- }
71
- const notifyNonCancellableRequiresAction = () => {
72
- count++
73
- void handler.notify({
74
- title: withTitle.value ? `Notification(${count})` : undefined,
75
- message: `This is a non-cancellable notification. Pick an option:${extraText.value}`,
76
- requiresAction: true,
77
- options: ["Ok", "Default Answer"],
78
- default: "Default Answer",
79
- cancellable: false
80
- })
81
- }
82
- const notifyTimeoutable = () => {
83
- count++
84
- void handler.notify({
85
- title: withTitle.value ? `Notification(${count})` : undefined,
86
- message: `This is a notification. No action required.${extraText.value}`,
87
- timeout: disableTimeout.value ? false : 5000
88
- })
89
- }
90
- return {
91
- notifyRequiresAction,
92
- notifyTimeoutable,
93
- notifyNonCancellable,
94
- notifyWithDangerousOption,
95
- notifyNonCancellableRequiresAction,
96
- handler,
97
- withTitle,
98
- disableTimeout,
99
- lotsOfText,
100
- args: {
101
- outline: false,
102
- ...args
103
- }
104
- }
105
- },
106
- backgrounds: { disable: true },
107
- // <lib-debug>{{args.handler}}</lib-debug>
108
- template: `
109
- <lib-root :outline="args.outline" :notification-handler="handler">
110
- <lib-button :label="'Notify Timeoutable'" @click="notifyTimeoutable()"></lib-button>
111
- <lib-button :label="'Notify RequiresAction (Cancellable)'" @click="notifyRequiresAction()"></lib-button>
112
- <lib-button :label="'Notify RequiresAction (Cancellable) - Custom Width'" @click="notifyRequiresAction({cancellable:true,notificationProps: {class: 'sm:max-w-[90dvw]'}})"></lib-button>
113
- <lib-button :label="'Notify Non-Cancellable that RequiresAction'" @click="notifyNonCancellableRequiresAction()"></lib-button>
114
- <lib-button :label="'Notify With Dangerous Option (Cancellable)'" @click="notifyWithDangerousOption()"></lib-button>
115
- <lib-button :label="'Notify Non-Cancellable'" @click="notifyNonCancellable()"></lib-button>
116
- <lib-checkbox v-model="lotsOfText">Use lots of text</lib-checkbox>
117
- <lib-checkbox v-model="disableTimeout">Disable Timeout</lib-checkbox>
118
- <lib-checkbox v-model="withTitle">With Title</lib-checkbox>
119
- <lib-notifications :handler="handler" />
120
- History:
121
- <lib-debug>
122
- <template v-for="entry in handler.history">
123
- Message: {{entry.message}}
124
- Resolution: {{entry.resolution}}
125
- <br>
126
- </template>
127
- </lib-debug>
128
- </lib-root>
129
- `
130
- })
131
- }
@@ -1,49 +0,0 @@
1
- /* eslint-disable @typescript-eslint/naming-convention */
2
- import type { Meta, StoryObj } from "@storybook/vue3"
3
- import { ref } from "vue"
4
-
5
- import LibPagination from "./LibPagination.vue"
6
-
7
- import * as components from "../index.js"
8
-
9
- const meta: Meta<typeof LibPagination> = {
10
- component: LibPagination,
11
- title: "Components/Pagination",
12
- args: {
13
- total: 10
14
- }
15
- }
16
-
17
- export default meta
18
- type Story = StoryObj<typeof LibPagination>
19
-
20
- export const Primary: Story = {
21
- render: args => ({
22
- components,
23
- setup() {
24
- const num = ref(1)
25
- const changePage = ($event: any, i: any) => {
26
- $event.preventDefault()
27
- if (i >= 10) num.value = 10
28
- if (i <= 1) num.value = 1
29
- num.value = i
30
- }
31
-
32
- return {
33
- changePage,
34
- args,
35
- num
36
- }
37
- },
38
- template: `
39
- <lib-pagination v-bind="{...args, current: num, route:'#'}">
40
- <template #link="linkProps">
41
- <a v-bind="linkProps" @click="changePage($event, linkProps.i)">{{ linkProps.text ?? linkProps.i }}</a>
42
- </template>
43
- </lib-pagination>
44
- <lib-simple-input :label="'Change Page'" :modelValue="num.toString()" @update:modelValue="num = parseInt($event)" type="number" min="0" :max="args.total">
45
-
46
- </lib-simple-input>
47
- `
48
- })
49
- }
@@ -1,274 +0,0 @@
1
- <template>
2
- <nav
3
- :class="twMerge(`
4
- pagination--wrapper
5
- flex flex-wrap items-center justify-center gap-2
6
- `, ($attrs as any).class)"
7
- role="navigation"
8
- :aria-label="t('pagination.aria')"
9
- >
10
- <slot
11
- v-if="prevLink.i > 0 && prevLink.i !== currentLink.i"
12
- name="link"
13
- :i="prevLink.i"
14
- :href="prevLink.href"
15
- :text="t('pagination.previous-page')"
16
- :aria-label=" t('pagination.aria.go-to-previous-page', { count: prevLink.i })"
17
- :class="`pagination--link ${pageClasses}`"
18
- >
19
- <a
20
- :class="`pagination--link ${pageClasses}`"
21
- :href="prevLink.href"
22
- :aria-label=" t('pagination.aria.go-to-previous-page', { count: prevLink.i })"
23
- />
24
- </slot>
25
- <div class="pagination--spacer flex-1"/>
26
- <slot
27
- v-if="firstLink.i !== currentLink.i"
28
- name="link"
29
- :i="0"
30
- :href="firstLink.href"
31
- :text="firstLink.i"
32
- :aria-label="t('pagination.aria.go-to-page', { count: firstLink.i })"
33
- :class="`pagination--link pagination--first-link ${pageClasses}`"
34
- >
35
- {{ firstLink.href }}
36
- <a
37
- :class="`pagination--link pagination--first-link ${pageClasses}`"
38
- :href="firstLink.href"
39
- :aria-label="t('pagination.aria.go-to-page', { count: firstLink.i })"
40
- >
41
- {{ firstLink.i }}
42
- </a>
43
- </slot>
44
- <div
45
- v-if="prevLink.i - extraPages > firstLink.i"
46
- class="pagination--page-fill"
47
- >
48
- ...
49
- </div>
50
- <template
51
- v-for="entry in extraPagesPrev"
52
- :key="entry.i"
53
- >
54
- <slot
55
- name="link"
56
- :class="`pagination--link ${pageClasses}`"
57
- :i="entry.i"
58
- :href="entry.href"
59
- :aria-label="t('pagination.aria.go-to-page', { count: entry.i })"
60
- >
61
- <a
62
- :class="`pagination--link ${pageClasses}`"
63
- :href="entry.href"
64
- :aria-label="t('pagination.aria.go-to-page', { count: entry.i })"
65
- >
66
- {{ entry.i }}
67
- </a>
68
- </slot>
69
- </template>
70
- <slot
71
- name="current"
72
- :class="`pagination--link ${currentPageClasses}`"
73
- tabindex="0"
74
- :i="currentLink.i"
75
- :aria-label="t('pagination.aria.current-page', { count: currentLink.i })"
76
- :aria_current="true"
77
- >
78
- <div
79
- :class="`pagination--current-page a ${currentPageClasses}`"
80
- tabindex="0"
81
- :aria-label="t('pagination.aria.current-page', { count: currentLink.i })"
82
- aria-current="true"
83
- @click="$event.preventDefault()"
84
- >
85
- {{ currentLink.i }}
86
- </div>
87
- </slot>
88
- <template
89
- v-for="entry in extraPagesNext"
90
- :key="entry.i"
91
- >
92
- <slot
93
- name="link"
94
- :class="`pagination--link ${pageClasses}`"
95
- :i="entry.i"
96
- :href="entry.href"
97
- :aria-label="t('pagination.aria.go-to-page', { count: entry.i })"
98
- >
99
- <a
100
- :class="`pagination--link ${pageClasses}`"
101
- :href="entry.href"
102
- :aria-label="t('pagination.aria.go-to-page', { count: entry.i })"
103
- >
104
- {{ entry.i }}
105
- </a>
106
- </slot>
107
- </template>
108
- <div
109
- v-if="nextLink.i + extraPages < total"
110
- class="pagination--page-fill"
111
- aria-hidden="true"
112
- >
113
- ...
114
- </div>
115
- <slot
116
- v-if="lastLink.i !== currentLink.i"
117
- name="link"
118
- :class="`pagination--link ${pageClasses}`"
119
- :i="lastLink.i"
120
- :href="lastLink.href"
121
- :text="total"
122
- :aria-label="t('pagination.aria.go-to-page', { count: lastLink.i })"
123
- >
124
- <a
125
- :class="`pagination--link ${pageClasses}`"
126
- :href="lastLink.href"
127
- :aria-label="t('pagination.aria.go-to-page', { count: lastLink.i })"
128
- >
129
- {{ total }}
130
- </a>
131
- </slot>
132
- <div class="pagination--spacer flex-1"/>
133
- <slot
134
- v-if="nextLink.i <= total && nextLink.i !== currentLink.i"
135
- :class="`pagination--link ${pageClasses}`"
136
- name="link"
137
- :i="nextLink.i"
138
- :href="nextLink.href"
139
- :text="t('pagination.next-page')"
140
- :aria-label="t('pagination.aria.go-to-next-page', { count: nextLink.i })"
141
- >
142
- <a
143
- :class="`pagination--link ${pageClasses}`"
144
- :href="nextLink.href"
145
- :aria-label="t('pagination.aria.go-to-next-page', { count: nextLink.i })"
146
- >
147
- Next
148
- </a>
149
- </slot>
150
- </nav>
151
- </template>
152
-
153
- <script setup lang="ts">
154
- import { computed, type HTMLAttributes, useAttrs, watch } from "vue"
155
-
156
- import { useInjectedI18n } from "../../composables/useInjectedI18n.js"
157
- import { twMerge } from "../../utils/twMerge.js"
158
- import type { TailwindClassProp } from "../shared/props.js"
159
-
160
- const t = useInjectedI18n()
161
-
162
- const commonClasses = `
163
- block
164
- focus-outline
165
- border-b-2
166
- border-transparent
167
- transition-all
168
- outlined:rounded-sm
169
- `
170
- const pageClasses = `
171
- ${commonClasses}
172
- focus-outline
173
- hover:text-accent-600
174
- hover:border-b-accent-500
175
- hover:scale-125
176
- `
177
-
178
- const currentPageClasses = `
179
- ${commonClasses}
180
- border-b-accent-500
181
- scale-125
182
- `
183
- defineOptions({
184
- name: "LibPagination",
185
- inheritAttrs: false
186
- })
187
-
188
- const props = withDefaults(defineProps<Props>(), {
189
- customRoute: (route: string, i: number) => {
190
- if (i === 0 || i === 1) {
191
- const num = 1
192
- return { href: route, i: num }
193
- }
194
- return { href: route + i.toString(), i }
195
- },
196
- extraPages: 3
197
- })
198
- const $attrs = useAttrs()
199
-
200
- const currentLink = computed(() => props.customRoute(props.route, props.current))
201
- const currentIsInvalid = computed(() => currentLink.value.i < 0 || currentLink.value.i > props.total)
202
-
203
- watch(() => currentIsInvalid.value, () => {
204
- if (currentIsInvalid.value) {
205
- throw new Error(`Current page is out of range: 0 - ${props.total}`)
206
- }
207
- })
208
-
209
- const prevLink = computed(() => props.customRoute(props.route, props.current - 1))
210
-
211
- const nextLink = computed(() => {
212
- const maybeNextLink = props.customRoute(props.route, props.current + 1)
213
- if (maybeNextLink.i === currentLink.value.i) {
214
- return props.customRoute(props.route, props.current + 2)
215
- }
216
- return maybeNextLink
217
- })
218
-
219
- const firstLink = computed(() => props.customRoute(props.route, 0))
220
- const lastLink = computed(() => props.customRoute(props.route, props.total))
221
-
222
- type HrefInfo = { href: string, i: number }
223
- const extraPagesPrev = computed(() => [...Array(props.extraPages)].map((_, _i) => {
224
- const num = currentLink.value.i - (props.extraPages - _i)
225
- if (num <= firstLink.value.i || num >= lastLink.value.i || num >= currentLink.value.i) return undefined
226
- return props.customRoute(props.route, num)
227
- }).filter(entry => entry !== undefined) as HrefInfo[])
228
-
229
- const extraPagesNext = computed(() => [...Array(props.extraPages + 1)].map((_, i) => {
230
- const num = currentLink.value.i + i
231
- if (num <= firstLink.value.i || num >= lastLink.value.i || num <= currentLink.value.i) return undefined
232
- return props.customRoute(props.route, num)
233
- }).filter(entry => entry !== undefined).slice(0, props.extraPages) as HrefInfo[])
234
- </script>
235
-
236
- <script lang="ts">
237
- /**
238
- * Pagination component.
239
- *
240
- * Can be passed a slot like so to use a custom link element (like NuxtLink):
241
- * ```vue
242
- * <template #link="{ href, i, text, ariaLabel, ariaCurrent}">
243
- * <NuxtLink :to="href" :aria-label="ariaLabel" :aria-current="ariaCurrent ?? false">{{ text ?? i }}</NuxtLink>
244
- * </template>
245
- * ```
246
- */
247
- export default {
248
- name: "LibPagination"
249
- }
250
- type RealProps = {
251
- /** The total number of pages. */
252
- total: number
253
- /** The number of the current page. It must be valid, between 0 - total or the component will throw an error. */
254
- current: number
255
- /** The base route/link path for the page. Should end with a forward slash `/`. */
256
- route: string
257
- /**
258
- * A function to customize the output href and page link number. By default, page 0 is page 1, page 1 is 1, then everything else is normal.
259
- *
260
- * This is because usually we have routes like: `/page/1`, `/page/2`, not `/page/0`.
261
- *
262
- * You can use this function to customize things further. For example, make `/page/1` just `/`
263
- */
264
- customRoute?: (route: string, i: number) => { i: number, href: string }
265
- /** How many extra pages to show to each side of the current page. */
266
- extraPages?: number
267
- }
268
- interface Props
269
- extends
270
- /** @vue-ignore */
271
- Partial<Omit<HTMLAttributes, "class"> & TailwindClassProp>,
272
- RealProps
273
- {}
274
- </script>
@@ -1,153 +0,0 @@
1
- /* eslint-disable @typescript-eslint/naming-convention */
2
- import type { Meta, StoryObj } from "@storybook/vue3"
3
- import { computed, ref, watch } from "vue"
4
-
5
- import LibPopup from "./LibPopup.vue"
6
-
7
- import { vExtractRootEl } from "../../directives/vExtractRootEl.js"
8
- import * as components from "../index.js"
9
-
10
- const meta: Meta<typeof LibPopup> = {
11
- component: LibPopup,
12
- title: "Components/Popup",
13
- args: {
14
-
15
- }
16
- }
17
-
18
- export default meta
19
- type Story = StoryObj<typeof LibPopup>
20
-
21
- export const Primary: Story = {
22
- render: args => ({
23
- components,
24
- directives: { extractRootEl: vExtractRootEl },
25
- setup: () => {
26
- const value = ref(false)
27
- const buttonPositions = ["TL", "TC", "TR", "BL", "BC", "BR"] as const
28
- const buttonPos = ref<typeof buttonPositions[number]>("TL")
29
- const autoRotatePos = ref(true)
30
- const buttonStyle = computed(() => {
31
- switch (buttonPos.value) {
32
- case "TL": return `align-self: flex-start; justify-self: flex-start;`
33
- case "TC": return `align-self: flex-start; justify-self: center;`
34
- case "TR": return `align-self: flex-start; justify-self: flex-end;`
35
- case "BL": return `align-self: flex-end; justify-self: flex-start;`
36
- case "BC": return `align-self: flex-end; justify-self: center;`
37
- case "BR": return `align-self: flex-end; justify-self: flex-end;`
38
- default: return ""
39
- }
40
- })
41
-
42
- watch(value, () => {
43
- if (!value.value && autoRotatePos.value) {
44
- const buttonI = buttonPositions.indexOf(buttonPos.value)
45
- if (buttonI < 5) { buttonPos.value = buttonPositions[buttonI + 1] } else {
46
- buttonPos.value = buttonPositions[0]
47
- }
48
- }
49
- })
50
-
51
- return {
52
- args,
53
- buttonPos,
54
- autoRotatePos,
55
- buttonStyle,
56
- value
57
- }
58
- },
59
- template: `
60
- <lib-simple-input
61
- :suggestions="['TL', 'TR', 'BL', 'BR']"
62
- :restrict-to-suggestions="true"
63
- :suggestions-filter="(_, items) => items"
64
- :label="'Button Position'"
65
- v-model="buttonPos"
66
- >
67
- </lib-simple-input>
68
- <div>
69
- <label>Auto Rotate Position</label>
70
- <input type="checkbox" v-model="autoRotatePos">
71
- </div>
72
- <div class="test bg-transparency-squares" style="display:grid;height:80vh;padding:50px;border:1px solid black;">
73
-
74
- <lib-popup v-model="value" v-bind="{ ...args, width:undefined, }" >
75
- {{value}}
76
- <template #button="{extractEl}">
77
- <lib-button :style="buttonStyle" @click="value = !value" v-extract-root-el="extractEl">Toggle Popup</lib-button>
78
- </template>
79
- <template #popup="{position, extractEl}">
80
- <lib-debug
81
- v-extract-root-el="extractEl"
82
- :style="(args.width ? \`width: \${args.width};\` : '') + (args.height ? \`height: \${args.height};\` : '')"
83
- class="bg-bg dark:bg-fg w-[500px]"
84
- >
85
- {{ position }}
86
- </lib-debug>
87
- </template>
88
- </lib-popup>
89
- </div>
90
- `
91
- })
92
- }
93
- export const PopupNoShift = {
94
- ...Primary,
95
- args: {
96
- avoidRepositioning: true
97
-
98
- }
99
- }
100
- /** When the popup is too wide, it's positioned to the left and overflow scroll is set with an invisible scrollbar. */
101
- export const PopupTooBig = {
102
- ...Primary,
103
- args: {
104
- width: "110vw"
105
- }
106
- }
107
- export const PopupCenterScreen = {
108
- ...Primary,
109
- args: {
110
- width: "500px",
111
- height: "500px",
112
- preferredHorizontal: ["center-screen"],
113
- preferredVertical: ["center-screen"]
114
- }
115
- }
116
- export const PopupRightBottomMost = {
117
- ...Primary,
118
- args: {
119
- width: "500px",
120
- height: "500px",
121
- preferredHorizontal: ["right-most"],
122
- preferredVertical: ["bottom-most"]
123
- }
124
- }
125
- export const PopupLeftTopMost = {
126
- ...Primary,
127
- args: {
128
- width: "500px",
129
- height: "500px",
130
- preferredHorizontal: ["left-most"],
131
- preferredVertical: ["top-most"]
132
- }
133
- }
134
-
135
- export const PopupCenterMost = {
136
- ...Primary,
137
- args: {
138
- width: "500px",
139
- height: "500px",
140
- preferredHorizontal: ["center-most"],
141
- preferredVertical: ["center-most"]
142
- }
143
- }
144
- export const LeftMenuShapeExample = {
145
- ...Primary,
146
- args: {
147
- width: "300px",
148
- height: "500px",
149
- preferredHorizontal: ["left-most"],
150
- preferredVertical: ["center-most"],
151
- avoidRepositioning: true
152
- }
153
- }