@soft-stech/bootsman-ui-shadcn 1.3.9 → 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 (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'