amis-core 6.2.2 → 6.4.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 +28 -10
- package/esm/SchemaRenderer.js +17 -7
- package/esm/Scoped.d.ts +2 -1
- package/esm/Scoped.js +30 -14
- package/esm/StatusScoped.js +4 -2
- package/esm/WithRootStore.js +1 -1
- package/esm/WithStore.js +28 -17
- package/esm/actions/Action.js +5 -3
- package/esm/actions/AjaxAction.js +29 -19
- package/esm/actions/BreakAction.js +1 -1
- package/esm/actions/BroadcastAction.js +1 -1
- package/esm/actions/CmptAction.js +3 -3
- 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.d.ts +8 -0
- package/esm/actions/DialogAction.js +116 -40
- package/esm/actions/DrawerAction.d.ts +5 -0
- package/esm/actions/DrawerAction.js +74 -11
- package/esm/actions/EmailAction.js +1 -1
- package/esm/actions/EventAction.d.ts +20 -0
- package/esm/actions/EventAction.js +102 -0
- 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/PrintAction.d.ts +2 -2
- package/esm/actions/PrintAction.js +6 -6
- 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.d.ts +18 -0
- package/esm/actions/WaitAction.js +41 -0
- package/esm/actions/index.d.ts +2 -0
- package/esm/components/CustomStyle.js +1 -4
- package/esm/components/ErrorBoundary.js +1 -1
- package/esm/components/LazyComponent.js +1 -1
- package/esm/components/Overlay.d.ts +3 -0
- package/esm/components/Overlay.js +7 -4
- package/esm/components/PopOver.js +2 -2
- package/esm/env.js +1 -1
- package/esm/envOverwrite.js +1 -1
- package/esm/factory.d.ts +3 -0
- package/esm/factory.js +1 -1
- package/esm/index.js +6 -4
- package/esm/locale.js +4 -2
- package/esm/polyfills.js +1 -1
- package/esm/renderers/Form.d.ts +6 -4
- package/esm/renderers/Form.js +134 -66
- package/esm/renderers/Item.d.ts +123 -79
- package/esm/renderers/Item.js +159 -60
- package/esm/renderers/Options.d.ts +0 -11
- package/esm/renderers/Options.js +20 -84
- 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.d.ts +2 -1
- package/esm/renderers/wrapControl.js +34 -28
- package/esm/store/app.d.ts +5 -5
- package/esm/store/app.js +1 -1
- package/esm/store/combo.d.ts +255 -63
- package/esm/store/combo.js +1 -1
- package/esm/store/crud.d.ts +5 -5
- package/esm/store/crud.js +12 -6
- package/esm/store/form.d.ts +105 -25
- package/esm/store/form.js +33 -15
- package/esm/store/formItem.d.ts +6 -2
- package/esm/store/formItem.js +68 -5
- package/esm/store/iRenderer.d.ts +5 -5
- package/esm/store/iRenderer.js +28 -12
- package/esm/store/index.js +1 -1
- package/esm/store/list.d.ts +18 -5
- package/esm/store/list.js +14 -1
- package/esm/store/manager.js +1 -1
- package/esm/store/modal.d.ts +5 -5
- package/esm/store/modal.js +1 -1
- package/esm/store/node.js +1 -1
- package/esm/store/pagination.d.ts +5 -5
- package/esm/store/pagination.js +1 -1
- package/esm/store/root.d.ts +5 -5
- package/esm/store/root.js +1 -1
- package/esm/store/service.d.ts +5 -5
- package/esm/store/service.js +2 -2
- package/esm/store/status.js +1 -1
- package/esm/store/table.d.ts +244 -55
- package/esm/store/table.js +27 -9
- package/esm/store/table2.d.ts +5 -5
- package/esm/store/table2.js +1 -1
- package/esm/theme.js +4 -2
- package/esm/types.d.ts +7 -1
- 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 +1 -1
- 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 +1 -1
- package/esm/utils/decodeEntity.js +1 -1
- package/esm/utils/dom.d.ts +2 -2
- package/esm/utils/dom.js +72 -13
- 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 -2
- 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 +12 -6
- package/esm/utils/helper.js +41 -18
- 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/labelToString.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/printElement.js +1 -1
- package/esm/utils/renderer-event.d.ts +13 -0
- package/esm/utils/renderer-event.js +111 -2
- package/esm/utils/replaceText.js +1 -1
- 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.d.ts +1 -1
- package/esm/utils/stripNumber.js +4 -3
- package/esm/utils/style-helper.d.ts +21 -2
- package/esm/utils/style-helper.js +55 -10
- 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 +4 -4
- package/esm/utils/uncontrollable.js +1 -1
- package/esm/utils/validateId.js +5 -2
- package/esm/utils/validations.js +1 -1
- package/lib/Root.js +1 -1
- package/lib/RootRenderer.d.ts +2 -2
- package/lib/RootRenderer.js +28 -10
- package/lib/SchemaRenderer.js +16 -6
- package/lib/Scoped.d.ts +2 -1
- package/lib/Scoped.js +30 -14
- package/lib/StatusScoped.js +4 -2
- package/lib/WithRootStore.js +1 -1
- package/lib/WithStore.js +28 -17
- package/lib/actions/Action.js +5 -3
- package/lib/actions/AjaxAction.js +29 -19
- package/lib/actions/BreakAction.js +1 -1
- package/lib/actions/BroadcastAction.js +1 -1
- package/lib/actions/CmptAction.js +3 -3
- package/lib/actions/ContinueAction.js +1 -1
- package/lib/actions/CopyAction.js +1 -1
- package/lib/actions/CustomAction.js +1 -1
- package/lib/actions/DialogAction.d.ts +8 -0
- package/lib/actions/DialogAction.js +119 -40
- package/lib/actions/DrawerAction.d.ts +5 -0
- package/lib/actions/DrawerAction.js +77 -11
- package/lib/actions/EmailAction.js +1 -1
- package/lib/actions/EventAction.d.ts +20 -0
- package/lib/actions/EventAction.js +109 -0
- 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/PrintAction.d.ts +2 -2
- package/lib/actions/PrintAction.js +6 -6
- 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.d.ts +18 -0
- package/lib/actions/WaitAction.js +45 -0
- package/lib/actions/index.d.ts +2 -0
- package/lib/components/CustomStyle.js +1 -4
- package/lib/components/ErrorBoundary.js +1 -1
- package/lib/components/LazyComponent.js +1 -1
- package/lib/components/Overlay.d.ts +3 -0
- package/lib/components/Overlay.js +7 -4
- package/lib/components/PopOver.js +1 -1
- package/lib/env.js +1 -1
- package/lib/envOverwrite.js +1 -1
- package/lib/factory.d.ts +3 -0
- package/lib/factory.js +1 -1
- package/lib/index.js +6 -4
- package/lib/locale.js +4 -2
- package/lib/polyfills.js +1 -1
- package/lib/renderers/Form.d.ts +6 -4
- package/lib/renderers/Form.js +135 -65
- package/lib/renderers/Item.d.ts +123 -79
- package/lib/renderers/Item.js +158 -58
- package/lib/renderers/Options.d.ts +0 -11
- package/lib/renderers/Options.js +19 -84
- 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.d.ts +2 -1
- package/lib/renderers/wrapControl.js +34 -28
- package/lib/store/app.d.ts +5 -5
- package/lib/store/app.js +1 -1
- package/lib/store/combo.d.ts +279 -88
- package/lib/store/combo.js +1 -1
- package/lib/store/crud.d.ts +5 -5
- package/lib/store/crud.js +12 -6
- package/lib/store/form.d.ts +115 -36
- package/lib/store/form.js +33 -15
- package/lib/store/formItem.d.ts +6 -2
- package/lib/store/formItem.js +67 -4
- package/lib/store/iRenderer.d.ts +5 -5
- package/lib/store/iRenderer.js +27 -11
- package/lib/store/index.js +1 -1
- package/lib/store/list.d.ts +18 -5
- package/lib/store/list.js +14 -1
- package/lib/store/manager.js +1 -1
- package/lib/store/modal.d.ts +5 -5
- package/lib/store/modal.js +1 -1
- package/lib/store/node.js +1 -1
- package/lib/store/pagination.d.ts +5 -5
- package/lib/store/pagination.js +1 -1
- package/lib/store/root.d.ts +5 -5
- package/lib/store/root.js +1 -1
- package/lib/store/service.d.ts +5 -5
- package/lib/store/service.js +2 -2
- package/lib/store/status.js +1 -1
- package/lib/store/table.d.ts +264 -76
- package/lib/store/table.js +27 -9
- package/lib/store/table2.d.ts +5 -5
- package/lib/store/table2.js +1 -1
- package/lib/theme.js +4 -2
- package/lib/types.d.ts +7 -1
- 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 +1 -1
- 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 +1 -1
- package/lib/utils/decodeEntity.js +1 -1
- package/lib/utils/dom.d.ts +2 -2
- package/lib/utils/dom.js +72 -13
- 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 -2
- 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 +12 -6
- package/lib/utils/helper.js +41 -20
- 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/labelToString.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/printElement.js +1 -1
- package/lib/utils/renderer-event.d.ts +13 -0
- package/lib/utils/renderer-event.js +111 -1
- package/lib/utils/replaceText.js +1 -1
- 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.d.ts +1 -1
- package/lib/utils/stripNumber.js +4 -3
- package/lib/utils/style-helper.d.ts +21 -2
- package/lib/utils/style-helper.js +55 -10
- 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 +4 -4
- package/lib/utils/uncontrollable.js +1 -1
- package/lib/utils/validateId.js +9 -2
- package/lib/utils/validations.js +1 -1
- package/package.json +5 -3
package/esm/utils/helper.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.4.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -9,7 +9,6 @@ import uniq from 'lodash/uniq';
|
|
|
9
9
|
import last from 'lodash/last';
|
|
10
10
|
import merge from 'lodash/merge';
|
|
11
11
|
import isPlainObject from 'lodash/isPlainObject';
|
|
12
|
-
import isEqual from 'lodash/isEqual';
|
|
13
12
|
import isNaN from 'lodash/isNaN';
|
|
14
13
|
import isNumber from 'lodash/isNumber';
|
|
15
14
|
import isString from 'lodash/isString';
|
|
@@ -407,7 +406,8 @@ function difference(object, base, keepProps) {
|
|
|
407
406
|
if (keepProps && ~keepProps.indexOf(key)) {
|
|
408
407
|
result_1[key] = a;
|
|
409
408
|
}
|
|
410
|
-
|
|
409
|
+
// isEquals 里面没有处理好递归引用对象的情况
|
|
410
|
+
if (!isObjectShallowModified(a, b, false, undefined, undefined, 10)) {
|
|
411
411
|
return;
|
|
412
412
|
}
|
|
413
413
|
if (!object.hasOwnProperty(key)) {
|
|
@@ -1613,20 +1613,43 @@ function replaceUrlParams(path, params) {
|
|
|
1613
1613
|
return path;
|
|
1614
1614
|
}
|
|
1615
1615
|
var TEST_ID_KEY = 'data-testid';
|
|
1616
|
-
function
|
|
1617
|
-
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
-
}
|
|
1621
|
-
return _a = {},
|
|
1622
|
-
_a[TEST_ID_KEY] = filter(testid, data),
|
|
1623
|
-
_a;
|
|
1624
|
-
}
|
|
1625
|
-
function getTestId(testid, data) {
|
|
1626
|
-
if (!testid) {
|
|
1627
|
-
return undefined;
|
|
1616
|
+
var TestIdBuilder = /** @class */ (function () {
|
|
1617
|
+
// 为空就表示没有启用testId,后续一直返回都将是空
|
|
1618
|
+
function TestIdBuilder(testId) {
|
|
1619
|
+
this.testId = testId;
|
|
1628
1620
|
}
|
|
1629
|
-
|
|
1630
|
-
|
|
1621
|
+
TestIdBuilder.fast = function (testId) {
|
|
1622
|
+
var _a;
|
|
1623
|
+
return _a = {},
|
|
1624
|
+
_a[TEST_ID_KEY] = testId,
|
|
1625
|
+
_a;
|
|
1626
|
+
};
|
|
1627
|
+
// 生成子区域的testid生成器
|
|
1628
|
+
TestIdBuilder.prototype.getChild = function (childPath, data) {
|
|
1629
|
+
if (this.testId == null) {
|
|
1630
|
+
return new TestIdBuilder();
|
|
1631
|
+
}
|
|
1632
|
+
return new TestIdBuilder(data
|
|
1633
|
+
? filter("".concat(this.testId, "-").concat(childPath), data)
|
|
1634
|
+
: "".concat(this.testId, "-").concat(childPath));
|
|
1635
|
+
};
|
|
1636
|
+
// 获取当前组件的testid
|
|
1637
|
+
TestIdBuilder.prototype.getTestId = function (data) {
|
|
1638
|
+
var _a;
|
|
1639
|
+
if (this.testId == null) {
|
|
1640
|
+
return undefined;
|
|
1641
|
+
}
|
|
1642
|
+
return _a = {},
|
|
1643
|
+
_a[TEST_ID_KEY] = data ? filter(this.testId, data) : this.testId,
|
|
1644
|
+
_a;
|
|
1645
|
+
};
|
|
1646
|
+
TestIdBuilder.prototype.getTestIdValue = function (data) {
|
|
1647
|
+
if (this.testId == null) {
|
|
1648
|
+
return undefined;
|
|
1649
|
+
}
|
|
1650
|
+
return data ? filter(this.testId, data) : this.testId;
|
|
1651
|
+
};
|
|
1652
|
+
return TestIdBuilder;
|
|
1653
|
+
}());
|
|
1631
1654
|
|
|
1632
|
-
export { JSONTraverse, JSONValueMap, SkipOperation, TEST_ID_KEY, ValidateError, __uri, anyChanged, autobind,
|
|
1655
|
+
export { JSONTraverse, JSONValueMap, SkipOperation, TEST_ID_KEY, TestIdBuilder, 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
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { ListenerAction } from '../actions/Action';
|
|
3
3
|
import { RendererProps } from '../factory';
|
|
4
4
|
import { IScopedContext } from '../Scoped';
|
|
5
|
+
import { TreeItem } from './helper';
|
|
5
6
|
export interface debounceConfig {
|
|
6
7
|
maxWait?: number;
|
|
7
8
|
wait?: number;
|
|
@@ -49,6 +50,8 @@ export type RendererEvent<T, P = any> = {
|
|
|
49
50
|
preventDefault: () => void;
|
|
50
51
|
stopPropagation: () => void;
|
|
51
52
|
setData: (data: P) => void;
|
|
53
|
+
pendingPromise: Promise<any>[];
|
|
54
|
+
allDone: () => Promise<any>;
|
|
52
55
|
};
|
|
53
56
|
export interface RendererEventContext {
|
|
54
57
|
data?: any;
|
|
@@ -65,5 +68,15 @@ export declare const getRendererEventListeners: () => RendererEventListener[];
|
|
|
65
68
|
* @param valueKey
|
|
66
69
|
*/
|
|
67
70
|
export declare const resolveEventData: (props: any, data: any, valueKey?: string) => object;
|
|
71
|
+
/**
|
|
72
|
+
* 基于 index、condition、oldCondition 获取匹配的事件目标
|
|
73
|
+
* @param tree
|
|
74
|
+
* @param ctx
|
|
75
|
+
* @param index
|
|
76
|
+
* @param condition
|
|
77
|
+
* @param oldCondition
|
|
78
|
+
* @returns
|
|
79
|
+
*/
|
|
80
|
+
export declare function getMatchedEventTargets<T extends TreeItem>(tree: Array<T>, ctx: any, index?: string | number, condition?: string, oldCondition?: string): Promise<T[]>;
|
|
68
81
|
declare const _default: {};
|
|
69
82
|
export default _default;
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.4.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import { __values, __awaiter, __generator, __assign } from 'tslib';
|
|
7
7
|
import { runActions } from '../actions/Action.js';
|
|
8
|
+
import { isExpression } from './formula.js';
|
|
9
|
+
import { eachTree, getTree } from './helper.js';
|
|
8
10
|
import { extendObject, createObject } from './object.js';
|
|
9
11
|
import debounce from 'lodash/debounce';
|
|
12
|
+
import { resolveVariableAndFilterForAsync } from './resolveVariableAndFilterForAsync.js';
|
|
13
|
+
import { evalExpression, evalExpressionWithConditionBuilder } from './tpl.js';
|
|
10
14
|
|
|
11
15
|
var rendererEventListeners = [];
|
|
12
16
|
// 创建渲染器事件对象
|
|
@@ -30,6 +34,12 @@ function createRendererEvent(type, context) {
|
|
|
30
34
|
},
|
|
31
35
|
setData: function (data) {
|
|
32
36
|
rendererEvent.context.data = data;
|
|
37
|
+
},
|
|
38
|
+
// 用来记录那些还没完的动作
|
|
39
|
+
// 有时候要等所有完成了才进行下一步
|
|
40
|
+
pendingPromise: [],
|
|
41
|
+
allDone: function () {
|
|
42
|
+
return Promise.all(rendererEvent.pendingPromise);
|
|
33
43
|
}
|
|
34
44
|
}, {
|
|
35
45
|
context: {
|
|
@@ -46,6 +56,12 @@ function createRendererEvent(type, context) {
|
|
|
46
56
|
},
|
|
47
57
|
setData: {
|
|
48
58
|
enumerable: false
|
|
59
|
+
},
|
|
60
|
+
pendingPromise: {
|
|
61
|
+
enumerable: false
|
|
62
|
+
},
|
|
63
|
+
allDone: {
|
|
64
|
+
enumerable: false
|
|
49
65
|
}
|
|
50
66
|
});
|
|
51
67
|
return rendererEvent;
|
|
@@ -266,5 +282,98 @@ var resolveEventData = function (props, data, valueKey) {
|
|
|
266
282
|
return createObject(props.data, props.name && valueKey
|
|
267
283
|
? __assign(__assign({}, data), (_a = {}, _a[props.name] = data[valueKey], _a.__rendererData = __assign(__assign({}, props.data), (_b = {}, _b[props.name] = data[valueKey], _b)), _a)) : data);
|
|
268
284
|
};
|
|
285
|
+
/**
|
|
286
|
+
* 基于 index、condition、oldCondition 获取匹配的事件目标
|
|
287
|
+
* @param tree
|
|
288
|
+
* @param ctx
|
|
289
|
+
* @param index
|
|
290
|
+
* @param condition
|
|
291
|
+
* @param oldCondition
|
|
292
|
+
* @returns
|
|
293
|
+
*/
|
|
294
|
+
function getMatchedEventTargets(tree, ctx, index, condition, oldCondition) {
|
|
295
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
296
|
+
var targets, row, _a, promies_1, promies_2;
|
|
297
|
+
var _this = this;
|
|
298
|
+
return __generator(this, function (_b) {
|
|
299
|
+
switch (_b.label) {
|
|
300
|
+
case 0:
|
|
301
|
+
targets = [];
|
|
302
|
+
if (!(typeof index === 'number')) return [3 /*break*/, 1];
|
|
303
|
+
row = tree[index];
|
|
304
|
+
row && targets.push(row);
|
|
305
|
+
return [3 /*break*/, 9];
|
|
306
|
+
case 1:
|
|
307
|
+
if (!(typeof index === 'string')) return [3 /*break*/, 5];
|
|
308
|
+
if (!isExpression(index)) return [3 /*break*/, 3];
|
|
309
|
+
return [4 /*yield*/, resolveVariableAndFilterForAsync(index, ctx)];
|
|
310
|
+
case 2:
|
|
311
|
+
_a = _b.sent();
|
|
312
|
+
return [3 /*break*/, 4];
|
|
313
|
+
case 3:
|
|
314
|
+
_a = index;
|
|
315
|
+
_b.label = 4;
|
|
316
|
+
case 4:
|
|
317
|
+
index = _a;
|
|
318
|
+
index.split(',').forEach(function (i) {
|
|
319
|
+
i = i.trim();
|
|
320
|
+
if (i) {
|
|
321
|
+
var indexes = i.split('.').map(function (ii) { return parseInt(ii, 10); });
|
|
322
|
+
var row = getTree(tree, indexes);
|
|
323
|
+
row && targets.push(row);
|
|
324
|
+
}
|
|
325
|
+
});
|
|
326
|
+
return [3 /*break*/, 9];
|
|
327
|
+
case 5:
|
|
328
|
+
if (!condition) return [3 /*break*/, 7];
|
|
329
|
+
promies_1 = [];
|
|
330
|
+
eachTree(tree, function (item) {
|
|
331
|
+
var data = item.storeType ? item.data : item;
|
|
332
|
+
promies_1.push(function () { return __awaiter(_this, void 0, void 0, function () {
|
|
333
|
+
var result;
|
|
334
|
+
return __generator(this, function (_a) {
|
|
335
|
+
switch (_a.label) {
|
|
336
|
+
case 0: return [4 /*yield*/, evalExpressionWithConditionBuilder(condition, createObject(ctx, data))];
|
|
337
|
+
case 1:
|
|
338
|
+
result = _a.sent();
|
|
339
|
+
result && targets.push(item);
|
|
340
|
+
return [2 /*return*/];
|
|
341
|
+
}
|
|
342
|
+
});
|
|
343
|
+
}); });
|
|
344
|
+
});
|
|
345
|
+
return [4 /*yield*/, Promise.all(promies_1.map(function (fn) { return fn(); }))];
|
|
346
|
+
case 6:
|
|
347
|
+
_b.sent();
|
|
348
|
+
return [3 /*break*/, 9];
|
|
349
|
+
case 7:
|
|
350
|
+
if (!oldCondition) return [3 /*break*/, 9];
|
|
351
|
+
promies_2 = [];
|
|
352
|
+
eachTree(tree, function (item, rowIndex) {
|
|
353
|
+
var record = item.storeType ? item.data : item;
|
|
354
|
+
promies_2.push(function () { return __awaiter(_this, void 0, void 0, function () {
|
|
355
|
+
var result;
|
|
356
|
+
return __generator(this, function (_a) {
|
|
357
|
+
result = evalExpression(oldCondition, createObject(ctx, {
|
|
358
|
+
record: record,
|
|
359
|
+
rowIndex: rowIndex,
|
|
360
|
+
item: record,
|
|
361
|
+
index: rowIndex,
|
|
362
|
+
indexPath: item.path
|
|
363
|
+
}));
|
|
364
|
+
result && targets.push(item);
|
|
365
|
+
return [2 /*return*/];
|
|
366
|
+
});
|
|
367
|
+
}); });
|
|
368
|
+
});
|
|
369
|
+
return [4 /*yield*/, Promise.all(promies_2.map(function (fn) { return fn(); }))];
|
|
370
|
+
case 8:
|
|
371
|
+
_b.sent();
|
|
372
|
+
_b.label = 9;
|
|
373
|
+
case 9: return [2 /*return*/, targets];
|
|
374
|
+
}
|
|
375
|
+
});
|
|
376
|
+
});
|
|
377
|
+
}
|
|
269
378
|
|
|
270
|
-
export { bindEvent, createRendererEvent, dispatchEvent, getRendererEventListeners, resolveEventData };
|
|
379
|
+
export { bindEvent, createRendererEvent, dispatchEvent, getMatchedEventTargets, getRendererEventListeners, resolveEventData };
|
package/esm/utils/replaceText.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function stripNumber(number: number): number;
|
|
1
|
+
export declare function stripNumber(number: number, precision?: number): number;
|
package/esm/utils/stripNumber.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.4.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
// 主要用于解决 0.1+0.2 结果的精度问题导致太长
|
|
7
|
-
function stripNumber(number) {
|
|
7
|
+
function stripNumber(number, precision) {
|
|
8
|
+
if (precision === void 0) { precision = 16; }
|
|
8
9
|
if (typeof number === 'number' && !Number.isInteger(number)) {
|
|
9
|
-
return parseFloat(number.toPrecision(
|
|
10
|
+
return parseFloat(number.toPrecision(precision));
|
|
10
11
|
}
|
|
11
12
|
else {
|
|
12
13
|
return number;
|
|
@@ -7,8 +7,27 @@ interface extra {
|
|
|
7
7
|
pre?: string;
|
|
8
8
|
suf?: string;
|
|
9
9
|
}
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
/**
|
|
11
|
+
* 查找或创建style标签
|
|
12
|
+
* @param param
|
|
13
|
+
* @param param.classId 根据classId查找或创建style标签
|
|
14
|
+
* @param param.id 用于赋值给style的class
|
|
15
|
+
* @param param.doc 文档对象,默认为document
|
|
16
|
+
* @param param.before 插入到某个class为id的style标签之前
|
|
17
|
+
*/
|
|
18
|
+
export declare function findOrCreateStyle({ classId, doc, before, id }: {
|
|
19
|
+
classId: string;
|
|
20
|
+
doc?: Document;
|
|
21
|
+
before?: string;
|
|
22
|
+
id?: string;
|
|
23
|
+
}): HTMLElement;
|
|
24
|
+
export declare function insertStyle({ style, classId, id, doc, before }: {
|
|
25
|
+
style: string;
|
|
26
|
+
classId: string;
|
|
27
|
+
id?: string;
|
|
28
|
+
doc?: Document;
|
|
29
|
+
before?: string;
|
|
30
|
+
}): void;
|
|
12
31
|
export declare function addStyle(style: string, id: string): void;
|
|
13
32
|
export declare function formatStyle(themeCss: any, classNames?: CustomStyleClassName[], id?: string, defaultData?: any, data?: any): {
|
|
14
33
|
value: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v6.
|
|
2
|
+
* amis-core v6.4.0
|
|
3
3
|
* Copyright 2018-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -41,18 +41,51 @@ var inheritValueMap = {
|
|
|
41
41
|
background: 'bg-color',
|
|
42
42
|
radius: 'border'
|
|
43
43
|
};
|
|
44
|
-
|
|
44
|
+
/**
|
|
45
|
+
* 查找或创建style标签
|
|
46
|
+
* @param param
|
|
47
|
+
* @param param.classId 根据classId查找或创建style标签
|
|
48
|
+
* @param param.id 用于赋值给style的class
|
|
49
|
+
* @param param.doc 文档对象,默认为document
|
|
50
|
+
* @param param.before 插入到某个class为id的style标签之前
|
|
51
|
+
*/
|
|
52
|
+
function findOrCreateStyle(_a) {
|
|
53
|
+
var _b;
|
|
54
|
+
var classId = _a.classId, doc = _a.doc, before = _a.before, id = _a.id;
|
|
45
55
|
doc = doc || document;
|
|
46
|
-
var varStyleTag = doc.getElementById(
|
|
56
|
+
var varStyleTag = doc.getElementById(classId);
|
|
47
57
|
if (!varStyleTag) {
|
|
48
58
|
varStyleTag = doc.createElement('style');
|
|
49
|
-
varStyleTag.id =
|
|
50
|
-
|
|
59
|
+
varStyleTag.id = classId;
|
|
60
|
+
varStyleTag.setAttribute('class', id || '');
|
|
61
|
+
var beforeStyleTag = (_b = doc.getElementsByClassName(before || '')) === null || _b === void 0 ? void 0 : _b[0];
|
|
62
|
+
// 如果存在before则插入到before之前,否则插入到body中
|
|
63
|
+
if (beforeStyleTag) {
|
|
64
|
+
beforeStyleTag.before(varStyleTag);
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
doc.body.appendChild(varStyleTag);
|
|
68
|
+
}
|
|
51
69
|
}
|
|
52
70
|
return varStyleTag;
|
|
53
71
|
}
|
|
54
|
-
|
|
55
|
-
|
|
72
|
+
/*
|
|
73
|
+
* 插入样式
|
|
74
|
+
* @param param
|
|
75
|
+
* @param param.style 样式内容
|
|
76
|
+
* @param param.classId 样式标识,会绑定到id上
|
|
77
|
+
* @param param.id id,会绑定到class上
|
|
78
|
+
* @param param.doc 文档对象
|
|
79
|
+
* @param param.before 插入到某个id之前
|
|
80
|
+
*/
|
|
81
|
+
function insertStyle(_a) {
|
|
82
|
+
var style = _a.style, classId = _a.classId, id = _a.id, doc = _a.doc, before = _a.before;
|
|
83
|
+
var varStyleTag = findOrCreateStyle({
|
|
84
|
+
classId: 'amis-' + classId,
|
|
85
|
+
doc: doc,
|
|
86
|
+
before: before,
|
|
87
|
+
id: id
|
|
88
|
+
});
|
|
56
89
|
// bca-disable-line
|
|
57
90
|
varStyleTag.innerHTML = style;
|
|
58
91
|
if (!style) {
|
|
@@ -60,7 +93,7 @@ function insertStyle(style, id, doc) {
|
|
|
60
93
|
}
|
|
61
94
|
}
|
|
62
95
|
function addStyle(style, id) {
|
|
63
|
-
var varStyleTag = findOrCreateStyle(id);
|
|
96
|
+
var varStyleTag = findOrCreateStyle({ classId: id });
|
|
64
97
|
// bca-disable-line
|
|
65
98
|
varStyleTag.innerHTML += style;
|
|
66
99
|
}
|
|
@@ -239,7 +272,14 @@ function insertCustomStyle(prams) {
|
|
|
239
272
|
if (typeof (data === null || data === void 0 ? void 0 : data.index) === 'number') {
|
|
240
273
|
classId += "-".concat(data.index);
|
|
241
274
|
}
|
|
242
|
-
|
|
275
|
+
// 这里需要插入到wrapperCustomStyle的前面
|
|
276
|
+
insertStyle({
|
|
277
|
+
style: value,
|
|
278
|
+
classId: classId,
|
|
279
|
+
doc: doc,
|
|
280
|
+
id: classId.replace(/(-.*)/, ''),
|
|
281
|
+
before: classId.replace(/(-.*)/, '')
|
|
282
|
+
});
|
|
243
283
|
}
|
|
244
284
|
/**
|
|
245
285
|
* 根据路径获取默认值
|
|
@@ -318,7 +358,12 @@ function insertEditCustomStyle(params) {
|
|
|
318
358
|
}
|
|
319
359
|
});
|
|
320
360
|
}
|
|
321
|
-
insertStyle(
|
|
361
|
+
insertStyle({
|
|
362
|
+
style: content,
|
|
363
|
+
classId: 'wrapperCustomStyle-' + ((id === null || id === void 0 ? void 0 : id.replace('u:', '')) || uuid()) + index,
|
|
364
|
+
doc: doc,
|
|
365
|
+
id: id === null || id === void 0 ? void 0 : id.replace('u:', '').replace(/(-.*)/, '')
|
|
366
|
+
});
|
|
322
367
|
}
|
|
323
368
|
/**
|
|
324
369
|
* 移除自定义样式
|
package/esm/utils/style.js
CHANGED
package/esm/utils/toNumber.js
CHANGED
package/esm/utils/tokenize.js
CHANGED