@soft-stech/bootsman-ui-shadcn 1.3.8 → 1.3.10

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 (23) hide show
  1. package/dist/{BuiAutoForm.vue_vue_type_script_setup_true_lang-BWWNpH1I.js → BuiAutoForm.vue_vue_type_script_setup_true_lang--BfJ5eim.js} +23 -23
  2. package/dist/BuiAutoFormField.vue_vue_type_script_setup_true_lang-BEazRmdY.js +265 -0
  3. package/dist/BuiAutoFormFieldArray.vue_vue_type_script_setup_true_lang-BoFRtjoQ.js +142 -0
  4. package/dist/BuiAutoFormFieldObject.vue_vue_type_script_setup_true_lang-CWpAoZW6.js +96 -0
  5. package/dist/assets/main.css +1 -1
  6. package/dist/components/ui/auto-form/BuiAutoForm.js +1 -1
  7. package/dist/components/ui/auto-form/BuiAutoFormField.js +1 -1
  8. package/dist/components/ui/auto-form/BuiAutoFormFieldArray.js +1 -1
  9. package/dist/components/ui/auto-form/BuiAutoFormFieldArrayCard.js +4 -0
  10. package/dist/components/ui/auto-form/BuiAutoFormFieldObject.js +1 -1
  11. package/dist/components/ui/auto-form/BuiAutoFormFieldObjectCard.js +4 -0
  12. package/dist/components/ui/auto-form/constant.js +6 -3
  13. package/dist/components/ui/auto-form/index.d.ts +2 -0
  14. package/dist/components/ui/auto-form/index.js +23 -19
  15. package/dist/index.js +97 -93
  16. package/package.json +1 -1
  17. package/src/components/stories/BuiAutoForm.story.vue +16 -0
  18. package/src/components/ui/auto-form/BuiAutoForm.vue +1 -1
  19. package/src/components/ui/auto-form/BuiAutoFormFieldArrayCard.vue +97 -0
  20. package/src/components/ui/auto-form/BuiAutoFormFieldObjectCard.vue +76 -0
  21. package/src/components/ui/auto-form/constant.ts +4 -2
  22. package/src/components/ui/auto-form/index.ts +2 -0
  23. package/dist/BuiAutoFormField.vue_vue_type_script_setup_true_lang-xmzLQDzl.js +0 -294
package/dist/index.js CHANGED
@@ -1,14 +1,14 @@
1
1
  /* empty css */
2
2
  import { _ as i } from "./BuiAccordion.vue_vue_type_script_setup_true_lang-nxe3iIoM.js";
3
- import { _ as s } from "./BuiAccordionContent.vue_vue_type_script_setup_true_lang-pCTYRg2Z.js";
3
+ import { _ as m } from "./BuiAccordionContent.vue_vue_type_script_setup_true_lang-pCTYRg2Z.js";
4
4
  import { _ as p } from "./BuiAccordionItem.vue_vue_type_script_setup_true_lang-Dp-3E0FN.js";
5
5
  import { _ as B } from "./BuiAccordionTrigger.vue_vue_type_script_setup_true_lang-CtFZfwMC.js";
6
- import { _ as f } from "./BuiAlertDialog.vue_vue_type_script_setup_true_lang-CKpn0FlQ.js";
6
+ import { _ as n } from "./BuiAlertDialog.vue_vue_type_script_setup_true_lang-CKpn0FlQ.js";
7
7
  import { _ as l } from "./BuiAlertDialogTrigger.vue_vue_type_script_setup_true_lang-Cz4RKkoF.js";
8
8
  import { _ as g } from "./BuiAlertDialogContent.vue_vue_type_script_setup_true_lang-DFUbXcoh.js";
9
9
  import { _ as T } from "./BuiAlertDialogHeader.vue_vue_type_script_setup_true_lang-7Dx74gxo.js";
10
10
  import { _ as c } from "./BuiAlertDialogTitle.vue_vue_type_script_setup_true_lang-CLxf_ipo.js";
11
- import { _ as D } from "./BuiAlertDialogDescription.vue_vue_type_script_setup_true_lang-BNFeSGFa.js";
11
+ import { _ as A } from "./BuiAlertDialogDescription.vue_vue_type_script_setup_true_lang-BNFeSGFa.js";
12
12
  import { _ as S } from "./BuiAlertDialogFooter.vue_vue_type_script_setup_true_lang-kJr2Plgw.js";
13
13
  import { _ as w } from "./BuiAlertDialogAction.vue_vue_type_script_setup_true_lang-evBkU3SL.js";
14
14
  import { _ as P } from "./BuiAlertDialogCancel.vue_vue_type_script_setup_true_lang-ZNOYeYWA.js";
@@ -16,22 +16,22 @@ import { BuiAlert as v, alertVariants as h } from "./components/ui/alert/index.j
16
16
  import { _ as y } from "./BuiAspectRatio.vue_vue_type_script_setup_true_lang-DDkhBEEl.js";
17
17
  import { BuiAvatar as H, avatarVariant as R } from "./components/ui/avatar/index.js";
18
18
  import { BuiBadge as E, badgeVariants as j } from "./components/ui/badge/index.js";
19
- import { _ as O, b as U, c as q, t as z, v as J } from "./utils-DPuEjrVV.js";
19
+ import { _ as N, b as U, c as q, t as z, v as J } from "./utils-DPuEjrVV.js";
20
20
  import { BuiCalendar as Q, isVCalendarSlot as W } from "./components/ui/calendar/index.js";
21
21
  import { _ as Y } from "./BuiCard.vue_vue_type_script_setup_true_lang-CN_UnmV6.js";
22
22
  import { _ as $ } from "./BuiCardHeader.vue_vue_type_script_setup_true_lang-D9miAvuh.js";
23
23
  import { _ as ro } from "./BuiCardTitle.vue_vue_type_script_setup_true_lang-B6T0EtFW.js";
24
24
  import { _ as to } from "./BuiCardDescription.vue_vue_type_script_setup_true_lang-Bf_1xgzn.js";
25
25
  import { _ as io } from "./BuiCardContent.vue_vue_type_script_setup_true_lang-B6clSivQ.js";
