amis 1.9.1-beta.18 → 1.9.1-beta.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (137) hide show
  1. package/lib/components/Radios.d.ts +10 -10
  2. package/lib/components/ResultBox.d.ts +44 -40
  3. package/lib/components/ResultBox.js +43 -7
  4. package/lib/components/ResultBox.js.map +2 -2
  5. package/lib/components/ResultTableList.js +16 -17
  6. package/lib/components/ResultTableList.js.map +2 -2
  7. package/lib/components/Select.d.ts +498 -294
  8. package/lib/components/Select.js +64 -12
  9. package/lib/components/Select.js.map +2 -2
  10. package/lib/components/TableSelection.d.ts +42 -40
  11. package/lib/components/TableSelection.js +7 -2
  12. package/lib/components/TableSelection.js.map +2 -2
  13. package/lib/components/TooltipWrapper.d.ts +1 -1
  14. package/lib/components/TooltipWrapper.js.map +2 -2
  15. package/lib/components/TransferDropDown.d.ts +43 -40
  16. package/lib/components/TransferDropDown.js +2 -2
  17. package/lib/components/TransferDropDown.js.map +2 -2
  18. package/lib/index.js +1 -1
  19. package/lib/locale/de-DE.js +1 -1
  20. package/lib/locale/de-DE.js.map +2 -2
  21. package/lib/locale/en-US.js +1 -1
  22. package/lib/locale/en-US.js.map +2 -2
  23. package/lib/renderers/Form/DiffEditor.d.ts +66 -20
  24. package/lib/renderers/Form/Editor.d.ts +66 -20
  25. package/lib/renderers/Form/Group.js +1 -1
  26. package/lib/renderers/Form/Group.js.map +2 -2
  27. package/lib/renderers/Form/InputImage.js.map +2 -2
  28. package/lib/renderers/Form/InputTag.d.ts +8 -0
  29. package/lib/renderers/Form/InputTag.js +2 -2
  30. package/lib/renderers/Form/InputTag.js.map +2 -2
  31. package/lib/renderers/Form/Options.js +7 -7
  32. package/lib/renderers/Form/Options.js.map +2 -2
  33. package/lib/renderers/Form/Select.d.ts +24 -0
  34. package/lib/renderers/Form/Select.js +5 -3
  35. package/lib/renderers/Form/Select.js.map +2 -2
  36. package/lib/renderers/Form/Transfer.d.ts +1 -0
  37. package/lib/renderers/Form/Transfer.js +4 -0
  38. package/lib/renderers/Form/Transfer.js.map +2 -2
  39. package/lib/renderers/Form/TreeSelect.d.ts +0 -1
  40. package/lib/renderers/Form/TreeSelect.js +1 -9
  41. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  42. package/lib/renderers/Form/index.js +8 -4
  43. package/lib/renderers/Form/index.js.map +2 -2
  44. package/lib/renderers/QRCode.d.ts +16 -0
  45. package/lib/renderers/QRCode.js +25 -1
  46. package/lib/renderers/QRCode.js.map +2 -2
  47. package/lib/renderers/Table/exportExcel.js +50 -36
  48. package/lib/renderers/Table/exportExcel.js.map +2 -2
  49. package/lib/renderers/Table/index.d.ts +2 -0
  50. package/lib/renderers/Table/index.js +37 -5
  51. package/lib/renderers/Table/index.js.map +2 -2
  52. package/lib/renderers/Tpl.d.ts +4 -0
  53. package/lib/renderers/Tpl.js +6 -3
  54. package/lib/renderers/Tpl.js.map +2 -2
  55. package/lib/store/combo.d.ts +72 -22
  56. package/lib/store/form.d.ts +30 -9
  57. package/lib/store/form.js +28 -10
  58. package/lib/store/form.js.map +2 -2
  59. package/lib/store/formItem.d.ts +3 -1
  60. package/lib/store/formItem.js +3 -5
  61. package/lib/store/formItem.js.map +2 -2
  62. package/lib/store/table.d.ts +60 -18
  63. package/lib/themes/ang-ie11.css +87 -6
  64. package/lib/themes/ang.css +92 -6
  65. package/lib/themes/ang.css.map +1 -1
  66. package/lib/themes/antd-ie11.css +87 -6
  67. package/lib/themes/antd.css +92 -6
  68. package/lib/themes/antd.css.map +1 -1
  69. package/lib/themes/cxd-ie11.css +87 -6
  70. package/lib/themes/cxd.css +94 -6
  71. package/lib/themes/cxd.css.map +1 -1
  72. package/lib/themes/dark-ie11.css +87 -6
  73. package/lib/themes/dark.css +92 -6
  74. package/lib/themes/dark.css.map +1 -1
  75. package/lib/themes/default-ie11.css +87 -6
  76. package/lib/themes/default.css +94 -6
  77. package/lib/themes/default.css.map +1 -1
  78. package/lib/utils/helper.d.ts +1 -0
  79. package/lib/utils/helper.js +11 -1
  80. package/lib/utils/helper.js.map +2 -2
  81. package/package.json +1 -1
  82. package/schema.json +94 -28
  83. package/scss/_properties.scss +11 -6
  84. package/scss/components/_result-box.scss +34 -2
  85. package/scss/components/form/_select.scss +88 -32
  86. package/scss/components/form/_selection.scss +9 -6
  87. package/scss/themes/_cxd-variables.scss +2 -0
  88. package/scss/themes/cxd.scss +0 -2
  89. package/sdk/ang-ie11.css +101 -6
  90. package/sdk/ang.css +106 -6
  91. package/sdk/antd-ie11.css +101 -6
  92. package/sdk/antd.css +106 -6
  93. package/sdk/barcode.js +51 -51
  94. package/sdk/charts.js +14 -14
  95. package/sdk/codemirror.js +7 -7
  96. package/sdk/color-picker.js +65 -65
  97. package/sdk/cropperjs.js +2 -2
  98. package/sdk/cxd-ie11.css +101 -6
  99. package/sdk/cxd.css +108 -6
  100. package/sdk/dark-ie11.css +101 -6
  101. package/sdk/dark.css +106 -6
  102. package/sdk/exceljs.js +1 -1
  103. package/sdk/locale/de-DE.js +2 -2
  104. package/sdk/markdown.js +69 -69
  105. package/sdk/papaparse.js +1 -1
  106. package/sdk/renderers/Form/CityDB.js +1 -1
  107. package/sdk/rest.js +16 -16
  108. package/sdk/rich-text.js +62 -62
  109. package/sdk/sdk-ie11.css +101 -6
  110. package/sdk/sdk.css +108 -6
  111. package/sdk/sdk.js +1648 -1647
  112. package/sdk/thirds/hls.js/hls.js +1 -1
  113. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  114. package/sdk/tinymce.js +57 -57
  115. package/src/components/ResultBox.tsx +98 -12
  116. package/src/components/ResultTableList.tsx +32 -33
  117. package/src/components/Select.tsx +149 -17
  118. package/src/components/TableSelection.tsx +15 -8
  119. package/src/components/TooltipWrapper.tsx +20 -14
  120. package/src/components/TransferDropDown.tsx +9 -1
  121. package/src/locale/de-DE.ts +2 -2
  122. package/src/locale/en-US.ts +2 -2
  123. package/src/renderers/Form/Group.tsx +1 -1
  124. package/src/renderers/Form/InputImage.tsx +4 -2
  125. package/src/renderers/Form/InputTag.tsx +14 -0
  126. package/src/renderers/Form/Options.tsx +7 -9
  127. package/src/renderers/Form/Select.tsx +41 -2
  128. package/src/renderers/Form/Transfer.tsx +6 -0
  129. package/src/renderers/Form/TreeSelect.tsx +14 -16
  130. package/src/renderers/Form/index.tsx +11 -2
  131. package/src/renderers/QRCode.tsx +50 -1
  132. package/src/renderers/Table/exportExcel.ts +29 -12
  133. package/src/renderers/Table/index.tsx +42 -6
  134. package/src/renderers/Tpl.tsx +11 -1
  135. package/src/store/form.ts +31 -24
  136. package/src/store/formItem.ts +65 -52
  137. package/src/utils/helper.ts +11 -1
