@nokecy/qc-ui 1.0.59 → 1.0.60

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/dist/cjs/deleteConfirm/index.d.ts +31 -0
  2. package/dist/cjs/deleteConfirm/index.js +64 -0
  3. package/dist/cjs/fullScreenAlert/index.d.ts +25 -4
  4. package/dist/cjs/fullScreenAlert/index.js +50 -17
  5. package/dist/cjs/generatedListPage/ConfigurableToolbar.d.ts +35 -0
  6. package/dist/cjs/generatedListPage/ConfigurableToolbar.js +179 -0
  7. package/dist/cjs/generatedListPage/GeneratedListPage.d.ts +8 -0
  8. package/dist/cjs/generatedListPage/GeneratedListPage.js +545 -0
  9. package/dist/cjs/generatedListPage/OptionsColumn.d.ts +9 -0
  10. package/dist/cjs/generatedListPage/OptionsColumn.js +135 -0
  11. package/dist/cjs/generatedListPage/PerformanceMonitor.d.ts +55 -0
  12. package/dist/cjs/generatedListPage/PerformanceMonitor.js +277 -0
  13. package/dist/cjs/generatedListPage/RequestManager.d.ts +97 -0
  14. package/dist/cjs/generatedListPage/RequestManager.js +404 -0
  15. package/dist/cjs/generatedListPage/_utils/AccessWrapper.d.ts +16 -0
  16. package/dist/cjs/generatedListPage/_utils/AccessWrapper.js +26 -0
  17. package/dist/cjs/generatedListPage/_utils/defaultHandlers.d.ts +22 -0
  18. package/dist/cjs/generatedListPage/_utils/defaultHandlers.js +127 -0
  19. package/dist/cjs/generatedListPage/index.d.ts +20 -0
  20. package/dist/cjs/generatedListPage/index.js +92 -0
  21. package/dist/cjs/generatedListPage/types.d.ts +221 -0
  22. package/dist/cjs/generatedListPage/types.js +5 -0
  23. package/dist/cjs/generatedListPage/usePermissionCheck.d.ts +66 -0
  24. package/dist/cjs/generatedListPage/usePermissionCheck.js +150 -0
  25. package/dist/cjs/generatedListPage/useRequestManager.d.ts +35 -0
  26. package/dist/cjs/generatedListPage/useRequestManager.js +121 -0
  27. package/dist/cjs/importModal/index.d.ts +21 -3
  28. package/dist/cjs/importModal/index.js +30 -10
  29. package/dist/cjs/index.d.ts +9 -1
  30. package/dist/cjs/index.js +21 -0
  31. package/dist/cjs/standardFormDialog/FormValidation.d.ts +150 -0
  32. package/dist/cjs/standardFormDialog/FormValidation.js +229 -0
  33. package/dist/cjs/standardFormDialog/PortalManager.d.ts +94 -0
  34. package/dist/cjs/standardFormDialog/PortalManager.js +259 -0
  35. package/dist/cjs/standardFormDialog/StandardFormDialog.d.ts +10 -0
  36. package/dist/cjs/standardFormDialog/StandardFormDialog.js +516 -0
  37. package/dist/cjs/standardFormDialog/index.d.ts +7 -0
  38. package/dist/cjs/standardFormDialog/index.js +83 -0
  39. package/dist/cjs/standardFormDialog/types.d.ts +107 -0
  40. package/dist/cjs/standardFormDialog/types.js +5 -0
  41. package/dist/cjs/standardFormDialog/useStandardFormSchema.d.ts +68 -0
  42. package/dist/cjs/standardFormDialog/useStandardFormSchema.js +197 -0
  43. package/dist/cjs/standardFormDialog/withStandardForm.d.ts +193 -0
  44. package/dist/cjs/standardFormDialog/withStandardForm.js +388 -0
  45. package/dist/esm/deleteConfirm/index.d.ts +31 -0
  46. package/dist/esm/deleteConfirm/index.js +57 -0
  47. package/dist/esm/fullScreenAlert/index.d.ts +25 -4
  48. package/dist/esm/fullScreenAlert/index.js +50 -18
  49. package/dist/esm/generatedListPage/ConfigurableToolbar.d.ts +35 -0
  50. package/dist/esm/generatedListPage/ConfigurableToolbar.js +171 -0
  51. package/dist/esm/generatedListPage/GeneratedListPage.d.ts +8 -0
  52. package/dist/esm/generatedListPage/GeneratedListPage.js +535 -0
  53. package/dist/esm/generatedListPage/OptionsColumn.d.ts +9 -0
  54. package/dist/esm/generatedListPage/OptionsColumn.js +127 -0
  55. package/dist/esm/generatedListPage/PerformanceMonitor.d.ts +55 -0
  56. package/dist/esm/generatedListPage/PerformanceMonitor.js +272 -0
  57. package/dist/esm/generatedListPage/RequestManager.d.ts +97 -0
  58. package/dist/esm/generatedListPage/RequestManager.js +398 -0
  59. package/dist/esm/generatedListPage/_utils/AccessWrapper.d.ts +16 -0
  60. package/dist/esm/generatedListPage/_utils/AccessWrapper.js +20 -0
  61. package/dist/esm/generatedListPage/_utils/defaultHandlers.d.ts +22 -0
  62. package/dist/esm/generatedListPage/_utils/defaultHandlers.js +122 -0
  63. package/dist/esm/generatedListPage/index.d.ts +20 -0
  64. package/dist/esm/generatedListPage/index.js +26 -0
  65. package/dist/esm/generatedListPage/types.d.ts +221 -0
  66. package/dist/esm/generatedListPage/types.js +1 -0
  67. package/dist/esm/generatedListPage/usePermissionCheck.d.ts +66 -0
  68. package/dist/esm/generatedListPage/usePermissionCheck.js +145 -0
  69. package/dist/esm/generatedListPage/useRequestManager.d.ts +35 -0
  70. package/dist/esm/generatedListPage/useRequestManager.js +116 -0
  71. package/dist/esm/importModal/index.d.ts +21 -3
  72. package/dist/esm/importModal/index.js +29 -10
  73. package/dist/esm/index.d.ts +9 -1
  74. package/dist/esm/index.js +6 -1
  75. package/dist/esm/standardFormDialog/FormValidation.d.ts +150 -0
  76. package/dist/esm/standardFormDialog/FormValidation.js +223 -0
  77. package/dist/esm/standardFormDialog/PortalManager.d.ts +94 -0
  78. package/dist/esm/standardFormDialog/PortalManager.js +253 -0
  79. package/dist/esm/standardFormDialog/StandardFormDialog.d.ts +10 -0
  80. package/dist/esm/standardFormDialog/StandardFormDialog.js +508 -0
  81. package/dist/esm/standardFormDialog/index.d.ts +7 -0
  82. package/dist/esm/standardFormDialog/index.js +6 -0
  83. package/dist/esm/standardFormDialog/types.d.ts +107 -0
  84. package/dist/esm/standardFormDialog/types.js +1 -0
  85. package/dist/esm/standardFormDialog/useStandardFormSchema.d.ts +68 -0
  86. package/dist/esm/standardFormDialog/useStandardFormSchema.js +191 -0
  87. package/dist/esm/standardFormDialog/withStandardForm.d.ts +193 -0
  88. package/dist/esm/standardFormDialog/withStandardForm.js +382 -0
  89. package/dist/umd/qc-ui.min.js +1 -1
  90. package/package.json +1 -1
  91. package/dist/esm/ConfirmPro/index.d.ts.map +0 -1
  92. package/dist/esm/ag-grid-plus/_utils/boolSelect.d.ts.map +0 -1
  93. package/dist/esm/ag-grid-plus/_utils/customGroupCellRenderer.d.ts.map +0 -1
  94. package/dist/esm/ag-grid-plus/_utils/processColumnGroups.d.ts.map +0 -1
  95. package/dist/esm/ag-grid-plus/_utils/processFormColumnState.d.ts.map +0 -1
  96. package/dist/esm/ag-grid-plus/ag-gridPlus.d.ts.map +0 -1
  97. package/dist/esm/ag-grid-plus/context/gridContext.d.ts.map +0 -1
  98. package/dist/esm/ag-grid-plus/gridManager/index.d.ts.map +0 -1
  99. package/dist/esm/ag-grid-plus/index.d.ts.map +0 -1
  100. package/dist/esm/ag-grid-plus/interface.d.ts.map +0 -1
  101. package/dist/esm/ag-grid-plus/locale.d.ts.map +0 -1
  102. package/dist/esm/ag-grid-plus/queryForm/index.d.ts.map +0 -1
  103. package/dist/esm/ag-grid-plus/queryForm/queryForm.d.ts.map +0 -1
  104. package/dist/esm/ag-grid-plus/setting/diySetting/index.d.ts.map +0 -1
  105. package/dist/esm/ag-grid-plus/setting/index.d.ts.map +0 -1
  106. package/dist/esm/ag-grid-plus/settingItem/index.d.ts.map +0 -1
  107. package/dist/esm/ag-grid-plus/toolBar/index.d.ts.map +0 -1
  108. package/dist/esm/ag-grid-plus/toolBar/style.d.ts.map +0 -1
  109. package/dist/esm/ag-grid-plus/utils.d.ts.map +0 -1
  110. package/dist/esm/array-table/arrayAddBtn.d.ts.map +0 -1
  111. package/dist/esm/array-table/arrayBase.d.ts.map +0 -1
  112. package/dist/esm/array-table/index.d.ts.map +0 -1
  113. package/dist/esm/array-table/interface.d.ts.map +0 -1
  114. package/dist/esm/array-table/preview.d.ts.map +0 -1
  115. package/dist/esm/array-table/utils.d.ts.map +0 -1
  116. package/dist/esm/array-table-index/index.d.ts.map +0 -1
  117. package/dist/esm/card/index.d.ts.map +0 -1
  118. package/dist/esm/dashboard/dashboard/components/index.d.ts.map +0 -1
  119. package/dist/esm/dashboard/dashboard/components/modal/index.d.ts.map +0 -1
  120. package/dist/esm/dashboard/dashboard/components/toolbar/index.d.ts.map +0 -1
  121. package/dist/esm/dashboard/dashboard/components/toolbar/style/index.d.ts.map +0 -1
  122. package/dist/esm/dashboard/dashboard/index.d.ts.map +0 -1
  123. package/dist/esm/dashboard/dashboard/service.d.ts.map +0 -1
  124. package/dist/esm/dashboard/dashboard/utils.d.ts.map +0 -1
  125. package/dist/esm/dashboard/index.d.ts.map +0 -1
  126. package/dist/esm/dashboard/utils.d.ts.map +0 -1
  127. package/dist/esm/dashboard/widget/index.d.ts.map +0 -1
  128. package/dist/esm/dashboard/widget/selector/index.d.ts.map +0 -1
  129. package/dist/esm/dashboard/widget/utils.d.ts.map +0 -1
  130. package/dist/esm/dialogSelect/index.d.ts.map +0 -1
  131. package/dist/esm/draggableModal/index.d.ts.map +0 -1
  132. package/dist/esm/editable/index.d.ts.map +0 -1
  133. package/dist/esm/editable/style.d.ts.map +0 -1
  134. package/dist/esm/extensible-grid/index.d.ts.map +0 -1
  135. package/dist/esm/extensible-grid/interface.d.ts.map +0 -1
  136. package/dist/esm/formDesigner/FormDesigner.d.ts.map +0 -1
  137. package/dist/esm/formDesigner/ProCard/index.d.ts.map +0 -1
  138. package/dist/esm/formDesigner/arrayTable/arrayTableSchema.d.ts.map +0 -1
  139. package/dist/esm/formDesigner/arrayTable/index.d.ts.map +0 -1
  140. package/dist/esm/formDesigner/arrayTable/preview.d.ts.map +0 -1
  141. package/dist/esm/formDesigner/index.d.ts.map +0 -1
  142. package/dist/esm/formDesigner/preWidgets/arrayTableIndex/index.d.ts.map +0 -1
  143. package/dist/esm/formDesigner/preWidgets/arrayTableIndex/preview.d.ts.map +0 -1
  144. package/dist/esm/formDesigner/preWidgets/card/index.d.ts.map +0 -1
  145. package/dist/esm/formDesigner/preWidgets/card/preview.d.ts.map +0 -1
  146. package/dist/esm/formDesigner/preWidgets/index.d.ts.map +0 -1
  147. package/dist/esm/formDesigner/preWidgets/preDefineProperty1/index.d.ts.map +0 -1
  148. package/dist/esm/formDesigner/preWidgets/preDefineProperty1/preview.d.ts.map +0 -1
  149. package/dist/esm/formDesigner/preWidgets/preDefineProperty10/index.d.ts.map +0 -1
  150. package/dist/esm/formDesigner/preWidgets/preDefineProperty10/preview.d.ts.map +0 -1
  151. package/dist/esm/formDesigner/preWidgets/preDefineProperty2/index.d.ts.map +0 -1
  152. package/dist/esm/formDesigner/preWidgets/preDefineProperty2/preview.d.ts.map +0 -1
  153. package/dist/esm/formDesigner/preWidgets/preDefineProperty3/index.d.ts.map +0 -1
  154. package/dist/esm/formDesigner/preWidgets/preDefineProperty3/preview.d.ts.map +0 -1
  155. package/dist/esm/formDesigner/preWidgets/preDefineProperty4/index.d.ts.map +0 -1
  156. package/dist/esm/formDesigner/preWidgets/preDefineProperty4/preview.d.ts.map +0 -1
  157. package/dist/esm/formDesigner/preWidgets/preDefineProperty5/index.d.ts.map +0 -1
  158. package/dist/esm/formDesigner/preWidgets/preDefineProperty5/preview.d.ts.map +0 -1
  159. package/dist/esm/formDesigner/preWidgets/preDefineProperty6/index.d.ts.map +0 -1
  160. package/dist/esm/formDesigner/preWidgets/preDefineProperty6/preview.d.ts.map +0 -1
  161. package/dist/esm/formDesigner/preWidgets/preDefineProperty7/index.d.ts.map +0 -1
  162. package/dist/esm/formDesigner/preWidgets/preDefineProperty7/preview.d.ts.map +0 -1
  163. package/dist/esm/formDesigner/preWidgets/preDefineProperty8/index.d.ts.map +0 -1
  164. package/dist/esm/formDesigner/preWidgets/preDefineProperty8/preview.d.ts.map +0 -1
  165. package/dist/esm/formDesigner/preWidgets/preDefineProperty9/index.d.ts.map +0 -1
  166. package/dist/esm/formDesigner/preWidgets/preDefineProperty9/preview.d.ts.map +0 -1
  167. package/dist/esm/formDesigner/preWidgets/utils.d.ts.map +0 -1
  168. package/dist/esm/formDesigner/widgets/ActionsWidget.d.ts.map +0 -1
  169. package/dist/esm/formDesigner/widgets/LogoWidget.d.ts.map +0 -1
  170. package/dist/esm/formDesigner/widgets/PreviewWidget.d.ts.map +0 -1
  171. package/dist/esm/formDesigner/widgets/SchemaEditorWidget.d.ts.map +0 -1
  172. package/dist/esm/formDesigner/widgets/index.d.ts.map +0 -1
  173. package/dist/esm/formPro/context/formProContext.d.ts.map +0 -1
  174. package/dist/esm/formPro/formLayoutPro.d.ts.map +0 -1
  175. package/dist/esm/formPro/index.d.ts.map +0 -1
  176. package/dist/esm/fullScreenAlert/index.d.ts.map +0 -1
  177. package/dist/esm/importModal/index.d.ts.map +0 -1
  178. package/dist/esm/index.d.ts.map +0 -1
  179. package/dist/esm/queryBuilder/index.d.ts.map +0 -1
  180. package/dist/esm/toolBar/index.d.ts.map +0 -1
