@plasmicpkgs/antd5 0.0.125 → 0.0.126

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 (70) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/antd.esm.js +339 -233
  3. package/dist/antd.esm.js.map +1 -1
  4. package/dist/index.js +339 -233
  5. package/dist/index.js.map +1 -1
  6. package/dist/registerForm.d.ts +18 -15
  7. package/dist/utils.d.ts +2 -1
  8. package/package.json +2 -2
  9. package/skinny/registerAvatar.cjs.js +1 -1
  10. package/skinny/registerAvatar.esm.js +1 -1
  11. package/skinny/registerButton.cjs.js +1 -1
  12. package/skinny/registerButton.esm.js +1 -1
  13. package/skinny/registerCheckbox.cjs.js +1 -1
  14. package/skinny/registerCheckbox.esm.js +1 -1
  15. package/skinny/registerCollapse.cjs.js +1 -1
  16. package/skinny/registerCollapse.esm.js +1 -1
  17. package/skinny/registerColorPicker.cjs.js +1 -1
  18. package/skinny/registerColorPicker.esm.js +1 -1
  19. package/skinny/registerConfigProvider.cjs.js +1 -1
  20. package/skinny/registerConfigProvider.esm.js +1 -1
  21. package/skinny/registerDatePicker.cjs.js +1 -1
  22. package/skinny/registerDatePicker.esm.js +1 -1
  23. package/skinny/registerDrawer.cjs.js +1 -1
  24. package/skinny/registerDrawer.esm.js +1 -1
  25. package/skinny/registerDropdown.cjs.js +1 -1
  26. package/skinny/registerDropdown.esm.js +1 -1
  27. package/skinny/registerForm.cjs.js +304 -230
  28. package/skinny/registerForm.cjs.js.map +1 -1
  29. package/skinny/registerForm.d.ts +18 -15
  30. package/skinny/registerForm.esm.js +304 -230
  31. package/skinny/registerForm.esm.js.map +1 -1
  32. package/skinny/registerInput.cjs.js +1 -1
  33. package/skinny/registerInput.esm.js +1 -1
  34. package/skinny/registerMenu.cjs.js +1 -1
  35. package/skinny/registerMenu.esm.js +1 -1
  36. package/skinny/registerModal.cjs.js +1 -1
  37. package/skinny/registerModal.esm.js +1 -1
  38. package/skinny/registerPopover.cjs.js +1 -1
  39. package/skinny/registerPopover.esm.js +1 -1
  40. package/skinny/registerRadio.cjs.js +1 -1
  41. package/skinny/registerRadio.esm.js +1 -1
  42. package/skinny/registerRate.cjs.js +1 -1
  43. package/skinny/registerRate.esm.js +1 -1
  44. package/skinny/{registerSelect-3273fe93.esm.js → registerSelect-d2c8e1c0.esm.js} +2 -2
  45. package/skinny/{registerSelect-3273fe93.esm.js.map → registerSelect-d2c8e1c0.esm.js.map} +1 -1
  46. package/skinny/{registerSelect-f0e24345.cjs.js → registerSelect-dfdd1699.cjs.js} +2 -2
  47. package/skinny/{registerSelect-f0e24345.cjs.js.map → registerSelect-dfdd1699.cjs.js.map} +1 -1
  48. package/skinny/registerSelect.cjs.js +2 -2
  49. package/skinny/registerSelect.esm.js +2 -2
  50. package/skinny/registerSteps.cjs.js +1 -1
  51. package/skinny/registerSteps.esm.js +1 -1
  52. package/skinny/registerSwitch.cjs.js +1 -1
  53. package/skinny/registerSwitch.esm.js +1 -1
  54. package/skinny/registerTable.cjs.js +1 -1
  55. package/skinny/registerTable.esm.js +1 -1
  56. package/skinny/registerTabs.cjs.js +1 -1
  57. package/skinny/registerTabs.esm.js +1 -1
  58. package/skinny/registerTooltip.cjs.js +1 -1
  59. package/skinny/registerTooltip.esm.js +1 -1
  60. package/skinny/registerTree.cjs.js +1 -1
  61. package/skinny/registerTree.esm.js +1 -1
  62. package/skinny/registerUpload.cjs.js +1 -1
  63. package/skinny/registerUpload.esm.js +1 -1
  64. package/skinny/{utils-c2d6f0e8.cjs.js → utils-174b9d45.cjs.js} +39 -6
  65. package/skinny/utils-174b9d45.cjs.js.map +1 -0
  66. package/skinny/{utils-040cbe4d.esm.js → utils-7d8f2418.esm.js} +39 -7
  67. package/skinny/utils-7d8f2418.esm.js.map +1 -0
  68. package/skinny/utils.d.ts +2 -1
  69. package/skinny/utils-040cbe4d.esm.js.map +0 -1
  70. package/skinny/utils-c2d6f0e8.cjs.js.map +0 -1
