vlite3 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (465) hide show
  1. package/_virtual/_plugin-vue_export-helper.js +9 -0
  2. package/components/Accordion/Accordion.vue.d.ts +44 -0
  3. package/components/Accordion/Accordion.vue.js +95 -0
  4. package/components/Accordion/Accordion.vue2.js +4 -0
  5. package/components/Accordion/AccordionContent.vue.d.ts +22 -0
  6. package/components/Accordion/AccordionContent.vue.js +7 -0
  7. package/components/Accordion/AccordionContent.vue2.js +47 -0
  8. package/components/Accordion/AccordionItem.vue.d.ts +56 -0
  9. package/components/Accordion/AccordionItem.vue.js +115 -0
  10. package/components/Accordion/AccordionItem.vue2.js +4 -0
  11. package/components/Accordion/AccordionTrigger.vue.d.ts +43 -0
  12. package/components/Accordion/AccordionTrigger.vue.js +94 -0
  13. package/components/Accordion/AccordionTrigger.vue2.js +4 -0
  14. package/components/Accordion/index.d.ts +5 -0
  15. package/components/Accordion/types.d.ts +33 -0
  16. package/components/Alert.vue.d.ts +36 -0
  17. package/components/Alert.vue.js +84 -0
  18. package/components/Alert.vue2.js +4 -0
  19. package/components/Avatar.vue.d.ts +32 -0
  20. package/components/Avatar.vue.js +78 -0
  21. package/components/Avatar.vue2.js +4 -0
  22. package/components/AvatarUploader/AvatarUploader.vue.d.ts +32 -0
  23. package/components/AvatarUploader/AvatarUploader.vue.js +99 -0
  24. package/components/AvatarUploader/AvatarUploader.vue2.js +4 -0
  25. package/{src/components/AvatarUploader/index.ts → components/AvatarUploader/index.d.ts} +2 -2
  26. package/components/Badge.vue.d.ts +25 -0
  27. package/components/Badge.vue.js +27 -0
  28. package/components/Badge.vue2.js +4 -0
  29. package/components/Button.vue.d.ts +26 -0
  30. package/components/Button.vue.js +107 -0
  31. package/components/Button.vue2.js +4 -0
  32. package/components/ButtonGroup.vue.d.ts +29 -0
  33. package/components/ButtonGroup.vue.js +7 -0
  34. package/components/ButtonGroup.vue2.js +30 -0
  35. package/components/Carousel/Carousel.vue.d.ts +847 -0
  36. package/components/Carousel/Carousel.vue.js +7 -0
  37. package/components/Carousel/Carousel.vue2.js +68 -0
  38. package/components/Carousel/index.d.ts +2 -0
  39. package/components/Carousel/types.d.ts +24 -0
  40. package/components/CheckBox.vue.d.ts +27 -0
  41. package/components/CheckBox.vue.js +115 -0
  42. package/components/CheckBox.vue2.js +4 -0
  43. package/components/Chip/Chip.vue.d.ts +33 -0
  44. package/components/Chip/Chip.vue.js +113 -0
  45. package/components/Chip/Chip.vue2.js +4 -0
  46. package/components/Chip/index.d.ts +2 -0
  47. package/components/Chip/types.d.ts +12 -0
  48. package/components/ChoiceBox/ChoiceBox.vue.d.ts +32 -0
  49. package/components/ChoiceBox/ChoiceBox.vue.js +141 -0
  50. package/components/ChoiceBox/ChoiceBox.vue2.js +4 -0
  51. package/components/ChoiceBox/index.d.ts +2 -0
  52. package/components/ColorPicker/ColorIro.vue.d.ts +18 -0
  53. package/components/ColorPicker/ColorIro.vue.js +142 -0
  54. package/components/ColorPicker/ColorIro.vue3.js +5 -0
  55. package/components/ColorPicker/ColorPicker.vue.d.ts +22 -0
  56. package/components/ColorPicker/ColorPicker.vue.js +56 -0
  57. package/components/ColorPicker/ColorPicker.vue2.js +4 -0
  58. package/components/ConfirmationModal.vue.d.ts +39 -0
  59. package/components/ConfirmationModal.vue.js +55 -0
  60. package/components/ConfirmationModal.vue2.js +4 -0
  61. package/components/DataTable/DataTable.vue.d.ts +60 -0
  62. package/components/DataTable/DataTable.vue.js +7 -0
  63. package/components/DataTable/DataTable.vue2.js +310 -0
  64. package/components/DataTable/DataTableHeader.vue.d.ts +14 -0
  65. package/components/DataTable/DataTableHeader.vue.js +49 -0
  66. package/components/DataTable/DataTableHeader.vue2.js +4 -0
  67. package/components/DataTable/DataTableRow.vue.d.ts +51 -0
  68. package/components/DataTable/DataTableRow.vue.js +114 -0
  69. package/components/DataTable/DataTableRow.vue2.js +4 -0
  70. package/components/DataTable/DataTableToolbar.vue.d.ts +31 -0
  71. package/components/DataTable/DataTableToolbar.vue.js +45 -0
  72. package/components/DataTable/DataTableToolbar.vue2.js +4 -0
  73. package/components/DataTable/index.d.ts +4 -0
  74. package/components/DataTable/types.d.ts +75 -0
  75. package/components/DatePicker.vue.d.ts +44 -0
  76. package/components/DatePicker.vue.js +84 -0
  77. package/components/DatePicker.vue2.js +4 -0
  78. package/components/Dropdown/Dropdown.vue.d.ts +105 -0
  79. package/components/Dropdown/Dropdown.vue.js +206 -0
  80. package/components/Dropdown/Dropdown.vue2.js +4 -0
  81. package/components/Dropdown/DropdownBooleanItem.vue.d.ts +12 -0
  82. package/components/Dropdown/DropdownBooleanItem.vue.js +41 -0
  83. package/components/Dropdown/DropdownBooleanItem.vue2.js +4 -0
  84. package/components/Dropdown/DropdownGroupedLayout.vue.d.ts +21 -0
  85. package/components/Dropdown/DropdownGroupedLayout.vue.js +73 -0
  86. package/components/Dropdown/DropdownGroupedLayout.vue2.js +4 -0
  87. package/components/Dropdown/DropdownItem.vue.d.ts +35 -0
  88. package/components/Dropdown/DropdownItem.vue.js +56 -0
  89. package/components/Dropdown/DropdownItem.vue2.js +4 -0
  90. package/components/Dropdown/DropdownMenu.vue.d.ts +73 -0
  91. package/components/Dropdown/DropdownMenu.vue.js +232 -0
  92. package/components/Dropdown/DropdownMenu.vue2.js +4 -0
  93. package/components/Dropdown/DropdownTrigger.vue.d.ts +15 -0
  94. package/components/Dropdown/DropdownTrigger.vue.js +26 -0
  95. package/components/Dropdown/DropdownTrigger.vue2.js +4 -0
  96. package/components/Dropdown/composables/useDropdownIds.d.ts +5 -0
  97. package/components/Dropdown/composables/useDropdownIds.js +20 -0
  98. package/components/Dropdown/composables/useDropdownNavigation.d.ts +19 -0
  99. package/components/Dropdown/composables/useDropdownNavigation.js +49 -0
  100. package/components/Dropdown/composables/useDropdownSelection.d.ts +16 -0
  101. package/components/Dropdown/composables/useDropdownSelection.js +41 -0
  102. package/components/Dropdown/index.d.ts +6 -0
  103. package/components/FilePicker/FilePicker.vue.d.ts +65 -0
  104. package/components/FilePicker/FilePicker.vue.js +285 -0
  105. package/components/FilePicker/FilePicker.vue2.js +4 -0
  106. package/components/FilePicker/index.d.ts +2 -0
  107. package/components/FileTree/FileTree.vue.d.ts +20 -0
  108. package/components/FileTree/FileTree.vue.js +139 -0
  109. package/components/FileTree/FileTree.vue2.js +4 -0
  110. package/components/FileTree/FileTreeNode.vue.d.ts +28 -0
  111. package/components/FileTree/FileTreeNode.vue.js +184 -0
  112. package/components/FileTree/FileTreeNode.vue2.js +4 -0
  113. package/components/FileTree/index.d.ts +4 -0
  114. package/components/FileTree/types.d.ts +36 -0
  115. package/components/FileTree/useTreeSelection.d.ts +12 -0
  116. package/components/FileTree/useTreeSelection.js +25 -0
  117. package/components/Form/CustomFields.vue.d.ts +38 -0
  118. package/components/Form/CustomFields.vue.js +7 -0
  119. package/components/Form/CustomFields.vue2.js +161 -0
  120. package/components/Form/Form.vue.d.ts +94 -0
  121. package/components/Form/Form.vue.js +7 -0
  122. package/components/Form/Form.vue2.js +238 -0
  123. package/components/Form/FormField.vue.d.ts +28 -0
  124. package/components/Form/FormField.vue.js +207 -0
  125. package/components/Form/FormField.vue2.js +4 -0
  126. package/components/Form/FormFields.vue.d.ts +29 -0
  127. package/components/Form/FormFields.vue.js +7 -0
  128. package/components/Form/FormFields.vue2.js +95 -0
  129. package/components/Form/composables/useFileUpload.d.ts +24 -0
  130. package/components/Form/composables/useFileUpload.js +40 -0
  131. package/components/Form/composables/useForm.d.ts +48 -0
  132. package/components/Form/composables/useForm.js +109 -0
  133. package/components/Form/index.d.ts +9 -0
  134. package/components/Form/types.d.ts +167 -0
  135. package/components/Form/utils/form.utils.d.ts +44 -0
  136. package/components/Form/utils/form.utils.js +97 -0
  137. package/components/Heatmap/Heatmap.vue.d.ts +26 -0
  138. package/components/Heatmap/Heatmap.vue.js +7 -0
  139. package/components/Heatmap/Heatmap.vue2.js +326 -0
  140. package/components/Heatmap/index.d.ts +2 -0
  141. package/components/Heatmap/types.d.ts +66 -0
  142. package/components/Icon.vue.d.ts +7 -0
  143. package/components/Icon.vue.js +25 -0
  144. package/components/Icon.vue2.js +4 -0
  145. package/components/IconPicker.vue.d.ts +38 -0
  146. package/components/IconPicker.vue.js +124 -0
  147. package/components/IconPicker.vue2.js +4 -0
  148. package/components/Input.vue.d.ts +54 -0
  149. package/components/Input.vue.js +267 -0
  150. package/components/Input.vue2.js +4 -0
  151. package/components/Label.vue.d.ts +23 -0
  152. package/components/Label.vue.js +23 -0
  153. package/components/Label.vue2.js +4 -0
  154. package/components/Logo.vue.d.ts +2 -0
  155. package/components/Logo.vue.js +10 -0
  156. package/components/Logo.vue2.js +4 -0
  157. package/components/Masonry/Masonry.vue.d.ts +31 -0
  158. package/components/Masonry/Masonry.vue.js +7 -0
  159. package/components/Masonry/Masonry.vue2.js +83 -0
  160. package/components/Masonry/index.d.ts +2 -0
  161. package/components/Masonry/types.d.ts +33 -0
  162. package/components/Masonry/types.js +10 -0
  163. package/components/Modal.vue.d.ts +52 -0
  164. package/components/Modal.vue.js +116 -0
  165. package/components/Modal.vue2.js +4 -0
  166. package/components/MultiSelect/MultiSelect.vue.d.ts +40 -0
  167. package/components/MultiSelect/MultiSelect.vue.js +126 -0
  168. package/components/MultiSelect/MultiSelect.vue2.js +4 -0
  169. package/components/MultiSelect/index.d.ts +1 -0
  170. package/components/Navbar/Navbar.vue.d.ts +51 -0
  171. package/components/Navbar/Navbar.vue.js +198 -0
  172. package/components/Navbar/Navbar.vue2.js +4 -0
  173. package/components/Navbar/NavbarGroup.vue.d.ts +24 -0
  174. package/components/Navbar/NavbarGroup.vue.js +23 -0
  175. package/components/Navbar/NavbarGroup.vue2.js +4 -0
  176. package/components/Navbar/NavbarItem.vue.d.ts +40 -0
  177. package/components/Navbar/NavbarItem.vue.js +104 -0
  178. package/components/Navbar/NavbarItem.vue2.js +4 -0
  179. package/components/Navbar/index.d.ts +3 -0
  180. package/components/OTPInput/OTPInput.vue.d.ts +33 -0
  181. package/components/OTPInput/OTPInput.vue.js +115 -0
  182. package/components/OTPInput/OTPInput.vue2.js +4 -0
  183. package/components/OTPInput/index.d.ts +1 -0
  184. package/components/Pagination/Pagination.vue.d.ts +34 -0
  185. package/components/Pagination/Pagination.vue.js +196 -0
  186. package/components/Pagination/Pagination.vue2.js +4 -0
  187. package/components/Pagination/index.d.ts +1 -0
  188. package/components/PricingPlan/PricingPlan.vue.d.ts +22 -0
  189. package/components/PricingPlan/PricingPlan.vue.js +55 -0
  190. package/components/PricingPlan/PricingPlan.vue2.js +4 -0
  191. package/components/PricingPlan/PricingPlanItem.vue.d.ts +17 -0
  192. package/components/PricingPlan/PricingPlanItem.vue.js +94 -0
  193. package/components/PricingPlan/PricingPlanItem.vue2.js +4 -0
  194. package/components/PricingPlan/index.d.ts +3 -0
  195. package/components/PricingPlan/types.d.ts +25 -0
  196. package/components/SidePanel.vue.d.ts +64 -0
  197. package/components/SidePanel.vue.js +7 -0
  198. package/components/SidePanel.vue2.js +131 -0
  199. package/components/SidebarMenu/SidebarMenu.vue.d.ts +11 -0
  200. package/components/SidebarMenu/SidebarMenu.vue.js +78 -0
  201. package/components/SidebarMenu/SidebarMenu.vue2.js +4 -0
  202. package/components/SidebarMenu/SidebarMenuItem.vue.d.ts +9 -0
  203. package/components/SidebarMenu/SidebarMenuItem.vue.js +269 -0
  204. package/components/SidebarMenu/SidebarMenuItem.vue3.js +5 -0
  205. package/components/SidebarMenu/index.d.ts +3 -0
  206. package/components/SidebarMenu/types.d.ts +35 -0
  207. package/components/Slider.vue.d.ts +31 -0
  208. package/components/Slider.vue.js +157 -0
  209. package/components/Slider.vue2.js +4 -0
  210. package/components/Switch.vue.d.ts +16 -0
  211. package/components/Switch.vue.js +40 -0
  212. package/components/Switch.vue2.js +4 -0
  213. package/components/Tabes/Tabes.vue.d.ts +21 -0
  214. package/components/Tabes/Tabes.vue.js +75 -0
  215. package/components/Tabes/Tabes.vue2.js +4 -0
  216. package/components/Tabes/index.d.ts +2 -0
  217. package/components/Tabes/types.d.ts +8 -0
  218. package/components/Textarea.vue.d.ts +22 -0
  219. package/components/Textarea.vue.js +34 -0
  220. package/components/Textarea.vue2.js +4 -0
  221. package/components/ThemeToggle.vue.d.ts +2 -0
  222. package/components/ThemeToggle.vue.js +18 -0
  223. package/components/ThemeToggle.vue2.js +4 -0
  224. package/components/Timeline.vue.d.ts +39 -0
  225. package/components/Timeline.vue.js +174 -0
  226. package/components/Timeline.vue2.js +4 -0
  227. package/components/ToastNotification.vue.d.ts +7 -0
  228. package/components/ToastNotification.vue.js +7 -0
  229. package/components/ToastNotification.vue2.js +151 -0
  230. package/components/Tooltip.vue.d.ts +31 -0
  231. package/components/Tooltip.vue.js +45 -0
  232. package/components/Tooltip.vue2.js +4 -0
  233. package/components/Workbook/Sheet.vue.d.ts +38 -0
  234. package/components/Workbook/Sheet.vue.js +141 -0
  235. package/components/Workbook/Sheet.vue2.js +4 -0
  236. package/components/Workbook/Workbook.vue.d.ts +54 -0
  237. package/components/Workbook/Workbook.vue.js +7 -0
  238. package/components/Workbook/Workbook.vue2.js +146 -0
  239. package/components/Workbook/WorkbookAddButton.vue.d.ts +6 -0
  240. package/components/Workbook/WorkbookAddButton.vue.js +20 -0
  241. package/components/Workbook/WorkbookAddButton.vue2.js +4 -0
  242. package/components/Workbook/index.d.ts +3 -0
  243. package/components/Workbook/types.d.ts +34 -0
  244. package/composables/useKeyStroke.d.ts +21 -0
  245. package/composables/useKeyStroke.js +93 -0
  246. package/composables/useNotifications.d.ts +113 -0
  247. package/composables/useNotifications.js +99 -0
  248. package/composables/useTheme.d.ts +6 -0
  249. package/composables/useTheme.js +32 -0
  250. package/core/config.d.ts +29 -0
  251. package/core/config.js +12 -0
  252. package/core/index.d.ts +31 -0
  253. package/core/index.js +15 -0
  254. package/directives/vRipple.d.ts +4 -0
  255. package/directives/vRipple.js +17 -0
  256. package/index.d.ts +49 -0
  257. package/index.js +156 -0
  258. package/package.json +2 -2
  259. package/style.css +590 -0
  260. package/types/alert.type.d.ts +10 -0
  261. package/{src/types/avatar.type.ts → types/avatar.type.d.ts} +8 -9
  262. package/types/button.d.ts +15 -0
  263. package/types/buttongroup.type.d.ts +1 -0
  264. package/{src/types/config.type.ts → types/config.type.d.ts} +13 -16
  265. package/types/form.type.d.ts +45 -0
  266. package/types/index.d.ts +10 -0
  267. package/types/navbar.type.d.ts +27 -0
  268. package/types/sidepanel.type.d.ts +13 -0
  269. package/types/styles.d.ts +28 -0
  270. package/types/timeline.type.d.ts +9 -0
  271. package/{src/utils/functions.ts → utils/functions.d.ts} +1 -9
  272. package/utils/functions.js +11 -0
  273. package/utils/index.d.ts +2 -0
  274. package/utils/object.d.ts +6 -0
  275. package/utils/object.js +14 -0
  276. package/.vscode/extensions.json +0 -3
  277. package/LICENSE +0 -21
  278. package/index.html +0 -16
  279. package/scripts/bundle-css.js +0 -45
  280. package/src/App.vue +0 -7
  281. package/src/components/Accordion/Accordion.vue +0 -139
  282. package/src/components/Accordion/AccordionContent.vue +0 -63
  283. package/src/components/Accordion/AccordionItem.vue +0 -163
  284. package/src/components/Accordion/AccordionTrigger.vue +0 -125
  285. package/src/components/Accordion/index.ts +0 -5
  286. package/src/components/Accordion/types.ts +0 -41
  287. package/src/components/Alert.vue +0 -112
  288. package/src/components/Avatar.vue +0 -110
  289. package/src/components/AvatarUploader/AvatarUploader.vue +0 -129
  290. package/src/components/Badge.vue +0 -45
  291. package/src/components/Button.vue +0 -122
  292. package/src/components/ButtonGroup.vue +0 -173
  293. package/src/components/Carousel/Carousel.vue +0 -84
  294. package/src/components/Carousel/index.ts +0 -2
  295. package/src/components/Carousel/types.ts +0 -25
  296. package/src/components/CheckBox.vue +0 -132
  297. package/src/components/Chip/Chip.vue +0 -158
  298. package/src/components/Chip/index.ts +0 -2
  299. package/src/components/Chip/types.ts +0 -23
  300. package/src/components/ChoiceBox/ChoiceBox.vue +0 -181
  301. package/src/components/ChoiceBox/index.ts +0 -2
  302. package/src/components/ColorPicker/ColorIro.vue +0 -207
  303. package/src/components/ColorPicker/ColorPicker.vue +0 -61
  304. package/src/components/ConfirmationModal.vue +0 -46
  305. package/src/components/DataTable/DataTable.vue +0 -478
  306. package/src/components/DataTable/DataTableHeader.vue +0 -78
  307. package/src/components/DataTable/DataTableRow.vue +0 -171
  308. package/src/components/DataTable/DataTableToolbar.vue +0 -45
  309. package/src/components/DataTable/index.ts +0 -5
  310. package/src/components/DataTable/types.ts +0 -85
  311. package/src/components/DatePicker.vue +0 -102
  312. package/src/components/Dropdown/Dropdown.vue +0 -348
  313. package/src/components/Dropdown/DropdownBooleanItem.vue +0 -40
  314. package/src/components/Dropdown/DropdownGroupedLayout.vue +0 -115
  315. package/src/components/Dropdown/DropdownItem.vue +0 -56
  316. package/src/components/Dropdown/DropdownMenu.vue +0 -374
  317. package/src/components/Dropdown/DropdownTrigger.vue +0 -27
  318. package/src/components/Dropdown/composables/useDropdownIds.ts +0 -27
  319. package/src/components/Dropdown/composables/useDropdownNavigation.ts +0 -109
  320. package/src/components/Dropdown/composables/useDropdownSelection.ts +0 -106
  321. package/src/components/Dropdown/index.ts +0 -6
  322. package/src/components/FilePicker/FilePicker.vue +0 -459
  323. package/src/components/FilePicker/index.ts +0 -2
  324. package/src/components/FileTree/FileTree.vue +0 -334
  325. package/src/components/FileTree/FileTreeNode.vue +0 -225
  326. package/src/components/FileTree/index.ts +0 -2
  327. package/src/components/FileTree/types.ts +0 -31
  328. package/src/components/FileTree/useTreeSelection.ts +0 -66
  329. package/src/components/Form/CustomFields.vue +0 -294
  330. package/src/components/Form/Form.vue +0 -406
  331. package/src/components/Form/FormField.vue +0 -404
  332. package/src/components/Form/FormFields.vue +0 -161
  333. package/src/components/Form/composables/useFileUpload.ts +0 -112
  334. package/src/components/Form/composables/useForm.ts +0 -356
  335. package/src/components/Form/index.ts +0 -16
  336. package/src/components/Form/types.ts +0 -203
  337. package/src/components/Form/utils/form.utils.ts +0 -209
  338. package/src/components/Heatmap/Heatmap.vue +0 -629
  339. package/src/components/Heatmap/index.ts +0 -2
  340. package/src/components/Heatmap/types.ts +0 -84
  341. package/src/components/Icon.vue +0 -47
  342. package/src/components/IconPicker.vue +0 -138
  343. package/src/components/Input.vue +0 -366
  344. package/src/components/Label.vue +0 -25
  345. package/src/components/Logo.vue +0 -5
  346. package/src/components/Masonry/Masonry.vue +0 -148
  347. package/src/components/Masonry/index.ts +0 -2
  348. package/src/components/Masonry/types.ts +0 -44
  349. package/src/components/Modal.vue +0 -135
  350. package/src/components/MultiSelect/MultiSelect.vue +0 -176
  351. package/src/components/MultiSelect/index.ts +0 -1
  352. package/src/components/Navbar/Navbar.vue +0 -277
  353. package/src/components/Navbar/NavbarGroup.vue +0 -27
  354. package/src/components/Navbar/NavbarItem.vue +0 -124
  355. package/src/components/Navbar/index.ts +0 -3
  356. package/src/components/OTPInput/OTPInput.vue +0 -220
  357. package/src/components/OTPInput/index.ts +0 -1
  358. package/src/components/Pagination/Pagination.vue +0 -238
  359. package/src/components/Pagination/index.ts +0 -1
  360. package/src/components/PricingPlan/PricingPlan.vue +0 -102
  361. package/src/components/PricingPlan/PricingPlanItem.vue +0 -148
  362. package/src/components/PricingPlan/index.ts +0 -3
  363. package/src/components/PricingPlan/types.ts +0 -29
  364. package/src/components/SidePanel.vue +0 -184
  365. package/src/components/SidebarMenu/SidebarMenu.vue +0 -146
  366. package/src/components/SidebarMenu/SidebarMenuItem.vue +0 -333
  367. package/src/components/SidebarMenu/index.ts +0 -3
  368. package/src/components/SidebarMenu/types.ts +0 -54
  369. package/src/components/Slider.vue +0 -181
  370. package/src/components/Switch.vue +0 -51
  371. package/src/components/Tabes/Tabes.vue +0 -112
  372. package/src/components/Tabes/index.ts +0 -2
  373. package/src/components/Tabes/types.ts +0 -17
  374. package/src/components/Textarea.vue +0 -48
  375. package/src/components/ThemeToggle.vue +0 -14
  376. package/src/components/Timeline.vue +0 -250
  377. package/src/components/ToastNotification.vue +0 -257
  378. package/src/components/Tooltip.vue +0 -25
  379. package/src/components/Workbook/Sheet.vue +0 -185
  380. package/src/components/Workbook/Workbook.vue +0 -231
  381. package/src/components/Workbook/WorkbookAddButton.vue +0 -17
  382. package/src/components/Workbook/index.ts +0 -3
  383. package/src/components/Workbook/types.ts +0 -43
  384. package/src/composables/useKeyStroke.ts +0 -291
  385. package/src/composables/useNotifications.ts +0 -206
  386. package/src/composables/useTheme.ts +0 -55
  387. package/src/core/config.ts +0 -37
  388. package/src/core/index.ts +0 -49
  389. package/src/css/base.css +0 -148
  390. package/src/css/input.css +0 -61
  391. package/src/css/main.css +0 -6
  392. package/src/css/theme.css +0 -344
  393. package/src/directives/vRipple.ts +0 -38
  394. package/src/index.ts +0 -53
  395. package/src/main.ts +0 -5
  396. package/src/playground/Playground.vue +0 -429
  397. package/src/playground/composables/useGetUsers.ts +0 -538
  398. package/src/playground/demos/AccordionDemo.vue +0 -361
  399. package/src/playground/demos/AlertDemo.vue +0 -36
  400. package/src/playground/demos/AvatarDemo.vue +0 -41
  401. package/src/playground/demos/AvatarUploaderDemo.vue +0 -133
  402. package/src/playground/demos/BadgeDemo.vue +0 -31
  403. package/src/playground/demos/BadgesDemo.vue +0 -26
  404. package/src/playground/demos/ButtonDemo.vue +0 -99
  405. package/src/playground/demos/ButtonGroupDemo.vue +0 -39
  406. package/src/playground/demos/ButtonsDemo.vue +0 -111
  407. package/src/playground/demos/CarouselDemo.vue +0 -135
  408. package/src/playground/demos/CheckBoxDemo.vue +0 -43
  409. package/src/playground/demos/ChipDemo.vue +0 -190
  410. package/src/playground/demos/ChoiceBoxDemo.vue +0 -160
  411. package/src/playground/demos/ColorPickerDemo.vue +0 -30
  412. package/src/playground/demos/ColorsDemo.vue +0 -295
  413. package/src/playground/demos/DataTableDemo.vue +0 -215
  414. package/src/playground/demos/DatePickerDemo.vue +0 -43
  415. package/src/playground/demos/DisplayDemo.vue +0 -101
  416. package/src/playground/demos/DropdownDemo.vue +0 -651
  417. package/src/playground/demos/FilePickerDemo.vue +0 -175
  418. package/src/playground/demos/FileTreeDemo.vue +0 -150
  419. package/src/playground/demos/FormDemo.vue +0 -1144
  420. package/src/playground/demos/HeatmapDemo.vue +0 -467
  421. package/src/playground/demos/IconPickerDemo.vue +0 -27
  422. package/src/playground/demos/InputDemo.vue +0 -80
  423. package/src/playground/demos/InputsDemo.vue +0 -127
  424. package/src/playground/demos/LabelDemo.vue +0 -32
  425. package/src/playground/demos/MasonryDemo.vue +0 -241
  426. package/src/playground/demos/ModalDemo.vue +0 -67
  427. package/src/playground/demos/MultiSelectDemo.vue +0 -300
  428. package/src/playground/demos/NavbarDemo.vue +0 -59
  429. package/src/playground/demos/NavigationDemo.vue +0 -116
  430. package/src/playground/demos/OTPInputDemo.vue +0 -170
  431. package/src/playground/demos/OverlaysDemo.vue +0 -104
  432. package/src/playground/demos/PaginationDemo.vue +0 -130
  433. package/src/playground/demos/PricingPlanDemo.vue +0 -110
  434. package/src/playground/demos/SidePanelDemo.vue +0 -45
  435. package/src/playground/demos/SidebarMenuDemo.vue +0 -170
  436. package/src/playground/demos/SliderDemo.vue +0 -48
  437. package/src/playground/demos/SwitchDemo.vue +0 -40
  438. package/src/playground/demos/TabesDemo.vue +0 -178
  439. package/src/playground/demos/TextareaDemo.vue +0 -31
  440. package/src/playground/demos/ThemeToggleDemo.vue +0 -20
  441. package/src/playground/demos/TimelineDemo.vue +0 -43
  442. package/src/playground/demos/ToastDemo.vue +0 -111
  443. package/src/playground/demos/TooltipDemo.vue +0 -30
  444. package/src/playground/demos/WorkbookDemo.vue +0 -227
  445. package/src/types/alert.type.ts +0 -11
  446. package/src/types/button.ts +0 -36
  447. package/src/types/buttongroup.type.ts +0 -1
  448. package/src/types/form.type.ts +0 -75
  449. package/src/types/index.ts +0 -11
  450. package/src/types/navbar.type.ts +0 -28
  451. package/src/types/sidepanel.type.ts +0 -14
  452. package/src/types/styles.ts +0 -42
  453. package/src/types/timeline.type.ts +0 -11
  454. package/src/utils/index.ts +0 -2
  455. package/src/utils/object.ts +0 -40
  456. package/tsconfig.app.json +0 -27
  457. package/tsconfig.json +0 -48
  458. package/tsconfig.node.json +0 -18
  459. package/tsconfig.node.tsbuildinfo +0 -1
  460. package/tsconfig.tsbuildinfo +0 -1
  461. package/vercel.json +0 -8
  462. package/vite.config.d.ts +0 -2
  463. package/vite.config.js +0 -63
  464. package/vite.config.ts +0 -64
  465. package/vite.config.vercel.ts +0 -17
