amis 1.5.3 → 1.5.6-beta.4

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 (179) hide show
  1. package/README.md +5 -0
  2. package/lib/Root.js +1 -1
  3. package/lib/Root.js.map +2 -2
  4. package/lib/RootRenderer.d.ts +1 -1
  5. package/lib/RootRenderer.js +4 -3
  6. package/lib/RootRenderer.js.map +2 -2
  7. package/lib/SchemaRenderer.js +4 -4
  8. package/lib/SchemaRenderer.js.map +2 -2
  9. package/lib/components/Card.d.ts +96 -0
  10. package/lib/components/Card.js +85 -0
  11. package/lib/components/Card.js.map +13 -0
  12. package/lib/components/Collapse.js +4 -6
  13. package/lib/components/Collapse.js.map +2 -2
  14. package/lib/components/CollapseGroup.d.ts +20 -20
  15. package/lib/components/CollapseGroup.js +5 -3
  16. package/lib/components/CollapseGroup.js.map +2 -2
  17. package/lib/components/ColorPicker.d.ts +84 -84
  18. package/lib/components/DatePicker.d.ts +85 -84
  19. package/lib/components/DatePicker.js.map +2 -2
  20. package/lib/components/DateRangePicker.d.ts +84 -84
  21. package/lib/components/LocationPicker.d.ts +84 -84
  22. package/lib/components/MonthRangePicker.d.ts +84 -84
  23. package/lib/components/Picker.d.ts +503 -0
  24. package/lib/components/Picker.js +65 -0
  25. package/lib/components/Picker.js.map +13 -0
  26. package/lib/components/PickerColumn.d.ts +29 -459
  27. package/lib/components/PickerColumn.js +35 -44
  28. package/lib/components/PickerColumn.js.map +2 -2
  29. package/lib/components/Progress.js +1 -1
  30. package/lib/components/Progress.js.map +2 -2
  31. package/lib/components/Select.d.ts +238 -238
  32. package/lib/components/Select.js +9 -2
  33. package/lib/components/Select.js.map +2 -2
  34. package/lib/components/Selection.js +1 -4
  35. package/lib/components/Selection.js.map +2 -2
  36. package/lib/components/Switch.d.ts +6 -6
  37. package/lib/components/Switch.js.map +2 -2
  38. package/lib/components/Tabs.d.ts +20 -20
  39. package/lib/components/calendar/Calendar.js +15 -0
  40. package/lib/components/calendar/Calendar.js.map +2 -2
  41. package/lib/components/calendar/DaysView.js +4 -4
  42. package/lib/components/calendar/DaysView.js.map +2 -2
  43. package/lib/components/calendar/TimeView.d.ts +10 -0
  44. package/lib/components/calendar/TimeView.js +55 -2
  45. package/lib/components/calendar/TimeView.js.map +2 -2
  46. package/lib/components/calendar/YearsView.d.ts +9 -0
  47. package/lib/components/calendar/YearsView.js +19 -0
  48. package/lib/components/calendar/YearsView.js.map +2 -2
  49. package/lib/components/index.d.ts +2 -1
  50. package/lib/components/index.js +4 -2
  51. package/lib/components/index.js.map +2 -2
  52. package/lib/index.js +1 -1
  53. package/lib/renderers/CRUD.d.ts +1 -1
  54. package/lib/renderers/CRUD.js +4 -3
  55. package/lib/renderers/CRUD.js.map +2 -2
  56. package/lib/renderers/Card.d.ts +81 -13
  57. package/lib/renderers/Card.js +178 -81
  58. package/lib/renderers/Card.js.map +2 -2
  59. package/lib/renderers/Collapse.js +8 -2
  60. package/lib/renderers/Collapse.js.map +2 -2
  61. package/lib/renderers/CollapseGroup.js.map +2 -2
  62. package/lib/renderers/Dialog.d.ts +2 -2
  63. package/lib/renderers/Dialog.js +7 -7
  64. package/lib/renderers/Dialog.js.map +2 -2
  65. package/lib/renderers/Drawer.js +2 -2
  66. package/lib/renderers/Drawer.js.map +2 -2
  67. package/lib/renderers/Form/DiffEditor.d.ts +145 -37
  68. package/lib/renderers/Form/Editor.d.ts +144 -36
  69. package/lib/renderers/Form/Formula.js +5 -5
  70. package/lib/renderers/Form/Formula.js.map +2 -2
  71. package/lib/renderers/Form/InputCity.d.ts +84 -84
  72. package/lib/renderers/Form/InputColor.d.ts +84 -84
  73. package/lib/renderers/Form/InputFile.js +3 -3
  74. package/lib/renderers/Form/InputFile.js.map +2 -2
  75. package/lib/renderers/Form/InputImage.js +1 -1
  76. package/lib/renderers/Form/InputImage.js.map +2 -2
  77. package/lib/renderers/Form/Item.d.ts +1 -1
  78. package/lib/renderers/Form/Item.js +4 -3
  79. package/lib/renderers/Form/Item.js.map +2 -2
  80. package/lib/renderers/Form/index.d.ts +1 -1
  81. package/lib/renderers/Form/index.js +13 -2
  82. package/lib/renderers/Form/index.js.map +2 -2
  83. package/lib/renderers/Form/wrapControl.js +3 -2
  84. package/lib/renderers/Form/wrapControl.js.map +2 -2
  85. package/lib/renderers/Page.d.ts +3 -3
  86. package/lib/renderers/Page.js +4 -3
  87. package/lib/renderers/Page.js.map +2 -2
  88. package/lib/renderers/Wizard.d.ts +1 -1
  89. package/lib/renderers/Wizard.js +93 -36
  90. package/lib/renderers/Wizard.js.map +2 -2
  91. package/lib/store/combo.d.ts +160 -40
  92. package/lib/store/form.d.ts +64 -16
  93. package/lib/store/formItem.d.ts +4 -2
  94. package/lib/store/formItem.js +22 -7
  95. package/lib/store/formItem.js.map +2 -2
  96. package/lib/store/table.d.ts +128 -32
  97. package/lib/themes/ang-ie11.css +177 -30
  98. package/lib/themes/ang.css +177 -30
  99. package/lib/themes/ang.css.map +1 -1
  100. package/lib/themes/antd-ie11.css +177 -30
  101. package/lib/themes/antd.css +177 -30
  102. package/lib/themes/antd.css.map +1 -1
  103. package/lib/themes/cxd-ie11.css +177 -30
  104. package/lib/themes/cxd.css +177 -30
  105. package/lib/themes/cxd.css.map +1 -1
  106. package/lib/themes/dark-ie11.css +177 -30
  107. package/lib/themes/dark.css +177 -30
  108. package/lib/themes/dark.css.map +1 -1
  109. package/lib/themes/default.css +177 -30
  110. package/lib/themes/default.css.map +1 -1
  111. package/lib/utils/helper.d.ts +7 -0
  112. package/lib/utils/helper.js +34 -7
  113. package/lib/utils/helper.js.map +2 -2
  114. package/package.json +2 -2
  115. package/schema.json +157 -13
  116. package/scss/_properties.scss +13 -2
  117. package/scss/components/_card.scss +155 -15
  118. package/scss/components/_nav.scss +1 -1
  119. package/scss/components/_picker-columns.scss +20 -14
  120. package/scss/components/form/_file.scss +2 -2
  121. package/scss/components/form/_selection.scss +4 -0
  122. package/scss/components/form/_switch.scss +6 -0
  123. package/sdk/ang-ie11.css +214 -40
  124. package/sdk/ang.css +216 -32
  125. package/sdk/antd-ie11.css +214 -40
  126. package/sdk/antd.css +216 -32
  127. package/sdk/charts.js +17 -17
  128. package/sdk/color-picker.js +65 -65
  129. package/sdk/cropperjs.js +3 -3
  130. package/sdk/cxd-ie11.css +206 -32
  131. package/sdk/cxd.css +216 -32
  132. package/sdk/dark-ie11.css +214 -40
  133. package/sdk/dark.css +216 -32
  134. package/sdk/exceljs.js +1 -1
  135. package/sdk/markdown.js +69 -69
  136. package/sdk/papaparse.js +1 -1
  137. package/sdk/renderers/Form/CityDB.js +1 -1
  138. package/sdk/rest.js +18 -18
  139. package/sdk/rich-text.js +62 -62
  140. package/sdk/sdk-ie11.css +206 -32
  141. package/sdk/sdk.css +216 -32
  142. package/sdk/sdk.js +1302 -1208
  143. package/sdk/thirds/hls.js/hls.js +18 -18
  144. package/sdk/thirds/mpegts.js/mpegts.js +2 -2
  145. package/sdk/tinymce.js +57 -57
  146. package/src/Root.tsx +1 -0
  147. package/src/RootRenderer.tsx +3 -3
  148. package/src/SchemaRenderer.tsx +4 -0
  149. package/src/components/Card.tsx +203 -0
  150. package/src/components/Collapse.tsx +19 -12
  151. package/src/components/CollapseGroup.tsx +9 -11
  152. package/src/components/DatePicker.tsx +3 -0
  153. package/src/components/Picker.tsx +145 -0
  154. package/src/components/PickerColumn.tsx +58 -95
  155. package/src/components/Progress.tsx +1 -1
  156. package/src/components/Select.tsx +17 -12
  157. package/src/components/Selection.tsx +1 -4
  158. package/src/components/Switch.tsx +7 -7
  159. package/src/components/calendar/Calendar.tsx +18 -0
  160. package/src/components/calendar/DaysView.tsx +6 -4
  161. package/src/components/calendar/TimeView.tsx +80 -5
  162. package/src/components/calendar/YearsView.tsx +44 -1
  163. package/src/components/index.tsx +2 -0
  164. package/src/renderers/CRUD.tsx +3 -3
  165. package/src/renderers/Card.tsx +299 -191
  166. package/src/renderers/Collapse.tsx +27 -27
  167. package/src/renderers/CollapseGroup.tsx +13 -12
  168. package/src/renderers/Dialog.tsx +8 -8
  169. package/src/renderers/Drawer.tsx +2 -2
  170. package/src/renderers/Form/Formula.tsx +7 -5
  171. package/src/renderers/Form/InputFile.tsx +7 -3
  172. package/src/renderers/Form/InputImage.tsx +1 -1
  173. package/src/renderers/Form/Item.tsx +2 -2
  174. package/src/renderers/Form/index.tsx +14 -2
  175. package/src/renderers/Form/wrapControl.tsx +5 -2
  176. package/src/renderers/Page.tsx +11 -10
  177. package/src/renderers/Wizard.tsx +52 -12
  178. package/src/store/formItem.ts +27 -6
  179. package/src/utils/helper.ts +35 -10
