@next-core/runtime 1.54.10 → 1.54.12

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.
Files changed (37) hide show
  1. package/dist/cjs/createRoot.js +2 -16
  2. package/dist/cjs/createRoot.js.map +1 -1
  3. package/dist/cjs/getPageInfo.js +4 -2
  4. package/dist/cjs/getPageInfo.js.map +1 -1
  5. package/dist/cjs/internal/ErrorNode.js +148 -0
  6. package/dist/cjs/internal/ErrorNode.js.map +1 -0
  7. package/dist/cjs/internal/Renderer.js +3 -17
  8. package/dist/cjs/internal/Renderer.js.map +1 -1
  9. package/dist/cjs/internal/RendererContext.js +4 -0
  10. package/dist/cjs/internal/RendererContext.js.map +1 -1
  11. package/dist/cjs/internal/Router.js +5 -26
  12. package/dist/cjs/internal/Router.js.map +1 -1
  13. package/dist/cjs/internal/Runtime.js +17 -28
  14. package/dist/cjs/internal/Runtime.js.map +1 -1
  15. package/dist/cjs/internal/i18n.js +23 -2
  16. package/dist/cjs/internal/i18n.js.map +1 -1
  17. package/dist/esm/createRoot.js +2 -16
  18. package/dist/esm/createRoot.js.map +1 -1
  19. package/dist/esm/getPageInfo.js +4 -2
  20. package/dist/esm/getPageInfo.js.map +1 -1
  21. package/dist/esm/internal/ErrorNode.js +140 -0
  22. package/dist/esm/internal/ErrorNode.js.map +1 -0
  23. package/dist/esm/internal/Renderer.js +3 -17
  24. package/dist/esm/internal/Renderer.js.map +1 -1
  25. package/dist/esm/internal/RendererContext.js +4 -0
  26. package/dist/esm/internal/RendererContext.js.map +1 -1
  27. package/dist/esm/internal/Router.js +6 -27
  28. package/dist/esm/internal/Router.js.map +1 -1
  29. package/dist/esm/internal/Runtime.js +9 -13
  30. package/dist/esm/internal/Runtime.js.map +1 -1
  31. package/dist/esm/internal/i18n.js +23 -2
  32. package/dist/esm/internal/i18n.js.map +1 -1
  33. package/dist/types/internal/ErrorNode.d.ts +8 -0
  34. package/dist/types/internal/RendererContext.d.ts +8 -4
  35. package/dist/types/internal/Runtime.d.ts +5 -0
  36. package/dist/types/internal/i18n.d.ts +8 -1
  37. package/package.json +3 -3
@@ -19,7 +19,7 @@ import { applyMode, applyTheme, getLocalAppsTheme, setMode, setTheme } from "../
19
19
  import { _internalApiGetAppInBootstrapData, getRuntime, hooks } from "./Runtime.js";
20
20
  import { getPageInfo } from "../getPageInfo.js";
21
21
  import { resetAllComputedMarks } from "./compute/markAsComputed.js";
22
- import { handleHttpError, httpErrorToString, isUnauthenticatedError } from "../handleHttpError.js";
22
+ import { handleHttpError, isUnauthenticatedError } from "../handleHttpError.js";
23
23
  import { abortPendingRequest, initAbortController } from "./abortController.js";
24
24
  import { setLoginStateCookie } from "../setLoginStateCookie.js";
25
25
  import { registerCustomTemplates } from "./registerCustomTemplates.js";
@@ -31,6 +31,7 @@ import { setUIVersion } from "../setUIVersion.js";
31
31
  import { setAppVariable } from "../setAppVariable.js";
32
32
  import { setWatermark } from "../setWatermark.js";
33
33
  import { clearMatchedRoutes } from "./routeMatchedMap.js";
34
+ import { ErrorNode, PageNotFoundError } from "./ErrorNode.js";
34
35
  var _storyboards = /*#__PURE__*/new WeakMap();
35
36
  var _rendering = /*#__PURE__*/new WeakMap();
36
37
  var _nextRender = /*#__PURE__*/new WeakMap();
@@ -328,7 +329,7 @@ async function _render(location) {
328
329
  detail: _classPrivateFieldGet(_navConfig, this)
329
330
  }));
330
331
  },