@@ -0,0 +1,68 @@
1
+ import { FormSchemaConfig } from './types';
2
+ /**
3
+ * 标准表单Schema Hook
4
+ *
5
+ * 提供便捷的Schema创建和管理功能
6
+ */
7
+ export declare const useStandardFormSchema: (formId: string, businessSchema: Record<string, any>, formConfig?: Record<string, any>) => FormSchemaConfig;
8
+ /**
9
+ * 创建标准Grid Schema的工具函数
10
+ */
11
+ export declare const createGridSchema: (properties: Record<string, any>, maxColumns?: number, strictAutoFit?: boolean) => Record<string, any>;
12
+ /**
13
+ * 创建表单字段的工具函数
14
+ */
15
+ export declare const createFormField: (title: string, component?: string, options?: {
16
+ type?: string | undefined;
17
+ required?: boolean | undefined;
18
+ placeholder?: string | undefined;
19
+ maxLength?: number | undefined;
20
+ rows?: number | undefined;
21
+ gridSpan?: number | undefined;
22
+ componentProps?: Record<string, any> | undefined;
23
+ decoratorProps?: Record<string, any> | undefined;
24
+ } | undefined) => any;
25
+ /**
26
+ * 创建选择字段的工具函数
27
+ */
28
+ export declare const createSelectField: (title: string, options: Array<{
29
+ label: string;
30
+ value: any;
31
+ }>, fieldOptions?: {
32
+ required?: boolean | undefined;
33
+ placeholder?: string | undefined;
34
+ gridSpan?: number | undefined;
35
+ mode?: "multiple" | "tags" | undefined;
36
+ } | undefined) => any;
37
+ /**
38
+ * 快速创建常用字段的工具函数集合
39
+ */
40
+ export declare const FieldCreators: {
41
+ /**
42
+ * 创建输入框字段
43
+ */
44
+ input: (title: string, required?: boolean, gridSpan?: number) => any;
45
+ /**
46
+ * 创建文本域字段
47
+ */
48
+ textarea: (title: string, rows?: number, gridSpan?: number) => any;
49
+ /**
50
+ * 创建数字输入框字段
51
+ */
52
+ number: (title: string, required?: boolean, gridSpan?: number) => any;
53
+ /**
54
+ * 创建选择框字段
55
+ */
56
+ select: (title: string, options: Array<{
57
+ label: string;
58
+ value: any;
59
+ }>, required?: boolean) => any;
60
+ /**
61
+ * 创建日期字段
62
+ */
63
+ date: (title: string, required?: boolean, gridSpan?: number) => any;
64
+ /**
65
+ * 创建日期时间字段
66
+ */
67
+ datetime: (title: string, required?: boolean, gridSpan?: number) => any;
68
+ };
@@ -0,0 +1,191 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ import { useMemo } from 'react';
8
+ /**
9
+ * 标准表单Schema Hook
10
+ *
11
+ * 提供便捷的Schema创建和管理功能
12
+ */
13
+ export var useStandardFormSchema = function useStandardFormSchema(formId, businessSchema, formConfig) {
14
+ return useMemo(function () {
15
+ var defaultFormConfig = {
16
+ labelCol: 6,
17
+ wrapperCol: 18,
18
+ labelWidth: "120px",
19
+ feedbackLayout: "none"
20
+ };
21
+ var finalFormConfig = _objectSpread(_objectSpread({}, defaultFormConfig), formConfig);
22
+ var schema = {
23
+ type: "object",
24
+ properties: businessSchema
25
+ };
26
+ return {
27
+ formId: formId,
28
+ form: finalFormConfig,
29
+ schema: schema
30
+ };
31
+ }, [formId, businessSchema, formConfig]);
32
+ };
33
+
34
+ /**
35
+ * 创建标准Grid Schema的工具函数
36
+ */
37
+ export var createGridSchema = function createGridSchema(properties) {
38
+ var maxColumns = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;
39
+ var strictAutoFit = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
40
+ return {
41
+ grid: {
42
+ type: "void",
43
+ "x-component": "FormGrid",
44
+ "x-component-props": {
45
+ maxColumns: maxColumns,
46
+ strictAutoFit: strictAutoFit
47
+ },
48
+ properties: properties
49
+ }
50
+ };
51
+ };
52
+
53
+ /**
54
+ * 创建表单字段的工具函数
55
+ */
56
+ export var createFormField = function createFormField(title) {
57
+ var component = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'Input';
58
+ var options = arguments.length > 2 ? arguments[2] : undefined;
59
+ var _ref = options || {},
60
+ _ref$type = _ref.type,
61
+ type = _ref$type === void 0 ? 'string' : _ref$type,
62
+ _ref$required = _ref.required,
63
+ required = _ref$required === void 0 ? false : _ref$required,
64
+ placeholder = _ref.placeholder,
65
+ maxLength = _ref.maxLength,
66
+ rows = _ref.rows,
67
+ _ref$gridSpan = _ref.gridSpan,
68
+ gridSpan = _ref$gridSpan === void 0 ? 1 : _ref$gridSpan,
69
+ _ref$componentProps = _ref.componentProps,
70
+ componentProps = _ref$componentProps === void 0 ? {} : _ref$componentProps,
71
+ _ref$decoratorProps = _ref.decoratorProps,
72
+ decoratorProps = _ref$decoratorProps === void 0 ? {} : _ref$decoratorProps;
73
+ var field = {
74
+ type: type,
75
+ title: title,
76
+ "x-decorator": "FormItem",
77
+ "x-component": component,
78
+ "x-component-props": _objectSpread({
79
+ placeholder: placeholder || "\u8BF7\u8F93\u5165".concat(title)
80
+ }, componentProps),
81
+ "x-decorator-props": _objectSpread({
82
+ gridSpan: gridSpan
83
+ }, decoratorProps)
84
+ };
85
+ if (required) {
86
+ field.required = true;
87
+ }
88
+ if (maxLength) {
89
+ field["x-component-props"].maxLength = maxLength;
90
+ }
91
+ if (rows && (component === 'Input.TextArea' || component === 'TextArea')) {
92
+ field["x-component-props"].rows = rows;
93
+ }
94
+ return field;
95
+ };
96
+
97
+ /**
98
+ * 创建选择字段的工具函数
99
+ */
100
+ export var createSelectField = function createSelectField(title, options, fieldOptions) {
101
+ var _ref2 = fieldOptions || {},
102
+ _ref2$required = _ref2.required,
103
+ required = _ref2$required === void 0 ? false : _ref2$required,
104
+ placeholder = _ref2.placeholder,
105
+ _ref2$gridSpan = _ref2.gridSpan,
106
+ gridSpan = _ref2$gridSpan === void 0 ? 1 : _ref2$gridSpan,
107
+ mode = _ref2.mode;
108
+ return createFormField(title, 'Select', {
109
+ required: required,
110
+ placeholder: placeholder || "\u8BF7\u9009\u62E9".concat(title),
111
+ gridSpan: gridSpan,
112
+ componentProps: {
113
+ options: options,
114
+ mode: mode
115
+ }
116
+ });
117
+ };
118
+
119
+ /**
120
+ * 快速创建常用字段的工具函数集合
121
+ */
122
+ export var FieldCreators = {
123
+ /**
124
+ * 创建输入框字段
125
+ */
126
+ input: function input(title) {
127
+ var required = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
128
+ var gridSpan = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
129
+ return createFormField(title, 'Input', {
130
+ required: required,
131
+ gridSpan: gridSpan
132
+ });
133
+ },
134
+ /**
135
+ * 创建文本域字段
136
+ */
137
+ textarea: function textarea(title) {
138
+ var rows = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 3;
139
+ var gridSpan = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 2;
140
+ return createFormField(title, 'Input.TextArea', {
141
+ rows: rows,
142
+ gridSpan: gridSpan
143
+ });
144
+ },
145
+ /**
146
+ * 创建数字输入框字段
147
+ */
148
+ number: function number(title) {
149
+ var required = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
150
+ var gridSpan = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
151
+ return createFormField(title, 'NumberPicker', {
152
+ type: 'number',
153
+ required: required,
154
+ gridSpan: gridSpan
155
+ });
156
+ },
157
+ /**
158
+ * 创建选择框字段
159
+ */
160
+ select: function select(title, options) {
161
+ var required = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
162
+ return createSelectField(title, options, {
163
+ required: required
164
+ });
165
+ },
166
+ /**
167
+ * 创建日期字段
168
+ */
169
+ date: function date(title) {
170
+ var required = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
171
+ var gridSpan = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
172
+ return createFormField(title, 'DatePicker', {
173
+ required: required,
174
+ gridSpan: gridSpan
175
+ });
176
+ },
177
+ /**
178
+ * 创建日期时间字段
179
+ */
180
+ datetime: function datetime(title) {
181
+ var required = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
182
+ var gridSpan = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
183
+ return createFormField(title, 'DatePicker', {
184
+ required: required,
185
+ gridSpan: gridSpan,
186
+ componentProps: {
187
+ showTime: true
188
+ }
189
+ });
190
+ }
191
+ };
@@ -0,0 +1,193 @@
1
+ import React from 'react';
2
+ import { StandardFormDialogProps, WithStandardFormConfig, ExternalSchemaConfig } from './types';
3
+ /**
4
+ * 标准表单配置接口 - 向后兼容
5
+ * @deprecated 请使用 WithStandardFormConfig 类型
6
+ */
7
+ export interface StandardFormConfig extends WithStandardFormConfig {
8
+ }
9
+ /**
10
+ * 重新导出类型以保持向后兼容性
11
+ */
12
+ export type { ExternalSchemaConfig, WithStandardFormConfig };
13
+ /**
14
+ * 创建带有标准表单的高阶组件
15
+ *
16
+ * 这个工厂函数创建一个标准化的表单对话框组件,包含:
17
+ * - 支持外部Schema文件导入或自动Schema构建
18
+ * - 标准的 API 调用逻辑
19
+ * - 统一的错误处理
20
+ * - 可配置的业务字段
21
+ *
22
+ * @param config 标准表单配置
23
+ * @returns 标准表单对话框组件
24
+ *
25
+ * @example
26
+ * // 使用businessFields(内部构建schema)
27
+ * const FormDialog = withStandardForm({
28
+ * formId: 'Common.Materials',
29
+ * businessFields: {
30
+ * code: FieldCreators.input('物料编码', true),
31
+ * name: FieldCreators.input('物料名称', true)
32
+ * },
33
+ * apiConfig: { get: GetAsync, create: CreateAsync }
34
+ * });
35
+ *
36
+ * @example
37
+ * // 使用外部schema文件
38
+ * import { form, schema } from './schema';
39
+ * const FormDialog = withStandardForm({
40
+ * formId: 'Common.Materials',
41
+ * externalSchema: { form, schema },
42
+ * apiConfig: { get: GetAsync, create: CreateAsync }
43
+ * });
44
+ */
45
+ export declare const withStandardForm: (config: WithStandardFormConfig) => React.FC<Partial<StandardFormDialogProps> & {
46
+ entityId?: string | undefined;
47
+ title?: string | undefined;
48
+ onAfterSubmit?: (() => void) | undefined;
49
+ children?: React.ReactNode;
50
+ buttonProps?: any;
51
+ }>;
52
+ /**
53
+ * 字段创建器工具函数集合
54
+ * 提供常用字段类型的快速创建方法
55
+ */
56
+ export declare const FieldCreators: {
57
+ /**
58
+ * 输入框字段
59
+ */
60
+ input: (title: string, required?: boolean, props?: any) => {
61
+ type: string;
62
+ title: string;
63
+ required: boolean;
64
+ 'x-component': string;
65
+ 'x-component-props': any;
66
+ };
67
+ /**
68
+ * 数字输入字段
69
+ */
70
+ number: (title: string, required?: boolean, props?: any) => {
71
+ type: string;
72
+ title: string;
73
+ required: boolean;
74
+ 'x-component': string;
75
+ 'x-component-props': any;
76
+ };
77
+ /**
78
+ * 文本域字段
79
+ */
80
+ textarea: (title: string, required?: boolean, props?: any) => {
81
+ type: string;
82
+ title: string;
83
+ required: boolean;
84
+ 'x-component': string;
85
+ 'x-component-props': any;
86
+ };
87
+ /**
88
+ * 日期字段
89
+ */
90
+ date: (title: string, required?: boolean, props?: any) => {
91
+ type: string;
92
+ title: string;
93
+ required: boolean;
94
+ 'x-component': string;
95
+ 'x-component-props': any;
96
+ };
97
+ /**
98
+ * 日期时间字段
99
+ */
100
+ datetime: (title: string, required?: boolean, props?: any) => {
101
+ type: string;
102
+ title: string;
103
+ required: boolean;
104
+ 'x-component': string;
105
+ 'x-component-props': any;
106
+ };
107
+ /**
108
+ * 开关字段
109
+ */
110
+ switch: (title: string, defaultValue?: boolean, props?: any) => {
111
+ type: string;
112
+ title: string;
113
+ default: boolean;
114
+ 'x-component': string;
115
+ 'x-component-props': any;
116
+ };
117
+ /**
118
+ * 选择字段
119
+ */
120
+ select: (title: string, required?: boolean, props?: any) => {
121
+ type: string;
122
+ title: string;
123
+ required: boolean;
124
+ 'x-component': string;
125
+ 'x-component-props': any;
126
+ };
127
+ /**
128
+ * 隐藏字段
129
+ */
130
+ hidden: (defaultValue?: any) => {
131
+ type: string;
132
+ default: any;
133
+ 'x-component': string;
134
+ 'x-display': string;
135
+ };
136
+ };
137
+ /**
138
+ * 创建选择字段
139
+ */
140
+ export declare const createSelectField: (title: string, options: {
141
+ [key: string]: any;
142
+ label: string;
143
+ value: any;
144
+ }[], config?: {
145
+ required?: boolean | undefined;
146
+ multiple?: boolean | undefined;
147
+ allowClear?: boolean | undefined;
148
+ showSearch?: boolean | undefined;
149
+ placeholder?: string | undefined;
150
+ }) => {
151
+ type: string;
152
+ title: string;
153
+ required: boolean;
154
+ enum: any[];
155
+ 'x-component': string;
156
+ 'x-component-props': {
157
+ placeholder: string;
158
+ style: {
159
+ width: string;
160
+ };
161
+ allowClear: boolean;
162
+ showSearch: boolean;
163
+ mode: string | undefined;
164
+ options: {
165
+ label: string;
166
+ value: any;
167
+ }[];
168
+ };
169
+ };
170
+ /**
171
+ * 创建级联选择字段
172
+ */
173
+ export declare const createCascaderField: (title: string, options: any[], config?: {
174
+ required?: boolean | undefined;
175
+ changeOnSelect?: boolean | undefined;
176
+ expandTrigger?: "click" | "hover" | undefined;
177
+ placeholder?: string | undefined;
178
+ }) => {
179
+ type: string;
180
+ title: string;
181
+ required: boolean;
182
+ 'x-component': string;
183
+ 'x-component-props': {
184
+ placeholder: string;
185
+ style: {
186
+ width: string;
187
+ };
188
+ options: any[];
189
+ changeOnSelect: boolean;
190
+ expandTrigger: "click" | "hover";
191
+ };
192
+ };
193
+ export default withStandardForm;