@@ -129,6 +129,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
129
129
  dialogOpen: boolean;
130
130
  dialogData: any;
131
131
  resetValue: any;
132
+ validateOnChange: boolean;
132
133
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
133
134
  readonly parentStore: any;
134
135
  readonly __: any;
@@ -153,7 +154,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
153
154
  } & {
154
155
  focus: () => void;
155
156
  blur: () => void;
156
- config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength }: {
157
+ config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength, validateOnChange }: {
157
158
  required?: boolean | undefined;
158
159
  unique?: boolean | undefined;
159
160
  value?: any;
@@ -177,6 +178,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
177
178
  validateApi?: boolean | undefined;
178
179
  minLength?: number | undefined;
179
180
  maxLength?: number | undefined;
181
+ validateOnChange?: boolean | undefined;
180
182
  }) => void;
181
183
  validate: (data: Object, hook?: any) => Promise<boolean>;
182
184
  setError: (msg: string | string[], tag?: string) => void;
@@ -195,7 +197,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
195
197
  setLoading: (value: boolean) => void;
196
198
  setSubStore: (store: any) => void;
197
199
  getSubStore: () => any;
198
- reset: () => void;
200
+ reset: (keepErrors?: boolean) => void;
199
201
  openDialog: (schema: any, data: any, callback?: ((ret?: any) => void) | undefined) => void;
