amis-core 6.7.0 → 6.9.0-rc.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.d.ts +1 -1
- package/esm/RootRenderer.js +24 -2
- package/esm/SchemaRenderer.d.ts +0 -1
- package/esm/SchemaRenderer.js +43 -20
- package/esm/Scoped.js +2 -1
- package/esm/StatusScoped.js +1 -1
- package/esm/WithRootStore.js +1 -1
- package/esm/WithStore.js +8 -8
- package/esm/actions/Action.js +2 -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.js +1 -1
- package/esm/actions/ContinueAction.js +1 -1
- package/esm/actions/CopyAction.js +1 -1
- package/esm/actions/CustomAction.js +2 -1
- package/esm/actions/DialogAction.js +3 -1
- package/esm/actions/DrawerAction.js +2 -1
- package/esm/actions/EmailAction.js +1 -1
- package/esm/actions/EventAction.js +2 -1
- package/esm/actions/LinkAction.js +1 -1
- package/esm/actions/LoopAction.js +2 -1
- package/esm/actions/PageAction.js +1 -1
- package/esm/actions/ParallelAction.js +1 -1
- package/esm/actions/PrintAction.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/actions/WaitAction.js +1 -1
- package/esm/components/CustomStyle.js +1 -1
- package/esm/components/ErrorBoundary.js +1 -1
- package/esm/components/LazyComponent.d.ts +40 -2
- package/esm/components/LazyComponent.js +13 -7
- package/esm/components/Overlay.js +2 -1
- package/esm/components/PopOver.d.ts +1 -1
- package/esm/components/PopOver.js +2 -1
- package/esm/env.js +1 -1
- package/esm/envOverwrite.js +1 -1
- package/esm/factory.d.ts +13 -2
- package/esm/factory.js +157 -45
- package/esm/index.d.ts +4 -4
- package/esm/index.js +5 -5
- package/esm/locale.js +2 -1
- package/esm/polyfills.js +1 -1
- package/esm/renderers/Form.js +44 -18
- package/esm/renderers/Item.d.ts +97 -12
- package/esm/renderers/Item.js +164 -125
- package/esm/renderers/Options.d.ts +3 -3
- package/esm/renderers/Options.js +43 -19
- 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 +2 -1
- package/esm/store/app.js +2 -1
- package/esm/store/combo.d.ts +408 -0
- package/esm/store/combo.js +1 -1
- package/esm/store/crud.js +2 -1
- package/esm/store/form.d.ts +170 -0
- package/esm/store/form.js +2 -1
- package/esm/store/formItem.d.ts +5 -0
- package/esm/store/formItem.js +30 -8
- package/esm/store/iRenderer.js +2 -1
- package/esm/store/index.d.ts +1 -0
- package/esm/store/index.js +3 -2
- 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 +2 -1
- package/esm/store/root.d.ts +2 -0
- package/esm/store/root.js +46 -21
- package/esm/store/service.js +2 -1
- package/esm/store/status.js +1 -1
- package/esm/store/table.d.ts +379 -21
- package/esm/store/table.js +84 -54
- package/esm/store/table2.js +1 -1
- package/esm/theme.js +1 -1
- package/esm/types.d.ts +4 -2
- 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.d.ts +21 -1
- package/esm/utils/api.js +133 -41
- package/esm/utils/arraySlice.js +1 -1
- package/esm/utils/attachmentAdpator.js +1 -1
- package/esm/utils/autobind.js +1 -1
- package/esm/utils/browser.js +1 -1
- package/esm/utils/columnsSplit.js +1 -1
- package/esm/utils/concatData.js +1 -1
- package/esm/utils/dataMapping.js +1 -1
- package/esm/utils/date.js +1 -1
- package/esm/utils/debug.js +17 -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.js +1 -1
- package/esm/utils/filter.js +1 -1
- package/esm/utils/formatDuration.js +1 -1
- package/esm/utils/formula.js +2 -1
- package/esm/utils/getVariable.js +1 -1
- package/esm/utils/grammar.js +1 -1
- package/esm/utils/handleAction.js +1 -1
- package/esm/utils/helper.d.ts +4 -1
- package/esm/utils/helper.js +20 -4
- 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 +2 -2
- package/esm/utils/json-schema-2-amis-schema.js +1 -1
- package/esm/utils/keyToPath.js +1 -1
- package/esm/utils/labelToString.js +1 -1
- package/esm/utils/makeSorter.js +1 -1
- package/esm/utils/math.js +1 -1
- package/esm/utils/memoryParse.d.ts +2 -1
- package/esm/utils/memoryParse.js +10 -6
- package/esm/utils/normalizeLink.js +1 -1
- package/esm/utils/normalizeOptions.js +1 -1
- package/esm/utils/object.d.ts +2 -4
- 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/printElement.js +1 -1
- package/esm/utils/renderer-event.js +1 -1
- package/esm/utils/replaceText.js +1 -1
- package/esm/utils/resize-sensor.js +30 -1
- package/esm/utils/resolveCondition.js +2 -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 +1 -1
- package/esm/utils/style.js +2 -1
- package/esm/utils/toNumber.js +1 -1
- package/esm/utils/tokenize.js +1 -1
- package/esm/utils/tpl-builtin.js +2 -1
- package/esm/utils/tpl-lodash.js +2 -1
- package/esm/utils/tpl.js +1 -1
- package/esm/utils/uncontrollable.js +1 -1
- package/esm/utils/validateId.js +1 -1
- package/esm/utils/validations.js +2 -1
- package/esm/utils/visitedCache.d.ts +46 -0
- package/esm/utils/visitedCache.js +124 -0
- package/lib/Root.js +1 -1
- package/lib/RootRenderer.js +23 -1
- package/lib/SchemaRenderer.d.ts +0 -1
- package/lib/SchemaRenderer.js +41 -18
- package/lib/Scoped.js +2 -1
- package/lib/StatusScoped.js +1 -1
- package/lib/WithRootStore.js +1 -1
- package/lib/WithStore.js +8 -8
- package/lib/actions/Action.js +2 -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.js +1 -1
- package/lib/actions/ContinueAction.js +1 -1
- package/lib/actions/CopyAction.js +1 -1
- package/lib/actions/CustomAction.js +2 -1
- package/lib/actions/DialogAction.js +3 -1
- package/lib/actions/DrawerAction.js +2 -1
- package/lib/actions/EmailAction.js +1 -1
- package/lib/actions/EventAction.js +2 -1
- package/lib/actions/LinkAction.js +1 -1
- package/lib/actions/LoopAction.js +2 -1
- package/lib/actions/PageAction.js +1 -1
- package/lib/actions/ParallelAction.js +1 -1
- package/lib/actions/PrintAction.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/actions/WaitAction.js +1 -1
- package/lib/components/CustomStyle.js +1 -1
- package/lib/components/ErrorBoundary.js +1 -1
- package/lib/components/LazyComponent.d.ts +40 -2
- package/lib/components/LazyComponent.js +14 -7
- package/lib/components/Overlay.js +2 -1
- package/lib/components/PopOver.d.ts +1 -1
- package/lib/components/PopOver.js +2 -1
- package/lib/env.js +1 -1
- package/lib/envOverwrite.js +1 -1
- package/lib/factory.d.ts +13 -2
- package/lib/factory.js +161 -44
- package/lib/index.d.ts +4 -4
- package/lib/index.js +10 -2
- package/lib/locale.js +2 -1
- package/lib/polyfills.js +1 -1
- package/lib/renderers/Form.js +41 -15
- package/lib/renderers/Item.d.ts +98 -13
- package/lib/renderers/Item.js +163 -124
- package/lib/renderers/Options.d.ts +3 -3
- package/lib/renderers/Options.js +43 -19
- 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 +2 -1
- package/lib/store/app.js +2 -1
- package/lib/store/combo.d.ts +432 -25
- package/lib/store/combo.js +1 -1
- package/lib/store/crud.js +3 -2
- package/lib/store/form.d.ts +180 -11
- package/lib/store/form.js +2 -1
- package/lib/store/formItem.d.ts +5 -0
- package/lib/store/formItem.js +30 -8
- package/lib/store/iRenderer.js +2 -1
- package/lib/store/index.d.ts +1 -0
- package/lib/store/index.js +3 -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 +2 -1
- package/lib/store/root.d.ts +2 -0
- package/lib/store/root.js +44 -19
- package/lib/store/service.js +2 -1
- package/lib/store/status.js +1 -1
- package/lib/store/table.d.ts +399 -42
- package/lib/store/table.js +84 -54
- package/lib/store/table2.js +1 -1
- package/lib/theme.js +1 -1
- package/lib/types.d.ts +4 -2
- 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.d.ts +21 -1
- package/lib/utils/api.js +136 -40
- package/lib/utils/arraySlice.js +1 -1
- package/lib/utils/attachmentAdpator.js +1 -1
- package/lib/utils/autobind.js +1 -1
- package/lib/utils/browser.js +1 -1
- package/lib/utils/columnsSplit.js +1 -1
- package/lib/utils/concatData.js +1 -1
- package/lib/utils/dataMapping.js +1 -1
- package/lib/utils/date.js +1 -1
- package/lib/utils/debug.js +18 -4
- 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.js +1 -1
- package/lib/utils/filter.js +1 -1
- package/lib/utils/formatDuration.js +1 -1
- package/lib/utils/formula.js +2 -1
- package/lib/utils/getVariable.js +1 -1
- package/lib/utils/grammar.js +1 -1
- package/lib/utils/handleAction.js +1 -1
- package/lib/utils/helper.d.ts +4 -1
- package/lib/utils/helper.js +19 -3
- 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 +2 -2
- package/lib/utils/json-schema-2-amis-schema.js +1 -1
- package/lib/utils/keyToPath.js +1 -1
- package/lib/utils/labelToString.js +1 -1
- package/lib/utils/makeSorter.js +1 -1
- package/lib/utils/math.js +1 -1
- package/lib/utils/memoryParse.d.ts +2 -1
- package/lib/utils/memoryParse.js +10 -6
- package/lib/utils/normalizeLink.js +1 -1
- package/lib/utils/normalizeOptions.js +1 -1
- package/lib/utils/object.d.ts +2 -4
- 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/printElement.js +1 -1
- package/lib/utils/renderer-event.js +1 -1
- package/lib/utils/replaceText.js +1 -1
- package/lib/utils/resize-sensor.js +30 -1
- package/lib/utils/resolveCondition.js +2 -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 +1 -1
- package/lib/utils/style.js +2 -1
- package/lib/utils/toNumber.js +1 -1
- package/lib/utils/tokenize.js +1 -1
- package/lib/utils/tpl-builtin.js +2 -1
- package/lib/utils/tpl-lodash.js +2 -1
- package/lib/utils/tpl.js +1 -1
- package/lib/utils/uncontrollable.js +1 -1
- package/lib/utils/validateId.js +1 -1
- package/lib/utils/validations.js +2 -1
- package/lib/utils/visitedCache.d.ts +46 -0
- package/lib/utils/visitedCache.js +128 -0
- package/package.json +2 -2
package/esm/utils/date.js
CHANGED
package/esm/utils/debug.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.9.0-rc.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -386,11 +386,18 @@ function debug(cat, msg, ext) {
|
|
|
386
386
|
console.groupCollapsed('[amis debug]', msg);
|
|
387
387
|
console.debug(ext);
|
|
388
388
|
console.groupEnd();
|
|
389
|
+
var extStr = '';
|
|
390
|
+
try {
|
|
391
|
+
extStr = JSON.stringify(ext);
|
|
392
|
+
}
|
|
393
|
+
catch (e) {
|
|
394
|
+
console.error(e);
|
|
395
|
+
}
|
|
389
396
|
var log = {
|
|
390
397
|
cat: cat,
|
|
391
398
|
level: 'debug',
|
|
392
399
|
msg: msg,
|
|
393
|
-
ext:
|
|
400
|
+
ext: extStr
|
|
394
401
|
};
|
|
395
402
|
store.logs.push(log);
|
|
396
403
|
}
|
|
@@ -403,11 +410,18 @@ function warning(cat, msg, ext) {
|
|
|
403
410
|
if (!isEnabled) {
|
|
404
411
|
return;
|
|
405
412
|
}
|
|
413
|
+
var extStr = '';
|
|
414
|
+
try {
|
|
415
|
+
extStr = JSON.stringify(ext);
|
|
416
|
+
}
|
|
417
|
+
catch (e) {
|
|
418
|
+
console.error(e);
|
|
419
|
+
}
|
|
406
420
|
var log = {
|
|
407
421
|
cat: cat,
|
|
408
422
|
level: 'warn',
|
|
409
423
|
msg: msg,
|
|
410
|
-
ext:
|
|
424
|
+
ext: extStr
|
|
411
425
|
};
|
|
412
426
|
console.groupCollapsed('amis debug', msg);
|
|
413
427
|
console.trace(log);
|
package/esm/utils/dom.js
CHANGED
package/esm/utils/errors.js
CHANGED
package/esm/utils/escapeHtml.js
CHANGED
package/esm/utils/filter.js
CHANGED
package/esm/utils/formula.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.9.0-rc.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -12,6 +12,7 @@ import 'tslib';
|
|
|
12
12
|
import 'moment';
|
|
13
13
|
import 'lodash/isPlainObject';
|
|
14
14
|
import { getVariable } from './getVariable.js';
|
|
15
|
+
import './memoryParse.js';
|
|
15
16
|
import '@rc-component/mini-decimal';
|
|
16
17
|
import { resolveVariableAndFilter } from './resolveVariableAndFilter.js';
|
|
17
18
|
import './filter.js';
|
package/esm/utils/getVariable.js
CHANGED
package/esm/utils/grammar.js
CHANGED
package/esm/utils/helper.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ import { cloneObject, createObject, deleteVariable, extendObject, isObject, setV
|
|
|
8
8
|
import { string2regExp } from './string2regExp';
|
|
9
9
|
import { getVariable } from './getVariable';
|
|
10
10
|
import { keyToPath } from './keyToPath';
|
|
11
|
+
import type { IStatusStore } from '../store/status';
|
|
11
12
|
export { createObject, cloneObject, isObject, string2regExp, getVariable, setVariable, deleteVariable, keyToPath, extendObject };
|
|
12
13
|
export declare function preventDefault(event: TouchEvent | Event): void;
|
|
13
14
|
export declare function isMobile(): any;
|
|
@@ -52,11 +53,13 @@ export declare function hasVisibleExpression(schema: {
|
|
|
52
53
|
hidden?: boolean;
|
|
53
54
|
}): boolean;
|
|
54
55
|
export declare function isVisible(schema: {
|
|
56
|
+
id?: string;
|
|
57
|
+
name?: string;
|
|
55
58
|
visibleOn?: string;
|
|
56
59
|
hiddenOn?: string;
|
|
57
60
|
visible?: boolean;
|
|
58
61
|
hidden?: boolean;
|
|
59
|
-
}, data?: object):
|
|
62
|
+
}, data?: object, statusStore?: IStatusStore): any;
|
|
60
63
|
export declare function isUnfolded(node: any, config: {
|
|
61
64
|
foldedField?: string;
|
|
62
65
|
unfoldedField?: string;
|
package/esm/utils/helper.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.9.0-rc.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -14,7 +14,7 @@ import isNumber from 'lodash/isNumber';
|
|
|
14
14
|
import isString from 'lodash/isString';
|
|
15
15
|
import qs from 'qs';
|
|
16
16
|
import { compile } from 'path-to-regexp';
|
|
17
|
-
import { evalExpressionWithConditionBuilder, evalExpression
|
|
17
|
+
import { filter, evalExpressionWithConditionBuilder, evalExpression } from './tpl.js';
|
|
18
18
|
import { autobindMethod } from './autobind.js';
|
|
19
19
|
import 'amis-formula';
|
|
20
20
|
import 'moment';
|
|
@@ -25,12 +25,14 @@ import { isPureVariable } from './isPureVariable.js';
|
|
|
25
25
|
import '@rc-component/mini-decimal';
|
|
26
26
|
import { resolveVariable } from './resolveVariable.js';
|
|
27
27
|
import { resolveVariableAndFilter } from './resolveVariableAndFilter.js';
|
|
28
|
+
import './memoryParse.js';
|
|
28
29
|
import './filter.js';
|
|
29
30
|
export { string2regExp } from './string2regExp.js';
|
|
30
31
|
export { getVariable } from './getVariable.js';
|
|
31
32
|
import { keyToPath } from './keyToPath.js';
|
|
32
33
|
export { keyToPath } from './keyToPath.js';
|
|
33
34
|
import { isExpression, replaceExpression } from './formula.js';
|
|
35
|
+
import { isAlive } from 'mobx-state-tree';
|
|
34
36
|
|
|
35
37
|
function preventDefault(event) {
|
|
36
38
|
if (typeof event.cancelable !== 'boolean' || event.cancelable) {
|
|
@@ -283,7 +285,19 @@ function makeColumnClassBuild(steps, classNameTpl) {
|
|
|
283
285
|
function hasVisibleExpression(schema) {
|
|
284
286
|
return !!(schema.visibleOn || schema.hiddenOn);
|
|
285
287
|
}
|
|
286
|
-
function isVisible(schema, data) {
|
|
288
|
+
function isVisible(schema, data, statusStore) {
|
|
289
|
+
var _a;
|
|
290
|
+
// 有状态时,状态优先
|
|
291
|
+
if ((schema.id || schema.name) && statusStore) {
|
|
292
|
+
var id = filter(schema.id, data);
|
|
293
|
+
var name_1 = filter(schema.name, data);
|
|
294
|
+
var visible = isAlive(statusStore)
|
|
295
|
+
? (_a = statusStore.visibleState[id]) !== null && _a !== void 0 ? _a : statusStore.visibleState[name_1]
|
|
296
|
+
: undefined;
|
|
297
|
+
if (typeof visible !== 'undefined') {
|
|
298
|
+
return visible;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
287
301
|
return !(schema.hidden ||
|
|
288
302
|
schema.visible === false ||
|
|
289
303
|
(schema.hiddenOn &&
|
|
@@ -415,7 +429,9 @@ function difference(object, base, keepProps) {
|
|
|
415
429
|
result_1[key] = a;
|
|
416
430
|
}
|
|
417
431
|
// isEquals 里面没有处理好递归引用对象的情况
|
|
418
|
-
if (
|
|
432
|
+
if (object.hasOwnProperty(key) && // 其中一个不是自己的属性,就不要比对了
|
|
433
|
+
base.hasOwnProperty(key) &&
|
|
434
|
+
!isObjectShallowModified(a, b, true, undefined, undefined, 10)) {
|
|
419
435
|
return;
|
|
420
436
|
}
|
|
421
437
|
if (!object.hasOwnProperty(key)) {
|
package/esm/utils/highlight.js
CHANGED
package/esm/utils/icon.js
CHANGED
package/esm/utils/image.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.9.0-rc.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -10,7 +10,7 @@ function isPureVariable(path) {
|
|
|
10
10
|
try {
|
|
11
11
|
var ast = memoryParse(path);
|
|
12
12
|
// 只有一个成员说明是纯表达式模式
|
|
13
|
-
return ast.body.length === 1 && ast.body[0].type === 'script';
|
|
13
|
+
return (ast === null || ast === void 0 ? void 0 : ast.body.length) === 1 && ast.body[0].type === 'script';
|
|
14
14
|
}
|
|
15
15
|
catch (err) {
|
|
16
16
|
return false;
|
package/esm/utils/keyToPath.js
CHANGED
package/esm/utils/makeSorter.js
CHANGED
package/esm/utils/math.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ASTNode } from 'amis-formula';
|
|
1
2
|
export declare function memoryParse(input: string, options?: {
|
|
2
3
|
/**
|
|
3
4
|
* 直接是运算表达式?还是从模板开始 ${} 里面才算运算表达式
|
|
@@ -14,4 +15,4 @@ export declare function memoryParse(input: string, options?: {
|
|
|
14
15
|
*/
|
|
15
16
|
allowFilter?: boolean;
|
|
16
17
|
variableNamespaces?: Array<string>;
|
|
17
|
-
}):
|
|
18
|
+
}): ASTNode | undefined;
|
package/esm/utils/memoryParse.js
CHANGED
|
@@ -1,25 +1,29 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.9.0-rc.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import { parse } from 'amis-formula';
|
|
7
|
+
import VisitedCache from './visitedCache.js';
|
|
7
8
|
|
|
8
|
-
|
|
9
|
+
// NOTE 缓存前40条表达式
|
|
10
|
+
var cache = new VisitedCache(40);
|
|
9
11
|
function memoryParse(input, options) {
|
|
10
12
|
if (options === void 0) { options = {
|
|
11
13
|
evalMode: false
|
|
12
14
|
}; }
|
|
13
|
-
//
|
|
15
|
+
// 优化内存缓存释放,比如只缓存最高频的模版
|
|
14
16
|
if (typeof input !== 'string') {
|
|
15
17
|
return;
|
|
16
18
|
}
|
|
17
19
|
var key = input + JSON.stringify(options);
|
|
18
|
-
|
|
19
|
-
|
|
20
|
+
// get cache result
|
|
21
|
+
if (cache.has(key)) {
|
|
22
|
+
return cache.get(key);
|
|
20
23
|
}
|
|
24
|
+
// run parse function and cache
|
|
21
25
|
var ast = parse(input, options);
|
|
22
|
-
cache
|
|
26
|
+
cache.set(key, ast);
|
|
23
27
|
return ast;
|
|
24
28
|
}
|
|
25
29
|
|
package/esm/utils/object.d.ts
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
export declare function createObject
|
|
1
|
+
export declare function createObject<P extends {
|
|
2
2
|
[propName: string]: any;
|
|
3
|
-
}, props?:
|
|
4
|
-
[propName: string]: any;
|
|
5
|
-
}, properties?: any): object;
|
|
3
|
+
} | null>(superProps?: P, props?: P, properties?: any): object;
|
|
6
4
|
export declare function extractObjectChain(value: any): object[];
|
|
7
5
|
export declare function createObjectFromChain(chain: Array<object>): object;
|
|
8
6
|
/**
|
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 v6.
|
|
2
|
+
* amis-core v6.9.0-rc.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -163,6 +163,35 @@ function resizeSensor(element, callback, once, type) {
|
|
|
163
163
|
if (!element) {
|
|
164
164
|
return function () { };
|
|
165
165
|
}
|
|
166
|
+
// 优先用 ResizeObserver
|
|
167
|
+
if (typeof ResizeObserver !== 'undefined') {
|
|
168
|
+
var rect = element.getBoundingClientRect();
|
|
169
|
+
var originWidth_1 = rect.width;
|
|
170
|
+
var originHeight_1 = rect.height;
|
|
171
|
+
var observer_1 = new ResizeObserver(function (entries) {
|
|
172
|
+
if (once) {
|
|
173
|
+
observer_1.disconnect();
|
|
174
|
+
}
|
|
175
|
+
if (type === 'both') {
|
|
176
|
+
callback();
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
var entry = entries[0];
|
|
180
|
+
var cr = entry.contentRect;
|
|
181
|
+
if ((type === 'width' && cr.width !== originWidth_1) ||
|
|
182
|
+
(type === 'height' && cr.height !== originHeight_1)) {
|
|
183
|
+
callback();
|
|
184
|
+
originWidth_1 = cr.width;
|
|
185
|
+
originHeight_1 = cr.height;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
});
|
|
189
|
+
observer_1.observe(element);
|
|
190
|
+
return function () {
|
|
191
|
+
observer_1.disconnect();
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
// 不支持 ResizeObserver 的话,用 polyfill
|
|
166
195
|
var disposeEvent = undefined;
|
|
167
196
|
if (once) {
|
|
168
197
|
disposeEvent = attachResizeEvent(element, function () {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.9.0-rc.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -14,6 +14,7 @@ import moment from 'moment';
|
|
|
14
14
|
import capitalize from 'lodash/capitalize';
|
|
15
15
|
import 'amis-formula';
|
|
16
16
|
import 'lodash/isPlainObject';
|
|
17
|
+
import './memoryParse.js';
|
|
17
18
|
import { isPureVariable } from './isPureVariable.js';
|
|
18
19
|
import '@rc-component/mini-decimal';
|
|
19
20
|
import { resolveVariableAndFilter } from './resolveVariableAndFilter.js';
|
package/esm/utils/stripNumber.js
CHANGED
package/esm/utils/style.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.9.0-rc.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -7,6 +7,7 @@ import 'tslib';
|
|
|
7
7
|
import 'amis-formula';
|
|
8
8
|
import 'moment';
|
|
9
9
|
import 'lodash/isPlainObject';
|
|
10
|
+
import './memoryParse.js';
|
|
10
11
|
import '@rc-component/mini-decimal';
|
|
11
12
|
import { resolveVariableAndFilter } from './resolveVariableAndFilter.js';
|
|
12
13
|
import './filter.js';
|
package/esm/utils/toNumber.js
CHANGED
package/esm/utils/tokenize.js
CHANGED
package/esm/utils/tpl-builtin.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.9.0-rc.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -7,6 +7,7 @@ import { __awaiter, __generator } from 'tslib';
|
|
|
7
7
|
export { getFilters, registerFilter, registerFunction } from 'amis-formula';
|
|
8
8
|
import 'moment';
|
|
9
9
|
import 'lodash/isPlainObject';
|
|
10
|
+
import './memoryParse.js';
|
|
10
11
|
import { tokenize } from './tokenize.js';
|
|
11
12
|
export { tokenize } from './tokenize.js';
|
|
12
13
|
import '@rc-component/mini-decimal';
|
package/esm/utils/tpl-lodash.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.9.0-rc.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -8,6 +8,7 @@ import template from 'lodash/template';
|
|
|
8
8
|
import { getFilters } from 'amis-formula';
|
|
9
9
|
import moment from 'moment';
|
|
10
10
|
import 'lodash/isPlainObject';
|
|
11
|
+
import './memoryParse.js';
|
|
11
12
|
import '@rc-component/mini-decimal';
|
|
12
13
|
import './filter.js';
|
|
13
14
|
|
package/esm/utils/tpl.js
CHANGED