@next-core/runtime 1.2.2 → 1.3.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.
Files changed (45) hide show
  1. package/dist/cjs/Dialog.js +49 -0
  2. package/dist/cjs/Dialog.js.map +1 -0
  3. package/dist/cjs/Notification.js +30 -0
  4. package/dist/cjs/Notification.js.map +1 -0
  5. package/dist/cjs/handleHttpError.js +33 -18
  6. package/dist/cjs/handleHttpError.js.map +1 -1
  7. package/dist/cjs/index.js +17 -1
  8. package/dist/cjs/index.js.map +1 -1
  9. package/dist/cjs/internal/CustomTemplates/utils.js +1 -1
  10. package/dist/cjs/internal/CustomTemplates/utils.js.map +1 -1
  11. package/dist/cjs/internal/Renderer.js +2 -3
  12. package/dist/cjs/internal/Renderer.js.map +1 -1
  13. package/dist/cjs/internal/Runtime.js +7 -1
  14. package/dist/cjs/internal/Runtime.js.map +1 -1
  15. package/dist/cjs/internal/bindListeners.js +7 -2
  16. package/dist/cjs/internal/bindListeners.js.map +1 -1
  17. package/dist/cjs/internal/i18n.js +31 -0
  18. package/dist/cjs/internal/i18n.js.map +1 -0
  19. package/dist/cjs/internal/secret_internals.js +5 -0
  20. package/dist/cjs/internal/secret_internals.js.map +1 -1
  21. package/dist/esm/Dialog.js +40 -0
  22. package/dist/esm/Dialog.js.map +1 -0
  23. package/dist/esm/Notification.js +21 -0
  24. package/dist/esm/Notification.js.map +1 -0
  25. package/dist/esm/handleHttpError.js +32 -17
  26. package/dist/esm/handleHttpError.js.map +1 -1
  27. package/dist/esm/index.js +2 -0
  28. package/dist/esm/index.js.map +1 -1
  29. package/dist/esm/internal/CustomTemplates/utils.js +1 -1
  30. package/dist/esm/internal/CustomTemplates/utils.js.map +1 -1
  31. package/dist/esm/internal/Renderer.js +2 -3
  32. package/dist/esm/internal/Renderer.js.map +1 -1
  33. package/dist/esm/internal/Runtime.js +7 -1
  34. package/dist/esm/internal/Runtime.js.map +1 -1
  35. package/dist/esm/internal/bindListeners.js +7 -2
  36. package/dist/esm/internal/bindListeners.js.map +1 -1
  37. package/dist/esm/internal/i18n.js +22 -0
  38. package/dist/esm/internal/i18n.js.map +1 -0
  39. package/dist/esm/internal/secret_internals.js +5 -0
  40. package/dist/esm/internal/secret_internals.js.map +1 -1
  41. package/dist/types/Dialog.d.ts +14 -0
  42. package/dist/types/Notification.d.ts +10 -0
  43. package/dist/types/index.d.ts +2 -0
  44. package/dist/types/internal/i18n.d.ts +14 -0
  45. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"secret_internals.js","names":["flushStableLoadBricks","loadBricksImperatively","pick","_internalApiGetRuntimeContext","_internalApiGetStoryboardInBootstrapData","_internalApiSetBootstrapData","getBrickPackages","renderBrick","renderBricks","RendererContext","mountTree","unmountTree","httpErrorToString","applyMode","applyTheme","setMode","setTheme","RenderTag","computeRealValue","isStrictMode","warnAboutStrictMode","customTemplates","registerAppI18n","renderUseBrick","_x","_x2","_renderUseBrick","apply","arguments","_asyncToGenerator","useBrick","data","_runtimeContext$tplSt","_output$node","tplStateStoreScope","runtimeContext","_objectSpread","pendingPermissionsPreCheck","tplStateStoreMap","Map","rendererContext","renderRoot","tag","ROOT","createPortal","transform","strict","output","properties","Promise","all","blockingList","map","store","waitForAll","node","portal","Error","child","tagName","type","mountUseBrick","_ref","element","portalRoot","document","querySelector","createElement","appendChild","dispatchOnMount","initializeScrollIntoView","initializeMediaChange","unmountUseBrick","_ref2","mountResult","remove","dispatchOnUnmount","dispose","_rendererContext","initializePreviewBootstrap","bootstrapData","renderPreviewBricks","_x3","_x4","_renderPreviewBricks","bricks","mountPoints","options","length","undefined","previousRendererContext","container","main","failed","push","values","error","BRICK","textContent","return","menuRequests","sandbox","_options$theme","theme","dispatchBeforePageLoad","window","scrollTo","dispatchPageLoad","legacyDoTransform","to","noInject","loadBricks","updateStoryboard","appId","storyboardPatch","storyboard","Object","assign","$$fulfilling","$$fulfilled","$$registerCustomTemplateProcessed","updateStoryboardByRoute","newRoute","match","getKey","route","concat","path","exact","replaceRoute","routes","key","routeKey","unshift","updateStoryboardByTemplate","newTemplate","settings","tplName","name","define","proxy","state","updateTemplatePreviewSettings","templateId","_updatePreviewSettings","brick","updateStoryboardBySnippet","snippetData","_snippetData$bricks","snippetId","updateSnippetPreviewSettings","previewRouteIndex","findIndex","newPreviewRoute","menu","splice"],"sources":["../../../src/internal/secret_internals.ts"],"sourcesContent":["import type {\n BootstrapData,\n BrickConf,\n CustomTemplate,\n RouteConf,\n SiteTheme,\n Storyboard,\n UseSingleBrickConf,\n} from \"@next-core/types\";\nimport {\n flushStableLoadBricks,\n loadBricksImperatively,\n} from \"@next-core/loader\";\nimport { pick } from \"lodash\";\nimport {\n _internalApiGetRuntimeContext,\n _internalApiGetStoryboardInBootstrapData,\n _internalApiSetBootstrapData,\n getBrickPackages,\n} from \"./Runtime.js\";\nimport { RenderOutput, renderBrick, renderBricks } from \"./Renderer.js\";\nimport { RendererContext } from \"./RendererContext.js\";\nimport type { DataStore } from \"./data/DataStore.js\";\nimport type { RenderRoot, RuntimeContext } from \"./interfaces.js\";\nimport { mountTree, unmountTree } from \"./mount.js\";\nimport { httpErrorToString } from \"../handleHttpError.js\";\nimport { applyMode, applyTheme, setMode, setTheme } from \"../themeAndMode.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\";\n\nexport interface RenderUseBrickResult {\n tagName: string | null;\n renderRoot: RenderRoot;\n rendererContext: RendererContext;\n}\n\nexport async function renderUseBrick(\n useBrick: UseSingleBrickConf,\n data: unknown\n): Promise<RenderUseBrickResult> {\n const tplStateStoreScope: DataStore<\"STATE\">[] = [];\n const runtimeContext: RuntimeContext = {\n ..._internalApiGetRuntimeContext()!,\n data,\n pendingPermissionsPreCheck: [],\n tplStateStoreScope,\n };\n\n runtimeContext.tplStateStoreMap ??= new Map();\n\n const rendererContext = new RendererContext(\"useBrick\");\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\n ? useBrick\n : {\n ...useBrick,\n properties: {\n ...useBrick.properties,\n ...transform,\n },\n },\n runtimeContext,\n rendererContext\n );\n\n flushStableLoadBricks();\n\n await Promise.all([\n ...output.blockingList,\n // Wait for local tpl state stores belong to current `useBrick` only.\n ...tplStateStoreScope.map((store) => store.waitForAll()),\n ...runtimeContext.pendingPermissionsPreCheck,\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 };\n}\n\nexport interface MountUseBrickResult {\n portal?: HTMLElement;\n}\n\nexport function mountUseBrick(\n { renderRoot, rendererContext }: 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\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\nlet _rendererContext: RendererContext;\n\nexport function initializePreviewBootstrap(\n bootstrapData: Partial<BootstrapData>\n) {\n _internalApiSetBootstrapData(bootstrapData);\n}\n\nexport async function renderPreviewBricks(\n bricks: BrickConf[],\n mountPoints: {\n main: HTMLElement;\n portal: HTMLElement;\n },\n options: {\n sandbox?: boolean;\n theme?: SiteTheme;\n } = {}\n) {\n const runtimeContext = {\n pendingPermissionsPreCheck: [],\n tplStateStoreMap: new Map<string, DataStore<\"STATE\">>(),\n } as Partial<RuntimeContext> as RuntimeContext;\n\n const previousRendererContext = _rendererContext;\n const rendererContext = (_rendererContext = new RendererContext(\"router\"));\n\n const renderRoot: RenderRoot = {\n tag: RenderTag.ROOT,\n container: mountPoints.main,\n createPortal: mountPoints.portal,\n };\n\n let failed = false;\n let output: RenderOutput;\n try {\n output = await renderBricks(\n renderRoot,\n bricks,\n runtimeContext,\n rendererContext\n );\n\n output.blockingList.push(\n ...[...runtimeContext.tplStateStoreMap.values()].map((store) =>\n store.waitForAll()\n ),\n ...runtimeContext.pendingPermissionsPreCheck\n );\n\n flushStableLoadBricks();\n\n await Promise.all(output.blockingList);\n } catch (error) {\n failed = true;\n output = {\n node: {\n tag: RenderTag.BRICK,\n type: \"div\",\n properties: {\n textContent: httpErrorToString(error),\n },\n return: renderRoot,\n runtimeContext: null!,\n },\n blockingList: [],\n menuRequests: [],\n };\n }\n\n renderRoot.child = output.node;\n\n previousRendererContext?.dispose();\n unmountTree(mountPoints.main);\n unmountTree(mountPoints.portal);\n\n if (options.sandbox) {\n setTheme(options.theme ?? \"light\");\n setMode(\"default\");\n\n if (!failed) {\n rendererContext.dispatchBeforePageLoad();\n }\n\n applyTheme();\n applyMode();\n }\n\n mountTree(renderRoot);\n\n if (options.sandbox) {\n window.scrollTo(0, 0);\n }\n\n if (!failed) {\n rendererContext.dispatchPageLoad();\n // rendererContext.dispatchAnchorLoad();\n rendererContext.dispatchOnMount();\n rendererContext.initializeScrollIntoView();\n rendererContext.initializeMediaChange();\n }\n}\n\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\n// istanbul ignore next\nexport function loadBricks(bricks: string[] | Set<string>) {\n return loadBricksImperatively(bricks, getBrickPackages());\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 $$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(settings, \"properties\", \"events\", \"lifeCycle\", \"context\"),\n },\n ]\n );\n}\n\nexport function updateStoryboardBySnippet(\n appId: string,\n snippetData: {\n snippetId: string;\n bricks?: BrickConf[];\n }\n): void {\n _updatePreviewSettings(\n appId,\n `\\${APP.homepage}/_dev_only_/snippet-preview/${snippetData.snippetId}`,\n snippetData.bricks?.length ? snippetData.bricks : [{ brick: \"span\" }]\n );\n}\n\nexport const updateSnippetPreviewSettings = updateStoryboardBySnippet;\n\nfunction _updatePreviewSettings(\n appId: string,\n path: string,\n bricks: BrickConf[]\n) {\n const { routes } = _internalApiGetStoryboardInBootstrapData(appId)!;\n const previewRouteIndex = routes.findIndex((route) => route.path === path);\n const newPreviewRoute: RouteConf = {\n path,\n bricks,\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"],"mappings":"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"}
