@next-core/brick-kit 2.159.4 → 2.160.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.esm.js CHANGED
@@ -841,6 +841,7 @@ function doTransform(data, to, options) {
841
841
  data
842
842
  };
843
843
  if (options !== null && options !== void 0 && options.tplContextId) runtimeContext.tplContextId = options.tplContextId;
844
+ if (options !== null && options !== void 0 && options.formContextId) runtimeContext.formContextId = options.formContextId;
844
845
  result = evaluate(to, runtimeContext, options === null || options === void 0 ? void 0 : options.evaluateOptions);
845
846
  dismissRecursiveMarkingInjected = shouldDismissRecursiveMarkingInjected(to);
846
847
  } else {
@@ -8107,8 +8108,11 @@ class Kernel {
8107
8108
  } = _this.bootstrapData;
8108
8109
  if (storyboard.dependsAll) {
8109
8110
  var dllPath = window.DLL_PATH || {};
8111
+ yield loadScriptOfDll(Object.values(dllPath));
8112
+ yield loadScriptOfBricksOrTemplates(brickPackages.map(item => item.filePath).concat(templatePackages.map(item => item.filePath)));
8113
+ yield loadAllLazyBricks();
8110
8114
  return {
8111
- pendingTask: loadScriptOfDll(Object.values(dllPath)).then(() => loadScriptOfBricksOrTemplates(brickPackages.map(item => item.filePath).concat(templatePackages.map(item => item.filePath)))).then(() => loadAllLazyBricks())
8115
+ pendingTask: Promise.resolve()
8112
8116
  };
8113
8117
  } else {
8114
8118
  // 先加载模板
@@ -8118,10 +8122,14 @@ class Kernel {
8118
8122
  var {
8119
8123
  dll,
8120
8124
  deps,
8121
- bricks
8125
+ bricks,
8126
+ byProcessors
8122
8127
  } = getDllAndDepsOfStoryboard(yield asyncProcessStoryboard(storyboard, brickTemplateRegistry, templatePackages), brickPackages, {
8123
8128
  ignoreBricksInUnusedCustomTemplates: true
8124
8129
  });
8130
+ // 需要先阻塞加载 Custom Processors。
8131
+ yield loadScriptOfDll(byProcessors.dll);
8132
+ yield loadScriptOfBricksOrTemplates(byProcessors.deps);
8125
8133
  // 加载构件资源时,不再阻塞后续业务数据的加载,在挂载构件时再等待该任务完成。
8126
8134
  // 挂载构件可能包括:Provider 构件实时挂载、路由准备完成后的统一挂载等。
8127
8135
  return {
@@ -11558,13 +11566,15 @@ function expandTemplateInUseBrick(useBrick, tplTagName, brick, requireSuspense)
11558
11566
  var getCurrentRunTimeBrick = (useBrick, tplTagName, data) => {
11559
11567
  var trackingContextList = [];
11560
11568
  var tplContextId = useBrick[symbolForTplContextId];
11569
+ var formContextId = useBrick[symbolForFormContextId];
11561
11570
  var transformOption = {
11562
11571
  // Keep lazy fields inside `useBrick` inside the `properties`.
11563
11572
  // They will be transformed by their `BrickAsComponent` later.
11564
11573
  $$lazyForUseBrick: true,
11565
11574
  trackingContextList,
11566
11575
  allowInject: true,
11567
- tplContextId
11576
+ tplContextId,
11577
+ formContextId
11568
11578
  };
11569
11579
  var properties = doTransform(data, cloneDeepWithInjectedMark(useBrick.properties) || {}, transformOption);
11570
11580
  var brick = _objectSpread(_objectSpread({}, useBrick), {}, {
@@ -11574,7 +11584,8 @@ var getCurrentRunTimeBrick = (useBrick, tplTagName, data) => {
11574
11584
  });
11575
11585
  var runtimeContext = _internalApiGetCurrentContext();
11576
11586
  listenOnTrackingContext(brick, trackingContextList, _objectSpread(_objectSpread({}, runtimeContext), {}, {
11577
- tplContextId
11587
+ tplContextId,
11588
+ formContextId
11578
11589
  }));
11579
11590
  return brick;
11580
11591
  };
@@ -11625,7 +11636,8 @@ var SingleBrickAsComponent = /*#__PURE__*/React.memo(function SingleBrickAsCompo
11625
11636
  var requireSuspense = useMemo(() => {
11626
11637
  var context;
11627
11638
  if (useBrick.brick === formRenderer) {
11628
- context = useBrick.properties.formData.context;
11639
+ var formData = typeof useBrick.properties.formData === "string" ? JSON.parse(useBrick.properties.formData) : useBrick.properties.formData;
11640
+ context = formData.context;
11629
11641
  } else if (tplTagName) {
11630
11642
  context = customTemplateRegistry.get(tplTagName).state;
11631
11643
  }
@@ -11643,7 +11655,7 @@ var SingleBrickAsComponent = /*#__PURE__*/React.memo(function SingleBrickAsCompo
11643
11655
  }
11644
11656
  _internalApiLoadDynamicBricksInBrickConf(useBrick).catch(handleHttpError);
11645
11657
  var brick = getCurrentRunTimeBrick(useBrick, tplTagName, data);
11646
- var expanded = useBrick.brick === formRenderer ? (requireSuspense ? AsyncExpandCustomForm : ExpandCustomForm)(useBrick.properties.formData, useBrick, false) : expandTemplateInUseBrick(useBrick, tplTagName, brick, requireSuspense);
11658
+ var expanded = useBrick.brick === formRenderer ? (requireSuspense ? AsyncExpandCustomForm : ExpandCustomForm)(typeof useBrick.properties.formData === "string" ? JSON.parse(useBrick.properties.formData) : useBrick.properties.formData, useBrick, false) : expandTemplateInUseBrick(useBrick, tplTagName, brick, requireSuspense);
11647
11659
  if (requireSuspense) {
11648
11660
  setExpandedBrickConf(yield expanded);
11649
11661
  setSuspenseReady(true);
@@ -11669,7 +11681,8 @@ var SingleBrickAsComponent = /*#__PURE__*/React.memo(function SingleBrickAsCompo
11669
11681
  brick: useBrick.brick,
11670
11682
  lifeCycle: useBrick.lifeCycle
11671
11683
  }, brick, _objectSpread(_objectSpread({}, _internalApiGetCurrentContext()), {}, {
11672
- tplContextId: useBrick[symbolForTplContextId]
11684
+ tplContextId: useBrick[symbolForTplContextId],
11685
+ formContextId: useBrick[symbolForFormContextId]
11673
11686
  }));
11674
11687
  }
11675
11688
  return brick;
@@ -11678,7 +11691,8 @@ var SingleBrickAsComponent = /*#__PURE__*/React.memo(function SingleBrickAsCompo
11678
11691
  var _ref4 = _asyncToGenerator$3(function* (event, handlers, brick) {
11679
11692
  for (var handler of [].concat(handlers)) {
11680
11693
  listenerFactory(handler, _objectSpread(_objectSpread({}, _internalApiGetCurrentContext()), {}, {
11681
- tplContextId: useBrick[symbolForTplContextId]
11694
+ tplContextId: useBrick[symbolForTplContextId],
11695
+ formContextId: useBrick[symbolForFormContextId]
11682
11696
  }), brick)(event);
11683
11697
  }
11684
11698
  });
@@ -11691,6 +11705,9 @@ var SingleBrickAsComponent = /*#__PURE__*/React.memo(function SingleBrickAsCompo
11691
11705
  var {
11692
11706
  [symbolForTplContextId]: tplContextId
11693
11707
  } = useBrick;
11708
+ var {
11709
+ [symbolForFormContextId]: formContextId
11710
+ } = useBrick;
11694
11711
  if (useBrick.iid) {
11695
11712
  element.dataset.iid = useBrick.iid;
11696
11713
  }
@@ -11698,7 +11715,8 @@ var SingleBrickAsComponent = /*#__PURE__*/React.memo(function SingleBrickAsCompo
11698
11715
  unbindListeners(element);
11699
11716
  if (brick.events) {
11700
11717
  bindListeners(element, transformEvents(data, brick.events), _objectSpread(_objectSpread({}, _internalApiGetCurrentContext()), {}, {
11701
- tplContextId
11718
+ tplContextId,
11719
+ formContextId
11702
11720
  }));
11703
11721
  }
11704
11722
  // 设置proxyEvent
@@ -11872,7 +11890,8 @@ var ForwardRefSingleBrickAsComponent = /*#__PURE__*/React.memo( /*#__PURE__*/for
11872
11890
  var requireSuspense = useMemo(() => {
11873
11891
  var context;
11874
11892
  if (useBrick.brick === formRenderer) {
11875
- context = useBrick.properties.formData.context;
11893
+ var formData = typeof useBrick.properties.formData === "string" ? JSON.parse(useBrick.properties.formData) : useBrick.properties.formData;
11894
+ context = formData.context;
11876
11895
  } else if (tplTagName) {
11877
11896
  context = customTemplateRegistry.get(tplTagName).state;
11878
11897
  }
@@ -11895,7 +11914,7 @@ var ForwardRefSingleBrickAsComponent = /*#__PURE__*/React.memo( /*#__PURE__*/for
11895
11914
  }
11896
11915
  _internalApiLoadDynamicBricksInBrickConf(useBrick).catch(handleHttpError);
11897
11916
  var brick = getCurrentRunTimeBrick(useBrick, tplTagName, data);
11898
- var expanded = useBrick.brick === formRenderer ? (requireSuspense ? AsyncExpandCustomForm : ExpandCustomForm)(useBrick.properties.formData, useBrick, false) : expandTemplateInUseBrick(useBrick, tplTagName, brick, requireSuspense);
11917
+ var expanded = useBrick.brick === formRenderer ? (requireSuspense ? AsyncExpandCustomForm : ExpandCustomForm)(typeof useBrick.properties.formData === "string" ? JSON.parse(useBrick.properties.formData) : useBrick.properties.formData, useBrick, false) : expandTemplateInUseBrick(useBrick, tplTagName, brick, requireSuspense);
11899
11918
  if (requireSuspense) {
11900
11919
  setExpandedBrickConf(yield expanded);
11901
11920
  setSuspenseReady(true);