@@ -30,6 +30,10 @@ export interface TplSchema extends BaseSchema {
30
30
  * 角标
31
31
  */
32
32
  badge?: BadgeSchema;
33
+ /**
34
+ * 是否设置外层DOM节点的title属性为文本内容
35
+ */
36
+ showNativeTitle?: boolean;
33
37
  }
34
38
  export interface TplProps extends RendererProps, TplSchema {
35
39
  className?: string;
@@ -55,10 +55,13 @@ var Tpl = /** @class */ (function (_super) {
55
55
  this.dom.firstChild.innerHTML = this.props.env.filterHtml(this.getContent());
56
56
  };
57
57
  Tpl.prototype.render = function () {
58
- var _a = this.props, className = _a.className, wrapperComponent = _a.wrapperComponent, inline = _a.inline, cx = _a.classnames, style = _a.style, data = _a.data;
58
+ var _a = this.props, className = _a.className, wrapperComponent = _a.wrapperComponent, inline = _a.inline, cx = _a.classnames, style = _a.style, showNativeTitle = _a.showNativeTitle, data = _a.data;
59
59
  var Component = wrapperComponent || (inline ? 'span' : 'div');
60
- return (react_1.default.createElement(Component, { ref: this.htmlRef, className: cx('TplField', className), style: (0, style_1.buildStyle)(style, data) },
61
- react_1.default.createElement("span", null, this.getContent())));
60
+ var content = this.getContent();
61
+ return (react_1.default.createElement(Component, (0, tslib_1.__assign)({ ref: this.htmlRef, className: cx('TplField', className), style: (0, style_1.buildStyle)(style, data) }, (showNativeTitle
62
+ ? { title: typeof content === 'string' ? content : '' }
63
+ : {})),
64
+ react_1.default.createElement("span", null, content)));
62
65
  };
63
66
  Tpl.defaultProps = {
64
67
  inline: true,
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Tpl.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {Renderer, RendererProps} from '../factory';\nimport {filter} from '../utils/tpl';\nimport cx from 'classnames';\nimport {anyChanged, getPropValue} from '../utils/helper';\nimport {escapeHtml} from '../utils/tpl-builtin';\nimport {BaseSchema, SchemaTpl} from '../Schema';\nimport {BadgeSchema, withBadge} from '../components/Badge';\nimport {buildStyle} from '../utils/style';\n\n/**\n * tpl 渲染器\n */\nexport interface TplSchema extends BaseSchema {\n /**\n * 指定为模板渲染器。\n *\n * 文档:https://baidu.gitee.io/amis/docs/concepts/template\n */\n type: 'tpl' | 'html';\n\n tpl?: SchemaTpl;\n html?: SchemaTpl;\n text?: SchemaTpl;\n raw?: string;\n\n /**\n * 是否内联显示?\n */\n inline?: boolean;\n\n /**\n * 自定义样式\n */\n style?: {\n [propName: string]: any;\n };\n\n /**\n * 角标\n */\n badge?: BadgeSchema;\n}\n\nexport interface TplProps extends RendererProps, TplSchema {\n className?: string;\n value?: string;\n wrapperComponent?: any;\n inline?: boolean;\n}\n\nexport class Tpl extends React.Component<TplProps, object> {\n static defaultProps: Partial<TplProps> = {\n inline: true,\n placeholder: ''\n };\n\n dom: any;\n\n constructor(props: TplProps) {\n super(props);\n this.htmlRef = this.htmlRef.bind(this);\n }\n\n componentDidUpdate(prevProps: TplProps) {\n if (\n anyChanged(\n ['data', 'tpl', 'html', 'text', 'raw', 'value'],\n this.props,\n prevProps\n )\n ) {\n this._render();\n }\n }\n\n htmlRef(dom: any) {\n this.dom = dom;\n this._render();\n }\n\n getContent() {\n const {tpl, html, text, raw, data, placeholder} = this.props;\n const value = getPropValue(this.props);\n\n if (raw) {\n return raw;\n } else if (html) {\n return filter(html, data);\n } else if (tpl) {\n return filter(tpl, data);\n } else if (text) {\n return escapeHtml(filter(text, data));\n } else {\n return value == null || value === ''\n ? `<span class=\"text-muted\">${placeholder}</span>`\n : typeof value === 'string'\n ? value\n : JSON.stringify(value);\n }\n }\n\n _render() {\n if (!this.dom) {\n return;\n }\n\n this.dom.firstChild.innerHTML = this.props.env.filterHtml(\n this.getContent()\n );\n }\n\n render() {\n const {\n className,\n wrapperComponent,\n inline,\n classnames: cx,\n style,\n data\n } = this.props;\n const Component = wrapperComponent || (inline ? 'span' : 'div');\n\n return (\n <Component\n ref={this.htmlRef}\n className={cx('TplField', className)}\n style={buildStyle(style, data)}\n >\n <span>{this.getContent()}</span>\n </Component>\n );\n }\n}\n\n@Renderer({\n test: /(^|\\/)(?:tpl|html)$/,\n name: 'tpl'\n})\n// @ts-ignore 类型没搞定\n@withBadge\nexport class TplRenderer extends Tpl {}\n"
11
+ "import React from 'react';\nimport {Renderer, RendererProps} from '../factory';\nimport {filter} from '../utils/tpl';\nimport cx from 'classnames';\nimport {anyChanged, getPropValue} from '../utils/helper';\nimport {escapeHtml} from '../utils/tpl-builtin';\nimport {BaseSchema, SchemaTpl} from '../Schema';\nimport {BadgeSchema, withBadge} from '../components/Badge';\nimport {buildStyle} from '../utils/style';\n\n/**\n * tpl 渲染器\n */\nexport interface TplSchema extends BaseSchema {\n /**\n * 指定为模板渲染器。\n *\n * 文档:https://baidu.gitee.io/amis/docs/concepts/template\n */\n type: 'tpl' | 'html';\n\n tpl?: SchemaTpl;\n html?: SchemaTpl;\n text?: SchemaTpl;\n raw?: string;\n\n /**\n * 是否内联显示?\n */\n inline?: boolean;\n\n /**\n * 自定义样式\n */\n style?: {\n [propName: string]: any;\n };\n\n /**\n * 角标\n */\n badge?: BadgeSchema;\n\n /**\n * 是否设置外层DOM节点的title属性为文本内容\n */\n showNativeTitle?: boolean;\n}\n\nexport interface TplProps extends RendererProps, TplSchema {\n className?: string;\n value?: string;\n wrapperComponent?: any;\n inline?: boolean;\n}\n\nexport class Tpl extends React.Component<TplProps, object> {\n static defaultProps: Partial<TplProps> = {\n inline: true,\n placeholder: ''\n };\n\n dom: any;\n\n constructor(props: TplProps) {\n super(props);\n this.htmlRef = this.htmlRef.bind(this);\n }\n\n componentDidUpdate(prevProps: TplProps) {\n if (\n anyChanged(\n ['data', 'tpl', 'html', 'text', 'raw', 'value'],\n this.props,\n prevProps\n )\n ) {\n this._render();\n }\n }\n\n htmlRef(dom: any) {\n this.dom = dom;\n this._render();\n }\n\n getContent() {\n const {tpl, html, text, raw, data, placeholder} = this.props;\n const value = getPropValue(this.props);\n\n if (raw) {\n return raw;\n } else if (html) {\n return filter(html, data);\n } else if (tpl) {\n return filter(tpl, data);\n } else if (text) {\n return escapeHtml(filter(text, data));\n } else {\n return value == null || value === ''\n ? `<span class=\"text-muted\">${placeholder}</span>`\n : typeof value === 'string'\n ? value\n : JSON.stringify(value);\n }\n }\n\n _render() {\n if (!this.dom) {\n return;\n }\n\n this.dom.firstChild.innerHTML = this.props.env.filterHtml(\n this.getContent()\n );\n }\n\n render() {\n const {\n className,\n wrapperComponent,\n inline,\n classnames: cx,\n style,\n showNativeTitle,\n data\n } = this.props;\n const Component = wrapperComponent || (inline ? 'span' : 'div');\n const content = this.getContent();\n\n return (\n <Component\n ref={this.htmlRef}\n className={cx('TplField', className)}\n style={buildStyle(style, data)}\n {...(showNativeTitle\n ? {title: typeof content === 'string' ? content : ''}\n : {})}\n >\n <span>{content}</span>\n </Component>\n );\n }\n}\n\n@Renderer({\n test: /(^|\\/)(?:tpl|html)$/,\n name: 'tpl'\n})\n// @ts-ignore 类型没搞定\n@withBadge\nexport class TplRenderer extends Tpl {}\n"
12
12
  ]
13
13
  }
@@ -107,7 +107,9 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
107
107
  validateOnChange?: boolean | undefined;
108
108
  label?: string | undefined;
109
109
  }) => void;
