@leaflink/stash 51.9.2 → 51.10.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 (369) hide show
  1. package/assets/icons/cloud-share.svg +1 -0
  2. package/assets/spritesheet.svg +1 -1
  3. package/dist/Accordion.js.map +1 -1
  4. package/dist/Accordion.vue.d.ts +7 -38
  5. package/dist/ActionsDropdown.js +2 -2
  6. package/dist/ActionsDropdown.js.map +1 -1
  7. package/dist/ActionsDropdown.vue.d.ts +0 -74
  8. package/dist/AddressSelect.js +56 -60
  9. package/dist/AddressSelect.js.map +1 -1
  10. package/dist/AddressSelect.vue.d.ts +8 -65
  11. package/dist/Alert.js.map +1 -1
  12. package/dist/Alert.vue.d.ts +4 -41
  13. package/dist/AppNavigationItem.js.map +1 -1
  14. package/dist/AppNavigationItem.vue.d.ts +5 -32
  15. package/dist/AppSidebar.js.map +1 -1
  16. package/dist/AppSidebar.vue.d.ts +8 -35
  17. package/dist/AppTopbar.js +1 -1
  18. package/dist/AppTopbar.js.map +1 -1
  19. package/dist/AppTopbar.vue.d.ts +4 -33
  20. package/dist/Avatar.js.map +1 -1
  21. package/dist/Avatar.vue.d.ts +5 -44
  22. package/dist/Backdrop.js.map +1 -1
  23. package/dist/Backdrop.vue.d.ts +1 -1
  24. package/dist/Badge.js.map +1 -1
  25. package/dist/Badge.vue.d.ts +6 -55
  26. package/dist/Box.vue.d.ts +3 -36
  27. package/dist/Box.vue_vue_type_script_setup_true_lang-rFnvwLVY.js.map +1 -1
  28. package/dist/Button.js.map +1 -1
  29. package/dist/Button.vue.d.ts +5 -50
  30. package/dist/ButtonGroup.js +33 -37
  31. package/dist/ButtonGroup.js.map +1 -1
  32. package/dist/ButtonGroup.vue.d.ts +6 -39
  33. package/dist/Card.js.map +1 -1
  34. package/dist/Card.vue.d.ts +5 -32
  35. package/dist/CardContent.js.map +1 -1
  36. package/dist/CardContent.vue.d.ts +1 -1
  37. package/dist/CardFooter.js.map +1 -1
  38. package/dist/CardFooter.vue.d.ts +1 -1
  39. package/dist/CardHeader.js.map +1 -1
  40. package/dist/CardHeader.vue.d.ts +2 -15
  41. package/dist/CardMedia.js.map +1 -1
  42. package/dist/CardMedia.vue.d.ts +2 -15
  43. package/dist/Carousel.js +66 -72
  44. package/dist/Carousel.js.map +1 -1
  45. package/dist/Carousel.vue.d.ts +10 -10
  46. package/dist/Checkbox.js.map +1 -1
  47. package/dist/Checkbox.vue.d.ts +8 -53
  48. package/dist/ChevronToggle.vue.d.ts +7 -34
  49. package/dist/ChevronToggle.vue_vue_type_script_setup_true_lang-Ce_qOXfR.js.map +1 -1
  50. package/dist/Chip.js.map +1 -1
  51. package/dist/Chip.vue.d.ts +10 -52
  52. package/dist/ConfirmationCodeInput.js +40 -44
  53. package/dist/ConfirmationCodeInput.js.map +1 -1
  54. package/dist/ConfirmationCodeInput.vue.d.ts +8 -43
  55. package/dist/ContextSwitcher.js.map +1 -1
  56. package/dist/ContextSwitcher.vue.d.ts +6 -41
  57. package/dist/Copy.js.map +1 -1
  58. package/dist/Copy.vue.d.ts +3 -34
  59. package/dist/CurrencyInput.js +20 -21
  60. package/dist/CurrencyInput.js.map +1 -1
  61. package/dist/CurrencyInput.vue.d.ts +125 -46
  62. package/dist/CustomRender.js.map +1 -1
  63. package/dist/DataView.js +94 -96
  64. package/dist/DataView.js.map +1 -1
  65. package/dist/DataView.keys-aSOnA4AD.js.map +1 -1
  66. package/dist/DataView.vue.d.ts +15 -57
  67. package/dist/DataViewFilters.js +127 -139
  68. package/dist/DataViewFilters.js.map +1 -1
  69. package/dist/DataViewFilters.keys-BLu07FiP.js.map +1 -1
  70. package/dist/DataViewFilters.vue.d.ts +9 -54
  71. package/dist/DataViewSortButton.js +2 -2
  72. package/dist/DataViewSortButton.js.map +1 -1
  73. package/dist/DataViewSortButton.vue.d.ts +3 -30
  74. package/dist/DataViewToolbar.js +70 -62
  75. package/dist/DataViewToolbar.js.map +1 -1
  76. package/dist/DataViewToolbar.vue.d.ts +5 -40
  77. package/dist/DatePicker.js +4524 -4636
  78. package/dist/DatePicker.js.map +1 -1
  79. package/dist/DatePicker.vue.d.ts +32 -81
  80. package/dist/DescriptionList.js.map +1 -1
  81. package/dist/DescriptionList.vue.d.ts +3 -32
  82. package/dist/DescriptionListDetail.js.map +1 -1
  83. package/dist/DescriptionListDetail.vue.d.ts +1 -1
  84. package/dist/DescriptionListGroup.js.map +1 -1
  85. package/dist/DescriptionListGroup.vue.d.ts +1 -1
  86. package/dist/DescriptionListTerm.js.map +1 -1
  87. package/dist/DescriptionListTerm.vue.d.ts +1 -1
  88. package/dist/Dialog.js.map +1 -1
  89. package/dist/Dialog.vue.d.ts +10 -53
  90. package/dist/Divider.js.map +1 -1
  91. package/dist/Dropdown.js +89 -95
  92. package/dist/Dropdown.js.map +1 -1
  93. package/dist/Dropdown.vue.d.ts +12 -48
  94. package/dist/EmptyState.js +1 -1
  95. package/dist/EmptyState.js.map +1 -1
  96. package/dist/EmptyState.vue.d.ts +5 -62
  97. package/dist/Expand.vue.d.ts +10 -40
  98. package/dist/Expand.vue_vue_type_script_setup_true_lang-CiONJfAp.js.map +1 -1
  99. package/dist/Field.vue.d.ts +4 -53
  100. package/dist/Field.vue_vue_type_script_setup_true_lang-DI6z3AE9.js.map +1 -1
  101. package/dist/FileUpload.js +72 -74
  102. package/dist/FileUpload.js.map +1 -1
  103. package/dist/FileUpload.vue.d.ts +10 -44
  104. package/dist/FilterChip.js.map +1 -1
  105. package/dist/FilterChip.vue.d.ts +6 -41
  106. package/dist/FilterDrawerItem.js +21 -21
  107. package/dist/FilterDrawerItem.js.map +1 -1
  108. package/dist/FilterDrawerItem.vue.d.ts +6 -23
  109. package/dist/FilterDropdown.js +63 -69
  110. package/dist/FilterDropdown.js.map +1 -1
  111. package/dist/FilterDropdown.vue.d.ts +122 -35
  112. package/dist/FilterSelect.js.map +1 -1
  113. package/dist/FilterSelect.vue.d.ts +4 -31
  114. package/dist/Filters.js +157 -164
  115. package/dist/Filters.js.map +1 -1
  116. package/dist/Filters.vue.d.ts +0 -2190
  117. package/dist/HttpError.js +7 -7
  118. package/dist/HttpError.js.map +1 -1
  119. package/dist/HttpError.vue.d.ts +4 -41
  120. package/dist/Icon.js +16 -15
  121. package/dist/Icon.js.map +1 -1
  122. package/dist/Icon.vue.d.ts +4 -37
  123. package/dist/IconLabel.js.map +1 -1
  124. package/dist/IconLabel.vue.d.ts +6 -41
  125. package/dist/Illustration.js +2 -2
  126. package/dist/Illustration.vue.d.ts +3 -42
  127. package/dist/{Illustration.vue_vue_type_script_setup_true_lang-BrqEF8xe.js → Illustration.vue_vue_type_script_setup_true_lang-BVzzNsRt.js} +11 -11
  128. package/dist/{Illustration.vue_vue_type_script_setup_true_lang-BrqEF8xe.js.map → Illustration.vue_vue_type_script_setup_true_lang-BVzzNsRt.js.map} +1 -1
  129. package/dist/Image.js +2 -2
  130. package/dist/Image.vue.d.ts +5 -40
  131. package/dist/{Image.vue_vue_type_script_setup_true_lang-D5u4av0_.js → Image.vue_vue_type_script_setup_true_lang-Dg2Zk2r2.js} +37 -41
  132. package/dist/{Image.vue_vue_type_script_setup_true_lang-D5u4av0_.js.map → Image.vue_vue_type_script_setup_true_lang-Dg2Zk2r2.js.map} +1 -1
  133. package/dist/InlineEdit.js.map +1 -1
  134. package/dist/InlineEdit.vue.d.ts +126 -47
  135. package/dist/Input.js.map +1 -1
  136. package/dist/Input.vue.d.ts +12 -45
  137. package/dist/InputOptions.js +66 -69
  138. package/dist/InputOptions.js.map +1 -1
  139. package/dist/InputOptions.vue.d.ts +10 -55
  140. package/dist/IntegrationIcon.js +7 -7
  141. package/dist/IntegrationIcon.js.map +1 -1
  142. package/dist/IntegrationIcon.vue.d.ts +3 -36
  143. package/dist/Label.vue.d.ts +3 -42
  144. package/dist/Label.vue_vue_type_script_setup_true_lang-CNquF3AP.js.map +1 -1
  145. package/dist/LicenseChip.js.map +1 -1
  146. package/dist/LicenseChip.vue.d.ts +3 -30
  147. package/dist/ListItem.js.map +1 -1
  148. package/dist/ListItem.vue.d.ts +0 -294
  149. package/dist/ListItemCell.js.map +1 -1
  150. package/dist/ListItemCell.vue.d.ts +0 -21
  151. package/dist/ListView.js +122 -132
  152. package/dist/ListView.js.map +1 -1
  153. package/dist/ListView.types.d.ts +0 -29
  154. package/dist/ListView.vue.d.ts +0 -5496
  155. package/dist/Loading.js +2 -2
  156. package/dist/Loading.js.map +1 -1
  157. package/dist/Loading.vue.d.ts +1 -1
  158. package/dist/Logo.js +1 -1
  159. package/dist/Logo.vue.d.ts +6 -41
  160. package/dist/{Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.js → Logo.vue_vue_type_script_setup_true_lang-Y3iE9utm.js} +17 -17
  161. package/dist/Logo.vue_vue_type_script_setup_true_lang-Y3iE9utm.js.map +1 -0
  162. package/dist/Menu.js.map +1 -1
  163. package/dist/Menu.vue.d.ts +1 -1
  164. package/dist/MenuItem.js.map +1 -1
  165. package/dist/MenuItem.vue.d.ts +1 -1
  166. package/dist/MenusPlugin-B4jpNe7x.js +12 -0
  167. package/dist/{MenusPlugin-Bk6UW6o9.js.map → MenusPlugin-B4jpNe7x.js.map} +1 -1
  168. package/dist/Metric.js.map +1 -1
  169. package/dist/Metric.vue.d.ts +3 -34
  170. package/dist/Modal.js +62 -64
  171. package/dist/Modal.js.map +1 -1
  172. package/dist/Modal.vue.d.ts +13 -60
  173. package/dist/Modals.js +17 -18
  174. package/dist/Modals.js.map +1 -1
  175. package/dist/ModalsPlugin.js +11 -11
  176. package/dist/ModalsPlugin.js.map +1 -1
  177. package/dist/Module.js.map +1 -1
  178. package/dist/Module.keys-CEsrW2f0.js.map +1 -1
  179. package/dist/Module.types-B1FfGGac.js.map +1 -1
  180. package/dist/Module.vue.d.ts +2 -29
  181. package/dist/ModuleContent.js.map +1 -1
  182. package/dist/ModuleContent.vue.d.ts +3 -3
  183. package/dist/ModuleFooter.js.map +1 -1
  184. package/dist/ModuleFooter.vue.d.ts +1 -1
  185. package/dist/ModuleHeader.js.map +1 -1
  186. package/dist/ModuleHeader.vue.d.ts +5 -39
  187. package/dist/ObfuscateText.js.map +1 -1
  188. package/dist/ObfuscateText.vue.d.ts +3 -40
  189. package/dist/PageContent.js.map +1 -1
  190. package/dist/PageContent.vue.d.ts +3 -30
  191. package/dist/PageHeader.js.map +1 -1
  192. package/dist/PageHeader.vue.d.ts +6 -35
  193. package/dist/PageNavigation.js +50 -50
  194. package/dist/PageNavigation.js.map +1 -1
  195. package/dist/PageNavigation.vue.d.ts +7 -36
  196. package/dist/Paginate.js.map +1 -1
  197. package/dist/Paginate.vue.d.ts +5 -40
  198. package/dist/PlaidLink.js.map +1 -1
  199. package/dist/PlaidLink.vue.d.ts +12 -49
  200. package/dist/QuickAction.js.map +1 -1
  201. package/dist/QuickAction.vue.d.ts +3 -16
  202. package/dist/Radio.js.map +1 -1
  203. package/dist/Radio.vue.d.ts +0 -93
  204. package/dist/RadioGroup.js +94 -101
  205. package/dist/RadioGroup.js.map +1 -1
  206. package/dist/RadioGroup.vue.d.ts +116 -42
  207. package/dist/RadioNew.js +96 -99
  208. package/dist/RadioNew.js.map +1 -1
  209. package/dist/RadioNew.vue.d.ts +7 -48
  210. package/dist/RangeInput.js.map +1 -1
  211. package/dist/RangeInput.vue.d.ts +1 -1
  212. package/dist/SearchBar.js +38 -39
  213. package/dist/SearchBar.js.map +1 -1
  214. package/dist/SearchBar.vue.d.ts +127 -44
  215. package/dist/SectionHeader.js.map +1 -1
  216. package/dist/SectionHeader.vue.d.ts +6 -37
  217. package/dist/Select.js +171 -183
  218. package/dist/Select.js.map +1 -1
  219. package/dist/Select.vue.d.ts +23 -102
  220. package/dist/SelectStatus.js +38 -38
  221. package/dist/SelectStatus.js.map +1 -1
  222. package/dist/SelectStatus.vue.d.ts +227 -47
  223. package/dist/Skeleton.js.map +1 -1
  224. package/dist/Skeleton.vue.d.ts +3 -34
  225. package/dist/Step.js +44 -44
  226. package/dist/Step.js.map +1 -1
  227. package/dist/Step.vue.d.ts +4 -43
  228. package/dist/Stepper.js.map +1 -1
  229. package/dist/Stepper.vue.d.ts +9 -44
  230. package/dist/Switch.js.map +1 -1
  231. package/dist/Switch.vue.d.ts +8 -47
  232. package/dist/Tab.js +1 -1
  233. package/dist/Tab.js.map +1 -1
  234. package/dist/Tab.vue.d.ts +2 -15
  235. package/dist/TabPanel.js.map +1 -1
  236. package/dist/TabPanel.vue.d.ts +3 -30
  237. package/dist/Table.js +53 -59
  238. package/dist/Table.js.map +1 -1
  239. package/dist/Table.keys-LHQf6FEH.js.map +1 -1
  240. package/dist/Table.vue.d.ts +3 -50
  241. package/dist/TableCell.js +1 -1
  242. package/dist/TableCell.js.map +1 -1
  243. package/dist/TableCell.vue.d.ts +3 -32
  244. package/dist/TableHeaderCell.js +1 -1
  245. package/dist/TableHeaderCell.js.map +1 -1
  246. package/dist/TableHeaderCell.vue.d.ts +3 -30
  247. package/dist/TableHeaderRow.js +47 -45
  248. package/dist/TableHeaderRow.js.map +1 -1
  249. package/dist/TableHeaderRow.vue.d.ts +5 -34
  250. package/dist/TableRow.js +60 -61
  251. package/dist/TableRow.js.map +1 -1
  252. package/dist/TableRow.vue.d.ts +7 -48
  253. package/dist/Tabs.js +2 -2
  254. package/dist/Tabs.vue.d.ts +122 -31
  255. package/dist/Tabs.vue_vue_type_script_setup_true_lang-Dprx064Y.js +156 -0
  256. package/dist/{Tabs.vue_vue_type_script_setup_true_lang-CmnBP4i1.js.map → Tabs.vue_vue_type_script_setup_true_lang-Dprx064Y.js.map} +1 -1
  257. package/dist/TextEditor.js +2414 -2420
  258. package/dist/TextEditor.js.map +1 -1
  259. package/dist/TextEditor.vue.d.ts +9 -40
  260. package/dist/Textarea.js +69 -69
  261. package/dist/Textarea.js.map +1 -1
  262. package/dist/Textarea.vue.d.ts +9 -44
  263. package/dist/Thumbnail.js +1 -1
  264. package/dist/Thumbnail.js.map +1 -1
  265. package/dist/Thumbnail.vue.d.ts +4 -4
  266. package/dist/ThumbnailEmpty.js.map +1 -1
  267. package/dist/ThumbnailEmpty.vue.d.ts +1 -1
  268. package/dist/ThumbnailGroup.js.map +1 -1
  269. package/dist/ThumbnailGroup.keys-EJ4qFNhx.js.map +1 -1
  270. package/dist/ThumbnailGroup.vue.d.ts +26 -22
  271. package/dist/Timeline.js.map +1 -1
  272. package/dist/Timeline.vue.d.ts +3 -32
  273. package/dist/TimelineItem.js.map +1 -1
  274. package/dist/TimelineItem.vue.d.ts +1 -1
  275. package/dist/Toast.js.map +1 -1
  276. package/dist/Toast.vue.d.ts +3 -30
  277. package/dist/Toasts.js.map +1 -1
  278. package/dist/ToastsPlugin.js +11 -11
  279. package/dist/ToastsPlugin.js.map +1 -1
  280. package/dist/Tooltip.js +29 -30
  281. package/dist/Tooltip.js.map +1 -1
  282. package/dist/Tooltip.vue.d.ts +11 -43
  283. package/dist/colors-DDDVvqfQ.js.map +1 -1
  284. package/dist/components.css +1 -1
  285. package/dist/constants.js.map +1 -1
  286. package/dist/directives/autofocus.js.map +1 -1
  287. package/dist/directives/clickoutside.js.map +1 -1
  288. package/dist/directives/observe.js.map +1 -1
  289. package/dist/directives/sticky.js.map +1 -1
  290. package/dist/directives/tooltip.js +3 -3
  291. package/dist/directives/tooltip.js.map +1 -1
  292. package/dist/directives/viewable.js +39 -44
  293. package/dist/directives/viewable.js.map +1 -1
  294. package/dist/{floating-ui.vue-pzUuloyX.js → floating-ui.vue-CL01Y9ER.js} +2 -2
  295. package/dist/{floating-ui.vue-pzUuloyX.js.map → floating-ui.vue-CL01Y9ER.js.map} +1 -1
  296. package/dist/formatDateTime-DG7kBc2T.js +1414 -0
  297. package/dist/{formatDateTime-Dz8bXV0R.js.map → formatDateTime-DG7kBc2T.js.map} +1 -1
  298. package/dist/index-D6bxWkZ1.js.map +1 -1
  299. package/dist/{index-ConQ3o31.js → index-GUu9zvbg.js} +3 -3
  300. package/dist/{index-ConQ3o31.js.map → index-GUu9zvbg.js.map} +1 -1
  301. package/dist/index.js +99 -104
  302. package/dist/index.js.map +1 -1
  303. package/dist/isDefined-DzVx0B6k.js.map +1 -1
  304. package/dist/keys-BEdEsanp.js.map +1 -1
  305. package/dist/keys-C8Zfr_By.js.map +1 -1
  306. package/dist/locale.js.map +1 -1
  307. package/dist/misc-CHQs-G03.js.map +1 -1
  308. package/dist/obfuscateText.d.ts +1 -1
  309. package/dist/parseISO-wlfIB_QJ.js.map +1 -1
  310. package/dist/searchFuzzy-DBDE6jkd.js +408 -0
  311. package/dist/{searchFuzzy-DRasJ33G.js.map → searchFuzzy-DBDE6jkd.js.map} +1 -1
  312. package/dist/statusLevels-D8EgtE_L.js.map +1 -1
  313. package/dist/storage.js.map +1 -1
  314. package/dist/tailwind-base.js +4 -4
  315. package/dist/tailwind-base.js.map +1 -1
  316. package/dist/toTimeZone-Coq1oPTt.js.map +1 -1
  317. package/dist/useConfirmBeforeClosing.js.map +1 -1
  318. package/dist/useDialog.d.ts +2 -2
  319. package/dist/useDialog.js +21 -25
  320. package/dist/useDialog.js.map +1 -1
  321. package/dist/useGoogleMaps.js +108 -110
  322. package/dist/useGoogleMaps.js.map +1 -1
  323. package/dist/useMediaQuery.d.ts +0 -6
  324. package/dist/useMediaQuery.js +11 -15
  325. package/dist/useMediaQuery.js.map +1 -1
  326. package/dist/useModals.d.ts +1 -1
  327. package/dist/useModals.js.map +1 -1
  328. package/dist/usePaginationStats-d_q39naC.js.map +1 -1
  329. package/dist/usePlaidLink.js +20 -27
  330. package/dist/usePlaidLink.js.map +1 -1
  331. package/dist/useScriptTag.js.map +1 -1
  332. package/dist/useSearch.js +13 -13
  333. package/dist/useSearch.js.map +1 -1
  334. package/dist/useSelection.js +56 -56
  335. package/dist/useSelection.js.map +1 -1
  336. package/dist/useSortable.js +54 -63
  337. package/dist/useSortable.js.map +1 -1
  338. package/dist/useStepper.d.ts +2 -2
  339. package/dist/useStepper.js +36 -40
  340. package/dist/useStepper.js.map +1 -1
  341. package/dist/useToasts.js +23 -23
  342. package/dist/useToasts.js.map +1 -1
  343. package/dist/useValidation.js +96 -100
  344. package/dist/useValidation.js.map +1 -1
  345. package/dist/utils/calculateElementOverflow.js +4 -4
  346. package/dist/utils/calculateElementOverflow.js.map +1 -1
  347. package/dist/utils/colorScheme.js +2 -2
  348. package/dist/utils/colorScheme.js.map +1 -1
  349. package/dist/utils/createQueryString.js.map +1 -1
  350. package/dist/utils/createValidDate.js.map +1 -1
  351. package/dist/utils/formatDateTime.js +1 -1
  352. package/dist/utils/getContrastingTextColor.js.map +1 -1
  353. package/dist/utils/helpers.js.map +1 -1
  354. package/dist/utils/i18n.js.map +1 -1
  355. package/dist/utils/normalizeDate.js.map +1 -1
  356. package/dist/utils/obfuscateText.js +6 -6
  357. package/dist/utils/obfuscateText.js.map +1 -1
  358. package/dist/utils/searchFuzzy.js +1 -1
  359. package/dist/utils/storage.js +23 -23
  360. package/dist/utils/storage.js.map +1 -1
  361. package/package.json +13 -14
  362. package/tailwind-base.ts +4 -4
  363. package/types/vite.d.ts +7 -0
  364. package/types/vitest.d.ts +7 -0
  365. package/dist/Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.js.map +0 -1
  366. package/dist/MenusPlugin-Bk6UW6o9.js +0 -12
  367. package/dist/Tabs.vue_vue_type_script_setup_true_lang-CmnBP4i1.js +0 -159
  368. package/dist/formatDateTime-Dz8bXV0R.js +0 -1418
  369. package/dist/searchFuzzy-DRasJ33G.js +0 -409