26
- import { _ as so } from "./BuiCardFooter.vue_vue_type_script_setup_true_lang-Bxt8PufJ.js";
26
+ import { _ as mo } from "./BuiCardFooter.vue_vue_type_script_setup_true_lang-Bxt8PufJ.js";
27
27
  import { _ as po } from "./BuiCheckbox.vue_vue_type_script_setup_true_lang-B0K_SUAC.js";
28
28
  import { _ as Bo } from "./BuiCommand.vue_vue_type_script_setup_true_lang-P_fz9PPV.js";
29
- import { _ as fo } from "./BuiCommandDialog.vue_vue_type_script_setup_true_lang-CEnlCiUo.js";
29
+ import { _ as no } from "./BuiCommandDialog.vue_vue_type_script_setup_true_lang-CEnlCiUo.js";
30
30
  import { _ as lo } from "./BuiCommandEmpty.vue_vue_type_script_setup_true_lang--AzKirWT.js";
31
31
  import { _ as Co } from "./BuiCommandGroup.vue_vue_type_script_setup_true_lang-oAo3VvXV.js";
32
32
  import { _ as Fo } from "./BuiCommandInput.vue_vue_type_script_setup_true_lang-BEhdQsvD.js";
33
33
  import { _ as bo } from "./BuiCommandItem.vue_vue_type_script_setup_true_lang-uxCefFTc.js";
34
- import { _ as Ao } from "./BuiCommandList.vue_vue_type_script_setup_true_lang-bwZcHGfM.js";
34
+ import { _ as Do } from "./BuiCommandList.vue_vue_type_script_setup_true_lang-bwZcHGfM.js";
35
35
  import { _ as Mo } from "./BuiCommandSeparator.vue_vue_type_script_setup_true_lang-DbZAlodh.js";
36
36
  import { _ as Io } from "./BuiCommandShortcut.vue_vue_type_script_setup_true_lang-DBIJCtZe.js";
37
37
  import { _ as Vo } from "./BuiContextMenu.vue_vue_type_script_setup_true_lang-DygiiuXp.js";
@@ -40,7 +40,7 @@ import { _ as yo } from "./BuiContextMenuContent.vue_vue_type_script_setup_true_
40
40
  import { _ as Ho } from "./BuiContextMenuGroup.vue_vue_type_script_setup_true_lang-jMxHU3w0.js";
41
41
  import { _ as ko } from "./BuiContextMenuRadioGroup.vue_vue_type_script_setup_true_lang-C5R9N60e.js";
42
42
  import { _ as jo } from "./BuiContextMenuItem.vue_vue_type_script_setup_true_lang-D8vfxO74.js";
43
- import { _ as Oo } from "./BuiContextMenuCheckboxItem.vue_vue_type_script_setup_true_lang-D0miFbPB.js";
43
+ import { _ as No } from "./BuiContextMenuCheckboxItem.vue_vue_type_script_setup_true_lang-D0miFbPB.js";
44
44
  import { _ as qo } from "./BuiContextMenuRadioItem.vue_vue_type_script_setup_true_lang-CVenpxL9.js";
45
45
  import { _ as Jo } from "./BuiContextMenuShortcut.vue_vue_type_script_setup_true_lang-DPh99A_h.js";
46
46
  import { _ as Qo } from "./BuiContextMenuSeparator.vue_vue_type_script_setup_true_lang-CKN8RXqL.js";
@@ -50,13 +50,13 @@ import { _ as or } from "./BuiContextMenuSubTrigger.vue_vue_type_script_setup_tr
50
50
  import { _ as er } from "./BuiContextMenuSubContent.vue_vue_type_script_setup_true_lang-CvYcdr9E.js";
51
51
  import { _ as ar } from "./BuiDialog.vue_vue_type_script_setup_true_lang-DGrI65dh.js";
52
52
  import { _ as ur } from "./BuiDialogClose.vue_vue_type_script_setup_true_lang-D9w-FsVq.js";
53
- import { _ as mr } from "./BuiDialogTrigger.vue_vue_type_script_setup_true_lang-Czib4PX-.js";
53
+ import { _ as sr } from "./BuiDialogTrigger.vue_vue_type_script_setup_true_lang-Czib4PX-.js";
54
54
  import { _ as xr } from "./BuiDialogHeader.vue_vue_type_script_setup_true_lang-2BA5kKFA.js";
55
- import { _ as nr } from "./BuiDialogTitle.vue_vue_type_script_setup_true_lang-D4lcU_Gz.js";
55
+ import { _ as fr } from "./BuiDialogTitle.vue_vue_type_script_setup_true_lang-D4lcU_Gz.js";
56
56
  import { _ as _r } from "./BuiDialogDescription.vue_vue_type_script_setup_true_lang-B6RlWji2.js";
57
57
  import { _ as dr } from "./BuiDialogContent.vue_vue_type_script_setup_true_lang-3DBhO_IA.js";
58
58
  import { _ as Cr } from "./BuiDialogFooter.vue_vue_type_script_setup_true_lang-B89so9mg.js";
59
- import { a as Fr, f as cr, y as br, g as Dr } from "./index-uA4l4INt.js";
59
+ import { a as Fr, f as cr, y as br, g as Ar } from "./index-uA4l4INt.js";
60
60
  import { _ as Sr } from "./BuiDropdownMenu.vue_vue_type_script_setup_true_lang-BCrmrPva.js";
61
61
  import { _ as wr } from "./BuiDropdownMenuTrigger.vue_vue_type_script_setup_true_lang-cfi8tQ0K.js";
62
62
  import { _ as Pr } from "./BuiDropdownMenuContent.vue_vue_type_script_setup_true_lang-6K_84IX2.js";
@@ -65,7 +65,7 @@ import { _ as Lr } from "./BuiDropdownMenuRadioGroup.vue_vue_type_script_setup_t
65
65
  import { _ as Gr } from "./BuiDropdownMenuItem.vue_vue_type_script_setup_true_lang-CU4I3eC4.js";
