@leaflink/stash 49.5.0 → 50.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (416) hide show
  1. package/dist/Accordion.js +25 -28
  2. package/dist/Accordion.js.map +1 -1
  3. package/dist/Accordion.vue.d.ts +16 -16
  4. package/dist/ActionsDropdown.js +14 -26
  5. package/dist/ActionsDropdown.js.map +1 -1
  6. package/dist/ActionsDropdown.vue.d.ts +12 -12
  7. package/dist/AddressSelect.js +22 -47
  8. package/dist/AddressSelect.js.map +1 -1
  9. package/dist/AddressSelect.vue.d.ts +45 -45
  10. package/dist/Alert.js +4 -6
  11. package/dist/Alert.js.map +1 -1
  12. package/dist/Alert.vue.d.ts +18 -18
  13. package/dist/AppNavigationItem.js +16 -19
  14. package/dist/AppNavigationItem.js.map +1 -1
  15. package/dist/AppNavigationItem.vue.d.ts +4 -4
  16. package/dist/AppSidebar.js +27 -28
  17. package/dist/AppSidebar.js.map +1 -1
  18. package/dist/AppSidebar.vue.d.ts +7 -7
  19. package/dist/AppTopbar.js +12 -17
  20. package/dist/AppTopbar.js.map +1 -1
  21. package/dist/AppTopbar.vue.d.ts +8 -8
  22. package/dist/Avatar.js +1 -1
  23. package/dist/Avatar.vue.d.ts +22 -22
  24. package/dist/Backdrop.js +1 -1
  25. package/dist/Backdrop.vue.d.ts +1 -1
  26. package/dist/Badge.js +1 -1
  27. package/dist/Badge.js.map +1 -1
  28. package/dist/Badge.vue.d.ts +36 -36
  29. package/dist/Box.js +2 -3
  30. package/dist/Box.js.map +1 -1
  31. package/dist/Box.vue.d.ts +12 -12
  32. package/dist/{Box.vue_vue_type_script_setup_true_lang-69e5176b.js → Box.vue_vue_type_script_setup_true_lang-DgJHq-09.js} +1 -1
  33. package/dist/{Box.vue_vue_type_script_setup_true_lang-69e5176b.js.map → Box.vue_vue_type_script_setup_true_lang-DgJHq-09.js.map} +1 -1
  34. package/dist/Button.js +40 -27
  35. package/dist/Button.js.map +1 -1
  36. package/dist/Button.vue.d.ts +34 -27
  37. package/dist/ButtonGroup.js +1 -1
  38. package/dist/ButtonGroup.vue.d.ts +14 -14
  39. package/dist/Card.vue.d.ts +3 -3
  40. package/dist/CardContent.js +1 -1
  41. package/dist/CardContent.vue.d.ts +1 -1
  42. package/dist/CardFooter.js +1 -1
  43. package/dist/CardFooter.vue.d.ts +1 -1
  44. package/dist/CardMedia.js +11 -14
  45. package/dist/CardMedia.js.map +1 -1
  46. package/dist/Carousel.js +179 -180
  47. package/dist/Carousel.js.map +1 -1
  48. package/dist/Carousel.vue.d.ts +33 -11
  49. package/dist/Checkbox.js +38 -35
  50. package/dist/Checkbox.js.map +1 -1
  51. package/dist/Checkbox.vue.d.ts +31 -31
  52. package/dist/ChevronToggle.js +2 -10
  53. package/dist/ChevronToggle.js.map +1 -1
  54. package/dist/ChevronToggle.vue.d.ts +5 -5
  55. package/dist/{ChevronToggle.vue_vue_type_script_setup_true_lang-fcdf0c19.js → ChevronToggle.vue_vue_type_script_setup_true_lang-DuvluoTi.js} +1 -1
  56. package/dist/{ChevronToggle.vue_vue_type_script_setup_true_lang-fcdf0c19.js.map → ChevronToggle.vue_vue_type_script_setup_true_lang-DuvluoTi.js.map} +1 -1
  57. package/dist/Chip.js +17 -20
  58. package/dist/Chip.js.map +1 -1
  59. package/dist/Chip.vue.d.ts +32 -32
  60. package/dist/ConfirmationCodeInput.js +1 -1
  61. package/dist/ConfirmationCodeInput.js.map +1 -1
  62. package/dist/ConfirmationCodeInput.vue.d.ts +29 -29
  63. package/dist/ContextSwitcher.js +8 -14
  64. package/dist/ContextSwitcher.js.map +1 -1
  65. package/dist/ContextSwitcher.vue.d.ts +32 -32
  66. package/dist/Copy.js +23 -34
  67. package/dist/Copy.js.map +1 -1
  68. package/dist/Copy.vue.d.ts +9 -9
  69. package/dist/CurrencyInput.js +117 -128
  70. package/dist/CurrencyInput.js.map +1 -1
  71. package/dist/CurrencyInput.vue.d.ts +26 -21
  72. package/dist/CustomRender.vue.d.ts +12 -1
  73. package/dist/DataView.js +70 -73
  74. package/dist/DataView.js.map +1 -1
  75. package/dist/{DataView.vue_used_vue_type_style_index_0_lang.module-5c180dba.js → DataView.keys-C7eaZg2G.js} +5 -8
  76. package/dist/DataView.keys-C7eaZg2G.js.map +1 -0
  77. package/dist/DataView.vue.d.ts +51 -51
  78. package/dist/DataViewFilters.js +76 -90
  79. package/dist/DataViewFilters.js.map +1 -1
  80. package/dist/{DataViewFilters.keys-c80ffabe.js → DataViewFilters.keys-BLu07FiP.js} +1 -1
  81. package/dist/{DataViewFilters.keys-c80ffabe.js.map → DataViewFilters.keys-BLu07FiP.js.map} +1 -1
  82. package/dist/DataViewFilters.vue.d.ts +39 -39
  83. package/dist/DataViewSortButton.js +30 -43
  84. package/dist/DataViewSortButton.js.map +1 -1
  85. package/dist/DataViewSortButton.vue.d.ts +3 -3
  86. package/dist/DataViewToolbar.js +27 -36
  87. package/dist/DataViewToolbar.js.map +1 -1
  88. package/dist/DataViewToolbar.vue.d.ts +17 -17
  89. package/dist/DatePicker.js +649 -662
  90. package/dist/DatePicker.js.map +1 -1
  91. package/dist/DatePicker.vue.d.ts +73 -73
  92. package/dist/DescriptionList.js +1 -1
  93. package/dist/{DescriptionList.keys-c906ce05.js → DescriptionList.keys-BHlHYV6b.js} +1 -1
  94. package/dist/{DescriptionList.keys-c906ce05.js.map → DescriptionList.keys-BHlHYV6b.js.map} +1 -1
  95. package/dist/DescriptionList.vue.d.ts +6 -6
  96. package/dist/DescriptionListDetail.js +1 -1
  97. package/dist/DescriptionListDetail.vue.d.ts +1 -1
  98. package/dist/DescriptionListGroup.js +1 -1
  99. package/dist/DescriptionListGroup.vue.d.ts +1 -1
  100. package/dist/DescriptionListTerm.js +1 -1
  101. package/dist/DescriptionListTerm.vue.d.ts +1 -1
  102. package/dist/Dialog.js +26 -30
  103. package/dist/Dialog.js.map +1 -1
  104. package/dist/Dialog.vue.d.ts +34 -34
  105. package/dist/Divider.js +1 -1
  106. package/dist/Divider.js.map +1 -1
  107. package/dist/Divider.vue.d.ts +1 -1
  108. package/dist/Dropdown.js +21 -28
  109. package/dist/Dropdown.js.map +1 -1
  110. package/dist/Dropdown.vue.d.ts +28 -28
  111. package/dist/EmptyState.js +32 -33
  112. package/dist/EmptyState.js.map +1 -1
  113. package/dist/EmptyState.vue.d.ts +36 -36
  114. package/dist/Expand.js +2 -3
  115. package/dist/Expand.js.map +1 -1
  116. package/dist/Expand.vue.d.ts +14 -14
  117. package/dist/{Expand.vue_vue_type_script_setup_true_lang-0f236267.js → Expand.vue_vue_type_script_setup_true_lang-D0fSAtHr.js} +1 -1
  118. package/dist/{Expand.vue_vue_type_script_setup_true_lang-0f236267.js.map → Expand.vue_vue_type_script_setup_true_lang-D0fSAtHr.js.map} +1 -1
  119. package/dist/Field.js +2 -7
  120. package/dist/Field.js.map +1 -1
  121. package/dist/Field.vue.d.ts +30 -30
  122. package/dist/{Field.vue_vue_type_script_setup_true_lang-fded4f75.js → Field.vue_vue_type_script_setup_true_lang-DjxUvSRF.js} +2 -2
  123. package/dist/{Field.vue_vue_type_script_setup_true_lang-fded4f75.js.map → Field.vue_vue_type_script_setup_true_lang-DjxUvSRF.js.map} +1 -1
  124. package/dist/FileUpload.js +58 -57
  125. package/dist/FileUpload.js.map +1 -1
  126. package/dist/FileUpload.vue.d.ts +28 -28
  127. package/dist/FilterChip.js +12 -17
  128. package/dist/FilterChip.js.map +1 -1
  129. package/dist/FilterChip.vue.d.ts +19 -19
  130. package/dist/FilterDrawerItem.js +24 -30
  131. package/dist/FilterDrawerItem.js.map +1 -1
  132. package/dist/FilterDrawerItem.vue.d.ts +2 -2
  133. package/dist/FilterDropdown.js +41 -57
  134. package/dist/FilterDropdown.js.map +1 -1
  135. package/dist/FilterDropdown.vue.d.ts +9 -9
  136. package/dist/FilterSelect.js +36 -45
  137. package/dist/FilterSelect.js.map +1 -1
  138. package/dist/FilterSelect.vue.d.ts +5 -5
  139. package/dist/Filters.js +60 -96
  140. package/dist/Filters.js.map +1 -1
  141. package/dist/Filters.vue.d.ts +2005 -2294
  142. package/dist/HttpError.js +16 -23
  143. package/dist/HttpError.js.map +1 -1
  144. package/dist/HttpError.vue.d.ts +18 -18
  145. package/dist/Icon.js +27 -22
  146. package/dist/Icon.js.map +1 -1
  147. package/dist/Icon.vue.d.ts +13 -13
  148. package/dist/IconLabel.js +9 -12
  149. package/dist/IconLabel.js.map +1 -1
  150. package/dist/IconLabel.vue.d.ts +17 -17
  151. package/dist/Illustration.js +8 -11
  152. package/dist/Illustration.js.map +1 -1
  153. package/dist/Illustration.vue.d.ts +21 -21
  154. package/dist/{Illustration.vue_vue_type_script_setup_true_lang-e26c3841.js → Illustration.vue_vue_type_script_setup_true_lang-C3qG3Ty6.js} +2 -2
  155. package/dist/{Illustration.vue_vue_type_script_setup_true_lang-e26c3841.js.map → Illustration.vue_vue_type_script_setup_true_lang-C3qG3Ty6.js.map} +1 -1
  156. package/dist/Image.js.map +1 -1
  157. package/dist/Image.vue.d.ts +18 -18
  158. package/dist/InlineEdit.js +19 -30
  159. package/dist/InlineEdit.js.map +1 -1
  160. package/dist/InlineEdit.vue.d.ts +26 -26
  161. package/dist/Input.js +58 -64
  162. package/dist/Input.js.map +1 -1
  163. package/dist/Input.vue.d.ts +44 -36
  164. package/dist/InputOptions.js +66 -93
  165. package/dist/InputOptions.js.map +1 -1
  166. package/dist/InputOptions.vue.d.ts +66 -58
  167. package/dist/IntegrationIcon.js +2 -2
  168. package/dist/IntegrationIcon.js.map +1 -1
  169. package/dist/IntegrationIcon.vue.d.ts +12 -12
  170. package/dist/Label.js +2 -5
  171. package/dist/Label.js.map +1 -1
  172. package/dist/Label.vue.d.ts +17 -17
  173. package/dist/{Label.vue_vue_type_script_setup_true_lang-b6ba2f02.js → Label.vue_vue_type_script_setup_true_lang-C4JKdqvC.js} +1 -1
  174. package/dist/{Label.vue_vue_type_script_setup_true_lang-b6ba2f02.js.map → Label.vue_vue_type_script_setup_true_lang-C4JKdqvC.js.map} +1 -1
  175. package/dist/LicenseChip.js +10 -16
  176. package/dist/LicenseChip.js.map +1 -1
  177. package/dist/LicenseChip.vue.d.ts +3 -3
  178. package/dist/ListItem.js +5 -8
  179. package/dist/ListItem.js.map +1 -1
  180. package/dist/ListItem.vue.d.ts +275 -225
  181. package/dist/ListItemCell.js +1 -1
  182. package/dist/ListItemCell.js.map +1 -1
  183. package/dist/ListItemCell.vue.d.ts +13 -2
  184. package/dist/ListView.js +57 -101
  185. package/dist/ListView.js.map +1 -1
  186. package/dist/ListView.vue.d.ts +5185 -5430
  187. package/dist/Loading.js +12 -10
  188. package/dist/Loading.js.map +1 -1
  189. package/dist/Loading.vue.d.ts +1 -1
  190. package/dist/Logo.js +2 -4
  191. package/dist/Logo.js.map +1 -1
  192. package/dist/Logo.vue.d.ts +17 -17
  193. package/dist/{Logo.vue_vue_type_script_setup_true_lang-2a2597cb.js → Logo.vue_vue_type_script_setup_true_lang-BfUU9J9O.js} +1 -1
  194. package/dist/{Logo.vue_vue_type_script_setup_true_lang-2a2597cb.js.map → Logo.vue_vue_type_script_setup_true_lang-BfUU9J9O.js.map} +1 -1
  195. package/dist/Menu.js +1 -1
  196. package/dist/Menu.vue.d.ts +1 -1
  197. package/dist/MenuItem.js +1 -1
  198. package/dist/MenuItem.vue.d.ts +1 -1
  199. package/dist/{MenusPlugin-9288029a.js → MenusPlugin-Bk6UW6o9.js} +1 -1
  200. package/dist/{MenusPlugin-9288029a.js.map → MenusPlugin-Bk6UW6o9.js.map} +1 -1
  201. package/dist/Metric.vue.d.ts +10 -10
  202. package/dist/Modal.js +27 -32
  203. package/dist/Modal.js.map +1 -1
  204. package/dist/Modal.vue.d.ts +42 -42
  205. package/dist/Modals.js +14 -16
  206. package/dist/Modals.js.map +1 -1
  207. package/dist/Modals.vue.d.ts +1 -1
  208. package/dist/ModalsPlugin.js +9 -12
  209. package/dist/ModalsPlugin.js.map +1 -1
  210. package/dist/Module.js +3 -3
  211. package/dist/{Module.keys-2cc7d830.js → Module.keys-CEsrW2f0.js} +1 -1
  212. package/dist/{Module.keys-2cc7d830.js.map → Module.keys-CEsrW2f0.js.map} +1 -1
  213. package/dist/{Module.types-3f78f2a0.js → Module.types-B1FfGGac.js} +1 -1
  214. package/dist/{Module.types-3f78f2a0.js.map → Module.types-B1FfGGac.js.map} +1 -1
  215. package/dist/Module.vue.d.ts +3 -3
  216. package/dist/ModuleContent.js +2 -2
  217. package/dist/ModuleContent.vue.d.ts +1 -1
  218. package/dist/ModuleFooter.js +2 -2
  219. package/dist/ModuleFooter.vue.d.ts +1 -1
  220. package/dist/ModuleHeader.js +3 -3
  221. package/dist/ModuleHeader.vue.d.ts +15 -15
  222. package/dist/ObfuscateText.js +8 -13
  223. package/dist/ObfuscateText.js.map +1 -1
  224. package/dist/ObfuscateText.vue.d.ts +18 -18
  225. package/dist/PageContent.js +1 -1
  226. package/dist/PageContent.vue.d.ts +1 -1
  227. package/dist/PageHeader.js +26 -23
  228. package/dist/PageHeader.js.map +1 -1
  229. package/dist/PageHeader.vue.d.ts +7 -4
  230. package/dist/PageNavigation.js +41 -64
  231. package/dist/PageNavigation.js.map +1 -1
  232. package/dist/PageNavigation.vue.d.ts +10 -10
  233. package/dist/Paginate.js +36 -34
  234. package/dist/Paginate.js.map +1 -1
  235. package/dist/Paginate.vue.d.ts +11 -11
  236. package/dist/PlaidLink.js +3 -5
  237. package/dist/PlaidLink.js.map +1 -1
  238. package/dist/PlaidLink.vue.d.ts +29 -29
  239. package/dist/QuickAction.js +12 -15
  240. package/dist/QuickAction.js.map +1 -1
  241. package/dist/QuickAction.vue.d.ts +1 -1
  242. package/dist/Radio.js +1 -1
  243. package/dist/Radio.js.map +1 -1
  244. package/dist/Radio.vue.d.ts +83 -12
  245. package/dist/RadioGroup.js +41 -45
  246. package/dist/RadioGroup.js.map +1 -1
  247. package/dist/{RadioGroup.keys-974818d6.js → RadioGroup.keys-CqfiKkNz.js} +1 -1
  248. package/dist/{RadioGroup.keys-974818d6.js.map → RadioGroup.keys-CqfiKkNz.js.map} +1 -1
  249. package/dist/RadioGroup.vue.d.ts +30 -30
  250. package/dist/RadioNew.js +2 -2
  251. package/dist/RadioNew.js.map +1 -1
  252. package/dist/RadioNew.vue.d.ts +26 -26
  253. package/dist/RangeInput.js +10 -14
  254. package/dist/RangeInput.js.map +1 -1
  255. package/dist/RangeInput.vue.d.ts +1 -1
  256. package/dist/SearchBar.js +31 -41
  257. package/dist/SearchBar.js.map +1 -1
  258. package/dist/SearchBar.vue.d.ts +22 -22
  259. package/dist/Select.js +66 -78
  260. package/dist/Select.js.map +1 -1
  261. package/dist/Select.vue.d.ts +123 -123
  262. package/dist/SelectStatus.js +47 -69
  263. package/dist/SelectStatus.js.map +1 -1
  264. package/dist/SelectStatus.vue.d.ts +33 -26
  265. package/dist/Skeleton.js +1 -1
  266. package/dist/Skeleton.js.map +1 -1
  267. package/dist/Skeleton.vue.d.ts +9 -9
  268. package/dist/Step.js +10 -14
  269. package/dist/Step.js.map +1 -1
  270. package/dist/Step.vue.d.ts +21 -21
  271. package/dist/Stepper.js +37 -40
  272. package/dist/Stepper.js.map +1 -1
  273. package/dist/Stepper.vue.d.ts +34 -29
  274. package/dist/Switch.js +1 -1
  275. package/dist/Switch.vue.d.ts +23 -23
  276. package/dist/Tab.js +21 -36
  277. package/dist/Tab.js.map +1 -1
  278. package/dist/Table.js +38 -55
  279. package/dist/Table.js.map +1 -1
  280. package/dist/Table.keys-LHQf6FEH.js +7 -0
  281. package/dist/{Table.keys-83e4f09b.js.map → Table.keys-LHQf6FEH.js.map} +1 -1
  282. package/dist/Table.vue.d.ts +36 -36
  283. package/dist/TableCell.js +26 -26
  284. package/dist/TableCell.js.map +1 -1
  285. package/dist/TableCell.vue.d.ts +6 -6
  286. package/dist/TableHeaderCell.js +6 -13
  287. package/dist/TableHeaderCell.js.map +1 -1
  288. package/dist/TableHeaderCell.vue.d.ts +3 -3
  289. package/dist/TableHeaderRow.js +22 -32
  290. package/dist/TableHeaderRow.js.map +1 -1
  291. package/dist/TableHeaderRow.vue.d.ts +8 -8
  292. package/dist/TableRow.js +59 -59
  293. package/dist/TableRow.js.map +1 -1
  294. package/dist/TableRow.vue.d.ts +26 -26
  295. package/dist/Tabs.js +10 -24
  296. package/dist/Tabs.js.map +1 -1
  297. package/dist/Tabs.vue.d.ts +5 -5
  298. package/dist/{Tabs.vue_used_vue_type_style_index_0_lang.module-d7530989.js → Tabs.vue_vue_type_script_setup_true_lang-l41hWkV4.js} +31 -34
  299. package/dist/Tabs.vue_vue_type_script_setup_true_lang-l41hWkV4.js.map +1 -0
  300. package/dist/TextEditor.js +1269 -1364
  301. package/dist/TextEditor.js.map +1 -1
  302. package/dist/TextEditor.vue.d.ts +46 -46
  303. package/dist/Textarea.js +30 -31
  304. package/dist/Textarea.js.map +1 -1
  305. package/dist/Textarea.vue.d.ts +34 -26
  306. package/dist/Timeline.js +9 -10
  307. package/dist/Timeline.js.map +1 -1
  308. package/dist/Timeline.vue.d.ts +6 -6
  309. package/dist/TimelineItem.js +1 -1
  310. package/dist/TimelineItem.vue.d.ts +1 -1
  311. package/dist/Toast.js +5 -9
  312. package/dist/Toast.js.map +1 -1
  313. package/dist/Toast.vue.d.ts +3 -3
  314. package/dist/Toasts.js +15 -25
  315. package/dist/Toasts.js.map +1 -1
  316. package/dist/Toasts.vue.d.ts +1 -1
  317. package/dist/ToastsPlugin.js +11 -23
  318. package/dist/ToastsPlugin.js.map +1 -1
  319. package/dist/Tooltip.js +1 -1
  320. package/dist/Tooltip.js.map +1 -1
  321. package/dist/Tooltip.vue.d.ts +15 -15
  322. package/dist/{_commonjsHelpers-10dfc225.js → _commonjsHelpers-DaMA6jEr.js} +1 -1
  323. package/dist/_commonjsHelpers-DaMA6jEr.js.map +1 -0
  324. package/dist/{_plugin-vue_export-helper-dad06003.js → _plugin-vue_export-helper-CHgC5LLL.js} +1 -1
  325. package/dist/_plugin-vue_export-helper-CHgC5LLL.js.map +1 -0
  326. package/dist/{colors-8d9b9429.js → colors-DDDVvqfQ.js} +1 -1
  327. package/dist/{colors-8d9b9429.js.map → colors-DDDVvqfQ.js.map} +1 -1
  328. package/dist/components.css +2 -2
  329. package/dist/directives/observe.js.map +1 -1
  330. package/dist/directives/sticky.js.map +1 -1
  331. package/dist/directives/tooltip.js +21 -27
  332. package/dist/directives/tooltip.js.map +1 -1
  333. package/dist/directives/viewable.js +1 -1
  334. package/dist/directives/viewable.js.map +1 -1
  335. package/dist/{floating-ui.vue-8d7f7932.js → floating-ui.vue-BmfQDqE-.js} +2 -3
  336. package/dist/{floating-ui.vue-8d7f7932.js.map → floating-ui.vue-BmfQDqE-.js.map} +1 -1
  337. package/dist/{formatDateTime-a5e70901.js → formatDateTime-C8CYECpd.js} +8 -12
  338. package/dist/{formatDateTime-a5e70901.js.map → formatDateTime-C8CYECpd.js.map} +1 -1
  339. package/dist/{index-9e1095ef.js → index-D6bxWkZ1.js} +2 -3
  340. package/dist/{index-9e1095ef.js.map → index-D6bxWkZ1.js.map} +1 -1
  341. package/dist/index.d.ts +1 -1
  342. package/dist/index.js +90 -112
  343. package/dist/index.js.map +1 -1
  344. package/dist/{isDefined-2ce6cde4.js → isDefined-DzVx0B6k.js} +1 -1
  345. package/dist/{isDefined-2ce6cde4.js.map → isDefined-DzVx0B6k.js.map} +1 -1
  346. package/dist/{isValid-4b2b7a54.js → isValid-DN-HkCoi.js} +1 -1
  347. package/dist/{isValid-4b2b7a54.js.map → isValid-DN-HkCoi.js.map} +1 -1
  348. package/dist/{keys-241d03b7.js → keys-BEdEsanp.js} +1 -1
  349. package/dist/{keys-241d03b7.js.map → keys-BEdEsanp.js.map} +1 -1
  350. package/dist/{keys-7ecef029.js → keys-C8Zfr_By.js} +1 -1
  351. package/dist/{keys-7ecef029.js.map → keys-C8Zfr_By.js.map} +1 -1
  352. package/dist/{misc-76697f61.js → misc-CHQs-G03.js} +1 -1
  353. package/dist/{misc-76697f61.js.map → misc-CHQs-G03.js.map} +1 -1
  354. package/dist/{parseISO-ed4094c1.js → parseISO-wlfIB_QJ.js} +12 -18
  355. package/dist/{parseISO-ed4094c1.js.map → parseISO-wlfIB_QJ.js.map} +1 -1
  356. package/dist/{searchFuzzy-9b74ec4e.js → searchFuzzy-DKooyZM8.js} +110 -149
  357. package/dist/{searchFuzzy-9b74ec4e.js.map → searchFuzzy-DKooyZM8.js.map} +1 -1
  358. package/dist/{statusLevels-a8b041f4.js → statusLevels-D8EgtE_L.js} +1 -1
  359. package/dist/{statusLevels-a8b041f4.js.map → statusLevels-D8EgtE_L.js.map} +1 -1
  360. package/dist/storage.js +8 -15
  361. package/dist/storage.js.map +1 -1
  362. package/dist/tailwind-base.js.map +1 -1
  363. package/dist/{toTimeZone-a2ed6470.js → toTimeZone-CVE1ZmsS.js} +1 -1
  364. package/dist/{toTimeZone-a2ed6470.js.map → toTimeZone-CVE1ZmsS.js.map} +1 -1
  365. package/dist/useDialog.js +7 -7
  366. package/dist/useGoogleMaps.js +18 -28
  367. package/dist/useGoogleMaps.js.map +1 -1
  368. package/dist/useModals.js +1 -2
  369. package/dist/useModals.js.map +1 -1
  370. package/dist/useScriptTag.js.map +1 -1
  371. package/dist/useSearch.js +14 -19
  372. package/dist/useSearch.js.map +1 -1
  373. package/dist/useStepper.js.map +1 -1
  374. package/dist/useValidation.js +1 -1
  375. package/dist/useValidation.js.map +1 -1
  376. package/dist/utils/calculateElementOverflow.js +9 -13
  377. package/dist/utils/calculateElementOverflow.js.map +1 -1
  378. package/dist/utils/colorScheme.js.map +1 -1
  379. package/dist/utils/createQueryString.js +4 -5
  380. package/dist/utils/createQueryString.js.map +1 -1
  381. package/dist/utils/createValidDate.js +2 -2
  382. package/dist/utils/formatDateTime.js +4 -5
  383. package/dist/utils/formatDateTime.js.map +1 -1
  384. package/dist/utils/getContrastingTextColor.js +1 -1
  385. package/dist/utils/getContrastingTextColor.js.map +1 -1
  386. package/dist/utils/helpers.js.map +1 -1
  387. package/dist/utils/i18n.js +25 -26
  388. package/dist/utils/i18n.js.map +1 -1
  389. package/dist/utils/normalizeDate.js +1 -1
  390. package/dist/utils/searchFuzzy.js +3 -10
  391. package/dist/utils/searchFuzzy.js.map +1 -1
  392. package/dist/utils/storage.js +6 -11
  393. package/dist/utils/storage.js.map +1 -1
  394. package/dist/utils/toTimeZone.js +2 -3
  395. package/dist/utils/toTimeZone.js.map +1 -1
  396. package/package.json +13 -14
  397. package/dist/Button.vue_used_vue_type_style_index_0_lang.module-4dabc2a9.js +0 -17
  398. package/dist/Button.vue_used_vue_type_style_index_0_lang.module-4dabc2a9.js.map +0 -1
  399. package/dist/Carousel.types.d.ts +0 -33
  400. package/dist/Carousel.types.js +0 -2
  401. package/dist/Carousel.types.js.map +0 -1
  402. package/dist/Checkbox.vue_used_vue_type_style_index_0_lang.module-fa8d9c06.js +0 -9
  403. package/dist/Checkbox.vue_used_vue_type_style_index_0_lang.module-fa8d9c06.js.map +0 -1
  404. package/dist/DataView.vue_used_vue_type_style_index_0_lang.module-5c180dba.js.map +0 -1
  405. package/dist/EmptyState.vue_used_vue_type_style_index_0_lang.module-f5d89366.js +0 -8
  406. package/dist/EmptyState.vue_used_vue_type_style_index_0_lang.module-f5d89366.js.map +0 -1
  407. package/dist/Icon.vue_used_vue_type_style_index_0_lang.module-eb359559.js +0 -11
  408. package/dist/Icon.vue_used_vue_type_style_index_0_lang.module-eb359559.js.map +0 -1
  409. package/dist/Loading.vue_used_vue_type_style_index_0_lang.module-ef5a3bc6.js +0 -8
  410. package/dist/Loading.vue_used_vue_type_style_index_0_lang.module-ef5a3bc6.js.map +0 -1
  411. package/dist/Paginate.vue_used_vue_type_style_index_0_lang.module-18343da7.js +0 -11
  412. package/dist/Paginate.vue_used_vue_type_style_index_0_lang.module-18343da7.js.map +0 -1
  413. package/dist/Table.keys-83e4f09b.js +0 -27
  414. package/dist/Tabs.vue_used_vue_type_style_index_0_lang.module-d7530989.js.map +0 -1
  415. package/dist/_commonjsHelpers-10dfc225.js.map +0 -1
  416. package/dist/_plugin-vue_export-helper-dad06003.js.map +0 -1
