@next-core/brick-kit 2.158.1 → 2.159.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/dist/index.bundle.js +73 -50
- package/dist/index.bundle.js.map +1 -1
- package/dist/index.esm.js +74 -51
- package/dist/index.esm.js.map +1 -1
- package/dist/types/BrickAsComponent.d.ts.map +1 -1
- package/dist/types/core/CustomForms/ExpandCustomForm.d.ts +14 -13
- package/dist/types/core/CustomForms/ExpandCustomForm.d.ts.map +1 -1
- package/dist/types/core/Kernel.d.ts +2 -2
- package/dist/types/core/LocationContext.d.ts.map +1 -1
- package/dist/types/core/Runtime.d.ts +2 -2
- package/package.json +2 -2
package/dist/index.bundle.js
CHANGED
|
@@ -9299,9 +9299,9 @@
|
|
|
9299
9299
|
return defaultValue;
|
|
9300
9300
|
} else return {};
|
|
9301
9301
|
}
|
|
9302
|
-
function getStoryboard(
|
|
9302
|
+
function getStoryboard(dataSource, result, fields, isPreview, formContextId) {
|
|
9303
9303
|
var _loop = function (i) {
|
|
9304
|
-
var dataItem =
|
|
9304
|
+
var dataItem = dataSource[i];
|
|
9305
9305
|
var resultItem = {};
|
|
9306
9306
|
//数据初始化:根据id,字段类型获取默认属性
|
|
9307
9307
|
var defaultProperties = getDefaultProperties(dataItem.id, fields);
|
|
@@ -9349,7 +9349,7 @@
|
|
|
9349
9349
|
});
|
|
9350
9350
|
result[i] = resultItem;
|
|
9351
9351
|
};
|
|
9352
|
-
for (var i = 0; i <
|
|
9352
|
+
for (var i = 0; i < dataSource.length; i++) {
|
|
9353
9353
|
_loop(i);
|
|
9354
9354
|
}
|
|
9355
9355
|
return result;
|
|
@@ -9801,7 +9801,7 @@
|
|
|
9801
9801
|
}
|
|
9802
9802
|
tplStack.set(tplTagName, tplCount + 1);
|
|
9803
9803
|
}
|
|
9804
|
-
if (brickConf.brick === formRenderer) {
|
|
9804
|
+
if (brickConf.brick === formRenderer && typeof brickConf.properties.formData === "object") {
|
|
9805
9805
|
brickConf.properties.formData = JSON.stringify(brickConf.properties.formData);
|
|
9806
9806
|
}
|
|
9807
9807
|
var brick = {};
|
|
@@ -9856,7 +9856,7 @@
|
|
|
9856
9856
|
yield _this7.kernel.loadDynamicBricksInBrickConf(expandedBrickConf);
|
|
9857
9857
|
}
|
|
9858
9858
|
if (brick.type === formRenderer) {
|
|
9859
|
-
var formData = JSON.parse(brick.properties.formData);
|
|
9859
|
+
var formData = typeof brick.properties.formData === "string" ? JSON.parse(brick.properties.formData) : brick.properties.formData;
|
|
9860
9860
|
expandedBrickConf = yield AsyncExpandCustomForm(formData, brickConf, brick.properties.isPreview, context);
|
|
9861
9861
|
yield _this7.kernel.loadDynamicBricksInBrickConf(expandedBrickConf);
|
|
9862
9862
|
}
|
|
@@ -11514,8 +11514,7 @@
|
|
|
11514
11514
|
return location;
|
|
11515
11515
|
}
|
|
11516
11516
|
|
|
11517
|
-
|
|
11518
|
-
var template;
|
|
11517
|
+
function expandTemplateInUseBrick(useBrick, tplTagName, brick, requireSuspense) {
|
|
11519
11518
|
if (tplTagName) {
|
|
11520
11519
|
// 如果是模板, 需要展开解析模板, 并遍历模板中的slots, 再给slots的brick绑定值给自身
|
|
11521
11520
|
// 为后续ProxyRefs获取brick做值缓存
|
|
@@ -11526,12 +11525,11 @@
|
|
|
11526
11525
|
lifeCycle: useBrick.lifeCycle,
|
|
11527
11526
|
slots: useBrick.slots
|
|
11528
11527
|
};
|
|
11529
|
-
|
|
11528
|
+
return (requireSuspense ? asyncExpandCustomTemplate : expandCustomTemplate)(tplConf, brick, _internalApiGetCurrentContext());
|
|
11530
11529
|
} else if (useBrick[symbolForRefForProxy]) {
|
|
11531
11530
|
useBrick[symbolForRefForProxy].brick = brick;
|
|
11532
11531
|
}
|
|
11533
|
-
|
|
11534
|
-
};
|
|
11532
|
+
}
|
|
11535
11533
|
var getCurrentRunTimeBrick = (useBrick, tplTagName, data) => {
|
|
11536
11534
|
var trackingContextList = [];
|
|
11537
11535
|
var tplContextId = useBrick[symbolForTplContextId];
|
|
@@ -11573,7 +11571,7 @@
|
|
|
11573
11571
|
* @param props - 属性。
|
|
11574
11572
|
*/
|
|
11575
11573
|
var SingleBrickAsComponent = /*#__PURE__*/React__default["default"].memo(function SingleBrickAsComponent(_ref) {
|
|
11576
|
-
var _internalApiGetCurren,
|
|
11574
|
+
var _internalApiGetCurren, _brick, _ref8;
|
|
11577
11575
|
var {
|
|
11578
11576
|
useBrick,
|
|
11579
11577
|
data,
|
|
@@ -11583,10 +11581,10 @@
|
|
|
11583
11581
|
var firstRunRef = React.useRef(true);
|
|
11584
11582
|
var innerRefCallbackRef = React.useRef();
|
|
11585
11583
|
var elementRef = React.useRef();
|
|
11586
|
-
var
|
|
11587
|
-
var
|
|
11584
|
+
var expandedBrickConfRef = React.useRef();
|
|
11585
|
+
var [expandedBrickConf, setExpandedBrickConf] = React.useState(null);
|
|
11588
11586
|
var tplTagName = getTagNameOfCustomTemplate(useBrick.brick, (_internalApiGetCurren = _internalApiGetCurrentContext().app) === null || _internalApiGetCurren === void 0 ? void 0 : _internalApiGetCurren.id);
|
|
11589
|
-
var isBrickAvailable =
|
|
11587
|
+
var isBrickAvailable = React.useMemo(() => {
|
|
11590
11588
|
if (brickUtils.isObject(useBrick.if) && !isPreEvaluated(useBrick.if)) {
|
|
11591
11589
|
// eslint-disable-next-line
|
|
11592
11590
|
console.warn("Currently resolvable-if in `useBrick` is not supported.");
|
|
@@ -11599,7 +11597,17 @@
|
|
|
11599
11597
|
}
|
|
11600
11598
|
return true;
|
|
11601
11599
|
}, [useBrick, data]);
|
|
11602
|
-
var
|
|
11600
|
+
var requireSuspense = React.useMemo(() => {
|
|
11601
|
+
var context;
|
|
11602
|
+
if (useBrick.brick === formRenderer) {
|
|
11603
|
+
context = useBrick.properties.formData.context;
|
|
11604
|
+
} else if (tplTagName) {
|
|
11605
|
+
context = customTemplateRegistry.get(tplTagName).state;
|
|
11606
|
+
}
|
|
11607
|
+
return Array.isArray(context) && context.some(ctx => !!ctx.resolve);
|
|
11608
|
+
}, [tplTagName, useBrick]);
|
|
11609
|
+
var [suspenseReady, setSuspenseReady] = React.useState(false);
|
|
11610
|
+
var runtimeBrick = React.useMemo( /*#__PURE__*/_asyncToGenerator__default["default"](function* () {
|
|
11603
11611
|
if (!isBrickAvailable) {
|
|
11604
11612
|
return null;
|
|
11605
11613
|
}
|
|
@@ -11610,11 +11618,14 @@
|
|
|
11610
11618
|
}
|
|
11611
11619
|
_internalApiLoadDynamicBricksInBrickConf(useBrick).catch(handleHttpError);
|
|
11612
11620
|
var brick = getCurrentRunTimeBrick(useBrick, tplTagName, data);
|
|
11613
|
-
|
|
11614
|
-
if (
|
|
11615
|
-
|
|
11616
|
-
|
|
11621
|
+
var expanded = useBrick.brick === formRenderer ? (requireSuspense ? AsyncExpandCustomForm : ExpandCustomForm)(useBrick.properties.formData, useBrick, false) : expandTemplateInUseBrick(useBrick, tplTagName, brick, requireSuspense);
|
|
11622
|
+
if (requireSuspense) {
|
|
11623
|
+
setExpandedBrickConf(yield expanded);
|
|
11624
|
+
setSuspenseReady(true);
|
|
11625
|
+
} else {
|
|
11626
|
+
expandedBrickConfRef.current = expanded;
|
|
11617
11627
|
}
|
|
11628
|
+
|
|
11618
11629
|
// Let `transform` works still.
|
|
11619
11630
|
transformProperties(brick.properties, data, useBrick.transform, useBrick.transformFrom, undefined, {
|
|
11620
11631
|
allowInject: true
|
|
@@ -11637,7 +11648,7 @@
|
|
|
11637
11648
|
}));
|
|
11638
11649
|
}
|
|
11639
11650
|
return brick;
|
|
11640
|
-
}), [useBrick, data, isBrickAvailable, tplTagName]);
|
|
11651
|
+
}), [useBrick, data, isBrickAvailable, tplTagName, requireSuspense]);
|
|
11641
11652
|
var dispatchLifeCycleEvent = /*#__PURE__*/function () {
|
|
11642
11653
|
var _ref4 = _asyncToGenerator__default["default"](function* (event, handlers, brick) {
|
|
11643
11654
|
for (var handler of [].concat(handlers)) {
|
|
@@ -11734,13 +11745,13 @@
|
|
|
11734
11745
|
innerRefCallbackRef.current(element);
|
|
11735
11746
|
}, []);
|
|
11736
11747
|
var childConfs = React.useMemo(() => {
|
|
11737
|
-
var _ref7
|
|
11738
|
-
return slotsToChildren(((_ref7 =
|
|
11739
|
-
}, [
|
|
11740
|
-
if (!isBrickAvailable) {
|
|
11748
|
+
var _ref7;
|
|
11749
|
+
return slotsToChildren(((_ref7 = requireSuspense ? expandedBrickConf : expandedBrickConfRef.current) !== null && _ref7 !== void 0 ? _ref7 : useBrick).slots);
|
|
11750
|
+
}, [expandedBrickConf, expandedBrickConfRef.current, useBrick, requireSuspense]);
|
|
11751
|
+
if (!isBrickAvailable || requireSuspense && !suspenseReady) {
|
|
11741
11752
|
return null;
|
|
11742
11753
|
}
|
|
11743
|
-
return /*#__PURE__*/React__default["default"].createElement((
|
|
11754
|
+
return /*#__PURE__*/React__default["default"].createElement((_brick = (_ref8 = requireSuspense ? expandedBrickConf : expandedBrickConfRef.current) === null || _ref8 === void 0 ? void 0 : _ref8.brick) !== null && _brick !== void 0 ? _brick : tplTagName || useBrick.brick, {
|
|
11744
11755
|
ref: innerRefCallback
|
|
11745
11756
|
}, ...childConfs.map((item, index) => /*#__PURE__*/React__default["default"].createElement(SingleBrickAsComponent, {
|
|
11746
11757
|
key: index,
|
|
@@ -11767,11 +11778,11 @@
|
|
|
11767
11778
|
*
|
|
11768
11779
|
* @param props - 属性。
|
|
11769
11780
|
*/
|
|
11770
|
-
function BrickAsComponent(
|
|
11781
|
+
function BrickAsComponent(_ref9) {
|
|
11771
11782
|
var {
|
|
11772
11783
|
useBrick,
|
|
11773
11784
|
data
|
|
11774
|
-
} =
|
|
11785
|
+
} = _ref9;
|
|
11775
11786
|
if (Array.isArray(useBrick)) {
|
|
11776
11787
|
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, useBrick.map((item, index) => /*#__PURE__*/React__default["default"].createElement(SingleBrickAsComponent, {
|
|
11777
11788
|
key: index,
|
|
@@ -11788,8 +11799,8 @@
|
|
|
11788
11799
|
if (!slots) {
|
|
11789
11800
|
return [];
|
|
11790
11801
|
}
|
|
11791
|
-
return Object.entries(slots).flatMap(
|
|
11792
|
-
var [slot, slotConf] =
|
|
11802
|
+
return Object.entries(slots).flatMap(_ref10 => {
|
|
11803
|
+
var [slot, slotConf] = _ref10;
|
|
11793
11804
|
return Array.isArray(slotConf.bricks) ? slotConf.bricks.map(child => _objectSpread__default["default"](_objectSpread__default["default"]({}, child), {}, {
|
|
11794
11805
|
properties: _objectSpread__default["default"](_objectSpread__default["default"]({}, child.properties), {}, {
|
|
11795
11806
|
slot
|
|
@@ -11807,19 +11818,19 @@
|
|
|
11807
11818
|
|
|
11808
11819
|
/* istanbul ignore next */
|
|
11809
11820
|
// eslint-disable-next-line react/display-name
|
|
11810
|
-
var ForwardRefSingleBrickAsComponent = /*#__PURE__*/React__default["default"].memo( /*#__PURE__*/React.forwardRef(function LegacySingleBrickAsComponent(
|
|
11811
|
-
var _internalApiGetCurren2,
|
|
11821
|
+
var ForwardRefSingleBrickAsComponent = /*#__PURE__*/React__default["default"].memo( /*#__PURE__*/React.forwardRef(function LegacySingleBrickAsComponent(_ref11, ref) {
|
|
11822
|
+
var _internalApiGetCurren2, _brick2, _ref18;
|
|
11812
11823
|
var {
|
|
11813
11824
|
useBrick,
|
|
11814
11825
|
data,
|
|
11815
11826
|
refCallback
|
|
11816
|
-
} =
|
|
11827
|
+
} = _ref11;
|
|
11817
11828
|
var firstRunRef = React.useRef(true);
|
|
11818
11829
|
var innerRefCallbackRef = React.useRef();
|
|
11819
11830
|
var elementRef = React.useRef();
|
|
11820
|
-
var
|
|
11831
|
+
var expandedBrickConfRef = React.useRef();
|
|
11832
|
+
var [expandedBrickConf, setExpandedBrickConf] = React.useState(null);
|
|
11821
11833
|
var tplTagName = getTagNameOfCustomTemplate(useBrick.brick, (_internalApiGetCurren2 = _internalApiGetCurrentContext().app) === null || _internalApiGetCurren2 === void 0 ? void 0 : _internalApiGetCurren2.id);
|
|
11822
|
-
var formRef = React.useRef();
|
|
11823
11834
|
var isBrickAvailable = React__default["default"].useMemo(() => {
|
|
11824
11835
|
if (brickUtils.isObject(useBrick.if) && !isPreEvaluated(useBrick.if)) {
|
|
11825
11836
|
// eslint-disable-next-line
|
|
@@ -11833,6 +11844,16 @@
|
|
|
11833
11844
|
}
|
|
11834
11845
|
return true;
|
|
11835
11846
|
}, [useBrick, data]);
|
|
11847
|
+
var requireSuspense = React.useMemo(() => {
|
|
11848
|
+
var context;
|
|
11849
|
+
if (useBrick.brick === formRenderer) {
|
|
11850
|
+
context = useBrick.properties.formData.context;
|
|
11851
|
+
} else if (tplTagName) {
|
|
11852
|
+
context = customTemplateRegistry.get(tplTagName).state;
|
|
11853
|
+
}
|
|
11854
|
+
return Array.isArray(context) && context.some(ctx => !!ctx.resolve);
|
|
11855
|
+
}, [tplTagName, useBrick]);
|
|
11856
|
+
var [suspenseReady, setSuspenseReady] = React.useState(false);
|
|
11836
11857
|
|
|
11837
11858
|
/* istanbul ignore next (never reach in test) */
|
|
11838
11859
|
React.useImperativeHandle(ref, () => {
|
|
@@ -11849,10 +11870,12 @@
|
|
|
11849
11870
|
}
|
|
11850
11871
|
_internalApiLoadDynamicBricksInBrickConf(useBrick).catch(handleHttpError);
|
|
11851
11872
|
var brick = getCurrentRunTimeBrick(useBrick, tplTagName, data);
|
|
11852
|
-
|
|
11853
|
-
if (
|
|
11854
|
-
|
|
11855
|
-
|
|
11873
|
+
var expanded = useBrick.brick === formRenderer ? (requireSuspense ? AsyncExpandCustomForm : ExpandCustomForm)(useBrick.properties.formData, useBrick, false) : expandTemplateInUseBrick(useBrick, tplTagName, brick, requireSuspense);
|
|
11874
|
+
if (requireSuspense) {
|
|
11875
|
+
setExpandedBrickConf(yield expanded);
|
|
11876
|
+
setSuspenseReady(true);
|
|
11877
|
+
} else {
|
|
11878
|
+
expandedBrickConfRef.current = expanded;
|
|
11856
11879
|
}
|
|
11857
11880
|
|
|
11858
11881
|
// Let `transform` works still.
|
|
@@ -11862,8 +11885,8 @@
|
|
|
11862
11885
|
|
|
11863
11886
|
// 设置 properties refProperty值
|
|
11864
11887
|
if (useBrick[symbolForComputedPropsFromProxy]) {
|
|
11865
|
-
Object.entries(useBrick[symbolForComputedPropsFromProxy]).forEach(
|
|
11866
|
-
var [propName, propValue] =
|
|
11888
|
+
Object.entries(useBrick[symbolForComputedPropsFromProxy]).forEach(_ref13 => {
|
|
11889
|
+
var [propName, propValue] = _ref13;
|
|
11867
11890
|
_.set(brick.properties, propName, propValue);
|
|
11868
11891
|
});
|
|
11869
11892
|
}
|
|
@@ -11877,9 +11900,9 @@
|
|
|
11877
11900
|
}));
|
|
11878
11901
|
}
|
|
11879
11902
|
return brick;
|
|
11880
|
-
}), [useBrick, data, isBrickAvailable, tplTagName]);
|
|
11903
|
+
}), [useBrick, data, isBrickAvailable, tplTagName, requireSuspense]);
|
|
11881
11904
|
var dispatchLifeCycleEvent = /*#__PURE__*/function () {
|
|
11882
|
-
var
|
|
11905
|
+
var _ref14 = _asyncToGenerator__default["default"](function* (event, handlers, brick) {
|
|
11883
11906
|
for (var handler of [].concat(handlers)) {
|
|
11884
11907
|
listenerFactory(handler, _objectSpread__default["default"](_objectSpread__default["default"]({}, _internalApiGetCurrentContext()), {}, {
|
|
11885
11908
|
tplContextId: useBrick[symbolForTplContextId]
|
|
@@ -11887,7 +11910,7 @@
|
|
|
11887
11910
|
}
|
|
11888
11911
|
});
|
|
11889
11912
|
return function dispatchLifeCycleEvent(_x5, _x6, _x7) {
|
|
11890
|
-
return
|
|
11913
|
+
return _ref14.apply(this, arguments);
|
|
11891
11914
|
};
|
|
11892
11915
|
}();
|
|
11893
11916
|
var updateBrick = React.useCallback((brick, element) => {
|
|
@@ -11938,7 +11961,7 @@
|
|
|
11938
11961
|
})();
|
|
11939
11962
|
}, [runtimeBrick, updateBrick]);
|
|
11940
11963
|
innerRefCallbackRef.current = /*#__PURE__*/function () {
|
|
11941
|
-
var
|
|
11964
|
+
var _ref16 = _asyncToGenerator__default["default"](function* (element) {
|
|
11942
11965
|
elementRef.current = element;
|
|
11943
11966
|
var brick;
|
|
11944
11967
|
try {
|
|
@@ -11964,7 +11987,7 @@
|
|
|
11964
11987
|
refCallback === null || refCallback === void 0 ? void 0 : refCallback(element);
|
|
11965
11988
|
});
|
|
11966
11989
|
return function (_x8) {
|
|
11967
|
-
return
|
|
11990
|
+
return _ref16.apply(this, arguments);
|
|
11968
11991
|
};
|
|
11969
11992
|
}();
|
|
11970
11993
|
|
|
@@ -11973,13 +11996,13 @@
|
|
|
11973
11996
|
innerRefCallbackRef.current(element);
|
|
11974
11997
|
}, []);
|
|
11975
11998
|
var childConfs = React.useMemo(() => {
|
|
11976
|
-
var
|
|
11977
|
-
return slotsToChildren(((
|
|
11978
|
-
}, [
|
|
11979
|
-
if (!isBrickAvailable) {
|
|
11999
|
+
var _ref17;
|
|
12000
|
+
return slotsToChildren(((_ref17 = requireSuspense ? expandedBrickConf : expandedBrickConfRef.current) !== null && _ref17 !== void 0 ? _ref17 : useBrick).slots);
|
|
12001
|
+
}, [expandedBrickConf, expandedBrickConfRef.current, useBrick, requireSuspense]);
|
|
12002
|
+
if (!isBrickAvailable || requireSuspense && !suspenseReady) {
|
|
11980
12003
|
return null;
|
|
11981
12004
|
}
|
|
11982
|
-
return /*#__PURE__*/React__default["default"].createElement((
|
|
12005
|
+
return /*#__PURE__*/React__default["default"].createElement((_brick2 = (_ref18 = requireSuspense ? expandedBrickConf : expandedBrickConfRef.current) === null || _ref18 === void 0 ? void 0 : _ref18.brick) !== null && _brick2 !== void 0 ? _brick2 : tplTagName || useBrick.brick, {
|
|
11983
12006
|
ref: innerRefCallback
|
|
11984
12007
|
}, ...childConfs.map((item, index) => /*#__PURE__*/React__default["default"].createElement(SingleBrickAsComponent, {
|
|
11985
12008
|
key: index,
|