66
66
  import { _ as Rr } from "./BuiDropdownMenuCheckboxItem.vue_vue_type_script_setup_true_lang-8u8u19G1.js";
67
67
  import { _ as Er } from "./BuiDropdownMenuRadioItem.vue_vue_type_script_setup_true_lang-CxyoF0q7.js";
68
- import { _ as Nr } from "./BuiDropdownMenuShortcut.vue_vue_type_script_setup_true_lang-FqWOStNT.js";
68
+ import { _ as Or } from "./BuiDropdownMenuShortcut.vue_vue_type_script_setup_true_lang-FqWOStNT.js";
69
69
  import { _ as Ur } from "./BuiDropdownMenuSeparator.vue_vue_type_script_setup_true_lang-QPaZoZKA.js";
70
70
  import { _ as zr } from "./BuiDropdownMenuLabel.vue_vue_type_script_setup_true_lang-BPGNHYh4.js";
71
71
  import { _ as Kr } from "./BuiDropdownMenuSub.vue_vue_type_script_setup_true_lang-CLi87_1u.js";
@@ -73,14 +73,14 @@ import { _ as Wr } from "./BuiDropdownMenuSubTrigger.vue_vue_type_script_setup_t
73
73
  import { _ as Yr } from "./BuiDropdownMenuSubContent.vue_vue_type_script_setup_true_lang-mMWlAm-h.js";
74
74
  import { Form as $r, Field as oe, FieldArray as re, useField as ee, useFieldArray as te, useForm as ae } from "vee-validate";
75
75
  import { _ as ue } from "./BuiFormItem.vue_vue_type_script_setup_true_lang-COw7Rwow.js";
76
- import { _ as me } from "./BuiFormLabel.vue_vue_type_script_setup_true_lang-ClJ8XVcR.js";
76
+ import { _ as se } from "./BuiFormLabel.vue_vue_type_script_setup_true_lang-ClJ8XVcR.js";
77
77
  import { _ as xe } from "./BuiFormControl.vue_vue_type_script_setup_true_lang-CCJS2wc1.js";
78
- import { _ as ne } from "./BuiFormMessage.vue_vue_type_script_setup_true_lang-DTdflpS8.js";
78
+ import { _ as fe } from "./BuiFormMessage.vue_vue_type_script_setup_true_lang-DTdflpS8.js";
79
79
  import { _ as _e } from "./BuiFormDescription.vue_vue_type_script_setup_true_lang-CeQSv28t.js";
80
80
  import { _ as de } from "./BuiHoverCard.vue_vue_type_script_setup_true_lang-UvgUvVQh.js";
81
81
  import { _ as Ce } from "./BuiHoverCardTrigger.vue_vue_type_script_setup_true_lang-Cw-9ABpN.js";
82
82
  import { _ as Fe } from "./BuiHoverCardContent.vue_vue_type_script_setup_true_lang-DsSfafrp.js";
83
- import { BuiBadgedInput as be, BuiInput as De, BuiPasswordInput as Ae, inputVariants as Se } from "./components/ui/input/index.js";
83
+ import { BuiBadgedInput as be, BuiInput as Ae, BuiPasswordInput as De, inputVariants as Se } from "./components/ui/input/index.js";
84
84
  import { _ as we } from "./BuiLabel.vue_vue_type_script_setup_true_lang-DQH-AF9N.js";
85
85
  import { _ as Pe } from "./BuiPaginationCommon.vue_vue_type_script_setup_true_lang-DjLAqoa-.js";
86
86
  import { _ as ve } from "./BuiPaginationFirst.vue_vue_type_script_setup_true_lang-CvMVo3wC.js";
@@ -88,7 +88,7 @@ import { _ as Le } from "./BuiPaginationLast.vue_vue_type_script_setup_true_lang
88
88
  import { _ as Ge } from "./BuiPaginationNext.vue_vue_type_script_setup_true_lang-DcwRaAYo.js";
89
89
  import { _ as Re } from "./BuiPaginationPrev.vue_vue_type_script_setup_true_lang-DkK8mnKY.js";
90
90
  import { _ as Ee } from "./BuiPaginationEllipsis.vue_vue_type_script_setup_true_lang-2v3zIYpf.js";
91
- import { _ as Ne } from "./BuiPopover.vue_vue_type_script_setup_true_lang-Ujd6aP3K.js";
91
+ import { _ as Oe } from "./BuiPopover.vue_vue_type_script_setup_true_lang-Ujd6aP3K.js";
92
92
  import { _ as Ue } from "./BuiPopoverTrigger.vue_vue_type_script_setup_true_lang-Cr_ofPA6.js";
93
93
  import { _ as ze } from "./BuiPopoverContent.vue_vue_type_script_setup_true_lang-R7bk_E6m.js";
94
94
  import { BuiProgress as Ke, capVariants as Qe, indicatorVariants as We, progressVariants as Xe } from "./components/ui/progress/index.js";
@@ -96,15 +96,15 @@ import { BuiHealth as Ze, capHealthVariants as $e, healthVariants as ot } from "
96
96
  import { _ as et } from "./BuiRadioGroup.vue_vue_type_script_setup_true_lang-Bzefyzga.js";
97
97
  import { _ as at } from "./BuiRadioGroupItem.vue_vue_type_script_setup_true_lang-D1w59zx2.js";
98
98
  import { _ as ut } from "./BuiSelect.vue_vue_type_script_setup_true_lang-YVZaZc0x.js";
99
- import { _ as mt } from "./BuiSelectValue.vue_vue_type_script_setup_true_lang-CseYU299.js";
99
+ import { _ as st } from "./BuiSelectValue.vue_vue_type_script_setup_true_lang-CseYU299.js";
100
100
  import { _ as xt } from "./BuiSelectTrigger.vue_vue_type_script_setup_true_lang-Dh-1xzuh.js";
101
- import { _ as nt } from "./BuiSelectContent.vue_vue_type_script_setup_true_lang-CX82dW-X.js";
101
+ import { _ as ft } from "./BuiSelectContent.vue_vue_type_script_setup_true_lang-CX82dW-X.js";
102
102
  import { _ as _t } from "./BuiSelectGroup.vue_vue_type_script_setup_true_lang-B7bT-kcN.js";
