@next-core/runtime 1.44.4 → 1.46.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.
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.customEditors = void 0;
7
+ class CustomEditorRegistry {
8
+ #registry = new Map();
9
+ define(editorName, editorFunc) {
10
+ if (this.#registry.has(editorName)) {
11
+ throw new Error(`Custom editor of "${editorName}" already registered`);
12
+ }
13
+ this.#registry.set(editorName, editorFunc);
14
+ }
15
+ get(editorName) {
16
+ return this.#registry.get(editorName);
17
+ }
18
+ }
19
+ const customEditors = exports.customEditors = new CustomEditorRegistry();
20
+ //# sourceMappingURL=CustomEditors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomEditors.js","names":["CustomEditorRegistry","registry","Map","define","editorName","editorFunc","has","Error","set","get","customEditors","exports"],"sources":["../../src/CustomEditors.ts"],"sourcesContent":["class CustomEditorRegistry {\n readonly #registry = new Map<string, Function>();\n\n define(editorName: string, editorFunc: Function) {\n if (this.#registry.has(editorName)) {\n throw new Error(`Custom editor of \"${editorName}\" already registered`);\n }\n\n this.#registry.set(editorName, editorFunc);\n }\n\n get(editorName: string) {\n return this.#registry.get(editorName);\n }\n}\n\nexport const customEditors = new CustomEditorRegistry();\n"],"mappings":";;;;;;AAAA,MAAMA,oBAAoB,CAAC;EAChB,CAACC,QAAQ,GAAG,IAAIC,GAAG,CAAmB,CAAC;EAEhDC,MAAMA,CAACC,UAAkB,EAAEC,UAAoB,EAAE;IAC/C,IAAI,IAAI,CAAC,CAACJ,QAAQ,CAACK,GAAG,CAACF,UAAU,CAAC,EAAE;MAClC,MAAM,IAAIG,KAAK,CAAC,qBAAqBH,UAAU,sBAAsB,CAAC;IACxE;IAEA,IAAI,CAAC,CAACH,QAAQ,CAACO,GAAG,CAACJ,UAAU,EAAEC,UAAU,CAAC;EAC5C;EAEAI,GAAGA,CAACL,UAAkB,EAAE;IACtB,OAAO,IAAI,CAAC,CAACH,QAAQ,CAACQ,GAAG,CAACL,UAAU,CAAC;EACvC;AACF;AAEO,MAAMM,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,IAAIV,oBAAoB,CAAC,CAAC","ignoreList":[]}
package/dist/cjs/index.js CHANGED
@@ -139,6 +139,18 @@ Object.keys(_auth).forEach(function (key) {
139
139
  }
140
140
  });
141
141
  });
142
+ var _CustomEditors = require("./CustomEditors.js");
143
+ Object.keys(_CustomEditors).forEach(function (key) {
144
+ if (key === "default" || key === "__esModule") return;
145
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
146
+ if (key in exports && exports[key] === _CustomEditors[key]) return;
147
+ Object.defineProperty(exports, key, {
148
+ enumerable: true,
149
+ get: function () {
150
+ return _CustomEditors[key];
151
+ }
152
+ });
153
+ });
142
154
  var _CustomProcessors = require("./CustomProcessors.js");
