sprintify-ui 0.4.5 → 0.4.6

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 (417) hide show
  1. package/README.md +258 -258
  2. package/dist/sprintify-ui.es.js +7 -7
  3. package/dist/style.css +1 -1
  4. package/dist/tailwindcss/index.js +306 -306
  5. package/dist/types/src/components/BaseActionItem.vue.d.ts +40 -40
  6. package/dist/types/src/components/BaseActionItemButton.vue.d.ts +25 -25
  7. package/dist/types/src/components/BaseAddressForm.vue.d.ts +84 -84
  8. package/dist/types/src/components/BaseAlert.vue.d.ts +51 -51
  9. package/dist/types/src/components/BaseApp.vue.d.ts +9 -9
  10. package/dist/types/src/components/BaseAppDialogs.vue.d.ts +14 -14
  11. package/dist/types/src/components/BaseAppNotifications.vue.d.ts +2 -2
  12. package/dist/types/src/components/BaseAutocomplete.vue.d.ts +237 -237
  13. package/dist/types/src/components/BaseAutocompleteDrawer.vue.d.ts +91 -91
  14. package/dist/types/src/components/BaseAutocompleteFetch.vue.d.ts +210 -210
  15. package/dist/types/src/components/BaseAvatar.vue.d.ts +52 -52
  16. package/dist/types/src/components/BaseAvatarGroup.vue.d.ts +43 -43
  17. package/dist/types/src/components/BaseBadge.vue.d.ts +60 -60
  18. package/dist/types/src/components/BaseBelongsTo.vue.d.ts +216 -216
  19. package/dist/types/src/components/BaseBoolean.vue.d.ts +10 -10
  20. package/dist/types/src/components/BaseBreadcrumbs.vue.d.ts +24 -24
  21. package/dist/types/src/components/BaseButton.vue.d.ts +23 -23
  22. package/dist/types/src/components/BaseButtonGroup.vue.d.ts +143 -143
  23. package/dist/types/src/components/BaseCalendar.vue.d.ts +124 -124
  24. package/dist/types/src/components/BaseCard.vue.d.ts +21 -21
  25. package/dist/types/src/components/BaseCardRow.vue.d.ts +16 -16
  26. package/dist/types/src/components/BaseCharacterCounter.vue.d.ts +49 -49
  27. package/dist/types/src/components/BaseClickOutside.vue.d.ts +26 -26
  28. package/dist/types/src/components/BaseClipboard.vue.d.ts +22 -22
  29. package/dist/types/src/components/BaseColor.vue.d.ts +80 -80
  30. package/dist/types/src/components/BaseContainer.vue.d.ts +34 -34
  31. package/dist/types/src/components/BaseCounter.vue.d.ts +42 -42
  32. package/dist/types/src/components/BaseCropper.vue.d.ts +76 -76
  33. package/dist/types/src/components/BaseCropperModal.vue.d.ts +28 -28
  34. package/dist/types/src/components/BaseDataIterator.vue.d.ts +227 -227
  35. package/dist/types/src/components/BaseDataIteratorSectionBox.vue.d.ts +20 -20
  36. package/dist/types/src/components/BaseDataIteratorSectionButton.vue.d.ts +25 -25
  37. package/dist/types/src/components/BaseDataIteratorSectionColumns.vue.d.ts +657 -657
  38. package/dist/types/src/components/BaseDataIteratorSectionModal.vue.d.ts +32 -32
  39. package/dist/types/src/components/BaseDataTable.vue.d.ts +406 -406
  40. package/dist/types/src/components/BaseDataTableRowAction.vue.d.ts +31 -31
  41. package/dist/types/src/components/BaseDatePicker.vue.d.ts +124 -124
  42. package/dist/types/src/components/BaseDateSelect.vue.d.ts +79 -79
  43. package/dist/types/src/components/BaseDescriptionList.vue.d.ts +9 -9
  44. package/dist/types/src/components/BaseDescriptionListItem.vue.d.ts +10 -10
  45. package/dist/types/src/components/BaseDialog.vue.d.ts +60 -60
  46. package/dist/types/src/components/BaseDisplayRelativeTime.vue.d.ts +50 -50
  47. package/dist/types/src/components/BaseDraggable.vue.d.ts +49 -49
  48. package/dist/types/src/components/BaseDropdown.vue.d.ts +65 -65
  49. package/dist/types/src/components/BaseDropdownAutocomplete.vue.d.ts +132 -132
  50. package/dist/types/src/components/BaseField.vue.d.ts +58 -58
  51. package/dist/types/src/components/BaseFieldI18n.vue.d.ts +93 -93
  52. package/dist/types/src/components/BaseFilePicker.vue.d.ts +72 -72
  53. package/dist/types/src/components/BaseFilePickerCrop.vue.d.ts +63 -63
  54. package/dist/types/src/components/BaseFileUploader.vue.d.ts +142 -142
  55. package/dist/types/src/components/BaseForm.vue.d.ts +143 -143
  56. package/dist/types/src/components/BaseGantt.vue.d.ts +425 -425
  57. package/dist/types/src/components/BaseHasMany.vue.d.ts +149 -149
  58. package/dist/types/src/components/BaseHeader.vue.d.ts +98 -98
  59. package/dist/types/src/components/BaseIconPicker.vue.d.ts +34 -34
  60. package/dist/types/src/components/BaseInput.vue.d.ts +174 -174
  61. package/dist/types/src/components/BaseInputError.vue.d.ts +9 -9
  62. package/dist/types/src/components/BaseInputLabel.vue.d.ts +42 -42
  63. package/dist/types/src/components/BaseInputPercent.vue.d.ts +138 -138
  64. package/dist/types/src/components/BaseLayoutNotificationDropdown.vue.d.ts +36 -36
  65. package/dist/types/src/components/BaseLayoutNotificationItem.vue.d.ts +16 -16
  66. package/dist/types/src/components/BaseLayoutNotificationItemContent.vue.d.ts +21 -21
  67. package/dist/types/src/components/BaseLayoutSidebar.vue.d.ts +51 -51
  68. package/dist/types/src/components/BaseLayoutSidebarConfigurable.vue.d.ts +87 -87
  69. package/dist/types/src/components/BaseLayoutStacked.vue.d.ts +23 -23
  70. package/dist/types/src/components/BaseLayoutStackedConfigurable.vue.d.ts +78 -78
  71. package/dist/types/src/components/BaseLoadingCover.vue.d.ts +96 -96
  72. package/dist/types/src/components/BaseMediaGallery.vue.d.ts +64 -64
  73. package/dist/types/src/components/BaseMediaGalleryItem.vue.d.ts +45 -45
  74. package/dist/types/src/components/BaseMediaItem.vue.d.ts +27 -27
  75. package/dist/types/src/components/BaseMediaLibrary.vue.d.ts +199 -199
  76. package/dist/types/src/components/BaseMediaList.vue.d.ts +46 -46
  77. package/dist/types/src/components/BaseMediaListItem.vue.d.ts +46 -46
  78. package/dist/types/src/components/BaseMediaPictures.vue.d.ts +55 -55
  79. package/dist/types/src/components/BaseMediaPicturesItem.vue.d.ts +54 -54
  80. package/dist/types/src/components/BaseMediaPreview.vue.d.ts +36 -36
  81. package/dist/types/src/components/BaseMenu.vue.d.ts +68 -68
  82. package/dist/types/src/components/BaseMenuItem.vue.d.ts +61 -61
  83. package/dist/types/src/components/BaseModalCenter.vue.d.ts +80 -80
  84. package/dist/types/src/components/BaseModalSide.vue.d.ts +62 -62
  85. package/dist/types/src/components/BaseNavbar.vue.d.ts +38 -38
  86. package/dist/types/src/components/BaseNavbarItem.vue.d.ts +26 -26
  87. package/dist/types/src/components/BaseNavbarItemContent.vue.d.ts +60 -60
  88. package/dist/types/src/components/BaseNavbarSideItem.vue.d.ts +44 -44
  89. package/dist/types/src/components/BaseNavbarSideItemContent.vue.d.ts +60 -60
  90. package/dist/types/src/components/BasePagination.vue.d.ts +35 -35
  91. package/dist/types/src/components/BasePanel.vue.d.ts +31 -31
  92. package/dist/types/src/components/BasePassword.vue.d.ts +67 -67
  93. package/dist/types/src/components/BaseProgressCircle.vue.d.ts +37 -37
  94. package/dist/types/src/components/BaseRadioGroup.vue.d.ts +105 -105
  95. package/dist/types/src/components/BaseReadMore.vue.d.ts +21 -21
  96. package/dist/types/src/components/BaseRichText.vue.d.ts +92 -92
  97. package/dist/types/src/components/BaseSelect.vue.d.ts +98 -98
  98. package/dist/types/src/components/BaseShortcut.vue.d.ts +86 -86
  99. package/dist/types/src/components/BaseSideNavigation.vue.d.ts +21 -21
  100. package/dist/types/src/components/BaseSideNavigationItem.vue.d.ts +41 -41
  101. package/dist/types/src/components/BaseSkeleton.vue.d.ts +31 -31
  102. package/dist/types/src/components/BaseStatistic.vue.d.ts +55 -55
  103. package/dist/types/src/components/BaseStepper.vue.d.ts +16 -16
  104. package/dist/types/src/components/BaseStepperItem.vue.d.ts +51 -51
  105. package/dist/types/src/components/BaseSwitch.vue.d.ts +87 -87
  106. package/dist/types/src/components/BaseSystemAlert.vue.d.ts +52 -52
  107. package/dist/types/src/components/BaseTabItem.vue.d.ts +41 -41
  108. package/dist/types/src/components/BaseTable.vue.d.ts +221 -221
  109. package/dist/types/src/components/BaseTableColumn.vue.d.ts +174 -174
  110. package/dist/types/src/components/BaseTabs.vue.d.ts +21 -21
  111. package/dist/types/src/components/BaseTagAutocomplete.vue.d.ts +209 -209
  112. package/dist/types/src/components/BaseTagAutocompleteFetch.vue.d.ts +141 -141
  113. package/dist/types/src/components/BaseTextarea.vue.d.ts +103 -103
  114. package/dist/types/src/components/BaseTextareaAutoresize.vue.d.ts +113 -113
  115. package/dist/types/src/components/BaseTimeline.vue.d.ts +14 -14
  116. package/dist/types/src/components/BaseTimelineItem.vue.d.ts +14 -14
  117. package/dist/types/src/components/BaseToast.vue.d.ts +20 -20
  118. package/dist/types/src/components/BaseUniqueCode.vue.d.ts +33 -33
  119. package/dist/types/src/components/SlotComponent.d.ts +43 -43
  120. package/dist/types/src/components/index.d.ts +97 -97
  121. package/dist/types/src/composables/breakpoints.d.ts +27 -27
  122. package/dist/types/src/composables/clickOutside.d.ts +8 -8
  123. package/dist/types/src/composables/field.d.ts +19 -19
  124. package/dist/types/src/composables/hasOptions.d.ts +7 -7
  125. package/dist/types/src/composables/mediaQuery.d.ts +2 -2
  126. package/dist/types/src/composables/modal.d.ts +6 -6
  127. package/dist/types/src/composables/paginatedData.d.ts +7 -7
  128. package/dist/types/src/constants/MyConstants.d.ts +1 -1
  129. package/dist/types/src/constants/index.d.ts +2 -2
  130. package/dist/types/src/i18n/index.d.ts +1 -1
  131. package/dist/types/src/index.d.ts +236 -236
  132. package/dist/types/src/services/gantt/format.d.ts +24 -24
  133. package/dist/types/src/services/gantt/timescale.d.ts +26 -26
  134. package/dist/types/src/services/gantt/types.d.ts +67 -67
  135. package/dist/types/src/stores/dialogs.d.ts +9 -9
  136. package/dist/types/src/stores/i18n.d.ts +5 -5
  137. package/dist/types/src/stores/notifications.d.ts +10 -10
  138. package/dist/types/src/stores/systemAlerts.d.ts +9 -9
  139. package/dist/types/src/stories/PageShow.vue.d.ts +2 -2
  140. package/dist/types/src/svg/BaseEmptyState.vue.d.ts +2 -2
  141. package/dist/types/src/svg/BaseSpinnerLarge.vue.d.ts +2 -2
  142. package/dist/types/src/svg/BaseSpinnerSmall.vue.d.ts +2 -2
  143. package/dist/types/src/types/CalendarEvent.d.ts +9 -9
  144. package/dist/types/src/types/Color.d.ts +9 -9
  145. package/dist/types/src/types/Country.d.ts +4 -4
  146. package/dist/types/src/types/ImagePickerResult.d.ts +5 -5
  147. package/dist/types/src/types/Media.d.ts +9 -9
  148. package/dist/types/src/types/Notification.d.ts +8 -8
  149. package/dist/types/src/types/Region.d.ts +5 -5
  150. package/dist/types/src/types/Status.d.ts +5 -5
  151. package/dist/types/src/types/StepperItem.d.ts +7 -7
  152. package/dist/types/src/types/TimelineItem.d.ts +9 -9
  153. package/dist/types/src/types/UploadedFile.d.ts +10 -10
  154. package/dist/types/src/types/User.d.ts +6 -6
  155. package/dist/types/src/types/index.d.ts +219 -218
  156. package/dist/types/src/utils/blob.d.ts +3 -3
  157. package/dist/types/src/utils/colors.d.ts +13 -13
  158. package/dist/types/src/utils/cropper/avatar.d.ts +5 -5
  159. package/dist/types/src/utils/cropper/cover.d.ts +5 -5
  160. package/dist/types/src/utils/cropper/presetInterface.d.ts +7 -7
  161. package/dist/types/src/utils/cropper/presets.d.ts +6 -6
  162. package/dist/types/src/utils/fileSizeFormat.d.ts +1 -1
  163. package/dist/types/src/utils/fileValidations.d.ts +2 -2
  164. package/dist/types/src/utils/index.d.ts +6 -6
  165. package/dist/types/src/utils/resizeImageFromURI.d.ts +1 -1
  166. package/dist/types/src/utils/scrollPreventer.d.ts +3 -3
  167. package/dist/types/src/utils/toHumanList.d.ts +1 -1
  168. package/package.json +148 -148
  169. package/src/assets/flatpickr.css +243 -243
  170. package/src/assets/form.css +6 -6
  171. package/src/assets/main.css +36 -36
  172. package/src/assets/tailwind.css +2 -2
  173. package/src/components/BaseActionItem.vue +68 -68
  174. package/src/components/BaseActionItemButton.vue +77 -77
  175. package/src/components/BaseAddressForm.stories.js +103 -103
  176. package/src/components/BaseAddressForm.vue +354 -354
  177. package/src/components/BaseAlert.stories.js +52 -52
  178. package/src/components/BaseAlert.vue +158 -158
  179. package/src/components/BaseApp.vue +16 -16
  180. package/src/components/BaseAppDialogs.vue +123 -123
  181. package/src/components/BaseAppNotifications.vue +40 -40
  182. package/src/components/BaseAutocomplete.stories.js +236 -236
  183. package/src/components/BaseAutocomplete.vue +523 -523
  184. package/src/components/BaseAutocompleteDrawer.vue +372 -372
  185. package/src/components/BaseAutocompleteFetch.stories.js +224 -224
  186. package/src/components/BaseAutocompleteFetch.vue +288 -288
  187. package/src/components/BaseAvatar.stories.js +39 -39
  188. package/src/components/BaseAvatar.vue +120 -120
  189. package/src/components/BaseAvatarGroup.stories.js +71 -71
  190. package/src/components/BaseAvatarGroup.vue +148 -148
  191. package/src/components/BaseBadge.stories.js +124 -124
  192. package/src/components/BaseBadge.vue +87 -87
  193. package/src/components/BaseBelongsTo.stories.js +223 -223
  194. package/src/components/BaseBelongsTo.vue +193 -193
  195. package/src/components/BaseBoolean.stories.js +35 -35
  196. package/src/components/BaseBoolean.vue +26 -26
  197. package/src/components/BaseBreadcrumbs.stories.js +50 -50
  198. package/src/components/BaseBreadcrumbs.vue +109 -109
  199. package/src/components/BaseButton.stories.js +88 -88
  200. package/src/components/BaseButton.vue +46 -46
  201. package/src/components/BaseButtonGroup.stories.js +86 -86
  202. package/src/components/BaseButtonGroup.vue +150 -150
  203. package/src/components/BaseCalendar.stories.js +202 -202
  204. package/src/components/BaseCalendar.vue +215 -215
  205. package/src/components/BaseCard.stories.js +61 -61
  206. package/src/components/BaseCard.vue +49 -49
  207. package/src/components/BaseCardRow.vue +34 -34
  208. package/src/components/BaseCharacterCounter.stories.js +30 -30
  209. package/src/components/BaseCharacterCounter.vue +64 -64
  210. package/src/components/BaseClickOutside.vue +37 -37
  211. package/src/components/BaseClipboard.stories.js +32 -32
  212. package/src/components/BaseClipboard.vue +83 -83
  213. package/src/components/BaseColor.stories.js +46 -46
  214. package/src/components/BaseColor.vue +154 -154
  215. package/src/components/BaseContainer.stories.js +34 -34
  216. package/src/components/BaseContainer.vue +50 -50
  217. package/src/components/BaseCounter.stories.js +47 -47
  218. package/src/components/BaseCounter.vue +82 -82
  219. package/src/components/BaseCropper.stories.js +113 -113
  220. package/src/components/BaseCropper.vue +458 -458
  221. package/src/components/BaseCropperModal.stories.js +54 -54
  222. package/src/components/BaseCropperModal.vue +143 -143
  223. package/src/components/BaseDataIterator.stories.js +197 -197
  224. package/src/components/BaseDataIterator.vue +839 -839
  225. package/src/components/BaseDataIteratorSectionBox.vue +36 -36
  226. package/src/components/BaseDataIteratorSectionButton.vue +53 -53
  227. package/src/components/BaseDataIteratorSectionColumns.vue +70 -70
  228. package/src/components/BaseDataIteratorSectionModal.vue +41 -41
  229. package/src/components/BaseDataTable.stories.js +226 -226
  230. package/src/components/BaseDataTable.vue +779 -779
  231. package/src/components/BaseDataTableRowAction.vue +53 -53
  232. package/src/components/BaseDatePicker.stories.js +130 -130
  233. package/src/components/BaseDatePicker.vue +296 -296
  234. package/src/components/BaseDateSelect.stories.js +47 -47
  235. package/src/components/BaseDateSelect.vue +241 -241
  236. package/src/components/BaseDescriptionList.stories.js +35 -35
  237. package/src/components/BaseDescriptionList.vue +13 -13
  238. package/src/components/BaseDescriptionListItem.vue +47 -47
  239. package/src/components/BaseDialog.stories.js +51 -51
  240. package/src/components/BaseDialog.vue +119 -119
  241. package/src/components/BaseDisplayRelativeTime.stories.js +47 -47
  242. package/src/components/BaseDisplayRelativeTime.vue +122 -122
  243. package/src/components/BaseDraggable.vue +71 -71
  244. package/src/components/BaseDropdown.stories.js +210 -210
  245. package/src/components/BaseDropdown.vue +280 -280
  246. package/src/components/BaseDropdownAutocomplete.stories.js +187 -187
  247. package/src/components/BaseDropdownAutocomplete.vue +235 -235
  248. package/src/components/BaseField.vue +112 -112
  249. package/src/components/BaseFieldI18n.stories.js +38 -38
  250. package/src/components/BaseFieldI18n.vue +170 -170
  251. package/src/components/BaseFilePicker.stories.js +84 -84
  252. package/src/components/BaseFilePicker.vue +163 -163
  253. package/src/components/BaseFilePickerCrop.stories.js +135 -135
  254. package/src/components/BaseFilePickerCrop.vue +130 -130
  255. package/src/components/BaseFileUploader.stories.js +102 -102
  256. package/src/components/BaseFileUploader.vue +185 -185
  257. package/src/components/BaseForm.stories.js +48 -48
  258. package/src/components/BaseForm.vue +335 -335
  259. package/src/components/BaseGantt.stories.js +133 -133
  260. package/src/components/BaseGantt.vue +336 -336
  261. package/src/components/BaseHasMany.stories.js +189 -189
  262. package/src/components/BaseHasMany.vue +137 -137
  263. package/src/components/BaseHeader.stories.js +133 -133
  264. package/src/components/BaseHeader.vue +188 -188
  265. package/src/components/BaseIconPicker.stories.js +22 -22
  266. package/src/components/BaseIconPicker.vue +225 -225
  267. package/src/components/BaseInput.stories.js +167 -167
  268. package/src/components/BaseInput.vue +264 -264
  269. package/src/components/BaseInputError.vue +7 -7
  270. package/src/components/BaseInputLabel.stories.js +36 -36
  271. package/src/components/BaseInputLabel.vue +57 -57
  272. package/src/components/BaseInputPercent.stories.js +65 -65
  273. package/src/components/BaseInputPercent.vue +139 -139
  274. package/src/components/BaseLayoutNotificationDropdown.vue +150 -150
  275. package/src/components/BaseLayoutNotificationItem.vue +53 -53
  276. package/src/components/BaseLayoutNotificationItemContent.vue +30 -30
  277. package/src/components/BaseLayoutSidebar.vue +236 -236
  278. package/src/components/BaseLayoutSidebarConfigurable.stories.js +166 -166
  279. package/src/components/BaseLayoutSidebarConfigurable.vue +181 -181
  280. package/src/components/BaseLayoutStacked.vue +52 -52
  281. package/src/components/BaseLayoutStackedConfigurable.stories.js +109 -109
  282. package/src/components/BaseLayoutStackedConfigurable.vue +158 -158
  283. package/src/components/BaseLoadingCover.stories.js +55 -55
  284. package/src/components/BaseLoadingCover.vue +101 -101
  285. package/src/components/BaseMediaGallery.vue +96 -96
  286. package/src/components/BaseMediaGalleryItem.vue +101 -101
  287. package/src/components/BaseMediaItem.stories.js +41 -41
  288. package/src/components/BaseMediaItem.vue +80 -80
  289. package/src/components/BaseMediaLibrary.stories.js +267 -267
  290. package/src/components/BaseMediaLibrary.vue +342 -342
  291. package/src/components/BaseMediaList.vue +67 -67
  292. package/src/components/BaseMediaListItem.vue +212 -212
  293. package/src/components/BaseMediaPictures.vue +64 -64
  294. package/src/components/BaseMediaPicturesItem.vue +100 -100
  295. package/src/components/BaseMediaPreview.stories.js +72 -72
  296. package/src/components/BaseMediaPreview.vue +106 -106
  297. package/src/components/BaseMenu.stories.js +129 -129
  298. package/src/components/BaseMenu.vue +165 -165
  299. package/src/components/BaseMenuItem.vue +145 -145
  300. package/src/components/BaseModalCenter.stories.js +68 -68
  301. package/src/components/BaseModalCenter.vue +128 -128
  302. package/src/components/BaseModalSide.stories.js +55 -55
  303. package/src/components/BaseModalSide.vue +116 -116
  304. package/src/components/BaseNavbar.stories.js +151 -151
  305. package/src/components/BaseNavbar.vue +91 -91
  306. package/src/components/BaseNavbarItem.vue +49 -49
  307. package/src/components/BaseNavbarItemContent.vue +97 -97
  308. package/src/components/BaseNavbarSideItem.vue +114 -114
  309. package/src/components/BaseNavbarSideItemContent.vue +111 -111
  310. package/src/components/BasePagination.stories.js +35 -35
  311. package/src/components/BasePagination.vue +266 -266
  312. package/src/components/BasePanel.stories.js +56 -56
  313. package/src/components/BasePanel.vue +42 -42
  314. package/src/components/BasePassword.stories.js +57 -57
  315. package/src/components/BasePassword.vue +107 -107
  316. package/src/components/BaseProgressCircle.stories.js +27 -27
  317. package/src/components/BaseProgressCircle.vue +80 -80
  318. package/src/components/BaseRadioGroup.stories.js +88 -88
  319. package/src/components/BaseRadioGroup.vue +125 -125
  320. package/src/components/BaseReadMore.stories.js +30 -30
  321. package/src/components/BaseReadMore.vue +73 -73
  322. package/src/components/BaseRichText.stories.js +102 -102
  323. package/src/components/BaseRichText.vue +198 -198
  324. package/src/components/BaseSelect.stories.js +118 -118
  325. package/src/components/BaseSelect.vue +224 -224
  326. package/src/components/BaseShortcut.stories.js +102 -102
  327. package/src/components/BaseShortcut.vue +112 -112
  328. package/src/components/BaseSideNavigation.stories.js +85 -85
  329. package/src/components/BaseSideNavigation.vue +32 -32
  330. package/src/components/BaseSideNavigationItem.vue +95 -95
  331. package/src/components/BaseSkeleton.stories.js +36 -36
  332. package/src/components/BaseSkeleton.vue +40 -40
  333. package/src/components/BaseStatistic.stories.js +51 -51
  334. package/src/components/BaseStatistic.vue +106 -106
  335. package/src/components/BaseStepper.stories.js +94 -94
  336. package/src/components/BaseStepper.vue +72 -72
  337. package/src/components/BaseStepperItem.stories.js +65 -65
  338. package/src/components/BaseStepperItem.vue +149 -149
  339. package/src/components/BaseSwitch.stories.js +130 -130
  340. package/src/components/BaseSwitch.vue +215 -215
  341. package/src/components/BaseSystemAlert.stories.js +63 -63
  342. package/src/components/BaseSystemAlert.vue +89 -89
  343. package/src/components/BaseTabItem.vue +97 -97
  344. package/src/components/BaseTable.vue +904 -904
  345. package/src/components/BaseTableColumn.vue +124 -124
  346. package/src/components/BaseTabs.stories.js +85 -85
  347. package/src/components/BaseTabs.vue +73 -73
  348. package/src/components/BaseTagAutocomplete.stories.js +258 -258
  349. package/src/components/BaseTagAutocomplete.vue +438 -438
  350. package/src/components/BaseTagAutocompleteFetch.stories.js +185 -185
  351. package/src/components/BaseTagAutocompleteFetch.vue +220 -220
  352. package/src/components/BaseTextarea.stories.js +58 -58
  353. package/src/components/BaseTextarea.vue +103 -103
  354. package/src/components/BaseTextareaAutoresize.stories.js +102 -102
  355. package/src/components/BaseTextareaAutoresize.vue +166 -166
  356. package/src/components/BaseTimeline.stories.js +55 -55
  357. package/src/components/BaseTimeline.vue +38 -38
  358. package/src/components/BaseTimelineItem.stories.js +78 -78
  359. package/src/components/BaseTimelineItem.vue +90 -90
  360. package/src/components/BaseToast.stories.js +50 -50
  361. package/src/components/BaseToast.vue +43 -43
  362. package/src/components/BaseUniqueCode.stories.js +36 -36
  363. package/src/components/BaseUniqueCode.vue +183 -183
  364. package/src/components/SlotComponent.ts +37 -37
  365. package/src/components/index.ts +196 -196
  366. package/src/composables/breakpoints.ts +94 -94
  367. package/src/composables/clickOutside.ts +80 -80
  368. package/src/composables/field.ts +117 -117
  369. package/src/composables/hasOptions.ts +68 -68
  370. package/src/composables/mediaQuery.ts +42 -42
  371. package/src/composables/modal.ts +73 -73
  372. package/src/composables/paginatedData.ts +65 -65
  373. package/src/constants/MyConstants.ts +1 -1
  374. package/src/constants/index.ts +5 -5
  375. package/src/env.d.ts +15 -15
  376. package/src/i18n/index.ts +60 -60
  377. package/src/index.ts +114 -114
  378. package/src/lang/en.json +95 -95
  379. package/src/lang/fr.json +95 -95
  380. package/src/services/gantt/format.ts +113 -113
  381. package/src/services/gantt/timescale.ts +242 -242
  382. package/src/services/gantt/types.ts +74 -74
  383. package/src/stores/dialogs.ts +45 -45
  384. package/src/stores/i18n.ts +14 -14
  385. package/src/stores/notifications.ts +47 -47
  386. package/src/stores/systemAlerts.ts +32 -32
  387. package/src/stories/List.stories.js +132 -132
  388. package/src/stories/PageShow.vue +423 -423
  389. package/src/stories/Show.stories.js +22 -22
  390. package/src/svg/BaseEmptyState.vue +38 -38
  391. package/src/svg/BaseSpinnerLarge.vue +59 -59
  392. package/src/svg/BaseSpinnerSmall.vue +15 -15
  393. package/src/types/CalendarEvent.ts +9 -9
  394. package/src/types/Color.ts +9 -9
  395. package/src/types/Country.ts +4 -4
  396. package/src/types/ImagePickerResult.ts +5 -5
  397. package/src/types/Media.ts +10 -10
  398. package/src/types/Notification.ts +10 -10
  399. package/src/types/Region.ts +5 -5
  400. package/src/types/Status.ts +5 -5
  401. package/src/types/StepperItem.ts +8 -8
  402. package/src/types/TimelineItem.ts +9 -9
  403. package/src/types/UploadedFile.ts +11 -11
  404. package/src/types/User.ts +7 -7
  405. package/src/types/index.ts +268 -267
  406. package/src/utils/blob.ts +30 -30
  407. package/src/utils/colors.ts +210 -210
  408. package/src/utils/cropper/avatar.ts +33 -33
  409. package/src/utils/cropper/cover.ts +41 -41
  410. package/src/utils/cropper/presetInterface.ts +16 -16
  411. package/src/utils/cropper/presets.ts +7 -7
  412. package/src/utils/fileSizeFormat.ts +15 -15
  413. package/src/utils/fileValidations.ts +26 -26
  414. package/src/utils/index.ts +16 -16
  415. package/src/utils/resizeImageFromURI.ts +118 -118
  416. package/src/utils/scrollPreventer.ts +11 -11
  417. package/src/utils/toHumanList.ts +20 -20