@@ -4,13 +4,13 @@ var host = require('@plasmicapp/host');
4
4
  var antd = require('antd');
5
5
  var equal = require('fast-deep-equal');
6
6
  var React = require('react');
7
- var registerSelect = require('./registerSelect-f0e24345.cjs.js');
7
+ var registerSelect = require('./registerSelect-dfdd1699.cjs.js');
8
8
  var registerButton = require('./registerButton.cjs.js');
9
9
  var registerCheckbox = require('./registerCheckbox.cjs.js');
10
10
  var registerInput = require('./registerInput.cjs.js');
11
11
  var registerRadio = require('./registerRadio.cjs.js');
12
12
  var registerSwitch = require('./registerSwitch.cjs.js');
13
- var utils = require('./utils-c2d6f0e8.cjs.js');
13
+ var utils = require('./utils-174b9d45.cjs.js');
14
14
  var dataSources = require('@plasmicapp/data-sources');
15
15
  var registerDatePicker = require('./registerDatePicker.cjs.js');
16
16
  require('classnames');
@@ -81,20 +81,22 @@ const InternalFormInstanceContext = React__default.default.createContext(void 0)
81
81
  const FormLayoutContext = React__default.default.createContext(void 0);
82
82
  const Internal = React__default.default.forwardRef(
83
83
  (props, ref) => {
84
- var _b, _c, _d, _e, _f;
84
+ var _b, _c, _d, _e;
85
85
  const [form] = antd.Form.useForm();
86
86
  const values = form.getFieldsValue(true);
87
87
  const lastValue = React__default.default.useRef(values);
88
88
  const _a = props, {
89
89
  extendedOnValuesChange,
90
90
  forceRemount,
91
- setRegisteredFields,
92
- registeredFields
91
+ formLayout,
92
+ internalFieldCtx,
93
+ setInternalFieldCtx
93
94
  } = _a, rest = __objRest(_a, [
94
95
  "extendedOnValuesChange",
95
96
  "forceRemount",
96
- "setRegisteredFields",
97
- "registeredFields"
97
+ "formLayout",
98
+ "internalFieldCtx",
99
+ "setInternalFieldCtx"
98
100
  ]);
99
101
  let childrenNode;
100
102
  if (props.mode !== "simplified") {
@@ -137,16 +139,6 @@ const Internal = React__default.default.forwardRef(
137
139
  React__default.default.useEffect(() => {
138
140
  fireOnValuesChange();
139
141
  }, []);
140
- const formLayout = React__default.default.useMemo(
141
- () => {
142
- var _a2;
143
- return {
144
- layout: props.layout,
145
- labelSpan: (_a2 = props.labelCol) == null ? void 0 : _a2.span
146
- };
147
- },
148
- [props.layout, (_c = props.labelCol) == null ? void 0 : _c.span]
149
- );
150
142
  React__default.default.useImperativeHandle(ref, () => ({
151
143
  formInstance: form,
152
144
  setFieldsValue: (newValues) => {
@@ -175,12 +167,28 @@ const Internal = React__default.default.forwardRef(
175
167
  extendedOnValuesChange == null ? void 0 : extendedOnValuesChange(form.getFieldsValue(true));
176
168
  }
177
169
  }));
178
- const registerField = React__default.default.useCallback((fieldEntity) => {
179
- setRegisteredFields((f) => [...f, fieldEntity]);
180
- return () => {
181
- setRegisteredFields((f) => f.filter((ent) => ent !== fieldEntity));
182
- };
183
- }, []);
170
+ const registerField = React__default.default.useCallback(
171
+ (fieldEntity) => {
172
+ setInternalFieldCtx((ctx) => ({
173
+ registeredFields: [...ctx.registeredFields, fieldEntity],
174
+ preservedRegisteredFields: [
175
+ ...ctx.preservedRegisteredFields,
176
+ fieldEntity
177
+ ]
178
+ }));
179
+ return () => {
180
+ setInternalFieldCtx((ctx) => ({
181
+ registeredFields: ctx.registeredFields.filter(
182
+ (ent) => ent !== fieldEntity
183
+ ),
184
+ preservedRegisteredFields: ctx.preservedRegisteredFields.filter(
185
+ (ent) => ent !== fieldEntity || fieldEntity.preserve
186
+ )
187
+ }));
188
+ };
189
+ },
190
+ [setInternalFieldCtx]
191
+ );
184
192
  return /* @__PURE__ */ React__default.default.createElement(
185
193
  InternalFormInstanceContext.Provider,
186
194
  {
@@ -189,8 +197,8 @@ const Internal = React__default.default.forwardRef(
189
197
  fireOnValuesChange,
190
198
  forceRemount,
191
199
  registerField,
192
- registeredFields,
193
- initialValues: (_d = props.initialValues) != null ? _d : {}
200
+ internalFieldCtx,
201
+ initialValues: (_c = props.initialValues) != null ? _c : {}
194
202
  }
195
203
  },
196
204
  /* @__PURE__ */ React__default.default.createElement(FormLayoutContext.Provider, { value: formLayout }, /* @__PURE__ */ React__default.default.createElement(
@@ -204,11 +212,19 @@ const Internal = React__default.default.forwardRef(
204
212
  },
205
213
  onFinish: () => {
206
214
  var _a2;
207
- (_a2 = props.onFinish) == null ? void 0 : _a2.call(props, form.getFieldsValue(true));
215
+ (_a2 = props.onFinish) == null ? void 0 : _a2.call(
216
+ props,
217
+ utils.pick(
218
+ form.getFieldsValue(true),
219
+ ...internalFieldCtx.preservedRegisteredFields.map(
220
+ (field) => field.fullPath
221
+ )
222
+ )
223
+ );
208
224
  },
209
225
  form,
210
- labelCol: ((_e = props.labelCol) == null ? void 0 : _e.horizontalOnly) && props.layout !== "horizontal" ? void 0 : props.labelCol,
211
- wrapperCol: ((_f = props.wrapperCol) == null ? void 0 : _f.horizontalOnly) && props.layout !== "horizontal" ? void 0 : props.wrapperCol
226
+ labelCol: ((_d = props.labelCol) == null ? void 0 : _d.horizontalOnly) && props.layout !== "horizontal" ? void 0 : props.labelCol,
227
+ wrapperCol: ((_e = props.wrapperCol) == null ? void 0 : _e.horizontalOnly) && props.layout !== "horizontal" ? void 0 : props.wrapperCol
212
228
  }),
213
229
  /* @__PURE__ */ React__default.default.createElement("style", null, `
214
230
  .ant-form-item-explain + div, .ant-form-item-margin-offset {
@@ -220,17 +236,16 @@ const Internal = React__default.default.forwardRef(
220
236
  );
221
237
  }
222
238
  );
223
- function useFormItemDefinitions(rawData, props, formRef, registeredFields) {
239
+ function useFormItemDefinitions(rawData, props, formRef, commonFormCtxData) {
224
240
  const { mode, dataFormItems, setControlContextData } = props;
225
241
  const formInstance = formRef == null ? void 0 : formRef.formInstance;
226
242
  return React__default.default.useMemo(() => {
227
243
  const data = rawData && dataSources.normalizeData(rawData);
228
244
  const schema = data && (data == null ? void 0 : data.schema);
229
245
  if (mode !== "simplified" || !rawData || rawData.isLoading || rawData.error || !data || !schema || !data.data) {
230
- setControlContextData == null ? void 0 : setControlContextData({
231
- formInstance,
232
- registeredFields
233
- });
246
+ setControlContextData == null ? void 0 : setControlContextData(__spreadValues({
247
+ formInstance
248
+ }, commonFormCtxData));
234
249
  return void 0;
235
250
  }
236
251
  const row = data.data.length > 0 ? data.data[0] : void 0;
@@ -252,15 +267,21 @@ function useFormItemDefinitions(rawData, props, formRef, registeredFields) {
252
267
  });
253
268
  }
254
269
  );
255
- setControlContextData == null ? void 0 : setControlContextData({
270
+ setControlContextData == null ? void 0 : setControlContextData(__spreadValues({
256
271
  schema: data.schema,
257
272
  minimalFullLengthFields,
258
273
  mergedFields,
259
- formInstance,
260
- registeredFields
261
- });
274
+ formInstance
275
+ }, commonFormCtxData));
262
276
  return mergedFields;
263
- }, [mode, setControlContextData, dataFormItems, rawData, formInstance]);
277
+ }, [
278
+ mode,
279
+ setControlContextData,
280
+ dataFormItems,
281
+ rawData,
282
+ formInstance,
283
+ commonFormCtxData
284
+ ]);
264
285
  }
265
286
  const useRawData = (props) => {
266
287
  const rawData = dataSources.usePlasmicDataOp(props.data);
@@ -268,6 +289,7 @@ const useRawData = (props) => {
268
289
  };
269
290
  const FormWrapper = React__default.default.forwardRef(
270
291
  (props, ref) => {
292
+ var _a;
271
293
  const [remountKey, setRemountKey] = React__default.default.useState(0);
272
294
  const forceRemount = React__default.default.useCallback(
273
295
  () => setRemountKey((k) => k + 1),
@@ -280,17 +302,37 @@ const FormWrapper = React__default.default.forwardRef(
280
302
  forceRemount();
281
303
  }
282
304
  }, [previousInitialValues, props.initialValues]);
283
- const [registeredFields, setRegisteredFields] = React__default.default.useState([]);
305
+ const [internalFieldCtx, setInternalFieldCtx] = React__default.default.useState({
306
+ registeredFields: [],
307
+ preservedRegisteredFields: []
308
+ });
284
309
  React__default.default.useImperativeHandle(
285
310
  ref,
286
311
  () => wrapperRef.current ? __spreadValues({}, wrapperRef.current) : {}
287
312
  );
313
+ const formLayout = React__default.default.useMemo(
314
+ () => {
315
+ var _a2;
316
+ return {
317
+ layout: props.layout,
318
+ labelSpan: (_a2 = props.labelCol) == null ? void 0 : _a2.span
319
+ };
320
+ },
321
+ [props.layout, (_a = props.labelCol) == null ? void 0 : _a.span]
322
+ );
323
+ const commonFormCtxData = React__default.default.useMemo(
324
+ () => ({
325
+ layout: formLayout,
326
+ internalFieldCtx
327
+ }),
328
+ [formLayout, internalFieldCtx]
329
+ );
288
330
  const rawData = useRawData(props);
289
331
  const formItemDefinitions = useFormItemDefinitions(
290
332
  rawData,
291
333
  props,
292
334
  wrapperRef.current,
293
- registeredFields
335
+ commonFormCtxData
294
336
  );
295
337
  React__default.default.useEffect(() => {
296
338
  if (rawData && !rawData.isLoading) {
@@ -303,7 +345,7 @@ const FormWrapper = React__default.default.forwardRef(
303
345
  forceRemount();
304
346
  }
305
347
  }, [props.data]);
306
- const _a = props, { dataFormItems, formItems, data } = _a, rest = __objRest(_a, ["dataFormItems", "formItems", "data"]);
348
+ const _b = props, { dataFormItems, formItems, data } = _b, rest = __objRest(_b, ["dataFormItems", "formItems", "data"]);
307
349
  const actualFormItems = props.mode === "simplified" && formItemDefinitions ? formItemDefinitions : data ? dataFormItems : formItems;
308
350
  const previousFormItems = React__default.default.useRef([]);
309
351
  React__default.default.useEffect(() => {
@@ -322,8 +364,9 @@ const FormWrapper = React__default.default.forwardRef(
322
364
  key: remountKey
323
365
  }, rest), {
324
366
  forceRemount,
325
- setRegisteredFields,
326
- registeredFields,
367
+ formLayout,
368
+ internalFieldCtx,
369
+ setInternalFieldCtx,
327
370
  formItems: rawData && rawData.isLoading ? previousFormItems.current : actualFormItems,
328
371
  ref: wrapperRef,
329
372
  style: isSchemaForm && isLoadingData ? {
@@ -796,7 +839,7 @@ function useFormInstanceMaybe() {
796
839
  return antd.Form.useFormInstance();
797
840
  }
798
841
  function FormItemWrapper(props) {
799
- var _b;
842
+ var _b, _c, _d;
800
843
  const _a = props, {
801
844
  rules: plasmicRules,
802
845
  description,
@@ -820,6 +863,7 @@ function FormItemWrapper(props) {
820
863
  const fullFormItemName = useFormItemFullName(name);
821
864
  const pathCtx = React__default.default.useContext(PathContext);
822
865
  const fieldEntity = React__default.default.useRef({
866
+ preserve: (_b = props.preserve) != null ? _b : true,
823
867
  fullPath: pathCtx.fullPath,
824
868
  name
825
869
  }).current;
@@ -830,30 +874,26 @@ function FormItemWrapper(props) {
830
874
  ) : void 0;
831
875
  const layoutContext = React__default.default.useContext(FormLayoutContext);
832
876
  const inCanvas = !!host.usePlasmicCanvasContext();
877
+ const {
878
+ fireOnValuesChange,
879
+ forceRemount,
880
+ registerField,
881
+ initialValues,
882
+ internalFieldCtx
883
+ } = (_c = React__default.default.useContext(InternalFormInstanceContext)) != null ? _c : {};
833
884
  if (inCanvas) {
834
885
  const form = useFormInstanceMaybe();
835
886
  const prevPropValues = React__default.default.useRef({
836
887
  initialValue: props.initialValue,
837
888
  name: props.name
838
889
  });
839
- const fullPath = React__default.default.useContext(PathContext).fullPath;
840
- const internalFormCtx = React__default.default.useContext(InternalFormInstanceContext);
841
- const { fireOnValuesChange, forceRemount, registerField, initialValues } = internalFormCtx != null ? internalFormCtx : {};
842
- (_b = props.setControlContextData) == null ? void 0 : _b.call(props, {
843
- internalFormCtx,
890
+ (_d = props.setControlContextData) == null ? void 0 : _d.call(props, {
891
+ internalFieldCtx,
844
892
  formInstance: form,
845
- parentFormItemPath: fullPath
893
+ parentFormItemPath: pathCtx.fullPath,
894
+ layout: layoutContext
846
895
  });
847
896
  React__default.default.useEffect(() => {
848
- const unregister = registerField == null ? void 0 : registerField(fieldEntity);
849
- return () => unregister == null ? void 0 : unregister();
850
- }, []);
851
- React__default.default.useEffect(() => {
852
- fieldEntity.fullPath = [
853
- ...pathCtx.fullPath,
854
- ...props.name != null ? [props.name] : []
855
- ];
856
- fieldEntity.name = props.name;
857
897
  if (prevPropValues.current.name !== props.name) {
858
898
  forceRemount == null ? void 0 : forceRemount();
859
899
  }
@@ -863,8 +903,27 @@ function FormItemWrapper(props) {
863
903
  form == null ? void 0 : form.setFieldValue(fullFormItemName, props.initialValue);
864
904
  prevPropValues.current.initialValue = props.initialValue;
865
905
  fireOnValuesChange == null ? void 0 : fireOnValuesChange();
866
- }, [form, props.initialValue, fullFormItemName]);
906
+ }, [
907
+ form,
908
+ props.initialValue,
909
+ pathCtx.fullPath,
910
+ props.name,
911
+ props.preserve
912
+ ]);
867
913
  }
914
+ React__default.default.useEffect(() => {
915
+ var _a2;
916
+ fieldEntity.fullPath = [
917
+ ...pathCtx.fullPath,
918
+ ...props.name != null ? [props.name] : []
919
+ ];
920
+ fieldEntity.name = props.name;
921
+ fieldEntity.preserve = (_a2 = props.preserve) != null ? _a2 : true;
922
+ }, [pathCtx.fullPath, props.name, props.preserve]);
923
+ React__default.default.useEffect(() => {
924
+ const unregister = registerField == null ? void 0 : registerField(fieldEntity);
925
+ return () => unregister == null ? void 0 : unregister();
926
+ }, []);
868
927
  return /* @__PURE__ */ React__default.default.createElement(
869
928
  FormItem,
870
929
  __spreadProps(__spreadValues({}, rest), {
@@ -989,185 +1048,200 @@ const mapPlumeTypeToInputType = /* @__PURE__ */ new Map([
989
1048
  ["checkbox", "Checkbox" /* Checkbox */],
990
1049
  ["switch", "Checkbox" /* Checkbox */]
991
1050
  ]);
992
- const commonFormItemProps = (usage) => ({
993
- name: {
994
- type: "string",
995
- required: true,
996
- validator: (value, _props, ctx) => {
997
- var _a, _b, _c;
998
- const currFullPath = [...(_a = ctx == null ? void 0 : ctx.parentFormItemPath) != null ? _a : [], value];
999
- const nameCounter = ((_c = (_b = ctx == null ? void 0 : ctx.internalFormCtx) == null ? void 0 : _b.registeredFields) != null ? _c : []).filter(
1000
- (formItem) => utils.arrayEq(formItem.fullPath, currFullPath)
1001
- ).length;
1002
- return nameCounter === 1 ? true : `Repeated form item name: ${currFullPath.join(" \u2192 ")}`;
1051
+ function commonFormItemProps(usage) {
1052
+ const getFormItemProps = (ps, _ctx, { item }) => {
1053
+ if (usage === "simplified-form-item") {
1054
+ return item;
1055
+ } else {
1056
+ return ps;
1057
+ }
1058
+ };
1059
+ return {
1060
+ name: {
1061
+ type: "string",
1062
+ required: true,
1063
+ validator: (value, _ps, ctx) => {
1064
+ var _a, _b, _c;
1065
+ let currFullPath = [];
1066
+ if (usage === "simplified-form-item") {
1067
+ currFullPath = [value];
1068
+ } else {
1069
+ const formItemCtx = ctx;
1070
+ currFullPath = [...(_a = formItemCtx == null ? void 0 : formItemCtx.parentFormItemPath) != null ? _a : [], value];
1071
+ }
1072
+ const nameCounter = ((_c = (_b = ctx == null ? void 0 : ctx.internalFieldCtx) == null ? void 0 : _b.registeredFields) != null ? _c : []).filter((formItem) => utils.arrayEq(formItem.fullPath, currFullPath)).length;
1073
+ return nameCounter === 1 ? true : `Repeated form item name: ${currFullPath.join(" \u2192 ")}`;
1074
+ },
1075
+ defaultValueHint: getDefaultValueHint("name")
1003
1076
  },
1004
- defaultValueHint: getDefaultValueHint("name")
1005
- },
1006
- initialValue: {
1007
- type: "dynamic",
1008
- control: (ps, ctx, {
1009
- item,
1010
- path
1011
- }) => {
1012
- var _a, _b, _c, _d;
1013
- let inputType = "Unkown" /* Unknown */;
1014
- if (usage === "simplified-form-item") {
1015
- inputType = item.inputType;
1016
- if (!ps.data) {
1077
+ initialValue: {
1078
+ type: "dynamic",
1079
+ control: (ps, ctx, {
1080
+ item,
1081
+ path
1082
+ }) => {
1083
+ var _a, _b, _c, _d;
1084
+ let inputType = "Unkown" /* Unknown */;
1085
+ if (usage === "simplified-form-item") {
1017
1086
  inputType = item.inputType;
1018
- } else if (path != null && typeof path[1] === "number") {
1019
- inputType = (_b = (_a = ctx == null ? void 0 : ctx.mergedFields) == null ? void 0 : _a[path[1]].inputType) != null ? _b : "Unkown" /* Unknown */;
1020
- }
1021
- } else {
1022
- if (!React__default.default.isValidElement(ps.children) || typeof ps.children.type === "string") {
1023
- inputType = "Unkown" /* Unknown */;
1087
+ if (!ps.data) {
1088
+ inputType = item.inputType;
1089
+ } else if (path != null && typeof path[1] === "number") {
1090
+ inputType = (_b = (_a = ctx == null ? void 0 : ctx.mergedFields) == null ? void 0 : _a[path[1]].inputType) != null ? _b : "Unkown" /* Unknown */;
1091
+ }
1024
1092
  } else {
1025
- if (mapAntdComponentToInputType.has(ps.children.type)) {
1026
- inputType = (_c = mapAntdComponentToInputType.get(ps.children.type)) != null ? _c : "Unkown" /* Unknown */;
1027
- } else if ("__plumeType" in ps.children.type) {
1028
- inputType = (_d = mapPlumeTypeToInputType.get(
1029
- ps.children.type.__plumeType
1030
- )) != null ? _d : "Unkown" /* Unknown */;
1093
+ if (!React__default.default.isValidElement(ps.children) || typeof ps.children.type === "string") {
1094
+ inputType = "Unkown" /* Unknown */;
1095
+ } else {
1096
+ if (mapAntdComponentToInputType.has(ps.children.type)) {
1097
+ inputType = (_c = mapAntdComponentToInputType.get(ps.children.type)) != null ? _c : "Unkown" /* Unknown */;
1098
+ } else if ("__plumeType" in ps.children.type) {
1099
+ inputType = (_d = mapPlumeTypeToInputType.get(
1100
+ ps.children.type.__plumeType
1101
+ )) != null ? _d : "Unkown" /* Unknown */;
1102
+ }
1031
1103
  }
1032
1104
  }
1105
+ if ([
1106
+ "Text" /* Text */,
1107
+ "Text Area" /* TextArea */,
1108
+ "Password" /* Password */,
1109
+ "Select" /* Select */,
1110
+ "Radio Group" /* RadioGroup */
1111
+ ].includes(inputType)) {
1112
+ return {
1113
+ type: "string",
1114
+ defaultValueHint: getDefaultValueHint("initialValue")
1115
+ };
1116
+ } else if ("Number" /* Number */ === inputType) {
1117
+ return {
1118
+ type: "number",
1119
+ defaultValueHint: getDefaultValueHint("initialValue")
1120
+ };
1121
+ } else if ("Checkbox" /* Checkbox */ === inputType) {
1122
+ return {
1123
+ type: "boolean",
1124
+ defaultValueHint: getDefaultValueHint("initialValue")
1125
+ };
1126
+ } else if ("DatePicker" /* DatePicker */ === inputType) {
1127
+ return {
1128
+ type: "dateString",
1129
+ defaultValueHint: getDefaultValueHint("initialValue")
1130
+ };
1131
+ } else {
1132
+ return {
1133
+ type: "exprEditor",
1134
+ defaultValueHint: getDefaultValueHint("initialValue")
1135
+ };
1136
+ }
1033
1137
  }
1034
- if ([
1035
- "Text" /* Text */,
1036
- "Text Area" /* TextArea */,
1037
- "Password" /* Password */,
1038
- "Select" /* Select */,
1039
- "Radio Group" /* RadioGroup */
1040
- ].includes(inputType)) {
1041
- return {
1042
- type: "string",
1043
- defaultValueHint: getDefaultValueHint("initialValue")
1044
- };
1045
- } else if ("Number" /* Number */ === inputType) {
1046
- return {
1047
- type: "number",
1048
- defaultValueHint: getDefaultValueHint("initialValue")
1049
- };
1050
- } else if ("Checkbox" /* Checkbox */ === inputType) {
1051
- return {
1052
- type: "boolean",
1053
- defaultValueHint: getDefaultValueHint("initialValue")
1054
- };
1055
- } else if ("DatePicker" /* DatePicker */ === inputType) {
1056
- return {
1057
- type: "dateString",
1058
- defaultValueHint: getDefaultValueHint("initialValue")
1059
- };
1060
- } else {
1061
- return {
1062
- type: "exprEditor",
1063
- defaultValueHint: getDefaultValueHint("initialValue")
1064
- };
1138
+ },
1139
+ rules: {
1140
+ displayName: "Validation rules",
1141
+ type: "formValidationRules"
1142
+ },
1143
+ valuePropName: {
1144
+ type: "string",
1145
+ advanced: true,
1146
+ defaultValueHint: "value",
1147
+ description: "The prop name for specifying the value of the form control component"
1148
+ },
1149
+ trigger: {
1150
+ type: "string",
1151
+ displayName: "Trigger prop name",
1152
+ advanced: true,
1153
+ defaultValueHint: "onChange",
1154
+ description: "The prop name of event handler that is called when value is changed"
1155
+ },
1156
+ noLabel: {
1157
+ type: "boolean",
1158
+ advanced: true
1159
+ },
1160
+ alignLabellessWithControls: {
1161
+ type: "boolean",
1162
+ displayName: "Align with controls?",
1163
+ description: "Aligns the content with form controls in the grid",
1164
+ hidden: (ps, ctx, extras) => {
1165
+ var _a;
1166
+ const formItem = getFormItemProps(ps, ctx, extras);
1167
+ return !(formItem == null ? void 0 : formItem.noLabel) || ((_a = ctx == null ? void 0 : ctx.layout) == null ? void 0 : _a.layout) !== "horizontal";
1168
+ },
1169
+ defaultValueHint: true
1170
+ },
1171
+ colon: {
1172
+ type: "boolean",
1173
+ defaultValueHint: true,
1174
+ advanced: true,
1175
+ hidden: () => true
1176
+ },
1177
+ labelAlign: {
1178
+ type: "choice",
1179
+ options: ["left", "right"],
1180
+ advanced: true,
1181
+ hidden: (ps, ctx, extras) => {
1182
+ var _a;
1183
+ const formItem = getFormItemProps(ps, ctx, extras);
1184
+ return !!(formItem == null ? void 0 : formItem.noLabel) || ((_a = ctx == null ? void 0 : ctx.layout) == null ? void 0 : _a.layout) !== "horizontal";
1065
1185
  }
1066
- }
1067
- },
1068
- rules: {
1069
- displayName: "Validation rules",
1070
- type: "formValidationRules"
1071
- },
1072
- valuePropName: {
1073
- type: "string",
1074
- advanced: true,
1075
- defaultValueHint: "value",
1076
- description: "The prop name for specifying the value of the form control component"
1077
- },
1078
- trigger: {
1079
- type: "string",
1080
- displayName: "Trigger prop name",
1081
- advanced: true,
1082
- defaultValueHint: "onChange",
1083
- description: "The prop name of event handler that is called when value is changed"
1084
- },
1085
- noLabel: {
1086
- type: "boolean",
1087
- advanced: true
1088
- },
1089
- alignLabellessWithControls: {
1090
- type: "boolean",
1091
- displayName: "Align with controls?",
1092
- description: "Aligns the content with form controls in the grid",
1093
- hidden: (ps, ctx) => {
1094
- var _a;
1095
- return !ps.noLabel || ((_a = ctx == null ? void 0 : ctx.internalFormCtx) == null ? void 0 : _a.layout.layout) !== "horizontal";
1096
1186
  },
1097
- defaultValueHint: true
1098
- },
1099
- colon: {
1100
- type: "boolean",
1101
- defaultValueHint: true,
1102
- advanced: true,
1103
- hidden: () => true
1104
- },
1105
- labelAlign: {
1106
- type: "choice",
1107
- options: ["left", "right"],
1108
- advanced: true,
1109
- hidden: (ps, ctx) => {
1110
- var _a;
1111
- return !!ps.noLabel || ((_a = ctx == null ? void 0 : ctx.internalFormCtx) == null ? void 0 : _a.layout.layout) !== "horizontal";
1112
- }
1113
- },
1114
- hidden: {
1115
- type: "boolean",
1116
- advanced: true,
1117
- defaultValueHint: getDefaultValueHint("hidden")
1118
- },
1119
- validateTrigger: {
1120
- type: "choice",
1121
- options: ["onSubmit", "onChange", "onBlur"],
1122
- multiSelect: true,
1123
- advanced: true
1124
- },
1125
- shouldUpdate: {
1126
- type: "boolean",
1127
- advanced: true,
1128
- displayName: "Always re-render",
1129
- description: "Form fields normally only re-render when the corresponding form value changes, for performance. This forces it to always re-render."
1130
- },
1131
- dependencies: {
1132
- type: "array",
1133
- advanced: true,
1134
- displayName: "Dependencies",
1135
- description: "Form fields can depend on other form fields. This forces it to re-evaluate the validation rules when the other form fields changes."
1136
- },
1137
- hideValidationMessage: {
1138
- type: "boolean",
1139
- displayName: "Hide validation message?",
1140
- description: "If true, will hide the validation error message",
1141
- defaultValueHint: false,
1142
- advanced: true
1143
- },
1144
- customizeProps: {
1145
- type: "function",
1146
- description: "Customize the props passed into the wrapped field component. Takes the current status ('success', 'warning', 'error', or 'validating').)",
1147
- argNames: ["fieldData"],
1148
- argValues: (_ps, ctx) => {
1149
- var _a;
1150
- return [
1151
- {
1152
- status: (_a = ctx == null ? void 0 : ctx.status) == null ? void 0 : _a.status
1153
- }
1154
- ];
1187
+ hidden: {
1188
+ type: "boolean",
1189
+ advanced: true,
1190
+ defaultValueHint: getDefaultValueHint("hidden")
1155
1191
  },
1156
- advanced: true
1157
- },
1158
- noStyle: {
1159
- type: "boolean",
1160
- displayName: "Field control only",
1161
- description: "Don't render anything but the field control - so no label, help text, validation error, etc.",
1162
- advanced: true
1163
- },
1164
- preserve: {
1165
- type: "boolean",
1166
- advanced: true,
1167
- defaultValueHint: true,
1168
- description: "Keep field value even when field removed."
1169
- }
1170
- });
1192
+ validateTrigger: {
1193
+ type: "choice",
1194
+ options: ["onSubmit", "onChange", "onBlur"],
1195
+ multiSelect: true,
1196
+ advanced: true
1197
+ },
1198
+ shouldUpdate: {
1199
+ type: "boolean",
1200
+ advanced: true,
1201
+ displayName: "Always re-render",
1202
+ description: "Form fields normally only re-render when the corresponding form value changes, for performance. This forces it to always re-render."
1203
+ },
1204
+ dependencies: {
1205
+ type: "array",
1206
+ advanced: true,
1207
+ displayName: "Dependencies",
1208
+ description: "Form fields can depend on other form fields. This forces it to re-evaluate the validation rules when the other form fields changes."
1209
+ },
1210
+ hideValidationMessage: {
1211
+ type: "boolean",
1212
+ displayName: "Hide validation message?",
1213
+ description: "If true, will hide the validation error message",
1214
+ defaultValueHint: false,
1215
+ advanced: true
1216
+ },
1217
+ customizeProps: {
1218
+ type: "function",
1219
+ description: "Customize the props passed into the wrapped field component. Takes the current status ('success', 'warning', 'error', or 'validating').)",
1220
+ argNames: ["fieldData"],
1221
+ argValues: (_ps, ctx) => {
1222
+ var _a;
1223
+ return [
1224
+ {
1225
+ status: (_a = ctx == null ? void 0 : ctx.status) == null ? void 0 : _a.status
1226
+ }
1227
+ ];
1228
+ },
1229
+ advanced: true
1230
+ },
1231
+ noStyle: {
1232
+ type: "boolean",
1233
+ displayName: "Field control only",
1234
+ description: "Don't render anything but the field control - so no label, help text, validation error, etc.",
1235
+ advanced: true
1236
+ },
1237
+ preserve: {
1238
+ type: "boolean",
1239
+ advanced: true,
1240
+ defaultValueHint: true,
1241
+ description: "Keep field value even when field removed."
1242
+ }
1243
+ };
1244
+ }
1171
1245
  const commonSimplifiedFormArrayItemType = (propName) => ({
1172
1246
  type: "object",
1173
1247
  fields: __spreadValues({