103
103
  import { _ as dt } from "./BuiSelectItem.vue_vue_type_script_setup_true_lang-DsWD84S8.js";
104
104
  import { _ as Ct } from "./BuiSelectItemText.vue_vue_type_script_setup_true_lang-CMBf17fE.js";
105
105
  import { _ as Ft } from "./BuiSelectLabel.vue_vue_type_script_setup_true_lang-Cif3hoiO.js";
106
106
  import { _ as bt } from "./BuiSelectSeparator.vue_vue_type_script_setup_true_lang-Bkm9mitz.js";
107
- import { _ as At } from "./BuiSeparator.vue_vue_type_script_setup_true_lang-DbN8eyHh.js";
107
+ import { _ as Dt } from "./BuiSeparator.vue_vue_type_script_setup_true_lang-DbN8eyHh.js";
108
108
  import { _ as Mt } from "./BuiSwitch.vue_vue_type_script_setup_true_lang-VtywyEjw.js";
109
109
  import { _ as It } from "./BuiTable.vue_vue_type_script_setup_true_lang-CUPSwE5z.js";
110
110
  import { _ as Vt } from "./BuiTableBody.vue_vue_type_script_setup_true_lang-CWT4u-Ma.js";
@@ -113,21 +113,21 @@ import { _ as yt } from "./BuiTableHead.vue_vue_type_script_setup_true_lang-CCXO
113
113
  import { _ as Ht } from "./BuiTableHeader.vue_vue_type_script_setup_true_lang-DZOqi3dp.js";
114
114
  import { _ as kt } from "./BuiTableRow.vue_vue_type_script_setup_true_lang-CpEilJsW.js";
115
115
  import { _ as jt } from "./BuiTableRowSubrow.vue_vue_type_script_setup_true_lang-Ch5gemw2.js";
116
- import { _ as Ot } from "./BuiTableCaption.vue_vue_type_script_setup_true_lang-053YvtXp.js";
116
+ import { _ as Nt } from "./BuiTableCaption.vue_vue_type_script_setup_true_lang-053YvtXp.js";
117
117
  import { _ as qt } from "./BuiTableEmpty.vue_vue_type_script_setup_true_lang-BJDYHpRG.js";
118
118
  import { _ as Jt } from "./BuiTableFooter.vue_vue_type_script_setup_true_lang-Cfxlxsbh.js";
119
119
  import { _ as Qt } from "./BuiDataTable.vue_vue_type_script_setup_true_lang-Bzw8CawP.js";
120
120
  import { BuiTabsList as Xt, BuiTabsTrigger as Yt, tabsListVariants as Zt, tabsTriggerVariants as $t } from "./components/ui/tabs/index.js";
121
121
  import { BuiTextarea as ra, textareaVariants as ea } from "./components/ui/textarea/index.js";
122
122
  import { BuiToast as aa, BuiToaster as ia, toastVariants as ua } from "./components/ui/toast/index.js";
123
- import { _ as ma } from "./BuiTooltip.vue_vue_type_script_setup_true_lang-CsOjyqI1.js";
123
+ import { _ as sa } from "./BuiTooltip.vue_vue_type_script_setup_true_lang-CsOjyqI1.js";
124
124
  import { _ as xa } from "./BuiTooltipContent.vue_vue_type_script_setup_true_lang-DeCynYsO.js";
125
- import { _ as na } from "./BuiTooltipTrigger.vue_vue_type_script_setup_true_lang-Bb8h7e0Q.js";
125
+ import { _ as fa } from "./BuiTooltipTrigger.vue_vue_type_script_setup_true_lang-Bb8h7e0Q.js";
126
126
  import { _ as _a } from "./BuiTooltipProvider.vue_vue_type_script_setup_true_lang-DE2Dcdd0.js";
127
127
  import { BuiToggle as da, toggleVariants as ga } from "./components/ui/toggle/index.js";
128
128
  import { _ as Ta } from "./BuiToggleGroup.vue_vue_type_script_setup_true_lang-D4bAsz99.js";
129
129
  import { _ as ca } from "./BuiToggleGroupItem.vue_vue_type_script_setup_true_lang-BoEvQmPy.js";
130
- import { _ as Da } from "./BuiSlider.vue_vue_type_script_setup_true_lang-BrTF_gnp.js";
130
+ import { _ as Aa } from "./BuiSlider.vue_vue_type_script_setup_true_lang-BrTF_gnp.js";
131
131
  import { _ as Sa } from "./Skeleton.vue_vue_type_script_setup_true_lang-BA2fwC6Z.js";
132
132
  import { _ as wa } from "./BuiScrollArea.vue_vue_type_script_setup_true_lang-DN5hbjJX.js";
133
133
  import { _ as Pa } from "./BuiScrollBar.vue_vue_type_script_setup_true_lang-CnsvRIhs.js";
@@ -135,71 +135,75 @@ import { _ as va } from "./BuiCollapsible.vue_vue_type_script_setup_true_lang-Bf
135
135
  import { _ as La } from "./BuiCollapsibleTrigger.vue_vue_type_script_setup_true_lang-DJ8YMCCp.js";
136
136
  import { _ as Ga } from "./BuiCollapsibleContent.vue_vue_type_script_setup_true_lang-eieHE5yV.js";
137
137
  import { getBaseSchema as Ra, getBaseType as ka, getObjectFormSchema as Ea } from "./components/ui/auto-form/utils.js";
138
- import { _ as Na } from "./BuiAutoForm.vue_vue_type_script_setup_true_lang-BWWNpH1I.js";
139
- import { _ as Ua, a as qa, b as za } from "./BuiAutoFormField.vue_vue_type_script_setup_true_lang-xmzLQDzl.js";
138
+ import { _ as Oa } from "./BuiAutoForm.vue_vue_type_script_setup_true_lang--BfJ5eim.js";
139
+ import { _ as Ua, b as qa, a as za } from "./BuiAutoFormField.vue_vue_type_script_setup_true_lang-BEazRmdY.js";
140
140
  import { _ as Ka } from "./BuiAutoFormLabel.vue_vue_type_script_setup_true_lang-DzpWjTLE.js";