200
202
  closeDialog: (result?: any) => void;
201
203
  changeTmpValue: (value: any) => void;
@@ -249,6 +251,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
249
251
  dialogOpen: boolean;
250
252
  dialogData: any;
251
253
  resetValue: any;
254
+ validateOnChange: boolean;
252
255
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
253
256
  readonly parentStore: any;
254
257
  readonly __: any;
@@ -316,6 +319,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
316
319
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
317
320
  dialogData: import("mobx-state-tree").IType<any, any, any>;
318
321
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
322
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
319
323
  }, {
320
324
  readonly parentStore: any;
321
325
  readonly __: any;
@@ -387,6 +391,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
387
391
  dialogOpen: boolean;
388
392
  dialogData: any;
389
393
  resetValue: any;
394
+ validateOnChange: boolean;
390
395
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
391
396
  readonly parentStore: any;
392
397
  readonly __: any;
@@ -454,6 +459,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
454
459
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
455
460
  dialogData: import("mobx-state-tree").IType<any, any, any>;
456
461
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
462
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
457
463
  }, {
458
464
  readonly parentStore: any;
459
465
  readonly __: any;
@@ -522,6 +528,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
522
528
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
523
529
  dialogData: import("mobx-state-tree").IType<any, any, any>;
524
530
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
531
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
525
532
  }, {
526
533
  readonly parentStore: any;
527
534
  readonly __: any;
@@ -546,7 +553,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
546
553
  } & {
547
554
  focus: () => void;
548
555
  blur: () => void;
549
- config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength }: {
556
+ config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength, validateOnChange }: {
550
557
  required?: boolean | undefined;
551
558
  unique?: boolean | undefined;
552
559
  value?: any;
@@ -570,6 +577,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
570
577
  validateApi?: boolean | undefined;
571
578
  minLength?: number | undefined;
572
579
  maxLength?: number | undefined;
580
+ validateOnChange?: boolean | undefined;
573
581
  }) => void;
574
582
  validate: (data: Object, hook?: any) => Promise<boolean>;
575
583
  setError: (msg: string | string[], tag?: string) => void;
@@ -588,7 +596,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
588
596
  setLoading: (value: boolean) => void;
589
597
  setSubStore: (store: any) => void;
590
598
  getSubStore: () => any;
591
- reset: () => void;
599
+ reset: (keepErrors?: boolean) => void;
592
600
  openDialog: (schema: any, data: any, callback?: ((ret?: any) => void) | undefined) => void;
593
601
  closeDialog: (result?: any) => void;
594
602
  changeTmpValue: (value: any) => void;
@@ -642,6 +650,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
642
650
  dialogOpen: boolean;
643
651
  dialogData: any;
644
652
  resetValue: any;
653
+ validateOnChange: boolean;
645
654
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
646
655
  readonly parentStore: any;
647
656
  readonly __: any;
@@ -709,6 +718,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
709
718
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
710
719
  dialogData: import("mobx-state-tree").IType<any, any, any>;
