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

Sign up to get free protection for your applications and to get access to all the features.
Files changed (21) hide show
  1. package/dist/{BuiAutoForm.vue_vue_type_script_setup_true_lang-DyG1WRf2.js → BuiAutoForm.vue_vue_type_script_setup_true_lang--BfJ5eim.js} +1 -1
  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-C7URAPKt.js → BuiAutoFormFieldObject.vue_vue_type_script_setup_true_lang-CWpAoZW6.js} +1 -1
  5. package/dist/components/ui/auto-form/BuiAutoForm.js +1 -1
  6. package/dist/components/ui/auto-form/BuiAutoFormField.js +1 -1
  7. package/dist/components/ui/auto-form/BuiAutoFormFieldArray.js +1 -1
  8. package/dist/components/ui/auto-form/BuiAutoFormFieldArrayCard.js +4 -0
  9. package/dist/components/ui/auto-form/BuiAutoFormFieldObject.js +1 -1
  10. package/dist/components/ui/auto-form/BuiAutoFormFieldObjectCard.js +1 -1
  11. package/dist/components/ui/auto-form/constant.js +6 -5
  12. package/dist/components/ui/auto-form/index.d.ts +2 -0
  13. package/dist/components/ui/auto-form/index.js +23 -20
  14. package/dist/index.js +75 -72
  15. package/package.json +1 -1
  16. package/src/components/stories/BuiAutoForm.story.vue +7 -1
  17. package/src/components/ui/auto-form/BuiAutoFormFieldArrayCard.vue +97 -0
  18. package/src/components/ui/auto-form/BuiAutoFormFieldObjectCard.vue +4 -1
  19. package/src/components/ui/auto-form/constant.ts +3 -2
  20. package/src/components/ui/auto-form/index.ts +2 -0
  21. package/dist/BuiAutoFormField.vue_vue_type_script_setup_true_lang-D0xFhEmy.js +0 -284
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@ import { _ as l } from "./BuiAlertDialogTrigger.vue_vue_type_script_setup_true_l
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,7 +16,7 @@ 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";
@@ -31,7 +31,7 @@ import { _ as lo } from "./BuiCommandEmpty.vue_vue_type_script_setup_true_lang--
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";
@@ -56,7 +56,7 @@ import { _ as fr } from "./BuiDialogTitle.vue_vue_type_script_setup_true_lang-D4
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";
@@ -80,7 +80,7 @@ import { _ as _e } from "./BuiFormDescription.vue_vue_type_script_setup_true_lan
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";
@@ -104,7 +104,7 @@ import { _ as dt } from "./BuiSelectItem.vue_vue_type_script_setup_true_lang-DsW
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,7 +113,7 @@ 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";
@@ -127,7 +127,7 @@ import { _ as _a } from "./BuiTooltipProvider.vue_vue_type_script_setup_true_lan
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,67 +135,70 @@ 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-DyG1WRf2.js";
139
- import { _ as Ua, a as qa } from "./BuiAutoFormField.vue_vue_type_script_setup_true_lang-D0xFhEmy.js";
140
- import { _ as Ja } from "./BuiAutoFormLabel.vue_vue_type_script_setup_true_lang-DzpWjTLE.js";
141
- import { _ as Qa } from "./BuiAutoFormFieldBoolean.vue_vue_type_script_setup_true_lang-tuxavlOe.js";
142
- import { _ as Xa } from "./BuiAutoFormFieldDate.vue_vue_type_script_setup_true_lang-Bzg1m-ii.js";
143
- import { _ as Za } from "./BuiAutoFormFieldEnum.vue_vue_type_script_setup_true_lang-Bqe8Rt85.js";
144
- import { _ as oi } from "./BuiAutoFormFieldFile.vue_vue_type_script_setup_true_lang-DrJwn66q.js";
145
- import { _ as ei } from "./BuiAutoFormFieldInput.vue_vue_type_script_setup_true_lang-DtBFfiOK.js";
146
- import { _ as ai } from "./BuiAutoFormFieldNumber.vue_vue_type_script_setup_true_lang-ClLqHM1Y.js";
147
- import { _ as ui } from "./BuiAutoFormFieldObject.vue_vue_type_script_setup_true_lang-C7URAPKt.js";
148
- import { default as si } from "./tailwind-preset.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
+ import { _ as Ka } from "./BuiAutoFormLabel.vue_vue_type_script_setup_true_lang-DzpWjTLE.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";
149
150
  /* empty css */