@@ -1,300 +0,0 @@
1
- <script setup lang="ts">
2
- import { ref } from 'vue'
3
- import { MultiSelect } from '@/components/MultiSelect'
4
- import Icon from '@/components/Icon.vue'
5
-
6
- // --- Data ---
7
- const options = [
8
- { label: 'Vue.js', value: 'vue' },
9
- { label: 'React', value: 'react' },
10
- { label: 'Angular', value: 'angular' },
11
- { label: 'Svelte', value: 'svelte' },
12
- { label: 'Solid', value: 'solid' },
13
- { label: 'Qwik', value: 'qwik' },
14
- { label: 'Nuxt', value: 'nuxt' },
15
- { label: 'Next.js', value: 'next' },
16
- { label: 'Remix', value: 'remix' },
17
- { label: 'Astro', value: 'astro' },
18
- ]
19
-
20
- const groupedOptions = [
21
- {
22
- label: 'Frontend',
23
- children: [
24
- { label: 'Vue.js', value: 'vue' },
25
- { label: 'React', value: 'react' },
26
- { label: 'Angular', value: 'angular' },
27
- ]
28
- },
29
- {
30
- label: 'Backend',
31
- children: [
32
- { label: 'Node.js', value: 'node' },
33
- { label: 'Python', value: 'python' },
34
- { label: 'Go', value: 'go' },
35
- ]
36
- }
37
- ]
38
-
39
- // --- State ---
40
- const selectedFrameworks = ref(['vue', 'nuxt'])
41
- const selectedEmpty = ref([])
42
- const selectedMany = ref(['vue', 'react', 'angular', 'svelte', 'solid'])
43
- const selectedGrouped = ref(['vue', 'node'])
44
-
45
- // Remote Search State
46
- const remoteOptions = ref<{label: string, value: string}[]>([])
47
- const remoteSelected = ref([])
48
- const isLoading = ref(false)
49
-
50
- // Rich Options
51
- const richOptions = [
52
- { label: 'Profile', value: 'profile', subtitle: '⌘P', icon: 'lucide:user' },
53
- { label: 'Settings', value: 'settings', subtitle: '⌘,', icon: 'lucide:settings' },
54
- { label: 'Print (Native)', value: 'print', description: 'Recommended for high fidelity', icon: 'lucide:printer' },
55
- { label: 'Export PDF', value: 'export', description: 'Best for digital sharing', subtitle: '⌘E', icon: 'lucide:file-down' },
56
- ]
57
- const selectedRich = ref(['profile'])
58
-
59
- // --- Methods ---
60
- const handleChange = (label: string, val: any) => {
61
- console.log(`[${label}] Changed:`, val)
62
- }
63
-
64
- const handleSearch = (query: string) => {
65
- console.log('Searching:', query)
66
- isLoading.value = true
67
- // Simulate API call
68
- setTimeout(() => {
69
- if (!query) {
70
- remoteOptions.value = []
71
- } else {
72
- remoteOptions.value = [
73
- { label: `${query} Result 1`, value: `${query}-1` },
74
- { label: `${query} Result 2`, value: `${query}-2` },
75
- { label: `${query} Result 3`, value: `${query}-3` },
76
- ]
77
- }
78
- isLoading.value = false
79
- }, 1000)
80
- }
81
-
82
- // Pagination State
83
- const pagedOptions = ref([...options, ...Array.from({ length: 40 }, (_, i) => ({ label: `Item ${i + 11}`, value: `item-${i + 11}` }))])
84
- const hasMore = ref(true)
85
- const isPageLoading = ref(false)
86
- const selectedPaged = ref([])
87
-
88
- const handleLoadMore = () => {
89
- if (isPageLoading.value || !hasMore.value) return
90
- console.log('Loading more...')
91
- isPageLoading.value = true
92
-
93
- setTimeout(() => {
94
- const currentLength = pagedOptions.value.length
95
- const nextBatch = Array.from({ length: 20 }, (_, i) => ({
96
- label: `Deferred Item ${currentLength + i + 1}`,
97
- value: `deferred-${currentLength + i + 1}`
98
- }))
99
- pagedOptions.value.push(...nextBatch)
100
-
101
- if (pagedOptions.value.length >= 100) {
102
- hasMore.value = false
103
- }
104
- isPageLoading.value = false
105
- }, 1000)
106
- }
107
-
108
- </script>
109
-
110
- <template>
111
- <div class="space-y-8 p-4 max-w-3xl mx-auto">
112
- <div>
113
- <h2 class="text-2xl font-bold mb-2">MultiSelect Component</h2>
114
- <p class="text-gray-500 mb-6">
115
- A robust multi-select dropdown with tag display, search, and
116
- virtualization support via DropdownMenu.
117
- </p>
118
- </div>
119
-
120
- <!-- 1. Basic Usage -->
121
- <section class="space-y-4">
122
- <h3 class="text-lg font-semibold flex items-center gap-2">
123
- <Icon
124
- icon="lucide:check-square"
125
- class="text-primary" />
126
- Basic Usage
127
- </h3>
128
- <div class="p-4 border rounded-xl bg-gray-50/50">
129
- <MultiSelect
130
- v-model="selectedFrameworks"
131
- :options="options"
132
- @change="(v) => handleChange('Basic', v)" />
133
- <div
134
- class="mt-4 text-xs text-gray-500 font-mono bg-white p-2 rounded border">
135
- Model: {{ selectedFrameworks }}
136
- </div>
137
- </div>
138
- </section>
139
-
140
- <!-- 2. Remote Search -->
141
- <section class="space-y-4">
142
- <h3 class="text-lg font-semibold flex items-center gap-2">
143
- <Icon
144
- icon="lucide:search"
145
- class="text-primary" />
146
- Remote Search (Async)
147
- </h3>
148
- <div class="p-4 border rounded-xl bg-gray-50/50">
149
- <MultiSelect
150
- v-model="remoteSelected"
151
- :options="remoteOptions"
152
- placeholder="Type to search..."
153
- remote
154
- :loading="isLoading"
155
- @search="handleSearch"
156
- @change="(v) => handleChange('Remote', v)"
157
- />
158
- <div class="mt-2 text-xs text-gray-500">
159
- Type anything to simulate an API search.
160
- </div>
161
- </div>
162
- </section>
163
-
164
- <!-- 3. Rich Options (Subtitle & Description) -->
165
- <section class="space-y-4">
166
- <h3 class="text-lg font-semibold flex items-center gap-2">
167
- <Icon
168
- icon="lucide:layout-list"
169
- class="text-primary" />
170
- Rich Options
171
- </h3>
172
- <div class="p-4 border rounded-xl bg-gray-50/50">
173
- <MultiSelect
174
- v-model="selectedRich"
175
- :options="richOptions"
176
- placeholder="Select actions..."
177
- @change="(v) => handleChange('Rich', v)"
178
- />
179
- <div class="mt-2 text-xs text-gray-500">
180
- Options with subtitles (shortcuts) and descriptions.
181
- </div>
182
- </div>
183
- </section>
184
-
185
- <!-- 4. Pagination / Infinite Scroll -->
186
- <section class="space-y-4">
187
- <h3 class="text-lg font-semibold flex items-center gap-2">
188
- <Icon
189
- icon="lucide:list-plus"
190
- class="text-primary" />
191
- Pagination (Load More)
192
- </h3>
193
- <div class="p-4 border rounded-xl bg-gray-50/50">
194
- <MultiSelect
195
- v-model="selectedPaged"
196
- :options="pagedOptions"
197
- placeholder="Scroll for more..."
198
- :has-more="hasMore"
199
- :loading="isPageLoading"
200
- @load-more="handleLoadMore"
201
- @change="(v) => handleChange('Paged', v)"
202
- />
203
- <div class="mt-2 text-xs text-gray-500">
204
- Scroll to the bottom of the list to load more items.
205
- </div>
206
- </div>
207
- </section>
208
-
209
- <!-- 4. Grouped Options -->
210
- <section class="space-y-4">
211
- <h3 class="text-lg font-semibold flex items-center gap-2">
212
- <Icon
213
- icon="lucide:layers"
214
- class="text-primary" />
215
- Grouped Options
216
- </h3>
217
- <div class="p-4 border rounded-xl bg-gray-50/50">
218
- <MultiSelect
219
- v-model="selectedGrouped"
220
- :options="groupedOptions"
221
- layout="grouped"
222
- placeholder="Select from groups..."
223
- @change="(v) => handleChange('Grouped', v)"
224
- />
225
- <div
226
- class="mt-4 text-xs text-gray-500 font-mono bg-white p-2 rounded border">
227
- Model: {{ selectedGrouped }}
228
- </div>
229
- </div>
230
- </section>
231
-
232
- <!-- 5. Empty State & Placeholder -->
233
- <section class="space-y-4">
234
- <h3 class="text-lg font-semibold flex items-center gap-2">
235
- <Icon
236
- icon="lucide:message-square"
237
- class="text-primary" />
238
- Placeholder
239
- </h3>
240
- <div class="p-4 border rounded-xl bg-gray-50/50">
241
- <MultiSelect
242
- v-model="selectedEmpty"
243
- :options="options"
244
- placeholder="Choose your stack..."
245
- @change="(v) => handleChange('Empty', v)" />
246
- </div>
247
- </section>
248
-
249
- <!-- 6. Overflow Handling (+N) -->
250
- <section class="space-y-4">
251
- <h3 class="text-lg font-semibold flex items-center gap-2">
252
- <Icon
253
- icon="lucide:more-horizontal"
254
- class="text-primary" />
255
- Overflow Handling (+N)
256
- </h3>
257
- <div class="p-4 border rounded-xl bg-gray-50/50">
258
- <MultiSelect
259
- v-model="selectedMany"
260
- :options="options"
261
- :max-visible="3"
262
- @change="(v) => handleChange('Overflow', v)" />
263
- <p class="mt-2 text-xs text-gray-500">
264
- Max visible set to 3. Selection has 5 items.
265
- </p>
266
- </div>
267
- </section>
268
-
269
- <!-- 7. States -->
270
- <section class="space-y-4">
271
- <h3 class="text-lg font-semibold flex items-center gap-2">
272
- <Icon
273
- icon="lucide:toggle-left"
274
- class="text-primary" />
275
- States
276
- </h3>
277
- <div
278
- class="grid grid-cols-1 md:grid-cols-2 gap-4 p-4 border rounded-xl bg-gray-50/50">
279
- <div>
280
- <label class="text-sm font-medium mb-1 block"
281
- >Disabled</label
282
- >
283
- <MultiSelect
284
- v-model="selectedFrameworks"
285
- :options="options"
286
- disabled />
287
- </div>
288
- <div>
289
- <label class="text-sm font-medium mb-1 block"
290
- >Solid Variant</label
291
- >
292
- <MultiSelect
293
- v-model="selectedFrameworks"
294
- :options="options"
295
- variant="solid" />
296
- </div>
297
- </div>
298
- </section>
299
- </div>
300
- </template>
@@ -1,59 +0,0 @@
1
- <script setup lang="ts">
2
- import { Navbar, NavbarItem, NavbarGroup } from '@/components/Navbar'
3
- import Avatar from '@/components/Avatar.vue'
4
- import Input from '@/components/Input.vue'
5
- import Button from '@/components/Button.vue'
6
- import Icon from '@/components/Icon.vue'
7
- </script>
8
-
9
- <template>
10
- <div class="space-y-10">
11
- <div class="space-y-2">
12
- <h2 class="text-2xl font-bold">Navbar</h2>
13
- <p class="text-gray-500">Navigation headers and sidebars.</p>
14
- </div>
15
-
16
- <section class="space-y-4">
17
- <h3 class="text-lg font-semibold">Top Navigation</h3>
18
- <div class="border rounded-lg overflow-hidden bg-gray-100 h-[200px] relative">
19
- <Navbar position="absolute" class="w-full bg-white border-b">
20
- <template #logo>
21
- <div class="flex items-center gap-2 font-bold text-lg">Builto</div>
22
- </template>
23
- <template #left>
24
- <NavbarGroup>
25
- <NavbarItem label="Home" active />
26
- <NavbarItem label="Features" />
27
- </NavbarGroup>
28
- </template>
29
- <template #right>
30
- <Button size="sm">Get Started</Button>
31
- </template>
32
- </Navbar>
33
- </div>
34
- </section>
35
-
36
- <section class="space-y-4">
37
- <h3 class="text-lg font-semibold">Sidebar Navigation</h3>
38
- <div class="border rounded-lg overflow-hidden bg-gray-50 h-[300px] flex">
39
- <Navbar variant="sidebar" position="relative" width="w-48" class="bg-white border-r h-full flex flex-col">
40
- <template #logo>
41
- <div class="flex items-center gap-2 font-bold px-4 py-2">
42
- <Icon icon="lucide:box" /> Dashboard
43
- </div>
44
- </template>
45
- <template #default>
46
- <div class="flex-1 py-4">
47
- <NavbarGroup orientation="vertical">
48
- <NavbarItem icon="lucide:home" label="Overview" active />
49
- <NavbarItem icon="lucide:users" label="Team" />
50
- <NavbarItem icon="lucide:settings" label="Settings" />
51
- </NavbarGroup>
52
- </div>
53
- </template>
54
- </Navbar>
55
- <div class="p-8 text-gray-400">Main Content</div>
56
- </div>
57
- </section>
58
- </div>
59
- </template>
@@ -1,116 +0,0 @@
1
- <script setup lang="ts">
2
- import { ref } from 'vue'
3
- import { Navbar, NavbarItem, NavbarGroup } from '@/components/Navbar'
4
- import Avatar from '@/components/Avatar.vue'
5
- import Input from '@/components/Input.vue'
6
- import Button from '@/components/Button.vue'
7
- import Label from '@/components/Label.vue'
8
- import Icon from '@/components/Icon.vue'
9
-
10
- const centerPosition = ref<'center' | 'left' | 'right'>('center')
11
- </script>
12
-
13
- <template>
14
- <section class="space-y-8">
15
- <div class="space-y-2">
16
- <h2 class="text-xl font-semibold tracking-tight">Navigation</h2>
17
- <p class="text-sm text-gray-500">
18
- Navbars, sidebars, and other navigational structures.
19
- </p>
20
- </div>
21
-
22
- <!-- Top Navbar Demo -->
23
- <div class="space-y-4">
24
- <h3 class="text-sm font-medium text-gray-500 uppercase tracking-wider">Top Navbar</h3>
25
-
26
- <div class="border border-border rounded-lg overflow-hidden bg-gray-100 h-[250px] relative flex flex-col">
27
- <Navbar position="absolute" :center-position="centerPosition" class="w-full bg-body border-b">
28
- <template #logo>
29
- <div class="flex items-center gap-2 font-bold text-lg">
30
- <div class="w-8 h-8 bg-primary text-primary-fg rounded-md flex items-center justify-center">B</div>
31
- Builto
32
- </div>
33
- </template>
34
-
35
- <template #left>
36
- <NavbarGroup>
37
- <NavbarItem label="Dashboard" active />
38
- <NavbarItem label="Projects" />
39
- <NavbarItem label="Team" />
40
- </NavbarGroup>
41
- </template>
42
-
43
- <template #center>
44
- <div class="w-full max-w-[240px]">
45
- <Input placeholder="Search..." icon="lucide:search" size="sm" rounded="full" class="bg-gray-100 border-transparent focus:bg-white" />
46
- </div>
47
- </template>
48
-
49
- <template #right>
50
- <NavbarGroup>
51
- <Button variant="ghost" size="sm" icon="lucide:bell" rounded="full" />
52
- <Button variant="ghost" size="sm" icon="lucide:settings" rounded="full" />
53
- <Avatar size="sm" src="https://i.pravatar.cc/150?u=1" />
54
- </NavbarGroup>
55
- </template>
56
- </Navbar>
57
-
58
- <div class="flex-1 flex items-center justify-center text-gray-400">
59
- Content Area
60
- </div>
61
- </div>
62
- </div>
63
-
64
- <!-- Sidebar Demo -->
65
- <div class="space-y-4">
66
- <h3 class="text-sm font-medium text-gray-500 uppercase tracking-wider">Sidebar Layout</h3>
67
-
68
- <div class="border border-border rounded-lg overflow-hidden bg-gray-50 h-[400px] flex">
69
- <Navbar variant="sidebar" position="relative" width="w-64" class="bg-body border-r h-full flex flex-col">
70
- <template #logo>
71
- <div class="flex items-center gap-2 font-bold text-lg px-2">
72
- <Icon icon="lucide:hexagon" class="w-6 h-6 text-primary" />
73
- Sidebar
74
- </div>
75
- </template>
76
-
77
- <template #default>
78
- <div class="flex-1 overflow-y-auto py-4">
79
- <NavbarGroup orientation="vertical">
80
- <Label class="px-2 mb-2 text-xs uppercase text-gray-500">Main</Label>
81
- <NavbarItem icon="lucide:layout-dashboard" label="Dashboard" active />
82
- <NavbarItem icon="lucide:users" label="Users" />
83
- <NavbarItem icon="lucide:shopping-bag" label="Products" />
84
- </NavbarGroup>
85
-
86
- <div class="my-4 h-px bg-border mx-2"></div>
87
-
88
- <NavbarGroup orientation="vertical">
89
- <Label class="px-2 mb-2 text-xs uppercase text-gray-500">Settings</Label>
90
- <NavbarItem icon="lucide:settings" label="General" />
91
- <NavbarItem icon="lucide:shield" label="Security" />
92
- </NavbarGroup>
93
- </div>
94
- </template>
95
-
96
- <template #right>
97
- <div class="mt-auto border-t pt-4">
98
- <div class="flex items-center gap-3 p-2 rounded-md hover:bg-gray-100 cursor-pointer transition-colors">
99
- <Avatar size="sm" fallback="JD" />
100
- <div class="flex flex-col text-sm overflow-hidden">
101
- <span class="font-medium truncate">John Doe</span>
102
- <span class="text-xs text-gray-500 truncate">admin@builto.com</span>
103
- </div>
104
- </div>
105
- </div>
106
- </template>
107
- </Navbar>
108
-
109
- <div class="flex-1 flex items-center justify-center text-gray-400 bg-gray-50">
110
- Main Content
111
- </div>
112
- </div>
113
- </div>
114
-
115
- </section>
116
- </template>
@@ -1,170 +0,0 @@
1
- <script setup lang="ts">
2
- import { ref } from 'vue'
3
- import { OTPInput } from '@/components/OTPInput'
4
- import Button from '@/components/Button.vue'
5
-
6
- const code1 = ref('')
7
- const code2 = ref('')
8
- const code3 = ref('')
9
- const code4 = ref('')
10
- const code5 = ref('')
11
- const code6 = ref('')
12
- const code7 = ref('')
13
-
14
- const handleComplete = (val: string) => {
15
- console.log('OTP Complete:', val)
16
- }
17
- </script>
18
-
19
- <template>
20
- <div class="space-y-10 p-4">
21
- <div class="space-y-2">
22
- <h2 class="text-2xl font-bold">OTP Input</h2>
23
- <p class="text-gray-500">
24
- For entering one-time passwords, verification codes, and PINs.
25
- </p>
26
- </div>
27
-
28
- <!-- Default -->
29
- <section class="space-y-4">
30
- <h3 class="text-lg font-semibold">Default</h3>
31
- <div class="p-4 border rounded-lg">
32
- <OTPInput
33
- v-model="code1"
34
- @complete="handleComplete" />
35
- <p class="mt-2 text-sm text-gray-500">Value: {{ code1 }}</p>
36
- </div>
37
- </section>
38
-
39
- <!-- Variants -->
40
- <section class="space-y-4">
41
- <h3 class="text-lg font-semibold">Variants</h3>
42
- <div class="grid gap-6">
43
- <div>
44
- <p class="text-sm font-medium mb-2 text-gray-600">
45
- Outline (Default)
46
- </p>
47
- <OTPInput
48
- v-model="code2"
49
- variant="outline" />
50
- </div>
51
- <div>
52
- <p class="text-sm font-medium mb-2 text-gray-600">Solid</p>
53
- <OTPInput
54
- v-model="code2"
55
- variant="solid" />
56
- </div>
57
- <div>
58
- <p class="text-sm font-medium mb-2 text-gray-600">Ghost</p>
59
- <OTPInput
60
- v-model="code2"
61
- variant="ghost" />
62
- </div>
63
- </div>
64
- </section>
65
-
66
- <!-- Attached -->
67
- <section class="space-y-4">
68
- <h3 class="text-lg font-semibold">Attached / Grouped</h3>
69
- <div class="grid gap-6">
70
- <div>
71
- <p class="text-sm font-medium mb-2 text-gray-600">
72
- Attached Outline
73
- </p>
74
- <OTPInput
75
- v-model="code3"
76
- attached
77
- variant="outline" />
78
- </div>
79
- <div>
80
- <p class="text-sm font-medium mb-2 text-gray-600">
81
- Attached Solid
82
- </p>
83
- <OTPInput
84
- v-model="code3"
85
- attached
86
- variant="solid" />
87
- </div>
88
- </div>
89
- </section>
90
-
91
- <!-- Sizes -->
92
- <section class="space-y-4">
93
- <h3 class="text-lg font-semibold">Sizes</h3>
94
- <div class="flex flex-col gap-4">
95
- <div class="flex items-center gap-4">
96
- <span class="w-20 text-sm text-gray-500">Small</span>
97
- <OTPInput
98
- v-model="code4"
99
- size="sm" />
100
- </div>
101
- <div class="flex items-center gap-4">
102
- <span class="w-20 text-sm text-gray-500">Medium</span>
103
- <OTPInput
104
- v-model="code4"
105
- size="md" />
106
- </div>
107
- <div class="flex items-center gap-4">
108
- <span class="w-20 text-sm text-gray-500">Large</span>
109
- <OTPInput
110
- v-model="code4"
111
- size="lg" />
112
- </div>
113
- </div>
114
- </section>
115
-
116
- <!-- Custom Length & Type -->
117
- <section class="space-y-4">
118
- <h3 class="text-lg font-semibold">Custom configuration</h3>
119
- <div class="grid gap-6">
120
- <div>
121
- <p class="text-sm font-medium mb-2 text-gray-600">
122
- 4 Digits (Number only)
123
- </p>
124
- <OTPInput
125
- v-model="code5"
126
- :length="4" />
127
- </div>
128
- <div>
129
- <p class="text-sm font-medium mb-2 text-gray-600">
130
- 8 Chars (Text allowed - e.g. License Plate)
131
- </p>
132
- <OTPInput
133
- v-model="code6"
134
- :length="8"
135
- type="text"
136
- class="uppercase" />
137
- <p class="text-xs text-gray-400 mt-1">Try typing letters</p>
138
- </div>
139
- </div>
140
- </section>
141
-
142
- <!-- States -->
143
- <section class="space-y-4">
144
- <h3 class="text-lg font-semibold">States</h3>
145
- <div class="grid gap-6">
146
- <div>
147
- <p class="text-sm font-medium mb-2 text-gray-600">Error</p>
148
- <OTPInput
149
- v-model="code7"
150
- error />
151
- <p class="text-xs text-danger mt-1">Verification failed</p>
152
- </div>
153
- <div>
154
- <p class="text-sm font-medium mb-2 text-gray-600">
155
- Disabled
156
- </p>
157
- <OTPInput
158
- modelValue="123456"
159
- disabled />
160
- </div>
161
- <div>
162
- <p class="text-sm font-medium mb-2 text-gray-600">
163
- Autofocus (chk console/reload)
164
- </p>
165
- <OTPInput autofocus />
166
- </div>
167
- </div>
168
- </section>
169
- </div>
170
- </template>