x-ui-design 0.2.10 → 0.2.11

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.
@@ -1,3 +1,3 @@
1
- import { ButtonProps } from 'lib/types/button';
1
+ import { ButtonProps } from '../../types/button';
2
2
  declare const ButtonClient: (props: ButtonProps) => import("react/jsx-runtime").JSX.Element;
3
3
  export default ButtonClient;
@@ -1,5 +1,5 @@
1
1
  import { ReactElement, ReactNode } from 'react';
2
- import { ButtonProps } from 'lib/types/button';
2
+ import { ButtonProps } from '../../types/button';
3
3
  import './style.css';
4
4
  declare const Button: ({ type, variant, color, shape, size, htmlType, className, rootClassName, classNames: customClassNames, styles, prefixCls, iconPosition, disabled, ghost, danger, block, children, href, iconNode, isLoading, ...restProps }: ButtonProps & {
5
5
  iconNode?: ReactNode;
@@ -1,8 +1,8 @@
1
1
  import { MouseEvent } from 'react';
2
2
  import './style.css';
3
- declare const CheckboxClient: import("react").ForwardRefExoticComponent<import("lib/types").DefaultProps & {
3
+ declare const CheckboxClient: import("react").ForwardRefExoticComponent<import("../../types").DefaultProps & {
4
4
  disabled?: boolean;
5
- onChange?: (e: MouseEvent<HTMLInputElement> & import("lib/types").TargetProps) => void;
5
+ onChange?: (e: MouseEvent<HTMLInputElement> & import("../../types").TargetProps) => void;
6
6
  onClick?: import("react").MouseEventHandler<HTMLElement>;
7
7
  onMouseEnter?: import("react").MouseEventHandler<HTMLElement>;
8
8
  onMouseLeave?: import("react").MouseEventHandler<HTMLElement>;
@@ -1,5 +1,5 @@
1
1
  import { ReactElement } from 'react';
2
- import { CheckboxProps } from 'lib/types/checkbox';
2
+ import { CheckboxProps } from '../../types/checkbox';
3
3
  declare const Checkbox: {
4
4
  ({ prefixCls, className, defaultChecked, checked, style, disabled, onChange, onClick, onMouseEnter, onMouseLeave, onKeyPress, onKeyDown, tabIndex, name, children, id, autoFocus, type, value, required, noStyle }: CheckboxProps): ReactElement;
5
5
  displayName: string;
@@ -1,4 +1,4 @@
1
- import { EmptyContentProps } from 'lib/types/empty';
1
+ import { EmptyContentProps } from '../../types/empty';
2
2
  import './style.css';
3
3
  declare const EmptyContent: ({ icon, style, className, title, description, prefixCls }: EmptyContentProps) => import("react/jsx-runtime").JSX.Element;
4
4
  export default EmptyContent;
@@ -1,4 +1,4 @@
1
- import { FormItemProps } from 'lib/types/form';
1
+ import { FormItemProps } from '../../../types/form';
2
2
  import './style.css';
3
3
  declare const FormItem: {
4
4
  ({ prefixCls, name, label, rules, children, className, layout, style, valuePropName, dependencies, initialValue, feedbackIcons, ...props }: FormItemProps): import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,4 @@
1
- import { RuleTypes } from 'lib/types';
2
- import type { FieldData, FormInstance } from 'lib/types/form';
1
+ import { RuleTypes } from '../types';
2
+ import type { FieldData, FormInstance } from '../types/form';
3
3
  declare const useForm: (initialValues?: Record<string, RuleTypes>, onFieldsChange?: (changedFields: FieldData[]) => void, onValuesChange?: (changedValues: Record<string, RuleTypes>, allValues: Record<string, RuleTypes>) => void) => FormInstance;
4
4
  export { useForm };
@@ -1,5 +1,5 @@
1
- import { RuleType } from 'lib/types';
2
- import { FormInstance } from 'lib/types/form';
1
+ import { RuleType } from '../types';
2
+ import { FormInstance } from '../types/form';
3
3
  type UseWatchProps = {
4
4
  name?: string;
5
5
  defaultValue?: RuleType;
package/dist/index.d.ts CHANGED
@@ -1,23 +1,150 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { EmptyContentProps } from 'lib/types/empty';
3
- import { ReactNode, ReactElement } from 'react';
4
- import { ButtonProps } from 'lib/types/button';
5
- import { CheckboxProps } from 'lib/types/checkbox';
6
- import { RuleTypes, RuleType } from 'lib/types';
7
- import { FieldData, FormInstance } from 'lib/types/form';
2
+ import { CSSProperties, ReactNode, ButtonHTMLAttributes, ReactElement, MouseEvent, MouseEventHandler, KeyboardEventHandler } from 'react';
3
+
4
+ type RuleType = any;
5
+ type RuleTypes = RuleType | RuleType[];
6
+ interface DefaultProps {
7
+ prefixCls?: string;
8
+ className?: string;
9
+ style?: CSSProperties;
10
+ noStyle?: boolean;
11
+ }
12
+ type TargetProps = {
13
+ target: {
14
+ value: RuleType;
15
+ };
16
+ };
17
+
18
+ type EmptyContentProps = DefaultProps & {
19
+ title?: string;
20
+ description?: string;
21
+ icon?: ReactNode;
22
+ };
8
23
 
9
24
  declare const EmptyContent: ({ icon, style, className, title, description, prefixCls }: EmptyContentProps) => react_jsx_runtime.JSX.Element;
10
25
 
26
+ declare const ButtonTypes: readonly ["default", "primary", "dashed", "link", "text", "ghost"];
27
+ declare const ButtonShapes: readonly ["default", "circle", "round"];
28
+ declare const ButtonVariantTypes: readonly ["outlined", "dashed", "solid", "filled", "text", "link"];
29
+ declare const ButtonColorTypes: readonly ["default", "primary", "danger", "blue", "purple", "cyan", "green", "magenta", "pink", "red", "orange", "yellow", "volcano", "geekblue", "lime", "gold"];
30
+ type ButtonType = (typeof ButtonTypes)[number];
31
+ type ButtonShape = (typeof ButtonShapes)[number];
32
+ type ButtonVariantType = (typeof ButtonVariantTypes)[number];
33
+ type ButtonColorType = (typeof ButtonColorTypes)[number];
34
+ type SizeType = 'small' | 'middle' | 'large' | undefined;
35
+ type ButtonHTMLType = 'button' | 'submit' | 'reset';
36
+ interface BaseButtonProps {
37
+ type?: ButtonType;
38
+ color?: ButtonColorType;
39
+ variant?: ButtonVariantType;
40
+ icon?: ReactNode;
41
+ iconPosition?: 'start' | 'end';
42
+ shape?: ButtonShape;
43
+ size?: SizeType;
44
+ disabled?: boolean;
45
+ loading?: boolean | {
46
+ delay?: number;
47
+ icon?: ReactNode;
48
+ };
49
+ prefixCls?: string;
50
+ className?: string;
51
+ rootClassName?: string;
52
+ ghost?: boolean;
53
+ danger?: boolean;
54
+ block?: boolean;
55
+ children?: ReactNode;
56
+ classNames?: {
57
+ icon?: string;
58
+ };
59
+ styles?: {
60
+ icon?: CSSProperties;
61
+ };
62
+ }
63
+ interface ButtonProps extends BaseButtonProps, Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'color' | 'type'> {
64
+ href?: string;
65
+ htmlType?: ButtonHTMLType;
66
+ }
67
+
11
68
  declare const Button: ({ type, variant, color, shape, size, htmlType, className, rootClassName, classNames: customClassNames, styles, prefixCls, iconPosition, disabled, ghost, danger, block, children, href, iconNode, isLoading, ...restProps }: ButtonProps & {
12
69
  iconNode?: ReactNode;
13
70
  isLoading?: boolean;
14
71
  }) => ReactElement;
15
72
 
73
+ type CheckboxProps = DefaultProps & {
74
+ disabled?: boolean;
75
+ onChange?: (e: MouseEvent<HTMLInputElement> & TargetProps) => void;
76
+ onClick?: MouseEventHandler<HTMLElement>;
77
+ onMouseEnter?: MouseEventHandler<HTMLElement>;
78
+ onMouseLeave?: MouseEventHandler<HTMLElement>;
79
+ onKeyPress?: KeyboardEventHandler<HTMLElement>;
80
+ onKeyDown?: KeyboardEventHandler<HTMLElement>;
81
+ value?: boolean;
82
+ tabIndex?: number;
83
+ name?: string;
84
+ children?: ReactNode;
85
+ id?: string;
86
+ autoFocus?: boolean;
87
+ type?: string;
88
+ skipGroup?: boolean;
89
+ required?: boolean;
90
+ defaultChecked?: boolean;
91
+ checked?: boolean;
92
+ };
93
+
16
94
  declare const Checkbox: {
17
95
  ({ prefixCls, className, defaultChecked, checked, style, disabled, onChange, onClick, onMouseEnter, onMouseLeave, onKeyPress, onKeyDown, tabIndex, name, children, id, autoFocus, type, value, required, noStyle }: CheckboxProps): ReactElement;
18
96
  displayName: string;
19
97
  };
20
98
 
99
+ type RuleRender = (form: FormInstance) => RuleObject;
100
+ type RuleObject = RuleRender | {
101
+ required?: boolean;
102
+ message?: string;
103
+ pattern?: RegExp;
104
+ min?: number;
105
+ max?: number;
106
+ warningPattern?: RegExp;
107
+ warningMessage?: string;
108
+ validator?: (rule: RuleObject, value: RuleTypes, callback: (error?: string) => void) => Promise<void> | void;
109
+ };
110
+ interface FieldData {
111
+ name: string | string[];
112
+ value?: RuleTypes;
113
+ errors?: string[];
114
+ }
115
+ type FieldInstancesInputRef = HTMLInputElement | null;
116
+ type FieldInstancesRef = {
117
+ input?: FieldInstancesInputRef;
118
+ };
119
+ interface FieldError {
120
+ name: string;
121
+ errors: string[];
122
+ }
123
+ interface FormInstance {
124
+ submit: () => Promise<Record<string, RuleTypes> | undefined>;
125
+ setFields: (fields: FieldData[]) => void;
126
+ resetFields: (nameList?: string[]) => void;
127
+ getFieldError: (name: string) => string[];
128
+ registerField: (name: string, rules?: RuleObject[]) => void;
129
+ setFieldValue: (name: string, value: RuleTypes) => void;
130
+ getFieldValue: (name: string) => RuleTypes;
131
+ validateFields: (nameList?: string[]) => Promise<boolean>;
132
+ setFieldsValue: (values: Partial<Record<string, RuleTypes>>) => void;
133
+ getFieldsValue: (nameList?: string[]) => Record<string, RuleTypes>;
134
+ isFieldTouched: (name: string) => boolean;
135
+ getFieldsError: () => Pick<FieldError, 'errors' | 'name'>[];
136
+ isFieldsTouched: (nameList?: string[], allFieldsTouched?: boolean) => boolean;
137
+ getFieldWarning: (name: string) => string[];
138
+ subscribeToField: (name: string, callback: (value: RuleTypes) => void) => () => void;
139
+ subscribeToForm: (callback: (values: Record<string, RuleTypes>) => void) => () => void;
140
+ subscribeToFields: (names: string[], callback: (values: Record<string, RuleTypes>) => void) => () => void;
141
+ isFieldValidating: (name: string) => boolean;
142
+ onFieldsChange?: (changedFields: FieldData[]) => void;
143
+ onValuesChange?: (changedValues: Record<string, RuleTypes>, allValues: Record<string, RuleTypes>) => void;
144
+ getFieldInstance: (fieldName: string) => FieldInstancesRef;
145
+ isReseting: boolean;
146
+ }
147
+
21
148
  declare const useForm: (initialValues?: Record<string, RuleTypes>, onFieldsChange?: (changedFields: FieldData[]) => void, onValuesChange?: (changedValues: Record<string, RuleTypes>, allValues: Record<string, RuleTypes>) => void) => FormInstance;
22
149
 
23
150
  type UseWatchProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../lib/utils/index.ts","../lib/components/Empty/Empty.tsx","../lib/helpers/index.ts","../lib/components/Button/Button.tsx","../lib/components/Checkbox/Checkbox.client.tsx","../lib/components/Checkbox/Checkbox.tsx","../lib/hooks/useForm.ts","../lib/components/Form/Item/Item.tsx","../lib/components/Form/Form.tsx","../lib/hooks/useWatch.ts"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","export const prefixClsForm = 'xUi-form';\nexport const prefixClsFormItem = 'xUi-form-item';\nexport const prefixClsEmpty = 'xUi-empty';\nexport const prefixClsInput = 'xUi-input';\nexport const prefixClsSelect = 'xUi-select';\nexport const prefixClsCheckbox = 'xUi-checkbox';\nexport const prefixClsRadio = 'xUi-radio';\nexport const prefixClsTextArea = 'xUi-textarea';\nexport const prefixClsUpload = 'xUi-upload';\nexport const prefixClsDatePicker = 'xUi-datepicker';\nexport const prefixClsRangePicker = 'xUi-rangepicker';\nexport const prefixClsTimePicker = 'xUi-timepicker';\nexport const prefixClsButton = 'xUi-button';\nexport const prefixClsSkeleton = 'xUi-skeleton';\n","import { EmptyContentProps } from 'lib/types/empty';\nimport { prefixClsEmpty } from 'lib/utils';\nimport './style.css';\n\nconst EmptyContent = ({\n icon,\n style = {},\n className = '',\n title = 'No Data',\n description = 'No data',\n prefixCls = prefixClsEmpty\n}: EmptyContentProps) => (\n <div\n style={style}\n className={`${prefixCls} ${prefixCls}-normal ${prefixCls}-small ${className}`}\n >\n <div className={`${prefixCls}-image`}>\n {icon || (\n <svg\n width=\"64\"\n height=\"41\"\n viewBox=\"0 0 64 41\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <title>{title}</title>\n <g transform=\"translate(0 1)\" fill=\"none\">\n <ellipse fill=\"#f5f5f5\" cx=\"32\" cy=\"33\" rx=\"32\" ry=\"7\"></ellipse>\n <g stroke=\"#d9d9d9\">\n <path d=\"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z\"></path>\n <path\n d=\"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\"\n fill=\"#fafafa\"\n ></path>\n </g>\n </g>\n </svg>\n )}\n </div>\n <div className={`${prefixCls}-description`}>{description}</div>\n </div>\n);\n\nexport default EmptyContent;\n","import { RuleType } from '../types';\n\nexport const parseValue = (value: RuleType): RuleType => {\n if (value === 'true') {\n return true;\n }\n\n if (value === 'false') {\n return false;\n }\n\n if (!isNaN(Number(value))) {\n return Number(value);\n }\n\n return value;\n};\n\nexport function createArray(length: number): number[] {\n return Array.from({ length }, (_, index) => index);\n}\n\nexport function clsx(...args: RuleType[]): string {\n return args\n .flatMap(arg => {\n if (!arg) {\n return [];\n }\n\n if (typeof arg === 'string') {\n return [arg];\n }\n\n if (typeof arg === 'number') {\n return [String(arg)];\n }\n\n if (Array.isArray(arg)) {\n return clsx(...arg).split(' ');\n }\n\n if (typeof arg === 'object') {\n return Object.entries(arg)\n .filter(([, value]) => Boolean(value))\n .map(([key]) => key);\n }\n\n return [];\n })\n .filter(Boolean)\n .join(' ');\n}\n","import { ReactElement, ReactNode } from 'react';\nimport { clsx } from 'lib/helpers';\nimport { ButtonProps } from 'lib/types/button';\nimport { prefixClsButton } from 'lib/utils';\nimport './style.css';\n\nconst Button = ({\n type = 'default',\n variant = 'solid',\n color = 'default',\n shape = 'default',\n size = 'middle',\n htmlType = 'button',\n className,\n rootClassName,\n classNames: customClassNames = {},\n styles = {},\n prefixCls = prefixClsButton,\n iconPosition = 'start',\n disabled = false,\n ghost = false,\n danger = false,\n block = false,\n children,\n href,\n iconNode,\n isLoading = false,\n ...restProps\n}: ButtonProps & {\n iconNode?: ReactNode;\n isLoading?: boolean;\n}): ReactElement => {\n const classes = clsx(\n prefixCls,\n rootClassName,\n `${prefixCls}-${type}`,\n `${prefixCls}-${variant}`,\n `${prefixCls}-${color}`,\n `${prefixCls}-${shape}`,\n `${prefixCls}-size-${size}`,\n {\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-ghost`]: ghost,\n [`${prefixCls}-danger`]: danger,\n [`${prefixCls}-loading`]: isLoading,\n [`${prefixCls}-disabled`]: disabled\n },\n className\n );\n\n const mergedDisabled = disabled || isLoading;\n\n const content = (\n <>\n {iconNode && iconPosition === 'start' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n <span className={`${prefixCls}-content`}>{children}</span>\n {iconNode && iconPosition === 'end' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n </>\n );\n\n if (href) {\n return (\n <a\n className={classes}\n href={mergedDisabled ? undefined : href}\n aria-disabled={mergedDisabled}\n >\n {content}\n </a>\n );\n }\n\n return (\n <button\n type={htmlType}\n className={classes}\n disabled={mergedDisabled}\n {...restProps}\n >\n {content}\n </button>\n );\n};\n\nexport default Button;\n","'use client';\n\nimport {\n ForwardedRef,\n forwardRef,\n MouseEvent,\n ReactElement,\n useEffect,\n useState\n} from 'react';\nimport { clsx } from 'lib/helpers';\nimport { SyntheticBaseEvent } from 'lib/types';\nimport { CheckboxProps } from 'lib/types/checkbox';\nimport './style.css';\n\nconst CheckboxClient = forwardRef<HTMLDivElement, CheckboxProps>(\n (\n {\n prefixCls,\n className = '',\n defaultChecked = false,\n checked,\n style,\n disabled = false,\n onChange,\n onClick,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n value = false,\n required = false,\n noStyle\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const isChecked = checked !== undefined ? checked : defaultChecked || value;\n const [internalChecked, setInternalChecked] = useState(isChecked);\n\n const handleClick = (\n e: MouseEvent<HTMLInputElement> & SyntheticBaseEvent\n ) => {\n e.stopPropagation();\n\n if (disabled) {\n return;\n }\n\n setInternalChecked(!internalChecked);\n e.target.value = !internalChecked;\n\n onClick?.(e);\n onChange?.(e);\n };\n\n useEffect(() => {\n if (checked !== undefined) {\n setInternalChecked(checked);\n }\n }, [checked]);\n\n return (\n <div className={`${prefixCls}-wrapper`}>\n <div\n ref={ref}\n style={style}\n onClick={handleClick}\n className={clsx([\n prefixCls,\n className,\n {\n noStyle: noStyle,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-checked`]: internalChecked\n }\n ])}\n >\n <input\n id={id}\n type={type}\n name={name}\n disabled={disabled}\n tabIndex={tabIndex}\n required={required}\n autoFocus={autoFocus}\n onKeyDown={onKeyDown}\n onKeyPress={onKeyPress}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n />\n\n <span className={`${prefixCls}-box`}>\n <span\n className={`${prefixCls}-check`}\n style={{ opacity: Number(internalChecked) }}\n />\n </span>\n </div>\n\n {children && <span className={`${prefixCls}-label`}>{children}</span>}\n </div>\n );\n }\n);\n\nCheckboxClient.displayName = 'CheckboxClient';\n\nexport default CheckboxClient;","import { ReactElement } from 'react';\nimport { CheckboxProps } from 'lib/types/checkbox';\nimport { prefixClsCheckbox } from 'lib/utils';\nimport CheckboxClient from './Checkbox.client';\n\nconst Checkbox = ({\n prefixCls = prefixClsCheckbox,\n className = '',\n defaultChecked = false,\n checked,\n style,\n disabled = false,\n onChange,\n onClick,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n value = false,\n required = false,\n noStyle\n}: CheckboxProps): ReactElement => {\n return (\n <CheckboxClient\n prefixCls={prefixCls}\n className={className}\n defaultChecked={defaultChecked}\n checked={checked}\n style={style}\n disabled={disabled}\n onChange={onChange}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onKeyPress={onKeyPress}\n onKeyDown={onKeyDown}\n tabIndex={tabIndex}\n name={name}\n id={id}\n autoFocus={autoFocus}\n type={type}\n value={value}\n required={required}\n noStyle={noStyle}\n >\n {children}\n </CheckboxClient>\n );\n};\n\nCheckbox.displayName = 'Checkbox';\n\nexport default Checkbox;","'use client';\n\nimport { useRef, useState } from 'react';\nimport { RuleTypes } from 'lib/types';\nimport type {\n FieldData,\n FieldError,\n FieldInstancesRef,\n FormInstance,\n RuleObject,\n RuleRender\n} from 'lib/types/form';\n\nconst useForm = (\n initialValues: Record<string, RuleTypes> = {},\n onFieldsChange?: (changedFields: FieldData[]) => void,\n onValuesChange?: (\n changedValues: Record<string, RuleTypes>,\n allValues: Record<string, RuleTypes>\n ) => void\n): FormInstance => {\n const touchedFieldsRef = useRef(new Set<string>());\n const rulesRef = useRef<Record<string, RuleObject[] | RuleRender>>({});\n const warningsRef = useRef<Record<string, string[]>>({});\n\n const formRef = useRef<Record<string, RuleTypes>>({ ...initialValues });\n const fieldInstancesRef = useRef<Record<string, FieldInstancesRef>>({});\n\n const [isReseting, setIsReseting] = useState(false);\n const [errors, setErrors] = useState<Record<string, string[]>>({});\n\n const fieldSubscribers = useRef<\n Record<string, ((value: RuleTypes) => void)[]>\n >({});\n\n const formSubscribers = useRef<\n ((values: Record<string, RuleTypes>) => void)[]\n >([]);\n\n function getFieldInstance(name: string): FieldInstancesRef {\n return fieldInstancesRef.current[name] || null;\n }\n\n function getFieldValue(name: string) {\n return formRef.current[name];\n }\n\n function getFieldsValue(nameList?: string[]) {\n if (!nameList) {\n return { ...formRef.current };\n }\n\n return nameList.reduce((acc, key) => {\n acc[key] = formRef.current[key];\n\n return acc;\n }, {} as Record<string, RuleTypes>);\n }\n\n function getFieldError(name: string) {\n return errors[name] || [];\n }\n\n function getFieldWarning(name: string): string[] {\n return warningsRef.current[name] || [];\n }\n\n function getFieldsError(): Pick<FieldError, 'errors' | 'name'>[] {\n return Object.entries(errors).map(([name, err]) => ({ name, errors: err }));\n }\n\n function setFieldValue(\n name: string,\n value: RuleTypes,\n errors?: string[],\n reset?: boolean\n ) {\n if (\n !reset &&\n ([undefined, null].includes(value) || formRef.current[name] === value)\n ) {\n return;\n }\n\n formRef.current[name] = value;\n touchedFieldsRef.current.add(name);\n\n if (!errors?.length) {\n validateField(name).then(() => {\n const allValues = getFieldsValue();\n fieldSubscribers.current[name]?.forEach(callback => callback(value));\n formSubscribers.current.forEach(callback => callback(allValues));\n\n if (onValuesChange) {\n onValuesChange({ [name]: value }, allValues);\n }\n\n if (onFieldsChange) {\n onFieldsChange([{ name, value }]);\n }\n });\n } else {\n setErrors({ [name]: errors });\n }\n }\n\n function setFieldsValue(values: Partial<Record<string, RuleTypes>>) {\n Object.entries(values).forEach(([name, value]) =>\n setFieldValue(name, value as RuleTypes)\n );\n }\n\n function setFields(fields: FieldData[]) {\n fields.forEach(({ name, value, errors }) =>\n setFieldValue(Array.isArray(name) ? name[0] : name, value, errors)\n );\n }\n\n function isFieldTouched(name: string) {\n return touchedFieldsRef.current.has(name);\n }\n\n function isFieldsTouched(nameList?: string[], allFieldsTouched = false) {\n if (!nameList) {\n return touchedFieldsRef.current.size > 0;\n }\n\n return allFieldsTouched\n ? nameList.every(name => touchedFieldsRef.current.has(name))\n : nameList.some(name => touchedFieldsRef.current.has(name));\n }\n\n function isFieldValidating(name: string): boolean {\n return !!name;\n }\n\n function registerField(name: string, rules: RuleObject[] = []) {\n if (!(name in formRef.current)) {\n formRef.current[name] = initialValues?.[name];\n }\n\n rulesRef.current[name] = rules;\n }\n\n async function validateField(name: string) {\n const value = formRef.current[name];\n const rules = rulesRef.current[name] || [];\n const fieldErrors: string[] = [];\n const fieldWarnings: string[] = [];\n\n await Promise.all(\n [rules].flat(1).map(async (rule: RuleTypes) => {\n rule = typeof rule === 'function' ? rule(formInstance) : rule;\n\n if (\n rule.required &&\n (value === undefined ||\n value === null ||\n value === '' ||\n (Array.isArray(value) && !value.length))\n ) {\n fieldErrors.push(rule.message || 'This field is required');\n }\n\n if (\n (typeof value === 'string' ||\n typeof value === 'number' ||\n Array.isArray(value)) &&\n rule.min !== undefined &&\n String(value).length < rule.min\n ) {\n fieldErrors.push(\n rule.message || `Must be at least ${rule.min} characters`\n );\n }\n\n if (\n (typeof value === 'string' ||\n typeof value === 'number' ||\n Array.isArray(value)) &&\n rule.max !== undefined &&\n String(value).length > rule.max\n ) {\n fieldErrors.push(\n rule.message || `Must be at most ${rule.max} characters`\n );\n }\n\n if (rule.pattern && !rule.pattern.test(String(value))) {\n fieldErrors.push(rule.message || 'Invalid format');\n }\n\n if (rule.warningPattern && !rule.warningPattern.test(String(value))) {\n fieldWarnings.push(rule.warningMessage || 'Invalid format');\n }\n\n if (rule.validator) {\n try {\n await rule.validator(\n rule,\n value,\n (error?: string) => error && fieldErrors.push(error)\n );\n } catch (error) {\n fieldErrors.push(\n error instanceof Error ? error.message : String(error)\n );\n }\n }\n })\n );\n\n setErrors(prev => ({ ...prev, [name]: fieldErrors }));\n warningsRef.current[name] = fieldWarnings;\n\n return fieldErrors.length === 0;\n }\n\n async function validateFields(nameList?: string[]) {\n const fieldsToValidate = nameList || Object.keys(formRef.current);\n const results = await Promise.all(\n fieldsToValidate.map(name => validateField(name))\n );\n\n return results.every(valid => valid);\n }\n\n function resetFields(nameList?: string[]) {\n if (nameList?.length) {\n nameList.forEach((name: string) => {\n formRef.current[name] = initialValues[name];\n touchedFieldsRef.current.delete(name);\n delete warningsRef.current[name];\n setErrors(prev => ({ ...prev, [name]: [] }));\n setFieldValue(name, initialValues[name], undefined, true);\n });\n } else {\n touchedFieldsRef.current.clear();\n warningsRef.current = {};\n\n Object.keys(formRef.current).forEach(name => {\n setFieldValue(name, initialValues[name], undefined, true);\n });\n }\n\n formSubscribers.current.forEach(callback => callback(getFieldsValue()));\n setIsReseting(prev => !prev);\n }\n\n async function submit() {\n return (await validateFields()) ? formRef.current : undefined;\n }\n\n function subscribeToField(\n name: string,\n callback: (value: RuleTypes) => void\n ) {\n if (!fieldSubscribers.current[name]) {\n fieldSubscribers.current[name] = [];\n }\n\n fieldSubscribers.current[name].push(callback);\n\n return () => {\n fieldSubscribers.current[name] = fieldSubscribers.current[name].filter(\n cb => cb !== callback\n );\n };\n }\n\n function subscribeToForm(\n callback: (values: Record<string, RuleTypes>) => void\n ) {\n formSubscribers.current.push(callback);\n\n return () => {\n formSubscribers.current = formSubscribers.current.filter(\n cb => cb !== callback\n );\n };\n }\n\n function subscribeToFields(\n names: string[],\n callback: (values: Record<string, RuleTypes>) => void\n ) {\n const fieldCallbacks = names.map(name =>\n subscribeToField(name, () => {\n const updatedValues = getFieldsValue(names);\n callback(updatedValues);\n })\n );\n\n return () => {\n fieldCallbacks.forEach(unsubscribe => unsubscribe());\n };\n }\n\n const formInstance: FormInstance = {\n submit,\n setFields,\n resetFields,\n getFieldError,\n registerField,\n setFieldValue,\n getFieldValue,\n validateFields,\n setFieldsValue,\n getFieldsValue,\n isFieldTouched,\n getFieldsError,\n isFieldsTouched,\n getFieldWarning,\n isFieldValidating,\n subscribeToField,\n subscribeToForm,\n onFieldsChange,\n onValuesChange,\n getFieldInstance,\n subscribeToFields,\n isReseting\n };\n\n return formInstance;\n};\n\nexport { useForm };\n","'use client';\n\nimport {\n Children,\n Fragment,\n isValidElement,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { clsx } from 'lib/helpers';\nimport { RuleType, SyntheticBaseEvent } from 'lib/types';\nimport {\n FormItemChildComponentProps,\n FormItemProps\n} from 'lib/types/form';\nimport { OptionProps } from 'lib/types/select';\nimport { prefixClsFormItem } from 'lib/utils';\nimport './style.css';\nimport { FormContext } from '../Form';\n\nconst REF_CLIENT_HEIGHT = 24;\n\nconst FormItem = ({\n prefixCls = prefixClsFormItem,\n name,\n label,\n rules = [],\n children,\n className = '',\n layout = 'vertical',\n style = {},\n valuePropName,\n dependencies = [],\n initialValue,\n feedbackIcons,\n ...props\n}: FormItemProps) => {\n const formContext = useContext(FormContext);\n\n const errorRef = useRef<HTMLSpanElement>(null);\n\n if (!formContext) {\n throw new Error('FormItem must be used within a Form');\n }\n\n const {\n isReseting,\n registerField,\n getFieldError,\n getFieldValue,\n setFieldValue,\n getFieldInstance,\n subscribeToFields,\n validateFields\n } = formContext;\n\n const childrenList = useMemo(\n () => (Array.isArray(children) ? children : [children]).filter(Boolean),\n [children]\n );\n\n useEffect(() => {\n if (name && !getFieldInstance(name)) {\n registerField(name, rules);\n }\n }, [name, rules]);\n\n useEffect(() => {\n if (initialValue) {\n setFieldValue(name, initialValue);\n }\n }, []);\n\n useEffect(() => {\n if (name && dependencies.length > 0) {\n const unsubscribe = subscribeToFields(dependencies, () => {\n validateFields([name]);\n });\n\n return () => {\n unsubscribe();\n };\n }\n }, [dependencies, name]);\n\n useEffect(() => {\n if (\n errorRef.current &&\n errorRef.current?.clientHeight >= REF_CLIENT_HEIGHT\n ) {\n errorRef.current.style.position = 'relative';\n errorRef.current.style.marginTop = '-16px';\n }\n }, [errorRef.current]);\n\n const isRequired = useMemo(\n () => rules.some((rule: RuleType) => rule.required),\n [rules]\n );\n\n const errorMessage = getFieldError(valuePropName || name)?.[0];\n\n return (\n <div\n style={style}\n className={clsx([\n `${prefixCls}`,\n {\n [layout]: layout,\n [className]: className,\n noStyle: props.noStyle\n }\n ])}\n >\n {!props.noStyle && (label || name) && (\n <label className={`${prefixCls}-label`} htmlFor={name}>\n {label || name}:\n {isRequired && <span className={`${prefixCls}-required`}>*</span>}\n {/* @Todo need to add Tooltip like Ant design */}\n </label>\n )}\n\n {Children.map(childrenList, (child, key) => {\n if (isValidElement(child) && child.type !== Fragment) {\n const { value, ...childProps } = child.props;\n const fieldValue =\n getFieldValue(valuePropName || name) ?? initialValue;\n\n return (\n <FormItemChildComponent\n {...childProps}\n name={name}\n child={child}\n value={value}\n fieldValue={fieldValue}\n noStyle={props.noStyle}\n normalize={props.normalize}\n key={`${key}_${isReseting}`}\n error={Boolean(errorMessage)}\n setFieldValue={setFieldValue}\n valuePropName={valuePropName}\n feedbackIcons={feedbackIcons}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n size={childProps.size || props.size}\n />\n );\n }\n\n return child;\n })}\n\n {!props.noStyle && errorMessage && (\n <span ref={errorRef} className={`${prefixCls}-error`}>\n {errorMessage}\n </span>\n )}\n </div>\n );\n};\n\nconst FormItemChildComponent = ({\n child,\n name,\n error,\n fieldValue,\n setFieldValue,\n onChange,\n valuePropName,\n normalize,\n ...props\n}: FormItemChildComponentProps) => {\n const formContext = useContext(FormContext);\n\n const [wasNormalize, setWasNormalize] = useState(false);\n\n const { getFieldsValue } = formContext || {};\n\n const handleChange = (e: SyntheticBaseEvent, option?: OptionProps) => {\n let rawValue: RuleType | SyntheticBaseEvent = e?.target\n ? e.target.value\n : e;\n\n if (normalize) {\n const prevValue = fieldValue ?? props.value;\n const allValues = getFieldsValue?.();\n\n rawValue = normalize(rawValue, prevValue, allValues);\n\n if (rawValue === prevValue) {\n e.target.value = rawValue;\n\n setWasNormalize(prev => !prev);\n\n const timeout = setTimeout(() => {\n (\n document.querySelector(`[name='${name}']`) as HTMLInputElement\n )?.focus();\n\n clearTimeout(timeout);\n }, 0);\n\n return;\n }\n }\n\n setFieldValue(valuePropName || name, rawValue);\n onChange?.(e, option);\n };\n\n return (\n <child.type\n {...props}\n name={name}\n onChange={handleChange}\n {...(error ? { error } : {})}\n key={`${name}_${wasNormalize}`}\n value={fieldValue ?? props.value}\n />\n );\n};\n\nFormItem.displayName = 'FormItem';\n\nexport default FormItem;","'use client';\n\nimport {\n Children,\n createContext,\n FC,\n Fragment,\n isValidElement,\n SyntheticEvent,\n useEffect,\n useMemo,\n useRef\n} from 'react';\nimport { useForm } from '@/hooks/useForm';\nimport { FormInstance, FormItemProps, FormProps } from '../../types/form';\nimport { prefixClsForm } from '../../utils';\nimport FormItem from './Item/Item';\n\nexport const FormContext = createContext<FormInstance | null>(null);\n\nconst Form: FC<FormProps> & { Item: FC<FormItemProps> } = ({\n children,\n form,\n style = {},\n prefixCls = prefixClsForm,\n className = '',\n onFinish,\n onFinishFailed,\n initialValues = {},\n onValuesChange,\n onFieldsChange,\n layout = 'horizontal',\n ...rest\n}) => {\n const internalForm = useForm(initialValues, onFieldsChange, onValuesChange);\n const formInstance = form || internalForm;\n const formRef = useRef<HTMLFormElement>(null);\n\n const handleSubmit = async (e: SyntheticEvent) => {\n e.preventDefault();\n\n if (await formInstance.validateFields()) {\n onFinish?.(formInstance.getFieldsValue());\n } else if (onFinishFailed) {\n const errorFields = formInstance.getFieldsError();\n onFinishFailed({ values: formInstance.getFieldsValue(), errorFields });\n }\n };\n\n const childrenList = useMemo(\n () => (Array.isArray(children) ? children : [children]).filter(Boolean),\n [children]\n );\n\n useEffect(() => {\n if (onFieldsChange) {\n formInstance.onFieldsChange = onFieldsChange;\n }\n\n if (onValuesChange) {\n formInstance.onValuesChange = onValuesChange;\n }\n }, [formInstance, onFieldsChange, onValuesChange]);\n\n return (\n <FormContext.Provider value={formInstance}>\n <form\n style={style}\n ref={formRef}\n onSubmit={handleSubmit}\n className={`${prefixCls} ${className}`}\n >\n {Children.map(childrenList, child => {\n if (isValidElement(child) && child.type !== Fragment) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n const { ...childProps } = child.props;\n\n return (\n <child.type\n {...childProps}\n child={child}\n size={childProps.size || rest.size}\n layout={childProps.layout || layout}\n />\n );\n }\n\n return child;\n })}\n </form>\n </FormContext.Provider>\n );\n};\n\nForm.Item = FormItem;\n\nexport default Form;\n","import { useContext, useEffect, useState } from 'react';\nimport { FormContext } from 'lib/components/Form/Form';\nimport { RuleType } from 'lib/types';\nimport { FormInstance } from 'lib/types/form';\n\ntype UseWatchProps = {\n name?: string;\n defaultValue?: RuleType;\n form?: FormInstance;\n};\n\nexport const useWatch = ({ name, defaultValue, form }: UseWatchProps) => {\n const formContext = useContext(FormContext);\n const formInstance = form || formContext;\n\n if (!formInstance) {\n throw new Error(\n 'useWatch must be used within a Form or with a form instance.'\n );\n }\n\n const [value, setValue] = useState(() => {\n return name\n ? formInstance.getFieldValue(name) ?? defaultValue\n : formInstance.getFieldsValue() ?? defaultValue;\n });\n\n useEffect(() => {\n if (!name) {\n const unsubscribe = formInstance.subscribeToForm(setValue);\n\n return () => unsubscribe();\n }\n\n const unsubscribe = formInstance.subscribeToField(name, setValue);\n\n return () => unsubscribe();\n }, [name, formInstance]);\n\n return value;\n};\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","prefixClsFormItem","prefixClsEmpty","prefixClsCheckbox","prefixClsButton","EmptyContent","icon","className","title","description","prefixCls","_jsxs","_jsx","children","width","height","viewBox","xmlns","transform","fill","cx","cy","rx","ry","stroke","d","clsx","args","flatMap","arg","String","Array","isArray","split","Object","entries","filter","value","Boolean","map","key","join","Button","variant","color","shape","size","htmlType","rootClassName","classNames","customClassNames","styles","iconPosition","disabled","ghost","danger","block","href","iconNode","isLoading","restProps","classes","mergedDisabled","content","_Fragment","undefined","CheckboxClient","forwardRef","defaultChecked","checked","onChange","onClick","onMouseEnter","onMouseLeave","onKeyPress","onKeyDown","tabIndex","name","id","autoFocus","required","noStyle","isChecked","internalChecked","setInternalChecked","useState","handleClick","e","stopPropagation","target","useEffect","opacity","Number","displayName","Checkbox","useForm","initialValues","onFieldsChange","onValuesChange","touchedFieldsRef","useRef","Set","rulesRef","warningsRef","formRef","fieldInstancesRef","isReseting","setIsReseting","errors","setErrors","fieldSubscribers","formSubscribers","getFieldInstance","current","getFieldValue","getFieldsValue","nameList","reduce","acc","getFieldError","getFieldWarning","getFieldsError","err","setFieldValue","reset","includes","add","length","validateField","then","allValues","forEach","callback","setFieldsValue","values","setFields","fields","isFieldTouched","has","isFieldsTouched","allFieldsTouched","every","some","isFieldValidating","registerField","rules","fieldErrors","fieldWarnings","Promise","all","flat","rule","formInstance","push","message","min","max","pattern","test","warningPattern","warningMessage","validator","error","Error","prev","validateFields","fieldsToValidate","keys","results","valid","resetFields","delete","clear","submit","subscribeToField","cb","subscribeToForm","subscribeToFields","names","fieldCallbacks","updatedValues","unsubscribe","REF_CLIENT_HEIGHT","FormItem","label","layout","valuePropName","dependencies","initialValue","feedbackIcons","props","formContext","useContext","FormContext","errorRef","childrenList","useMemo","clientHeight","position","marginTop","isRequired","errorMessage","htmlFor","Children","child","isValidElement","Fragment","childProps","fieldValue","_createElement","FormItemChildComponent","normalize","wasNormalize","setWasNormalize","handleChange","option","rawValue","prevValue","timeout","setTimeout","querySelector","focus","clearTimeout","createContext","useWatch","defaultValue","form","setValue"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.esm.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../lib/utils/index.ts","../lib/components/Empty/Empty.tsx","../lib/helpers/index.ts","../lib/components/Button/Button.tsx","../lib/components/Checkbox/Checkbox.client.tsx","../lib/components/Checkbox/Checkbox.tsx","../lib/hooks/useForm.ts","../lib/components/Form/Item/Item.tsx","../lib/components/Form/Form.tsx","../lib/hooks/useWatch.ts"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","export const prefixClsForm = 'xUi-form';\nexport const prefixClsFormItem = 'xUi-form-item';\nexport const prefixClsEmpty = 'xUi-empty';\nexport const prefixClsInput = 'xUi-input';\nexport const prefixClsSelect = 'xUi-select';\nexport const prefixClsCheckbox = 'xUi-checkbox';\nexport const prefixClsRadio = 'xUi-radio';\nexport const prefixClsTextArea = 'xUi-textarea';\nexport const prefixClsUpload = 'xUi-upload';\nexport const prefixClsDatePicker = 'xUi-datepicker';\nexport const prefixClsRangePicker = 'xUi-rangepicker';\nexport const prefixClsTimePicker = 'xUi-timepicker';\nexport const prefixClsButton = 'xUi-button';\nexport const prefixClsSkeleton = 'xUi-skeleton';\n","import { EmptyContentProps } from '../../types/empty';\nimport { prefixClsEmpty } from '../../utils';\nimport './style.css';\n\nconst EmptyContent = ({\n icon,\n style = {},\n className = '',\n title = 'No Data',\n description = 'No data',\n prefixCls = prefixClsEmpty\n}: EmptyContentProps) => (\n <div\n style={style}\n className={`${prefixCls} ${prefixCls}-normal ${prefixCls}-small ${className}`}\n >\n <div className={`${prefixCls}-image`}>\n {icon || (\n <svg\n width=\"64\"\n height=\"41\"\n viewBox=\"0 0 64 41\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <title>{title}</title>\n <g transform=\"translate(0 1)\" fill=\"none\">\n <ellipse fill=\"#f5f5f5\" cx=\"32\" cy=\"33\" rx=\"32\" ry=\"7\"></ellipse>\n <g stroke=\"#d9d9d9\">\n <path d=\"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z\"></path>\n <path\n d=\"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\"\n fill=\"#fafafa\"\n ></path>\n </g>\n </g>\n </svg>\n )}\n </div>\n <div className={`${prefixCls}-description`}>{description}</div>\n </div>\n);\n\nexport default EmptyContent;\n","import { RuleType } from '../types';\n\nexport const parseValue = (value: RuleType): RuleType => {\n if (value === 'true') {\n return true;\n }\n\n if (value === 'false') {\n return false;\n }\n\n if (!isNaN(Number(value))) {\n return Number(value);\n }\n\n return value;\n};\n\nexport function createArray(length: number): number[] {\n return Array.from({ length }, (_, index) => index);\n}\n\nexport function clsx(...args: RuleType[]): string {\n return args\n .flatMap(arg => {\n if (!arg) {\n return [];\n }\n\n if (typeof arg === 'string') {\n return [arg];\n }\n\n if (typeof arg === 'number') {\n return [String(arg)];\n }\n\n if (Array.isArray(arg)) {\n return clsx(...arg).split(' ');\n }\n\n if (typeof arg === 'object') {\n return Object.entries(arg)\n .filter(([, value]) => Boolean(value))\n .map(([key]) => key);\n }\n\n return [];\n })\n .filter(Boolean)\n .join(' ');\n}\n","import { ReactElement, ReactNode } from 'react';\nimport { clsx } from '../../helpers';\nimport { ButtonProps } from '../../types/button';\nimport { prefixClsButton } from '../../utils';\nimport './style.css';\n\nconst Button = ({\n type = 'default',\n variant = 'solid',\n color = 'default',\n shape = 'default',\n size = 'middle',\n htmlType = 'button',\n className,\n rootClassName,\n classNames: customClassNames = {},\n styles = {},\n prefixCls = prefixClsButton,\n iconPosition = 'start',\n disabled = false,\n ghost = false,\n danger = false,\n block = false,\n children,\n href,\n iconNode,\n isLoading = false,\n ...restProps\n}: ButtonProps & {\n iconNode?: ReactNode;\n isLoading?: boolean;\n}): ReactElement => {\n const classes = clsx(\n prefixCls,\n rootClassName,\n `${prefixCls}-${type}`,\n `${prefixCls}-${variant}`,\n `${prefixCls}-${color}`,\n `${prefixCls}-${shape}`,\n `${prefixCls}-size-${size}`,\n {\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-ghost`]: ghost,\n [`${prefixCls}-danger`]: danger,\n [`${prefixCls}-loading`]: isLoading,\n [`${prefixCls}-disabled`]: disabled\n },\n className\n );\n\n const mergedDisabled = disabled || isLoading;\n\n const content = (\n <>\n {iconNode && iconPosition === 'start' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n <span className={`${prefixCls}-content`}>{children}</span>\n {iconNode && iconPosition === 'end' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n </>\n );\n\n if (href) {\n return (\n <a\n className={classes}\n href={mergedDisabled ? undefined : href}\n aria-disabled={mergedDisabled}\n >\n {content}\n </a>\n );\n }\n\n return (\n <button\n type={htmlType}\n className={classes}\n disabled={mergedDisabled}\n {...restProps}\n >\n {content}\n </button>\n );\n};\n\nexport default Button;\n","'use client';\n\nimport {\n ForwardedRef,\n forwardRef,\n MouseEvent,\n ReactElement,\n useEffect,\n useState\n} from 'react';\nimport { clsx } from '../../helpers';\nimport { SyntheticBaseEvent } from '../../types';\nimport { CheckboxProps } from '../../types/checkbox';\nimport './style.css';\n\nconst CheckboxClient = forwardRef<HTMLDivElement, CheckboxProps>(\n (\n {\n prefixCls,\n className = '',\n defaultChecked = false,\n checked,\n style,\n disabled = false,\n onChange,\n onClick,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n value = false,\n required = false,\n noStyle\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const isChecked = checked !== undefined ? checked : defaultChecked || value;\n const [internalChecked, setInternalChecked] = useState(isChecked);\n\n const handleClick = (\n e: MouseEvent<HTMLInputElement> & SyntheticBaseEvent\n ) => {\n e.stopPropagation();\n\n if (disabled) {\n return;\n }\n\n setInternalChecked(!internalChecked);\n e.target.value = !internalChecked;\n\n onClick?.(e);\n onChange?.(e);\n };\n\n useEffect(() => {\n if (checked !== undefined) {\n setInternalChecked(checked);\n }\n }, [checked]);\n\n return (\n <div className={`${prefixCls}-wrapper`}>\n <div\n ref={ref}\n style={style}\n onClick={handleClick}\n className={clsx([\n prefixCls,\n className,\n {\n noStyle: noStyle,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-checked`]: internalChecked\n }\n ])}\n >\n <input\n id={id}\n type={type}\n name={name}\n disabled={disabled}\n tabIndex={tabIndex}\n required={required}\n autoFocus={autoFocus}\n onKeyDown={onKeyDown}\n onKeyPress={onKeyPress}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n />\n\n <span className={`${prefixCls}-box`}>\n <span\n className={`${prefixCls}-check`}\n style={{ opacity: Number(internalChecked) }}\n />\n </span>\n </div>\n\n {children && <span className={`${prefixCls}-label`}>{children}</span>}\n </div>\n );\n }\n);\n\nCheckboxClient.displayName = 'CheckboxClient';\n\nexport default CheckboxClient;","import { ReactElement } from 'react';\nimport { CheckboxProps } from '../../types/checkbox';\nimport { prefixClsCheckbox } from '../../utils';\nimport CheckboxClient from './Checkbox.client';\n\nconst Checkbox = ({\n prefixCls = prefixClsCheckbox,\n className = '',\n defaultChecked = false,\n checked,\n style,\n disabled = false,\n onChange,\n onClick,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n value = false,\n required = false,\n noStyle\n}: CheckboxProps): ReactElement => {\n return (\n <CheckboxClient\n prefixCls={prefixCls}\n className={className}\n defaultChecked={defaultChecked}\n checked={checked}\n style={style}\n disabled={disabled}\n onChange={onChange}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onKeyPress={onKeyPress}\n onKeyDown={onKeyDown}\n tabIndex={tabIndex}\n name={name}\n id={id}\n autoFocus={autoFocus}\n type={type}\n value={value}\n required={required}\n noStyle={noStyle}\n >\n {children}\n </CheckboxClient>\n );\n};\n\nCheckbox.displayName = 'Checkbox';\n\nexport default Checkbox;","'use client';\n\nimport { useRef, useState } from 'react';\nimport { RuleTypes } from '../types';\nimport type {\n FieldData,\n FieldError,\n FieldInstancesRef,\n FormInstance,\n RuleObject,\n RuleRender\n} from '../types/form';\n\nconst useForm = (\n initialValues: Record<string, RuleTypes> = {},\n onFieldsChange?: (changedFields: FieldData[]) => void,\n onValuesChange?: (\n changedValues: Record<string, RuleTypes>,\n allValues: Record<string, RuleTypes>\n ) => void\n): FormInstance => {\n const touchedFieldsRef = useRef(new Set<string>());\n const rulesRef = useRef<Record<string, RuleObject[] | RuleRender>>({});\n const warningsRef = useRef<Record<string, string[]>>({});\n\n const formRef = useRef<Record<string, RuleTypes>>({ ...initialValues });\n const fieldInstancesRef = useRef<Record<string, FieldInstancesRef>>({});\n\n const [isReseting, setIsReseting] = useState(false);\n const [errors, setErrors] = useState<Record<string, string[]>>({});\n\n const fieldSubscribers = useRef<\n Record<string, ((value: RuleTypes) => void)[]>\n >({});\n\n const formSubscribers = useRef<\n ((values: Record<string, RuleTypes>) => void)[]\n >([]);\n\n function getFieldInstance(name: string): FieldInstancesRef {\n return fieldInstancesRef.current[name] || null;\n }\n\n function getFieldValue(name: string) {\n return formRef.current[name];\n }\n\n function getFieldsValue(nameList?: string[]) {\n if (!nameList) {\n return { ...formRef.current };\n }\n\n return nameList.reduce((acc, key) => {\n acc[key] = formRef.current[key];\n\n return acc;\n }, {} as Record<string, RuleTypes>);\n }\n\n function getFieldError(name: string) {\n return errors[name] || [];\n }\n\n function getFieldWarning(name: string): string[] {\n return warningsRef.current[name] || [];\n }\n\n function getFieldsError(): Pick<FieldError, 'errors' | 'name'>[] {\n return Object.entries(errors).map(([name, err]) => ({ name, errors: err }));\n }\n\n function setFieldValue(\n name: string,\n value: RuleTypes,\n errors?: string[],\n reset?: boolean\n ) {\n if (\n !reset &&\n ([undefined, null].includes(value) || formRef.current[name] === value)\n ) {\n return;\n }\n\n formRef.current[name] = value;\n touchedFieldsRef.current.add(name);\n\n if (!errors?.length) {\n validateField(name).then(() => {\n const allValues = getFieldsValue();\n fieldSubscribers.current[name]?.forEach(callback => callback(value));\n formSubscribers.current.forEach(callback => callback(allValues));\n\n if (onValuesChange) {\n onValuesChange({ [name]: value }, allValues);\n }\n\n if (onFieldsChange) {\n onFieldsChange([{ name, value }]);\n }\n });\n } else {\n setErrors({ [name]: errors });\n }\n }\n\n function setFieldsValue(values: Partial<Record<string, RuleTypes>>) {\n Object.entries(values).forEach(([name, value]) =>\n setFieldValue(name, value as RuleTypes)\n );\n }\n\n function setFields(fields: FieldData[]) {\n fields.forEach(({ name, value, errors }) =>\n setFieldValue(Array.isArray(name) ? name[0] : name, value, errors)\n );\n }\n\n function isFieldTouched(name: string) {\n return touchedFieldsRef.current.has(name);\n }\n\n function isFieldsTouched(nameList?: string[], allFieldsTouched = false) {\n if (!nameList) {\n return touchedFieldsRef.current.size > 0;\n }\n\n return allFieldsTouched\n ? nameList.every(name => touchedFieldsRef.current.has(name))\n : nameList.some(name => touchedFieldsRef.current.has(name));\n }\n\n function isFieldValidating(name: string): boolean {\n return !!name;\n }\n\n function registerField(name: string, rules: RuleObject[] = []) {\n if (!(name in formRef.current)) {\n formRef.current[name] = initialValues?.[name];\n }\n\n rulesRef.current[name] = rules;\n }\n\n async function validateField(name: string) {\n const value = formRef.current[name];\n const rules = rulesRef.current[name] || [];\n const fieldErrors: string[] = [];\n const fieldWarnings: string[] = [];\n\n await Promise.all(\n [rules].flat(1).map(async (rule: RuleTypes) => {\n rule = typeof rule === 'function' ? rule(formInstance) : rule;\n\n if (\n rule.required &&\n (value === undefined ||\n value === null ||\n value === '' ||\n (Array.isArray(value) && !value.length))\n ) {\n fieldErrors.push(rule.message || 'This field is required');\n }\n\n if (\n (typeof value === 'string' ||\n typeof value === 'number' ||\n Array.isArray(value)) &&\n rule.min !== undefined &&\n String(value).length < rule.min\n ) {\n fieldErrors.push(\n rule.message || `Must be at least ${rule.min} characters`\n );\n }\n\n if (\n (typeof value === 'string' ||\n typeof value === 'number' ||\n Array.isArray(value)) &&\n rule.max !== undefined &&\n String(value).length > rule.max\n ) {\n fieldErrors.push(\n rule.message || `Must be at most ${rule.max} characters`\n );\n }\n\n if (rule.pattern && !rule.pattern.test(String(value))) {\n fieldErrors.push(rule.message || 'Invalid format');\n }\n\n if (rule.warningPattern && !rule.warningPattern.test(String(value))) {\n fieldWarnings.push(rule.warningMessage || 'Invalid format');\n }\n\n if (rule.validator) {\n try {\n await rule.validator(\n rule,\n value,\n (error?: string) => error && fieldErrors.push(error)\n );\n } catch (error) {\n fieldErrors.push(\n error instanceof Error ? error.message : String(error)\n );\n }\n }\n })\n );\n\n setErrors(prev => ({ ...prev, [name]: fieldErrors }));\n warningsRef.current[name] = fieldWarnings;\n\n return fieldErrors.length === 0;\n }\n\n async function validateFields(nameList?: string[]) {\n const fieldsToValidate = nameList || Object.keys(formRef.current);\n const results = await Promise.all(\n fieldsToValidate.map(name => validateField(name))\n );\n\n return results.every(valid => valid);\n }\n\n function resetFields(nameList?: string[]) {\n if (nameList?.length) {\n nameList.forEach((name: string) => {\n formRef.current[name] = initialValues[name];\n touchedFieldsRef.current.delete(name);\n delete warningsRef.current[name];\n setErrors(prev => ({ ...prev, [name]: [] }));\n setFieldValue(name, initialValues[name], undefined, true);\n });\n } else {\n touchedFieldsRef.current.clear();\n warningsRef.current = {};\n\n Object.keys(formRef.current).forEach(name => {\n setFieldValue(name, initialValues[name], undefined, true);\n });\n }\n\n formSubscribers.current.forEach(callback => callback(getFieldsValue()));\n setIsReseting(prev => !prev);\n }\n\n async function submit() {\n return (await validateFields()) ? formRef.current : undefined;\n }\n\n function subscribeToField(\n name: string,\n callback: (value: RuleTypes) => void\n ) {\n if (!fieldSubscribers.current[name]) {\n fieldSubscribers.current[name] = [];\n }\n\n fieldSubscribers.current[name].push(callback);\n\n return () => {\n fieldSubscribers.current[name] = fieldSubscribers.current[name].filter(\n cb => cb !== callback\n );\n };\n }\n\n function subscribeToForm(\n callback: (values: Record<string, RuleTypes>) => void\n ) {\n formSubscribers.current.push(callback);\n\n return () => {\n formSubscribers.current = formSubscribers.current.filter(\n cb => cb !== callback\n );\n };\n }\n\n function subscribeToFields(\n names: string[],\n callback: (values: Record<string, RuleTypes>) => void\n ) {\n const fieldCallbacks = names.map(name =>\n subscribeToField(name, () => {\n const updatedValues = getFieldsValue(names);\n callback(updatedValues);\n })\n );\n\n return () => {\n fieldCallbacks.forEach(unsubscribe => unsubscribe());\n };\n }\n\n const formInstance: FormInstance = {\n submit,\n setFields,\n resetFields,\n getFieldError,\n registerField,\n setFieldValue,\n getFieldValue,\n validateFields,\n setFieldsValue,\n getFieldsValue,\n isFieldTouched,\n getFieldsError,\n isFieldsTouched,\n getFieldWarning,\n isFieldValidating,\n subscribeToField,\n subscribeToForm,\n onFieldsChange,\n onValuesChange,\n getFieldInstance,\n subscribeToFields,\n isReseting\n };\n\n return formInstance;\n};\n\nexport { useForm };\n","'use client';\n\nimport {\n Children,\n Fragment,\n isValidElement,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { clsx } from '../../../helpers';\nimport { RuleType, SyntheticBaseEvent } from '../../../types';\nimport {\n FormItemChildComponentProps,\n FormItemProps\n} from '../../../types/form';\nimport { OptionProps } from '../../../types/select';\nimport { prefixClsFormItem } from '../../../utils';\nimport './style.css';\nimport { FormContext } from '../Form';\n\nconst REF_CLIENT_HEIGHT = 24;\n\nconst FormItem = ({\n prefixCls = prefixClsFormItem,\n name,\n label,\n rules = [],\n children,\n className = '',\n layout = 'vertical',\n style = {},\n valuePropName,\n dependencies = [],\n initialValue,\n feedbackIcons,\n ...props\n}: FormItemProps) => {\n const formContext = useContext(FormContext);\n\n const errorRef = useRef<HTMLSpanElement>(null);\n\n if (!formContext) {\n throw new Error('FormItem must be used within a Form');\n }\n\n const {\n isReseting,\n registerField,\n getFieldError,\n getFieldValue,\n setFieldValue,\n getFieldInstance,\n subscribeToFields,\n validateFields\n } = formContext;\n\n const childrenList = useMemo(\n () => (Array.isArray(children) ? children : [children]).filter(Boolean),\n [children]\n );\n\n useEffect(() => {\n if (name && !getFieldInstance(name)) {\n registerField(name, rules);\n }\n }, [name, rules]);\n\n useEffect(() => {\n if (initialValue) {\n setFieldValue(name, initialValue);\n }\n }, []);\n\n useEffect(() => {\n if (name && dependencies.length > 0) {\n const unsubscribe = subscribeToFields(dependencies, () => {\n validateFields([name]);\n });\n\n return () => {\n unsubscribe();\n };\n }\n }, [dependencies, name]);\n\n useEffect(() => {\n if (\n errorRef.current &&\n errorRef.current?.clientHeight >= REF_CLIENT_HEIGHT\n ) {\n errorRef.current.style.position = 'relative';\n errorRef.current.style.marginTop = '-16px';\n }\n }, [errorRef.current]);\n\n const isRequired = useMemo(\n () => rules.some((rule: RuleType) => rule.required),\n [rules]\n );\n\n const errorMessage = getFieldError(valuePropName || name)?.[0];\n\n return (\n <div\n style={style}\n className={clsx([\n `${prefixCls}`,\n {\n [layout]: layout,\n [className]: className,\n noStyle: props.noStyle\n }\n ])}\n >\n {!props.noStyle && (label || name) && (\n <label className={`${prefixCls}-label`} htmlFor={name}>\n {label || name}:\n {isRequired && <span className={`${prefixCls}-required`}>*</span>}\n {/* @Todo need to add Tooltip like Ant design */}\n </label>\n )}\n\n {Children.map(childrenList, (child, key) => {\n if (isValidElement(child) && child.type !== Fragment) {\n const { value, ...childProps } = child.props;\n const fieldValue =\n getFieldValue(valuePropName || name) ?? initialValue;\n\n return (\n <FormItemChildComponent\n {...childProps}\n name={name}\n child={child}\n value={value}\n fieldValue={fieldValue}\n noStyle={props.noStyle}\n normalize={props.normalize}\n key={`${key}_${isReseting}`}\n error={Boolean(errorMessage)}\n setFieldValue={setFieldValue}\n valuePropName={valuePropName}\n feedbackIcons={feedbackIcons}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n size={childProps.size || props.size}\n />\n );\n }\n\n return child;\n })}\n\n {!props.noStyle && errorMessage && (\n <span ref={errorRef} className={`${prefixCls}-error`}>\n {errorMessage}\n </span>\n )}\n </div>\n );\n};\n\nconst FormItemChildComponent = ({\n child,\n name,\n error,\n fieldValue,\n setFieldValue,\n onChange,\n valuePropName,\n normalize,\n ...props\n}: FormItemChildComponentProps) => {\n const formContext = useContext(FormContext);\n\n const [wasNormalize, setWasNormalize] = useState(false);\n\n const { getFieldsValue } = formContext || {};\n\n const handleChange = (e: SyntheticBaseEvent, option?: OptionProps) => {\n let rawValue: RuleType | SyntheticBaseEvent = e?.target\n ? e.target.value\n : e;\n\n if (normalize) {\n const prevValue = fieldValue ?? props.value;\n const allValues = getFieldsValue?.();\n\n rawValue = normalize(rawValue, prevValue, allValues);\n\n if (rawValue === prevValue) {\n e.target.value = rawValue;\n\n setWasNormalize(prev => !prev);\n\n const timeout = setTimeout(() => {\n (\n document.querySelector(`[name='${name}']`) as HTMLInputElement\n )?.focus();\n\n clearTimeout(timeout);\n }, 0);\n\n return;\n }\n }\n\n setFieldValue(valuePropName || name, rawValue);\n onChange?.(e, option);\n };\n\n return (\n <child.type\n {...props}\n name={name}\n onChange={handleChange}\n {...(error ? { error } : {})}\n key={`${name}_${wasNormalize}`}\n value={fieldValue ?? props.value}\n />\n );\n};\n\nFormItem.displayName = 'FormItem';\n\nexport default FormItem;","'use client';\n\nimport {\n Children,\n createContext,\n FC,\n Fragment,\n isValidElement,\n SyntheticEvent,\n useEffect,\n useMemo,\n useRef\n} from 'react';\nimport { useForm } from '@/hooks/useForm';\nimport { FormInstance, FormItemProps, FormProps } from '../../types/form';\nimport { prefixClsForm } from '../../utils';\nimport FormItem from './Item/Item';\n\nexport const FormContext = createContext<FormInstance | null>(null);\n\nconst Form: FC<FormProps> & { Item: FC<FormItemProps> } = ({\n children,\n form,\n style = {},\n prefixCls = prefixClsForm,\n className = '',\n onFinish,\n onFinishFailed,\n initialValues = {},\n onValuesChange,\n onFieldsChange,\n layout = 'horizontal',\n ...rest\n}) => {\n const internalForm = useForm(initialValues, onFieldsChange, onValuesChange);\n const formInstance = form || internalForm;\n const formRef = useRef<HTMLFormElement>(null);\n\n const handleSubmit = async (e: SyntheticEvent) => {\n e.preventDefault();\n\n if (await formInstance.validateFields()) {\n onFinish?.(formInstance.getFieldsValue());\n } else if (onFinishFailed) {\n const errorFields = formInstance.getFieldsError();\n onFinishFailed({ values: formInstance.getFieldsValue(), errorFields });\n }\n };\n\n const childrenList = useMemo(\n () => (Array.isArray(children) ? children : [children]).filter(Boolean),\n [children]\n );\n\n useEffect(() => {\n if (onFieldsChange) {\n formInstance.onFieldsChange = onFieldsChange;\n }\n\n if (onValuesChange) {\n formInstance.onValuesChange = onValuesChange;\n }\n }, [formInstance, onFieldsChange, onValuesChange]);\n\n return (\n <FormContext.Provider value={formInstance}>\n <form\n style={style}\n ref={formRef}\n onSubmit={handleSubmit}\n className={`${prefixCls} ${className}`}\n >\n {Children.map(childrenList, child => {\n if (isValidElement(child) && child.type !== Fragment) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n const { ...childProps } = child.props;\n\n return (\n <child.type\n {...childProps}\n child={child}\n size={childProps.size || rest.size}\n layout={childProps.layout || layout}\n />\n );\n }\n\n return child;\n })}\n </form>\n </FormContext.Provider>\n );\n};\n\nForm.Item = FormItem;\n\nexport default Form;\n","import { useContext, useEffect, useState } from 'react';\nimport { FormContext } from '../components/Form/Form';\nimport { RuleType } from '../types';\nimport { FormInstance } from '../types/form';\n\ntype UseWatchProps = {\n name?: string;\n defaultValue?: RuleType;\n form?: FormInstance;\n};\n\nexport const useWatch = ({ name, defaultValue, form }: UseWatchProps) => {\n const formContext = useContext(FormContext);\n const formInstance = form || formContext;\n\n if (!formInstance) {\n throw new Error(\n 'useWatch must be used within a Form or with a form instance.'\n );\n }\n\n const [value, setValue] = useState(() => {\n return name\n ? formInstance.getFieldValue(name) ?? defaultValue\n : formInstance.getFieldsValue() ?? defaultValue;\n });\n\n useEffect(() => {\n if (!name) {\n const unsubscribe = formInstance.subscribeToForm(setValue);\n\n return () => unsubscribe();\n }\n\n const unsubscribe = formInstance.subscribeToField(name, setValue);\n\n return () => unsubscribe();\n }, [name, formInstance]);\n\n return value;\n};\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","prefixClsFormItem","prefixClsEmpty","prefixClsCheckbox","prefixClsButton","EmptyContent","icon","className","title","description","prefixCls","_jsxs","_jsx","children","width","height","viewBox","xmlns","transform","fill","cx","cy","rx","ry","stroke","d","clsx","args","flatMap","arg","String","Array","isArray","split","Object","entries","filter","value","Boolean","map","key","join","Button","variant","color","shape","size","htmlType","rootClassName","classNames","customClassNames","styles","iconPosition","disabled","ghost","danger","block","href","iconNode","isLoading","restProps","classes","mergedDisabled","content","_Fragment","undefined","CheckboxClient","forwardRef","defaultChecked","checked","onChange","onClick","onMouseEnter","onMouseLeave","onKeyPress","onKeyDown","tabIndex","name","id","autoFocus","required","noStyle","isChecked","internalChecked","setInternalChecked","useState","handleClick","e","stopPropagation","target","useEffect","opacity","Number","displayName","Checkbox","useForm","initialValues","onFieldsChange","onValuesChange","touchedFieldsRef","useRef","Set","rulesRef","warningsRef","formRef","fieldInstancesRef","isReseting","setIsReseting","errors","setErrors","fieldSubscribers","formSubscribers","getFieldInstance","current","getFieldValue","getFieldsValue","nameList","reduce","acc","getFieldError","getFieldWarning","getFieldsError","err","setFieldValue","reset","includes","add","length","validateField","then","allValues","forEach","callback","setFieldsValue","values","setFields","fields","isFieldTouched","has","isFieldsTouched","allFieldsTouched","every","some","isFieldValidating","registerField","rules","fieldErrors","fieldWarnings","Promise","all","flat","rule","formInstance","push","message","min","max","pattern","test","warningPattern","warningMessage","validator","error","Error","prev","validateFields","fieldsToValidate","keys","results","valid","resetFields","delete","clear","submit","subscribeToField","cb","subscribeToForm","subscribeToFields","names","fieldCallbacks","updatedValues","unsubscribe","REF_CLIENT_HEIGHT","FormItem","label","layout","valuePropName","dependencies","initialValue","feedbackIcons","props","formContext","useContext","FormContext","errorRef","childrenList","useMemo","clientHeight","position","marginTop","isRequired","errorMessage","htmlFor","Children","child","isValidElement","Fragment","childProps","fieldValue","_createElement","FormItemChildComponent","normalize","wasNormalize","setWasNormalize","handleChange","option","rawValue","prevValue","timeout","setTimeout","querySelector","focus","clearTimeout","createContext","useWatch","defaultValue","form","setValue"],"mappings":"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","x_google_ignoreList":[0]}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../lib/utils/index.ts","../lib/components/Empty/Empty.tsx","../lib/helpers/index.ts","../lib/components/Button/Button.tsx","../lib/components/Checkbox/Checkbox.client.tsx","../lib/components/Checkbox/Checkbox.tsx","../lib/hooks/useForm.ts","../lib/components/Form/Item/Item.tsx","../lib/components/Form/Form.tsx","../lib/hooks/useWatch.ts"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","export const prefixClsForm = 'xUi-form';\nexport const prefixClsFormItem = 'xUi-form-item';\nexport const prefixClsEmpty = 'xUi-empty';\nexport const prefixClsInput = 'xUi-input';\nexport const prefixClsSelect = 'xUi-select';\nexport const prefixClsCheckbox = 'xUi-checkbox';\nexport const prefixClsRadio = 'xUi-radio';\nexport const prefixClsTextArea = 'xUi-textarea';\nexport const prefixClsUpload = 'xUi-upload';\nexport const prefixClsDatePicker = 'xUi-datepicker';\nexport const prefixClsRangePicker = 'xUi-rangepicker';\nexport const prefixClsTimePicker = 'xUi-timepicker';\nexport const prefixClsButton = 'xUi-button';\nexport const prefixClsSkeleton = 'xUi-skeleton';\n","import { EmptyContentProps } from 'lib/types/empty';\nimport { prefixClsEmpty } from 'lib/utils';\nimport './style.css';\n\nconst EmptyContent = ({\n icon,\n style = {},\n className = '',\n title = 'No Data',\n description = 'No data',\n prefixCls = prefixClsEmpty\n}: EmptyContentProps) => (\n <div\n style={style}\n className={`${prefixCls} ${prefixCls}-normal ${prefixCls}-small ${className}`}\n >\n <div className={`${prefixCls}-image`}>\n {icon || (\n <svg\n width=\"64\"\n height=\"41\"\n viewBox=\"0 0 64 41\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <title>{title}</title>\n <g transform=\"translate(0 1)\" fill=\"none\">\n <ellipse fill=\"#f5f5f5\" cx=\"32\" cy=\"33\" rx=\"32\" ry=\"7\"></ellipse>\n <g stroke=\"#d9d9d9\">\n <path d=\"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z\"></path>\n <path\n d=\"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\"\n fill=\"#fafafa\"\n ></path>\n </g>\n </g>\n </svg>\n )}\n </div>\n <div className={`${prefixCls}-description`}>{description}</div>\n </div>\n);\n\nexport default EmptyContent;\n","import { RuleType } from '../types';\n\nexport const parseValue = (value: RuleType): RuleType => {\n if (value === 'true') {\n return true;\n }\n\n if (value === 'false') {\n return false;\n }\n\n if (!isNaN(Number(value))) {\n return Number(value);\n }\n\n return value;\n};\n\nexport function createArray(length: number): number[] {\n return Array.from({ length }, (_, index) => index);\n}\n\nexport function clsx(...args: RuleType[]): string {\n return args\n .flatMap(arg => {\n if (!arg) {\n return [];\n }\n\n if (typeof arg === 'string') {\n return [arg];\n }\n\n if (typeof arg === 'number') {\n return [String(arg)];\n }\n\n if (Array.isArray(arg)) {\n return clsx(...arg).split(' ');\n }\n\n if (typeof arg === 'object') {\n return Object.entries(arg)\n .filter(([, value]) => Boolean(value))\n .map(([key]) => key);\n }\n\n return [];\n })\n .filter(Boolean)\n .join(' ');\n}\n","import { ReactElement, ReactNode } from 'react';\nimport { clsx } from 'lib/helpers';\nimport { ButtonProps } from 'lib/types/button';\nimport { prefixClsButton } from 'lib/utils';\nimport './style.css';\n\nconst Button = ({\n type = 'default',\n variant = 'solid',\n color = 'default',\n shape = 'default',\n size = 'middle',\n htmlType = 'button',\n className,\n rootClassName,\n classNames: customClassNames = {},\n styles = {},\n prefixCls = prefixClsButton,\n iconPosition = 'start',\n disabled = false,\n ghost = false,\n danger = false,\n block = false,\n children,\n href,\n iconNode,\n isLoading = false,\n ...restProps\n}: ButtonProps & {\n iconNode?: ReactNode;\n isLoading?: boolean;\n}): ReactElement => {\n const classes = clsx(\n prefixCls,\n rootClassName,\n `${prefixCls}-${type}`,\n `${prefixCls}-${variant}`,\n `${prefixCls}-${color}`,\n `${prefixCls}-${shape}`,\n `${prefixCls}-size-${size}`,\n {\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-ghost`]: ghost,\n [`${prefixCls}-danger`]: danger,\n [`${prefixCls}-loading`]: isLoading,\n [`${prefixCls}-disabled`]: disabled\n },\n className\n );\n\n const mergedDisabled = disabled || isLoading;\n\n const content = (\n <>\n {iconNode && iconPosition === 'start' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n <span className={`${prefixCls}-content`}>{children}</span>\n {iconNode && iconPosition === 'end' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n </>\n );\n\n if (href) {\n return (\n <a\n className={classes}\n href={mergedDisabled ? undefined : href}\n aria-disabled={mergedDisabled}\n >\n {content}\n </a>\n );\n }\n\n return (\n <button\n type={htmlType}\n className={classes}\n disabled={mergedDisabled}\n {...restProps}\n >\n {content}\n </button>\n );\n};\n\nexport default Button;\n","'use client';\n\nimport {\n ForwardedRef,\n forwardRef,\n MouseEvent,\n ReactElement,\n useEffect,\n useState\n} from 'react';\nimport { clsx } from 'lib/helpers';\nimport { SyntheticBaseEvent } from 'lib/types';\nimport { CheckboxProps } from 'lib/types/checkbox';\nimport './style.css';\n\nconst CheckboxClient = forwardRef<HTMLDivElement, CheckboxProps>(\n (\n {\n prefixCls,\n className = '',\n defaultChecked = false,\n checked,\n style,\n disabled = false,\n onChange,\n onClick,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n value = false,\n required = false,\n noStyle\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const isChecked = checked !== undefined ? checked : defaultChecked || value;\n const [internalChecked, setInternalChecked] = useState(isChecked);\n\n const handleClick = (\n e: MouseEvent<HTMLInputElement> & SyntheticBaseEvent\n ) => {\n e.stopPropagation();\n\n if (disabled) {\n return;\n }\n\n setInternalChecked(!internalChecked);\n e.target.value = !internalChecked;\n\n onClick?.(e);\n onChange?.(e);\n };\n\n useEffect(() => {\n if (checked !== undefined) {\n setInternalChecked(checked);\n }\n }, [checked]);\n\n return (\n <div className={`${prefixCls}-wrapper`}>\n <div\n ref={ref}\n style={style}\n onClick={handleClick}\n className={clsx([\n prefixCls,\n className,\n {\n noStyle: noStyle,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-checked`]: internalChecked\n }\n ])}\n >\n <input\n id={id}\n type={type}\n name={name}\n disabled={disabled}\n tabIndex={tabIndex}\n required={required}\n autoFocus={autoFocus}\n onKeyDown={onKeyDown}\n onKeyPress={onKeyPress}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n />\n\n <span className={`${prefixCls}-box`}>\n <span\n className={`${prefixCls}-check`}\n style={{ opacity: Number(internalChecked) }}\n />\n </span>\n </div>\n\n {children && <span className={`${prefixCls}-label`}>{children}</span>}\n </div>\n );\n }\n);\n\nCheckboxClient.displayName = 'CheckboxClient';\n\nexport default CheckboxClient;","import { ReactElement } from 'react';\nimport { CheckboxProps } from 'lib/types/checkbox';\nimport { prefixClsCheckbox } from 'lib/utils';\nimport CheckboxClient from './Checkbox.client';\n\nconst Checkbox = ({\n prefixCls = prefixClsCheckbox,\n className = '',\n defaultChecked = false,\n checked,\n style,\n disabled = false,\n onChange,\n onClick,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n value = false,\n required = false,\n noStyle\n}: CheckboxProps): ReactElement => {\n return (\n <CheckboxClient\n prefixCls={prefixCls}\n className={className}\n defaultChecked={defaultChecked}\n checked={checked}\n style={style}\n disabled={disabled}\n onChange={onChange}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onKeyPress={onKeyPress}\n onKeyDown={onKeyDown}\n tabIndex={tabIndex}\n name={name}\n id={id}\n autoFocus={autoFocus}\n type={type}\n value={value}\n required={required}\n noStyle={noStyle}\n >\n {children}\n </CheckboxClient>\n );\n};\n\nCheckbox.displayName = 'Checkbox';\n\nexport default Checkbox;","'use client';\n\nimport { useRef, useState } from 'react';\nimport { RuleTypes } from 'lib/types';\nimport type {\n FieldData,\n FieldError,\n FieldInstancesRef,\n FormInstance,\n RuleObject,\n RuleRender\n} from 'lib/types/form';\n\nconst useForm = (\n initialValues: Record<string, RuleTypes> = {},\n onFieldsChange?: (changedFields: FieldData[]) => void,\n onValuesChange?: (\n changedValues: Record<string, RuleTypes>,\n allValues: Record<string, RuleTypes>\n ) => void\n): FormInstance => {\n const touchedFieldsRef = useRef(new Set<string>());\n const rulesRef = useRef<Record<string, RuleObject[] | RuleRender>>({});\n const warningsRef = useRef<Record<string, string[]>>({});\n\n const formRef = useRef<Record<string, RuleTypes>>({ ...initialValues });\n const fieldInstancesRef = useRef<Record<string, FieldInstancesRef>>({});\n\n const [isReseting, setIsReseting] = useState(false);\n const [errors, setErrors] = useState<Record<string, string[]>>({});\n\n const fieldSubscribers = useRef<\n Record<string, ((value: RuleTypes) => void)[]>\n >({});\n\n const formSubscribers = useRef<\n ((values: Record<string, RuleTypes>) => void)[]\n >([]);\n\n function getFieldInstance(name: string): FieldInstancesRef {\n return fieldInstancesRef.current[name] || null;\n }\n\n function getFieldValue(name: string) {\n return formRef.current[name];\n }\n\n function getFieldsValue(nameList?: string[]) {\n if (!nameList) {\n return { ...formRef.current };\n }\n\n return nameList.reduce((acc, key) => {\n acc[key] = formRef.current[key];\n\n return acc;\n }, {} as Record<string, RuleTypes>);\n }\n\n function getFieldError(name: string) {\n return errors[name] || [];\n }\n\n function getFieldWarning(name: string): string[] {\n return warningsRef.current[name] || [];\n }\n\n function getFieldsError(): Pick<FieldError, 'errors' | 'name'>[] {\n return Object.entries(errors).map(([name, err]) => ({ name, errors: err }));\n }\n\n function setFieldValue(\n name: string,\n value: RuleTypes,\n errors?: string[],\n reset?: boolean\n ) {\n if (\n !reset &&\n ([undefined, null].includes(value) || formRef.current[name] === value)\n ) {\n return;\n }\n\n formRef.current[name] = value;\n touchedFieldsRef.current.add(name);\n\n if (!errors?.length) {\n validateField(name).then(() => {\n const allValues = getFieldsValue();\n fieldSubscribers.current[name]?.forEach(callback => callback(value));\n formSubscribers.current.forEach(callback => callback(allValues));\n\n if (onValuesChange) {\n onValuesChange({ [name]: value }, allValues);\n }\n\n if (onFieldsChange) {\n onFieldsChange([{ name, value }]);\n }\n });\n } else {\n setErrors({ [name]: errors });\n }\n }\n\n function setFieldsValue(values: Partial<Record<string, RuleTypes>>) {\n Object.entries(values).forEach(([name, value]) =>\n setFieldValue(name, value as RuleTypes)\n );\n }\n\n function setFields(fields: FieldData[]) {\n fields.forEach(({ name, value, errors }) =>\n setFieldValue(Array.isArray(name) ? name[0] : name, value, errors)\n );\n }\n\n function isFieldTouched(name: string) {\n return touchedFieldsRef.current.has(name);\n }\n\n function isFieldsTouched(nameList?: string[], allFieldsTouched = false) {\n if (!nameList) {\n return touchedFieldsRef.current.size > 0;\n }\n\n return allFieldsTouched\n ? nameList.every(name => touchedFieldsRef.current.has(name))\n : nameList.some(name => touchedFieldsRef.current.has(name));\n }\n\n function isFieldValidating(name: string): boolean {\n return !!name;\n }\n\n function registerField(name: string, rules: RuleObject[] = []) {\n if (!(name in formRef.current)) {\n formRef.current[name] = initialValues?.[name];\n }\n\n rulesRef.current[name] = rules;\n }\n\n async function validateField(name: string) {\n const value = formRef.current[name];\n const rules = rulesRef.current[name] || [];\n const fieldErrors: string[] = [];\n const fieldWarnings: string[] = [];\n\n await Promise.all(\n [rules].flat(1).map(async (rule: RuleTypes) => {\n rule = typeof rule === 'function' ? rule(formInstance) : rule;\n\n if (\n rule.required &&\n (value === undefined ||\n value === null ||\n value === '' ||\n (Array.isArray(value) && !value.length))\n ) {\n fieldErrors.push(rule.message || 'This field is required');\n }\n\n if (\n (typeof value === 'string' ||\n typeof value === 'number' ||\n Array.isArray(value)) &&\n rule.min !== undefined &&\n String(value).length < rule.min\n ) {\n fieldErrors.push(\n rule.message || `Must be at least ${rule.min} characters`\n );\n }\n\n if (\n (typeof value === 'string' ||\n typeof value === 'number' ||\n Array.isArray(value)) &&\n rule.max !== undefined &&\n String(value).length > rule.max\n ) {\n fieldErrors.push(\n rule.message || `Must be at most ${rule.max} characters`\n );\n }\n\n if (rule.pattern && !rule.pattern.test(String(value))) {\n fieldErrors.push(rule.message || 'Invalid format');\n }\n\n if (rule.warningPattern && !rule.warningPattern.test(String(value))) {\n fieldWarnings.push(rule.warningMessage || 'Invalid format');\n }\n\n if (rule.validator) {\n try {\n await rule.validator(\n rule,\n value,\n (error?: string) => error && fieldErrors.push(error)\n );\n } catch (error) {\n fieldErrors.push(\n error instanceof Error ? error.message : String(error)\n );\n }\n }\n })\n );\n\n setErrors(prev => ({ ...prev, [name]: fieldErrors }));\n warningsRef.current[name] = fieldWarnings;\n\n return fieldErrors.length === 0;\n }\n\n async function validateFields(nameList?: string[]) {\n const fieldsToValidate = nameList || Object.keys(formRef.current);\n const results = await Promise.all(\n fieldsToValidate.map(name => validateField(name))\n );\n\n return results.every(valid => valid);\n }\n\n function resetFields(nameList?: string[]) {\n if (nameList?.length) {\n nameList.forEach((name: string) => {\n formRef.current[name] = initialValues[name];\n touchedFieldsRef.current.delete(name);\n delete warningsRef.current[name];\n setErrors(prev => ({ ...prev, [name]: [] }));\n setFieldValue(name, initialValues[name], undefined, true);\n });\n } else {\n touchedFieldsRef.current.clear();\n warningsRef.current = {};\n\n Object.keys(formRef.current).forEach(name => {\n setFieldValue(name, initialValues[name], undefined, true);\n });\n }\n\n formSubscribers.current.forEach(callback => callback(getFieldsValue()));\n setIsReseting(prev => !prev);\n }\n\n async function submit() {\n return (await validateFields()) ? formRef.current : undefined;\n }\n\n function subscribeToField(\n name: string,\n callback: (value: RuleTypes) => void\n ) {\n if (!fieldSubscribers.current[name]) {\n fieldSubscribers.current[name] = [];\n }\n\n fieldSubscribers.current[name].push(callback);\n\n return () => {\n fieldSubscribers.current[name] = fieldSubscribers.current[name].filter(\n cb => cb !== callback\n );\n };\n }\n\n function subscribeToForm(\n callback: (values: Record<string, RuleTypes>) => void\n ) {\n formSubscribers.current.push(callback);\n\n return () => {\n formSubscribers.current = formSubscribers.current.filter(\n cb => cb !== callback\n );\n };\n }\n\n function subscribeToFields(\n names: string[],\n callback: (values: Record<string, RuleTypes>) => void\n ) {\n const fieldCallbacks = names.map(name =>\n subscribeToField(name, () => {\n const updatedValues = getFieldsValue(names);\n callback(updatedValues);\n })\n );\n\n return () => {\n fieldCallbacks.forEach(unsubscribe => unsubscribe());\n };\n }\n\n const formInstance: FormInstance = {\n submit,\n setFields,\n resetFields,\n getFieldError,\n registerField,\n setFieldValue,\n getFieldValue,\n validateFields,\n setFieldsValue,\n getFieldsValue,\n isFieldTouched,\n getFieldsError,\n isFieldsTouched,\n getFieldWarning,\n isFieldValidating,\n subscribeToField,\n subscribeToForm,\n onFieldsChange,\n onValuesChange,\n getFieldInstance,\n subscribeToFields,\n isReseting\n };\n\n return formInstance;\n};\n\nexport { useForm };\n","'use client';\n\nimport {\n Children,\n Fragment,\n isValidElement,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { clsx } from 'lib/helpers';\nimport { RuleType, SyntheticBaseEvent } from 'lib/types';\nimport {\n FormItemChildComponentProps,\n FormItemProps\n} from 'lib/types/form';\nimport { OptionProps } from 'lib/types/select';\nimport { prefixClsFormItem } from 'lib/utils';\nimport './style.css';\nimport { FormContext } from '../Form';\n\nconst REF_CLIENT_HEIGHT = 24;\n\nconst FormItem = ({\n prefixCls = prefixClsFormItem,\n name,\n label,\n rules = [],\n children,\n className = '',\n layout = 'vertical',\n style = {},\n valuePropName,\n dependencies = [],\n initialValue,\n feedbackIcons,\n ...props\n}: FormItemProps) => {\n const formContext = useContext(FormContext);\n\n const errorRef = useRef<HTMLSpanElement>(null);\n\n if (!formContext) {\n throw new Error('FormItem must be used within a Form');\n }\n\n const {\n isReseting,\n registerField,\n getFieldError,\n getFieldValue,\n setFieldValue,\n getFieldInstance,\n subscribeToFields,\n validateFields\n } = formContext;\n\n const childrenList = useMemo(\n () => (Array.isArray(children) ? children : [children]).filter(Boolean),\n [children]\n );\n\n useEffect(() => {\n if (name && !getFieldInstance(name)) {\n registerField(name, rules);\n }\n }, [name, rules]);\n\n useEffect(() => {\n if (initialValue) {\n setFieldValue(name, initialValue);\n }\n }, []);\n\n useEffect(() => {\n if (name && dependencies.length > 0) {\n const unsubscribe = subscribeToFields(dependencies, () => {\n validateFields([name]);\n });\n\n return () => {\n unsubscribe();\n };\n }\n }, [dependencies, name]);\n\n useEffect(() => {\n if (\n errorRef.current &&\n errorRef.current?.clientHeight >= REF_CLIENT_HEIGHT\n ) {\n errorRef.current.style.position = 'relative';\n errorRef.current.style.marginTop = '-16px';\n }\n }, [errorRef.current]);\n\n const isRequired = useMemo(\n () => rules.some((rule: RuleType) => rule.required),\n [rules]\n );\n\n const errorMessage = getFieldError(valuePropName || name)?.[0];\n\n return (\n <div\n style={style}\n className={clsx([\n `${prefixCls}`,\n {\n [layout]: layout,\n [className]: className,\n noStyle: props.noStyle\n }\n ])}\n >\n {!props.noStyle && (label || name) && (\n <label className={`${prefixCls}-label`} htmlFor={name}>\n {label || name}:\n {isRequired && <span className={`${prefixCls}-required`}>*</span>}\n {/* @Todo need to add Tooltip like Ant design */}\n </label>\n )}\n\n {Children.map(childrenList, (child, key) => {\n if (isValidElement(child) && child.type !== Fragment) {\n const { value, ...childProps } = child.props;\n const fieldValue =\n getFieldValue(valuePropName || name) ?? initialValue;\n\n return (\n <FormItemChildComponent\n {...childProps}\n name={name}\n child={child}\n value={value}\n fieldValue={fieldValue}\n noStyle={props.noStyle}\n normalize={props.normalize}\n key={`${key}_${isReseting}`}\n error={Boolean(errorMessage)}\n setFieldValue={setFieldValue}\n valuePropName={valuePropName}\n feedbackIcons={feedbackIcons}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n size={childProps.size || props.size}\n />\n );\n }\n\n return child;\n })}\n\n {!props.noStyle && errorMessage && (\n <span ref={errorRef} className={`${prefixCls}-error`}>\n {errorMessage}\n </span>\n )}\n </div>\n );\n};\n\nconst FormItemChildComponent = ({\n child,\n name,\n error,\n fieldValue,\n setFieldValue,\n onChange,\n valuePropName,\n normalize,\n ...props\n}: FormItemChildComponentProps) => {\n const formContext = useContext(FormContext);\n\n const [wasNormalize, setWasNormalize] = useState(false);\n\n const { getFieldsValue } = formContext || {};\n\n const handleChange = (e: SyntheticBaseEvent, option?: OptionProps) => {\n let rawValue: RuleType | SyntheticBaseEvent = e?.target\n ? e.target.value\n : e;\n\n if (normalize) {\n const prevValue = fieldValue ?? props.value;\n const allValues = getFieldsValue?.();\n\n rawValue = normalize(rawValue, prevValue, allValues);\n\n if (rawValue === prevValue) {\n e.target.value = rawValue;\n\n setWasNormalize(prev => !prev);\n\n const timeout = setTimeout(() => {\n (\n document.querySelector(`[name='${name}']`) as HTMLInputElement\n )?.focus();\n\n clearTimeout(timeout);\n }, 0);\n\n return;\n }\n }\n\n setFieldValue(valuePropName || name, rawValue);\n onChange?.(e, option);\n };\n\n return (\n <child.type\n {...props}\n name={name}\n onChange={handleChange}\n {...(error ? { error } : {})}\n key={`${name}_${wasNormalize}`}\n value={fieldValue ?? props.value}\n />\n );\n};\n\nFormItem.displayName = 'FormItem';\n\nexport default FormItem;","'use client';\n\nimport {\n Children,\n createContext,\n FC,\n Fragment,\n isValidElement,\n SyntheticEvent,\n useEffect,\n useMemo,\n useRef\n} from 'react';\nimport { useForm } from '@/hooks/useForm';\nimport { FormInstance, FormItemProps, FormProps } from '../../types/form';\nimport { prefixClsForm } from '../../utils';\nimport FormItem from './Item/Item';\n\nexport const FormContext = createContext<FormInstance | null>(null);\n\nconst Form: FC<FormProps> & { Item: FC<FormItemProps> } = ({\n children,\n form,\n style = {},\n prefixCls = prefixClsForm,\n className = '',\n onFinish,\n onFinishFailed,\n initialValues = {},\n onValuesChange,\n onFieldsChange,\n layout = 'horizontal',\n ...rest\n}) => {\n const internalForm = useForm(initialValues, onFieldsChange, onValuesChange);\n const formInstance = form || internalForm;\n const formRef = useRef<HTMLFormElement>(null);\n\n const handleSubmit = async (e: SyntheticEvent) => {\n e.preventDefault();\n\n if (await formInstance.validateFields()) {\n onFinish?.(formInstance.getFieldsValue());\n } else if (onFinishFailed) {\n const errorFields = formInstance.getFieldsError();\n onFinishFailed({ values: formInstance.getFieldsValue(), errorFields });\n }\n };\n\n const childrenList = useMemo(\n () => (Array.isArray(children) ? children : [children]).filter(Boolean),\n [children]\n );\n\n useEffect(() => {\n if (onFieldsChange) {\n formInstance.onFieldsChange = onFieldsChange;\n }\n\n if (onValuesChange) {\n formInstance.onValuesChange = onValuesChange;\n }\n }, [formInstance, onFieldsChange, onValuesChange]);\n\n return (\n <FormContext.Provider value={formInstance}>\n <form\n style={style}\n ref={formRef}\n onSubmit={handleSubmit}\n className={`${prefixCls} ${className}`}\n >\n {Children.map(childrenList, child => {\n if (isValidElement(child) && child.type !== Fragment) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n const { ...childProps } = child.props;\n\n return (\n <child.type\n {...childProps}\n child={child}\n size={childProps.size || rest.size}\n layout={childProps.layout || layout}\n />\n );\n }\n\n return child;\n })}\n </form>\n </FormContext.Provider>\n );\n};\n\nForm.Item = FormItem;\n\nexport default Form;\n","import { useContext, useEffect, useState } from 'react';\nimport { FormContext } from 'lib/components/Form/Form';\nimport { RuleType } from 'lib/types';\nimport { FormInstance } from 'lib/types/form';\n\ntype UseWatchProps = {\n name?: string;\n defaultValue?: RuleType;\n form?: FormInstance;\n};\n\nexport const useWatch = ({ name, defaultValue, form }: UseWatchProps) => {\n const formContext = useContext(FormContext);\n const formInstance = form || formContext;\n\n if (!formInstance) {\n throw new Error(\n 'useWatch must be used within a Form or with a form instance.'\n );\n }\n\n const [value, setValue] = useState(() => {\n return name\n ? formInstance.getFieldValue(name) ?? defaultValue\n : formInstance.getFieldsValue() ?? defaultValue;\n });\n\n useEffect(() => {\n if (!name) {\n const unsubscribe = formInstance.subscribeToForm(setValue);\n\n return () => unsubscribe();\n }\n\n const unsubscribe = formInstance.subscribeToField(name, setValue);\n\n return () => unsubscribe();\n }, [name, formInstance]);\n\n return value;\n};\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","prefixClsFormItem","prefixClsEmpty","prefixClsCheckbox","prefixClsButton","EmptyContent","icon","className","title","description","prefixCls","_jsxs","_jsx","children","width","height","viewBox","xmlns","transform","fill","cx","cy","rx","ry","stroke","d","clsx","args","flatMap","arg","String","Array","isArray","split","Object","entries","filter","value","Boolean","map","key","join","Button","variant","color","shape","size","htmlType","rootClassName","classNames","customClassNames","styles","iconPosition","disabled","ghost","danger","block","href","iconNode","isLoading","restProps","classes","mergedDisabled","content","_Fragment","undefined","CheckboxClient","forwardRef","defaultChecked","checked","onChange","onClick","onMouseEnter","onMouseLeave","onKeyPress","onKeyDown","tabIndex","name","id","autoFocus","required","noStyle","isChecked","internalChecked","setInternalChecked","useState","handleClick","e","stopPropagation","target","useEffect","opacity","Number","displayName","Checkbox","useForm","initialValues","onFieldsChange","onValuesChange","touchedFieldsRef","useRef","Set","rulesRef","warningsRef","formRef","fieldInstancesRef","isReseting","setIsReseting","errors","setErrors","fieldSubscribers","formSubscribers","getFieldInstance","current","getFieldValue","getFieldsValue","nameList","reduce","acc","getFieldError","getFieldWarning","getFieldsError","err","setFieldValue","reset","includes","add","length","validateField","then","allValues","forEach","callback","setFieldsValue","values","setFields","fields","isFieldTouched","has","isFieldsTouched","allFieldsTouched","every","some","isFieldValidating","registerField","rules","fieldErrors","fieldWarnings","Promise","all","flat","rule","formInstance","push","message","min","max","pattern","test","warningPattern","warningMessage","validator","error","Error","prev","validateFields","fieldsToValidate","keys","results","valid","resetFields","delete","clear","submit","subscribeToField","cb","subscribeToForm","subscribeToFields","names","fieldCallbacks","updatedValues","unsubscribe","REF_CLIENT_HEIGHT","FormItem","label","layout","valuePropName","dependencies","initialValue","feedbackIcons","props","formContext","useContext","FormContext","errorRef","childrenList","useMemo","clientHeight","position","marginTop","isRequired","errorMessage","htmlFor","Children","child","isValidElement","Fragment","childProps","fieldValue","_createElement","FormItemChildComponent","normalize","wasNormalize","setWasNormalize","handleChange","option","rawValue","prevValue","timeout","setTimeout","querySelector","focus","clearTimeout","createContext","useWatch","defaultValue","form","setValue"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../lib/utils/index.ts","../lib/components/Empty/Empty.tsx","../lib/helpers/index.ts","../lib/components/Button/Button.tsx","../lib/components/Checkbox/Checkbox.client.tsx","../lib/components/Checkbox/Checkbox.tsx","../lib/hooks/useForm.ts","../lib/components/Form/Item/Item.tsx","../lib/components/Form/Form.tsx","../lib/hooks/useWatch.ts"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","export const prefixClsForm = 'xUi-form';\nexport const prefixClsFormItem = 'xUi-form-item';\nexport const prefixClsEmpty = 'xUi-empty';\nexport const prefixClsInput = 'xUi-input';\nexport const prefixClsSelect = 'xUi-select';\nexport const prefixClsCheckbox = 'xUi-checkbox';\nexport const prefixClsRadio = 'xUi-radio';\nexport const prefixClsTextArea = 'xUi-textarea';\nexport const prefixClsUpload = 'xUi-upload';\nexport const prefixClsDatePicker = 'xUi-datepicker';\nexport const prefixClsRangePicker = 'xUi-rangepicker';\nexport const prefixClsTimePicker = 'xUi-timepicker';\nexport const prefixClsButton = 'xUi-button';\nexport const prefixClsSkeleton = 'xUi-skeleton';\n","import { EmptyContentProps } from '../../types/empty';\nimport { prefixClsEmpty } from '../../utils';\nimport './style.css';\n\nconst EmptyContent = ({\n icon,\n style = {},\n className = '',\n title = 'No Data',\n description = 'No data',\n prefixCls = prefixClsEmpty\n}: EmptyContentProps) => (\n <div\n style={style}\n className={`${prefixCls} ${prefixCls}-normal ${prefixCls}-small ${className}`}\n >\n <div className={`${prefixCls}-image`}>\n {icon || (\n <svg\n width=\"64\"\n height=\"41\"\n viewBox=\"0 0 64 41\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <title>{title}</title>\n <g transform=\"translate(0 1)\" fill=\"none\">\n <ellipse fill=\"#f5f5f5\" cx=\"32\" cy=\"33\" rx=\"32\" ry=\"7\"></ellipse>\n <g stroke=\"#d9d9d9\">\n <path d=\"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z\"></path>\n <path\n d=\"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\"\n fill=\"#fafafa\"\n ></path>\n </g>\n </g>\n </svg>\n )}\n </div>\n <div className={`${prefixCls}-description`}>{description}</div>\n </div>\n);\n\nexport default EmptyContent;\n","import { RuleType } from '../types';\n\nexport const parseValue = (value: RuleType): RuleType => {\n if (value === 'true') {\n return true;\n }\n\n if (value === 'false') {\n return false;\n }\n\n if (!isNaN(Number(value))) {\n return Number(value);\n }\n\n return value;\n};\n\nexport function createArray(length: number): number[] {\n return Array.from({ length }, (_, index) => index);\n}\n\nexport function clsx(...args: RuleType[]): string {\n return args\n .flatMap(arg => {\n if (!arg) {\n return [];\n }\n\n if (typeof arg === 'string') {\n return [arg];\n }\n\n if (typeof arg === 'number') {\n return [String(arg)];\n }\n\n if (Array.isArray(arg)) {\n return clsx(...arg).split(' ');\n }\n\n if (typeof arg === 'object') {\n return Object.entries(arg)\n .filter(([, value]) => Boolean(value))\n .map(([key]) => key);\n }\n\n return [];\n })\n .filter(Boolean)\n .join(' ');\n}\n","import { ReactElement, ReactNode } from 'react';\nimport { clsx } from '../../helpers';\nimport { ButtonProps } from '../../types/button';\nimport { prefixClsButton } from '../../utils';\nimport './style.css';\n\nconst Button = ({\n type = 'default',\n variant = 'solid',\n color = 'default',\n shape = 'default',\n size = 'middle',\n htmlType = 'button',\n className,\n rootClassName,\n classNames: customClassNames = {},\n styles = {},\n prefixCls = prefixClsButton,\n iconPosition = 'start',\n disabled = false,\n ghost = false,\n danger = false,\n block = false,\n children,\n href,\n iconNode,\n isLoading = false,\n ...restProps\n}: ButtonProps & {\n iconNode?: ReactNode;\n isLoading?: boolean;\n}): ReactElement => {\n const classes = clsx(\n prefixCls,\n rootClassName,\n `${prefixCls}-${type}`,\n `${prefixCls}-${variant}`,\n `${prefixCls}-${color}`,\n `${prefixCls}-${shape}`,\n `${prefixCls}-size-${size}`,\n {\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-ghost`]: ghost,\n [`${prefixCls}-danger`]: danger,\n [`${prefixCls}-loading`]: isLoading,\n [`${prefixCls}-disabled`]: disabled\n },\n className\n );\n\n const mergedDisabled = disabled || isLoading;\n\n const content = (\n <>\n {iconNode && iconPosition === 'start' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n <span className={`${prefixCls}-content`}>{children}</span>\n {iconNode && iconPosition === 'end' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n </>\n );\n\n if (href) {\n return (\n <a\n className={classes}\n href={mergedDisabled ? undefined : href}\n aria-disabled={mergedDisabled}\n >\n {content}\n </a>\n );\n }\n\n return (\n <button\n type={htmlType}\n className={classes}\n disabled={mergedDisabled}\n {...restProps}\n >\n {content}\n </button>\n );\n};\n\nexport default Button;\n","'use client';\n\nimport {\n ForwardedRef,\n forwardRef,\n MouseEvent,\n ReactElement,\n useEffect,\n useState\n} from 'react';\nimport { clsx } from '../../helpers';\nimport { SyntheticBaseEvent } from '../../types';\nimport { CheckboxProps } from '../../types/checkbox';\nimport './style.css';\n\nconst CheckboxClient = forwardRef<HTMLDivElement, CheckboxProps>(\n (\n {\n prefixCls,\n className = '',\n defaultChecked = false,\n checked,\n style,\n disabled = false,\n onChange,\n onClick,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n value = false,\n required = false,\n noStyle\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const isChecked = checked !== undefined ? checked : defaultChecked || value;\n const [internalChecked, setInternalChecked] = useState(isChecked);\n\n const handleClick = (\n e: MouseEvent<HTMLInputElement> & SyntheticBaseEvent\n ) => {\n e.stopPropagation();\n\n if (disabled) {\n return;\n }\n\n setInternalChecked(!internalChecked);\n e.target.value = !internalChecked;\n\n onClick?.(e);\n onChange?.(e);\n };\n\n useEffect(() => {\n if (checked !== undefined) {\n setInternalChecked(checked);\n }\n }, [checked]);\n\n return (\n <div className={`${prefixCls}-wrapper`}>\n <div\n ref={ref}\n style={style}\n onClick={handleClick}\n className={clsx([\n prefixCls,\n className,\n {\n noStyle: noStyle,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-checked`]: internalChecked\n }\n ])}\n >\n <input\n id={id}\n type={type}\n name={name}\n disabled={disabled}\n tabIndex={tabIndex}\n required={required}\n autoFocus={autoFocus}\n onKeyDown={onKeyDown}\n onKeyPress={onKeyPress}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n />\n\n <span className={`${prefixCls}-box`}>\n <span\n className={`${prefixCls}-check`}\n style={{ opacity: Number(internalChecked) }}\n />\n </span>\n </div>\n\n {children && <span className={`${prefixCls}-label`}>{children}</span>}\n </div>\n );\n }\n);\n\nCheckboxClient.displayName = 'CheckboxClient';\n\nexport default CheckboxClient;","import { ReactElement } from 'react';\nimport { CheckboxProps } from '../../types/checkbox';\nimport { prefixClsCheckbox } from '../../utils';\nimport CheckboxClient from './Checkbox.client';\n\nconst Checkbox = ({\n prefixCls = prefixClsCheckbox,\n className = '',\n defaultChecked = false,\n checked,\n style,\n disabled = false,\n onChange,\n onClick,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n value = false,\n required = false,\n noStyle\n}: CheckboxProps): ReactElement => {\n return (\n <CheckboxClient\n prefixCls={prefixCls}\n className={className}\n defaultChecked={defaultChecked}\n checked={checked}\n style={style}\n disabled={disabled}\n onChange={onChange}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onKeyPress={onKeyPress}\n onKeyDown={onKeyDown}\n tabIndex={tabIndex}\n name={name}\n id={id}\n autoFocus={autoFocus}\n type={type}\n value={value}\n required={required}\n noStyle={noStyle}\n >\n {children}\n </CheckboxClient>\n );\n};\n\nCheckbox.displayName = 'Checkbox';\n\nexport default Checkbox;","'use client';\n\nimport { useRef, useState } from 'react';\nimport { RuleTypes } from '../types';\nimport type {\n FieldData,\n FieldError,\n FieldInstancesRef,\n FormInstance,\n RuleObject,\n RuleRender\n} from '../types/form';\n\nconst useForm = (\n initialValues: Record<string, RuleTypes> = {},\n onFieldsChange?: (changedFields: FieldData[]) => void,\n onValuesChange?: (\n changedValues: Record<string, RuleTypes>,\n allValues: Record<string, RuleTypes>\n ) => void\n): FormInstance => {\n const touchedFieldsRef = useRef(new Set<string>());\n const rulesRef = useRef<Record<string, RuleObject[] | RuleRender>>({});\n const warningsRef = useRef<Record<string, string[]>>({});\n\n const formRef = useRef<Record<string, RuleTypes>>({ ...initialValues });\n const fieldInstancesRef = useRef<Record<string, FieldInstancesRef>>({});\n\n const [isReseting, setIsReseting] = useState(false);\n const [errors, setErrors] = useState<Record<string, string[]>>({});\n\n const fieldSubscribers = useRef<\n Record<string, ((value: RuleTypes) => void)[]>\n >({});\n\n const formSubscribers = useRef<\n ((values: Record<string, RuleTypes>) => void)[]\n >([]);\n\n function getFieldInstance(name: string): FieldInstancesRef {\n return fieldInstancesRef.current[name] || null;\n }\n\n function getFieldValue(name: string) {\n return formRef.current[name];\n }\n\n function getFieldsValue(nameList?: string[]) {\n if (!nameList) {\n return { ...formRef.current };\n }\n\n return nameList.reduce((acc, key) => {\n acc[key] = formRef.current[key];\n\n return acc;\n }, {} as Record<string, RuleTypes>);\n }\n\n function getFieldError(name: string) {\n return errors[name] || [];\n }\n\n function getFieldWarning(name: string): string[] {\n return warningsRef.current[name] || [];\n }\n\n function getFieldsError(): Pick<FieldError, 'errors' | 'name'>[] {\n return Object.entries(errors).map(([name, err]) => ({ name, errors: err }));\n }\n\n function setFieldValue(\n name: string,\n value: RuleTypes,\n errors?: string[],\n reset?: boolean\n ) {\n if (\n !reset &&\n ([undefined, null].includes(value) || formRef.current[name] === value)\n ) {\n return;\n }\n\n formRef.current[name] = value;\n touchedFieldsRef.current.add(name);\n\n if (!errors?.length) {\n validateField(name).then(() => {\n const allValues = getFieldsValue();\n fieldSubscribers.current[name]?.forEach(callback => callback(value));\n formSubscribers.current.forEach(callback => callback(allValues));\n\n if (onValuesChange) {\n onValuesChange({ [name]: value }, allValues);\n }\n\n if (onFieldsChange) {\n onFieldsChange([{ name, value }]);\n }\n });\n } else {\n setErrors({ [name]: errors });\n }\n }\n\n function setFieldsValue(values: Partial<Record<string, RuleTypes>>) {\n Object.entries(values).forEach(([name, value]) =>\n setFieldValue(name, value as RuleTypes)\n );\n }\n\n function setFields(fields: FieldData[]) {\n fields.forEach(({ name, value, errors }) =>\n setFieldValue(Array.isArray(name) ? name[0] : name, value, errors)\n );\n }\n\n function isFieldTouched(name: string) {\n return touchedFieldsRef.current.has(name);\n }\n\n function isFieldsTouched(nameList?: string[], allFieldsTouched = false) {\n if (!nameList) {\n return touchedFieldsRef.current.size > 0;\n }\n\n return allFieldsTouched\n ? nameList.every(name => touchedFieldsRef.current.has(name))\n : nameList.some(name => touchedFieldsRef.current.has(name));\n }\n\n function isFieldValidating(name: string): boolean {\n return !!name;\n }\n\n function registerField(name: string, rules: RuleObject[] = []) {\n if (!(name in formRef.current)) {\n formRef.current[name] = initialValues?.[name];\n }\n\n rulesRef.current[name] = rules;\n }\n\n async function validateField(name: string) {\n const value = formRef.current[name];\n const rules = rulesRef.current[name] || [];\n const fieldErrors: string[] = [];\n const fieldWarnings: string[] = [];\n\n await Promise.all(\n [rules].flat(1).map(async (rule: RuleTypes) => {\n rule = typeof rule === 'function' ? rule(formInstance) : rule;\n\n if (\n rule.required &&\n (value === undefined ||\n value === null ||\n value === '' ||\n (Array.isArray(value) && !value.length))\n ) {\n fieldErrors.push(rule.message || 'This field is required');\n }\n\n if (\n (typeof value === 'string' ||\n typeof value === 'number' ||\n Array.isArray(value)) &&\n rule.min !== undefined &&\n String(value).length < rule.min\n ) {\n fieldErrors.push(\n rule.message || `Must be at least ${rule.min} characters`\n );\n }\n\n if (\n (typeof value === 'string' ||\n typeof value === 'number' ||\n Array.isArray(value)) &&\n rule.max !== undefined &&\n String(value).length > rule.max\n ) {\n fieldErrors.push(\n rule.message || `Must be at most ${rule.max} characters`\n );\n }\n\n if (rule.pattern && !rule.pattern.test(String(value))) {\n fieldErrors.push(rule.message || 'Invalid format');\n }\n\n if (rule.warningPattern && !rule.warningPattern.test(String(value))) {\n fieldWarnings.push(rule.warningMessage || 'Invalid format');\n }\n\n if (rule.validator) {\n try {\n await rule.validator(\n rule,\n value,\n (error?: string) => error && fieldErrors.push(error)\n );\n } catch (error) {\n fieldErrors.push(\n error instanceof Error ? error.message : String(error)\n );\n }\n }\n })\n );\n\n setErrors(prev => ({ ...prev, [name]: fieldErrors }));\n warningsRef.current[name] = fieldWarnings;\n\n return fieldErrors.length === 0;\n }\n\n async function validateFields(nameList?: string[]) {\n const fieldsToValidate = nameList || Object.keys(formRef.current);\n const results = await Promise.all(\n fieldsToValidate.map(name => validateField(name))\n );\n\n return results.every(valid => valid);\n }\n\n function resetFields(nameList?: string[]) {\n if (nameList?.length) {\n nameList.forEach((name: string) => {\n formRef.current[name] = initialValues[name];\n touchedFieldsRef.current.delete(name);\n delete warningsRef.current[name];\n setErrors(prev => ({ ...prev, [name]: [] }));\n setFieldValue(name, initialValues[name], undefined, true);\n });\n } else {\n touchedFieldsRef.current.clear();\n warningsRef.current = {};\n\n Object.keys(formRef.current).forEach(name => {\n setFieldValue(name, initialValues[name], undefined, true);\n });\n }\n\n formSubscribers.current.forEach(callback => callback(getFieldsValue()));\n setIsReseting(prev => !prev);\n }\n\n async function submit() {\n return (await validateFields()) ? formRef.current : undefined;\n }\n\n function subscribeToField(\n name: string,\n callback: (value: RuleTypes) => void\n ) {\n if (!fieldSubscribers.current[name]) {\n fieldSubscribers.current[name] = [];\n }\n\n fieldSubscribers.current[name].push(callback);\n\n return () => {\n fieldSubscribers.current[name] = fieldSubscribers.current[name].filter(\n cb => cb !== callback\n );\n };\n }\n\n function subscribeToForm(\n callback: (values: Record<string, RuleTypes>) => void\n ) {\n formSubscribers.current.push(callback);\n\n return () => {\n formSubscribers.current = formSubscribers.current.filter(\n cb => cb !== callback\n );\n };\n }\n\n function subscribeToFields(\n names: string[],\n callback: (values: Record<string, RuleTypes>) => void\n ) {\n const fieldCallbacks = names.map(name =>\n subscribeToField(name, () => {\n const updatedValues = getFieldsValue(names);\n callback(updatedValues);\n })\n );\n\n return () => {\n fieldCallbacks.forEach(unsubscribe => unsubscribe());\n };\n }\n\n const formInstance: FormInstance = {\n submit,\n setFields,\n resetFields,\n getFieldError,\n registerField,\n setFieldValue,\n getFieldValue,\n validateFields,\n setFieldsValue,\n getFieldsValue,\n isFieldTouched,\n getFieldsError,\n isFieldsTouched,\n getFieldWarning,\n isFieldValidating,\n subscribeToField,\n subscribeToForm,\n onFieldsChange,\n onValuesChange,\n getFieldInstance,\n subscribeToFields,\n isReseting\n };\n\n return formInstance;\n};\n\nexport { useForm };\n","'use client';\n\nimport {\n Children,\n Fragment,\n isValidElement,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { clsx } from '../../../helpers';\nimport { RuleType, SyntheticBaseEvent } from '../../../types';\nimport {\n FormItemChildComponentProps,\n FormItemProps\n} from '../../../types/form';\nimport { OptionProps } from '../../../types/select';\nimport { prefixClsFormItem } from '../../../utils';\nimport './style.css';\nimport { FormContext } from '../Form';\n\nconst REF_CLIENT_HEIGHT = 24;\n\nconst FormItem = ({\n prefixCls = prefixClsFormItem,\n name,\n label,\n rules = [],\n children,\n className = '',\n layout = 'vertical',\n style = {},\n valuePropName,\n dependencies = [],\n initialValue,\n feedbackIcons,\n ...props\n}: FormItemProps) => {\n const formContext = useContext(FormContext);\n\n const errorRef = useRef<HTMLSpanElement>(null);\n\n if (!formContext) {\n throw new Error('FormItem must be used within a Form');\n }\n\n const {\n isReseting,\n registerField,\n getFieldError,\n getFieldValue,\n setFieldValue,\n getFieldInstance,\n subscribeToFields,\n validateFields\n } = formContext;\n\n const childrenList = useMemo(\n () => (Array.isArray(children) ? children : [children]).filter(Boolean),\n [children]\n );\n\n useEffect(() => {\n if (name && !getFieldInstance(name)) {\n registerField(name, rules);\n }\n }, [name, rules]);\n\n useEffect(() => {\n if (initialValue) {\n setFieldValue(name, initialValue);\n }\n }, []);\n\n useEffect(() => {\n if (name && dependencies.length > 0) {\n const unsubscribe = subscribeToFields(dependencies, () => {\n validateFields([name]);\n });\n\n return () => {\n unsubscribe();\n };\n }\n }, [dependencies, name]);\n\n useEffect(() => {\n if (\n errorRef.current &&\n errorRef.current?.clientHeight >= REF_CLIENT_HEIGHT\n ) {\n errorRef.current.style.position = 'relative';\n errorRef.current.style.marginTop = '-16px';\n }\n }, [errorRef.current]);\n\n const isRequired = useMemo(\n () => rules.some((rule: RuleType) => rule.required),\n [rules]\n );\n\n const errorMessage = getFieldError(valuePropName || name)?.[0];\n\n return (\n <div\n style={style}\n className={clsx([\n `${prefixCls}`,\n {\n [layout]: layout,\n [className]: className,\n noStyle: props.noStyle\n }\n ])}\n >\n {!props.noStyle && (label || name) && (\n <label className={`${prefixCls}-label`} htmlFor={name}>\n {label || name}:\n {isRequired && <span className={`${prefixCls}-required`}>*</span>}\n {/* @Todo need to add Tooltip like Ant design */}\n </label>\n )}\n\n {Children.map(childrenList, (child, key) => {\n if (isValidElement(child) && child.type !== Fragment) {\n const { value, ...childProps } = child.props;\n const fieldValue =\n getFieldValue(valuePropName || name) ?? initialValue;\n\n return (\n <FormItemChildComponent\n {...childProps}\n name={name}\n child={child}\n value={value}\n fieldValue={fieldValue}\n noStyle={props.noStyle}\n normalize={props.normalize}\n key={`${key}_${isReseting}`}\n error={Boolean(errorMessage)}\n setFieldValue={setFieldValue}\n valuePropName={valuePropName}\n feedbackIcons={feedbackIcons}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n size={childProps.size || props.size}\n />\n );\n }\n\n return child;\n })}\n\n {!props.noStyle && errorMessage && (\n <span ref={errorRef} className={`${prefixCls}-error`}>\n {errorMessage}\n </span>\n )}\n </div>\n );\n};\n\nconst FormItemChildComponent = ({\n child,\n name,\n error,\n fieldValue,\n setFieldValue,\n onChange,\n valuePropName,\n normalize,\n ...props\n}: FormItemChildComponentProps) => {\n const formContext = useContext(FormContext);\n\n const [wasNormalize, setWasNormalize] = useState(false);\n\n const { getFieldsValue } = formContext || {};\n\n const handleChange = (e: SyntheticBaseEvent, option?: OptionProps) => {\n let rawValue: RuleType | SyntheticBaseEvent = e?.target\n ? e.target.value\n : e;\n\n if (normalize) {\n const prevValue = fieldValue ?? props.value;\n const allValues = getFieldsValue?.();\n\n rawValue = normalize(rawValue, prevValue, allValues);\n\n if (rawValue === prevValue) {\n e.target.value = rawValue;\n\n setWasNormalize(prev => !prev);\n\n const timeout = setTimeout(() => {\n (\n document.querySelector(`[name='${name}']`) as HTMLInputElement\n )?.focus();\n\n clearTimeout(timeout);\n }, 0);\n\n return;\n }\n }\n\n setFieldValue(valuePropName || name, rawValue);\n onChange?.(e, option);\n };\n\n return (\n <child.type\n {...props}\n name={name}\n onChange={handleChange}\n {...(error ? { error } : {})}\n key={`${name}_${wasNormalize}`}\n value={fieldValue ?? props.value}\n />\n );\n};\n\nFormItem.displayName = 'FormItem';\n\nexport default FormItem;","'use client';\n\nimport {\n Children,\n createContext,\n FC,\n Fragment,\n isValidElement,\n SyntheticEvent,\n useEffect,\n useMemo,\n useRef\n} from 'react';\nimport { useForm } from '@/hooks/useForm';\nimport { FormInstance, FormItemProps, FormProps } from '../../types/form';\nimport { prefixClsForm } from '../../utils';\nimport FormItem from './Item/Item';\n\nexport const FormContext = createContext<FormInstance | null>(null);\n\nconst Form: FC<FormProps> & { Item: FC<FormItemProps> } = ({\n children,\n form,\n style = {},\n prefixCls = prefixClsForm,\n className = '',\n onFinish,\n onFinishFailed,\n initialValues = {},\n onValuesChange,\n onFieldsChange,\n layout = 'horizontal',\n ...rest\n}) => {\n const internalForm = useForm(initialValues, onFieldsChange, onValuesChange);\n const formInstance = form || internalForm;\n const formRef = useRef<HTMLFormElement>(null);\n\n const handleSubmit = async (e: SyntheticEvent) => {\n e.preventDefault();\n\n if (await formInstance.validateFields()) {\n onFinish?.(formInstance.getFieldsValue());\n } else if (onFinishFailed) {\n const errorFields = formInstance.getFieldsError();\n onFinishFailed({ values: formInstance.getFieldsValue(), errorFields });\n }\n };\n\n const childrenList = useMemo(\n () => (Array.isArray(children) ? children : [children]).filter(Boolean),\n [children]\n );\n\n useEffect(() => {\n if (onFieldsChange) {\n formInstance.onFieldsChange = onFieldsChange;\n }\n\n if (onValuesChange) {\n formInstance.onValuesChange = onValuesChange;\n }\n }, [formInstance, onFieldsChange, onValuesChange]);\n\n return (\n <FormContext.Provider value={formInstance}>\n <form\n style={style}\n ref={formRef}\n onSubmit={handleSubmit}\n className={`${prefixCls} ${className}`}\n >\n {Children.map(childrenList, child => {\n if (isValidElement(child) && child.type !== Fragment) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n const { ...childProps } = child.props;\n\n return (\n <child.type\n {...childProps}\n child={child}\n size={childProps.size || rest.size}\n layout={childProps.layout || layout}\n />\n );\n }\n\n return child;\n })}\n </form>\n </FormContext.Provider>\n );\n};\n\nForm.Item = FormItem;\n\nexport default Form;\n","import { useContext, useEffect, useState } from 'react';\nimport { FormContext } from '../components/Form/Form';\nimport { RuleType } from '../types';\nimport { FormInstance } from '../types/form';\n\ntype UseWatchProps = {\n name?: string;\n defaultValue?: RuleType;\n form?: FormInstance;\n};\n\nexport const useWatch = ({ name, defaultValue, form }: UseWatchProps) => {\n const formContext = useContext(FormContext);\n const formInstance = form || formContext;\n\n if (!formInstance) {\n throw new Error(\n 'useWatch must be used within a Form or with a form instance.'\n );\n }\n\n const [value, setValue] = useState(() => {\n return name\n ? formInstance.getFieldValue(name) ?? defaultValue\n : formInstance.getFieldsValue() ?? defaultValue;\n });\n\n useEffect(() => {\n if (!name) {\n const unsubscribe = formInstance.subscribeToForm(setValue);\n\n return () => unsubscribe();\n }\n\n const unsubscribe = formInstance.subscribeToField(name, setValue);\n\n return () => unsubscribe();\n }, [name, formInstance]);\n\n return value;\n};\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","prefixClsFormItem","prefixClsEmpty","prefixClsCheckbox","prefixClsButton","EmptyContent","icon","className","title","description","prefixCls","_jsxs","_jsx","children","width","height","viewBox","xmlns","transform","fill","cx","cy","rx","ry","stroke","d","clsx","args","flatMap","arg","String","Array","isArray","split","Object","entries","filter","value","Boolean","map","key","join","Button","variant","color","shape","size","htmlType","rootClassName","classNames","customClassNames","styles","iconPosition","disabled","ghost","danger","block","href","iconNode","isLoading","restProps","classes","mergedDisabled","content","_Fragment","undefined","CheckboxClient","forwardRef","defaultChecked","checked","onChange","onClick","onMouseEnter","onMouseLeave","onKeyPress","onKeyDown","tabIndex","name","id","autoFocus","required","noStyle","isChecked","internalChecked","setInternalChecked","useState","handleClick","e","stopPropagation","target","useEffect","opacity","Number","displayName","Checkbox","useForm","initialValues","onFieldsChange","onValuesChange","touchedFieldsRef","useRef","Set","rulesRef","warningsRef","formRef","fieldInstancesRef","isReseting","setIsReseting","errors","setErrors","fieldSubscribers","formSubscribers","getFieldInstance","current","getFieldValue","getFieldsValue","nameList","reduce","acc","getFieldError","getFieldWarning","getFieldsError","err","setFieldValue","reset","includes","add","length","validateField","then","allValues","forEach","callback","setFieldsValue","values","setFields","fields","isFieldTouched","has","isFieldsTouched","allFieldsTouched","every","some","isFieldValidating","registerField","rules","fieldErrors","fieldWarnings","Promise","all","flat","rule","formInstance","push","message","min","max","pattern","test","warningPattern","warningMessage","validator","error","Error","prev","validateFields","fieldsToValidate","keys","results","valid","resetFields","delete","clear","submit","subscribeToField","cb","subscribeToForm","subscribeToFields","names","fieldCallbacks","updatedValues","unsubscribe","REF_CLIENT_HEIGHT","FormItem","label","layout","valuePropName","dependencies","initialValue","feedbackIcons","props","formContext","useContext","FormContext","errorRef","childrenList","useMemo","clientHeight","position","marginTop","isRequired","errorMessage","htmlFor","Children","child","isValidElement","Fragment","childProps","fieldValue","_createElement","FormItemChildComponent","normalize","wasNormalize","setWasNormalize","handleChange","option","rawValue","prevValue","timeout","setTimeout","querySelector","focus","clearTimeout","createContext","useWatch","defaultValue","form","setValue"],"mappings":"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","x_google_ignoreList":[0]}
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { useEffect, useMemo, useState } from 'react';
4
4
  import ButtonBase from './Button';
5
- import { ButtonProps } from 'lib/types/button';
6
- import { prefixClsButton } from 'lib/utils';
5
+ import { ButtonProps } from '../../types/button';
6
+ import { prefixClsButton } from '../../utils';
7
7
 
8
8
  const ButtonClient = (props: ButtonProps) => {
9
9
  const {
@@ -1,7 +1,7 @@
1
1
  import { ReactElement, ReactNode } from 'react';
2
- import { clsx } from 'lib/helpers';
3
- import { ButtonProps } from 'lib/types/button';
4
- import { prefixClsButton } from 'lib/utils';
2
+ import { clsx } from '../../helpers';
3
+ import { ButtonProps } from '../../types/button';
4
+ import { prefixClsButton } from '../../utils';
5
5
  import './style.css';
6
6
 
7
7
  const Button = ({
@@ -8,9 +8,9 @@ import {
8
8
  useEffect,
9
9
  useState
10
10
  } from 'react';
11
- import { clsx } from 'lib/helpers';
12
- import { SyntheticBaseEvent } from 'lib/types';
13
- import { CheckboxProps } from 'lib/types/checkbox';
11
+ import { clsx } from '../../helpers';
12
+ import { SyntheticBaseEvent } from '../../types';
13
+ import { CheckboxProps } from '../../types/checkbox';
14
14
  import './style.css';
15
15
 
16
16
  const CheckboxClient = forwardRef<HTMLDivElement, CheckboxProps>(
@@ -1,6 +1,6 @@
1
1
  import { ReactElement } from 'react';
2
- import { CheckboxProps } from 'lib/types/checkbox';
3
- import { prefixClsCheckbox } from 'lib/utils';
2
+ import { CheckboxProps } from '../../types/checkbox';
3
+ import { prefixClsCheckbox } from '../../utils';
4
4
  import CheckboxClient from './Checkbox.client';
5
5
 
6
6
  const Checkbox = ({
@@ -1,5 +1,5 @@
1
- import { EmptyContentProps } from 'lib/types/empty';
2
- import { prefixClsEmpty } from 'lib/utils';
1
+ import { EmptyContentProps } from '../../types/empty';
2
+ import { prefixClsEmpty } from '../../utils';
3
3
  import './style.css';
4
4
 
5
5
  const EmptyContent = ({
@@ -10,14 +10,14 @@ import {
10
10
  useRef,
11
11
  useState
12
12
  } from 'react';
13
- import { clsx } from 'lib/helpers';
14
- import { RuleType, SyntheticBaseEvent } from 'lib/types';
13
+ import { clsx } from '../../../helpers';
14
+ import { RuleType, SyntheticBaseEvent } from '../../../types';
15
15
  import {
16
16
  FormItemChildComponentProps,
17
17
  FormItemProps
18
- } from 'lib/types/form';
19
- import { OptionProps } from 'lib/types/select';
20
- import { prefixClsFormItem } from 'lib/utils';
18
+ } from '../../../types/form';
19
+ import { OptionProps } from '../../../types/select';
20
+ import { prefixClsFormItem } from '../../../utils';
21
21
  import './style.css';
22
22
  import { FormContext } from '../Form';
23
23
 
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
 
3
3
  import { useRef, useState } from 'react';
4
- import { RuleTypes } from 'lib/types';
4
+ import { RuleTypes } from '../types';
5
5
  import type {
6
6
  FieldData,
7
7
  FieldError,
@@ -9,7 +9,7 @@ import type {
9
9
  FormInstance,
10
10
  RuleObject,
11
11
  RuleRender
12
- } from 'lib/types/form';
12
+ } from '../types/form';
13
13
 
14
14
  const useForm = (
15
15
  initialValues: Record<string, RuleTypes> = {},
@@ -1,7 +1,7 @@
1
1
  import { useContext, useEffect, useState } from 'react';
2
- import { FormContext } from 'lib/components/Form/Form';
3
- import { RuleType } from 'lib/types';
4
- import { FormInstance } from 'lib/types/form';
2
+ import { FormContext } from '../components/Form/Form';
3
+ import { RuleType } from '../types';
4
+ import { FormInstance } from '../types/form';
5
5
 
6
6
  type UseWatchProps = {
7
7
  name?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "x-ui-design",
3
- "version": "0.2.10",
3
+ "version": "0.2.11",
4
4
  "license": "ISC",
5
5
  "author": "Gabriel Boyajyan",
6
6
  "main": "dist/index.js",