143
155
  Object.keys(_CustomProcessors).forEach(function (key) {
144
156
  if (key === "default" || key === "__esModule") return;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_auth","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_CustomProcessors","_CustomTemplates","_fetchByProvider","_getBasePath","_getPageInfo","_handleHttpError","_history","_createRoot","_getRealValue","_Runtime","__secret_internals","_interopRequireWildcard","_test_only","_themeAndMode","_checkIf","_WidgetFunctions","_WidgetI18n","_StoryboardFunctionRegistry","_matchPath","_Notification","_Dialog","_getV2RuntimeFromDll","_setUIVersion"],"sources":["../../src/index.ts"],"sourcesContent":["export * from \"./auth.js\";\nexport * from \"./CustomProcessors.js\";\nexport * from \"./CustomTemplates.js\";\nexport * from \"./fetchByProvider.js\";\nexport * from \"./getBasePath.js\";\nexport * from \"./getPageInfo.js\";\nexport * from \"./handleHttpError.js\";\nexport * from \"./history.js\";\nexport * from \"./createRoot.js\";\nexport * from \"./getRealValue.js\";\nexport {\n createRuntime,\n getRuntime,\n type RuntimeOptions,\n type RuntimeHooks,\n type RuntimeHooksMenuHelpers,\n type ImagesFactory,\n type PageViewInfo,\n} from \"./internal/Runtime.js\";\nimport * as __secret_internals from \"./internal/secret_internals.js\";\nexport { __secret_internals };\nexport { __test_only } from \"./internal/test_only.js\";\nexport {\n getCssPropertyValue,\n getCurrentTheme,\n getCurrentMode,\n batchSetAppsLocalTheme,\n applyTheme,\n} from \"./themeAndMode.js\";\nexport {\n checkIfOfComputed,\n checkIfByTransform,\n} from \"./internal/compute/checkIf.js\";\nexport { registerWidgetFunctions } from \"./internal/compute/WidgetFunctions.js\";\nexport { registerWidgetI18n } from \"./internal/compute/WidgetI18n.js\";\nexport { StoryboardFunctionRegistryFactory } from \"./StoryboardFunctionRegistry.js\";\nexport { matchPath } from \"./internal/matchPath.js\";\nexport { Notification, type NotificationOptions } from \"./Notification.js\";\nexport { Dialog, type DialogOptions } from \"./Dialog.js\";\nexport * from \"./getV2RuntimeFromDll.js\";\nexport { setUIVersion } from \"./setUIVersion.js\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_auth","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_CustomEditors","_CustomProcessors","_CustomTemplates","_fetchByProvider","_getBasePath","_getPageInfo","_handleHttpError","_history","_createRoot","_getRealValue","_Runtime","__secret_internals","_interopRequireWildcard","_test_only","_themeAndMode","_checkIf","_WidgetFunctions","_WidgetI18n","_StoryboardFunctionRegistry","_matchPath","_Notification","_Dialog","_getV2RuntimeFromDll","_setUIVersion"],"sources":["../../src/index.ts"],"sourcesContent":["export * from \"./auth.js\";\nexport * from \"./CustomEditors.js\";\nexport * from \"./CustomProcessors.js\";\nexport * from \"./CustomTemplates.js\";\nexport * from \"./fetchByProvider.js\";\nexport * from \"./getBasePath.js\";\nexport * from \"./getPageInfo.js\";\nexport * from \"./handleHttpError.js\";\nexport * from \"./history.js\";\nexport * from \"./createRoot.js\";\nexport * from \"./getRealValue.js\";\nexport {\n createRuntime,\n getRuntime,\n type RuntimeOptions,\n type RuntimeHooks,\n type RuntimeHooksMenuHelpers,\n type ImagesFactory,\n type PageViewInfo,\n} from \"./internal/Runtime.js\";\nimport * as __secret_internals from \"./internal/secret_internals.js\";\nexport { __secret_internals };\nexport { __test_only } from \"./internal/test_only.js\";\nexport {\n getCssPropertyValue,\n getCurrentTheme,\n getCurrentMode,\n batchSetAppsLocalTheme,\n applyTheme,\n} from \"./themeAndMode.js\";\nexport {\n checkIfOfComputed,\n checkIfByTransform,\n} from \"./internal/compute/checkIf.js\";\nexport { registerWidgetFunctions } from \"./internal/compute/WidgetFunctions.js\";\nexport { registerWidgetI18n } from \"./internal/compute/WidgetI18n.js\";\nexport { StoryboardFunctionRegistryFactory } from \"./StoryboardFunctionRegistry.js\";\nexport { matchPath } from \"./internal/matchPath.js\";\nexport { Notification, type NotificationOptions } from \"./Notification.js\";\nexport { Dialog, type DialogOptions } from \"./Dialog.js\";\nexport * from \"./getV2RuntimeFromDll.js\";\nexport { setUIVersion } from \"./setUIVersion.js\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,KAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAL,KAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAb,KAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,cAAA,GAAAb,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAW,cAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAS,cAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,cAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;AACA,IAAAU,iBAAA,GAAAd,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAY,iBAAA,EAAAX,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAU,iBAAA,CAAAV,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,iBAAA,CAAAV,GAAA;IAAA;EAAA;AAAA;AACA,IAAAW,gBAAA,GAAAf,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAa,gBAAA,EAAAZ,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAW,gBAAA,CAAAX,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,gBAAA,CAAAX,GAAA;IAAA;EAAA;AAAA;AACA,IAAAY,gBAAA,GAAAhB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAc,gBAAA,EAAAb,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAY,gBAAA,CAAAZ,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAI,gBAAA,CAAAZ,GAAA;IAAA;EAAA;AAAA;AACA,IAAAa,YAAA,GAAAjB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAe,YAAA,EAAAd,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAa,YAAA,CAAAb,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAK,YAAA,CAAAb,GAAA;IAAA;EAAA;AAAA;AACA,IAAAc,YAAA,GAAAlB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAgB,YAAA,EAAAf,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAc,YAAA,CAAAd,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAM,YAAA,CAAAd,GAAA;IAAA;EAAA;AAAA;AACA,IAAAe,gBAAA,GAAAnB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAiB,gBAAA,EAAAhB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAe,gBAAA,CAAAf,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAO,gBAAA,CAAAf,GAAA;IAAA;EAAA;AAAA;AACA,IAAAgB,QAAA,GAAApB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAkB,QAAA,EAAAjB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAgB,QAAA,CAAAhB,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAQ,QAAA,CAAAhB,GAAA;IAAA;EAAA;AAAA;AACA,IAAAiB,WAAA,GAAArB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAmB,WAAA,EAAAlB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAiB,WAAA,CAAAjB,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAS,WAAA,CAAAjB,GAAA;IAAA;EAAA;AAAA;AACA,IAAAkB,aAAA,GAAAtB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAoB,aAAA,EAAAnB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAkB,aAAA,CAAAlB,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAU,aAAA,CAAAlB,GAAA;IAAA;EAAA;AAAA;AACA,IAAAmB,QAAA,GAAAvB,OAAA;AASA,IAAAwB,kBAAA,GAAAC,uBAAA,CAAAzB,OAAA;AAAqES,OAAA,CAAAe,kBAAA,GAAAA,kBAAA;AAErE,IAAAE,UAAA,GAAA1B,OAAA;AACA,IAAA2B,aAAA,GAAA3B,OAAA;AAOA,IAAA4B,QAAA,GAAA5B,OAAA;AAIA,IAAA6B,gBAAA,GAAA7B,OAAA;AACA,IAAA8B,WAAA,GAAA9B,OAAA;AACA,IAAA+B,2BAAA,GAAA/B,OAAA;AACA,IAAAgC,UAAA,GAAAhC,OAAA;AACA,IAAAiC,aAAA,GAAAjC,OAAA;AACA,IAAAkC,OAAA,GAAAlC,OAAA;AACA,IAAAmC,oBAAA,GAAAnC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAiC,oBAAA,EAAAhC,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAA+B,oBAAA,CAAA/B,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAuB,oBAAA,CAAA/B,GAAA;IAAA;EAAA;AAAA;AACA,IAAAgC,aAAA,GAAApC,OAAA","ignoreList":[]}
@@ -41,6 +41,7 @@ let runtime;
41
41
  // Allow inject bootstrap data in a runtime other than Brick Next.
42
42
  let bootstrapData;
43
43
  let router;
44
+ let processedBrickPackages;
44
45
  let hooks = exports.hooks = void 0;
45
46
  function createRuntime(options) {
46
47
  if (runtime) {
@@ -226,7 +227,10 @@ function processPublicDepsPackages(brickPackages, pubDeps) {
226
227
  }
227
228
  function getBrickPackages() {
228
229
  var _bootstrapData7;
229
- return processPublicDepsPackages((_bootstrapData7 = bootstrapData) === null || _bootstrapData7 === void 0 ? void 0 : _bootstrapData7.brickPackages, window.PUBLIC_DEPS) ?? _injected.injectedBrickPackages ?? window.STANDALONE_BRICK_PACKAGES ?? [];
230
+ return (
231
+ // Not necessary to process brick packages multiple times.
232
+ processedBrickPackages ?? (processedBrickPackages = processPublicDepsPackages(((_bootstrapData7 = bootstrapData) === null || _bootstrapData7 === void 0 ? void 0 : _bootstrapData7.brickPackages) ?? _injected.injectedBrickPackages ?? window.STANDALONE_BRICK_PACKAGES ?? [], window.PUBLIC_DEPS))
233
+ );
230
234
  }
231
235
  function _internalApiGetRenderId() {
232
236
  var _router6;
@@ -1 +1 @@
1
- {"version":3,"file":"Runtime.js","names":["_i18n","require","_loader","_general","_moment","_interopRequireDefault","_history","_matchStoryboard","_Router","_i18n2","_Notification","_Dialog","_injected","_hasInstalledApp","_devtools","_getV2RuntimeFromDll","_customizeColorTheme","runtime","bootstrapData","router","hooks","exports","createRuntime","options","Error","listenDevtoolsEagerly","initializeI18n","NS","locales","moment","locale","i18n","language","on","createHistory","Runtime","getRuntimeV3","getRuntimeV2Factory","v2Kit","getV2RuntimeFromDll","getRuntimeV2","Proxy","getRuntime","get","args","key","Reflect","_initialized","WeakMap","_bootstrapped","_Runtime_brand","WeakSet","constructor","_classPrivateMethodInitSpec2","default","_classPrivateFieldInitSpec2","_defineProperty2","initialize","data","_data$settings","_classPrivateFieldGet2","_classPrivateFieldSet2","normalizeBootstrapData","notification","dialog","_assertClassBrand2","_getPresetBricks","call","loadNotificationService","loadBricks","loadDialogService","customizeColorTheme","settings","misc","theme","bootstrap","Router","storyboards","getRecentApps","_router","getCurrentApp","_router2","currentApp","hasInstalledApp","appId","matchVersion","getFeatureFlags","_bootstrapData","_router3","featureFlags","config","getMiscSettings","_bootstrapData2","_router4","getBrandSettings","_bootstrapData3","base_title","brand","getLaunchpadSettings","_bootstrapData4","columns","rows","launchpad","getDesktops","_bootstrapData5","desktops","getLaunchpadSiteMap","_bootstrapData6","siteSort","toggleLaunchpadEffect","open","document","body","classList","toggle","applyPageTitle","pageTitle","baseTitle","title","getNavConfig","_router5","bricks","loadBricksImperatively","getBrickPackages","_bootstrapData10","presetBricks","isObject","deepFreeze","brickPackages","processPublicDepsPackages","pubDeps","length","bricksMap","Map","forEach","pkg","pkgName","filePath","split","has","set","Array","from","values","_bootstrapData7","window","PUBLIC_DEPS","injectedBrickPackages","STANDALONE_BRICK_PACKAGES","_internalApiGetRenderId","_router6","getRenderId","_internalApiMatchStoryboard","pathname","_bootstrapData8","matchStoryboard","_internalApiGetRuntimeContext","_router7","getRuntimeContext","_internalApiGetStoryboardInBootstrapData","_bootstrapData9","find","storyboard","app","id","_internalApiGetAppInBootstrapData","_internalApiGetStoryb","_test_only_setBootstrapData","process","env","NODE_ENV"],"sources":["../../../src/internal/Runtime.ts"],"sourcesContent":["import type {\n RuntimeStoryboard,\n BootstrapSettings,\n FeatureFlags,\n BootstrapData,\n Contract,\n Storyboard,\n BrickConf,\n RouteConf,\n ResolveConf,\n BrickPackage,\n} from \"@next-core/types\";\nimport { i18n, initializeI18n } from \"@next-core/i18n\";\nimport { loadBricksImperatively } from \"@next-core/loader\";\nimport { deepFreeze, isObject } from \"@next-core/utils/general\";\nimport type { PermissionApi_validatePermissions } from \"@next-api-sdk/micro-app-sdk\";\nimport moment from \"moment\";\nimport \"moment/locale/zh-cn.js\";\nimport { createHistory } from \"../history.js\";\nimport { matchStoryboard } from \"./matchStoryboard.js\";\nimport { Router } from \"./Router.js\";\nimport { NS, locales } from \"./i18n.js\";\nimport { loadNotificationService } from \"../Notification.js\";\nimport { loadDialogService } from \"../Dialog.js\";\nimport { injectedBrickPackages } from \"./injected.js\";\nimport { type AppForCheck, hasInstalledApp } from \"./hasInstalledApp.js\";\nimport type { RuntimeContext } from \"./interfaces.js\";\nimport { listenDevtoolsEagerly } from \"./devtools.js\";\nimport { getV2RuntimeFromDll } from \"../getV2RuntimeFromDll.js\";\nimport { ThemeSettings, customizeColorTheme } from \"./customizeColorTheme.js\";\n\nlet runtime: Runtime;\n\n// Allow inject bootstrap data in a runtime other than Brick Next.\nlet bootstrapData: BootstrapData | undefined;\nlet router: Router | undefined;\n\nexport interface RuntimeOptions {\n hooks?: RuntimeHooks;\n}\n\nexport interface ImagesFactory {\n get(name: string): string;\n}\n\nexport interface PageViewInfo {\n status: \"ok\" | \"failed\" | \"redirected\" | \"not-found\";\n path?: string;\n pageTitle?: string;\n}\n\nexport interface RuntimeHooks {\n auth?: {\n getAuth(): object;\n isLoggedIn(): boolean;\n authenticate?(...args: unknown[]): unknown;\n logout?(...args: unknown[]): unknown;\n };\n fulfilStoryboard?: (storyboard: RuntimeStoryboard) => Promise<void>;\n validatePermissions?: typeof PermissionApi_validatePermissions;\n checkPermissions?: {\n checkPermissions(...actions: string[]): boolean;\n preCheckPermissions(storyboard: Storyboard): Promise<void> | undefined;\n preCheckPermissionsForBrickOrRoute(\n container: BrickConf | RouteConf,\n asyncComputeRealValue: (value: unknown) => Promise<unknown>\n ): Promise<void> | undefined;\n };\n checkInstalledApps?: {\n preCheckInstalledApps(\n storyboard: Storyboard,\n hasAppInBootstrap: (appId: string) => boolean\n ): void;\n waitForCheckingApps(appIds: string[]): Promise<void>;\n getCheckedApp(appId: string): AppForCheck | undefined;\n };\n flowApi?: {\n FLOW_API_PROVIDER: string;\n registerFlowApiProvider(): void;\n isFlowApiProvider(provider: string): boolean;\n getArgsOfFlowApi(\n provider: string,\n originalArgs: unknown[],\n method?: string,\n stream?: boolean\n ): Promise<unknown[]>;\n collectContract(contracts: Contract[] | undefined): void;\n collectWidgetContract(contracts: Contract[] | undefined): void;\n clearCollectWidgetContract(): void;\n };\n menu?: {\n getMenuById(menuId: string): unknown;\n fetchMenuById(\n menuId: string,\n runtimeContext: RuntimeContext,\n runtimeHelpers: RuntimeHooksMenuHelpers\n ): Promise<unknown>;\n };\n images?: {\n imagesFactory(\n appId: string,\n isBuildPush?: boolean,\n version?: string\n ): ImagesFactory;\n widgetImagesFactory(\n widgetId: string,\n widgetVersion?: string\n ): ImagesFactory;\n };\n messageDispatcher?: {\n subscribe(...args: unknown[]): Promise<unknown>;\n unsubscribe(...args: unknown[]): Promise<unknown>;\n onMessage(channel: string, listener: (data: unknown) => void): void;\n onClose(listener: () => void): void;\n reset(): void;\n };\n pageView?: {\n create(): (info: PageViewInfo) => void;\n };\n}\n\nexport interface RuntimeHooksMenuHelpers {\n getStoryboardByAppId(appId: string): Storyboard | undefined;\n resolveData(\n resolveConf: ResolveConf,\n runtimeContext: RuntimeContext\n ): Promise<unknown>;\n asyncComputeRealValue(\n value: unknown,\n runtimeContext: RuntimeContext,\n options?: { ignoreSymbols?: boolean; noInject?: boolean }\n ): Promise<unknown>;\n}\n\nexport let hooks: RuntimeHooks | undefined;\n\nexport function createRuntime(options?: RuntimeOptions) {\n if (runtime) {\n throw new Error(\"Cannot create multiple runtimes\");\n }\n listenDevtoolsEagerly();\n hooks = options?.hooks;\n initializeI18n(NS, locales);\n moment.locale(i18n.language);\n i18n.on(\"languageChanged\", () => {\n moment.locale(i18n.language);\n });\n createHistory();\n runtime = new Runtime();\n return runtime;\n}\n\nfunction getRuntimeV3() {\n return runtime;\n}\n\n// istanbul ignore next\nfunction getRuntimeV2Factory() {\n const v2Kit = getV2RuntimeFromDll();\n if (v2Kit) {\n return function getRuntimeV2() {\n return new Proxy(v2Kit.getRuntime(), {\n get(...args) {\n const key = args[1];\n switch (key) {\n case \"getCurrentApp\":\n case \"getRecentApps\":\n case \"hasInstalledApp\":\n case \"getDesktops\":\n case \"getLaunchpadSettings\":\n case \"getLaunchpadSiteMap\":\n case \"toggleLaunchpadEffect\":\n case \"applyPageTitle\":\n case \"getNavConfig\":\n case \"getFeatureFlags\":\n case \"getMiscSettings\":\n case \"getBrandSettings\":\n return Reflect.get(...args);\n }\n },\n }) as unknown as Runtime;\n };\n }\n}\n\n// istanbul ignore next\nexport const getRuntime = getRuntimeV2Factory() || getRuntimeV3;\n\nexport class Runtime {\n #initialized = false;\n #bootstrapped = false;\n\n readonly version: number | undefined = 3;\n\n initialize(data: BootstrapData) {\n if (this.#initialized) {\n throw new Error(\"The runtime cannot be initialized more than once\");\n }\n this.#initialized = true;\n normalizeBootstrapData(data);\n bootstrapData = data;\n const { notification, dialog } = this.#getPresetBricks();\n if (notification !== false) {\n loadNotificationService(\n notification ?? \"basic.show-notification\",\n this.loadBricks\n );\n }\n if (dialog !== false) {\n loadDialogService(dialog ?? \"basic.show-dialog\", this.loadBricks);\n }\n customizeColorTheme(data.settings?.misc?.theme as ThemeSettings);\n }\n\n async bootstrap(data?: BootstrapData) {\n if (data) {\n this.initialize(data);\n }\n if (this.#bootstrapped) {\n throw new Error(\"The runtime cannot be bootstrapped more than once\");\n }\n this.#bootstrapped = true;\n router = new Router(bootstrapData!.storyboards!);\n await router.bootstrap();\n }\n\n getRecentApps() {\n return router?.getRecentApps() ?? {};\n }\n\n getCurrentApp() {\n return router?.getRecentApps().currentApp;\n }\n\n hasInstalledApp(appId: string, matchVersion?: string): boolean {\n return hasInstalledApp(appId, matchVersion);\n }\n\n getFeatureFlags(): FeatureFlags {\n return {\n ...bootstrapData?.settings?.featureFlags,\n ...(\n router?.getRecentApps().currentApp?.config\n ?.settings as BootstrapSettings\n )?.featureFlags,\n \"migrate-to-brick-next-v3\": true,\n };\n }\n\n getMiscSettings() {\n return {\n ...bootstrapData?.settings?.misc,\n ...(\n router?.getRecentApps().currentApp?.config\n ?.settings as BootstrapSettings\n )?.misc,\n };\n }\n\n getBrandSettings(): Record<string, string> {\n return {\n base_title: \"DevOps 管理专家\",\n ...(bootstrapData?.settings?.brand as Record<string, string>),\n };\n }\n\n getLaunchpadSettings() {\n return {\n columns: 7,\n rows: 4,\n ...bootstrapData?.settings?.launchpad,\n };\n }\n\n getDesktops(): unknown[] {\n return bootstrapData?.desktops ?? [];\n }\n\n getLaunchpadSiteMap(): unknown[] {\n return bootstrapData?.siteSort ?? [];\n }\n\n toggleLaunchpadEffect(open: boolean): void {\n document.body.classList.toggle(\"launchpad-open\", open);\n }\n\n applyPageTitle(pageTitle: string): void {\n const baseTitle = this.getBrandSettings().base_title;\n document.title = pageTitle ? `${pageTitle} - ${baseTitle}` : baseTitle;\n }\n\n getNavConfig() {\n return router?.getNavConfig();\n }\n\n loadBricks(bricks: string[] | Set<string>) {\n return loadBricksImperatively(bricks, getBrickPackages());\n }\n\n #getPresetBricks() {\n return (bootstrapData?.settings?.presetBricks ?? {}) as {\n notification?: string | false;\n dialog?: string | false;\n };\n }\n}\n\nfunction normalizeBootstrapData(data: BootstrapData) {\n if (isObject(data.settings)) {\n deepFreeze(data.settings);\n }\n if (data.brickPackages) {\n deepFreeze(data.brickPackages);\n }\n}\n\nfunction processPublicDepsPackages(\n brickPackages: BrickPackage[],\n pubDeps: BrickPackage[]\n): BrickPackage[] {\n if (!pubDeps?.length) return brickPackages;\n\n const bricksMap = new Map();\n\n // bootstrapData 数据和 pubDeps 中可能同时存在同一个包名,需要过滤去重, 以 pubDeps 中的包为准\n [...pubDeps, ...brickPackages].forEach((pkg) => {\n const pkgName = pkg.filePath.split(\"/\")[1];\n // 始终将 pubDeps 放在前面\n if (!bricksMap.has(pkgName)) {\n bricksMap.set(pkgName, pkg);\n }\n });\n\n return Array.from(bricksMap.values());\n}\n\nexport function getBrickPackages() {\n return (\n processPublicDepsPackages(\n bootstrapData?.brickPackages as BrickPackage[],\n window.PUBLIC_DEPS as BrickPackage[]\n ) ??\n injectedBrickPackages ??\n (window.STANDALONE_BRICK_PACKAGES as BrickPackage[]) ??\n []\n );\n}\n\nexport function _internalApiGetRenderId(): string | undefined {\n return router?.getRenderId();\n}\n\nexport function _internalApiMatchStoryboard(\n pathname: string\n): RuntimeStoryboard | undefined {\n return matchStoryboard(bootstrapData?.storyboards ?? [], pathname);\n}\n\nexport function _internalApiGetRuntimeContext() {\n return router?.getRuntimeContext();\n}\n\nexport function _internalApiGetStoryboardInBootstrapData(appId: string) {\n return bootstrapData?.storyboards?.find(\n (storyboard) => storyboard.app.id === appId\n );\n}\n\nexport function _internalApiGetAppInBootstrapData(appId: string) {\n return _internalApiGetStoryboardInBootstrapData(appId)?.app;\n}\n\nexport let _test_only_setBootstrapData: (data: BootstrapData) => void;\n\n// istanbul ignore next\nif (process.env.NODE_ENV === \"test\") {\n _test_only_setBootstrapData = (data) => {\n bootstrapData = data as BootstrapData;\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAYA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAEA,IAAAG,OAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACAA,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,gBAAA,GAAAN,OAAA;AACA,IAAAO,OAAA,GAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AACA,IAAAS,aAAA,GAAAT,OAAA;AACA,IAAAU,OAAA,GAAAV,OAAA;AACA,IAAAW,SAAA,GAAAX,OAAA;AACA,IAAAY,gBAAA,GAAAZ,OAAA;AAEA,IAAAa,SAAA,GAAAb,OAAA;AACA,IAAAc,oBAAA,GAAAd,OAAA;AACA,IAAAe,oBAAA,GAAAf,OAAA;AAEA,IAAIgB,OAAgB;;AAEpB;AACA,IAAIC,aAAwC;AAC5C,IAAIC,MAA0B;AAmGvB,IAAIC,KAA+B,GAAAC,OAAA,CAAAD,KAAA;AAEnC,SAASE,aAAaA,CAACC,OAAwB,EAAE;EACtD,IAAIN,OAAO,EAAE;IACX,MAAM,IAAIO,KAAK,CAAC,iCAAiC,CAAC;EACpD;EACA,IAAAC,+BAAqB,EAAC,CAAC;EACvBJ,OAAA,CAAAD,KAAA,GAAAA,KAAK,GAAGG,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEH,KAAK;EACtB,IAAAM,oBAAc,EAACC,SAAE,EAAEC,cAAO,CAAC;EAC3BC,eAAM,CAACC,MAAM,CAACC,UAAI,CAACC,QAAQ,CAAC;EAC5BD,UAAI,CAACE,EAAE,CAAC,iBAAiB,EAAE,MAAM;IAC/BJ,eAAM,CAACC,MAAM,CAACC,UAAI,CAACC,QAAQ,CAAC;EAC9B,CAAC,CAAC;EACF,IAAAE,sBAAa,EAAC,CAAC;EACfjB,OAAO,GAAG,IAAIkB,OAAO,CAAC,CAAC;EACvB,OAAOlB,OAAO;AAChB;AAEA,SAASmB,YAAYA,CAAA,EAAG;EACtB,OAAOnB,OAAO;AAChB;;AAEA;AACA,SAASoB,mBAAmBA,CAAA,EAAG;EAC7B,MAAMC,KAAK,GAAG,IAAAC,wCAAmB,EAAC,CAAC;EACnC,IAAID,KAAK,EAAE;IACT,OAAO,SAASE,YAAYA,CAAA,EAAG;MAC7B,OAAO,IAAIC,KAAK,CAACH,KAAK,CAACI,UAAU,CAAC,CAAC,EAAE;QACnCC,GAAGA,CAAC,GAAGC,IAAI,EAAE;UACX,MAAMC,GAAG,GAAGD,IAAI,CAAC,CAAC,CAAC;UACnB,QAAQC,GAAG;YACT,KAAK,eAAe;YACpB,KAAK,eAAe;YACpB,KAAK,iBAAiB;YACtB,KAAK,aAAa;YAClB,KAAK,sBAAsB;YAC3B,KAAK,qBAAqB;YAC1B,KAAK,uBAAuB;YAC5B,KAAK,gBAAgB;YACrB,KAAK,cAAc;YACnB,KAAK,iBAAiB;YACtB,KAAK,iBAAiB;YACtB,KAAK,kBAAkB;cACrB,OAAOC,OAAO,CAACH,GAAG,CAAC,GAAGC,IAAI,CAAC;UAC/B;QACF;MACF,CAAC,CAAC;IACJ,CAAC;EACH;AACF;;AAEA;AACO,MAAMF,UAAU,GAAArB,OAAA,CAAAqB,UAAA,GAAGL,mBAAmB,CAAC,CAAC,IAAID,YAAY;AAAC,IAAAW,YAAA,oBAAAC,OAAA;AAAA,IAAAC,aAAA,oBAAAD,OAAA;AAAA,IAAAE,cAAA,oBAAAC,OAAA;AAEzD,MAAMhB,OAAO,CAAC;EAAAiB,YAAA;IAAA,IAAAC,4BAAA,CAAAC,OAAA,QAAAJ,cAAA;IACnB,IAAAK,2BAAA,CAAAD,OAAA,QAAAP,YAAY,EAAG,KAAK;IACpB,IAAAQ,2BAAA,CAAAD,OAAA,QAAAL,aAAa,EAAG,KAAK;IAAC,IAAAO,gBAAA,CAAAF,OAAA,mBAEiB,CAAC;EAAA;EAExCG,UAAUA,CAACC,IAAmB,EAAE;IAAA,IAAAC,cAAA;IAC9B,IAAI,IAAAC,sBAAA,CAAAN,OAAA,EAAKP,YAAY,EAAjB,IAAgB,CAAC,EAAE;MACrB,MAAM,IAAIvB,KAAK,CAAC,kDAAkD,CAAC;IACrE;IACA,IAAAqC,sBAAA,CAAAP,OAAA,EAAKP,YAAY,EAAjB,IAAI,EAAgB,IAAJ,CAAC;IACjBe,sBAAsB,CAACJ,IAAI,CAAC;IAC5BxC,aAAa,GAAGwC,IAAI;IACpB,MAAM;MAAEK,YAAY;MAAEC;IAAO,CAAC,GAAG,IAAAC,kBAAA,CAAAX,OAAA,EAAAJ,cAAA,MAAI,EAACgB,gBAAe,CAAC,CAAAC,IAAA,CAArB,IAAI,CAAmB;IACxD,IAAIJ,YAAY,KAAK,KAAK,EAAE;MAC1B,IAAAK,qCAAuB,EACrBL,YAAY,IAAI,yBAAyB,EACzC,IAAI,CAACM,UACP,CAAC;IACH;IACA,IAAIL,MAAM,KAAK,KAAK,EAAE;MACpB,IAAAM,yBAAiB,EAACN,MAAM,IAAI,mBAAmB,EAAE,IAAI,CAACK,UAAU,CAAC;IACnE;IACA,IAAAE,wCAAmB,GAAAZ,cAAA,GAACD,IAAI,CAACc,QAAQ,cAAAb,cAAA,gBAAAA,cAAA,GAAbA,cAAA,CAAec,IAAI,cAAAd,cAAA,uBAAnBA,cAAA,CAAqBe,KAAsB,CAAC;EAClE;EAEA,MAAMC,SAASA,CAACjB,IAAoB,EAAE;IACpC,IAAIA,IAAI,EAAE;MACR,IAAI,CAACD,UAAU,CAACC,IAAI,CAAC;IACvB;IACA,IAAI,IAAAE,sBAAA,CAAAN,OAAA,EAAKL,aAAa,EAAlB,IAAiB,CAAC,EAAE;MACtB,MAAM,IAAIzB,KAAK,CAAC,mDAAmD,CAAC;IACtE;IACA,IAAAqC,sBAAA,CAAAP,OAAA,EAAKL,aAAa,EAAlB,IAAI,EAAiB,IAAJ,CAAC;IAClB9B,MAAM,GAAG,IAAIyD,cAAM,CAAC1D,aAAa,CAAE2D,WAAY,CAAC;IAChD,MAAM1D,MAAM,CAACwD,SAAS,CAAC,CAAC;EAC1B;EAEAG,aAAaA,CAAA,EAAG;IAAA,IAAAC,OAAA;IACd,OAAO,EAAAA,OAAA,GAAA5D,MAAM,cAAA4D,OAAA,uBAANA,OAAA,CAAQD,aAAa,CAAC,CAAC,KAAI,CAAC,CAAC;EACtC;EAEAE,aAAaA,CAAA,EAAG;IAAA,IAAAC,QAAA;IACd,QAAAA,QAAA,GAAO9D,MAAM,cAAA8D,QAAA,uBAANA,QAAA,CAAQH,aAAa,CAAC,CAAC,CAACI,UAAU;EAC3C;EAEAC,eAAeA,CAACC,KAAa,EAAEC,YAAqB,EAAW;IAC7D,OAAO,IAAAF,gCAAe,EAACC,KAAK,EAAEC,YAAY,CAAC;EAC7C;EAEAC,eAAeA,CAAA,EAAiB;IAAA,IAAAC,cAAA,EAAAC,QAAA;IAC9B,OAAO;MACL,KAAAD,cAAA,GAAGrE,aAAa,cAAAqE,cAAA,gBAAAA,cAAA,GAAbA,cAAA,CAAef,QAAQ,cAAAe,cAAA,uBAAvBA,cAAA,CAAyBE,YAAY;MACxC,KAAAD,QAAA,GACErE,MAAM,cAAAqE,QAAA,gBAAAA,QAAA,GAANA,QAAA,CAAQV,aAAa,CAAC,CAAC,CAACI,UAAU,cAAAM,QAAA,gBAAAA,QAAA,GAAlCA,QAAA,CAAoCE,MAAM,cAAAF,QAAA,gBAAAA,QAAA,GAA1CA,QAAA,CACIhB,QAAQ,cAAAgB,QAAA,uBAFXA,QAAA,CAGAC,YAAY;MACf,0BAA0B,EAAE;IAC9B,CAAC;EACH;EAEAE,eAAeA,CAAA,EAAG;IAAA,IAAAC,eAAA,EAAAC,QAAA;IAChB,OAAO;MACL,KAAAD,eAAA,GAAG1E,aAAa,cAAA0E,eAAA,gBAAAA,eAAA,GAAbA,eAAA,CAAepB,QAAQ,cAAAoB,eAAA,uBAAvBA,eAAA,CAAyBnB,IAAI;MAChC,KAAAoB,QAAA,GACE1E,MAAM,cAAA0E,QAAA,gBAAAA,QAAA,GAANA,QAAA,CAAQf,aAAa,CAAC,CAAC,CAACI,UAAU,cAAAW,QAAA,gBAAAA,QAAA,GAAlCA,QAAA,CAAoCH,MAAM,cAAAG,QAAA,gBAAAA,QAAA,GAA1CA,QAAA,CACIrB,QAAQ,cAAAqB,QAAA,uBAFXA,QAAA,CAGApB,IAAI;IACT,CAAC;EACH;EAEAqB,gBAAgBA,CAAA,EAA2B;IAAA,IAAAC,eAAA;IACzC,OAAO;MACLC,UAAU,EAAE,aAAa;MACzB,KAAAD,eAAA,GAAI7E,aAAa,cAAA6E,eAAA,gBAAAA,eAAA,GAAbA,eAAA,CAAevB,QAAQ,cAAAuB,eAAA,uBAAvBA,eAAA,CAAyBE,KAAK;IACpC,CAAC;EACH;EAEAC,oBAAoBA,CAAA,EAAG;IAAA,IAAAC,eAAA;IACrB,OAAO;MACLC,OAAO,EAAE,CAAC;MACVC,IAAI,EAAE,CAAC;MACP,KAAAF,eAAA,GAAGjF,aAAa,cAAAiF,eAAA,gBAAAA,eAAA,GAAbA,eAAA,CAAe3B,QAAQ,cAAA2B,eAAA,uBAAvBA,eAAA,CAAyBG,SAAS;IACvC,CAAC;EACH;EAEAC,WAAWA,CAAA,EAAc;IAAA,IAAAC,eAAA;IACvB,OAAO,EAAAA,eAAA,GAAAtF,aAAa,cAAAsF,eAAA,uBAAbA,eAAA,CAAeC,QAAQ,KAAI,EAAE;EACtC;EAEAC,mBAAmBA,CAAA,EAAc;IAAA,IAAAC,eAAA;IAC/B,OAAO,EAAAA,eAAA,GAAAzF,aAAa,cAAAyF,eAAA,uBAAbA,eAAA,CAAeC,QAAQ,KAAI,EAAE;EACtC;EAEAC,qBAAqBA,CAACC,IAAa,EAAQ;IACzCC,QAAQ,CAACC,IAAI,CAACC,SAAS,CAACC,MAAM,CAAC,gBAAgB,EAAEJ,IAAI,CAAC;EACxD;EAEAK,cAAcA,CAACC,SAAiB,EAAQ;IACtC,MAAMC,SAAS,GAAG,IAAI,CAACvB,gBAAgB,CAAC,CAAC,CAACE,UAAU;IACpDe,QAAQ,CAACO,KAAK,GAAGF,SAAS,GAAG,GAAGA,SAAS,MAAMC,SAAS,EAAE,GAAGA,SAAS;EACxE;EAEAE,YAAYA,CAAA,EAAG;IAAA,IAAAC,QAAA;IACb,QAAAA,QAAA,GAAOrG,MAAM,cAAAqG,QAAA,uBAANA,QAAA,CAAQD,YAAY,CAAC,CAAC;EAC/B;EAEAlD,UAAUA,CAACoD,MAA8B,EAAE;IACzC,OAAO,IAAAC,8BAAsB,EAACD,MAAM,EAAEE,gBAAgB,CAAC,CAAC,CAAC;EAC3D;AAQF;AAACtG,OAAA,CAAAc,OAAA,GAAAA,OAAA;AAAA,SAAA+B,iBAAA,EANoB;EAAA,IAAA0D,gBAAA;EACjB,OAAQ,EAAAA,gBAAA,GAAA1G,aAAa,cAAA0G,gBAAA,gBAAAA,gBAAA,GAAbA,gBAAA,CAAepD,QAAQ,cAAAoD,gBAAA,uBAAvBA,gBAAA,CAAyBC,YAAY,KAAI,CAAC,CAAC;AAIrD;AAGF,SAAS/D,sBAAsBA,CAACJ,IAAmB,EAAE;EACnD,IAAI,IAAAoE,iBAAQ,EAACpE,IAAI,CAACc,QAAQ,CAAC,EAAE;IAC3B,IAAAuD,mBAAU,EAACrE,IAAI,CAACc,QAAQ,CAAC;EAC3B;EACA,IAAId,IAAI,CAACsE,aAAa,EAAE;IACtB,IAAAD,mBAAU,EAACrE,IAAI,CAACsE,aAAa,CAAC;EAChC;AACF;AAEA,SAASC,yBAAyBA,CAChCD,aAA6B,EAC7BE,OAAuB,EACP;EAChB,IAAI,EAACA,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEC,MAAM,GAAE,OAAOH,aAAa;EAE1C,MAAMI,SAAS,GAAG,IAAIC,GAAG,CAAC,CAAC;;EAE3B;EACA,CAAC,GAAGH,OAAO,EAAE,GAAGF,aAAa,CAAC,CAACM,OAAO,CAAEC,GAAG,IAAK;IAC9C,MAAMC,OAAO,GAAGD,GAAG,CAACE,QAAQ,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC1C;IACA,IAAI,CAACN,SAAS,CAACO,GAAG,CAACH,OAAO,CAAC,EAAE;MAC3BJ,SAAS,CAACQ,GAAG,CAACJ,OAAO,EAAED,GAAG,CAAC;IAC7B;EACF,CAAC,CAAC;EAEF,OAAOM,KAAK,CAACC,IAAI,CAACV,SAAS,CAACW,MAAM,CAAC,CAAC,CAAC;AACvC;AAEO,SAASpB,gBAAgBA,CAAA,EAAG;EAAA,IAAAqB,eAAA;EACjC,OACEf,yBAAyB,EAAAe,eAAA,GACvB9H,aAAa,cAAA8H,eAAA,uBAAbA,eAAA,CAAehB,aAAa,EAC5BiB,MAAM,CAACC,WACT,CAAC,IACDC,+BAAqB,IACpBF,MAAM,CAACG,yBAA4C,IACpD,EAAE;AAEN;AAEO,SAASC,uBAAuBA,CAAA,EAAuB;EAAA,IAAAC,QAAA;EAC5D,QAAAA,QAAA,GAAOnI,MAAM,cAAAmI,QAAA,uBAANA,QAAA,CAAQC,WAAW,CAAC,CAAC;AAC9B;AAEO,SAASC,2BAA2BA,CACzCC,QAAgB,EACe;EAAA,IAAAC,eAAA;EAC/B,OAAO,IAAAC,gCAAe,EAAC,EAAAD,eAAA,GAAAxI,aAAa,cAAAwI,eAAA,uBAAbA,eAAA,CAAe7E,WAAW,KAAI,EAAE,EAAE4E,QAAQ,CAAC;AACpE;AAEO,SAASG,6BAA6BA,CAAA,EAAG;EAAA,IAAAC,QAAA;EAC9C,QAAAA,QAAA,GAAO1I,MAAM,cAAA0I,QAAA,uBAANA,QAAA,CAAQC,iBAAiB,CAAC,CAAC;AACpC;AAEO,SAASC,wCAAwCA,CAAC3E,KAAa,EAAE;EAAA,IAAA4E,eAAA;EACtE,QAAAA,eAAA,GAAO9I,aAAa,cAAA8I,eAAA,gBAAAA,eAAA,GAAbA,eAAA,CAAenF,WAAW,cAAAmF,eAAA,uBAA1BA,eAAA,CAA4BC,IAAI,CACpCC,UAAU,IAAKA,UAAU,CAACC,GAAG,CAACC,EAAE,KAAKhF,KACxC,CAAC;AACH;AAEO,SAASiF,iCAAiCA,CAACjF,KAAa,EAAE;EAAA,IAAAkF,qBAAA;EAC/D,QAAAA,qBAAA,GAAOP,wCAAwC,CAAC3E,KAAK,CAAC,cAAAkF,qBAAA,uBAA/CA,qBAAA,CAAiDH,GAAG;AAC7D;AAEO,IAAII,2BAA0D,GAAAlJ,OAAA,CAAAkJ,2BAAA;;AAErE;AACA,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,MAAM,EAAE;EACnCrJ,OAAA,CAAAkJ,2BAAA,GAAAA,2BAA2B,GAAI7G,IAAI,IAAK;IACtCxC,aAAa,GAAGwC,IAAqB;EACvC,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"file":"Runtime.js","names":["_i18n","require","_loader","_general","_moment","_interopRequireDefault","_history","_matchStoryboard","_Router","_i18n2","_Notification","_Dialog","_injected","_hasInstalledApp","_devtools","_getV2RuntimeFromDll","_customizeColorTheme","runtime","bootstrapData","router","processedBrickPackages","hooks","exports","createRuntime","options","Error","listenDevtoolsEagerly","initializeI18n","NS","locales","moment","locale","i18n","language","on","createHistory","Runtime","getRuntimeV3","getRuntimeV2Factory","v2Kit","getV2RuntimeFromDll","getRuntimeV2","Proxy","getRuntime","get","args","key","Reflect","_initialized","WeakMap","_bootstrapped","_Runtime_brand","WeakSet","constructor","_classPrivateMethodInitSpec2","default","_classPrivateFieldInitSpec2","_defineProperty2","initialize","data","_data$settings","_classPrivateFieldGet2","_classPrivateFieldSet2","normalizeBootstrapData","notification","dialog","_assertClassBrand2","_getPresetBricks","call","loadNotificationService","loadBricks","loadDialogService","customizeColorTheme","settings","misc","theme","bootstrap","Router","storyboards","getRecentApps","_router","getCurrentApp","_router2","currentApp","hasInstalledApp","appId","matchVersion","getFeatureFlags","_bootstrapData","_router3","featureFlags","config","getMiscSettings","_bootstrapData2","_router4","getBrandSettings","_bootstrapData3","base_title","brand","getLaunchpadSettings","_bootstrapData4","columns","rows","launchpad","getDesktops","_bootstrapData5","desktops","getLaunchpadSiteMap","_bootstrapData6","siteSort","toggleLaunchpadEffect","open","document","body","classList","toggle","applyPageTitle","pageTitle","baseTitle","title","getNavConfig","_router5","bricks","loadBricksImperatively","getBrickPackages","_bootstrapData10","presetBricks","isObject","deepFreeze","brickPackages","processPublicDepsPackages","pubDeps","length","bricksMap","Map","forEach","pkg","pkgName","filePath","split","has","set","Array","from","values","_bootstrapData7","injectedBrickPackages","window","STANDALONE_BRICK_PACKAGES","PUBLIC_DEPS","_internalApiGetRenderId","_router6","getRenderId","_internalApiMatchStoryboard","pathname","_bootstrapData8","matchStoryboard","_internalApiGetRuntimeContext","_router7","getRuntimeContext","_internalApiGetStoryboardInBootstrapData","_bootstrapData9","find","storyboard","app","id","_internalApiGetAppInBootstrapData","_internalApiGetStoryb","_test_only_setBootstrapData","process","env","NODE_ENV"],"sources":["../../../src/internal/Runtime.ts"],"sourcesContent":["import type {\n RuntimeStoryboard,\n BootstrapSettings,\n FeatureFlags,\n BootstrapData,\n Contract,\n Storyboard,\n BrickConf,\n RouteConf,\n ResolveConf,\n BrickPackage,\n} from \"@next-core/types\";\nimport { i18n, initializeI18n } from \"@next-core/i18n\";\nimport { loadBricksImperatively } from \"@next-core/loader\";\nimport { deepFreeze, isObject } from \"@next-core/utils/general\";\nimport type { PermissionApi_validatePermissions } from \"@next-api-sdk/micro-app-sdk\";\nimport moment from \"moment\";\nimport \"moment/locale/zh-cn.js\";\nimport { createHistory } from \"../history.js\";\nimport { matchStoryboard } from \"./matchStoryboard.js\";\nimport { Router } from \"./Router.js\";\nimport { NS, locales } from \"./i18n.js\";\nimport { loadNotificationService } from \"../Notification.js\";\nimport { loadDialogService } from \"../Dialog.js\";\nimport { injectedBrickPackages } from \"./injected.js\";\nimport { type AppForCheck, hasInstalledApp } from \"./hasInstalledApp.js\";\nimport type { RuntimeContext } from \"./interfaces.js\";\nimport { listenDevtoolsEagerly } from \"./devtools.js\";\nimport { getV2RuntimeFromDll } from \"../getV2RuntimeFromDll.js\";\nimport { ThemeSettings, customizeColorTheme } from \"./customizeColorTheme.js\";\n\nlet runtime: Runtime;\n\n// Allow inject bootstrap data in a runtime other than Brick Next.\nlet bootstrapData: BootstrapData | undefined;\nlet router: Router | undefined;\nlet processedBrickPackages: BrickPackage[] | undefined;\n\nexport interface RuntimeOptions {\n hooks?: RuntimeHooks;\n}\n\nexport interface ImagesFactory {\n get(name: string): string;\n}\n\nexport interface PageViewInfo {\n status: \"ok\" | \"failed\" | \"redirected\" | \"not-found\";\n path?: string;\n pageTitle?: string;\n}\n\nexport interface RuntimeHooks {\n auth?: {\n getAuth(): object;\n isLoggedIn(): boolean;\n authenticate?(...args: unknown[]): unknown;\n logout?(...args: unknown[]): unknown;\n };\n fulfilStoryboard?: (storyboard: RuntimeStoryboard) => Promise<void>;\n validatePermissions?: typeof PermissionApi_validatePermissions;\n checkPermissions?: {\n checkPermissions(...actions: string[]): boolean;\n preCheckPermissions(storyboard: Storyboard): Promise<void> | undefined;\n preCheckPermissionsForBrickOrRoute(\n container: BrickConf | RouteConf,\n asyncComputeRealValue: (value: unknown) => Promise<unknown>\n ): Promise<void> | undefined;\n };\n checkInstalledApps?: {\n preCheckInstalledApps(\n storyboard: Storyboard,\n hasAppInBootstrap: (appId: string) => boolean\n ): void;\n waitForCheckingApps(appIds: string[]): Promise<void>;\n getCheckedApp(appId: string): AppForCheck | undefined;\n };\n flowApi?: {\n FLOW_API_PROVIDER: string;\n registerFlowApiProvider(): void;\n isFlowApiProvider(provider: string): boolean;\n getArgsOfFlowApi(\n provider: string,\n originalArgs: unknown[],\n method?: string,\n stream?: boolean\n ): Promise<unknown[]>;\n collectContract(contracts: Contract[] | undefined): void;\n collectWidgetContract(contracts: Contract[] | undefined): void;\n clearCollectWidgetContract(): void;\n };\n menu?: {\n getMenuById(menuId: string): unknown;\n fetchMenuById(\n menuId: string,\n runtimeContext: RuntimeContext,\n runtimeHelpers: RuntimeHooksMenuHelpers\n ): Promise<unknown>;\n };\n images?: {\n imagesFactory(\n appId: string,\n isBuildPush?: boolean,\n version?: string\n ): ImagesFactory;\n widgetImagesFactory(\n widgetId: string,\n widgetVersion?: string\n ): ImagesFactory;\n };\n messageDispatcher?: {\n subscribe(...args: unknown[]): Promise<unknown>;\n unsubscribe(...args: unknown[]): Promise<unknown>;\n onMessage(channel: string, listener: (data: unknown) => void): void;\n onClose(listener: () => void): void;\n reset(): void;\n };\n pageView?: {\n create(): (info: PageViewInfo) => void;\n };\n}\n\nexport interface RuntimeHooksMenuHelpers {\n getStoryboardByAppId(appId: string): Storyboard | undefined;\n resolveData(\n resolveConf: ResolveConf,\n runtimeContext: RuntimeContext\n ): Promise<unknown>;\n asyncComputeRealValue(\n value: unknown,\n runtimeContext: RuntimeContext,\n options?: { ignoreSymbols?: boolean; noInject?: boolean }\n ): Promise<unknown>;\n}\n\nexport let hooks: RuntimeHooks | undefined;\n\nexport function createRuntime(options?: RuntimeOptions) {\n if (runtime) {\n throw new Error(\"Cannot create multiple runtimes\");\n }\n listenDevtoolsEagerly();\n hooks = options?.hooks;\n initializeI18n(NS, locales);\n moment.locale(i18n.language);\n i18n.on(\"languageChanged\", () => {\n moment.locale(i18n.language);\n });\n createHistory();\n runtime = new Runtime();\n return runtime;\n}\n\nfunction getRuntimeV3() {\n return runtime;\n}\n\n// istanbul ignore next\nfunction getRuntimeV2Factory() {\n const v2Kit = getV2RuntimeFromDll();\n if (v2Kit) {\n return function getRuntimeV2() {\n return new Proxy(v2Kit.getRuntime(), {\n get(...args) {\n const key = args[1];\n switch (key) {\n case \"getCurrentApp\":\n case \"getRecentApps\":\n case \"hasInstalledApp\":\n case \"getDesktops\":\n case \"getLaunchpadSettings\":\n case \"getLaunchpadSiteMap\":\n case \"toggleLaunchpadEffect\":\n case \"applyPageTitle\":\n case \"getNavConfig\":\n case \"getFeatureFlags\":\n case \"getMiscSettings\":\n case \"getBrandSettings\":\n return Reflect.get(...args);\n }\n },\n }) as unknown as Runtime;\n };\n }\n}\n\n// istanbul ignore next\nexport const getRuntime = getRuntimeV2Factory() || getRuntimeV3;\n\nexport class Runtime {\n #initialized = false;\n #bootstrapped = false;\n\n readonly version: number | undefined = 3;\n\n initialize(data: BootstrapData) {\n if (this.#initialized) {\n throw new Error(\"The runtime cannot be initialized more than once\");\n }\n this.#initialized = true;\n normalizeBootstrapData(data);\n bootstrapData = data;\n const { notification, dialog } = this.#getPresetBricks();\n if (notification !== false) {\n loadNotificationService(\n notification ?? \"basic.show-notification\",\n this.loadBricks\n );\n }\n if (dialog !== false) {\n loadDialogService(dialog ?? \"basic.show-dialog\", this.loadBricks);\n }\n customizeColorTheme(data.settings?.misc?.theme as ThemeSettings);\n }\n\n async bootstrap(data?: BootstrapData) {\n if (data) {\n this.initialize(data);\n }\n if (this.#bootstrapped) {\n throw new Error(\"The runtime cannot be bootstrapped more than once\");\n }\n this.#bootstrapped = true;\n router = new Router(bootstrapData!.storyboards!);\n await router.bootstrap();\n }\n\n getRecentApps() {\n return router?.getRecentApps() ?? {};\n }\n\n getCurrentApp() {\n return router?.getRecentApps().currentApp;\n }\n\n hasInstalledApp(appId: string, matchVersion?: string): boolean {\n return hasInstalledApp(appId, matchVersion);\n }\n\n getFeatureFlags(): FeatureFlags {\n return {\n ...bootstrapData?.settings?.featureFlags,\n ...(\n router?.getRecentApps().currentApp?.config\n ?.settings as BootstrapSettings\n )?.featureFlags,\n \"migrate-to-brick-next-v3\": true,\n };\n }\n\n getMiscSettings() {\n return {\n ...bootstrapData?.settings?.misc,\n ...(\n router?.getRecentApps().currentApp?.config\n ?.settings as BootstrapSettings\n )?.misc,\n };\n }\n\n getBrandSettings(): Record<string, string> {\n return {\n base_title: \"DevOps 管理专家\",\n ...(bootstrapData?.settings?.brand as Record<string, string>),\n };\n }\n\n getLaunchpadSettings() {\n return {\n columns: 7,\n rows: 4,\n ...bootstrapData?.settings?.launchpad,\n };\n }\n\n getDesktops(): unknown[] {\n return bootstrapData?.desktops ?? [];\n }\n\n getLaunchpadSiteMap(): unknown[] {\n return bootstrapData?.siteSort ?? [];\n }\n\n toggleLaunchpadEffect(open: boolean): void {\n document.body.classList.toggle(\"launchpad-open\", open);\n }\n\n applyPageTitle(pageTitle: string): void {\n const baseTitle = this.getBrandSettings().base_title;\n document.title = pageTitle ? `${pageTitle} - ${baseTitle}` : baseTitle;\n }\n\n getNavConfig() {\n return router?.getNavConfig();\n }\n\n loadBricks(bricks: string[] | Set<string>) {\n return loadBricksImperatively(bricks, getBrickPackages());\n }\n\n #getPresetBricks() {\n return (bootstrapData?.settings?.presetBricks ?? {}) as {\n notification?: string | false;\n dialog?: string | false;\n };\n }\n}\n\nfunction normalizeBootstrapData(data: BootstrapData) {\n if (isObject(data.settings)) {\n deepFreeze(data.settings);\n }\n if (data.brickPackages) {\n deepFreeze(data.brickPackages);\n }\n}\n\nfunction processPublicDepsPackages(\n brickPackages: BrickPackage[],\n pubDeps: BrickPackage[] | undefined\n): BrickPackage[] {\n if (!pubDeps?.length) return brickPackages;\n\n const bricksMap = new Map();\n\n // bootstrapData 数据和 pubDeps 中可能同时存在同一个包名,需要过滤去重, 以 pubDeps 中的包为准\n [...pubDeps, ...brickPackages].forEach((pkg) => {\n const pkgName = pkg.filePath.split(\"/\")[1];\n // 始终将 pubDeps 放在前面\n if (!bricksMap.has(pkgName)) {\n bricksMap.set(pkgName, pkg);\n }\n });\n\n return Array.from(bricksMap.values());\n}\n\nexport function getBrickPackages(): BrickPackage[] {\n return (\n // Not necessary to process brick packages multiple times.\n processedBrickPackages ??\n (processedBrickPackages = processPublicDepsPackages(\n bootstrapData?.brickPackages ??\n injectedBrickPackages ??\n (window.STANDALONE_BRICK_PACKAGES as BrickPackage[] | undefined) ??\n [],\n window.PUBLIC_DEPS as BrickPackage[] | undefined\n ))\n );\n}\n\nexport function _internalApiGetRenderId(): string | undefined {\n return router?.getRenderId();\n}\n\nexport function _internalApiMatchStoryboard(\n pathname: string\n): RuntimeStoryboard | undefined {\n return matchStoryboard(bootstrapData?.storyboards ?? [], pathname);\n}\n\nexport function _internalApiGetRuntimeContext() {\n return router?.getRuntimeContext();\n}\n\nexport function _internalApiGetStoryboardInBootstrapData(appId: string) {\n return bootstrapData?.storyboards?.find(\n (storyboard) => storyboard.app.id === appId\n );\n}\n\nexport function _internalApiGetAppInBootstrapData(appId: string) {\n return _internalApiGetStoryboardInBootstrapData(appId)?.app;\n}\n\nexport let _test_only_setBootstrapData: (data: BootstrapData) => void;\n\n// istanbul ignore next\nif (process.env.NODE_ENV === \"test\") {\n _test_only_setBootstrapData = (data) => {\n bootstrapData = data as BootstrapData;\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -17,6 +17,7 @@ exports.getContextValue = getContextValue;
17
17
  exports.getRenderId = getRenderId;
18
18
  exports.legacyDoTransform = legacyDoTransform;
19
19
  exports.loadBricks = loadBricks;
20
+ exports.loadEditors = loadEditors;
20
21
  exports.mountUseBrick = mountUseBrick;
21
22
  exports.renderUseBrick = renderUseBrick;
22
23
  Object.defineProperty(exports, "setRealTimeDataInspectRoot", {
@@ -261,6 +262,9 @@ function getBrickPackagesById(id) {
261
262
  function loadBricks(bricks) {
262
263
  return (0, _loader.loadBricksImperatively)(bricks, (0, _Runtime.getBrickPackages)());
263
264
  }
265
+ function loadEditors(editors) {
266
+ return (0, _loader.loadEditorsImperatively)(editors, (0, _Runtime.getBrickPackages)());
267
+ }
264
268
  function getRenderId() {
265
269
  return (0, _Runtime._internalApiGetRenderId)();
266
270
  }
@@ -1 +1 @@
1
- {"version":3,"file":"secret_internals.js","names":["_lodash","require","_Runtime","_Renderer","_RendererContext","_resolveData","_computeRealValue","_mount","_enums","_isStrictMode","_CustomTemplates","_registerAppI18n","_utils","_loader","_realTimeDataInspect","symbolForRootRuntimeContext","exports","Symbol","for","renderUseBrick","useBrick","data","errorBoundary","_output$node","_output$node2","scopedRuntimeContext","tplStateStoreScope","formStateStoreScope","createScopedRuntimeContext","_internalApiGetRuntimeContext","pendingPermissionsPreCheck","tplStateStoreMap","Map","formStateStoreMap","rendererContext","RendererContext","renderRoot","tag","RenderTag","ROOT","createPortal","transform","strict","isStrictMode","warnAboutStrictMode","output","renderBrick","properties","scopedStores","postAsyncRender","node","PLACEHOLDER","Error","portal","child","tagName","type","mountUseBrick","element","portalRoot","document","querySelector","createElement","appendChild","mountTree","dispatchOnMount","initializeScrollIntoView","initializeMediaChange","initializeMessageDispatcher","store","mountAsyncData","unmountUseBrick","mountResult","unmountTree","remove","dispatchOnUnmount","dispose","legacyDoTransform","to","options","computeRealValue","noInject","updateStoryboard","appId","storyboardPatch","storyboard","_internalApiGetStoryboardInBootstrapData","Object","assign","meta","$$fulfilling","$$fulfilled","$$registerCustomTemplateProcessed","registerAppI18n","updateStoryboardByRoute","newRoute","match","getKey","route","path","exact","replaceRoute","routes","key","map","routeKey","unshift","updateStoryboardByTemplate","newTemplate","settings","tplName","name","customTemplates","define","bricks","proxy","state","updateTemplatePreviewSettings","templateId","_updatePreviewSettings","brick","pick","getSnippetPreviewPath","snippetId","updateStoryboardBySnippet","snippetData","_snippetData$bricks","length","context","updateSnippetPreviewSettings","previewRouteIndex","findIndex","newPreviewRoute","menu","splice","getContextValue","tplStateStoreId","runtimeContext","tplStateStore","getTplStateStore","getValue","ctxStore","getAllContextValues","getAllValues","getBrickPackagesById","id","getBrickPackages","find","pkg","filePath","startsWith","loadBricks","loadBricksImperatively","getRenderId","_internalApiGetRenderId","getAddedContracts","updateStoryboardType","collectUsedContracts","updatedStoryboard","_storyboard$routes","snippetPreviewPath","currentRoute","addedContracts","contractApis","forEach","api","_storyboard$meta","_","namespaceId","contracts","some","contract","push","debugDataValue","debugData","resolve","resolveData","cache","asyncComputeRealValue","value"],"sources":["../../../src/internal/secret_internals.ts"],"sourcesContent":["import type {\n BrickConf,\n CustomTemplate,\n RouteConf,\n Storyboard,\n UseSingleBrickConf,\n RuntimeSnippet,\n ContextConf,\n} from \"@next-core/types\";\nimport { pick } from \"lodash\";\nimport {\n _internalApiGetRenderId,\n _internalApiGetRuntimeContext,\n _internalApiGetStoryboardInBootstrapData,\n getBrickPackages,\n} from \"./Runtime.js\";\nimport {\n createScopedRuntimeContext,\n postAsyncRender,\n renderBrick,\n} from \"./Renderer.js\";\nimport { RendererContext } from \"./RendererContext.js\";\nimport type { DataStore } from \"./data/DataStore.js\";\nimport { resolveData } from \"./data/resolveData.js\";\nimport { asyncComputeRealValue } from \"./compute/computeRealValue.js\";\nimport type {\n DataValueOption,\n PreviewOption,\n PreviewStoryboardPatch,\n RenderRoot,\n RuntimeContext,\n DebugDataValue,\n} from \"./interfaces.js\";\nimport { mountTree, unmountTree } from \"./mount.js\";\nimport { RenderTag } from \"./enums.js\";\nimport { computeRealValue } from \"./compute/computeRealValue.js\";\nimport { isStrictMode, warnAboutStrictMode } from \"../isStrictMode.js\";\nimport { customTemplates } from \"../CustomTemplates.js\";\nimport { registerAppI18n } from \"./registerAppI18n.js\";\nimport { getTplStateStore } from \"./CustomTemplates/utils.js\";\nimport { loadBricksImperatively } from \"@next-core/loader\";\n\nexport type { DataValueOption, RuntimeContext };\n\nexport const symbolForRootRuntimeContext = Symbol.for(\"root.runtimeContext\");\n\nexport interface RuntimeUseBrickConfWithRootSymbols extends UseSingleBrickConf {\n [symbolForRootRuntimeContext]?: RuntimeContext;\n}\n\nexport interface RenderUseBrickResult {\n tagName: string | null;\n renderRoot: RenderRoot;\n rendererContext: RendererContext;\n scopedStores: DataStore<\"STATE\" | \"FORM_STATE\">[];\n}\n\nexport async function renderUseBrick(\n useBrick: RuntimeUseBrickConfWithRootSymbols,\n data: unknown,\n errorBoundary?: boolean\n): Promise<RenderUseBrickResult> {\n const [scopedRuntimeContext, tplStateStoreScope, formStateStoreScope] =\n createScopedRuntimeContext({\n ...(useBrick[symbolForRootRuntimeContext] ??\n _internalApiGetRuntimeContext()!),\n data,\n pendingPermissionsPreCheck: [],\n });\n\n scopedRuntimeContext.tplStateStoreMap ??= new Map();\n scopedRuntimeContext.formStateStoreMap ??= new Map();\n\n const rendererContext = new RendererContext(\"fragment\");\n\n const renderRoot: RenderRoot = {\n tag: RenderTag.ROOT,\n // Will set during `mountUseBrick`\n createPortal: null!,\n };\n\n const transform = (useBrick as { transform?: Record<string, unknown> })\n .transform;\n const strict = isStrictMode();\n if (transform) {\n warnAboutStrictMode(\n strict,\n \"`useBrick.transform`\",\n 'please use \"properties\" instead, check your useBrick:',\n useBrick\n );\n }\n\n const output = await renderBrick(\n renderRoot,\n strict && !errorBoundary\n ? useBrick\n : {\n errorBoundary,\n ...useBrick,\n properties: {\n ...useBrick.properties,\n ...transform,\n },\n },\n scopedRuntimeContext,\n rendererContext,\n [],\n {}\n );\n\n const scopedStores = [...tplStateStoreScope, ...formStateStoreScope];\n\n await postAsyncRender(output, scopedRuntimeContext, scopedStores);\n\n if (output.node?.tag === RenderTag.PLACEHOLDER) {\n throw new Error(\n \"The root brick of useBrick cannot be an ignored control node\"\n );\n }\n\n if (output.node?.portal) {\n throw new Error(\"The root brick of useBrick cannot be a portal brick\");\n }\n\n renderRoot.child = output.node;\n\n const tagName = output.node ? output.node.type : null;\n\n return { tagName, renderRoot, rendererContext, scopedStores };\n}\n\nexport interface MountUseBrickResult {\n portal?: HTMLElement;\n}\n\nexport function mountUseBrick(\n { renderRoot, rendererContext, scopedStores }: RenderUseBrickResult,\n element: HTMLElement\n): MountUseBrickResult {\n let portal: HTMLElement | undefined;\n renderRoot.createPortal = () => {\n const portalRoot = document.querySelector(\n \"#portal-mount-point\"\n ) as HTMLElement;\n portal = document.createElement(\"div\");\n portalRoot.appendChild(portal);\n return portal;\n };\n\n mountTree(renderRoot, element);\n\n rendererContext.dispatchOnMount();\n rendererContext.initializeScrollIntoView();\n rendererContext.initializeMediaChange();\n rendererContext.initializeMessageDispatcher();\n\n for (const store of scopedStores) {\n store.mountAsyncData();\n }\n\n return {\n portal,\n };\n}\n\nexport function unmountUseBrick(\n { rendererContext }: RenderUseBrickResult,\n mountResult: MountUseBrickResult\n): void {\n // if (mountResult.mainBrick) {\n // mountResult.mainBrick.unmount();\n // }\n if (mountResult.portal) {\n unmountTree(mountResult.portal);\n mountResult.portal.remove();\n }\n rendererContext.dispatchOnUnmount();\n rendererContext.dispose();\n}\n\n/** For v2 compatibility of `doTransform` from brick-kit. */\nexport function legacyDoTransform(\n data: unknown,\n to: unknown,\n options?: unknown\n) {\n if (options) {\n throw new Error(\"Legacy doTransform does not support options in v3\");\n }\n return computeRealValue(\n to,\n {\n ..._internalApiGetRuntimeContext()!,\n data,\n },\n {\n noInject: true,\n }\n );\n}\n\nexport function updateStoryboard(\n appId: string,\n storyboardPatch: Partial<Storyboard>\n): void {\n const storyboard = _internalApiGetStoryboardInBootstrapData(appId)!;\n Object.assign(storyboard, {\n ...storyboardPatch,\n meta: {\n // Keep runtime fields such as `injectMenus`\n ...storyboard.meta,\n ...storyboardPatch.meta,\n },\n $$fulfilling: null,\n $$fulfilled: true,\n $$registerCustomTemplateProcessed: false,\n });\n registerAppI18n(storyboard);\n}\n\nexport function updateStoryboardByRoute(appId: string, newRoute: RouteConf) {\n const storyboard = _internalApiGetStoryboardInBootstrapData(appId)!;\n let match = false;\n const getKey = (route: RouteConf): string => `${route.path}.${route.exact}`;\n const replaceRoute = (routes: RouteConf[], key: string): RouteConf[] => {\n return routes.map((route) => {\n const routeKey = getKey(route);\n if (route.type === \"routes\") {\n route.routes = replaceRoute(route.routes, key);\n return route;\n } else if (routeKey === key) {\n match = true;\n return newRoute;\n } else {\n return route;\n }\n });\n };\n storyboard.routes = replaceRoute(storyboard.routes, getKey(newRoute));\n if (!match) {\n storyboard.routes.unshift(newRoute);\n }\n}\n\nexport function updateStoryboardByTemplate(\n appId: string,\n newTemplate: CustomTemplate,\n settings: unknown\n): void {\n const tplName = `${appId}.${newTemplate.name}`;\n // customTemplateRegistry.delete(tplName);\n customTemplates.define(tplName, {\n bricks: newTemplate.bricks,\n proxy: newTemplate.proxy,\n state: newTemplate.state,\n });\n updateTemplatePreviewSettings(appId, newTemplate.name, settings);\n}\n\nexport function updateTemplatePreviewSettings(\n appId: string,\n templateId: string,\n settings?: unknown\n): void {\n _updatePreviewSettings(\n appId,\n `\\${APP.homepage}/_dev_only_/template-preview/${templateId}`,\n [\n {\n brick: templateId,\n ...pick(\n settings,\n \"properties\",\n \"events\",\n \"lifeCycle\",\n \"context\",\n \"slots\",\n \"children\"\n ),\n },\n ]\n );\n}\n\nfunction getSnippetPreviewPath(snippetId: string): string {\n return `\\${APP.homepage}/_dev_only_/snippet-preview/${snippetId}`;\n}\n\nexport function updateStoryboardBySnippet(\n appId: string,\n snippetData: {\n snippetId: string;\n bricks?: BrickConf[];\n context?: ContextConf[];\n }\n): void {\n _updatePreviewSettings(\n appId,\n getSnippetPreviewPath(snippetData.snippetId),\n snippetData.bricks?.length ? snippetData.bricks : [{ brick: \"span\" }],\n snippetData.context\n );\n}\n\nexport const updateSnippetPreviewSettings = updateStoryboardBySnippet;\n\nfunction _updatePreviewSettings(\n appId: string,\n path: string,\n bricks: BrickConf[],\n context?: ContextConf[]\n) {\n const { routes } = _internalApiGetStoryboardInBootstrapData(appId)!;\n const previewRouteIndex = routes.findIndex((route) => route.path === path);\n const newPreviewRoute: RouteConf = {\n path,\n bricks,\n context,\n menu: false,\n exact: true,\n };\n if (previewRouteIndex === -1) {\n routes.unshift(newPreviewRoute);\n } else {\n routes.splice(previewRouteIndex, 1, newPreviewRoute);\n }\n}\n\nexport function getContextValue(\n name: string,\n { tplStateStoreId }: DataValueOption\n): unknown {\n const runtimeContext = _internalApiGetRuntimeContext()!;\n\n if (tplStateStoreId) {\n const tplStateStore = getTplStateStore(\n {\n ...runtimeContext,\n tplStateStoreId,\n },\n \"STATE\"\n );\n return tplStateStore.getValue(name);\n }\n\n return runtimeContext.ctxStore.getValue(name);\n}\n\nexport function getAllContextValues({\n tplStateStoreId,\n}: DataValueOption): Record<string, unknown> {\n const runtimeContext = _internalApiGetRuntimeContext()!;\n\n if (tplStateStoreId) {\n const tplStateStore = getTplStateStore(\n {\n ...runtimeContext,\n tplStateStoreId,\n },\n \"STATE\"\n );\n return tplStateStore.getAllValues();\n }\n\n return runtimeContext.ctxStore.getAllValues();\n}\n\nexport function getBrickPackagesById(id: string) {\n return getBrickPackages().find((pkg) =>\n pkg.id ? pkg.id === id : pkg.filePath.startsWith(id)\n );\n}\n\n/**\n * Support loading v3 bricks only.\n */\nexport function loadBricks(bricks: string[]) {\n return loadBricksImperatively(bricks, getBrickPackages());\n}\n\nexport function getRenderId() {\n return _internalApiGetRenderId();\n}\n\nexport async function getAddedContracts(\n storyboardPatch: PreviewStoryboardPatch,\n { appId, updateStoryboardType, collectUsedContracts }: PreviewOption\n): Promise<string[]> {\n const storyboard = _internalApiGetStoryboardInBootstrapData(appId);\n let updatedStoryboard;\n\n // 拿到更新部分的 storyboard 配置,然后扫描一遍,找到新增的 contracts\n if (updateStoryboardType === \"route\") {\n updatedStoryboard = {\n routes: [storyboardPatch as RouteConf],\n } as Storyboard;\n } else if (updateStoryboardType === \"template\") {\n updatedStoryboard = {\n meta: {\n customTemplates: [storyboardPatch as CustomTemplate],\n },\n } as Storyboard;\n } else if (updateStoryboardType === \"snippet\") {\n // snippet 是放在挂载 route 里预览,通过 previewPath 拿到当前修改 route\n const snippetPreviewPath = getSnippetPreviewPath(\n (storyboardPatch as RuntimeSnippet).snippetId\n );\n const currentRoute = storyboard?.routes?.find(\n (route) => route.path === snippetPreviewPath\n );\n\n updatedStoryboard = {\n routes: [currentRoute],\n } as Storyboard;\n }\n\n const addedContracts: string[] = [];\n\n if (updatedStoryboard && collectUsedContracts) {\n const contractApis = await collectUsedContracts(updatedStoryboard);\n\n contractApis.forEach((api: string) => {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [_, namespaceId, name] = api.match(\n /(.*)@(.*):\\d\\.\\d\\.\\d/\n ) as string[];\n\n if (\n !storyboard?.meta?.contracts?.some(\n (contract) =>\n contract.namespaceId === namespaceId && contract.name === name\n )\n ) {\n addedContracts.push(api);\n }\n });\n }\n\n return addedContracts;\n}\n\nexport async function debugDataValue(\n debugData: DebugDataValue,\n { tplStateStoreId }: DataValueOption\n): Promise<any> {\n const runtimeContext = {\n ..._internalApiGetRuntimeContext()!,\n tplStateStoreId,\n };\n\n if (debugData.resolve) {\n return resolveData(debugData.resolve!, runtimeContext, { cache: \"reload\" });\n }\n\n return asyncComputeRealValue(debugData.value, runtimeContext);\n}\n\nexport {\n setRealTimeDataInspectRoot,\n addRealTimeDataInspectHook,\n} from \"./data/realTimeDataInspect.js\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"secret_internals.js","names":["_lodash","require","_Runtime","_Renderer","_RendererContext","_resolveData","_computeRealValue","_mount","_enums","_isStrictMode","_CustomTemplates","_registerAppI18n","_utils","_loader","_realTimeDataInspect","symbolForRootRuntimeContext","exports","Symbol","for","renderUseBrick","useBrick","data","errorBoundary","_output$node","_output$node2","scopedRuntimeContext","tplStateStoreScope","formStateStoreScope","createScopedRuntimeContext","_internalApiGetRuntimeContext","pendingPermissionsPreCheck","tplStateStoreMap","Map","formStateStoreMap","rendererContext","RendererContext","renderRoot","tag","RenderTag","ROOT","createPortal","transform","strict","isStrictMode","warnAboutStrictMode","output","renderBrick","properties","scopedStores","postAsyncRender","node","PLACEHOLDER","Error","portal","child","tagName","type","mountUseBrick","element","portalRoot","document","querySelector","createElement","appendChild","mountTree","dispatchOnMount","initializeScrollIntoView","initializeMediaChange","initializeMessageDispatcher","store","mountAsyncData","unmountUseBrick","mountResult","unmountTree","remove","dispatchOnUnmount","dispose","legacyDoTransform","to","options","computeRealValue","noInject","updateStoryboard","appId","storyboardPatch","storyboard","_internalApiGetStoryboardInBootstrapData","Object","assign","meta","$$fulfilling","$$fulfilled","$$registerCustomTemplateProcessed","registerAppI18n","updateStoryboardByRoute","newRoute","match","getKey","route","path","exact","replaceRoute","routes","key","map","routeKey","unshift","updateStoryboardByTemplate","newTemplate","settings","tplName","name","customTemplates","define","bricks","proxy","state","updateTemplatePreviewSettings","templateId","_updatePreviewSettings","brick","pick","getSnippetPreviewPath","snippetId","updateStoryboardBySnippet","snippetData","_snippetData$bricks","length","context","updateSnippetPreviewSettings","previewRouteIndex","findIndex","newPreviewRoute","menu","splice","getContextValue","tplStateStoreId","runtimeContext","tplStateStore","getTplStateStore","getValue","ctxStore","getAllContextValues","getAllValues","getBrickPackagesById","id","getBrickPackages","find","pkg","filePath","startsWith","loadBricks","loadBricksImperatively","loadEditors","editors","loadEditorsImperatively","getRenderId","_internalApiGetRenderId","getAddedContracts","updateStoryboardType","collectUsedContracts","updatedStoryboard","_storyboard$routes","snippetPreviewPath","currentRoute","addedContracts","contractApis","forEach","api","_storyboard$meta","_","namespaceId","contracts","some","contract","push","debugDataValue","debugData","resolve","resolveData","cache","asyncComputeRealValue","value"],"sources":["../../../src/internal/secret_internals.ts"],"sourcesContent":["import type {\n BrickConf,\n CustomTemplate,\n RouteConf,\n Storyboard,\n UseSingleBrickConf,\n RuntimeSnippet,\n ContextConf,\n} from \"@next-core/types\";\nimport { pick } from \"lodash\";\nimport {\n _internalApiGetRenderId,\n _internalApiGetRuntimeContext,\n _internalApiGetStoryboardInBootstrapData,\n getBrickPackages,\n} from \"./Runtime.js\";\nimport {\n createScopedRuntimeContext,\n postAsyncRender,\n renderBrick,\n} from \"./Renderer.js\";\nimport { RendererContext } from \"./RendererContext.js\";\nimport type { DataStore } from \"./data/DataStore.js\";\nimport { resolveData } from \"./data/resolveData.js\";\nimport { asyncComputeRealValue } from \"./compute/computeRealValue.js\";\nimport type {\n DataValueOption,\n PreviewOption,\n PreviewStoryboardPatch,\n RenderRoot,\n RuntimeContext,\n DebugDataValue,\n} from \"./interfaces.js\";\nimport { mountTree, unmountTree } from \"./mount.js\";\nimport { RenderTag } from \"./enums.js\";\nimport { computeRealValue } from \"./compute/computeRealValue.js\";\nimport { isStrictMode, warnAboutStrictMode } from \"../isStrictMode.js\";\nimport { customTemplates } from \"../CustomTemplates.js\";\nimport { registerAppI18n } from \"./registerAppI18n.js\";\nimport { getTplStateStore } from \"./CustomTemplates/utils.js\";\nimport {\n loadBricksImperatively,\n loadEditorsImperatively,\n} from \"@next-core/loader\";\n\nexport type { DataValueOption, RuntimeContext };\n\nexport const symbolForRootRuntimeContext = Symbol.for(\"root.runtimeContext\");\n\nexport interface RuntimeUseBrickConfWithRootSymbols extends UseSingleBrickConf {\n [symbolForRootRuntimeContext]?: RuntimeContext;\n}\n\nexport interface RenderUseBrickResult {\n tagName: string | null;\n renderRoot: RenderRoot;\n rendererContext: RendererContext;\n scopedStores: DataStore<\"STATE\" | \"FORM_STATE\">[];\n}\n\nexport async function renderUseBrick(\n useBrick: RuntimeUseBrickConfWithRootSymbols,\n data: unknown,\n errorBoundary?: boolean\n): Promise<RenderUseBrickResult> {\n const [scopedRuntimeContext, tplStateStoreScope, formStateStoreScope] =\n createScopedRuntimeContext({\n ...(useBrick[symbolForRootRuntimeContext] ??\n _internalApiGetRuntimeContext()!),\n data,\n pendingPermissionsPreCheck: [],\n });\n\n scopedRuntimeContext.tplStateStoreMap ??= new Map();\n scopedRuntimeContext.formStateStoreMap ??= new Map();\n\n const rendererContext = new RendererContext(\"fragment\");\n\n const renderRoot: RenderRoot = {\n tag: RenderTag.ROOT,\n // Will set during `mountUseBrick`\n createPortal: null!,\n };\n\n const transform = (useBrick as { transform?: Record<string, unknown> })\n .transform;\n const strict = isStrictMode();\n if (transform) {\n warnAboutStrictMode(\n strict,\n \"`useBrick.transform`\",\n 'please use \"properties\" instead, check your useBrick:',\n useBrick\n );\n }\n\n const output = await renderBrick(\n renderRoot,\n strict && !errorBoundary\n ? useBrick\n : {\n errorBoundary,\n ...useBrick,\n properties: {\n ...useBrick.properties,\n ...transform,\n },\n },\n scopedRuntimeContext,\n rendererContext,\n [],\n {}\n );\n\n const scopedStores = [...tplStateStoreScope, ...formStateStoreScope];\n\n await postAsyncRender(output, scopedRuntimeContext, scopedStores);\n\n if (output.node?.tag === RenderTag.PLACEHOLDER) {\n throw new Error(\n \"The root brick of useBrick cannot be an ignored control node\"\n );\n }\n\n if (output.node?.portal) {\n throw new Error(\"The root brick of useBrick cannot be a portal brick\");\n }\n\n renderRoot.child = output.node;\n\n const tagName = output.node ? output.node.type : null;\n\n return { tagName, renderRoot, rendererContext, scopedStores };\n}\n\nexport interface MountUseBrickResult {\n portal?: HTMLElement;\n}\n\nexport function mountUseBrick(\n { renderRoot, rendererContext, scopedStores }: RenderUseBrickResult,\n element: HTMLElement\n): MountUseBrickResult {\n let portal: HTMLElement | undefined;\n renderRoot.createPortal = () => {\n const portalRoot = document.querySelector(\n \"#portal-mount-point\"\n ) as HTMLElement;\n portal = document.createElement(\"div\");\n portalRoot.appendChild(portal);\n return portal;\n };\n\n mountTree(renderRoot, element);\n\n rendererContext.dispatchOnMount();\n rendererContext.initializeScrollIntoView();\n rendererContext.initializeMediaChange();\n rendererContext.initializeMessageDispatcher();\n\n for (const store of scopedStores) {\n store.mountAsyncData();\n }\n\n return {\n portal,\n };\n}\n\nexport function unmountUseBrick(\n { rendererContext }: RenderUseBrickResult,\n mountResult: MountUseBrickResult\n): void {\n // if (mountResult.mainBrick) {\n // mountResult.mainBrick.unmount();\n // }\n if (mountResult.portal) {\n unmountTree(mountResult.portal);\n mountResult.portal.remove();\n }\n rendererContext.dispatchOnUnmount();\n rendererContext.dispose();\n}\n\n/** For v2 compatibility of `doTransform` from brick-kit. */\nexport function legacyDoTransform(\n data: unknown,\n to: unknown,\n options?: unknown\n) {\n if (options) {\n throw new Error(\"Legacy doTransform does not support options in v3\");\n }\n return computeRealValue(\n to,\n {\n ..._internalApiGetRuntimeContext()!,\n data,\n },\n {\n noInject: true,\n }\n );\n}\n\nexport function updateStoryboard(\n appId: string,\n storyboardPatch: Partial<Storyboard>\n): void {\n const storyboard = _internalApiGetStoryboardInBootstrapData(appId)!;\n Object.assign(storyboard, {\n ...storyboardPatch,\n meta: {\n // Keep runtime fields such as `injectMenus`\n ...storyboard.meta,\n ...storyboardPatch.meta,\n },\n $$fulfilling: null,\n $$fulfilled: true,\n $$registerCustomTemplateProcessed: false,\n });\n registerAppI18n(storyboard);\n}\n\nexport function updateStoryboardByRoute(appId: string, newRoute: RouteConf) {\n const storyboard = _internalApiGetStoryboardInBootstrapData(appId)!;\n let match = false;\n const getKey = (route: RouteConf): string => `${route.path}.${route.exact}`;\n const replaceRoute = (routes: RouteConf[], key: string): RouteConf[] => {\n return routes.map((route) => {\n const routeKey = getKey(route);\n if (route.type === \"routes\") {\n route.routes = replaceRoute(route.routes, key);\n return route;\n } else if (routeKey === key) {\n match = true;\n return newRoute;\n } else {\n return route;\n }\n });\n };\n storyboard.routes = replaceRoute(storyboard.routes, getKey(newRoute));\n if (!match) {\n storyboard.routes.unshift(newRoute);\n }\n}\n\nexport function updateStoryboardByTemplate(\n appId: string,\n newTemplate: CustomTemplate,\n settings: unknown\n): void {\n const tplName = `${appId}.${newTemplate.name}`;\n // customTemplateRegistry.delete(tplName);\n customTemplates.define(tplName, {\n bricks: newTemplate.bricks,\n proxy: newTemplate.proxy,\n state: newTemplate.state,\n });\n updateTemplatePreviewSettings(appId, newTemplate.name, settings);\n}\n\nexport function updateTemplatePreviewSettings(\n appId: string,\n templateId: string,\n settings?: unknown\n): void {\n _updatePreviewSettings(\n appId,\n `\\${APP.homepage}/_dev_only_/template-preview/${templateId}`,\n [\n {\n brick: templateId,\n ...pick(\n settings,\n \"properties\",\n \"events\",\n \"lifeCycle\",\n \"context\",\n \"slots\",\n \"children\"\n ),\n },\n ]\n );\n}\n\nfunction getSnippetPreviewPath(snippetId: string): string {\n return `\\${APP.homepage}/_dev_only_/snippet-preview/${snippetId}`;\n}\n\nexport function updateStoryboardBySnippet(\n appId: string,\n snippetData: {\n snippetId: string;\n bricks?: BrickConf[];\n context?: ContextConf[];\n }\n): void {\n _updatePreviewSettings(\n appId,\n getSnippetPreviewPath(snippetData.snippetId),\n snippetData.bricks?.length ? snippetData.bricks : [{ brick: \"span\" }],\n snippetData.context\n );\n}\n\nexport const updateSnippetPreviewSettings = updateStoryboardBySnippet;\n\nfunction _updatePreviewSettings(\n appId: string,\n path: string,\n bricks: BrickConf[],\n context?: ContextConf[]\n) {\n const { routes } = _internalApiGetStoryboardInBootstrapData(appId)!;\n const previewRouteIndex = routes.findIndex((route) => route.path === path);\n const newPreviewRoute: RouteConf = {\n path,\n bricks,\n context,\n menu: false,\n exact: true,\n };\n if (previewRouteIndex === -1) {\n routes.unshift(newPreviewRoute);\n } else {\n routes.splice(previewRouteIndex, 1, newPreviewRoute);\n }\n}\n\nexport function getContextValue(\n name: string,\n { tplStateStoreId }: DataValueOption\n): unknown {\n const runtimeContext = _internalApiGetRuntimeContext()!;\n\n if (tplStateStoreId) {\n const tplStateStore = getTplStateStore(\n {\n ...runtimeContext,\n tplStateStoreId,\n },\n \"STATE\"\n );\n return tplStateStore.getValue(name);\n }\n\n return runtimeContext.ctxStore.getValue(name);\n}\n\nexport function getAllContextValues({\n tplStateStoreId,\n}: DataValueOption): Record<string, unknown> {\n const runtimeContext = _internalApiGetRuntimeContext()!;\n\n if (tplStateStoreId) {\n const tplStateStore = getTplStateStore(\n {\n ...runtimeContext,\n tplStateStoreId,\n },\n \"STATE\"\n );\n return tplStateStore.getAllValues();\n }\n\n return runtimeContext.ctxStore.getAllValues();\n}\n\nexport function getBrickPackagesById(id: string) {\n return getBrickPackages().find((pkg) =>\n pkg.id ? pkg.id === id : pkg.filePath.startsWith(id)\n );\n}\n\n/**\n * Support loading v3 bricks only.\n */\nexport function loadBricks(bricks: string[]) {\n return loadBricksImperatively(bricks, getBrickPackages());\n}\n\nexport function loadEditors(editors: string[] | Set<string>) {\n return loadEditorsImperatively(editors, getBrickPackages());\n}\n\nexport function getRenderId() {\n return _internalApiGetRenderId();\n}\n\nexport async function getAddedContracts(\n storyboardPatch: PreviewStoryboardPatch,\n { appId, updateStoryboardType, collectUsedContracts }: PreviewOption\n): Promise<string[]> {\n const storyboard = _internalApiGetStoryboardInBootstrapData(appId);\n let updatedStoryboard;\n\n // 拿到更新部分的 storyboard 配置,然后扫描一遍,找到新增的 contracts\n if (updateStoryboardType === \"route\") {\n updatedStoryboard = {\n routes: [storyboardPatch as RouteConf],\n } as Storyboard;\n } else if (updateStoryboardType === \"template\") {\n updatedStoryboard = {\n meta: {\n customTemplates: [storyboardPatch as CustomTemplate],\n },\n } as Storyboard;\n } else if (updateStoryboardType === \"snippet\") {\n // snippet 是放在挂载 route 里预览,通过 previewPath 拿到当前修改 route\n const snippetPreviewPath = getSnippetPreviewPath(\n (storyboardPatch as RuntimeSnippet).snippetId\n );\n const currentRoute = storyboard?.routes?.find(\n (route) => route.path === snippetPreviewPath\n );\n\n updatedStoryboard = {\n routes: [currentRoute],\n } as Storyboard;\n }\n\n const addedContracts: string[] = [];\n\n if (updatedStoryboard && collectUsedContracts) {\n const contractApis = await collectUsedContracts(updatedStoryboard);\n\n contractApis.forEach((api: string) => {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [_, namespaceId, name] = api.match(\n /(.*)@(.*):\\d\\.\\d\\.\\d/\n ) as string[];\n\n if (\n !storyboard?.meta?.contracts?.some(\n (contract) =>\n contract.namespaceId === namespaceId && contract.name === name\n )\n ) {\n addedContracts.push(api);\n }\n });\n }\n\n return addedContracts;\n}\n\nexport async function debugDataValue(\n debugData: DebugDataValue,\n { tplStateStoreId }: DataValueOption\n): Promise<any> {\n const runtimeContext = {\n ..._internalApiGetRuntimeContext()!,\n tplStateStoreId,\n };\n\n if (debugData.resolve) {\n return resolveData(debugData.resolve!, runtimeContext, { cache: \"reload\" });\n }\n\n return asyncComputeRealValue(debugData.value, runtimeContext);\n}\n\nexport {\n setRealTimeDataInspectRoot,\n addRealTimeDataInspectHook,\n} from \"./data/realTimeDataInspect.js\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAMA,IAAAE,SAAA,GAAAF,OAAA;AAKA,IAAAG,gBAAA,GAAAH,OAAA;AAEA,IAAAI,YAAA,GAAAJ,OAAA;AACA,IAAAK,iBAAA,GAAAL,OAAA;AASA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AAEA,IAAAQ,aAAA,GAAAR,OAAA;AACA,IAAAS,gBAAA,GAAAT,OAAA;AACA,IAAAU,gBAAA,GAAAV,OAAA;AACA,IAAAW,MAAA,GAAAX,OAAA;AACA,IAAAY,OAAA,GAAAZ,OAAA;AAyaA,IAAAa,oBAAA,GAAAb,OAAA;AAlaO,MAAMc,2BAA2B,GAAAC,OAAA,CAAAD,2BAAA,GAAGE,MAAM,CAACC,GAAG,CAAC,qBAAqB,CAAC;AAarE,eAAeC,cAAcA,CAClCC,QAA4C,EAC5CC,IAAa,EACbC,aAAuB,EACQ;EAAA,IAAAC,YAAA,EAAAC,aAAA;EAC/B,MAAM,CAACC,oBAAoB,EAAEC,kBAAkB,EAAEC,mBAAmB,CAAC,GACnE,IAAAC,oCAA0B,EAAC;IACzB,IAAIR,QAAQ,CAACL,2BAA2B,CAAC,IACvC,IAAAc,sCAA6B,EAAC,CAAE,CAAC;IACnCR,IAAI;IACJS,0BAA0B,EAAE;EAC9B,CAAC,CAAC;EAEJL,oBAAoB,CAACM,gBAAgB,KAArCN,oBAAoB,CAACM,gBAAgB,GAAK,IAAIC,GAAG,CAAC,CAAC;EACnDP,oBAAoB,CAACQ,iBAAiB,KAAtCR,oBAAoB,CAACQ,iBAAiB,GAAK,IAAID,GAAG,CAAC,CAAC;EAEpD,MAAME,eAAe,GAAG,IAAIC,gCAAe,CAAC,UAAU,CAAC;EAEvD,MAAMC,UAAsB,GAAG;IAC7BC,GAAG,EAAEC,gBAAS,CAACC,IAAI;IACnB;IACAC,YAAY,EAAE;EAChB,CAAC;EAED,MAAMC,SAAS,GAAIrB,QAAQ,CACxBqB,SAAS;EACZ,MAAMC,MAAM,GAAG,IAAAC,0BAAY,EAAC,CAAC;EAC7B,IAAIF,SAAS,EAAE;IACb,IAAAG,iCAAmB,EACjBF,MAAM,EACN,sBAAsB,EACtB,uDAAuD,EACvDtB,QACF,CAAC;EACH;EAEA,MAAMyB,MAAM,GAAG,MAAM,IAAAC,qBAAW,EAC9BV,UAAU,EACVM,MAAM,IAAI,CAACpB,aAAa,GACpBF,QAAQ,GACR;IACEE,aAAa;IACb,GAAGF,QAAQ;IACX2B,UAAU,EAAE;MACV,GAAG3B,QAAQ,CAAC2B,UAAU;MACtB,GAAGN;IACL;EACF,CAAC,EACLhB,oBAAoB,EACpBS,eAAe,EACf,EAAE,EACF,CAAC,CACH,CAAC;EAED,MAAMc,YAAY,GAAG,CAAC,GAAGtB,kBAAkB,EAAE,GAAGC,mBAAmB,CAAC;EAEpE,MAAM,IAAAsB,yBAAe,EAACJ,MAAM,EAAEpB,oBAAoB,EAAEuB,YAAY,CAAC;EAEjE,IAAI,EAAAzB,YAAA,GAAAsB,MAAM,CAACK,IAAI,cAAA3B,YAAA,uBAAXA,YAAA,CAAac,GAAG,MAAKC,gBAAS,CAACa,WAAW,EAAE;IAC9C,MAAM,IAAIC,KAAK,CACb,8DACF,CAAC;EACH;EAEA,KAAA5B,aAAA,GAAIqB,MAAM,CAACK,IAAI,cAAA1B,aAAA,eAAXA,aAAA,CAAa6B,MAAM,EAAE;IACvB,MAAM,IAAID,KAAK,CAAC,qDAAqD,CAAC;EACxE;EAEAhB,UAAU,CAACkB,KAAK,GAAGT,MAAM,CAACK,IAAI;EAE9B,MAAMK,OAAO,GAAGV,MAAM,CAACK,IAAI,GAAGL,MAAM,CAACK,IAAI,CAACM,IAAI,GAAG,IAAI;EAErD,OAAO;IAAED,OAAO;IAAEnB,UAAU;IAAEF,eAAe;IAAEc;EAAa,CAAC;AAC/D;AAMO,SAASS,aAAaA,CAC3B;EAAErB,UAAU;EAAEF,eAAe;EAAEc;AAAmC,CAAC,EACnEU,OAAoB,EACC;EACrB,IAAIL,MAA+B;EACnCjB,UAAU,CAACI,YAAY,GAAG,MAAM;IAC9B,MAAMmB,UAAU,GAAGC,QAAQ,CAACC,aAAa,CACvC,qBACF,CAAgB;IAChBR,MAAM,GAAGO,QAAQ,CAACE,aAAa,CAAC,KAAK,CAAC;IACtCH,UAAU,CAACI,WAAW,CAACV,MAAM,CAAC;IAC9B,OAAOA,MAAM;EACf,CAAC;EAED,IAAAW,gBAAS,EAAC5B,UAAU,EAAEsB,OAAO,CAAC;EAE9BxB,eAAe,CAAC+B,eAAe,CAAC,CAAC;EACjC/B,eAAe,CAACgC,wBAAwB,CAAC,CAAC;EAC1ChC,eAAe,CAACiC,qBAAqB,CAAC,CAAC;EACvCjC,eAAe,CAACkC,2BAA2B,CAAC,CAAC;EAE7C,KAAK,MAAMC,KAAK,IAAIrB,YAAY,EAAE;IAChCqB,KAAK,CAACC,cAAc,CAAC,CAAC;EACxB;EAEA,OAAO;IACLjB;EACF,CAAC;AACH;AAEO,SAASkB,eAAeA,CAC7B;EAAErC;AAAsC,CAAC,EACzCsC,WAAgC,EAC1B;EACN;EACA;EACA;EACA,IAAIA,WAAW,CAACnB,MAAM,EAAE;IACtB,IAAAoB,kBAAW,EAACD,WAAW,CAACnB,MAAM,CAAC;IAC/BmB,WAAW,CAACnB,MAAM,CAACqB,MAAM,CAAC,CAAC;EAC7B;EACAxC,eAAe,CAACyC,iBAAiB,CAAC,CAAC;EACnCzC,eAAe,CAAC0C,OAAO,CAAC,CAAC;AAC3B;;AAEA;AACO,SAASC,iBAAiBA,CAC/BxD,IAAa,EACbyD,EAAW,EACXC,OAAiB,EACjB;EACA,IAAIA,OAAO,EAAE;IACX,MAAM,IAAI3B,KAAK,CAAC,mDAAmD,CAAC;EACtE;EACA,OAAO,IAAA4B,kCAAgB,EACrBF,EAAE,EACF;IACE,GAAG,IAAAjD,sCAA6B,EAAC,CAAE;IACnCR;EACF,CAAC,EACD;IACE4D,QAAQ,EAAE;EACZ,CACF,CAAC;AACH;AAEO,SAASC,gBAAgBA,CAC9BC,KAAa,EACbC,eAAoC,EAC9B;EACN,MAAMC,UAAU,GAAG,IAAAC,iDAAwC,EAACH,KAAK,CAAE;EACnEI,MAAM,CAACC,MAAM,CAACH,UAAU,EAAE;IACxB,GAAGD,eAAe;IAClBK,IAAI,EAAE;MACJ;MACA,GAAGJ,UAAU,CAACI,IAAI;MAClB,GAAGL,eAAe,CAACK;IACrB,CAAC;IACDC,YAAY,EAAE,IAAI;IAClBC,WAAW,EAAE,IAAI;IACjBC,iCAAiC,EAAE;EACrC,CAAC,CAAC;EACF,IAAAC,gCAAe,EAACR,UAAU,CAAC;AAC7B;AAEO,SAASS,uBAAuBA,CAACX,KAAa,EAAEY,QAAmB,EAAE;EAC1E,MAAMV,UAAU,GAAG,IAAAC,iDAAwC,EAACH,KAAK,CAAE;EACnE,IAAIa,KAAK,GAAG,KAAK;EACjB,MAAMC,MAAM,GAAIC,KAAgB,IAAa,GAAGA,KAAK,CAACC,IAAI,IAAID,KAAK,CAACE,KAAK,EAAE;EAC3E,MAAMC,YAAY,GAAGA,CAACC,MAAmB,EAAEC,GAAW,KAAkB;IACtE,OAAOD,MAAM,CAACE,GAAG,CAAEN,KAAK,IAAK;MAC3B,MAAMO,QAAQ,GAAGR,MAAM,CAACC,KAAK,CAAC;MAC9B,IAAIA,KAAK,CAAC1C,IAAI,KAAK,QAAQ,EAAE;QAC3B0C,KAAK,CAACI,MAAM,GAAGD,YAAY,CAACH,KAAK,CAACI,MAAM,EAAEC,GAAG,CAAC;QAC9C,OAAOL,KAAK;MACd,CAAC,MAAM,IAAIO,QAAQ,KAAKF,GAAG,EAAE;QAC3BP,KAAK,GAAG,IAAI;QACZ,OAAOD,QAAQ;MACjB,CAAC,MAAM;QACL,OAAOG,KAAK;MACd;IACF,CAAC,CAAC;EACJ,CAAC;EACDb,UAAU,CAACiB,MAAM,GAAGD,YAAY,CAAChB,UAAU,CAACiB,MAAM,EAAEL,MAAM,CAACF,QAAQ,CAAC,CAAC;EACrE,IAAI,CAACC,KAAK,EAAE;IACVX,UAAU,CAACiB,MAAM,CAACI,OAAO,CAACX,QAAQ,CAAC;EACrC;AACF;AAEO,SAASY,0BAA0BA,CACxCxB,KAAa,EACbyB,WAA2B,EAC3BC,QAAiB,EACX;EACN,MAAMC,OAAO,GAAG,GAAG3B,KAAK,IAAIyB,WAAW,CAACG,IAAI,EAAE;EAC9C;EACAC,gCAAe,CAACC,MAAM,CAACH,OAAO,EAAE;IAC9BI,MAAM,EAAEN,WAAW,CAACM,MAAM;IAC1BC,KAAK,EAAEP,WAAW,CAACO,KAAK;IACxBC,KAAK,EAAER,WAAW,CAACQ;EACrB,CAAC,CAAC;EACFC,6BAA6B,CAAClC,KAAK,EAAEyB,WAAW,CAACG,IAAI,EAAEF,QAAQ,CAAC;AAClE;AAEO,SAASQ,6BAA6BA,CAC3ClC,KAAa,EACbmC,UAAkB,EAClBT,QAAkB,EACZ;EACNU,sBAAsB,CACpBpC,KAAK,EACL,gDAAgDmC,UAAU,EAAE,EAC5D,CACE;IACEE,KAAK,EAAEF,UAAU;IACjB,GAAG,IAAAG,YAAI,EACLZ,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,SAAS,EACT,OAAO,EACP,UACF;EACF,CAAC,CAEL,CAAC;AACH;AAEA,SAASa,qBAAqBA,CAACC,SAAiB,EAAU;EACxD,OAAO,+CAA+CA,SAAS,EAAE;AACnE;AAEO,SAASC,yBAAyBA,CACvCzC,KAAa,EACb0C,WAIC,EACK;EAAA,IAAAC,mBAAA;EACNP,sBAAsB,CACpBpC,KAAK,EACLuC,qBAAqB,CAACG,WAAW,CAACF,SAAS,CAAC,EAC5C,CAAAG,mBAAA,GAAAD,WAAW,CAACX,MAAM,cAAAY,mBAAA,eAAlBA,mBAAA,CAAoBC,MAAM,GAAGF,WAAW,CAACX,MAAM,GAAG,CAAC;IAAEM,KAAK,EAAE;EAAO,CAAC,CAAC,EACrEK,WAAW,CAACG,OACd,CAAC;AACH;AAEO,MAAMC,4BAA4B,GAAAjH,OAAA,CAAAiH,4BAAA,GAAGL,yBAAyB;AAErE,SAASL,sBAAsBA,CAC7BpC,KAAa,EACbgB,IAAY,EACZe,MAAmB,EACnBc,OAAuB,EACvB;EACA,MAAM;IAAE1B;EAAO,CAAC,GAAG,IAAAhB,iDAAwC,EAACH,KAAK,CAAE;EACnE,MAAM+C,iBAAiB,GAAG5B,MAAM,CAAC6B,SAAS,CAAEjC,KAAK,IAAKA,KAAK,CAACC,IAAI,KAAKA,IAAI,CAAC;EAC1E,MAAMiC,eAA0B,GAAG;IACjCjC,IAAI;IACJe,MAAM;IACNc,OAAO;IACPK,IAAI,EAAE,KAAK;IACXjC,KAAK,EAAE;EACT,CAAC;EACD,IAAI8B,iBAAiB,KAAK,CAAC,CAAC,EAAE;IAC5B5B,MAAM,CAACI,OAAO,CAAC0B,eAAe,CAAC;EACjC,CAAC,MAAM;IACL9B,MAAM,CAACgC,MAAM,CAACJ,iBAAiB,EAAE,CAAC,EAAEE,eAAe,CAAC;EACtD;AACF;AAEO,SAASG,eAAeA,CAC7BxB,IAAY,EACZ;EAAEyB;AAAiC,CAAC,EAC3B;EACT,MAAMC,cAAc,GAAG,IAAA5G,sCAA6B,EAAC,CAAE;EAEvD,IAAI2G,eAAe,EAAE;IACnB,MAAME,aAAa,GAAG,IAAAC,uBAAgB,EACpC;MACE,GAAGF,cAAc;MACjBD;IACF,CAAC,EACD,OACF,CAAC;IACD,OAAOE,aAAa,CAACE,QAAQ,CAAC7B,IAAI,CAAC;EACrC;EAEA,OAAO0B,cAAc,CAACI,QAAQ,CAACD,QAAQ,CAAC7B,IAAI,CAAC;AAC/C;AAEO,SAAS+B,mBAAmBA,CAAC;EAClCN;AACe,CAAC,EAA2B;EAC3C,MAAMC,cAAc,GAAG,IAAA5G,sCAA6B,EAAC,CAAE;EAEvD,IAAI2G,eAAe,EAAE;IACnB,MAAME,aAAa,GAAG,IAAAC,uBAAgB,EACpC;MACE,GAAGF,cAAc;MACjBD;IACF,CAAC,EACD,OACF,CAAC;IACD,OAAOE,aAAa,CAACK,YAAY,CAAC,CAAC;EACrC;EAEA,OAAON,cAAc,CAACI,QAAQ,CAACE,YAAY,CAAC,CAAC;AAC/C;AAEO,SAASC,oBAAoBA,CAACC,EAAU,EAAE;EAC/C,OAAO,IAAAC,yBAAgB,EAAC,CAAC,CAACC,IAAI,CAAEC,GAAG,IACjCA,GAAG,CAACH,EAAE,GAAGG,GAAG,CAACH,EAAE,KAAKA,EAAE,GAAGG,GAAG,CAACC,QAAQ,CAACC,UAAU,CAACL,EAAE,CACrD,CAAC;AACH;;AAEA;AACA;AACA;AACO,SAASM,UAAUA,CAACrC,MAAgB,EAAE;EAC3C,OAAO,IAAAsC,8BAAsB,EAACtC,MAAM,EAAE,IAAAgC,yBAAgB,EAAC,CAAC,CAAC;AAC3D;AAEO,SAASO,WAAWA,CAACC,OAA+B,EAAE;EAC3D,OAAO,IAAAC,+BAAuB,EAACD,OAAO,EAAE,IAAAR,yBAAgB,EAAC,CAAC,CAAC;AAC7D;AAEO,SAASU,WAAWA,CAAA,EAAG;EAC5B,OAAO,IAAAC,gCAAuB,EAAC,CAAC;AAClC;AAEO,eAAeC,iBAAiBA,CACrC1E,eAAuC,EACvC;EAAED,KAAK;EAAE4E,oBAAoB;EAAEC;AAAoC,CAAC,EACjD;EACnB,MAAM3E,UAAU,GAAG,IAAAC,iDAAwC,EAACH,KAAK,CAAC;EAClE,IAAI8E,iBAAiB;;EAErB;EACA,IAAIF,oBAAoB,KAAK,OAAO,EAAE;IACpCE,iBAAiB,GAAG;MAClB3D,MAAM,EAAE,CAAClB,eAAe;IAC1B,CAAe;EACjB,CAAC,MAAM,IAAI2E,oBAAoB,KAAK,UAAU,EAAE;IAC9CE,iBAAiB,GAAG;MAClBxE,IAAI,EAAE;QACJuB,eAAe,EAAE,CAAC5B,eAAe;MACnC;IACF,CAAe;EACjB,CAAC,MAAM,IAAI2E,oBAAoB,KAAK,SAAS,EAAE;IAAA,IAAAG,kBAAA;IAC7C;IACA,MAAMC,kBAAkB,GAAGzC,qBAAqB,CAC7CtC,eAAe,CAAoBuC,SACtC,CAAC;IACD,MAAMyC,YAAY,GAAG/E,UAAU,aAAVA,UAAU,gBAAA6E,kBAAA,GAAV7E,UAAU,CAAEiB,MAAM,cAAA4D,kBAAA,uBAAlBA,kBAAA,CAAoBf,IAAI,CAC1CjD,KAAK,IAAKA,KAAK,CAACC,IAAI,KAAKgE,kBAC5B,CAAC;IAEDF,iBAAiB,GAAG;MAClB3D,MAAM,EAAE,CAAC8D,YAAY;IACvB,CAAe;EACjB;EAEA,MAAMC,cAAwB,GAAG,EAAE;EAEnC,IAAIJ,iBAAiB,IAAID,oBAAoB,EAAE;IAC7C,MAAMM,YAAY,GAAG,MAAMN,oBAAoB,CAACC,iBAAiB,CAAC;IAElEK,YAAY,CAACC,OAAO,CAAEC,GAAW,IAAK;MAAA,IAAAC,gBAAA;MACpC;MACA,MAAM,CAACC,CAAC,EAAEC,WAAW,EAAE5D,IAAI,CAAC,GAAGyD,GAAG,CAACxE,KAAK,CACtC,sBACF,CAAa;MAEb,IACE,EAACX,UAAU,aAAVA,UAAU,gBAAAoF,gBAAA,GAAVpF,UAAU,CAAEI,IAAI,cAAAgF,gBAAA,gBAAAA,gBAAA,GAAhBA,gBAAA,CAAkBG,SAAS,cAAAH,gBAAA,eAA3BA,gBAAA,CAA6BI,IAAI,CAC/BC,QAAQ,IACPA,QAAQ,CAACH,WAAW,KAAKA,WAAW,IAAIG,QAAQ,CAAC/D,IAAI,KAAKA,IAC9D,CAAC,GACD;QACAsD,cAAc,CAACU,IAAI,CAACP,GAAG,CAAC;MAC1B;IACF,CAAC,CAAC;EACJ;EAEA,OAAOH,cAAc;AACvB;AAEO,eAAeW,cAAcA,CAClCC,SAAyB,EACzB;EAAEzC;AAAiC,CAAC,EACtB;EACd,MAAMC,cAAc,GAAG;IACrB,GAAG,IAAA5G,sCAA6B,EAAC,CAAE;IACnC2G;EACF,CAAC;EAED,IAAIyC,SAAS,CAACC,OAAO,EAAE;IACrB,OAAO,IAAAC,wBAAW,EAACF,SAAS,CAACC,OAAO,EAAGzC,cAAc,EAAE;MAAE2C,KAAK,EAAE;IAAS,CAAC,CAAC;EAC7E;EAEA,OAAO,IAAAC,uCAAqB,EAACJ,SAAS,CAACK,KAAK,EAAE7C,cAAc,CAAC;AAC/D","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ import _classPrivateFieldInitSpec from "@babel/runtime/helpers/classPrivateFieldInitSpec";
2
+ import _classPrivateFieldGet from "@babel/runtime/helpers/classPrivateFieldGet2";
3
+ var _registry = /*#__PURE__*/new WeakMap();
4
+ class CustomEditorRegistry {
5
+ constructor() {
6
+ _classPrivateFieldInitSpec(this, _registry, new Map());
7
+ }
8
+ define(editorName, editorFunc) {
9
+ if (_classPrivateFieldGet(_registry, this).has(editorName)) {
10
+ throw new Error(`Custom editor of "${editorName}" already registered`);
11
+ }
12
+ _classPrivateFieldGet(_registry, this).set(editorName, editorFunc);
13
+ }
14
+ get(editorName) {
15
+ return _classPrivateFieldGet(_registry, this).get(editorName);
16
+ }
17
+ }
18
+ export const customEditors = new CustomEditorRegistry();
19
+ //# sourceMappingURL=CustomEditors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomEditors.js","names":["CustomEditorRegistry","constructor","_classPrivateFieldInitSpec","_registry","Map","define","editorName","editorFunc","_classPrivateFieldGet","has","Error","set","get","customEditors"],"sources":["../../src/CustomEditors.ts"],"sourcesContent":["class CustomEditorRegistry {\n readonly #registry = new Map<string, Function>();\n\n define(editorName: string, editorFunc: Function) {\n if (this.#registry.has(editorName)) {\n throw new Error(`Custom editor of \"${editorName}\" already registered`);\n }\n\n this.#registry.set(editorName, editorFunc);\n }\n\n get(editorName: string) {\n return this.#registry.get(editorName);\n }\n}\n\nexport const customEditors = new CustomEditorRegistry();\n"],"mappings":";;;AAAA,MAAMA,oBAAoB,CAAC;EAAAC,YAAA;IACzBC,0BAAA,OAASC,SAAS,EAAG,IAAIC,GAAG,CAAmB,CAAC;EAAC;EAEjDC,MAAMA,CAACC,UAAkB,EAAEC,UAAoB,EAAE;IAC/C,IAAIC,qBAAA,CAAKL,SAAS,EAAd,IAAa,CAAC,CAACM,GAAG,CAACH,UAAU,CAAC,EAAE;MAClC,MAAM,IAAII,KAAK,CAAC,qBAAqBJ,UAAU,sBAAsB,CAAC;IACxE;IAEAE,qBAAA,CAAKL,SAAS,EAAd,IAAa,CAAC,CAACQ,GAAG,CAACL,UAAU,EAAEC,UAAU,CAAC;EAC5C;EAEAK,GAAGA,CAACN,UAAkB,EAAE;IACtB,OAAOE,qBAAA,CAAKL,SAAS,EAAd,IAAa,CAAC,CAACS,GAAG,CAACN,UAAU,CAAC;EACvC;AACF;AAEA,OAAO,MAAMO,aAAa,GAAG,IAAIb,oBAAoB,CAAC,CAAC","ignoreList":[]}
package/dist/esm/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from "./auth.js";
2
+ export * from "./CustomEditors.js";
2
3
  export * from "./CustomProcessors.js";
3
4
  export * from "./CustomTemplates.js";
4
5
  export * from "./fetchByProvider.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["createRuntime","getRuntime","__secret_internals","__test_only","getCssPropertyValue","getCurrentTheme","getCurrentMode","batchSetAppsLocalTheme","applyTheme","checkIfOfComputed","checkIfByTransform","registerWidgetFunctions","registerWidgetI18n","StoryboardFunctionRegistryFactory","matchPath","Notification","Dialog","setUIVersion"],"sources":["../../src/index.ts"],"sourcesContent":["export * from \"./auth.js\";\nexport * from \"./CustomProcessors.js\";\nexport * from \"./CustomTemplates.js\";\nexport * from \"./fetchByProvider.js\";\nexport * from \"./getBasePath.js\";\nexport * from \"./getPageInfo.js\";\nexport * from \"./handleHttpError.js\";\nexport * from \"./history.js\";\nexport * from \"./createRoot.js\";\nexport * from \"./getRealValue.js\";\nexport {\n createRuntime,\n getRuntime,\n type RuntimeOptions,\n type RuntimeHooks,\n type RuntimeHooksMenuHelpers,\n type ImagesFactory,\n type PageViewInfo,\n} from \"./internal/Runtime.js\";\nimport * as __secret_internals from \"./internal/secret_internals.js\";\nexport { __secret_internals };\nexport { __test_only } from \"./internal/test_only.js\";\nexport {\n getCssPropertyValue,\n getCurrentTheme,\n getCurrentMode,\n batchSetAppsLocalTheme,\n applyTheme,\n} from \"./themeAndMode.js\";\nexport {\n checkIfOfComputed,\n checkIfByTransform,\n} from \"./internal/compute/checkIf.js\";\nexport { registerWidgetFunctions } from \"./internal/compute/WidgetFunctions.js\";\nexport { registerWidgetI18n } from \"./internal/compute/WidgetI18n.js\";\nexport { StoryboardFunctionRegistryFactory } from \"./StoryboardFunctionRegistry.js\";\nexport { matchPath } from \"./internal/matchPath.js\";\nexport { Notification, type NotificationOptions } from \"./Notification.js\";\nexport { Dialog, type DialogOptions } from \"./Dialog.js\";\nexport * from \"./getV2RuntimeFromDll.js\";\nexport { setUIVersion } from \"./setUIVersion.js\";\n"],"mappings":"AAAA,cAAc,WAAW;AACzB,cAAc,uBAAuB;AACrC,cAAc,sBAAsB;AACpC,cAAc,sBAAsB;AACpC,cAAc,kBAAkB;AAChC,cAAc,kBAAkB;AAChC,cAAc,sBAAsB;AACpC,cAAc,cAAc;AAC5B,cAAc,iBAAiB;AAC/B,cAAc,mBAAmB;AACjC,SACEA,aAAa,EACbC,UAAU,QAML,uBAAuB;AAC9B,OAAO,KAAKC,kBAAkB,MAAM,gCAAgC;AACpE,SAASA,kBAAkB;AAC3B,SAASC,WAAW,QAAQ,yBAAyB;AACrD,SACEC,mBAAmB,EACnBC,eAAe,EACfC,cAAc,EACdC,sBAAsB,EACtBC,UAAU,QACL,mBAAmB;AAC1B,SACEC,iBAAiB,EACjBC,kBAAkB,QACb,+BAA+B;AACtC,SAASC,uBAAuB,QAAQ,uCAAuC;AAC/E,SAASC,kBAAkB,QAAQ,kCAAkC;AACrE,SAASC,iCAAiC,QAAQ,iCAAiC;AACnF,SAASC,SAAS,QAAQ,yBAAyB;AACnD,SAASC,YAAY,QAAkC,mBAAmB;AAC1E,SAASC,MAAM,QAA4B,aAAa;AACxD,cAAc,0BAA0B;AACxC,SAASC,YAAY,QAAQ,mBAAmB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["createRuntime","getRuntime","__secret_internals","__test_only","getCssPropertyValue","getCurrentTheme","getCurrentMode","batchSetAppsLocalTheme","applyTheme","checkIfOfComputed","checkIfByTransform","registerWidgetFunctions","registerWidgetI18n","StoryboardFunctionRegistryFactory","matchPath","Notification","Dialog","setUIVersion"],"sources":["../../src/index.ts"],"sourcesContent":["export * from \"./auth.js\";\nexport * from \"./CustomEditors.js\";\nexport * from \"./CustomProcessors.js\";\nexport * from \"./CustomTemplates.js\";\nexport * from \"./fetchByProvider.js\";\nexport * from \"./getBasePath.js\";\nexport * from \"./getPageInfo.js\";\nexport * from \"./handleHttpError.js\";\nexport * from \"./history.js\";\nexport * from \"./createRoot.js\";\nexport * from \"./getRealValue.js\";\nexport {\n createRuntime,\n getRuntime,\n type RuntimeOptions,\n type RuntimeHooks,\n type RuntimeHooksMenuHelpers,\n type ImagesFactory,\n type PageViewInfo,\n} from \"./internal/Runtime.js\";\nimport * as __secret_internals from \"./internal/secret_internals.js\";\nexport { __secret_internals };\nexport { __test_only } from \"./internal/test_only.js\";\nexport {\n getCssPropertyValue,\n getCurrentTheme,\n getCurrentMode,\n batchSetAppsLocalTheme,\n applyTheme,\n} from \"./themeAndMode.js\";\nexport {\n checkIfOfComputed,\n checkIfByTransform,\n} from \"./internal/compute/checkIf.js\";\nexport { registerWidgetFunctions } from \"./internal/compute/WidgetFunctions.js\";\nexport { registerWidgetI18n } from \"./internal/compute/WidgetI18n.js\";\nexport { StoryboardFunctionRegistryFactory } from \"./StoryboardFunctionRegistry.js\";\nexport { matchPath } from \"./internal/matchPath.js\";\nexport { Notification, type NotificationOptions } from \"./Notification.js\";\nexport { Dialog, type DialogOptions } from \"./Dialog.js\";\nexport * from \"./getV2RuntimeFromDll.js\";\nexport { setUIVersion } from \"./setUIVersion.js\";\n"],"mappings":"AAAA,cAAc,WAAW;AACzB,cAAc,oBAAoB;AAClC,cAAc,uBAAuB;AACrC,cAAc,sBAAsB;AACpC,cAAc,sBAAsB;AACpC,cAAc,kBAAkB;AAChC,cAAc,kBAAkB;AAChC,cAAc,sBAAsB;AACpC,cAAc,cAAc;AAC5B,cAAc,iBAAiB;AAC/B,cAAc,mBAAmB;AACjC,SACEA,aAAa,EACbC,UAAU,QAML,uBAAuB;AAC9B,OAAO,KAAKC,kBAAkB,MAAM,gCAAgC;AACpE,SAASA,kBAAkB;AAC3B,SAASC,WAAW,QAAQ,yBAAyB;AACrD,SACEC,mBAAmB,EACnBC,eAAe,EACfC,cAAc,EACdC,sBAAsB,EACtBC,UAAU,QACL,mBAAmB;AAC1B,SACEC,iBAAiB,EACjBC,kBAAkB,QACb,+BAA+B;AACtC,SAASC,uBAAuB,QAAQ,uCAAuC;AAC/E,SAASC,kBAAkB,QAAQ,kCAAkC;AACrE,SAASC,iCAAiC,QAAQ,iCAAiC;AACnF,SAASC,SAAS,QAAQ,yBAAyB;AACnD,SAASC,YAAY,QAAkC,mBAAmB;AAC1E,SAASC,MAAM,QAA4B,aAAa;AACxD,cAAc,0BAA0B;AACxC,SAASC,YAAY,QAAQ,mBAAmB","ignoreList":[]}
@@ -25,6 +25,7 @@ let runtime;
25
25
  // Allow inject bootstrap data in a runtime other than Brick Next.
26
26
  let bootstrapData;
27
27
  let router;
28
+ let processedBrickPackages;
28
29
  export let hooks;
29
30
  export function createRuntime(options) {
30
31
  if (runtime) {
@@ -209,7 +210,10 @@ function processPublicDepsPackages(brickPackages, pubDeps) {
209
210
  }
210
211
  export function getBrickPackages() {
211
212
  var _bootstrapData7;
212
- return processPublicDepsPackages((_bootstrapData7 = bootstrapData) === null || _bootstrapData7 === void 0 ? void 0 : _bootstrapData7.brickPackages, window.PUBLIC_DEPS) ?? injectedBrickPackages ?? window.STANDALONE_BRICK_PACKAGES ?? [];
213
+ return (
214
+ // Not necessary to process brick packages multiple times.
215
+ processedBrickPackages ?? (processedBrickPackages = processPublicDepsPackages(((_bootstrapData7 = bootstrapData) === null || _bootstrapData7 === void 0 ? void 0 : _bootstrapData7.brickPackages) ?? injectedBrickPackages ?? window.STANDALONE_BRICK_PACKAGES ?? [], window.PUBLIC_DEPS))
216
+ );
213
217
  }
214
218
  export function _internalApiGetRenderId() {
215
219
  var _router6;
@@ -1 +1 @@
1
- {"version":3,"file":"Runtime.js","names":["i18n","initializeI18n","loadBricksImperatively","deepFreeze","isObject","moment","createHistory","matchStoryboard","Router","NS","locales","loadNotificationService","loadDialogService","injectedBrickPackages","hasInstalledApp","listenDevtoolsEagerly","getV2RuntimeFromDll","customizeColorTheme","runtime","bootstrapData","router","hooks","createRuntime","options","Error","locale","language","on","Runtime","getRuntimeV3","getRuntimeV2Factory","v2Kit","getRuntimeV2","Proxy","getRuntime","get","key","arguments","length","undefined","Reflect","_initialized","WeakMap","_bootstrapped","_Runtime_brand","WeakSet","constructor","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_defineProperty","initialize","data","_data$settings","_classPrivateFieldGet","_classPrivateFieldSet","normalizeBootstrapData","notification","dialog","_assertClassBrand","_getPresetBricks","call","loadBricks","settings","misc","theme","bootstrap","storyboards","getRecentApps","_router","getCurrentApp","_router2","currentApp","appId","matchVersion","getFeatureFlags","_bootstrapData","_router3","featureFlags","config","getMiscSettings","_bootstrapData2","_router4","getBrandSettings","_bootstrapData3","base_title","brand","getLaunchpadSettings","_bootstrapData4","columns","rows","launchpad","getDesktops","_bootstrapData5","desktops","getLaunchpadSiteMap","_bootstrapData6","siteSort","toggleLaunchpadEffect","open","document","body","classList","toggle","applyPageTitle","pageTitle","baseTitle","title","getNavConfig","_router5","bricks","getBrickPackages","_bootstrapData10","presetBricks","brickPackages","processPublicDepsPackages","pubDeps","bricksMap","Map","forEach","pkg","pkgName","filePath","split","has","set","Array","from","values","_bootstrapData7","window","PUBLIC_DEPS","STANDALONE_BRICK_PACKAGES","_internalApiGetRenderId","_router6","getRenderId","_internalApiMatchStoryboard","pathname","_bootstrapData8","_internalApiGetRuntimeContext","_router7","getRuntimeContext","_internalApiGetStoryboardInBootstrapData","_bootstrapData9","find","storyboard","app","id","_internalApiGetAppInBootstrapData","_internalApiGetStoryb","_test_only_setBootstrapData","process","env","NODE_ENV"],"sources":["../../../src/internal/Runtime.ts"],"sourcesContent":["import type {\n RuntimeStoryboard,\n BootstrapSettings,\n FeatureFlags,\n BootstrapData,\n Contract,\n Storyboard,\n BrickConf,\n RouteConf,\n ResolveConf,\n BrickPackage,\n} from \"@next-core/types\";\nimport { i18n, initializeI18n } from \"@next-core/i18n\";\nimport { loadBricksImperatively } from \"@next-core/loader\";\nimport { deepFreeze, isObject } from \"@next-core/utils/general\";\nimport type { PermissionApi_validatePermissions } from \"@next-api-sdk/micro-app-sdk\";\nimport moment from \"moment\";\nimport \"moment/locale/zh-cn.js\";\nimport { createHistory } from \"../history.js\";\nimport { matchStoryboard } from \"./matchStoryboard.js\";\nimport { Router } from \"./Router.js\";\nimport { NS, locales } from \"./i18n.js\";\nimport { loadNotificationService } from \"../Notification.js\";\nimport { loadDialogService } from \"../Dialog.js\";\nimport { injectedBrickPackages } from \"./injected.js\";\nimport { type AppForCheck, hasInstalledApp } from \"./hasInstalledApp.js\";\nimport type { RuntimeContext } from \"./interfaces.js\";\nimport { listenDevtoolsEagerly } from \"./devtools.js\";\nimport { getV2RuntimeFromDll } from \"../getV2RuntimeFromDll.js\";\nimport { ThemeSettings, customizeColorTheme } from \"./customizeColorTheme.js\";\n\nlet runtime: Runtime;\n\n// Allow inject bootstrap data in a runtime other than Brick Next.\nlet bootstrapData: BootstrapData | undefined;\nlet router: Router | undefined;\n\nexport interface RuntimeOptions {\n hooks?: RuntimeHooks;\n}\n\nexport interface ImagesFactory {\n get(name: string): string;\n}\n\nexport interface PageViewInfo {\n status: \"ok\" | \"failed\" | \"redirected\" | \"not-found\";\n path?: string;\n pageTitle?: string;\n}\n\nexport interface RuntimeHooks {\n auth?: {\n getAuth(): object;\n isLoggedIn(): boolean;\n authenticate?(...args: unknown[]): unknown;\n logout?(...args: unknown[]): unknown;\n };\n fulfilStoryboard?: (storyboard: RuntimeStoryboard) => Promise<void>;\n validatePermissions?: typeof PermissionApi_validatePermissions;\n checkPermissions?: {\n checkPermissions(...actions: string[]): boolean;\n preCheckPermissions(storyboard: Storyboard): Promise<void> | undefined;\n preCheckPermissionsForBrickOrRoute(\n container: BrickConf | RouteConf,\n asyncComputeRealValue: (value: unknown) => Promise<unknown>\n ): Promise<void> | undefined;\n };\n checkInstalledApps?: {\n preCheckInstalledApps(\n storyboard: Storyboard,\n hasAppInBootstrap: (appId: string) => boolean\n ): void;\n waitForCheckingApps(appIds: string[]): Promise<void>;\n getCheckedApp(appId: string): AppForCheck | undefined;\n };\n flowApi?: {\n FLOW_API_PROVIDER: string;\n registerFlowApiProvider(): void;\n isFlowApiProvider(provider: string): boolean;\n getArgsOfFlowApi(\n provider: string,\n originalArgs: unknown[],\n method?: string,\n stream?: boolean\n ): Promise<unknown[]>;\n collectContract(contracts: Contract[] | undefined): void;\n collectWidgetContract(contracts: Contract[] | undefined): void;\n clearCollectWidgetContract(): void;\n };\n menu?: {\n getMenuById(menuId: string): unknown;\n fetchMenuById(\n menuId: string,\n runtimeContext: RuntimeContext,\n runtimeHelpers: RuntimeHooksMenuHelpers\n ): Promise<unknown>;\n };\n images?: {\n imagesFactory(\n appId: string,\n isBuildPush?: boolean,\n version?: string\n ): ImagesFactory;\n widgetImagesFactory(\n widgetId: string,\n widgetVersion?: string\n ): ImagesFactory;\n };\n messageDispatcher?: {\n subscribe(...args: unknown[]): Promise<unknown>;\n unsubscribe(...args: unknown[]): Promise<unknown>;\n onMessage(channel: string, listener: (data: unknown) => void): void;\n onClose(listener: () => void): void;\n reset(): void;\n };\n pageView?: {\n create(): (info: PageViewInfo) => void;\n };\n}\n\nexport interface RuntimeHooksMenuHelpers {\n getStoryboardByAppId(appId: string): Storyboard | undefined;\n resolveData(\n resolveConf: ResolveConf,\n runtimeContext: RuntimeContext\n ): Promise<unknown>;\n asyncComputeRealValue(\n value: unknown,\n runtimeContext: RuntimeContext,\n options?: { ignoreSymbols?: boolean; noInject?: boolean }\n ): Promise<unknown>;\n}\n\nexport let hooks: RuntimeHooks | undefined;\n\nexport function createRuntime(options?: RuntimeOptions) {\n if (runtime) {\n throw new Error(\"Cannot create multiple runtimes\");\n }\n listenDevtoolsEagerly();\n hooks = options?.hooks;\n initializeI18n(NS, locales);\n moment.locale(i18n.language);\n i18n.on(\"languageChanged\", () => {\n moment.locale(i18n.language);\n });\n createHistory();\n runtime = new Runtime();\n return runtime;\n}\n\nfunction getRuntimeV3() {\n return runtime;\n}\n\n// istanbul ignore next\nfunction getRuntimeV2Factory() {\n const v2Kit = getV2RuntimeFromDll();\n if (v2Kit) {\n return function getRuntimeV2() {\n return new Proxy(v2Kit.getRuntime(), {\n get(...args) {\n const key = args[1];\n switch (key) {\n case \"getCurrentApp\":\n case \"getRecentApps\":\n case \"hasInstalledApp\":\n case \"getDesktops\":\n case \"getLaunchpadSettings\":\n case \"getLaunchpadSiteMap\":\n case \"toggleLaunchpadEffect\":\n case \"applyPageTitle\":\n case \"getNavConfig\":\n case \"getFeatureFlags\":\n case \"getMiscSettings\":\n case \"getBrandSettings\":\n return Reflect.get(...args);\n }\n },\n }) as unknown as Runtime;\n };\n }\n}\n\n// istanbul ignore next\nexport const getRuntime = getRuntimeV2Factory() || getRuntimeV3;\n\nexport class Runtime {\n #initialized = false;\n #bootstrapped = false;\n\n readonly version: number | undefined = 3;\n\n initialize(data: BootstrapData) {\n if (this.#initialized) {\n throw new Error(\"The runtime cannot be initialized more than once\");\n }\n this.#initialized = true;\n normalizeBootstrapData(data);\n bootstrapData = data;\n const { notification, dialog } = this.#getPresetBricks();\n if (notification !== false) {\n loadNotificationService(\n notification ?? \"basic.show-notification\",\n this.loadBricks\n );\n }\n if (dialog !== false) {\n loadDialogService(dialog ?? \"basic.show-dialog\", this.loadBricks);\n }\n customizeColorTheme(data.settings?.misc?.theme as ThemeSettings);\n }\n\n async bootstrap(data?: BootstrapData) {\n if (data) {\n this.initialize(data);\n }\n if (this.#bootstrapped) {\n throw new Error(\"The runtime cannot be bootstrapped more than once\");\n }\n this.#bootstrapped = true;\n router = new Router(bootstrapData!.storyboards!);\n await router.bootstrap();\n }\n\n getRecentApps() {\n return router?.getRecentApps() ?? {};\n }\n\n getCurrentApp() {\n return router?.getRecentApps().currentApp;\n }\n\n hasInstalledApp(appId: string, matchVersion?: string): boolean {\n return hasInstalledApp(appId, matchVersion);\n }\n\n getFeatureFlags(): FeatureFlags {\n return {\n ...bootstrapData?.settings?.featureFlags,\n ...(\n router?.getRecentApps().currentApp?.config\n ?.settings as BootstrapSettings\n )?.featureFlags,\n \"migrate-to-brick-next-v3\": true,\n };\n }\n\n getMiscSettings() {\n return {\n ...bootstrapData?.settings?.misc,\n ...(\n router?.getRecentApps().currentApp?.config\n ?.settings as BootstrapSettings\n )?.misc,\n };\n }\n\n getBrandSettings(): Record<string, string> {\n return {\n base_title: \"DevOps 管理专家\",\n ...(bootstrapData?.settings?.brand as Record<string, string>),\n };\n }\n\n getLaunchpadSettings() {\n return {\n columns: 7,\n rows: 4,\n ...bootstrapData?.settings?.launchpad,\n };\n }\n\n getDesktops(): unknown[] {\n return bootstrapData?.desktops ?? [];\n }\n\n getLaunchpadSiteMap(): unknown[] {\n return bootstrapData?.siteSort ?? [];\n }\n\n toggleLaunchpadEffect(open: boolean): void {\n document.body.classList.toggle(\"launchpad-open\", open);\n }\n\n applyPageTitle(pageTitle: string): void {\n const baseTitle = this.getBrandSettings().base_title;\n document.title = pageTitle ? `${pageTitle} - ${baseTitle}` : baseTitle;\n }\n\n getNavConfig() {\n return router?.getNavConfig();\n }\n\n loadBricks(bricks: string[] | Set<string>) {\n return loadBricksImperatively(bricks, getBrickPackages());\n }\n\n #getPresetBricks() {\n return (bootstrapData?.settings?.presetBricks ?? {}) as {\n notification?: string | false;\n dialog?: string | false;\n };\n }\n}\n\nfunction normalizeBootstrapData(data: BootstrapData) {\n if (isObject(data.settings)) {\n deepFreeze(data.settings);\n }\n if (data.brickPackages) {\n deepFreeze(data.brickPackages);\n }\n}\n\nfunction processPublicDepsPackages(\n brickPackages: BrickPackage[],\n pubDeps: BrickPackage[]\n): BrickPackage[] {\n if (!pubDeps?.length) return brickPackages;\n\n const bricksMap = new Map();\n\n // bootstrapData 数据和 pubDeps 中可能同时存在同一个包名,需要过滤去重, 以 pubDeps 中的包为准\n [...pubDeps, ...brickPackages].forEach((pkg) => {\n const pkgName = pkg.filePath.split(\"/\")[1];\n // 始终将 pubDeps 放在前面\n if (!bricksMap.has(pkgName)) {\n bricksMap.set(pkgName, pkg);\n }\n });\n\n return Array.from(bricksMap.values());\n}\n\nexport function getBrickPackages() {\n return (\n processPublicDepsPackages(\n bootstrapData?.brickPackages as BrickPackage[],\n window.PUBLIC_DEPS as BrickPackage[]\n ) ??\n injectedBrickPackages ??\n (window.STANDALONE_BRICK_PACKAGES as BrickPackage[]) ??\n []\n );\n}\n\nexport function _internalApiGetRenderId(): string | undefined {\n return router?.getRenderId();\n}\n\nexport function _internalApiMatchStoryboard(\n pathname: string\n): RuntimeStoryboard | undefined {\n return matchStoryboard(bootstrapData?.storyboards ?? [], pathname);\n}\n\nexport function _internalApiGetRuntimeContext() {\n return router?.getRuntimeContext();\n}\n\nexport function _internalApiGetStoryboardInBootstrapData(appId: string) {\n return bootstrapData?.storyboards?.find(\n (storyboard) => storyboard.app.id === appId\n );\n}\n\nexport function _internalApiGetAppInBootstrapData(appId: string) {\n return _internalApiGetStoryboardInBootstrapData(appId)?.app;\n}\n\nexport let _test_only_setBootstrapData: (data: BootstrapData) => void;\n\n// istanbul ignore next\nif (process.env.NODE_ENV === \"test\") {\n _test_only_setBootstrapData = (data) => {\n bootstrapData = data as BootstrapData;\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Runtime.js","names":["i18n","initializeI18n","loadBricksImperatively","deepFreeze","isObject","moment","createHistory","matchStoryboard","Router","NS","locales","loadNotificationService","loadDialogService","injectedBrickPackages","hasInstalledApp","listenDevtoolsEagerly","getV2RuntimeFromDll","customizeColorTheme","runtime","bootstrapData","router","processedBrickPackages","hooks","createRuntime","options","Error","locale","language","on","Runtime","getRuntimeV3","getRuntimeV2Factory","v2Kit","getRuntimeV2","Proxy","getRuntime","get","key","arguments","length","undefined","Reflect","_initialized","WeakMap","_bootstrapped","_Runtime_brand","WeakSet","constructor","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_defineProperty","initialize","data","_data$settings","_classPrivateFieldGet","_classPrivateFieldSet","normalizeBootstrapData","notification","dialog","_assertClassBrand","_getPresetBricks","call","loadBricks","settings","misc","theme","bootstrap","storyboards","getRecentApps","_router","getCurrentApp","_router2","currentApp","appId","matchVersion","getFeatureFlags","_bootstrapData","_router3","featureFlags","config","getMiscSettings","_bootstrapData2","_router4","getBrandSettings","_bootstrapData3","base_title","brand","getLaunchpadSettings","_bootstrapData4","columns","rows","launchpad","getDesktops","_bootstrapData5","desktops","getLaunchpadSiteMap","_bootstrapData6","siteSort","toggleLaunchpadEffect","open","document","body","classList","toggle","applyPageTitle","pageTitle","baseTitle","title","getNavConfig","_router5","bricks","getBrickPackages","_bootstrapData10","presetBricks","brickPackages","processPublicDepsPackages","pubDeps","bricksMap","Map","forEach","pkg","pkgName","filePath","split","has","set","Array","from","values","_bootstrapData7","window","STANDALONE_BRICK_PACKAGES","PUBLIC_DEPS","_internalApiGetRenderId","_router6","getRenderId","_internalApiMatchStoryboard","pathname","_bootstrapData8","_internalApiGetRuntimeContext","_router7","getRuntimeContext","_internalApiGetStoryboardInBootstrapData","_bootstrapData9","find","storyboard","app","id","_internalApiGetAppInBootstrapData","_internalApiGetStoryb","_test_only_setBootstrapData","process","env","NODE_ENV"],"sources":["../../../src/internal/Runtime.ts"],"sourcesContent":["import type {\n RuntimeStoryboard,\n BootstrapSettings,\n FeatureFlags,\n BootstrapData,\n Contract,\n Storyboard,\n BrickConf,\n RouteConf,\n ResolveConf,\n BrickPackage,\n} from \"@next-core/types\";\nimport { i18n, initializeI18n } from \"@next-core/i18n\";\nimport { loadBricksImperatively } from \"@next-core/loader\";\nimport { deepFreeze, isObject } from \"@next-core/utils/general\";\nimport type { PermissionApi_validatePermissions } from \"@next-api-sdk/micro-app-sdk\";\nimport moment from \"moment\";\nimport \"moment/locale/zh-cn.js\";\nimport { createHistory } from \"../history.js\";\nimport { matchStoryboard } from \"./matchStoryboard.js\";\nimport { Router } from \"./Router.js\";\nimport { NS, locales } from \"./i18n.js\";\nimport { loadNotificationService } from \"../Notification.js\";\nimport { loadDialogService } from \"../Dialog.js\";\nimport { injectedBrickPackages } from \"./injected.js\";\nimport { type AppForCheck, hasInstalledApp } from \"./hasInstalledApp.js\";\nimport type { RuntimeContext } from \"./interfaces.js\";\nimport { listenDevtoolsEagerly } from \"./devtools.js\";\nimport { getV2RuntimeFromDll } from \"../getV2RuntimeFromDll.js\";\nimport { ThemeSettings, customizeColorTheme } from \"./customizeColorTheme.js\";\n\nlet runtime: Runtime;\n\n// Allow inject bootstrap data in a runtime other than Brick Next.\nlet bootstrapData: BootstrapData | undefined;\nlet router: Router | undefined;\nlet processedBrickPackages: BrickPackage[] | undefined;\n\nexport interface RuntimeOptions {\n hooks?: RuntimeHooks;\n}\n\nexport interface ImagesFactory {\n get(name: string): string;\n}\n\nexport interface PageViewInfo {\n status: \"ok\" | \"failed\" | \"redirected\" | \"not-found\";\n path?: string;\n pageTitle?: string;\n}\n\nexport interface RuntimeHooks {\n auth?: {\n getAuth(): object;\n isLoggedIn(): boolean;\n authenticate?(...args: unknown[]): unknown;\n logout?(...args: unknown[]): unknown;\n };\n fulfilStoryboard?: (storyboard: RuntimeStoryboard) => Promise<void>;\n validatePermissions?: typeof PermissionApi_validatePermissions;\n checkPermissions?: {\n checkPermissions(...actions: string[]): boolean;\n preCheckPermissions(storyboard: Storyboard): Promise<void> | undefined;\n preCheckPermissionsForBrickOrRoute(\n container: BrickConf | RouteConf,\n asyncComputeRealValue: (value: unknown) => Promise<unknown>\n ): Promise<void> | undefined;\n };\n checkInstalledApps?: {\n preCheckInstalledApps(\n storyboard: Storyboard,\n hasAppInBootstrap: (appId: string) => boolean\n ): void;\n waitForCheckingApps(appIds: string[]): Promise<void>;\n getCheckedApp(appId: string): AppForCheck | undefined;\n };\n flowApi?: {\n FLOW_API_PROVIDER: string;\n registerFlowApiProvider(): void;\n isFlowApiProvider(provider: string): boolean;\n getArgsOfFlowApi(\n provider: string,\n originalArgs: unknown[],\n method?: string,\n stream?: boolean\n ): Promise<unknown[]>;\n collectContract(contracts: Contract[] | undefined): void;\n collectWidgetContract(contracts: Contract[] | undefined): void;\n clearCollectWidgetContract(): void;\n };\n menu?: {\n getMenuById(menuId: string): unknown;\n fetchMenuById(\n menuId: string,\n runtimeContext: RuntimeContext,\n runtimeHelpers: RuntimeHooksMenuHelpers\n ): Promise<unknown>;\n };\n images?: {\n imagesFactory(\n appId: string,\n isBuildPush?: boolean,\n version?: string\n ): ImagesFactory;\n widgetImagesFactory(\n widgetId: string,\n widgetVersion?: string\n ): ImagesFactory;\n };\n messageDispatcher?: {\n subscribe(...args: unknown[]): Promise<unknown>;\n unsubscribe(...args: unknown[]): Promise<unknown>;\n onMessage(channel: string, listener: (data: unknown) => void): void;\n onClose(listener: () => void): void;\n reset(): void;\n };\n pageView?: {\n create(): (info: PageViewInfo) => void;\n };\n}\n\nexport interface RuntimeHooksMenuHelpers {\n getStoryboardByAppId(appId: string): Storyboard | undefined;\n resolveData(\n resolveConf: ResolveConf,\n runtimeContext: RuntimeContext\n ): Promise<unknown>;\n asyncComputeRealValue(\n value: unknown,\n runtimeContext: RuntimeContext,\n options?: { ignoreSymbols?: boolean; noInject?: boolean }\n ): Promise<unknown>;\n}\n\nexport let hooks: RuntimeHooks | undefined;\n\nexport function createRuntime(options?: RuntimeOptions) {\n if (runtime) {\n throw new Error(\"Cannot create multiple runtimes\");\n }\n listenDevtoolsEagerly();\n hooks = options?.hooks;\n initializeI18n(NS, locales);\n moment.locale(i18n.language);\n i18n.on(\"languageChanged\", () => {\n moment.locale(i18n.language);\n });\n createHistory();\n runtime = new Runtime();\n return runtime;\n}\n\nfunction getRuntimeV3() {\n return runtime;\n}\n\n// istanbul ignore next\nfunction getRuntimeV2Factory() {\n const v2Kit = getV2RuntimeFromDll();\n if (v2Kit) {\n return function getRuntimeV2() {\n return new Proxy(v2Kit.getRuntime(), {\n get(...args) {\n const key = args[1];\n switch (key) {\n case \"getCurrentApp\":\n case \"getRecentApps\":\n case \"hasInstalledApp\":\n case \"getDesktops\":\n case \"getLaunchpadSettings\":\n case \"getLaunchpadSiteMap\":\n case \"toggleLaunchpadEffect\":\n case \"applyPageTitle\":\n case \"getNavConfig\":\n case \"getFeatureFlags\":\n case \"getMiscSettings\":\n case \"getBrandSettings\":\n return Reflect.get(...args);\n }\n },\n }) as unknown as Runtime;\n };\n }\n}\n\n// istanbul ignore next\nexport const getRuntime = getRuntimeV2Factory() || getRuntimeV3;\n\nexport class Runtime {\n #initialized = false;\n #bootstrapped = false;\n\n readonly version: number | undefined = 3;\n\n initialize(data: BootstrapData) {\n if (this.#initialized) {\n throw new Error(\"The runtime cannot be initialized more than once\");\n }\n this.#initialized = true;\n normalizeBootstrapData(data);\n bootstrapData = data;\n const { notification, dialog } = this.#getPresetBricks();\n if (notification !== false) {\n loadNotificationService(\n notification ?? \"basic.show-notification\",\n this.loadBricks\n );\n }\n if (dialog !== false) {\n loadDialogService(dialog ?? \"basic.show-dialog\", this.loadBricks);\n }\n customizeColorTheme(data.settings?.misc?.theme as ThemeSettings);\n }\n\n async bootstrap(data?: BootstrapData) {\n if (data) {\n this.initialize(data);\n }\n if (this.#bootstrapped) {\n throw new Error(\"The runtime cannot be bootstrapped more than once\");\n }\n this.#bootstrapped = true;\n router = new Router(bootstrapData!.storyboards!);\n await router.bootstrap();\n }\n\n getRecentApps() {\n return router?.getRecentApps() ?? {};\n }\n\n getCurrentApp() {\n return router?.getRecentApps().currentApp;\n }\n\n hasInstalledApp(appId: string, matchVersion?: string): boolean {\n return hasInstalledApp(appId, matchVersion);\n }\n\n getFeatureFlags(): FeatureFlags {\n return {\n ...bootstrapData?.settings?.featureFlags,\n ...(\n router?.getRecentApps().currentApp?.config\n ?.settings as BootstrapSettings\n )?.featureFlags,\n \"migrate-to-brick-next-v3\": true,\n };\n }\n\n getMiscSettings() {\n return {\n ...bootstrapData?.settings?.misc,\n ...(\n router?.getRecentApps().currentApp?.config\n ?.settings as BootstrapSettings\n )?.misc,\n };\n }\n\n getBrandSettings(): Record<string, string> {\n return {\n base_title: \"DevOps 管理专家\",\n ...(bootstrapData?.settings?.brand as Record<string, string>),\n };\n }\n\n getLaunchpadSettings() {\n return {\n columns: 7,\n rows: 4,\n ...bootstrapData?.settings?.launchpad,\n };\n }\n\n getDesktops(): unknown[] {\n return bootstrapData?.desktops ?? [];\n }\n\n getLaunchpadSiteMap(): unknown[] {\n return bootstrapData?.siteSort ?? [];\n }\n\n toggleLaunchpadEffect(open: boolean): void {\n document.body.classList.toggle(\"launchpad-open\", open);\n }\n\n applyPageTitle(pageTitle: string): void {\n const baseTitle = this.getBrandSettings().base_title;\n document.title = pageTitle ? `${pageTitle} - ${baseTitle}` : baseTitle;\n }\n\n getNavConfig() {\n return router?.getNavConfig();\n }\n\n loadBricks(bricks: string[] | Set<string>) {\n return loadBricksImperatively(bricks, getBrickPackages());\n }\n\n #getPresetBricks() {\n return (bootstrapData?.settings?.presetBricks ?? {}) as {\n notification?: string | false;\n dialog?: string | false;\n };\n }\n}\n\nfunction normalizeBootstrapData(data: BootstrapData) {\n if (isObject(data.settings)) {\n deepFreeze(data.settings);\n }\n if (data.brickPackages) {\n deepFreeze(data.brickPackages);\n }\n}\n\nfunction processPublicDepsPackages(\n brickPackages: BrickPackage[],\n pubDeps: BrickPackage[] | undefined\n): BrickPackage[] {\n if (!pubDeps?.length) return brickPackages;\n\n const bricksMap = new Map();\n\n // bootstrapData 数据和 pubDeps 中可能同时存在同一个包名,需要过滤去重, 以 pubDeps 中的包为准\n [...pubDeps, ...brickPackages].forEach((pkg) => {\n const pkgName = pkg.filePath.split(\"/\")[1];\n // 始终将 pubDeps 放在前面\n if (!bricksMap.has(pkgName)) {\n bricksMap.set(pkgName, pkg);\n }\n });\n\n return Array.from(bricksMap.values());\n}\n\nexport function getBrickPackages(): BrickPackage[] {\n return (\n // Not necessary to process brick packages multiple times.\n processedBrickPackages ??\n (processedBrickPackages = processPublicDepsPackages(\n bootstrapData?.brickPackages ??\n injectedBrickPackages ??\n (window.STANDALONE_BRICK_PACKAGES as BrickPackage[] | undefined) ??\n [],\n window.PUBLIC_DEPS as BrickPackage[] | undefined\n ))\n );\n}\n\nexport function _internalApiGetRenderId(): string | undefined {\n return router?.getRenderId();\n}\n\nexport function _internalApiMatchStoryboard(\n pathname: string\n): RuntimeStoryboard | undefined {\n return matchStoryboard(bootstrapData?.storyboards ?? [], pathname);\n}\n\nexport function _internalApiGetRuntimeContext() {\n return router?.getRuntimeContext();\n}\n\nexport function _internalApiGetStoryboardInBootstrapData(appId: string) {\n return bootstrapData?.storyboards?.find(\n (storyboard) => storyboard.app.id === appId\n );\n}\n\nexport function _internalApiGetAppInBootstrapData(appId: string) {\n return _internalApiGetStoryboardInBootstrapData(appId)?.app;\n}\n\nexport let _test_only_setBootstrapData: (data: BootstrapData) => void;\n\n// istanbul ignore next\nif (process.env.NODE_ENV === \"test\") {\n _test_only_setBootstrapData = (data) => {\n bootstrapData = data as BootstrapData;\n };\n}\n"],"mappings":";;;;;;AAYA,SAASA,IAAI,EAAEC,cAAc,QAAQ,iBAAiB;AACtD,SAASC,sBAAsB,QAAQ,mBAAmB;AAC1D,SAASC,UAAU,EAAEC,QAAQ,QAAQ,0BAA0B;AAE/D,OAAOC,MAAM,MAAM,QAAQ;AAC3B,OAAO,wBAAwB;AAC/B,SAASC,aAAa,QAAQ,eAAe;AAC7C,SAASC,eAAe,QAAQ,sBAAsB;AACtD,SAASC,MAAM,QAAQ,aAAa;AACpC,SAASC,EAAE,EAAEC,OAAO,QAAQ,WAAW;AACvC,SAASC,uBAAuB,QAAQ,oBAAoB;AAC5D,SAASC,iBAAiB,QAAQ,cAAc;AAChD,SAASC,qBAAqB,QAAQ,eAAe;AACrD,SAA2BC,eAAe,QAAQ,sBAAsB;AAExE,SAASC,qBAAqB,QAAQ,eAAe;AACrD,SAASC,mBAAmB,QAAQ,2BAA2B;AAC/D,SAAwBC,mBAAmB,QAAQ,0BAA0B;AAE7E,IAAIC,OAAgB;;AAEpB;AACA,IAAIC,aAAwC;AAC5C,IAAIC,MAA0B;AAC9B,IAAIC,sBAAkD;AAmGtD,OAAO,IAAIC,KAA+B;AAE1C,OAAO,SAASC,aAAaA,CAACC,OAAwB,EAAE;EACtD,IAAIN,OAAO,EAAE;IACX,MAAM,IAAIO,KAAK,CAAC,iCAAiC,CAAC;EACpD;EACAV,qBAAqB,CAAC,CAAC;EACvBO,KAAK,GAAGE,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEF,KAAK;EACtBrB,cAAc,CAACQ,EAAE,EAAEC,OAAO,CAAC;EAC3BL,MAAM,CAACqB,MAAM,CAAC1B,IAAI,CAAC2B,QAAQ,CAAC;EAC5B3B,IAAI,CAAC4B,EAAE,CAAC,iBAAiB,EAAE,MAAM;IAC/BvB,MAAM,CAACqB,MAAM,CAAC1B,IAAI,CAAC2B,QAAQ,CAAC;EAC9B,CAAC,CAAC;EACFrB,aAAa,CAAC,CAAC;EACfY,OAAO,GAAG,IAAIW,OAAO,CAAC,CAAC;EACvB,OAAOX,OAAO;AAChB;AAEA,SAASY,YAAYA,CAAA,EAAG;EACtB,OAAOZ,OAAO;AAChB;;AAEA;AACA,SAASa,mBAAmBA,CAAA,EAAG;EAC7B,MAAMC,KAAK,GAAGhB,mBAAmB,CAAC,CAAC;EACnC,IAAIgB,KAAK,EAAE;IACT,OAAO,SAASC,YAAYA,CAAA,EAAG;MAC7B,OAAO,IAAIC,KAAK,CAACF,KAAK,CAACG,UAAU,CAAC,CAAC,EAAE;QACnCC,GAAGA,CAAA,EAAU;UACX,MAAMC,GAAG,GAAAC,SAAA,CAAAC,MAAA,QAAAC,SAAA,GAAAF,SAAA,GAAU;UACnB,QAAQD,GAAG;YACT,KAAK,eAAe;YACpB,KAAK,eAAe;YACpB,KAAK,iBAAiB;YACtB,KAAK,aAAa;YAClB,KAAK,sBAAsB;YAC3B,KAAK,qBAAqB;YAC1B,KAAK,uBAAuB;YAC5B,KAAK,gBAAgB;YACrB,KAAK,cAAc;YACnB,KAAK,iBAAiB;YACtB,KAAK,iBAAiB;YACtB,KAAK,kBAAkB;cACrB,OAAOI,OAAO,CAACL,GAAG,CAAC,GAAAE,SAAO,CAAC;UAC/B;QACF;MACF,CAAC,CAAC;IACJ,CAAC;EACH;AACF;;AAEA;AACA,OAAO,MAAMH,UAAU,GAAGJ,mBAAmB,CAAC,CAAC,IAAID,YAAY;AAAC,IAAAY,YAAA,oBAAAC,OAAA;AAAA,IAAAC,aAAA,oBAAAD,OAAA;AAAA,IAAAE,cAAA,oBAAAC,OAAA;AAEhE,OAAO,MAAMjB,OAAO,CAAC;EAAAkB,YAAA;IAAAC,2BAAA,OAAAH,cAAA;IACnBI,0BAAA,OAAAP,YAAY,EAAG,KAAK;IACpBO,0BAAA,OAAAL,aAAa,EAAG,KAAK;IAACM,eAAA,kBAEiB,CAAC;EAAA;EAExCC,UAAUA,CAACC,IAAmB,EAAE;IAAA,IAAAC,cAAA;IAC9B,IAAIC,qBAAA,CAAKZ,YAAY,EAAjB,IAAgB,CAAC,EAAE;MACrB,MAAM,IAAIjB,KAAK,CAAC,kDAAkD,CAAC;IACrE;IACA8B,qBAAA,CAAKb,YAAY,EAAjB,IAAI,EAAgB,IAAJ,CAAC;IACjBc,sBAAsB,CAACJ,IAAI,CAAC;IAC5BjC,aAAa,GAAGiC,IAAI;IACpB,MAAM;MAAEK,YAAY;MAAEC;IAAO,CAAC,GAAGC,iBAAA,CAAAd,cAAA,MAAI,EAACe,gBAAe,CAAC,CAAAC,IAAA,CAArB,IAAI,CAAmB;IACxD,IAAIJ,YAAY,KAAK,KAAK,EAAE;MAC1B9C,uBAAuB,CACrB8C,YAAY,IAAI,yBAAyB,EACzC,IAAI,CAACK,UACP,CAAC;IACH;IACA,IAAIJ,MAAM,KAAK,KAAK,EAAE;MACpB9C,iBAAiB,CAAC8C,MAAM,IAAI,mBAAmB,EAAE,IAAI,CAACI,UAAU,CAAC;IACnE;IACA7C,mBAAmB,EAAAoC,cAAA,GAACD,IAAI,CAACW,QAAQ,cAAAV,cAAA,gBAAAA,cAAA,GAAbA,cAAA,CAAeW,IAAI,cAAAX,cAAA,uBAAnBA,cAAA,CAAqBY,KAAsB,CAAC;EAClE;EAEA,MAAMC,SAASA,CAACd,IAAoB,EAAE;IACpC,IAAIA,IAAI,EAAE;MACR,IAAI,CAACD,UAAU,CAACC,IAAI,CAAC;IACvB;IACA,IAAIE,qBAAA,CAAKV,aAAa,EAAlB,IAAiB,CAAC,EAAE;MACtB,MAAM,IAAInB,KAAK,CAAC,mDAAmD,CAAC;IACtE;IACA8B,qBAAA,CAAKX,aAAa,EAAlB,IAAI,EAAiB,IAAJ,CAAC;IAClBxB,MAAM,GAAG,IAAIZ,MAAM,CAACW,aAAa,CAAEgD,WAAY,CAAC;IAChD,MAAM/C,MAAM,CAAC8C,SAAS,CAAC,CAAC;EAC1B;EAEAE,aAAaA,CAAA,EAAG;IAAA,IAAAC,OAAA;IACd,OAAO,EAAAA,OAAA,GAAAjD,MAAM,cAAAiD,OAAA,uBAANA,OAAA,CAAQD,aAAa,CAAC,CAAC,KAAI,CAAC,CAAC;EACtC;EAEAE,aAAaA,CAAA,EAAG;IAAA,IAAAC,QAAA;IACd,QAAAA,QAAA,GAAOnD,MAAM,cAAAmD,QAAA,uBAANA,QAAA,CAAQH,aAAa,CAAC,CAAC,CAACI,UAAU;EAC3C;EAEA1D,eAAeA,CAAC2D,KAAa,EAAEC,YAAqB,EAAW;IAC7D,OAAO5D,eAAe,CAAC2D,KAAK,EAAEC,YAAY,CAAC;EAC7C;EAEAC,eAAeA,CAAA,EAAiB;IAAA,IAAAC,cAAA,EAAAC,QAAA;IAC9B,OAAO;MACL,KAAAD,cAAA,GAAGzD,aAAa,cAAAyD,cAAA,gBAAAA,cAAA,GAAbA,cAAA,CAAeb,QAAQ,cAAAa,cAAA,uBAAvBA,cAAA,CAAyBE,YAAY;MACxC,KAAAD,QAAA,GACEzD,MAAM,cAAAyD,QAAA,gBAAAA,QAAA,GAANA,QAAA,CAAQT,aAAa,CAAC,CAAC,CAACI,UAAU,cAAAK,QAAA,gBAAAA,QAAA,GAAlCA,QAAA,CAAoCE,MAAM,cAAAF,QAAA,gBAAAA,QAAA,GAA1CA,QAAA,CACId,QAAQ,cAAAc,QAAA,uBAFXA,QAAA,CAGAC,YAAY;MACf,0BAA0B,EAAE;IAC9B,CAAC;EACH;EAEAE,eAAeA,CAAA,EAAG;IAAA,IAAAC,eAAA,EAAAC,QAAA;IAChB,OAAO;MACL,KAAAD,eAAA,GAAG9D,aAAa,cAAA8D,eAAA,gBAAAA,eAAA,GAAbA,eAAA,CAAelB,QAAQ,cAAAkB,eAAA,uBAAvBA,eAAA,CAAyBjB,IAAI;MAChC,KAAAkB,QAAA,GACE9D,MAAM,cAAA8D,QAAA,gBAAAA,QAAA,GAANA,QAAA,CAAQd,aAAa,CAAC,CAAC,CAACI,UAAU,cAAAU,QAAA,gBAAAA,QAAA,GAAlCA,QAAA,CAAoCH,MAAM,cAAAG,QAAA,gBAAAA,QAAA,GAA1CA,QAAA,CACInB,QAAQ,cAAAmB,QAAA,uBAFXA,QAAA,CAGAlB,IAAI;IACT,CAAC;EACH;EAEAmB,gBAAgBA,CAAA,EAA2B;IAAA,IAAAC,eAAA;IACzC,OAAO;MACLC,UAAU,EAAE,aAAa;MACzB,KAAAD,eAAA,GAAIjE,aAAa,cAAAiE,eAAA,gBAAAA,eAAA,GAAbA,eAAA,CAAerB,QAAQ,cAAAqB,eAAA,uBAAvBA,eAAA,CAAyBE,KAAK;IACpC,CAAC;EACH;EAEAC,oBAAoBA,CAAA,EAAG;IAAA,IAAAC,eAAA;IACrB,OAAO;MACLC,OAAO,EAAE,CAAC;MACVC,IAAI,EAAE,CAAC;MACP,KAAAF,eAAA,GAAGrE,aAAa,cAAAqE,eAAA,gBAAAA,eAAA,GAAbA,eAAA,CAAezB,QAAQ,cAAAyB,eAAA,uBAAvBA,eAAA,CAAyBG,SAAS;IACvC,CAAC;EACH;EAEAC,WAAWA,CAAA,EAAc;IAAA,IAAAC,eAAA;IACvB,OAAO,EAAAA,eAAA,GAAA1E,aAAa,cAAA0E,eAAA,uBAAbA,eAAA,CAAeC,QAAQ,KAAI,EAAE;EACtC;EAEAC,mBAAmBA,CAAA,EAAc;IAAA,IAAAC,eAAA;IAC/B,OAAO,EAAAA,eAAA,GAAA7E,aAAa,cAAA6E,eAAA,uBAAbA,eAAA,CAAeC,QAAQ,KAAI,EAAE;EACtC;EAEAC,qBAAqBA,CAACC,IAAa,EAAQ;IACzCC,QAAQ,CAACC,IAAI,CAACC,SAAS,CAACC,MAAM,CAAC,gBAAgB,EAAEJ,IAAI,CAAC;EACxD;EAEAK,cAAcA,CAACC,SAAiB,EAAQ;IACtC,MAAMC,SAAS,GAAG,IAAI,CAACvB,gBAAgB,CAAC,CAAC,CAACE,UAAU;IACpDe,QAAQ,CAACO,KAAK,GAAGF,SAAS,GAAG,GAAGA,SAAS,MAAMC,SAAS,EAAE,GAAGA,SAAS;EACxE;EAEAE,YAAYA,CAAA,EAAG;IAAA,IAAAC,QAAA;IACb,QAAAA,QAAA,GAAOzF,MAAM,cAAAyF,QAAA,uBAANA,QAAA,CAAQD,YAAY,CAAC,CAAC;EAC/B;EAEA9C,UAAUA,CAACgD,MAA8B,EAAE;IACzC,OAAO5G,sBAAsB,CAAC4G,MAAM,EAAEC,gBAAgB,CAAC,CAAC,CAAC;EAC3D;AAQF;AAAC,SAAAnD,iBAAA,EANoB;EAAA,IAAAoD,gBAAA;EACjB,OAAQ,EAAAA,gBAAA,GAAA7F,aAAa,cAAA6F,gBAAA,gBAAAA,gBAAA,GAAbA,gBAAA,CAAejD,QAAQ,cAAAiD,gBAAA,uBAAvBA,gBAAA,CAAyBC,YAAY,KAAI,CAAC,CAAC;AAIrD;AAGF,SAASzD,sBAAsBA,CAACJ,IAAmB,EAAE;EACnD,IAAIhD,QAAQ,CAACgD,IAAI,CAACW,QAAQ,CAAC,EAAE;IAC3B5D,UAAU,CAACiD,IAAI,CAACW,QAAQ,CAAC;EAC3B;EACA,IAAIX,IAAI,CAAC8D,aAAa,EAAE;IACtB/G,UAAU,CAACiD,IAAI,CAAC8D,aAAa,CAAC;EAChC;AACF;AAEA,SAASC,yBAAyBA,CAChCD,aAA6B,EAC7BE,OAAmC,EACnB;EAChB,IAAI,EAACA,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAE7E,MAAM,GAAE,OAAO2E,aAAa;EAE1C,MAAMG,SAAS,GAAG,IAAIC,GAAG,CAAC,CAAC;;EAE3B;EACA,CAAC,GAAGF,OAAO,EAAE,GAAGF,aAAa,CAAC,CAACK,OAAO,CAAEC,GAAG,IAAK;IAC9C,MAAMC,OAAO,GAAGD,GAAG,CAACE,QAAQ,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC1C;IACA,IAAI,CAACN,SAAS,CAACO,GAAG,CAACH,OAAO,CAAC,EAAE;MAC3BJ,SAAS,CAACQ,GAAG,CAACJ,OAAO,EAAED,GAAG,CAAC;IAC7B;EACF,CAAC,CAAC;EAEF,OAAOM,KAAK,CAACC,IAAI,CAACV,SAAS,CAACW,MAAM,CAAC,CAAC,CAAC;AACvC;AAEA,OAAO,SAASjB,gBAAgBA,CAAA,EAAmB;EAAA,IAAAkB,eAAA;EACjD;IACE;IACA5G,sBAAsB,KACrBA,sBAAsB,GAAG8F,yBAAyB,CACjD,EAAAc,eAAA,GAAA9G,aAAa,cAAA8G,eAAA,uBAAbA,eAAA,CAAef,aAAa,KAC1BrG,qBAAqB,IACpBqH,MAAM,CAACC,yBAAwD,IAChE,EAAE,EACJD,MAAM,CAACE,WACT,CAAC;EAAC;AAEN;AAEA,OAAO,SAASC,uBAAuBA,CAAA,EAAuB;EAAA,IAAAC,QAAA;EAC5D,QAAAA,QAAA,GAAOlH,MAAM,cAAAkH,QAAA,uBAANA,QAAA,CAAQC,WAAW,CAAC,CAAC;AAC9B;AAEA,OAAO,SAASC,2BAA2BA,CACzCC,QAAgB,EACe;EAAA,IAAAC,eAAA;EAC/B,OAAOnI,eAAe,CAAC,EAAAmI,eAAA,GAAAvH,aAAa,cAAAuH,eAAA,uBAAbA,eAAA,CAAevE,WAAW,KAAI,EAAE,EAAEsE,QAAQ,CAAC;AACpE;AAEA,OAAO,SAASE,6BAA6BA,CAAA,EAAG;EAAA,IAAAC,QAAA;EAC9C,QAAAA,QAAA,GAAOxH,MAAM,cAAAwH,QAAA,uBAANA,QAAA,CAAQC,iBAAiB,CAAC,CAAC;AACpC;AAEA,OAAO,SAASC,wCAAwCA,CAACrE,KAAa,EAAE;EAAA,IAAAsE,eAAA;EACtE,QAAAA,eAAA,GAAO5H,aAAa,cAAA4H,eAAA,gBAAAA,eAAA,GAAbA,eAAA,CAAe5E,WAAW,cAAA4E,eAAA,uBAA1BA,eAAA,CAA4BC,IAAI,CACpCC,UAAU,IAAKA,UAAU,CAACC,GAAG,CAACC,EAAE,KAAK1E,KACxC,CAAC;AACH;AAEA,OAAO,SAAS2E,iCAAiCA,CAAC3E,KAAa,EAAE;EAAA,IAAA4E,qBAAA;EAC/D,QAAAA,qBAAA,GAAOP,wCAAwC,CAACrE,KAAK,CAAC,cAAA4E,qBAAA,uBAA/CA,qBAAA,CAAiDH,GAAG;AAC7D;AAEA,OAAO,IAAII,2BAA0D;;AAErE;AACA,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,MAAM,EAAE;EACnCH,2BAA2B,GAAIlG,IAAI,IAAK;IACtCjC,aAAa,GAAGiC,IAAqB;EACvC,CAAC;AACH","ignoreList":[]}
@@ -11,7 +11,7 @@ import { isStrictMode, warnAboutStrictMode } from "../isStrictMode.js";
11
11
  import { customTemplates } from "../CustomTemplates.js";
12
12
  import { registerAppI18n } from "./registerAppI18n.js";
13
13
  import { getTplStateStore } from "./CustomTemplates/utils.js";
14
- import { loadBricksImperatively } from "@next-core/loader";
14
+ import { loadBricksImperatively, loadEditorsImperatively } from "@next-core/loader";
15
15
  export const symbolForRootRuntimeContext = Symbol.for("root.runtimeContext");
16
16
  export async function renderUseBrick(useBrick, data, errorBoundary) {
17
17
  var _output$node, _output$node2;
@@ -230,6 +230,9 @@ export function getBrickPackagesById(id) {
230
230
  export function loadBricks(bricks) {
231
231
  return loadBricksImperatively(bricks, getBrickPackages());
232
232
  }
233
+ export function loadEditors(editors) {
234
+ return loadEditorsImperatively(editors, getBrickPackages());
235
+ }
233
236
  export function getRenderId() {
234
237
  return _internalApiGetRenderId();
235
238
  }
@@ -1 +1 @@
1
- {"version":3,"file":"secret_internals.js","names":["pick","_internalApiGetRenderId","_internalApiGetRuntimeContext","_internalApiGetStoryboardInBootstrapData","getBrickPackages","createScopedRuntimeContext","postAsyncRender","renderBrick","RendererContext","resolveData","asyncComputeRealValue","mountTree","unmountTree","RenderTag","computeRealValue","isStrictMode","warnAboutStrictMode","customTemplates","registerAppI18n","getTplStateStore","loadBricksImperatively","symbolForRootRuntimeContext","Symbol","for","renderUseBrick","useBrick","data","errorBoundary","_output$node","_output$node2","scopedRuntimeContext","tplStateStoreScope","formStateStoreScope","pendingPermissionsPreCheck","tplStateStoreMap","Map","formStateStoreMap","rendererContext","renderRoot","tag","ROOT","createPortal","transform","strict","output","properties","scopedStores","node","PLACEHOLDER","Error","portal","child","tagName","type","mountUseBrick","_ref","element","portalRoot","document","querySelector","createElement","appendChild","dispatchOnMount","initializeScrollIntoView","initializeMediaChange","initializeMessageDispatcher","store","mountAsyncData","unmountUseBrick","_ref2","mountResult","remove","dispatchOnUnmount","dispose","legacyDoTransform","to","options","noInject","updateStoryboard","appId","storyboardPatch","storyboard","Object","assign","meta","$$fulfilling","$$fulfilled","$$registerCustomTemplateProcessed","updateStoryboardByRoute","newRoute","match","getKey","route","path","exact","replaceRoute","routes","key","map","routeKey","unshift","updateStoryboardByTemplate","newTemplate","settings","tplName","name","define","bricks","proxy","state","updateTemplatePreviewSettings","templateId","_updatePreviewSettings","brick","getSnippetPreviewPath","snippetId","updateStoryboardBySnippet","snippetData","_snippetData$bricks","length","context","updateSnippetPreviewSettings","previewRouteIndex","findIndex","newPreviewRoute","menu","splice","getContextValue","_ref3","tplStateStoreId","runtimeContext","tplStateStore","getValue","ctxStore","getAllContextValues","_ref4","getAllValues","getBrickPackagesById","id","find","pkg","filePath","startsWith","loadBricks","getRenderId","getAddedContracts","_ref5","updateStoryboardType","collectUsedContracts","updatedStoryboard","_storyboard$routes","snippetPreviewPath","currentRoute","addedContracts","contractApis","forEach","api","_storyboard$meta","_","namespaceId","contracts","some","contract","push","debugDataValue","debugData","_ref6","resolve","cache","value","setRealTimeDataInspectRoot","addRealTimeDataInspectHook"],"sources":["../../../src/internal/secret_internals.ts"],"sourcesContent":["import type {\n BrickConf,\n CustomTemplate,\n RouteConf,\n Storyboard,\n UseSingleBrickConf,\n RuntimeSnippet,\n ContextConf,\n} from \"@next-core/types\";\nimport { pick } from \"lodash\";\nimport {\n _internalApiGetRenderId,\n _internalApiGetRuntimeContext,\n _internalApiGetStoryboardInBootstrapData,\n getBrickPackages,\n} from \"./Runtime.js\";\nimport {\n createScopedRuntimeContext,\n postAsyncRender,\n renderBrick,\n} from \"./Renderer.js\";\nimport { RendererContext } from \"./RendererContext.js\";\nimport type { DataStore } from \"./data/DataStore.js\";\nimport { resolveData } from \"./data/resolveData.js\";\nimport { asyncComputeRealValue } from \"./compute/computeRealValue.js\";\nimport type {\n DataValueOption,\n PreviewOption,\n PreviewStoryboardPatch,\n RenderRoot,\n RuntimeContext,\n DebugDataValue,\n} from \"./interfaces.js\";\nimport { mountTree, unmountTree } from \"./mount.js\";\nimport { RenderTag } from \"./enums.js\";\nimport { computeRealValue } from \"./compute/computeRealValue.js\";\nimport { isStrictMode, warnAboutStrictMode } from \"../isStrictMode.js\";\nimport { customTemplates } from \"../CustomTemplates.js\";\nimport { registerAppI18n } from \"./registerAppI18n.js\";\nimport { getTplStateStore } from \"./CustomTemplates/utils.js\";\nimport { loadBricksImperatively } from \"@next-core/loader\";\n\nexport type { DataValueOption, RuntimeContext };\n\nexport const symbolForRootRuntimeContext = Symbol.for(\"root.runtimeContext\");\n\nexport interface RuntimeUseBrickConfWithRootSymbols extends UseSingleBrickConf {\n [symbolForRootRuntimeContext]?: RuntimeContext;\n}\n\nexport interface RenderUseBrickResult {\n tagName: string | null;\n renderRoot: RenderRoot;\n rendererContext: RendererContext;\n scopedStores: DataStore<\"STATE\" | \"FORM_STATE\">[];\n}\n\nexport async function renderUseBrick(\n useBrick: RuntimeUseBrickConfWithRootSymbols,\n data: unknown,\n errorBoundary?: boolean\n): Promise<RenderUseBrickResult> {\n const [scopedRuntimeContext, tplStateStoreScope, formStateStoreScope] =\n createScopedRuntimeContext({\n ...(useBrick[symbolForRootRuntimeContext] ??\n _internalApiGetRuntimeContext()!),\n data,\n pendingPermissionsPreCheck: [],\n });\n\n scopedRuntimeContext.tplStateStoreMap ??= new Map();\n scopedRuntimeContext.formStateStoreMap ??= new Map();\n\n const rendererContext = new RendererContext(\"fragment\");\n\n const renderRoot: RenderRoot = {\n tag: RenderTag.ROOT,\n // Will set during `mountUseBrick`\n createPortal: null!,\n };\n\n const transform = (useBrick as { transform?: Record<string, unknown> })\n .transform;\n const strict = isStrictMode();\n if (transform) {\n warnAboutStrictMode(\n strict,\n \"`useBrick.transform`\",\n 'please use \"properties\" instead, check your useBrick:',\n useBrick\n );\n }\n\n const output = await renderBrick(\n renderRoot,\n strict && !errorBoundary\n ? useBrick\n : {\n errorBoundary,\n ...useBrick,\n properties: {\n ...useBrick.properties,\n ...transform,\n },\n },\n scopedRuntimeContext,\n rendererContext,\n [],\n {}\n );\n\n const scopedStores = [...tplStateStoreScope, ...formStateStoreScope];\n\n await postAsyncRender(output, scopedRuntimeContext, scopedStores);\n\n if (output.node?.tag === RenderTag.PLACEHOLDER) {\n throw new Error(\n \"The root brick of useBrick cannot be an ignored control node\"\n );\n }\n\n if (output.node?.portal) {\n throw new Error(\"The root brick of useBrick cannot be a portal brick\");\n }\n\n renderRoot.child = output.node;\n\n const tagName = output.node ? output.node.type : null;\n\n return { tagName, renderRoot, rendererContext, scopedStores };\n}\n\nexport interface MountUseBrickResult {\n portal?: HTMLElement;\n}\n\nexport function mountUseBrick(\n { renderRoot, rendererContext, scopedStores }: RenderUseBrickResult,\n element: HTMLElement\n): MountUseBrickResult {\n let portal: HTMLElement | undefined;\n renderRoot.createPortal = () => {\n const portalRoot = document.querySelector(\n \"#portal-mount-point\"\n ) as HTMLElement;\n portal = document.createElement(\"div\");\n portalRoot.appendChild(portal);\n return portal;\n };\n\n mountTree(renderRoot, element);\n\n rendererContext.dispatchOnMount();\n rendererContext.initializeScrollIntoView();\n rendererContext.initializeMediaChange();\n rendererContext.initializeMessageDispatcher();\n\n for (const store of scopedStores) {\n store.mountAsyncData();\n }\n\n return {\n portal,\n };\n}\n\nexport function unmountUseBrick(\n { rendererContext }: RenderUseBrickResult,\n mountResult: MountUseBrickResult\n): void {\n // if (mountResult.mainBrick) {\n // mountResult.mainBrick.unmount();\n // }\n if (mountResult.portal) {\n unmountTree(mountResult.portal);\n mountResult.portal.remove();\n }\n rendererContext.dispatchOnUnmount();\n rendererContext.dispose();\n}\n\n/** For v2 compatibility of `doTransform` from brick-kit. */\nexport function legacyDoTransform(\n data: unknown,\n to: unknown,\n options?: unknown\n) {\n if (options) {\n throw new Error(\"Legacy doTransform does not support options in v3\");\n }\n return computeRealValue(\n to,\n {\n ..._internalApiGetRuntimeContext()!,\n data,\n },\n {\n noInject: true,\n }\n );\n}\n\nexport function updateStoryboard(\n appId: string,\n storyboardPatch: Partial<Storyboard>\n): void {\n const storyboard = _internalApiGetStoryboardInBootstrapData(appId)!;\n Object.assign(storyboard, {\n ...storyboardPatch,\n meta: {\n // Keep runtime fields such as `injectMenus`\n ...storyboard.meta,\n ...storyboardPatch.meta,\n },\n $$fulfilling: null,\n $$fulfilled: true,\n $$registerCustomTemplateProcessed: false,\n });\n registerAppI18n(storyboard);\n}\n\nexport function updateStoryboardByRoute(appId: string, newRoute: RouteConf) {\n const storyboard = _internalApiGetStoryboardInBootstrapData(appId)!;\n let match = false;\n const getKey = (route: RouteConf): string => `${route.path}.${route.exact}`;\n const replaceRoute = (routes: RouteConf[], key: string): RouteConf[] => {\n return routes.map((route) => {\n const routeKey = getKey(route);\n if (route.type === \"routes\") {\n route.routes = replaceRoute(route.routes, key);\n return route;\n } else if (routeKey === key) {\n match = true;\n return newRoute;\n } else {\n return route;\n }\n });\n };\n storyboard.routes = replaceRoute(storyboard.routes, getKey(newRoute));\n if (!match) {\n storyboard.routes.unshift(newRoute);\n }\n}\n\nexport function updateStoryboardByTemplate(\n appId: string,\n newTemplate: CustomTemplate,\n settings: unknown\n): void {\n const tplName = `${appId}.${newTemplate.name}`;\n // customTemplateRegistry.delete(tplName);\n customTemplates.define(tplName, {\n bricks: newTemplate.bricks,\n proxy: newTemplate.proxy,\n state: newTemplate.state,\n });\n updateTemplatePreviewSettings(appId, newTemplate.name, settings);\n}\n\nexport function updateTemplatePreviewSettings(\n appId: string,\n templateId: string,\n settings?: unknown\n): void {\n _updatePreviewSettings(\n appId,\n `\\${APP.homepage}/_dev_only_/template-preview/${templateId}`,\n [\n {\n brick: templateId,\n ...pick(\n settings,\n \"properties\",\n \"events\",\n \"lifeCycle\",\n \"context\",\n \"slots\",\n \"children\"\n ),\n },\n ]\n );\n}\n\nfunction getSnippetPreviewPath(snippetId: string): string {\n return `\\${APP.homepage}/_dev_only_/snippet-preview/${snippetId}`;\n}\n\nexport function updateStoryboardBySnippet(\n appId: string,\n snippetData: {\n snippetId: string;\n bricks?: BrickConf[];\n context?: ContextConf[];\n }\n): void {\n _updatePreviewSettings(\n appId,\n getSnippetPreviewPath(snippetData.snippetId),\n snippetData.bricks?.length ? snippetData.bricks : [{ brick: \"span\" }],\n snippetData.context\n );\n}\n\nexport const updateSnippetPreviewSettings = updateStoryboardBySnippet;\n\nfunction _updatePreviewSettings(\n appId: string,\n path: string,\n bricks: BrickConf[],\n context?: ContextConf[]\n) {\n const { routes } = _internalApiGetStoryboardInBootstrapData(appId)!;\n const previewRouteIndex = routes.findIndex((route) => route.path === path);\n const newPreviewRoute: RouteConf = {\n path,\n bricks,\n context,\n menu: false,\n exact: true,\n };\n if (previewRouteIndex === -1) {\n routes.unshift(newPreviewRoute);\n } else {\n routes.splice(previewRouteIndex, 1, newPreviewRoute);\n }\n}\n\nexport function getContextValue(\n name: string,\n { tplStateStoreId }: DataValueOption\n): unknown {\n const runtimeContext = _internalApiGetRuntimeContext()!;\n\n if (tplStateStoreId) {\n const tplStateStore = getTplStateStore(\n {\n ...runtimeContext,\n tplStateStoreId,\n },\n \"STATE\"\n );\n return tplStateStore.getValue(name);\n }\n\n return runtimeContext.ctxStore.getValue(name);\n}\n\nexport function getAllContextValues({\n tplStateStoreId,\n}: DataValueOption): Record<string, unknown> {\n const runtimeContext = _internalApiGetRuntimeContext()!;\n\n if (tplStateStoreId) {\n const tplStateStore = getTplStateStore(\n {\n ...runtimeContext,\n tplStateStoreId,\n },\n \"STATE\"\n );\n return tplStateStore.getAllValues();\n }\n\n return runtimeContext.ctxStore.getAllValues();\n}\n\nexport function getBrickPackagesById(id: string) {\n return getBrickPackages().find((pkg) =>\n pkg.id ? pkg.id === id : pkg.filePath.startsWith(id)\n );\n}\n\n/**\n * Support loading v3 bricks only.\n */\nexport function loadBricks(bricks: string[]) {\n return loadBricksImperatively(bricks, getBrickPackages());\n}\n\nexport function getRenderId() {\n return _internalApiGetRenderId();\n}\n\nexport async function getAddedContracts(\n storyboardPatch: PreviewStoryboardPatch,\n { appId, updateStoryboardType, collectUsedContracts }: PreviewOption\n): Promise<string[]> {\n const storyboard = _internalApiGetStoryboardInBootstrapData(appId);\n let updatedStoryboard;\n\n // 拿到更新部分的 storyboard 配置,然后扫描一遍,找到新增的 contracts\n if (updateStoryboardType === \"route\") {\n updatedStoryboard = {\n routes: [storyboardPatch as RouteConf],\n } as Storyboard;\n } else if (updateStoryboardType === \"template\") {\n updatedStoryboard = {\n meta: {\n customTemplates: [storyboardPatch as CustomTemplate],\n },\n } as Storyboard;\n } else if (updateStoryboardType === \"snippet\") {\n // snippet 是放在挂载 route 里预览,通过 previewPath 拿到当前修改 route\n const snippetPreviewPath = getSnippetPreviewPath(\n (storyboardPatch as RuntimeSnippet).snippetId\n );\n const currentRoute = storyboard?.routes?.find(\n (route) => route.path === snippetPreviewPath\n );\n\n updatedStoryboard = {\n routes: [currentRoute],\n } as Storyboard;\n }\n\n const addedContracts: string[] = [];\n\n if (updatedStoryboard && collectUsedContracts) {\n const contractApis = await collectUsedContracts(updatedStoryboard);\n\n contractApis.forEach((api: string) => {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [_, namespaceId, name] = api.match(\n /(.*)@(.*):\\d\\.\\d\\.\\d/\n ) as string[];\n\n if (\n !storyboard?.meta?.contracts?.some(\n (contract) =>\n contract.namespaceId === namespaceId && contract.name === name\n )\n ) {\n addedContracts.push(api);\n }\n });\n }\n\n return addedContracts;\n}\n\nexport async function debugDataValue(\n debugData: DebugDataValue,\n { tplStateStoreId }: DataValueOption\n): Promise<any> {\n const runtimeContext = {\n ..._internalApiGetRuntimeContext()!,\n tplStateStoreId,\n };\n\n if (debugData.resolve) {\n return resolveData(debugData.resolve!, runtimeContext, { cache: \"reload\" });\n }\n\n return asyncComputeRealValue(debugData.value, runtimeContext);\n}\n\nexport {\n setRealTimeDataInspectRoot,\n addRealTimeDataInspectHook,\n} from \"./data/realTimeDataInspect.js\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"secret_internals.js","names":["pick","_internalApiGetRenderId","_internalApiGetRuntimeContext","_internalApiGetStoryboardInBootstrapData","getBrickPackages","createScopedRuntimeContext","postAsyncRender","renderBrick","RendererContext","resolveData","asyncComputeRealValue","mountTree","unmountTree","RenderTag","computeRealValue","isStrictMode","warnAboutStrictMode","customTemplates","registerAppI18n","getTplStateStore","loadBricksImperatively","loadEditorsImperatively","symbolForRootRuntimeContext","Symbol","for","renderUseBrick","useBrick","data","errorBoundary","_output$node","_output$node2","scopedRuntimeContext","tplStateStoreScope","formStateStoreScope","pendingPermissionsPreCheck","tplStateStoreMap","Map","formStateStoreMap","rendererContext","renderRoot","tag","ROOT","createPortal","transform","strict","output","properties","scopedStores","node","PLACEHOLDER","Error","portal","child","tagName","type","mountUseBrick","_ref","element","portalRoot","document","querySelector","createElement","appendChild","dispatchOnMount","initializeScrollIntoView","initializeMediaChange","initializeMessageDispatcher","store","mountAsyncData","unmountUseBrick","_ref2","mountResult","remove","dispatchOnUnmount","dispose","legacyDoTransform","to","options","noInject","updateStoryboard","appId","storyboardPatch","storyboard","Object","assign","meta","$$fulfilling","$$fulfilled","$$registerCustomTemplateProcessed","updateStoryboardByRoute","newRoute","match","getKey","route","path","exact","replaceRoute","routes","key","map","routeKey","unshift","updateStoryboardByTemplate","newTemplate","settings","tplName","name","define","bricks","proxy","state","updateTemplatePreviewSettings","templateId","_updatePreviewSettings","brick","getSnippetPreviewPath","snippetId","updateStoryboardBySnippet","snippetData","_snippetData$bricks","length","context","updateSnippetPreviewSettings","previewRouteIndex","findIndex","newPreviewRoute","menu","splice","getContextValue","_ref3","tplStateStoreId","runtimeContext","tplStateStore","getValue","ctxStore","getAllContextValues","_ref4","getAllValues","getBrickPackagesById","id","find","pkg","filePath","startsWith","loadBricks","loadEditors","editors","getRenderId","getAddedContracts","_ref5","updateStoryboardType","collectUsedContracts","updatedStoryboard","_storyboard$routes","snippetPreviewPath","currentRoute","addedContracts","contractApis","forEach","api","_storyboard$meta","_","namespaceId","contracts","some","contract","push","debugDataValue","debugData","_ref6","resolve","cache","value","setRealTimeDataInspectRoot","addRealTimeDataInspectHook"],"sources":["../../../src/internal/secret_internals.ts"],"sourcesContent":["import type {\n BrickConf,\n CustomTemplate,\n RouteConf,\n Storyboard,\n UseSingleBrickConf,\n RuntimeSnippet,\n ContextConf,\n} from \"@next-core/types\";\nimport { pick } from \"lodash\";\nimport {\n _internalApiGetRenderId,\n _internalApiGetRuntimeContext,\n _internalApiGetStoryboardInBootstrapData,\n getBrickPackages,\n} from \"./Runtime.js\";\nimport {\n createScopedRuntimeContext,\n postAsyncRender,\n renderBrick,\n} from \"./Renderer.js\";\nimport { RendererContext } from \"./RendererContext.js\";\nimport type { DataStore } from \"./data/DataStore.js\";\nimport { resolveData } from \"./data/resolveData.js\";\nimport { asyncComputeRealValue } from \"./compute/computeRealValue.js\";\nimport type {\n DataValueOption,\n PreviewOption,\n PreviewStoryboardPatch,\n RenderRoot,\n RuntimeContext,\n DebugDataValue,\n} from \"./interfaces.js\";\nimport { mountTree, unmountTree } from \"./mount.js\";\nimport { RenderTag } from \"./enums.js\";\nimport { computeRealValue } from \"./compute/computeRealValue.js\";\nimport { isStrictMode, warnAboutStrictMode } from \"../isStrictMode.js\";\nimport { customTemplates } from \"../CustomTemplates.js\";\nimport { registerAppI18n } from \"./registerAppI18n.js\";\nimport { getTplStateStore } from \"./CustomTemplates/utils.js\";\nimport {\n loadBricksImperatively,\n loadEditorsImperatively,\n} from \"@next-core/loader\";\n\nexport type { DataValueOption, RuntimeContext };\n\nexport const symbolForRootRuntimeContext = Symbol.for(\"root.runtimeContext\");\n\nexport interface RuntimeUseBrickConfWithRootSymbols extends UseSingleBrickConf {\n [symbolForRootRuntimeContext]?: RuntimeContext;\n}\n\nexport interface RenderUseBrickResult {\n tagName: string | null;\n renderRoot: RenderRoot;\n rendererContext: RendererContext;\n scopedStores: DataStore<\"STATE\" | \"FORM_STATE\">[];\n}\n\nexport async function renderUseBrick(\n useBrick: RuntimeUseBrickConfWithRootSymbols,\n data: unknown,\n errorBoundary?: boolean\n): Promise<RenderUseBrickResult> {\n const [scopedRuntimeContext, tplStateStoreScope, formStateStoreScope] =\n createScopedRuntimeContext({\n ...(useBrick[symbolForRootRuntimeContext] ??\n _internalApiGetRuntimeContext()!),\n data,\n pendingPermissionsPreCheck: [],\n });\n\n scopedRuntimeContext.tplStateStoreMap ??= new Map();\n scopedRuntimeContext.formStateStoreMap ??= new Map();\n\n const rendererContext = new RendererContext(\"fragment\");\n\n const renderRoot: RenderRoot = {\n tag: RenderTag.ROOT,\n // Will set during `mountUseBrick`\n createPortal: null!,\n };\n\n const transform = (useBrick as { transform?: Record<string, unknown> })\n .transform;\n const strict = isStrictMode();\n if (transform) {\n warnAboutStrictMode(\n strict,\n \"`useBrick.transform`\",\n 'please use \"properties\" instead, check your useBrick:',\n useBrick\n );\n }\n\n const output = await renderBrick(\n renderRoot,\n strict && !errorBoundary\n ? useBrick\n : {\n errorBoundary,\n ...useBrick,\n properties: {\n ...useBrick.properties,\n ...transform,\n },\n },\n scopedRuntimeContext,\n rendererContext,\n [],\n {}\n );\n\n const scopedStores = [...tplStateStoreScope, ...formStateStoreScope];\n\n await postAsyncRender(output, scopedRuntimeContext, scopedStores);\n\n if (output.node?.tag === RenderTag.PLACEHOLDER) {\n throw new Error(\n \"The root brick of useBrick cannot be an ignored control node\"\n );\n }\n\n if (output.node?.portal) {\n throw new Error(\"The root brick of useBrick cannot be a portal brick\");\n }\n\n renderRoot.child = output.node;\n\n const tagName = output.node ? output.node.type : null;\n\n return { tagName, renderRoot, rendererContext, scopedStores };\n}\n\nexport interface MountUseBrickResult {\n portal?: HTMLElement;\n}\n\nexport function mountUseBrick(\n { renderRoot, rendererContext, scopedStores }: RenderUseBrickResult,\n element: HTMLElement\n): MountUseBrickResult {\n let portal: HTMLElement | undefined;\n renderRoot.createPortal = () => {\n const portalRoot = document.querySelector(\n \"#portal-mount-point\"\n ) as HTMLElement;\n portal = document.createElement(\"div\");\n portalRoot.appendChild(portal);\n return portal;\n };\n\n mountTree(renderRoot, element);\n\n rendererContext.dispatchOnMount();\n rendererContext.initializeScrollIntoView();\n rendererContext.initializeMediaChange();\n rendererContext.initializeMessageDispatcher();\n\n for (const store of scopedStores) {\n store.mountAsyncData();\n }\n\n return {\n portal,\n };\n}\n\nexport function unmountUseBrick(\n { rendererContext }: RenderUseBrickResult,\n mountResult: MountUseBrickResult\n): void {\n // if (mountResult.mainBrick) {\n // mountResult.mainBrick.unmount();\n // }\n if (mountResult.portal) {\n unmountTree(mountResult.portal);\n mountResult.portal.remove();\n }\n rendererContext.dispatchOnUnmount();\n rendererContext.dispose();\n}\n\n/** For v2 compatibility of `doTransform` from brick-kit. */\nexport function legacyDoTransform(\n data: unknown,\n to: unknown,\n options?: unknown\n) {\n if (options) {\n throw new Error(\"Legacy doTransform does not support options in v3\");\n }\n return computeRealValue(\n to,\n {\n ..._internalApiGetRuntimeContext()!,\n data,\n },\n {\n noInject: true,\n }\n );\n}\n\nexport function updateStoryboard(\n appId: string,\n storyboardPatch: Partial<Storyboard>\n): void {\n const storyboard = _internalApiGetStoryboardInBootstrapData(appId)!;\n Object.assign(storyboard, {\n ...storyboardPatch,\n meta: {\n // Keep runtime fields such as `injectMenus`\n ...storyboard.meta,\n ...storyboardPatch.meta,\n },\n $$fulfilling: null,\n $$fulfilled: true,\n $$registerCustomTemplateProcessed: false,\n });\n registerAppI18n(storyboard);\n}\n\nexport function updateStoryboardByRoute(appId: string, newRoute: RouteConf) {\n const storyboard = _internalApiGetStoryboardInBootstrapData(appId)!;\n let match = false;\n const getKey = (route: RouteConf): string => `${route.path}.${route.exact}`;\n const replaceRoute = (routes: RouteConf[], key: string): RouteConf[] => {\n return routes.map((route) => {\n const routeKey = getKey(route);\n if (route.type === \"routes\") {\n route.routes = replaceRoute(route.routes, key);\n return route;\n } else if (routeKey === key) {\n match = true;\n return newRoute;\n } else {\n return route;\n }\n });\n };\n storyboard.routes = replaceRoute(storyboard.routes, getKey(newRoute));\n if (!match) {\n storyboard.routes.unshift(newRoute);\n }\n}\n\nexport function updateStoryboardByTemplate(\n appId: string,\n newTemplate: CustomTemplate,\n settings: unknown\n): void {\n const tplName = `${appId}.${newTemplate.name}`;\n // customTemplateRegistry.delete(tplName);\n customTemplates.define(tplName, {\n bricks: newTemplate.bricks,\n proxy: newTemplate.proxy,\n state: newTemplate.state,\n });\n updateTemplatePreviewSettings(appId, newTemplate.name, settings);\n}\n\nexport function updateTemplatePreviewSettings(\n appId: string,\n templateId: string,\n settings?: unknown\n): void {\n _updatePreviewSettings(\n appId,\n `\\${APP.homepage}/_dev_only_/template-preview/${templateId}`,\n [\n {\n brick: templateId,\n ...pick(\n settings,\n \"properties\",\n \"events\",\n \"lifeCycle\",\n \"context\",\n \"slots\",\n \"children\"\n ),\n },\n ]\n );\n}\n\nfunction getSnippetPreviewPath(snippetId: string): string {\n return `\\${APP.homepage}/_dev_only_/snippet-preview/${snippetId}`;\n}\n\nexport function updateStoryboardBySnippet(\n appId: string,\n snippetData: {\n snippetId: string;\n bricks?: BrickConf[];\n context?: ContextConf[];\n }\n): void {\n _updatePreviewSettings(\n appId,\n getSnippetPreviewPath(snippetData.snippetId),\n snippetData.bricks?.length ? snippetData.bricks : [{ brick: \"span\" }],\n snippetData.context\n );\n}\n\nexport const updateSnippetPreviewSettings = updateStoryboardBySnippet;\n\nfunction _updatePreviewSettings(\n appId: string,\n path: string,\n bricks: BrickConf[],\n context?: ContextConf[]\n) {\n const { routes } = _internalApiGetStoryboardInBootstrapData(appId)!;\n const previewRouteIndex = routes.findIndex((route) => route.path === path);\n const newPreviewRoute: RouteConf = {\n path,\n bricks,\n context,\n menu: false,\n exact: true,\n };\n if (previewRouteIndex === -1) {\n routes.unshift(newPreviewRoute);\n } else {\n routes.splice(previewRouteIndex, 1, newPreviewRoute);\n }\n}\n\nexport function getContextValue(\n name: string,\n { tplStateStoreId }: DataValueOption\n): unknown {\n const runtimeContext = _internalApiGetRuntimeContext()!;\n\n if (tplStateStoreId) {\n const tplStateStore = getTplStateStore(\n {\n ...runtimeContext,\n tplStateStoreId,\n },\n \"STATE\"\n );\n return tplStateStore.getValue(name);\n }\n\n return runtimeContext.ctxStore.getValue(name);\n}\n\nexport function getAllContextValues({\n tplStateStoreId,\n}: DataValueOption): Record<string, unknown> {\n const runtimeContext = _internalApiGetRuntimeContext()!;\n\n if (tplStateStoreId) {\n const tplStateStore = getTplStateStore(\n {\n ...runtimeContext,\n tplStateStoreId,\n },\n \"STATE\"\n );\n return tplStateStore.getAllValues();\n }\n\n return runtimeContext.ctxStore.getAllValues();\n}\n\nexport function getBrickPackagesById(id: string) {\n return getBrickPackages().find((pkg) =>\n pkg.id ? pkg.id === id : pkg.filePath.startsWith(id)\n );\n}\n\n/**\n * Support loading v3 bricks only.\n */\nexport function loadBricks(bricks: string[]) {\n return loadBricksImperatively(bricks, getBrickPackages());\n}\n\nexport function loadEditors(editors: string[] | Set<string>) {\n return loadEditorsImperatively(editors, getBrickPackages());\n}\n\nexport function getRenderId() {\n return _internalApiGetRenderId();\n}\n\nexport async function getAddedContracts(\n storyboardPatch: PreviewStoryboardPatch,\n { appId, updateStoryboardType, collectUsedContracts }: PreviewOption\n): Promise<string[]> {\n const storyboard = _internalApiGetStoryboardInBootstrapData(appId);\n let updatedStoryboard;\n\n // 拿到更新部分的 storyboard 配置,然后扫描一遍,找到新增的 contracts\n if (updateStoryboardType === \"route\") {\n updatedStoryboard = {\n routes: [storyboardPatch as RouteConf],\n } as Storyboard;\n } else if (updateStoryboardType === \"template\") {\n updatedStoryboard = {\n meta: {\n customTemplates: [storyboardPatch as CustomTemplate],\n },\n } as Storyboard;\n } else if (updateStoryboardType === \"snippet\") {\n // snippet 是放在挂载 route 里预览,通过 previewPath 拿到当前修改 route\n const snippetPreviewPath = getSnippetPreviewPath(\n (storyboardPatch as RuntimeSnippet).snippetId\n );\n const currentRoute = storyboard?.routes?.find(\n (route) => route.path === snippetPreviewPath\n );\n\n updatedStoryboard = {\n routes: [currentRoute],\n } as Storyboard;\n }\n\n const addedContracts: string[] = [];\n\n if (updatedStoryboard && collectUsedContracts) {\n const contractApis = await collectUsedContracts(updatedStoryboard);\n\n contractApis.forEach((api: string) => {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [_, namespaceId, name] = api.match(\n /(.*)@(.*):\\d\\.\\d\\.\\d/\n ) as string[];\n\n if (\n !storyboard?.meta?.contracts?.some(\n (contract) =>\n contract.namespaceId === namespaceId && contract.name === name\n )\n ) {\n addedContracts.push(api);\n }\n });\n }\n\n return addedContracts;\n}\n\nexport async function debugDataValue(\n debugData: DebugDataValue,\n { tplStateStoreId }: DataValueOption\n): Promise<any> {\n const runtimeContext = {\n ..._internalApiGetRuntimeContext()!,\n tplStateStoreId,\n };\n\n if (debugData.resolve) {\n return resolveData(debugData.resolve!, runtimeContext, { cache: \"reload\" });\n }\n\n return asyncComputeRealValue(debugData.value, runtimeContext);\n}\n\nexport {\n setRealTimeDataInspectRoot,\n addRealTimeDataInspectHook,\n} from \"./data/realTimeDataInspect.js\";\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ declare class CustomEditorRegistry {
2
+ #private;
3
+ define(editorName: string, editorFunc: Function): void;
4
+ get(editorName: string): Function | undefined;
5
+ }
6
+ export declare const customEditors: CustomEditorRegistry;
7
+ export {};
@@ -1,4 +1,5 @@
1
1
  export * from "./auth.js";
2
+ export * from "./CustomEditors.js";
2
3
  export * from "./CustomProcessors.js";
3
4
  export * from "./CustomTemplates.js";
4
5
  export * from "./fetchByProvider.js";
@@ -38,6 +38,7 @@ export declare function getBrickPackagesById(id: string): import("@next-core/typ
38
38
  * Support loading v3 bricks only.
39
39
  */
40
40
  export declare function loadBricks(bricks: string[]): Promise<void>;
41
+ export declare function loadEditors(editors: string[] | Set<string>): Promise<void>;
41
42
  export declare function getRenderId(): string | undefined;
42
43
  export declare function getAddedContracts(storyboardPatch: PreviewStoryboardPatch, { appId, updateStoryboardType, collectUsedContracts }: PreviewOption): Promise<string[]>;
43
44
  export declare function debugDataValue(debugData: DebugDataValue, { tplStateStoreId }: DataValueOption): Promise<any>;
package/package.json CHANGED
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "name": "@next-core/runtime",
3
- "version": "1.44.4",
3
+ "version": "1.46.0",
4
4
  "homepage": "https://github.com/easyops-cn/next-core/tree/v3/packages/runtime",
5
5
  "license": "GPL-3.0",
6
6
  "repository": {
7
7
  "type": "git",
8
- "url": "git@github.com:easyops-cn/next-core.git"
8
+ "url": "git@github.com:easyops-cn/next-core.git",
9
+ "directory": "packages/runtime"
9
10
  },
10
11
  "sideEffects": [
11
12
  "*.css"
@@ -44,14 +45,14 @@
44
45
  },
45
46
  "dependencies": {
46
47
  "@next-core/color-theme": "^0.4.8",
47
- "@next-core/cook": "^2.2.17",
48
- "@next-core/http": "^1.2.3",
49
- "@next-core/i18n": "^1.0.48",
50
- "@next-core/inject": "^1.0.36",
51
- "@next-core/loader": "^1.5.9",
52
- "@next-core/supply": "^2.1.16",
53
- "@next-core/types": "^1.11.0",
54
- "@next-core/utils": "^1.7.6",
48
+ "@next-core/cook": "^2.2.18",
49
+ "@next-core/http": "^1.2.4",
50
+ "@next-core/i18n": "^1.0.49",
51
+ "@next-core/inject": "^1.0.37",
52
+ "@next-core/loader": "^1.6.0",
53
+ "@next-core/supply": "^2.1.17",
54
+ "@next-core/types": "^1.11.1",
55
+ "@next-core/utils": "^1.7.7",
55
56
  "@ungap/event-target": "^0.2.4",
56
57
  "compare-versions": "^6.1.0",
57
58
  "history": "^4.10.1",
@@ -63,8 +64,8 @@
63
64
  "@microsoft/api-extractor": "^7.46.2",
64
65
  "@next-api-sdk/api-gateway-sdk": "^1.1.0",
65
66
  "@next-api-sdk/micro-app-sdk": "^1.2.1",
66
- "@next-core/build-next-libs": "^1.0.16",
67
- "@next-core/test-next": "^1.1.2"
67
+ "@next-core/build-next-libs": "^1.0.17",
68
+ "@next-core/test-next": "^1.1.3"
68
69
  },
69
- "gitHead": "e773d5b02fb0d529f8040df5ed82b8927df61662"
70
+ "gitHead": "619848934f0acd05e52e9890efedcf3eb454a5eb"
70
71
  }