@mage-ui/components 1.0.169 → 1.0.171
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.
- package/dist/components/controls/date-picker/YearPicker.d.mts +84 -0
- package/dist/components/controls/date-picker/YearPicker.d.mts.map +1 -0
- package/dist/components/controls/date-picker/YearPicker.mjs +2 -0
- package/dist/components/controls/date-picker/YearPicker.mjs.map +1 -0
- package/dist/components/controls/index.d.mts +1 -0
- package/dist/components/forms/Form.d.mts +37 -0
- package/dist/components/forms/Form.d.mts.map +1 -1
- package/dist/components/forms/Form.mjs +1 -1
- package/dist/components/forms/Form.mjs.map +1 -1
- package/dist/components/forms/controls/FormCheckboxGroup.d.mts +12 -0
- package/dist/components/forms/controls/FormCheckboxGroup.d.mts.map +1 -0
- package/dist/components/forms/controls/FormCheckboxGroup.mjs +2 -0
- package/dist/components/forms/controls/FormCheckboxGroup.mjs.map +1 -0
- package/dist/components/forms/controls/FormRadioGroup.d.mts +12 -0
- package/dist/components/forms/controls/FormRadioGroup.d.mts.map +1 -0
- package/dist/components/forms/controls/FormRadioGroup.mjs +2 -0
- package/dist/components/forms/controls/FormRadioGroup.mjs.map +1 -0
- package/dist/components/forms/controls/FormYearPicker.d.mts +14 -0
- package/dist/components/forms/controls/FormYearPicker.d.mts.map +1 -0
- package/dist/components/forms/controls/FormYearPicker.mjs +2 -0
- package/dist/components/forms/controls/FormYearPicker.mjs.map +1 -0
- package/dist/components/forms/controls/index.mjs +1 -1
- package/dist/components/forms/controls/index.mjs.map +1 -1
- package/dist/components/forms/controls/register-components.mjs +1 -1
- package/dist/components/forms/controls/register-components.mjs.map +1 -1
- package/dist/components/forms/rules/extract-form-rules.mjs +1 -1
- package/dist/components/forms/rules/extract-form-rules.mjs.map +1 -1
- package/dist/components/index.d.mts +1 -0
- package/dist/index.d.mts +2 -1
- package/dist/index.mjs +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { IconProps } from "../../data-display/icons/icon/Icon.mjs";
|
|
2
|
+
import { ComponentProps, ReactNode } from "react";
|
|
3
|
+
|
|
4
|
+
//#region src/components/controls/date-picker/YearPicker.d.ts
|
|
5
|
+
type YearPickerValue = Date | string | null;
|
|
6
|
+
type YearPickerDate = Date | string;
|
|
7
|
+
type YearPickerProps = Omit<ComponentProps<'button'>, 'children' | 'defaultValue' | 'size' | 'type' | 'value' | 'onChange'> & {
|
|
8
|
+
label?: ReactNode;
|
|
9
|
+
placeholder?: string;
|
|
10
|
+
description?: ReactNode;
|
|
11
|
+
error?: ReactNode;
|
|
12
|
+
required?: boolean;
|
|
13
|
+
classNames?: YearPickerClassNames;
|
|
14
|
+
value?: YearPickerValue;
|
|
15
|
+
defaultValue?: YearPickerValue;
|
|
16
|
+
onChange?: (date: YearPickerValue) => void;
|
|
17
|
+
locale?: string;
|
|
18
|
+
valueFormat?: string;
|
|
19
|
+
minDate?: YearPickerDate;
|
|
20
|
+
maxDate?: YearPickerDate;
|
|
21
|
+
clearable?: boolean;
|
|
22
|
+
};
|
|
23
|
+
declare const YearPicker: ({
|
|
24
|
+
classNames,
|
|
25
|
+
name,
|
|
26
|
+
label,
|
|
27
|
+
placeholder,
|
|
28
|
+
description,
|
|
29
|
+
error,
|
|
30
|
+
required,
|
|
31
|
+
value,
|
|
32
|
+
defaultValue,
|
|
33
|
+
onChange,
|
|
34
|
+
locale,
|
|
35
|
+
valueFormat,
|
|
36
|
+
minDate,
|
|
37
|
+
maxDate,
|
|
38
|
+
clearable,
|
|
39
|
+
...props
|
|
40
|
+
}: YearPickerProps) => ReactNode;
|
|
41
|
+
type YearPickerClassNames = InputClassNamesType & CalendarHeaderClassNamesType & CalendarYearsListClassNamesType & CalendarClassNamesType & PopoverClassNamesType & {
|
|
42
|
+
icon?: IconClassNamesType;
|
|
43
|
+
buttonIcon?: ButtonIconClassNamesType;
|
|
44
|
+
};
|
|
45
|
+
type InputClassNamesType = {
|
|
46
|
+
datePicker?: string;
|
|
47
|
+
root?: string;
|
|
48
|
+
wrapper?: string;
|
|
49
|
+
input?: string;
|
|
50
|
+
label?: string;
|
|
51
|
+
error?: string;
|
|
52
|
+
description?: string;
|
|
53
|
+
placeholder?: string;
|
|
54
|
+
section?: string;
|
|
55
|
+
required?: string;
|
|
56
|
+
};
|
|
57
|
+
type IconClassNamesType = IconProps['classNames'];
|
|
58
|
+
type ButtonIconClassNamesType = {
|
|
59
|
+
buttonIcon?: string;
|
|
60
|
+
buttonIconRoot?: string;
|
|
61
|
+
};
|
|
62
|
+
type CalendarHeaderClassNamesType = {
|
|
63
|
+
calendarHeaderControl?: string;
|
|
64
|
+
calendarHeader?: string;
|
|
65
|
+
calendarHeaderLevel?: string;
|
|
66
|
+
calendarHeaderControlIcon?: string;
|
|
67
|
+
};
|
|
68
|
+
type CalendarClassNamesType = {
|
|
69
|
+
levelsGroup?: string;
|
|
70
|
+
};
|
|
71
|
+
type CalendarYearsListClassNamesType = {
|
|
72
|
+
yearsList?: string;
|
|
73
|
+
yearsListRow?: string;
|
|
74
|
+
yearsListCell?: string;
|
|
75
|
+
yearsListControl?: string;
|
|
76
|
+
};
|
|
77
|
+
type PopoverClassNamesType = {
|
|
78
|
+
dropdown?: string;
|
|
79
|
+
arrow?: string;
|
|
80
|
+
overlay?: string;
|
|
81
|
+
};
|
|
82
|
+
//#endregion
|
|
83
|
+
export { YearPicker, YearPickerClassNames, YearPickerDate, YearPickerProps, YearPickerValue };
|
|
84
|
+
//# sourceMappingURL=YearPicker.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"YearPicker.d.mts","names":[],"sources":["../../../../src/components/controls/date-picker/YearPicker.tsx"],"mappings":";;;;KAoCY,eAAA,GAAkB,IAAA;AAAA,KAClB,cAAA,GAAiB,IAAA;AAAA,KAEjB,eAAA,GAAkB,IAAA,CAC5B,cAAA;EAGA,KAAA,GAAQ,SAAA;EACR,WAAA;EACA,WAAA,GAAc,SAAA;EACd,KAAA,GAAQ,SAAA;EACR,QAAA;EACA,UAAA,GAAa,oBAAA;EACb,KAAA,GAAQ,eAAA;EACR,YAAA,GAAe,eAAA;EACf,QAAA,IAAY,IAAA,EAAM,eAAA;EAClB,MAAA;EACA,WAAA;EACA,OAAA,GAAU,cAAA;EACV,OAAA,GAAU,cAAA;EACV,SAAA;AAAA;AAAA,cAGW,UAAA;EAAc,UAAA;EAAA,IAAA;EAAA,KAAA;EAAA,WAAA;EAAA,WAAA;EAAA,KAAA;EAAA,QAAA;EAAA,KAAA;EAAA,YAAA;EAAA,QAAA;EAAA,MAAA;EAAA,WAAA;EAAA,OAAA;EAAA,OAAA;EAAA,SAAA;EAAA,GAAA;AAAA,GAiBxB,eAAA,KAAkB,SAAA;AAAA,KAoCT,oBAAA,GAAuB,mBAAA,GACjC,4BAAA,GACA,+BAAA,GACA,sBAAA,GACA,qBAAA;EACE,IAAA,GAAO,kBAAA;EACP,UAAA,GAAa,wBAAA;AAAA;AAAA,KAGZ,mBAAA;EACH,UAAA;EACA,IAAA;EACA,OAAA;EACA,KAAA;EACA,KAAA;EACA,KAAA;EACA,WAAA;EACA,WAAA;EACA,OAAA;EACA,QAAA;AAAA;AAAA,KAoBG,kBAAA,GAAqB,SAAA;AAAA,KAarB,wBAAA;EACH,UAAA;EACA,cAAA;AAAA;AAAA,KAUG,4BAAA;EACH,qBAAA;EACA,cAAA;EACA,mBAAA;EACA,yBAAA;AAAA;AAAA,KAkBG,sBAAA;EACH,WAAA;AAAA;AAAA,KASG,+BAAA;EACH,SAAA;EACA,YAAA;EACA,aAAA;EACA,gBAAA;AAAA;AAAA,KAeG,qBAAA;EACH,QAAA;EACA,KAAA;EACA,OAAA;AAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{Icon as e}from"../../data-display/icons/icon/Icon.mjs";import{cx as t}from"@mage-ui/styled-system/css";import{datePicker as n,datePickerArrow as r,datePickerButtonIcon as i,datePickerButtonIconRoot as a,datePickerCalendarHeader as o,datePickerCalendarHeaderControl as s,datePickerCalendarHeaderControlIcon as c,datePickerCalendarHeaderLevel as l,datePickerDescription as u,datePickerDropdown as d,datePickerError as f,datePickerIconIcon as p,datePickerIconIconRaw as m,datePickerIconIconRawRoot as h,datePickerIconRoot as g,datePickerInput as _,datePickerLabel as v,datePickerLevelsGroup as y,datePickerOverlay as b,datePickerPlaceholder as x,datePickerRequired as S,datePickerRoot as C,datePickerSection as w,datePickerWrapper as T,datePickerYearsList as E,datePickerYearsListCell as D,datePickerYearsListControl as O,datePickerYearsListRow as k}from"@mage-ui/styled-system/recipes";import{jsx as A}from"react/jsx-runtime";import{YearPickerInput as j}from"@mantine/dates";const M=({classNames:t,name:n,label:r,placeholder:i,description:a,error:o,required:s,value:c,defaultValue:l,onChange:u,locale:d,valueFormat:f,minDate:p,maxDate:m,clearable:h,...g})=>A(j,{...g,name:n,label:r,placeholder:i,description:a,error:o,withAsterisk:s,value:c,defaultValue:l,onChange:u,locale:d,valueFormat:f,minDate:p,maxDate:m,clearable:h,classNames:B(t),popoverProps:{classNames:z(t)},leftSection:A(e,{path:`/icons/sprite-mage.svg`,name:`mage-date-picker-calendar`,classNames:P(t?.icon)}),clearButtonProps:{className:F(t?.buttonIcon)}}),N=e=>({root:t(e?.datePicker??n(),e?.root??C()),wrapper:e?.wrapper??T(),input:t(e?.input??_(),`peer`),label:e?.label??v(),error:e?.error??f(),description:e?.description??u(),placeholder:e?.placeholder??x(),section:t(e?.section??w(),`group`),required:e?.required??S()}),P=e=>({icon:e?.icon??p(),root:e?.root??g(),iconRaw:{iconRaw:e?.iconRaw?.iconRaw??m(),root:e?.iconRaw?.root??h()}}),F=e=>t(e?.buttonIcon??i(),e?.buttonIconRoot??a()),I=e=>({calendarHeader:e?.calendarHeader??o(),calendarHeaderControl:e?.calendarHeaderControl??s(),calendarHeaderLevel:e?.calendarHeaderLevel??l(),calendarHeaderControlIcon:e?.calendarHeaderControlIcon??c()}),L=e=>({levelsGroup:e?.levelsGroup??y()}),R=e=>({yearsList:e?.yearsList??E(),yearsListRow:e?.yearsListRow??k(),yearsListCell:e?.yearsListCell??D(),yearsListControl:e?.yearsListControl??O()}),z=e=>({dropdown:e?.dropdown??d(),arrow:e?.arrow??r(),overlay:e?.overlay??b()}),B=e=>({...N(e),...L(e),...I(e),...R(e)});export{M as YearPicker};
|
|
2
|
+
//# sourceMappingURL=YearPicker.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"YearPicker.mjs","names":[],"sources":["../../../../src/components/controls/date-picker/YearPicker.tsx"],"sourcesContent":["import type { ComponentProps, ReactNode } from 'react';\n\nimport { cx } from '@mage-ui/styled-system/css';\nimport {\n datePicker,\n datePickerArrow,\n datePickerButtonIcon,\n datePickerButtonIconRoot,\n datePickerCalendarHeader,\n datePickerCalendarHeaderControl,\n datePickerCalendarHeaderControlIcon,\n datePickerCalendarHeaderLevel,\n datePickerDescription,\n datePickerDropdown,\n datePickerError,\n datePickerIconIcon,\n datePickerIconIconRaw,\n datePickerIconIconRawRoot,\n datePickerIconRoot,\n datePickerInput,\n datePickerLabel,\n datePickerLevelsGroup,\n datePickerOverlay,\n datePickerPlaceholder,\n datePickerRequired,\n datePickerRoot,\n datePickerSection,\n datePickerWrapper,\n datePickerYearsList,\n datePickerYearsListCell,\n datePickerYearsListControl,\n datePickerYearsListRow,\n} from '@mage-ui/styled-system/recipes';\nimport { YearPickerInput } from '@mantine/dates';\nimport { Icon, type IconProps } from '@/components/data-display';\n\nexport type YearPickerValue = Date | string | null;\nexport type YearPickerDate = Date | string;\n\nexport type YearPickerProps = Omit<\n ComponentProps<'button'>,\n 'children' | 'defaultValue' | 'size' | 'type' | 'value' | 'onChange'\n> & {\n label?: ReactNode;\n placeholder?: string;\n description?: ReactNode;\n error?: ReactNode;\n required?: boolean;\n classNames?: YearPickerClassNames;\n value?: YearPickerValue;\n defaultValue?: YearPickerValue;\n onChange?: (date: YearPickerValue) => void;\n locale?: string;\n valueFormat?: string;\n minDate?: YearPickerDate;\n maxDate?: YearPickerDate;\n clearable?: boolean;\n};\n\nexport const YearPicker = ({\n classNames,\n name,\n label,\n placeholder,\n description,\n error,\n required,\n value,\n defaultValue,\n onChange,\n locale,\n valueFormat,\n minDate,\n maxDate,\n clearable,\n ...props\n}: YearPickerProps): ReactNode => {\n return (\n <YearPickerInput\n {...props}\n name={name}\n label={label}\n placeholder={placeholder}\n description={description}\n error={error}\n withAsterisk={required}\n value={value}\n defaultValue={defaultValue}\n onChange={onChange}\n locale={locale}\n valueFormat={valueFormat}\n minDate={minDate}\n maxDate={maxDate}\n clearable={clearable}\n classNames={yearPickerClassNames(classNames)}\n popoverProps={{\n classNames: popoverClassNames(classNames),\n }}\n leftSection={\n <Icon\n path='/icons/sprite-mage.svg'\n name='mage-date-picker-calendar'\n classNames={iconClassNames(classNames?.icon)}\n />\n }\n clearButtonProps={{\n className: buttonIconClassNames(classNames?.buttonIcon),\n }}\n />\n );\n};\n\nexport type YearPickerClassNames = InputClassNamesType &\n CalendarHeaderClassNamesType &\n CalendarYearsListClassNamesType &\n CalendarClassNamesType &\n PopoverClassNamesType & {\n icon?: IconClassNamesType;\n buttonIcon?: ButtonIconClassNamesType;\n };\n\ntype InputClassNamesType = {\n datePicker?: string;\n root?: string;\n wrapper?: string;\n input?: string;\n label?: string;\n error?: string;\n description?: string;\n placeholder?: string;\n section?: string;\n required?: string;\n};\n\nconst inputClassNames = (classNames?: InputClassNamesType) => {\n return {\n root: cx(\n classNames?.datePicker ?? datePicker(),\n classNames?.root ?? datePickerRoot(),\n ),\n wrapper: classNames?.wrapper ?? datePickerWrapper(),\n input: cx(classNames?.input ?? datePickerInput(), 'peer'),\n label: classNames?.label ?? datePickerLabel(),\n error: classNames?.error ?? datePickerError(),\n description: classNames?.description ?? datePickerDescription(),\n placeholder: classNames?.placeholder ?? datePickerPlaceholder(),\n section: cx(classNames?.section ?? datePickerSection(), 'group'),\n required: classNames?.required ?? datePickerRequired(),\n };\n};\n\ntype IconClassNamesType = IconProps['classNames'];\n\nconst iconClassNames = (classNames?: IconClassNamesType) => {\n return {\n icon: classNames?.icon ?? datePickerIconIcon(),\n root: classNames?.root ?? datePickerIconRoot(),\n iconRaw: {\n iconRaw: classNames?.iconRaw?.iconRaw ?? datePickerIconIconRaw(),\n root: classNames?.iconRaw?.root ?? datePickerIconIconRawRoot(),\n },\n };\n};\n\ntype ButtonIconClassNamesType = {\n buttonIcon?: string;\n buttonIconRoot?: string;\n};\n\nconst buttonIconClassNames = (classNames?: ButtonIconClassNamesType) => {\n return cx(\n classNames?.buttonIcon ?? datePickerButtonIcon(),\n classNames?.buttonIconRoot ?? datePickerButtonIconRoot(),\n );\n};\n\ntype CalendarHeaderClassNamesType = {\n calendarHeaderControl?: string;\n calendarHeader?: string;\n calendarHeaderLevel?: string;\n calendarHeaderControlIcon?: string;\n};\n\nconst calendarHeaderClassNames = (\n classNames?: CalendarHeaderClassNamesType,\n) => {\n return {\n calendarHeader: classNames?.calendarHeader ?? datePickerCalendarHeader(),\n calendarHeaderControl:\n classNames?.calendarHeaderControl ?? datePickerCalendarHeaderControl(),\n calendarHeaderLevel:\n classNames?.calendarHeaderLevel ?? datePickerCalendarHeaderLevel(),\n calendarHeaderControlIcon:\n classNames?.calendarHeaderControlIcon ??\n datePickerCalendarHeaderControlIcon(),\n };\n};\n\ntype CalendarClassNamesType = {\n levelsGroup?: string;\n};\n\nconst calendarClassNames = (classNames?: CalendarClassNamesType) => {\n return {\n levelsGroup: classNames?.levelsGroup ?? datePickerLevelsGroup(),\n };\n};\n\ntype CalendarYearsListClassNamesType = {\n yearsList?: string;\n yearsListRow?: string;\n yearsListCell?: string;\n yearsListControl?: string;\n};\n\nconst calendarYearsListClassNames = (\n classNames?: CalendarYearsListClassNamesType,\n) => {\n return {\n yearsList: classNames?.yearsList ?? datePickerYearsList(),\n yearsListRow: classNames?.yearsListRow ?? datePickerYearsListRow(),\n yearsListCell: classNames?.yearsListCell ?? datePickerYearsListCell(),\n yearsListControl:\n classNames?.yearsListControl ?? datePickerYearsListControl(),\n };\n};\n\ntype PopoverClassNamesType = {\n dropdown?: string;\n arrow?: string;\n overlay?: string;\n};\n\nconst popoverClassNames = (classNames?: PopoverClassNamesType) => {\n return {\n dropdown: classNames?.dropdown ?? datePickerDropdown(),\n arrow: classNames?.arrow ?? datePickerArrow(),\n overlay: classNames?.overlay ?? datePickerOverlay(),\n };\n};\n\nconst yearPickerClassNames = (classNames?: YearPickerClassNames) => {\n return {\n ...inputClassNames(classNames),\n ...calendarClassNames(classNames),\n ...calendarHeaderClassNames(classNames),\n ...calendarYearsListClassNames(classNames),\n };\n};\n"],"mappings":"o9BA2DA,MAAa,GAAc,CACzB,aACA,OACA,QACA,cACA,cACA,QACA,WACA,QACA,eACA,WACA,SACA,cACA,UACA,UACA,YACA,GAAG,KAGD,EAAC,EAAD,CACE,GAAI,EACE,OACC,QACM,cACA,cACN,QACP,aAAc,EACP,QACO,eACJ,WACF,SACK,cACJ,UACA,UACE,YACX,WAAY,EAAqB,EAAW,CAC5C,aAAc,CACZ,WAAY,EAAkB,EAAW,CAC1C,CACD,YACE,EAAC,EAAD,CACE,KAAK,yBACL,KAAK,4BACL,WAAY,EAAe,GAAY,KAAK,CAC5C,CAAA,CAEJ,iBAAkB,CAChB,UAAW,EAAqB,GAAY,WAAW,CACxD,CACD,CAAA,CA0BA,EAAmB,IAChB,CACL,KAAM,EACJ,GAAY,YAAc,GAAY,CACtC,GAAY,MAAQ,GAAgB,CACrC,CACD,QAAS,GAAY,SAAW,GAAmB,CACnD,MAAO,EAAG,GAAY,OAAS,GAAiB,CAAE,OAAO,CACzD,MAAO,GAAY,OAAS,GAAiB,CAC7C,MAAO,GAAY,OAAS,GAAiB,CAC7C,YAAa,GAAY,aAAe,GAAuB,CAC/D,YAAa,GAAY,aAAe,GAAuB,CAC/D,QAAS,EAAG,GAAY,SAAW,GAAmB,CAAE,QAAQ,CAChE,SAAU,GAAY,UAAY,GAAoB,CACvD,EAKG,EAAkB,IACf,CACL,KAAM,GAAY,MAAQ,GAAoB,CAC9C,KAAM,GAAY,MAAQ,GAAoB,CAC9C,QAAS,CACP,QAAS,GAAY,SAAS,SAAW,GAAuB,CAChE,KAAM,GAAY,SAAS,MAAQ,GAA2B,CAC/D,CACF,EAQG,EAAwB,GACrB,EACL,GAAY,YAAc,GAAsB,CAChD,GAAY,gBAAkB,GAA0B,CACzD,CAUG,EACJ,IAEO,CACL,eAAgB,GAAY,gBAAkB,GAA0B,CACxE,sBACE,GAAY,uBAAyB,GAAiC,CACxE,oBACE,GAAY,qBAAuB,GAA+B,CACpE,0BACE,GAAY,2BACZ,GAAqC,CACxC,EAOG,EAAsB,IACnB,CACL,YAAa,GAAY,aAAe,GAAuB,CAChE,EAUG,EACJ,IAEO,CACL,UAAW,GAAY,WAAa,GAAqB,CACzD,aAAc,GAAY,cAAgB,GAAwB,CAClE,cAAe,GAAY,eAAiB,GAAyB,CACrE,iBACE,GAAY,kBAAoB,GAA4B,CAC/D,EASG,EAAqB,IAClB,CACL,SAAU,GAAY,UAAY,GAAoB,CACtD,MAAO,GAAY,OAAS,GAAiB,CAC7C,QAAS,GAAY,SAAW,GAAmB,CACpD,EAGG,EAAwB,IACrB,CACL,GAAG,EAAgB,EAAW,CAC9B,GAAG,EAAmB,EAAW,CACjC,GAAG,EAAyB,EAAW,CACvC,GAAG,EAA4B,EAAW,CAC3C"}
|
|
@@ -2,6 +2,7 @@ import { AvatarUpload, AvatarUploadProps } from "./avatar-upload/AvatarUpload.mj
|
|
|
2
2
|
import { Checkbox, CheckboxProps } from "./checkbox/Checkbox.mjs";
|
|
3
3
|
import { CheckboxTree, CheckboxTreeItem, CheckboxTreeProps } from "./checkbox-tree/CheckboxTree.mjs";
|
|
4
4
|
import { DatePicker, DatePickerClassNames, DatePickerDate, DatePickerProps, DatePickerValue } from "./date-picker/DatePicker.mjs";
|
|
5
|
+
import { YearPicker, YearPickerClassNames, YearPickerDate, YearPickerProps, YearPickerValue } from "./date-picker/YearPicker.mjs";
|
|
5
6
|
import { DateTimePicker, DateTimePickerClassNames, DateTimePickerDate, DateTimePickerProps, DateTimePickerValue } from "./date-time-picker/DateTimePicker.mjs";
|
|
6
7
|
import { TextInput, TextInputProps } from "./text-input/TextInput.mjs";
|
|
7
8
|
import { Combobox, ComboboxProps } from "./dropdown/combobox/Combobox.mjs";
|
|
@@ -3,12 +3,15 @@ import { TextareaProps } from "../controls/textarea/Textarea.mjs";
|
|
|
3
3
|
import { FormDropzoneS3Props } from "./controls/FormDropzoneS3.mjs";
|
|
4
4
|
import { FormSubmitProps } from "./controls/FormSubmit.mjs";
|
|
5
5
|
import { FormCheckboxProps } from "./controls/FormCheckbox.mjs";
|
|
6
|
+
import { FormCheckboxGroupProps } from "./controls/FormCheckboxGroup.mjs";
|
|
6
7
|
import { FormCheckboxTreeProps } from "./controls/FormCheckboxTree.mjs";
|
|
8
|
+
import { FormRadioGroupProps } from "./controls/FormRadioGroup.mjs";
|
|
7
9
|
import { FormPasswordProps } from "./controls/FormPassword.mjs";
|
|
8
10
|
import { FormSelectProps } from "./controls/FormSelect.mjs";
|
|
9
11
|
import { FormComboboxProps } from "./controls/FormCombobox.mjs";
|
|
10
12
|
import { FormAutocompleteProps } from "./controls/FormAutocomplete.mjs";
|
|
11
13
|
import { FormDatePickerProps } from "./controls/FormDatePicker.mjs";
|
|
14
|
+
import { FormYearPickerProps } from "./controls/FormYearPicker.mjs";
|
|
12
15
|
import { FormDateTimePickerProps } from "./controls/FormDateTimePicker.mjs";
|
|
13
16
|
import { FormFileInputProps } from "./controls/FormFileInput.mjs";
|
|
14
17
|
import { FormFileInputMultipleProps } from "./controls/FormFileInputMultiple.mjs";
|
|
@@ -112,6 +115,17 @@ declare const Form: {
|
|
|
112
115
|
}: FormCheckboxProps): react_jsx_runtime0.JSX.Element;
|
|
113
116
|
displayName: string;
|
|
114
117
|
};
|
|
118
|
+
CheckboxGroup: {
|
|
119
|
+
({
|
|
120
|
+
$rule: _$rule,
|
|
121
|
+
defaultValue,
|
|
122
|
+
isSubmitting,
|
|
123
|
+
name,
|
|
124
|
+
disabled,
|
|
125
|
+
...props
|
|
126
|
+
}: FormCheckboxGroupProps): react_jsx_runtime0.JSX.Element;
|
|
127
|
+
displayName: string;
|
|
128
|
+
};
|
|
115
129
|
CheckboxTree: {
|
|
116
130
|
({
|
|
117
131
|
$rule,
|
|
@@ -123,6 +137,16 @@ declare const Form: {
|
|
|
123
137
|
}: FormCheckboxTreeProps): react_jsx_runtime0.JSX.Element;
|
|
124
138
|
displayName: string;
|
|
125
139
|
};
|
|
140
|
+
RadioGroup: {
|
|
141
|
+
({
|
|
142
|
+
$rule: _$rule,
|
|
143
|
+
defaultValue,
|
|
144
|
+
isSubmitting: _isSubmitting,
|
|
145
|
+
name,
|
|
146
|
+
...props
|
|
147
|
+
}: FormRadioGroupProps): react_jsx_runtime0.JSX.Element;
|
|
148
|
+
displayName: string;
|
|
149
|
+
};
|
|
126
150
|
Password: {
|
|
127
151
|
({
|
|
128
152
|
$rule,
|
|
@@ -182,6 +206,19 @@ declare const Form: {
|
|
|
182
206
|
}: FormDatePickerProps): react_jsx_runtime0.JSX.Element;
|
|
183
207
|
displayName: string;
|
|
184
208
|
};
|
|
209
|
+
YearPicker: {
|
|
210
|
+
({
|
|
211
|
+
$rule: _$rule,
|
|
212
|
+
isSubmitting,
|
|
213
|
+
name,
|
|
214
|
+
error,
|
|
215
|
+
defaultValue,
|
|
216
|
+
onChange,
|
|
217
|
+
disabled,
|
|
218
|
+
...props
|
|
219
|
+
}: FormYearPickerProps): react_jsx_runtime0.JSX.Element;
|
|
220
|
+
displayName: string;
|
|
221
|
+
};
|
|
185
222
|
DateTimePicker: {
|
|
186
223
|
({
|
|
187
224
|
$rule: _$rule,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Form.d.mts","names":[],"sources":["../../../src/components/forms/Form.tsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Form.d.mts","names":[],"sources":["../../../src/components/forms/Form.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;KAiCK,YAAA;EACH,IAAA;EACA,OAAA;EACA,MAAA;EACA,GAAA;AAAA;AAAA,KAGU,SAAA,WAAoB,WAAA;EAC9B,QAAA,GAAW,MAAA;IAAU,IAAA,EAAM,CAAA;EAAA,MAAQ,OAAA;EACnC,aAAA,IAAiB,QAAA,EAAU,YAAA;EAC3B,eAAA,IAAmB,MAAA;IACjB,OAAA;IACA,QAAA,EAAU,eAAA,CAAgB,CAAA;IAC1B,MAAA;EAAA;EAEF,aAAA;EACA,QAAA,EAAU,SAAA;EACV,MAAA,GAAS,SAAA,CAAU,MAAA,SAAe,UAAA;EAClC,CAAA,IACE,GAAA,UACA,QAAA,GAAW,MAAA,kBACX,QAAA,uBACY,KAAA,CAAM,SAAA;EAEpB,oBAAA;EACA,UAAA;IACE,IAAA;IACA,IAAA;EAAA;AAAA;AAAA,cAYS,IAAA;EAAA,WAAkB,WAAA;IAAW,QAAA;IAAA,aAAA;IAAA,eAAA;IAAA,aAAA;IAAA,QAAA;IAAA,MAAA;IAAA,CAAA;IAAA,oBAAA;IAAA;EAAA,GAUvC,SAAA,CAAU,CAAA,IAAE,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{FormAutocomplete as e}from"./controls/FormAutocomplete.mjs";import{FormCheckbox as t}from"./controls/FormCheckbox.mjs";import{
|
|
1
|
+
import{FormAutocomplete as e}from"./controls/FormAutocomplete.mjs";import{FormCheckbox as t}from"./controls/FormCheckbox.mjs";import{FormCheckboxGroup as n}from"./controls/FormCheckboxGroup.mjs";import{FormCheckboxTree as r}from"./controls/FormCheckboxTree.mjs";import{FormCombobox as i}from"./controls/FormCombobox.mjs";import{FormDatePicker as a}from"./controls/FormDatePicker.mjs";import{FormDateTimePicker as o}from"./controls/FormDateTimePicker.mjs";import{FormDropzone as s}from"./controls/FormDropzone.mjs";import{FormS3Context as c}from"./FormS3Context.mjs";import{FormDropzoneS3 as l}from"./controls/FormDropzoneS3.mjs";import{FormFileInput as u}from"./controls/FormFileInput.mjs";import{FormFileInputMultiple as d}from"./controls/FormFileInputMultiple.mjs";import{FormFileInputMultipleS3 as f}from"./controls/FormFileInputMultipleS3.mjs";import{FormFileInputS3 as p}from"./controls/FormFileInputS3.mjs";import{FormHidden as m}from"./controls/FormHidden.mjs";import{FormPassword as h}from"./controls/FormPassword.mjs";import{FormRadioGroup as g}from"./controls/FormRadioGroup.mjs";import{FormSelect as _}from"./controls/FormSelect.mjs";import{FormSubmit as v}from"./controls/FormSubmit.mjs";import{FormTextarea as y}from"./controls/FormTextarea.mjs";import{FormTextInput as b}from"./controls/FormTextInput.mjs";import{FormYearPicker as x}from"./controls/FormYearPicker.mjs";import{FormBase as S}from"./FormBase.mjs";import{FormErrorBox as C}from"./FormErrorBox.mjs";import{form as w,formRoot as T}from"@mage-ui/styled-system/recipes";import{jsx as E}from"react/jsx-runtime";import{useRef as D}from"react";const O=({$fetcher:e,onValidSubmit:t,onInvalidSubmit:n,invalidStatus:r=[],children:i,schema:a,t:o,s3UploadErrorMessage:s,classNames:l})=>{let u=D(new Map),d={registerS3Upload:(e,t)=>{u.current.set(e,t)},unregisterS3Upload:e=>{u.current.delete(e)}},f=async e=>{let t=Array.from(u.current.values());await Promise.all(t.map(t=>t(e)))};return E(c.Provider,{value:d,children:E(S,{onSubmit:async({data:i,setError:a})=>{await e({data:i}).then(async e=>{let n=e;if(n?.statusCode&&n.statusCode>=400)throw n;try{await f(e)}catch(e){console.error(`S3 upload error:`,e),a(`root.serverError`,{type:`s3`,message:s??`Failed to upload files`});return}t?.(e||{})}).catch(e=>{if((e.statusCode===400||e.statusCode===422)&&e.cause?.issues&&Object.keys(e.cause.issues).forEach(t=>{a(t,{type:`server`,message:e.cause?.issues?.[t]})}),r.includes(e.statusCode)&&n)n({message:e?.message??`Something went wrong`,setError:a,status:e.statusCode});else if(e.statusCode===400||e.statusCode===422)a(`root.serverError`,{type:`server`,message:e?.message??`Something went wrong`});else throw e})},schema:a,errorBox:C,t:o,classNames:{form:l?.form??w(),root:l?.root??T()},children:i})})};O.displayName=`Form`,O.TextInput=b,O.Textarea=y,O.Submit=v,O.Hidden=m,O.Checkbox=t,O.CheckboxGroup=n,O.CheckboxTree=r,O.RadioGroup=g,O.Password=h,O.Select=_,O.Combobox=i,O.Autocomplete=e,O.DatePicker=a,O.YearPicker=x,O.DateTimePicker=o,O.FileInput=u,O.FileInputMultiple=d,O.FileInputS3=p,O.FileInputMultipleS3=f,O.Dropzone=s,O.DropzoneS3=l;export{O as Form};
|
|
2
2
|
//# sourceMappingURL=Form.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Form.mjs","names":[],"sources":["../../../src/components/forms/Form.tsx"],"sourcesContent":["import type React from 'react';\nimport type { ReactNode } from 'react';\nimport { useRef } from 'react';\nimport type { FieldValues, UseFormSetError } from 'react-hook-form';\nimport type { ZodObject, ZodTypeAny } from 'zod';\n\nimport { form, formRoot } from '@mage-ui/styled-system/recipes';\n\nimport { FormAutocomplete } from './controls/FormAutocomplete';\nimport { FormCheckbox } from './controls/FormCheckbox';\nimport { FormCheckboxTree } from './controls/FormCheckboxTree';\nimport { FormCombobox } from './controls/FormCombobox';\nimport { FormDatePicker } from './controls/FormDatePicker';\nimport { FormDateTimePicker } from './controls/FormDateTimePicker';\nimport { FormDropzone } from './controls/FormDropzone';\nimport { FormDropzoneS3 } from './controls/FormDropzoneS3';\nimport { FormFileInput } from './controls/FormFileInput';\nimport { FormFileInputMultiple } from './controls/FormFileInputMultiple';\nimport { FormFileInputMultipleS3 } from './controls/FormFileInputMultipleS3';\nimport { FormFileInputS3 } from './controls/FormFileInputS3';\nimport { FormHidden } from './controls/FormHidden';\nimport { FormPassword } from './controls/FormPassword';\nimport { FormSelect } from './controls/FormSelect';\nimport { FormSubmit } from './controls/FormSubmit';\nimport { FormTextarea } from './controls/FormTextarea';\nimport { FormTextInput } from './controls/FormTextInput';\nimport { FormBase } from './FormBase';\nimport { FormErrorBox } from './FormErrorBox';\nimport { FormS3Context, type S3UploadCallback } from './FormS3Context';\n\ntype FormResponse = {\n body?: object;\n details?: string;\n status?: number;\n url?: string;\n};\n\nexport type FormProps<T extends FieldValues> = {\n $fetcher: (params: { data: T }) => Promise<unknown>;\n onValidSubmit?: (response: FormResponse) => void;\n onInvalidSubmit?: (params: {\n message: string;\n setError: UseFormSetError<T>;\n status: number;\n }) => void;\n invalidStatus?: number[];\n children: ReactNode;\n schema?: ZodObject<Record<string, ZodTypeAny>>;\n t?: (\n key: string,\n bindings?: Record<string, string>,\n fallback?: string,\n ) => string | React.ReactNode;\n /** Mensaje mostrado al usuario si falla la subida de archivos a S3 tras el submit. */\n s3UploadErrorMessage?: string;\n classNames?: {\n form?: string;\n root?: string;\n };\n};\n\ntype FormError = {\n statusCode: number;\n message: string;\n cause?: {\n issues: Record<string, string>;\n };\n};\n\nexport const Form = <T extends FieldValues>({\n $fetcher,\n onValidSubmit,\n onInvalidSubmit,\n invalidStatus = [],\n children,\n schema,\n t,\n s3UploadErrorMessage,\n classNames,\n}: FormProps<T>) => {\n const s3CallbacksRef = useRef<Map<string, S3UploadCallback>>(new Map());\n\n const s3ContextValue = {\n registerS3Upload: (name: string, cb: S3UploadCallback) => {\n s3CallbacksRef.current.set(name, cb);\n },\n unregisterS3Upload: (name: string) => {\n s3CallbacksRef.current.delete(name);\n },\n };\n\n const runS3Uploads = async (response: unknown): Promise<void> => {\n const callbacks = Array.from(s3CallbacksRef.current.values());\n await Promise.all(callbacks.map((cb) => cb(response)));\n };\n\n const onSubmit = async ({\n data,\n setError,\n }: {\n data: FieldValues;\n setError: UseFormSetError<FieldValues>;\n }) => {\n await $fetcher({ data: data as T })\n .then(async (response) => {\n const res = response as FormError & FormResponse;\n if (res?.statusCode && res.statusCode >= 400) {\n throw res;\n }\n\n try {\n await runS3Uploads(response);\n } catch (e) {\n console.error('S3 upload error:', e);\n setError('root.serverError', {\n type: 's3',\n message: s3UploadErrorMessage ?? 'Failed to upload files',\n });\n return;\n }\n onValidSubmit?.((response || {}) as FormResponse);\n })\n .catch((error: FormError) => {\n if (\n (error.statusCode === 400 || error.statusCode === 422) &&\n error.cause?.issues\n ) {\n Object.keys(error.cause.issues).forEach((key) => {\n setError(key, {\n type: 'server',\n message: error.cause?.issues?.[key],\n });\n });\n }\n\n if (invalidStatus.includes(error.statusCode) && onInvalidSubmit) {\n onInvalidSubmit({\n message: error?.message ?? 'Something went wrong',\n setError: setError as UseFormSetError<T>,\n status: error.statusCode,\n });\n } else if (error.statusCode === 400 || error.statusCode === 422) {\n setError('root.serverError', {\n type: 'server',\n message: error?.message ?? 'Something went wrong',\n });\n } else {\n throw error;\n }\n });\n };\n\n return (\n <FormS3Context.Provider value={s3ContextValue}>\n <FormBase\n onSubmit={onSubmit}\n schema={schema}\n errorBox={FormErrorBox}\n t={t}\n classNames={{\n form: classNames?.form ?? form(),\n root: classNames?.root ?? formRoot(),\n }}\n >\n {children}\n </FormBase>\n </FormS3Context.Provider>\n );\n};\n\nForm.displayName = 'Form';\nForm.TextInput = FormTextInput;\nForm.Textarea = FormTextarea;\nForm.Submit = FormSubmit;\nForm.Hidden = FormHidden;\nForm.Checkbox = FormCheckbox;\nForm.CheckboxTree = FormCheckboxTree;\nForm.Password = FormPassword;\nForm.Select = FormSelect;\nForm.Combobox = FormCombobox;\nForm.Autocomplete = FormAutocomplete;\nForm.DatePicker = FormDatePicker;\nForm.DateTimePicker = FormDateTimePicker;\nForm.FileInput = FormFileInput;\nForm.FileInputMultiple = FormFileInputMultiple;\nForm.FileInputS3 = FormFileInputS3;\nForm.FileInputMultipleS3 = FormFileInputMultipleS3;\nForm.Dropzone = FormDropzone;\nForm.DropzoneS3 = FormDropzoneS3;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Form.mjs","names":[],"sources":["../../../src/components/forms/Form.tsx"],"sourcesContent":["import type React from 'react';\nimport type { ReactNode } from 'react';\nimport { useRef } from 'react';\nimport type { FieldValues, UseFormSetError } from 'react-hook-form';\nimport type { ZodObject, ZodTypeAny } from 'zod';\n\nimport { form, formRoot } from '@mage-ui/styled-system/recipes';\n\nimport { FormAutocomplete } from './controls/FormAutocomplete';\nimport { FormCheckbox } from './controls/FormCheckbox';\nimport { FormCheckboxGroup } from './controls/FormCheckboxGroup';\nimport { FormCheckboxTree } from './controls/FormCheckboxTree';\nimport { FormCombobox } from './controls/FormCombobox';\nimport { FormDatePicker } from './controls/FormDatePicker';\nimport { FormDateTimePicker } from './controls/FormDateTimePicker';\nimport { FormDropzone } from './controls/FormDropzone';\nimport { FormDropzoneS3 } from './controls/FormDropzoneS3';\nimport { FormFileInput } from './controls/FormFileInput';\nimport { FormFileInputMultiple } from './controls/FormFileInputMultiple';\nimport { FormFileInputMultipleS3 } from './controls/FormFileInputMultipleS3';\nimport { FormFileInputS3 } from './controls/FormFileInputS3';\nimport { FormHidden } from './controls/FormHidden';\nimport { FormPassword } from './controls/FormPassword';\nimport { FormRadioGroup } from './controls/FormRadioGroup';\nimport { FormSelect } from './controls/FormSelect';\nimport { FormSubmit } from './controls/FormSubmit';\nimport { FormTextarea } from './controls/FormTextarea';\nimport { FormTextInput } from './controls/FormTextInput';\nimport { FormYearPicker } from './controls/FormYearPicker';\nimport { FormBase } from './FormBase';\nimport { FormErrorBox } from './FormErrorBox';\nimport { FormS3Context, type S3UploadCallback } from './FormS3Context';\n\ntype FormResponse = {\n body?: object;\n details?: string;\n status?: number;\n url?: string;\n};\n\nexport type FormProps<T extends FieldValues> = {\n $fetcher: (params: { data: T }) => Promise<unknown>;\n onValidSubmit?: (response: FormResponse) => void;\n onInvalidSubmit?: (params: {\n message: string;\n setError: UseFormSetError<T>;\n status: number;\n }) => void;\n invalidStatus?: number[];\n children: ReactNode;\n schema?: ZodObject<Record<string, ZodTypeAny>>;\n t?: (\n key: string,\n bindings?: Record<string, string>,\n fallback?: string,\n ) => string | React.ReactNode;\n /** Mensaje mostrado al usuario si falla la subida de archivos a S3 tras el submit. */\n s3UploadErrorMessage?: string;\n classNames?: {\n form?: string;\n root?: string;\n };\n};\n\ntype FormError = {\n statusCode: number;\n message: string;\n cause?: {\n issues: Record<string, string>;\n };\n};\n\nexport const Form = <T extends FieldValues>({\n $fetcher,\n onValidSubmit,\n onInvalidSubmit,\n invalidStatus = [],\n children,\n schema,\n t,\n s3UploadErrorMessage,\n classNames,\n}: FormProps<T>) => {\n const s3CallbacksRef = useRef<Map<string, S3UploadCallback>>(new Map());\n\n const s3ContextValue = {\n registerS3Upload: (name: string, cb: S3UploadCallback) => {\n s3CallbacksRef.current.set(name, cb);\n },\n unregisterS3Upload: (name: string) => {\n s3CallbacksRef.current.delete(name);\n },\n };\n\n const runS3Uploads = async (response: unknown): Promise<void> => {\n const callbacks = Array.from(s3CallbacksRef.current.values());\n await Promise.all(callbacks.map((cb) => cb(response)));\n };\n\n const onSubmit = async ({\n data,\n setError,\n }: {\n data: FieldValues;\n setError: UseFormSetError<FieldValues>;\n }) => {\n await $fetcher({ data: data as T })\n .then(async (response) => {\n const res = response as FormError & FormResponse;\n if (res?.statusCode && res.statusCode >= 400) {\n throw res;\n }\n\n try {\n await runS3Uploads(response);\n } catch (e) {\n console.error('S3 upload error:', e);\n setError('root.serverError', {\n type: 's3',\n message: s3UploadErrorMessage ?? 'Failed to upload files',\n });\n return;\n }\n onValidSubmit?.((response || {}) as FormResponse);\n })\n .catch((error: FormError) => {\n if (\n (error.statusCode === 400 || error.statusCode === 422) &&\n error.cause?.issues\n ) {\n Object.keys(error.cause.issues).forEach((key) => {\n setError(key, {\n type: 'server',\n message: error.cause?.issues?.[key],\n });\n });\n }\n\n if (invalidStatus.includes(error.statusCode) && onInvalidSubmit) {\n onInvalidSubmit({\n message: error?.message ?? 'Something went wrong',\n setError: setError as UseFormSetError<T>,\n status: error.statusCode,\n });\n } else if (error.statusCode === 400 || error.statusCode === 422) {\n setError('root.serverError', {\n type: 'server',\n message: error?.message ?? 'Something went wrong',\n });\n } else {\n throw error;\n }\n });\n };\n\n return (\n <FormS3Context.Provider value={s3ContextValue}>\n <FormBase\n onSubmit={onSubmit}\n schema={schema}\n errorBox={FormErrorBox}\n t={t}\n classNames={{\n form: classNames?.form ?? form(),\n root: classNames?.root ?? formRoot(),\n }}\n >\n {children}\n </FormBase>\n </FormS3Context.Provider>\n );\n};\n\nForm.displayName = 'Form';\nForm.TextInput = FormTextInput;\nForm.Textarea = FormTextarea;\nForm.Submit = FormSubmit;\nForm.Hidden = FormHidden;\nForm.Checkbox = FormCheckbox;\nForm.CheckboxGroup = FormCheckboxGroup;\nForm.CheckboxTree = FormCheckboxTree;\nForm.RadioGroup = FormRadioGroup;\nForm.Password = FormPassword;\nForm.Select = FormSelect;\nForm.Combobox = FormCombobox;\nForm.Autocomplete = FormAutocomplete;\nForm.DatePicker = FormDatePicker;\nForm.YearPicker = FormYearPicker;\nForm.DateTimePicker = FormDateTimePicker;\nForm.FileInput = FormFileInput;\nForm.FileInputMultiple = FormFileInputMultiple;\nForm.FileInputS3 = FormFileInputS3;\nForm.FileInputMultipleS3 = FormFileInputMultipleS3;\nForm.Dropzone = FormDropzone;\nForm.DropzoneS3 = FormDropzoneS3;\n"],"mappings":"8kDAwEA,MAAa,GAA+B,CAC1C,WACA,gBACA,kBACA,gBAAgB,EAAE,CAClB,WACA,SACA,IACA,uBACA,gBACkB,CAClB,IAAM,EAAiB,EAAsC,IAAI,IAAM,CAEjE,EAAiB,CACrB,kBAAmB,EAAc,IAAyB,CACxD,EAAe,QAAQ,IAAI,EAAM,EAAG,EAEtC,mBAAqB,GAAiB,CACpC,EAAe,QAAQ,OAAO,EAAK,EAEtC,CAEK,EAAe,KAAO,IAAqC,CAC/D,IAAM,EAAY,MAAM,KAAK,EAAe,QAAQ,QAAQ,CAAC,CAC7D,MAAM,QAAQ,IAAI,EAAU,IAAK,GAAO,EAAG,EAAS,CAAC,CAAC,EA2DxD,OACE,EAAC,EAAc,SAAf,CAAwB,MAAO,WAC7B,EAAC,EAAD,CACY,SA3DC,MAAO,CACtB,OACA,cAII,CACJ,MAAM,EAAS,CAAQ,OAAW,CAAC,CAChC,KAAK,KAAO,IAAa,CACxB,IAAM,EAAM,EACZ,GAAI,GAAK,YAAc,EAAI,YAAc,IACvC,MAAM,EAGR,GAAI,CACF,MAAM,EAAa,EAAS,OACrB,EAAG,CACV,QAAQ,MAAM,mBAAoB,EAAE,CACpC,EAAS,mBAAoB,CAC3B,KAAM,KACN,QAAS,GAAwB,yBAClC,CAAC,CACF,OAEF,IAAiB,GAAY,EAAE,CAAkB,EACjD,CACD,MAAO,GAAqB,CAa3B,IAXG,EAAM,aAAe,KAAO,EAAM,aAAe,MAClD,EAAM,OAAO,QAEb,OAAO,KAAK,EAAM,MAAM,OAAO,CAAC,QAAS,GAAQ,CAC/C,EAAS,EAAK,CACZ,KAAM,SACN,QAAS,EAAM,OAAO,SAAS,GAChC,CAAC,EACF,CAGA,EAAc,SAAS,EAAM,WAAW,EAAI,EAC9C,EAAgB,CACd,QAAS,GAAO,SAAW,uBACjB,WACV,OAAQ,EAAM,WACf,CAAC,SACO,EAAM,aAAe,KAAO,EAAM,aAAe,IAC1D,EAAS,mBAAoB,CAC3B,KAAM,SACN,QAAS,GAAO,SAAW,uBAC5B,CAAC,MAEF,MAAM,GAER,EAOQ,SACR,SAAU,EACP,IACH,WAAY,CACV,KAAM,GAAY,MAAQ,GAAM,CAChC,KAAM,GAAY,MAAQ,GAAU,CACrC,CAEA,WACQ,CAAA,CACY,CAAA,EAI7B,EAAK,YAAc,OACnB,EAAK,UAAY,EACjB,EAAK,SAAW,EAChB,EAAK,OAAS,EACd,EAAK,OAAS,EACd,EAAK,SAAW,EAChB,EAAK,cAAgB,EACrB,EAAK,aAAe,EACpB,EAAK,WAAa,EAClB,EAAK,SAAW,EAChB,EAAK,OAAS,EACd,EAAK,SAAW,EAChB,EAAK,aAAe,EACpB,EAAK,WAAa,EAClB,EAAK,WAAa,EAClB,EAAK,eAAiB,EACtB,EAAK,UAAY,EACjB,EAAK,kBAAoB,EACzB,EAAK,YAAc,EACnB,EAAK,oBAAsB,EAC3B,EAAK,SAAW,EAChB,EAAK,WAAa"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { CheckboxGroupProps } from "../../controls/checkbox-group/CheckboxGroup.mjs";
|
|
2
|
+
//#region src/components/forms/controls/FormCheckboxGroup.d.ts
|
|
3
|
+
type FormCheckboxGroupProps = Omit<CheckboxGroupProps, 'value' | 'onChange'> & {
|
|
4
|
+
$rule?: string;
|
|
5
|
+
defaultValue?: string[];
|
|
6
|
+
error?: string;
|
|
7
|
+
isSubmitting?: boolean;
|
|
8
|
+
name: string;
|
|
9
|
+
};
|
|
10
|
+
//#endregion
|
|
11
|
+
export { FormCheckboxGroupProps };
|
|
12
|
+
//# sourceMappingURL=FormCheckboxGroup.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormCheckboxGroup.d.mts","names":[],"sources":["../../../../src/components/forms/controls/FormCheckboxGroup.tsx"],"mappings":";;KAOY,sBAAA,GAAyB,IAAA,CACnC,kBAAA;EAGA,KAAA;EACA,YAAA;EACA,KAAA;EACA,YAAA;EACA,IAAA;AAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{CheckboxGroup as e}from"../../controls/checkbox-group/CheckboxGroup.mjs";import{jsx as t}from"react/jsx-runtime";import{Controller as n}from"react-hook-form";const r=({$rule:r,defaultValue:i,isSubmitting:a,name:o,disabled:s,...c})=>t(n,{name:o,defaultValue:i??[],render:({field:{onChange:n,value:r}})=>t(e,{...c,disabled:a||s,value:r??[],onChange:n})});r.displayName=`Form.CheckboxGroup`;export{r as FormCheckboxGroup};
|
|
2
|
+
//# sourceMappingURL=FormCheckboxGroup.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormCheckboxGroup.mjs","names":[],"sources":["../../../../src/components/forms/controls/FormCheckboxGroup.tsx"],"sourcesContent":["import { Controller } from 'react-hook-form';\n\nimport {\n CheckboxGroup,\n type CheckboxGroupProps,\n} from '@/components/controls/checkbox-group/CheckboxGroup';\n\nexport type FormCheckboxGroupProps = Omit<\n CheckboxGroupProps,\n 'value' | 'onChange'\n> & {\n $rule?: string;\n defaultValue?: string[];\n error?: string;\n isSubmitting?: boolean;\n name: string;\n};\n\nexport const FormCheckboxGroup = ({\n $rule: _$rule,\n defaultValue,\n isSubmitting,\n name,\n disabled,\n ...props\n}: FormCheckboxGroupProps) => {\n return (\n <Controller\n name={name}\n defaultValue={defaultValue ?? []}\n render={({ field: { onChange, value } }) => (\n <CheckboxGroup\n {...props}\n disabled={isSubmitting || disabled}\n value={value ?? []}\n onChange={onChange}\n />\n )}\n />\n );\n};\n\nFormCheckboxGroup.displayName = 'Form.CheckboxGroup';\n"],"mappings":"qKAkBA,MAAa,GAAqB,CAChC,MAAO,EACP,eACA,eACA,OACA,WACA,GAAG,KAGD,EAAC,EAAD,CACQ,OACN,aAAc,GAAgB,EAAE,CAChC,QAAS,CAAE,MAAO,CAAE,WAAU,YAC5B,EAAC,EAAD,CACE,GAAI,EACJ,SAAU,GAAgB,EAC1B,MAAO,GAAS,EAAE,CACR,WACV,CAAA,CAEJ,CAAA,CAIN,EAAkB,YAAc"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { RadioGroupProps } from "../../controls/radio-group/RadioGroup.mjs";
|
|
2
|
+
//#region src/components/forms/controls/FormRadioGroup.d.ts
|
|
3
|
+
type FormRadioGroupProps = Omit<RadioGroupProps, 'value' | 'onChange'> & {
|
|
4
|
+
$rule?: string;
|
|
5
|
+
defaultValue?: string;
|
|
6
|
+
error?: string;
|
|
7
|
+
isSubmitting?: boolean;
|
|
8
|
+
name: string;
|
|
9
|
+
};
|
|
10
|
+
//#endregion
|
|
11
|
+
export { FormRadioGroupProps };
|
|
12
|
+
//# sourceMappingURL=FormRadioGroup.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormRadioGroup.d.mts","names":[],"sources":["../../../../src/components/forms/controls/FormRadioGroup.tsx"],"mappings":";;KAOY,mBAAA,GAAsB,IAAA,CAChC,eAAA;EAGA,KAAA;EACA,YAAA;EACA,KAAA;EACA,YAAA;EACA,IAAA;AAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{RadioGroup as e}from"../../controls/radio-group/RadioGroup.mjs";import{jsx as t}from"react/jsx-runtime";import{Controller as n}from"react-hook-form";const r=({$rule:r,defaultValue:i,isSubmitting:a,name:o,...s})=>t(n,{name:o,defaultValue:i,render:({field:{onChange:n,value:r}})=>t(e,{...s,value:r,onChange:n})});r.displayName=`Form.RadioGroup`;export{r as FormRadioGroup};
|
|
2
|
+
//# sourceMappingURL=FormRadioGroup.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormRadioGroup.mjs","names":[],"sources":["../../../../src/components/forms/controls/FormRadioGroup.tsx"],"sourcesContent":["import { Controller } from 'react-hook-form';\n\nimport {\n RadioGroup,\n type RadioGroupProps,\n} from '@/components/controls/radio-group/RadioGroup';\n\nexport type FormRadioGroupProps = Omit<\n RadioGroupProps,\n 'value' | 'onChange'\n> & {\n $rule?: string;\n defaultValue?: string;\n error?: string;\n isSubmitting?: boolean;\n name: string;\n};\n\nexport const FormRadioGroup = ({\n $rule: _$rule,\n defaultValue,\n isSubmitting: _isSubmitting,\n name,\n ...props\n}: FormRadioGroupProps) => {\n return (\n <Controller\n name={name}\n defaultValue={defaultValue}\n render={({ field: { onChange, value } }) => (\n <RadioGroup {...props} value={value} onChange={onChange} />\n )}\n />\n );\n};\n\nFormRadioGroup.displayName = 'Form.RadioGroup';\n"],"mappings":"4JAkBA,MAAa,GAAkB,CAC7B,MAAO,EACP,eACA,aAAc,EACd,OACA,GAAG,KAGD,EAAC,EAAD,CACQ,OACQ,eACd,QAAS,CAAE,MAAO,CAAE,WAAU,YAC5B,EAAC,EAAD,CAAY,GAAI,EAAc,QAAiB,WAAY,CAAA,CAE7D,CAAA,CAIN,EAAe,YAAc"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { YearPickerProps, YearPickerValue } from "../../controls/date-picker/YearPicker.mjs";
|
|
2
|
+
//#region src/components/forms/controls/FormYearPicker.d.ts
|
|
3
|
+
type FormYearPickerValue = string | null;
|
|
4
|
+
type FormYearPickerProps = Omit<YearPickerProps, 'defaultValue' | 'onChange' | 'value'> & {
|
|
5
|
+
$rule?: string;
|
|
6
|
+
error?: string;
|
|
7
|
+
isSubmitting?: boolean;
|
|
8
|
+
name: string;
|
|
9
|
+
defaultValue?: YearPickerValue;
|
|
10
|
+
onChange?: (year: FormYearPickerValue) => void;
|
|
11
|
+
};
|
|
12
|
+
//#endregion
|
|
13
|
+
export { FormYearPickerProps };
|
|
14
|
+
//# sourceMappingURL=FormYearPicker.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormYearPicker.d.mts","names":[],"sources":["../../../../src/components/forms/controls/FormYearPicker.tsx"],"mappings":";;KAQY,mBAAA;AAAA,KAEA,mBAAA,GAAsB,IAAA,CAChC,eAAA;EAGA,KAAA;EACA,KAAA;EACA,YAAA;EACA,IAAA;EACA,YAAA,GAAe,eAAA;EACf,QAAA,IAAY,IAAA,EAAM,mBAAA;AAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{YearPicker as e}from"../../controls/date-picker/YearPicker.mjs";import{jsx as t}from"react/jsx-runtime";import{Controller as n}from"react-hook-form";const r=e=>{if(e!==void 0)return e===null?null:typeof e==`string`?e.slice(0,4):String(e.getFullYear())},i=({$rule:i,isSubmitting:a,name:o,error:s,defaultValue:c,onChange:l,disabled:u,...d})=>t(n,{name:o,...c===void 0?{}:{defaultValue:r(c)},render:({field:{onChange:n,onBlur:i,value:c}})=>t(e,{name:o,error:s,disabled:u||a,value:c&&`${c}-01-01`,onBlur:i,...d,onChange:e=>{let t=r(e)??null;n(t),l?.(t)}})});i.displayName=`Form.YearPicker`;export{i as FormYearPicker};
|
|
2
|
+
//# sourceMappingURL=FormYearPicker.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormYearPicker.mjs","names":[],"sources":["../../../../src/components/forms/controls/FormYearPicker.tsx"],"sourcesContent":["import { Controller } from 'react-hook-form';\n\nimport {\n YearPicker,\n type YearPickerProps,\n type YearPickerValue,\n} from '@/components/controls/date-picker/YearPicker';\n\nexport type FormYearPickerValue = string | null;\n\nexport type FormYearPickerProps = Omit<\n YearPickerProps,\n 'defaultValue' | 'onChange' | 'value'\n> & {\n $rule?: string;\n error?: string;\n isSubmitting?: boolean;\n name: string;\n defaultValue?: YearPickerValue;\n onChange?: (year: FormYearPickerValue) => void;\n};\n\nconst toFormYearValue = (\n value: YearPickerValue | undefined,\n): FormYearPickerValue | undefined => {\n if (value === undefined) return undefined;\n if (value === null) return null;\n if (typeof value === 'string') {\n // Extract year from ISO string (e.g. \"2024-01-01\" → \"2024\")\n return value.slice(0, 4);\n }\n return String(value.getFullYear());\n};\n\nexport const FormYearPicker = ({\n $rule: _$rule,\n isSubmitting,\n name,\n error,\n defaultValue,\n onChange,\n disabled,\n ...props\n}: FormYearPickerProps) => {\n const controllerProps =\n defaultValue === undefined\n ? {}\n : { defaultValue: toFormYearValue(defaultValue) };\n\n return (\n <Controller\n name={name}\n {...controllerProps}\n render={({ field: { onChange: fieldOnChange, onBlur, value } }) => (\n <YearPicker\n name={name}\n error={error}\n disabled={disabled || isSubmitting}\n value={value ? `${value}-01-01` : value}\n onBlur={onBlur}\n {...props}\n onChange={(date) => {\n const formValue = toFormYearValue(date) ?? null;\n fieldOnChange(formValue);\n onChange?.(formValue);\n }}\n />\n )}\n />\n );\n};\n\nFormYearPicker.displayName = 'Form.YearPicker';\n"],"mappings":"4JAsBA,MAAM,EACJ,GACoC,CAChC,OAAU,IAAA,GAMd,OALI,IAAU,KAAa,KACvB,OAAO,GAAU,SAEZ,EAAM,MAAM,EAAG,EAAE,CAEnB,OAAO,EAAM,aAAa,CAAC,EAGvB,GAAkB,CAC7B,MAAO,EACP,eACA,OACA,QACA,eACA,WACA,WACA,GAAG,KAQD,EAAC,EAAD,CACQ,OACN,GAPF,IAAiB,IAAA,GACb,EAAE,CACF,CAAE,aAAc,EAAgB,EAAa,CAAE,CAMjD,QAAS,CAAE,MAAO,CAAE,SAAU,EAAe,SAAQ,YACnD,EAAC,EAAD,CACQ,OACC,QACP,SAAU,GAAY,EACtB,MAAO,GAAQ,GAAG,EAAM,QAChB,SACR,GAAI,EACJ,SAAW,GAAS,CAClB,IAAM,EAAY,EAAgB,EAAK,EAAI,KAC3C,EAAc,EAAU,CACxB,IAAW,EAAU,EAEvB,CAAA,CAEJ,CAAA,CAIN,EAAe,YAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{FormAutocomplete as e}from"./FormAutocomplete.mjs";import{FormCheckbox as t}from"./FormCheckbox.mjs";import{
|
|
1
|
+
import{FormAutocomplete as e}from"./FormAutocomplete.mjs";import{FormCheckbox as t}from"./FormCheckbox.mjs";import{FormCheckboxGroup as n}from"./FormCheckboxGroup.mjs";import{FormCheckboxTree as r}from"./FormCheckboxTree.mjs";import{FormCombobox as i}from"./FormCombobox.mjs";import{FormDatePicker as a}from"./FormDatePicker.mjs";import{FormDateTimePicker as o}from"./FormDateTimePicker.mjs";import{FormDropzone as s}from"./FormDropzone.mjs";import{FormDropzoneS3 as c}from"./FormDropzoneS3.mjs";import{FormFileInput as l}from"./FormFileInput.mjs";import{FormFileInputMultiple as u}from"./FormFileInputMultiple.mjs";import{FormFileInputMultipleS3 as d}from"./FormFileInputMultipleS3.mjs";import{FormFileInputS3 as f}from"./FormFileInputS3.mjs";import{FormHidden as p}from"./FormHidden.mjs";import{FormPassword as m}from"./FormPassword.mjs";import{FormRadioGroup as h}from"./FormRadioGroup.mjs";import{FormSelect as g}from"./FormSelect.mjs";import{FormSubmit as _}from"./FormSubmit.mjs";import{FormTextarea as v}from"./FormTextarea.mjs";import{FormTextInput as y}from"./FormTextInput.mjs";import{FormYearPicker as b}from"./FormYearPicker.mjs";const x=[_,y,v,m,p,t,n,r,h,g,i,e,a,b,o,l,u,f,d,s,c];export{x as controls};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":[],"sources":["../../../../src/components/forms/controls/index.ts"],"sourcesContent":["import { FormAutocomplete } from './FormAutocomplete';\nimport { FormCheckbox } from './FormCheckbox';\nimport { FormCheckboxTree } from './FormCheckboxTree';\nimport { FormCombobox } from './FormCombobox';\nimport { FormDatePicker } from './FormDatePicker';\nimport { FormDateTimePicker } from './FormDateTimePicker';\nimport { FormDropzone } from './FormDropzone';\nimport { FormDropzoneS3 } from './FormDropzoneS3';\nimport { FormFileInput } from './FormFileInput';\nimport { FormFileInputMultiple } from './FormFileInputMultiple';\nimport { FormFileInputMultipleS3 } from './FormFileInputMultipleS3';\nimport { FormFileInputS3 } from './FormFileInputS3';\nimport { FormHidden } from './FormHidden';\nimport { FormPassword } from './FormPassword';\nimport { FormSelect } from './FormSelect';\nimport { FormSubmit } from './FormSubmit';\nimport { FormTextarea } from './FormTextarea';\nimport { FormTextInput } from './FormTextInput';\n\nexport const controls = [\n FormSubmit,\n FormTextInput,\n FormTextarea,\n FormPassword,\n FormHidden,\n FormCheckbox,\n FormCheckboxTree,\n FormSelect,\n FormCombobox,\n FormAutocomplete,\n FormDatePicker,\n FormDateTimePicker,\n FormFileInput,\n FormFileInputMultiple,\n FormFileInputS3,\n FormFileInputMultipleS3,\n FormDropzone,\n FormDropzoneS3,\n] as React.ComponentType[];\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../../src/components/forms/controls/index.ts"],"sourcesContent":["import { FormAutocomplete } from './FormAutocomplete';\nimport { FormCheckbox } from './FormCheckbox';\nimport { FormCheckboxGroup } from './FormCheckboxGroup';\nimport { FormCheckboxTree } from './FormCheckboxTree';\nimport { FormCombobox } from './FormCombobox';\nimport { FormDatePicker } from './FormDatePicker';\nimport { FormDateTimePicker } from './FormDateTimePicker';\nimport { FormDropzone } from './FormDropzone';\nimport { FormDropzoneS3 } from './FormDropzoneS3';\nimport { FormFileInput } from './FormFileInput';\nimport { FormFileInputMultiple } from './FormFileInputMultiple';\nimport { FormFileInputMultipleS3 } from './FormFileInputMultipleS3';\nimport { FormFileInputS3 } from './FormFileInputS3';\nimport { FormHidden } from './FormHidden';\nimport { FormPassword } from './FormPassword';\nimport { FormRadioGroup } from './FormRadioGroup';\nimport { FormSelect } from './FormSelect';\nimport { FormSubmit } from './FormSubmit';\nimport { FormTextarea } from './FormTextarea';\nimport { FormTextInput } from './FormTextInput';\nimport { FormYearPicker } from './FormYearPicker';\n\nexport const controls = [\n FormSubmit,\n FormTextInput,\n FormTextarea,\n FormPassword,\n FormHidden,\n FormCheckbox,\n FormCheckboxGroup,\n FormCheckboxTree,\n FormRadioGroup,\n FormSelect,\n FormCombobox,\n FormAutocomplete,\n FormDatePicker,\n FormYearPicker,\n FormDateTimePicker,\n FormFileInput,\n FormFileInputMultiple,\n FormFileInputS3,\n FormFileInputMultipleS3,\n FormDropzone,\n FormDropzoneS3,\n] as React.ComponentType[];\n"],"mappings":"snCAsBA,MAAa,EAAW,CACtB,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";import{Fragment as e,jsx as t}from"react/jsx-runtime";import{Children as n,cloneElement as r,isValidElement as i}from"react";const a=new Set([`Form.Password`,`Form.Checkbox`,`Form.CheckboxTree`,`Form.Select`,`Form.Combobox`,`Form.Autocomplete`,`Form.DatePicker`,`Form.DateTimePicker`,`Form.Hidden`,`Form.FileInput`,`Form.FileInputMultiple`,`Form.Dropzone`,`Form.DropzoneS3`,`Form.FileInputS3`,`Form.FileInputMultipleS3`]),o=(e,t,n)=>{if(e)try{let r=JSON.parse(e),i={...r.bindings,attribute:t},a=n?n(r.key,i,r.fallback):r.fallback;return String(a).replace(/{attribute}/g,t)}catch{return e.replace(/{attribute}/g,t)}},s=({children:s,register:c,componentTypes:l,errors:u={},t:d})=>{let f=e=>n.map(e,e=>{if(!i(e))return e;let t=e.props;if(l.some(t=>e.type===t)){let n=t.name,i=u[n??``]?.message?.toString(),s=n?o(i,n,d):void 0,l=e.type.displayName;return r(e,{...n!==void 0&&!a.has(l??``)&&n?c(n):{},error:s})}return t.children?r(e,{children:f(t.children)}):e});return t(e,{children:f(s)})};export{s as RegisteredFormChildren};
|
|
1
|
+
"use client";import{Fragment as e,jsx as t}from"react/jsx-runtime";import{Children as n,cloneElement as r,isValidElement as i}from"react";const a=new Set([`Form.Password`,`Form.Checkbox`,`Form.CheckboxGroup`,`Form.CheckboxTree`,`Form.RadioGroup`,`Form.Select`,`Form.Combobox`,`Form.Autocomplete`,`Form.DatePicker`,`Form.DateTimePicker`,`Form.Hidden`,`Form.FileInput`,`Form.FileInputMultiple`,`Form.Dropzone`,`Form.DropzoneS3`,`Form.FileInputS3`,`Form.FileInputMultipleS3`]),o=(e,t,n)=>{if(e)try{let r=JSON.parse(e),i={...r.bindings,attribute:t},a=n?n(r.key,i,r.fallback):r.fallback;return String(a).replace(/{attribute}/g,t)}catch{return e.replace(/{attribute}/g,t)}},s=({children:s,register:c,componentTypes:l,errors:u={},t:d})=>{let f=e=>n.map(e,e=>{if(!i(e))return e;let t=e.props;if(l.some(t=>e.type===t)){let n=t.name,i=u[n??``]?.message?.toString(),s=n?o(i,n,d):void 0,l=e.type.displayName;return r(e,{...n!==void 0&&!a.has(l??``)&&n?c(n):{},error:s})}return t.children?r(e,{children:f(t.children)}):e});return t(e,{children:f(s)})};export{s as RegisteredFormChildren};
|
|
2
2
|
//# sourceMappingURL=register-components.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-components.mjs","names":[],"sources":["../../../../src/components/forms/controls/register-components.tsx"],"sourcesContent":["'use client';\n\nimport type React from 'react';\nimport { Children, cloneElement, isValidElement } from 'react';\nimport type { FieldErrors, UseFormRegister } from 'react-hook-form';\n\ninterface TranslationMessage {\n key: string;\n bindings: Record<string, string>;\n fallback: string;\n}\n\nconst controllerDisplayNames = new Set([\n 'Form.Password',\n 'Form.Checkbox',\n 'Form.CheckboxTree',\n 'Form.Select',\n 'Form.Combobox',\n 'Form.Autocomplete',\n 'Form.DatePicker',\n 'Form.DateTimePicker',\n 'Form.Hidden',\n 'Form.FileInput',\n 'Form.FileInputMultiple',\n 'Form.Dropzone',\n 'Form.DropzoneS3',\n 'Form.FileInputS3',\n 'Form.FileInputMultipleS3',\n]);\n\nconst parseAndTranslate = (\n message: string | undefined,\n fieldName: string,\n t?: (\n key: string,\n bindings?: Record<string, string>,\n fallback?: string,\n ) => string | React.ReactNode,\n): string | undefined => {\n if (!message) return undefined;\n\n try {\n const parsed: TranslationMessage = JSON.parse(message);\n const bindings = { ...parsed.bindings, attribute: fieldName };\n const result = t\n ? t(parsed.key, bindings, parsed.fallback)\n : parsed.fallback;\n return String(result).replace(/{attribute}/g, fieldName);\n } catch {\n return message.replace(/{attribute}/g, fieldName);\n }\n};\n\ninterface RegisteredFormChildrenProps {\n children: React.ReactNode;\n register: UseFormRegister<Record<string, unknown>>;\n componentTypes: React.ComponentType[];\n errors?: FieldErrors<Record<string, unknown>>;\n t?: (\n key: string,\n bindings?: Record<string, string>,\n fallback?: string,\n ) => string | React.ReactNode;\n}\n\nexport const RegisteredFormChildren = ({\n children,\n register,\n componentTypes,\n errors = {},\n t,\n}: RegisteredFormChildrenProps): React.ReactNode => {\n const processChildren = (nodes: React.ReactNode): React.ReactNode => {\n return Children.map(nodes, (child) => {\n if (!isValidElement(child)) {\n return child;\n }\n\n const childProps = child.props as {\n name?: string;\n children?: React.ReactNode;\n };\n\n if (\n componentTypes.some((type: React.ComponentType) => child.type === type)\n ) {\n const fieldName = childProps.name;\n const errorMessage = errors[fieldName ?? '']?.message?.toString();\n const translatedError = fieldName\n ? parseAndTranslate(errorMessage, fieldName, t)\n : undefined;\n const displayName = (\n child.type as React.ComponentType & { displayName?: string }\n ).displayName;\n const shouldRegister =\n fieldName !== undefined &&\n !controllerDisplayNames.has(displayName ?? '');\n const registrationProps =\n shouldRegister && fieldName ? register(fieldName) : {};\n\n return cloneElement(child, {\n ...registrationProps,\n error: translatedError,\n } as Partial<typeof child.props>);\n }\n\n if (childProps.children) {\n return cloneElement(child, {\n children: processChildren(childProps.children),\n } as Partial<typeof child.props>);\n }\n\n return child;\n });\n };\n\n return <>{processChildren(children)}</>;\n};\n"],"mappings":"0IAYA,MAAM,EAAyB,IAAI,IAAI,CACrC,gBACA,gBACA,oBACA,cACA,gBACA,oBACA,kBACA,sBACA,cACA,iBACA,yBACA,gBACA,kBACA,mBACA,2BACD,CAAC,CAEI,GACJ,EACA,EACA,IAKuB,CAClB,KAEL,GAAI,CACF,IAAM,EAA6B,KAAK,MAAM,EAAQ,CAChD,EAAW,CAAE,GAAG,EAAO,SAAU,UAAW,EAAW,CACvD,EAAS,EACX,EAAE,EAAO,IAAK,EAAU,EAAO,SAAS,CACxC,EAAO,SACX,OAAO,OAAO,EAAO,CAAC,QAAQ,eAAgB,EAAU,MAClD,CACN,OAAO,EAAQ,QAAQ,eAAgB,EAAU,GAgBxC,GAA0B,CACrC,WACA,WACA,iBACA,SAAS,EAAE,CACX,OACkD,CAClD,IAAM,EAAmB,GAChB,EAAS,IAAI,EAAQ,GAAU,CACpC,GAAI,CAAC,EAAe,EAAM,CACxB,OAAO,EAGT,IAAM,EAAa,EAAM,MAKzB,GACE,EAAe,KAAM,GAA8B,EAAM,OAAS,EAAK,CACvE,CACA,IAAM,EAAY,EAAW,KACvB,EAAe,EAAO,GAAa,KAAK,SAAS,UAAU,CAC3D,EAAkB,EACpB,EAAkB,EAAc,EAAW,EAAE,CAC7C,IAAA,GACE,EACJ,EAAM,KACN,YAOF,OAAO,EAAa,EAAO,CACzB,GANA,IAAc,IAAA,IACd,CAAC,EAAuB,IAAI,GAAe,GAAG,EAE5B,EAAY,EAAS,EAAU,CAAG,EAAE,CAItD,MAAO,EACR,CAAgC,CASnC,OANI,EAAW,SACN,EAAa,EAAO,CACzB,SAAU,EAAgB,EAAW,SAAS,CAC/C,CAAgC,CAG5B,GACP,CAGJ,OAAO,EAAA,EAAA,CAAA,SAAG,EAAgB,EAAS,CAAI,CAAA"}
|
|
1
|
+
{"version":3,"file":"register-components.mjs","names":[],"sources":["../../../../src/components/forms/controls/register-components.tsx"],"sourcesContent":["'use client';\n\nimport type React from 'react';\nimport { Children, cloneElement, isValidElement } from 'react';\nimport type { FieldErrors, UseFormRegister } from 'react-hook-form';\n\ninterface TranslationMessage {\n key: string;\n bindings: Record<string, string>;\n fallback: string;\n}\n\nconst controllerDisplayNames = new Set([\n 'Form.Password',\n 'Form.Checkbox',\n 'Form.CheckboxGroup',\n 'Form.CheckboxTree',\n 'Form.RadioGroup',\n 'Form.Select',\n 'Form.Combobox',\n 'Form.Autocomplete',\n 'Form.DatePicker',\n 'Form.DateTimePicker',\n 'Form.Hidden',\n 'Form.FileInput',\n 'Form.FileInputMultiple',\n 'Form.Dropzone',\n 'Form.DropzoneS3',\n 'Form.FileInputS3',\n 'Form.FileInputMultipleS3',\n]);\n\nconst parseAndTranslate = (\n message: string | undefined,\n fieldName: string,\n t?: (\n key: string,\n bindings?: Record<string, string>,\n fallback?: string,\n ) => string | React.ReactNode,\n): string | undefined => {\n if (!message) return undefined;\n\n try {\n const parsed: TranslationMessage = JSON.parse(message);\n const bindings = { ...parsed.bindings, attribute: fieldName };\n const result = t\n ? t(parsed.key, bindings, parsed.fallback)\n : parsed.fallback;\n return String(result).replace(/{attribute}/g, fieldName);\n } catch {\n return message.replace(/{attribute}/g, fieldName);\n }\n};\n\ninterface RegisteredFormChildrenProps {\n children: React.ReactNode;\n register: UseFormRegister<Record<string, unknown>>;\n componentTypes: React.ComponentType[];\n errors?: FieldErrors<Record<string, unknown>>;\n t?: (\n key: string,\n bindings?: Record<string, string>,\n fallback?: string,\n ) => string | React.ReactNode;\n}\n\nexport const RegisteredFormChildren = ({\n children,\n register,\n componentTypes,\n errors = {},\n t,\n}: RegisteredFormChildrenProps): React.ReactNode => {\n const processChildren = (nodes: React.ReactNode): React.ReactNode => {\n return Children.map(nodes, (child) => {\n if (!isValidElement(child)) {\n return child;\n }\n\n const childProps = child.props as {\n name?: string;\n children?: React.ReactNode;\n };\n\n if (\n componentTypes.some((type: React.ComponentType) => child.type === type)\n ) {\n const fieldName = childProps.name;\n const errorMessage = errors[fieldName ?? '']?.message?.toString();\n const translatedError = fieldName\n ? parseAndTranslate(errorMessage, fieldName, t)\n : undefined;\n const displayName = (\n child.type as React.ComponentType & { displayName?: string }\n ).displayName;\n const shouldRegister =\n fieldName !== undefined &&\n !controllerDisplayNames.has(displayName ?? '');\n const registrationProps =\n shouldRegister && fieldName ? register(fieldName) : {};\n\n return cloneElement(child, {\n ...registrationProps,\n error: translatedError,\n } as Partial<typeof child.props>);\n }\n\n if (childProps.children) {\n return cloneElement(child, {\n children: processChildren(childProps.children),\n } as Partial<typeof child.props>);\n }\n\n return child;\n });\n };\n\n return <>{processChildren(children)}</>;\n};\n"],"mappings":"0IAYA,MAAM,EAAyB,IAAI,IAAI,CACrC,gBACA,gBACA,qBACA,oBACA,kBACA,cACA,gBACA,oBACA,kBACA,sBACA,cACA,iBACA,yBACA,gBACA,kBACA,mBACA,2BACD,CAAC,CAEI,GACJ,EACA,EACA,IAKuB,CAClB,KAEL,GAAI,CACF,IAAM,EAA6B,KAAK,MAAM,EAAQ,CAChD,EAAW,CAAE,GAAG,EAAO,SAAU,UAAW,EAAW,CACvD,EAAS,EACX,EAAE,EAAO,IAAK,EAAU,EAAO,SAAS,CACxC,EAAO,SACX,OAAO,OAAO,EAAO,CAAC,QAAQ,eAAgB,EAAU,MAClD,CACN,OAAO,EAAQ,QAAQ,eAAgB,EAAU,GAgBxC,GAA0B,CACrC,WACA,WACA,iBACA,SAAS,EAAE,CACX,OACkD,CAClD,IAAM,EAAmB,GAChB,EAAS,IAAI,EAAQ,GAAU,CACpC,GAAI,CAAC,EAAe,EAAM,CACxB,OAAO,EAGT,IAAM,EAAa,EAAM,MAKzB,GACE,EAAe,KAAM,GAA8B,EAAM,OAAS,EAAK,CACvE,CACA,IAAM,EAAY,EAAW,KACvB,EAAe,EAAO,GAAa,KAAK,SAAS,UAAU,CAC3D,EAAkB,EACpB,EAAkB,EAAc,EAAW,EAAE,CAC7C,IAAA,GACE,EACJ,EAAM,KACN,YAOF,OAAO,EAAa,EAAO,CACzB,GANA,IAAc,IAAA,IACd,CAAC,EAAuB,IAAI,GAAe,GAAG,EAE5B,EAAY,EAAS,EAAU,CAAG,EAAE,CAItD,MAAO,EACR,CAAgC,CASnC,OANI,EAAW,SACN,EAAa,EAAO,CACzB,SAAU,EAAgB,EAAW,SAAS,CAC/C,CAAgC,CAG5B,GACP,CAGJ,OAAO,EAAA,EAAA,CAAA,SAAG,EAAgB,EAAS,CAAI,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{findFormComponents as e}from"../controls/find-form-components.mjs";import{PASSWORD_RULES as t}from"./password-rules.mjs";import n from"./password.mjs";import{parseRules as r}from"./zod.mjs";import{z as i}from"zod";const a=(e,t)=>{if(!e.name||!e.$rule?.includes(`confirmed`))return;let n=e.$rule.split(`|`).find(e=>e.startsWith(`confirmed`)),r=n?.includes(`:`)?n.split(`:`)[1]:`${e.name}_confirmation`;t.confirmedFields.push({field:e.name,target:r})},o=(e,t)=>{e.name&&(e.$rule?.includes(`required`)?(t.rules[e.name]=i.boolean().optional().or(i.literal(!1)),t.requiredBooleanFields.push(e.name)):t.rules[e.name]=i.boolean().optional())},s=(e,t)=>{e.name&&(e.$rule?.includes(`required`)?t.rules[e.name]=i.any().refine(e=>Array.isArray(e)&&e.length>0,{message:f}):t.rules[e.name]=i.array(i.string()).optional())},c=(e,a)=>{if(!e.name)return;let o=i.string(),s=e.$rule?e.$rule.split(`|`).filter(e=>e.trim()!==`password`).join(`|`):``;s&&(o=r(s));let c=e.rules||(e.$rule?.includes(`password`)?t:[]);c.length>0&&(o=n(o,c));let l=!e.$rule||e.$rule.includes(`optional`)||s.includes(`optional`);a.rules[e.name]=l?o.optional():o},l=(e,t)=>{e.name&&(t.rules[e.name]=e.$rule?r(e.$rule):i.string().optional())},u=(e,t)=>{e.name&&(t.rules[e.name]=i.any().optional())},d=(e,t)=>{e.name&&(t.rules[e.name]=e.$rule?r(e.$rule):i.string().nullable().optional())},f=JSON.stringify({key:`required`,fallback:`El campo {attribute} es obligatorio.`,bindings:{}}),p=(e,t,n)=>{e.name&&(e.$rule?.includes(`required`)?t.rules[e.name]=n?i.any().refine(e=>Array.isArray(e)&&e.length>0,{message:f}):i.any().refine(e=>e instanceof File,{message:f}):t.rules[e.name]=i.any().optional())},m=(e,t)=>t.confirmedFields.length===0&&t.requiredBooleanFields.length===0?e:e.superRefine((e,n)=>{t.confirmedFields.forEach(({field:t,target:r})=>{e[t]!==e[r]&&n.addIssue({code:i.ZodIssueCode.custom,message:JSON.stringify({key:`confirmed`,fallback:`La confirmación no coincide.`,bindings:{}}),path:[r]})}),t.requiredBooleanFields.forEach(t=>{e[t]!==!0&&n.addIssue({code:i.ZodIssueCode.custom,message:JSON.stringify({key:`required`,fallback:`El campo {attribute} es obligatorio.`,bindings:{}}),path:[t]})})}),h=(t,n)=>{let r={rules:{},confirmedFields:[],requiredBooleanFields:[]};return e(t,n).forEach(e=>{let t=e.props,n=e.type.displayName;t.name&&(a(t,r),n===`Form.Checkbox`?o(t,r):n===`Form.CheckboxTree`?s(t,r):n===`Form.Password`?c(t,r):n===`Form.Select`||n===`Form.Combobox`||n===`Form.Autocomplete`?u(t,r):n===`Form.DatePicker`||n===`Form.DateTimePicker`?d(t,r):n===`Form.FileInput`?p(t,r,!1):n===`Form.FileInputMultiple`||n===`Form.Dropzone`||n===`Form.DropzoneS3`?p(t,r,!0):l(t,r))}),m(i.object(r.rules).loose(),r)};export{h as extractFormRules};
|
|
1
|
+
import{findFormComponents as e}from"../controls/find-form-components.mjs";import{PASSWORD_RULES as t}from"./password-rules.mjs";import n from"./password.mjs";import{parseRules as r}from"./zod.mjs";import{z as i}from"zod";const a=(e,t)=>{if(!e.name||!e.$rule?.includes(`confirmed`))return;let n=e.$rule.split(`|`).find(e=>e.startsWith(`confirmed`)),r=n?.includes(`:`)?n.split(`:`)[1]:`${e.name}_confirmation`;t.confirmedFields.push({field:e.name,target:r})},o=(e,t)=>{e.name&&(e.$rule?.includes(`required`)?(t.rules[e.name]=i.boolean().optional().or(i.literal(!1)),t.requiredBooleanFields.push(e.name)):t.rules[e.name]=i.boolean().optional())},s=(e,t)=>{e.name&&(e.$rule?.includes(`required`)?t.rules[e.name]=i.any().refine(e=>Array.isArray(e)&&e.length>0,{message:f}):t.rules[e.name]=i.array(i.string()).optional())},c=(e,a)=>{if(!e.name)return;let o=i.string(),s=e.$rule?e.$rule.split(`|`).filter(e=>e.trim()!==`password`).join(`|`):``;s&&(o=r(s));let c=e.rules||(e.$rule?.includes(`password`)?t:[]);c.length>0&&(o=n(o,c));let l=!e.$rule||e.$rule.includes(`optional`)||s.includes(`optional`);a.rules[e.name]=l?o.optional():o},l=(e,t)=>{e.name&&(t.rules[e.name]=e.$rule?r(e.$rule):i.string().optional())},u=(e,t)=>{e.name&&(t.rules[e.name]=i.any().optional())},d=(e,t)=>{e.name&&(t.rules[e.name]=e.$rule?r(e.$rule):i.string().nullable().optional())},f=JSON.stringify({key:`required`,fallback:`El campo {attribute} es obligatorio.`,bindings:{}}),p=(e,t,n)=>{e.name&&(e.$rule?.includes(`required`)?t.rules[e.name]=n?i.any().refine(e=>Array.isArray(e)&&e.length>0,{message:f}):i.any().refine(e=>e instanceof File,{message:f}):t.rules[e.name]=i.any().optional())},m=(e,t)=>t.confirmedFields.length===0&&t.requiredBooleanFields.length===0?e:e.superRefine((e,n)=>{t.confirmedFields.forEach(({field:t,target:r})=>{e[t]!==e[r]&&n.addIssue({code:i.ZodIssueCode.custom,message:JSON.stringify({key:`confirmed`,fallback:`La confirmación no coincide.`,bindings:{}}),path:[r]})}),t.requiredBooleanFields.forEach(t=>{e[t]!==!0&&n.addIssue({code:i.ZodIssueCode.custom,message:JSON.stringify({key:`required`,fallback:`El campo {attribute} es obligatorio.`,bindings:{}}),path:[t]})})}),h=(t,n)=>{let r={rules:{},confirmedFields:[],requiredBooleanFields:[]};return e(t,n).forEach(e=>{let t=e.props,n=e.type.displayName;t.name&&(a(t,r),n===`Form.Checkbox`?o(t,r):n===`Form.CheckboxTree`||n===`Form.CheckboxGroup`?s(t,r):n===`Form.Password`?c(t,r):n===`Form.Select`||n===`Form.Combobox`||n===`Form.Autocomplete`?u(t,r):n===`Form.DatePicker`||n===`Form.DateTimePicker`?d(t,r):n===`Form.FileInput`?p(t,r,!1):n===`Form.FileInputMultiple`||n===`Form.Dropzone`||n===`Form.DropzoneS3`?p(t,r,!0):l(t,r))}),m(i.object(r.rules).loose(),r)};export{h as extractFormRules};
|
|
2
2
|
//# sourceMappingURL=extract-form-rules.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract-form-rules.mjs","names":["passwordRule"],"sources":["../../../../src/components/forms/rules/extract-form-rules.ts"],"sourcesContent":["import type React from 'react';\nimport type { FieldValues } from 'react-hook-form';\nimport { type ZodTypeAny, z } from 'zod';\n\nimport type { PasswordRuleDefinition } from '@/components/controls/password-input/usePasswordRules';\n\nimport { findFormComponents } from '../controls/find-form-components';\nimport passwordRule from './password';\nimport { PASSWORD_RULES } from './password-rules';\nimport { parseRules } from './zod';\n\ntype FormRuleContext = {\n rules: Record<string, ZodTypeAny>;\n confirmedFields: { field: string; target: string }[];\n requiredBooleanFields: string[];\n};\n\ntype ComponentProps = {\n name?: string;\n $rule?: string;\n rules?: PasswordRuleDefinition[];\n};\n\nconst processConfirmedRule = (\n props: ComponentProps,\n context: FormRuleContext,\n) => {\n if (!props.name || !props.$rule?.includes('confirmed')) return;\n\n const rulesList = props.$rule.split('|');\n const confirmedRule = rulesList.find((r) => r.startsWith('confirmed'));\n const target = confirmedRule?.includes(':')\n ? confirmedRule.split(':')[1]\n : `${props.name}_confirmation`;\n\n context.confirmedFields.push({ field: props.name, target });\n};\n\nconst processCheckbox = (props: ComponentProps, context: FormRuleContext) => {\n if (!props.name) return;\n\n if (props.$rule?.includes('required')) {\n context.rules[props.name] = z.boolean().optional().or(z.literal(false));\n context.requiredBooleanFields.push(props.name);\n } else {\n context.rules[props.name] = z.boolean().optional();\n }\n};\n\nconst processCheckboxTree = (\n props: ComponentProps,\n context: FormRuleContext,\n) => {\n if (!props.name) return;\n\n if (props.$rule?.includes('required')) {\n context.rules[props.name] = z\n .any()\n .refine((val) => Array.isArray(val) && val.length > 0, {\n message: requiredMessage,\n });\n } else {\n context.rules[props.name] = z.array(z.string()).optional();\n }\n};\n\nconst processPassword = (props: ComponentProps, context: FormRuleContext) => {\n if (!props.name) return;\n\n let baseSchema: ZodTypeAny = z.string();\n const otherRules = props.$rule\n ? props.$rule\n .split('|')\n .filter((r) => r.trim() !== 'password')\n .join('|')\n : '';\n\n if (otherRules) {\n baseSchema = parseRules(otherRules);\n }\n\n const passwordRules =\n props.rules || (props.$rule?.includes('password') ? PASSWORD_RULES : []);\n\n if (passwordRules.length > 0) {\n baseSchema = passwordRule(baseSchema, passwordRules);\n }\n\n const isOptional =\n !props.$rule ||\n props.$rule.includes('optional') ||\n otherRules.includes('optional');\n\n context.rules[props.name] = isOptional ? baseSchema.optional() : baseSchema;\n};\n\nconst processDefault = (props: ComponentProps, context: FormRuleContext) => {\n if (!props.name) return;\n context.rules[props.name] = props.$rule\n ? parseRules(props.$rule)\n : z.string().optional();\n};\n\nconst processDropdown = (props: ComponentProps, context: FormRuleContext) => {\n if (!props.name) return;\n context.rules[props.name] = z.any().optional();\n};\n\nconst processDatePicker = (props: ComponentProps, context: FormRuleContext) => {\n if (!props.name) return;\n context.rules[props.name] = props.$rule\n ? parseRules(props.$rule)\n : z.string().nullable().optional();\n};\n\nconst requiredMessage = JSON.stringify({\n key: 'required',\n fallback: 'El campo {attribute} es obligatorio.',\n bindings: {},\n});\n\nconst processFileInput = (\n props: ComponentProps,\n context: FormRuleContext,\n multiple: boolean,\n) => {\n if (!props.name) return;\n\n if (props.$rule?.includes('required')) {\n context.rules[props.name] = multiple\n ? z.any().refine((val) => Array.isArray(val) && val.length > 0, {\n message: requiredMessage,\n })\n : z\n .any()\n .refine((val) => val instanceof File, { message: requiredMessage });\n } else {\n context.rules[props.name] = z.any().optional();\n }\n};\n\nconst applyRefinements = (\n schema: z.ZodObject<FieldValues>,\n context: FormRuleContext,\n) => {\n if (\n context.confirmedFields.length === 0 &&\n context.requiredBooleanFields.length === 0\n ) {\n return schema;\n }\n\n return schema.superRefine((data, ctx) => {\n context.confirmedFields.forEach(({ field, target }) => {\n if (data[field] !== data[target]) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: JSON.stringify({\n key: 'confirmed',\n fallback: 'La confirmación no coincide.',\n bindings: {},\n }),\n path: [target],\n });\n }\n });\n\n context.requiredBooleanFields.forEach((field) => {\n if (data[field] !== true) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: JSON.stringify({\n key: 'required',\n fallback: 'El campo {attribute} es obligatorio.',\n bindings: {},\n }),\n path: [field],\n });\n }\n });\n });\n};\n\nexport const extractFormRules = (\n children: React.ReactNode,\n componentTypes: React.ComponentType[],\n): ZodTypeAny => {\n const context: FormRuleContext = {\n rules: {},\n confirmedFields: [],\n requiredBooleanFields: [],\n };\n\n const components = findFormComponents(children, componentTypes);\n\n components.forEach((component) => {\n const props = component.props as ComponentProps;\n const displayName = (component.type as { displayName?: string })\n .displayName;\n\n if (props.name) {\n processConfirmedRule(props, context);\n\n if (displayName === 'Form.Checkbox') {\n processCheckbox(props, context);\n } else if (displayName === 'Form.CheckboxTree') {\n processCheckboxTree(props, context);\n } else if (displayName === 'Form.Password') {\n processPassword(props, context);\n } else if (\n displayName === 'Form.Select' ||\n displayName === 'Form.Combobox' ||\n displayName === 'Form.Autocomplete'\n ) {\n processDropdown(props, context);\n } else if (\n displayName === 'Form.DatePicker' ||\n displayName === 'Form.DateTimePicker'\n ) {\n processDatePicker(props, context);\n } else if (displayName === 'Form.FileInput') {\n processFileInput(props, context, false);\n } else if (\n displayName === 'Form.FileInputMultiple' ||\n displayName === 'Form.Dropzone' ||\n displayName === 'Form.DropzoneS3'\n ) {\n processFileInput(props, context, true);\n } else {\n processDefault(props, context);\n }\n }\n });\n\n return applyRefinements(z.object(context.rules).loose(), context);\n};\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"extract-form-rules.mjs","names":["passwordRule"],"sources":["../../../../src/components/forms/rules/extract-form-rules.ts"],"sourcesContent":["import type React from 'react';\nimport type { FieldValues } from 'react-hook-form';\nimport { type ZodTypeAny, z } from 'zod';\n\nimport type { PasswordRuleDefinition } from '@/components/controls/password-input/usePasswordRules';\n\nimport { findFormComponents } from '../controls/find-form-components';\nimport passwordRule from './password';\nimport { PASSWORD_RULES } from './password-rules';\nimport { parseRules } from './zod';\n\ntype FormRuleContext = {\n rules: Record<string, ZodTypeAny>;\n confirmedFields: { field: string; target: string }[];\n requiredBooleanFields: string[];\n};\n\ntype ComponentProps = {\n name?: string;\n $rule?: string;\n rules?: PasswordRuleDefinition[];\n};\n\nconst processConfirmedRule = (\n props: ComponentProps,\n context: FormRuleContext,\n) => {\n if (!props.name || !props.$rule?.includes('confirmed')) return;\n\n const rulesList = props.$rule.split('|');\n const confirmedRule = rulesList.find((r) => r.startsWith('confirmed'));\n const target = confirmedRule?.includes(':')\n ? confirmedRule.split(':')[1]\n : `${props.name}_confirmation`;\n\n context.confirmedFields.push({ field: props.name, target });\n};\n\nconst processCheckbox = (props: ComponentProps, context: FormRuleContext) => {\n if (!props.name) return;\n\n if (props.$rule?.includes('required')) {\n context.rules[props.name] = z.boolean().optional().or(z.literal(false));\n context.requiredBooleanFields.push(props.name);\n } else {\n context.rules[props.name] = z.boolean().optional();\n }\n};\n\nconst processCheckboxTree = (\n props: ComponentProps,\n context: FormRuleContext,\n) => {\n if (!props.name) return;\n\n if (props.$rule?.includes('required')) {\n context.rules[props.name] = z\n .any()\n .refine((val) => Array.isArray(val) && val.length > 0, {\n message: requiredMessage,\n });\n } else {\n context.rules[props.name] = z.array(z.string()).optional();\n }\n};\n\nconst processPassword = (props: ComponentProps, context: FormRuleContext) => {\n if (!props.name) return;\n\n let baseSchema: ZodTypeAny = z.string();\n const otherRules = props.$rule\n ? props.$rule\n .split('|')\n .filter((r) => r.trim() !== 'password')\n .join('|')\n : '';\n\n if (otherRules) {\n baseSchema = parseRules(otherRules);\n }\n\n const passwordRules =\n props.rules || (props.$rule?.includes('password') ? PASSWORD_RULES : []);\n\n if (passwordRules.length > 0) {\n baseSchema = passwordRule(baseSchema, passwordRules);\n }\n\n const isOptional =\n !props.$rule ||\n props.$rule.includes('optional') ||\n otherRules.includes('optional');\n\n context.rules[props.name] = isOptional ? baseSchema.optional() : baseSchema;\n};\n\nconst processDefault = (props: ComponentProps, context: FormRuleContext) => {\n if (!props.name) return;\n context.rules[props.name] = props.$rule\n ? parseRules(props.$rule)\n : z.string().optional();\n};\n\nconst processDropdown = (props: ComponentProps, context: FormRuleContext) => {\n if (!props.name) return;\n context.rules[props.name] = z.any().optional();\n};\n\nconst processDatePicker = (props: ComponentProps, context: FormRuleContext) => {\n if (!props.name) return;\n context.rules[props.name] = props.$rule\n ? parseRules(props.$rule)\n : z.string().nullable().optional();\n};\n\nconst requiredMessage = JSON.stringify({\n key: 'required',\n fallback: 'El campo {attribute} es obligatorio.',\n bindings: {},\n});\n\nconst processFileInput = (\n props: ComponentProps,\n context: FormRuleContext,\n multiple: boolean,\n) => {\n if (!props.name) return;\n\n if (props.$rule?.includes('required')) {\n context.rules[props.name] = multiple\n ? z.any().refine((val) => Array.isArray(val) && val.length > 0, {\n message: requiredMessage,\n })\n : z\n .any()\n .refine((val) => val instanceof File, { message: requiredMessage });\n } else {\n context.rules[props.name] = z.any().optional();\n }\n};\n\nconst applyRefinements = (\n schema: z.ZodObject<FieldValues>,\n context: FormRuleContext,\n) => {\n if (\n context.confirmedFields.length === 0 &&\n context.requiredBooleanFields.length === 0\n ) {\n return schema;\n }\n\n return schema.superRefine((data, ctx) => {\n context.confirmedFields.forEach(({ field, target }) => {\n if (data[field] !== data[target]) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: JSON.stringify({\n key: 'confirmed',\n fallback: 'La confirmación no coincide.',\n bindings: {},\n }),\n path: [target],\n });\n }\n });\n\n context.requiredBooleanFields.forEach((field) => {\n if (data[field] !== true) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: JSON.stringify({\n key: 'required',\n fallback: 'El campo {attribute} es obligatorio.',\n bindings: {},\n }),\n path: [field],\n });\n }\n });\n });\n};\n\nexport const extractFormRules = (\n children: React.ReactNode,\n componentTypes: React.ComponentType[],\n): ZodTypeAny => {\n const context: FormRuleContext = {\n rules: {},\n confirmedFields: [],\n requiredBooleanFields: [],\n };\n\n const components = findFormComponents(children, componentTypes);\n\n components.forEach((component) => {\n const props = component.props as ComponentProps;\n const displayName = (component.type as { displayName?: string })\n .displayName;\n\n if (props.name) {\n processConfirmedRule(props, context);\n\n if (displayName === 'Form.Checkbox') {\n processCheckbox(props, context);\n } else if (\n displayName === 'Form.CheckboxTree' ||\n displayName === 'Form.CheckboxGroup'\n ) {\n processCheckboxTree(props, context);\n } else if (displayName === 'Form.Password') {\n processPassword(props, context);\n } else if (\n displayName === 'Form.Select' ||\n displayName === 'Form.Combobox' ||\n displayName === 'Form.Autocomplete'\n ) {\n processDropdown(props, context);\n } else if (\n displayName === 'Form.DatePicker' ||\n displayName === 'Form.DateTimePicker'\n ) {\n processDatePicker(props, context);\n } else if (displayName === 'Form.FileInput') {\n processFileInput(props, context, false);\n } else if (\n displayName === 'Form.FileInputMultiple' ||\n displayName === 'Form.Dropzone' ||\n displayName === 'Form.DropzoneS3'\n ) {\n processFileInput(props, context, true);\n } else {\n processDefault(props, context);\n }\n }\n });\n\n return applyRefinements(z.object(context.rules).loose(), context);\n};\n"],"mappings":"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"}
|
|
@@ -53,6 +53,7 @@ import { AvatarUpload, AvatarUploadProps } from "./controls/avatar-upload/Avatar
|
|
|
53
53
|
import { Checkbox, CheckboxProps } from "./controls/checkbox/Checkbox.mjs";
|
|
54
54
|
import { CheckboxTree, CheckboxTreeItem, CheckboxTreeProps } from "./controls/checkbox-tree/CheckboxTree.mjs";
|
|
55
55
|
import { DatePicker, DatePickerClassNames, DatePickerDate, DatePickerProps, DatePickerValue } from "./controls/date-picker/DatePicker.mjs";
|
|
56
|
+
import { YearPicker, YearPickerClassNames, YearPickerDate, YearPickerProps, YearPickerValue } from "./controls/date-picker/YearPicker.mjs";
|
|
56
57
|
import { DateTimePicker, DateTimePickerClassNames, DateTimePickerDate, DateTimePickerProps, DateTimePickerValue } from "./controls/date-time-picker/DateTimePicker.mjs";
|
|
57
58
|
import { HorizontalDivider, HorizontalDividerProps } from "./misc/horizontal-divider/HorizontalDivider.mjs";
|
|
58
59
|
import { NoSsr } from "./misc/no-ssr/NoSsr.mjs";
|
package/dist/index.d.mts
CHANGED
|
@@ -53,6 +53,7 @@ import { AvatarUpload, AvatarUploadProps } from "./components/controls/avatar-up
|
|
|
53
53
|
import { Checkbox, CheckboxProps } from "./components/controls/checkbox/Checkbox.mjs";
|
|
54
54
|
import { CheckboxTree, CheckboxTreeItem, CheckboxTreeProps } from "./components/controls/checkbox-tree/CheckboxTree.mjs";
|
|
55
55
|
import { DatePicker, DatePickerClassNames, DatePickerDate, DatePickerProps, DatePickerValue } from "./components/controls/date-picker/DatePicker.mjs";
|
|
56
|
+
import { YearPicker, YearPickerClassNames, YearPickerDate, YearPickerProps, YearPickerValue } from "./components/controls/date-picker/YearPicker.mjs";
|
|
56
57
|
import { DateTimePicker, DateTimePickerClassNames, DateTimePickerDate, DateTimePickerProps, DateTimePickerValue } from "./components/controls/date-time-picker/DateTimePicker.mjs";
|
|
57
58
|
import { HorizontalDivider, HorizontalDividerProps } from "./components/misc/horizontal-divider/HorizontalDivider.mjs";
|
|
58
59
|
import { NoSsr } from "./components/misc/no-ssr/NoSsr.mjs";
|
|
@@ -105,4 +106,4 @@ import { Modals } from "./components/overlays/modal/index.mjs";
|
|
|
105
106
|
import { Toast, ToastIntent, ToastOptions, ToastProviderProps } from "./components/overlays/toast/Toast.mjs";
|
|
106
107
|
import { Tooltip, TooltipProps } from "./components/overlays/tooltip/Tooltip.mjs";
|
|
107
108
|
import { MageUiProvider, MageUiProviderProps } from "./providers/MageUiProvider.mjs";
|
|
108
|
-
export { Autocomplete, AutocompleteProps, Avatar, AvatarDropzone, AvatarDropzoneProps, AvatarDropzoneS3, AvatarDropzoneS3Props, AvatarProps, AvatarUpload, AvatarUploadProps, Badge, BadgeProps, Breadcrumbs, BreadcrumbsBarProps, BreadcrumbsProps, Button, ButtonAction, ButtonActionProps, ButtonIcon, ButtonIconProps, ButtonIconVisual, ButtonIconVisualProps, ButtonLoader, ButtonProps, ButtonVisual, ButtonVisualProps, Calendar, CalendarEvent, CalendarProps, CalendarView, Card, CardBase, CardBody, CardClassNames, CardFooter, CardHeader, CardProps, CardRoot, Checkbox, CheckboxProps, CheckboxTree, CheckboxTreeItem, CheckboxTreeProps, ColumnDef, Combobox, ComboboxProps, DEFAULT_DATA_TABLE_LABELS, DataTable, DataTableBottomSlot, DataTableBottomSlotProps, DataTableClassNames, DataTableColumnMeta, DataTableContextProvider, DataTableContextValue, DataTableExpansionConfig, DataTableExtraColumnConfig, DataTableFeedback, DataTableFiltersConfig, DataTableLabels, DataTablePageSize, DataTablePageSizeProps, DataTablePagination, DataTablePaginationConfig, DataTablePaginationProps, DataTableProps, DataTableRecord, DataTableSearchConfig, DataTableSelectionConfig, DataTableSortingConfig, DataTableTableConfig, DataTableTopSlot, DataTableTopSlotProps, DateLocalizer, DatePicker, DatePickerClassNames, DatePickerDate, DatePickerProps, DatePickerValue, DateTimePicker, DateTimePickerClassNames, DateTimePickerDate, DateTimePickerProps, DateTimePickerValue, DescriptionList, DescriptionListClassNames, DescriptionListItemProps, DescriptionListProps, Details, DetailsProps, DocumentItem, DocumentItemProps, Dropzone, DropzoneProps, DropzoneS3, DropzoneS3Props, DropzoneS3Texts, ExpandedState, Fieldset, FieldsetProps, FileData, FileIcon, FileIconProps, FileInput, FileInputMultiple, FileInputMultipleProps, FileInputMultipleS3, FileInputMultipleS3Handle, FileInputMultipleS3Props, FileInputProps, FileInputS3, FileInputS3Handle, FileInputS3Props, FileMetadata, FluidGrid, FluidGridProps, Form, FormDropzoneS3Props, FormProps, FormS3Context, FormS3ContextValue, Grid, GridClassNames, HorizontalDivider, HorizontalDividerProps, Icon, IconProps, IconRaw, IconRawProps, IconSvg, IconSvgProps, IconWrapped, IconWrappedProps, Indicator, IndicatorProps, LoaderDot, LoaderDotProps, LoaderOval, LoaderOvalProps, LogoImage, LogoImageProps, LogoSvg, LogoSvgProps, MageUiProvider, MageUiProviderProps, Menu, MenuProps, Modal, ModalClassNames, ModalIntent, ModalProps, ModalRegistry, ModalRegistryEntry, ModalRootProps, Modals, MultiForm, MultiFormContext, MultiFormContextValue, MultiFormProps, MultiFormStep, MultiFormStepProps, MultiStepFormProps, NavigationMenu, NavigationMenuProps, NoSsr, NotificationBanner, NotificationBannerIntent, NotificationBannerProps, PASSWORD_RULES, Pagination, PaginationClassNames, PaginationRootProps, PaginationState, PasswordInput, PasswordInputProps, PasswordRule, PasswordRuleDefinition, PasswordSegment, PasswordStrengthInput, PasswordStrengthInputProps, Progress, ProgressClassNames, ProgressProps, Radio, RadioProps, RemovableItem, RemovableItemProps, RequestResponse, ResourceItem, ResourceItemProps, RowSelectionState, S3FileMeta, S3InitBody, S3InitResponse, S3UploadCallback, Schema, SchemaProps, ScrollArea, ScrollAreaAutosize, ScrollAreaAutosizeProps, ScrollAreaClassNames, ScrollAreaProps, Select, SelectProps, Sidebar, SidebarClassNames, SidebarProps, SortingState, Stepper, StepperClassNames, StepperProps, StepperStepProps, Switch, SwitchGroup, SwitchGroupProps, SwitchProps, Table, TableBodyProps, TableCaptionProps, TableCellProps, TableClassNames, TableFootProps, TableHeadProps, TableHeaderCellProps, TableProps, TableRowProps, Tag, TagGroup, TagGroupProps, TagProps, TextInput, TextInputProps, Textarea, TextareaProps, Toast, ToastIntent, ToastOptions, ToastProviderProps, Tooltip, TooltipProps, UploadTarget, UploadedFile, UploadedFileDetails, UploadedFileDetailsProps, UploadedFileProps, UploadedFiles, UploadedFilesClassNames, UploadedFilesItemClassNames, UploadedFilesItemProps, UploadedFilesProps, UploadedS3File, UploadingFiles, UploadingFilesClassNames, UploadingFilesItemClassNames, UploadingFilesItemErrorClassNames, UploadingFilesItemErrorProps, UploadingFilesItemProps, UploadingFilesProps, Virtual, VirtualItem, VirtualPadding, VirtualProps, VisuallyHidden, VisuallyHiddenProps, getFileExtension, useDataTableContext, useFormS3Context, useMultiFormContext, usePasswordRules, z };
|
|
109
|
+
export { Autocomplete, AutocompleteProps, Avatar, AvatarDropzone, AvatarDropzoneProps, AvatarDropzoneS3, AvatarDropzoneS3Props, AvatarProps, AvatarUpload, AvatarUploadProps, Badge, BadgeProps, Breadcrumbs, BreadcrumbsBarProps, BreadcrumbsProps, Button, ButtonAction, ButtonActionProps, ButtonIcon, ButtonIconProps, ButtonIconVisual, ButtonIconVisualProps, ButtonLoader, ButtonProps, ButtonVisual, ButtonVisualProps, Calendar, CalendarEvent, CalendarProps, CalendarView, Card, CardBase, CardBody, CardClassNames, CardFooter, CardHeader, CardProps, CardRoot, Checkbox, CheckboxProps, CheckboxTree, CheckboxTreeItem, CheckboxTreeProps, ColumnDef, Combobox, ComboboxProps, DEFAULT_DATA_TABLE_LABELS, DataTable, DataTableBottomSlot, DataTableBottomSlotProps, DataTableClassNames, DataTableColumnMeta, DataTableContextProvider, DataTableContextValue, DataTableExpansionConfig, DataTableExtraColumnConfig, DataTableFeedback, DataTableFiltersConfig, DataTableLabels, DataTablePageSize, DataTablePageSizeProps, DataTablePagination, DataTablePaginationConfig, DataTablePaginationProps, DataTableProps, DataTableRecord, DataTableSearchConfig, DataTableSelectionConfig, DataTableSortingConfig, DataTableTableConfig, DataTableTopSlot, DataTableTopSlotProps, DateLocalizer, DatePicker, DatePickerClassNames, DatePickerDate, DatePickerProps, DatePickerValue, DateTimePicker, DateTimePickerClassNames, DateTimePickerDate, DateTimePickerProps, DateTimePickerValue, DescriptionList, DescriptionListClassNames, DescriptionListItemProps, DescriptionListProps, Details, DetailsProps, DocumentItem, DocumentItemProps, Dropzone, DropzoneProps, DropzoneS3, DropzoneS3Props, DropzoneS3Texts, ExpandedState, Fieldset, FieldsetProps, FileData, FileIcon, FileIconProps, FileInput, FileInputMultiple, FileInputMultipleProps, FileInputMultipleS3, FileInputMultipleS3Handle, FileInputMultipleS3Props, FileInputProps, FileInputS3, FileInputS3Handle, FileInputS3Props, FileMetadata, FluidGrid, FluidGridProps, Form, FormDropzoneS3Props, FormProps, FormS3Context, FormS3ContextValue, Grid, GridClassNames, HorizontalDivider, HorizontalDividerProps, Icon, IconProps, IconRaw, IconRawProps, IconSvg, IconSvgProps, IconWrapped, IconWrappedProps, Indicator, IndicatorProps, LoaderDot, LoaderDotProps, LoaderOval, LoaderOvalProps, LogoImage, LogoImageProps, LogoSvg, LogoSvgProps, MageUiProvider, MageUiProviderProps, Menu, MenuProps, Modal, ModalClassNames, ModalIntent, ModalProps, ModalRegistry, ModalRegistryEntry, ModalRootProps, Modals, MultiForm, MultiFormContext, MultiFormContextValue, MultiFormProps, MultiFormStep, MultiFormStepProps, MultiStepFormProps, NavigationMenu, NavigationMenuProps, NoSsr, NotificationBanner, NotificationBannerIntent, NotificationBannerProps, PASSWORD_RULES, Pagination, PaginationClassNames, PaginationRootProps, PaginationState, PasswordInput, PasswordInputProps, PasswordRule, PasswordRuleDefinition, PasswordSegment, PasswordStrengthInput, PasswordStrengthInputProps, Progress, ProgressClassNames, ProgressProps, Radio, RadioProps, RemovableItem, RemovableItemProps, RequestResponse, ResourceItem, ResourceItemProps, RowSelectionState, S3FileMeta, S3InitBody, S3InitResponse, S3UploadCallback, Schema, SchemaProps, ScrollArea, ScrollAreaAutosize, ScrollAreaAutosizeProps, ScrollAreaClassNames, ScrollAreaProps, Select, SelectProps, Sidebar, SidebarClassNames, SidebarProps, SortingState, Stepper, StepperClassNames, StepperProps, StepperStepProps, Switch, SwitchGroup, SwitchGroupProps, SwitchProps, Table, TableBodyProps, TableCaptionProps, TableCellProps, TableClassNames, TableFootProps, TableHeadProps, TableHeaderCellProps, TableProps, TableRowProps, Tag, TagGroup, TagGroupProps, TagProps, TextInput, TextInputProps, Textarea, TextareaProps, Toast, ToastIntent, ToastOptions, ToastProviderProps, Tooltip, TooltipProps, UploadTarget, UploadedFile, UploadedFileDetails, UploadedFileDetailsProps, UploadedFileProps, UploadedFiles, UploadedFilesClassNames, UploadedFilesItemClassNames, UploadedFilesItemProps, UploadedFilesProps, UploadedS3File, UploadingFiles, UploadingFilesClassNames, UploadingFilesItemClassNames, UploadingFilesItemErrorClassNames, UploadingFilesItemErrorProps, UploadingFilesItemProps, UploadingFilesProps, Virtual, VirtualItem, VirtualPadding, VirtualProps, VisuallyHidden, VisuallyHiddenProps, YearPicker, YearPickerClassNames, YearPickerDate, YearPickerProps, YearPickerValue, getFileExtension, useDataTableContext, useFormS3Context, useMultiFormContext, usePasswordRules, z };
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Button as e}from"./components/buttons/button/Button.mjs";import{VisuallyHidden as t}from"./components/misc/visually-hidden/VisuallyHidden.mjs";import{ButtonAction as n}from"./components/buttons/button-action/ButtonAction.mjs";import{ButtonLoader as r}from"./components/buttons/button-action/ButtonLoader.mjs";import{Avatar as i}from"./components/data-display/avatar/Avatar.mjs";import{Badge as a}from"./components/data-display/badge/Badge.mjs";import{Tooltip as o}from"./components/overlays/tooltip/Tooltip.mjs";import{Calendar as s}from"./components/data-display/calendar/Calendar.mjs";import{Virtual as c}from"./components/misc/virtual/Virtual.mjs";import{ScrollArea as l}from"./components/misc/scroll-area/ScrollArea.mjs";import{Table as u}from"./components/data-display/table/Table.mjs";import{IconRaw as d}from"./components/data-display/icons/icon-raw/IconRaw.mjs";import{Icon as f}from"./components/data-display/icons/icon/Icon.mjs";import{DEFAULT_DATA_TABLE_LABELS as p,DataTableContextProvider as m,useDataTableContext as h}from"./components/data-display/datatables/useDataTableContext.mjs";import{Checkbox as g}from"./components/controls/checkbox/Checkbox.mjs";import{DataTable as _}from"./components/data-display/datatables/DataTable.mjs";import{HorizontalDivider as v}from"./components/misc/horizontal-divider/HorizontalDivider.mjs";import{NoSsr as y}from"./components/misc/no-ssr/NoSsr.mjs";import{ScrollAreaAutosize as b}from"./components/misc/scroll-area-autosize/ScrollAreaAutosize.mjs";import{TextInput as x}from"./components/controls/text-input/TextInput.mjs";import{IconWrapped as S}from"./components/data-display/icons/icon-wrapped/IconWrapped.mjs";import{Select as C}from"./components/controls/dropdown/select/Select.mjs";import{DataTablePageSize as w}from"./components/data-display/datatables/DataTablePageSize.mjs";import{Pagination as T}from"./components/navigations/pagination/Pagination.mjs";import{DataTablePagination as E}from"./components/data-display/datatables/DataTablePagination.mjs";import{DataTableBottomSlot as D}from"./components/data-display/datatables/DataTableBottomSlot.mjs";import{DataTableFeedback as O}from"./components/data-display/datatables/DataTableFeedback.mjs";import{DataTableTopSlot as k}from"./components/data-display/datatables/DataTableTopSlot.mjs";import{DescriptionList as A}from"./components/data-display/description-list/DescriptionList.mjs";import{Details as j}from"./components/data-display/details/Details.mjs";import{FileIcon as M}from"./components/data-display/file-icon/FileIcon.mjs";import{ResourceItem as N}from"./components/data-display/resource-item/ResourceItem.mjs";import{DocumentItem as P}from"./components/data-display/document-item/DocumentItem.mjs";import{IconSvg as F}from"./components/data-display/icons/icon-svg/IconSvg.mjs";import{Indicator as I}from"./components/data-display/indicator/Indicator.mjs";import{LoaderDot as L}from"./components/data-display/loader-dot/LoaderDot.mjs";import{LoaderOval as R}from"./components/data-display/loader-oval/LoaderOval.mjs";import{LogoImage as z}from"./components/data-display/logos/logo-image/LogoImage.mjs";import{LogoSvg as B}from"./components/data-display/logos/logo-svg/LogoSvg.mjs";import{NotificationBanner as V}from"./components/data-display/notification-banner/NotificationBanner.mjs";import{Progress as H}from"./components/data-display/progress/Progress.mjs";import{RemovableItem as U}from"./components/data-display/removable-item/RemovableItem.mjs";import{TagGroup as W}from"./components/data-display/tag-group/TagGroup.mjs";import{Tag as G}from"./components/data-display/tag/Tag.mjs";import{UploadedFile as K}from"./components/data-display/uploaded-file/UploadedFile.mjs";import{UploadedFileDetails as q}from"./components/data-display/uploaded-file/UploadedFileDetails.mjs";import{UploadedFiles as J}from"./components/data-display/uploaded-files/UploadedFiles.mjs";import{UploadingFiles as Y}from"./components/data-display/uploading-files/UploadingFiles.mjs";import{ButtonIcon as X}from"./components/buttons/button-icon/ButtonIcon.mjs";import{ButtonIconVisual as Z}from"./components/buttons/button-icon-visual/ButtonIconVisual.mjs";import{ButtonVisual as Q}from"./components/buttons/button-visual/ButtonVisual.mjs";import{Modal as $}from"./components/overlays/modal/Modal.mjs";import{Modals as ee}from"./components/overlays/modal/index.mjs";import{Toast as te}from"./components/overlays/toast/Toast.mjs";import{AvatarUpload as ne}from"./components/controls/avatar-upload/AvatarUpload.mjs";import{CheckboxTree as re}from"./components/controls/checkbox-tree/CheckboxTree.mjs";import{DatePicker as ie}from"./components/controls/date-picker/DatePicker.mjs";import{
|
|
1
|
+
import{Button as e}from"./components/buttons/button/Button.mjs";import{VisuallyHidden as t}from"./components/misc/visually-hidden/VisuallyHidden.mjs";import{ButtonAction as n}from"./components/buttons/button-action/ButtonAction.mjs";import{ButtonLoader as r}from"./components/buttons/button-action/ButtonLoader.mjs";import{Avatar as i}from"./components/data-display/avatar/Avatar.mjs";import{Badge as a}from"./components/data-display/badge/Badge.mjs";import{Tooltip as o}from"./components/overlays/tooltip/Tooltip.mjs";import{Calendar as s}from"./components/data-display/calendar/Calendar.mjs";import{Virtual as c}from"./components/misc/virtual/Virtual.mjs";import{ScrollArea as l}from"./components/misc/scroll-area/ScrollArea.mjs";import{Table as u}from"./components/data-display/table/Table.mjs";import{IconRaw as d}from"./components/data-display/icons/icon-raw/IconRaw.mjs";import{Icon as f}from"./components/data-display/icons/icon/Icon.mjs";import{DEFAULT_DATA_TABLE_LABELS as p,DataTableContextProvider as m,useDataTableContext as h}from"./components/data-display/datatables/useDataTableContext.mjs";import{Checkbox as g}from"./components/controls/checkbox/Checkbox.mjs";import{DataTable as _}from"./components/data-display/datatables/DataTable.mjs";import{HorizontalDivider as v}from"./components/misc/horizontal-divider/HorizontalDivider.mjs";import{NoSsr as y}from"./components/misc/no-ssr/NoSsr.mjs";import{ScrollAreaAutosize as b}from"./components/misc/scroll-area-autosize/ScrollAreaAutosize.mjs";import{TextInput as x}from"./components/controls/text-input/TextInput.mjs";import{IconWrapped as S}from"./components/data-display/icons/icon-wrapped/IconWrapped.mjs";import{Select as C}from"./components/controls/dropdown/select/Select.mjs";import{DataTablePageSize as w}from"./components/data-display/datatables/DataTablePageSize.mjs";import{Pagination as T}from"./components/navigations/pagination/Pagination.mjs";import{DataTablePagination as E}from"./components/data-display/datatables/DataTablePagination.mjs";import{DataTableBottomSlot as D}from"./components/data-display/datatables/DataTableBottomSlot.mjs";import{DataTableFeedback as O}from"./components/data-display/datatables/DataTableFeedback.mjs";import{DataTableTopSlot as k}from"./components/data-display/datatables/DataTableTopSlot.mjs";import{DescriptionList as A}from"./components/data-display/description-list/DescriptionList.mjs";import{Details as j}from"./components/data-display/details/Details.mjs";import{FileIcon as M}from"./components/data-display/file-icon/FileIcon.mjs";import{ResourceItem as N}from"./components/data-display/resource-item/ResourceItem.mjs";import{DocumentItem as P}from"./components/data-display/document-item/DocumentItem.mjs";import{IconSvg as F}from"./components/data-display/icons/icon-svg/IconSvg.mjs";import{Indicator as I}from"./components/data-display/indicator/Indicator.mjs";import{LoaderDot as L}from"./components/data-display/loader-dot/LoaderDot.mjs";import{LoaderOval as R}from"./components/data-display/loader-oval/LoaderOval.mjs";import{LogoImage as z}from"./components/data-display/logos/logo-image/LogoImage.mjs";import{LogoSvg as B}from"./components/data-display/logos/logo-svg/LogoSvg.mjs";import{NotificationBanner as V}from"./components/data-display/notification-banner/NotificationBanner.mjs";import{Progress as H}from"./components/data-display/progress/Progress.mjs";import{RemovableItem as U}from"./components/data-display/removable-item/RemovableItem.mjs";import{TagGroup as W}from"./components/data-display/tag-group/TagGroup.mjs";import{Tag as G}from"./components/data-display/tag/Tag.mjs";import{UploadedFile as K}from"./components/data-display/uploaded-file/UploadedFile.mjs";import{UploadedFileDetails as q}from"./components/data-display/uploaded-file/UploadedFileDetails.mjs";import{UploadedFiles as J}from"./components/data-display/uploaded-files/UploadedFiles.mjs";import{UploadingFiles as Y}from"./components/data-display/uploading-files/UploadingFiles.mjs";import{ButtonIcon as X}from"./components/buttons/button-icon/ButtonIcon.mjs";import{ButtonIconVisual as Z}from"./components/buttons/button-icon-visual/ButtonIconVisual.mjs";import{ButtonVisual as Q}from"./components/buttons/button-visual/ButtonVisual.mjs";import{Modal as $}from"./components/overlays/modal/Modal.mjs";import{Modals as ee}from"./components/overlays/modal/index.mjs";import{Toast as te}from"./components/overlays/toast/Toast.mjs";import{AvatarUpload as ne}from"./components/controls/avatar-upload/AvatarUpload.mjs";import{CheckboxTree as re}from"./components/controls/checkbox-tree/CheckboxTree.mjs";import{DatePicker as ie}from"./components/controls/date-picker/DatePicker.mjs";import{YearPicker as ae}from"./components/controls/date-picker/YearPicker.mjs";import{DateTimePicker as oe}from"./components/controls/date-time-picker/DateTimePicker.mjs";import{Autocomplete as se}from"./components/controls/dropdown/autocomplete/Autocomplete.mjs";import{Combobox as ce}from"./components/controls/dropdown/combobox/Combobox.mjs";import{AvatarDropzone as le}from"./components/controls/dropzone/avatar/AvatarDropzone.mjs";import{getFileExtension as ue}from"./components/controls/dropzone/use-s3-upload.mjs";import{AvatarDropzoneS3 as de}from"./components/controls/dropzone/avatar/AvatarDropzoneS3.mjs";import{Dropzone as fe}from"./components/controls/dropzone/Dropzone.mjs";import{DropzoneS3 as pe}from"./components/controls/dropzone/DropzoneS3.mjs";import{FileInput as me}from"./components/controls/file-input/FileInput.mjs";import{FileInputMultiple as he}from"./components/controls/file-input/FileInputMultiple.mjs";import{FileInputMultipleS3 as ge}from"./components/controls/file-input/FileInputMultipleS3.mjs";import{FileInputS3 as _e}from"./components/controls/file-input/FileInputS3.mjs";import{PasswordInput as ve}from"./components/controls/password-input/PasswordInput.mjs";import{PasswordStrengthInput as ye}from"./components/controls/password-input/PasswordStrengthInput.mjs";import{usePasswordRules as be}from"./components/controls/password-input/usePasswordRules.mjs";import{Radio as xe}from"./components/controls/radio/Radio.mjs";import{SwitchGroup as Se}from"./components/controls/switch-group/SwitchGroup.mjs";import{Switch as Ce}from"./components/controls/switch/Switch.mjs";import{Textarea as we}from"./components/controls/textarea/Textarea.mjs";import{FormS3Context as Te,useFormS3Context as Ee}from"./components/forms/FormS3Context.mjs";import{PASSWORD_RULES as De}from"./components/forms/rules/password-rules.mjs";import{z as Oe}from"./components/forms/rules/zod.mjs";import{Form as ke}from"./components/forms/Form.mjs";import{Fieldset as Ae}from"./components/forms/layout/Fieldset.mjs";import{Stepper as je}from"./components/navigations/stepper/Stepper.mjs";import{MultiFormContext as Me,useMultiFormContext as Ne}from"./components/forms/multi-step/MultiFormContext.mjs";import{Schema as Pe}from"./components/forms/multi-step/parser/Schema.mjs";import{MultiForm as Fe,MultiFormStep as Ie}from"./components/forms/multi-step/MultiForm.mjs";import{Card as Le,CardBase as Re,CardBody as ze,CardFooter as Be,CardHeader as Ve,CardRoot as He}from"./components/layouts/card/Card.mjs";import{FluidGrid as Ue}from"./components/layouts/fluid-grid/FluidGrid.mjs";import{Grid as We}from"./components/layouts/grid/Grid.mjs";import{Breadcrumbs as Ge}from"./components/navigations/breadcrumbs/Breadcrumbs.mjs";import{Menu as Ke}from"./components/navigations/menu/Menu.mjs";import{NavigationMenu as qe}from"./components/navigations/navigation-menu/NavigationMenu.mjs";import{Sidebar as Je}from"./components/navigations/sidebars/sidebar/Sidebar.mjs";import{MageUiProvider as Ye}from"./providers/MageUiProvider.mjs";export{se as Autocomplete,i as Avatar,le as AvatarDropzone,de as AvatarDropzoneS3,ne as AvatarUpload,a as Badge,Ge as Breadcrumbs,e as Button,n as ButtonAction,X as ButtonIcon,Z as ButtonIconVisual,r as ButtonLoader,Q as ButtonVisual,s as Calendar,Le as Card,Re as CardBase,ze as CardBody,Be as CardFooter,Ve as CardHeader,He as CardRoot,g as Checkbox,re as CheckboxTree,ce as Combobox,p as DEFAULT_DATA_TABLE_LABELS,_ as DataTable,D as DataTableBottomSlot,m as DataTableContextProvider,O as DataTableFeedback,w as DataTablePageSize,E as DataTablePagination,k as DataTableTopSlot,ie as DatePicker,oe as DateTimePicker,A as DescriptionList,j as Details,P as DocumentItem,fe as Dropzone,pe as DropzoneS3,Ae as Fieldset,M as FileIcon,me as FileInput,he as FileInputMultiple,ge as FileInputMultipleS3,_e as FileInputS3,Ue as FluidGrid,ke as Form,Te as FormS3Context,We as Grid,v as HorizontalDivider,f as Icon,d as IconRaw,F as IconSvg,S as IconWrapped,I as Indicator,L as LoaderDot,R as LoaderOval,z as LogoImage,B as LogoSvg,Ye as MageUiProvider,Ke as Menu,$ as Modal,ee as Modals,Fe as MultiForm,Me as MultiFormContext,Ie as MultiFormStep,qe as NavigationMenu,y as NoSsr,V as NotificationBanner,De as PASSWORD_RULES,T as Pagination,ve as PasswordInput,ye as PasswordStrengthInput,H as Progress,xe as Radio,U as RemovableItem,N as ResourceItem,Pe as Schema,l as ScrollArea,b as ScrollAreaAutosize,C as Select,Je as Sidebar,je as Stepper,Ce as Switch,Se as SwitchGroup,u as Table,G as Tag,W as TagGroup,x as TextInput,we as Textarea,te as Toast,o as Tooltip,K as UploadedFile,q as UploadedFileDetails,J as UploadedFiles,Y as UploadingFiles,c as Virtual,t as VisuallyHidden,ae as YearPicker,ue as getFileExtension,h as useDataTableContext,Ee as useFormS3Context,Ne as useMultiFormContext,be as usePasswordRules,Oe as z};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mage-ui/components",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.171",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "",
|
|
6
6
|
"keywords": [],
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"rimraf": "^6.1.3",
|
|
26
26
|
"tsdown": "^0.21.4",
|
|
27
27
|
"typescript": "^5.9.3",
|
|
28
|
-
"@mage-ui/preset": "1.0.
|
|
28
|
+
"@mage-ui/preset": "1.0.171",
|
|
29
29
|
"@mage-ui/styled-system": "1.0.8"
|
|
30
30
|
},
|
|
31
31
|
"peerDependencies": {
|