711
720
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
721
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
712
722
  }, {
713
723
  readonly parentStore: any;
714
724
  readonly __: any;
@@ -780,6 +790,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
780
790
  dialogOpen: boolean;
781
791
  dialogData: any;
782
792
  resetValue: any;
793
+ validateOnChange: boolean;
783
794
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
784
795
  readonly parentStore: any;
785
796
  readonly __: any;
@@ -847,6 +858,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
847
858
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
848
859
  dialogData: import("mobx-state-tree").IType<any, any, any>;
849
860
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
861
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
850
862
  }, {
851
863
  readonly parentStore: any;
852
864
  readonly __: any;
@@ -924,6 +936,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
924
936
  dialogOpen: boolean;
925
937
  dialogData: any;
926
938
  resetValue: any;
939
+ validateOnChange: boolean;
927
940
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
928
941
  readonly parentStore: any;
929
942
  readonly __: any;
@@ -948,7 +961,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
948
961
  } & {
949
962
  focus: () => void;
950
963
  blur: () => void;
951
- config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength }: {
964
+ config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength, validateOnChange }: {
952
965
  required?: boolean | undefined;
953
966
  unique?: boolean | undefined;
954
967
  value?: any;
@@ -972,6 +985,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
972
985
  validateApi?: boolean | undefined;
973
986
  minLength?: number | undefined;
974
987
  maxLength?: number | undefined;
988
+ validateOnChange?: boolean | undefined;
975
989
  }) => void;
976
990
  validate: (data: Object, hook?: any) => Promise<boolean>;
977
991
  setError: (msg: string | string[], tag?: string) => void;
@@ -990,7 +1004,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
990
1004
  setLoading: (value: boolean) => void;
991
1005
  setSubStore: (store: any) => void;
992
1006
  getSubStore: () => any;
993
- reset: () => void;
1007
+ reset: (keepErrors?: boolean) => void;
994
1008
  openDialog: (schema: any, data: any, callback?: ((ret?: any) => void) | undefined) => void;
995
1009
  closeDialog: (result?: any) => void;
996
1010
  changeTmpValue: (value: any) => void;
@@ -1044,6 +1058,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1044
1058
  dialogOpen: boolean;
1045
1059
  dialogData: any;
1046
1060
  resetValue: any;
1061
+ validateOnChange: boolean;
1047
1062
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
1048
1063
  readonly parentStore: any;
1049
1064
  readonly __: any;
@@ -1111,6 +1126,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1111
1126
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1112
1127
  dialogData: import("mobx-state-tree").IType<any, any, any>;
1113
1128
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
1129
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1114
1130
  }, {
1115
1131
  readonly parentStore: any;
1116
1132
  readonly __: any;
@@ -1182,6 +1198,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1182
1198
  dialogOpen: boolean;
1183
1199
  dialogData: any;
1184
1200
  resetValue: any;
1201
+ validateOnChange: boolean;
1185
1202
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
1186
1203
  readonly parentStore: any;
1187
1204
  readonly __: any;
@@ -1249,6 +1266,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1249
1266
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1250
1267
  dialogData: import("mobx-state-tree").IType<any, any, any>;
1251
1268
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
1269
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1252
1270
  }, {
1253
1271
  readonly parentStore: any;
1254
1272
  readonly __: any;
@@ -1317,6 +1335,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1317
1335
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1318
1336
  dialogData: import("mobx-state-tree").IType<any, any, any>;
1319
1337
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
1338
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1320
1339
  }, {
1321
1340
  readonly parentStore: any;
1322
1341
  readonly __: any;
@@ -1341,7 +1360,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1341
1360
  } & {
1342
1361
  focus: () => void;
1343
1362
  blur: () => void;
1344
- config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength }: {
1363
+ config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength, validateOnChange }: {
1345
1364
  required?: boolean | undefined;
1346
1365
  unique?: boolean | undefined;
1347
1366
  value?: any;
@@ -1365,6 +1384,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1365
1384
  validateApi?: boolean | undefined;
1366
1385
  minLength?: number | undefined;
1367
1386
  maxLength?: number | undefined;
1387
+ validateOnChange?: boolean | undefined;
1368
1388
  }) => void;
1369
1389
  validate: (data: Object, hook?: any) => Promise<boolean>;
1370
1390
  setError: (msg: string | string[], tag?: string) => void;
@@ -1383,7 +1403,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1383
1403
  setLoading: (value: boolean) => void;
1384
1404
  setSubStore: (store: any) => void;
1385
1405
  getSubStore: () => any;
1386
- reset: () => void;
1406
+ reset: (keepErrors?: boolean) => void;
1387
1407
  openDialog: (schema: any, data: any, callback?: ((ret?: any) => void) | undefined) => void;
1388
1408
  closeDialog: (result?: any) => void;
1389
1409
  changeTmpValue: (value: any) => void;
@@ -1437,6 +1457,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1437
1457
  dialogOpen: boolean;
1438
1458
  dialogData: any;
1439
1459
  resetValue: any;
1460
+ validateOnChange: boolean;
1440
1461
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
1441
1462
  readonly parentStore: any;
1442
1463
  readonly __: any;
@@ -1504,6 +1525,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1504
1525
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1505
1526
  dialogData: import("mobx-state-tree").IType<any, any, any>;
