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

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 (24) hide show
  1. package/dist/{BuiAutoForm.vue_vue_type_script_setup_true_lang-BWWNpH1I.js → BuiAutoForm.vue_vue_type_script_setup_true_lang-DyG1WRf2.js} +23 -23
  2. package/dist/BuiAutoFormField.vue_vue_type_script_setup_true_lang-D0xFhEmy.js +284 -0
  3. package/dist/BuiAutoFormFieldObject.vue_vue_type_script_setup_true_lang-C7URAPKt.js +96 -0
  4. package/dist/{BuiDataTable.vue_vue_type_script_setup_true_lang-CUH3nl15.js → BuiDataTable.vue_vue_type_script_setup_true_lang-Bzw8CawP.js} +74 -68
  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/BuiAutoFormFieldObject.js +1 -1
  10. package/dist/components/ui/auto-form/BuiAutoFormFieldObjectCard.js +4 -0
  11. package/dist/components/ui/auto-form/constant.js +5 -3
  12. package/dist/components/ui/auto-form/index.js +18 -17
  13. package/dist/components/ui/table/BuiDataTable.js +1 -1
  14. package/dist/components/ui/table/BuiDataTable.vue.d.ts +3 -0
  15. package/dist/components/ui/table/index.js +1 -1
  16. package/dist/index.js +70 -69
  17. package/package.json +1 -1
  18. package/src/components/stories/BuiAutoForm.story.vue +10 -0
  19. package/src/components/stories/BuiDataTable.story.vue +38 -4
  20. package/src/components/ui/auto-form/BuiAutoForm.vue +1 -1
  21. package/src/components/ui/auto-form/BuiAutoFormFieldObjectCard.vue +73 -0
  22. package/src/components/ui/auto-form/constant.ts +2 -1
  23. package/src/components/ui/table/BuiDataTable.vue +7 -1
  24. package/dist/BuiAutoFormField.vue_vue_type_script_setup_true_lang-xmzLQDzl.js +0 -294
package/dist/index.js CHANGED
@@ -1,9 +1,9 @@
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";
@@ -23,10 +23,10 @@ import { _ as $ } from "./BuiCardHeader.vue_vue_type_script_setup_true_lang-D9mi
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";
@@ -50,9 +50,9 @@ 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";
@@ -73,9 +73,9 @@ 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";
@@ -96,9 +96,9 @@ 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";
@@ -116,13 +116,13 @@ import { _ as jt } from "./BuiTableRowSubrow.vue_vue_type_script_setup_true_lang
116
116
  import { _ as Ot } 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
- import { _ as Qt } from "./BuiDataTable.vue_vue_type_script_setup_true_lang-CUH3nl15.js";
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";
@@ -135,39 +135,40 @@ 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";
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";
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";
147
148
  import { default as si } from "./tailwind-preset.js";