@@ -1 +1 @@
1
- {"version":3,"file":"TableHeaderRow.js","sources":["../src/components/TableHeaderRow/TableHeaderRow.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { inject, ref, watchEffect } from 'vue';\n\n import { t } from '../../locale';\n import Checkbox from '../Checkbox/Checkbox.vue';\n import { DATA_VIEW_INJECTION } from '../DataView/DataView.keys';\n import { TABLE_INJECTION } from '../Table/Table.vue';\n import TableHeaderCell from '../TableHeaderCell/TableHeaderCell.vue';\n\n export interface TableHeaderRowProps {\n allRowsSelected?: boolean;\n someRowsSelected?: boolean;\n }\n\n const props = withDefaults(defineProps<TableHeaderRowProps>(), {\n allRowsSelected: false,\n someRowsSelected: false,\n });\n\n const emit = defineEmits<{\n (e: 'select'): void;\n }>();\n\n const tableInjection = inject(TABLE_INJECTION.key);\n\n if (!tableInjection) {\n throw new Error('TableHeaderRow must be used within a Table component');\n }\n\n const { hasCustomExpandToggle, isExpandable, isSelectable } = tableInjection;\n\n const { hasToolbar } = inject(DATA_VIEW_INJECTION.key, DATA_VIEW_INJECTION.defaults);\n\n const checkboxKey = ref(0);\n const headerRow = ref();\n\n function onSelect() {\n emit('select');\n\n /**\n * In Vue (as of this writing), if a user checks a native checkbox but the v-model is `false` and does not change from `false`, then the checkbox will display as checked even though the v-model is still `false`.\n * Forcing a re-render with a `key` change allows the checkbox to stay unchecked if its v-model is still `false` and its v-model not been changed.\n * To verify that this is necessary, test the \"select all\" checkbox in the SelectionWithSomeDisabled story in Table.story.ts with and without the `key` attribute.\n */\n checkboxKey.value++;\n }\n\n watchEffect(() => {\n // Whenever a Table is selectable _and_ is within a DataView with a toolbar, we pick the first header cell and add a colspan=2.\n // After a Table is mounted, if for whatever reason the conditions are changed for useSelection, the header needs to watch it.\n // This being a watch guarantees that colspan is properly applied whenever conditions are met and revert back when they aren't anymore.\n if (headerRow.value) {\n if (hasToolbar?.value && isSelectable.value) {\n headerRow.value.getElementsByTagName('th')[0].setAttribute('colspan', 2);\n } else {\n headerRow.value.getElementsByTagName('th')[0].setAttribute('colspan', 1);\n }\n }\n });\n</script>\n\n<template>\n <tr ref=\"headerRow\" class=\"stash-table-header-row\" data-test=\"stash-table-header-row\">\n <TableHeaderCell\n v-if=\"!hasToolbar && isSelectable\"\n class=\"stash-table-header-row__selection-cell tw-min-w-[48px]\"\n :class=\"$style['row-control-cell']\"\n >\n <Checkbox\n :key=\"checkboxKey\"\n :class=\"$style['row-selection-checkbox']\"\n :checked=\"props.allRowsSelected\"\n :indeterminate=\"props.someRowsSelected && !props.allRowsSelected\"\n :title=\"t('ll.selectAll')\"\n @update:indeterminate=\"onSelect\"\n @update:checked=\"onSelect\"\n />\n </TableHeaderCell>\n <TableHeaderCell\n v-if=\"isExpandable && !hasCustomExpandToggle\"\n :class=\"$style['row-control-cell']\"\n data-test=\"table-row-header-expansion-cell\"\n />\n <!-- @slot default -->\n <slot></slot>\n </tr>\n</template>\n\n<style module>\n .row-selection-checkbox label {\n padding: 0;\n min-height: theme('spacing.6');\n vertical-align: middle;\n }\n\n .row-control-cell {\n border-right: 0;\n }\n</style>\n"],"names":["props","__props","emit","__emit","tableInjection","inject","TABLE_INJECTION","hasCustomExpandToggle","isExpandable","isSelectable","hasToolbar","DATA_VIEW_INJECTION","checkboxKey","ref","headerRow","onSelect","watchEffect"],"mappings":";;;;;;;;;;;;;;;;;;AAcE,UAAMA,IAAQC,GAKRC,IAAOC,GAIPC,IAAiBC,EAAOC,EAAgB,GAAG;AAEjD,QAAI,CAACF;AACG,YAAA,IAAI,MAAM,sDAAsD;AAGxE,UAAM,EAAE,uBAAAG,GAAuB,cAAAC,GAAc,cAAAC,EAAiB,IAAAL,GAExD,EAAE,YAAAM,EAAW,IAAIL,EAAOM,EAAoB,KAAKA,EAAoB,QAAQ,GAE7EC,IAAcC,EAAI,CAAC,GACnBC,IAAYD,EAAI;AAEtB,aAASE,IAAW;AAClB,MAAAb,EAAK,QAAQ,GAODU,EAAA;AAAA,IAAA;AAGd,WAAAI,EAAY,MAAM;AAIhB,MAAIF,EAAU,UACRJ,KAAA,QAAAA,EAAY,SAASD,EAAa,QAC1BK,EAAA,MAAM,qBAAqB,IAAI,EAAE,CAAC,EAAE,aAAa,WAAW,CAAC,IAE7DA,EAAA,MAAM,qBAAqB,IAAI,EAAE,CAAC,EAAE,aAAa,WAAW,CAAC;AAAA,IAE3E,CACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"TableHeaderRow.js","sources":["../src/components/TableHeaderRow/TableHeaderRow.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { inject, ref } from 'vue';\n\n import { t } from '../../locale';\n import Checkbox from '../Checkbox/Checkbox.vue';\n import { DATA_VIEW_INJECTION } from '../DataView/DataView.keys';\n import { TABLE_INJECTION } from '../Table/Table.vue';\n import TableHeaderCell from '../TableHeaderCell/TableHeaderCell.vue';\n\n export interface TableHeaderRowProps {\n allRowsSelected?: boolean;\n someRowsSelected?: boolean;\n }\n\n const props = withDefaults(defineProps<TableHeaderRowProps>(), {\n allRowsSelected: false,\n someRowsSelected: false,\n });\n\n const emit = defineEmits<{\n (e: 'select'): void;\n }>();\n\n const tableInjection = inject(TABLE_INJECTION.key);\n\n if (!tableInjection) {\n throw new Error('TableHeaderRow must be used within a Table component');\n }\n\n const { hasCustomExpandToggle, isExpandable, isSelectable } = tableInjection;\n\n const { hasToolbar } = inject(DATA_VIEW_INJECTION.key, DATA_VIEW_INJECTION.defaults);\n\n const checkboxKey = ref(0);\n\n function onSelect() {\n emit('select');\n\n /**\n * In Vue (as of this writing), if a user checks a native checkbox but the v-model is `false` and does not change from `false`, then the checkbox will display as checked even though the v-model is still `false`.\n * Forcing a re-render with a `key` change allows the checkbox to stay unchecked if its v-model is still `false` and its v-model not been changed.\n * To verify that this is necessary, test the \"select all\" checkbox in the SelectionWithSomeDisabled story in Table.story.ts with and without the `key` attribute.\n */\n checkboxKey.value++;\n }\n</script>\n\n<template>\n <tr class=\"stash-table-header-row\" data-test=\"stash-table-header-row\">\n <!-- This is just an empty cell to ensure proper alignment. \"Select all\" control should be in the toolbar. -->\n <TableHeaderCell\n v-if=\"hasToolbar && isSelectable\"\n class=\"stash-table-header-row__selection-cell-empty\"\n :class=\"$style['row-control-cell']\"\n data-test=\"table-row-header|selection-cell-empty\"\n />\n\n <TableHeaderCell\n v-if=\"!hasToolbar && isSelectable\"\n class=\"stash-table-header-row__selection-cell tw-min-w-[48px]\"\n :class=\"$style['row-control-cell']\"\n data-test=\"table-row-header|selection-cell\"\n >\n <Checkbox\n v-if=\"!hasToolbar\"\n :key=\"checkboxKey\"\n :class=\"$style['row-selection-checkbox']\"\n :checked=\"props.allRowsSelected\"\n :indeterminate=\"props.someRowsSelected && !props.allRowsSelected\"\n :title=\"t('ll.selectAll')\"\n @update:indeterminate=\"onSelect\"\n @update:checked=\"onSelect\"\n />\n </TableHeaderCell>\n\n <TableHeaderCell\n v-if=\"isExpandable && !hasCustomExpandToggle\"\n :class=\"$style['row-control-cell']\"\n data-test=\"table-row-header-expansion-cell\"\n />\n <!-- @slot default -->\n <slot></slot>\n </tr>\n</template>\n\n<style module>\n .row-selection-checkbox label {\n padding: 0;\n min-height: theme('spacing.6');\n vertical-align: middle;\n }\n\n .row-control-cell {\n border-right: 0;\n }\n</style>\n"],"names":["props","__props","emit","__emit","tableInjection","inject","TABLE_INJECTION","hasCustomExpandToggle","isExpandable","isSelectable","hasToolbar","DATA_VIEW_INJECTION","checkboxKey","ref","onSelect","_openBlock","_createElementBlock","_hoisted_1","_unref","_createBlock","TableHeaderCell","_normalizeClass","$style","Checkbox","t","_renderSlot","_ctx"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAcE,UAAMA,IAAQC,GAKRC,IAAOC,GAIPC,IAAiBC,EAAOC,EAAgB,GAAG;AAEjD,QAAI,CAACF;AACH,YAAM,IAAI,MAAM,sDAAsD;AAGxE,UAAM,EAAE,uBAAAG,GAAuB,cAAAC,GAAc,cAAAC,EAAA,IAAiBL,GAExD,EAAE,YAAAM,EAAA,IAAeL,EAAOM,EAAoB,KAAKA,EAAoB,QAAQ,GAE7EC,IAAcC,EAAI,CAAC;AAEzB,aAASC,IAAW;AAClB,MAAAZ,EAAK,QAAQ,GAObU,EAAY;AAAA,IACd;sBAIAG,EAAA,GAAAC,EAkCK,MAlCLC,GAkCK;AAAA,MA/BKC,EAAAR,CAAA,KAAcQ,EAAAT,CAAA,UADtBU,EAKEC,GAAA;AAAA;QAHA,OAAKC,EAAA,CAAC,gDACEC,EAAAA,OAAM,kBAAA,CAAA,CAAA;AAAA,QACd,aAAU;AAAA,MAAA;MAIH,CAAAJ,EAAAR,CAAA,KAAcQ,EAAAT,CAAA,UADvBU,EAgBkBC,GAAA;AAAA;QAdhB,OAAKC,EAAA,CAAC,0DACEC,EAAAA,OAAM,kBAAA,CAAA,CAAA;AAAA,QACd,aAAU;AAAA,MAAA;mBAEV,MASE;AAAA,UAROJ,EAAAR,CAAA,sBADTS,EASEI,GAAA;AAAA,YAPC,KAAKX,EAAA;AAAA,YACL,SAAOU,EAAAA,OAAM,wBAAA,CAAA;AAAA,YACb,SAAStB,EAAM;AAAA,YACf,eAAeA,EAAM,oBAAgB,CAAKA,EAAM;AAAA,YAChD,OAAOkB,EAAAM,CAAA,EAAC,cAAA;AAAA,YACR,0BAAsBV;AAAA,YACtB,oBAAgBA;AAAA,UAAA;;;;MAKbI,EAAAV,CAAA,MAAiBU,EAAAX,CAAA,UADzBY,EAIEC,GAAA;AAAA;QAFC,SAAOE,EAAAA,OAAM,kBAAA,CAAA;AAAA,QACd,aAAU;AAAA,MAAA;MAGZG,EAAaC,EAAA,QAAA,SAAA;AAAA,IAAA;;;;;;;;"}
@@ -1,56 +1,27 @@
1
1
  import { ComponentOptionsMixin } from 'vue';
2
2
  import { ComponentProvideOptions } from 'vue';
3
3
  import { DefineComponent } from 'vue';
4
- import { ExtractPropTypes } from 'vue';
5
- import { PropType } from 'vue';
6
4
  import { PublicProps } from 'vue';
7
5
 
8
- declare type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
9
-
10
- declare type __VLS_Prettify<T> = {
11
- [K in keyof T]: T[K];
12
- } & {};
13
-
14
- declare type __VLS_TypePropsToRuntimeProps<T> = {
15
- [K in keyof T]-?: {} extends Pick<T, K> ? {
16
- type: PropType<__VLS_NonUndefinedable<T[K]>>;
17
- } : {
18
- type: PropType<T[K]>;
19
- required: true;
20
- };
21
- };
22
-
23
- declare type __VLS_WithDefaults<P, D> = {
24
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
25
- default: D[K];
26
- }> : P[K];
27
- };
28
-
29
6
  declare type __VLS_WithTemplateSlots<T, S> = T & {
30
7
  new (): {
31
8
  $slots: S;
32
9
  };
33
10
  };