1506
1527
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
1528
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1507
1529
  }, {
1508
1530
  readonly parentStore: any;
1509
1531
  readonly __: any;
@@ -1575,6 +1597,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1575
1597
  dialogOpen: boolean;
1576
1598
  dialogData: any;
1577
1599
  resetValue: any;
1600
+ validateOnChange: boolean;
1578
1601
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
1579
1602
  readonly parentStore: any;
1580
1603
  readonly __: any;
@@ -1642,6 +1665,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1642
1665
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1643
1666
  dialogData: import("mobx-state-tree").IType<any, any, any>;
1644
1667
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
1668
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1645
1669
  }, {
1646
1670
  readonly parentStore: any;
1647
1671
  readonly __: any;
@@ -1714,6 +1738,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1714
1738
  dialogOpen: boolean;
1715
1739
  dialogData: any;
1716
1740
  resetValue: any;
1741
+ validateOnChange: boolean;
1717
1742
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
1718
1743
  readonly parentStore: any;
1719
1744
  readonly __: any;
@@ -1738,7 +1763,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1738
1763
  } & {
1739
1764
  focus: () => void;
1740
1765
  blur: () => void;
1741
- config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength }: {
1766
+ config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength, validateOnChange }: {
1742
1767
  required?: boolean | undefined;
1743
1768
  unique?: boolean | undefined;
1744
1769
  value?: any;
@@ -1762,6 +1787,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1762
1787
  validateApi?: boolean | undefined;
1763
1788
  minLength?: number | undefined;
1764
1789
  maxLength?: number | undefined;
1790
+ validateOnChange?: boolean | undefined;
1765
1791
  }) => void;
1766
1792
  validate: (data: Object, hook?: any) => Promise<boolean>;
1767
1793
  setError: (msg: string | string[], tag?: string) => void;
@@ -1780,7 +1806,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1780
1806
  setLoading: (value: boolean) => void;
1781
1807
  setSubStore: (store: any) => void;
1782
1808
  getSubStore: () => any;
1783
- reset: () => void;
1809
+ reset: (keepErrors?: boolean) => void;
1784
1810
  openDialog: (schema: any, data: any, callback?: ((ret?: any) => void) | undefined) => void;
1785
1811
  closeDialog: (result?: any) => void;
1786
1812
  changeTmpValue: (value: any) => void;
@@ -1834,6 +1860,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1834
1860
  dialogOpen: boolean;
1835
1861
  dialogData: any;
1836
1862
  resetValue: any;
1863
+ validateOnChange: boolean;
1837
1864
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
1838
1865
  readonly parentStore: any;
1839
1866
  readonly __: any;
@@ -1901,6 +1928,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1901
1928
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1902
1929
  dialogData: import("mobx-state-tree").IType<any, any, any>;
1903
1930
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
1931
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1904
1932
  }, {
1905
1933
  readonly parentStore: any;
1906
1934
  readonly __: any;
@@ -1972,6 +2000,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1972
2000
  dialogOpen: boolean;
1973
2001
  dialogData: any;
1974
2002
  resetValue: any;
2003
+ validateOnChange: boolean;
1975
2004
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
1976
2005
  readonly parentStore: any;
1977
2006
  readonly __: any;
@@ -2039,6 +2068,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2039
2068
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2040
2069
  dialogData: import("mobx-state-tree").IType<any, any, any>;
2041
2070
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
2071
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2042
2072
  }, {
2043
2073
  readonly parentStore: any;
2044
2074
  readonly __: any;
@@ -2107,6 +2137,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2107
2137
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2108
2138
  dialogData: import("mobx-state-tree").IType<any, any, any>;
2109
2139
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
2140
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2110
2141
  }, {
2111
2142
  readonly parentStore: any;
2112
2143
  readonly __: any;
@@ -2131,7 +2162,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2131
2162
  } & {
2132
2163
  focus: () => void;
2133
2164
  blur: () => void;
2134
- config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength }: {
2165
+ config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength, validateOnChange }: {
2135
2166
  required?: boolean | undefined;
2136
2167
  unique?: boolean | undefined;
2137
2168
  value?: any;
@@ -2155,6 +2186,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2155
2186
  validateApi?: boolean | undefined;
2156
2187
  minLength?: number | undefined;
2157
2188
  maxLength?: number | undefined;
2189
+ validateOnChange?: boolean | undefined;
2158
2190
  }) => void;
2159
2191
  validate: (data: Object, hook?: any) => Promise<boolean>;
2160
2192
  setError: (msg: string | string[], tag?: string) => void;
@@ -2173,7 +2205,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2173
2205
  setLoading: (value: boolean) => void;
2174
2206
  setSubStore: (store: any) => void;
2175
2207
  getSubStore: () => any;
2176
- reset: () => void;
2208
+ reset: (keepErrors?: boolean) => void;
2177
2209
  openDialog: (schema: any, data: any, callback?: ((ret?: any) => void) | undefined) => void;
2178
2210
  closeDialog: (result?: any) => void;
2179
2211
  changeTmpValue: (value: any) => void;
@@ -2227,6 +2259,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2227
2259
  dialogOpen: boolean;