141
- import { _ as Wa } from "./BuiAutoFormFieldBoolean.vue_vue_type_script_setup_true_lang-tuxavlOe.js";
142
- import { _ as Ya } from "./BuiAutoFormFieldDate.vue_vue_type_script_setup_true_lang-Bzg1m-ii.js";
143
- import { _ as $a } from "./BuiAutoFormFieldEnum.vue_vue_type_script_setup_true_lang-Bqe8Rt85.js";
144
- import { _ as ri } from "./BuiAutoFormFieldFile.vue_vue_type_script_setup_true_lang-DrJwn66q.js";
145
- import { _ as ti } from "./BuiAutoFormFieldInput.vue_vue_type_script_setup_true_lang-DtBFfiOK.js";
146
- import { _ as ii } from "./BuiAutoFormFieldNumber.vue_vue_type_script_setup_true_lang-ClLqHM1Y.js";
147
- import { default as si } from "./tailwind-preset.js";
141
+ import { _ as Wa } from "./BuiAutoFormFieldArray.vue_vue_type_script_setup_true_lang-BoFRtjoQ.js";
142
+ import { _ as Ya } from "./BuiAutoFormFieldBoolean.vue_vue_type_script_setup_true_lang-tuxavlOe.js";
143
+ import { _ as $a } from "./BuiAutoFormFieldDate.vue_vue_type_script_setup_true_lang-Bzg1m-ii.js";
144
+ import { _ as ri } from "./BuiAutoFormFieldEnum.vue_vue_type_script_setup_true_lang-Bqe8Rt85.js";
145
+ import { _ as ti } from "./BuiAutoFormFieldFile.vue_vue_type_script_setup_true_lang-DrJwn66q.js";
146
+ import { _ as ii } from "./BuiAutoFormFieldInput.vue_vue_type_script_setup_true_lang-DtBFfiOK.js";
147
+ import { _ as mi } from "./BuiAutoFormFieldNumber.vue_vue_type_script_setup_true_lang-ClLqHM1Y.js";
148
+ import { _ as pi } from "./BuiAutoFormFieldObject.vue_vue_type_script_setup_true_lang-CWpAoZW6.js";
149
+ import { default as Bi } from "./tailwind-preset.js";
148
150
  /* empty css */
149
- import { _ as pi } from "./BuiAlertTitle.vue_vue_type_script_setup_true_lang-BvU1UhRc.js";
150
- import { _ as Bi } from "./BuiAlertDescription.vue_vue_type_script_setup_true_lang-CVBdwmJq.js";
151
- import { _ as fi } from "./BuiAvatarImage.vue_vue_type_script_setup_true_lang-CpDtlLee.js";
152
- import { _ as li } from "./BuiAvatarFallback.vue_vue_type_script_setup_true_lang-DM4kyiXi.js";
151
+ import { _ as ni } from "./BuiAlertTitle.vue_vue_type_script_setup_true_lang-BvU1UhRc.js";
152
+ import { _ as li } from "./BuiAlertDescription.vue_vue_type_script_setup_true_lang-CVBdwmJq.js";
153
+ import { _ as gi } from "./BuiAvatarImage.vue_vue_type_script_setup_true_lang-CpDtlLee.js";
154
+ import { _ as Ti } from "./BuiAvatarFallback.vue_vue_type_script_setup_true_lang-DM4kyiXi.js";
153
155
  import "./BuiCalendar.vue_vue_type_style_index_0_lang-DK4yUiXC.js";
