amis-core 3.4.2 → 3.5.0
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/esm/Root.js +1 -1
- package/esm/RootRenderer.js +12 -2
- package/esm/SchemaRenderer.js +1 -1
- package/esm/Scoped.js +2 -2
- package/esm/StatusScoped.js +1 -1
- package/esm/WithRootStore.js +1 -1
- package/esm/WithStore.js +8 -4
- package/esm/actions/Action.js +1 -1
- package/esm/actions/AjaxAction.js +1 -1
- package/esm/actions/BreakAction.js +1 -1
- package/esm/actions/BroadcastAction.js +1 -1
- package/esm/actions/CmptAction.d.ts +1 -0
- package/esm/actions/CmptAction.js +23 -23
- package/esm/actions/ContinueAction.js +1 -1
- package/esm/actions/CopyAction.js +1 -1
- package/esm/actions/CustomAction.js +2 -2
- package/esm/actions/DialogAction.js +1 -1
- package/esm/actions/DrawerAction.js +1 -1
- package/esm/actions/EmailAction.js +1 -1
- package/esm/actions/LinkAction.js +1 -1
- package/esm/actions/LoopAction.js +1 -1
- package/esm/actions/PageAction.js +1 -1
- package/esm/actions/ParallelAction.js +1 -1
- package/esm/actions/StatusAction.js +1 -1
- package/esm/actions/SwitchAction.js +1 -1
- package/esm/actions/ToastAction.js +1 -1
- package/esm/components/CustomStyle.js +9 -9
- package/esm/components/LazyComponent.js +1 -1
- package/esm/components/Overlay.js +2 -1
- package/esm/components/PopOver.js +2 -2
- package/esm/env.d.ts +11 -3
- package/esm/env.js +1 -1
- package/esm/envOverwrite.js +1 -1
- package/esm/factory.js +1 -3
- package/esm/index.d.ts +1 -0
- package/esm/index.js +4 -4
- package/esm/locale.js +1 -1
- package/esm/polyfills.js +1 -1
- package/esm/renderers/Form.js +10 -4
- package/esm/renderers/Item.d.ts +2 -6
- package/esm/renderers/Item.js +11 -17
- package/esm/renderers/Options.js +2 -2
- package/esm/renderers/Placeholder.js +1 -1
- package/esm/renderers/builtin.js +1 -1
- package/esm/renderers/register.js +1 -1
- package/esm/renderers/wrapControl.js +41 -22
- package/esm/store/app.js +7 -5
- package/esm/store/combo.d.ts +120 -0
- package/esm/store/combo.js +3 -2
- package/esm/store/crud.d.ts +13 -2
- package/esm/store/crud.js +88 -23
- package/esm/store/form.d.ts +50 -0
- package/esm/store/form.js +5 -2
- package/esm/store/formItem.d.ts +1 -0
- package/esm/store/formItem.js +18 -6
- package/esm/store/iRenderer.js +2 -2
- package/esm/store/index.js +1 -1
- package/esm/store/list.js +1 -1
- package/esm/store/manager.js +1 -1
- package/esm/store/modal.js +1 -1
- package/esm/store/node.js +1 -1
- package/esm/store/pagination.js +1 -1
- package/esm/store/root.js +2 -2
- package/esm/store/service.js +1 -1
- package/esm/store/status.js +1 -1
- package/esm/store/table.d.ts +454 -83
- package/esm/store/table.js +114 -74
- package/esm/store/table2.d.ts +1 -1
- package/esm/store/table2.js +5 -4
- package/esm/theme.js +1 -1
- package/esm/types.d.ts +6 -0
- package/esm/utils/Animation.js +1 -1
- package/esm/utils/ColorScale.js +1 -1
- package/esm/utils/DataSchema.js +1 -1
- package/esm/utils/DataScope.js +1 -1
- package/esm/utils/RootClose.js +1 -1
- package/esm/utils/SimpleMap.js +1 -1
- package/esm/utils/api.js +2 -1
- package/esm/utils/arraySlice.js +1 -1
- package/esm/utils/attachmentAdpator.d.ts +2 -1
- package/esm/utils/attachmentAdpator.js +17 -11
- package/esm/utils/autobind.js +1 -1
- package/esm/utils/columnsSplit.js +1 -1
- package/esm/utils/dataMapping.js +1 -1
- package/esm/utils/date.js +1 -1
- package/esm/utils/debug.d.ts +1 -1
- package/esm/utils/debug.js +5 -3
- package/esm/utils/decodeEntity.js +1 -1
- package/esm/utils/dom.js +1 -1
- package/esm/utils/errors.js +1 -1
- package/esm/utils/escapeHtml.js +1 -1
- package/esm/utils/filter-schema.d.ts +8 -0
- package/esm/utils/filter-schema.js +32 -14
- package/esm/utils/filter.js +1 -1
- package/esm/utils/formatDuration.js +1 -1
- package/esm/utils/formula.js +1 -1
- package/esm/utils/getVariable.js +1 -1
- package/esm/utils/grammar.js +1 -1
- package/esm/utils/handleAction.js +2 -1
- package/esm/utils/helper.d.ts +15 -1
- package/esm/utils/helper.js +59 -12
- package/esm/utils/highlight.js +1 -1
- package/esm/utils/icon.js +1 -1
- package/esm/utils/image.js +1 -1
- package/esm/utils/isPureVariable.js +1 -1
- package/esm/utils/json-schema-2-amis-schema.js +1 -1
- package/esm/utils/keyToPath.js +1 -1
- package/esm/utils/makeSorter.js +1 -1
- package/esm/utils/math.js +1 -1
- package/esm/utils/memoryParse.js +1 -1
- package/esm/utils/normalizeLink.js +1 -1
- package/esm/utils/normalizeOptions.js +1 -1
- package/esm/utils/object.js +1 -1
- package/esm/utils/offset.js +1 -1
- package/esm/utils/offsetParent.js +1 -1
- package/esm/utils/optionValueCompare.js +1 -1
- package/esm/utils/position.js +1 -1
- package/esm/utils/prettyBytes.js +1 -1
- package/esm/utils/renderer-event.js +1 -1
- package/esm/utils/replaceText.d.ts +1 -1
- package/esm/utils/replaceText.js +9 -4
- package/esm/utils/resize-sensor.js +1 -1
- package/esm/utils/resolveCondition.js +1 -1
- package/esm/utils/resolveVariable.js +1 -1
- package/esm/utils/resolveVariableAndFilter.js +1 -1
- package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
- package/esm/utils/scrollPosition.js +1 -1
- package/esm/utils/string2regExp.js +1 -1
- package/esm/utils/stripNumber.js +1 -1
- package/esm/utils/style-helper.js +5 -4
- package/esm/utils/style.js +1 -1
- package/esm/utils/toNumber.js +1 -1
- package/esm/utils/tokenize.js +1 -1
- package/esm/utils/tpl-builtin.js +1 -1
- package/esm/utils/tpl-lodash.js +1 -1
- package/esm/utils/tpl.js +1 -1
- package/esm/utils/uncontrollable.js +1 -1
- package/esm/utils/validations.js +1 -1
- package/lib/Root.js +1 -1
- package/lib/RootRenderer.js +12 -2
- package/lib/SchemaRenderer.js +1 -1
- package/lib/Scoped.js +2 -2
- package/lib/StatusScoped.js +1 -1
- package/lib/WithRootStore.js +1 -1
- package/lib/WithStore.js +8 -4
- package/lib/actions/Action.js +1 -1
- package/lib/actions/AjaxAction.js +1 -1
- package/lib/actions/BreakAction.js +1 -1
- package/lib/actions/BroadcastAction.js +1 -1
- package/lib/actions/CmptAction.d.ts +1 -0
- package/lib/actions/CmptAction.js +23 -23
- package/lib/actions/ContinueAction.js +1 -1
- package/lib/actions/CopyAction.js +1 -1
- package/lib/actions/CustomAction.js +2 -2
- package/lib/actions/DialogAction.js +1 -1
- package/lib/actions/DrawerAction.js +1 -1
- package/lib/actions/EmailAction.js +1 -1
- package/lib/actions/LinkAction.js +1 -1
- package/lib/actions/LoopAction.js +1 -1
- package/lib/actions/PageAction.js +1 -1
- package/lib/actions/ParallelAction.js +1 -1
- package/lib/actions/StatusAction.js +1 -1
- package/lib/actions/SwitchAction.js +1 -1
- package/lib/actions/ToastAction.js +1 -1
- package/lib/components/CustomStyle.js +9 -9
- package/lib/components/LazyComponent.js +1 -1
- package/lib/components/Overlay.js +2 -1
- package/lib/components/PopOver.js +2 -2
- package/lib/env.d.ts +11 -3
- package/lib/env.js +1 -1
- package/lib/envOverwrite.js +1 -1
- package/lib/factory.js +1 -3
- package/lib/index.d.ts +1 -0
- package/lib/index.js +7 -2
- package/lib/locale.js +1 -1
- package/lib/polyfills.js +1 -1
- package/lib/renderers/Form.js +10 -4
- package/lib/renderers/Item.d.ts +2 -6
- package/lib/renderers/Item.js +11 -17
- package/lib/renderers/Options.js +2 -2
- package/lib/renderers/Placeholder.js +1 -1
- package/lib/renderers/builtin.js +1 -1
- package/lib/renderers/register.js +1 -1
- package/lib/renderers/wrapControl.js +41 -22
- package/lib/store/app.js +6 -4
- package/lib/store/combo.d.ts +144 -25
- package/lib/store/combo.js +3 -2
- package/lib/store/crud.d.ts +13 -2
- package/lib/store/crud.js +88 -23
- package/lib/store/form.d.ts +60 -11
- package/lib/store/form.js +5 -2
- package/lib/store/formItem.d.ts +1 -0
- package/lib/store/formItem.js +16 -4
- package/lib/store/iRenderer.js +2 -2
- package/lib/store/index.js +1 -1
- package/lib/store/list.js +1 -1
- package/lib/store/manager.js +1 -1
- package/lib/store/modal.js +1 -1
- package/lib/store/node.js +1 -1
- package/lib/store/pagination.js +1 -1
- package/lib/store/root.js +2 -2
- package/lib/store/service.js +1 -1
- package/lib/store/status.js +1 -1
- package/lib/store/table.d.ts +474 -104
- package/lib/store/table.js +112 -72
- package/lib/store/table2.d.ts +1 -1
- package/lib/store/table2.js +5 -4
- package/lib/theme.js +1 -1
- package/lib/types.d.ts +6 -0
- package/lib/utils/Animation.js +1 -1
- package/lib/utils/ColorScale.js +1 -1
- package/lib/utils/DataSchema.js +1 -1
- package/lib/utils/DataScope.js +1 -1
- package/lib/utils/RootClose.js +1 -1
- package/lib/utils/SimpleMap.js +1 -1
- package/lib/utils/api.js +2 -1
- package/lib/utils/arraySlice.js +1 -1
- package/lib/utils/attachmentAdpator.d.ts +2 -1
- package/lib/utils/attachmentAdpator.js +17 -11
- package/lib/utils/autobind.js +1 -1
- package/lib/utils/columnsSplit.js +1 -1
- package/lib/utils/dataMapping.js +1 -1
- package/lib/utils/date.js +1 -1
- package/lib/utils/debug.d.ts +1 -1
- package/lib/utils/debug.js +4 -2
- package/lib/utils/decodeEntity.js +1 -1
- package/lib/utils/dom.js +1 -1
- package/lib/utils/errors.js +1 -1
- package/lib/utils/escapeHtml.js +1 -1
- package/lib/utils/filter-schema.d.ts +8 -0
- package/lib/utils/filter-schema.js +31 -13
- package/lib/utils/filter.js +1 -1
- package/lib/utils/formatDuration.js +1 -1
- package/lib/utils/formula.js +1 -1
- package/lib/utils/getVariable.js +1 -1
- package/lib/utils/grammar.js +1 -1
- package/lib/utils/handleAction.js +2 -1
- package/lib/utils/helper.d.ts +15 -1
- package/lib/utils/helper.js +62 -11
- package/lib/utils/highlight.js +1 -1
- package/lib/utils/icon.js +1 -1
- package/lib/utils/image.js +1 -1
- package/lib/utils/isPureVariable.js +1 -1
- package/lib/utils/json-schema-2-amis-schema.js +1 -1
- package/lib/utils/keyToPath.js +1 -1
- package/lib/utils/makeSorter.js +1 -1
- package/lib/utils/math.js +1 -1
- package/lib/utils/memoryParse.js +1 -1
- package/lib/utils/normalizeLink.js +1 -1
- package/lib/utils/normalizeOptions.js +1 -1
- package/lib/utils/object.js +1 -1
- package/lib/utils/offset.js +1 -1
- package/lib/utils/offsetParent.js +1 -1
- package/lib/utils/optionValueCompare.js +1 -1
- package/lib/utils/position.js +1 -1
- package/lib/utils/prettyBytes.js +1 -1
- package/lib/utils/renderer-event.js +1 -1
- package/lib/utils/replaceText.d.ts +1 -1
- package/lib/utils/replaceText.js +9 -4
- package/lib/utils/resize-sensor.js +1 -1
- package/lib/utils/resolveCondition.js +1 -1
- package/lib/utils/resolveVariable.js +1 -1
- package/lib/utils/resolveVariableAndFilter.js +1 -1
- package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
- package/lib/utils/scrollPosition.js +1 -1
- package/lib/utils/string2regExp.js +1 -1
- package/lib/utils/stripNumber.js +1 -1
- package/lib/utils/style-helper.js +6 -4
- package/lib/utils/style.js +1 -1
- package/lib/utils/toNumber.js +1 -1
- package/lib/utils/tokenize.js +1 -1
- package/lib/utils/tpl-builtin.js +1 -1
- package/lib/utils/tpl-lodash.js +1 -1
- package/lib/utils/tpl.js +1 -1
- package/lib/utils/uncontrollable.js +1 -1
- package/lib/utils/validations.js +1 -1
- package/package.json +4 -3
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v3.
|
|
2
|
+
* amis-core v3.5.0
|
|
3
3
|
* Copyright 2018-2023 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -10,13 +10,31 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
10
10
|
var tpl = require('./tpl.js');
|
|
11
11
|
var helper = require('./helper.js');
|
|
12
12
|
var isPlainObject = require('lodash/isPlainObject');
|
|
13
|
-
var
|
|
13
|
+
var tokenize = require('./tokenize.js');
|
|
14
14
|
|
|
15
15
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
16
16
|
|
|
17
17
|
var isPlainObject__default = /*#__PURE__*/_interopDefaultLegacy(isPlainObject);
|
|
18
|
-
var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
|
|
19
18
|
|
|
19
|
+
/**
|
|
20
|
+
* 计算下发给子组件的className,处理对象类型的className,将其中的表达式计算出来,避免被classnames识别为true
|
|
21
|
+
*
|
|
22
|
+
* @param value - CSS类名值
|
|
23
|
+
* @param ctx - 数据域
|
|
24
|
+
*/
|
|
25
|
+
function filterClassNameObject(classValue, ctx) {
|
|
26
|
+
if (ctx === void 0) { ctx = {}; }
|
|
27
|
+
var result = classValue;
|
|
28
|
+
if (classValue && typeof classValue === 'string') {
|
|
29
|
+
result = tokenize.tokenize(classValue, ctx);
|
|
30
|
+
}
|
|
31
|
+
else if (classValue && isPlainObject__default["default"](classValue)) {
|
|
32
|
+
result = helper.mapObject(classValue, function (value) {
|
|
33
|
+
return typeof value === 'string' ? tpl.evalExpression(value, ctx) : value;
|
|
34
|
+
}, undefined, function (key) { return tokenize.tokenize(key, ctx); });
|
|
35
|
+
}
|
|
36
|
+
return result;
|
|
37
|
+
}
|
|
20
38
|
/**
|
|
21
39
|
* 处理 Props 数据,所有带 On 结束的做一次
|
|
22
40
|
*
|
|
@@ -37,13 +55,14 @@ function getExprProperties(schema, data, blackList, props) {
|
|
|
37
55
|
return;
|
|
38
56
|
}
|
|
39
57
|
var parts = /^(.*)(On|Expr|(?:c|C)lassName)(Raw)?$/.exec(key);
|
|
58
|
+
var type = parts === null || parts === void 0 ? void 0 : parts[2];
|
|
40
59
|
var value = schema[key];
|
|
41
60
|
if (value &&
|
|
42
61
|
typeof value === 'string' &&
|
|
43
62
|
(parts === null || parts === void 0 ? void 0 : parts[1]) &&
|
|
44
|
-
(
|
|
63
|
+
(type === 'On' || type === 'Expr')) {
|
|
45
64
|
key = parts[1];
|
|
46
|
-
if (
|
|
65
|
+
if (type === 'On' || type === 'Expr') {
|
|
47
66
|
if (!ctx &&
|
|
48
67
|
props &&
|
|
49
68
|
typeof value === 'string' &&
|
|
@@ -52,7 +71,7 @@ function getExprProperties(schema, data, blackList, props) {
|
|
|
52
71
|
__props: props
|
|
53
72
|
});
|
|
54
73
|
}
|
|
55
|
-
if (
|
|
74
|
+
if (type === 'On') {
|
|
56
75
|
value = (props === null || props === void 0 ? void 0 : props[key]) || tpl.evalExpression(value, ctx || data);
|
|
57
76
|
}
|
|
58
77
|
else {
|
|
@@ -61,18 +80,17 @@ function getExprProperties(schema, data, blackList, props) {
|
|
|
61
80
|
}
|
|
62
81
|
exprProps[key] = value;
|
|
63
82
|
}
|
|
64
|
-
else if (
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
83
|
+
else if ((type === 'className' || type === 'ClassName') &&
|
|
84
|
+
!(props === null || props === void 0 ? void 0 : props[key]) && // 如果 props 里面有则是 props 优先
|
|
85
|
+
value &&
|
|
86
|
+
(typeof value === 'string' || isPlainObject__default["default"](value))) {
|
|
68
87
|
exprProps["".concat(key, "Raw")] = value;
|
|
69
|
-
exprProps[key] =
|
|
70
|
-
return typeof value === 'string' ? tpl.evalExpression(value, data) : value;
|
|
71
|
-
}));
|
|
88
|
+
exprProps[key] = filterClassNameObject(value, data);
|
|
72
89
|
}
|
|
73
90
|
});
|
|
74
91
|
return exprProps;
|
|
75
92
|
}
|
|
76
93
|
|
|
77
94
|
exports["default"] = getExprProperties;
|
|
95
|
+
exports.filterClassNameObject = filterClassNameObject;
|
|
78
96
|
exports.getExprProperties = getExprProperties;
|
package/lib/utils/filter.js
CHANGED
package/lib/utils/formula.js
CHANGED
package/lib/utils/getVariable.js
CHANGED
package/lib/utils/grammar.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v3.
|
|
2
|
+
* amis-core v3.5.0
|
|
3
3
|
* Copyright 2018-2023 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -30,6 +30,7 @@ function handleAction(e, action, props, data) {
|
|
|
30
30
|
action.actionType = 'ajax';
|
|
31
31
|
var api$1 = api.normalizeApi(action.api);
|
|
32
32
|
api$1.responseType = 'blob';
|
|
33
|
+
api$1.downloadFileName = action.downloadFileName;
|
|
33
34
|
action.api = api$1;
|
|
34
35
|
}
|
|
35
36
|
onAction(e, action, data || props.data);
|
package/lib/utils/helper.d.ts
CHANGED
|
@@ -256,6 +256,7 @@ export declare function getTreeAncestors<T extends TreeItem>(tree: Array<T>, val
|
|
|
256
256
|
* @param value
|
|
257
257
|
*/
|
|
258
258
|
export declare function getTreeParent<T extends TreeItem>(tree: Array<T>, value: T): T | null;
|
|
259
|
+
export declare function countTree<T extends TreeItem>(tree: Array<T>, iterator?: (item: T, key: number, level: number, paths?: Array<T>) => any): number;
|
|
259
260
|
export declare function ucFirst(str?: string): string | undefined;
|
|
260
261
|
export declare function lcFirst(str?: string): string;
|
|
261
262
|
export declare function camel(str?: string): string;
|
|
@@ -273,7 +274,7 @@ export declare function qsparse(data: string, options?: any): qs.ParsedQs;
|
|
|
273
274
|
export declare function object2formData(data: any, options?: any, fd?: FormData): any;
|
|
274
275
|
export declare function chainFunctions(...fns: Array<(...args: Array<any>) => void>): (...args: Array<any>) => void;
|
|
275
276
|
export declare function chainEvents(props: any, schema: any): any;
|
|
276
|
-
export declare function mapObject(value: any,
|
|
277
|
+
export declare function mapObject(value: any, valueMapper: (value: any) => any, skipFn?: (value: any) => boolean, keyMapper?: (key: string) => string): any;
|
|
277
278
|
export declare function loadScript(src: string): Promise<void>;
|
|
278
279
|
export declare function loadStyle(href: string): Promise<void>;
|
|
279
280
|
export declare class SkipOperation extends Error {
|
|
@@ -345,15 +346,26 @@ export declare function convertArrayValueToMoment(value: number[], types: string
|
|
|
345
346
|
export declare function getRange(min: number, max: number, step?: number): number[];
|
|
346
347
|
export declare function repeatCount(count: number, iterator: (index: number) => any): any[];
|
|
347
348
|
export declare function isNumeric(value: any): boolean;
|
|
349
|
+
/**
|
|
350
|
+
* 解析Query字符串中的原始类型,目前仅支持转化布尔类型
|
|
351
|
+
*
|
|
352
|
+
* @param query 查询字符串
|
|
353
|
+
* @returns 解析后的查询字符串
|
|
354
|
+
*/
|
|
355
|
+
export declare function parsePrimitiveQueryString(rawQuery: Record<string, any>): any;
|
|
348
356
|
/**
|
|
349
357
|
* 获取URL链接中的query参数(包含hash mode)
|
|
350
358
|
*
|
|
351
359
|
* @param location Location对象,或者类Location结构的对象
|
|
360
|
+
* @param {Object} options 配置项
|
|
361
|
+
* @param {Boolean} options.parsePrimitive 是否将query的值解析为原始类型,目前仅支持转化布尔类型
|
|
352
362
|
*/
|
|
353
363
|
export declare function parseQuery(location?: Location | {
|
|
354
364
|
query?: any;
|
|
355
365
|
search?: any;
|
|
356
366
|
[propName: string]: any;
|
|
367
|
+
}, options?: {
|
|
368
|
+
parsePrimitive?: boolean;
|
|
357
369
|
}): Record<string, any>;
|
|
358
370
|
export declare function differenceFromAll<T>(allOptions: Array<T>, options: Array<T>, getValue: (item: T) => any): Array<T>;
|
|
359
371
|
/**
|
|
@@ -364,3 +376,5 @@ export declare function differenceFromAll<T>(allOptions: Array<T>, options: Arra
|
|
|
364
376
|
*/
|
|
365
377
|
export declare function buildTrackExpression(schema: any): string;
|
|
366
378
|
export declare function evalTrackExpression(expression: string, data: Record<string, any>): string;
|
|
379
|
+
export declare function importLazyComponent(mod: any): any;
|
|
380
|
+
export declare function replaceUrlParams(path: string, params: Record<string, any>): string;
|
package/lib/utils/helper.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v3.
|
|
2
|
+
* amis-core v3.5.0
|
|
3
3
|
* Copyright 2018-2023 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -18,6 +18,7 @@ var isNaN = require('lodash/isNaN');
|
|
|
18
18
|
var isNumber = require('lodash/isNumber');
|
|
19
19
|
var isString = require('lodash/isString');
|
|
20
20
|
var qs = require('qs');
|
|
21
|
+
var pathToRegexp = require('path-to-regexp');
|
|
21
22
|
var tpl = require('./tpl.js');
|
|
22
23
|
var autobind$1 = require('./autobind.js');
|
|
23
24
|
require('amis-formula');
|
|
@@ -919,6 +920,15 @@ function getTreeParent(tree, value) {
|
|
|
919
920
|
var ancestors = getTreeAncestors(tree, value);
|
|
920
921
|
return (ancestors === null || ancestors === void 0 ? void 0 : ancestors.length) ? ancestors[ancestors.length - 1] : null;
|
|
921
922
|
}
|
|
923
|
+
function countTree(tree, iterator) {
|
|
924
|
+
var count = 0;
|
|
925
|
+
eachTree(tree, function (item, key, level, paths) {
|
|
926
|
+
if (!iterator || iterator(item, key, level, paths)) {
|
|
927
|
+
count++;
|
|
928
|
+
}
|
|
929
|
+
});
|
|
930
|
+
return count;
|
|
931
|
+
}
|
|
922
932
|
function ucFirst(str) {
|
|
923
933
|
return typeof str === 'string'
|
|
924
934
|
? str.substring(0, 1).toUpperCase() + str.substring(1)
|
|
@@ -1079,7 +1089,7 @@ function chainEvents(props, schema) {
|
|
|
1079
1089
|
});
|
|
1080
1090
|
return ret;
|
|
1081
1091
|
}
|
|
1082
|
-
function mapObject(value,
|
|
1092
|
+
function mapObject(value, valueMapper, skipFn, keyMapper) {
|
|
1083
1093
|
// 如果value值满足skipFn条件则不做map操作
|
|
1084
1094
|
skipFn =
|
|
1085
1095
|
skipFn && typeof skipFn === 'function'
|
|
@@ -1091,20 +1101,21 @@ function mapObject(value, fn, skipFn) {
|
|
|
1091
1101
|
}
|
|
1092
1102
|
return false;
|
|
1093
1103
|
};
|
|
1094
|
-
if (
|
|
1104
|
+
if (skipFn(value)) {
|
|
1095
1105
|
return value;
|
|
1096
1106
|
}
|
|
1097
1107
|
if (Array.isArray(value)) {
|
|
1098
|
-
return value.map(function (item) { return mapObject(item,
|
|
1108
|
+
return value.map(function (item) { return mapObject(item, valueMapper, skipFn, keyMapper); });
|
|
1099
1109
|
}
|
|
1100
1110
|
if (object.isObject(value)) {
|
|
1101
|
-
var tmpValue_1 =
|
|
1102
|
-
Object.keys(
|
|
1103
|
-
|
|
1111
|
+
var tmpValue_1 = {};
|
|
1112
|
+
Object.keys(value).forEach(function (key) {
|
|
1113
|
+
var newKey = keyMapper ? keyMapper(key) : key;
|
|
1114
|
+
tmpValue_1[newKey] = mapObject(value[key], valueMapper, skipFn, keyMapper);
|
|
1104
1115
|
});
|
|
1105
1116
|
return tmpValue_1;
|
|
1106
1117
|
}
|
|
1107
|
-
return
|
|
1118
|
+
return valueMapper(value);
|
|
1108
1119
|
}
|
|
1109
1120
|
function loadScript(src) {
|
|
1110
1121
|
return new Promise(function (ok, fail) {
|
|
@@ -1229,7 +1240,7 @@ function getScrollbarWidth() {
|
|
|
1229
1240
|
// 后续改用 FormulaExec['formula']
|
|
1230
1241
|
function resolveValueByName(data, name, canAccessSuper) {
|
|
1231
1242
|
return isPureVariable.isPureVariable(name)
|
|
1232
|
-
? resolveVariableAndFilter.resolveVariableAndFilter(name, data)
|
|
1243
|
+
? resolveVariableAndFilter.resolveVariableAndFilter(name, data, '|raw')
|
|
1233
1244
|
: resolveVariable.resolveVariable(name, data, canAccessSuper);
|
|
1234
1245
|
}
|
|
1235
1246
|
// 统一的获取 value 值方法
|
|
@@ -1432,16 +1443,43 @@ function isNumeric(value) {
|
|
|
1432
1443
|
}
|
|
1433
1444
|
return /^[-+]?(?:\d*[.])?\d+$/.test(value);
|
|
1434
1445
|
}
|
|
1446
|
+
/**
|
|
1447
|
+
* 解析Query字符串中的原始类型,目前仅支持转化布尔类型
|
|
1448
|
+
*
|
|
1449
|
+
* @param query 查询字符串
|
|
1450
|
+
* @returns 解析后的查询字符串
|
|
1451
|
+
*/
|
|
1452
|
+
function parsePrimitiveQueryString(rawQuery) {
|
|
1453
|
+
if (!isPlainObject__default["default"](rawQuery)) {
|
|
1454
|
+
return rawQuery;
|
|
1455
|
+
}
|
|
1456
|
+
var query = JSONValueMap(rawQuery, function (value) {
|
|
1457
|
+
/** 解析布尔类型,后续有需要在这里扩充 */
|
|
1458
|
+
if (value === 'true' || value === 'false') {
|
|
1459
|
+
return value === 'true';
|
|
1460
|
+
}
|
|
1461
|
+
return value;
|
|
1462
|
+
});
|
|
1463
|
+
return query;
|
|
1464
|
+
}
|
|
1435
1465
|
/**
|
|
1436
1466
|
* 获取URL链接中的query参数(包含hash mode)
|
|
1437
1467
|
*
|
|
1438
1468
|
* @param location Location对象,或者类Location结构的对象
|
|
1469
|
+
* @param {Object} options 配置项
|
|
1470
|
+
* @param {Boolean} options.parsePrimitive 是否将query的值解析为原始类型,目前仅支持转化布尔类型
|
|
1439
1471
|
*/
|
|
1440
|
-
function parseQuery(location) {
|
|
1472
|
+
function parseQuery(location, options) {
|
|
1441
1473
|
var _a;
|
|
1474
|
+
var _b = (options || {}).parsePrimitive, parsePrimitive = _b === void 0 ? false : _b;
|
|
1442
1475
|
var query = (location && !(location instanceof Location) && (location === null || location === void 0 ? void 0 : location.query)) ||
|
|
1443
1476
|
(location && (location === null || location === void 0 ? void 0 : location.search) && qsparse(location.search.substring(1))) ||
|
|
1444
1477
|
(window.location.search && qsparse(window.location.search.substring(1)));
|
|
1478
|
+
var normalizedQuery = isPlainObject__default["default"](query)
|
|
1479
|
+
? parsePrimitive
|
|
1480
|
+
? parsePrimitiveQueryString(query)
|
|
1481
|
+
: query
|
|
1482
|
+
: {};
|
|
1445
1483
|
/* 处理hash中的query */
|
|
1446
1484
|
var hash = (_a = window.location) === null || _a === void 0 ? void 0 : _a.hash;
|
|
1447
1485
|
var hashQuery = {};
|
|
@@ -1449,7 +1487,6 @@ function parseQuery(location) {
|
|
|
1449
1487
|
if (typeof hash === 'string' && ~(idx = hash.indexOf('?'))) {
|
|
1450
1488
|
hashQuery = qsparse(hash.substring(idx + 1));
|
|
1451
1489
|
}
|
|
1452
|
-
var normalizedQuery = isPlainObject__default["default"](query) ? query : {};
|
|
1453
1490
|
return merge__default["default"](normalizedQuery, hashQuery);
|
|
1454
1491
|
}
|
|
1455
1492
|
/**
|
|
@@ -1552,6 +1589,16 @@ function evalTrackExpression(expression, data) {
|
|
|
1552
1589
|
})
|
|
1553
1590
|
.join('');
|
|
1554
1591
|
}
|
|
1592
|
+
// 很奇怪的问题,react-json-view import 有些情况下 mod.default 才是 esModule
|
|
1593
|
+
function importLazyComponent(mod) {
|
|
1594
|
+
return mod.default.__esModule ? mod.default : mod;
|
|
1595
|
+
}
|
|
1596
|
+
function replaceUrlParams(path, params) {
|
|
1597
|
+
if (typeof path === 'string' && /\:\w+/.test(path)) {
|
|
1598
|
+
return pathToRegexp.compile(path)(params);
|
|
1599
|
+
}
|
|
1600
|
+
return path;
|
|
1601
|
+
}
|
|
1555
1602
|
|
|
1556
1603
|
exports.cloneObject = object.cloneObject;
|
|
1557
1604
|
exports.createObject = object.createObject;
|
|
@@ -1576,6 +1623,7 @@ exports.chainEvents = chainEvents;
|
|
|
1576
1623
|
exports.chainFunctions = chainFunctions;
|
|
1577
1624
|
exports.changedEffect = changedEffect;
|
|
1578
1625
|
exports.convertArrayValueToMoment = convertArrayValueToMoment;
|
|
1626
|
+
exports.countTree = countTree;
|
|
1579
1627
|
exports.detectPropValueChanged = detectPropValueChanged;
|
|
1580
1628
|
exports.difference = difference;
|
|
1581
1629
|
exports.differenceFromAll = differenceFromAll;
|
|
@@ -1607,6 +1655,7 @@ exports.hasOwnPropertyInPath = hasOwnPropertyInPath;
|
|
|
1607
1655
|
exports.hasVisibleExpression = hasVisibleExpression;
|
|
1608
1656
|
exports.hashCode = hashCode;
|
|
1609
1657
|
exports.immutableExtends = immutableExtends;
|
|
1658
|
+
exports.importLazyComponent = importLazyComponent;
|
|
1610
1659
|
exports.injectPropsToObject = injectPropsToObject;
|
|
1611
1660
|
exports.isArrayChildrenModified = isArrayChildrenModified;
|
|
1612
1661
|
exports.isBreakpoint = isBreakpoint;
|
|
@@ -1631,6 +1680,7 @@ exports.normalizeNodePath = normalizeNodePath;
|
|
|
1631
1680
|
exports.object2formData = object2formData;
|
|
1632
1681
|
exports.omitControls = omitControls;
|
|
1633
1682
|
exports.padArr = padArr;
|
|
1683
|
+
exports.parsePrimitiveQueryString = parsePrimitiveQueryString;
|
|
1634
1684
|
exports.parseQuery = parseQuery;
|
|
1635
1685
|
exports.pickEventsProps = pickEventsProps;
|
|
1636
1686
|
exports.preventDefault = preventDefault;
|
|
@@ -1640,6 +1690,7 @@ exports.qsstringify = qsstringify;
|
|
|
1640
1690
|
exports.range = range;
|
|
1641
1691
|
exports.removeHTMLTag = removeHTMLTag;
|
|
1642
1692
|
exports.repeatCount = repeatCount;
|
|
1693
|
+
exports.replaceUrlParams = replaceUrlParams;
|
|
1643
1694
|
exports.rmUndefined = rmUndefined;
|
|
1644
1695
|
exports.someTree = someTree;
|
|
1645
1696
|
exports.sortArray = sortArray;
|
package/lib/utils/highlight.js
CHANGED
package/lib/utils/icon.js
CHANGED
package/lib/utils/image.js
CHANGED
package/lib/utils/keyToPath.js
CHANGED
package/lib/utils/makeSorter.js
CHANGED
package/lib/utils/math.js
CHANGED
package/lib/utils/memoryParse.js
CHANGED
package/lib/utils/object.js
CHANGED
package/lib/utils/offset.js
CHANGED
package/lib/utils/position.js
CHANGED
package/lib/utils/prettyBytes.js
CHANGED
package/lib/utils/replaceText.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v3.
|
|
2
|
+
* amis-core v3.5.0
|
|
3
3
|
* Copyright 2018-2023 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -22,13 +22,18 @@ function replaceText(schema, replaceText, replaceTextIgnoreKeys) {
|
|
|
22
22
|
var replicaSchema = cloneDeep__default["default"](schema);
|
|
23
23
|
var replaceKeys_1 = Object.keys(replaceText);
|
|
24
24
|
replaceKeys_1.sort(function (a, b) { return b.length - a.length; }); // 避免用户将短的放前面
|
|
25
|
-
var IgnoreKeys_1 = new Set(replaceTextIgnoreKeys
|
|
25
|
+
var IgnoreKeys_1 = new Set(Array.isArray(replaceTextIgnoreKeys) ? replaceTextIgnoreKeys : []);
|
|
26
|
+
var ignore_1 = typeof replaceTextIgnoreKeys === 'function'
|
|
27
|
+
? replaceTextIgnoreKeys
|
|
28
|
+
: function (key) {
|
|
29
|
+
return IgnoreKeys_1.has(key);
|
|
30
|
+
};
|
|
26
31
|
helper.JSONTraverse(replicaSchema, function (value, key, object) {
|
|
27
32
|
var e_1, _a;
|
|
28
33
|
var descriptor = Object.getOwnPropertyDescriptor(object, key);
|
|
29
34
|
if (typeof value === 'string' &&
|
|
30
|
-
|
|
31
|
-
(
|
|
35
|
+
(descriptor === null || descriptor === void 0 ? void 0 : descriptor.writable) &&
|
|
36
|
+
!ignore_1(key, value, object)) {
|
|
32
37
|
try {
|
|
33
38
|
for (var replaceKeys_2 = tslib.__values(replaceKeys_1), replaceKeys_2_1 = replaceKeys_2.next(); !replaceKeys_2_1.done; replaceKeys_2_1 = replaceKeys_2.next()) {
|
|
34
39
|
var replaceKey = replaceKeys_2_1.value;
|
package/lib/utils/stripNumber.js
CHANGED