@@ -1,11 +1,11 @@
1
1
  import { ComponentOptionsMixin } from 'vue';
2
2
  import { ComponentProvideOptions } from 'vue';
3
+ import { default as default_2 } from 'quill/modules/toolbar';
4
+ import { default as default_3 } from 'quill';
3
5
  import { DefineComponent } from 'vue';
4
6
  import { ExtractPropTypes } from 'vue';
5
7
  import { PropType } from 'vue';
6
8
  import { PublicProps } from 'vue';
7
- import Quill from 'quill';
8
- import Toolbar from 'quill/modules/toolbar';
9
9
 
10
10
  declare type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
11
11
 
@@ -29,58 +29,58 @@ declare type __VLS_WithDefaults<P, D> = {
29
29
  };
30
30
 
31
31
  declare const _default: DefineComponent<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TextEditorProps>, {
32
- modelValue: string;
33
- placeholder: string;
34
- isReadOnly: boolean;
35
- addBottomSpace: boolean;
36
- errorText: undefined;
37
- hintText: undefined;
38
- id: undefined;
39
- isRequired: boolean;
40
- label: undefined;
41
- showOptionalInLabel: boolean;
42
- controls: () => never[];
43
- handlers: () => {};
32
+ modelValue: string;
33
+ placeholder: string;
34
+ isReadOnly: boolean;
35
+ addBottomSpace: boolean;
36
+ errorText: undefined;
37
+ hintText: undefined;
38
+ id: undefined;
39
+ isRequired: boolean;
40
+ label: undefined;
41
+ showOptionalInLabel: boolean;
42
+ controls: () => never[];
43
+ handlers: () => {};
44
44
  }>>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