1
+ {"version":3,"file":"secret_internals.js","names":["flushStableLoadBricks","loadBricksImperatively","pick","_internalApiGetRuntimeContext","_internalApiGetStoryboardInBootstrapData","_internalApiSetBootstrapData","getBrickPackages","renderBrick","renderBricks","RendererContext","mountTree","unmountTree","httpErrorToString","applyMode","applyTheme","setMode","setTheme","RenderTag","computeRealValue","isStrictMode","warnAboutStrictMode","customTemplates","registerAppI18n","loadNotificationService","loadDialogService","renderUseBrick","_x","_x2","_renderUseBrick","apply","arguments","_asyncToGenerator","useBrick","data","_runtimeContext$tplSt","_output$node","tplStateStoreScope","runtimeContext","_objectSpread","pendingPermissionsPreCheck","tplStateStoreMap","Map","rendererContext","renderRoot","tag","ROOT","createPortal","transform","strict","output","properties","Promise","all","blockingList","map","store","waitForAll","node","portal","Error","child","tagName","type","mountUseBrick","_ref","element","portalRoot","document","querySelector","createElement","appendChild","dispatchOnMount","initializeScrollIntoView","initializeMediaChange","unmountUseBrick","_ref2","mountResult","remove","dispatchOnUnmount","dispose","_rendererContext","initializePreviewBootstrap","bootstrapData","renderPreviewBricks","_x3","_x4","_renderPreviewBricks","bricks","mountPoints","options","length","undefined","previousRendererContext","container","main","failed","push","values","error","BRICK","textContent","return","menuRequests","sandbox","_options$theme","theme","dispatchBeforePageLoad","window","scrollTo","dispatchPageLoad","legacyDoTransform","to","noInject","loadBricks","updateStoryboard","appId","storyboardPatch","storyboard","Object","assign","$$fulfilling","$$fulfilled","$$registerCustomTemplateProcessed","updateStoryboardByRoute","newRoute","match","getKey","route","concat","path","exact","replaceRoute","routes","key","routeKey","unshift","updateStoryboardByTemplate","newTemplate","settings","tplName","name","define","proxy","state","updateTemplatePreviewSettings","templateId","_updatePreviewSettings","brick","updateStoryboardBySnippet","snippetData","_snippetData$bricks","snippetId","updateSnippetPreviewSettings","previewRouteIndex","findIndex","newPreviewRoute","menu","splice"],"sources":["../../../src/internal/secret_internals.ts"],"sourcesContent":["import type {\n BootstrapData,\n BrickConf,\n CustomTemplate,\n RouteConf,\n SiteTheme,\n Storyboard,\n UseSingleBrickConf,\n} from \"@next-core/types\";\nimport {\n flushStableLoadBricks,\n loadBricksImperatively,\n} from \"@next-core/loader\";\nimport { pick } from \"lodash\";\nimport {\n _internalApiGetRuntimeContext,\n _internalApiGetStoryboardInBootstrapData,\n _internalApiSetBootstrapData,\n getBrickPackages,\n} from \"./Runtime.js\";\nimport { RenderOutput, renderBrick, renderBricks } from \"./Renderer.js\";\nimport { RendererContext } from \"./RendererContext.js\";\nimport type { DataStore } from \"./data/DataStore.js\";\nimport type { RenderRoot, RuntimeContext } from \"./interfaces.js\";\nimport { mountTree, unmountTree } from \"./mount.js\";\nimport { httpErrorToString } from \"../handleHttpError.js\";\nimport { applyMode, applyTheme, setMode, setTheme } from \"../themeAndMode.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 { loadNotificationService } from \"../Notification.js\";\nimport { loadDialogService } from \"../Dialog.js\";\n\nexport interface RenderUseBrickResult {\n tagName: string | null;\n renderRoot: RenderRoot;\n rendererContext: RendererContext;\n}\n\nexport async function renderUseBrick(\n useBrick: UseSingleBrickConf,\n data: unknown\n): Promise<RenderUseBrickResult> {\n const tplStateStoreScope: DataStore<\"STATE\">[] = [];\n const runtimeContext: RuntimeContext = {\n ..._internalApiGetRuntimeContext()!,\n data,\n pendingPermissionsPreCheck: [],\n tplStateStoreScope,\n };\n\n runtimeContext.tplStateStoreMap ??= new Map();\n\n const rendererContext = new RendererContext(\"useBrick\");\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\n ? useBrick\n : {\n ...useBrick,\n properties: {\n ...useBrick.properties,\n ...transform,\n },\n },\n runtimeContext,\n rendererContext\n );\n\n flushStableLoadBricks();\n\n await Promise.all([\n ...output.blockingList,\n // Wait for local tpl state stores belong to current `useBrick` only.\n ...tplStateStoreScope.map((store) => store.waitForAll()),\n ...runtimeContext.pendingPermissionsPreCheck,\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 };\n}\n\nexport interface MountUseBrickResult {\n portal?: HTMLElement;\n}\n\nexport function mountUseBrick(\n { renderRoot, rendererContext }: 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\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\nlet _rendererContext: RendererContext;\n\nexport function initializePreviewBootstrap(\n bootstrapData: Partial<BootstrapData>\n) {\n _internalApiSetBootstrapData(bootstrapData);\n // Todo: allow configuration of notification bricks.\n loadNotificationService(\"shoelace.show-notification\");\n loadDialogService(\"shoelace.show-dialog\");\n}\n\nexport async function renderPreviewBricks(\n bricks: BrickConf[],\n mountPoints: {\n main: HTMLElement;\n portal: HTMLElement;\n },\n options: {\n sandbox?: boolean;\n theme?: SiteTheme;\n } = {}\n) {\n const runtimeContext = {\n pendingPermissionsPreCheck: [],\n tplStateStoreMap: new Map<string, DataStore<\"STATE\">>(),\n } as Partial<RuntimeContext> as RuntimeContext;\n\n const previousRendererContext = _rendererContext;\n const rendererContext = (_rendererContext = new RendererContext(\"router\"));\n\n const renderRoot: RenderRoot = {\n tag: RenderTag.ROOT,\n container: mountPoints.main,\n createPortal: mountPoints.portal,\n };\n\n let failed = false;\n let output: RenderOutput;\n try {\n output = await renderBricks(\n renderRoot,\n bricks,\n runtimeContext,\n rendererContext\n );\n\n output.blockingList.push(\n ...[...runtimeContext.tplStateStoreMap.values()].map((store) =>\n store.waitForAll()\n ),\n ...runtimeContext.pendingPermissionsPreCheck\n );\n\n flushStableLoadBricks();\n\n await Promise.all(output.blockingList);\n } catch (error) {\n failed = true;\n output = {\n node: {\n tag: RenderTag.BRICK,\n type: \"div\",\n properties: {\n textContent: httpErrorToString(error),\n },\n return: renderRoot,\n runtimeContext: null!,\n },\n blockingList: [],\n menuRequests: [],\n };\n }\n\n renderRoot.child = output.node;\n\n previousRendererContext?.dispose();\n unmountTree(mountPoints.main);\n unmountTree(mountPoints.portal);\n\n if (options.sandbox) {\n setTheme(options.theme ?? \"light\");\n setMode(\"default\");\n\n if (!failed) {\n rendererContext.dispatchBeforePageLoad();\n }\n\n applyTheme();\n applyMode();\n }\n\n mountTree(renderRoot);\n\n if (options.sandbox) {\n window.scrollTo(0, 0);\n }\n\n if (!failed) {\n rendererContext.dispatchPageLoad();\n // rendererContext.dispatchAnchorLoad();\n rendererContext.dispatchOnMount();\n rendererContext.initializeScrollIntoView();\n rendererContext.initializeMediaChange();\n }\n}\n\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\n// istanbul ignore next\nexport function loadBricks(bricks: string[] | Set<string>) {\n return loadBricksImperatively(bricks, getBrickPackages());\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 $$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(settings, \"properties\", \"events\", \"lifeCycle\", \"context\"),\n },\n ]\n );\n}\n\nexport function updateStoryboardBySnippet(\n appId: string,\n snippetData: {\n snippetId: string;\n bricks?: BrickConf[];\n }\n): void {\n _updatePreviewSettings(\n appId,\n `\\${APP.homepage}/_dev_only_/snippet-preview/${snippetData.snippetId}`,\n snippetData.bricks?.length ? snippetData.bricks : [{ brick: \"span\" }]\n );\n}\n\nexport const updateSnippetPreviewSettings = updateStoryboardBySnippet;\n\nfunction _updatePreviewSettings(\n appId: string,\n path: string,\n bricks: BrickConf[]\n) {\n const { routes } = _internalApiGetStoryboardInBootstrapData(appId)!;\n const previewRouteIndex = routes.findIndex((route) => route.path === path);\n const newPreviewRoute: RouteConf = {\n path,\n bricks,\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"],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ declare function show(options: DialogOptions): void;
2
+ export declare function loadDialogService(tagName: string): void;
3
+ export interface DialogOptions {
4
+ type?: "success" | "error" | "warn" | "info" | "confirm";
5
+ title?: string | null;
6
+ content: string;
7
+ whiteSpace?: string;
8
+ onOk?: () => void;
9
+ onCancel?: () => void;
10
+ }
11
+ export declare const Dialog: Readonly<{
12
+ show: typeof show;
13
+ }>;
14
+ export {};
@@ -0,0 +1,10 @@
1
+ declare function show(options: NotificationOptions): void;
2
+ export declare function loadNotificationService(tagName: string): void;
3
+ export interface NotificationOptions {
4
+ type?: "success" | "error" | "warn" | "info";
5
+ message: string;
6
+ }
7
+ export declare const Notification: Readonly<{
8
+ show: typeof show;
9
+ }>;
10
+ export {};
@@ -15,3 +15,5 @@ export { registerWidgetFunctions } from "./internal/compute/WidgetFunctions.js";
15
15
  export { registerWidgetI18n } from "./internal/compute/WidgetI18n.js";
16
16
  export { StoryboardFunctionRegistryFactory } from "./StoryboardFunctionRegistry.js";
17
17
  export { matchPath } from "./internal/matchPath.js";
18
+ export { Notification, type NotificationOptions } from "./Notification.js";
19
+ export { Dialog, type DialogOptions } from "./Dialog.js";
@@ -0,0 +1,14 @@
1
+ export declare enum K {
2
+ REQUEST_FAILED = "REQUEST_FAILED",
3
+ SOMETHING_WENT_WRONG = "SOMETHING_WENT_WRONG",
4
+ LOGIN_TIMEOUT_MESSAGE = "LOGIN_TIMEOUT_MESSAGE"
5
+ }
6
+ export declare const NS = "core/runtime";
7
+ export declare const locales: {
8
+ en: Locale;
9
+ zh: Locale;
10
+ };
11
+ type Locale = {
12
+ [key in K]: string;
13
+ };
14
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@next-core/runtime",
3
- "version": "1.2.2",
3
+ "version": "1.3.0",
4
4
  "homepage": "https://github.com/easyops-cn/next-core/tree/master/packages/runtime",
5
5
  "license": "GPL-3.0",
6
6
  "repository": {
@@ -49,12 +49,12 @@
49
49
  "@next-api-sdk/micro-app-standalone-sdk": "^1.1.0",
50
50
  "@next-core/cook": "^2.0.3",
51
51
  "@next-core/http": "^1.0.3",
52
- "@next-core/i18n": "^1.0.6",
53
- "@next-core/inject": "^1.0.4",
54
- "@next-core/loader": "^1.1.1",
52
+ "@next-core/i18n": "^1.0.7",
53
+ "@next-core/inject": "^1.0.5",
54
+ "@next-core/loader": "^1.2.0",
55
55
  "@next-core/supply": "^2.0.3",
56
- "@next-core/types": "^1.0.4",
57
- "@next-core/utils": "^1.2.1",
56
+ "@next-core/types": "^1.1.0",
57
+ "@next-core/utils": "^1.2.2",
58
58
  "@ungap/event-target": "^0.2.3",
59
59
  "compare-versions": "^5.0.3",
60
60
  "history": "^4.10.1",
@@ -67,5 +67,5 @@
67
67
  "@next-core/build-next-libs": "^1.0.3",
68
68
  "@next-core/test-next": "^1.0.3"
69
69
  },
70
- "gitHead": "9e99998974ba369577d5ff6c01cd2aefb451a432"
70
+ "gitHead": "ea57221d8b3ba0c15ea0ec6c583865c4dce2fb5f"
71
71
  }