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,13 +1,32 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v3.
|
|
2
|
+
* amis-core v3.5.0
|
|
3
3
|
* Copyright 2018-2023 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import { evalExpression, filter } from './tpl.js';
|
|
7
|
-
import {
|
|
7
|
+
import { mapObject, injectPropsToObject } from './helper.js';
|
|
8
8
|
import isPlainObject from 'lodash/isPlainObject';
|
|
9
|
-
import
|
|
9
|
+
import { tokenize } from './tokenize.js';
|
|
10
10
|
|
|
11
|
+
/**
|
|
12
|
+
* 计算下发给子组件的className,处理对象类型的className,将其中的表达式计算出来,避免被classnames识别为true
|
|
13
|
+
*
|
|
14
|
+
* @param value - CSS类名值
|
|
15
|
+
* @param ctx - 数据域
|
|
16
|
+
*/
|
|
17
|
+
function filterClassNameObject(classValue, ctx) {
|
|
18
|
+
if (ctx === void 0) { ctx = {}; }
|
|
19
|
+
var result = classValue;
|
|
20
|
+
if (classValue && typeof classValue === 'string') {
|
|
21
|
+
result = tokenize(classValue, ctx);
|
|
22
|
+
}
|
|
23
|
+
else if (classValue && isPlainObject(classValue)) {
|
|
24
|
+
result = mapObject(classValue, function (value) {
|
|
25
|
+
return typeof value === 'string' ? evalExpression(value, ctx) : value;
|
|
26
|
+
}, undefined, function (key) { return tokenize(key, ctx); });
|
|
27
|
+
}
|
|
28
|
+
return result;
|
|
29
|
+
}
|
|
11
30
|
/**
|
|
12
31
|
* 处理 Props 数据,所有带 On 结束的做一次
|
|
13
32
|
*
|
|
@@ -28,13 +47,14 @@ function getExprProperties(schema, data, blackList, props) {
|
|
|
28
47
|
return;
|
|
29
48
|
}
|
|
30
49
|
var parts = /^(.*)(On|Expr|(?:c|C)lassName)(Raw)?$/.exec(key);
|
|
50
|
+
var type = parts === null || parts === void 0 ? void 0 : parts[2];
|
|
31
51
|
var value = schema[key];
|
|
32
52
|
if (value &&
|
|
33
53
|
typeof value === 'string' &&
|
|
34
54
|
(parts === null || parts === void 0 ? void 0 : parts[1]) &&
|
|
35
|
-
(
|
|
55
|
+
(type === 'On' || type === 'Expr')) {
|
|
36
56
|
key = parts[1];
|
|
37
|
-
if (
|
|
57
|
+
if (type === 'On' || type === 'Expr') {
|
|
38
58
|
if (!ctx &&
|
|
39
59
|
props &&
|
|
40
60
|
typeof value === 'string' &&
|
|
@@ -43,7 +63,7 @@ function getExprProperties(schema, data, blackList, props) {
|
|
|
43
63
|
__props: props
|
|
44
64
|
});
|
|
45
65
|
}
|
|
46
|
-
if (
|
|
66
|
+
if (type === 'On') {
|
|
47
67
|
value = (props === null || props === void 0 ? void 0 : props[key]) || evalExpression(value, ctx || data);
|
|
48
68
|
}
|
|
49
69
|
else {
|
|
@@ -52,17 +72,15 @@ function getExprProperties(schema, data, blackList, props) {
|
|
|
52
72
|
}
|
|
53
73
|
exprProps[key] = value;
|
|
54
74
|
}
|
|
55
|
-
else if (
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
75
|
+
else if ((type === 'className' || type === 'ClassName') &&
|
|
76
|
+
!(props === null || props === void 0 ? void 0 : props[key]) && // 如果 props 里面有则是 props 优先
|
|
77
|
+
value &&
|
|
78
|
+
(typeof value === 'string' || isPlainObject(value))) {
|
|
59
79
|
exprProps["".concat(key, "Raw")] = value;
|
|
60
|
-
exprProps[key] =
|
|
61
|
-
return typeof value === 'string' ? evalExpression(value, data) : value;
|
|
62
|
-
}));
|
|
80
|
+
exprProps[key] = filterClassNameObject(value, data);
|
|
63
81
|
}
|
|
64
82
|
});
|
|
65
83
|
return exprProps;
|
|
66
84
|
}
|
|
67
85
|
|
|
68
|
-
export { getExprProperties as default, getExprProperties };
|
|
86
|
+
export { getExprProperties as default, filterClassNameObject, getExprProperties };
|
package/esm/utils/filter.js
CHANGED
package/esm/utils/formula.js
CHANGED
package/esm/utils/getVariable.js
CHANGED
package/esm/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
|
|
|
@@ -26,6 +26,7 @@ function handleAction(e, action, props, data) {
|
|
|
26
26
|
action.actionType = 'ajax';
|
|
27
27
|
var api = normalizeApi(action.api);
|
|
28
28
|
api.responseType = 'blob';
|
|
29
|
+
api.downloadFileName = action.downloadFileName;
|
|
29
30
|
action.api = api;
|
|
30
31
|
}
|
|
31
32
|
onAction(e, action, data || props.data);
|
package/esm/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/esm/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
|
|
|
@@ -14,6 +14,7 @@ import isNaN from 'lodash/isNaN';
|
|
|
14
14
|
import isNumber from 'lodash/isNumber';
|
|
15
15
|
import isString from 'lodash/isString';
|
|
16
16
|
import qs from 'qs';
|
|
17
|
+
import { compile } from 'path-to-regexp';
|
|
17
18
|
import { evalExpression } from './tpl.js';
|
|
18
19
|
import { autobindMethod } from './autobind.js';
|
|
19
20
|
import 'amis-formula';
|
|
@@ -905,6 +906,15 @@ function getTreeParent(tree, value) {
|
|
|
905
906
|
var ancestors = getTreeAncestors(tree, value);
|
|
906
907
|
return (ancestors === null || ancestors === void 0 ? void 0 : ancestors.length) ? ancestors[ancestors.length - 1] : null;
|
|
907
908
|
}
|
|
909
|
+
function countTree(tree, iterator) {
|
|
910
|
+
var count = 0;
|
|
911
|
+
eachTree(tree, function (item, key, level, paths) {
|
|
912
|
+
if (!iterator || iterator(item, key, level, paths)) {
|
|
913
|
+
count++;
|
|
914
|
+
}
|
|
915
|
+
});
|
|
916
|
+
return count;
|
|
917
|
+
}
|
|
908
918
|
function ucFirst(str) {
|
|
909
919
|
return typeof str === 'string'
|
|
910
920
|
? str.substring(0, 1).toUpperCase() + str.substring(1)
|
|
@@ -1065,7 +1075,7 @@ function chainEvents(props, schema) {
|
|
|
1065
1075
|
});
|
|
1066
1076
|
return ret;
|
|
1067
1077
|
}
|
|
1068
|
-
function mapObject(value,
|
|
1078
|
+
function mapObject(value, valueMapper, skipFn, keyMapper) {
|
|
1069
1079
|
// 如果value值满足skipFn条件则不做map操作
|
|
1070
1080
|
skipFn =
|
|
1071
1081
|
skipFn && typeof skipFn === 'function'
|
|
@@ -1077,20 +1087,21 @@ function mapObject(value, fn, skipFn) {
|
|
|
1077
1087
|
}
|
|
1078
1088
|
return false;
|
|
1079
1089
|
};
|
|
1080
|
-
if (
|
|
1090
|
+
if (skipFn(value)) {
|
|
1081
1091
|
return value;
|
|
1082
1092
|
}
|
|
1083
1093
|
if (Array.isArray(value)) {
|
|
1084
|
-
return value.map(function (item) { return mapObject(item,
|
|
1094
|
+
return value.map(function (item) { return mapObject(item, valueMapper, skipFn, keyMapper); });
|
|
1085
1095
|
}
|
|
1086
1096
|
if (isObject(value)) {
|
|
1087
|
-
var tmpValue_1 =
|
|
1088
|
-
Object.keys(
|
|
1089
|
-
|
|
1097
|
+
var tmpValue_1 = {};
|
|
1098
|
+
Object.keys(value).forEach(function (key) {
|
|
1099
|
+
var newKey = keyMapper ? keyMapper(key) : key;
|
|
1100
|
+
tmpValue_1[newKey] = mapObject(value[key], valueMapper, skipFn, keyMapper);
|
|
1090
1101
|
});
|
|
1091
1102
|
return tmpValue_1;
|
|
1092
1103
|
}
|
|
1093
|
-
return
|
|
1104
|
+
return valueMapper(value);
|
|
1094
1105
|
}
|
|
1095
1106
|
function loadScript(src) {
|
|
1096
1107
|
return new Promise(function (ok, fail) {
|
|
@@ -1215,7 +1226,7 @@ function getScrollbarWidth() {
|
|
|
1215
1226
|
// 后续改用 FormulaExec['formula']
|
|
1216
1227
|
function resolveValueByName(data, name, canAccessSuper) {
|
|
1217
1228
|
return isPureVariable(name)
|
|
1218
|
-
? resolveVariableAndFilter(name, data)
|
|
1229
|
+
? resolveVariableAndFilter(name, data, '|raw')
|
|
1219
1230
|
: resolveVariable(name, data, canAccessSuper);
|
|
1220
1231
|
}
|
|
1221
1232
|
// 统一的获取 value 值方法
|
|
@@ -1418,16 +1429,43 @@ function isNumeric(value) {
|
|
|
1418
1429
|
}
|
|
1419
1430
|
return /^[-+]?(?:\d*[.])?\d+$/.test(value);
|
|
1420
1431
|
}
|
|
1432
|
+
/**
|
|
1433
|
+
* 解析Query字符串中的原始类型,目前仅支持转化布尔类型
|
|
1434
|
+
*
|
|
1435
|
+
* @param query 查询字符串
|
|
1436
|
+
* @returns 解析后的查询字符串
|
|
1437
|
+
*/
|
|
1438
|
+
function parsePrimitiveQueryString(rawQuery) {
|
|
1439
|
+
if (!isPlainObject(rawQuery)) {
|
|
1440
|
+
return rawQuery;
|
|
1441
|
+
}
|
|
1442
|
+
var query = JSONValueMap(rawQuery, function (value) {
|
|
1443
|
+
/** 解析布尔类型,后续有需要在这里扩充 */
|
|
1444
|
+
if (value === 'true' || value === 'false') {
|
|
1445
|
+
return value === 'true';
|
|
1446
|
+
}
|
|
1447
|
+
return value;
|
|
1448
|
+
});
|
|
1449
|
+
return query;
|
|
1450
|
+
}
|
|
1421
1451
|
/**
|
|
1422
1452
|
* 获取URL链接中的query参数(包含hash mode)
|
|
1423
1453
|
*
|
|
1424
1454
|
* @param location Location对象,或者类Location结构的对象
|
|
1455
|
+
* @param {Object} options 配置项
|
|
1456
|
+
* @param {Boolean} options.parsePrimitive 是否将query的值解析为原始类型,目前仅支持转化布尔类型
|
|
1425
1457
|
*/
|
|
1426
|
-
function parseQuery(location) {
|
|
1458
|
+
function parseQuery(location, options) {
|
|
1427
1459
|
var _a;
|
|
1460
|
+
var _b = (options || {}).parsePrimitive, parsePrimitive = _b === void 0 ? false : _b;
|
|
1428
1461
|
var query = (location && !(location instanceof Location) && (location === null || location === void 0 ? void 0 : location.query)) ||
|
|
1429
1462
|
(location && (location === null || location === void 0 ? void 0 : location.search) && qsparse(location.search.substring(1))) ||
|
|
1430
1463
|
(window.location.search && qsparse(window.location.search.substring(1)));
|
|
1464
|
+
var normalizedQuery = isPlainObject(query)
|
|
1465
|
+
? parsePrimitive
|
|
1466
|
+
? parsePrimitiveQueryString(query)
|
|
1467
|
+
: query
|
|
1468
|
+
: {};
|
|
1431
1469
|
/* 处理hash中的query */
|
|
1432
1470
|
var hash = (_a = window.location) === null || _a === void 0 ? void 0 : _a.hash;
|
|
1433
1471
|
var hashQuery = {};
|
|
@@ -1435,7 +1473,6 @@ function parseQuery(location) {
|
|
|
1435
1473
|
if (typeof hash === 'string' && ~(idx = hash.indexOf('?'))) {
|
|
1436
1474
|
hashQuery = qsparse(hash.substring(idx + 1));
|
|
1437
1475
|
}
|
|
1438
|
-
var normalizedQuery = isPlainObject(query) ? query : {};
|
|
1439
1476
|
return merge(normalizedQuery, hashQuery);
|
|
1440
1477
|
}
|
|
1441
1478
|
/**
|
|
@@ -1538,5 +1575,15 @@ function evalTrackExpression(expression, data) {
|
|
|
1538
1575
|
})
|
|
1539
1576
|
.join('');
|
|
1540
1577
|
}
|
|
1578
|
+
// 很奇怪的问题,react-json-view import 有些情况下 mod.default 才是 esModule
|
|
1579
|
+
function importLazyComponent(mod) {
|
|
1580
|
+
return mod.default.__esModule ? mod.default : mod;
|
|
1581
|
+
}
|
|
1582
|
+
function replaceUrlParams(path, params) {
|
|
1583
|
+
if (typeof path === 'string' && /\:\w+/.test(path)) {
|
|
1584
|
+
return compile(path)(params);
|
|
1585
|
+
}
|
|
1586
|
+
return path;
|
|
1587
|
+
}
|
|
1541
1588
|
|
|
1542
|
-
export { JSONTraverse, JSONValueMap, SkipOperation, ValidateError, __uri, anyChanged, autobind, buildTrackExpression, bulkBindFunctions, camel, chainEvents, chainFunctions, changedEffect, convertArrayValueToMoment, detectPropValueChanged, difference, differenceFromAll, eachTree, evalTrackExpression, everyTree, filterTree, findIndex, findObjectsWithKey, findTree, findTreeAll, findTreeIndex, flattenTree, flattenTreeWithLeafNodes, getLevelFromClassName, getPropValue, getRange, getScrollParent, getScrollbarWidth, getTree, getTreeAncestors, getTreeDepth, getTreeParent, getWidthRate, guid, hasAbility, hasFile, hasOwnPropertyInPath, hasVisibleExpression, hashCode, immutableExtends, injectPropsToObject, isArrayChildrenModified, isBreakpoint, isClickOnInput, isDisabled, isEmpty, isMobile, isNumeric, isObjectShallowModified, isSuperDataModified, isUnfolded, isVisible, lcFirst, loadScript, loadStyle, makeColumnClassBuild, makeHorizontalDeeper, mapObject, mapTree, noop, normalizeNodePath, object2formData, omitControls, padArr, parseQuery, pickEventsProps, preventDefault, promisify, qsparse, qsstringify, range, removeHTMLTag, repeatCount, rmUndefined, someTree, sortArray, spliceTree, syncDataFromSuper, ucFirst, until, uuid, uuidv4, visibilityFilter };
|
|
1589
|
+
export { JSONTraverse, JSONValueMap, SkipOperation, ValidateError, __uri, anyChanged, autobind, buildTrackExpression, bulkBindFunctions, camel, chainEvents, chainFunctions, changedEffect, convertArrayValueToMoment, countTree, detectPropValueChanged, difference, differenceFromAll, eachTree, evalTrackExpression, everyTree, filterTree, findIndex, findObjectsWithKey, findTree, findTreeAll, findTreeIndex, flattenTree, flattenTreeWithLeafNodes, getLevelFromClassName, getPropValue, getRange, getScrollParent, getScrollbarWidth, getTree, getTreeAncestors, getTreeDepth, getTreeParent, getWidthRate, guid, hasAbility, hasFile, hasOwnPropertyInPath, hasVisibleExpression, hashCode, immutableExtends, importLazyComponent, injectPropsToObject, isArrayChildrenModified, isBreakpoint, isClickOnInput, isDisabled, isEmpty, isMobile, isNumeric, isObjectShallowModified, isSuperDataModified, isUnfolded, isVisible, lcFirst, loadScript, loadStyle, makeColumnClassBuild, makeHorizontalDeeper, mapObject, mapTree, noop, normalizeNodePath, object2formData, omitControls, padArr, parsePrimitiveQueryString, parseQuery, pickEventsProps, preventDefault, promisify, qsparse, qsstringify, range, removeHTMLTag, repeatCount, replaceUrlParams, rmUndefined, someTree, sortArray, spliceTree, syncDataFromSuper, ucFirst, until, uuid, uuidv4, visibilityFilter };
|
package/esm/utils/highlight.js
CHANGED
package/esm/utils/icon.js
CHANGED
package/esm/utils/image.js
CHANGED
package/esm/utils/keyToPath.js
CHANGED
package/esm/utils/makeSorter.js
CHANGED
package/esm/utils/math.js
CHANGED
package/esm/utils/memoryParse.js
CHANGED
package/esm/utils/object.js
CHANGED
package/esm/utils/offset.js
CHANGED
package/esm/utils/position.js
CHANGED
package/esm/utils/prettyBytes.js
CHANGED
package/esm/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
|
|
|
@@ -14,13 +14,18 @@ function replaceText(schema, replaceText, replaceTextIgnoreKeys) {
|
|
|
14
14
|
var replicaSchema = cloneDeep(schema);
|
|
15
15
|
var replaceKeys_1 = Object.keys(replaceText);
|
|
16
16
|
replaceKeys_1.sort(function (a, b) { return b.length - a.length; }); // 避免用户将短的放前面
|
|
17
|
-
var IgnoreKeys_1 = new Set(replaceTextIgnoreKeys
|
|
17
|
+
var IgnoreKeys_1 = new Set(Array.isArray(replaceTextIgnoreKeys) ? replaceTextIgnoreKeys : []);
|
|
18
|
+
var ignore_1 = typeof replaceTextIgnoreKeys === 'function'
|
|
19
|
+
? replaceTextIgnoreKeys
|
|
20
|
+
: function (key) {
|
|
21
|
+
return IgnoreKeys_1.has(key);
|
|
22
|
+
};
|
|
18
23
|
JSONTraverse(replicaSchema, function (value, key, object) {
|
|
19
24
|
var e_1, _a;
|
|
20
25
|
var descriptor = Object.getOwnPropertyDescriptor(object, key);
|
|
21
26
|
if (typeof value === 'string' &&
|
|
22
|
-
|
|
23
|
-
(
|
|
27
|
+
(descriptor === null || descriptor === void 0 ? void 0 : descriptor.writable) &&
|
|
28
|
+
!ignore_1(key, value, object)) {
|
|
24
29
|
try {
|
|
25
30
|
for (var replaceKeys_2 = __values(replaceKeys_1), replaceKeys_2_1 = replaceKeys_2.next(); !replaceKeys_2_1.done; replaceKeys_2_1 = replaceKeys_2.next()) {
|
|
26
31
|
var replaceKey = replaceKeys_2_1.value;
|
package/esm/utils/stripNumber.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
|
|
|
@@ -9,6 +9,7 @@ import cloneDeep from 'lodash/cloneDeep';
|
|
|
9
9
|
import isObject from 'lodash/isObject';
|
|
10
10
|
import map from 'lodash/map';
|
|
11
11
|
import isEmpty from 'lodash/isEmpty';
|
|
12
|
+
import kebabCase from 'lodash/kebabCase';
|
|
12
13
|
|
|
13
14
|
var valueMap = {
|
|
14
15
|
'marginTop': 'margin-top',
|
|
@@ -50,7 +51,7 @@ function findOrCreateStyle(id, doc) {
|
|
|
50
51
|
return varStyleTag;
|
|
51
52
|
}
|
|
52
53
|
function insertStyle(style, id, doc) {
|
|
53
|
-
var varStyleTag = findOrCreateStyle(id, doc);
|
|
54
|
+
var varStyleTag = findOrCreateStyle('amis-' + id, doc);
|
|
54
55
|
// bca-disable-line
|
|
55
56
|
varStyleTag.innerHTML = style;
|
|
56
57
|
if (!style) {
|
|
@@ -150,7 +151,7 @@ function formatStyle(themeCss, classNames, id, defaultData) {
|
|
|
150
151
|
var styles = [];
|
|
151
152
|
var fn = function (key, value) {
|
|
152
153
|
key = valueMap[key] || key;
|
|
153
|
-
styles.push("".concat(key, ": ").concat(value, ";"));
|
|
154
|
+
styles.push("".concat(kebabCase(key), ": ").concat(value, ";"));
|
|
154
155
|
};
|
|
155
156
|
Object.keys(statusMap[status]).forEach(function (key) {
|
|
156
157
|
if (key !== '$$id') {
|
|
@@ -307,7 +308,7 @@ function insertEditCustomStyle(customStyle, id, doc) {
|
|
|
307
308
|
* 移除自定义样式
|
|
308
309
|
*/
|
|
309
310
|
function removeCustomStyle(type, id, doc) {
|
|
310
|
-
var style = (doc || document).getElementById((type ? type + '-' : '') + id.replace('u:', ''));
|
|
311
|
+
var style = (doc || document).getElementById('amis-' + (type ? type + '-' : '') + id.replace('u:', ''));
|
|
311
312
|
if (style) {
|
|
312
313
|
style.remove();
|
|
313
314
|
}
|
package/esm/utils/style.js
CHANGED
package/esm/utils/toNumber.js
CHANGED
package/esm/utils/tokenize.js
CHANGED