154
- import { _ as gi } from "./BuiTabs.vue_vue_type_script_setup_true_lang-DZavy0KI.js";
155
- import { _ as Ti } from "./BuiTabsContent.vue_vue_type_script_setup_true_lang-BGARj0PN.js";
156
- import { _ as ci } from "./BuiToastAction.vue_vue_type_script_setup_true_lang-BnduHxHU.js";
157
- import { _ as Di } from "./BuiToastViewport.vue_vue_type_script_setup_true_lang-DGcOPCBU.js";
158
- import { _ as Si } from "./BuiToastClose.vue_vue_type_script_setup_true_lang-D8a4DIAU.js";
159
- import { _ as wi } from "./BuiToastTitle.vue_vue_type_script_setup_true_lang-BTPprH2k.js";
160
- import { _ as Pi } from "./BuiToastDescription.vue_vue_type_script_setup_true_lang-DttuuxON.js";
161
- import { _ as vi } from "./BuiToastProvider.vue_vue_type_script_setup_true_lang-V09S1Ros.js";
162
- import { toast as Li, useToast as yi } from "./components/ui/toast/use-toast.js";
156
+ import { _ as ci } from "./BuiTabs.vue_vue_type_script_setup_true_lang-DZavy0KI.js";
157
+ import { _ as Ai } from "./BuiTabsContent.vue_vue_type_script_setup_true_lang-BGARj0PN.js";
158
+ import { _ as Si } from "./BuiToastAction.vue_vue_type_script_setup_true_lang-BnduHxHU.js";
159
+ import { _ as wi } from "./BuiToastViewport.vue_vue_type_script_setup_true_lang-DGcOPCBU.js";
160
+ import { _ as Pi } from "./BuiToastClose.vue_vue_type_script_setup_true_lang-D8a4DIAU.js";
161
+ import { _ as vi } from "./BuiToastTitle.vue_vue_type_script_setup_true_lang-BTPprH2k.js";
162
+ import { _ as Li } from "./BuiToastDescription.vue_vue_type_script_setup_true_lang-DttuuxON.js";
163
+ import { _ as Gi } from "./BuiToastProvider.vue_vue_type_script_setup_true_lang-V09S1Ros.js";
164
+ import { toast as Ri, useToast as ki } from "./components/ui/toast/use-toast.js";
163
165
  export {
164
166
  i as BuiAccordion,
165
- s as BuiAccordionContent,
167
+ m as BuiAccordionContent,
166
168
  p as BuiAccordionItem,
167
169
  B as BuiAccordionTrigger,
168
170
  v as BuiAlert,
169
- Bi as BuiAlertDescription,
170
- f as BuiAlertDialog,
171
+ li as BuiAlertDescription,
172
+ n as BuiAlertDialog,
171
173
  w as BuiAlertDialogAction,
172
174
  P as BuiAlertDialogCancel,
173
175
  g as BuiAlertDialogContent,
174
- D as BuiAlertDialogDescription,
176
+ A as BuiAlertDialogDescription,
175
177
  S as BuiAlertDialogFooter,
176
178
  T as BuiAlertDialogHeader,
177
179
  c as BuiAlertDialogTitle,
178
180
  l as BuiAlertDialogTrigger,
179
- pi as BuiAlertTitle,
181
+ ni as BuiAlertTitle,
180
182
  y as BuiAspectRatio,
181
- Na as BuiAutoForm,
183
+ Oa as BuiAutoForm,
182
184
  Ua as BuiAutoFormField,
183
- qa as BuiAutoFormFieldArray,
184
- Wa as BuiAutoFormFieldBoolean,
185
- Ya as BuiAutoFormFieldDate,
186
- $a as BuiAutoFormFieldEnum,
187
- ri as BuiAutoFormFieldFile,
188
- ti as BuiAutoFormFieldInput,
189
- ii as BuiAutoFormFieldNumber,
190
- za as BuiAutoFormFieldObject,
185
+ Wa as BuiAutoFormFieldArray,
186
+ qa as BuiAutoFormFieldArrayCard,
187
+ Ya as BuiAutoFormFieldBoolean,
188
+ $a as BuiAutoFormFieldDate,
189
+ ri as BuiAutoFormFieldEnum,
190
+ ti as BuiAutoFormFieldFile,
191
+ ii as BuiAutoFormFieldInput,
192
+ mi as BuiAutoFormFieldNumber,
193
+ pi as BuiAutoFormFieldObject,
194
+ za as BuiAutoFormFieldObjectCard,
191
195
  Ka as BuiAutoFormLabel,
192
196
  H as BuiAvatar,
193
- li as BuiAvatarFallback,
194
- fi as BuiAvatarImage,
197
+ Ti as BuiAvatarFallback,
198
+ gi as BuiAvatarImage,
195
199
  E as BuiBadge,
196
200
  be as BuiBadgedInput,
197
- O as BuiButton,
201
+ N as BuiButton,
198
202
  Q as BuiCalendar,
199
203
  Y as BuiCard,
200
204
  io as BuiCardContent,
201
205
  to as BuiCardDescription,
202
- so as BuiCardFooter,
206
+ mo as BuiCardFooter,
203
207
  $ as BuiCardHeader,
204
208
  ro as BuiCardTitle,
205
209
  po as BuiCheckbox,
@@ -207,16 +211,16 @@ export {
207
211
  Ga as BuiCollapsibleContent,
208
212
  La as BuiCollapsibleTrigger,
209
213
  Bo as BuiCommand,
210
- fo as BuiCommandDialog,
214
+ no as BuiCommandDialog,
211
215
  lo as BuiCommandEmpty,
212
216
  Co as BuiCommandGroup,
213
217
  Fo as BuiCommandInput,
214
218
  bo as BuiCommandItem,
215
- Ao as BuiCommandList,
219
+ Do as BuiCommandList,
216
220
  Mo as BuiCommandSeparator,
217
221
  Io as BuiCommandShortcut,
218
222
  Vo as BuiContextMenu,
219
- Oo as BuiContextMenuCheckboxItem,
223
+ No as BuiContextMenuCheckboxItem,
220
224
  yo as BuiContextMenuContent,
221
225
  Ho as BuiContextMenuGroup,
222
226
  jo as BuiContextMenuItem,
@@ -236,8 +240,8 @@ export {
236
240
  _r as BuiDialogDescription,
237
241
  Cr as BuiDialogFooter,
238
242
  xr as BuiDialogHeader,
239
- nr as BuiDialogTitle,
240
- mr as BuiDialogTrigger,
243
+ fr as BuiDialogTitle,
244
+ sr as BuiDialogTrigger,
241
245
  Sr as BuiDropdownMenu,
242
246
  Rr as BuiDropdownMenuCheckboxItem,
243
247
  Pr as BuiDropdownMenuContent,
@@ -248,7 +252,7 @@ export {
248
252
  Lr as BuiDropdownMenuRadioGroup,
249
253
  Er as BuiDropdownMenuRadioItem,
250
254
  Ur as BuiDropdownMenuSeparator,
251
- Nr as BuiDropdownMenuShortcut,
255
+ Or as BuiDropdownMenuShortcut,
252
256
  Kr as BuiDropdownMenuSub,
253
257
  Yr as BuiDropdownMenuSubContent,
254
258
  Wr as BuiDropdownMenuSubTrigger,
@@ -259,13 +263,13 @@ export {
259
263
  oe as BuiFormField,
260
264
  re as BuiFormFieldArray,
261
265
  ue as BuiFormItem,
262
- me as BuiFormLabel,
263
- ne as BuiFormMessage,
266
+ se as BuiFormLabel,
267
+ fe as BuiFormMessage,
264
268
  Ze as BuiHealth,
265
269
  de as BuiHoverCard,
266
270
  Fe as BuiHoverCardContent,
267
271
  Ce as BuiHoverCardTrigger,
268
- De as BuiInput,
272
+ Ae as BuiInput,
269
273
  we as BuiLabel,
270
274
  cr as BuiPagination,
271
275
  Pe as BuiPaginationCommon,
@@ -273,11 +277,11 @@ export {
273
277
  ve as BuiPaginationFirst,
274
278
  Le as BuiPaginationLast,
275
279
  br as BuiPaginationList,
276
- Dr as BuiPaginationListItem,
280
+ Ar as BuiPaginationListItem,
277
281
  Ge as BuiPaginationNext,
278
282
  Re as BuiPaginationPrev,
279
- Ae as BuiPasswordInput,
280
- Ne as BuiPopover,
283
+ De as BuiPasswordInput,
284
+ Oe as BuiPopover,
281
285
  ze as BuiPopoverContent,
282
286
  Ue as BuiPopoverTrigger,
283
287
  Ke as BuiProgress,
@@ -286,20 +290,20 @@ export {
286
290
  wa as BuiScrollArea,
287
291
  Pa as BuiScrollBar,
288
292
  ut as BuiSelect,
289
- nt as BuiSelectContent,
293
+ ft as BuiSelectContent,
290
294
  _t as BuiSelectGroup,
291
295
  dt as BuiSelectItem,
292
296
  Ct as BuiSelectItemText,
293
297
  Ft as BuiSelectLabel,
294
298
  bt as BuiSelectSeparator,
295
299
  xt as BuiSelectTrigger,
296
- mt as BuiSelectValue,
297
- At as BuiSeparator,
298
- Da as BuiSlider,
300
+ st as BuiSelectValue,
301
+ Dt as BuiSeparator,
302
+ Aa as BuiSlider,
299
303
  Mt as BuiSwitch,
300
304
  It as BuiTable,
301
305
  Vt as BuiTableBody,
302
- Ot as BuiTableCaption,
306
+ Nt as BuiTableCaption,
303
307
  ht as BuiTableCell,
304
308
  qt as BuiTableEmpty,
305
309
  Jt as BuiTableFooter,
@@ -307,26 +311,26 @@ export {
307
311
  Ht as BuiTableHeader,
308
312
  kt as BuiTableRow,
309
313
  jt as BuiTableRowSubrow,
310
- gi as BuiTabs,
311
- Ti as BuiTabsContent,
314
+ ci as BuiTabs,
315
+ Ai as BuiTabsContent,
312
316
  Xt as BuiTabsList,
313
317
  Yt as BuiTabsTrigger,
314
318
  ra as BuiTextarea,
315
319
  aa as BuiToast,
316
- ci as BuiToastAction,
317
- Si as BuiToastClose,
318
- Pi as BuiToastDescription,
319
- vi as BuiToastProvider,
320
- wi as BuiToastTitle,
321
- Di as BuiToastViewport,
320
+ Si as BuiToastAction,
321
+ Pi as BuiToastClose,
322
+ Li as BuiToastDescription,
323
+ Gi as BuiToastProvider,
324
+ vi as BuiToastTitle,
325
+ wi as BuiToastViewport,
322
326
  ia as BuiToaster,
323
327
  da as BuiToggle,
324
328
  Ta as BuiToggleGroup,
325
329
  ca as BuiToggleGroupItem,
326
- ma as BuiTooltip,
330
+ sa as BuiTooltip,
327
331
  xa as BuiTooltipContent,
328
332
  _a as BuiTooltipProvider,
329
- na as BuiTooltipTrigger,
333
+ fa as BuiTooltipTrigger,
330
334
  Sa as Skeleton,
331
335
  h as alertVariants,
332
336
  R as avatarVariant,
@@ -346,14 +350,14 @@ export {
346
350
  z as tableColumnSortCommon,
347
351
  Zt as tabsListVariants,
348
352
  $t as tabsTriggerVariants,
349
- si as tailwind,
353
+ Bi as tailwind,
350
354
  ea as textareaVariants,
351
- Li as toast,
355
+ Ri as toast,
352
356
  ua as toastVariants,
353
357
  ga as toggleVariants,
354
358
  ee as useBuiField,
355
359
  te as useBuiFieldArray,
356
360
  ae as useBuiForm,
357
- yi as useToast,
361
+ ki as useToast,
358
362
  J as valueUpdater
359
363
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@soft-stech/bootsman-ui-shadcn",
3
- "version": "1.3.8",
3
+ "version": "1.3.10",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist",
@@ -23,6 +23,22 @@ const schema = z.object({
23
23
  })
24
24
  .describe('Addon')
25
25
  ),
26
+ level1: z
27
+ .object({
28
+ level2: z.object({
29
+ level3: z.object({
30
+ test: z.string().min(1),
31
+ something: z.boolean(),
32
+ array: z
33
+ .object({
34
+ field1: z.string().min(1),
35
+ field2: z.string().min(1)
36
+ })
37
+ .array()
38
+ })
39
+ })
40
+ })
41
+ .describe('Level 1'),
26
42
  username: z
27
43
  .string({
28
44
  required_error: 'Username is required.'
@@ -86,7 +86,7 @@ const formComponentProps = computed(() => {
86
86
  </script>
87
87
 
88
88
  <template>
89
- <component :is="formComponent" v-bind="formComponentProps">
89
+ <component :is="formComponent" v-bind="formComponentProps" class="flex flex-col gap-5">
90
90
  <slot name="customAutoForm" :fields="fields">
91
91
  <template v-for="(shape, key) of shapes" :key="key">
92
92
  <slot
@@ -0,0 +1,97 @@
1
+ <script setup lang="ts" generic="T extends z.ZodAny">
2
+ import * as z from 'zod'
3
+ import { computed, provide } from 'vue'
4
+ import { PlusIcon, TrashIcon } from 'lucide-vue-next'
5
+ import { FieldArray, FieldContextKey, useField } from 'vee-validate'
6
+ import type { Config, ConfigItem } from './interface'
7
+ import { beautifyObjectName, getBaseType } from './utils'
8
+ import AutoFormField from './BuiAutoFormField.vue'
9
+ import { BuiButton as Button } from '@/components/ui/button'
10
+ import { BuiSeparator as Separator } from '@/components/ui/separator'
11
+ import { BuiFormItem as FormItem, BuiFormMessage as FormMessage } from '@/components/ui/form'
12
+ import { BuiCard, BuiCardContent, BuiCardHeader, BuiCardTitle } from '@/components/ui/card'
13
+
14
+ const props = defineProps<{
15
+ fieldName: string
16
+ required?: boolean
17
+ config?: Config<T>
18
+ schema?: z.ZodArray<T>
19
+ disabled?: boolean
20
+ }>()
21
+
22
+ function isZodArray(item: z.ZodArray<any> | z.ZodDefault<any>): item is z.ZodArray<any> {
23
+ return item instanceof z.ZodArray
24
+ }
25
+
26
+ function isZodDefault(item: z.ZodArray<any> | z.ZodDefault<any>): item is z.ZodDefault<any> {
27
+ return item instanceof z.ZodDefault
28
+ }
29
+
30
+ const itemShape = computed(() => {
31
+ if (!props.schema) return
32
+
33
+ const schema: z.ZodAny = isZodArray(props.schema)
34
+ ? props.schema._def.type
35
+ : isZodDefault(props.schema)
36
+ ? // @ts-expect-error missing schema
37
+ props.schema._def.innerType._def.type
38
+ : null
39
+
40
+ return {
41
+ type: getBaseType(schema),
42
+ schema
43
+ }
44
+ })
45
+
46
+ const fieldContext = useField(props.fieldName)
47
+ // @ts-expect-error ignore missing `id`
48
+ provide(FieldContextKey, fieldContext)
49
+ </script>
50
+
51
+ <template>
52
+ <FieldArray v-slot="{ fields, remove, push }" as="section" :name="fieldName">
53
+ <slot v-bind="props">
54
+ <BuiCard as-child class="w-full border-0 shadow-none">
55
+ <FormItem>
56
+ <BuiCardHeader class="border-b-[1px] border-b-border/[0.16] py-1">
57
+ <BuiCardTitle class="py-0 text-base">
58
+ {{
59
+ schema?.description ||
60
+ beautifyObjectName(fieldName.split('.')[fieldName.split('.').length - 1])
61
+ }}
62
+ </BuiCardTitle>
63
+ </BuiCardHeader>
64
+ <BuiCardContent class="flex flex-col gap-5 pb-0 pr-0">
65
+ <template v-for="(field, index) of fields" :key="field.key">
66
+ <div class="mb-4 p-1">
67
+ <AutoFormField
68
+ :field-name="`${fieldName}[${index}]`"
69
+ :label="fieldName"
70
+ :shape="itemShape!"
71
+ :config="config as ConfigItem"
72
+ />
73
+
74
+ <div class="!my-4 flex justify-end">
75
+ <Button type="button" size="icon" variant="secondary" @click="remove(index)">
76
+ <TrashIcon :size="16" />
77
+ </Button>
78
+ </div>
79
+ <Separator v-if="!field.isLast" />
80
+ </div>
81
+ </template>
82
+
83
+ <Button
84
+ type="button"
85
+ variant="secondary"
86
+ class="mt-4 flex items-center"
87
+ @click="push(null)"
88
+ >
89
+ <PlusIcon class="mr-2" :size="16" />
90
+ </Button>
91
+ <FormMessage />
92
+ </BuiCardContent>
93
+ </FormItem>
94
+ </BuiCard>
95
+ </slot>
96
+ </FieldArray>
97
+ </template>
@@ -0,0 +1,76 @@
1
+ <script setup lang="ts" generic="T extends ZodRawShape">
2
+ import type { ZodAny, ZodObject, ZodRawShape } from 'zod'
3
+ import { computed, provide } from 'vue'
4
+ import { FieldContextKey, useField } from 'vee-validate'
5
+ import AutoFormField from './BuiAutoFormField.vue'
6
+ import type { Config, ConfigItem, Shape } from './interface'
7
+ import { beautifyObjectName, getBaseSchema, getBaseType, getDefaultValueInZodStack } from './utils'
8
+ import { BuiCard, BuiCardContent, BuiCardHeader, BuiCardTitle } from '@/components/ui/card'
9
+ import { BuiFormItem as FormItem } from '@/components/ui/form'
10
+
11
+ const props = defineProps<{
12
+ fieldName: string
13
+ required?: boolean
14
+ config?: Config<T>
15
+ schema?: ZodObject<T>
16
+ disabled?: boolean
17
+ }>()
18
+
19
+ const shapes = computed(() => {
20
+ // @ts-expect-error ignore {} not assignable to object
21
+ const val: { [key in keyof T]: Shape } = {}
22
+
23
+ if (!props.schema) return
24
+ const shape = getBaseSchema(props.schema)?.shape
25
+ if (!shape) return
26
+ Object.keys(shape).forEach((name) => {
27
+ const item = shape[name] as ZodAny
28
+ const baseItem = getBaseSchema(item) as ZodAny
29
+ let options =
30
+ baseItem && 'values' in baseItem._def ? (baseItem._def.values as string[]) : undefined
31
+ if (!Array.isArray(options) && typeof options === 'object') options = Object.values(options)
32
+
33
+ val[name as keyof T] = {
34
+ type: getBaseType(item),
35
+ default: getDefaultValueInZodStack(item),
36
+ options,
37
+ required: !['ZodOptional', 'ZodNullable'].includes(item._def.typeName),
38
+ schema: item
39
+ }
40
+ })
41
+ return val
42
+ })
43
+
44
+ const fieldContext = useField(props.fieldName)
45
+ // @ts-expect-error ignore missing `id`
46
+ provide(FieldContextKey, fieldContext)
47
+ </script>
48
+
49
+ <template>
50
+ <section>
51
+ <slot v-bind="props">
52
+ <BuiCard as-child class="w-full border-0 shadow-none">
53
+ <FormItem>
54
+ <BuiCardHeader class="border-b-[1px] border-b-border/[0.16] py-1">
55
+ <BuiCardTitle class="py-0 text-base">
56
+ {{
57
+ schema?.description ||
58
+ beautifyObjectName(fieldName.split('.')[fieldName.split('.').length - 1])
59
+ }}
60
+ </BuiCardTitle>
61
+ </BuiCardHeader>
62
+ <BuiCardContent class="flex flex-col gap-5 pb-0 pr-0">
63
+ <template v-for="(shape, key) in shapes" :key="key">
64
+ <AutoFormField
65
+ :config="config?.[key as keyof typeof config] as ConfigItem"
66
+ :field-name="`${fieldName}.${key.toString()}`"
67
+ :label="key.toString()"
68
+ :shape="shape"
69
+ />
70
+ </template>
71
+ </BuiCardContent>
72
+ </FormItem>
73
+ </BuiCard>
74
+ </slot>
75
+ </section>
76
+ </template>