@next-bricks/form-platform 0.4.8 → 0.4.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bricks.json +1 -1
- package/dist/chunks/1122.d62b153b.js +2 -0
- package/dist/chunks/1122.d62b153b.js.map +1 -0
- package/dist/chunks/{114.9ef80cb7.js → 114.fd9257cb.js} +2 -2
- package/dist/chunks/{114.9ef80cb7.js.map → 114.fd9257cb.js.map} +1 -1
- package/dist/chunks/{1940.3e2eac0c.js → 1940.4076a006.js} +2 -2
- package/dist/chunks/{1940.3e2eac0c.js.map → 1940.4076a006.js.map} +1 -1
- package/dist/chunks/{2277.00ab42e3.js → 2277.39563971.js} +2 -2
- package/dist/chunks/{2277.00ab42e3.js.map → 2277.39563971.js.map} +1 -1
- package/dist/chunks/{2512.e4b5c02a.js → 2512.a8a812af.js} +3 -3
- package/dist/chunks/{2512.e4b5c02a.js.map → 2512.a8a812af.js.map} +1 -1
- package/dist/chunks/{3171.909d2fc8.js → 3171.18b409aa.js} +2 -2
- package/dist/chunks/{3171.909d2fc8.js.map → 3171.18b409aa.js.map} +1 -1
- package/dist/chunks/{3214.35d8e65a.js → 3214.01239b24.js} +3 -3
- package/dist/chunks/3214.01239b24.js.map +1 -0
- package/dist/chunks/{3933.9f48c9a0.js → 3933.b3492283.js} +2 -2
- package/dist/chunks/{6314.58158d69.js.map → 3933.b3492283.js.map} +1 -1
- package/dist/chunks/{4658.d555d82b.js → 4658.23a2bf5a.js} +2 -2
- package/dist/chunks/{4658.d555d82b.js.map → 4658.23a2bf5a.js.map} +1 -1
- package/dist/chunks/5399.53a57f62.js +2 -0
- package/dist/chunks/5399.53a57f62.js.map +1 -0
- package/dist/chunks/5478.b7fe3ed2.js +3 -0
- package/dist/chunks/5478.b7fe3ed2.js.map +1 -0
- package/dist/chunks/{5552.059adcf1.js → 5552.7e484392.js} +2 -2
- package/dist/chunks/{5552.059adcf1.js.map → 5552.7e484392.js.map} +1 -1
- package/dist/chunks/{6314.58158d69.js → 6314.241f84c7.js} +2 -2
- package/dist/chunks/{3933.9f48c9a0.js.map → 6314.241f84c7.js.map} +1 -1
- package/dist/chunks/{7733.c2b418fa.js → 7733.48ca4172.js} +2 -2
- package/dist/chunks/{7733.c2b418fa.js.map → 7733.48ca4172.js.map} +1 -1
- package/dist/chunks/{9559.4ffe35c5.js → 9559.3544bdaf.js} +2 -2
- package/dist/chunks/{9559.4ffe35c5.js.map → 9559.3544bdaf.js.map} +1 -1
- package/dist/chunks/{eo-user-or-user-group-select.c04c73de.js → eo-user-or-user-group-select.0eb6f706.js} +3 -3
- package/dist/chunks/{eo-user-or-user-group-select.c04c73de.js.map → eo-user-or-user-group-select.0eb6f706.js.map} +1 -1
- package/dist/chunks/main.e8d3fb98.js +2 -0
- package/dist/chunks/main.e8d3fb98.js.map +1 -0
- package/dist/index.56402639.js +2 -0
- package/dist/index.56402639.js.map +1 -0
- package/package.json +4 -4
- package/dist/chunks/1122.e54e2a7c.js +0 -2
- package/dist/chunks/1122.e54e2a7c.js.map +0 -1
- package/dist/chunks/3214.35d8e65a.js.map +0 -1
- package/dist/chunks/4.62331183.js +0 -3
- package/dist/chunks/4.62331183.js.map +0 -1
- package/dist/chunks/5399.0e7607fa.js +0 -2
- package/dist/chunks/5399.0e7607fa.js.map +0 -1
- package/dist/chunks/main.e201f94f.js +0 -2
- package/dist/chunks/main.e201f94f.js.map +0 -1
- package/dist/index.e8167217.js +0 -2
- package/dist/index.e8167217.js.map +0 -1
- /package/dist/chunks/{2512.e4b5c02a.js.LICENSE.txt → 2512.a8a812af.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{3214.35d8e65a.js.LICENSE.txt → 3214.01239b24.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{4.62331183.js.LICENSE.txt → 5478.b7fe3ed2.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-user-or-user-group-select.c04c73de.js.LICENSE.txt → eo-user-or-user-group-select.0eb6f706.js.LICENSE.txt} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/3214.35d8e65a.js","mappings":"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","sources":["webpack:///../../node_modules/@next-api-sdk/micro-app-sdk/dist/esm/api/micro_app/permission/validatePermissions.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/auth.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/checkPermissions.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/websocket/MessageService.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/websocket/MessageDispatcher.js","webpack:///../../node_modules/@next-api-sdk/micro-app-standalone-sdk/dist/esm/api/micro_app_standalone/runtime/searchMicroAppStandalone.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/checkInstalledApps.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/flowApi/FlowApiProvider.js","webpack:///../../node_modules/@next-api-sdk/api-gateway-sdk/dist/esm/api/api_gateway/contract/searchSingleContract.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/flowApi/CollectContracts.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/flowApi/FlowApi.js","webpack:///../../node_modules/@next-api-sdk/micro-app-sdk/dist/esm/api/micro_app/installed_micro_app/getMenusInfo.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/menu/constants.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/menu/mergeMenu.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/menu/loadDynamicMenuItems.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/menu/reorderMenuItems.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/menu/computeMenuData.js","webpack:///../../node_modules/@next-api-sdk/cmdb-sdk/dist/esm/api/cmdb/instance/getDetail.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/menu/fetchMenuTitle.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/menu/fetchMenuById.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/menu/getMenusOfStandaloneApp.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/analytics/transport.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/analytics/analytics.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/analytics/http.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/analytics/pageView.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/index.js","webpack:///../../node_modules/@next-core/easyops-runtime/dist/esm/auth-v2.js"],"sourcesContent":["import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 校验系统权限\n * @endpoint POST /api/micro_app/v1/permission/validate\n */\nexport var PermissionApi_validatePermissions = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (/**! @contract easyops.api.micro_app.permission.ValidatePermissions@1.0.0 */(yield http.post(\"api/gateway/micro_app.permission.ValidatePermissions/api/micro_app/v1/permission/validate\", data, options)).data\n );\n });\n return function PermissionApi_validatePermissions(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=validatePermissions.js.map","import { resetPermissionPreChecks } from \"./checkPermissions.js\";\nconst auth = {};\n\n/** @internal */\n\n/** @internal */\nexport function authenticate(newAuth) {\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 csrfToken: newAuth.csrfToken,\n license: newAuth.license,\n accessToken: newAuth.accessToken,\n userShowValue: newAuth.userShowValue\n });\n}\n\n/**\n * 获取当前登录认证信息。\n *\n * @returns 当前登录认证信息。\n */\nexport function getAuth() {\n return {\n ...auth\n };\n}\n\n/** @internal */\nexport function logout() {\n for (const key of Object.keys(auth)) {\n auth[key] = undefined;\n }\n resetPermissionPreChecks();\n}\n\n/**\n * 查看当前是否已登录。\n *\n * @returns 当前是否已登录。\n */\nexport function isLoggedIn() {\n return auth.username !== undefined;\n}\n//# sourceMappingURL=auth.js.map","import { difference } from \"lodash\";\nimport { scanPermissionActionsInAny, scanPermissionActionsInStoryboard } from \"@next-core/utils/storyboard\";\nimport { PermissionApi_validatePermissions } from \"@next-api-sdk/micro-app-sdk\";\nimport { getAuth, isLoggedIn } from \"./auth.js\";\nconst checkedPermissions = [];\nconst permissionMap = new Map();\nexport function preCheckPermissions(storyboard) {\n if (isLoggedIn() && !getAuth().isAdmin) {\n const usedActions = scanPermissionActionsInStoryboard(storyboard);\n return validatePermissions(usedActions);\n }\n}\nexport async function preCheckPermissionsForBrickOrRoute(container, asyncComputeRealValue) {\n if (isLoggedIn() && !getAuth().isAdmin && Array.isArray(container.permissionsPreCheck)) {\n const actions = await asyncComputeRealValue(container.permissionsPreCheck);\n return validatePermissions(actions);\n }\n}\nexport function preCheckPermissionsForAny(data) {\n if (isLoggedIn() && !getAuth().isAdmin) {\n const usedActions = scanPermissionActionsInAny(data);\n return validatePermissions(usedActions);\n }\n}\nexport async function validatePermissions(usedActions) {\n // Do not request known actions.\n const actions = difference(usedActions, [...checkedPermissions]);\n if (actions.length === 0) {\n return;\n }\n checkedPermissions.push(...actions);\n try {\n const result = await PermissionApi_validatePermissions({\n actions\n }, {\n noAbortOnRouteChange: true\n });\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() {\n if (!isLoggedIn()) {\n return false;\n }\n if (getAuth().isAdmin) {\n return true;\n }\n for (var _len = arguments.length, actions = new Array(_len), _key = 0; _key < _len; _key++) {\n actions[_key] = arguments[_key];\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(`Un-checked permission action: \"${action}\", please make sure the permission to check is defined in permissionsPreCheck.`);\n return false;\n }\n }\n return true;\n}\n\n/**\n * Reset permission pre-checks after logged-out.\n */\nexport function resetPermissionPreChecks() {\n checkedPermissions.length = 0;\n permissionMap.clear();\n}\n//# sourceMappingURL=checkPermissions.js.map","import _classPrivateMethodInitSpec from \"@babel/runtime/helpers/classPrivateMethodInitSpec\";\nimport _classPrivateFieldInitSpec from \"@babel/runtime/helpers/classPrivateFieldInitSpec\";\nimport _assertClassBrand from \"@babel/runtime/helpers/assertClassBrand\";\nimport _classPrivateFieldGet from \"@babel/runtime/helpers/classPrivateFieldGet2\";\nimport _classPrivateFieldSet from \"@babel/runtime/helpers/classPrivateFieldSet2\";\nconst RETRY_TIMEOUT_UNIT = 1000;\nconst RETRY_LIMIT = 6;\nvar _url = /*#__PURE__*/new WeakMap();\nvar _ws = /*#__PURE__*/new WeakMap();\nvar _queuedMessages = /*#__PURE__*/new WeakMap();\nvar _messageListeners = /*#__PURE__*/new WeakMap();\nvar _closeListeners = /*#__PURE__*/new WeakMap();\nvar _retryCount = /*#__PURE__*/new WeakMap();\nvar _closed = /*#__PURE__*/new WeakMap();\nvar _MessageService_brand = /*#__PURE__*/new WeakSet();\nexport class MessageService {\n constructor(url) {\n _classPrivateMethodInitSpec(this, _MessageService_brand);\n _classPrivateFieldInitSpec(this, _url, void 0);\n _classPrivateFieldInitSpec(this, _ws, void 0);\n _classPrivateFieldInitSpec(this, _queuedMessages, []);\n _classPrivateFieldInitSpec(this, _messageListeners, new Set());\n _classPrivateFieldInitSpec(this, _closeListeners, new Set());\n _classPrivateFieldInitSpec(this, _retryCount, 0);\n _classPrivateFieldInitSpec(this, _closed, false);\n _classPrivateFieldSet(_url, this, url);\n }\n send(data) {\n // Connect when data is sent for the first time\n if (!_classPrivateFieldGet(_ws, this)) {\n _classPrivateFieldSet(_ws, this, _assertClassBrand(_MessageService_brand, this, _connect).call(this));\n }\n const stringifiedData = JSON.stringify(data);\n if (_classPrivateFieldGet(_ws, this).readyState === WebSocket.OPEN) {\n _classPrivateFieldGet(_ws, this).send(stringifiedData);\n } else {\n _classPrivateFieldGet(_queuedMessages, this).push(stringifiedData);\n }\n }\n onMessage(listener) {\n _classPrivateFieldGet(_messageListeners, this).add(listener);\n }\n onClose(listener) {\n _classPrivateFieldGet(_closeListeners, this).add(listener);\n }\n reset() {\n _classPrivateFieldGet(_queuedMessages, this).length = 0;\n _classPrivateFieldGet(_messageListeners, this).clear();\n _classPrivateFieldGet(_closeListeners, this).clear();\n }\n close() {\n var _classPrivateFieldGet2;\n _classPrivateFieldSet(_closed, this, true);\n if (((_classPrivateFieldGet2 = _classPrivateFieldGet(_ws, this)) === null || _classPrivateFieldGet2 === void 0 ? void 0 : _classPrivateFieldGet2.readyState) === WebSocket.OPEN) {\n _classPrivateFieldGet(_ws, this).close();\n }\n }\n}\nfunction _connect() {\n // eslint-disable-next-line no-console\n console.log(\"WebSocket connecting ...\");\n const ws = new WebSocket(_classPrivateFieldGet(_url, this));\n ws.addEventListener(\"open\", e => {\n // eslint-disable-next-line no-console\n console.log(\"WebSocket open:\", e);\n _classPrivateFieldSet(_retryCount, this, 0);\n for (const msg of _classPrivateFieldGet(_queuedMessages, this)) {\n ws.send(msg);\n }\n _classPrivateFieldGet(_queuedMessages, this).length = 0;\n });\n ws.addEventListener(\"close\", e => {\n if (_classPrivateFieldGet(_closed, this)) {\n return;\n }\n // eslint-disable-next-line no-console\n console.log(\"WebSocket close:\", e);\n for (const listener of _classPrivateFieldGet(_closeListeners, this)) {\n listener();\n }\n // Error code 1000 means that the connection was closed normally.\n if (e.code !== 1000) {\n _assertClassBrand(_MessageService_brand, this, _reconnect).call(this);\n }\n });\n ws.addEventListener(\"error\", e => {\n // No need to reconnect in error event listener,\n // there will always be a close event along with the error event.\n // eslint-disable-next-line no-console\n console.error(\"WebSocket error:\", e);\n });\n ws.addEventListener(\"message\", e => {\n const response = JSON.parse(e.data);\n for (const listener of _classPrivateFieldGet(_messageListeners, this)) {\n listener(response);\n }\n });\n return ws;\n}\nfunction _reconnect() {\n // istanbul ignore next: currently can't mock this\n if (_classPrivateFieldGet(_retryCount, this) >= RETRY_LIMIT) {\n // eslint-disable-next-line no-console\n console.error(\"WebSocket connect retry limit exceeded\");\n return;\n }\n // Double the timeout for each retry\n const delay = Math.pow(2, _classPrivateFieldGet(_retryCount, this)) * RETRY_TIMEOUT_UNIT;\n // eslint-disable-next-line no-console\n console.log(\"WebSocket will reconnect after %d seconds\", delay / 1000);\n setTimeout(() => {\n var _this$retryCount, _this$retryCount2;\n _classPrivateFieldSet(_retryCount, this, (_this$retryCount = _classPrivateFieldGet(_retryCount, this), _this$retryCount2 = _this$retryCount++, _this$retryCount)), _this$retryCount2;\n _classPrivateFieldSet(_ws, this, _assertClassBrand(_MessageService_brand, this, _connect).call(this));\n }, delay);\n}\n//# sourceMappingURL=MessageService.js.map","import _classPrivateMethodInitSpec from \"@babel/runtime/helpers/classPrivateMethodInitSpec\";\nimport _classPrivateFieldInitSpec from \"@babel/runtime/helpers/classPrivateFieldInitSpec\";\nimport _classPrivateGetter from \"@babel/runtime/helpers/classPrivateGetter\";\nimport _assertClassBrand from \"@babel/runtime/helpers/assertClassBrand\";\nimport _classPrivateFieldSet from \"@babel/runtime/helpers/classPrivateFieldSet2\";\nimport _classPrivateFieldGet from \"@babel/runtime/helpers/classPrivateFieldGet2\";\nimport { getBasePath } from \"@next-core/runtime\";\nimport { escapeRegExp } from \"lodash\";\nimport { MessageService } from \"./MessageService.js\";\nvar _ms = /*#__PURE__*/new WeakMap();\nvar _memoizedChannels = /*#__PURE__*/new WeakMap();\nvar _channelPayloads = /*#__PURE__*/new WeakMap();\nvar _MessageDispatcher_brand = /*#__PURE__*/new WeakSet();\nexport class MessageDispatcher {\n constructor() {\n _classPrivateMethodInitSpec(this, _MessageDispatcher_brand);\n _classPrivateFieldInitSpec(this, _ms, void 0);\n _classPrivateFieldInitSpec(this, _memoizedChannels, {\n sub: new Map(),\n unsub: new Map()\n });\n _classPrivateFieldInitSpec(this, _channelPayloads, new Map());\n }\n subscribe(channel, payload) {\n const stringifiedPayload = JSON.stringify(payload);\n return _assertClassBrand(_MessageDispatcher_brand, this, _subOrUnsub).call(this, \"sub\", channel, payload, stringifiedPayload);\n }\n unsubscribe(channel) {\n const stringifiedPayload = _classPrivateFieldGet(_channelPayloads, this).get(channel);\n if (!stringifiedPayload) {\n const msg = `The message channel to unsubscribe \"${channel}\" is not found`;\n // eslint-disable-next-line no-console\n console.error(msg);\n return Promise.reject(new Error(msg));\n }\n const payload = JSON.parse(stringifiedPayload);\n const result = _assertClassBrand(_MessageDispatcher_brand, this, _subOrUnsub).call(this, \"unsub\", channel, payload, stringifiedPayload);\n _classPrivateFieldGet(_memoizedChannels, this).sub.delete(stringifiedPayload);\n result.then(() => {\n _classPrivateFieldGet(_channelPayloads, this).delete(channel);\n });\n return result;\n }\n onMessage(channel, listener) {\n let stringifiedPayload = _classPrivateFieldGet(_channelPayloads, this).get(channel);\n let warned = false;\n _classPrivateGetter(_MessageDispatcher_brand, this, _get_ms).onMessage(response => {\n if (!stringifiedPayload) {\n stringifiedPayload = _classPrivateFieldGet(_channelPayloads, this).get(channel);\n }\n if (!stringifiedPayload) {\n if (!warned) {\n // eslint-disable-next-line no-console\n console.error(`Message channel: \"${channel}\" not found`);\n warned = true;\n }\n return;\n }\n if (response.event === \"MESSAGE.PUSH\" && matchMessageChannel(stringifiedPayload, response.payload)) {\n listener(response.payload.message);\n }\n });\n }\n onClose(listener) {\n _classPrivateGetter(_MessageDispatcher_brand, this, _get_ms).onClose(listener);\n }\n reset() {\n var _classPrivateFieldGet2;\n _classPrivateFieldGet(_memoizedChannels, this).sub.clear();\n _classPrivateFieldGet(_memoizedChannels, this).unsub.clear();\n _classPrivateFieldGet(_channelPayloads, this).clear();\n (_classPrivateFieldGet2 = _classPrivateFieldGet(_ms, this)) === null || _classPrivateFieldGet2 === void 0 || _classPrivateFieldGet2.reset();\n }\n}\nfunction _get_ms(_this) {\n if (!_classPrivateFieldGet(_ms, _this)) {\n const protocol = location.protocol === \"https:\" ? \"wss:\" : \"ws:\";\n const url = `${protocol}//${window.location.host}${getBasePath()}api/websocket_service/v1/ws`;\n _classPrivateFieldSet(_ms, _this, new MessageService(url));\n }\n return _classPrivateFieldGet(_ms, _this);\n}\nfunction _subOrUnsub(type, channel, payload, stringifiedPayload) {\n const hit = _classPrivateFieldGet(_memoizedChannels, this)[type].get(stringifiedPayload);\n if (hit) {\n return hit;\n }\n const request = {\n event: type === \"sub\" ? \"TOPIC.SUB\" : \"TOPIC.UNSUB\",\n payload\n };\n const promise = new Promise((resolve, reject) => {\n const identity = getIdentity(payload);\n _classPrivateGetter(_MessageDispatcher_brand, this, _get_ms).onMessage(response => {\n const isSuccess = response.event === (type === \"sub\" ? \"TOPIC.SUB_SUCCESS\" : \"TOPIC.UNSUB_SUCCESS\");\n const isFailed = response.event === (type === \"sub\" ? \"TOPIC.SUB_FAILED\" : \"TOPIC.UNSUB_FAILED\");\n if ((isSuccess || isFailed) &&\n // Put this after event type checks, to prevent unnecessary\n // JSON stringify.\n identity === getIdentity(response.payload)) {\n (isSuccess ? resolve : reject)(response);\n }\n });\n _classPrivateGetter(_MessageDispatcher_brand, this, _get_ms).send(request);\n });\n if (type === \"sub\") {\n _classPrivateFieldGet(_channelPayloads, this).set(channel, stringifiedPayload);\n }\n _classPrivateFieldGet(_memoizedChannels, this)[type].set(stringifiedPayload, promise);\n return promise;\n}\nfunction getIdentity(payload) {\n const {\n system,\n topic\n } = payload;\n return JSON.stringify({\n system,\n topic\n });\n}\nfunction matchMessageChannel(stringifiedPayload, responsePayload) {\n const payload = JSON.parse(stringifiedPayload);\n return payload.system === responsePayload.system && (\n // Exact match\n payload.topic === responsePayload.topic ||\n // Wildcards match\n // For `ab.cd.*`:\n // - Matches `ab.cd.r` or `ab.cd.x.yz`\n // - DOES NOT match `ab.cd.x/yz` or `ab.x.cd` or `x.ab.cd.yz`\n typeof payload.topic === \"string\" && payload.topic.includes(\"*\") && new RegExp(`^${payload.topic.replace(/([^*]*)\\*([^*]*)/g, (_m, p1, p2) => `${escapeRegExp(p1)}[^/]*${escapeRegExp(p2)}`)}$`).test(responsePayload.topic));\n}\n//# sourceMappingURL=MessageDispatcher.js.map","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 查询独立部署小产品\n * @endpoint POST /api/v1/micro_app_standalone/search\n */\nexport var RuntimeApi_searchMicroAppStandalone = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (/**! @contract easyops.api.micro_app_standalone.runtime.SearchMicroAppStandalone@1.0.1 */(yield http.post(\"api/gateway/micro_app_standalone.runtime.SearchMicroAppStandalone/api/v1/micro_app_standalone/search\", data, options)).data\n );\n });\n return function RuntimeApi_searchMicroAppStandalone(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=searchMicroAppStandalone.js.map","import { traverseStoryboardExpressions, collectInstalledAppsHasUsage } from \"@next-core/utils/storyboard\";\nimport { RuntimeApi_searchMicroAppStandalone } from \"@next-api-sdk/micro-app-standalone-sdk\";\nconst checkingApps = new Map();\nconst checkedApps = new Map();\nexport function preCheckInstalledApps(storyboard, hasAppInBootstrap) {\n if (window.STANDALONE_MICRO_APPS && !window.NO_AUTH_GUARD) {\n const appIds = scanInstalledAppsUsage(storyboard);\n const searchIds = [];\n for (const appId of appIds) {\n // Do not check these apps already checking or in bootstrap.\n if (!checkingApps.has(appId) && !hasAppInBootstrap(appId)) {\n searchIds.push(appId);\n }\n }\n if (searchIds.length === 0) {\n return;\n }\n const promise = RuntimeApi_searchMicroAppStandalone({\n query: {\n appId: {\n $in: searchIds\n }\n },\n fields: [\"appId\", \"currentVersion\", \"installStatus\"]\n }).catch(error => {\n // Allow search micro app 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(\"Get off site standalone micro-apps failed\", error);\n });\n for (const appId of searchIds) {\n checkingApps.set(appId, promise.then(result => {\n var _result$list;\n const app = result === null || result === void 0 || (_result$list = result.list) === null || _result$list === void 0 ? void 0 : _result$list.find(item => item.appId === appId);\n const checkedApp = app ? {\n ...app,\n id: appId\n } : undefined;\n checkedApps.set(appId, checkedApp);\n return checkedApp;\n }));\n }\n }\n}\nexport async function waitForCheckingApps(appIds) {\n await Promise.all(appIds.map(appId => checkingApps.get(appId)));\n}\nexport function getCheckedApp(appId) {\n if (window.STANDALONE_MICRO_APPS) {\n return checkedApps.get(appId);\n }\n}\nfunction scanInstalledAppsUsage(storyboard) {\n const usage = {\n usedArgs: new Set()\n };\n // `INSTALLED_APPS.has(...)` is not available in storyboard functions\n const {\n customTemplates,\n menus\n } = storyboard.meta ?? {};\n traverseStoryboardExpressions([storyboard.routes, customTemplates, menus], (node, parent) => {\n collectInstalledAppsHasUsage(usage, node, parent);\n }, \"INSTALLED_APPS\");\n return [...usage.usedArgs];\n}\n//# sourceMappingURL=checkInstalledApps.js.map","import { createProviderClass } from \"@next-core/utils/general\";\nimport { http } from \"@next-core/http\";\nimport { isEmpty, isObject } from \"lodash\";\nimport { createSSEStream } from \"@next-core/utils/general\";\nexport const FLOW_API_PROVIDER = \"core.provider-flow-api\";\nfunction hasFields(ext_fields, type) {\n return ext_fields.some(item => item.source === type);\n}\nexport function processExtFields(ext_fields) {\n const hasQueryParams = hasFields(ext_fields, \"query\");\n const hasBodyParams = hasFields(ext_fields, \"body\");\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n if (hasQueryParams) {\n if (hasBodyParams) {\n const [data, params, options] = args;\n return {\n data: data,\n options: {\n params: params,\n ...options\n }\n };\n }\n const [params, options] = args;\n return {\n data: {},\n options: {\n params: params,\n ...options\n }\n };\n }\n\n // only hasBodyParams or default\n const [data, options] = args;\n return {\n data,\n options: options\n };\n}\nexport function hasFileType(request) {\n if (!request || request.type !== \"object\") {\n return false;\n }\n const processFields = fields => {\n return !isEmpty(fields) && fields.some(field => [\"file\", \"file[]\"].includes(field.type) || processFields(field.fields));\n };\n return processFields(request.fields);\n}\nexport function transformFormData(data) {\n if (data instanceof FormData) {\n return data;\n }\n const formData = new FormData();\n for (const [key, value] of Object.entries(data)) {\n if (Array.isArray(value)) {\n value.forEach(v => {\n formData.append(key, v);\n });\n } else if (isObject(value) && !(value instanceof Blob) && !(value instanceof Date)) {\n Object.entries(value).forEach(_ref => {\n let [k, v] = _ref;\n formData.append(`${key}[${k}]`, v);\n });\n } else {\n formData.append(key, value);\n }\n }\n return formData;\n}\nexport async function callFlowApi(_ref2) {\n let {\n url,\n originalUri,\n method = \"GET\",\n responseWrapper = true,\n ext_fields = [],\n request,\n isFileType,\n stream\n } = _ref2;\n const isSimpleRequest = [\"get\", \"delete\", \"head\"].includes(method.toLowerCase());\n const defaultOptions = isFileType ? {\n responseType: \"blob\"\n } : {};\n let response;\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n if (isSimpleRequest) {\n var _originalUri$match, _request$fields;\n const noParams = originalUri && (request === null || request === void 0 ? void 0 : request.type) === \"object\" ? (((_originalUri$match = originalUri.match(/:([^/]+)/g)) === null || _originalUri$match === void 0 ? void 0 : _originalUri$match.length) ?? 0) === (((_request$fields = request.fields) === null || _request$fields === void 0 ? void 0 : _request$fields.length) ?? 0) : false;\n let params;\n let options;\n if (noParams) {\n [options] = args;\n } else {\n [params, options] = args;\n }\n if (stream) {\n var _options;\n const stream = await createSSEStream(http.getUrlWithParams(url, params), {\n ...defaultOptions,\n ...options,\n method,\n headers: Object.fromEntries([...new Headers(((_options = options) === null || _options === void 0 ? void 0 : _options.headers) ?? {}).entries()])\n });\n return stream;\n }\n response = await http.simpleRequest(method, url, {\n params,\n ...defaultOptions,\n ...options\n });\n } else {\n const isUploadType = hasFileType(request);\n const result = processExtFields(ext_fields, ...args);\n const data = isUploadType ? transformFormData(result.data) : result.data;\n if (stream) {\n var _result$options;\n const {\n body,\n headers\n } = http.getBodyAndHeaders(data, (_result$options = result.options) === null || _result$options === void 0 ? void 0 : _result$options.headers);\n const stream = await createSSEStream(url, {\n ...defaultOptions,\n ...result.options,\n method,\n headers: Object.fromEntries([...new Headers(headers ?? {}).entries()]),\n body\n });\n return stream;\n }\n response = await http.requestWithBody(method, url, data, {\n ...defaultOptions,\n ...result.options\n });\n }\n return (isFileType ? false : responseWrapper) ? response.data : response;\n}\nexport function registerFlowApiProvider() {\n customElements.define(FLOW_API_PROVIDER, createProviderClass(callFlowApi));\n}\n//# sourceMappingURL=FlowApiProvider.js.map","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 通过defaultOrg查找单个契约信息\n * @endpoint POST /api/contract/single_search\n */\nexport var ContractApi_searchSingleContract = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (/**! @contract easyops.api.api_gateway.contract.SearchSingleContract@1.0.0 */(yield http.post(\"api/contract/single_search\", data, options)).data\n );\n });\n return function ContractApi_searchSingleContract(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=searchSingleContract.js.map","const contractsMap = new Map();\nconst widgetContractMap = new Map();\nconst debugContractMap = new Map();\nconst addContract = (contracts, map) => {\n contracts === null || contracts === void 0 || contracts.forEach(contract => {\n map.set(`${contract.namespaceId}.${contract.name}`, contract);\n });\n};\nexport function collectContract(contracts) {\n addContract(contracts, contractsMap);\n}\nexport function collectWidgetContract(contracts) {\n addContract(contracts, widgetContractMap);\n}\nexport function clearCollectWidgetContract() {\n widgetContractMap.clear();\n}\nexport function collectDebugContract(contracts) {\n addContract(contracts, debugContractMap);\n}\nexport function clearDebugContract() {\n debugContractMap.clear();\n}\nexport function getContract(name) {\n return contractsMap.get(name) || widgetContractMap.get(name) || debugContractMap.get(name);\n}\n//# sourceMappingURL=CollectContracts.js.map","import yaml from \"js-yaml\";\nimport { ContractApi_searchSingleContract } from \"@next-api-sdk/api-gateway-sdk\";\nimport { getContract } from \"./CollectContracts.js\";\nconst remoteContractCache = new Map();\n\n// Legacy Custom API: `${namespace}@${name}`\n// Flow API: `${namespace}@${name}:${version}`\nexport function isFlowApiProvider(provider) {\n return provider.includes(\"@\");\n}\nexport async function getArgsOfFlowApi(provider, originalArgs, method, stream) {\n if (!provider.includes(\":\")) {\n throw new Error(`You're using legacy Custom API \"${provider}\" which is dropped in v3, please use Flow API instead`);\n }\n const apiDefinition = await fetchFlowApiDefinition(provider);\n if (!apiDefinition) {\n throw new FlowApiNotFoundError(`Flow API not found: \"${provider}\"`);\n }\n const apiProfile = getApiProfileFromApiDefinition(provider, apiDefinition);\n return getApiArgsFromApiProfile(apiProfile, originalArgs, method, stream);\n}\nfunction getApiArgsFromApiProfile(_ref, originalArgs, method, stream) {\n let {\n uri,\n method: apiMethod,\n ext_fields,\n name,\n namespace,\n serviceName,\n responseWrapper,\n version,\n isFileType,\n request\n } = _ref;\n // `saveAs` requires the first argument to be the filename.\n const isDownload = method === \"saveAs\";\n let fileName;\n if (isDownload) {\n fileName = originalArgs.shift();\n }\n const {\n url,\n args\n } = getTransformedUriAndRestArgs(uri, originalArgs, name, namespace, serviceName, version);\n return [...(isDownload ? [fileName] : []), {\n url,\n originalUri: uri,\n method: apiMethod,\n ext_fields,\n responseWrapper,\n request,\n isFileType,\n stream\n }, ...args];\n}\nfunction getTransformedUriAndRestArgs(uri, originalArgs, name, namespace, serviceName, version) {\n const prefix = version ? serviceName === \"logic.api.gateway\" || serviceName !== null && serviceName !== void 0 && serviceName.startsWith(\"logic.api.gateway.\") ? \"\" : serviceName ? `api/gateway/${serviceName}` : `api/gateway/${namespace}.${name}@${version}` : `api/gateway/api_service.${namespace}.${name}`;\n const restArgs = originalArgs.slice();\n const transformedUri = uri.replace(/:([^/]+)/g, () => restArgs.shift());\n return {\n url: prefix ? prefix + transformedUri : transformedUri.replace(/^\\//, \"\"),\n args: restArgs\n };\n}\nfunction getApiProfileFromApiDefinition(provider, api) {\n var _contract$response;\n const contract = typeof api.contract === \"string\" ? yaml.safeLoad(api.contract, {\n schema: yaml.JSON_SCHEMA,\n json: true\n }) : api.contract;\n const {\n uri,\n method = \"GET\",\n ext_fields\n } = (contract === null || contract === void 0 ? void 0 : contract.endpoint) ?? {};\n const responseWrapper = contract !== null && contract !== void 0 && contract.response ? contract.response.wrapper !== false : false;\n if (!uri) {\n throw new Error(`Missing endpoint.uri in contract of provider \"${provider}\"`);\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 === null || contract === void 0 || (_contract$response = contract.response) === null || _contract$response === void 0 ? void 0 : _contract$response.type) === \"file\",\n responseWrapper,\n request: contract === null || contract === void 0 ? void 0 : contract.request\n };\n}\nasync function fetchFlowApiDefinition(provider) {\n const [namespaceName, nameWithVersion] = provider.split(\"@\");\n const [name, version] = nameWithVersion.split(\":\");\n\n // Do not cache the result of `geContract`, which will lead to no contract\n // will be found when render twice immediately.\n const contract = getContract(`${namespaceName}.${name}`);\n if (contract) {\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 request: contract.request\n }\n };\n }\n let promise = remoteContractCache.get(provider);\n if (!promise) {\n promise = fetchFlowApiDefinitionFromRemote(namespaceName, name, version);\n remoteContractCache.set(provider, promise);\n }\n return promise;\n}\nasync function fetchFlowApiDefinitionFromRemote(namespace, name, version) {\n var _contractData$namespa;\n const {\n contractData\n } = await ContractApi_searchSingleContract({\n contractName: `${namespace}.${name}`,\n version\n });\n\n // return undefined if don't found contract\n return contractData ? {\n name: contractData.name,\n namespace: (_contractData$namespa = contractData.namespace) === null || _contractData$namespa === void 0 || (_contractData$namespa = _contractData$namespa[0]) === null || _contractData$namespa === void 0 ? void 0 : _contractData$namespa.name,\n serviceName: contractData.serviceName,\n version: contractData.version,\n contract: {\n endpoint: contractData.endpoint,\n response: contractData.response,\n request: contractData.request\n }\n } : null;\n}\nclass FlowApiNotFoundError extends Error {\n constructor(message) {\n // Pass remaining arguments (including vendor specific ones) to parent constructor\n super(message);\n this.name = \"FlowApiNotFoundError\";\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, FlowApiNotFoundError);\n }\n }\n}\n//# sourceMappingURL=FlowApi.js.map","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取菜单信息\n * @endpoint GET /api/v1/micro-app/menus/:menuId\n */\nexport var InstalledMicroAppApi_getMenusInfo = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (menuId, params, options) {\n return (/**! @contract easyops.api.micro_app.installed_micro_app.GetMenusInfo@1.0.0 */(yield http.get(\"api/gateway/micro_app.installed_micro_app.GetMenusInfo/api/v1/micro-app/menus/\".concat(menuId), _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function InstalledMicroAppApi_getMenusInfo(_x, _x2, _x3) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=getMenusInfo.js.map","export const symbolAppId = Symbol(\"appId\");\nexport const symbolMenuI18nNamespace = Symbol(\"menuI18nNamespace\");\nexport const symbolOverrideApp = Symbol(\"overrideApp\");\n//# sourceMappingURL=constants.js.map","import { i18n } from \"@next-core/i18n\";\nimport { symbolAppId, symbolMenuI18nNamespace, symbolOverrideApp } from \"./constants.js\";\nimport { loadDynamicMenuItems } from \"./loadDynamicMenuItems.js\";\nexport async function mergeMenu(menuList, runtimeContext, helpers) {\n const mainMenu = menuList.find(menu => menu.type !== \"inject\");\n if (!mainMenu) {\n return undefined;\n }\n const validMenuList = [];\n const injectWithMenus = new Map();\n const menuWithI18n = new WeakMap();\n for (const menu of menuList) {\n if (menu.i18n) {\n const menuI18nNamespace = `menu/${menu.menuId}~${menu.app[0].appId}+${menu.instanceId}`;\n // Support any language in `menu.i18n`.\n Object.entries(menu.i18n).forEach(_ref => {\n let [lang, resources] = _ref;\n i18n.addResourceBundle(lang, menuI18nNamespace, resources);\n });\n menuWithI18n.set(menu, menuI18nNamespace);\n }\n }\n await Promise.all(menuList.map(menu => loadDynamicMenuItems(menu, runtimeContext, menuWithI18n, helpers)));\n for (const menu of menuList) {\n var _menu$items;\n if ((_menu$items = menu.items) !== null && _menu$items !== void 0 && _menu$items.length) {\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 // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n processGroupInject(menu.items, menu, injectWithMenus, menuWithI18n)),\n [symbolMenuI18nNamespace]: menuWithI18n.get(mainMenu),\n [symbolOverrideApp]: mainMenu.overrideApp\n };\n}\nfunction processGroupInject(items, menu, injectWithMenus, menuWithI18n) {\n return items === null || items === void 0 ? void 0 : items.map(item => {\n const foundInjectingMenus = item.groupId && injectWithMenus.get(item.groupId);\n if (foundInjectingMenus) {\n // Each menu to be injected with should be injected only once.\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n injectWithMenus.delete(item.groupId);\n }\n return {\n ...item,\n children: (processGroupInject(item.children, menu, injectWithMenus, menuWithI18n) ?? []).concat(foundInjectingMenus ? foundInjectingMenus.flatMap(injectingMenu =>\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n processGroupInject(injectingMenu.items, injectingMenu, injectWithMenus, menuWithI18n)) : []),\n [symbolAppId]: menu.app[0].appId,\n [symbolMenuI18nNamespace]: menuWithI18n.get(menu),\n [symbolOverrideApp]: menu.overrideApp\n };\n });\n}\n//# sourceMappingURL=mergeMenu.js.map","import { preCheckPermissionsForAny } from \"../checkPermissions.js\";\nexport async function loadDynamicMenuItems(menu, runtimeContext, menuWithI18n, helpers) {\n if (menu.dynamicItems && menu.itemsResolve) {\n const overrideAppId = menu.app[0].appId;\n const newRuntimeContext = {\n ...runtimeContext,\n pendingPermissionsPreCheck: [...runtimeContext.pendingPermissionsPreCheck, preCheckPermissionsForAny(menu.itemsResolve)]\n };\n if (overrideAppId !== runtimeContext.app.id) {\n var _helpers$getStoryboar;\n newRuntimeContext.overrideApp = window.STANDALONE_MICRO_APPS ? menu.overrideApp : (_helpers$getStoryboar = helpers.getStoryboardByAppId(overrideAppId)) === null || _helpers$getStoryboar === void 0 ? void 0 : _helpers$getStoryboar.app;\n newRuntimeContext.appendI18nNamespace = menuWithI18n.get(menu);\n }\n const resolved = await helpers.resolveData({\n transform: \"items\",\n ...menu.itemsResolve\n }, newRuntimeContext);\n menu.items = resolved.items;\n }\n}\n//# sourceMappingURL=loadDynamicMenuItems.js.map","import { sortBy } from \"lodash\";\nexport function reorderMenu(menuData) {\n menuData.items = reorderMenuItems(menuData.items);\n}\nfunction reorderMenuItems(list) {\n return sortMenuItems(list).map(item => ({\n ...item,\n children: reorderMenuItems(item.children)\n }));\n}\nfunction sortMenuItems(list) {\n return sortBy(list, item => item.sort ?? -Infinity);\n}\n//# sourceMappingURL=reorderMenuItems.js.map","import { symbolAppId, symbolMenuI18nNamespace, symbolOverrideApp } from \"./constants.js\";\nimport { hasOwnProperty, isObject } from \"@next-core/utils/general\";\nimport { pipes } from \"@next-core/pipes\";\nimport { isEvaluable } from \"@next-core/cook\";\nexport function computeMenuData(data, overrideAppId, runtimeContext, helpers) {\n if (\"titleDataSource\" in data && isObject(data.titleDataSource) && Object.entries(data.titleDataSource).every(_ref => {\n let [, value] = _ref;\n return value === null || value === \"\";\n })) {\n delete data.titleDataSource;\n }\n if (\"if\" in data && data.if === null) {\n delete data.if;\n }\n if (\"to\" in data && data.to && !isEvaluable(data.to)) {\n const yaml = pipes.yaml(data.to);\n if (isObject(yaml) && [\"pathname\", \"search\", \"hash\"].some(key => hasOwnProperty(yaml, key))) {\n data.to = yaml;\n }\n }\n let newRuntimeContext = runtimeContext;\n if (overrideAppId !== runtimeContext.app.id) {\n var _helpers$getStoryboar;\n const overrideApp = window.STANDALONE_MICRO_APPS ? data[symbolOverrideApp] : (_helpers$getStoryboar = helpers.getStoryboardByAppId(overrideAppId)) === null || _helpers$getStoryboar === void 0 ? void 0 : _helpers$getStoryboar.app;\n newRuntimeContext = {\n ...runtimeContext,\n overrideApp,\n appendI18nNamespace: data[symbolMenuI18nNamespace]\n };\n }\n return helpers.asyncComputeRealValue(data, newRuntimeContext, {\n ignoreSymbols: true\n });\n}\nexport function computeMenuItems(items, runtimeContext, helpers) {\n return Promise.all(items.map(async _ref2 => {\n let {\n children,\n ...rest\n } = _ref2;\n const [computedRest, computedChildren] = await Promise.all([computeMenuData(rest, rest[symbolAppId], runtimeContext, helpers), children && (await computeMenuItems(children, runtimeContext, helpers))]);\n return {\n ...computedRest,\n children: computedChildren\n };\n }));\n}\n//# sourceMappingURL=computeMenuData.js.map","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取实例详情\n * @endpoint GET /object/:objectId/instance/:instanceId\n */\nexport var InstanceApi_getDetail = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (objectId, instanceId, params, options) {\n return (/**! @contract easyops.api.cmdb.instance.GetDetail@1.0.0 */(yield http.get(\"api/gateway/cmdb.instance.GetDetail/object/\".concat(objectId, \"/instance/\").concat(instanceId), _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function InstanceApi_getDetail(_x, _x2, _x3, _x4) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=getDetail.js.map","import { isEmpty } from \"lodash\";\nimport { InstanceApi_getDetail } from \"@next-api-sdk/cmdb-sdk\";\nconst menuTitleCache = new Map();\nexport async function fetchMenuTitle(menuData) {\n if (menuData.title || isEmpty(menuData.titleDataSource)) {\n return menuData.title;\n }\n const cacheKey = JSON.stringify(menuData.titleDataSource);\n const cachedTitle = menuTitleCache.get(cacheKey);\n if (cachedTitle !== undefined) {\n return cachedTitle;\n }\n const {\n objectId,\n instanceId,\n attributeId\n } = menuData.titleDataSource;\n const attr = attributeId ?? \"name\";\n const instanceData = await InstanceApi_getDetail(objectId, instanceId, {\n fields: attr\n });\n let title;\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//# sourceMappingURL=fetchMenuTitle.js.map","import { InstanceApi_postSearch } from \"@next-api-sdk/cmdb-sdk\";\nimport { InstalledMicroAppApi_getMenusInfo } from \"@next-api-sdk/micro-app-sdk\";\nimport { omit, pick } from \"lodash\";\nimport { checkIfOfComputed } from \"@next-core/runtime\";\nimport { mergeMenu } from \"./mergeMenu.js\";\nimport { reorderMenu } from \"./reorderMenuItems.js\";\nimport { computeMenuItems, computeMenuData } from \"./computeMenuData.js\";\nimport { fetchMenuTitle } from \"./fetchMenuTitle.js\";\nimport { getMenusOfStandaloneApp } from \"./getMenusOfStandaloneApp.js\";\nimport { preCheckPermissionsForAny } from \"../checkPermissions.js\";\nconst menuPromises = new Map();\nconst menuCache = new Map();\nfunction transformMenuItems(menuItems) {\n return menuItems === null || menuItems === void 0 ? void 0 : menuItems.filter(checkIfOfComputed).map(item => {\n const children = transformMenuItems(item.children);\n const transformedMenuItem = item.type === \"group\" ? {\n type: \"group\",\n title: item.text,\n childLayout: item.childLayout,\n items: children,\n groupId: item.groupId,\n groupFrom: item.groupFrom\n } : children !== null && children !== void 0 && children.length ? {\n type: \"subMenu\",\n childLayout: item.childLayout,\n title: item.text,\n icon: item.icon,\n items: children,\n defaultExpanded: item.defaultExpanded\n } : omit(item, [\"type\", \"items\", \"children\"]);\n return transformedMenuItem;\n });\n}\nexport function getMenuById(menuId) {\n return menuCache.get(menuId);\n}\nexport function fetchMenuById(menuId, runtimeContext, helpers) {\n let promise = menuPromises.get(menuId);\n if (!promise) {\n promise = _fetchMenuById(menuId, runtimeContext, helpers);\n }\n return promise;\n}\nasync function _fetchMenuById(menuId, runtimeContext, helpers) {\n const menuList = window.STANDALONE_MICRO_APPS ? getMenusOfStandaloneApp(menuId, runtimeContext.app.id, helpers) : runtimeContext.flags[\"three-level-menu-layout\"] ? (await InstalledMicroAppApi_getMenusInfo(menuId, {\n menuObjectId: \"EASYOPS_STORYBOARD_MENU\"\n })).menus : (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 i18n: 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 })).list;\n const menuData = await mergeMenu(menuList, runtimeContext, helpers);\n if (!menuData) {\n throw new Error(`Menu not found: ${menuId}`);\n }\n reorderMenu(menuData);\n const {\n items,\n app,\n ...restMenuData\n } = menuData;\n const newRuntimeContext = {\n ...runtimeContext,\n pendingPermissionsPreCheck: [...runtimeContext.pendingPermissionsPreCheck, preCheckPermissionsForAny([items, restMenuData])]\n };\n delete newRuntimeContext.tplStateStoreId;\n delete newRuntimeContext.forEachItem;\n delete newRuntimeContext.forEachIndex;\n const rootAppId = app[0].appId;\n const [computedMenuData, computedMenuItems] = await Promise.all([computeMenuData(restMenuData, rootAppId, newRuntimeContext, helpers), computeMenuItems(items, newRuntimeContext, helpers)]);\n const finalMenuData = {\n title: await fetchMenuTitle(computedMenuData),\n ...pick(computedMenuData, [\"icon\", \"link\", \"defaultCollapsed\", \"defaultCollapsedBreakpoint\"]),\n menuItems: transformMenuItems(computedMenuItems)\n };\n\n // Todo(steve): reconsider the menu cache strategy\n menuCache.set(menuId, finalMenuData);\n}\n//# sourceMappingURL=fetchMenuById.js.map","export function getMenusOfStandaloneApp(menuId, appId, helpers) {\n var _storyboard$meta, _storyboard$meta2;\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const storyboard = helpers.getStoryboardByAppId(appId);\n const menus = ((_storyboard$meta = storyboard.meta) === null || _storyboard$meta === void 0 ? void 0 : _storyboard$meta.injectMenus) ?? ((_storyboard$meta2 = storyboard.meta) === null || _storyboard$meta2 === void 0 ? void 0 : _storyboard$meta2.menus) ?? [];\n return menus.filter(menu => menu.menuId === menuId).map(menu => {\n var _menu$app;\n return {\n ...menu,\n ...((_menu$app = menu.app) !== null && _menu$app !== void 0 && (_menu$app = _menu$app[0]) !== null && _menu$app !== void 0 && _menu$app.appId ? {} : {\n app: [{\n appId\n }]\n })\n };\n });\n\n // Todo: maybe: fetch menus from STANDALONE_MENU@EASYOPS\n}\n//# sourceMappingURL=getMenusOfStandaloneApp.js.map","export const events = [];\nconst MAXIMUM_WAITING_TIME = 5 * 1000;\nconst MAXIMUM_LOGGED_EVENTS = 10;\nlet timer = null;\nexport const transportOptions = {\n maxWaitingTime: MAXIMUM_WAITING_TIME,\n maxLoggedEvents: MAXIMUM_LOGGED_EVENTS\n};\nexport function createTransport(api, options) {\n Object.assign(transportOptions, {\n ...options,\n api\n });\n return {\n sendOnExit,\n emit\n };\n}\nfunction nextTime(callback) {\n return (window.requestIdleCallback || window.requestAnimationFrame || (cb => setTimeout(cb, 17)))(callback);\n}\nfunction emit() {\n clearTimeout(timer);\n events.length > transportOptions.maxLoggedEvents ? send() : timer = setTimeout(send, transportOptions.maxWaitingTime);\n}\nfunction send() {\n if (events.length === 0) {\n return;\n }\n const transportEvents = events.splice(0, transportOptions.maxLoggedEvents);\n const transportData = buildTransportData(transportEvents);\n sendBeacon(transportOptions.api, transportData);\n events.length && nextTime(send);\n}\nfunction sendBeacon(requestUrl, data) {\n const headers = {\n type: \"application/json\"\n };\n const blob = new Blob([JSON.stringify(data)], headers);\n window.navigator.sendBeacon(requestUrl, blob);\n}\nfunction sendOnExit() {\n window.addEventListener(\"beforeunload\", send, false);\n}\nfunction buildTransportData(data) {\n return {\n model: \"easyops.FRONTEND_STAT\",\n columns: [\"_ver\", \"st\", \"et\", \"lt\", \"size\", \"time\", \"traceId\", \"code\", \"duration\", \"page\", \"uid\", \"username\", \"api\", \"type\", \"msg\", \"status\", \"pageId\", \"route\", \"apiCount\", \"maxApiTimeCost\", \"apiSizeCost\", \"pageTitle\"],\n data\n };\n}\n//# sourceMappingURL=transport.js.map","import { createTransport, events } from \"./transport.js\";\nlet initialized = false;\nlet transport;\nlet pageState = null;\nlet isFirstPageView = true;\nconst stashedApiMetrics = [];\nexport function initialize(api) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (initialized) {\n return;\n }\n initialized = true;\n if (!transport) {\n transport = createTransport(api, options);\n transport.sendOnExit();\n }\n}\nexport function createPageView() {\n stashedApiMetrics.length = 0;\n pageState = null;\n}\nexport function finishPageView(metric) {\n const pageId = generateUUID();\n const {\n lt,\n route\n } = metric;\n pageState = {\n lt,\n route,\n pageId\n };\n events.push({\n ...metric,\n pageId,\n apiCount: stashedApiMetrics.length,\n maxApiTimeCost: Math.max(0, ...stashedApiMetrics.map(api => api.duration)),\n size: stashedApiMetrics.map(api => api.size).filter(size => size > 0).reduce((prev, current) => prev + current, 0)\n });\n for (const item of stashedApiMetrics) {\n events.push({\n ...item,\n ...pageState\n });\n }\n stashedApiMetrics.length = 0;\n transport.emit();\n}\nexport function earlyFinishPageView() {\n events.push(...stashedApiMetrics);\n stashedApiMetrics.length = 0;\n}\nexport function pushApiMetric(metric) {\n if (pageState) {\n events.push({\n ...metric,\n type: \"apiRequest\",\n ...pageState\n });\n } else {\n stashedApiMetrics.push(metric);\n }\n}\n\n// Ref https://medium.com/teads-engineering/generating-uuids-at-scale-on-the-web-2877f529d2a2\nfunction generateUUID() {\n const url = URL.createObjectURL(new Blob([]));\n let uuid = url.substring(url.lastIndexOf(\"/\") + 1);\n URL.revokeObjectURL(url);\n // 第一次渲染加上特殊标记\n if (isFirstPageView) {\n uuid = \"88-\" + uuid;\n isFirstPageView = false;\n }\n return uuid;\n}\n//# sourceMappingURL=analytics.js.map","import { HttpResponseError, HttpParseError, HttpAbortError } from \"@next-core/http\";\nimport { isObject } from \"@next-core/utils/general\";\nimport { getAuth } from \"../auth.js\";\nimport { pushApiMetric } from \"./analytics.js\";\nconst symbolHttpAnalytics = Symbol(\"HttpAnalytics\");\nexport function onRequest(config) {\n const perfStartTime = Math.round(performance.now());\n const st = Date.now();\n config[symbolHttpAnalytics] = {\n st,\n time: Math.round(st / 1000),\n perfStartTime\n };\n return config;\n}\nexport function onResponse(response, config) {\n return onResponseOrError(false, response, config);\n}\nexport function onResponseError(error, config) {\n return onResponseOrError(true, error, config);\n}\nfunction onResponseOrError(hasError, responseOrError, config) {\n const perfEndTime = Math.round(performance.now());\n const et = Date.now();\n const {\n [symbolHttpAnalytics]: meta,\n url\n } = config;\n if (meta && !(hasError && responseOrError instanceof HttpAbortError)) {\n delete config[symbolHttpAnalytics];\n const {\n st,\n time,\n perfStartTime\n } = meta;\n const {\n userInstanceId: uid,\n username\n } = getAuth();\n let code;\n let message;\n let traceId;\n let size;\n let status;\n let headers;\n let data;\n if (hasError) {\n const isHttpResponseError = responseOrError instanceof HttpResponseError;\n if (isHttpResponseError || responseOrError instanceof HttpParseError) {\n ({\n status,\n headers\n } = responseOrError.response);\n if (isHttpResponseError) {\n data = responseOrError.responseJson;\n }\n }\n } else {\n ({\n status,\n data,\n headers\n } = responseOrError);\n }\n if (isObject(data)) {\n ({\n code,\n message\n } = data);\n }\n if (headers instanceof Headers) {\n traceId = headers.get(\"x-b3-traceid\");\n size = headers.get(\"content-length\");\n }\n pushApiMetric({\n st,\n _ver: st,\n uid,\n username,\n time,\n et,\n page: location.href,\n duration: perfEndTime - perfStartTime,\n api: url,\n type: \"api\",\n code: code ?? -1,\n msg: message ?? \"\",\n status,\n traceId: traceId ?? \"\",\n size: size ? Number(size) : -1\n });\n }\n return hasError ? Promise.reject(responseOrError) : responseOrError;\n}\n//# sourceMappingURL=http.js.map","import { createPageView, earlyFinishPageView, finishPageView } from \"./analytics.js\";\nimport { getAuth } from \"../auth.js\";\nexport function create() {\n const perfStartTime = Math.round(performance.now());\n const startTime = Date.now();\n createPageView();\n return function finish(_ref) {\n let {\n status,\n path,\n pageTitle\n } = _ref;\n if (status !== \"ok\") {\n earlyFinishPageView();\n return;\n }\n const renderTime = Math.round(performance.now()) - perfStartTime;\n const endTime = Date.now();\n const {\n username\n } = getAuth();\n finishPageView({\n type: \"page\",\n page: location.href,\n _ver: startTime,\n time: Math.round(startTime / 1000),\n st: startTime,\n et: endTime,\n lt: renderTime,\n pageTitle,\n username,\n route: path\n });\n\n // For bricks which would take actions with render time.\n window.dispatchEvent(new CustomEvent(\"route.render\", {\n detail: {\n renderTime\n }\n }));\n };\n}\n//# sourceMappingURL=pageView.js.map","// istanbul ignore file\nimport { checkPermissions as _checkPermissions, preCheckPermissions, preCheckPermissionsForBrickOrRoute } from \"./checkPermissions.js\";\nimport { MessageDispatcher } from \"./websocket/MessageDispatcher.js\";\nimport * as authV3 from \"./auth.js\";\nimport { authV2Factory } from \"./auth-v2.js\";\nimport * as _checkInstalledApps from \"./checkInstalledApps.js\";\nexport { _checkInstalledApps as checkInstalledApps };\nimport * as _flowApi from \"./flowApi/index.js\";\nexport { _flowApi as flowApi };\nimport * as _menu from \"./menu/index.js\";\nexport { _menu as menu };\nimport * as _analytics from \"./analytics/index.js\";\nexport { _analytics as analytics };\nexport const checkPermissions = Object.freeze({\n checkPermissions: _checkPermissions,\n preCheckPermissions,\n preCheckPermissionsForBrickOrRoute\n});\nexport const messageDispatcher = new MessageDispatcher();\nexport const auth = authV2Factory() || authV3;\n//# sourceMappingURL=index.js.map","// istanbul ignore file\nimport { getV2RuntimeFromDll } from \"@next-core/runtime\";\nimport { pick } from \"lodash\";\nexport function authV2Factory() {\n const v2Kit = getV2RuntimeFromDll();\n if (v2Kit) {\n return Object.freeze(pick(v2Kit, [\"authenticate\", \"getAuth\", \"isLoggedIn\", \"logout\"]));\n }\n}\n//# sourceMappingURL=auth-v2.js.map"],"names":["PermissionApi_validatePermissions","_ref","data","options","http","post","_x","_x2","apply","this","arguments","auth","authenticate","newAuth","Object","assign","org","username","userInstanceId","loginFrom","accessRule","isAdmin","csrfToken","license","accessToken","userShowValue","getAuth","logout","key","keys","undefined","checkedPermissions","length","permissionMap","clear","isLoggedIn","Map","preCheckPermissionsForAny","validatePermissions","scanPermissionActionsInAny","async","usedActions","actions","difference","push","result","noAbortOnRouteChange","item","set","action","authorizationStatus","console","error","RETRY_TIMEOUT_UNIT","RETRY_LIMIT","_url","WeakMap","_ws","_queuedMessages","_messageListeners","_closeListeners","_retryCount","_closed","_MessageService_brand","WeakSet","MessageService","constructor","url","Set","send","_connect","call","stringifiedData","JSON","stringify","readyState","WebSocket","OPEN","onMessage","listener","add","onClose","reset","close","_classPrivateFieldGet2","log","ws","addEventListener","e","msg","code","_reconnect","response","parse","delay","Math","pow","setTimeout","_this$retryCount","_ms","_memoizedChannels","_channelPayloads","_MessageDispatcher_brand","_get_ms","_this","location","protocol","window","host","getBasePath","_subOrUnsub","type","channel","payload","stringifiedPayload","hit","get","request","event","promise","Promise","resolve","reject","identity","getIdentity","isSuccess","isFailed","system","topic","RuntimeApi_searchMicroAppStandalone","checkingApps","checkedApps","preCheckInstalledApps","storyboard","hasAppInBootstrap","STANDALONE_MICRO_APPS","NO_AUTH_GUARD","appIds","usage","usedArgs","customTemplates","menus","meta","traverseStoryboardExpressions","routes","node","parent","collectInstalledAppsHasUsage","scanInstalledAppsUsage","searchIds","appId","has","query","$in","fields","catch","then","_result$list","app","list","find","checkedApp","id","waitForCheckingApps","all","map","getCheckedApp","FLOW_API_PROVIDER","hasFields","ext_fields","some","source","callFlowApi","_ref2","originalUri","method","responseWrapper","isFileType","stream","isSimpleRequest","includes","toLowerCase","defaultOptions","responseType","_len2","args","Array","_key2","_originalUri$match","_request$fields","params","_options","match","createSSEStream","getUrlWithParams","headers","fromEntries","Headers","entries","simpleRequest","isUploadType","processFields","isEmpty","field","hasFileType","hasQueryParams","hasBodyParams","_len","_key","processExtFields","FormData","formData","value","isArray","forEach","v","append","isObject","Blob","Date","k","transformFormData","_result$options","body","getBodyAndHeaders","requestWithBody","registerFlowApiProvider","customElements","define","createProviderClass","ContractApi_searchSingleContract","contractsMap","widgetContractMap","debugContractMap","addContract","contracts","contract","namespaceId","name","collectContract","collectWidgetContract","clearCollectWidgetContract","collectDebugContract","clearDebugContract","remoteContractCache","isFlowApiProvider","provider","getArgsOfFlowApi","originalArgs","Error","apiDefinition","namespaceName","nameWithVersion","split","version","getContract","namespace","serviceName","endpoint","_contractData$namespa","contractData","contractName","fetchFlowApiDefinitionFromRemote","fetchFlowApiDefinition","FlowApiNotFoundError","apiProfile","api","_contract$response","schema","json","uri","wrapper","getApiProfileFromApiDefinition","apiMethod","isDownload","fileName","shift","prefix","startsWith","restArgs","slice","transformedUri","replace","getTransformedUriAndRestArgs","getApiArgsFromApiProfile","message","super","captureStackTrace","InstalledMicroAppApi_getMenusInfo","menuId","concat","_x3","symbolAppId","Symbol","symbolMenuI18nNamespace","symbolOverrideApp","mergeMenu","menuList","runtimeContext","helpers","mainMenu","menu","validMenuList","injectWithMenus","menuWithI18n","i18n","menuI18nNamespace","instanceId","lang","resources","addResourceBundle","dynamicItems","itemsResolve","overrideAppId","newRuntimeContext","pendingPermissionsPreCheck","_helpers$getStoryboar","overrideApp","getStoryboardByAppId","appendI18nNamespace","resolved","resolveData","transform","items","loadDynamicMenuItems","_menu$items","injectMenuGroupId","injectingMenus","flatMap","processGroupInject","foundInjectingMenus","groupId","delete","children","injectingMenu","reorderMenu","menuData","reorderMenuItems","sortBy","sort","sortMenuItems","computeMenuData","titleDataSource","every","if","to","isEvaluable","yaml","pipes","hasOwnProperty","asyncComputeRealValue","ignoreSymbols","computeMenuItems","rest","computedRest","computedChildren","InstanceApi_getDetail","objectId","_x4","menuTitleCache","fetchMenuTitle","title","cacheKey","cachedTitle","attributeId","attr","instanceData","primary","join","String","menuPromises","menuCache","transformMenuItems","menuItems","filter","checkIfOfComputed","text","childLayout","groupFrom","icon","defaultExpanded","omit","getMenuById","fetchMenuById","_storyboard$meta","_storyboard$meta2","injectMenus","_menu$app","getMenusOfStandaloneApp","flags","menuObjectId","page","page_size","link","defaultCollapsed","defaultCollapsedBreakpoint","$eq","$size","$gt","restMenuData","tplStateStoreId","forEachItem","forEachIndex","rootAppId","computedMenuData","computedMenuItems","finalMenuData","pick","_fetchMenuById","events","timer","transportOptions","maxWaitingTime","maxLoggedEvents","emit","clearTimeout","transportData","model","columns","splice","callback","requestUrl","blob","navigator","sendBeacon","requestIdleCallback","requestAnimationFrame","cb","sendOnExit","transport","initialized","pageState","isFirstPageView","stashedApiMetrics","initialize","createTransport","symbolHttpAnalytics","onRequest","config","perfStartTime","round","performance","now","st","time","onResponse","onResponseOrError","onResponseError","hasError","responseOrError","perfEndTime","et","HttpAbortError","uid","traceId","size","status","isHttpResponseError","HttpResponseError","HttpParseError","responseJson","metric","_ver","href","duration","Number","create","startTime","path","pageTitle","renderTime","endTime","pageId","URL","createObjectURL","uuid","substring","lastIndexOf","revokeObjectURL","generateUUID","lt","route","apiCount","maxApiTimeCost","max","reduce","prev","current","finishPageView","dispatchEvent","CustomEvent","detail","freeze","checkPermissions","preCheckPermissions","scanPermissionActionsInStoryboard","preCheckPermissionsForBrickOrRoute","container","permissionsPreCheck","messageDispatcher","sub","unsub","subscribe","unsubscribe","warned","responsePayload","RegExp","_m","p1","p2","escapeRegExp","test","matchMessageChannel","v2Kit","getV2RuntimeFromDll","authV2Factory"],"sourceRoot":""}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
/*! For license information please see 4.62331183.js.LICENSE.txt */
|
|
2
|
-
"use strict";(globalThis.webpackChunk_next_bricks_form_platform=globalThis.webpackChunk_next_bricks_form_platform||[]).push([[4],{4:(e,t,n)=>{n.r(t),n.d(t,{Dialog:()=>Yt,Notification:()=>rn,StoryboardFunctionRegistryFactory:()=>pe,__secret_internals:()=>r,__test_only:()=>{},applyTheme:()=>te,authenticate:()=>ka,batchSetAppsLocalTheme:()=>ne,checkIfByTransform:()=>Et,checkIfOfComputed:()=>St,createHistory:()=>I,createRuntime:()=>fa,customEditors:()=>Oa,customProcessors:()=>M,customTemplates:()=>_e,fetchByProvider:()=>xa,getAuth:()=>Ia,getBasePath:()=>m,getCssPropertyValue:()=>ce,getCurrentMode:()=>ie,getCurrentTheme:()=>ee,getHistory:()=>C,getPageInfo:()=>no,getRealValue:()=>Pa,getRuntime:()=>pa,getV2RuntimeFromDll:()=>k,handleHttpError:()=>nn,httpErrorToString:()=>Jt,isLoggedIn:()=>Ra,isUnauthenticatedError:()=>Xt,logout:()=>Ca,matchPath:()=>Lt,registerWidgetFunctions:()=>$e,registerWidgetI18n:()=>N,setUIVersion:()=>oo,unstable_createRoot:()=>_a});var r={};n.r(r),n.d(r,{addRealTimeDataInspectHook:()=>Tr,debugDataValue:()=>Ar,getAddedContracts:()=>Er,getAllContextValues:()=>vr,getBrickPackagesById:()=>br,getContextValue:()=>gr,getLegalRuntimeValue:()=>kr,getRenderId:()=>Sr,legacyDoTransform:()=>sr,loadBricks:()=>yr,loadEditors:()=>wr,mountUseBrick:()=>ar,renderUseBrick:()=>or,setRealTimeDataInspectRoot:()=>Rr,symbolForRootRuntimeContext:()=>rr,unmountUseBrick:()=>ir,updateSnippetPreviewSettings:()=>hr,updateStoryboard:()=>cr,updateStoryboardByRoute:()=>lr,updateStoryboardBySnippet:()=>pr,updateStoryboardByTemplate:()=>ur,updateTemplatePreviewSettings:()=>dr});var o=n(4635),a=n(4586),i=n(918),s=n(2559),c=n(6121),l=n(829),u=n(4307),d=n(1738),f=n(8896),p=n(1302),h=(n(6036),n(2890));function m(){const e=document.querySelector("base");return e?e.getAttribute("href"):"/"}var g=n(1030);function v(e,t){const n=(0,g.orderBy)(e,(e=>{var t;return(null===(t=e.app.homepage)||void 0===t?void 0:t.length)??0}),"desc");for(const e of n){const n=e.app.homepage;if("string"==typeof n&&"/"===n[0]&&b(n,t))return e}}function b(e,t){return"/"===e?t===e:`${t.replace(/\/+$/,"")}/`.startsWith(`${e.replace(/\/+$/,"")}/`)}function y(e){var t;return!e||(null===(t=pa().getCurrentApp())||void 0===t?void 0:t.id)!==e.app.id&&!window.STANDALONE_MICRO_APPS&&e.app.standaloneMode}let w,S=!1;function E(e,t){S=!confirm(e),t(!S)}function A(e){const{push:t,replace:n}=e;function r(r){return function(o,a,i){let s;const c="string"==typeof o;return s=c?(0,h.parsePath)(o).pathname:o.pathname,"string"==typeof s&&s.startsWith("/")&&y(function(e){var t;return v((null===(t=ca)||void 0===t?void 0:t.storyboards)??[],e)}(s))?location["push"===r?"assign":"replace"](c?m()+o.substring(1):e.createHref(o)):("push"===r?t:n)(o,a,i)}}return{push:r("push"),replace:r("replace")}}function k(){var e;const{dll:t}=window;if(t&&null!==(e=window.BRICK_NEXT_VERSIONS)&&void 0!==e&&null!==(e=e["brick-container"])&&void 0!==e&&e.startsWith("2."))return t("tYg3")}function I(){if(!w){const e=(0,h.createBrowserHistory)({basename:m().replace(/\/$/,""),getUserConfirmation:E});Object.assign(e,function(e){const{push:t,replace:n}=e;function r(e,n,r){S=!1,t(e,n),null==r||r(S)}function o(e,t,r){S=!1,n(e,t),null==r||r(S)}function a(t){return function(n){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2?arguments[2]:void 0;const{extraQuery:s,clear:c,keepHash:l,...u}=a,d=new URLSearchParams(c?"":e.location.search),f={};Object.assign(f,n,s);for(const[e,t]of Object.entries(f))if(Array.isArray(t)){d.delete(e);for(const n of t)d.append(e,n)}else null==t||""===t?d.delete(e):d.set(e,t);("push"===t?r:o)(`?${d.toString()}${l?e.location.hash:""}`,u,i)}}let i;return{pushQuery:a("push"),replaceQuery:a("replace"),pushAnchor:function(t,n,o){r({...e.location,key:void 0,hash:t,state:{notify:!1,...n}},void 0,o)},reload:function(t){o({...e.location,state:{...e.location.state,notify:!0,noIncremental:!0}},void 0,t)},setBlockMessage:function(e){i=e},getBlockMessage:function(){return i},unblock:function(){i=void 0},...A({...e,push:r,replace:o})}}(e)),w=e}return w}const C=function(){const e=k();if(e)return e.getHistory}()||function(){return w};var R=n(3465),T=n(1580),O=n(9680),x=n(537),_=n(5684),P=new WeakMap;const M=function(){const e=k();if(e)return Object.freeze({define:(t,n)=>e.getRuntime().registerCustomProcessor(t,n)})}()||new class{constructor(){(0,i.A)(this,P,new Map)}define(e,t){const[n,r]=e.split(".");let o=(0,l.A)(P,this).get(n);if(o||(o=new Map,(0,l.A)(P,this).set(n,o)),o.has(r))throw new Error(`Custom processor of "${e}" already registered`);o.set(r,t)}get(e){return(0,l.A)(P,this).get(e)}};function B(e){let{app:t,meta:n}=e;if(null!=n&&n.i18n){const e=L("app",t.id),r=[];return Object.entries(n.i18n).forEach((t=>{let[n,o]=t;u.i18n.addResourceBundle(n,e,o),r.push(n)})),()=>{for(const t of r)u.i18n.removeResourceBundle(t,e)}}}function L(e,t){return`${e}/${t}`}function $(e){return u.i18n.getFixedT(null,L("widget",e))}const N=function(){const e=k();if(e)return function(t,n){return e.getRuntime().registerWidgetI18n(t,n)}}()||function(e,t){const n=L("widget",e);Object.entries(t).forEach((e=>{let[t,r]=e;u.i18n.addResourceBundle(t,n,r)}))},U="brick-next-devtools-panel",F="devtools-frame-active-change",j="devtools-panel-change";let D,K=!0;function V(e,t){const n=W();if(!n||"evaluation"===e&&(!K||D&&"Evaluations"!==D))return;const r=()=>{var r;null===(r=n.emit)||void 0===r||r.call(n,{type:e,payload:t})};"function"==typeof window.requestIdleCallback?window.requestIdleCallback(r):setTimeout(r,0)}function W(){return window.__BRICK_NEXT_DEVTOOLS_HOOK__}const H=()=>{throw new Error("Can't modify read-only proxy object")},q={set:H,defineProperty:H,deleteProperty:H,setPrototypeOf:H};function z(e){return new Proxy(e,q)}function G(e){let{get:t,ownKeys:n}=e;return W()?z(Object.fromEntries(n(null).map((e=>[e,t(null,e,null)])))):new Proxy(Object.freeze({}),{get:t})}let Y="light";const Q=new f.JsonStorage(localStorage),J="apps-theme";function X(e){if("dark"!==e&&"light"!==e&&"dark-v2"!==e)throw new Error(`Unsupported theme: ${e}`);Y=e}function Z(){return Y}function ee(){return document.documentElement.dataset.theme}function te(e){e?X(e):e=Z(),e!==ee()&&(document.documentElement.dataset.theme=e,window.dispatchEvent(new CustomEvent("theme.change",{detail:e})))}function ne(e){Q.setItem(J,{...re(),...e})}function re(){let e;try{e=Q.getItem(J)}catch{console.error("JSON parse error inside `getLocalAppsTheme()`")}return e??{}}let oe="default";function ae(e){if("dashboard"!==e&&"default"!==e)throw new Error(`Unsupported mode: ${e}`);oe=e}function ie(){return document.documentElement.dataset.mode}function se(e){e?ae(e):e=oe,e!==ie()&&(document.documentElement.dataset.mode=e,window.dispatchEvent(new CustomEvent("mode.change",{detail:e})))}function ce(e){var t;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document.documentElement;return n&&(null===(t=window.getComputedStyle(n))||void 0===t?void 0:t.getPropertyValue(e))||""}function le(e,t){const n={};for(const r of e){const e=ue(r,t);void 0!==e&&(n[r]=e)}return n}function ue(e,t){var n,r,o;let{collectCoverage:a,widgetId:i,widgetVersion:s,app:c,appendI18nNamespace:l,storyboardFunctions:d,isStoryboardFunction:f}=t;switch(e){case"BASE_URL":return a?"/next":m().replace(/\/$/,"");case"FN":return d;case"IMG":return a?{get:e=>`mock/images/${e}`}:i?null==da||null===(n=da.images)||void 0===n?void 0:n.widgetImagesFactory(i,s):null==da||null===(r=da.images)||void 0===r?void 0:r.imagesFactory(c.id,c.isBuildPush,c.currentVersion);case"I18N":return a?g.identity:i?$(i):u.i18n.getFixedT(null,[l,L("app",c.id)].filter(Boolean));case"I18N_TEXT":return a?de:u.i18nText;case"PERMISSIONS":return z({check:a?fe:null==da||null===(o=da.checkPermissions)||void 0===o?void 0:o.checkPermissions});case"THEME":return z({getTheme:a?()=>"light":Z});case"console":return f?z(console):void 0;case"location":return a?{href:"http://localhost:3000/functions/test",origin:"http://localhost:3000",host:"localhost:3000",hostname:"localhost"}:{href:location.href,origin:location.origin,host:location.host,hostname:location.hostname}}}function de(e){return null==e?void 0:e.en}function fe(){return!0}function pe(){let{widgetId:e,widgetVersion:t,collectCoverage:n,debuggerOverrides:r}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const o=new Map,a=null==r?void 0:r({precookFunction:T.precookFunction,cook:T.cook,supply:_.supply}),i=new Proxy(Object.freeze({}),{get:(c,l)=>function(c){const l=o.get(c);if(!l)return;if(l.processed)return l.cooked;let u;n&&(u=n.createCollector(c));const d=(0,T.precookFunction)(l.source,{typescript:l.typescript,hooks:u&&{beforeVisit:u.beforeVisit}}),f=(0,_.supply)(d.attemptToVisitGlobals,le(d.attemptToVisitGlobals,{collectCoverage:n,widgetId:e,widgetVersion:t,app:s,storyboardFunctions:i,isStoryboardFunction:!0}),!!n);return l.cooked=(0,T.cook)(d.function,l.source,{rules:{noVar:!0},globalVariables:a?{...f,...null!=a&&a.LodashWithStaticFields&&d.attemptToVisitGlobals.has("_")?{_:{...f._,...a.LodashWithStaticFields}}:null,...null!=a&&a.ArrayConstructor&&d.attemptToVisitGlobals.has("Array")?{Array:a.ArrayConstructor}:null,...null!=a&&a.ObjectWithStaticFields&&d.attemptToVisitGlobals.has("Object")?{Object:{...f.Object,...a.ObjectWithStaticFields}}:null}:f,ArrayConstructor:null==a?void 0:a.ArrayConstructor,hooks:u&&{beforeEvaluate:u.beforeEvaluate,beforeCall:u.beforeCall,beforeBranch:u.beforeBranch},debug:!!r}),l.processed=!0,l.cooked}(l)});let s;return{storyboardFunctions:i,registerStoryboardFunctions:function(e,t){if(t&&(s=t),o.clear(),Array.isArray(e))for(const t of e){const e=(0,O.collectMemberUsageInFunction)(t,"FN",!!n),r=(0,O.collectMemberUsageInFunction)(t,"PERMISSIONS",!!n).has("check");o.set(t.name,{source:t.source,typescript:t.typescript,deps:e,hasPermissionsCheck:r})}},updateStoryboardFunction(e,t){const n={...t,name:e},r=(0,O.collectMemberUsageInFunction)(n,"FN",!0),a=(0,O.collectMemberUsageInFunction)(n,"PERMISSIONS",!0).has("check");o.set(e,{source:t.source,typescript:t.typescript,deps:r,hasPermissionsCheck:a})},checkPermissionsUsage(e){const t=new Set,n=e=>{if(!t.has(e)){t.add(e);const r=o.get(e);return!!r&&(r.hasPermissionsCheck||[...r.deps].some(n))}return!1};return e.some(n)},clearGlobalExecutionContextStack(){(0,T.__dev_only_clearGlobalExecutionContextStack)()},getGlobalExecutionContextStack:()=>(0,T.__dev_only_getGlobalExecutionContextStack)()}}const{storyboardFunctions:he,registerStoryboardFunctions:me,checkPermissionsUsage:ge}=pe();var ve={};try{ve.EventTarget=(new EventTarget).constructor}catch(e){!function(e,t){var n=e.create,r=e.defineProperty,o=a.prototype;function a(){t.set(this,n(null))}function i(e,t,n){r(e,t,{configurable:!0,writable:!0,value:n})}function s(e){var t=e.options;return t&&t.once&&e.target.removeEventListener(this.type,e.listener),"function"==typeof e.listener?e.listener.call(e.target,this):e.listener.handleEvent(this),this._stopImmediatePropagationFlag}i(o,"addEventListener",(function(e,n,r){for(var o=t.get(this),a=o[e]||(o[e]=[]),i=0,s=a.length;i<s;i++)if(a[i].listener===n)return;a.push({target:this,listener:n,options:r})})),i(o,"dispatchEvent",(function(e){var n=t.get(this)[e.type];return n&&(i(e,"target",this),i(e,"currentTarget",this),n.slice(0).some(s,e),delete e.currentTarget,delete e.target),!0})),i(o,"removeEventListener",(function(e,n){for(var r=t.get(this),o=r[e]||(r[e]=[]),a=0,i=o.length;a<i;a++)if(o[a].listener===n)return void o.splice(a,1)})),ve.EventTarget=a}(Object,new WeakMap)}const be=ve.EventTarget;let ye=function(e){return e.xLarge="xLarge",e.large="large",e.medium="medium",e.small="small",e.xSmall="xSmall",e}({});const we=new Map([[ye.xLarge,"1920px"],[ye.large,"1600px"],[ye.medium,"1280px"],[ye.small,"1024px"],[ye.xSmall,0]]),Se=new be,Ee={},Ae={};function ke(e,t){let n=!1;Ee[t]=e.matches;for(const[e]of we)if(Ee[e]&&Ae.breakpoint!==e){Ae.breakpoint=e,n=!0;break}n&&Se.dispatchEvent(new CustomEvent("change",{detail:Ae}))}we.forEach(((e,t)=>{const n=window.matchMedia(`(min-width: ${e})`);ke(n,t),n.addEventListener?n.addEventListener("change",(e=>{ke(e,t)})):n.addListener((e=>{ke(e,t)}))}));const Ie=()=>Ae;function Ce(e){return function(t){const n="local"===e?localStorage:sessionStorage;return JSON.parse(n.getItem(t)??"null")}}function Re(e){var t,n;return!(null===(t=e?e.flags:null===(n=pa())||void 0===n?void 0:n.getFeatureFlags())||void 0===t||!t["brick-next-v3-strict-mode"])}function Te(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];const a=0===r.length?"":",";e?console.error(`${t} is dropped in v3 strict mode${a}`,...r):console.warn(`${t} is deprecated in v3 and will be dropped in strict mode${a}`,...r)}const Oe=new Set(["prefix"]);var xe=new WeakMap;const _e=function(){const e=k();if(e)return Object.freeze({define:(t,n)=>e.getRuntime().registerCustomTemplate(t,n)})}()||new class{constructor(){(0,i.A)(this,xe,new Map)}define(e,t){var n,r;let o=(0,l.A)(xe,this).has(e);o?console.warn(`Custom template of "${e}" already registered.`):(o=!!customElements.get(e),o&&console.warn(`Custom template of "${e}" already defined by customElements.`));const a=Re(),i=(null===(n=t.proxy)||void 0===n?void 0:n.properties)??{},s=[],c=[];for(const[t,n]of Object.entries(i))n.asVariable?(Te(a,"Template `asVariable`",e,t),a||c.push(t)):n.mergeProperty||n.refTransform?console.error("Template `mergeProperty` and `refTransform` are dropped in v3:",e,t):n.ref&&s.push([t,n]);const u={...t,proxy:{...t.proxy,properties:Object.fromEntries(s)},state:(t.state?a?t.state:t.state.map((e=>({expose:!0,...e}))):[]).concat(c.map((e=>({name:e,expose:!0}))))};(0,l.A)(xe,this).set(e,{...u,name:e});const d=(f=u.state,(0,g.uniq)((null==f?void 0:f.filter((e=>e.expose)).map((e=>e.name)))??[]));var f;const p=Object.entries((null===(r=u.proxy)||void 0===r?void 0:r.methods)??{}),h=d.concat(s.map((e=>e[0]))),m=p.map((e=>e[0])),v=h.concat(m).filter((e=>e in HTMLElement.prototype&&!Oe.has(e)));if(v.length>0&&(Te(a,"Using native HTMLElement properties as template properties or methods",e,...v),a))throw new Error(`In custom template "${e}", ${v.map((e=>`"${e}"`)).join(", ")} are native HTMLElement properties, and should be avoid to be used as brick properties or methods.`);if(!o){class t extends HTMLElement{get $$typeof(){return"custom-template"}static get _dev_only_definedProperties(){return h}static get _dev_only_definedMethods(){return m}$$getElementByRef(e){var t;return null===(t=this.$$tplStateStore)||void 0===t||null===(t=t.hostBrick)||void 0===t||null===(t=t.tplHostMetadata)||void 0===t||null===(t=t.internalBricksByRef.get(e))||void 0===t?void 0:t.element}connectedCallback(){let e=this.shadowRoot;e||(e=this.attachShadow({mode:"open"}));const t=document.createDocumentFragment(),n=document.createElement("style");n.textContent=":host{display:block}:host([hidden]){display:none}";const r=document.createElement("slot");t.appendChild(n),t.appendChild(r),e.appendChild(t)}disconnectedCallback(){this.shadowRoot&&(this.shadowRoot.textContent="")}}for(const n of d)s.some((e=>e[0]===n))?console.error(`Cannot define an exposed state that is also a proxy property: "${n}" in ${e}`):Object.defineProperty(t.prototype,n,{get(){return this.$$tplStateStore.getValue(n)},set(e){var t;null===(t=this.$$tplStateStore)||void 0===t||t.updateValue(n,e,"replace")},enumerable:!0});for(const[e,n]of s)Object.defineProperty(t.prototype,e,{get(){return this.$$getElementByRef(n.ref)[n.refProperty??e]},set(t){var r;const o=null===(r=this.$$getElementByRef)||void 0===r?void 0:r.call(this,n.ref);o&&(o[n.refProperty??e]=t)},enumerable:!0});for(const[e,n]of p)Object.defineProperty(t.prototype,e,{value(){this.$$getElementByRef(n.ref)[n.refMethod??e](...arguments)},enumerable:!0});customElements.define(e,t)}}get(e){return(0,l.A)(xe,this).get(e)}};function Pe(e,t,n){let{tplStateStoreId:r,tplStateStoreMap:o}=e;if(!r)throw new Error(`Using "${t}" outside of a custom template${n??""}`);const a=o.get(r);if(!a)throw new Error(`Template state store is not found when using "${t}"${n??""}.\nThis is a bug of Brick Next, please report it.`);return a}function Me(e,t,n){const r=Pe(e,t,n).hostBrick.element;if(!r)throw new Error(`Template host element is gone when using "${t}"${n??""}.\nThis is a bug of Brick Next, please report it.`);return r}const Be=new Map,Le=new Proxy(Object.freeze({}),{get:(e,t)=>Be.get(t)}),$e=function(){const e=k();if(e)return function(t,n,r){return e.getRuntime().registerWidgetFunctions(t,n,r)}}()||function(e,t,n){if(Be.has(e))throw new Error(`Widget functions of "${e}" already registered`);const{storyboardFunctions:r,registerStoryboardFunctions:o}=pe({widgetId:e,widgetVersion:n});Be.set(e,r),o(t)},Ne=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,Ue=e=>{if("string"!=typeof e)throw new TypeError("Invalid argument expected string");const t=e.match(Ne);if(!t)throw new Error(`Invalid argument not valid semver ('${e}' received)`);return t.shift(),t},Fe=e=>"*"===e||"x"===e||"X"===e,je=e=>{const t=parseInt(e,10);return isNaN(t)?e:t},De=(e,t)=>{if(Fe(e)||Fe(t))return 0;const[n,r]=((e,t)=>typeof e!=typeof t?[String(e),String(t)]:[e,t])(je(e),je(t));return n>r?1:n<r?-1:0},Ke=(e,t)=>{for(let n=0;n<Math.max(e.length,t.length);n++){const r=De(e[n]||"0",t[n]||"0");if(0!==r)return r}return 0},Ve=(e,t,n)=>{qe(n);const r=((e,t)=>{const n=Ue(e),r=Ue(t),o=n.pop(),a=r.pop(),i=Ke(n,r);return 0!==i?i:o&&a?Ke(o.split("."),a.split(".")):o||a?o?-1:1:0})(e,t);return We[n].includes(r)},We={">":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1],"!=":[-1,1]},He=Object.keys(We),qe=e=>{if("string"!=typeof e)throw new TypeError("Invalid operator type, expected string but got "+typeof e);if(-1===He.indexOf(e))throw new Error(`Invalid operator, expected one of ${He.join("|")}`)};function ze(e,t){let n=Aa(e);if(!n&&null!=da&&da.checkInstalledApps&&(n=da.checkInstalledApps.getCheckedApp(e)),!n||"running"===n.installStatus)return!1;if(!t||!n.currentVersion)return!0;const r=t.match(/^([><]=?|=)(.*)$/);try{if(!r)throw new TypeError(`Invalid match version: ${t}`);return Ve(n.currentVersion,r[2],r[1])}catch(e){console.error(e)}return!1}function Ge(e,t,n){let{formStateStoreId:r,formStateStoreMap:o}=e;if(!r)throw new Error(`Using "${t}" outside of form renderer${n??""}`);const a=o.get(r);if(!a)throw new Error(`Form state store is not found when using "${t}"${n??""}.\nThis is a bug of Brick Next, please report it.`);return a}const Ye=new Map;async function Qe(e){var t;const n=null==da||null===(t=da.flowApi)||void 0===t?void 0:t.isFlowApiProvider(e);n&&(e=da.flowApi.FLOW_API_PROVIDER);let r=Ye.get(e);if(r)return r;if(e.includes("-")&&!customElements.get(e))if(n)da.flowApi.registerFlowApiProvider();else if(await(0,d.loadBricksImperatively)([e],ya()),!customElements.get(e))throw new Error(`Provider not defined: "${e}".`);return r=document.createElement(e),Ye.set(e,r),r}let Je=new WeakSet;function Xe(e){if((0,f.isObject)(e)&&!Ze(e))if(Je.add(e),Array.isArray(e))e.forEach(Xe);else{const t=Object.getPrototypeOf(e);t&&t.constructor!==Object||Object.values(e).forEach(Xe)}}function Ze(e){return Je.has(e)}const et=new Map;async function tt(e,t,n){const{useProvider:r,method:o="resolve",args:a=[],onReject:i}=e,{provider:s,field:c}=e;if(s&&!r)throw new Error(`You're using "provider: ${s}" which is dropped in v3, please use "useProvider" instead`);const l=null!=c;if(l){const e=Re();if(Te(e,"`resolve.field`"),e)throw new Error("Using deprecated `resolve.field`")}const[u,d]=await Promise.all([Qe(r),mt(a,t)]),f=null==n?void 0:n.renderId,p=nt(u,r,o,d,n,a,!!f&&f!==wa());let h,{transform:m}=e;try{const e=await p;h=l?(0,g.get)(e,c):e,Xe(h)}catch(e){if(!function(e){return!(null==e||!e.transform)}(i))throw e;m=i.transform,h=e}return m?"string"==typeof m?{[m]:h}:mt(m,{...t,data:h}):h}async function nt(e,t,n,r,o,a,i){let s,c;try{s=JSON.stringify({useProvider:t,method:n,args:r})}catch(e){if(!a)throw e;s=JSON.stringify({useProvider:t,method:n,originalArgs:a})}return"reload"!==(null==o?void 0:o.cache)&&(c=et.get(s)),c||(c=(async o=>{const a=null!=da&&null!==(o=da.flowApi)&&void 0!==o&&o.isFlowApiProvider(t)?await da.flowApi.getArgsOfFlowApi(t,r,n):r;return e[n](...a)})(),i||et.set(s,c)),c}const rt=Symbol.for("pre.evaluated.raw"),ot=Symbol.for("pre.evaluated.context");function at(e){return!(null==e||!e[rt])}function it(e){return e[rt]}function st(e){return"string"==typeof e?(0,T.shouldAllowRecursiveEvaluations)(e):(0,T.shouldAllowRecursiveEvaluations)(e[rt])}const ct=new WeakSet([SyntaxError,TypeError,ReferenceError]);function lt(e){return ct.has(e.constructor)?e.constructor:TypeError}function ut(e,t,n){const{run:r}=dt(e,t,n,!1);return r()}function dt(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;const o=[];if("string"!=typeof e){const n=(0,g.omit)(t,["pendingPermissionsPreCheck","tplStateStoreMap","tplStateStoreScope","formStateStoreMap","formStateStoreScope"]);t={...e[ot],...n},e=e[rt]}const a={usedArgs:new Set},i={usedArgs:new Set};let s;try{s=(0,T.preevaluate)(e,{withParent:!0,hooks:{beforeVisitGlobal(e,t){(0,O.collectAppGetMenuUsage)(a,e,t),(0,O.collectInstalledAppsHasUsage)(i,e,t)}}})}catch(t){const n=`${t.message}, in "${e}"`;throw new(lt(t))(n)}if(a.hasNonStaticUsage)throw new Error(`Non-static usage of "APP.getMenu" is prohibited in v3, check your expression: "${e}"`);if(i.hasNonStaticUsage)throw new Error(`Non-static usage of "INSTALLED_APPS.has" is prohibited in v3, check your expression: "${e}"`);const c={},{attemptToVisitGlobals:l}=s;if(n.lazy||l.has("EVENT")&&!(0,f.hasOwnProperty)(t,"event")||l.has("DATA")&&!(0,f.hasOwnProperty)(t,"data"))return{blockingList:o,run:()=>Object.keys(t).length>0?{[rt]:e,[ot]:t}:e};let u,p,h,m;const v=Re(t);let b,y;(l.has("STATE")||!v&&l.has("TPL"))&&(m=Pe(t,"STATE",`: "${e}"`)),l.has("FORM_STATE")&&(y=Ge(t,"FORM_STATE",`: "${e}"`));const w=W();if(r||w){if(l.has("CTX")&&(u=(0,O.strictCollectMemberUsage)(e,"CTX"),r&&o.push(t.ctxStore.waitFor(u))),m){if(h=(0,O.strictCollectMemberUsage)(e,"STATE"),!v){const t=(0,O.strictCollectMemberUsage)(e,"TPL");for(const e of t)h.add(e)}r&&o.push(m.waitFor(h))}y&&(b=(0,O.strictCollectMemberUsage)(e,"FORM_STATE"),r&&o.push(y.waitFor(b))),l.has("PROCESSORS")&&(p=(0,O.strictCollectMemberUsage)(e,"PROCESSORS",2),r&&o.push((0,d.loadProcessorsImperatively)(p,ya())))}if(r){let n=l.has("PERMISSIONS");if(!n&&l.has("FN")){const t=[...(0,O.strictCollectMemberUsage)(e,"FN")];n=ge(t)}if(n&&o.push(...t.pendingPermissionsPreCheck),a.usedArgs.size>0&&null!=da&&da.menu){const e=[...a.usedArgs];o.push(Promise.all(e.map((e=>da.menu.fetchMenuById(e,t,{getStoryboardByAppId:Ea,resolveData:tt,asyncComputeRealValue:mt})))))}var S;i.usedArgs.size>0&&o.push(null==da||null===(S=da.checkInstalledApps)||void 0===S?void 0:S.waitForCheckingApps([...i.usedArgs]))}return{blockingList:o,run(){var n,r;const{app:o,location:a,query:i,match:d,flags:w,sys:S,ctxStore:E,data:A,event:k}=t,I=t.overrideApp??o;for(const o of l)switch(o){case"ANCHOR":c[o]=a.hash?a.hash.substring(1):null;break;case"APP":if(null==I)throw new ReferenceError(`APP is not defined, in "${e}"`);c[o]={...(0,g.cloneDeep)(I),getMenu:null==da||null===(n=da.menu)||void 0===n?void 0:n.getMenuById};break;case"CTX":c[o]=G({get:(e,t)=>E.getValue(t),ownKeys:()=>Array.from(u)});break;case"DATA":c[o]=A;break;case"EVENT":c[o]=k;break;case"FLAGS":c[o]=z(w);break;case"FORM_STATE":c[o]=G({get:(e,t)=>y.getValue(t),ownKeys:()=>Array.from(b)});break;case"HASH":c[o]=a.hash;break;case"INSTALLED_APPS":c[o]=z({has:ze});break;case"ITEM":case"INDEX":{const n="ITEM"===o?"forEachItem":"forEachIndex";(0,f.hasOwnProperty)(t,n)?c[o]=t[n]:console.error(`Using \`${o}\` but no \`:forEach\` is found, check your expression: "${e}"`);break}case"LOCAL_STORAGE":c[o]=z({getItem:Ce("local")});break;case"MEDIA":c[o]=z(Ie());break;case"MISC":c[o]=pa().getMiscSettings();break;case"PARAMS":if(null==i)throw new ReferenceError(`PARAMS is not defined, in "${e}"`);c[o]=new URLSearchParams(i);break;case"PATH":c[o]=z((null==d?void 0:d.params)??{});break;case"PATH_NAME":c[o]=a.pathname;break;case"PROCESSORS":c[o]=G({get(e,t){const n=M.get(t);if(!n)throw new Error(`'PROCESSORS.${t}' is not registered! Have you installed the relevant brick package?`);return G({get:(e,t)=>n.get(t),ownKeys:()=>Array.from(n.keys())})},ownKeys(){const e=new Set;for(const t of p){const n=t.split(".")[0];e.add(n)}return Array.from(e)}});break;case"QUERY":if(null==i)throw new ReferenceError(`QUERY is not defined, in "${e}"`);c[o]=Object.fromEntries(Array.from(i.keys()).map((e=>[e,i.get(e)])));break;case"QUERY_ARRAY":if(null==i)throw new ReferenceError(`QUERY_ARRAY is not defined, in "${e}"`);c[o]=Object.fromEntries(Array.from(i.keys()).map((e=>[e,i.getAll(e)])));break;case"SESSION_STORAGE":c[o]=z({getItem:Ce("session")});break;case"TPL":if(Te(v,'Using "TPL" in expression',`check your expression: "${e}"`),v)break;case"STATE":c[o]=G({get:(e,t)=>m.getValue(t),ownKeys:()=>Array.from(h)});break;case"SYS":c[o]=z(S??{});break;case"__WIDGET_FN__":c[o]=Le;break;case"__WIDGET_IMG__":c[o]=null==da||null===(r=da.images)||void 0===r?void 0:r.widgetImagesFactory;break;case"__WIDGET_I18N__":c[o]=$}Object.assign(c,le(s.attemptToVisitGlobals,{storyboardFunctions:he,app:I,appendI18nNamespace:t.appendI18nNamespace}));try{const t=(0,T.cook)(s.expression,s.source,{globalVariables:(0,_.supply)(s.attemptToVisitGlobals,c)});return V("evaluation",{raw:e,context:c,result:t}),t}catch(t){const n=`${t.message}, in "${e}"`;throw new(lt(t))(n)}}}}let ft=function(e){return e[e.INITIAL=0]="INITIAL",e[e.USE_BRICK=1]="USE_BRICK",e[e.USE_BRICK_ITEM=2]="USE_BRICK_ITEM",e[e.USE_BRICK_PROPERTIES=3]="USE_BRICK_PROPERTIES",e[e.USE_BRICK_TRANSFORM=4]="USE_BRICK_TRANSFORM",e[e.USE_BRICK_EVENTS=5]="USE_BRICK_EVENTS",e[e.USE_BRICK_IF=6]="USE_BRICK_IF",e[e.USE_BRICK_SLOTS=7]="USE_BRICK_SLOTS",e[e.USE_BRICK_SLOTS_ITEM=8]="USE_BRICK_SLOTS_ITEM",e[e.USE_BRICK_SLOTS_ITEM_BRICKS=9]="USE_BRICK_SLOTS_ITEM_BRICKS",e[e.USE_BRICK_SLOTS_ITEM_BRICKS_ITEM=10]="USE_BRICK_SLOTS_ITEM_BRICKS_ITEM",e[e.USE_BRICK_LIFECYCLE=11]="USE_BRICK_LIFECYCLE",e[e.USE_BRICK_DATA_SOURCE=12]="USE_BRICK_DATA_SOURCE",e}({});function pt(e){switch(e){case ft.USE_BRICK_PROPERTIES:case ft.USE_BRICK_TRANSFORM:case ft.USE_BRICK_EVENTS:case ft.USE_BRICK_IF:case ft.USE_BRICK_LIFECYCLE:case ft.USE_BRICK_DATA_SOURCE:return!0}return!1}function ht(e,t,n){if(pt(e))return e;if(t)switch(e){case ft.USE_BRICK:return ft.USE_BRICK_ITEM;case ft.USE_BRICK_SLOTS_ITEM_BRICKS:return ft.USE_BRICK_SLOTS_ITEM_BRICKS_ITEM}else switch(e){case ft.INITIAL:if("useBrick"===n)return ft.USE_BRICK;break;case ft.USE_BRICK:case ft.USE_BRICK_ITEM:case ft.USE_BRICK_SLOTS_ITEM_BRICKS_ITEM:switch(n){case"properties":return ft.USE_BRICK_PROPERTIES;case"transform":return ft.USE_BRICK_TRANSFORM;case"dataSource":return ft.USE_BRICK_DATA_SOURCE;case"events":return ft.USE_BRICK_EVENTS;case"slots":return ft.USE_BRICK_SLOTS;case"children":return ft.USE_BRICK_SLOTS_ITEM_BRICKS;case"if":return ft.USE_BRICK_IF;case"lifeCycle":return ft.USE_BRICK_LIFECYCLE}break;case ft.USE_BRICK_SLOTS:return ft.USE_BRICK_SLOTS_ITEM;case ft.USE_BRICK_SLOTS_ITEM:if("bricks"===n)return ft.USE_BRICK_SLOTS_ITEM_BRICKS}return ft.INITIAL}async function mt(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=at(e);if(r||"string"==typeof e){const o=n.$$lazyForUseBrick&&pt(n.$$stateOfUseBrick);let a,i=o;return r||(0,T.isEvaluable)(e)?(a=await async function(e,t,n){const{blockingList:r,run:o}=dt(e,t,n,!0);return await Promise.all(r),o()}(e,t,{lazy:o}),i=st(e)):a=o?e:((0,f.hasOwnProperty)(t,"data")?n.noInject?x.transform:x.transformAndInject:n.noInject?bt:x.inject)(e,t),i||Xe(a),a}if(!(0,f.isObject)(e)||Ze(e)||"function"==typeof e)return e;if(Array.isArray(e)){const r=vt(n,!0);return Promise.all(e.map((e=>mt(e,t,r))))}return Object.fromEntries((await Promise.all(Object.entries(e).map((e=>{let[r,o]=e;return Promise.all([mt(r,t),mt(o,t,vt(n,!1,r))])})))).concat(n.ignoreSymbols?[]:Object.getOwnPropertySymbols(e).map((t=>[t,e[t]]))))}function gt(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=at(e);if(r||"string"==typeof e){const o=n.$$lazyForUseBrick&&pt(n.$$stateOfUseBrick);let a,i=o;return r||(0,T.isEvaluable)(e)?(a=ut(e,t),i=st(e)):a=o?e:((0,f.hasOwnProperty)(t,"data")?n.noInject?x.transform:x.transformAndInject:n.noInject?bt:x.inject)(e,t),i||Xe(a),a}if(!(0,f.isObject)(e)||Ze(e)||"function"==typeof e)return e;if(Array.isArray(e)){const r=vt(n,!0);return e.map((e=>gt(e,t,r)))}return Object.fromEntries(Object.entries(e).map((e=>{let[r,o]=e;return[gt(r,t),gt(o,t,vt(n,!1,r))]})).concat(n.ignoreSymbols?[]:Object.getOwnPropertySymbols(e).map((t=>[t,e[t]]))))}function vt(e,t,n){return e.$$lazyForUseBrick?{...e,$$stateOfUseBrick:ht(e.$$stateOfUseBrick,t,n)}:e}function bt(e){return e}async function yt(e,t){return!(0,f.hasOwnProperty)(e,"if")||!!("string"==typeof e.if||at(e.if)?await mt(e.if,t):e.if)}function wt(e,t){return!(0,f.hasOwnProperty)(e,"if")||!!("string"==typeof e.if||at(e.if)?gt(e.if,t):e.if)}function St(e){return!(0,f.hasOwnProperty)(e,"if")||!!e.if}const Et=function(){const e=k();if(e)return e.looseCheckIfByTransform}()||function(e,t){return wt(e,{data:t})};function At(e){let t=!1,n=!1,r=!1;if("string"==typeof e?(0,T.isEvaluable)(e):at(e)){const o="string"==typeof e?e:it(e);if((0,T.isTrackAll)(o)){const e=(0,O.trackAll)(o);e&&(t=e.context,n=e.state,r=e.formState)}else t=(0,O.track)(o,"track context","CTX"),n=(0,O.track)(o,"track state","STATE"),r=(0,O.track)(o,"track formstate","FORM_STATE")}return{contextNames:t,stateNames:n,formStateNames:r}}async function kt(e,t){for(const[n,r,o]of e)if(n===t){const e=await r;if(void 0!==e||!o)return e}}async function It(e){const t={};for(const[n,r,o]of e){const e=await r;void 0===e&&o||!("style"!==n&&"dataset"!==n||(0,f.isObject)(e))||(t[n]=e)}return t}function Ct(e,t){if(t)for(const[n,r]of Object.entries(t))switch(n){case"style":case"dataset":for(const[t,o]of Object.entries(r))e[n][t]=o;break;case"constructor":case"__proto__":case"innerHTML":throw new Error(`set \`${n}\` is prohibited`);default:e[n]=r}}function Rt(e,t,n){const r=function(e,t){return(0,f.isObject)(e)?Object.fromEntries(Object.entries(e).map((e=>{let[n,r]=e;const o=gt(r,t,{$$lazyForUseBrick:!0,$$stateOfUseBrick:"useBrick"===n?ft.USE_BRICK:ft.INITIAL});if("style"!==n&&"dataset"!==n||(0,f.isObject)(o))return[n,o]})).filter(Boolean)):{}}(t,n);Array.isArray(e)||(e=[e]),e.forEach((e=>{Ct(e,r)}))}function Tt(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function Ot(e){return e&&e.sensitive?"":"i"}function xt(e,t,n){return function(e,t,n){void 0===n&&(n={});for(var r=n.strict,o=void 0!==r&&r,a=n.start,i=void 0===a||a,s=n.end,c=void 0===s||s,l=n.encode,u=void 0===l?function(e){return e}:l,d=n.delimiter,f=void 0===d?"/#?":d,p=n.endsWith,h="[".concat(Tt(void 0===p?"":p),"]|$"),m="[".concat(Tt(f),"]"),g=i?"^":"",v=0,b=e;v<b.length;v++){var y=b[v];if("string"==typeof y)g+=Tt(u(y));else{var w=Tt(u(y.prefix)),S=Tt(u(y.suffix));if(y.pattern)if(t&&t.push(y),w||S)if("+"===y.modifier||"*"===y.modifier){var E="*"===y.modifier?"?":"";g+="(?:".concat(w,"((?:").concat(y.pattern,")(?:").concat(S).concat(w,"(?:").concat(y.pattern,"))*)").concat(S,")").concat(E)}else g+="(?:".concat(w,"(").concat(y.pattern,")").concat(S,")").concat(y.modifier);else"+"===y.modifier||"*"===y.modifier?g+="((?:".concat(y.pattern,")").concat(y.modifier,")"):g+="(".concat(y.pattern,")").concat(y.modifier);else g+="(?:".concat(w).concat(S,")").concat(y.modifier)}}if(c)o||(g+="".concat(m,"?")),g+=n.endsWith?"(?=".concat(h,")"):"$";else{var A=e[e.length-1],k="string"==typeof A?m.indexOf(A[A.length-1])>-1:void 0===A;o||(g+="(?:".concat(m,"(?=").concat(h,"))?")),k||(g+="(?=".concat(m,"|").concat(h,")"))}return new RegExp(g,Ot(n))}(function(e,t){void 0===t&&(t={});for(var n=function(e){for(var t=[],n=0;n<e.length;){var r=e[n];if("*"!==r&&"+"!==r&&"?"!==r)if("\\"!==r)if("{"!==r)if("}"!==r)if(":"!==r)if("("!==r)t.push({type:"CHAR",index:n,value:e[n++]});else{var o=1,a="";if("?"===e[s=n+1])throw new TypeError('Pattern cannot start with "?" at '.concat(s));for(;s<e.length;)if("\\"!==e[s]){if(")"===e[s]){if(0==--o){s++;break}}else if("("===e[s]&&(o++,"?"!==e[s+1]))throw new TypeError("Capturing groups are not allowed at ".concat(s));a+=e[s++]}else a+=e[s++]+e[s++];if(o)throw new TypeError("Unbalanced pattern at ".concat(n));if(!a)throw new TypeError("Missing pattern at ".concat(n));t.push({type:"PATTERN",index:n,value:a}),n=s}else{for(var i="",s=n+1;s<e.length;){var c=e.charCodeAt(s);if(!(c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122||95===c))break;i+=e[s++]}if(!i)throw new TypeError("Missing parameter name at ".concat(n));t.push({type:"NAME",index:n,value:i}),n=s}else t.push({type:"CLOSE",index:n,value:e[n++]});else t.push({type:"OPEN",index:n,value:e[n++]});else t.push({type:"ESCAPED_CHAR",index:n++,value:e[n++]});else t.push({type:"MODIFIER",index:n,value:e[n++]})}return t.push({type:"END",index:n,value:""}),t}(e),r=t.prefixes,o=void 0===r?"./":r,a="[^".concat(Tt(t.delimiter||"/#?"),"]+?"),i=[],s=0,c=0,l="",u=function(e){if(c<n.length&&n[c].type===e)return n[c++].value},d=function(e){var t=u(e);if(void 0!==t)return t;var r=n[c],o=r.type,a=r.index;throw new TypeError("Unexpected ".concat(o," at ").concat(a,", expected ").concat(e))},f=function(){for(var e,t="";e=u("CHAR")||u("ESCAPED_CHAR");)t+=e;return t};c<n.length;){var p=u("CHAR"),h=u("NAME"),m=u("PATTERN");if(h||m){var g=p||"";-1===o.indexOf(g)&&(l+=g,g=""),l&&(i.push(l),l=""),i.push({name:h||s++,prefix:g,suffix:"",pattern:m||a,modifier:u("MODIFIER")||""})}else{var v=p||u("ESCAPED_CHAR");if(v)l+=v;else if(l&&(i.push(l),l=""),u("OPEN")){g=f();var b=u("NAME")||"",y=u("PATTERN")||"",w=f();d("CLOSE"),i.push({name:b||(y?s++:""),pattern:b&&!y?a:y,prefix:g,suffix:w,modifier:u("MODIFIER")||""})}else d("END")}}return i}(e,n),t,n)}function _t(e,t,n){return e instanceof RegExp?function(e,t){if(!t)return e;for(var n=/\((?:\?<(.*?)>)?(?!\?)/g,r=0,o=n.exec(e.source);o;)t.push({name:o[1]||r++,prefix:"",suffix:"",modifier:"",pattern:""}),o=n.exec(e.source);return e}(e,t):Array.isArray(e)?function(e,t,n){var r=e.map((function(e){return _t(e,t,n).source}));return new RegExp("(?:".concat(r.join("|"),")"),Ot(n))}(e,t,n):xt(e,t,n)}const Pt=new Map,Mt=1e4;let Bt=0;function Lt(e,t){const{path:n,exact:r=!1,strict:o=!1,sensitive:a=!0}=t;return(Array.isArray(n)?n:[n]).reduce(((t,n)=>{if(t)return t;const{regexp:i,keys:s}=function(e,t){const n=`${t.end}${t.strict}${t.sensitive}`;let r=Pt.get(n);r||Pt.set(n,r=new Map);const o=r.get(e);if(o)return o;const a=[],i={regexp:_t(e,a,t),keys:a};return Bt<Mt&&(r.set(e,i),Bt++),i}(n,{end:r,strict:o,sensitive:a}),c=i.exec(e);if(!c)return null;const[l,...u]=c,d=e===l;return r&&!d?null:{path:n,url:"/"===n&&""===l?"/":l,isExact:d,params:s.reduce(((e,t,n)=>(e[t.name]=u[n],e)),{})}}),null)}function $t(e,t,n){return Lt(n,{path:e.path.replace(/^\$\{APP.homepage\}/,t),exact:e.exact})}const Nt=Symbol.for("tpl.asyncComputedPropsFromHost"),Ut=Symbol.for("tpl.stateStoreId"),Ft=Symbol.for("tpl.externalForEachItem"),jt=Symbol.for("tpl.externalForEachIndex"),Dt=Symbol.for("tpl.externalNoForEach"),Kt=new Set;let Vt=function(e){return e.REQUEST_FAILED="REQUEST_FAILED",e.SOMETHING_WENT_WRONG="SOMETHING_WENT_WRONG",e.LOGIN_TIMEOUT_MESSAGE="LOGIN_TIMEOUT_MESSAGE",e.NETWORK_ERROR="NETWORK_ERROR",e}({});const Wt={[Vt.REQUEST_FAILED]:"Request Failed",[Vt.SOMETHING_WENT_WRONG]:"Something went wrong!",[Vt.LOGIN_TIMEOUT_MESSAGE]:"You haven't logged in or your login session has expired. Login right now?",[Vt.NETWORK_ERROR]:"Network error, please check your network."},Ht={[Vt.REQUEST_FAILED]:"请求失败",[Vt.SOMETHING_WENT_WRONG]:"出现了一些问题!",[Vt.LOGIN_TIMEOUT_MESSAGE]:"您还未登录或登录信息已过期,现在重新登录?",[Vt.NETWORK_ERROR]:"网络错误,请检查您的网络连接。"},qt="core/runtime",zt={en:Wt,zh:Ht};let Gt;const Yt=Object.freeze({show:function(e){if(Gt)return Gt.resolve(e);if("confirm"===e.type){const t=confirm(e.content);return new Promise(((e,n)=>setTimeout((()=>{(t?e:n)()}),1)))}return alert(e.content),new Promise((e=>setTimeout((()=>{e()}),1)))}});function Qt(e){const{search:t,pathname:n}=e,r=n?window.btoa(encodeURIComponent(n)):"",o=t?window.btoa(encodeURIComponent(t)):"";document.cookie=`SALOGINPATH=${r}; path=/`,document.cookie=`SALOGINQUERY=${o}; path=/`}function Jt(e){if(e instanceof Event&&e.target instanceof HTMLScriptElement)return e.target.src;if(e instanceof R.HttpFetchError)return u.i18n.t(`${qt}:${Vt.NETWORK_ERROR}`);if(e instanceof R.HttpResponseError&&e.responseJson){if("string"==typeof e.responseJson.error)return e.responseJson.error;if("string"==typeof e.responseJson.msg)return e.responseJson.msg}return null==e?"Unknown error":e.toString()}function Xt(e){return e instanceof R.HttpResponseError&&401===e.response.status&&!!e.responseJson&&100003===e.responseJson.code}let Zt,en,tn=!1;function nn(e){if(e instanceof R.HttpAbortError)return;if(Xt(e)&&!window.NO_AUTH_GUARD){if(tn)return;return tn=!0,void Yt.show({type:"confirm",content:u.i18n.t(`${qt}:${Vt.LOGIN_TIMEOUT_MESSAGE}`)}).then((()=>{!function(){const e=pa().getFeatureFlags()["sso-enabled"],t=C();Qt(t.location),t.push(e?"/sso-auth/login":"/auth/login",{from:{...t.location,state:void 0}})}(),tn=!1}),(()=>{tn=!1}))}console.error(e);const t=Jt(e);t!==Zt&&(Zt=t,Yt.show({type:"error",title:u.i18n.t(`${qt}:${Vt.REQUEST_FAILED}`),content:t,contentStyle:{whiteSpace:"pre-wrap",wordBreak:"break-word"}}).then((()=>{Zt=void 0})))}const rn=Object.freeze({show:function(e){en?en.resolve(e):alert(e.message)}});function on(e,t,n){t&&Object.entries(t).forEach((t=>{let[r,o]=t;const a=un(o,n,{element:e});e.addEventListener(r,a),e.$$listeners||(e.$$listeners=[]),e.$$listeners.push([r,a]),e.$$eventListeners||(e.$$eventListeners=[]);for(const t of[].concat(o))e.$$eventListeners.push([r,null,t])}))}function an(e){return"string"==typeof e.action}function sn(e){return"string"==typeof e.useProvider}function cn(e){return!(!e.target&&!e.targetRef||!e.method&&!e.properties)}function ln(e){return!!e.then}function un(e,t,n){return function(r){for(const o of[].concat(e))if(wt(o,{...t,event:r}))if(ln(o))un(o.then,t,n)(r);else if(an(o)){const[e,a]=o.action.split(".");switch(o.action){case"history.push":case"history.replace":case"history.pushQuery":case"history.replaceQuery":case"history.pushAnchor":case"history.block":case"history.goBack":case"history.goForward":case"history.reload":case"history.unblock":hn(r,a,o.args,o.callback,t);break;case"window.open":mn(r,o.args,t);break;case"location.reload":case"location.assign":wn(r,a,o.args,t);break;case"localStorage.setItem":case"localStorage.removeItem":case"sessionStorage.setItem":case"sessionStorage.removeItem":Sn(r,e,a,o.args,t);break;case"event.preventDefault":r.preventDefault();break;case"event.stopPropagation":r.stopPropagation();break;case"console.log":case"console.error":case"console.warn":case"console.info":En(r,a,o.args,t);break;case"message.success":case"message.error":case"message.info":case"message.warn":An(r,a,o.args,t);break;case"handleHttpError":nn(r.detail);break;case"context.assign":case"context.replace":case"context.refresh":case"context.load":vn(r,a,o.args,o.batch??!0,o.callback,t);break;case"state.update":case"state.refresh":case"state.load":bn(r,a,o.args,o.batch??!0,o.callback,t);break;case"tpl.dispatchEvent":{const[e,n]=Cn(o.args,t,r);Me(t,o.action,`: ${e}`).dispatchEvent(new CustomEvent(e,n));break}case"formstate.update":yn(r,o.args,o.callback,t);break;case"message.subscribe":case"message.unsubscribe":kn(r,a,o.args,t,n,o.callback);break;case"theme.setDarkTheme":case"theme.setLightTheme":te("theme.setDarkTheme"===o.action?"dark":"light");break;case"theme.setTheme":{const[e]=Cn(o.args,t,r);te(e);break}case"mode.setDashboardMode":case"mode.setDefaultMode":se("mode.setDashboardMode"===o.action?"dashboard":"default");break;default:console.error("unknown event listener action:",o.action)}}else sn(o)?dn(r,o,t,n):cn(o)?fn(r,o,t,n):console.error("unknown event handler:",o);else o.else&&un(o.else,t,n)(r)}}async function dn(e,t,n,r){try{pn(e,await Qe(t.useProvider),t,"saveAs"!==t.method?"resolve":"saveAs",n,r)}catch(e){console.error(Jt(e))}}function fn(e,t,n,r){let o=[];const a=t.target,i=t.targetRef;let s=a;if(("string"==typeof a?(0,T.isEvaluable)(a):at(a))&&(s=gt(a,{...n,event:e})),"string"==typeof s)if("_self"===s)o.push(r.element);else if(t.multiple)o=Array.from(document.querySelectorAll(s));else{const e=document.querySelector(s);null!==e&&o.push(e)}else if(s)s instanceof HTMLElement?o.push(s):console.error("unexpected target:",s);else if(i){let t=i;("string"==typeof i?(0,T.isEvaluable)(i):at(i))&&(t=gt(i,{...n,event:e}));const r=[].concat(t),a=Me(n,"targetRef",`: ${r.join(", ")}`);o.push(...r.map((e=>{var t;return null===(t=a.$$getElementByRef)||void 0===t?void 0:t.call(a,e)})).filter(Boolean))}0!==o.length?function(e){return!!e.method}(t)?o.forEach((o=>{pn(e,o,t,t.method,n,r,{useEventAsDefault:!0})})):function(e){return!!e.properties}(t)&&Rt(o,t.properties,{...n,event:e}):console.error("target not found:",a||i)}async function pn(e,t,n,r,o,a,i){if("function"!=typeof t[r])return void console.error("target has no method:",{target:t,method:r});const s=async()=>{var a;let s=Cn(n.args,o,e,i);var c;return sn(n)&&null!=da&&null!==(a=da.flowApi)&&void 0!==a&&a.isFlowApiProvider(n.useProvider)&&(s=await da.flowApi.getArgsOfFlowApi(n.useProvider,s,r,null===(c=n.sse)||void 0===c?void 0:c.stream)),t[r](...s)};if(!n.callback)return void s();const c=In(n.callback,o,a),l={progress:c("progress"),success:c("success"),error:c("error"),finally:c("finally")};if(sn(n)){var u,d;const t={...o,event:e};if(gt(null===(u=n.sse)||void 0===u?void 0:u.stream,t))return void async function(e,t){let{progress:n,success:r,error:o,finally:a}=t;const i=wa();try{const t=await e();for await(const e of t){if(i!==wa())return;null==n||n(e)}if(i!==wa())return;null==r||r()}catch(e){if(i!==wa())return;null==o||o(e)}finally{null==a||a()}}(s,l);if(gt(null===(d=n.poll)||void 0===d?void 0:d.enabled,t))return void function(e,t,n,r){let{progress:o,success:a,error:i,finally:s}=t;const{expectPollStopImmediately:c,expectPollEnd:l}=n,{interval:u,leadingRequestDelay:d,continueOnError:f,delegateLoadingBar:p}=gt((0,g.pick)(n,["interval","leadingRequestDelay","continueOnError","delegateLoadingBar"]),r),h=wa();let m;async function v(){let t;Kt.delete(m);try{var n;if(t=null===(n=gt(c,r))||void 0===n?void 0:n(),t)null==s||s();else{var d;const n=await e(),i=null===(d=gt(c,r))||void 0===d?void 0:d();var g;t=i||h!==wa(),t?i&&(null==s||s()):(null==o||o(n),null!==(g=gt(l,r))&&void 0!==g&&g(n)?(p&&window.dispatchEvent(new Event("request.end")),null==a||a(n),null==s||s()):b(u??3e3))}}catch(e){var v;const n=null===(v=gt(c,r))||void 0===v?void 0:v();t=n||h!==wa(),t?n&&(null==s||s()):(null==i||i(e),f?b(u??3e3):null==s||s())}finally{p&&t&&window.dispatchEvent(new Event("request.end"))}}function b(e){m=setTimeout(v,e),Kt.add(m)}b(d??0),p&&window.dispatchEvent(new Event("request.start"))}(s,l,n.poll,t)}try{const e=await s();l.success(e)}catch(e){l.error(e)}finally{l.finally()}}function hn(e,t,n,r,o){let a=0,i=!1,s=t;switch(t){case"push":case"replace":case"pushQuery":case"replaceQuery":case"pushAnchor":a=2,i=!0;break;case"reload":i=!0;break;case"block":a=1,s="setBlockMessage"}let c=[];if(a>0&&(c=Cn(n,o,e,{useEventDetailAsDefault:!0}),c.length=a),i&&r){const e=In(r,o,void 0);c.push((t=>{e(t?"error":"success")({blocked:t}),e("finally")({blocked:t})}))}C()[s](...c)}function mn(e,t,n){const[r,o,a]=Cn(t,n,e);window.open(r,o||"_self",a)}function gn(e,t,n,r,o,a){t?r.updateValues(e,n,(e=>Cn(e,o,a)[0])):e.forEach((e=>{const{name:t,value:i}=Cn([e],o,a)[0];r.updateValue(t,i,n)}))}function vn(e,t,n,r,o,a){if(!Array.isArray(n)||!n.every(f.isObject)||"assign"!==t&&"replace"!==t){const[r,i]=Cn(n,a,e);a.ctxStore.updateValue(r,i,t,o,a)}else gn(n,r,t,a.ctxStore,a,e)}function bn(e,t,n,r,o,a){if(Array.isArray(n)&&n.every(f.isObject)&&"update"===t)gn(n,r,"replace",Pe(a,`state.${t}`,`: ${JSON.stringify(n)}`),a,e);else{const[r,i]=Cn(n,a,e);Pe(a,`state.${t}`,`: ${r}`).updateValue(r,i,"update"===t?"replace":t,o,a)}}function yn(e,t,n,r){const[o,a]=Cn(t,r,e);Ge(r,"formstate.update",`: ${o}`).updateValue(o,a,"replace",n,r)}function wn(e,t,n,r){if("assign"===t){const[t]=Cn(n,r,e);location.assign(t)}else location[t]()}function Sn(e,t,n,r,o){const a="localStorage"===t?localStorage:sessionStorage,[i,s]=Cn(r,o,e);"setItem"===n?void 0!==s&&a.setItem(i,JSON.stringify(s)):a.removeItem(i)}function En(e,t,n,r){console[t](...Cn(n,r,e,{useEventAsDefault:!0}))}function An(e,t,n,r){const o=Cn(n,r,e,{useEventAsDefault:!0});rn.show({type:t,message:o[0]})}async function kn(e,t,n,r,o,a){const i=()=>{var o;const a=Cn(n,r,e);return null==da||null===(o=da.messageDispatcher)||void 0===o?void 0:o[t](...a)};if(!a)return void i();const s=In(a,r,o);try{const e=await i();s("success")(e)}catch(e){s("error")(e)}finally{s("finally")()}}function In(e,t,n){return function(r){return function(o){const a=null==e?void 0:e[r];if(a)try{const e=new CustomEvent(`callback.${r}`,{detail:o});un(a,t,n)(e)}catch(e){console.error(e)}else"error"===r&&console.error("Unhandled callback error:",o)}}}function Cn(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return Array.isArray(e)?gt(e,{...t,event:n}):r.useEventAsDefault?[n]:r.useEventDetailAsDefault?[n.detail]:[]}function Rn(e){var t;const{ref:n,runtimeContext:r,element:o}=e;if(!n||!r.tplStateStoreId)return;const{hostBrick:a}=Pe(r,"bindTemplateProxy"),i=a.tplHostMetadata;i.internalBricksByRef.set(n,e);const s=null===(t=i.proxy)||void 0===t?void 0:t.events;if(s)for(const[e,t]of Object.entries(s))if(t.ref===n){var c;const n=t=>{t.bubbles&&t.stopPropagation(),a.element.dispatchEvent(new CustomEvent(e,{detail:t.detail,bubbles:t.bubbles,cancelable:t.cancelable,composed:t.composed}))},r=t.refEvent??e;o.addEventListener(r,n),(c=o).$$proxyListeners??(c.$$proxyListeners=[]),o.$$proxyListeners.push([r,n])}}function Tn(e){const{ref:t,runtimeContext:n,element:r}=e;if(null==n||!n.tplStateStoreId||!t)return;const{hostBrick:o}=Pe(n,"unbindTemplateProxy");o.tplHostMetadata.internalBricksByRef.delete(t);for(const[e,t]of r.$$proxyListeners??[])r.removeEventListener(e,t);delete r.$$proxyListeners}let On=function(e){return e[e.ROOT=1]="ROOT",e[e.BRICK=2]="BRICK",e[e.PLACEHOLDER=3]="PLACEHOLDER",e}({});function xn(e){e.replaceChildren()}function _n(e,t){window.DISABLE_REACT_FLUSH_SYNC=!1;let n=e.child;const r=[];for(;n;){if(n.tag===On.BRICK){var o;const a=n.type;a.includes("-")&&!customElements.get(a)&&console.error(`Undefined custom element: ${a}`),"basic-bricks.script-brick"===a&&console.warn("`basic-bricks.script-brick` is deprecated, please take caution when using it");const i=t&&n===e.child?t:document.createElement(a);n.element=i,n.slotId&&i.setAttribute("slot",n.slotId),n.iid&&(i.dataset.iid=n.iid),null!==(o=n.tplHostMetadata)&&void 0!==o&&o.tplStateStoreId&&(i.dataset.tplStateStoreId=n.tplHostMetadata.tplStateStoreId),Ct(i,n.properties),on(i,n.events,n.runtimeContext),n.tplHostMetadata&&(i.$$tplStateStore=Pe({tplStateStoreId:n.tplHostMetadata.tplStateStoreId,tplStateStoreMap:n.runtimeContext.tplStateStoreMap},"mount")),Rn(n),n.portal?r.push(i):n.return&&(n.return.childElements||(n.return.childElements=[]),n.return.childElements.push(i))}if(n.child)n=n.child;else if(n.sibling)n=n.sibling;else{var a;let e=n.return;for(;e;){var i;if(e.childElements)e.tag===On.ROOT?null===(i=e.container)||void 0===i||i.append(...e.childElements):e.element.append(...e.childElements),e.childElements=void 0;if(e.tag===On.ROOT&&r.length>0&&("function"==typeof e.createPortal?e.createPortal():e.createPortal).append(...r),e.sibling)break;e=e.return}n=null===(a=e)||void 0===a?void 0:a.sibling}}setTimeout((()=>{window.DISABLE_REACT_FLUSH_SYNC=!0}))}const Pn=["onMount","onUnmount","onMediaChange","onScrollIntoView","onMessage","onMessageClose"],Mn=["onBeforePageLoad","onPageLoad","onPageLeave","onBeforePageLeave","onAnchorLoad","onAnchorUnload"];var Bn=new WeakMap,Ln=new WeakMap,$n=new WeakMap,Nn=new WeakMap,Un=new WeakMap,Fn=new WeakMap,jn=new WeakMap,Dn=new WeakMap,Kn=new WeakMap,Vn=new WeakSet;class Wn{constructor(e,t){(0,o.A)(this,Vn),(0,a.A)(this,"scope",void 0),(0,a.A)(this,"unknownBricks",void 0),(0,a.A)(this,"renderId",void 0),(0,i.A)(this,Bn,void 0),(0,i.A)(this,Ln,{onBeforePageLoad:[],onPageLoad:[],onPageLeave:[],onBeforePageLeave:[],onAnchorLoad:[],onAnchorUnload:[],onMediaChange:[],onScrollIntoView:[],onMount:[],onUnmount:[],onMessage:[],onMessageClose:[]}),(0,i.A)(this,$n,new Map),(0,i.A)(this,Nn,void 0),(0,i.A)(this,Un,new Map),(0,i.A)(this,Fn,void 0),(0,i.A)(this,jn,void 0),(0,i.A)(this,Dn,new WeakMap),(0,i.A)(this,Kn,new Map),this.scope=e,this.unknownBricks=(null==t?void 0:t.unknownBricks)??"throw",(0,c.A)(Bn,this,null==t?void 0:t.routeHelper),this.renderId=null==t?void 0:t.renderId}setInitialMenuRequestNode(e){(0,c.A)(jn,this,e)}memoizeMenuRequestNode(e,t){(0,l.A)(Dn,this).set(e,t)}getMenuRequests(){const e=[];let t=(0,l.A)(jn,this);for(;t;)if(t.request&&e.push(t.request),t.child)t=t.child;else{for(var n;t&&!t.sibling;)t=t.return;t=null===(n=t)||void 0===n?void 0:n.sibling}return e}async reMergeMenuRequestNodes(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=(0,l.A)(Dn,this).get(t);(0,l.A)(Dn,this).set(t,n);let o,a=e.child;for(;a&&a!==r;)o=a,a=a.sibling;o?(o.sibling=n,n.sibling=null==r?void 0:r.sibling):e.child=n,await(0,l.A)(Bn,this).mergeMenus(this.getMenuRequests())}reBailout(e){return(0,l.A)(Bn,this).bailout(e)}reCatch(e,t){return(0,l.A)(Bn,this).catch(e,t)}async didPerformIncrementalRender(e,t){let n=!1;const r=[];for(const{parentRoutes:o,callback:a}of[...(0,l.A)(Kn,this).values()].reverse()){const i=o[o.length-1];if(r.includes(i))continue;const s=await a(e,t);s&&r.push(...o.slice(0,-1)),!1!==s&&(n=!0)}return n}performIncrementalRender(e,t,n){(0,l.A)(Kn,this).set(e,{parentRoutes:t,callback:n})}registerBrickLifeCycle(e,t){if(!t)return;const n=[...Pn,..."page"===this.scope?Mn:[]];for(const r of n){const n=t[r];n&&(0,l.A)(Ln,this)[r].push({brick:e,handlers:n})}(0,g.isEmpty)(t.useResolves)||console.error("`lifeCycle.useResolves` is dropped in v3:",t)}registerArbitraryLifeCycle(e,t){const n=(0,l.A)(Un,this).get(e);n?n.add(t):(0,l.A)(Un,this).set(e,new Set([t]))}memoize(e,t,n,r){(0,l.A)(Fn,this)||(0,c.A)(Fn,this,new WeakMap);const o=[e??"",...t].join(".");let a=(0,l.A)(Fn,this).get(r);a||(a=new Map,(0,l.A)(Fn,this).set(r,a)),a.set(o,{node:n,last:Yn(n),lastNormal:Qn(n),lastPortal:Xn(n)})}reRender(e,t,n,r){const o=[e??"",...t].join("."),a=(0,l.A)(Fn,this).get(r).get(o),{node:i,last:c,lastNormal:u,lastPortal:d}=a;let f;const p=[];if((null==i?void 0:i.tag)===On.PLACEHOLDER){var h,m;f=(null===(h=function(e){return Jn(e,!0)}(i))||void 0===h?void 0:h.element)??null;const e=null===(m=function(e){return Zn(e,!0)}(i))||void 0===m?void 0:m.element;e&&p.push(e)}else{var g,v;f=(null==u||null===(g=u.element)||void 0===g?void 0:g.nextSibling)??null;let e=null==d||null===(v=d.element)||void 0===v?void 0:v.nextSibling;for(;e&&(p.push(e),e instanceof HTMLElement&&"DIV"===e.tagName);)e=e.nextSibling}const b=Yn(n);let y;a.node=n,a.last=b,a.lastNormal=Qn(n),a.lastPortal=Xn(n);let w=r.child;for(;w&&w!==c;){if(w.sibling===i){y=w;break}w=w.sibling}const S=document.createDocumentFragment(),E=document.createDocumentFragment(),A={tag:On.ROOT,container:S,createPortal:E,child:n};for(w=n;w;)w.return=A,w=w.sibling;const k=er(i,c);for((0,s.A)(Vn,this,Hn).call(this,k),_n(A),y?y.sibling=n:r.child=n,b&&(b.sibling=null==c?void 0:c.sibling),w=n;w;)w.return=r,w=w.sibling;var I,C;if(r.tag===On.ROOT?null===(I=r.container)||void 0===I||I.insertBefore(S,f):null===(C=r.element)||void 0===C||C.insertBefore(S,f),E.childNodes.length>0){var R;let e=n;for(;e&&e.return;)e=e.return;if((null===(R=e)||void 0===R?void 0:R.tag)!==On.ROOT)throw new Error("Cannot find render root node. This is a bug of Brick Next, please report it.");const t="function"==typeof e.createPortal?e.createPortal():e.createPortal;let r=null;for(const e of p)if(t.contains(e)){r=e;break}t.insertBefore(E,r)}const T=er(n,b);(0,s.A)(Vn,this,qn).call(this,T)}dispose(){for(const e of Object.values((0,l.A)(Ln,this)))e.length=0;for(const e of(0,l.A)($n,this).values()){for(const t of e)t.disconnect();e.length=0}(0,l.A)($n,this).clear(),(0,l.A)(Nn,this)&&(Se.removeEventListener("change",(0,l.A)(Nn,this)),(0,c.A)(Nn,this,void 0)),(0,c.A)(Fn,this,void 0),(0,l.A)(Un,this).clear(),(0,l.A)(Kn,this).clear(),(0,c.A)(Dn,this,void 0)}dispatchBeforePageLoad(){(0,s.A)(Vn,this,zn).call(this,"onBeforePageLoad",new CustomEvent("page.beforeLoad"))}dispatchPageLoad(){const e=new CustomEvent("page.load");(0,s.A)(Vn,this,zn).call(this,"onPageLoad",e),window.dispatchEvent(e)}dispatchBeforePageLeave(e){(0,s.A)(Vn,this,zn).call(this,"onBeforePageLeave",new CustomEvent("page.beforeLeave",{detail:e}))}dispatchPageLeave(){(0,s.A)(Vn,this,zn).call(this,"onPageLeave",new CustomEvent("page.leave"))}dispatchAnchorLoad(){const{hash:e}=C().location;e&&"#"!==e?(0,s.A)(Vn,this,zn).call(this,"onAnchorLoad",new CustomEvent("anchor.load",{detail:{hash:e,anchor:e.substring(1)}})):(0,s.A)(Vn,this,zn).call(this,"onAnchorUnload",new CustomEvent("anchor.unload"))}initializeScrollIntoView(){for(const{brick:e,handlers:t}of(0,l.A)(Ln,this).onScrollIntoView)(0,s.A)(Vn,this,Gn).call(this,e,t)}initializeMediaChange(){(0,c.A)(Nn,this,(e=>{(0,s.A)(Vn,this,zn).call(this,"onMediaChange",new CustomEvent("media.change",{detail:z(e.detail)}))})),Se.addEventListener("change",(0,l.A)(Nn,this))}initializeMessageDispatcher(){var e;for(const{brick:e,handlers:n}of(0,l.A)(Ln,this).onMessage)for(const r of[].concat(n)){var t;null==da||null===(t=da.messageDispatcher)||void 0===t||t.onMessage(r.channel,(t=>{un(r.handlers,e.runtimeContext,e)(new CustomEvent("message.push",{detail:t}))}))}null==da||null===(e=da.messageDispatcher)||void 0===e||e.onClose((()=>{(0,s.A)(Vn,this,zn).call(this,"onMessageClose",new CustomEvent("message.close"))}))}dispatchOnMount(){(0,s.A)(Vn,this,zn).call(this,"onMount",new CustomEvent("mount"))}dispatchOnUnmount(){(0,s.A)(Vn,this,zn).call(this,"onUnmount",new CustomEvent("unmount"))}}function Hn(e){const t=[...Pn,..."page"===this.scope?Mn:[]],n=[];for(const r of t){const t=(0,g.remove)((0,l.A)(Ln,this)[r],(t=>e.has(t.brick)));"onUnmount"===r&&n.push(...t)}for(const t of e){var r,o;const e=(0,l.A)($n,this).get(t);if(null!=e&&e.length){for(const t of e)t.disconnect();e.length=0,(0,l.A)($n,this).delete(t)}Tn(t),null===(r=t.element)||void 0===r||delete r.$$tplStateStore,null===(o=t.element)||void 0===o||o.remove()}const a=new CustomEvent("unmount");for(const{brick:e,handlers:t}of n)un(t,e.runtimeContext,e)(a)}function qn(e){const t=new CustomEvent("mount");for(const{brick:n,handlers:r}of(0,l.A)(Ln,this).onMount)e.has(n)&&un(r,n.runtimeContext,n)(t);for(const{brick:t,handlers:n}of(0,l.A)(Ln,this).onScrollIntoView)e.has(t)&&(0,s.A)(Vn,this,Gn).call(this,t,n)}function zn(e,t){for(const{brick:n,handlers:r}of(0,l.A)(Ln,this)[e])un(r,n.runtimeContext,n)(t);const n=(0,l.A)(Un,this).get(e);if(n)for(const e of n)e()}function Gn(e,t){const n=t.threshold??.1,r=new IntersectionObserver(((r,o)=>{r.forEach((r=>{r.isIntersecting&&r.intersectionRatio>=n&&(un(t.handlers,e.runtimeContext,e)(new CustomEvent("scroll.into.view")),o.disconnect())}))}),{threshold:n});r.observe(e.element);let o=(0,l.A)($n,this).get(e);o||(o=[],(0,l.A)($n,this).set(e,o)),o.push(r)}function Yn(e){let t=e;for(;null!==(n=t)&&void 0!==n&&n.sibling;){var n;t=t.sibling}return t}function Qn(e){return Jn(e,!1)}function Jn(e,t){let n,r=e;for(;r;){if(r.tag===On.BRICK&&!r.portal){if(t)return r;n=r}r=r.sibling}return n}function Xn(e){return Zn(e,!1)}function Zn(e,t){let n,r=e;for(;r;){if(r.tag===On.BRICK&&r.portal){if(t)return r;n=r}if(r.child)r=r.child;else if(r.sibling)r=r.sibling;else{var o;let e=r.return;for(;e&&!e.sibling;)e=e.return;r=null===(o=e)||void 0===o?void 0:o.sibling}}return n}function er(e,t){const n=new Set;let r=e;for(;r;)if(r.tag===On.BRICK&&n.add(r),r.child)r=r.child;else{if(r===t)break;if(r.sibling)r=r.sibling;else{var o;let e=r.return;for(;e&&e!==t&&!e.sibling;)e=e.return;if(e===t)break;r=null===(o=e)||void 0===o?void 0:o.sibling}}return n}const tr=new Map;function nr(e){return tr.get(e)}const rr=Symbol.for("root.runtimeContext");async function or(e,t,n){var r,o;const[a,i,s]=Gr({...e[rr]??Sa(),data:t,pendingPermissionsPreCheck:[]});a.tplStateStoreMap??(a.tplStateStoreMap=new Map),a.formStateStoreMap??(a.formStateStoreMap=new Map);const c=new Wn("fragment"),l={tag:On.ROOT,createPortal:null},u=e.transform,d=Re();u&&Te(d,"`useBrick.transform`",'please use "properties" instead, check your useBrick:',e);const f=await Hr(l,d&&!n?e:{errorBoundary:n,...e,properties:{...e.properties,...u}},a,c,[],{}),p=[...i,...s];if(await zr(f,a,p),(null===(r=f.node)||void 0===r?void 0:r.tag)===On.PLACEHOLDER)throw new Error("The root brick of useBrick cannot be an ignored control node");if(null!==(o=f.node)&&void 0!==o&&o.portal)throw new Error("The root brick of useBrick cannot be a portal brick");return l.child=f.node,{tagName:f.node?f.node.type:null,renderRoot:l,rendererContext:c,scopedStores:p}}function ar(e,t){let n,{renderRoot:r,rendererContext:o,scopedStores:a}=e;r.createPortal=()=>{const e=document.querySelector("#portal-mount-point");return n=document.createElement("div"),e.appendChild(n),n},_n(r,t),o.dispatchOnMount(),o.initializeScrollIntoView(),o.initializeMediaChange(),o.initializeMessageDispatcher();for(const e of a)e.mountAsyncData();return{portal:n}}function ir(e,t){let{rendererContext:n}=e;t.portal&&(xn(t.portal),t.portal.remove()),n.dispatchOnUnmount(),n.dispose()}function sr(e,t,n){if(n)throw new Error("Legacy doTransform does not support options in v3");return gt(t,{...Sa(),data:e},{noInject:!0})}function cr(e,t){const n=Ea(e);Object.assign(n,{...t,meta:{...n.meta,...t.meta},$$fulfilling:null,$$fulfilled:!0,$$registerCustomTemplateProcessed:!1}),B(n)}function lr(e,t){const n=Ea(e);let r=!1;const o=e=>`${e.path}.${e.exact}`,a=(e,n)=>e.map((e=>{const i=o(e);return"routes"===e.type?(e.routes=a(e.routes,n),e):i===n?(r=!0,t):e}));n.routes=a(n.routes,o(t)),r||n.routes.unshift(t)}function ur(e,t,n){const r=`${e}.${t.name}`;_e.define(r,{bricks:t.bricks,proxy:t.proxy,state:t.state}),dr(e,t.name,n)}function dr(e,t,n){mr(e,`\${APP.homepage}/_dev_only_/template-preview/${t}`,[{brick:t,...(0,g.pick)(n,"properties","events","lifeCycle","context","slots","children")}])}function fr(e){return`\${APP.homepage}/_dev_only_/snippet-preview/${e}`}function pr(e,t){var n;mr(e,fr(t.snippetId),null!==(n=t.bricks)&&void 0!==n&&n.length?t.bricks:[{brick:"span"}],t.context)}const hr=pr;function mr(e,t,n,r){const{routes:o}=Ea(e),a=o.findIndex((e=>e.path===t)),i={path:t,bricks:n,context:r,menu:!1,exact:!0};-1===a?o.unshift(i):o.splice(a,1,i)}function gr(e,t){let{tplStateStoreId:n}=t;const r=Sa();return n?Pe({...r,tplStateStoreId:n},"STATE").getValue(e):r.ctxStore.getValue(e)}function vr(e){let{tplStateStoreId:t}=e;const n=Sa();return t?Pe({...n,tplStateStoreId:t},"STATE").getAllValues():n.ctxStore.getAllValues()}function br(e){return ya().find((t=>t.id?t.id===e:t.filePath.startsWith(`${e}/`)))}function yr(e){return(0,d.loadBricksImperatively)(e,ya())}function wr(e,t){return(0,d.loadEditorsImperatively)(e,t??ya())}function Sr(){return wa()}async function Er(e,t){let{appId:n,updateStoryboardType:r,collectUsedContracts:o}=t;const a=Ea(n);let i;if("route"===r)i={routes:[e]};else if("template"===r)i={meta:{customTemplates:[e]}};else if("snippet"===r){var s;const t=fr(e.snippetId);i={routes:[null==a||null===(s=a.routes)||void 0===s?void 0:s.find((e=>e.path===t))]}}const c=[];return i&&o&&(await o(i)).forEach((e=>{var t;const[n,r,o]=e.match(/(.*)@(.*):\d\.\d\.\d/);null!=a&&null!==(t=a.meta)&&void 0!==t&&null!==(t=t.contracts)&&void 0!==t&&t.some((e=>e.namespaceId===r&&e.name===o))||c.push(e)})),c}async function Ar(e,t){let{tplStateStoreId:n,routeId:r}=t;const o={...Sa(),tplStateStoreId:n,match:nr(r)};return e.resolve?tt(e.resolve,o,{cache:"reload"}):mt(e.value,o)}function kr(e){const t=Sa();return{app:(null==t?void 0:t.overrideApp)??(null==t?void 0:t.app),location:(0,g.pick)(location,["href","origin","hostname","host"]),...(0,g.pick)(t,["query","sys"]),match:nr(null==e?void 0:e.routeId)}}let Ir;const Cr=[];function Rr(e){Ir=e;const t=vr({tplStateStoreId:e.tplStateStoreId});Or({changeType:"initialize",tplStateStoreId:e.tplStateStoreId,detail:{data:t}})}function Tr(e){Cr.push(e)}function Or(e){setTimeout((()=>{for(const t of Cr)try{t(e)}catch(t){console.error(`RealTimeDataInspectHook failed (${e.changeType}):`,t)}}))}const xr=["onBeforePageLoad","onPageLoad","onBeforePageLeave","onPageLeave","onAnchorLoad","onAnchorUnload"];class _r{constructor(e,t,n,r){(0,a.A)(this,"type",void 0),(0,a.A)(this,"data",new Map),(0,a.A)(this,"changeEventType",void 0),(0,a.A)(this,"pendingStack",[]),(0,a.A)(this,"hostBrick",void 0),(0,a.A)(this,"stateStoreId",void 0),(0,a.A)(this,"batchUpdate",!1),(0,a.A)(this,"batchUpdateContextsNames",[]),(0,a.A)(this,"rendererContext",void 0),(0,a.A)(this,"routeMap",new WeakMap),this.type=e,this.changeEventType="FORM_STATE"===this.type?"formstate.change":"STATE"===this.type?"state.change":"context.change",this.hostBrick=t,this.rendererContext=n,this.stateStoreId=r}getAllValues(){return Object.fromEntries([...this.data.entries()].map((e=>{let[t,{value:n}]=e;return[t,n]})))}getValue(e){var t;return null===(t=this.data.get(e))||void 0===t?void 0:t.value}notifyRealTimeDataChange(e,t){if(Ir){const{tplStateStoreId:n}=Ir;(n?"STATE"===this.type&&this.stateStoreId===n:"CTX"===this.type)&&Or({changeType:"update",tplStateStoreId:n,detail:{name:e,value:t}})}}getAffectListByContext(e){const t=[e];return this.data.forEach(((e,n)=>{e.deps&&e.deps.some((e=>t.includes(e)))&&t.push(n)&&t.push(...this.getAffectListByContext(n))})),t.shift(),[...new Set(t)]}updateValues(e,t,n){if(this.batchUpdate=!0,this.batchUpdateContextsNames=e.map((e=>e.name)),[...new Set(this.batchUpdateContextsNames)].length!==this.batchUpdateContextsNames.length)throw new Error("Batch update not allow to update same item");const r={},o={},a=[];e.forEach((e=>{const{name:o,value:i}=n([e]),s=this.data.get(o);a.push(...this.getAffectListByContext(o)),s&&(r[o]=s),this.updateValue(o,i,t)})),a.filter((e=>!r[e])).forEach((e=>{const t=this.data.get(e);t&&(o[e]=t)}));const i=e=>{for(const n in e){var t;const r=e[n];null===(t=r.eventTarget)||void 0===t||t.dispatchEvent(new CustomEvent(this.changeEventType,{detail:r.value}))}};i(r),i(o),this.batchUpdate=!1}updateValue(e,t,n,r,o){const a=this.data.get(e);if(!a)throw new Error(`${this.type} '${e}' is not defined`);if("refresh"!==n&&"load"!==n)"replace"===n?a.value=t:(0,f.isObject)(a.value)?Object.assign(a.value,t):(console.warn(`Non-object current value of "${this.type}.${e}" for "context.assign", try "context.replace" instead.`),a.value=t),this.batchUpdate||a.eventTarget.dispatchEvent(new CustomEvent(this.changeEventType,{detail:a.value}));else{if(!a.useResolve)throw new Error(`You can not ${n} "${this.type}.${e}" which is not using resolve`);let i;"load"===n&&(a.loaded?i=Promise.resolve(a.value):a.loading&&(i=a.loading));const s=e=>{var t;let n;return"FlowApiNotFoundError"===(null==e?void 0:e.name)&&!!(n=null===(t=this.rendererContext)||void 0===t?void 0:t.renderId)&&n!==wa()};if(i||(i=a.loading=a.load({cache:"load"===n?"default":"reload",...t}),i.then((e=>{this.finishLoad(a,e)}),(e=>{!a.useResolve||s(e)||null!=r&&r.error||nn(e)}))),r){const e=In(r,o);i.then((t=>{e("success")({value:t}),e("finally")()}),(t=>{!s(t)&&r.error&&e("error")(t),e("finally")()}))}}}finishLoad(e,t){e.useResolve&&(e.loaded=!0,e.value=t,e.eventTarget.dispatchEvent(new CustomEvent(this.changeEventType,{detail:t})))}define(e,t,n,r){if(Array.isArray(e)&&e.length>0){const o=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"CTX";const r=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"CTX",n=arguments.length>2?arguments[2]:void 0;const r=new Map;for(const o of e){const e=[o.if,o.value,o.resolve],a=(0,O.collectMemberUsage)(e,t);if(!n&&"STATE"===t){const t=(0,O.collectMemberUsage)(e,"TPL");for(const e of t.usedProperties)a.usedProperties.add(e);t.hasNonStaticUsage&&(a.hasNonStaticUsage=!0)}r.set(o,a)}return r}(e,n,arguments.length>3?arguments[3]:void 0),o=new Map;for(const e of Array.from(r.keys()).map((e=>e.name)))o.set(e,(o.get(e)??0)+1);const a=Array.from(r.values()).some((e=>e.hasNonStaticUsage)),i=new WeakSet,s=new Map,c=new Map([...new Set(e.map((e=>e.name)))].map((e=>[e,new Promise(((t,n)=>{s.set(e,{resolve:t,reject:n})}))]))),l=async e=>{i.add(e);const n=await t(e);r.delete(e);const a=o.get(e.name)??0;if(n){if(s.get(e.name).resolve(),o.delete(e.name),0===a)throw new Error(`Duplicated context defined: ${e.name}`)}else 1===a?(s.get(e.name).resolve(),o.delete(e.name)):o.set(e.name,a-1);await d()};let u=a;async function d(){const e=Array.from(r.entries()).filter(function(e,t){return(n,r)=>t?0===r:![...n[1].usedProperties].some((t=>e.has(t)))}(o,u)).map((e=>e[0])).filter((e=>!i.has(e)));await Promise.all(e.map(l))}return{pendingResult:d().then((async()=>{r.size>0&&(function(e,t){const n=new Map(e),r=new Set(Array.from(n.keys()).map((e=>e.name))),o=()=>{let e=!1;for(const[t,o]of n.entries())[...o.usedProperties].some((e=>r.has(e)))||(n.delete(t),r.delete(t.name),e=!0);e&&o()};if(o(),n.size>0)throw new ReferenceError(`Circular ${t} detected: ${Array.from(n.keys()).map((e=>e.name)).join(", ")}`)}(r,n),u=!0,await d());for(const e of s.values())e.resolve()})).catch((e=>{for(const t of s.values())t.reject(e);throw e})),pendingContexts:c}}(e,(e=>this.resolve(e,t,n,r)),this.type,Re(t));this.pendingStack.push(o)}}onChange(e,t){var n;null===(n=this.data.get(e))||void 0===n||n.eventTarget.addEventListener(this.changeEventType,t)}async waitFor(e){for(const{pendingContexts:t}of this.pendingStack)await Promise.all([...e].map((e=>t.get(e))))}async waitForAll(){for(const{pendingContexts:e}of this.pendingStack)for(const t of e.values())t.catch((()=>{}));for(const{pendingResult:e}of this.pendingStack)await e}mountAsyncData(e){this.data.forEach((t=>{var n;if(t.async&&(!e||null!==(n=this.routeMap.get(e))&&void 0!==n&&n.has(t.name))){if(t.asyncMounted)return void console.error(`Async data "${t.name}" already mounted. This is a bug of Brick Next, please report it.`);t.asyncMounted=!0,t.loading.then((e=>{this.finishLoad(t,e)}))}}))}async resolve(e,t,n,r){if(!await yt(e,t))return!1;let o,a,i,s,c,l;if(n&&("STATE"===this.type?e.expose:"FORM_STATE"===this.type)&&(o=await kt(n,e.name)),void 0===o){if(e.resolve){const n=(0,f.hasOwnProperty)(e,"value");c=e.track&&n&&(0,f.hasOwnProperty)(e.resolve,"if")&&(0,O.strictCollectMemberUsage)(e.resolve.if,this.type).size>0;const r={transform:"value",...e.resolve};if(s=await yt(e.resolve,t),(s||c)&&(a=async e=>{var n;return(await tt(r,t,{...e,renderId:null===(n=this.rendererContext)||void 0===n?void 0:n.renderId})).value}),s)l=e.resolve.async?"async":e.resolve.lazy?"lazy":"eager","eager"===l?o=await a():"async"===l&&(i=a());else if(!n)return!1}s&&"eager"===l||void 0===e.value||(o=await mt(e.value,t))}if(this.data.has(e.name))throw new Error(`${this.type} '${e.name}' has already been declared`);const u={name:e.name,value:o,eventTarget:new be,useResolve:s,load:a,loaded:"eager"===l,loading:i,async:"async"===l,deps:[]};if("lazy"===l){const{trigger:t}=e.resolve;var d;t&&xr.includes(t)&&(null===(d=this.rendererContext)||void 0===d||d.registerArbitraryLifeCycle(t,(()=>{this.updateValue(e.name,void 0,"load")})))}if(e.onChange&&u.eventTarget.addEventListener(this.changeEventType,un(e.onChange,t)),e.track){const n=(0,O.strictCollectMemberUsage)(c?[e.resolve,e.value]:a?e.resolve:e.value,this.type);!a&&(u.deps=[...n]);for(const r of n)this.onChange(r,this.batchAddListener((()=>{u.useResolve=c?wt(e.resolve,t):!!a,u.useResolve?this.updateValue(e.name,{cache:"default"},"refresh"):this.updateValue(e.name,gt(e.value,t),"replace")}),e))}if(u.eventTarget.addEventListener(this.changeEventType,(t=>{this.notifyRealTimeDataChange(e.name,t.detail)})),this.data.set(e.name,u),Array.isArray(r))for(const t of r){const n=this.routeMap.get(t);n?n.add(e.name):this.routeMap.set(t,new Set([e.name]))}return!0}disposeDataInRoutes(e){for(const t of e){const e=this.routeMap.get(t);if(void 0!==e)for(const t of e)this.data.delete(t)}}batchAddListener(e,t){return n=>{this.batchUpdate&&this.batchUpdateContextsNames.includes(t.name)||e(n)}}}function Pr(e,t,n){const{reversedProxies:r,asyncHostPropertyEntries:o,externalSlots:a,tplStateStoreId:i,hostBrick:s}=e;let c;if(t&&r){const i=r.properties.get(t);i&&(u=o,c=i.map((e=>{let{from:t,to:n}=e;const r=u.filter((e=>e[0]===t));if(r.length>0&&n.refProperty)return[n.refProperty,kt(r,t),!0]})).filter(Boolean));const d=r.slots.get(t);if(d&&a){const t=new Map;for(const{from:r,to:o}of d){var l;const i=(null===(l=a[r])||void 0===l?void 0:l.bricks)??[];if(!i.length)continue;const c=o.refSlot??r;let u=t.get(c);if(!u){u=[];const e=(0,f.hasOwnProperty)(n,c)?n[c].bricks.length+1:1;for(let t=0;t<e;t+=1)u.push([]);t.set(c,u)}const d=o.refPosition??-1,p=(0,f.hasOwnProperty)(s.runtimeContext,"forEachItem");u[(0,g.clamp)(d<0?u.length+d:d,0,u.length-1)].push(..."base-layout-v3.tpl-scroll-load-list"!==e.__temporary_tpl_tag_name&&"shrcb-homepage.tpl-custom-scroll-load-list"!==e.__temporary_tpl_tag_name||p?Mr(i,p,s.runtimeContext.forEachItem,s.runtimeContext.forEachIndex):i)}for(const[e,r]of t.entries()){(0,f.hasOwnProperty)(n,e)||(n[e]={type:"bricks",bricks:[]});const t=n[e];t.bricks=r.flatMap(((e,n)=>n<t.bricks.length?e.concat(t.bricks[n]):e)),0===t.bricks.length&&delete n[e]}}}var u;return{[Nt]:c,[Ut]:i}}function Mr(e,t,n,r){return e.map((e=>{let{children:o,slots:a,[Ft]:i,[jt]:s,[Dt]:c,...l}=e;return{...l,...t?{[Ft]:n,[jt]:r}:{[Dt]:!0},slots:":forEach"===l.brick?Jr(o,a):Object.fromEntries(Object.entries(Jr(o,a)??{}).map((e=>{let[o,a]=e;return[o,"routes"===a.type?{type:"routes",routes:Br(a.routes,t,n,r)}:{type:"bricks",bricks:Mr(a.bricks,t,n,r)}]})))}}))}function Br(e,t,n,r){return e.map((e=>"routes"===e.type?{...e,routes:Br(e.routes,t,n,r)}:"redirect"===e.type?e:{...e,bricks:Mr(e.bricks,t,n,r)}))}function Lr(e,t){function n(e){return(0,f.isObject)(e)&&"function"!=typeof e?Array.isArray(e)?e.map(n):Object.fromEntries(Object.entries(e).map((e=>{let[t,o]=e;return(0,f.isObject)(o)&&"useBrick"===t?Array.isArray(o)?[t,o.map(r)]:[t,r(o)]:[t,n(o)]})).concat(Object.getOwnPropertySymbols(e).map((t=>[t,e[t]])))):e}function r(e){const{properties:o,slots:a,children:i,...s}=e,c=Jr(i,a),l=Object.fromEntries(Object.entries(c??{}).map((e=>{let[t,n]=e;return[t,{type:"bricks",bricks:(n.bricks??[]).map(r)}]})));return{...s,properties:n(o),slots:l,...Pr(t,s.ref,l)}}return n(e)}function $r(e,t,n,r,o){var a;const i=(0,g.uniqueId)("tpl-state-"),s={...n.runtimeContext,tplStateStoreId:i};delete s.forEachItem,delete s.forEachIndex,delete s.formStateStoreId;const c=new _r("STATE",n,o,i);s.tplStateStoreMap.set(i,c),s.tplStateStoreScope&&s.tplStateStoreScope.push(c);const{bricks:l,proxy:u,state:d,contracts:f}=_e.get(e);null==da||null===(a=da.flowApi)||void 0===a||a.collectWidgetContract(f),c.define(d,s,r);const{slots:p,children:h,...m}=t,v={...m,brick:e};n.tplHostMetadata={internalBricksByRef:new Map,tplStateStoreId:i,proxy:u};const b={properties:new Map,slots:new Map};if(null!=u&&u.properties)for(const[e,t]of Object.entries(u.properties)){let n=b.properties.get(t.ref);n||(n=[],b.properties.set(t.ref,n)),n.push({from:e,to:t})}if(null!=u&&u.slots)for(const[e,t]of Object.entries(u.slots)){let n=b.slots.get(t.ref);n||(n=[],b.slots.set(t.ref,n)),n.push({from:e,to:t})}const y={reversedProxies:b,asyncHostPropertyEntries:r,externalSlots:Jr(h,p),tplStateStoreId:i,hostBrick:n,__temporary_tpl_tag_name:e};return v.slots={"":{type:"bricks",bricks:l.map((e=>Nr(e,y)))}},v}function Nr(e,t){null===e.if&&delete e.if;const{properties:n,slots:r,children:o,...a}=e,i=Jr(o,r),s=Object.fromEntries(Object.entries(i??{}).map((e=>{let[n,r]=e;return[n,{type:"bricks",bricks:(r.bricks??[]).map((e=>Nr(e,t)))}]})));return{...a,properties:Lr(n,t),slots:s,...Pr(t,a.ref,s)}}const Ur="form-renderer.form-renderer",Fr=Symbol.for("form.stateStoreId"),jr=["forms.general-form","form.general-form","eo-form"];function Dr(e,t,n){const{id:r,bricks:o,events:a,context:i,mountPoint:s,instanceId:c}=e;let{brick:l,properties:u}=e;const d=t.find((e=>e.fieldId===r));if(d){const e=function(e){let t;const n={id:e.fieldId,name:e.fieldId,label:e.name,dataset:{testid:e.fieldId}},r=()=>{var t,n;return{readOnly:null===(t=e.limit)||void 0===t?void 0:t.includes("READONLY"),required:null===(n=e.limit)||void 0===n?void 0:n.includes("REQUIRED")}};switch(e.fieldType){case"INT":t={brick:"forms.general-input-number",properties:{...n,...r(),placeholder:e.description,precision:0,inputBoxStyle:{width:"100%"}}};break;case"BOOLEAN":t={brick:"forms.general-switch",properties:{...n,...r()}};break;case"FLOAT":t={brick:"forms.general-input-number",properties:{...n,...r(),placeholder:e.description,inputBoxStyle:{width:"100%"}}};break;case"ENUM":t={brick:"forms.general-select",properties:{...n,...r(),options:[{label:"选项一",value:1},{label:"选项二",value:2}],placeholder:e.description,inputBoxStyle:{width:"100%"}}};break;case"ENUMS":t={brick:"forms.general-select",properties:{...n,...r(),mode:"multiple",options:[{label:"选项一",value:1},{label:"选项二",value:2}],placeholder:e.description,inputBoxStyle:{width:"100%"}}};break;case"DATE":case"TIME":t={brick:"forms.general-date-picker",properties:{...n,...r(),placeholder:e.description}};break;case"IP":t={brick:"forms.general-input",properties:{...n,...r(),placeholder:e.description,pattern:"((^s*((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))s*$)|(^s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))(%.+)?s*$))",message:{pattern:"输入字符不匹配IP格式"}}};break;case"JSON":t={brick:"forms.general-textarea",properties:{...n}};break;case"ARRAY":t={brick:"forms.general-select",properties:{...n}};break;case"STRUCTURE":case"STRUCTURE_ARRAY":t={brick:"forms.cmdb-instance-select-panel",properties:{...n,...r()}};break;default:t={brick:"forms.general-input",properties:{...n,...r(),placeholder:e.description}}}return t}(d);l||(l=e.brick),u={...e.properties,...u}}const p={brick:l,properties:u,iid:c,slot:s,events:a,context:i,children:Kr(o,t,n),[Fr]:n};return(0,f.hasOwnProperty)(e,"if")&&(p.if=e.if),p}function Kr(e,t,n){if(Array.isArray(e))return e.map((e=>Dr(e,t,n)))}async function Vr(e,t,n,r,o,a,i,s){const c=await async function(e,t){for(const n of e){if("string"!=typeof n.path)throw console.error("Invalid route with invalid path:",n),new Error("Invalid route with invalid type of path: "+typeof n.path);const e=$t(n,t.app.homepage,t.location.pathname);if(e&&await yt(n,t))return t.app.noAuthGuard||n.public||null==da||!da.auth||da.auth.isLoggedIn()?{match:e,route:n}:"unauthenticated"}return"missed"}(t,n),l={blockingList:[]},u=l.menuRequestNode={return:a};switch(c){case"missed":break;case"unauthenticated":l.unauthenticated=!0;break;default:{var f;const a=l.route=c.route;l.path=c.match.path;const m={...n,match:c.match};a.iid&&(p=a.iid,h=c.match,tr.set(p,h)),s&&m.ctxStore.disposeDataInRoutes(t);const g=o.concat(a);m.ctxStore.define(a.context,m,void 0,g),m.pendingPermissionsPreCheck.push(null==da||null===(f=da.checkPermissions)||void 0===f?void 0:f.preCheckPermissionsForBrickOrRoute(a,(e=>mt(e,m))));const{preLoadBricks:v}=a;if(Array.isArray(v)&&l.blockingList.push((0,d.loadBricksImperatively)(v,ya())),"redirect"===a.type){let e;if(e="string"==typeof a.redirect?await mt(a.redirect,m):(await tt({transform:"redirect",...a.redirect},m)).redirect,"string"!=typeof e)throw console.error("Unexpected redirect result:",e),new Error("Unexpected type of redirect result: "+typeof e);l.redirect={path:e}}else{const n=function(e,t){if(e){if("brick"===e.type)throw console.error("Set menu with brick is dropped in v3:",e),new Error("Set menu with brick is dropped in v3");if("resolve"!==e.type)return mt(e,t);console.warn("Set menu with resolve is not supported in v3 yet:",e)}}(a.menu,m);let o;n&&(u.request=n),s||r.memoizeMenuRequestNode(t,u),o="routes"===a.type?await Vr(e,a.routes,m,r,g,u,i):await Wr(e,a.bricks,m,r,g,u,i),Yr(l,o),Qr(u,o.menuRequestNode)}}}var p,h;return l}async function Wr(e,t,n,r,o,a,i,s,c){!function(e,t,n){function r(e){if((0,f.isObject)(e)&&"function"!=typeof e)if(Array.isArray(e))e.map(r);else for(const[t,n]of Object.entries(e))(0,f.isObject)(n)&&"useBrick"===t?Array.isArray(n)?n.forEach((e=>o(e,!0))):o(n,!0,!0):r(n)}function o(e,a,i){if(a&&(e[rr]=t),r(e.properties),n&&!i)return;const s=Jr(e.children,e.slots);for(const e of Object.values(s??{}))for(const t of e.bricks??[])o(t,a)}for(const t of e)o(t)}(t,n,!0);const l={blockingList:[]},u=c??[];return(await Promise.all(t.map(((t,c)=>Hr(e,t,n,r,o,a,i,u.concat(c),s&&new Map(s)))))).forEach(((t,n)=>{t.hasTrackingControls&&r.memoize(i,u.concat(n),t.node,e),Yr(l,t)})),l}async function Hr(e,t,n,r,o,a,i){let s=arguments.length>7&&void 0!==arguments[7]?arguments[7]:[],c=arguments.length>8&&void 0!==arguments[8]?arguments[8]:new Map;try{return await async function(e,t,n,r,o,a,i,s,c){var l,u;const p={blockingList:[]};if(!t.brick)return t.template?console.error("Legacy templates are dropped in v3:",t):console.error("Invalid brick:",t),p;const{if:h,permissionsPreCheck:m,...v}=t;if(function(e){return"string"==typeof e?(0,T.isTrackAll)(e):at(e)&&(0,T.isTrackAll)(it(e))}(h))return Hr(e,{brick:":if",dataSource:h,permissionsPreCheck:m,slots:{"":{type:"bricks",bricks:[v]}},...Object.getOwnPropertySymbols(t).reduce(((e,n)=>({...e,[n]:t[n]})),{})},n,r,o,a,i,s,c);const y=t[Ut],w=t[Fr],S={...n,tplStateStoreId:y,formStateStoreId:w};(0,f.hasOwnProperty)(t,Ft)?(S.forEachItem=t[Ft],S.forEachIndex=t[jt]):t[Dt]&&(delete S.forEachItem,delete S.forEachIndex);const{context:E}=t;if(Array.isArray(E)&&E.length>0){const e=Re(S);Te(e,"Defining context on bricks","check your brick:",t),e||S.ctxStore.define(E,S)}if(S.pendingPermissionsPreCheck.push(null==da||null===(l=da.checkPermissions)||void 0===l?void 0:l.preCheckPermissionsForBrickOrRoute(t,(e=>mt(e,S)))),!await async function(e,t){return(0,f.isObject)(e.if)&&!at(e.if)?St(await tt(e.if,t)):yt(e,t)}(t,S))return p;const A=t.brick;if(A.startsWith(":")){!function(e){if(":forEach"!==e&&":if"!==e&&":switch"!==e)throw new Error(`Unknown storyboard control node: "${e}"`)}(A);const{dataSource:n}=t,l=async l=>{var u;const d=await mt(n,l),p=":forEach"===A?"":":switch"===A?String(d):d?"":"else",h=Jr(t.children,t.slots),m=h&&(0,f.hasOwnProperty)(h,p)&&(null===(u=h[p])||void 0===u?void 0:u.bricks);if(!Array.isArray(m))return{blockingList:[]};switch(A){case":forEach":return Array.isArray(d)?async function(e,t,n,r,o,a,i,s,c,l){const u={blockingList:[]},d=t.length,f=await Promise.all(t.map(((t,u)=>Promise.all(n.map(((n,f)=>Hr(e,n,{...r,forEachItem:t,forEachIndex:u},o,a,i,s,l.concat(u*d+f),c&&new Map(c))))))));return f.flat().forEach(((t,n)=>{t.hasTrackingControls&&o.memoize(s,l.concat(n),t.node,e),Yr(u,t)})),u}(e,d,m,l,r,o,a,i,c,s):{blockingList:[]};case":if":case":switch":return Wr(e,m,l,r,o,a,i,c,s)}},u=async t=>{const n=await l(t);return n.node??(n.node={tag:On.PLACEHOLDER,return:e}),n},d=await u(S),{onMount:p,onUnmount:h}=t.lifeCycle??{},{contextNames:m,stateNames:v}=At(n);if(m||v){d.hasTrackingControls=!0;let t=0;const o=async()=>{const n=++t,[o,a,c]=Gr(S),l=await u(o),d=[...a,...c];if(await zr(l,o,d),t===n){h&&un(h,S)(new CustomEvent("unmount",{detail:{rerender:!0}})),r.reRender(i,s,l.node,e),p&&un(p,o)(new CustomEvent("mount",{detail:{rerender:!0}}));for(const e of d)e.mountAsyncData()}},a=(0,g.debounce)(o);if(m)for(const e of m)S.ctxStore.onChange(e,a);if(v)for(const e of v)Pe(S,"STATE",`: "${n}"`).onChange(e,a)}return p&&r.registerArbitraryLifeCycle("onMount",(()=>{un(p,S)(new CustomEvent("mount",{detail:{rerender:!1}}))})),h&&r.registerArbitraryLifeCycle("onUnmount",(()=>{un(h,S)(new CustomEvent("unmount",{detail:{rerender:!1}}))})),d}/\.tpl-/.test(A)&&!_e.get(A)&&await Xr((0,d.loadBricksImperatively)([A],ya()),"brick",A,r.unknownBricks);const k=function(e,t){if(!e.includes(".")&&e.startsWith("tpl-")&&t){const n=`${t}.${e}`;if(_e.get(n))return n}return!!_e.get(e)&&e}(A,null===(u=S.app)||void 0===u?void 0:u.id);if(k){const e=c.get(k)??0;if(e>=10)throw new Error(`Maximum custom template stack overflowed: "${k}"`);c.set(k,e+1)}else A.includes("-")&&!customElements.get(A)&&(A===Ur?customElements.define(Ur,class extends HTMLElement{get $$typeof(){return"form-renderer"}}):p.blockingList.push(Xr((0,d.enqueueStableLoadBricks)([A],ya()),"brick",A,r.unknownBricks)));let I,C;A===Ur?({formData:I,...C}=t.properties??{}):C=t.properties;const R=[],x=function(e,t,n){return(0,f.isObject)(e)?Object.entries(e).map((e=>{let[r,o]=e;const{contextNames:a,stateNames:i,formStateNames:s}=At(o);return(a||i||s)&&n.push({contextNames:a,stateNames:i,formStateNames:s,propName:r,propValue:o}),[r,mt(o,t,{$$lazyForUseBrick:!0,$$stateOfUseBrick:"useBrick"===r?ft.USE_BRICK:ft.INITIAL})]})):[]}(C,S,R),_=t[Nt];_&&x.push(..._);const P="script"===A;if(P||"link"===A){const e=await It(x);if(P?e.src:"stylesheet"===e.rel&&e.href){const t=window.PUBLIC_ROOT??"";if(P){const{src:n,...r}=e;await Xr((0,d.loadScript)(n,t,r),"script",n,"silent")}else{const{href:n,...r}=e;await Xr((0,d.loadStyle)(n,t,r),"stylesheet",n,"silent")}return p}}const M={tag:On.BRICK,type:k||A,return:e,slotId:i,events:t.events,runtimeContext:S,portal:t.portal,iid:t.iid,ref:t.ref};p.node=M;const B=(0,O.strictCollectMemberUsage)([t.events,t.lifeCycle],"PROCESSORS",2);B.size>0&&p.blockingList.push(Xr((0,d.loadProcessorsImperatively)(B,ya()),"processors",[...B].join(", "),r.unknownBricks));const L=[];L.push((async()=>{M.properties=await It(x),function(e,t){for(const n of t){const t=()=>{e.element&&Rt(e.element,{[n.propName]:n.propValue},e.runtimeContext)};if(n.contextNames)for(const r of n.contextNames)e.runtimeContext.ctxStore.onChange(r,t);if(n.stateNames){const r=Pe(e.runtimeContext,"STATE",`: "${n.propValue}"`);for(const e of n.stateNames)r.onChange(e,t)}if(n.formStateNames){const r=Ge(e.runtimeContext,"FORM_STATE",`: "${n.propValue}"`);for(const e of n.formStateNames)r.onChange(e,t)}}}(M,R)})()),r.registerBrickLifeCycle(M,t.lifeCycle);let $,N=t;k?N=$r(k,t,M,x,r):A===Ur&&(N=function(e,t,n,r,o){var a;const i="string"==typeof e?JSON.parse(e):e,s=(0,g.uniqueId)("form-state-"),c={...n.runtimeContext,formStateStoreId:s};delete c.forEachItem,delete c.forEachIndex,delete c.tplStateStoreId;const l=new _r("FORM_STATE",void 0,o,s);c.formStateStoreMap.set(s,l),c.formStateStoreScope&&c.formStateStoreScope.push(l);const u=i.context??[];u.some((e=>"params"===e.name))||u.push({name:"params"}),l.define(u,c,r);const d=Dr(i.formSchema,i.fields,s);return jr.includes(d.brick)&&t.events&&(d.events=function(e,t){const n=e??{};for(const[e,r]of Object.entries(t))n[e]=(0,f.hasOwnProperty)(n,e)?[n[e],r].flat():r;return n}(d.events,t.events)),"boolean"!=typeof(null===(a=t.properties)||void 0===a?void 0:a.renderRoot)||t.properties.renderRoot?{...t,slots:void 0,children:[{brick:"eo-micro-view",properties:{style:{padding:"12px"}},children:[d]}]}:{...t,slots:void 0,children:[d]}}(I,t,M,x,r)),N.portal&&(M.slotId=void 0),k?($={...S},delete $.forEachItem,delete $.forEachIndex):$=S;return L.push((async()=>{const e=Jr(N.children,N.slots);if(!e)return;const t=new Map,n=await Promise.all(Object.entries(e).map(((e,n)=>{let[i,s]=e;if("routes"!==s.type)return Wr(M,s.bricks,$,r,o,a,i,c);const l=o[o.length-1];return null!=l&&l.incrementalSubRoutes&&(t.set(n,i),r.performIncrementalRender(s,o,(async(e,t)=>{const{homepage:n}=$.app,{pathname:c}=e;if(!b(n,c)||!o.every((e=>{let r,o;return(r=$t(e,n,t.pathname))&&(o=$t(e,n,c))&&(e!==l||(0,g.isEqual)(r.params,o.params))})))return!1;const[u,d,f]=Gr({...$,location:e,query:new URLSearchParams(e.search)});let p,h=!1,m=[];try{if(p=await Vr(M,s.routes,u,r,o,a,i,!0),p.route){if(r.reBailout(p))return!0;m=[...d,...f],await zr(p,u,[u.ctxStore,...m])}await r.reMergeMenuRequestNodes(a,s.routes,p.menuRequestNode)}catch(e){console.error("Incremental sub-router failed:",e);const t=r.reCatch(e,M);if(!t)return!0;({failed:h,output:p}=t),await r.reMergeMenuRequestNodes(a,s.routes,p.menuRequestNode)}if(r.reRender(i,[],p.node,M),!h){u.ctxStore.mountAsyncData(p.route);for(const e of m)e.mountAsyncData()}return!!p.route||null}))),Vr(M,s.routes,$,r,o,a,i)}))),i={...p,node:void 0,blockingList:[],menuRequestNode:void 0};n.forEach(((e,n)=>{t.has(n)&&r.memoize(t.get(n),[],e.node,M),Yr(i,e),function(e,t){const n=t.menuRequestNode;if(n)if(e.menuRequestNode){let t=e.menuRequestNode;for(;t.sibling;)t=t.sibling;t.sibling=n}else e.menuRequestNode=n}(i,e)})),i.node&&(M.child=i.node),Yr(p,{...i,node:void 0}),Qr(a,p.menuRequestNode=i.menuRequestNode)})()),await Promise.all(L),p}(e,t,n,r,o,a,i,s,c)}catch(n){if(t.errorBoundary)return console.error("Error caught by error boundary:",n),{node:{tag:On.BRICK,type:"div",properties:{textContent:Jt(n),dataset:{errorBoundary:""},style:{color:"var(--color-error)"}},runtimeContext:null,return:e},blockingList:[]};throw n}}function qr(e){return[e.ctxStore,...e.tplStateStoreMap.values(),...e.formStateStoreMap.values()]}function zr(e,t,n){return(0,d.flushStableLoadBricks)(),Promise.all([...e.blockingList,...n.map((e=>e.waitForAll())),...t.pendingPermissionsPreCheck])}function Gr(e){const t=[],n=[];return[{...e,tplStateStoreScope:t,formStateStoreScope:n},t,n]}function Yr(e,t){const{blockingList:n,node:r,menuRequestNode:o,hasTrackingControls:a,...i}=t;if(e.blockingList.push(...n),r)if(e.node){let t=e.node;for(;t.sibling;)t=t.sibling;t.sibling=r}else e.node=r;Object.assign(e,i)}function Qr(e,t){if(t)if(e.child){let n=e.child;for(;n.sibling;)n=n.sibling;n.sibling=t}else e.child=t}function Jr(e,t){let n=t;if(Array.isArray(e)&&!n){n={};for(const t of e){const e=t.slot??"";(0,f.hasOwnProperty)(n,e)||(n[e]={type:"bricks",bricks:[]}),n[e].bricks.push(t)}}return n}function Xr(e,t,n,r){return"silent"===r?e.catch((e=>{console.error('Load %s "%s" failed:',t,n,e)})):e}let Zr,eo,to;function no(){if(!Zr){if(Zr={isInIframe:!1,isInIframeOfSameSite:!1,isInIframeOfNext:!1,isInIframeOfVisualBuilder:!1,isInIframeOfLegacyConsole:!1},window!==window.parent){Zr.isInIframe=!0;try{if(window.origin===window.parent.origin){Zr.isInIframeOfSameSite=!0;const e="/next/"===m(),t=window.parent.location.pathname,n=t.startsWith("/next/");Zr.isInIframeOfNext=0==(Number(e)^Number(n)),Zr.isInIframeOfVisualBuilder=t.startsWith((n?"/next":"")+"/visual-builder/"),Zr.isInIframeOfLegacyConsole=e&&!n}}catch(e){}}Object.freeze(Zr)}return Zr}function ro(e){var t;if(e.$$registerCustomTemplateProcessed)return;e.$$registerCustomTemplateProcessed=!0;const n=null===(t=e.meta)||void 0===t?void 0:t.customTemplates;if(Array.isArray(n))for(const t of n){const n=t.name.includes(".")?t.name:`${e.app.id}.${t.name}`;_e.define(n,t)}}function oo(e){let t;t="8.2"===e?"v8-2":"v8",document.documentElement.dataset.ui=t}const ao="basic.show-watermark";var io=new WeakMap,so=new WeakMap,co=new WeakMap,lo=new WeakMap,uo=new WeakMap,fo=new WeakMap,po=new WeakMap,ho=new WeakMap,mo=new WeakMap,go=new WeakMap,vo=new WeakMap,bo=new WeakMap,yo=new WeakSet;class wo{constructor(e){(0,o.A)(this,yo),(0,i.A)(this,io,void 0),(0,i.A)(this,so,!1),(0,i.A)(this,co,void 0),(0,i.A)(this,lo,void 0),(0,i.A)(this,uo,void 0),(0,i.A)(this,fo,void 0),(0,i.A)(this,po,new Set),(0,i.A)(this,ho,0),(0,i.A)(this,mo,void 0),(0,i.A)(this,go,void 0),(0,i.A)(this,vo,void 0),(0,i.A)(this,bo,void 0),(0,c.A)(io,this,e);const t=C();window.addEventListener("beforeunload",(e=>{(0,s.A)(yo,this,So).call(this,{})?(e.preventDefault(),e.returnValue=""):delete e.returnValue})),t.block(((e,t)=>(0,s.A)(yo,this,So).call(this,{location:e,action:t})))}getRenderId(){return(0,l.A)(mo,this)}getRuntimeContext(){return(0,l.A)(uo,this)}getRecentApps(){return{currentApp:(0,l.A)(go,this),previousApp:(0,l.A)(vo,this)}}getNavConfig(){return(0,l.A)(bo,this)}bootstrap(){window.AbortController&&(eo=new AbortController,R.http.interceptors.request.use((e=>{var t;return{...e,options:{...e.options,signal:null!==(t=e.options)&&void 0!==t&&t.noAbortOnRouteChange?null:eo.signal}}})));const e=C();(0,c.A)(co,this,e.location);let t=0;return e.listen((async(e,n)=>{var r,o,a,i;const u=++t;let d;const f={hash:void 0,state:void 0};var p;if(void 0!==e.key&&("POP"!==n||void 0!==(0,l.A)(co,this).key&&!1!==(null===(r=(0,l.A)(co,this).state)||void 0===r?void 0:r.notify))||(f.key=void 0),((0,h.locationsAreEqual)({...(0,l.A)(co,this),...f},{...e,...f})||"POP"!==n&&!1===(null===(o=e.state)||void 0===o?void 0:o.notify))&&(d=!0),d||null!==(a=e.state)&&void 0!==a&&a.noIncremental||(d=await(null===(p=(0,l.A)(fo,this))||void 0===p?void 0:p.didPerformIncrementalRender(e,(0,l.A)(co,this)))),t===u)if(d)(0,c.A)(co,this,e);else{if(eo&&(eo.abort(),eo=new AbortController),(0,c.A)(co,this,e),null===(i=(0,l.A)(fo,this))||void 0===i||i.dispatchPageLeave(),"POP"===n&&y(v((0,l.A)(io,this),e.pathname)))return void window.location.reload();(0,l.A)(so,this)?(0,c.A)(lo,this,e):(V("locationChange"),(0,s.A)(yo,this,Ao).call(this,e).catch(nn))}})),(0,s.A)(yo,this,Ao).call(this,e.location)}}function So(e){var t;const n=C(),r=n.getBlockMessage();null===(t=(0,l.A)(fo,this))||void 0===t||t.dispatchBeforePageLeave(e);const o=n.getBlockMessage();return!r&&o&&n.unblock(),o}function Eo(e,t,n){var r,o;if((0,c.A)(ho,this,(r=(0,l.A)(ho,this),o=r++,r)),o>10){const t=`Infinite redirect detected: from "${n.pathname}${n.search}${n.hash}" to "${e}"`;throw new Error(t)}C().replace(e,t)}async function Ao(e){(0,c.A)(so,this,!0);try{await(0,s.A)(yo,this,ko).call(this,e)}finally{if((0,c.A)(so,this,!1),(0,l.A)(lo,this)){const e=(0,l.A)(lo,this);(0,c.A)(lo,this,void 0),await(0,s.A)(yo,this,Ao).call(this,e)}}}async function ko(e){var t,n,r,o;const a=(0,c.A)(mo,this,(0,g.uniqueId)("render-id-"));Je=new WeakSet,et.clear(),null==da||null===(t=da.flowApi)||void 0===t||t.clearCollectWidgetContract(),C().unblock();const i=null==da||null===(n=da.pageView)||void 0===n?void 0:n.create(),u=v((0,l.A)(io,this),e.pathname),f=null===(r=(0,l.A)(uo,this))||void 0===r?void 0:r.app,p=null==u||null===(o=u.app)||void 0===o?void 0:o.id;window.BOOTSTRAP_UNION_FILE&&p&&p!==(null==f?void 0:f.id)&&function(e){const{appId:t,version:n}=e;window.APP_ROOT_TPL&&(window.APP_ID=t,window.APP_ROOT=window.APP_ROOT_TPL.replace("{id}",t).replace("{version}",n))}({appId:p,version:u.app.currentVersion}),null!=u&&u.app&&await async function(e){if(!e.$$fulfilled)return e.$$fulfilling||(e.$$fulfilling=async function(e){var t;await(null==da||null===(t=da.fulfilStoryboard)||void 0===t?void 0:t.call(da,e)),B(e),Object.assign(e,{$$fulfilled:!0,$$fulfilling:null})}(e)),e.$$fulfilling}(u);const h=(0,c.A)(go,this,null==u?void 0:u.app);!function(){var e,t,n,r,o;const a=pa().getFeatureFlags(),i=pa().getMiscSettings();if(!a["show-watermark"])return;const s="0.0.0"===(null===(e=window.APP_ROOT)||void 0===e||null===(e=e.match(/versions\/([^/]+)\//))||void 0===e?void 0:e[1])||"0.0.0"===(null===(t=window.APP_ROOT)||void 0===t||null===(t=t.match(/micro-apps\/(?:v2|v3)\/[^/]+\/([^/]+)/))||void 0===t?void 0:t[1]),c=(null==da||null===(n=da.auth)||void 0===n||null===(n=n.getAuth())||void 0===n?void 0:n.username)??"",l=i.watermarkConfig??{flags:{}},u={content:[..."string"==typeof l.content?[l.content]:l.content??[],null!==(r=l.flags)&&void 0!==r&&r["show-development"]&&s?"Development":"",null!==(o=l.flags)&&void 0!==o&&o["show-user"]?c:""].filter(Boolean),zIndex:1001,width:200,font:{fontSize:28},gap:[190,190],...(0,g.omit)(l,["content","flags"])};to?to.resolve(u):(0,d.loadBricksImperatively)([ao],ya()).then((()=>{to=document.createElement(ao),to.resolve(u)}),(e=>{console.error("Load watermark service failed:",e)}))}();const m=f&&h?f.id!==h.id:f!==h,b=pa().getFeatureFlags(),y=(0,l.A)(fo,this),w=(t,n)=>{null==i||i({status:"redirected"}),(0,l.A)(po,this).add(y),(0,s.A)(yo,this,Eo).call(this,t,n,e)},S=()=>{const t=b["sso-enabled"]?"/sso-auth/login":"/auth/login";Qt(e),w(t,{from:e})},E=document.querySelector("#main-mount-point"),A=document.querySelector("#portal-mount-point"),k={tag:On.ROOT,container:E,createPortal:A},I=()=>{var e;xn(E),xn(A),(0,l.A)(po,this).add(y);for(const e of(0,l.A)(po,this))e&&(e.dispatchOnUnmount(),e.dispose());(0,l.A)(po,this).clear(),null==da||null===(e=da.messageDispatcher)||void 0===e||e.reset(),m&&((0,c.A)(vo,this,f),window.dispatchEvent(new CustomEvent("app.change",{detail:{previousApp:f,currentApp:h}})))};if(X(h&&(re()[h.id]||h.theme)||"light"),ae("default"),h){var T,O,x,_,P,M;null==da||null===(T=da.checkInstalledApps)||void 0===T||T.preCheckInstalledApps(u,(e=>!!Aa(e)));const t={bailout:e=>e.unauthenticated?(S(),!0):e.redirect?(w(e.redirect.path,e.redirect.state),!0):void(0,c.A)(ho,this,0),mergeMenus:async e=>{const t=await Promise.all(e);(0,c.A)(bo,this,function(e){const t={breadcrumb:[]};for(const n of e){const{breadcrumb:e}=n;e&&(e.overwrite?t.breadcrumb=e.items:t.breadcrumb.push(...e.items))}return t}(t)),window.dispatchEvent(new CustomEvent("navConfig.change",{detail:(0,l.A)(bo,this)}))},catch:(t,n)=>{if(!Xt(t)||window.NO_AUTH_GUARD){if(!(t instanceof R.HttpAbortError)){const r=pa().getMiscSettings().noAuthGuardLoginPath;return Xt(t)&&r?void w(r,{from:e}):{failed:!0,output:{node:{tag:On.BRICK,type:"div",properties:{textContent:Jt(t),dataset:{errorBoundary:""},style:{color:"var(--color-error)"}},runtimeContext:null,return:n},blockingList:[]}}}(0,l.A)(po,this).add(y)}else S()}},n=(0,c.A)(fo,this,new Wn("page",{routeHelper:t,renderId:a})),r=(0,c.A)(uo,this,{app:h,location:e,query:new URLSearchParams(e.search),flags:b,sys:{...null==da||null===(O=da.auth)||void 0===O?void 0:O.getAuth(),...no(),settings:{brand:pa().getBrandSettings()}},ctxStore:new _r("CTX",void 0,n),pendingPermissionsPreCheck:[null==da||null===(x=da.checkPermissions)||void 0===x?void 0:x.preCheckPermissions(u)],tplStateStoreMap:new Map,formStateStoreMap:new Map});(0,c.A)(bo,this,void 0),ro(u),me(null===(_=u.meta)||void 0===_?void 0:_.functions,h),null==da||null===(P=da.flowApi)||void 0===P||P.collectContract(null===(M=u.meta)||void 0===M?void 0:M.contracts);let o,s=!1,d=[];try{tr.clear();const e={};if(o=await Vr(k,function(e){if(window.parent===window)return e;let t=e;const n=(0,g.findLastIndex)(t,(e=>e.path.startsWith("${APP.homepage}/_dev_only_/template-preview/")));t=[...t.slice(0,n+1),{path:"${APP.homepage}/_dev_only_/template-preview/:templateId",bricks:[{brick:"span"}],menu:!1,exact:!0},...t.slice(n+1)];const r=(0,g.findLastIndex)(t,(e=>e.path.startsWith("${APP.homepage}/_dev_only_/snippet-preview/")));return t=[...t.slice(0,r+1),{path:"${APP.homepage}/_dev_only_/snippet-preview/:snippetId",bricks:[{brick:"span"}],menu:!1,exact:!0},...t.slice(r+1)],t}(u.routes),r,n,[],e),t.bailout(o))return;d=qr(r),await zr(o,r,d),e.child=o.menuRequestNode,n.setInitialMenuRequestNode(e),await t.mergeMenus(n.getMenuRequests())}catch(e){console.error("Router failed:",e);const n=t.catch(e,k);if(!n)return;({failed:s,output:o}=n)}if(k.child=o.node,I(),o.route&&"routes"!==o.route.type||s){if(s||n.dispatchBeforePageLoad(),te(),se(),oo(null==h?void 0:h.uiVersion),_n(k),window.scrollTo(0,0),s)null==i||i({status:"failed"});else{n.dispatchPageLoad(),n.dispatchAnchorLoad(),n.dispatchOnMount(),n.initializeScrollIntoView(),n.initializeMediaChange(),n.initializeMessageDispatcher();for(const e of d)e.mountAsyncData();null==i||i({status:"ok",path:o.path,pageTitle:document.title})}return void V("rendered")}}else{if(!window.NO_AUTH_GUARD&&null!=da&&da.auth&&!da.auth.isLoggedIn())return void S();I()}te(),se();const L={tag:On.BRICK,type:"div",properties:{textContent:"Page not found"},runtimeContext:null,return:k};k.child=L,_n(k),window.scrollTo(0,0),null==i||i({status:"not-found"}),V("rendered")}const Io="undefined"!=typeof BRICK_PACKAGES?BRICK_PACKAGES:null;function Co(e,t){(function(e){return"string"==typeof e&&-1!==e.indexOf(".")&&1===parseFloat(e)})(e)&&(e="100%");var n=function(e){return"string"==typeof e&&-1!==e.indexOf("%")}(e);return e=360===t?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:e=360===t?(e<0?e%t+t:e%t)/parseFloat(String(t)):e%t/parseFloat(String(t))}function Ro(e){return e<=1?"".concat(100*Number(e),"%"):e}function To(e){return 1===e.length?"0"+e:String(e)}function Oo(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*n*(t-e):n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function xo(e){return _o(e)/255}function _o(e){return parseInt(e,16)}var Po={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function Mo(e){var t,n,r,o={r:0,g:0,b:0},a=1,i=null,s=null,c=null,l=!1,u=!1;return"string"==typeof e&&(e=function(e){if(0===(e=e.trim().toLowerCase()).length)return!1;var t=!1;if(Po[e])e=Po[e],t=!0;else if("transparent"===e)return{r:0,g:0,b:0,a:0,format:"name"};var n=No.rgb.exec(e);return n?{r:n[1],g:n[2],b:n[3]}:(n=No.rgba.exec(e))?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=No.hsl.exec(e))?{h:n[1],s:n[2],l:n[3]}:(n=No.hsla.exec(e))?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=No.hsv.exec(e))?{h:n[1],s:n[2],v:n[3]}:(n=No.hsva.exec(e))?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=No.hex8.exec(e))?{r:_o(n[1]),g:_o(n[2]),b:_o(n[3]),a:xo(n[4]),format:t?"name":"hex8"}:(n=No.hex6.exec(e))?{r:_o(n[1]),g:_o(n[2]),b:_o(n[3]),format:t?"name":"hex"}:(n=No.hex4.exec(e))?{r:_o(n[1]+n[1]),g:_o(n[2]+n[2]),b:_o(n[3]+n[3]),a:xo(n[4]+n[4]),format:t?"name":"hex8"}:!!(n=No.hex3.exec(e))&&{r:_o(n[1]+n[1]),g:_o(n[2]+n[2]),b:_o(n[3]+n[3]),format:t?"name":"hex"}}(e)),"object"==typeof e&&(Uo(e.r)&&Uo(e.g)&&Uo(e.b)?(t=e.r,n=e.g,r=e.b,o={r:255*Co(t,255),g:255*Co(n,255),b:255*Co(r,255)},l=!0,u="%"===String(e.r).substr(-1)?"prgb":"rgb"):Uo(e.h)&&Uo(e.s)&&Uo(e.v)?(i=Ro(e.s),s=Ro(e.v),o=function(e,t,n){e=6*Co(e,360),t=Co(t,100),n=Co(n,100);var r=Math.floor(e),o=e-r,a=n*(1-t),i=n*(1-o*t),s=n*(1-(1-o)*t),c=r%6;return{r:255*[n,i,a,a,s,n][c],g:255*[s,n,n,i,a,a][c],b:255*[a,a,s,n,n,i][c]}}(e.h,i,s),l=!0,u="hsv"):Uo(e.h)&&Uo(e.s)&&Uo(e.l)&&(i=Ro(e.s),c=Ro(e.l),o=function(e,t,n){var r,o,a;if(e=Co(e,360),t=Co(t,100),n=Co(n,100),0===t)o=n,a=n,r=n;else{var i=n<.5?n*(1+t):n+t-n*t,s=2*n-i;r=Oo(s,i,e+1/3),o=Oo(s,i,e),a=Oo(s,i,e-1/3)}return{r:255*r,g:255*o,b:255*a}}(e.h,i,c),l=!0,u="hsl"),Object.prototype.hasOwnProperty.call(e,"a")&&(a=e.a)),a=function(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}(a),{ok:l,format:e.format||u,r:Math.min(255,Math.max(o.r,0)),g:Math.min(255,Math.max(o.g,0)),b:Math.min(255,Math.max(o.b,0)),a}}var Bo="(?:".concat("[-\\+]?\\d*\\.\\d+%?",")|(?:").concat("[-\\+]?\\d+%?",")"),Lo="[\\s|\\(]+(".concat(Bo,")[,|\\s]+(").concat(Bo,")[,|\\s]+(").concat(Bo,")\\s*\\)?"),$o="[\\s|\\(]+(".concat(Bo,")[,|\\s]+(").concat(Bo,")[,|\\s]+(").concat(Bo,")[,|\\s]+(").concat(Bo,")\\s*\\)?"),No={CSS_UNIT:new RegExp(Bo),rgb:new RegExp("rgb"+Lo),rgba:new RegExp("rgba"+$o),hsl:new RegExp("hsl"+Lo),hsla:new RegExp("hsla"+$o),hsv:new RegExp("hsv"+Lo),hsva:new RegExp("hsva"+$o),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function Uo(e){return Boolean(No.CSS_UNIT.exec(String(e)))}var Fo=2,jo=.16,Do=.05,Ko=.05,Vo=.15,Wo=5,Ho=4,qo=[{index:7,opacity:.15},{index:6,opacity:.25},{index:5,opacity:.3},{index:5,opacity:.45},{index:5,opacity:.65},{index:5,opacity:.85},{index:4,opacity:.9},{index:3,opacity:.95},{index:2,opacity:.97},{index:1,opacity:.98}];function zo(e){var t=function(e,t,n){e=Co(e,255),t=Co(t,255),n=Co(n,255);var r=Math.max(e,t,n),o=Math.min(e,t,n),a=0,i=r,s=r-o,c=0===r?0:s/r;if(r===o)a=0;else{switch(r){case e:a=(t-n)/s+(t<n?6:0);break;case t:a=(n-e)/s+2;break;case n:a=(e-t)/s+4}a/=6}return{h:a,s:c,v:i}}(e.r,e.g,e.b);return{h:360*t.h,s:t.s,v:t.v}}function Go(e){var t=e.r,n=e.g,r=e.b;return"#".concat(function(e,t,n,r){var o=[To(Math.round(e).toString(16)),To(Math.round(t).toString(16)),To(Math.round(n).toString(16))];return o.join("")}(t,n,r))}function Yo(e,t,n){var r;return(r=Math.round(e.h)>=60&&Math.round(e.h)<=240?n?Math.round(e.h)-Fo*t:Math.round(e.h)+Fo*t:n?Math.round(e.h)+Fo*t:Math.round(e.h)-Fo*t)<0?r+=360:r>=360&&(r-=360),r}function Qo(e,t,n){return 0===e.h&&0===e.s?e.s:((r=n?e.s-jo*t:t===Ho?e.s+jo:e.s+Do*t)>1&&(r=1),n&&t===Wo&&r>.1&&(r=.1),r<.06&&(r=.06),Number(r.toFixed(2)));var r}function Jo(e,t,n){var r;return(r=n?e.v+Ko*t:e.v-Vo*t)>1&&(r=1),Number(r.toFixed(2))}function Xo(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=[],r=Mo(e),o=Wo;o>0;o-=1){var a=zo(r),i=Go(Mo({h:Yo(a,o,!0),s:Qo(a,o,!0),v:Jo(a,o,!0)}));n.push(i)}n.push(Go(r));for(var s=1;s<=Ho;s+=1){var c=zo(r),l=Go(Mo({h:Yo(c,s),s:Qo(c,s),v:Jo(c,s)}));n.push(l)}return"dark"===t.theme?qo.map((function(e){var r,o,a,i=e.index,s=e.opacity;return Go((r=Mo(t.backgroundColor||"#141414"),a=100*s/100,{r:((o=Mo(n[i])).r-r.r)*a+r.r,g:(o.g-r.g)*a+r.g,b:(o.b-r.b)*a+r.b}))})):n}var Zo={red:"#F5222D",volcano:"#FA541C",orange:"#FA8C16",gold:"#FAAD14",yellow:"#FADB14",lime:"#A0D911",green:"#52C41A",cyan:"#13C2C2",blue:"#1890FF",geekblue:"#2F54EB",purple:"#722ED1",magenta:"#EB2F96",grey:"#666666"},ea={},ta={};function na(e){return':root,\n[data-override-theme="light"] {\n'.concat(e,"}")}function ra(e){return'html[data-theme="dark-v2"],\n[data-override-theme="dark-v2"] {\n'.concat(e,"}")}function oa(e){return e.match(/[0-9a-fA-F]{2}/g).map((e=>parseInt(e,16))).join(", ")}function aa(e,t,n){return"dark"===t?Xo(e,{theme:t,backgroundColor:n})[5]:e}function ia(e){const t=[];if(["light","dark"].forEach((n=>{if(e[n])switch(e.type){case"brandColor":t.push(function(e,t){return("dark"===e?ra:na)("string"==typeof(n=t)?" --color-brand: ".concat(n,";\n"):[" --color-brand: ".concat(n.default,";")," --color-brand-hover: ".concat(n.hover,";")," --color-brand-active: ".concat(n.active,";"),""].join("\n"));var n}(n,e[n]));break;case"baseColors":t.push(function(e,t,n){return("dark"===e?ra:na)("".concat(function(e,t){return Object.entries(e).flatMap((e=>{var[n,r]=e;return function(e){if(!/^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(e))throw new Error("Invalid base color name: ".concat(JSON.stringify(e)))}(n),r.map(((e,r)=>[" --palette-".concat(n,"-").concat(r+1,"-channel: ").concat(oa(e),";")].concat("dark"===t?[]:" --palette-".concat(n,"-").concat(r+1,": rgb(var(--palette-").concat(n,"-").concat(r+1,"-channel));")).join("\n"))).concat("")})).join("\n")}(function(e,t,n){return Object.fromEntries(Object.entries(e).map((e=>{var[r,o]=e;return[r,Xo(o,"dark"===t?{theme:t,backgroundColor:n}:void 0)]})))}(t,e,n),e),"\n").concat(function(e,t,n){return Object.entries({green:"green",red:"red",blue:"blue",orange:"orange",cyan:"cyan",purple:"purple",geekblue:"indigo"}).flatMap((r=>{var[o,a]=r;return[" --theme-".concat(o,"-color-rgb-channel: ").concat(oa(aa(t[a],e,n)),";"),..."dark"===e?[]:[" --theme-".concat(o,"-color: var(--palette-").concat(a,"-6);")," --theme-".concat(o,"-border-color: var(--palette-").concat(a,"-3);")]," --theme-".concat(o,"-background: var(--palette-").concat(a,"-").concat("dark"===e?2:1,");"),""]})).join("\n")}(e,t,n)))}(n,e[n],e.backgroundColor));break;case"variables":t.push(function(e,t){return("dark"===e?ra:na)(function(e){return Object.entries(e).map((e=>{var[t,n]=e;return function(e){if(!/^--[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/.test(e))throw new Error("Invalid css variable name: ".concat(JSON.stringify(e)))}(t)," ".concat(t,": ").concat(n,";")})).concat("").join("\n")}(t))}(n,e[n]))}})),t.length>0){const e=document.createElement("style");return e.textContent=t.join("\n\n"),document.head.appendChild(e),()=>{e.remove()}}}let sa,ca,la,ua,da;function fa(e){if(sa)throw new Error("Cannot create multiple runtimes");return window.addEventListener("message",(e=>{let{data:t}=e;if((null==t?void 0:t.source)!==U)return;const n=t.payload;switch(null==n?void 0:n.type){case F:K=n.active;break;case j:D=n.panel}})),da=null==e?void 0:e.hooks,(0,u.initializeI18n)(qt,zt),p.locale(u.i18n.language),u.i18n.on("languageChanged",(()=>{p.locale(u.i18n.language)})),I(),sa=new va,sa}Object.keys(Zo).forEach((function(e){ea[e]=Xo(Zo[e]),ea[e].primary=ea[e][5],ta[e]=Xo(Zo[e],{theme:"dark",backgroundColor:"#141414"}),ta[e].primary=ta[e][5]})),ea.red,ea.volcano,ea.gold,ea.orange,ea.yellow,ea.lime,ea.green,ea.cyan,ea.blue,ea.geekblue,ea.purple,ea.magenta,ea.grey;const pa=function(){const e=k();if(e)return function(){return new Proxy(e.getRuntime(),{get(){switch(arguments.length<=1?void 0:arguments[1]){case"getCurrentApp":case"getRecentApps":case"hasInstalledApp":case"getDesktops":case"getLaunchpadSettings":case"getLaunchpadSiteMap":case"toggleLaunchpadEffect":case"applyPageTitle":case"getNavConfig":case"getFeatureFlags":case"getMiscSettings":case"getBrandSettings":return Reflect.get(...arguments)}}})}}()||function(){return sa};var ha=new WeakMap,ma=new WeakMap,ga=new WeakSet;class va{constructor(){(0,o.A)(this,ga),(0,i.A)(this,ha,!1),(0,i.A)(this,ma,!1),(0,a.A)(this,"version",3)}initialize(e){var t;if((0,l.A)(ha,this))throw new Error("The runtime cannot be initialized more than once");(0,c.A)(ha,this,!0),function(e){(0,f.isObject)(e.settings)&&(0,f.deepFreeze)(e.settings),e.brickPackages&&(0,f.deepFreeze)(e.brickPackages)}(e),ca=e;const{notification:n,dialog:r}=(0,s.A)(ga,this,ba).call(this);var o;!1!==n&&(o=n??"basic.show-notification",(0,this.loadBricks)([o]).then((()=>{en=document.createElement(o)}),(e=>{console.error("Load notification service failed:",e)}))),!1!==r&&function(e,t){t([e]).then((()=>{Gt=document.createElement(e)}),(e=>{console.error("Load dialog service failed:",e)}))}(r??"basic.show-dialog",this.loadBricks),function(e){e&&(e.brandColor?ia({type:"brandColor",...e.brandColor}):e.baseColors?ia({type:"baseColors",...e.baseColors}):e.variables&&ia({type:"variables",...e.variables}))}(null===(t=e.settings)||void 0===t||null===(t=t.misc)||void 0===t?void 0:t.theme)}async bootstrap(e){if(e&&this.initialize(e),(0,l.A)(ma,this))throw new Error("The runtime cannot be bootstrapped more than once");(0,c.A)(ma,this,!0),la=new wo(ca.storyboards),await la.bootstrap()}getRecentApps(){var e;return(null===(e=la)||void 0===e?void 0:e.getRecentApps())??{}}getCurrentApp(){var e;return null===(e=la)||void 0===e?void 0:e.getRecentApps().currentApp}hasInstalledApp(e,t){return ze(e,t)}getFeatureFlags(){var e,t;return{...null===(e=ca)||void 0===e||null===(e=e.settings)||void 0===e?void 0:e.featureFlags,...null===(t=la)||void 0===t||null===(t=t.getRecentApps().currentApp)||void 0===t||null===(t=t.config)||void 0===t||null===(t=t.settings)||void 0===t?void 0:t.featureFlags,"migrate-to-brick-next-v3":!0}}getMiscSettings(){var e,t;return{...null===(e=ca)||void 0===e||null===(e=e.settings)||void 0===e?void 0:e.misc,...null===(t=la)||void 0===t||null===(t=t.getRecentApps().currentApp)||void 0===t||null===(t=t.config)||void 0===t||null===(t=t.settings)||void 0===t?void 0:t.misc}}getBrandSettings(){var e;return{base_title:"DevOps 管理专家",...null===(e=ca)||void 0===e||null===(e=e.settings)||void 0===e?void 0:e.brand}}getLaunchpadSettings(){var e;return{columns:7,rows:4,...null===(e=ca)||void 0===e||null===(e=e.settings)||void 0===e?void 0:e.launchpad}}getDesktops(){var e;return(null===(e=ca)||void 0===e?void 0:e.desktops)??[]}getLaunchpadSiteMap(){var e;return(null===(e=ca)||void 0===e?void 0:e.siteSort)??[]}toggleLaunchpadEffect(e){document.body.classList.toggle("launchpad-open",e)}applyPageTitle(e){const t=this.getBrandSettings().base_title;document.title=e?`${e} - ${t}`:t}getNavConfig(){var e;return null===(e=la)||void 0===e?void 0:e.getNavConfig()}loadBricks(e){return(0,d.loadBricksImperatively)(e,ya())}}function ba(){var e;return(null===(e=ca)||void 0===e||null===(e=e.settings)||void 0===e?void 0:e.presetBricks)??{}}function ya(){var e;return ua??(ua=function(e,t){if(null==t||!t.length)return e;const n=new Map;return[...t,...e].forEach((e=>{const t=e.filePath.split("/")[1];n.has(t)||n.set(t,e)})),Array.from(n.values())}((null===(e=ca)||void 0===e?void 0:e.brickPackages)??Io??window.STANDALONE_BRICK_PACKAGES??[],window.PUBLIC_DEPS))}function wa(){var e;return null===(e=la)||void 0===e?void 0:e.getRenderId()}function Sa(){var e;return null===(e=la)||void 0===e?void 0:e.getRuntimeContext()}function Ea(e){var t;return null===(t=ca)||void 0===t||null===(t=t.storyboards)||void 0===t?void 0:t.find((t=>t.app.id===e))}function Aa(e){var t;return null===(t=Ea(e))||void 0===t?void 0:t.app}function ka(){for(var e,t,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];null==da||null===(e=da.auth)||void 0===e||null===(t=e.authenticate)||void 0===t||t.call(e,...r)}function Ia(){var e;return null==da||null===(e=da.auth)||void 0===e?void 0:e.getAuth()}function Ca(){var e,t;return null==da||null===(e=da.auth)||void 0===e||null===(t=e.logout)||void 0===t?void 0:t.call(e)}function Ra(){var e;return null==da||null===(e=da.auth)||void 0===e?void 0:e.isLoggedIn()}var Ta=new WeakMap;const Oa=new class{constructor(){(0,i.A)(this,Ta,new Map)}define(e,t){if((0,l.A)(Ta,this).has(e))throw new Error(`Custom editor of "${e}" already registered`);(0,l.A)(Ta,this).set(e,t)}get(e){return(0,l.A)(Ta,this).get(e)}};async function xa(e,t,n){return nt(await Qe(e),e,"resolve",t,n)}function _a(e){let t,{portal:n,scope:r="fragment",unknownBricks:o}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=n;t=n||(()=>(a=document.createElement("div"),a.style.position="absolute",a.style.width=a.style.height="0",document.body.append(a),a));let i,s,c=!1;return{async render(n){let{theme:l,uiVersion:u,context:d,functions:f,templates:p,i18n:h,url:m,app:v}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(c)throw new Error("The root is unmounted and cannot be rendered any more");const b=[].concat(n),y=i,w=(0,g.uniqueId)("render-id-");i=new Wn(r,{unknownBricks:o,renderId:w});const S={ctxStore:new _r("CTX",void 0,i),pendingPermissionsPreCheck:[],tplStateStoreMap:new Map,formStateStoreMap:new Map};if(m){const e=new URL(m);S.query=e.searchParams,S.location={pathname:e.pathname,search:e.search,hash:e.hash,state:void 0}}const E={tag:On.ROOT,container:e,createPortal:t};if("page"===r){var A;X(l??"light"),ae("default"),oo(u),v??(v={id:"demo",homepage:"/demo"}),S.app=v;const e={app:v,meta:{i18n:h,customTemplates:p}};null===(A=s)||void 0===A||A(),s=B(e),ro(e),me(f,v)}S.ctxStore.define(d,S);let k,I=!1,C=[];try{k=await Wr(E,b,S,i,[],{}),C=qr(S),await zr(k,S,C)}catch(e){I=!0,k={node:{tag:On.BRICK,type:"div",properties:{textContent:Jt(e),dataset:{errorBoundary:""},style:{color:"var(--color-error)"}},return:E,runtimeContext:null},blockingList:[]}}if(E.child=k.node,null==y||y.dispatchOnUnmount(),null==y||y.dispose(),xn(e),a&&xn(a),"page"===r&&(I||i.dispatchBeforePageLoad(),te(),se()),_n(E),"page"===r&&window.scrollTo(0,0),!I){for(const e of C)e.mountAsyncData();"page"===r&&i.dispatchPageLoad(),i.dispatchOnMount(),i.initializeScrollIntoView(),i.initializeMediaChange(),i.initializeMessageDispatcher()}},unmount(){c||(c=!0,xn(e),a&&(xn(a),n||a.remove()))}}}function Pa(e){let{useRealTimeQuery:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n={...Sa()};t&&(n.query=new URLSearchParams(C().location.search));const r=t=>{if("string"==typeof t){if((0,T.isEvaluable)(t)){const e=ut(t,n);return Xe(e),e}return(0,x.inject)(t,n)}return!(0,f.isObject)(t)||Ze(e)?t:Array.isArray(t)?t.map((e=>r(e))):Object.fromEntries(Object.entries(t).map((e=>{let[t,n]=e;return[r(t),r(n)]})))};return r(e)}}}]);
|
|
3
|
-
//# sourceMappingURL=4.62331183.js.map
|