@treeui/vue 0.8.0 → 0.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 (545) hide show
  1. package/README.md +1 -1
  2. package/dist/components/TAccordion.cjs +2 -0
  3. package/dist/components/TAccordion.cjs.map +1 -0
  4. package/dist/components/TAccordion.js +7 -0
  5. package/dist/components/TAccordion.js.map +1 -0
  6. package/dist/components/TAccordion.vue_vue_type_script_setup_true_lang.cjs +2 -0
  7. package/dist/components/TAccordion.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  8. package/dist/components/TAccordion.vue_vue_type_script_setup_true_lang.js +97 -0
  9. package/dist/components/TAccordion.vue_vue_type_script_setup_true_lang.js.map +1 -0
  10. package/dist/components/TAccordionItem.cjs +2 -0
  11. package/dist/components/TAccordionItem.cjs.map +1 -0
  12. package/dist/components/TAccordionItem.js +7 -0
  13. package/dist/components/TAccordionItem.js.map +1 -0
  14. package/dist/components/TAccordionItem.vue_vue_type_script_setup_true_lang.cjs +2 -0
  15. package/dist/components/TAccordionItem.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  16. package/dist/components/TAccordionItem.vue_vue_type_script_setup_true_lang.js +83 -0
  17. package/dist/components/TAccordionItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
  18. package/dist/components/TAlert.cjs +2 -0
  19. package/dist/components/TAlert.cjs.map +1 -0
  20. package/dist/components/TAlert.js +7 -0
  21. package/dist/components/TAlert.js.map +1 -0
  22. package/dist/components/TAlert.vue_vue_type_script_setup_true_lang.cjs +2 -0
  23. package/dist/components/TAlert.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  24. package/dist/components/TAlert.vue_vue_type_script_setup_true_lang.js +57 -0
  25. package/dist/components/TAlert.vue_vue_type_script_setup_true_lang.js.map +1 -0
  26. package/dist/components/TAvatar.cjs +2 -0
  27. package/dist/components/TAvatar.cjs.map +1 -0
  28. package/dist/components/TAvatar.js +7 -0
  29. package/dist/components/TAvatar.js.map +1 -0
  30. package/dist/components/TAvatar.vue_vue_type_script_setup_true_lang.cjs +2 -0
  31. package/dist/components/TAvatar.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  32. package/dist/components/TAvatar.vue_vue_type_script_setup_true_lang.js +46 -0
  33. package/dist/components/TAvatar.vue_vue_type_script_setup_true_lang.js.map +1 -0
  34. package/dist/components/TBadge.cjs +2 -0
  35. package/dist/components/TBadge.cjs.map +1 -0
  36. package/dist/components/TBadge.js +7 -0
  37. package/dist/components/TBadge.js.map +1 -0
  38. package/dist/components/TBadge.vue_vue_type_script_setup_true_lang.cjs +2 -0
  39. package/dist/components/TBadge.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  40. package/dist/components/TBadge.vue_vue_type_script_setup_true_lang.js +27 -0
  41. package/dist/components/TBadge.vue_vue_type_script_setup_true_lang.js.map +1 -0
  42. package/dist/components/TBreadcrumb.cjs +2 -0
  43. package/dist/components/TBreadcrumb.cjs.map +1 -0
  44. package/dist/components/TBreadcrumb.js +7 -0
  45. package/dist/components/TBreadcrumb.js.map +1 -0
  46. package/dist/components/TBreadcrumb.vue_vue_type_script_setup_true_lang.cjs +2 -0
  47. package/dist/components/TBreadcrumb.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  48. package/dist/components/TBreadcrumb.vue_vue_type_script_setup_true_lang.js +20 -0
  49. package/dist/components/TBreadcrumb.vue_vue_type_script_setup_true_lang.js.map +1 -0
  50. package/dist/components/TBreadcrumbItem.cjs +2 -0
  51. package/dist/components/TBreadcrumbItem.cjs.map +1 -0
  52. package/dist/components/TBreadcrumbItem.js +7 -0
  53. package/dist/components/TBreadcrumbItem.js.map +1 -0
  54. package/dist/components/TBreadcrumbItem.vue_vue_type_script_setup_true_lang.cjs +2 -0
  55. package/dist/components/TBreadcrumbItem.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  56. package/dist/components/TBreadcrumbItem.vue_vue_type_script_setup_true_lang.js +28 -0
  57. package/dist/components/TBreadcrumbItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
  58. package/dist/components/TButton.cjs +2 -0
  59. package/dist/components/TButton.cjs.map +1 -0
  60. package/dist/components/TButton.js +7 -0
  61. package/dist/components/TButton.js.map +1 -0
  62. package/dist/components/TButton.vue_vue_type_script_setup_true_lang.cjs +2 -0
  63. package/dist/components/TButton.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  64. package/dist/components/TButton.vue_vue_type_script_setup_true_lang.js +91 -0
  65. package/dist/components/TButton.vue_vue_type_script_setup_true_lang.js.map +1 -0
  66. package/dist/components/TCard.cjs +2 -0
  67. package/dist/components/TCard.cjs.map +1 -0
  68. package/dist/components/TCard.js +7 -0
  69. package/dist/components/TCard.js.map +1 -0
  70. package/dist/components/TCard.vue_vue_type_script_setup_true_lang.cjs +2 -0
  71. package/dist/components/TCard.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  72. package/dist/components/TCard.vue_vue_type_script_setup_true_lang.js +42 -0
  73. package/dist/components/TCard.vue_vue_type_script_setup_true_lang.js.map +1 -0
  74. package/dist/components/TCheckbox.cjs +2 -0
  75. package/dist/components/TCheckbox.cjs.map +1 -0
  76. package/dist/components/TCheckbox.js +7 -0
  77. package/dist/components/TCheckbox.js.map +1 -0
  78. package/dist/components/TCheckbox.vue_vue_type_script_setup_true_lang.cjs +2 -0
  79. package/dist/components/TCheckbox.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  80. package/dist/components/TCheckbox.vue_vue_type_script_setup_true_lang.js +106 -0
  81. package/dist/components/TCheckbox.vue_vue_type_script_setup_true_lang.js.map +1 -0
  82. package/dist/components/TCombobox.cjs +2 -0
  83. package/dist/components/TCombobox.cjs.map +1 -0
  84. package/dist/components/TCombobox.js +7 -0
  85. package/dist/components/TCombobox.js.map +1 -0
  86. package/dist/components/TCombobox.vue_vue_type_script_setup_true_lang.cjs +2 -0
  87. package/dist/components/TCombobox.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  88. package/dist/components/TCombobox.vue_vue_type_script_setup_true_lang.js +282 -0
  89. package/dist/components/TCombobox.vue_vue_type_script_setup_true_lang.js.map +1 -0
  90. package/dist/components/TConfirmDialog.cjs +2 -0
  91. package/dist/components/TConfirmDialog.cjs.map +1 -0
  92. package/dist/components/TConfirmDialog.js +7 -0
  93. package/dist/components/TConfirmDialog.js.map +1 -0
  94. package/dist/components/TConfirmDialog.vue_vue_type_script_setup_true_lang.cjs +2 -0
  95. package/dist/components/TConfirmDialog.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  96. package/dist/components/TConfirmDialog.vue_vue_type_script_setup_true_lang.js +145 -0
  97. package/dist/components/TConfirmDialog.vue_vue_type_script_setup_true_lang.js.map +1 -0
  98. package/dist/components/TContainer.cjs +2 -0
  99. package/dist/components/TContainer.cjs.map +1 -0
  100. package/dist/components/TContainer.js +7 -0
  101. package/dist/components/TContainer.js.map +1 -0
  102. package/dist/components/TContainer.vue_vue_type_script_setup_true_lang.cjs +2 -0
  103. package/dist/components/TContainer.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  104. package/dist/components/TContainer.vue_vue_type_script_setup_true_lang.js +43 -0
  105. package/dist/components/TContainer.vue_vue_type_script_setup_true_lang.js.map +1 -0
  106. package/dist/components/TContextMenu.cjs +2 -0
  107. package/dist/components/TContextMenu.cjs.map +1 -0
  108. package/dist/components/TContextMenu.js +7 -0
  109. package/dist/components/TContextMenu.js.map +1 -0
  110. package/dist/components/TContextMenu.vue_vue_type_script_setup_true_lang.cjs +2 -0
  111. package/dist/components/TContextMenu.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  112. package/dist/components/TContextMenu.vue_vue_type_script_setup_true_lang.js +149 -0
  113. package/dist/components/TContextMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
  114. package/dist/components/TDatePicker.cjs +2 -0
  115. package/dist/components/TDatePicker.cjs.map +1 -0
  116. package/dist/components/TDatePicker.js +7 -0
  117. package/dist/components/TDatePicker.js.map +1 -0
  118. package/dist/components/TDatePicker.vue_vue_type_script_setup_true_lang.cjs +2 -0
  119. package/dist/components/TDatePicker.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  120. package/dist/components/TDatePicker.vue_vue_type_script_setup_true_lang.js +305 -0
  121. package/dist/components/TDatePicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
  122. package/dist/components/TDateTimePicker.cjs +2 -0
  123. package/dist/components/TDateTimePicker.cjs.map +1 -0
  124. package/dist/components/TDateTimePicker.js +7 -0
  125. package/dist/components/TDateTimePicker.js.map +1 -0
  126. package/dist/components/TDateTimePicker.vue_vue_type_script_setup_true_lang.cjs +2 -0
  127. package/dist/components/TDateTimePicker.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  128. package/dist/components/TDateTimePicker.vue_vue_type_script_setup_true_lang.js +409 -0
  129. package/dist/components/TDateTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
  130. package/dist/components/TDivider.cjs +2 -0
  131. package/dist/components/TDivider.cjs.map +1 -0
  132. package/dist/components/TDivider.js +7 -0
  133. package/dist/components/TDivider.js.map +1 -0
  134. package/dist/components/TDivider.vue_vue_type_script_setup_true_lang.cjs +2 -0
  135. package/dist/components/TDivider.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  136. package/dist/components/TDivider.vue_vue_type_script_setup_true_lang.js +30 -0
  137. package/dist/components/TDivider.vue_vue_type_script_setup_true_lang.js.map +1 -0
  138. package/dist/components/TDrawer.cjs +2 -0
  139. package/dist/components/TDrawer.cjs.map +1 -0
  140. package/dist/components/TDrawer.js +7 -0
  141. package/dist/components/TDrawer.js.map +1 -0
  142. package/dist/components/TDrawer.vue_vue_type_script_setup_true_lang.cjs +2 -0
  143. package/dist/components/TDrawer.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  144. package/dist/components/TDrawer.vue_vue_type_script_setup_true_lang.js +168 -0
  145. package/dist/components/TDrawer.vue_vue_type_script_setup_true_lang.js.map +1 -0
  146. package/dist/components/TDropdown.cjs +2 -0
  147. package/dist/components/TDropdown.cjs.map +1 -0
  148. package/dist/components/TDropdown.js +7 -0
  149. package/dist/components/TDropdown.js.map +1 -0
  150. package/dist/components/TDropdown.vue.d.ts +3 -0
  151. package/dist/components/TDropdown.vue.d.ts.map +1 -1
  152. package/dist/components/TDropdown.vue_vue_type_script_setup_true_lang.cjs +2 -0
  153. package/dist/components/TDropdown.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  154. package/dist/components/TDropdown.vue_vue_type_script_setup_true_lang.js +176 -0
  155. package/dist/components/TDropdown.vue_vue_type_script_setup_true_lang.js.map +1 -0
  156. package/dist/components/TEmptyState.cjs +2 -0
  157. package/dist/components/TEmptyState.cjs.map +1 -0
  158. package/dist/components/TEmptyState.js +7 -0
  159. package/dist/components/TEmptyState.js.map +1 -0
  160. package/dist/components/TEmptyState.vue_vue_type_script_setup_true_lang.cjs +2 -0
  161. package/dist/components/TEmptyState.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  162. package/dist/components/TEmptyState.vue_vue_type_script_setup_true_lang.js +64 -0
  163. package/dist/components/TEmptyState.vue_vue_type_script_setup_true_lang.js.map +1 -0
  164. package/dist/components/TFileUpload.cjs +2 -0
  165. package/dist/components/TFileUpload.cjs.map +1 -0
  166. package/dist/components/TFileUpload.js +7 -0
  167. package/dist/components/TFileUpload.js.map +1 -0
  168. package/dist/components/TFileUpload.vue_vue_type_script_setup_true_lang.cjs +2 -0
  169. package/dist/components/TFileUpload.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  170. package/dist/components/TFileUpload.vue_vue_type_script_setup_true_lang.js +284 -0
  171. package/dist/components/TFileUpload.vue_vue_type_script_setup_true_lang.js.map +1 -0
  172. package/dist/components/TFormField.cjs +2 -0
  173. package/dist/components/TFormField.cjs.map +1 -0
  174. package/dist/components/TFormField.js +7 -0
  175. package/dist/components/TFormField.js.map +1 -0
  176. package/dist/components/TFormField.vue_vue_type_script_setup_true_lang.cjs +2 -0
  177. package/dist/components/TFormField.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  178. package/dist/components/TFormField.vue_vue_type_script_setup_true_lang.js +63 -0
  179. package/dist/components/TFormField.vue_vue_type_script_setup_true_lang.js.map +1 -0
  180. package/dist/components/TGrid.cjs +2 -0
  181. package/dist/components/TGrid.cjs.map +1 -0
  182. package/dist/components/TGrid.js +7 -0
  183. package/dist/components/TGrid.js.map +1 -0
  184. package/dist/components/TGrid.vue.d.ts +1 -1
  185. package/dist/components/TGrid.vue.d.ts.map +1 -1
  186. package/dist/components/TGrid.vue_vue_type_script_setup_true_lang.cjs +2 -0
  187. package/dist/components/TGrid.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  188. package/dist/components/TGrid.vue_vue_type_script_setup_true_lang.js +47 -0
  189. package/dist/components/TGrid.vue_vue_type_script_setup_true_lang.js.map +1 -0
  190. package/dist/components/TIcon.cjs +2 -0
  191. package/dist/components/TIcon.cjs.map +1 -0
  192. package/dist/components/TIcon.js +7 -0
  193. package/dist/components/TIcon.js.map +1 -0
  194. package/dist/components/TIcon.vue_vue_type_script_setup_true_lang.cjs +2 -0
  195. package/dist/components/TIcon.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  196. package/dist/components/TIcon.vue_vue_type_script_setup_true_lang.js +39 -0
  197. package/dist/components/TIcon.vue_vue_type_script_setup_true_lang.js.map +1 -0
  198. package/dist/components/TInput.cjs +2 -0
  199. package/dist/components/TInput.cjs.map +1 -0
  200. package/dist/components/TInput.js +7 -0
  201. package/dist/components/TInput.js.map +1 -0
  202. package/dist/components/TInput.vue_vue_type_script_setup_true_lang.cjs +2 -0
  203. package/dist/components/TInput.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  204. package/dist/components/TInput.vue_vue_type_script_setup_true_lang.js +80 -0
  205. package/dist/components/TInput.vue_vue_type_script_setup_true_lang.js.map +1 -0
  206. package/dist/components/TLink.cjs +2 -0
  207. package/dist/components/TLink.cjs.map +1 -0
  208. package/dist/components/TLink.js +7 -0
  209. package/dist/components/TLink.js.map +1 -0
  210. package/dist/components/TLink.vue_vue_type_script_setup_true_lang.cjs +2 -0
  211. package/dist/components/TLink.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  212. package/dist/components/TLink.vue_vue_type_script_setup_true_lang.js +47 -0
  213. package/dist/components/TLink.vue_vue_type_script_setup_true_lang.js.map +1 -0
  214. package/dist/components/TMarkdownEditor.cjs +2 -0
  215. package/dist/components/TMarkdownEditor.cjs.map +1 -0
  216. package/dist/components/TMarkdownEditor.js +7 -0
  217. package/dist/components/TMarkdownEditor.js.map +1 -0
  218. package/dist/components/TMarkdownEditor.vue_vue_type_script_setup_true_lang.cjs +12 -0
  219. package/dist/components/TMarkdownEditor.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  220. package/dist/components/TMarkdownEditor.vue_vue_type_script_setup_true_lang.js +315 -0
  221. package/dist/components/TMarkdownEditor.vue_vue_type_script_setup_true_lang.js.map +1 -0
  222. package/dist/components/TModal.cjs +2 -0
  223. package/dist/components/TModal.cjs.map +1 -0
  224. package/dist/components/TModal.js +7 -0
  225. package/dist/components/TModal.js.map +1 -0
  226. package/dist/components/TModal.vue_vue_type_script_setup_true_lang.cjs +2 -0
  227. package/dist/components/TModal.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  228. package/dist/components/TModal.vue_vue_type_script_setup_true_lang.js +163 -0
  229. package/dist/components/TModal.vue_vue_type_script_setup_true_lang.js.map +1 -0
  230. package/dist/components/TMultiSelect.cjs +2 -0
  231. package/dist/components/TMultiSelect.cjs.map +1 -0
  232. package/dist/components/TMultiSelect.js +7 -0
  233. package/dist/components/TMultiSelect.js.map +1 -0
  234. package/dist/components/TMultiSelect.vue_vue_type_script_setup_true_lang.cjs +2 -0
  235. package/dist/components/TMultiSelect.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  236. package/dist/components/TMultiSelect.vue_vue_type_script_setup_true_lang.js +282 -0
  237. package/dist/components/TMultiSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
  238. package/dist/components/TNavMenu.cjs +2 -0
  239. package/dist/components/TNavMenu.cjs.map +1 -0
  240. package/dist/components/TNavMenu.js +7 -0
  241. package/dist/components/TNavMenu.js.map +1 -0
  242. package/dist/components/TNavMenu.vue_vue_type_script_setup_true_lang.cjs +2 -0
  243. package/dist/components/TNavMenu.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  244. package/dist/components/TNavMenu.vue_vue_type_script_setup_true_lang.js +151 -0
  245. package/dist/components/TNavMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
  246. package/dist/components/TNavbar.cjs +2 -0
  247. package/dist/components/TNavbar.cjs.map +1 -0
  248. package/dist/components/TNavbar.js +7 -0
  249. package/dist/components/TNavbar.js.map +1 -0
  250. package/dist/components/TNavbar.vue_vue_type_script_setup_true_lang.cjs +2 -0
  251. package/dist/components/TNavbar.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  252. package/dist/components/TNavbar.vue_vue_type_script_setup_true_lang.js +61 -0
  253. package/dist/components/TNavbar.vue_vue_type_script_setup_true_lang.js.map +1 -0
  254. package/dist/components/TNumberInput.cjs +2 -0
  255. package/dist/components/TNumberInput.cjs.map +1 -0
  256. package/dist/components/TNumberInput.js +7 -0
  257. package/dist/components/TNumberInput.js.map +1 -0
  258. package/dist/components/TNumberInput.vue_vue_type_script_setup_true_lang.cjs +2 -0
  259. package/dist/components/TNumberInput.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  260. package/dist/components/TNumberInput.vue_vue_type_script_setup_true_lang.js +145 -0
  261. package/dist/components/TNumberInput.vue_vue_type_script_setup_true_lang.js.map +1 -0
  262. package/dist/components/TPagination.cjs +2 -0
  263. package/dist/components/TPagination.cjs.map +1 -0
  264. package/dist/components/TPagination.js +7 -0
  265. package/dist/components/TPagination.js.map +1 -0
  266. package/dist/components/TPagination.vue_vue_type_script_setup_true_lang.cjs +2 -0
  267. package/dist/components/TPagination.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  268. package/dist/components/TPagination.vue_vue_type_script_setup_true_lang.js +105 -0
  269. package/dist/components/TPagination.vue_vue_type_script_setup_true_lang.js.map +1 -0
  270. package/dist/components/TPopover.cjs +2 -0
  271. package/dist/components/TPopover.cjs.map +1 -0
  272. package/dist/components/TPopover.js +7 -0
  273. package/dist/components/TPopover.js.map +1 -0
  274. package/dist/components/TPopover.vue_vue_type_script_setup_true_lang.cjs +2 -0
  275. package/dist/components/TPopover.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  276. package/dist/components/TPopover.vue_vue_type_script_setup_true_lang.js +106 -0
  277. package/dist/components/TPopover.vue_vue_type_script_setup_true_lang.js.map +1 -0
  278. package/dist/components/TPricing.cjs +2 -0
  279. package/dist/components/TPricing.cjs.map +1 -0
  280. package/dist/components/TPricing.js +7 -0
  281. package/dist/components/TPricing.js.map +1 -0
  282. package/dist/components/TPricing.vue_vue_type_script_setup_true_lang.cjs +2 -0
  283. package/dist/components/TPricing.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  284. package/dist/components/TPricing.vue_vue_type_script_setup_true_lang.js +33 -0
  285. package/dist/components/TPricing.vue_vue_type_script_setup_true_lang.js.map +1 -0
  286. package/dist/components/TPricingCard.cjs +2 -0
  287. package/dist/components/TPricingCard.cjs.map +1 -0
  288. package/dist/components/TPricingCard.js +7 -0
  289. package/dist/components/TPricingCard.js.map +1 -0
  290. package/dist/components/TPricingCard.vue_vue_type_script_setup_true_lang.cjs +2 -0
  291. package/dist/components/TPricingCard.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  292. package/dist/components/TPricingCard.vue_vue_type_script_setup_true_lang.js +93 -0
  293. package/dist/components/TPricingCard.vue_vue_type_script_setup_true_lang.js.map +1 -0
  294. package/dist/components/TProgress.cjs +2 -0
  295. package/dist/components/TProgress.cjs.map +1 -0
  296. package/dist/components/TProgress.js +7 -0
  297. package/dist/components/TProgress.js.map +1 -0
  298. package/dist/components/TProgress.vue_vue_type_script_setup_true_lang.cjs +2 -0
  299. package/dist/components/TProgress.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  300. package/dist/components/TProgress.vue_vue_type_script_setup_true_lang.js +33 -0
  301. package/dist/components/TProgress.vue_vue_type_script_setup_true_lang.js.map +1 -0
  302. package/dist/components/TRadio.cjs +2 -0
  303. package/dist/components/TRadio.cjs.map +1 -0
  304. package/dist/components/TRadio.js +7 -0
  305. package/dist/components/TRadio.js.map +1 -0
  306. package/dist/components/TRadio.vue_vue_type_script_setup_true_lang.cjs +2 -0
  307. package/dist/components/TRadio.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  308. package/dist/components/TRadio.vue_vue_type_script_setup_true_lang.js +73 -0
  309. package/dist/components/TRadio.vue_vue_type_script_setup_true_lang.js.map +1 -0
  310. package/dist/components/TRadioGroup.cjs +2 -0
  311. package/dist/components/TRadioGroup.cjs.map +1 -0
  312. package/dist/components/TRadioGroup.js +7 -0
  313. package/dist/components/TRadioGroup.js.map +1 -0
  314. package/dist/components/TRadioGroup.vue_vue_type_script_setup_true_lang.cjs +2 -0
  315. package/dist/components/TRadioGroup.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  316. package/dist/components/TRadioGroup.vue_vue_type_script_setup_true_lang.js +46 -0
  317. package/dist/components/TRadioGroup.vue_vue_type_script_setup_true_lang.js.map +1 -0
  318. package/dist/components/TSelect.cjs +2 -0
  319. package/dist/components/TSelect.cjs.map +1 -0
  320. package/dist/components/TSelect.js +7 -0
  321. package/dist/components/TSelect.js.map +1 -0
  322. package/dist/components/TSelect.vue.d.ts +2 -0
  323. package/dist/components/TSelect.vue.d.ts.map +1 -1
  324. package/dist/components/TSelect.vue_vue_type_script_setup_true_lang.cjs +2 -0
  325. package/dist/components/TSelect.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  326. package/dist/components/TSelect.vue_vue_type_script_setup_true_lang.js +238 -0
  327. package/dist/components/TSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
  328. package/dist/components/TSelectableList.cjs +2 -0
  329. package/dist/components/TSelectableList.cjs.map +1 -0
  330. package/dist/components/TSelectableList.js +7 -0
  331. package/dist/components/TSelectableList.js.map +1 -0
  332. package/dist/components/TSelectableList.vue_vue_type_script_setup_true_lang.cjs +2 -0
  333. package/dist/components/TSelectableList.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  334. package/dist/components/TSelectableList.vue_vue_type_script_setup_true_lang.js +133 -0
  335. package/dist/components/TSelectableList.vue_vue_type_script_setup_true_lang.js.map +1 -0
  336. package/dist/components/TSidebar.cjs +2 -0
  337. package/dist/components/TSidebar.cjs.map +1 -0
  338. package/dist/components/TSidebar.js +7 -0
  339. package/dist/components/TSidebar.js.map +1 -0
  340. package/dist/components/TSidebar.vue_vue_type_script_setup_true_lang.cjs +2 -0
  341. package/dist/components/TSidebar.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  342. package/dist/components/TSidebar.vue_vue_type_script_setup_true_lang.js +98 -0
  343. package/dist/components/TSidebar.vue_vue_type_script_setup_true_lang.js.map +1 -0
  344. package/dist/components/TSkeleton.cjs +2 -0
  345. package/dist/components/TSkeleton.cjs.map +1 -0
  346. package/dist/components/TSkeleton.js +7 -0
  347. package/dist/components/TSkeleton.js.map +1 -0
  348. package/dist/components/TSkeleton.vue_vue_type_script_setup_true_lang.cjs +2 -0
  349. package/dist/components/TSkeleton.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  350. package/dist/components/TSkeleton.vue_vue_type_script_setup_true_lang.js +25 -0
  351. package/dist/components/TSkeleton.vue_vue_type_script_setup_true_lang.js.map +1 -0
  352. package/dist/components/TSpinner.cjs +2 -0
  353. package/dist/components/TSpinner.cjs.map +1 -0
  354. package/dist/components/TSpinner.js +7 -0
  355. package/dist/components/TSpinner.js.map +1 -0
  356. package/dist/components/TSpinner.vue_vue_type_script_setup_true_lang.cjs +2 -0
  357. package/dist/components/TSpinner.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  358. package/dist/components/TSpinner.vue_vue_type_script_setup_true_lang.js +24 -0
  359. package/dist/components/TSpinner.vue_vue_type_script_setup_true_lang.js.map +1 -0
  360. package/dist/components/TStack.cjs +2 -0
  361. package/dist/components/TStack.cjs.map +1 -0
  362. package/dist/components/TStack.js +7 -0
  363. package/dist/components/TStack.js.map +1 -0
  364. package/dist/components/TStack.vue.d.ts +1 -1
  365. package/dist/components/TStack.vue.d.ts.map +1 -1
  366. package/dist/components/TStack.vue_vue_type_script_setup_true_lang.cjs +2 -0
  367. package/dist/components/TStack.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  368. package/dist/components/TStack.vue_vue_type_script_setup_true_lang.js +50 -0
  369. package/dist/components/TStack.vue_vue_type_script_setup_true_lang.js.map +1 -0
  370. package/dist/components/TStat.cjs +2 -0
  371. package/dist/components/TStat.cjs.map +1 -0
  372. package/dist/components/TStat.js +7 -0
  373. package/dist/components/TStat.js.map +1 -0
  374. package/dist/components/TStat.vue_vue_type_script_setup_true_lang.cjs +2 -0
  375. package/dist/components/TStat.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  376. package/dist/components/TStat.vue_vue_type_script_setup_true_lang.js +72 -0
  377. package/dist/components/TStat.vue_vue_type_script_setup_true_lang.js.map +1 -0
  378. package/dist/components/TSteps.cjs +2 -0
  379. package/dist/components/TSteps.cjs.map +1 -0
  380. package/dist/components/TSteps.js +7 -0
  381. package/dist/components/TSteps.js.map +1 -0
  382. package/dist/components/TSteps.vue_vue_type_script_setup_true_lang.cjs +2 -0
  383. package/dist/components/TSteps.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  384. package/dist/components/TSteps.vue_vue_type_script_setup_true_lang.js +83 -0
  385. package/dist/components/TSteps.vue_vue_type_script_setup_true_lang.js.map +1 -0
  386. package/dist/components/TSwitch.cjs +2 -0
  387. package/dist/components/TSwitch.cjs.map +1 -0
  388. package/dist/components/TSwitch.js +7 -0
  389. package/dist/components/TSwitch.js.map +1 -0
  390. package/dist/components/TSwitch.vue_vue_type_script_setup_true_lang.cjs +2 -0
  391. package/dist/components/TSwitch.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  392. package/dist/components/TSwitch.vue_vue_type_script_setup_true_lang.js +71 -0
  393. package/dist/components/TSwitch.vue_vue_type_script_setup_true_lang.js.map +1 -0
  394. package/dist/components/TTab.cjs +2 -0
  395. package/dist/components/TTab.cjs.map +1 -0
  396. package/dist/components/TTab.js +7 -0
  397. package/dist/components/TTab.js.map +1 -0
  398. package/dist/components/TTab.vue_vue_type_script_setup_true_lang.cjs +2 -0
  399. package/dist/components/TTab.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  400. package/dist/components/TTab.vue_vue_type_script_setup_true_lang.js +55 -0
  401. package/dist/components/TTab.vue_vue_type_script_setup_true_lang.js.map +1 -0
  402. package/dist/components/TTabList.cjs +2 -0
  403. package/dist/components/TTabList.cjs.map +1 -0
  404. package/dist/components/TTabList.js +7 -0
  405. package/dist/components/TTabList.js.map +1 -0
  406. package/dist/components/TTabList.vue_vue_type_script_setup_true_lang.cjs +2 -0
  407. package/dist/components/TTabList.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  408. package/dist/components/TTabList.vue_vue_type_script_setup_true_lang.js +73 -0
  409. package/dist/components/TTabList.vue_vue_type_script_setup_true_lang.js.map +1 -0
  410. package/dist/components/TTabPanel.cjs +2 -0
  411. package/dist/components/TTabPanel.cjs.map +1 -0
  412. package/dist/components/TTabPanel.js +7 -0
  413. package/dist/components/TTabPanel.js.map +1 -0
  414. package/dist/components/TTabPanel.vue_vue_type_script_setup_true_lang.cjs +2 -0
  415. package/dist/components/TTabPanel.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  416. package/dist/components/TTabPanel.vue_vue_type_script_setup_true_lang.js +24 -0
  417. package/dist/components/TTabPanel.vue_vue_type_script_setup_true_lang.js.map +1 -0
  418. package/dist/components/TTable.cjs +2 -0
  419. package/dist/components/TTable.cjs.map +1 -0
  420. package/dist/components/TTable.js +7 -0
  421. package/dist/components/TTable.js.map +1 -0
  422. package/dist/components/TTable.vue_vue_type_script_setup_true_lang.cjs +2 -0
  423. package/dist/components/TTable.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  424. package/dist/components/TTable.vue_vue_type_script_setup_true_lang.js +118 -0
  425. package/dist/components/TTable.vue_vue_type_script_setup_true_lang.js.map +1 -0
  426. package/dist/components/TTabs.cjs +2 -0
  427. package/dist/components/TTabs.cjs.map +1 -0
  428. package/dist/components/TTabs.js +7 -0
  429. package/dist/components/TTabs.js.map +1 -0
  430. package/dist/components/TTabs.vue_vue_type_script_setup_true_lang.cjs +2 -0
  431. package/dist/components/TTabs.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  432. package/dist/components/TTabs.vue_vue_type_script_setup_true_lang.js +51 -0
  433. package/dist/components/TTabs.vue_vue_type_script_setup_true_lang.js.map +1 -0
  434. package/dist/components/TTag.cjs +2 -0
  435. package/dist/components/TTag.cjs.map +1 -0
  436. package/dist/components/TTag.js +7 -0
  437. package/dist/components/TTag.js.map +1 -0
  438. package/dist/components/TTag.vue_vue_type_script_setup_true_lang.cjs +2 -0
  439. package/dist/components/TTag.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  440. package/dist/components/TTag.vue_vue_type_script_setup_true_lang.js +60 -0
  441. package/dist/components/TTag.vue_vue_type_script_setup_true_lang.js.map +1 -0
  442. package/dist/components/TTextarea.cjs +2 -0
  443. package/dist/components/TTextarea.cjs.map +1 -0
  444. package/dist/components/TTextarea.js +7 -0
  445. package/dist/components/TTextarea.js.map +1 -0
  446. package/dist/components/TTextarea.vue_vue_type_script_setup_true_lang.cjs +2 -0
  447. package/dist/components/TTextarea.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  448. package/dist/components/TTextarea.vue_vue_type_script_setup_true_lang.js +81 -0
  449. package/dist/components/TTextarea.vue_vue_type_script_setup_true_lang.js.map +1 -0
  450. package/dist/components/TTimeline.cjs +2 -0
  451. package/dist/components/TTimeline.cjs.map +1 -0
  452. package/dist/components/TTimeline.js +7 -0
  453. package/dist/components/TTimeline.js.map +1 -0
  454. package/dist/components/TTimeline.vue_vue_type_script_setup_true_lang.cjs +2 -0
  455. package/dist/components/TTimeline.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  456. package/dist/components/TTimeline.vue_vue_type_script_setup_true_lang.js +58 -0
  457. package/dist/components/TTimeline.vue_vue_type_script_setup_true_lang.js.map +1 -0
  458. package/dist/components/TToast.cjs +2 -0
  459. package/dist/components/TToast.cjs.map +1 -0
  460. package/dist/components/TToast.js +7 -0
  461. package/dist/components/TToast.js.map +1 -0
  462. package/dist/components/TToast.vue_vue_type_script_setup_true_lang.cjs +2 -0
  463. package/dist/components/TToast.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  464. package/dist/components/TToast.vue_vue_type_script_setup_true_lang.js +50 -0
  465. package/dist/components/TToast.vue_vue_type_script_setup_true_lang.js.map +1 -0
  466. package/dist/components/TToastProvider.cjs +2 -0
  467. package/dist/components/TToastProvider.cjs.map +1 -0
  468. package/dist/components/TToastProvider.js +7 -0
  469. package/dist/components/TToastProvider.js.map +1 -0
  470. package/dist/components/TToastProvider.vue_vue_type_script_setup_true_lang.cjs +2 -0
  471. package/dist/components/TToastProvider.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  472. package/dist/components/TToastProvider.vue_vue_type_script_setup_true_lang.js +33 -0
  473. package/dist/components/TToastProvider.vue_vue_type_script_setup_true_lang.js.map +1 -0
  474. package/dist/components/TToggleGroup.cjs +2 -0
  475. package/dist/components/TToggleGroup.cjs.map +1 -0
  476. package/dist/components/TToggleGroup.js +7 -0
  477. package/dist/components/TToggleGroup.js.map +1 -0
  478. package/dist/components/TToggleGroup.vue_vue_type_script_setup_true_lang.cjs +2 -0
  479. package/dist/components/TToggleGroup.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  480. package/dist/components/TToggleGroup.vue_vue_type_script_setup_true_lang.js +119 -0
  481. package/dist/components/TToggleGroup.vue_vue_type_script_setup_true_lang.js.map +1 -0
  482. package/dist/components/TTooltip.cjs +2 -0
  483. package/dist/components/TTooltip.cjs.map +1 -0
  484. package/dist/components/TTooltip.js +7 -0
  485. package/dist/components/TTooltip.js.map +1 -0
  486. package/dist/components/TTooltip.vue_vue_type_script_setup_true_lang.cjs +2 -0
  487. package/dist/components/TTooltip.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  488. package/dist/components/TTooltip.vue_vue_type_script_setup_true_lang.js +75 -0
  489. package/dist/components/TTooltip.vue_vue_type_script_setup_true_lang.js.map +1 -0
  490. package/dist/components/TTreeView.cjs +2 -0
  491. package/dist/components/TTreeView.cjs.map +1 -0
  492. package/dist/components/TTreeView.js +7 -0
  493. package/dist/components/TTreeView.js.map +1 -0
  494. package/dist/components/TTreeView.vue_vue_type_script_setup_true_lang.cjs +2 -0
  495. package/dist/components/TTreeView.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  496. package/dist/components/TTreeView.vue_vue_type_script_setup_true_lang.js +161 -0
  497. package/dist/components/TTreeView.vue_vue_type_script_setup_true_lang.js.map +1 -0
  498. package/dist/components/TTreeViewItem.cjs +2 -0
  499. package/dist/components/TTreeViewItem.cjs.map +1 -0
  500. package/dist/components/TTreeViewItem.js +7 -0
  501. package/dist/components/TTreeViewItem.js.map +1 -0
  502. package/dist/components/TTreeViewItem.vue_vue_type_script_setup_true_lang.cjs +2 -0
  503. package/dist/components/TTreeViewItem.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
  504. package/dist/components/TTreeViewItem.vue_vue_type_script_setup_true_lang.js +101 -0
  505. package/dist/components/TTreeViewItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
  506. package/dist/components/accordion.cjs +2 -0
  507. package/dist/components/accordion.cjs.map +1 -0
  508. package/dist/components/accordion.js +6 -0
  509. package/dist/components/accordion.js.map +1 -0
  510. package/dist/components/index.d.ts +1 -0
  511. package/dist/components/index.d.ts.map +1 -1
  512. package/dist/components/sidebar.cjs +2 -0
  513. package/dist/components/sidebar.cjs.map +1 -0
  514. package/dist/components/sidebar.js +6 -0
  515. package/dist/components/sidebar.js.map +1 -0
  516. package/dist/components/tabs-context.cjs +2 -0
  517. package/dist/components/tabs-context.cjs.map +1 -0
  518. package/dist/components/tabs-context.js +6 -0
  519. package/dist/components/tabs-context.js.map +1 -0
  520. package/dist/components/tree-view.cjs +2 -0
  521. package/dist/components/tree-view.cjs.map +1 -0
  522. package/dist/components/tree-view.js +6 -0
  523. package/dist/components/tree-view.js.map +1 -0
  524. package/dist/composables/useControllableOpen.cjs +2 -0
  525. package/dist/composables/useControllableOpen.cjs.map +1 -0
  526. package/dist/composables/useControllableOpen.js +15 -0
  527. package/dist/composables/useControllableOpen.js.map +1 -0
  528. package/dist/composables/useToast.cjs +2 -0
  529. package/dist/composables/useToast.cjs.map +1 -0
  530. package/dist/composables/useToast.js +41 -0
  531. package/dist/composables/useToast.js.map +1 -0
  532. package/dist/index.cjs +1 -12
  533. package/dist/index.js +66 -5992
  534. package/dist/plugin.cjs +2 -0
  535. package/dist/plugin.cjs.map +1 -0
  536. package/dist/plugin.js +135 -0
  537. package/dist/plugin.js.map +1 -0
  538. package/dist/style.css +1 -1
  539. package/dist/types/contracts.cjs +2 -0
  540. package/dist/types/contracts.cjs.map +1 -0
  541. package/dist/types/contracts.js +31 -0
  542. package/dist/types/contracts.js.map +1 -0
  543. package/package.json +2 -2
  544. package/dist/index.cjs.map +0 -1
  545. package/dist/index.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TStack.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../src/components/TStack.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs } from 'vue';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst _treeStackDirections = ['vertical', 'horizontal'] as const;\n\nexport type TStackDirection = (typeof _treeStackDirections)[number];\n\nconst props = withDefaults(\n defineProps<{\n as?: string;\n direction?: TStackDirection;\n gap?: string;\n align?: string;\n justify?: string;\n wrap?: boolean;\n reverse?: boolean;\n }>(),\n {\n as: 'div',\n direction: 'vertical',\n gap: 'var(--tree-space-4)',\n align: 'stretch',\n justify: 'flex-start',\n wrap: false,\n reverse: false,\n },\n);\n\nconst attrs = useAttrs();\n\nconst rootClasses = computed(() => [\n 't-stack',\n `t-stack--${props.direction}`,\n {\n 'is-wrapping': props.wrap,\n 'is-reversed': props.reverse,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => [\n {\n gap: props.gap,\n alignItems: props.align,\n justifyContent: props.justify,\n },\n attrs.style,\n]);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n</script>\n\n<template>\n <component\n :is=\"as\"\n v-bind=\"rootAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <slot />\n </component>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;EAWA,IAAM,IAAQ,GAqBR,IAAQ,EAAS,GAEjB,IAAc,QAAe;GACjC;GACA,YAAY,EAAM;GAClB;IACE,eAAe,EAAM;IACrB,eAAe,EAAM;GACvB;GACA,EAAM;EACR,CAAC,GAEK,IAAY,QAAe,CAC/B;GACE,KAAK,EAAM;GACX,YAAY,EAAM;GAClB,gBAAgB,EAAM;EACxB,GACA,EAAM,KACR,CAAC,GAEK,IAAY,QAAe;GAC/B,IAAM,EAAE,OAAO,GAAQ,OAAO,GAAQ,GAAG,MAAS;GAClD,OAAO;EACT,CAAC;yBAIC,EAOY,EANL,EAAA,EAAE,GADT,EAEU,EAKE,OALO;GAChB,OAAO,EAAA;GACP,OAAO,EAAA;;oBAEA,CAAR,EAAQ,EAAA,QAAA,SAAA,CAAA,CAAA"}
@@ -0,0 +1,2 @@
1
+ var e=require("./TStat.vue_vue_type_script_setup_true_lang.cjs").default;exports.default=e;
2
+ //# sourceMappingURL=TStat.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TStat.cjs","names":[],"sources":["../../src/components/TStat.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs, useSlots } from 'vue';\nimport TSkeleton from './TSkeleton.vue';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst _treeStatTones = ['neutral', 'success', 'warning', 'danger', 'info'] as const;\nconst _treeStatTrendDirections = ['up', 'down', 'neutral'] as const;\n\nexport type TStatTone = (typeof _treeStatTones)[number];\nexport type TStatTrendDirection = (typeof _treeStatTrendDirections)[number];\n\nconst props = withDefaults(\n defineProps<{\n label?: string;\n value?: string | number;\n trend?: string;\n meta?: string;\n tone?: TStatTone;\n trendDirection?: TStatTrendDirection;\n loading?: boolean;\n }>(),\n {\n label: '',\n value: '',\n trend: '',\n meta: '',\n tone: 'neutral',\n trendDirection: 'neutral',\n loading: false,\n },\n);\n\ndefineSlots<{\n icon?: () => unknown;\n label?: () => unknown;\n value?: () => unknown;\n trend?: () => unknown;\n meta?: () => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst slots = useSlots();\n\nconst rootClasses = computed(() => [\n 't-stat',\n `t-stat--${props.tone}`,\n {\n 'has-icon': Boolean(slots.icon) && !props.loading,\n 'is-loading': props.loading,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst loadingAttrs = computed(() => ({\n ...rootAttrs.value,\n 'aria-busy': props.loading || undefined,\n}));\n\nconst hasValue = computed(() => props.value !== '' && props.value !== null && props.value !== undefined);\nconst hasTrend = computed(() => Boolean(slots.trend || props.trend));\nconst hasMeta = computed(() => Boolean(slots.meta || props.meta));\nconst hasLabel = computed(() => Boolean(slots.label || props.label));\n\nconst trendSymbol = computed(() => {\n if (props.trendDirection === 'up') {\n return '+';\n }\n\n if (props.trendDirection === 'down') {\n return '-';\n }\n\n return '•';\n});\n</script>\n\n<template>\n <div\n v-bind=\"loadingAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <template v-if=\"loading\">\n <div class=\"t-stat__loading\">\n <TSkeleton class=\"t-stat__loading-label\" />\n <TSkeleton class=\"t-stat__loading-value\" />\n <TSkeleton class=\"t-stat__loading-trend\" />\n </div>\n </template>\n <template v-else>\n <div\n v-if=\"$slots.icon\"\n class=\"t-stat__icon\"\n >\n <slot name=\"icon\" />\n </div>\n\n <div class=\"t-stat__body\">\n <div\n v-if=\"hasLabel || hasMeta\"\n class=\"t-stat__topline\"\n >\n <p\n v-if=\"hasLabel\"\n class=\"t-stat__label\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n </p>\n\n <p\n v-if=\"hasMeta\"\n class=\"t-stat__meta\"\n >\n <slot name=\"meta\">\n {{ meta }}\n </slot>\n </p>\n </div>\n\n <div class=\"t-stat__content\">\n <p\n v-if=\"hasValue || $slots.value\"\n class=\"t-stat__value\"\n >\n <slot name=\"value\">\n {{ value }}\n </slot>\n </p>\n\n <p\n v-if=\"hasTrend\"\n class=\"t-stat__trend\"\n >\n <slot name=\"trend\">\n <span\n class=\"t-stat__trend-indicator\"\n aria-hidden=\"true\"\n >\n {{ trendSymbol }}\n </span>\n <span>{{ trend }}</span>\n </slot>\n </p>\n </div>\n </div>\n </template>\n </div>\n</template>\n"],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import e from "./TStat.vue_vue_type_script_setup_true_lang.js";
2
+ //#region src/components/TStat.vue
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
6
+
7
+ //# sourceMappingURL=TStat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TStat.js","names":[],"sources":["../../src/components/TStat.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs, useSlots } from 'vue';\nimport TSkeleton from './TSkeleton.vue';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst _treeStatTones = ['neutral', 'success', 'warning', 'danger', 'info'] as const;\nconst _treeStatTrendDirections = ['up', 'down', 'neutral'] as const;\n\nexport type TStatTone = (typeof _treeStatTones)[number];\nexport type TStatTrendDirection = (typeof _treeStatTrendDirections)[number];\n\nconst props = withDefaults(\n defineProps<{\n label?: string;\n value?: string | number;\n trend?: string;\n meta?: string;\n tone?: TStatTone;\n trendDirection?: TStatTrendDirection;\n loading?: boolean;\n }>(),\n {\n label: '',\n value: '',\n trend: '',\n meta: '',\n tone: 'neutral',\n trendDirection: 'neutral',\n loading: false,\n },\n);\n\ndefineSlots<{\n icon?: () => unknown;\n label?: () => unknown;\n value?: () => unknown;\n trend?: () => unknown;\n meta?: () => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst slots = useSlots();\n\nconst rootClasses = computed(() => [\n 't-stat',\n `t-stat--${props.tone}`,\n {\n 'has-icon': Boolean(slots.icon) && !props.loading,\n 'is-loading': props.loading,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst loadingAttrs = computed(() => ({\n ...rootAttrs.value,\n 'aria-busy': props.loading || undefined,\n}));\n\nconst hasValue = computed(() => props.value !== '' && props.value !== null && props.value !== undefined);\nconst hasTrend = computed(() => Boolean(slots.trend || props.trend));\nconst hasMeta = computed(() => Boolean(slots.meta || props.meta));\nconst hasLabel = computed(() => Boolean(slots.label || props.label));\n\nconst trendSymbol = computed(() => {\n if (props.trendDirection === 'up') {\n return '+';\n }\n\n if (props.trendDirection === 'down') {\n return '-';\n }\n\n return '•';\n});\n</script>\n\n<template>\n <div\n v-bind=\"loadingAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <template v-if=\"loading\">\n <div class=\"t-stat__loading\">\n <TSkeleton class=\"t-stat__loading-label\" />\n <TSkeleton class=\"t-stat__loading-value\" />\n <TSkeleton class=\"t-stat__loading-trend\" />\n </div>\n </template>\n <template v-else>\n <div\n v-if=\"$slots.icon\"\n class=\"t-stat__icon\"\n >\n <slot name=\"icon\" />\n </div>\n\n <div class=\"t-stat__body\">\n <div\n v-if=\"hasLabel || hasMeta\"\n class=\"t-stat__topline\"\n >\n <p\n v-if=\"hasLabel\"\n class=\"t-stat__label\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n </p>\n\n <p\n v-if=\"hasMeta\"\n class=\"t-stat__meta\"\n >\n <slot name=\"meta\">\n {{ meta }}\n </slot>\n </p>\n </div>\n\n <div class=\"t-stat__content\">\n <p\n v-if=\"hasValue || $slots.value\"\n class=\"t-stat__value\"\n >\n <slot name=\"value\">\n {{ value }}\n </slot>\n </p>\n\n <p\n v-if=\"hasTrend\"\n class=\"t-stat__trend\"\n >\n <slot name=\"trend\">\n <span\n class=\"t-stat__trend-indicator\"\n aria-hidden=\"true\"\n >\n {{ trendSymbol }}\n </span>\n <span>{{ trend }}</span>\n </slot>\n </p>\n </div>\n </div>\n </template>\n </div>\n</template>\n"],"mappings":""}
@@ -0,0 +1,2 @@
1
+ const e=require("./TSkeleton.cjs");let t=require("vue");var n={key:0,class:`t-stat__loading`},r={key:0,class:`t-stat__icon`},i={class:`t-stat__body`},a={key:0,class:`t-stat__topline`},o={key:0,class:`t-stat__label`},s={key:1,class:`t-stat__meta`},c={class:`t-stat__content`},l={key:0,class:`t-stat__value`},u={key:1,class:`t-stat__trend`},d={class:`t-stat__trend-indicator`,"aria-hidden":`true`},f=(0,t.defineComponent)({inheritAttrs:!1,__name:`TStat`,props:{label:{default:``},value:{default:``},trend:{default:``},meta:{default:``},tone:{default:`neutral`},trendDirection:{default:`neutral`},loading:{type:Boolean,default:!1}},setup(f){let p=f,m=(0,t.useAttrs)(),h=(0,t.useSlots)(),g=(0,t.computed)(()=>[`t-stat`,`t-stat--${p.tone}`,{"has-icon":!!h.icon&&!p.loading,"is-loading":p.loading},m.class]),_=(0,t.computed)(()=>m.style),v=(0,t.computed)(()=>{let{class:e,style:t,...n}=m;return n}),y=(0,t.computed)(()=>({...v.value,"aria-busy":p.loading||void 0})),b=(0,t.computed)(()=>p.value!==``&&p.value!==null&&p.value!==void 0),x=(0,t.computed)(()=>!!(h.trend||p.trend)),S=(0,t.computed)(()=>!!(h.meta||p.meta)),C=(0,t.computed)(()=>!!(h.label||p.label)),w=(0,t.computed)(()=>p.trendDirection===`up`?`+`:p.trendDirection===`down`?`-`:`•`);return(p,m)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,(0,t.mergeProps)(y.value,{class:g.value,style:_.value}),[f.loading?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,n,[(0,t.createVNode)(e.default,{class:`t-stat__loading-label`}),(0,t.createVNode)(e.default,{class:`t-stat__loading-value`}),(0,t.createVNode)(e.default,{class:`t-stat__loading-trend`})])):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[p.$slots.icon?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,r,[(0,t.renderSlot)(p.$slots,`icon`)])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,i,[C.value||S.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,a,[C.value?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,o,[(0,t.renderSlot)(p.$slots,`label`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(f.label),1)])])):(0,t.createCommentVNode)(``,!0),S.value?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,s,[(0,t.renderSlot)(p.$slots,`meta`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(f.meta),1)])])):(0,t.createCommentVNode)(``,!0)])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,c,[b.value||p.$slots.value?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,l,[(0,t.renderSlot)(p.$slots,`value`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(f.value),1)])])):(0,t.createCommentVNode)(``,!0),x.value?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,u,[(0,t.renderSlot)(p.$slots,`trend`,{},()=>[(0,t.createElementVNode)(`span`,d,(0,t.toDisplayString)(w.value),1),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(f.trend),1)])])):(0,t.createCommentVNode)(``,!0)])])],64))],16))}});exports.default=f;
2
+ //# sourceMappingURL=TStat.vue_vue_type_script_setup_true_lang.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TStat.vue_vue_type_script_setup_true_lang.cjs","names":["$slots"],"sources":["../../src/components/TStat.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs, useSlots } from 'vue';\nimport TSkeleton from './TSkeleton.vue';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst _treeStatTones = ['neutral', 'success', 'warning', 'danger', 'info'] as const;\nconst _treeStatTrendDirections = ['up', 'down', 'neutral'] as const;\n\nexport type TStatTone = (typeof _treeStatTones)[number];\nexport type TStatTrendDirection = (typeof _treeStatTrendDirections)[number];\n\nconst props = withDefaults(\n defineProps<{\n label?: string;\n value?: string | number;\n trend?: string;\n meta?: string;\n tone?: TStatTone;\n trendDirection?: TStatTrendDirection;\n loading?: boolean;\n }>(),\n {\n label: '',\n value: '',\n trend: '',\n meta: '',\n tone: 'neutral',\n trendDirection: 'neutral',\n loading: false,\n },\n);\n\ndefineSlots<{\n icon?: () => unknown;\n label?: () => unknown;\n value?: () => unknown;\n trend?: () => unknown;\n meta?: () => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst slots = useSlots();\n\nconst rootClasses = computed(() => [\n 't-stat',\n `t-stat--${props.tone}`,\n {\n 'has-icon': Boolean(slots.icon) && !props.loading,\n 'is-loading': props.loading,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst loadingAttrs = computed(() => ({\n ...rootAttrs.value,\n 'aria-busy': props.loading || undefined,\n}));\n\nconst hasValue = computed(() => props.value !== '' && props.value !== null && props.value !== undefined);\nconst hasTrend = computed(() => Boolean(slots.trend || props.trend));\nconst hasMeta = computed(() => Boolean(slots.meta || props.meta));\nconst hasLabel = computed(() => Boolean(slots.label || props.label));\n\nconst trendSymbol = computed(() => {\n if (props.trendDirection === 'up') {\n return '+';\n }\n\n if (props.trendDirection === 'down') {\n return '-';\n }\n\n return '•';\n});\n</script>\n\n<template>\n <div\n v-bind=\"loadingAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <template v-if=\"loading\">\n <div class=\"t-stat__loading\">\n <TSkeleton class=\"t-stat__loading-label\" />\n <TSkeleton class=\"t-stat__loading-value\" />\n <TSkeleton class=\"t-stat__loading-trend\" />\n </div>\n </template>\n <template v-else>\n <div\n v-if=\"$slots.icon\"\n class=\"t-stat__icon\"\n >\n <slot name=\"icon\" />\n </div>\n\n <div class=\"t-stat__body\">\n <div\n v-if=\"hasLabel || hasMeta\"\n class=\"t-stat__topline\"\n >\n <p\n v-if=\"hasLabel\"\n class=\"t-stat__label\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n </p>\n\n <p\n v-if=\"hasMeta\"\n class=\"t-stat__meta\"\n >\n <slot name=\"meta\">\n {{ meta }}\n </slot>\n </p>\n </div>\n\n <div class=\"t-stat__content\">\n <p\n v-if=\"hasValue || $slots.value\"\n class=\"t-stat__value\"\n >\n <slot name=\"value\">\n {{ value }}\n </slot>\n </p>\n\n <p\n v-if=\"hasTrend\"\n class=\"t-stat__trend\"\n >\n <slot name=\"trend\">\n <span\n class=\"t-stat__trend-indicator\"\n aria-hidden=\"true\"\n >\n {{ trendSymbol }}\n </span>\n <span>{{ trend }}</span>\n </slot>\n </p>\n </div>\n </div>\n </template>\n </div>\n</template>\n"],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ import e from "./TSkeleton.js";
2
+ import { Fragment as t, computed as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createTextVNode as o, createVNode as s, defineComponent as c, mergeProps as l, openBlock as u, renderSlot as d, toDisplayString as f, useAttrs as p, useSlots as m } from "vue";
3
+ //#region src/components/TStat.vue?vue&type=script&setup=true&lang.ts
4
+ var h = {
5
+ key: 0,
6
+ class: "t-stat__loading"
7
+ }, g = {
8
+ key: 0,
9
+ class: "t-stat__icon"
10
+ }, _ = { class: "t-stat__body" }, v = {
11
+ key: 0,
12
+ class: "t-stat__topline"
13
+ }, y = {
14
+ key: 0,
15
+ class: "t-stat__label"
16
+ }, b = {
17
+ key: 1,
18
+ class: "t-stat__meta"
19
+ }, x = { class: "t-stat__content" }, S = {
20
+ key: 0,
21
+ class: "t-stat__value"
22
+ }, C = {
23
+ key: 1,
24
+ class: "t-stat__trend"
25
+ }, w = {
26
+ class: "t-stat__trend-indicator",
27
+ "aria-hidden": "true"
28
+ }, T = /*@__PURE__*/ c({
29
+ inheritAttrs: !1,
30
+ __name: "TStat",
31
+ props: {
32
+ label: { default: "" },
33
+ value: { default: "" },
34
+ trend: { default: "" },
35
+ meta: { default: "" },
36
+ tone: { default: "neutral" },
37
+ trendDirection: { default: "neutral" },
38
+ loading: {
39
+ type: Boolean,
40
+ default: !1
41
+ }
42
+ },
43
+ setup(c) {
44
+ let T = c, E = p(), D = m(), O = n(() => [
45
+ "t-stat",
46
+ `t-stat--${T.tone}`,
47
+ {
48
+ "has-icon": !!D.icon && !T.loading,
49
+ "is-loading": T.loading
50
+ },
51
+ E.class
52
+ ]), k = n(() => E.style), A = n(() => {
53
+ let { class: e, style: t, ...n } = E;
54
+ return n;
55
+ }), j = n(() => ({
56
+ ...A.value,
57
+ "aria-busy": T.loading || void 0
58
+ })), M = n(() => T.value !== "" && T.value !== null && T.value !== void 0), N = n(() => !!(D.trend || T.trend)), P = n(() => !!(D.meta || T.meta)), F = n(() => !!(D.label || T.label)), I = n(() => T.trendDirection === "up" ? "+" : T.trendDirection === "down" ? "-" : "•");
59
+ return (n, p) => (u(), i("div", l(j.value, {
60
+ class: O.value,
61
+ style: k.value
62
+ }), [c.loading ? (u(), i("div", h, [
63
+ s(e, { class: "t-stat__loading-label" }),
64
+ s(e, { class: "t-stat__loading-value" }),
65
+ s(e, { class: "t-stat__loading-trend" })
66
+ ])) : (u(), i(t, { key: 1 }, [n.$slots.icon ? (u(), i("div", g, [d(n.$slots, "icon")])) : r("", !0), a("div", _, [F.value || P.value ? (u(), i("div", v, [F.value ? (u(), i("p", y, [d(n.$slots, "label", {}, () => [o(f(c.label), 1)])])) : r("", !0), P.value ? (u(), i("p", b, [d(n.$slots, "meta", {}, () => [o(f(c.meta), 1)])])) : r("", !0)])) : r("", !0), a("div", x, [M.value || n.$slots.value ? (u(), i("p", S, [d(n.$slots, "value", {}, () => [o(f(c.value), 1)])])) : r("", !0), N.value ? (u(), i("p", C, [d(n.$slots, "trend", {}, () => [a("span", w, f(I.value), 1), a("span", null, f(c.trend), 1)])])) : r("", !0)])])], 64))], 16));
67
+ }
68
+ });
69
+ //#endregion
70
+ export { T as default };
71
+
72
+ //# sourceMappingURL=TStat.vue_vue_type_script_setup_true_lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TStat.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../src/components/TStat.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs, useSlots } from 'vue';\nimport TSkeleton from './TSkeleton.vue';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst _treeStatTones = ['neutral', 'success', 'warning', 'danger', 'info'] as const;\nconst _treeStatTrendDirections = ['up', 'down', 'neutral'] as const;\n\nexport type TStatTone = (typeof _treeStatTones)[number];\nexport type TStatTrendDirection = (typeof _treeStatTrendDirections)[number];\n\nconst props = withDefaults(\n defineProps<{\n label?: string;\n value?: string | number;\n trend?: string;\n meta?: string;\n tone?: TStatTone;\n trendDirection?: TStatTrendDirection;\n loading?: boolean;\n }>(),\n {\n label: '',\n value: '',\n trend: '',\n meta: '',\n tone: 'neutral',\n trendDirection: 'neutral',\n loading: false,\n },\n);\n\ndefineSlots<{\n icon?: () => unknown;\n label?: () => unknown;\n value?: () => unknown;\n trend?: () => unknown;\n meta?: () => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst slots = useSlots();\n\nconst rootClasses = computed(() => [\n 't-stat',\n `t-stat--${props.tone}`,\n {\n 'has-icon': Boolean(slots.icon) && !props.loading,\n 'is-loading': props.loading,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst loadingAttrs = computed(() => ({\n ...rootAttrs.value,\n 'aria-busy': props.loading || undefined,\n}));\n\nconst hasValue = computed(() => props.value !== '' && props.value !== null && props.value !== undefined);\nconst hasTrend = computed(() => Boolean(slots.trend || props.trend));\nconst hasMeta = computed(() => Boolean(slots.meta || props.meta));\nconst hasLabel = computed(() => Boolean(slots.label || props.label));\n\nconst trendSymbol = computed(() => {\n if (props.trendDirection === 'up') {\n return '+';\n }\n\n if (props.trendDirection === 'down') {\n return '-';\n }\n\n return '•';\n});\n</script>\n\n<template>\n <div\n v-bind=\"loadingAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <template v-if=\"loading\">\n <div class=\"t-stat__loading\">\n <TSkeleton class=\"t-stat__loading-label\" />\n <TSkeleton class=\"t-stat__loading-value\" />\n <TSkeleton class=\"t-stat__loading-trend\" />\n </div>\n </template>\n <template v-else>\n <div\n v-if=\"$slots.icon\"\n class=\"t-stat__icon\"\n >\n <slot name=\"icon\" />\n </div>\n\n <div class=\"t-stat__body\">\n <div\n v-if=\"hasLabel || hasMeta\"\n class=\"t-stat__topline\"\n >\n <p\n v-if=\"hasLabel\"\n class=\"t-stat__label\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n </p>\n\n <p\n v-if=\"hasMeta\"\n class=\"t-stat__meta\"\n >\n <slot name=\"meta\">\n {{ meta }}\n </slot>\n </p>\n </div>\n\n <div class=\"t-stat__content\">\n <p\n v-if=\"hasValue || $slots.value\"\n class=\"t-stat__value\"\n >\n <slot name=\"value\">\n {{ value }}\n </slot>\n </p>\n\n <p\n v-if=\"hasTrend\"\n class=\"t-stat__trend\"\n >\n <slot name=\"trend\">\n <span\n class=\"t-stat__trend-indicator\"\n aria-hidden=\"true\"\n >\n {{ trendSymbol }}\n </span>\n <span>{{ trend }}</span>\n </slot>\n </p>\n </div>\n </div>\n </template>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcA,IAAM,IAAQ,GA6BR,IAAQ,EAAS,GACjB,IAAQ,EAAS,GAEjB,IAAc,QAAe;GACjC;GACA,WAAW,EAAM;GACjB;IACE,YAAY,EAAQ,EAAM,QAAS,CAAC,EAAM;IAC1C,cAAc,EAAM;GACtB;GACA,EAAM;EACR,CAAC,GAEK,IAAY,QAAe,EAAM,KAAK,GAEtC,IAAY,QAAe;GAC/B,IAAM,EAAE,OAAO,GAAQ,OAAO,GAAQ,GAAG,MAAS;GAClD,OAAO;EACT,CAAC,GAEK,IAAe,SAAgB;GACnC,GAAG,EAAU;GACb,aAAa,EAAM,WAAW,KAAA;EAChC,EAAE,GAEI,IAAW,QAAe,EAAM,UAAU,MAAM,EAAM,UAAU,QAAQ,EAAM,UAAU,KAAA,CAAS,GACjG,IAAW,QAAe,GAAQ,EAAM,SAAS,EAAM,MAAM,GAC7D,IAAU,QAAe,GAAQ,EAAM,QAAQ,EAAM,KAAK,GAC1D,IAAW,QAAe,GAAQ,EAAM,SAAS,EAAM,MAAM,GAE7D,IAAc,QACd,EAAM,mBAAmB,OACpB,MAGL,EAAM,mBAAmB,SACpB,MAGF,GACR;yBAIC,EAuEM,OAvEN,EACU,EAsEJ,OAtEgB;GACnB,OAAO,EAAA;GACP,OAAO,EAAA;OAEQ,EAAA,WAAA,EAAA,GACd,EAIM,OAJN,GAIM;GAHJ,EAA2C,GAAA,EAAhC,OAAM,wBAAuB,CAAA;GACxC,EAA2C,GAAA,EAAhC,OAAM,wBAAuB,CAAA;GACxC,EAA2C,GAAA,EAAhC,OAAM,wBAAuB,CAAA;cAG5C,EA0DW,GAAA,EAAA,KAAA,EAAA,GAAA,CAxDDA,EAAAA,OAAO,QAAA,EAAA,GADf,EAKM,OALN,GAKM,CADJ,EAAoB,EAAA,QAAA,MAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA,GAGtB,EAiDM,OAjDN,GAiDM,CA/CI,EAAA,SAAY,EAAA,SAAA,EAAA,GADpB,EAqBM,OArBN,GAqBM,CAhBI,EAAA,SAAA,EAAA,GADR,EAOI,KAPJ,GAOI,CAHF,EAEO,EAAA,QAAA,SAAA,CAAA,SAAA,CAAA,EAAA,EADF,EAAA,KAAK,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA,GAKJ,EAAA,SAAA,EAAA,GADR,EAOI,KAPJ,GAOI,CAHF,EAEO,EAAA,QAAA,QAAA,CAAA,SAAA,CAAA,EAAA,EADF,EAAA,IAAI,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA,GAKb,EAwBM,OAxBN,GAwBM,CAtBI,EAAA,SAAYA,EAAAA,OAAO,SAAA,EAAA,GAD3B,EAOI,KAPJ,GAOI,CAHF,EAEO,EAAA,QAAA,SAAA,CAAA,SAAA,CAAA,EAAA,EADF,EAAA,KAAK,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA,GAKJ,EAAA,SAAA,EAAA,GADR,EAaI,KAbJ,GAaI,CATF,EAQO,EAAA,QAAA,SAAA,CAAA,SAAA,CAPL,EAKO,QALP,GAKO,EADF,EAAA,KAAW,GAAA,CAAA,GAEhB,EAAwB,QAAA,MAAA,EAAf,EAAA,KAAK,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA"}
@@ -0,0 +1,2 @@
1
+ var e=require("./TSteps.vue_vue_type_script_setup_true_lang.cjs").default;exports.default=e;
2
+ //# sourceMappingURL=TSteps.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TSteps.cjs","names":[],"sources":["../../src/components/TSteps.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { getTreeIcon, treeIconDefaults } from '@treeui/icons';\nimport { computed, ref, useAttrs, watch } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nexport interface TStepItem {\n label: string;\n value: string;\n description?: string;\n meta?: string;\n status?: TStepStatus;\n disabled?: boolean;\n}\n\nconst _treeStepStatuses = ['complete', 'current', 'upcoming', 'error'] as const;\nconst _treeStepOrientations = ['horizontal', 'vertical'] as const;\n\nexport type TStepStatus = (typeof _treeStepStatuses)[number];\nexport type TStepOrientation = (typeof _treeStepOrientations)[number];\n\nconst CheckIcon = getTreeIcon('check');\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: string;\n defaultValue?: string;\n items?: TStepItem[];\n size?: TSize;\n orientation?: TStepOrientation;\n interactive?: boolean;\n }>(),\n {\n modelValue: undefined,\n defaultValue: '',\n items: () => [],\n size: 'md',\n orientation: 'horizontal',\n interactive: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: string];\n}>();\n\ndefineSlots<{\n item?: (props: {\n item: TStepItem;\n index: number;\n status: TStepStatus;\n current: boolean;\n }) => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst internalValue = ref(props.defaultValue || props.items[0]?.value || '');\n\nconst activeValue = computed(() => props.modelValue ?? internalValue.value);\n\nconst currentIndex = computed(() => {\n const activeIndex = props.items.findIndex((item) => item.value === activeValue.value);\n return activeIndex >= 0 ? activeIndex : 0;\n});\n\nconst rootClasses = computed(() => [\n 't-steps',\n `t-steps--${props.size}`,\n `t-steps--${props.orientation}`,\n {\n 'is-interactive': props.interactive,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst resolveStatus = (item: TStepItem, index: number): TStepStatus => {\n if (item.status) {\n return item.status;\n }\n\n if (index < currentIndex.value) {\n return 'complete';\n }\n\n if (index === currentIndex.value) {\n return 'current';\n }\n\n return 'upcoming';\n};\n\nconst selectStep = (item: TStepItem) => {\n if (!props.interactive || item.disabled) {\n return;\n }\n\n if (props.modelValue === undefined) {\n internalValue.value = item.value;\n }\n\n emit('update:modelValue', item.value);\n};\n\nwatch(\n () => props.items,\n (items) => {\n const hasCurrentItem = items.some((item) => item.value === activeValue.value);\n\n if (!hasCurrentItem && items[0] && props.modelValue === undefined) {\n internalValue.value = items[0].value;\n }\n },\n { deep: true },\n);\n</script>\n\n<template>\n <ol\n v-bind=\"rootAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <li\n v-for=\"(item, index) in items\"\n :key=\"item.value\"\n class=\"t-steps__item\"\n :class=\"`is-${resolveStatus(item, index)}`\"\n >\n <button\n type=\"button\"\n class=\"t-steps__button\"\n :class=\"{\n 'is-current': resolveStatus(item, index) === 'current',\n 'is-disabled': item.disabled,\n }\"\n :disabled=\"!interactive || item.disabled\"\n :aria-current=\"resolveStatus(item, index) === 'current' ? 'step' : undefined\"\n @click=\"selectStep(item)\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n :index=\"index\"\n :status=\"resolveStatus(item, index)\"\n :current=\"resolveStatus(item, index) === 'current'\"\n >\n <span\n class=\"t-steps__indicator\"\n aria-hidden=\"true\"\n >\n <CheckIcon\n v-if=\"resolveStatus(item, index) === 'complete'\"\n v-bind=\"treeIconDefaults\"\n />\n <span v-else-if=\"resolveStatus(item, index) === 'error'\">!</span>\n <span v-else>{{ index + 1 }}</span>\n </span>\n\n <span class=\"t-steps__copy\">\n <span class=\"t-steps__label\">{{ item.label }}</span>\n <span\n v-if=\"item.description\"\n class=\"t-steps__description\"\n >\n {{ item.description }}\n </span>\n </span>\n\n <span\n v-if=\"item.meta\"\n class=\"t-steps__meta\"\n >\n {{ item.meta }}\n </span>\n </slot>\n </button>\n </li>\n </ol>\n</template>\n"],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import e from "./TSteps.vue_vue_type_script_setup_true_lang.js";
2
+ //#region src/components/TSteps.vue
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
6
+
7
+ //# sourceMappingURL=TSteps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TSteps.js","names":[],"sources":["../../src/components/TSteps.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { getTreeIcon, treeIconDefaults } from '@treeui/icons';\nimport { computed, ref, useAttrs, watch } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nexport interface TStepItem {\n label: string;\n value: string;\n description?: string;\n meta?: string;\n status?: TStepStatus;\n disabled?: boolean;\n}\n\nconst _treeStepStatuses = ['complete', 'current', 'upcoming', 'error'] as const;\nconst _treeStepOrientations = ['horizontal', 'vertical'] as const;\n\nexport type TStepStatus = (typeof _treeStepStatuses)[number];\nexport type TStepOrientation = (typeof _treeStepOrientations)[number];\n\nconst CheckIcon = getTreeIcon('check');\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: string;\n defaultValue?: string;\n items?: TStepItem[];\n size?: TSize;\n orientation?: TStepOrientation;\n interactive?: boolean;\n }>(),\n {\n modelValue: undefined,\n defaultValue: '',\n items: () => [],\n size: 'md',\n orientation: 'horizontal',\n interactive: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: string];\n}>();\n\ndefineSlots<{\n item?: (props: {\n item: TStepItem;\n index: number;\n status: TStepStatus;\n current: boolean;\n }) => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst internalValue = ref(props.defaultValue || props.items[0]?.value || '');\n\nconst activeValue = computed(() => props.modelValue ?? internalValue.value);\n\nconst currentIndex = computed(() => {\n const activeIndex = props.items.findIndex((item) => item.value === activeValue.value);\n return activeIndex >= 0 ? activeIndex : 0;\n});\n\nconst rootClasses = computed(() => [\n 't-steps',\n `t-steps--${props.size}`,\n `t-steps--${props.orientation}`,\n {\n 'is-interactive': props.interactive,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst resolveStatus = (item: TStepItem, index: number): TStepStatus => {\n if (item.status) {\n return item.status;\n }\n\n if (index < currentIndex.value) {\n return 'complete';\n }\n\n if (index === currentIndex.value) {\n return 'current';\n }\n\n return 'upcoming';\n};\n\nconst selectStep = (item: TStepItem) => {\n if (!props.interactive || item.disabled) {\n return;\n }\n\n if (props.modelValue === undefined) {\n internalValue.value = item.value;\n }\n\n emit('update:modelValue', item.value);\n};\n\nwatch(\n () => props.items,\n (items) => {\n const hasCurrentItem = items.some((item) => item.value === activeValue.value);\n\n if (!hasCurrentItem && items[0] && props.modelValue === undefined) {\n internalValue.value = items[0].value;\n }\n },\n { deep: true },\n);\n</script>\n\n<template>\n <ol\n v-bind=\"rootAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <li\n v-for=\"(item, index) in items\"\n :key=\"item.value\"\n class=\"t-steps__item\"\n :class=\"`is-${resolveStatus(item, index)}`\"\n >\n <button\n type=\"button\"\n class=\"t-steps__button\"\n :class=\"{\n 'is-current': resolveStatus(item, index) === 'current',\n 'is-disabled': item.disabled,\n }\"\n :disabled=\"!interactive || item.disabled\"\n :aria-current=\"resolveStatus(item, index) === 'current' ? 'step' : undefined\"\n @click=\"selectStep(item)\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n :index=\"index\"\n :status=\"resolveStatus(item, index)\"\n :current=\"resolveStatus(item, index) === 'current'\"\n >\n <span\n class=\"t-steps__indicator\"\n aria-hidden=\"true\"\n >\n <CheckIcon\n v-if=\"resolveStatus(item, index) === 'complete'\"\n v-bind=\"treeIconDefaults\"\n />\n <span v-else-if=\"resolveStatus(item, index) === 'error'\">!</span>\n <span v-else>{{ index + 1 }}</span>\n </span>\n\n <span class=\"t-steps__copy\">\n <span class=\"t-steps__label\">{{ item.label }}</span>\n <span\n v-if=\"item.description\"\n class=\"t-steps__description\"\n >\n {{ item.description }}\n </span>\n </span>\n\n <span\n v-if=\"item.meta\"\n class=\"t-steps__meta\"\n >\n {{ item.meta }}\n </span>\n </slot>\n </button>\n </li>\n </ol>\n</template>\n"],"mappings":""}
@@ -0,0 +1,2 @@
1
+ let e=require("vue"),t=require("@treeui/icons");var n=[`disabled`,`aria-current`,`onClick`],r={class:`t-steps__indicator`,"aria-hidden":`true`},i={key:1},a={key:2},o={class:`t-steps__copy`},s={class:`t-steps__label`},c={key:0,class:`t-steps__description`},l={key:0,class:`t-steps__meta`},u=(0,e.defineComponent)({inheritAttrs:!1,__name:`TSteps`,props:{modelValue:{default:void 0},defaultValue:{default:``},items:{default:()=>[]},size:{default:`md`},orientation:{default:`horizontal`},interactive:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(u,{emit:d}){let f=(0,t.getTreeIcon)(`check`),p=u,m=d,h=(0,e.useAttrs)(),g=(0,e.ref)(p.defaultValue||p.items[0]?.value||``),_=(0,e.computed)(()=>p.modelValue??g.value),v=(0,e.computed)(()=>{let e=p.items.findIndex(e=>e.value===_.value);return e>=0?e:0}),y=(0,e.computed)(()=>[`t-steps`,`t-steps--${p.size}`,`t-steps--${p.orientation}`,{"is-interactive":p.interactive},h.class]),b=(0,e.computed)(()=>h.style),x=(0,e.computed)(()=>{let{class:e,style:t,...n}=h;return n}),S=(e,t)=>e.status?e.status:t<v.value?`complete`:t===v.value?`current`:`upcoming`,C=e=>{!p.interactive||e.disabled||(p.modelValue===void 0&&(g.value=e.value),m(`update:modelValue`,e.value))};return(0,e.watch)(()=>p.items,e=>{!e.some(e=>e.value===_.value)&&e[0]&&p.modelValue===void 0&&(g.value=e[0].value)},{deep:!0}),(d,p)=>((0,e.openBlock)(),(0,e.createElementBlock)(`ol`,(0,e.mergeProps)(x.value,{class:y.value,style:b.value}),[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(u.items,(p,m)=>((0,e.openBlock)(),(0,e.createElementBlock)(`li`,{key:p.value,class:(0,e.normalizeClass)([`t-steps__item`,`is-${S(p,m)}`])},[(0,e.createElementVNode)(`button`,{type:`button`,class:(0,e.normalizeClass)([`t-steps__button`,{"is-current":S(p,m)===`current`,"is-disabled":p.disabled}]),disabled:!u.interactive||p.disabled,"aria-current":S(p,m)===`current`?`step`:void 0,onClick:e=>C(p)},[(0,e.renderSlot)(d.$slots,`item`,{item:p,index:m,status:S(p,m),current:S(p,m)===`current`},()=>[(0,e.createElementVNode)(`span`,r,[S(p,m)===`complete`?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(f),(0,e.mergeProps)({key:0,ref_for:!0},(0,e.unref)(t.treeIconDefaults)),null,16)):S(p,m)===`error`?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,i,`!`)):((0,e.openBlock)(),(0,e.createElementBlock)(`span`,a,(0,e.toDisplayString)(m+1),1))]),(0,e.createElementVNode)(`span`,o,[(0,e.createElementVNode)(`span`,s,(0,e.toDisplayString)(p.label),1),p.description?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,c,(0,e.toDisplayString)(p.description),1)):(0,e.createCommentVNode)(``,!0)]),p.meta?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,l,(0,e.toDisplayString)(p.meta),1)):(0,e.createCommentVNode)(``,!0)])],10,n)],2))),128))],16))}});exports.default=u;
2
+ //# sourceMappingURL=TSteps.vue_vue_type_script_setup_true_lang.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TSteps.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../src/components/TSteps.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { getTreeIcon, treeIconDefaults } from '@treeui/icons';\nimport { computed, ref, useAttrs, watch } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nexport interface TStepItem {\n label: string;\n value: string;\n description?: string;\n meta?: string;\n status?: TStepStatus;\n disabled?: boolean;\n}\n\nconst _treeStepStatuses = ['complete', 'current', 'upcoming', 'error'] as const;\nconst _treeStepOrientations = ['horizontal', 'vertical'] as const;\n\nexport type TStepStatus = (typeof _treeStepStatuses)[number];\nexport type TStepOrientation = (typeof _treeStepOrientations)[number];\n\nconst CheckIcon = getTreeIcon('check');\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: string;\n defaultValue?: string;\n items?: TStepItem[];\n size?: TSize;\n orientation?: TStepOrientation;\n interactive?: boolean;\n }>(),\n {\n modelValue: undefined,\n defaultValue: '',\n items: () => [],\n size: 'md',\n orientation: 'horizontal',\n interactive: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: string];\n}>();\n\ndefineSlots<{\n item?: (props: {\n item: TStepItem;\n index: number;\n status: TStepStatus;\n current: boolean;\n }) => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst internalValue = ref(props.defaultValue || props.items[0]?.value || '');\n\nconst activeValue = computed(() => props.modelValue ?? internalValue.value);\n\nconst currentIndex = computed(() => {\n const activeIndex = props.items.findIndex((item) => item.value === activeValue.value);\n return activeIndex >= 0 ? activeIndex : 0;\n});\n\nconst rootClasses = computed(() => [\n 't-steps',\n `t-steps--${props.size}`,\n `t-steps--${props.orientation}`,\n {\n 'is-interactive': props.interactive,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst resolveStatus = (item: TStepItem, index: number): TStepStatus => {\n if (item.status) {\n return item.status;\n }\n\n if (index < currentIndex.value) {\n return 'complete';\n }\n\n if (index === currentIndex.value) {\n return 'current';\n }\n\n return 'upcoming';\n};\n\nconst selectStep = (item: TStepItem) => {\n if (!props.interactive || item.disabled) {\n return;\n }\n\n if (props.modelValue === undefined) {\n internalValue.value = item.value;\n }\n\n emit('update:modelValue', item.value);\n};\n\nwatch(\n () => props.items,\n (items) => {\n const hasCurrentItem = items.some((item) => item.value === activeValue.value);\n\n if (!hasCurrentItem && items[0] && props.modelValue === undefined) {\n internalValue.value = items[0].value;\n }\n },\n { deep: true },\n);\n</script>\n\n<template>\n <ol\n v-bind=\"rootAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <li\n v-for=\"(item, index) in items\"\n :key=\"item.value\"\n class=\"t-steps__item\"\n :class=\"`is-${resolveStatus(item, index)}`\"\n >\n <button\n type=\"button\"\n class=\"t-steps__button\"\n :class=\"{\n 'is-current': resolveStatus(item, index) === 'current',\n 'is-disabled': item.disabled,\n }\"\n :disabled=\"!interactive || item.disabled\"\n :aria-current=\"resolveStatus(item, index) === 'current' ? 'step' : undefined\"\n @click=\"selectStep(item)\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n :index=\"index\"\n :status=\"resolveStatus(item, index)\"\n :current=\"resolveStatus(item, index) === 'current'\"\n >\n <span\n class=\"t-steps__indicator\"\n aria-hidden=\"true\"\n >\n <CheckIcon\n v-if=\"resolveStatus(item, index) === 'complete'\"\n v-bind=\"treeIconDefaults\"\n />\n <span v-else-if=\"resolveStatus(item, index) === 'error'\">!</span>\n <span v-else>{{ index + 1 }}</span>\n </span>\n\n <span class=\"t-steps__copy\">\n <span class=\"t-steps__label\">{{ item.label }}</span>\n <span\n v-if=\"item.description\"\n class=\"t-steps__description\"\n >\n {{ item.description }}\n </span>\n </span>\n\n <span\n v-if=\"item.meta\"\n class=\"t-steps__meta\"\n >\n {{ item.meta }}\n </span>\n </slot>\n </button>\n </li>\n </ol>\n</template>\n"],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ import { Fragment as e, computed as t, createBlock as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, defineComponent as o, mergeProps as s, normalizeClass as c, openBlock as l, ref as u, renderList as d, renderSlot as f, toDisplayString as p, unref as m, useAttrs as h, watch as g } from "vue";
2
+ import { getTreeIcon as _, treeIconDefaults as v } from "@treeui/icons";
3
+ //#region src/components/TSteps.vue?vue&type=script&setup=true&lang.ts
4
+ var y = [
5
+ "disabled",
6
+ "aria-current",
7
+ "onClick"
8
+ ], b = {
9
+ class: "t-steps__indicator",
10
+ "aria-hidden": "true"
11
+ }, x = { key: 1 }, S = { key: 2 }, C = { class: "t-steps__copy" }, w = { class: "t-steps__label" }, T = {
12
+ key: 0,
13
+ class: "t-steps__description"
14
+ }, E = {
15
+ key: 0,
16
+ class: "t-steps__meta"
17
+ }, D = /*@__PURE__*/ o({
18
+ inheritAttrs: !1,
19
+ __name: "TSteps",
20
+ props: {
21
+ modelValue: { default: void 0 },
22
+ defaultValue: { default: "" },
23
+ items: { default: () => [] },
24
+ size: { default: "md" },
25
+ orientation: { default: "horizontal" },
26
+ interactive: {
27
+ type: Boolean,
28
+ default: !1
29
+ }
30
+ },
31
+ emits: ["update:modelValue"],
32
+ setup(o, { emit: D }) {
33
+ let O = _("check"), k = o, A = D, j = h(), M = u(k.defaultValue || k.items[0]?.value || ""), N = t(() => k.modelValue ?? M.value), P = t(() => {
34
+ let e = k.items.findIndex((e) => e.value === N.value);
35
+ return e >= 0 ? e : 0;
36
+ }), F = t(() => [
37
+ "t-steps",
38
+ `t-steps--${k.size}`,
39
+ `t-steps--${k.orientation}`,
40
+ { "is-interactive": k.interactive },
41
+ j.class
42
+ ]), I = t(() => j.style), L = t(() => {
43
+ let { class: e, style: t, ...n } = j;
44
+ return n;
45
+ }), R = (e, t) => e.status ? e.status : t < P.value ? "complete" : t === P.value ? "current" : "upcoming", z = (e) => {
46
+ !k.interactive || e.disabled || (k.modelValue === void 0 && (M.value = e.value), A("update:modelValue", e.value));
47
+ };
48
+ return g(() => k.items, (e) => {
49
+ !e.some((e) => e.value === N.value) && e[0] && k.modelValue === void 0 && (M.value = e[0].value);
50
+ }, { deep: !0 }), (t, u) => (l(), i("ol", s(L.value, {
51
+ class: F.value,
52
+ style: I.value
53
+ }), [(l(!0), i(e, null, d(o.items, (e, u) => (l(), i("li", {
54
+ key: e.value,
55
+ class: c(["t-steps__item", `is-${R(e, u)}`])
56
+ }, [a("button", {
57
+ type: "button",
58
+ class: c(["t-steps__button", {
59
+ "is-current": R(e, u) === "current",
60
+ "is-disabled": e.disabled
61
+ }]),
62
+ disabled: !o.interactive || e.disabled,
63
+ "aria-current": R(e, u) === "current" ? "step" : void 0,
64
+ onClick: (t) => z(e)
65
+ }, [f(t.$slots, "item", {
66
+ item: e,
67
+ index: u,
68
+ status: R(e, u),
69
+ current: R(e, u) === "current"
70
+ }, () => [
71
+ a("span", b, [R(e, u) === "complete" ? (l(), n(m(O), s({
72
+ key: 0,
73
+ ref_for: !0
74
+ }, m(v)), null, 16)) : R(e, u) === "error" ? (l(), i("span", x, "!")) : (l(), i("span", S, p(u + 1), 1))]),
75
+ a("span", C, [a("span", w, p(e.label), 1), e.description ? (l(), i("span", T, p(e.description), 1)) : r("", !0)]),
76
+ e.meta ? (l(), i("span", E, p(e.meta), 1)) : r("", !0)
77
+ ])], 10, y)], 2))), 128))], 16));
78
+ }
79
+ });
80
+ //#endregion
81
+ export { D as default };
82
+
83
+ //# sourceMappingURL=TSteps.vue_vue_type_script_setup_true_lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TSteps.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../src/components/TSteps.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { getTreeIcon, treeIconDefaults } from '@treeui/icons';\nimport { computed, ref, useAttrs, watch } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nexport interface TStepItem {\n label: string;\n value: string;\n description?: string;\n meta?: string;\n status?: TStepStatus;\n disabled?: boolean;\n}\n\nconst _treeStepStatuses = ['complete', 'current', 'upcoming', 'error'] as const;\nconst _treeStepOrientations = ['horizontal', 'vertical'] as const;\n\nexport type TStepStatus = (typeof _treeStepStatuses)[number];\nexport type TStepOrientation = (typeof _treeStepOrientations)[number];\n\nconst CheckIcon = getTreeIcon('check');\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: string;\n defaultValue?: string;\n items?: TStepItem[];\n size?: TSize;\n orientation?: TStepOrientation;\n interactive?: boolean;\n }>(),\n {\n modelValue: undefined,\n defaultValue: '',\n items: () => [],\n size: 'md',\n orientation: 'horizontal',\n interactive: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: string];\n}>();\n\ndefineSlots<{\n item?: (props: {\n item: TStepItem;\n index: number;\n status: TStepStatus;\n current: boolean;\n }) => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst internalValue = ref(props.defaultValue || props.items[0]?.value || '');\n\nconst activeValue = computed(() => props.modelValue ?? internalValue.value);\n\nconst currentIndex = computed(() => {\n const activeIndex = props.items.findIndex((item) => item.value === activeValue.value);\n return activeIndex >= 0 ? activeIndex : 0;\n});\n\nconst rootClasses = computed(() => [\n 't-steps',\n `t-steps--${props.size}`,\n `t-steps--${props.orientation}`,\n {\n 'is-interactive': props.interactive,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst resolveStatus = (item: TStepItem, index: number): TStepStatus => {\n if (item.status) {\n return item.status;\n }\n\n if (index < currentIndex.value) {\n return 'complete';\n }\n\n if (index === currentIndex.value) {\n return 'current';\n }\n\n return 'upcoming';\n};\n\nconst selectStep = (item: TStepItem) => {\n if (!props.interactive || item.disabled) {\n return;\n }\n\n if (props.modelValue === undefined) {\n internalValue.value = item.value;\n }\n\n emit('update:modelValue', item.value);\n};\n\nwatch(\n () => props.items,\n (items) => {\n const hasCurrentItem = items.some((item) => item.value === activeValue.value);\n\n if (!hasCurrentItem && items[0] && props.modelValue === undefined) {\n internalValue.value = items[0].value;\n }\n },\n { deep: true },\n);\n</script>\n\n<template>\n <ol\n v-bind=\"rootAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <li\n v-for=\"(item, index) in items\"\n :key=\"item.value\"\n class=\"t-steps__item\"\n :class=\"`is-${resolveStatus(item, index)}`\"\n >\n <button\n type=\"button\"\n class=\"t-steps__button\"\n :class=\"{\n 'is-current': resolveStatus(item, index) === 'current',\n 'is-disabled': item.disabled,\n }\"\n :disabled=\"!interactive || item.disabled\"\n :aria-current=\"resolveStatus(item, index) === 'current' ? 'step' : undefined\"\n @click=\"selectStep(item)\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n :index=\"index\"\n :status=\"resolveStatus(item, index)\"\n :current=\"resolveStatus(item, index) === 'current'\"\n >\n <span\n class=\"t-steps__indicator\"\n aria-hidden=\"true\"\n >\n <CheckIcon\n v-if=\"resolveStatus(item, index) === 'complete'\"\n v-bind=\"treeIconDefaults\"\n />\n <span v-else-if=\"resolveStatus(item, index) === 'error'\">!</span>\n <span v-else>{{ index + 1 }}</span>\n </span>\n\n <span class=\"t-steps__copy\">\n <span class=\"t-steps__label\">{{ item.label }}</span>\n <span\n v-if=\"item.description\"\n class=\"t-steps__description\"\n >\n {{ item.description }}\n </span>\n </span>\n\n <span\n v-if=\"item.meta\"\n class=\"t-steps__meta\"\n >\n {{ item.meta }}\n </span>\n </slot>\n </button>\n </li>\n </ol>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwBA,IAAM,IAAY,EAAY,OAAO,GAE/B,IAAQ,GAmBR,IAAO,GAaP,IAAQ,EAAS,GACjB,IAAgB,EAAI,EAAM,gBAAgB,EAAM,MAAM,EAAE,EAAE,SAAS,EAAE,GAErE,IAAc,QAAe,EAAM,cAAc,EAAc,KAAK,GAEpE,IAAe,QAAe;GAClC,IAAM,IAAc,EAAM,MAAM,WAAW,MAAS,EAAK,UAAU,EAAY,KAAK;GACpF,OAAO,KAAe,IAAI,IAAc;EAC1C,CAAC,GAEK,IAAc,QAAe;GACjC;GACA,YAAY,EAAM;GAClB,YAAY,EAAM;GAClB,EACE,kBAAkB,EAAM,YAC1B;GACA,EAAM;EACR,CAAC,GAEK,IAAY,QAAe,EAAM,KAAK,GAEtC,IAAY,QAAe;GAC/B,IAAM,EAAE,OAAO,GAAQ,OAAO,GAAQ,GAAG,MAAS;GAClD,OAAO;EACT,CAAC,GAEK,KAAiB,GAAiB,MAClC,EAAK,SACA,EAAK,SAGV,IAAQ,EAAa,QAChB,aAGL,MAAU,EAAa,QAClB,YAGF,YAGH,KAAc,MAAoB;GAClC,CAAC,EAAM,eAAe,EAAK,aAI3B,EAAM,eAAe,KAAA,MACvB,EAAc,QAAQ,EAAK,QAG7B,EAAK,qBAAqB,EAAK,KAAK;EACtC;SAEA,QACQ,EAAM,QACX,MAAU;GAGT,AAAI,CAFmB,EAAM,MAAM,MAAS,EAAK,UAAU,EAAY,KAElE,KAAkB,EAAM,MAAM,EAAM,eAAe,KAAA,MACtD,EAAc,QAAQ,EAAM,EAAE,CAAC;EAEnC,GACA,EAAE,MAAM,GAAK,CACf,mBAIE,EA4DK,MA5DL,EACU,EA2DL,OA3Dc;GAChB,OAAO,EAAA;GACP,OAAO,EAAA;eAER,EAsDK,GAAA,MAAA,EArDqB,EAAA,QAAhB,GAAM,YADhB,EAsDK,MAAA;GApDF,KAAK,EAAK;GACX,OAAK,EAAA,CAAC,iBAAe,MACP,EAAc,GAAM,CAAK,GAAA,CAAA;MAEvC,EA+CS,UAAA;GA9CP,MAAK;GACL,OAAK,EAAA,CAAC,mBAAiB;kBACW,EAAc,GAAM,CAAK,MAAA;mBAA0C,EAAK;;GAIzG,UAAQ,CAAG,EAAA,eAAe,EAAK;GAC/B,gBAAc,EAAc,GAAM,CAAK,MAAA,YAAA,SAA2B,KAAA;GAClE,UAAK,MAAE,EAAW,CAAI;MAEvB,EAmCO,EAAA,QAAA,QAAA;GAjCE;GACC;GACP,QAAQ,EAAc,GAAM,CAAK;GACjC,SAAS,EAAc,GAAM,CAAK,MAAA;WA8B9B;GA5BL,EAUO,QAVP,GAUO,CALG,EAAc,GAAM,CAAK,MAAA,cAAA,EAAA,GADjC,EAGE,EAAA,CAAA,GAHF,EAGE;;;MADQ,EAAA,CAAA,CAAgB,GAAA,MAAA,EAAA,KAET,EAAc,GAAM,CAAK,MAAA,WAAA,EAAA,GAA1C,EAAiE,QAAA,GAAR,GAAC,MAAA,EAAA,GAC1D,EAAmC,QAAA,GAAA,EAAnB,IAAK,CAAA,GAAA,CAAA,EAAA,CAAA;GAGvB,EAQO,QARP,GAQO,CAPL,EAAoD,QAApD,GAAoD,EAApB,EAAK,KAAK,GAAA,CAAA,GAElC,EAAK,eAAA,EAAA,GADb,EAKO,QALP,GAKO,EADF,EAAK,WAAW,GAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,CAAA;GAKf,EAAK,QAAA,EAAA,GADb,EAKO,QALP,GAKO,EADF,EAAK,IAAI,GAAA,CAAA,KAAA,EAAA,IAAA,EAAA"}
@@ -0,0 +1,2 @@
1
+ var e=require("./TSwitch.vue_vue_type_script_setup_true_lang.cjs").default;exports.default=e;
2
+ //# sourceMappingURL=TSwitch.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TSwitch.cjs","names":[],"sources":["../../src/components/TSwitch.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: boolean;\n size?: TSize;\n disabled?: boolean;\n invalid?: boolean;\n }>(),\n {\n modelValue: false,\n size: 'md',\n disabled: false,\n invalid: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: boolean];\n}>();\n\nconst attrs = useAttrs();\n\nconst rootClasses = computed(() => [\n 't-switch',\n `t-switch--${props.size}`,\n {\n 'is-checked': props.modelValue,\n 'is-disabled': props.disabled,\n 'is-invalid': props.invalid,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst inputAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst onChange = () => {\n emit('update:modelValue', !props.modelValue);\n};\n</script>\n\n<template>\n <label\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <input\n v-bind=\"inputAttrs\"\n type=\"checkbox\"\n role=\"switch\"\n class=\"t-switch__input\"\n :checked=\"modelValue\"\n :disabled=\"disabled\"\n :aria-checked=\"modelValue\"\n :aria-invalid=\"invalid || undefined\"\n @change=\"onChange\"\n >\n <span\n class=\"t-switch__track\"\n aria-hidden=\"true\"\n >\n <span class=\"t-switch__thumb\" />\n </span>\n <span\n v-if=\"$slots.default\"\n class=\"t-switch__label\"\n >\n <slot />\n </span>\n </label>\n</template>\n"],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import e from "./TSwitch.vue_vue_type_script_setup_true_lang.js";
2
+ //#region src/components/TSwitch.vue
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
6
+
7
+ //# sourceMappingURL=TSwitch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TSwitch.js","names":[],"sources":["../../src/components/TSwitch.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: boolean;\n size?: TSize;\n disabled?: boolean;\n invalid?: boolean;\n }>(),\n {\n modelValue: false,\n size: 'md',\n disabled: false,\n invalid: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: boolean];\n}>();\n\nconst attrs = useAttrs();\n\nconst rootClasses = computed(() => [\n 't-switch',\n `t-switch--${props.size}`,\n {\n 'is-checked': props.modelValue,\n 'is-disabled': props.disabled,\n 'is-invalid': props.invalid,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst inputAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst onChange = () => {\n emit('update:modelValue', !props.modelValue);\n};\n</script>\n\n<template>\n <label\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <input\n v-bind=\"inputAttrs\"\n type=\"checkbox\"\n role=\"switch\"\n class=\"t-switch__input\"\n :checked=\"modelValue\"\n :disabled=\"disabled\"\n :aria-checked=\"modelValue\"\n :aria-invalid=\"invalid || undefined\"\n @change=\"onChange\"\n >\n <span\n class=\"t-switch__track\"\n aria-hidden=\"true\"\n >\n <span class=\"t-switch__thumb\" />\n </span>\n <span\n v-if=\"$slots.default\"\n class=\"t-switch__label\"\n >\n <slot />\n </span>\n </label>\n</template>\n"],"mappings":""}
@@ -0,0 +1,2 @@
1
+ let e=require("vue");var t=[`checked`,`disabled`,`aria-checked`,`aria-invalid`],n={key:0,class:`t-switch__label`},r=(0,e.defineComponent)({inheritAttrs:!1,__name:`TSwitch`,props:{modelValue:{type:Boolean,default:!1},size:{default:`md`},disabled:{type:Boolean,default:!1},invalid:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(r,{emit:i}){let a=r,o=i,s=(0,e.useAttrs)(),c=(0,e.computed)(()=>[`t-switch`,`t-switch--${a.size}`,{"is-checked":a.modelValue,"is-disabled":a.disabled,"is-invalid":a.invalid},s.class]),l=(0,e.computed)(()=>s.style),u=(0,e.computed)(()=>{let{class:e,style:t,...n}=s;return n}),d=()=>{o(`update:modelValue`,!a.modelValue)};return(i,a)=>((0,e.openBlock)(),(0,e.createElementBlock)(`label`,{class:(0,e.normalizeClass)(c.value),style:(0,e.normalizeStyle)(l.value)},[(0,e.createElementVNode)(`input`,(0,e.mergeProps)(u.value,{type:`checkbox`,role:`switch`,class:`t-switch__input`,checked:r.modelValue,disabled:r.disabled,"aria-checked":r.modelValue,"aria-invalid":r.invalid||void 0,onChange:d}),null,16,t),a[0]||=(0,e.createElementVNode)(`span`,{class:`t-switch__track`,"aria-hidden":`true`},[(0,e.createElementVNode)(`span`,{class:`t-switch__thumb`})],-1),i.$slots.default?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,n,[(0,e.renderSlot)(i.$slots,`default`)])):(0,e.createCommentVNode)(``,!0)],6))}});exports.default=r;
2
+ //# sourceMappingURL=TSwitch.vue_vue_type_script_setup_true_lang.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TSwitch.vue_vue_type_script_setup_true_lang.cjs","names":["$slots"],"sources":["../../src/components/TSwitch.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: boolean;\n size?: TSize;\n disabled?: boolean;\n invalid?: boolean;\n }>(),\n {\n modelValue: false,\n size: 'md',\n disabled: false,\n invalid: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: boolean];\n}>();\n\nconst attrs = useAttrs();\n\nconst rootClasses = computed(() => [\n 't-switch',\n `t-switch--${props.size}`,\n {\n 'is-checked': props.modelValue,\n 'is-disabled': props.disabled,\n 'is-invalid': props.invalid,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst inputAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst onChange = () => {\n emit('update:modelValue', !props.modelValue);\n};\n</script>\n\n<template>\n <label\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <input\n v-bind=\"inputAttrs\"\n type=\"checkbox\"\n role=\"switch\"\n class=\"t-switch__input\"\n :checked=\"modelValue\"\n :disabled=\"disabled\"\n :aria-checked=\"modelValue\"\n :aria-invalid=\"invalid || undefined\"\n @change=\"onChange\"\n >\n <span\n class=\"t-switch__track\"\n aria-hidden=\"true\"\n >\n <span class=\"t-switch__thumb\" />\n </span>\n <span\n v-if=\"$slots.default\"\n class=\"t-switch__label\"\n >\n <slot />\n </span>\n </label>\n</template>\n"],"mappings":"gWAQA,IAAM,EAAQ,EAeR,EAAO,EAIP,GAAA,EAAA,EAAA,SAAA,CAAiB,EAEjB,GAAA,EAAA,EAAA,SAAA,KAA6B,CACjC,WACA,aAAa,EAAM,OACnB,CACE,aAAc,EAAM,WACpB,cAAe,EAAM,SACrB,aAAc,EAAM,OACtB,EACA,EAAM,KACR,CAAC,EAEK,GAAA,EAAA,EAAA,SAAA,KAA2B,EAAM,KAAK,EAEtC,GAAA,EAAA,EAAA,SAAA,KAA4B,CAChC,GAAM,CAAE,MAAO,EAAQ,MAAO,EAAQ,GAAG,GAAS,EAClD,OAAO,CACT,CAAC,EAEK,MAAiB,CACrB,EAAK,oBAAqB,CAAC,EAAM,UAAU,CAC7C,2DA+BU,QAAA,CA1BL,OAAA,EAAA,EAAA,eAAA,CAAO,EAAA,KAAW,EAClB,OAAA,EAAA,EAAA,eAAA,CAAO,EAAA,KAAS,6BAYhB,SAAA,EAAA,EAAA,WAAA,CATS,EAST,MATmB,CAClB,KAAK,WACL,KAAK,SACL,MAAM,kBACL,QAAS,EAAA,WACT,SAAU,EAAA,SACV,eAAc,EAAA,WACd,eAAc,EAAA,SAAW,IAAA,GACjB,wDAOJ,OAAA,CAJL,MAAM,kBACN,cAAY,kCAEoB,OAAA,CAA1B,MAAM,iBAAiB,CAAA,CAAA,EAAA,EAAA,EAGvBA,EAAAA,OAAO,UAAA,EAAA,EAAA,UAAA,CAAA,GAAA,EAAA,EAAA,mBAAA,CAIR,OALP,EAKO,EAAA,EAAA,EAAA,WAAA,CADG,EAAA,OAAA,SAAA,CAAA,CAAA,IAAA,EAAA,EAAA,mBAAA,CAAA,GAAA,EAAA"}
@@ -0,0 +1,71 @@
1
+ import { computed as e, createCommentVNode as t, createElementBlock as n, createElementVNode as r, defineComponent as i, mergeProps as a, normalizeClass as o, normalizeStyle as s, openBlock as c, renderSlot as l, useAttrs as u } from "vue";
2
+ //#region src/components/TSwitch.vue?vue&type=script&setup=true&lang.ts
3
+ var d = [
4
+ "checked",
5
+ "disabled",
6
+ "aria-checked",
7
+ "aria-invalid"
8
+ ], f = {
9
+ key: 0,
10
+ class: "t-switch__label"
11
+ }, p = /*@__PURE__*/ i({
12
+ inheritAttrs: !1,
13
+ __name: "TSwitch",
14
+ props: {
15
+ modelValue: {
16
+ type: Boolean,
17
+ default: !1
18
+ },
19
+ size: { default: "md" },
20
+ disabled: {
21
+ type: Boolean,
22
+ default: !1
23
+ },
24
+ invalid: {
25
+ type: Boolean,
26
+ default: !1
27
+ }
28
+ },
29
+ emits: ["update:modelValue"],
30
+ setup(i, { emit: p }) {
31
+ let m = i, h = p, g = u(), _ = e(() => [
32
+ "t-switch",
33
+ `t-switch--${m.size}`,
34
+ {
35
+ "is-checked": m.modelValue,
36
+ "is-disabled": m.disabled,
37
+ "is-invalid": m.invalid
38
+ },
39
+ g.class
40
+ ]), v = e(() => g.style), y = e(() => {
41
+ let { class: e, style: t, ...n } = g;
42
+ return n;
43
+ }), b = () => {
44
+ h("update:modelValue", !m.modelValue);
45
+ };
46
+ return (e, u) => (c(), n("label", {
47
+ class: o(_.value),
48
+ style: s(v.value)
49
+ }, [
50
+ r("input", a(y.value, {
51
+ type: "checkbox",
52
+ role: "switch",
53
+ class: "t-switch__input",
54
+ checked: i.modelValue,
55
+ disabled: i.disabled,
56
+ "aria-checked": i.modelValue,
57
+ "aria-invalid": i.invalid || void 0,
58
+ onChange: b
59
+ }), null, 16, d),
60
+ u[0] ||= r("span", {
61
+ class: "t-switch__track",
62
+ "aria-hidden": "true"
63
+ }, [r("span", { class: "t-switch__thumb" })], -1),
64
+ e.$slots.default ? (c(), n("span", f, [l(e.$slots, "default")])) : t("", !0)
65
+ ], 6));
66
+ }
67
+ });
68
+ //#endregion
69
+ export { p as default };
70
+
71
+ //# sourceMappingURL=TSwitch.vue_vue_type_script_setup_true_lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TSwitch.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../src/components/TSwitch.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: boolean;\n size?: TSize;\n disabled?: boolean;\n invalid?: boolean;\n }>(),\n {\n modelValue: false,\n size: 'md',\n disabled: false,\n invalid: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: boolean];\n}>();\n\nconst attrs = useAttrs();\n\nconst rootClasses = computed(() => [\n 't-switch',\n `t-switch--${props.size}`,\n {\n 'is-checked': props.modelValue,\n 'is-disabled': props.disabled,\n 'is-invalid': props.invalid,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst inputAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst onChange = () => {\n emit('update:modelValue', !props.modelValue);\n};\n</script>\n\n<template>\n <label\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <input\n v-bind=\"inputAttrs\"\n type=\"checkbox\"\n role=\"switch\"\n class=\"t-switch__input\"\n :checked=\"modelValue\"\n :disabled=\"disabled\"\n :aria-checked=\"modelValue\"\n :aria-invalid=\"invalid || undefined\"\n @change=\"onChange\"\n >\n <span\n class=\"t-switch__track\"\n aria-hidden=\"true\"\n >\n <span class=\"t-switch__thumb\" />\n </span>\n <span\n v-if=\"$slots.default\"\n class=\"t-switch__label\"\n >\n <slot />\n </span>\n </label>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQA,IAAM,IAAQ,GAeR,IAAO,GAIP,IAAQ,EAAS,GAEjB,IAAc,QAAe;GACjC;GACA,aAAa,EAAM;GACnB;IACE,cAAc,EAAM;IACpB,eAAe,EAAM;IACrB,cAAc,EAAM;GACtB;GACA,EAAM;EACR,CAAC,GAEK,IAAY,QAAe,EAAM,KAAK,GAEtC,IAAa,QAAe;GAChC,IAAM,EAAE,OAAO,GAAQ,OAAO,GAAQ,GAAG,MAAS;GAClD,OAAO;EACT,CAAC,GAEK,UAAiB;GACrB,EAAK,qBAAqB,CAAC,EAAM,UAAU;EAC7C;yBAIE,EA2BQ,SAAA;GA1BL,OAAK,EAAE,EAAA,KAAW;GAClB,OAAK,EAAE,EAAA,KAAS;;GAEjB,EAUC,SAVD,EACU,EAST,OATmB;IAClB,MAAK;IACL,MAAK;IACL,OAAM;IACL,SAAS,EAAA;IACT,UAAU,EAAA;IACV,gBAAc,EAAA;IACd,gBAAc,EAAA,WAAW,KAAA;IACjB;;YAEX,EAKO,QAAA;IAJL,OAAM;IACN,eAAY;OAEZ,EAAgC,QAAA,EAA1B,OAAM,kBAAiB,CAAA,CAAA,GAAA,EAAA;GAGvBA,EAAAA,OAAO,WAAA,EAAA,GADf,EAKO,QALP,GAKO,CADL,EAAQ,EAAA,QAAA,SAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA"}
@@ -0,0 +1,2 @@
1
+ var e=require("./TTab.vue_vue_type_script_setup_true_lang.cjs").default;exports.default=e;
2
+ //# sourceMappingURL=TTab.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TTab.cjs","names":[],"sources":["../../src/components/TTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, inject, onBeforeUnmount, onMounted, watch } from 'vue';\nimport { TABS_INJECTION_KEY } from './tabs-context';\n\nconst props = withDefaults(\n defineProps<{\n value: string;\n disabled?: boolean;\n }>(),\n {\n disabled: false,\n },\n);\n\nconst ctx = inject(TABS_INJECTION_KEY);\nif (!ctx) {\n throw new Error('TTab must be used inside TTabs');\n}\n\nonMounted(() => {\n ctx.registerTab(props.value);\n ctx.setTabDisabled(props.value, props.disabled);\n});\n\nwatch(\n () => props.disabled,\n (val) => ctx.setTabDisabled(props.value, val),\n);\n\nonBeforeUnmount(() => {\n ctx.unregisterTab(props.value);\n});\n\nconst isActive = computed(() => ctx.activeValue.value === props.value);\nconst isDisabled = computed(() => ctx.isTabDisabled(props.value));\nconst tabId = computed(() => `${ctx.baseId}-tab-${props.value}`);\nconst panelId = computed(() => `${ctx.baseId}-panel-${props.value}`);\n\nconst onClick = () => {\n if (isDisabled.value) return;\n ctx.setActiveValue(props.value);\n};\n\nconst classes = computed(() => [\n 't-tabs__tab',\n `t-tabs__tab--${ctx.size.value}`,\n {\n 'is-active': isActive.value,\n 'is-disabled': isDisabled.value,\n },\n]);\n</script>\n\n<template>\n <button\n :id=\"tabId\"\n role=\"tab\"\n type=\"button\"\n :class=\"classes\"\n :aria-selected=\"isActive\"\n :aria-controls=\"panelId\"\n :tabindex=\"isActive ? 0 : -1\"\n :disabled=\"isDisabled || undefined\"\n :data-tab-value=\"value\"\n @click=\"onClick\"\n >\n <slot />\n </button>\n</template>\n"],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import e from "./TTab.vue_vue_type_script_setup_true_lang.js";
2
+ //#region src/components/TTab.vue
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
6
+
7
+ //# sourceMappingURL=TTab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TTab.js","names":[],"sources":["../../src/components/TTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, inject, onBeforeUnmount, onMounted, watch } from 'vue';\nimport { TABS_INJECTION_KEY } from './tabs-context';\n\nconst props = withDefaults(\n defineProps<{\n value: string;\n disabled?: boolean;\n }>(),\n {\n disabled: false,\n },\n);\n\nconst ctx = inject(TABS_INJECTION_KEY);\nif (!ctx) {\n throw new Error('TTab must be used inside TTabs');\n}\n\nonMounted(() => {\n ctx.registerTab(props.value);\n ctx.setTabDisabled(props.value, props.disabled);\n});\n\nwatch(\n () => props.disabled,\n (val) => ctx.setTabDisabled(props.value, val),\n);\n\nonBeforeUnmount(() => {\n ctx.unregisterTab(props.value);\n});\n\nconst isActive = computed(() => ctx.activeValue.value === props.value);\nconst isDisabled = computed(() => ctx.isTabDisabled(props.value));\nconst tabId = computed(() => `${ctx.baseId}-tab-${props.value}`);\nconst panelId = computed(() => `${ctx.baseId}-panel-${props.value}`);\n\nconst onClick = () => {\n if (isDisabled.value) return;\n ctx.setActiveValue(props.value);\n};\n\nconst classes = computed(() => [\n 't-tabs__tab',\n `t-tabs__tab--${ctx.size.value}`,\n {\n 'is-active': isActive.value,\n 'is-disabled': isDisabled.value,\n },\n]);\n</script>\n\n<template>\n <button\n :id=\"tabId\"\n role=\"tab\"\n type=\"button\"\n :class=\"classes\"\n :aria-selected=\"isActive\"\n :aria-controls=\"panelId\"\n :tabindex=\"isActive ? 0 : -1\"\n :disabled=\"isDisabled || undefined\"\n :data-tab-value=\"value\"\n @click=\"onClick\"\n >\n <slot />\n </button>\n</template>\n"],"mappings":""}
@@ -0,0 +1,2 @@
1
+ const e=require("./tabs-context.cjs");let t=require("vue");var n=[`id`,`aria-selected`,`aria-controls`,`tabindex`,`disabled`,`data-tab-value`],r=(0,t.defineComponent)({__name:`TTab`,props:{value:{},disabled:{type:Boolean,default:!1}},setup(r){let i=r,a=(0,t.inject)(e.TABS_INJECTION_KEY);if(!a)throw Error(`TTab must be used inside TTabs`);(0,t.onMounted)(()=>{a.registerTab(i.value),a.setTabDisabled(i.value,i.disabled)}),(0,t.watch)(()=>i.disabled,e=>a.setTabDisabled(i.value,e)),(0,t.onBeforeUnmount)(()=>{a.unregisterTab(i.value)});let o=(0,t.computed)(()=>a.activeValue.value===i.value),s=(0,t.computed)(()=>a.isTabDisabled(i.value)),c=(0,t.computed)(()=>`${a.baseId}-tab-${i.value}`),l=(0,t.computed)(()=>`${a.baseId}-panel-${i.value}`),u=()=>{s.value||a.setActiveValue(i.value)},d=(0,t.computed)(()=>[`t-tabs__tab`,`t-tabs__tab--${a.size.value}`,{"is-active":o.value,"is-disabled":s.value}]);return(e,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{id:c.value,role:`tab`,type:`button`,class:(0,t.normalizeClass)(d.value),"aria-selected":o.value,"aria-controls":l.value,tabindex:o.value?0:-1,disabled:s.value||void 0,"data-tab-value":r.value,onClick:u},[(0,t.renderSlot)(e.$slots,`default`)],10,n))}});exports.default=r;
2
+ //# sourceMappingURL=TTab.vue_vue_type_script_setup_true_lang.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TTab.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../src/components/TTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, inject, onBeforeUnmount, onMounted, watch } from 'vue';\nimport { TABS_INJECTION_KEY } from './tabs-context';\n\nconst props = withDefaults(\n defineProps<{\n value: string;\n disabled?: boolean;\n }>(),\n {\n disabled: false,\n },\n);\n\nconst ctx = inject(TABS_INJECTION_KEY);\nif (!ctx) {\n throw new Error('TTab must be used inside TTabs');\n}\n\nonMounted(() => {\n ctx.registerTab(props.value);\n ctx.setTabDisabled(props.value, props.disabled);\n});\n\nwatch(\n () => props.disabled,\n (val) => ctx.setTabDisabled(props.value, val),\n);\n\nonBeforeUnmount(() => {\n ctx.unregisterTab(props.value);\n});\n\nconst isActive = computed(() => ctx.activeValue.value === props.value);\nconst isDisabled = computed(() => ctx.isTabDisabled(props.value));\nconst tabId = computed(() => `${ctx.baseId}-tab-${props.value}`);\nconst panelId = computed(() => `${ctx.baseId}-panel-${props.value}`);\n\nconst onClick = () => {\n if (isDisabled.value) return;\n ctx.setActiveValue(props.value);\n};\n\nconst classes = computed(() => [\n 't-tabs__tab',\n `t-tabs__tab--${ctx.size.value}`,\n {\n 'is-active': isActive.value,\n 'is-disabled': isDisabled.value,\n },\n]);\n</script>\n\n<template>\n <button\n :id=\"tabId\"\n role=\"tab\"\n type=\"button\"\n :class=\"classes\"\n :aria-selected=\"isActive\"\n :aria-controls=\"panelId\"\n :tabindex=\"isActive ? 0 : -1\"\n :disabled=\"isDisabled || undefined\"\n :data-tab-value=\"value\"\n @click=\"onClick\"\n >\n <slot />\n </button>\n</template>\n"],"mappings":"mPAIA,IAAM,EAAQ,EAUR,GAAA,EAAA,EAAA,OAAA,CAAa,EAAA,kBAAkB,EACrC,GAAI,CAAC,EACH,MAAU,MAAM,gCAAgC,GAGlD,EAAA,EAAA,UAAA,KAAgB,CACd,EAAI,YAAY,EAAM,KAAK,EAC3B,EAAI,eAAe,EAAM,MAAO,EAAM,QAAQ,CAChD,CAAC,GAED,EAAA,EAAA,MAAA,KACQ,EAAM,SACX,GAAQ,EAAI,eAAe,EAAM,MAAO,CAAG,CAC9C,GAEA,EAAA,EAAA,gBAAA,KAAsB,CACpB,EAAI,cAAc,EAAM,KAAK,CAC/B,CAAC,EAED,IAAM,GAAA,EAAA,EAAA,SAAA,KAA0B,EAAI,YAAY,QAAU,EAAM,KAAK,EAC/D,GAAA,EAAA,EAAA,SAAA,KAA4B,EAAI,cAAc,EAAM,KAAK,CAAC,EAC1D,GAAA,EAAA,EAAA,SAAA,KAAuB,GAAG,EAAI,OAAO,OAAO,EAAM,OAAO,EACzD,GAAA,EAAA,EAAA,SAAA,KAAyB,GAAG,EAAI,OAAO,SAAS,EAAM,OAAO,EAE7D,MAAgB,CAChB,EAAW,OACf,EAAI,eAAe,EAAM,KAAK,CAChC,EAEM,GAAA,EAAA,EAAA,SAAA,KAAyB,CAC7B,cACA,gBAAgB,EAAI,KAAK,QACzB,CACE,YAAa,EAAS,MACtB,cAAe,EAAW,KAC5B,CACF,CAAC,2DAiBU,SAAA,CAZN,GAAI,EAAA,MACL,KAAK,MACL,KAAK,SACJ,OAAA,EAAA,EAAA,eAAA,CAAO,EAAA,KAAO,EACd,gBAAe,EAAA,MACf,gBAAe,EAAA,MACf,SAAU,EAAA,MAAQ,EAAA,GAClB,SAAU,EAAA,OAAc,IAAA,GACxB,iBAAgB,EAAA,MACT,6BAEA,EAAA,OAAA,SAAA,CAAA,EAAA,GAAA,CAAA"}
@@ -0,0 +1,55 @@
1
+ import { TABS_INJECTION_KEY as e } from "./tabs-context.js";
2
+ import { computed as t, createElementBlock as n, defineComponent as r, inject as i, normalizeClass as a, onBeforeUnmount as o, onMounted as s, openBlock as c, renderSlot as l, watch as u } from "vue";
3
+ //#region src/components/TTab.vue?vue&type=script&setup=true&lang.ts
4
+ var d = [
5
+ "id",
6
+ "aria-selected",
7
+ "aria-controls",
8
+ "tabindex",
9
+ "disabled",
10
+ "data-tab-value"
11
+ ], f = /*@__PURE__*/ r({
12
+ __name: "TTab",
13
+ props: {
14
+ value: {},
15
+ disabled: {
16
+ type: Boolean,
17
+ default: !1
18
+ }
19
+ },
20
+ setup(r) {
21
+ let f = r, p = i(e);
22
+ if (!p) throw Error("TTab must be used inside TTabs");
23
+ s(() => {
24
+ p.registerTab(f.value), p.setTabDisabled(f.value, f.disabled);
25
+ }), u(() => f.disabled, (e) => p.setTabDisabled(f.value, e)), o(() => {
26
+ p.unregisterTab(f.value);
27
+ });
28
+ let m = t(() => p.activeValue.value === f.value), h = t(() => p.isTabDisabled(f.value)), g = t(() => `${p.baseId}-tab-${f.value}`), _ = t(() => `${p.baseId}-panel-${f.value}`), v = () => {
29
+ h.value || p.setActiveValue(f.value);
30
+ }, y = t(() => [
31
+ "t-tabs__tab",
32
+ `t-tabs__tab--${p.size.value}`,
33
+ {
34
+ "is-active": m.value,
35
+ "is-disabled": h.value
36
+ }
37
+ ]);
38
+ return (e, t) => (c(), n("button", {
39
+ id: g.value,
40
+ role: "tab",
41
+ type: "button",
42
+ class: a(y.value),
43
+ "aria-selected": m.value,
44
+ "aria-controls": _.value,
45
+ tabindex: m.value ? 0 : -1,
46
+ disabled: h.value || void 0,
47
+ "data-tab-value": r.value,
48
+ onClick: v
49
+ }, [l(e.$slots, "default")], 10, d));
50
+ }
51
+ });
52
+ //#endregion
53
+ export { f as default };
54
+
55
+ //# sourceMappingURL=TTab.vue_vue_type_script_setup_true_lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TTab.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../src/components/TTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, inject, onBeforeUnmount, onMounted, watch } from 'vue';\nimport { TABS_INJECTION_KEY } from './tabs-context';\n\nconst props = withDefaults(\n defineProps<{\n value: string;\n disabled?: boolean;\n }>(),\n {\n disabled: false,\n },\n);\n\nconst ctx = inject(TABS_INJECTION_KEY);\nif (!ctx) {\n throw new Error('TTab must be used inside TTabs');\n}\n\nonMounted(() => {\n ctx.registerTab(props.value);\n ctx.setTabDisabled(props.value, props.disabled);\n});\n\nwatch(\n () => props.disabled,\n (val) => ctx.setTabDisabled(props.value, val),\n);\n\nonBeforeUnmount(() => {\n ctx.unregisterTab(props.value);\n});\n\nconst isActive = computed(() => ctx.activeValue.value === props.value);\nconst isDisabled = computed(() => ctx.isTabDisabled(props.value));\nconst tabId = computed(() => `${ctx.baseId}-tab-${props.value}`);\nconst panelId = computed(() => `${ctx.baseId}-panel-${props.value}`);\n\nconst onClick = () => {\n if (isDisabled.value) return;\n ctx.setActiveValue(props.value);\n};\n\nconst classes = computed(() => [\n 't-tabs__tab',\n `t-tabs__tab--${ctx.size.value}`,\n {\n 'is-active': isActive.value,\n 'is-disabled': isDisabled.value,\n },\n]);\n</script>\n\n<template>\n <button\n :id=\"tabId\"\n role=\"tab\"\n type=\"button\"\n :class=\"classes\"\n :aria-selected=\"isActive\"\n :aria-controls=\"panelId\"\n :tabindex=\"isActive ? 0 : -1\"\n :disabled=\"isDisabled || undefined\"\n :data-tab-value=\"value\"\n @click=\"onClick\"\n >\n <slot />\n </button>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;EAIA,IAAM,IAAQ,GAUR,IAAM,EAAO,CAAkB;EACrC,IAAI,CAAC,GACH,MAAU,MAAM,gCAAgC;EAalD,AAVA,QAAgB;GAEd,AADA,EAAI,YAAY,EAAM,KAAK,GAC3B,EAAI,eAAe,EAAM,OAAO,EAAM,QAAQ;EAChD,CAAC,GAED,QACQ,EAAM,WACX,MAAQ,EAAI,eAAe,EAAM,OAAO,CAAG,CAC9C,GAEA,QAAsB;GACpB,EAAI,cAAc,EAAM,KAAK;EAC/B,CAAC;EAED,IAAM,IAAW,QAAe,EAAI,YAAY,UAAU,EAAM,KAAK,GAC/D,IAAa,QAAe,EAAI,cAAc,EAAM,KAAK,CAAC,GAC1D,IAAQ,QAAe,GAAG,EAAI,OAAO,OAAO,EAAM,OAAO,GACzD,IAAU,QAAe,GAAG,EAAI,OAAO,SAAS,EAAM,OAAO,GAE7D,UAAgB;GAChB,EAAW,SACf,EAAI,eAAe,EAAM,KAAK;EAChC,GAEM,IAAU,QAAe;GAC7B;GACA,gBAAgB,EAAI,KAAK;GACzB;IACE,aAAa,EAAS;IACtB,eAAe,EAAW;GAC5B;EACF,CAAC;yBAIC,EAaS,UAAA;GAZN,IAAI,EAAA;GACL,MAAK;GACL,MAAK;GACJ,OAAK,EAAE,EAAA,KAAO;GACd,iBAAe,EAAA;GACf,iBAAe,EAAA;GACf,UAAU,EAAA,QAAQ,IAAA;GAClB,UAAU,EAAA,SAAc,KAAA;GACxB,kBAAgB,EAAA;GACT;MAER,EAAQ,EAAA,QAAA,SAAA,CAAA,GAAA,IAAA,CAAA"}
@@ -0,0 +1,2 @@
1
+ var e=require("./TTabList.vue_vue_type_script_setup_true_lang.cjs").default;exports.default=e;
2
+ //# sourceMappingURL=TTabList.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TTabList.cjs","names":[],"sources":["../../src/components/TTabList.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { isActivationKey } from '@treeui/utils';\nimport { computed, inject, ref } from 'vue';\nimport { TABS_INJECTION_KEY } from './tabs-context';\n\nconst ctx = inject(TABS_INJECTION_KEY);\nif (!ctx) {\n throw new Error('TTabList must be used inside TTabs');\n}\n\nconst listRef = ref<HTMLElement | null>(null);\n\nconst getAllTabElements = (): HTMLElement[] => {\n if (!listRef.value) return [];\n return Array.from(\n listRef.value.querySelectorAll<HTMLElement>('[role=\"tab\"]'),\n );\n};\n\nconst getEnabledTabElements = (): HTMLElement[] => {\n return getAllTabElements().filter((el) => {\n const value = el.dataset.tabValue;\n return value ? !ctx.isTabDisabled(value) : false;\n });\n};\n\nconst moveFocus = (direction: 1 | -1) => {\n const tabs = getEnabledTabElements();\n if (!tabs.length) return;\n\n const current = document.activeElement as HTMLElement;\n const currentIndex = tabs.indexOf(current);\n let nextIndex = currentIndex + direction;\n\n if (nextIndex < 0) nextIndex = tabs.length - 1;\n if (nextIndex >= tabs.length) nextIndex = 0;\n\n const nextTab = tabs[nextIndex];\n nextTab.focus();\n\n if (ctx.activationMode.value === 'automatic') {\n const value = nextTab.dataset.tabValue;\n if (value) ctx.setActiveValue(value);\n }\n};\n\nconst focusFirst = () => {\n const tabs = getEnabledTabElements();\n if (!tabs.length) return;\n tabs[0].focus();\n if (ctx.activationMode.value === 'automatic') {\n const value = tabs[0].dataset.tabValue;\n if (value) ctx.setActiveValue(value);\n }\n};\n\nconst focusLast = () => {\n const tabs = getEnabledTabElements();\n if (!tabs.length) return;\n const last = tabs[tabs.length - 1];\n last.focus();\n if (ctx.activationMode.value === 'automatic') {\n const value = last.dataset.tabValue;\n if (value) ctx.setActiveValue(value);\n }\n};\n\nconst onKeydown = (event: KeyboardEvent) => {\n switch (event.key) {\n case 'ArrowRight':\n event.preventDefault();\n moveFocus(1);\n break;\n case 'ArrowLeft':\n event.preventDefault();\n moveFocus(-1);\n break;\n case 'Home':\n event.preventDefault();\n focusFirst();\n break;\n case 'End':\n event.preventDefault();\n focusLast();\n break;\n default:\n if (ctx.activationMode.value === 'manual' && isActivationKey(event)) {\n event.preventDefault();\n const target = event.target as HTMLElement;\n const value = target.dataset?.tabValue;\n if (value) ctx.setActiveValue(value);\n }\n break;\n }\n};\n\nconst classes = computed(() => [\n 't-tabs__list',\n]);\n</script>\n\n<template>\n <div\n ref=\"listRef\"\n role=\"tablist\"\n aria-orientation=\"horizontal\"\n :class=\"classes\"\n @keydown=\"onKeydown\"\n >\n <slot />\n </div>\n</template>\n"],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import e from "./TTabList.vue_vue_type_script_setup_true_lang.js";
2
+ //#region src/components/TTabList.vue
3
+ var t = e;
4
+ //#endregion
5
+ export { t as default };
6
+
7
+ //# sourceMappingURL=TTabList.js.map