amis 1.9.1-beta.23 → 1.9.1-beta.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.js +1 -1
- package/lib/renderers/Dialog.d.ts +147 -169
- package/lib/renderers/Dialog.js.map +2 -2
- package/lib/renderers/Form/index.d.ts +4 -4
- package/lib/renderers/Form/index.js +252 -252
- package/lib/renderers/Form/index.js.map +2 -2
- package/lib/themes/ang-ie11.css +4 -7
- package/lib/themes/ang.css +4 -7
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +4 -7
- package/lib/themes/antd.css +4 -7
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +4 -7
- package/lib/themes/cxd.css +4 -7
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +4 -7
- package/lib/themes/dark.css +4 -7
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default-ie11.css +4 -7
- package/lib/themes/default.css +4 -7
- package/lib/themes/default.css.map +1 -1
- package/lib/utils/helper.js +1 -1
- package/lib/utils/helper.js.map +2 -2
- package/package.json +1 -1
- package/schema.json +24 -19
- package/scss/components/form/_date.scss +19 -11
- package/sdk/ang-ie11.css +4 -8
- package/sdk/ang.css +4 -8
- package/sdk/antd-ie11.css +4 -8
- package/sdk/antd.css +4 -8
- package/sdk/barcode.js +51 -51
- package/sdk/charts.js +14 -14
- package/sdk/codemirror.js +7 -7
- package/sdk/color-picker.js +65 -65
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +4 -8
- package/sdk/cxd.css +4 -8
- package/sdk/dark-ie11.css +4 -8
- package/sdk/dark.css +4 -8
- package/sdk/exceljs.js +1 -1
- package/sdk/markdown.js +69 -69
- package/sdk/papaparse.js +1 -1
- package/sdk/renderers/Form/CityDB.js +1 -1
- package/sdk/rest.js +16 -16
- package/sdk/rich-text.js +62 -62
- package/sdk/sdk-ie11.css +4 -8
- package/sdk/sdk.css +4 -8
- package/sdk/sdk.js +1648 -1643
- package/sdk/thirds/hls.js/hls.js +1 -1
- package/sdk/thirds/mpegts.js/mpegts.js +1 -1
- package/sdk/tinymce.js +57 -57
- package/src/renderers/Dialog.tsx +0 -1
- package/src/renderers/Form/index.tsx +15 -24
- package/src/utils/helper.ts +2 -2
package/src/renderers/Dialog.tsx
CHANGED
@@ -943,13 +943,13 @@ export default class Form extends React.Component<FormProps, object> {
|
|
943
943
|
);
|
944
944
|
}
|
945
945
|
|
946
|
-
handleAction(
|
946
|
+
async handleAction(
|
947
947
|
e: React.UIEvent<any> | void,
|
948
948
|
action: Action,
|
949
949
|
data: object,
|
950
950
|
throwErrors: boolean = false,
|
951
951
|
delegate?: IScopedContext
|
952
|
-
): any {
|
952
|
+
): Promise<any> {
|
953
953
|
const {
|
954
954
|
store,
|
955
955
|
onSubmit,
|
@@ -987,6 +987,7 @@ export default class Form extends React.Component<FormProps, object> {
|
|
987
987
|
if (data === this.props.data) {
|
988
988
|
data = store.data;
|
989
989
|
}
|
990
|
+
|
990
991
|
if (Array.isArray(action.required) && action.required.length) {
|
991
992
|
store.clearErrors(); // 如果是按钮指定了required,则校验前先清空一下遗留的校验报错
|
992
993
|
|
@@ -994,31 +995,21 @@ export default class Form extends React.Component<FormProps, object> {
|
|
994
995
|
name: item,
|
995
996
|
rules: {isRequired: true}
|
996
997
|
}));
|
998
|
+
const validationRes = await store.validateFields(fields);
|
997
999
|
|
998
|
-
|
999
|
-
|
1000
|
-
|
1001
|
-
|
1002
|
-
|
1003
|
-
);
|
1004
|
-
if (!dispatcher?.prevented) {
|
1005
|
-
env.notify('error', __('Form.validateFailed'));
|
1006
|
-
}
|
1000
|
+
if (!validationRes) {
|
1001
|
+
const dispatcher = await dispatchEvent(
|
1002
|
+
'validateError',
|
1003
|
+
this.props.data
|
1004
|
+
);
|
1007
1005
|
|
1008
|
-
|
1009
|
-
|
1010
|
-
} else {
|
1011
|
-
dispatchEvent('validateSucc', this.props.data);
|
1012
|
-
this.handleAction(
|
1013
|
-
e,
|
1014
|
-
{...action, required: undefined},
|
1015
|
-
data,
|
1016
|
-
throwErrors,
|
1017
|
-
delegate
|
1018
|
-
);
|
1019
|
-
return;
|
1006
|
+
if (!dispatcher?.prevented) {
|
1007
|
+
env.notify('error', __('Form.validateFailed'));
|
1020
1008
|
}
|
1021
|
-
|
1009
|
+
|
1010
|
+
/** 抛异常是为了在dialog中catch这个错误,避免弹窗直接关闭 */
|
1011
|
+
return Promise.reject(__('Form.validateFailed'));
|
1012
|
+
}
|
1022
1013
|
}
|
1023
1014
|
if (
|
1024
1015
|
action.type === 'submit' ||
|
package/src/utils/helper.ts
CHANGED
@@ -22,7 +22,7 @@ import {
|
|
22
22
|
resolveVariable,
|
23
23
|
resolveVariableAndFilter
|
24
24
|
} from 'amis-formula';
|
25
|
-
import {isObservable} from 'mobx';
|
25
|
+
import {isObservable, isObservableArray} from 'mobx';
|
26
26
|
|
27
27
|
export {
|
28
28
|
createObject,
|
@@ -937,7 +937,7 @@ export function everyTree<T extends TreeItem>(
|
|
937
937
|
paths: Array<T> = [],
|
938
938
|
indexes: Array<number> = []
|
939
939
|
): boolean {
|
940
|
-
if (!Array.isArray(tree)) {
|
940
|
+
if (!Array.isArray(tree) && !isObservableArray(tree)) {
|
941
941
|
return false;
|
942
942
|
}
|
943
943
|
return tree.every((item, index) => {
|