@next-core/brick-kit 2.118.4 → 2.118.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.bundle.js","sources":["../src/core/Bars/BaseBar.ts","../src/core/Bars/AppBar.ts","../src/core/Bars/MenuBar.ts","../src/i18n/constants.ts","../src/internal/getBasePath.ts","../../../node_modules/compare-versions/index.mjs","../src/core/TemplateRegistries.ts","../src/themeAndMode.ts","../../supply/dist/esm/index.js","../src/internal/alias.ts","../src/internal/segue.ts","../src/internal/images.ts","../src/internal/injected.ts","../src/internal/getNextStateOfUseBrick.ts","../src/transformProperties.ts","../src/internal/devtools.ts","../src/internal/Storage.ts","../src/i18n/locales/en.ts","../src/i18n/locales/zh.ts","../src/i18n/index.ts","../src/core/WidgetI18n.ts","../src/i18nText.ts","../src/auth.ts","../src/internal/checkPermissions.ts","../src/internal/proxyFactories.ts","../src/internal/getGeneralGlobals.ts","../src/core/StoryboardFunctionRegistryFactory.ts","../src/core/StoryboardFunctions.ts","../src/core/WidgetFunctions.ts","../../../node_modules/@ungap/event-target/esm/index.js","../src/checkIf.ts","../src/core/StoryboardContext.ts","../src/core/CustomTemplates/CustomTemplateContext.ts","../src/internal/mediaQuery.ts","../src/internal/evaluate.ts","../src/core/CustomTemplates/assertions.ts","../src/core/CustomTemplates/constants.ts","../src/core/CustomTemplates/propertyMerge.ts","../src/core/CustomTemplates/setupTemplateProxy.ts","../src/core/CustomTemplates/setupUseBrickInTemplate.ts","../src/internal/setProperties.ts","../src/internal/menu.ts","../src/core/LazyBrickRegistry.ts","../src/core/Runtime.ts","../src/internal/historyExtended.ts","../src/history.ts","../src/internal/isUnauthenticatedError.ts","../src/handleHttpError.tsx","../src/websocket/WebsocketMessageRequest.ts","../src/websocket/interfaces/index.ts","../src/websocket/WebsocketMessageResponse.ts","../src/websocket/WebSocketService.ts","../src/websocket/WebSocket.ts","../../../node_modules/concat-map/index.js","../../../node_modules/balanced-match/index.js","../../../node_modules/brace-expansion/index.js","../../../node_modules/minimatch/minimatch.js","../src/core/MessageDispatcher.ts","../src/internal/poll.ts","../src/core/MockRegistry.ts","../src/core/CollectContracts.ts","../src/core/FlowApi.ts","../src/internal/bindListeners.ts","../src/core/BrickNode.ts","../../../node_modules/@next-sdk/auth-sdk/dist/index.esm.js","../src/core/processors.ts","../src/providers/CustomApi.ts","../src/core/initAnalytics.ts","../src/core/standaloneBootstrap.ts","../../../node_modules/@ctrl/tinycolor/dist/module/util.js","../../../node_modules/@ctrl/tinycolor/dist/module/conversion.js","../../../node_modules/@ctrl/tinycolor/dist/module/css-color-names.js","../../../node_modules/@ctrl/tinycolor/dist/module/format-input.js","../../../node_modules/@ant-design/colors/dist/index.esm.js","../../color-theme/dist/esm/index.js","../src/internal/applyColorTheme.ts","../src/core/Kernel.ts","../../brick-types/dist/index.esm.js","../src/internal/misc.ts","../src/internal/getSubStoryboardByRoute.ts","../src/internal/listenOnTrackingContext.ts","../src/core/LocationContext.ts","../src/core/reconciler.ts","../src/internal/makeProviderRefreshable.ts","../src/core/Resolver.ts","../src/internal/shouldBeDefaultCollapsed.ts","../src/core/Router.ts","../src/core/CustomTemplates/collectRefsInTemplate.ts","../src/core/CustomTemplates/collectMergeBases.ts","../src/core/CustomTemplates/expandCustomTemplate.ts","../src/core/CustomTemplates/getTagNameOfCustomTemplate.ts","../src/core/CustomTemplates/handleProxyOfCustomTemplate.ts","../src/core/CustomTemplates/registerCustomTemplate.ts","../src/core/CustomProcessors.ts","../src/runtime.ts","../src/ErrorBoundary.tsx","../src/decorators/utils.ts","../src/decorators/property.ts","../src/decorators/event.ts","../src/decorators/method.ts","../src/useApplyPageTitle.ts","../src/useRecentApps.ts","../src/useCurrentApp.ts","../src/useLocation.ts","../src/BrickAsComponent.tsx","../../../node_modules/rc-pagination/es/locale/zh_CN.js","../../../node_modules/rc-picker/es/locale/zh_CN.js","../../../node_modules/antd/es/time-picker/locale/zh_CN.js","../../../node_modules/antd/es/date-picker/locale/zh_CN.js","../../../node_modules/antd/es/locale/zh_CN.js","../../../node_modules/rc-pagination/es/locale/en_US.js","../../../node_modules/rc-picker/es/locale/en_US.js","../../../node_modules/antd/es/time-picker/locale/en_US.js","../../../node_modules/antd/es/date-picker/locale/en_US.js","../../../node_modules/antd/es/locale/default.js","../src/EasyopsEmpty/EmptySvg.tsx","../src/EasyopsEmpty/EasyopsEmpty.tsx","../src/featureFlags.tsx","../src/BrickWrapper.tsx","../src/developHelper.ts","../src/UpdatingElement.ts","../src/elements/ModalElement.ts","../src/hooks/useProvider/useProviderArgsDefaults.ts","../src/hooks/useProvider/useProviderArgs.ts","../src/hooks/useProvider/fetchProviderArgs.ts","../src/hooks/useProvider/fetch.ts","../src/hooks/useProvider/useProvider.ts"],"sourcesContent":["import { MountPoints } from \"@next-core/brick-types\";\nimport { Kernel } from \"../Kernel\";\n\nexport class BaseBar {\n public element: HTMLElement;\n private brick: string;\n\n constructor(private kernel: Kernel, private mountPoint: string) {}\n\n /**\n * Bars will be bootstrapped every time the layout changes.\n *\n * @param brick - The brick name.\n */\n async bootstrap(brick?: string, options?: { testid: string }): Promise<void> {\n // Ignore if the brick is not changed.\n if (this.brick === brick) {\n return;\n }\n this.brick = brick;\n\n // Remove the previous bar element.\n if (this.element) {\n this.element.remove();\n this.element = null;\n }\n // The new brick may be undefined, which indicates no bar element in current layout.\n if (brick) {\n await this.kernel.loadDynamicBricks([brick]);\n this.element = document.createElement(brick);\n if (options?.testid) {\n this.element.dataset.testid = options.testid;\n }\n this.kernel.mountPoints[this.mountPoint as keyof MountPoints].appendChild(\n this.element\n );\n }\n }\n}\n","import { AppBarBrick, BreadcrumbItemConf } from \"@next-core/brick-types\";\nimport { BaseBar } from \"./BaseBar\";\n\nexport class AppBar extends BaseBar {\n // `element` is not available in business layout.\n public declare element: AppBarBrick;\n\n /**\n * 设置页面标题(顶部)\n * @param pageTitle - 标题\n * @deprecated Use `getRuntime().applyPageTitle(...)` or `useApplyPageTitle(...)` instead.\n */\n setPageTitle(pageTitle: string): void {\n if (!this.element) {\n return;\n }\n this.element.pageTitle = pageTitle;\n }\n\n /**\n * 追加面包屑\n * @param breadcrumb - 面包屑配置\n */\n appendBreadcrumb(breadcrumb: BreadcrumbItemConf[]): void {\n if (!this.element) {\n return;\n }\n this.element.breadcrumb = [...this.element.breadcrumb, ...breadcrumb];\n }\n\n /**\n * 设置面包屑\n * @param breadcrumb - 面包屑配置\n */\n setBreadcrumb(breadcrumb: BreadcrumbItemConf[]): void {\n if (!this.element) {\n return;\n }\n this.element.breadcrumb = breadcrumb;\n }\n}\n","import { MenuBarBrick, SidebarMenu } from \"@next-core/brick-types\";\nimport { BaseBar } from \"./BaseBar\";\n\nexport class MenuBar extends BaseBar {\n // `element` is not available in business layout.\n public declare element: MenuBarBrick;\n\n /**\n * 设置应用菜单(左侧菜单)\n * @param menu - 菜单\n */\n setAppMenu(menu: SidebarMenu): void {\n if (!this.element) {\n return;\n }\n this.element.menu = menu;\n }\n\n /**\n * 重置应用菜单(左侧菜单)\n */\n resetAppMenu(): void {\n if (!this.element) {\n return;\n }\n this.element.menu = null;\n this.element.subMenu = null;\n }\n\n /**\n * 折叠/展开应用菜单\n * @param collapsed\n */\n collapse(collapsed: boolean): void {\n if (!this.element) {\n return;\n }\n this.element.collapsed = collapsed;\n }\n\n /**\n * 检查应用菜单是否处于折叠状态\n */\n isCollapsed(): boolean {\n return this.element?.collapsed;\n }\n\n /**\n * 应用菜单已折叠时*软展开/收回*\n * @param collapsed\n */\n softExpand(expanded: boolean): void {\n if (!this.element) {\n return;\n }\n this.element.softExpanded = expanded;\n }\n\n /**\n * 应用菜单是否处于*软展开*状态\n * @param collapsed\n */\n isSoftExpanded(): boolean {\n return this.element?.softExpanded;\n }\n}\n","export const NS_BRICK_KIT = \"brick-kit\";\n\nexport enum K {\n REQUEST_FAILED = \"REQUEST_FAILED\",\n MODAL_OK = \"MODAL_OK\",\n MODAL_CANCEL = \"MODAL_CANCEL\",\n SOMETHING_WENT_WRONG = \"SOMETHING_WENT_WRONG\",\n LOGIN_TIMEOUT_MESSAGE = \"LOGIN_TIMEOUT_MESSAGE\",\n NETWORK_ERROR = \"NETWORK_ERROR\",\n}\n\nexport type Locale = { [key in K]: string };\n","/**\n * Get site's base path, generally will be `/next/` or `/`.\n */\nexport function getBasePath(): string {\n const base = document.querySelector(\"base\");\n const basePath = base ? base.getAttribute(\"href\") : \"/\";\n return basePath;\n}\n","export default function compareVersions(v1, v2) {\n // validate input and split into segments\n const n1 = validateAndParse(v1);\n const n2 = validateAndParse(v2);\n\n // pop off the patch\n const p1 = n1.pop();\n const p2 = n2.pop();\n\n // validate numbers\n const r = compareSegments(n1, n2);\n if (r !== 0) return r;\n\n // validate pre-release\n if (p1 && p2) {\n return compareSegments(p1.split('.'), p2.split('.'));\n } else if (p1 || p2) {\n return p1 ? -1 : 1;\n }\n\n return 0;\n}\n\nexport const validate = (v) =>\n typeof v === 'string' && /^[v\\d]/.test(v) && semver.test(v);\n\nexport const compare = (v1, v2, operator) => {\n // validate input operator\n assertValidOperator(operator);\n\n // since result of compareVersions can only be -1 or 0 or 1\n // a simple map can be used to replace switch\n const res = compareVersions(v1, v2);\n\n return operatorResMap[operator].includes(res);\n};\n\nexport const satisfies = (v, r) => {\n // if no range operator then \"=\"\n const m = r.match(/^([<>=~^]+)/);\n const op = m ? m[1] : '=';\n\n // if gt/lt/eq then operator compare\n if (op !== '^' && op !== '~') return compare(v, r, op);\n\n // else range of either \"~\" or \"^\" is assumed\n const [v1, v2, v3] = validateAndParse(v);\n const [r1, r2, r3] = validateAndParse(r);\n if (compareStrings(v1, r1) !== 0) return false;\n if (op === '^') {\n return compareSegments([v2, v3], [r2, r3]) >= 0;\n }\n if (compareStrings(v2, r2) !== 0) return false;\n return compareStrings(v3, r3) >= 0;\n};\n\n// export CJS style for parity\ncompareVersions.validate = validate;\ncompareVersions.compare = compare;\ncompareVersions.sastisfies = satisfies;\n\nconst semver =\n /^[v^~<>=]*?(\\d+)(?:\\.([x*]|\\d+)(?:\\.([x*]|\\d+)(?:\\.([x*]|\\d+))?(?:-([\\da-z\\-]+(?:\\.[\\da-z\\-]+)*))?(?:\\+[\\da-z\\-]+(?:\\.[\\da-z\\-]+)*)?)?)?$/i;\n\nconst validateAndParse = (v) => {\n if (typeof v !== 'string') {\n throw new TypeError('Invalid argument expected string');\n }\n const match = v.match(semver);\n if (!match) {\n throw new Error(`Invalid argument not valid semver ('${v}' received)`);\n }\n match.shift();\n return match;\n};\n\nconst isWildcard = (s) => s === '*' || s === 'x' || s === 'X';\n\nconst tryParse = (v) => {\n const n = parseInt(v, 10);\n return isNaN(n) ? v : n;\n};\n\nconst forceType = (a, b) =>\n typeof a !== typeof b ? [String(a), String(b)] : [a, b];\n\nconst compareStrings = (a, b) => {\n if (isWildcard(a) || isWildcard(b)) return 0;\n const [ap, bp] = forceType(tryParse(a), tryParse(b));\n if (ap > bp) return 1;\n if (ap < bp) return -1;\n return 0;\n};\n\nconst compareSegments = (a, b) => {\n for (let i = 0; i < Math.max(a.length, b.length); i++) {\n const r = compareStrings(a[i] || 0, b[i] || 0);\n if (r !== 0) return r;\n }\n return 0;\n};\n\nconst operatorResMap = {\n '>': [1],\n '>=': [0, 1],\n '=': [0],\n '<=': [-1, 0],\n '<': [-1],\n};\n\nconst allowedOperators = Object.keys(operatorResMap);\n\nconst assertValidOperator = (op) => {\n if (typeof op !== 'string') {\n throw new TypeError(\n `Invalid operator type, expected string but got ${typeof op}`\n );\n }\n if (allowedOperators.indexOf(op) === -1) {\n throw new Error(\n `Invalid operator, expected one of ${allowedOperators.join('|')}`\n );\n }\n};\n","import { BrickTemplateFactory, TemplateRegistry } from \"@next-core/brick-types\";\n\nexport const brickTemplateRegistry: TemplateRegistry<BrickTemplateFactory> = new Map();\n\nexport function registerBrickTemplate(\n name: string,\n factory: BrickTemplateFactory\n): void {\n if (brickTemplateRegistry.has(name)) {\n // eslint-disable-next-line no-console\n console.error(`Brick template of \"${name}\" already registered.`);\n return;\n }\n brickTemplateRegistry.set(name, factory);\n}\n","import { useEffect, useState } from \"react\";\nimport { SiteMode, SiteTheme } from \"@next-core/brick-types\";\nimport { JsonStorage } from \"@next-core/brick-utils\";\n\n// Themes.\nconst DEFAULT_THEME = \"light\";\nexport const DARK_THEME = \"dark-v2\" as SiteTheme;\nlet theme: SiteTheme = DEFAULT_THEME;\nconst storage = new JsonStorage(localStorage);\nconst LOCAL_STORAGE_APPS_THEME_KEY = \"apps-theme\";\n\nexport function setTheme(value: SiteTheme): void {\n if (value !== \"dark\" && value !== \"light\" && value !== \"dark-v2\") {\n throw new Error(`Unsupported theme: ${value}`);\n }\n theme = value;\n}\n\nexport function getTheme(): SiteTheme {\n return theme;\n}\n\nexport function getCurrentTheme(): SiteTheme {\n return document.documentElement.dataset.theme as SiteTheme;\n}\n\nexport function applyTheme(value?: SiteTheme): void {\n if (value) {\n setTheme(value);\n } else {\n value = getTheme();\n }\n if (value !== getCurrentTheme()) {\n document.documentElement.dataset.theme = value;\n window.dispatchEvent(\n new CustomEvent<SiteTheme>(\"theme.change\", {\n detail: value,\n })\n );\n }\n}\n\nexport function useCurrentTheme(): SiteTheme {\n const [currentTheme, setCurrentTheme] = useState(getCurrentTheme());\n\n useEffect(() => {\n const listenToThemeChange = (event: Event): void => {\n setCurrentTheme((event as CustomEvent<SiteTheme>).detail);\n };\n window.addEventListener(\"theme.change\", listenToThemeChange);\n return () => {\n window.removeEventListener(\"theme.change\", listenToThemeChange);\n };\n }, []);\n\n return currentTheme;\n}\n\nexport function batchSetAppsLocalTheme(\n appsTheme: Record<string, SiteTheme>\n): void {\n storage.setItem(LOCAL_STORAGE_APPS_THEME_KEY, {\n ...getLocalAppsTheme(),\n ...appsTheme,\n });\n}\n\nexport function getLocalAppsTheme(): Record<string, SiteTheme> {\n let result;\n try {\n result = storage.getItem(LOCAL_STORAGE_APPS_THEME_KEY) as Record<\n string,\n SiteTheme\n >;\n } catch {\n // eslint-disable-next-line no-console\n console.error(\"JSON parse error inside `getLocalAppsTheme()`\");\n }\n\n return result || {};\n}\n\n// Modes.\nconst DEFAULT_MODE = \"default\";\nlet mode: SiteMode = DEFAULT_MODE;\n\nexport function setMode(value: SiteMode): void {\n if (value !== \"dashboard\" && value !== \"default\") {\n throw new Error(`Unsupported mode: ${value}`);\n }\n mode = value;\n}\n\nexport function getMode(): SiteMode {\n return mode;\n}\n\nexport function getCurrentMode(): SiteMode {\n return document.documentElement.dataset.mode as SiteMode;\n}\n\nexport function applyMode(value?: SiteMode): void {\n if (value) {\n setMode(value);\n } else {\n value = getMode();\n }\n if (value !== getCurrentMode()) {\n document.documentElement.dataset.mode = value;\n window.dispatchEvent(\n new CustomEvent<SiteMode>(\"mode.change\", {\n detail: value,\n })\n );\n }\n}\n\nexport function useCurrentMode(): SiteMode {\n const [currentMode, setCurrentMode] = useState(getCurrentMode());\n\n useEffect(() => {\n const listenToModeChange = (event: Event): void => {\n setCurrentMode((event as CustomEvent<SiteMode>).detail);\n };\n window.addEventListener(\"mode.change\", listenToModeChange);\n return () => {\n window.removeEventListener(\"mode.change\", listenToModeChange);\n };\n }, []);\n\n return currentMode;\n}\n\nexport function getCssPropertyValue(\n name: string,\n el = document.documentElement\n): string {\n return window.getComputedStyle(el).getPropertyValue(name);\n}\n","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport lodash from \"lodash\";\nimport moment from \"moment\";\nimport { pipes } from \"@next-core/pipes\";\nexport function supply(attemptToVisitGlobals, providedGlobalVariables, mock) {\n var globalVariables = _objectSpread({}, providedGlobalVariables); // Allow limited browser builtin values.\n\n\n globalVariables[\"undefined\"] = undefined;\n\n for (var variableName of attemptToVisitGlobals) {\n if (!Object.prototype.hasOwnProperty.call(globalVariables, variableName)) {\n var variable = supplyIndividual(variableName, mock);\n\n if (variable !== undefined) {\n globalVariables[variableName] = variable;\n }\n }\n }\n\n return globalVariables;\n}\nvar shouldOmitInLodash = new Set([// Omit all mutable methods from lodash.\n// But allow sequence methods like `_.chain`.\n\"fill\", \"pull\", \"pullAll\", \"pullAllBy\", \"pullAllWith\", \"pullAt\", \"remove\", \"reverse\", \"assign\", \"assignIn\", \"assignInWith\", \"assignWith\", \"defaults\", \"defaultsDeep\", \"merge\", \"mergeWith\", \"set\", \"setWith\", \"unset\", \"update\", \"updateWith\",\n/**\n * Ignore `Function` methods from lodash, too.\n * There are chances to invoke `Object.assign`, etc.\n *\n * E.g.:\n *\n * ```\n * _.wrap(_.method('constructor.assign',{b:2},{b:3}),(func,...a) => func(...a))({})\n * ```\n */\n\"after\", \"ary\", \"before\", \"bind\", \"bindKey\", \"curry\", \"curryRight\", \"debounce\", \"defer\", \"delay\", \"flip\", \"memoize\", \"negate\", \"once\", \"overArgs\", \"partial\", \"partialRight\", \"rearg\", \"rest\", \"spread\", \"throttle\", \"unary\", \"wrap\"]); // Omit all mutable methods from moment.\n\nvar shouldOmitInMoment = new Set([\"lang\", \"langData\", \"locale\", \"localeData\", \"defineLocale\", \"updateLocale\", \"updateOffset\"]);\nvar allowedGlobalObjects = new Set([\"Array\", \"Boolean\", \"Date\", \"Infinity\", \"JSON\", \"Math\", \"NaN\", \"Number\", \"String\", \"decodeURI\", \"decodeURIComponent\", \"encodeURI\", \"encodeURIComponent\", \"isFinite\", \"isNaN\", \"parseFloat\", \"parseInt\", \"Map\", \"Set\", \"URLSearchParams\", \"WeakMap\", \"WeakSet\", \"atob\", \"btoa\"]);\n\nfunction supplyIndividual(variableName, mock) {\n switch (variableName) {\n case \"Object\":\n // Do not allow mutable methods like `Object.assign`.\n return delegateMethods(Object, [\"entries\", \"fromEntries\", \"keys\", \"values\"]);\n\n case \"_\":\n return Object.fromEntries(Object.entries(lodash).filter(entry => !shouldOmitInLodash.has(entry[0])).concat(mock ? [[\"uniqueId\", prefix => \"\".concat(prefix !== null && prefix !== void 0 ? prefix : \"\", \"42\")]] : []));\n\n case \"moment\":\n return Object.assign(function () {\n return moment(...arguments);\n }, Object.fromEntries(Object.entries(moment).filter(entry => !shouldOmitInMoment.has(entry[0]))));\n\n case \"PIPES\":\n return pipes;\n\n case \"TAG_URL\":\n return tagUrlFactory(true);\n\n case \"SAFE_TAG_URL\":\n return tagUrlFactory();\n\n default:\n if (allowedGlobalObjects.has(variableName)) {\n return window[variableName];\n }\n\n }\n}\n\nfunction delegateMethods(target, methods) {\n return Object.fromEntries(methods.map(method => [method, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return target[method].apply(target, args);\n }]));\n}\n\n/**\n * Pass `ignoreSlashes` as `true` to encode all tagged expressions\n * as URL components, except for `/` which maybe used in `APP.homepage`.\n *\n * Otherwise encode all tagged expressions as URL components.\n * This will encode `/` as `%2F`. So do not use it directly\n * with `APP.homepage` as in template expressions.\n *\n * @example\n *\n * ```js\n * TAG_URL`${APP.homepage}/list?q=${q}&redirect=${redirect}`\n * ```\n *\n * ```js\n * SAFE_TAG_URL`file/${path}?q=${q}`\n * // `path` will be fully transformed by `encodeURIComponent`.\n * ```\n *\n * ```js\n * // Wrap `APP.homepage` outside of `SAFE_TAG_URL`.\n * `${APP.homepage}/${SAFE_TAG_URL`file/${path}?q=${q}`}`\n * ```\n */\nfunction tagUrlFactory(ignoreSlashes) {\n return function (strings) {\n for (var _len2 = arguments.length, partials = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n partials[_key2 - 1] = arguments[_key2];\n }\n\n var result = [];\n strings.forEach((str, index) => {\n result.push(str);\n\n if (index < partials.length) {\n result.push(ignoreSlashes ? String(partials[index]).replace(/[^/]+/g, p => encodeURIComponent(p)) : encodeURIComponent(String(partials[index])));\n }\n });\n return result.join(\"\");\n };\n}\n//# sourceMappingURL=index.js.map","import { MicroApp } from \"@next-core/brick-types\";\nimport { toPath, computeRealRoutePath } from \"@next-core/brick-utils\";\n\nexport function getUrlByAliasFactory(app: MicroApp) {\n return function getUrlByAlias(\n alias: string,\n pathParams?: Record<string, any>,\n query?: Record<string, any>\n ): string {\n if (!app?.$$routeAliasMap.has(alias)) {\n // eslint-disable-next-line no-console\n throw new Error(`Route alias not found: ${alias}`);\n }\n const routeConf = app.$$routeAliasMap.get(alias);\n let url = toPath(\n computeRealRoutePath(routeConf.path, app) as string,\n pathParams\n );\n if (query) {\n const urlSearchParams = new URLSearchParams();\n for (const [key, value] of Object.entries(query as Record<string, any>)) {\n if (Array.isArray(value)) {\n for (const item of value) {\n urlSearchParams.append(key, item);\n }\n } else if (value !== undefined && value !== null && value !== \"\") {\n urlSearchParams.set(key, value);\n }\n }\n const queryString = urlSearchParams.toString();\n if (queryString.length > 0) {\n url += `?${queryString}`;\n }\n }\n return url;\n };\n}\n","import { MicroApp, SeguesConf } from \"@next-core/brick-types\";\nimport { hasOwnProperty } from \"@next-core/brick-utils\";\nimport { getUrlByAliasFactory } from \"./alias\";\n\nexport function getUrlBySegueFactory(app: MicroApp, segues: SeguesConf) {\n return function getUrlBySegue(\n segueId: string,\n pathParams?: Record<string, any>,\n query?: Record<string, any>\n ): string {\n if (!hasOwnProperty(segues, segueId)) {\n // eslint-disable-next-line no-console\n throw new Error(`Segue not found: ${segueId}`);\n }\n const segue = segues[segueId];\n return getUrlByAliasFactory(app)(segue.target, pathParams, query);\n };\n}\n","export interface ImagesFactory {\n get(name: string): string;\n}\n\nexport function imagesFactory(\n appId: string,\n isBuildPush?: boolean\n): ImagesFactory {\n return {\n get(name) {\n return isBuildPush\n ? `api/gateway/object_store.object_store.GetObject/api/v1/objectStore/bucket/next-builder/object/${name}`\n : `${window.PUBLIC_ROOT ?? \"\"}micro-apps/${appId}/images/${name}`;\n },\n };\n}\n\nexport function widgetImagesFactory(widgetId: string): ImagesFactory {\n return {\n get(name) {\n return `${\n window.PUBLIC_ROOT ?? \"\"\n }bricks/${widgetId}/dist/assets/${name}`;\n },\n };\n}\n","import { isObject } from \"@next-core/brick-utils\";\nimport { isPreEvaluated } from \"./evaluate\";\n\nlet injected = new WeakSet();\n\n// The injected (or transformed) result should never be *injected* again.\n// So does the fetched data from a remote api.\nexport function recursiveMarkAsInjected(value: any): void {\n if (isObject(value)) {\n if (!haveBeenInjected(value)) {\n injected.add(value);\n if (Array.isArray(value)) {\n value.forEach(recursiveMarkAsInjected);\n } else {\n // Only mark pure objects.\n const proto = Object.getPrototypeOf(value);\n if (!proto || proto.constructor === Object) {\n Object.values(value).forEach(recursiveMarkAsInjected);\n }\n }\n }\n }\n}\n\nexport function haveBeenInjected(object: any): boolean {\n return injected.has(object);\n}\n\nexport function resetAllInjected(): void {\n injected = new WeakSet();\n}\n\nexport function cloneDeepWithInjectedMark<T>(value: T): T {\n if (isObject(value) && !isPreEvaluated(value)) {\n const clone = Array.isArray(value)\n ? (value as unknown[]).map((item) => cloneDeepWithInjectedMark(item))\n : Object.fromEntries(\n // Get both string and symbol keys.\n Object.entries(value)\n .map(([k, v]) => [k, cloneDeepWithInjectedMark(v)])\n .concat(\n Object.getOwnPropertySymbols(value).map((k) => [\n k,\n (value as Record<string | symbol, unknown>)[k],\n ])\n )\n );\n if (haveBeenInjected(value)) {\n injected.add(clone);\n }\n return clone as any;\n }\n return value;\n}\n","export enum StateOfUseBrick {\n INITIAL,\n USE_BRICK,\n USE_BRICK_ITEM,\n USE_BRICK_PROPERTIES,\n USE_BRICK_TRANSFORM,\n USE_BRICK_EVENTS,\n USE_BRICK_IF,\n USE_BRICK_SLOTS,\n USE_BRICK_SLOTS_ITEM,\n USE_BRICK_SLOTS_ITEM_BRICKS,\n USE_BRICK_SLOTS_ITEM_BRICKS_ITEM,\n USE_BRICK_LIFECYCLE,\n USE_BRICK_LIFECYCLE_USERESOLVES,\n USE_BRICK_LIFECYCLE_USERESOLVES_ITEM,\n USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_TRANSFORM,\n USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT,\n USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT_TRANSFORM,\n}\n\nexport function isLazyContentInUseBrick(state: StateOfUseBrick): boolean {\n switch (state) {\n case StateOfUseBrick.USE_BRICK_PROPERTIES:\n case StateOfUseBrick.USE_BRICK_TRANSFORM:\n case StateOfUseBrick.USE_BRICK_EVENTS:\n case StateOfUseBrick.USE_BRICK_IF:\n case StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_TRANSFORM:\n case StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT_TRANSFORM:\n return true;\n }\n return false;\n}\n\nexport function getNextStateOfUseBrick(\n state: StateOfUseBrick,\n isArray?: boolean,\n key?: string\n): StateOfUseBrick {\n if (isLazyContentInUseBrick(state)) {\n return state;\n }\n if (isArray) {\n switch (state) {\n case StateOfUseBrick.USE_BRICK:\n return StateOfUseBrick.USE_BRICK_ITEM;\n case StateOfUseBrick.USE_BRICK_SLOTS_ITEM_BRICKS:\n return StateOfUseBrick.USE_BRICK_SLOTS_ITEM_BRICKS_ITEM;\n case StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES:\n return StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM;\n }\n } else {\n switch (state) {\n case StateOfUseBrick.INITIAL:\n if (key === \"useBrick\") {\n return StateOfUseBrick.USE_BRICK;\n }\n break;\n case StateOfUseBrick.USE_BRICK:\n case StateOfUseBrick.USE_BRICK_ITEM:\n case StateOfUseBrick.USE_BRICK_SLOTS_ITEM_BRICKS_ITEM: {\n switch (key) {\n case \"properties\":\n return StateOfUseBrick.USE_BRICK_PROPERTIES;\n case \"transform\":\n return StateOfUseBrick.USE_BRICK_TRANSFORM;\n case \"events\":\n return StateOfUseBrick.USE_BRICK_EVENTS;\n case \"slots\":\n return StateOfUseBrick.USE_BRICK_SLOTS;\n case \"if\":\n return StateOfUseBrick.USE_BRICK_IF;\n case \"lifeCycle\":\n return StateOfUseBrick.USE_BRICK_LIFECYCLE;\n }\n break;\n }\n case StateOfUseBrick.USE_BRICK_SLOTS:\n return StateOfUseBrick.USE_BRICK_SLOTS_ITEM;\n case StateOfUseBrick.USE_BRICK_SLOTS_ITEM:\n if (key === \"bricks\") {\n return StateOfUseBrick.USE_BRICK_SLOTS_ITEM_BRICKS;\n }\n break;\n case StateOfUseBrick.USE_BRICK_LIFECYCLE:\n if (key === \"useResolves\") {\n return StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES;\n }\n break;\n case StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM: {\n switch (key) {\n case \"transform\":\n return StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_TRANSFORM;\n case \"onReject\":\n return StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT;\n }\n break;\n }\n case StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT:\n if (key === \"transform\") {\n return StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT_TRANSFORM;\n }\n break;\n }\n }\n return StateOfUseBrick.INITIAL;\n}\n","import { get, set } from \"lodash\";\nimport { GeneralTransform, TransformMap } from \"@next-core/brick-types\";\nimport {\n isObject,\n transform,\n isEvaluable,\n trackContext,\n transformAndInject,\n trackState,\n} from \"@next-core/brick-utils\";\nimport {\n evaluate,\n EvaluateOptions,\n isPreEvaluated,\n shouldDismissRecursiveMarkingInjected,\n EvaluateRuntimeContext,\n} from \"./internal/evaluate\";\nimport { haveBeenInjected, recursiveMarkAsInjected } from \"./internal/injected\";\nimport { devtoolsHookEmit } from \"./internal/devtools\";\nimport { setRealProperties } from \"./internal/setProperties\";\nimport {\n getNextStateOfUseBrick,\n isLazyContentInUseBrick,\n StateOfUseBrick,\n} from \"./internal/getNextStateOfUseBrick\";\nimport { TrackingContextItem } from \"./internal/listenOnTrackingContext\";\nimport { _internalApiGetCurrentContext } from \"./core/Runtime\";\n\ninterface TransformOptions {\n isReTransformation?: boolean;\n transformationId?: number;\n allowInject?: boolean;\n}\n\nexport interface DoTransformOptions {\n evaluateOptions?: EvaluateOptions;\n trackingContextList?: TrackingContextItem[];\n allowInject?: boolean;\n tplContextId?: string;\n $$lazyForUseBrick?: boolean;\n $$stateOfUseBrick?: StateOfUseBrick;\n}\n\n/** @internal */\nexport function transformElementProperties(\n element: HTMLElement,\n data: unknown,\n to: GeneralTransform,\n from?: string | string[],\n mapArray?: boolean | \"auto\"\n): void {\n const result = preprocessTransformProperties(data, to, from, mapArray);\n setRealProperties(element, result, true);\n}\n\n/** @internal */\nexport function transformProperties(\n props: Record<string, unknown>,\n data: unknown,\n to: GeneralTransform,\n from?: string | string[],\n mapArray?: boolean | \"auto\",\n options?: {\n allowInject?: boolean;\n }\n): Record<string, unknown> {\n const result = preprocessTransformProperties(\n data,\n to,\n from,\n mapArray,\n options\n );\n for (const [propName, propValue] of Object.entries(result)) {\n set(props, propName, propValue);\n }\n return props;\n}\n\n/** @internal */\nexport function doTransform(\n data: unknown,\n to: unknown,\n options?: DoTransformOptions\n): unknown {\n const preEvaluated = isPreEvaluated(to);\n if (preEvaluated || typeof to === \"string\") {\n // For `useBrick`, some fields such as `properties`/`transform`/`events`,\n // are kept and to be transformed later.\n const lazy =\n options?.$$lazyForUseBrick &&\n isLazyContentInUseBrick(options.$$stateOfUseBrick);\n if (lazy) {\n // The current data context is not memoized, since a new data context\n // should always be provided before later transformations.\n return to;\n }\n\n let result: unknown;\n let dismissRecursiveMarkingInjected = false;\n if (preEvaluated || isEvaluable(to as string)) {\n const runtimeContext: EvaluateRuntimeContext = {\n data,\n };\n if (options?.tplContextId)\n runtimeContext.tplContextId = options.tplContextId;\n result = evaluate(to as string, runtimeContext, options?.evaluateOptions);\n dismissRecursiveMarkingInjected = shouldDismissRecursiveMarkingInjected(\n to as string\n );\n } else {\n result = options?.allowInject\n ? transformAndInject(\n to as string,\n data,\n _internalApiGetCurrentContext()\n )\n : transform(to as string, data);\n }\n if (!dismissRecursiveMarkingInjected) {\n recursiveMarkAsInjected(result);\n }\n return result;\n }\n\n if (!isObject(to) || haveBeenInjected(to)) {\n return to;\n }\n\n if (Array.isArray(to)) {\n const nextOptions = getNextDoTransformOptions(options, true);\n return to.map((item) => doTransform(data, item, nextOptions));\n }\n\n return Object.fromEntries(\n // Get both string and symbol keys.\n Object.entries(to)\n .map(([k, v]) => {\n if (Array.isArray(options?.trackingContextList) && isEvaluable(v)) {\n const contextNames = trackContext(v);\n const stateNames = trackState(v);\n if (contextNames || stateNames) {\n options.trackingContextList.push({\n contextNames,\n stateNames,\n propName: k,\n propValue: v,\n });\n }\n }\n return [\n k,\n doTransform(data, v, getNextDoTransformOptions(options, false, k)),\n ];\n })\n .concat(\n Object.getOwnPropertySymbols(to).map((k) => [\n k,\n (to as Record<string | symbol, unknown>)[k],\n ])\n )\n );\n}\n\n/** @internal */\nexport function reTransformForDevtools(\n transformationId: number,\n data: unknown,\n to: GeneralTransform,\n from?: string | string[],\n mapArray?: boolean | \"auto\",\n allowInject?: boolean\n): void {\n try {\n preprocessTransformProperties(data, to, from, mapArray, {\n isReTransformation: true,\n transformationId,\n allowInject,\n });\n } catch (error) {\n devtoolsHookEmit(\"re-transformation\", {\n id: transformationId,\n error: error.message,\n detail: {\n transform: to,\n data,\n options: { from, mapArray, allowInject },\n },\n });\n }\n}\n\n/** @internal */\nexport function preprocessTransformProperties(\n data: unknown,\n to: GeneralTransform,\n from?: string | string[],\n mapArray?: boolean | \"auto\",\n options?: TransformOptions\n): Record<string, unknown> {\n const props: Record<string, unknown> = {};\n const processedData = from ? get(data, from) : data;\n\n if (Array.isArray(to)) {\n for (const item of to) {\n pipeableTransform(\n props,\n processedData,\n item.to,\n item.from,\n item.mapArray,\n {\n allowInject: options?.allowInject,\n }\n );\n }\n } else {\n pipeableTransform(props, processedData, to, undefined, mapArray, {\n allowInject: options?.allowInject,\n });\n }\n const detail = {\n transform: to,\n data,\n options: { from, mapArray, allowInject: options?.allowInject },\n result: props,\n };\n if (options?.isReTransformation) {\n devtoolsHookEmit(\"re-transformation\", {\n id: options.transformationId,\n detail,\n });\n } else {\n devtoolsHookEmit(\"transformation\", detail);\n }\n return props;\n}\n\nfunction pipeableTransform(\n props: Record<string, unknown>,\n data: unknown,\n to: string | TransformMap,\n from?: string | string[],\n mapArray?: boolean | \"auto\",\n options?: {\n allowInject?: boolean;\n }\n): void {\n if (!to) {\n // Do nothing if `to` is falsy.\n return;\n }\n\n let fromData = from ? get(data, from) : data;\n\n let isArray = Array.isArray(fromData);\n if (!isArray && mapArray === true) {\n isArray = true;\n fromData = [fromData];\n } else if (isArray && mapArray === false) {\n isArray = false;\n }\n\n if (typeof to === \"string\") {\n props[to] = fromData;\n return;\n }\n\n for (const [transformedPropName, transformTo] of Object.entries(to)) {\n // If `fromData` is an array, mapping it's items.\n props[transformedPropName] = isArray\n ? (fromData as unknown[]).map((item) =>\n doTransform(item, transformTo, options)\n )\n : doTransform(fromData, transformTo, options);\n }\n}\n\n/** @internal */\nexport function transformIntermediateData(\n data: unknown,\n to: GeneralTransform,\n from?: string | string[],\n mapArray?: boolean | \"auto\"\n): unknown {\n const intermediateData = from ? get(data, from) : data;\n if (!to) {\n return intermediateData;\n }\n return transformProperties({}, intermediateData, to, undefined, mapArray);\n}\n\nfunction getNextDoTransformOptions(\n options: DoTransformOptions,\n isArray: boolean,\n key?: string\n): DoTransformOptions {\n return options\n ? {\n ...options,\n // Collect tracking context in first level only.\n trackingContextList: undefined,\n $$stateOfUseBrick: options.$$lazyForUseBrick\n ? getNextStateOfUseBrick(\n options.$$stateOfUseBrick ?? StateOfUseBrick.INITIAL,\n isArray,\n key\n )\n : undefined,\n }\n : options;\n}\n","import { evaluate } from \"./evaluate\";\nimport { reTransformForDevtools } from \"../transformProperties\";\n\nexport const MESSAGE_SOURCE_PANEL = \"brick-next-devtools-panel\";\nexport const EVALUATION_EDIT = \"devtools-evaluation-edit\";\nexport const TRANSFORMATION_EDIT = \"devtools-transformation-edit\";\n\ninterface DevtoolsHookContainer {\n __BRICK_NEXT_DEVTOOLS_HOOK__?: DevtoolsHook;\n}\n\ninterface DevtoolsHook {\n emit: (message: any) => void;\n restoreDehydrated: (value: unknown) => any;\n}\n\ninterface EditEvaluationPayload {\n raw: string;\n context: {\n data?: any;\n event?: any;\n };\n id: number;\n}\n\ninterface EditEvaluationPayload {\n type: typeof EVALUATION_EDIT;\n raw: string;\n context: {\n data?: any;\n event?: any;\n };\n id: number;\n}\n\ninterface EditTransformationPayload {\n type: typeof TRANSFORMATION_EDIT;\n data: any;\n transform: any;\n options: {\n from?: string | string[];\n mapArray?: boolean | \"auto\";\n allowInject?: boolean;\n };\n id: number;\n}\n\n/* istanbul ignore next */\nexport function devtoolsHookEmit(type: string, payload?: unknown): void {\n Promise.resolve().then(() => {\n getDevHook()?.emit?.({\n type,\n payload,\n });\n });\n}\n\nexport function listenDevtools(): void {\n window.addEventListener(\"message\", (event: MessageEvent): void => {\n if (event.data?.source !== MESSAGE_SOURCE_PANEL) {\n return;\n }\n const payload: EditEvaluationPayload | EditTransformationPayload =\n event.data.payload;\n if (payload?.type === EVALUATION_EDIT) {\n const { raw, context, id } = payload;\n evaluate(\n raw,\n {\n data: context.data,\n event: restoreDehydrated(context.event),\n },\n {\n isReEvaluation: true,\n evaluationId: id,\n }\n );\n } else if (payload?.type === TRANSFORMATION_EDIT) {\n const {\n data,\n transform,\n id,\n options: { from, mapArray, allowInject },\n } = payload;\n reTransformForDevtools(id, data, transform, from, mapArray, allowInject);\n }\n });\n}\n\nexport function getDevHook(): DevtoolsHook {\n return (window as DevtoolsHookContainer).__BRICK_NEXT_DEVTOOLS_HOOK__;\n}\n\nfunction restoreDehydrated(value: unknown): any {\n return getDevHook()?.restoreDehydrated(value) ?? value;\n}\n","export function getItemFactory(storageType: \"local\" | \"session\"): any {\n return function (name: string) {\n const storage = storageType === \"local\" ? localStorage : sessionStorage;\n return JSON.parse(storage.getItem(name));\n };\n}\n","import { Locale, K } from \"../constants\";\n\nconst locale: Locale = {\n [K.REQUEST_FAILED]: \"Request Failed\",\n [K.MODAL_OK]: \"Ok\",\n [K.MODAL_CANCEL]: \"Cancel\",\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\nexport default locale;\n","import { Locale, K } from \"../constants\";\n\nconst locale: Locale = {\n [K.REQUEST_FAILED]: \"请求失败\",\n [K.MODAL_OK]: \"确认\",\n [K.MODAL_CANCEL]: \"取消\",\n [K.SOMETHING_WENT_WRONG]: \"出现了一些问题!\",\n [K.LOGIN_TIMEOUT_MESSAGE]: \"您还未登录或登录信息已过期,现在重新登录?\",\n [K.NETWORK_ERROR]: \"网络错误,请检查您的网络连接。\",\n};\n\nexport default locale;\n","import i18next from \"i18next\";\nimport { NS_BRICK_KIT } from \"./constants\";\nimport en from \"./locales/en\";\nimport zh from \"./locales/zh\";\n\n/** @internal */\nexport const initI18n = (): void => {\n i18next.addResourceBundle(\"en\", NS_BRICK_KIT, en);\n i18next.addResourceBundle(\"zh\", NS_BRICK_KIT, zh);\n};\n\n/** @internal */\nexport function getI18nNamespace(type: \"app\" | \"widget\", id: string): string {\n return `$${type}-${id}`;\n}\n","import i18next, { getFixedT, TFunction } from \"i18next\";\nimport { MetaI18n } from \"@next-core/brick-types\";\nimport { getI18nNamespace } from \"../i18n\";\n\nexport function registerWidgetI18n(widgetId: string, i18n: MetaI18n): void {\n const ns = getI18nNamespace(\"widget\", widgetId);\n Object.entries(i18n).forEach(([lang, resources]) => {\n i18next.addResourceBundle(lang, ns, resources);\n });\n}\n\nexport function widgetI18nFactory(widgetId: string): TFunction {\n return getFixedT(null, getI18nNamespace(\"widget\", widgetId));\n}\n","import i18next from \"i18next\";\nimport { hasOwnProperty } from \"@next-core/brick-utils\";\nimport { I18nData } from \"@next-core/brick-types\";\n\nexport function i18nText(data: I18nData): string {\n if (!data) {\n return;\n }\n const language = i18next.language ?? \"zh-CN\";\n // First, make a perfect match.\n if (hasOwnProperty(data, language)) {\n return data[language];\n }\n // https://en.wikipedia.org/wiki/IETF_language_tag\n const primaryLanguage = language.split(\"-\")[0];\n if (primaryLanguage !== language) {\n // Then, match the primary language (which omits other subtags).\n // E.g., match `zh` if the current language is `zh-CN`.\n return hasOwnProperty(data, primaryLanguage)\n ? data[primaryLanguage]\n : undefined;\n }\n // At last, match the first key which starts with the primary language,\n // if the current language contains primary subtag only.\n // E.g., match `zh-CN` if the current language is `zh`.\n const prefix = `${primaryLanguage}-`;\n for (const key of Object.keys(data)) {\n if (key.startsWith(prefix)) {\n return data[key];\n }\n }\n}\n","import { AuthInfo } from \"@next-core/brick-types\";\nimport { userAnalytics } from \"@next-core/easyops-analytics\";\nimport { resetPermissionPreChecks } from \"./internal/checkPermissions\";\n\nconst auth: AuthInfo = {};\n\n/** @internal */\nexport function authenticate(newAuth: AuthInfo): void {\n Object.assign(auth, {\n org: newAuth.org,\n username: newAuth.username,\n userInstanceId: newAuth.userInstanceId,\n loginFrom: newAuth.loginFrom,\n accessRule: newAuth.accessRule,\n isAdmin: newAuth.isAdmin,\n });\n\n // re-init analytics to set user_id\n if (userAnalytics.initialized) {\n userAnalytics.setUserId(newAuth.userInstanceId);\n }\n}\n\n/**\n * 获取当前登录认证信息。\n *\n * @returns 当前登录认证信息。\n */\nexport function getAuth(): AuthInfo {\n return {\n ...auth,\n };\n}\n\n/** @internal */\nexport function logout(): void {\n auth.org = undefined;\n auth.username = undefined;\n auth.userInstanceId = undefined;\n auth.accessRule = undefined;\n auth.isAdmin = undefined;\n resetPermissionPreChecks();\n\n // re-init analytics to clear user_id\n userAnalytics.setUserId();\n}\n\n/**\n * 查看当前是否已登录。\n *\n * @returns 当前是否已登录。\n */\nexport function isLoggedIn(): boolean {\n return auth.username !== undefined;\n}\n","import { difference } from \"lodash\";\nimport { scanPermissionActionsInStoryboard } from \"@next-core/brick-utils\";\nimport { Storyboard } from \"@next-core/brick-types\";\nimport { PermissionApi_validatePermissions } from \"@next-sdk/micro-app-sdk\";\nimport { getAuth } from \"../auth\";\n\ntype PermissionStatus = \"authorized\" | \"unauthorized\" | \"undefined\";\n\nconst permissionMap = new Map<string, PermissionStatus>();\n\nexport async function preCheckPermissions(\n storyboard: Storyboard\n): Promise<void> {\n const usedActions = scanPermissionActionsInStoryboard(storyboard);\n await validatePermissions(usedActions);\n}\n\nexport async function validatePermissions(\n usedActions: string[]\n): Promise<void> {\n // Do not request known actions.\n const actions = difference(usedActions, Array.from(permissionMap.keys()));\n if (actions.length === 0) {\n return;\n }\n try {\n const result = await PermissionApi_validatePermissions({ actions });\n for (const item of result.actions) {\n permissionMap.set(item.action, item.authorizationStatus);\n if (item.authorizationStatus === \"undefined\") {\n // eslint-disable-next-line no-console\n console.error(`Undefined permission action: \"${item.action}\"`);\n }\n }\n } catch (error) {\n // Allow pre-check to fail, and\n // make it not crash when the backend service is not updated.\n // eslint-disable-next-line no-console\n console.error(\"Pre-check permissions failed\", error);\n }\n}\n\n/**\n * Check the current logged-in user whether to have all\n * permissions of actions passed to it.\n *\n * @param actions - Required permission actions.\n */\nexport function checkPermissions(...actions: string[]): boolean {\n if (getAuth().isAdmin) {\n return true;\n }\n\n for (const action of actions) {\n // Only **exclusively authorized** permissions are ok.\n // Those scenarios below will fail:\n // - unauthorized actions (pre-check results)\n // - undefined actions (pre-check results)\n // - Un-pre-checked or pre-check failed\n switch (permissionMap.get(action)) {\n case \"unauthorized\":\n case \"undefined\":\n return false;\n case undefined:\n // eslint-disable-next-line no-console\n console.error(\n `Un-checked permission action: \"${action}\", please make sure the permission to check is defined in permissionsPreCheck.`\n );\n return false;\n }\n }\n return true;\n}\n\n/**\n * Reset permission pre-checks after logged-out.\n */\nexport function resetPermissionPreChecks(): void {\n permissionMap.clear();\n}\n","import { getDevHook } from \"./devtools\";\n\nconst THROW = (): any => {\n throw new Error(\"Can't modify read-only proxy object\");\n};\n\nconst readOnlyHandler: ProxyHandler<object> = {\n set: THROW,\n defineProperty: THROW,\n deleteProperty: THROW,\n setPrototypeOf: THROW,\n};\n\nexport function getReadOnlyProxy(object: object): unknown {\n return new Proxy(object, readOnlyHandler);\n}\n\n// First, we want to make accessing property of globals lazy,\n// So we use *Proxy* to make a dynamic accessor for each of these globals.\n// But we also want to keep them working in devtools.\nexport function getDynamicReadOnlyProxy({\n get,\n ownKeys,\n}: Pick<ProxyHandler<object>, \"get\" | \"ownKeys\">): unknown {\n if (getDevHook()) {\n // In devtools, we extract them at beginning.\n const target = Object.fromEntries(\n (ownKeys(null) as string[]).map((key) => [key, get(null, key, null)])\n );\n return getReadOnlyProxy(target);\n }\n return new Proxy(Object.freeze({}), { get });\n}\n","import { getFixedT } from \"i18next\";\nimport { identity } from \"lodash\";\nimport type { MicroApp } from \"@next-core/brick-types\";\nimport { widgetI18nFactory } from \"../core/WidgetI18n\";\nimport { i18nText } from \"../i18nText\";\nimport { getI18nNamespace } from \"../i18n\";\nimport { ImagesFactory, imagesFactory, widgetImagesFactory } from \"./images\";\nimport { getBasePath } from \"./getBasePath\";\nimport { getTheme } from \"../themeAndMode\";\nimport { checkPermissions } from \"./checkPermissions\";\nimport { getReadOnlyProxy } from \"./proxyFactories\";\n\nexport interface GeneralGlobalsOptions {\n collectCoverage?: unknown;\n widgetId?: string;\n app?: PartialMicroApp;\n storyboardFunctions?: unknown;\n isStoryboardFunction?: boolean;\n}\n\nexport type PartialMicroApp = Pick<MicroApp, \"id\" | \"isBuildPush\">;\n\n// `GeneralGlobals` are globals which are page-state-agnostic,\n// thus they can be used both in storyboard expressions and functions.\nexport function getGeneralGlobals(\n attemptToVisitGlobals: Set<string>,\n options: GeneralGlobalsOptions\n): Record<string, unknown> {\n const globalVariables: Record<string, unknown> = {};\n for (const variableName of attemptToVisitGlobals) {\n const variable = getIndividualGlobal(variableName, options);\n if (variable !== undefined) {\n globalVariables[variableName] = variable;\n }\n }\n return globalVariables;\n}\n\nfunction getIndividualGlobal(\n variableName: string,\n {\n collectCoverage,\n widgetId,\n app,\n storyboardFunctions,\n isStoryboardFunction,\n }: GeneralGlobalsOptions\n): unknown {\n switch (variableName) {\n case \"BASE_URL\":\n return collectCoverage ? \"/next\" : getBasePath().replace(/\\/$/, \"\");\n case \"FN\":\n return storyboardFunctions;\n case \"IMG\":\n return collectCoverage\n ? fakeImageFactory()\n : widgetId\n ? widgetImagesFactory(widgetId)\n : imagesFactory(app.id, app.isBuildPush);\n case \"I18N\":\n return collectCoverage\n ? identity\n : widgetId\n ? widgetI18nFactory(widgetId)\n : getFixedT(null, getI18nNamespace(\"app\", app.id));\n case \"I18N_TEXT\":\n return collectCoverage ? fakeI18nText : i18nText;\n case \"PERMISSIONS\":\n return {\n check: collectCoverage ? fakeCheckPermissions : checkPermissions,\n };\n case \"THEME\":\n return {\n getTheme: collectCoverage ? () => \"light\" : getTheme,\n };\n case \"console\":\n return isStoryboardFunction ? getReadOnlyProxy(console) : undefined;\n case \"location\":\n return collectCoverage\n ? {\n href: \"http://localhost:3000/functions/test\",\n origin: \"http://localhost:3000\",\n }\n : { href: location.href, origin: location.origin };\n }\n}\n\nfunction fakeI18nText(data: Record<string, string>): string {\n return data?.en;\n}\n\nfunction fakeImageFactory(): ImagesFactory {\n return {\n get(name: string) {\n return `mock/images/${name}`;\n },\n };\n}\n\nfunction fakeCheckPermissions(): boolean {\n return true;\n}\n","import {\n MicroApp,\n SimpleFunction,\n StoryboardFunction,\n} from \"@next-core/brick-types\";\nimport { cook, precookFunction, EstreeNode } from \"@next-core/brick-utils\";\nimport { supply } from \"@next-core/supply\";\nimport { getGeneralGlobals } from \"../internal/getGeneralGlobals\";\n\n/** @internal */\nexport type ReadonlyStoryboardFunctions = Readonly<\n Record<string, SimpleFunction>\n>;\n\n/** @internal */\nexport type StoryboardFunctionPatch = Pick<\n StoryboardFunction,\n \"source\" | \"typescript\"\n>;\n\n/** @internal */\nexport interface StoryboardFunctionRegistry {\n /** A readonly proxy for accessing cooked storyboard functions. */\n storyboardFunctions: ReadonlyStoryboardFunctions;\n\n /** Register storyboard functions. */\n registerStoryboardFunctions(\n functions: StoryboardFunction[],\n app?: PartialMicroApp\n ): void;\n\n /** Update a storyboard function during debugging. */\n updateStoryboardFunction(name: string, data: StoryboardFunctionPatch): void;\n}\n\n/** @internal */\nexport interface RuntimeStoryboardFunction {\n source: string;\n typescript?: boolean;\n processed?: boolean;\n cooked?: SimpleFunction;\n}\n\n/** @internal */\nexport interface FunctionCoverageCollector {\n beforeVisit(node: EstreeNode): void;\n beforeEvaluate(node: EstreeNode): void;\n beforeCall(node: EstreeNode): void;\n beforeBranch(node: EstreeNode, branch: string): void;\n}\n\n/** @internal */\nexport interface FunctionCoverageSettings {\n createCollector(name: string): FunctionCoverageCollector;\n}\n\n/** @internal */\nexport type PartialMicroApp = Pick<MicroApp, \"id\" | \"isBuildPush\">;\n\n/** @internal */\nexport function StoryboardFunctionRegistryFactory({\n widgetId,\n collectCoverage,\n}: {\n widgetId?: string;\n collectCoverage?: FunctionCoverageSettings;\n} = {}): StoryboardFunctionRegistry {\n const registeredFunctions = new Map<string, RuntimeStoryboardFunction>();\n\n // Use `Proxy` with a frozen target, to make a readonly function registry.\n const storyboardFunctions = new Proxy(Object.freeze({}), {\n get(target, key) {\n return getStoryboardFunction(key as string);\n },\n }) as ReadonlyStoryboardFunctions;\n\n let currentApp: PartialMicroApp;\n\n function registerStoryboardFunctions(\n functions: StoryboardFunction[],\n app?: PartialMicroApp\n ): void {\n if (app) {\n currentApp = app;\n }\n registeredFunctions.clear();\n if (Array.isArray(functions)) {\n for (const fn of functions) {\n registeredFunctions.set(fn.name, {\n source: fn.source,\n typescript: fn.typescript,\n });\n }\n }\n }\n\n function getStoryboardFunction(name: string): SimpleFunction {\n const fn = registeredFunctions.get(name);\n if (!fn) {\n return undefined;\n }\n if (fn.processed) {\n return fn.cooked;\n }\n let collector: FunctionCoverageCollector;\n if (collectCoverage) {\n collector = collectCoverage.createCollector(name);\n }\n const precooked = precookFunction(fn.source, {\n typescript: fn.typescript,\n hooks: collector && {\n beforeVisit: collector.beforeVisit,\n },\n });\n fn.cooked = cook(precooked.function, fn.source, {\n rules: {\n noVar: true,\n },\n globalVariables: supply(\n precooked.attemptToVisitGlobals,\n getGeneralGlobals(precooked.attemptToVisitGlobals, {\n collectCoverage,\n widgetId,\n app: currentApp,\n storyboardFunctions,\n isStoryboardFunction: true,\n }),\n !!collectCoverage\n ),\n hooks: collector && {\n beforeEvaluate: collector.beforeEvaluate,\n beforeCall: collector.beforeCall,\n beforeBranch: collector.beforeBranch,\n },\n }) as SimpleFunction;\n fn.processed = true;\n return fn.cooked;\n }\n\n return {\n storyboardFunctions,\n registerStoryboardFunctions,\n updateStoryboardFunction(\n name: string,\n data: StoryboardFunctionPatch\n ): void {\n registeredFunctions.set(name, {\n source: data.source,\n typescript: data.typescript,\n });\n },\n };\n}\n","import { StoryboardFunctionRegistryFactory } from \"./StoryboardFunctionRegistryFactory\";\n\nexport const { storyboardFunctions, registerStoryboardFunctions } =\n StoryboardFunctionRegistryFactory();\n","import { StoryboardFunction } from \"@next-core/brick-types\";\nimport {\n ReadonlyStoryboardFunctions,\n StoryboardFunctionRegistryFactory,\n} from \"./StoryboardFunctionRegistryFactory\";\n\nconst widgetFunctionRegistry = new Map<string, ReadonlyStoryboardFunctions>();\n\nexport const widgetFunctions = new Proxy(Object.freeze({}), {\n get(target, key: string) {\n return widgetFunctionRegistry.get(key);\n },\n}) as Readonly<Record<string, ReadonlyStoryboardFunctions>>;\n\nexport function registerWidgetFunctions(\n widgetId: string,\n functions: StoryboardFunction[]\n): void {\n if (widgetFunctionRegistry.has(widgetId)) {\n // eslint-disable-next-line no-console\n throw new Error(`Widget functions of \"${widgetId}\" already registered`);\n }\n const { storyboardFunctions, registerStoryboardFunctions } =\n StoryboardFunctionRegistryFactory({ widgetId });\n widgetFunctionRegistry.set(widgetId, storyboardFunctions);\n registerStoryboardFunctions(functions);\n}\n","/*! (c) Andrea Giammarchi - ISC */\nvar self = {};\ntry {\n self.EventTarget = (new EventTarget).constructor;\n} catch(EventTarget) {\n (function (Object, wm) {\n var create = Object.create;\n var defineProperty = Object.defineProperty;\n var proto = EventTarget.prototype;\n define(proto, 'addEventListener', function (type, listener, options) {\n for (var\n secret = wm.get(this),\n listeners = secret[type] || (secret[type] = []),\n i = 0, length = listeners.length; i < length; i++\n ) {\n if (listeners[i].listener === listener)\n return;\n }\n listeners.push({target: this, listener: listener, options: options});\n });\n define(proto, 'dispatchEvent', function (event) {\n var secret = wm.get(this);\n var listeners = secret[event.type];\n if (listeners) {\n define(event, 'target', this);\n define(event, 'currentTarget', this);\n listeners.slice(0).some(dispatch, event);\n delete event.currentTarget;\n delete event.target;\n }\n return true;\n });\n define(proto, 'removeEventListener', function (type, listener) {\n for (var\n secret = wm.get(this),\n /* istanbul ignore next */\n listeners = secret[type] || (secret[type] = []),\n i = 0, length = listeners.length; i < length; i++\n ) {\n if (listeners[i].listener === listener) {\n listeners.splice(i, 1);\n return;\n }\n }\n });\n self.EventTarget = EventTarget;\n function EventTarget() {'use strict';\n wm.set(this, create(null));\n }\n function define(target, name, value) {\n defineProperty(\n target,\n name,\n {\n configurable: true,\n writable: true,\n value: value\n }\n );\n }\n function dispatch(info) {\n var options = info.options;\n if (options && options.once)\n info.target.removeEventListener(this.type, info.listener);\n if (typeof info.listener === 'function')\n info.listener.call(info.target, this);\n else\n info.listener.handleEvent(this);\n return this._stopImmediatePropagationFlag;\n }\n }(Object, new WeakMap));\n}\nexport default self.EventTarget;\n","import { PluginRuntimeContext } from \"@next-core/brick-types\";\nimport { hasOwnProperty } from \"@next-core/brick-utils\";\nimport { computeRealValue } from \"./internal/setProperties\";\nimport { doTransform, DoTransformOptions } from \"./transformProperties\";\nimport { isPreEvaluated } from \"./internal/evaluate\";\n\ntype GetIf = (rawIf: unknown, ctx: unknown) => unknown;\n\n/**\n * 包含 `if` 条件判断的对象。\n */\nexport interface IfContainer {\n /**\n * 条件判断,可以为表达式字符串。\n *\n * @example\n *\n * ```yaml\n * - brick: your.any-brick\n * if: '<% FLAGS['your-feature-flag'] %>'\n * ```\n */\n if?: unknown;\n}\n\n/** @internal */\nexport function looseCheckIf(\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): boolean {\n return (\n !hasOwnProperty(ifContainer, \"if\") ||\n _looseCheckIf(ifContainer.if, context, computeRealValue as GetIf)\n );\n}\n\n/**\n * 给定一个数据源,根据表达式计算条件判断的结果。\n *\n * @remarks\n *\n * 当 `ifContainer` 中没有出现 `if` 字段时,则认为条件判断为 `true`。\n *\n * 而如果 `if` 为表达式字符串时,将根据给定的数据源 `data` 进行 transform,并返回转换为 boolean 类型后的结果。\n *\n * @example\n *\n * ```ts\n * const brickConf = {\n * if: \"<% DATA.list.length > 0 %>\",\n * brick: \"your.any-brick\"\n * }\n * const data = { list: [] };\n * const result = looseCheckIfByTransform(\n * brickConf,\n * data\n * );\n * // Returns false.\n * ```\n *\n * @example\n *\n * ```ts\n * const brickConf = {\n * if: \"<% DATA.list.length %>\",\n * brick: \"your.any-brick\"\n * }\n * const data = { list: [ 1, 2 ] };\n * const result = looseCheckIfByTransform(\n * brickConf,\n * data\n * );\n * // Returns true.\n * ```\n *\n * @example\n *\n * ```ts\n * const brickConf = {\n * brick: \"your.any-brick\"\n * }\n * const result = looseCheckIfByTransform(\n * brickConf,\n * data\n * );\n * // Returns true.\n * ```\n *\n * @param ifContainer - 包含 `if` 条件判断的配置对象。\n * @param data - 要传递的数据源。\n * @param options - `allowInject` 允许在 `if` 中使用 `${...}` 占位符。\n *\n * @returns 条件判断的结果。\n */\nexport function looseCheckIfByTransform(\n ifContainer: IfContainer,\n data: unknown,\n options?: Pick<DoTransformOptions, \"allowInject\" | \"tplContextId\">\n): boolean {\n return (\n !hasOwnProperty(ifContainer, \"if\") ||\n _looseCheckIf(ifContainer.if, data, (_rawIf, _data) =>\n doTransform(_data, _rawIf, options)\n )\n );\n}\n\n/** @internal */\nexport function looseCheckIfOfComputed(ifContainer: IfContainer): boolean {\n return !hasOwnProperty(ifContainer, \"if\") || !!ifContainer.if;\n}\n\nfunction _looseCheckIf(rawIf: unknown, ctx: unknown, fn: GetIf): boolean {\n return !!(typeof rawIf === \"string\" || isPreEvaluated(rawIf)\n ? fn(rawIf, ctx)\n : rawIf);\n}\n\n/**\n * @deprecated 现在使用 `looseCheckIf`。\n * @internal\n */\nexport function checkIf(\n rawIf: string | boolean,\n context: PluginRuntimeContext\n): boolean {\n return _checkIf(rawIf, context, computeRealValue as GetIf);\n}\n\n/**\n * @deprecated 现在使用 `looseCheckIfByTransform`。\n * @internal\n */\nexport function checkIfByTransform(\n rawIf: string | boolean,\n data: unknown\n): boolean {\n return _checkIf(rawIf, data, (_rawIf, _data) => doTransform(_data, _rawIf));\n}\n\nfunction _checkIf(rawIf: string | boolean, ctx: unknown, fn: GetIf): boolean {\n if (\n typeof rawIf === \"boolean\" ||\n typeof rawIf === \"string\" ||\n isPreEvaluated(rawIf)\n ) {\n const ifChecked = fn(rawIf, ctx);\n if (ifChecked === false) {\n return false;\n }\n /* istanbul ignore if */\n if (ifChecked !== true) {\n // eslint-disable-next-line no-console\n console.warn(\"Received an unexpected condition result:\", ifChecked);\n }\n } else if (rawIf != null) {\n // eslint-disable-next-line no-console\n console.warn(\"Unsupported `if`:\", rawIf);\n }\n return true;\n}\n","import EventTarget from \"@ungap/event-target\";\nimport {\n BrickEventHandler,\n ContextConf,\n PluginRuntimeContext,\n StoryboardContextItem,\n StoryboardContextItemFreeVariable,\n} from \"@next-core/brick-types\";\nimport {\n hasOwnProperty,\n isObject,\n resolveContextConcurrently,\n syncResolveContextConcurrently,\n} from \"@next-core/brick-utils\";\nimport { looseCheckIf } from \"../checkIf\";\nimport { listenerFactory } from \"../internal/bindListeners\";\nimport { computeRealValue } from \"../internal/setProperties\";\nimport { RuntimeBrick, _internalApiGetResolver } from \"./exports\";\n\nexport class StoryboardContextWrapper {\n private readonly data = new Map<string, StoryboardContextItem>();\n readonly tplContextId: string;\n\n constructor(tplContextId?: string) {\n this.tplContextId = tplContextId;\n }\n\n set(name: string, item: StoryboardContextItem): void {\n if (this.data.has(name)) {\n // eslint-disable-next-line no-console\n console.warn(\n `Storyboard context \"${name}\" have already existed, it will be replaced.`\n );\n }\n this.data.set(name, item);\n }\n\n get(): Map<string, StoryboardContextItem> {\n return this.data;\n }\n\n /** Get value of free-variable only. */\n getValue(name: string): unknown {\n return (this.data.get(name) as StoryboardContextItemFreeVariable)?.value;\n }\n\n updateValue(\n name: string,\n value: unknown,\n method: \"assign\" | \"replace\"\n ): void {\n if (!this.data.has(name)) {\n if (this.tplContextId) {\n throw new Error(`State not found: ${name}`);\n } else {\n // eslint-disable-next-line no-console\n console.warn(\n `Context \"${name}\" is not declared, we recommend declaring it first.`\n );\n this.set(name, {\n type: \"free-variable\",\n value,\n });\n return;\n }\n }\n\n const item = this.data.get(name) as StoryboardContextItemFreeVariable;\n if (item.type !== \"free-variable\") {\n // eslint-disable-next-line no-console\n console.error(\n `Conflict storyboard context \"${name}\", expected \"free-variable\", received \"${item.type}\".`\n );\n return;\n }\n\n if (method === \"replace\") {\n item.value = value;\n } else {\n if (isObject(item.value)) {\n Object.assign(item.value, value);\n } else {\n // eslint-disable-next-line no-console\n console.warn(\n `Non-object current value of context \"${name}\" for \"context.assign\", try \"context.replace\" instead.`\n );\n item.value = value;\n }\n }\n\n item.eventTarget?.dispatchEvent(\n new CustomEvent(this.tplContextId ? \"state.change\" : \"context.change\", {\n detail: item.value,\n })\n );\n }\n\n async define(\n contextConfs: ContextConf[],\n coreContext: PluginRuntimeContext,\n brick?: RuntimeBrick\n ): Promise<void> {\n if (Array.isArray(contextConfs)) {\n const { mergedContext, keyword } = this.getResolveOptions(coreContext);\n await resolveContextConcurrently(\n contextConfs,\n (contextConf: ContextConf) =>\n resolveStoryboardContext(contextConf, mergedContext, this, brick),\n keyword\n );\n }\n }\n\n syncDefine(\n contextConfs: ContextConf[],\n coreContext: PluginRuntimeContext,\n brick: RuntimeBrick\n ): void {\n if (Array.isArray(contextConfs)) {\n const { mergedContext, keyword } = this.getResolveOptions(coreContext);\n syncResolveContextConcurrently(\n contextConfs,\n (contextConf: ContextConf) =>\n syncResolveStoryboardContext(contextConf, mergedContext, this, brick),\n keyword\n );\n }\n }\n\n private getResolveOptions(coreContext: PluginRuntimeContext): {\n mergedContext: PluginRuntimeContext;\n keyword: string;\n } {\n return this.tplContextId\n ? {\n mergedContext: { ...coreContext, tplContextId: this.tplContextId },\n keyword: \"STATE\",\n }\n : {\n mergedContext: coreContext,\n keyword: \"CTX\",\n };\n }\n}\n\nasync function resolveStoryboardContext(\n contextConf: ContextConf,\n coreContext: PluginRuntimeContext,\n storyboardContextWrapper: StoryboardContextWrapper,\n brick?: RuntimeBrick\n): Promise<boolean> {\n if (contextConf.property) {\n if (storyboardContextWrapper.tplContextId) {\n throw new Error(\n \"Setting `property` is not allowed in template scoped context\"\n );\n }\n if (brick) {\n storyboardContextWrapper.set(contextConf.name, {\n type: \"brick-property\",\n brick,\n prop: contextConf.property,\n });\n }\n return true;\n }\n return resolveNormalStoryboardContext(\n contextConf,\n coreContext,\n storyboardContextWrapper,\n brick\n );\n}\n\nasync function resolveNormalStoryboardContext(\n contextConf: ContextConf,\n mergedContext: PluginRuntimeContext,\n storyboardContextWrapper: StoryboardContextWrapper,\n brick?: RuntimeBrick\n): Promise<boolean> {\n if (!looseCheckIf(contextConf, mergedContext)) {\n return false;\n }\n let isResolve = false;\n let value = getDefinedTemplateState(\n !!storyboardContextWrapper.tplContextId,\n contextConf,\n brick\n );\n if (value === undefined) {\n if (contextConf.resolve) {\n if (looseCheckIf(contextConf.resolve, mergedContext)) {\n isResolve = true;\n const valueConf: Record<string, unknown> = {};\n await _internalApiGetResolver().resolveOne(\n \"reference\",\n {\n transform: \"value\",\n transformMapArray: false,\n ...contextConf.resolve,\n },\n valueConf,\n null,\n mergedContext\n );\n value = valueConf.value;\n } else if (!hasOwnProperty(contextConf, \"value\")) {\n return false;\n }\n }\n if (!isResolve && contextConf.value !== undefined) {\n value = computeRealValue(contextConf.value, mergedContext, true);\n }\n }\n resolveFreeVariableValue(\n value,\n contextConf,\n mergedContext,\n storyboardContextWrapper,\n brick\n );\n return true;\n}\n\nfunction syncResolveStoryboardContext(\n contextConf: ContextConf,\n mergedContext: PluginRuntimeContext,\n storyboardContextWrapper: StoryboardContextWrapper,\n brick?: RuntimeBrick\n): boolean {\n if (!looseCheckIf(contextConf, mergedContext)) {\n return false;\n }\n if (contextConf.resolve) {\n throw new Error(\"resolve is not allowed here\");\n }\n let value = getDefinedTemplateState(\n !!storyboardContextWrapper.tplContextId,\n contextConf,\n brick\n );\n if (value === undefined) {\n value = computeRealValue(contextConf.value, mergedContext, true);\n }\n resolveFreeVariableValue(\n value,\n contextConf,\n mergedContext,\n storyboardContextWrapper,\n brick\n );\n return true;\n}\n\nfunction getDefinedTemplateState(\n isTemplateState: boolean,\n contextConf: ContextConf,\n brick: RuntimeBrick\n): unknown {\n if (\n isTemplateState &&\n brick.properties &&\n hasOwnProperty(brick.properties, contextConf.name)\n ) {\n return brick.properties[contextConf.name];\n }\n}\n\nfunction resolveFreeVariableValue(\n value: unknown,\n contextConf: ContextConf,\n mergedContext: PluginRuntimeContext,\n storyboardContextWrapper: StoryboardContextWrapper,\n brick?: RuntimeBrick\n): void {\n const newContext: StoryboardContextItem = {\n type: \"free-variable\",\n value,\n // This is required for tracking context, even if no `onChange` is specified.\n eventTarget: new EventTarget(),\n };\n if (contextConf.onChange) {\n for (const handler of ([] as BrickEventHandler[]).concat(\n contextConf.onChange\n )) {\n newContext.eventTarget.addEventListener(\n storyboardContextWrapper.tplContextId\n ? \"state.change\"\n : \"context.change\",\n listenerFactory(handler, mergedContext, brick)\n );\n }\n }\n storyboardContextWrapper.set(contextConf.name, newContext);\n}\n","import { uniqueId } from \"lodash\";\nimport { RuntimeBrick } from \"../BrickNode\";\nimport { StoryboardContextWrapper } from \"../StoryboardContext\";\n\nconst tplContextMap = new Map<string, CustomTemplateContext>();\n\nexport class CustomTemplateContext {\n private variables: Record<string, unknown>;\n readonly state: StoryboardContextWrapper;\n readonly id = uniqueId(\"tpl-ctx-\");\n\n constructor(private brick: RuntimeBrick) {\n tplContextMap.set(this.id, this);\n this.state = new StoryboardContextWrapper(this.id);\n brick.tplContextId = this.id;\n }\n\n setVariables(variables: Record<string, unknown>): void {\n this.variables = variables;\n Object.freeze(variables);\n }\n\n getVariables(): Record<string, unknown> {\n const { element } = this.brick;\n if (element) {\n return Object.fromEntries(\n Object.keys(this.variables).map((prop) => [\n prop,\n (element as any)[prop],\n ])\n );\n }\n return this.variables;\n }\n\n getBrick(): RuntimeBrick {\n return this.brick;\n }\n}\n\nexport function getCustomTemplateContext(\n tplContextId: string\n): CustomTemplateContext {\n return tplContextMap.get(tplContextId);\n}\n","import EventTarget from \"@ungap/event-target\";\n\nexport interface Media {\n breakpoint?: MediaBreakpoint;\n}\n\nexport enum MediaBreakpoint {\n xLarge = \"xLarge\",\n large = \"large\",\n medium = \"medium\",\n small = \"small\",\n xSmall = \"xSmall\",\n}\n\nexport const mediaBreakpointMinWidthMap = new Map<\n MediaBreakpoint,\n string | number\n>([\n [MediaBreakpoint.xLarge, \"1920px\"],\n [MediaBreakpoint.large, \"1600px\"],\n [MediaBreakpoint.medium, \"1280px\"],\n [MediaBreakpoint.small, \"1024px\"],\n [MediaBreakpoint.xSmall, 0],\n]);\nexport const mediaEventTarget = new EventTarget();\n\nconst breakpointMatchesMap: Partial<Record<MediaBreakpoint, boolean>> = {};\nconst MEDIA: Media = {};\n\nfunction handleMatchesChange(\n data: { readonly matches: boolean; readonly media: string },\n breakpoint: MediaBreakpoint\n): void {\n let changed = false;\n breakpointMatchesMap[breakpoint] = data.matches;\n\n for (const [breakpoint] of mediaBreakpointMinWidthMap) {\n if (breakpointMatchesMap[breakpoint] && MEDIA.breakpoint !== breakpoint) {\n MEDIA.breakpoint = breakpoint;\n changed = true;\n break;\n }\n }\n\n if (changed) {\n mediaEventTarget.dispatchEvent(\n new CustomEvent(\"change\", { detail: MEDIA })\n );\n }\n}\n\nmediaBreakpointMinWidthMap.forEach((minWidth, breakpoint) => {\n const mediaQueryList = window.matchMedia(`(min-width: ${minWidth})`);\n\n handleMatchesChange(mediaQueryList, breakpoint);\n\n if (mediaQueryList.addEventListener) {\n mediaQueryList.addEventListener(\"change\", (event) => {\n handleMatchesChange(event, breakpoint);\n });\n } else {\n mediaQueryList.addListener((event) => {\n handleMatchesChange(event, breakpoint);\n });\n }\n});\n\nexport const getMedia = (): Media => MEDIA;\n","import { cloneDeep } from \"lodash\";\nimport {\n cook,\n hasOwnProperty,\n isEvaluable,\n preevaluate,\n PreevaluateResult,\n shouldAllowRecursiveEvaluations,\n} from \"@next-core/brick-utils\";\nimport { supply } from \"@next-core/supply\";\nimport { MicroApp } from \"@next-core/brick-types\";\nimport { _internalApiGetCurrentContext } from \"../core/Runtime\";\nimport { getUrlBySegueFactory } from \"./segue\";\nimport { getUrlByAliasFactory } from \"./alias\";\nimport { widgetImagesFactory } from \"./images\";\nimport { devtoolsHookEmit } from \"./devtools\";\nimport { customProcessorRegistry } from \"../core/exports\";\nimport { getItemFactory } from \"./Storage\";\nimport { getRuntime } from \"../runtime\";\nimport { storyboardFunctions } from \"../core/StoryboardFunctions\";\nimport { widgetFunctions } from \"../core/WidgetFunctions\";\nimport { widgetI18nFactory } from \"../core/WidgetI18n\";\nimport { getGeneralGlobals } from \"./getGeneralGlobals\";\nimport { getReadOnlyProxy, getDynamicReadOnlyProxy } from \"./proxyFactories\";\nimport { getCustomTemplateContext } from \"../core/CustomTemplates/CustomTemplateContext\";\nimport { getMenu } from \"./menu\";\nimport { getMedia } from \"./mediaQuery\";\n\nconst symbolForRaw = Symbol.for(\"pre.evaluated.raw\");\nconst symbolForContext = Symbol.for(\"pre.evaluated.context\");\n\nexport interface PreEvaluated {\n [symbolForRaw]: string;\n [symbolForContext]: EvaluateRuntimeContext;\n}\n\nexport interface EvaluateOptions {\n lazy?: boolean;\n isReEvaluation?: boolean;\n evaluationId?: number;\n}\n\nexport interface EvaluateRuntimeContext {\n event?: CustomEvent;\n data?: unknown;\n tplContextId?: string;\n overrideApp?: MicroApp;\n}\n\nexport function isPreEvaluated(raw: unknown): raw is PreEvaluated {\n return !!(raw as PreEvaluated)?.[symbolForRaw];\n}\n\nexport function shouldDismissRecursiveMarkingInjected(\n raw: string | PreEvaluated\n): boolean {\n if (typeof raw === \"string\") {\n return shouldAllowRecursiveEvaluations(raw);\n }\n return shouldAllowRecursiveEvaluations(raw[symbolForRaw]);\n}\n\nconst possibleErrorConstructs = new WeakSet<ErrorConstructor>([\n SyntaxError,\n TypeError,\n ReferenceError,\n]);\n\nexport function getCookErrorConstructor(error: any): ErrorConstructor {\n return possibleErrorConstructs.has(error.constructor)\n ? error.constructor\n : TypeError;\n}\n\n// `raw` should always be asserted to `isEvaluable` or `isPreEvaluated`.\nexport function evaluate(\n raw: string | PreEvaluated, // string or pre-evaluated object.\n runtimeContext: EvaluateRuntimeContext = {},\n options: EvaluateOptions = {}\n): unknown {\n if (\n options.isReEvaluation &&\n !(typeof raw === \"string\" && isEvaluable(raw))\n ) {\n devtoolsHookEmit(\"re-evaluation\", {\n id: options.evaluationId,\n detail: { raw, context: {} },\n error: \"Invalid evaluation code\",\n });\n return;\n }\n\n if (typeof raw !== \"string\") {\n // If the `raw` is not a string, it must be a pre-evaluated object.\n // Then fulfil the context, and restore the original `raw`.\n runtimeContext = {\n ...raw[symbolForContext],\n ...runtimeContext,\n };\n raw = raw[symbolForRaw];\n }\n\n // A `SyntaxError` maybe thrown.\n let precooked: PreevaluateResult;\n try {\n precooked = preevaluate(raw);\n } catch (error) {\n const message = `${error.message}, in \"${raw}\"`;\n if (options.isReEvaluation) {\n devtoolsHookEmit(\"re-evaluation\", {\n id: options.evaluationId,\n detail: { raw, context: {} },\n error: message,\n });\n return;\n } else {\n const errorConstructor = getCookErrorConstructor(error);\n throw new errorConstructor(message);\n }\n }\n\n const globalVariables: Record<string, unknown> = {};\n const attemptToVisitGlobals = precooked.attemptToVisitGlobals;\n\n const attemptToVisitEvent = attemptToVisitGlobals.has(\"EVENT\");\n const attemptToVisitData = attemptToVisitGlobals.has(\"DATA\");\n const attemptToVisitTpl = attemptToVisitGlobals.has(\"TPL\");\n const attemptToVisitState = attemptToVisitGlobals.has(\"STATE\");\n const attemptToVisitTplOrState = attemptToVisitTpl || attemptToVisitState;\n\n // Ignore evaluating if `event` is missing in context.\n // Since it should be evaluated during events handling.\n let missingEvent = options.lazy === true;\n if (attemptToVisitEvent) {\n if (hasOwnProperty(runtimeContext, \"event\")) {\n globalVariables.EVENT = runtimeContext.event;\n } else {\n // Let's see if pre-evaluation is required (store the `data` in context).\n missingEvent = true;\n }\n }\n\n const missingTplOrState =\n attemptToVisitTplOrState && !hasOwnProperty(runtimeContext, \"tplContextId\");\n const missingData =\n attemptToVisitData && !hasOwnProperty(runtimeContext, \"data\");\n\n const rawWithContext =\n Object.keys(runtimeContext).length > 0\n ? ({\n [symbolForRaw]: raw,\n [symbolForContext]: runtimeContext,\n } as PreEvaluated)\n : raw;\n\n // Since `EVENT`, `DATA`, `TPL` and `STATE` are provided in different context,\n // whenever missing one of them, memorize the current context for later consuming.\n if (missingEvent || missingData || missingTplOrState) {\n return rawWithContext;\n }\n\n if (attemptToVisitData) {\n globalVariables.DATA = runtimeContext.data;\n }\n\n if (attemptToVisitTplOrState && runtimeContext.tplContextId) {\n const tplContext = getCustomTemplateContext(runtimeContext.tplContextId);\n if (attemptToVisitTpl) {\n globalVariables.TPL = tplContext.getVariables();\n }\n if (attemptToVisitState) {\n globalVariables.STATE = getDynamicReadOnlyProxy({\n get(target, key: string) {\n return tplContext.state.getValue(key);\n },\n ownKeys() {\n return Array.from(tplContext.state.get().keys());\n },\n });\n }\n }\n\n const {\n app: currentApp,\n query,\n match,\n sys,\n flags,\n hash,\n pathname,\n segues,\n storyboardContext,\n } = _internalApiGetCurrentContext();\n\n const app = runtimeContext.overrideApp ?? currentApp;\n\n function getIndividualGlobal(variableName: string): unknown {\n switch (variableName) {\n case \"ALIAS\":\n return {\n getUrl: getUrlByAliasFactory(app),\n };\n case \"ANCHOR\":\n return hash ? hash.substr(1) : null;\n case \"APP\":\n return {\n ...cloneDeep(app),\n getMenu,\n };\n case \"CTX\":\n return getDynamicReadOnlyProxy({\n get(target, key: string) {\n const item = storyboardContext.get(key);\n return !item\n ? item\n : item.type === \"brick-property\"\n ? item.brick.element?.[item.prop as keyof HTMLElement]\n : item.value;\n },\n ownKeys() {\n return Array.from(storyboardContext.keys());\n },\n });\n case \"FLAGS\":\n return getReadOnlyProxy(flags);\n case \"HASH\":\n return hash;\n case \"PATH_NAME\":\n return pathname;\n case \"INSTALLED_APPS\":\n return {\n has: (appId: string, matchVersion?: string) =>\n getRuntime().hasInstalledApp(appId, matchVersion),\n };\n case \"LOCAL_STORAGE\":\n return {\n getItem: getItemFactory(\"local\"),\n };\n case \"MISC\":\n return getRuntime().getMiscSettings();\n case \"PARAMS\":\n return new URLSearchParams(query);\n case \"PATH\":\n return getReadOnlyProxy(match.params);\n case \"PROCESSORS\":\n return getDynamicReadOnlyProxy({\n get(target, key: string) {\n const pkg = customProcessorRegistry.get(key);\n return pkg\n ? getDynamicReadOnlyProxy({\n get(t, k: string) {\n return pkg.get(k);\n },\n ownKeys() {\n return Array.from(pkg.keys());\n },\n })\n : pkg;\n },\n ownKeys() {\n return Array.from(customProcessorRegistry.keys());\n },\n });\n case \"QUERY\":\n return Object.fromEntries(\n Array.from(query.keys()).map((key) => [key, query.get(key)])\n );\n case \"QUERY_ARRAY\":\n return Object.fromEntries(\n Array.from(query.keys()).map((key) => [key, query.getAll(key)])\n );\n case \"SEGUE\":\n return {\n getUrl: getUrlBySegueFactory(app, segues),\n };\n case \"SESSION_STORAGE\":\n return {\n getItem: getItemFactory(\"session\"),\n };\n case \"SYS\":\n return getReadOnlyProxy(sys);\n case \"MEDIA\":\n return getReadOnlyProxy(getMedia());\n case \"__WIDGET_FN__\":\n return widgetFunctions;\n case \"__WIDGET_IMG__\":\n return widgetImagesFactory;\n case \"__WIDGET_I18N__\":\n return widgetI18nFactory;\n }\n }\n\n for (const variableName of attemptToVisitGlobals) {\n const variable = getIndividualGlobal(variableName);\n if (variable !== undefined) {\n globalVariables[variableName] = variable;\n }\n }\n\n Object.assign(\n globalVariables,\n getGeneralGlobals(precooked.attemptToVisitGlobals, {\n storyboardFunctions,\n app,\n })\n );\n\n try {\n const result = cook(precooked.expression, precooked.source, {\n globalVariables: supply(precooked.attemptToVisitGlobals, globalVariables),\n });\n const detail = { raw, context: globalVariables, result };\n if (options.isReEvaluation) {\n devtoolsHookEmit(\"re-evaluation\", {\n id: options.evaluationId,\n detail,\n });\n } else {\n devtoolsHookEmit(\"evaluation\", detail);\n }\n return result;\n } catch (error) {\n const message = `${error.message}, in \"${raw}\"`;\n if (options.isReEvaluation) {\n devtoolsHookEmit(\"re-evaluation\", {\n id: options.evaluationId,\n detail: { raw, context: globalVariables },\n error: message,\n });\n } else {\n const errorConstructor = getCookErrorConstructor(error);\n throw new errorConstructor(message);\n }\n }\n}\n","import {\n CustomTemplateProxyBasicProperty,\n CustomTemplateProxyMergeableProperty,\n CustomTemplateProxyProperty,\n CustomTemplateProxyRefProperty,\n CustomTemplateProxyTransformableProperty,\n CustomTemplateProxyVariableProperty,\n} from \"@next-core/brick-types\";\n\nexport function isBasicProperty(\n propRef: CustomTemplateProxyProperty\n): propRef is CustomTemplateProxyBasicProperty {\n return !!(propRef as CustomTemplateProxyBasicProperty).refProperty;\n}\n\nexport function isTransformableProperty(\n propRef: CustomTemplateProxyProperty\n): propRef is CustomTemplateProxyTransformableProperty {\n return !!(propRef as CustomTemplateProxyTransformableProperty).refTransform;\n}\n\nexport function isMergeableProperty(\n propRef: CustomTemplateProxyProperty\n): propRef is CustomTemplateProxyMergeableProperty {\n return !!(propRef as CustomTemplateProxyMergeableProperty).mergeProperty;\n}\n\nexport function isRefProperty(\n propRef: CustomTemplateProxyProperty\n): propRef is CustomTemplateProxyRefProperty {\n return !!(propRef as CustomTemplateProxyRefProperty).ref;\n}\n\nexport function isVariableProperty(\n propRef: CustomTemplateProxyProperty\n): propRef is CustomTemplateProxyVariableProperty {\n return !!(propRef as CustomTemplateProxyVariableProperty).asVariable;\n}\n","import {\n CustomTemplate,\n RefForProxy,\n RuntimeBrickConf,\n TemplateRegistry,\n} from \"@next-core/brick-types\";\n\nexport const customTemplateRegistry: TemplateRegistry<CustomTemplate> =\n new Map();\nexport const appRegistered = new Set<string>();\n\nexport const symbolForComputedPropsFromProxy = Symbol.for(\n \"tpl.computedPropsFromProxy\"\n);\nexport const symbolForRefForProxy = Symbol.for(\"tpl.refForProxy\");\nexport const symbolForTplContextId = Symbol.for(\"tpl.contextId\");\n\nexport type RuntimeBrickConfWithTplSymbols = RuntimeBrickConf &\n RuntimeBrickConfOfTplSymbols;\n\nexport interface RuntimeBrickConfOfTplSymbols {\n [symbolForComputedPropsFromProxy]?: Record<string, any>;\n [symbolForRefForProxy]?: RefForProxy;\n [symbolForTplContextId]?: string;\n}\n","import { isObject } from \"@next-core/brick-utils\";\nimport { clamp } from \"lodash\";\nimport { computeRealValue } from \"../../internal/setProperties\";\nimport {\n MergeablePropertyProxy,\n MergeablePropertyProxyOfArray,\n MergeBase,\n} from \"./internalInterfaces\";\n\nexport function propertyMerge(\n conf: MergeablePropertyProxy,\n value: unknown,\n object: Record<string, unknown>\n): unknown {\n return propertyMergeAll(\n conf.$$mergeBase,\n Object.fromEntries(\n conf.$$mergeBase.proxies.map((proxy) => [\n proxy.$$reversedRef,\n proxy === conf ? value : object[proxy.$$reversedRef],\n ])\n )\n );\n}\n\nexport function propertyMergeAll(\n mergeBase: MergeBase,\n object: Record<string, unknown>\n): unknown {\n if (mergeBase.mergeType === \"array\") {\n return propertyMergeAllOfArray(mergeBase, object);\n }\n if (mergeBase.mergeType === \"object\") {\n return propertyMergeAllOfObject(mergeBase, object);\n }\n // istanbul ignore next: should never reach\n throw new TypeError(`unsupported mergeType: \"${mergeBase.mergeType}\"`);\n}\n\nfunction propertyMergeAllOfArray(\n { baseValue, context, proxies }: MergeBase,\n object: Record<string, unknown>\n): unknown[] {\n // Use an approach like template-literal's quasis:\n // `quasi0${0}quais1${1}quasi2...`\n // Every quasi can be merged with multiple items.\n const computedBaseValue = Array.isArray(baseValue)\n ? (computeRealValue(baseValue, context, true, {\n $$lazyForUseBrick: true,\n }) as unknown[])\n : [];\n const quasis: unknown[][] = [];\n const size = computedBaseValue.length + 1;\n for (let i = 0; i < size; i += 1) {\n quasis.push([]);\n }\n\n for (const proxy of proxies as MergeablePropertyProxyOfArray[]) {\n let position: number;\n switch (proxy.mergeMethod) {\n case \"append\":\n position = computedBaseValue.length;\n break;\n case \"prepend\":\n position = 0;\n break;\n case \"insertAt\":\n // Defaults to `-1`.\n position = (proxy.mergeArgs as [number])?.[0] ?? -1;\n if (position < 0) {\n // It's counted from the end if position is negative.\n position += quasis.length;\n }\n position = clamp(position, 0, computedBaseValue.length);\n break;\n // istanbul ignore next: should never reach\n default:\n throw new TypeError(\n `unsupported mergeMethod: \"${proxy.mergeMethod}\" for mergeType \"${proxy.mergeType}\"`\n );\n }\n let patchValue = object[proxy.$$reversedRef] as unknown[];\n if (!Array.isArray(patchValue)) {\n patchValue = [];\n }\n quasis[position].push(...patchValue);\n }\n\n return quasis.flatMap((item, index) =>\n index < computedBaseValue.length\n ? item.concat(computedBaseValue[index])\n : item\n );\n}\n\nfunction propertyMergeAllOfObject(\n { baseValue, proxies, context }: MergeBase,\n object: Record<string, unknown>\n): Record<string, unknown> {\n const computedBaseValue = isObject(baseValue)\n ? (computeRealValue(baseValue, context, true) as Record<string, unknown>)\n : {};\n return proxies.reduce((acc, proxy) => {\n switch (proxy.mergeMethod) {\n case \"extend\":\n return {\n ...acc,\n ...(object[proxy.$$reversedRef] as Record<string, unknown>),\n };\n // istanbul ignore next: should never reach\n default:\n throw new TypeError(\n `unsupported mergeMethod: \"${proxy.mergeMethod}\" for mergeType \"${proxy.mergeType}\"`\n );\n }\n }, computedBaseValue);\n}\n","import { clamp } from \"lodash\";\nimport { hasOwnProperty } from \"@next-core/brick-utils\";\nimport type {\n BrickConf,\n RefForProxy,\n SlotsConfOfBricks,\n} from \"@next-core/brick-types\";\nimport type { ProxyContext } from \"./expandCustomTemplate\";\nimport { preprocessTransformProperties } from \"../../transformProperties\";\nimport { isBasicProperty, isTransformableProperty } from \"./assertions\";\nimport {\n RuntimeBrickConfOfTplSymbols,\n symbolForComputedPropsFromProxy,\n symbolForRefForProxy,\n symbolForTplContextId,\n} from \"./constants\";\nimport { propertyMergeAll } from \"./propertyMerge\";\n\nexport function setupTemplateProxy(\n proxyContext: Partial<ProxyContext>,\n ref: string,\n slots: SlotsConfOfBricks\n): RuntimeBrickConfOfTplSymbols {\n const computedPropsFromProxy: Record<string, unknown> = {};\n let refForProxy: RefForProxy;\n\n const {\n reversedProxies,\n templateProperties,\n externalSlots,\n templateContextId,\n proxyBrick,\n } = proxyContext;\n\n if (ref && reversedProxies) {\n refForProxy = {};\n proxyBrick.proxyRefs.set(ref, refForProxy);\n\n // Reversed proxies are used for expand storyboard before rendering page.\n if (reversedProxies.properties.has(ref)) {\n Object.assign(\n computedPropsFromProxy,\n Object.fromEntries(\n reversedProxies.properties\n .get(ref)\n .flatMap((propRef) => {\n // `propValue` is computed.\n const propValue = templateProperties?.[propRef.$$reversedRef];\n if (isTransformableProperty(propRef)) {\n return Object.entries(\n preprocessTransformProperties(\n {\n [propRef.$$reversedRef]: propValue,\n },\n propRef.refTransform\n )\n );\n }\n if (isBasicProperty(propRef)) {\n return [[propRef.refProperty, propValue]];\n }\n // Ignore Variable properties.\n // And mergeable properties are processed later.\n return [];\n })\n .filter((propRef) => propRef[1] !== undefined)\n )\n );\n\n // Brick properties can be merged multiple times.\n if (reversedProxies.mergeBases.has(ref)) {\n Object.assign(\n computedPropsFromProxy,\n Object.fromEntries(\n Array.from(reversedProxies.mergeBases.get(ref).entries())\n .map(([mergeProperty, mergeBase]) => [\n mergeProperty,\n propertyMergeAll(mergeBase, templateProperties ?? {}),\n ])\n .filter((item) => item[1] !== undefined)\n )\n );\n }\n }\n\n // Use an approach like template-literal's quasis:\n // `quasi0${0}quais1${1}quasi2...`\n // Every quasi (indexed by `refPosition`) can be slotted with multiple bricks.\n const quasisMap = new Map<string, BrickConf[][]>();\n\n if (reversedProxies.slots.has(ref)) {\n for (const item of reversedProxies.slots.get(ref)) {\n if (!quasisMap.has(item.refSlot)) {\n const quasis: BrickConf[][] = [];\n // The size of quasis should be the existed slotted bricks' size plus one.\n const size = hasOwnProperty(slots, item.refSlot)\n ? slots[item.refSlot].bricks.length + 1\n : 1;\n for (let i = 0; i < size; i += 1) {\n quasis.push([]);\n }\n quasisMap.set(item.refSlot, quasis);\n }\n const expandableSlot = quasisMap.get(item.refSlot);\n const refPosition = item.refPosition ?? -1;\n expandableSlot[\n clamp(\n refPosition < 0 ? expandableSlot.length + refPosition : refPosition,\n 0,\n expandableSlot.length - 1\n )\n ].push(...(externalSlots?.[item.$$reversedRef]?.bricks ?? []));\n }\n }\n\n for (const [slotName, quasis] of quasisMap.entries()) {\n if (!hasOwnProperty(slots, slotName)) {\n slots[slotName] = {\n type: \"bricks\",\n bricks: [],\n };\n }\n const slotConf = slots[slotName];\n slotConf.bricks = quasis.flatMap((bricks, index) =>\n index < slotConf.bricks.length\n ? bricks.concat(slotConf.bricks[index])\n : bricks\n );\n\n if (slotConf.bricks.length === 0) {\n delete slots[slotName];\n }\n }\n }\n\n return {\n [symbolForComputedPropsFromProxy]: computedPropsFromProxy,\n [symbolForRefForProxy]: refForProxy,\n [symbolForTplContextId]: templateContextId,\n };\n}\n","import {\n SlotsConfOfBricks,\n UseBrickConf,\n UseSingleBrickConf,\n} from \"@next-core/brick-types\";\nimport { isObject } from \"@next-core/brick-utils\";\nimport type { ProxyContext } from \"./expandCustomTemplate\";\nimport { setupTemplateProxy } from \"./setupTemplateProxy\";\n\nexport function setupUseBrickInTemplate(\n props: unknown,\n proxyContext: Partial<ProxyContext>\n): void {\n function walk(props: unknown): void {\n if (!props) {\n return;\n }\n for (const [key, value] of Object.entries<UseBrickConf>(\n props as Record<string, UseBrickConf>\n )) {\n if (isObject(value)) {\n if (key === \"useBrick\") {\n if (Array.isArray(value)) {\n value.forEach(setup);\n } else {\n setup(value);\n }\n } else {\n walk(value);\n }\n }\n }\n }\n\n function setup(item: UseSingleBrickConf): UseSingleBrickConf {\n const { ref, slots: slotsInTemplate } = item;\n\n item.slots = Object.fromEntries(\n Object.entries(slotsInTemplate ?? {}).map(([slotName, slotConf]) => [\n slotName,\n {\n type: \"bricks\",\n bricks: (slotConf.bricks ?? []).map(setup),\n },\n ])\n );\n\n Object.assign(\n item,\n setupTemplateProxy(proxyContext, ref, item.slots as SlotsConfOfBricks)\n );\n\n walk(item.properties);\n\n return item;\n }\n\n walk(props);\n}\n","import { set } from \"lodash\";\nimport { PluginRuntimeContext } from \"@next-core/brick-types\";\nimport {\n isObject,\n inject,\n isEvaluable,\n trackContext,\n trackState,\n} from \"@next-core/brick-utils\";\nimport {\n evaluate,\n EvaluateRuntimeContext,\n isPreEvaluated,\n shouldDismissRecursiveMarkingInjected,\n} from \"./evaluate\";\nimport { haveBeenInjected, recursiveMarkAsInjected } from \"./injected\";\nimport {\n getNextStateOfUseBrick,\n isLazyContentInUseBrick,\n StateOfUseBrick,\n} from \"./getNextStateOfUseBrick\";\nimport { TrackingContextItem } from \"./listenOnTrackingContext\";\nimport { setupUseBrickInTemplate } from \"../core/CustomTemplates/setupUseBrickInTemplate\";\n\ninterface ComputeOptions {\n $$lazyForUseBrick?: boolean;\n $$stateOfUseBrick?: StateOfUseBrick;\n ignoreSymbols?: boolean;\n}\n\nexport const computeRealValue = (\n value: unknown,\n context: PluginRuntimeContext,\n injectDeep?: boolean,\n internalOptions?: ComputeOptions\n): unknown => {\n const preEvaluated = isPreEvaluated(value);\n\n if (preEvaluated || typeof value === \"string\") {\n // For `useBrick`, some fields such as `properties`/`transform`/`events`/`if`,\n // are kept and to be evaluated later.\n const lazy =\n internalOptions?.$$lazyForUseBrick &&\n isLazyContentInUseBrick(internalOptions.$$stateOfUseBrick);\n\n let result: unknown;\n let dismissRecursiveMarkingInjected = lazy;\n if (preEvaluated || isEvaluable(value as string)) {\n const runtimeContext: EvaluateRuntimeContext = {};\n const keys = [\"event\", \"tplContextId\", \"overrideApp\"] as const;\n for (const key of keys) {\n if (context?.[key]) {\n runtimeContext[key as \"event\"] = context[key as \"event\"];\n }\n }\n // The current runtime context is memoized even if the evaluation maybe lazy.\n result = evaluate(value as string, runtimeContext, { lazy });\n dismissRecursiveMarkingInjected = shouldDismissRecursiveMarkingInjected(\n value as string\n );\n } else {\n result = lazy ? value : inject(value as string, context);\n }\n if (!dismissRecursiveMarkingInjected) {\n recursiveMarkAsInjected(result);\n }\n return result;\n }\n\n if (!(injectDeep && isObject(value)) || haveBeenInjected(value)) {\n return value;\n }\n\n if (Array.isArray(value)) {\n const nextOptions = getNextInternalOptions(internalOptions, true);\n return value.map((v) =>\n computeRealValue(v, context, injectDeep, nextOptions)\n );\n }\n\n return Object.fromEntries(\n Object.entries(value)\n .map(([k, v]) => [\n computeRealValue(k, context, false),\n computeRealValue(\n v,\n context,\n injectDeep,\n getNextInternalOptions(internalOptions, false, k)\n ),\n ])\n .concat(\n internalOptions?.ignoreSymbols\n ? []\n : Object.getOwnPropertySymbols(value).map((k) => [\n k,\n (value as Record<string | symbol, unknown>)[k],\n ])\n )\n );\n};\n\nexport function setProperties(\n bricks: HTMLElement | HTMLElement[],\n properties: Record<string, unknown>,\n context: PluginRuntimeContext,\n injectDeep?: boolean\n): void {\n const realProps = computeRealProperties(properties, context, injectDeep);\n if (context.tplContextId) {\n setupUseBrickInTemplate(realProps, {\n templateContextId: context.tplContextId,\n });\n }\n if (!Array.isArray(bricks)) {\n bricks = [bricks];\n }\n bricks.forEach((brick) => {\n setRealProperties(brick, realProps);\n });\n}\n\nexport function setRealProperties(\n brick: HTMLElement,\n realProps: Record<string, unknown>,\n extractProps?: boolean\n): void {\n for (const [propName, propValue] of Object.entries(realProps)) {\n if (propName === \"style\" || propName === \"dataset\") {\n for (const [k, v] of Object.entries(propValue)) {\n (brick[propName] as unknown as Record<string, unknown>)[k] = v;\n }\n } else if (propName === \"innerHTML\") {\n // `innerHTML` is dangerous, use `textContent` instead.\n // eslint-disable-next-line no-console\n console.error(\"Please use `textContent` instead of `innerHTML`.\");\n brick.textContent = propValue as string;\n } else {\n if (extractProps) {\n set(brick, propName, propValue);\n } else {\n (brick as unknown as Record<string, unknown>)[propName] = propValue;\n }\n }\n }\n}\n\nexport function computeRealProperties(\n properties: Record<string, unknown>,\n context: PluginRuntimeContext,\n injectDeep?: boolean,\n trackingContextList?: TrackingContextItem[]\n): Record<string, unknown> {\n const result: Record<string, unknown> = {};\n\n if (isObject(properties)) {\n for (const [propName, propValue] of Object.entries(properties)) {\n // Related: https://github.com/facebook/react/issues/11347\n const realValue = computeRealValue(propValue, context, injectDeep, {\n $$lazyForUseBrick: true,\n $$stateOfUseBrick:\n propName === \"useBrick\"\n ? StateOfUseBrick.USE_BRICK\n : StateOfUseBrick.INITIAL,\n });\n if (realValue !== undefined) {\n // For `style` and `dataset`, only object is acceptable.\n if (\n (propName !== \"style\" && propName !== \"dataset\") ||\n isObject(realValue)\n ) {\n result[propName] = realValue;\n }\n }\n if (Array.isArray(trackingContextList) && isEvaluable(propValue)) {\n const contextNames = trackContext(propValue);\n const stateNames = trackState(propValue);\n if (contextNames || stateNames) {\n trackingContextList.push({\n contextNames,\n stateNames,\n propName,\n propValue,\n });\n }\n }\n }\n }\n\n return result;\n}\n\nfunction getNextInternalOptions(\n internalOptions: ComputeOptions,\n isArray: boolean,\n key?: string\n): ComputeOptions {\n return internalOptions?.$$lazyForUseBrick\n ? {\n ...internalOptions,\n $$stateOfUseBrick: getNextStateOfUseBrick(\n internalOptions.$$stateOfUseBrick,\n isArray,\n key\n ),\n }\n : internalOptions;\n}\n","import { isNil, sortBy } from \"lodash\";\nimport {\n SidebarMenuSimpleItem,\n PluginRuntimeContext,\n SidebarMenu,\n MenuRawData,\n MenuItemRawData,\n} from \"@next-core/brick-types\";\nimport { isEvaluable, isObject, preevaluate } from \"@next-core/brick-utils\";\nimport {\n InstanceApi_postSearch,\n InstanceApi_getDetail,\n} from \"@next-sdk/cmdb-sdk\";\nimport { computeRealValue } from \"./setProperties\";\nimport { looseCheckIfOfComputed } from \"../checkIf\";\nimport {\n _internalApiGetCurrentContext,\n _internalApiGetResolver,\n MountRoutesResult,\n Kernel,\n} from \"../core/exports\";\n\nconst symbolAppId = Symbol(\"appId\");\n\ninterface RuntimeMenuItemRawData extends MenuItemRawData {\n [symbolAppId]?: string;\n}\n\n// Caching menu requests to avoid flicker.\nconst menuCache = new Map<string, MenuRawData>();\nconst menuTitleCache = new Map<string, string>();\nconst processMenuCache = new Map<string, SidebarMenu>();\n\nexport async function constructMenu(\n menuBar: MountRoutesResult[\"menuBar\"],\n context: PluginRuntimeContext,\n kernel: Kernel\n): Promise<void> {\n const hasSubMenu = !!menuBar.subMenuId;\n if (menuBar.menuId) {\n const defaultCollapsed = menuBar.menu?.defaultCollapsed;\n const menu = await processMenu(menuBar.menuId, context, kernel, hasSubMenu);\n\n if (!isNil(defaultCollapsed)) {\n menu.defaultCollapsed = defaultCollapsed;\n }\n\n menuBar.menu = menu;\n }\n if (hasSubMenu) {\n menuBar.subMenu = await processMenu(menuBar.subMenuId, context, kernel);\n } else {\n menuBar.subMenu = null;\n }\n}\n\nexport async function constructMenuByMenusList(\n menus: string[],\n context: PluginRuntimeContext,\n kernel: Kernel\n): Promise<void> {\n const data: SidebarMenu[] = await Promise.all(\n menus.map((menuId) => processMenu(menuId, context, kernel))\n );\n data.forEach((item, index) => processMenuCache.set(menus[index], item));\n}\n\nexport const getMenu = (menuId: string): SidebarMenu =>\n processMenuCache.get(menuId);\n\nexport async function fetchMenuById(\n menuId: string,\n kernel: Kernel\n): Promise<MenuRawData> {\n if (menuCache.has(menuId)) {\n return menuCache.get(menuId);\n }\n const menuList = window.STANDALONE_MICRO_APPS\n ? kernel.getStandaloneMenus(menuId)\n : ((\n await InstanceApi_postSearch(\"EASYOPS_STORYBOARD_MENU\", {\n page: 1,\n page_size: 200,\n fields: {\n menuId: true,\n title: true,\n icon: true,\n link: true,\n titleDataSource: true,\n defaultCollapsed: true,\n defaultCollapsedBreakpoint: true,\n type: true,\n injectMenuGroupId: true,\n dynamicItems: true,\n itemsResolve: true,\n items: true,\n \"items.children\": true,\n \"app.appId\": true,\n },\n query: {\n menuId: {\n $eq: menuId,\n },\n app: {\n $size: {\n $gt: 0,\n },\n },\n },\n })\n ).list as MenuRawData[]);\n await Promise.all(menuList.map(loadDynamicMenuItems));\n const menuData = mergeMenu(menuList);\n if (!menuData) {\n throw new Error(`Menu not found: ${menuId}`);\n }\n reorderMenuItems(menuData);\n menuCache.set(menuId, menuData);\n return menuData;\n}\n\nfunction mergeMenu(menuList: MenuRawData[]): MenuRawData {\n const mainMenu = menuList.find((menu) => menu.type !== \"inject\");\n if (!mainMenu) {\n return undefined;\n }\n const validMenuList: MenuRawData[] = [];\n const injectWithMenus = new Map<string, MenuRawData[]>();\n for (const menu of menuList) {\n if (menu.items?.length > 0) {\n if (menu.type === \"inject\" && menu.injectMenuGroupId) {\n let injectingMenus = injectWithMenus.get(menu.injectMenuGroupId);\n if (!injectingMenus) {\n injectingMenus = [];\n injectWithMenus.set(menu.injectMenuGroupId, injectingMenus);\n }\n injectingMenus.push(menu);\n } else {\n validMenuList.push(menu);\n }\n }\n }\n return {\n ...mainMenu,\n items: validMenuList.flatMap((menu) =>\n processGroupInject(menu.items, menu, injectWithMenus)\n ),\n };\n}\n\nfunction processGroupInject(\n items: MenuItemRawData[],\n menu: MenuRawData,\n injectWithMenus: Map<string, MenuRawData[]>\n): RuntimeMenuItemRawData[] {\n return items?.map((item) => {\n const foundInjectingMenus =\n item.groupId && injectWithMenus.get(item.groupId);\n if (foundInjectingMenus) {\n // Each menu to be injected with should be injected only once.\n injectWithMenus.delete(item.groupId);\n }\n return {\n ...item,\n children: (\n processGroupInject(item.children, menu, injectWithMenus) ?? []\n ).concat(\n foundInjectingMenus\n ? foundInjectingMenus.flatMap((injectingMenu) =>\n processGroupInject(\n injectingMenu.items,\n injectingMenu,\n injectWithMenus\n )\n )\n : []\n ),\n [symbolAppId]: menu.app[0].appId,\n };\n });\n}\n\nasync function loadDynamicMenuItems(menu: MenuRawData): Promise<void> {\n if (menu.dynamicItems && menu.itemsResolve) {\n const itemsConf: Partial<{ items: MenuItemRawData[] }> = {};\n await _internalApiGetResolver().resolveOne(\n \"reference\",\n {\n transform: \"items\",\n transformMapArray: false,\n ...menu.itemsResolve,\n },\n itemsConf,\n null,\n _internalApiGetCurrentContext()\n );\n menu.items = itemsConf.items;\n }\n}\n\nexport async function processMenu(\n menuId: string,\n context: PluginRuntimeContext,\n kernel: Kernel,\n hasSubMenu?: boolean\n): Promise<SidebarMenu> {\n const { items, app, ...restMenuData } = await fetchMenuById(menuId, kernel);\n\n const menuData = {\n ...(await computeRealValueWithOverrideApp(\n restMenuData,\n app[0].appId,\n context,\n kernel\n )),\n items: await computeMenuItemsWithOverrideApp(items, context, kernel),\n };\n\n return {\n title: await processMenuTitle(menuData),\n icon: menuData.icon,\n link: menuData.link,\n menuItems: menuData.items\n .filter(\n // `if` is already evaluated.\n looseCheckIfOfComputed\n )\n .map((item) => {\n const children = item.children?.filter(\n // `if` is already evaluated.\n looseCheckIfOfComputed\n ) as SidebarMenuSimpleItem[];\n return item.type === \"group\"\n ? {\n type: \"group\",\n title: item.text,\n items: children,\n }\n : children?.length\n ? {\n type: \"subMenu\",\n title: item.text,\n icon: item.icon,\n items: children,\n defaultExpanded: item.defaultExpanded,\n }\n : (item as SidebarMenuSimpleItem);\n }),\n defaultCollapsed: menuData.defaultCollapsed || hasSubMenu,\n defaultCollapsedBreakpoint: menuData.defaultCollapsedBreakpoint,\n };\n}\n\nfunction computeMenuItemsWithOverrideApp(\n items: RuntimeMenuItemRawData[],\n context: PluginRuntimeContext,\n kernel: Kernel\n): Promise<RuntimeMenuItemRawData[]> {\n return Promise.all(\n items.map(async ({ children, ...rest }) => ({\n ...(await computeRealValueWithOverrideApp(\n rest,\n rest[symbolAppId],\n context,\n kernel\n )),\n children:\n children &&\n (await computeMenuItemsWithOverrideApp(children, context, kernel)),\n }))\n );\n}\n\nexport async function processMenuTitle(menuData: MenuRawData): Promise<string> {\n if (menuData.title || !menuData.titleDataSource) {\n return menuData.title;\n }\n const cacheKey = JSON.stringify(menuData.titleDataSource);\n if (menuTitleCache.has(cacheKey)) {\n return menuTitleCache.get(cacheKey);\n }\n const { objectId, instanceId, attributeId } = menuData.titleDataSource;\n const attr = attributeId ?? \"name\";\n const instanceData = await InstanceApi_getDetail(objectId, instanceId, {\n fields: attr,\n });\n let title: string;\n if (attributeId === \"#showKey\" && Array.isArray(instanceData[attr])) {\n const [primary, ...rest] = instanceData[attr];\n title = rest.length > 0 ? `${primary}(${rest.join(\",\")})` : String(primary);\n } else {\n title = String(instanceData[attr]);\n }\n menuTitleCache.set(cacheKey, title);\n return title;\n}\n\nexport function clearMenuTitleCache(): void {\n menuTitleCache.clear();\n}\n\nexport function clearMenuCache(): void {\n menuCache.clear();\n}\n\nfunction reorderMenuItems(menuData: MenuRawData): void {\n menuData.items = sortMenuItems(menuData.items).map((item) => ({\n ...item,\n children: sortMenuItems(item.children) as SidebarMenuSimpleItem[],\n }));\n}\n\nfunction sortMenuItems(list: MenuItemRawData[]): MenuItemRawData[] {\n return sortBy(list, (item) => item.sort ?? -Infinity);\n}\n\nconst overriddenGlobals = [\"APP\", \"I18N\"];\n\n/**\n * If the menu contains evaluations which use `APP` or `I18N`,\n * we have to override app in context when computing real values.\n */\nfunction requireOverrideApp(data: unknown, memo = new WeakSet()): boolean {\n if (typeof data === \"string\") {\n if (isEvaluable(data)) {\n if (overriddenGlobals.some((key) => data.includes(key))) {\n const { attemptToVisitGlobals } = preevaluate(data);\n return overriddenGlobals.some((key) => attemptToVisitGlobals.has(key));\n }\n } else {\n return /\\${\\s*APP\\s*\\./.test(data);\n }\n } else if (isObject(data)) {\n // Avoid call stack overflow.\n // istanbul ignore next\n if (memo.has(data)) {\n return false;\n }\n memo.add(data);\n return (Array.isArray(data) ? data : Object.values(data)).some((item) =>\n requireOverrideApp(item, memo)\n );\n }\n\n return false;\n}\n\nasync function computeRealValueWithOverrideApp<T>(\n data: T,\n overrideAppId: string,\n context: PluginRuntimeContext,\n kernel: Kernel\n): Promise<T> {\n let newContext = context;\n if (overrideAppId !== context.app.id && requireOverrideApp(data)) {\n const storyboard = kernel.bootstrapData.storyboards.find(\n (story) => story.app.id === overrideAppId\n );\n if (storyboard) {\n await kernel.fulfilStoryboard(storyboard);\n newContext = {\n ...context,\n overrideApp: storyboard.app,\n };\n }\n }\n return computeRealValue(data, newContext, true, {\n ignoreSymbols: true,\n }) as T;\n}\n","export type LazyBrickImportFunction = () => Promise<unknown>;\n\nconst lazyBrickRegistry = new Map<string, LazyBrickImportFunction>();\nconst requestsMap = new WeakMap<LazyBrickImportFunction, Promise<unknown>>();\n\nexport function registerLazyBricks(\n bricks: string | string[],\n factory: LazyBrickImportFunction\n): void {\n const factoryWrapper: LazyBrickImportFunction = async () => {\n try {\n window.dispatchEvent(new CustomEvent(\"request.start\"));\n await factory();\n } finally {\n window.dispatchEvent(new CustomEvent(\"request.end\"));\n }\n };\n for (const brick of ([] as string[]).concat(bricks)) {\n if (lazyBrickRegistry.has(brick)) {\n throw new Error(`Lazy brick \"${brick}\" is already registered`);\n }\n lazyBrickRegistry.set(brick, factoryWrapper);\n }\n}\n\nexport async function loadLazyBricks(bricks: Iterable<string>): Promise<void> {\n const requests = new Set<Promise<unknown>>();\n for (const brick of bricks) {\n const factory = lazyBrickRegistry.get(brick);\n if (factory) {\n let request = requestsMap.get(factory);\n if (!request) {\n request = factory();\n requestsMap.set(factory, request);\n }\n requests.add(request);\n }\n }\n await Promise.all(requests);\n}\n\nexport function loadAllLazyBricks(): Promise<void> {\n return loadLazyBricks(lazyBrickRegistry.keys());\n}\n","import {\n MountPoints,\n MicroApp,\n InterceptorParams,\n FeatureFlags,\n DesktopData,\n UserInfo,\n BrickPackage,\n Storyboard,\n MagicBrickConfig,\n PluginRuntimeContext,\n BrickConf,\n TemplatePackage,\n SiteMapItem,\n SidebarMenu,\n RouteConf,\n} from \"@next-core/brick-types\";\nimport compareVersions from \"compare-versions\";\nimport {\n Kernel,\n MenuBar,\n AppBar,\n Resolver,\n registerCustomTemplate,\n registerCustomProcessor,\n NavConfig,\n} from \"./exports\";\nimport { registerBrickTemplate } from \"./TemplateRegistries\";\nimport {\n RelatedApp,\n RouterState,\n RecentApps,\n CustomApiDefinition,\n AbstractRuntime,\n} from \"./interfaces\";\nimport { getBasePath } from \"../internal/getBasePath\";\nimport { getCurrentMode, getCurrentTheme } from \"../themeAndMode\";\nimport { processMenu } from \"../internal/menu\";\nimport { registerLazyBricks } from \"./LazyBrickRegistry\";\nimport { registerWidgetFunctions } from \"./WidgetFunctions\";\nimport { registerWidgetI18n } from \"./WidgetI18n\";\nimport { StoryboardContextWrapper } from \"./StoryboardContext\";\n\nlet kernel: Kernel;\n\n/* istanbul ignore next */\nexport function _dev_only_getBrickPackages(): BrickPackage[] {\n // eslint-disable-next-line no-console\n console.warn(\n \"`_dev_only_getBrickPackages()` is deprecated and will always return an empty array, please use `(await BootstrapV2Api_brickPackageInfo()).bricks` instead\"\n );\n return kernel.bootstrapData.brickPackages;\n}\n\n/* istanbul ignore next */\nexport function _dev_only_getTemplatePackages(): TemplatePackage[] {\n // eslint-disable-next-line no-console\n console.warn(\n \"`_dev_only_getTemplatePackages()` is deprecated and will always return an empty array, please use `(await BootstrapV2Api_brickPackageInfo()).templates` instead\"\n );\n return kernel.bootstrapData.templatePackages;\n}\n\n/* istanbul ignore next */\nexport function _dev_only_getStoryboards(): Storyboard[] {\n // Deprecated since the storyboards are probably not fulfilled.\n return [];\n}\n\n/* istanbul ignore next */\nexport function _dev_only_loadDynamicBricksInBrickConf(\n brickConf: BrickConf\n): Promise<void> {\n return kernel.loadDynamicBricksInBrickConf(brickConf);\n}\n\n/* istanbul ignore next */\nexport function _dev_only_loadEditorBricks(\n editorBricks: string[]\n): Promise<void> {\n return kernel.loadEditorBricks(editorBricks);\n}\n\n/* istanbul ignore next */\nexport function _dev_only_getFakeKernel(\n overrides?: Record<string, unknown>\n): Kernel {\n return {\n bootstrapData: kernel.bootstrapData,\n getFeatureFlags: kernel.getFeatureFlags.bind(kernel),\n loadDynamicBricksInBrickConf:\n kernel.loadDynamicBricksInBrickConf.bind(kernel),\n getProviderBrick: kernel.getProviderBrick.bind(kernel),\n ...overrides,\n } as Kernel;\n}\n\n/* istanbul ignore next */\nexport function _dev_only_updateStoryboard(\n appId: string,\n storyboardPatch: Partial<Storyboard>\n): void {\n kernel._dev_only_updateStoryboard(appId, storyboardPatch);\n}\n\n/* istanbul ignore next */\nexport function _dev_only_updateTemplatePreviewSettings(\n appId: string,\n templateId: string,\n settings: unknown\n): void {\n kernel._dev_only_updateTemplatePreviewSettings(appId, templateId, settings);\n}\n\n/* istanbul ignore next */\nexport function _dev_only_updateSnippetPreviewSettings(\n appId: string,\n snippetData: any\n): void {\n kernel._dev_only_updateSnippetPreviewSettings(appId, snippetData);\n}\n\nexport class Runtime implements AbstractRuntime {\n async bootstrap(mountPoints: MountPoints): Promise<void> {\n if (kernel !== undefined) {\n throw new Error(\"Cannot bootstrap more than once.\");\n }\n kernel = new Kernel();\n await kernel.bootstrap(mountPoints);\n }\n\n get menuBar(): MenuBar {\n return kernel.menuBar;\n }\n\n get appBar(): AppBar {\n return kernel.appBar;\n }\n\n /* istanbul ignore next */\n getCurrentApp(): MicroApp {\n return kernel.currentApp;\n }\n\n /* istanbul ignore next */\n getRecentApps(): RecentApps {\n return kernel.getRecentApps();\n }\n\n /* istanbul ignore next */\n getCurrentRoute(): RouteConf {\n return kernel.currentRoute;\n }\n\n /* istanbul ignore next */\n getNavConfig(): NavConfig {\n return kernel.router.getNavConfig();\n }\n\n getMicroApps({\n excludeInstalling = false,\n includeInternal = false,\n } = {}): MicroApp[] {\n let apps = kernel.bootstrapData.microApps;\n if (excludeInstalling) {\n apps = apps.filter((app) => app.installStatus !== \"running\");\n }\n if (!includeInternal) {\n apps = apps.filter((app) => !app.internal);\n }\n return apps;\n }\n\n hasInstalledApp(appId: string, matchVersion?: string): boolean {\n return kernel.bootstrapData.microApps.some((app) => {\n const foundApp = app.id === appId && app.installStatus !== \"running\";\n if (!matchVersion || !foundApp) {\n return foundApp;\n }\n // Valid `matchVersion`:\n // >=1.2.3\n // >1.2.3\n // =1.2.3\n // <=1.2.3\n // <1.2.3\n const matches = matchVersion.match(/^([><]=?|=)(.*)$/);\n try {\n if (!matches) {\n throw new TypeError(`Invalid match version: ${matchVersion}`);\n }\n return compareVersions.compare(\n app.currentVersion,\n matches[2],\n matches[1] as compareVersions.CompareOperator\n );\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(error);\n }\n return false;\n });\n }\n\n reloadMicroApps(interceptorParams?: InterceptorParams): Promise<void> {\n return kernel.reloadMicroApps(\n {\n check_login: true,\n },\n interceptorParams\n );\n }\n\n /* istanbul ignore next */\n reloadSharedData(): void {\n return kernel.loadSharedData();\n }\n\n /* istanbul ignore next */\n getDesktops(): DesktopData[] {\n return kernel.bootstrapData.desktops || [];\n }\n\n /* istanbul ignore next */\n getLaunchpadSiteMap(): SiteMapItem[] {\n return kernel.bootstrapData.siteSort || [];\n }\n\n /* istanbul ignore next */\n getAllUserInfo(): UserInfo[] {\n // eslint-disable-next-line no-console\n console.warn(\n \"`getRuntime().getAllUserInfo()` is deprecated and will always return an empty array, please use `await getRuntime().getAllUserMapAsync()` instead\"\n );\n return [];\n }\n\n /* istanbul ignore next */\n getAllUserMap(): Map<string, UserInfo> {\n // eslint-disable-next-line no-console\n console.warn(\n \"`getRuntime().getAllUserMap()` is deprecated and will always return an empty Map, please use `await getRuntime().getAllUserMapAsync()` instead\"\n );\n return new Map();\n }\n\n /* istanbul ignore next */\n getAllUserMapAsync(): Promise<Map<string, UserInfo>> {\n kernel.loadUsersAsync();\n return kernel.allUserMapPromise;\n }\n\n /* istanbul ignore next */\n getMagicBrickConfigMapAsync(): Promise<Map<string, MagicBrickConfig>> {\n kernel.loadMagicBrickConfigAsync();\n return kernel.allMagicBrickConfigMapPromise;\n }\n\n /* istanbul ignore next */\n fetchMenu(menuId: string): Promise<SidebarMenu> {\n return processMenu(menuId, kernel.router.getCurrentContext(), kernel);\n }\n\n /**\n * 切换主体内容 `filter: blur(...)`;\n * @deprecated\n * @param blur\n */\n toggleFilterOfBlur(blur: boolean): void {\n document.body.classList.toggle(\"filter-of-blur\", blur);\n }\n\n toggleLaunchpadEffect(open: boolean): void {\n document.body.classList.toggle(\"launchpad-open\", open);\n }\n\n /* istanbul ignore next */\n getFeatureFlags(): FeatureFlags {\n return kernel.getFeatureFlags();\n }\n\n getHomepage(): string {\n return kernel.bootstrapData.settings?.homepage ?? \"/\";\n }\n\n getBrandSettings(): Record<string, string> {\n return Object.assign(\n { base_title: \"DevOps 管理专家\" },\n kernel.bootstrapData.settings?.brand\n );\n }\n\n getLaunchpadSettings(): { columns: number; rows: number } {\n return Object.assign(\n {\n columns: 7,\n rows: 4,\n },\n kernel.bootstrapData.settings?.launchpad\n );\n }\n\n getMiscSettings(): Record<string, unknown> {\n return Object.assign({}, kernel.bootstrapData.settings?.misc);\n }\n\n registerBrickTemplate = registerBrickTemplate;\n registerCustomTemplate = registerCustomTemplate;\n registerCustomProcessor = registerCustomProcessor;\n registerLazyBricks = registerLazyBricks;\n registerWidgetFunctions = registerWidgetFunctions;\n registerWidgetI18n = registerWidgetI18n;\n\n /* istanbul ignore next */\n getRelatedApps(appId: string): RelatedApp[] {\n // eslint-disable-next-line no-console\n console.warn(\n \"`getRuntime().getRelatedApps()` is deprecated and will always return an empty array, please use `await getRuntime().getRelatedAppsAsync()` instead\"\n );\n return [];\n }\n\n /* istanbul ignore next */\n getRelatedAppsAsync(appId: string): Promise<RelatedApp[]> {\n return kernel.getRelatedAppsAsync(appId);\n }\n\n /* istanbul ignore next */\n popWorkspaceStack(): void {\n return kernel.popWorkspaceStack();\n }\n\n /* istanbul ignore next */\n resetWorkspaceStack(): void {\n kernel.workspaceStack = [];\n }\n\n getBasePath = getBasePath;\n getCurrentTheme = getCurrentTheme;\n getCurrentMode = getCurrentMode;\n\n applyPageTitle(pageTitle: string): void {\n const baseTitle = this.getBrandSettings().base_title;\n document.title = pageTitle ? `${pageTitle} - ${baseTitle}` : baseTitle;\n }\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetResolver(): Resolver {\n if (process.env.NODE_ENV === \"test\") {\n return { resolve: () => Promise.resolve() } as any;\n }\n return kernel.router.getResolver();\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetRouterState(): RouterState {\n if (process.env.NODE_ENV === \"test\") {\n return \"mounted\";\n }\n return kernel.router.getState();\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetRouterRenderId(): string {\n if (process.env.NODE_ENV === \"test\") {\n return \"render-id-1\";\n }\n return kernel.router.getRenderId();\n}\n\n/* istanbul ignore next */\nexport function _internalApiMessageCloseHandler(event: CloseEvent): void {\n return kernel.router.handleMessageClose(event);\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetStoryboardContextWrapper(): StoryboardContextWrapper {\n return kernel.router.getStoryboardContextWrapper();\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetCurrentContext(): PluginRuntimeContext {\n if (process.env.NODE_ENV === \"test\") {\n return {} as any;\n }\n return kernel.router.getCurrentContext();\n}\n\nexport function _internalApiHasMatchedApp(pathname: string): boolean {\n for (const { homepage } of kernel.bootstrapData.microApps) {\n if (pathname === homepage || pathname.startsWith(`${homepage}/`)) {\n return true;\n }\n }\n return false;\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetProviderBrick(\n provider: string\n): Promise<HTMLElement> {\n return kernel.getProviderBrick(provider);\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetMicroAppApiOrchestrationMap(): Promise<\n Map<string, CustomApiDefinition>\n> {\n return kernel.allMicroAppApiOrchestrationPromise;\n}\n\n/* istanbul ignore next */\nexport function _internalApiLoadDynamicBricksInBrickConf(\n brickConf: BrickConf\n): Promise<void> {\n return kernel.loadDynamicBricksInBrickConf(brickConf);\n}\n","import { History, LocationDescriptorObject, parsePath } from \"history\";\nimport {\n PluginHistoryState,\n ExtendedHistory,\n UpdateQueryFunction,\n UpdateQueryOptions,\n UpdateAnchorFunction,\n} from \"@next-core/brick-types\";\nimport { getBasePath } from \"./getBasePath\";\nimport { _internalApiHasMatchedApp } from \"../core/Runtime\";\n\nexport function historyExtended(\n browserHistory: History<PluginHistoryState>\n): ExtendedHistory {\n const { push: originalPush, replace: originalReplace } = browserHistory;\n function updateQueryFactory(method: \"push\" | \"replace\"): UpdateQueryFunction {\n return function updateQuery(\n query: Record<string, any>,\n options: UpdateQueryOptions = {}\n ): void {\n const { extraQuery, clear, keepHash, ...state } = options;\n const urlSearchParams = new URLSearchParams(\n clear ? \"\" : browserHistory.location.search\n );\n const params: Record<string, any> = {};\n Object.assign(params, query, extraQuery);\n for (const [key, value] of Object.entries(params)) {\n if (Array.isArray(value)) {\n urlSearchParams.delete(key);\n for (const item of value) {\n urlSearchParams.append(key, item);\n }\n } else if (value === undefined || value === null || value === \"\") {\n urlSearchParams.delete(key);\n } else {\n urlSearchParams.set(key, value);\n }\n }\n (method === \"push\" ? originalPush : originalReplace)(\n `?${urlSearchParams.toString()}${\n keepHash ? browserHistory.location.hash : \"\"\n }`,\n state\n );\n };\n }\n\n function updateAnchorFactory(\n method: \"push\" /* | \"replace\" */\n ): UpdateAnchorFunction {\n return function updateAnchor(\n hash: string,\n state?: PluginHistoryState\n ): void {\n (method === \"push\" ? originalPush : originalReplace)({\n ...browserHistory.location,\n key: undefined,\n hash,\n state: {\n // The default notify is false\n notify: false,\n ...state,\n },\n });\n };\n }\n\n function reload(): void {\n originalReplace({\n ...browserHistory.location,\n state: {\n ...browserHistory.location.state,\n // Always notify\n notify: true,\n },\n });\n }\n\n let blockMessage: string;\n\n function setBlockMessage(message: string): void {\n blockMessage = message;\n }\n\n function getBlockMessage(): string {\n return blockMessage;\n }\n\n function unblock(): void {\n blockMessage = undefined;\n }\n\n return {\n pushQuery: updateQueryFactory(\"push\"),\n replaceQuery: updateQueryFactory(\"replace\"),\n pushAnchor: updateAnchorFactory(\"push\"),\n // replaceAnchor: updateAnchorFactory(\"replace\"),\n reload,\n setBlockMessage,\n getBlockMessage,\n unblock,\n ...(window.STANDALONE_MICRO_APPS\n ? standaloneHistoryOverridden(browserHistory)\n : null),\n };\n}\n\n/**\n * Override history for standalone micro apps.\n *\n * when `push` or `replace` to other apps, force page refresh.\n */\nfunction standaloneHistoryOverridden(\n browserHistory: History<PluginHistoryState>\n): Pick<History<PluginHistoryState>, \"push\" | \"replace\"> {\n const { push: originalPush, replace: originalReplace } = browserHistory;\n function updateFactory(\n method: \"push\" | \"replace\"\n ): History<PluginHistoryState>[\"push\"] {\n return function update(path, state?) {\n let pathname: string;\n const pathIsString = typeof path === \"string\";\n if (pathIsString) {\n pathname = parsePath(path).pathname;\n } else {\n pathname = path.pathname;\n }\n if (pathname === \"\" || _internalApiHasMatchedApp(pathname)) {\n return (method === \"push\" ? originalPush : originalReplace)(\n path as string,\n state\n );\n }\n // Going to outside apps.\n return location[method === \"push\" ? \"assign\" : \"replace\"](\n pathIsString\n ? getBasePath() + path.replace(/^\\//, \"\")\n : browserHistory.createHref(\n path as LocationDescriptorObject<PluginHistoryState>\n )\n );\n };\n }\n return {\n push: updateFactory(\"push\"),\n replace: updateFactory(\"replace\"),\n };\n}\n","import { createBrowserHistory } from \"history\";\nimport { PluginHistory } from \"@next-core/brick-types\";\nimport { historyExtended } from \"./internal/historyExtended\";\nimport { getBasePath } from \"./internal/getBasePath\";\n\nlet history: PluginHistory;\n\n/** @internal */\nexport function createHistory(): PluginHistory {\n const browserHistory = createBrowserHistory({\n basename: getBasePath().replace(/\\/$/, \"\"),\n });\n Object.assign(browserHistory, historyExtended(browserHistory));\n history = browserHistory as PluginHistory;\n return history;\n}\n\n/**\n * 获取系统会话历史管理器。\n *\n * @returns 系统会话历史管理器。\n */\nexport function getHistory(): PluginHistory {\n return history;\n}\n","import { HttpResponseError } from \"@next-core/brick-http\";\n\nexport function isUnauthenticatedError(error: any): boolean {\n return (\n error instanceof HttpResponseError &&\n error.response.status === 401 &&\n !!error.responseJson &&\n error.responseJson.code === 100003\n );\n}\n","import React from \"react\";\nimport {\n HttpResponseError,\n HttpParseError,\n HttpFetchError,\n} from \"@next-core/brick-http\";\nimport { Modal } from \"antd\";\nimport { ExclamationCircleOutlined } from \"@ant-design/icons\";\nimport { ModalFunc } from \"antd/lib/modal/confirm\";\nimport i18next from \"i18next\";\nimport { K, NS_BRICK_KIT } from \"./i18n/constants\";\nimport { getHistory } from \"./history\";\nimport { isUnauthenticatedError } from \"./internal/isUnauthenticatedError\";\nimport { getRuntime } from \"./runtime\";\n\n/**\n * 将 http 请求错误转换为可读的字符串。\n *\n * @remarks\n *\n * 将依次尝试读取返回的 JSON 格式数据的字符串类型的 `error` 和 `msg` 字段,如果没有找到则返回 `error.toString()` 的结果。\n *\n * @param error - 错误对象。\n *\n * @returns 转换为字符串的错误信息。\n */\nexport function httpErrorToString(\n error: Error | HttpFetchError | HttpResponseError | HttpParseError | Event\n): string {\n if (error instanceof Event && error.target instanceof HTMLScriptElement) {\n return error.target.src;\n }\n if (error instanceof HttpFetchError) {\n return i18next.t(`${NS_BRICK_KIT}:${K.NETWORK_ERROR}`);\n }\n if (error instanceof HttpResponseError) {\n if (error.responseJson) {\n if (typeof error.responseJson.error === \"string\") {\n return error.responseJson.error;\n } else if (typeof error.responseJson.msg === \"string\") {\n return error.responseJson.msg;\n }\n }\n }\n return error.toString();\n}\n\nlet unauthenticatedConfirmModal: ReturnType<ModalFunc>;\n\n/**\n * 处理 http 请求错误(使用 AntDesign 模态框弹出错误信息)。\n *\n * @param error - 错误对象。\n */\nexport function handleHttpError(\n error: Error | HttpFetchError | HttpResponseError | HttpParseError\n): ReturnType<ModalFunc> {\n // Redirect to login page if not logged in.\n if (isUnauthenticatedError(error) && !window.NO_AUTH_GUARD) {\n // Do not show multiple confirm modals.\n if (unauthenticatedConfirmModal) {\n return;\n }\n unauthenticatedConfirmModal = Modal.confirm({\n icon: <ExclamationCircleOutlined />,\n content: <LoginTimeoutMessage />,\n okText: i18next.t(`${NS_BRICK_KIT}:${K.MODAL_OK}`),\n cancelText: i18next.t(`${NS_BRICK_KIT}:${K.MODAL_CANCEL}`),\n onOk: () => {\n const ssoEnabled = getRuntime().getFeatureFlags()[\"sso-enabled\"];\n const history = getHistory();\n history.push(ssoEnabled ? \"/sso-auth/login\" : \"/auth/login\", {\n from: {\n ...history.location,\n state: undefined,\n },\n });\n },\n });\n return;\n }\n\n return Modal.error({\n title: i18next.t(`${NS_BRICK_KIT}:${K.REQUEST_FAILED}`),\n content: (\n <div\n style={{\n whiteSpace: \"pre-wrap\",\n }}\n >\n {httpErrorToString(error)}\n </div>\n ),\n okText: i18next.t(`${NS_BRICK_KIT}:${K.MODAL_OK}`),\n });\n}\n\nexport function LoginTimeoutMessage(): React.ReactElement {\n React.useEffect(() => {\n // Unset confirm modal when it's destroyed.\n return () => {\n unauthenticatedConfirmModal = undefined;\n };\n }, []);\n return <div>{i18next.t(`${NS_BRICK_KIT}:${K.LOGIN_TIMEOUT_MESSAGE}`)}</div>;\n}\n","import {\n PluginWebSocketMessageTopic,\n PluginWebSocketMessage,\n PluginWebSocketMessageEvent,\n} from \"./interfaces\";\n\nexport class WebsocketMessageRequest {\n topic: string;\n data: string;\n event: PluginWebSocketMessageEvent;\n message: PluginWebSocketMessage<PluginWebSocketMessageTopic>;\n constructor(\n event: PluginWebSocketMessageEvent,\n topic: PluginWebSocketMessageTopic\n ) {\n this.event = event;\n this.topic = JSON.stringify(topic);\n this.message = {\n event: event,\n payload: topic,\n };\n this.data = JSON.stringify(this.message);\n }\n\n get identity(): string {\n const { system, topic } = this.message.payload;\n return JSON.stringify({\n system,\n topic,\n event: this.event,\n });\n }\n}\n","import {\n BrickEventHandlerCallback,\n PluginRuntimeContext,\n} from \"@next-core/brick-types\";\nimport { RuntimeBrick } from \"../../core/BrickNode\";\n\nexport interface PluginWebSocketOptions {\n url: string;\n reconnectTimeout?: number;\n retryLimit?: number | null;\n}\n\nexport enum PluginWebSocketMessageEvent {\n START_SESSION = \"SYSTEM.START_SESSION\",\n SESSION_STARTED = \"SYSTEM.SESSION_STARTED\",\n SESSION_FINISHED = \"SYSTEM.SESSION_FINISHED\",\n SESSION_RESTORE = \"SYSTEM.SESSION_RESTORE\",\n SESSION_RESTORE_SUCCESS = \"SYSTEM.SESSION_RESTORE_SUCCESS\",\n SESSION_RESTORE_FAILED = \"SYSTEM.SESSION_RESTORE_FAILED\",\n SUB = \"TOPIC.SUB\",\n SUB_SUCCESS = \"TOPIC.SUB_SUCCESS\",\n SUB_FAILED = \"TOPIC.SUB_FAILED\",\n UNSUB = \"TOPIC.UNSUB\",\n UNSUB_SUCCESS = \"TOPIC.UNSUB_SUCCESS\",\n UNSUB_FAILED = \"TOPIC.UNSUB_FAILED\",\n MESSAGE_PUSH = \"MESSAGE.PUSH\",\n}\n\nexport interface PluginWebSocketMessage<T> {\n event: PluginWebSocketMessageEvent;\n sessionId?: string;\n payload: T;\n}\n\nexport interface PluginWebSocketMessageTopic {\n source?: string;\n system: string;\n topic: string;\n}\n\nexport interface PluginWebSocketMessageResponsePayload\n extends PluginWebSocketMessageTopic {\n expire: number;\n message: Record<string, any>;\n}\n\nexport interface MessageBrickEventHandlerCallback\n extends Pick<BrickEventHandlerCallback, \"success\" | \"error\"> {\n runtimeBrick: RuntimeBrick;\n context: PluginRuntimeContext;\n}\n","import {\n PluginWebSocketMessage,\n PluginWebSocketMessageEvent,\n PluginWebSocketMessageResponsePayload,\n} from \"./interfaces\";\n\nexport class WebsocketMessageResponse {\n topic: string;\n data: string;\n event: PluginWebSocketMessageEvent;\n message: PluginWebSocketMessage<PluginWebSocketMessageResponsePayload>;\n\n constructor(response: string) {\n this.data = response;\n this.message = JSON.parse(response);\n this.event = this.message.event;\n const { system, topic } = this.message.payload;\n this.topic = JSON.stringify({ system, topic });\n }\n\n get identity(): string {\n const { system, topic } = this.message.payload;\n let event;\n switch (this.event) {\n case PluginWebSocketMessageEvent.SUB_SUCCESS:\n case PluginWebSocketMessageEvent.SUB_FAILED:\n event = PluginWebSocketMessageEvent.SUB;\n break;\n case PluginWebSocketMessageEvent.UNSUB_SUCCESS:\n case PluginWebSocketMessageEvent.UNSUB_FAILED:\n event = PluginWebSocketMessageEvent.UNSUB;\n break;\n default:\n event = this.event;\n }\n return JSON.stringify({\n system,\n topic,\n event,\n });\n }\n}\n","import { PluginWebSocketOptions } from \"./interfaces\";\nimport { WebsocketMessageResponse } from \"./WebsocketMessageResponse\";\n\nexport class WebSocketService {\n private retryCount = 0;\n private ws: WebSocket = null;\n private lockReconnect = false;\n public options: PluginWebSocketOptions;\n private messageQueue: Set<string> = new Set();\n public state: \"initial\" | \"connecting\" | \"pending\" | \"finished\" = \"initial\";\n\n private readonly defaultOptions: PluginWebSocketOptions = {\n url: null,\n reconnectTimeout: 1000,\n retryLimit: 6,\n };\n\n constructor(options: PluginWebSocketOptions) {\n this.options = { ...this.defaultOptions, ...options };\n this.createWebSocket();\n }\n\n get readyState(): number {\n return this.ws.readyState;\n }\n\n createWebSocket(): void {\n try {\n this.ws = new WebSocket(this.options.url);\n this.state = \"connecting\";\n this.init();\n } catch (e) {\n this.reconnect();\n /* istanbul ignore next */\n throw e;\n }\n }\n\n private init(): void {\n this.ws.onopen = () => {\n this.state = \"pending\";\n this.sendQueuedMessages();\n this.onOpen();\n this.retryCount = 0;\n this.options.reconnectTimeout = this.defaultOptions.reconnectTimeout;\n };\n\n this.ws.onclose = (event: CloseEvent) => {\n if (this.state === \"finished\") {\n this.onClose(event);\n // eslint-disable-next-line no-console\n console.warn(\"WebSocket was closed.\", event);\n }\n // Error code 1000 means that the connection was closed normally.\n // Try to reconnect.\n if (event.code !== 1000) {\n /* istanbul ignore if */\n if (!navigator.onLine) {\n // eslint-disable-next-line no-console\n console.error(\n \"You are offline. Please connect to the Internet and try again.\"\n );\n }\n this.reconnect();\n }\n };\n\n this.ws.onerror = (event: Event) => {\n this.onError(event);\n\n // eslint-disable-next-line no-console\n console.log(\"WebSocket encountered error: \", event);\n this.reconnect();\n };\n\n this.ws.onmessage = (event: MessageEvent) => {\n const response = new WebsocketMessageResponse(event.data);\n this.onMessage(response);\n };\n }\n\n private sendQueuedMessages(): void {\n if (this.messageQueue.size > 0) {\n [...this.messageQueue].forEach((message) => {\n this.messageQueue.delete(message);\n this.send(message);\n });\n }\n }\n\n send(data: string): void {\n if (this.readyState === WebSocket.OPEN) {\n this.ws.send(data);\n } else {\n this.messageQueue.add(data);\n }\n }\n\n reconnect(): void {\n if (\n this.options.retryLimit > 0 &&\n this.options.retryLimit <= this.retryCount\n ) {\n this.state = \"finished\";\n return;\n }\n if (this.lockReconnect) return;\n\n this.lockReconnect = true;\n this.retryCount++;\n this.onReconnect();\n\n // eslint-disable-next-line no-console\n console.warn(\"WebSocket server reconnecting...\");\n setTimeout(() => {\n this.createWebSocket();\n this.lockReconnect = false;\n this.options.reconnectTimeout = this.options.reconnectTimeout * 2;\n }, this.options.reconnectTimeout);\n }\n\n close(): void {\n this.ws.close();\n }\n\n // Override hook function\n /* eslint-disable @typescript-eslint/no-empty-function */\n\n onOpen(): void {}\n\n // istanbul ignore next\n onClose(event: CloseEvent): void {}\n\n onError(event: Event): void {}\n\n onMessage(message: WebsocketMessageResponse): void {}\n\n onReconnect(): void {}\n /* eslint-enable @typescript-eslint/no-empty-function */\n}\n","import { getBasePath } from \"../internal/getBasePath\";\nimport { WebSocketService } from \"./WebSocketService\";\n\nlet websocket: WebSocketService;\n\nexport const createWebSocket = (): WebSocketService => {\n if (!websocket) {\n const protocol = window.location.protocol === \"https:\" ? \"wss:\" : \"ws:\";\n websocket = new WebSocketService({\n url: `${protocol}//${\n window.location.host\n }${getBasePath()}api/websocket_service/v1/ws`,\n });\n }\n return websocket;\n};\n\nexport function getWebSocket(): WebSocketService {\n return websocket;\n}\n","module.exports = function (xs, fn) {\n var res = [];\n for (var i = 0; i < xs.length; i++) {\n var x = fn(xs[i], i);\n if (isArray(x)) res.push.apply(res, x);\n else res.push(x);\n }\n return res;\n};\n\nvar isArray = Array.isArray || function (xs) {\n return Object.prototype.toString.call(xs) === '[object Array]';\n};\n","'use strict';\nmodule.exports = balanced;\nfunction balanced(a, b, str) {\n if (a instanceof RegExp) a = maybeMatch(a, str);\n if (b instanceof RegExp) b = maybeMatch(b, str);\n\n var r = range(a, b, str);\n\n return r && {\n start: r[0],\n end: r[1],\n pre: str.slice(0, r[0]),\n body: str.slice(r[0] + a.length, r[1]),\n post: str.slice(r[1] + b.length)\n };\n}\n\nfunction maybeMatch(reg, str) {\n var m = str.match(reg);\n return m ? m[0] : null;\n}\n\nbalanced.range = range;\nfunction range(a, b, str) {\n var begs, beg, left, right, result;\n var ai = str.indexOf(a);\n var bi = str.indexOf(b, ai + 1);\n var i = ai;\n\n if (ai >= 0 && bi > 0) {\n begs = [];\n left = str.length;\n\n while (i >= 0 && !result) {\n if (i == ai) {\n begs.push(i);\n ai = str.indexOf(a, i + 1);\n } else if (begs.length == 1) {\n result = [ begs.pop(), bi ];\n } else {\n beg = begs.pop();\n if (beg < left) {\n left = beg;\n right = bi;\n }\n\n bi = str.indexOf(b, i + 1);\n }\n\n i = ai < bi && ai >= 0 ? ai : bi;\n }\n\n if (begs.length) {\n result = [ left, right ];\n }\n }\n\n return result;\n}\n","var concatMap = require('concat-map');\nvar balanced = require('balanced-match');\n\nmodule.exports = expandTop;\n\nvar escSlash = '\\0SLASH'+Math.random()+'\\0';\nvar escOpen = '\\0OPEN'+Math.random()+'\\0';\nvar escClose = '\\0CLOSE'+Math.random()+'\\0';\nvar escComma = '\\0COMMA'+Math.random()+'\\0';\nvar escPeriod = '\\0PERIOD'+Math.random()+'\\0';\n\nfunction numeric(str) {\n return parseInt(str, 10) == str\n ? parseInt(str, 10)\n : str.charCodeAt(0);\n}\n\nfunction escapeBraces(str) {\n return str.split('\\\\\\\\').join(escSlash)\n .split('\\\\{').join(escOpen)\n .split('\\\\}').join(escClose)\n .split('\\\\,').join(escComma)\n .split('\\\\.').join(escPeriod);\n}\n\nfunction unescapeBraces(str) {\n return str.split(escSlash).join('\\\\')\n .split(escOpen).join('{')\n .split(escClose).join('}')\n .split(escComma).join(',')\n .split(escPeriod).join('.');\n}\n\n\n// Basically just str.split(\",\"), but handling cases\n// where we have nested braced sections, which should be\n// treated as individual members, like {a,{b,c},d}\nfunction parseCommaParts(str) {\n if (!str)\n return [''];\n\n var parts = [];\n var m = balanced('{', '}', str);\n\n if (!m)\n return str.split(',');\n\n var pre = m.pre;\n var body = m.body;\n var post = m.post;\n var p = pre.split(',');\n\n p[p.length-1] += '{' + body + '}';\n var postParts = parseCommaParts(post);\n if (post.length) {\n p[p.length-1] += postParts.shift();\n p.push.apply(p, postParts);\n }\n\n parts.push.apply(parts, p);\n\n return parts;\n}\n\nfunction expandTop(str) {\n if (!str)\n return [];\n\n // I don't know why Bash 4.3 does this, but it does.\n // Anything starting with {} will have the first two bytes preserved\n // but *only* at the top level, so {},a}b will not expand to anything,\n // but a{},b}c will be expanded to [a}c,abc].\n // One could argue that this is a bug in Bash, but since the goal of\n // this module is to match Bash's rules, we escape a leading {}\n if (str.substr(0, 2) === '{}') {\n str = '\\\\{\\\\}' + str.substr(2);\n }\n\n return expand(escapeBraces(str), true).map(unescapeBraces);\n}\n\nfunction identity(e) {\n return e;\n}\n\nfunction embrace(str) {\n return '{' + str + '}';\n}\nfunction isPadded(el) {\n return /^-?0\\d/.test(el);\n}\n\nfunction lte(i, y) {\n return i <= y;\n}\nfunction gte(i, y) {\n return i >= y;\n}\n\nfunction expand(str, isTop) {\n var expansions = [];\n\n var m = balanced('{', '}', str);\n if (!m || /\\$$/.test(m.pre)) return [str];\n\n var isNumericSequence = /^-?\\d+\\.\\.-?\\d+(?:\\.\\.-?\\d+)?$/.test(m.body);\n var isAlphaSequence = /^[a-zA-Z]\\.\\.[a-zA-Z](?:\\.\\.-?\\d+)?$/.test(m.body);\n var isSequence = isNumericSequence || isAlphaSequence;\n var isOptions = m.body.indexOf(',') >= 0;\n if (!isSequence && !isOptions) {\n // {a},b}\n if (m.post.match(/,.*\\}/)) {\n str = m.pre + '{' + m.body + escClose + m.post;\n return expand(str);\n }\n return [str];\n }\n\n var n;\n if (isSequence) {\n n = m.body.split(/\\.\\./);\n } else {\n n = parseCommaParts(m.body);\n if (n.length === 1) {\n // x{{a,b}}y ==> x{a}y x{b}y\n n = expand(n[0], false).map(embrace);\n if (n.length === 1) {\n var post = m.post.length\n ? expand(m.post, false)\n : [''];\n return post.map(function(p) {\n return m.pre + n[0] + p;\n });\n }\n }\n }\n\n // at this point, n is the parts, and we know it's not a comma set\n // with a single entry.\n\n // no need to expand pre, since it is guaranteed to be free of brace-sets\n var pre = m.pre;\n var post = m.post.length\n ? expand(m.post, false)\n : [''];\n\n var N;\n\n if (isSequence) {\n var x = numeric(n[0]);\n var y = numeric(n[1]);\n var width = Math.max(n[0].length, n[1].length)\n var incr = n.length == 3\n ? Math.abs(numeric(n[2]))\n : 1;\n var test = lte;\n var reverse = y < x;\n if (reverse) {\n incr *= -1;\n test = gte;\n }\n var pad = n.some(isPadded);\n\n N = [];\n\n for (var i = x; test(i, y); i += incr) {\n var c;\n if (isAlphaSequence) {\n c = String.fromCharCode(i);\n if (c === '\\\\')\n c = '';\n } else {\n c = String(i);\n if (pad) {\n var need = width - c.length;\n if (need > 0) {\n var z = new Array(need + 1).join('0');\n if (i < 0)\n c = '-' + z + c.slice(1);\n else\n c = z + c;\n }\n }\n }\n N.push(c);\n }\n } else {\n N = concatMap(n, function(el) { return expand(el, false) });\n }\n\n for (var j = 0; j < N.length; j++) {\n for (var k = 0; k < post.length; k++) {\n var expansion = pre + N[j] + post[k];\n if (!isTop || isSequence || expansion)\n expansions.push(expansion);\n }\n }\n\n return expansions;\n}\n\n","module.exports = minimatch\nminimatch.Minimatch = Minimatch\n\nvar path = (function () { try { return require('path') } catch (e) {}}()) || {\n sep: '/'\n}\nminimatch.sep = path.sep\n\nvar GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}\nvar expand = require('brace-expansion')\n\nvar plTypes = {\n '!': { open: '(?:(?!(?:', close: '))[^/]*?)'},\n '?': { open: '(?:', close: ')?' },\n '+': { open: '(?:', close: ')+' },\n '*': { open: '(?:', close: ')*' },\n '@': { open: '(?:', close: ')' }\n}\n\n// any single thing other than /\n// don't need to escape / when using new RegExp()\nvar qmark = '[^/]'\n\n// * => any number of characters\nvar star = qmark + '*?'\n\n// ** when dots are allowed. Anything goes, except .. and .\n// not (^ or / followed by one or two dots followed by $ or /),\n// followed by anything, any number of times.\nvar twoStarDot = '(?:(?!(?:\\\\\\/|^)(?:\\\\.{1,2})($|\\\\\\/)).)*?'\n\n// not a ^ or / followed by a dot,\n// followed by anything, any number of times.\nvar twoStarNoDot = '(?:(?!(?:\\\\\\/|^)\\\\.).)*?'\n\n// characters that need to be escaped in RegExp.\nvar reSpecials = charSet('().*{}+?[]^$\\\\!')\n\n// \"abc\" -> { a:true, b:true, c:true }\nfunction charSet (s) {\n return s.split('').reduce(function (set, c) {\n set[c] = true\n return set\n }, {})\n}\n\n// normalizes slashes.\nvar slashSplit = /\\/+/\n\nminimatch.filter = filter\nfunction filter (pattern, options) {\n options = options || {}\n return function (p, i, list) {\n return minimatch(p, pattern, options)\n }\n}\n\nfunction ext (a, b) {\n b = b || {}\n var t = {}\n Object.keys(a).forEach(function (k) {\n t[k] = a[k]\n })\n Object.keys(b).forEach(function (k) {\n t[k] = b[k]\n })\n return t\n}\n\nminimatch.defaults = function (def) {\n if (!def || typeof def !== 'object' || !Object.keys(def).length) {\n return minimatch\n }\n\n var orig = minimatch\n\n var m = function minimatch (p, pattern, options) {\n return orig(p, pattern, ext(def, options))\n }\n\n m.Minimatch = function Minimatch (pattern, options) {\n return new orig.Minimatch(pattern, ext(def, options))\n }\n m.Minimatch.defaults = function defaults (options) {\n return orig.defaults(ext(def, options)).Minimatch\n }\n\n m.filter = function filter (pattern, options) {\n return orig.filter(pattern, ext(def, options))\n }\n\n m.defaults = function defaults (options) {\n return orig.defaults(ext(def, options))\n }\n\n m.makeRe = function makeRe (pattern, options) {\n return orig.makeRe(pattern, ext(def, options))\n }\n\n m.braceExpand = function braceExpand (pattern, options) {\n return orig.braceExpand(pattern, ext(def, options))\n }\n\n m.match = function (list, pattern, options) {\n return orig.match(list, pattern, ext(def, options))\n }\n\n return m\n}\n\nMinimatch.defaults = function (def) {\n return minimatch.defaults(def).Minimatch\n}\n\nfunction minimatch (p, pattern, options) {\n assertValidPattern(pattern)\n\n if (!options) options = {}\n\n // shortcut: comments match nothing.\n if (!options.nocomment && pattern.charAt(0) === '#') {\n return false\n }\n\n return new Minimatch(pattern, options).match(p)\n}\n\nfunction Minimatch (pattern, options) {\n if (!(this instanceof Minimatch)) {\n return new Minimatch(pattern, options)\n }\n\n assertValidPattern(pattern)\n\n if (!options) options = {}\n\n pattern = pattern.trim()\n\n // windows support: need to use /, not \\\n if (!options.allowWindowsEscape && path.sep !== '/') {\n pattern = pattern.split(path.sep).join('/')\n }\n\n this.options = options\n this.set = []\n this.pattern = pattern\n this.regexp = null\n this.negate = false\n this.comment = false\n this.empty = false\n this.partial = !!options.partial\n\n // make the set of regexps etc.\n this.make()\n}\n\nMinimatch.prototype.debug = function () {}\n\nMinimatch.prototype.make = make\nfunction make () {\n var pattern = this.pattern\n var options = this.options\n\n // empty patterns and comments match nothing.\n if (!options.nocomment && pattern.charAt(0) === '#') {\n this.comment = true\n return\n }\n if (!pattern) {\n this.empty = true\n return\n }\n\n // step 1: figure out negation, etc.\n this.parseNegate()\n\n // step 2: expand braces\n var set = this.globSet = this.braceExpand()\n\n if (options.debug) this.debug = function debug() { console.error.apply(console, arguments) }\n\n this.debug(this.pattern, set)\n\n // step 3: now we have a set, so turn each one into a series of path-portion\n // matching patterns.\n // These will be regexps, except in the case of \"**\", which is\n // set to the GLOBSTAR object for globstar behavior,\n // and will not contain any / characters\n set = this.globParts = set.map(function (s) {\n return s.split(slashSplit)\n })\n\n this.debug(this.pattern, set)\n\n // glob --> regexps\n set = set.map(function (s, si, set) {\n return s.map(this.parse, this)\n }, this)\n\n this.debug(this.pattern, set)\n\n // filter out everything that didn't compile properly.\n set = set.filter(function (s) {\n return s.indexOf(false) === -1\n })\n\n this.debug(this.pattern, set)\n\n this.set = set\n}\n\nMinimatch.prototype.parseNegate = parseNegate\nfunction parseNegate () {\n var pattern = this.pattern\n var negate = false\n var options = this.options\n var negateOffset = 0\n\n if (options.nonegate) return\n\n for (var i = 0, l = pattern.length\n ; i < l && pattern.charAt(i) === '!'\n ; i++) {\n negate = !negate\n negateOffset++\n }\n\n if (negateOffset) this.pattern = pattern.substr(negateOffset)\n this.negate = negate\n}\n\n// Brace expansion:\n// a{b,c}d -> abd acd\n// a{b,}c -> abc ac\n// a{0..3}d -> a0d a1d a2d a3d\n// a{b,c{d,e}f}g -> abg acdfg acefg\n// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg\n//\n// Invalid sets are not expanded.\n// a{2..}b -> a{2..}b\n// a{b}c -> a{b}c\nminimatch.braceExpand = function (pattern, options) {\n return braceExpand(pattern, options)\n}\n\nMinimatch.prototype.braceExpand = braceExpand\n\nfunction braceExpand (pattern, options) {\n if (!options) {\n if (this instanceof Minimatch) {\n options = this.options\n } else {\n options = {}\n }\n }\n\n pattern = typeof pattern === 'undefined'\n ? this.pattern : pattern\n\n assertValidPattern(pattern)\n\n // Thanks to Yeting Li <https://github.com/yetingli> for\n // improving this regexp to avoid a ReDOS vulnerability.\n if (options.nobrace || !/\\{(?:(?!\\{).)*\\}/.test(pattern)) {\n // shortcut. no need to expand.\n return [pattern]\n }\n\n return expand(pattern)\n}\n\nvar MAX_PATTERN_LENGTH = 1024 * 64\nvar assertValidPattern = function (pattern) {\n if (typeof pattern !== 'string') {\n throw new TypeError('invalid pattern')\n }\n\n if (pattern.length > MAX_PATTERN_LENGTH) {\n throw new TypeError('pattern is too long')\n }\n}\n\n// parse a component of the expanded set.\n// At this point, no pattern may contain \"/\" in it\n// so we're going to return a 2d array, where each entry is the full\n// pattern, split on '/', and then turned into a regular expression.\n// A regexp is made at the end which joins each array with an\n// escaped /, and another full one which joins each regexp with |.\n//\n// Following the lead of Bash 4.1, note that \"**\" only has special meaning\n// when it is the *only* thing in a path portion. Otherwise, any series\n// of * is equivalent to a single *. Globstar behavior is enabled by\n// default, and can be disabled by setting options.noglobstar.\nMinimatch.prototype.parse = parse\nvar SUBPARSE = {}\nfunction parse (pattern, isSub) {\n assertValidPattern(pattern)\n\n var options = this.options\n\n // shortcuts\n if (pattern === '**') {\n if (!options.noglobstar)\n return GLOBSTAR\n else\n pattern = '*'\n }\n if (pattern === '') return ''\n\n var re = ''\n var hasMagic = !!options.nocase\n var escaping = false\n // ? => one single character\n var patternListStack = []\n var negativeLists = []\n var stateChar\n var inClass = false\n var reClassStart = -1\n var classStart = -1\n // . and .. never match anything that doesn't start with .,\n // even when options.dot is set.\n var patternStart = pattern.charAt(0) === '.' ? '' // anything\n // not (start or / followed by . or .. followed by / or end)\n : options.dot ? '(?!(?:^|\\\\\\/)\\\\.{1,2}(?:$|\\\\\\/))'\n : '(?!\\\\.)'\n var self = this\n\n function clearStateChar () {\n if (stateChar) {\n // we had some state-tracking character\n // that wasn't consumed by this pass.\n switch (stateChar) {\n case '*':\n re += star\n hasMagic = true\n break\n case '?':\n re += qmark\n hasMagic = true\n break\n default:\n re += '\\\\' + stateChar\n break\n }\n self.debug('clearStateChar %j %j', stateChar, re)\n stateChar = false\n }\n }\n\n for (var i = 0, len = pattern.length, c\n ; (i < len) && (c = pattern.charAt(i))\n ; i++) {\n this.debug('%s\\t%s %s %j', pattern, i, re, c)\n\n // skip over any that are escaped.\n if (escaping && reSpecials[c]) {\n re += '\\\\' + c\n escaping = false\n continue\n }\n\n switch (c) {\n /* istanbul ignore next */\n case '/': {\n // completely not allowed, even escaped.\n // Should already be path-split by now.\n return false\n }\n\n case '\\\\':\n clearStateChar()\n escaping = true\n continue\n\n // the various stateChar values\n // for the \"extglob\" stuff.\n case '?':\n case '*':\n case '+':\n case '@':\n case '!':\n this.debug('%s\\t%s %s %j <-- stateChar', pattern, i, re, c)\n\n // all of those are literals inside a class, except that\n // the glob [!a] means [^a] in regexp\n if (inClass) {\n this.debug(' in class')\n if (c === '!' && i === classStart + 1) c = '^'\n re += c\n continue\n }\n\n // if we already have a stateChar, then it means\n // that there was something like ** or +? in there.\n // Handle the stateChar, then proceed with this one.\n self.debug('call clearStateChar %j', stateChar)\n clearStateChar()\n stateChar = c\n // if extglob is disabled, then +(asdf|foo) isn't a thing.\n // just clear the statechar *now*, rather than even diving into\n // the patternList stuff.\n if (options.noext) clearStateChar()\n continue\n\n case '(':\n if (inClass) {\n re += '('\n continue\n }\n\n if (!stateChar) {\n re += '\\\\('\n continue\n }\n\n patternListStack.push({\n type: stateChar,\n start: i - 1,\n reStart: re.length,\n open: plTypes[stateChar].open,\n close: plTypes[stateChar].close\n })\n // negation is (?:(?!js)[^/]*)\n re += stateChar === '!' ? '(?:(?!(?:' : '(?:'\n this.debug('plType %j %j', stateChar, re)\n stateChar = false\n continue\n\n case ')':\n if (inClass || !patternListStack.length) {\n re += '\\\\)'\n continue\n }\n\n clearStateChar()\n hasMagic = true\n var pl = patternListStack.pop()\n // negation is (?:(?!js)[^/]*)\n // The others are (?:<pattern>)<type>\n re += pl.close\n if (pl.type === '!') {\n negativeLists.push(pl)\n }\n pl.reEnd = re.length\n continue\n\n case '|':\n if (inClass || !patternListStack.length || escaping) {\n re += '\\\\|'\n escaping = false\n continue\n }\n\n clearStateChar()\n re += '|'\n continue\n\n // these are mostly the same in regexp and glob\n case '[':\n // swallow any state-tracking char before the [\n clearStateChar()\n\n if (inClass) {\n re += '\\\\' + c\n continue\n }\n\n inClass = true\n classStart = i\n reClassStart = re.length\n re += c\n continue\n\n case ']':\n // a right bracket shall lose its special\n // meaning and represent itself in\n // a bracket expression if it occurs\n // first in the list. -- POSIX.2 2.8.3.2\n if (i === classStart + 1 || !inClass) {\n re += '\\\\' + c\n escaping = false\n continue\n }\n\n // handle the case where we left a class open.\n // \"[z-a]\" is valid, equivalent to \"\\[z-a\\]\"\n // split where the last [ was, make sure we don't have\n // an invalid re. if so, re-walk the contents of the\n // would-be class to re-translate any characters that\n // were passed through as-is\n // TODO: It would probably be faster to determine this\n // without a try/catch and a new RegExp, but it's tricky\n // to do safely. For now, this is safe and works.\n var cs = pattern.substring(classStart + 1, i)\n try {\n RegExp('[' + cs + ']')\n } catch (er) {\n // not a valid class!\n var sp = this.parse(cs, SUBPARSE)\n re = re.substr(0, reClassStart) + '\\\\[' + sp[0] + '\\\\]'\n hasMagic = hasMagic || sp[1]\n inClass = false\n continue\n }\n\n // finish up the class.\n hasMagic = true\n inClass = false\n re += c\n continue\n\n default:\n // swallow any state char that wasn't consumed\n clearStateChar()\n\n if (escaping) {\n // no need\n escaping = false\n } else if (reSpecials[c]\n && !(c === '^' && inClass)) {\n re += '\\\\'\n }\n\n re += c\n\n } // switch\n } // for\n\n // handle the case where we left a class open.\n // \"[abc\" is valid, equivalent to \"\\[abc\"\n if (inClass) {\n // split where the last [ was, and escape it\n // this is a huge pita. We now have to re-walk\n // the contents of the would-be class to re-translate\n // any characters that were passed through as-is\n cs = pattern.substr(classStart + 1)\n sp = this.parse(cs, SUBPARSE)\n re = re.substr(0, reClassStart) + '\\\\[' + sp[0]\n hasMagic = hasMagic || sp[1]\n }\n\n // handle the case where we had a +( thing at the *end*\n // of the pattern.\n // each pattern list stack adds 3 chars, and we need to go through\n // and escape any | chars that were passed through as-is for the regexp.\n // Go through and escape them, taking care not to double-escape any\n // | chars that were already escaped.\n for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) {\n var tail = re.slice(pl.reStart + pl.open.length)\n this.debug('setting tail', re, pl)\n // maybe some even number of \\, then maybe 1 \\, followed by a |\n tail = tail.replace(/((?:\\\\{2}){0,64})(\\\\?)\\|/g, function (_, $1, $2) {\n if (!$2) {\n // the | isn't already escaped, so escape it.\n $2 = '\\\\'\n }\n\n // need to escape all those slashes *again*, without escaping the\n // one that we need for escaping the | character. As it works out,\n // escaping an even number of slashes can be done by simply repeating\n // it exactly after itself. That's why this trick works.\n //\n // I am sorry that you have to see this.\n return $1 + $1 + $2 + '|'\n })\n\n this.debug('tail=%j\\n %s', tail, tail, pl, re)\n var t = pl.type === '*' ? star\n : pl.type === '?' ? qmark\n : '\\\\' + pl.type\n\n hasMagic = true\n re = re.slice(0, pl.reStart) + t + '\\\\(' + tail\n }\n\n // handle trailing things that only matter at the very end.\n clearStateChar()\n if (escaping) {\n // trailing \\\\\n re += '\\\\\\\\'\n }\n\n // only need to apply the nodot start if the re starts with\n // something that could conceivably capture a dot\n var addPatternStart = false\n switch (re.charAt(0)) {\n case '[': case '.': case '(': addPatternStart = true\n }\n\n // Hack to work around lack of negative lookbehind in JS\n // A pattern like: *.!(x).!(y|z) needs to ensure that a name\n // like 'a.xyz.yz' doesn't match. So, the first negative\n // lookahead, has to look ALL the way ahead, to the end of\n // the pattern.\n for (var n = negativeLists.length - 1; n > -1; n--) {\n var nl = negativeLists[n]\n\n var nlBefore = re.slice(0, nl.reStart)\n var nlFirst = re.slice(nl.reStart, nl.reEnd - 8)\n var nlLast = re.slice(nl.reEnd - 8, nl.reEnd)\n var nlAfter = re.slice(nl.reEnd)\n\n nlLast += nlAfter\n\n // Handle nested stuff like *(*.js|!(*.json)), where open parens\n // mean that we should *not* include the ) in the bit that is considered\n // \"after\" the negated section.\n var openParensBefore = nlBefore.split('(').length - 1\n var cleanAfter = nlAfter\n for (i = 0; i < openParensBefore; i++) {\n cleanAfter = cleanAfter.replace(/\\)[+*?]?/, '')\n }\n nlAfter = cleanAfter\n\n var dollar = ''\n if (nlAfter === '' && isSub !== SUBPARSE) {\n dollar = '$'\n }\n var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast\n re = newRe\n }\n\n // if the re is not \"\" at this point, then we need to make sure\n // it doesn't match against an empty path part.\n // Otherwise a/* will match a/, which it should not.\n if (re !== '' && hasMagic) {\n re = '(?=.)' + re\n }\n\n if (addPatternStart) {\n re = patternStart + re\n }\n\n // parsing just a piece of a larger pattern.\n if (isSub === SUBPARSE) {\n return [re, hasMagic]\n }\n\n // skip the regexp for non-magical patterns\n // unescape anything in it, though, so that it'll be\n // an exact match against a file etc.\n if (!hasMagic) {\n return globUnescape(pattern)\n }\n\n var flags = options.nocase ? 'i' : ''\n try {\n var regExp = new RegExp('^' + re + '$', flags)\n } catch (er) /* istanbul ignore next - should be impossible */ {\n // If it was an invalid regular expression, then it can't match\n // anything. This trick looks for a character after the end of\n // the string, which is of course impossible, except in multi-line\n // mode, but it's not a /m regex.\n return new RegExp('$.')\n }\n\n regExp._glob = pattern\n regExp._src = re\n\n return regExp\n}\n\nminimatch.makeRe = function (pattern, options) {\n return new Minimatch(pattern, options || {}).makeRe()\n}\n\nMinimatch.prototype.makeRe = makeRe\nfunction makeRe () {\n if (this.regexp || this.regexp === false) return this.regexp\n\n // at this point, this.set is a 2d array of partial\n // pattern strings, or \"**\".\n //\n // It's better to use .match(). This function shouldn't\n // be used, really, but it's pretty convenient sometimes,\n // when you just want to work with a regex.\n var set = this.set\n\n if (!set.length) {\n this.regexp = false\n return this.regexp\n }\n var options = this.options\n\n var twoStar = options.noglobstar ? star\n : options.dot ? twoStarDot\n : twoStarNoDot\n var flags = options.nocase ? 'i' : ''\n\n var re = set.map(function (pattern) {\n return pattern.map(function (p) {\n return (p === GLOBSTAR) ? twoStar\n : (typeof p === 'string') ? regExpEscape(p)\n : p._src\n }).join('\\\\\\/')\n }).join('|')\n\n // must match entire pattern\n // ending in a * or ** will make it less strict.\n re = '^(?:' + re + ')$'\n\n // can match anything, as long as it's not this.\n if (this.negate) re = '^(?!' + re + ').*$'\n\n try {\n this.regexp = new RegExp(re, flags)\n } catch (ex) /* istanbul ignore next - should be impossible */ {\n this.regexp = false\n }\n return this.regexp\n}\n\nminimatch.match = function (list, pattern, options) {\n options = options || {}\n var mm = new Minimatch(pattern, options)\n list = list.filter(function (f) {\n return mm.match(f)\n })\n if (mm.options.nonull && !list.length) {\n list.push(pattern)\n }\n return list\n}\n\nMinimatch.prototype.match = function match (f, partial) {\n if (typeof partial === 'undefined') partial = this.partial\n this.debug('match', f, this.pattern)\n // short-circuit in the case of busted things.\n // comments, etc.\n if (this.comment) return false\n if (this.empty) return f === ''\n\n if (f === '/' && partial) return true\n\n var options = this.options\n\n // windows: need to use /, not \\\n if (path.sep !== '/') {\n f = f.split(path.sep).join('/')\n }\n\n // treat the test path as a set of pathparts.\n f = f.split(slashSplit)\n this.debug(this.pattern, 'split', f)\n\n // just ONE of the pattern sets in this.set needs to match\n // in order for it to be valid. If negating, then just one\n // match means that we have failed.\n // Either way, return on the first hit.\n\n var set = this.set\n this.debug(this.pattern, 'set', set)\n\n // Find the basename of the path by looking for the last non-empty segment\n var filename\n var i\n for (i = f.length - 1; i >= 0; i--) {\n filename = f[i]\n if (filename) break\n }\n\n for (i = 0; i < set.length; i++) {\n var pattern = set[i]\n var file = f\n if (options.matchBase && pattern.length === 1) {\n file = [filename]\n }\n var hit = this.matchOne(file, pattern, partial)\n if (hit) {\n if (options.flipNegate) return true\n return !this.negate\n }\n }\n\n // didn't get any hits. this is success if it's a negative\n // pattern, failure otherwise.\n if (options.flipNegate) return false\n return this.negate\n}\n\n// set partial to true to test if, for example,\n// \"/a/b\" matches the start of \"/*/b/*/d\"\n// Partial means, if you run out of file before you run\n// out of pattern, then that's fine, as long as all\n// the parts match.\nMinimatch.prototype.matchOne = function (file, pattern, partial) {\n var options = this.options\n\n this.debug('matchOne',\n { 'this': this, file: file, pattern: pattern })\n\n this.debug('matchOne', file.length, pattern.length)\n\n for (var fi = 0,\n pi = 0,\n fl = file.length,\n pl = pattern.length\n ; (fi < fl) && (pi < pl)\n ; fi++, pi++) {\n this.debug('matchOne loop')\n var p = pattern[pi]\n var f = file[fi]\n\n this.debug(pattern, p, f)\n\n // should be impossible.\n // some invalid regexp stuff in the set.\n /* istanbul ignore if */\n if (p === false) return false\n\n if (p === GLOBSTAR) {\n this.debug('GLOBSTAR', [pattern, p, f])\n\n // \"**\"\n // a/**/b/**/c would match the following:\n // a/b/x/y/z/c\n // a/x/y/z/b/c\n // a/b/x/b/x/c\n // a/b/c\n // To do this, take the rest of the pattern after\n // the **, and see if it would match the file remainder.\n // If so, return success.\n // If not, the ** \"swallows\" a segment, and try again.\n // This is recursively awful.\n //\n // a/**/b/**/c matching a/b/x/y/z/c\n // - a matches a\n // - doublestar\n // - matchOne(b/x/y/z/c, b/**/c)\n // - b matches b\n // - doublestar\n // - matchOne(x/y/z/c, c) -> no\n // - matchOne(y/z/c, c) -> no\n // - matchOne(z/c, c) -> no\n // - matchOne(c, c) yes, hit\n var fr = fi\n var pr = pi + 1\n if (pr === pl) {\n this.debug('** at the end')\n // a ** at the end will just swallow the rest.\n // We have found a match.\n // however, it will not swallow /.x, unless\n // options.dot is set.\n // . and .. are *never* matched by **, for explosively\n // exponential reasons.\n for (; fi < fl; fi++) {\n if (file[fi] === '.' || file[fi] === '..' ||\n (!options.dot && file[fi].charAt(0) === '.')) return false\n }\n return true\n }\n\n // ok, let's see if we can swallow whatever we can.\n while (fr < fl) {\n var swallowee = file[fr]\n\n this.debug('\\nglobstar while', file, fr, pattern, pr, swallowee)\n\n // XXX remove this slice. Just pass the start index.\n if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {\n this.debug('globstar found match!', fr, fl, swallowee)\n // found a match.\n return true\n } else {\n // can't swallow \".\" or \"..\" ever.\n // can only swallow \".foo\" when explicitly asked.\n if (swallowee === '.' || swallowee === '..' ||\n (!options.dot && swallowee.charAt(0) === '.')) {\n this.debug('dot detected!', file, fr, pattern, pr)\n break\n }\n\n // ** swallows a segment, and continue.\n this.debug('globstar swallow a segment, and continue')\n fr++\n }\n }\n\n // no match was found.\n // However, in partial mode, we can't say this is necessarily over.\n // If there's more *pattern* left, then\n /* istanbul ignore if */\n if (partial) {\n // ran out of file\n this.debug('\\n>>> no match, partial?', file, fr, pattern, pr)\n if (fr === fl) return true\n }\n return false\n }\n\n // something other than **\n // non-magic patterns just have to match exactly\n // patterns with magic have been turned into regexps.\n var hit\n if (typeof p === 'string') {\n hit = f === p\n this.debug('string match', p, f, hit)\n } else {\n hit = f.match(p)\n this.debug('pattern match', p, f, hit)\n }\n\n if (!hit) return false\n }\n\n // Note: ending in / means that we'll get a final \"\"\n // at the end of the pattern. This can only match a\n // corresponding \"\" at the end of the file.\n // If the file ends in /, then it can only match a\n // a pattern that ends in /, unless the pattern just\n // doesn't have any more for it. But, a/b/ should *not*\n // match \"a/b/*\", even though \"\" matches against the\n // [^/]*? pattern, except in partial mode, where it might\n // simply not be reached yet.\n // However, a/b/ should still satisfy a/*\n\n // now either we fell off the end of the pattern, or we're done.\n if (fi === fl && pi === pl) {\n // ran out of pattern and filename at the same time.\n // an exact hit!\n return true\n } else if (fi === fl) {\n // ran out of file, but still had pattern left.\n // this is ok if we're doing the match as part of\n // a glob fs traversal.\n return partial\n } else /* istanbul ignore else */ if (pi === pl) {\n // ran out of pattern, still have file left.\n // this is only acceptable if we're on the very last\n // empty segment of a file with a trailing slash.\n // a/* should match a/b/\n return (fi === fl - 1) && (file[fi] === '')\n }\n\n // should be unreachable.\n /* istanbul ignore next */\n throw new Error('wtf?')\n}\n\n// replace stuff like \\* with *\nfunction globUnescape (s) {\n return s.replace(/\\\\(.)/g, '$1')\n}\n\nfunction regExpEscape (s) {\n return s.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&')\n}\n","import {\n BrickEventHandler,\n MessageConf,\n PluginRuntimeContext,\n} from \"@next-core/brick-types\";\nimport {\n WebsocketMessageRequest,\n WebsocketMessageResponse,\n} from \"../websocket\";\nimport {\n MessageBrickEventHandlerCallback,\n PluginWebSocketMessageEvent,\n PluginWebSocketMessageResponsePayload,\n PluginWebSocketMessageTopic,\n} from \"../websocket/interfaces\";\nimport { BrickAndMessage } from \"./LocationContext\";\nimport { listenerFactory } from \"../internal/bindListeners\";\nimport { createWebSocket } from \"../websocket/WebSocket\";\nimport minimatch from \"minimatch\";\nimport { WebSocketService } from \"../websocket/WebSocketService\";\nimport { _internalApiMessageCloseHandler } from \"./Runtime\";\nimport { RuntimeBrick } from \"./BrickNode\";\n\nlet messageDispatcher: MessageDispatcher;\n\nexport function createMessageDispatcher(): MessageDispatcher {\n messageDispatcher = new MessageDispatcher();\n\n return messageDispatcher;\n}\n\nexport function getMessageDispatcher(): MessageDispatcher {\n return messageDispatcher;\n}\n\nexport class MessageDispatcher {\n private ws: WebSocketService;\n private context: PluginRuntimeContext;\n private messages: Map<string, BrickAndMessage[]> = new Map<\n string,\n BrickAndMessage[]\n >();\n private messageCallbackHandlers: Map<\n string,\n MessageBrickEventHandlerCallback[]\n > = new Map();\n private channels: Map<string, string> = new Map();\n\n create(\n brickAndMessages: BrickAndMessage[],\n context: PluginRuntimeContext\n ): void {\n if (Array.isArray(brickAndMessages)) {\n for (const { brick, match, message } of brickAndMessages) {\n ([] as MessageConf[]).concat(message).forEach((massageConf) => {\n const channel = massageConf.channel;\n const handler = { brick, match, message };\n if (this.messages.has(channel)) {\n this.messages.set(channel, [\n ...this.messages.get(channel),\n handler,\n ]);\n } else {\n this.messages.set(channel, [handler]);\n }\n });\n }\n }\n this.context = context;\n }\n\n reset(): void {\n this.messages = new Map();\n this.messageCallbackHandlers = new Map();\n }\n\n subscribe(\n channel: string,\n topic: PluginWebSocketMessageTopic,\n callback?: MessageBrickEventHandlerCallback\n ): void {\n const req = new WebsocketMessageRequest(\n PluginWebSocketMessageEvent.SUB,\n topic\n );\n this.setMessageCallbackHandlers(req.identity, callback);\n\n // Prevent repeated subscriptions to the same topic.\n if (!this.channels.has(req.topic)) {\n this.channels.set(req.topic, channel);\n this.send(req.data);\n }\n }\n\n unsubscribe(\n channel: string,\n topic: PluginWebSocketMessageTopic,\n callback: MessageBrickEventHandlerCallback\n ): void {\n const t = this.getTopicByChannel(channel);\n if (!t) {\n // eslint-disable-next-line no-console\n console.error(`Message channel:\"${channel}\" not found. `);\n return;\n }\n const req = new WebsocketMessageRequest(\n PluginWebSocketMessageEvent.UNSUB,\n JSON.parse(t)\n );\n\n this.setMessageCallbackHandlers(req.identity, callback);\n this.send(req.data);\n this.channels.delete(t);\n }\n\n private getTopicByChannel(channel: string): string | undefined {\n return [...this.channels.entries()]\n .filter(([, v]) => v === channel)\n .map(([v]) => v)[0];\n }\n\n private send(data: string): void {\n if (!(this.ws instanceof WebSocketService)) {\n this.createWebsocketService();\n }\n this.ws.send(data);\n }\n\n private createWebsocketService(): void {\n this.ws = createWebSocket();\n this.ws.onMessage = (message) => {\n this.reducer(message);\n };\n this.ws.onClose = (event: CloseEvent) => {\n this.onClose(event);\n };\n }\n\n onClose(event: CloseEvent): void {\n _internalApiMessageCloseHandler(event);\n }\n\n setMessageCallbackHandlers(\n identity: string,\n callback: MessageBrickEventHandlerCallback\n ): void {\n if (this.messageCallbackHandlers.get(identity)) {\n this.messageCallbackHandlers.set(identity, [\n ...this.messageCallbackHandlers.get(identity),\n ...[].concat(callback).filter(Boolean),\n ]);\n } else {\n this.messageCallbackHandlers.set(\n identity,\n [].concat(callback).filter(Boolean)\n );\n }\n }\n\n private reducer(response: WebsocketMessageResponse): void {\n const { event, message, topic } = response;\n switch (event) {\n case PluginWebSocketMessageEvent.MESSAGE_PUSH: {\n this.messagePushHandler(topic, message?.payload);\n break;\n }\n case PluginWebSocketMessageEvent.SUB_SUCCESS: {\n this.messageSubscribeResponseEventHandler(\n response,\n \"success\",\n PluginWebSocketMessageEvent.SUB_SUCCESS\n );\n break;\n }\n case PluginWebSocketMessageEvent.SUB_FAILED: {\n this.messageSubscribeResponseEventHandler(\n response,\n \"error\",\n PluginWebSocketMessageEvent.SUB_FAILED\n );\n break;\n }\n case PluginWebSocketMessageEvent.UNSUB_SUCCESS: {\n this.messageSubscribeResponseEventHandler(\n response,\n \"success\",\n PluginWebSocketMessageEvent.UNSUB_SUCCESS\n );\n break;\n }\n case PluginWebSocketMessageEvent.UNSUB_FAILED: {\n this.messageSubscribeResponseEventHandler(\n response,\n \"error\",\n PluginWebSocketMessageEvent.UNSUB_FAILED\n );\n break;\n }\n default: {\n // eslint-disable-next-line no-console\n console.error(\"Unknown message event:\", event);\n }\n }\n }\n\n private dispatch(\n event: CustomEvent,\n brick: RuntimeBrick,\n context: PluginRuntimeContext,\n handlers: BrickEventHandler[]\n ): void {\n for (const handler of handlers.filter(Boolean)) {\n listenerFactory(handler, context, brick)(event);\n }\n }\n\n private getMessageHandlersByTopic(\n topic: PluginWebSocketMessageTopic\n ): BrickAndMessage[] {\n const finder = [...this.channels.keys()].find((key) => {\n const t = JSON.parse(key);\n // Support glob expressions\n return t.system === topic.system && minimatch(topic.topic, t.topic);\n });\n\n return this.messages.get(this.channels.get(finder));\n }\n private messagePushHandler(\n topic: string,\n payload: PluginWebSocketMessageResponsePayload\n ): void {\n const handlers = this.getMessageHandlersByTopic(JSON.parse(topic));\n\n if (Array.isArray(handlers)) {\n for (const brickAndMessage of handlers) {\n const event = new CustomEvent(\n PluginWebSocketMessageEvent.MESSAGE_PUSH,\n {\n detail: payload?.message,\n }\n );\n\n this.dispatch(\n event,\n brickAndMessage.brick,\n this.context,\n ([] as MessageConf[])\n .concat(brickAndMessage.message)\n .reduce((prev, curr) => prev.concat(curr?.handlers), [])\n );\n }\n }\n }\n\n private messageSubscribeResponseEventHandler(\n response: WebsocketMessageResponse,\n method: \"success\" | \"error\",\n event: PluginWebSocketMessageEvent\n ): void {\n const callbacks = this.messageCallbackHandlers.get(response.identity);\n if (Array.isArray(callbacks)) {\n for (const handler of callbacks) {\n const e = new CustomEvent(event, {\n detail: response.message,\n });\n\n this.dispatch(\n e,\n handler.runtimeBrick,\n handler.context,\n [].concat(handler?.[method]).filter(Boolean)\n );\n }\n }\n }\n}\n","import { ProviderPollOptions } from \"@next-core/brick-types\";\nimport { _internalApiGetRouterRenderId } from \"../core/Runtime\";\n\nexport type PollableCallbackFunction = (result?: unknown) => unknown;\n\nexport interface PollableCallback {\n progress?: PollableCallbackFunction;\n success?: PollableCallbackFunction;\n error?: PollableCallbackFunction;\n finally?: PollableCallbackFunction;\n}\n\nconst timeoutIdList = new Set<number>();\n\nexport function startPoll(\n task: () => unknown,\n { progress, success, error, finally: finallyCallback }: PollableCallback,\n {\n interval,\n leadingRequestDelay,\n continueOnError,\n delegateLoadingBar,\n expectPollEnd,\n expectPollStopImmediately,\n }: ProviderPollOptions\n): void {\n const currentRenderId = _internalApiGetRouterRenderId();\n let currentTimeoutId: number;\n async function poll(): Promise<void> {\n timeoutIdList.delete(currentTimeoutId);\n let shouldStop: boolean;\n try {\n shouldStop = expectPollStopImmediately?.();\n // Stop polling immediately when the expectation is match before task.\n if (!shouldStop) {\n const result = await task();\n // Stop polling immediately when the expectation is match or a different router\n // is rendering after the task processed.\n shouldStop =\n expectPollStopImmediately?.() ||\n currentRenderId !== _internalApiGetRouterRenderId();\n if (!shouldStop) {\n progress?.(result);\n if (expectPollEnd?.(result)) {\n if (delegateLoadingBar) {\n window.dispatchEvent(new CustomEvent(\"request.end\"));\n }\n success?.(result);\n finallyCallback?.();\n } else {\n delayedPoll(interval ?? 3000);\n }\n }\n }\n } catch (e) {\n // Stop polling immediately when the expectation is match or a different router\n // is rendering after the task processed.\n shouldStop =\n expectPollStopImmediately?.() ||\n currentRenderId !== _internalApiGetRouterRenderId();\n if (!shouldStop) {\n error?.(e);\n if (continueOnError) {\n delayedPoll(interval ?? 3000);\n } else {\n finallyCallback?.();\n }\n }\n } finally {\n // Manually dispatch an event of `request.end` when the polling is stopped immediately.\n if (delegateLoadingBar && shouldStop) {\n window.dispatchEvent(new CustomEvent(\"request.end\"));\n }\n }\n }\n\n function delayedPoll(delay: number): void {\n currentTimeoutId = setTimeout(poll, delay) as unknown as number;\n timeoutIdList.add(currentTimeoutId);\n }\n\n delayedPoll(leadingRequestDelay ?? 0);\n\n if (delegateLoadingBar) {\n window.dispatchEvent(new CustomEvent(\"request.start\"));\n }\n}\n\nexport function clearPollTimeout(): void {\n for (const timeoutId of timeoutIdList) {\n clearTimeout(timeoutId);\n }\n timeoutIdList.clear();\n}\n","import { Mocks, MockRule } from \"@next-core/brick-types/src/manifest\";\n\nlet mocks: Mocks = {\n mockId: null,\n mockList: [],\n};\n\nexport function registerMock(useMocks: Mocks): void {\n if (useMocks)\n mocks = {\n ...useMocks,\n mockList: useMocks.mockList?.map((item) => ({\n ...item,\n uri: item.uri\n .replace(/(easyops\\.api\\.)(.+?)\\/(.+)/, (_match, p1, p2, p3) => {\n return `(${p1})?${p2}(@\\\\d+\\\\.\\\\d+\\\\.\\\\d+)?/${p3}$`;\n })\n .replace(/:\\w+/g, \"([^/]+)\"),\n })),\n };\n}\n\nexport function getMockList(): MockRule[] {\n return mocks.mockList;\n}\n\nexport const getMockInfo = (\n requestUrl: string\n):\n | {\n url: string;\n mockId: string;\n }\n | undefined => {\n const item = mocks.mockList.find((item) =>\n new RegExp(item.uri).test(requestUrl)\n );\n if (item) {\n return {\n url: requestUrl\n .replace(\n /(api\\/gateway\\/.+?)(@\\d+\\.\\d+\\.\\d+)?\\/(.+)/,\n (_match, p1, _p2, p3) => {\n return `${p1}/${p3}`;\n }\n )\n .replace(\n /(api\\/gateway)/,\n `api/gateway/mock_server.proxy.${mocks.mockId}`\n ),\n mockId: mocks.mockId,\n };\n }\n return;\n};\n","import { Contract } from \"@next-core/brick-types\";\n\nconst contractsMap: Map<string, Contract> = new Map();\n\nexport function collectContract(contracts: Contract[]): void {\n contracts?.forEach((contract) => {\n contractsMap.set(`${contract.namespaceId}.${contract.name}`, contract);\n });\n}\n\nexport function getContract(name: string): Contract {\n return contractsMap.get(name);\n}\n","import yaml from \"js-yaml\";\nimport { ContractApi_searchSingleContract } from \"@next-sdk/api-gateway-sdk\";\nimport { CustomApiDefinition, CustomApiProfile } from \"./interfaces\";\nimport { _internalApiGetMicroAppApiOrchestrationMap } from \"./Runtime\";\nimport { getMockList } from \"./MockRegistry\";\nimport { getContract } from \"./CollectContracts\";\nimport { InstanceApi_postSearchV3 } from \"@next-sdk/cmdb-sdk\";\n\nconst flowApiDefinitionPromiseMap = new Map<\n string,\n Promise<CustomApiDefinition>\n>();\n\n// Legacy Custom API: `${namespace}@${name}`\n// Flow API: `${namespace}@${name}:${version}`\nexport function isCustomApiProvider(provider: string): boolean {\n return provider.includes(\"@\");\n}\n\nexport async function getArgsOfCustomApi(\n provider: string,\n originalArgs: unknown[]\n): Promise<unknown[]> {\n if (!isCustomApiProvider(provider)) {\n return originalArgs;\n }\n\n const isFlowApi = provider.includes(\":\");\n\n const apiDefinition = isFlowApi\n ? await fetchFlowApiDefinition(provider)\n : (await _internalApiGetMicroAppApiOrchestrationMap()).get(provider);\n\n if (!apiDefinition) {\n throw new Error(\n `${isFlowApi ? \"Flow\" : \"Legacy Custom\"} API not found: \"${provider}\"`\n );\n }\n\n const apiProfile = getApiProfileFromApiDefinition(provider, apiDefinition);\n\n return getApiArgsFromApiProfile(apiProfile, originalArgs);\n}\n\nfunction getApiArgsFromApiProfile(\n {\n uri,\n method,\n ext_fields,\n name,\n namespace,\n serviceName,\n responseWrapper,\n version,\n isFileType,\n }: CustomApiProfile,\n originalArgs: unknown[]\n): unknown[] {\n let fileName: string;\n if (isFileType) {\n fileName = originalArgs.shift() as string;\n }\n\n const { url, args } = getTransformedUriAndRestArgs(\n uri,\n originalArgs,\n name,\n namespace,\n serviceName,\n version\n );\n\n return isFileType\n ? [\n fileName,\n {\n url,\n method,\n ext_fields,\n responseWrapper: false,\n },\n ...args,\n { responseType: \"blob\" },\n ]\n : [\n {\n url,\n method,\n ext_fields,\n responseWrapper,\n },\n ...args,\n ];\n}\n\nfunction getTransformedUriAndRestArgs(\n uri: string,\n originalArgs: unknown[],\n name: string,\n namespace: string,\n serviceName: string,\n version?: string\n): { url: string; args: unknown[] } {\n const prefix = version\n ? serviceName\n ? `api/gateway/${serviceName}`\n : `api/gateway/${namespace}.${name}@${version}`\n : `api/gateway/api_service.${namespace}.${name}`;\n const restArgs = originalArgs.slice();\n const transformedUri = uri.replace(\n /:([^/]+)/g,\n () => restArgs.shift() as string\n );\n return {\n url: prefix + transformedUri,\n args: restArgs,\n };\n}\n\nfunction getApiProfileFromApiDefinition(\n provider: string,\n api: CustomApiDefinition\n): CustomApiProfile {\n const contract: CustomApiDefinition[\"contract\"] =\n typeof api.contract === \"string\"\n ? (yaml.safeLoad(api.contract, {\n schema: yaml.JSON_SCHEMA,\n json: true,\n }) as CustomApiDefinition[\"contract\"])\n : api.contract;\n const { uri, method = \"GET\", ext_fields } = contract?.endpoint ?? {};\n const responseWrapper = contract?.response\n ? contract.response.wrapper !== false\n : false;\n if (!uri) {\n throw new Error(\n `Missing endpoint.uri in contract of provider \"${provider}\"`\n );\n }\n return {\n uri,\n method: method.toLowerCase() === \"list\" ? \"get\" : method,\n ext_fields,\n name: api.name,\n namespace: api.namespace,\n serviceName: api.serviceName,\n version: api.version,\n isFileType: contract?.response?.type === \"file\",\n responseWrapper,\n };\n}\n\nfunction fetchFlowApiDefinition(\n provider: string\n): Promise<CustomApiDefinition> {\n let promise = flowApiDefinitionPromiseMap.get(provider);\n if (!promise) {\n promise = _fetchFlowApiDefinition(provider);\n flowApiDefinitionPromiseMap.set(provider, promise);\n }\n return promise;\n}\n\nasync function _fetchFlowApiDefinition(\n provider: string\n): Promise<CustomApiDefinition> {\n const [namespaceName, nameWithVersion] = provider.split(\"@\");\n const [name, version] = nameWithVersion.split(\":\");\n\n const isUseMock = getMockList().find(\n (item) => item.provider === `${namespaceName}@${name}`\n );\n\n if (isUseMock) {\n const { list } = await InstanceApi_postSearchV3(\n \"FLOW_BUILDER_API_CONTRACT@EASYOPS\",\n {\n fields: [\n \"name\",\n \"namespaceId\",\n \"endpoint\",\n \"response\",\n \"version\",\n \"serviceName\",\n ],\n query: {\n namespaceId: {\n $eq: namespaceName,\n },\n name: {\n $eq: name,\n },\n },\n }\n );\n if (list[0]?.instanceId) {\n return {\n name: list[0].name,\n namespace: list[0]?.namespaceId,\n serviceName: list[0]?.serviceName,\n version: list[0].version,\n contract: {\n endpoint: list[0].endpoint,\n response: list[0].response,\n },\n };\n }\n } else {\n let contract;\n if ((contract = getContract(`${namespaceName}.${name}`))) {\n return {\n name: contract.name,\n namespace: contract.namespaceId,\n serviceName: contract.serviceName,\n version: contract.version,\n contract: {\n endpoint: contract.endpoint,\n response: contract.response,\n },\n };\n } else {\n const { contractData } = await ContractApi_searchSingleContract({\n contractName: `${namespaceName}.${name}`,\n version,\n });\n\n // return undefined if don't found contract\n if (contractData) {\n return {\n name: contractData.name,\n namespace: contractData.namespace?.[0]?.name,\n serviceName: contractData.serviceName,\n version: contractData.version,\n contract: {\n endpoint: contractData.endpoint,\n response: contractData.response,\n },\n };\n }\n }\n }\n}\n","import { message } from \"antd\";\nimport { userAnalytics } from \"@next-core/easyops-analytics\";\nimport {\n BrickEventHandler,\n BrickEventHandlerCallback,\n BrickEventsMap,\n BuiltinBrickEventHandler,\n CustomBrickEventHandler,\n PluginRuntimeContext,\n ExecuteCustomBrickEventHandler,\n SetPropsCustomBrickEventHandler,\n RuntimeBrickElement,\n UseProviderEventHandler,\n ProviderPollOptions,\n SiteTheme,\n} from \"@next-core/brick-types\";\nimport { handleHttpError, httpErrorToString } from \"../handleHttpError\";\nimport { computeRealValue, setProperties } from \"./setProperties\";\nimport { getHistory } from \"../history\";\nimport {\n _internalApiGetCurrentContext,\n _internalApiGetProviderBrick,\n RuntimeBrick,\n _internalApiGetStoryboardContextWrapper,\n} from \"../core/exports\";\nimport { getUrlBySegueFactory } from \"./segue\";\nimport { looseCheckIf, IfContainer } from \"../checkIf\";\nimport { getUrlByAliasFactory } from \"./alias\";\nimport { getMessageDispatcher } from \"../core/MessageDispatcher\";\nimport { PluginWebSocketMessageTopic } from \"../websocket/interfaces\";\nimport { applyTheme, applyMode } from \"../themeAndMode\";\nimport { clearMenuTitleCache, clearMenuCache } from \"./menu\";\nimport { PollableCallback, PollableCallbackFunction, startPoll } from \"./poll\";\nimport { getArgsOfCustomApi } from \"../core/FlowApi\";\nimport { getRuntime } from \"../runtime\";\nimport {\n CustomTemplateContext,\n getCustomTemplateContext,\n} from \"../core/CustomTemplates/CustomTemplateContext\";\n\nexport function bindListeners(\n brick: HTMLElement,\n eventsMap: BrickEventsMap,\n context: PluginRuntimeContext\n): void {\n Object.entries(eventsMap).forEach(([eventType, handlers]) => {\n [].concat(handlers).forEach((handler: BrickEventHandler) => {\n const listener = listenerFactory(handler, context, { element: brick });\n brick.addEventListener(eventType, listener);\n rememberListeners(brick, eventType, listener, handler);\n });\n });\n}\n\nexport function unbindListeners(brick: HTMLElement): void {\n if ((brick as RuntimeBrickElement).$$eventListeners) {\n for (const [eventType, listener] of (brick as RuntimeBrickElement)\n .$$eventListeners) {\n brick.removeEventListener(eventType, listener);\n }\n (brick as RuntimeBrickElement).$$eventListeners = [];\n }\n}\n\nfunction rememberListeners(\n brick: RuntimeBrickElement,\n eventType: string,\n listener: EventListener,\n handler: BrickEventHandler\n): void {\n if (!brick.$$eventListeners) {\n brick.$$eventListeners = [];\n }\n brick.$$eventListeners.push([eventType, listener, handler]);\n}\n\nexport function isBuiltinHandler(\n handler: BrickEventHandler\n): handler is BuiltinBrickEventHandler {\n return typeof (handler as BuiltinBrickEventHandler).action === \"string\";\n}\n\nexport function isUseProviderHandler(\n handler: BrickEventHandler\n): handler is UseProviderEventHandler {\n return typeof (handler as UseProviderEventHandler).useProvider === \"string\";\n}\n\nexport function isCustomHandler(\n handler: BrickEventHandler\n): handler is CustomBrickEventHandler {\n return !!(\n ((handler as CustomBrickEventHandler).target ||\n (handler as CustomBrickEventHandler).targetRef) &&\n ((handler as ExecuteCustomBrickEventHandler).method ||\n (handler as SetPropsCustomBrickEventHandler).properties)\n );\n}\n\nexport function isExecuteCustomHandler(\n handler: CustomBrickEventHandler\n): handler is ExecuteCustomBrickEventHandler {\n return !!(handler as ExecuteCustomBrickEventHandler).method;\n}\n\nexport function isSetPropsCustomHandler(\n handler: CustomBrickEventHandler\n): handler is SetPropsCustomBrickEventHandler {\n return !!(handler as SetPropsCustomBrickEventHandler).properties;\n}\n\nexport function listenerFactory(\n handler: BrickEventHandler,\n context: PluginRuntimeContext,\n runtimeBrick: RuntimeBrick\n): EventListener {\n if (isBuiltinHandler(handler)) {\n const method = handler.action.split(\".\")[1] as any;\n switch (handler.action) {\n case \"history.push\":\n case \"history.replace\":\n case \"history.pushQuery\":\n case \"history.replaceQuery\":\n case \"history.pushAnchor\":\n case \"history.block\":\n return builtinHistoryListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"history.goBack\":\n case \"history.goForward\":\n case \"history.reload\":\n case \"history.unblock\":\n return builtinHistoryWithoutArgsListenerFactory(\n method,\n handler,\n context\n );\n case \"segue.push\":\n case \"segue.replace\":\n return builtinSegueListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"alias.push\":\n case \"alias.replace\":\n return builtinAliasListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"legacy.go\":\n return builtinIframeListenerFactory(handler.args, handler, context);\n case \"window.open\":\n return builtinWindowListenerFactory(handler.args, handler, context);\n case \"location.reload\":\n case \"location.assign\":\n return builtinLocationListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"localStorage.setItem\":\n case \"localStorage.removeItem\":\n return builtinWebStorageListenerFactory(\n \"local\",\n method,\n handler.args,\n handler,\n context\n );\n case \"sessionStorage.setItem\":\n case \"sessionStorage.removeItem\":\n return builtinWebStorageListenerFactory(\n \"session\",\n method,\n handler.args,\n handler,\n context\n );\n case \"event.preventDefault\":\n return ((event: CustomEvent) => {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n event.preventDefault();\n }) as EventListener;\n case \"console.log\":\n case \"console.error\":\n case \"console.warn\":\n case \"console.info\":\n return builtinConsoleListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"message.success\":\n case \"message.error\":\n case \"message.info\":\n case \"message.warn\":\n return builtinMessageListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"handleHttpError\":\n return ((event: CustomEvent) => {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n handleHttpError(event.detail);\n }) as EventListener;\n case \"context.assign\":\n case \"context.replace\":\n return builtinContextListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"state.update\":\n return builtinStateListenerFactory(handler.args, handler, context);\n case \"tpl.dispatchEvent\":\n return builtinTplDispatchEventFactory(handler.args, handler, context);\n case \"message.subscribe\":\n case \"message.unsubscribe\":\n return builtinWebSocketListenerFactory(\n runtimeBrick,\n method,\n handler.args,\n handler,\n handler.callback,\n context\n );\n case \"theme.setDarkTheme\":\n case \"theme.setLightTheme\":\n return ((event: CustomEvent) => {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n applyTheme(\n handler.action === \"theme.setDarkTheme\" ? \"dark\" : \"light\"\n );\n }) as EventListener;\n case \"theme.setTheme\":\n return builtinThemeListenerFactory(handler.args, handler, context);\n case \"mode.setDashboardMode\":\n case \"mode.setDefaultMode\":\n return ((event: CustomEvent) => {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n applyMode(\n handler.action === \"mode.setDashboardMode\" ? \"dashboard\" : \"default\"\n );\n }) as EventListener;\n case \"menu.clearMenuTitleCache\":\n return ((event: CustomEvent) => {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n clearMenuTitleCache();\n }) as EventListener;\n case \"menu.clearMenuCache\":\n return ((event: CustomEvent) => {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n clearMenuCache();\n }) as EventListener;\n case \"analytics.event\":\n return builtinAnalyticsListenerFactory(handler.args, handler, context);\n default:\n return () => {\n // eslint-disable-next-line no-console\n console.error(\"unknown event listener action:\", handler.action);\n };\n }\n }\n\n if (isUseProviderHandler(handler)) {\n return usingProviderFactory(handler, context, runtimeBrick);\n }\n\n if (isCustomHandler(handler)) {\n return customListenerFactory(handler, handler, context, runtimeBrick);\n }\n}\n\nfunction usingProviderFactory(\n handler: UseProviderEventHandler,\n context: PluginRuntimeContext,\n runtimeBrick: RuntimeBrick\n): EventListener {\n return async function (event: CustomEvent): Promise<void> {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n try {\n const providerBrick = await _internalApiGetProviderBrick(\n handler.useProvider\n );\n const method = handler.method !== \"saveAs\" ? \"resolve\" : \"saveAs\";\n brickCallback(\n providerBrick,\n handler,\n method,\n context,\n runtimeBrick,\n event\n );\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(httpErrorToString(error));\n }\n } as unknown as EventListener;\n}\n\nfunction getTplContext(tplContextId: string): CustomTemplateContext {\n // istanbul ignore if\n if (!tplContextId) {\n throw new Error(\"Calling tpl but no tplContextId was found in context!\");\n }\n return getCustomTemplateContext(tplContextId);\n}\n\nfunction builtinTplDispatchEventFactory(\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const tpl = getTplContext(context.tplContextId).getBrick().element;\n const [type, init] = argsFactory(args, context, event) as [\n string,\n CustomEventInit\n ];\n tpl.dispatchEvent(new CustomEvent(type, init));\n } as EventListener;\n}\n\nfunction builtinContextListenerFactory(\n method: \"assign\" | \"replace\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const storyboardContext = _internalApiGetStoryboardContextWrapper();\n const [name, value] = argsFactory(args, context, event);\n storyboardContext.updateValue(name as string, value, method);\n } as EventListener;\n}\n\nfunction builtinStateListenerFactory(\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const tplContext = getTplContext(context.tplContextId);\n const [name, value] = argsFactory(args, context, event);\n tplContext.state.updateValue(name as string, value, \"replace\");\n } as EventListener;\n}\n\nfunction builtinLocationListenerFactory(\n method: \"assign\" | \"reload\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n if (method === \"assign\") {\n const [url] = argsFactory(args, context, event) as [string];\n location.assign(url);\n } else {\n location[method]();\n }\n } as EventListener;\n}\n\nfunction builtinSegueListenerFactory(\n method: \"push\" | \"replace\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const { app, segues } = _internalApiGetCurrentContext();\n getHistory()[method](\n getUrlBySegueFactory(\n app,\n segues\n )(\n ...(argsFactory(args, context, event) as Parameters<\n ReturnType<typeof getUrlBySegueFactory>\n >)\n )\n );\n } as EventListener;\n}\n\nfunction builtinAliasListenerFactory(\n method: \"push\" | \"replace\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const { app } = _internalApiGetCurrentContext();\n getHistory()[method](\n getUrlByAliasFactory(app)(\n ...(argsFactory(args, context, event) as Parameters<\n ReturnType<typeof getUrlByAliasFactory>\n >)\n )\n );\n } as EventListener;\n}\n\nfunction builtinWebSocketListenerFactory(\n runtimeBrick: RuntimeBrick,\n method: \"subscribe\" | \"unsubscribe\",\n args: any[],\n ifContainer: IfContainer,\n callback: BrickEventHandlerCallback,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n\n const [channel, messageTopic] = argsFactory(args, context, event) as [\n string,\n PluginWebSocketMessageTopic\n ];\n\n const { system, topic } = messageTopic || {};\n getMessageDispatcher()[method](\n channel,\n { system, topic },\n { ...callback, runtimeBrick, context }\n );\n } as EventListener;\n}\n\nfunction builtinIframeListenerFactory(\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n const legacyIframeMountPoint = document.querySelector(\n \"#legacy-iframe-mount-point\"\n );\n\n const postMessage = (url: string): void => {\n const iframe = legacyIframeMountPoint.firstChild as HTMLIFrameElement;\n if (\n iframe &&\n iframe.contentWindow &&\n (iframe.contentWindow as any).angular\n ) {\n iframe.contentWindow.postMessage(\n {\n type: \"location.url\",\n url,\n },\n location.origin\n );\n }\n };\n\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const [url] = argsFactory(args, context, event) as [string];\n postMessage(url);\n } as EventListener;\n}\n\nfunction builtinWindowListenerFactory(\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const [url, target, features] = argsFactory(args, context, event) as [\n string,\n string,\n string\n ];\n window.open(url, target || \"_self\", features);\n } as EventListener;\n}\n\nfunction builtinAnalyticsListenerFactory(\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const [action, data] = argsFactory(args, context, event) as [\n string,\n Record<string, unknown>\n ];\n const runtime = getRuntime();\n userAnalytics.event(action, {\n micro_app_id: runtime.getCurrentApp()?.id,\n route_alias: runtime.getCurrentRoute()?.alias,\n ...data,\n });\n } as EventListener;\n}\n\nfunction builtinThemeListenerFactory(\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const [theme] = argsFactory(args, context, event);\n applyTheme(theme as SiteTheme);\n } as EventListener;\n}\n\nfunction customListenerFactory(\n handler: CustomBrickEventHandler,\n ifContainer: IfContainer,\n context: PluginRuntimeContext,\n runtimeBrick: RuntimeBrick\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n let targets: HTMLElement[] = [];\n if (typeof handler.target === \"string\") {\n if (handler.target === \"_self\") {\n targets.push(runtimeBrick.element);\n } else if (handler.multiple) {\n targets = Array.from(document.querySelectorAll(handler.target));\n } else {\n const found = document.querySelector(handler.target) as HTMLElement;\n if (found !== null) {\n targets.push(found);\n }\n }\n } else if (handler.target) {\n targets.push(handler.target as HTMLElement);\n } else if (handler.targetRef) {\n const tpl: RuntimeBrickElement = getTplContext(\n context.tplContextId\n ).getBrick().element;\n targets.push(\n ...[]\n .concat(handler.targetRef)\n .map((ref) => tpl.$$getElementByRef?.(ref))\n .filter(Boolean)\n );\n }\n if (targets.length === 0) {\n // eslint-disable-next-line no-console\n console.error(\"target not found:\", handler.target || handler.targetRef);\n return;\n }\n if (isExecuteCustomHandler(handler)) {\n targets.forEach((target) => {\n brickCallback(\n target,\n handler,\n handler.method,\n context,\n runtimeBrick,\n event,\n {\n useEventAsDefault: true,\n }\n );\n });\n } else if (isSetPropsCustomHandler(handler)) {\n setProperties(\n targets,\n handler.properties,\n {\n ...context,\n event,\n },\n handler.injectDeep !== false\n );\n }\n } as EventListener;\n}\n\nasync function brickCallback(\n target: HTMLElement,\n handler: ExecuteCustomBrickEventHandler | UseProviderEventHandler,\n method: string,\n context: PluginRuntimeContext,\n runtimeBrick: RuntimeBrick,\n event: CustomEvent,\n options?: ArgsFactoryOptions\n): Promise<void> {\n if (typeof (target as any)[method] !== \"function\") {\n // eslint-disable-next-line no-console\n console.error(\"target has no method:\", {\n target,\n method: method,\n });\n return;\n }\n\n const task = async (): Promise<unknown> => {\n let computedArgs = argsFactory(handler.args, context, event, options);\n if (isUseProviderHandler(handler)) {\n computedArgs = await getArgsOfCustomApi(\n handler.useProvider,\n computedArgs\n );\n }\n return (target as any)[method](...computedArgs);\n };\n\n const {\n success,\n error,\n finally: finallyHook,\n progress,\n } = handler.callback ?? {};\n\n if (!(success || error || finallyHook || progress)) {\n task();\n return;\n }\n\n const callbackFactory =\n (\n eventType: string,\n specificHandler: BrickEventHandler | BrickEventHandler[]\n ): PollableCallbackFunction =>\n (result: unknown) => {\n if (specificHandler) {\n try {\n const event = new CustomEvent(eventType, {\n detail: result,\n });\n [].concat(specificHandler).forEach((eachHandler) => {\n listenerFactory(eachHandler, context, runtimeBrick)(event);\n });\n } catch (err) {\n // Do not throw errors in `callback.success` or `callback.progress`,\n // to avoid the following triggering of `callback.error`.\n // eslint-disable-next-line\n console.error(err);\n }\n } else if (eventType === \"callback.error\") {\n // eslint-disable-next-line\n console.error(\"Unhandled callback error:\", result);\n }\n };\n\n const pollableCallback: Required<PollableCallback> = {\n progress: callbackFactory(\"callback.progress\", progress),\n success: callbackFactory(\"callback.success\", success),\n error: callbackFactory(\"callback.error\", error),\n finally: callbackFactory(\"callback.finally\", finallyHook),\n };\n\n let poll: ProviderPollOptions;\n if (isUseProviderHandler(handler)) {\n poll = computeRealValue(handler.poll, { ...context, event }, true);\n }\n\n if (poll?.enabled) {\n startPoll(task, pollableCallback, poll);\n } else {\n try {\n // Try to catch synchronized tasks too.\n const result = await task();\n pollableCallback.success(result);\n } catch (err) {\n pollableCallback.error(err);\n } finally {\n pollableCallback[\"finally\"]();\n }\n }\n}\n\nfunction builtinHistoryListenerFactory(\n method:\n | \"push\"\n | \"replace\"\n | \"pushQuery\"\n | \"replaceQuery\"\n | \"pushAnchor\"\n | \"block\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n (\n getHistory()[method === \"block\" ? \"setBlockMessage\" : method] as (\n ...args: unknown[]\n ) => unknown\n )(\n ...argsFactory(args, context, event, {\n useEventDetailAsDefault: true,\n })\n );\n } as EventListener;\n}\n\nfunction builtinHistoryWithoutArgsListenerFactory(\n method: \"goBack\" | \"goForward\" | \"reload\" | \"unblock\",\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n getHistory()[method]();\n } as EventListener;\n}\n\nfunction builtinConsoleListenerFactory(\n method: \"log\" | \"error\" | \"warn\" | \"info\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n // eslint-disable-next-line no-console\n console[method](\n ...argsFactory(args, context, event, {\n useEventAsDefault: true,\n })\n );\n } as EventListener;\n}\n\nfunction builtinMessageListenerFactory(\n method: \"success\" | \"error\" | \"info\" | \"warn\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent) {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n message[method](\n ...(argsFactory(args, context, event) as Parameters<\n typeof message[\"success\"]\n >)\n );\n } as EventListener;\n}\n\nfunction builtinWebStorageListenerFactory(\n storageType: \"local\" | \"session\",\n method: \"setItem\" | \"removeItem\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent) {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const storage = storageType === \"local\" ? localStorage : sessionStorage;\n const [name, value] = argsFactory(args, context, event);\n if (method === \"setItem\") {\n if (value !== undefined) {\n storage.setItem(name as string, JSON.stringify(value));\n }\n } else if (method === \"removeItem\") {\n storage.removeItem(name as string);\n }\n } as EventListener;\n}\n\ninterface ArgsFactoryOptions {\n useEventAsDefault?: boolean;\n useEventDetailAsDefault?: boolean;\n}\n\nfunction argsFactory(\n args: unknown[],\n context: PluginRuntimeContext,\n event: CustomEvent,\n options: ArgsFactoryOptions = {}\n): unknown[] {\n return Array.isArray(args)\n ? (computeRealValue(\n args,\n {\n ...context,\n event,\n },\n true\n ) as unknown[])\n : options.useEventAsDefault\n ? [event]\n : options.useEventDetailAsDefault\n ? [event.detail]\n : [];\n}\n","import {\n PluginRuntimeContext,\n BrickLifeCycle,\n RefForProxy,\n} from \"@next-core/brick-types\";\nimport { bindListeners } from \"../internal/bindListeners\";\nimport { setRealProperties } from \"../internal/setProperties\";\nimport { RuntimeCustomTemplateProxy } from \"./CustomTemplates/internalInterfaces\";\nimport { handleProxyOfCustomTemplate } from \"./exports\";\n\nexport interface RuntimeBrick {\n type?: string;\n properties?: Record<string, any>;\n template?: string;\n params?: Record<string, any>;\n events?: Record<string, any>;\n children?: RuntimeBrick[];\n slotId?: string;\n context?: PluginRuntimeContext;\n lifeCycle?: BrickLifeCycle;\n element?: HTMLElement;\n bg?: boolean;\n proxy?: RuntimeCustomTemplateProxy;\n proxyRefs?: Map<string, RefForProxy>;\n stateNames?: string[];\n refForProxy?: {\n brick?: RuntimeBrick;\n };\n tplContextId?: string;\n isExternalOfTpl?: boolean;\n isParent?: boolean;\n ref?: string;\n iid?: string;\n}\n\nexport class BrickNode {\n $$brick: RuntimeBrick;\n\n private children: BrickNode[] = [];\n\n constructor(brick: RuntimeBrick) {\n this.$$brick = brick;\n }\n\n mount(): HTMLElement {\n const brick = this.$$brick;\n const tagName = brick.type;\n\n if (tagName.includes(\"-\") && !customElements.get(tagName)) {\n // eslint-disable-next-line no-console\n console.error(`Undefined custom element: ${tagName}`);\n }\n\n // istanbul ignore if\n if (tagName === \"basic-bricks.script-brick\") {\n // eslint-disable-next-line no-console\n console.warn(\n \"`basic-bricks.script-brick` is deprecated, please take caution when using it\"\n );\n }\n\n const node = document.createElement(tagName);\n brick.element = node;\n\n if (brick.slotId) {\n node.setAttribute(\"slot\", brick.slotId);\n }\n if (brick.iid) {\n node.dataset.iid = brick.iid;\n }\n setRealProperties(node, brick.properties);\n bindListeners(node, brick.events, brick.context);\n\n if (Array.isArray(brick.children)) {\n this.children = brick.children.map((child) => new BrickNode(child));\n const childNodes = this.children.map((child) => child.mount());\n childNodes.forEach((child) => node.appendChild(child));\n } else {\n this.children = [];\n }\n\n return node;\n }\n\n unmount(): void {\n this.children.forEach((child) => {\n child.unmount();\n });\n }\n\n // Handle proxies later after bricks in portal and main both mounted.\n afterMount(): void {\n handleProxyOfCustomTemplate(this.$$brick);\n this.children.forEach((child) => {\n child.afterMount();\n });\n }\n}\n","import { http } from '@next-core/brick-http';\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nvar login = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (yield http.post(\"api/auth/login\", data, options)).data;\n });\n\n return function login(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\nvar logout = options => http.post(\"api/auth/logout\", options);\nvar checkLogin = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator(function* (options) {\n return (yield http.get(\"api/auth/login\", options)).data;\n });\n\n return function checkLogin(_x3) {\n return _ref2.apply(this, arguments);\n };\n}();\nvar bootstrap = /*#__PURE__*/function () {\n var _ref3 = _asyncToGenerator(function* (params, options) {\n return (yield http.get(\"api/auth/bootstrap\", _objectSpread2(_objectSpread2({}, options), {}, {\n params\n }))).data;\n });\n\n return function bootstrap(_x4, _x5) {\n return _ref3.apply(this, arguments);\n };\n}();\nvar getAppStoryboard = /*#__PURE__*/function () {\n var _ref4 = _asyncToGenerator(function* (appId, params, options) {\n return (yield http.get(\"api/auth/bootstrap/\".concat(appId), _objectSpread2(_objectSpread2({}, options), {}, {\n params\n }))).data;\n });\n\n return function getAppStoryboard(_x6, _x7, _x8) {\n return _ref4.apply(this, arguments);\n };\n}();\n\nexport { bootstrap, checkLogin, getAppStoryboard, login, logout };\n//# sourceMappingURL=index.esm.js.map\n","import { merge } from \"lodash\";\nimport i18next from \"i18next\";\nimport { BootstrapData } from \"@next-core/brick-types\";\nimport { deepFreeze } from \"@next-core/brick-utils\";\n\n/**\n * Merge `app.defaultConfig` and `app.userConfig` to `app.config`.\n *\n * @param bootstrapResponse - Response of bootstrap API.\n */\nexport function processBootstrapResponse(\n bootstrapResponse: BootstrapData\n): void {\n for (const storyboard of bootstrapResponse.storyboards) {\n const app = storyboard.app;\n if (app) {\n app.config = deepFreeze(merge({}, app.defaultConfig, app.userConfig));\n\n if (app.locales) {\n // Prefix to avoid conflict between brick package's i18n namespace.\n const ns = `$tmp-${app.id}`;\n // Support any languages in `app.locales`.\n Object.entries(app.locales).forEach(([lang, resources]) => {\n i18next.addResourceBundle(lang, ns, resources);\n });\n // Use `app.name` as the fallback `app.localeName`.\n app.localeName = i18next.getFixedT(null, ns)(\"name\", app.name);\n // Remove the temporary i18n resource bundles.\n Object.keys(app.locales).forEach((lang) => {\n i18next.removeResourceBundle(lang, ns);\n });\n } else {\n app.localeName = app.name;\n }\n }\n }\n\n if (bootstrapResponse.settings) {\n bootstrapResponse.settings = deepFreeze(bootstrapResponse.settings);\n }\n\n bootstrapResponse.brickPackages = deepFreeze(bootstrapResponse.brickPackages);\n bootstrapResponse.templatePackages = deepFreeze(\n bootstrapResponse.templatePackages\n );\n}\n","import { createProviderClass } from \"@next-core/brick-utils\";\nimport { ExtField } from \"@next-core/brick-types\";\nimport { http, HttpOptions } from \"@next-core/brick-http\";\n\nexport const CUSTOM_API_PROVIDER = \"brick-kit.provider-custom-api\";\n\nexport interface CustomApiParams {\n url: string;\n method?: string;\n responseWrapper?: boolean;\n ext_fields?: ExtField[];\n}\n\nexport function processExtFields(\n ext_fields: ExtField[],\n ...args: unknown[]\n): { data: unknown; options: HttpOptions } {\n const hasFields = (type: \"query\" | \"body\"): boolean => {\n return ext_fields.some((item) => item.source === type);\n };\n\n const hasQueryParams = hasFields(\"query\");\n const HasBodyParams = hasFields(\"body\");\n\n if (hasQueryParams && HasBodyParams) {\n const [data, params, options] = args;\n return {\n data: data,\n options: {\n params: params,\n ...(options as HttpOptions),\n },\n };\n }\n\n if (hasQueryParams) {\n const [params, options] = args;\n return {\n data: {} as any,\n options: {\n params: params,\n ...(options as HttpOptions),\n },\n };\n }\n\n // only hasBodyParams or default\n const [data, options] = args;\n return {\n data,\n options,\n };\n}\n\nexport async function CustomApi(\n {\n url,\n method = \"GET\",\n responseWrapper = true,\n ext_fields = [],\n }: CustomApiParams,\n ...args: unknown[]\n): Promise<unknown> {\n const isSimpleRequest = [\"get\", \"delete\", \"head\"].includes(\n method.toLowerCase()\n );\n\n if (isSimpleRequest) {\n const [data, options] = args;\n const response = await http.simpleRequest(method, url, {\n params: data,\n ...(options as HttpOptions),\n });\n return responseWrapper ? response.data : response;\n } else {\n const result = processExtFields(ext_fields, ...args);\n const response = await http.requestWithBody(\n method,\n url,\n result.data,\n result.options\n );\n return responseWrapper ? response.data : response;\n }\n}\n\nexport function registerCustomApi(): void {\n customElements.define(CUSTOM_API_PROVIDER, createProviderClass(CustomApi));\n}\n","import { userAnalytics } from \"@next-core/easyops-analytics\";\nimport { getAuth } from \"../auth\";\nimport { getRuntime } from \"../runtime\";\n\n/** @internal */\nexport function initAnalytics(): void {\n const misc = getRuntime().getMiscSettings();\n const { gaMeasurementId, analyticsDebugMode } = misc as {\n gaMeasurementId?: string;\n analyticsDebugMode?: boolean;\n };\n\n if (gaMeasurementId) {\n userAnalytics.init({\n gaMeasurementId,\n sendPageView: false,\n userId: getAuth().userInstanceId,\n debugMode: analyticsDebugMode,\n });\n }\n}\n","import yaml from \"js-yaml\";\nimport { http } from \"@next-core/brick-http\";\nimport { BootstrapData, Settings } from \"@next-core/brick-types\";\nimport { hasOwnProperty } from \"@next-core/brick-utils\";\n\ninterface StandaloneConf {\n /** The same as `auth.bootstrap.sys_settings` in api gateway conf. */\n sys_settings: StandaloneSettings;\n\n /** For fully standalone micro-apps. */\n user_config?: Record<string, unknown>;\n\n /** For mixed standalone micro-apps. */\n user_config_by_apps?: UserConfigByApps;\n}\n\ntype UserConfigByApps = Record<string, Record<string, unknown>>;\n\ninterface StandaloneSettings extends Omit<Settings, \"featureFlags\"> {\n feature_flags: Record<string, boolean>;\n}\n\nexport async function standaloneBootstrap(): Promise<BootstrapData> {\n const [bootstrapResult, confString] = await Promise.all([\n http.get<BootstrapData>(window.BOOTSTRAP_FILE),\n http.get<string>(`${window.APP_ROOT}conf.yaml`, {\n responseType: \"text\",\n }),\n ]);\n let conf: StandaloneConf;\n try {\n conf = confString\n ? (yaml.safeLoad(confString, {\n schema: yaml.JSON_SCHEMA,\n json: true,\n }) as StandaloneConf)\n : undefined;\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Parse conf.yaml failed\", error);\n throw new Error(\"Invalid conf.yaml\");\n }\n let settings: Settings;\n if (conf) {\n const { sys_settings, user_config, user_config_by_apps } = conf;\n if (sys_settings) {\n const { feature_flags: featureFlags, ...rest } = sys_settings;\n settings = {\n featureFlags,\n ...rest,\n } as Settings;\n }\n if (user_config && bootstrapResult.storyboards.length === 1) {\n bootstrapResult.storyboards[0].app.userConfig = user_config;\n } else if (user_config_by_apps) {\n for (const { app } of bootstrapResult.storyboards) {\n if (hasOwnProperty(user_config_by_apps, app.id)) {\n app.userConfig = user_config_by_apps[app.id];\n }\n }\n }\n }\n return {\n ...bootstrapResult,\n settings,\n };\n}\n","/**\n * Take input from [0, n] and return it as [0, 1]\n * @hidden\n */\nexport function bound01(n, max) {\n if (isOnePointZero(n)) {\n n = '100%';\n }\n var isPercent = isPercentage(n);\n n = max === 360 ? n : Math.min(max, Math.max(0, parseFloat(n)));\n // Automatically convert percentage into number\n if (isPercent) {\n n = parseInt(String(n * max), 10) / 100;\n }\n // Handle floating point rounding errors\n if (Math.abs(n - max) < 0.000001) {\n return 1;\n }\n // Convert into [0, 1] range if it isn't already\n if (max === 360) {\n // If n is a hue given in degrees,\n // wrap around out-of-range values into [0, 360] range\n // then convert into [0, 1].\n n = (n < 0 ? (n % max) + max : n % max) / parseFloat(String(max));\n }\n else {\n // If n not a hue given in degrees\n // Convert into [0, 1] range if it isn't already.\n n = (n % max) / parseFloat(String(max));\n }\n return n;\n}\n/**\n * Force a number between 0 and 1\n * @hidden\n */\nexport function clamp01(val) {\n return Math.min(1, Math.max(0, val));\n}\n/**\n * Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1\n * <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>\n * @hidden\n */\nexport function isOnePointZero(n) {\n return typeof n === 'string' && n.indexOf('.') !== -1 && parseFloat(n) === 1;\n}\n/**\n * Check to see if string passed in is a percentage\n * @hidden\n */\nexport function isPercentage(n) {\n return typeof n === 'string' && n.indexOf('%') !== -1;\n}\n/**\n * Return a valid alpha value [0,1] with all invalid values being set to 1\n * @hidden\n */\nexport function boundAlpha(a) {\n a = parseFloat(a);\n if (isNaN(a) || a < 0 || a > 1) {\n a = 1;\n }\n return a;\n}\n/**\n * Replace a decimal with it's percentage value\n * @hidden\n */\nexport function convertToPercentage(n) {\n if (n <= 1) {\n return Number(n) * 100 + \"%\";\n }\n return n;\n}\n/**\n * Force a hex value to have 2 characters\n * @hidden\n */\nexport function pad2(c) {\n return c.length === 1 ? '0' + c : String(c);\n}\n","import { bound01, pad2 } from './util';\n// `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:\n// <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>\n/**\n * Handle bounds / percentage checking to conform to CSS color spec\n * <http://www.w3.org/TR/css3-color/>\n * *Assumes:* r, g, b in [0, 255] or [0, 1]\n * *Returns:* { r, g, b } in [0, 255]\n */\nexport function rgbToRgb(r, g, b) {\n return {\n r: bound01(r, 255) * 255,\n g: bound01(g, 255) * 255,\n b: bound01(b, 255) * 255,\n };\n}\n/**\n * Converts an RGB color value to HSL.\n * *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]\n * *Returns:* { h, s, l } in [0,1]\n */\nexport function rgbToHsl(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h = 0;\n var s = 0;\n var l = (max + min) / 2;\n if (max === min) {\n s = 0;\n h = 0; // achromatic\n }\n else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n break;\n }\n h /= 6;\n }\n return { h: h, s: s, l: l };\n}\nfunction hue2rgb(p, q, t) {\n if (t < 0) {\n t += 1;\n }\n if (t > 1) {\n t -= 1;\n }\n if (t < 1 / 6) {\n return p + (q - p) * (6 * t);\n }\n if (t < 1 / 2) {\n return q;\n }\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6;\n }\n return p;\n}\n/**\n * Converts an HSL color value to RGB.\n *\n * *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]\n * *Returns:* { r, g, b } in the set [0, 255]\n */\nexport function hslToRgb(h, s, l) {\n var r;\n var g;\n var b;\n h = bound01(h, 360);\n s = bound01(s, 100);\n l = bound01(l, 100);\n if (s === 0) {\n // achromatic\n g = l;\n b = l;\n r = l;\n }\n else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n/**\n * Converts an RGB color value to HSV\n *\n * *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]\n * *Returns:* { h, s, v } in [0,1]\n */\nexport function rgbToHsv(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h = 0;\n var v = max;\n var d = max - min;\n var s = max === 0 ? 0 : d / max;\n if (max === min) {\n h = 0; // achromatic\n }\n else {\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n break;\n }\n h /= 6;\n }\n return { h: h, s: s, v: v };\n}\n/**\n * Converts an HSV color value to RGB.\n *\n * *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]\n * *Returns:* { r, g, b } in the set [0, 255]\n */\nexport function hsvToRgb(h, s, v) {\n h = bound01(h, 360) * 6;\n s = bound01(s, 100);\n v = bound01(v, 100);\n var i = Math.floor(h);\n var f = h - i;\n var p = v * (1 - s);\n var q = v * (1 - f * s);\n var t = v * (1 - (1 - f) * s);\n var mod = i % 6;\n var r = [v, q, p, p, t, v][mod];\n var g = [t, v, v, q, p, p][mod];\n var b = [p, p, t, v, v, q][mod];\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n/**\n * Converts an RGB color to hex\n *\n * Assumes r, g, and b are contained in the set [0, 255]\n * Returns a 3 or 6 character hex\n */\nexport function rgbToHex(r, g, b, allow3Char) {\n var hex = [\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n ];\n // Return a 3 character hex if possible\n if (allow3Char &&\n hex[0].startsWith(hex[0].charAt(1)) &&\n hex[1].startsWith(hex[1].charAt(1)) &&\n hex[2].startsWith(hex[2].charAt(1))) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);\n }\n return hex.join('');\n}\n/**\n * Converts an RGBA color plus alpha transparency to hex\n *\n * Assumes r, g, b are contained in the set [0, 255] and\n * a in [0, 1]. Returns a 4 or 8 character rgba hex\n */\n// eslint-disable-next-line max-params\nexport function rgbaToHex(r, g, b, a, allow4Char) {\n var hex = [\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n pad2(convertDecimalToHex(a)),\n ];\n // Return a 4 character hex if possible\n if (allow4Char &&\n hex[0].startsWith(hex[0].charAt(1)) &&\n hex[1].startsWith(hex[1].charAt(1)) &&\n hex[2].startsWith(hex[2].charAt(1)) &&\n hex[3].startsWith(hex[3].charAt(1))) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);\n }\n return hex.join('');\n}\n/**\n * Converts an RGBA color to an ARGB Hex8 string\n * Rarely used, but required for \"toFilter()\"\n */\nexport function rgbaToArgbHex(r, g, b, a) {\n var hex = [\n pad2(convertDecimalToHex(a)),\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n ];\n return hex.join('');\n}\n/** Converts a decimal to a hex value */\nexport function convertDecimalToHex(d) {\n return Math.round(parseFloat(d) * 255).toString(16);\n}\n/** Converts a hex value to a decimal */\nexport function convertHexToDecimal(h) {\n return parseIntFromHex(h) / 255;\n}\n/** Parse a base-16 hex value into a base-10 integer */\nexport function parseIntFromHex(val) {\n return parseInt(val, 16);\n}\nexport function numberInputToObject(color) {\n return {\n r: color >> 16,\n g: (color & 0xff00) >> 8,\n b: color & 0xff,\n };\n}\n","// https://github.com/bahamas10/css-color-names/blob/master/css-color-names.json\n/**\n * @hidden\n */\nexport var names = {\n aliceblue: '#f0f8ff',\n antiquewhite: '#faebd7',\n aqua: '#00ffff',\n aquamarine: '#7fffd4',\n azure: '#f0ffff',\n beige: '#f5f5dc',\n bisque: '#ffe4c4',\n black: '#000000',\n blanchedalmond: '#ffebcd',\n blue: '#0000ff',\n blueviolet: '#8a2be2',\n brown: '#a52a2a',\n burlywood: '#deb887',\n cadetblue: '#5f9ea0',\n chartreuse: '#7fff00',\n chocolate: '#d2691e',\n coral: '#ff7f50',\n cornflowerblue: '#6495ed',\n cornsilk: '#fff8dc',\n crimson: '#dc143c',\n cyan: '#00ffff',\n darkblue: '#00008b',\n darkcyan: '#008b8b',\n darkgoldenrod: '#b8860b',\n darkgray: '#a9a9a9',\n darkgreen: '#006400',\n darkgrey: '#a9a9a9',\n darkkhaki: '#bdb76b',\n darkmagenta: '#8b008b',\n darkolivegreen: '#556b2f',\n darkorange: '#ff8c00',\n darkorchid: '#9932cc',\n darkred: '#8b0000',\n darksalmon: '#e9967a',\n darkseagreen: '#8fbc8f',\n darkslateblue: '#483d8b',\n darkslategray: '#2f4f4f',\n darkslategrey: '#2f4f4f',\n darkturquoise: '#00ced1',\n darkviolet: '#9400d3',\n deeppink: '#ff1493',\n deepskyblue: '#00bfff',\n dimgray: '#696969',\n dimgrey: '#696969',\n dodgerblue: '#1e90ff',\n firebrick: '#b22222',\n floralwhite: '#fffaf0',\n forestgreen: '#228b22',\n fuchsia: '#ff00ff',\n gainsboro: '#dcdcdc',\n ghostwhite: '#f8f8ff',\n goldenrod: '#daa520',\n gold: '#ffd700',\n gray: '#808080',\n green: '#008000',\n greenyellow: '#adff2f',\n grey: '#808080',\n honeydew: '#f0fff0',\n hotpink: '#ff69b4',\n indianred: '#cd5c5c',\n indigo: '#4b0082',\n ivory: '#fffff0',\n khaki: '#f0e68c',\n lavenderblush: '#fff0f5',\n lavender: '#e6e6fa',\n lawngreen: '#7cfc00',\n lemonchiffon: '#fffacd',\n lightblue: '#add8e6',\n lightcoral: '#f08080',\n lightcyan: '#e0ffff',\n lightgoldenrodyellow: '#fafad2',\n lightgray: '#d3d3d3',\n lightgreen: '#90ee90',\n lightgrey: '#d3d3d3',\n lightpink: '#ffb6c1',\n lightsalmon: '#ffa07a',\n lightseagreen: '#20b2aa',\n lightskyblue: '#87cefa',\n lightslategray: '#778899',\n lightslategrey: '#778899',\n lightsteelblue: '#b0c4de',\n lightyellow: '#ffffe0',\n lime: '#00ff00',\n limegreen: '#32cd32',\n linen: '#faf0e6',\n magenta: '#ff00ff',\n maroon: '#800000',\n mediumaquamarine: '#66cdaa',\n mediumblue: '#0000cd',\n mediumorchid: '#ba55d3',\n mediumpurple: '#9370db',\n mediumseagreen: '#3cb371',\n mediumslateblue: '#7b68ee',\n mediumspringgreen: '#00fa9a',\n mediumturquoise: '#48d1cc',\n mediumvioletred: '#c71585',\n midnightblue: '#191970',\n mintcream: '#f5fffa',\n mistyrose: '#ffe4e1',\n moccasin: '#ffe4b5',\n navajowhite: '#ffdead',\n navy: '#000080',\n oldlace: '#fdf5e6',\n olive: '#808000',\n olivedrab: '#6b8e23',\n orange: '#ffa500',\n orangered: '#ff4500',\n orchid: '#da70d6',\n palegoldenrod: '#eee8aa',\n palegreen: '#98fb98',\n paleturquoise: '#afeeee',\n palevioletred: '#db7093',\n papayawhip: '#ffefd5',\n peachpuff: '#ffdab9',\n peru: '#cd853f',\n pink: '#ffc0cb',\n plum: '#dda0dd',\n powderblue: '#b0e0e6',\n purple: '#800080',\n rebeccapurple: '#663399',\n red: '#ff0000',\n rosybrown: '#bc8f8f',\n royalblue: '#4169e1',\n saddlebrown: '#8b4513',\n salmon: '#fa8072',\n sandybrown: '#f4a460',\n seagreen: '#2e8b57',\n seashell: '#fff5ee',\n sienna: '#a0522d',\n silver: '#c0c0c0',\n skyblue: '#87ceeb',\n slateblue: '#6a5acd',\n slategray: '#708090',\n slategrey: '#708090',\n snow: '#fffafa',\n springgreen: '#00ff7f',\n steelblue: '#4682b4',\n tan: '#d2b48c',\n teal: '#008080',\n thistle: '#d8bfd8',\n tomato: '#ff6347',\n turquoise: '#40e0d0',\n violet: '#ee82ee',\n wheat: '#f5deb3',\n white: '#ffffff',\n whitesmoke: '#f5f5f5',\n yellow: '#ffff00',\n yellowgreen: '#9acd32',\n};\n","import { convertHexToDecimal, hslToRgb, hsvToRgb, parseIntFromHex, rgbToRgb } from './conversion';\nimport { names } from './css-color-names';\nimport { boundAlpha, convertToPercentage } from './util';\n/**\n * Given a string or object, convert that input to RGB\n *\n * Possible string inputs:\n * ```\n * \"red\"\n * \"#f00\" or \"f00\"\n * \"#ff0000\" or \"ff0000\"\n * \"#ff000000\" or \"ff000000\"\n * \"rgb 255 0 0\" or \"rgb (255, 0, 0)\"\n * \"rgb 1.0 0 0\" or \"rgb (1, 0, 0)\"\n * \"rgba (255, 0, 0, 1)\" or \"rgba 255, 0, 0, 1\"\n * \"rgba (1.0, 0, 0, 1)\" or \"rgba 1.0, 0, 0, 1\"\n * \"hsl(0, 100%, 50%)\" or \"hsl 0 100% 50%\"\n * \"hsla(0, 100%, 50%, 1)\" or \"hsla 0 100% 50%, 1\"\n * \"hsv(0, 100%, 100%)\" or \"hsv 0 100% 100%\"\n * ```\n */\nexport function inputToRGB(color) {\n var rgb = { r: 0, g: 0, b: 0 };\n var a = 1;\n var s = null;\n var v = null;\n var l = null;\n var ok = false;\n var format = false;\n if (typeof color === 'string') {\n color = stringInputToObject(color);\n }\n if (typeof color === 'object') {\n if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {\n rgb = rgbToRgb(color.r, color.g, color.b);\n ok = true;\n format = String(color.r).substr(-1) === '%' ? 'prgb' : 'rgb';\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {\n s = convertToPercentage(color.s);\n v = convertToPercentage(color.v);\n rgb = hsvToRgb(color.h, s, v);\n ok = true;\n format = 'hsv';\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {\n s = convertToPercentage(color.s);\n l = convertToPercentage(color.l);\n rgb = hslToRgb(color.h, s, l);\n ok = true;\n format = 'hsl';\n }\n if (Object.prototype.hasOwnProperty.call(color, 'a')) {\n a = color.a;\n }\n }\n a = boundAlpha(a);\n return {\n ok: ok,\n format: color.format || format,\n r: Math.min(255, Math.max(rgb.r, 0)),\n g: Math.min(255, Math.max(rgb.g, 0)),\n b: Math.min(255, Math.max(rgb.b, 0)),\n a: a,\n };\n}\n// <http://www.w3.org/TR/css3-values/#integers>\nvar CSS_INTEGER = '[-\\\\+]?\\\\d+%?';\n// <http://www.w3.org/TR/css3-values/#number-value>\nvar CSS_NUMBER = '[-\\\\+]?\\\\d*\\\\.\\\\d+%?';\n// Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.\nvar CSS_UNIT = \"(?:\" + CSS_NUMBER + \")|(?:\" + CSS_INTEGER + \")\";\n// Actual matching.\n// Parentheses and commas are optional, but not required.\n// Whitespace can take the place of commas or opening paren\nvar PERMISSIVE_MATCH3 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\nvar PERMISSIVE_MATCH4 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\nvar matchers = {\n CSS_UNIT: new RegExp(CSS_UNIT),\n rgb: new RegExp('rgb' + PERMISSIVE_MATCH3),\n rgba: new RegExp('rgba' + PERMISSIVE_MATCH4),\n hsl: new RegExp('hsl' + PERMISSIVE_MATCH3),\n hsla: new RegExp('hsla' + PERMISSIVE_MATCH4),\n hsv: new RegExp('hsv' + PERMISSIVE_MATCH3),\n hsva: new RegExp('hsva' + PERMISSIVE_MATCH4),\n hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n};\n/**\n * Permissive string parsing. Take in a number of formats, and output an object\n * based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`\n */\nexport function stringInputToObject(color) {\n color = color.trim().toLowerCase();\n if (color.length === 0) {\n return false;\n }\n var named = false;\n if (names[color]) {\n color = names[color];\n named = true;\n }\n else if (color === 'transparent') {\n return { r: 0, g: 0, b: 0, a: 0, format: 'name' };\n }\n // Try to match string input using regular expressions.\n // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]\n // Just return an object and let the conversion functions handle that.\n // This way the result will be the same whether the tinycolor is initialized with string or object.\n var match = matchers.rgb.exec(color);\n if (match) {\n return { r: match[1], g: match[2], b: match[3] };\n }\n match = matchers.rgba.exec(color);\n if (match) {\n return { r: match[1], g: match[2], b: match[3], a: match[4] };\n }\n match = matchers.hsl.exec(color);\n if (match) {\n return { h: match[1], s: match[2], l: match[3] };\n }\n match = matchers.hsla.exec(color);\n if (match) {\n return { h: match[1], s: match[2], l: match[3], a: match[4] };\n }\n match = matchers.hsv.exec(color);\n if (match) {\n return { h: match[1], s: match[2], v: match[3] };\n }\n match = matchers.hsva.exec(color);\n if (match) {\n return { h: match[1], s: match[2], v: match[3], a: match[4] };\n }\n match = matchers.hex8.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n a: convertHexToDecimal(match[4]),\n format: named ? 'name' : 'hex8',\n };\n }\n match = matchers.hex6.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n format: named ? 'name' : 'hex',\n };\n }\n match = matchers.hex4.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1] + match[1]),\n g: parseIntFromHex(match[2] + match[2]),\n b: parseIntFromHex(match[3] + match[3]),\n a: convertHexToDecimal(match[4] + match[4]),\n format: named ? 'name' : 'hex8',\n };\n }\n match = matchers.hex3.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1] + match[1]),\n g: parseIntFromHex(match[2] + match[2]),\n b: parseIntFromHex(match[3] + match[3]),\n format: named ? 'name' : 'hex',\n };\n }\n return false;\n}\n/**\n * Check to see if it looks like a CSS unit\n * (see `matchers` above for definition).\n */\nexport function isValidCSSUnit(color) {\n return Boolean(matchers.CSS_UNIT.exec(String(color)));\n}\n","import { inputToRGB, rgbToHex, rgbToHsv } from '@ctrl/tinycolor';\n\nvar hueStep = 2; // 色相阶梯\n\nvar saturationStep = 0.16; // 饱和度阶梯,浅色部分\n\nvar saturationStep2 = 0.05; // 饱和度阶梯,深色部分\n\nvar brightnessStep1 = 0.05; // 亮度阶梯,浅色部分\n\nvar brightnessStep2 = 0.15; // 亮度阶梯,深色部分\n\nvar lightColorCount = 5; // 浅色数量,主色上\n\nvar darkColorCount = 4; // 深色数量,主色下\n// 暗色主题颜色映射关系表\n\nvar darkColorMap = [{\n index: 7,\n opacity: 0.15\n}, {\n index: 6,\n opacity: 0.25\n}, {\n index: 5,\n opacity: 0.3\n}, {\n index: 5,\n opacity: 0.45\n}, {\n index: 5,\n opacity: 0.65\n}, {\n index: 5,\n opacity: 0.85\n}, {\n index: 4,\n opacity: 0.9\n}, {\n index: 3,\n opacity: 0.95\n}, {\n index: 2,\n opacity: 0.97\n}, {\n index: 1,\n opacity: 0.98\n}]; // Wrapper function ported from TinyColor.prototype.toHsv\n// Keep it here because of `hsv.h * 360`\n\nfunction toHsv(_ref) {\n var r = _ref.r,\n g = _ref.g,\n b = _ref.b;\n var hsv = rgbToHsv(r, g, b);\n return {\n h: hsv.h * 360,\n s: hsv.s,\n v: hsv.v\n };\n} // Wrapper function ported from TinyColor.prototype.toHexString\n// Keep it here because of the prefix `#`\n\n\nfunction toHex(_ref2) {\n var r = _ref2.r,\n g = _ref2.g,\n b = _ref2.b;\n return \"#\".concat(rgbToHex(r, g, b, false));\n} // Wrapper function ported from TinyColor.prototype.mix, not treeshakable.\n// Amount in range [0, 1]\n// Assume color1 & color2 has no alpha, since the following src code did so.\n\n\nfunction mix(rgb1, rgb2, amount) {\n var p = amount / 100;\n var rgb = {\n r: (rgb2.r - rgb1.r) * p + rgb1.r,\n g: (rgb2.g - rgb1.g) * p + rgb1.g,\n b: (rgb2.b - rgb1.b) * p + rgb1.b\n };\n return rgb;\n}\n\nfunction getHue(hsv, i, light) {\n var hue; // 根据色相不同,色相转向不同\n\n if (Math.round(hsv.h) >= 60 && Math.round(hsv.h) <= 240) {\n hue = light ? Math.round(hsv.h) - hueStep * i : Math.round(hsv.h) + hueStep * i;\n } else {\n hue = light ? Math.round(hsv.h) + hueStep * i : Math.round(hsv.h) - hueStep * i;\n }\n\n if (hue < 0) {\n hue += 360;\n } else if (hue >= 360) {\n hue -= 360;\n }\n\n return hue;\n}\n\nfunction getSaturation(hsv, i, light) {\n // grey color don't change saturation\n if (hsv.h === 0 && hsv.s === 0) {\n return hsv.s;\n }\n\n var saturation;\n\n if (light) {\n saturation = hsv.s - saturationStep * i;\n } else if (i === darkColorCount) {\n saturation = hsv.s + saturationStep;\n } else {\n saturation = hsv.s + saturationStep2 * i;\n } // 边界值修正\n\n\n if (saturation > 1) {\n saturation = 1;\n } // 第一格的 s 限制在 0.06-0.1 之间\n\n\n if (light && i === lightColorCount && saturation > 0.1) {\n saturation = 0.1;\n }\n\n if (saturation < 0.06) {\n saturation = 0.06;\n }\n\n return Number(saturation.toFixed(2));\n}\n\nfunction getValue(hsv, i, light) {\n var value;\n\n if (light) {\n value = hsv.v + brightnessStep1 * i;\n } else {\n value = hsv.v - brightnessStep2 * i;\n }\n\n if (value > 1) {\n value = 1;\n }\n\n return Number(value.toFixed(2));\n}\n\nfunction generate(color) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var patterns = [];\n var pColor = inputToRGB(color);\n\n for (var i = lightColorCount; i > 0; i -= 1) {\n var hsv = toHsv(pColor);\n var colorString = toHex(inputToRGB({\n h: getHue(hsv, i, true),\n s: getSaturation(hsv, i, true),\n v: getValue(hsv, i, true)\n }));\n patterns.push(colorString);\n }\n\n patterns.push(toHex(pColor));\n\n for (var _i = 1; _i <= darkColorCount; _i += 1) {\n var _hsv = toHsv(pColor);\n\n var _colorString = toHex(inputToRGB({\n h: getHue(_hsv, _i),\n s: getSaturation(_hsv, _i),\n v: getValue(_hsv, _i)\n }));\n\n patterns.push(_colorString);\n } // dark theme patterns\n\n\n if (opts.theme === 'dark') {\n return darkColorMap.map(function (_ref3) {\n var index = _ref3.index,\n opacity = _ref3.opacity;\n var darkColorString = toHex(mix(inputToRGB(opts.backgroundColor || '#141414'), inputToRGB(patterns[index]), opacity * 100));\n return darkColorString;\n });\n }\n\n return patterns;\n}\n\nvar presetPrimaryColors = {\n red: '#F5222D',\n volcano: '#FA541C',\n orange: '#FA8C16',\n gold: '#FAAD14',\n yellow: '#FADB14',\n lime: '#A0D911',\n green: '#52C41A',\n cyan: '#13C2C2',\n blue: '#1890FF',\n geekblue: '#2F54EB',\n purple: '#722ED1',\n magenta: '#EB2F96',\n grey: '#666666'\n};\nvar presetPalettes = {};\nvar presetDarkPalettes = {};\nObject.keys(presetPrimaryColors).forEach(function (key) {\n presetPalettes[key] = generate(presetPrimaryColors[key]);\n presetPalettes[key].primary = presetPalettes[key][5]; // dark presetPalettes\n\n presetDarkPalettes[key] = generate(presetPrimaryColors[key], {\n theme: 'dark',\n backgroundColor: '#141414'\n });\n presetDarkPalettes[key].primary = presetDarkPalettes[key][5];\n});\nvar red = presetPalettes.red;\nvar volcano = presetPalettes.volcano;\nvar gold = presetPalettes.gold;\nvar orange = presetPalettes.orange;\nvar yellow = presetPalettes.yellow;\nvar lime = presetPalettes.lime;\nvar green = presetPalettes.green;\nvar cyan = presetPalettes.cyan;\nvar blue = presetPalettes.blue;\nvar geekblue = presetPalettes.geekblue;\nvar purple = presetPalettes.purple;\nvar magenta = presetPalettes.magenta;\nvar grey = presetPalettes.grey;\n\nexport { blue, cyan, geekblue, generate, gold, green, grey, lime, magenta, orange, presetDarkPalettes, presetPalettes, presetPrimaryColors, purple, red, volcano, yellow };\n","import { generate } from \"@ant-design/colors\";\nexport function getStyleByBaseColors(theme, baseColors, backgroundColor) {\n return (theme === \"dark\" ? getDarkStyle : getLightStyle)(\"\".concat(getCssVariableDefinitionsByPalettes(generatePalettes(baseColors, theme, backgroundColor), theme), \"\\n\").concat(getMigratedCssVariableDefinitions(theme, baseColors, backgroundColor)));\n}\nexport function getStyleByBrandColor(theme, brandColor) {\n return (theme === \"dark\" ? getDarkStyle : getLightStyle)(getCssVariableDefinitionsByBrand(brandColor));\n}\nexport function getStyleByVariables(theme, variables) {\n return (theme === \"dark\" ? getDarkStyle : getLightStyle)(getCssVariableDefinitionsByVariables(variables));\n}\n\nfunction getLightStyle(cssVariableDefinitions) {\n return \":root,\\n[data-override-theme=\\\"light\\\"] {\\n\".concat(cssVariableDefinitions, \"}\");\n}\n\nfunction getDarkStyle(cssVariableDefinitions) {\n return \"html[data-theme=\\\"dark-v2\\\"],\\n[data-override-theme=\\\"dark-v2\\\"] {\\n\".concat(cssVariableDefinitions, \"}\");\n}\n\nfunction getCssVariableDefinitionsByPalettes(palettes, theme) {\n return Object.entries(palettes).flatMap(_ref => {\n var [colorName, palette] = _ref;\n ensureBaseColorName(colorName);\n return palette.map((color, index) => [\" --palette-\".concat(colorName, \"-\").concat(index + 1, \"-channel: \").concat(getRgbChannel(color), \";\")].concat(theme === \"dark\" ? [] : \" --palette-\".concat(colorName, \"-\").concat(index + 1, \": rgb(var(--palette-\").concat(colorName, \"-\").concat(index + 1, \"-channel));\")).join(\"\\n\")) // Concat an empty string to make a double-line-break for each group of color name.\n .concat(\"\");\n }).join(\"\\n\");\n}\n\nfunction generatePalettes(baseColors, theme, backgroundColor) {\n return Object.fromEntries(Object.entries(baseColors).map(_ref2 => {\n var [colorName, baseColor] = _ref2;\n return [colorName, generate(baseColor, theme === \"dark\" ? {\n theme,\n backgroundColor\n } : undefined)];\n }));\n}\n\nfunction getCssVariableDefinitionsByBrand(color) {\n if (typeof color === \"string\") {\n return \" --color-brand: \".concat(color, \";\\n\");\n }\n\n return [\" --color-brand: \".concat(color.default, \";\"), \" --color-brand-hover: \".concat(color.hover, \";\"), \" --color-brand-active: \".concat(color.active, \";\"), \"\"].join(\"\\n\");\n}\n\nfunction getCssVariableDefinitionsByVariables(variables) {\n return Object.entries(variables).map(_ref3 => {\n var [name, color] = _ref3;\n ensureCssVariableName(name);\n return \" \".concat(name, \": \").concat(color, \";\");\n }).concat(\"\").join(\"\\n\");\n}\n\nfunction ensureCssVariableName(name) {\n if (!/^--[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/.test(name)) {\n throw new Error(\"Invalid css variable name: \".concat(JSON.stringify(name)));\n }\n}\n\nfunction ensureBaseColorName(name) {\n if (!/^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(name)) {\n throw new Error(\"Invalid base color name: \".concat(JSON.stringify(name)));\n }\n}\n\nfunction getMigratedCssVariableDefinitions(theme, baseColors, backgroundColor) {\n var migrateMap = {\n green: \"green\",\n red: \"red\",\n blue: \"blue\",\n orange: \"orange\",\n cyan: \"cyan\",\n purple: \"purple\",\n geekblue: \"indigo\"\n };\n return Object.entries(migrateMap).flatMap(_ref4 => {\n var [legacyColorName, newColorName] = _ref4;\n return [\" --theme-\".concat(legacyColorName, \"-color-rgb-channel: \").concat(getRgbChannel(getActualBaseColor(baseColors[newColorName], theme, backgroundColor)), \";\"), ...(theme === \"dark\" ? [] : [\" --theme-\".concat(legacyColorName, \"-color: var(--palette-\").concat(newColorName, \"-6);\"), \" --theme-\".concat(legacyColorName, \"-border-color: var(--palette-\").concat(newColorName, \"-3);\")]), \" --theme-\".concat(legacyColorName, \"-background: var(--palette-\").concat(newColorName, \"-\").concat(theme === \"dark\" ? 2 : 1, \");\"), \"\"];\n }).join(\"\\n\");\n}\n\nfunction getRgbChannel(color) {\n return color.match(/[0-9a-fA-F]{2}/g).map(hex => parseInt(hex, 16)).join(\", \");\n}\n\nfunction getActualBaseColor(baseColor, theme, backgroundColor) {\n return theme === \"dark\" ? generate(baseColor, {\n theme,\n backgroundColor\n })[5] : baseColor;\n}\n//# sourceMappingURL=index.js.map","import {\n BaseColors,\n BrandColor,\n getStyleByBaseColors,\n getStyleByBrandColor,\n getStyleByVariables,\n} from \"@next-core/color-theme\";\n\nexport type ColorThemeOptions =\n | ColorThemeOptionsByBrand\n | ColorThemeOptionsByBaseColors\n | ColorThemeOptionsByVariables;\n\nexport interface ColorThemeOptionsByBrand {\n type: \"brandColor\";\n light?: BrandColor;\n dark?: BrandColor;\n}\n\nexport interface ColorThemeOptionsByBaseColors {\n type: \"baseColors\";\n light?: BaseColors;\n dark?: BaseColors;\n backgroundColor?: string;\n}\n\nexport interface ColorThemeOptionsByVariables {\n type: \"variables\";\n light?: Record<string, string>;\n dark?: Record<string, string>;\n}\n\nexport function applyColorTheme(options: ColorThemeOptions): () => void {\n const style: string[] = [];\n const themes = [\"light\", \"dark\"] as const;\n themes.forEach((theme) => {\n if (options[theme]) {\n switch (options.type) {\n case \"brandColor\":\n style.push(getStyleByBrandColor(theme, options[theme]));\n break;\n case \"baseColors\":\n style.push(\n getStyleByBaseColors(theme, options[theme], options.backgroundColor)\n );\n break;\n case \"variables\":\n style.push(getStyleByVariables(theme, options[theme]));\n break;\n }\n }\n });\n\n if (style.length > 0) {\n const element = document.createElement(\"style\");\n element.textContent = style.join(\"\\n\\n\");\n document.head.appendChild(element);\n return () => {\n element.remove();\n };\n }\n}\n","import { cloneDeep, pick, sortBy } from \"lodash\";\nimport {\n loadScript,\n prefetchScript,\n getTemplateDepsOfStoryboard,\n getDllAndDepsOfStoryboard,\n asyncProcessStoryboard,\n scanBricksInBrickConf,\n scanRouteAliasInStoryboard,\n getDllAndDepsByResource,\n scanProcessorsInAny,\n CustomApiInfo,\n} from \"@next-core/brick-utils\";\nimport i18next from \"i18next\";\nimport * as AuthSdk from \"@next-sdk/auth-sdk\";\nimport {\n BootstrapV2Api_bootstrapV2,\n BootstrapV2Api_getAppStoryboardV2,\n} from \"@next-sdk/api-gateway-sdk\";\nimport { UserAdminApi_searchAllUsersInfo } from \"@next-sdk/user-service-sdk\";\nimport { ObjectMicroAppApi_getObjectMicroAppList } from \"@next-sdk/micro-app-sdk\";\nimport { InstanceApi_postSearch } from \"@next-sdk/cmdb-sdk\";\nimport type {\n MountPoints,\n BootstrapData,\n RuntimeBootstrapData,\n InterceptorParams,\n MicroApp,\n UserInfo,\n MagicBrickConfig,\n FeatureFlags,\n RuntimeStoryboard,\n BrickConf,\n LayoutType,\n PresetBricksConf,\n RouteConf,\n MenuRawData,\n Storyboard,\n SimpleFunction,\n RouteConfOfBricks,\n} from \"@next-core/brick-types\";\nimport { authenticate, isLoggedIn } from \"../auth\";\nimport {\n Router,\n MenuBar,\n AppBar,\n BaseBar,\n registerCustomTemplate,\n} from \"./exports\";\nimport { getHistory } from \"../history\";\nimport {\n RelatedApp,\n VisitedWorkspace,\n RecentApps,\n CustomApiDefinition,\n ThemeSetting,\n} from \"./interfaces\";\nimport { processBootstrapResponse } from \"./processors\";\nimport { brickTemplateRegistry } from \"./TemplateRegistries\";\nimport { listenDevtools } from \"../internal/devtools\";\nimport { registerCustomApi, CUSTOM_API_PROVIDER } from \"../providers/CustomApi\";\nimport { loadAllLazyBricks, loadLazyBricks } from \"./LazyBrickRegistry\";\nimport { isCustomApiProvider } from \"./FlowApi\";\nimport { getRuntime } from \"../runtime\";\nimport { initAnalytics } from \"./initAnalytics\";\nimport { standaloneBootstrap } from \"./standaloneBootstrap\";\nimport { getI18nNamespace } from \"../i18n\";\nimport {\n applyColorTheme,\n ColorThemeOptionsByBrand,\n ColorThemeOptionsByBaseColors,\n ColorThemeOptionsByVariables,\n} from \"../internal/applyColorTheme\";\n\nexport class Kernel {\n public mountPoints: MountPoints;\n public bootstrapData: RuntimeBootstrapData;\n public presetBricks: PresetBricksConf;\n public menuBar: MenuBar;\n public appBar: AppBar;\n public loadingBar: BaseBar;\n public router: Router;\n public currentApp: MicroApp;\n public previousApp: MicroApp;\n public nextApp: MicroApp;\n public currentUrl: string;\n public currentRoute: RouteConf;\n public workspaceStack: VisitedWorkspace[] = [];\n public currentLayout: LayoutType;\n public allUserMapPromise: Promise<Map<string, UserInfo>> = Promise.resolve(\n new Map()\n );\n public allMagicBrickConfigMapPromise: Promise<Map<string, MagicBrickConfig>> =\n Promise.resolve(new Map());\n private allRelatedAppsPromise: Promise<RelatedApp[]> = Promise.resolve([]);\n public allMicroAppApiOrchestrationPromise: Promise<\n Map<string, CustomApiDefinition>\n > = Promise.resolve(new Map());\n private providerRepository = new Map<string, HTMLElement>();\n private loadUsersStarted = false;\n private loadMagicBrickConfigStarted = false;\n\n async bootstrap(mountPoints: MountPoints): Promise<void> {\n this.mountPoints = mountPoints;\n await Promise.all([this.loadCheckLogin(), this.loadMicroApps()]);\n if (this.bootstrapData.storyboards.length === 0) {\n throw new Error(\"No storyboard were found.\");\n }\n\n generateColorTheme(\n this.bootstrapData.settings?.misc?.theme as ThemeSetting\n );\n\n if (isLoggedIn()) {\n this.loadSharedData();\n }\n this.menuBar = new MenuBar(this, \"menuBar\");\n this.appBar = new AppBar(this, \"appBar\");\n this.loadingBar = new BaseBar(this, \"loadingBar\");\n this.router = new Router(this);\n\n initAnalytics();\n\n await this.router.bootstrap();\n if (!window.STANDALONE_MICRO_APPS) {\n this.legacyAuthGuard();\n }\n listenDevtools();\n }\n\n async layoutBootstrap(layout: LayoutType): Promise<void> {\n const supportedLayouts: LayoutType[] = [\"console\", \"business\"];\n if (!supportedLayouts.includes(layout)) {\n throw new Error(`Unknown layout: ${layout}`);\n }\n this.currentLayout = layout;\n\n this.presetBricks =\n layout === \"business\"\n ? {\n loadingBar: \"business-website.loading-bar\",\n pageNotFound: \"business-website.page-not-found\",\n pageError: \"business-website.page-error\",\n }\n : {\n ...this.bootstrapData.navbar,\n pageNotFound: \"basic-bricks.page-not-found\",\n pageError: \"basic-bricks.page-error\",\n };\n\n for (const item of supportedLayouts) {\n if (item === layout) {\n document.body.classList.add(`layout-${item}`);\n } else {\n document.body.classList.remove(`layout-${item}`);\n }\n }\n\n await Promise.all([\n this.menuBar.bootstrap(this.presetBricks.menuBar, {\n testid: \"brick-next-menu-bar\",\n }),\n this.appBar.bootstrap(this.presetBricks.appBar),\n this.loadingBar.bootstrap(this.presetBricks.loadingBar),\n ]);\n }\n\n private legacyAuthGuard(): void {\n // Listen messages from legacy Console-W,\n // Redirect to login page if received an `auth.guard` message.\n window.addEventListener(\"message\", (event: MessageEvent): void => {\n if (event.origin !== window.location.origin) {\n return;\n }\n const data = Object.assign({}, event.data);\n if (data.type === \"auth.guard\") {\n const history = getHistory();\n const ssoEnabled = this.getFeatureFlags()[\"sso-enabled\"];\n history.push(ssoEnabled ? \"/sso-auth/login\" : \"/auth/login\", {\n from: history.location,\n });\n }\n });\n }\n\n private async loadCheckLogin(): Promise<void> {\n if (!window.NO_AUTH_GUARD) {\n const auth = await AuthSdk.checkLogin();\n if (auth.loggedIn) {\n authenticate(auth);\n }\n }\n }\n\n private async loadMicroApps(\n params?: { check_login?: boolean },\n interceptorParams?: InterceptorParams\n ): Promise<void> {\n const data = await (window.STANDALONE_MICRO_APPS\n ? standaloneBootstrap()\n : BootstrapV2Api_bootstrapV2(\n {\n appFields:\n \"defaultConfig,userConfig,locales,name,homepage,id,currentVersion,installStatus,internal,status,icons\",\n ignoreTemplateFields: \"templates\",\n ignoreBrickFields: \"bricks,processors,providers,editors\",\n ...params,\n },\n {\n interceptorParams,\n }\n ));\n const bootstrapResponse = {\n templatePackages: [],\n ...data,\n } as BootstrapData;\n // Merge `app.defaultConfig` and `app.userConfig` to `app.config`.\n processBootstrapResponse(bootstrapResponse);\n this.bootstrapData = {\n ...bootstrapResponse,\n microApps: bootstrapResponse.storyboards\n .map((storyboard) => storyboard.app)\n .filter(Boolean),\n };\n }\n\n reloadMicroApps(\n params?: { check_login?: boolean },\n interceptorParams?: InterceptorParams\n ): Promise<void> {\n // There is no need to reload standalone micro-apps.\n if (!window.STANDALONE_MICRO_APPS) {\n return this.loadMicroApps(params, interceptorParams);\n }\n }\n\n async fulfilStoryboard(storyboard: RuntimeStoryboard): Promise<void> {\n if (storyboard.$$fulfilled) {\n return;\n }\n if (!storyboard.$$fulfilling) {\n storyboard.$$fulfilling = this.doFulfilStoryboard(storyboard);\n }\n return storyboard.$$fulfilling;\n }\n\n private async doFulfilStoryboard(\n storyboard: RuntimeStoryboard\n ): Promise<void> {\n if (window.STANDALONE_MICRO_APPS) {\n Object.assign(storyboard, { $$fulfilled: true });\n } else {\n const { routes, meta, app } = await BootstrapV2Api_getAppStoryboardV2(\n storyboard.app.id,\n {}\n );\n Object.assign(storyboard, {\n routes,\n meta,\n app: { ...storyboard.app, ...app },\n $$fulfilled: true,\n });\n }\n this.postProcessStoryboard(storyboard);\n }\n\n private postProcessStoryboard(storyboard: RuntimeStoryboard): void {\n storyboard.app.$$routeAliasMap = scanRouteAliasInStoryboard(storyboard);\n\n if (storyboard.meta?.i18n) {\n // Prefix to avoid conflict between brick package's i18n namespace.\n const i18nNamespace = getI18nNamespace(\"app\", storyboard.app.id);\n // Support any language in `meta.i18n`.\n Object.entries(storyboard.meta.i18n).forEach(([lang, resources]) => {\n i18next.addResourceBundle(lang, i18nNamespace, resources);\n });\n }\n }\n\n _dev_only_updateStoryboard(\n appId: string,\n storyboardPatch: Partial<Storyboard>\n ): void {\n const storyboard = this.bootstrapData.storyboards.find(\n (item) => item.app.id === appId\n );\n Object.assign(storyboard, {\n ...storyboardPatch,\n $$fulfilling: Promise.resolve(),\n $$fulfilled: true,\n $$registerCustomTemplateProcessed: false,\n $$depsProcessed: false,\n });\n this.postProcessStoryboard(storyboard);\n }\n\n _dev_only_updateTemplatePreviewSettings(\n appId: string,\n templateId: string,\n settings?: unknown\n ): void {\n const { routes } = this.bootstrapData.storyboards.find(\n (item) => item.app.id === appId\n );\n const previewPath = `\\${APP.homepage}/_dev_only_/template-preview/${templateId}`;\n const previewRouteIndex = routes.findIndex(\n (route) => route.path === previewPath\n );\n const newPreviewRoute: RouteConf = {\n path: previewPath,\n bricks: [\n {\n brick: templateId,\n ...pick(settings, \"properties\", \"events\", \"lifeCycle\", \"context\"),\n },\n ],\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\n _dev_only_updateSnippetPreviewSettings(\n appId: string,\n snippetData: {\n snippetId: string;\n bricks: BrickConf[];\n }\n ): void {\n const { routes } = this.bootstrapData.storyboards.find(\n (item) => item.app.id === appId\n );\n const previewPath = `\\${APP.homepage}/_dev_only_/snippet-preview/${snippetData.snippetId}`;\n const previewRouteIndex = routes.findIndex(\n (route) => route.path === previewPath\n );\n const newPreviewRoute: RouteConf = {\n path: previewPath,\n bricks:\n snippetData.bricks?.length > 0\n ? snippetData.bricks\n : [{ brick: \"span\" }],\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\n private _loadDepsOfStoryboard = async (\n storyboard: RuntimeStoryboard\n ): Promise<void> => {\n const { brickPackages, templatePackages } = this.bootstrapData;\n\n if (storyboard.dependsAll) {\n const dllPath = window.DLL_PATH || {};\n await loadScriptOfDll(Object.values(dllPath));\n await loadScriptOfBricksOrTemplates(\n brickPackages\n .map((item) => item.filePath)\n .concat(templatePackages.map((item) => item.filePath))\n );\n await loadAllLazyBricks();\n } else {\n // 先加载模板\n const templateDeps = getTemplateDepsOfStoryboard(\n storyboard,\n templatePackages\n );\n await loadScriptOfBricksOrTemplates(templateDeps);\n // 加载模板后才能加工得到最终的构件表\n const { dll, deps, bricks } = getDllAndDepsOfStoryboard(\n await asyncProcessStoryboard(\n storyboard,\n brickTemplateRegistry,\n templatePackages\n ),\n brickPackages,\n {\n ignoreBricksInUnusedCustomTemplates: true,\n }\n );\n await loadScriptOfDll(dll);\n await loadScriptOfBricksOrTemplates(deps);\n await loadLazyBricks(bricks);\n }\n };\n\n loadDepsOfStoryboard(storyboard: RuntimeStoryboard): Promise<void> {\n return this.gracefullyLoadDeps(this._loadDepsOfStoryboard, storyboard);\n }\n\n private async gracefullyLoadDeps<P extends unknown[]>(\n fn: SimpleFunction<P, Promise<void>>,\n ...args: P\n ): Promise<void> {\n try {\n await fn(...args);\n } catch (e) {\n if (e instanceof Event && e.target instanceof HTMLScriptElement) {\n // The scripts maybe stale when a user stays in page while upgrades been applied.\n // So we force reloading again automatically.\n // NOTE: reload only once to avoid a infinite loop.\n await this.reloadMicroApps();\n await fn(...args);\n } else {\n throw e;\n }\n }\n }\n\n prefetchDepsOfStoryboard(storyboard: RuntimeStoryboard): void {\n if (storyboard.$$depsProcessed) {\n return;\n }\n const { brickPackages, templatePackages } = this.bootstrapData;\n const templateDeps = getTemplateDepsOfStoryboard(\n storyboard,\n templatePackages\n );\n prefetchScript(templateDeps, window.PUBLIC_ROOT);\n const result = getDllAndDepsOfStoryboard(storyboard, brickPackages);\n prefetchScript(result.dll, window.CORE_ROOT);\n prefetchScript(result.deps, window.PUBLIC_ROOT);\n storyboard.$$depsProcessed = true;\n }\n\n registerCustomTemplatesInStoryboard(storyboard: RuntimeStoryboard): void {\n if (!storyboard.$$registerCustomTemplateProcessed) {\n // 注册自定义模板\n if (Array.isArray(storyboard.meta?.customTemplates)) {\n for (const tpl of storyboard.meta.customTemplates) {\n registerCustomTemplate(\n tpl.name,\n {\n bricks: tpl.bricks,\n proxy: tpl.proxy,\n state: tpl.state,\n },\n storyboard.app?.id\n );\n }\n }\n // 每个 storyboard 仅注册一次custom-template\n storyboard.$$registerCustomTemplateProcessed = true;\n }\n }\n\n async loadDynamicBricksInBrickConf(brickConf: BrickConf): Promise<void> {\n // Notice: `brickConf` contains runtime data,\n // which may contains recursive ref,\n // which could cause stack overflow while traversing.\n const bricks = scanBricksInBrickConf(brickConf);\n const processors = scanProcessorsInAny(brickConf);\n await this.loadDynamicBricks(bricks, processors);\n }\n\n private _loadDynamicBricks = async (\n bricks: string[],\n processors?: string[]\n ): Promise<void> => {\n const filteredBricks = bricks.filter(\n // Only try to load undefined custom elements.\n (item) => !customElements.get(item)\n );\n // Try to load deps for dynamic added bricks.\n const { dll, deps } = getDllAndDepsByResource(\n {\n bricks: filteredBricks,\n processors,\n },\n this.bootstrapData.brickPackages\n );\n await loadScriptOfDll(dll);\n await loadScriptOfBricksOrTemplates(deps);\n await loadLazyBricks(filteredBricks);\n };\n\n loadDynamicBricks(bricks: string[], processors?: string[]): Promise<void> {\n return this.gracefullyLoadDeps(this._loadDynamicBricks, bricks, processors);\n }\n\n private _loadEditorBricks = async (editorBricks: string[]): Promise<void> => {\n const { dll, deps } = getDllAndDepsByResource(\n {\n editorBricks: editorBricks.filter(\n // Only try to load undefined custom elements.\n (item) => !customElements.get(item)\n ),\n },\n this.bootstrapData.brickPackages\n );\n await loadScriptOfDll(dll);\n await loadScriptOfBricksOrTemplates(deps);\n };\n\n loadEditorBricks(editorBricks: string[]): Promise<void> {\n return this.gracefullyLoadDeps(this._loadEditorBricks, editorBricks);\n }\n\n firstRendered(): void {\n setTimeout(() => {\n document.body.classList.add(\"first-rendered\");\n });\n }\n\n /**\n * 展开/收起顶栏、侧栏\n * @param visible 是否显示\n */\n toggleBars(visible: boolean): void {\n document.body.classList.toggle(\"bars-hidden\", !visible);\n }\n\n /**\n * 重置顶栏、侧栏\n */\n unsetBars({\n appChanged,\n legacy,\n }: { appChanged?: boolean; legacy?: \"iframe\" } = {}): void {\n this.toggleBars(true);\n if (this.currentLayout !== \"console\") {\n // No bars should be unset for the business layout.\n return;\n }\n if (appChanged) {\n this.menuBar.resetAppMenu();\n }\n if (legacy !== \"iframe\" || appChanged) {\n // 对于 Legacy 页面,仅当切换应用时重设面包屑。\n this.appBar.setBreadcrumb(null);\n }\n getRuntime().applyPageTitle(null);\n }\n\n toggleLegacyIframe(visible: boolean): void {\n document.body.classList.toggle(\"show-legacy-iframe\", visible);\n }\n\n loadSharedData(): void {\n if (!window.STANDALONE_MICRO_APPS) {\n this.loadRelatedAppsAsync();\n }\n }\n\n loadUsersAsync(): void {\n if (!this.loadUsersStarted) {\n this.loadUsersStarted = true;\n this.allUserMapPromise = this.loadUsers();\n }\n }\n\n private async loadUsers(): Promise<Map<string, UserInfo>> {\n const allUserMap: Map<string, UserInfo> = new Map();\n try {\n const query = { state: \"valid\" };\n const fields = {\n name: true,\n nickname: true,\n user_email: true,\n user_tel: true,\n user_icon: true,\n user_memo: true,\n };\n const allUserInfo = (\n await UserAdminApi_searchAllUsersInfo({\n query,\n fields,\n })\n ).list as UserInfo[];\n for (const user of allUserInfo) {\n allUserMap.set(user.name, user);\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(\"Load users error:\", error);\n }\n return allUserMap;\n }\n\n loadMicroAppApiOrchestrationAsync(usedCustomApis: CustomApiInfo[]): void {\n this.allMicroAppApiOrchestrationPromise =\n this.loadMicroAppApiOrchestration(usedCustomApis);\n }\n\n async getMicroAppApiOrchestrationMapAsync(): Promise<\n Map<string, CustomApiDefinition>\n > {\n return await this.allMicroAppApiOrchestrationPromise;\n }\n\n private async loadMicroAppApiOrchestration(\n usedCustomApis: CustomApiInfo[]\n ): Promise<Map<string, CustomApiDefinition>> {\n const allMicroAppApiOrchestrationMap: Map<string, CustomApiDefinition> =\n new Map();\n const legacyCustomApis = usedCustomApis.filter(\n (item) => !item.name.includes(\":\")\n );\n if (legacyCustomApis.length) {\n try {\n const allMicroAppApiOrchestration = (\n await InstanceApi_postSearch(\"MICRO_APP_API_ORCHESTRATION\", {\n page: 1,\n page_size: legacyCustomApis.length,\n fields: {\n name: true,\n namespace: true,\n contract: true,\n config: true,\n type: true,\n },\n query: {\n $or: legacyCustomApis,\n },\n })\n ).list as CustomApiDefinition[];\n for (const api of allMicroAppApiOrchestration) {\n allMicroAppApiOrchestrationMap.set(\n `${api.namespace}@${api.name}`,\n api\n );\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(\"Load legacy custom api error:\", error);\n }\n }\n return allMicroAppApiOrchestrationMap;\n }\n\n loadMagicBrickConfigAsync(): void {\n if (!this.loadMagicBrickConfigStarted) {\n this.loadMagicBrickConfigStarted = true;\n this.allMagicBrickConfigMapPromise = this.loadMagicBrickConfig();\n }\n }\n\n private async loadMagicBrickConfig(): Promise<Map<string, MagicBrickConfig>> {\n const allMagicBrickConfigMap: Map<string, MagicBrickConfig> = new Map();\n try {\n const allMagicBrickConfig = (\n await InstanceApi_postSearch(\"_BRICK_MAGIC\", {\n page: 1,\n // TODO(Lynette): 暂时设置3000,待后台提供全量接口\n page_size: 3000,\n fields: {\n \"*\": true,\n },\n })\n ).list as MagicBrickConfig[];\n for (const config of allMagicBrickConfig) {\n allMagicBrickConfigMap.set(config.selector, config);\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(\"Load magic brick config error:\", error);\n }\n return allMagicBrickConfigMap;\n }\n\n private loadRelatedAppsAsync(): void {\n this.allRelatedAppsPromise = this.loadRelatedApps();\n }\n\n private async loadRelatedApps(): Promise<RelatedApp[]> {\n let relatedApps: RelatedApp[] = [];\n try {\n relatedApps = (await ObjectMicroAppApi_getObjectMicroAppList()).list;\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(\"Load related apps error:\", error);\n }\n return relatedApps;\n }\n\n async getRelatedAppsAsync(appId: string): Promise<RelatedApp[]> {\n if (!appId) {\n return [];\n }\n const allRelatedApps = await this.allRelatedAppsPromise;\n const thisApp = allRelatedApps.find((item) => item.microAppId === appId);\n if (!thisApp) {\n return [];\n }\n return sortBy(\n allRelatedApps.filter((item) => item.objectId === thisApp.objectId),\n [\"order\"]\n );\n }\n\n async updateWorkspaceStack(): Promise<void> {\n if (this.currentApp && this.currentApp.id) {\n const workspace: VisitedWorkspace = {\n appId: this.currentApp.id,\n appName: this.currentApp.name,\n appLocaleName: this.currentApp.localeName,\n url: this.currentUrl,\n };\n if (this.workspaceStack.length > 0) {\n const previousWorkspace =\n this.workspaceStack[this.workspaceStack.length - 1];\n const relatedApps = await this.getRelatedAppsAsync(\n previousWorkspace.appId\n );\n if (\n relatedApps.some((item) => item.microAppId === this.currentApp.id)\n ) {\n Object.assign(previousWorkspace, workspace);\n return;\n }\n }\n\n const relatedApps = await this.getRelatedAppsAsync(this.currentApp.id);\n if (relatedApps.length > 0) {\n this.workspaceStack.push(workspace);\n return;\n }\n }\n this.workspaceStack = [];\n }\n\n getPreviousWorkspace(): VisitedWorkspace {\n if (this.workspaceStack.length > 1) {\n return this.workspaceStack[this.workspaceStack.length - 2];\n }\n }\n\n popWorkspaceStack(): void {\n this.workspaceStack.pop();\n }\n\n getRecentApps(): RecentApps {\n return {\n previousApp: this.previousApp,\n currentApp: this.currentApp,\n previousWorkspace: this.getPreviousWorkspace(),\n };\n }\n\n getFeatureFlags(): FeatureFlags {\n return Object.assign({}, this.bootstrapData?.settings?.featureFlags);\n }\n\n getStandaloneMenus(menuId: string): MenuRawData[] {\n const currentAppId = this.currentApp.id;\n const currentStoryboard = this.bootstrapData.storyboards.find(\n (storyboard) => storyboard.app.id === currentAppId\n );\n return (cloneDeep(currentStoryboard.meta?.menus) ?? [])\n .filter((menu) => menu.menuId === menuId)\n .map((menu) => ({\n ...menu,\n app: [{ appId: currentAppId }],\n }));\n }\n\n async getProviderBrick(provider: string): Promise<HTMLElement> {\n if (isCustomApiProvider(provider)) {\n provider = CUSTOM_API_PROVIDER;\n }\n\n if (this.providerRepository.has(provider)) {\n return this.providerRepository.get(provider);\n }\n\n if (provider === CUSTOM_API_PROVIDER && !customElements.get(provider)) {\n registerCustomApi();\n }\n\n await this.loadDynamicBricks([provider]);\n\n if (!customElements.get(provider)) {\n throw new Error(`Provider not defined: \"${provider}\".`);\n }\n const brick = document.createElement(provider);\n this.providerRepository.set(provider, brick);\n return brick;\n }\n}\n\n// Since `@next-dll/editor-bricks-helper` depends on `@next-dll/react-dnd`,\n// always load react-dnd before loading editor-bricks-helper.\nasync function loadScriptOfDll(dlls: string[]): Promise<void> {\n if (dlls.some((dll) => dll.startsWith(\"dll-of-editor-bricks-helper.\"))) {\n const dllPath = window.DLL_PATH || {};\n await loadScript(dllPath[\"react-dnd\"], window.CORE_ROOT);\n }\n // `loadScript` is auto cached, no need to filter out `react-dnd`.\n await loadScript(dlls, window.CORE_ROOT);\n}\n\nfunction loadScriptOfBricksOrTemplates(src: string[]): Promise<unknown> {\n return loadScript(src, window.PUBLIC_ROOT);\n}\n\nfunction generateColorTheme(theme: ThemeSetting): void {\n if (!theme) {\n return;\n } else if (theme.brandColor as ColorThemeOptionsByBrand) {\n applyColorTheme({\n type: \"brandColor\",\n ...theme.brandColor,\n });\n } else if (theme.baseColors as ColorThemeOptionsByBaseColors) {\n applyColorTheme({\n type: \"baseColors\",\n ...theme.baseColors,\n });\n } else if (theme.variables as ColorThemeOptionsByVariables) {\n applyColorTheme({\n type: \"variables\",\n ...theme.variables,\n });\n }\n}\n","/** @internal */\n\n/** @internal */\n\n/** @internal */\nvar BrickEvent;\n/** @internal */\n\n(function (BrickEvent) {\n BrickEvent[\"READ_SORTING_CHANGE\"] = \"read.sorting.change\";\n BrickEvent[\"READ_SEARCH_CHANGE\"] = \"read.search.change\";\n BrickEvent[\"READ_ADVANCED_SEARCH_CHANGE\"] = \"read.advancedSearch.change\";\n BrickEvent[\"READ_PAGINATION_CHANGE\"] = \"read.pagination.change\";\n BrickEvent[\"READ_SELECTION_CHANGE\"] = \"read.selection.change\";\n BrickEvent[\"READ_RELATED_TO_ME_CHANGE\"] = \"read.relatedToMe.change\";\n BrickEvent[\"READ_ALIVE_HOSTS_CHANGE\"] = \"read.alive.hosts.change\";\n BrickEvent[\"READ_CATEGORY_CHANGE\"] = \"read.category.change\";\n BrickEvent[\"READ_MULTIPLE_CLICK_ITEM\"] = \"read.multiple.clickItem\";\n BrickEvent[\"READ_MULTIPLE_CREATE\"] = \"read.multiple.create\";\n BrickEvent[\"CREATE_SINGLE_SUCCESS\"] = \"create.single.success\";\n BrickEvent[\"CREATE_SINGLE_FAILED\"] = \"create.single.failed\";\n BrickEvent[\"CREATE_SINGLE_CANCELED\"] = \"create.single.canceled\";\n BrickEvent[\"CREATE_SINGLE_NEXT\"] = \"create.single.next\";\n BrickEvent[\"CREATE_SINGLE_SELECT\"] = \"create.single.select\";\n BrickEvent[\"UPDATE_SINGLE_SUCCESS\"] = \"update.single.success\";\n BrickEvent[\"UPDATE_SINGLE_FAILED\"] = \"update.single.failed\";\n BrickEvent[\"UPDATE_SINGLE_CANCELED\"] = \"update.single.canceled\";\n BrickEvent[\"DELETE_SINGLE_SUCCESS\"] = \"delete.single.success\";\n BrickEvent[\"DELETE_SINGLE_FAILED\"] = \"delete.single.failed\";\n BrickEvent[\"DELETE_SINGLE_CANCELED\"] = \"delete.single.canceled\";\n BrickEvent[\"CREATE_MULTI_SUCCESS\"] = \"create.multi.success\";\n BrickEvent[\"CREATE_MULTI_FAILED\"] = \"create.multi.failed\";\n BrickEvent[\"CREATE_MULTI_CANCELED\"] = \"create.multi.canceled\";\n BrickEvent[\"DELETE_MULTI_SUCCESS\"] = \"delete.multi.success\";\n BrickEvent[\"DELETE_MULTI_CANCELED\"] = \"delete.multi.canceled\";\n BrickEvent[\"UPDATE_MULTI_SUCCESS\"] = \"update.multi.success\";\n BrickEvent[\"UPDATE_MULTI_CANCELED\"] = \"update.multi.canceled\";\n BrickEvent[\"UPDATE_MULTI_FAILED\"] = \"update.multi.failed\";\n BrickEvent[\"UPDATE_SINGLE_SELECT\"] = \"update.single.select\";\n BrickEvent[\"UPDATE_SINGLE_SELECTED\"] = \"update.single.selected\";\n BrickEvent[\"READ_CARD_LEFT_BTN_CLICK\"] = \"read.card.leftBtn.click\";\n BrickEvent[\"READ_CARD_RIGHT_BTN_CLICK\"] = \"read.card.rightBtn.click\";\n})(BrickEvent || (BrickEvent = {}));\n\n/** @internal */\nvar PropertyDisplayType;\n/** @internal */\n\n(function (PropertyDisplayType) {\n PropertyDisplayType[\"Tag\"] = \"tag\";\n})(PropertyDisplayType || (PropertyDisplayType = {}));\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/**\n * 特性开关字典。\n *\n * @example\n *\n * ```json\n * {\n * \"next-builder-dynamic-menu\": true\n * }\n * ```\n */\n\n/**\n * 微应用基本信息。\n */\n\n/**\n * 页面整体布局类型。\n */\n\n/**\n * 应用的基本信息的本地化配置。\n *\n * @example\n *\n * ```yaml\n * zh:\n * name: 搜索\n * en:\n * name: Search\n * ```\n */\n\n/**\n * 应用的单个地域的本地化配置。\n */\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/**\n * 应用的 Storyboard 配置。\n */\n\n/** @internal */\nfunction isRouteConfOfBricks(conf) {\n return conf.type !== \"routes\" && !!conf.bricks;\n}\nfunction isRouteConfOfRoutes(conf) {\n return conf.type === \"routes\";\n}\n/**\n * 路由配置,类型可以是构件列表、子路由列表和重定向中的一种。\n */\n\nexport { BrickEvent, PropertyDisplayType, isRouteConfOfBricks, isRouteConfOfRoutes };\n//# sourceMappingURL=index.esm.js.map\n","import type { RuntimeMisc } from \"@next-core/brick-types\";\nimport { getBasePath } from \"./getBasePath\";\n\nlet misc: RuntimeMisc;\n\nexport function getRuntimeMisc(): RuntimeMisc {\n if (!misc) {\n misc = {\n isInIframe: false,\n isInIframeOfSameSite: false,\n isInIframeOfNext: false,\n isInIframeOfVisualBuilder: false,\n isInIframeOfLegacyConsole: false,\n };\n\n if (window !== window.parent) {\n misc.isInIframe = true;\n try {\n // Handle:\n // - Previewing in visual builder by iframe.\n // - Nesting next in next.\n // - Nesting console in next.\n if (window.origin === window.parent.origin) {\n misc.isInIframeOfSameSite = true;\n const selfIsNext = getBasePath() === \"/next/\";\n const parentPathname = window.parent.location.pathname;\n const parentIsNext = parentPathname.startsWith(\"/next/\");\n misc.isInIframeOfNext =\n (Number(selfIsNext) ^ Number(parentIsNext)) === 0;\n misc.isInIframeOfVisualBuilder = parentPathname.startsWith(\n `${parentIsNext ? \"/next\" : \"\"}/visual-builder/`\n );\n misc.isInIframeOfLegacyConsole = selfIsNext && !parentIsNext;\n }\n } catch (e) {\n // do nothing\n }\n }\n\n Object.freeze(misc);\n }\n\n return misc;\n}\n","import {\n BrickConf,\n RouteConf,\n RouteConfOfBricks,\n Storyboard,\n} from \"@next-core/brick-types\";\nimport { isObject } from \"@next-core/brick-utils\";\n\nexport type SubStoryboardMatcher = (routes: RouteConf[]) => RouteConf[];\n\nexport function getSubStoryboardByRoute(\n storyboard: Storyboard,\n matcher: SubStoryboardMatcher\n): Storyboard {\n function getSubRoutes(routes: RouteConf[]): RouteConf[] {\n return matcher(routes).map(getSubRoute);\n }\n\n function getSubRoute(route: RouteConf): RouteConf {\n if (route.type === \"routes\") {\n return {\n ...route,\n routes: getSubRoutes(route.routes),\n };\n }\n return {\n ...route,\n bricks: getSubBricks((route as RouteConfOfBricks).bricks),\n } as RouteConfOfBricks;\n }\n\n function getSubBricks(bricks: BrickConf[]): BrickConf[] {\n if (Array.isArray(bricks)) {\n return bricks.map((brickConf) => getSubBrick(brickConf));\n }\n return bricks;\n }\n\n function getSubBrick(brickConf: BrickConf): BrickConf {\n if (isObject(brickConf.slots)) {\n return {\n ...brickConf,\n slots: Object.fromEntries(\n Object.entries(brickConf.slots).map(([slotId, slotConf]) => {\n if (slotConf.type === \"routes\") {\n return [\n slotId,\n {\n ...slotConf,\n routes: getSubRoutes(slotConf.routes),\n },\n ];\n } /* istanbul ignore else: should never reach */ else if (\n slotConf.type === \"bricks\"\n ) {\n return [\n slotId,\n {\n ...slotConf,\n bricks: getSubBricks(slotConf.bricks),\n },\n ];\n }\n /* istanbul ignore next: should never reach */\n return [slotId, slotConf];\n })\n ),\n };\n }\n return brickConf;\n }\n\n return {\n ...storyboard,\n routes: getSubRoutes(storyboard.routes),\n };\n}\n","import {\n PluginRuntimeContext,\n StoryboardContextItemFreeVariable,\n} from \"@next-core/brick-types\";\nimport { setProperties } from \"./setProperties\";\nimport { RuntimeBrick } from \"../core/BrickNode\";\nimport { getCustomTemplateContext } from \"../core/CustomTemplates/CustomTemplateContext\";\n\nexport interface TrackingContextItem {\n contextNames: string[] | false;\n stateNames: string[] | false;\n propName: string;\n propValue: string;\n}\n\nexport function listenOnTrackingContext(\n brick: RuntimeBrick,\n trackingContextList: TrackingContextItem[],\n context: PluginRuntimeContext\n): void {\n for (const track of trackingContextList) {\n const listener = (): void => {\n if (brick.element) {\n setProperties(\n brick.element,\n { [track.propName]: track.propValue },\n context,\n true\n );\n }\n };\n if (track.contextNames) {\n for (const contextName of track.contextNames) {\n const ctx = context.storyboardContext.get(contextName);\n (\n ctx as StoryboardContextItemFreeVariable\n )?.eventTarget?.addEventListener(\"context.change\", listener);\n }\n }\n if (track.stateNames) {\n const tplContext = getCustomTemplateContext(context.tplContextId);\n for (const stateName of track.stateNames) {\n const ctx = tplContext.state.get().get(stateName);\n (\n ctx as StoryboardContextItemFreeVariable\n )?.eventTarget?.addEventListener(\"state.change\", listener);\n }\n }\n }\n}\n","import { omit, orderBy, set } from \"lodash\";\nimport {\n PluginLocation,\n MatchResult,\n RouteConf,\n RuntimeStoryboard,\n BrickConf,\n PluginHistoryState,\n SidebarMenu,\n SidebarSubMenu,\n MenuConf,\n BreadcrumbItemConf,\n MicroApp,\n ProviderConf,\n PluginRuntimeContext,\n BrickEventHandler,\n ResolveConf,\n StaticMenuProps,\n SeguesConf,\n MessageConf,\n BrickLifeCycle,\n Storyboard,\n StaticMenuConf,\n isRouteConfOfBricks,\n isRouteConfOfRoutes,\n} from \"@next-core/brick-types\";\nimport {\n isObject,\n matchPath,\n computeRealRoutePath,\n hasOwnProperty,\n scanAppGetMenuInAny,\n} from \"@next-core/brick-utils\";\nimport { Action, Location } from \"history\";\nimport { listenerFactory } from \"../internal/bindListeners\";\nimport {\n computeRealProperties,\n computeRealValue,\n} from \"../internal/setProperties\";\nimport { isLoggedIn, getAuth } from \"../auth\";\nimport { getHistory } from \"../history\";\nimport {\n RuntimeBrick,\n Kernel,\n appendBrick,\n Resolver,\n asyncExpandCustomTemplate,\n MountableElement,\n getTagNameOfCustomTemplate,\n symbolForComputedPropsFromProxy,\n symbolForRefForProxy,\n symbolForTplContextId,\n ResolveRequestError,\n RuntimeBrickConfWithTplSymbols,\n} from \"./exports\";\nimport { RedirectConf } from \"./interfaces\";\nimport { looseCheckIf, IfContainer } from \"../checkIf\";\nimport { getMessageDispatcher, MessageDispatcher } from \"./MessageDispatcher\";\nimport { getRuntimeMisc } from \"../internal/misc\";\nimport { httpErrorToString } from \"../handleHttpError\";\nimport {\n getSubStoryboardByRoute,\n SubStoryboardMatcher,\n} from \"../internal/getSubStoryboardByRoute\";\nimport { validatePermissions } from \"../internal/checkPermissions\";\nimport {\n listenOnTrackingContext,\n TrackingContextItem,\n} from \"../internal/listenOnTrackingContext\";\nimport { StoryboardContextWrapper } from \"./StoryboardContext\";\nimport { constructMenuByMenusList } from \"../internal/menu\";\nimport { Media } from \"../internal/mediaQuery\";\nimport { getReadOnlyProxy } from \"../internal/proxyFactories\";\nimport { customTemplateRegistry } from \"./CustomTemplates/constants\";\nimport { CustomTemplate } from \"../../../brick-types/dist/types/manifest\";\n\nexport type MatchRoutesResult =\n | {\n match: MatchResult;\n route: RouteConf;\n }\n | \"missed\"\n | \"unauthenticated\";\n\nexport interface NavConfig {\n breadcrumb: BreadcrumbItemConf[];\n menu: Partial<SidebarMenu>;\n subMenu: Partial<SidebarMenu>;\n}\n\nexport interface MountRoutesResult {\n main: RuntimeBrick[];\n menuInBg: RuntimeBrick[];\n menuBar: {\n menu?: Partial<SidebarMenu>;\n subMenu?: Partial<SidebarSubMenu>;\n menuId?: string;\n subMenuId?: string;\n };\n portal: RuntimeBrick[];\n appBar: {\n pageTitle?: string;\n breadcrumb: BreadcrumbItemConf[];\n documentId?: string;\n noCurrentApp?: boolean;\n };\n flags: {\n unauthenticated?: boolean;\n redirect?: {\n path: string;\n state?: PluginHistoryState;\n };\n barsHidden?: boolean;\n hybrid?: boolean;\n failed?: boolean;\n };\n route?: RouteConf;\n analyticsData?: Record<string, unknown>;\n}\n\ninterface BrickAndLifeCycleHandler {\n brick: RuntimeBrick;\n match: MatchResult;\n tplContextId?: string;\n handler: BrickEventHandler | BrickEventHandler[];\n}\n\nexport interface BrickAndMessage {\n brick: RuntimeBrick;\n match: MatchResult;\n tplContextId?: string;\n message: MessageConf | MessageConf[];\n}\n\nexport class LocationContext {\n private readonly query: URLSearchParams;\n readonly resolver: Resolver;\n readonly messageDispatcher: MessageDispatcher;\n private readonly beforePageLoadHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly pageLoadHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly beforePageLeaveHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly pageLeaveHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly anchorLoadHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly anchorUnloadHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly mediaChangeHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly messageCloseHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly messageHandlers: BrickAndMessage[] = [];\n private readonly segues: SeguesConf = {};\n private currentMatch: MatchResult;\n readonly storyboardContextWrapper = new StoryboardContextWrapper();\n\n constructor(private kernel: Kernel, private location: PluginLocation) {\n this.resolver = new Resolver(kernel);\n this.query = new URLSearchParams(location.search);\n this.messageDispatcher = getMessageDispatcher();\n }\n\n private getContext({\n match,\n tplContextId,\n }: {\n match: MatchResult;\n tplContextId?: string;\n }): PluginRuntimeContext {\n const auth = getAuth();\n const context: PluginRuntimeContext = {\n hash: this.location.hash,\n pathname: this.location.pathname,\n query: this.query,\n match,\n app: this.kernel.nextApp,\n sys: {\n org: auth.org,\n username: auth.username,\n userInstanceId: auth.userInstanceId,\n loginFrom: auth.loginFrom,\n accessRule: auth.accessRule,\n isAdmin: auth.isAdmin,\n ...getRuntimeMisc(),\n },\n flags: this.kernel.getFeatureFlags(),\n segues: this.segues,\n storyboardContext: this.storyboardContextWrapper.get(),\n tplContextId,\n };\n return context;\n }\n\n getCurrentContext(): PluginRuntimeContext {\n return this.getContext({\n match: this.currentMatch,\n });\n }\n\n private matchRoutes(routes: RouteConf[], app: MicroApp): MatchRoutesResult {\n for (const route of routes) {\n const computedPath = computeRealRoutePath(route.path, app);\n if ([].concat(computedPath).includes(undefined)) {\n // eslint-disable-next-line no-console\n console.error(\"Invalid route with invalid path:\", route);\n return \"missed\";\n }\n const match = matchPath(this.location.pathname, {\n path: computedPath,\n exact: route.exact,\n });\n if (match !== null) {\n if (app.noAuthGuard || route.public || isLoggedIn()) {\n this.currentMatch = match;\n return { match, route };\n }\n return \"unauthenticated\";\n }\n }\n return \"missed\";\n }\n\n matchStoryboard(storyboards: RuntimeStoryboard[]): RuntimeStoryboard {\n if (window.STANDALONE_MICRO_APPS && storyboards.length === 1) {\n return storyboards[0];\n }\n // Put apps with longer homepage before shorter ones.\n // E.g., `/legacy/tool` will match first before `/legacy`.\n // This enables two apps with relationship of parent-child of homepage.\n const sortedStoryboards = orderBy(\n storyboards,\n (storyboard) => storyboard.app?.homepage?.length ?? 0,\n \"desc\"\n );\n for (const storyboard of sortedStoryboards) {\n const homepage = storyboard.app?.homepage;\n if (typeof homepage === \"string\" && homepage[0] === \"/\") {\n if (\n matchPath(this.location.pathname, {\n path: homepage,\n exact: homepage === \"/\",\n })\n ) {\n return storyboard;\n }\n }\n }\n }\n\n getSubStoryboardByRoute(storyboard: Storyboard): Storyboard {\n const matcher: SubStoryboardMatcher = (routes) => {\n const matched = this.matchRoutes(routes, storyboard.app);\n return isObject(matched) ? [matched.route] : [];\n };\n return getSubStoryboardByRoute(storyboard, matcher);\n }\n\n async mountRoutes(\n routes: RouteConf[],\n slotId?: string,\n mountRoutesResult?: MountRoutesResult\n ): Promise<MountRoutesResult> {\n const matched = this.matchRoutes(routes, this.kernel.nextApp);\n let redirect: string | ResolveConf;\n const redirectConf: RedirectConf = {};\n let context: PluginRuntimeContext;\n let route: RouteConf;\n switch (matched) {\n case \"missed\":\n break;\n case \"unauthenticated\":\n mountRoutesResult.flags.unauthenticated = true;\n break;\n default:\n mountRoutesResult.route = route = matched.route;\n if (route.segues) {\n Object.assign(this.segues, route.segues);\n }\n if (route.hybrid) {\n mountRoutesResult.flags.hybrid = true;\n }\n context = this.getContext({ match: matched.match });\n this.resolver.defineResolves(route.defineResolves, context);\n await this.mountProviders(\n route.providers,\n matched.match,\n slotId,\n mountRoutesResult\n );\n\n await this.storyboardContextWrapper.define(route.context, context);\n await this.preCheckPermissions(route, context);\n\n redirect = computeRealValue(route.redirect, context, true) as\n | string\n | ResolveConf;\n\n if (redirect) {\n if (typeof redirect === \"string\") {\n // Directly redirect.\n mountRoutesResult.flags.redirect = {\n path: redirect,\n };\n break;\n } else {\n // Resolvable redirect.\n await this.resolver.resolveOne(\"reference\", redirect, redirectConf);\n if (redirectConf.redirect) {\n mountRoutesResult.flags.redirect = {\n path: redirectConf.redirect,\n };\n break;\n }\n }\n }\n\n await this.mountMenu(route.menu, matched.match, mountRoutesResult);\n\n if (route.documentId) {\n mountRoutesResult.appBar.documentId = route.documentId;\n }\n\n if (isRouteConfOfRoutes(route) && Array.isArray(route.routes)) {\n await this.preFetchMenu(route.context);\n await this.mountRoutes(route.routes, slotId, mountRoutesResult);\n } else if (isRouteConfOfBricks(route) && Array.isArray(route.bricks)) {\n await this.preFetchMenu(route);\n await this.mountBricks(\n route.bricks,\n matched.match,\n slotId,\n mountRoutesResult\n );\n\n // analytics data (page_view event)\n if (route.analyticsData) {\n mountRoutesResult.analyticsData = computeRealValue(\n route.analyticsData,\n context,\n true\n ) as Record<string, unknown>;\n }\n }\n }\n return mountRoutesResult;\n }\n\n private async mountMenu(\n menuConf: MenuConf,\n match: MatchResult,\n mountRoutesResult: MountRoutesResult\n ): Promise<void> {\n if (menuConf === false) {\n // `route.menu` 设置为 `false` 表示不显示顶栏和侧栏。\n mountRoutesResult.flags.barsHidden = true;\n return;\n }\n\n // `route.menu` 留空表示不做处理。\n if (!menuConf) {\n return;\n }\n\n const context = this.getContext({ match });\n\n if (menuConf.type === \"brick\") {\n // eslint-disable-next-line no-console\n console.warn(\n \"menu type `brick` is deprecated, please use menu type `resolve` instead\"\n );\n // 如果某个路由的菜单无法配置为静态的 json,\n // 那么可以将菜单配置指定为一个构件,这个构件会被装载到背景容器中(不会在界面中显示),\n // 应该在这个构件的 `connectedCallback` 中执行相关菜单设置,\n // 例如 `getRuntime().menuBar.setAppMenu(...)`。\n const brick: RuntimeBrick = {\n type: menuConf.brick,\n properties: computeRealProperties(\n menuConf.properties,\n context,\n menuConf.injectDeep !== false\n ),\n events: isObject(menuConf.events) ? menuConf.events : {},\n context,\n children: [],\n };\n\n this.registerHandlersFromLifeCycle(menuConf.lifeCycle, brick, match);\n\n // Then, resolve the brick.\n await this.resolver.resolve(menuConf, brick, context);\n\n mountRoutesResult.menuInBg.push(brick);\n return;\n }\n\n let injectDeep = (menuConf as StaticMenuProps).injectDeep;\n if (menuConf.type === \"resolve\") {\n await this.resolver.resolveOne(\n \"reference\",\n {\n transformMapArray: false,\n ...menuConf.resolve,\n },\n menuConf,\n null,\n context\n );\n injectDeep = false;\n }\n\n // 静态菜单配置,仅在有值时才设置,这样可以让菜单设置也具有按路由层级覆盖的能力。\n const otherMenuConf = omit(menuConf, [\"injectDeep\", \"type\"]);\n const injectedMenuConf =\n injectDeep !== false\n ? computeRealValue(otherMenuConf, context, true)\n : otherMenuConf;\n const { sidebarMenu, pageTitle, breadcrumb, menuId, subMenuId } =\n injectedMenuConf as StaticMenuConf;\n\n if (menuId) {\n mountRoutesResult.menuBar.menuId = menuId;\n mountRoutesResult.menuBar.menu = sidebarMenu;\n } else if (sidebarMenu) {\n mountRoutesResult.menuBar.menu = sidebarMenu;\n mountRoutesResult.menuBar.menuId = null;\n }\n if (subMenuId) {\n mountRoutesResult.menuBar.subMenuId = subMenuId;\n }\n if (pageTitle) {\n mountRoutesResult.appBar.pageTitle = pageTitle;\n }\n if (breadcrumb) {\n if (breadcrumb.overwrite) {\n mountRoutesResult.appBar.breadcrumb = breadcrumb.items;\n } else {\n mountRoutesResult.appBar.breadcrumb = [\n ...mountRoutesResult.appBar.breadcrumb,\n ...breadcrumb.items,\n ];\n }\n if (hasOwnProperty(breadcrumb, \"noCurrentApp\"))\n mountRoutesResult.appBar.noCurrentApp = breadcrumb.noCurrentApp;\n }\n }\n\n private async mountProviders(\n providers: ProviderConf[],\n match: MatchResult,\n slotId: string,\n mountRoutesResult: MountRoutesResult\n ): Promise<void> {\n if (Array.isArray(providers)) {\n for (const providerConf of providers) {\n await this.mountBrick(\n {\n ...(typeof providerConf === \"string\"\n ? {\n brick: providerConf,\n }\n : providerConf),\n bg: true,\n injectDeep: true,\n },\n match,\n slotId,\n mountRoutesResult\n );\n }\n }\n }\n\n private async mountBricks(\n bricks: BrickConf[],\n match: MatchResult,\n slotId: string,\n mountRoutesResult: MountRoutesResult,\n tplStack?: string[]\n ): Promise<void> {\n for (const brickConf of bricks) {\n try {\n await this.mountBrick(\n brickConf,\n match,\n slotId,\n mountRoutesResult,\n tplStack?.slice()\n );\n } catch (error) {\n if (error instanceof ResolveRequestError) {\n const errorMessage = httpErrorToString(error.rawError);\n const brickName = brickConf.template || brickConf.brick;\n const isLegacyTemplate = !!brickConf.template;\n mountRoutesResult.main.push({\n type: \"basic-bricks.brick-error\",\n properties: {\n // `textContent` is for compatibility when\n // `basic-bricks.brick-error` does not exists.\n textContent: `${\n isLegacyTemplate ? \"Legacy template\" : \"Brick\"\n } <${brickName}> ResolveRequestError: \"${errorMessage}\"`,\n errorType: \"ResolveRequestError\",\n errorMessage,\n brickName,\n isLegacyTemplate,\n },\n events: {},\n slotId,\n });\n } else {\n throw error;\n }\n }\n }\n }\n\n private async checkResolvableIf(\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n ): Promise<boolean> {\n if (isObject(ifContainer.if)) {\n const ifChecked = computeRealValue(ifContainer.if, context, true);\n\n const ifConf: IfContainer = {};\n await this.resolver.resolveOne(\n \"reference\",\n ifChecked as ResolveConf,\n ifConf\n );\n return !hasOwnProperty(ifConf, \"if\") || !!ifConf.if;\n }\n\n return looseCheckIf(ifContainer, context);\n }\n\n private async preCheckPermissions(\n container: BrickConf | RouteConf,\n context: PluginRuntimeContext\n ): Promise<void> {\n if (\n isLoggedIn() &&\n !getAuth().isAdmin &&\n container.permissionsPreCheck &&\n Array.isArray(container.permissionsPreCheck)\n ) {\n const usedActions = computeRealValue(\n container.permissionsPreCheck,\n context,\n true\n );\n await validatePermissions(usedActions as string[]);\n }\n }\n\n async mountBrick(\n brickConf: BrickConf,\n match: MatchResult,\n slotId: string,\n mountRoutesResult: MountRoutesResult,\n tplStack: string[] = []\n ): Promise<void> {\n const tplContextId = (brickConf as RuntimeBrickConfWithTplSymbols)[\n symbolForTplContextId\n ];\n const context = this.getContext({\n match,\n tplContextId,\n });\n\n // First, check whether the brick should be rendered.\n if (!(await this.checkResolvableIf(brickConf, context))) {\n return;\n }\n\n // Then, resolve the template to a brick.\n if (brickConf.template) {\n await this.resolver.resolve(brickConf, null, context);\n }\n\n // Check `if` again for dynamic loaded templates.\n if (!(await this.checkResolvableIf(brickConf, context))) {\n return;\n }\n\n // If it's a custom template, `tplTagName` is the tag name of the template.\n // Otherwise, `tplTagName` is false.\n const tplTagName = getTagNameOfCustomTemplate(\n brickConf.brick,\n this.kernel.nextApp?.id\n );\n\n if (tplTagName) {\n if (tplStack.includes(tplTagName)) {\n throw new Error(`Circular custom template: \"${tplTagName}\"`);\n }\n tplStack.push(tplTagName);\n }\n\n const brick: RuntimeBrick = {};\n\n await this.storyboardContextWrapper.define(\n brickConf.context,\n context,\n brick\n );\n await this.preCheckPermissions(brickConf, context);\n\n const trackingContextList: TrackingContextItem[] = [];\n\n Object.assign(brick, {\n type: tplTagName || brickConf.brick,\n properties: computeRealProperties(\n brickConf.properties,\n context,\n brickConf.injectDeep !== false,\n trackingContextList\n ),\n events: isObject(brickConf.events) ? brickConf.events : {},\n context,\n children: [],\n slotId,\n refForProxy: (brickConf as RuntimeBrickConfWithTplSymbols)[\n symbolForRefForProxy\n ],\n tplContextId,\n iid: brickConf.iid,\n });\n\n if (\n (brickConf as RuntimeBrickConfWithTplSymbols)[\n symbolForComputedPropsFromProxy\n ]\n ) {\n Object.entries(\n (brickConf as RuntimeBrickConfWithTplSymbols)[\n symbolForComputedPropsFromProxy\n ]\n ).forEach(([propName, propValue]) => {\n set(brick.properties, propName, propValue);\n });\n }\n\n listenOnTrackingContext(brick, trackingContextList, context);\n\n if (brick.refForProxy) {\n brick.refForProxy.brick = brick;\n }\n\n this.registerHandlersFromLifeCycle(\n brickConf.lifeCycle,\n brick,\n match,\n tplContextId\n );\n\n // Then, resolve the brick.\n await this.resolver.resolve(brickConf, brick, context);\n\n let expandedBrickConf = brickConf;\n if (tplTagName) {\n await this.preFetchMenu(customTemplateRegistry.get(tplTagName)?.bricks);\n expandedBrickConf = await asyncExpandCustomTemplate(\n {\n ...brickConf,\n brick: tplTagName,\n // Properties are computed for custom templates.\n properties: brick.properties,\n },\n brick,\n context\n );\n\n // Try to load deps for dynamic added bricks.\n await this.kernel.loadDynamicBricksInBrickConf(expandedBrickConf);\n }\n\n if (expandedBrickConf.exports) {\n for (const [prop, ctxName] of Object.entries(expandedBrickConf.exports)) {\n if (typeof ctxName === \"string\" && ctxName.startsWith(\"CTX.\")) {\n this.storyboardContextWrapper.set(ctxName.substr(4), {\n type: \"brick-property\",\n brick,\n prop,\n });\n }\n }\n }\n\n if (expandedBrickConf.bg) {\n // A bg brick has no slotId.\n brick.slotId = undefined;\n appendBrick(brick, this.kernel.mountPoints.bg as MountableElement);\n } else {\n if (expandedBrickConf.portal) {\n // A portal brick has no slotId.\n brick.slotId = undefined;\n // Make parent portal bricks appear before child bricks.\n // This makes z-index of a child brick be higher than its parent.\n mountRoutesResult.portal.push(brick);\n }\n if (isObject(expandedBrickConf.slots)) {\n for (const [slotId, slotConf] of Object.entries(\n expandedBrickConf.slots\n )) {\n const slottedMountRoutesResult = {\n ...mountRoutesResult,\n main: brick.children,\n };\n if (slotConf.type === \"bricks\") {\n await this.mountBricks(\n slotConf.bricks,\n match,\n slotId,\n slottedMountRoutesResult,\n tplStack\n );\n } else if (slotConf.type === \"routes\") {\n await this.mountRoutes(\n slotConf.routes,\n slotId,\n slottedMountRoutesResult\n );\n }\n }\n }\n if (!expandedBrickConf.portal) {\n mountRoutesResult.main.push(brick);\n }\n }\n }\n\n private registerHandlersFromLifeCycle(\n lifeCycle: BrickLifeCycle,\n brick: RuntimeBrick,\n match: MatchResult,\n tplContextId?: string\n ): void {\n const {\n onBeforePageLoad,\n onPageLoad,\n onBeforePageLeave,\n onPageLeave,\n onAnchorLoad,\n onAnchorUnload,\n onMediaChange,\n onMessage,\n onMessageClose,\n } = lifeCycle ?? {};\n\n if (onBeforePageLoad) {\n this.beforePageLoadHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onBeforePageLoad,\n });\n }\n\n if (onPageLoad) {\n this.pageLoadHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onPageLoad,\n });\n }\n\n if (onBeforePageLeave) {\n this.beforePageLeaveHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onBeforePageLeave,\n });\n }\n\n if (onPageLeave) {\n this.pageLeaveHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onPageLeave,\n });\n }\n\n if (onAnchorLoad) {\n this.anchorLoadHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onAnchorLoad,\n });\n }\n\n if (onAnchorUnload) {\n this.anchorUnloadHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onAnchorUnload,\n });\n }\n\n if (onMediaChange) {\n this.mediaChangeHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onMediaChange,\n });\n }\n\n if (onMessage) {\n this.messageHandlers.push({\n brick,\n match,\n tplContextId,\n message: onMessage,\n });\n }\n\n if (onMessageClose) {\n this.messageCloseHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onMessageClose,\n });\n }\n }\n\n handleBeforePageLoad(): void {\n this.dispatchLifeCycleEvent(\n new CustomEvent(\"page.beforeLoad\"),\n this.beforePageLoadHandlers\n );\n }\n\n handlePageLoad(): void {\n const event = new CustomEvent(\"page.load\");\n\n this.dispatchLifeCycleEvent(event, this.pageLoadHandlers);\n\n // Currently only for e2e testing\n window.dispatchEvent(event);\n }\n\n handleBeforePageLeave(detail: {\n location?: Location<PluginHistoryState>;\n action?: Action;\n }): void {\n this.dispatchLifeCycleEvent(\n new CustomEvent(\"page.beforeLeave\", {\n detail,\n }),\n this.beforePageLeaveHandlers\n );\n }\n\n handlePageLeave(): void {\n this.dispatchLifeCycleEvent(\n new CustomEvent(\"page.leave\"),\n this.pageLeaveHandlers\n );\n }\n\n handleAnchorLoad(): void {\n const hash = getHistory().location.hash;\n if (hash && hash !== \"#\") {\n this.dispatchLifeCycleEvent(\n new CustomEvent(\"anchor.load\", {\n detail: {\n hash,\n anchor: hash.substr(1),\n },\n }),\n this.anchorLoadHandlers\n );\n } else {\n this.dispatchLifeCycleEvent(\n new CustomEvent(\"anchor.unload\"),\n this.anchorUnloadHandlers\n );\n }\n }\n\n handleMediaChange(detail: Media): void {\n this.dispatchLifeCycleEvent(\n new CustomEvent(\"media.change\", { detail: getReadOnlyProxy(detail) }),\n this.mediaChangeHandlers\n );\n }\n\n handleMessage(): void {\n this.messageDispatcher.create(\n this.messageHandlers,\n this.getCurrentContext()\n );\n }\n\n handleMessageClose(event: CloseEvent): void {\n this.dispatchLifeCycleEvent(\n new CustomEvent<CloseEvent>(\"message.close\", {\n detail: event,\n }),\n this.messageCloseHandlers\n );\n }\n\n getCurrentMatch(): MatchResult {\n return this.currentMatch;\n }\n\n /** @deprecated */\n getTplContext(): void {\n // Keep it for compatibility only.\n }\n\n private dispatchLifeCycleEvent(\n event: CustomEvent,\n handlers: BrickAndLifeCycleHandler[]\n ): void {\n for (const brickAndHandler of handlers) {\n for (const handler of ([] as BrickEventHandler[]).concat(\n brickAndHandler.handler\n )) {\n listenerFactory(\n handler,\n this.getContext({\n match: brickAndHandler.match,\n tplContextId: brickAndHandler.tplContextId,\n }),\n brickAndHandler.brick\n )(event);\n }\n }\n }\n\n private async preFetchMenu(data: unknown): Promise<void> {\n const useMenus: string[] = scanAppGetMenuInAny(data);\n if (useMenus.length) {\n await constructMenuByMenusList(\n useMenus,\n this.getCurrentContext(),\n this.kernel\n );\n }\n }\n}\n","import { setRealProperties } from \"../internal/setProperties\";\nimport { RuntimeBrick, BrickNode } from \"./exports\";\n\nexport interface MountableElement extends HTMLElement {\n $$rootBricks: BrickNode[];\n}\n\nexport function unmountTree(mountPoint: MountableElement): void {\n if (Array.isArray(mountPoint.$$rootBricks)) {\n mountPoint.$$rootBricks.forEach((brick) => {\n brick.unmount();\n });\n mountPoint.$$rootBricks = [];\n }\n mountPoint.innerHTML = \"\";\n}\n\n// Todo(steve): reconcile.\nexport function mountTree(\n bricks: RuntimeBrick[],\n mountPoint: MountableElement\n): void {\n // Destroy any existing tree\n if (mountPoint.firstChild) {\n unmountTree(mountPoint);\n }\n\n // Create the top-level internal instance\n const rootBricks = bricks.map((brick) => new BrickNode(brick));\n\n // Mount the top-level component into the container\n const nodes = rootBricks.map((brick) => brick.mount());\n nodes.forEach((node) => mountPoint.appendChild(node));\n\n // Save a reference to the internal instance\n mountPoint.$$rootBricks = rootBricks;\n}\n\nexport function afterMountTree(mountPoint: MountableElement): void {\n if (Array.isArray(mountPoint.$$rootBricks)) {\n mountPoint.$$rootBricks.forEach((brick) => {\n brick.afterMount();\n });\n }\n}\n\nexport function mountStaticNode(\n mountPoint: HTMLElement,\n properties: Record<string, any>\n): void {\n setRealProperties(mountPoint, properties);\n}\n\nexport function appendBrick(\n brick: RuntimeBrick,\n mountPoint: MountableElement\n): void {\n const brickNode = new BrickNode(brick);\n mountPoint.appendChild(brickNode.mount());\n if (!mountPoint.$$rootBricks) {\n mountPoint.$$rootBricks = [];\n }\n mountPoint.$$rootBricks.push(brickNode);\n}\n","import { get } from \"lodash\";\nimport {\n GeneralTransform,\n HandleReject,\n HandleRejectByTransform,\n} from \"@next-core/brick-types\";\nimport {\n transformIntermediateData,\n transformElementProperties,\n} from \"../transformProperties\";\nimport { computeRealValue } from \"./setProperties\";\nimport { RuntimeBrick } from \"../core/exports\";\nimport { handleHttpError } from \"../handleHttpError\";\nimport { recursiveMarkAsInjected } from \"./injected\";\n\nexport interface ProviderDependents {\n brick: RuntimeBrick;\n method: string;\n args: any[];\n field?: string | string[];\n transform?: GeneralTransform;\n transformFrom?: string | string[];\n transformMapArray?: boolean | \"auto\";\n onReject?: HandleReject;\n ref?: string;\n intermediateTransform?: GeneralTransform;\n intermediateTransformFrom?: string | string[];\n intermediateTransformMapArray?: boolean | \"auto\";\n}\n\nexport interface IntervalSettings {\n delay: number;\n ignoreErrors?: boolean;\n timeoutId?: any;\n}\n\nexport interface RefreshOptions {\n ignoreErrors?: boolean;\n throwErrors?: boolean;\n $$scheduled?: boolean;\n}\n\nexport interface RefreshableProvider extends Element {\n interval?: IntervalSettings;\n\n // 使用 `$` 作前缀表明这是运行时追加的属性/方法。\n $refresh: (options?: RefreshOptions) => Promise<void>;\n\n // 使用 `$$` 作前缀表明这是运行时追加的内部属性/方法。\n $$dependents: ProviderDependents[];\n\n $clearInterval?: () => void;\n\n $$intervalCleared?: boolean;\n\n [key: string]: any;\n}\n\nexport function makeProviderRefreshable(\n providerBrick: RefreshableProvider\n): void {\n if (!providerBrick.$refresh) {\n // Use a symbol key to make a private property.\n const keyOfIntervalStopped = Symbol(\"intervalStopped\");\n Object.defineProperties(providerBrick, {\n $$dependents: {\n value: [],\n },\n $stopInterval: {\n value: () => {\n (providerBrick as any)[keyOfIntervalStopped] = true;\n },\n },\n // Currently don't support `$restartInterval`.\n // $restartInterval: {\n // value: () => {\n // (providerBrick as any)[keyOfIntervalStopped] = false;\n // }\n // },\n $refresh: {\n value: async function ({\n ignoreErrors,\n throwErrors,\n $$scheduled,\n }: RefreshOptions = {}) {\n if ($$scheduled && (providerBrick as any)[keyOfIntervalStopped]) {\n return;\n }\n const cache = new Map();\n try {\n await Promise.all(\n (this as RefreshableProvider).$$dependents.map(\n async ({\n brick,\n method,\n args,\n field,\n transform,\n transformFrom,\n transformMapArray,\n onReject,\n ref,\n intermediateTransform,\n intermediateTransformFrom,\n intermediateTransformMapArray,\n }) => {\n const cacheKey = JSON.stringify({\n method,\n args,\n });\n let promise: Promise<any>;\n if (cache.has(cacheKey)) {\n promise = cache.get(cacheKey);\n } else {\n const actualArgs = args\n ? brick.context\n ? computeRealValue(args, brick.context, true)\n : args\n : providerBrick.args || [];\n promise = providerBrick[method](...actualArgs);\n cache.set(cacheKey, promise);\n }\n let data: any;\n\n async function fetchData(): Promise<void> {\n const value = await promise;\n data =\n field === null || field === undefined\n ? value\n : get(value, field);\n // The fetched data and its inner objects should never be *injected* again.\n recursiveMarkAsInjected(data);\n }\n\n if (onReject) {\n // Transform as `onReject.transform` when provider failed.\n try {\n await fetchData();\n } catch (error) {\n const onRejectTransform = (\n onReject as HandleRejectByTransform\n ).transform;\n if (onRejectTransform) {\n transformElementProperties(\n brick.element,\n error,\n brick.context\n ? (computeRealValue(\n onRejectTransform,\n brick.context,\n true\n ) as GeneralTransform)\n : onRejectTransform\n );\n }\n return;\n }\n } else {\n await fetchData();\n }\n\n if (ref) {\n data = transformIntermediateData(\n data,\n brick.context\n ? (computeRealValue(\n intermediateTransform,\n brick.context,\n true\n ) as GeneralTransform)\n : intermediateTransform,\n intermediateTransformFrom,\n intermediateTransformMapArray\n );\n }\n\n transformElementProperties(\n brick.element,\n data,\n brick.context\n ? (computeRealValue(\n transform,\n brick.context,\n true\n ) as GeneralTransform)\n : transform,\n transformFrom,\n transformMapArray\n );\n }\n )\n );\n } catch (error) {\n if (!ignoreErrors) {\n // 默认提示错误,但不抛出错误。\n handleHttpError(error);\n if (throwErrors) {\n throw error;\n }\n }\n }\n },\n },\n });\n }\n}\n","import { get } from \"lodash\";\nimport {\n BrickConf,\n PluginRuntimeContext,\n RuntimeBrickConf,\n RefResolveConf,\n EntityResolveConf,\n DefineResolveConf,\n ResolveConf,\n HandleRejectByTransform,\n UseProviderResolveConf,\n SelectorProviderResolveConf,\n HandleReject,\n HandleRejectByCatch,\n GeneralTransform,\n} from \"@next-core/brick-types\";\nimport { asyncProcessBrick } from \"@next-core/brick-utils\";\nimport { computeRealValue } from \"../internal/setProperties\";\nimport { Kernel, RuntimeBrick } from \"./exports\";\nimport {\n makeProviderRefreshable,\n RefreshableProvider,\n IntervalSettings,\n} from \"../internal/makeProviderRefreshable\";\nimport { brickTemplateRegistry } from \"./TemplateRegistries\";\nimport {\n transformProperties,\n transformIntermediateData,\n} from \"../transformProperties\";\nimport { recursiveMarkAsInjected } from \"../internal/injected\";\nimport { looseCheckIf } from \"../checkIf\";\nimport { getArgsOfCustomApi } from \"./FlowApi\";\n\nexport class Resolver {\n private readonly cache: Map<string, Promise<any>> = new Map();\n private refreshQueue: Map<RefreshableProvider, IntervalSettings> = new Map();\n private readonly definedResolves: Map<string, DefineResolveConf> = new Map();\n private active = true;\n\n constructor(private kernel: Kernel) {}\n\n resetRefreshQueue(): void {\n if (this.refreshQueue.size > 0) {\n for (const interval of this.refreshQueue.values()) {\n clearTimeout(interval.timeoutId);\n }\n this.refreshQueue = new Map();\n }\n this.active = false;\n }\n\n defineResolves(\n resolves: DefineResolveConf[],\n context: PluginRuntimeContext\n ): void {\n if (Array.isArray(resolves)) {\n for (const resolveConf of resolves) {\n this.definedResolves.set(resolveConf.id, {\n ...resolveConf,\n args: computeRealValue(resolveConf.args, context, true) as unknown[],\n });\n }\n }\n }\n\n async resolve(\n brickConf: BrickConf,\n brick: RuntimeBrick,\n context?: PluginRuntimeContext\n ): Promise<void> {\n const useResolves = (brickConf.lifeCycle?.useResolves ?? []).filter(\n (r: ResolveConf) => {\n return looseCheckIf(r, context);\n }\n );\n\n await Promise.all(\n useResolves.map((resolveConf: ResolveConf) =>\n this.resolveOne(\"brick\", resolveConf, brickConf, brick, context)\n )\n );\n if (brickConf.template) {\n (brickConf as RuntimeBrickConf).$$resolved = true;\n\n // Try to process templates.\n await asyncProcessBrick(\n brickConf,\n brickTemplateRegistry,\n this.kernel.bootstrapData.templatePackages\n );\n\n // Try to load deps for dynamic added bricks.\n await this.kernel.loadDynamicBricksInBrickConf(brickConf);\n }\n }\n\n async resolveOne(\n type: \"brick\",\n resolveConf: ResolveConf,\n conf: BrickConf,\n brick?: RuntimeBrick,\n context?: PluginRuntimeContext\n ): Promise<void>;\n async resolveOne(\n type: \"reference\",\n resolveConf: ResolveConf,\n conf: Record<string, any>,\n brick?: RuntimeBrick,\n context?: PluginRuntimeContext\n ): Promise<void>;\n async resolveOne(\n type: \"brick\" | \"reference\",\n resolveConf: ResolveConf,\n conf: BrickConf | Record<string, any>,\n brick?: RuntimeBrick,\n context?: PluginRuntimeContext\n ): Promise<void> {\n const brickConf = conf as BrickConf;\n const propsReference = conf as Record<string, any>;\n let actualResolveConf: EntityResolveConf;\n const { ref, onReject } = resolveConf as RefResolveConf;\n if (ref) {\n if (!this.definedResolves.has(ref)) {\n throw new Error(\n `Provider ref not found: \"${ref}\" in ${\n type === \"reference\"\n ? \"reference\"\n : brickConf.template\n ? `template ${brickConf.template}`\n : `brick ${brick.type}`\n }`\n );\n }\n actualResolveConf = this.definedResolves.get(ref);\n } else {\n actualResolveConf = resolveConf as EntityResolveConf;\n }\n\n let data: any;\n const {\n name,\n provider,\n useProvider,\n method = \"resolve\",\n args,\n field,\n transformFrom,\n transformMapArray,\n transform,\n } = actualResolveConf as UseProviderResolveConf &\n SelectorProviderResolveConf;\n\n let providerBrick: RefreshableProvider;\n\n if (useProvider) {\n providerBrick = (await this.kernel.getProviderBrick(useProvider)) as any;\n } else {\n providerBrick = this.kernel.mountPoints.bg.querySelector(provider);\n\n if (!providerBrick) {\n throw new Error(\n `Provider not found: \"${provider}\" in ${\n type === \"reference\"\n ? \"reference\"\n : brickConf.template\n ? `template ${brickConf.template}`\n : `brick ${brick.type}`\n }`\n );\n }\n\n const providerTagName = providerBrick.tagName.toLowerCase();\n\n if (!customElements.get(providerTagName)) {\n throw new Error(\n `Provider not defined: \"${providerTagName}\", please make sure the related package is installed.`\n );\n }\n\n makeProviderRefreshable(providerBrick);\n\n if (providerBrick.interval && !this.refreshQueue.has(providerBrick)) {\n this.refreshQueue.set(providerBrick, { ...providerBrick.interval });\n }\n\n // Currently we can't refresh dynamic templates.\n if (type !== \"reference\" && !brickConf.template) {\n providerBrick.$$dependents.push({\n brick,\n method,\n args,\n field,\n ...(ref\n ? {\n ref,\n intermediateTransform: transform || name,\n intermediateTransformFrom: transformFrom,\n intermediateTransformMapArray: transformMapArray,\n transform: resolveConf.transform,\n transformFrom: resolveConf.transformFrom,\n transformMapArray: resolveConf.transformMapArray,\n onReject,\n }\n : {\n transform: transform || name,\n transformFrom,\n transformMapArray,\n }),\n });\n }\n }\n\n const cacheKey = JSON.stringify({\n provider,\n useProvider,\n method,\n args,\n });\n let promise: Promise<any>;\n if (this.cache.has(cacheKey)) {\n promise = this.cache.get(cacheKey);\n } else {\n let actualArgs = args\n ? ref\n ? args // `args` are already computed for `defineResolves`\n : context\n ? computeRealValue(args, context, true)\n : args\n : providerBrick.args || [];\n\n promise = (async () => {\n if (useProvider) {\n actualArgs = await getArgsOfCustomApi(useProvider, actualArgs);\n }\n return providerBrick[method](...actualArgs);\n })();\n this.cache.set(cacheKey, promise);\n }\n\n let props: Record<string, any>;\n if (type === \"reference\") {\n props = propsReference;\n } else if (brickConf.template) {\n // It's a dynamic template.\n if (!brickConf.params) {\n // eslint-disable-next-line require-atomic-updates\n brickConf.params = {};\n }\n props = brickConf.params;\n } else {\n // It's a dynamic brick.\n props = brick.properties;\n }\n\n async function fetchData(): Promise<void> {\n const value = await promise;\n data = field === null || field === undefined ? value : get(value, field);\n // The fetched data and its inner objects should never be *injected* again.\n recursiveMarkAsInjected(data);\n }\n\n if (onReject) {\n // Transform as `onReject.transform` when provider failed.\n try {\n await fetchData();\n } catch (error) {\n if (isHandleRejectByTransform(onReject)) {\n transformProperties(\n props,\n error,\n context\n ? (computeRealValue(\n onReject.transform,\n context,\n true\n ) as GeneralTransform)\n : onReject.transform\n );\n return;\n } else if (isHandleRejectByCatch(onReject)) {\n throw new ResolveRequestError(error);\n } else {\n throw error;\n }\n }\n } else {\n await fetchData();\n }\n\n if (ref) {\n data = transformIntermediateData(\n data,\n context\n ? (computeRealValue(transform, context, true) as GeneralTransform)\n : transform,\n transformFrom,\n transformMapArray\n );\n }\n\n transformProperties(\n props,\n data,\n // Also support legacy `name`\n context\n ? (computeRealValue(\n resolveConf.transform || resolveConf.name,\n context,\n true\n ) as GeneralTransform)\n : resolveConf.transform || resolveConf.name,\n resolveConf.transformFrom,\n resolveConf.transformMapArray\n );\n }\n\n scheduleRefreshing(): void {\n for (const [providerBrick, interval] of this.refreshQueue.entries()) {\n const request = async (): Promise<void> => {\n await providerBrick.$refresh({\n ignoreErrors: interval.ignoreErrors,\n throwErrors: true,\n $$scheduled: true,\n });\n if (this.active) {\n // eslint-disable-next-line require-atomic-updates\n interval.timeoutId = setTimeout(request, interval.delay);\n }\n };\n interval.timeoutId = setTimeout(request, interval.delay);\n }\n }\n}\n\nfunction isHandleRejectByTransform(\n onReject: HandleReject\n): onReject is HandleRejectByTransform {\n return !!(onReject as HandleRejectByTransform).transform;\n}\n\nfunction isHandleRejectByCatch(\n onReject: HandleReject\n): onReject is HandleRejectByCatch {\n return !!(onReject as HandleRejectByCatch).isolatedCrash;\n}\n\nexport class ResolveRequestError extends Error {\n rawError: any;\n\n constructor(rawError: any) {\n // Pass remaining arguments (including vendor specific ones) to parent constructor\n super(rawError.message);\n\n this.name = \"ResolveRequestError\";\n\n // Maintains proper stack trace for where our error was thrown (only available on V8)\n // istanbul ignore else\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, ResolveRequestError);\n }\n\n this.rawError = rawError;\n }\n}\n","export function shouldBeDefaultCollapsed(\n defaultCollapsed: boolean,\n defaultCollapsedBreakpoint: number\n): boolean {\n return (\n defaultCollapsed ||\n (defaultCollapsedBreakpoint &&\n document.documentElement.clientWidth < defaultCollapsedBreakpoint)\n );\n}\n","import { locationsAreEqual, createPath, Action, Location } from \"history\";\nimport { findLastIndex, uniqueId } from \"lodash\";\nimport type {\n LayoutType,\n PluginHistoryState,\n PluginLocation,\n PluginRuntimeContext,\n RouteConf,\n RuntimeMisc,\n} from \"@next-core/brick-types\";\nimport {\n restoreDynamicTemplates,\n scanCustomApisInStoryboard,\n mapCustomApisToNameAndNamespace,\n CustomApiInfo,\n} from \"@next-core/brick-utils\";\nimport { apiAnalyzer, userAnalytics } from \"@next-core/easyops-analytics\";\nimport {\n LocationContext,\n mountTree,\n mountStaticNode,\n Kernel,\n MountableElement,\n unmountTree,\n MountRoutesResult,\n appendBrick,\n Resolver,\n NavConfig,\n} from \"./exports\";\nimport { getHistory } from \"../history\";\nimport { httpErrorToString, handleHttpError } from \"../handleHttpError\";\nimport { isUnauthenticatedError } from \"../internal/isUnauthenticatedError\";\nimport { RecentApps, RouterState } from \"./interfaces\";\nimport { resetAllInjected } from \"../internal/injected\";\nimport { getAuth, isLoggedIn } from \"../auth\";\nimport { devtoolsHookEmit } from \"../internal/devtools\";\nimport { afterMountTree } from \"./reconciler\";\nimport { constructMenu } from \"../internal/menu\";\nimport { getRuntimeMisc } from \"../internal/misc\";\nimport {\n applyMode,\n applyTheme,\n setMode,\n setTheme,\n getLocalAppsTheme,\n} from \"../themeAndMode\";\nimport { preCheckPermissions } from \"../internal/checkPermissions\";\nimport { clearPollTimeout } from \"../internal/poll\";\nimport { shouldBeDefaultCollapsed } from \"../internal/shouldBeDefaultCollapsed\";\nimport { registerStoryboardFunctions } from \"./StoryboardFunctions\";\nimport { HttpResponseError } from \"@next-core/brick-http\";\nimport { registerMock } from \"./MockRegistry\";\nimport { collectContract } from \"./CollectContracts\";\nimport { StoryboardContextWrapper } from \"./StoryboardContext\";\nimport { Media, mediaEventTarget } from \"../internal/mediaQuery\";\n\nexport class Router {\n private defaultCollapsed = false;\n private locationContext: LocationContext;\n private rendering = false;\n private nextLocation: PluginLocation;\n private prevLocation: PluginLocation;\n private state: RouterState = \"initial\";\n private renderId: string;\n private readonly featureFlags: Record<string, boolean>;\n private navConfig: NavConfig;\n private mediaEventTargetHandler: (event: CustomEvent<Media>) => void;\n\n constructor(private kernel: Kernel) {\n this.featureFlags = this.kernel.getFeatureFlags();\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 private getBlockMessageBeforePageLave(detail: {\n location?: Location<PluginHistoryState>;\n action?: Action;\n }): string {\n const history = getHistory();\n const previousMessage = history.getBlockMessage();\n this.locationContext?.handleBeforePageLeave(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 private locationChangeNotify(from: string, to: string): void {\n if (this.featureFlags[\"log-location-change\"]) {\n const username = getAuth().username;\n const params = new URLSearchParams();\n params.append(\"u\", username);\n params.append(\"f\", from);\n params.append(\"t\", to);\n params.append(\"ts\", (+new Date()).toString());\n const image = new Image();\n image.src = `${\n window.CORE_ROOT ?? \"\"\n }assets/ea/analytics.jpg?${params.toString()}`;\n }\n }\n\n async bootstrap(): Promise<void> {\n const history = getHistory();\n this.prevLocation = history.location;\n this.locationChangeNotify(\"\", history.location.pathname);\n history.listen(async (location: PluginLocation, action: Action) => {\n let ignoreRendering = false;\n const omittedLocationProps: Partial<PluginLocation> = {\n hash: null,\n state: null,\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 (this.prevLocation.key === undefined ||\n // or the previous location specified notify false.\n this.prevLocation.state?.notify === false))\n ) {\n omittedLocationProps.key = null;\n }\n if (\n locationsAreEqual(\n { ...this.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 if (ignoreRendering) {\n this.prevLocation = location;\n return;\n }\n\n this.locationChangeNotify(this.prevLocation.pathname, location.pathname);\n this.prevLocation = location;\n this.locationContext.handlePageLeave();\n this.locationContext.messageDispatcher.reset();\n if (this.rendering) {\n this.nextLocation = location;\n } else {\n try {\n devtoolsHookEmit(\"locationChange\");\n await this.queuedRender(location);\n } catch (e) {\n handleHttpError(e);\n }\n }\n });\n await this.queuedRender(history.location);\n this.kernel.firstRendered();\n }\n\n private async queuedRender(location: PluginLocation): Promise<void> {\n this.rendering = true;\n try {\n await this.render(location);\n } finally {\n this.rendering = false;\n if (this.nextLocation) {\n const nextLocation = this.nextLocation;\n this.nextLocation = null;\n await this.queuedRender(nextLocation);\n }\n }\n }\n\n private async render(location: PluginLocation): Promise<void> {\n this.state = \"initial\";\n this.renderId = uniqueId(\"render-id-\");\n\n resetAllInjected();\n clearPollTimeout();\n\n if (this.locationContext) {\n this.locationContext.resolver.resetRefreshQueue();\n }\n\n const history = getHistory();\n history.unblock();\n\n // Create the page tracker before page load.\n // And the API Analyzer maybe disabled.\n const pageTracker = apiAnalyzer.getInstance()?.pageTracker();\n\n const locationContext = (this.locationContext = new LocationContext(\n this.kernel,\n location\n ));\n\n const storyboard = locationContext.matchStoryboard(\n this.kernel.bootstrapData.storyboards\n );\n\n if (storyboard) {\n await this.kernel.fulfilStoryboard(storyboard);\n\n // 将动态解析后的模板还原,以便重新动态解析。\n restoreDynamicTemplates(storyboard);\n\n // 预加载权限信息\n if (isLoggedIn() && !getAuth().isAdmin) {\n await preCheckPermissions(storyboard);\n }\n\n // 如果找到匹配的 storyboard,那么根据路由匹配得到的 sub-storyboard 加载它的依赖库。\n const subStoryboard =\n this.locationContext.getSubStoryboardByRoute(storyboard);\n await this.kernel.loadDepsOfStoryboard(subStoryboard);\n\n // 注册 Storyboard 中定义的自定义模板和函数。\n this.kernel.registerCustomTemplatesInStoryboard(storyboard);\n registerStoryboardFunctions(storyboard.meta?.functions, storyboard.app);\n\n registerMock(storyboard.meta?.mocks);\n\n collectContract(storyboard.meta?.contracts);\n }\n\n const { mountPoints, currentApp: previousApp } = this.kernel;\n const currentApp = storyboard ? storyboard.app : undefined;\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 const legacy = currentApp ? currentApp.legacy : undefined;\n this.kernel.nextApp = currentApp;\n const layoutType: LayoutType = currentApp?.layoutType || \"console\";\n\n setTheme(\n getLocalAppsTheme()?.[currentApp?.id] || currentApp?.theme || \"light\"\n );\n setMode(\"default\");\n\n devtoolsHookEmit(\"rendering\");\n\n unmountTree(mountPoints.bg as MountableElement);\n\n const redirectToLogin = (): void => {\n history.replace(\n this.featureFlags[\"sso-enabled\"] ? \"/sso-auth/login\" : \"/auth/login\",\n {\n from: location,\n }\n );\n };\n\n if (storyboard) {\n if (appChanged && currentApp.id && isLoggedIn()) {\n const usedCustomApis: CustomApiInfo[] = mapCustomApisToNameAndNamespace(\n scanCustomApisInStoryboard(storyboard)\n );\n if (usedCustomApis?.length) {\n await this.kernel.loadMicroAppApiOrchestrationAsync(usedCustomApis);\n }\n }\n\n const mountRoutesResult: MountRoutesResult = {\n main: [],\n menuInBg: [],\n menuBar: {},\n portal: [],\n appBar: {\n breadcrumb: [],\n documentId: null,\n noCurrentApp: currentApp.breadcrumb?.noCurrentApp ?? false,\n },\n flags: {\n redirect: undefined,\n hybrid: false,\n failed: false,\n },\n };\n try {\n const specificTemplatePreviewIndex = findLastIndex(\n storyboard.routes,\n (route) =>\n route.path.startsWith(\n \"${APP.homepage}/_dev_only_/template-preview/\"\n )\n );\n\n const specificSnippetPreviewIndex = findLastIndex(\n storyboard.routes,\n (route) =>\n route.path.startsWith(\"${APP.homepage}/_dev_only_/snippet-preview/\")\n );\n const mergedRoutes = [\n ...storyboard.routes.slice(0, specificTemplatePreviewIndex + 1),\n ...storyboard.routes.slice(0, specificSnippetPreviewIndex + 1),\n {\n path: \"${APP.homepage}/_dev_only_/template-preview/:templateId\",\n bricks: [{ brick: \"span\" }],\n menu: false,\n exact: true,\n } as RouteConf,\n {\n path: \"${APP.homepage}/_dev_only_/snippet-preview/:snippetId\",\n bricks: [{ brick: \"span\" }],\n menu: false,\n exact: true,\n } as RouteConf,\n ...storyboard.routes.slice(specificTemplatePreviewIndex + 1),\n ];\n await locationContext.mountRoutes(\n mergedRoutes,\n undefined,\n mountRoutesResult\n );\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(error);\n\n // Redirect to login page if not logged in.\n if (isUnauthenticatedError(error) && !window.NO_AUTH_GUARD) {\n mountRoutesResult.flags.unauthenticated = true;\n } else {\n await this.kernel.layoutBootstrap(layoutType);\n const brickPageError = this.kernel.presetBricks.pageError;\n await this.kernel.loadDynamicBricks([brickPageError]);\n\n mountRoutesResult.flags.failed = true;\n mountRoutesResult.main = [\n {\n type: brickPageError,\n properties: {\n error: httpErrorToString(error),\n code:\n error instanceof HttpResponseError\n ? error.response.status\n : null,\n },\n events: {},\n },\n ];\n mountRoutesResult.portal = [];\n }\n }\n\n const {\n main,\n menuInBg,\n menuBar,\n appBar,\n flags,\n portal,\n route,\n analyticsData,\n } = mountRoutesResult;\n\n const { unauthenticated, redirect, barsHidden, hybrid, failed } = flags;\n\n if (unauthenticated) {\n redirectToLogin();\n return;\n }\n\n if (redirect) {\n history.replace(redirect.path, redirect.state);\n return;\n }\n\n if (appChanged) {\n this.kernel.currentApp = currentApp;\n this.kernel.previousApp = previousApp;\n }\n this.kernel.currentUrl = createPath(location);\n this.kernel.currentRoute = route;\n await Promise.all([\n ...(window.STANDALONE_MICRO_APPS\n ? []\n : [this.kernel.updateWorkspaceStack()]),\n this.kernel.layoutBootstrap(layoutType),\n ]);\n\n this.state = \"ready-to-mount\";\n\n // Unmount main tree to avoid app change fired before new routes mounted.\n unmountTree(mountPoints.main as MountableElement);\n unmountTree(mountPoints.portal as MountableElement);\n\n const actualLegacy =\n (legacy === \"iframe\" && !hybrid) || (legacy !== \"iframe\" && hybrid)\n ? \"iframe\"\n : undefined;\n this.kernel.unsetBars({ appChanged, legacy: actualLegacy });\n\n if (this.mediaEventTargetHandler) {\n mediaEventTarget.removeEventListener(\n \"change\",\n this.mediaEventTargetHandler as EventListener\n );\n this.mediaEventTargetHandler = undefined;\n }\n\n // There is a window to set theme and mode by `lifeCycle.onBeforePageLoad`.\n this.locationContext.handleBeforePageLoad();\n applyTheme();\n applyMode();\n\n if (appChanged) {\n window.dispatchEvent(\n new CustomEvent<RecentApps>(\"app.change\", {\n detail: this.kernel.getRecentApps(),\n })\n );\n }\n\n let misc: RuntimeMisc;\n if (\n barsHidden ||\n ((misc = getRuntimeMisc()),\n misc.isInIframeOfSameSite && !misc.isInIframeOfVisualBuilder)\n ) {\n this.kernel.toggleBars(false);\n } else {\n await constructMenu(\n menuBar,\n this.locationContext.getCurrentContext(),\n this.kernel\n );\n if (this.kernel.currentLayout === \"console\") {\n if (\n shouldBeDefaultCollapsed(\n menuBar.menu?.defaultCollapsed,\n menuBar.menu?.defaultCollapsedBreakpoint\n )\n ) {\n this.kernel.menuBar.collapse(true);\n this.defaultCollapsed = true;\n } else {\n if (this.defaultCollapsed) {\n this.kernel.menuBar.collapse(false);\n }\n this.defaultCollapsed = false;\n }\n if (actualLegacy === \"iframe\") {\n // Do not modify breadcrumb in iframe mode,\n // it will be *popped* from iframe automatically.\n delete appBar.breadcrumb;\n }\n mountStaticNode(this.kernel.menuBar.element, menuBar);\n mountStaticNode(this.kernel.appBar.element, appBar);\n }\n }\n\n this.setNavConfig(mountRoutesResult);\n\n this.kernel.toggleLegacyIframe(actualLegacy === \"iframe\");\n\n menuInBg.forEach((brick) => {\n appendBrick(brick, mountPoints.portal as MountableElement);\n });\n\n if (main.length > 0 || portal.length > 0) {\n main.length > 0 &&\n mountTree(main, mountPoints.main as MountableElement);\n portal.length > 0 &&\n mountTree(portal, mountPoints.portal as MountableElement);\n\n afterMountTree(mountPoints.main as MountableElement);\n afterMountTree(mountPoints.portal as MountableElement);\n afterMountTree(mountPoints.bg as MountableElement);\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 this.locationContext.handlePageLoad();\n this.locationContext.handleAnchorLoad();\n this.locationContext.resolver.scheduleRefreshing();\n this.locationContext.handleMessage();\n }\n\n this.mediaEventTargetHandler = (event) =>\n this.locationContext.handleMediaChange(event.detail);\n mediaEventTarget.addEventListener(\n \"change\",\n this.mediaEventTargetHandler as EventListener\n );\n\n pageTracker?.(locationContext.getCurrentMatch().path);\n\n // analytics page_view event\n userAnalytics.event(\"page_view\", {\n micro_app_id: this.kernel.currentApp.id,\n route_alias: route?.alias,\n ...analyticsData,\n });\n\n this.state = \"mounted\";\n\n devtoolsHookEmit(\"rendered\");\n\n // Try to prefetch during a browser's idle periods.\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/requestIdleCallback\n if (typeof window.requestIdleCallback === \"function\") {\n window.requestIdleCallback(() => {\n this.kernel.prefetchDepsOfStoryboard(storyboard);\n });\n } else {\n Promise.resolve().then(() => {\n this.kernel.prefetchDepsOfStoryboard(storyboard);\n });\n }\n return;\n }\n } else if (!window.NO_AUTH_GUARD && !isLoggedIn()) {\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 }\n\n await this.kernel.layoutBootstrap(layoutType);\n const brickPageNotFound = this.kernel.presetBricks.pageNotFound;\n await this.kernel.loadDynamicBricks([brickPageNotFound]);\n\n this.state = \"ready-to-mount\";\n\n mountTree(\n [\n {\n type: brickPageNotFound,\n properties: {\n url: history.createHref(location),\n },\n events: {},\n },\n ],\n mountPoints.main as MountableElement\n );\n unmountTree(mountPoints.portal as MountableElement);\n\n // Scroll to top after each rendering.\n window.scrollTo(0, 0);\n\n this.state = \"mounted\";\n devtoolsHookEmit(\"rendered\");\n }\n\n private setNavConfig(mountResult: MountRoutesResult): void {\n this.navConfig = {\n breadcrumb: mountResult.appBar.breadcrumb,\n menu: mountResult.menuBar.menu,\n subMenu: mountResult.menuBar.subMenu,\n };\n }\n\n /* istanbul ignore next */\n getNavConfig(): NavConfig {\n return this.navConfig;\n }\n\n /* istanbul ignore next */\n getResolver(): Resolver {\n return this.locationContext.resolver;\n }\n\n getState(): RouterState {\n return this.state;\n }\n\n /* istanbul ignore next */\n getRenderId(): string {\n return this.renderId;\n }\n\n /* istanbul ignore next */\n getCurrentContext(): PluginRuntimeContext {\n return this.locationContext.getCurrentContext();\n }\n\n /* istanbul ignore next */\n getStoryboardContextWrapper(): StoryboardContextWrapper {\n return this.locationContext.storyboardContextWrapper;\n }\n\n /* istanbul ignore next */\n handleMessageClose(event: CloseEvent): void {\n return this.locationContext.handleMessageClose(event);\n }\n}\n","import { BrickConfInTemplate, CustomTemplate } from \"@next-core/brick-types\";\n\ntype RefToBrickConfMap = Map<string, BrickConfInTemplate>;\n\nexport function collectRefsInTemplate(\n template: CustomTemplate\n): RefToBrickConfMap {\n const refMap: RefToBrickConfMap = new Map();\n collectRefsInBrickConfs(template.bricks, refMap);\n return refMap;\n}\n\nfunction collectRefsInBrickConfs(\n brickConfs: BrickConfInTemplate[],\n refMap: RefToBrickConfMap\n): void {\n if (Array.isArray(brickConfs)) {\n for (const item of brickConfs) {\n collectRefsInBrickConf(item, refMap);\n }\n }\n}\n\nfunction collectRefsInBrickConf(\n brickConf: BrickConfInTemplate,\n refMap: RefToBrickConfMap\n): void {\n const { ref, slots } = brickConf;\n if (ref) {\n refMap.set(ref, brickConf);\n }\n if (slots) {\n for (const slotConf of Object.values(slots)) {\n collectRefsInBrickConfs(slotConf.bricks, refMap);\n }\n }\n}\n","import {\n BrickConfInTemplate,\n PluginRuntimeContext,\n} from \"@next-core/brick-types\";\nimport { MergeablePropertyProxy, MergeBase } from \"./internalInterfaces\";\n\nexport function collectMergeBases(\n conf: MergeablePropertyProxy,\n mergeBases: Map<string, Map<string, MergeBase>>,\n contextInTemplate: PluginRuntimeContext,\n refToBrickConf: Map<string, BrickConfInTemplate>\n): void {\n let mergeBaseMap: Map<string, MergeBase>;\n if (mergeBases.has(conf.ref)) {\n mergeBaseMap = mergeBases.get(conf.ref);\n } else {\n mergeBaseMap = new Map();\n mergeBases.set(conf.ref, mergeBaseMap);\n }\n\n if (mergeBaseMap.has(conf.mergeProperty)) {\n conf.$$mergeBase = mergeBaseMap.get(conf.mergeProperty);\n // istanbul ignore if: should never reach\n if (conf.mergeType !== conf.$$mergeBase.mergeType) {\n throw new Error(\n `Properties proxy contained different mergeTypes of \"${conf.$$mergeBase.mergeType}\" and \"${conf.mergeType}\"`\n );\n }\n conf.$$mergeBase.proxies.push(conf);\n } else {\n const baseValue = refToBrickConf.get(conf.ref).properties?.[\n conf.mergeProperty\n ];\n conf.$$mergeBase = {\n proxies: [conf],\n mergeType: conf.mergeType,\n baseValue,\n context: contextInTemplate,\n };\n mergeBaseMap.set(conf.mergeProperty, conf.$$mergeBase);\n }\n}\n","import {\n BrickConfInTemplate,\n CustomTemplateProxySlot,\n PluginRuntimeContext,\n RuntimeBrickConf,\n SlotsConfOfBricks,\n CustomTemplate,\n} from \"@next-core/brick-types\";\nimport { RuntimeBrick } from \"../BrickNode\";\nimport {\n MergeBase,\n PropertyProxy,\n RuntimeCustomTemplateProxy,\n RuntimeCustomTemplateProxyProperties,\n} from \"./internalInterfaces\";\nimport { isMergeableProperty, isVariableProperty } from \"./assertions\";\nimport { collectRefsInTemplate } from \"./collectRefsInTemplate\";\nimport {\n customTemplateRegistry,\n RuntimeBrickConfWithTplSymbols,\n} from \"./constants\";\nimport { collectMergeBases } from \"./collectMergeBases\";\nimport { CustomTemplateContext } from \"./CustomTemplateContext\";\nimport { setupUseBrickInTemplate } from \"./setupUseBrickInTemplate\";\nimport { setupTemplateProxy } from \"./setupTemplateProxy\";\n\nexport interface ProxyContext {\n reversedProxies: ReversedProxies;\n templateProperties: Record<string, unknown>;\n externalSlots: SlotsConfOfBricks;\n templateContextId: string;\n proxyBrick: RuntimeBrick;\n}\n\ninterface ReversedProxies {\n properties: Map<string, PropertyProxy[]>;\n slots: Map<string, SlotProxy[]>;\n mergeBases: Map<string, Map<string, MergeBase>>;\n}\n\ninterface SlotProxy extends CustomTemplateProxySlot {\n $$reversedRef?: string;\n}\n\nexport function expandCustomTemplate(\n brickConf: RuntimeBrickConf,\n proxyBrick: RuntimeBrick,\n context: PluginRuntimeContext\n): RuntimeBrickConf {\n const tplContext = new CustomTemplateContext(proxyBrick);\n const template = customTemplateRegistry.get(brickConf.brick);\n if (Array.isArray(template.state)) {\n tplContext.state.syncDefine(template.state, context, proxyBrick);\n }\n return lowLevelExpandCustomTemplate(\n template,\n brickConf,\n proxyBrick,\n context,\n tplContext\n );\n}\n\nexport async function asyncExpandCustomTemplate(\n brickConf: RuntimeBrickConf,\n proxyBrick: RuntimeBrick,\n context: PluginRuntimeContext\n): Promise<RuntimeBrickConf> {\n const tplContext = new CustomTemplateContext(proxyBrick);\n const template = customTemplateRegistry.get(brickConf.brick);\n if (Array.isArray(template.state)) {\n await tplContext.state.define(template.state, context, proxyBrick);\n }\n return lowLevelExpandCustomTemplate(\n template,\n brickConf,\n proxyBrick,\n context,\n tplContext\n );\n}\n\nfunction lowLevelExpandCustomTemplate(\n template: CustomTemplate,\n brickConf: RuntimeBrickConf,\n proxyBrick: RuntimeBrick,\n context: PluginRuntimeContext,\n tplContext: CustomTemplateContext\n): RuntimeBrickConf {\n const { bricks, proxy, state } = template;\n const {\n properties: templateProperties,\n slots: externalSlots,\n ...restBrickConf\n } = brickConf;\n const newBrickConf = restBrickConf as RuntimeBrickConf;\n\n // Get a copy of proxy for each instance of custom template.\n const proxyCopy: RuntimeCustomTemplateProxy = {\n ...proxy,\n };\n proxyBrick.proxy = proxyCopy;\n proxyBrick.proxyRefs = new Map();\n proxyBrick.stateNames = state?.map((item) => item.name);\n\n const refToBrickConf = collectRefsInTemplate(template);\n\n // Reversed proxies are used for expand storyboard before rendering page.\n const reversedProxies: ReversedProxies = {\n properties: new Map(),\n slots: new Map(),\n mergeBases: new Map(),\n };\n\n const tplVariables: Record<string, unknown> = {};\n\n if (proxy?.properties) {\n const refPropertiesCopy = {} as RuntimeCustomTemplateProxyProperties;\n proxyCopy.$$properties = refPropertiesCopy;\n\n for (const [reversedRef, conf] of Object.entries(proxy.properties)) {\n if (isVariableProperty(conf)) {\n tplVariables[reversedRef] = templateProperties?.[reversedRef];\n } else {\n // Variable property proxies have no refs.\n refPropertiesCopy[reversedRef] = {\n ...conf,\n extraOneWayRefs: Array.isArray(conf.extraOneWayRefs)\n ? conf.extraOneWayRefs.map((extraConf) => ({ ...extraConf }))\n : undefined,\n };\n }\n }\n\n tplContext.setVariables(tplVariables);\n\n const reversedProperties = reversedProxies.properties;\n for (const [reversedRef, conf] of Object.entries(refPropertiesCopy)) {\n let proxies: PropertyProxy[];\n if (reversedProperties.has(conf.ref)) {\n proxies = reversedProperties.get(conf.ref);\n } else {\n proxies = [];\n reversedProperties.set(conf.ref, proxies);\n }\n conf.$$reversedRef = reversedRef;\n\n if (isMergeableProperty(conf)) {\n collectMergeBases(\n conf,\n reversedProxies.mergeBases,\n {\n ...context,\n tplContextId: tplContext.id,\n },\n refToBrickConf\n );\n }\n\n proxies.push(conf);\n\n // Properties may have extra refs.\n if (Array.isArray(conf.extraOneWayRefs)) {\n for (const extraRef of conf.extraOneWayRefs) {\n let extraProxies: PropertyProxy[];\n if (reversedProperties.has(extraRef.ref)) {\n extraProxies = reversedProperties.get(extraRef.ref);\n } else {\n extraProxies = [];\n reversedProperties.set(extraRef.ref, extraProxies);\n }\n (extraRef as PropertyProxy).$$reversedRef = reversedRef;\n extraProxies.push(extraRef);\n }\n }\n }\n }\n\n if (proxy?.slots) {\n const reveredSlots = reversedProxies.slots;\n for (const [reversedRef, conf] of Object.entries<SlotProxy>(proxy.slots)) {\n let proxies: SlotProxy[];\n if (reveredSlots.has(conf.ref)) {\n proxies = reveredSlots.get(conf.ref);\n } else {\n proxies = [];\n reveredSlots.set(conf.ref, proxies);\n }\n conf.$$reversedRef = reversedRef;\n proxies.push(conf);\n }\n }\n\n const proxyContext: ProxyContext = {\n reversedProxies,\n templateProperties,\n externalSlots: externalSlots as SlotsConfOfBricks,\n templateContextId: tplContext.id,\n proxyBrick,\n };\n\n newBrickConf.slots = {\n \"\": {\n type: \"bricks\",\n bricks: bricks.map((item) => expandBrickInTemplate(item, proxyContext)),\n },\n };\n\n return newBrickConf;\n}\n\nfunction expandBrickInTemplate(\n brickConfInTemplate: BrickConfInTemplate,\n proxyContext: ProxyContext\n): RuntimeBrickConfWithTplSymbols {\n // Ignore `if: null` to make `looseCheckIf` working.\n if (brickConfInTemplate.if === null) {\n delete brickConfInTemplate.if;\n }\n const {\n ref,\n slots: slotsInTemplate,\n ...restBrickConfInTemplate\n } = brickConfInTemplate;\n\n const slots: SlotsConfOfBricks = Object.fromEntries(\n Object.entries(slotsInTemplate ?? {}).map(([slotName, slotConf]) => [\n slotName,\n {\n type: \"bricks\",\n bricks: (slotConf.bricks ?? []).map((item) =>\n expandBrickInTemplate(item, proxyContext)\n ),\n },\n ])\n );\n\n setupUseBrickInTemplate(brickConfInTemplate.properties, proxyContext);\n\n return {\n ...restBrickConfInTemplate,\n slots,\n ...setupTemplateProxy(proxyContext, ref, slots),\n };\n}\n","import { customTemplateRegistry } from \"./constants\";\n\n// If it's a custom template, return the tag name of the template.\n// Otherwise, return false.\nexport function getTagNameOfCustomTemplate(\n brick: string,\n appId?: string\n): false | string {\n // When a template is registered by an app, it's namespace maybe missed.\n if (!brick.includes(\".\") && appId) {\n const tagName = `${appId}.${brick}`;\n if (customTemplateRegistry.has(tagName)) {\n return tagName;\n }\n }\n if (customTemplateRegistry.has(brick)) {\n return brick;\n }\n return false;\n}\n","import {\n CustomTemplateProxyBasicProperty,\n CustomTemplateProxyProperty,\n} from \"@next-core/brick-types\";\nimport { transformElementProperties } from \"../../transformProperties\";\nimport { RuntimeBrick } from \"../BrickNode\";\nimport { StoryboardContextWrapper } from \"../StoryboardContext\";\nimport {\n isMergeableProperty,\n isRefProperty,\n isTransformableProperty,\n} from \"./assertions\";\nimport { getCustomTemplateContext } from \"./CustomTemplateContext\";\nimport { propertyMerge } from \"./propertyMerge\";\n\nexport function handleProxyOfCustomTemplate(brick: RuntimeBrick): void {\n // Ignore non-tpl bricks.\n if (!brick.proxyRefs) {\n return;\n }\n\n const node = brick.element as any;\n\n function getElementByRef(ref: string): HTMLElement {\n if (brick.proxyRefs.has(ref)) {\n return brick.proxyRefs.get(ref).brick?.element;\n }\n }\n\n const firstRun = !node.$$getElementByRef;\n\n // For usages of `targetRef: \"...\"`.\n // `tpl.$$getElementByRef(ref)` will return the ref element inside a custom template.\n if (firstRun) {\n Object.defineProperty(node, \"$$getElementByRef\", {\n value: getElementByRef,\n });\n }\n\n if (firstRun && brick.stateNames) {\n // Define properties from state for tpl.\n const getState = (): StoryboardContextWrapper =>\n getCustomTemplateContext(brick.tplContextId).state;\n for (const propName of brick.stateNames) {\n Object.defineProperty(node, propName, {\n get: function () {\n return getState().getValue(propName);\n },\n set: function (value: unknown) {\n getState().updateValue(propName, value, \"replace\");\n },\n enumerable: true,\n });\n }\n }\n\n if (!brick.proxy) {\n return;\n }\n\n const handleExtraOneWayRefs = (\n propName: string,\n propRef: CustomTemplateProxyProperty,\n value: unknown\n ): void => {\n if (isRefProperty(propRef) && Array.isArray(propRef.extraOneWayRefs)) {\n for (const extraRef of propRef.extraOneWayRefs) {\n const extraRefElement = getElementByRef(extraRef.ref) as any;\n // should always have refElement.\n // istanbul ignore else\n if (extraRefElement) {\n if (isTransformableProperty(extraRef)) {\n transformElementProperties(\n extraRefElement as HTMLElement,\n {\n [propName]: value,\n },\n extraRef.refTransform\n );\n } else if (isMergeableProperty(extraRef)) {\n extraRefElement[extraRef.mergeProperty] = propertyMerge(\n extraRef,\n value,\n node\n );\n } else {\n extraRefElement[\n (extraRef as CustomTemplateProxyBasicProperty).refProperty\n ] = value;\n }\n }\n }\n }\n };\n\n const { $$properties: properties, events, methods } = brick.proxy;\n if (properties) {\n for (const [propName, propRef] of Object.entries(properties)) {\n const refElement = getElementByRef(propRef.ref) as any;\n // should always have refElement.\n // istanbul ignore else\n if (refElement) {\n if (isTransformableProperty(propRef) || isMergeableProperty(propRef)) {\n // Create a non-enumerable symbol property to delegate the tpl root property.\n const delegatedPropSymbol = Symbol(`delegatedProp:${propName}`);\n node[delegatedPropSymbol] = node[propName];\n Object.defineProperty(node, propName, {\n get: function () {\n return node[delegatedPropSymbol];\n },\n set: function (value: unknown) {\n node[delegatedPropSymbol] = value;\n if (isTransformableProperty(propRef)) {\n transformElementProperties(\n refElement,\n {\n [propName]: value,\n },\n propRef.refTransform\n );\n } else {\n refElement[propRef.mergeProperty] = propertyMerge(\n propRef,\n value,\n node\n );\n }\n handleExtraOneWayRefs(propName, propRef, value);\n },\n enumerable: true,\n });\n } else {\n Object.defineProperty(node, propName, {\n get: function () {\n return refElement[propRef.refProperty];\n },\n set: function (value: unknown) {\n refElement[propRef.refProperty] = value;\n handleExtraOneWayRefs(propName, propRef, value);\n },\n enumerable: true,\n });\n }\n }\n }\n }\n\n if (events) {\n for (const [eventType, eventRef] of Object.entries(events)) {\n const refElement = getElementByRef(eventRef.ref) as any;\n // should always have refElement.\n // istanbul ignore else\n if (refElement) {\n const listener = (e: Event) => {\n if (e.bubbles) {\n e.stopPropagation();\n }\n (node as HTMLElement).dispatchEvent(\n new CustomEvent(eventType, {\n detail: (e as CustomEvent).detail,\n bubbles: e.bubbles,\n cancelable: e.cancelable,\n composed: e.composed,\n })\n );\n };\n /**\n * useBrick 重新渲染会导致事件重复绑定发生\n * 为了防止代理事件重复绑定, 增加$$proxyEvents\n * 每次设置代理属性方法, 提前判断之前是否已经绑定, 如若有, 则解绑并删除\n */\n if (refElement.$$proxyEvents) {\n refElement.$$proxyEvents = (\n refElement.$$proxyEvents as Array<\n [string, string, (e: Event) => void]\n >\n ).filter(([proxyEvent, event, listener]) => {\n if (proxyEvent === eventType) {\n refElement.removeEventListener(event, listener);\n return false;\n }\n return true;\n });\n } else {\n refElement.$$proxyEvents = [];\n }\n refElement.$$proxyEvents.push([eventType, eventRef.refEvent, listener]);\n refElement.addEventListener(eventRef.refEvent, listener);\n }\n }\n }\n\n if (methods) {\n for (const [method, methodRef] of Object.entries(methods)) {\n const refElement = getElementByRef(methodRef.ref) as any;\n // should always have refElement.\n // istanbul ignore else\n if (refElement) {\n Object.defineProperty(node, method, {\n value: function (...args: unknown[]) {\n return refElement[methodRef.refMethod](...args);\n },\n });\n }\n }\n }\n}\n","import { CustomTemplateConstructor } from \"@next-core/brick-types\";\nimport { appRegistered, customTemplateRegistry } from \"./constants\";\n\nexport function registerCustomTemplate(\n tplName: string,\n tplConstructor: CustomTemplateConstructor,\n appId?: string\n): void {\n let tagName = tplName;\n // When a template is registered by an app, its namespace maybe missed.\n if (appId && !tplName.includes(\".\")) {\n tagName = `${appId}.${tplName}`;\n }\n let registered = customTemplateRegistry.has(tagName);\n if (registered) {\n // When open launchpad, the storyboard will be updated.\n // However, we can't *undefine* a custom element.\n // Just ignore re-registering custom templates.\n if (!appId || appRegistered.has(appId)) {\n // eslint-disable-next-line no-console\n console.warn(`Custom template of \"${tagName}\" already registered.`);\n }\n } else {\n registered = !!customElements.get(tagName);\n if (registered) {\n // eslint-disable-next-line no-console\n console.warn(\n `Custom template of \"${tagName}\" already defined by customElements.`\n );\n }\n }\n // Now we allow re-register custom template\n customTemplateRegistry.set(tagName, {\n ...tplConstructor,\n name: tagName,\n });\n\n // Collect defined properties of the template.\n const props = getPropsOfCustomTemplate(tagName);\n const nativeProp = props.find((prop) => prop in HTMLElement.prototype);\n // istanbul ignore if\n if (nativeProp !== undefined) {\n // eslint-disable-next-line no-console\n console.error(\n `In custom template \"${tagName}\", \"${nativeProp}\" is a native HTMLElement property, and should be avoid to be used as a brick property.`\n );\n }\n\n if (registered) {\n return;\n }\n\n customElements.define(\n tagName,\n class TplElement extends HTMLElement {\n get $$typeof(): string {\n return \"custom-template\";\n }\n\n static get _dev_only_definedProperties(): string[] {\n return getPropsOfCustomTemplate(tagName);\n }\n\n connectedCallback(): void {\n // Don't override user's style settings.\n // istanbul ignore else\n if (!this.style.display) {\n this.style.display = \"block\";\n }\n }\n }\n );\n if (appId) {\n appRegistered.add(appId);\n }\n}\n\nfunction getPropsOfCustomTemplate(tagName: string): string[] {\n const { state, proxy } = customTemplateRegistry.get(tagName);\n return (state?.map((item) => item.name) ?? []).concat(\n Object.keys(proxy?.properties ?? {})\n );\n}\n","export type CustomProcessorFunc = (...args: any[]) => any;\n\nexport const customProcessorRegistry = new Map<\n string,\n Map<string, CustomProcessorFunc>\n>();\n\nexport function registerCustomProcessor(\n processorFullName: string,\n processorFunc: CustomProcessorFunc\n): void {\n // `namespace` should be the camelCase of the package name.\n const [namespace, processorName] = processorFullName.split(\".\");\n let registry = customProcessorRegistry.get(namespace);\n if (!registry) {\n registry = new Map();\n customProcessorRegistry.set(namespace, registry);\n }\n if (registry.has(processorName)) {\n // eslint-disable-next-line no-console\n throw new Error(\n `Custom processor of \"${processorFullName}\" already registered`\n );\n }\n registry.set(processorName, processorFunc);\n}\n","import { Runtime } from \"./core/exports\";\nimport { createHistory } from \"./history\";\nimport { createMessageDispatcher } from \"./core/MessageDispatcher\";\n\nlet runtime: Runtime;\n\n/** @internal */\nexport function createRuntime(): Runtime {\n createHistory();\n createMessageDispatcher();\n runtime = new Runtime();\n return runtime;\n}\n\n/**\n * 获取系统运行时对象。\n *\n * @example\n *\n * ```ts\n * import { getRuntime } from \"@next-core/brick-kit\";\n *\n * const flags = getRuntime.getFeatureFlags();\n * ```\n *\n * @returns 详见 {@link AbstractRuntime}\n */\nexport function getRuntime(): Runtime {\n return runtime;\n}\n","import React from \"react\";\nimport {\n withTranslation,\n WithTranslation,\n // `WithTranslationProps` and `Subtract` is required for api-extractor.\n WithTranslationProps,\n Subtract,\n} from \"react-i18next\";\nimport { httpErrorToString } from \"./handleHttpError\";\nimport { NS_BRICK_KIT, K } from \"./i18n/constants\";\n\ninterface ErrorBoundaryState {\n error: any;\n}\n\n// Ref https://reactjs.org/docs/error-boundaries.html\nclass LegacyErrorBoundary extends React.Component<\n WithTranslation<typeof NS_BRICK_KIT>,\n ErrorBoundaryState\n> {\n constructor(props: WithTranslation<typeof NS_BRICK_KIT>) {\n super(props);\n this.state = { error: null };\n }\n\n static getDerivedStateFromError(error: Error): ErrorBoundaryState {\n // Update state so the next render will show the fallback UI.\n return { error };\n }\n\n /* componentDidCatch(error, info) {\n // You can also log the error to an error reporting service\n logErrorToMyService(error, info);\n } */\n\n render(): React.ReactNode {\n if (this.state.error) {\n // You can render any custom fallback UI\n return (\n <div data-testid=\"error-boundary\">\n <h3>{this.props.t(K.SOMETHING_WENT_WRONG)}</h3>\n <p>{httpErrorToString(this.state.error)}</p>\n </div>\n );\n }\n\n return this.props.children;\n }\n}\n\n/** @internal */\nexport const ErrorBoundary: React.ComponentType<\n Omit<\n Subtract<WithTranslation<typeof NS_BRICK_KIT>, WithTranslationProps>,\n keyof WithTranslation<typeof NS_BRICK_KIT>\n > &\n WithTranslationProps\n> = withTranslation(NS_BRICK_KIT)(LegacyErrorBoundary);\n","import { getRuntime } from \"../runtime\";\nimport { PropertyDeclaration } from \"../UpdatingElement\";\n\nexport function warnNativeHtmlElementProperty(\n key: string,\n options?: PropertyDeclaration\n): void {\n // Testing env is ignored to simplify dependents testing.\n // istanbul ignore if\n if (\n key in HTMLElement.prototype &&\n !options?.__deprecated_and_for_compatibility_only\n ) {\n const message = `\"${key}\" is a native HTMLElement property, and is deprecated to be used as a brick property.`;\n // istanbul ignore if\n if (process.env.NODE_ENV === \"test\") {\n // Allow existed properties to work.\n // But throw error at test, to avoid new conflicted properties.\n throw new Error(message);\n }\n // eslint-disable-next-line no-console\n console[\n getRuntime().getFeatureFlags()[\"development-mode\"] ? \"error\" : \"warn\"\n ](message);\n }\n}\n","// Inspired by [LitElement](https://github.com/Polymer/lit-element)\nimport { PropertyDeclaration, UpdatingElement } from \"../UpdatingElement\";\nimport { ClassElement } from \"./interfaces\";\nimport { warnNativeHtmlElementProperty } from \"./utils\";\n\n// About the (most likely) related version of decorator proposal:\n// https://github.com/tc39/proposal-decorators/blob/691d95e67052e125239a725d2756cb8a039c5fb9/previous/METAPROGRAMMING.md\n\n/**\n * 构件属性装饰器。\n *\n * @example\n *\n * ```ts\n * class MyBrickElement extends UpdatingElement {\n * @property()\n * myStringProp: string;\n *\n * @property({ type: Number })\n * myNumberProp: number;\n *\n * @property({ type: Boolean })\n * myBooleanProperty: boolean;\n *\n * @property({ attribute: false })\n * myComplexProperty: MyComplexInterface;\n * }\n * ```\n *\n * @param options - 构件属性的选项。\n */\nexport function property(options?: PropertyDeclaration): any {\n return function decorateProperty(element: ClassElement): ClassElement {\n if (options?.__unstable_doNotDecorate) {\n return element;\n }\n if (element.kind !== \"field\" || typeof element.key !== \"string\") {\n throw new Error(\n \"`@property()` only support decorate class string property\"\n );\n }\n if (\n typeof element.initializer === \"function\" &&\n options?.attribute !== false\n ) {\n throw new Error(\"`@property()` currently not support initialize value\");\n }\n\n warnNativeHtmlElementProperty(element.key, options);\n\n // createProperty() takes care of defining the property, but we still\n // must return some kind of descriptor, so return a descriptor for an\n // unused prototype field. The finisher calls createProperty().\n return {\n kind: \"field\",\n key: Symbol(),\n placement: \"own\",\n descriptor: {},\n initializer(this: { [key: string]: unknown }) {\n if (typeof element.initializer === \"function\") {\n this[element.key as string] = element.initializer.call(this);\n }\n },\n finisher(Class: typeof UpdatingElement) {\n Class.createProperty(element.key as string, options);\n },\n };\n };\n}\n","import { UpdatingElement, EventDeclaration } from \"../UpdatingElement\";\nimport { ClassElement } from \"./interfaces\";\nimport { warnNativeHtmlElementProperty } from \"./utils\";\n\n/**\n * 构件事件装饰器。\n *\n * @example\n *\n * ```ts\n * class MyBrickElement extends UpdatingElement {\n * @event({\n * type: \"my-brick.my-event\",\n * })\n * private _myEventEmitter: EventEmitter<number>;\n *\n * private _triggerMyEvent = (): void => {\n * this._myEventEmitter.emit(123);\n * };\n * }\n * ```\n *\n * @param options - 构件事件的选项。\n */\nexport function event(options: EventDeclaration): any {\n return function decorateEvent(element: ClassElement): ClassElement {\n if (element.kind !== \"field\" || typeof element.key !== \"string\") {\n throw new Error(\"`@event()` only support decorate class string property\");\n }\n\n if (typeof element.initializer === \"function\") {\n throw new Error(\"`@event()` currently not support initialize value\");\n }\n\n warnNativeHtmlElementProperty(element.key);\n\n return {\n kind: \"field\",\n key: Symbol(),\n placement: \"own\",\n descriptor: {},\n finisher(Class: typeof UpdatingElement) {\n Class.createEventEmitter(element.key as string, options);\n },\n };\n };\n}\n","import { UpdatingElement } from \"../UpdatingElement\";\nimport { ClassElement } from \"./interfaces\";\nimport { warnNativeHtmlElementProperty } from \"./utils\";\n\n/**\n * 构件方法装饰器。\n *\n * @example\n *\n * ```ts\n * class MyBrickElement extends UpdatingElement {\n * @method()\n * myMethod(): void {\n * // Do something.\n * }\n * }\n * ```\n */\nexport function method(): any {\n return function decorateMethod(element: ClassElement): ClassElement {\n if (element.kind !== \"method\" || typeof element.key !== \"string\") {\n throw new Error(\"`@method()` only support decorate class string method\");\n }\n\n warnNativeHtmlElementProperty(element.key);\n\n return {\n ...element,\n finisher(Class: typeof UpdatingElement) {\n Class.createMethod(element.key as string);\n },\n };\n };\n}\n","import { useEffect } from \"react\";\nimport { getRuntime } from \"./runtime\";\n\n/**\n * 设置页面标题,将更新浏览器标签页显示的标题。\n *\n * @example\n *\n * ```tsx\n * function MyReactComponent(props) {\n * useApplyPageTitle(props.pageTitle);\n * // ...\n * }\n * ```\n *\n * @param pageTitle - 页面标题。\n */\nexport function useApplyPageTitle(pageTitle: string): void {\n useEffect(() => {\n getRuntime().applyPageTitle(pageTitle);\n }, [pageTitle]);\n}\n","import React from \"react\";\nimport { RecentApps } from \"./core/interfaces\";\nimport { getRuntime } from \"./runtime\";\n\n/** @internal */\nexport function useRecentApps(): RecentApps {\n const [recentApps, setRecentApps] = React.useState<RecentApps>(\n getRuntime().getRecentApps()\n );\n\n React.useEffect(() => {\n const listener = ((event: CustomEvent<RecentApps>) => {\n setRecentApps(event.detail);\n }) as EventListener;\n window.addEventListener(\"app.change\", listener);\n return () => window.removeEventListener(\"app.change\", listener);\n }, []);\n\n return recentApps;\n}\n","import { MicroApp } from \"@next-core/brick-types\";\nimport { useRecentApps } from \"./useRecentApps\";\n\n/**\n * 获取当前所在微应用信息的 React hooks。\n *\n * @example\n *\n * ```tsx\n * function MyReactComponent() {\n * const app = useCurrentApp();\n * return <div>{app.id}</div>;\n * }\n * ```\n *\n * @returns 当前所在微应用的信息。\n */\nexport function useCurrentApp(): MicroApp {\n return useRecentApps().currentApp;\n}\n","import React from \"react\";\nimport { Location } from \"history\";\nimport { PluginHistoryState } from \"@next-core/brick-types\";\nimport { getHistory } from \"./history\";\n\n/** @internal */\nexport function useLocation(): Location<PluginHistoryState> {\n const history = getHistory();\n const [location, setLocation] = React.useState(history.location);\n\n React.useEffect(() => {\n const unlisten = history.listen((location) => setLocation(location));\n return unlisten;\n }, [history]);\n\n return location;\n}\n","import { set } from \"lodash\";\nimport React, { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport { isObject } from \"@next-core/brick-utils\";\nimport {\n UseBrickConf,\n UseSingleBrickConf,\n RuntimeBrickElement,\n BrickEventsMap,\n UseBrickSlotsConf,\n BrickConf,\n RuntimeBrickConf,\n SlotsConf,\n} from \"@next-core/brick-types\";\nimport { bindListeners, unbindListeners } from \"./internal/bindListeners\";\nimport { setRealProperties } from \"./internal/setProperties\";\nimport {\n RuntimeBrick,\n _internalApiGetCurrentContext,\n _internalApiGetResolver,\n _internalApiGetRouterState,\n _internalApiLoadDynamicBricksInBrickConf,\n RuntimeBrickConfWithTplSymbols,\n symbolForTplContextId,\n symbolForComputedPropsFromProxy,\n symbolForRefForProxy,\n expandCustomTemplate,\n getTagNameOfCustomTemplate,\n handleProxyOfCustomTemplate,\n} from \"./core/exports\";\nimport { handleHttpError } from \"./handleHttpError\";\nimport {\n transformProperties,\n doTransform,\n DoTransformOptions,\n} from \"./transformProperties\";\nimport { looseCheckIfByTransform } from \"./checkIf\";\nimport { isPreEvaluated } from \"./internal/evaluate\";\nimport { cloneDeepWithInjectedMark } from \"./internal/injected\";\nimport {\n listenOnTrackingContext,\n TrackingContextItem,\n} from \"./internal/listenOnTrackingContext\";\n\ninterface BrickAsComponentProps {\n useBrick: UseBrickConf;\n data?: unknown;\n /**\n * @deprecated\n */\n parentRefForUseBrickInPortal?: React.RefObject<HTMLElement>;\n}\n\ninterface SingleBrickAsComponentProps extends BrickAsComponentProps {\n useBrick: UseSingleBrickConf;\n refCallback?: (element: HTMLElement) => void;\n immediatelyRefCallback?: (element: HTMLElement) => void;\n}\n\nconst expandTemplateInUseBrick = (\n useBrick: UseSingleBrickConf,\n tplTagName: string | false,\n brick: RuntimeBrick\n): RuntimeBrickConf => {\n let template: RuntimeBrickConf;\n if (tplTagName) {\n // 如果是模板, 需要展开解析模板, 并遍历模板中的slots, 再给slots的brick绑定值给自身\n // 为后续ProxyRefs获取brick做值缓存\n const tplConf: RuntimeBrickConf = {\n brick: tplTagName,\n properties: brick.properties,\n events: useBrick.events,\n lifeCycle: useBrick.lifeCycle,\n slots: useBrick.slots as SlotsConf,\n };\n template = expandCustomTemplate(\n tplConf,\n brick,\n _internalApiGetCurrentContext()\n );\n } else if (\n (useBrick as RuntimeBrickConfWithTplSymbols)[symbolForRefForProxy]\n ) {\n (useBrick as RuntimeBrickConfWithTplSymbols)[symbolForRefForProxy].brick =\n brick;\n }\n return template;\n};\n\nconst getCurrentRunTimeBrick = (\n useBrick: UseSingleBrickConf,\n tplTagName: string | false,\n data: unknown\n): RuntimeBrick => {\n const trackingContextList: TrackingContextItem[] = [];\n const tplContextId = (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForTplContextId\n ];\n const transformOption: DoTransformOptions = {\n // Keep lazy fields inside `useBrick` inside the `properties`.\n // They will be transformed by their `BrickAsComponent` later.\n $$lazyForUseBrick: true,\n trackingContextList,\n allowInject: true,\n tplContextId,\n };\n\n const properties = doTransform(\n data,\n cloneDeepWithInjectedMark(useBrick.properties) || {},\n transformOption\n );\n\n const brick: RuntimeBrick = {\n ...useBrick,\n type: tplTagName || useBrick.brick,\n // Now transform data in properties too.\n properties,\n };\n\n const runtimeContext = _internalApiGetCurrentContext();\n\n listenOnTrackingContext(brick, trackingContextList, {\n ...runtimeContext,\n tplContextId,\n });\n\n return brick;\n};\n\n/**\n * 可以渲染单个 `useBrick` 的 React 组件。\n *\n * @example\n *\n * ```tsx\n * <BrickAsComponent\n * useBrick={{\n * brick: \"your.any-brick\"\n * }}\n * data={yourData}\n * />\n * ```\n *\n * @param props - 属性。\n */\nexport const SingleBrickAsComponent = React.memo(\n function SingleBrickAsComponent({\n useBrick,\n data,\n refCallback,\n immediatelyRefCallback,\n }: SingleBrickAsComponentProps): React.ReactElement {\n const templateRef = useRef<RuntimeBrickConf>();\n const tplTagName = getTagNameOfCustomTemplate(\n useBrick.brick,\n _internalApiGetCurrentContext().app?.id\n );\n\n const isBrickAvailable = React.useMemo(() => {\n if (isObject(useBrick.if) && !isPreEvaluated(useBrick.if)) {\n // eslint-disable-next-line\n console.warn(\"Currently resolvable-if in `useBrick` is not supported.\");\n } else if (\n !looseCheckIfByTransform(useBrick, data, {\n allowInject: true,\n // useBrick 中嵌套custom-template的情况下, 会存在丢失getTplVariables的情况, 因此需要在此进行补充\n tplContextId: (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForTplContextId\n ],\n })\n ) {\n return false;\n }\n\n return true;\n }, [useBrick, data]);\n\n const runtimeBrick = React.useMemo(async () => {\n if (!isBrickAvailable) {\n return null;\n }\n\n // If the router state is initial, ignore rendering the sub-brick.\n if (_internalApiGetRouterState() === \"initial\") {\n return;\n }\n\n _internalApiLoadDynamicBricksInBrickConf(useBrick as BrickConf).catch(\n handleHttpError\n );\n\n const brick = getCurrentRunTimeBrick(useBrick, tplTagName, data);\n\n templateRef.current = expandTemplateInUseBrick(\n useBrick,\n tplTagName,\n brick\n );\n\n // Let `transform` works still.\n transformProperties(\n brick.properties,\n data,\n useBrick.transform,\n useBrick.transformFrom,\n undefined,\n {\n allowInject: true,\n }\n );\n\n // 设置 properties refProperty值\n if (\n (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForComputedPropsFromProxy\n ]\n ) {\n Object.entries(\n (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForComputedPropsFromProxy\n ]\n ).forEach(([propName, propValue]) => {\n set(brick.properties, propName, propValue);\n });\n }\n\n if (useBrick.lifeCycle) {\n const resolver = _internalApiGetResolver();\n await resolver.resolve(\n {\n brick: useBrick.brick,\n lifeCycle: useBrick.lifeCycle,\n },\n brick,\n {\n ..._internalApiGetCurrentContext(),\n tplContextId: (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForTplContextId\n ],\n }\n );\n }\n\n return brick;\n }, [useBrick, data, isBrickAvailable]);\n\n const innerRefCallback = React.useCallback(\n async (element: HTMLElement) => {\n immediatelyRefCallback?.(element);\n if (element) {\n let brick: RuntimeBrick;\n try {\n brick = await runtimeBrick;\n } catch (e) {\n handleHttpError(e);\n }\n // sub-brick rendering is ignored.\n if (!brick) {\n return;\n }\n brick.element = element;\n\n const { [symbolForTplContextId]: tplContextId } =\n useBrick as RuntimeBrickConfWithTplSymbols;\n\n if (useBrick.iid) {\n element.dataset.iid = useBrick.iid;\n }\n setRealProperties(element, brick.properties);\n unbindListeners(element);\n if (brick.events) {\n bindListeners(element, transformEvents(data, brick.events), {\n ..._internalApiGetCurrentContext(),\n tplContextId,\n });\n }\n // 设置proxyEvent\n handleProxyOfCustomTemplate(brick);\n\n if ((element as RuntimeBrickElement).$$typeof !== \"custom-template\") {\n if (!useBrick.brick.includes(\"-\")) {\n (element as RuntimeBrickElement).$$typeof = \"native\";\n } else if (!customElements.get(useBrick.brick)) {\n (element as RuntimeBrickElement).$$typeof = \"invalid\";\n }\n }\n }\n\n refCallback?.(element);\n },\n [runtimeBrick, useBrick, data, refCallback, immediatelyRefCallback]\n );\n\n if (!isBrickAvailable) {\n return null;\n }\n\n return React.createElement(\n templateRef.current?.brick ?? (tplTagName || useBrick.brick),\n {\n ref: innerRefCallback,\n },\n ...slotsToChildren(\n (templateRef.current ?? useBrick).slots as UseBrickSlotsConf\n ).map((item: UseSingleBrickConf, index: number) => (\n <SingleBrickAsComponent key={index} useBrick={item} data={data} />\n ))\n );\n }\n);\n\n/**\n * 可以渲染 `useBrick` 的 React 组件。\n *\n * @remarks `useBrick` 可以传递单个或多个构件配置。\n *\n * @example\n *\n * ```tsx\n * <BrickAsComponent\n * useBrick={{\n * brick: \"your.any-brick\"\n * }}\n * data={yourData}\n * />\n * ```\n *\n * @param props - 属性。\n */\nexport function BrickAsComponent({\n useBrick,\n data,\n}: BrickAsComponentProps): React.ReactElement {\n if (Array.isArray(useBrick)) {\n return (\n <>\n {useBrick.map((item, index) => (\n <SingleBrickAsComponent key={index} useBrick={item} data={data} />\n ))}\n </>\n );\n }\n return <SingleBrickAsComponent useBrick={useBrick} data={data} />;\n}\n\nfunction slotsToChildren(slots: UseBrickSlotsConf): UseSingleBrickConf[] {\n if (!slots) {\n return [];\n }\n return Object.entries(slots).flatMap(([slot, slotConf]) =>\n Array.isArray(slotConf.bricks)\n ? slotConf.bricks.map((child) => ({\n ...child,\n properties: {\n ...child.properties,\n slot,\n },\n }))\n : []\n );\n}\n\nfunction transformEvents(\n data: unknown,\n events: BrickEventsMap\n): BrickEventsMap {\n return doTransform(data, events, {\n evaluateOptions: {\n lazy: true,\n },\n }) as BrickEventsMap;\n}\n\n/* istanbul ignore next */\n// eslint-disable-next-line react/display-name\nexport const ForwardRefSingleBrickAsComponent = React.memo(\n forwardRef<HTMLElement, SingleBrickAsComponentProps>(\n function LegacySingleBrickAsComponent(\n { useBrick, data, refCallback }: SingleBrickAsComponentProps,\n ref\n ): React.ReactElement {\n const brickRef = useRef<HTMLElement>();\n const templateRef = useRef<RuntimeBrickConf>();\n const tplTagName = getTagNameOfCustomTemplate(\n useBrick.brick,\n _internalApiGetCurrentContext().app?.id\n );\n\n const isBrickAvailable = React.useMemo(() => {\n if (isObject(useBrick.if) && !isPreEvaluated(useBrick.if)) {\n // eslint-disable-next-line\n console.warn(\n \"Currently resolvable-if in `useBrick` is not supported.\"\n );\n } else if (\n !looseCheckIfByTransform(useBrick, data, {\n allowInject: true,\n // useBrick 中嵌套custom-template的情况下, 会存在丢失getTplVariables的情况, 因此需要在此进行补充\n tplContextId: (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForTplContextId\n ],\n })\n ) {\n return false;\n }\n\n return true;\n }, [useBrick, data]);\n\n /* istanbul ignore next (never reach in test) */\n useImperativeHandle(ref, () => {\n return brickRef.current;\n });\n\n const runtimeBrick = React.useMemo(async () => {\n if (!isBrickAvailable) {\n return null;\n }\n\n // If the router state is initial, ignore rendering the sub-brick.\n if (_internalApiGetRouterState() === \"initial\") {\n return;\n }\n\n _internalApiLoadDynamicBricksInBrickConf(useBrick as BrickConf).catch(\n handleHttpError\n );\n\n const brick = getCurrentRunTimeBrick(useBrick, tplTagName, data);\n\n templateRef.current = expandTemplateInUseBrick(\n useBrick,\n tplTagName,\n brick\n );\n\n // Let `transform` works still.\n transformProperties(\n brick.properties,\n data,\n useBrick.transform,\n useBrick.transformFrom,\n undefined,\n {\n allowInject: true,\n }\n );\n\n // 设置 properties refProperty值\n if (\n (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForComputedPropsFromProxy\n ]\n ) {\n Object.entries(\n (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForComputedPropsFromProxy\n ]\n ).forEach(([propName, propValue]) => {\n set(brick.properties, propName, propValue);\n });\n }\n\n if (useBrick.lifeCycle) {\n const resolver = _internalApiGetResolver();\n await resolver.resolve(\n {\n brick: useBrick.brick,\n lifeCycle: useBrick.lifeCycle,\n },\n brick,\n {\n ..._internalApiGetCurrentContext(),\n tplContextId: (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForTplContextId\n ],\n }\n );\n }\n\n return brick;\n }, [useBrick, data, isBrickAvailable]);\n\n const innerRefCallback = React.useCallback(\n async (element: HTMLElement) => {\n brickRef.current = element;\n\n if (element) {\n let brick: RuntimeBrick;\n try {\n brick = await runtimeBrick;\n } catch (e) {\n handleHttpError(e);\n }\n // sub-brick rendering is ignored.\n if (!brick) {\n return;\n }\n brick.element = element;\n\n const { [symbolForTplContextId]: tplContextId } =\n useBrick as RuntimeBrickConfWithTplSymbols;\n\n if (useBrick.iid) {\n element.dataset.iid = useBrick.iid;\n }\n setRealProperties(element, brick.properties);\n unbindListeners(element);\n if (useBrick.events) {\n bindListeners(element, transformEvents(data, useBrick.events), {\n ..._internalApiGetCurrentContext(),\n tplContextId,\n });\n }\n // 设置proxyEvent\n handleProxyOfCustomTemplate(brick);\n\n if (\n (element as RuntimeBrickElement).$$typeof !== \"custom-template\"\n ) {\n if (!useBrick.brick.includes(\"-\")) {\n (element as RuntimeBrickElement).$$typeof = \"native\";\n } else if (!customElements.get(useBrick.brick)) {\n (element as RuntimeBrickElement).$$typeof = \"invalid\";\n }\n }\n }\n refCallback?.(element);\n },\n [runtimeBrick, useBrick, data, refCallback]\n );\n\n if (!isBrickAvailable) {\n return null;\n }\n\n return React.createElement(\n templateRef.current?.brick ?? (tplTagName || useBrick.brick),\n {\n ref: innerRefCallback,\n },\n ...slotsToChildren(\n (templateRef.current ?? useBrick).slots as UseBrickSlotsConf\n ).map((item: UseSingleBrickConf, index: number) => (\n <SingleBrickAsComponent key={index} useBrick={item} data={data} />\n ))\n );\n }\n )\n);\n","export default {\n // Options.jsx\n items_per_page: '条/页',\n jump_to: '跳至',\n jump_to_confirm: '确定',\n page: '页',\n // Pagination.jsx\n prev_page: '上一页',\n next_page: '下一页',\n prev_5: '向前 5 页',\n next_5: '向后 5 页',\n prev_3: '向前 3 页',\n next_3: '向后 3 页'\n};","var locale = {\n locale: 'zh_CN',\n today: '今天',\n now: '此刻',\n backToToday: '返回今天',\n ok: '确定',\n timeSelect: '选择时间',\n dateSelect: '选择日期',\n weekSelect: '选择周',\n clear: '清除',\n month: '月',\n year: '年',\n previousMonth: '上个月 (翻页上键)',\n nextMonth: '下个月 (翻页下键)',\n monthSelect: '选择月份',\n yearSelect: '选择年份',\n decadeSelect: '选择年代',\n yearFormat: 'YYYY年',\n dayFormat: 'D日',\n dateFormat: 'YYYY年M月D日',\n dateTimeFormat: 'YYYY年M月D日 HH时mm分ss秒',\n previousYear: '上一年 (Control键加左方向键)',\n nextYear: '下一年 (Control键加右方向键)',\n previousDecade: '上一年代',\n nextDecade: '下一年代',\n previousCentury: '上一世纪',\n nextCentury: '下一世纪'\n};\nexport default locale;","var locale = {\n placeholder: '请选择时间',\n rangePlaceholder: ['开始时间', '结束时间']\n};\nexport default locale;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport CalendarLocale from \"rc-picker/es/locale/zh_CN\";\nimport TimePickerLocale from '../../time-picker/locale/zh_CN'; // 统一合并为完整的 Locale\n\nvar locale = {\n lang: _extends({\n placeholder: '请选择日期',\n yearPlaceholder: '请选择年份',\n quarterPlaceholder: '请选择季度',\n monthPlaceholder: '请选择月份',\n weekPlaceholder: '请选择周',\n rangePlaceholder: ['开始日期', '结束日期'],\n rangeYearPlaceholder: ['开始年份', '结束年份'],\n rangeMonthPlaceholder: ['开始月份', '结束月份'],\n rangeWeekPlaceholder: ['开始周', '结束周']\n }, CalendarLocale),\n timePickerLocale: _extends({}, TimePickerLocale)\n}; // should add whitespace between char in Button\n\nlocale.lang.ok = '确 定'; // All settings at:\n// https://github.com/ant-design/ant-design/blob/master/components/date-picker/locale/example.json\n\nexport default locale;","/* eslint-disable no-template-curly-in-string */\nimport Pagination from \"rc-pagination/es/locale/zh_CN\";\nimport DatePicker from '../date-picker/locale/zh_CN';\nimport TimePicker from '../time-picker/locale/zh_CN';\nimport Calendar from '../calendar/locale/zh_CN';\nvar typeTemplate = '${label}不是一个有效的${type}';\nvar localeValues = {\n locale: 'zh-cn',\n Pagination: Pagination,\n DatePicker: DatePicker,\n TimePicker: TimePicker,\n Calendar: Calendar,\n // locales for all components\n global: {\n placeholder: '请选择'\n },\n Table: {\n filterTitle: '筛选',\n filterConfirm: '确定',\n filterReset: '重置',\n filterEmptyText: '无筛选项',\n selectAll: '全选当页',\n selectInvert: '反选当页',\n selectNone: '清空所有',\n selectionAll: '全选所有',\n sortTitle: '排序',\n expand: '展开行',\n collapse: '关闭行',\n triggerDesc: '点击降序',\n triggerAsc: '点击升序',\n cancelSort: '取消排序'\n },\n Modal: {\n okText: '确定',\n cancelText: '取消',\n justOkText: '知道了'\n },\n Popconfirm: {\n cancelText: '取消',\n okText: '确定'\n },\n Transfer: {\n searchPlaceholder: '请输入搜索内容',\n itemUnit: '项',\n itemsUnit: '项',\n remove: '删除',\n selectCurrent: '全选当页',\n removeCurrent: '删除当页',\n selectAll: '全选所有',\n removeAll: '删除全部',\n selectInvert: '反选当页'\n },\n Upload: {\n uploading: '文件上传中',\n removeFile: '删除文件',\n uploadError: '上传错误',\n previewFile: '预览文件',\n downloadFile: '下载文件'\n },\n Empty: {\n description: '暂无数据'\n },\n Icon: {\n icon: '图标'\n },\n Text: {\n edit: '编辑',\n copy: '复制',\n copied: '复制成功',\n expand: '展开'\n },\n PageHeader: {\n back: '返回'\n },\n Form: {\n optional: '(可选)',\n defaultValidateMessages: {\n \"default\": '字段验证错误${label}',\n required: '请输入${label}',\n \"enum\": '${label}必须是其中一个[${enum}]',\n whitespace: '${label}不能为空字符',\n date: {\n format: '${label}日期格式无效',\n parse: '${label}不能转换为日期',\n invalid: '${label}是一个无效日期'\n },\n types: {\n string: typeTemplate,\n method: typeTemplate,\n array: typeTemplate,\n object: typeTemplate,\n number: typeTemplate,\n date: typeTemplate,\n \"boolean\": typeTemplate,\n integer: typeTemplate,\n \"float\": typeTemplate,\n regexp: typeTemplate,\n email: typeTemplate,\n url: typeTemplate,\n hex: typeTemplate\n },\n string: {\n len: '${label}须为${len}个字符',\n min: '${label}最少${min}个字符',\n max: '${label}最多${max}个字符',\n range: '${label}须在${min}-${max}字符之间'\n },\n number: {\n len: '${label}必须等于${len}',\n min: '${label}最小值为${min}',\n max: '${label}最大值为${max}',\n range: '${label}须在${min}-${max}之间'\n },\n array: {\n len: '须为${len}个${label}',\n min: '最少${min}个${label}',\n max: '最多${max}个${label}',\n range: '${label}数量须在${min}-${max}之间'\n },\n pattern: {\n mismatch: '${label}与模式不匹配${pattern}'\n }\n }\n },\n Image: {\n preview: '预览'\n }\n};\nexport default localeValues;","export default {\n // Options.jsx\n items_per_page: '/ page',\n jump_to: 'Go to',\n jump_to_confirm: 'confirm',\n page: '',\n // Pagination.jsx\n prev_page: 'Previous Page',\n next_page: 'Next Page',\n prev_5: 'Previous 5 Pages',\n next_5: 'Next 5 Pages',\n prev_3: 'Previous 3 Pages',\n next_3: 'Next 3 Pages'\n};","var locale = {\n locale: 'en_US',\n today: 'Today',\n now: 'Now',\n backToToday: 'Back to today',\n ok: 'Ok',\n clear: 'Clear',\n month: 'Month',\n year: 'Year',\n timeSelect: 'select time',\n dateSelect: 'select date',\n weekSelect: 'Choose a week',\n monthSelect: 'Choose a month',\n yearSelect: 'Choose a year',\n decadeSelect: 'Choose a decade',\n yearFormat: 'YYYY',\n dateFormat: 'M/D/YYYY',\n dayFormat: 'D',\n dateTimeFormat: 'M/D/YYYY HH:mm:ss',\n monthBeforeYear: true,\n previousMonth: 'Previous month (PageUp)',\n nextMonth: 'Next month (PageDown)',\n previousYear: 'Last year (Control + left)',\n nextYear: 'Next year (Control + right)',\n previousDecade: 'Last decade',\n nextDecade: 'Next decade',\n previousCentury: 'Last century',\n nextCentury: 'Next century'\n};\nexport default locale;","var locale = {\n placeholder: 'Select time',\n rangePlaceholder: ['Start time', 'End time']\n};\nexport default locale;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport CalendarLocale from \"rc-picker/es/locale/en_US\";\nimport TimePickerLocale from '../../time-picker/locale/en_US'; // Merge into a locale object\n\nvar locale = {\n lang: _extends({\n placeholder: 'Select date',\n yearPlaceholder: 'Select year',\n quarterPlaceholder: 'Select quarter',\n monthPlaceholder: 'Select month',\n weekPlaceholder: 'Select week',\n rangePlaceholder: ['Start date', 'End date'],\n rangeYearPlaceholder: ['Start year', 'End year'],\n rangeMonthPlaceholder: ['Start month', 'End month'],\n rangeWeekPlaceholder: ['Start week', 'End week']\n }, CalendarLocale),\n timePickerLocale: _extends({}, TimePickerLocale)\n}; // All settings at:\n// https://github.com/ant-design/ant-design/blob/master/components/date-picker/locale/example.json\n\nexport default locale;","/* eslint-disable no-template-curly-in-string */\nimport Pagination from \"rc-pagination/es/locale/en_US\";\nimport DatePicker from '../date-picker/locale/en_US';\nimport TimePicker from '../time-picker/locale/en_US';\nimport Calendar from '../calendar/locale/en_US';\nvar typeTemplate = '${label} is not a valid ${type}';\nvar localeValues = {\n locale: 'en',\n Pagination: Pagination,\n DatePicker: DatePicker,\n TimePicker: TimePicker,\n Calendar: Calendar,\n global: {\n placeholder: 'Please select'\n },\n Table: {\n filterTitle: 'Filter menu',\n filterConfirm: 'OK',\n filterReset: 'Reset',\n filterEmptyText: 'No filters',\n emptyText: 'No data',\n selectAll: 'Select current page',\n selectInvert: 'Invert current page',\n selectNone: 'Clear all data',\n selectionAll: 'Select all data',\n sortTitle: 'Sort',\n expand: 'Expand row',\n collapse: 'Collapse row',\n triggerDesc: 'Click to sort descending',\n triggerAsc: 'Click to sort ascending',\n cancelSort: 'Click to cancel sorting'\n },\n Modal: {\n okText: 'OK',\n cancelText: 'Cancel',\n justOkText: 'OK'\n },\n Popconfirm: {\n okText: 'OK',\n cancelText: 'Cancel'\n },\n Transfer: {\n titles: ['', ''],\n searchPlaceholder: 'Search here',\n itemUnit: 'item',\n itemsUnit: 'items',\n remove: 'Remove',\n selectCurrent: 'Select current page',\n removeCurrent: 'Remove current page',\n selectAll: 'Select all data',\n removeAll: 'Remove all data',\n selectInvert: 'Invert current page'\n },\n Upload: {\n uploading: 'Uploading...',\n removeFile: 'Remove file',\n uploadError: 'Upload error',\n previewFile: 'Preview file',\n downloadFile: 'Download file'\n },\n Empty: {\n description: 'No Data'\n },\n Icon: {\n icon: 'icon'\n },\n Text: {\n edit: 'Edit',\n copy: 'Copy',\n copied: 'Copied',\n expand: 'Expand'\n },\n PageHeader: {\n back: 'Back'\n },\n Form: {\n optional: '(optional)',\n defaultValidateMessages: {\n \"default\": 'Field validation error for ${label}',\n required: 'Please enter ${label}',\n \"enum\": '${label} must be one of [${enum}]',\n whitespace: '${label} cannot be a blank character',\n date: {\n format: '${label} date format is invalid',\n parse: '${label} cannot be converted to a date',\n invalid: '${label} is an invalid date'\n },\n types: {\n string: typeTemplate,\n method: typeTemplate,\n array: typeTemplate,\n object: typeTemplate,\n number: typeTemplate,\n date: typeTemplate,\n \"boolean\": typeTemplate,\n integer: typeTemplate,\n \"float\": typeTemplate,\n regexp: typeTemplate,\n email: typeTemplate,\n url: typeTemplate,\n hex: typeTemplate\n },\n string: {\n len: '${label} must be ${len} characters',\n min: '${label} must be at least ${min} characters',\n max: '${label} must be up to ${max} characters',\n range: '${label} must be between ${min}-${max} characters'\n },\n number: {\n len: '${label} must be equal to ${len}',\n min: '${label} must be minimum ${min}',\n max: '${label} must be maximum ${max}',\n range: '${label} must be between ${min}-${max}'\n },\n array: {\n len: 'Must be ${len} ${label}',\n min: 'At least ${min} ${label}',\n max: 'At most ${max} ${label}',\n range: 'The amount of ${label} must be between ${min}-${max}'\n },\n pattern: {\n mismatch: '${label} does not match the pattern ${pattern}'\n }\n }\n },\n Image: {\n preview: 'Preview'\n }\n};\nexport default localeValues;","/* eslint-disable react/jsx-key */\nimport React from \"react\";\nimport { uniqueId } from \"lodash\";\nimport { useCurrentTheme } from \"../themeAndMode\";\n\nexport interface EmptySvgProps {\n isBig?: boolean;\n}\n\nexport function EmptySvg(props: EmptySvgProps): React.ReactElement {\n const { isBig } = props;\n const theme = useCurrentTheme();\n const prefix = uniqueId();\n const createNewId = (id: string): string => {\n return prefix + id;\n };\n\n if (theme === \"dark-v2\") {\n return isBig ? (\n <svg\n width=\"88px\"\n height=\"83px\"\n viewBox=\"0 0 88 83\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n >\n <title>dark big empty image</title>\n <defs>\n <linearGradient\n x1=\"5.71824875%\"\n y1=\"4.31113823%\"\n x2=\"82.851613%\"\n y2=\"88.6978534%\"\n id={createNewId(\"linearGradient-1\")}\n >\n <stop stopColor=\"#545454\" offset=\"0%\"></stop>\n <stop stopColor=\"#3B3B3B\" offset=\"100%\"></stop>\n </linearGradient>\n <linearGradient\n x1=\"3.89238729%\"\n y1=\"4.31113823%\"\n x2=\"84.2061777%\"\n y2=\"88.6978534%\"\n id={createNewId(\"linearGradient-2\")}\n >\n <stop stopColor=\"#515151\" offset=\"0%\"></stop>\n <stop stopColor=\"#383838\" offset=\"100%\"></stop>\n </linearGradient>\n <path\n d=\"M34.9133489,37.0960187 L43.4004684,37.0960187 C45.6096074,37.0960187 47.4004684,38.8868797 47.4004684,41.0960187 L47.4004684,49.5831382 C47.4004684,51.7922772 45.6096074,53.5831382 43.4004684,53.5831382 L34.9133489,53.5831382 C32.7042099,53.5831382 30.9133489,51.7922772 30.9133489,49.5831382 L30.9133489,41.0960187 C30.9133489,38.8868797 32.7042099,37.0960187 34.9133489,37.0960187 Z\"\n id={createNewId(\"path-3\")}\n ></path>\n <filter\n x=\"-36.4%\"\n y=\"-30.3%\"\n width=\"184.9%\"\n height=\"184.9%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"path-4\")}\n >\n <feOffset\n dx=\"1\"\n dy=\"2\"\n in=\"SourceAlpha\"\n result=\"shadowOffsetOuter1\"\n ></feOffset>\n <feGaussianBlur\n stdDeviation=\"2\"\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n ></feGaussianBlur>\n <feComposite\n in=\"shadowBlurOuter1\"\n in2=\"SourceAlpha\"\n operator=\"out\"\n result=\"shadowBlurOuter1\"\n ></feComposite>\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.22 0\"\n type=\"matrix\"\n in=\"shadowBlurOuter1\"\n ></feColorMatrix>\n </filter>\n <linearGradient\n x1=\"41.822656%\"\n y1=\"24.7954546%\"\n x2=\"8.8126561%\"\n y2=\"86.4269134%\"\n id={createNewId(\"linearGradient-5\")}\n >\n <stop stopColor=\"#676767\" offset=\"0%\"></stop>\n <stop stopColor=\"#787878\" offset=\"100%\"></stop>\n </linearGradient>\n <path\n d=\"M60.9180328,19.5784543 C63.1271718,19.5784543 64.9180328,21.3693153 64.9180328,23.5784543 L64.9180328,31.2366083 L53.2598788,19.5784543 L60.9180328,19.5784543 Z\"\n id={createNewId(\"path-6\")}\n ></path>\n <filter\n x=\"-60.0%\"\n y=\"-77.2%\"\n width=\"220.1%\"\n height=\"220.1%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"filter-7\")}\n >\n <feOffset\n dx=\"0\"\n dy=\"-2\"\n in=\"SourceAlpha\"\n result=\"shadowOffsetOuter1\"\n ></feOffset>\n <feGaussianBlur\n stdDeviation=\"2\"\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n ></feGaussianBlur>\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0\"\n type=\"matrix\"\n in=\"shadowBlurOuter1\"\n ></feColorMatrix>\n </filter>\n </defs>\n <g\n id=\"其他\"\n stroke=\"none\"\n strokeWidth=\"1\"\n fill=\"none\"\n fillRule=\"evenodd\"\n >\n <g id=\"空状态\" transform=\"translate(-345.000000, -239.000000)\">\n <g\n id=\"插图/空表格--白色背景备份-3\"\n transform=\"translate(345.000000, 239.000000)\"\n >\n <path\n d=\"M63.0027562,53.3770492 L16.3415061,53.3770492 C15.617696,53.3770492 14.9220071,53.6573421 14.4003686,54.1591332 L5.7704918,62.4606569 L5.7704918,62.4606569 L5.7704918,76.6295082 C5.7704918,79.7223028 8.2776972,82.2295082 11.3704918,82.2295082 L67.9737705,82.2295082 C71.0665651,82.2295082 73.5737705,79.7223028 73.5737705,76.6295082 L73.5737705,62.4606569 L73.5737705,62.4606569 L64.9438937,54.1591332 C64.4222552,53.6573421 63.7265663,53.3770492 63.0027562,53.3770492 Z\"\n id={createNewId(\"Fill-3\")}\n fill=\"#313131\"\n ></path>\n <path\n d=\"M53.2598788,19.5784543 L64.9180328,31.2366083 L64.9180328,68.3007026 C64.9180328,69.8470999 63.6644301,71.1007026 62.1180328,71.1007026 L17.2262295,71.1007026 C15.6798322,71.1007026 14.4262295,69.8470999 14.4262295,68.3007026 L14.4262295,25.5784543 C14.4262295,22.2647458 17.112521,19.5784543 20.4262295,19.5784543 L53.2598788,19.5784543 Z\"\n id=\"形状结合\"\n fill={`url(#${createNewId(\"linearGradient-1\")})`}\n ></path>\n <g id=\"矩形备份\">\n <use\n fill=\"black\"\n fillOpacity=\"1\"\n filter={`url(#${createNewId(\"filter-4\")})`}\n xlinkHref={`#${createNewId(\"path-3\")}`}\n ></use>\n <path\n stroke=\"#858585\"\n strokeWidth=\"1\"\n d=\"M43.4004684,37.5960187 C44.3669667,37.5960187 45.2419667,37.9877696 45.8753421,38.621145 C46.5087175,39.2545204 46.9004684,40.1295204 46.9004684,41.0960187 L46.9004684,41.0960187 L46.9004684,49.5831382 C46.9004684,50.5496365 46.5087175,51.4246365 45.8753421,52.0580119 C45.2419667,52.6913873 44.3669667,53.0831382 43.4004684,53.0831382 L43.4004684,53.0831382 L34.9133489,53.0831382 C33.9468506,53.0831382 33.0718506,52.6913873 32.4384752,52.0580119 C31.8050998,51.4246365 31.4133489,50.5496365 31.4133489,49.5831382 L31.4133489,49.5831382 L31.4133489,41.0960187 C31.4133489,40.1295204 31.8050998,39.2545204 32.4384752,38.621145 C33.0718506,37.9877696 33.9468506,37.5960187 34.9133489,37.5960187 L34.9133489,37.5960187 Z\"\n strokeLinejoin=\"round\"\n fill={`url(#${createNewId(\"linearGradient-2\")})`}\n fillRule=\"evenodd\"\n ></path>\n </g>\n <g\n id=\"形状结合\"\n transform=\"translate(59.088956, 25.407531) scale(-1, -1) translate(-59.088956, -25.407531) \"\n >\n <use\n fill=\"black\"\n fillOpacity=\"1\"\n filter={`url(#${createNewId(\"filter-7\")})`}\n xlinkHref={`#${createNewId(\"path-6\")}`}\n ></use>\n <use\n fill={`url(#${createNewId(\"linearGradient-5\")})`}\n fillRule=\"evenodd\"\n xlinkHref={`#${createNewId(\"path-6\")}`}\n ></use>\n </g>\n <path\n d=\"M85.1360656,43.2786885 C85.5226649,43.2786885 85.8360656,43.5920892 85.8360656,43.9786885 L85.8355082,45.4416885 L87.3,45.442623 C87.6865993,45.442623 88,45.7560236 88,46.142623 L88,46.1852459 C88,46.5718452 87.6865993,46.8852459 87.3,46.8852459 L85.8355082,46.8846885 L85.8360656,48.3491803 C85.8360656,48.7357797 85.5226649,49.0491803 85.1360656,49.0491803 L85.0934426,49.0491803 C84.7068433,49.0491803 84.3934426,48.7357797 84.3934426,48.3491803 L84.3925082,46.8846885 L82.9295082,46.8852459 C82.5429089,46.8852459 82.2295082,46.5718452 82.2295082,46.1852459 L82.2295082,46.142623 C82.2295082,45.7560236 82.5429089,45.442623 82.9295082,45.442623 L84.3925082,45.4416885 L84.3934426,43.9786885 C84.3934426,43.5920892 84.7068433,43.2786885 85.0934426,43.2786885 L85.1360656,43.2786885 Z\"\n id=\"形状结合\"\n fill=\"#323233\"\n ></path>\n <path\n d=\"M2.16393443,31.7377049 C2.46271142,31.7377049 2.70491803,31.9799115 2.70491803,32.2786885 L2.704,33.1797049 L3.62786885,33.1803279 C4.01446818,33.1803279 4.32786885,33.4937285 4.32786885,33.8803279 L4.32786885,33.9229508 C4.32786885,34.3095501 4.01446818,34.6229508 3.62786885,34.6229508 L2.704,34.6227049 L2.70491803,35.5245902 C2.70491803,35.8233672 2.46271142,36.0655738 2.16393443,36.0655738 C1.86515743,36.0655738 1.62295082,35.8233672 1.62295082,35.5245902 L1.622,34.6227049 L0.7,34.6229508 C0.313400675,34.6229508 1.58367065e-16,34.3095501 0,33.9229508 L0,33.8803279 C6.36775399e-17,33.4937285 0.313400675,33.1803279 0.7,33.1803279 L1.622,33.1797049 L1.62295082,32.2786885 C1.62295082,31.9799115 1.86515743,31.7377049 2.16393443,31.7377049 Z\"\n id=\"形状结合备份-2\"\n fill=\"#323233\"\n ></path>\n <path\n d=\"M8.5704918,82.2292826 L8.39992361,82.2241726 C6.93295466,82.1360215 5.7704918,80.9184059 5.7704918,79.4292826 L5.7704918,79.4292826 L5.7704918,62.0328238 L18.5403984,62.0328238 L18.7183062,62.0265026 C22.6370926,61.9824786 26.9110314,68.1500392 38.9284814,68.4052546 L38.9284814,68.4052546 L38.9508197,68.402268 L38.9508197,68.4029405 L38.9731579,68.4054802 C50.1627105,68.6294222 54.4413911,62.3194865 59.130277,62.0416842 L59.3612409,62.0329405 L73.5737705,62.0329405 L73.5737705,79.4295082 C73.5737705,80.9186315 72.4113076,82.1362471 70.9443387,82.2243982 L70.7737705,82.2295082 L38.9508197,82.2289405 L8.5704918,82.2292826 Z\"\n id=\"形状结合\"\n fill=\"#555555\"\n ></path>\n <path\n d=\"M21.6393443,3.45798016 C21.6393443,3.45798016 25.2647414,2.58521485 26.2931908,0 C27.7747015,2.12006603 28.538563,3.03684357 30.295082,3.43985748 C27.9033709,4.15239527 26.8645012,4.95266986 26.0462723,7.21311475 C25.1070761,4.54994361 24.2521493,4.20532501 21.6393443,3.45798016\"\n id=\"Fill-1\"\n fill=\"#323233\"\n ></path>\n <path\n d=\"M64.9180328,10.4333714 C64.9180328,10.4333714 74.5857586,8.16418155 77.3282902,1.44262295 C81.2789854,6.95479463 83.3159494,9.33841623 88,10.3862524 C81.6221039,12.2388507 78.8517846,14.3195646 76.669841,20.1967213 C74.1653176,13.2724763 71.8855128,12.376468 64.9180328,10.4333714\"\n id=\"Fill-1备份\"\n fill=\"#424242\"\n opacity=\"0.799999952\"\n ></path>\n </g>\n </g>\n </g>\n </svg>\n ) : (\n <svg\n width=\"56px\"\n height=\"53px\"\n viewBox=\"0 0 56 53\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n >\n <title>dark default empty image</title>\n <defs>\n <linearGradient\n x1=\"7.2497624%\"\n y1=\"5.98667004%\"\n x2=\"83.0501817%\"\n y2=\"88.9150948%\"\n id={createNewId(\"linearGradient-1\")}\n >\n <stop stopColor=\"#595959\" offset=\"0%\"></stop>\n <stop stopColor=\"#484848\" offset=\"100%\"></stop>\n </linearGradient>\n <linearGradient\n x1=\"3.89238729%\"\n y1=\"4.31113823%\"\n x2=\"84.4129339%\"\n y2=\"88.9150948%\"\n id={createNewId(\"linearGradient-2\")}\n >\n <stop stopColor=\"#646464\" offset=\"0%\"></stop>\n <stop stopColor=\"#4F4F4F\" offset=\"100%\"></stop>\n </linearGradient>\n <path\n d=\"M23.6721311,23.6065574 L26.1639344,23.6065574 C28.3730734,23.6065574 30.1639344,25.3974184 30.1639344,27.6065574 L30.1639344,30.0983607 C30.1639344,32.3074997 28.3730734,34.0983607 26.1639344,34.0983607 L23.6721311,34.0983607 C21.4629921,34.0983607 19.6721311,32.3074997 19.6721311,30.0983607 L19.6721311,27.6065574 C19.6721311,25.3974184 21.4629921,23.6065574 23.6721311,23.6065574 Z\"\n id={createNewId(\"path-3\")}\n ></path>\n <filter\n x=\"-57.2%\"\n y=\"-47.7%\"\n width=\"233.4%\"\n height=\"233.4%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"filter-4\")}\n >\n <feOffset\n dx=\"1\"\n dy=\"2\"\n in=\"SourceAlpha\"\n result=\"shadowOffsetOuter1\"\n ></feOffset>\n <feGaussianBlur\n stdDeviation=\"2\"\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n ></feGaussianBlur>\n <feComposite\n in=\"shadowBlurOuter1\"\n in2=\"SourceAlpha\"\n operator=\"out\"\n result=\"shadowBlurOuter1\"\n ></feComposite>\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.22 0\"\n type=\"matrix\"\n in=\"shadowBlurOuter1\"\n ></feColorMatrix>\n </filter>\n <linearGradient\n x1=\"41.822656%\"\n y1=\"24.7954546%\"\n x2=\"8.8126561%\"\n y2=\"86.4269134%\"\n id={createNewId(\"linearGradient-5\")}\n >\n <stop stopColor=\"#848484\" offset=\"0%\"></stop>\n <stop stopColor=\"#686868\" offset=\"100%\"></stop>\n </linearGradient>\n <path\n d=\"M37.3114754,12.4590164 C39.5206144,12.4590164 41.3114754,14.2498774 41.3114754,16.4590164 L41.3114754,19.8778416 L33.8926502,12.4590164 L37.3114754,12.4590164 Z\"\n id={createNewId(\"path-6\")}\n ></path>\n <filter\n x=\"-94.4%\"\n y=\"-121.3%\"\n width=\"288.7%\"\n height=\"288.7%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"filter-7\")}\n >\n <feOffset\n dx=\"0\"\n dy=\"-2\"\n in=\"SourceAlpha\"\n result=\"shadowOffsetOuter1\"\n ></feOffset>\n <feGaussianBlur\n stdDeviation=\"2\"\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n ></feGaussianBlur>\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0\"\n type=\"matrix\"\n in=\"shadowBlurOuter1\"\n ></feColorMatrix>\n </filter>\n </defs>\n <g\n id=\"其他\"\n stroke=\"none\"\n strokeWidth=\"1\"\n fill=\"none\"\n fillRule=\"evenodd\"\n >\n <g id=\"空状态\" transform=\"translate(-873.000000, -283.000000)\">\n <g id=\"编组-8\" transform=\"translate(726.000000, 100.000000)\">\n <g\n id=\"插图/空表格--白色背景备份\"\n transform=\"translate(147.000000, 183.000000)\"\n >\n <path\n d=\"M39.6824378,33.9672131 L10.8093655,33.9672131 C10.0855554,33.9672131 9.38986655,34.247506 8.86822799,34.7492971 L3.67213115,39.7476907 L3.67213115,39.7476907 L3.67213115,46.7278689 C3.67213115,49.8206635 6.17933655,52.3278689 9.27213115,52.3278689 L41.2196721,52.3278689 C44.3124667,52.3278689 46.8196721,49.8206635 46.8196721,46.7278689 L46.8196721,39.7476907 L46.8196721,39.7476907 L41.6235753,34.7492971 C41.1019367,34.247506 40.4062478,33.9672131 39.6824378,33.9672131 Z\"\n id={createNewId(\"Fill-3\")}\n fill=\"#3E3E3E\"\n ></path>\n <path\n d=\"M33.8926502,12.4590164 L41.3114754,19.8778416 L41.3114754,42.4459016 C41.3114754,43.9922989 40.0578727,45.2459016 38.5114754,45.2459016 L11.9803279,45.2459016 C10.4339306,45.2459016 9.18032787,43.9922989 9.18032787,42.4459016 L9.18032787,18.4590164 C9.18032787,15.1453079 11.8666194,12.4590164 15.1803279,12.4590164 L33.8926502,12.4590164 Z\"\n id=\"形状结合\"\n fill={`url(#${createNewId(\"linearGradient-1\")})`}\n ></path>\n <g id=\"矩形备份\">\n <use\n fill=\"black\"\n fillOpacity=\"1\"\n filter={`url(#${createNewId(\"filter-4\")})`}\n xlinkHref={`#${createNewId(\"path-3\")}`}\n ></use>\n <path\n stroke=\"#919191\"\n strokeWidth=\"1\"\n d=\"M26.1639344,24.1065574 C27.1304327,24.1065574 28.0054327,24.4983082 28.6388082,25.1316836 C29.2721836,25.7650591 29.6639344,26.6400591 29.6639344,27.6065574 L29.6639344,27.6065574 L29.6639344,30.0983607 C29.6639344,31.064859 29.2721836,31.939859 28.6388082,32.5732344 C28.0054327,33.2066098 27.1304327,33.5983607 26.1639344,33.5983607 L26.1639344,33.5983607 L23.6721311,33.5983607 C22.7056328,33.5983607 21.8306328,33.2066098 21.1972574,32.5732344 C20.563882,31.939859 20.1721311,31.064859 20.1721311,30.0983607 L20.1721311,30.0983607 L20.1721311,27.6065574 C20.1721311,26.6400591 20.563882,25.7650591 21.1972574,25.1316836 C21.8306328,24.4983082 22.7056328,24.1065574 23.6721311,24.1065574 L23.6721311,24.1065574 Z\"\n strokeLinejoin=\"round\"\n fill={`url(#${createNewId(\"linearGradient-2\")})`}\n fillRule=\"evenodd\"\n ></path>\n </g>\n <g\n id=\"形状结合\"\n transform=\"translate(37.602063, 16.168429) scale(-1, -1) translate(-37.602063, -16.168429) \"\n >\n <use\n fill=\"black\"\n fillOpacity=\"1\"\n filter={`url(#${createNewId(\"filter-7\")})`}\n xlinkHref={`#${createNewId(\"path-6\")}`}\n ></use>\n <use\n fill={`url(#${createNewId(\"linearGradient-5\")})`}\n fillRule=\"evenodd\"\n xlinkHref={`#${createNewId(\"path-6\")}`}\n ></use>\n </g>\n <path\n d=\"M54.1639344,27.5409836 C54.4174422,27.5409836 54.6229508,27.7464922 54.6229508,28 L54.6228689,28.9179836 L55.5409836,28.9180328 C55.7944914,28.9180328 56,29.1235414 56,29.3770492 C56,29.6305569 55.7944914,29.8360656 55.5409836,29.8360656 L54.6228689,29.8359836 L54.6229508,30.7540984 C54.6229508,31.0076061 54.4174422,31.2131148 54.1639344,31.2131148 C53.9104267,31.2131148 53.704918,31.0076061 53.704918,30.7540984 L53.7048689,29.8359836 L52.7868852,29.8360656 C52.5333775,29.8360656 52.3278689,29.6305569 52.3278689,29.3770492 C52.3278689,29.1235414 52.5333775,28.9180328 52.7868852,28.9180328 L53.7048689,28.9179836 L53.704918,28 C53.704918,27.7464922 53.9104267,27.5409836 54.1639344,27.5409836 Z\"\n id=\"形状结合\"\n fill=\"#646465\"\n opacity=\"0.299999982\"\n ></path>\n <path\n d=\"M1.37704918,20.1967213 C1.56718,20.1967213 1.72131148,20.3508528 1.72131148,20.5409836 L1.721,21.1147213 L2.29508197,21.1147541 C2.54858972,21.1147541 2.75409836,21.3202627 2.75409836,21.5737705 C2.75409836,21.8272782 2.54858972,22.0327869 2.29508197,22.0327869 L1.721,22.0327213 L1.72131148,22.6065574 C1.72131148,22.7966882 1.56718,22.9508197 1.37704918,22.9508197 C1.18691836,22.9508197 1.03278689,22.7966882 1.03278689,22.6065574 L1.032,22.0327213 L0.459016393,22.0327869 C0.205508639,22.0327869 3.1045746e-17,21.8272782 0,21.5737705 C-3.1045746e-17,21.3202627 0.205508639,21.1147541 0.459016393,21.1147541 L1.032,21.1147213 L1.03278689,20.5409836 C1.03278689,20.3508528 1.18691836,20.1967213 1.37704918,20.1967213 Z\"\n id=\"形状结合备份-2\"\n fill=\"#646465\"\n opacity=\"0.299999982\"\n ></path>\n <path\n d=\"M24.7868852,43.5295076 L24.8011005,43.5307601 C31.8876782,43.6725873 34.6183834,39.6961587 37.5855745,39.48387 L37.7753351,39.4755076 L46.8196721,39.4755076 L46.8196721,49.5278689 C46.8196721,51.0169922 45.6572093,52.2346078 44.1902403,52.3227588 L44.0196721,52.3278689 L24.7868852,52.3275076 L24.7868852,52.3272615 L6.47213115,52.3277253 L6.30156296,52.3226152 C4.83459401,52.2344642 3.67213115,51.0168486 3.67213115,49.5277253 L3.67213115,49.5277253 L3.67213115,39.4754333 L11.7984354,39.4754333 L11.941603,39.4712638 C14.4272721,39.4747517 17.1558091,43.3688567 24.77267,43.5306166 L24.77267,43.5306166 L24.7868852,43.5292615 L24.7868852,43.5295076 Z\"\n id=\"形状结合\"\n fill=\"#616161\"\n ></path>\n <path\n d=\"M13.7704918,2.20053283 C13.7704918,2.20053283 16.0775627,1.64513672 16.7320305,0 C17.67481,1.34913293 18.1609037,1.93253682 19.2786885,2.18900021 C17.7566906,2.64243336 17.0955917,3.151699 16.5749006,4.59016393 C15.9772302,2.89541866 15.4331859,2.67611591 13.7704918,2.20053283\"\n id=\"Fill-1\"\n fill=\"#646465\"\n opacity=\"0.5\"\n ></path>\n <path\n d=\"M41.3114754,6.63941814 C41.3114754,6.63941814 47.4636646,5.19538826 49.2089119,0.918032787 C51.7229907,4.4257784 53.0192405,5.94262851 56,6.60943334 C51.9413388,7.78835951 50.1784084,9.11245019 48.7898988,12.852459 C47.1961112,8.44612131 45.7453263,7.87593416 41.3114754,6.63941814\"\n id=\"Fill-1备份\"\n fill=\"#646465\"\n opacity=\"0.697637649\"\n ></path>\n </g>\n </g>\n </g>\n </g>\n </svg>\n );\n } else {\n return isBig ? (\n <svg\n width={86}\n height={80}\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n >\n <defs>\n <linearGradient\n x1=\"5.718%\"\n y1=\"4.311%\"\n x2=\"83.05%\"\n y2=\"88.915%\"\n id={createNewId(\"a\")}\n >\n <stop stopColor=\"#D4D8E4\" offset=\"0%\" />\n <stop stopColor=\"#A9B0C4\" offset=\"100%\" />\n </linearGradient>\n <linearGradient\n x1=\"0%\"\n y1=\"11.08%\"\n x2=\"80.548%\"\n y2=\"107.704%\"\n id={createNewId(\"d\")}\n >\n <stop stopColor=\"#C2C7DA\" offset=\"0%\" />\n <stop stopColor=\"#8F96B3\" offset=\"100%\" />\n </linearGradient>\n <linearGradient\n x1=\"41.823%\"\n y1=\"24.795%\"\n x2=\"8.813%\"\n y2=\"86.427%\"\n id={createNewId(\"g\")}\n >\n <stop stopColor=\"#CCD0DD\" offset=\"0%\" />\n <stop stopColor=\"#9DA3B9\" offset=\"100%\" />\n </linearGradient>\n <filter\n x=\"-37.5%\"\n y=\"-31.3%\"\n width=\"187.5%\"\n height=\"187.5%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"b\")}\n >\n <feOffset\n dx={1}\n dy={2}\n in=\"SourceAlpha\"\n result=\"shadowOffsetOuter1\"\n />\n <feGaussianBlur\n stdDeviation={2}\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n />\n <feComposite\n in=\"shadowBlurOuter1\"\n in2=\"SourceAlpha\"\n operator=\"out\"\n result=\"shadowBlurOuter1\"\n />\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.22 0\"\n in=\"shadowBlurOuter1\"\n />\n </filter>\n <filter\n x=\"-61.9%\"\n y=\"-79.5%\"\n width=\"223.7%\"\n height=\"223.7%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"e\")}\n >\n <feOffset dy={-2} in=\"SourceAlpha\" result=\"shadowOffsetOuter1\" />\n <feGaussianBlur\n stdDeviation={2}\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n />\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0\"\n in=\"shadowBlurOuter1\"\n />\n </filter>\n <path\n d=\"M34 36h8a4 4 0 0 1 4 4v8a4 4 0 0 1-4 4h-8a4 4 0 0 1-4-4v-8a4 4 0 0 1 4-4Z\"\n id={createNewId(\"c\")}\n />\n <path\n d=\"M59 19a4 4 0 0 1 4 4v7.314L51.686 19H59Z\"\n id={createNewId(\"f\")}\n />\n </defs>\n <g fill=\"none\" fillRule=\"evenodd\">\n <path\n d=\"M61.108 51.8H15.892a2.8 2.8 0 0 0-1.941.782L5.6 60.615V74.2a5.6 5.6 0 0 0 5.6 5.6h54.6a5.6 5.6 0 0 0 5.6-5.6V60.615l-8.35-8.033a2.8 2.8 0 0 0-1.942-.782Z\"\n fill=\"#A6AAC3\"\n />\n <path\n d=\"M51.686 19 63 30.314V66.2a2.8 2.8 0 0 1-2.8 2.8H16.8a2.8 2.8 0 0 1-2.8-2.8V25a6 6 0 0 1 6-6h31.686Z\"\n fill={`url(#${createNewId(\"a\")})`}\n />\n <g>\n <use\n fill=\"#000\"\n filter={`url(#${createNewId(\"b\")})`}\n xlinkHref={`#${createNewId(\"c\")}`}\n />\n <path\n stroke=\"#FFF\"\n d=\"M42 36.5c.966 0 1.841.392 2.475 1.025A3.489 3.489 0 0 1 45.5 40v8c0 .966-.392 1.841-1.025 2.475A3.489 3.489 0 0 1 42 51.5h-8a3.489 3.489 0 0 1-2.475-1.025A3.489 3.489 0 0 1 30.5 48v-8c0-.966.392-1.841 1.025-2.475A3.489 3.489 0 0 1 34 36.5Z\"\n strokeLinejoin=\"round\"\n fill={`url(#${createNewId(\"d\")})`}\n />\n </g>\n <g transform=\"rotate(180 57.343 24.657)\">\n <use\n fill=\"#000\"\n filter={`url(#${createNewId(\"e\")})`}\n xlinkHref={`#${createNewId(\"f\")}`}\n />\n <use\n fill={`url(#${createNewId(\"g\")})`}\n xlinkHref={`#${createNewId(\"f\")}`}\n />\n </g>\n <path\n d=\"M82.6 42a.7.7 0 0 1 .7.7v1.399l1.4.001a.7.7 0 0 1 0 1.4l-1.4-.001V46.9a.7.7 0 0 1-1.4 0v-1.401l-1.4.001a.7.7 0 0 1 0-1.4l1.4-.001V42.7a.7.7 0 0 1 .7-.7ZM2.1 30.8c.29 0 .525.235.525.525l-.001.874.876.001a.7.7 0 0 1 0 1.4h-.876l.001.875a.525.525 0 1 1-1.05 0l-.001-.875H.7a.7.7 0 0 1 0-1.4l.874-.001.001-.874c0-.29.235-.525.525-.525Z\"\n fill=\"#D6D8E4\"\n opacity={0.3}\n />\n <path\n d=\"m8.4 79.8-.17-.005A2.8 2.8 0 0 1 5.6 77V60.2h12.393l.175-.006c3.802-.04 7.95 5.943 19.61 6.19l.022-.002.022.002c10.856.218 15.009-5.902 19.558-6.175l.227-.009H71.4V77a2.8 2.8 0 0 1-2.63 2.795l-.17.005H8.4Z\"\n fill=\"#D6D8E4\"\n />\n <path\n d=\"M21 3.356S24.518 2.509 25.516 0c1.438 2.057 2.18 2.947 3.884 3.338-2.321.692-3.33 1.468-4.123 3.662-.912-2.584-1.741-2.919-4.277-3.644\"\n fill=\"#D6D8E4\"\n opacity={0.5}\n />\n <path\n d=\"M63 10.125S72.382 7.923 75.044 1.4c3.834 5.35 5.81 7.663 10.356 8.68-6.19 1.797-8.878 3.816-10.995 9.52-2.43-6.72-4.643-7.59-11.405-9.475\"\n fill=\"#D6D8E4\"\n opacity={0.8}\n />\n </g>\n </svg>\n ) : (\n <svg\n width={56}\n height={53}\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n >\n <defs>\n <linearGradient\n x1=\"5.718%\"\n y1=\"4.311%\"\n x2=\"83.05%\"\n y2=\"88.915%\"\n id={createNewId(\"a\")}\n >\n <stop stopColor=\"#D4D8E4\" offset=\"0%\" />\n <stop stopColor=\"#A9B0C4\" offset=\"100%\" />\n </linearGradient>\n <linearGradient\n x1=\"0%\"\n y1=\"11.08%\"\n x2=\"80.548%\"\n y2=\"107.704%\"\n id={createNewId(\"d\")}\n >\n <stop stopColor=\"#C2C7DA\" offset=\"0%\" />\n <stop stopColor=\"#8F96B3\" offset=\"100%\" />\n </linearGradient>\n <linearGradient\n x1=\"41.823%\"\n y1=\"24.795%\"\n x2=\"8.813%\"\n y2=\"86.427%\"\n id={createNewId(\"g\")}\n >\n <stop stopColor=\"#CCD0DD\" offset=\"0%\" />\n <stop stopColor=\"#9DA3B9\" offset=\"100%\" />\n </linearGradient>\n <filter\n x=\"-57.2%\"\n y=\"-47.7%\"\n width=\"233.4%\"\n height=\"233.4%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"b\")}\n >\n <feOffset\n dx={1}\n dy={2}\n in=\"SourceAlpha\"\n result=\"shadowOffsetOuter1\"\n />\n <feGaussianBlur\n stdDeviation={2}\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n />\n <feComposite\n in=\"shadowBlurOuter1\"\n in2=\"SourceAlpha\"\n operator=\"out\"\n result=\"shadowBlurOuter1\"\n />\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.22 0\"\n in=\"shadowBlurOuter1\"\n />\n </filter>\n <filter\n x=\"-94.4%\"\n y=\"-121.3%\"\n width=\"288.7%\"\n height=\"288.7%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"e\")}\n >\n <feOffset dy={-2} in=\"SourceAlpha\" result=\"shadowOffsetOuter1\" />\n <feGaussianBlur\n stdDeviation={2}\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n />\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0\"\n in=\"shadowBlurOuter1\"\n />\n </filter>\n <path\n d=\"M23.672 23.607h2.492a4 4 0 0 1 4 4v2.491a4 4 0 0 1-4 4h-2.492a4 4 0 0 1-4-4v-2.491a4 4 0 0 1 4-4Z\"\n id={createNewId(\"c\")}\n />\n <path\n d=\"M37.311 12.459a4 4 0 0 1 4 4v3.419l-7.418-7.419h3.418Z\"\n id={createNewId(\"f\")}\n />\n </defs>\n <g fill=\"none\" fillRule=\"evenodd\">\n <path\n d=\"M39.682 33.967H10.81a2.8 2.8 0 0 0-1.94.782l-5.197 4.999v6.98a5.6 5.6 0 0 0 5.6 5.6H41.22a5.6 5.6 0 0 0 5.6-5.6v-6.98l-5.196-4.999a2.8 2.8 0 0 0-1.942-.782Z\"\n fill=\"#A6AAC3\"\n />\n <path\n d=\"m33.893 12.459 7.418 7.419v22.568a2.8 2.8 0 0 1-2.8 2.8h-26.53a2.8 2.8 0 0 1-2.8-2.8V18.459a6 6 0 0 1 6-6h18.712Z\"\n fill={`url(#${createNewId(\"a\")})`}\n />\n <g>\n <use\n fill=\"#000\"\n filter={`url(#${createNewId(\"b\")})`}\n xlinkHref={`#${createNewId(\"c\")}`}\n />\n <path\n stroke=\"#FFF\"\n d=\"M26.164 24.107c.966 0 1.841.391 2.475 1.025a3.489 3.489 0 0 1 1.025 2.475v2.491c0 .967-.392 1.842-1.025 2.475a3.489 3.489 0 0 1-2.475 1.025h-2.492a3.489 3.489 0 0 1-2.475-1.025 3.489 3.489 0 0 1-1.025-2.475v-2.491c0-.967.392-1.842 1.025-2.475a3.489 3.489 0 0 1 2.475-1.025Z\"\n strokeLinejoin=\"round\"\n fill=\"url(#d)\"\n />\n </g>\n <g transform=\"rotate(180 37.602 16.168)\">\n <use\n fill=\"#000\"\n filter={`url(#${createNewId(\"e\")})`}\n xlinkHref={`#${createNewId(\"f\")}`}\n />\n <use\n fill={`url(#${createNewId(\"g\")})`}\n xlinkHref={`#${createNewId(\"f\")}`}\n />\n </g>\n <path\n d=\"M54.164 27.541c.253 0 .459.205.459.459v.918h.918a.459.459 0 1 1 0 .918h-.918v.918a.459.459 0 0 1-.918 0v-.918h-.918a.459.459 0 0 1 0-.918h.918V28c0-.254.205-.459.459-.459ZM1.377 20.197c.19 0 .344.154.344.344v.574h.574a.459.459 0 1 1 0 .918h-.574v.574a.344.344 0 0 1-.688 0l-.001-.574H.459a.459.459 0 0 1 0-.918h.573v-.574c0-.19.155-.344.345-.344Z\"\n fill=\"#D6D8E4\"\n opacity={0.3}\n />\n <path\n d=\"M24.787 43.53h.014c7.087.143 9.817-3.834 12.785-4.046l.19-.008h9.044v10.052a2.8 2.8 0 0 1-2.63 2.795l-.17.005H6.472l-.17-.005a2.8 2.8 0 0 1-2.63-2.795V39.475h8.126l.144-.004c2.485.004 5.214 3.898 12.83 4.06l.015-.002Z\"\n fill=\"#D6D8E4\"\n />\n <path\n d=\"M13.77 2.2s2.308-.555 2.962-2.2c.943 1.35 1.429 1.933 2.547 2.189-1.522.453-2.183.963-2.704 2.401-.598-1.695-1.142-1.914-2.805-2.39\"\n fill=\"#D6D8E4\"\n opacity={0.5}\n />\n <path\n d=\"M41.311 6.64S47.464 5.194 49.21.917c2.514 3.508 3.81 5.025 6.791 5.691-4.059 1.18-5.822 2.503-7.21 6.243-1.594-4.406-3.045-4.976-7.479-6.213\"\n fill=\"#D6D8E4\"\n opacity={0.8}\n />\n </g>\n </svg>\n );\n }\n}\n","import React, { useMemo } from \"react\";\nimport { Empty } from \"antd\";\nimport { getIllustration, IllustrationProps } from \"@next-core/illustrations\";\nimport { EmptySvg } from \"./EmptySvg\";\n\n// @internal\nexport interface EasyopsEmptyProps {\n background?: string;\n description?: string | React.ReactNode;\n imageStyle?: React.CSSProperties;\n illustration?: IllustrationProps;\n useBigEmptyImage?: boolean;\n}\n\n/**\n * 用于展示空数据的 React 组件。\n */\nexport function EasyopsEmpty(props: EasyopsEmptyProps): React.ReactElement {\n const illustration = useMemo(\n () => props.illustration && getIllustration(props.illustration),\n [props.illustration]\n );\n const image = props.illustration ? (\n illustration\n ) : (\n <EmptySvg isBig={props.useBigEmptyImage}></EmptySvg>\n );\n const imageStyle =\n props.imageStyle ??\n (props.useBigEmptyImage ? undefined : { height: \"60px\" });\n\n return (\n <Empty\n image={image}\n imageStyle={imageStyle}\n description={props.description}\n style={{ color: \"var(--text-color-secondary)\" }}\n />\n );\n}\n\n/**\n * 调用后获得一个默认的展示空数据的 React 组件。\n */\nexport function renderEasyopsEmpty(): React.ReactNode {\n return <EasyopsEmpty />;\n}\n","import React, { createContext, useContext } from \"react\";\nimport { FeatureFlags as FeatureFlagsType } from \"@next-core/brick-types\";\nconst FeatureFlagsContext = createContext<FeatureFlagsType>(null);\n\nexport const FeatureFlagsProvider = FeatureFlagsContext.Provider;\n\ninterface featureFlagsProps {\n name: string | string[];\n fallback?: React.ReactNode | React.ReactElement;\n}\n\n/**\n * 显示特性开关\n *\n * @example\n *\n * ```tsx\n * featureFlags = {\"enabled-foo\": true, \"enabled-bar\": true}\n *\n * function MyReactComponent(props) {\n * // 返回所有的特性开关名称数组\n * const featureFlags = useFeatureFlags();\n * console.log(featureFlags)\n * // Output: [\"enabled-foo\", \"enabled-bar\"]\n *\n * // ...\n * }\n *\n * featureFlags = {\"enabled-foo\": true}\n * function MyReactComponent(props) {\n * // 返回传入的特性开关名布尔值数组\n * const [isEnabledFoo, isEnabledBar] = useFeatureFlags([\"enabled-foo\", \"enabled-bar\"]);\n * console.log([isEnabledFoo, isEnabledBar])\n * // Output: [true, false]\n *\n * // ...\n * }\n * ```\n *\n * @param name - 特性开关名称\n *\n * @returns boolean[] | string[]\n */\nexport function useFeatureFlags(\n name?: string | string[]\n): boolean[] | string[] {\n const featureFlags = useContext(FeatureFlagsContext);\n const flagNames = [].concat(name).filter(Boolean);\n return flagNames.length\n ? flagNames.map((flag) => !!featureFlags[flag])\n : Object.keys(featureFlags).filter((flag) => !!featureFlags[flag]);\n}\n\n/**\n * 特性开关 React 组件\n * @example\n *\n * ```tsx\n * featureFlags = {\"enabled-foo\": true}\n *\n * <DisplayByFeatureFlags name={[\"enable-foo\"]}>\n * <div>Can you see me?</div>\n * </DisplayByFeatureFlags>\n * // 显示 `Can you see me?`\n *\n *\n * featureFlags = {\"enabled-foo\": true}\n * <DisplayByFeatureFlags fallback={<h1>Good to see you.</h1>} name={\"enable-bar\"}>\n * <div>Can you see me?</div>\n * </DisplayByFeatureFlags>\n * // 显示 `Good to see you.`\n *\n * ```\n * @param name - 特性开关名称\n *\n * @param fallback - 如果没有开启传入的特性开关则渲染此属性内传入的 React Node\n */\nexport function DisplayByFeatureFlags(\n props: React.PropsWithChildren<featureFlagsProps>\n): React.ReactElement {\n const featureFlags = useFeatureFlags(props.name) as boolean[];\n\n return featureFlags.every((flag) => !!flag) ? (\n <>{props.children}</>\n ) : props?.fallback ? (\n <>{props?.fallback}</>\n ) : null;\n}\n","import React from \"react\";\nimport i18n from \"i18next\";\nimport { ConfigProvider } from \"antd\";\nimport zhCN from \"antd/es/locale/zh_CN\";\nimport enUS from \"antd/es/locale/en_US\";\n\nimport { ErrorBoundary } from \"./ErrorBoundary\";\nimport { EasyopsEmpty, EasyopsEmptyProps } from \"./EasyopsEmpty\";\nimport { FeatureFlagsProvider } from \"./featureFlags\";\nimport { getRuntime } from \"./runtime\";\n\ninterface BrickWrapperProps {\n wrapperConfig?: {\n empty?: EasyopsEmptyProps;\n };\n}\n\n/**\n * 构件的 React 组件包装器,包含 ErrorBoundary, ConfigProvider, FeatureFlagsProvider。\n */\nexport function BrickWrapper(\n props: React.PropsWithChildren<BrickWrapperProps>\n): React.ReactElement {\n const locale =\n i18n.language && i18n.language.split(\"-\")[0] === \"en\" ? enUS : zhCN;\n // istanbul ignore next\n const featureFlags =\n process.env.NODE_ENV === \"test\" ? {} : getRuntime().getFeatureFlags();\n return (\n <ErrorBoundary>\n <FeatureFlagsProvider value={featureFlags}>\n <ConfigProvider\n locale={locale}\n autoInsertSpaceInButton={false}\n renderEmpty={() => <EasyopsEmpty {...props.wrapperConfig?.empty} />}\n >\n {props.children}\n </ConfigProvider>\n </FeatureFlagsProvider>\n </ErrorBoundary>\n );\n}\n","import { noop } from \"lodash\";\nimport { asyncProcessBrick } from \"@next-core/brick-utils\";\nimport { BrickConf } from \"@next-core/brick-types\";\nimport { brickTemplateRegistry } from \"./core/TemplateRegistries\";\nimport {\n LocationContext,\n mountTree,\n unmountTree,\n afterMountTree,\n _dev_only_getBrickPackages,\n _dev_only_getStoryboards,\n _dev_only_loadDynamicBricksInBrickConf,\n _dev_only_getTemplatePackages,\n _dev_only_getFakeKernel,\n _dev_only_loadEditorBricks,\n _dev_only_updateStoryboard,\n _dev_only_updateTemplatePreviewSettings,\n _dev_only_updateSnippetPreviewSettings,\n} from \"./core/exports\";\n\n/** @internal */\nexport const developHelper = {\n asyncProcessBrick(brickConf: BrickConf): Promise<void> {\n return asyncProcessBrick(\n brickConf,\n brickTemplateRegistry,\n _dev_only_getTemplatePackages()\n );\n },\n LocationContext,\n mountTree,\n unmountTree,\n afterMountTree,\n getBrickPackages: _dev_only_getBrickPackages,\n getTemplatePackages: _dev_only_getTemplatePackages,\n getStoryboards: _dev_only_getStoryboards,\n loadEditorBricks: _dev_only_loadEditorBricks,\n loadDynamicBricksInBrickConf: _dev_only_loadDynamicBricksInBrickConf,\n getFakeKernel: _dev_only_getFakeKernel,\n /** @deprecated Keep it for backward-compatibility. */\n checkoutTplContext: noop,\n updateStoryboard: _dev_only_updateStoryboard,\n updateTemplatePreviewSettings: _dev_only_updateTemplatePreviewSettings,\n updateSnippetPreviewSettings: _dev_only_updateSnippetPreviewSettings,\n};\n","// Inspired by [LitElement](https://github.com/Polymer/lit-element)\n\ntype TypeHint = typeof String | typeof Number | typeof Boolean;\n\n/**\n * Converts property values to and from attribute values.\n */\ninterface ComplexAttributeConverter<Type = unknown> {\n /**\n * Function called to convert an attribute value to a property\n * value.\n */\n fromAttribute?(value: string | null, type?: TypeHint): Type;\n\n /**\n * Function called to convert a property value to an attribute\n * value.\n *\n * It returns unknown instead of string, to be compatible with\n * https://github.com/WICG/trusted-types (and similar efforts).\n */\n toAttribute?(value: Type, type?: TypeHint): unknown;\n}\n\n/**\n * Defines options for a property accessor.\n */\nexport interface PropertyDeclaration<Type = unknown> {\n /**\n * Indicates how and whether the property becomes an observed attribute.\n * If the value is `false`, the property is not added to `observedAttributes`.\n * If true or absent, the lowercased property name is observed (e.g. `fooBar`\n * becomes `foobar`). If a string, the string value is observed (e.g\n * `attribute: 'foo-bar'`).\n */\n readonly attribute?: boolean | string;\n\n /**\n * Indicates the type of the property. This is used only as a hint for the\n * `converter` to determine how to convert the attribute\n * to/from a property.\n */\n readonly type?: TypeHint;\n\n /**\n * Indicates how to convert the attribute to/from a property. If this value\n * is a function, it is used to convert the attribute value a the property\n * value. If it's an object, it can have keys for `fromAttribute` and\n * `toAttribute`. If no `toAttribute` function is provided and\n * `reflect` is set to `true`, the property value is set directly to the\n * attribute. A default `converter` is used if none is provided; it supports\n * `Boolean`, `String`, `Number`, `Object`, and `Array`. Note,\n * when a property changes and the converter is used to update the attribute,\n * the property is never updated again as a result of the attribute changing,\n * and vice versa.\n */\n readonly converter?: ComplexAttributeConverter<Type>;\n\n /**\n * Indicates if the property should reflect to an attribute.\n * If `true`, when the property is set, the attribute is set using the\n * attribute name determined according to the rules for the `attribute`\n * property option and the value of the property converted using the rules\n * from the `converter` property option.\n */\n readonly reflect?: boolean;\n\n /**\n * A function that indicates if a property should be considered changed when\n * it is set. The function should take the `newValue` and `oldValue` and\n * return `true` if an update should be requested.\n */\n hasChanged?(value: Type, oldValue: Type): boolean;\n\n /**\n * Indicates whether an accessor will be created for this property. By\n * default, an accessor will be generated for this property that requests an\n * update when set. If this flag is `true`, no accessor will be created, and\n * it will be the user's responsibility to call\n * `this.requestUpdate(propertyName, oldValue)` to request an update when\n * the property changes.\n */\n readonly noAccessor?: boolean;\n\n /**\n * Used for existed properties which require `@property` do not decorate.\n * This should be used for legacy props only.\n *\n * @internal\n */\n readonly __unstable_doNotDecorate?: boolean;\n\n /**\n * Used for existed properties that are conflicted with html native properties.\n *\n * @internal\n */\n readonly __deprecated_and_for_compatibility_only?: boolean;\n}\n\nconst defaultConverter: ComplexAttributeConverter = {\n toAttribute(value: unknown, type?: TypeHint): unknown {\n switch (type) {\n case Boolean:\n return value ? \"\" : null;\n }\n return value;\n },\n\n fromAttribute(value: string | null, type?: TypeHint) {\n switch (type) {\n case Boolean:\n return value !== null;\n case Number:\n return value === null ? null : Number(value);\n }\n return value;\n },\n};\n\ninterface HasChanged {\n (value: unknown, old: unknown): boolean;\n}\n\n/**\n * Change function that returns true if `value` is different from `oldValue`.\n * This method is used as the default for a property's `hasChanged` function.\n */\nconst notEqual: HasChanged = (value: unknown, old: unknown): boolean => {\n // This ensures (old==NaN, value==NaN) always returns false\n return old !== value && (old === old || value === value);\n};\n\nconst defaultPropertyDeclaration: PropertyDeclaration = {\n attribute: true,\n type: String,\n converter: defaultConverter,\n reflect: true,\n hasChanged: notEqual,\n};\n\nfunction attributeNameForProperty(\n name: PropertyKey,\n options: PropertyDeclaration\n): string {\n const attribute = options.attribute;\n return attribute === false\n ? undefined\n : typeof attribute === \"string\"\n ? attribute\n : typeof name === \"string\"\n ? name.replace(/[A-Z]/g, (char) => `-${char.toLowerCase()}`)\n : undefined;\n}\n\n/**\n * 构件事件的选项。\n */\nexport interface EventDeclaration extends EventInit {\n /**\n * 事件类型名。\n */\n type: string;\n}\n\n/** 事件发送器 */\nexport interface EventEmitter<T = unknown> {\n /** 发出事件。 */\n emit: (detail?: T) => boolean;\n}\n\n/**\n * 普通构件的抽象基类。\n *\n * @example\n *\n * ```ts\n * class MyBrickElement extends UpdatingElement {\n * @property()\n * myProp: string;\n *\n * _render() {\n * if (this.isConnected) {\n * // ...\n * }\n * }\n * }\n * ```\n */\nexport abstract class UpdatingElement extends HTMLElement {\n private _hasRequestedRender = false;\n private static _observedAttributes = new Set<string>();\n private static __dev_only_definedProperties = new Set<string>();\n private static __dev_only_definedMethods = new Set<string>();\n private static __dev_only_definedEvents = new Set<string>();\n\n /** @internal */\n static get observedAttributes(): string[] {\n this._ensureObservedAttributes();\n return Array.from(this._observedAttributes);\n }\n\n /** @internal */\n static get _dev_only_definedProperties(): string[] {\n this._ensureDefinedProperties();\n return Array.from(this.__dev_only_definedProperties);\n }\n\n /** @internal */\n static get _dev_only_definedMethods(): string[] {\n this._ensureDefinedMethods();\n return Array.from(this.__dev_only_definedMethods);\n }\n\n /** @internal */\n static get _dev_only_definedEvents(): string[] {\n this._ensureDefinedEvents();\n return Array.from(this.__dev_only_definedEvents);\n }\n\n /** @internal */\n get $$typeof(): string {\n return \"brick\";\n }\n\n /** @internal */\n attributeChangedCallback(\n name: string,\n old: string | null,\n value: string | null\n ): void {\n if (old !== value) {\n this._enqueueRender();\n }\n }\n\n // Enure multiple property settings will trigger rendering only once.\n private _enqueueRender(): void {\n // If the element is not connected,\n // let `connectedCallback()` do the job of rendering.\n if (this.isConnected && !this._hasRequestedRender) {\n this._hasRequestedRender = true;\n Promise.resolve().then(() => {\n this._hasRequestedRender = false;\n this._render();\n });\n }\n }\n\n private static _ensureObservedAttributes(): void {\n // eslint-disable-next-line no-prototype-builtins\n if (!this.hasOwnProperty(\"_observedAttributes\")) {\n const superClass = Object.getPrototypeOf(this);\n this._observedAttributes = new Set<string>(\n // eslint-disable-next-line no-prototype-builtins\n superClass.hasOwnProperty(\"_observedAttributes\")\n ? superClass._observedAttributes\n : null\n );\n }\n }\n\n private static _ensureDefinedProperties(): void {\n // eslint-disable-next-line no-prototype-builtins\n if (!this.hasOwnProperty(\"__dev_only_definedProperties\")) {\n const superClass = Object.getPrototypeOf(this);\n this.__dev_only_definedProperties = new Set<string>(\n // eslint-disable-next-line no-prototype-builtins\n superClass.hasOwnProperty(\"__dev_only_definedProperties\")\n ? superClass.__dev_only_definedProperties\n : null\n );\n }\n }\n\n private static _ensureDefinedMethods(): void {\n // eslint-disable-next-line no-prototype-builtins\n if (!this.hasOwnProperty(\"__dev_only_definedMethods\")) {\n const superClass = Object.getPrototypeOf(this);\n this.__dev_only_definedMethods = new Set<string>(\n // eslint-disable-next-line no-prototype-builtins\n superClass.hasOwnProperty(\"__dev_only_definedMethods\")\n ? superClass.__dev_only_definedMethods\n : null\n );\n }\n }\n\n private static _ensureDefinedEvents(): void {\n // eslint-disable-next-line no-prototype-builtins\n if (!this.hasOwnProperty(\"__dev_only_definedEvents\")) {\n const superClass = Object.getPrototypeOf(this);\n this.__dev_only_definedEvents = new Set<string>(\n // eslint-disable-next-line no-prototype-builtins\n superClass.hasOwnProperty(\"__dev_only_definedEvents\")\n ? superClass.__dev_only_definedEvents\n : null\n );\n }\n }\n\n /** @internal */\n static createProperty(name: string, options?: PropertyDeclaration): void {\n this._ensureObservedAttributes();\n this._ensureDefinedProperties();\n\n options = Object.assign({}, defaultPropertyDeclaration, options);\n\n // eslint-disable-next-line no-prototype-builtins\n if (options.noAccessor || this.prototype.hasOwnProperty(name)) {\n return;\n }\n\n this.__dev_only_definedProperties.add(name);\n\n const attr = attributeNameForProperty(name, options);\n\n if (attr === undefined) {\n // Create a non-enumerable symbol property to delegate the property.\n const delegatedPropSymbol = Symbol(`delegatedProp:${name}`);\n Object.defineProperty(this.prototype, name, {\n get(): any {\n return (this as any)[delegatedPropSymbol];\n },\n set(this: UpdatingElement, value: unknown) {\n const oldValue = (this as any)[name];\n if (options.hasChanged(value, oldValue)) {\n (this as any)[delegatedPropSymbol] = value;\n this._enqueueRender();\n }\n },\n enumerable: true,\n });\n return;\n }\n\n this._observedAttributes.add(attr);\n\n Object.defineProperty(this.prototype, name, {\n get(): any {\n return options.converter.fromAttribute(\n (this as HTMLElement).getAttribute(attr),\n options.type\n );\n },\n set(this: UpdatingElement, value: unknown) {\n const oldValue = (this as any)[name];\n if (options.hasChanged(value, oldValue)) {\n const attrValue = options.converter.toAttribute(value, options.type);\n if (attrValue === undefined) {\n return;\n }\n if (attrValue === null) {\n this.removeAttribute(attr);\n } else {\n this.setAttribute(attr, attrValue as string);\n }\n }\n },\n enumerable: true,\n });\n }\n\n /** @internal */\n static createMethod(name: string): void {\n this._ensureDefinedMethods();\n this.__dev_only_definedMethods.add(name);\n }\n\n /** @internal */\n static createEventEmitter(name: string, options: EventDeclaration): void {\n this._ensureDefinedEvents();\n\n // eslint-disable-next-line no-prototype-builtins\n if (this.prototype.hasOwnProperty(name)) {\n return;\n }\n\n const { type, ...eventInit } = options;\n this.__dev_only_definedEvents.add(type);\n\n // Make event emitter readonly.\n Object.defineProperty(this.prototype, name, {\n get(): EventEmitter {\n return Object.freeze({\n emit: <T>(detail: T): boolean =>\n this.dispatchEvent(new CustomEvent(type, { ...eventInit, detail })),\n });\n },\n });\n }\n\n /**\n * 当构件的属性改变时,将自动调用 `this._render()` 方法。\n */\n protected abstract _render(): void;\n}\n","import { merge } from \"lodash\";\nimport { UpdatingElement } from \"../UpdatingElement\";\nimport { property } from \"../decorators\";\n\n/**\n * 模态框类构件的抽象基类。\n */\nexport abstract class ModalElement extends UpdatingElement {\n /**\n * 模态框当前是否可见。\n */\n @property({\n type: Boolean,\n })\n public isVisible: boolean;\n\n /**\n * 打开模态框。\n *\n * @param e - 事件。\n */\n openModal = (e?: CustomEvent): void => {\n if (e) {\n if (typeof e.detail === \"object\" && !Array.isArray(e.detail)) {\n merge(this, e.detail);\n } else {\n merge(this, { detail: e.detail });\n }\n }\n this.isVisible = true;\n this._render();\n };\n\n /**\n * 关闭模态框。\n */\n closeModal = (): void => {\n this.isVisible = false;\n this._render();\n };\n}\n","import { UseProviderArgsDefaults } from \"./useProviderTypes\";\n\nexport const useProviderArgsDefaults: UseProviderArgsDefaults = {\n provider: \"\",\n customOptions: {\n onError: () => {\n /* Do nothing.. */\n },\n transform: (oldData: any, newData: any) => newData,\n data: undefined,\n loading: false,\n suspense: false,\n },\n dependencies: undefined,\n};\n\nexport default Object.entries(useProviderArgsDefaults).reduce(\n (acc, [key, value]) => {\n if (Object.prototype.toString.call(value) === \"[object Object]\")\n return { ...acc, ...value };\n return { ...acc, [key]: value };\n },\n {} as UseProviderArgsDefaults\n);\n","import { useMemo } from \"react\";\nimport defaults, { useProviderArgsDefaults } from \"./useProviderArgsDefaults\";\nimport { isObject } from \"lodash\";\nimport { HttpOptions } from \"@next-core/brick-http\";\nimport {\n IncomingOptions,\n UseProviderArgsReturn,\n UseProviderCustomOptions,\n UseProviderOptionArgsDefaults,\n} from \"./useProviderTypes\";\n\nexport default function useProviderArgs(\n providerOrParamsOrGlobalOptions?: string | IncomingOptions,\n gloabalOptionsOrDeps?: IncomingOptions | any[],\n deps?: any[]\n): UseProviderArgsReturn {\n const provider = useMemo(() => {\n if (typeof providerOrParamsOrGlobalOptions === \"string\") {\n return providerOrParamsOrGlobalOptions;\n }\n\n return useProviderArgsDefaults.provider;\n }, [providerOrParamsOrGlobalOptions, gloabalOptionsOrDeps]);\n\n const options = useMemo(() => {\n let localOptions = {};\n if (isObject(providerOrParamsOrGlobalOptions)) {\n localOptions = providerOrParamsOrGlobalOptions;\n } else if (isObject(gloabalOptionsOrDeps)) {\n localOptions = gloabalOptionsOrDeps;\n }\n return {\n ...defaults,\n ...localOptions,\n } as IncomingOptions;\n }, [providerOrParamsOrGlobalOptions, gloabalOptionsOrDeps]);\n\n const requestInit = useMemo((): {\n args: unknown;\n options?: HttpOptions;\n } => {\n const customOptionKeys = [\n ...Object.keys(useProviderArgsDefaults),\n ...Object.keys(useProviderArgsDefaults.customOptions),\n ] as Array<UseProviderOptionArgsDefaults>;\n\n const { args = null, ...restOptions } = (\n Object.keys(options) as any\n ).reduce((acc: Record<string, any>, key: UseProviderOptionArgsDefaults) => {\n if (!customOptionKeys.includes(key)) acc[key] = (options as never)[key];\n return acc;\n }, {} as Record<string, any>);\n\n return { options: { ...restOptions }, args };\n }, [options]);\n\n const dependencies = useMemo((): any[] | undefined => {\n if (Array.isArray(gloabalOptionsOrDeps)) return gloabalOptionsOrDeps;\n if (Array.isArray(deps)) return deps;\n return defaults.dependencies;\n }, [gloabalOptionsOrDeps, deps]);\n\n const loading = options.loading || Array.isArray(dependencies);\n\n const customOptions = useMemo(() => {\n const customOptionKeys = Object.keys(\n useProviderArgsDefaults.customOptions\n ) as (keyof UseProviderCustomOptions)[];\n\n const customOptions = customOptionKeys.reduce((opts, key) => {\n (opts as any)[key] = options[key];\n return opts;\n }, {} as UseProviderCustomOptions);\n\n return { ...customOptions, loading };\n }, [options]);\n\n return {\n provider,\n customOptions,\n requestInit,\n dependencies,\n };\n}\n","import { getArgsOfCustomApi } from \"../../core/FlowApi\";\nimport { FetchArgs } from \"./useProviderTypes\";\n\nconst cache = new Map<string, FetchArgs>();\n\nexport default async function fetchProviderArgs(\n provider: string,\n args: unknown[],\n ...originalArgs: unknown[]\n): Promise<FetchArgs> {\n const cacheKey = JSON.stringify({\n provider,\n args,\n originalArgs,\n });\n\n if (cache.has(cacheKey)) return cache.get(cacheKey);\n\n const actualArgs = (await getArgsOfCustomApi(provider, [\n ...args,\n ...originalArgs,\n ])) as FetchArgs;\n cache.set(cacheKey, actualArgs);\n\n return actualArgs;\n}\n","import { isCustomApiProvider } from \"../../core/FlowApi\";\nimport { RefreshableProvider } from \"../../internal/makeProviderRefreshable\";\nimport { FetchArgs } from \"./useProviderTypes\";\nimport { _internalApiGetProviderBrick } from \"../../core/Runtime\";\nimport { CustomApi } from \"../../providers/CustomApi\";\n\nconst cache: Map<string, Promise<any>> = new Map();\n\nexport default async function fetch<TData>(\n provider: string,\n ...args: FetchArgs\n): Promise<TData> {\n const cacheKey = JSON.stringify({\n provider,\n args,\n });\n\n let promise: Promise<TData>;\n\n if (cache.has(cacheKey)) {\n promise = cache.get(cacheKey);\n } else {\n promise = (async () => {\n if (!isCustomApiProvider(provider)) {\n const providerBrick: RefreshableProvider =\n (await _internalApiGetProviderBrick(provider)) as any;\n\n const providerTagName = providerBrick.tagName.toLowerCase();\n\n if (!customElements.get(providerTagName)) {\n throw new Error(\n `Provider not defined: \"${providerTagName}\", please make sure the related package is installed.`\n );\n }\n return providerBrick[\"resolve\"](...args);\n }\n\n return CustomApi(...(args as Parameters<typeof CustomApi>));\n })();\n cache.set(cacheKey, promise);\n }\n\n return promise;\n}\n","import {\n useCallback,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n useState,\n} from \"react\";\nimport useProviderArgs from \"./useProviderArgs\";\nimport {\n UseProviderArgs,\n FetchArgs,\n UseProviderError,\n UseProviderObjectReturn,\n Req,\n Res,\n UseProviderArrayReturn,\n UseProvider,\n} from \"./useProviderTypes\";\nimport { isObject, isString } from \"lodash\";\nimport fetchProviderArgs from \"./fetchProviderArgs\";\nimport fetch from \"./fetch\";\n\nexport function useProvider<TData = any>(\n ...args: UseProviderArgs\n): UseProvider<TData> {\n const { provider, customOptions, dependencies, requestInit } =\n useProviderArgs(...args);\n const { onError, transform, suspense, ...defaults } = customOptions;\n\n const [loading, setLoading] = useState(defaults.loading);\n const suspenseStatus = useRef<\"pending\" | \"error\" | \"success\">(\"pending\");\n const suspender = useRef<Promise<any>>();\n const mounted = useRef(false);\n const error = useRef<UseProviderError>();\n const response = useRef<Res<TData>>();\n const data = useRef<TData>(defaults.data);\n const forceUpdate = useReducer(() => ({}), [])[1];\n\n const doFetch = useCallback(\n async (provider: string, ...args: FetchArgs): Promise<TData> => {\n try {\n error.current = undefined;\n if (!suspense) setLoading(true);\n const newRes = (await fetch(provider, ...args)) as TData;\n response.current = newRes;\n data.current = transform(data.current, newRes);\n } catch (e) {\n error.current = e;\n }\n if (!suspense) setLoading(false);\n if (error.current) onError(error.current);\n return data.current;\n },\n [\n provider,\n customOptions,\n dependencies,\n requestInit,\n suspense,\n transform,\n defaults.data,\n onError,\n ]\n );\n\n const makeFetch = useCallback(\n async (\n providerOrBody: string | unknown[],\n args?: unknown[]\n ): Promise<TData> => {\n let providerStr = provider;\n let providerArgs = [] as unknown[];\n if (isString(providerOrBody)) {\n providerStr = providerOrBody;\n }\n if (isObject(providerOrBody)) {\n providerArgs = providerOrBody;\n } else if (isObject(args)) {\n providerArgs = args;\n }\n\n const actualArgs = await fetchProviderArgs(\n providerStr,\n providerArgs,\n requestInit.options\n );\n\n if (suspense) {\n return (async () => {\n suspender.current = doFetch(providerStr, ...actualArgs).then(\n (newData) => {\n suspenseStatus.current = \"success\";\n return newData;\n },\n (error) => {\n suspenseStatus.current = \"error\";\n error.current = error;\n return error;\n }\n );\n forceUpdate();\n return await suspender.current;\n })();\n }\n return doFetch(providerStr, ...actualArgs);\n },\n [doFetch]\n );\n\n const request: Req<TData> = useMemo(\n () =>\n Object.defineProperties(\n {\n query: makeFetch,\n },\n {\n loading: {\n get(): boolean {\n return loading;\n },\n },\n data: {\n get(): TData {\n return data.current;\n },\n },\n error: {\n get(): UseProviderError {\n return error.current;\n },\n },\n }\n ),\n [makeFetch]\n ) as unknown as Req<TData>;\n\n // onMount/onUpdate\n useEffect((): any => {\n mounted.current = true;\n if (Array.isArray(dependencies) && provider) {\n request.query(provider, requestInit.args as unknown[]);\n }\n return () => (mounted.current = false);\n }, dependencies);\n\n if (suspense && suspender.current) {\n switch (suspenseStatus.current) {\n case \"pending\":\n throw suspender.current;\n case \"error\":\n throw error.current;\n }\n }\n\n return Object.assign<\n UseProviderArrayReturn<TData>,\n UseProviderObjectReturn<TData>\n >([request, response.current, loading, error.current], {\n request,\n ...request,\n response: response.current,\n data: data.current,\n loading,\n error: error.current,\n });\n}\n"],"names":["BaseBar","constructor","kernel","mountPoint","_defineProperty","bootstrap","brick","options","_asyncToGenerator","element","remove","loadDynamicBricks","document","createElement","testid","dataset","mountPoints","appendChild","AppBar","setPageTitle","pageTitle","appendBreadcrumb","breadcrumb","setBreadcrumb","MenuBar","setAppMenu","menu","resetAppMenu","subMenu","collapse","collapsed","isCollapsed","softExpand","expanded","softExpanded","isSoftExpanded","NS_BRICK_KIT","K","getBasePath","base","querySelector","basePath","getAttribute","compareVersions","v1","v2","n1","validateAndParse","n2","p1","pop","p2","r","compareSegments","split","validate","v","test","semver","compare","operator","assertValidOperator","res","operatorResMap","includes","satisfies","m","match","op","v3","r1","r2","r3","compareStrings","sastisfies","TypeError","Error","shift","isWildcard","s","tryParse","n","parseInt","isNaN","forceType","a","b","String","ap","bp","i","Math","max","length","allowedOperators","Object","keys","indexOf","join","brickTemplateRegistry","Map","registerBrickTemplate","name","factory","has","console","error","set","DEFAULT_THEME","theme","storage","JsonStorage","localStorage","LOCAL_STORAGE_APPS_THEME_KEY","setTheme","value","getTheme","getCurrentTheme","documentElement","applyTheme","window","dispatchEvent","CustomEvent","detail","useCurrentTheme","currentTheme","setCurrentTheme","useState","useEffect","listenToThemeChange","event","addEventListener","removeEventListener","batchSetAppsLocalTheme","appsTheme","setItem","getLocalAppsTheme","result","getItem","DEFAULT_MODE","mode","setMode","getMode","getCurrentMode","applyMode","useCurrentMode","currentMode","setCurrentMode","listenToModeChange","getCssPropertyValue","el","getComputedStyle","getPropertyValue","supply","attemptToVisitGlobals","providedGlobalVariables","mock","globalVariables","_objectSpread","undefined","variableName","prototype","hasOwnProperty","call","variable","supplyIndividual","shouldOmitInLodash","Set","shouldOmitInMoment","allowedGlobalObjects","delegateMethods","fromEntries","entries","lodash","filter","entry","concat","prefix","assign","moment","pipes","tagUrlFactory","target","methods","map","method","args","arguments","apply","ignoreSlashes","strings","partials","forEach","str","index","push","replace","p","encodeURIComponent","getUrlByAliasFactory","app","getUrlByAlias","alias","pathParams","query","$$routeAliasMap","routeConf","get","url","toPath","computeRealRoutePath","path","urlSearchParams","URLSearchParams","key","Array","isArray","item","append","queryString","toString","getUrlBySegueFactory","segues","getUrlBySegue","segueId","segue","imagesFactory","appId","isBuildPush","PUBLIC_ROOT","widgetImagesFactory","widgetId","injected","WeakSet","recursiveMarkAsInjected","isObject","haveBeenInjected","add","proto","getPrototypeOf","values","object","resetAllInjected","cloneDeepWithInjectedMark","isPreEvaluated","clone","k","getOwnPropertySymbols","StateOfUseBrick","isLazyContentInUseBrick","state","USE_BRICK_PROPERTIES","USE_BRICK_TRANSFORM","USE_BRICK_EVENTS","USE_BRICK_IF","USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_TRANSFORM","USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT_TRANSFORM","getNextStateOfUseBrick","USE_BRICK","USE_BRICK_ITEM","USE_BRICK_SLOTS_ITEM_BRICKS","USE_BRICK_SLOTS_ITEM_BRICKS_ITEM","USE_BRICK_LIFECYCLE_USERESOLVES","USE_BRICK_LIFECYCLE_USERESOLVES_ITEM","INITIAL","USE_BRICK_SLOTS","USE_BRICK_LIFECYCLE","USE_BRICK_SLOTS_ITEM","USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT","transformElementProperties","data","to","from","mapArray","preprocessTransformProperties","setRealProperties","transformProperties","props","propName","propValue","doTransform","preEvaluated","lazy","$$lazyForUseBrick","$$stateOfUseBrick","dismissRecursiveMarkingInjected","isEvaluable","runtimeContext","tplContextId","evaluate","evaluateOptions","shouldDismissRecursiveMarkingInjected","allowInject","transformAndInject","_internalApiGetCurrentContext","transform","nextOptions","getNextDoTransformOptions","trackingContextList","contextNames","trackContext","stateNames","trackState","reTransformForDevtools","transformationId","isReTransformation","devtoolsHookEmit","id","message","processedData","pipeableTransform","fromData","transformedPropName","transformTo","transformIntermediateData","intermediateData","MESSAGE_SOURCE_PANEL","EVALUATION_EDIT","TRANSFORMATION_EDIT","type","payload","Promise","resolve","then","getDevHook","emit","listenDevtools","source","raw","context","restoreDehydrated","isReEvaluation","evaluationId","__BRICK_NEXT_DEVTOOLS_HOOK__","getItemFactory","storageType","sessionStorage","JSON","parse","locale","REQUEST_FAILED","MODAL_OK","MODAL_CANCEL","SOMETHING_WENT_WRONG","LOGIN_TIMEOUT_MESSAGE","NETWORK_ERROR","initI18n","i18next","addResourceBundle","en","zh","getI18nNamespace","registerWidgetI18n","i18n","ns","lang","resources","widgetI18nFactory","getFixedT","i18nText","language","primaryLanguage","startsWith","auth","authenticate","newAuth","org","username","userInstanceId","loginFrom","accessRule","isAdmin","userAnalytics","initialized","setUserId","getAuth","logout","resetPermissionPreChecks","isLoggedIn","permissionMap","preCheckPermissions","storyboard","usedActions","scanPermissionActionsInStoryboard","validatePermissions","actions","difference","PermissionApi_validatePermissions","action","authorizationStatus","checkPermissions","clear","THROW","readOnlyHandler","defineProperty","deleteProperty","setPrototypeOf","getReadOnlyProxy","Proxy","getDynamicReadOnlyProxy","ownKeys","freeze","getGeneralGlobals","getIndividualGlobal","collectCoverage","storyboardFunctions","isStoryboardFunction","fakeImageFactory","identity","fakeI18nText","check","fakeCheckPermissions","href","origin","location","StoryboardFunctionRegistryFactory","registeredFunctions","getStoryboardFunction","currentApp","registerStoryboardFunctions","functions","fn","typescript","processed","cooked","collector","createCollector","precooked","precookFunction","hooks","beforeVisit","cook","function","rules","noVar","beforeEvaluate","beforeCall","beforeBranch","updateStoryboardFunction","widgetFunctionRegistry","widgetFunctions","registerWidgetFunctions","self","EventTarget","wm","create","define","listener","secret","listeners","slice","some","dispatch","currentTarget","splice","configurable","writable","info","once","handleEvent","_stopImmediatePropagationFlag","WeakMap","looseCheckIf","ifContainer","_looseCheckIf","if","computeRealValue","looseCheckIfByTransform","_rawIf","_data","looseCheckIfOfComputed","rawIf","ctx","checkIf","_checkIf","checkIfByTransform","ifChecked","warn","StoryboardContextWrapper","getValue","updateValue","eventTarget","contextConfs","coreContext","mergedContext","keyword","getResolveOptions","resolveContextConcurrently","contextConf","resolveStoryboardContext","syncDefine","syncResolveContextConcurrently","syncResolveStoryboardContext","storyboardContextWrapper","property","prop","resolveNormalStoryboardContext","isResolve","getDefinedTemplateState","valueConf","_internalApiGetResolver","resolveOne","transformMapArray","resolveFreeVariableValue","isTemplateState","properties","newContext","onChange","handler","listenerFactory","tplContextMap","CustomTemplateContext","uniqueId","setVariables","variables","getVariables","getBrick","getCustomTemplateContext","MediaBreakpoint","mediaBreakpointMinWidthMap","xLarge","large","medium","small","xSmall","mediaEventTarget","breakpointMatchesMap","MEDIA","handleMatchesChange","breakpoint","changed","matches","minWidth","mediaQueryList","matchMedia","addListener","getMedia","symbolForRaw","Symbol","for","symbolForContext","shouldAllowRecursiveEvaluations","possibleErrorConstructs","SyntaxError","ReferenceError","getCookErrorConstructor","preevaluate","errorConstructor","attemptToVisitEvent","attemptToVisitData","attemptToVisitTpl","attemptToVisitState","attemptToVisitTplOrState","missingEvent","EVENT","missingTplOrState","missingData","rawWithContext","DATA","tplContext","TPL","STATE","sys","flags","hash","pathname","storyboardContext","overrideApp","getUrl","substr","cloneDeep","getMenu","matchVersion","getRuntime","hasInstalledApp","getMiscSettings","params","pkg","customProcessorRegistry","t","getAll","expression","isBasicProperty","propRef","refProperty","isTransformableProperty","refTransform","isMergeableProperty","mergeProperty","isRefProperty","ref","isVariableProperty","asVariable","customTemplateRegistry","appRegistered","symbolForComputedPropsFromProxy","symbolForRefForProxy","symbolForTplContextId","propertyMerge","conf","propertyMergeAll","$$mergeBase","proxies","proxy","$$reversedRef","mergeBase","mergeType","propertyMergeAllOfArray","propertyMergeAllOfObject","baseValue","computedBaseValue","quasis","size","position","mergeMethod","mergeArgs","clamp","patchValue","flatMap","reduce","acc","setupTemplateProxy","proxyContext","slots","computedPropsFromProxy","refForProxy","reversedProxies","templateProperties","externalSlots","templateContextId","proxyBrick","proxyRefs","mergeBases","quasisMap","refSlot","bricks","expandableSlot","refPosition","slotName","slotConf","setupUseBrickInTemplate","walk","setup","slotsInTemplate","injectDeep","internalOptions","inject","getNextInternalOptions","ignoreSymbols","setProperties","realProps","computeRealProperties","extractProps","textContent","realValue","symbolAppId","menuCache","menuTitleCache","processMenuCache","constructMenu","menuBar","hasSubMenu","subMenuId","menuId","defaultCollapsed","processMenu","isNil","constructMenuByMenusList","menus","all","fetchMenuById","menuList","STANDALONE_MICRO_APPS","getStandaloneMenus","InstanceApi_postSearch","page","page_size","fields","title","icon","link","titleDataSource","defaultCollapsedBreakpoint","injectMenuGroupId","dynamicItems","itemsResolve","items","$eq","$size","$gt","list","loadDynamicMenuItems","menuData","mergeMenu","reorderMenuItems","mainMenu","find","validMenuList","injectWithMenus","injectingMenus","processGroupInject","foundInjectingMenus","groupId","delete","children","injectingMenu","itemsConf","restMenuData","_objectWithoutProperties","_excluded2","computeRealValueWithOverrideApp","computeMenuItemsWithOverrideApp","processMenuTitle","menuItems","text","defaultExpanded","rest","_excluded","cacheKey","stringify","objectId","instanceId","attributeId","attr","instanceData","InstanceApi_getDetail","primary","clearMenuTitleCache","clearMenuCache","sortMenuItems","sortBy","sort","Infinity","overriddenGlobals","requireOverrideApp","memo","overrideAppId","bootstrapData","storyboards","story","fulfilStoryboard","lazyBrickRegistry","requestsMap","registerLazyBricks","factoryWrapper","loadLazyBricks","requests","request","loadAllLazyBricks","_dev_only_getBrickPackages","brickPackages","_dev_only_getTemplatePackages","templatePackages","_dev_only_getStoryboards","_dev_only_loadDynamicBricksInBrickConf","brickConf","loadDynamicBricksInBrickConf","_dev_only_loadEditorBricks","editorBricks","loadEditorBricks","_dev_only_getFakeKernel","overrides","getFeatureFlags","bind","getProviderBrick","_dev_only_updateStoryboard","storyboardPatch","_dev_only_updateTemplatePreviewSettings","templateId","settings","_dev_only_updateSnippetPreviewSettings","snippetData","Runtime","registerCustomTemplate","registerCustomProcessor","Kernel","appBar","getCurrentApp","getRecentApps","getCurrentRoute","currentRoute","getNavConfig","router","getMicroApps","excludeInstalling","includeInternal","apps","microApps","installStatus","internal","foundApp","currentVersion","reloadMicroApps","interceptorParams","check_login","reloadSharedData","loadSharedData","getDesktops","desktops","getLaunchpadSiteMap","siteSort","getAllUserInfo","getAllUserMap","getAllUserMapAsync","loadUsersAsync","allUserMapPromise","getMagicBrickConfigMapAsync","loadMagicBrickConfigAsync","allMagicBrickConfigMapPromise","fetchMenu","getCurrentContext","toggleFilterOfBlur","blur","body","classList","toggle","toggleLaunchpadEffect","open","getHomepage","homepage","getBrandSettings","base_title","brand","getLaunchpadSettings","columns","rows","launchpad","misc","getRelatedApps","getRelatedAppsAsync","popWorkspaceStack","resetWorkspaceStack","workspaceStack","applyPageTitle","baseTitle","process","env","NODE_ENV","getResolver","_internalApiGetRouterState","getState","_internalApiGetRouterRenderId","getRenderId","_internalApiMessageCloseHandler","handleMessageClose","_internalApiGetStoryboardContextWrapper","getStoryboardContextWrapper","_internalApiHasMatchedApp","_internalApiGetProviderBrick","provider","_internalApiGetMicroAppApiOrchestrationMap","allMicroAppApiOrchestrationPromise","_internalApiLoadDynamicBricksInBrickConf","historyExtended","browserHistory","originalPush","originalReplace","updateQueryFactory","updateQuery","extraQuery","keepHash","search","updateAnchorFactory","updateAnchor","notify","reload","blockMessage","setBlockMessage","getBlockMessage","unblock","pushQuery","replaceQuery","pushAnchor","standaloneHistoryOverridden","updateFactory","update","pathIsString","parsePath","createHref","history","createHistory","createBrowserHistory","basename","getHistory","isUnauthenticatedError","HttpResponseError","response","status","responseJson","code","httpErrorToString","Event","HTMLScriptElement","src","HttpFetchError","msg","unauthenticatedConfirmModal","handleHttpError","NO_AUTH_GUARD","Modal","confirm","React","ExclamationCircleOutlined","content","okText","cancelText","onOk","ssoEnabled","whiteSpace","LoginTimeoutMessage","WebsocketMessageRequest","topic","system","PluginWebSocketMessageEvent","WebsocketMessageResponse","SUB_SUCCESS","SUB_FAILED","SUB","UNSUB_SUCCESS","UNSUB_FAILED","UNSUB","WebSocketService","reconnectTimeout","retryLimit","defaultOptions","createWebSocket","readyState","ws","WebSocket","init","e","reconnect","onopen","sendQueuedMessages","onOpen","retryCount","onclose","onClose","navigator","onLine","onerror","onError","log","onmessage","onMessage","messageQueue","send","OPEN","lockReconnect","onReconnect","setTimeout","close","websocket","protocol","host","concatMap","xs","x","balancedMatch","balanced","RegExp","maybeMatch","range","start","end","pre","post","reg","begs","beg","left","right","ai","bi","require$$0","require$$1","braceExpansion","expandTop","escSlash","random","escOpen","escClose","escComma","escPeriod","numeric","charCodeAt","escapeBraces","unescapeBraces","parseCommaParts","parts","postParts","expand","embrace","isPadded","lte","y","gte","isTop","expansions","isNumericSequence","isAlphaSequence","isSequence","isOptions","N","width","incr","abs","reverse","pad","c","fromCharCode","need","z","j","expansion","minimatch_1","minimatch","Minimatch","require","sep","GLOBSTAR","plTypes","qmark","star","twoStarDot","twoStarNoDot","reSpecials","charSet","slashSplit","pattern","ext","defaults","def","orig","makeRe","braceExpand","assertValidPattern","nocomment","charAt","trim","allowWindowsEscape","regexp","negate","comment","empty","partial","make","debug","parseNegate","globSet","globParts","si","negateOffset","nonegate","l","nobrace","MAX_PATTERN_LENGTH","SUBPARSE","isSub","noglobstar","re","hasMagic","nocase","escaping","patternListStack","negativeLists","stateChar","inClass","reClassStart","classStart","patternStart","dot","clearStateChar","len","noext","reStart","pl","reEnd","cs","substring","er","sp","tail","_","$1","$2","addPatternStart","nl","nlBefore","nlFirst","nlLast","nlAfter","openParensBefore","cleanAfter","dollar","newRe","globUnescape","regExp","_glob","_src","twoStar","regExpEscape","ex","mm","f","nonull","filename","file","matchBase","hit","matchOne","flipNegate","fi","pi","fl","fr","pr","swallowee","messageDispatcher","createMessageDispatcher","MessageDispatcher","getMessageDispatcher","brickAndMessages","massageConf","channel","messages","reset","messageCallbackHandlers","subscribe","callback","req","setMessageCallbackHandlers","channels","unsubscribe","getTopicByChannel","createWebsocketService","reducer","Boolean","MESSAGE_PUSH","messagePushHandler","messageSubscribeResponseEventHandler","handlers","getMessageHandlersByTopic","finder","brickAndMessage","prev","curr","callbacks","runtimeBrick","timeoutIdList","startPoll","task","progress","success","finally","finallyCallback","interval","leadingRequestDelay","continueOnError","delegateLoadingBar","expectPollEnd","expectPollStopImmediately","currentRenderId","currentTimeoutId","poll","shouldStop","delayedPoll","delay","clearPollTimeout","timeoutId","clearTimeout","mocks","mockId","mockList","registerMock","useMocks","uri","_match","p3","getMockList","getMockInfo","requestUrl","_p2","contractsMap","collectContract","contracts","contract","namespaceId","getContract","flowApiDefinitionPromiseMap","isCustomApiProvider","getArgsOfCustomApi","originalArgs","isFlowApi","apiDefinition","fetchFlowApiDefinition","apiProfile","getApiProfileFromApiDefinition","getApiArgsFromApiProfile","ext_fields","namespace","serviceName","responseWrapper","version","isFileType","fileName","getTransformedUriAndRestArgs","responseType","restArgs","transformedUri","api","yaml","safeLoad","schema","JSON_SCHEMA","json","endpoint","wrapper","toLowerCase","promise","_fetchFlowApiDefinition","namespaceName","nameWithVersion","isUseMock","InstanceApi_postSearchV3","contractData","ContractApi_searchSingleContract","contractName","bindListeners","eventsMap","eventType","rememberListeners","unbindListeners","$$eventListeners","isBuiltinHandler","isUseProviderHandler","useProvider","isCustomHandler","targetRef","isExecuteCustomHandler","isSetPropsCustomHandler","builtinHistoryListenerFactory","builtinHistoryWithoutArgsListenerFactory","builtinSegueListenerFactory","builtinAliasListenerFactory","builtinIframeListenerFactory","builtinWindowListenerFactory","builtinLocationListenerFactory","builtinWebStorageListenerFactory","preventDefault","builtinConsoleListenerFactory","builtinMessageListenerFactory","builtinContextListenerFactory","builtinStateListenerFactory","builtinTplDispatchEventFactory","builtinWebSocketListenerFactory","builtinThemeListenerFactory","builtinAnalyticsListenerFactory","usingProviderFactory","customListenerFactory","providerBrick","brickCallback","getTplContext","tpl","argsFactory","messageTopic","legacyIframeMountPoint","postMessage","iframe","firstChild","contentWindow","angular","features","runtime","micro_app_id","route_alias","targets","multiple","querySelectorAll","found","$$getElementByRef","useEventAsDefault","computedArgs","finallyHook","callbackFactory","specificHandler","eachHandler","err","pollableCallback","enabled","useEventDetailAsDefault","removeItem","BrickNode","$$brick","mount","tagName","customElements","node","slotId","setAttribute","iid","events","child","childNodes","unmount","afterMount","handleProxyOfCustomTemplate","checkLogin","http","processBootstrapResponse","bootstrapResponse","config","deepFreeze","merge","defaultConfig","userConfig","locales","localeName","removeResourceBundle","CUSTOM_API_PROVIDER","processExtFields","hasFields","hasQueryParams","HasBodyParams","CustomApi","isSimpleRequest","simpleRequest","requestWithBody","registerCustomApi","createProviderClass","initAnalytics","gaMeasurementId","analyticsDebugMode","sendPageView","userId","debugMode","standaloneBootstrap","bootstrapResult","confString","BOOTSTRAP_FILE","APP_ROOT","sys_settings","user_config","user_config_by_apps","feature_flags","featureFlags","hueStep","saturationStep","saturationStep2","brightnessStep1","brightnessStep2","lightColorCount","darkColorCount","darkColorMap","opacity","toHsv","_ref","g","hsv","rgbToHsv","h","toHex","_ref2","rgbToHex","mix","rgb1","rgb2","amount","rgb","getHue","light","hue","round","getSaturation","saturation","Number","toFixed","generate","color","opts","patterns","pColor","inputToRGB","colorString","_i","_hsv","_colorString","_ref3","darkColorString","backgroundColor","presetPrimaryColors","red","volcano","orange","gold","yellow","lime","green","cyan","blue","geekblue","purple","magenta","grey","presetPalettes","presetDarkPalettes","getStyleByBaseColors","baseColors","getDarkStyle","getLightStyle","getCssVariableDefinitionsByPalettes","generatePalettes","getMigratedCssVariableDefinitions","getStyleByBrandColor","brandColor","getCssVariableDefinitionsByBrand","getStyleByVariables","getCssVariableDefinitionsByVariables","cssVariableDefinitions","palettes","colorName","palette","ensureBaseColorName","getRgbChannel","baseColor","default","hover","active","ensureCssVariableName","migrateMap","_ref4","legacyColorName","newColorName","getActualBaseColor","hex","applyColorTheme","style","themes","head","dependsAll","dllPath","DLL_PATH","loadScriptOfDll","loadScriptOfBricksOrTemplates","filePath","templateDeps","getTemplateDepsOfStoryboard","dll","deps","getDllAndDepsOfStoryboard","asyncProcessStoryboard","ignoreBricksInUnusedCustomTemplates","processors","filteredBricks","getDllAndDepsByResource","loadCheckLogin","loadMicroApps","generateColorTheme","loadingBar","Router","legacyAuthGuard","layoutBootstrap","layout","supportedLayouts","currentLayout","presetBricks","pageNotFound","pageError","navbar","AuthSdk","loggedIn","BootstrapV2Api_bootstrapV2","appFields","ignoreTemplateFields","ignoreBrickFields","$$fulfilled","$$fulfilling","doFulfilStoryboard","routes","meta","BootstrapV2Api_getAppStoryboardV2","postProcessStoryboard","scanRouteAliasInStoryboard","i18nNamespace","$$registerCustomTemplateProcessed","$$depsProcessed","previewPath","previewRouteIndex","findIndex","route","newPreviewRoute","pick","exact","unshift","snippetId","loadDepsOfStoryboard","gracefullyLoadDeps","_loadDepsOfStoryboard","prefetchDepsOfStoryboard","prefetchScript","CORE_ROOT","registerCustomTemplatesInStoryboard","customTemplates","scanBricksInBrickConf","scanProcessorsInAny","_loadDynamicBricks","_loadEditorBricks","firstRendered","toggleBars","visible","unsetBars","appChanged","legacy","toggleLegacyIframe","loadRelatedAppsAsync","loadUsersStarted","loadUsers","allUserMap","nickname","user_email","user_tel","user_icon","user_memo","allUserInfo","UserAdminApi_searchAllUsersInfo","user","loadMicroAppApiOrchestrationAsync","usedCustomApis","loadMicroAppApiOrchestration","getMicroAppApiOrchestrationMapAsync","allMicroAppApiOrchestrationMap","legacyCustomApis","allMicroAppApiOrchestration","$or","loadMagicBrickConfigStarted","loadMagicBrickConfig","allMagicBrickConfigMap","allMagicBrickConfig","selector","allRelatedAppsPromise","loadRelatedApps","relatedApps","ObjectMicroAppApi_getObjectMicroAppList","allRelatedApps","thisApp","microAppId","updateWorkspaceStack","workspace","appName","appLocaleName","currentUrl","previousWorkspace","getPreviousWorkspace","previousApp","currentAppId","currentStoryboard","providerRepository","dlls","loadScript","BrickEvent","PropertyDisplayType","getRuntimeMisc","isInIframe","isInIframeOfSameSite","isInIframeOfNext","isInIframeOfVisualBuilder","isInIframeOfLegacyConsole","parent","selfIsNext","parentPathname","parentIsNext","getSubStoryboardByRoute","matcher","getSubRoutes","getSubRoute","getSubBricks","getSubBrick","listenOnTrackingContext","track","contextName","stateName","LocationContext","resolver","Resolver","getContext","nextApp","currentMatch","matchRoutes","computedPath","matchPath","noAuthGuard","public","matchStoryboard","sortedStoryboards","orderBy","matched","mountRoutes","mountRoutesResult","redirect","redirectConf","unauthenticated","hybrid","defineResolves","mountProviders","providers","mountMenu","documentId","isRouteConfOfRoutes","preFetchMenu","isRouteConfOfBricks","mountBricks","analyticsData","menuConf","barsHidden","registerHandlersFromLifeCycle","lifeCycle","menuInBg","otherMenuConf","omit","injectedMenuConf","sidebarMenu","overwrite","noCurrentApp","providerConf","mountBrick","bg","tplStack","ResolveRequestError","errorMessage","rawError","brickName","template","isLegacyTemplate","main","errorType","checkResolvableIf","ifConf","container","permissionsPreCheck","tplTagName","getTagNameOfCustomTemplate","expandedBrickConf","asyncExpandCustomTemplate","exports","ctxName","appendBrick","portal","slottedMountRoutesResult","onBeforePageLoad","onPageLoad","onBeforePageLeave","onPageLeave","onAnchorLoad","onAnchorUnload","onMediaChange","onMessageClose","beforePageLoadHandlers","pageLoadHandlers","beforePageLeaveHandlers","pageLeaveHandlers","anchorLoadHandlers","anchorUnloadHandlers","mediaChangeHandlers","messageHandlers","messageCloseHandlers","handleBeforePageLoad","dispatchLifeCycleEvent","handlePageLoad","handleBeforePageLeave","handlePageLeave","handleAnchorLoad","anchor","handleMediaChange","handleMessage","getCurrentMatch","brickAndHandler","useMenus","scanAppGetMenuInAny","unmountTree","$$rootBricks","innerHTML","mountTree","rootBricks","nodes","afterMountTree","mountStaticNode","brickNode","makeProviderRefreshable","$refresh","keyOfIntervalStopped","defineProperties","$$dependents","$stopInterval","ignoreErrors","throwErrors","$$scheduled","cache","field","transformFrom","onReject","intermediateTransform","intermediateTransformFrom","intermediateTransformMapArray","actualArgs","fetchData","onRejectTransform","resetRefreshQueue","refreshQueue","resolves","resolveConf","definedResolves","useResolves","$$resolved","asyncProcessBrick","propsReference","actualResolveConf","providerTagName","isHandleRejectByTransform","isHandleRejectByCatch","scheduleRefreshing","isolatedCrash","captureStackTrace","shouldBeDefaultCollapsed","clientWidth","getBlockMessageBeforePageLave","returnValue","block","previousMessage","locationContext","locationChangeNotify","Date","image","Image","prevLocation","listen","ignoreRendering","omittedLocationProps","locationsAreEqual","rendering","nextLocation","queuedRender","render","renderId","pageTracker","apiAnalyzer","getInstance","restoreDynamicTemplates","subStoryboard","layoutType","redirectToLogin","mapCustomApisToNameAndNamespace","scanCustomApisInStoryboard","failed","specificTemplatePreviewIndex","findLastIndex","specificSnippetPreviewIndex","mergedRoutes","brickPageError","createPath","actualLegacy","mediaEventTargetHandler","setNavConfig","scrollTo","requestIdleCallback","brickPageNotFound","mountResult","navConfig","collectRefsInTemplate","refMap","collectRefsInBrickConfs","brickConfs","collectRefsInBrickConf","collectMergeBases","contextInTemplate","refToBrickConf","mergeBaseMap","expandCustomTemplate","lowLevelExpandCustomTemplate","restBrickConf","newBrickConf","proxyCopy","tplVariables","refPropertiesCopy","$$properties","reversedRef","extraOneWayRefs","extraConf","reversedProperties","extraRef","extraProxies","reveredSlots","expandBrickInTemplate","brickConfInTemplate","restBrickConfInTemplate","getElementByRef","firstRun","enumerable","handleExtraOneWayRefs","extraRefElement","refElement","delegatedPropSymbol","eventRef","bubbles","stopPropagation","cancelable","composed","$$proxyEvents","proxyEvent","refEvent","methodRef","refMethod","tplName","tplConstructor","registered","getPropsOfCustomTemplate","nativeProp","HTMLElement","TplElement","$$typeof","_dev_only_definedProperties","connectedCallback","display","processorFullName","processorFunc","processorName","registry","createRuntime","LegacyErrorBoundary","Component","getDerivedStateFromError","ErrorBoundary","withTranslation","warnNativeHtmlElementProperty","__deprecated_and_for_compatibility_only","decorateProperty","__unstable_doNotDecorate","kind","initializer","attribute","placement","descriptor","finisher","Class","createProperty","decorateEvent","createEventEmitter","decorateMethod","createMethod","useApplyPageTitle","useRecentApps","recentApps","setRecentApps","useCurrentApp","useLocation","setLocation","unlisten","expandTemplateInUseBrick","useBrick","tplConf","getCurrentRunTimeBrick","transformOption","SingleBrickAsComponent","refCallback","immediatelyRefCallback","templateRef","useRef","isBrickAvailable","useMemo","catch","current","innerRefCallback","useCallback","transformEvents","slotsToChildren","BrickAsComponent","slot","ForwardRefSingleBrickAsComponent","forwardRef","LegacySingleBrickAsComponent","brickRef","useImperativeHandle","items_per_page","jump_to","jump_to_confirm","prev_page","next_page","prev_5","next_5","prev_3","next_3","today","now","backToToday","ok","timeSelect","dateSelect","weekSelect","month","year","previousMonth","nextMonth","monthSelect","yearSelect","decadeSelect","yearFormat","dayFormat","dateFormat","dateTimeFormat","previousYear","nextYear","previousDecade","nextDecade","previousCentury","nextCentury","placeholder","rangePlaceholder","_extends","yearPlaceholder","quarterPlaceholder","monthPlaceholder","weekPlaceholder","rangeYearPlaceholder","rangeMonthPlaceholder","rangeWeekPlaceholder","CalendarLocale","timePickerLocale","TimePickerLocale","typeTemplate","localeValues","Pagination","DatePicker","TimePicker","Calendar","global","Table","filterTitle","filterConfirm","filterReset","filterEmptyText","selectAll","selectInvert","selectNone","selectionAll","sortTitle","triggerDesc","triggerAsc","cancelSort","justOkText","Popconfirm","Transfer","searchPlaceholder","itemUnit","itemsUnit","selectCurrent","removeCurrent","removeAll","Upload","uploading","removeFile","uploadError","previewFile","downloadFile","Empty","description","Icon","Text","edit","copy","copied","PageHeader","back","Form","optional","defaultValidateMessages","required","whitespace","date","format","invalid","types","string","array","number","integer","email","min","mismatch","preview","monthBeforeYear","emptyText","titles","EmptySvg","isBig","createNewId","EasyopsEmpty","illustration","getIllustration","useBigEmptyImage","imageStyle","height","renderEasyopsEmpty","FeatureFlagsContext","createContext","FeatureFlagsProvider","Provider","useFeatureFlags","useContext","flagNames","flag","DisplayByFeatureFlags","every","fallback","BrickWrapper","enUS","zhCN","ConfigProvider","wrapperConfig","developHelper","getBrickPackages","getTemplatePackages","getStoryboards","getFakeKernel","checkoutTplContext","noop","updateStoryboard","updateTemplatePreviewSettings","updateSnippetPreviewSettings","defaultConverter","toAttribute","fromAttribute","notEqual","old","defaultPropertyDeclaration","converter","reflect","hasChanged","attributeNameForProperty","char","UpdatingElement","observedAttributes","_ensureObservedAttributes","_observedAttributes","_ensureDefinedProperties","__dev_only_definedProperties","_dev_only_definedMethods","_ensureDefinedMethods","__dev_only_definedMethods","_dev_only_definedEvents","_ensureDefinedEvents","__dev_only_definedEvents","attributeChangedCallback","_enqueueRender","isConnected","_hasRequestedRender","_render","superClass","noAccessor","oldValue","attrValue","removeAttribute","eventInit","ModalElement","_decorate","isVisible","useProviderArgsDefaults","customOptions","oldData","newData","loading","suspense","dependencies","useProviderArgs","providerOrParamsOrGlobalOptions","gloabalOptionsOrDeps","localOptions","requestInit","customOptionKeys","restOptions","fetchProviderArgs","fetch","setLoading","suspenseStatus","suspender","mounted","forceUpdate","useReducer","doFetch","newRes","makeFetch","providerOrBody","providerStr","providerArgs","isString"],"mappings":"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"}
1
+ {"version":3,"file":"index.bundle.js","sources":["../src/core/Bars/BaseBar.ts","../src/core/Bars/AppBar.ts","../src/core/Bars/MenuBar.ts","../src/i18n/constants.ts","../src/internal/getBasePath.ts","../../../node_modules/compare-versions/index.mjs","../src/core/TemplateRegistries.ts","../src/themeAndMode.ts","../../supply/dist/esm/index.js","../src/internal/alias.ts","../src/internal/segue.ts","../src/internal/images.ts","../src/internal/injected.ts","../src/internal/getNextStateOfUseBrick.ts","../src/transformProperties.ts","../src/internal/devtools.ts","../src/internal/Storage.ts","../src/i18n/locales/en.ts","../src/i18n/locales/zh.ts","../src/i18n/index.ts","../src/core/WidgetI18n.ts","../src/i18nText.ts","../src/auth.ts","../src/internal/checkPermissions.ts","../src/internal/proxyFactories.ts","../src/internal/getGeneralGlobals.ts","../src/core/StoryboardFunctionRegistryFactory.ts","../src/core/StoryboardFunctions.ts","../src/core/WidgetFunctions.ts","../../../node_modules/@ungap/event-target/esm/index.js","../src/checkIf.ts","../src/core/StoryboardContext.ts","../src/core/CustomTemplates/CustomTemplateContext.ts","../src/internal/mediaQuery.ts","../src/internal/evaluate.ts","../src/core/CustomTemplates/assertions.ts","../src/core/CustomTemplates/constants.ts","../src/core/CustomTemplates/propertyMerge.ts","../src/core/CustomTemplates/setupTemplateProxy.ts","../src/core/CustomTemplates/setupUseBrickInTemplate.ts","../src/internal/setProperties.ts","../src/internal/menu.ts","../src/core/LazyBrickRegistry.ts","../src/core/Runtime.ts","../src/internal/historyExtended.ts","../src/history.ts","../src/internal/isUnauthenticatedError.ts","../src/handleHttpError.tsx","../src/websocket/WebsocketMessageRequest.ts","../src/websocket/interfaces/index.ts","../src/websocket/WebsocketMessageResponse.ts","../src/websocket/WebSocketService.ts","../src/websocket/WebSocket.ts","../../../node_modules/concat-map/index.js","../../../node_modules/balanced-match/index.js","../../../node_modules/brace-expansion/index.js","../../../node_modules/minimatch/minimatch.js","../src/core/MessageDispatcher.ts","../src/internal/poll.ts","../src/core/MockRegistry.ts","../src/core/CollectContracts.ts","../src/core/FlowApi.ts","../src/internal/bindListeners.ts","../src/core/BrickNode.ts","../../../node_modules/@next-sdk/auth-sdk/dist/index.esm.js","../src/core/processors.ts","../src/providers/CustomApi.ts","../src/core/initAnalytics.ts","../src/core/standaloneBootstrap.ts","../../../node_modules/@ctrl/tinycolor/dist/module/util.js","../../../node_modules/@ctrl/tinycolor/dist/module/conversion.js","../../../node_modules/@ctrl/tinycolor/dist/module/css-color-names.js","../../../node_modules/@ctrl/tinycolor/dist/module/format-input.js","../../../node_modules/@ant-design/colors/dist/index.esm.js","../../color-theme/dist/esm/index.js","../src/internal/applyColorTheme.ts","../src/core/Kernel.ts","../../brick-types/dist/index.esm.js","../src/internal/misc.ts","../src/internal/getSubStoryboardByRoute.ts","../src/internal/listenOnTrackingContext.ts","../src/core/LocationContext.ts","../src/core/reconciler.ts","../src/internal/makeProviderRefreshable.ts","../src/core/Resolver.ts","../src/internal/shouldBeDefaultCollapsed.ts","../src/core/Router.ts","../src/core/CustomTemplates/collectRefsInTemplate.ts","../src/core/CustomTemplates/collectMergeBases.ts","../src/core/CustomTemplates/expandCustomTemplate.ts","../src/core/CustomTemplates/getTagNameOfCustomTemplate.ts","../src/core/CustomTemplates/handleProxyOfCustomTemplate.ts","../src/core/CustomTemplates/registerCustomTemplate.ts","../src/core/CustomProcessors.ts","../src/runtime.ts","../src/ErrorBoundary.tsx","../src/decorators/utils.ts","../src/decorators/property.ts","../src/decorators/event.ts","../src/decorators/method.ts","../src/useApplyPageTitle.ts","../src/useRecentApps.ts","../src/useCurrentApp.ts","../src/useLocation.ts","../src/BrickAsComponent.tsx","../../../node_modules/rc-pagination/es/locale/zh_CN.js","../../../node_modules/rc-picker/es/locale/zh_CN.js","../../../node_modules/antd/es/time-picker/locale/zh_CN.js","../../../node_modules/antd/es/date-picker/locale/zh_CN.js","../../../node_modules/antd/es/locale/zh_CN.js","../../../node_modules/rc-pagination/es/locale/en_US.js","../../../node_modules/rc-picker/es/locale/en_US.js","../../../node_modules/antd/es/time-picker/locale/en_US.js","../../../node_modules/antd/es/date-picker/locale/en_US.js","../../../node_modules/antd/es/locale/default.js","../src/EasyopsEmpty/EmptySvg.tsx","../src/EasyopsEmpty/EasyopsEmpty.tsx","../src/featureFlags.tsx","../src/BrickWrapper.tsx","../src/developHelper.ts","../src/UpdatingElement.ts","../src/elements/ModalElement.ts","../src/hooks/useProvider/useProviderArgsDefaults.ts","../src/hooks/useProvider/useProviderArgs.ts","../src/hooks/useProvider/fetchProviderArgs.ts","../src/hooks/useProvider/fetch.ts","../src/hooks/useProvider/useProvider.ts"],"sourcesContent":["import { MountPoints } from \"@next-core/brick-types\";\nimport { Kernel } from \"../Kernel\";\n\nexport class BaseBar {\n public element: HTMLElement;\n private brick: string;\n\n constructor(private kernel: Kernel, private mountPoint: string) {}\n\n /**\n * Bars will be bootstrapped every time the layout changes.\n *\n * @param brick - The brick name.\n */\n async bootstrap(brick?: string, options?: { testid: string }): Promise<void> {\n // Ignore if the brick is not changed.\n if (this.brick === brick) {\n return;\n }\n this.brick = brick;\n\n // Remove the previous bar element.\n if (this.element) {\n this.element.remove();\n this.element = null;\n }\n // The new brick may be undefined, which indicates no bar element in current layout.\n if (brick) {\n await this.kernel.loadDynamicBricks([brick]);\n this.element = document.createElement(brick);\n if (options?.testid) {\n this.element.dataset.testid = options.testid;\n }\n this.kernel.mountPoints[this.mountPoint as keyof MountPoints].appendChild(\n this.element\n );\n }\n }\n}\n","import { AppBarBrick, BreadcrumbItemConf } from \"@next-core/brick-types\";\nimport { BaseBar } from \"./BaseBar\";\n\nexport class AppBar extends BaseBar {\n // `element` is not available in business layout.\n public declare element: AppBarBrick;\n\n /**\n * 设置页面标题(顶部)\n * @param pageTitle - 标题\n * @deprecated Use `getRuntime().applyPageTitle(...)` or `useApplyPageTitle(...)` instead.\n */\n setPageTitle(pageTitle: string): void {\n if (!this.element) {\n return;\n }\n this.element.pageTitle = pageTitle;\n }\n\n /**\n * 追加面包屑\n * @param breadcrumb - 面包屑配置\n */\n appendBreadcrumb(breadcrumb: BreadcrumbItemConf[]): void {\n if (!this.element) {\n return;\n }\n this.element.breadcrumb = [...this.element.breadcrumb, ...breadcrumb];\n }\n\n /**\n * 设置面包屑\n * @param breadcrumb - 面包屑配置\n */\n setBreadcrumb(breadcrumb: BreadcrumbItemConf[]): void {\n if (!this.element) {\n return;\n }\n this.element.breadcrumb = breadcrumb;\n }\n}\n","import { MenuBarBrick, SidebarMenu } from \"@next-core/brick-types\";\nimport { BaseBar } from \"./BaseBar\";\n\nexport class MenuBar extends BaseBar {\n // `element` is not available in business layout.\n public declare element: MenuBarBrick;\n\n /**\n * 设置应用菜单(左侧菜单)\n * @param menu - 菜单\n */\n setAppMenu(menu: SidebarMenu): void {\n if (!this.element) {\n return;\n }\n this.element.menu = menu;\n }\n\n /**\n * 重置应用菜单(左侧菜单)\n */\n resetAppMenu(): void {\n if (!this.element) {\n return;\n }\n this.element.menu = null;\n this.element.subMenu = null;\n }\n\n /**\n * 折叠/展开应用菜单\n * @param collapsed\n */\n collapse(collapsed: boolean): void {\n if (!this.element) {\n return;\n }\n this.element.collapsed = collapsed;\n }\n\n /**\n * 检查应用菜单是否处于折叠状态\n */\n isCollapsed(): boolean {\n return this.element?.collapsed;\n }\n\n /**\n * 应用菜单已折叠时*软展开/收回*\n * @param collapsed\n */\n softExpand(expanded: boolean): void {\n if (!this.element) {\n return;\n }\n this.element.softExpanded = expanded;\n }\n\n /**\n * 应用菜单是否处于*软展开*状态\n * @param collapsed\n */\n isSoftExpanded(): boolean {\n return this.element?.softExpanded;\n }\n}\n","export const NS_BRICK_KIT = \"brick-kit\";\n\nexport enum K {\n REQUEST_FAILED = \"REQUEST_FAILED\",\n MODAL_OK = \"MODAL_OK\",\n MODAL_CANCEL = \"MODAL_CANCEL\",\n SOMETHING_WENT_WRONG = \"SOMETHING_WENT_WRONG\",\n LOGIN_TIMEOUT_MESSAGE = \"LOGIN_TIMEOUT_MESSAGE\",\n NETWORK_ERROR = \"NETWORK_ERROR\",\n}\n\nexport type Locale = { [key in K]: string };\n","/**\n * Get site's base path, generally will be `/next/` or `/`.\n */\nexport function getBasePath(): string {\n const base = document.querySelector(\"base\");\n const basePath = base ? base.getAttribute(\"href\") : \"/\";\n return basePath;\n}\n","export default function compareVersions(v1, v2) {\n // validate input and split into segments\n const n1 = validateAndParse(v1);\n const n2 = validateAndParse(v2);\n\n // pop off the patch\n const p1 = n1.pop();\n const p2 = n2.pop();\n\n // validate numbers\n const r = compareSegments(n1, n2);\n if (r !== 0) return r;\n\n // validate pre-release\n if (p1 && p2) {\n return compareSegments(p1.split('.'), p2.split('.'));\n } else if (p1 || p2) {\n return p1 ? -1 : 1;\n }\n\n return 0;\n}\n\nexport const validate = (v) =>\n typeof v === 'string' && /^[v\\d]/.test(v) && semver.test(v);\n\nexport const compare = (v1, v2, operator) => {\n // validate input operator\n assertValidOperator(operator);\n\n // since result of compareVersions can only be -1 or 0 or 1\n // a simple map can be used to replace switch\n const res = compareVersions(v1, v2);\n\n return operatorResMap[operator].includes(res);\n};\n\nexport const satisfies = (v, r) => {\n // if no range operator then \"=\"\n const m = r.match(/^([<>=~^]+)/);\n const op = m ? m[1] : '=';\n\n // if gt/lt/eq then operator compare\n if (op !== '^' && op !== '~') return compare(v, r, op);\n\n // else range of either \"~\" or \"^\" is assumed\n const [v1, v2, v3] = validateAndParse(v);\n const [r1, r2, r3] = validateAndParse(r);\n if (compareStrings(v1, r1) !== 0) return false;\n if (op === '^') {\n return compareSegments([v2, v3], [r2, r3]) >= 0;\n }\n if (compareStrings(v2, r2) !== 0) return false;\n return compareStrings(v3, r3) >= 0;\n};\n\n// export CJS style for parity\ncompareVersions.validate = validate;\ncompareVersions.compare = compare;\ncompareVersions.sastisfies = satisfies;\n\nconst semver =\n /^[v^~<>=]*?(\\d+)(?:\\.([x*]|\\d+)(?:\\.([x*]|\\d+)(?:\\.([x*]|\\d+))?(?:-([\\da-z\\-]+(?:\\.[\\da-z\\-]+)*))?(?:\\+[\\da-z\\-]+(?:\\.[\\da-z\\-]+)*)?)?)?$/i;\n\nconst validateAndParse = (v) => {\n if (typeof v !== 'string') {\n throw new TypeError('Invalid argument expected string');\n }\n const match = v.match(semver);\n if (!match) {\n throw new Error(`Invalid argument not valid semver ('${v}' received)`);\n }\n match.shift();\n return match;\n};\n\nconst isWildcard = (s) => s === '*' || s === 'x' || s === 'X';\n\nconst tryParse = (v) => {\n const n = parseInt(v, 10);\n return isNaN(n) ? v : n;\n};\n\nconst forceType = (a, b) =>\n typeof a !== typeof b ? [String(a), String(b)] : [a, b];\n\nconst compareStrings = (a, b) => {\n if (isWildcard(a) || isWildcard(b)) return 0;\n const [ap, bp] = forceType(tryParse(a), tryParse(b));\n if (ap > bp) return 1;\n if (ap < bp) return -1;\n return 0;\n};\n\nconst compareSegments = (a, b) => {\n for (let i = 0; i < Math.max(a.length, b.length); i++) {\n const r = compareStrings(a[i] || 0, b[i] || 0);\n if (r !== 0) return r;\n }\n return 0;\n};\n\nconst operatorResMap = {\n '>': [1],\n '>=': [0, 1],\n '=': [0],\n '<=': [-1, 0],\n '<': [-1],\n};\n\nconst allowedOperators = Object.keys(operatorResMap);\n\nconst assertValidOperator = (op) => {\n if (typeof op !== 'string') {\n throw new TypeError(\n `Invalid operator type, expected string but got ${typeof op}`\n );\n }\n if (allowedOperators.indexOf(op) === -1) {\n throw new Error(\n `Invalid operator, expected one of ${allowedOperators.join('|')}`\n );\n }\n};\n","import { BrickTemplateFactory, TemplateRegistry } from \"@next-core/brick-types\";\n\nexport const brickTemplateRegistry: TemplateRegistry<BrickTemplateFactory> = new Map();\n\nexport function registerBrickTemplate(\n name: string,\n factory: BrickTemplateFactory\n): void {\n if (brickTemplateRegistry.has(name)) {\n // eslint-disable-next-line no-console\n console.error(`Brick template of \"${name}\" already registered.`);\n return;\n }\n brickTemplateRegistry.set(name, factory);\n}\n","import { useEffect, useState } from \"react\";\nimport { SiteMode, SiteTheme } from \"@next-core/brick-types\";\nimport { JsonStorage } from \"@next-core/brick-utils\";\n\n// Themes.\nconst DEFAULT_THEME = \"light\";\nexport const DARK_THEME = \"dark-v2\" as SiteTheme;\nlet theme: SiteTheme = DEFAULT_THEME;\nconst storage = new JsonStorage(localStorage);\nconst LOCAL_STORAGE_APPS_THEME_KEY = \"apps-theme\";\n\nexport function setTheme(value: SiteTheme): void {\n if (value !== \"dark\" && value !== \"light\" && value !== \"dark-v2\") {\n throw new Error(`Unsupported theme: ${value}`);\n }\n theme = value;\n}\n\nexport function getTheme(): SiteTheme {\n return theme;\n}\n\nexport function getCurrentTheme(): SiteTheme {\n return document.documentElement.dataset.theme as SiteTheme;\n}\n\nexport function applyTheme(value?: SiteTheme): void {\n if (value) {\n setTheme(value);\n } else {\n value = getTheme();\n }\n if (value !== getCurrentTheme()) {\n document.documentElement.dataset.theme = value;\n window.dispatchEvent(\n new CustomEvent<SiteTheme>(\"theme.change\", {\n detail: value,\n })\n );\n }\n}\n\nexport function useCurrentTheme(): SiteTheme {\n const [currentTheme, setCurrentTheme] = useState(getCurrentTheme());\n\n useEffect(() => {\n const listenToThemeChange = (event: Event): void => {\n setCurrentTheme((event as CustomEvent<SiteTheme>).detail);\n };\n window.addEventListener(\"theme.change\", listenToThemeChange);\n return () => {\n window.removeEventListener(\"theme.change\", listenToThemeChange);\n };\n }, []);\n\n return currentTheme;\n}\n\nexport function batchSetAppsLocalTheme(\n appsTheme: Record<string, SiteTheme>\n): void {\n storage.setItem(LOCAL_STORAGE_APPS_THEME_KEY, {\n ...getLocalAppsTheme(),\n ...appsTheme,\n });\n}\n\nexport function getLocalAppsTheme(): Record<string, SiteTheme> {\n let result;\n try {\n result = storage.getItem(LOCAL_STORAGE_APPS_THEME_KEY) as Record<\n string,\n SiteTheme\n >;\n } catch {\n // eslint-disable-next-line no-console\n console.error(\"JSON parse error inside `getLocalAppsTheme()`\");\n }\n\n return result || {};\n}\n\n// Modes.\nconst DEFAULT_MODE = \"default\";\nlet mode: SiteMode = DEFAULT_MODE;\n\nexport function setMode(value: SiteMode): void {\n if (value !== \"dashboard\" && value !== \"default\") {\n throw new Error(`Unsupported mode: ${value}`);\n }\n mode = value;\n}\n\nexport function getMode(): SiteMode {\n return mode;\n}\n\nexport function getCurrentMode(): SiteMode {\n return document.documentElement.dataset.mode as SiteMode;\n}\n\nexport function applyMode(value?: SiteMode): void {\n if (value) {\n setMode(value);\n } else {\n value = getMode();\n }\n if (value !== getCurrentMode()) {\n document.documentElement.dataset.mode = value;\n window.dispatchEvent(\n new CustomEvent<SiteMode>(\"mode.change\", {\n detail: value,\n })\n );\n }\n}\n\nexport function useCurrentMode(): SiteMode {\n const [currentMode, setCurrentMode] = useState(getCurrentMode());\n\n useEffect(() => {\n const listenToModeChange = (event: Event): void => {\n setCurrentMode((event as CustomEvent<SiteMode>).detail);\n };\n window.addEventListener(\"mode.change\", listenToModeChange);\n return () => {\n window.removeEventListener(\"mode.change\", listenToModeChange);\n };\n }, []);\n\n return currentMode;\n}\n\nexport function getCssPropertyValue(\n name: string,\n el = document.documentElement\n): string {\n return window.getComputedStyle(el).getPropertyValue(name);\n}\n","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport lodash from \"lodash\";\nimport moment from \"moment\";\nimport { pipes } from \"@next-core/pipes\";\nexport function supply(attemptToVisitGlobals, providedGlobalVariables, mock) {\n var globalVariables = _objectSpread({}, providedGlobalVariables); // Allow limited browser builtin values.\n\n\n globalVariables[\"undefined\"] = undefined;\n\n for (var variableName of attemptToVisitGlobals) {\n if (!Object.prototype.hasOwnProperty.call(globalVariables, variableName)) {\n var variable = supplyIndividual(variableName, mock);\n\n if (variable !== undefined) {\n globalVariables[variableName] = variable;\n }\n }\n }\n\n return globalVariables;\n}\nvar shouldOmitInLodash = new Set([// Omit all mutable methods from lodash.\n// But allow sequence methods like `_.chain`.\n\"fill\", \"pull\", \"pullAll\", \"pullAllBy\", \"pullAllWith\", \"pullAt\", \"remove\", \"reverse\", \"assign\", \"assignIn\", \"assignInWith\", \"assignWith\", \"defaults\", \"defaultsDeep\", \"merge\", \"mergeWith\", \"set\", \"setWith\", \"unset\", \"update\", \"updateWith\",\n/**\n * Ignore `Function` methods from lodash, too.\n * There are chances to invoke `Object.assign`, etc.\n *\n * E.g.:\n *\n * ```\n * _.wrap(_.method('constructor.assign',{b:2},{b:3}),(func,...a) => func(...a))({})\n * ```\n */\n\"after\", \"ary\", \"before\", \"bind\", \"bindKey\", \"curry\", \"curryRight\", \"debounce\", \"defer\", \"delay\", \"flip\", \"memoize\", \"negate\", \"once\", \"overArgs\", \"partial\", \"partialRight\", \"rearg\", \"rest\", \"spread\", \"throttle\", \"unary\", \"wrap\"]); // Omit all mutable methods from moment.\n\nvar shouldOmitInMoment = new Set([\"lang\", \"langData\", \"locale\", \"localeData\", \"defineLocale\", \"updateLocale\", \"updateOffset\"]);\nvar allowedGlobalObjects = new Set([\"Array\", \"Boolean\", \"Date\", \"Infinity\", \"JSON\", \"Math\", \"NaN\", \"Number\", \"String\", \"decodeURI\", \"decodeURIComponent\", \"encodeURI\", \"encodeURIComponent\", \"isFinite\", \"isNaN\", \"parseFloat\", \"parseInt\", \"Map\", \"Set\", \"URLSearchParams\", \"WeakMap\", \"WeakSet\", \"atob\", \"btoa\"]);\n\nfunction supplyIndividual(variableName, mock) {\n switch (variableName) {\n case \"Object\":\n // Do not allow mutable methods like `Object.assign`.\n return delegateMethods(Object, [\"entries\", \"fromEntries\", \"keys\", \"values\"]);\n\n case \"_\":\n return Object.fromEntries(Object.entries(lodash).filter(entry => !shouldOmitInLodash.has(entry[0])).concat(mock ? [[\"uniqueId\", prefix => \"\".concat(prefix !== null && prefix !== void 0 ? prefix : \"\", \"42\")]] : []));\n\n case \"moment\":\n return Object.assign(function () {\n return moment(...arguments);\n }, Object.fromEntries(Object.entries(moment).filter(entry => !shouldOmitInMoment.has(entry[0]))));\n\n case \"PIPES\":\n return pipes;\n\n case \"TAG_URL\":\n return tagUrlFactory(true);\n\n case \"SAFE_TAG_URL\":\n return tagUrlFactory();\n\n default:\n if (allowedGlobalObjects.has(variableName)) {\n return window[variableName];\n }\n\n }\n}\n\nfunction delegateMethods(target, methods) {\n return Object.fromEntries(methods.map(method => [method, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return target[method].apply(target, args);\n }]));\n}\n\n/**\n * Pass `ignoreSlashes` as `true` to encode all tagged expressions\n * as URL components, except for `/` which maybe used in `APP.homepage`.\n *\n * Otherwise encode all tagged expressions as URL components.\n * This will encode `/` as `%2F`. So do not use it directly\n * with `APP.homepage` as in template expressions.\n *\n * @example\n *\n * ```js\n * TAG_URL`${APP.homepage}/list?q=${q}&redirect=${redirect}`\n * ```\n *\n * ```js\n * SAFE_TAG_URL`file/${path}?q=${q}`\n * // `path` will be fully transformed by `encodeURIComponent`.\n * ```\n *\n * ```js\n * // Wrap `APP.homepage` outside of `SAFE_TAG_URL`.\n * `${APP.homepage}/${SAFE_TAG_URL`file/${path}?q=${q}`}`\n * ```\n */\nfunction tagUrlFactory(ignoreSlashes) {\n return function (strings) {\n for (var _len2 = arguments.length, partials = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n partials[_key2 - 1] = arguments[_key2];\n }\n\n var result = [];\n strings.forEach((str, index) => {\n result.push(str);\n\n if (index < partials.length) {\n result.push(ignoreSlashes ? String(partials[index]).replace(/[^/]+/g, p => encodeURIComponent(p)) : encodeURIComponent(String(partials[index])));\n }\n });\n return result.join(\"\");\n };\n}\n//# sourceMappingURL=index.js.map","import { MicroApp } from \"@next-core/brick-types\";\nimport { toPath, computeRealRoutePath } from \"@next-core/brick-utils\";\n\nexport function getUrlByAliasFactory(app: MicroApp) {\n return function getUrlByAlias(\n alias: string,\n pathParams?: Record<string, any>,\n query?: Record<string, any>\n ): string {\n if (!app?.$$routeAliasMap.has(alias)) {\n // eslint-disable-next-line no-console\n throw new Error(`Route alias not found: ${alias}`);\n }\n const routeConf = app.$$routeAliasMap.get(alias);\n let url = toPath(\n computeRealRoutePath(routeConf.path, app) as string,\n pathParams\n );\n if (query) {\n const urlSearchParams = new URLSearchParams();\n for (const [key, value] of Object.entries(query as Record<string, any>)) {\n if (Array.isArray(value)) {\n for (const item of value) {\n urlSearchParams.append(key, item);\n }\n } else if (value !== undefined && value !== null && value !== \"\") {\n urlSearchParams.set(key, value);\n }\n }\n const queryString = urlSearchParams.toString();\n if (queryString.length > 0) {\n url += `?${queryString}`;\n }\n }\n return url;\n };\n}\n","import { MicroApp, SeguesConf } from \"@next-core/brick-types\";\nimport { hasOwnProperty } from \"@next-core/brick-utils\";\nimport { getUrlByAliasFactory } from \"./alias\";\n\nexport function getUrlBySegueFactory(app: MicroApp, segues: SeguesConf) {\n return function getUrlBySegue(\n segueId: string,\n pathParams?: Record<string, any>,\n query?: Record<string, any>\n ): string {\n if (!hasOwnProperty(segues, segueId)) {\n // eslint-disable-next-line no-console\n throw new Error(`Segue not found: ${segueId}`);\n }\n const segue = segues[segueId];\n return getUrlByAliasFactory(app)(segue.target, pathParams, query);\n };\n}\n","export interface ImagesFactory {\n get(name: string): string;\n}\n\nexport function imagesFactory(\n appId: string,\n isBuildPush?: boolean\n): ImagesFactory {\n return {\n get(name) {\n return isBuildPush\n ? `api/gateway/object_store.object_store.GetObject/api/v1/objectStore/bucket/next-builder/object/${name}`\n : `${window.PUBLIC_ROOT ?? \"\"}micro-apps/${appId}/images/${name}`;\n },\n };\n}\n\nexport function widgetImagesFactory(widgetId: string): ImagesFactory {\n return {\n get(name) {\n return `${\n window.PUBLIC_ROOT ?? \"\"\n }bricks/${widgetId}/dist/assets/${name}`;\n },\n };\n}\n","import { isObject } from \"@next-core/brick-utils\";\nimport { isPreEvaluated } from \"./evaluate\";\n\nlet injected = new WeakSet();\n\n// The injected (or transformed) result should never be *injected* again.\n// So does the fetched data from a remote api.\nexport function recursiveMarkAsInjected(value: any): void {\n if (isObject(value)) {\n if (!haveBeenInjected(value)) {\n injected.add(value);\n if (Array.isArray(value)) {\n value.forEach(recursiveMarkAsInjected);\n } else {\n // Only mark pure objects.\n const proto = Object.getPrototypeOf(value);\n if (!proto || proto.constructor === Object) {\n Object.values(value).forEach(recursiveMarkAsInjected);\n }\n }\n }\n }\n}\n\nexport function haveBeenInjected(object: any): boolean {\n return injected.has(object);\n}\n\nexport function resetAllInjected(): void {\n injected = new WeakSet();\n}\n\nexport function cloneDeepWithInjectedMark<T>(value: T): T {\n if (isObject(value) && !isPreEvaluated(value)) {\n const clone = Array.isArray(value)\n ? (value as unknown[]).map((item) => cloneDeepWithInjectedMark(item))\n : Object.fromEntries(\n // Get both string and symbol keys.\n Object.entries(value)\n .map(([k, v]) => [k, cloneDeepWithInjectedMark(v)])\n .concat(\n Object.getOwnPropertySymbols(value).map((k) => [\n k,\n (value as Record<string | symbol, unknown>)[k],\n ])\n )\n );\n if (haveBeenInjected(value)) {\n injected.add(clone);\n }\n return clone as any;\n }\n return value;\n}\n","export enum StateOfUseBrick {\n INITIAL,\n USE_BRICK,\n USE_BRICK_ITEM,\n USE_BRICK_PROPERTIES,\n USE_BRICK_TRANSFORM,\n USE_BRICK_EVENTS,\n USE_BRICK_IF,\n USE_BRICK_SLOTS,\n USE_BRICK_SLOTS_ITEM,\n USE_BRICK_SLOTS_ITEM_BRICKS,\n USE_BRICK_SLOTS_ITEM_BRICKS_ITEM,\n USE_BRICK_LIFECYCLE,\n USE_BRICK_LIFECYCLE_USERESOLVES,\n USE_BRICK_LIFECYCLE_USERESOLVES_ITEM,\n USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_TRANSFORM,\n USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT,\n USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT_TRANSFORM,\n}\n\nexport function isLazyContentInUseBrick(state: StateOfUseBrick): boolean {\n switch (state) {\n case StateOfUseBrick.USE_BRICK_PROPERTIES:\n case StateOfUseBrick.USE_BRICK_TRANSFORM:\n case StateOfUseBrick.USE_BRICK_EVENTS:\n case StateOfUseBrick.USE_BRICK_IF:\n case StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_TRANSFORM:\n case StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT_TRANSFORM:\n return true;\n }\n return false;\n}\n\nexport function getNextStateOfUseBrick(\n state: StateOfUseBrick,\n isArray?: boolean,\n key?: string\n): StateOfUseBrick {\n if (isLazyContentInUseBrick(state)) {\n return state;\n }\n if (isArray) {\n switch (state) {\n case StateOfUseBrick.USE_BRICK:\n return StateOfUseBrick.USE_BRICK_ITEM;\n case StateOfUseBrick.USE_BRICK_SLOTS_ITEM_BRICKS:\n return StateOfUseBrick.USE_BRICK_SLOTS_ITEM_BRICKS_ITEM;\n case StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES:\n return StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM;\n }\n } else {\n switch (state) {\n case StateOfUseBrick.INITIAL:\n if (key === \"useBrick\") {\n return StateOfUseBrick.USE_BRICK;\n }\n break;\n case StateOfUseBrick.USE_BRICK:\n case StateOfUseBrick.USE_BRICK_ITEM:\n case StateOfUseBrick.USE_BRICK_SLOTS_ITEM_BRICKS_ITEM: {\n switch (key) {\n case \"properties\":\n return StateOfUseBrick.USE_BRICK_PROPERTIES;\n case \"transform\":\n return StateOfUseBrick.USE_BRICK_TRANSFORM;\n case \"events\":\n return StateOfUseBrick.USE_BRICK_EVENTS;\n case \"slots\":\n return StateOfUseBrick.USE_BRICK_SLOTS;\n case \"if\":\n return StateOfUseBrick.USE_BRICK_IF;\n case \"lifeCycle\":\n return StateOfUseBrick.USE_BRICK_LIFECYCLE;\n }\n break;\n }\n case StateOfUseBrick.USE_BRICK_SLOTS:\n return StateOfUseBrick.USE_BRICK_SLOTS_ITEM;\n case StateOfUseBrick.USE_BRICK_SLOTS_ITEM:\n if (key === \"bricks\") {\n return StateOfUseBrick.USE_BRICK_SLOTS_ITEM_BRICKS;\n }\n break;\n case StateOfUseBrick.USE_BRICK_LIFECYCLE:\n if (key === \"useResolves\") {\n return StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES;\n }\n break;\n case StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM: {\n switch (key) {\n case \"transform\":\n return StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_TRANSFORM;\n case \"onReject\":\n return StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT;\n }\n break;\n }\n case StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT:\n if (key === \"transform\") {\n return StateOfUseBrick.USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT_TRANSFORM;\n }\n break;\n }\n }\n return StateOfUseBrick.INITIAL;\n}\n","import { get, set } from \"lodash\";\nimport { GeneralTransform, TransformMap } from \"@next-core/brick-types\";\nimport {\n isObject,\n transform,\n isEvaluable,\n trackContext,\n transformAndInject,\n trackState,\n} from \"@next-core/brick-utils\";\nimport {\n evaluate,\n EvaluateOptions,\n isPreEvaluated,\n shouldDismissRecursiveMarkingInjected,\n EvaluateRuntimeContext,\n} from \"./internal/evaluate\";\nimport { haveBeenInjected, recursiveMarkAsInjected } from \"./internal/injected\";\nimport { devtoolsHookEmit } from \"./internal/devtools\";\nimport { setRealProperties } from \"./internal/setProperties\";\nimport {\n getNextStateOfUseBrick,\n isLazyContentInUseBrick,\n StateOfUseBrick,\n} from \"./internal/getNextStateOfUseBrick\";\nimport { TrackingContextItem } from \"./internal/listenOnTrackingContext\";\nimport { _internalApiGetCurrentContext } from \"./core/Runtime\";\n\ninterface TransformOptions {\n isReTransformation?: boolean;\n transformationId?: number;\n allowInject?: boolean;\n}\n\nexport interface DoTransformOptions {\n evaluateOptions?: EvaluateOptions;\n trackingContextList?: TrackingContextItem[];\n allowInject?: boolean;\n tplContextId?: string;\n $$lazyForUseBrick?: boolean;\n $$stateOfUseBrick?: StateOfUseBrick;\n}\n\n/** @internal */\nexport function transformElementProperties(\n element: HTMLElement,\n data: unknown,\n to: GeneralTransform,\n from?: string | string[],\n mapArray?: boolean | \"auto\"\n): void {\n const result = preprocessTransformProperties(data, to, from, mapArray);\n setRealProperties(element, result, true);\n}\n\n/** @internal */\nexport function transformProperties(\n props: Record<string, unknown>,\n data: unknown,\n to: GeneralTransform,\n from?: string | string[],\n mapArray?: boolean | \"auto\",\n options?: {\n allowInject?: boolean;\n }\n): Record<string, unknown> {\n const result = preprocessTransformProperties(\n data,\n to,\n from,\n mapArray,\n options\n );\n for (const [propName, propValue] of Object.entries(result)) {\n set(props, propName, propValue);\n }\n return props;\n}\n\n/** @internal */\nexport function doTransform(\n data: unknown,\n to: unknown,\n options?: DoTransformOptions\n): unknown {\n const preEvaluated = isPreEvaluated(to);\n if (preEvaluated || typeof to === \"string\") {\n // For `useBrick`, some fields such as `properties`/`transform`/`events`,\n // are kept and to be transformed later.\n const lazy =\n options?.$$lazyForUseBrick &&\n isLazyContentInUseBrick(options.$$stateOfUseBrick);\n if (lazy) {\n // The current data context is not memoized, since a new data context\n // should always be provided before later transformations.\n return to;\n }\n\n let result: unknown;\n let dismissRecursiveMarkingInjected = false;\n if (preEvaluated || isEvaluable(to as string)) {\n const runtimeContext: EvaluateRuntimeContext = {\n data,\n };\n if (options?.tplContextId)\n runtimeContext.tplContextId = options.tplContextId;\n result = evaluate(to as string, runtimeContext, options?.evaluateOptions);\n dismissRecursiveMarkingInjected = shouldDismissRecursiveMarkingInjected(\n to as string\n );\n } else {\n result = options?.allowInject\n ? transformAndInject(\n to as string,\n data,\n _internalApiGetCurrentContext()\n )\n : transform(to as string, data);\n }\n if (!dismissRecursiveMarkingInjected) {\n recursiveMarkAsInjected(result);\n }\n return result;\n }\n\n if (!isObject(to) || haveBeenInjected(to)) {\n return to;\n }\n\n if (Array.isArray(to)) {\n const nextOptions = getNextDoTransformOptions(options, true);\n return to.map((item) => doTransform(data, item, nextOptions));\n }\n\n return Object.fromEntries(\n // Get both string and symbol keys.\n Object.entries(to)\n .map(([k, v]) => {\n if (Array.isArray(options?.trackingContextList) && isEvaluable(v)) {\n const contextNames = trackContext(v);\n const stateNames = trackState(v);\n if (contextNames || stateNames) {\n options.trackingContextList.push({\n contextNames,\n stateNames,\n propName: k,\n propValue: v,\n });\n }\n }\n return [\n k,\n doTransform(data, v, getNextDoTransformOptions(options, false, k)),\n ];\n })\n .concat(\n Object.getOwnPropertySymbols(to).map((k) => [\n k,\n (to as Record<string | symbol, unknown>)[k],\n ])\n )\n );\n}\n\n/** @internal */\nexport function reTransformForDevtools(\n transformationId: number,\n data: unknown,\n to: GeneralTransform,\n from?: string | string[],\n mapArray?: boolean | \"auto\",\n allowInject?: boolean\n): void {\n try {\n preprocessTransformProperties(data, to, from, mapArray, {\n isReTransformation: true,\n transformationId,\n allowInject,\n });\n } catch (error) {\n devtoolsHookEmit(\"re-transformation\", {\n id: transformationId,\n error: error.message,\n detail: {\n transform: to,\n data,\n options: { from, mapArray, allowInject },\n },\n });\n }\n}\n\n/** @internal */\nexport function preprocessTransformProperties(\n data: unknown,\n to: GeneralTransform,\n from?: string | string[],\n mapArray?: boolean | \"auto\",\n options?: TransformOptions\n): Record<string, unknown> {\n const props: Record<string, unknown> = {};\n const processedData = from ? get(data, from) : data;\n\n if (Array.isArray(to)) {\n for (const item of to) {\n pipeableTransform(\n props,\n processedData,\n item.to,\n item.from,\n item.mapArray,\n {\n allowInject: options?.allowInject,\n }\n );\n }\n } else {\n pipeableTransform(props, processedData, to, undefined, mapArray, {\n allowInject: options?.allowInject,\n });\n }\n const detail = {\n transform: to,\n data,\n options: { from, mapArray, allowInject: options?.allowInject },\n result: props,\n };\n if (options?.isReTransformation) {\n devtoolsHookEmit(\"re-transformation\", {\n id: options.transformationId,\n detail,\n });\n } else {\n devtoolsHookEmit(\"transformation\", detail);\n }\n return props;\n}\n\nfunction pipeableTransform(\n props: Record<string, unknown>,\n data: unknown,\n to: string | TransformMap,\n from?: string | string[],\n mapArray?: boolean | \"auto\",\n options?: {\n allowInject?: boolean;\n }\n): void {\n if (!to) {\n // Do nothing if `to` is falsy.\n return;\n }\n\n let fromData = from ? get(data, from) : data;\n\n let isArray = Array.isArray(fromData);\n if (!isArray && mapArray === true) {\n isArray = true;\n fromData = [fromData];\n } else if (isArray && mapArray === false) {\n isArray = false;\n }\n\n if (typeof to === \"string\") {\n props[to] = fromData;\n return;\n }\n\n for (const [transformedPropName, transformTo] of Object.entries(to)) {\n // If `fromData` is an array, mapping it's items.\n props[transformedPropName] = isArray\n ? (fromData as unknown[]).map((item) =>\n doTransform(item, transformTo, options)\n )\n : doTransform(fromData, transformTo, options);\n }\n}\n\n/** @internal */\nexport function transformIntermediateData(\n data: unknown,\n to: GeneralTransform,\n from?: string | string[],\n mapArray?: boolean | \"auto\"\n): unknown {\n const intermediateData = from ? get(data, from) : data;\n if (!to) {\n return intermediateData;\n }\n return transformProperties({}, intermediateData, to, undefined, mapArray);\n}\n\nfunction getNextDoTransformOptions(\n options: DoTransformOptions,\n isArray: boolean,\n key?: string\n): DoTransformOptions {\n return options\n ? {\n ...options,\n // Collect tracking context in first level only.\n trackingContextList: undefined,\n $$stateOfUseBrick: options.$$lazyForUseBrick\n ? getNextStateOfUseBrick(\n options.$$stateOfUseBrick ?? StateOfUseBrick.INITIAL,\n isArray,\n key\n )\n : undefined,\n }\n : options;\n}\n","import { evaluate } from \"./evaluate\";\nimport { reTransformForDevtools } from \"../transformProperties\";\n\nexport const MESSAGE_SOURCE_PANEL = \"brick-next-devtools-panel\";\nexport const EVALUATION_EDIT = \"devtools-evaluation-edit\";\nexport const TRANSFORMATION_EDIT = \"devtools-transformation-edit\";\n\ninterface DevtoolsHookContainer {\n __BRICK_NEXT_DEVTOOLS_HOOK__?: DevtoolsHook;\n}\n\ninterface DevtoolsHook {\n emit: (message: any) => void;\n restoreDehydrated: (value: unknown) => any;\n}\n\ninterface EditEvaluationPayload {\n raw: string;\n context: {\n data?: any;\n event?: any;\n };\n id: number;\n}\n\ninterface EditEvaluationPayload {\n type: typeof EVALUATION_EDIT;\n raw: string;\n context: {\n data?: any;\n event?: any;\n };\n id: number;\n}\n\ninterface EditTransformationPayload {\n type: typeof TRANSFORMATION_EDIT;\n data: any;\n transform: any;\n options: {\n from?: string | string[];\n mapArray?: boolean | \"auto\";\n allowInject?: boolean;\n };\n id: number;\n}\n\n/* istanbul ignore next */\nexport function devtoolsHookEmit(type: string, payload?: unknown): void {\n Promise.resolve().then(() => {\n getDevHook()?.emit?.({\n type,\n payload,\n });\n });\n}\n\nexport function listenDevtools(): void {\n window.addEventListener(\"message\", (event: MessageEvent): void => {\n if (event.data?.source !== MESSAGE_SOURCE_PANEL) {\n return;\n }\n const payload: EditEvaluationPayload | EditTransformationPayload =\n event.data.payload;\n if (payload?.type === EVALUATION_EDIT) {\n const { raw, context, id } = payload;\n evaluate(\n raw,\n {\n data: context.data,\n event: restoreDehydrated(context.event),\n },\n {\n isReEvaluation: true,\n evaluationId: id,\n }\n );\n } else if (payload?.type === TRANSFORMATION_EDIT) {\n const {\n data,\n transform,\n id,\n options: { from, mapArray, allowInject },\n } = payload;\n reTransformForDevtools(id, data, transform, from, mapArray, allowInject);\n }\n });\n}\n\nexport function getDevHook(): DevtoolsHook {\n return (window as DevtoolsHookContainer).__BRICK_NEXT_DEVTOOLS_HOOK__;\n}\n\nfunction restoreDehydrated(value: unknown): any {\n return getDevHook()?.restoreDehydrated(value) ?? value;\n}\n","export function getItemFactory(storageType: \"local\" | \"session\"): any {\n return function (name: string) {\n const storage = storageType === \"local\" ? localStorage : sessionStorage;\n return JSON.parse(storage.getItem(name));\n };\n}\n","import { Locale, K } from \"../constants\";\n\nconst locale: Locale = {\n [K.REQUEST_FAILED]: \"Request Failed\",\n [K.MODAL_OK]: \"Ok\",\n [K.MODAL_CANCEL]: \"Cancel\",\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\nexport default locale;\n","import { Locale, K } from \"../constants\";\n\nconst locale: Locale = {\n [K.REQUEST_FAILED]: \"请求失败\",\n [K.MODAL_OK]: \"确认\",\n [K.MODAL_CANCEL]: \"取消\",\n [K.SOMETHING_WENT_WRONG]: \"出现了一些问题!\",\n [K.LOGIN_TIMEOUT_MESSAGE]: \"您还未登录或登录信息已过期,现在重新登录?\",\n [K.NETWORK_ERROR]: \"网络错误,请检查您的网络连接。\",\n};\n\nexport default locale;\n","import i18next from \"i18next\";\nimport { NS_BRICK_KIT } from \"./constants\";\nimport en from \"./locales/en\";\nimport zh from \"./locales/zh\";\n\n/** @internal */\nexport const initI18n = (): void => {\n i18next.addResourceBundle(\"en\", NS_BRICK_KIT, en);\n i18next.addResourceBundle(\"zh\", NS_BRICK_KIT, zh);\n};\n\n/** @internal */\nexport function getI18nNamespace(type: \"app\" | \"widget\", id: string): string {\n return `$${type}-${id}`;\n}\n","import i18next, { getFixedT, TFunction } from \"i18next\";\nimport { MetaI18n } from \"@next-core/brick-types\";\nimport { getI18nNamespace } from \"../i18n\";\n\nexport function registerWidgetI18n(widgetId: string, i18n: MetaI18n): void {\n const ns = getI18nNamespace(\"widget\", widgetId);\n Object.entries(i18n).forEach(([lang, resources]) => {\n i18next.addResourceBundle(lang, ns, resources);\n });\n}\n\nexport function widgetI18nFactory(widgetId: string): TFunction {\n return getFixedT(null, getI18nNamespace(\"widget\", widgetId));\n}\n","import i18next from \"i18next\";\nimport { hasOwnProperty } from \"@next-core/brick-utils\";\nimport { I18nData } from \"@next-core/brick-types\";\n\nexport function i18nText(data: I18nData): string {\n if (!data) {\n return;\n }\n const language = i18next.language ?? \"zh-CN\";\n // First, make a perfect match.\n if (hasOwnProperty(data, language)) {\n return data[language];\n }\n // https://en.wikipedia.org/wiki/IETF_language_tag\n const primaryLanguage = language.split(\"-\")[0];\n if (primaryLanguage !== language) {\n // Then, match the primary language (which omits other subtags).\n // E.g., match `zh` if the current language is `zh-CN`.\n return hasOwnProperty(data, primaryLanguage)\n ? data[primaryLanguage]\n : undefined;\n }\n // At last, match the first key which starts with the primary language,\n // if the current language contains primary subtag only.\n // E.g., match `zh-CN` if the current language is `zh`.\n const prefix = `${primaryLanguage}-`;\n for (const key of Object.keys(data)) {\n if (key.startsWith(prefix)) {\n return data[key];\n }\n }\n}\n","import { AuthInfo } from \"@next-core/brick-types\";\nimport { userAnalytics } from \"@next-core/easyops-analytics\";\nimport { resetPermissionPreChecks } from \"./internal/checkPermissions\";\n\nconst auth: AuthInfo = {};\n\n/** @internal */\nexport function authenticate(newAuth: AuthInfo): void {\n Object.assign(auth, {\n org: newAuth.org,\n username: newAuth.username,\n userInstanceId: newAuth.userInstanceId,\n loginFrom: newAuth.loginFrom,\n accessRule: newAuth.accessRule,\n isAdmin: newAuth.isAdmin,\n });\n\n // re-init analytics to set user_id\n if (userAnalytics.initialized) {\n userAnalytics.setUserId(newAuth.userInstanceId);\n }\n}\n\n/**\n * 获取当前登录认证信息。\n *\n * @returns 当前登录认证信息。\n */\nexport function getAuth(): AuthInfo {\n return {\n ...auth,\n };\n}\n\n/** @internal */\nexport function logout(): void {\n auth.org = undefined;\n auth.username = undefined;\n auth.userInstanceId = undefined;\n auth.accessRule = undefined;\n auth.isAdmin = undefined;\n resetPermissionPreChecks();\n\n // re-init analytics to clear user_id\n userAnalytics.setUserId();\n}\n\n/**\n * 查看当前是否已登录。\n *\n * @returns 当前是否已登录。\n */\nexport function isLoggedIn(): boolean {\n return auth.username !== undefined;\n}\n","import { difference } from \"lodash\";\nimport { scanPermissionActionsInStoryboard } from \"@next-core/brick-utils\";\nimport { Storyboard } from \"@next-core/brick-types\";\nimport { PermissionApi_validatePermissions } from \"@next-sdk/micro-app-sdk\";\nimport { getAuth } from \"../auth\";\n\ntype PermissionStatus = \"authorized\" | \"unauthorized\" | \"undefined\";\n\nconst permissionMap = new Map<string, PermissionStatus>();\n\nexport async function preCheckPermissions(\n storyboard: Storyboard\n): Promise<void> {\n const usedActions = scanPermissionActionsInStoryboard(storyboard);\n await validatePermissions(usedActions);\n}\n\nexport async function validatePermissions(\n usedActions: string[]\n): Promise<void> {\n // Do not request known actions.\n const actions = difference(usedActions, Array.from(permissionMap.keys()));\n if (actions.length === 0) {\n return;\n }\n try {\n const result = await PermissionApi_validatePermissions({ actions });\n for (const item of result.actions) {\n permissionMap.set(item.action, item.authorizationStatus);\n if (item.authorizationStatus === \"undefined\") {\n // eslint-disable-next-line no-console\n console.error(`Undefined permission action: \"${item.action}\"`);\n }\n }\n } catch (error) {\n // Allow pre-check to fail, and\n // make it not crash when the backend service is not updated.\n // eslint-disable-next-line no-console\n console.error(\"Pre-check permissions failed\", error);\n }\n}\n\n/**\n * Check the current logged-in user whether to have all\n * permissions of actions passed to it.\n *\n * @param actions - Required permission actions.\n */\nexport function checkPermissions(...actions: string[]): boolean {\n if (getAuth().isAdmin) {\n return true;\n }\n\n for (const action of actions) {\n // Only **exclusively authorized** permissions are ok.\n // Those scenarios below will fail:\n // - unauthorized actions (pre-check results)\n // - undefined actions (pre-check results)\n // - Un-pre-checked or pre-check failed\n switch (permissionMap.get(action)) {\n case \"unauthorized\":\n case \"undefined\":\n return false;\n case undefined:\n // eslint-disable-next-line no-console\n console.error(\n `Un-checked permission action: \"${action}\", please make sure the permission to check is defined in permissionsPreCheck.`\n );\n return false;\n }\n }\n return true;\n}\n\n/**\n * Reset permission pre-checks after logged-out.\n */\nexport function resetPermissionPreChecks(): void {\n permissionMap.clear();\n}\n","import { getDevHook } from \"./devtools\";\n\nconst THROW = (): any => {\n throw new Error(\"Can't modify read-only proxy object\");\n};\n\nconst readOnlyHandler: ProxyHandler<object> = {\n set: THROW,\n defineProperty: THROW,\n deleteProperty: THROW,\n setPrototypeOf: THROW,\n};\n\nexport function getReadOnlyProxy(object: object): unknown {\n return new Proxy(object, readOnlyHandler);\n}\n\n// First, we want to make accessing property of globals lazy,\n// So we use *Proxy* to make a dynamic accessor for each of these globals.\n// But we also want to keep them working in devtools.\nexport function getDynamicReadOnlyProxy({\n get,\n ownKeys,\n}: Pick<ProxyHandler<object>, \"get\" | \"ownKeys\">): unknown {\n if (getDevHook()) {\n // In devtools, we extract them at beginning.\n const target = Object.fromEntries(\n (ownKeys(null) as string[]).map((key) => [key, get(null, key, null)])\n );\n return getReadOnlyProxy(target);\n }\n return new Proxy(Object.freeze({}), { get });\n}\n","import { getFixedT } from \"i18next\";\nimport { identity } from \"lodash\";\nimport type { MicroApp } from \"@next-core/brick-types\";\nimport { widgetI18nFactory } from \"../core/WidgetI18n\";\nimport { i18nText } from \"../i18nText\";\nimport { getI18nNamespace } from \"../i18n\";\nimport { ImagesFactory, imagesFactory, widgetImagesFactory } from \"./images\";\nimport { getBasePath } from \"./getBasePath\";\nimport { getTheme } from \"../themeAndMode\";\nimport { checkPermissions } from \"./checkPermissions\";\nimport { getReadOnlyProxy } from \"./proxyFactories\";\n\nexport interface GeneralGlobalsOptions {\n collectCoverage?: unknown;\n widgetId?: string;\n app?: PartialMicroApp;\n storyboardFunctions?: unknown;\n isStoryboardFunction?: boolean;\n}\n\nexport type PartialMicroApp = Pick<MicroApp, \"id\" | \"isBuildPush\">;\n\n// `GeneralGlobals` are globals which are page-state-agnostic,\n// thus they can be used both in storyboard expressions and functions.\nexport function getGeneralGlobals(\n attemptToVisitGlobals: Set<string>,\n options: GeneralGlobalsOptions\n): Record<string, unknown> {\n const globalVariables: Record<string, unknown> = {};\n for (const variableName of attemptToVisitGlobals) {\n const variable = getIndividualGlobal(variableName, options);\n if (variable !== undefined) {\n globalVariables[variableName] = variable;\n }\n }\n return globalVariables;\n}\n\nfunction getIndividualGlobal(\n variableName: string,\n {\n collectCoverage,\n widgetId,\n app,\n storyboardFunctions,\n isStoryboardFunction,\n }: GeneralGlobalsOptions\n): unknown {\n switch (variableName) {\n case \"BASE_URL\":\n return collectCoverage ? \"/next\" : getBasePath().replace(/\\/$/, \"\");\n case \"FN\":\n return storyboardFunctions;\n case \"IMG\":\n return collectCoverage\n ? fakeImageFactory()\n : widgetId\n ? widgetImagesFactory(widgetId)\n : imagesFactory(app.id, app.isBuildPush);\n case \"I18N\":\n return collectCoverage\n ? identity\n : widgetId\n ? widgetI18nFactory(widgetId)\n : getFixedT(null, getI18nNamespace(\"app\", app.id));\n case \"I18N_TEXT\":\n return collectCoverage ? fakeI18nText : i18nText;\n case \"PERMISSIONS\":\n return {\n check: collectCoverage ? fakeCheckPermissions : checkPermissions,\n };\n case \"THEME\":\n return {\n getTheme: collectCoverage ? () => \"light\" : getTheme,\n };\n case \"console\":\n return isStoryboardFunction ? getReadOnlyProxy(console) : undefined;\n case \"location\":\n return collectCoverage\n ? {\n href: \"http://localhost:3000/functions/test\",\n origin: \"http://localhost:3000\",\n }\n : { href: location.href, origin: location.origin };\n }\n}\n\nfunction fakeI18nText(data: Record<string, string>): string {\n return data?.en;\n}\n\nfunction fakeImageFactory(): ImagesFactory {\n return {\n get(name: string) {\n return `mock/images/${name}`;\n },\n };\n}\n\nfunction fakeCheckPermissions(): boolean {\n return true;\n}\n","import {\n MicroApp,\n SimpleFunction,\n StoryboardFunction,\n} from \"@next-core/brick-types\";\nimport { cook, precookFunction, EstreeNode } from \"@next-core/brick-utils\";\nimport { supply } from \"@next-core/supply\";\nimport { getGeneralGlobals } from \"../internal/getGeneralGlobals\";\n\n/** @internal */\nexport type ReadonlyStoryboardFunctions = Readonly<\n Record<string, SimpleFunction>\n>;\n\n/** @internal */\nexport type StoryboardFunctionPatch = Pick<\n StoryboardFunction,\n \"source\" | \"typescript\"\n>;\n\n/** @internal */\nexport interface StoryboardFunctionRegistry {\n /** A readonly proxy for accessing cooked storyboard functions. */\n storyboardFunctions: ReadonlyStoryboardFunctions;\n\n /** Register storyboard functions. */\n registerStoryboardFunctions(\n functions: StoryboardFunction[],\n app?: PartialMicroApp\n ): void;\n\n /** Update a storyboard function during debugging. */\n updateStoryboardFunction(name: string, data: StoryboardFunctionPatch): void;\n}\n\n/** @internal */\nexport interface RuntimeStoryboardFunction {\n source: string;\n typescript?: boolean;\n processed?: boolean;\n cooked?: SimpleFunction;\n}\n\n/** @internal */\nexport interface FunctionCoverageCollector {\n beforeVisit(node: EstreeNode): void;\n beforeEvaluate(node: EstreeNode): void;\n beforeCall(node: EstreeNode): void;\n beforeBranch(node: EstreeNode, branch: string): void;\n}\n\n/** @internal */\nexport interface FunctionCoverageSettings {\n createCollector(name: string): FunctionCoverageCollector;\n}\n\n/** @internal */\nexport type PartialMicroApp = Pick<MicroApp, \"id\" | \"isBuildPush\">;\n\n/** @internal */\nexport function StoryboardFunctionRegistryFactory({\n widgetId,\n collectCoverage,\n}: {\n widgetId?: string;\n collectCoverage?: FunctionCoverageSettings;\n} = {}): StoryboardFunctionRegistry {\n const registeredFunctions = new Map<string, RuntimeStoryboardFunction>();\n\n // Use `Proxy` with a frozen target, to make a readonly function registry.\n const storyboardFunctions = new Proxy(Object.freeze({}), {\n get(target, key) {\n return getStoryboardFunction(key as string);\n },\n }) as ReadonlyStoryboardFunctions;\n\n let currentApp: PartialMicroApp;\n\n function registerStoryboardFunctions(\n functions: StoryboardFunction[],\n app?: PartialMicroApp\n ): void {\n if (app) {\n currentApp = app;\n }\n registeredFunctions.clear();\n if (Array.isArray(functions)) {\n for (const fn of functions) {\n registeredFunctions.set(fn.name, {\n source: fn.source,\n typescript: fn.typescript,\n });\n }\n }\n }\n\n function getStoryboardFunction(name: string): SimpleFunction {\n const fn = registeredFunctions.get(name);\n if (!fn) {\n return undefined;\n }\n if (fn.processed) {\n return fn.cooked;\n }\n let collector: FunctionCoverageCollector;\n if (collectCoverage) {\n collector = collectCoverage.createCollector(name);\n }\n const precooked = precookFunction(fn.source, {\n typescript: fn.typescript,\n hooks: collector && {\n beforeVisit: collector.beforeVisit,\n },\n });\n fn.cooked = cook(precooked.function, fn.source, {\n rules: {\n noVar: true,\n },\n globalVariables: supply(\n precooked.attemptToVisitGlobals,\n getGeneralGlobals(precooked.attemptToVisitGlobals, {\n collectCoverage,\n widgetId,\n app: currentApp,\n storyboardFunctions,\n isStoryboardFunction: true,\n }),\n !!collectCoverage\n ),\n hooks: collector && {\n beforeEvaluate: collector.beforeEvaluate,\n beforeCall: collector.beforeCall,\n beforeBranch: collector.beforeBranch,\n },\n }) as SimpleFunction;\n fn.processed = true;\n return fn.cooked;\n }\n\n return {\n storyboardFunctions,\n registerStoryboardFunctions,\n updateStoryboardFunction(\n name: string,\n data: StoryboardFunctionPatch\n ): void {\n registeredFunctions.set(name, {\n source: data.source,\n typescript: data.typescript,\n });\n },\n };\n}\n","import { StoryboardFunctionRegistryFactory } from \"./StoryboardFunctionRegistryFactory\";\n\nexport const { storyboardFunctions, registerStoryboardFunctions } =\n StoryboardFunctionRegistryFactory();\n","import { StoryboardFunction } from \"@next-core/brick-types\";\nimport {\n ReadonlyStoryboardFunctions,\n StoryboardFunctionRegistryFactory,\n} from \"./StoryboardFunctionRegistryFactory\";\n\nconst widgetFunctionRegistry = new Map<string, ReadonlyStoryboardFunctions>();\n\nexport const widgetFunctions = new Proxy(Object.freeze({}), {\n get(target, key: string) {\n return widgetFunctionRegistry.get(key);\n },\n}) as Readonly<Record<string, ReadonlyStoryboardFunctions>>;\n\nexport function registerWidgetFunctions(\n widgetId: string,\n functions: StoryboardFunction[]\n): void {\n if (widgetFunctionRegistry.has(widgetId)) {\n // eslint-disable-next-line no-console\n throw new Error(`Widget functions of \"${widgetId}\" already registered`);\n }\n const { storyboardFunctions, registerStoryboardFunctions } =\n StoryboardFunctionRegistryFactory({ widgetId });\n widgetFunctionRegistry.set(widgetId, storyboardFunctions);\n registerStoryboardFunctions(functions);\n}\n","/*! (c) Andrea Giammarchi - ISC */\nvar self = {};\ntry {\n self.EventTarget = (new EventTarget).constructor;\n} catch(EventTarget) {\n (function (Object, wm) {\n var create = Object.create;\n var defineProperty = Object.defineProperty;\n var proto = EventTarget.prototype;\n define(proto, 'addEventListener', function (type, listener, options) {\n for (var\n secret = wm.get(this),\n listeners = secret[type] || (secret[type] = []),\n i = 0, length = listeners.length; i < length; i++\n ) {\n if (listeners[i].listener === listener)\n return;\n }\n listeners.push({target: this, listener: listener, options: options});\n });\n define(proto, 'dispatchEvent', function (event) {\n var secret = wm.get(this);\n var listeners = secret[event.type];\n if (listeners) {\n define(event, 'target', this);\n define(event, 'currentTarget', this);\n listeners.slice(0).some(dispatch, event);\n delete event.currentTarget;\n delete event.target;\n }\n return true;\n });\n define(proto, 'removeEventListener', function (type, listener) {\n for (var\n secret = wm.get(this),\n /* istanbul ignore next */\n listeners = secret[type] || (secret[type] = []),\n i = 0, length = listeners.length; i < length; i++\n ) {\n if (listeners[i].listener === listener) {\n listeners.splice(i, 1);\n return;\n }\n }\n });\n self.EventTarget = EventTarget;\n function EventTarget() {'use strict';\n wm.set(this, create(null));\n }\n function define(target, name, value) {\n defineProperty(\n target,\n name,\n {\n configurable: true,\n writable: true,\n value: value\n }\n );\n }\n function dispatch(info) {\n var options = info.options;\n if (options && options.once)\n info.target.removeEventListener(this.type, info.listener);\n if (typeof info.listener === 'function')\n info.listener.call(info.target, this);\n else\n info.listener.handleEvent(this);\n return this._stopImmediatePropagationFlag;\n }\n }(Object, new WeakMap));\n}\nexport default self.EventTarget;\n","import { PluginRuntimeContext } from \"@next-core/brick-types\";\nimport { hasOwnProperty } from \"@next-core/brick-utils\";\nimport { computeRealValue } from \"./internal/setProperties\";\nimport { doTransform, DoTransformOptions } from \"./transformProperties\";\nimport { isPreEvaluated } from \"./internal/evaluate\";\n\ntype GetIf = (rawIf: unknown, ctx: unknown) => unknown;\n\n/**\n * 包含 `if` 条件判断的对象。\n */\nexport interface IfContainer {\n /**\n * 条件判断,可以为表达式字符串。\n *\n * @example\n *\n * ```yaml\n * - brick: your.any-brick\n * if: '<% FLAGS['your-feature-flag'] %>'\n * ```\n */\n if?: unknown;\n}\n\n/** @internal */\nexport function looseCheckIf(\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): boolean {\n return (\n !hasOwnProperty(ifContainer, \"if\") ||\n _looseCheckIf(ifContainer.if, context, computeRealValue as GetIf)\n );\n}\n\n/**\n * 给定一个数据源,根据表达式计算条件判断的结果。\n *\n * @remarks\n *\n * 当 `ifContainer` 中没有出现 `if` 字段时,则认为条件判断为 `true`。\n *\n * 而如果 `if` 为表达式字符串时,将根据给定的数据源 `data` 进行 transform,并返回转换为 boolean 类型后的结果。\n *\n * @example\n *\n * ```ts\n * const brickConf = {\n * if: \"<% DATA.list.length > 0 %>\",\n * brick: \"your.any-brick\"\n * }\n * const data = { list: [] };\n * const result = looseCheckIfByTransform(\n * brickConf,\n * data\n * );\n * // Returns false.\n * ```\n *\n * @example\n *\n * ```ts\n * const brickConf = {\n * if: \"<% DATA.list.length %>\",\n * brick: \"your.any-brick\"\n * }\n * const data = { list: [ 1, 2 ] };\n * const result = looseCheckIfByTransform(\n * brickConf,\n * data\n * );\n * // Returns true.\n * ```\n *\n * @example\n *\n * ```ts\n * const brickConf = {\n * brick: \"your.any-brick\"\n * }\n * const result = looseCheckIfByTransform(\n * brickConf,\n * data\n * );\n * // Returns true.\n * ```\n *\n * @param ifContainer - 包含 `if` 条件判断的配置对象。\n * @param data - 要传递的数据源。\n * @param options - `allowInject` 允许在 `if` 中使用 `${...}` 占位符。\n *\n * @returns 条件判断的结果。\n */\nexport function looseCheckIfByTransform(\n ifContainer: IfContainer,\n data: unknown,\n options?: Pick<DoTransformOptions, \"allowInject\" | \"tplContextId\">\n): boolean {\n return (\n !hasOwnProperty(ifContainer, \"if\") ||\n _looseCheckIf(ifContainer.if, data, (_rawIf, _data) =>\n doTransform(_data, _rawIf, options)\n )\n );\n}\n\n/** @internal */\nexport function looseCheckIfOfComputed(ifContainer: IfContainer): boolean {\n return !hasOwnProperty(ifContainer, \"if\") || !!ifContainer.if;\n}\n\nfunction _looseCheckIf(rawIf: unknown, ctx: unknown, fn: GetIf): boolean {\n return !!(typeof rawIf === \"string\" || isPreEvaluated(rawIf)\n ? fn(rawIf, ctx)\n : rawIf);\n}\n\n/**\n * @deprecated 现在使用 `looseCheckIf`。\n * @internal\n */\nexport function checkIf(\n rawIf: string | boolean,\n context: PluginRuntimeContext\n): boolean {\n return _checkIf(rawIf, context, computeRealValue as GetIf);\n}\n\n/**\n * @deprecated 现在使用 `looseCheckIfByTransform`。\n * @internal\n */\nexport function checkIfByTransform(\n rawIf: string | boolean,\n data: unknown\n): boolean {\n return _checkIf(rawIf, data, (_rawIf, _data) => doTransform(_data, _rawIf));\n}\n\nfunction _checkIf(rawIf: string | boolean, ctx: unknown, fn: GetIf): boolean {\n if (\n typeof rawIf === \"boolean\" ||\n typeof rawIf === \"string\" ||\n isPreEvaluated(rawIf)\n ) {\n const ifChecked = fn(rawIf, ctx);\n if (ifChecked === false) {\n return false;\n }\n /* istanbul ignore if */\n if (ifChecked !== true) {\n // eslint-disable-next-line no-console\n console.warn(\"Received an unexpected condition result:\", ifChecked);\n }\n } else if (rawIf != null) {\n // eslint-disable-next-line no-console\n console.warn(\"Unsupported `if`:\", rawIf);\n }\n return true;\n}\n","import EventTarget from \"@ungap/event-target\";\nimport {\n BrickEventHandler,\n ContextConf,\n PluginRuntimeContext,\n StoryboardContextItem,\n StoryboardContextItemFreeVariable,\n} from \"@next-core/brick-types\";\nimport {\n hasOwnProperty,\n isObject,\n resolveContextConcurrently,\n syncResolveContextConcurrently,\n} from \"@next-core/brick-utils\";\nimport { looseCheckIf } from \"../checkIf\";\nimport { listenerFactory } from \"../internal/bindListeners\";\nimport { computeRealValue } from \"../internal/setProperties\";\nimport { RuntimeBrick, _internalApiGetResolver } from \"./exports\";\n\nexport class StoryboardContextWrapper {\n private readonly data = new Map<string, StoryboardContextItem>();\n readonly tplContextId: string;\n\n constructor(tplContextId?: string) {\n this.tplContextId = tplContextId;\n }\n\n set(name: string, item: StoryboardContextItem): void {\n if (this.data.has(name)) {\n // eslint-disable-next-line no-console\n console.warn(\n `Storyboard context \"${name}\" have already existed, it will be replaced.`\n );\n }\n this.data.set(name, item);\n }\n\n get(): Map<string, StoryboardContextItem> {\n return this.data;\n }\n\n /** Get value of free-variable only. */\n getValue(name: string): unknown {\n return (this.data.get(name) as StoryboardContextItemFreeVariable)?.value;\n }\n\n updateValue(\n name: string,\n value: unknown,\n method: \"assign\" | \"replace\"\n ): void {\n if (!this.data.has(name)) {\n if (this.tplContextId) {\n throw new Error(`State not found: ${name}`);\n } else {\n // eslint-disable-next-line no-console\n console.warn(\n `Context \"${name}\" is not declared, we recommend declaring it first.`\n );\n this.set(name, {\n type: \"free-variable\",\n value,\n });\n return;\n }\n }\n\n const item = this.data.get(name) as StoryboardContextItemFreeVariable;\n if (item.type !== \"free-variable\") {\n // eslint-disable-next-line no-console\n console.error(\n `Conflict storyboard context \"${name}\", expected \"free-variable\", received \"${item.type}\".`\n );\n return;\n }\n\n if (method === \"replace\") {\n item.value = value;\n } else {\n if (isObject(item.value)) {\n Object.assign(item.value, value);\n } else {\n // eslint-disable-next-line no-console\n console.warn(\n `Non-object current value of context \"${name}\" for \"context.assign\", try \"context.replace\" instead.`\n );\n item.value = value;\n }\n }\n\n item.eventTarget?.dispatchEvent(\n new CustomEvent(this.tplContextId ? \"state.change\" : \"context.change\", {\n detail: item.value,\n })\n );\n }\n\n async define(\n contextConfs: ContextConf[],\n coreContext: PluginRuntimeContext,\n brick?: RuntimeBrick\n ): Promise<void> {\n if (Array.isArray(contextConfs)) {\n const { mergedContext, keyword } = this.getResolveOptions(coreContext);\n await resolveContextConcurrently(\n contextConfs,\n (contextConf: ContextConf) =>\n resolveStoryboardContext(contextConf, mergedContext, this, brick),\n keyword\n );\n }\n }\n\n syncDefine(\n contextConfs: ContextConf[],\n coreContext: PluginRuntimeContext,\n brick: RuntimeBrick\n ): void {\n if (Array.isArray(contextConfs)) {\n const { mergedContext, keyword } = this.getResolveOptions(coreContext);\n syncResolveContextConcurrently(\n contextConfs,\n (contextConf: ContextConf) =>\n syncResolveStoryboardContext(contextConf, mergedContext, this, brick),\n keyword\n );\n }\n }\n\n private getResolveOptions(coreContext: PluginRuntimeContext): {\n mergedContext: PluginRuntimeContext;\n keyword: string;\n } {\n return this.tplContextId\n ? {\n mergedContext: { ...coreContext, tplContextId: this.tplContextId },\n keyword: \"STATE\",\n }\n : {\n mergedContext: coreContext,\n keyword: \"CTX\",\n };\n }\n}\n\nasync function resolveStoryboardContext(\n contextConf: ContextConf,\n coreContext: PluginRuntimeContext,\n storyboardContextWrapper: StoryboardContextWrapper,\n brick?: RuntimeBrick\n): Promise<boolean> {\n if (contextConf.property) {\n if (storyboardContextWrapper.tplContextId) {\n throw new Error(\n \"Setting `property` is not allowed in template scoped context\"\n );\n }\n if (brick) {\n storyboardContextWrapper.set(contextConf.name, {\n type: \"brick-property\",\n brick,\n prop: contextConf.property,\n });\n }\n return true;\n }\n return resolveNormalStoryboardContext(\n contextConf,\n coreContext,\n storyboardContextWrapper,\n brick\n );\n}\n\nasync function resolveNormalStoryboardContext(\n contextConf: ContextConf,\n mergedContext: PluginRuntimeContext,\n storyboardContextWrapper: StoryboardContextWrapper,\n brick?: RuntimeBrick\n): Promise<boolean> {\n if (!looseCheckIf(contextConf, mergedContext)) {\n return false;\n }\n let isResolve = false;\n let value = getDefinedTemplateState(\n !!storyboardContextWrapper.tplContextId,\n contextConf,\n brick\n );\n if (value === undefined) {\n if (contextConf.resolve) {\n if (looseCheckIf(contextConf.resolve, mergedContext)) {\n isResolve = true;\n const valueConf: Record<string, unknown> = {};\n await _internalApiGetResolver().resolveOne(\n \"reference\",\n {\n transform: \"value\",\n transformMapArray: false,\n ...contextConf.resolve,\n },\n valueConf,\n null,\n mergedContext\n );\n value = valueConf.value;\n } else if (!hasOwnProperty(contextConf, \"value\")) {\n return false;\n }\n }\n if (!isResolve && contextConf.value !== undefined) {\n value = computeRealValue(contextConf.value, mergedContext, true);\n }\n }\n resolveFreeVariableValue(\n value,\n contextConf,\n mergedContext,\n storyboardContextWrapper,\n brick\n );\n return true;\n}\n\nfunction syncResolveStoryboardContext(\n contextConf: ContextConf,\n mergedContext: PluginRuntimeContext,\n storyboardContextWrapper: StoryboardContextWrapper,\n brick?: RuntimeBrick\n): boolean {\n if (!looseCheckIf(contextConf, mergedContext)) {\n return false;\n }\n if (contextConf.resolve) {\n throw new Error(\"resolve is not allowed here\");\n }\n let value = getDefinedTemplateState(\n !!storyboardContextWrapper.tplContextId,\n contextConf,\n brick\n );\n if (value === undefined) {\n value = computeRealValue(contextConf.value, mergedContext, true);\n }\n resolveFreeVariableValue(\n value,\n contextConf,\n mergedContext,\n storyboardContextWrapper,\n brick\n );\n return true;\n}\n\nfunction getDefinedTemplateState(\n isTemplateState: boolean,\n contextConf: ContextConf,\n brick: RuntimeBrick\n): unknown {\n if (\n isTemplateState &&\n brick.properties &&\n hasOwnProperty(brick.properties, contextConf.name)\n ) {\n return brick.properties[contextConf.name];\n }\n}\n\nfunction resolveFreeVariableValue(\n value: unknown,\n contextConf: ContextConf,\n mergedContext: PluginRuntimeContext,\n storyboardContextWrapper: StoryboardContextWrapper,\n brick?: RuntimeBrick\n): void {\n const newContext: StoryboardContextItem = {\n type: \"free-variable\",\n value,\n // This is required for tracking context, even if no `onChange` is specified.\n eventTarget: new EventTarget(),\n };\n if (contextConf.onChange) {\n for (const handler of ([] as BrickEventHandler[]).concat(\n contextConf.onChange\n )) {\n newContext.eventTarget.addEventListener(\n storyboardContextWrapper.tplContextId\n ? \"state.change\"\n : \"context.change\",\n listenerFactory(handler, mergedContext, brick)\n );\n }\n }\n storyboardContextWrapper.set(contextConf.name, newContext);\n}\n","import { uniqueId } from \"lodash\";\nimport { RuntimeBrick } from \"../BrickNode\";\nimport { StoryboardContextWrapper } from \"../StoryboardContext\";\n\nconst tplContextMap = new Map<string, CustomTemplateContext>();\n\nexport class CustomTemplateContext {\n private variables: Record<string, unknown>;\n readonly state: StoryboardContextWrapper;\n readonly id = uniqueId(\"tpl-ctx-\");\n\n constructor(private brick: RuntimeBrick) {\n tplContextMap.set(this.id, this);\n this.state = new StoryboardContextWrapper(this.id);\n brick.tplContextId = this.id;\n }\n\n setVariables(variables: Record<string, unknown>): void {\n this.variables = variables;\n Object.freeze(variables);\n }\n\n getVariables(): Record<string, unknown> {\n const { element } = this.brick;\n if (element) {\n return Object.fromEntries(\n Object.keys(this.variables).map((prop) => [\n prop,\n (element as any)[prop],\n ])\n );\n }\n return this.variables;\n }\n\n getBrick(): RuntimeBrick {\n return this.brick;\n }\n}\n\nexport function getCustomTemplateContext(\n tplContextId: string\n): CustomTemplateContext {\n return tplContextMap.get(tplContextId);\n}\n","import EventTarget from \"@ungap/event-target\";\n\nexport interface Media {\n breakpoint?: MediaBreakpoint;\n}\n\nexport enum MediaBreakpoint {\n xLarge = \"xLarge\",\n large = \"large\",\n medium = \"medium\",\n small = \"small\",\n xSmall = \"xSmall\",\n}\n\nexport const mediaBreakpointMinWidthMap = new Map<\n MediaBreakpoint,\n string | number\n>([\n [MediaBreakpoint.xLarge, \"1920px\"],\n [MediaBreakpoint.large, \"1600px\"],\n [MediaBreakpoint.medium, \"1280px\"],\n [MediaBreakpoint.small, \"1024px\"],\n [MediaBreakpoint.xSmall, 0],\n]);\nexport const mediaEventTarget = new EventTarget();\n\nconst breakpointMatchesMap: Partial<Record<MediaBreakpoint, boolean>> = {};\nconst MEDIA: Media = {};\n\nfunction handleMatchesChange(\n data: { readonly matches: boolean; readonly media: string },\n breakpoint: MediaBreakpoint\n): void {\n let changed = false;\n breakpointMatchesMap[breakpoint] = data.matches;\n\n for (const [breakpoint] of mediaBreakpointMinWidthMap) {\n if (breakpointMatchesMap[breakpoint] && MEDIA.breakpoint !== breakpoint) {\n MEDIA.breakpoint = breakpoint;\n changed = true;\n break;\n }\n }\n\n if (changed) {\n mediaEventTarget.dispatchEvent(\n new CustomEvent(\"change\", { detail: MEDIA })\n );\n }\n}\n\nmediaBreakpointMinWidthMap.forEach((minWidth, breakpoint) => {\n const mediaQueryList = window.matchMedia(`(min-width: ${minWidth})`);\n\n handleMatchesChange(mediaQueryList, breakpoint);\n\n if (mediaQueryList.addEventListener) {\n mediaQueryList.addEventListener(\"change\", (event) => {\n handleMatchesChange(event, breakpoint);\n });\n } else {\n mediaQueryList.addListener((event) => {\n handleMatchesChange(event, breakpoint);\n });\n }\n});\n\nexport const getMedia = (): Media => MEDIA;\n","import { cloneDeep } from \"lodash\";\nimport {\n cook,\n hasOwnProperty,\n isEvaluable,\n preevaluate,\n PreevaluateResult,\n shouldAllowRecursiveEvaluations,\n} from \"@next-core/brick-utils\";\nimport { supply } from \"@next-core/supply\";\nimport { MicroApp } from \"@next-core/brick-types\";\nimport { _internalApiGetCurrentContext } from \"../core/Runtime\";\nimport { getUrlBySegueFactory } from \"./segue\";\nimport { getUrlByAliasFactory } from \"./alias\";\nimport { widgetImagesFactory } from \"./images\";\nimport { devtoolsHookEmit } from \"./devtools\";\nimport { customProcessorRegistry } from \"../core/exports\";\nimport { getItemFactory } from \"./Storage\";\nimport { getRuntime } from \"../runtime\";\nimport { storyboardFunctions } from \"../core/StoryboardFunctions\";\nimport { widgetFunctions } from \"../core/WidgetFunctions\";\nimport { widgetI18nFactory } from \"../core/WidgetI18n\";\nimport { getGeneralGlobals } from \"./getGeneralGlobals\";\nimport { getReadOnlyProxy, getDynamicReadOnlyProxy } from \"./proxyFactories\";\nimport { getCustomTemplateContext } from \"../core/CustomTemplates/CustomTemplateContext\";\nimport { getMenu } from \"./menu\";\nimport { getMedia } from \"./mediaQuery\";\n\nconst symbolForRaw = Symbol.for(\"pre.evaluated.raw\");\nconst symbolForContext = Symbol.for(\"pre.evaluated.context\");\n\nexport interface PreEvaluated {\n [symbolForRaw]: string;\n [symbolForContext]: EvaluateRuntimeContext;\n}\n\nexport interface EvaluateOptions {\n lazy?: boolean;\n isReEvaluation?: boolean;\n evaluationId?: number;\n}\n\nexport interface EvaluateRuntimeContext {\n event?: CustomEvent;\n data?: unknown;\n tplContextId?: string;\n overrideApp?: MicroApp;\n}\n\nexport function isPreEvaluated(raw: unknown): raw is PreEvaluated {\n return !!(raw as PreEvaluated)?.[symbolForRaw];\n}\n\nexport function shouldDismissRecursiveMarkingInjected(\n raw: string | PreEvaluated\n): boolean {\n if (typeof raw === \"string\") {\n return shouldAllowRecursiveEvaluations(raw);\n }\n return shouldAllowRecursiveEvaluations(raw[symbolForRaw]);\n}\n\nconst possibleErrorConstructs = new WeakSet<ErrorConstructor>([\n SyntaxError,\n TypeError,\n ReferenceError,\n]);\n\nexport function getCookErrorConstructor(error: any): ErrorConstructor {\n return possibleErrorConstructs.has(error.constructor)\n ? error.constructor\n : TypeError;\n}\n\n// `raw` should always be asserted to `isEvaluable` or `isPreEvaluated`.\nexport function evaluate(\n raw: string | PreEvaluated, // string or pre-evaluated object.\n runtimeContext: EvaluateRuntimeContext = {},\n options: EvaluateOptions = {}\n): unknown {\n if (\n options.isReEvaluation &&\n !(typeof raw === \"string\" && isEvaluable(raw))\n ) {\n devtoolsHookEmit(\"re-evaluation\", {\n id: options.evaluationId,\n detail: { raw, context: {} },\n error: \"Invalid evaluation code\",\n });\n return;\n }\n\n if (typeof raw !== \"string\") {\n // If the `raw` is not a string, it must be a pre-evaluated object.\n // Then fulfil the context, and restore the original `raw`.\n runtimeContext = {\n ...raw[symbolForContext],\n ...runtimeContext,\n };\n raw = raw[symbolForRaw];\n }\n\n // A `SyntaxError` maybe thrown.\n let precooked: PreevaluateResult;\n try {\n precooked = preevaluate(raw);\n } catch (error) {\n const message = `${error.message}, in \"${raw}\"`;\n if (options.isReEvaluation) {\n devtoolsHookEmit(\"re-evaluation\", {\n id: options.evaluationId,\n detail: { raw, context: {} },\n error: message,\n });\n return;\n } else {\n const errorConstructor = getCookErrorConstructor(error);\n throw new errorConstructor(message);\n }\n }\n\n const globalVariables: Record<string, unknown> = {};\n const attemptToVisitGlobals = precooked.attemptToVisitGlobals;\n\n const attemptToVisitEvent = attemptToVisitGlobals.has(\"EVENT\");\n const attemptToVisitData = attemptToVisitGlobals.has(\"DATA\");\n const attemptToVisitTpl = attemptToVisitGlobals.has(\"TPL\");\n const attemptToVisitState = attemptToVisitGlobals.has(\"STATE\");\n const attemptToVisitTplOrState = attemptToVisitTpl || attemptToVisitState;\n\n // Ignore evaluating if `event` is missing in context.\n // Since it should be evaluated during events handling.\n let missingEvent = options.lazy === true;\n if (attemptToVisitEvent) {\n if (hasOwnProperty(runtimeContext, \"event\")) {\n globalVariables.EVENT = runtimeContext.event;\n } else {\n // Let's see if pre-evaluation is required (store the `data` in context).\n missingEvent = true;\n }\n }\n\n const missingTplOrState =\n attemptToVisitTplOrState && !hasOwnProperty(runtimeContext, \"tplContextId\");\n const missingData =\n attemptToVisitData && !hasOwnProperty(runtimeContext, \"data\");\n\n const rawWithContext =\n Object.keys(runtimeContext).length > 0\n ? ({\n [symbolForRaw]: raw,\n [symbolForContext]: runtimeContext,\n } as PreEvaluated)\n : raw;\n\n // Since `EVENT`, `DATA`, `TPL` and `STATE` are provided in different context,\n // whenever missing one of them, memorize the current context for later consuming.\n if (missingEvent || missingData || missingTplOrState) {\n return rawWithContext;\n }\n\n if (attemptToVisitData) {\n globalVariables.DATA = runtimeContext.data;\n }\n\n if (attemptToVisitTplOrState && runtimeContext.tplContextId) {\n const tplContext = getCustomTemplateContext(runtimeContext.tplContextId);\n if (attemptToVisitTpl) {\n globalVariables.TPL = tplContext.getVariables();\n }\n if (attemptToVisitState) {\n globalVariables.STATE = getDynamicReadOnlyProxy({\n get(target, key: string) {\n return tplContext.state.getValue(key);\n },\n ownKeys() {\n return Array.from(tplContext.state.get().keys());\n },\n });\n }\n }\n\n const {\n app: currentApp,\n query,\n match,\n sys,\n flags,\n hash,\n pathname,\n segues,\n storyboardContext,\n } = _internalApiGetCurrentContext();\n\n const app = runtimeContext.overrideApp ?? currentApp;\n\n function getIndividualGlobal(variableName: string): unknown {\n switch (variableName) {\n case \"ALIAS\":\n return {\n getUrl: getUrlByAliasFactory(app),\n };\n case \"ANCHOR\":\n return hash ? hash.substr(1) : null;\n case \"APP\":\n return {\n ...cloneDeep(app),\n getMenu,\n };\n case \"CTX\":\n return getDynamicReadOnlyProxy({\n get(target, key: string) {\n const item = storyboardContext.get(key);\n return !item\n ? item\n : item.type === \"brick-property\"\n ? item.brick.element?.[item.prop as keyof HTMLElement]\n : item.value;\n },\n ownKeys() {\n return Array.from(storyboardContext.keys());\n },\n });\n case \"FLAGS\":\n return getReadOnlyProxy(flags);\n case \"HASH\":\n return hash;\n case \"PATH_NAME\":\n return pathname;\n case \"INSTALLED_APPS\":\n return {\n has: (appId: string, matchVersion?: string) =>\n getRuntime().hasInstalledApp(appId, matchVersion),\n };\n case \"LOCAL_STORAGE\":\n return {\n getItem: getItemFactory(\"local\"),\n };\n case \"MISC\":\n return getRuntime().getMiscSettings();\n case \"PARAMS\":\n return new URLSearchParams(query);\n case \"PATH\":\n return getReadOnlyProxy(match.params);\n case \"PROCESSORS\":\n return getDynamicReadOnlyProxy({\n get(target, key: string) {\n const pkg = customProcessorRegistry.get(key);\n return pkg\n ? getDynamicReadOnlyProxy({\n get(t, k: string) {\n return pkg.get(k);\n },\n ownKeys() {\n return Array.from(pkg.keys());\n },\n })\n : pkg;\n },\n ownKeys() {\n return Array.from(customProcessorRegistry.keys());\n },\n });\n case \"QUERY\":\n return Object.fromEntries(\n Array.from(query.keys()).map((key) => [key, query.get(key)])\n );\n case \"QUERY_ARRAY\":\n return Object.fromEntries(\n Array.from(query.keys()).map((key) => [key, query.getAll(key)])\n );\n case \"SEGUE\":\n return {\n getUrl: getUrlBySegueFactory(app, segues),\n };\n case \"SESSION_STORAGE\":\n return {\n getItem: getItemFactory(\"session\"),\n };\n case \"SYS\":\n return getReadOnlyProxy(sys);\n case \"MEDIA\":\n return getReadOnlyProxy(getMedia());\n case \"__WIDGET_FN__\":\n return widgetFunctions;\n case \"__WIDGET_IMG__\":\n return widgetImagesFactory;\n case \"__WIDGET_I18N__\":\n return widgetI18nFactory;\n }\n }\n\n for (const variableName of attemptToVisitGlobals) {\n const variable = getIndividualGlobal(variableName);\n if (variable !== undefined) {\n globalVariables[variableName] = variable;\n }\n }\n\n Object.assign(\n globalVariables,\n getGeneralGlobals(precooked.attemptToVisitGlobals, {\n storyboardFunctions,\n app,\n })\n );\n\n try {\n const result = cook(precooked.expression, precooked.source, {\n globalVariables: supply(precooked.attemptToVisitGlobals, globalVariables),\n });\n const detail = { raw, context: globalVariables, result };\n if (options.isReEvaluation) {\n devtoolsHookEmit(\"re-evaluation\", {\n id: options.evaluationId,\n detail,\n });\n } else {\n devtoolsHookEmit(\"evaluation\", detail);\n }\n return result;\n } catch (error) {\n const message = `${error.message}, in \"${raw}\"`;\n if (options.isReEvaluation) {\n devtoolsHookEmit(\"re-evaluation\", {\n id: options.evaluationId,\n detail: { raw, context: globalVariables },\n error: message,\n });\n } else {\n const errorConstructor = getCookErrorConstructor(error);\n throw new errorConstructor(message);\n }\n }\n}\n","import {\n CustomTemplateProxyBasicProperty,\n CustomTemplateProxyMergeableProperty,\n CustomTemplateProxyProperty,\n CustomTemplateProxyRefProperty,\n CustomTemplateProxyTransformableProperty,\n CustomTemplateProxyVariableProperty,\n} from \"@next-core/brick-types\";\n\nexport function isBasicProperty(\n propRef: CustomTemplateProxyProperty\n): propRef is CustomTemplateProxyBasicProperty {\n return !!(propRef as CustomTemplateProxyBasicProperty).refProperty;\n}\n\nexport function isTransformableProperty(\n propRef: CustomTemplateProxyProperty\n): propRef is CustomTemplateProxyTransformableProperty {\n return !!(propRef as CustomTemplateProxyTransformableProperty).refTransform;\n}\n\nexport function isMergeableProperty(\n propRef: CustomTemplateProxyProperty\n): propRef is CustomTemplateProxyMergeableProperty {\n return !!(propRef as CustomTemplateProxyMergeableProperty).mergeProperty;\n}\n\nexport function isRefProperty(\n propRef: CustomTemplateProxyProperty\n): propRef is CustomTemplateProxyRefProperty {\n return !!(propRef as CustomTemplateProxyRefProperty).ref;\n}\n\nexport function isVariableProperty(\n propRef: CustomTemplateProxyProperty\n): propRef is CustomTemplateProxyVariableProperty {\n return !!(propRef as CustomTemplateProxyVariableProperty).asVariable;\n}\n","import {\n CustomTemplate,\n RefForProxy,\n RuntimeBrickConf,\n TemplateRegistry,\n} from \"@next-core/brick-types\";\n\nexport const customTemplateRegistry: TemplateRegistry<CustomTemplate> =\n new Map();\nexport const appRegistered = new Set<string>();\n\nexport const symbolForComputedPropsFromProxy = Symbol.for(\n \"tpl.computedPropsFromProxy\"\n);\nexport const symbolForRefForProxy = Symbol.for(\"tpl.refForProxy\");\nexport const symbolForTplContextId = Symbol.for(\"tpl.contextId\");\n\nexport type RuntimeBrickConfWithTplSymbols = RuntimeBrickConf &\n RuntimeBrickConfOfTplSymbols;\n\nexport interface RuntimeBrickConfOfTplSymbols {\n [symbolForComputedPropsFromProxy]?: Record<string, any>;\n [symbolForRefForProxy]?: RefForProxy;\n [symbolForTplContextId]?: string;\n}\n","import { isObject } from \"@next-core/brick-utils\";\nimport { clamp } from \"lodash\";\nimport { computeRealValue } from \"../../internal/setProperties\";\nimport {\n MergeablePropertyProxy,\n MergeablePropertyProxyOfArray,\n MergeBase,\n} from \"./internalInterfaces\";\n\nexport function propertyMerge(\n conf: MergeablePropertyProxy,\n value: unknown,\n object: Record<string, unknown>\n): unknown {\n return propertyMergeAll(\n conf.$$mergeBase,\n Object.fromEntries(\n conf.$$mergeBase.proxies.map((proxy) => [\n proxy.$$reversedRef,\n proxy === conf ? value : object[proxy.$$reversedRef],\n ])\n )\n );\n}\n\nexport function propertyMergeAll(\n mergeBase: MergeBase,\n object: Record<string, unknown>\n): unknown {\n if (mergeBase.mergeType === \"array\") {\n return propertyMergeAllOfArray(mergeBase, object);\n }\n if (mergeBase.mergeType === \"object\") {\n return propertyMergeAllOfObject(mergeBase, object);\n }\n // istanbul ignore next: should never reach\n throw new TypeError(`unsupported mergeType: \"${mergeBase.mergeType}\"`);\n}\n\nfunction propertyMergeAllOfArray(\n { baseValue, context, proxies }: MergeBase,\n object: Record<string, unknown>\n): unknown[] {\n // Use an approach like template-literal's quasis:\n // `quasi0${0}quais1${1}quasi2...`\n // Every quasi can be merged with multiple items.\n const computedBaseValue = Array.isArray(baseValue)\n ? (computeRealValue(baseValue, context, true, {\n $$lazyForUseBrick: true,\n }) as unknown[])\n : [];\n const quasis: unknown[][] = [];\n const size = computedBaseValue.length + 1;\n for (let i = 0; i < size; i += 1) {\n quasis.push([]);\n }\n\n for (const proxy of proxies as MergeablePropertyProxyOfArray[]) {\n let position: number;\n switch (proxy.mergeMethod) {\n case \"append\":\n position = computedBaseValue.length;\n break;\n case \"prepend\":\n position = 0;\n break;\n case \"insertAt\":\n // Defaults to `-1`.\n position = (proxy.mergeArgs as [number])?.[0] ?? -1;\n if (position < 0) {\n // It's counted from the end if position is negative.\n position += quasis.length;\n }\n position = clamp(position, 0, computedBaseValue.length);\n break;\n // istanbul ignore next: should never reach\n default:\n throw new TypeError(\n `unsupported mergeMethod: \"${proxy.mergeMethod}\" for mergeType \"${proxy.mergeType}\"`\n );\n }\n let patchValue = object[proxy.$$reversedRef] as unknown[];\n if (!Array.isArray(patchValue)) {\n patchValue = [];\n }\n quasis[position].push(...patchValue);\n }\n\n return quasis.flatMap((item, index) =>\n index < computedBaseValue.length\n ? item.concat(computedBaseValue[index])\n : item\n );\n}\n\nfunction propertyMergeAllOfObject(\n { baseValue, proxies, context }: MergeBase,\n object: Record<string, unknown>\n): Record<string, unknown> {\n const computedBaseValue = isObject(baseValue)\n ? (computeRealValue(baseValue, context, true) as Record<string, unknown>)\n : {};\n return proxies.reduce((acc, proxy) => {\n switch (proxy.mergeMethod) {\n case \"extend\":\n return {\n ...acc,\n ...(object[proxy.$$reversedRef] as Record<string, unknown>),\n };\n // istanbul ignore next: should never reach\n default:\n throw new TypeError(\n `unsupported mergeMethod: \"${proxy.mergeMethod}\" for mergeType \"${proxy.mergeType}\"`\n );\n }\n }, computedBaseValue);\n}\n","import { clamp } from \"lodash\";\nimport { hasOwnProperty } from \"@next-core/brick-utils\";\nimport type {\n BrickConf,\n RefForProxy,\n SlotsConfOfBricks,\n} from \"@next-core/brick-types\";\nimport type { ProxyContext } from \"./expandCustomTemplate\";\nimport { preprocessTransformProperties } from \"../../transformProperties\";\nimport { isBasicProperty, isTransformableProperty } from \"./assertions\";\nimport {\n RuntimeBrickConfOfTplSymbols,\n symbolForComputedPropsFromProxy,\n symbolForRefForProxy,\n symbolForTplContextId,\n} from \"./constants\";\nimport { propertyMergeAll } from \"./propertyMerge\";\n\nexport function setupTemplateProxy(\n proxyContext: Partial<ProxyContext>,\n ref: string,\n slots: SlotsConfOfBricks\n): RuntimeBrickConfOfTplSymbols {\n const computedPropsFromProxy: Record<string, unknown> = {};\n let refForProxy: RefForProxy;\n\n const {\n reversedProxies,\n templateProperties,\n externalSlots,\n templateContextId,\n proxyBrick,\n } = proxyContext;\n\n if (ref && reversedProxies) {\n refForProxy = {};\n proxyBrick.proxyRefs.set(ref, refForProxy);\n\n // Reversed proxies are used for expand storyboard before rendering page.\n if (reversedProxies.properties.has(ref)) {\n Object.assign(\n computedPropsFromProxy,\n Object.fromEntries(\n reversedProxies.properties\n .get(ref)\n .flatMap((propRef) => {\n // `propValue` is computed.\n const propValue = templateProperties?.[propRef.$$reversedRef];\n if (isTransformableProperty(propRef)) {\n return Object.entries(\n preprocessTransformProperties(\n {\n [propRef.$$reversedRef]: propValue,\n },\n propRef.refTransform\n )\n );\n }\n if (isBasicProperty(propRef)) {\n return [[propRef.refProperty, propValue]];\n }\n // Ignore Variable properties.\n // And mergeable properties are processed later.\n return [];\n })\n .filter((propRef) => propRef[1] !== undefined)\n )\n );\n\n // Brick properties can be merged multiple times.\n if (reversedProxies.mergeBases.has(ref)) {\n Object.assign(\n computedPropsFromProxy,\n Object.fromEntries(\n Array.from(reversedProxies.mergeBases.get(ref).entries())\n .map(([mergeProperty, mergeBase]) => [\n mergeProperty,\n propertyMergeAll(mergeBase, templateProperties ?? {}),\n ])\n .filter((item) => item[1] !== undefined)\n )\n );\n }\n }\n\n // Use an approach like template-literal's quasis:\n // `quasi0${0}quais1${1}quasi2...`\n // Every quasi (indexed by `refPosition`) can be slotted with multiple bricks.\n const quasisMap = new Map<string, BrickConf[][]>();\n\n if (reversedProxies.slots.has(ref)) {\n for (const item of reversedProxies.slots.get(ref)) {\n if (!quasisMap.has(item.refSlot)) {\n const quasis: BrickConf[][] = [];\n // The size of quasis should be the existed slotted bricks' size plus one.\n const size = hasOwnProperty(slots, item.refSlot)\n ? slots[item.refSlot].bricks.length + 1\n : 1;\n for (let i = 0; i < size; i += 1) {\n quasis.push([]);\n }\n quasisMap.set(item.refSlot, quasis);\n }\n const expandableSlot = quasisMap.get(item.refSlot);\n const refPosition = item.refPosition ?? -1;\n expandableSlot[\n clamp(\n refPosition < 0 ? expandableSlot.length + refPosition : refPosition,\n 0,\n expandableSlot.length - 1\n )\n ].push(...(externalSlots?.[item.$$reversedRef]?.bricks ?? []));\n }\n }\n\n for (const [slotName, quasis] of quasisMap.entries()) {\n if (!hasOwnProperty(slots, slotName)) {\n slots[slotName] = {\n type: \"bricks\",\n bricks: [],\n };\n }\n const slotConf = slots[slotName];\n slotConf.bricks = quasis.flatMap((bricks, index) =>\n index < slotConf.bricks.length\n ? bricks.concat(slotConf.bricks[index])\n : bricks\n );\n\n if (slotConf.bricks.length === 0) {\n delete slots[slotName];\n }\n }\n }\n\n return {\n [symbolForComputedPropsFromProxy]: computedPropsFromProxy,\n [symbolForRefForProxy]: refForProxy,\n [symbolForTplContextId]: templateContextId,\n };\n}\n","import {\n SlotsConfOfBricks,\n UseBrickConf,\n UseSingleBrickConf,\n} from \"@next-core/brick-types\";\nimport { isObject } from \"@next-core/brick-utils\";\nimport type { ProxyContext } from \"./expandCustomTemplate\";\nimport { setupTemplateProxy } from \"./setupTemplateProxy\";\n\nexport function setupUseBrickInTemplate(\n props: unknown,\n proxyContext: Partial<ProxyContext>\n): void {\n function walk(props: unknown): void {\n if (!props) {\n return;\n }\n for (const [key, value] of Object.entries<UseBrickConf>(\n props as Record<string, UseBrickConf>\n )) {\n if (isObject(value)) {\n if (key === \"useBrick\") {\n if (Array.isArray(value)) {\n value.forEach(setup);\n } else {\n setup(value);\n }\n } else {\n walk(value);\n }\n }\n }\n }\n\n function setup(item: UseSingleBrickConf): UseSingleBrickConf {\n const { ref, slots: slotsInTemplate } = item;\n\n item.slots = Object.fromEntries(\n Object.entries(slotsInTemplate ?? {}).map(([slotName, slotConf]) => [\n slotName,\n {\n type: \"bricks\",\n bricks: (slotConf.bricks ?? []).map(setup),\n },\n ])\n );\n\n Object.assign(\n item,\n setupTemplateProxy(proxyContext, ref, item.slots as SlotsConfOfBricks)\n );\n\n walk(item.properties);\n\n return item;\n }\n\n walk(props);\n}\n","import { set } from \"lodash\";\nimport { PluginRuntimeContext } from \"@next-core/brick-types\";\nimport {\n isObject,\n inject,\n isEvaluable,\n trackContext,\n trackState,\n} from \"@next-core/brick-utils\";\nimport {\n evaluate,\n EvaluateRuntimeContext,\n isPreEvaluated,\n shouldDismissRecursiveMarkingInjected,\n} from \"./evaluate\";\nimport { haveBeenInjected, recursiveMarkAsInjected } from \"./injected\";\nimport {\n getNextStateOfUseBrick,\n isLazyContentInUseBrick,\n StateOfUseBrick,\n} from \"./getNextStateOfUseBrick\";\nimport { TrackingContextItem } from \"./listenOnTrackingContext\";\nimport { setupUseBrickInTemplate } from \"../core/CustomTemplates/setupUseBrickInTemplate\";\n\ninterface ComputeOptions {\n $$lazyForUseBrick?: boolean;\n $$stateOfUseBrick?: StateOfUseBrick;\n ignoreSymbols?: boolean;\n}\n\nexport const computeRealValue = (\n value: unknown,\n context: PluginRuntimeContext,\n injectDeep?: boolean,\n internalOptions?: ComputeOptions\n): unknown => {\n const preEvaluated = isPreEvaluated(value);\n\n if (preEvaluated || typeof value === \"string\") {\n // For `useBrick`, some fields such as `properties`/`transform`/`events`/`if`,\n // are kept and to be evaluated later.\n const lazy =\n internalOptions?.$$lazyForUseBrick &&\n isLazyContentInUseBrick(internalOptions.$$stateOfUseBrick);\n\n let result: unknown;\n let dismissRecursiveMarkingInjected = lazy;\n if (preEvaluated || isEvaluable(value as string)) {\n const runtimeContext: EvaluateRuntimeContext = {};\n const keys = [\"event\", \"tplContextId\", \"overrideApp\"] as const;\n for (const key of keys) {\n if (context?.[key]) {\n runtimeContext[key as \"event\"] = context[key as \"event\"];\n }\n }\n // The current runtime context is memoized even if the evaluation maybe lazy.\n result = evaluate(value as string, runtimeContext, { lazy });\n dismissRecursiveMarkingInjected = shouldDismissRecursiveMarkingInjected(\n value as string\n );\n } else {\n result = lazy ? value : inject(value as string, context);\n }\n if (!dismissRecursiveMarkingInjected) {\n recursiveMarkAsInjected(result);\n }\n return result;\n }\n\n if (!(injectDeep && isObject(value)) || haveBeenInjected(value)) {\n return value;\n }\n\n if (Array.isArray(value)) {\n const nextOptions = getNextInternalOptions(internalOptions, true);\n return value.map((v) =>\n computeRealValue(v, context, injectDeep, nextOptions)\n );\n }\n\n return Object.fromEntries(\n Object.entries(value)\n .map(([k, v]) => [\n computeRealValue(k, context, false),\n computeRealValue(\n v,\n context,\n injectDeep,\n getNextInternalOptions(internalOptions, false, k)\n ),\n ])\n .concat(\n internalOptions?.ignoreSymbols\n ? []\n : Object.getOwnPropertySymbols(value).map((k) => [\n k,\n (value as Record<string | symbol, unknown>)[k],\n ])\n )\n );\n};\n\nexport function setProperties(\n bricks: HTMLElement | HTMLElement[],\n properties: Record<string, unknown>,\n context: PluginRuntimeContext,\n injectDeep?: boolean\n): void {\n const realProps = computeRealProperties(properties, context, injectDeep);\n if (context.tplContextId) {\n setupUseBrickInTemplate(realProps, {\n templateContextId: context.tplContextId,\n });\n }\n if (!Array.isArray(bricks)) {\n bricks = [bricks];\n }\n bricks.forEach((brick) => {\n setRealProperties(brick, realProps);\n });\n}\n\nexport function setRealProperties(\n brick: HTMLElement,\n realProps: Record<string, unknown>,\n extractProps?: boolean\n): void {\n for (const [propName, propValue] of Object.entries(realProps)) {\n if (propName === \"style\" || propName === \"dataset\") {\n for (const [k, v] of Object.entries(propValue)) {\n (brick[propName] as unknown as Record<string, unknown>)[k] = v;\n }\n } else if (propName === \"innerHTML\") {\n // `innerHTML` is dangerous, use `textContent` instead.\n // eslint-disable-next-line no-console\n console.error(\"Please use `textContent` instead of `innerHTML`.\");\n brick.textContent = propValue as string;\n } else {\n if (extractProps) {\n set(brick, propName, propValue);\n } else {\n (brick as unknown as Record<string, unknown>)[propName] = propValue;\n }\n }\n }\n}\n\nexport function computeRealProperties(\n properties: Record<string, unknown>,\n context: PluginRuntimeContext,\n injectDeep?: boolean,\n trackingContextList?: TrackingContextItem[]\n): Record<string, unknown> {\n const result: Record<string, unknown> = {};\n\n if (isObject(properties)) {\n for (const [propName, propValue] of Object.entries(properties)) {\n // Related: https://github.com/facebook/react/issues/11347\n const realValue = computeRealValue(propValue, context, injectDeep, {\n $$lazyForUseBrick: true,\n $$stateOfUseBrick:\n propName === \"useBrick\"\n ? StateOfUseBrick.USE_BRICK\n : StateOfUseBrick.INITIAL,\n });\n if (realValue !== undefined) {\n // For `style` and `dataset`, only object is acceptable.\n if (\n (propName !== \"style\" && propName !== \"dataset\") ||\n isObject(realValue)\n ) {\n result[propName] = realValue;\n }\n }\n if (Array.isArray(trackingContextList) && isEvaluable(propValue)) {\n const contextNames = trackContext(propValue);\n const stateNames = trackState(propValue);\n if (contextNames || stateNames) {\n trackingContextList.push({\n contextNames,\n stateNames,\n propName,\n propValue,\n });\n }\n }\n }\n }\n\n return result;\n}\n\nfunction getNextInternalOptions(\n internalOptions: ComputeOptions,\n isArray: boolean,\n key?: string\n): ComputeOptions {\n return internalOptions?.$$lazyForUseBrick\n ? {\n ...internalOptions,\n $$stateOfUseBrick: getNextStateOfUseBrick(\n internalOptions.$$stateOfUseBrick,\n isArray,\n key\n ),\n }\n : internalOptions;\n}\n","import { isNil, sortBy } from \"lodash\";\nimport {\n SidebarMenuSimpleItem,\n PluginRuntimeContext,\n SidebarMenu,\n MenuRawData,\n MenuItemRawData,\n} from \"@next-core/brick-types\";\nimport { isEvaluable, isObject, preevaluate } from \"@next-core/brick-utils\";\nimport {\n InstanceApi_postSearch,\n InstanceApi_getDetail,\n} from \"@next-sdk/cmdb-sdk\";\nimport { computeRealValue } from \"./setProperties\";\nimport { looseCheckIfOfComputed } from \"../checkIf\";\nimport {\n _internalApiGetCurrentContext,\n _internalApiGetResolver,\n MountRoutesResult,\n Kernel,\n} from \"../core/exports\";\n\nconst symbolAppId = Symbol(\"appId\");\n\ninterface RuntimeMenuItemRawData extends MenuItemRawData {\n [symbolAppId]?: string;\n}\n\n// Caching menu requests to avoid flicker.\nconst menuCache = new Map<string, MenuRawData>();\nconst menuTitleCache = new Map<string, string>();\nconst processMenuCache = new Map<string, SidebarMenu>();\n\nexport async function constructMenu(\n menuBar: MountRoutesResult[\"menuBar\"],\n context: PluginRuntimeContext,\n kernel: Kernel\n): Promise<void> {\n const hasSubMenu = !!menuBar.subMenuId;\n if (menuBar.menuId) {\n const defaultCollapsed = menuBar.menu?.defaultCollapsed;\n const menu = await processMenu(menuBar.menuId, context, kernel, hasSubMenu);\n\n if (!isNil(defaultCollapsed)) {\n menu.defaultCollapsed = defaultCollapsed;\n }\n\n menuBar.menu = menu;\n }\n if (hasSubMenu) {\n menuBar.subMenu = await processMenu(menuBar.subMenuId, context, kernel);\n } else {\n menuBar.subMenu = null;\n }\n}\n\nexport async function constructMenuByMenusList(\n menus: string[],\n context: PluginRuntimeContext,\n kernel: Kernel\n): Promise<void> {\n const data: SidebarMenu[] = await Promise.all(\n menus.map((menuId) => processMenu(menuId, context, kernel))\n );\n data.forEach((item, index) => processMenuCache.set(menus[index], item));\n}\n\nexport const getMenu = (menuId: string): SidebarMenu =>\n processMenuCache.get(menuId);\n\nexport async function fetchMenuById(\n menuId: string,\n kernel: Kernel\n): Promise<MenuRawData> {\n if (menuCache.has(menuId)) {\n return menuCache.get(menuId);\n }\n const menuList = window.STANDALONE_MICRO_APPS\n ? kernel.getStandaloneMenus(menuId)\n : ((\n await InstanceApi_postSearch(\"EASYOPS_STORYBOARD_MENU\", {\n page: 1,\n page_size: 200,\n fields: {\n menuId: true,\n title: true,\n icon: true,\n link: true,\n titleDataSource: true,\n defaultCollapsed: true,\n defaultCollapsedBreakpoint: true,\n type: true,\n injectMenuGroupId: true,\n dynamicItems: true,\n itemsResolve: true,\n items: true,\n \"items.children\": true,\n \"app.appId\": true,\n },\n query: {\n menuId: {\n $eq: menuId,\n },\n app: {\n $size: {\n $gt: 0,\n },\n },\n },\n })\n ).list as MenuRawData[]);\n await Promise.all(menuList.map(loadDynamicMenuItems));\n const menuData = mergeMenu(menuList);\n if (!menuData) {\n throw new Error(`Menu not found: ${menuId}`);\n }\n reorderMenuItems(menuData);\n menuCache.set(menuId, menuData);\n return menuData;\n}\n\nfunction mergeMenu(menuList: MenuRawData[]): MenuRawData {\n const mainMenu = menuList.find((menu) => menu.type !== \"inject\");\n if (!mainMenu) {\n return undefined;\n }\n const validMenuList: MenuRawData[] = [];\n const injectWithMenus = new Map<string, MenuRawData[]>();\n for (const menu of menuList) {\n if (menu.items?.length > 0) {\n if (menu.type === \"inject\" && menu.injectMenuGroupId) {\n let injectingMenus = injectWithMenus.get(menu.injectMenuGroupId);\n if (!injectingMenus) {\n injectingMenus = [];\n injectWithMenus.set(menu.injectMenuGroupId, injectingMenus);\n }\n injectingMenus.push(menu);\n } else {\n validMenuList.push(menu);\n }\n }\n }\n return {\n ...mainMenu,\n items: validMenuList.flatMap((menu) =>\n processGroupInject(menu.items, menu, injectWithMenus)\n ),\n };\n}\n\nfunction processGroupInject(\n items: MenuItemRawData[],\n menu: MenuRawData,\n injectWithMenus: Map<string, MenuRawData[]>\n): RuntimeMenuItemRawData[] {\n return items?.map((item) => {\n const foundInjectingMenus =\n item.groupId && injectWithMenus.get(item.groupId);\n if (foundInjectingMenus) {\n // Each menu to be injected with should be injected only once.\n injectWithMenus.delete(item.groupId);\n }\n return {\n ...item,\n children: (\n processGroupInject(item.children, menu, injectWithMenus) ?? []\n ).concat(\n foundInjectingMenus\n ? foundInjectingMenus.flatMap((injectingMenu) =>\n processGroupInject(\n injectingMenu.items,\n injectingMenu,\n injectWithMenus\n )\n )\n : []\n ),\n [symbolAppId]: menu.app[0].appId,\n };\n });\n}\n\nasync function loadDynamicMenuItems(menu: MenuRawData): Promise<void> {\n if (menu.dynamicItems && menu.itemsResolve) {\n const itemsConf: Partial<{ items: MenuItemRawData[] }> = {};\n await _internalApiGetResolver().resolveOne(\n \"reference\",\n {\n transform: \"items\",\n transformMapArray: false,\n ...menu.itemsResolve,\n },\n itemsConf,\n null,\n _internalApiGetCurrentContext()\n );\n menu.items = itemsConf.items;\n }\n}\n\nexport async function processMenu(\n menuId: string,\n context: PluginRuntimeContext,\n kernel: Kernel,\n hasSubMenu?: boolean\n): Promise<SidebarMenu> {\n const { items, app, ...restMenuData } = await fetchMenuById(menuId, kernel);\n\n const menuData = {\n ...(await computeRealValueWithOverrideApp(\n restMenuData,\n app[0].appId,\n context,\n kernel\n )),\n items: await computeMenuItemsWithOverrideApp(items, context, kernel),\n };\n\n return {\n title: await processMenuTitle(menuData),\n icon: menuData.icon,\n link: menuData.link,\n menuItems: menuData.items\n .filter(\n // `if` is already evaluated.\n looseCheckIfOfComputed\n )\n .map((item) => {\n const children = item.children?.filter(\n // `if` is already evaluated.\n looseCheckIfOfComputed\n ) as SidebarMenuSimpleItem[];\n return item.type === \"group\"\n ? {\n type: \"group\",\n title: item.text,\n items: children,\n }\n : children?.length\n ? {\n type: \"subMenu\",\n title: item.text,\n icon: item.icon,\n items: children,\n defaultExpanded: item.defaultExpanded,\n }\n : (item as SidebarMenuSimpleItem);\n }),\n defaultCollapsed: menuData.defaultCollapsed || hasSubMenu,\n defaultCollapsedBreakpoint: menuData.defaultCollapsedBreakpoint,\n };\n}\n\nfunction computeMenuItemsWithOverrideApp(\n items: RuntimeMenuItemRawData[],\n context: PluginRuntimeContext,\n kernel: Kernel\n): Promise<RuntimeMenuItemRawData[]> {\n return Promise.all(\n items.map(async ({ children, ...rest }) => ({\n ...(await computeRealValueWithOverrideApp(\n rest,\n rest[symbolAppId],\n context,\n kernel\n )),\n children:\n children &&\n (await computeMenuItemsWithOverrideApp(children, context, kernel)),\n }))\n );\n}\n\nexport async function processMenuTitle(menuData: MenuRawData): Promise<string> {\n if (menuData.title || !menuData.titleDataSource) {\n return menuData.title;\n }\n const cacheKey = JSON.stringify(menuData.titleDataSource);\n if (menuTitleCache.has(cacheKey)) {\n return menuTitleCache.get(cacheKey);\n }\n const { objectId, instanceId, attributeId } = menuData.titleDataSource;\n const attr = attributeId ?? \"name\";\n const instanceData = await InstanceApi_getDetail(objectId, instanceId, {\n fields: attr,\n });\n let title: string;\n if (attributeId === \"#showKey\" && Array.isArray(instanceData[attr])) {\n const [primary, ...rest] = instanceData[attr];\n title = rest.length > 0 ? `${primary}(${rest.join(\",\")})` : String(primary);\n } else {\n title = String(instanceData[attr]);\n }\n menuTitleCache.set(cacheKey, title);\n return title;\n}\n\nexport function clearMenuTitleCache(): void {\n menuTitleCache.clear();\n}\n\nexport function clearMenuCache(): void {\n menuCache.clear();\n}\n\nfunction reorderMenuItems(menuData: MenuRawData): void {\n menuData.items = sortMenuItems(menuData.items).map((item) => ({\n ...item,\n children: sortMenuItems(item.children) as SidebarMenuSimpleItem[],\n }));\n}\n\nfunction sortMenuItems(list: MenuItemRawData[]): MenuItemRawData[] {\n return sortBy(list, (item) => item.sort ?? -Infinity);\n}\n\nconst overriddenGlobals = [\"APP\", \"I18N\"];\n\n/**\n * If the menu contains evaluations which use `APP` or `I18N`,\n * we have to override app in context when computing real values.\n */\nfunction requireOverrideApp(data: unknown, memo = new WeakSet()): boolean {\n if (typeof data === \"string\") {\n if (isEvaluable(data)) {\n if (overriddenGlobals.some((key) => data.includes(key))) {\n const { attemptToVisitGlobals } = preevaluate(data);\n return overriddenGlobals.some((key) => attemptToVisitGlobals.has(key));\n }\n } else {\n return /\\${\\s*APP\\s*\\./.test(data);\n }\n } else if (isObject(data)) {\n // Avoid call stack overflow.\n // istanbul ignore next\n if (memo.has(data)) {\n return false;\n }\n memo.add(data);\n return (Array.isArray(data) ? data : Object.values(data)).some((item) =>\n requireOverrideApp(item, memo)\n );\n }\n\n return false;\n}\n\nasync function computeRealValueWithOverrideApp<T>(\n data: T,\n overrideAppId: string,\n context: PluginRuntimeContext,\n kernel: Kernel\n): Promise<T> {\n let newContext = context;\n if (overrideAppId !== context.app.id && requireOverrideApp(data)) {\n const storyboard = kernel.bootstrapData.storyboards.find(\n (story) => story.app.id === overrideAppId\n );\n if (storyboard) {\n await kernel.fulfilStoryboard(storyboard);\n newContext = {\n ...context,\n overrideApp: storyboard.app,\n };\n }\n }\n return computeRealValue(data, newContext, true, {\n ignoreSymbols: true,\n }) as T;\n}\n","export type LazyBrickImportFunction = () => Promise<unknown>;\n\nconst lazyBrickRegistry = new Map<string, LazyBrickImportFunction>();\nconst requestsMap = new WeakMap<LazyBrickImportFunction, Promise<unknown>>();\n\nexport function registerLazyBricks(\n bricks: string | string[],\n factory: LazyBrickImportFunction\n): void {\n const factoryWrapper: LazyBrickImportFunction = async () => {\n try {\n window.dispatchEvent(new CustomEvent(\"request.start\"));\n await factory();\n } finally {\n window.dispatchEvent(new CustomEvent(\"request.end\"));\n }\n };\n for (const brick of ([] as string[]).concat(bricks)) {\n if (lazyBrickRegistry.has(brick)) {\n throw new Error(`Lazy brick \"${brick}\" is already registered`);\n }\n lazyBrickRegistry.set(brick, factoryWrapper);\n }\n}\n\nexport async function loadLazyBricks(bricks: Iterable<string>): Promise<void> {\n const requests = new Set<Promise<unknown>>();\n for (const brick of bricks) {\n const factory = lazyBrickRegistry.get(brick);\n if (factory) {\n let request = requestsMap.get(factory);\n if (!request) {\n request = factory();\n requestsMap.set(factory, request);\n }\n requests.add(request);\n }\n }\n await Promise.all(requests);\n}\n\nexport function loadAllLazyBricks(): Promise<void> {\n return loadLazyBricks(lazyBrickRegistry.keys());\n}\n","import {\n MountPoints,\n MicroApp,\n InterceptorParams,\n FeatureFlags,\n DesktopData,\n UserInfo,\n BrickPackage,\n Storyboard,\n MagicBrickConfig,\n PluginRuntimeContext,\n BrickConf,\n TemplatePackage,\n SiteMapItem,\n SidebarMenu,\n RouteConf,\n} from \"@next-core/brick-types\";\nimport compareVersions from \"compare-versions\";\nimport {\n Kernel,\n MenuBar,\n AppBar,\n Resolver,\n registerCustomTemplate,\n registerCustomProcessor,\n NavConfig,\n} from \"./exports\";\nimport { registerBrickTemplate } from \"./TemplateRegistries\";\nimport {\n RelatedApp,\n RouterState,\n RecentApps,\n CustomApiDefinition,\n AbstractRuntime,\n} from \"./interfaces\";\nimport { getBasePath } from \"../internal/getBasePath\";\nimport { getCurrentMode, getCurrentTheme } from \"../themeAndMode\";\nimport { processMenu } from \"../internal/menu\";\nimport { registerLazyBricks } from \"./LazyBrickRegistry\";\nimport { registerWidgetFunctions } from \"./WidgetFunctions\";\nimport { registerWidgetI18n } from \"./WidgetI18n\";\nimport { StoryboardContextWrapper } from \"./StoryboardContext\";\n\nlet kernel: Kernel;\n\n/* istanbul ignore next */\nexport function _dev_only_getBrickPackages(): BrickPackage[] {\n // eslint-disable-next-line no-console\n console.warn(\n \"`_dev_only_getBrickPackages()` is deprecated and will always return an empty array, please use `(await BootstrapV2Api_brickPackageInfo()).bricks` instead\"\n );\n return kernel.bootstrapData.brickPackages;\n}\n\n/* istanbul ignore next */\nexport function _dev_only_getTemplatePackages(): TemplatePackage[] {\n // eslint-disable-next-line no-console\n console.warn(\n \"`_dev_only_getTemplatePackages()` is deprecated and will always return an empty array, please use `(await BootstrapV2Api_brickPackageInfo()).templates` instead\"\n );\n return kernel.bootstrapData.templatePackages;\n}\n\n/* istanbul ignore next */\nexport function _dev_only_getStoryboards(): Storyboard[] {\n // Deprecated since the storyboards are probably not fulfilled.\n return [];\n}\n\n/* istanbul ignore next */\nexport function _dev_only_loadDynamicBricksInBrickConf(\n brickConf: BrickConf\n): Promise<void> {\n return kernel.loadDynamicBricksInBrickConf(brickConf);\n}\n\n/* istanbul ignore next */\nexport function _dev_only_loadEditorBricks(\n editorBricks: string[]\n): Promise<void> {\n return kernel.loadEditorBricks(editorBricks);\n}\n\n/* istanbul ignore next */\nexport function _dev_only_getFakeKernel(\n overrides?: Record<string, unknown>\n): Kernel {\n return {\n bootstrapData: kernel.bootstrapData,\n getFeatureFlags: kernel.getFeatureFlags.bind(kernel),\n loadDynamicBricksInBrickConf:\n kernel.loadDynamicBricksInBrickConf.bind(kernel),\n getProviderBrick: kernel.getProviderBrick.bind(kernel),\n ...overrides,\n } as Kernel;\n}\n\n/* istanbul ignore next */\nexport function _dev_only_updateStoryboard(\n appId: string,\n storyboardPatch: Partial<Storyboard>\n): void {\n kernel._dev_only_updateStoryboard(appId, storyboardPatch);\n}\n\n/* istanbul ignore next */\nexport function _dev_only_updateTemplatePreviewSettings(\n appId: string,\n templateId: string,\n settings: unknown\n): void {\n kernel._dev_only_updateTemplatePreviewSettings(appId, templateId, settings);\n}\n\n/* istanbul ignore next */\nexport function _dev_only_updateSnippetPreviewSettings(\n appId: string,\n snippetData: any\n): void {\n kernel._dev_only_updateSnippetPreviewSettings(appId, snippetData);\n}\n\nexport class Runtime implements AbstractRuntime {\n async bootstrap(mountPoints: MountPoints): Promise<void> {\n if (kernel !== undefined) {\n throw new Error(\"Cannot bootstrap more than once.\");\n }\n kernel = new Kernel();\n await kernel.bootstrap(mountPoints);\n }\n\n get menuBar(): MenuBar {\n return kernel.menuBar;\n }\n\n get appBar(): AppBar {\n return kernel.appBar;\n }\n\n /* istanbul ignore next */\n getCurrentApp(): MicroApp {\n return kernel.currentApp;\n }\n\n /* istanbul ignore next */\n getRecentApps(): RecentApps {\n return kernel.getRecentApps();\n }\n\n /* istanbul ignore next */\n getCurrentRoute(): RouteConf {\n return kernel.currentRoute;\n }\n\n /* istanbul ignore next */\n getNavConfig(): NavConfig {\n return kernel.router.getNavConfig();\n }\n\n getMicroApps({\n excludeInstalling = false,\n includeInternal = false,\n } = {}): MicroApp[] {\n let apps = kernel.bootstrapData.microApps;\n if (excludeInstalling) {\n apps = apps.filter((app) => app.installStatus !== \"running\");\n }\n if (!includeInternal) {\n apps = apps.filter((app) => !app.internal);\n }\n return apps;\n }\n\n hasInstalledApp(appId: string, matchVersion?: string): boolean {\n return kernel.bootstrapData.microApps.some((app) => {\n const foundApp = app.id === appId && app.installStatus !== \"running\";\n if (!matchVersion || !foundApp) {\n return foundApp;\n }\n // Valid `matchVersion`:\n // >=1.2.3\n // >1.2.3\n // =1.2.3\n // <=1.2.3\n // <1.2.3\n const matches = matchVersion.match(/^([><]=?|=)(.*)$/);\n try {\n if (!matches) {\n throw new TypeError(`Invalid match version: ${matchVersion}`);\n }\n return compareVersions.compare(\n app.currentVersion,\n matches[2],\n matches[1] as compareVersions.CompareOperator\n );\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(error);\n }\n return false;\n });\n }\n\n reloadMicroApps(interceptorParams?: InterceptorParams): Promise<void> {\n return kernel.reloadMicroApps(\n {\n check_login: true,\n },\n interceptorParams\n );\n }\n\n /* istanbul ignore next */\n reloadSharedData(): void {\n return kernel.loadSharedData();\n }\n\n /* istanbul ignore next */\n getDesktops(): DesktopData[] {\n return kernel.bootstrapData.desktops || [];\n }\n\n /* istanbul ignore next */\n getLaunchpadSiteMap(): SiteMapItem[] {\n return kernel.bootstrapData.siteSort || [];\n }\n\n /* istanbul ignore next */\n getAllUserInfo(): UserInfo[] {\n // eslint-disable-next-line no-console\n console.warn(\n \"`getRuntime().getAllUserInfo()` is deprecated and will always return an empty array, please use `await getRuntime().getAllUserMapAsync()` instead\"\n );\n return [];\n }\n\n /* istanbul ignore next */\n getAllUserMap(): Map<string, UserInfo> {\n // eslint-disable-next-line no-console\n console.warn(\n \"`getRuntime().getAllUserMap()` is deprecated and will always return an empty Map, please use `await getRuntime().getAllUserMapAsync()` instead\"\n );\n return new Map();\n }\n\n /* istanbul ignore next */\n getAllUserMapAsync(): Promise<Map<string, UserInfo>> {\n kernel.loadUsersAsync();\n return kernel.allUserMapPromise;\n }\n\n /* istanbul ignore next */\n getMagicBrickConfigMapAsync(): Promise<Map<string, MagicBrickConfig>> {\n kernel.loadMagicBrickConfigAsync();\n return kernel.allMagicBrickConfigMapPromise;\n }\n\n /* istanbul ignore next */\n fetchMenu(menuId: string): Promise<SidebarMenu> {\n return processMenu(menuId, kernel.router.getCurrentContext(), kernel);\n }\n\n /**\n * 切换主体内容 `filter: blur(...)`;\n * @deprecated\n * @param blur\n */\n toggleFilterOfBlur(blur: boolean): void {\n document.body.classList.toggle(\"filter-of-blur\", blur);\n }\n\n toggleLaunchpadEffect(open: boolean): void {\n document.body.classList.toggle(\"launchpad-open\", open);\n }\n\n /* istanbul ignore next */\n getFeatureFlags(): FeatureFlags {\n return kernel.getFeatureFlags();\n }\n\n getHomepage(): string {\n return kernel.bootstrapData.settings?.homepage ?? \"/\";\n }\n\n getBrandSettings(): Record<string, string> {\n return Object.assign(\n { base_title: \"DevOps 管理专家\" },\n kernel.bootstrapData.settings?.brand\n );\n }\n\n getLaunchpadSettings(): { columns: number; rows: number } {\n return Object.assign(\n {\n columns: 7,\n rows: 4,\n },\n kernel.bootstrapData.settings?.launchpad\n );\n }\n\n getMiscSettings(): Record<string, unknown> {\n return Object.assign({}, kernel.bootstrapData.settings?.misc);\n }\n\n registerBrickTemplate = registerBrickTemplate;\n registerCustomTemplate = registerCustomTemplate;\n registerCustomProcessor = registerCustomProcessor;\n registerLazyBricks = registerLazyBricks;\n registerWidgetFunctions = registerWidgetFunctions;\n registerWidgetI18n = registerWidgetI18n;\n\n /* istanbul ignore next */\n getRelatedApps(appId: string): RelatedApp[] {\n // eslint-disable-next-line no-console\n console.warn(\n \"`getRuntime().getRelatedApps()` is deprecated and will always return an empty array, please use `await getRuntime().getRelatedAppsAsync()` instead\"\n );\n return [];\n }\n\n /* istanbul ignore next */\n getRelatedAppsAsync(appId: string): Promise<RelatedApp[]> {\n return kernel.getRelatedAppsAsync(appId);\n }\n\n /* istanbul ignore next */\n popWorkspaceStack(): void {\n return kernel.popWorkspaceStack();\n }\n\n /* istanbul ignore next */\n resetWorkspaceStack(): void {\n kernel.workspaceStack = [];\n }\n\n getBasePath = getBasePath;\n getCurrentTheme = getCurrentTheme;\n getCurrentMode = getCurrentMode;\n\n applyPageTitle(pageTitle: string): void {\n const baseTitle = this.getBrandSettings().base_title;\n document.title = pageTitle ? `${pageTitle} - ${baseTitle}` : baseTitle;\n }\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetResolver(): Resolver {\n if (process.env.NODE_ENV === \"test\") {\n return { resolve: () => Promise.resolve() } as any;\n }\n return kernel.router.getResolver();\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetRouterState(): RouterState {\n if (process.env.NODE_ENV === \"test\") {\n return \"mounted\";\n }\n return kernel.router.getState();\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetRouterRenderId(): string {\n if (process.env.NODE_ENV === \"test\") {\n return \"render-id-1\";\n }\n return kernel.router.getRenderId();\n}\n\n/* istanbul ignore next */\nexport function _internalApiMessageCloseHandler(event: CloseEvent): void {\n return kernel.router.handleMessageClose(event);\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetStoryboardContextWrapper(): StoryboardContextWrapper {\n return kernel.router.getStoryboardContextWrapper();\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetCurrentContext(): PluginRuntimeContext {\n if (process.env.NODE_ENV === \"test\") {\n return {} as any;\n }\n return kernel.router.getCurrentContext();\n}\n\nexport function _internalApiHasMatchedApp(pathname: string): boolean {\n for (const { homepage } of kernel.bootstrapData.microApps) {\n if (pathname === homepage || pathname.startsWith(`${homepage}/`)) {\n return true;\n }\n }\n return false;\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetProviderBrick(\n provider: string\n): Promise<HTMLElement> {\n return kernel.getProviderBrick(provider);\n}\n\n/* istanbul ignore next */\nexport function _internalApiGetMicroAppApiOrchestrationMap(): Promise<\n Map<string, CustomApiDefinition>\n> {\n return kernel.allMicroAppApiOrchestrationPromise;\n}\n\n/* istanbul ignore next */\nexport function _internalApiLoadDynamicBricksInBrickConf(\n brickConf: BrickConf\n): Promise<void> {\n return kernel.loadDynamicBricksInBrickConf(brickConf);\n}\n","import { History, LocationDescriptorObject, parsePath } from \"history\";\nimport {\n PluginHistoryState,\n ExtendedHistory,\n UpdateQueryFunction,\n UpdateQueryOptions,\n UpdateAnchorFunction,\n} from \"@next-core/brick-types\";\nimport { getBasePath } from \"./getBasePath\";\nimport { _internalApiHasMatchedApp } from \"../core/Runtime\";\n\nexport function historyExtended(\n browserHistory: History<PluginHistoryState>\n): ExtendedHistory {\n const { push: originalPush, replace: originalReplace } = browserHistory;\n function updateQueryFactory(method: \"push\" | \"replace\"): UpdateQueryFunction {\n return function updateQuery(\n query: Record<string, any>,\n options: UpdateQueryOptions = {}\n ): void {\n const { extraQuery, clear, keepHash, ...state } = options;\n const urlSearchParams = new URLSearchParams(\n clear ? \"\" : browserHistory.location.search\n );\n const params: Record<string, any> = {};\n Object.assign(params, query, extraQuery);\n for (const [key, value] of Object.entries(params)) {\n if (Array.isArray(value)) {\n urlSearchParams.delete(key);\n for (const item of value) {\n urlSearchParams.append(key, item);\n }\n } else if (value === undefined || value === null || value === \"\") {\n urlSearchParams.delete(key);\n } else {\n urlSearchParams.set(key, value);\n }\n }\n (method === \"push\" ? originalPush : originalReplace)(\n `?${urlSearchParams.toString()}${\n keepHash ? browserHistory.location.hash : \"\"\n }`,\n state\n );\n };\n }\n\n function updateAnchorFactory(\n method: \"push\" /* | \"replace\" */\n ): UpdateAnchorFunction {\n return function updateAnchor(\n hash: string,\n state?: PluginHistoryState\n ): void {\n (method === \"push\" ? originalPush : originalReplace)({\n ...browserHistory.location,\n key: undefined,\n hash,\n state: {\n // The default notify is false\n notify: false,\n ...state,\n },\n });\n };\n }\n\n function reload(): void {\n originalReplace({\n ...browserHistory.location,\n state: {\n ...browserHistory.location.state,\n // Always notify\n notify: true,\n },\n });\n }\n\n let blockMessage: string;\n\n function setBlockMessage(message: string): void {\n blockMessage = message;\n }\n\n function getBlockMessage(): string {\n return blockMessage;\n }\n\n function unblock(): void {\n blockMessage = undefined;\n }\n\n return {\n pushQuery: updateQueryFactory(\"push\"),\n replaceQuery: updateQueryFactory(\"replace\"),\n pushAnchor: updateAnchorFactory(\"push\"),\n // replaceAnchor: updateAnchorFactory(\"replace\"),\n reload,\n setBlockMessage,\n getBlockMessage,\n unblock,\n ...(window.STANDALONE_MICRO_APPS\n ? standaloneHistoryOverridden(browserHistory)\n : null),\n };\n}\n\n/**\n * Override history for standalone micro apps.\n *\n * when `push` or `replace` to other apps, force page refresh.\n */\nfunction standaloneHistoryOverridden(\n browserHistory: History<PluginHistoryState>\n): Pick<History<PluginHistoryState>, \"push\" | \"replace\"> {\n const { push: originalPush, replace: originalReplace } = browserHistory;\n function updateFactory(\n method: \"push\" | \"replace\"\n ): History<PluginHistoryState>[\"push\"] {\n return function update(path, state?) {\n let pathname: string;\n const pathIsString = typeof path === \"string\";\n if (pathIsString) {\n pathname = parsePath(path).pathname;\n } else {\n pathname = path.pathname;\n }\n if (pathname === \"\" || _internalApiHasMatchedApp(pathname)) {\n return (method === \"push\" ? originalPush : originalReplace)(\n path as string,\n state\n );\n }\n // Going to outside apps.\n return location[method === \"push\" ? \"assign\" : \"replace\"](\n pathIsString\n ? getBasePath() + path.replace(/^\\//, \"\")\n : browserHistory.createHref(\n path as LocationDescriptorObject<PluginHistoryState>\n )\n );\n };\n }\n return {\n push: updateFactory(\"push\"),\n replace: updateFactory(\"replace\"),\n };\n}\n","import { createBrowserHistory } from \"history\";\nimport { PluginHistory } from \"@next-core/brick-types\";\nimport { historyExtended } from \"./internal/historyExtended\";\nimport { getBasePath } from \"./internal/getBasePath\";\n\nlet history: PluginHistory;\n\n/** @internal */\nexport function createHistory(): PluginHistory {\n const browserHistory = createBrowserHistory({\n basename: getBasePath().replace(/\\/$/, \"\"),\n });\n Object.assign(browserHistory, historyExtended(browserHistory));\n history = browserHistory as PluginHistory;\n return history;\n}\n\n/**\n * 获取系统会话历史管理器。\n *\n * @returns 系统会话历史管理器。\n */\nexport function getHistory(): PluginHistory {\n return history;\n}\n","import { HttpResponseError } from \"@next-core/brick-http\";\n\nexport function isUnauthenticatedError(error: any): boolean {\n return (\n error instanceof HttpResponseError &&\n error.response.status === 401 &&\n !!error.responseJson &&\n error.responseJson.code === 100003\n );\n}\n","import React from \"react\";\nimport {\n HttpResponseError,\n HttpParseError,\n HttpFetchError,\n} from \"@next-core/brick-http\";\nimport { Modal } from \"antd\";\nimport { ExclamationCircleOutlined } from \"@ant-design/icons\";\nimport { ModalFunc } from \"antd/lib/modal/confirm\";\nimport i18next from \"i18next\";\nimport { K, NS_BRICK_KIT } from \"./i18n/constants\";\nimport { getHistory } from \"./history\";\nimport { isUnauthenticatedError } from \"./internal/isUnauthenticatedError\";\nimport { getRuntime } from \"./runtime\";\n\n/**\n * 将 http 请求错误转换为可读的字符串。\n *\n * @remarks\n *\n * 将依次尝试读取返回的 JSON 格式数据的字符串类型的 `error` 和 `msg` 字段,如果没有找到则返回 `error.toString()` 的结果。\n *\n * @param error - 错误对象。\n *\n * @returns 转换为字符串的错误信息。\n */\nexport function httpErrorToString(\n error: Error | HttpFetchError | HttpResponseError | HttpParseError | Event\n): string {\n if (error instanceof Event && error.target instanceof HTMLScriptElement) {\n return error.target.src;\n }\n if (error instanceof HttpFetchError) {\n return i18next.t(`${NS_BRICK_KIT}:${K.NETWORK_ERROR}`);\n }\n if (error instanceof HttpResponseError) {\n if (error.responseJson) {\n if (typeof error.responseJson.error === \"string\") {\n return error.responseJson.error;\n } else if (typeof error.responseJson.msg === \"string\") {\n return error.responseJson.msg;\n }\n }\n }\n return error.toString();\n}\n\nlet unauthenticatedConfirmModal: ReturnType<ModalFunc>;\n\n/**\n * 处理 http 请求错误(使用 AntDesign 模态框弹出错误信息)。\n *\n * @param error - 错误对象。\n */\nexport function handleHttpError(\n error: Error | HttpFetchError | HttpResponseError | HttpParseError\n): ReturnType<ModalFunc> {\n // Redirect to login page if not logged in.\n if (isUnauthenticatedError(error) && !window.NO_AUTH_GUARD) {\n // Do not show multiple confirm modals.\n if (unauthenticatedConfirmModal) {\n return;\n }\n unauthenticatedConfirmModal = Modal.confirm({\n icon: <ExclamationCircleOutlined />,\n content: <LoginTimeoutMessage />,\n okText: i18next.t(`${NS_BRICK_KIT}:${K.MODAL_OK}`),\n cancelText: i18next.t(`${NS_BRICK_KIT}:${K.MODAL_CANCEL}`),\n onOk: () => {\n const ssoEnabled = getRuntime().getFeatureFlags()[\"sso-enabled\"];\n const history = getHistory();\n history.push(ssoEnabled ? \"/sso-auth/login\" : \"/auth/login\", {\n from: {\n ...history.location,\n state: undefined,\n },\n });\n },\n });\n return;\n }\n\n return Modal.error({\n title: i18next.t(`${NS_BRICK_KIT}:${K.REQUEST_FAILED}`),\n content: (\n <div\n style={{\n whiteSpace: \"pre-wrap\",\n }}\n >\n {httpErrorToString(error)}\n </div>\n ),\n okText: i18next.t(`${NS_BRICK_KIT}:${K.MODAL_OK}`),\n });\n}\n\nexport function LoginTimeoutMessage(): React.ReactElement {\n React.useEffect(() => {\n // Unset confirm modal when it's destroyed.\n return () => {\n unauthenticatedConfirmModal = undefined;\n };\n }, []);\n return <div>{i18next.t(`${NS_BRICK_KIT}:${K.LOGIN_TIMEOUT_MESSAGE}`)}</div>;\n}\n","import {\n PluginWebSocketMessageTopic,\n PluginWebSocketMessage,\n PluginWebSocketMessageEvent,\n} from \"./interfaces\";\n\nexport class WebsocketMessageRequest {\n topic: string;\n data: string;\n event: PluginWebSocketMessageEvent;\n message: PluginWebSocketMessage<PluginWebSocketMessageTopic>;\n constructor(\n event: PluginWebSocketMessageEvent,\n topic: PluginWebSocketMessageTopic\n ) {\n this.event = event;\n this.topic = JSON.stringify(topic);\n this.message = {\n event: event,\n payload: topic,\n };\n this.data = JSON.stringify(this.message);\n }\n\n get identity(): string {\n const { system, topic } = this.message.payload;\n return JSON.stringify({\n system,\n topic,\n event: this.event,\n });\n }\n}\n","import {\n BrickEventHandlerCallback,\n PluginRuntimeContext,\n} from \"@next-core/brick-types\";\nimport { RuntimeBrick } from \"../../core/BrickNode\";\n\nexport interface PluginWebSocketOptions {\n url: string;\n reconnectTimeout?: number;\n retryLimit?: number | null;\n}\n\nexport enum PluginWebSocketMessageEvent {\n START_SESSION = \"SYSTEM.START_SESSION\",\n SESSION_STARTED = \"SYSTEM.SESSION_STARTED\",\n SESSION_FINISHED = \"SYSTEM.SESSION_FINISHED\",\n SESSION_RESTORE = \"SYSTEM.SESSION_RESTORE\",\n SESSION_RESTORE_SUCCESS = \"SYSTEM.SESSION_RESTORE_SUCCESS\",\n SESSION_RESTORE_FAILED = \"SYSTEM.SESSION_RESTORE_FAILED\",\n SUB = \"TOPIC.SUB\",\n SUB_SUCCESS = \"TOPIC.SUB_SUCCESS\",\n SUB_FAILED = \"TOPIC.SUB_FAILED\",\n UNSUB = \"TOPIC.UNSUB\",\n UNSUB_SUCCESS = \"TOPIC.UNSUB_SUCCESS\",\n UNSUB_FAILED = \"TOPIC.UNSUB_FAILED\",\n MESSAGE_PUSH = \"MESSAGE.PUSH\",\n}\n\nexport interface PluginWebSocketMessage<T> {\n event: PluginWebSocketMessageEvent;\n sessionId?: string;\n payload: T;\n}\n\nexport interface PluginWebSocketMessageTopic {\n source?: string;\n system: string;\n topic: string;\n}\n\nexport interface PluginWebSocketMessageResponsePayload\n extends PluginWebSocketMessageTopic {\n expire: number;\n message: Record<string, any>;\n}\n\nexport interface MessageBrickEventHandlerCallback\n extends Pick<BrickEventHandlerCallback, \"success\" | \"error\"> {\n runtimeBrick: RuntimeBrick;\n context: PluginRuntimeContext;\n}\n","import {\n PluginWebSocketMessage,\n PluginWebSocketMessageEvent,\n PluginWebSocketMessageResponsePayload,\n} from \"./interfaces\";\n\nexport class WebsocketMessageResponse {\n topic: string;\n data: string;\n event: PluginWebSocketMessageEvent;\n message: PluginWebSocketMessage<PluginWebSocketMessageResponsePayload>;\n\n constructor(response: string) {\n this.data = response;\n this.message = JSON.parse(response);\n this.event = this.message.event;\n const { system, topic } = this.message.payload;\n this.topic = JSON.stringify({ system, topic });\n }\n\n get identity(): string {\n const { system, topic } = this.message.payload;\n let event;\n switch (this.event) {\n case PluginWebSocketMessageEvent.SUB_SUCCESS:\n case PluginWebSocketMessageEvent.SUB_FAILED:\n event = PluginWebSocketMessageEvent.SUB;\n break;\n case PluginWebSocketMessageEvent.UNSUB_SUCCESS:\n case PluginWebSocketMessageEvent.UNSUB_FAILED:\n event = PluginWebSocketMessageEvent.UNSUB;\n break;\n default:\n event = this.event;\n }\n return JSON.stringify({\n system,\n topic,\n event,\n });\n }\n}\n","import { PluginWebSocketOptions } from \"./interfaces\";\nimport { WebsocketMessageResponse } from \"./WebsocketMessageResponse\";\n\nexport class WebSocketService {\n private retryCount = 0;\n private ws: WebSocket = null;\n private lockReconnect = false;\n public options: PluginWebSocketOptions;\n private messageQueue: Set<string> = new Set();\n public state: \"initial\" | \"connecting\" | \"pending\" | \"finished\" = \"initial\";\n\n private readonly defaultOptions: PluginWebSocketOptions = {\n url: null,\n reconnectTimeout: 1000,\n retryLimit: 6,\n };\n\n constructor(options: PluginWebSocketOptions) {\n this.options = { ...this.defaultOptions, ...options };\n this.createWebSocket();\n }\n\n get readyState(): number {\n return this.ws.readyState;\n }\n\n createWebSocket(): void {\n try {\n this.ws = new WebSocket(this.options.url);\n this.state = \"connecting\";\n this.init();\n } catch (e) {\n this.reconnect();\n /* istanbul ignore next */\n throw e;\n }\n }\n\n private init(): void {\n this.ws.onopen = () => {\n this.state = \"pending\";\n this.sendQueuedMessages();\n this.onOpen();\n this.retryCount = 0;\n this.options.reconnectTimeout = this.defaultOptions.reconnectTimeout;\n };\n\n this.ws.onclose = (event: CloseEvent) => {\n if (this.state === \"finished\") {\n this.onClose(event);\n // eslint-disable-next-line no-console\n console.warn(\"WebSocket was closed.\", event);\n }\n // Error code 1000 means that the connection was closed normally.\n // Try to reconnect.\n if (event.code !== 1000) {\n /* istanbul ignore if */\n if (!navigator.onLine) {\n // eslint-disable-next-line no-console\n console.error(\n \"You are offline. Please connect to the Internet and try again.\"\n );\n }\n this.reconnect();\n }\n };\n\n this.ws.onerror = (event: Event) => {\n this.onError(event);\n\n // eslint-disable-next-line no-console\n console.log(\"WebSocket encountered error: \", event);\n this.reconnect();\n };\n\n this.ws.onmessage = (event: MessageEvent) => {\n const response = new WebsocketMessageResponse(event.data);\n this.onMessage(response);\n };\n }\n\n private sendQueuedMessages(): void {\n if (this.messageQueue.size > 0) {\n [...this.messageQueue].forEach((message) => {\n this.messageQueue.delete(message);\n this.send(message);\n });\n }\n }\n\n send(data: string): void {\n if (this.readyState === WebSocket.OPEN) {\n this.ws.send(data);\n } else {\n this.messageQueue.add(data);\n }\n }\n\n reconnect(): void {\n if (\n this.options.retryLimit > 0 &&\n this.options.retryLimit <= this.retryCount\n ) {\n this.state = \"finished\";\n return;\n }\n if (this.lockReconnect) return;\n\n this.lockReconnect = true;\n this.retryCount++;\n this.onReconnect();\n\n // eslint-disable-next-line no-console\n console.warn(\"WebSocket server reconnecting...\");\n setTimeout(() => {\n this.createWebSocket();\n this.lockReconnect = false;\n this.options.reconnectTimeout = this.options.reconnectTimeout * 2;\n }, this.options.reconnectTimeout);\n }\n\n close(): void {\n this.ws.close();\n }\n\n // Override hook function\n /* eslint-disable @typescript-eslint/no-empty-function */\n\n onOpen(): void {}\n\n // istanbul ignore next\n onClose(event: CloseEvent): void {}\n\n onError(event: Event): void {}\n\n onMessage(message: WebsocketMessageResponse): void {}\n\n onReconnect(): void {}\n /* eslint-enable @typescript-eslint/no-empty-function */\n}\n","import { getBasePath } from \"../internal/getBasePath\";\nimport { WebSocketService } from \"./WebSocketService\";\n\nlet websocket: WebSocketService;\n\nexport const createWebSocket = (): WebSocketService => {\n if (!websocket) {\n const protocol = window.location.protocol === \"https:\" ? \"wss:\" : \"ws:\";\n websocket = new WebSocketService({\n url: `${protocol}//${\n window.location.host\n }${getBasePath()}api/websocket_service/v1/ws`,\n });\n }\n return websocket;\n};\n\nexport function getWebSocket(): WebSocketService {\n return websocket;\n}\n","module.exports = function (xs, fn) {\n var res = [];\n for (var i = 0; i < xs.length; i++) {\n var x = fn(xs[i], i);\n if (isArray(x)) res.push.apply(res, x);\n else res.push(x);\n }\n return res;\n};\n\nvar isArray = Array.isArray || function (xs) {\n return Object.prototype.toString.call(xs) === '[object Array]';\n};\n","'use strict';\nmodule.exports = balanced;\nfunction balanced(a, b, str) {\n if (a instanceof RegExp) a = maybeMatch(a, str);\n if (b instanceof RegExp) b = maybeMatch(b, str);\n\n var r = range(a, b, str);\n\n return r && {\n start: r[0],\n end: r[1],\n pre: str.slice(0, r[0]),\n body: str.slice(r[0] + a.length, r[1]),\n post: str.slice(r[1] + b.length)\n };\n}\n\nfunction maybeMatch(reg, str) {\n var m = str.match(reg);\n return m ? m[0] : null;\n}\n\nbalanced.range = range;\nfunction range(a, b, str) {\n var begs, beg, left, right, result;\n var ai = str.indexOf(a);\n var bi = str.indexOf(b, ai + 1);\n var i = ai;\n\n if (ai >= 0 && bi > 0) {\n begs = [];\n left = str.length;\n\n while (i >= 0 && !result) {\n if (i == ai) {\n begs.push(i);\n ai = str.indexOf(a, i + 1);\n } else if (begs.length == 1) {\n result = [ begs.pop(), bi ];\n } else {\n beg = begs.pop();\n if (beg < left) {\n left = beg;\n right = bi;\n }\n\n bi = str.indexOf(b, i + 1);\n }\n\n i = ai < bi && ai >= 0 ? ai : bi;\n }\n\n if (begs.length) {\n result = [ left, right ];\n }\n }\n\n return result;\n}\n","var concatMap = require('concat-map');\nvar balanced = require('balanced-match');\n\nmodule.exports = expandTop;\n\nvar escSlash = '\\0SLASH'+Math.random()+'\\0';\nvar escOpen = '\\0OPEN'+Math.random()+'\\0';\nvar escClose = '\\0CLOSE'+Math.random()+'\\0';\nvar escComma = '\\0COMMA'+Math.random()+'\\0';\nvar escPeriod = '\\0PERIOD'+Math.random()+'\\0';\n\nfunction numeric(str) {\n return parseInt(str, 10) == str\n ? parseInt(str, 10)\n : str.charCodeAt(0);\n}\n\nfunction escapeBraces(str) {\n return str.split('\\\\\\\\').join(escSlash)\n .split('\\\\{').join(escOpen)\n .split('\\\\}').join(escClose)\n .split('\\\\,').join(escComma)\n .split('\\\\.').join(escPeriod);\n}\n\nfunction unescapeBraces(str) {\n return str.split(escSlash).join('\\\\')\n .split(escOpen).join('{')\n .split(escClose).join('}')\n .split(escComma).join(',')\n .split(escPeriod).join('.');\n}\n\n\n// Basically just str.split(\",\"), but handling cases\n// where we have nested braced sections, which should be\n// treated as individual members, like {a,{b,c},d}\nfunction parseCommaParts(str) {\n if (!str)\n return [''];\n\n var parts = [];\n var m = balanced('{', '}', str);\n\n if (!m)\n return str.split(',');\n\n var pre = m.pre;\n var body = m.body;\n var post = m.post;\n var p = pre.split(',');\n\n p[p.length-1] += '{' + body + '}';\n var postParts = parseCommaParts(post);\n if (post.length) {\n p[p.length-1] += postParts.shift();\n p.push.apply(p, postParts);\n }\n\n parts.push.apply(parts, p);\n\n return parts;\n}\n\nfunction expandTop(str) {\n if (!str)\n return [];\n\n // I don't know why Bash 4.3 does this, but it does.\n // Anything starting with {} will have the first two bytes preserved\n // but *only* at the top level, so {},a}b will not expand to anything,\n // but a{},b}c will be expanded to [a}c,abc].\n // One could argue that this is a bug in Bash, but since the goal of\n // this module is to match Bash's rules, we escape a leading {}\n if (str.substr(0, 2) === '{}') {\n str = '\\\\{\\\\}' + str.substr(2);\n }\n\n return expand(escapeBraces(str), true).map(unescapeBraces);\n}\n\nfunction identity(e) {\n return e;\n}\n\nfunction embrace(str) {\n return '{' + str + '}';\n}\nfunction isPadded(el) {\n return /^-?0\\d/.test(el);\n}\n\nfunction lte(i, y) {\n return i <= y;\n}\nfunction gte(i, y) {\n return i >= y;\n}\n\nfunction expand(str, isTop) {\n var expansions = [];\n\n var m = balanced('{', '}', str);\n if (!m || /\\$$/.test(m.pre)) return [str];\n\n var isNumericSequence = /^-?\\d+\\.\\.-?\\d+(?:\\.\\.-?\\d+)?$/.test(m.body);\n var isAlphaSequence = /^[a-zA-Z]\\.\\.[a-zA-Z](?:\\.\\.-?\\d+)?$/.test(m.body);\n var isSequence = isNumericSequence || isAlphaSequence;\n var isOptions = m.body.indexOf(',') >= 0;\n if (!isSequence && !isOptions) {\n // {a},b}\n if (m.post.match(/,.*\\}/)) {\n str = m.pre + '{' + m.body + escClose + m.post;\n return expand(str);\n }\n return [str];\n }\n\n var n;\n if (isSequence) {\n n = m.body.split(/\\.\\./);\n } else {\n n = parseCommaParts(m.body);\n if (n.length === 1) {\n // x{{a,b}}y ==> x{a}y x{b}y\n n = expand(n[0], false).map(embrace);\n if (n.length === 1) {\n var post = m.post.length\n ? expand(m.post, false)\n : [''];\n return post.map(function(p) {\n return m.pre + n[0] + p;\n });\n }\n }\n }\n\n // at this point, n is the parts, and we know it's not a comma set\n // with a single entry.\n\n // no need to expand pre, since it is guaranteed to be free of brace-sets\n var pre = m.pre;\n var post = m.post.length\n ? expand(m.post, false)\n : [''];\n\n var N;\n\n if (isSequence) {\n var x = numeric(n[0]);\n var y = numeric(n[1]);\n var width = Math.max(n[0].length, n[1].length)\n var incr = n.length == 3\n ? Math.abs(numeric(n[2]))\n : 1;\n var test = lte;\n var reverse = y < x;\n if (reverse) {\n incr *= -1;\n test = gte;\n }\n var pad = n.some(isPadded);\n\n N = [];\n\n for (var i = x; test(i, y); i += incr) {\n var c;\n if (isAlphaSequence) {\n c = String.fromCharCode(i);\n if (c === '\\\\')\n c = '';\n } else {\n c = String(i);\n if (pad) {\n var need = width - c.length;\n if (need > 0) {\n var z = new Array(need + 1).join('0');\n if (i < 0)\n c = '-' + z + c.slice(1);\n else\n c = z + c;\n }\n }\n }\n N.push(c);\n }\n } else {\n N = concatMap(n, function(el) { return expand(el, false) });\n }\n\n for (var j = 0; j < N.length; j++) {\n for (var k = 0; k < post.length; k++) {\n var expansion = pre + N[j] + post[k];\n if (!isTop || isSequence || expansion)\n expansions.push(expansion);\n }\n }\n\n return expansions;\n}\n\n","module.exports = minimatch\nminimatch.Minimatch = Minimatch\n\nvar path = (function () { try { return require('path') } catch (e) {}}()) || {\n sep: '/'\n}\nminimatch.sep = path.sep\n\nvar GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}\nvar expand = require('brace-expansion')\n\nvar plTypes = {\n '!': { open: '(?:(?!(?:', close: '))[^/]*?)'},\n '?': { open: '(?:', close: ')?' },\n '+': { open: '(?:', close: ')+' },\n '*': { open: '(?:', close: ')*' },\n '@': { open: '(?:', close: ')' }\n}\n\n// any single thing other than /\n// don't need to escape / when using new RegExp()\nvar qmark = '[^/]'\n\n// * => any number of characters\nvar star = qmark + '*?'\n\n// ** when dots are allowed. Anything goes, except .. and .\n// not (^ or / followed by one or two dots followed by $ or /),\n// followed by anything, any number of times.\nvar twoStarDot = '(?:(?!(?:\\\\\\/|^)(?:\\\\.{1,2})($|\\\\\\/)).)*?'\n\n// not a ^ or / followed by a dot,\n// followed by anything, any number of times.\nvar twoStarNoDot = '(?:(?!(?:\\\\\\/|^)\\\\.).)*?'\n\n// characters that need to be escaped in RegExp.\nvar reSpecials = charSet('().*{}+?[]^$\\\\!')\n\n// \"abc\" -> { a:true, b:true, c:true }\nfunction charSet (s) {\n return s.split('').reduce(function (set, c) {\n set[c] = true\n return set\n }, {})\n}\n\n// normalizes slashes.\nvar slashSplit = /\\/+/\n\nminimatch.filter = filter\nfunction filter (pattern, options) {\n options = options || {}\n return function (p, i, list) {\n return minimatch(p, pattern, options)\n }\n}\n\nfunction ext (a, b) {\n b = b || {}\n var t = {}\n Object.keys(a).forEach(function (k) {\n t[k] = a[k]\n })\n Object.keys(b).forEach(function (k) {\n t[k] = b[k]\n })\n return t\n}\n\nminimatch.defaults = function (def) {\n if (!def || typeof def !== 'object' || !Object.keys(def).length) {\n return minimatch\n }\n\n var orig = minimatch\n\n var m = function minimatch (p, pattern, options) {\n return orig(p, pattern, ext(def, options))\n }\n\n m.Minimatch = function Minimatch (pattern, options) {\n return new orig.Minimatch(pattern, ext(def, options))\n }\n m.Minimatch.defaults = function defaults (options) {\n return orig.defaults(ext(def, options)).Minimatch\n }\n\n m.filter = function filter (pattern, options) {\n return orig.filter(pattern, ext(def, options))\n }\n\n m.defaults = function defaults (options) {\n return orig.defaults(ext(def, options))\n }\n\n m.makeRe = function makeRe (pattern, options) {\n return orig.makeRe(pattern, ext(def, options))\n }\n\n m.braceExpand = function braceExpand (pattern, options) {\n return orig.braceExpand(pattern, ext(def, options))\n }\n\n m.match = function (list, pattern, options) {\n return orig.match(list, pattern, ext(def, options))\n }\n\n return m\n}\n\nMinimatch.defaults = function (def) {\n return minimatch.defaults(def).Minimatch\n}\n\nfunction minimatch (p, pattern, options) {\n assertValidPattern(pattern)\n\n if (!options) options = {}\n\n // shortcut: comments match nothing.\n if (!options.nocomment && pattern.charAt(0) === '#') {\n return false\n }\n\n return new Minimatch(pattern, options).match(p)\n}\n\nfunction Minimatch (pattern, options) {\n if (!(this instanceof Minimatch)) {\n return new Minimatch(pattern, options)\n }\n\n assertValidPattern(pattern)\n\n if (!options) options = {}\n\n pattern = pattern.trim()\n\n // windows support: need to use /, not \\\n if (!options.allowWindowsEscape && path.sep !== '/') {\n pattern = pattern.split(path.sep).join('/')\n }\n\n this.options = options\n this.set = []\n this.pattern = pattern\n this.regexp = null\n this.negate = false\n this.comment = false\n this.empty = false\n this.partial = !!options.partial\n\n // make the set of regexps etc.\n this.make()\n}\n\nMinimatch.prototype.debug = function () {}\n\nMinimatch.prototype.make = make\nfunction make () {\n var pattern = this.pattern\n var options = this.options\n\n // empty patterns and comments match nothing.\n if (!options.nocomment && pattern.charAt(0) === '#') {\n this.comment = true\n return\n }\n if (!pattern) {\n this.empty = true\n return\n }\n\n // step 1: figure out negation, etc.\n this.parseNegate()\n\n // step 2: expand braces\n var set = this.globSet = this.braceExpand()\n\n if (options.debug) this.debug = function debug() { console.error.apply(console, arguments) }\n\n this.debug(this.pattern, set)\n\n // step 3: now we have a set, so turn each one into a series of path-portion\n // matching patterns.\n // These will be regexps, except in the case of \"**\", which is\n // set to the GLOBSTAR object for globstar behavior,\n // and will not contain any / characters\n set = this.globParts = set.map(function (s) {\n return s.split(slashSplit)\n })\n\n this.debug(this.pattern, set)\n\n // glob --> regexps\n set = set.map(function (s, si, set) {\n return s.map(this.parse, this)\n }, this)\n\n this.debug(this.pattern, set)\n\n // filter out everything that didn't compile properly.\n set = set.filter(function (s) {\n return s.indexOf(false) === -1\n })\n\n this.debug(this.pattern, set)\n\n this.set = set\n}\n\nMinimatch.prototype.parseNegate = parseNegate\nfunction parseNegate () {\n var pattern = this.pattern\n var negate = false\n var options = this.options\n var negateOffset = 0\n\n if (options.nonegate) return\n\n for (var i = 0, l = pattern.length\n ; i < l && pattern.charAt(i) === '!'\n ; i++) {\n negate = !negate\n negateOffset++\n }\n\n if (negateOffset) this.pattern = pattern.substr(negateOffset)\n this.negate = negate\n}\n\n// Brace expansion:\n// a{b,c}d -> abd acd\n// a{b,}c -> abc ac\n// a{0..3}d -> a0d a1d a2d a3d\n// a{b,c{d,e}f}g -> abg acdfg acefg\n// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg\n//\n// Invalid sets are not expanded.\n// a{2..}b -> a{2..}b\n// a{b}c -> a{b}c\nminimatch.braceExpand = function (pattern, options) {\n return braceExpand(pattern, options)\n}\n\nMinimatch.prototype.braceExpand = braceExpand\n\nfunction braceExpand (pattern, options) {\n if (!options) {\n if (this instanceof Minimatch) {\n options = this.options\n } else {\n options = {}\n }\n }\n\n pattern = typeof pattern === 'undefined'\n ? this.pattern : pattern\n\n assertValidPattern(pattern)\n\n // Thanks to Yeting Li <https://github.com/yetingli> for\n // improving this regexp to avoid a ReDOS vulnerability.\n if (options.nobrace || !/\\{(?:(?!\\{).)*\\}/.test(pattern)) {\n // shortcut. no need to expand.\n return [pattern]\n }\n\n return expand(pattern)\n}\n\nvar MAX_PATTERN_LENGTH = 1024 * 64\nvar assertValidPattern = function (pattern) {\n if (typeof pattern !== 'string') {\n throw new TypeError('invalid pattern')\n }\n\n if (pattern.length > MAX_PATTERN_LENGTH) {\n throw new TypeError('pattern is too long')\n }\n}\n\n// parse a component of the expanded set.\n// At this point, no pattern may contain \"/\" in it\n// so we're going to return a 2d array, where each entry is the full\n// pattern, split on '/', and then turned into a regular expression.\n// A regexp is made at the end which joins each array with an\n// escaped /, and another full one which joins each regexp with |.\n//\n// Following the lead of Bash 4.1, note that \"**\" only has special meaning\n// when it is the *only* thing in a path portion. Otherwise, any series\n// of * is equivalent to a single *. Globstar behavior is enabled by\n// default, and can be disabled by setting options.noglobstar.\nMinimatch.prototype.parse = parse\nvar SUBPARSE = {}\nfunction parse (pattern, isSub) {\n assertValidPattern(pattern)\n\n var options = this.options\n\n // shortcuts\n if (pattern === '**') {\n if (!options.noglobstar)\n return GLOBSTAR\n else\n pattern = '*'\n }\n if (pattern === '') return ''\n\n var re = ''\n var hasMagic = !!options.nocase\n var escaping = false\n // ? => one single character\n var patternListStack = []\n var negativeLists = []\n var stateChar\n var inClass = false\n var reClassStart = -1\n var classStart = -1\n // . and .. never match anything that doesn't start with .,\n // even when options.dot is set.\n var patternStart = pattern.charAt(0) === '.' ? '' // anything\n // not (start or / followed by . or .. followed by / or end)\n : options.dot ? '(?!(?:^|\\\\\\/)\\\\.{1,2}(?:$|\\\\\\/))'\n : '(?!\\\\.)'\n var self = this\n\n function clearStateChar () {\n if (stateChar) {\n // we had some state-tracking character\n // that wasn't consumed by this pass.\n switch (stateChar) {\n case '*':\n re += star\n hasMagic = true\n break\n case '?':\n re += qmark\n hasMagic = true\n break\n default:\n re += '\\\\' + stateChar\n break\n }\n self.debug('clearStateChar %j %j', stateChar, re)\n stateChar = false\n }\n }\n\n for (var i = 0, len = pattern.length, c\n ; (i < len) && (c = pattern.charAt(i))\n ; i++) {\n this.debug('%s\\t%s %s %j', pattern, i, re, c)\n\n // skip over any that are escaped.\n if (escaping && reSpecials[c]) {\n re += '\\\\' + c\n escaping = false\n continue\n }\n\n switch (c) {\n /* istanbul ignore next */\n case '/': {\n // completely not allowed, even escaped.\n // Should already be path-split by now.\n return false\n }\n\n case '\\\\':\n clearStateChar()\n escaping = true\n continue\n\n // the various stateChar values\n // for the \"extglob\" stuff.\n case '?':\n case '*':\n case '+':\n case '@':\n case '!':\n this.debug('%s\\t%s %s %j <-- stateChar', pattern, i, re, c)\n\n // all of those are literals inside a class, except that\n // the glob [!a] means [^a] in regexp\n if (inClass) {\n this.debug(' in class')\n if (c === '!' && i === classStart + 1) c = '^'\n re += c\n continue\n }\n\n // if we already have a stateChar, then it means\n // that there was something like ** or +? in there.\n // Handle the stateChar, then proceed with this one.\n self.debug('call clearStateChar %j', stateChar)\n clearStateChar()\n stateChar = c\n // if extglob is disabled, then +(asdf|foo) isn't a thing.\n // just clear the statechar *now*, rather than even diving into\n // the patternList stuff.\n if (options.noext) clearStateChar()\n continue\n\n case '(':\n if (inClass) {\n re += '('\n continue\n }\n\n if (!stateChar) {\n re += '\\\\('\n continue\n }\n\n patternListStack.push({\n type: stateChar,\n start: i - 1,\n reStart: re.length,\n open: plTypes[stateChar].open,\n close: plTypes[stateChar].close\n })\n // negation is (?:(?!js)[^/]*)\n re += stateChar === '!' ? '(?:(?!(?:' : '(?:'\n this.debug('plType %j %j', stateChar, re)\n stateChar = false\n continue\n\n case ')':\n if (inClass || !patternListStack.length) {\n re += '\\\\)'\n continue\n }\n\n clearStateChar()\n hasMagic = true\n var pl = patternListStack.pop()\n // negation is (?:(?!js)[^/]*)\n // The others are (?:<pattern>)<type>\n re += pl.close\n if (pl.type === '!') {\n negativeLists.push(pl)\n }\n pl.reEnd = re.length\n continue\n\n case '|':\n if (inClass || !patternListStack.length || escaping) {\n re += '\\\\|'\n escaping = false\n continue\n }\n\n clearStateChar()\n re += '|'\n continue\n\n // these are mostly the same in regexp and glob\n case '[':\n // swallow any state-tracking char before the [\n clearStateChar()\n\n if (inClass) {\n re += '\\\\' + c\n continue\n }\n\n inClass = true\n classStart = i\n reClassStart = re.length\n re += c\n continue\n\n case ']':\n // a right bracket shall lose its special\n // meaning and represent itself in\n // a bracket expression if it occurs\n // first in the list. -- POSIX.2 2.8.3.2\n if (i === classStart + 1 || !inClass) {\n re += '\\\\' + c\n escaping = false\n continue\n }\n\n // handle the case where we left a class open.\n // \"[z-a]\" is valid, equivalent to \"\\[z-a\\]\"\n // split where the last [ was, make sure we don't have\n // an invalid re. if so, re-walk the contents of the\n // would-be class to re-translate any characters that\n // were passed through as-is\n // TODO: It would probably be faster to determine this\n // without a try/catch and a new RegExp, but it's tricky\n // to do safely. For now, this is safe and works.\n var cs = pattern.substring(classStart + 1, i)\n try {\n RegExp('[' + cs + ']')\n } catch (er) {\n // not a valid class!\n var sp = this.parse(cs, SUBPARSE)\n re = re.substr(0, reClassStart) + '\\\\[' + sp[0] + '\\\\]'\n hasMagic = hasMagic || sp[1]\n inClass = false\n continue\n }\n\n // finish up the class.\n hasMagic = true\n inClass = false\n re += c\n continue\n\n default:\n // swallow any state char that wasn't consumed\n clearStateChar()\n\n if (escaping) {\n // no need\n escaping = false\n } else if (reSpecials[c]\n && !(c === '^' && inClass)) {\n re += '\\\\'\n }\n\n re += c\n\n } // switch\n } // for\n\n // handle the case where we left a class open.\n // \"[abc\" is valid, equivalent to \"\\[abc\"\n if (inClass) {\n // split where the last [ was, and escape it\n // this is a huge pita. We now have to re-walk\n // the contents of the would-be class to re-translate\n // any characters that were passed through as-is\n cs = pattern.substr(classStart + 1)\n sp = this.parse(cs, SUBPARSE)\n re = re.substr(0, reClassStart) + '\\\\[' + sp[0]\n hasMagic = hasMagic || sp[1]\n }\n\n // handle the case where we had a +( thing at the *end*\n // of the pattern.\n // each pattern list stack adds 3 chars, and we need to go through\n // and escape any | chars that were passed through as-is for the regexp.\n // Go through and escape them, taking care not to double-escape any\n // | chars that were already escaped.\n for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) {\n var tail = re.slice(pl.reStart + pl.open.length)\n this.debug('setting tail', re, pl)\n // maybe some even number of \\, then maybe 1 \\, followed by a |\n tail = tail.replace(/((?:\\\\{2}){0,64})(\\\\?)\\|/g, function (_, $1, $2) {\n if (!$2) {\n // the | isn't already escaped, so escape it.\n $2 = '\\\\'\n }\n\n // need to escape all those slashes *again*, without escaping the\n // one that we need for escaping the | character. As it works out,\n // escaping an even number of slashes can be done by simply repeating\n // it exactly after itself. That's why this trick works.\n //\n // I am sorry that you have to see this.\n return $1 + $1 + $2 + '|'\n })\n\n this.debug('tail=%j\\n %s', tail, tail, pl, re)\n var t = pl.type === '*' ? star\n : pl.type === '?' ? qmark\n : '\\\\' + pl.type\n\n hasMagic = true\n re = re.slice(0, pl.reStart) + t + '\\\\(' + tail\n }\n\n // handle trailing things that only matter at the very end.\n clearStateChar()\n if (escaping) {\n // trailing \\\\\n re += '\\\\\\\\'\n }\n\n // only need to apply the nodot start if the re starts with\n // something that could conceivably capture a dot\n var addPatternStart = false\n switch (re.charAt(0)) {\n case '[': case '.': case '(': addPatternStart = true\n }\n\n // Hack to work around lack of negative lookbehind in JS\n // A pattern like: *.!(x).!(y|z) needs to ensure that a name\n // like 'a.xyz.yz' doesn't match. So, the first negative\n // lookahead, has to look ALL the way ahead, to the end of\n // the pattern.\n for (var n = negativeLists.length - 1; n > -1; n--) {\n var nl = negativeLists[n]\n\n var nlBefore = re.slice(0, nl.reStart)\n var nlFirst = re.slice(nl.reStart, nl.reEnd - 8)\n var nlLast = re.slice(nl.reEnd - 8, nl.reEnd)\n var nlAfter = re.slice(nl.reEnd)\n\n nlLast += nlAfter\n\n // Handle nested stuff like *(*.js|!(*.json)), where open parens\n // mean that we should *not* include the ) in the bit that is considered\n // \"after\" the negated section.\n var openParensBefore = nlBefore.split('(').length - 1\n var cleanAfter = nlAfter\n for (i = 0; i < openParensBefore; i++) {\n cleanAfter = cleanAfter.replace(/\\)[+*?]?/, '')\n }\n nlAfter = cleanAfter\n\n var dollar = ''\n if (nlAfter === '' && isSub !== SUBPARSE) {\n dollar = '$'\n }\n var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast\n re = newRe\n }\n\n // if the re is not \"\" at this point, then we need to make sure\n // it doesn't match against an empty path part.\n // Otherwise a/* will match a/, which it should not.\n if (re !== '' && hasMagic) {\n re = '(?=.)' + re\n }\n\n if (addPatternStart) {\n re = patternStart + re\n }\n\n // parsing just a piece of a larger pattern.\n if (isSub === SUBPARSE) {\n return [re, hasMagic]\n }\n\n // skip the regexp for non-magical patterns\n // unescape anything in it, though, so that it'll be\n // an exact match against a file etc.\n if (!hasMagic) {\n return globUnescape(pattern)\n }\n\n var flags = options.nocase ? 'i' : ''\n try {\n var regExp = new RegExp('^' + re + '$', flags)\n } catch (er) /* istanbul ignore next - should be impossible */ {\n // If it was an invalid regular expression, then it can't match\n // anything. This trick looks for a character after the end of\n // the string, which is of course impossible, except in multi-line\n // mode, but it's not a /m regex.\n return new RegExp('$.')\n }\n\n regExp._glob = pattern\n regExp._src = re\n\n return regExp\n}\n\nminimatch.makeRe = function (pattern, options) {\n return new Minimatch(pattern, options || {}).makeRe()\n}\n\nMinimatch.prototype.makeRe = makeRe\nfunction makeRe () {\n if (this.regexp || this.regexp === false) return this.regexp\n\n // at this point, this.set is a 2d array of partial\n // pattern strings, or \"**\".\n //\n // It's better to use .match(). This function shouldn't\n // be used, really, but it's pretty convenient sometimes,\n // when you just want to work with a regex.\n var set = this.set\n\n if (!set.length) {\n this.regexp = false\n return this.regexp\n }\n var options = this.options\n\n var twoStar = options.noglobstar ? star\n : options.dot ? twoStarDot\n : twoStarNoDot\n var flags = options.nocase ? 'i' : ''\n\n var re = set.map(function (pattern) {\n return pattern.map(function (p) {\n return (p === GLOBSTAR) ? twoStar\n : (typeof p === 'string') ? regExpEscape(p)\n : p._src\n }).join('\\\\\\/')\n }).join('|')\n\n // must match entire pattern\n // ending in a * or ** will make it less strict.\n re = '^(?:' + re + ')$'\n\n // can match anything, as long as it's not this.\n if (this.negate) re = '^(?!' + re + ').*$'\n\n try {\n this.regexp = new RegExp(re, flags)\n } catch (ex) /* istanbul ignore next - should be impossible */ {\n this.regexp = false\n }\n return this.regexp\n}\n\nminimatch.match = function (list, pattern, options) {\n options = options || {}\n var mm = new Minimatch(pattern, options)\n list = list.filter(function (f) {\n return mm.match(f)\n })\n if (mm.options.nonull && !list.length) {\n list.push(pattern)\n }\n return list\n}\n\nMinimatch.prototype.match = function match (f, partial) {\n if (typeof partial === 'undefined') partial = this.partial\n this.debug('match', f, this.pattern)\n // short-circuit in the case of busted things.\n // comments, etc.\n if (this.comment) return false\n if (this.empty) return f === ''\n\n if (f === '/' && partial) return true\n\n var options = this.options\n\n // windows: need to use /, not \\\n if (path.sep !== '/') {\n f = f.split(path.sep).join('/')\n }\n\n // treat the test path as a set of pathparts.\n f = f.split(slashSplit)\n this.debug(this.pattern, 'split', f)\n\n // just ONE of the pattern sets in this.set needs to match\n // in order for it to be valid. If negating, then just one\n // match means that we have failed.\n // Either way, return on the first hit.\n\n var set = this.set\n this.debug(this.pattern, 'set', set)\n\n // Find the basename of the path by looking for the last non-empty segment\n var filename\n var i\n for (i = f.length - 1; i >= 0; i--) {\n filename = f[i]\n if (filename) break\n }\n\n for (i = 0; i < set.length; i++) {\n var pattern = set[i]\n var file = f\n if (options.matchBase && pattern.length === 1) {\n file = [filename]\n }\n var hit = this.matchOne(file, pattern, partial)\n if (hit) {\n if (options.flipNegate) return true\n return !this.negate\n }\n }\n\n // didn't get any hits. this is success if it's a negative\n // pattern, failure otherwise.\n if (options.flipNegate) return false\n return this.negate\n}\n\n// set partial to true to test if, for example,\n// \"/a/b\" matches the start of \"/*/b/*/d\"\n// Partial means, if you run out of file before you run\n// out of pattern, then that's fine, as long as all\n// the parts match.\nMinimatch.prototype.matchOne = function (file, pattern, partial) {\n var options = this.options\n\n this.debug('matchOne',\n { 'this': this, file: file, pattern: pattern })\n\n this.debug('matchOne', file.length, pattern.length)\n\n for (var fi = 0,\n pi = 0,\n fl = file.length,\n pl = pattern.length\n ; (fi < fl) && (pi < pl)\n ; fi++, pi++) {\n this.debug('matchOne loop')\n var p = pattern[pi]\n var f = file[fi]\n\n this.debug(pattern, p, f)\n\n // should be impossible.\n // some invalid regexp stuff in the set.\n /* istanbul ignore if */\n if (p === false) return false\n\n if (p === GLOBSTAR) {\n this.debug('GLOBSTAR', [pattern, p, f])\n\n // \"**\"\n // a/**/b/**/c would match the following:\n // a/b/x/y/z/c\n // a/x/y/z/b/c\n // a/b/x/b/x/c\n // a/b/c\n // To do this, take the rest of the pattern after\n // the **, and see if it would match the file remainder.\n // If so, return success.\n // If not, the ** \"swallows\" a segment, and try again.\n // This is recursively awful.\n //\n // a/**/b/**/c matching a/b/x/y/z/c\n // - a matches a\n // - doublestar\n // - matchOne(b/x/y/z/c, b/**/c)\n // - b matches b\n // - doublestar\n // - matchOne(x/y/z/c, c) -> no\n // - matchOne(y/z/c, c) -> no\n // - matchOne(z/c, c) -> no\n // - matchOne(c, c) yes, hit\n var fr = fi\n var pr = pi + 1\n if (pr === pl) {\n this.debug('** at the end')\n // a ** at the end will just swallow the rest.\n // We have found a match.\n // however, it will not swallow /.x, unless\n // options.dot is set.\n // . and .. are *never* matched by **, for explosively\n // exponential reasons.\n for (; fi < fl; fi++) {\n if (file[fi] === '.' || file[fi] === '..' ||\n (!options.dot && file[fi].charAt(0) === '.')) return false\n }\n return true\n }\n\n // ok, let's see if we can swallow whatever we can.\n while (fr < fl) {\n var swallowee = file[fr]\n\n this.debug('\\nglobstar while', file, fr, pattern, pr, swallowee)\n\n // XXX remove this slice. Just pass the start index.\n if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {\n this.debug('globstar found match!', fr, fl, swallowee)\n // found a match.\n return true\n } else {\n // can't swallow \".\" or \"..\" ever.\n // can only swallow \".foo\" when explicitly asked.\n if (swallowee === '.' || swallowee === '..' ||\n (!options.dot && swallowee.charAt(0) === '.')) {\n this.debug('dot detected!', file, fr, pattern, pr)\n break\n }\n\n // ** swallows a segment, and continue.\n this.debug('globstar swallow a segment, and continue')\n fr++\n }\n }\n\n // no match was found.\n // However, in partial mode, we can't say this is necessarily over.\n // If there's more *pattern* left, then\n /* istanbul ignore if */\n if (partial) {\n // ran out of file\n this.debug('\\n>>> no match, partial?', file, fr, pattern, pr)\n if (fr === fl) return true\n }\n return false\n }\n\n // something other than **\n // non-magic patterns just have to match exactly\n // patterns with magic have been turned into regexps.\n var hit\n if (typeof p === 'string') {\n hit = f === p\n this.debug('string match', p, f, hit)\n } else {\n hit = f.match(p)\n this.debug('pattern match', p, f, hit)\n }\n\n if (!hit) return false\n }\n\n // Note: ending in / means that we'll get a final \"\"\n // at the end of the pattern. This can only match a\n // corresponding \"\" at the end of the file.\n // If the file ends in /, then it can only match a\n // a pattern that ends in /, unless the pattern just\n // doesn't have any more for it. But, a/b/ should *not*\n // match \"a/b/*\", even though \"\" matches against the\n // [^/]*? pattern, except in partial mode, where it might\n // simply not be reached yet.\n // However, a/b/ should still satisfy a/*\n\n // now either we fell off the end of the pattern, or we're done.\n if (fi === fl && pi === pl) {\n // ran out of pattern and filename at the same time.\n // an exact hit!\n return true\n } else if (fi === fl) {\n // ran out of file, but still had pattern left.\n // this is ok if we're doing the match as part of\n // a glob fs traversal.\n return partial\n } else /* istanbul ignore else */ if (pi === pl) {\n // ran out of pattern, still have file left.\n // this is only acceptable if we're on the very last\n // empty segment of a file with a trailing slash.\n // a/* should match a/b/\n return (fi === fl - 1) && (file[fi] === '')\n }\n\n // should be unreachable.\n /* istanbul ignore next */\n throw new Error('wtf?')\n}\n\n// replace stuff like \\* with *\nfunction globUnescape (s) {\n return s.replace(/\\\\(.)/g, '$1')\n}\n\nfunction regExpEscape (s) {\n return s.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&')\n}\n","import {\n BrickEventHandler,\n MessageConf,\n PluginRuntimeContext,\n} from \"@next-core/brick-types\";\nimport {\n WebsocketMessageRequest,\n WebsocketMessageResponse,\n} from \"../websocket\";\nimport {\n MessageBrickEventHandlerCallback,\n PluginWebSocketMessageEvent,\n PluginWebSocketMessageResponsePayload,\n PluginWebSocketMessageTopic,\n} from \"../websocket/interfaces\";\nimport { BrickAndMessage } from \"./LocationContext\";\nimport { listenerFactory } from \"../internal/bindListeners\";\nimport { createWebSocket } from \"../websocket/WebSocket\";\nimport minimatch from \"minimatch\";\nimport { WebSocketService } from \"../websocket/WebSocketService\";\nimport { _internalApiMessageCloseHandler } from \"./Runtime\";\nimport { RuntimeBrick } from \"./BrickNode\";\n\nlet messageDispatcher: MessageDispatcher;\n\nexport function createMessageDispatcher(): MessageDispatcher {\n messageDispatcher = new MessageDispatcher();\n\n return messageDispatcher;\n}\n\nexport function getMessageDispatcher(): MessageDispatcher {\n return messageDispatcher;\n}\n\nexport class MessageDispatcher {\n private ws: WebSocketService;\n private context: PluginRuntimeContext;\n private messages: Map<string, BrickAndMessage[]> = new Map<\n string,\n BrickAndMessage[]\n >();\n private messageCallbackHandlers: Map<\n string,\n MessageBrickEventHandlerCallback[]\n > = new Map();\n private channels: Map<string, string> = new Map();\n\n create(\n brickAndMessages: BrickAndMessage[],\n context: PluginRuntimeContext\n ): void {\n if (Array.isArray(brickAndMessages)) {\n for (const { brick, match, message } of brickAndMessages) {\n ([] as MessageConf[]).concat(message).forEach((massageConf) => {\n const channel = massageConf.channel;\n const handler = { brick, match, message };\n if (this.messages.has(channel)) {\n this.messages.set(channel, [\n ...this.messages.get(channel),\n handler,\n ]);\n } else {\n this.messages.set(channel, [handler]);\n }\n });\n }\n }\n this.context = context;\n }\n\n reset(): void {\n this.messages = new Map();\n this.messageCallbackHandlers = new Map();\n }\n\n subscribe(\n channel: string,\n topic: PluginWebSocketMessageTopic,\n callback?: MessageBrickEventHandlerCallback\n ): void {\n const req = new WebsocketMessageRequest(\n PluginWebSocketMessageEvent.SUB,\n topic\n );\n this.setMessageCallbackHandlers(req.identity, callback);\n\n // Prevent repeated subscriptions to the same topic.\n if (!this.channels.has(req.topic)) {\n this.channels.set(req.topic, channel);\n this.send(req.data);\n }\n }\n\n unsubscribe(\n channel: string,\n topic: PluginWebSocketMessageTopic,\n callback: MessageBrickEventHandlerCallback\n ): void {\n const t = this.getTopicByChannel(channel);\n if (!t) {\n // eslint-disable-next-line no-console\n console.error(`Message channel:\"${channel}\" not found. `);\n return;\n }\n const req = new WebsocketMessageRequest(\n PluginWebSocketMessageEvent.UNSUB,\n JSON.parse(t)\n );\n\n this.setMessageCallbackHandlers(req.identity, callback);\n this.send(req.data);\n this.channels.delete(t);\n }\n\n private getTopicByChannel(channel: string): string | undefined {\n return [...this.channels.entries()]\n .filter(([, v]) => v === channel)\n .map(([v]) => v)[0];\n }\n\n private send(data: string): void {\n if (!(this.ws instanceof WebSocketService)) {\n this.createWebsocketService();\n }\n this.ws.send(data);\n }\n\n private createWebsocketService(): void {\n this.ws = createWebSocket();\n this.ws.onMessage = (message) => {\n this.reducer(message);\n };\n this.ws.onClose = (event: CloseEvent) => {\n this.onClose(event);\n };\n }\n\n onClose(event: CloseEvent): void {\n _internalApiMessageCloseHandler(event);\n }\n\n setMessageCallbackHandlers(\n identity: string,\n callback: MessageBrickEventHandlerCallback\n ): void {\n if (this.messageCallbackHandlers.get(identity)) {\n this.messageCallbackHandlers.set(identity, [\n ...this.messageCallbackHandlers.get(identity),\n ...[].concat(callback).filter(Boolean),\n ]);\n } else {\n this.messageCallbackHandlers.set(\n identity,\n [].concat(callback).filter(Boolean)\n );\n }\n }\n\n private reducer(response: WebsocketMessageResponse): void {\n const { event, message, topic } = response;\n switch (event) {\n case PluginWebSocketMessageEvent.MESSAGE_PUSH: {\n this.messagePushHandler(topic, message?.payload);\n break;\n }\n case PluginWebSocketMessageEvent.SUB_SUCCESS: {\n this.messageSubscribeResponseEventHandler(\n response,\n \"success\",\n PluginWebSocketMessageEvent.SUB_SUCCESS\n );\n break;\n }\n case PluginWebSocketMessageEvent.SUB_FAILED: {\n this.messageSubscribeResponseEventHandler(\n response,\n \"error\",\n PluginWebSocketMessageEvent.SUB_FAILED\n );\n break;\n }\n case PluginWebSocketMessageEvent.UNSUB_SUCCESS: {\n this.messageSubscribeResponseEventHandler(\n response,\n \"success\",\n PluginWebSocketMessageEvent.UNSUB_SUCCESS\n );\n break;\n }\n case PluginWebSocketMessageEvent.UNSUB_FAILED: {\n this.messageSubscribeResponseEventHandler(\n response,\n \"error\",\n PluginWebSocketMessageEvent.UNSUB_FAILED\n );\n break;\n }\n default: {\n // eslint-disable-next-line no-console\n console.error(\"Unknown message event:\", event);\n }\n }\n }\n\n private dispatch(\n event: CustomEvent,\n brick: RuntimeBrick,\n context: PluginRuntimeContext,\n handlers: BrickEventHandler[]\n ): void {\n for (const handler of handlers.filter(Boolean)) {\n listenerFactory(handler, context, brick)(event);\n }\n }\n\n private getMessageHandlersByTopic(\n topic: PluginWebSocketMessageTopic\n ): BrickAndMessage[] {\n const finder = [...this.channels.keys()].find((key) => {\n const t = JSON.parse(key);\n // Support glob expressions\n return t.system === topic.system && minimatch(topic.topic, t.topic);\n });\n\n return this.messages.get(this.channels.get(finder));\n }\n private messagePushHandler(\n topic: string,\n payload: PluginWebSocketMessageResponsePayload\n ): void {\n const handlers = this.getMessageHandlersByTopic(JSON.parse(topic));\n\n if (Array.isArray(handlers)) {\n for (const brickAndMessage of handlers) {\n const event = new CustomEvent(\n PluginWebSocketMessageEvent.MESSAGE_PUSH,\n {\n detail: payload?.message,\n }\n );\n\n this.dispatch(\n event,\n brickAndMessage.brick,\n this.context,\n ([] as MessageConf[])\n .concat(brickAndMessage.message)\n .reduce((prev, curr) => prev.concat(curr?.handlers), [])\n );\n }\n }\n }\n\n private messageSubscribeResponseEventHandler(\n response: WebsocketMessageResponse,\n method: \"success\" | \"error\",\n event: PluginWebSocketMessageEvent\n ): void {\n const callbacks = this.messageCallbackHandlers.get(response.identity);\n if (Array.isArray(callbacks)) {\n for (const handler of callbacks) {\n const e = new CustomEvent(event, {\n detail: response.message,\n });\n\n this.dispatch(\n e,\n handler.runtimeBrick,\n handler.context,\n [].concat(handler?.[method]).filter(Boolean)\n );\n }\n }\n }\n}\n","import { ProviderPollOptions } from \"@next-core/brick-types\";\nimport { _internalApiGetRouterRenderId } from \"../core/Runtime\";\n\nexport type PollableCallbackFunction = (result?: unknown) => unknown;\n\nexport interface PollableCallback {\n progress?: PollableCallbackFunction;\n success?: PollableCallbackFunction;\n error?: PollableCallbackFunction;\n finally?: PollableCallbackFunction;\n}\n\nconst timeoutIdList = new Set<number>();\n\nexport function startPoll(\n task: () => unknown,\n { progress, success, error, finally: finallyCallback }: PollableCallback,\n {\n interval,\n leadingRequestDelay,\n continueOnError,\n delegateLoadingBar,\n expectPollEnd,\n expectPollStopImmediately,\n }: ProviderPollOptions\n): void {\n const currentRenderId = _internalApiGetRouterRenderId();\n let currentTimeoutId: number;\n async function poll(): Promise<void> {\n timeoutIdList.delete(currentTimeoutId);\n let shouldStop: boolean;\n try {\n shouldStop = expectPollStopImmediately?.();\n // Stop polling immediately when the expectation is match before task.\n if (!shouldStop) {\n const result = await task();\n // Stop polling immediately when the expectation is match or a different router\n // is rendering after the task processed.\n shouldStop =\n expectPollStopImmediately?.() ||\n currentRenderId !== _internalApiGetRouterRenderId();\n if (!shouldStop) {\n progress?.(result);\n if (expectPollEnd?.(result)) {\n if (delegateLoadingBar) {\n window.dispatchEvent(new CustomEvent(\"request.end\"));\n }\n success?.(result);\n finallyCallback?.();\n } else {\n delayedPoll(interval ?? 3000);\n }\n }\n }\n } catch (e) {\n // Stop polling immediately when the expectation is match or a different router\n // is rendering after the task processed.\n shouldStop =\n expectPollStopImmediately?.() ||\n currentRenderId !== _internalApiGetRouterRenderId();\n if (!shouldStop) {\n error?.(e);\n if (continueOnError) {\n delayedPoll(interval ?? 3000);\n } else {\n finallyCallback?.();\n }\n }\n } finally {\n // Manually dispatch an event of `request.end` when the polling is stopped immediately.\n if (delegateLoadingBar && shouldStop) {\n window.dispatchEvent(new CustomEvent(\"request.end\"));\n }\n }\n }\n\n function delayedPoll(delay: number): void {\n currentTimeoutId = setTimeout(poll, delay) as unknown as number;\n timeoutIdList.add(currentTimeoutId);\n }\n\n delayedPoll(leadingRequestDelay ?? 0);\n\n if (delegateLoadingBar) {\n window.dispatchEvent(new CustomEvent(\"request.start\"));\n }\n}\n\nexport function clearPollTimeout(): void {\n for (const timeoutId of timeoutIdList) {\n clearTimeout(timeoutId);\n }\n timeoutIdList.clear();\n}\n","import { Mocks, MockRule } from \"@next-core/brick-types/src/manifest\";\n\nlet mocks: Mocks = {\n mockId: null,\n mockList: [],\n};\n\nexport function registerMock(useMocks: Mocks): void {\n if (useMocks)\n mocks = {\n ...useMocks,\n mockList: useMocks.mockList?.map((item) => ({\n ...item,\n uri: item.uri\n .replace(/(easyops\\.api\\.)(.+?)\\/(.+)/, (_match, p1, p2, p3) => {\n return `(${p1})?${p2}(@\\\\d+\\\\.\\\\d+\\\\.\\\\d+)?/${p3}$`;\n })\n .replace(/:\\w+/g, \"([^/]+)\"),\n })),\n };\n}\n\nexport function getMockList(): MockRule[] {\n return mocks.mockList;\n}\n\nexport const getMockInfo = (\n requestUrl: string,\n method: string\n):\n | {\n url: string;\n mockId: string;\n }\n | undefined => {\n const transformGetMethod = (method: string): string => {\n if (method.toUpperCase() === \"LIST\") {\n return \"GET\";\n }\n return method?.toUpperCase();\n };\n const item = mocks.mockList.find(\n (item) =>\n new RegExp(item.uri).test(requestUrl) &&\n transformGetMethod(item.method) === method?.toUpperCase()\n );\n if (item) {\n return {\n url: requestUrl\n .replace(\n /(api\\/gateway\\/.+?)(@\\d+\\.\\d+\\.\\d+)?\\/(.+)/,\n (_match, p1, _p2, p3) => {\n return `${p1}/${p3}`;\n }\n )\n .replace(\n /(api\\/gateway)/,\n `api/gateway/mock_server.proxy.${mocks.mockId}`\n ),\n mockId: mocks.mockId,\n };\n }\n return;\n};\n","import { Contract } from \"@next-core/brick-types\";\n\nconst contractsMap: Map<string, Contract> = new Map();\n\nexport function collectContract(contracts: Contract[]): void {\n contracts?.forEach((contract) => {\n contractsMap.set(`${contract.namespaceId}.${contract.name}`, contract);\n });\n}\n\nexport function getContract(name: string): Contract {\n return contractsMap.get(name);\n}\n","import yaml from \"js-yaml\";\nimport { ContractApi_searchSingleContract } from \"@next-sdk/api-gateway-sdk\";\nimport { CustomApiDefinition, CustomApiProfile } from \"./interfaces\";\nimport { _internalApiGetMicroAppApiOrchestrationMap } from \"./Runtime\";\nimport { getMockList } from \"./MockRegistry\";\nimport { getContract } from \"./CollectContracts\";\nimport { InstanceApi_postSearchV3 } from \"@next-sdk/cmdb-sdk\";\n\nconst flowApiDefinitionPromiseMap = new Map<\n string,\n Promise<CustomApiDefinition>\n>();\n\n// Legacy Custom API: `${namespace}@${name}`\n// Flow API: `${namespace}@${name}:${version}`\nexport function isCustomApiProvider(provider: string): boolean {\n return provider.includes(\"@\");\n}\n\nexport async function getArgsOfCustomApi(\n provider: string,\n originalArgs: unknown[]\n): Promise<unknown[]> {\n if (!isCustomApiProvider(provider)) {\n return originalArgs;\n }\n\n const isFlowApi = provider.includes(\":\");\n\n const apiDefinition = isFlowApi\n ? await fetchFlowApiDefinition(provider)\n : (await _internalApiGetMicroAppApiOrchestrationMap()).get(provider);\n\n if (!apiDefinition) {\n throw new Error(\n `${isFlowApi ? \"Flow\" : \"Legacy Custom\"} API not found: \"${provider}\"`\n );\n }\n\n const apiProfile = getApiProfileFromApiDefinition(provider, apiDefinition);\n\n return getApiArgsFromApiProfile(apiProfile, originalArgs);\n}\n\nfunction getApiArgsFromApiProfile(\n {\n uri,\n method,\n ext_fields,\n name,\n namespace,\n serviceName,\n responseWrapper,\n version,\n isFileType,\n }: CustomApiProfile,\n originalArgs: unknown[]\n): unknown[] {\n let fileName: string;\n if (isFileType) {\n fileName = originalArgs.shift() as string;\n }\n\n const { url, args } = getTransformedUriAndRestArgs(\n uri,\n originalArgs,\n name,\n namespace,\n serviceName,\n version\n );\n\n return isFileType\n ? [\n fileName,\n {\n url,\n method,\n ext_fields,\n responseWrapper: false,\n },\n ...args,\n { responseType: \"blob\" },\n ]\n : [\n {\n url,\n method,\n ext_fields,\n responseWrapper,\n },\n ...args,\n ];\n}\n\nfunction getTransformedUriAndRestArgs(\n uri: string,\n originalArgs: unknown[],\n name: string,\n namespace: string,\n serviceName: string,\n version?: string\n): { url: string; args: unknown[] } {\n const prefix = version\n ? serviceName\n ? `api/gateway/${serviceName}`\n : `api/gateway/${namespace}.${name}@${version}`\n : `api/gateway/api_service.${namespace}.${name}`;\n const restArgs = originalArgs.slice();\n const transformedUri = uri.replace(\n /:([^/]+)/g,\n () => restArgs.shift() as string\n );\n return {\n url: prefix + transformedUri,\n args: restArgs,\n };\n}\n\nfunction getApiProfileFromApiDefinition(\n provider: string,\n api: CustomApiDefinition\n): CustomApiProfile {\n const contract: CustomApiDefinition[\"contract\"] =\n typeof api.contract === \"string\"\n ? (yaml.safeLoad(api.contract, {\n schema: yaml.JSON_SCHEMA,\n json: true,\n }) as CustomApiDefinition[\"contract\"])\n : api.contract;\n const { uri, method = \"GET\", ext_fields } = contract?.endpoint ?? {};\n const responseWrapper = contract?.response\n ? contract.response.wrapper !== false\n : false;\n if (!uri) {\n throw new Error(\n `Missing endpoint.uri in contract of provider \"${provider}\"`\n );\n }\n return {\n uri,\n method: method.toLowerCase() === \"list\" ? \"get\" : method,\n ext_fields,\n name: api.name,\n namespace: api.namespace,\n serviceName: api.serviceName,\n version: api.version,\n isFileType: contract?.response?.type === \"file\",\n responseWrapper,\n };\n}\n\nfunction fetchFlowApiDefinition(\n provider: string\n): Promise<CustomApiDefinition> {\n let promise = flowApiDefinitionPromiseMap.get(provider);\n if (!promise) {\n promise = _fetchFlowApiDefinition(provider);\n flowApiDefinitionPromiseMap.set(provider, promise);\n }\n return promise;\n}\n\nasync function _fetchFlowApiDefinition(\n provider: string\n): Promise<CustomApiDefinition> {\n const [namespaceName, nameWithVersion] = provider.split(\"@\");\n const [name, version] = nameWithVersion.split(\":\");\n\n const isUseMock = getMockList().find(\n (item) => item.provider === `${namespaceName}@${name}`\n );\n\n if (isUseMock) {\n const { list } = await InstanceApi_postSearchV3(\n \"FLOW_BUILDER_API_CONTRACT@EASYOPS\",\n {\n fields: [\n \"name\",\n \"namespaceId\",\n \"endpoint\",\n \"response\",\n \"version\",\n \"serviceName\",\n ],\n query: {\n namespaceId: {\n $eq: namespaceName,\n },\n name: {\n $eq: name,\n },\n },\n }\n );\n if (list[0]?.instanceId) {\n return {\n name: list[0].name,\n namespace: list[0]?.namespaceId,\n serviceName: list[0]?.serviceName,\n version: list[0].version,\n contract: {\n endpoint: list[0].endpoint,\n response: list[0].response,\n },\n };\n }\n } else {\n let contract;\n if ((contract = getContract(`${namespaceName}.${name}`))) {\n return {\n name: contract.name,\n namespace: contract.namespaceId,\n serviceName: contract.serviceName,\n version: contract.version,\n contract: {\n endpoint: contract.endpoint,\n response: contract.response,\n },\n };\n } else {\n const { contractData } = await ContractApi_searchSingleContract({\n contractName: `${namespaceName}.${name}`,\n version,\n });\n\n // return undefined if don't found contract\n if (contractData) {\n return {\n name: contractData.name,\n namespace: contractData.namespace?.[0]?.name,\n serviceName: contractData.serviceName,\n version: contractData.version,\n contract: {\n endpoint: contractData.endpoint,\n response: contractData.response,\n },\n };\n }\n }\n }\n}\n","import { message } from \"antd\";\nimport { userAnalytics } from \"@next-core/easyops-analytics\";\nimport {\n BrickEventHandler,\n BrickEventHandlerCallback,\n BrickEventsMap,\n BuiltinBrickEventHandler,\n CustomBrickEventHandler,\n PluginRuntimeContext,\n ExecuteCustomBrickEventHandler,\n SetPropsCustomBrickEventHandler,\n RuntimeBrickElement,\n UseProviderEventHandler,\n ProviderPollOptions,\n SiteTheme,\n} from \"@next-core/brick-types\";\nimport { handleHttpError, httpErrorToString } from \"../handleHttpError\";\nimport { computeRealValue, setProperties } from \"./setProperties\";\nimport { getHistory } from \"../history\";\nimport {\n _internalApiGetCurrentContext,\n _internalApiGetProviderBrick,\n RuntimeBrick,\n _internalApiGetStoryboardContextWrapper,\n} from \"../core/exports\";\nimport { getUrlBySegueFactory } from \"./segue\";\nimport { looseCheckIf, IfContainer } from \"../checkIf\";\nimport { getUrlByAliasFactory } from \"./alias\";\nimport { getMessageDispatcher } from \"../core/MessageDispatcher\";\nimport { PluginWebSocketMessageTopic } from \"../websocket/interfaces\";\nimport { applyTheme, applyMode } from \"../themeAndMode\";\nimport { clearMenuTitleCache, clearMenuCache } from \"./menu\";\nimport { PollableCallback, PollableCallbackFunction, startPoll } from \"./poll\";\nimport { getArgsOfCustomApi } from \"../core/FlowApi\";\nimport { getRuntime } from \"../runtime\";\nimport {\n CustomTemplateContext,\n getCustomTemplateContext,\n} from \"../core/CustomTemplates/CustomTemplateContext\";\n\nexport function bindListeners(\n brick: HTMLElement,\n eventsMap: BrickEventsMap,\n context: PluginRuntimeContext\n): void {\n Object.entries(eventsMap).forEach(([eventType, handlers]) => {\n [].concat(handlers).forEach((handler: BrickEventHandler) => {\n const listener = listenerFactory(handler, context, { element: brick });\n brick.addEventListener(eventType, listener);\n rememberListeners(brick, eventType, listener, handler);\n });\n });\n}\n\nexport function unbindListeners(brick: HTMLElement): void {\n if ((brick as RuntimeBrickElement).$$eventListeners) {\n for (const [eventType, listener] of (brick as RuntimeBrickElement)\n .$$eventListeners) {\n brick.removeEventListener(eventType, listener);\n }\n (brick as RuntimeBrickElement).$$eventListeners = [];\n }\n}\n\nfunction rememberListeners(\n brick: RuntimeBrickElement,\n eventType: string,\n listener: EventListener,\n handler: BrickEventHandler\n): void {\n if (!brick.$$eventListeners) {\n brick.$$eventListeners = [];\n }\n brick.$$eventListeners.push([eventType, listener, handler]);\n}\n\nexport function isBuiltinHandler(\n handler: BrickEventHandler\n): handler is BuiltinBrickEventHandler {\n return typeof (handler as BuiltinBrickEventHandler).action === \"string\";\n}\n\nexport function isUseProviderHandler(\n handler: BrickEventHandler\n): handler is UseProviderEventHandler {\n return typeof (handler as UseProviderEventHandler).useProvider === \"string\";\n}\n\nexport function isCustomHandler(\n handler: BrickEventHandler\n): handler is CustomBrickEventHandler {\n return !!(\n ((handler as CustomBrickEventHandler).target ||\n (handler as CustomBrickEventHandler).targetRef) &&\n ((handler as ExecuteCustomBrickEventHandler).method ||\n (handler as SetPropsCustomBrickEventHandler).properties)\n );\n}\n\nexport function isExecuteCustomHandler(\n handler: CustomBrickEventHandler\n): handler is ExecuteCustomBrickEventHandler {\n return !!(handler as ExecuteCustomBrickEventHandler).method;\n}\n\nexport function isSetPropsCustomHandler(\n handler: CustomBrickEventHandler\n): handler is SetPropsCustomBrickEventHandler {\n return !!(handler as SetPropsCustomBrickEventHandler).properties;\n}\n\nexport function listenerFactory(\n handler: BrickEventHandler,\n context: PluginRuntimeContext,\n runtimeBrick: RuntimeBrick\n): EventListener {\n if (isBuiltinHandler(handler)) {\n const method = handler.action.split(\".\")[1] as any;\n switch (handler.action) {\n case \"history.push\":\n case \"history.replace\":\n case \"history.pushQuery\":\n case \"history.replaceQuery\":\n case \"history.pushAnchor\":\n case \"history.block\":\n return builtinHistoryListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"history.goBack\":\n case \"history.goForward\":\n case \"history.reload\":\n case \"history.unblock\":\n return builtinHistoryWithoutArgsListenerFactory(\n method,\n handler,\n context\n );\n case \"segue.push\":\n case \"segue.replace\":\n return builtinSegueListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"alias.push\":\n case \"alias.replace\":\n return builtinAliasListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"legacy.go\":\n return builtinIframeListenerFactory(handler.args, handler, context);\n case \"window.open\":\n return builtinWindowListenerFactory(handler.args, handler, context);\n case \"location.reload\":\n case \"location.assign\":\n return builtinLocationListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"localStorage.setItem\":\n case \"localStorage.removeItem\":\n return builtinWebStorageListenerFactory(\n \"local\",\n method,\n handler.args,\n handler,\n context\n );\n case \"sessionStorage.setItem\":\n case \"sessionStorage.removeItem\":\n return builtinWebStorageListenerFactory(\n \"session\",\n method,\n handler.args,\n handler,\n context\n );\n case \"event.preventDefault\":\n return ((event: CustomEvent) => {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n event.preventDefault();\n }) as EventListener;\n case \"console.log\":\n case \"console.error\":\n case \"console.warn\":\n case \"console.info\":\n return builtinConsoleListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"message.success\":\n case \"message.error\":\n case \"message.info\":\n case \"message.warn\":\n return builtinMessageListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"handleHttpError\":\n return ((event: CustomEvent) => {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n handleHttpError(event.detail);\n }) as EventListener;\n case \"context.assign\":\n case \"context.replace\":\n return builtinContextListenerFactory(\n method,\n handler.args,\n handler,\n context\n );\n case \"state.update\":\n return builtinStateListenerFactory(handler.args, handler, context);\n case \"tpl.dispatchEvent\":\n return builtinTplDispatchEventFactory(handler.args, handler, context);\n case \"message.subscribe\":\n case \"message.unsubscribe\":\n return builtinWebSocketListenerFactory(\n runtimeBrick,\n method,\n handler.args,\n handler,\n handler.callback,\n context\n );\n case \"theme.setDarkTheme\":\n case \"theme.setLightTheme\":\n return ((event: CustomEvent) => {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n applyTheme(\n handler.action === \"theme.setDarkTheme\" ? \"dark\" : \"light\"\n );\n }) as EventListener;\n case \"theme.setTheme\":\n return builtinThemeListenerFactory(handler.args, handler, context);\n case \"mode.setDashboardMode\":\n case \"mode.setDefaultMode\":\n return ((event: CustomEvent) => {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n applyMode(\n handler.action === \"mode.setDashboardMode\" ? \"dashboard\" : \"default\"\n );\n }) as EventListener;\n case \"menu.clearMenuTitleCache\":\n return ((event: CustomEvent) => {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n clearMenuTitleCache();\n }) as EventListener;\n case \"menu.clearMenuCache\":\n return ((event: CustomEvent) => {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n clearMenuCache();\n }) as EventListener;\n case \"analytics.event\":\n return builtinAnalyticsListenerFactory(handler.args, handler, context);\n default:\n return () => {\n // eslint-disable-next-line no-console\n console.error(\"unknown event listener action:\", handler.action);\n };\n }\n }\n\n if (isUseProviderHandler(handler)) {\n return usingProviderFactory(handler, context, runtimeBrick);\n }\n\n if (isCustomHandler(handler)) {\n return customListenerFactory(handler, handler, context, runtimeBrick);\n }\n}\n\nfunction usingProviderFactory(\n handler: UseProviderEventHandler,\n context: PluginRuntimeContext,\n runtimeBrick: RuntimeBrick\n): EventListener {\n return async function (event: CustomEvent): Promise<void> {\n if (!looseCheckIf(handler, { ...context, event })) {\n return;\n }\n try {\n const providerBrick = await _internalApiGetProviderBrick(\n handler.useProvider\n );\n const method = handler.method !== \"saveAs\" ? \"resolve\" : \"saveAs\";\n brickCallback(\n providerBrick,\n handler,\n method,\n context,\n runtimeBrick,\n event\n );\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(httpErrorToString(error));\n }\n } as unknown as EventListener;\n}\n\nfunction getTplContext(tplContextId: string): CustomTemplateContext {\n // istanbul ignore if\n if (!tplContextId) {\n throw new Error(\"Calling tpl but no tplContextId was found in context!\");\n }\n return getCustomTemplateContext(tplContextId);\n}\n\nfunction builtinTplDispatchEventFactory(\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const tpl = getTplContext(context.tplContextId).getBrick().element;\n const [type, init] = argsFactory(args, context, event) as [\n string,\n CustomEventInit\n ];\n tpl.dispatchEvent(new CustomEvent(type, init));\n } as EventListener;\n}\n\nfunction builtinContextListenerFactory(\n method: \"assign\" | \"replace\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const storyboardContext = _internalApiGetStoryboardContextWrapper();\n const [name, value] = argsFactory(args, context, event);\n storyboardContext.updateValue(name as string, value, method);\n } as EventListener;\n}\n\nfunction builtinStateListenerFactory(\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const tplContext = getTplContext(context.tplContextId);\n const [name, value] = argsFactory(args, context, event);\n tplContext.state.updateValue(name as string, value, \"replace\");\n } as EventListener;\n}\n\nfunction builtinLocationListenerFactory(\n method: \"assign\" | \"reload\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n if (method === \"assign\") {\n const [url] = argsFactory(args, context, event) as [string];\n location.assign(url);\n } else {\n location[method]();\n }\n } as EventListener;\n}\n\nfunction builtinSegueListenerFactory(\n method: \"push\" | \"replace\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const { app, segues } = _internalApiGetCurrentContext();\n getHistory()[method](\n getUrlBySegueFactory(\n app,\n segues\n )(\n ...(argsFactory(args, context, event) as Parameters<\n ReturnType<typeof getUrlBySegueFactory>\n >)\n )\n );\n } as EventListener;\n}\n\nfunction builtinAliasListenerFactory(\n method: \"push\" | \"replace\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const { app } = _internalApiGetCurrentContext();\n getHistory()[method](\n getUrlByAliasFactory(app)(\n ...(argsFactory(args, context, event) as Parameters<\n ReturnType<typeof getUrlByAliasFactory>\n >)\n )\n );\n } as EventListener;\n}\n\nfunction builtinWebSocketListenerFactory(\n runtimeBrick: RuntimeBrick,\n method: \"subscribe\" | \"unsubscribe\",\n args: any[],\n ifContainer: IfContainer,\n callback: BrickEventHandlerCallback,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n\n const [channel, messageTopic] = argsFactory(args, context, event) as [\n string,\n PluginWebSocketMessageTopic\n ];\n\n const { system, topic } = messageTopic || {};\n getMessageDispatcher()[method](\n channel,\n { system, topic },\n { ...callback, runtimeBrick, context }\n );\n } as EventListener;\n}\n\nfunction builtinIframeListenerFactory(\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n const legacyIframeMountPoint = document.querySelector(\n \"#legacy-iframe-mount-point\"\n );\n\n const postMessage = (url: string): void => {\n const iframe = legacyIframeMountPoint.firstChild as HTMLIFrameElement;\n if (\n iframe &&\n iframe.contentWindow &&\n (iframe.contentWindow as any).angular\n ) {\n iframe.contentWindow.postMessage(\n {\n type: \"location.url\",\n url,\n },\n location.origin\n );\n }\n };\n\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const [url] = argsFactory(args, context, event) as [string];\n postMessage(url);\n } as EventListener;\n}\n\nfunction builtinWindowListenerFactory(\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const [url, target, features] = argsFactory(args, context, event) as [\n string,\n string,\n string\n ];\n window.open(url, target || \"_self\", features);\n } as EventListener;\n}\n\nfunction builtinAnalyticsListenerFactory(\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const [action, data] = argsFactory(args, context, event) as [\n string,\n Record<string, unknown>\n ];\n const runtime = getRuntime();\n userAnalytics.event(action, {\n micro_app_id: runtime.getCurrentApp()?.id,\n route_alias: runtime.getCurrentRoute()?.alias,\n ...data,\n });\n } as EventListener;\n}\n\nfunction builtinThemeListenerFactory(\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const [theme] = argsFactory(args, context, event);\n applyTheme(theme as SiteTheme);\n } as EventListener;\n}\n\nfunction customListenerFactory(\n handler: CustomBrickEventHandler,\n ifContainer: IfContainer,\n context: PluginRuntimeContext,\n runtimeBrick: RuntimeBrick\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n let targets: HTMLElement[] = [];\n if (typeof handler.target === \"string\") {\n if (handler.target === \"_self\") {\n targets.push(runtimeBrick.element);\n } else if (handler.multiple) {\n targets = Array.from(document.querySelectorAll(handler.target));\n } else {\n const found = document.querySelector(handler.target) as HTMLElement;\n if (found !== null) {\n targets.push(found);\n }\n }\n } else if (handler.target) {\n targets.push(handler.target as HTMLElement);\n } else if (handler.targetRef) {\n const tpl: RuntimeBrickElement = getTplContext(\n context.tplContextId\n ).getBrick().element;\n targets.push(\n ...[]\n .concat(handler.targetRef)\n .map((ref) => tpl.$$getElementByRef?.(ref))\n .filter(Boolean)\n );\n }\n if (targets.length === 0) {\n // eslint-disable-next-line no-console\n console.error(\"target not found:\", handler.target || handler.targetRef);\n return;\n }\n if (isExecuteCustomHandler(handler)) {\n targets.forEach((target) => {\n brickCallback(\n target,\n handler,\n handler.method,\n context,\n runtimeBrick,\n event,\n {\n useEventAsDefault: true,\n }\n );\n });\n } else if (isSetPropsCustomHandler(handler)) {\n setProperties(\n targets,\n handler.properties,\n {\n ...context,\n event,\n },\n handler.injectDeep !== false\n );\n }\n } as EventListener;\n}\n\nasync function brickCallback(\n target: HTMLElement,\n handler: ExecuteCustomBrickEventHandler | UseProviderEventHandler,\n method: string,\n context: PluginRuntimeContext,\n runtimeBrick: RuntimeBrick,\n event: CustomEvent,\n options?: ArgsFactoryOptions\n): Promise<void> {\n if (typeof (target as any)[method] !== \"function\") {\n // eslint-disable-next-line no-console\n console.error(\"target has no method:\", {\n target,\n method: method,\n });\n return;\n }\n\n const task = async (): Promise<unknown> => {\n let computedArgs = argsFactory(handler.args, context, event, options);\n if (isUseProviderHandler(handler)) {\n computedArgs = await getArgsOfCustomApi(\n handler.useProvider,\n computedArgs\n );\n }\n return (target as any)[method](...computedArgs);\n };\n\n const {\n success,\n error,\n finally: finallyHook,\n progress,\n } = handler.callback ?? {};\n\n if (!(success || error || finallyHook || progress)) {\n task();\n return;\n }\n\n const callbackFactory =\n (\n eventType: string,\n specificHandler: BrickEventHandler | BrickEventHandler[]\n ): PollableCallbackFunction =>\n (result: unknown) => {\n if (specificHandler) {\n try {\n const event = new CustomEvent(eventType, {\n detail: result,\n });\n [].concat(specificHandler).forEach((eachHandler) => {\n listenerFactory(eachHandler, context, runtimeBrick)(event);\n });\n } catch (err) {\n // Do not throw errors in `callback.success` or `callback.progress`,\n // to avoid the following triggering of `callback.error`.\n // eslint-disable-next-line\n console.error(err);\n }\n } else if (eventType === \"callback.error\") {\n // eslint-disable-next-line\n console.error(\"Unhandled callback error:\", result);\n }\n };\n\n const pollableCallback: Required<PollableCallback> = {\n progress: callbackFactory(\"callback.progress\", progress),\n success: callbackFactory(\"callback.success\", success),\n error: callbackFactory(\"callback.error\", error),\n finally: callbackFactory(\"callback.finally\", finallyHook),\n };\n\n let poll: ProviderPollOptions;\n if (isUseProviderHandler(handler)) {\n poll = computeRealValue(handler.poll, { ...context, event }, true);\n }\n\n if (poll?.enabled) {\n startPoll(task, pollableCallback, poll);\n } else {\n try {\n // Try to catch synchronized tasks too.\n const result = await task();\n pollableCallback.success(result);\n } catch (err) {\n pollableCallback.error(err);\n } finally {\n pollableCallback[\"finally\"]();\n }\n }\n}\n\nfunction builtinHistoryListenerFactory(\n method:\n | \"push\"\n | \"replace\"\n | \"pushQuery\"\n | \"replaceQuery\"\n | \"pushAnchor\"\n | \"block\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n (\n getHistory()[method === \"block\" ? \"setBlockMessage\" : method] as (\n ...args: unknown[]\n ) => unknown\n )(\n ...argsFactory(args, context, event, {\n useEventDetailAsDefault: true,\n })\n );\n } as EventListener;\n}\n\nfunction builtinHistoryWithoutArgsListenerFactory(\n method: \"goBack\" | \"goForward\" | \"reload\" | \"unblock\",\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n getHistory()[method]();\n } as EventListener;\n}\n\nfunction builtinConsoleListenerFactory(\n method: \"log\" | \"error\" | \"warn\" | \"info\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent): void {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n // eslint-disable-next-line no-console\n console[method](\n ...argsFactory(args, context, event, {\n useEventAsDefault: true,\n })\n );\n } as EventListener;\n}\n\nfunction builtinMessageListenerFactory(\n method: \"success\" | \"error\" | \"info\" | \"warn\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent) {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n message[method](\n ...(argsFactory(args, context, event) as Parameters<\n typeof message[\"success\"]\n >)\n );\n } as EventListener;\n}\n\nfunction builtinWebStorageListenerFactory(\n storageType: \"local\" | \"session\",\n method: \"setItem\" | \"removeItem\",\n args: unknown[],\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n): EventListener {\n return function (event: CustomEvent) {\n if (!looseCheckIf(ifContainer, { ...context, event })) {\n return;\n }\n const storage = storageType === \"local\" ? localStorage : sessionStorage;\n const [name, value] = argsFactory(args, context, event);\n if (method === \"setItem\") {\n if (value !== undefined) {\n storage.setItem(name as string, JSON.stringify(value));\n }\n } else if (method === \"removeItem\") {\n storage.removeItem(name as string);\n }\n } as EventListener;\n}\n\ninterface ArgsFactoryOptions {\n useEventAsDefault?: boolean;\n useEventDetailAsDefault?: boolean;\n}\n\nfunction argsFactory(\n args: unknown[],\n context: PluginRuntimeContext,\n event: CustomEvent,\n options: ArgsFactoryOptions = {}\n): unknown[] {\n return Array.isArray(args)\n ? (computeRealValue(\n args,\n {\n ...context,\n event,\n },\n true\n ) as unknown[])\n : options.useEventAsDefault\n ? [event]\n : options.useEventDetailAsDefault\n ? [event.detail]\n : [];\n}\n","import {\n PluginRuntimeContext,\n BrickLifeCycle,\n RefForProxy,\n} from \"@next-core/brick-types\";\nimport { bindListeners } from \"../internal/bindListeners\";\nimport { setRealProperties } from \"../internal/setProperties\";\nimport { RuntimeCustomTemplateProxy } from \"./CustomTemplates/internalInterfaces\";\nimport { handleProxyOfCustomTemplate } from \"./exports\";\n\nexport interface RuntimeBrick {\n type?: string;\n properties?: Record<string, any>;\n template?: string;\n params?: Record<string, any>;\n events?: Record<string, any>;\n children?: RuntimeBrick[];\n slotId?: string;\n context?: PluginRuntimeContext;\n lifeCycle?: BrickLifeCycle;\n element?: HTMLElement;\n bg?: boolean;\n proxy?: RuntimeCustomTemplateProxy;\n proxyRefs?: Map<string, RefForProxy>;\n stateNames?: string[];\n refForProxy?: {\n brick?: RuntimeBrick;\n };\n tplContextId?: string;\n isExternalOfTpl?: boolean;\n isParent?: boolean;\n ref?: string;\n iid?: string;\n}\n\nexport class BrickNode {\n $$brick: RuntimeBrick;\n\n private children: BrickNode[] = [];\n\n constructor(brick: RuntimeBrick) {\n this.$$brick = brick;\n }\n\n mount(): HTMLElement {\n const brick = this.$$brick;\n const tagName = brick.type;\n\n if (tagName.includes(\"-\") && !customElements.get(tagName)) {\n // eslint-disable-next-line no-console\n console.error(`Undefined custom element: ${tagName}`);\n }\n\n // istanbul ignore if\n if (tagName === \"basic-bricks.script-brick\") {\n // eslint-disable-next-line no-console\n console.warn(\n \"`basic-bricks.script-brick` is deprecated, please take caution when using it\"\n );\n }\n\n const node = document.createElement(tagName);\n brick.element = node;\n\n if (brick.slotId) {\n node.setAttribute(\"slot\", brick.slotId);\n }\n if (brick.iid) {\n node.dataset.iid = brick.iid;\n }\n setRealProperties(node, brick.properties);\n bindListeners(node, brick.events, brick.context);\n\n if (Array.isArray(brick.children)) {\n this.children = brick.children.map((child) => new BrickNode(child));\n const childNodes = this.children.map((child) => child.mount());\n childNodes.forEach((child) => node.appendChild(child));\n } else {\n this.children = [];\n }\n\n return node;\n }\n\n unmount(): void {\n this.children.forEach((child) => {\n child.unmount();\n });\n }\n\n // Handle proxies later after bricks in portal and main both mounted.\n afterMount(): void {\n handleProxyOfCustomTemplate(this.$$brick);\n this.children.forEach((child) => {\n child.afterMount();\n });\n }\n}\n","import { http } from '@next-core/brick-http';\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nvar login = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (yield http.post(\"api/auth/login\", data, options)).data;\n });\n\n return function login(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\nvar logout = options => http.post(\"api/auth/logout\", options);\nvar checkLogin = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator(function* (options) {\n return (yield http.get(\"api/auth/login\", options)).data;\n });\n\n return function checkLogin(_x3) {\n return _ref2.apply(this, arguments);\n };\n}();\nvar bootstrap = /*#__PURE__*/function () {\n var _ref3 = _asyncToGenerator(function* (params, options) {\n return (yield http.get(\"api/auth/bootstrap\", _objectSpread2(_objectSpread2({}, options), {}, {\n params\n }))).data;\n });\n\n return function bootstrap(_x4, _x5) {\n return _ref3.apply(this, arguments);\n };\n}();\nvar getAppStoryboard = /*#__PURE__*/function () {\n var _ref4 = _asyncToGenerator(function* (appId, params, options) {\n return (yield http.get(\"api/auth/bootstrap/\".concat(appId), _objectSpread2(_objectSpread2({}, options), {}, {\n params\n }))).data;\n });\n\n return function getAppStoryboard(_x6, _x7, _x8) {\n return _ref4.apply(this, arguments);\n };\n}();\n\nexport { bootstrap, checkLogin, getAppStoryboard, login, logout };\n//# sourceMappingURL=index.esm.js.map\n","import { merge } from \"lodash\";\nimport i18next from \"i18next\";\nimport { BootstrapData } from \"@next-core/brick-types\";\nimport { deepFreeze } from \"@next-core/brick-utils\";\n\n/**\n * Merge `app.defaultConfig` and `app.userConfig` to `app.config`.\n *\n * @param bootstrapResponse - Response of bootstrap API.\n */\nexport function processBootstrapResponse(\n bootstrapResponse: BootstrapData\n): void {\n for (const storyboard of bootstrapResponse.storyboards) {\n const app = storyboard.app;\n if (app) {\n app.config = deepFreeze(merge({}, app.defaultConfig, app.userConfig));\n\n if (app.locales) {\n // Prefix to avoid conflict between brick package's i18n namespace.\n const ns = `$tmp-${app.id}`;\n // Support any languages in `app.locales`.\n Object.entries(app.locales).forEach(([lang, resources]) => {\n i18next.addResourceBundle(lang, ns, resources);\n });\n // Use `app.name` as the fallback `app.localeName`.\n app.localeName = i18next.getFixedT(null, ns)(\"name\", app.name);\n // Remove the temporary i18n resource bundles.\n Object.keys(app.locales).forEach((lang) => {\n i18next.removeResourceBundle(lang, ns);\n });\n } else {\n app.localeName = app.name;\n }\n }\n }\n\n if (bootstrapResponse.settings) {\n bootstrapResponse.settings = deepFreeze(bootstrapResponse.settings);\n }\n\n bootstrapResponse.brickPackages = deepFreeze(bootstrapResponse.brickPackages);\n bootstrapResponse.templatePackages = deepFreeze(\n bootstrapResponse.templatePackages\n );\n}\n","import { createProviderClass } from \"@next-core/brick-utils\";\nimport { ExtField } from \"@next-core/brick-types\";\nimport { http, HttpOptions } from \"@next-core/brick-http\";\n\nexport const CUSTOM_API_PROVIDER = \"brick-kit.provider-custom-api\";\n\nexport interface CustomApiParams {\n url: string;\n method?: string;\n responseWrapper?: boolean;\n ext_fields?: ExtField[];\n}\n\nexport function processExtFields(\n ext_fields: ExtField[],\n ...args: unknown[]\n): { data: unknown; options: HttpOptions } {\n const hasFields = (type: \"query\" | \"body\"): boolean => {\n return ext_fields.some((item) => item.source === type);\n };\n\n const hasQueryParams = hasFields(\"query\");\n const HasBodyParams = hasFields(\"body\");\n\n if (hasQueryParams && HasBodyParams) {\n const [data, params, options] = args;\n return {\n data: data,\n options: {\n params: params,\n ...(options as HttpOptions),\n },\n };\n }\n\n if (hasQueryParams) {\n const [params, options] = args;\n return {\n data: {} as any,\n options: {\n params: params,\n ...(options as HttpOptions),\n },\n };\n }\n\n // only hasBodyParams or default\n const [data, options] = args;\n return {\n data,\n options,\n };\n}\n\nexport async function CustomApi(\n {\n url,\n method = \"GET\",\n responseWrapper = true,\n ext_fields = [],\n }: CustomApiParams,\n ...args: unknown[]\n): Promise<unknown> {\n const isSimpleRequest = [\"get\", \"delete\", \"head\"].includes(\n method.toLowerCase()\n );\n\n if (isSimpleRequest) {\n const [data, options] = args;\n const response = await http.simpleRequest(method, url, {\n params: data,\n ...(options as HttpOptions),\n });\n return responseWrapper ? response.data : response;\n } else {\n const result = processExtFields(ext_fields, ...args);\n const response = await http.requestWithBody(\n method,\n url,\n result.data,\n result.options\n );\n return responseWrapper ? response.data : response;\n }\n}\n\nexport function registerCustomApi(): void {\n customElements.define(CUSTOM_API_PROVIDER, createProviderClass(CustomApi));\n}\n","import { userAnalytics } from \"@next-core/easyops-analytics\";\nimport { getAuth } from \"../auth\";\nimport { getRuntime } from \"../runtime\";\n\n/** @internal */\nexport function initAnalytics(): void {\n const misc = getRuntime().getMiscSettings();\n const { gaMeasurementId, analyticsDebugMode } = misc as {\n gaMeasurementId?: string;\n analyticsDebugMode?: boolean;\n };\n\n if (gaMeasurementId) {\n userAnalytics.init({\n gaMeasurementId,\n sendPageView: false,\n userId: getAuth().userInstanceId,\n debugMode: analyticsDebugMode,\n });\n }\n}\n","import yaml from \"js-yaml\";\nimport { http } from \"@next-core/brick-http\";\nimport { BootstrapData, Settings } from \"@next-core/brick-types\";\nimport { hasOwnProperty } from \"@next-core/brick-utils\";\n\ninterface StandaloneConf {\n /** The same as `auth.bootstrap.sys_settings` in api gateway conf. */\n sys_settings: StandaloneSettings;\n\n /** For fully standalone micro-apps. */\n user_config?: Record<string, unknown>;\n\n /** For mixed standalone micro-apps. */\n user_config_by_apps?: UserConfigByApps;\n}\n\ntype UserConfigByApps = Record<string, Record<string, unknown>>;\n\ninterface StandaloneSettings extends Omit<Settings, \"featureFlags\"> {\n feature_flags: Record<string, boolean>;\n}\n\nexport async function standaloneBootstrap(): Promise<BootstrapData> {\n const [bootstrapResult, confString] = await Promise.all([\n http.get<BootstrapData>(window.BOOTSTRAP_FILE),\n http.get<string>(`${window.APP_ROOT}conf.yaml`, {\n responseType: \"text\",\n }),\n ]);\n let conf: StandaloneConf;\n try {\n conf = confString\n ? (yaml.safeLoad(confString, {\n schema: yaml.JSON_SCHEMA,\n json: true,\n }) as StandaloneConf)\n : undefined;\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Parse conf.yaml failed\", error);\n throw new Error(\"Invalid conf.yaml\");\n }\n let settings: Settings;\n if (conf) {\n const { sys_settings, user_config, user_config_by_apps } = conf;\n if (sys_settings) {\n const { feature_flags: featureFlags, ...rest } = sys_settings;\n settings = {\n featureFlags,\n ...rest,\n } as Settings;\n }\n if (user_config && bootstrapResult.storyboards.length === 1) {\n bootstrapResult.storyboards[0].app.userConfig = user_config;\n } else if (user_config_by_apps) {\n for (const { app } of bootstrapResult.storyboards) {\n if (hasOwnProperty(user_config_by_apps, app.id)) {\n app.userConfig = user_config_by_apps[app.id];\n }\n }\n }\n }\n return {\n ...bootstrapResult,\n settings,\n };\n}\n","/**\n * Take input from [0, n] and return it as [0, 1]\n * @hidden\n */\nexport function bound01(n, max) {\n if (isOnePointZero(n)) {\n n = '100%';\n }\n var isPercent = isPercentage(n);\n n = max === 360 ? n : Math.min(max, Math.max(0, parseFloat(n)));\n // Automatically convert percentage into number\n if (isPercent) {\n n = parseInt(String(n * max), 10) / 100;\n }\n // Handle floating point rounding errors\n if (Math.abs(n - max) < 0.000001) {\n return 1;\n }\n // Convert into [0, 1] range if it isn't already\n if (max === 360) {\n // If n is a hue given in degrees,\n // wrap around out-of-range values into [0, 360] range\n // then convert into [0, 1].\n n = (n < 0 ? (n % max) + max : n % max) / parseFloat(String(max));\n }\n else {\n // If n not a hue given in degrees\n // Convert into [0, 1] range if it isn't already.\n n = (n % max) / parseFloat(String(max));\n }\n return n;\n}\n/**\n * Force a number between 0 and 1\n * @hidden\n */\nexport function clamp01(val) {\n return Math.min(1, Math.max(0, val));\n}\n/**\n * Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1\n * <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>\n * @hidden\n */\nexport function isOnePointZero(n) {\n return typeof n === 'string' && n.indexOf('.') !== -1 && parseFloat(n) === 1;\n}\n/**\n * Check to see if string passed in is a percentage\n * @hidden\n */\nexport function isPercentage(n) {\n return typeof n === 'string' && n.indexOf('%') !== -1;\n}\n/**\n * Return a valid alpha value [0,1] with all invalid values being set to 1\n * @hidden\n */\nexport function boundAlpha(a) {\n a = parseFloat(a);\n if (isNaN(a) || a < 0 || a > 1) {\n a = 1;\n }\n return a;\n}\n/**\n * Replace a decimal with it's percentage value\n * @hidden\n */\nexport function convertToPercentage(n) {\n if (n <= 1) {\n return Number(n) * 100 + \"%\";\n }\n return n;\n}\n/**\n * Force a hex value to have 2 characters\n * @hidden\n */\nexport function pad2(c) {\n return c.length === 1 ? '0' + c : String(c);\n}\n","import { bound01, pad2 } from './util';\n// `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:\n// <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>\n/**\n * Handle bounds / percentage checking to conform to CSS color spec\n * <http://www.w3.org/TR/css3-color/>\n * *Assumes:* r, g, b in [0, 255] or [0, 1]\n * *Returns:* { r, g, b } in [0, 255]\n */\nexport function rgbToRgb(r, g, b) {\n return {\n r: bound01(r, 255) * 255,\n g: bound01(g, 255) * 255,\n b: bound01(b, 255) * 255,\n };\n}\n/**\n * Converts an RGB color value to HSL.\n * *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]\n * *Returns:* { h, s, l } in [0,1]\n */\nexport function rgbToHsl(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h = 0;\n var s = 0;\n var l = (max + min) / 2;\n if (max === min) {\n s = 0;\n h = 0; // achromatic\n }\n else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n break;\n }\n h /= 6;\n }\n return { h: h, s: s, l: l };\n}\nfunction hue2rgb(p, q, t) {\n if (t < 0) {\n t += 1;\n }\n if (t > 1) {\n t -= 1;\n }\n if (t < 1 / 6) {\n return p + (q - p) * (6 * t);\n }\n if (t < 1 / 2) {\n return q;\n }\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6;\n }\n return p;\n}\n/**\n * Converts an HSL color value to RGB.\n *\n * *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]\n * *Returns:* { r, g, b } in the set [0, 255]\n */\nexport function hslToRgb(h, s, l) {\n var r;\n var g;\n var b;\n h = bound01(h, 360);\n s = bound01(s, 100);\n l = bound01(l, 100);\n if (s === 0) {\n // achromatic\n g = l;\n b = l;\n r = l;\n }\n else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n/**\n * Converts an RGB color value to HSV\n *\n * *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]\n * *Returns:* { h, s, v } in [0,1]\n */\nexport function rgbToHsv(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h = 0;\n var v = max;\n var d = max - min;\n var s = max === 0 ? 0 : d / max;\n if (max === min) {\n h = 0; // achromatic\n }\n else {\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n break;\n }\n h /= 6;\n }\n return { h: h, s: s, v: v };\n}\n/**\n * Converts an HSV color value to RGB.\n *\n * *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]\n * *Returns:* { r, g, b } in the set [0, 255]\n */\nexport function hsvToRgb(h, s, v) {\n h = bound01(h, 360) * 6;\n s = bound01(s, 100);\n v = bound01(v, 100);\n var i = Math.floor(h);\n var f = h - i;\n var p = v * (1 - s);\n var q = v * (1 - f * s);\n var t = v * (1 - (1 - f) * s);\n var mod = i % 6;\n var r = [v, q, p, p, t, v][mod];\n var g = [t, v, v, q, p, p][mod];\n var b = [p, p, t, v, v, q][mod];\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n/**\n * Converts an RGB color to hex\n *\n * Assumes r, g, and b are contained in the set [0, 255]\n * Returns a 3 or 6 character hex\n */\nexport function rgbToHex(r, g, b, allow3Char) {\n var hex = [\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n ];\n // Return a 3 character hex if possible\n if (allow3Char &&\n hex[0].startsWith(hex[0].charAt(1)) &&\n hex[1].startsWith(hex[1].charAt(1)) &&\n hex[2].startsWith(hex[2].charAt(1))) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);\n }\n return hex.join('');\n}\n/**\n * Converts an RGBA color plus alpha transparency to hex\n *\n * Assumes r, g, b are contained in the set [0, 255] and\n * a in [0, 1]. Returns a 4 or 8 character rgba hex\n */\n// eslint-disable-next-line max-params\nexport function rgbaToHex(r, g, b, a, allow4Char) {\n var hex = [\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n pad2(convertDecimalToHex(a)),\n ];\n // Return a 4 character hex if possible\n if (allow4Char &&\n hex[0].startsWith(hex[0].charAt(1)) &&\n hex[1].startsWith(hex[1].charAt(1)) &&\n hex[2].startsWith(hex[2].charAt(1)) &&\n hex[3].startsWith(hex[3].charAt(1))) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);\n }\n return hex.join('');\n}\n/**\n * Converts an RGBA color to an ARGB Hex8 string\n * Rarely used, but required for \"toFilter()\"\n */\nexport function rgbaToArgbHex(r, g, b, a) {\n var hex = [\n pad2(convertDecimalToHex(a)),\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n ];\n return hex.join('');\n}\n/** Converts a decimal to a hex value */\nexport function convertDecimalToHex(d) {\n return Math.round(parseFloat(d) * 255).toString(16);\n}\n/** Converts a hex value to a decimal */\nexport function convertHexToDecimal(h) {\n return parseIntFromHex(h) / 255;\n}\n/** Parse a base-16 hex value into a base-10 integer */\nexport function parseIntFromHex(val) {\n return parseInt(val, 16);\n}\nexport function numberInputToObject(color) {\n return {\n r: color >> 16,\n g: (color & 0xff00) >> 8,\n b: color & 0xff,\n };\n}\n","// https://github.com/bahamas10/css-color-names/blob/master/css-color-names.json\n/**\n * @hidden\n */\nexport var names = {\n aliceblue: '#f0f8ff',\n antiquewhite: '#faebd7',\n aqua: '#00ffff',\n aquamarine: '#7fffd4',\n azure: '#f0ffff',\n beige: '#f5f5dc',\n bisque: '#ffe4c4',\n black: '#000000',\n blanchedalmond: '#ffebcd',\n blue: '#0000ff',\n blueviolet: '#8a2be2',\n brown: '#a52a2a',\n burlywood: '#deb887',\n cadetblue: '#5f9ea0',\n chartreuse: '#7fff00',\n chocolate: '#d2691e',\n coral: '#ff7f50',\n cornflowerblue: '#6495ed',\n cornsilk: '#fff8dc',\n crimson: '#dc143c',\n cyan: '#00ffff',\n darkblue: '#00008b',\n darkcyan: '#008b8b',\n darkgoldenrod: '#b8860b',\n darkgray: '#a9a9a9',\n darkgreen: '#006400',\n darkgrey: '#a9a9a9',\n darkkhaki: '#bdb76b',\n darkmagenta: '#8b008b',\n darkolivegreen: '#556b2f',\n darkorange: '#ff8c00',\n darkorchid: '#9932cc',\n darkred: '#8b0000',\n darksalmon: '#e9967a',\n darkseagreen: '#8fbc8f',\n darkslateblue: '#483d8b',\n darkslategray: '#2f4f4f',\n darkslategrey: '#2f4f4f',\n darkturquoise: '#00ced1',\n darkviolet: '#9400d3',\n deeppink: '#ff1493',\n deepskyblue: '#00bfff',\n dimgray: '#696969',\n dimgrey: '#696969',\n dodgerblue: '#1e90ff',\n firebrick: '#b22222',\n floralwhite: '#fffaf0',\n forestgreen: '#228b22',\n fuchsia: '#ff00ff',\n gainsboro: '#dcdcdc',\n ghostwhite: '#f8f8ff',\n goldenrod: '#daa520',\n gold: '#ffd700',\n gray: '#808080',\n green: '#008000',\n greenyellow: '#adff2f',\n grey: '#808080',\n honeydew: '#f0fff0',\n hotpink: '#ff69b4',\n indianred: '#cd5c5c',\n indigo: '#4b0082',\n ivory: '#fffff0',\n khaki: '#f0e68c',\n lavenderblush: '#fff0f5',\n lavender: '#e6e6fa',\n lawngreen: '#7cfc00',\n lemonchiffon: '#fffacd',\n lightblue: '#add8e6',\n lightcoral: '#f08080',\n lightcyan: '#e0ffff',\n lightgoldenrodyellow: '#fafad2',\n lightgray: '#d3d3d3',\n lightgreen: '#90ee90',\n lightgrey: '#d3d3d3',\n lightpink: '#ffb6c1',\n lightsalmon: '#ffa07a',\n lightseagreen: '#20b2aa',\n lightskyblue: '#87cefa',\n lightslategray: '#778899',\n lightslategrey: '#778899',\n lightsteelblue: '#b0c4de',\n lightyellow: '#ffffe0',\n lime: '#00ff00',\n limegreen: '#32cd32',\n linen: '#faf0e6',\n magenta: '#ff00ff',\n maroon: '#800000',\n mediumaquamarine: '#66cdaa',\n mediumblue: '#0000cd',\n mediumorchid: '#ba55d3',\n mediumpurple: '#9370db',\n mediumseagreen: '#3cb371',\n mediumslateblue: '#7b68ee',\n mediumspringgreen: '#00fa9a',\n mediumturquoise: '#48d1cc',\n mediumvioletred: '#c71585',\n midnightblue: '#191970',\n mintcream: '#f5fffa',\n mistyrose: '#ffe4e1',\n moccasin: '#ffe4b5',\n navajowhite: '#ffdead',\n navy: '#000080',\n oldlace: '#fdf5e6',\n olive: '#808000',\n olivedrab: '#6b8e23',\n orange: '#ffa500',\n orangered: '#ff4500',\n orchid: '#da70d6',\n palegoldenrod: '#eee8aa',\n palegreen: '#98fb98',\n paleturquoise: '#afeeee',\n palevioletred: '#db7093',\n papayawhip: '#ffefd5',\n peachpuff: '#ffdab9',\n peru: '#cd853f',\n pink: '#ffc0cb',\n plum: '#dda0dd',\n powderblue: '#b0e0e6',\n purple: '#800080',\n rebeccapurple: '#663399',\n red: '#ff0000',\n rosybrown: '#bc8f8f',\n royalblue: '#4169e1',\n saddlebrown: '#8b4513',\n salmon: '#fa8072',\n sandybrown: '#f4a460',\n seagreen: '#2e8b57',\n seashell: '#fff5ee',\n sienna: '#a0522d',\n silver: '#c0c0c0',\n skyblue: '#87ceeb',\n slateblue: '#6a5acd',\n slategray: '#708090',\n slategrey: '#708090',\n snow: '#fffafa',\n springgreen: '#00ff7f',\n steelblue: '#4682b4',\n tan: '#d2b48c',\n teal: '#008080',\n thistle: '#d8bfd8',\n tomato: '#ff6347',\n turquoise: '#40e0d0',\n violet: '#ee82ee',\n wheat: '#f5deb3',\n white: '#ffffff',\n whitesmoke: '#f5f5f5',\n yellow: '#ffff00',\n yellowgreen: '#9acd32',\n};\n","import { convertHexToDecimal, hslToRgb, hsvToRgb, parseIntFromHex, rgbToRgb } from './conversion';\nimport { names } from './css-color-names';\nimport { boundAlpha, convertToPercentage } from './util';\n/**\n * Given a string or object, convert that input to RGB\n *\n * Possible string inputs:\n * ```\n * \"red\"\n * \"#f00\" or \"f00\"\n * \"#ff0000\" or \"ff0000\"\n * \"#ff000000\" or \"ff000000\"\n * \"rgb 255 0 0\" or \"rgb (255, 0, 0)\"\n * \"rgb 1.0 0 0\" or \"rgb (1, 0, 0)\"\n * \"rgba (255, 0, 0, 1)\" or \"rgba 255, 0, 0, 1\"\n * \"rgba (1.0, 0, 0, 1)\" or \"rgba 1.0, 0, 0, 1\"\n * \"hsl(0, 100%, 50%)\" or \"hsl 0 100% 50%\"\n * \"hsla(0, 100%, 50%, 1)\" or \"hsla 0 100% 50%, 1\"\n * \"hsv(0, 100%, 100%)\" or \"hsv 0 100% 100%\"\n * ```\n */\nexport function inputToRGB(color) {\n var rgb = { r: 0, g: 0, b: 0 };\n var a = 1;\n var s = null;\n var v = null;\n var l = null;\n var ok = false;\n var format = false;\n if (typeof color === 'string') {\n color = stringInputToObject(color);\n }\n if (typeof color === 'object') {\n if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {\n rgb = rgbToRgb(color.r, color.g, color.b);\n ok = true;\n format = String(color.r).substr(-1) === '%' ? 'prgb' : 'rgb';\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {\n s = convertToPercentage(color.s);\n v = convertToPercentage(color.v);\n rgb = hsvToRgb(color.h, s, v);\n ok = true;\n format = 'hsv';\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {\n s = convertToPercentage(color.s);\n l = convertToPercentage(color.l);\n rgb = hslToRgb(color.h, s, l);\n ok = true;\n format = 'hsl';\n }\n if (Object.prototype.hasOwnProperty.call(color, 'a')) {\n a = color.a;\n }\n }\n a = boundAlpha(a);\n return {\n ok: ok,\n format: color.format || format,\n r: Math.min(255, Math.max(rgb.r, 0)),\n g: Math.min(255, Math.max(rgb.g, 0)),\n b: Math.min(255, Math.max(rgb.b, 0)),\n a: a,\n };\n}\n// <http://www.w3.org/TR/css3-values/#integers>\nvar CSS_INTEGER = '[-\\\\+]?\\\\d+%?';\n// <http://www.w3.org/TR/css3-values/#number-value>\nvar CSS_NUMBER = '[-\\\\+]?\\\\d*\\\\.\\\\d+%?';\n// Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.\nvar CSS_UNIT = \"(?:\" + CSS_NUMBER + \")|(?:\" + CSS_INTEGER + \")\";\n// Actual matching.\n// Parentheses and commas are optional, but not required.\n// Whitespace can take the place of commas or opening paren\nvar PERMISSIVE_MATCH3 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\nvar PERMISSIVE_MATCH4 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\nvar matchers = {\n CSS_UNIT: new RegExp(CSS_UNIT),\n rgb: new RegExp('rgb' + PERMISSIVE_MATCH3),\n rgba: new RegExp('rgba' + PERMISSIVE_MATCH4),\n hsl: new RegExp('hsl' + PERMISSIVE_MATCH3),\n hsla: new RegExp('hsla' + PERMISSIVE_MATCH4),\n hsv: new RegExp('hsv' + PERMISSIVE_MATCH3),\n hsva: new RegExp('hsva' + PERMISSIVE_MATCH4),\n hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n};\n/**\n * Permissive string parsing. Take in a number of formats, and output an object\n * based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`\n */\nexport function stringInputToObject(color) {\n color = color.trim().toLowerCase();\n if (color.length === 0) {\n return false;\n }\n var named = false;\n if (names[color]) {\n color = names[color];\n named = true;\n }\n else if (color === 'transparent') {\n return { r: 0, g: 0, b: 0, a: 0, format: 'name' };\n }\n // Try to match string input using regular expressions.\n // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]\n // Just return an object and let the conversion functions handle that.\n // This way the result will be the same whether the tinycolor is initialized with string or object.\n var match = matchers.rgb.exec(color);\n if (match) {\n return { r: match[1], g: match[2], b: match[3] };\n }\n match = matchers.rgba.exec(color);\n if (match) {\n return { r: match[1], g: match[2], b: match[3], a: match[4] };\n }\n match = matchers.hsl.exec(color);\n if (match) {\n return { h: match[1], s: match[2], l: match[3] };\n }\n match = matchers.hsla.exec(color);\n if (match) {\n return { h: match[1], s: match[2], l: match[3], a: match[4] };\n }\n match = matchers.hsv.exec(color);\n if (match) {\n return { h: match[1], s: match[2], v: match[3] };\n }\n match = matchers.hsva.exec(color);\n if (match) {\n return { h: match[1], s: match[2], v: match[3], a: match[4] };\n }\n match = matchers.hex8.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n a: convertHexToDecimal(match[4]),\n format: named ? 'name' : 'hex8',\n };\n }\n match = matchers.hex6.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n format: named ? 'name' : 'hex',\n };\n }\n match = matchers.hex4.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1] + match[1]),\n g: parseIntFromHex(match[2] + match[2]),\n b: parseIntFromHex(match[3] + match[3]),\n a: convertHexToDecimal(match[4] + match[4]),\n format: named ? 'name' : 'hex8',\n };\n }\n match = matchers.hex3.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1] + match[1]),\n g: parseIntFromHex(match[2] + match[2]),\n b: parseIntFromHex(match[3] + match[3]),\n format: named ? 'name' : 'hex',\n };\n }\n return false;\n}\n/**\n * Check to see if it looks like a CSS unit\n * (see `matchers` above for definition).\n */\nexport function isValidCSSUnit(color) {\n return Boolean(matchers.CSS_UNIT.exec(String(color)));\n}\n","import { inputToRGB, rgbToHex, rgbToHsv } from '@ctrl/tinycolor';\n\nvar hueStep = 2; // 色相阶梯\n\nvar saturationStep = 0.16; // 饱和度阶梯,浅色部分\n\nvar saturationStep2 = 0.05; // 饱和度阶梯,深色部分\n\nvar brightnessStep1 = 0.05; // 亮度阶梯,浅色部分\n\nvar brightnessStep2 = 0.15; // 亮度阶梯,深色部分\n\nvar lightColorCount = 5; // 浅色数量,主色上\n\nvar darkColorCount = 4; // 深色数量,主色下\n// 暗色主题颜色映射关系表\n\nvar darkColorMap = [{\n index: 7,\n opacity: 0.15\n}, {\n index: 6,\n opacity: 0.25\n}, {\n index: 5,\n opacity: 0.3\n}, {\n index: 5,\n opacity: 0.45\n}, {\n index: 5,\n opacity: 0.65\n}, {\n index: 5,\n opacity: 0.85\n}, {\n index: 4,\n opacity: 0.9\n}, {\n index: 3,\n opacity: 0.95\n}, {\n index: 2,\n opacity: 0.97\n}, {\n index: 1,\n opacity: 0.98\n}]; // Wrapper function ported from TinyColor.prototype.toHsv\n// Keep it here because of `hsv.h * 360`\n\nfunction toHsv(_ref) {\n var r = _ref.r,\n g = _ref.g,\n b = _ref.b;\n var hsv = rgbToHsv(r, g, b);\n return {\n h: hsv.h * 360,\n s: hsv.s,\n v: hsv.v\n };\n} // Wrapper function ported from TinyColor.prototype.toHexString\n// Keep it here because of the prefix `#`\n\n\nfunction toHex(_ref2) {\n var r = _ref2.r,\n g = _ref2.g,\n b = _ref2.b;\n return \"#\".concat(rgbToHex(r, g, b, false));\n} // Wrapper function ported from TinyColor.prototype.mix, not treeshakable.\n// Amount in range [0, 1]\n// Assume color1 & color2 has no alpha, since the following src code did so.\n\n\nfunction mix(rgb1, rgb2, amount) {\n var p = amount / 100;\n var rgb = {\n r: (rgb2.r - rgb1.r) * p + rgb1.r,\n g: (rgb2.g - rgb1.g) * p + rgb1.g,\n b: (rgb2.b - rgb1.b) * p + rgb1.b\n };\n return rgb;\n}\n\nfunction getHue(hsv, i, light) {\n var hue; // 根据色相不同,色相转向不同\n\n if (Math.round(hsv.h) >= 60 && Math.round(hsv.h) <= 240) {\n hue = light ? Math.round(hsv.h) - hueStep * i : Math.round(hsv.h) + hueStep * i;\n } else {\n hue = light ? Math.round(hsv.h) + hueStep * i : Math.round(hsv.h) - hueStep * i;\n }\n\n if (hue < 0) {\n hue += 360;\n } else if (hue >= 360) {\n hue -= 360;\n }\n\n return hue;\n}\n\nfunction getSaturation(hsv, i, light) {\n // grey color don't change saturation\n if (hsv.h === 0 && hsv.s === 0) {\n return hsv.s;\n }\n\n var saturation;\n\n if (light) {\n saturation = hsv.s - saturationStep * i;\n } else if (i === darkColorCount) {\n saturation = hsv.s + saturationStep;\n } else {\n saturation = hsv.s + saturationStep2 * i;\n } // 边界值修正\n\n\n if (saturation > 1) {\n saturation = 1;\n } // 第一格的 s 限制在 0.06-0.1 之间\n\n\n if (light && i === lightColorCount && saturation > 0.1) {\n saturation = 0.1;\n }\n\n if (saturation < 0.06) {\n saturation = 0.06;\n }\n\n return Number(saturation.toFixed(2));\n}\n\nfunction getValue(hsv, i, light) {\n var value;\n\n if (light) {\n value = hsv.v + brightnessStep1 * i;\n } else {\n value = hsv.v - brightnessStep2 * i;\n }\n\n if (value > 1) {\n value = 1;\n }\n\n return Number(value.toFixed(2));\n}\n\nfunction generate(color) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var patterns = [];\n var pColor = inputToRGB(color);\n\n for (var i = lightColorCount; i > 0; i -= 1) {\n var hsv = toHsv(pColor);\n var colorString = toHex(inputToRGB({\n h: getHue(hsv, i, true),\n s: getSaturation(hsv, i, true),\n v: getValue(hsv, i, true)\n }));\n patterns.push(colorString);\n }\n\n patterns.push(toHex(pColor));\n\n for (var _i = 1; _i <= darkColorCount; _i += 1) {\n var _hsv = toHsv(pColor);\n\n var _colorString = toHex(inputToRGB({\n h: getHue(_hsv, _i),\n s: getSaturation(_hsv, _i),\n v: getValue(_hsv, _i)\n }));\n\n patterns.push(_colorString);\n } // dark theme patterns\n\n\n if (opts.theme === 'dark') {\n return darkColorMap.map(function (_ref3) {\n var index = _ref3.index,\n opacity = _ref3.opacity;\n var darkColorString = toHex(mix(inputToRGB(opts.backgroundColor || '#141414'), inputToRGB(patterns[index]), opacity * 100));\n return darkColorString;\n });\n }\n\n return patterns;\n}\n\nvar presetPrimaryColors = {\n red: '#F5222D',\n volcano: '#FA541C',\n orange: '#FA8C16',\n gold: '#FAAD14',\n yellow: '#FADB14',\n lime: '#A0D911',\n green: '#52C41A',\n cyan: '#13C2C2',\n blue: '#1890FF',\n geekblue: '#2F54EB',\n purple: '#722ED1',\n magenta: '#EB2F96',\n grey: '#666666'\n};\nvar presetPalettes = {};\nvar presetDarkPalettes = {};\nObject.keys(presetPrimaryColors).forEach(function (key) {\n presetPalettes[key] = generate(presetPrimaryColors[key]);\n presetPalettes[key].primary = presetPalettes[key][5]; // dark presetPalettes\n\n presetDarkPalettes[key] = generate(presetPrimaryColors[key], {\n theme: 'dark',\n backgroundColor: '#141414'\n });\n presetDarkPalettes[key].primary = presetDarkPalettes[key][5];\n});\nvar red = presetPalettes.red;\nvar volcano = presetPalettes.volcano;\nvar gold = presetPalettes.gold;\nvar orange = presetPalettes.orange;\nvar yellow = presetPalettes.yellow;\nvar lime = presetPalettes.lime;\nvar green = presetPalettes.green;\nvar cyan = presetPalettes.cyan;\nvar blue = presetPalettes.blue;\nvar geekblue = presetPalettes.geekblue;\nvar purple = presetPalettes.purple;\nvar magenta = presetPalettes.magenta;\nvar grey = presetPalettes.grey;\n\nexport { blue, cyan, geekblue, generate, gold, green, grey, lime, magenta, orange, presetDarkPalettes, presetPalettes, presetPrimaryColors, purple, red, volcano, yellow };\n","import { generate } from \"@ant-design/colors\";\nexport function getStyleByBaseColors(theme, baseColors, backgroundColor) {\n return (theme === \"dark\" ? getDarkStyle : getLightStyle)(\"\".concat(getCssVariableDefinitionsByPalettes(generatePalettes(baseColors, theme, backgroundColor), theme), \"\\n\").concat(getMigratedCssVariableDefinitions(theme, baseColors, backgroundColor)));\n}\nexport function getStyleByBrandColor(theme, brandColor) {\n return (theme === \"dark\" ? getDarkStyle : getLightStyle)(getCssVariableDefinitionsByBrand(brandColor));\n}\nexport function getStyleByVariables(theme, variables) {\n return (theme === \"dark\" ? getDarkStyle : getLightStyle)(getCssVariableDefinitionsByVariables(variables));\n}\n\nfunction getLightStyle(cssVariableDefinitions) {\n return \":root,\\n[data-override-theme=\\\"light\\\"] {\\n\".concat(cssVariableDefinitions, \"}\");\n}\n\nfunction getDarkStyle(cssVariableDefinitions) {\n return \"html[data-theme=\\\"dark-v2\\\"],\\n[data-override-theme=\\\"dark-v2\\\"] {\\n\".concat(cssVariableDefinitions, \"}\");\n}\n\nfunction getCssVariableDefinitionsByPalettes(palettes, theme) {\n return Object.entries(palettes).flatMap(_ref => {\n var [colorName, palette] = _ref;\n ensureBaseColorName(colorName);\n return palette.map((color, index) => [\" --palette-\".concat(colorName, \"-\").concat(index + 1, \"-channel: \").concat(getRgbChannel(color), \";\")].concat(theme === \"dark\" ? [] : \" --palette-\".concat(colorName, \"-\").concat(index + 1, \": rgb(var(--palette-\").concat(colorName, \"-\").concat(index + 1, \"-channel));\")).join(\"\\n\")) // Concat an empty string to make a double-line-break for each group of color name.\n .concat(\"\");\n }).join(\"\\n\");\n}\n\nfunction generatePalettes(baseColors, theme, backgroundColor) {\n return Object.fromEntries(Object.entries(baseColors).map(_ref2 => {\n var [colorName, baseColor] = _ref2;\n return [colorName, generate(baseColor, theme === \"dark\" ? {\n theme,\n backgroundColor\n } : undefined)];\n }));\n}\n\nfunction getCssVariableDefinitionsByBrand(color) {\n if (typeof color === \"string\") {\n return \" --color-brand: \".concat(color, \";\\n\");\n }\n\n return [\" --color-brand: \".concat(color.default, \";\"), \" --color-brand-hover: \".concat(color.hover, \";\"), \" --color-brand-active: \".concat(color.active, \";\"), \"\"].join(\"\\n\");\n}\n\nfunction getCssVariableDefinitionsByVariables(variables) {\n return Object.entries(variables).map(_ref3 => {\n var [name, color] = _ref3;\n ensureCssVariableName(name);\n return \" \".concat(name, \": \").concat(color, \";\");\n }).concat(\"\").join(\"\\n\");\n}\n\nfunction ensureCssVariableName(name) {\n if (!/^--[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/.test(name)) {\n throw new Error(\"Invalid css variable name: \".concat(JSON.stringify(name)));\n }\n}\n\nfunction ensureBaseColorName(name) {\n if (!/^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(name)) {\n throw new Error(\"Invalid base color name: \".concat(JSON.stringify(name)));\n }\n}\n\nfunction getMigratedCssVariableDefinitions(theme, baseColors, backgroundColor) {\n var migrateMap = {\n green: \"green\",\n red: \"red\",\n blue: \"blue\",\n orange: \"orange\",\n cyan: \"cyan\",\n purple: \"purple\",\n geekblue: \"indigo\"\n };\n return Object.entries(migrateMap).flatMap(_ref4 => {\n var [legacyColorName, newColorName] = _ref4;\n return [\" --theme-\".concat(legacyColorName, \"-color-rgb-channel: \").concat(getRgbChannel(getActualBaseColor(baseColors[newColorName], theme, backgroundColor)), \";\"), ...(theme === \"dark\" ? [] : [\" --theme-\".concat(legacyColorName, \"-color: var(--palette-\").concat(newColorName, \"-6);\"), \" --theme-\".concat(legacyColorName, \"-border-color: var(--palette-\").concat(newColorName, \"-3);\")]), \" --theme-\".concat(legacyColorName, \"-background: var(--palette-\").concat(newColorName, \"-\").concat(theme === \"dark\" ? 2 : 1, \");\"), \"\"];\n }).join(\"\\n\");\n}\n\nfunction getRgbChannel(color) {\n return color.match(/[0-9a-fA-F]{2}/g).map(hex => parseInt(hex, 16)).join(\", \");\n}\n\nfunction getActualBaseColor(baseColor, theme, backgroundColor) {\n return theme === \"dark\" ? generate(baseColor, {\n theme,\n backgroundColor\n })[5] : baseColor;\n}\n//# sourceMappingURL=index.js.map","import {\n BaseColors,\n BrandColor,\n getStyleByBaseColors,\n getStyleByBrandColor,\n getStyleByVariables,\n} from \"@next-core/color-theme\";\n\nexport type ColorThemeOptions =\n | ColorThemeOptionsByBrand\n | ColorThemeOptionsByBaseColors\n | ColorThemeOptionsByVariables;\n\nexport interface ColorThemeOptionsByBrand {\n type: \"brandColor\";\n light?: BrandColor;\n dark?: BrandColor;\n}\n\nexport interface ColorThemeOptionsByBaseColors {\n type: \"baseColors\";\n light?: BaseColors;\n dark?: BaseColors;\n backgroundColor?: string;\n}\n\nexport interface ColorThemeOptionsByVariables {\n type: \"variables\";\n light?: Record<string, string>;\n dark?: Record<string, string>;\n}\n\nexport function applyColorTheme(options: ColorThemeOptions): () => void {\n const style: string[] = [];\n const themes = [\"light\", \"dark\"] as const;\n themes.forEach((theme) => {\n if (options[theme]) {\n switch (options.type) {\n case \"brandColor\":\n style.push(getStyleByBrandColor(theme, options[theme]));\n break;\n case \"baseColors\":\n style.push(\n getStyleByBaseColors(theme, options[theme], options.backgroundColor)\n );\n break;\n case \"variables\":\n style.push(getStyleByVariables(theme, options[theme]));\n break;\n }\n }\n });\n\n if (style.length > 0) {\n const element = document.createElement(\"style\");\n element.textContent = style.join(\"\\n\\n\");\n document.head.appendChild(element);\n return () => {\n element.remove();\n };\n }\n}\n","import { cloneDeep, pick, sortBy } from \"lodash\";\nimport {\n loadScript,\n prefetchScript,\n getTemplateDepsOfStoryboard,\n getDllAndDepsOfStoryboard,\n asyncProcessStoryboard,\n scanBricksInBrickConf,\n scanRouteAliasInStoryboard,\n getDllAndDepsByResource,\n scanProcessorsInAny,\n CustomApiInfo,\n} from \"@next-core/brick-utils\";\nimport i18next from \"i18next\";\nimport * as AuthSdk from \"@next-sdk/auth-sdk\";\nimport {\n BootstrapV2Api_bootstrapV2,\n BootstrapV2Api_getAppStoryboardV2,\n} from \"@next-sdk/api-gateway-sdk\";\nimport { UserAdminApi_searchAllUsersInfo } from \"@next-sdk/user-service-sdk\";\nimport { ObjectMicroAppApi_getObjectMicroAppList } from \"@next-sdk/micro-app-sdk\";\nimport { InstanceApi_postSearch } from \"@next-sdk/cmdb-sdk\";\nimport type {\n MountPoints,\n BootstrapData,\n RuntimeBootstrapData,\n InterceptorParams,\n MicroApp,\n UserInfo,\n MagicBrickConfig,\n FeatureFlags,\n RuntimeStoryboard,\n BrickConf,\n LayoutType,\n PresetBricksConf,\n RouteConf,\n MenuRawData,\n Storyboard,\n SimpleFunction,\n RouteConfOfBricks,\n} from \"@next-core/brick-types\";\nimport { authenticate, isLoggedIn } from \"../auth\";\nimport {\n Router,\n MenuBar,\n AppBar,\n BaseBar,\n registerCustomTemplate,\n} from \"./exports\";\nimport { getHistory } from \"../history\";\nimport {\n RelatedApp,\n VisitedWorkspace,\n RecentApps,\n CustomApiDefinition,\n ThemeSetting,\n} from \"./interfaces\";\nimport { processBootstrapResponse } from \"./processors\";\nimport { brickTemplateRegistry } from \"./TemplateRegistries\";\nimport { listenDevtools } from \"../internal/devtools\";\nimport { registerCustomApi, CUSTOM_API_PROVIDER } from \"../providers/CustomApi\";\nimport { loadAllLazyBricks, loadLazyBricks } from \"./LazyBrickRegistry\";\nimport { isCustomApiProvider } from \"./FlowApi\";\nimport { getRuntime } from \"../runtime\";\nimport { initAnalytics } from \"./initAnalytics\";\nimport { standaloneBootstrap } from \"./standaloneBootstrap\";\nimport { getI18nNamespace } from \"../i18n\";\nimport {\n applyColorTheme,\n ColorThemeOptionsByBrand,\n ColorThemeOptionsByBaseColors,\n ColorThemeOptionsByVariables,\n} from \"../internal/applyColorTheme\";\n\nexport class Kernel {\n public mountPoints: MountPoints;\n public bootstrapData: RuntimeBootstrapData;\n public presetBricks: PresetBricksConf;\n public menuBar: MenuBar;\n public appBar: AppBar;\n public loadingBar: BaseBar;\n public router: Router;\n public currentApp: MicroApp;\n public previousApp: MicroApp;\n public nextApp: MicroApp;\n public currentUrl: string;\n public currentRoute: RouteConf;\n public workspaceStack: VisitedWorkspace[] = [];\n public currentLayout: LayoutType;\n public allUserMapPromise: Promise<Map<string, UserInfo>> = Promise.resolve(\n new Map()\n );\n public allMagicBrickConfigMapPromise: Promise<Map<string, MagicBrickConfig>> =\n Promise.resolve(new Map());\n private allRelatedAppsPromise: Promise<RelatedApp[]> = Promise.resolve([]);\n public allMicroAppApiOrchestrationPromise: Promise<\n Map<string, CustomApiDefinition>\n > = Promise.resolve(new Map());\n private providerRepository = new Map<string, HTMLElement>();\n private loadUsersStarted = false;\n private loadMagicBrickConfigStarted = false;\n\n async bootstrap(mountPoints: MountPoints): Promise<void> {\n this.mountPoints = mountPoints;\n await Promise.all([this.loadCheckLogin(), this.loadMicroApps()]);\n if (this.bootstrapData.storyboards.length === 0) {\n throw new Error(\"No storyboard were found.\");\n }\n\n generateColorTheme(\n this.bootstrapData.settings?.misc?.theme as ThemeSetting\n );\n\n if (isLoggedIn()) {\n this.loadSharedData();\n }\n this.menuBar = new MenuBar(this, \"menuBar\");\n this.appBar = new AppBar(this, \"appBar\");\n this.loadingBar = new BaseBar(this, \"loadingBar\");\n this.router = new Router(this);\n\n initAnalytics();\n\n await this.router.bootstrap();\n if (!window.STANDALONE_MICRO_APPS) {\n this.legacyAuthGuard();\n }\n listenDevtools();\n }\n\n async layoutBootstrap(layout: LayoutType): Promise<void> {\n const supportedLayouts: LayoutType[] = [\"console\", \"business\"];\n if (!supportedLayouts.includes(layout)) {\n throw new Error(`Unknown layout: ${layout}`);\n }\n this.currentLayout = layout;\n\n this.presetBricks =\n layout === \"business\"\n ? {\n loadingBar: \"business-website.loading-bar\",\n pageNotFound: \"business-website.page-not-found\",\n pageError: \"business-website.page-error\",\n }\n : {\n ...this.bootstrapData.navbar,\n pageNotFound: \"basic-bricks.page-not-found\",\n pageError: \"basic-bricks.page-error\",\n };\n\n for (const item of supportedLayouts) {\n if (item === layout) {\n document.body.classList.add(`layout-${item}`);\n } else {\n document.body.classList.remove(`layout-${item}`);\n }\n }\n\n await Promise.all([\n this.menuBar.bootstrap(this.presetBricks.menuBar, {\n testid: \"brick-next-menu-bar\",\n }),\n this.appBar.bootstrap(this.presetBricks.appBar),\n this.loadingBar.bootstrap(this.presetBricks.loadingBar),\n ]);\n }\n\n private legacyAuthGuard(): void {\n // Listen messages from legacy Console-W,\n // Redirect to login page if received an `auth.guard` message.\n window.addEventListener(\"message\", (event: MessageEvent): void => {\n if (event.origin !== window.location.origin) {\n return;\n }\n const data = Object.assign({}, event.data);\n if (data.type === \"auth.guard\") {\n const history = getHistory();\n const ssoEnabled = this.getFeatureFlags()[\"sso-enabled\"];\n history.push(ssoEnabled ? \"/sso-auth/login\" : \"/auth/login\", {\n from: history.location,\n });\n }\n });\n }\n\n private async loadCheckLogin(): Promise<void> {\n if (!window.NO_AUTH_GUARD) {\n const auth = await AuthSdk.checkLogin();\n if (auth.loggedIn) {\n authenticate(auth);\n }\n }\n }\n\n private async loadMicroApps(\n params?: { check_login?: boolean },\n interceptorParams?: InterceptorParams\n ): Promise<void> {\n const data = await (window.STANDALONE_MICRO_APPS\n ? standaloneBootstrap()\n : BootstrapV2Api_bootstrapV2(\n {\n appFields:\n \"defaultConfig,userConfig,locales,name,homepage,id,currentVersion,installStatus,internal,status,icons\",\n ignoreTemplateFields: \"templates\",\n ignoreBrickFields: \"bricks,processors,providers,editors\",\n ...params,\n },\n {\n interceptorParams,\n }\n ));\n const bootstrapResponse = {\n templatePackages: [],\n ...data,\n } as BootstrapData;\n // Merge `app.defaultConfig` and `app.userConfig` to `app.config`.\n processBootstrapResponse(bootstrapResponse);\n this.bootstrapData = {\n ...bootstrapResponse,\n microApps: bootstrapResponse.storyboards\n .map((storyboard) => storyboard.app)\n .filter(Boolean),\n };\n }\n\n reloadMicroApps(\n params?: { check_login?: boolean },\n interceptorParams?: InterceptorParams\n ): Promise<void> {\n // There is no need to reload standalone micro-apps.\n if (!window.STANDALONE_MICRO_APPS) {\n return this.loadMicroApps(params, interceptorParams);\n }\n }\n\n async fulfilStoryboard(storyboard: RuntimeStoryboard): Promise<void> {\n if (storyboard.$$fulfilled) {\n return;\n }\n if (!storyboard.$$fulfilling) {\n storyboard.$$fulfilling = this.doFulfilStoryboard(storyboard);\n }\n return storyboard.$$fulfilling;\n }\n\n private async doFulfilStoryboard(\n storyboard: RuntimeStoryboard\n ): Promise<void> {\n if (window.STANDALONE_MICRO_APPS) {\n Object.assign(storyboard, { $$fulfilled: true });\n } else {\n const { routes, meta, app } = await BootstrapV2Api_getAppStoryboardV2(\n storyboard.app.id,\n {}\n );\n Object.assign(storyboard, {\n routes,\n meta,\n app: { ...storyboard.app, ...app },\n $$fulfilled: true,\n });\n }\n this.postProcessStoryboard(storyboard);\n }\n\n private postProcessStoryboard(storyboard: RuntimeStoryboard): void {\n storyboard.app.$$routeAliasMap = scanRouteAliasInStoryboard(storyboard);\n\n if (storyboard.meta?.i18n) {\n // Prefix to avoid conflict between brick package's i18n namespace.\n const i18nNamespace = getI18nNamespace(\"app\", storyboard.app.id);\n // Support any language in `meta.i18n`.\n Object.entries(storyboard.meta.i18n).forEach(([lang, resources]) => {\n i18next.addResourceBundle(lang, i18nNamespace, resources);\n });\n }\n }\n\n _dev_only_updateStoryboard(\n appId: string,\n storyboardPatch: Partial<Storyboard>\n ): void {\n const storyboard = this.bootstrapData.storyboards.find(\n (item) => item.app.id === appId\n );\n Object.assign(storyboard, {\n ...storyboardPatch,\n $$fulfilling: Promise.resolve(),\n $$fulfilled: true,\n $$registerCustomTemplateProcessed: false,\n $$depsProcessed: false,\n });\n this.postProcessStoryboard(storyboard);\n }\n\n _dev_only_updateTemplatePreviewSettings(\n appId: string,\n templateId: string,\n settings?: unknown\n ): void {\n const { routes } = this.bootstrapData.storyboards.find(\n (item) => item.app.id === appId\n );\n const previewPath = `\\${APP.homepage}/_dev_only_/template-preview/${templateId}`;\n const previewRouteIndex = routes.findIndex(\n (route) => route.path === previewPath\n );\n const newPreviewRoute: RouteConf = {\n path: previewPath,\n bricks: [\n {\n brick: templateId,\n ...pick(settings, \"properties\", \"events\", \"lifeCycle\", \"context\"),\n },\n ],\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\n _dev_only_updateSnippetPreviewSettings(\n appId: string,\n snippetData: {\n snippetId: string;\n bricks: BrickConf[];\n }\n ): void {\n const { routes } = this.bootstrapData.storyboards.find(\n (item) => item.app.id === appId\n );\n const previewPath = `\\${APP.homepage}/_dev_only_/snippet-preview/${snippetData.snippetId}`;\n const previewRouteIndex = routes.findIndex(\n (route) => route.path === previewPath\n );\n const newPreviewRoute: RouteConf = {\n path: previewPath,\n bricks:\n snippetData.bricks?.length > 0\n ? snippetData.bricks\n : [{ brick: \"span\" }],\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\n private _loadDepsOfStoryboard = async (\n storyboard: RuntimeStoryboard\n ): Promise<void> => {\n const { brickPackages, templatePackages } = this.bootstrapData;\n\n if (storyboard.dependsAll) {\n const dllPath = window.DLL_PATH || {};\n await loadScriptOfDll(Object.values(dllPath));\n await loadScriptOfBricksOrTemplates(\n brickPackages\n .map((item) => item.filePath)\n .concat(templatePackages.map((item) => item.filePath))\n );\n await loadAllLazyBricks();\n } else {\n // 先加载模板\n const templateDeps = getTemplateDepsOfStoryboard(\n storyboard,\n templatePackages\n );\n await loadScriptOfBricksOrTemplates(templateDeps);\n // 加载模板后才能加工得到最终的构件表\n const { dll, deps, bricks } = getDllAndDepsOfStoryboard(\n await asyncProcessStoryboard(\n storyboard,\n brickTemplateRegistry,\n templatePackages\n ),\n brickPackages,\n {\n ignoreBricksInUnusedCustomTemplates: true,\n }\n );\n await loadScriptOfDll(dll);\n await loadScriptOfBricksOrTemplates(deps);\n await loadLazyBricks(bricks);\n }\n };\n\n loadDepsOfStoryboard(storyboard: RuntimeStoryboard): Promise<void> {\n return this.gracefullyLoadDeps(this._loadDepsOfStoryboard, storyboard);\n }\n\n private async gracefullyLoadDeps<P extends unknown[]>(\n fn: SimpleFunction<P, Promise<void>>,\n ...args: P\n ): Promise<void> {\n try {\n await fn(...args);\n } catch (e) {\n if (e instanceof Event && e.target instanceof HTMLScriptElement) {\n // The scripts maybe stale when a user stays in page while upgrades been applied.\n // So we force reloading again automatically.\n // NOTE: reload only once to avoid a infinite loop.\n await this.reloadMicroApps();\n await fn(...args);\n } else {\n throw e;\n }\n }\n }\n\n prefetchDepsOfStoryboard(storyboard: RuntimeStoryboard): void {\n if (storyboard.$$depsProcessed) {\n return;\n }\n const { brickPackages, templatePackages } = this.bootstrapData;\n const templateDeps = getTemplateDepsOfStoryboard(\n storyboard,\n templatePackages\n );\n prefetchScript(templateDeps, window.PUBLIC_ROOT);\n const result = getDllAndDepsOfStoryboard(storyboard, brickPackages);\n prefetchScript(result.dll, window.CORE_ROOT);\n prefetchScript(result.deps, window.PUBLIC_ROOT);\n storyboard.$$depsProcessed = true;\n }\n\n registerCustomTemplatesInStoryboard(storyboard: RuntimeStoryboard): void {\n if (!storyboard.$$registerCustomTemplateProcessed) {\n // 注册自定义模板\n if (Array.isArray(storyboard.meta?.customTemplates)) {\n for (const tpl of storyboard.meta.customTemplates) {\n registerCustomTemplate(\n tpl.name,\n {\n bricks: tpl.bricks,\n proxy: tpl.proxy,\n state: tpl.state,\n },\n storyboard.app?.id\n );\n }\n }\n // 每个 storyboard 仅注册一次custom-template\n storyboard.$$registerCustomTemplateProcessed = true;\n }\n }\n\n async loadDynamicBricksInBrickConf(brickConf: BrickConf): Promise<void> {\n // Notice: `brickConf` contains runtime data,\n // which may contains recursive ref,\n // which could cause stack overflow while traversing.\n const bricks = scanBricksInBrickConf(brickConf);\n const processors = scanProcessorsInAny(brickConf);\n await this.loadDynamicBricks(bricks, processors);\n }\n\n private _loadDynamicBricks = async (\n bricks: string[],\n processors?: string[]\n ): Promise<void> => {\n const filteredBricks = bricks.filter(\n // Only try to load undefined custom elements.\n (item) => !customElements.get(item)\n );\n // Try to load deps for dynamic added bricks.\n const { dll, deps } = getDllAndDepsByResource(\n {\n bricks: filteredBricks,\n processors,\n },\n this.bootstrapData.brickPackages\n );\n await loadScriptOfDll(dll);\n await loadScriptOfBricksOrTemplates(deps);\n await loadLazyBricks(filteredBricks);\n };\n\n loadDynamicBricks(bricks: string[], processors?: string[]): Promise<void> {\n return this.gracefullyLoadDeps(this._loadDynamicBricks, bricks, processors);\n }\n\n private _loadEditorBricks = async (editorBricks: string[]): Promise<void> => {\n const { dll, deps } = getDllAndDepsByResource(\n {\n editorBricks: editorBricks.filter(\n // Only try to load undefined custom elements.\n (item) => !customElements.get(item)\n ),\n },\n this.bootstrapData.brickPackages\n );\n await loadScriptOfDll(dll);\n await loadScriptOfBricksOrTemplates(deps);\n };\n\n loadEditorBricks(editorBricks: string[]): Promise<void> {\n return this.gracefullyLoadDeps(this._loadEditorBricks, editorBricks);\n }\n\n firstRendered(): void {\n setTimeout(() => {\n document.body.classList.add(\"first-rendered\");\n });\n }\n\n /**\n * 展开/收起顶栏、侧栏\n * @param visible 是否显示\n */\n toggleBars(visible: boolean): void {\n document.body.classList.toggle(\"bars-hidden\", !visible);\n }\n\n /**\n * 重置顶栏、侧栏\n */\n unsetBars({\n appChanged,\n legacy,\n }: { appChanged?: boolean; legacy?: \"iframe\" } = {}): void {\n this.toggleBars(true);\n if (this.currentLayout !== \"console\") {\n // No bars should be unset for the business layout.\n return;\n }\n if (appChanged) {\n this.menuBar.resetAppMenu();\n }\n if (legacy !== \"iframe\" || appChanged) {\n // 对于 Legacy 页面,仅当切换应用时重设面包屑。\n this.appBar.setBreadcrumb(null);\n }\n getRuntime().applyPageTitle(null);\n }\n\n toggleLegacyIframe(visible: boolean): void {\n document.body.classList.toggle(\"show-legacy-iframe\", visible);\n }\n\n loadSharedData(): void {\n if (!window.STANDALONE_MICRO_APPS) {\n this.loadRelatedAppsAsync();\n }\n }\n\n loadUsersAsync(): void {\n if (!this.loadUsersStarted) {\n this.loadUsersStarted = true;\n this.allUserMapPromise = this.loadUsers();\n }\n }\n\n private async loadUsers(): Promise<Map<string, UserInfo>> {\n const allUserMap: Map<string, UserInfo> = new Map();\n try {\n const query = { state: \"valid\" };\n const fields = {\n name: true,\n nickname: true,\n user_email: true,\n user_tel: true,\n user_icon: true,\n user_memo: true,\n };\n const allUserInfo = (\n await UserAdminApi_searchAllUsersInfo({\n query,\n fields,\n })\n ).list as UserInfo[];\n for (const user of allUserInfo) {\n allUserMap.set(user.name, user);\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(\"Load users error:\", error);\n }\n return allUserMap;\n }\n\n loadMicroAppApiOrchestrationAsync(usedCustomApis: CustomApiInfo[]): void {\n this.allMicroAppApiOrchestrationPromise =\n this.loadMicroAppApiOrchestration(usedCustomApis);\n }\n\n async getMicroAppApiOrchestrationMapAsync(): Promise<\n Map<string, CustomApiDefinition>\n > {\n return await this.allMicroAppApiOrchestrationPromise;\n }\n\n private async loadMicroAppApiOrchestration(\n usedCustomApis: CustomApiInfo[]\n ): Promise<Map<string, CustomApiDefinition>> {\n const allMicroAppApiOrchestrationMap: Map<string, CustomApiDefinition> =\n new Map();\n const legacyCustomApis = usedCustomApis.filter(\n (item) => !item.name.includes(\":\")\n );\n if (legacyCustomApis.length) {\n try {\n const allMicroAppApiOrchestration = (\n await InstanceApi_postSearch(\"MICRO_APP_API_ORCHESTRATION\", {\n page: 1,\n page_size: legacyCustomApis.length,\n fields: {\n name: true,\n namespace: true,\n contract: true,\n config: true,\n type: true,\n },\n query: {\n $or: legacyCustomApis,\n },\n })\n ).list as CustomApiDefinition[];\n for (const api of allMicroAppApiOrchestration) {\n allMicroAppApiOrchestrationMap.set(\n `${api.namespace}@${api.name}`,\n api\n );\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(\"Load legacy custom api error:\", error);\n }\n }\n return allMicroAppApiOrchestrationMap;\n }\n\n loadMagicBrickConfigAsync(): void {\n if (!this.loadMagicBrickConfigStarted) {\n this.loadMagicBrickConfigStarted = true;\n this.allMagicBrickConfigMapPromise = this.loadMagicBrickConfig();\n }\n }\n\n private async loadMagicBrickConfig(): Promise<Map<string, MagicBrickConfig>> {\n const allMagicBrickConfigMap: Map<string, MagicBrickConfig> = new Map();\n try {\n const allMagicBrickConfig = (\n await InstanceApi_postSearch(\"_BRICK_MAGIC\", {\n page: 1,\n // TODO(Lynette): 暂时设置3000,待后台提供全量接口\n page_size: 3000,\n fields: {\n \"*\": true,\n },\n })\n ).list as MagicBrickConfig[];\n for (const config of allMagicBrickConfig) {\n allMagicBrickConfigMap.set(config.selector, config);\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(\"Load magic brick config error:\", error);\n }\n return allMagicBrickConfigMap;\n }\n\n private loadRelatedAppsAsync(): void {\n this.allRelatedAppsPromise = this.loadRelatedApps();\n }\n\n private async loadRelatedApps(): Promise<RelatedApp[]> {\n let relatedApps: RelatedApp[] = [];\n try {\n relatedApps = (await ObjectMicroAppApi_getObjectMicroAppList()).list;\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(\"Load related apps error:\", error);\n }\n return relatedApps;\n }\n\n async getRelatedAppsAsync(appId: string): Promise<RelatedApp[]> {\n if (!appId) {\n return [];\n }\n const allRelatedApps = await this.allRelatedAppsPromise;\n const thisApp = allRelatedApps.find((item) => item.microAppId === appId);\n if (!thisApp) {\n return [];\n }\n return sortBy(\n allRelatedApps.filter((item) => item.objectId === thisApp.objectId),\n [\"order\"]\n );\n }\n\n async updateWorkspaceStack(): Promise<void> {\n if (this.currentApp && this.currentApp.id) {\n const workspace: VisitedWorkspace = {\n appId: this.currentApp.id,\n appName: this.currentApp.name,\n appLocaleName: this.currentApp.localeName,\n url: this.currentUrl,\n };\n if (this.workspaceStack.length > 0) {\n const previousWorkspace =\n this.workspaceStack[this.workspaceStack.length - 1];\n const relatedApps = await this.getRelatedAppsAsync(\n previousWorkspace.appId\n );\n if (\n relatedApps.some((item) => item.microAppId === this.currentApp.id)\n ) {\n Object.assign(previousWorkspace, workspace);\n return;\n }\n }\n\n const relatedApps = await this.getRelatedAppsAsync(this.currentApp.id);\n if (relatedApps.length > 0) {\n this.workspaceStack.push(workspace);\n return;\n }\n }\n this.workspaceStack = [];\n }\n\n getPreviousWorkspace(): VisitedWorkspace {\n if (this.workspaceStack.length > 1) {\n return this.workspaceStack[this.workspaceStack.length - 2];\n }\n }\n\n popWorkspaceStack(): void {\n this.workspaceStack.pop();\n }\n\n getRecentApps(): RecentApps {\n return {\n previousApp: this.previousApp,\n currentApp: this.currentApp,\n previousWorkspace: this.getPreviousWorkspace(),\n };\n }\n\n getFeatureFlags(): FeatureFlags {\n return Object.assign({}, this.bootstrapData?.settings?.featureFlags);\n }\n\n getStandaloneMenus(menuId: string): MenuRawData[] {\n const currentAppId = this.currentApp.id;\n const currentStoryboard = this.bootstrapData.storyboards.find(\n (storyboard) => storyboard.app.id === currentAppId\n );\n return (cloneDeep(currentStoryboard.meta?.menus) ?? [])\n .filter((menu) => menu.menuId === menuId)\n .map((menu) => ({\n ...menu,\n app: [{ appId: currentAppId }],\n }));\n }\n\n async getProviderBrick(provider: string): Promise<HTMLElement> {\n if (isCustomApiProvider(provider)) {\n provider = CUSTOM_API_PROVIDER;\n }\n\n if (this.providerRepository.has(provider)) {\n return this.providerRepository.get(provider);\n }\n\n if (provider === CUSTOM_API_PROVIDER && !customElements.get(provider)) {\n registerCustomApi();\n }\n\n await this.loadDynamicBricks([provider]);\n\n if (!customElements.get(provider)) {\n throw new Error(`Provider not defined: \"${provider}\".`);\n }\n const brick = document.createElement(provider);\n this.providerRepository.set(provider, brick);\n return brick;\n }\n}\n\n// Since `@next-dll/editor-bricks-helper` depends on `@next-dll/react-dnd`,\n// always load react-dnd before loading editor-bricks-helper.\nasync function loadScriptOfDll(dlls: string[]): Promise<void> {\n if (dlls.some((dll) => dll.startsWith(\"dll-of-editor-bricks-helper.\"))) {\n const dllPath = window.DLL_PATH || {};\n await loadScript(dllPath[\"react-dnd\"], window.CORE_ROOT);\n }\n // `loadScript` is auto cached, no need to filter out `react-dnd`.\n await loadScript(dlls, window.CORE_ROOT);\n}\n\nfunction loadScriptOfBricksOrTemplates(src: string[]): Promise<unknown> {\n return loadScript(src, window.PUBLIC_ROOT);\n}\n\nfunction generateColorTheme(theme: ThemeSetting): void {\n if (!theme) {\n return;\n } else if (theme.brandColor as ColorThemeOptionsByBrand) {\n applyColorTheme({\n type: \"brandColor\",\n ...theme.brandColor,\n });\n } else if (theme.baseColors as ColorThemeOptionsByBaseColors) {\n applyColorTheme({\n type: \"baseColors\",\n ...theme.baseColors,\n });\n } else if (theme.variables as ColorThemeOptionsByVariables) {\n applyColorTheme({\n type: \"variables\",\n ...theme.variables,\n });\n }\n}\n","/** @internal */\n\n/** @internal */\n\n/** @internal */\nvar BrickEvent;\n/** @internal */\n\n(function (BrickEvent) {\n BrickEvent[\"READ_SORTING_CHANGE\"] = \"read.sorting.change\";\n BrickEvent[\"READ_SEARCH_CHANGE\"] = \"read.search.change\";\n BrickEvent[\"READ_ADVANCED_SEARCH_CHANGE\"] = \"read.advancedSearch.change\";\n BrickEvent[\"READ_PAGINATION_CHANGE\"] = \"read.pagination.change\";\n BrickEvent[\"READ_SELECTION_CHANGE\"] = \"read.selection.change\";\n BrickEvent[\"READ_RELATED_TO_ME_CHANGE\"] = \"read.relatedToMe.change\";\n BrickEvent[\"READ_ALIVE_HOSTS_CHANGE\"] = \"read.alive.hosts.change\";\n BrickEvent[\"READ_CATEGORY_CHANGE\"] = \"read.category.change\";\n BrickEvent[\"READ_MULTIPLE_CLICK_ITEM\"] = \"read.multiple.clickItem\";\n BrickEvent[\"READ_MULTIPLE_CREATE\"] = \"read.multiple.create\";\n BrickEvent[\"CREATE_SINGLE_SUCCESS\"] = \"create.single.success\";\n BrickEvent[\"CREATE_SINGLE_FAILED\"] = \"create.single.failed\";\n BrickEvent[\"CREATE_SINGLE_CANCELED\"] = \"create.single.canceled\";\n BrickEvent[\"CREATE_SINGLE_NEXT\"] = \"create.single.next\";\n BrickEvent[\"CREATE_SINGLE_SELECT\"] = \"create.single.select\";\n BrickEvent[\"UPDATE_SINGLE_SUCCESS\"] = \"update.single.success\";\n BrickEvent[\"UPDATE_SINGLE_FAILED\"] = \"update.single.failed\";\n BrickEvent[\"UPDATE_SINGLE_CANCELED\"] = \"update.single.canceled\";\n BrickEvent[\"DELETE_SINGLE_SUCCESS\"] = \"delete.single.success\";\n BrickEvent[\"DELETE_SINGLE_FAILED\"] = \"delete.single.failed\";\n BrickEvent[\"DELETE_SINGLE_CANCELED\"] = \"delete.single.canceled\";\n BrickEvent[\"CREATE_MULTI_SUCCESS\"] = \"create.multi.success\";\n BrickEvent[\"CREATE_MULTI_FAILED\"] = \"create.multi.failed\";\n BrickEvent[\"CREATE_MULTI_CANCELED\"] = \"create.multi.canceled\";\n BrickEvent[\"DELETE_MULTI_SUCCESS\"] = \"delete.multi.success\";\n BrickEvent[\"DELETE_MULTI_CANCELED\"] = \"delete.multi.canceled\";\n BrickEvent[\"UPDATE_MULTI_SUCCESS\"] = \"update.multi.success\";\n BrickEvent[\"UPDATE_MULTI_CANCELED\"] = \"update.multi.canceled\";\n BrickEvent[\"UPDATE_MULTI_FAILED\"] = \"update.multi.failed\";\n BrickEvent[\"UPDATE_SINGLE_SELECT\"] = \"update.single.select\";\n BrickEvent[\"UPDATE_SINGLE_SELECTED\"] = \"update.single.selected\";\n BrickEvent[\"READ_CARD_LEFT_BTN_CLICK\"] = \"read.card.leftBtn.click\";\n BrickEvent[\"READ_CARD_RIGHT_BTN_CLICK\"] = \"read.card.rightBtn.click\";\n})(BrickEvent || (BrickEvent = {}));\n\n/** @internal */\nvar PropertyDisplayType;\n/** @internal */\n\n(function (PropertyDisplayType) {\n PropertyDisplayType[\"Tag\"] = \"tag\";\n})(PropertyDisplayType || (PropertyDisplayType = {}));\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/**\n * 特性开关字典。\n *\n * @example\n *\n * ```json\n * {\n * \"next-builder-dynamic-menu\": true\n * }\n * ```\n */\n\n/**\n * 微应用基本信息。\n */\n\n/**\n * 页面整体布局类型。\n */\n\n/**\n * 应用的基本信息的本地化配置。\n *\n * @example\n *\n * ```yaml\n * zh:\n * name: 搜索\n * en:\n * name: Search\n * ```\n */\n\n/**\n * 应用的单个地域的本地化配置。\n */\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/**\n * 应用的 Storyboard 配置。\n */\n\n/** @internal */\nfunction isRouteConfOfBricks(conf) {\n return conf.type !== \"routes\" && !!conf.bricks;\n}\nfunction isRouteConfOfRoutes(conf) {\n return conf.type === \"routes\";\n}\n/**\n * 路由配置,类型可以是构件列表、子路由列表和重定向中的一种。\n */\n\nexport { BrickEvent, PropertyDisplayType, isRouteConfOfBricks, isRouteConfOfRoutes };\n//# sourceMappingURL=index.esm.js.map\n","import type { RuntimeMisc } from \"@next-core/brick-types\";\nimport { getBasePath } from \"./getBasePath\";\n\nlet misc: RuntimeMisc;\n\nexport function getRuntimeMisc(): RuntimeMisc {\n if (!misc) {\n misc = {\n isInIframe: false,\n isInIframeOfSameSite: false,\n isInIframeOfNext: false,\n isInIframeOfVisualBuilder: false,\n isInIframeOfLegacyConsole: false,\n };\n\n if (window !== window.parent) {\n misc.isInIframe = true;\n try {\n // Handle:\n // - Previewing in visual builder by iframe.\n // - Nesting next in next.\n // - Nesting console in next.\n if (window.origin === window.parent.origin) {\n misc.isInIframeOfSameSite = true;\n const selfIsNext = getBasePath() === \"/next/\";\n const parentPathname = window.parent.location.pathname;\n const parentIsNext = parentPathname.startsWith(\"/next/\");\n misc.isInIframeOfNext =\n (Number(selfIsNext) ^ Number(parentIsNext)) === 0;\n misc.isInIframeOfVisualBuilder = parentPathname.startsWith(\n `${parentIsNext ? \"/next\" : \"\"}/visual-builder/`\n );\n misc.isInIframeOfLegacyConsole = selfIsNext && !parentIsNext;\n }\n } catch (e) {\n // do nothing\n }\n }\n\n Object.freeze(misc);\n }\n\n return misc;\n}\n","import {\n BrickConf,\n RouteConf,\n RouteConfOfBricks,\n Storyboard,\n} from \"@next-core/brick-types\";\nimport { isObject } from \"@next-core/brick-utils\";\n\nexport type SubStoryboardMatcher = (routes: RouteConf[]) => RouteConf[];\n\nexport function getSubStoryboardByRoute(\n storyboard: Storyboard,\n matcher: SubStoryboardMatcher\n): Storyboard {\n function getSubRoutes(routes: RouteConf[]): RouteConf[] {\n return matcher(routes).map(getSubRoute);\n }\n\n function getSubRoute(route: RouteConf): RouteConf {\n if (route.type === \"routes\") {\n return {\n ...route,\n routes: getSubRoutes(route.routes),\n };\n }\n return {\n ...route,\n bricks: getSubBricks((route as RouteConfOfBricks).bricks),\n } as RouteConfOfBricks;\n }\n\n function getSubBricks(bricks: BrickConf[]): BrickConf[] {\n if (Array.isArray(bricks)) {\n return bricks.map((brickConf) => getSubBrick(brickConf));\n }\n return bricks;\n }\n\n function getSubBrick(brickConf: BrickConf): BrickConf {\n if (isObject(brickConf.slots)) {\n return {\n ...brickConf,\n slots: Object.fromEntries(\n Object.entries(brickConf.slots).map(([slotId, slotConf]) => {\n if (slotConf.type === \"routes\") {\n return [\n slotId,\n {\n ...slotConf,\n routes: getSubRoutes(slotConf.routes),\n },\n ];\n } /* istanbul ignore else: should never reach */ else if (\n slotConf.type === \"bricks\"\n ) {\n return [\n slotId,\n {\n ...slotConf,\n bricks: getSubBricks(slotConf.bricks),\n },\n ];\n }\n /* istanbul ignore next: should never reach */\n return [slotId, slotConf];\n })\n ),\n };\n }\n return brickConf;\n }\n\n return {\n ...storyboard,\n routes: getSubRoutes(storyboard.routes),\n };\n}\n","import {\n PluginRuntimeContext,\n StoryboardContextItemFreeVariable,\n} from \"@next-core/brick-types\";\nimport { setProperties } from \"./setProperties\";\nimport { RuntimeBrick } from \"../core/BrickNode\";\nimport { getCustomTemplateContext } from \"../core/CustomTemplates/CustomTemplateContext\";\n\nexport interface TrackingContextItem {\n contextNames: string[] | false;\n stateNames: string[] | false;\n propName: string;\n propValue: string;\n}\n\nexport function listenOnTrackingContext(\n brick: RuntimeBrick,\n trackingContextList: TrackingContextItem[],\n context: PluginRuntimeContext\n): void {\n for (const track of trackingContextList) {\n const listener = (): void => {\n if (brick.element) {\n setProperties(\n brick.element,\n { [track.propName]: track.propValue },\n context,\n true\n );\n }\n };\n if (track.contextNames) {\n for (const contextName of track.contextNames) {\n const ctx = context.storyboardContext.get(contextName);\n (\n ctx as StoryboardContextItemFreeVariable\n )?.eventTarget?.addEventListener(\"context.change\", listener);\n }\n }\n if (track.stateNames) {\n const tplContext = getCustomTemplateContext(context.tplContextId);\n for (const stateName of track.stateNames) {\n const ctx = tplContext.state.get().get(stateName);\n (\n ctx as StoryboardContextItemFreeVariable\n )?.eventTarget?.addEventListener(\"state.change\", listener);\n }\n }\n }\n}\n","import { omit, orderBy, set } from \"lodash\";\nimport {\n PluginLocation,\n MatchResult,\n RouteConf,\n RuntimeStoryboard,\n BrickConf,\n PluginHistoryState,\n SidebarMenu,\n SidebarSubMenu,\n MenuConf,\n BreadcrumbItemConf,\n MicroApp,\n ProviderConf,\n PluginRuntimeContext,\n BrickEventHandler,\n ResolveConf,\n StaticMenuProps,\n SeguesConf,\n MessageConf,\n BrickLifeCycle,\n Storyboard,\n StaticMenuConf,\n isRouteConfOfBricks,\n isRouteConfOfRoutes,\n} from \"@next-core/brick-types\";\nimport {\n isObject,\n matchPath,\n computeRealRoutePath,\n hasOwnProperty,\n scanAppGetMenuInAny,\n} from \"@next-core/brick-utils\";\nimport { Action, Location } from \"history\";\nimport { listenerFactory } from \"../internal/bindListeners\";\nimport {\n computeRealProperties,\n computeRealValue,\n} from \"../internal/setProperties\";\nimport { isLoggedIn, getAuth } from \"../auth\";\nimport { getHistory } from \"../history\";\nimport {\n RuntimeBrick,\n Kernel,\n appendBrick,\n Resolver,\n asyncExpandCustomTemplate,\n MountableElement,\n getTagNameOfCustomTemplate,\n symbolForComputedPropsFromProxy,\n symbolForRefForProxy,\n symbolForTplContextId,\n ResolveRequestError,\n RuntimeBrickConfWithTplSymbols,\n} from \"./exports\";\nimport { RedirectConf } from \"./interfaces\";\nimport { looseCheckIf, IfContainer } from \"../checkIf\";\nimport { getMessageDispatcher, MessageDispatcher } from \"./MessageDispatcher\";\nimport { getRuntimeMisc } from \"../internal/misc\";\nimport { httpErrorToString } from \"../handleHttpError\";\nimport {\n getSubStoryboardByRoute,\n SubStoryboardMatcher,\n} from \"../internal/getSubStoryboardByRoute\";\nimport { validatePermissions } from \"../internal/checkPermissions\";\nimport {\n listenOnTrackingContext,\n TrackingContextItem,\n} from \"../internal/listenOnTrackingContext\";\nimport { StoryboardContextWrapper } from \"./StoryboardContext\";\nimport { constructMenuByMenusList } from \"../internal/menu\";\nimport { Media } from \"../internal/mediaQuery\";\nimport { getReadOnlyProxy } from \"../internal/proxyFactories\";\nimport { customTemplateRegistry } from \"./CustomTemplates/constants\";\nimport { CustomTemplate } from \"../../../brick-types/dist/types/manifest\";\n\nexport type MatchRoutesResult =\n | {\n match: MatchResult;\n route: RouteConf;\n }\n | \"missed\"\n | \"unauthenticated\";\n\nexport interface NavConfig {\n breadcrumb: BreadcrumbItemConf[];\n menu: Partial<SidebarMenu>;\n subMenu: Partial<SidebarMenu>;\n}\n\nexport interface MountRoutesResult {\n main: RuntimeBrick[];\n menuInBg: RuntimeBrick[];\n menuBar: {\n menu?: Partial<SidebarMenu>;\n subMenu?: Partial<SidebarSubMenu>;\n menuId?: string;\n subMenuId?: string;\n };\n portal: RuntimeBrick[];\n appBar: {\n pageTitle?: string;\n breadcrumb: BreadcrumbItemConf[];\n documentId?: string;\n noCurrentApp?: boolean;\n };\n flags: {\n unauthenticated?: boolean;\n redirect?: {\n path: string;\n state?: PluginHistoryState;\n };\n barsHidden?: boolean;\n hybrid?: boolean;\n failed?: boolean;\n };\n route?: RouteConf;\n analyticsData?: Record<string, unknown>;\n}\n\ninterface BrickAndLifeCycleHandler {\n brick: RuntimeBrick;\n match: MatchResult;\n tplContextId?: string;\n handler: BrickEventHandler | BrickEventHandler[];\n}\n\nexport interface BrickAndMessage {\n brick: RuntimeBrick;\n match: MatchResult;\n tplContextId?: string;\n message: MessageConf | MessageConf[];\n}\n\nexport class LocationContext {\n private readonly query: URLSearchParams;\n readonly resolver: Resolver;\n readonly messageDispatcher: MessageDispatcher;\n private readonly beforePageLoadHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly pageLoadHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly beforePageLeaveHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly pageLeaveHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly anchorLoadHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly anchorUnloadHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly mediaChangeHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly messageCloseHandlers: BrickAndLifeCycleHandler[] = [];\n private readonly messageHandlers: BrickAndMessage[] = [];\n private readonly segues: SeguesConf = {};\n private currentMatch: MatchResult;\n readonly storyboardContextWrapper = new StoryboardContextWrapper();\n\n constructor(private kernel: Kernel, private location: PluginLocation) {\n this.resolver = new Resolver(kernel);\n this.query = new URLSearchParams(location.search);\n this.messageDispatcher = getMessageDispatcher();\n }\n\n private getContext({\n match,\n tplContextId,\n }: {\n match: MatchResult;\n tplContextId?: string;\n }): PluginRuntimeContext {\n const auth = getAuth();\n const context: PluginRuntimeContext = {\n hash: this.location.hash,\n pathname: this.location.pathname,\n query: this.query,\n match,\n app: this.kernel.nextApp,\n sys: {\n org: auth.org,\n username: auth.username,\n userInstanceId: auth.userInstanceId,\n loginFrom: auth.loginFrom,\n accessRule: auth.accessRule,\n isAdmin: auth.isAdmin,\n ...getRuntimeMisc(),\n },\n flags: this.kernel.getFeatureFlags(),\n segues: this.segues,\n storyboardContext: this.storyboardContextWrapper.get(),\n tplContextId,\n };\n return context;\n }\n\n getCurrentContext(): PluginRuntimeContext {\n return this.getContext({\n match: this.currentMatch,\n });\n }\n\n private matchRoutes(routes: RouteConf[], app: MicroApp): MatchRoutesResult {\n for (const route of routes) {\n const computedPath = computeRealRoutePath(route.path, app);\n if ([].concat(computedPath).includes(undefined)) {\n // eslint-disable-next-line no-console\n console.error(\"Invalid route with invalid path:\", route);\n return \"missed\";\n }\n const match = matchPath(this.location.pathname, {\n path: computedPath,\n exact: route.exact,\n });\n if (match !== null) {\n if (app.noAuthGuard || route.public || isLoggedIn()) {\n this.currentMatch = match;\n return { match, route };\n }\n return \"unauthenticated\";\n }\n }\n return \"missed\";\n }\n\n matchStoryboard(storyboards: RuntimeStoryboard[]): RuntimeStoryboard {\n if (window.STANDALONE_MICRO_APPS && storyboards.length === 1) {\n return storyboards[0];\n }\n // Put apps with longer homepage before shorter ones.\n // E.g., `/legacy/tool` will match first before `/legacy`.\n // This enables two apps with relationship of parent-child of homepage.\n const sortedStoryboards = orderBy(\n storyboards,\n (storyboard) => storyboard.app?.homepage?.length ?? 0,\n \"desc\"\n );\n for (const storyboard of sortedStoryboards) {\n const homepage = storyboard.app?.homepage;\n if (typeof homepage === \"string\" && homepage[0] === \"/\") {\n if (\n matchPath(this.location.pathname, {\n path: homepage,\n exact: homepage === \"/\",\n })\n ) {\n return storyboard;\n }\n }\n }\n }\n\n getSubStoryboardByRoute(storyboard: Storyboard): Storyboard {\n const matcher: SubStoryboardMatcher = (routes) => {\n const matched = this.matchRoutes(routes, storyboard.app);\n return isObject(matched) ? [matched.route] : [];\n };\n return getSubStoryboardByRoute(storyboard, matcher);\n }\n\n async mountRoutes(\n routes: RouteConf[],\n slotId?: string,\n mountRoutesResult?: MountRoutesResult\n ): Promise<MountRoutesResult> {\n const matched = this.matchRoutes(routes, this.kernel.nextApp);\n let redirect: string | ResolveConf;\n const redirectConf: RedirectConf = {};\n let context: PluginRuntimeContext;\n let route: RouteConf;\n switch (matched) {\n case \"missed\":\n break;\n case \"unauthenticated\":\n mountRoutesResult.flags.unauthenticated = true;\n break;\n default:\n mountRoutesResult.route = route = matched.route;\n if (route.segues) {\n Object.assign(this.segues, route.segues);\n }\n if (route.hybrid) {\n mountRoutesResult.flags.hybrid = true;\n }\n context = this.getContext({ match: matched.match });\n this.resolver.defineResolves(route.defineResolves, context);\n await this.mountProviders(\n route.providers,\n matched.match,\n slotId,\n mountRoutesResult\n );\n\n await this.storyboardContextWrapper.define(route.context, context);\n await this.preCheckPermissions(route, context);\n\n redirect = computeRealValue(route.redirect, context, true) as\n | string\n | ResolveConf;\n\n if (redirect) {\n if (typeof redirect === \"string\") {\n // Directly redirect.\n mountRoutesResult.flags.redirect = {\n path: redirect,\n };\n break;\n } else {\n // Resolvable redirect.\n await this.resolver.resolveOne(\"reference\", redirect, redirectConf);\n if (redirectConf.redirect) {\n mountRoutesResult.flags.redirect = {\n path: redirectConf.redirect,\n };\n break;\n }\n }\n }\n\n await this.mountMenu(route.menu, matched.match, mountRoutesResult);\n\n if (route.documentId) {\n mountRoutesResult.appBar.documentId = route.documentId;\n }\n\n if (isRouteConfOfRoutes(route) && Array.isArray(route.routes)) {\n await this.preFetchMenu(route.context);\n await this.mountRoutes(route.routes, slotId, mountRoutesResult);\n } else if (isRouteConfOfBricks(route) && Array.isArray(route.bricks)) {\n await this.preFetchMenu(route);\n await this.mountBricks(\n route.bricks,\n matched.match,\n slotId,\n mountRoutesResult\n );\n\n // analytics data (page_view event)\n if (route.analyticsData) {\n mountRoutesResult.analyticsData = computeRealValue(\n route.analyticsData,\n context,\n true\n ) as Record<string, unknown>;\n }\n }\n }\n return mountRoutesResult;\n }\n\n private async mountMenu(\n menuConf: MenuConf,\n match: MatchResult,\n mountRoutesResult: MountRoutesResult\n ): Promise<void> {\n if (menuConf === false) {\n // `route.menu` 设置为 `false` 表示不显示顶栏和侧栏。\n mountRoutesResult.flags.barsHidden = true;\n return;\n }\n\n // `route.menu` 留空表示不做处理。\n if (!menuConf) {\n return;\n }\n\n const context = this.getContext({ match });\n\n if (menuConf.type === \"brick\") {\n // eslint-disable-next-line no-console\n console.warn(\n \"menu type `brick` is deprecated, please use menu type `resolve` instead\"\n );\n // 如果某个路由的菜单无法配置为静态的 json,\n // 那么可以将菜单配置指定为一个构件,这个构件会被装载到背景容器中(不会在界面中显示),\n // 应该在这个构件的 `connectedCallback` 中执行相关菜单设置,\n // 例如 `getRuntime().menuBar.setAppMenu(...)`。\n const brick: RuntimeBrick = {\n type: menuConf.brick,\n properties: computeRealProperties(\n menuConf.properties,\n context,\n menuConf.injectDeep !== false\n ),\n events: isObject(menuConf.events) ? menuConf.events : {},\n context,\n children: [],\n };\n\n this.registerHandlersFromLifeCycle(menuConf.lifeCycle, brick, match);\n\n // Then, resolve the brick.\n await this.resolver.resolve(menuConf, brick, context);\n\n mountRoutesResult.menuInBg.push(brick);\n return;\n }\n\n let injectDeep = (menuConf as StaticMenuProps).injectDeep;\n if (menuConf.type === \"resolve\") {\n await this.resolver.resolveOne(\n \"reference\",\n {\n transformMapArray: false,\n ...menuConf.resolve,\n },\n menuConf,\n null,\n context\n );\n injectDeep = false;\n }\n\n // 静态菜单配置,仅在有值时才设置,这样可以让菜单设置也具有按路由层级覆盖的能力。\n const otherMenuConf = omit(menuConf, [\"injectDeep\", \"type\"]);\n const injectedMenuConf =\n injectDeep !== false\n ? computeRealValue(otherMenuConf, context, true)\n : otherMenuConf;\n const { sidebarMenu, pageTitle, breadcrumb, menuId, subMenuId } =\n injectedMenuConf as StaticMenuConf;\n\n if (menuId) {\n mountRoutesResult.menuBar.menuId = menuId;\n mountRoutesResult.menuBar.menu = sidebarMenu;\n } else if (sidebarMenu) {\n mountRoutesResult.menuBar.menu = sidebarMenu;\n mountRoutesResult.menuBar.menuId = null;\n }\n if (subMenuId) {\n mountRoutesResult.menuBar.subMenuId = subMenuId;\n }\n if (pageTitle) {\n mountRoutesResult.appBar.pageTitle = pageTitle;\n }\n if (breadcrumb) {\n if (breadcrumb.overwrite) {\n mountRoutesResult.appBar.breadcrumb = breadcrumb.items;\n } else {\n mountRoutesResult.appBar.breadcrumb = [\n ...mountRoutesResult.appBar.breadcrumb,\n ...breadcrumb.items,\n ];\n }\n if (hasOwnProperty(breadcrumb, \"noCurrentApp\"))\n mountRoutesResult.appBar.noCurrentApp = breadcrumb.noCurrentApp;\n }\n }\n\n private async mountProviders(\n providers: ProviderConf[],\n match: MatchResult,\n slotId: string,\n mountRoutesResult: MountRoutesResult\n ): Promise<void> {\n if (Array.isArray(providers)) {\n for (const providerConf of providers) {\n await this.mountBrick(\n {\n ...(typeof providerConf === \"string\"\n ? {\n brick: providerConf,\n }\n : providerConf),\n bg: true,\n injectDeep: true,\n },\n match,\n slotId,\n mountRoutesResult\n );\n }\n }\n }\n\n private async mountBricks(\n bricks: BrickConf[],\n match: MatchResult,\n slotId: string,\n mountRoutesResult: MountRoutesResult,\n tplStack?: string[]\n ): Promise<void> {\n for (const brickConf of bricks) {\n try {\n await this.mountBrick(\n brickConf,\n match,\n slotId,\n mountRoutesResult,\n tplStack?.slice()\n );\n } catch (error) {\n if (error instanceof ResolveRequestError) {\n const errorMessage = httpErrorToString(error.rawError);\n const brickName = brickConf.template || brickConf.brick;\n const isLegacyTemplate = !!brickConf.template;\n mountRoutesResult.main.push({\n type: \"basic-bricks.brick-error\",\n properties: {\n // `textContent` is for compatibility when\n // `basic-bricks.brick-error` does not exists.\n textContent: `${\n isLegacyTemplate ? \"Legacy template\" : \"Brick\"\n } <${brickName}> ResolveRequestError: \"${errorMessage}\"`,\n errorType: \"ResolveRequestError\",\n errorMessage,\n brickName,\n isLegacyTemplate,\n },\n events: {},\n slotId,\n });\n } else {\n throw error;\n }\n }\n }\n }\n\n private async checkResolvableIf(\n ifContainer: IfContainer,\n context: PluginRuntimeContext\n ): Promise<boolean> {\n if (isObject(ifContainer.if)) {\n const ifChecked = computeRealValue(ifContainer.if, context, true);\n\n const ifConf: IfContainer = {};\n await this.resolver.resolveOne(\n \"reference\",\n ifChecked as ResolveConf,\n ifConf\n );\n return !hasOwnProperty(ifConf, \"if\") || !!ifConf.if;\n }\n\n return looseCheckIf(ifContainer, context);\n }\n\n private async preCheckPermissions(\n container: BrickConf | RouteConf,\n context: PluginRuntimeContext\n ): Promise<void> {\n if (\n isLoggedIn() &&\n !getAuth().isAdmin &&\n container.permissionsPreCheck &&\n Array.isArray(container.permissionsPreCheck)\n ) {\n const usedActions = computeRealValue(\n container.permissionsPreCheck,\n context,\n true\n );\n await validatePermissions(usedActions as string[]);\n }\n }\n\n async mountBrick(\n brickConf: BrickConf,\n match: MatchResult,\n slotId: string,\n mountRoutesResult: MountRoutesResult,\n tplStack: string[] = []\n ): Promise<void> {\n const tplContextId = (brickConf as RuntimeBrickConfWithTplSymbols)[\n symbolForTplContextId\n ];\n const context = this.getContext({\n match,\n tplContextId,\n });\n\n // First, check whether the brick should be rendered.\n if (!(await this.checkResolvableIf(brickConf, context))) {\n return;\n }\n\n // Then, resolve the template to a brick.\n if (brickConf.template) {\n await this.resolver.resolve(brickConf, null, context);\n }\n\n // Check `if` again for dynamic loaded templates.\n if (!(await this.checkResolvableIf(brickConf, context))) {\n return;\n }\n\n // If it's a custom template, `tplTagName` is the tag name of the template.\n // Otherwise, `tplTagName` is false.\n const tplTagName = getTagNameOfCustomTemplate(\n brickConf.brick,\n this.kernel.nextApp?.id\n );\n\n if (tplTagName) {\n if (tplStack.includes(tplTagName)) {\n throw new Error(`Circular custom template: \"${tplTagName}\"`);\n }\n tplStack.push(tplTagName);\n }\n\n const brick: RuntimeBrick = {};\n\n await this.storyboardContextWrapper.define(\n brickConf.context,\n context,\n brick\n );\n await this.preCheckPermissions(brickConf, context);\n\n const trackingContextList: TrackingContextItem[] = [];\n\n Object.assign(brick, {\n type: tplTagName || brickConf.brick,\n properties: computeRealProperties(\n brickConf.properties,\n context,\n brickConf.injectDeep !== false,\n trackingContextList\n ),\n events: isObject(brickConf.events) ? brickConf.events : {},\n context,\n children: [],\n slotId,\n refForProxy: (brickConf as RuntimeBrickConfWithTplSymbols)[\n symbolForRefForProxy\n ],\n tplContextId,\n iid: brickConf.iid,\n });\n\n if (\n (brickConf as RuntimeBrickConfWithTplSymbols)[\n symbolForComputedPropsFromProxy\n ]\n ) {\n Object.entries(\n (brickConf as RuntimeBrickConfWithTplSymbols)[\n symbolForComputedPropsFromProxy\n ]\n ).forEach(([propName, propValue]) => {\n set(brick.properties, propName, propValue);\n });\n }\n\n listenOnTrackingContext(brick, trackingContextList, context);\n\n if (brick.refForProxy) {\n brick.refForProxy.brick = brick;\n }\n\n this.registerHandlersFromLifeCycle(\n brickConf.lifeCycle,\n brick,\n match,\n tplContextId\n );\n\n // Then, resolve the brick.\n await this.resolver.resolve(brickConf, brick, context);\n\n let expandedBrickConf = brickConf;\n if (tplTagName) {\n await this.preFetchMenu(customTemplateRegistry.get(tplTagName)?.bricks);\n expandedBrickConf = await asyncExpandCustomTemplate(\n {\n ...brickConf,\n brick: tplTagName,\n // Properties are computed for custom templates.\n properties: brick.properties,\n },\n brick,\n context\n );\n\n // Try to load deps for dynamic added bricks.\n await this.kernel.loadDynamicBricksInBrickConf(expandedBrickConf);\n }\n\n if (expandedBrickConf.exports) {\n for (const [prop, ctxName] of Object.entries(expandedBrickConf.exports)) {\n if (typeof ctxName === \"string\" && ctxName.startsWith(\"CTX.\")) {\n this.storyboardContextWrapper.set(ctxName.substr(4), {\n type: \"brick-property\",\n brick,\n prop,\n });\n }\n }\n }\n\n if (expandedBrickConf.bg) {\n // A bg brick has no slotId.\n brick.slotId = undefined;\n appendBrick(brick, this.kernel.mountPoints.bg as MountableElement);\n } else {\n if (expandedBrickConf.portal) {\n // A portal brick has no slotId.\n brick.slotId = undefined;\n // Make parent portal bricks appear before child bricks.\n // This makes z-index of a child brick be higher than its parent.\n mountRoutesResult.portal.push(brick);\n }\n if (isObject(expandedBrickConf.slots)) {\n for (const [slotId, slotConf] of Object.entries(\n expandedBrickConf.slots\n )) {\n const slottedMountRoutesResult = {\n ...mountRoutesResult,\n main: brick.children,\n };\n if (slotConf.type === \"bricks\") {\n await this.mountBricks(\n slotConf.bricks,\n match,\n slotId,\n slottedMountRoutesResult,\n tplStack\n );\n } else if (slotConf.type === \"routes\") {\n await this.mountRoutes(\n slotConf.routes,\n slotId,\n slottedMountRoutesResult\n );\n }\n }\n }\n if (!expandedBrickConf.portal) {\n mountRoutesResult.main.push(brick);\n }\n }\n }\n\n private registerHandlersFromLifeCycle(\n lifeCycle: BrickLifeCycle,\n brick: RuntimeBrick,\n match: MatchResult,\n tplContextId?: string\n ): void {\n const {\n onBeforePageLoad,\n onPageLoad,\n onBeforePageLeave,\n onPageLeave,\n onAnchorLoad,\n onAnchorUnload,\n onMediaChange,\n onMessage,\n onMessageClose,\n } = lifeCycle ?? {};\n\n if (onBeforePageLoad) {\n this.beforePageLoadHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onBeforePageLoad,\n });\n }\n\n if (onPageLoad) {\n this.pageLoadHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onPageLoad,\n });\n }\n\n if (onBeforePageLeave) {\n this.beforePageLeaveHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onBeforePageLeave,\n });\n }\n\n if (onPageLeave) {\n this.pageLeaveHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onPageLeave,\n });\n }\n\n if (onAnchorLoad) {\n this.anchorLoadHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onAnchorLoad,\n });\n }\n\n if (onAnchorUnload) {\n this.anchorUnloadHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onAnchorUnload,\n });\n }\n\n if (onMediaChange) {\n this.mediaChangeHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onMediaChange,\n });\n }\n\n if (onMessage) {\n this.messageHandlers.push({\n brick,\n match,\n tplContextId,\n message: onMessage,\n });\n }\n\n if (onMessageClose) {\n this.messageCloseHandlers.push({\n brick,\n match,\n tplContextId,\n handler: onMessageClose,\n });\n }\n }\n\n handleBeforePageLoad(): void {\n this.dispatchLifeCycleEvent(\n new CustomEvent(\"page.beforeLoad\"),\n this.beforePageLoadHandlers\n );\n }\n\n handlePageLoad(): void {\n const event = new CustomEvent(\"page.load\");\n\n this.dispatchLifeCycleEvent(event, this.pageLoadHandlers);\n\n // Currently only for e2e testing\n window.dispatchEvent(event);\n }\n\n handleBeforePageLeave(detail: {\n location?: Location<PluginHistoryState>;\n action?: Action;\n }): void {\n this.dispatchLifeCycleEvent(\n new CustomEvent(\"page.beforeLeave\", {\n detail,\n }),\n this.beforePageLeaveHandlers\n );\n }\n\n handlePageLeave(): void {\n this.dispatchLifeCycleEvent(\n new CustomEvent(\"page.leave\"),\n this.pageLeaveHandlers\n );\n }\n\n handleAnchorLoad(): void {\n const hash = getHistory().location.hash;\n if (hash && hash !== \"#\") {\n this.dispatchLifeCycleEvent(\n new CustomEvent(\"anchor.load\", {\n detail: {\n hash,\n anchor: hash.substr(1),\n },\n }),\n this.anchorLoadHandlers\n );\n } else {\n this.dispatchLifeCycleEvent(\n new CustomEvent(\"anchor.unload\"),\n this.anchorUnloadHandlers\n );\n }\n }\n\n handleMediaChange(detail: Media): void {\n this.dispatchLifeCycleEvent(\n new CustomEvent(\"media.change\", { detail: getReadOnlyProxy(detail) }),\n this.mediaChangeHandlers\n );\n }\n\n handleMessage(): void {\n this.messageDispatcher.create(\n this.messageHandlers,\n this.getCurrentContext()\n );\n }\n\n handleMessageClose(event: CloseEvent): void {\n this.dispatchLifeCycleEvent(\n new CustomEvent<CloseEvent>(\"message.close\", {\n detail: event,\n }),\n this.messageCloseHandlers\n );\n }\n\n getCurrentMatch(): MatchResult {\n return this.currentMatch;\n }\n\n /** @deprecated */\n getTplContext(): void {\n // Keep it for compatibility only.\n }\n\n private dispatchLifeCycleEvent(\n event: CustomEvent,\n handlers: BrickAndLifeCycleHandler[]\n ): void {\n for (const brickAndHandler of handlers) {\n for (const handler of ([] as BrickEventHandler[]).concat(\n brickAndHandler.handler\n )) {\n listenerFactory(\n handler,\n this.getContext({\n match: brickAndHandler.match,\n tplContextId: brickAndHandler.tplContextId,\n }),\n brickAndHandler.brick\n )(event);\n }\n }\n }\n\n private async preFetchMenu(data: unknown): Promise<void> {\n const useMenus: string[] = scanAppGetMenuInAny(data);\n if (useMenus.length) {\n await constructMenuByMenusList(\n useMenus,\n this.getCurrentContext(),\n this.kernel\n );\n }\n }\n}\n","import { setRealProperties } from \"../internal/setProperties\";\nimport { RuntimeBrick, BrickNode } from \"./exports\";\n\nexport interface MountableElement extends HTMLElement {\n $$rootBricks: BrickNode[];\n}\n\nexport function unmountTree(mountPoint: MountableElement): void {\n if (Array.isArray(mountPoint.$$rootBricks)) {\n mountPoint.$$rootBricks.forEach((brick) => {\n brick.unmount();\n });\n mountPoint.$$rootBricks = [];\n }\n mountPoint.innerHTML = \"\";\n}\n\n// Todo(steve): reconcile.\nexport function mountTree(\n bricks: RuntimeBrick[],\n mountPoint: MountableElement\n): void {\n // Destroy any existing tree\n if (mountPoint.firstChild) {\n unmountTree(mountPoint);\n }\n\n // Create the top-level internal instance\n const rootBricks = bricks.map((brick) => new BrickNode(brick));\n\n // Mount the top-level component into the container\n const nodes = rootBricks.map((brick) => brick.mount());\n nodes.forEach((node) => mountPoint.appendChild(node));\n\n // Save a reference to the internal instance\n mountPoint.$$rootBricks = rootBricks;\n}\n\nexport function afterMountTree(mountPoint: MountableElement): void {\n if (Array.isArray(mountPoint.$$rootBricks)) {\n mountPoint.$$rootBricks.forEach((brick) => {\n brick.afterMount();\n });\n }\n}\n\nexport function mountStaticNode(\n mountPoint: HTMLElement,\n properties: Record<string, any>\n): void {\n setRealProperties(mountPoint, properties);\n}\n\nexport function appendBrick(\n brick: RuntimeBrick,\n mountPoint: MountableElement\n): void {\n const brickNode = new BrickNode(brick);\n mountPoint.appendChild(brickNode.mount());\n if (!mountPoint.$$rootBricks) {\n mountPoint.$$rootBricks = [];\n }\n mountPoint.$$rootBricks.push(brickNode);\n}\n","import { get } from \"lodash\";\nimport {\n GeneralTransform,\n HandleReject,\n HandleRejectByTransform,\n} from \"@next-core/brick-types\";\nimport {\n transformIntermediateData,\n transformElementProperties,\n} from \"../transformProperties\";\nimport { computeRealValue } from \"./setProperties\";\nimport { RuntimeBrick } from \"../core/exports\";\nimport { handleHttpError } from \"../handleHttpError\";\nimport { recursiveMarkAsInjected } from \"./injected\";\n\nexport interface ProviderDependents {\n brick: RuntimeBrick;\n method: string;\n args: any[];\n field?: string | string[];\n transform?: GeneralTransform;\n transformFrom?: string | string[];\n transformMapArray?: boolean | \"auto\";\n onReject?: HandleReject;\n ref?: string;\n intermediateTransform?: GeneralTransform;\n intermediateTransformFrom?: string | string[];\n intermediateTransformMapArray?: boolean | \"auto\";\n}\n\nexport interface IntervalSettings {\n delay: number;\n ignoreErrors?: boolean;\n timeoutId?: any;\n}\n\nexport interface RefreshOptions {\n ignoreErrors?: boolean;\n throwErrors?: boolean;\n $$scheduled?: boolean;\n}\n\nexport interface RefreshableProvider extends Element {\n interval?: IntervalSettings;\n\n // 使用 `$` 作前缀表明这是运行时追加的属性/方法。\n $refresh: (options?: RefreshOptions) => Promise<void>;\n\n // 使用 `$$` 作前缀表明这是运行时追加的内部属性/方法。\n $$dependents: ProviderDependents[];\n\n $clearInterval?: () => void;\n\n $$intervalCleared?: boolean;\n\n [key: string]: any;\n}\n\nexport function makeProviderRefreshable(\n providerBrick: RefreshableProvider\n): void {\n if (!providerBrick.$refresh) {\n // Use a symbol key to make a private property.\n const keyOfIntervalStopped = Symbol(\"intervalStopped\");\n Object.defineProperties(providerBrick, {\n $$dependents: {\n value: [],\n },\n $stopInterval: {\n value: () => {\n (providerBrick as any)[keyOfIntervalStopped] = true;\n },\n },\n // Currently don't support `$restartInterval`.\n // $restartInterval: {\n // value: () => {\n // (providerBrick as any)[keyOfIntervalStopped] = false;\n // }\n // },\n $refresh: {\n value: async function ({\n ignoreErrors,\n throwErrors,\n $$scheduled,\n }: RefreshOptions = {}) {\n if ($$scheduled && (providerBrick as any)[keyOfIntervalStopped]) {\n return;\n }\n const cache = new Map();\n try {\n await Promise.all(\n (this as RefreshableProvider).$$dependents.map(\n async ({\n brick,\n method,\n args,\n field,\n transform,\n transformFrom,\n transformMapArray,\n onReject,\n ref,\n intermediateTransform,\n intermediateTransformFrom,\n intermediateTransformMapArray,\n }) => {\n const cacheKey = JSON.stringify({\n method,\n args,\n });\n let promise: Promise<any>;\n if (cache.has(cacheKey)) {\n promise = cache.get(cacheKey);\n } else {\n const actualArgs = args\n ? brick.context\n ? computeRealValue(args, brick.context, true)\n : args\n : providerBrick.args || [];\n promise = providerBrick[method](...actualArgs);\n cache.set(cacheKey, promise);\n }\n let data: any;\n\n async function fetchData(): Promise<void> {\n const value = await promise;\n data =\n field === null || field === undefined\n ? value\n : get(value, field);\n // The fetched data and its inner objects should never be *injected* again.\n recursiveMarkAsInjected(data);\n }\n\n if (onReject) {\n // Transform as `onReject.transform` when provider failed.\n try {\n await fetchData();\n } catch (error) {\n const onRejectTransform = (\n onReject as HandleRejectByTransform\n ).transform;\n if (onRejectTransform) {\n transformElementProperties(\n brick.element,\n error,\n brick.context\n ? (computeRealValue(\n onRejectTransform,\n brick.context,\n true\n ) as GeneralTransform)\n : onRejectTransform\n );\n }\n return;\n }\n } else {\n await fetchData();\n }\n\n if (ref) {\n data = transformIntermediateData(\n data,\n brick.context\n ? (computeRealValue(\n intermediateTransform,\n brick.context,\n true\n ) as GeneralTransform)\n : intermediateTransform,\n intermediateTransformFrom,\n intermediateTransformMapArray\n );\n }\n\n transformElementProperties(\n brick.element,\n data,\n brick.context\n ? (computeRealValue(\n transform,\n brick.context,\n true\n ) as GeneralTransform)\n : transform,\n transformFrom,\n transformMapArray\n );\n }\n )\n );\n } catch (error) {\n if (!ignoreErrors) {\n // 默认提示错误,但不抛出错误。\n handleHttpError(error);\n if (throwErrors) {\n throw error;\n }\n }\n }\n },\n },\n });\n }\n}\n","import { get } from \"lodash\";\nimport {\n BrickConf,\n PluginRuntimeContext,\n RuntimeBrickConf,\n RefResolveConf,\n EntityResolveConf,\n DefineResolveConf,\n ResolveConf,\n HandleRejectByTransform,\n UseProviderResolveConf,\n SelectorProviderResolveConf,\n HandleReject,\n HandleRejectByCatch,\n GeneralTransform,\n} from \"@next-core/brick-types\";\nimport { asyncProcessBrick } from \"@next-core/brick-utils\";\nimport { computeRealValue } from \"../internal/setProperties\";\nimport { Kernel, RuntimeBrick } from \"./exports\";\nimport {\n makeProviderRefreshable,\n RefreshableProvider,\n IntervalSettings,\n} from \"../internal/makeProviderRefreshable\";\nimport { brickTemplateRegistry } from \"./TemplateRegistries\";\nimport {\n transformProperties,\n transformIntermediateData,\n} from \"../transformProperties\";\nimport { recursiveMarkAsInjected } from \"../internal/injected\";\nimport { looseCheckIf } from \"../checkIf\";\nimport { getArgsOfCustomApi } from \"./FlowApi\";\n\nexport class Resolver {\n private readonly cache: Map<string, Promise<any>> = new Map();\n private refreshQueue: Map<RefreshableProvider, IntervalSettings> = new Map();\n private readonly definedResolves: Map<string, DefineResolveConf> = new Map();\n private active = true;\n\n constructor(private kernel: Kernel) {}\n\n resetRefreshQueue(): void {\n if (this.refreshQueue.size > 0) {\n for (const interval of this.refreshQueue.values()) {\n clearTimeout(interval.timeoutId);\n }\n this.refreshQueue = new Map();\n }\n this.active = false;\n }\n\n defineResolves(\n resolves: DefineResolveConf[],\n context: PluginRuntimeContext\n ): void {\n if (Array.isArray(resolves)) {\n for (const resolveConf of resolves) {\n this.definedResolves.set(resolveConf.id, {\n ...resolveConf,\n args: computeRealValue(resolveConf.args, context, true) as unknown[],\n });\n }\n }\n }\n\n async resolve(\n brickConf: BrickConf,\n brick: RuntimeBrick,\n context?: PluginRuntimeContext\n ): Promise<void> {\n const useResolves = (brickConf.lifeCycle?.useResolves ?? []).filter(\n (r: ResolveConf) => {\n return looseCheckIf(r, context);\n }\n );\n\n await Promise.all(\n useResolves.map((resolveConf: ResolveConf) =>\n this.resolveOne(\"brick\", resolveConf, brickConf, brick, context)\n )\n );\n if (brickConf.template) {\n (brickConf as RuntimeBrickConf).$$resolved = true;\n\n // Try to process templates.\n await asyncProcessBrick(\n brickConf,\n brickTemplateRegistry,\n this.kernel.bootstrapData.templatePackages\n );\n\n // Try to load deps for dynamic added bricks.\n await this.kernel.loadDynamicBricksInBrickConf(brickConf);\n }\n }\n\n async resolveOne(\n type: \"brick\",\n resolveConf: ResolveConf,\n conf: BrickConf,\n brick?: RuntimeBrick,\n context?: PluginRuntimeContext\n ): Promise<void>;\n async resolveOne(\n type: \"reference\",\n resolveConf: ResolveConf,\n conf: Record<string, any>,\n brick?: RuntimeBrick,\n context?: PluginRuntimeContext\n ): Promise<void>;\n async resolveOne(\n type: \"brick\" | \"reference\",\n resolveConf: ResolveConf,\n conf: BrickConf | Record<string, any>,\n brick?: RuntimeBrick,\n context?: PluginRuntimeContext\n ): Promise<void> {\n const brickConf = conf as BrickConf;\n const propsReference = conf as Record<string, any>;\n let actualResolveConf: EntityResolveConf;\n const { ref, onReject } = resolveConf as RefResolveConf;\n if (ref) {\n if (!this.definedResolves.has(ref)) {\n throw new Error(\n `Provider ref not found: \"${ref}\" in ${\n type === \"reference\"\n ? \"reference\"\n : brickConf.template\n ? `template ${brickConf.template}`\n : `brick ${brick.type}`\n }`\n );\n }\n actualResolveConf = this.definedResolves.get(ref);\n } else {\n actualResolveConf = resolveConf as EntityResolveConf;\n }\n\n let data: any;\n const {\n name,\n provider,\n useProvider,\n method = \"resolve\",\n args,\n field,\n transformFrom,\n transformMapArray,\n transform,\n } = actualResolveConf as UseProviderResolveConf &\n SelectorProviderResolveConf;\n\n let providerBrick: RefreshableProvider;\n\n if (useProvider) {\n providerBrick = (await this.kernel.getProviderBrick(useProvider)) as any;\n } else {\n providerBrick = this.kernel.mountPoints.bg.querySelector(provider);\n\n if (!providerBrick) {\n throw new Error(\n `Provider not found: \"${provider}\" in ${\n type === \"reference\"\n ? \"reference\"\n : brickConf.template\n ? `template ${brickConf.template}`\n : `brick ${brick.type}`\n }`\n );\n }\n\n const providerTagName = providerBrick.tagName.toLowerCase();\n\n if (!customElements.get(providerTagName)) {\n throw new Error(\n `Provider not defined: \"${providerTagName}\", please make sure the related package is installed.`\n );\n }\n\n makeProviderRefreshable(providerBrick);\n\n if (providerBrick.interval && !this.refreshQueue.has(providerBrick)) {\n this.refreshQueue.set(providerBrick, { ...providerBrick.interval });\n }\n\n // Currently we can't refresh dynamic templates.\n if (type !== \"reference\" && !brickConf.template) {\n providerBrick.$$dependents.push({\n brick,\n method,\n args,\n field,\n ...(ref\n ? {\n ref,\n intermediateTransform: transform || name,\n intermediateTransformFrom: transformFrom,\n intermediateTransformMapArray: transformMapArray,\n transform: resolveConf.transform,\n transformFrom: resolveConf.transformFrom,\n transformMapArray: resolveConf.transformMapArray,\n onReject,\n }\n : {\n transform: transform || name,\n transformFrom,\n transformMapArray,\n }),\n });\n }\n }\n\n const cacheKey = JSON.stringify({\n provider,\n useProvider,\n method,\n args,\n });\n let promise: Promise<any>;\n if (this.cache.has(cacheKey)) {\n promise = this.cache.get(cacheKey);\n } else {\n let actualArgs = args\n ? ref\n ? args // `args` are already computed for `defineResolves`\n : context\n ? computeRealValue(args, context, true)\n : args\n : providerBrick.args || [];\n\n promise = (async () => {\n if (useProvider) {\n actualArgs = await getArgsOfCustomApi(useProvider, actualArgs);\n }\n return providerBrick[method](...actualArgs);\n })();\n this.cache.set(cacheKey, promise);\n }\n\n let props: Record<string, any>;\n if (type === \"reference\") {\n props = propsReference;\n } else if (brickConf.template) {\n // It's a dynamic template.\n if (!brickConf.params) {\n // eslint-disable-next-line require-atomic-updates\n brickConf.params = {};\n }\n props = brickConf.params;\n } else {\n // It's a dynamic brick.\n props = brick.properties;\n }\n\n async function fetchData(): Promise<void> {\n const value = await promise;\n data = field === null || field === undefined ? value : get(value, field);\n // The fetched data and its inner objects should never be *injected* again.\n recursiveMarkAsInjected(data);\n }\n\n if (onReject) {\n // Transform as `onReject.transform` when provider failed.\n try {\n await fetchData();\n } catch (error) {\n if (isHandleRejectByTransform(onReject)) {\n transformProperties(\n props,\n error,\n context\n ? (computeRealValue(\n onReject.transform,\n context,\n true\n ) as GeneralTransform)\n : onReject.transform\n );\n return;\n } else if (isHandleRejectByCatch(onReject)) {\n throw new ResolveRequestError(error);\n } else {\n throw error;\n }\n }\n } else {\n await fetchData();\n }\n\n if (ref) {\n data = transformIntermediateData(\n data,\n context\n ? (computeRealValue(transform, context, true) as GeneralTransform)\n : transform,\n transformFrom,\n transformMapArray\n );\n }\n\n transformProperties(\n props,\n data,\n // Also support legacy `name`\n context\n ? (computeRealValue(\n resolveConf.transform || resolveConf.name,\n context,\n true\n ) as GeneralTransform)\n : resolveConf.transform || resolveConf.name,\n resolveConf.transformFrom,\n resolveConf.transformMapArray\n );\n }\n\n scheduleRefreshing(): void {\n for (const [providerBrick, interval] of this.refreshQueue.entries()) {\n const request = async (): Promise<void> => {\n await providerBrick.$refresh({\n ignoreErrors: interval.ignoreErrors,\n throwErrors: true,\n $$scheduled: true,\n });\n if (this.active) {\n // eslint-disable-next-line require-atomic-updates\n interval.timeoutId = setTimeout(request, interval.delay);\n }\n };\n interval.timeoutId = setTimeout(request, interval.delay);\n }\n }\n}\n\nfunction isHandleRejectByTransform(\n onReject: HandleReject\n): onReject is HandleRejectByTransform {\n return !!(onReject as HandleRejectByTransform).transform;\n}\n\nfunction isHandleRejectByCatch(\n onReject: HandleReject\n): onReject is HandleRejectByCatch {\n return !!(onReject as HandleRejectByCatch).isolatedCrash;\n}\n\nexport class ResolveRequestError extends Error {\n rawError: any;\n\n constructor(rawError: any) {\n // Pass remaining arguments (including vendor specific ones) to parent constructor\n super(rawError.message);\n\n this.name = \"ResolveRequestError\";\n\n // Maintains proper stack trace for where our error was thrown (only available on V8)\n // istanbul ignore else\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, ResolveRequestError);\n }\n\n this.rawError = rawError;\n }\n}\n","export function shouldBeDefaultCollapsed(\n defaultCollapsed: boolean,\n defaultCollapsedBreakpoint: number\n): boolean {\n return (\n defaultCollapsed ||\n (defaultCollapsedBreakpoint &&\n document.documentElement.clientWidth < defaultCollapsedBreakpoint)\n );\n}\n","import { locationsAreEqual, createPath, Action, Location } from \"history\";\nimport { findLastIndex, uniqueId } from \"lodash\";\nimport type {\n LayoutType,\n PluginHistoryState,\n PluginLocation,\n PluginRuntimeContext,\n RouteConf,\n RuntimeMisc,\n} from \"@next-core/brick-types\";\nimport {\n restoreDynamicTemplates,\n scanCustomApisInStoryboard,\n mapCustomApisToNameAndNamespace,\n CustomApiInfo,\n} from \"@next-core/brick-utils\";\nimport { apiAnalyzer, userAnalytics } from \"@next-core/easyops-analytics\";\nimport {\n LocationContext,\n mountTree,\n mountStaticNode,\n Kernel,\n MountableElement,\n unmountTree,\n MountRoutesResult,\n appendBrick,\n Resolver,\n NavConfig,\n} from \"./exports\";\nimport { getHistory } from \"../history\";\nimport { httpErrorToString, handleHttpError } from \"../handleHttpError\";\nimport { isUnauthenticatedError } from \"../internal/isUnauthenticatedError\";\nimport { RecentApps, RouterState } from \"./interfaces\";\nimport { resetAllInjected } from \"../internal/injected\";\nimport { getAuth, isLoggedIn } from \"../auth\";\nimport { devtoolsHookEmit } from \"../internal/devtools\";\nimport { afterMountTree } from \"./reconciler\";\nimport { constructMenu } from \"../internal/menu\";\nimport { getRuntimeMisc } from \"../internal/misc\";\nimport {\n applyMode,\n applyTheme,\n setMode,\n setTheme,\n getLocalAppsTheme,\n} from \"../themeAndMode\";\nimport { preCheckPermissions } from \"../internal/checkPermissions\";\nimport { clearPollTimeout } from \"../internal/poll\";\nimport { shouldBeDefaultCollapsed } from \"../internal/shouldBeDefaultCollapsed\";\nimport { registerStoryboardFunctions } from \"./StoryboardFunctions\";\nimport { HttpResponseError } from \"@next-core/brick-http\";\nimport { registerMock } from \"./MockRegistry\";\nimport { collectContract } from \"./CollectContracts\";\nimport { StoryboardContextWrapper } from \"./StoryboardContext\";\nimport { Media, mediaEventTarget } from \"../internal/mediaQuery\";\n\nexport class Router {\n private defaultCollapsed = false;\n private locationContext: LocationContext;\n private rendering = false;\n private nextLocation: PluginLocation;\n private prevLocation: PluginLocation;\n private state: RouterState = \"initial\";\n private renderId: string;\n private readonly featureFlags: Record<string, boolean>;\n private navConfig: NavConfig;\n private mediaEventTargetHandler: (event: CustomEvent<Media>) => void;\n\n constructor(private kernel: Kernel) {\n this.featureFlags = this.kernel.getFeatureFlags();\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 private getBlockMessageBeforePageLave(detail: {\n location?: Location<PluginHistoryState>;\n action?: Action;\n }): string {\n const history = getHistory();\n const previousMessage = history.getBlockMessage();\n this.locationContext?.handleBeforePageLeave(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 private locationChangeNotify(from: string, to: string): void {\n if (this.featureFlags[\"log-location-change\"]) {\n const username = getAuth().username;\n const params = new URLSearchParams();\n params.append(\"u\", username);\n params.append(\"f\", from);\n params.append(\"t\", to);\n params.append(\"ts\", (+new Date()).toString());\n const image = new Image();\n image.src = `${\n window.CORE_ROOT ?? \"\"\n }assets/ea/analytics.jpg?${params.toString()}`;\n }\n }\n\n async bootstrap(): Promise<void> {\n const history = getHistory();\n this.prevLocation = history.location;\n this.locationChangeNotify(\"\", history.location.pathname);\n history.listen(async (location: PluginLocation, action: Action) => {\n let ignoreRendering = false;\n const omittedLocationProps: Partial<PluginLocation> = {\n hash: null,\n state: null,\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 (this.prevLocation.key === undefined ||\n // or the previous location specified notify false.\n this.prevLocation.state?.notify === false))\n ) {\n omittedLocationProps.key = null;\n }\n if (\n locationsAreEqual(\n { ...this.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 if (ignoreRendering) {\n this.prevLocation = location;\n return;\n }\n\n this.locationChangeNotify(this.prevLocation.pathname, location.pathname);\n this.prevLocation = location;\n this.locationContext.handlePageLeave();\n this.locationContext.messageDispatcher.reset();\n if (this.rendering) {\n this.nextLocation = location;\n } else {\n try {\n devtoolsHookEmit(\"locationChange\");\n await this.queuedRender(location);\n } catch (e) {\n handleHttpError(e);\n }\n }\n });\n await this.queuedRender(history.location);\n this.kernel.firstRendered();\n }\n\n private async queuedRender(location: PluginLocation): Promise<void> {\n this.rendering = true;\n try {\n await this.render(location);\n } finally {\n this.rendering = false;\n if (this.nextLocation) {\n const nextLocation = this.nextLocation;\n this.nextLocation = null;\n await this.queuedRender(nextLocation);\n }\n }\n }\n\n private async render(location: PluginLocation): Promise<void> {\n this.state = \"initial\";\n this.renderId = uniqueId(\"render-id-\");\n\n resetAllInjected();\n clearPollTimeout();\n\n if (this.locationContext) {\n this.locationContext.resolver.resetRefreshQueue();\n }\n\n const history = getHistory();\n history.unblock();\n\n // Create the page tracker before page load.\n // And the API Analyzer maybe disabled.\n const pageTracker = apiAnalyzer.getInstance()?.pageTracker();\n\n const locationContext = (this.locationContext = new LocationContext(\n this.kernel,\n location\n ));\n\n const storyboard = locationContext.matchStoryboard(\n this.kernel.bootstrapData.storyboards\n );\n\n if (storyboard) {\n await this.kernel.fulfilStoryboard(storyboard);\n\n // 将动态解析后的模板还原,以便重新动态解析。\n restoreDynamicTemplates(storyboard);\n\n // 预加载权限信息\n if (isLoggedIn() && !getAuth().isAdmin) {\n await preCheckPermissions(storyboard);\n }\n\n // 如果找到匹配的 storyboard,那么根据路由匹配得到的 sub-storyboard 加载它的依赖库。\n const subStoryboard =\n this.locationContext.getSubStoryboardByRoute(storyboard);\n await this.kernel.loadDepsOfStoryboard(subStoryboard);\n\n // 注册 Storyboard 中定义的自定义模板和函数。\n this.kernel.registerCustomTemplatesInStoryboard(storyboard);\n registerStoryboardFunctions(storyboard.meta?.functions, storyboard.app);\n\n registerMock(storyboard.meta?.mocks);\n\n collectContract(storyboard.meta?.contracts);\n }\n\n const { mountPoints, currentApp: previousApp } = this.kernel;\n const currentApp = storyboard ? storyboard.app : undefined;\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 const legacy = currentApp ? currentApp.legacy : undefined;\n this.kernel.nextApp = currentApp;\n const layoutType: LayoutType = currentApp?.layoutType || \"console\";\n\n setTheme(\n getLocalAppsTheme()?.[currentApp?.id] || currentApp?.theme || \"light\"\n );\n setMode(\"default\");\n\n devtoolsHookEmit(\"rendering\");\n\n unmountTree(mountPoints.bg as MountableElement);\n\n const redirectToLogin = (): void => {\n history.replace(\n this.featureFlags[\"sso-enabled\"] ? \"/sso-auth/login\" : \"/auth/login\",\n {\n from: location,\n }\n );\n };\n\n if (storyboard) {\n if (appChanged && currentApp.id && isLoggedIn()) {\n const usedCustomApis: CustomApiInfo[] = mapCustomApisToNameAndNamespace(\n scanCustomApisInStoryboard(storyboard)\n );\n if (usedCustomApis?.length) {\n await this.kernel.loadMicroAppApiOrchestrationAsync(usedCustomApis);\n }\n }\n\n const mountRoutesResult: MountRoutesResult = {\n main: [],\n menuInBg: [],\n menuBar: {},\n portal: [],\n appBar: {\n breadcrumb: [],\n documentId: null,\n noCurrentApp: currentApp.breadcrumb?.noCurrentApp ?? false,\n },\n flags: {\n redirect: undefined,\n hybrid: false,\n failed: false,\n },\n };\n try {\n const specificTemplatePreviewIndex = findLastIndex(\n storyboard.routes,\n (route) =>\n route.path.startsWith(\n \"${APP.homepage}/_dev_only_/template-preview/\"\n )\n );\n\n const specificSnippetPreviewIndex = findLastIndex(\n storyboard.routes,\n (route) =>\n route.path.startsWith(\"${APP.homepage}/_dev_only_/snippet-preview/\")\n );\n const mergedRoutes = [\n ...storyboard.routes.slice(0, specificTemplatePreviewIndex + 1),\n ...storyboard.routes.slice(0, specificSnippetPreviewIndex + 1),\n {\n path: \"${APP.homepage}/_dev_only_/template-preview/:templateId\",\n bricks: [{ brick: \"span\" }],\n menu: false,\n exact: true,\n } as RouteConf,\n {\n path: \"${APP.homepage}/_dev_only_/snippet-preview/:snippetId\",\n bricks: [{ brick: \"span\" }],\n menu: false,\n exact: true,\n } as RouteConf,\n ...storyboard.routes.slice(specificTemplatePreviewIndex + 1),\n ];\n await locationContext.mountRoutes(\n mergedRoutes,\n undefined,\n mountRoutesResult\n );\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(error);\n\n // Redirect to login page if not logged in.\n if (isUnauthenticatedError(error) && !window.NO_AUTH_GUARD) {\n mountRoutesResult.flags.unauthenticated = true;\n } else {\n await this.kernel.layoutBootstrap(layoutType);\n const brickPageError = this.kernel.presetBricks.pageError;\n await this.kernel.loadDynamicBricks([brickPageError]);\n\n mountRoutesResult.flags.failed = true;\n mountRoutesResult.main = [\n {\n type: brickPageError,\n properties: {\n error: httpErrorToString(error),\n code:\n error instanceof HttpResponseError\n ? error.response.status\n : null,\n },\n events: {},\n },\n ];\n mountRoutesResult.portal = [];\n }\n }\n\n const {\n main,\n menuInBg,\n menuBar,\n appBar,\n flags,\n portal,\n route,\n analyticsData,\n } = mountRoutesResult;\n\n const { unauthenticated, redirect, barsHidden, hybrid, failed } = flags;\n\n if (unauthenticated) {\n redirectToLogin();\n return;\n }\n\n if (redirect) {\n history.replace(redirect.path, redirect.state);\n return;\n }\n\n if (appChanged) {\n this.kernel.currentApp = currentApp;\n this.kernel.previousApp = previousApp;\n }\n this.kernel.currentUrl = createPath(location);\n this.kernel.currentRoute = route;\n await Promise.all([\n ...(window.STANDALONE_MICRO_APPS\n ? []\n : [this.kernel.updateWorkspaceStack()]),\n this.kernel.layoutBootstrap(layoutType),\n ]);\n\n this.state = \"ready-to-mount\";\n\n // Unmount main tree to avoid app change fired before new routes mounted.\n unmountTree(mountPoints.main as MountableElement);\n unmountTree(mountPoints.portal as MountableElement);\n\n const actualLegacy =\n (legacy === \"iframe\" && !hybrid) || (legacy !== \"iframe\" && hybrid)\n ? \"iframe\"\n : undefined;\n this.kernel.unsetBars({ appChanged, legacy: actualLegacy });\n\n if (this.mediaEventTargetHandler) {\n mediaEventTarget.removeEventListener(\n \"change\",\n this.mediaEventTargetHandler as EventListener\n );\n this.mediaEventTargetHandler = undefined;\n }\n\n // There is a window to set theme and mode by `lifeCycle.onBeforePageLoad`.\n this.locationContext.handleBeforePageLoad();\n applyTheme();\n applyMode();\n\n if (appChanged) {\n window.dispatchEvent(\n new CustomEvent<RecentApps>(\"app.change\", {\n detail: this.kernel.getRecentApps(),\n })\n );\n }\n\n let misc: RuntimeMisc;\n if (\n barsHidden ||\n ((misc = getRuntimeMisc()),\n misc.isInIframeOfSameSite && !misc.isInIframeOfVisualBuilder)\n ) {\n this.kernel.toggleBars(false);\n } else {\n await constructMenu(\n menuBar,\n this.locationContext.getCurrentContext(),\n this.kernel\n );\n if (this.kernel.currentLayout === \"console\") {\n if (\n shouldBeDefaultCollapsed(\n menuBar.menu?.defaultCollapsed,\n menuBar.menu?.defaultCollapsedBreakpoint\n )\n ) {\n this.kernel.menuBar.collapse(true);\n this.defaultCollapsed = true;\n } else {\n if (this.defaultCollapsed) {\n this.kernel.menuBar.collapse(false);\n }\n this.defaultCollapsed = false;\n }\n if (actualLegacy === \"iframe\") {\n // Do not modify breadcrumb in iframe mode,\n // it will be *popped* from iframe automatically.\n delete appBar.breadcrumb;\n }\n mountStaticNode(this.kernel.menuBar.element, menuBar);\n mountStaticNode(this.kernel.appBar.element, appBar);\n }\n }\n\n this.setNavConfig(mountRoutesResult);\n\n this.kernel.toggleLegacyIframe(actualLegacy === \"iframe\");\n\n menuInBg.forEach((brick) => {\n appendBrick(brick, mountPoints.portal as MountableElement);\n });\n\n if (main.length > 0 || portal.length > 0) {\n main.length > 0 &&\n mountTree(main, mountPoints.main as MountableElement);\n portal.length > 0 &&\n mountTree(portal, mountPoints.portal as MountableElement);\n\n afterMountTree(mountPoints.main as MountableElement);\n afterMountTree(mountPoints.portal as MountableElement);\n afterMountTree(mountPoints.bg as MountableElement);\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 this.locationContext.handlePageLoad();\n this.locationContext.handleAnchorLoad();\n this.locationContext.resolver.scheduleRefreshing();\n this.locationContext.handleMessage();\n }\n\n this.mediaEventTargetHandler = (event) =>\n this.locationContext.handleMediaChange(event.detail);\n mediaEventTarget.addEventListener(\n \"change\",\n this.mediaEventTargetHandler as EventListener\n );\n\n pageTracker?.(locationContext.getCurrentMatch().path);\n\n // analytics page_view event\n userAnalytics.event(\"page_view\", {\n micro_app_id: this.kernel.currentApp.id,\n route_alias: route?.alias,\n ...analyticsData,\n });\n\n this.state = \"mounted\";\n\n devtoolsHookEmit(\"rendered\");\n\n // Try to prefetch during a browser's idle periods.\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/requestIdleCallback\n if (typeof window.requestIdleCallback === \"function\") {\n window.requestIdleCallback(() => {\n this.kernel.prefetchDepsOfStoryboard(storyboard);\n });\n } else {\n Promise.resolve().then(() => {\n this.kernel.prefetchDepsOfStoryboard(storyboard);\n });\n }\n return;\n }\n } else if (!window.NO_AUTH_GUARD && !isLoggedIn()) {\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 }\n\n await this.kernel.layoutBootstrap(layoutType);\n const brickPageNotFound = this.kernel.presetBricks.pageNotFound;\n await this.kernel.loadDynamicBricks([brickPageNotFound]);\n\n this.state = \"ready-to-mount\";\n\n mountTree(\n [\n {\n type: brickPageNotFound,\n properties: {\n url: history.createHref(location),\n },\n events: {},\n },\n ],\n mountPoints.main as MountableElement\n );\n unmountTree(mountPoints.portal as MountableElement);\n\n // Scroll to top after each rendering.\n window.scrollTo(0, 0);\n\n this.state = \"mounted\";\n devtoolsHookEmit(\"rendered\");\n }\n\n private setNavConfig(mountResult: MountRoutesResult): void {\n this.navConfig = {\n breadcrumb: mountResult.appBar.breadcrumb,\n menu: mountResult.menuBar.menu,\n subMenu: mountResult.menuBar.subMenu,\n };\n }\n\n /* istanbul ignore next */\n getNavConfig(): NavConfig {\n return this.navConfig;\n }\n\n /* istanbul ignore next */\n getResolver(): Resolver {\n return this.locationContext.resolver;\n }\n\n getState(): RouterState {\n return this.state;\n }\n\n /* istanbul ignore next */\n getRenderId(): string {\n return this.renderId;\n }\n\n /* istanbul ignore next */\n getCurrentContext(): PluginRuntimeContext {\n return this.locationContext.getCurrentContext();\n }\n\n /* istanbul ignore next */\n getStoryboardContextWrapper(): StoryboardContextWrapper {\n return this.locationContext.storyboardContextWrapper;\n }\n\n /* istanbul ignore next */\n handleMessageClose(event: CloseEvent): void {\n return this.locationContext.handleMessageClose(event);\n }\n}\n","import { BrickConfInTemplate, CustomTemplate } from \"@next-core/brick-types\";\n\ntype RefToBrickConfMap = Map<string, BrickConfInTemplate>;\n\nexport function collectRefsInTemplate(\n template: CustomTemplate\n): RefToBrickConfMap {\n const refMap: RefToBrickConfMap = new Map();\n collectRefsInBrickConfs(template.bricks, refMap);\n return refMap;\n}\n\nfunction collectRefsInBrickConfs(\n brickConfs: BrickConfInTemplate[],\n refMap: RefToBrickConfMap\n): void {\n if (Array.isArray(brickConfs)) {\n for (const item of brickConfs) {\n collectRefsInBrickConf(item, refMap);\n }\n }\n}\n\nfunction collectRefsInBrickConf(\n brickConf: BrickConfInTemplate,\n refMap: RefToBrickConfMap\n): void {\n const { ref, slots } = brickConf;\n if (ref) {\n refMap.set(ref, brickConf);\n }\n if (slots) {\n for (const slotConf of Object.values(slots)) {\n collectRefsInBrickConfs(slotConf.bricks, refMap);\n }\n }\n}\n","import {\n BrickConfInTemplate,\n PluginRuntimeContext,\n} from \"@next-core/brick-types\";\nimport { MergeablePropertyProxy, MergeBase } from \"./internalInterfaces\";\n\nexport function collectMergeBases(\n conf: MergeablePropertyProxy,\n mergeBases: Map<string, Map<string, MergeBase>>,\n contextInTemplate: PluginRuntimeContext,\n refToBrickConf: Map<string, BrickConfInTemplate>\n): void {\n let mergeBaseMap: Map<string, MergeBase>;\n if (mergeBases.has(conf.ref)) {\n mergeBaseMap = mergeBases.get(conf.ref);\n } else {\n mergeBaseMap = new Map();\n mergeBases.set(conf.ref, mergeBaseMap);\n }\n\n if (mergeBaseMap.has(conf.mergeProperty)) {\n conf.$$mergeBase = mergeBaseMap.get(conf.mergeProperty);\n // istanbul ignore if: should never reach\n if (conf.mergeType !== conf.$$mergeBase.mergeType) {\n throw new Error(\n `Properties proxy contained different mergeTypes of \"${conf.$$mergeBase.mergeType}\" and \"${conf.mergeType}\"`\n );\n }\n conf.$$mergeBase.proxies.push(conf);\n } else {\n const baseValue = refToBrickConf.get(conf.ref).properties?.[\n conf.mergeProperty\n ];\n conf.$$mergeBase = {\n proxies: [conf],\n mergeType: conf.mergeType,\n baseValue,\n context: contextInTemplate,\n };\n mergeBaseMap.set(conf.mergeProperty, conf.$$mergeBase);\n }\n}\n","import {\n BrickConfInTemplate,\n CustomTemplateProxySlot,\n PluginRuntimeContext,\n RuntimeBrickConf,\n SlotsConfOfBricks,\n CustomTemplate,\n} from \"@next-core/brick-types\";\nimport { RuntimeBrick } from \"../BrickNode\";\nimport {\n MergeBase,\n PropertyProxy,\n RuntimeCustomTemplateProxy,\n RuntimeCustomTemplateProxyProperties,\n} from \"./internalInterfaces\";\nimport { isMergeableProperty, isVariableProperty } from \"./assertions\";\nimport { collectRefsInTemplate } from \"./collectRefsInTemplate\";\nimport {\n customTemplateRegistry,\n RuntimeBrickConfWithTplSymbols,\n} from \"./constants\";\nimport { collectMergeBases } from \"./collectMergeBases\";\nimport { CustomTemplateContext } from \"./CustomTemplateContext\";\nimport { setupUseBrickInTemplate } from \"./setupUseBrickInTemplate\";\nimport { setupTemplateProxy } from \"./setupTemplateProxy\";\n\nexport interface ProxyContext {\n reversedProxies: ReversedProxies;\n templateProperties: Record<string, unknown>;\n externalSlots: SlotsConfOfBricks;\n templateContextId: string;\n proxyBrick: RuntimeBrick;\n}\n\ninterface ReversedProxies {\n properties: Map<string, PropertyProxy[]>;\n slots: Map<string, SlotProxy[]>;\n mergeBases: Map<string, Map<string, MergeBase>>;\n}\n\ninterface SlotProxy extends CustomTemplateProxySlot {\n $$reversedRef?: string;\n}\n\nexport function expandCustomTemplate(\n brickConf: RuntimeBrickConf,\n proxyBrick: RuntimeBrick,\n context: PluginRuntimeContext\n): RuntimeBrickConf {\n const tplContext = new CustomTemplateContext(proxyBrick);\n const template = customTemplateRegistry.get(brickConf.brick);\n if (Array.isArray(template.state)) {\n tplContext.state.syncDefine(template.state, context, proxyBrick);\n }\n return lowLevelExpandCustomTemplate(\n template,\n brickConf,\n proxyBrick,\n context,\n tplContext\n );\n}\n\nexport async function asyncExpandCustomTemplate(\n brickConf: RuntimeBrickConf,\n proxyBrick: RuntimeBrick,\n context: PluginRuntimeContext\n): Promise<RuntimeBrickConf> {\n const tplContext = new CustomTemplateContext(proxyBrick);\n const template = customTemplateRegistry.get(brickConf.brick);\n if (Array.isArray(template.state)) {\n await tplContext.state.define(template.state, context, proxyBrick);\n }\n return lowLevelExpandCustomTemplate(\n template,\n brickConf,\n proxyBrick,\n context,\n tplContext\n );\n}\n\nfunction lowLevelExpandCustomTemplate(\n template: CustomTemplate,\n brickConf: RuntimeBrickConf,\n proxyBrick: RuntimeBrick,\n context: PluginRuntimeContext,\n tplContext: CustomTemplateContext\n): RuntimeBrickConf {\n const { bricks, proxy, state } = template;\n const {\n properties: templateProperties,\n slots: externalSlots,\n ...restBrickConf\n } = brickConf;\n const newBrickConf = restBrickConf as RuntimeBrickConf;\n\n // Get a copy of proxy for each instance of custom template.\n const proxyCopy: RuntimeCustomTemplateProxy = {\n ...proxy,\n };\n proxyBrick.proxy = proxyCopy;\n proxyBrick.proxyRefs = new Map();\n proxyBrick.stateNames = state?.map((item) => item.name);\n\n const refToBrickConf = collectRefsInTemplate(template);\n\n // Reversed proxies are used for expand storyboard before rendering page.\n const reversedProxies: ReversedProxies = {\n properties: new Map(),\n slots: new Map(),\n mergeBases: new Map(),\n };\n\n const tplVariables: Record<string, unknown> = {};\n\n if (proxy?.properties) {\n const refPropertiesCopy = {} as RuntimeCustomTemplateProxyProperties;\n proxyCopy.$$properties = refPropertiesCopy;\n\n for (const [reversedRef, conf] of Object.entries(proxy.properties)) {\n if (isVariableProperty(conf)) {\n tplVariables[reversedRef] = templateProperties?.[reversedRef];\n } else {\n // Variable property proxies have no refs.\n refPropertiesCopy[reversedRef] = {\n ...conf,\n extraOneWayRefs: Array.isArray(conf.extraOneWayRefs)\n ? conf.extraOneWayRefs.map((extraConf) => ({ ...extraConf }))\n : undefined,\n };\n }\n }\n\n tplContext.setVariables(tplVariables);\n\n const reversedProperties = reversedProxies.properties;\n for (const [reversedRef, conf] of Object.entries(refPropertiesCopy)) {\n let proxies: PropertyProxy[];\n if (reversedProperties.has(conf.ref)) {\n proxies = reversedProperties.get(conf.ref);\n } else {\n proxies = [];\n reversedProperties.set(conf.ref, proxies);\n }\n conf.$$reversedRef = reversedRef;\n\n if (isMergeableProperty(conf)) {\n collectMergeBases(\n conf,\n reversedProxies.mergeBases,\n {\n ...context,\n tplContextId: tplContext.id,\n },\n refToBrickConf\n );\n }\n\n proxies.push(conf);\n\n // Properties may have extra refs.\n if (Array.isArray(conf.extraOneWayRefs)) {\n for (const extraRef of conf.extraOneWayRefs) {\n let extraProxies: PropertyProxy[];\n if (reversedProperties.has(extraRef.ref)) {\n extraProxies = reversedProperties.get(extraRef.ref);\n } else {\n extraProxies = [];\n reversedProperties.set(extraRef.ref, extraProxies);\n }\n (extraRef as PropertyProxy).$$reversedRef = reversedRef;\n extraProxies.push(extraRef);\n }\n }\n }\n }\n\n if (proxy?.slots) {\n const reveredSlots = reversedProxies.slots;\n for (const [reversedRef, conf] of Object.entries<SlotProxy>(proxy.slots)) {\n let proxies: SlotProxy[];\n if (reveredSlots.has(conf.ref)) {\n proxies = reveredSlots.get(conf.ref);\n } else {\n proxies = [];\n reveredSlots.set(conf.ref, proxies);\n }\n conf.$$reversedRef = reversedRef;\n proxies.push(conf);\n }\n }\n\n const proxyContext: ProxyContext = {\n reversedProxies,\n templateProperties,\n externalSlots: externalSlots as SlotsConfOfBricks,\n templateContextId: tplContext.id,\n proxyBrick,\n };\n\n newBrickConf.slots = {\n \"\": {\n type: \"bricks\",\n bricks: bricks.map((item) => expandBrickInTemplate(item, proxyContext)),\n },\n };\n\n return newBrickConf;\n}\n\nfunction expandBrickInTemplate(\n brickConfInTemplate: BrickConfInTemplate,\n proxyContext: ProxyContext\n): RuntimeBrickConfWithTplSymbols {\n // Ignore `if: null` to make `looseCheckIf` working.\n if (brickConfInTemplate.if === null) {\n delete brickConfInTemplate.if;\n }\n const {\n ref,\n slots: slotsInTemplate,\n ...restBrickConfInTemplate\n } = brickConfInTemplate;\n\n const slots: SlotsConfOfBricks = Object.fromEntries(\n Object.entries(slotsInTemplate ?? {}).map(([slotName, slotConf]) => [\n slotName,\n {\n type: \"bricks\",\n bricks: (slotConf.bricks ?? []).map((item) =>\n expandBrickInTemplate(item, proxyContext)\n ),\n },\n ])\n );\n\n setupUseBrickInTemplate(brickConfInTemplate.properties, proxyContext);\n\n return {\n ...restBrickConfInTemplate,\n slots,\n ...setupTemplateProxy(proxyContext, ref, slots),\n };\n}\n","import { customTemplateRegistry } from \"./constants\";\n\n// If it's a custom template, return the tag name of the template.\n// Otherwise, return false.\nexport function getTagNameOfCustomTemplate(\n brick: string,\n appId?: string\n): false | string {\n // When a template is registered by an app, it's namespace maybe missed.\n if (!brick.includes(\".\") && appId) {\n const tagName = `${appId}.${brick}`;\n if (customTemplateRegistry.has(tagName)) {\n return tagName;\n }\n }\n if (customTemplateRegistry.has(brick)) {\n return brick;\n }\n return false;\n}\n","import {\n CustomTemplateProxyBasicProperty,\n CustomTemplateProxyProperty,\n} from \"@next-core/brick-types\";\nimport { transformElementProperties } from \"../../transformProperties\";\nimport { RuntimeBrick } from \"../BrickNode\";\nimport { StoryboardContextWrapper } from \"../StoryboardContext\";\nimport {\n isMergeableProperty,\n isRefProperty,\n isTransformableProperty,\n} from \"./assertions\";\nimport { getCustomTemplateContext } from \"./CustomTemplateContext\";\nimport { propertyMerge } from \"./propertyMerge\";\n\nexport function handleProxyOfCustomTemplate(brick: RuntimeBrick): void {\n // Ignore non-tpl bricks.\n if (!brick.proxyRefs) {\n return;\n }\n\n const node = brick.element as any;\n\n function getElementByRef(ref: string): HTMLElement {\n if (brick.proxyRefs.has(ref)) {\n return brick.proxyRefs.get(ref).brick?.element;\n }\n }\n\n const firstRun = !node.$$getElementByRef;\n\n // For usages of `targetRef: \"...\"`.\n // `tpl.$$getElementByRef(ref)` will return the ref element inside a custom template.\n if (firstRun) {\n Object.defineProperty(node, \"$$getElementByRef\", {\n value: getElementByRef,\n });\n }\n\n if (firstRun && brick.stateNames) {\n // Define properties from state for tpl.\n const getState = (): StoryboardContextWrapper =>\n getCustomTemplateContext(brick.tplContextId).state;\n for (const propName of brick.stateNames) {\n Object.defineProperty(node, propName, {\n get: function () {\n return getState().getValue(propName);\n },\n set: function (value: unknown) {\n getState().updateValue(propName, value, \"replace\");\n },\n enumerable: true,\n });\n }\n }\n\n if (!brick.proxy) {\n return;\n }\n\n const handleExtraOneWayRefs = (\n propName: string,\n propRef: CustomTemplateProxyProperty,\n value: unknown\n ): void => {\n if (isRefProperty(propRef) && Array.isArray(propRef.extraOneWayRefs)) {\n for (const extraRef of propRef.extraOneWayRefs) {\n const extraRefElement = getElementByRef(extraRef.ref) as any;\n // should always have refElement.\n // istanbul ignore else\n if (extraRefElement) {\n if (isTransformableProperty(extraRef)) {\n transformElementProperties(\n extraRefElement as HTMLElement,\n {\n [propName]: value,\n },\n extraRef.refTransform\n );\n } else if (isMergeableProperty(extraRef)) {\n extraRefElement[extraRef.mergeProperty] = propertyMerge(\n extraRef,\n value,\n node\n );\n } else {\n extraRefElement[\n (extraRef as CustomTemplateProxyBasicProperty).refProperty\n ] = value;\n }\n }\n }\n }\n };\n\n const { $$properties: properties, events, methods } = brick.proxy;\n if (properties) {\n for (const [propName, propRef] of Object.entries(properties)) {\n const refElement = getElementByRef(propRef.ref) as any;\n // should always have refElement.\n // istanbul ignore else\n if (refElement) {\n if (isTransformableProperty(propRef) || isMergeableProperty(propRef)) {\n // Create a non-enumerable symbol property to delegate the tpl root property.\n const delegatedPropSymbol = Symbol(`delegatedProp:${propName}`);\n node[delegatedPropSymbol] = node[propName];\n Object.defineProperty(node, propName, {\n get: function () {\n return node[delegatedPropSymbol];\n },\n set: function (value: unknown) {\n node[delegatedPropSymbol] = value;\n if (isTransformableProperty(propRef)) {\n transformElementProperties(\n refElement,\n {\n [propName]: value,\n },\n propRef.refTransform\n );\n } else {\n refElement[propRef.mergeProperty] = propertyMerge(\n propRef,\n value,\n node\n );\n }\n handleExtraOneWayRefs(propName, propRef, value);\n },\n enumerable: true,\n });\n } else {\n Object.defineProperty(node, propName, {\n get: function () {\n return refElement[propRef.refProperty];\n },\n set: function (value: unknown) {\n refElement[propRef.refProperty] = value;\n handleExtraOneWayRefs(propName, propRef, value);\n },\n enumerable: true,\n });\n }\n }\n }\n }\n\n if (events) {\n for (const [eventType, eventRef] of Object.entries(events)) {\n const refElement = getElementByRef(eventRef.ref) as any;\n // should always have refElement.\n // istanbul ignore else\n if (refElement) {\n const listener = (e: Event) => {\n if (e.bubbles) {\n e.stopPropagation();\n }\n (node as HTMLElement).dispatchEvent(\n new CustomEvent(eventType, {\n detail: (e as CustomEvent).detail,\n bubbles: e.bubbles,\n cancelable: e.cancelable,\n composed: e.composed,\n })\n );\n };\n /**\n * useBrick 重新渲染会导致事件重复绑定发生\n * 为了防止代理事件重复绑定, 增加$$proxyEvents\n * 每次设置代理属性方法, 提前判断之前是否已经绑定, 如若有, 则解绑并删除\n */\n if (refElement.$$proxyEvents) {\n refElement.$$proxyEvents = (\n refElement.$$proxyEvents as Array<\n [string, string, (e: Event) => void]\n >\n ).filter(([proxyEvent, event, listener]) => {\n if (proxyEvent === eventType) {\n refElement.removeEventListener(event, listener);\n return false;\n }\n return true;\n });\n } else {\n refElement.$$proxyEvents = [];\n }\n refElement.$$proxyEvents.push([eventType, eventRef.refEvent, listener]);\n refElement.addEventListener(eventRef.refEvent, listener);\n }\n }\n }\n\n if (methods) {\n for (const [method, methodRef] of Object.entries(methods)) {\n const refElement = getElementByRef(methodRef.ref) as any;\n // should always have refElement.\n // istanbul ignore else\n if (refElement) {\n Object.defineProperty(node, method, {\n value: function (...args: unknown[]) {\n return refElement[methodRef.refMethod](...args);\n },\n });\n }\n }\n }\n}\n","import { CustomTemplateConstructor } from \"@next-core/brick-types\";\nimport { appRegistered, customTemplateRegistry } from \"./constants\";\n\nexport function registerCustomTemplate(\n tplName: string,\n tplConstructor: CustomTemplateConstructor,\n appId?: string\n): void {\n let tagName = tplName;\n // When a template is registered by an app, its namespace maybe missed.\n if (appId && !tplName.includes(\".\")) {\n tagName = `${appId}.${tplName}`;\n }\n let registered = customTemplateRegistry.has(tagName);\n if (registered) {\n // When open launchpad, the storyboard will be updated.\n // However, we can't *undefine* a custom element.\n // Just ignore re-registering custom templates.\n if (!appId || appRegistered.has(appId)) {\n // eslint-disable-next-line no-console\n console.warn(`Custom template of \"${tagName}\" already registered.`);\n }\n } else {\n registered = !!customElements.get(tagName);\n if (registered) {\n // eslint-disable-next-line no-console\n console.warn(\n `Custom template of \"${tagName}\" already defined by customElements.`\n );\n }\n }\n // Now we allow re-register custom template\n customTemplateRegistry.set(tagName, {\n ...tplConstructor,\n name: tagName,\n });\n\n // Collect defined properties of the template.\n const props = getPropsOfCustomTemplate(tagName);\n const nativeProp = props.find((prop) => prop in HTMLElement.prototype);\n // istanbul ignore if\n if (nativeProp !== undefined) {\n // eslint-disable-next-line no-console\n console.error(\n `In custom template \"${tagName}\", \"${nativeProp}\" is a native HTMLElement property, and should be avoid to be used as a brick property.`\n );\n }\n\n if (registered) {\n return;\n }\n\n customElements.define(\n tagName,\n class TplElement extends HTMLElement {\n get $$typeof(): string {\n return \"custom-template\";\n }\n\n static get _dev_only_definedProperties(): string[] {\n return getPropsOfCustomTemplate(tagName);\n }\n\n connectedCallback(): void {\n // Don't override user's style settings.\n // istanbul ignore else\n if (!this.style.display) {\n this.style.display = \"block\";\n }\n }\n }\n );\n if (appId) {\n appRegistered.add(appId);\n }\n}\n\nfunction getPropsOfCustomTemplate(tagName: string): string[] {\n const { state, proxy } = customTemplateRegistry.get(tagName);\n return (state?.map((item) => item.name) ?? []).concat(\n Object.keys(proxy?.properties ?? {})\n );\n}\n","export type CustomProcessorFunc = (...args: any[]) => any;\n\nexport const customProcessorRegistry = new Map<\n string,\n Map<string, CustomProcessorFunc>\n>();\n\nexport function registerCustomProcessor(\n processorFullName: string,\n processorFunc: CustomProcessorFunc\n): void {\n // `namespace` should be the camelCase of the package name.\n const [namespace, processorName] = processorFullName.split(\".\");\n let registry = customProcessorRegistry.get(namespace);\n if (!registry) {\n registry = new Map();\n customProcessorRegistry.set(namespace, registry);\n }\n if (registry.has(processorName)) {\n // eslint-disable-next-line no-console\n throw new Error(\n `Custom processor of \"${processorFullName}\" already registered`\n );\n }\n registry.set(processorName, processorFunc);\n}\n","import { Runtime } from \"./core/exports\";\nimport { createHistory } from \"./history\";\nimport { createMessageDispatcher } from \"./core/MessageDispatcher\";\n\nlet runtime: Runtime;\n\n/** @internal */\nexport function createRuntime(): Runtime {\n createHistory();\n createMessageDispatcher();\n runtime = new Runtime();\n return runtime;\n}\n\n/**\n * 获取系统运行时对象。\n *\n * @example\n *\n * ```ts\n * import { getRuntime } from \"@next-core/brick-kit\";\n *\n * const flags = getRuntime.getFeatureFlags();\n * ```\n *\n * @returns 详见 {@link AbstractRuntime}\n */\nexport function getRuntime(): Runtime {\n return runtime;\n}\n","import React from \"react\";\nimport {\n withTranslation,\n WithTranslation,\n // `WithTranslationProps` and `Subtract` is required for api-extractor.\n WithTranslationProps,\n Subtract,\n} from \"react-i18next\";\nimport { httpErrorToString } from \"./handleHttpError\";\nimport { NS_BRICK_KIT, K } from \"./i18n/constants\";\n\ninterface ErrorBoundaryState {\n error: any;\n}\n\n// Ref https://reactjs.org/docs/error-boundaries.html\nclass LegacyErrorBoundary extends React.Component<\n WithTranslation<typeof NS_BRICK_KIT>,\n ErrorBoundaryState\n> {\n constructor(props: WithTranslation<typeof NS_BRICK_KIT>) {\n super(props);\n this.state = { error: null };\n }\n\n static getDerivedStateFromError(error: Error): ErrorBoundaryState {\n // Update state so the next render will show the fallback UI.\n return { error };\n }\n\n /* componentDidCatch(error, info) {\n // You can also log the error to an error reporting service\n logErrorToMyService(error, info);\n } */\n\n render(): React.ReactNode {\n if (this.state.error) {\n // You can render any custom fallback UI\n return (\n <div data-testid=\"error-boundary\">\n <h3>{this.props.t(K.SOMETHING_WENT_WRONG)}</h3>\n <p>{httpErrorToString(this.state.error)}</p>\n </div>\n );\n }\n\n return this.props.children;\n }\n}\n\n/** @internal */\nexport const ErrorBoundary: React.ComponentType<\n Omit<\n Subtract<WithTranslation<typeof NS_BRICK_KIT>, WithTranslationProps>,\n keyof WithTranslation<typeof NS_BRICK_KIT>\n > &\n WithTranslationProps\n> = withTranslation(NS_BRICK_KIT)(LegacyErrorBoundary);\n","import { getRuntime } from \"../runtime\";\nimport { PropertyDeclaration } from \"../UpdatingElement\";\n\nexport function warnNativeHtmlElementProperty(\n key: string,\n options?: PropertyDeclaration\n): void {\n // Testing env is ignored to simplify dependents testing.\n // istanbul ignore if\n if (\n key in HTMLElement.prototype &&\n !options?.__deprecated_and_for_compatibility_only\n ) {\n const message = `\"${key}\" is a native HTMLElement property, and is deprecated to be used as a brick property.`;\n // istanbul ignore if\n if (process.env.NODE_ENV === \"test\") {\n // Allow existed properties to work.\n // But throw error at test, to avoid new conflicted properties.\n throw new Error(message);\n }\n // eslint-disable-next-line no-console\n console[\n getRuntime().getFeatureFlags()[\"development-mode\"] ? \"error\" : \"warn\"\n ](message);\n }\n}\n","// Inspired by [LitElement](https://github.com/Polymer/lit-element)\nimport { PropertyDeclaration, UpdatingElement } from \"../UpdatingElement\";\nimport { ClassElement } from \"./interfaces\";\nimport { warnNativeHtmlElementProperty } from \"./utils\";\n\n// About the (most likely) related version of decorator proposal:\n// https://github.com/tc39/proposal-decorators/blob/691d95e67052e125239a725d2756cb8a039c5fb9/previous/METAPROGRAMMING.md\n\n/**\n * 构件属性装饰器。\n *\n * @example\n *\n * ```ts\n * class MyBrickElement extends UpdatingElement {\n * @property()\n * myStringProp: string;\n *\n * @property({ type: Number })\n * myNumberProp: number;\n *\n * @property({ type: Boolean })\n * myBooleanProperty: boolean;\n *\n * @property({ attribute: false })\n * myComplexProperty: MyComplexInterface;\n * }\n * ```\n *\n * @param options - 构件属性的选项。\n */\nexport function property(options?: PropertyDeclaration): any {\n return function decorateProperty(element: ClassElement): ClassElement {\n if (options?.__unstable_doNotDecorate) {\n return element;\n }\n if (element.kind !== \"field\" || typeof element.key !== \"string\") {\n throw new Error(\n \"`@property()` only support decorate class string property\"\n );\n }\n if (\n typeof element.initializer === \"function\" &&\n options?.attribute !== false\n ) {\n throw new Error(\"`@property()` currently not support initialize value\");\n }\n\n warnNativeHtmlElementProperty(element.key, options);\n\n // createProperty() takes care of defining the property, but we still\n // must return some kind of descriptor, so return a descriptor for an\n // unused prototype field. The finisher calls createProperty().\n return {\n kind: \"field\",\n key: Symbol(),\n placement: \"own\",\n descriptor: {},\n initializer(this: { [key: string]: unknown }) {\n if (typeof element.initializer === \"function\") {\n this[element.key as string] = element.initializer.call(this);\n }\n },\n finisher(Class: typeof UpdatingElement) {\n Class.createProperty(element.key as string, options);\n },\n };\n };\n}\n","import { UpdatingElement, EventDeclaration } from \"../UpdatingElement\";\nimport { ClassElement } from \"./interfaces\";\nimport { warnNativeHtmlElementProperty } from \"./utils\";\n\n/**\n * 构件事件装饰器。\n *\n * @example\n *\n * ```ts\n * class MyBrickElement extends UpdatingElement {\n * @event({\n * type: \"my-brick.my-event\",\n * })\n * private _myEventEmitter: EventEmitter<number>;\n *\n * private _triggerMyEvent = (): void => {\n * this._myEventEmitter.emit(123);\n * };\n * }\n * ```\n *\n * @param options - 构件事件的选项。\n */\nexport function event(options: EventDeclaration): any {\n return function decorateEvent(element: ClassElement): ClassElement {\n if (element.kind !== \"field\" || typeof element.key !== \"string\") {\n throw new Error(\"`@event()` only support decorate class string property\");\n }\n\n if (typeof element.initializer === \"function\") {\n throw new Error(\"`@event()` currently not support initialize value\");\n }\n\n warnNativeHtmlElementProperty(element.key);\n\n return {\n kind: \"field\",\n key: Symbol(),\n placement: \"own\",\n descriptor: {},\n finisher(Class: typeof UpdatingElement) {\n Class.createEventEmitter(element.key as string, options);\n },\n };\n };\n}\n","import { UpdatingElement } from \"../UpdatingElement\";\nimport { ClassElement } from \"./interfaces\";\nimport { warnNativeHtmlElementProperty } from \"./utils\";\n\n/**\n * 构件方法装饰器。\n *\n * @example\n *\n * ```ts\n * class MyBrickElement extends UpdatingElement {\n * @method()\n * myMethod(): void {\n * // Do something.\n * }\n * }\n * ```\n */\nexport function method(): any {\n return function decorateMethod(element: ClassElement): ClassElement {\n if (element.kind !== \"method\" || typeof element.key !== \"string\") {\n throw new Error(\"`@method()` only support decorate class string method\");\n }\n\n warnNativeHtmlElementProperty(element.key);\n\n return {\n ...element,\n finisher(Class: typeof UpdatingElement) {\n Class.createMethod(element.key as string);\n },\n };\n };\n}\n","import { useEffect } from \"react\";\nimport { getRuntime } from \"./runtime\";\n\n/**\n * 设置页面标题,将更新浏览器标签页显示的标题。\n *\n * @example\n *\n * ```tsx\n * function MyReactComponent(props) {\n * useApplyPageTitle(props.pageTitle);\n * // ...\n * }\n * ```\n *\n * @param pageTitle - 页面标题。\n */\nexport function useApplyPageTitle(pageTitle: string): void {\n useEffect(() => {\n getRuntime().applyPageTitle(pageTitle);\n }, [pageTitle]);\n}\n","import React from \"react\";\nimport { RecentApps } from \"./core/interfaces\";\nimport { getRuntime } from \"./runtime\";\n\n/** @internal */\nexport function useRecentApps(): RecentApps {\n const [recentApps, setRecentApps] = React.useState<RecentApps>(\n getRuntime().getRecentApps()\n );\n\n React.useEffect(() => {\n const listener = ((event: CustomEvent<RecentApps>) => {\n setRecentApps(event.detail);\n }) as EventListener;\n window.addEventListener(\"app.change\", listener);\n return () => window.removeEventListener(\"app.change\", listener);\n }, []);\n\n return recentApps;\n}\n","import { MicroApp } from \"@next-core/brick-types\";\nimport { useRecentApps } from \"./useRecentApps\";\n\n/**\n * 获取当前所在微应用信息的 React hooks。\n *\n * @example\n *\n * ```tsx\n * function MyReactComponent() {\n * const app = useCurrentApp();\n * return <div>{app.id}</div>;\n * }\n * ```\n *\n * @returns 当前所在微应用的信息。\n */\nexport function useCurrentApp(): MicroApp {\n return useRecentApps().currentApp;\n}\n","import React from \"react\";\nimport { Location } from \"history\";\nimport { PluginHistoryState } from \"@next-core/brick-types\";\nimport { getHistory } from \"./history\";\n\n/** @internal */\nexport function useLocation(): Location<PluginHistoryState> {\n const history = getHistory();\n const [location, setLocation] = React.useState(history.location);\n\n React.useEffect(() => {\n const unlisten = history.listen((location) => setLocation(location));\n return unlisten;\n }, [history]);\n\n return location;\n}\n","import { set } from \"lodash\";\nimport React, { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport { isObject } from \"@next-core/brick-utils\";\nimport {\n UseBrickConf,\n UseSingleBrickConf,\n RuntimeBrickElement,\n BrickEventsMap,\n UseBrickSlotsConf,\n BrickConf,\n RuntimeBrickConf,\n SlotsConf,\n} from \"@next-core/brick-types\";\nimport { bindListeners, unbindListeners } from \"./internal/bindListeners\";\nimport { setRealProperties } from \"./internal/setProperties\";\nimport {\n RuntimeBrick,\n _internalApiGetCurrentContext,\n _internalApiGetResolver,\n _internalApiGetRouterState,\n _internalApiLoadDynamicBricksInBrickConf,\n RuntimeBrickConfWithTplSymbols,\n symbolForTplContextId,\n symbolForComputedPropsFromProxy,\n symbolForRefForProxy,\n expandCustomTemplate,\n getTagNameOfCustomTemplate,\n handleProxyOfCustomTemplate,\n} from \"./core/exports\";\nimport { handleHttpError } from \"./handleHttpError\";\nimport {\n transformProperties,\n doTransform,\n DoTransformOptions,\n} from \"./transformProperties\";\nimport { looseCheckIfByTransform } from \"./checkIf\";\nimport { isPreEvaluated } from \"./internal/evaluate\";\nimport { cloneDeepWithInjectedMark } from \"./internal/injected\";\nimport {\n listenOnTrackingContext,\n TrackingContextItem,\n} from \"./internal/listenOnTrackingContext\";\n\ninterface BrickAsComponentProps {\n useBrick: UseBrickConf;\n data?: unknown;\n /**\n * @deprecated\n */\n parentRefForUseBrickInPortal?: React.RefObject<HTMLElement>;\n}\n\ninterface SingleBrickAsComponentProps extends BrickAsComponentProps {\n useBrick: UseSingleBrickConf;\n refCallback?: (element: HTMLElement) => void;\n immediatelyRefCallback?: (element: HTMLElement) => void;\n}\n\nconst expandTemplateInUseBrick = (\n useBrick: UseSingleBrickConf,\n tplTagName: string | false,\n brick: RuntimeBrick\n): RuntimeBrickConf => {\n let template: RuntimeBrickConf;\n if (tplTagName) {\n // 如果是模板, 需要展开解析模板, 并遍历模板中的slots, 再给slots的brick绑定值给自身\n // 为后续ProxyRefs获取brick做值缓存\n const tplConf: RuntimeBrickConf = {\n brick: tplTagName,\n properties: brick.properties,\n events: useBrick.events,\n lifeCycle: useBrick.lifeCycle,\n slots: useBrick.slots as SlotsConf,\n };\n template = expandCustomTemplate(\n tplConf,\n brick,\n _internalApiGetCurrentContext()\n );\n } else if (\n (useBrick as RuntimeBrickConfWithTplSymbols)[symbolForRefForProxy]\n ) {\n (useBrick as RuntimeBrickConfWithTplSymbols)[symbolForRefForProxy].brick =\n brick;\n }\n return template;\n};\n\nconst getCurrentRunTimeBrick = (\n useBrick: UseSingleBrickConf,\n tplTagName: string | false,\n data: unknown\n): RuntimeBrick => {\n const trackingContextList: TrackingContextItem[] = [];\n const tplContextId = (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForTplContextId\n ];\n const transformOption: DoTransformOptions = {\n // Keep lazy fields inside `useBrick` inside the `properties`.\n // They will be transformed by their `BrickAsComponent` later.\n $$lazyForUseBrick: true,\n trackingContextList,\n allowInject: true,\n tplContextId,\n };\n\n const properties = doTransform(\n data,\n cloneDeepWithInjectedMark(useBrick.properties) || {},\n transformOption\n );\n\n const brick: RuntimeBrick = {\n ...useBrick,\n type: tplTagName || useBrick.brick,\n // Now transform data in properties too.\n properties,\n };\n\n const runtimeContext = _internalApiGetCurrentContext();\n\n listenOnTrackingContext(brick, trackingContextList, {\n ...runtimeContext,\n tplContextId,\n });\n\n return brick;\n};\n\n/**\n * 可以渲染单个 `useBrick` 的 React 组件。\n *\n * @example\n *\n * ```tsx\n * <BrickAsComponent\n * useBrick={{\n * brick: \"your.any-brick\"\n * }}\n * data={yourData}\n * />\n * ```\n *\n * @param props - 属性。\n */\nexport const SingleBrickAsComponent = React.memo(\n function SingleBrickAsComponent({\n useBrick,\n data,\n refCallback,\n immediatelyRefCallback,\n }: SingleBrickAsComponentProps): React.ReactElement {\n const templateRef = useRef<RuntimeBrickConf>();\n const tplTagName = getTagNameOfCustomTemplate(\n useBrick.brick,\n _internalApiGetCurrentContext().app?.id\n );\n\n const isBrickAvailable = React.useMemo(() => {\n if (isObject(useBrick.if) && !isPreEvaluated(useBrick.if)) {\n // eslint-disable-next-line\n console.warn(\"Currently resolvable-if in `useBrick` is not supported.\");\n } else if (\n !looseCheckIfByTransform(useBrick, data, {\n allowInject: true,\n // useBrick 中嵌套custom-template的情况下, 会存在丢失getTplVariables的情况, 因此需要在此进行补充\n tplContextId: (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForTplContextId\n ],\n })\n ) {\n return false;\n }\n\n return true;\n }, [useBrick, data]);\n\n const runtimeBrick = React.useMemo(async () => {\n if (!isBrickAvailable) {\n return null;\n }\n\n // If the router state is initial, ignore rendering the sub-brick.\n if (_internalApiGetRouterState() === \"initial\") {\n return;\n }\n\n _internalApiLoadDynamicBricksInBrickConf(useBrick as BrickConf).catch(\n handleHttpError\n );\n\n const brick = getCurrentRunTimeBrick(useBrick, tplTagName, data);\n\n templateRef.current = expandTemplateInUseBrick(\n useBrick,\n tplTagName,\n brick\n );\n\n // Let `transform` works still.\n transformProperties(\n brick.properties,\n data,\n useBrick.transform,\n useBrick.transformFrom,\n undefined,\n {\n allowInject: true,\n }\n );\n\n // 设置 properties refProperty值\n if (\n (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForComputedPropsFromProxy\n ]\n ) {\n Object.entries(\n (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForComputedPropsFromProxy\n ]\n ).forEach(([propName, propValue]) => {\n set(brick.properties, propName, propValue);\n });\n }\n\n if (useBrick.lifeCycle) {\n const resolver = _internalApiGetResolver();\n await resolver.resolve(\n {\n brick: useBrick.brick,\n lifeCycle: useBrick.lifeCycle,\n },\n brick,\n {\n ..._internalApiGetCurrentContext(),\n tplContextId: (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForTplContextId\n ],\n }\n );\n }\n\n return brick;\n }, [useBrick, data, isBrickAvailable]);\n\n const innerRefCallback = React.useCallback(\n async (element: HTMLElement) => {\n immediatelyRefCallback?.(element);\n if (element) {\n let brick: RuntimeBrick;\n try {\n brick = await runtimeBrick;\n } catch (e) {\n handleHttpError(e);\n }\n // sub-brick rendering is ignored.\n if (!brick) {\n return;\n }\n brick.element = element;\n\n const { [symbolForTplContextId]: tplContextId } =\n useBrick as RuntimeBrickConfWithTplSymbols;\n\n if (useBrick.iid) {\n element.dataset.iid = useBrick.iid;\n }\n setRealProperties(element, brick.properties);\n unbindListeners(element);\n if (brick.events) {\n bindListeners(element, transformEvents(data, brick.events), {\n ..._internalApiGetCurrentContext(),\n tplContextId,\n });\n }\n // 设置proxyEvent\n handleProxyOfCustomTemplate(brick);\n\n if ((element as RuntimeBrickElement).$$typeof !== \"custom-template\") {\n if (!useBrick.brick.includes(\"-\")) {\n (element as RuntimeBrickElement).$$typeof = \"native\";\n } else if (!customElements.get(useBrick.brick)) {\n (element as RuntimeBrickElement).$$typeof = \"invalid\";\n }\n }\n }\n\n refCallback?.(element);\n },\n [runtimeBrick, useBrick, data, refCallback, immediatelyRefCallback]\n );\n\n if (!isBrickAvailable) {\n return null;\n }\n\n return React.createElement(\n templateRef.current?.brick ?? (tplTagName || useBrick.brick),\n {\n ref: innerRefCallback,\n },\n ...slotsToChildren(\n (templateRef.current ?? useBrick).slots as UseBrickSlotsConf\n ).map((item: UseSingleBrickConf, index: number) => (\n <SingleBrickAsComponent key={index} useBrick={item} data={data} />\n ))\n );\n }\n);\n\n/**\n * 可以渲染 `useBrick` 的 React 组件。\n *\n * @remarks `useBrick` 可以传递单个或多个构件配置。\n *\n * @example\n *\n * ```tsx\n * <BrickAsComponent\n * useBrick={{\n * brick: \"your.any-brick\"\n * }}\n * data={yourData}\n * />\n * ```\n *\n * @param props - 属性。\n */\nexport function BrickAsComponent({\n useBrick,\n data,\n}: BrickAsComponentProps): React.ReactElement {\n if (Array.isArray(useBrick)) {\n return (\n <>\n {useBrick.map((item, index) => (\n <SingleBrickAsComponent key={index} useBrick={item} data={data} />\n ))}\n </>\n );\n }\n return <SingleBrickAsComponent useBrick={useBrick} data={data} />;\n}\n\nfunction slotsToChildren(slots: UseBrickSlotsConf): UseSingleBrickConf[] {\n if (!slots) {\n return [];\n }\n return Object.entries(slots).flatMap(([slot, slotConf]) =>\n Array.isArray(slotConf.bricks)\n ? slotConf.bricks.map((child) => ({\n ...child,\n properties: {\n ...child.properties,\n slot,\n },\n }))\n : []\n );\n}\n\nfunction transformEvents(\n data: unknown,\n events: BrickEventsMap\n): BrickEventsMap {\n return doTransform(data, events, {\n evaluateOptions: {\n lazy: true,\n },\n }) as BrickEventsMap;\n}\n\n/* istanbul ignore next */\n// eslint-disable-next-line react/display-name\nexport const ForwardRefSingleBrickAsComponent = React.memo(\n forwardRef<HTMLElement, SingleBrickAsComponentProps>(\n function LegacySingleBrickAsComponent(\n { useBrick, data, refCallback }: SingleBrickAsComponentProps,\n ref\n ): React.ReactElement {\n const brickRef = useRef<HTMLElement>();\n const templateRef = useRef<RuntimeBrickConf>();\n const tplTagName = getTagNameOfCustomTemplate(\n useBrick.brick,\n _internalApiGetCurrentContext().app?.id\n );\n\n const isBrickAvailable = React.useMemo(() => {\n if (isObject(useBrick.if) && !isPreEvaluated(useBrick.if)) {\n // eslint-disable-next-line\n console.warn(\n \"Currently resolvable-if in `useBrick` is not supported.\"\n );\n } else if (\n !looseCheckIfByTransform(useBrick, data, {\n allowInject: true,\n // useBrick 中嵌套custom-template的情况下, 会存在丢失getTplVariables的情况, 因此需要在此进行补充\n tplContextId: (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForTplContextId\n ],\n })\n ) {\n return false;\n }\n\n return true;\n }, [useBrick, data]);\n\n /* istanbul ignore next (never reach in test) */\n useImperativeHandle(ref, () => {\n return brickRef.current;\n });\n\n const runtimeBrick = React.useMemo(async () => {\n if (!isBrickAvailable) {\n return null;\n }\n\n // If the router state is initial, ignore rendering the sub-brick.\n if (_internalApiGetRouterState() === \"initial\") {\n return;\n }\n\n _internalApiLoadDynamicBricksInBrickConf(useBrick as BrickConf).catch(\n handleHttpError\n );\n\n const brick = getCurrentRunTimeBrick(useBrick, tplTagName, data);\n\n templateRef.current = expandTemplateInUseBrick(\n useBrick,\n tplTagName,\n brick\n );\n\n // Let `transform` works still.\n transformProperties(\n brick.properties,\n data,\n useBrick.transform,\n useBrick.transformFrom,\n undefined,\n {\n allowInject: true,\n }\n );\n\n // 设置 properties refProperty值\n if (\n (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForComputedPropsFromProxy\n ]\n ) {\n Object.entries(\n (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForComputedPropsFromProxy\n ]\n ).forEach(([propName, propValue]) => {\n set(brick.properties, propName, propValue);\n });\n }\n\n if (useBrick.lifeCycle) {\n const resolver = _internalApiGetResolver();\n await resolver.resolve(\n {\n brick: useBrick.brick,\n lifeCycle: useBrick.lifeCycle,\n },\n brick,\n {\n ..._internalApiGetCurrentContext(),\n tplContextId: (useBrick as RuntimeBrickConfWithTplSymbols)[\n symbolForTplContextId\n ],\n }\n );\n }\n\n return brick;\n }, [useBrick, data, isBrickAvailable]);\n\n const innerRefCallback = React.useCallback(\n async (element: HTMLElement) => {\n brickRef.current = element;\n\n if (element) {\n let brick: RuntimeBrick;\n try {\n brick = await runtimeBrick;\n } catch (e) {\n handleHttpError(e);\n }\n // sub-brick rendering is ignored.\n if (!brick) {\n return;\n }\n brick.element = element;\n\n const { [symbolForTplContextId]: tplContextId } =\n useBrick as RuntimeBrickConfWithTplSymbols;\n\n if (useBrick.iid) {\n element.dataset.iid = useBrick.iid;\n }\n setRealProperties(element, brick.properties);\n unbindListeners(element);\n if (useBrick.events) {\n bindListeners(element, transformEvents(data, useBrick.events), {\n ..._internalApiGetCurrentContext(),\n tplContextId,\n });\n }\n // 设置proxyEvent\n handleProxyOfCustomTemplate(brick);\n\n if (\n (element as RuntimeBrickElement).$$typeof !== \"custom-template\"\n ) {\n if (!useBrick.brick.includes(\"-\")) {\n (element as RuntimeBrickElement).$$typeof = \"native\";\n } else if (!customElements.get(useBrick.brick)) {\n (element as RuntimeBrickElement).$$typeof = \"invalid\";\n }\n }\n }\n refCallback?.(element);\n },\n [runtimeBrick, useBrick, data, refCallback]\n );\n\n if (!isBrickAvailable) {\n return null;\n }\n\n return React.createElement(\n templateRef.current?.brick ?? (tplTagName || useBrick.brick),\n {\n ref: innerRefCallback,\n },\n ...slotsToChildren(\n (templateRef.current ?? useBrick).slots as UseBrickSlotsConf\n ).map((item: UseSingleBrickConf, index: number) => (\n <SingleBrickAsComponent key={index} useBrick={item} data={data} />\n ))\n );\n }\n )\n);\n","export default {\n // Options.jsx\n items_per_page: '条/页',\n jump_to: '跳至',\n jump_to_confirm: '确定',\n page: '页',\n // Pagination.jsx\n prev_page: '上一页',\n next_page: '下一页',\n prev_5: '向前 5 页',\n next_5: '向后 5 页',\n prev_3: '向前 3 页',\n next_3: '向后 3 页'\n};","var locale = {\n locale: 'zh_CN',\n today: '今天',\n now: '此刻',\n backToToday: '返回今天',\n ok: '确定',\n timeSelect: '选择时间',\n dateSelect: '选择日期',\n weekSelect: '选择周',\n clear: '清除',\n month: '月',\n year: '年',\n previousMonth: '上个月 (翻页上键)',\n nextMonth: '下个月 (翻页下键)',\n monthSelect: '选择月份',\n yearSelect: '选择年份',\n decadeSelect: '选择年代',\n yearFormat: 'YYYY年',\n dayFormat: 'D日',\n dateFormat: 'YYYY年M月D日',\n dateTimeFormat: 'YYYY年M月D日 HH时mm分ss秒',\n previousYear: '上一年 (Control键加左方向键)',\n nextYear: '下一年 (Control键加右方向键)',\n previousDecade: '上一年代',\n nextDecade: '下一年代',\n previousCentury: '上一世纪',\n nextCentury: '下一世纪'\n};\nexport default locale;","var locale = {\n placeholder: '请选择时间',\n rangePlaceholder: ['开始时间', '结束时间']\n};\nexport default locale;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport CalendarLocale from \"rc-picker/es/locale/zh_CN\";\nimport TimePickerLocale from '../../time-picker/locale/zh_CN'; // 统一合并为完整的 Locale\n\nvar locale = {\n lang: _extends({\n placeholder: '请选择日期',\n yearPlaceholder: '请选择年份',\n quarterPlaceholder: '请选择季度',\n monthPlaceholder: '请选择月份',\n weekPlaceholder: '请选择周',\n rangePlaceholder: ['开始日期', '结束日期'],\n rangeYearPlaceholder: ['开始年份', '结束年份'],\n rangeMonthPlaceholder: ['开始月份', '结束月份'],\n rangeWeekPlaceholder: ['开始周', '结束周']\n }, CalendarLocale),\n timePickerLocale: _extends({}, TimePickerLocale)\n}; // should add whitespace between char in Button\n\nlocale.lang.ok = '确 定'; // All settings at:\n// https://github.com/ant-design/ant-design/blob/master/components/date-picker/locale/example.json\n\nexport default locale;","/* eslint-disable no-template-curly-in-string */\nimport Pagination from \"rc-pagination/es/locale/zh_CN\";\nimport DatePicker from '../date-picker/locale/zh_CN';\nimport TimePicker from '../time-picker/locale/zh_CN';\nimport Calendar from '../calendar/locale/zh_CN';\nvar typeTemplate = '${label}不是一个有效的${type}';\nvar localeValues = {\n locale: 'zh-cn',\n Pagination: Pagination,\n DatePicker: DatePicker,\n TimePicker: TimePicker,\n Calendar: Calendar,\n // locales for all components\n global: {\n placeholder: '请选择'\n },\n Table: {\n filterTitle: '筛选',\n filterConfirm: '确定',\n filterReset: '重置',\n filterEmptyText: '无筛选项',\n selectAll: '全选当页',\n selectInvert: '反选当页',\n selectNone: '清空所有',\n selectionAll: '全选所有',\n sortTitle: '排序',\n expand: '展开行',\n collapse: '关闭行',\n triggerDesc: '点击降序',\n triggerAsc: '点击升序',\n cancelSort: '取消排序'\n },\n Modal: {\n okText: '确定',\n cancelText: '取消',\n justOkText: '知道了'\n },\n Popconfirm: {\n cancelText: '取消',\n okText: '确定'\n },\n Transfer: {\n searchPlaceholder: '请输入搜索内容',\n itemUnit: '项',\n itemsUnit: '项',\n remove: '删除',\n selectCurrent: '全选当页',\n removeCurrent: '删除当页',\n selectAll: '全选所有',\n removeAll: '删除全部',\n selectInvert: '反选当页'\n },\n Upload: {\n uploading: '文件上传中',\n removeFile: '删除文件',\n uploadError: '上传错误',\n previewFile: '预览文件',\n downloadFile: '下载文件'\n },\n Empty: {\n description: '暂无数据'\n },\n Icon: {\n icon: '图标'\n },\n Text: {\n edit: '编辑',\n copy: '复制',\n copied: '复制成功',\n expand: '展开'\n },\n PageHeader: {\n back: '返回'\n },\n Form: {\n optional: '(可选)',\n defaultValidateMessages: {\n \"default\": '字段验证错误${label}',\n required: '请输入${label}',\n \"enum\": '${label}必须是其中一个[${enum}]',\n whitespace: '${label}不能为空字符',\n date: {\n format: '${label}日期格式无效',\n parse: '${label}不能转换为日期',\n invalid: '${label}是一个无效日期'\n },\n types: {\n string: typeTemplate,\n method: typeTemplate,\n array: typeTemplate,\n object: typeTemplate,\n number: typeTemplate,\n date: typeTemplate,\n \"boolean\": typeTemplate,\n integer: typeTemplate,\n \"float\": typeTemplate,\n regexp: typeTemplate,\n email: typeTemplate,\n url: typeTemplate,\n hex: typeTemplate\n },\n string: {\n len: '${label}须为${len}个字符',\n min: '${label}最少${min}个字符',\n max: '${label}最多${max}个字符',\n range: '${label}须在${min}-${max}字符之间'\n },\n number: {\n len: '${label}必须等于${len}',\n min: '${label}最小值为${min}',\n max: '${label}最大值为${max}',\n range: '${label}须在${min}-${max}之间'\n },\n array: {\n len: '须为${len}个${label}',\n min: '最少${min}个${label}',\n max: '最多${max}个${label}',\n range: '${label}数量须在${min}-${max}之间'\n },\n pattern: {\n mismatch: '${label}与模式不匹配${pattern}'\n }\n }\n },\n Image: {\n preview: '预览'\n }\n};\nexport default localeValues;","export default {\n // Options.jsx\n items_per_page: '/ page',\n jump_to: 'Go to',\n jump_to_confirm: 'confirm',\n page: '',\n // Pagination.jsx\n prev_page: 'Previous Page',\n next_page: 'Next Page',\n prev_5: 'Previous 5 Pages',\n next_5: 'Next 5 Pages',\n prev_3: 'Previous 3 Pages',\n next_3: 'Next 3 Pages'\n};","var locale = {\n locale: 'en_US',\n today: 'Today',\n now: 'Now',\n backToToday: 'Back to today',\n ok: 'Ok',\n clear: 'Clear',\n month: 'Month',\n year: 'Year',\n timeSelect: 'select time',\n dateSelect: 'select date',\n weekSelect: 'Choose a week',\n monthSelect: 'Choose a month',\n yearSelect: 'Choose a year',\n decadeSelect: 'Choose a decade',\n yearFormat: 'YYYY',\n dateFormat: 'M/D/YYYY',\n dayFormat: 'D',\n dateTimeFormat: 'M/D/YYYY HH:mm:ss',\n monthBeforeYear: true,\n previousMonth: 'Previous month (PageUp)',\n nextMonth: 'Next month (PageDown)',\n previousYear: 'Last year (Control + left)',\n nextYear: 'Next year (Control + right)',\n previousDecade: 'Last decade',\n nextDecade: 'Next decade',\n previousCentury: 'Last century',\n nextCentury: 'Next century'\n};\nexport default locale;","var locale = {\n placeholder: 'Select time',\n rangePlaceholder: ['Start time', 'End time']\n};\nexport default locale;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport CalendarLocale from \"rc-picker/es/locale/en_US\";\nimport TimePickerLocale from '../../time-picker/locale/en_US'; // Merge into a locale object\n\nvar locale = {\n lang: _extends({\n placeholder: 'Select date',\n yearPlaceholder: 'Select year',\n quarterPlaceholder: 'Select quarter',\n monthPlaceholder: 'Select month',\n weekPlaceholder: 'Select week',\n rangePlaceholder: ['Start date', 'End date'],\n rangeYearPlaceholder: ['Start year', 'End year'],\n rangeMonthPlaceholder: ['Start month', 'End month'],\n rangeWeekPlaceholder: ['Start week', 'End week']\n }, CalendarLocale),\n timePickerLocale: _extends({}, TimePickerLocale)\n}; // All settings at:\n// https://github.com/ant-design/ant-design/blob/master/components/date-picker/locale/example.json\n\nexport default locale;","/* eslint-disable no-template-curly-in-string */\nimport Pagination from \"rc-pagination/es/locale/en_US\";\nimport DatePicker from '../date-picker/locale/en_US';\nimport TimePicker from '../time-picker/locale/en_US';\nimport Calendar from '../calendar/locale/en_US';\nvar typeTemplate = '${label} is not a valid ${type}';\nvar localeValues = {\n locale: 'en',\n Pagination: Pagination,\n DatePicker: DatePicker,\n TimePicker: TimePicker,\n Calendar: Calendar,\n global: {\n placeholder: 'Please select'\n },\n Table: {\n filterTitle: 'Filter menu',\n filterConfirm: 'OK',\n filterReset: 'Reset',\n filterEmptyText: 'No filters',\n emptyText: 'No data',\n selectAll: 'Select current page',\n selectInvert: 'Invert current page',\n selectNone: 'Clear all data',\n selectionAll: 'Select all data',\n sortTitle: 'Sort',\n expand: 'Expand row',\n collapse: 'Collapse row',\n triggerDesc: 'Click to sort descending',\n triggerAsc: 'Click to sort ascending',\n cancelSort: 'Click to cancel sorting'\n },\n Modal: {\n okText: 'OK',\n cancelText: 'Cancel',\n justOkText: 'OK'\n },\n Popconfirm: {\n okText: 'OK',\n cancelText: 'Cancel'\n },\n Transfer: {\n titles: ['', ''],\n searchPlaceholder: 'Search here',\n itemUnit: 'item',\n itemsUnit: 'items',\n remove: 'Remove',\n selectCurrent: 'Select current page',\n removeCurrent: 'Remove current page',\n selectAll: 'Select all data',\n removeAll: 'Remove all data',\n selectInvert: 'Invert current page'\n },\n Upload: {\n uploading: 'Uploading...',\n removeFile: 'Remove file',\n uploadError: 'Upload error',\n previewFile: 'Preview file',\n downloadFile: 'Download file'\n },\n Empty: {\n description: 'No Data'\n },\n Icon: {\n icon: 'icon'\n },\n Text: {\n edit: 'Edit',\n copy: 'Copy',\n copied: 'Copied',\n expand: 'Expand'\n },\n PageHeader: {\n back: 'Back'\n },\n Form: {\n optional: '(optional)',\n defaultValidateMessages: {\n \"default\": 'Field validation error for ${label}',\n required: 'Please enter ${label}',\n \"enum\": '${label} must be one of [${enum}]',\n whitespace: '${label} cannot be a blank character',\n date: {\n format: '${label} date format is invalid',\n parse: '${label} cannot be converted to a date',\n invalid: '${label} is an invalid date'\n },\n types: {\n string: typeTemplate,\n method: typeTemplate,\n array: typeTemplate,\n object: typeTemplate,\n number: typeTemplate,\n date: typeTemplate,\n \"boolean\": typeTemplate,\n integer: typeTemplate,\n \"float\": typeTemplate,\n regexp: typeTemplate,\n email: typeTemplate,\n url: typeTemplate,\n hex: typeTemplate\n },\n string: {\n len: '${label} must be ${len} characters',\n min: '${label} must be at least ${min} characters',\n max: '${label} must be up to ${max} characters',\n range: '${label} must be between ${min}-${max} characters'\n },\n number: {\n len: '${label} must be equal to ${len}',\n min: '${label} must be minimum ${min}',\n max: '${label} must be maximum ${max}',\n range: '${label} must be between ${min}-${max}'\n },\n array: {\n len: 'Must be ${len} ${label}',\n min: 'At least ${min} ${label}',\n max: 'At most ${max} ${label}',\n range: 'The amount of ${label} must be between ${min}-${max}'\n },\n pattern: {\n mismatch: '${label} does not match the pattern ${pattern}'\n }\n }\n },\n Image: {\n preview: 'Preview'\n }\n};\nexport default localeValues;","/* eslint-disable react/jsx-key */\nimport React from \"react\";\nimport { uniqueId } from \"lodash\";\nimport { useCurrentTheme } from \"../themeAndMode\";\n\nexport interface EmptySvgProps {\n isBig?: boolean;\n}\n\nexport function EmptySvg(props: EmptySvgProps): React.ReactElement {\n const { isBig } = props;\n const theme = useCurrentTheme();\n const prefix = uniqueId();\n const createNewId = (id: string): string => {\n return prefix + id;\n };\n\n if (theme === \"dark-v2\") {\n return isBig ? (\n <svg\n width=\"88px\"\n height=\"83px\"\n viewBox=\"0 0 88 83\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n >\n <title>dark big empty image</title>\n <defs>\n <linearGradient\n x1=\"5.71824875%\"\n y1=\"4.31113823%\"\n x2=\"82.851613%\"\n y2=\"88.6978534%\"\n id={createNewId(\"linearGradient-1\")}\n >\n <stop stopColor=\"#545454\" offset=\"0%\"></stop>\n <stop stopColor=\"#3B3B3B\" offset=\"100%\"></stop>\n </linearGradient>\n <linearGradient\n x1=\"3.89238729%\"\n y1=\"4.31113823%\"\n x2=\"84.2061777%\"\n y2=\"88.6978534%\"\n id={createNewId(\"linearGradient-2\")}\n >\n <stop stopColor=\"#515151\" offset=\"0%\"></stop>\n <stop stopColor=\"#383838\" offset=\"100%\"></stop>\n </linearGradient>\n <path\n d=\"M34.9133489,37.0960187 L43.4004684,37.0960187 C45.6096074,37.0960187 47.4004684,38.8868797 47.4004684,41.0960187 L47.4004684,49.5831382 C47.4004684,51.7922772 45.6096074,53.5831382 43.4004684,53.5831382 L34.9133489,53.5831382 C32.7042099,53.5831382 30.9133489,51.7922772 30.9133489,49.5831382 L30.9133489,41.0960187 C30.9133489,38.8868797 32.7042099,37.0960187 34.9133489,37.0960187 Z\"\n id={createNewId(\"path-3\")}\n ></path>\n <filter\n x=\"-36.4%\"\n y=\"-30.3%\"\n width=\"184.9%\"\n height=\"184.9%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"path-4\")}\n >\n <feOffset\n dx=\"1\"\n dy=\"2\"\n in=\"SourceAlpha\"\n result=\"shadowOffsetOuter1\"\n ></feOffset>\n <feGaussianBlur\n stdDeviation=\"2\"\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n ></feGaussianBlur>\n <feComposite\n in=\"shadowBlurOuter1\"\n in2=\"SourceAlpha\"\n operator=\"out\"\n result=\"shadowBlurOuter1\"\n ></feComposite>\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.22 0\"\n type=\"matrix\"\n in=\"shadowBlurOuter1\"\n ></feColorMatrix>\n </filter>\n <linearGradient\n x1=\"41.822656%\"\n y1=\"24.7954546%\"\n x2=\"8.8126561%\"\n y2=\"86.4269134%\"\n id={createNewId(\"linearGradient-5\")}\n >\n <stop stopColor=\"#676767\" offset=\"0%\"></stop>\n <stop stopColor=\"#787878\" offset=\"100%\"></stop>\n </linearGradient>\n <path\n d=\"M60.9180328,19.5784543 C63.1271718,19.5784543 64.9180328,21.3693153 64.9180328,23.5784543 L64.9180328,31.2366083 L53.2598788,19.5784543 L60.9180328,19.5784543 Z\"\n id={createNewId(\"path-6\")}\n ></path>\n <filter\n x=\"-60.0%\"\n y=\"-77.2%\"\n width=\"220.1%\"\n height=\"220.1%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"filter-7\")}\n >\n <feOffset\n dx=\"0\"\n dy=\"-2\"\n in=\"SourceAlpha\"\n result=\"shadowOffsetOuter1\"\n ></feOffset>\n <feGaussianBlur\n stdDeviation=\"2\"\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n ></feGaussianBlur>\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0\"\n type=\"matrix\"\n in=\"shadowBlurOuter1\"\n ></feColorMatrix>\n </filter>\n </defs>\n <g\n id=\"其他\"\n stroke=\"none\"\n strokeWidth=\"1\"\n fill=\"none\"\n fillRule=\"evenodd\"\n >\n <g id=\"空状态\" transform=\"translate(-345.000000, -239.000000)\">\n <g\n id=\"插图/空表格--白色背景备份-3\"\n transform=\"translate(345.000000, 239.000000)\"\n >\n <path\n d=\"M63.0027562,53.3770492 L16.3415061,53.3770492 C15.617696,53.3770492 14.9220071,53.6573421 14.4003686,54.1591332 L5.7704918,62.4606569 L5.7704918,62.4606569 L5.7704918,76.6295082 C5.7704918,79.7223028 8.2776972,82.2295082 11.3704918,82.2295082 L67.9737705,82.2295082 C71.0665651,82.2295082 73.5737705,79.7223028 73.5737705,76.6295082 L73.5737705,62.4606569 L73.5737705,62.4606569 L64.9438937,54.1591332 C64.4222552,53.6573421 63.7265663,53.3770492 63.0027562,53.3770492 Z\"\n id={createNewId(\"Fill-3\")}\n fill=\"#313131\"\n ></path>\n <path\n d=\"M53.2598788,19.5784543 L64.9180328,31.2366083 L64.9180328,68.3007026 C64.9180328,69.8470999 63.6644301,71.1007026 62.1180328,71.1007026 L17.2262295,71.1007026 C15.6798322,71.1007026 14.4262295,69.8470999 14.4262295,68.3007026 L14.4262295,25.5784543 C14.4262295,22.2647458 17.112521,19.5784543 20.4262295,19.5784543 L53.2598788,19.5784543 Z\"\n id=\"形状结合\"\n fill={`url(#${createNewId(\"linearGradient-1\")})`}\n ></path>\n <g id=\"矩形备份\">\n <use\n fill=\"black\"\n fillOpacity=\"1\"\n filter={`url(#${createNewId(\"filter-4\")})`}\n xlinkHref={`#${createNewId(\"path-3\")}`}\n ></use>\n <path\n stroke=\"#858585\"\n strokeWidth=\"1\"\n d=\"M43.4004684,37.5960187 C44.3669667,37.5960187 45.2419667,37.9877696 45.8753421,38.621145 C46.5087175,39.2545204 46.9004684,40.1295204 46.9004684,41.0960187 L46.9004684,41.0960187 L46.9004684,49.5831382 C46.9004684,50.5496365 46.5087175,51.4246365 45.8753421,52.0580119 C45.2419667,52.6913873 44.3669667,53.0831382 43.4004684,53.0831382 L43.4004684,53.0831382 L34.9133489,53.0831382 C33.9468506,53.0831382 33.0718506,52.6913873 32.4384752,52.0580119 C31.8050998,51.4246365 31.4133489,50.5496365 31.4133489,49.5831382 L31.4133489,49.5831382 L31.4133489,41.0960187 C31.4133489,40.1295204 31.8050998,39.2545204 32.4384752,38.621145 C33.0718506,37.9877696 33.9468506,37.5960187 34.9133489,37.5960187 L34.9133489,37.5960187 Z\"\n strokeLinejoin=\"round\"\n fill={`url(#${createNewId(\"linearGradient-2\")})`}\n fillRule=\"evenodd\"\n ></path>\n </g>\n <g\n id=\"形状结合\"\n transform=\"translate(59.088956, 25.407531) scale(-1, -1) translate(-59.088956, -25.407531) \"\n >\n <use\n fill=\"black\"\n fillOpacity=\"1\"\n filter={`url(#${createNewId(\"filter-7\")})`}\n xlinkHref={`#${createNewId(\"path-6\")}`}\n ></use>\n <use\n fill={`url(#${createNewId(\"linearGradient-5\")})`}\n fillRule=\"evenodd\"\n xlinkHref={`#${createNewId(\"path-6\")}`}\n ></use>\n </g>\n <path\n d=\"M85.1360656,43.2786885 C85.5226649,43.2786885 85.8360656,43.5920892 85.8360656,43.9786885 L85.8355082,45.4416885 L87.3,45.442623 C87.6865993,45.442623 88,45.7560236 88,46.142623 L88,46.1852459 C88,46.5718452 87.6865993,46.8852459 87.3,46.8852459 L85.8355082,46.8846885 L85.8360656,48.3491803 C85.8360656,48.7357797 85.5226649,49.0491803 85.1360656,49.0491803 L85.0934426,49.0491803 C84.7068433,49.0491803 84.3934426,48.7357797 84.3934426,48.3491803 L84.3925082,46.8846885 L82.9295082,46.8852459 C82.5429089,46.8852459 82.2295082,46.5718452 82.2295082,46.1852459 L82.2295082,46.142623 C82.2295082,45.7560236 82.5429089,45.442623 82.9295082,45.442623 L84.3925082,45.4416885 L84.3934426,43.9786885 C84.3934426,43.5920892 84.7068433,43.2786885 85.0934426,43.2786885 L85.1360656,43.2786885 Z\"\n id=\"形状结合\"\n fill=\"#323233\"\n ></path>\n <path\n d=\"M2.16393443,31.7377049 C2.46271142,31.7377049 2.70491803,31.9799115 2.70491803,32.2786885 L2.704,33.1797049 L3.62786885,33.1803279 C4.01446818,33.1803279 4.32786885,33.4937285 4.32786885,33.8803279 L4.32786885,33.9229508 C4.32786885,34.3095501 4.01446818,34.6229508 3.62786885,34.6229508 L2.704,34.6227049 L2.70491803,35.5245902 C2.70491803,35.8233672 2.46271142,36.0655738 2.16393443,36.0655738 C1.86515743,36.0655738 1.62295082,35.8233672 1.62295082,35.5245902 L1.622,34.6227049 L0.7,34.6229508 C0.313400675,34.6229508 1.58367065e-16,34.3095501 0,33.9229508 L0,33.8803279 C6.36775399e-17,33.4937285 0.313400675,33.1803279 0.7,33.1803279 L1.622,33.1797049 L1.62295082,32.2786885 C1.62295082,31.9799115 1.86515743,31.7377049 2.16393443,31.7377049 Z\"\n id=\"形状结合备份-2\"\n fill=\"#323233\"\n ></path>\n <path\n d=\"M8.5704918,82.2292826 L8.39992361,82.2241726 C6.93295466,82.1360215 5.7704918,80.9184059 5.7704918,79.4292826 L5.7704918,79.4292826 L5.7704918,62.0328238 L18.5403984,62.0328238 L18.7183062,62.0265026 C22.6370926,61.9824786 26.9110314,68.1500392 38.9284814,68.4052546 L38.9284814,68.4052546 L38.9508197,68.402268 L38.9508197,68.4029405 L38.9731579,68.4054802 C50.1627105,68.6294222 54.4413911,62.3194865 59.130277,62.0416842 L59.3612409,62.0329405 L73.5737705,62.0329405 L73.5737705,79.4295082 C73.5737705,80.9186315 72.4113076,82.1362471 70.9443387,82.2243982 L70.7737705,82.2295082 L38.9508197,82.2289405 L8.5704918,82.2292826 Z\"\n id=\"形状结合\"\n fill=\"#555555\"\n ></path>\n <path\n d=\"M21.6393443,3.45798016 C21.6393443,3.45798016 25.2647414,2.58521485 26.2931908,0 C27.7747015,2.12006603 28.538563,3.03684357 30.295082,3.43985748 C27.9033709,4.15239527 26.8645012,4.95266986 26.0462723,7.21311475 C25.1070761,4.54994361 24.2521493,4.20532501 21.6393443,3.45798016\"\n id=\"Fill-1\"\n fill=\"#323233\"\n ></path>\n <path\n d=\"M64.9180328,10.4333714 C64.9180328,10.4333714 74.5857586,8.16418155 77.3282902,1.44262295 C81.2789854,6.95479463 83.3159494,9.33841623 88,10.3862524 C81.6221039,12.2388507 78.8517846,14.3195646 76.669841,20.1967213 C74.1653176,13.2724763 71.8855128,12.376468 64.9180328,10.4333714\"\n id=\"Fill-1备份\"\n fill=\"#424242\"\n opacity=\"0.799999952\"\n ></path>\n </g>\n </g>\n </g>\n </svg>\n ) : (\n <svg\n width=\"56px\"\n height=\"53px\"\n viewBox=\"0 0 56 53\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n >\n <title>dark default empty image</title>\n <defs>\n <linearGradient\n x1=\"7.2497624%\"\n y1=\"5.98667004%\"\n x2=\"83.0501817%\"\n y2=\"88.9150948%\"\n id={createNewId(\"linearGradient-1\")}\n >\n <stop stopColor=\"#595959\" offset=\"0%\"></stop>\n <stop stopColor=\"#484848\" offset=\"100%\"></stop>\n </linearGradient>\n <linearGradient\n x1=\"3.89238729%\"\n y1=\"4.31113823%\"\n x2=\"84.4129339%\"\n y2=\"88.9150948%\"\n id={createNewId(\"linearGradient-2\")}\n >\n <stop stopColor=\"#646464\" offset=\"0%\"></stop>\n <stop stopColor=\"#4F4F4F\" offset=\"100%\"></stop>\n </linearGradient>\n <path\n d=\"M23.6721311,23.6065574 L26.1639344,23.6065574 C28.3730734,23.6065574 30.1639344,25.3974184 30.1639344,27.6065574 L30.1639344,30.0983607 C30.1639344,32.3074997 28.3730734,34.0983607 26.1639344,34.0983607 L23.6721311,34.0983607 C21.4629921,34.0983607 19.6721311,32.3074997 19.6721311,30.0983607 L19.6721311,27.6065574 C19.6721311,25.3974184 21.4629921,23.6065574 23.6721311,23.6065574 Z\"\n id={createNewId(\"path-3\")}\n ></path>\n <filter\n x=\"-57.2%\"\n y=\"-47.7%\"\n width=\"233.4%\"\n height=\"233.4%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"filter-4\")}\n >\n <feOffset\n dx=\"1\"\n dy=\"2\"\n in=\"SourceAlpha\"\n result=\"shadowOffsetOuter1\"\n ></feOffset>\n <feGaussianBlur\n stdDeviation=\"2\"\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n ></feGaussianBlur>\n <feComposite\n in=\"shadowBlurOuter1\"\n in2=\"SourceAlpha\"\n operator=\"out\"\n result=\"shadowBlurOuter1\"\n ></feComposite>\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.22 0\"\n type=\"matrix\"\n in=\"shadowBlurOuter1\"\n ></feColorMatrix>\n </filter>\n <linearGradient\n x1=\"41.822656%\"\n y1=\"24.7954546%\"\n x2=\"8.8126561%\"\n y2=\"86.4269134%\"\n id={createNewId(\"linearGradient-5\")}\n >\n <stop stopColor=\"#848484\" offset=\"0%\"></stop>\n <stop stopColor=\"#686868\" offset=\"100%\"></stop>\n </linearGradient>\n <path\n d=\"M37.3114754,12.4590164 C39.5206144,12.4590164 41.3114754,14.2498774 41.3114754,16.4590164 L41.3114754,19.8778416 L33.8926502,12.4590164 L37.3114754,12.4590164 Z\"\n id={createNewId(\"path-6\")}\n ></path>\n <filter\n x=\"-94.4%\"\n y=\"-121.3%\"\n width=\"288.7%\"\n height=\"288.7%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"filter-7\")}\n >\n <feOffset\n dx=\"0\"\n dy=\"-2\"\n in=\"SourceAlpha\"\n result=\"shadowOffsetOuter1\"\n ></feOffset>\n <feGaussianBlur\n stdDeviation=\"2\"\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n ></feGaussianBlur>\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0\"\n type=\"matrix\"\n in=\"shadowBlurOuter1\"\n ></feColorMatrix>\n </filter>\n </defs>\n <g\n id=\"其他\"\n stroke=\"none\"\n strokeWidth=\"1\"\n fill=\"none\"\n fillRule=\"evenodd\"\n >\n <g id=\"空状态\" transform=\"translate(-873.000000, -283.000000)\">\n <g id=\"编组-8\" transform=\"translate(726.000000, 100.000000)\">\n <g\n id=\"插图/空表格--白色背景备份\"\n transform=\"translate(147.000000, 183.000000)\"\n >\n <path\n d=\"M39.6824378,33.9672131 L10.8093655,33.9672131 C10.0855554,33.9672131 9.38986655,34.247506 8.86822799,34.7492971 L3.67213115,39.7476907 L3.67213115,39.7476907 L3.67213115,46.7278689 C3.67213115,49.8206635 6.17933655,52.3278689 9.27213115,52.3278689 L41.2196721,52.3278689 C44.3124667,52.3278689 46.8196721,49.8206635 46.8196721,46.7278689 L46.8196721,39.7476907 L46.8196721,39.7476907 L41.6235753,34.7492971 C41.1019367,34.247506 40.4062478,33.9672131 39.6824378,33.9672131 Z\"\n id={createNewId(\"Fill-3\")}\n fill=\"#3E3E3E\"\n ></path>\n <path\n d=\"M33.8926502,12.4590164 L41.3114754,19.8778416 L41.3114754,42.4459016 C41.3114754,43.9922989 40.0578727,45.2459016 38.5114754,45.2459016 L11.9803279,45.2459016 C10.4339306,45.2459016 9.18032787,43.9922989 9.18032787,42.4459016 L9.18032787,18.4590164 C9.18032787,15.1453079 11.8666194,12.4590164 15.1803279,12.4590164 L33.8926502,12.4590164 Z\"\n id=\"形状结合\"\n fill={`url(#${createNewId(\"linearGradient-1\")})`}\n ></path>\n <g id=\"矩形备份\">\n <use\n fill=\"black\"\n fillOpacity=\"1\"\n filter={`url(#${createNewId(\"filter-4\")})`}\n xlinkHref={`#${createNewId(\"path-3\")}`}\n ></use>\n <path\n stroke=\"#919191\"\n strokeWidth=\"1\"\n d=\"M26.1639344,24.1065574 C27.1304327,24.1065574 28.0054327,24.4983082 28.6388082,25.1316836 C29.2721836,25.7650591 29.6639344,26.6400591 29.6639344,27.6065574 L29.6639344,27.6065574 L29.6639344,30.0983607 C29.6639344,31.064859 29.2721836,31.939859 28.6388082,32.5732344 C28.0054327,33.2066098 27.1304327,33.5983607 26.1639344,33.5983607 L26.1639344,33.5983607 L23.6721311,33.5983607 C22.7056328,33.5983607 21.8306328,33.2066098 21.1972574,32.5732344 C20.563882,31.939859 20.1721311,31.064859 20.1721311,30.0983607 L20.1721311,30.0983607 L20.1721311,27.6065574 C20.1721311,26.6400591 20.563882,25.7650591 21.1972574,25.1316836 C21.8306328,24.4983082 22.7056328,24.1065574 23.6721311,24.1065574 L23.6721311,24.1065574 Z\"\n strokeLinejoin=\"round\"\n fill={`url(#${createNewId(\"linearGradient-2\")})`}\n fillRule=\"evenodd\"\n ></path>\n </g>\n <g\n id=\"形状结合\"\n transform=\"translate(37.602063, 16.168429) scale(-1, -1) translate(-37.602063, -16.168429) \"\n >\n <use\n fill=\"black\"\n fillOpacity=\"1\"\n filter={`url(#${createNewId(\"filter-7\")})`}\n xlinkHref={`#${createNewId(\"path-6\")}`}\n ></use>\n <use\n fill={`url(#${createNewId(\"linearGradient-5\")})`}\n fillRule=\"evenodd\"\n xlinkHref={`#${createNewId(\"path-6\")}`}\n ></use>\n </g>\n <path\n d=\"M54.1639344,27.5409836 C54.4174422,27.5409836 54.6229508,27.7464922 54.6229508,28 L54.6228689,28.9179836 L55.5409836,28.9180328 C55.7944914,28.9180328 56,29.1235414 56,29.3770492 C56,29.6305569 55.7944914,29.8360656 55.5409836,29.8360656 L54.6228689,29.8359836 L54.6229508,30.7540984 C54.6229508,31.0076061 54.4174422,31.2131148 54.1639344,31.2131148 C53.9104267,31.2131148 53.704918,31.0076061 53.704918,30.7540984 L53.7048689,29.8359836 L52.7868852,29.8360656 C52.5333775,29.8360656 52.3278689,29.6305569 52.3278689,29.3770492 C52.3278689,29.1235414 52.5333775,28.9180328 52.7868852,28.9180328 L53.7048689,28.9179836 L53.704918,28 C53.704918,27.7464922 53.9104267,27.5409836 54.1639344,27.5409836 Z\"\n id=\"形状结合\"\n fill=\"#646465\"\n opacity=\"0.299999982\"\n ></path>\n <path\n d=\"M1.37704918,20.1967213 C1.56718,20.1967213 1.72131148,20.3508528 1.72131148,20.5409836 L1.721,21.1147213 L2.29508197,21.1147541 C2.54858972,21.1147541 2.75409836,21.3202627 2.75409836,21.5737705 C2.75409836,21.8272782 2.54858972,22.0327869 2.29508197,22.0327869 L1.721,22.0327213 L1.72131148,22.6065574 C1.72131148,22.7966882 1.56718,22.9508197 1.37704918,22.9508197 C1.18691836,22.9508197 1.03278689,22.7966882 1.03278689,22.6065574 L1.032,22.0327213 L0.459016393,22.0327869 C0.205508639,22.0327869 3.1045746e-17,21.8272782 0,21.5737705 C-3.1045746e-17,21.3202627 0.205508639,21.1147541 0.459016393,21.1147541 L1.032,21.1147213 L1.03278689,20.5409836 C1.03278689,20.3508528 1.18691836,20.1967213 1.37704918,20.1967213 Z\"\n id=\"形状结合备份-2\"\n fill=\"#646465\"\n opacity=\"0.299999982\"\n ></path>\n <path\n d=\"M24.7868852,43.5295076 L24.8011005,43.5307601 C31.8876782,43.6725873 34.6183834,39.6961587 37.5855745,39.48387 L37.7753351,39.4755076 L46.8196721,39.4755076 L46.8196721,49.5278689 C46.8196721,51.0169922 45.6572093,52.2346078 44.1902403,52.3227588 L44.0196721,52.3278689 L24.7868852,52.3275076 L24.7868852,52.3272615 L6.47213115,52.3277253 L6.30156296,52.3226152 C4.83459401,52.2344642 3.67213115,51.0168486 3.67213115,49.5277253 L3.67213115,49.5277253 L3.67213115,39.4754333 L11.7984354,39.4754333 L11.941603,39.4712638 C14.4272721,39.4747517 17.1558091,43.3688567 24.77267,43.5306166 L24.77267,43.5306166 L24.7868852,43.5292615 L24.7868852,43.5295076 Z\"\n id=\"形状结合\"\n fill=\"#616161\"\n ></path>\n <path\n d=\"M13.7704918,2.20053283 C13.7704918,2.20053283 16.0775627,1.64513672 16.7320305,0 C17.67481,1.34913293 18.1609037,1.93253682 19.2786885,2.18900021 C17.7566906,2.64243336 17.0955917,3.151699 16.5749006,4.59016393 C15.9772302,2.89541866 15.4331859,2.67611591 13.7704918,2.20053283\"\n id=\"Fill-1\"\n fill=\"#646465\"\n opacity=\"0.5\"\n ></path>\n <path\n d=\"M41.3114754,6.63941814 C41.3114754,6.63941814 47.4636646,5.19538826 49.2089119,0.918032787 C51.7229907,4.4257784 53.0192405,5.94262851 56,6.60943334 C51.9413388,7.78835951 50.1784084,9.11245019 48.7898988,12.852459 C47.1961112,8.44612131 45.7453263,7.87593416 41.3114754,6.63941814\"\n id=\"Fill-1备份\"\n fill=\"#646465\"\n opacity=\"0.697637649\"\n ></path>\n </g>\n </g>\n </g>\n </g>\n </svg>\n );\n } else {\n return isBig ? (\n <svg\n width={86}\n height={80}\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n >\n <defs>\n <linearGradient\n x1=\"5.718%\"\n y1=\"4.311%\"\n x2=\"83.05%\"\n y2=\"88.915%\"\n id={createNewId(\"a\")}\n >\n <stop stopColor=\"#D4D8E4\" offset=\"0%\" />\n <stop stopColor=\"#A9B0C4\" offset=\"100%\" />\n </linearGradient>\n <linearGradient\n x1=\"0%\"\n y1=\"11.08%\"\n x2=\"80.548%\"\n y2=\"107.704%\"\n id={createNewId(\"d\")}\n >\n <stop stopColor=\"#C2C7DA\" offset=\"0%\" />\n <stop stopColor=\"#8F96B3\" offset=\"100%\" />\n </linearGradient>\n <linearGradient\n x1=\"41.823%\"\n y1=\"24.795%\"\n x2=\"8.813%\"\n y2=\"86.427%\"\n id={createNewId(\"g\")}\n >\n <stop stopColor=\"#CCD0DD\" offset=\"0%\" />\n <stop stopColor=\"#9DA3B9\" offset=\"100%\" />\n </linearGradient>\n <filter\n x=\"-37.5%\"\n y=\"-31.3%\"\n width=\"187.5%\"\n height=\"187.5%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"b\")}\n >\n <feOffset\n dx={1}\n dy={2}\n in=\"SourceAlpha\"\n result=\"shadowOffsetOuter1\"\n />\n <feGaussianBlur\n stdDeviation={2}\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n />\n <feComposite\n in=\"shadowBlurOuter1\"\n in2=\"SourceAlpha\"\n operator=\"out\"\n result=\"shadowBlurOuter1\"\n />\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.22 0\"\n in=\"shadowBlurOuter1\"\n />\n </filter>\n <filter\n x=\"-61.9%\"\n y=\"-79.5%\"\n width=\"223.7%\"\n height=\"223.7%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"e\")}\n >\n <feOffset dy={-2} in=\"SourceAlpha\" result=\"shadowOffsetOuter1\" />\n <feGaussianBlur\n stdDeviation={2}\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n />\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0\"\n in=\"shadowBlurOuter1\"\n />\n </filter>\n <path\n d=\"M34 36h8a4 4 0 0 1 4 4v8a4 4 0 0 1-4 4h-8a4 4 0 0 1-4-4v-8a4 4 0 0 1 4-4Z\"\n id={createNewId(\"c\")}\n />\n <path\n d=\"M59 19a4 4 0 0 1 4 4v7.314L51.686 19H59Z\"\n id={createNewId(\"f\")}\n />\n </defs>\n <g fill=\"none\" fillRule=\"evenodd\">\n <path\n d=\"M61.108 51.8H15.892a2.8 2.8 0 0 0-1.941.782L5.6 60.615V74.2a5.6 5.6 0 0 0 5.6 5.6h54.6a5.6 5.6 0 0 0 5.6-5.6V60.615l-8.35-8.033a2.8 2.8 0 0 0-1.942-.782Z\"\n fill=\"#A6AAC3\"\n />\n <path\n d=\"M51.686 19 63 30.314V66.2a2.8 2.8 0 0 1-2.8 2.8H16.8a2.8 2.8 0 0 1-2.8-2.8V25a6 6 0 0 1 6-6h31.686Z\"\n fill={`url(#${createNewId(\"a\")})`}\n />\n <g>\n <use\n fill=\"#000\"\n filter={`url(#${createNewId(\"b\")})`}\n xlinkHref={`#${createNewId(\"c\")}`}\n />\n <path\n stroke=\"#FFF\"\n d=\"M42 36.5c.966 0 1.841.392 2.475 1.025A3.489 3.489 0 0 1 45.5 40v8c0 .966-.392 1.841-1.025 2.475A3.489 3.489 0 0 1 42 51.5h-8a3.489 3.489 0 0 1-2.475-1.025A3.489 3.489 0 0 1 30.5 48v-8c0-.966.392-1.841 1.025-2.475A3.489 3.489 0 0 1 34 36.5Z\"\n strokeLinejoin=\"round\"\n fill={`url(#${createNewId(\"d\")})`}\n />\n </g>\n <g transform=\"rotate(180 57.343 24.657)\">\n <use\n fill=\"#000\"\n filter={`url(#${createNewId(\"e\")})`}\n xlinkHref={`#${createNewId(\"f\")}`}\n />\n <use\n fill={`url(#${createNewId(\"g\")})`}\n xlinkHref={`#${createNewId(\"f\")}`}\n />\n </g>\n <path\n d=\"M82.6 42a.7.7 0 0 1 .7.7v1.399l1.4.001a.7.7 0 0 1 0 1.4l-1.4-.001V46.9a.7.7 0 0 1-1.4 0v-1.401l-1.4.001a.7.7 0 0 1 0-1.4l1.4-.001V42.7a.7.7 0 0 1 .7-.7ZM2.1 30.8c.29 0 .525.235.525.525l-.001.874.876.001a.7.7 0 0 1 0 1.4h-.876l.001.875a.525.525 0 1 1-1.05 0l-.001-.875H.7a.7.7 0 0 1 0-1.4l.874-.001.001-.874c0-.29.235-.525.525-.525Z\"\n fill=\"#D6D8E4\"\n opacity={0.3}\n />\n <path\n d=\"m8.4 79.8-.17-.005A2.8 2.8 0 0 1 5.6 77V60.2h12.393l.175-.006c3.802-.04 7.95 5.943 19.61 6.19l.022-.002.022.002c10.856.218 15.009-5.902 19.558-6.175l.227-.009H71.4V77a2.8 2.8 0 0 1-2.63 2.795l-.17.005H8.4Z\"\n fill=\"#D6D8E4\"\n />\n <path\n d=\"M21 3.356S24.518 2.509 25.516 0c1.438 2.057 2.18 2.947 3.884 3.338-2.321.692-3.33 1.468-4.123 3.662-.912-2.584-1.741-2.919-4.277-3.644\"\n fill=\"#D6D8E4\"\n opacity={0.5}\n />\n <path\n d=\"M63 10.125S72.382 7.923 75.044 1.4c3.834 5.35 5.81 7.663 10.356 8.68-6.19 1.797-8.878 3.816-10.995 9.52-2.43-6.72-4.643-7.59-11.405-9.475\"\n fill=\"#D6D8E4\"\n opacity={0.8}\n />\n </g>\n </svg>\n ) : (\n <svg\n width={56}\n height={53}\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n >\n <defs>\n <linearGradient\n x1=\"5.718%\"\n y1=\"4.311%\"\n x2=\"83.05%\"\n y2=\"88.915%\"\n id={createNewId(\"a\")}\n >\n <stop stopColor=\"#D4D8E4\" offset=\"0%\" />\n <stop stopColor=\"#A9B0C4\" offset=\"100%\" />\n </linearGradient>\n <linearGradient\n x1=\"0%\"\n y1=\"11.08%\"\n x2=\"80.548%\"\n y2=\"107.704%\"\n id={createNewId(\"d\")}\n >\n <stop stopColor=\"#C2C7DA\" offset=\"0%\" />\n <stop stopColor=\"#8F96B3\" offset=\"100%\" />\n </linearGradient>\n <linearGradient\n x1=\"41.823%\"\n y1=\"24.795%\"\n x2=\"8.813%\"\n y2=\"86.427%\"\n id={createNewId(\"g\")}\n >\n <stop stopColor=\"#CCD0DD\" offset=\"0%\" />\n <stop stopColor=\"#9DA3B9\" offset=\"100%\" />\n </linearGradient>\n <filter\n x=\"-57.2%\"\n y=\"-47.7%\"\n width=\"233.4%\"\n height=\"233.4%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"b\")}\n >\n <feOffset\n dx={1}\n dy={2}\n in=\"SourceAlpha\"\n result=\"shadowOffsetOuter1\"\n />\n <feGaussianBlur\n stdDeviation={2}\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n />\n <feComposite\n in=\"shadowBlurOuter1\"\n in2=\"SourceAlpha\"\n operator=\"out\"\n result=\"shadowBlurOuter1\"\n />\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.22 0\"\n in=\"shadowBlurOuter1\"\n />\n </filter>\n <filter\n x=\"-94.4%\"\n y=\"-121.3%\"\n width=\"288.7%\"\n height=\"288.7%\"\n filterUnits=\"objectBoundingBox\"\n id={createNewId(\"e\")}\n >\n <feOffset dy={-2} in=\"SourceAlpha\" result=\"shadowOffsetOuter1\" />\n <feGaussianBlur\n stdDeviation={2}\n in=\"shadowOffsetOuter1\"\n result=\"shadowBlurOuter1\"\n />\n <feColorMatrix\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0\"\n in=\"shadowBlurOuter1\"\n />\n </filter>\n <path\n d=\"M23.672 23.607h2.492a4 4 0 0 1 4 4v2.491a4 4 0 0 1-4 4h-2.492a4 4 0 0 1-4-4v-2.491a4 4 0 0 1 4-4Z\"\n id={createNewId(\"c\")}\n />\n <path\n d=\"M37.311 12.459a4 4 0 0 1 4 4v3.419l-7.418-7.419h3.418Z\"\n id={createNewId(\"f\")}\n />\n </defs>\n <g fill=\"none\" fillRule=\"evenodd\">\n <path\n d=\"M39.682 33.967H10.81a2.8 2.8 0 0 0-1.94.782l-5.197 4.999v6.98a5.6 5.6 0 0 0 5.6 5.6H41.22a5.6 5.6 0 0 0 5.6-5.6v-6.98l-5.196-4.999a2.8 2.8 0 0 0-1.942-.782Z\"\n fill=\"#A6AAC3\"\n />\n <path\n d=\"m33.893 12.459 7.418 7.419v22.568a2.8 2.8 0 0 1-2.8 2.8h-26.53a2.8 2.8 0 0 1-2.8-2.8V18.459a6 6 0 0 1 6-6h18.712Z\"\n fill={`url(#${createNewId(\"a\")})`}\n />\n <g>\n <use\n fill=\"#000\"\n filter={`url(#${createNewId(\"b\")})`}\n xlinkHref={`#${createNewId(\"c\")}`}\n />\n <path\n stroke=\"#FFF\"\n d=\"M26.164 24.107c.966 0 1.841.391 2.475 1.025a3.489 3.489 0 0 1 1.025 2.475v2.491c0 .967-.392 1.842-1.025 2.475a3.489 3.489 0 0 1-2.475 1.025h-2.492a3.489 3.489 0 0 1-2.475-1.025 3.489 3.489 0 0 1-1.025-2.475v-2.491c0-.967.392-1.842 1.025-2.475a3.489 3.489 0 0 1 2.475-1.025Z\"\n strokeLinejoin=\"round\"\n fill=\"url(#d)\"\n />\n </g>\n <g transform=\"rotate(180 37.602 16.168)\">\n <use\n fill=\"#000\"\n filter={`url(#${createNewId(\"e\")})`}\n xlinkHref={`#${createNewId(\"f\")}`}\n />\n <use\n fill={`url(#${createNewId(\"g\")})`}\n xlinkHref={`#${createNewId(\"f\")}`}\n />\n </g>\n <path\n d=\"M54.164 27.541c.253 0 .459.205.459.459v.918h.918a.459.459 0 1 1 0 .918h-.918v.918a.459.459 0 0 1-.918 0v-.918h-.918a.459.459 0 0 1 0-.918h.918V28c0-.254.205-.459.459-.459ZM1.377 20.197c.19 0 .344.154.344.344v.574h.574a.459.459 0 1 1 0 .918h-.574v.574a.344.344 0 0 1-.688 0l-.001-.574H.459a.459.459 0 0 1 0-.918h.573v-.574c0-.19.155-.344.345-.344Z\"\n fill=\"#D6D8E4\"\n opacity={0.3}\n />\n <path\n d=\"M24.787 43.53h.014c7.087.143 9.817-3.834 12.785-4.046l.19-.008h9.044v10.052a2.8 2.8 0 0 1-2.63 2.795l-.17.005H6.472l-.17-.005a2.8 2.8 0 0 1-2.63-2.795V39.475h8.126l.144-.004c2.485.004 5.214 3.898 12.83 4.06l.015-.002Z\"\n fill=\"#D6D8E4\"\n />\n <path\n d=\"M13.77 2.2s2.308-.555 2.962-2.2c.943 1.35 1.429 1.933 2.547 2.189-1.522.453-2.183.963-2.704 2.401-.598-1.695-1.142-1.914-2.805-2.39\"\n fill=\"#D6D8E4\"\n opacity={0.5}\n />\n <path\n d=\"M41.311 6.64S47.464 5.194 49.21.917c2.514 3.508 3.81 5.025 6.791 5.691-4.059 1.18-5.822 2.503-7.21 6.243-1.594-4.406-3.045-4.976-7.479-6.213\"\n fill=\"#D6D8E4\"\n opacity={0.8}\n />\n </g>\n </svg>\n );\n }\n}\n","import React, { useMemo } from \"react\";\nimport { Empty } from \"antd\";\nimport { getIllustration, IllustrationProps } from \"@next-core/illustrations\";\nimport { EmptySvg } from \"./EmptySvg\";\n\n// @internal\nexport interface EasyopsEmptyProps {\n background?: string;\n description?: string | React.ReactNode;\n imageStyle?: React.CSSProperties;\n illustration?: IllustrationProps;\n useBigEmptyImage?: boolean;\n}\n\n/**\n * 用于展示空数据的 React 组件。\n */\nexport function EasyopsEmpty(props: EasyopsEmptyProps): React.ReactElement {\n const illustration = useMemo(\n () => props.illustration && getIllustration(props.illustration),\n [props.illustration]\n );\n const image = props.illustration ? (\n illustration\n ) : (\n <EmptySvg isBig={props.useBigEmptyImage}></EmptySvg>\n );\n const imageStyle =\n props.imageStyle ??\n (props.useBigEmptyImage ? undefined : { height: \"60px\" });\n\n return (\n <Empty\n image={image}\n imageStyle={imageStyle}\n description={props.description}\n style={{ color: \"var(--text-color-secondary)\" }}\n />\n );\n}\n\n/**\n * 调用后获得一个默认的展示空数据的 React 组件。\n */\nexport function renderEasyopsEmpty(): React.ReactNode {\n return <EasyopsEmpty />;\n}\n","import React, { createContext, useContext } from \"react\";\nimport { FeatureFlags as FeatureFlagsType } from \"@next-core/brick-types\";\nconst FeatureFlagsContext = createContext<FeatureFlagsType>(null);\n\nexport const FeatureFlagsProvider = FeatureFlagsContext.Provider;\n\ninterface featureFlagsProps {\n name: string | string[];\n fallback?: React.ReactNode | React.ReactElement;\n}\n\n/**\n * 显示特性开关\n *\n * @example\n *\n * ```tsx\n * featureFlags = {\"enabled-foo\": true, \"enabled-bar\": true}\n *\n * function MyReactComponent(props) {\n * // 返回所有的特性开关名称数组\n * const featureFlags = useFeatureFlags();\n * console.log(featureFlags)\n * // Output: [\"enabled-foo\", \"enabled-bar\"]\n *\n * // ...\n * }\n *\n * featureFlags = {\"enabled-foo\": true}\n * function MyReactComponent(props) {\n * // 返回传入的特性开关名布尔值数组\n * const [isEnabledFoo, isEnabledBar] = useFeatureFlags([\"enabled-foo\", \"enabled-bar\"]);\n * console.log([isEnabledFoo, isEnabledBar])\n * // Output: [true, false]\n *\n * // ...\n * }\n * ```\n *\n * @param name - 特性开关名称\n *\n * @returns boolean[] | string[]\n */\nexport function useFeatureFlags(\n name?: string | string[]\n): boolean[] | string[] {\n const featureFlags = useContext(FeatureFlagsContext);\n const flagNames = [].concat(name).filter(Boolean);\n return flagNames.length\n ? flagNames.map((flag) => !!featureFlags[flag])\n : Object.keys(featureFlags).filter((flag) => !!featureFlags[flag]);\n}\n\n/**\n * 特性开关 React 组件\n * @example\n *\n * ```tsx\n * featureFlags = {\"enabled-foo\": true}\n *\n * <DisplayByFeatureFlags name={[\"enable-foo\"]}>\n * <div>Can you see me?</div>\n * </DisplayByFeatureFlags>\n * // 显示 `Can you see me?`\n *\n *\n * featureFlags = {\"enabled-foo\": true}\n * <DisplayByFeatureFlags fallback={<h1>Good to see you.</h1>} name={\"enable-bar\"}>\n * <div>Can you see me?</div>\n * </DisplayByFeatureFlags>\n * // 显示 `Good to see you.`\n *\n * ```\n * @param name - 特性开关名称\n *\n * @param fallback - 如果没有开启传入的特性开关则渲染此属性内传入的 React Node\n */\nexport function DisplayByFeatureFlags(\n props: React.PropsWithChildren<featureFlagsProps>\n): React.ReactElement {\n const featureFlags = useFeatureFlags(props.name) as boolean[];\n\n return featureFlags.every((flag) => !!flag) ? (\n <>{props.children}</>\n ) : props?.fallback ? (\n <>{props?.fallback}</>\n ) : null;\n}\n","import React from \"react\";\nimport i18n from \"i18next\";\nimport { ConfigProvider } from \"antd\";\nimport zhCN from \"antd/es/locale/zh_CN\";\nimport enUS from \"antd/es/locale/en_US\";\n\nimport { ErrorBoundary } from \"./ErrorBoundary\";\nimport { EasyopsEmpty, EasyopsEmptyProps } from \"./EasyopsEmpty\";\nimport { FeatureFlagsProvider } from \"./featureFlags\";\nimport { getRuntime } from \"./runtime\";\n\ninterface BrickWrapperProps {\n wrapperConfig?: {\n empty?: EasyopsEmptyProps;\n };\n}\n\n/**\n * 构件的 React 组件包装器,包含 ErrorBoundary, ConfigProvider, FeatureFlagsProvider。\n */\nexport function BrickWrapper(\n props: React.PropsWithChildren<BrickWrapperProps>\n): React.ReactElement {\n const locale =\n i18n.language && i18n.language.split(\"-\")[0] === \"en\" ? enUS : zhCN;\n // istanbul ignore next\n const featureFlags =\n process.env.NODE_ENV === \"test\" ? {} : getRuntime().getFeatureFlags();\n return (\n <ErrorBoundary>\n <FeatureFlagsProvider value={featureFlags}>\n <ConfigProvider\n locale={locale}\n autoInsertSpaceInButton={false}\n renderEmpty={() => <EasyopsEmpty {...props.wrapperConfig?.empty} />}\n >\n {props.children}\n </ConfigProvider>\n </FeatureFlagsProvider>\n </ErrorBoundary>\n );\n}\n","import { noop } from \"lodash\";\nimport { asyncProcessBrick } from \"@next-core/brick-utils\";\nimport { BrickConf } from \"@next-core/brick-types\";\nimport { brickTemplateRegistry } from \"./core/TemplateRegistries\";\nimport {\n LocationContext,\n mountTree,\n unmountTree,\n afterMountTree,\n _dev_only_getBrickPackages,\n _dev_only_getStoryboards,\n _dev_only_loadDynamicBricksInBrickConf,\n _dev_only_getTemplatePackages,\n _dev_only_getFakeKernel,\n _dev_only_loadEditorBricks,\n _dev_only_updateStoryboard,\n _dev_only_updateTemplatePreviewSettings,\n _dev_only_updateSnippetPreviewSettings,\n} from \"./core/exports\";\n\n/** @internal */\nexport const developHelper = {\n asyncProcessBrick(brickConf: BrickConf): Promise<void> {\n return asyncProcessBrick(\n brickConf,\n brickTemplateRegistry,\n _dev_only_getTemplatePackages()\n );\n },\n LocationContext,\n mountTree,\n unmountTree,\n afterMountTree,\n getBrickPackages: _dev_only_getBrickPackages,\n getTemplatePackages: _dev_only_getTemplatePackages,\n getStoryboards: _dev_only_getStoryboards,\n loadEditorBricks: _dev_only_loadEditorBricks,\n loadDynamicBricksInBrickConf: _dev_only_loadDynamicBricksInBrickConf,\n getFakeKernel: _dev_only_getFakeKernel,\n /** @deprecated Keep it for backward-compatibility. */\n checkoutTplContext: noop,\n updateStoryboard: _dev_only_updateStoryboard,\n updateTemplatePreviewSettings: _dev_only_updateTemplatePreviewSettings,\n updateSnippetPreviewSettings: _dev_only_updateSnippetPreviewSettings,\n};\n","// Inspired by [LitElement](https://github.com/Polymer/lit-element)\n\ntype TypeHint = typeof String | typeof Number | typeof Boolean;\n\n/**\n * Converts property values to and from attribute values.\n */\ninterface ComplexAttributeConverter<Type = unknown> {\n /**\n * Function called to convert an attribute value to a property\n * value.\n */\n fromAttribute?(value: string | null, type?: TypeHint): Type;\n\n /**\n * Function called to convert a property value to an attribute\n * value.\n *\n * It returns unknown instead of string, to be compatible with\n * https://github.com/WICG/trusted-types (and similar efforts).\n */\n toAttribute?(value: Type, type?: TypeHint): unknown;\n}\n\n/**\n * Defines options for a property accessor.\n */\nexport interface PropertyDeclaration<Type = unknown> {\n /**\n * Indicates how and whether the property becomes an observed attribute.\n * If the value is `false`, the property is not added to `observedAttributes`.\n * If true or absent, the lowercased property name is observed (e.g. `fooBar`\n * becomes `foobar`). If a string, the string value is observed (e.g\n * `attribute: 'foo-bar'`).\n */\n readonly attribute?: boolean | string;\n\n /**\n * Indicates the type of the property. This is used only as a hint for the\n * `converter` to determine how to convert the attribute\n * to/from a property.\n */\n readonly type?: TypeHint;\n\n /**\n * Indicates how to convert the attribute to/from a property. If this value\n * is a function, it is used to convert the attribute value a the property\n * value. If it's an object, it can have keys for `fromAttribute` and\n * `toAttribute`. If no `toAttribute` function is provided and\n * `reflect` is set to `true`, the property value is set directly to the\n * attribute. A default `converter` is used if none is provided; it supports\n * `Boolean`, `String`, `Number`, `Object`, and `Array`. Note,\n * when a property changes and the converter is used to update the attribute,\n * the property is never updated again as a result of the attribute changing,\n * and vice versa.\n */\n readonly converter?: ComplexAttributeConverter<Type>;\n\n /**\n * Indicates if the property should reflect to an attribute.\n * If `true`, when the property is set, the attribute is set using the\n * attribute name determined according to the rules for the `attribute`\n * property option and the value of the property converted using the rules\n * from the `converter` property option.\n */\n readonly reflect?: boolean;\n\n /**\n * A function that indicates if a property should be considered changed when\n * it is set. The function should take the `newValue` and `oldValue` and\n * return `true` if an update should be requested.\n */\n hasChanged?(value: Type, oldValue: Type): boolean;\n\n /**\n * Indicates whether an accessor will be created for this property. By\n * default, an accessor will be generated for this property that requests an\n * update when set. If this flag is `true`, no accessor will be created, and\n * it will be the user's responsibility to call\n * `this.requestUpdate(propertyName, oldValue)` to request an update when\n * the property changes.\n */\n readonly noAccessor?: boolean;\n\n /**\n * Used for existed properties which require `@property` do not decorate.\n * This should be used for legacy props only.\n *\n * @internal\n */\n readonly __unstable_doNotDecorate?: boolean;\n\n /**\n * Used for existed properties that are conflicted with html native properties.\n *\n * @internal\n */\n readonly __deprecated_and_for_compatibility_only?: boolean;\n}\n\nconst defaultConverter: ComplexAttributeConverter = {\n toAttribute(value: unknown, type?: TypeHint): unknown {\n switch (type) {\n case Boolean:\n return value ? \"\" : null;\n }\n return value;\n },\n\n fromAttribute(value: string | null, type?: TypeHint) {\n switch (type) {\n case Boolean:\n return value !== null;\n case Number:\n return value === null ? null : Number(value);\n }\n return value;\n },\n};\n\ninterface HasChanged {\n (value: unknown, old: unknown): boolean;\n}\n\n/**\n * Change function that returns true if `value` is different from `oldValue`.\n * This method is used as the default for a property's `hasChanged` function.\n */\nconst notEqual: HasChanged = (value: unknown, old: unknown): boolean => {\n // This ensures (old==NaN, value==NaN) always returns false\n return old !== value && (old === old || value === value);\n};\n\nconst defaultPropertyDeclaration: PropertyDeclaration = {\n attribute: true,\n type: String,\n converter: defaultConverter,\n reflect: true,\n hasChanged: notEqual,\n};\n\nfunction attributeNameForProperty(\n name: PropertyKey,\n options: PropertyDeclaration\n): string {\n const attribute = options.attribute;\n return attribute === false\n ? undefined\n : typeof attribute === \"string\"\n ? attribute\n : typeof name === \"string\"\n ? name.replace(/[A-Z]/g, (char) => `-${char.toLowerCase()}`)\n : undefined;\n}\n\n/**\n * 构件事件的选项。\n */\nexport interface EventDeclaration extends EventInit {\n /**\n * 事件类型名。\n */\n type: string;\n}\n\n/** 事件发送器 */\nexport interface EventEmitter<T = unknown> {\n /** 发出事件。 */\n emit: (detail?: T) => boolean;\n}\n\n/**\n * 普通构件的抽象基类。\n *\n * @example\n *\n * ```ts\n * class MyBrickElement extends UpdatingElement {\n * @property()\n * myProp: string;\n *\n * _render() {\n * if (this.isConnected) {\n * // ...\n * }\n * }\n * }\n * ```\n */\nexport abstract class UpdatingElement extends HTMLElement {\n private _hasRequestedRender = false;\n private static _observedAttributes = new Set<string>();\n private static __dev_only_definedProperties = new Set<string>();\n private static __dev_only_definedMethods = new Set<string>();\n private static __dev_only_definedEvents = new Set<string>();\n\n /** @internal */\n static get observedAttributes(): string[] {\n this._ensureObservedAttributes();\n return Array.from(this._observedAttributes);\n }\n\n /** @internal */\n static get _dev_only_definedProperties(): string[] {\n this._ensureDefinedProperties();\n return Array.from(this.__dev_only_definedProperties);\n }\n\n /** @internal */\n static get _dev_only_definedMethods(): string[] {\n this._ensureDefinedMethods();\n return Array.from(this.__dev_only_definedMethods);\n }\n\n /** @internal */\n static get _dev_only_definedEvents(): string[] {\n this._ensureDefinedEvents();\n return Array.from(this.__dev_only_definedEvents);\n }\n\n /** @internal */\n get $$typeof(): string {\n return \"brick\";\n }\n\n /** @internal */\n attributeChangedCallback(\n name: string,\n old: string | null,\n value: string | null\n ): void {\n if (old !== value) {\n this._enqueueRender();\n }\n }\n\n // Enure multiple property settings will trigger rendering only once.\n private _enqueueRender(): void {\n // If the element is not connected,\n // let `connectedCallback()` do the job of rendering.\n if (this.isConnected && !this._hasRequestedRender) {\n this._hasRequestedRender = true;\n Promise.resolve().then(() => {\n this._hasRequestedRender = false;\n this._render();\n });\n }\n }\n\n private static _ensureObservedAttributes(): void {\n // eslint-disable-next-line no-prototype-builtins\n if (!this.hasOwnProperty(\"_observedAttributes\")) {\n const superClass = Object.getPrototypeOf(this);\n this._observedAttributes = new Set<string>(\n // eslint-disable-next-line no-prototype-builtins\n superClass.hasOwnProperty(\"_observedAttributes\")\n ? superClass._observedAttributes\n : null\n );\n }\n }\n\n private static _ensureDefinedProperties(): void {\n // eslint-disable-next-line no-prototype-builtins\n if (!this.hasOwnProperty(\"__dev_only_definedProperties\")) {\n const superClass = Object.getPrototypeOf(this);\n this.__dev_only_definedProperties = new Set<string>(\n // eslint-disable-next-line no-prototype-builtins\n superClass.hasOwnProperty(\"__dev_only_definedProperties\")\n ? superClass.__dev_only_definedProperties\n : null\n );\n }\n }\n\n private static _ensureDefinedMethods(): void {\n // eslint-disable-next-line no-prototype-builtins\n if (!this.hasOwnProperty(\"__dev_only_definedMethods\")) {\n const superClass = Object.getPrototypeOf(this);\n this.__dev_only_definedMethods = new Set<string>(\n // eslint-disable-next-line no-prototype-builtins\n superClass.hasOwnProperty(\"__dev_only_definedMethods\")\n ? superClass.__dev_only_definedMethods\n : null\n );\n }\n }\n\n private static _ensureDefinedEvents(): void {\n // eslint-disable-next-line no-prototype-builtins\n if (!this.hasOwnProperty(\"__dev_only_definedEvents\")) {\n const superClass = Object.getPrototypeOf(this);\n this.__dev_only_definedEvents = new Set<string>(\n // eslint-disable-next-line no-prototype-builtins\n superClass.hasOwnProperty(\"__dev_only_definedEvents\")\n ? superClass.__dev_only_definedEvents\n : null\n );\n }\n }\n\n /** @internal */\n static createProperty(name: string, options?: PropertyDeclaration): void {\n this._ensureObservedAttributes();\n this._ensureDefinedProperties();\n\n options = Object.assign({}, defaultPropertyDeclaration, options);\n\n // eslint-disable-next-line no-prototype-builtins\n if (options.noAccessor || this.prototype.hasOwnProperty(name)) {\n return;\n }\n\n this.__dev_only_definedProperties.add(name);\n\n const attr = attributeNameForProperty(name, options);\n\n if (attr === undefined) {\n // Create a non-enumerable symbol property to delegate the property.\n const delegatedPropSymbol = Symbol(`delegatedProp:${name}`);\n Object.defineProperty(this.prototype, name, {\n get(): any {\n return (this as any)[delegatedPropSymbol];\n },\n set(this: UpdatingElement, value: unknown) {\n const oldValue = (this as any)[name];\n if (options.hasChanged(value, oldValue)) {\n (this as any)[delegatedPropSymbol] = value;\n this._enqueueRender();\n }\n },\n enumerable: true,\n });\n return;\n }\n\n this._observedAttributes.add(attr);\n\n Object.defineProperty(this.prototype, name, {\n get(): any {\n return options.converter.fromAttribute(\n (this as HTMLElement).getAttribute(attr),\n options.type\n );\n },\n set(this: UpdatingElement, value: unknown) {\n const oldValue = (this as any)[name];\n if (options.hasChanged(value, oldValue)) {\n const attrValue = options.converter.toAttribute(value, options.type);\n if (attrValue === undefined) {\n return;\n }\n if (attrValue === null) {\n this.removeAttribute(attr);\n } else {\n this.setAttribute(attr, attrValue as string);\n }\n }\n },\n enumerable: true,\n });\n }\n\n /** @internal */\n static createMethod(name: string): void {\n this._ensureDefinedMethods();\n this.__dev_only_definedMethods.add(name);\n }\n\n /** @internal */\n static createEventEmitter(name: string, options: EventDeclaration): void {\n this._ensureDefinedEvents();\n\n // eslint-disable-next-line no-prototype-builtins\n if (this.prototype.hasOwnProperty(name)) {\n return;\n }\n\n const { type, ...eventInit } = options;\n this.__dev_only_definedEvents.add(type);\n\n // Make event emitter readonly.\n Object.defineProperty(this.prototype, name, {\n get(): EventEmitter {\n return Object.freeze({\n emit: <T>(detail: T): boolean =>\n this.dispatchEvent(new CustomEvent(type, { ...eventInit, detail })),\n });\n },\n });\n }\n\n /**\n * 当构件的属性改变时,将自动调用 `this._render()` 方法。\n */\n protected abstract _render(): void;\n}\n","import { merge } from \"lodash\";\nimport { UpdatingElement } from \"../UpdatingElement\";\nimport { property } from \"../decorators\";\n\n/**\n * 模态框类构件的抽象基类。\n */\nexport abstract class ModalElement extends UpdatingElement {\n /**\n * 模态框当前是否可见。\n */\n @property({\n type: Boolean,\n })\n public isVisible: boolean;\n\n /**\n * 打开模态框。\n *\n * @param e - 事件。\n */\n openModal = (e?: CustomEvent): void => {\n if (e) {\n if (typeof e.detail === \"object\" && !Array.isArray(e.detail)) {\n merge(this, e.detail);\n } else {\n merge(this, { detail: e.detail });\n }\n }\n this.isVisible = true;\n this._render();\n };\n\n /**\n * 关闭模态框。\n */\n closeModal = (): void => {\n this.isVisible = false;\n this._render();\n };\n}\n","import { UseProviderArgsDefaults } from \"./useProviderTypes\";\n\nexport const useProviderArgsDefaults: UseProviderArgsDefaults = {\n provider: \"\",\n customOptions: {\n onError: () => {\n /* Do nothing.. */\n },\n transform: (oldData: any, newData: any) => newData,\n data: undefined,\n loading: false,\n suspense: false,\n },\n dependencies: undefined,\n};\n\nexport default Object.entries(useProviderArgsDefaults).reduce(\n (acc, [key, value]) => {\n if (Object.prototype.toString.call(value) === \"[object Object]\")\n return { ...acc, ...value };\n return { ...acc, [key]: value };\n },\n {} as UseProviderArgsDefaults\n);\n","import { useMemo } from \"react\";\nimport defaults, { useProviderArgsDefaults } from \"./useProviderArgsDefaults\";\nimport { isObject } from \"lodash\";\nimport { HttpOptions } from \"@next-core/brick-http\";\nimport {\n IncomingOptions,\n UseProviderArgsReturn,\n UseProviderCustomOptions,\n UseProviderOptionArgsDefaults,\n} from \"./useProviderTypes\";\n\nexport default function useProviderArgs(\n providerOrParamsOrGlobalOptions?: string | IncomingOptions,\n gloabalOptionsOrDeps?: IncomingOptions | any[],\n deps?: any[]\n): UseProviderArgsReturn {\n const provider = useMemo(() => {\n if (typeof providerOrParamsOrGlobalOptions === \"string\") {\n return providerOrParamsOrGlobalOptions;\n }\n\n return useProviderArgsDefaults.provider;\n }, [providerOrParamsOrGlobalOptions, gloabalOptionsOrDeps]);\n\n const options = useMemo(() => {\n let localOptions = {};\n if (isObject(providerOrParamsOrGlobalOptions)) {\n localOptions = providerOrParamsOrGlobalOptions;\n } else if (isObject(gloabalOptionsOrDeps)) {\n localOptions = gloabalOptionsOrDeps;\n }\n return {\n ...defaults,\n ...localOptions,\n } as IncomingOptions;\n }, [providerOrParamsOrGlobalOptions, gloabalOptionsOrDeps]);\n\n const requestInit = useMemo((): {\n args: unknown;\n options?: HttpOptions;\n } => {\n const customOptionKeys = [\n ...Object.keys(useProviderArgsDefaults),\n ...Object.keys(useProviderArgsDefaults.customOptions),\n ] as Array<UseProviderOptionArgsDefaults>;\n\n const { args = null, ...restOptions } = (\n Object.keys(options) as any\n ).reduce((acc: Record<string, any>, key: UseProviderOptionArgsDefaults) => {\n if (!customOptionKeys.includes(key)) acc[key] = (options as never)[key];\n return acc;\n }, {} as Record<string, any>);\n\n return { options: { ...restOptions }, args };\n }, [options]);\n\n const dependencies = useMemo((): any[] | undefined => {\n if (Array.isArray(gloabalOptionsOrDeps)) return gloabalOptionsOrDeps;\n if (Array.isArray(deps)) return deps;\n return defaults.dependencies;\n }, [gloabalOptionsOrDeps, deps]);\n\n const loading = options.loading || Array.isArray(dependencies);\n\n const customOptions = useMemo(() => {\n const customOptionKeys = Object.keys(\n useProviderArgsDefaults.customOptions\n ) as (keyof UseProviderCustomOptions)[];\n\n const customOptions = customOptionKeys.reduce((opts, key) => {\n (opts as any)[key] = options[key];\n return opts;\n }, {} as UseProviderCustomOptions);\n\n return { ...customOptions, loading };\n }, [options]);\n\n return {\n provider,\n customOptions,\n requestInit,\n dependencies,\n };\n}\n","import { getArgsOfCustomApi } from \"../../core/FlowApi\";\nimport { FetchArgs } from \"./useProviderTypes\";\n\nconst cache = new Map<string, FetchArgs>();\n\nexport default async function fetchProviderArgs(\n provider: string,\n args: unknown[],\n ...originalArgs: unknown[]\n): Promise<FetchArgs> {\n const cacheKey = JSON.stringify({\n provider,\n args,\n originalArgs,\n });\n\n if (cache.has(cacheKey)) return cache.get(cacheKey);\n\n const actualArgs = (await getArgsOfCustomApi(provider, [\n ...args,\n ...originalArgs,\n ])) as FetchArgs;\n cache.set(cacheKey, actualArgs);\n\n return actualArgs;\n}\n","import { isCustomApiProvider } from \"../../core/FlowApi\";\nimport { RefreshableProvider } from \"../../internal/makeProviderRefreshable\";\nimport { FetchArgs } from \"./useProviderTypes\";\nimport { _internalApiGetProviderBrick } from \"../../core/Runtime\";\nimport { CustomApi } from \"../../providers/CustomApi\";\n\nconst cache: Map<string, Promise<any>> = new Map();\n\nexport default async function fetch<TData>(\n provider: string,\n ...args: FetchArgs\n): Promise<TData> {\n const cacheKey = JSON.stringify({\n provider,\n args,\n });\n\n let promise: Promise<TData>;\n\n if (cache.has(cacheKey)) {\n promise = cache.get(cacheKey);\n } else {\n promise = (async () => {\n if (!isCustomApiProvider(provider)) {\n const providerBrick: RefreshableProvider =\n (await _internalApiGetProviderBrick(provider)) as any;\n\n const providerTagName = providerBrick.tagName.toLowerCase();\n\n if (!customElements.get(providerTagName)) {\n throw new Error(\n `Provider not defined: \"${providerTagName}\", please make sure the related package is installed.`\n );\n }\n return providerBrick[\"resolve\"](...args);\n }\n\n return CustomApi(...(args as Parameters<typeof CustomApi>));\n })();\n cache.set(cacheKey, promise);\n }\n\n return promise;\n}\n","import {\n useCallback,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n useState,\n} from \"react\";\nimport useProviderArgs from \"./useProviderArgs\";\nimport {\n UseProviderArgs,\n FetchArgs,\n UseProviderError,\n UseProviderObjectReturn,\n Req,\n Res,\n UseProviderArrayReturn,\n UseProvider,\n} from \"./useProviderTypes\";\nimport { isObject, isString } from \"lodash\";\nimport fetchProviderArgs from \"./fetchProviderArgs\";\nimport fetch from \"./fetch\";\n\nexport function useProvider<TData = any>(\n ...args: UseProviderArgs\n): UseProvider<TData> {\n const { provider, customOptions, dependencies, requestInit } =\n useProviderArgs(...args);\n const { onError, transform, suspense, ...defaults } = customOptions;\n\n const [loading, setLoading] = useState(defaults.loading);\n const suspenseStatus = useRef<\"pending\" | \"error\" | \"success\">(\"pending\");\n const suspender = useRef<Promise<any>>();\n const mounted = useRef(false);\n const error = useRef<UseProviderError>();\n const response = useRef<Res<TData>>();\n const data = useRef<TData>(defaults.data);\n const forceUpdate = useReducer(() => ({}), [])[1];\n\n const doFetch = useCallback(\n async (provider: string, ...args: FetchArgs): Promise<TData> => {\n try {\n error.current = undefined;\n if (!suspense) setLoading(true);\n const newRes = (await fetch(provider, ...args)) as TData;\n response.current = newRes;\n data.current = transform(data.current, newRes);\n } catch (e) {\n error.current = e;\n }\n if (!suspense) setLoading(false);\n if (error.current) onError(error.current);\n return data.current;\n },\n [\n provider,\n customOptions,\n dependencies,\n requestInit,\n suspense,\n transform,\n defaults.data,\n onError,\n ]\n );\n\n const makeFetch = useCallback(\n async (\n providerOrBody: string | unknown[],\n args?: unknown[]\n ): Promise<TData> => {\n let providerStr = provider;\n let providerArgs = [] as unknown[];\n if (isString(providerOrBody)) {\n providerStr = providerOrBody;\n }\n if (isObject(providerOrBody)) {\n providerArgs = providerOrBody;\n } else if (isObject(args)) {\n providerArgs = args;\n }\n\n const actualArgs = await fetchProviderArgs(\n providerStr,\n providerArgs,\n requestInit.options\n );\n\n if (suspense) {\n return (async () => {\n suspender.current = doFetch(providerStr, ...actualArgs).then(\n (newData) => {\n suspenseStatus.current = \"success\";\n return newData;\n },\n (error) => {\n suspenseStatus.current = \"error\";\n error.current = error;\n return error;\n }\n );\n forceUpdate();\n return await suspender.current;\n })();\n }\n return doFetch(providerStr, ...actualArgs);\n },\n [doFetch]\n );\n\n const request: Req<TData> = useMemo(\n () =>\n Object.defineProperties(\n {\n query: makeFetch,\n },\n {\n loading: {\n get(): boolean {\n return loading;\n },\n },\n data: {\n get(): TData {\n return data.current;\n },\n },\n error: {\n get(): UseProviderError {\n return error.current;\n },\n },\n }\n ),\n [makeFetch]\n ) as unknown as Req<TData>;\n\n // onMount/onUpdate\n useEffect((): any => {\n mounted.current = true;\n if (Array.isArray(dependencies) && provider) {\n request.query(provider, requestInit.args as unknown[]);\n }\n return () => (mounted.current = false);\n }, dependencies);\n\n if (suspense && suspender.current) {\n switch (suspenseStatus.current) {\n case \"pending\":\n throw suspender.current;\n case \"error\":\n throw error.current;\n }\n }\n\n return Object.assign<\n UseProviderArrayReturn<TData>,\n UseProviderObjectReturn<TData>\n >([request, response.current, loading, error.current], {\n request,\n ...request,\n response: response.current,\n data: data.current,\n loading,\n error: error.current,\n });\n}\n"],"names":["BaseBar","constructor","kernel","mountPoint","_defineProperty","bootstrap","brick","options","_asyncToGenerator","element","remove","loadDynamicBricks","document","createElement","testid","dataset","mountPoints","appendChild","AppBar","setPageTitle","pageTitle","appendBreadcrumb","breadcrumb","setBreadcrumb","MenuBar","setAppMenu","menu","resetAppMenu","subMenu","collapse","collapsed","isCollapsed","softExpand","expanded","softExpanded","isSoftExpanded","NS_BRICK_KIT","K","getBasePath","base","querySelector","basePath","getAttribute","compareVersions","v1","v2","n1","validateAndParse","n2","p1","pop","p2","r","compareSegments","split","validate","v","test","semver","compare","operator","assertValidOperator","res","operatorResMap","includes","satisfies","m","match","op","v3","r1","r2","r3","compareStrings","sastisfies","TypeError","Error","shift","isWildcard","s","tryParse","n","parseInt","isNaN","forceType","a","b","String","ap","bp","i","Math","max","length","allowedOperators","Object","keys","indexOf","join","brickTemplateRegistry","Map","registerBrickTemplate","name","factory","has","console","error","set","DEFAULT_THEME","theme","storage","JsonStorage","localStorage","LOCAL_STORAGE_APPS_THEME_KEY","setTheme","value","getTheme","getCurrentTheme","documentElement","applyTheme","window","dispatchEvent","CustomEvent","detail","useCurrentTheme","currentTheme","setCurrentTheme","useState","useEffect","listenToThemeChange","event","addEventListener","removeEventListener","batchSetAppsLocalTheme","appsTheme","setItem","getLocalAppsTheme","result","getItem","DEFAULT_MODE","mode","setMode","getMode","getCurrentMode","applyMode","useCurrentMode","currentMode","setCurrentMode","listenToModeChange","getCssPropertyValue","el","getComputedStyle","getPropertyValue","supply","attemptToVisitGlobals","providedGlobalVariables","mock","globalVariables","_objectSpread","undefined","variableName","prototype","hasOwnProperty","call","variable","supplyIndividual","shouldOmitInLodash","Set","shouldOmitInMoment","allowedGlobalObjects","delegateMethods","fromEntries","entries","lodash","filter","entry","concat","prefix","assign","moment","pipes","tagUrlFactory","target","methods","map","method","args","arguments","apply","ignoreSlashes","strings","partials","forEach","str","index","push","replace","p","encodeURIComponent","getUrlByAliasFactory","app","getUrlByAlias","alias","pathParams","query","$$routeAliasMap","routeConf","get","url","toPath","computeRealRoutePath","path","urlSearchParams","URLSearchParams","key","Array","isArray","item","append","queryString","toString","getUrlBySegueFactory","segues","getUrlBySegue","segueId","segue","imagesFactory","appId","isBuildPush","PUBLIC_ROOT","widgetImagesFactory","widgetId","injected","WeakSet","recursiveMarkAsInjected","isObject","haveBeenInjected","add","proto","getPrototypeOf","values","object","resetAllInjected","cloneDeepWithInjectedMark","isPreEvaluated","clone","k","getOwnPropertySymbols","StateOfUseBrick","isLazyContentInUseBrick","state","USE_BRICK_PROPERTIES","USE_BRICK_TRANSFORM","USE_BRICK_EVENTS","USE_BRICK_IF","USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_TRANSFORM","USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT_TRANSFORM","getNextStateOfUseBrick","USE_BRICK","USE_BRICK_ITEM","USE_BRICK_SLOTS_ITEM_BRICKS","USE_BRICK_SLOTS_ITEM_BRICKS_ITEM","USE_BRICK_LIFECYCLE_USERESOLVES","USE_BRICK_LIFECYCLE_USERESOLVES_ITEM","INITIAL","USE_BRICK_SLOTS","USE_BRICK_LIFECYCLE","USE_BRICK_SLOTS_ITEM","USE_BRICK_LIFECYCLE_USERESOLVES_ITEM_ONREJECT","transformElementProperties","data","to","from","mapArray","preprocessTransformProperties","setRealProperties","transformProperties","props","propName","propValue","doTransform","preEvaluated","lazy","$$lazyForUseBrick","$$stateOfUseBrick","dismissRecursiveMarkingInjected","isEvaluable","runtimeContext","tplContextId","evaluate","evaluateOptions","shouldDismissRecursiveMarkingInjected","allowInject","transformAndInject","_internalApiGetCurrentContext","transform","nextOptions","getNextDoTransformOptions","trackingContextList","contextNames","trackContext","stateNames","trackState","reTransformForDevtools","transformationId","isReTransformation","devtoolsHookEmit","id","message","processedData","pipeableTransform","fromData","transformedPropName","transformTo","transformIntermediateData","intermediateData","MESSAGE_SOURCE_PANEL","EVALUATION_EDIT","TRANSFORMATION_EDIT","type","payload","Promise","resolve","then","getDevHook","emit","listenDevtools","source","raw","context","restoreDehydrated","isReEvaluation","evaluationId","__BRICK_NEXT_DEVTOOLS_HOOK__","getItemFactory","storageType","sessionStorage","JSON","parse","locale","REQUEST_FAILED","MODAL_OK","MODAL_CANCEL","SOMETHING_WENT_WRONG","LOGIN_TIMEOUT_MESSAGE","NETWORK_ERROR","initI18n","i18next","addResourceBundle","en","zh","getI18nNamespace","registerWidgetI18n","i18n","ns","lang","resources","widgetI18nFactory","getFixedT","i18nText","language","primaryLanguage","startsWith","auth","authenticate","newAuth","org","username","userInstanceId","loginFrom","accessRule","isAdmin","userAnalytics","initialized","setUserId","getAuth","logout","resetPermissionPreChecks","isLoggedIn","permissionMap","preCheckPermissions","storyboard","usedActions","scanPermissionActionsInStoryboard","validatePermissions","actions","difference","PermissionApi_validatePermissions","action","authorizationStatus","checkPermissions","clear","THROW","readOnlyHandler","defineProperty","deleteProperty","setPrototypeOf","getReadOnlyProxy","Proxy","getDynamicReadOnlyProxy","ownKeys","freeze","getGeneralGlobals","getIndividualGlobal","collectCoverage","storyboardFunctions","isStoryboardFunction","fakeImageFactory","identity","fakeI18nText","check","fakeCheckPermissions","href","origin","location","StoryboardFunctionRegistryFactory","registeredFunctions","getStoryboardFunction","currentApp","registerStoryboardFunctions","functions","fn","typescript","processed","cooked","collector","createCollector","precooked","precookFunction","hooks","beforeVisit","cook","function","rules","noVar","beforeEvaluate","beforeCall","beforeBranch","updateStoryboardFunction","widgetFunctionRegistry","widgetFunctions","registerWidgetFunctions","self","EventTarget","wm","create","define","listener","secret","listeners","slice","some","dispatch","currentTarget","splice","configurable","writable","info","once","handleEvent","_stopImmediatePropagationFlag","WeakMap","looseCheckIf","ifContainer","_looseCheckIf","if","computeRealValue","looseCheckIfByTransform","_rawIf","_data","looseCheckIfOfComputed","rawIf","ctx","checkIf","_checkIf","checkIfByTransform","ifChecked","warn","StoryboardContextWrapper","getValue","updateValue","eventTarget","contextConfs","coreContext","mergedContext","keyword","getResolveOptions","resolveContextConcurrently","contextConf","resolveStoryboardContext","syncDefine","syncResolveContextConcurrently","syncResolveStoryboardContext","storyboardContextWrapper","property","prop","resolveNormalStoryboardContext","isResolve","getDefinedTemplateState","valueConf","_internalApiGetResolver","resolveOne","transformMapArray","resolveFreeVariableValue","isTemplateState","properties","newContext","onChange","handler","listenerFactory","tplContextMap","CustomTemplateContext","uniqueId","setVariables","variables","getVariables","getBrick","getCustomTemplateContext","MediaBreakpoint","mediaBreakpointMinWidthMap","xLarge","large","medium","small","xSmall","mediaEventTarget","breakpointMatchesMap","MEDIA","handleMatchesChange","breakpoint","changed","matches","minWidth","mediaQueryList","matchMedia","addListener","getMedia","symbolForRaw","Symbol","for","symbolForContext","shouldAllowRecursiveEvaluations","possibleErrorConstructs","SyntaxError","ReferenceError","getCookErrorConstructor","preevaluate","errorConstructor","attemptToVisitEvent","attemptToVisitData","attemptToVisitTpl","attemptToVisitState","attemptToVisitTplOrState","missingEvent","EVENT","missingTplOrState","missingData","rawWithContext","DATA","tplContext","TPL","STATE","sys","flags","hash","pathname","storyboardContext","overrideApp","getUrl","substr","cloneDeep","getMenu","matchVersion","getRuntime","hasInstalledApp","getMiscSettings","params","pkg","customProcessorRegistry","t","getAll","expression","isBasicProperty","propRef","refProperty","isTransformableProperty","refTransform","isMergeableProperty","mergeProperty","isRefProperty","ref","isVariableProperty","asVariable","customTemplateRegistry","appRegistered","symbolForComputedPropsFromProxy","symbolForRefForProxy","symbolForTplContextId","propertyMerge","conf","propertyMergeAll","$$mergeBase","proxies","proxy","$$reversedRef","mergeBase","mergeType","propertyMergeAllOfArray","propertyMergeAllOfObject","baseValue","computedBaseValue","quasis","size","position","mergeMethod","mergeArgs","clamp","patchValue","flatMap","reduce","acc","setupTemplateProxy","proxyContext","slots","computedPropsFromProxy","refForProxy","reversedProxies","templateProperties","externalSlots","templateContextId","proxyBrick","proxyRefs","mergeBases","quasisMap","refSlot","bricks","expandableSlot","refPosition","slotName","slotConf","setupUseBrickInTemplate","walk","setup","slotsInTemplate","injectDeep","internalOptions","inject","getNextInternalOptions","ignoreSymbols","setProperties","realProps","computeRealProperties","extractProps","textContent","realValue","symbolAppId","menuCache","menuTitleCache","processMenuCache","constructMenu","menuBar","hasSubMenu","subMenuId","menuId","defaultCollapsed","processMenu","isNil","constructMenuByMenusList","menus","all","fetchMenuById","menuList","STANDALONE_MICRO_APPS","getStandaloneMenus","InstanceApi_postSearch","page","page_size","fields","title","icon","link","titleDataSource","defaultCollapsedBreakpoint","injectMenuGroupId","dynamicItems","itemsResolve","items","$eq","$size","$gt","list","loadDynamicMenuItems","menuData","mergeMenu","reorderMenuItems","mainMenu","find","validMenuList","injectWithMenus","injectingMenus","processGroupInject","foundInjectingMenus","groupId","delete","children","injectingMenu","itemsConf","restMenuData","_objectWithoutProperties","_excluded2","computeRealValueWithOverrideApp","computeMenuItemsWithOverrideApp","processMenuTitle","menuItems","text","defaultExpanded","rest","_excluded","cacheKey","stringify","objectId","instanceId","attributeId","attr","instanceData","InstanceApi_getDetail","primary","clearMenuTitleCache","clearMenuCache","sortMenuItems","sortBy","sort","Infinity","overriddenGlobals","requireOverrideApp","memo","overrideAppId","bootstrapData","storyboards","story","fulfilStoryboard","lazyBrickRegistry","requestsMap","registerLazyBricks","factoryWrapper","loadLazyBricks","requests","request","loadAllLazyBricks","_dev_only_getBrickPackages","brickPackages","_dev_only_getTemplatePackages","templatePackages","_dev_only_getStoryboards","_dev_only_loadDynamicBricksInBrickConf","brickConf","loadDynamicBricksInBrickConf","_dev_only_loadEditorBricks","editorBricks","loadEditorBricks","_dev_only_getFakeKernel","overrides","getFeatureFlags","bind","getProviderBrick","_dev_only_updateStoryboard","storyboardPatch","_dev_only_updateTemplatePreviewSettings","templateId","settings","_dev_only_updateSnippetPreviewSettings","snippetData","Runtime","registerCustomTemplate","registerCustomProcessor","Kernel","appBar","getCurrentApp","getRecentApps","getCurrentRoute","currentRoute","getNavConfig","router","getMicroApps","excludeInstalling","includeInternal","apps","microApps","installStatus","internal","foundApp","currentVersion","reloadMicroApps","interceptorParams","check_login","reloadSharedData","loadSharedData","getDesktops","desktops","getLaunchpadSiteMap","siteSort","getAllUserInfo","getAllUserMap","getAllUserMapAsync","loadUsersAsync","allUserMapPromise","getMagicBrickConfigMapAsync","loadMagicBrickConfigAsync","allMagicBrickConfigMapPromise","fetchMenu","getCurrentContext","toggleFilterOfBlur","blur","body","classList","toggle","toggleLaunchpadEffect","open","getHomepage","homepage","getBrandSettings","base_title","brand","getLaunchpadSettings","columns","rows","launchpad","misc","getRelatedApps","getRelatedAppsAsync","popWorkspaceStack","resetWorkspaceStack","workspaceStack","applyPageTitle","baseTitle","process","env","NODE_ENV","getResolver","_internalApiGetRouterState","getState","_internalApiGetRouterRenderId","getRenderId","_internalApiMessageCloseHandler","handleMessageClose","_internalApiGetStoryboardContextWrapper","getStoryboardContextWrapper","_internalApiHasMatchedApp","_internalApiGetProviderBrick","provider","_internalApiGetMicroAppApiOrchestrationMap","allMicroAppApiOrchestrationPromise","_internalApiLoadDynamicBricksInBrickConf","historyExtended","browserHistory","originalPush","originalReplace","updateQueryFactory","updateQuery","extraQuery","keepHash","search","updateAnchorFactory","updateAnchor","notify","reload","blockMessage","setBlockMessage","getBlockMessage","unblock","pushQuery","replaceQuery","pushAnchor","standaloneHistoryOverridden","updateFactory","update","pathIsString","parsePath","createHref","history","createHistory","createBrowserHistory","basename","getHistory","isUnauthenticatedError","HttpResponseError","response","status","responseJson","code","httpErrorToString","Event","HTMLScriptElement","src","HttpFetchError","msg","unauthenticatedConfirmModal","handleHttpError","NO_AUTH_GUARD","Modal","confirm","React","ExclamationCircleOutlined","content","okText","cancelText","onOk","ssoEnabled","whiteSpace","LoginTimeoutMessage","WebsocketMessageRequest","topic","system","PluginWebSocketMessageEvent","WebsocketMessageResponse","SUB_SUCCESS","SUB_FAILED","SUB","UNSUB_SUCCESS","UNSUB_FAILED","UNSUB","WebSocketService","reconnectTimeout","retryLimit","defaultOptions","createWebSocket","readyState","ws","WebSocket","init","e","reconnect","onopen","sendQueuedMessages","onOpen","retryCount","onclose","onClose","navigator","onLine","onerror","onError","log","onmessage","onMessage","messageQueue","send","OPEN","lockReconnect","onReconnect","setTimeout","close","websocket","protocol","host","concatMap","xs","x","balancedMatch","balanced","RegExp","maybeMatch","range","start","end","pre","post","reg","begs","beg","left","right","ai","bi","require$$0","require$$1","braceExpansion","expandTop","escSlash","random","escOpen","escClose","escComma","escPeriod","numeric","charCodeAt","escapeBraces","unescapeBraces","parseCommaParts","parts","postParts","expand","embrace","isPadded","lte","y","gte","isTop","expansions","isNumericSequence","isAlphaSequence","isSequence","isOptions","N","width","incr","abs","reverse","pad","c","fromCharCode","need","z","j","expansion","minimatch_1","minimatch","Minimatch","require","sep","GLOBSTAR","plTypes","qmark","star","twoStarDot","twoStarNoDot","reSpecials","charSet","slashSplit","pattern","ext","defaults","def","orig","makeRe","braceExpand","assertValidPattern","nocomment","charAt","trim","allowWindowsEscape","regexp","negate","comment","empty","partial","make","debug","parseNegate","globSet","globParts","si","negateOffset","nonegate","l","nobrace","MAX_PATTERN_LENGTH","SUBPARSE","isSub","noglobstar","re","hasMagic","nocase","escaping","patternListStack","negativeLists","stateChar","inClass","reClassStart","classStart","patternStart","dot","clearStateChar","len","noext","reStart","pl","reEnd","cs","substring","er","sp","tail","_","$1","$2","addPatternStart","nl","nlBefore","nlFirst","nlLast","nlAfter","openParensBefore","cleanAfter","dollar","newRe","globUnescape","regExp","_glob","_src","twoStar","regExpEscape","ex","mm","f","nonull","filename","file","matchBase","hit","matchOne","flipNegate","fi","pi","fl","fr","pr","swallowee","messageDispatcher","createMessageDispatcher","MessageDispatcher","getMessageDispatcher","brickAndMessages","massageConf","channel","messages","reset","messageCallbackHandlers","subscribe","callback","req","setMessageCallbackHandlers","channels","unsubscribe","getTopicByChannel","createWebsocketService","reducer","Boolean","MESSAGE_PUSH","messagePushHandler","messageSubscribeResponseEventHandler","handlers","getMessageHandlersByTopic","finder","brickAndMessage","prev","curr","callbacks","runtimeBrick","timeoutIdList","startPoll","task","progress","success","finally","finallyCallback","interval","leadingRequestDelay","continueOnError","delegateLoadingBar","expectPollEnd","expectPollStopImmediately","currentRenderId","currentTimeoutId","poll","shouldStop","delayedPoll","delay","clearPollTimeout","timeoutId","clearTimeout","mocks","mockId","mockList","registerMock","useMocks","uri","_match","p3","getMockList","getMockInfo","requestUrl","transformGetMethod","toUpperCase","_p2","contractsMap","collectContract","contracts","contract","namespaceId","getContract","flowApiDefinitionPromiseMap","isCustomApiProvider","getArgsOfCustomApi","originalArgs","isFlowApi","apiDefinition","fetchFlowApiDefinition","apiProfile","getApiProfileFromApiDefinition","getApiArgsFromApiProfile","ext_fields","namespace","serviceName","responseWrapper","version","isFileType","fileName","getTransformedUriAndRestArgs","responseType","restArgs","transformedUri","api","yaml","safeLoad","schema","JSON_SCHEMA","json","endpoint","wrapper","toLowerCase","promise","_fetchFlowApiDefinition","namespaceName","nameWithVersion","isUseMock","InstanceApi_postSearchV3","contractData","ContractApi_searchSingleContract","contractName","bindListeners","eventsMap","eventType","rememberListeners","unbindListeners","$$eventListeners","isBuiltinHandler","isUseProviderHandler","useProvider","isCustomHandler","targetRef","isExecuteCustomHandler","isSetPropsCustomHandler","builtinHistoryListenerFactory","builtinHistoryWithoutArgsListenerFactory","builtinSegueListenerFactory","builtinAliasListenerFactory","builtinIframeListenerFactory","builtinWindowListenerFactory","builtinLocationListenerFactory","builtinWebStorageListenerFactory","preventDefault","builtinConsoleListenerFactory","builtinMessageListenerFactory","builtinContextListenerFactory","builtinStateListenerFactory","builtinTplDispatchEventFactory","builtinWebSocketListenerFactory","builtinThemeListenerFactory","builtinAnalyticsListenerFactory","usingProviderFactory","customListenerFactory","providerBrick","brickCallback","getTplContext","tpl","argsFactory","messageTopic","legacyIframeMountPoint","postMessage","iframe","firstChild","contentWindow","angular","features","runtime","micro_app_id","route_alias","targets","multiple","querySelectorAll","found","$$getElementByRef","useEventAsDefault","computedArgs","finallyHook","callbackFactory","specificHandler","eachHandler","err","pollableCallback","enabled","useEventDetailAsDefault","removeItem","BrickNode","$$brick","mount","tagName","customElements","node","slotId","setAttribute","iid","events","child","childNodes","unmount","afterMount","handleProxyOfCustomTemplate","checkLogin","http","processBootstrapResponse","bootstrapResponse","config","deepFreeze","merge","defaultConfig","userConfig","locales","localeName","removeResourceBundle","CUSTOM_API_PROVIDER","processExtFields","hasFields","hasQueryParams","HasBodyParams","CustomApi","isSimpleRequest","simpleRequest","requestWithBody","registerCustomApi","createProviderClass","initAnalytics","gaMeasurementId","analyticsDebugMode","sendPageView","userId","debugMode","standaloneBootstrap","bootstrapResult","confString","BOOTSTRAP_FILE","APP_ROOT","sys_settings","user_config","user_config_by_apps","feature_flags","featureFlags","hueStep","saturationStep","saturationStep2","brightnessStep1","brightnessStep2","lightColorCount","darkColorCount","darkColorMap","opacity","toHsv","_ref","g","hsv","rgbToHsv","h","toHex","_ref2","rgbToHex","mix","rgb1","rgb2","amount","rgb","getHue","light","hue","round","getSaturation","saturation","Number","toFixed","generate","color","opts","patterns","pColor","inputToRGB","colorString","_i","_hsv","_colorString","_ref3","darkColorString","backgroundColor","presetPrimaryColors","red","volcano","orange","gold","yellow","lime","green","cyan","blue","geekblue","purple","magenta","grey","presetPalettes","presetDarkPalettes","getStyleByBaseColors","baseColors","getDarkStyle","getLightStyle","getCssVariableDefinitionsByPalettes","generatePalettes","getMigratedCssVariableDefinitions","getStyleByBrandColor","brandColor","getCssVariableDefinitionsByBrand","getStyleByVariables","getCssVariableDefinitionsByVariables","cssVariableDefinitions","palettes","colorName","palette","ensureBaseColorName","getRgbChannel","baseColor","default","hover","active","ensureCssVariableName","migrateMap","_ref4","legacyColorName","newColorName","getActualBaseColor","hex","applyColorTheme","style","themes","head","dependsAll","dllPath","DLL_PATH","loadScriptOfDll","loadScriptOfBricksOrTemplates","filePath","templateDeps","getTemplateDepsOfStoryboard","dll","deps","getDllAndDepsOfStoryboard","asyncProcessStoryboard","ignoreBricksInUnusedCustomTemplates","processors","filteredBricks","getDllAndDepsByResource","loadCheckLogin","loadMicroApps","generateColorTheme","loadingBar","Router","legacyAuthGuard","layoutBootstrap","layout","supportedLayouts","currentLayout","presetBricks","pageNotFound","pageError","navbar","AuthSdk","loggedIn","BootstrapV2Api_bootstrapV2","appFields","ignoreTemplateFields","ignoreBrickFields","$$fulfilled","$$fulfilling","doFulfilStoryboard","routes","meta","BootstrapV2Api_getAppStoryboardV2","postProcessStoryboard","scanRouteAliasInStoryboard","i18nNamespace","$$registerCustomTemplateProcessed","$$depsProcessed","previewPath","previewRouteIndex","findIndex","route","newPreviewRoute","pick","exact","unshift","snippetId","loadDepsOfStoryboard","gracefullyLoadDeps","_loadDepsOfStoryboard","prefetchDepsOfStoryboard","prefetchScript","CORE_ROOT","registerCustomTemplatesInStoryboard","customTemplates","scanBricksInBrickConf","scanProcessorsInAny","_loadDynamicBricks","_loadEditorBricks","firstRendered","toggleBars","visible","unsetBars","appChanged","legacy","toggleLegacyIframe","loadRelatedAppsAsync","loadUsersStarted","loadUsers","allUserMap","nickname","user_email","user_tel","user_icon","user_memo","allUserInfo","UserAdminApi_searchAllUsersInfo","user","loadMicroAppApiOrchestrationAsync","usedCustomApis","loadMicroAppApiOrchestration","getMicroAppApiOrchestrationMapAsync","allMicroAppApiOrchestrationMap","legacyCustomApis","allMicroAppApiOrchestration","$or","loadMagicBrickConfigStarted","loadMagicBrickConfig","allMagicBrickConfigMap","allMagicBrickConfig","selector","allRelatedAppsPromise","loadRelatedApps","relatedApps","ObjectMicroAppApi_getObjectMicroAppList","allRelatedApps","thisApp","microAppId","updateWorkspaceStack","workspace","appName","appLocaleName","currentUrl","previousWorkspace","getPreviousWorkspace","previousApp","currentAppId","currentStoryboard","providerRepository","dlls","loadScript","BrickEvent","PropertyDisplayType","getRuntimeMisc","isInIframe","isInIframeOfSameSite","isInIframeOfNext","isInIframeOfVisualBuilder","isInIframeOfLegacyConsole","parent","selfIsNext","parentPathname","parentIsNext","getSubStoryboardByRoute","matcher","getSubRoutes","getSubRoute","getSubBricks","getSubBrick","listenOnTrackingContext","track","contextName","stateName","LocationContext","resolver","Resolver","getContext","nextApp","currentMatch","matchRoutes","computedPath","matchPath","noAuthGuard","public","matchStoryboard","sortedStoryboards","orderBy","matched","mountRoutes","mountRoutesResult","redirect","redirectConf","unauthenticated","hybrid","defineResolves","mountProviders","providers","mountMenu","documentId","isRouteConfOfRoutes","preFetchMenu","isRouteConfOfBricks","mountBricks","analyticsData","menuConf","barsHidden","registerHandlersFromLifeCycle","lifeCycle","menuInBg","otherMenuConf","omit","injectedMenuConf","sidebarMenu","overwrite","noCurrentApp","providerConf","mountBrick","bg","tplStack","ResolveRequestError","errorMessage","rawError","brickName","template","isLegacyTemplate","main","errorType","checkResolvableIf","ifConf","container","permissionsPreCheck","tplTagName","getTagNameOfCustomTemplate","expandedBrickConf","asyncExpandCustomTemplate","exports","ctxName","appendBrick","portal","slottedMountRoutesResult","onBeforePageLoad","onPageLoad","onBeforePageLeave","onPageLeave","onAnchorLoad","onAnchorUnload","onMediaChange","onMessageClose","beforePageLoadHandlers","pageLoadHandlers","beforePageLeaveHandlers","pageLeaveHandlers","anchorLoadHandlers","anchorUnloadHandlers","mediaChangeHandlers","messageHandlers","messageCloseHandlers","handleBeforePageLoad","dispatchLifeCycleEvent","handlePageLoad","handleBeforePageLeave","handlePageLeave","handleAnchorLoad","anchor","handleMediaChange","handleMessage","getCurrentMatch","brickAndHandler","useMenus","scanAppGetMenuInAny","unmountTree","$$rootBricks","innerHTML","mountTree","rootBricks","nodes","afterMountTree","mountStaticNode","brickNode","makeProviderRefreshable","$refresh","keyOfIntervalStopped","defineProperties","$$dependents","$stopInterval","ignoreErrors","throwErrors","$$scheduled","cache","field","transformFrom","onReject","intermediateTransform","intermediateTransformFrom","intermediateTransformMapArray","actualArgs","fetchData","onRejectTransform","resetRefreshQueue","refreshQueue","resolves","resolveConf","definedResolves","useResolves","$$resolved","asyncProcessBrick","propsReference","actualResolveConf","providerTagName","isHandleRejectByTransform","isHandleRejectByCatch","scheduleRefreshing","isolatedCrash","captureStackTrace","shouldBeDefaultCollapsed","clientWidth","getBlockMessageBeforePageLave","returnValue","block","previousMessage","locationContext","locationChangeNotify","Date","image","Image","prevLocation","listen","ignoreRendering","omittedLocationProps","locationsAreEqual","rendering","nextLocation","queuedRender","render","renderId","pageTracker","apiAnalyzer","getInstance","restoreDynamicTemplates","subStoryboard","layoutType","redirectToLogin","mapCustomApisToNameAndNamespace","scanCustomApisInStoryboard","failed","specificTemplatePreviewIndex","findLastIndex","specificSnippetPreviewIndex","mergedRoutes","brickPageError","createPath","actualLegacy","mediaEventTargetHandler","setNavConfig","scrollTo","requestIdleCallback","brickPageNotFound","mountResult","navConfig","collectRefsInTemplate","refMap","collectRefsInBrickConfs","brickConfs","collectRefsInBrickConf","collectMergeBases","contextInTemplate","refToBrickConf","mergeBaseMap","expandCustomTemplate","lowLevelExpandCustomTemplate","restBrickConf","newBrickConf","proxyCopy","tplVariables","refPropertiesCopy","$$properties","reversedRef","extraOneWayRefs","extraConf","reversedProperties","extraRef","extraProxies","reveredSlots","expandBrickInTemplate","brickConfInTemplate","restBrickConfInTemplate","getElementByRef","firstRun","enumerable","handleExtraOneWayRefs","extraRefElement","refElement","delegatedPropSymbol","eventRef","bubbles","stopPropagation","cancelable","composed","$$proxyEvents","proxyEvent","refEvent","methodRef","refMethod","tplName","tplConstructor","registered","getPropsOfCustomTemplate","nativeProp","HTMLElement","TplElement","$$typeof","_dev_only_definedProperties","connectedCallback","display","processorFullName","processorFunc","processorName","registry","createRuntime","LegacyErrorBoundary","Component","getDerivedStateFromError","ErrorBoundary","withTranslation","warnNativeHtmlElementProperty","__deprecated_and_for_compatibility_only","decorateProperty","__unstable_doNotDecorate","kind","initializer","attribute","placement","descriptor","finisher","Class","createProperty","decorateEvent","createEventEmitter","decorateMethod","createMethod","useApplyPageTitle","useRecentApps","recentApps","setRecentApps","useCurrentApp","useLocation","setLocation","unlisten","expandTemplateInUseBrick","useBrick","tplConf","getCurrentRunTimeBrick","transformOption","SingleBrickAsComponent","refCallback","immediatelyRefCallback","templateRef","useRef","isBrickAvailable","useMemo","catch","current","innerRefCallback","useCallback","transformEvents","slotsToChildren","BrickAsComponent","slot","ForwardRefSingleBrickAsComponent","forwardRef","LegacySingleBrickAsComponent","brickRef","useImperativeHandle","items_per_page","jump_to","jump_to_confirm","prev_page","next_page","prev_5","next_5","prev_3","next_3","today","now","backToToday","ok","timeSelect","dateSelect","weekSelect","month","year","previousMonth","nextMonth","monthSelect","yearSelect","decadeSelect","yearFormat","dayFormat","dateFormat","dateTimeFormat","previousYear","nextYear","previousDecade","nextDecade","previousCentury","nextCentury","placeholder","rangePlaceholder","_extends","yearPlaceholder","quarterPlaceholder","monthPlaceholder","weekPlaceholder","rangeYearPlaceholder","rangeMonthPlaceholder","rangeWeekPlaceholder","CalendarLocale","timePickerLocale","TimePickerLocale","typeTemplate","localeValues","Pagination","DatePicker","TimePicker","Calendar","global","Table","filterTitle","filterConfirm","filterReset","filterEmptyText","selectAll","selectInvert","selectNone","selectionAll","sortTitle","triggerDesc","triggerAsc","cancelSort","justOkText","Popconfirm","Transfer","searchPlaceholder","itemUnit","itemsUnit","selectCurrent","removeCurrent","removeAll","Upload","uploading","removeFile","uploadError","previewFile","downloadFile","Empty","description","Icon","Text","edit","copy","copied","PageHeader","back","Form","optional","defaultValidateMessages","required","whitespace","date","format","invalid","types","string","array","number","integer","email","min","mismatch","preview","monthBeforeYear","emptyText","titles","EmptySvg","isBig","createNewId","EasyopsEmpty","illustration","getIllustration","useBigEmptyImage","imageStyle","height","renderEasyopsEmpty","FeatureFlagsContext","createContext","FeatureFlagsProvider","Provider","useFeatureFlags","useContext","flagNames","flag","DisplayByFeatureFlags","every","fallback","BrickWrapper","enUS","zhCN","ConfigProvider","wrapperConfig","developHelper","getBrickPackages","getTemplatePackages","getStoryboards","getFakeKernel","checkoutTplContext","noop","updateStoryboard","updateTemplatePreviewSettings","updateSnippetPreviewSettings","defaultConverter","toAttribute","fromAttribute","notEqual","old","defaultPropertyDeclaration","converter","reflect","hasChanged","attributeNameForProperty","char","UpdatingElement","observedAttributes","_ensureObservedAttributes","_observedAttributes","_ensureDefinedProperties","__dev_only_definedProperties","_dev_only_definedMethods","_ensureDefinedMethods","__dev_only_definedMethods","_dev_only_definedEvents","_ensureDefinedEvents","__dev_only_definedEvents","attributeChangedCallback","_enqueueRender","isConnected","_hasRequestedRender","_render","superClass","noAccessor","oldValue","attrValue","removeAttribute","eventInit","ModalElement","_decorate","isVisible","useProviderArgsDefaults","customOptions","oldData","newData","loading","suspense","dependencies","useProviderArgs","providerOrParamsOrGlobalOptions","gloabalOptionsOrDeps","localOptions","requestInit","customOptionKeys","restOptions","fetchProviderArgs","fetch","setLoading","suspenseStatus","suspender","mounted","forceUpdate","useReducer","doFetch","newRes","makeFetch","providerOrBody","providerStr","providerArgs","isString"],"mappings":"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"}