150
- import { _ as xi } from "./BuiAlertTitle.vue_vue_type_script_setup_true_lang-BvU1UhRc.js";
151
- import { _ as fi } from "./BuiAlertDescription.vue_vue_type_script_setup_true_lang-CVBdwmJq.js";
152
- import { _ as _i } from "./BuiAvatarImage.vue_vue_type_script_setup_true_lang-CpDtlLee.js";
153
- import { _ as di } 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";
154
155
  import "./BuiCalendar.vue_vue_type_style_index_0_lang-DK4yUiXC.js";
155
- import { _ as Ci } from "./BuiTabs.vue_vue_type_script_setup_true_lang-DZavy0KI.js";
156
- import { _ as Fi } from "./BuiTabsContent.vue_vue_type_script_setup_true_lang-BGARj0PN.js";
157
- import { _ as bi } from "./BuiToastAction.vue_vue_type_script_setup_true_lang-BnduHxHU.js";
158
- import { _ as Ai } from "./BuiToastViewport.vue_vue_type_script_setup_true_lang-DGcOPCBU.js";
159
- import { _ as Mi } from "./BuiToastClose.vue_vue_type_script_setup_true_lang-D8a4DIAU.js";
160
- import { _ as Ii } from "./BuiToastTitle.vue_vue_type_script_setup_true_lang-BTPprH2k.js";
161
- import { _ as Vi } from "./BuiToastDescription.vue_vue_type_script_setup_true_lang-DttuuxON.js";
162
- import { _ as hi } from "./BuiToastProvider.vue_vue_type_script_setup_true_lang-V09S1Ros.js";
163
- import { toast as yi, useToast as Gi } 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";
164
165
  export {
165
166
  i as BuiAccordion,
166
167
  m as BuiAccordionContent,
167
168
  p as BuiAccordionItem,
168
169
  B as BuiAccordionTrigger,
169
170
  v as BuiAlert,
170
- fi as BuiAlertDescription,
171
+ li as BuiAlertDescription,
171
172
  n as BuiAlertDialog,
172
173
  w as BuiAlertDialogAction,
173
174
  P as BuiAlertDialogCancel,
174
175
  g as BuiAlertDialogContent,
175
- D as BuiAlertDialogDescription,
176
+ A as BuiAlertDialogDescription,
176
177
  S as BuiAlertDialogFooter,
177
178
  T as BuiAlertDialogHeader,
178
179
  c as BuiAlertDialogTitle,
179
180
  l as BuiAlertDialogTrigger,
180
- xi as BuiAlertTitle,
181
+ ni as BuiAlertTitle,
181
182
  y as BuiAspectRatio,
182
- Na as BuiAutoForm,
183
+ Oa as BuiAutoForm,
183
184
  Ua as BuiAutoFormField,
184
- qa as BuiAutoFormFieldArray,
185
- Qa as BuiAutoFormFieldBoolean,
186
- Xa as BuiAutoFormFieldDate,
187
- Za as BuiAutoFormFieldEnum,
188
- oi as BuiAutoFormFieldFile,
189
- ei as BuiAutoFormFieldInput,
190
- ai as BuiAutoFormFieldNumber,
191
- ui as BuiAutoFormFieldObject,
192
- Ja as BuiAutoFormLabel,
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,
195
+ Ka as BuiAutoFormLabel,
193
196
  H as BuiAvatar,
194
- di as BuiAvatarFallback,
195
- _i as BuiAvatarImage,
197
+ Ti as BuiAvatarFallback,
198
+ gi as BuiAvatarImage,
196
199
  E as BuiBadge,
197
200
  be as BuiBadgedInput,
198
- O as BuiButton,
201
+ N as BuiButton,
199
202
  Q as BuiCalendar,
200
203
  Y as BuiCard,
201
204
  io as BuiCardContent,
@@ -213,11 +216,11 @@ export {
213
216
  Co as BuiCommandGroup,
214
217
  Fo as BuiCommandInput,
215
218
  bo as BuiCommandItem,
216
- Ao as BuiCommandList,
219
+ Do as BuiCommandList,
217
220
  Mo as BuiCommandSeparator,
218
221
  Io as BuiCommandShortcut,
219
222
  Vo as BuiContextMenu,
220
- Oo as BuiContextMenuCheckboxItem,
223
+ No as BuiContextMenuCheckboxItem,
221
224
  yo as BuiContextMenuContent,
222
225
  Ho as BuiContextMenuGroup,
223
226
  jo as BuiContextMenuItem,
@@ -249,7 +252,7 @@ export {
249
252
  Lr as BuiDropdownMenuRadioGroup,
250
253
  Er as BuiDropdownMenuRadioItem,
251
254
  Ur as BuiDropdownMenuSeparator,
252
- Nr as BuiDropdownMenuShortcut,
255
+ Or as BuiDropdownMenuShortcut,
253
256
  Kr as BuiDropdownMenuSub,
254
257
  Yr as BuiDropdownMenuSubContent,
255
258
  Wr as BuiDropdownMenuSubTrigger,
@@ -266,7 +269,7 @@ export {
266
269
  de as BuiHoverCard,
267
270
  Fe as BuiHoverCardContent,
268
271
  Ce as BuiHoverCardTrigger,
269
- De as BuiInput,
272
+ Ae as BuiInput,
270
273
  we as BuiLabel,
271
274
  cr as BuiPagination,
272
275
  Pe as BuiPaginationCommon,
@@ -274,11 +277,11 @@ export {
274
277
  ve as BuiPaginationFirst,
275
278
  Le as BuiPaginationLast,
276
279
  br as BuiPaginationList,
277
- Dr as BuiPaginationListItem,
280
+ Ar as BuiPaginationListItem,
278
281
  Ge as BuiPaginationNext,
279
282
  Re as BuiPaginationPrev,
280
- Ae as BuiPasswordInput,
281
- Ne as BuiPopover,
283
+ De as BuiPasswordInput,
284
+ Oe as BuiPopover,
282
285
  ze as BuiPopoverContent,
283
286
  Ue as BuiPopoverTrigger,
284
287
  Ke as BuiProgress,
@@ -295,12 +298,12 @@ export {
295
298
  bt as BuiSelectSeparator,
296
299
  xt as BuiSelectTrigger,
297
300
  st as BuiSelectValue,
298
- At as BuiSeparator,
299
- Da as BuiSlider,
301
+ Dt as BuiSeparator,
302
+ Aa as BuiSlider,
300
303
  Mt as BuiSwitch,
301
304
  It as BuiTable,
302
305
  Vt as BuiTableBody,
303
- Ot as BuiTableCaption,
306
+ Nt as BuiTableCaption,
304
307
  ht as BuiTableCell,
305
308
  qt as BuiTableEmpty,
306
309
  Jt as BuiTableFooter,
@@ -308,18 +311,18 @@ export {
308
311
  Ht as BuiTableHeader,
309
312
  kt as BuiTableRow,
310
313
  jt as BuiTableRowSubrow,
311
- Ci as BuiTabs,
312
- Fi as BuiTabsContent,
314
+ ci as BuiTabs,
315
+ Ai as BuiTabsContent,
313
316
  Xt as BuiTabsList,
314
317
  Yt as BuiTabsTrigger,
315
318
  ra as BuiTextarea,
316
319
  aa as BuiToast,
317
- bi as BuiToastAction,
318
- Mi as BuiToastClose,
319
- Vi as BuiToastDescription,
320
- hi as BuiToastProvider,
321
- Ii as BuiToastTitle,
322
- Ai 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,
323
326
  ia as BuiToaster,
324
327
  da as BuiToggle,
325
328
  Ta as BuiToggleGroup,
@@ -347,14 +350,14 @@ export {
347
350
  z as tableColumnSortCommon,
348
351
  Zt as tabsListVariants,
349
352
  $t as tabsTriggerVariants,
350
- si as tailwind,
353
+ Bi as tailwind,
351
354
  ea as textareaVariants,
352
- yi as toast,
355
+ Ri as toast,
353
356
  ua as toastVariants,
354
357
  ga as toggleVariants,
355
358
  ee as useBuiField,
356
359
  te as useBuiFieldArray,
357
360
  ae as useBuiForm,
358
- Gi as useToast,
361
+ ki as useToast,
359
362
  J as valueUpdater
360
363
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@soft-stech/bootsman-ui-shadcn",
3
- "version": "1.3.9",
3
+ "version": "1.3.10",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist",
@@ -28,7 +28,13 @@ const schema = z.object({
28
28
  level2: z.object({
29
29
  level3: z.object({
30
30
  test: z.string().min(1),
31
- something: z.boolean()
31
+ something: z.boolean(),
32
+ array: z
33
+ .object({
34
+ field1: z.string().min(1),
35
+ field2: z.string().min(1)
36
+ })
37
+ .array()
32
38
  })
33
39
  })
34
40
  })
@@ -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>
@@ -53,7 +53,10 @@ provide(FieldContextKey, fieldContext)
53
53
  <FormItem>
54
54
  <BuiCardHeader class="border-b-[1px] border-b-border/[0.16] py-1">
55
55
  <BuiCardTitle class="py-0 text-base">
56
- {{ schema?.description || fieldName.split('.')[fieldName.split('.').length - 1] }}
56
+ {{
57
+ schema?.description ||
58
+ beautifyObjectName(fieldName.split('.')[fieldName.split('.').length - 1])
59
+ }}
57
60
  </BuiCardTitle>
58
61
  </BuiCardHeader>
59
62
  <BuiCardContent class="flex flex-col gap-5 pb-0 pr-0">
@@ -6,7 +6,8 @@ import BuiAutoFormFieldFile from './BuiAutoFormFieldFile.vue'
6
6
  import BuiAutoFormFieldInput from './BuiAutoFormFieldInput.vue'
7
7
  import BuiAutoFormFieldNumber from './BuiAutoFormFieldNumber.vue'
8
8
  import BuiAutoFormFieldObject from './BuiAutoFormFieldObject.vue'
9
- import BuiAutoFormFieldObjectCard from '@/components/ui/auto-form/BuiAutoFormFieldObjectCard.vue'
9
+ import BuiAutoFormFieldObjectCard from './BuiAutoFormFieldObjectCard.vue'
10
+ import BuiAutoFormFieldArrayCard from './BuiAutoFormFieldArrayCard.vue'
10
11
 
11
12
  export const INPUT_COMPONENTS = {
12
13
  date: BuiAutoFormFieldDate,
@@ -18,7 +19,7 @@ export const INPUT_COMPONENTS = {
18
19
  number: BuiAutoFormFieldNumber,
19
20
  string: BuiAutoFormFieldInput,
20
21
  file: BuiAutoFormFieldFile,
21
- array: BuiAutoFormFieldArray,
22
+ array: BuiAutoFormFieldArrayCard,
22
23
  object: BuiAutoFormFieldObjectCard
23
24
  }
24
25
 
@@ -13,3 +13,5 @@ export { default as BuiAutoFormFieldFile } from './BuiAutoFormFieldFile.vue'
13
13
  export { default as BuiAutoFormFieldInput } from './BuiAutoFormFieldInput.vue'
14
14
  export { default as BuiAutoFormFieldNumber } from './BuiAutoFormFieldNumber.vue'
15
15
  export { default as BuiAutoFormFieldObject } from './BuiAutoFormFieldObject.vue'
16
+ export { default as BuiAutoFormFieldObjectCard } from './BuiAutoFormFieldObjectCard.vue'
17
+ export { default as BuiAutoFormFieldArrayCard } from './BuiAutoFormFieldArrayCard.vue'