45
- blur: (editor: Quill) => void;
46
- focus: (editor: Quill) => void;
47
- "update:model-value": (value: string) => void;
45
+ blur: (editor: default_3) => void;
46
+ focus: (editor: default_3) => void;
47
+ "update:model-value": (value: string) => void;
48
48
  }, string, PublicProps, Readonly<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TextEditorProps>, {
49
- modelValue: string;
50
- placeholder: string;
51
- isReadOnly: boolean;
52
- addBottomSpace: boolean;
53
- errorText: undefined;
54
- hintText: undefined;
55
- id: undefined;
56
- isRequired: boolean;
57
- label: undefined;
58
- showOptionalInLabel: boolean;
59
- controls: () => never[];
60
- handlers: () => {};
49
+ modelValue: string;
50
+ placeholder: string;
51
+ isReadOnly: boolean;
52
+ addBottomSpace: boolean;
53
+ errorText: undefined;
54
+ hintText: undefined;
55
+ id: undefined;
56
+ isRequired: boolean;
57
+ label: undefined;
58
+ showOptionalInLabel: boolean;
59
+ controls: () => never[];
60
+ handlers: () => {};
61
61
  }>>> & Readonly<{
62
- onBlur?: ((editor: Quill) => any) | undefined;
63
- onFocus?: ((editor: Quill) => any) | undefined;
64
- "onUpdate:model-value"?: ((value: string) => any) | undefined;
62
+ onBlur?: ((editor: default_3) => any) | undefined;
63
+ onFocus?: ((editor: default_3) => any) | undefined;
64
+ "onUpdate:model-value"?: ((value: string) => any) | undefined;
65
65
  }>, {
66
- label: string;
67
- id: string;
68
- controls: TextEditorControls;
69
- isRequired: boolean;
70
- addBottomSpace: boolean;
71
- errorText: string;
72
- hintText: string;
73
- isReadOnly: boolean;
74
- showOptionalInLabel: boolean;
75
- placeholder: string;
76
- modelValue: string;
77
- handlers: TextEditorControlHandlerMap;
66
+ label: string;
67
+ id: string;
68
+ controls: TextEditorControls;
69
+ isRequired: boolean;
70
+ addBottomSpace: boolean;
71
+ errorText: string;
72
+ hintText: string;
73
+ isReadOnly: boolean;
74
+ showOptionalInLabel: boolean;
75
+ placeholder: string;
76
+ modelValue: string;
77
+ handlers: TextEditorControlHandlerMap;
78
78
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
79
79
  export default _default;
80
80
 
81
81
  declare type IconName = (typeof iconNames)[number];
82
82
 
83
- declare const iconNames: readonly ["action-dots", "activity", "alert-bell", "archive", "arrow-down", "arrow-left", "arrow-right", "arrow-up", "badge-discount", "badge-seller-elite", "badge-seller-power", "badge-seller-verified", "book-customer", "building-office", "bulk-add", "calendar-reschedule", "calendar", "caret-down", "caret-up", "change-log", "check", "chevron-down", "chevron-left", "chevron-right", "chevron-up", "circle-check", "circle-close", "circle-dollar", "circle-info", "circle-partial", "circle-percent", "circle-question-mark", "circle-status", "circle-warning", "clipboard-checkmark", "clipboard-inventory", "close", "combine", "compass", "contact", "contract", "copy", "credit-card", "credit-profile", "dashboard", "document-accept", "document-invoice", "document-recieved", "document-sent", "document-view", "document", "dolly", "download", "edit", "ellipsis", "envelope-open", "envelope", "equals", "export", "figma", "file-csv", "file", "filter-funnel", "filter-line", "flag", "folder", "folder-bar-graph", "folder-orders", "font-bold", "font-clear-format", "font-italic", "font-underline", "gear", "github", "globe", "graph-bar-chart", "graph-line-chart", "graph-pie-chart", "hazard", "hazard-outline", "headset-agent", "headset-mic", "heart-filled", "heart-outline", "help-question-mark", "hide", "history", "image", "keyboard-return", "license-approved", "license-certificate", "lightbulb", "link-add", "link-unlink", "link", "list-bulleted", "list-items", "list-numbered", "loading-big", "loading-empty", "loading-small", "location", "lock-unlock", "lock", "logo-facebook", "logo-instagram", "logo-linkedin", "logo-ll", "logo-metrc", "logo-plaid", "logo-x", "logo-youtube", "logout", "medical", "megaphone-sound", "megaphone", "menu", "message-dispute", "message-reply", "message", "minus", "mj-leaf", "money", "note-add", "note", "open-in-new", "paperclip", "paper-plane", "performance", "phone", "plus", "preview", "print", "product-menu-manage", "product-menu-search", "product-menu", "queue-add", "queue", "recent", "refresh", "register", "reply", "report-download", "sample", "save", "scale-law", "scale-weight", "search", "seed-cycle", "share", "shop-bag-browse", "shop-bag-reorder", "shop-bag", "shop-basket", "shop-cart-add", "shop-cart", "show", "sign-dollar", "sign-percent", "sort", "split", "star-filled", "star-outline", "storefront", "submit", "swap-horizontal", "swap-vertical", "tag-star", "tag", "test-results", "ticket-star", "ticket", "tool-dropper", "tool-wrench", "transfer", "trashcan", "truck", "upload", "user-add", "user-admin", "user-check", "user", "view-card", "view-detailed", "view-list", "warehouse", "working"];
83
+ declare const iconNames: readonly ["action-dots", "activity", "alert-bell", "archive", "arrow-down", "arrow-left", "arrow-right", "arrow-up", "badge-discount", "badge-seller-elite", "badge-seller-power", "badge-seller-verified", "book-customer", "building-office", "bulk-add", "calendar-reschedule", "calendar", "caret-down", "caret-up", "change-log", "check", "chevron-down", "chevron-left", "chevron-right", "chevron-up", "circle-check", "circle-close", "circle-dollar", "circle-info", "circle-partial", "circle-percent", "circle-question-mark", "circle-status", "circle-warning", "clipboard-checkmark", "clipboard-inventory", "close", "combine", "compass", "contact", "contract", "copy", "credit-card", "credit-profile", "dashboard", "document-accept", "document-invoice", "document-recieved", "document-sent", "document-view", "document", "dolly", "download", "edit", "ellipsis", "envelope-open", "envelope", "equals", "export", "figma", "file-csv", "file", "filter-funnel", "filter-line", "flag", "folder", "folder-bar-graph", "folder-orders", "font-bold", "font-clear-format", "font-italic", "font-underline", "gear", "github", "globe", "graph-bar-chart", "graph-line-chart", "graph-pie-chart", "hazard", "hazard-outline", "headset-agent", "headset-mic", "heart-filled", "heart-outline", "help-question-mark", "hide", "history", "image", "import", "keyboard-return", "license-approved", "license-certificate", "lightbulb", "link-add", "link-unlink", "link", "list-bulleted", "list-items", "list-numbered", "loading-big", "loading-empty", "loading-small", "location", "lock-unlock", "lock", "logo-facebook", "logo-instagram", "logo-linkedin", "logo-ll", "logo-metrc", "logo-plaid", "logo-x", "logo-youtube", "logout", "medical", "megaphone-sound", "megaphone", "menu", "message-dispute", "message-reply", "message", "minus", "mj-leaf", "money", "note-add", "note", "open-in-new", "paperclip", "paper-plane", "performance", "phone", "plus", "preview", "print", "product-menu-manage", "product-menu-search", "product-menu", "queue-add", "queue", "recent", "refresh", "register", "reply", "report-download", "sample", "save", "scale-law", "scale-weight", "search", "seed-cycle", "share", "shop-bag-browse", "shop-bag-reorder", "shop-bag", "shop-basket", "shop-cart-add", "shop-cart", "show", "sign-dollar", "sign-percent", "sort", "split", "star-filled", "star-outline", "storefront", "submit", "swap-horizontal", "swap-vertical", "tag-star", "tag", "test-results", "ticket-star", "ticket", "tool-dropper", "tool-wrench", "transfer", "trashcan", "truck", "upload", "user-add", "user-admin", "user-check", "user", "view-card", "view-detailed", "view-list", "warehouse", "working"];
84
84
 
85
85
  declare const TEXT_EDITOR_ALLOWED_CONTROLS: readonly ["bold", "italic", "underline", "link", "divider", "list"];
86
86
 
@@ -88,7 +88,7 @@ export declare type TextEditorAllowedControlName = (typeof TEXT_EDITOR_ALLOWED_C
88
88
 
89
89
  export declare type TextEditorControl = (TextEditorAllowedControlName | TextEditorControlObject)[];
90
90
 
91
- export declare type TextEditorControlHandler = (this: Toolbar, value: any) => void;
91
+ export declare type TextEditorControlHandler = (this: default_2, value: any) => void;
92
92
 
93
93
  export declare type TextEditorControlHandlerMap = {
94
94
  [key in TextEditorAllowedControlName]?: TextEditorControlHandler;
package/dist/Textarea.js CHANGED
@@ -1,11 +1,8 @@
1
1
  import { defineComponent as M, useAttrs as S, useSlots as k, useCssModule as H, ref as x, computed as O, watch as A, onMounted as I, nextTick as P, onBeforeUnmount as V, openBlock as $, createBlock as q, mergeProps as _, unref as u, createSlots as j, withCtx as g, createElementVNode as D, renderSlot as F } from "vue";
2
2
  import L from "lodash-es/uniqueId";
3
- import { _ as N } from "./Field.vue_vue_type_script_setup_true_lang-fded4f75.js";
4
- import { _ as U } from "./_plugin-vue_export-helper-dad06003.js";
5
- import "./Label.vue_vue_type_script_setup_true_lang-b6ba2f02.js";
6
- import "./locale.js";
7
- import "lodash-es/get";
8
- const W = ["id", "value", "disabled"], Y = /* @__PURE__ */ M({
3
+ import { _ as N } from "./Field.vue_vue_type_script_setup_true_lang-DjxUvSRF.js";
4
+ import { _ as U } from "./_plugin-vue_export-helper-CHgC5LLL.js";
5
+ const W = ["id", "value", "placeholder", "disabled"], Y = /* @__PURE__ */ M({
9
6
  name: "ll-textarea",
10
7
  __name: "Textarea",
11
8
  props: {
@@ -16,16 +13,17 @@ const W = ["id", "value", "disabled"], Y = /* @__PURE__ */ M({
16
13
  hintText: { default: "" },
17
14
  showOptionalInLabel: { type: Boolean, default: !1 },
18
15
  resize: { type: [Boolean, Object], default: !1 },
16
+ placeholder: { default: void 0 },
19
17
  disabled: { type: Boolean, default: !1 }
20
18
  },
21
19
  emits: ["update:model-value"],
22
20
  setup(w, { emit: b }) {
23
- const y = L("textarea-"), p = S(), z = k(), m = H(), s = w, B = b, d = x(), l = x(), T = O(() => {
21
+ const y = L("textarea-"), p = S(), z = k(), m = H(), o = w, B = b, d = x(), l = x(), T = O(() => {
24
22
  const e = { ...p };
25
23
  return delete e["data-test"], delete e.class, e;
26
24
  });
27
25
  A(
28
- () => s.resize,
26
+ () => o.resize,
29
27
  (e) => {
30
28
  var t;
31
29
  e ? h() : (t = l.value) == null || t.disconnect();
@@ -35,66 +33,67 @@ const W = ["id", "value", "disabled"], Y = /* @__PURE__ */ M({
35
33
  B("update:model-value", e.target.value);
36
34
  }, h = () => {
37
35
  l.value || !d.value || (l.value = new ResizeObserver(([e]) => {
38
- const { target: t } = e, o = v(d.value) || document.documentElement, { scrollTop: a } = o;
36
+ const { target: t } = e, a = v(d.value) || document.documentElement, { scrollTop: s } = a;
39
37
  let r = 0;
40
- if (o === document.documentElement) {
38
+ if (a === document.documentElement) {
41
39
  const { top: n, height: i } = E(t), { innerHeight: c } = window;
42
- r = Math.max(n + i - (c + a), 0);
40
+ r = Math.max(n + i - (c + s), 0);
43
41
  } else {
44
- const { top: n, height: i } = t.getBoundingClientRect(), { top: c } = o.getBoundingClientRect(), { offsetHeight: f } = o, R = n - c;
42
+ const { top: n, height: i } = t.getBoundingClientRect(), { top: c } = a.getBoundingClientRect(), { offsetHeight: f } = a, R = n - c;
45
43
  r = Math.max(R + i - f, 0);
46
44
  }
47
45
  r && requestAnimationFrame(() => {
48
- o.scrollTop = a + r;
46
+ a.scrollTop = s + r;
49
47
  });
50
48
  }), l.value.observe(d.value));
51
49
  }, v = (e) => {
52
50
  const t = e.parentElement;
53
51
  if (!t)
54
52
  return null;
55
- const { overflowY: o } = getComputedStyle(t);
56
- return o !== "visible" ? t : t === document.body ? document.documentElement : v(t);
53
+ const { overflowY: a } = getComputedStyle(t);
54
+ return a !== "visible" ? t : t === document.body ? document.documentElement : v(t);
57
55
  }, E = (e) => {
58
- const { offsetWidth: t, offsetHeight: o } = e;
59
- let a = 0, r = 0;
56
+ const { offsetWidth: t, offsetHeight: a } = e;
57
+ let s = 0, r = 0;
60
58
  const n = function({ offsetLeft: i, offsetTop: c, offsetParent: f }) {
61
- a += i, r += c, f && n(f);
59
+ s += i, r += c, f && n(f);
62
60
  };
63
61
  return n(e), {
64
62
  top: r,
65
- left: a,
63
+ left: s,
66
64
  width: t,
67
- height: o
65
+ height: a
68
66
  };
69
67
  };
70
68
  return I(async () => {
71
69
  var e;
72
- if (s.value !== null)
70
+ if (o.value !== null)
73
71
  throw new Error("ll-input: use :model-value or v-model instead of :value.");
74
72
  if (p.onInput)
75
73
  throw new Error("ll-input: use the @update:model-value event instead of @input");
76
- (typeof s.resize == "boolean" && s.resize || (e = s.resize) != null && e.forceBrowserScroll) && (await P(), h());
74
+ (typeof o.resize == "boolean" && o.resize || (e = o.resize) != null && e.forceBrowserScroll) && (await P(), h());
77
75
  }), V(() => {
78
76
  var e;
79
77
  (e = l.value) == null || e.disconnect();
80
- }), (e, t) => ($(), q(N, _(s, {
78
+ }), (e, t) => ($(), q(N, _(o, {
81
79
  id: u(y),
82
80
  class: ["stash-textarea", [u(m).root, u(p).class]],
83
81
  "data-test": "stash-textarea"
84
82
  }), j({
85
- default: g(({ fieldId: o, hasError: a }) => [
83
+ default: g(({ fieldId: a, hasError: s }) => [
86
84
  D("textarea", _({
87
- id: o,
85
+ id: a,
88
86
  ref_key: "textareaRef",
89
87
  ref: d,
90
88
  class: [
91
89
  u(m).textarea,
92
- { "stash-textarea--error": a, "tw-resize-y": s.resize, "tw-resize-none": !s.resize }
90
+ { "stash-textarea--error": s, "tw-resize-y": o.resize, "tw-resize-none": !o.resize }
93
91
  ],
94
- value: s.modelValue,
95
- "data-test": "stash-textarea|textarea"
92
+ value: o.modelValue,
93
+ "data-test": "stash-textarea|textarea",
94
+ placeholder: o.placeholder
96
95
  }, T.value, {
97
- disabled: s.disabled,
96
+ disabled: o.disabled,
98
97
  onInput: C
99
98
  }), null, 16, W)
100
99
  ]),
@@ -115,8 +114,8 @@ const W = ["id", "value", "disabled"], Y = /* @__PURE__ */ M({
115
114
  "stash-textarea--error": "_stash-textarea--error_1agcr_28"
116
115
  }, Q = {
117
116
  $style: K
118
- }, re = /* @__PURE__ */ U(Y, [["__cssModules", Q]]);
117
+ }, oe = /* @__PURE__ */ U(Y, [["__cssModules", Q]]);
119
118
  export {
120
- re as default
119
+ oe as default
121
120
  };
122
121
  //# sourceMappingURL=Textarea.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.js","sources":["../src/components/Textarea/Textarea.vue"],"sourcesContent":["<script lang=\"ts\" setup>\n import uniqueId from 'lodash-es/uniqueId';\n import { computed, nextTick, onBeforeUnmount, onMounted, ref, useAttrs, useCssModule, useSlots, watch } from 'vue';\n\n import Field from '../Field/Field.vue';\n\n export interface TextareaResizeOptions {\n /**\n * It will automatically scroll the page down when it reaches the bottom of the viewport/element\n */\n forceBrowserScroll: boolean;\n }\n\n export interface TextAreaProps {\n /**\n * Label text for the textarea element.\n */\n label?: string;\n\n /**\n * Value for the textarea element.\n */\n modelValue?: string;\n\n /**\n * Deprecated. Use :model-value or v-model instead of :value.\n * @deprecated Use :model-value or v-model instead of :value.\n */\n value?: string | number | null;\n\n /**\n * Error text for the textarea element.\n */\n errorText?: string;\n\n /**\n * Hint text for the textarea element.\n */\n hintText?: string;\n\n /**\n * Render \"(optional)\" to the right of the label text\n */\n showOptionalInLabel?: boolean;\n\n /**\n * Allow textarea to be resizable vertically.\n * Alternatively if you want to disable automatic scroll when resizing, you can set `{ forceBrowserScroll: false }`\n */\n resize?: boolean | TextareaResizeOptions;\n\n /**\n * Indicates whether the textarea is disabled.\n */\n disabled?: boolean;\n }\n\n defineOptions({\n name: 'll-textarea',\n });\n\n /**\n * Unique ID for the textarea, required for accessibility purposes\n */\n const id = uniqueId('textarea-');\n\n const attrs = useAttrs();\n const slots = useSlots();\n const classes = useCssModule();\n\n const props = withDefaults(defineProps<TextAreaProps>(), {\n label: ' ',\n modelValue: '',\n value: null,\n errorText: '',\n hintText: '',\n showOptionalInLabel: false,\n resize: false,\n disabled: false,\n });\n\n const emits = defineEmits<{\n /**\n * Emitted when the model value changes.\n */\n (e: 'update:model-value', value: string): void;\n }>();\n\n const textareaRef = ref<HTMLTextAreaElement>();\n const observer = ref<ResizeObserver>();\n\n const inputAttrs = computed(() => {\n const allAttrs = { ...attrs };\n\n delete allAttrs['data-test'];\n delete allAttrs.class;\n\n return allAttrs;\n });\n\n watch(\n () => props.resize,\n (v) => {\n v ? setupResizeObserver() : observer.value?.disconnect();\n },\n );\n\n const onInput = (event: Event) => {\n emits('update:model-value', (event.target as HTMLTextAreaElement).value);\n };\n\n const setupResizeObserver = () => {\n if (observer.value || !textareaRef.value) {\n return;\n }\n\n // the ResizeObserver will be in charge to detect if page needs to scroll when resizing the component\n observer.value = new ResizeObserver(([entry]) => {\n const { target } = entry;\n const parent = findParentScrollable(textareaRef.value as HTMLTextAreaElement) || document.documentElement;\n\n const { scrollTop: scrollPosition } = parent;\n let offsetDiff = 0;\n\n // checks if the closest parent element scrollable is the document page\n if (parent === document.documentElement) {\n const { top, height } = getOffsetClipRect(target as HTMLElement);\n const { innerHeight: viewportHeight } = window;\n\n offsetDiff = Math.max(top + height - (viewportHeight + scrollPosition), 0);\n } else {\n const { top, height } = (target as HTMLElement).getBoundingClientRect();\n const { top: parentTop } = parent.getBoundingClientRect();\n const { offsetHeight: parentHeight } = parent;\n const offsetTop = top - parentTop;\n\n offsetDiff = Math.max(offsetTop + height - parentHeight, 0);\n }\n\n if (offsetDiff) {\n requestAnimationFrame(() => {\n parent.scrollTop = scrollPosition + offsetDiff;\n });\n }\n });\n\n observer.value.observe(textareaRef.value);\n };\n\n /**\n * Retrieve the closest parent that has a scroll. Defaults to the document page.\n */\n const findParentScrollable = (el: HTMLElement): HTMLElement | null => {\n const parent = el.parentElement as HTMLElement;\n if (!parent) {\n return null;\n }\n\n const { overflowY } = getComputedStyle(parent);\n if (overflowY !== 'visible') {\n return parent;\n }\n\n if (parent === document.body) {\n return document.documentElement;\n }\n\n return findParentScrollable(parent);\n };\n\n /**\n * Retrieve element absolute positioning relative to the page.\n */\n const getOffsetClipRect = (el: HTMLElement) => {\n const { offsetWidth: width, offsetHeight: height } = el;\n\n let left = 0;\n let top = 0;\n\n const findPos = function ({ offsetLeft, offsetTop, offsetParent }: HTMLElement) {\n left += offsetLeft;\n top += offsetTop;\n\n if (offsetParent) {\n findPos(offsetParent as HTMLElement);\n }\n };\n\n findPos(el);\n\n return {\n top,\n left,\n width,\n height,\n };\n };\n\n onMounted(async () => {\n if (props.value !== null) {\n throw new Error('ll-input: use :model-value or v-model instead of :value.');\n }\n\n if (attrs.onInput) {\n throw new Error('ll-input: use the @update:model-value event instead of @input');\n }\n\n if (\n (typeof props.resize === 'boolean' && props.resize) ||\n (props.resize as TextareaResizeOptions)?.forceBrowserScroll\n ) {\n await nextTick();\n setupResizeObserver();\n }\n });\n\n onBeforeUnmount(() => {\n observer.value?.disconnect();\n });\n</script>\n\n<template>\n <Field v-bind=\"props\" :id=\"id\" class=\"stash-textarea\" :class=\"[classes.root, attrs.class]\" data-test=\"stash-textarea\">\n <template #default=\"{ fieldId, hasError }\">\n <textarea\n :id=\"fieldId\"\n ref=\"textareaRef\"\n :class=\"[\n classes.textarea,\n { 'stash-textarea--error': hasError, 'tw-resize-y': props.resize, 'tw-resize-none': !props.resize },\n ]\"\n :value=\"props.modelValue\"\n data-test=\"stash-textarea|textarea\"\n v-bind=\"inputAttrs\"\n :disabled=\"props.disabled\"\n @input=\"onInput\"\n ></textarea>\n </template>\n <template v-if=\"slots.hint\" #hint>\n <!-- @slot Hint content -->\n <slot name=\"hint\"></slot>\n </template>\n </Field>\n</template>\n\n<style module>\n .root {\n position: relative;\n width: 100%;\n }\n\n .textarea {\n background: var(--color-white);\n border: 1px solid;\n border-color: var(--color-ice-500);\n border-radius: theme('borderRadius.DEFAULT');\n color: var(--color-ice-700);\n display: block;\n min-height: 100px;\n outline: none;\n padding: theme('spacing[1.5]');\n width: 100%;\n\n &:hover {\n border-color: var(--color-ice-500);\n }\n\n &:focus,\n &:active {\n border-color: var(--color-blue-500);\n }\n\n &.stash-textarea--error {\n border-color: var(--color-red-500);\n color: var(--color-red-500);\n }\n\n &::placeholder {\n color: var(--color-ice-500);\n opacity: 1;\n }\n\n &[disabled],\n &[readonly] {\n background-color: var(--color-ice-100);\n border-color: var(--color-ice-500);\n color: var(--color-ice-500);\n pointer-events: none;\n }\n\n &[disabled]:active,\n &[readonly]:active,\n &[disabled]:focus,\n &[readonly]:focus {\n box-shadow: none;\n }\n\n &[disabled]::placeholder,\n &[readonly]::placeholder {\n text-transform: none;\n color: var(--color-ice-500);\n }\n }\n</style>\n"],"names":["id","uniqueId","attrs","useAttrs","slots","useSlots","classes","useCssModule","props","__props","emits","__emit","textareaRef","ref","observer","inputAttrs","computed","allAttrs","watch","v","setupResizeObserver","_a","onInput","event","entry","target","parent","findParentScrollable","scrollPosition","offsetDiff","top","height","getOffsetClipRect","viewportHeight","parentTop","parentHeight","offsetTop","el","overflowY","width","left","findPos","offsetLeft","offsetParent","onMounted","nextTick","onBeforeUnmount"],"mappings":"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"}
1
+ {"version":3,"file":"Textarea.js","sources":["../src/components/Textarea/Textarea.vue"],"sourcesContent":["<script lang=\"ts\" setup>\n import uniqueId from 'lodash-es/uniqueId';\n import { computed, nextTick, onBeforeUnmount, onMounted, ref, useAttrs, useCssModule, useSlots, watch } from 'vue';\n\n import Field from '../Field/Field.vue';\n\n export interface TextareaResizeOptions {\n /**\n * It will automatically scroll the page down when it reaches the bottom of the viewport/element\n */\n forceBrowserScroll: boolean;\n }\n\n export interface TextAreaProps {\n /**\n * Label text for the textarea element.\n */\n label?: string;\n\n /**\n * Value for the textarea element.\n */\n modelValue?: string;\n\n /**\n * Deprecated. Use :model-value or v-model instead of :value.\n * @deprecated Use :model-value or v-model instead of :value.\n */\n value?: string | number | null;\n\n /**\n * Error text for the textarea element.\n */\n errorText?: string;\n\n /**\n * Hint text for the textarea element.\n */\n hintText?: string;\n\n /**\n * Render \"(optional)\" to the right of the label text\n */\n showOptionalInLabel?: boolean;\n\n /**\n * Allow textarea to be resizable vertically.\n * Alternatively if you want to disable automatic scroll when resizing, you can set `{ forceBrowserScroll: false }`\n */\n resize?: boolean | TextareaResizeOptions;\n\n /**\n * Placeholder text for the textarea element.\n * **Note:** placeholders should be used to display examples; they should not be used as labels because they are not accessible as labels. If a real label cannot be used, use the `aria-label` attribute.\n */\n placeholder?: string;\n\n /**\n * Indicates whether the textarea is disabled.\n */\n disabled?: boolean;\n }\n\n defineOptions({\n name: 'll-textarea',\n });\n\n /**\n * Unique ID for the textarea, required for accessibility purposes\n */\n const id = uniqueId('textarea-');\n\n const attrs = useAttrs();\n const slots = useSlots();\n const classes = useCssModule();\n\n const props = withDefaults(defineProps<TextAreaProps>(), {\n label: ' ',\n modelValue: '',\n value: null,\n errorText: '',\n hintText: '',\n showOptionalInLabel: false,\n resize: false,\n placeholder: undefined,\n disabled: false,\n });\n\n const emits = defineEmits<{\n /**\n * Emitted when the model value changes.\n */\n (e: 'update:model-value', value: string): void;\n }>();\n\n const textareaRef = ref<HTMLTextAreaElement>();\n const observer = ref<ResizeObserver>();\n\n const inputAttrs = computed(() => {\n const allAttrs = { ...attrs };\n\n delete allAttrs['data-test'];\n delete allAttrs.class;\n\n return allAttrs;\n });\n\n watch(\n () => props.resize,\n (v) => {\n v ? setupResizeObserver() : observer.value?.disconnect();\n },\n );\n\n const onInput = (event: Event) => {\n emits('update:model-value', (event.target as HTMLTextAreaElement).value);\n };\n\n const setupResizeObserver = () => {\n if (observer.value || !textareaRef.value) {\n return;\n }\n\n // the ResizeObserver will be in charge to detect if page needs to scroll when resizing the component\n observer.value = new ResizeObserver(([entry]) => {\n const { target } = entry;\n const parent = findParentScrollable(textareaRef.value as HTMLTextAreaElement) || document.documentElement;\n\n const { scrollTop: scrollPosition } = parent;\n let offsetDiff = 0;\n\n // checks if the closest parent element scrollable is the document page\n if (parent === document.documentElement) {\n const { top, height } = getOffsetClipRect(target as HTMLElement);\n const { innerHeight: viewportHeight } = window;\n\n offsetDiff = Math.max(top + height - (viewportHeight + scrollPosition), 0);\n } else {\n const { top, height } = (target as HTMLElement).getBoundingClientRect();\n const { top: parentTop } = parent.getBoundingClientRect();\n const { offsetHeight: parentHeight } = parent;\n const offsetTop = top - parentTop;\n\n offsetDiff = Math.max(offsetTop + height - parentHeight, 0);\n }\n\n if (offsetDiff) {\n requestAnimationFrame(() => {\n parent.scrollTop = scrollPosition + offsetDiff;\n });\n }\n });\n\n observer.value.observe(textareaRef.value);\n };\n\n /**\n * Retrieve the closest parent that has a scroll. Defaults to the document page.\n */\n const findParentScrollable = (el: HTMLElement): HTMLElement | null => {\n const parent = el.parentElement as HTMLElement;\n if (!parent) {\n return null;\n }\n\n const { overflowY } = getComputedStyle(parent);\n if (overflowY !== 'visible') {\n return parent;\n }\n\n if (parent === document.body) {\n return document.documentElement;\n }\n\n return findParentScrollable(parent);\n };\n\n /**\n * Retrieve element absolute positioning relative to the page.\n */\n const getOffsetClipRect = (el: HTMLElement) => {\n const { offsetWidth: width, offsetHeight: height } = el;\n\n let left = 0;\n let top = 0;\n\n const findPos = function ({ offsetLeft, offsetTop, offsetParent }: HTMLElement) {\n left += offsetLeft;\n top += offsetTop;\n\n if (offsetParent) {\n findPos(offsetParent as HTMLElement);\n }\n };\n\n findPos(el);\n\n return {\n top,\n left,\n width,\n height,\n };\n };\n\n onMounted(async () => {\n if (props.value !== null) {\n throw new Error('ll-input: use :model-value or v-model instead of :value.');\n }\n\n if (attrs.onInput) {\n throw new Error('ll-input: use the @update:model-value event instead of @input');\n }\n\n if (\n (typeof props.resize === 'boolean' && props.resize) ||\n (props.resize as TextareaResizeOptions)?.forceBrowserScroll\n ) {\n await nextTick();\n setupResizeObserver();\n }\n });\n\n onBeforeUnmount(() => {\n observer.value?.disconnect();\n });\n</script>\n\n<template>\n <Field v-bind=\"props\" :id=\"id\" class=\"stash-textarea\" :class=\"[classes.root, attrs.class]\" data-test=\"stash-textarea\">\n <template #default=\"{ fieldId, hasError }\">\n <textarea\n :id=\"fieldId\"\n ref=\"textareaRef\"\n :class=\"[\n classes.textarea,\n { 'stash-textarea--error': hasError, 'tw-resize-y': props.resize, 'tw-resize-none': !props.resize },\n ]\"\n :value=\"props.modelValue\"\n data-test=\"stash-textarea|textarea\"\n :placeholder=\"props.placeholder\"\n v-bind=\"inputAttrs\"\n :disabled=\"props.disabled\"\n @input=\"onInput\"\n ></textarea>\n </template>\n <template v-if=\"slots.hint\" #hint>\n <!-- @slot Hint content -->\n <slot name=\"hint\"></slot>\n </template>\n </Field>\n</template>\n\n<style module>\n .root {\n position: relative;\n width: 100%;\n }\n\n .textarea {\n background: var(--color-white);\n border: 1px solid;\n border-color: var(--color-ice-500);\n border-radius: theme('borderRadius.DEFAULT');\n color: var(--color-ice-700);\n display: block;\n min-height: 100px;\n outline: none;\n padding: theme('spacing[1.5]');\n width: 100%;\n\n &:hover {\n border-color: var(--color-ice-500);\n }\n\n &:focus,\n &:active {\n border-color: var(--color-blue-500);\n }\n\n &.stash-textarea--error {\n border-color: var(--color-red-500);\n color: var(--color-red-500);\n }\n\n &::placeholder {\n color: var(--color-ice-500);\n opacity: 1;\n }\n\n &[disabled],\n &[readonly] {\n background-color: var(--color-ice-100);\n border-color: var(--color-ice-500);\n color: var(--color-ice-500);\n pointer-events: none;\n }\n\n &[disabled]:active,\n &[readonly]:active,\n &[disabled]:focus,\n &[readonly]:focus {\n box-shadow: none;\n }\n\n &[disabled]::placeholder,\n &[readonly]::placeholder {\n text-transform: none;\n color: var(--color-ice-500);\n }\n }\n</style>\n"],"names":["id","uniqueId","attrs","useAttrs","slots","useSlots","classes","useCssModule","props","__props","emits","__emit","textareaRef","ref","observer","inputAttrs","computed","allAttrs","watch","v","setupResizeObserver","_a","onInput","event","entry","target","parent","findParentScrollable","scrollPosition","offsetDiff","top","height","getOffsetClipRect","viewportHeight","parentTop","parentHeight","offsetTop","el","overflowY","width","left","findPos","offsetLeft","offsetParent","onMounted","nextTick","onBeforeUnmount"],"mappings":"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"}
@@ -33,36 +33,39 @@ declare type __VLS_WithTemplateSlots<T, S> = T & {
33
33
  };
34
34
 
35
35
  declare const _default: __VLS_WithTemplateSlots<DefineComponent<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TextAreaProps>, {
36
- label: string;
37
- modelValue: string;
38
- value: null;
39
- errorText: string;
40
- hintText: string;
41
- showOptionalInLabel: boolean;
42
- resize: boolean;
43
- disabled: boolean;
36
+ label: string;
37
+ modelValue: string;
38
+ value: null;
39
+ errorText: string;
40
+ hintText: string;
41
+ showOptionalInLabel: boolean;
42
+ resize: boolean;
43
+ placeholder: undefined;
44
+ disabled: boolean;
44
45
  }>>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
45
- "update:model-value": (value: string) => void;
46
+ "update:model-value": (value: string) => void;
46
47
  }, string, PublicProps, Readonly<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TextAreaProps>, {
47
- label: string;
48
- modelValue: string;
49
- value: null;
50
- errorText: string;
51
- hintText: string;
52
- showOptionalInLabel: boolean;
53
- resize: boolean;
54
- disabled: boolean;
48
+ label: string;
49
+ modelValue: string;
50
+ value: null;
51
+ errorText: string;
52
+ hintText: string;
53
+ showOptionalInLabel: boolean;
54
+ resize: boolean;
55
+ placeholder: undefined;
56
+ disabled: boolean;
55
57
  }>>> & Readonly<{
56
- "onUpdate:model-value"?: ((value: string) => any) | undefined;
58
+ "onUpdate:model-value"?: ((value: string) => any) | undefined;
57
59
  }>, {
58
- resize: boolean | TextareaResizeOptions;
59
- disabled: boolean;
60
- label: string;
61
- errorText: string;
62
- hintText: string;
63
- showOptionalInLabel: boolean;
64
- modelValue: string;
65
- value: string | number | null;
60
+ resize: boolean | TextareaResizeOptions;
61
+ disabled: boolean;
62
+ label: string;
63
+ errorText: string;
64
+ hintText: string;
65
+ showOptionalInLabel: boolean;
66
+ placeholder: string;
67
+ modelValue: string;
68
+ value: string | number | null;
66
69
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>, {
67
70
  hint?(_: {}): any;
68
71
  }>;
@@ -99,6 +102,11 @@ export declare interface TextAreaProps {
99
102
  * Alternatively if you want to disable automatic scroll when resizing, you can set `{ forceBrowserScroll: false }`
100
103
  */
101
104
  resize?: boolean | TextareaResizeOptions;
105
+ /**
106
+ * Placeholder text for the textarea element.
107
+ * **Note:** placeholders should be used to display examples; they should not be used as labels because they are not accessible as labels. If a real label cannot be used, use the `aria-label` attribute.
108
+ */
109
+ placeholder?: string;
102
110
  /**
103
111
  * Indicates whether the textarea is disabled.
104
112
  */
package/dist/Timeline.js CHANGED
@@ -1,7 +1,7 @@
1
- import { defineComponent as n, provide as o, computed as t, openBlock as a, createElementBlock as d, normalizeClass as r, renderSlot as l } from "vue";
2
- import { T as m } from "./keys-241d03b7.js";
3
- import { _ } from "./_plugin-vue_export-helper-dad06003.js";
4
- const c = /* @__PURE__ */ n({
1
+ import { defineComponent as o, provide as n, computed as t, openBlock as a, createElementBlock as r, normalizeClass as d, renderSlot as l } from "vue";
2
+ import { T as m } from "./keys-BEdEsanp.js";
3
+ import { _ as p } from "./_plugin-vue_export-helper-CHgC5LLL.js";
4
+ const c = /* @__PURE__ */ o({
5
5
  __name: "Timeline",
6
6
  props: {
7
7
  side: { default: "end" },
@@ -9,19 +9,18 @@ const c = /* @__PURE__ */ n({
9
9
  },
10
10
  setup(s) {
11
11
  const e = s;
12
- return o(m.key, {
12
+ return n(m.key, {
13
13
  side: t(() => e.side),
14
14
  density: t(() => e.density)
15
- }), (i, p) => (a(), d("ol", {
16
- class: r(["stash-timeline tw-grid tw-grid-flow-dense tw-items-start tw-justify-center tw-gap-x-3 tw-gap-y-1.5", [`stash-timeline--${e.side}`, `stash-timeline--${e.density}`]]),
15
+ }), (i, f) => (a(), r("ol", {
16
+ class: d(["stash-timeline tw-grid tw-grid-flow-dense tw-items-start tw-justify-center tw-gap-x-3 tw-gap-y-1.5", [`stash-timeline--${e.side}`, `stash-timeline--${e.density}`]]),
17
17
  "data-test": "stash-timeline"
18
18
  }, [
19
19
  l(i.$slots, "default", {}, void 0, !0)
20
20
  ], 2));
21
21
  }
22
- });
23
- const w = /* @__PURE__ */ _(c, [["__scopeId", "data-v-0bc8e788"]]);
22
+ }), y = /* @__PURE__ */ p(c, [["__scopeId", "data-v-0bc8e788"]]);
24
23
  export {
25
- w as default
24
+ y as default
26
25
  };
27
26
  //# sourceMappingURL=Timeline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Timeline.js","sources":["../src/components/Timeline/Timeline.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { SpacingDensities } from 'types';\n import { computed, provide } from 'vue';\n\n import { TIMELINE_INJECTION } from './keys';\n\n export interface TimelineProps {\n /**\n * Sets which side of the timeline the main and opposed content is going to be displayed.\n */\n side?: 'start' | 'end';\n\n /**\n * Sets the size of each timeline item.\n */\n density?: SpacingDensities;\n }\n\n const props = withDefaults(defineProps<TimelineProps>(), {\n side: 'end',\n density: 'comfortable',\n });\n\n provide(TIMELINE_INJECTION.key, {\n side: computed(() => props.side),\n density: computed(() => props.density),\n });\n</script>\n\n<template>\n <ol\n class=\"stash-timeline tw-grid tw-grid-flow-dense tw-items-start tw-justify-center tw-gap-x-3 tw-gap-y-1.5\"\n :class=\"[`stash-timeline--${props.side}`, `stash-timeline--${props.density}`]\"\n data-test=\"stash-timeline\"\n >\n <slot></slot>\n </ol>\n</template>\n\n<style scoped>\n .stash-timeline {\n grid-template-columns: auto min-content auto;\n }\n</style>\n"],"names":["props","__props","provide","TIMELINE_INJECTION","computed"],"mappings":";;;;;;;;;;AAkBE,UAAMA,IAAQC;AAKd,WAAAC,EAAQC,EAAmB,KAAK;AAAA,MAC9B,MAAMC,EAAS,MAAMJ,EAAM,IAAI;AAAA,MAC/B,SAASI,EAAS,MAAMJ,EAAM,OAAO;AAAA,IAAA,CACtC;;;;;;;;;"}
1
+ {"version":3,"file":"Timeline.js","sources":["../src/components/Timeline/Timeline.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { SpacingDensities } from 'types';\n import { computed, provide } from 'vue';\n\n import { TIMELINE_INJECTION } from './keys';\n\n export interface TimelineProps {\n /**\n * Sets which side of the timeline the main and opposed content is going to be displayed.\n */\n side?: 'start' | 'end';\n\n /**\n * Sets the size of each timeline item.\n */\n density?: SpacingDensities;\n }\n\n const props = withDefaults(defineProps<TimelineProps>(), {\n side: 'end',\n density: 'comfortable',\n });\n\n provide(TIMELINE_INJECTION.key, {\n side: computed(() => props.side),\n density: computed(() => props.density),\n });\n</script>\n\n<template>\n <ol\n class=\"stash-timeline tw-grid tw-grid-flow-dense tw-items-start tw-justify-center tw-gap-x-3 tw-gap-y-1.5\"\n :class=\"[`stash-timeline--${props.side}`, `stash-timeline--${props.density}`]\"\n data-test=\"stash-timeline\"\n >\n <slot></slot>\n </ol>\n</template>\n\n<style scoped>\n .stash-timeline {\n grid-template-columns: auto min-content auto;\n }\n</style>\n"],"names":["props","__props","provide","TIMELINE_INJECTION","computed"],"mappings":";;;;;;;;;;AAkBE,UAAMA,IAAQC;AAKd,WAAAC,EAAQC,EAAmB,KAAK;AAAA,MAC9B,MAAMC,EAAS,MAAMJ,EAAM,IAAI;AAAA,MAC/B,SAASI,EAAS,MAAMJ,EAAM,OAAO;AAAA,IAAA,CACtC;;;;;;;;"}
@@ -33,14 +33,14 @@ declare type __VLS_WithTemplateSlots<T, S> = T & {
33
33
  };
34
34
 
35
35
  declare const _default: __VLS_WithTemplateSlots<DefineComponent<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TimelineProps>, {
36
- side: string;
37
- density: string;
36
+ side: string;
37
+ density: string;
38
38
  }>>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TimelineProps>, {
39
- side: string;
40
- density: string;
39
+ side: string;
40
+ density: string;
41
41
  }>>> & Readonly<{}>, {
42
- side: "start" | "end";
43
- density: "compact" | "comfortable";
42
+ side: "start" | "end";
43
+ density: "compact" | "comfortable";
44
44
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>, {
45
45
  default?(_: {}): any;
46
46
  }>;
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as w, useSlots as v, inject as f, computed as m, openBlock as c, createElementBlock as r, createElementVNode as e, normalizeClass as p, renderSlot as d, createCommentVNode as h } from "vue";
2
- import { T as _ } from "./keys-241d03b7.js";
2
+ import { T as _ } from "./keys-BEdEsanp.js";
3
3
  const I = {
4
4
  class: "stash-timeline-item group tw-contents tw-list-none",
5
5
  "data-test": "stash-timeline-item"
@@ -9,7 +9,7 @@ declare type __VLS_WithTemplateSlots<T, S> = T & {
9
9
  };
10
10
  };
11
11
 
12
- declare const _default: __VLS_WithTemplateSlots<DefineComponent<{}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>, Readonly<{
12
+ declare const _default: __VLS_WithTemplateSlots<DefineComponent< {}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>, Readonly<{
13
13
  /**
14
14
  * The opposite content of the timeline item.
15
15
  */
package/dist/Toast.js CHANGED
@@ -1,13 +1,10 @@
1
1
  import { defineComponent as $t, useCssModule as qt, computed as lt, openBlock as ye, createElementBlock as Le, normalizeClass as Kt, unref as Oe, createVNode as ct, isVNode as Zt } from "vue";
2
2
  import ut from "@leaflink/snitch";
3
3
  import Jt from "lodash-es/capitalize";
4
- import { S as ft, b as Qt } from "./statusLevels-a8b041f4.js";
4
+ import { S as ft, b as Qt } from "./statusLevels-D8EgtE_L.js";
5
5
  import en from "./CustomRender.js";
6
6
  import tn from "./Icon.js";
7
- import { _ as nn } from "./_plugin-vue_export-helper-dad06003.js";
8
- import "lodash-es/uniqueId";
9
- import "./index-9e1095ef.js";
10
- import "./Icon.vue_used_vue_type_style_index_0_lang.module-eb359559.js";
7
+ import { _ as nn } from "./_plugin-vue_export-helper-CHgC5LLL.js";
11
8
  /*! @license DOMPurify 3.1.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.1.6/LICENSE */
12
9
  const {
13
10
  entries: At,
@@ -385,8 +382,7 @@ function Lt() {
385
382
  !(it(e) && (u.tagNameCheck instanceof RegExp && h(u.tagNameCheck, e) || u.tagNameCheck instanceof Function && u.tagNameCheck(e)) && (u.attributeNameCheck instanceof RegExp && h(u.attributeNameCheck, t) || u.attributeNameCheck instanceof Function && u.attributeNameCheck(t)) || // Alternative, second condition checks if it's an `is`-attribute, AND
386
383
  // the value passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck
387
384
  t === "is" && u.allowCustomizedBuiltInElements && (u.tagNameCheck instanceof RegExp && h(u.tagNameCheck, n) || u.tagNameCheck instanceof Function && u.tagNameCheck(n)))
388
- )
389
- return !1;
385
+ ) return !1;
390
386
  } else if (!he[t]) {
391
387
  if (!h(ve, $(n, Pe, ""))) {
392
388
  if (!((t === "src" || t === "xlink:href" || t === "href") && e !== "script" && sn(n, "data:") === 0 && Ye[e])) {
@@ -567,8 +563,8 @@ const Ln = ["role"], On = ["innerHTML"], Nn = { key: 1 }, Dn = /* @__PURE__ */ $
567
563
  "status--warning": "_status--warning_p3yhd_49"
568
564
  }, In = {
569
565
  $style: Cn
570
- }, Wn = /* @__PURE__ */ nn(Dn, [["__cssModules", In]]);
566
+ }, Fn = /* @__PURE__ */ nn(Dn, [["__cssModules", In]]);
571
567
  export {
572
- Wn as default
568
+ Fn as default
573
569
  };
574
570
  //# sourceMappingURL=Toast.js.map