148
149
  /* 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";
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";
153
154
  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";
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";
163
164
  export {
164
165
  i as BuiAccordion,
165
- s as BuiAccordionContent,
166
+ m as BuiAccordionContent,
166
167
  p as BuiAccordionItem,
167
168
  B as BuiAccordionTrigger,
168
169
  v as BuiAlert,
169
- Bi as BuiAlertDescription,
170
- f as BuiAlertDialog,
170
+ fi as BuiAlertDescription,
171
+ n as BuiAlertDialog,
171
172
  w as BuiAlertDialogAction,
172
173
  P as BuiAlertDialogCancel,
173
174
  g as BuiAlertDialogContent,
@@ -176,22 +177,22 @@ export {
176
177
  T as BuiAlertDialogHeader,
177
178
  c as BuiAlertDialogTitle,
178
179
  l as BuiAlertDialogTrigger,
179
- pi as BuiAlertTitle,
180
+ xi as BuiAlertTitle,
180
181
  y as BuiAspectRatio,
181
182
  Na as BuiAutoForm,
182
183
  Ua as BuiAutoFormField,
183
184
  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,
191
- Ka as BuiAutoFormLabel,
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,
192
193
  H as BuiAvatar,
193
- li as BuiAvatarFallback,
194
- fi as BuiAvatarImage,
194
+ di as BuiAvatarFallback,
195
+ _i as BuiAvatarImage,
195
196
  E as BuiBadge,
196
197
  be as BuiBadgedInput,
197
198
  O as BuiButton,
@@ -199,7 +200,7 @@ export {
199
200
  Y as BuiCard,
200
201
  io as BuiCardContent,
201
202
  to as BuiCardDescription,
202
- so as BuiCardFooter,
203
+ mo as BuiCardFooter,
203
204
  $ as BuiCardHeader,
204
205
  ro as BuiCardTitle,
205
206
  po as BuiCheckbox,
@@ -207,7 +208,7 @@ export {
207
208
  Ga as BuiCollapsibleContent,
208
209
  La as BuiCollapsibleTrigger,
209
210
  Bo as BuiCommand,
210
- fo as BuiCommandDialog,
211
+ no as BuiCommandDialog,
211
212
  lo as BuiCommandEmpty,
212
213
  Co as BuiCommandGroup,
213
214
  Fo as BuiCommandInput,
@@ -236,8 +237,8 @@ export {
236
237
  _r as BuiDialogDescription,
237
238
  Cr as BuiDialogFooter,
238
239
  xr as BuiDialogHeader,
239
- nr as BuiDialogTitle,
240
- mr as BuiDialogTrigger,
240
+ fr as BuiDialogTitle,
241
+ sr as BuiDialogTrigger,
241
242
  Sr as BuiDropdownMenu,
242
243
  Rr as BuiDropdownMenuCheckboxItem,
243
244
  Pr as BuiDropdownMenuContent,
@@ -259,8 +260,8 @@ export {
259
260
  oe as BuiFormField,
260
261
  re as BuiFormFieldArray,
261
262
  ue as BuiFormItem,
262
- me as BuiFormLabel,
263
- ne as BuiFormMessage,
263
+ se as BuiFormLabel,
264
+ fe as BuiFormMessage,
264
265
  Ze as BuiHealth,
265
266
  de as BuiHoverCard,
266
267
  Fe as BuiHoverCardContent,
@@ -286,14 +287,14 @@ export {
286
287
  wa as BuiScrollArea,
287
288
  Pa as BuiScrollBar,
288
289
  ut as BuiSelect,
289
- nt as BuiSelectContent,
290
+ ft as BuiSelectContent,
290
291
  _t as BuiSelectGroup,
291
292
  dt as BuiSelectItem,
292
293
  Ct as BuiSelectItemText,
293
294
  Ft as BuiSelectLabel,
294
295
  bt as BuiSelectSeparator,
295
296
  xt as BuiSelectTrigger,
296
- mt as BuiSelectValue,
297
+ st as BuiSelectValue,
297
298
  At as BuiSeparator,
298
299
  Da as BuiSlider,
299
300
  Mt as BuiSwitch,
@@ -307,26 +308,26 @@ export {
307
308
  Ht as BuiTableHeader,
308
309
  kt as BuiTableRow,
309
310
  jt as BuiTableRowSubrow,
310
- gi as BuiTabs,
311
- Ti as BuiTabsContent,
311
+ Ci as BuiTabs,
312
+ Fi as BuiTabsContent,
312
313
  Xt as BuiTabsList,
313
314
  Yt as BuiTabsTrigger,
314
315
  ra as BuiTextarea,
315
316
  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,
317
+ bi as BuiToastAction,
318
+ Mi as BuiToastClose,
319
+ Vi as BuiToastDescription,
320
+ hi as BuiToastProvider,
321
+ Ii as BuiToastTitle,
322
+ Ai as BuiToastViewport,
322
323
  ia as BuiToaster,
323
324
  da as BuiToggle,
324
325
  Ta as BuiToggleGroup,
325
326
  ca as BuiToggleGroupItem,
326
- ma as BuiTooltip,
327
+ sa as BuiTooltip,
327
328
  xa as BuiTooltipContent,
328
329
  _a as BuiTooltipProvider,
329
- na as BuiTooltipTrigger,
330
+ fa as BuiTooltipTrigger,
330
331
  Sa as Skeleton,
331
332
  h as alertVariants,
332
333
  R as avatarVariant,
@@ -348,12 +349,12 @@ export {
348
349
  $t as tabsTriggerVariants,
349
350
  si as tailwind,
350
351
  ea as textareaVariants,
351
- Li as toast,
352
+ yi as toast,
352
353
  ua as toastVariants,
353
354
  ga as toggleVariants,
354
355
  ee as useBuiField,
355
356
  te as useBuiFieldArray,
356
357
  ae as useBuiForm,
357
- yi as useToast,
358
+ Gi as useToast,
358
359
  J as valueUpdater
359
360
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@soft-stech/bootsman-ui-shadcn",
3
- "version": "1.3.6",
3
+ "version": "1.3.9",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist",
@@ -23,6 +23,16 @@ 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
+ })
33
+ })
34
+ })
35
+ .describe('Level 1'),
26
36
  username: z
27
37
  .string({
28
38
  required_error: 'Username is required.'
@@ -5,7 +5,14 @@ import { tableColumnSortCommon } from '@/lib/utils'
5
5
  import type { ColumnDef, PaginationState, Row, RowSelectionState } from '@tanstack/vue-table'
6
6
  import { sort, type ISortByObjectSorter } from 'fast-sort'
7
7
  import { logEvent } from 'histoire/client'
8
- import { AlignJustifyIcon, FolderIcon } from 'lucide-vue-next'
8
+ import {
9
+ AlignJustifyIcon,
10
+ ArrowUpNarrowWideIcon,
11
+ FolderIcon,
12
+ SignalHighIcon,
13
+ SignalMediumIcon,
14
+ SignalLowIcon
15
+ } from 'lucide-vue-next'
9
16
  import { computed, h, ref } from 'vue'
10
17
  import { z } from 'zod'
11
18
  import tasks from './data/tasks.json'
@@ -72,10 +79,11 @@ function updateSelection(val: RowSelectionState) {
72
79
  selection.value = val
73
80
  }
74
81
 
75
- type GroupBy = 'none' | 'status'
82
+ type GroupBy = 'none' | 'status' | 'priority'
76
83
  const groupBy = ref<GroupBy>('none')
77
84
  const groupLabels = {
78
- status: ['Status', 'Not in any status']
85
+ status: ['Status', 'Not in any status'],
86
+ priority: ['Priority', 'Not in any priorities']
79
87
  }
80
88
 
81
89
  const sortedData = computed(() => {
@@ -120,6 +128,26 @@ function deleteRow() {
120
128
  function updateRows() {
121
129
  data.value.shift()
122
130
  }
131
+
132
+ function groupName(group: string | number) {
133
+ if (groupBy.value === 'priority') {
134
+ if (group === 'high') {
135
+ return () => h(SignalHighIcon, { class: 'size-4 inline-block' })
136
+ }
137
+
138
+ if (group === 'medium') {
139
+ return () => h(SignalMediumIcon, { class: 'size-4 inline-block' })
140
+ }
141
+
142
+ if (group === 'low') {
143
+ return () => h(SignalLowIcon, { class: 'size-4 inline-block' })
144
+ }
145
+
146
+ return () => group
147
+ }
148
+
149
+ return () => group
150
+ }
123
151
  </script>
124
152
 
125
153
  <template>
@@ -147,13 +175,16 @@ function updateRows() {
147
175
  <BuiButton variant="outline" @click="deleteRow"> Update rows </BuiButton>
148
176
 
149
177
  <BuiTabs v-model="groupBy">
150
- <BuiTabsList class="grid w-full grid-cols-2" :variant="'default'">
178
+ <BuiTabsList class="grid w-full grid-cols-3" :variant="'default'">
151
179
  <BuiTabsTrigger value="none" :variant="'default'"
152
180
  ><AlignJustifyIcon
153
181
  /></BuiTabsTrigger>
154
182
  <BuiTabsTrigger value="status" :variant="'default'">
155
183
  <FolderIcon />
156
184
  </BuiTabsTrigger>
185
+ <BuiTabsTrigger value="priority" :variant="'default'">
186
+ <ArrowUpNarrowWideIcon />
187
+ </BuiTabsTrigger>
157
188
  </BuiTabsList>
158
189
  </BuiTabs>
159
190
 
@@ -165,6 +196,9 @@ function updateRows() {
165
196
  </template>
166
197
  <template #nodata>Нет данных</template>
167
198
  <template #groupByRow="{ group }"> Optional slot for: `{{ group }}` </template>
199
+ <template #groupName="{ group }">
200
+ <component :is="groupName(group)"></component>
201
+ </template>
168
202
  </BuiDataTable>
169
203
  </Variant>
170
204
  </Story>
@@ -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,73 @@
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
+ {{ schema?.description || fieldName.split('.')[fieldName.split('.').length - 1] }}
57
+ </BuiCardTitle>
58
+ </BuiCardHeader>
59
+ <BuiCardContent class="flex flex-col gap-5 pb-0 pr-0">
60
+ <template v-for="(shape, key) in shapes" :key="key">
61
+ <AutoFormField
62
+ :config="config?.[key as keyof typeof config] as ConfigItem"
63
+ :field-name="`${fieldName}.${key.toString()}`"
64
+ :label="key.toString()"
65
+ :shape="shape"
66
+ />
67
+ </template>
68
+ </BuiCardContent>
69
+ </FormItem>
70
+ </BuiCard>
71
+ </slot>
72
+ </section>
73
+ </template>
@@ -6,6 +6,7 @@ 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
10
 
10
11
  export const INPUT_COMPONENTS = {
11
12
  date: BuiAutoFormFieldDate,
@@ -18,7 +19,7 @@ export const INPUT_COMPONENTS = {
18
19
  string: BuiAutoFormFieldInput,
19
20
  file: BuiAutoFormFieldFile,
20
21
  array: BuiAutoFormFieldArray,
21
- object: BuiAutoFormFieldObject
22
+ object: BuiAutoFormFieldObjectCard
22
23
  }
23
24
 
24
25
  /**
@@ -175,7 +175,13 @@ function getGroupLabel(index: number) {
175
175
  <template v-if="key === NO_GROUP_KEY">
176
176
  {{ getGroupLabel(1) }}
177
177
  </template>
178
- <template v-else> {{ getGroupLabel(0) }}: {{ key }} </template>
178
+ <template v-else>
179
+ {{ getGroupLabel(0) }}:
180
+ <slot v-if="$slots.groupName" name="groupName" :group="key" />
181
+ <template v-else>
182
+ {{ key }}
183
+ </template>
184
+ </template>
179
185
  </div>
180
186
  <slot v-if="$slots.groupByRow" name="groupByRow" :group="key" />
181
187
  </div>