110
- validate: (data: Object, hook?: any) => Promise<boolean>;
110
+ validate: (data: Object, hook?: any, customRules?: {
111
+ [propName: string]: any;
112
+ } | undefined) => Promise<boolean>;
111
113
  setError: (msg: string | string[], tag?: string) => void;
112
114
  addError: (msg: string | (string | {
113
115
  msg: string;
@@ -514,7 +516,9 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
514
516
  validateOnChange?: boolean | undefined;
515
517
  label?: string | undefined;
516
518
  }) => void;
517
- validate: (data: Object, hook?: any) => Promise<boolean>;
519
+ validate: (data: Object, hook?: any, customRules?: {
520
+ [propName: string]: any;
521
+ } | undefined) => Promise<boolean>;
518
522
  setError: (msg: string | string[], tag?: string) => void;
519
523
  addError: (msg: string | (string | {
520
524
  msg: string;
@@ -953,7 +957,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
953
957
  validateOnChange?: boolean | undefined;
954
958
  label?: string | undefined;
955
959
  }) => void;
956
- validate: (data: Object, hook?: any) => Promise<boolean>;
960
+ validate: (data: Object, hook?: any, customRules?: {
961
+ [propName: string]: any;
962
+ } | undefined) => Promise<boolean>;
957
963
  setError: (msg: string | string[], tag?: string) => void;
958
964
  addError: (msg: string | (string | {
959
965
  msg: string;
@@ -1360,7 +1366,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1360
1366
  validateOnChange?: boolean | undefined;
1361
1367
  label?: string | undefined;
1362
1368
  }) => void;
1363
- validate: (data: Object, hook?: any) => Promise<boolean>;
1369
+ validate: (data: Object, hook?: any, customRules?: {
1370
+ [propName: string]: any;
1371
+ } | undefined) => Promise<boolean>;
1364
1372
  setError: (msg: string | string[], tag?: string) => void;
1365
1373
  addError: (msg: string | (string | {
1366
1374
  msg: string;
@@ -1881,7 +1889,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1881
1889
  validateOnChange?: boolean | undefined;
1882
1890
  label?: string | undefined;
1883
1891
  }) => void;
1884
- validate: (data: Object, hook?: any) => Promise<boolean>;
1892
+ validate: (data: Object, hook?: any, customRules?: {
1893
+ [propName: string]: any;
1894
+ } | undefined) => Promise<boolean>;
1885
1895
  setError: (msg: string | string[], tag?: string) => void;
1886
1896
  addError: (msg: string | (string | {
1887
1897
  msg: string;
@@ -2288,7 +2298,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2288
2298
  validateOnChange?: boolean | undefined;
2289
2299
  label?: string | undefined;
2290
2300
  }) => void;
2291
- validate: (data: Object, hook?: any) => Promise<boolean>;
2301
+ validate: (data: Object, hook?: any, customRules?: {
2302
+ [propName: string]: any;
2303
+ } | undefined) => Promise<boolean>;
2292
2304
  setError: (msg: string | string[], tag?: string) => void;
2293
2305
  addError: (msg: string | (string | {
2294
2306
  msg: string;
@@ -2704,7 +2716,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2704
2716
  validateOnChange?: boolean | undefined;
2705
2717
  label?: string | undefined;
2706
2718
  }) => void;
2707
- validate: (data: Object, hook?: any) => Promise<boolean>;
2719
+ validate: (data: Object, hook?: any, customRules?: {
2720
+ [propName: string]: any;
2721
+ } | undefined) => Promise<boolean>;
2708
2722
  setError: (msg: string | string[], tag?: string) => void;
2709
2723
  addError: (msg: string | (string | {
2710
2724
  msg: string;
@@ -3111,7 +3125,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3111
3125
  validateOnChange?: boolean | undefined;
3112
3126
  label?: string | undefined;
3113
3127
  }) => void;
3114
- validate: (data: Object, hook?: any) => Promise<boolean>;
3128
+ validate: (data: Object, hook?: any, customRules?: {
3129
+ [propName: string]: any;
3130
+ } | undefined) => Promise<boolean>;
3115
3131
  setError: (msg: string | string[], tag?: string) => void;
3116
3132
  addError: (msg: string | (string | {
3117
3133
  msg: string;
@@ -3522,7 +3538,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3522
3538
  validateOnChange?: boolean | undefined;
3523
3539
  label?: string | undefined;
3524
3540
  }) => void;
3525
- validate: (data: Object, hook?: any) => Promise<boolean>;
3541
+ validate: (data: Object, hook?: any, customRules?: {
3542
+ [propName: string]: any;
3543
+ } | undefined) => Promise<boolean>;
3526
3544
  setError: (msg: string | string[], tag?: string) => void;
3527
3545
  addError: (msg: string | (string | {
3528
3546
  msg: string;
@@ -3929,7 +3947,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3929
3947
  validateOnChange?: boolean | undefined;
3930
3948
  label?: string | undefined;
3931
3949
  }) => void;
3932
- validate: (data: Object, hook?: any) => Promise<boolean>;
3950
+ validate: (data: Object, hook?: any, customRules?: {
3951
+ [propName: string]: any;
3952
+ } | undefined) => Promise<boolean>;
3933
3953
  setError: (msg: string | string[], tag?: string) => void;
3934
3954
  addError: (msg: string | (string | {
3935
3955
  msg: string;
@@ -4340,7 +4360,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4340
4360
  validateOnChange?: boolean | undefined;
4341
4361
  label?: string | undefined;
4342
4362
  }) => void;
4343
- validate: (data: Object, hook?: any) => Promise<boolean>;
4363
+ validate: (data: Object, hook?: any, customRules?: {
4364
+ [propName: string]: any;
4365
+ } | undefined) => Promise<boolean>;
4344
4366
  setError: (msg: string | string[], tag?: string) => void;
4345
4367
  addError: (msg: string | (string | {
4346
4368
  msg: string;
@@ -4747,7 +4769,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4747
4769
  validateOnChange?: boolean | undefined;
4748
4770
  label?: string | undefined;
4749
4771
  }) => void;
4750
- validate: (data: Object, hook?: any) => Promise<boolean>;
4772
+ validate: (data: Object, hook?: any, customRules?: {
4773
+ [propName: string]: any;
4774
+ } | undefined) => Promise<boolean>;
4751
4775
  setError: (msg: string | string[], tag?: string) => void;
4752
4776
  addError: (msg: string | (string | {
4753
4777
  msg: string;
@@ -5068,7 +5092,12 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5068
5092
  trimValues: () => void;
5069
5093
  submit: (fn?: ((values: object) => Promise<any>) | undefined, hooks?: (() => Promise<any>)[] | undefined, failedMessage?: string | undefined, validateErrCb?: (() => void) | undefined) => Promise<any>;
5070
5094
  validate: (hooks?: (() => Promise<any>)[] | undefined, forceValidate?: boolean | undefined) => Promise<boolean>;
5071
- validateFields: (fields: string[]) => Promise<boolean>;
5095
+ validateFields: (fields: (string | {
5096
+ name: string;
5097
+ rules: {
5098
+ [propName: string]: any;
5099
+ };
5100
+ })[]) => Promise<boolean>;
5072
5101
  clearErrors: () => void;
5073
5102
  saveRemote: (api: import("../types").Api, data?: object | undefined, options?: import("../types").fetchOptions | undefined) => Promise<any>;
5074
5103
  reset: (cb?: ((data: any) => void) | undefined, resetData?: boolean) => void;
@@ -5269,7 +5298,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5269
5298
  validateOnChange?: boolean | undefined;
5270
5299
  label?: string | undefined;
5271
5300
  }) => void;
5272
- validate: (data: Object, hook?: any) => Promise<boolean>;
5301
+ validate: (data: Object, hook?: any, customRules?: {
5302
+ [propName: string]: any;
5303
+ } | undefined) => Promise<boolean>;
5273
5304
  setError: (msg: string | string[], tag?: string) => void;
5274
5305
  addError: (msg: string | (string | {
5275
5306
  msg: string;
@@ -5676,7 +5707,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5676
5707
  validateOnChange?: boolean | undefined;
5677
5708
  label?: string | undefined;
5678
5709
  }) => void;
5679
- validate: (data: Object, hook?: any) => Promise<boolean>;
5710
+ validate: (data: Object, hook?: any, customRules?: {
5711
+ [propName: string]: any;
5712
+ } | undefined) => Promise<boolean>;
5680
5713
  setError: (msg: string | string[], tag?: string) => void;
5681
5714
  addError: (msg: string | (string | {
5682
5715
  msg: string;
@@ -6092,7 +6125,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6092
6125
  validateOnChange?: boolean | undefined;
6093
6126
  label?: string | undefined;
6094
6127
  }) => void;
6095
- validate: (data: Object, hook?: any) => Promise<boolean>;
6128
+ validate: (data: Object, hook?: any, customRules?: {
6129
+ [propName: string]: any;
6130
+ } | undefined) => Promise<boolean>;
6096
6131
  setError: (msg: string | string[], tag?: string) => void;
6097
6132
  addError: (msg: string | (string | {
6098
6133
  msg: string;
@@ -6499,7 +6534,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6499
6534
  validateOnChange?: boolean | undefined;
6500
6535
  label?: string | undefined;
6501
6536
  }) => void;
6502
- validate: (data: Object, hook?: any) => Promise<boolean>;
6537
+ validate: (data: Object, hook?: any, customRules?: {
6538
+ [propName: string]: any;
6539
+ } | undefined) => Promise<boolean>;
6503
6540
  setError: (msg: string | string[], tag?: string) => void;
6504
6541
  addError: (msg: string | (string | {
6505
6542
  msg: string;
@@ -6910,7 +6947,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6910
6947
  validateOnChange?: boolean | undefined;
6911
6948
  label?: string | undefined;
6912
6949
  }) => void;
6913
- validate: (data: Object, hook?: any) => Promise<boolean>;
6950
+ validate: (data: Object, hook?: any, customRules?: {
6951
+ [propName: string]: any;
6952
+ } | undefined) => Promise<boolean>;
6914
6953
  setError: (msg: string | string[], tag?: string) => void;
6915
6954
  addError: (msg: string | (string | {
6916
6955
  msg: string;
@@ -7317,7 +7356,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7317
7356
  validateOnChange?: boolean | undefined;
7318
7357
  label?: string | undefined;
7319
7358
  }) => void;
7320
- validate: (data: Object, hook?: any) => Promise<boolean>;
7359
+ validate: (data: Object, hook?: any, customRules?: {
7360
+ [propName: string]: any;
7361
+ } | undefined) => Promise<boolean>;
7321
7362
  setError: (msg: string | string[], tag?: string) => void;
7322
7363
  addError: (msg: string | (string | {
7323
7364
  msg: string;
@@ -7728,7 +7769,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7728
7769
  validateOnChange?: boolean | undefined;
7729
7770
  label?: string | undefined;
7730
7771
  }) => void;
7731
- validate: (data: Object, hook?: any) => Promise<boolean>;
7772
+ validate: (data: Object, hook?: any, customRules?: {
7773
+ [propName: string]: any;
7774
+ } | undefined) => Promise<boolean>;
7732
7775
  setError: (msg: string | string[], tag?: string) => void;
7733
7776
  addError: (msg: string | (string | {
7734
7777
  msg: string;
@@ -8135,7 +8178,9 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
8135
8178
  validateOnChange?: boolean | undefined;
8136
8179
  label?: string | undefined;
8137
8180
  }) => void;
8138
- validate: (data: Object, hook?: any) => Promise<boolean>;
8181
+ validate: (data: Object, hook?: any, customRules?: {
8182
+ [propName: string]: any;
8183
+ } | undefined) => Promise<boolean>;
8139
8184
  setError: (msg: string | string[], tag?: string) => void;
8140
8185
  addError: (msg: string | (string | {
8141
8186
  msg: string;
@@ -8456,7 +8501,12 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
8456
8501
  trimValues: () => void;
8457
8502
  submit: (fn?: ((values: object) => Promise<any>) | undefined, hooks?: (() => Promise<any>)[] | undefined, failedMessage?: string | undefined, validateErrCb?: (() => void) | undefined) => Promise<any>;
8458
8503
  validate: (hooks?: (() => Promise<any>)[] | undefined, forceValidate?: boolean | undefined) => Promise<boolean>;
8459
- validateFields: (fields: string[]) => Promise<boolean>;
8504
+ validateFields: (fields: (string | {
8505
+ name: string;
8506
+ rules: {
8507
+ [propName: string]: any;
8508
+ };
8509
+ })[]) => Promise<boolean>;
8460
8510
  clearErrors: () => void;
8461
8511
  saveRemote: (api: import("../types").Api, data?: object | undefined, options?: import("../types").fetchOptions | undefined) => Promise<any>;
8462
8512
  reset: (cb?: ((data: any) => void) | undefined, resetData?: boolean) => void;
@@ -182,7 +182,9 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
182
182
  validateOnChange?: boolean | undefined;
183
183
  label?: string | undefined;
184
184
  }) => void;
185
- validate: (data: Object, hook?: any) => Promise<boolean>;
185
+ validate: (data: Object, hook?: any, customRules?: {
186
+ [propName: string]: any;
187
+ } | undefined) => Promise<boolean>;
186
188
  setError: (msg: string | string[], tag?: string) => void;
187
189
  addError: (msg: string | (string | {
188
190
  msg: string;
@@ -589,7 +591,9 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
589
591
  validateOnChange?: boolean | undefined;
590
592
  label?: string | undefined;
591
593
  }) => void;
592
- validate: (data: Object, hook?: any) => Promise<boolean>;
594
+ validate: (data: Object, hook?: any, customRules?: {
595
+ [propName: string]: any;
596
+ } | undefined) => Promise<boolean>;
593
597
  setError: (msg: string | string[], tag?: string) => void;
594
598
  addError: (msg: string | (string | {
595
599
  msg: string;
@@ -1005,7 +1009,9 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1005
1009
  validateOnChange?: boolean | undefined;
1006
1010
  label?: string | undefined;
1007
1011
  }) => void;
1008
- validate: (data: Object, hook?: any) => Promise<boolean>;
1012
+ validate: (data: Object, hook?: any, customRules?: {
1013
+ [propName: string]: any;
1014
+ } | undefined) => Promise<boolean>;
1009
1015
  setError: (msg: string | string[], tag?: string) => void;
1010
1016
  addError: (msg: string | (string | {
1011
1017
  msg: string;
@@ -1412,7 +1418,9 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1412
1418
  validateOnChange?: boolean | undefined;
1413
1419
  label?: string | undefined;
1414
1420
  }) => void;
1415
- validate: (data: Object, hook?: any) => Promise<boolean>;
1421
+ validate: (data: Object, hook?: any, customRules?: {
1422
+ [propName: string]: any;
1423
+ } | undefined) => Promise<boolean>;
1416
1424
  setError: (msg: string | string[], tag?: string) => void;
1417
1425
  addError: (msg: string | (string | {
1418
1426
  msg: string;
@@ -1823,7 +1831,9 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
1823
1831
  validateOnChange?: boolean | undefined;
1824
1832
  label?: string | undefined;
1825
1833
  }) => void;
1826
- validate: (data: Object, hook?: any) => Promise<boolean>;
1834
+ validate: (data: Object, hook?: any, customRules?: {
1835
+ [propName: string]: any;
1836
+ } | undefined) => Promise<boolean>;
1827
1837
  setError: (msg: string | string[], tag?: string) => void;
1828
1838
  addError: (msg: string | (string | {
1829
1839
  msg: string;
@@ -2230,7 +2240,9 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2230
2240
  validateOnChange?: boolean | undefined;
2231
2241
  label?: string | undefined;
2232
2242
  }) => void;
2233
- validate: (data: Object, hook?: any) => Promise<boolean>;
2243
+ validate: (data: Object, hook?: any, customRules?: {
2244
+ [propName: string]: any;
2245
+ } | undefined) => Promise<boolean>;
2234
2246
  setError: (msg: string | string[], tag?: string) => void;
2235
2247
  addError: (msg: string | (string | {
2236
2248
  msg: string;
@@ -2641,7 +2653,9 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
2641
2653
  validateOnChange?: boolean | undefined;
2642
2654
  label?: string | undefined;
2643
2655
  }) => void;
2644
- validate: (data: Object, hook?: any) => Promise<boolean>;
2656
+ validate: (data: Object, hook?: any, customRules?: {
2657
+ [propName: string]: any;
2658
+ } | undefined) => Promise<boolean>;
2645
2659
  setError: (msg: string | string[], tag?: string) => void;
2646
2660
  addError: (msg: string | (string | {
2647
2661
  msg: string;
@@ -3048,7 +3062,9 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
3048
3062
  validateOnChange?: boolean | undefined;
3049
3063
  label?: string | undefined;
3050
3064
  }) => void;
3051
- validate: (data: Object, hook?: any) => Promise<boolean>;
3065
+ validate: (data: Object, hook?: any, customRules?: {
3066
+ [propName: string]: any;
3067
+ } | undefined) => Promise<boolean>;
3052
3068
  setError: (msg: string | string[], tag?: string) => void;
3053
3069
  addError: (msg: string | (string | {
3054
3070
  msg: string;
@@ -3369,7 +3385,12 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
3369
3385
  trimValues: () => void;
3370
3386
  submit: (fn?: ((values: object) => Promise<any>) | undefined, hooks?: (() => Promise<any>)[] | undefined, failedMessage?: string | undefined, validateErrCb?: (() => void) | undefined) => Promise<any>;
3371
3387
  validate: (hooks?: (() => Promise<any>)[] | undefined, forceValidate?: boolean | undefined) => Promise<boolean>;
3372
- validateFields: (fields: Array<string>) => Promise<boolean>;
3388
+ validateFields: (fields: (string | {
3389
+ name: string;
3390
+ rules: {
3391
+ [propName: string]: any;
3392
+ };
3393
+ })[]) => Promise<boolean>;
3373
3394
  clearErrors: () => void;
3374
3395
  saveRemote: (api: Api, data?: object | undefined, options?: fetchOptions | undefined) => Promise<any>;
3375
3396
  reset: (cb?: ((data: any) => void) | undefined, resetData?: boolean) => void;
package/lib/store/form.js CHANGED
@@ -4,6 +4,7 @@ exports.IFormItemStore = exports.FormStore = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var mobx_state_tree_1 = require("mobx-state-tree");
6
6
  var debounce_1 = (0, tslib_1.__importDefault)(require("lodash/debounce"));
7
+ var find_1 = (0, tslib_1.__importDefault)(require("lodash/find"));
7
8
  var service_1 = require("./service");
8
9
  var formItem_1 = require("./formItem");
9
10
  Object.defineProperty(exports, "IFormItemStore", { enumerable: true, get: function () { return formItem_1.IFormItemStore; } });
@@ -453,23 +454,40 @@ exports.FormStore = service_1.ServiceStore.named('FormStore')
453
454
  });
454
455
  });
455
456
  var validateFields = (0, mobx_state_tree_1.flow)(function validateFields(fields) {
456
- var items, result, i, len, item, _a, _b;
457
- return (0, tslib_1.__generator)(this, function (_c) {
458
- switch (_c.label) {
457
+ var items, normalizedfields, result, _loop_1, i, len;
458
+ return (0, tslib_1.__generator)(this, function (_a) {
459
+ switch (_a.label) {
459
460
  case 0:
460
461
  items = self.items.concat();
462
+ normalizedfields = fields.map(function (field) {
463
+ return typeof field === 'string' ? { name: field, rules: {} } : field;
464
+ });
461
465
  result = [];
466
+ _loop_1 = function (i, len) {
467
+ var item, field, _b, _c;
468
+ return (0, tslib_1.__generator)(this, function (_d) {
469
+ switch (_d.label) {
470
+ case 0:
471
+ item = items[i];
472
+ field = (0, find_1.default)(normalizedfields, function (field) { return field.name === item.name; });
473
+ if (!field) return [3 /*break*/, 2];
474
+ _c = (_b = result).push;
475
+ return [4 /*yield*/, item.validate(self.data, undefined, field.rules)];
476
+ case 1:
477
+ _c.apply(_b, [_d.sent()]);
478
+ _d.label = 2;
479
+ case 2: return [2 /*return*/];
480
+ }
481
+ });
482
+ };
462
483
  i = 0, len = items.length;
463
- _c.label = 1;
484
+ _a.label = 1;
464
485
  case 1:
465
486
  if (!(i < len)) return [3 /*break*/, 4];
466
- item = items[i];
467
- if (!~fields.indexOf(item.name)) return [3 /*break*/, 3];
468
- _b = (_a = result).push;
469
- return [4 /*yield*/, item.validate(self.data)];
487
+ return [5 /*yield**/, _loop_1(i, len)];
470
488
  case 2:
471
- _b.apply(_a, [_c.sent()]);
472
- _c.label = 3;
489
+ _a.sent();
490
+ _a.label = 3;
473
491
  case 3:
474
492
  i++;
475
493
  return [3 /*break*/, 1];