2228
2260
  dialogData: any;
2229
2261
  resetValue: any;
2262
+ validateOnChange: boolean;
2230
2263
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
2231
2264
  readonly parentStore: any;
2232
2265
  readonly __: any;
@@ -2294,6 +2327,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2294
2327
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2295
2328
  dialogData: import("mobx-state-tree").IType<any, any, any>;
2296
2329
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
2330
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2297
2331
  }, {
2298
2332
  readonly parentStore: any;
2299
2333
  readonly __: any;
@@ -2365,6 +2399,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2365
2399
  dialogOpen: boolean;
2366
2400
  dialogData: any;
2367
2401
  resetValue: any;
2402
+ validateOnChange: boolean;
2368
2403
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
2369
2404
  readonly parentStore: any;
2370
2405
  readonly __: any;
@@ -2432,6 +2467,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2432
2467
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2433
2468
  dialogData: import("mobx-state-tree").IType<any, any, any>;
2434
2469
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
2470
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2435
2471
  }, {
2436
2472
  readonly parentStore: any;
2437
2473
  readonly __: any;
@@ -2504,6 +2540,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2504
2540
  dialogOpen: boolean;
2505
2541
  dialogData: any;
2506
2542
  resetValue: any;
2543
+ validateOnChange: boolean;
2507
2544
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
2508
2545
  readonly parentStore: any;
2509
2546
  readonly __: any;
@@ -2528,7 +2565,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2528
2565
  } & {
2529
2566
  focus: () => void;
2530
2567
  blur: () => void;
2531
- config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength }: {
2568
+ config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength, validateOnChange }: {
2532
2569
  required?: boolean | undefined;
2533
2570
  unique?: boolean | undefined;
2534
2571
  value?: any;
@@ -2552,6 +2589,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2552
2589
  validateApi?: boolean | undefined;
2553
2590
  minLength?: number | undefined;
2554
2591
  maxLength?: number | undefined;
2592
+ validateOnChange?: boolean | undefined;
2555
2593
  }) => void;
2556
2594
  validate: (data: Object, hook?: any) => Promise<boolean>;
2557
2595
  setError: (msg: string | string[], tag?: string) => void;
@@ -2570,7 +2608,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2570
2608
  setLoading: (value: boolean) => void;
2571
2609
  setSubStore: (store: any) => void;
2572
2610
  getSubStore: () => any;
2573
- reset: () => void;
2611
+ reset: (keepErrors?: boolean) => void;
2574
2612
  openDialog: (schema: any, data: any, callback?: ((ret?: any) => void) | undefined) => void;
2575
2613
  closeDialog: (result?: any) => void;
2576
2614
  changeTmpValue: (value: any) => void;
@@ -2624,6 +2662,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2624
2662
  dialogOpen: boolean;
2625
2663
  dialogData: any;
2626
2664
  resetValue: any;
2665
+ validateOnChange: boolean;
2627
2666
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
2628
2667
  readonly parentStore: any;
2629
2668
  readonly __: any;
@@ -2691,6 +2730,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2691
2730
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2692
2731
  dialogData: import("mobx-state-tree").IType<any, any, any>;
2693
2732
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
2733
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2694
2734
  }, {
2695
2735
  readonly parentStore: any;
2696
2736
  readonly __: any;
@@ -2762,6 +2802,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2762
2802
  dialogOpen: boolean;
2763
2803
  dialogData: any;
2764
2804
  resetValue: any;
2805
+ validateOnChange: boolean;
2765
2806
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
2766
2807
  readonly parentStore: any;
2767
2808
  readonly __: any;
@@ -2829,6 +2870,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2829
2870
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2830
2871
  dialogData: import("mobx-state-tree").IType<any, any, any>;
2831
2872
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
2873
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2832
2874
  }, {
2833
2875
  readonly parentStore: any;
2834
2876
  readonly __: any;
@@ -2897,6 +2939,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2897
2939
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2898
2940
  dialogData: import("mobx-state-tree").IType<any, any, any>;
2899
2941
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
2942
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2900
2943
  }, {
2901
2944
  readonly parentStore: any;
2902
2945
  readonly __: any;
@@ -2921,7 +2964,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2921
2964
  } & {
2922
2965
  focus: () => void;
2923
2966
  blur: () => void;
2924
- config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength }: {
2967
+ config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength, validateOnChange }: {
2925
2968
  required?: boolean | undefined;
2926
2969
  unique?: boolean | undefined;
2927
2970
  value?: any;
@@ -2945,6 +2988,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2945
2988
  validateApi?: boolean | undefined;
2946
2989
  minLength?: number | undefined;
2947
2990
  maxLength?: number | undefined;
2991
+ validateOnChange?: boolean | undefined;
2948
2992
  }) => void;
2949
2993
  validate: (data: Object, hook?: any) => Promise<boolean>;
2950
2994
  setError: (msg: string | string[], tag?: string) => void;
@@ -2963,7 +3007,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2963
3007
  setLoading: (value: boolean) => void;
2964
3008
  setSubStore: (store: any) => void;
2965
3009
  getSubStore: () => any;