@@ -1,109 +1,109 @@
1
- <template>
2
- <div>
3
- <nav
4
- v-if="breadcrumbs.length > 0"
5
- class="hidden sm:flex"
6
- aria-label="Breadcrumb"
7
- >
8
- <ol
9
- role="list"
10
- class="flex items-center space-x-2"
11
- >
12
- <li
13
- v-for="(breadcrumb, index) in breadcrumbs"
14
- :key="index"
15
- >
16
- <div class="flex items-center">
17
- <div
18
- v-if="index > 0"
19
- class="text-gray-300"
20
- :class="{ 'text-xs': size == 'md', 'text-[10px]': size == 'sm' }"
21
- >
22
- /
23
- </div>
24
-
25
- <RouterLink
26
- v-slot="{ href, navigate, isExactActive }"
27
- :to="breadcrumb.to"
28
- custom
29
- >
30
- <a
31
- :href="href"
32
- class="text-sm"
33
- :class="[
34
- { 'ml-2': index > 0 },
35
- isExactActive
36
- ? 'text-primary-600'
37
- : 'text-slate-600 hover:text-slate-700',
38
- ]"
39
- @click.prevent="navigate()"
40
- >
41
- <span v-if="breadcrumb.icon">
42
- <BaseIcon
43
- :icon="breadcrumb.icon"
44
- :class="{ 'h-4 w-4': size == 'md', 'h-3 w-3': size == 'sm' }"
45
- />
46
- </span>
47
- <span
48
- v-else
49
- :class="{ 'text-sm': size == 'md', 'text-xs': size == 'sm' }"
50
- >
51
- {{ truncate(breadcrumb.label) }}
52
- </span>
53
- </a>
54
- </RouterLink>
55
- </div>
56
- </li>
57
- </ol>
58
- </nav>
59
-
60
- <RouterLink
61
- v-if="mobileBreadcrumb"
62
- :to="mobileBreadcrumb.to"
63
- class="block text-slate-600 sm:hidden"
64
- >
65
- <div class="flex items-center">
66
- <svg
67
- class="-ml-1 mr-1 h-5 w-5 flex-shrink-0 text-slate-500"
68
- viewBox="0 0 20 20"
69
- fill="currentColor"
70
- aria-hidden="true"
71
- >
72
- <path
73
- fill-rule="evenodd"
74
- d="M12.79 5.23a.75.75 0 01-.02 1.06L8.832 10l3.938 3.71a.75.75 0 11-1.04 1.08l-4.5-4.25a.75.75 0 010-1.08l4.5-4.25a.75.75 0 011.06.02z"
75
- clip-rule="evenodd"
76
- ></path>
77
- </svg>
78
- <span :class="{ 'text-sm': size == 'md', 'text-xs': size == 'sm' }">
79
- {{ mobileBreadcrumb.label }}
80
- </span>
81
- </div>
82
- </RouterLink>
83
- </div>
84
- </template>
85
-
86
- <script lang="ts" setup>
87
- import { PropType } from 'vue';
88
- import { Breadcrumb } from '@/types';
89
- import { truncate } from 'lodash';
90
- import { BaseIcon } from '..';
91
-
92
- const props = defineProps({
93
- breadcrumbs: {
94
- required: true,
95
- type: Array as PropType<Breadcrumb[]>,
96
- },
97
- size: {
98
- type: String as PropType<'sm' | 'md'>,
99
- default: 'md',
100
- },
101
- });
102
-
103
- const mobileBreadcrumb = computed((): Breadcrumb | undefined => {
104
- if (props.breadcrumbs.length >= 2) {
105
- return props.breadcrumbs[props.breadcrumbs.length - 2];
106
- }
107
- return undefined;
108
- });
109
- </script>
1
+ <template>
2
+ <div>
3
+ <nav
4
+ v-if="breadcrumbs.length > 0"
5
+ class="hidden sm:flex"
6
+ aria-label="Breadcrumb"
7
+ >
8
+ <ol
9
+ role="list"
10
+ class="flex items-center space-x-2"
11
+ >
12
+ <li
13
+ v-for="(breadcrumb, index) in breadcrumbs"
14
+ :key="index"
15
+ >
16
+ <div class="flex items-center">
17
+ <div
18
+ v-if="index > 0"
19
+ class="text-gray-300"
20
+ :class="{ 'text-xs': size == 'md', 'text-[10px]': size == 'sm' }"
21
+ >
22
+ /
23
+ </div>
24
+
25
+ <RouterLink
26
+ v-slot="{ href, navigate, isExactActive }"
27
+ :to="breadcrumb.to"
28
+ custom
29
+ >
30
+ <a
31
+ :href="href"
32
+ class="text-sm"
33
+ :class="[
34
+ { 'ml-2': index > 0 },
35
+ isExactActive
36
+ ? 'text-primary-600'
37
+ : 'text-slate-600 hover:text-slate-700',
38
+ ]"
39
+ @click.prevent="navigate()"
40
+ >
41
+ <span v-if="breadcrumb.icon">
42
+ <BaseIcon
43
+ :icon="breadcrumb.icon"
44
+ :class="{ 'h-4 w-4': size == 'md', 'h-3 w-3': size == 'sm' }"
45
+ />
46
+ </span>
47
+ <span
48
+ v-else
49
+ :class="{ 'text-sm': size == 'md', 'text-xs': size == 'sm' }"
50
+ >
51
+ {{ truncate(breadcrumb.label) }}
52
+ </span>
53
+ </a>
54
+ </RouterLink>
55
+ </div>
56
+ </li>
57
+ </ol>
58
+ </nav>
59
+
60
+ <RouterLink
61
+ v-if="mobileBreadcrumb"
62
+ :to="mobileBreadcrumb.to"
63
+ class="block text-slate-600 sm:hidden"
64
+ >
65
+ <div class="flex items-center">
66
+ <svg
67
+ class="-ml-1 mr-1 h-5 w-5 flex-shrink-0 text-slate-500"
68
+ viewBox="0 0 20 20"
69
+ fill="currentColor"
70
+ aria-hidden="true"
71
+ >
72
+ <path
73
+ fill-rule="evenodd"
74
+ d="M12.79 5.23a.75.75 0 01-.02 1.06L8.832 10l3.938 3.71a.75.75 0 11-1.04 1.08l-4.5-4.25a.75.75 0 010-1.08l4.5-4.25a.75.75 0 011.06.02z"
75
+ clip-rule="evenodd"
76
+ ></path>
77
+ </svg>
78
+ <span :class="{ 'text-sm': size == 'md', 'text-xs': size == 'sm' }">
79
+ {{ mobileBreadcrumb.label }}
80
+ </span>
81
+ </div>
82
+ </RouterLink>
83
+ </div>
84
+ </template>
85
+
86
+ <script lang="ts" setup>
87
+ import { PropType } from 'vue';
88
+ import { Breadcrumb } from '@/types';
89
+ import { truncate } from 'lodash';
90
+ import { BaseIcon } from '..';
91
+
92
+ const props = defineProps({
93
+ breadcrumbs: {
94
+ required: true,
95
+ type: Array as PropType<Breadcrumb[]>,
96
+ },
97
+ size: {
98
+ type: String as PropType<'sm' | 'md'>,
99
+ default: 'md',
100
+ },
101
+ });
102
+
103
+ const mobileBreadcrumb = computed((): Breadcrumb | undefined => {
104
+ if (props.breadcrumbs.length >= 2) {
105
+ return props.breadcrumbs[props.breadcrumbs.length - 2];
106
+ }
107
+ return undefined;
108
+ });
109
+ </script>
@@ -1,88 +1,88 @@
1
- import BaseButton from './BaseButton.vue';
2
-
3
- const colors = [
4
- 'btn-primary',
5
- 'btn-secondary',
6
- 'btn-secondary-outline',
7
- 'btn-success',
8
- 'btn-success-outline',
9
- 'btn-warning',
10
- 'btn-warning-outline',
11
- 'btn-danger',
12
- 'btn-danger-outline',
13
- 'btn-white',
14
- 'btn-slate-100',
15
- 'btn-slate-100-outline',
16
- 'btn-slate-200',
17
- 'btn-slate-200-outline',
18
- 'btn-black',
19
- ];
20
-
21
- const sizes = ['btn-xs', 'btn-sm', 'btn-base', 'btn-lg', 'btn-xl'];
22
-
23
- export default {
24
- title: 'Components/BaseButton',
25
- component: BaseButton,
26
- argTypes: {
27
- class: {
28
- type: 'string',
29
- },
30
- },
31
- };
32
-
33
- const Template = (args) => ({
34
- components: { BaseButton },
35
- setup() {
36
- return { args };
37
- },
38
- template: `
39
- <BaseButton v-bind="args">
40
- Click me
41
- </BaseButton>
42
- `,
43
- });
44
-
45
- export const Demo = Template.bind({});
46
- Demo.args = {
47
- class: '',
48
- };
49
-
50
- export const Loading = Template.bind({});
51
- Loading.args = {
52
- loading: true,
53
- };
54
-
55
- export const Colors = (args) => ({
56
- components: { BaseButton },
57
- setup() {
58
- return { args, colors };
59
- },
60
- template: `
61
- <p class="text-xs text-slate-600 leading-tight mb-1">btn</p>
62
- <BaseButton class="btn">
63
- Click here
64
- </BaseButton>
65
- <div class="mb-4"></div>
66
- <div v-for="color in colors" :key="color" class="mb-4">
67
- <p class="text-xs text-slate-600 leading-tight mb-1">btn {{ color }}</p>
68
- <BaseButton :class="color">
69
- Click here
70
- </BaseButton>
71
- </div>
72
- `,
73
- });
74
-
75
- export const Sizes = (args) => ({
76
- components: { BaseButton },
77
- setup() {
78
- return { args, sizes };
79
- },
80
- template: `
81
- <div v-for="size in sizes" :key="size" class="mb-4">
82
- <p class="text-xs text-slate-600 leading-tight mb-1">btn {{ size }}</p>
83
- <BaseButton class="btn-primary" :class="size">
84
- Click here
85
- </BaseButton>
86
- </div>
87
- `,
88
- });
1
+ import BaseButton from './BaseButton.vue';
2
+
3
+ const colors = [
4
+ 'btn-primary',
5
+ 'btn-secondary',
6
+ 'btn-secondary-outline',
7
+ 'btn-success',
8
+ 'btn-success-outline',
9
+ 'btn-warning',
10
+ 'btn-warning-outline',
11
+ 'btn-danger',
12
+ 'btn-danger-outline',
13
+ 'btn-white',
14
+ 'btn-slate-100',
15
+ 'btn-slate-100-outline',
16
+ 'btn-slate-200',
17
+ 'btn-slate-200-outline',
18
+ 'btn-black',
19
+ ];
20
+
21
+ const sizes = ['btn-xs', 'btn-sm', 'btn-base', 'btn-lg', 'btn-xl'];
22
+
23
+ export default {
24
+ title: 'Components/BaseButton',
25
+ component: BaseButton,
26
+ argTypes: {
27
+ class: {
28
+ type: 'string',
29
+ },
30
+ },
31
+ };
32
+
33
+ const Template = (args) => ({
34
+ components: { BaseButton },
35
+ setup() {
36
+ return { args };
37
+ },
38
+ template: `
39
+ <BaseButton v-bind="args">
40
+ Click me
41
+ </BaseButton>
42
+ `,
43
+ });
44
+
45
+ export const Demo = Template.bind({});
46
+ Demo.args = {
47
+ class: '',
48
+ };
49
+
50
+ export const Loading = Template.bind({});
51
+ Loading.args = {
52
+ loading: true,
53
+ };
54
+
55
+ export const Colors = (args) => ({
56
+ components: { BaseButton },
57
+ setup() {
58
+ return { args, colors };
59
+ },
60
+ template: `
61
+ <p class="text-xs text-slate-600 leading-tight mb-1">btn</p>
62
+ <BaseButton class="btn">
63
+ Click here
64
+ </BaseButton>
65
+ <div class="mb-4"></div>
66
+ <div v-for="color in colors" :key="color" class="mb-4">
67
+ <p class="text-xs text-slate-600 leading-tight mb-1">btn {{ color }}</p>
68
+ <BaseButton :class="color">
69
+ Click here
70
+ </BaseButton>
71
+ </div>
72
+ `,
73
+ });
74
+
75
+ export const Sizes = (args) => ({
76
+ components: { BaseButton },
77
+ setup() {
78
+ return { args, sizes };
79
+ },
80
+ template: `
81
+ <div v-for="size in sizes" :key="size" class="mb-4">
82
+ <p class="text-xs text-slate-600 leading-tight mb-1">btn {{ size }}</p>
83
+ <BaseButton class="btn-primary" :class="size">
84
+ Click here
85
+ </BaseButton>
86
+ </div>
87
+ `,
88
+ });
@@ -1,46 +1,46 @@
1
- <template>
2
- <component
3
- :is="as"
4
- ref="button"
5
- class="btn"
6
- >
7
- <div
8
- class="flex items-center justify-center"
9
- :class="{ 'opacity-0': loading }"
10
- >
11
- <slot />
12
- </div>
13
-
14
- <div
15
- v-if="loading"
16
- class="absolute inset-0 flex h-full w-full items-center justify-center"
17
- >
18
- <svg
19
- class="h-4 w-4 animate-spin"
20
- viewBox="0 0 24 24"
21
- >
22
- <path
23
- fill="currentColor"
24
- d="M12,4V2A10,10 0 0,0 2,12H4A8,8 0 0,1 12,4Z"
25
- ></path>
26
- </svg>
27
- </div>
28
- </component>
29
- </template>
30
-
31
- <script lang="ts">
32
- import { defineComponent } from 'vue';
33
-
34
- export default defineComponent({
35
- props: {
36
- loading: {
37
- type: Boolean,
38
- default: false,
39
- },
40
- as: {
41
- default: 'button',
42
- type: String,
43
- },
44
- },
45
- });
46
- </script>
1
+ <template>
2
+ <component
3
+ :is="as"
4
+ ref="button"
5
+ class="btn"
6
+ >
7
+ <div
8
+ class="flex items-center justify-center"
9
+ :class="{ 'opacity-0': loading }"
10
+ >
11
+ <slot />
12
+ </div>
13
+
14
+ <div
15
+ v-if="loading"
16
+ class="absolute inset-0 flex h-full w-full items-center justify-center"
17
+ >
18
+ <svg
19
+ class="h-4 w-4 animate-spin"
20
+ viewBox="0 0 24 24"
21
+ >
22
+ <path
23
+ fill="currentColor"
24
+ d="M12,4V2A10,10 0 0,0 2,12H4A8,8 0 0,1 12,4Z"
25
+ ></path>
26
+ </svg>
27
+ </div>
28
+ </component>
29
+ </template>
30
+
31
+ <script lang="ts">
32
+ import { defineComponent } from 'vue';
33
+
34
+ export default defineComponent({
35
+ props: {
36
+ loading: {
37
+ type: Boolean,
38
+ default: false,
39
+ },
40
+ as: {
41
+ default: 'button',
42
+ type: String,
43
+ },
44
+ },
45
+ });
46
+ </script>
@@ -1,86 +1,86 @@
1
- import { createFieldStory, options } from '../../.storybook/utils';
2
- import BaseButtonGroup from './BaseButtonGroup.vue';
3
- import ShowValue from '../../.storybook/components/ShowValue.vue';
4
-
5
- export default {
6
- title: 'Form/BaseButtonGroup',
7
- component: BaseButtonGroup,
8
- argTypes: {},
9
- args: {
10
- labelKey: 'label',
11
- valueKey: 'value',
12
- options: options,
13
- },
14
- decorators: [() => ({ template: '<div class="mb-36"><story/></div>' })],
15
- };
16
-
17
- const Template = (args) => ({
18
- components: { BaseButtonGroup, ShowValue },
19
- setup() {
20
- const value = ref(null);
21
- return { args, value };
22
- },
23
- template: `
24
- <BaseButtonGroup v-model="value" v-bind="args"></BaseButtonGroup>
25
- <ShowValue :value="value"></ShowValue>
26
- `,
27
- });
28
-
29
- export const Single = Template.bind({});
30
- Single.args = {};
31
-
32
- export const SingleRequired = Template.bind({});
33
- SingleRequired.args = {
34
- required: true,
35
- };
36
-
37
- export const Multiple = Template.bind({});
38
- Multiple.args = {
39
- multiple: true,
40
- };
41
-
42
- export const Disabled = Template.bind({});
43
- Disabled.args = {
44
- disabled: true,
45
- modelValue: { label: 'Dark Maul', value: 'darth_maul' },
46
- };
47
-
48
- export const SlotOption = (args) => ({
49
- components: { BaseButtonGroup },
50
- setup() {
51
- const value = ref(null);
52
-
53
- const options = [
54
- { label: 'Red', value: 'red' },
55
- { label: 'Blue', value: 'blue' },
56
- { label: 'Green', value: 'green' },
57
- { label: 'Black', value: 'black' },
58
- { label: 'Gray', value: 'gray' },
59
- ];
60
-
61
- return { value, options, args };
62
- },
63
- template: `
64
- <BaseButtonGroup
65
- v-bind="args"
66
- v-model="value"
67
- :options="options"
68
- tw-button="btn btn-xl"
69
- tw-button-selected="btn-black"
70
- tw-button-unselected="btn-secondary-outline"
71
- >
72
- <template #option="{ option }">
73
- <div class="flex items-center space-x-2 font-semibold">
74
- <div class="w-3 h-3 rounded border border-white" :style="{ backgroundColor: option.value }"></div>
75
- <div>{{ option.label }}</div>
76
- </div>
77
- </template>
78
- </BaseButtonGroup>
79
- `,
80
- });
81
-
82
- export const Field = createFieldStory({
83
- component: BaseButtonGroup,
84
- componentName: 'BaseButtonGroup',
85
- label: 'Choose your Jedi ou Sith',
86
- });
1
+ import { createFieldStory, options } from '../../.storybook/utils';
2
+ import BaseButtonGroup from './BaseButtonGroup.vue';
3
+ import ShowValue from '../../.storybook/components/ShowValue.vue';
4
+
5
+ export default {
6
+ title: 'Form/BaseButtonGroup',
7
+ component: BaseButtonGroup,
8
+ argTypes: {},
9
+ args: {
10
+ labelKey: 'label',
11
+ valueKey: 'value',
12
+ options: options,
13
+ },
14
+ decorators: [() => ({ template: '<div class="mb-36"><story/></div>' })],
15
+ };
16
+
17
+ const Template = (args) => ({
18
+ components: { BaseButtonGroup, ShowValue },
19
+ setup() {
20
+ const value = ref(null);
21
+ return { args, value };
22
+ },
23
+ template: `
24
+ <BaseButtonGroup v-model="value" v-bind="args"></BaseButtonGroup>
25
+ <ShowValue :value="value"></ShowValue>
26
+ `,
27
+ });
28
+
29
+ export const Single = Template.bind({});
30
+ Single.args = {};
31
+
32
+ export const SingleRequired = Template.bind({});
33
+ SingleRequired.args = {
34
+ required: true,
35
+ };
36
+
37
+ export const Multiple = Template.bind({});
38
+ Multiple.args = {
39
+ multiple: true,
40
+ };
41
+
42
+ export const Disabled = Template.bind({});
43
+ Disabled.args = {
44
+ disabled: true,
45
+ modelValue: { label: 'Dark Maul', value: 'darth_maul' },
46
+ };
47
+
48
+ export const SlotOption = (args) => ({
49
+ components: { BaseButtonGroup },
50
+ setup() {
51
+ const value = ref(null);
52
+
53
+ const options = [
54
+ { label: 'Red', value: 'red' },
55
+ { label: 'Blue', value: 'blue' },
56
+ { label: 'Green', value: 'green' },
57
+ { label: 'Black', value: 'black' },
58
+ { label: 'Gray', value: 'gray' },
59
+ ];
60
+
61
+ return { value, options, args };
62
+ },
63
+ template: `
64
+ <BaseButtonGroup
65
+ v-bind="args"
66
+ v-model="value"
67
+ :options="options"
68
+ tw-button="btn btn-xl"
69
+ tw-button-selected="btn-black"
70
+ tw-button-unselected="btn-secondary-outline"
71
+ >
72
+ <template #option="{ option }">
73
+ <div class="flex items-center space-x-2 font-semibold">
74
+ <div class="w-3 h-3 rounded border border-white" :style="{ backgroundColor: option.value }"></div>
75
+ <div>{{ option.label }}</div>
76
+ </div>
77
+ </template>
78
+ </BaseButtonGroup>
79
+ `,
80
+ });
81
+
82
+ export const Field = createFieldStory({
83
+ component: BaseButtonGroup,
84
+ componentName: 'BaseButtonGroup',
85
+ label: 'Choose your Jedi ou Sith',
86
+ });