34
11
 
35
- declare const _default: __VLS_WithTemplateSlots<DefineComponent<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TableHeaderRowProps>, {
36
- allRowsSelected: boolean;
37
- someRowsSelected: boolean;
38
- }>>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
39
- select: () => void;
40
- }, string, PublicProps, Readonly<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TableHeaderRowProps>, {
41
- allRowsSelected: boolean;
42
- someRowsSelected: boolean;
43
- }>>> & Readonly<{
12
+ declare const _default: __VLS_WithTemplateSlots<DefineComponent<TableHeaderRowProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
13
+ select: () => any;
14
+ }, string, PublicProps, Readonly<TableHeaderRowProps> & Readonly<{
44
15
  onSelect?: (() => any) | undefined;
45
16
  }>, {
46
17
  allRowsSelected: boolean;
47
18
  someRowsSelected: boolean;
48
- }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>, {
19
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLTableRowElement>, {
49
20
  default?(_: {}): any;
50
21
  }>;
51
22
  export default _default;
52
23
 
53
- export declare interface TableHeaderRowProps {
24
+ declare interface TableHeaderRowProps {
54
25
  allRowsSelected?: boolean;
55
26
  someRowsSelected?: boolean;
56
27
  }
package/dist/TableRow.js CHANGED
@@ -1,13 +1,13 @@
1
- import { defineComponent as A, useAttrs as D, useCssModule as M, useSlots as V, inject as j, ref as P, computed as C, watch as q, createElementBlock as x, openBlock as r, Fragment as z, createElementVNode as F, createCommentVNode as w, mergeProps as J, unref as e, createBlock as k, renderSlot as E, normalizeClass as c, withCtx as _, createVNode as b } from "vue";
1
+ import { defineComponent as A, useAttrs as D, useCssModule as M, useSlots as V, inject as j, ref as P, computed as k, watch as q, createElementBlock as w, openBlock as r, Fragment as z, createElementVNode as F, createCommentVNode as p, mergeProps as J, unref as e, createBlock as E, renderSlot as y, normalizeClass as n, withCtx as x, createVNode as _ } from "vue";
2
2
  import L from "lodash-es/uniqueId";
3
- import { t as m } from "./locale.js";
3
+ import { t as b } from "./locale.js";
4
4
  import O from "./Checkbox.js";
5
5
  import { _ as U } from "./ChevronToggle.vue_vue_type_script_setup_true_lang-Ce_qOXfR.js";
6
6
  import { _ as G } from "./Expand.vue_vue_type_script_setup_true_lang-CiONJfAp.js";
7
7
  import "lodash-es/cloneDeep";
8
8
  import "./DataView.keys-aSOnA4AD.js";
9
- import "./Illustration.vue_vue_type_script_setup_true_lang-BrqEF8xe.js";
10
- import y from "./TableCell.js";
9
+ import "./Illustration.vue_vue_type_script_setup_true_lang-BVzzNsRt.js";
10
+ import g from "./TableCell.js";
11
11
  import { T as H } from "./Table.keys-LHQf6FEH.js";
12
12
  import { _ as K } from "./_plugin-vue_export-helper-CHgC5LLL.js";
13
13
  const Q = /* @__PURE__ */ A({
@@ -22,83 +22,82 @@ const Q = /* @__PURE__ */ A({
22
22
  },
23
23
  emits: ["update:isSelected", "update:isExpanded"],
24
24
  setup(S, { emit: T }) {
25
- const t = S, f = T, B = D(), o = M(), i = V(), h = j(H.key);
26
- if (!h)
25
+ const t = S, h = T, B = D(), o = M(), m = V(), f = j(H.key);
26
+ if (!f)
27
27
  throw new Error("TableRow must be used within a Table component");
28
- const { hasActions: R, hasCustomExpandToggle: g, isExpandable: $, isSelectable: u, layout: d } = h, l = P(t.isExpanded), n = C(() => $.value && !!i.expansion), I = C(() => {
29
- var s;
30
- let a = ((s = i.default) == null ? void 0 : s.call(i, { toggleExpand: p }).length) ?? 0;
31
- return u.value && (a += 1), n.value && !g.value && (a += 1), a;
32
- }), v = L("table-row-");
33
- function p(a) {
34
- if (!n.value)
28
+ const { hasActions: R, hasCustomExpandToggle: v, isExpandable: $, isSelectable: u, layout: i } = f, l = P(t.isExpanded), s = k(() => $.value && !!m.expansion), I = k(() => {
29
+ let a = m.default?.({ toggleExpand: d }).length ?? 0;
30
+ return u.value && (a += 1), s.value && !v.value && (a += 1), a;
31
+ }), C = L("table-row-");
32
+ function d(a) {
33
+ if (!s.value)
35
34
  throw new Error("Cannot call `toggleExpand` on a non-expandable row. Provide an `expansion` slot.");
36
- const s = typeof a == "boolean" ? a : !l.value;
37
- l.value = s, f("update:isExpanded", s);
35
+ const c = typeof a == "boolean" ? a : !l.value;
36
+ l.value = c, h("update:isExpanded", c);
38
37
  }
39
38
  return q(
40
39
  () => t.isExpanded,
41
- () => p(t.isExpanded)
42
- ), (a, s) => (r(), x(z, null, [
40
+ () => d(t.isExpanded)
41
+ ), (a, c) => (r(), w(z, null, [
43
42
  F("tr", J({
44
43
  class: ["stash-table-row", [
45
44
  e(o).root,
46
- e(o)[`layout--${e(d)}`],
45
+ e(o)[`layout--${e(i)}`],
47
46
  {
48
- [e(o)["is-expandable"]]: n.value,
47
+ [e(o)["is-expandable"]]: s.value,
49
48
  [e(o)["is-expanded"]]: l.value,
50
49
  [e(o)["root--hidden-divider"]]: a.hideExpansionDivider,
51
- "tw-p-gutter": e(d) === "stack",
52
- "tw-mb-6 tw-shadow lg:tw-mb-0 lg:tw-shadow-none": e(d) === "stack" && !n.value,
53
- "tw-pt-[60px]": e(R) && e(d) === "stack" && !e(u),
50
+ "tw-p-gutter": e(i) === "stack",
51
+ "tw-mb-6 tw-shadow lg:tw-mb-0 lg:tw-shadow-none": e(i) === "stack" && !s.value,
52
+ "tw-pt-[60px]": e(R) && e(i) === "stack" && !e(u),
54
53
  "stash-table-row--accent": t.accentColor,
55
54
  "tw-relative": t.accentColor
56
55
  }
57
56
  ]],
58
57
  "data-test": "stash-table-row"
59
58
  }, e(B)), [
60
- e(u) ? (r(), k(y, {
59
+ e(u) ? (r(), E(g, {
61
60
  key: 0,
62
61
  "is-control": "",
63
- class: c(["stash-table-row__selection-cell tw-min-w-[48px]", e(o)["row-control-cell"]]),
62
+ class: n(["stash-table-row__selection-cell tw-min-w-[48px]", e(o)["row-control-cell"]]),
64
63
  "data-test": "stash-table-row|selection-cell"
65
64
  }, {
66
- default: _(() => [
67
- b(O, {
68
- class: c(e(o)["row-selection-checkbox"]),
65
+ default: x(() => [
66
+ _(O, {
67
+ class: n(e(o)["row-selection-checkbox"]),
69
68
  checked: t.isSelected,
70
69
  disabled: t.isSelectDisabled,
71
- title: e(m)("ll.select.self"),
72
- "onUpdate:checked": s[0] || (s[0] = (N) => f("update:isSelected", N))
70
+ title: e(b)("ll.select.self"),
71
+ "onUpdate:checked": c[0] || (c[0] = (N) => h("update:isSelected", N))
73
72
  }, null, 8, ["class", "checked", "disabled", "title"])
74
73
  ]),
75
74
  _: 1
76
- }, 8, ["class"])) : w("", !0),
77
- n.value && !e(g) ? (r(), k(y, {
75
+ }, 8, ["class"])) : p("", !0),
76
+ s.value && !e(v) ? (r(), E(g, {
78
77
  key: 1,
79
- class: c(["stash-table-row__toggle-expansion-cell tw-px-0", e(o)["row-control-cell"]]),
78
+ class: n(["stash-table-row__toggle-expansion-cell tw-px-0", e(o)["row-control-cell"]]),
80
79
  "data-test": "stash-table-row|custom-expansion-cell",
81
80
  "is-control": ""
82
81
  }, {
83
- default: _(() => [
84
- b(U, {
85
- "aria-controls": e(v),
86
- "aria-label": l.value ? e(m)("ll.table.collapseRow") : e(m)("ll.table.expandRow"),
82
+ default: x(() => [
83
+ _(U, {
84
+ "aria-controls": e(C),
85
+ "aria-label": l.value ? e(b)("ll.table.collapseRow") : e(b)("ll.table.expandRow"),
87
86
  direction: l.value ? "up" : "down",
88
87
  "is-expanded": l.value,
89
- onClick: p
88
+ onClick: d
90
89
  }, null, 8, ["aria-controls", "aria-label", "direction", "is-expanded"])
91
90
  ]),
92
91
  _: 1
93
- }, 8, ["class"])) : w("", !0),
94
- E(a.$slots, "default", {
92
+ }, 8, ["class"])) : p("", !0),
93
+ y(a.$slots, "default", {
95
94
  isRowExpanded: l.value,
96
- toggleExpand: p
95
+ toggleExpand: d
97
96
  }),
98
- t.accentColor ? (r(), x("div", {
97
+ t.accentColor ? (r(), w("div", {
99
98
  key: 2,
100
99
  "data-test": "stash-table-row|accent",
101
- class: c({
100
+ class: n({
102
101
  "tw-absolute": t.accentColor,
103
102
  [`tw-bg-${t.accentColor}`]: t.accentColor,
104
103
  "tw-block": t.accentColor,
@@ -107,40 +106,40 @@ const Q = /* @__PURE__ */ A({
107
106
  "tw-top-0": t.accentColor,
108
107
  "tw-left-0": t.accentColor
109
108
  })
110
- }, null, 2)) : w("", !0)
109
+ }, null, 2)) : p("", !0)
111
110
  ], 16),
112
- n.value ? (r(), x("tr", {
111
+ s.value ? (r(), w("tr", {
113
112
  key: 0,
114
- class: c(["stash-table-row stash-table-row--expandable", e(o)["row-expansion"]]),
113
+ class: n(["stash-table-row stash-table-row--expandable", e(o)["row-expansion"]]),
115
114
  "data-test": "stash-table-row|expansion-row"
116
115
  }, [
117
- b(G, {
116
+ _(G, {
118
117
  is: "td",
119
- id: e(v),
120
- class: c(["tw-border-none tw-bg-white tw-px-3 tw-py-0", e(o)["row-expansion-content"]]),
118
+ id: e(C),
119
+ class: n(["tw-border-none tw-bg-white tw-px-3 tw-py-0", e(o)["row-expansion-content"]]),
121
120
  "data-test": "stash-table-row|expansion-cell",
122
121
  colspan: I.value,
123
122
  "is-expanded": l.value
124
123
  }, {
125
- default: _(() => [
126
- E(a.$slots, "expansion")
124
+ default: x(() => [
125
+ y(a.$slots, "expansion")
127
126
  ]),
128
127
  _: 3
129
128
  }, 8, ["id", "class", "colspan", "is-expanded"])
130
- ], 2)) : w("", !0)
129
+ ], 2)) : p("", !0)
131
130
  ], 64));
132
131
  }
133
- }), W = "_root_ngiw1_2", X = {
132
+ }), W = "_root_1h1vo_2", X = {
134
133
  root: W,
135
- "is-expandable": "_is-expandable_ngiw1_9",
136
- "root--hidden-divider": "_root--hidden-divider_ngiw1_14",
137
- "is-expanded": "_is-expanded_ngiw1_14",
138
- "layout--scroll": "_layout--scroll_ngiw1_22",
139
- "layout--stack": "_layout--stack_ngiw1_36",
140
- "row-selection-checkbox": "_row-selection-checkbox_ngiw1_56",
141
- "row-control-cell": "_row-control-cell_ngiw1_62",
142
- "row-expansion-content": "_row-expansion-content_ngiw1_73",
143
- "row-expansion": "_row-expansion_ngiw1_73"
134
+ "is-expandable": "_is-expandable_1h1vo_9",
135
+ "root--hidden-divider": "_root--hidden-divider_1h1vo_14",
136
+ "is-expanded": "_is-expanded_1h1vo_14",
137
+ "layout--scroll": "_layout--scroll_1h1vo_22",
138
+ "layout--stack": "_layout--stack_1h1vo_36",
139
+ "row-selection-checkbox": "_row-selection-checkbox_1h1vo_56",
140
+ "row-control-cell": "_row-control-cell_1h1vo_61",
141
+ "row-expansion-content": "_row-expansion-content_1h1vo_72",
142
+ "row-expansion": "_row-expansion_1h1vo_72"
144
143
  }, Y = {
145
144
  $style: X
146
145
  }, pe = /* @__PURE__ */ K(Q, [["__cssModules", Y]]);
@@ -1 +1 @@
1
- {"version":3,"file":"TableRow.js","sources":["../src/components/TableRow/TableRow.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import uniqueId from 'lodash-es/uniqueId';\n import { computed, inject, ref, useAttrs, useCssModule, watch } from 'vue';\n\n import { StashCommonColor } from '../../../types/colors';\n import { t } from '../../locale';\n import Checkbox, { CheckboxProps } from '../Checkbox/Checkbox.vue';\n import ChevronToggle from '../ChevronToggle/ChevronToggle.vue';\n import Expand from '../Expand/Expand.vue';\n import { TABLE_INJECTION } from '../Table/Table.vue';\n import TableCell from '../TableCell/TableCell.vue';\n\n defineOptions({ inheritAttrs: false });\n\n export interface TableRowProps {\n hideExpansionDivider?: boolean;\n isExpanded?: boolean;\n isSelected?: boolean;\n isSelectDisabled?: boolean;\n /**\n * The accent color for the TableRow.\n */\n accentColor?: StashCommonColor;\n }\n\n const props = withDefaults(defineProps<TableRowProps>(), {\n /**\n * If true, hides the divider between the parent row and expansion row\n */\n hideExpansionDivider: false,\n isExpanded: false,\n isSelected: false,\n isSelectDisabled: false,\n accentColor: undefined,\n });\n\n const emit = defineEmits<{\n 'update:isSelected': [isChecked: CheckboxProps['checked']];\n 'update:isExpanded': [isExpanded: boolean];\n }>();\n\n const attrs = useAttrs();\n const classes = useCssModule();\n const slots = defineSlots<{\n default(props: { isRowExpanded?: boolean; toggleExpand: (value?: boolean) => void }): unknown[];\n expansion(): unknown[];\n }>();\n\n const tableInjection = inject(TABLE_INJECTION.key);\n\n if (!tableInjection) {\n throw new Error('TableRow must be used within a Table component');\n }\n\n const { hasActions, hasCustomExpandToggle, isExpandable, isSelectable, layout } = tableInjection;\n\n const isRowExpanded = ref(props.isExpanded);\n const isRowExpandable = computed(() => isExpandable.value && !!slots.expansion);\n\n const childCellCount = computed(() => {\n let count = slots.default?.({ toggleExpand }).length ?? 0;\n\n if (isSelectable.value) {\n count += 1;\n }\n\n if (isRowExpandable.value && !hasCustomExpandToggle.value) {\n count += 1;\n }\n\n return count;\n });\n const rowId = uniqueId('table-row-');\n\n function toggleExpand(value?: boolean) {\n if (!isRowExpandable.value) {\n throw new Error('Cannot call `toggleExpand` on a non-expandable row. Provide an `expansion` slot.');\n }\n\n const isExpanded = typeof value === 'boolean' ? value : !isRowExpanded.value;\n\n isRowExpanded.value = isExpanded;\n emit('update:isExpanded', isExpanded);\n }\n\n watch(\n () => props.isExpanded,\n () => toggleExpand(props.isExpanded),\n );\n</script>\n\n<template>\n <tr\n class=\"stash-table-row\"\n :class=\"[\n classes.root,\n classes[`layout--${layout}`],\n {\n [classes['is-expandable']]: isRowExpandable,\n [classes['is-expanded']]: isRowExpanded,\n [classes['root--hidden-divider']]: hideExpansionDivider,\n 'tw-p-gutter': layout === 'stack',\n 'tw-mb-6 tw-shadow lg:tw-mb-0 lg:tw-shadow-none': layout === 'stack' && !isRowExpandable,\n 'tw-pt-[60px]': hasActions && layout === 'stack' && !isSelectable,\n 'stash-table-row--accent': props.accentColor,\n 'tw-relative': props.accentColor,\n },\n ]\"\n data-test=\"stash-table-row\"\n v-bind=\"attrs\"\n >\n <TableCell\n v-if=\"isSelectable\"\n is-control\n class=\"stash-table-row__selection-cell tw-min-w-[48px]\"\n :class=\"classes['row-control-cell']\"\n data-test=\"stash-table-row|selection-cell\"\n >\n <Checkbox\n :class=\"classes['row-selection-checkbox']\"\n :checked=\"props.isSelected\"\n :disabled=\"props.isSelectDisabled\"\n :title=\"t('ll.select.self')\"\n @update:checked=\"emit('update:isSelected', $event)\"\n />\n </TableCell>\n <TableCell\n v-if=\"isRowExpandable && !hasCustomExpandToggle\"\n class=\"stash-table-row__toggle-expansion-cell tw-px-0\"\n data-test=\"stash-table-row|custom-expansion-cell\"\n is-control\n :class=\"classes['row-control-cell']\"\n >\n <ChevronToggle\n :aria-controls=\"rowId\"\n :aria-label=\"isRowExpanded ? t('ll.table.collapseRow') : t('ll.table.expandRow')\"\n :direction=\"isRowExpanded ? 'up' : 'down'\"\n :is-expanded=\"isRowExpanded\"\n @click=\"toggleExpand\"\n />\n </TableCell>\n <!-- @slot default -->\n <slot :is-row-expanded=\"isRowExpanded\" :toggle-expand=\"toggleExpand\"></slot>\n <!-- Displays a 4px accent on the left of the table row -->\n <div\n v-if=\"props.accentColor\"\n data-test=\"stash-table-row|accent\"\n :class=\"{\n 'tw-absolute': props.accentColor,\n [`tw-bg-${props.accentColor}`]: props.accentColor,\n 'tw-block': props.accentColor,\n 'tw-h-full': props.accentColor,\n 'tw-w-1': props.accentColor,\n 'tw-top-0': props.accentColor,\n 'tw-left-0': props.accentColor,\n }\"\n ></div>\n </tr>\n <tr\n v-if=\"isRowExpandable\"\n class=\"stash-table-row stash-table-row--expandable\"\n :class=\"classes['row-expansion']\"\n data-test=\"stash-table-row|expansion-row\"\n >\n <Expand\n is=\"td\"\n :id=\"rowId\"\n class=\"tw-border-none tw-bg-white tw-px-3 tw-py-0\"\n data-test=\"stash-table-row|expansion-cell\"\n :class=\"classes['row-expansion-content']\"\n :colspan=\"childCellCount\"\n :is-expanded=\"isRowExpanded\"\n >\n <!-- @slot expansion, for expandable content -->\n <slot name=\"expansion\"></slot>\n </Expand>\n </tr>\n</template>\n\n<style module>\n .root {\n border: 0;\n }\n\n /**\n * Only takes effect when hideExpansionDivider is true, for a softer collapse transition as the bottom border re-appears\n */\n .is-expandable > td {\n border-bottom-color: var(--color-ice-200);\n transition: border-bottom-color 0.5s;\n }\n\n .root--hidden-divider.is-expanded > td {\n transition: border-bottom-color 0s;\n /**\n * Removes the grey cell background for 'control' cells at lower breakpoints, letting the white of the tr come through.\n */\n border-bottom-color: transparent;\n }\n\n .layout--scroll {\n border-radius: 0;\n box-shadow: none !important;\n margin: 0;\n }\n\n .layout--scroll:last-of-type {\n border: 0;\n }\n\n .layout--scroll:last-of-type td {\n border-bottom: none;\n }\n\n .layout--stack {\n align-items: stretch;\n background-color: var(--color-white);\n column-gap: var(--grid-gutter);\n display: grid;\n grid-template-columns: repeat(12, 1fr);\n position: relative;\n row-gap: var(--grid-gutter);\n }\n\n .layout--stack:not(.is-expanded) {\n border-radius: theme('borderRadius.DEFAULT');\n transition: border-radius 0.5s;\n }\n\n .layout--stack.is-expanded {\n border-top-left-radius: theme('borderRadius.DEFAULT');\n border-top-right-radius: theme('borderRadius.DEFAULT');\n }\n\n .row-selection-checkbox label {\n padding: 0;\n min-height: theme('spacing.6');\n vertical-align: middle;\n }\n\n .layout--stack .row-control-cell {\n display: flex;\n align-items: center;\n min-width: 0;\n }\n\n /* On mobile, display controls on their own row, pushing other cells below */\n .row-control-cell + :not(.row-control-cell) {\n grid-column-start: 1;\n }\n\n .row-expansion-content {\n box-shadow: inset 0 -1px 0 0 var(--color-ice-200);\n }\n\n .layout--stack + .row-expansion,\n .layout--stack + .row-expansion > .row-expansion-content {\n display: block;\n }\n\n .layout--stack + .row-expansion > .row-expansion-content {\n border-top: 1px solid var(--color-ice-200);\n border-bottom-left-radius: theme('borderRadius.DEFAULT');\n border-bottom-right-radius: theme('borderRadius.DEFAULT');\n margin-bottom: theme('spacing.6');\n }\n\n .layout--stack.root--hidden-divider + .row-expansion > .row-expansion-content {\n border-top: none;\n }\n\n /* On large screens, match the styles for layout-SCROLL */\n @media screen('lg') {\n .layout--stack {\n align-items: unset;\n background-color: unset;\n border: 0;\n border-bottom: 1px solid var(--color-ice-200);\n border-radius: 0;\n box-shadow: none;\n column-gap: unset;\n display: table-row;\n grid-template-columns: unset;\n row-gap: unset;\n }\n\n .layout--stack:last-of-type {\n border-bottom: 0;\n }\n\n .layout--stack .row-control-cell {\n display: table-cell;\n }\n\n .layout--stack + .row-expansion {\n display: table-row;\n }\n\n .layout--stack + .row-expansion > .row-expansion-content {\n border-top: unset;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n display: table-cell;\n margin-bottom: unset;\n }\n\n .row-control-cell + :not(.row-control-cell) {\n grid-column-start: unset;\n }\n }\n</style>\n"],"names":["props","__props","emit","__emit","attrs","useAttrs","classes","useCssModule","slots","_useSlots","tableInjection","inject","TABLE_INJECTION","hasActions","hasCustomExpandToggle","isExpandable","isSelectable","layout","isRowExpanded","ref","isRowExpandable","computed","childCellCount","count","_a","toggleExpand","rowId","uniqueId","value","isExpanded","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAyBE,UAAMA,IAAQC,GAWRC,IAAOC,GAKPC,IAAQC,EAAS,GACjBC,IAAUC,EAAa,GACvBC,IAAQC,EAGV,GAEEC,IAAiBC,EAAOC,EAAgB,GAAG;AAEjD,QAAI,CAACF;AACG,YAAA,IAAI,MAAM,gDAAgD;AAGlE,UAAM,EAAE,YAAAG,GAAY,uBAAAC,GAAuB,cAAAC,GAAc,cAAAC,GAAc,QAAAC,MAAWP,GAE5EQ,IAAgBC,EAAInB,EAAM,UAAU,GACpCoB,IAAkBC,EAAS,MAAMN,EAAa,SAAS,CAAC,CAACP,EAAM,SAAS,GAExEc,IAAiBD,EAAS,MAAM;;AACpC,UAAIE,MAAQC,IAAAhB,EAAM,YAAN,gBAAAgB,EAAA,KAAAhB,GAAgB,EAAE,cAAAiB,EAAc,GAAE,WAAU;AAExD,aAAIT,EAAa,UACNO,KAAA,IAGPH,EAAgB,SAAS,CAACN,EAAsB,UACzCS,KAAA,IAGJA;AAAA,IAAA,CACR,GACKG,IAAQC,EAAS,YAAY;AAEnC,aAASF,EAAaG,GAAiB;AACjC,UAAA,CAACR,EAAgB;AACb,cAAA,IAAI,MAAM,kFAAkF;AAGpG,YAAMS,IAAa,OAAOD,KAAU,YAAYA,IAAQ,CAACV,EAAc;AAEvE,MAAAA,EAAc,QAAQW,GACtB3B,EAAK,qBAAqB2B,CAAU;AAAA,IAAA;AAGtC,WAAAC;AAAA,MACE,MAAM9B,EAAM;AAAA,MACZ,MAAMyB,EAAazB,EAAM,UAAU;AAAA,IACrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"TableRow.js","sources":["../src/components/TableRow/TableRow.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import uniqueId from 'lodash-es/uniqueId';\n import { computed, inject, ref, useAttrs, useCssModule, watch } from 'vue';\n\n import { StashCommonColor } from '../../../types/colors';\n import { t } from '../../locale';\n import Checkbox, { CheckboxProps } from '../Checkbox/Checkbox.vue';\n import ChevronToggle from '../ChevronToggle/ChevronToggle.vue';\n import Expand from '../Expand/Expand.vue';\n import { TABLE_INJECTION } from '../Table/Table.vue';\n import TableCell from '../TableCell/TableCell.vue';\n\n defineOptions({ inheritAttrs: false });\n\n export interface TableRowProps {\n hideExpansionDivider?: boolean;\n isExpanded?: boolean;\n isSelected?: boolean;\n isSelectDisabled?: boolean;\n /**\n * The accent color for the TableRow.\n */\n accentColor?: StashCommonColor;\n }\n\n const props = withDefaults(defineProps<TableRowProps>(), {\n /**\n * If true, hides the divider between the parent row and expansion row\n */\n hideExpansionDivider: false,\n isExpanded: false,\n isSelected: false,\n isSelectDisabled: false,\n accentColor: undefined,\n });\n\n const emit = defineEmits<{\n 'update:isSelected': [isChecked: CheckboxProps['checked']];\n 'update:isExpanded': [isExpanded: boolean];\n }>();\n\n const attrs = useAttrs();\n const classes = useCssModule();\n const slots = defineSlots<{\n default(props: { isRowExpanded?: boolean; toggleExpand: (value?: boolean) => void }): unknown[];\n expansion(): unknown[];\n }>();\n\n const tableInjection = inject(TABLE_INJECTION.key);\n\n if (!tableInjection) {\n throw new Error('TableRow must be used within a Table component');\n }\n\n const { hasActions, hasCustomExpandToggle, isExpandable, isSelectable, layout } = tableInjection;\n\n const isRowExpanded = ref(props.isExpanded);\n const isRowExpandable = computed(() => isExpandable.value && !!slots.expansion);\n\n const childCellCount = computed(() => {\n let count = slots.default?.({ toggleExpand }).length ?? 0;\n\n if (isSelectable.value) {\n count += 1;\n }\n\n if (isRowExpandable.value && !hasCustomExpandToggle.value) {\n count += 1;\n }\n\n return count;\n });\n const rowId = uniqueId('table-row-');\n\n function toggleExpand(value?: boolean) {\n if (!isRowExpandable.value) {\n throw new Error('Cannot call `toggleExpand` on a non-expandable row. Provide an `expansion` slot.');\n }\n\n const isExpanded = typeof value === 'boolean' ? value : !isRowExpanded.value;\n\n isRowExpanded.value = isExpanded;\n emit('update:isExpanded', isExpanded);\n }\n\n watch(\n () => props.isExpanded,\n () => toggleExpand(props.isExpanded),\n );\n</script>\n\n<template>\n <tr\n class=\"stash-table-row\"\n :class=\"[\n classes.root,\n classes[`layout--${layout}`],\n {\n [classes['is-expandable']]: isRowExpandable,\n [classes['is-expanded']]: isRowExpanded,\n [classes['root--hidden-divider']]: hideExpansionDivider,\n 'tw-p-gutter': layout === 'stack',\n 'tw-mb-6 tw-shadow lg:tw-mb-0 lg:tw-shadow-none': layout === 'stack' && !isRowExpandable,\n 'tw-pt-[60px]': hasActions && layout === 'stack' && !isSelectable,\n 'stash-table-row--accent': props.accentColor,\n 'tw-relative': props.accentColor,\n },\n ]\"\n data-test=\"stash-table-row\"\n v-bind=\"attrs\"\n >\n <TableCell\n v-if=\"isSelectable\"\n is-control\n class=\"stash-table-row__selection-cell tw-min-w-[48px]\"\n :class=\"classes['row-control-cell']\"\n data-test=\"stash-table-row|selection-cell\"\n >\n <Checkbox\n :class=\"classes['row-selection-checkbox']\"\n :checked=\"props.isSelected\"\n :disabled=\"props.isSelectDisabled\"\n :title=\"t('ll.select.self')\"\n @update:checked=\"emit('update:isSelected', $event)\"\n />\n </TableCell>\n <TableCell\n v-if=\"isRowExpandable && !hasCustomExpandToggle\"\n class=\"stash-table-row__toggle-expansion-cell tw-px-0\"\n data-test=\"stash-table-row|custom-expansion-cell\"\n is-control\n :class=\"classes['row-control-cell']\"\n >\n <ChevronToggle\n :aria-controls=\"rowId\"\n :aria-label=\"isRowExpanded ? t('ll.table.collapseRow') : t('ll.table.expandRow')\"\n :direction=\"isRowExpanded ? 'up' : 'down'\"\n :is-expanded=\"isRowExpanded\"\n @click=\"toggleExpand\"\n />\n </TableCell>\n <!-- @slot default -->\n <slot :is-row-expanded=\"isRowExpanded\" :toggle-expand=\"toggleExpand\"></slot>\n <!-- Displays a 4px accent on the left of the table row -->\n <div\n v-if=\"props.accentColor\"\n data-test=\"stash-table-row|accent\"\n :class=\"{\n 'tw-absolute': props.accentColor,\n [`tw-bg-${props.accentColor}`]: props.accentColor,\n 'tw-block': props.accentColor,\n 'tw-h-full': props.accentColor,\n 'tw-w-1': props.accentColor,\n 'tw-top-0': props.accentColor,\n 'tw-left-0': props.accentColor,\n }\"\n ></div>\n </tr>\n <tr\n v-if=\"isRowExpandable\"\n class=\"stash-table-row stash-table-row--expandable\"\n :class=\"classes['row-expansion']\"\n data-test=\"stash-table-row|expansion-row\"\n >\n <Expand\n is=\"td\"\n :id=\"rowId\"\n class=\"tw-border-none tw-bg-white tw-px-3 tw-py-0\"\n data-test=\"stash-table-row|expansion-cell\"\n :class=\"classes['row-expansion-content']\"\n :colspan=\"childCellCount\"\n :is-expanded=\"isRowExpanded\"\n >\n <!-- @slot expansion, for expandable content -->\n <slot name=\"expansion\"></slot>\n </Expand>\n </tr>\n</template>\n\n<style module>\n .root {\n border: 0;\n }\n\n /**\n * Only takes effect when hideExpansionDivider is true, for a softer collapse transition as the bottom border re-appears\n */\n .is-expandable > td {\n border-bottom-color: var(--color-ice-200);\n transition: border-bottom-color 0.5s;\n }\n\n .root--hidden-divider.is-expanded > td {\n transition: border-bottom-color 0s;\n /**\n * Removes the grey cell background for 'control' cells at lower breakpoints, letting the white of the tr come through.\n */\n border-bottom-color: transparent;\n }\n\n .layout--scroll {\n border-radius: 0;\n box-shadow: none !important;\n margin: 0;\n }\n\n .layout--scroll:last-of-type {\n border: 0;\n }\n\n .layout--scroll:last-of-type td {\n border-bottom: none;\n }\n\n .layout--stack {\n align-items: stretch;\n background-color: var(--color-white);\n column-gap: var(--grid-gutter);\n display: grid;\n grid-template-columns: repeat(12, 1fr);\n position: relative;\n row-gap: var(--grid-gutter);\n }\n\n .layout--stack:not(.is-expanded) {\n border-radius: theme('borderRadius.DEFAULT');\n transition: border-radius 0.5s;\n }\n\n .layout--stack.is-expanded {\n border-top-left-radius: theme('borderRadius.DEFAULT');\n border-top-right-radius: theme('borderRadius.DEFAULT');\n }\n\n .row-selection-checkbox label {\n padding: 0;\n vertical-align: middle;\n }\n\n .layout--stack .row-control-cell {\n display: flex;\n align-items: center;\n min-width: 0;\n }\n\n /* On mobile, display controls on their own row, pushing other cells below */\n .row-control-cell + :not(.row-control-cell) {\n grid-column-start: 1;\n }\n\n .row-expansion-content {\n box-shadow: inset 0 -1px 0 0 var(--color-ice-200);\n }\n\n .layout--stack + .row-expansion,\n .layout--stack + .row-expansion > .row-expansion-content {\n display: block;\n }\n\n .layout--stack + .row-expansion > .row-expansion-content {\n border-top: 1px solid var(--color-ice-200);\n border-bottom-left-radius: theme('borderRadius.DEFAULT');\n border-bottom-right-radius: theme('borderRadius.DEFAULT');\n margin-bottom: theme('spacing.6');\n }\n\n .layout--stack.root--hidden-divider + .row-expansion > .row-expansion-content {\n border-top: none;\n }\n\n /* On large screens, match the styles for layout-SCROLL */\n @media screen('lg') {\n .layout--stack {\n align-items: unset;\n background-color: unset;\n border: 0;\n border-bottom: 1px solid var(--color-ice-200);\n border-radius: 0;\n box-shadow: none;\n column-gap: unset;\n display: table-row;\n grid-template-columns: unset;\n row-gap: unset;\n }\n\n .layout--stack:last-of-type {\n border-bottom: 0;\n }\n\n .layout--stack .row-control-cell {\n display: table-cell;\n }\n\n .layout--stack + .row-expansion {\n display: table-row;\n }\n\n .layout--stack + .row-expansion > .row-expansion-content {\n border-top: unset;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n display: table-cell;\n margin-bottom: unset;\n }\n\n .row-control-cell + :not(.row-control-cell) {\n grid-column-start: unset;\n }\n }\n</style>\n"],"names":["props","__props","emit","__emit","attrs","useAttrs","classes","useCssModule","slots","_useSlots","tableInjection","inject","TABLE_INJECTION","hasActions","hasCustomExpandToggle","isExpandable","isSelectable","layout","isRowExpanded","ref","isRowExpandable","computed","childCellCount","count","toggleExpand","rowId","uniqueId","value","isExpanded","watch","_createElementVNode","_mergeProps","_unref","hideExpansionDivider","_createBlock","TableCell","_normalizeClass","_createVNode","Checkbox","t","_cache","$event","ChevronToggle","_renderSlot","_ctx","_createElementBlock","Expand"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAyBE,UAAMA,IAAQC,GAWRC,IAAOC,GAKPC,IAAQC,EAAA,GACRC,IAAUC,EAAA,GACVC,IAAQC,EAAA,GAKRC,IAAiBC,EAAOC,EAAgB,GAAG;AAEjD,QAAI,CAACF;AACH,YAAM,IAAI,MAAM,gDAAgD;AAGlE,UAAM,EAAE,YAAAG,GAAY,uBAAAC,GAAuB,cAAAC,GAAc,cAAAC,GAAc,QAAAC,MAAWP,GAE5EQ,IAAgBC,EAAInB,EAAM,UAAU,GACpCoB,IAAkBC,EAAS,MAAMN,EAAa,SAAS,CAAC,CAACP,EAAM,SAAS,GAExEc,IAAiBD,EAAS,MAAM;AACpC,UAAIE,IAAQf,EAAM,UAAU,EAAE,cAAAgB,EAAA,CAAc,EAAE,UAAU;AAExD,aAAIR,EAAa,UACfO,KAAS,IAGPH,EAAgB,SAAS,CAACN,EAAsB,UAClDS,KAAS,IAGJA;AAAA,IACT,CAAC,GACKE,IAAQC,EAAS,YAAY;AAEnC,aAASF,EAAaG,GAAiB;AACrC,UAAI,CAACP,EAAgB;AACnB,cAAM,IAAI,MAAM,kFAAkF;AAGpG,YAAMQ,IAAa,OAAOD,KAAU,YAAYA,IAAQ,CAACT,EAAc;AAEvE,MAAAA,EAAc,QAAQU,GACtB1B,EAAK,qBAAqB0B,CAAU;AAAA,IACtC;AAEA,WAAAC;AAAA,MACE,MAAM7B,EAAM;AAAA,MACZ,MAAMwB,EAAaxB,EAAM,UAAU;AAAA,IAAA;MAKrC8B,EAiEK,MAjELC,EAiEK;AAAA,QAhEH,QAAM,mBAAiB;AAAA,UACPC,EAAA1B,CAAA,EAAQ;AAAA,UAAY0B,EAAA1B,CAAA,aAAmB0B,EAAAf,CAAA,CAAM,EAAA;AAAA;YAAsB,CAAAe,EAAA1B,CAAA,qBAA2Bc,EAAA;AAAA,YAA0B,CAAAY,EAAA1B,CAAA,mBAAyBY,EAAA;AAAA,YAAwB,CAAAc,EAAA1B,CAAA,4BAAkC2B,EAAAA;AAAAA,2BAA6CD,EAAAf,CAAA,MAAM;AAAA,YAAwE,kDAAAe,EAAAf,CAAA,kBAAuBG,EAAA;AAAA,4BAAyCY,EAAAnB,CAAA,KAAcmB,EAAAf,CAAA,MAAM,WAAA,CAAiBe,EAAAhB,CAAA;AAAA,YAAiD,2BAAAhB,EAAM;AAAA,YAAoC,eAAAA,EAAM;AAAA,UAAA;AAAA;QAc5hB,aAAU;AAAA,MAAA,GACFgC,EAAA5B,CAAA,CAAK,GAAA;AAAA,QAGL4B,EAAAhB,CAAA,UADRkB,EAcYC,GAAA;AAAA;UAZV,cAAA;AAAA,UACA,OAAKC,EAAA,CAAC,mDACEJ,EAAA1B,CAAA,EAAO,kBAAA,CAAA,CAAA;AAAA,UACf,aAAU;AAAA,QAAA;qBAEV,MAME;AAAA,YANF+B,EAMEC,GAAA;AAAA,cALC,SAAON,EAAA1B,CAAA,EAAO,wBAAA,CAAA;AAAA,cACd,SAASN,EAAM;AAAA,cACf,UAAUA,EAAM;AAAA,cAChB,OAAOgC,EAAAO,CAAA,EAAC,gBAAA;AAAA,cACR,oBAAcC,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAEvC,EAAI,qBAAsBuC,CAAM;AAAA,YAAA;;;;QAI7CrB,EAAA,UAAoBY,EAAAlB,CAAA,UAD5BoB,EAcYC,GAAA;AAAA;UAZV,OAAKC,EAAA,CAAC,kDAGEJ,EAAA1B,CAAA,EAAO,kBAAA,CAAA,CAAA;AAAA,UAFf,aAAU;AAAA,UACV,cAAA;AAAA,QAAA;qBAGA,MAME;AAAA,YANF+B,EAMEK,GAAA;AAAA,cALC,iBAAeV,EAAAP,CAAA;AAAA,cACf,cAAYP,EAAA,QAAgBc,EAAAO,CAAA,4BAA4BP,EAAAO,CAAA,EAAC,oBAAA;AAAA,cACzD,WAAWrB,EAAA,QAAa,OAAA;AAAA,cACxB,eAAaA,EAAA;AAAA,cACb,SAAOM;AAAA,YAAA;;;;QAIZmB,EAA4EC,EAAA,QAAA,WAAA;AAAA,UAArE,eAAiB1B,EAAA;AAAA,UAAgB,cAAAM;AAAA,QAAA;QAGhCxB,EAAM,oBADd6C,EAYO,OAAA;AAAA;UAVL,aAAU;AAAA,UACT,OAAKT,EAAA;AAAA,YAA2B,eAAApC,EAAM;AAAA,YAA+B,CAAA,SAAAA,EAAM,WAAW,EAAA,GAAKA,EAAM;AAAA,YAAiC,YAAAA,EAAM;AAAA,YAAkC,aAAAA,EAAM;AAAA,YAA+B,UAAAA,EAAM;AAAA,YAAiC,YAAAA,EAAM;AAAA,YAAkC,aAAAA,EAAM;AAAA,UAAA;;;MAYjSoB,EAAA,cADRyB,EAkBK,MAAA;AAAA;QAhBH,OAAKT,EAAA,CAAC,+CACEJ,EAAA1B,CAAA,EAAO,eAAA,CAAA,CAAA;AAAA,QACf,aAAU;AAAA,MAAA;QAEV+B,EAWSS,GAAA;AAAA,UAVP,IAAG;AAAA,UACF,IAAId,EAAAP,CAAA;AAAA,UACL,OAAKW,EAAA,CAAC,8CAEEJ,EAAA1B,CAAA,EAAO,uBAAA,CAAA,CAAA;AAAA,UADf,aAAU;AAAA,UAET,SAASgB,EAAA;AAAA,UACT,eAAaJ,EAAA;AAAA,QAAA;qBAGd,MAA8B;AAAA,YAA9ByB,EAA8BC,EAAA,QAAA,WAAA;AAAA,UAAA;;;;;;;;;;;;;;;;;;;;"}
@@ -1,68 +1,27 @@
1
1
  import { ComponentOptionsMixin } from 'vue';
2
2
  import { ComponentProvideOptions } from 'vue';
3
3
  import { DefineComponent } from 'vue';
4
- import { ExtractPropTypes } from 'vue';
5
- import { PropType } from 'vue';
6
4
  import { PublicProps } from 'vue';
7
5
 
8
- declare type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
9
-
10
- declare type __VLS_Prettify<T> = {
11
- [K in keyof T]: T[K];
12
- } & {};
13
-
14
- declare type __VLS_TypePropsToRuntimeProps<T> = {
15
- [K in keyof T]-?: {} extends Pick<T, K> ? {
16
- type: PropType<__VLS_NonUndefinedable<T[K]>>;
17
- } : {
18
- type: PropType<T[K]>;
19
- required: true;
20
- };
21
- };
22
-
23
- declare type __VLS_WithDefaults<P, D> = {
24
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
25
- default: D[K];
26
- }> : P[K];
27
- };
28
-
29
6
  declare type __VLS_WithTemplateSlots<T, S> = T & {
30
7
  new (): {
31
8
  $slots: S;
32
9
  };
33
10
  };
34
11
 
35
- declare const _default: __VLS_WithTemplateSlots<DefineComponent<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TableRowProps>, {
36
- /**
37
- * If true, hides the divider between the parent row and expansion row
38
- */
39
- hideExpansionDivider: boolean;
40
- isExpanded: boolean;
41
- isSelected: boolean;
42
- isSelectDisabled: boolean;
43
- accentColor: undefined;
44
- }>>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
45
- "update:isSelected": (isChecked: boolean | (string | number)[]) => void;
46
- "update:isExpanded": (isExpanded: boolean) => void;
47
- }, string, PublicProps, Readonly<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TableRowProps>, {
48
- /**
49
- * If true, hides the divider between the parent row and expansion row
50
- */
51
- hideExpansionDivider: boolean;
52
- isExpanded: boolean;
53
- isSelected: boolean;
54
- isSelectDisabled: boolean;
55
- accentColor: undefined;
56
- }>>> & Readonly<{
12
+ declare const _default: __VLS_WithTemplateSlots<DefineComponent<TableRowProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
13
+ "update:isSelected": (isChecked: boolean | (string | number)[]) => any;
14
+ "update:isExpanded": (isExpanded: boolean) => any;
15
+ }, string, PublicProps, Readonly<TableRowProps> & Readonly<{
57
16
  "onUpdate:isSelected"?: ((isChecked: boolean | (string | number)[]) => any) | undefined;
58
17
  "onUpdate:isExpanded"?: ((isExpanded: boolean) => any) | undefined;
59
18
  }>, {
19
+ accentColor: "ice-700" | "white" | "black" | "red-500" | "orange-500" | "blue-500" | "green-500" | "purple-700" | "purple-500" | "purple-100" | "royal-700" | "royal-500" | "royal-100" | "blue-700" | "blue-100" | "teal-700" | "teal-500" | "teal-100" | "green-700" | "green-100" | "seafoam-700" | "seafoam-500" | "seafoam-100" | "yellow-700" | "yellow-500" | "yellow-100" | "orange-700" | "orange-100" | "red-700" | "red-100" | "ice-500" | "ice-200" | "ice-100";
60
20
  isExpanded: boolean;
61
21
  isSelected: boolean;
62
- accentColor: "ice-700" | "purple-700" | "purple-500" | "purple-100" | "royal-700" | "royal-500" | "royal-100" | "blue-700" | "blue-500" | "blue-100" | "teal-700" | "teal-500" | "teal-100" | "green-700" | "green-500" | "green-100" | "seafoam-700" | "seafoam-500" | "seafoam-100" | "yellow-700" | "yellow-500" | "yellow-100" | "orange-700" | "orange-500" | "orange-100" | "red-700" | "red-500" | "red-100" | "ice-500" | "ice-200" | "ice-100" | "white" | "black";
63
22
  hideExpansionDivider: boolean;
64
23
  isSelectDisabled: boolean;
65
- }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>, Readonly<{
24
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, Readonly<{
66
25
  default(props: {
67
26
  isRowExpanded?: boolean | undefined;
68
27
  toggleExpand: (value?: boolean | undefined) => void;
@@ -118,7 +77,7 @@ declare enum StashCommonColors {
118
77
  Black = "black"
119
78
  }
120
79
 
121
- export declare interface TableRowProps {
80
+ declare interface TableRowProps {
122
81
  hideExpansionDivider?: boolean;
123
82
  isExpanded?: boolean;
124
83
  isSelected?: boolean;
package/dist/Tabs.js CHANGED
@@ -1,5 +1,5 @@
1
- import { _ as s } from "./Tabs.vue_vue_type_script_setup_true_lang-CmnBP4i1.js";
2
- import { T as c, a as f } from "./Tabs.vue_vue_type_script_setup_true_lang-CmnBP4i1.js";
1
+ import { _ as s } from "./Tabs.vue_vue_type_script_setup_true_lang-Dprx064Y.js";
2
+ import { T as c, a as f } from "./Tabs.vue_vue_type_script_setup_true_lang-Dprx064Y.js";
3
3
  import { _ as a } from "./_plugin-vue_export-helper-CHgC5LLL.js";
4
4
  const t = {
5
5
  "menu-tab": "_menu-tab_frbn6_2"
@@ -1,32 +1,27 @@
1
+ import { AllowedComponentProps } from 'vue';
2
+ import { ComponentCustomProperties } from 'vue';
3
+ import { ComponentCustomProps } from 'vue';
4
+ import { ComponentInternalInstance } from 'vue';
5
+ import { ComponentOptionsBase } from 'vue';
1
6
  import { ComponentOptionsMixin } from 'vue';
2
7
  import { ComponentProvideOptions } from 'vue';
8
+ import { ComponentPublicInstance } from 'vue';
3
9
  import { ComputedRef } from 'vue';
10
+ import { DebuggerEvent } from 'vue';
4
11
  import { DefineComponent } from 'vue';
5
- import { ExtractPropTypes } from 'vue';
12
+ import { DropdownOffset } from '../Dropdown/Dropdown.vue';
13
+ import { DropdownProps } from '../Dropdown/Dropdown.vue';
14
+ import { GlobalComponents } from 'vue';
15
+ import { GlobalDirectives } from 'vue';
6
16
  import { InjectionKey } from 'vue';
7
- import { PropType } from 'vue';
17
+ import { nextTick } from 'vue';
18
+ import { OnCleanup } from '@vue/reactivity';
8
19
  import { PublicProps } from 'vue';
9
-
10
- declare type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
11
-
12
- declare type __VLS_Prettify<T> = {
13
- [K in keyof T]: T[K];
14
- } & {};
15
-
16
- declare type __VLS_TypePropsToRuntimeProps<T> = {
17
- [K in keyof T]-?: {} extends Pick<T, K> ? {
18
- type: PropType<__VLS_NonUndefinedable<T[K]>>;
19
- } : {
20
- type: PropType<T[K]>;
21
- required: true;
22
- };
23
- };
24
-
25
- declare type __VLS_WithDefaults<P, D> = {
26
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
27
- default: D[K];
28
- }> : P[K];
29
- };
20
+ import { ShallowUnwrapRef } from 'vue';
21
+ import { Slot } from 'vue';
22
+ import { VNodeProps } from 'vue';
23
+ import { WatchOptions } from 'vue';
24
+ import { WatchStopHandle } from 'vue';
30
25
 
31
26
  declare type __VLS_WithTemplateSlots<T, S> = T & {
32
27
  new (): {
@@ -34,17 +29,113 @@ declare type __VLS_WithTemplateSlots<T, S> = T & {
34
29
  };
35
30
  };
36
31
 
37
- declare const _default: __VLS_WithTemplateSlots<DefineComponent<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TabsProps>, {
38
- variant: TabVariant;
39
- }>>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
40
- "update:activeTab": (newTabValue: string) => void;
41
- }, string, PublicProps, Readonly<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<TabsProps>, {
42
- variant: TabVariant;
43
- }>>> & Readonly<{
32
+ declare const _default: __VLS_WithTemplateSlots<DefineComponent<TabsProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
33
+ "update:activeTab": (newTabValue: string) => any;
34
+ }, string, PublicProps, Readonly<TabsProps> & Readonly<{
44
35
  "onUpdate:activeTab"?: ((newTabValue: string) => any) | undefined;
45
36
  }>, {
46
37
  variant: "line" | "enclosed";
47
- }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>, {
38
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {
39
+ tabListEl: HTMLUListElement;
40
+ moreDropdownEl: ({
41
+ $: ComponentInternalInstance;
42
+ $data: {};
43
+ $props: {
44
+ readonly align?: "right" | "left" | undefined;
45
+ readonly label?: string | undefined;
46
+ readonly closeManually?: boolean | undefined;
47
+ readonly offset?: DropdownOffset | undefined;
48
+ readonly reattach?: boolean | undefined;
49
+ readonly contentClass?: string | string[] | undefined;
50
+ readonly fluidContent?: boolean | undefined;
51
+ readonly onToggle?: ((isActive: boolean) => any) | undefined;
52
+ readonly onDismiss?: (() => any) | undefined;
53
+ } & VNodeProps & AllowedComponentProps & ComponentCustomProps;
54
+ $attrs: {
55
+ [x: string]: unknown;
56
+ };
57
+ $refs: {
58
+ [x: string]: unknown;
59
+ } & {
60
+ dropdownRef: HTMLDivElement;
61
+ contentRef: HTMLDivElement;
62
+ };
63
+ $slots: Readonly<{
64
+ [name: string]: Slot<any> | undefined;
65
+ }>;
66
+ $root: ComponentPublicInstance< {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null;
67
+ $parent: ComponentPublicInstance< {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null;
68
+ $host: Element | null;
69
+ $emit: ((event: "toggle", isActive: boolean) => void) & ((event: "dismiss") => void);
70
+ $el: HTMLDivElement;
71
+ $options: ComponentOptionsBase<Readonly<DropdownProps> & Readonly<{
72
+ onToggle?: ((isActive: boolean) => any) | undefined;
73
+ onDismiss?: (() => any) | undefined;
74
+ }>, {
75
+ isActive: ComputedRef<boolean>;
76
+ toggle: () => Promise<void>;
77
+ dismiss: (event?: Event | undefined) => void;
78
+ }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
79
+ toggle: (isActive: boolean) => any;
80
+ dismiss: () => any;
81
+ }, string, {
82
+ label: string;
83
+ align: "right" | "left";
84
+ offset: DropdownOffset;
85
+ closeManually: boolean;
86
+ reattach: boolean;
87
+ contentClass: string | string[];
88
+ fluidContent: boolean;
89
+ }, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & {
90
+ beforeCreate?: ((() => void) | (() => void)[]) | undefined;
91
+ created?: ((() => void) | (() => void)[]) | undefined;
92
+ beforeMount?: ((() => void) | (() => void)[]) | undefined;
93
+ mounted?: ((() => void) | (() => void)[]) | undefined;
94
+ beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
95
+ updated?: ((() => void) | (() => void)[]) | undefined;
96
+ activated?: ((() => void) | (() => void)[]) | undefined;
97
+ deactivated?: ((() => void) | (() => void)[]) | undefined;
98
+ beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
99
+ beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
100
+ destroyed?: ((() => void) | (() => void)[]) | undefined;
101
+ unmounted?: ((() => void) | (() => void)[]) | undefined;
102
+ renderTracked?: (((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[]) | undefined;
103
+ renderTriggered?: (((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[]) | undefined;
104
+ errorCaptured?: (((err: unknown, instance: ComponentPublicInstance< {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance< {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void)[]) | undefined;
105
+ };
106
+ $forceUpdate: () => void;
107
+ $nextTick: nextTick;
108
+ $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: OnCleanup) => any : (args_0: any, args_1: any, args_2: OnCleanup) => any, options?: WatchOptions<boolean> | undefined): WatchStopHandle;
109
+ } & Readonly<{
110
+ label: string;
111
+ align: "right" | "left";
112
+ offset: DropdownOffset;
113
+ closeManually: boolean;
114
+ reattach: boolean;
115
+ contentClass: string | string[];
116
+ fluidContent: boolean;
117
+ }> & Omit<Readonly<DropdownProps> & Readonly<{
118
+ onToggle?: ((isActive: boolean) => any) | undefined;
119
+ onDismiss?: (() => any) | undefined;
120
+ }>, "toggle" | "dismiss" | "isActive" | ("label" | "align" | "offset" | "closeManually" | "reattach" | "contentClass" | "fluidContent")> & ShallowUnwrapRef< {
121
+ isActive: ComputedRef<boolean>;
122
+ toggle: () => Promise<void>;
123
+ dismiss: (event?: Event | undefined) => void;
124
+ }> & {} & ComponentCustomProperties & {} & {
125
+ $slots: {
126
+ toggle?(_: {
127
+ isActive: boolean;
128
+ toggle: () => Promise<void>;
129
+ }): any;
130
+ default?(_: {
131
+ dismiss: (event?: Event | undefined) => void;
132
+ isActive: boolean;
133
+ }): any;
134
+ };
135
+ }) | null;
136
+ moreDropdownMenuEl: HTMLUListElement;
137
+ }, HTMLDivElement>, {
138
+ default?(_: {}): any;
48
139
  default?(_: {}): any;
49
140
  }>;
50
141
  export default _default;