331
- catch: (error, returnNode) => {
332
+ catch: async (error, returnNode) => {
332
333
  if (isUnauthenticatedError(error) && !window.NO_AUTH_GUARD) {
333
334
  redirectToLogin();
334
335
  return;
@@ -346,21 +347,7 @@ async function _render(location) {
346
347
  return {
347
348
  failed: true,
348
349
  output: {
349
- node: {
350
- tag: RenderTag.BRICK,
351
- type: "div",
352
- properties: {
353
- textContent: httpErrorToString(error),
354
- dataset: {
355
- errorBoundary: ""
356
- },
357
- style: {
358
- color: "var(--color-error)"
359
- }
360
- },
361
- runtimeContext: null,
362
- return: returnNode
363
- },
350
+ node: await ErrorNode(error, returnNode, true),
364
351
  blockingList: []
365
352
  }
366
353
  };
@@ -410,7 +397,7 @@ async function _render(location) {
410
397
  } catch (error) {
411
398
  // eslint-disable-next-line no-console
412
399
  console.error("Router failed:", error);
413
- const result = routeHelper.catch(error, renderRoot);
400
+ const result = await routeHelper.catch(error, renderRoot);
414
401
  if (!result) {
415
402
  return;
416
403
  }
@@ -467,15 +454,7 @@ async function _render(location) {
467
454
  }
468
455
  applyTheme();
469
456
  applyMode();
470
- const node = {
471
- tag: RenderTag.BRICK,
472
- type: "div",
473
- properties: {
474
- textContent: "Page not found"
475
- },
476
- runtimeContext: null,
477
- return: renderRoot
478
- };
457
+ const node = await ErrorNode(new PageNotFoundError(currentApp ? "page not found" : "app not found"), renderRoot, true);
479
458
  renderRoot.child = node;
480
459
  mountTree(renderRoot);
481
460
 
@@ -1 +1 @@
1
- {"version":3,"file":"Router.js","names":["locationsAreEqual","HttpAbortError","clearExpressionASTCache","clearFunctionASTCache","uniqueId","getHistory","getDataStores","postAsyncRender","renderRoutes","DataStore","clearResolveCache","mountTree","unmountTree","isOutsideApp","matchStoryboard","registerStoryboardFunctions","RendererContext","applyMode","applyTheme","getLocalAppsTheme","setMode","setTheme","_internalApiGetAppInBootstrapData","getRuntime","hooks","getPageInfo","resetAllComputedMarks","handleHttpError","httpErrorToString","isUnauthenticatedError","abortPendingRequest","initAbortController","setLoginStateCookie","registerCustomTemplates","fulfilStoryboard","RenderTag","insertPreviewRoutes","devtoolsHookEmit","setUIVersion","setAppVariable","setWatermark","clearMatchedRoutes","_storyboards","WeakMap","_rendering","_nextRender","_runtimeContext","_rendererContext","_rendererContextTrashCan","_redirectCount","_renderId","_currentApp","_previousApp","_navConfig","_Router_brand","WeakSet","Router","constructor","storyboards","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","Set","_classPrivateFieldSet","history","window","addEventListener","event","message","_assertClassBrand","_getBlockMessageBeforePageLave","call","preventDefault","returnValue","block","location","action","getRenderId","_classPrivateFieldGet","getRuntimeContext","getRecentApps","currentApp","previousApp","getNavConfig","bootstrap","nextPrevLocation","listen","prevLocation","_queuedRender","catch","detail","_classPrivateFieldGet2","previousMessage","getBlockMessage","dispatchBeforePageLeave","unblock","_safeRedirect","to","state","from","_this$redirectCount","_this$redirectCount2","pathname","search","hash","process","env","NODE_ENV","console","error","Error","replace","next","_preRender","nextRender","undefined","_ref","_prevLocation$state","_location$state","_location$state2","_classPrivateFieldGet4","ignoreRendering","omittedLocationProps","key","notify","noIncremental","_classPrivateFieldGet3","didPerformIncrementalRender","dispatchPageLeave","storyboard","reload","_render","_hooks$flowApi","_hooks$pageView","_classPrivateFieldGet5","_storyboard$app","renderId","flowApi","clearCollectWidgetContract","finishPageView","pageView","create","app","currentAppId","id","BOOTSTRAP_UNION_FILE","appId","version","currentVersion","appChanged","flags","getFeatureFlags","prevRendererContext","redirectTo","status","add","redirectToLogin","main","document","querySelector","portal","renderRoot","tag","ROOT","container","createPortal","cleanUpPreviousRender","_hooks$messageDispatc","item","dispatchOnUnmount","dispose","clear","messageDispatcher","reset","dispatchEvent","CustomEvent","theme","_hooks$checkInstalled","_hooks$auth","_hooks$checkPermissio","_storyboard$meta","_hooks$flowApi2","_storyboard$meta2","checkInstalledApps","preCheckInstalledApps","routeHelper","bailout","output","unauthenticated","redirect","path","mergeMenus","menuRequests","menuConfs","Promise","all","mergeMenuConfs","returnNode","NO_AUTH_GUARD","noAuthGuardLoginPath","getMiscSettings","failed","node","BRICK","type","properties","textContent","dataset","errorBoundary","style","color","runtimeContext","return","blockingList","rendererContext","query","URLSearchParams","sys","auth","getAuth","settings","brand","getBrandSettings","ctxStore","pendingPermissionsPreCheck","checkPermissions","preCheckPermissions","tplStateStoreMap","Map","formStateStoreMap","meta","functions","collectContract","contracts","stores","rootMenuRequestNode","routes","child","menuRequestNode","setInitialMenuRequestNode","getMenuRequests","result","route","dispatchBeforePageLoad","uiVersion","scrollTo","dispatchPageLoad","dispatchAnchorLoad","dispatchOnMount","initializeScrollIntoView","initializeMediaChange","initializeMessageDispatcher","store","mountAsyncData","pageTitle","title","isLoggedIn","navConfig","breadcrumb","menuConf","overwrite","items","push"],"sources":["../../../src/internal/Router.ts"],"sourcesContent":["import { Action, locationsAreEqual } from \"history\";\nimport type {\n BreadcrumbItemConf,\n MicroApp,\n StaticMenuConf,\n Storyboard,\n} from \"@next-core/types\";\nimport { HttpAbortError } from \"@next-core/http\";\nimport {\n clearExpressionASTCache,\n clearFunctionASTCache,\n} from \"@next-core/cook\";\nimport { uniqueId } from \"lodash\";\nimport { NextHistoryState, NextLocation, getHistory } from \"../history.js\";\nimport {\n RenderOutput,\n getDataStores,\n postAsyncRender,\n renderRoutes,\n} from \"./Renderer.js\";\nimport { DataStore } from \"./data/DataStore.js\";\nimport { clearResolveCache } from \"./data/resolveData.js\";\nimport { mountTree, unmountTree } from \"./mount.js\";\nimport { isOutsideApp, matchStoryboard } from \"./matchStoryboard.js\";\nimport { registerStoryboardFunctions } from \"./compute/StoryboardFunctions.js\";\nimport { RendererContext, RouteHelper } from \"./RendererContext.js\";\nimport {\n applyMode,\n applyTheme,\n getLocalAppsTheme,\n setMode,\n setTheme,\n} from \"../themeAndMode.js\";\nimport {\n _internalApiGetAppInBootstrapData,\n getRuntime,\n hooks,\n} from \"./Runtime.js\";\nimport { getPageInfo } from \"../getPageInfo.js\";\nimport type {\n MenuRequestNode,\n RenderBrick,\n RenderRoot,\n RuntimeContext,\n} from \"./interfaces.js\";\nimport { resetAllComputedMarks } from \"./compute/markAsComputed.js\";\nimport {\n handleHttpError,\n httpErrorToString,\n isUnauthenticatedError,\n} from \"../handleHttpError.js\";\nimport { abortPendingRequest, initAbortController } from \"./abortController.js\";\nimport { setLoginStateCookie } from \"../setLoginStateCookie.js\";\nimport { registerCustomTemplates } from \"./registerCustomTemplates.js\";\nimport { fulfilStoryboard } from \"./fulfilStoryboard.js\";\nimport { RenderTag } from \"./enums.js\";\nimport { insertPreviewRoutes } from \"./insertPreviewRoutes.js\";\nimport { devtoolsHookEmit } from \"./devtools.js\";\nimport { setUIVersion } from \"../setUIVersion.js\";\nimport { setAppVariable } from \"../setAppVariable.js\";\nimport { setWatermark } from \"../setWatermark.js\";\nimport { clearMatchedRoutes } from \"./routeMatchedMap.js\";\n\ntype RenderTask = InitialRenderTask | SubsequentRenderTask;\n\ninterface InitialRenderTask {\n location: NextLocation;\n prevLocation?: undefined;\n action?: undefined;\n}\n\ninterface SubsequentRenderTask {\n location: NextLocation;\n prevLocation: NextLocation;\n action: Action;\n}\n\nexport class Router {\n readonly #storyboards: Storyboard[];\n #rendering = false;\n #nextRender?: RenderTask;\n #runtimeContext?: RuntimeContext;\n #rendererContext?: RendererContext;\n #rendererContextTrashCan = new Set<RendererContext | undefined>();\n #redirectCount = 0;\n #renderId?: string;\n #currentApp?: MicroApp;\n #previousApp?: MicroApp;\n #navConfig?: {\n breadcrumb?: BreadcrumbItemConf[];\n };\n\n constructor(storyboards: Storyboard[]) {\n this.#storyboards = storyboards;\n\n const history = getHistory();\n window.addEventListener(\"beforeunload\", (event) => {\n const message = this.#getBlockMessageBeforePageLave({});\n // See examples in https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onbeforeunload\n if (message) {\n // Cancel the event\n // If you prevent default behavior in Mozilla Firefox prompt will always be shown\n event.preventDefault();\n // Chrome requires returnValue to be set\n event.returnValue = \"\";\n } else {\n // the absence of a returnValue property on the event will guarantee the browser unload happens\n delete event.returnValue;\n }\n });\n\n history.block((location, action) =>\n this.#getBlockMessageBeforePageLave({ location, action })\n );\n }\n\n getRenderId() {\n return this.#renderId;\n }\n\n getRuntimeContext() {\n return this.#runtimeContext;\n }\n\n getRecentApps() {\n return {\n currentApp: this.#currentApp,\n previousApp: this.#previousApp,\n };\n }\n\n getNavConfig() {\n return this.#navConfig;\n }\n\n #getBlockMessageBeforePageLave(detail: {\n location?: NextLocation;\n action?: Action;\n }): string | undefined {\n const history = getHistory();\n const previousMessage = history.getBlockMessage();\n this.#rendererContext?.dispatchBeforePageLeave(detail);\n const message = history.getBlockMessage();\n if (!previousMessage && message) {\n // Auto unblock only if new block was introduced by `onBeforePageLeave`.\n history.unblock();\n }\n return message;\n }\n\n #safeRedirect(\n to: string,\n state: NextHistoryState | undefined,\n from: NextLocation\n ): void {\n if (this.#redirectCount++ > 10) {\n const message = `Infinite redirect detected: from \"${from.pathname}${from.search}${from.hash}\" to \"${to}\"`;\n // istanbul ignore else: error cannot be caught in test\n if (process.env.NODE_ENV === \"test\") {\n // eslint-disable-next-line no-console\n console.error(message);\n return;\n } else {\n throw new Error(message);\n }\n }\n getHistory().replace(to, state);\n }\n\n bootstrap() {\n initAbortController();\n const history = getHistory();\n let nextPrevLocation = history.location;\n history.listen((location, action) => {\n const prevLocation = nextPrevLocation;\n nextPrevLocation = location;\n if (this.#rendering) {\n this.#nextRender = { location, prevLocation, action };\n } else {\n this.#queuedRender({\n location,\n prevLocation,\n action,\n }).catch(handleHttpError);\n }\n });\n return this.#queuedRender({ location: history.location });\n }\n\n async #queuedRender(next: RenderTask) {\n this.#rendering = true;\n try {\n await this.#preRender(next);\n } finally {\n this.#rendering = false;\n if (this.#nextRender) {\n const nextRender = this.#nextRender;\n this.#nextRender = undefined;\n await this.#queuedRender(nextRender);\n }\n }\n }\n\n async #preRender({ location, prevLocation, action }: RenderTask) {\n if (prevLocation) {\n let ignoreRendering: boolean | undefined;\n const omittedLocationProps: Partial<NextLocation> = {\n hash: undefined,\n state: undefined,\n };\n // Omit the \"key\" when checking whether locations are equal in certain situations.\n if (\n // When current location is triggered by browser action of hash link.\n location.key === undefined ||\n // When current location is triggered by browser action of non-push-or-replace,\n // such as goBack or goForward,\n (action === \"POP\" &&\n // and the previous location was triggered by hash link,\n (prevLocation.key === undefined ||\n // or the previous location specified notify false.\n prevLocation.state?.notify === false))\n ) {\n omittedLocationProps.key = undefined;\n }\n if (\n locationsAreEqual(\n { ...prevLocation, ...omittedLocationProps },\n { ...location, ...omittedLocationProps }\n ) ||\n (action !== \"POP\" && location.state?.notify === false)\n ) {\n // Ignore rendering if location not changed except hash, state and optional key.\n // Ignore rendering if notify is `false`.\n ignoreRendering = true;\n }\n\n if (!ignoreRendering && !location.state?.noIncremental) {\n ignoreRendering =\n await this.#rendererContext?.didPerformIncrementalRender(\n location,\n prevLocation\n );\n }\n\n if (ignoreRendering) {\n return;\n }\n\n abortPendingRequest();\n this.#rendererContext?.dispatchPageLeave();\n\n if (action === \"POP\") {\n const storyboard = matchStoryboard(\n this.#storyboards,\n location.pathname\n );\n // When a browser action of goBack or goForward is performing,\n // force reload when the target page is a page of an outside app.\n if (isOutsideApp(storyboard)) {\n window.location.reload();\n return;\n }\n }\n\n devtoolsHookEmit(\"locationChange\");\n }\n\n return this.#render(location);\n }\n\n async #render(location: NextLocation): Promise<void> {\n const renderId = (this.#renderId = uniqueId(\"render-id-\"));\n\n resetAllComputedMarks();\n clearResolveCache();\n hooks?.flowApi?.clearCollectWidgetContract();\n\n const history = getHistory();\n history.unblock();\n\n // const renderStartTime = performance.now();\n const finishPageView = hooks?.pageView?.create();\n\n const storyboard = matchStoryboard(this.#storyboards, location.pathname);\n\n const previousApp = this.#runtimeContext?.app;\n const currentAppId = storyboard?.app?.id;\n // dynamically change the value of the APP variable, if it's union app\n if (\n window.BOOTSTRAP_UNION_FILE &&\n currentAppId &&\n currentAppId !== previousApp?.id\n ) {\n setAppVariable({\n appId: currentAppId,\n version: storyboard.app.currentVersion!,\n });\n }\n\n if (storyboard?.app) {\n await fulfilStoryboard(storyboard);\n }\n\n const currentApp = (this.#currentApp = storyboard?.app);\n\n setWatermark();\n\n // Storyboard maybe re-assigned, e.g. when open launchpad.\n const appChanged =\n previousApp && currentApp\n ? previousApp.id !== currentApp.id\n : previousApp !== currentApp;\n\n clearExpressionASTCache();\n if (appChanged) {\n clearFunctionASTCache();\n }\n\n // TODO: handle favicon\n\n // Set `Router::#currentApp` before calling `getFeatureFlags()`\n const flags = getRuntime().getFeatureFlags();\n const prevRendererContext = this.#rendererContext;\n\n const redirectTo = (to: string, state?: NextHistoryState): void => {\n finishPageView?.({\n status: \"redirected\",\n });\n this.#rendererContextTrashCan.add(prevRendererContext);\n this.#safeRedirect(to, state, location);\n };\n\n const redirectToLogin = (): void => {\n const to = flags[\"sso-enabled\"] ? \"/sso-auth/login\" : \"/auth/login\";\n setLoginStateCookie(location);\n redirectTo(to, { from: location });\n };\n\n const main = document.querySelector(\"#main-mount-point\") as HTMLElement;\n const portal = document.querySelector(\"#portal-mount-point\") as HTMLElement;\n\n const renderRoot: RenderRoot = {\n tag: RenderTag.ROOT,\n container: main,\n createPortal: portal,\n };\n\n const cleanUpPreviousRender = (): void => {\n unmountTree(main);\n unmountTree(portal);\n\n // Note: redirects can lead to multiple trash renderer contexts.\n this.#rendererContextTrashCan.add(prevRendererContext);\n for (const item of this.#rendererContextTrashCan) {\n if (item) {\n item.dispatchOnUnmount();\n item.dispose();\n }\n }\n this.#rendererContextTrashCan.clear();\n hooks?.messageDispatcher?.reset();\n\n if (appChanged) {\n this.#previousApp = previousApp;\n window.dispatchEvent(\n new CustomEvent(\"app.change\", {\n detail: {\n previousApp,\n currentApp,\n },\n })\n );\n }\n };\n\n setTheme(\n (currentApp &&\n (getLocalAppsTheme()[currentApp.id] || currentApp.theme)) ||\n \"light\"\n );\n setMode(\"default\");\n\n if (currentApp) {\n hooks?.checkInstalledApps?.preCheckInstalledApps(\n storyboard,\n (appId) => !!_internalApiGetAppInBootstrapData(appId)\n );\n\n const routeHelper: RouteHelper = {\n bailout: (output) => {\n if (output.unauthenticated) {\n redirectToLogin();\n return true;\n }\n if (output.redirect) {\n redirectTo(output.redirect.path, output.redirect.state);\n return true;\n }\n // Reset redirect count if no redirect is set.\n this.#redirectCount = 0;\n },\n mergeMenus: async (menuRequests) => {\n const menuConfs = await Promise.all(menuRequests);\n this.#navConfig = mergeMenuConfs(menuConfs);\n window.dispatchEvent(\n new CustomEvent(\"navConfig.change\", { detail: this.#navConfig })\n );\n },\n catch: (error, returnNode) => {\n if (isUnauthenticatedError(error) && !window.NO_AUTH_GUARD) {\n redirectToLogin();\n return;\n } else if (error instanceof HttpAbortError) {\n this.#rendererContextTrashCan.add(prevRendererContext);\n return;\n } else {\n const noAuthGuardLoginPath =\n getRuntime().getMiscSettings().noAuthGuardLoginPath;\n if (isUnauthenticatedError(error) && noAuthGuardLoginPath) {\n redirectTo(noAuthGuardLoginPath as string, { from: location });\n return;\n }\n return {\n failed: true,\n output: {\n node: {\n tag: RenderTag.BRICK,\n type: \"div\",\n properties: {\n textContent: httpErrorToString(error),\n dataset: {\n errorBoundary: \"\",\n },\n style: {\n color: \"var(--color-error)\",\n },\n },\n runtimeContext: null!,\n return: returnNode,\n },\n blockingList: [],\n },\n };\n }\n },\n };\n\n const rendererContext = (this.#rendererContext = new RendererContext(\n \"page\",\n { routeHelper, renderId }\n ));\n\n const runtimeContext: RuntimeContext = (this.#runtimeContext = {\n app: currentApp,\n location,\n query: new URLSearchParams(location.search),\n flags,\n sys: {\n ...hooks?.auth?.getAuth(),\n ...getPageInfo(),\n settings: {\n brand: getRuntime().getBrandSettings(),\n },\n },\n ctxStore: new DataStore(\"CTX\", undefined, rendererContext),\n pendingPermissionsPreCheck: [\n hooks?.checkPermissions?.preCheckPermissions(storyboard),\n ],\n tplStateStoreMap: new Map<string, DataStore<\"STATE\">>(),\n formStateStoreMap: new Map<string, DataStore<\"FORM_STATE\">>(),\n });\n\n this.#navConfig = undefined;\n\n registerCustomTemplates(storyboard);\n registerStoryboardFunctions(storyboard.meta?.functions, currentApp);\n hooks?.flowApi?.collectContract(storyboard.meta?.contracts);\n\n let failed = false;\n let output: RenderOutput;\n let stores: DataStore<\"CTX\" | \"STATE\" | \"FORM_STATE\">[] = [];\n\n try {\n clearMatchedRoutes();\n const rootMenuRequestNode: MenuRequestNode = {};\n output = await renderRoutes(\n renderRoot,\n insertPreviewRoutes(storyboard.routes),\n runtimeContext,\n rendererContext,\n [],\n rootMenuRequestNode\n );\n if (routeHelper.bailout(output)) {\n return;\n }\n\n stores = getDataStores(runtimeContext);\n\n await postAsyncRender(output, runtimeContext, stores);\n\n rootMenuRequestNode.child = output.menuRequestNode;\n rendererContext.setInitialMenuRequestNode(rootMenuRequestNode);\n await routeHelper.mergeMenus(rendererContext.getMenuRequests());\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Router failed:\", error);\n\n const result = routeHelper.catch(error, renderRoot);\n if (!result) {\n return;\n }\n ({ failed, output } = result);\n }\n renderRoot.child = output.node;\n\n cleanUpPreviousRender();\n\n if ((output.route && output.route.type !== \"routes\") || failed) {\n if (!failed) {\n // There is a window to set theme and mode by `lifeCycle.onBeforePageLoad`.\n rendererContext.dispatchBeforePageLoad();\n }\n applyTheme();\n applyMode();\n\n setUIVersion(currentApp?.uiVersion);\n mountTree(renderRoot);\n\n // Scroll to top after each rendering.\n // See https://github.com/ReactTraining/react-router/blob/master/packages/react-router-dom/docs/guides/scroll-restoration.md\n window.scrollTo(0, 0);\n\n if (!failed) {\n rendererContext.dispatchPageLoad();\n rendererContext.dispatchAnchorLoad();\n rendererContext.dispatchOnMount();\n rendererContext.initializeScrollIntoView();\n rendererContext.initializeMediaChange();\n rendererContext.initializeMessageDispatcher();\n\n for (const store of stores) {\n store.mountAsyncData();\n }\n\n finishPageView?.({\n status: \"ok\",\n path: output.path,\n pageTitle: document.title,\n });\n } else {\n finishPageView?.({ status: \"failed\" });\n }\n devtoolsHookEmit(\"rendered\");\n\n return;\n }\n } else if (\n !window.NO_AUTH_GUARD &&\n hooks?.auth &&\n !hooks.auth.isLoggedIn()\n ) {\n // Todo(steve): refine after api-gateway supports fetching storyboards before logged in.\n // Redirect to login if no storyboard is matched.\n redirectToLogin();\n return;\n } else {\n cleanUpPreviousRender();\n }\n\n applyTheme();\n applyMode();\n\n const node: RenderBrick = {\n tag: RenderTag.BRICK,\n type: \"div\",\n properties: {\n textContent: \"Page not found\",\n },\n runtimeContext: null!,\n return: renderRoot,\n };\n renderRoot.child = node;\n\n mountTree(renderRoot);\n\n // Scroll to top after each rendering.\n window.scrollTo(0, 0);\n finishPageView?.({ status: \"not-found\" });\n devtoolsHookEmit(\"rendered\");\n }\n}\n\nfunction mergeMenuConfs(menuConfs: StaticMenuConf[]) {\n const navConfig = {\n breadcrumb: [] as BreadcrumbItemConf[],\n };\n for (const menuConf of menuConfs) {\n const { breadcrumb } = menuConf;\n if (breadcrumb) {\n if (breadcrumb.overwrite) {\n navConfig.breadcrumb = breadcrumb.items;\n } else {\n navConfig.breadcrumb.push(...breadcrumb.items);\n }\n }\n }\n return navConfig;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Router.js","names":["locationsAreEqual","HttpAbortError","clearExpressionASTCache","clearFunctionASTCache","uniqueId","getHistory","getDataStores","postAsyncRender","renderRoutes","DataStore","clearResolveCache","mountTree","unmountTree","isOutsideApp","matchStoryboard","registerStoryboardFunctions","RendererContext","applyMode","applyTheme","getLocalAppsTheme","setMode","setTheme","_internalApiGetAppInBootstrapData","getRuntime","hooks","getPageInfo","resetAllComputedMarks","handleHttpError","isUnauthenticatedError","abortPendingRequest","initAbortController","setLoginStateCookie","registerCustomTemplates","fulfilStoryboard","RenderTag","insertPreviewRoutes","devtoolsHookEmit","setUIVersion","setAppVariable","setWatermark","clearMatchedRoutes","ErrorNode","PageNotFoundError","_storyboards","WeakMap","_rendering","_nextRender","_runtimeContext","_rendererContext","_rendererContextTrashCan","_redirectCount","_renderId","_currentApp","_previousApp","_navConfig","_Router_brand","WeakSet","Router","constructor","storyboards","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","Set","_classPrivateFieldSet","history","window","addEventListener","event","message","_assertClassBrand","_getBlockMessageBeforePageLave","call","preventDefault","returnValue","block","location","action","getRenderId","_classPrivateFieldGet","getRuntimeContext","getRecentApps","currentApp","previousApp","getNavConfig","bootstrap","nextPrevLocation","listen","prevLocation","_queuedRender","catch","detail","_classPrivateFieldGet2","previousMessage","getBlockMessage","dispatchBeforePageLeave","unblock","_safeRedirect","to","state","from","_this$redirectCount","_this$redirectCount2","pathname","search","hash","process","env","NODE_ENV","console","error","Error","replace","next","_preRender","nextRender","undefined","_ref","_prevLocation$state","_location$state","_location$state2","_classPrivateFieldGet4","ignoreRendering","omittedLocationProps","key","notify","noIncremental","_classPrivateFieldGet3","didPerformIncrementalRender","dispatchPageLeave","storyboard","reload","_render","_hooks$flowApi","_hooks$pageView","_classPrivateFieldGet5","_storyboard$app","renderId","flowApi","clearCollectWidgetContract","finishPageView","pageView","create","app","currentAppId","id","BOOTSTRAP_UNION_FILE","appId","version","currentVersion","appChanged","flags","getFeatureFlags","prevRendererContext","redirectTo","status","add","redirectToLogin","main","document","querySelector","portal","renderRoot","tag","ROOT","container","createPortal","cleanUpPreviousRender","_hooks$messageDispatc","item","dispatchOnUnmount","dispose","clear","messageDispatcher","reset","dispatchEvent","CustomEvent","theme","_hooks$checkInstalled","_hooks$auth","_hooks$checkPermissio","_storyboard$meta","_hooks$flowApi2","_storyboard$meta2","checkInstalledApps","preCheckInstalledApps","routeHelper","bailout","output","unauthenticated","redirect","path","mergeMenus","menuRequests","menuConfs","Promise","all","mergeMenuConfs","returnNode","NO_AUTH_GUARD","noAuthGuardLoginPath","getMiscSettings","failed","node","blockingList","rendererContext","runtimeContext","query","URLSearchParams","sys","auth","getAuth","settings","brand","getBrandSettings","ctxStore","pendingPermissionsPreCheck","checkPermissions","preCheckPermissions","tplStateStoreMap","Map","formStateStoreMap","meta","functions","collectContract","contracts","stores","rootMenuRequestNode","routes","child","menuRequestNode","setInitialMenuRequestNode","getMenuRequests","result","route","type","dispatchBeforePageLoad","uiVersion","scrollTo","dispatchPageLoad","dispatchAnchorLoad","dispatchOnMount","initializeScrollIntoView","initializeMediaChange","initializeMessageDispatcher","store","mountAsyncData","pageTitle","title","isLoggedIn","navConfig","breadcrumb","menuConf","overwrite","items","push"],"sources":["../../../src/internal/Router.ts"],"sourcesContent":["import { Action, locationsAreEqual } from \"history\";\nimport type {\n BreadcrumbItemConf,\n MicroApp,\n StaticMenuConf,\n Storyboard,\n} from \"@next-core/types\";\nimport { HttpAbortError } from \"@next-core/http\";\nimport {\n clearExpressionASTCache,\n clearFunctionASTCache,\n} from \"@next-core/cook\";\nimport { uniqueId } from \"lodash\";\nimport { NextHistoryState, NextLocation, getHistory } from \"../history.js\";\nimport {\n RenderOutput,\n getDataStores,\n postAsyncRender,\n renderRoutes,\n} from \"./Renderer.js\";\nimport { DataStore } from \"./data/DataStore.js\";\nimport { clearResolveCache } from \"./data/resolveData.js\";\nimport { mountTree, unmountTree } from \"./mount.js\";\nimport { isOutsideApp, matchStoryboard } from \"./matchStoryboard.js\";\nimport { registerStoryboardFunctions } from \"./compute/StoryboardFunctions.js\";\nimport { RendererContext, RouteHelper } from \"./RendererContext.js\";\nimport {\n applyMode,\n applyTheme,\n getLocalAppsTheme,\n setMode,\n setTheme,\n} from \"../themeAndMode.js\";\nimport {\n _internalApiGetAppInBootstrapData,\n getRuntime,\n hooks,\n} from \"./Runtime.js\";\nimport { getPageInfo } from \"../getPageInfo.js\";\nimport type {\n MenuRequestNode,\n RenderRoot,\n RuntimeContext,\n} from \"./interfaces.js\";\nimport { resetAllComputedMarks } from \"./compute/markAsComputed.js\";\nimport { handleHttpError, isUnauthenticatedError } from \"../handleHttpError.js\";\nimport { abortPendingRequest, initAbortController } from \"./abortController.js\";\nimport { setLoginStateCookie } from \"../setLoginStateCookie.js\";\nimport { registerCustomTemplates } from \"./registerCustomTemplates.js\";\nimport { fulfilStoryboard } from \"./fulfilStoryboard.js\";\nimport { RenderTag } from \"./enums.js\";\nimport { insertPreviewRoutes } from \"./insertPreviewRoutes.js\";\nimport { devtoolsHookEmit } from \"./devtools.js\";\nimport { setUIVersion } from \"../setUIVersion.js\";\nimport { setAppVariable } from \"../setAppVariable.js\";\nimport { setWatermark } from \"../setWatermark.js\";\nimport { clearMatchedRoutes } from \"./routeMatchedMap.js\";\nimport { ErrorNode, PageNotFoundError } from \"./ErrorNode.js\";\n\ntype RenderTask = InitialRenderTask | SubsequentRenderTask;\n\ninterface InitialRenderTask {\n location: NextLocation;\n prevLocation?: undefined;\n action?: undefined;\n}\n\ninterface SubsequentRenderTask {\n location: NextLocation;\n prevLocation: NextLocation;\n action: Action;\n}\n\nexport class Router {\n readonly #storyboards: Storyboard[];\n #rendering = false;\n #nextRender?: RenderTask;\n #runtimeContext?: RuntimeContext;\n #rendererContext?: RendererContext;\n #rendererContextTrashCan = new Set<RendererContext | undefined>();\n #redirectCount = 0;\n #renderId?: string;\n #currentApp?: MicroApp;\n #previousApp?: MicroApp;\n #navConfig?: {\n breadcrumb?: BreadcrumbItemConf[];\n };\n\n constructor(storyboards: Storyboard[]) {\n this.#storyboards = storyboards;\n\n const history = getHistory();\n window.addEventListener(\"beforeunload\", (event) => {\n const message = this.#getBlockMessageBeforePageLave({});\n // See examples in https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onbeforeunload\n if (message) {\n // Cancel the event\n // If you prevent default behavior in Mozilla Firefox prompt will always be shown\n event.preventDefault();\n // Chrome requires returnValue to be set\n event.returnValue = \"\";\n } else {\n // the absence of a returnValue property on the event will guarantee the browser unload happens\n delete event.returnValue;\n }\n });\n\n history.block((location, action) =>\n this.#getBlockMessageBeforePageLave({ location, action })\n );\n }\n\n getRenderId() {\n return this.#renderId;\n }\n\n getRuntimeContext() {\n return this.#runtimeContext;\n }\n\n getRecentApps() {\n return {\n currentApp: this.#currentApp,\n previousApp: this.#previousApp,\n };\n }\n\n getNavConfig() {\n return this.#navConfig;\n }\n\n #getBlockMessageBeforePageLave(detail: {\n location?: NextLocation;\n action?: Action;\n }): string | undefined {\n const history = getHistory();\n const previousMessage = history.getBlockMessage();\n this.#rendererContext?.dispatchBeforePageLeave(detail);\n const message = history.getBlockMessage();\n if (!previousMessage && message) {\n // Auto unblock only if new block was introduced by `onBeforePageLeave`.\n history.unblock();\n }\n return message;\n }\n\n #safeRedirect(\n to: string,\n state: NextHistoryState | undefined,\n from: NextLocation\n ): void {\n if (this.#redirectCount++ > 10) {\n const message = `Infinite redirect detected: from \"${from.pathname}${from.search}${from.hash}\" to \"${to}\"`;\n // istanbul ignore else: error cannot be caught in test\n if (process.env.NODE_ENV === \"test\") {\n // eslint-disable-next-line no-console\n console.error(message);\n return;\n } else {\n throw new Error(message);\n }\n }\n getHistory().replace(to, state);\n }\n\n bootstrap() {\n initAbortController();\n const history = getHistory();\n let nextPrevLocation = history.location;\n history.listen((location, action) => {\n const prevLocation = nextPrevLocation;\n nextPrevLocation = location;\n if (this.#rendering) {\n this.#nextRender = { location, prevLocation, action };\n } else {\n this.#queuedRender({\n location,\n prevLocation,\n action,\n }).catch(handleHttpError);\n }\n });\n return this.#queuedRender({ location: history.location });\n }\n\n async #queuedRender(next: RenderTask) {\n this.#rendering = true;\n try {\n await this.#preRender(next);\n } finally {\n this.#rendering = false;\n if (this.#nextRender) {\n const nextRender = this.#nextRender;\n this.#nextRender = undefined;\n await this.#queuedRender(nextRender);\n }\n }\n }\n\n async #preRender({ location, prevLocation, action }: RenderTask) {\n if (prevLocation) {\n let ignoreRendering: boolean | undefined;\n const omittedLocationProps: Partial<NextLocation> = {\n hash: undefined,\n state: undefined,\n };\n // Omit the \"key\" when checking whether locations are equal in certain situations.\n if (\n // When current location is triggered by browser action of hash link.\n location.key === undefined ||\n // When current location is triggered by browser action of non-push-or-replace,\n // such as goBack or goForward,\n (action === \"POP\" &&\n // and the previous location was triggered by hash link,\n (prevLocation.key === undefined ||\n // or the previous location specified notify false.\n prevLocation.state?.notify === false))\n ) {\n omittedLocationProps.key = undefined;\n }\n if (\n locationsAreEqual(\n { ...prevLocation, ...omittedLocationProps },\n { ...location, ...omittedLocationProps }\n ) ||\n (action !== \"POP\" && location.state?.notify === false)\n ) {\n // Ignore rendering if location not changed except hash, state and optional key.\n // Ignore rendering if notify is `false`.\n ignoreRendering = true;\n }\n\n if (!ignoreRendering && !location.state?.noIncremental) {\n ignoreRendering =\n await this.#rendererContext?.didPerformIncrementalRender(\n location,\n prevLocation\n );\n }\n\n if (ignoreRendering) {\n return;\n }\n\n abortPendingRequest();\n this.#rendererContext?.dispatchPageLeave();\n\n if (action === \"POP\") {\n const storyboard = matchStoryboard(\n this.#storyboards,\n location.pathname\n );\n // When a browser action of goBack or goForward is performing,\n // force reload when the target page is a page of an outside app.\n if (isOutsideApp(storyboard)) {\n window.location.reload();\n return;\n }\n }\n\n devtoolsHookEmit(\"locationChange\");\n }\n\n return this.#render(location);\n }\n\n async #render(location: NextLocation): Promise<void> {\n const renderId = (this.#renderId = uniqueId(\"render-id-\"));\n\n resetAllComputedMarks();\n clearResolveCache();\n hooks?.flowApi?.clearCollectWidgetContract();\n\n const history = getHistory();\n history.unblock();\n\n // const renderStartTime = performance.now();\n const finishPageView = hooks?.pageView?.create();\n\n const storyboard = matchStoryboard(this.#storyboards, location.pathname);\n\n const previousApp = this.#runtimeContext?.app;\n const currentAppId = storyboard?.app?.id;\n // dynamically change the value of the APP variable, if it's union app\n if (\n window.BOOTSTRAP_UNION_FILE &&\n currentAppId &&\n currentAppId !== previousApp?.id\n ) {\n setAppVariable({\n appId: currentAppId,\n version: storyboard.app.currentVersion!,\n });\n }\n\n if (storyboard?.app) {\n await fulfilStoryboard(storyboard);\n }\n\n const currentApp = (this.#currentApp = storyboard?.app);\n\n setWatermark();\n\n // Storyboard maybe re-assigned, e.g. when open launchpad.\n const appChanged =\n previousApp && currentApp\n ? previousApp.id !== currentApp.id\n : previousApp !== currentApp;\n\n clearExpressionASTCache();\n if (appChanged) {\n clearFunctionASTCache();\n }\n\n // TODO: handle favicon\n\n // Set `Router::#currentApp` before calling `getFeatureFlags()`\n const flags = getRuntime().getFeatureFlags();\n const prevRendererContext = this.#rendererContext;\n\n const redirectTo = (to: string, state?: NextHistoryState): void => {\n finishPageView?.({\n status: \"redirected\",\n });\n this.#rendererContextTrashCan.add(prevRendererContext);\n this.#safeRedirect(to, state, location);\n };\n\n const redirectToLogin = (): void => {\n const to = flags[\"sso-enabled\"] ? \"/sso-auth/login\" : \"/auth/login\";\n setLoginStateCookie(location);\n redirectTo(to, { from: location });\n };\n\n const main = document.querySelector(\"#main-mount-point\") as HTMLElement;\n const portal = document.querySelector(\"#portal-mount-point\") as HTMLElement;\n\n const renderRoot: RenderRoot = {\n tag: RenderTag.ROOT,\n container: main,\n createPortal: portal,\n };\n\n const cleanUpPreviousRender = (): void => {\n unmountTree(main);\n unmountTree(portal);\n\n // Note: redirects can lead to multiple trash renderer contexts.\n this.#rendererContextTrashCan.add(prevRendererContext);\n for (const item of this.#rendererContextTrashCan) {\n if (item) {\n item.dispatchOnUnmount();\n item.dispose();\n }\n }\n this.#rendererContextTrashCan.clear();\n hooks?.messageDispatcher?.reset();\n\n if (appChanged) {\n this.#previousApp = previousApp;\n window.dispatchEvent(\n new CustomEvent(\"app.change\", {\n detail: {\n previousApp,\n currentApp,\n },\n })\n );\n }\n };\n\n setTheme(\n (currentApp &&\n (getLocalAppsTheme()[currentApp.id] || currentApp.theme)) ||\n \"light\"\n );\n setMode(\"default\");\n\n if (currentApp) {\n hooks?.checkInstalledApps?.preCheckInstalledApps(\n storyboard,\n (appId) => !!_internalApiGetAppInBootstrapData(appId)\n );\n\n const routeHelper: RouteHelper = {\n bailout: (output) => {\n if (output.unauthenticated) {\n redirectToLogin();\n return true;\n }\n if (output.redirect) {\n redirectTo(output.redirect.path, output.redirect.state);\n return true;\n }\n // Reset redirect count if no redirect is set.\n this.#redirectCount = 0;\n },\n mergeMenus: async (menuRequests) => {\n const menuConfs = await Promise.all(menuRequests);\n this.#navConfig = mergeMenuConfs(menuConfs);\n window.dispatchEvent(\n new CustomEvent(\"navConfig.change\", { detail: this.#navConfig })\n );\n },\n catch: async (error, returnNode) => {\n if (isUnauthenticatedError(error) && !window.NO_AUTH_GUARD) {\n redirectToLogin();\n return;\n } else if (error instanceof HttpAbortError) {\n this.#rendererContextTrashCan.add(prevRendererContext);\n return;\n } else {\n const noAuthGuardLoginPath =\n getRuntime().getMiscSettings().noAuthGuardLoginPath;\n if (isUnauthenticatedError(error) && noAuthGuardLoginPath) {\n redirectTo(noAuthGuardLoginPath as string, { from: location });\n return;\n }\n return {\n failed: true,\n output: {\n node: await ErrorNode(error, returnNode, true),\n blockingList: [],\n },\n };\n }\n },\n };\n\n const rendererContext = (this.#rendererContext = new RendererContext(\n \"page\",\n { routeHelper, renderId }\n ));\n\n const runtimeContext: RuntimeContext = (this.#runtimeContext = {\n app: currentApp,\n location,\n query: new URLSearchParams(location.search),\n flags,\n sys: {\n ...hooks?.auth?.getAuth(),\n ...getPageInfo(),\n settings: {\n brand: getRuntime().getBrandSettings(),\n },\n },\n ctxStore: new DataStore(\"CTX\", undefined, rendererContext),\n pendingPermissionsPreCheck: [\n hooks?.checkPermissions?.preCheckPermissions(storyboard),\n ],\n tplStateStoreMap: new Map<string, DataStore<\"STATE\">>(),\n formStateStoreMap: new Map<string, DataStore<\"FORM_STATE\">>(),\n });\n\n this.#navConfig = undefined;\n\n registerCustomTemplates(storyboard);\n registerStoryboardFunctions(storyboard.meta?.functions, currentApp);\n hooks?.flowApi?.collectContract(storyboard.meta?.contracts);\n\n let failed = false;\n let output: RenderOutput;\n let stores: DataStore<\"CTX\" | \"STATE\" | \"FORM_STATE\">[] = [];\n\n try {\n clearMatchedRoutes();\n const rootMenuRequestNode: MenuRequestNode = {};\n output = await renderRoutes(\n renderRoot,\n insertPreviewRoutes(storyboard.routes),\n runtimeContext,\n rendererContext,\n [],\n rootMenuRequestNode\n );\n if (routeHelper.bailout(output)) {\n return;\n }\n\n stores = getDataStores(runtimeContext);\n\n await postAsyncRender(output, runtimeContext, stores);\n\n rootMenuRequestNode.child = output.menuRequestNode;\n rendererContext.setInitialMenuRequestNode(rootMenuRequestNode);\n await routeHelper.mergeMenus(rendererContext.getMenuRequests());\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Router failed:\", error);\n\n const result = await routeHelper.catch(error, renderRoot);\n if (!result) {\n return;\n }\n ({ failed, output } = result);\n }\n renderRoot.child = output.node;\n\n cleanUpPreviousRender();\n\n if ((output.route && output.route.type !== \"routes\") || failed) {\n if (!failed) {\n // There is a window to set theme and mode by `lifeCycle.onBeforePageLoad`.\n rendererContext.dispatchBeforePageLoad();\n }\n applyTheme();\n applyMode();\n\n setUIVersion(currentApp?.uiVersion);\n mountTree(renderRoot);\n\n // Scroll to top after each rendering.\n // See https://github.com/ReactTraining/react-router/blob/master/packages/react-router-dom/docs/guides/scroll-restoration.md\n window.scrollTo(0, 0);\n\n if (!failed) {\n rendererContext.dispatchPageLoad();\n rendererContext.dispatchAnchorLoad();\n rendererContext.dispatchOnMount();\n rendererContext.initializeScrollIntoView();\n rendererContext.initializeMediaChange();\n rendererContext.initializeMessageDispatcher();\n\n for (const store of stores) {\n store.mountAsyncData();\n }\n\n finishPageView?.({\n status: \"ok\",\n path: output.path,\n pageTitle: document.title,\n });\n } else {\n finishPageView?.({ status: \"failed\" });\n }\n devtoolsHookEmit(\"rendered\");\n\n return;\n }\n } else if (\n !window.NO_AUTH_GUARD &&\n hooks?.auth &&\n !hooks.auth.isLoggedIn()\n ) {\n // Todo(steve): refine after api-gateway supports fetching storyboards before logged in.\n // Redirect to login if no storyboard is matched.\n redirectToLogin();\n return;\n } else {\n cleanUpPreviousRender();\n }\n\n applyTheme();\n applyMode();\n\n const node = await ErrorNode(\n new PageNotFoundError(currentApp ? \"page not found\" : \"app not found\"),\n renderRoot,\n true\n );\n renderRoot.child = node;\n\n mountTree(renderRoot);\n\n // Scroll to top after each rendering.\n window.scrollTo(0, 0);\n finishPageView?.({ status: \"not-found\" });\n devtoolsHookEmit(\"rendered\");\n }\n}\n\nfunction mergeMenuConfs(menuConfs: StaticMenuConf[]) {\n const navConfig = {\n breadcrumb: [] as BreadcrumbItemConf[],\n };\n for (const menuConf of menuConfs) {\n const { breadcrumb } = menuConf;\n if (breadcrumb) {\n if (breadcrumb.overwrite) {\n navConfig.breadcrumb = breadcrumb.items;\n } else {\n navConfig.breadcrumb.push(...breadcrumb.items);\n }\n }\n }\n return navConfig;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,5 @@
1
- import _classPrivateMethodInitSpec from "@babel/runtime/helpers/classPrivateMethodInitSpec";
2
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
2
  import _classPrivateFieldInitSpec from "@babel/runtime/helpers/classPrivateFieldInitSpec";
4
- import _assertClassBrand from "@babel/runtime/helpers/assertClassBrand";
5
3
  import _classPrivateFieldSet from "@babel/runtime/helpers/classPrivateFieldSet2";
6
4
  import _classPrivateFieldGet from "@babel/runtime/helpers/classPrivateFieldGet2";
7
5
  import { i18n, initializeI18n } from "@next-core/i18n";
@@ -79,10 +77,8 @@ function getRuntimeV2Factory() {
79
77
  export const getRuntime = getRuntimeV2Factory() || getRuntimeV3;
80
78
  var _initialized = /*#__PURE__*/new WeakMap();
81
79
  var _bootstrapped = /*#__PURE__*/new WeakMap();
82
- var _Runtime_brand = /*#__PURE__*/new WeakSet();
83
80
  export class Runtime {
84
81
  constructor() {
85
- _classPrivateMethodInitSpec(this, _Runtime_brand);
86
82
  _classPrivateFieldInitSpec(this, _initialized, false);
87
83
  _classPrivateFieldInitSpec(this, _bootstrapped, false);
88
84
  _defineProperty(this, "version", 3);
@@ -98,7 +94,7 @@ export class Runtime {
98
94
  const {
99
95
  notification,
100
96
  dialog
101
- } = _assertClassBrand(_Runtime_brand, this, _getPresetBricks).call(this);
97
+ } = _internalApiGetPresetBricks();
102
98
  if (notification !== false) {
103
99
  loadNotificationService(notification ?? "basic.show-notification", this.loadBricks);
104
100
  }
@@ -183,10 +179,6 @@ export class Runtime {
183
179
  return loadBricksImperatively(bricks, getBrickPackages());
184
180
  }
185
181
  }
186
- function _getPresetBricks() {
187
- var _bootstrapData10;
188
- return ((_bootstrapData10 = bootstrapData) === null || _bootstrapData10 === void 0 || (_bootstrapData10 = _bootstrapData10.settings) === null || _bootstrapData10 === void 0 ? void 0 : _bootstrapData10.presetBricks) ?? {};
189
- }
190
182
  function normalizeBootstrapData(data) {
191
183
  if (isObject(data.settings)) {
192
184
  deepFreeze(data.settings);
@@ -216,21 +208,25 @@ export function getBrickPackages() {
216
208
  processedBrickPackages ?? (processedBrickPackages = processPublicDepsPackages(((_bootstrapData7 = bootstrapData) === null || _bootstrapData7 === void 0 ? void 0 : _bootstrapData7.brickPackages) ?? injectedBrickPackages ?? window.STANDALONE_BRICK_PACKAGES ?? [], window.PUBLIC_DEPS))
217
209
  );
218
210
  }
211
+ export function _internalApiGetPresetBricks() {
212
+ var _bootstrapData8;
213
+ return ((_bootstrapData8 = bootstrapData) === null || _bootstrapData8 === void 0 || (_bootstrapData8 = _bootstrapData8.settings) === null || _bootstrapData8 === void 0 ? void 0 : _bootstrapData8.presetBricks) ?? {};
214
+ }
219
215
  export function _internalApiGetRenderId() {
220
216
  var _router7;
221
217
  return (_router7 = router) === null || _router7 === void 0 ? void 0 : _router7.getRenderId();
222
218
  }
223
219
  export function _internalApiMatchStoryboard(pathname) {
224
- var _bootstrapData8;
225
- return matchStoryboard(((_bootstrapData8 = bootstrapData) === null || _bootstrapData8 === void 0 ? void 0 : _bootstrapData8.storyboards) ?? [], pathname);
220
+ var _bootstrapData9;
221
+ return matchStoryboard(((_bootstrapData9 = bootstrapData) === null || _bootstrapData9 === void 0 ? void 0 : _bootstrapData9.storyboards) ?? [], pathname);
226
222
  }
227
223
  export function _internalApiGetRuntimeContext() {
228
224
  var _router8;
229
225
  return (_router8 = router) === null || _router8 === void 0 ? void 0 : _router8.getRuntimeContext();
230
226
  }
231
227
  export function _internalApiGetStoryboardInBootstrapData(appId) {
232
- var _bootstrapData9;
233
- return (_bootstrapData9 = bootstrapData) === null || _bootstrapData9 === void 0 || (_bootstrapData9 = _bootstrapData9.storyboards) === null || _bootstrapData9 === void 0 ? void 0 : _bootstrapData9.find(storyboard => storyboard.app.id === appId);
228
+ var _bootstrapData10;
229
+ return (_bootstrapData10 = bootstrapData) === null || _bootstrapData10 === void 0 || (_bootstrapData10 = _bootstrapData10.storyboards) === null || _bootstrapData10 === void 0 ? void 0 : _bootstrapData10.find(storyboard => storyboard.app.id === appId);
234
230
  }
235
231
  export function _internalApiGetAppInBootstrapData(appId) {
236
232
  var _internalApiGetStoryb;
@@ -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","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","_router5","baseTitle","title","localeTitle","getNavConfig","_router6","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","_router7","getRenderId","_internalApiMatchStoryboard","pathname","_bootstrapData8","_internalApiGetRuntimeContext","_router8","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\n document.title =\n (router?.getRecentApps().currentApp?.localeTitle as string) ||\n (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":[]}
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","constructor","_classPrivateFieldInitSpec","_defineProperty","initialize","data","_data$settings","_classPrivateFieldGet","_classPrivateFieldSet","normalizeBootstrapData","notification","dialog","_internalApiGetPresetBricks","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","_router5","baseTitle","title","localeTitle","getNavConfig","_router6","bricks","getBrickPackages","brickPackages","processPublicDepsPackages","pubDeps","bricksMap","Map","forEach","pkg","pkgName","filePath","split","has","set","Array","from","values","_bootstrapData7","window","STANDALONE_BRICK_PACKAGES","PUBLIC_DEPS","_bootstrapData8","presetBricks","_internalApiGetRenderId","_router7","getRenderId","_internalApiMatchStoryboard","pathname","_bootstrapData9","_internalApiGetRuntimeContext","_router8","getRuntimeContext","_internalApiGetStoryboardInBootstrapData","_bootstrapData10","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 } = _internalApiGetPresetBricks();\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\n document.title =\n (router?.getRecentApps().currentApp?.localeTitle as string) ||\n (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\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 _internalApiGetPresetBricks() {\n return (bootstrapData?.settings?.presetBricks ?? {}) as {\n notification?: string | false;\n dialog?: string | false;\n error?: string | false;\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":[]}
@@ -3,19 +3,40 @@ export let K = /*#__PURE__*/function (K) {
3
3
  K["SOMETHING_WENT_WRONG"] = "SOMETHING_WENT_WRONG";
4
4
  K["LOGIN_TIMEOUT_MESSAGE"] = "LOGIN_TIMEOUT_MESSAGE";
5
5
  K["NETWORK_ERROR"] = "NETWORK_ERROR";
6
+ K["LICENSE_EXPIRED"] = "LICENSE_EXPIRED";
7
+ K["NO_PERMISSION"] = "NO_PERMISSION";
8
+ K["PAGE_NOT_FOUND"] = "PAGE_NOT_FOUND";
9
+ K["APP_NOT_FOUND"] = "APP_NOT_FOUND";
10
+ K["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
11
+ K["GO_BACK_TO_PREVIOUS_PAGE"] = "GO_BACK_TO_PREVIOUS_PAGE";
12
+ K["GO_BACK_HOME"] = "GO_BACK_HOME";
6
13
  return K;
7
14
  }({});
8
15
  const en = {
9
16
  [K.REQUEST_FAILED]: "Request Failed",
10
17
  [K.SOMETHING_WENT_WRONG]: "Something went wrong!",
11
18
  [K.LOGIN_TIMEOUT_MESSAGE]: "You haven't logged in or your login session has expired. Login right now?",
12
- [K.NETWORK_ERROR]: "Network error, please check your network."
19
+ [K.NETWORK_ERROR]: "Network error, please check your network.",
20
+ [K.LICENSE_EXPIRED]: "The license authorization has expired, please contact the platform administrator",
21
+ [K.NO_PERMISSION]: "Unauthorized access, unable to retrieve the required resources for this page",
22
+ [K.PAGE_NOT_FOUND]: "Page not found, please check the URL",
23
+ [K.APP_NOT_FOUND]: "App not found, maybe the URL is wrong or you don't have permission to access",
24
+ [K.UNKNOWN_ERROR]: "Oops! Something went wrong",
25
+ [K.GO_BACK_TO_PREVIOUS_PAGE]: "Go back to previous page",
26
+ [K.GO_BACK_HOME]: "Go back to home page"
13
27
  };
14
28
  const zh = {
15
29
  [K.REQUEST_FAILED]: "请求失败",
16
30
  [K.SOMETHING_WENT_WRONG]: "出现了一些问题!",
17
31
  [K.LOGIN_TIMEOUT_MESSAGE]: "您还未登录或登录信息已过期,现在重新登录?",
18
- [K.NETWORK_ERROR]: "网络错误,请检查您的网络连接。"
32
+ [K.NETWORK_ERROR]: "网络错误,请检查您的网络连接。",
33
+ [K.LICENSE_EXPIRED]: "License 授权失效,请联系平台管理员",
34
+ [K.NO_PERMISSION]: "没有权限,无法获取页面所需要的资源",
35
+ [K.PAGE_NOT_FOUND]: "请求的页面未找到,请确认 URL 是否正确",
36
+ [K.APP_NOT_FOUND]: "请求的微应用无法找到, 可能是 URL 错误或者无权限访问",
37
+ [K.UNKNOWN_ERROR]: "糟糕!页面出现了一些问题",
38
+ [K.GO_BACK_TO_PREVIOUS_PAGE]: "回到上一页",
39
+ [K.GO_BACK_HOME]: "回到首页"
19
40
  };
20
41
  export const NS = "core/runtime";
21
42
  export const locales = {
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","names":["K","en","REQUEST_FAILED","SOMETHING_WENT_WRONG","LOGIN_TIMEOUT_MESSAGE","NETWORK_ERROR","zh","NS","locales"],"sources":["../../../src/internal/i18n.ts"],"sourcesContent":["export enum K {\n REQUEST_FAILED = \"REQUEST_FAILED\",\n SOMETHING_WENT_WRONG = \"SOMETHING_WENT_WRONG\",\n LOGIN_TIMEOUT_MESSAGE = \"LOGIN_TIMEOUT_MESSAGE\",\n NETWORK_ERROR = \"NETWORK_ERROR\",\n}\n\nconst en: Locale = {\n [K.REQUEST_FAILED]: \"Request Failed\",\n [K.SOMETHING_WENT_WRONG]: \"Something went wrong!\",\n [K.LOGIN_TIMEOUT_MESSAGE]:\n \"You haven't logged in or your login session has expired. Login right now?\",\n [K.NETWORK_ERROR]: \"Network error, please check your network.\",\n};\n\nconst zh: Locale = {\n [K.REQUEST_FAILED]: \"请求失败\",\n [K.SOMETHING_WENT_WRONG]: \"出现了一些问题!\",\n [K.LOGIN_TIMEOUT_MESSAGE]: \"您还未登录或登录信息已过期,现在重新登录?\",\n [K.NETWORK_ERROR]: \"网络错误,请检查您的网络连接。\",\n};\n\nexport const NS = \"core/runtime\";\n\nexport const locales = { en, zh };\n\ntype Locale = { [key in K]: string };\n"],"mappings":"AAAA,WAAYA,CAAC,0BAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAAA,OAADA,CAAC;AAAA;AAOb,MAAMC,EAAU,GAAG;EACjB,CAACD,CAAC,CAACE,cAAc,GAAG,gBAAgB;EACpC,CAACF,CAAC,CAACG,oBAAoB,GAAG,uBAAuB;EACjD,CAACH,CAAC,CAACI,qBAAqB,GACtB,2EAA2E;EAC7E,CAACJ,CAAC,CAACK,aAAa,GAAG;AACrB,CAAC;AAED,MAAMC,EAAU,GAAG;EACjB,CAACN,CAAC,CAACE,cAAc,GAAG,MAAM;EAC1B,CAACF,CAAC,CAACG,oBAAoB,GAAG,UAAU;EACpC,CAACH,CAAC,CAACI,qBAAqB,GAAG,uBAAuB;EAClD,CAACJ,CAAC,CAACK,aAAa,GAAG;AACrB,CAAC;AAED,OAAO,MAAME,EAAE,GAAG,cAAc;AAEhC,OAAO,MAAMC,OAAO,GAAG;EAAEP,EAAE;EAAEK;AAAG,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"i18n.js","names":["K","en","REQUEST_FAILED","SOMETHING_WENT_WRONG","LOGIN_TIMEOUT_MESSAGE","NETWORK_ERROR","LICENSE_EXPIRED","NO_PERMISSION","PAGE_NOT_FOUND","APP_NOT_FOUND","UNKNOWN_ERROR","GO_BACK_TO_PREVIOUS_PAGE","GO_BACK_HOME","zh","NS","locales"],"sources":["../../../src/internal/i18n.ts"],"sourcesContent":["export enum K {\n REQUEST_FAILED = \"REQUEST_FAILED\",\n SOMETHING_WENT_WRONG = \"SOMETHING_WENT_WRONG\",\n LOGIN_TIMEOUT_MESSAGE = \"LOGIN_TIMEOUT_MESSAGE\",\n NETWORK_ERROR = \"NETWORK_ERROR\",\n LICENSE_EXPIRED = \"LICENSE_EXPIRED\",\n NO_PERMISSION = \"NO_PERMISSION\",\n PAGE_NOT_FOUND = \"PAGE_NOT_FOUND\",\n APP_NOT_FOUND = \"APP_NOT_FOUND\",\n UNKNOWN_ERROR = \"UNKNOWN_ERROR\",\n GO_BACK_TO_PREVIOUS_PAGE = \"GO_BACK_TO_PREVIOUS_PAGE\",\n GO_BACK_HOME = \"GO_BACK_HOME\",\n}\n\nconst en: Locale = {\n [K.REQUEST_FAILED]: \"Request Failed\",\n [K.SOMETHING_WENT_WRONG]: \"Something went wrong!\",\n [K.LOGIN_TIMEOUT_MESSAGE]:\n \"You haven't logged in or your login session has expired. Login right now?\",\n [K.NETWORK_ERROR]: \"Network error, please check your network.\",\n [K.LICENSE_EXPIRED]:\n \"The license authorization has expired, please contact the platform administrator\",\n [K.NO_PERMISSION]:\n \"Unauthorized access, unable to retrieve the required resources for this page\",\n [K.PAGE_NOT_FOUND]: \"Page not found, please check the URL\",\n [K.APP_NOT_FOUND]:\n \"App not found, maybe the URL is wrong or you don't have permission to access\",\n [K.UNKNOWN_ERROR]: \"Oops! Something went wrong\",\n [K.GO_BACK_TO_PREVIOUS_PAGE]: \"Go back to previous page\",\n [K.GO_BACK_HOME]: \"Go back to home page\",\n};\n\nconst zh: Locale = {\n [K.REQUEST_FAILED]: \"请求失败\",\n [K.SOMETHING_WENT_WRONG]: \"出现了一些问题!\",\n [K.LOGIN_TIMEOUT_MESSAGE]: \"您还未登录或登录信息已过期,现在重新登录?\",\n [K.NETWORK_ERROR]: \"网络错误,请检查您的网络连接。\",\n [K.LICENSE_EXPIRED]: \"License 授权失效,请联系平台管理员\",\n [K.NO_PERMISSION]: \"没有权限,无法获取页面所需要的资源\",\n [K.PAGE_NOT_FOUND]: \"请求的页面未找到,请确认 URL 是否正确\",\n [K.APP_NOT_FOUND]: \"请求的微应用无法找到, 可能是 URL 错误或者无权限访问\",\n [K.UNKNOWN_ERROR]: \"糟糕!页面出现了一些问题\",\n [K.GO_BACK_TO_PREVIOUS_PAGE]: \"回到上一页\",\n [K.GO_BACK_HOME]: \"回到首页\",\n};\n\nexport const NS = \"core/runtime\";\n\nexport const locales = { en, zh };\n\ntype Locale = { [key in K]: string };\n"],"mappings":"AAAA,WAAYA,CAAC,0BAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAADA,CAAC;EAAA,OAADA,CAAC;AAAA;AAcb,MAAMC,EAAU,GAAG;EACjB,CAACD,CAAC,CAACE,cAAc,GAAG,gBAAgB;EACpC,CAACF,CAAC,CAACG,oBAAoB,GAAG,uBAAuB;EACjD,CAACH,CAAC,CAACI,qBAAqB,GACtB,2EAA2E;EAC7E,CAACJ,CAAC,CAACK,aAAa,GAAG,2CAA2C;EAC9D,CAACL,CAAC,CAACM,eAAe,GAChB,kFAAkF;EACpF,CAACN,CAAC,CAACO,aAAa,GACd,8EAA8E;EAChF,CAACP,CAAC,CAACQ,cAAc,GAAG,sCAAsC;EAC1D,CAACR,CAAC,CAACS,aAAa,GACd,8EAA8E;EAChF,CAACT,CAAC,CAACU,aAAa,GAAG,4BAA4B;EAC/C,CAACV,CAAC,CAACW,wBAAwB,GAAG,0BAA0B;EACxD,CAACX,CAAC,CAACY,YAAY,GAAG;AACpB,CAAC;AAED,MAAMC,EAAU,GAAG;EACjB,CAACb,CAAC,CAACE,cAAc,GAAG,MAAM;EAC1B,CAACF,CAAC,CAACG,oBAAoB,GAAG,UAAU;EACpC,CAACH,CAAC,CAACI,qBAAqB,GAAG,uBAAuB;EAClD,CAACJ,CAAC,CAACK,aAAa,GAAG,iBAAiB;EACpC,CAACL,CAAC,CAACM,eAAe,GAAG,uBAAuB;EAC5C,CAACN,CAAC,CAACO,aAAa,GAAG,mBAAmB;EACtC,CAACP,CAAC,CAACQ,cAAc,GAAG,uBAAuB;EAC3C,CAACR,CAAC,CAACS,aAAa,GAAG,+BAA+B;EAClD,CAACT,CAAC,CAACU,aAAa,GAAG,cAAc;EACjC,CAACV,CAAC,CAACW,wBAAwB,GAAG,OAAO;EACrC,CAACX,CAAC,CAACY,YAAY,GAAG;AACpB,CAAC;AAED,OAAO,MAAME,EAAE,GAAG,cAAc;AAEhC,OAAO,MAAMC,OAAO,GAAG;EAAEd,EAAE;EAAEY;AAAG,CAAC","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import type { RenderChildNode, RenderReturnNode } from "./interfaces.js";
2
+ export declare class PageNotFoundError extends Error {
3
+ constructor(message: "page not found" | "app not found");
4
+ }
5
+ /**
6
+ * Will always resolve
7
+ */
8
+ export declare function ErrorNode(error: unknown, returnNode: RenderReturnNode, pageLevel?: boolean): Promise<RenderChildNode>;
@@ -12,10 +12,11 @@ export interface RendererContextOptions {
12
12
  export interface RouteHelper {
13
13
  bailout: (output: RenderOutput) => true | undefined;
14
14
  mergeMenus: (menuRequests: Promise<StaticMenuConf>[]) => Promise<void>;
15
- catch: (error: unknown, returnNode: RenderReturnNode) => undefined | {
15
+ /** Will always resolve */
16
+ catch: (error: unknown, returnNode: RenderReturnNode) => Promise<undefined | {
16
17
  failed: true;
17
18
  output: RenderOutput;
18
- };
19
+ }>;
19
20
  }
20
21
  export declare class RendererContext {
21
22
  #private;
@@ -32,10 +33,13 @@ export declare class RendererContext {
32
33
  getMenuRequests(): Promise<StaticMenuConf>[];
33
34
  reMergeMenuRequestNodes(parentMenuRequestNode: MenuRequestNode, routes: RouteConf[], menuRequestNode?: MenuRequestNode): Promise<void>;
34
35
  reBailout(output: RenderOutput): true | undefined;
35
- reCatch(error: unknown, returnNode: RenderReturnNode): {
36
+ /**
37
+ * Will always resolve
38
+ */
39
+ reCatch(error: unknown, returnNode: RenderReturnNode): Promise<{
36
40
  failed: true;
37
41
  output: RenderOutput;
38
- } | undefined;
42
+ } | undefined>;
39
43
  didPerformIncrementalRender(location: Location<NextHistoryState>, prevLocation: Location<NextHistoryState>): Promise<boolean>;
40
44
  /**
41
45
  * When `callback` resolved to `true` which means incremental rendering is performed,
@@ -99,6 +99,11 @@ export declare class Runtime {
99
99
  loadBricks(bricks: string[] | Set<string>): Promise<void>;
100
100
  }
101
101
  export declare function getBrickPackages(): BrickPackage[];
102
+ export declare function _internalApiGetPresetBricks(): {
103
+ notification?: string | false;
104
+ dialog?: string | false;
105
+ error?: string | false;
106
+ };
102
107
  export declare function _internalApiGetRenderId(): string | undefined;
103
108
  export declare function _internalApiMatchStoryboard(pathname: string): RuntimeStoryboard | undefined;
104
109
  export declare function _internalApiGetRuntimeContext(): RuntimeContext | undefined;
@@ -2,7 +2,14 @@ export declare enum K {
2
2
  REQUEST_FAILED = "REQUEST_FAILED",
3
3
  SOMETHING_WENT_WRONG = "SOMETHING_WENT_WRONG",
4
4
  LOGIN_TIMEOUT_MESSAGE = "LOGIN_TIMEOUT_MESSAGE",
5
- NETWORK_ERROR = "NETWORK_ERROR"
5
+ NETWORK_ERROR = "NETWORK_ERROR",
6
+ LICENSE_EXPIRED = "LICENSE_EXPIRED",
7
+ NO_PERMISSION = "NO_PERMISSION",
8
+ PAGE_NOT_FOUND = "PAGE_NOT_FOUND",
9
+ APP_NOT_FOUND = "APP_NOT_FOUND",
10
+ UNKNOWN_ERROR = "UNKNOWN_ERROR",
11
+ GO_BACK_TO_PREVIOUS_PAGE = "GO_BACK_TO_PREVIOUS_PAGE",
12
+ GO_BACK_HOME = "GO_BACK_HOME"
6
13
  }
7
14
  export declare const NS = "core/runtime";
8
15
  export declare const locales: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@next-core/runtime",
3
- "version": "1.54.10",
3
+ "version": "1.54.12",
4
4
  "homepage": "https://github.com/easyops-cn/next-core/tree/v3/packages/runtime",
5
5
  "license": "GPL-3.0",
6
6
  "repository": {
@@ -49,7 +49,7 @@
49
49
  "@next-core/http": "^1.2.6",
50
50
  "@next-core/i18n": "^1.0.62",
51
51
  "@next-core/inject": "^1.0.41",
52
- "@next-core/loader": "^1.6.6",
52
+ "@next-core/loader": "^1.6.7",
53
53
  "@next-core/supply": "^2.1.20",
54
54
  "@next-core/types": "^1.12.1",
55
55
  "@next-core/utils": "^1.7.20",
@@ -67,5 +67,5 @@
67
67
  "@next-core/build-next-libs": "^1.0.18",
68
68
  "@next-core/test-next": "^1.1.5"
69
69
  },
70
- "gitHead": "2c7aeefaca5cb1e98dacd20553e0e50cde4865b4"
70
+ "gitHead": "910762b07eccf013728a8e5f963af6ad794c9f16"
71
71
  }