@1money/component-ui 0.0.71 → 0.0.74
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/components/ProForm/ProForm.d.ts +10 -2
- package/es/components/ProForm/ProForm.js +241 -55
- package/es/components/ProForm/ProFormDependency.d.ts +11 -2
- package/es/components/ProForm/ProFormDependency.js +29 -133
- package/es/components/ProForm/ProFormItem.js +146 -52
- package/es/components/ProForm/ProFormList.js +114 -62
- package/es/components/ProForm/SchemaForm.d.ts +7 -0
- package/es/components/ProForm/SchemaForm.js +103 -0
- package/es/components/ProForm/Submitter.js +26 -5
- package/es/components/ProForm/context.d.ts +30 -3
- package/es/components/ProForm/context.js +69 -10
- package/es/components/ProForm/core/constants.d.ts +12 -3
- package/es/components/ProForm/core/constants.js +18 -7
- package/es/components/ProForm/core/formStore.d.ts +24 -0
- package/es/components/ProForm/core/formStore.js +101 -0
- package/es/components/ProForm/core/hooks/useForm.d.ts +4 -1
- package/es/components/ProForm/core/hooks/useForm.js +336 -212
- package/es/components/ProForm/core/hooks/useFormCore.d.ts +5 -1
- package/es/components/ProForm/core/hooks/useFormCore.js +151 -93
- package/es/components/ProForm/core/interface.d.ts +33 -12
- package/es/components/ProForm/core/runRules.d.ts +20 -8
- package/es/components/ProForm/core/runRules.js +105 -50
- package/es/components/ProForm/core/useFormItem.d.ts +10 -1
- package/es/components/ProForm/core/useFormItem.js +141 -56
- package/es/components/ProForm/fields/ProFormDatePicker.js +4 -1
- package/es/components/ProForm/fields/ProFormFieldSet.js +20 -7
- package/es/components/ProForm/fields/createProFormField.js +61 -32
- package/es/components/ProForm/hooks/useFieldRequest.d.ts +6 -1
- package/es/components/ProForm/hooks/useFieldRequest.js +54 -9
- package/es/components/ProForm/hooks/useUrlSync.d.ts +16 -0
- package/es/components/ProForm/hooks/useUrlSync.js +170 -0
- package/es/components/ProForm/index.d.ts +12 -5
- package/es/components/ProForm/index.js +7 -2
- package/es/components/ProForm/interface.d.ts +185 -28
- package/es/components/ProForm/layouts/DialogForm.d.ts +5 -1
- package/es/components/ProForm/layouts/DialogForm.js +18 -7
- package/es/components/ProForm/layouts/DrawerForm.d.ts +5 -1
- package/es/components/ProForm/layouts/DrawerForm.js +17 -7
- package/es/components/ProForm/layouts/QueryFilter.d.ts +5 -2
- package/es/components/ProForm/layouts/QueryFilter.js +47 -71
- package/es/components/ProForm/layouts/useOverlayForm.d.ts +2 -2
- package/es/components/ProForm/layouts/useOverlayForm.js +27 -8
- package/es/components/ProForm/style/ProForm.css +4 -4
- package/es/components/ProForm/utils.d.ts +12 -1
- package/es/components/ProForm/utils.js +101 -28
- package/es/components/ProTable/ProTable.js +3 -3
- package/es/components/Tooltip/style/Tooltip.css +1 -0
- package/es/index.css +1 -1
- package/es/index.d.ts +2 -2
- package/es/index.js +2 -2
- package/lib/components/ProForm/ProForm.d.ts +10 -2
- package/lib/components/ProForm/ProForm.js +239 -53
- package/lib/components/ProForm/ProFormDependency.d.ts +11 -2
- package/lib/components/ProForm/ProFormDependency.js +30 -135
- package/lib/components/ProForm/ProFormItem.js +143 -48
- package/lib/components/ProForm/ProFormList.js +112 -60
- package/lib/components/ProForm/SchemaForm.d.ts +7 -0
- package/lib/components/ProForm/SchemaForm.js +110 -0
- package/lib/components/ProForm/Submitter.js +26 -5
- package/lib/components/ProForm/context.d.ts +30 -3
- package/lib/components/ProForm/context.js +69 -10
- package/lib/components/ProForm/core/constants.d.ts +12 -3
- package/lib/components/ProForm/core/constants.js +19 -8
- package/lib/components/ProForm/core/formStore.d.ts +24 -0
- package/lib/components/ProForm/core/formStore.js +110 -0
- package/lib/components/ProForm/core/hooks/useForm.d.ts +4 -1
- package/lib/components/ProForm/core/hooks/useForm.js +336 -212
- package/lib/components/ProForm/core/hooks/useFormCore.d.ts +5 -1
- package/lib/components/ProForm/core/hooks/useFormCore.js +150 -92
- package/lib/components/ProForm/core/interface.d.ts +33 -12
- package/lib/components/ProForm/core/runRules.d.ts +20 -8
- package/lib/components/ProForm/core/runRules.js +106 -50
- package/lib/components/ProForm/core/useFormItem.d.ts +10 -1
- package/lib/components/ProForm/core/useFormItem.js +138 -53
- package/lib/components/ProForm/fields/ProFormDatePicker.js +4 -1
- package/lib/components/ProForm/fields/ProFormFieldSet.js +19 -6
- package/lib/components/ProForm/fields/createProFormField.js +61 -32
- package/lib/components/ProForm/hooks/useFieldRequest.d.ts +6 -1
- package/lib/components/ProForm/hooks/useFieldRequest.js +53 -8
- package/lib/components/ProForm/hooks/useUrlSync.d.ts +16 -0
- package/lib/components/ProForm/hooks/useUrlSync.js +178 -0
- package/lib/components/ProForm/index.d.ts +12 -5
- package/lib/components/ProForm/index.js +16 -1
- package/lib/components/ProForm/interface.d.ts +185 -28
- package/lib/components/ProForm/layouts/DialogForm.d.ts +5 -1
- package/lib/components/ProForm/layouts/DialogForm.js +18 -7
- package/lib/components/ProForm/layouts/DrawerForm.d.ts +5 -1
- package/lib/components/ProForm/layouts/DrawerForm.js +17 -7
- package/lib/components/ProForm/layouts/QueryFilter.d.ts +5 -2
- package/lib/components/ProForm/layouts/QueryFilter.js +46 -70
- package/lib/components/ProForm/layouts/useOverlayForm.d.ts +2 -2
- package/lib/components/ProForm/layouts/useOverlayForm.js +30 -8
- package/lib/components/ProForm/style/ProForm.css +4 -4
- package/lib/components/ProForm/utils.d.ts +12 -1
- package/lib/components/ProForm/utils.js +104 -28
- package/lib/components/ProTable/ProTable.js +3 -3
- package/lib/components/Tooltip/style/Tooltip.css +1 -0
- package/lib/index.css +1 -1
- package/lib/index.d.ts +2 -2
- package/lib/index.js +13 -1
- package/package.json +1 -1
- package/scripts/mcp-server/examples.generated.json +90 -0
- package/scripts/mcp-server/index.generated.json +1866 -212
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
import { ProFormItem } from './ProFormItem';
|
|
2
2
|
import type { FormInstance, UseFormConfig } from './core/interface';
|
|
3
3
|
import './style';
|
|
4
|
-
declare const ProForm: import("
|
|
4
|
+
declare const ProForm: import("./ProForm").ProFormComponent & {
|
|
5
5
|
Item: import("react").NamedExoticComponent<import("./interface").ProFormItemProps>;
|
|
6
|
-
useForm: (config?: UseFormConfig) => [FormInstance];
|
|
7
|
-
useInstance: () => import("./interface").ProFormFormInstance
|
|
6
|
+
useForm: <Values = Record<string, unknown>>(config?: UseFormConfig<Values>) => [FormInstance<Values>];
|
|
7
|
+
useInstance: <Values = Record<string, unknown>>() => import("./interface").ProFormFormInstance<Values>;
|
|
8
8
|
useContext: () => import("./interface").ProFormContextValue;
|
|
9
|
-
|
|
9
|
+
useWatch: import("./context").UseFormWatch;
|
|
10
|
+
Dependency: import("./ProFormDependency").ProFormDependencyComponent;
|
|
10
11
|
List: import("react").NamedExoticComponent<import("./interface").ProFormListProps>;
|
|
11
12
|
Group: import("react").NamedExoticComponent<import("./interface").ProFormGroupProps>;
|
|
12
13
|
FieldSet: import("react").NamedExoticComponent<import("./interface").ProFormFieldSetProps>;
|
|
14
|
+
SchemaForm: (<Values = Record<string, unknown>>(props: import("./interface").SchemaFormProps<Values>) => import("react").ReactElement | null) & {
|
|
15
|
+
displayName?: string;
|
|
16
|
+
};
|
|
13
17
|
Submitter: import("react").NamedExoticComponent<import("./Submitter").SubmitterInternalProps>;
|
|
14
18
|
Text: import("react").FC<import("./interface").ProFormFieldProps<import("../Input").InputProps>>;
|
|
15
19
|
Password: import("react").FC<import("./interface").ProFormFieldProps<import("../Input").InputPasswordProps>>;
|
|
@@ -29,10 +33,13 @@ export { createProFormField, ProFormText, ProFormPassword, ProFormTextArea, ProF
|
|
|
29
33
|
export { ProFormDependency } from './ProFormDependency';
|
|
30
34
|
export { ProFormList } from './ProFormList';
|
|
31
35
|
export { ProFormGroup } from './ProFormGroup';
|
|
36
|
+
export { SchemaForm } from './SchemaForm';
|
|
32
37
|
export { DrawerForm } from './layouts/DrawerForm';
|
|
33
38
|
export { DialogForm } from './layouts/DialogForm';
|
|
34
39
|
export { QueryFilter } from './layouts/QueryFilter';
|
|
35
|
-
export
|
|
40
|
+
export { useFormWatch } from './context';
|
|
41
|
+
export type { UseFormWatch } from './context';
|
|
42
|
+
export type { ProFormSyncToUrl, ProFormProps, ProFormItemProps, ProFormItemSharedProps, ProFormLayoutConfig, ProFormFieldProps, ProFormContextValue, ProFormStableContextValue, ProFormStateContextValue, ProFormFormInstance, ProFormValidateResult, ProFormFieldName, ProFormFieldTransformFn, ProFormFieldConvertValueFn, ProFormDateFormatter, ProFormValueEnumObj, ProFormRequestOption, ProFormValueType, FormListContextValue, ProFormColProps, ProFormFieldSetProps, ProFormGroupProps, SubmitterProps, ProFormDependencyProps, ProFormListProps, ProFormListAction, DrawerFormProps, DialogFormProps, QueryFilterProps, CreateProFormFieldConfig, ProFormSchemaColumn, ProFormSchemaValueType, SchemaFormProps, } from './interface';
|
|
36
43
|
export { CSS_PREFIX, WIDTH_SIZE_MAP, DEFAULT_COL_SPAN, DEFAULT_TEXT, PROFORM_MODES } from './constants';
|
|
37
44
|
export type { ProFormMode } from './constants';
|
|
38
45
|
export type { FormInstance, FormCoreInstance, Rule, ValidateTrigger, ValidateStatus, FormLayout, FormSize, LabelAlign, UseFormConfig, UseFormReturn, UseFormInternals, } from './core/interface';
|
|
@@ -142,6 +142,12 @@ Object.defineProperty(exports, "QueryFilter", {
|
|
|
142
142
|
return _QueryFilter.QueryFilter;
|
|
143
143
|
}
|
|
144
144
|
});
|
|
145
|
+
Object.defineProperty(exports, "SchemaForm", {
|
|
146
|
+
enumerable: true,
|
|
147
|
+
get: function get() {
|
|
148
|
+
return _SchemaForm.SchemaForm;
|
|
149
|
+
}
|
|
150
|
+
});
|
|
145
151
|
Object.defineProperty(exports, "WIDTH_SIZE_MAP", {
|
|
146
152
|
enumerable: true,
|
|
147
153
|
get: function get() {
|
|
@@ -155,11 +161,18 @@ Object.defineProperty(exports, "createProFormField", {
|
|
|
155
161
|
}
|
|
156
162
|
});
|
|
157
163
|
exports["default"] = void 0;
|
|
164
|
+
Object.defineProperty(exports, "useFormWatch", {
|
|
165
|
+
enumerable: true,
|
|
166
|
+
get: function get() {
|
|
167
|
+
return _context.useFormWatch;
|
|
168
|
+
}
|
|
169
|
+
});
|
|
158
170
|
var _ProForm = require("./ProForm");
|
|
159
171
|
var _ProFormItem = require("./ProFormItem");
|
|
160
172
|
var _ProFormDependency = require("./ProFormDependency");
|
|
161
173
|
var _ProFormList = require("./ProFormList");
|
|
162
174
|
var _ProFormGroup = require("./ProFormGroup");
|
|
175
|
+
var _SchemaForm = require("./SchemaForm");
|
|
163
176
|
var _Submitter = require("./Submitter");
|
|
164
177
|
var _fields = require("./fields");
|
|
165
178
|
var _useForm = require("./core/hooks/useForm");
|
|
@@ -182,11 +195,13 @@ var ProForm = exports.ProForm = Object.assign(_ProForm.ProForm, {
|
|
|
182
195
|
useForm: useForm,
|
|
183
196
|
useInstance: _context.useFormInstance,
|
|
184
197
|
useContext: _context.useProFormContext,
|
|
198
|
+
useWatch: _context.useFormWatch,
|
|
185
199
|
// Composition
|
|
186
200
|
Dependency: _ProFormDependency.ProFormDependency,
|
|
187
201
|
List: _ProFormList.ProFormList,
|
|
188
202
|
Group: _ProFormGroup.ProFormGroup,
|
|
189
203
|
FieldSet: _fields.ProFormFieldSet,
|
|
204
|
+
SchemaForm: _SchemaForm.SchemaForm,
|
|
190
205
|
Submitter: _Submitter.Submitter,
|
|
191
206
|
// Fields
|
|
192
207
|
Text: _fields.ProFormText,
|
|
@@ -203,4 +218,4 @@ var ProForm = exports.ProForm = Object.assign(_ProForm.ProForm, {
|
|
|
203
218
|
});
|
|
204
219
|
var _default = exports["default"] = ProForm; // Named exports for fields
|
|
205
220
|
// Composition + layouts
|
|
206
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
221
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvUHJvRm9ybS9pbmRleC50cyIsImNvbXBvbmVudHMvUHJvRm9ybS9pbmRleC5qcyJdLCJuYW1lcyI6WyJfUHJvRm9ybSIsInJlcXVpcmUiLCJfUHJvRm9ybUl0ZW0iLCJfUHJvRm9ybURlcGVuZGVuY3kiLCJfUHJvRm9ybUxpc3QiLCJfUHJvRm9ybUdyb3VwIiwiX1NjaGVtYUZvcm0iLCJfU3VibWl0dGVyIiwiX2ZpZWxkcyIsIl91c2VGb3JtIiwiX2NvbnRleHQiLCJfRHJhd2VyRm9ybSIsIl9EaWFsb2dGb3JtIiwiX1F1ZXJ5RmlsdGVyIiwiX2NvbnN0YW50cyIsInVzZUZvcm0iLCJjb25maWciLCJfdXNlRm9ybUludGVybmFsIiwidXNlRm9ybUludGVybmFsIiwiZm9ybUluc3RhbmNlIiwiUHJvRm9ybSIsImV4cG9ydHMiLCJPYmplY3QiLCJhc3NpZ24iLCJQcm9Gb3JtQmFzZSIsIkl0ZW0iLCJQcm9Gb3JtSXRlbSIsInVzZUluc3RhbmNlIiwidXNlRm9ybUluc3RhbmNlIiwidXNlQ29udGV4dCIsInVzZVByb0Zvcm1Db250ZXh0IiwidXNlV2F0Y2giLCJ1c2VGb3JtV2F0Y2giLCJEZXBlbmRlbmN5IiwiUHJvRm9ybURlcGVuZGVuY3kiLCJMaXN0IiwiUHJvRm9ybUxpc3QiLCJHcm91cCIsIlByb0Zvcm1Hcm91cCIsIkZpZWxkU2V0IiwiUHJvRm9ybUZpZWxkU2V0IiwiU2NoZW1hRm9ybSIsIlN1Ym1pdHRlciIsIlRleHQiLCJQcm9Gb3JtVGV4dCIsIlBhc3N3b3JkIiwiUHJvRm9ybVBhc3N3b3JkIiwiVGV4dEFyZWEiLCJQcm9Gb3JtVGV4dEFyZWEiLCJDaGVja2JveCIsIlByb0Zvcm1DaGVja2JveCIsIkNoZWNrYm94R3JvdXAiLCJQcm9Gb3JtQ2hlY2tib3hHcm91cCIsIlN3aXRjaCIsIlByb0Zvcm1Td2l0Y2giLCJTZWxlY3QiLCJQcm9Gb3JtU2VsZWN0IiwiUmFkaW9Hcm91cCIsIlByb0Zvcm1SYWRpb0dyb3VwIiwiU2xpZGVyIiwiUHJvRm9ybVNsaWRlciIsIkRhdGVQaWNrZXIiLCJQcm9Gb3JtRGF0ZVBpY2tlciIsIlVwbG9hZCIsIlByb0Zvcm1VcGxvYWQiLCJfZGVmYXVsdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLElBQUFBLFFBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLFlBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLGtCQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxZQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxhQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxXQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxVQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxPQUFBLEdBQUFQLE9BQUE7QUFjQSxJQUFBUSxRQUFBLEdBQUFSLE9BQUE7QUFFQSxJQUFBUyxRQUFBLEdBQUFULE9BQUE7QUFDQUEsT0FBQTtBQWdFQSxJQUFBVSxXQUFBLEdBQUFWLE9BQUE7QUFDQSxJQUFBVyxXQUFBLEdBQUFYLE9BQUE7QUFDQSxJQUFBWSxZQUFBLEdBQUFaLE9BQUE7QUF5Q0EsSUFBQWEsVUFBQSxHQUFBYixPQUFBO0FBekdBO0FBQ0EsSUFBTWMsT0FBTyxHQUFHLFNBQVZBLE9BQU9BLENBQ1hDLE1BQThCLEVBQ0o7RUFDMUIsSUFBQUMsZ0JBQUEsR0FBeUIsSUFBQUMsZ0JBQWUsRUFBQ0YsTUFBbUMsQ0FBQztJQUFyRUcsWUFBWSxHQUFBRixnQkFBQSxDQUFaRSxZQUFZO0VBQ3BCLE9BQU8sQ0FBQ0EsWUFBb0MsQ0FBQztBQUMvQyxDQUFDO0FBRUQ7QUFDQSxJQUFNQyxPQUFPLEdBQUFDLE9BQUEsQ0FBQUQsT0FBQSxHQUFHRSxNQUFNLENBQUNDLE1BQU0sQ0FBQ0MsZ0JBQVcsRUFBRTtFQUN6QztFQUNBQyxJQUFJLEVBQUVDLHdCQUFXO0VBQ2pCWCxPQUFPLEVBQVBBLE9BQU87RUFDUFksV0FBVyxFQUFFQyx3QkFBZTtFQUM1QkMsVUFBVSxFQUFFQywwQkFBaUI7RUFDN0JDLFFBQVEsRUFBRUMscUJBQVk7RUFDdEI7RUFDQUMsVUFBVSxFQUFFQyxvQ0FBaUI7RUFDN0JDLElBQUksRUFBRUMsd0JBQVc7RUFDakJDLEtBQUssRUFBRUMsMEJBQVk7RUFDbkJDLFFBQVEsRUFBRUMsdUJBQWU7RUFDekJDLFVBQVUsRUFBVkEsc0JBQVU7RUFDVkMsU0FBUyxFQUFUQSxvQkFBUztFQUNUO0VBQ0FDLElBQUksRUFBRUMsbUJBQVc7RUFDakJDLFFBQVEsRUFBRUMsdUJBQWU7RUFDekJDLFFBQVEsRUFBRUMsdUJBQWU7RUFDekJDLFFBQVEsRUFBRUMsdUJBQWU7RUFDekJDLGFBQWEsRUFBRUMsNEJBQW9CO0VBQ25DQyxNQUFNLEVBQUVDLHFCQUFhO0VBQ3JCQyxNQUFNLEVBQUVDLHFCQUFhO0VBQ3JCQyxVQUFVLEVBQUVDLHlCQUFpQjtFQUM3QkMsTUFBTSxFQUFFQyxxQkFBYTtFQUNyQkMsVUFBVSxFQUFFQyx5QkFBaUI7RUFDN0JDLE1BQU0sRUFBRUM7QUNqQlYsQ0RrQkMsQ0FBQztBQUFDLElBQUFDLFFBQUEsR0FBQTVDLE9BQUEsY0FHWUQsT0FBTyxFQUV0QjtBQWlCQSIsImZpbGUiOiJjb21wb25lbnRzL1Byb0Zvcm0vaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6W251bGwsImltcG9ydCB7IFByb0Zvcm0gYXMgUHJvRm9ybUJhc2UgfSBmcm9tICcuL1Byb0Zvcm0nO1xuaW1wb3J0IHsgUHJvRm9ybUl0ZW0gfSBmcm9tICcuL1Byb0Zvcm1JdGVtJztcbmltcG9ydCB7IFByb0Zvcm1EZXBlbmRlbmN5IH0gZnJvbSAnLi9Qcm9Gb3JtRGVwZW5kZW5jeSc7XG5pbXBvcnQgeyBQcm9Gb3JtTGlzdCB9IGZyb20gJy4vUHJvRm9ybUxpc3QnO1xuaW1wb3J0IHsgUHJvRm9ybUdyb3VwIH0gZnJvbSAnLi9Qcm9Gb3JtR3JvdXAnO1xuaW1wb3J0IHsgU2NoZW1hRm9ybSB9IGZyb20gJy4vU2NoZW1hRm9ybSc7XG5pbXBvcnQgeyBTdWJtaXR0ZXIgfSBmcm9tICcuL1N1Ym1pdHRlcic7XG5pbXBvcnQgeyBQcm9Gb3JtVGV4dCwgUHJvRm9ybVBhc3N3b3JkLCBQcm9Gb3JtVGV4dEFyZWEsIFByb0Zvcm1DaGVja2JveCwgUHJvRm9ybUNoZWNrYm94R3JvdXAsIFByb0Zvcm1Td2l0Y2gsIFByb0Zvcm1TZWxlY3QsIFByb0Zvcm1SYWRpb0dyb3VwLCBQcm9Gb3JtU2xpZGVyLCBQcm9Gb3JtRGF0ZVBpY2tlciwgUHJvRm9ybVVwbG9hZCwgUHJvRm9ybUZpZWxkU2V0LCB9IGZyb20gJy4vZmllbGRzJztcbmltcG9ydCB7IHVzZUZvcm0gYXMgdXNlRm9ybUludGVybmFsIH0gZnJvbSAnLi9jb3JlL2hvb2tzL3VzZUZvcm0nO1xuaW1wb3J0IHsgdXNlUHJvRm9ybUNvbnRleHQsIHVzZUZvcm1JbnN0YW5jZSwgdXNlRm9ybVdhdGNoIH0gZnJvbSAnLi9jb250ZXh0JztcbmltcG9ydCAnLi9zdHlsZSc7XG4vKiogUHVibGljIGhvb2sg4oCUIHJldHVybnMgW0Zvcm1JbnN0YW5jZV0gZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgKi9cbmNvbnN0IHVzZUZvcm0gPSAoY29uZmlnKSA9PiB7XG4gICAgY29uc3QgeyBmb3JtSW5zdGFuY2UgfSA9IHVzZUZvcm1JbnRlcm5hbChjb25maWcpO1xuICAgIHJldHVybiBbZm9ybUluc3RhbmNlXTtcbn07XG4vLyBDb21wb3NlIFByb0Zvcm0gd2l0aCBzdGF0aWMgc3ViLWNvbXBvbmVudHMgYW5kIGhvb2tzXG5jb25zdCBQcm9Gb3JtID0gT2JqZWN0LmFzc2lnbihQcm9Gb3JtQmFzZSwge1xuICAgIC8vIEl0ZW0gKyBjb3JlIGhvb2tzXG4gICAgSXRlbTogUHJvRm9ybUl0ZW0sXG4gICAgdXNlRm9ybSxcbiAgICB1c2VJbnN0YW5jZTogdXNlRm9ybUluc3RhbmNlLFxuICAgIHVzZUNvbnRleHQ6IHVzZVByb0Zvcm1Db250ZXh0LFxuICAgIHVzZVdhdGNoOiB1c2VGb3JtV2F0Y2gsXG4gICAgLy8gQ29tcG9zaXRpb25cbiAgICBEZXBlbmRlbmN5OiBQcm9Gb3JtRGVwZW5kZW5jeSxcbiAgICBMaXN0OiBQcm9Gb3JtTGlzdCxcbiAgICBHcm91cDogUHJvRm9ybUdyb3VwLFxuICAgIEZpZWxkU2V0OiBQcm9Gb3JtRmllbGRTZXQsXG4gICAgU2NoZW1hRm9ybSxcbiAgICBTdWJtaXR0ZXIsXG4gICAgLy8gRmllbGRzXG4gICAgVGV4dDogUHJvRm9ybVRleHQsXG4gICAgUGFzc3dvcmQ6IFByb0Zvcm1QYXNzd29yZCxcbiAgICBUZXh0QXJlYTogUHJvRm9ybVRleHRBcmVhLFxuICAgIENoZWNrYm94OiBQcm9Gb3JtQ2hlY2tib3gsXG4gICAgQ2hlY2tib3hHcm91cDogUHJvRm9ybUNoZWNrYm94R3JvdXAsXG4gICAgU3dpdGNoOiBQcm9Gb3JtU3dpdGNoLFxuICAgIFNlbGVjdDogUHJvRm9ybVNlbGVjdCxcbiAgICBSYWRpb0dyb3VwOiBQcm9Gb3JtUmFkaW9Hcm91cCxcbiAgICBTbGlkZXI6IFByb0Zvcm1TbGlkZXIsXG4gICAgRGF0ZVBpY2tlcjogUHJvRm9ybURhdGVQaWNrZXIsXG4gICAgVXBsb2FkOiBQcm9Gb3JtVXBsb2FkLFxufSk7XG5leHBvcnQgeyBQcm9Gb3JtLCBQcm9Gb3JtSXRlbSB9O1xuZXhwb3J0IGRlZmF1bHQgUHJvRm9ybTtcbi8vIE5hbWVkIGV4cG9ydHMgZm9yIGZpZWxkc1xuZXhwb3J0IHsgY3JlYXRlUHJvRm9ybUZpZWxkLCBQcm9Gb3JtVGV4dCwgUHJvRm9ybVBhc3N3b3JkLCBQcm9Gb3JtVGV4dEFyZWEsIFByb0Zvcm1DaGVja2JveCwgUHJvRm9ybUNoZWNrYm94R3JvdXAsIFByb0Zvcm1Td2l0Y2gsIFByb0Zvcm1TZWxlY3QsIFByb0Zvcm1SYWRpb0dyb3VwLCBQcm9Gb3JtU2xpZGVyLCBQcm9Gb3JtRGF0ZVBpY2tlciwgUHJvRm9ybVVwbG9hZCwgUHJvRm9ybUZpZWxkU2V0LCB9IGZyb20gJy4vZmllbGRzJztcbi8vIENvbXBvc2l0aW9uICsgbGF5b3V0c1xuZXhwb3J0IHsgUHJvRm9ybURlcGVuZGVuY3kgfSBmcm9tICcuL1Byb0Zvcm1EZXBlbmRlbmN5JztcbmV4cG9ydCB7IFByb0Zvcm1MaXN0IH0gZnJvbSAnLi9Qcm9Gb3JtTGlzdCc7XG5leHBvcnQgeyBQcm9Gb3JtR3JvdXAgfSBmcm9tICcuL1Byb0Zvcm1Hcm91cCc7XG5leHBvcnQgeyBTY2hlbWFGb3JtIH0gZnJvbSAnLi9TY2hlbWFGb3JtJztcbmV4cG9ydCB7IERyYXdlckZvcm0gfSBmcm9tICcuL2xheW91dHMvRHJhd2VyRm9ybSc7XG5leHBvcnQgeyBEaWFsb2dGb3JtIH0gZnJvbSAnLi9sYXlvdXRzL0RpYWxvZ0Zvcm0nO1xuZXhwb3J0IHsgUXVlcnlGaWx0ZXIgfSBmcm9tICcuL2xheW91dHMvUXVlcnlGaWx0ZXInO1xuZXhwb3J0IHsgdXNlRm9ybVdhdGNoIH0gZnJvbSAnLi9jb250ZXh0JztcbmV4cG9ydCB7IENTU19QUkVGSVgsIFdJRFRIX1NJWkVfTUFQLCBERUZBVUxUX0NPTF9TUEFOLCBERUZBVUxUX1RFWFQsIFBST0ZPUk1fTU9ERVMgfSBmcm9tICcuL2NvbnN0YW50cyc7Il0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
|
|
@@ -5,12 +5,21 @@ import type { DrawerProps, DrawerPlacement } from "../Drawer";
|
|
|
5
5
|
import type { GridRowProps, GridColSize } from "../Grid";
|
|
6
6
|
import type { DialogProps } from "../Dialog";
|
|
7
7
|
import type { ProFormMode } from './constants';
|
|
8
|
+
import type { ProFormSyncToUrl } from './hooks/useUrlSync';
|
|
9
|
+
export type { ProFormSyncToUrl };
|
|
8
10
|
export type ProFormFieldTransformFn = (value: unknown, name: string, allValues: Record<string, unknown>) => unknown;
|
|
11
|
+
export type ProFormDateFormatter = 'string' | 'number' | (string & {}) | ((value: Date, name: string) => unknown) | false;
|
|
9
12
|
export type ProFormFieldConvertValueFn = (value: unknown, name: string) => unknown;
|
|
10
13
|
export type ProFormValueEnumObj = Record<string | number, string | {
|
|
11
14
|
text: string;
|
|
12
15
|
disabled?: boolean;
|
|
13
16
|
}>;
|
|
17
|
+
/**
|
|
18
|
+
* Top-level keys of `Values` (for editor autocomplete) while still accepting
|
|
19
|
+
* any string — names may be dot-paths (`"address.city"`), list paths
|
|
20
|
+
* (`"items.0.qty"`), or keys produced by a renaming `transform`.
|
|
21
|
+
*/
|
|
22
|
+
export type ProFormFieldName<Values = Record<string, unknown>> = Extract<keyof Values, string> | (string & {});
|
|
14
23
|
export interface ProFormColProps {
|
|
15
24
|
span?: number;
|
|
16
25
|
sm?: GridColSize;
|
|
@@ -22,23 +31,59 @@ export interface ProFormRequestOption {
|
|
|
22
31
|
value: unknown;
|
|
23
32
|
disabled?: boolean;
|
|
24
33
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
34
|
+
/**
|
|
35
|
+
* Result of `validateFieldsReturnFormatValue` — a discriminated union: checking
|
|
36
|
+
* `success` narrows to `values` (success) or `errors` (failure) without `!`.
|
|
37
|
+
* Each branch declares the other property as `undefined` so unguarded access
|
|
38
|
+
* (`result.values`) still type-checks as `Values | undefined`.
|
|
39
|
+
*/
|
|
40
|
+
export type ProFormValidateResult<Values = Record<string, unknown>> = {
|
|
41
|
+
success: true;
|
|
42
|
+
values: Values;
|
|
43
|
+
errors?: undefined;
|
|
44
|
+
} | {
|
|
45
|
+
success: false;
|
|
46
|
+
errors: Record<string, string>;
|
|
47
|
+
values?: undefined;
|
|
48
|
+
};
|
|
49
|
+
export interface ProFormFormInstance<Values = Record<string, unknown>> extends FormInstance<Values> {
|
|
50
|
+
getFieldsFormatValue: () => Values;
|
|
51
|
+
/** Single-field value with dateFormatter + transform applied (no omitNil). */
|
|
52
|
+
getFieldFormatValue: (name: string) => unknown;
|
|
53
|
+
/**
|
|
54
|
+
* Formatted values as an object: the whole form when `name` is omitted,
|
|
55
|
+
* otherwise narrowed to the top-level key of `name` (note: a `transform`
|
|
56
|
+
* that RENAMES its key keeps the renamed shape and may not match `name`).
|
|
57
|
+
*/
|
|
58
|
+
getFieldFormatValueObject: (name?: string) => Record<string, unknown>;
|
|
59
|
+
validateFieldsReturnFormatValue: () => Promise<ProFormValidateResult<Values>>;
|
|
32
60
|
submitForm: () => Promise<void>;
|
|
33
61
|
}
|
|
34
|
-
export interface
|
|
62
|
+
export interface ProFormStateContextValue {
|
|
35
63
|
values: Record<string, unknown>;
|
|
36
64
|
errors: Record<string, string>;
|
|
65
|
+
warnings: Record<string, string>;
|
|
37
66
|
touched: Record<string, boolean>;
|
|
38
67
|
validating: Record<string, boolean>;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Form-level layout configuration. Groups presentational layout knobs in one
|
|
71
|
+
* object so future options (label placement, density, …) extend here instead
|
|
72
|
+
* of adding new top-level props.
|
|
73
|
+
*/
|
|
74
|
+
export interface ProFormLayoutConfig {
|
|
75
|
+
/**
|
|
76
|
+
* Vertical space between form items. Overrides the uniform 24px default
|
|
77
|
+
* (form `size` does not affect spacing). Number = px; string = any CSS
|
|
78
|
+
* length.
|
|
79
|
+
*/
|
|
80
|
+
itemGap?: number | string;
|
|
81
|
+
}
|
|
82
|
+
export interface ProFormStableContextValue {
|
|
39
83
|
formInstance: ProFormFormInstance;
|
|
40
84
|
setFieldValue: (name: string, value: unknown) => void;
|
|
41
85
|
setFieldError: (name: string, error: string | null) => void;
|
|
86
|
+
setFieldWarning: (name: string, warning: string | null) => void;
|
|
42
87
|
validateField: (name: string, rules: Rule[], providedValue?: unknown) => boolean;
|
|
43
88
|
validateFieldAsync: (name: string, value: unknown, rules: Rule[]) => Promise<{
|
|
44
89
|
isValid: boolean;
|
|
@@ -58,7 +103,22 @@ export interface ProFormContextValue {
|
|
|
58
103
|
grid: boolean;
|
|
59
104
|
colProps: ProFormColProps;
|
|
60
105
|
registerTransform: (name: string, fn: ProFormFieldTransformFn) => void;
|
|
61
|
-
|
|
106
|
+
/** When `fn` is given, removal happens only if the registry still holds it. */
|
|
107
|
+
unregisterTransform: (name: string, fn?: ProFormFieldTransformFn) => void;
|
|
108
|
+
/** Register a field's valueType for valueType-aware submit formatting (dateFormatter) */
|
|
109
|
+
registerValueType: (name: string, valueType: ProFormValueType) => void;
|
|
110
|
+
/** When `valueType` is given, removal happens only if the registry still holds it. */
|
|
111
|
+
unregisterValueType: (name: string, valueType?: ProFormValueType) => void;
|
|
112
|
+
/** Form-level defaults injected into every ProFormXxx field's component props (field-level wins) */
|
|
113
|
+
fieldProps?: Record<string, unknown>;
|
|
114
|
+
/** Form-level defaults merged into every ProForm.Item (item-level wins) */
|
|
115
|
+
formItemProps?: ProFormItemSharedProps;
|
|
116
|
+
/** Form-level layout configuration (e.g. itemGap) read by every ProForm.Item */
|
|
117
|
+
layout?: ProFormLayoutConfig;
|
|
118
|
+
/** Set by DialogForm/DrawerForm/QueryFilter so overlay fields can adapt (e.g. popup mounting) */
|
|
119
|
+
formComponentType?: 'DialogForm' | 'DrawerForm' | 'QueryFilter';
|
|
120
|
+
}
|
|
121
|
+
export interface ProFormContextValue extends ProFormStableContextValue, ProFormStateContextValue {
|
|
62
122
|
}
|
|
63
123
|
export interface ProFormFieldProps<FieldProps = Record<string, unknown>> {
|
|
64
124
|
name?: string;
|
|
@@ -89,10 +149,18 @@ export interface ProFormFieldProps<FieldProps = Record<string, unknown>> {
|
|
|
89
149
|
transform?: ProFormFieldTransformFn;
|
|
90
150
|
convertValue?: ProFormFieldConvertValueFn;
|
|
91
151
|
dependencies?: string[];
|
|
92
|
-
request?: (params?: Record<string, unknown
|
|
152
|
+
request?: (params?: Record<string, unknown>, signal?: AbortSignal) => Promise<ProFormRequestOption[]>;
|
|
93
153
|
params?: Record<string, unknown>;
|
|
94
154
|
valueEnum?: ProFormValueEnumObj;
|
|
95
155
|
debounceTime?: number;
|
|
156
|
+
/** Debounce (ms) applied to onChange-triggered validation */
|
|
157
|
+
validateDebounce?: number;
|
|
158
|
+
/**
|
|
159
|
+
* Registered into the form's valueType registry (drives valueType-aware
|
|
160
|
+
* dateFormatter, e.g. `"dateTime"` → `YYYY-MM-DD HH:mm:ss`) and read-mode
|
|
161
|
+
* rendering. Overrides the factory's default valueType.
|
|
162
|
+
*/
|
|
163
|
+
valueType?: ProFormValueType;
|
|
96
164
|
}
|
|
97
165
|
export type ProFormValueType = 'text' | 'password' | 'digit' | 'date' | 'dateTime' | 'select' | 'radio' | 'switch' | 'tag';
|
|
98
166
|
export interface ProFormItemProps {
|
|
@@ -125,12 +193,18 @@ export interface ProFormItemProps {
|
|
|
125
193
|
emptyText?: ReactNode;
|
|
126
194
|
/** Value enum for select/radio/tag value types */
|
|
127
195
|
valueEnum?: ProFormValueEnumObj;
|
|
196
|
+
/** Prop name the controlled value is injected under (default `value`; e.g. `checked` for Switch/Checkbox) */
|
|
197
|
+
valuePropName?: string;
|
|
198
|
+
/** Debounce (ms) applied to onChange-triggered validation */
|
|
199
|
+
validateDebounce?: number;
|
|
128
200
|
}
|
|
129
|
-
|
|
201
|
+
/** Item props that can be shared form-wide via ProForm's `formItemProps` */
|
|
202
|
+
export type ProFormItemSharedProps = Partial<Omit<ProFormItemProps, 'children' | 'name' | 'label' | 'rules'>>;
|
|
203
|
+
export interface SubmitterProps<Values = Record<string, unknown>> {
|
|
130
204
|
submitText?: ReactNode;
|
|
131
205
|
resetText?: ReactNode;
|
|
132
206
|
render?: (props: {
|
|
133
|
-
form: ProFormFormInstance
|
|
207
|
+
form: ProFormFormInstance<Values>;
|
|
134
208
|
submit: () => void;
|
|
135
209
|
reset: () => void;
|
|
136
210
|
}, dom: ReactElement[]) => ReactNode;
|
|
@@ -139,25 +213,51 @@ export interface SubmitterProps {
|
|
|
139
213
|
submitButtonProps?: Partial<ButtonProps>;
|
|
140
214
|
resetButtonProps?: Partial<ButtonProps>;
|
|
141
215
|
}
|
|
142
|
-
export interface ProFormProps extends Omit<FormHTMLAttributes<HTMLFormElement>, 'onSubmit' | 'onReset'> {
|
|
216
|
+
export interface ProFormProps<Values = Record<string, unknown>> extends Omit<FormHTMLAttributes<HTMLFormElement>, 'onSubmit' | 'onReset'> {
|
|
143
217
|
children?: ReactNode;
|
|
144
218
|
className?: string;
|
|
145
219
|
prefixCls?: string;
|
|
146
|
-
initialValues?:
|
|
147
|
-
|
|
220
|
+
initialValues?: Partial<Values>;
|
|
221
|
+
/**
|
|
222
|
+
* Called after validation passes with the pipelined values. The return value
|
|
223
|
+
* gates `syncToUrl`: an explicit `false` (or a throw/reject) skips writing
|
|
224
|
+
* the URL; any other result — including void — syncs.
|
|
225
|
+
*/
|
|
226
|
+
onFinish?: (values: Values) => void | boolean | Promise<void | boolean>;
|
|
148
227
|
onFinishFailed?: (errorInfo: {
|
|
149
|
-
values:
|
|
228
|
+
values: Values;
|
|
150
229
|
errors: Record<string, string>;
|
|
151
230
|
}) => void;
|
|
152
|
-
onValuesChange?: (changedValues:
|
|
153
|
-
|
|
231
|
+
onValuesChange?: (changedValues: Partial<Values>, allValues: Values) => void;
|
|
232
|
+
/** Fires once per reset action, with the (post-reset) formatted values. */
|
|
233
|
+
onReset?: (values?: Values) => void;
|
|
234
|
+
/** Fires once after the form is initialized (after `request` resolves when present). */
|
|
235
|
+
onInit?: (values: Values, form: ProFormFormInstance<Values>) => void;
|
|
236
|
+
/** Observes the internal submit loading state (true on start, false on settle). */
|
|
237
|
+
onLoadingChange?: (loading: boolean) => void;
|
|
238
|
+
/**
|
|
239
|
+
* Sync form values to the URL query string; the function form maps values
|
|
240
|
+
* both ways. Assumes route navigation unmounts the form (writes are guarded
|
|
241
|
+
* by mount-route pathname + an unmount flag).
|
|
242
|
+
*/
|
|
243
|
+
syncToUrl?: ProFormSyncToUrl;
|
|
244
|
+
/** On mount, URL params win over `initialValues` (default: initialValues win). */
|
|
245
|
+
syncToUrlAsImportant?: boolean;
|
|
246
|
+
/** Extra params always written to the URL alongside the form values. */
|
|
247
|
+
extraUrlParams?: Record<string, unknown>;
|
|
248
|
+
/** Focus the first input on mount (default false). */
|
|
249
|
+
autoFocusFirstInput?: boolean;
|
|
250
|
+
/** Internal: set by DialogForm/DrawerForm/QueryFilter for overlay-aware fields. */
|
|
251
|
+
formComponentType?: 'DialogForm' | 'DrawerForm' | 'QueryFilter';
|
|
154
252
|
size?: FormSize;
|
|
253
|
+
/** Form-level layout configuration, e.g. `layout={{ itemGap: 16 }}` */
|
|
254
|
+
layout?: ProFormLayoutConfig;
|
|
155
255
|
labelAlign?: LabelAlign;
|
|
156
256
|
disabled?: boolean;
|
|
157
257
|
colon?: boolean;
|
|
158
258
|
requiredMark?: boolean;
|
|
159
259
|
validateTrigger?: ValidateTrigger;
|
|
160
|
-
submitter?: SubmitterProps | false;
|
|
260
|
+
submitter?: SubmitterProps<Values> | false;
|
|
161
261
|
/** @deprecated Use `mode='read'` instead */
|
|
162
262
|
readonly?: boolean;
|
|
163
263
|
mode?: ProFormMode;
|
|
@@ -165,10 +265,21 @@ export interface ProFormProps extends Omit<FormHTMLAttributes<HTMLFormElement>,
|
|
|
165
265
|
colProps?: ProFormColProps;
|
|
166
266
|
rowProps?: Partial<GridRowProps>;
|
|
167
267
|
loading?: boolean;
|
|
168
|
-
request?: (params?: unknown) => Promise<
|
|
268
|
+
request?: (params?: unknown) => Promise<Partial<Values>>;
|
|
169
269
|
params?: unknown;
|
|
170
|
-
formRef?: MutableRefObject<ProFormFormInstance | undefined>;
|
|
270
|
+
formRef?: MutableRefObject<ProFormFormInstance<Values> | undefined>;
|
|
171
271
|
omitNil?: boolean;
|
|
272
|
+
/**
|
|
273
|
+
* How Date values are serialized in the submit pipeline (default `'string'`):
|
|
274
|
+
* `'string'` → `YYYY-MM-DD` (`YYYY-MM-DD HH:mm:ss` for `valueType="dateTime"` fields),
|
|
275
|
+
* `'number'` → timestamp, a custom pattern (e.g. `'YYYY/MM/DD'`), a function, or
|
|
276
|
+
* `false` to pass Date objects through untouched.
|
|
277
|
+
*/
|
|
278
|
+
dateFormatter?: ProFormDateFormatter;
|
|
279
|
+
/** Defaults injected into every ProFormXxx field's component props (field-level wins) */
|
|
280
|
+
fieldProps?: Record<string, unknown>;
|
|
281
|
+
/** Defaults merged into every ProForm.Item (item-level wins) */
|
|
282
|
+
formItemProps?: ProFormItemSharedProps;
|
|
172
283
|
}
|
|
173
284
|
export interface ProFormListAction {
|
|
174
285
|
add: (defaultValue?: Record<string, unknown>, index?: number) => void;
|
|
@@ -209,10 +320,10 @@ export interface ProFormListProps {
|
|
|
209
320
|
onAfterAdd?: (defaultValue: Record<string, unknown>, index: number) => void;
|
|
210
321
|
onAfterRemove?: (index: number) => void;
|
|
211
322
|
}
|
|
212
|
-
export interface ProFormDependencyProps {
|
|
213
|
-
name:
|
|
323
|
+
export interface ProFormDependencyProps<Values = Record<string, unknown>> {
|
|
324
|
+
name: ProFormFieldName<Values>[];
|
|
214
325
|
ignoreFormListField?: boolean;
|
|
215
|
-
children: (values: Record<string, unknown>, form: ProFormFormInstance) => ReactNode;
|
|
326
|
+
children: (values: Record<string, unknown>, form: ProFormFormInstance<Values>) => ReactNode;
|
|
216
327
|
}
|
|
217
328
|
export interface FormListContextValue {
|
|
218
329
|
listName?: string;
|
|
@@ -238,7 +349,7 @@ export interface ProFormGroupProps {
|
|
|
238
349
|
style?: CSSProperties;
|
|
239
350
|
children?: ReactNode;
|
|
240
351
|
}
|
|
241
|
-
export interface DialogFormProps extends Omit<ProFormProps
|
|
352
|
+
export interface DialogFormProps<Values = Record<string, unknown>> extends Omit<ProFormProps<Values>, 'title'> {
|
|
242
353
|
open?: boolean;
|
|
243
354
|
onOpenChange?: (open: boolean) => void;
|
|
244
355
|
trigger?: ReactElement;
|
|
@@ -246,10 +357,12 @@ export interface DialogFormProps extends Omit<ProFormProps, 'title'> {
|
|
|
246
357
|
width?: number | string;
|
|
247
358
|
submitTimeout?: number;
|
|
248
359
|
autoClose?: boolean;
|
|
360
|
+
/** Close the overlay when the form is reset (default true). Set false for reset-without-close (e.g. a "Clear" button). */
|
|
361
|
+
closeOnReset?: boolean;
|
|
249
362
|
destroyOnClose?: boolean;
|
|
250
363
|
dialogProps?: Partial<DialogProps>;
|
|
251
364
|
}
|
|
252
|
-
export interface DrawerFormProps extends Omit<ProFormProps
|
|
365
|
+
export interface DrawerFormProps<Values = Record<string, unknown>> extends Omit<ProFormProps<Values>, 'title'> {
|
|
253
366
|
open?: boolean;
|
|
254
367
|
onOpenChange?: (open: boolean) => void;
|
|
255
368
|
trigger?: ReactElement;
|
|
@@ -258,10 +371,12 @@ export interface DrawerFormProps extends Omit<ProFormProps, 'title'> {
|
|
|
258
371
|
placement?: DrawerPlacement;
|
|
259
372
|
submitTimeout?: number;
|
|
260
373
|
autoClose?: boolean;
|
|
374
|
+
/** Close the overlay when the form is reset (default true). Set false for reset-without-close (e.g. a "Clear" button). */
|
|
375
|
+
closeOnReset?: boolean;
|
|
261
376
|
destroyOnClose?: boolean;
|
|
262
377
|
drawerProps?: Partial<DrawerProps>;
|
|
263
378
|
}
|
|
264
|
-
export interface QueryFilterProps extends ProFormProps {
|
|
379
|
+
export interface QueryFilterProps<Values = Record<string, unknown>> extends ProFormProps<Values> {
|
|
265
380
|
defaultCollapsed?: boolean;
|
|
266
381
|
collapsed?: boolean;
|
|
267
382
|
onCollapse?: (collapsed: boolean) => void;
|
|
@@ -274,13 +389,55 @@ export interface QueryFilterProps extends ProFormProps {
|
|
|
274
389
|
/** Size of the search / reset / collapse buttons. Defaults to the Button default. */
|
|
275
390
|
size?: ButtonSize;
|
|
276
391
|
};
|
|
277
|
-
|
|
392
|
+
}
|
|
393
|
+
export type ProFormSchemaValueType = 'text' | 'password' | 'textarea' | 'digit' | 'select' | 'checkbox' | 'checkboxGroup' | 'radioGroup' | 'switch' | 'slider' | 'date' | 'dateTime' | 'upload';
|
|
394
|
+
export interface ProFormSchemaColumn<Values = Record<string, unknown>> {
|
|
395
|
+
/** Field label */
|
|
396
|
+
title?: ReactNode;
|
|
397
|
+
/** Field name; top-level keys of `Values` autocomplete, dot-paths accepted (e.g. `"address.city"`) */
|
|
398
|
+
dataIndex: ProFormFieldName<Values>;
|
|
399
|
+
/** Which ProForm field renders the column (default `'text'`) */
|
|
400
|
+
valueType?: ProFormSchemaValueType;
|
|
401
|
+
valueEnum?: ProFormValueEnumObj;
|
|
402
|
+
/** Seeded into the form's initialValues (form-level initialValues win) */
|
|
403
|
+
initialValue?: unknown;
|
|
404
|
+
rules?: Rule[];
|
|
405
|
+
required?: boolean;
|
|
406
|
+
description?: ReactNode;
|
|
407
|
+
placeholder?: string;
|
|
408
|
+
disabled?: boolean;
|
|
409
|
+
hidden?: boolean;
|
|
410
|
+
mode?: ProFormMode;
|
|
411
|
+
width?: 'sm' | 'md' | 'lg' | 'xl' | number;
|
|
412
|
+
colProps?: ProFormColProps;
|
|
413
|
+
fieldProps?: Record<string, unknown>;
|
|
414
|
+
transform?: ProFormFieldTransformFn;
|
|
415
|
+
convertValue?: ProFormFieldConvertValueFn;
|
|
416
|
+
dependencies?: string[];
|
|
417
|
+
request?: (params?: Record<string, unknown>, signal?: AbortSignal) => Promise<ProFormRequestOption[]>;
|
|
418
|
+
params?: Record<string, unknown>;
|
|
419
|
+
debounceTime?: number;
|
|
420
|
+
validateDebounce?: number;
|
|
421
|
+
/** Fully custom renderer for this column; overrides valueType mapping */
|
|
422
|
+
renderFormItem?: (column: ProFormSchemaColumn<Values>) => ReactNode;
|
|
423
|
+
}
|
|
424
|
+
export interface SchemaFormProps<Values = Record<string, unknown>> extends Omit<ProFormProps<Values>, 'children'> {
|
|
425
|
+
columns: ProFormSchemaColumn<Values>[];
|
|
278
426
|
}
|
|
279
427
|
export interface CreateProFormFieldConfig<FieldProps> {
|
|
280
428
|
component: FC<FieldProps> | (FC<FieldProps> & {
|
|
281
429
|
displayName?: string;
|
|
282
430
|
});
|
|
283
431
|
valuePropName?: string;
|
|
432
|
+
/** Default valueType registered for fields from this factory (per-field `valueType` prop overrides) */
|
|
433
|
+
valueType?: ProFormValueType;
|
|
284
434
|
mapProps?: (props: Record<string, unknown>) => Record<string, unknown>;
|
|
285
435
|
renderReadonly?: (value: unknown, props?: Partial<FieldProps>) => ReactNode;
|
|
436
|
+
/**
|
|
437
|
+
* Name of the component prop that controls overlay mounting (e.g. `appendTo`).
|
|
438
|
+
* When set and the field renders inside a DialogForm/DrawerForm, the prop is
|
|
439
|
+
* injected with `'self'` so the overlay mounts next to the trigger instead
|
|
440
|
+
* of document.body.
|
|
441
|
+
*/
|
|
442
|
+
popupContainerProp?: string;
|
|
286
443
|
}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
1
2
|
import type { DialogFormProps } from '../interface';
|
|
2
|
-
export
|
|
3
|
+
/** Generic-aware export — keeps `<DialogForm<MyValues> …>` fully typed. */
|
|
4
|
+
export declare const DialogForm: (<Values = Record<string, unknown>>(props: DialogFormProps<Values>) => ReactElement | null) & {
|
|
5
|
+
displayName?: string;
|
|
6
|
+
};
|
|
3
7
|
export default DialogForm;
|
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports["default"] = exports.DialogForm = void 0;
|
|
8
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
8
9
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
9
10
|
var _react = require("react");
|
|
10
11
|
var _classnames = _interopRequireDefault(require("../../../utils/classnames"));
|
|
@@ -31,12 +32,15 @@ var DialogFormBase = function DialogFormBase(props) {
|
|
|
31
32
|
submitTimeout = props.submitTimeout,
|
|
32
33
|
_props$autoClose = props.autoClose,
|
|
33
34
|
autoClose = _props$autoClose === void 0 ? true : _props$autoClose,
|
|
35
|
+
_props$closeOnReset = props.closeOnReset,
|
|
36
|
+
closeOnReset = _props$closeOnReset === void 0 ? true : _props$closeOnReset,
|
|
34
37
|
dialogProps = props.dialogProps,
|
|
35
38
|
onFinish = props.onFinish,
|
|
39
|
+
_onReset = props.onReset,
|
|
36
40
|
submitter = props.submitter,
|
|
37
41
|
children = props.children,
|
|
38
42
|
_destroyOnClose = props.destroyOnClose,
|
|
39
|
-
formProps = __rest(props, ["open", "onOpenChange", "trigger", "title", "width", "submitTimeout", "autoClose", "dialogProps", "onFinish", "submitter", "children", "destroyOnClose"]);
|
|
43
|
+
formProps = __rest(props, ["open", "onOpenChange", "trigger", "title", "width", "submitTimeout", "autoClose", "closeOnReset", "dialogProps", "onFinish", "onReset", "submitter", "children", "destroyOnClose"]);
|
|
40
44
|
var _useOverlayForm = (0, _useOverlayForm2.useOverlayForm)({
|
|
41
45
|
open: open,
|
|
42
46
|
onOpenChange: onOpenChange,
|
|
@@ -62,13 +66,19 @@ var DialogFormBase = function DialogFormBase(props) {
|
|
|
62
66
|
children: (0, _jsxRuntime.jsx)("div", {
|
|
63
67
|
className: classes(),
|
|
64
68
|
children: (0, _jsxRuntime.jsx)(_ProForm.ProForm, Object.assign({}, formProps, {
|
|
69
|
+
formComponentType: "DialogForm",
|
|
65
70
|
onFinish: handleFinish,
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
+
// Close rides the FORM-LEVEL reset channel — the single point
|
|
72
|
+
// where every reset surface converges (default Cancel button,
|
|
73
|
+
// custom submitter render calling `reset`, native type="reset"
|
|
74
|
+
// buttons). Consumer onReset runs first; closeOnReset opts out.
|
|
75
|
+
onReset: function onReset(values) {
|
|
76
|
+
_onReset === null || _onReset === void 0 ? void 0 : _onReset(values);
|
|
77
|
+
if (closeOnReset) handleHide();
|
|
71
78
|
},
|
|
79
|
+
submitter: submitter === false ? false : Object.assign({
|
|
80
|
+
resetText: (_a = dialogProps === null || dialogProps === void 0 ? void 0 : dialogProps.cancelText) !== null && _a !== void 0 ? _a : 'Cancel'
|
|
81
|
+
}, (0, _typeof2["default"])(submitter) === 'object' ? submitter : {}),
|
|
72
82
|
children: children
|
|
73
83
|
}))
|
|
74
84
|
})
|
|
@@ -76,6 +86,7 @@ var DialogFormBase = function DialogFormBase(props) {
|
|
|
76
86
|
});
|
|
77
87
|
};
|
|
78
88
|
DialogFormBase.displayName = 'DialogForm';
|
|
89
|
+
/** Generic-aware export — keeps `<DialogForm<MyValues> …>` fully typed. */
|
|
79
90
|
var DialogForm = exports.DialogForm = /*#__PURE__*/(0, _react.memo)(DialogFormBase);
|
|
80
91
|
var _default = exports["default"] = DialogForm;
|
|
81
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9sYXlvdXRzL0RpYWxvZ0Zvcm0uanMiLCJjb21wb25lbnRzL1Byb0Zvcm0vc3JjL2NvbXBvbmVudHMvUHJvRm9ybS9sYXlvdXRzL0RpYWxvZ0Zvcm0udHN4Il0sIm5hbWVzIjpbIl9qc3hSdW50aW1lIiwicmVxdWlyZSIsIl9yZWFjdCIsIl9jbGFzc25hbWVzIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9EaWFsb2ciLCJfUHJvRm9ybSIsIl9jb25zdGFudHMiLCJfdXNlT3ZlcmxheUZvcm0yIiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJjbGFzc2VzIiwiY2xhc3NuYW1lcyIsImNvbmNhdCIsIkNTU19QUkVGSVgiLCJEaWFsb2dGb3JtQmFzZSIsInByb3BzIiwiX2EiLCJvcGVuIiwib25PcGVuQ2hhbmdlIiwidHJpZ2dlciIsInRpdGxlIiwid2lkdGgiLCJzdWJtaXRUaW1lb3V0IiwiX3Byb3BzJGF1dG9DbG9zZSIsImF1dG9DbG9zZSIsImRpYWxvZ1Byb3BzIiwib25GaW5pc2giLCJzdWJtaXR0ZXIiLCJjaGlsZHJlbiIsIl9kZXN0cm95T25DbG9zZSIsImRlc3Ryb3lPbkNsb3NlIiwiZm9ybVByb3BzIiwiX3VzZU92ZXJsYXlGb3JtIiwidXNlT3ZlcmxheUZvcm0iLCJtZXJnZWRPcGVuIiwidHJpZ2dlck5vZGUiLCJoYW5kbGVGaW5pc2giLCJoYW5kbGVIaWRlIiwiX2pzeHMiLCJfRnJhZ21lbnQiLCJfanN4IiwiRGlhbG9nIiwiYXNzaWduIiwib25DYW5jZWwiLCJmb290ZXIiLCJ1bmRlZmluZWQiLCJyb290U3R5bGUiLCJjbGFzc05hbWUiLCJQcm9Gb3JtIiwicmVzZXRCdXR0b25Qcm9wcyIsIm9uQ2xpY2siLCJyZXNldFRleHQiLCJjYW5jZWxUZXh0IiwiZGlzcGxheU5hbWUiLCJEaWFsb2dGb3JtIiwiZXhwb3J0cyIsIm1lbW8iLCJfZGVmYXVsdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVdBLElBQUFBLFdBQUEsR0FBQUMsT0FBQTtBQ1hBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUVBLElBQUFFLFdBQUEsR0FBQUMsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLE9BQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFFBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFVBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLGdCQUFBLEdBQUFQLE9BQUE7QUROQSxJQUFJUSxNQUFNLEdBQUksVUFBUSxTQUFLQSxNQUFNLElBQUssVUFBVUMsQ0FBQyxFQUFFQyxDQUFDLEVBQUU7RUFDbEQsSUFBSUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztFQUNWLEtBQUssSUFBSUMsQ0FBQyxJQUFJSCxDQUFDLEVBQUUsSUFBSUksTUFBTSxDQUFDQyxTQUFTLENBQUNDLGNBQWMsQ0FBQ0MsSUFBSSxDQUFDUCxDQUFDLEVBQUVHLENBQUMsQ0FBQyxJQUFJRixDQUFDLENBQUNPLE9BQU8sQ0FBQ0wsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUMvRUQsQ0FBQyxDQUFDQyxDQUFDLENBQUMsR0FBR0gsQ0FBQyxDQUFDRyxDQUFDLENBQUM7RUFDZixJQUFJSCxDQUFDLElBQUksSUFBSSxJQUFJLE9BQU9JLE1BQU0sQ0FBQ0sscUJBQXFCLEtBQUssVUFBVSxFQUMvRCxLQUFLLElBQUlDLENBQUMsR0FBRyxDQUFDLEVBQUVQLENBQUMsR0FBR0MsTUFBTSxDQUFDSyxxQkFBcUIsQ0FBQ1QsQ0FBQyxDQUFDLEVBQUVVLENBQUMsR0FBR1AsQ0FBQyxDQUFDUSxNQUFNLEVBQUVELENBQUMsRUFBRSxFQUFFO0lBQ3BFLElBQUlULENBQUMsQ0FBQ08sT0FBTyxDQUFDTCxDQUFDLENBQUNPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJTixNQUFNLENBQUNDLFNBQVMsQ0FBQ08sb0JBQW9CLENBQUNMLElBQUksQ0FBQ1AsQ0FBQyxFQUFFRyxDQUFDLENBQUNPLENBQUMsQ0FBQyxDQUFDLEVBQzFFUixDQUFDLENBQUNDLENBQUMsQ0FBQ08sQ0FBQyxDQUFDLENBQUMsR0FBR1YsQ0FBQyxDQUFDRyxDQUFDLENBQUNPLENBQUMsQ0FBQyxDQUFDO0VBQ3pCO0VBQ0osT0FBT1IsQ0FBQztBQUNaLENBQUM7QUNERCxJQUFNVyxPQUFPLEdBQUcsSUFBQUMsc0JBQVUsS0FBQUMsTUFBQSxDQUFJQyxxQkFBVSxpQkFBYyxDQUFDO0FBRXZELElBQU1DLGNBQWMsR0FBd0IsU0FBdENBLGNBQWNBLENBQXlCQyxLQUFLLEVBQUk7RURTbEQsSUFBSUMsRUFBRTtFQ1JSLElBQ0VDLElBQUksR0FnQkZGLEtBQUssQ0FoQlBFLElBQUk7SUFDSkMsWUFBWSxHQWVWSCxLQUFLLENBZlBHLFlBQVk7SUFDWkMsT0FBTyxHQWNMSixLQUFLLENBZFBJLE9BQU87SUFDUEMsS0FBSyxHQWFITCxLQUFLLENBYlBLLEtBQUs7SUFDTEMsS0FBSyxHQVlITixLQUFLLENBWlBNLEtBQUs7SUFDTEMsYUFBYSxHQVdYUCxLQUFLLENBWFBPLGFBQWE7SUFBQUMsZ0JBQUEsR0FXWFIsS0FBSyxDQVZQUyxTQUFTO0lBQVRBLFNBQVMsR0FBQUQsZ0JBQUEsY0FBRyxJQUFJLEdBQUFBLGdCQUFBO0lBQ2hCRSxXQUFXLEdBU1RWLEtBQUssQ0FUUFUsV0FBVztJQUNYQyxRQUFRLEdBUU5YLEtBQUssQ0FSUFcsUUFBUTtJQUNSQyxTQUFTLEdBT1BaLEtBQUssQ0FQUFksU0FBUztJQUNUQyxRQUFRLEdBTU5iLEtBQUssQ0FOUGEsUUFBUTtJQUlRQyxlQUFlLEdBRTdCZCxLQUFLLENBRlBlLGNBQWM7SUFDWEMsU0FBUyxHQUFBbkMsTUFBQSxDQUNWbUIsS0FBSyxFQWpCSCxDQUFBLE1BQUEsRUFBQSxjQUFBLEVBQUEsU0FBQSxFQUFBLE9BQUEsRUFBQSxPQUFBLEVBQUEsZUFBQSxFQUFBLFdBQUEsRUFBQSxhQUFBLEVBQUEsVUFBQSxFQUFBLFdBQUEsRUFBQSxVQUFBLEVBQUEsZ0JBQUEsQ0FpQkwsQ0FBUTtFQUVULElBQUFpQixlQUFBLEdBS0ksSUFBQUMsK0JBQWMsRUFDaEI7TUFBRWhCLElBQUksRUFBSkEsSUFBSTtNQUFFQyxZQUFZLEVBQVpBLFlBQVk7TUFBRUMsT0FBTyxFQUFQQSxPQUFPO01BQUVLLFNBQVMsRUFBVEEsU0FBUztNQUFFRixhQUFhLEVBQWJBO0lBQWEsQ0FBRSxFQUN6REksUUFBUSxDQUNUO0lBUENRLFVBQVUsR0FBQUYsZUFBQSxDQUFWRSxVQUFVO0lBQ1ZDLFdBQVcsR0FBQUgsZUFBQSxDQUFYRyxXQUFXO0lBQ1hDLFlBQVksR0FBQUosZUFBQSxDQUFaSSxZQUFZO0lBQ1pDLFVBQVUsR0FBQUwsZUFBQSxDQUFWSyxVQUFVO0VBTVosT0FDRSxJQUFBQyxnQkFBQSxFQUFBQyxvQkFBQSxFQUFBO0lBQUFYLFFBQUEsRUFBQSxDQUNHTyxXQUFXLEVBQ1osSUFBQUssZUFBQSxFQUFDQyxjQUFNLEVBQUF4QyxNQUFBLENBQUF5QyxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQ0RqQixXQUFXLEVBQUE7TUFDZlIsSUFBSSxFQUFFaUIsVUFBVTtNQUNoQmQsS0FBSyxFQUFFQSxLQUFLO01BQ1p1QixRQUFRLEVBQUVOLFVBQVU7TUFDcEJPLE1BQU0sRUFBRTtJQUFJLENBQUEsRUFDUHZCLEtBQUssS0FBS3dCLFNBQVMsR0FBRztNQUFFQyxTQUFTLEVBQUE3QyxNQUFBLENBQUF5QyxNQUFBLENBQUF6QyxNQUFBLENBQUF5QyxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQU9qQixXQUFXLEtBQUEsSUFBQSxJQUFYQSxXQUFXLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQVhBLFdBQVcsQ0FBRXFCLFNBQVMsQ0FBQSxFQUFBO1FBQUV6QixLQUFLLEVBQUxBO01BQUssQ0FBQTtJQUFFLENBQUUsR0FBRyxDQUFBLENBQUUsRUFBQztNQUFBTyxRQUFBLEVBRXBGLElBQUFZLGVBQUEsRUFBQSxLQUFBLEVBQUE7UUFBS08sU0FBUyxFQUFFckMsT0FBTyxDQUFBLENBQUU7UUFBQWtCLFFBQUEsRUFDdkIsSUFBQVksZUFBQSxFQUFDUSxnQkFBTyxFQUFBL0MsTUFBQSxDQUFBeUMsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUNGWCxTQUFTLEVBQUE7VUFDYkwsUUFBUSxFQUFFVSxZQUFZO1VBQ3RCVCxTQUFTLEVBQUVBLFNBQVMsS0FBS2tCLFNBQVMsR0FBR2xCLFNBQVMsR0FBRztZQUMvQ3NCLGdCQUFnQixFQUFFO2NBQUVDLE9BQU8sRUFBRWI7WUFBVSxDQUFFO1lBQ3pDYyxTQUFTLEVBQUUsQ0FBQW5DLEVBQUEsR0FBQVMsV0FBVyxLQUFBLElBQUEsSUFBWEEsV0FBVyxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFYQSxXQUFXLENBQUUyQixVQUFVLE1BQUEsSUFBQSxJQUFBcEMsRUFBQSxLQUFBLEtBQUEsQ0FBQSxHQUFBQSxFQUFBLEdBQUk7VUQ1QjVCLENDNkJYO1VBQUFZLFFBQUEsRUFFQUE7UUFBUSxDQUFBLENBQUE7TUFDRCxDQUFBO0lBQ04sQ0FBQSxDQUFBLENBQ0M7RUFBQSxDQUFBLENBQ1I7QUFFUCxDQUFDO0FBRURkLGNBQWMsQ0FBQ3VDLFdBQVcsR0FBRyxZQUFZO0FBRWxDLElBQU1DLFVBQVUsR0FBQUMsT0FBQSxDQUFBRCxVQUFBLGdCQUFHLElBQUFFLFdBQUksRUFBQzFDLGNBQWMsQ0FBQztBQUFDLElBQUEyQyxRQUFBLEdBQUFGLE9BQUEsY0FFaENELFVBQVUiLCJmaWxlIjoiY29tcG9uZW50cy9Qcm9Gb3JtL2xheW91dHMvRGlhbG9nRm9ybS5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX3Jlc3QgPSAodGhpcyAmJiB0aGlzLl9fcmVzdCkgfHwgZnVuY3Rpb24gKHMsIGUpIHtcbiAgICB2YXIgdCA9IHt9O1xuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxuICAgICAgICB0W3BdID0gc1twXTtcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgICAgfVxuICAgIHJldHVybiB0O1xufTtcbmltcG9ydCB7IGpzeCBhcyBfanN4LCBGcmFnbWVudCBhcyBfRnJhZ21lbnQsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IG1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBkZWZhdWx0IGFzIGNsYXNzbmFtZXMgfSBmcm9tICcuLi8uLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCB7IERpYWxvZyB9IGZyb20gJy4uLy4uL0RpYWxvZyc7XG5pbXBvcnQgeyBQcm9Gb3JtIH0gZnJvbSAnLi4vUHJvRm9ybSc7XG5pbXBvcnQgeyBDU1NfUFJFRklYIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IHVzZU92ZXJsYXlGb3JtIH0gZnJvbSAnLi91c2VPdmVybGF5Rm9ybSc7XG5jb25zdCBjbGFzc2VzID0gY2xhc3NuYW1lcyhgJHtDU1NfUFJFRklYfS1kaWFsb2ctZm9ybWApO1xuY29uc3QgRGlhbG9nRm9ybUJhc2UgPSAocHJvcHMpID0+IHtcbiAgICB2YXIgX2E7XG4gICAgY29uc3QgeyBvcGVuLCBvbk9wZW5DaGFuZ2UsIHRyaWdnZXIsIHRpdGxlLCB3aWR0aCwgc3VibWl0VGltZW91dCwgYXV0b0Nsb3NlID0gdHJ1ZSwgZGlhbG9nUHJvcHMsIG9uRmluaXNoLCBzdWJtaXR0ZXIsIGNoaWxkcmVuLCBcbiAgICAvLyBkZXN0cm95T25DbG9zZSBpcyBhY2NlcHRlZCBmb3IgQVBJIGNvbXBhdCBidXQgbm90IHVzZWQg4oCUXG4gICAgLy8gRGlhbG9nJ3Mgb3duIHVzZVByZXNlbmNlIGFscmVhZHkgdW5tb3VudHMgdGhlIGVudGlyZSBET00gdHJlZVxuICAgIC8vIChpbmNsdWRpbmcgZm9ybSBjb250ZW50KSBhZnRlciB0aGUgY2xvc2UgYW5pbWF0aW9uIGZpbmlzaGVzLlxuICAgIGRlc3Ryb3lPbkNsb3NlOiBfZGVzdHJveU9uQ2xvc2UgfSA9IHByb3BzLCBmb3JtUHJvcHMgPSBfX3Jlc3QocHJvcHMsIFtcIm9wZW5cIiwgXCJvbk9wZW5DaGFuZ2VcIiwgXCJ0cmlnZ2VyXCIsIFwidGl0bGVcIiwgXCJ3aWR0aFwiLCBcInN1Ym1pdFRpbWVvdXRcIiwgXCJhdXRvQ2xvc2VcIiwgXCJkaWFsb2dQcm9wc1wiLCBcIm9uRmluaXNoXCIsIFwic3VibWl0dGVyXCIsIFwiY2hpbGRyZW5cIiwgXCJkZXN0cm95T25DbG9zZVwiXSk7XG4gICAgY29uc3QgeyBtZXJnZWRPcGVuLCB0cmlnZ2VyTm9kZSwgaGFuZGxlRmluaXNoLCBoYW5kbGVIaWRlLCB9ID0gdXNlT3ZlcmxheUZvcm0oeyBvcGVuLCBvbk9wZW5DaGFuZ2UsIHRyaWdnZXIsIGF1dG9DbG9zZSwgc3VibWl0VGltZW91dCB9LCBvbkZpbmlzaCk7XG4gICAgcmV0dXJuIChfanN4cyhfRnJhZ21lbnQsIHsgY2hpbGRyZW46IFt0cmlnZ2VyTm9kZSwgX2pzeChEaWFsb2csIE9iamVjdC5hc3NpZ24oe30sIGRpYWxvZ1Byb3BzLCB7IG9wZW46IG1lcmdlZE9wZW4sIHRpdGxlOiB0aXRsZSwgb25DYW5jZWw6IGhhbmRsZUhpZGUsIGZvb3RlcjogbnVsbCB9LCAod2lkdGggIT09IHVuZGVmaW5lZCA/IHsgcm9vdFN0eWxlOiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGRpYWxvZ1Byb3BzID09PSBudWxsIHx8IGRpYWxvZ1Byb3BzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkaWFsb2dQcm9wcy5yb290U3R5bGUpLCB7IHdpZHRoIH0pIH0gOiB7fSksIHsgY2hpbGRyZW46IF9qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoKSwgY2hpbGRyZW46IF9qc3goUHJvRm9ybSwgT2JqZWN0LmFzc2lnbih7fSwgZm9ybVByb3BzLCB7IG9uRmluaXNoOiBoYW5kbGVGaW5pc2gsIHN1Ym1pdHRlcjogc3VibWl0dGVyICE9PSB1bmRlZmluZWQgPyBzdWJtaXR0ZXIgOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXRCdXR0b25Qcm9wczogeyBvbkNsaWNrOiBoYW5kbGVIaWRlIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXRUZXh0OiAoX2EgPSBkaWFsb2dQcm9wcyA9PT0gbnVsbCB8fCBkaWFsb2dQcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGlhbG9nUHJvcHMuY2FuY2VsVGV4dCkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogJ0NhbmNlbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCBjaGlsZHJlbjogY2hpbGRyZW4gfSkpIH0pIH0pKV0gfSkpO1xufTtcbkRpYWxvZ0Zvcm1CYXNlLmRpc3BsYXlOYW1lID0gJ0RpYWxvZ0Zvcm0nO1xuZXhwb3J0IGNvbnN0IERpYWxvZ0Zvcm0gPSBtZW1vKERpYWxvZ0Zvcm1CYXNlKTtcbmV4cG9ydCBkZWZhdWx0IERpYWxvZ0Zvcm07IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
|
|
92
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9sYXlvdXRzL0RpYWxvZ0Zvcm0uanMiLCJjb21wb25lbnRzL1Byb0Zvcm0vc3JjL2NvbXBvbmVudHMvUHJvRm9ybS9sYXlvdXRzL0RpYWxvZ0Zvcm0udHN4Il0sIm5hbWVzIjpbIl9qc3hSdW50aW1lIiwicmVxdWlyZSIsIl9yZWFjdCIsIl9jbGFzc25hbWVzIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9EaWFsb2ciLCJfUHJvRm9ybSIsIl9jb25zdGFudHMiLCJfdXNlT3ZlcmxheUZvcm0yIiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJjbGFzc2VzIiwiY2xhc3NuYW1lcyIsImNvbmNhdCIsIkNTU19QUkVGSVgiLCJEaWFsb2dGb3JtQmFzZSIsInByb3BzIiwiX2EiLCJvcGVuIiwib25PcGVuQ2hhbmdlIiwidHJpZ2dlciIsInRpdGxlIiwid2lkdGgiLCJzdWJtaXRUaW1lb3V0IiwiX3Byb3BzJGF1dG9DbG9zZSIsImF1dG9DbG9zZSIsIl9wcm9wcyRjbG9zZU9uUmVzZXQiLCJjbG9zZU9uUmVzZXQiLCJkaWFsb2dQcm9wcyIsIm9uRmluaXNoIiwib25SZXNldCIsInN1Ym1pdHRlciIsImNoaWxkcmVuIiwiX2Rlc3Ryb3lPbkNsb3NlIiwiZGVzdHJveU9uQ2xvc2UiLCJmb3JtUHJvcHMiLCJfdXNlT3ZlcmxheUZvcm0iLCJ1c2VPdmVybGF5Rm9ybSIsIm1lcmdlZE9wZW4iLCJ0cmlnZ2VyTm9kZSIsImhhbmRsZUZpbmlzaCIsImhhbmRsZUhpZGUiLCJfanN4cyIsIl9GcmFnbWVudCIsIl9qc3giLCJEaWFsb2ciLCJhc3NpZ24iLCJvbkNhbmNlbCIsImZvb3RlciIsInVuZGVmaW5lZCIsInJvb3RTdHlsZSIsImNsYXNzTmFtZSIsIlByb0Zvcm0iLCJmb3JtQ29tcG9uZW50VHlwZSIsInZhbHVlcyIsInJlc2V0VGV4dCIsImNhbmNlbFRleHQiLCJfdHlwZW9mMiIsImRpc3BsYXlOYW1lIiwiRGlhbG9nRm9ybSIsImV4cG9ydHMiLCJtZW1vIiwiX2RlZmF1bHQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBV0EsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDWEEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUsV0FBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksT0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssUUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sVUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sZ0JBQUEsR0FBQVAsT0FBQTtBRE5BLElBQUlRLE1BQU0sR0FBSSxVQUFRLFNBQUtBLE1BQU0sSUFBSyxVQUFVQyxDQUFDLEVBQUVDLENBQUMsRUFBRTtFQUNsRCxJQUFJQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VBQ1YsS0FBSyxJQUFJQyxDQUFDLElBQUlILENBQUMsRUFBRSxJQUFJSSxNQUFNLENBQUNDLFNBQVMsQ0FBQ0MsY0FBYyxDQUFDQyxJQUFJLENBQUNQLENBQUMsRUFBRUcsQ0FBQyxDQUFDLElBQUlGLENBQUMsQ0FBQ08sT0FBTyxDQUFDTCxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQy9FRCxDQUFDLENBQUNDLENBQUMsQ0FBQyxHQUFHSCxDQUFDLENBQUNHLENBQUMsQ0FBQztFQUNmLElBQUlILENBQUMsSUFBSSxJQUFJLElBQUksT0FBT0ksTUFBTSxDQUFDSyxxQkFBcUIsS0FBSyxVQUFVLEVBQy9ELEtBQUssSUFBSUMsQ0FBQyxHQUFHLENBQUMsRUFBRVAsQ0FBQyxHQUFHQyxNQUFNLENBQUNLLHFCQUFxQixDQUFDVCxDQUFDLENBQUMsRUFBRVUsQ0FBQyxHQUFHUCxDQUFDLENBQUNRLE1BQU0sRUFBRUQsQ0FBQyxFQUFFLEVBQUU7SUFDcEUsSUFBSVQsQ0FBQyxDQUFD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QUEsQ0FBRyxDQUNwRDtVQUFBQyxRQUFBLEVBRUFBO1FBQVEsQ0FBQSxDQUFBO01BQ0QsQ0FBQTtJQUNOLENBQUEsQ0FBQSxDQUNDO0VBQUEsQ0FBQSxDQUNSO0FBRVAsQ0FBQztBQUVEakIsY0FBYyxDQUFDMkMsV0FBVyxHQUFHLFlBQVk7QUFFekM7QUFDTyxJQUFNQyxVQUFVLEdBQUFDLE9BQUEsQ0FBQUQsVUFBQSxnQkFBRyxJQUFBRSxXQUFJLEVBQUM5QyxjQUFjLENBRU87QUFBQyxJQUFBK0MsUUFBQSxHQUFBRixPQUFBLGNBRXRDRCxVQUFVIiwiZmlsZSI6ImNvbXBvbmVudHMvUHJvRm9ybS9sYXlvdXRzL0RpYWxvZ0Zvcm0uanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCwgRnJhZ21lbnQgYXMgX0ZyYWdtZW50LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBtZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgZGVmYXVsdCBhcyBjbGFzc25hbWVzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyBEaWFsb2cgfSBmcm9tICcuLi8uLi9EaWFsb2cnO1xuaW1wb3J0IHsgUHJvRm9ybSB9IGZyb20gJy4uL1Byb0Zvcm0nO1xuaW1wb3J0IHsgQ1NTX1BSRUZJWCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyB1c2VPdmVybGF5Rm9ybSB9IGZyb20gJy4vdXNlT3ZlcmxheUZvcm0nO1xuY29uc3QgY2xhc3NlcyA9IGNsYXNzbmFtZXMoYCR7Q1NTX1BSRUZJWH0tZGlhbG9nLWZvcm1gKTtcbmNvbnN0IERpYWxvZ0Zvcm1CYXNlID0gKHByb3BzKSA9PiB7XG4gICAgdmFyIF9hO1xuICAgIGNvbnN0IHsgb3Blbiwgb25PcGVuQ2hhbmdlLCB0cmlnZ2VyLCB0aXRsZSwgd2lkdGgsIHN1Ym1pdFRpbWVvdXQsIGF1dG9DbG9zZSA9IHRydWUsIGNsb3NlT25SZXNldCA9IHRydWUsIGRpYWxvZ1Byb3BzLCBvbkZpbmlzaCwgb25SZXNldCwgc3VibWl0dGVyLCBjaGlsZHJlbiwgXG4gICAgLy8gZGVzdHJveU9uQ2xvc2UgaXMgYWNjZXB0ZWQgZm9yIEFQSSBjb21wYXQgYnV0IG5vdCB1c2VkIOKAlFxuICAgIC8vIERpYWxvZydzIG93biB1c2VQcmVzZW5jZSBhbHJlYWR5IHVubW91bnRzIHRoZSBlbnRpcmUgRE9NIHRyZWVcbiAgICAvLyAoaW5jbHVkaW5nIGZvcm0gY29udGVudCkgYWZ0ZXIgdGhlIGNsb3NlIGFuaW1hdGlvbiBmaW5pc2hlcy5cbiAgICBkZXN0cm95T25DbG9zZTogX2Rlc3Ryb3lPbkNsb3NlIH0gPSBwcm9wcywgZm9ybVByb3BzID0gX19yZXN0KHByb3BzLCBbXCJvcGVuXCIsIFwib25PcGVuQ2hhbmdlXCIsIFwidHJpZ2dlclwiLCBcInRpdGxlXCIsIFwid2lkdGhcIiwgXCJzdWJtaXRUaW1lb3V0XCIsIFwiYXV0b0Nsb3NlXCIsIFwiY2xvc2VPblJlc2V0XCIsIFwiZGlhbG9nUHJvcHNcIiwgXCJvbkZpbmlzaFwiLCBcIm9uUmVzZXRcIiwgXCJzdWJtaXR0ZXJcIiwgXCJjaGlsZHJlblwiLCBcImRlc3Ryb3lPbkNsb3NlXCJdKTtcbiAgICBjb25zdCB7IG1lcmdlZE9wZW4sIHRyaWdnZXJOb2RlLCBoYW5kbGVGaW5pc2gsIGhhbmRsZUhpZGUsIH0gPSB1c2VPdmVybGF5Rm9ybSh7IG9wZW4sIG9uT3BlbkNoYW5nZSwgdHJpZ2dlciwgYXV0b0Nsb3NlLCBzdWJtaXRUaW1lb3V0IH0sIG9uRmluaXNoKTtcbiAgICByZXR1cm4gKF9qc3hzKF9GcmFnbWVudCwgeyBjaGlsZHJlbjogW3RyaWdnZXJOb2RlLCBfanN4KERpYWxvZywgT2JqZWN0LmFzc2lnbih7fSwgZGlhbG9nUHJvcHMsIHsgb3BlbjogbWVyZ2VkT3BlbiwgdGl0bGU6IHRpdGxlLCBvbkNhbmNlbDogaGFuZGxlSGlkZSwgZm9vdGVyOiBudWxsIH0sICh3aWR0aCAhPT0gdW5kZWZpbmVkID8geyByb290U3R5bGU6IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgZGlhbG9nUHJvcHMgPT09IG51bGwgfHwgZGlhbG9nUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRpYWxvZ1Byb3BzLnJvb3RTdHlsZSksIHsgd2lkdGggfSkgfSA6IHt9KSwgeyBjaGlsZHJlbjogX2pzeChcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygpLCBjaGlsZHJlbjogX2pzeChQcm9Gb3JtLCBPYmplY3QuYXNzaWduKHt9LCBmb3JtUHJvcHMsIHsgZm9ybUNvbXBvbmVudFR5cGU6IFwiRGlhbG9nRm9ybVwiLCBvbkZpbmlzaDogaGFuZGxlRmluaXNoLCBcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIENsb3NlIHJpZGVzIHRoZSBGT1JNLUxFVkVMIHJlc2V0IGNoYW5uZWwg4oCUIHRoZSBzaW5nbGUgcG9pbnRcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdoZXJlIGV2ZXJ5IHJlc2V0IHN1cmZhY2UgY29udmVyZ2VzIChkZWZhdWx0IENhbmNlbCBidXR0b24sXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBjdXN0b20gc3VibWl0dGVyIHJlbmRlciBjYWxsaW5nIGByZXNldGAsIG5hdGl2ZSB0eXBlPVwicmVzZXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gYnV0dG9ucykuIENvbnN1bWVyIG9uUmVzZXQgcnVucyBmaXJzdDsgY2xvc2VPblJlc2V0IG9wdHMgb3V0LlxuICAgICAgICAgICAgICAgICAgICAgICAgb25SZXNldDogKHZhbHVlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uUmVzZXQgPT09IG51bGwgfHwgb25SZXNldCA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25SZXNldCh2YWx1ZXMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjbG9zZU9uUmVzZXQpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sIHN1Ym1pdHRlcjogc3VibWl0dGVyID09PSBmYWxzZSA/IGZhbHNlIDogT2JqZWN0LmFzc2lnbih7IHJlc2V0VGV4dDogKF9hID0gZGlhbG9nUHJvcHMgPT09IG51bGwgfHwgZGlhbG9nUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRpYWxvZ1Byb3BzLmNhbmNlbFRleHQpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6ICdDYW5jZWwnIH0sICh0eXBlb2Ygc3VibWl0dGVyID09PSAnb2JqZWN0JyA/IHN1Ym1pdHRlciA6IHt9KSksIGNoaWxkcmVuOiBjaGlsZHJlbiB9KSkgfSkgfSkpXSB9KSk7XG59O1xuRGlhbG9nRm9ybUJhc2UuZGlzcGxheU5hbWUgPSAnRGlhbG9nRm9ybSc7XG4vKiogR2VuZXJpYy1hd2FyZSBleHBvcnQg4oCUIGtlZXBzIGA8RGlhbG9nRm9ybTxNeVZhbHVlcz4g4oCmPmAgZnVsbHkgdHlwZWQuICovXG5leHBvcnQgY29uc3QgRGlhbG9nRm9ybSA9IG1lbW8oRGlhbG9nRm9ybUJhc2UpO1xuZXhwb3J0IGRlZmF1bHQgRGlhbG9nRm9ybTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
1
2
|
import type { DrawerFormProps } from '../interface';
|
|
2
|
-
export
|
|
3
|
+
/** Generic-aware export — keeps `<DrawerForm<MyValues> …>` fully typed. */
|
|
4
|
+
export declare const DrawerForm: (<Values = Record<string, unknown>>(props: DrawerFormProps<Values>) => ReactElement | null) & {
|
|
5
|
+
displayName?: string;
|
|
6
|
+
};
|
|
3
7
|
export default DrawerForm;
|