2966
- reset: () => void;
3010
+ reset: (keepErrors?: boolean) => void;
2967
3011
  openDialog: (schema: any, data: any, callback?: ((ret?: any) => void) | undefined) => void;
2968
3012
  closeDialog: (result?: any) => void;
2969
3013
  changeTmpValue: (value: any) => void;
@@ -3017,6 +3061,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
3017
3061
  dialogOpen: boolean;
3018
3062
  dialogData: any;
3019
3063
  resetValue: any;
3064
+ validateOnChange: boolean;
3020
3065
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
3021
3066
  readonly parentStore: any;
3022
3067
  readonly __: any;
@@ -3084,6 +3129,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
3084
3129
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
3085
3130
  dialogData: import("mobx-state-tree").IType<any, any, any>;
3086
3131
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
3132
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
3087
3133
  }, {
3088
3134
  readonly parentStore: any;
3089
3135
  readonly __: any;
@@ -3155,6 +3201,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
3155
3201
  dialogOpen: boolean;
3156
3202
  dialogData: any;
3157
3203
  resetValue: any;
3204
+ validateOnChange: boolean;
3158
3205
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
3159
3206
  readonly parentStore: any;
3160
3207
  readonly __: any;
@@ -3222,6 +3269,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
3222
3269
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
3223
3270
  dialogData: import("mobx-state-tree").IType<any, any, any>;
3224
3271
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
3272
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
3225
3273
  }, {
3226
3274
  readonly parentStore: any;
3227
3275
  readonly __: any;
@@ -46,6 +46,7 @@ export declare const FormItemStore: import("mobx-state-tree").IModelType<{
46
46
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
47
47
  dialogData: import("mobx-state-tree").IType<any, any, any>;
48
48
  resetValue: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
49
+ validateOnChange: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
49
50
  }, {
50
51
  readonly parentStore: any;
51
52
  readonly __: any;
@@ -70,7 +71,7 @@ export declare const FormItemStore: import("mobx-state-tree").IModelType<{
70
71
  } & {
71
72
  focus: () => void;
72
73
  blur: () => void;
73
- config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength }: {
74
+ config: ({ required, unique, value, rules, messages, delimiter, multiple, valueField, labelField, joinValues, extractValue, type, id, selectFirst, autoFill, clearValueOnHidden, validateApi, maxLength, minLength, validateOnChange }: {
74
75
  required?: boolean | undefined;
75
76
  unique?: boolean | undefined;
76
77
  value?: any;
@@ -94,6 +95,7 @@ export declare const FormItemStore: import("mobx-state-tree").IModelType<{
94
95
  validateApi?: boolean | undefined;
95
96
  minLength?: number | undefined;
96
97
  maxLength?: number | undefined;
98
+ validateOnChange?: boolean | undefined;
97
99
  }) => void;
98
100
  validate: (data: Object, hook?: any) => Promise<boolean>;
99
101
  setError: (msg: string | Array<string>, tag?: string) => void;
@@ -112,7 +114,7 @@ export declare const FormItemStore: import("mobx-state-tree").IModelType<{
112
114
  setLoading: (value: boolean) => void;
113
115
  setSubStore: (store: any) => void;
114
116
  getSubStore: () => any;
115
- reset: () => void;
117
+ reset: (keepErrors?: boolean) => void;
116
118
  openDialog: (schema: any, data: any, callback?: ((ret?: any) => void) | undefined) => void;
117
119
  closeDialog: (result?: any) => void;
118
120
  changeTmpValue: (value: any) => void;
@@ -7,6 +7,7 @@ var form_1 = require("./form");
7
7
  var validations_1 = require("../utils/validations");
8
8
  var combo_1 = require("./combo");
9
9
  var tpl_1 = require("../utils/tpl");
10
+ var api_1 = require("../utils/api");
10
11
  var findIndex_1 = (0, tslib_1.__importDefault)(require("lodash/findIndex"));
11
12
  var helper_1 = require("../utils/helper");
12
13
  var helper_2 = require("../utils/helper");
@@ -55,7 +56,8 @@ exports.FormItemStore = node_1.StoreNode.named('FormItemStore')
55
56
  dialogSchema: mobx_state_tree_1.types.frozen(),
56
57
  dialogOpen: false,
57
58
  dialogData: mobx_state_tree_1.types.frozen(),
58
- resetValue: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.frozen(), '')
59
+ resetValue: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.frozen(), ''),
60
+ validateOnChange: false
59
61
  })
60
62
  .views(function (self) {
61
63
  function getForm() {
@@ -158,7 +160,7 @@ exports.FormItemStore = node_1.StoreNode.named('FormItemStore')
158
160
  var form = self.form;
159
161
  var dialogCallbacks = new SimpleMap_1.SimpleMap();
160
162
  function config(_a) {
161
- var required = _a.required, unique = _a.unique, value = _a.value, rules = _a.rules, messages = _a.messages, delimiter = _a.delimiter, multiple = _a.multiple, valueField = _a.valueField, labelField = _a.labelField, joinValues = _a.joinValues, extractValue = _a.extractValue, type = _a.type, id = _a.id, selectFirst = _a.selectFirst, autoFill = _a.autoFill, clearValueOnHidden = _a.clearValueOnHidden, validateApi = _a.validateApi, maxLength = _a.maxLength, minLength = _a.minLength;
163
+ var required = _a.required, unique = _a.unique, value = _a.value, rules = _a.rules, messages = _a.messages, delimiter = _a.delimiter, multiple = _a.multiple, valueField = _a.valueField, labelField = _a.labelField, joinValues = _a.joinValues, extractValue = _a.extractValue, type = _a.type, id = _a.id, selectFirst = _a.selectFirst, autoFill = _a.autoFill, clearValueOnHidden = _a.clearValueOnHidden, validateApi = _a.validateApi, maxLength = _a.maxLength, minLength = _a.minLength, validateOnChange = _a.validateOnChange;
162
164
  if (typeof rules === 'string') {
163
165
  rules = (0, validations_1.str2rules)(rules);
164
166
  }
@@ -182,6 +184,8 @@ exports.FormItemStore = node_1.StoreNode.named('FormItemStore')
182
184
  typeof clearValueOnHidden !== 'undefined' &&
183
185
  (self.clearValueOnHidden = !!clearValueOnHidden);
184
186
  typeof validateApi !== 'undefined' && (self.validateApi = validateApi);
187
+ typeof validateOnChange !== 'undefined' &&
188
+ (self.validateOnChange = !!validateOnChange);
185
189
  rules = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, rules), { isRequired: self.required });
186
190
  // todo 这个弄个配置由渲染器自己来决定
187
191
  // 暂时先这样
@@ -212,7 +216,7 @@ exports.FormItemStore = node_1.StoreNode.named('FormItemStore')
212
216
  return (0, tslib_1.__generator)(this, function (_c) {
213
217
  switch (_c.label) {
214
218
  case 0:
215
- if (self.validating && !self.validateApi) {
219
+ if (self.validating && !(0, api_1.isEffectiveApi)(self.validateApi, data)) {
216
220
  return [2 /*return*/, self.valid];
217
221
  }
218
222
  self.validating = true;
@@ -224,7 +228,7 @@ exports.FormItemStore = node_1.StoreNode.named('FormItemStore')
224
228
  _c.label = 2;
225
229
  case 2:
226
230
  addError((0, validations_1.validate)(self.tmpValue, data, self.rules, self.messages, self.__));
227
- if (!(!self.errors.length && self.validateApi)) return [3 /*break*/, 4];
231
+ if (!(!self.errors.length && (0, api_1.isEffectiveApi)(self.validateApi, data))) return [3 /*break*/, 4];
228
232
  if (validateCancel) {
229
233
  validateCancel();
230
234
  validateCancel = null;
@@ -429,7 +433,7 @@ exports.FormItemStore = node_1.StoreNode.named('FormItemStore')
429
433
  });
430
434
  });
431
435
  var tryDeferLoadLeftOptions = (0, mobx_state_tree_1.flow)(function (option, api, data, config) {
432
- var leftOptions, indexes, json, options;
436
+ var leftOptions, indexes, json, options, children_1;
433
437
  var _a;
434
438
  return (0, tslib_1.__generator)(this, function (_b) {
435
439
  switch (_b.label) {
@@ -463,6 +467,16 @@ exports.FormItemStore = node_1.StoreNode.named('FormItemStore')
463
467
  setOptions([
464
468
  (0, tslib_1.__assign)((0, tslib_1.__assign)({}, self.options[0]), { leftOptions: (0, helper_1.spliceTree)(leftOptions, indexes, 1, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, option), { loading: false, loaded: true, children: options })) })
465
469
  ], undefined, data);
470
+ // 插入新的子节点,用于之后BaseSelection.resolveSelected查找
471
+ if (Array.isArray(self.options[0].children)) {
472
+ children_1 = self.options[0].children.concat();
473
+ (0, helper_2.flattenTree)(self.options[0].leftOptions).forEach(function (item) {
474
+ if (!(0, helper_1.findTree)(self.options[0].children, function (node) { return node.ref === item.value; })) {
475
+ children_1.push({ ref: item.value, defer: true });
476
+ }
477
+ });
478
+ setOptions([(0, tslib_1.__assign)((0, tslib_1.__assign)({}, self.options[0]), { children: children_1 })], undefined, data);
479
+ }
466
480
  return [2 /*return*/, json];
467
481
  }
468
482
  });
@@ -689,13 +703,14 @@ exports.FormItemStore = node_1.StoreNode.named('FormItemStore')
689
703
  function setSubStore(store) {
690
704
  subStore = store;
691
705
  }
692
- function reset() {
706
+ function reset(keepErrors) {
707
+ if (keepErrors === void 0) { keepErrors = false; }
693
708
  self.validated = false;
694
709
  if (subStore && subStore.storeType === 'ComboStore') {
695
710
  var combo = subStore;
696
711
  combo.forms.forEach(function (form) { return form.reset(); });
697
712
  }
698
- clearError();
713
+ !keepErrors && clearError();
699
714
  }
700
715
  function openDialog(schema, data, callback) {
701
716
  self.dialogSchema = schema;