@next-bricks/data-view 1.3.15 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/dist/bricks.json +12 -8
  2. package/dist/chunks/1491.75d08174.js +3 -0
  3. package/dist/chunks/1491.75d08174.js.map +1 -0
  4. package/dist/chunks/1493.e45be49f.js +2 -0
  5. package/dist/chunks/1493.e45be49f.js.map +1 -0
  6. package/dist/chunks/2836.358bb597.js +2 -0
  7. package/dist/chunks/2836.358bb597.js.map +1 -0
  8. package/dist/chunks/{4837.fc42abd4.js → 4837.5e26fe2a.js} +2 -2
  9. package/dist/chunks/{4837.fc42abd4.js.map → 4837.5e26fe2a.js.map} +1 -1
  10. package/dist/chunks/{7218.b87ba3b8.js → 7218.d2924ff4.js} +2 -2
  11. package/dist/chunks/{7218.b87ba3b8.js.map → 7218.d2924ff4.js.map} +1 -1
  12. package/dist/chunks/8847.9be1eec6.js +2 -0
  13. package/dist/chunks/8847.9be1eec6.js.map +1 -0
  14. package/dist/chunks/basic-index-group.7dd3e9da.js +2 -0
  15. package/dist/chunks/basic-index-group.7dd3e9da.js.map +1 -0
  16. package/dist/chunks/battery-chart.abdaa4e4.js +2 -0
  17. package/dist/chunks/battery-chart.abdaa4e4.js.map +1 -0
  18. package/dist/chunks/cabinet-container.95ec63e8.js +3 -0
  19. package/dist/chunks/cabinet-container.95ec63e8.js.map +1 -0
  20. package/dist/chunks/cabinet-thumbnail.dc01323b.js +3 -0
  21. package/dist/chunks/cabinet-thumbnail.dc01323b.js.map +1 -0
  22. package/dist/chunks/complex-search.2bf04871.js +2 -0
  23. package/dist/chunks/complex-search.2bf04871.js.map +1 -0
  24. package/dist/chunks/crystal-ball-indicator.269b1f6d.js +2 -0
  25. package/dist/chunks/crystal-ball-indicator.269b1f6d.js.map +1 -0
  26. package/dist/chunks/data-display-flipper.fae041d0.js +2 -0
  27. package/dist/chunks/data-display-flipper.fae041d0.js.map +1 -0
  28. package/dist/chunks/gauge-chart.6ed1dfa8.js +2 -0
  29. package/dist/chunks/gauge-chart.6ed1dfa8.js.map +1 -0
  30. package/dist/chunks/loading-panel.b7f40435.js +2 -0
  31. package/dist/chunks/loading-panel.b7f40435.js.map +1 -0
  32. package/dist/chunks/main.dacb91a2.js +2 -0
  33. package/dist/chunks/{main.3775ed28.js.map → main.dacb91a2.js.map} +1 -1
  34. package/dist/chunks/{modern-style-page-title.9fd85677.js → modern-style-page-title.790a17ac.js} +2 -2
  35. package/dist/chunks/{modern-style-page-title.9fd85677.js.map → modern-style-page-title.790a17ac.js.map} +1 -1
  36. package/dist/chunks/modern-style-treemap.0b40defb.js +3 -0
  37. package/dist/chunks/modern-style-treemap.0b40defb.js.map +1 -0
  38. package/dist/chunks/progress-bar-list.b788a7ce.js +2 -0
  39. package/dist/chunks/progress-bar-list.b788a7ce.js.map +1 -0
  40. package/dist/chunks/radar-chart.c9abdd30.js +2 -0
  41. package/dist/chunks/radar-chart.c9abdd30.js.map +1 -0
  42. package/dist/chunks/tabs-drawer.04866e23.js +3 -0
  43. package/dist/chunks/tabs-drawer.04866e23.js.map +1 -0
  44. package/dist/chunks/tabs-page-title.670649e6.js +3 -0
  45. package/dist/chunks/tabs-page-title.670649e6.js.map +1 -0
  46. package/dist/examples.json +21 -18
  47. package/dist/images/9111af40.png +0 -0
  48. package/dist/images/9514fc4d.png +0 -0
  49. package/dist/images/c5f34792.png +0 -0
  50. package/dist/images/e4eec39c.png +0 -0
  51. package/dist/index.fefb1c64.js +2 -0
  52. package/dist/index.fefb1c64.js.map +1 -0
  53. package/dist/manifest.json +175 -141
  54. package/dist/media/78c4b1bd.ttf +0 -0
  55. package/dist/media/792b07b2.ttf +0 -0
  56. package/dist/media/b43f5418.mp4 +0 -0
  57. package/dist/types.json +267 -149
  58. package/dist-types/bootstrap.d.ts +1 -0
  59. package/dist-types/crystal-ball-indicator/index.d.ts +42 -0
  60. package/dist-types/crystal-ball-indicator/index.spec.d.ts +1 -0
  61. package/docs/crystal-ball-indicator.md +37 -0
  62. package/package.json +2 -2
  63. package/dist/chunks/1493.cc58ad97.js +0 -2
  64. package/dist/chunks/1493.cc58ad97.js.map +0 -1
  65. package/dist/chunks/4235.1b0a0cb4.js +0 -3
  66. package/dist/chunks/4235.1b0a0cb4.js.map +0 -1
  67. package/dist/chunks/4263.95819c52.js +0 -2
  68. package/dist/chunks/4263.95819c52.js.map +0 -1
  69. package/dist/chunks/859.fc13536c.js +0 -2
  70. package/dist/chunks/859.fc13536c.js.map +0 -1
  71. package/dist/chunks/basic-index-group.6175f5d7.js +0 -2
  72. package/dist/chunks/basic-index-group.6175f5d7.js.map +0 -1
  73. package/dist/chunks/battery-chart.135855fb.js +0 -2
  74. package/dist/chunks/battery-chart.135855fb.js.map +0 -1
  75. package/dist/chunks/cabinet-container.7ab996bf.js +0 -3
  76. package/dist/chunks/cabinet-container.7ab996bf.js.map +0 -1
  77. package/dist/chunks/cabinet-thumbnail.58a9cb98.js +0 -3
  78. package/dist/chunks/cabinet-thumbnail.58a9cb98.js.map +0 -1
  79. package/dist/chunks/complex-search.8ac80849.js +0 -2
  80. package/dist/chunks/complex-search.8ac80849.js.map +0 -1
  81. package/dist/chunks/data-display-flipper.24911f1b.js +0 -2
  82. package/dist/chunks/data-display-flipper.24911f1b.js.map +0 -1
  83. package/dist/chunks/gauge-chart.511f5852.js +0 -2
  84. package/dist/chunks/gauge-chart.511f5852.js.map +0 -1
  85. package/dist/chunks/loading-panel.e4a103ed.js +0 -2
  86. package/dist/chunks/loading-panel.e4a103ed.js.map +0 -1
  87. package/dist/chunks/main.3775ed28.js +0 -2
  88. package/dist/chunks/modern-style-treemap.63422334.js +0 -3
  89. package/dist/chunks/modern-style-treemap.63422334.js.map +0 -1
  90. package/dist/chunks/progress-bar-list.14beecb9.js +0 -2
  91. package/dist/chunks/progress-bar-list.14beecb9.js.map +0 -1
  92. package/dist/chunks/radar-chart.9ad9bc97.js +0 -2
  93. package/dist/chunks/radar-chart.9ad9bc97.js.map +0 -1
  94. package/dist/chunks/tabs-drawer.ee3fed75.js +0 -3
  95. package/dist/chunks/tabs-drawer.ee3fed75.js.map +0 -1
  96. package/dist/chunks/tabs-page-title.0596468d.js +0 -3
  97. package/dist/chunks/tabs-page-title.0596468d.js.map +0 -1
  98. package/dist/index.6c309c4d.js +0 -2
  99. package/dist/index.6c309c4d.js.map +0 -1
  100. /package/dist/chunks/{4235.1b0a0cb4.js.LICENSE.txt → 1491.75d08174.js.LICENSE.txt} +0 -0
  101. /package/dist/chunks/{cabinet-container.7ab996bf.js.LICENSE.txt → cabinet-container.95ec63e8.js.LICENSE.txt} +0 -0
  102. /package/dist/chunks/{cabinet-thumbnail.58a9cb98.js.LICENSE.txt → cabinet-thumbnail.dc01323b.js.LICENSE.txt} +0 -0
  103. /package/dist/chunks/{modern-style-treemap.63422334.js.LICENSE.txt → modern-style-treemap.0b40defb.js.LICENSE.txt} +0 -0
  104. /package/dist/chunks/{tabs-drawer.ee3fed75.js.LICENSE.txt → tabs-drawer.04866e23.js.LICENSE.txt} +0 -0
  105. /package/dist/chunks/{tabs-page-title.0596468d.js.LICENSE.txt → tabs-page-title.670649e6.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/1493.cc58ad97.js","mappings":"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","sources":["webpack:///./src/app-wall/utils.ts","webpack:///./src/app-wall/app-wall.tsx","webpack:///./src/app-wall/app-wall.shadow.css","webpack:///./src/app-wall/card-item/card-item.shadow.css","webpack:///./src/app-wall/relation-line/relation-line.shadow.css","webpack:///./src/app-wall/system-card/system-card.shadow.css","webpack:///./src/data-view-variables.shadow.css"],"sourcesContent":["import {\n Vector3,\n Object3D,\n Quaternion,\n Vector3Tuple,\n PerspectiveCamera,\n} from \"three\";\nimport { CSS3DObject } from \"three/addons/renderers/CSS3DRenderer.js\";\nimport \"./card-item/index.js\";\nimport \"./relation-line/index.js\";\nimport \"./system-card/index.js\";\nimport type { AppWallCardItemProps } from \"./card-item/index.js\";\nimport type {\n AppWallRelationLine,\n AppWallRelationLineProps,\n} from \"./relation-line/index.js\";\nimport type { SystemCardProps } from \"./system-card/index.js\";\nimport {\n TrapezoidalObjectProps,\n TrapezoidalProps,\n bounds,\n CardSize,\n DistanceConfig,\n Position,\n Target,\n Ele,\n AppWallCardBrickNameType,\n} from \"./interface.js\";\nimport { CabinetThumbnail } from \"../cabinet/cabinet-thumbnail/index.jsx\";\nimport { SimpleCardItemProps } from \"../simple-card-item/index.js\";\n\nexport interface AppData {\n key: string;\n status: \"normal\" | \"warning\";\n cardItemProps: AppWallCardItemProps & SimpleCardItemProps;\n systemCardProps: SystemCardProps;\n trapezoidalProps: TrapezoidalProps;\n data?: any;\n}\n\nexport type Relation = {\n source: string;\n target: string;\n};\n\nexport interface UserData {\n appData: AppData;\n elementStyle: {\n width: number;\n height: number;\n };\n turningStyle: {\n width: number;\n height: number;\n };\n systemCardStyle: {\n width: number;\n height: number;\n };\n hoverStyle: {\n width: number;\n height: number;\n };\n cardItemObject3D: {\n curve: Object3D;\n flat: Object3D;\n hover: Object3D;\n clickTurn: Object3D;\n };\n systemCardObject3D: {\n clickTurn: Object3D;\n front: Object3D;\n };\n}\nexport const createRelationLine = (\n sourceVector: Vector3,\n targetVector: Vector3,\n lightColor: AppWallRelationLineProps[\"lightColor\"]\n): CSS3DObject => {\n const subVector = new Vector3().subVectors(targetVector, sourceVector);\n const lineLength = subVector.length();\n\n const lineElement = document.createElement(\n \"data-view.app-wall-relation-line\"\n ) as AppWallRelationLine;\n lineElement.style.height = `${lineLength}px`;\n lineElement.classList.add(\"relation-line\");\n lineElement.lightColor = lightColor;\n const lineObject = new CSS3DObject(lineElement);\n\n const centerVector = new Vector3().lerpVectors(\n sourceVector,\n targetVector,\n 0.5\n );\n lineObject.position.copy(centerVector);\n // lineObject.lookAt(new Vector3(0, 0, 10).add(centerVector));\n // lineObject.lookAt(new Vector3(0, 10000, 0));\n\n const quaternion = new Quaternion().setFromUnitVectors(\n new Vector3(0, 1, 0).normalize(),\n subVector.clone().normalize()\n );\n lineObject.setRotationFromQuaternion(quaternion);\n\n return lineObject;\n};\n\nexport const getCenterPointOrSubPoint = (\n start: Vector3Tuple,\n end: Vector3Tuple\n) => {\n const pointA = new Vector3(start[0], start[1], start[2]);\n const pointB = new Vector3(end[0], end[1], end[2]);\n return {\n centerVector: new Vector3().lerpVectors(pointA, pointB, 0.5), //中心点坐标\n subVector: new Vector3().subVectors(pointA, pointB), // a-b向量\n };\n};\nexport const createTrapezoidalRightOrLeftElement = (props: {\n BW: number;\n TW: number;\n d: number;\n TH: number;\n BH: number;\n isLeft: boolean;\n}): CSS3DObject => {\n const { BW, TW, d, TH, BH, isLeft } = props;\n const height = Math.sqrt(Math.pow(TW / 2 - BW / 2, 2) + Math.pow(d, 2)); //斜边\n const wrapper = document.createElement(\"div\");\n wrapper.style.cssText = `\n width: ${height}px;\n height:${TH}px;\n position: relative;\n clip-path: polygon(0 0, ${height}px ${\n TH / 2 - BH / 2\n }px, ${height}px ${TH / 2 - BH / 2 + BH}px, 0 ${TH}px);\n `;\n const cantCard = document.createElement(\"div\");\n cantCard.className = \"trapezoidalLeftOrRightAnimation\";\n wrapper.appendChild(cantCard);\n const start: Vector3Tuple = isLeft ? [-BW / 2, 0, 0] : [BW / 2, 0, 0];\n const end: Vector3Tuple = isLeft ? [-TW / 2, 0, d] : [TW / 2, 0, d];\n const objectCantModel = new CSS3DObject(wrapper);\n const { centerVector, subVector } = getCenterPointOrSubPoint(start, end);\n objectCantModel.position.copy(centerVector);\n const quaternion = new Quaternion().setFromUnitVectors(\n new Vector3(1, 0, 0).normalize(),\n subVector.clone().normalize()\n );\n objectCantModel.setRotationFromQuaternion(quaternion);\n return objectCantModel;\n};\n\nexport const createTrapezoidalTopOrBottomElement = (props: {\n BW: number;\n TW: number;\n d: number;\n TH: number;\n BH: number;\n isTop: boolean;\n}): CSS3DObject => {\n const { BW, TW, d, TH, BH, isTop } = props;\n const height = Math.sqrt(Math.pow(TH / 2 - BH / 2, 2) + Math.pow(d, 2)); //斜边\n const wrapper = document.createElement(\"div\");\n wrapper.style.cssText = `\n width: ${TW}px;\n height:${height}px;\n position: relative;\n clip-path: polygon(0 0, ${TW}px 0, ${\n TW / 2 - BW / 2 + BW\n }px ${height}px, ${TW / 2 - BW / 2}px ${height}px);\n `;\n const cantCard = document.createElement(\"div\");\n cantCard.className = \"trapezoidalTopOrBottomAnimation\";\n wrapper.appendChild(cantCard);\n const objectCantModel = new CSS3DObject(wrapper);\n const start: Vector3Tuple = isTop ? [0, -BH / 2, 0] : [0, BH / 2, 0];\n const end: Vector3Tuple = isTop ? [0, -TH / 2, d] : [0, TH / 2, d];\n const { centerVector, subVector } = getCenterPointOrSubPoint(start, end);\n objectCantModel.position.copy(centerVector);\n const topQuaternion = new Quaternion().setFromUnitVectors(\n new Vector3(0, -1, 0).normalize(),\n subVector.clone().normalize()\n );\n objectCantModel.setRotationFromQuaternion(topQuaternion);\n return objectCantModel;\n};\n/**\n * 创建梯台模型\n * @param props\n * @returns\n */\nexport const createTrapezoidalObject = (props: TrapezoidalObjectProps) => {\n const {\n objectData,\n leftBtnName,\n clusters,\n columns,\n leftOnClick,\n rightBtnName,\n rightOnClick,\n appName,\n } = props;\n const d = 600;\n const container = document.createElement(\"div\");\n const objectContainer = new CSS3DObject(container);\n objectContainer.position.set(...objectData.point);\n // 模型为梯形 , 底部和顶部的宽高成一定的比例计算, bw: tw = 1:11; bh:th= 1:4.5\n const BW: number = objectData.width,\n BH: number = objectData.height,\n TW = 1500,\n TH = 1200;\n // 底部\n const bottomCard = document.createElement(\"div\");\n bottomCard.style.cssText = `\n width: ${BW}px;\n height: ${BH}px;\n box-shadow: inset 0px 1px 2px 0px rgba(255,255,255,0.45);\n border: 1px solid rgba(118,255,255,0.58);\n padding: 16px;\n `;\n const objectBottomModel = new CSS3DObject(bottomCard);\n objectBottomModel.position.z = 0;\n objectContainer.add(objectBottomModel);\n\n // 顶部\n const topCard = document.createElement(\"div\");\n topCard.style.cssText = `\n width: ${TW}px;\n height:${TH}px;\n background: linear-gradient(rgb(13, 54, 179,0.6) 0%, rgb(74, 108, 156,0.6) 100%);\n box-sizing: border-box;\n padding: 16px;\n `;\n const thumbnailEle = document.createElement(\n \"data-view.cabinet-thumbnail\"\n ) as CabinetThumbnail;\n thumbnailEle.clusters = clusters ?? [];\n thumbnailEle.columns = columns ?? 4;\n thumbnailEle.appName = appName;\n topCard.className = \"visibilityAnimate\";\n topCard.appendChild(thumbnailEle);\n const objectTopModel = new CSS3DObject(topCard);\n objectTopModel.position.set(0, 0, d);\n\n const objectCantLeftModel = createTrapezoidalRightOrLeftElement({\n BW,\n TW,\n BH,\n TH,\n d,\n isLeft: true,\n }); //斜面右边\n const objectCantRightModel = createTrapezoidalRightOrLeftElement({\n BW,\n TW,\n BH,\n TH,\n d,\n isLeft: false,\n }); //斜面右边\n const objectCantTopModel = createTrapezoidalTopOrBottomElement({\n BW,\n TW,\n BH,\n TH,\n d,\n isTop: true,\n }); //斜面前边\n const objectCantBottomModel = createTrapezoidalTopOrBottomElement({\n BW,\n TW,\n BH,\n TH,\n d,\n isTop: false,\n }); //斜面后面\n objectContainer.add(\n objectCantLeftModel,\n objectCantRightModel,\n objectCantBottomModel,\n objectCantTopModel\n );\n if (leftBtnName) {\n const btnLeft = document.createElement(\"div\");\n btnLeft.style.cssText = `\n color: #6BE0FA;\n font-size: 28px;\n font-weight: 500;\n width: ${TW / 2}px;\n line-height: 16px;\n `;\n btnLeft.className = \"visibilityAnimate\";\n const wordNode = document.createElement(\"span\");\n wordNode.style.cursor = \"pointer\";\n wordNode.innerText = leftBtnName;\n btnLeft.appendChild(wordNode);\n const btnLeftObject = new CSS3DObject(btnLeft);\n btnLeftObject.position.set(-TW / 4 + 10, -TH / 2, 14);\n btnLeftObject.rotateX(Math.PI / 2);\n objectTopModel.add(btnLeftObject);\n wordNode.onpointerdown = leftOnClick;\n }\n if (rightBtnName) {\n const btnRight = document.createElement(\"div\");\n btnRight.style.cssText = `\n color: #FFFFFF;\n font-size: 30px;\n font-weight: 500;\n width: ${TW / 2}px;\n text-shadow: 0px 1px 4px #3366FF;\n text-align: right;\n `;\n btnRight.className = \"visibilityAnimate\";\n const textNode = document.createElement(\"span\");\n textNode.style.cursor = \"pointer\";\n textNode.innerText = rightBtnName;\n\n btnRight.appendChild(textNode);\n const btnRightObject = new CSS3DObject(btnRight);\n btnRightObject.position.set(TW / 4 - 10, -TH / 2, 14);\n btnRightObject.rotateX(Math.PI / 2);\n objectTopModel.add(btnRightObject);\n textNode.onpointerdown = rightOnClick;\n }\n objectContainer.add(objectTopModel);\n return objectContainer;\n};\n/**\n * 布局计算\n * @param dataSource\n * @param maxX\n * @param maxY\n * @returns\n */\nexport const setAppPosition = (\n dataSource: AppData[],\n maxX: number,\n maxY: number\n) => {\n if (!dataSource?.length) return [];\n let appData: Target[] = dataSource.map((d) => ({ ...d, x: 0, y: 0 }));\n if (appData.length === maxX * maxY) {\n appData = appData.map((d, i) => ({\n ...d,\n x: (i % maxX) + 1,\n y: parseInt(`${i / maxX}`) + 1,\n }));\n } else {\n const offset = maxX * (maxY - 1);\n const leng = appData.length - offset;\n for (let d = 0; d < offset; d++) {\n const u = appData[d];\n u.x = (d % maxX) + 1;\n u.y = parseInt(`${d / maxX}`) + 1;\n }\n for (let h = 0; h < leng / 2; h++) {\n const g = appData[h + offset],\n m = appData[appData.length - 1 - h];\n g.x = h + 1;\n g.y = maxY;\n if (g !== m) {\n m.x = maxX - h;\n m.y = maxY;\n }\n }\n }\n return appData;\n};\nexport const createTableTarget = (\n data: Target,\n cardSize: CardSize,\n maxX: number,\n maxY: number\n) => {\n const object3D = new Object3D();\n object3D.position.x =\n data.x * cardSize.outerWidth - (maxX / 2 + 0.5) * cardSize.outerWidth;\n object3D.position.y =\n -data.y * cardSize.outerHeight + (maxY / 2 + 0.5) * cardSize.outerHeight;\n return object3D;\n};\n\nexport const computeCurvePosition = (\n data: Target,\n cardSize: CardSize,\n maxX: number,\n maxY: number,\n angle: number\n) => {\n const position: Position = {\n x: 0,\n y: 0,\n z: 0,\n },\n n = parseInt(`${maxX * cardSize.outerWidth * 180}`) / (angle * Math.PI),\n a = maxX / 2 + 0.5;\n position.x = n * Math.sin(Math.PI / (180 / ((data.x - a) * (angle / maxX))));\n position.y =\n -data.y * cardSize.outerHeight + (maxY / 2 + 0.5) * cardSize.outerHeight;\n position.z = n - Math.sqrt(n * n - position.x * position.x);\n return position;\n};\nexport const createCurveTarget = (\n data: Target,\n cardSize: CardSize,\n maxX: number,\n maxY: number,\n angle: number,\n radius: number\n) => {\n const object3D = new Object3D();\n const vector = new Vector3();\n const position = computeCurvePosition(data, cardSize, maxX, maxY, angle);\n object3D.position.x = position.x;\n object3D.position.y = position.y;\n object3D.position.z = position.z;\n vector.x = 0;\n vector.y = object3D.position.y;\n vector.z = radius;\n object3D.lookAt(vector);\n return object3D;\n};\nexport const computeCameraDistance = (\n camera: PerspectiveCamera,\n bounds: bounds,\n distanceConfig: DistanceConfig[],\n length: number\n) => {\n const n = bounds.height + 2 * bounds.margin,\n a = (bounds.width + 2 * bounds.margin) / camera.aspect,\n i =\n (0.5 * Math.max(a, n)) / Math.tan((camera.fov * Math.PI) / 360) +\n bounds.z;\n let o = 0;\n distanceConfig.forEach(function (t) {\n length >= Math.min.apply(null, t.numRange) &&\n length <= Math.max.apply(null, t.numRange) &&\n (o = t.distance);\n });\n return Math.max(o, i);\n};\nexport const getAppRelations = (\n object: CSS3DObject,\n relationsData: Relation[]\n) => {\n const relations: Relation[] = [];\n const userData = object.userData;\n Array.isArray(relationsData) &&\n relationsData.length &&\n relationsData.forEach(function (i) {\n (userData.key !== i.source && userData.key !== i.target) ||\n relations.push(i);\n });\n return relations;\n};\nexport const findElementByEvent = (\n e: MouseEvent,\n tagName: AppWallCardBrickNameType\n) => {\n const _targetName = tagName.toUpperCase();\n const path = (e.composedPath() as Element[]).find(\n (node) => node?.shadowRoot\n ) as Ele;\n if (path?.tagName === _targetName) return path;\n const customEle = document.elementFromPoint(e.clientX, e.clientY);\n const target = customEle?.shadowRoot.elementFromPoint(\n e.clientX,\n e.clientY\n ) as Ele;\n if (target?.tagName === _targetName) return target;\n return null;\n};\n","import React, {\n ReactElement,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { debounce } from \"lodash\";\nimport { MathUtils, Object3D, PerspectiveCamera, Scene } from \"three\";\nimport {\n CSS3DObject,\n CSS3DRenderer,\n} from \"three/addons/renderers/CSS3DRenderer.js\";\nimport { TrackballControls } from \"three/addons/controls/TrackballControls.js\";\nimport TWEEN, { Tween, Easing } from \"@tweenjs/tween.js\";\nimport type { AppWallProps } from \"./index.jsx\";\nimport {\n AppWallCardBrickEleType,\n BaseConfig,\n CardSize,\n DistanceConfig,\n Ele,\n Position,\n RegisterEvents,\n Target,\n Targets,\n} from \"./interface.js\";\nimport {\n AppData,\n computeCameraDistance,\n createCurveTarget,\n createTableTarget,\n createTrapezoidalObject,\n setAppPosition,\n createRelationLine,\n getAppRelations,\n findElementByEvent,\n} from \"./utils.js\";\n\nimport \"./card-item/index.js\";\nimport { SystemCard, SystemCardProps } from \"./system-card/index.jsx\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport classNames from \"classnames\";\nconst distanceConfig: DistanceConfig[] = [\n {\n numRange: [0, 40],\n distance: 3000,\n },\n {\n numRange: [40, 60],\n distance: 2200,\n },\n {\n numRange: [60, 80],\n distance: 2700,\n },\n {\n numRange: [80, 120],\n distance: 3200,\n },\n {\n numRange: [120, 160],\n distance: 3400,\n },\n {\n numRange: [160, 300],\n distance: 3600,\n },\n];\nconst fov = 45;\nconst angle = 100;\nconst panelSpace = 300;\nconst offsetDistance = 500;\n\nconst getViewBounds = (\n length: number,\n cardSize: CardSize,\n margin: number,\n aspectH: number\n) => {\n const maxX = Math.ceil(\n Math.sqrt((length * cardSize.outerHeight) / (aspectH * cardSize.outerWidth))\n );\n const maxY = Math.ceil(length / maxX);\n const radius =\n parseInt(`${maxX * cardSize.outerWidth * 180}`) / (angle * Math.PI);\n const width =\n 2 * radius * Math.sin((Math.PI * (angle / 2)) / 180) + cardSize.outerWidth;\n const height = maxY * cardSize.outerHeight;\n const z = radius - radius * Math.cos((Math.PI * (angle / 2)) / 180);\n return {\n maxX,\n maxY,\n radius,\n bounds: {\n width,\n height,\n margin,\n z,\n },\n };\n};\n\nconst WrappedSystemCard = wrapBrick<SystemCard, SystemCardProps>(\n \"data-view.app-wall-system-card\"\n);\n\nexport function AppWallElement(props: AppWallProps): ReactElement {\n const {\n relations,\n onSystemCardButtonClick,\n useDblclick,\n useDistanceConfig,\n handleCardDbClick,\n rightBtnOnClick,\n leftBtnOnClick,\n cardBrickName,\n cardSize,\n disabledDefaultClickEvent,\n handleCardClick,\n containerId,\n noRotate,\n boundMargin,\n useSystemPopover,\n } = props;\n const [curClickCardItemAppData, setCurClickCardItemAppData] =\n useState<AppData>(null);\n\n const containerRef = useRef<HTMLDivElement>();\n const appwallRef = useRef<HTMLDivElement>();\n const closeBtnRef = useRef<HTMLDivElement>();\n const maskRef = useRef<HTMLDivElement>();\n const systemCardRef = useRef<SystemCard>();\n const popoverRef = useRef<\n HTMLElement &\n Ele & {\n instanceId: string;\n setPosition: (pos: { x: number; y: number }) => void;\n setVisible: (visible: boolean) => void;\n }\n >();\n\n const rendererRef = useRef<CSS3DRenderer>();\n const sceneRef = useRef<Scene>();\n const cameraRef = useRef<PerspectiveCamera>();\n const controlsRef = useRef<TrackballControls>();\n const graph3DViewRef = useRef<CSS3DObject>(); // 梯形模型\n const targetsRef = useRef<Targets>({\n table: [],\n curve: [],\n });\n const objectsRef = useRef<CSS3DObject[]>([]);\n const lineCiCodesRef = useRef<CSS3DObject[]>([]);\n const hoverScaleRef = useRef<number>(1);\n const baseCameraDistance = useRef<number>(5000);\n\n const configRef = useRef<BaseConfig>({\n maxX: 0,\n maxY: 0,\n radius: 0,\n bounds: {\n width: 0,\n height: 0,\n margin: boundMargin,\n z: 0,\n },\n });\n const registerEvents = useRef<RegisterEvents>({\n element: null,\n mouseoverTimer: null,\n mouseoutTimer: null,\n clickTimer: null,\n dblClickTimer: null,\n isShowGraph3D: false,\n isShowAppInfo: false,\n isShowRelations: false,\n enable: true, //是否可以触发事件\n });\n\n const render = useCallback(() => {\n rendererRef.current.render(sceneRef.current, cameraRef.current);\n controlsRef.current.maxDistance =\n baseCameraDistance.current + offsetDistance;\n controlsRef.current.handleResize();\n }, []);\n\n const updateViewBounds = (length: number) => {\n configRef.current = getViewBounds(\n length,\n cardSize,\n boundMargin,\n 1 / cameraRef.current.aspect\n );\n };\n\n const init = () => {\n const containerRect = document\n .getElementById(containerId)\n ?.getBoundingClientRect();\n const width = containerRect?.width || window.innerWidth;\n const height = containerRect?.height || window.innerHeight;\n const aspect = width / height;\n const scene = new Scene();\n const camera = new PerspectiveCamera(fov, aspect, 0.1, 10000);\n\n const renderer = new CSS3DRenderer();\n renderer.setSize(width, height);\n appwallRef.current.replaceChildren(renderer.domElement);\n\n const controls = new TrackballControls(camera, renderer.domElement);\n controls.rotateSpeed = 0.5;\n controls.minDistance = 500;\n controls.maxDistance = 10000;\n controls.noRotate = noRotate;\n\n sceneRef.current = scene;\n cameraRef.current = camera;\n controlsRef.current = controls;\n rendererRef.current = renderer;\n };\n\n const createView = (table: Target[]) => {\n table.forEach((data) => {\n const element = document.createElement(\n cardBrickName\n ) as AppWallCardBrickEleType & Ele;\n element.status = data.status;\n element.cardTitle = data.cardItemProps?.cardTitle;\n element.description = data.cardItemProps?.description;\n element.background = data.cardItemProps?.background;\n element.color = data.cardItemProps?.color;\n element.titleStyle = data.cardItemProps?.titleStyle;\n element.desStyle = data.cardItemProps?.desStyle;\n element.descriptionList = data.cardItemProps?.descriptionList;\n const statusClass = `status-${data?.status || \"normal\"}`;\n element.className = `card-item-container ${statusClass}`;\n element.style.width = `${cardSize.width}px`;\n element.style.height = `${cardSize.height}px`;\n element.classList.add(\"card-item-wrap\");\n // 随机进入\n const objectCSS = new CSS3DObject(element);\n objectCSS.position.set(\n 4e3 * Math.random() - 2e3,\n 4e3 * Math.random() - 2e3,\n 4e3 * Math.random() - 2e3\n );\n\n sceneRef.current.add(objectCSS);\n objectsRef.current.push(objectCSS);\n\n const table = createTableTarget(\n data,\n cardSize,\n configRef.current.maxX,\n configRef.current.maxY\n );\n targetsRef.current.table.push(table);\n const curve = createCurveTarget(\n data,\n cardSize,\n configRef.current.maxX,\n configRef.current.maxY,\n angle,\n configRef.current.radius\n );\n targetsRef.current.curve.push(curve);\n\n objectCSS.userData = data;\n element.__objectCSS = objectCSS;\n element.__userData = data;\n element.__curve = curve;\n });\n };\n\n const createRelationLines = (object: CSS3DObject) => {\n const curRelations = getAppRelations(object, relations);\n const userData = object.userData;\n let lineObject: CSS3DObject, lineTarget: CSS3DObject;\n curRelations?.forEach((relation) => {\n if (relation.source === userData.key) {\n //获取目标target CSS3DObject\n lineTarget = objectsRef.current.find(\n (o) => o.userData.key === relation.target\n );\n lineObject =\n lineTarget &&\n createRelationLine(object.position, lineTarget.position, \"blue\");\n } else {\n lineTarget = objectsRef.current.find(\n (o) => o.userData.key === relation.source\n );\n lineObject =\n lineTarget &&\n createRelationLine(lineTarget.position, object.position, \"purple\");\n }\n if (!lineObject) return;\n lineCiCodesRef.current.push(lineObject);\n sceneRef.current.add(lineObject);\n });\n objectsRef.current?.forEach((item) => {\n if (\n object != item &&\n curRelations.every(\n (r) => r.source != item.userData.key && r.target != item.userData.key\n )\n ) {\n item.element.style.opacity = \"0.2\";\n }\n });\n };\n\n const showElementBetweenRelation = (target: Ele) => {\n const { __objectCSS, __userData } = target;\n const rotationY = __objectCSS.rotation.y;\n const currentEleRect = __objectCSS.element.getBoundingClientRect();\n const position: Position = {\n x: __objectCSS.position.x + 50 * Math.sin(rotationY),\n y: __objectCSS.position.y + 15,\n z: __objectCSS.position.z + 100 * Math.cos(rotationY),\n };\n\n const scale =\n currentEleRect.width >= cardSize.width\n ? hoverScaleRef.current\n : Math.min(\n cardSize.width / currentEleRect.width,\n cardSize.height / currentEleRect.height\n ),\n duration = 100;\n registerEvents.current.isShowRelations = true;\n new Tween(__objectCSS.rotation)\n // .to(\n // {\n // x: 0,\n // y: 0,\n // z: 0,\n // },\n // duration\n // )\n .onStart(() => {\n cardBrickName === \"data-view.app-wall-card-item\" &&\n __objectCSS.element.classList.add(\n `status-${__userData.status || \"normal\"}-card`\n );\n })\n .start();\n new Tween(__objectCSS.scale)\n .to(\n {\n x: scale,\n y: scale,\n z: scale,\n },\n duration\n )\n .start();\n\n new Tween(__objectCSS.position)\n .to(position, duration)\n .onUpdate(render)\n .onComplete(function () {\n //创建连线\n createRelationLines(__objectCSS);\n render();\n registerEvents.current.element = target;\n\n if (useSystemPopover) {\n const rect = target.getBoundingClientRect();\n const centerX = rect.left + rect.width / 2;\n const centerY = rect.top + rect.height / 2;\n\n popoverRef.current.instanceId = target?.__userData?.data?.instanceId;\n popoverRef.current.setPosition({ x: centerX, y: centerY });\n popoverRef.current.setVisible(true);\n }\n })\n .start();\n };\n\n const restoreElementState = (onComplete?: (ele?: Ele) => void) => {\n if (!registerEvents.current?.element) return onComplete?.();\n const {\n __objectCSS,\n __curve: object3d,\n __userData,\n } = registerEvents.current.element;\n const duration = 100;\n\n new Tween(__objectCSS.rotation)\n .to(\n {\n x: object3d.rotation.x,\n y: object3d.rotation.y,\n z: object3d.rotation.z,\n },\n duration\n )\n .start();\n new Tween(__objectCSS.scale)\n .to(\n {\n x: 1,\n y: 1,\n z: 1,\n },\n duration\n )\n .start();\n new Tween(__objectCSS.position)\n .to(\n {\n x: object3d.position.x,\n y: object3d.position.y,\n z: object3d.position.z,\n },\n duration\n )\n .onUpdate(render)\n .onStart(() => {\n cardBrickName === \"data-view.app-wall-card-item\" &&\n __objectCSS.element.classList.remove(\n `status-${__userData.status || \"normal\"}-card`\n );\n objectsRef.current?.forEach((item) => {\n item.element.style.opacity = \"1\";\n });\n lineCiCodesRef.current.forEach((lineObject) => {\n sceneRef.current.remove(lineObject);\n });\n lineCiCodesRef.current = [];\n render();\n })\n .onComplete(() => {\n registerEvents.current.isShowRelations = false;\n onComplete?.(registerEvents.current?.element);\n })\n .start();\n };\n\n const transform = (targets: Object3D[], duration: number) => {\n registerEvents.current.enable = false;\n for (let i = 0; i < objectsRef.current.length; i++) {\n const object = objectsRef.current[i];\n const target = targets[i];\n\n new Tween(object.position)\n .to(\n {\n x: target.position.x,\n y: target.position.y,\n z: target.position.z,\n },\n MathUtils.randFloat(duration, duration * 2)\n )\n .easing(Easing.Exponential.InOut)\n .start();\n\n new Tween(object.rotation)\n .to(\n {\n x: target.rotation.x,\n y: target.rotation.y,\n z: target.rotation.z,\n },\n MathUtils.randFloat(duration, duration * 2)\n )\n .easing(Easing.Exponential.InOut)\n .start();\n }\n\n new Tween({})\n .to({}, duration * 2)\n .onUpdate(render)\n .start()\n .onComplete(() => {\n registerEvents.current.enable = true;\n });\n };\n\n const handeReset = () => {\n TWEEN.removeAll();\n const o = {\n opacity: 1,\n },\n e = new Tween({\n z: 0,\n }),\n n = new Tween(o),\n a = new Tween(cameraRef.current.position),\n i = new Tween(controlsRef.current.target),\n r = new Tween({\n blur: 1500,\n spread: 100,\n });\n e.to(\n {\n z: panelSpace,\n },\n 1e3\n ).chain(a, i, r);\n n.to(\n {\n opacity: 0,\n },\n 1e3\n )\n .onStart(() => {\n sceneRef.current.remove(graph3DViewRef.current);\n closeBtnRef.current.style.visibility = \"hidden\";\n })\n .delay(300);\n\n a.to(controlsRef.current.position0, 1e3).onComplete(function () {\n controlsRef.current.reset();\n appwallRef.current.classList.remove(\"mask-container\");\n transform(targetsRef.current.curve, 600);\n registerEvents.current.isShowGraph3D = false;\n });\n i.to(\n {\n x: 0,\n y: 0,\n z: 0,\n },\n 1e3\n );\n r.to(\n {\n blur: 0,\n spread: 0,\n },\n 1e3\n );\n e.start();\n n.start();\n };\n const showAppInfoAnimate = (toggle: boolean) => {\n controlsRef.current.reset();\n const object = registerEvents.current.element.__objectCSS;\n const target = registerEvents.current.element.__curve;\n registerEvents.current.enable = false;\n registerEvents.current.isShowAppInfo = true;\n //定义四个位置\n const c = {\n x: target.position.x > 0 ? 2 * -cardSize.width : 2 * cardSize.width,\n y: 0,\n z: (cameraRef.current.position.z - 500) / 1.5,\n };\n const p = {\n x: 0,\n y: 0,\n z: cameraRef.current.position.z - 500,\n };\n const h = {\n x: 0,\n y: target.rotation.y > 0 ? (-Math.PI * 90) / 180 : (Math.PI * 90) / 180,\n z: 0,\n };\n const d = {\n x: 0,\n y: target.rotation.y > 0 ? (-Math.PI * 180) / 180 : (Math.PI * 180) / 180,\n z: 0,\n };\n const i = new Tween(object.position);\n const r = new Tween(object.rotation);\n const o = new Tween(object.position);\n const s = new Tween(object.rotation);\n if (toggle) {\n //收\n i.to(c, 500)\n .easing()\n .onComplete(() => {\n systemCardRef.current.hidden = true;\n registerEvents.current.element.style.opacity = \"1\";\n });\n r.to(h, 500).easing();\n o.to(\n {\n x: target.position.x,\n y: target.position.y,\n z: target.position.z,\n },\n 700\n ).easing();\n s.to(\n {\n x: target.rotation.x,\n y: target.rotation.y,\n z: target.rotation.z,\n },\n 700\n )\n .easing()\n .onComplete(() => {\n objectsRef.current?.forEach((item) => {\n item.element.style.opacity = \"1\";\n });\n });\n } else {\n //出\n objectsRef.current?.forEach((item) => {\n if (object != item) {\n item.element.style.opacity = \"0.2\";\n }\n });\n i.to(c, 700)\n .easing()\n .onStart(() => {\n //为了飞出去的途中,不能在点击其他的卡片飞出来\n maskRef.current.hidden = false;\n systemCardRef.current.hidden = true;\n });\n r.to(h, 700).easing();\n o.to(p, 500)\n .easing()\n .onStart(function () {\n registerEvents.current.element.style.opacity = \"0\";\n systemCardRef.current.style.transition = \"transition: all .3s ease\";\n systemCardRef.current.hidden = false;\n });\n s.to(d, 500).easing();\n }\n i.chain(o).start();\n r.chain(s).start();\n new Tween({})\n .to({}, 1400)\n .onUpdate(() => {\n render();\n if (Math.abs(object.rotation.y) >= Math.PI / 2) {\n const rect = registerEvents.current.element.getBoundingClientRect();\n const scale = 1.35;\n const width = rect.width * scale;\n const height = rect.height * scale;\n systemCardRef.current.style.width = `${width}px`;\n systemCardRef.current.style.height = `${height}px`;\n systemCardRef.current.style.top = `${\n rect.top - ((scale - 1) * height) / 2\n }px`;\n systemCardRef.current.style.left = `${\n rect.left - ((scale - 1) * width) / 2\n }px`;\n }\n })\n .start()\n .onComplete(function () {\n registerEvents.current.enable = true;\n registerEvents.current.isShowAppInfo = !toggle;\n maskRef.current.hidden = toggle;\n });\n };\n const resetView = () => {\n controlsRef.current.reset();\n TWEEN.removeAll();\n objectsRef.current.map((o) => {\n sceneRef.current.remove(o);\n });\n objectsRef.current = [];\n targetsRef.current = {\n table: [],\n curve: [],\n };\n //重置交互状态\n registerEvents.current = {\n element: null,\n mouseoverTimer: null,\n mouseoutTimer: null,\n clickTimer: null,\n dblClickTimer: null,\n enable: true,\n isShowAppInfo: false,\n isShowGraph3D: false,\n isShowRelations: false,\n };\n };\n\n useEffect(() => {\n init();\n let cancel: number;\n const animate = () => {\n cancel = requestAnimationFrame(animate);\n TWEEN.update();\n controlsRef.current.update();\n };\n animate();\n const container = containerId\n ? document.getElementById(containerId)\n : document.body;\n\n const observer = new ResizeObserver(\n debounce(() => {\n const { width, height } = container.getBoundingClientRect();\n cameraRef.current.aspect = width / height;\n cameraRef.current.updateProjectionMatrix();\n rendererRef.current.setSize(width, height);\n render();\n }, 300)\n );\n controlsRef.current.addEventListener(\"change\", render);\n observer.observe(container);\n return () => {\n observer.disconnect();\n controlsRef.current.removeEventListener(\"change\", render);\n controlsRef.current.dispose();\n TWEEN.removeAll();\n cameraRef.current.clear();\n sceneRef.current.clear();\n cancelAnimationFrame(cancel);\n };\n }, []);\n\n useEffect(() => {\n const length = props.dataSource?.length || 0;\n if (length > 0) {\n updateViewBounds(length);\n baseCameraDistance.current = computeCameraDistance(\n cameraRef.current,\n configRef.current.bounds,\n useDistanceConfig ? distanceConfig : [],\n length\n );\n cameraRef.current.position.z = baseCameraDistance.current;\n cameraRef.current.updateProjectionMatrix();\n controlsRef.current.position0.copy(cameraRef.current.position);\n\n const appData = setAppPosition(\n props.dataSource,\n configRef.current.maxX,\n configRef.current.maxY\n );\n createView(appData);\n transform(targetsRef.current.curve, 1000);\n }\n\n return () => {\n resetView();\n };\n }, [props.dataSource, useDistanceConfig]);\n\n useEffect(() => {\n if (useSystemPopover) {\n const element = document.createElement(\"monitoring.sys-popover\") as any;\n popoverRef.current = element;\n document.querySelector(\"#main-mount-point\").appendChild(element);\n }\n }, [useSystemPopover]);\n\n useEffect(() => {\n const container = containerRef.current;\n const handleMouseover = (e: MouseEvent) => {\n clearTimeout(registerEvents.current.mouseoverTimer);\n if (\n registerEvents.current.isShowAppInfo ||\n registerEvents.current.isShowGraph3D ||\n !registerEvents.current.enable\n )\n return false;\n const target = findElementByEvent(e, cardBrickName);\n if (useSystemPopover) {\n const canRenderPopover =\n popoverRef.current?.instanceId !=\n target?.__userData?.data?.instanceId;\n\n if (!target || !canRenderPopover) {\n popoverRef.current.setVisible(false);\n }\n }\n registerEvents.current.mouseoverTimer = window.setTimeout(() => {\n restoreElementState(() => {\n target &&\n !registerEvents.current.isShowAppInfo &&\n showElementBetweenRelation(target);\n clearTimeout(registerEvents.current.mouseoverTimer);\n });\n }, 300);\n };\n\n const handleMouseout = (e: MouseEvent) => {\n if (\n registerEvents.current.isShowAppInfo ||\n registerEvents.current.isShowGraph3D ||\n !registerEvents.current.enable\n )\n return false;\n const target = findElementByEvent(e, cardBrickName);\n if (useSystemPopover) {\n const canRenderPopover =\n popoverRef.current.instanceId != target?.__userData?.data?.instanceId;\n\n if (!target || !canRenderPopover) {\n popoverRef.current.setVisible(false);\n }\n }\n };\n\n const handleClick = (e: MouseEvent) => {\n clearTimeout(registerEvents.current.clickTimer);\n clearTimeout(registerEvents.current.mouseoverTimer);\n if (\n registerEvents.current.isShowAppInfo ||\n registerEvents.current.isShowGraph3D ||\n !registerEvents.current.enable\n )\n return false;\n\n const target = findElementByEvent(e, cardBrickName);\n registerEvents.current.clickTimer = window.setTimeout(function () {\n clearTimeout(registerEvents.current.mouseoverTimer);\n restoreElementState(() => {\n if (target) {\n clearTimeout(registerEvents.current.clickTimer);\n clearTimeout(registerEvents.current.mouseoverTimer);\n e.stopPropagation();\n registerEvents.current.element = target;\n if (disabledDefaultClickEvent) {\n handleCardClick?.(target.__userData);\n } else {\n setCurClickCardItemAppData(target.__userData);\n showAppInfoAnimate(false);\n }\n }\n });\n }, 200);\n };\n const handleDbClick = (e: MouseEvent) => {\n clearTimeout(registerEvents.current.clickTimer);\n clearTimeout(registerEvents.current.mouseoverTimer);\n clearTimeout(registerEvents.current.dblClickTimer);\n if (\n registerEvents.current.isShowAppInfo ||\n registerEvents.current.isShowGraph3D ||\n !registerEvents.current.enable\n )\n return false;\n\n const target = findElementByEvent(e, cardBrickName);\n const { __userData, __objectCSS } = target;\n registerEvents.current.isShowGraph3D = true;\n registerEvents.current.dblClickTimer = window.setTimeout(function () {\n restoreElementState(() => {\n if (\n useDblclick ||\n __userData.trapezoidalProps?.clusters?.length < 1\n ) {\n handleCardDbClick(__userData);\n registerEvents.current.isShowGraph3D = false;\n } else {\n if (target) {\n clearTimeout(registerEvents.current.mouseoverTimer);\n clearTimeout(registerEvents.current.clickTimer);\n appwallRef.current.classList.add(\"mask-container\");\n controlsRef.current.reset();\n const basePosition = {\n opacity: 0,\n scale: 0,\n borderLeftWidth: 0,\n borderRightWidth: 0,\n borderTopWidth: 0,\n borderBottomWidth: 0,\n };\n const u = {\n x: __objectCSS.position.x,\n y:\n 860 +\n cardSize.height * (configRef.current.maxY - __userData.y),\n };\n const n = new Tween(cameraRef.current.position);\n const a = new Tween(basePosition);\n const i = new Tween({\n z: 0,\n });\n const r = new Tween(cameraRef.current.position);\n const o = new Tween(controlsRef.current.target);\n const s = new Tween({\n blur: 12,\n spread: 0,\n });\n transform(targetsRef.current.table, 600);\n n.to(\n {\n x: 0,\n y: -3600,\n z: 1600,\n },\n 1e3\n ).chain(s, a, i);\n a.to(\n {\n opacity: 1,\n },\n 700\n ).onStart(() => {\n const objectContainer = createTrapezoidalObject({\n objectData: {\n width: cardSize.width,\n height: cardSize.height,\n point: [\n __objectCSS.position.x,\n __objectCSS.position.y,\n __objectCSS.position.z,\n ],\n },\n clusters: __userData.trapezoidalProps?.clusters,\n columns: __userData.trapezoidalProps?.columns,\n appName: __userData.trapezoidalProps?.appName,\n leftBtnName: __userData.trapezoidalProps?.leftBtnName,\n rightBtnName: __userData.trapezoidalProps?.rightBtnName,\n rightOnClick: () => rightBtnOnClick(__userData),\n leftOnClick: () => leftBtnOnClick(__userData),\n });\n graph3DViewRef.current = objectContainer;\n sceneRef.current.add(objectContainer);\n });\n i.to(\n {\n z: panelSpace,\n },\n 1e3\n )\n .delay(230)\n .chain(r, o);\n\n r.to(\n {\n x: u.x,\n y: -3600 + u.y,\n },\n 1e3\n );\n o.to(\n {\n x: u.x,\n y: u.y,\n },\n 1e3\n ).onComplete(function () {\n closeBtnRef.current.style.visibility = \"visible\";\n });\n n.start();\n }\n }\n });\n }, 200);\n };\n\n container.addEventListener(\"dblclick\", handleDbClick);\n container.addEventListener(\"click\", handleClick);\n container.addEventListener(\"mouseover\", handleMouseover);\n container.addEventListener(\"mouseout\", handleMouseout);\n return () => {\n container.removeEventListener(\"mouseover\", handleMouseover);\n container.removeEventListener(\"mouseout\", handleMouseout);\n container.removeEventListener(\"click\", handleClick);\n container.removeEventListener(\"dblclick\", handleDbClick);\n };\n }, [disabledDefaultClickEvent, handleCardClick]);\n\n return (\n <div className=\"appwall-container\" ref={containerRef}>\n <div className=\"appwall\" ref={appwallRef}></div>\n <div\n className=\"mask\"\n ref={maskRef}\n onClick={() => {\n registerEvents.current.enable && showAppInfoAnimate(true);\n }}\n hidden={true}\n >\n <WrappedSystemCard\n {...curClickCardItemAppData?.systemCardProps}\n onClick={(e) => e.stopPropagation()}\n handleClick={() => onSystemCardButtonClick(curClickCardItemAppData)}\n ref={systemCardRef}\n className={classNames({\n infoWrapper: curClickCardItemAppData?.status === \"normal\",\n warningWrapper: curClickCardItemAppData?.status === \"warning\",\n })}\n />\n </div>\n <div\n className=\"closeBtn\"\n ref={closeBtnRef}\n onClick={() => {\n handeReset();\n }}\n />\n </div>\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block;width:100%;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.mask-container{position:absolute;top:0;left:0;width:100%;height:100%;background:#0c1216;z-index:1000}.appwall-container{padding:8px}.appwall{position:relative}.appwall.loading .card-item{pointer-events:none!important}.mask{position:absolute;width:100%;height:100%;top:0;bottom:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:center}.mask[hidden]{display:none}.infoWrapper{position:absolute;background:var(--color-fill-bg-base-4);box-shadow:0 0 12px 2px rgba(80,255,255,0.45),inset 0 0 22px 0 #20242a;border:2px solid #50ffff;overflow:hidden}.warningWrapper{position:absolute;background:linear-gradient(180deg,#cc0066 0%,rgba(204,0,102,0.2) 100%),#0f1117ff;box-shadow:0 0 12px 2px rgba(204,0,102,0.4),inset 0 4px 10px 0 rgba(255,255,255,0.65);overflow:hidden}.relation-line{pointer-events:none!important}.closeBtn{visibility:hidden;position:fixed;top:50px;right:50px;width:46px;height:46px;text-align:center;border:1px solid;color:rgb(138 189 255/84%);font-size:20px;line-height:46px;cursor:pointer;background:rgba(138,189,255,0.13);border-image:linear-gradient(135deg,rgba(255,255,255,0.5),rgba(255,255,255,0),rgba(255,255,255,0.33)) 1 1;display:flex;justify-content:center;align-items:center;z-index:1000}.closeBtn:before,\n.closeBtn:after{content:\"\";width:2px;height:20px;background:linear-gradient(180deg,#3467ff 0%,#98cbff 100%);position:absolute}.closeBtn:before{transform:rotateZ(45deg)}.closeBtn:after{transform:rotateZ(-45deg)}.closeBtn:hover:after,\n.closeBtn:hover:before{background:var(--color-normal-text)}.visibilityAnimate{visibility:hidden;animation:visibility 0.5s both 1s}.trapezoidalLeftOrRightAnimation,\n.trapezoidalTopOrBottomAnimation{background:linear-gradient(180deg,rgba(51,102,255,0.4) 0%,#99ccff 100%);opacity:0.2;position:absolute}.trapezoidalTopOrBottomAnimation{bottom:0;width:100%;left:0;animation:animateTop 1s both}.trapezoidalLeftOrRightAnimation{top:0;right:0;height:100%;animation:animateLeft 1s both}@keyframes animateTop{0%{height:0}100%{height:100%}}@keyframes animateLeft{0%{width:0}100%{width:100%}}@keyframes visibility{0%{visibility:hidden}100%{visibility:visible}}.card-item-container{transition:opacity 0.5s}.status-normal-card{box-shadow:0 0 100px rgba(80,255,255,0.58);border:1px solid rgba(80,255,255,0.58);background:-webkit-gradient(liner,left top,left bottom,from(#002c8d),to(#00123e));background:linear-gradient(to bottom,rgba(80,255,255,1) 0%,rgba(80,255,255,0) 100%)}.status-warning-card{box-shadow:0 0 100px #cc0066;background:-webkit-gradient(liner,left top,left bottom,from(#cc0066),to(rgba(204,0,102,0.2)));background:linear-gradient(to bottom,#cc0066 0%,rgba(204,0,102,0.2) 100%)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:inline-block;width:100%;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.card-item-container{position:relative;width:100%;height:100%}.card-item{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center;border-radius:var(--no-border-radius);border-color:transparent;transition:border-color 0.5s}.status-normal:hover{box-shadow:0 0 100px rgba(80,255,255,0.58);border:1px solid rgba(80,255,255,0.58);background:-webkit-gradient(liner,left top,left bottom,from(#002c8d),to(#00123e));background:linear-gradient(to bottom,rgba(80,255,255,1) 0%,rgba(80,255,255,0) 100%)}.status-warning:hover{box-shadow:0 0 100px #CC0066;background:-webkit-gradient(liner,left top,left bottom,from(#CC0066),to(rgba(204,0,102,0.2)));background:linear-gradient(to bottom,#CC0066 0%,rgba(204,0,102,0.2) 100%)}.card-item-container.status-normal .card-item{background:var(--color-fill-bg-base-4);box-shadow:inset 0px 1px 2px 0px rgba(255,255,255,0.45)}.card-item-container.status-normal:hover .card-item{border:2px solid rgba(80,255,255,0.58)}.card-item-container.status-warning .card-item{background:linear-gradient(180deg,#CC0066 0%,rgba(204,0,102,0.2) 100%);box-shadow:inset 0px 2px 6px 0px rgba(255,255,255,0.65)}.card-item-container.status-warning:hover .card-item{border:none}.card-item-text-container{width:100%;padding:0 12px}.card-item-title,\n.card-item-description{font-size:20px;font-weight:var(--font-weight-500);color:var(--color-normal-text)}.card-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-item-description{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:inline-block;width:-moz-fit-content;width:fit-content;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.relation-line{position:relative;width:6px;height:100%;background:var(--color-text-divider-line-1);overflow:hidden}.relation-line::after{content:'';position:absolute;width:100%;height:20%;left:0px;top:0px;animation:lightMove 1000ms ease-in-out infinite,lightOpacity 1000ms ease-in-out infinite}.relation-line.light-color-blue::after{background:linear-gradient(rgba(80,255,255,0) 0%,rgba(80,255,255,1) 90%,#DFFFFF 100%)}.relation-line.light-color-purple::after{background:linear-gradient(rgba(102,0,255,0) 0%,rgba(102,0,255,1) 90%,#B07BFF 100%)}@keyframes lightMove{0%{top:0;transform:translateY(-100%)}100%{top:100%;transform:translateY(0)}}@keyframes lightOpacity{0%{opacity:0}20%{opacity:1}80%{opacity:1}100%{opacity:0}}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:inline-block}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.wrapper{position:relative;width:100%;height:100%;padding:30px 24px 35px;left:0;display:flex;flex-direction:column;border-radius:var(--no-border-radius)}.cardName{font-size:var(--title-font-size-strong);line-height:22px;text-align:center;font-weight:var(--font-weight-500);color:var(--color-normal-text);text-shadow:0 1px 4px rgba(51,102,255,0.5);margin-bottom:35px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.descriptions{flex:1;margin-bottom:20px;font-size:var(--auxiliary-font-size-small);overflow:auto;font-weight:var(--font-weight-400)}.descriptionsItem .itemKey{color:var(--color-secondary-text)}.descriptionsItem .itemValue{color:var(--color-strong-text)}.descriptionsItem{display:flex;gap:10px;margin-bottom:12px}.descriptionsItem>div{flex:1;text-align:left;word-break:break-all}.buttonContent{position:absolute;bottom:16px;right:24px;font-size:var(--auxiliary-font-size);color:#99CCFF;cursor:pointer;font-weight:var(--font-weight-500)}.buttonName{margin-left:5px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{--palette-rgba-white-1:rgba(255,255,255,10%);--palette-rgba-white-2:rgba(255,255,255,20%);--palette-rgba-white-3:rgba(255,255,255,30%);--palette-rgba-white-4:rgba(255,255,255,40%);--palette-rgba-white-5:rgba(255,255,255,50%);--palette-rgba-white-6:rgba(255,255,255,60%);--palette-rgba-white-7:rgba(255,255,255,70%);--palette-rgba-white-8:rgba(255,255,255,80%);--palette-rgba-white-9:rgba(255,255,255,90%);--palette-rgba-white-10:rgba(255,255,255,100%);--palette-rgba-gray-1:rgba(0,0,0,10%);--palette-rgba-gray-2:rgba(0,0,0,20%);--palette-rgba-gray-3:rgba(0,0,0,30%);--palette-rgba-gray-4:rgba(0,0,0,40%);--palette-rgba-gray-5:rgba(0,0,0,50%);--palette-rgba-gray-6:rgba(0,0,0,60%);--palette-rgba-gray-7:rgba(0,0,0,70%);--palette-rgba-gray-8:rgba(0,0,0,80%);--palette-rgba-gray-9:rgba(0,0,0,90%);--palette-rgba-gray-10:rgba(0,0,0,100%);--palette-rgba-blue-gray-2:rgba(101,106,134,20%);--palette-rgba-blue-gray-3:rgba(101,106,134,30%);--palette-rgba-blue-gray-8:rgba(101,106,134,80%);--palette-tech-blue-4-channel:67,127,255;--palette-tech-blue-4:rgb(var(--palette-tech-blue-4-channel));--palette-tech-blue-6-channel:51,102,255;--palette-tech-blue-6:rgb(var(--palette-tech-blue-6-channel));--palette-tech-blue-8-channel:40,69,159;--palette-tech-blue-8:rgb(var(--palette-tech-blue-8-channel));--palette-sea-green-4-channel:131,245,225;--palette-sea-green-4:rgb(var(--palette-sea-green-4-channel));--palette-green-6-channel:81,235,73;--palette-green-6:rgb(var(--palette-green-6-channel));--palette-green-2:rgba(var(--palette-green-6-channel),20%);--palette-lotus-pink-7-channel:204,0,102;--palette-lotus-pink-7:rgb(var(--palette-lotus-pink-7-channel));--palette-red-6-channel:242,39,39;--palette-red-6:rgb(var(--palette-red-6-channel));--palette-red-2:rgba(var(--palette-red-6-channel),20%);--color-fill-global-bg:#0f1014;--color-fill-bg-container-1:var(--palette-rgba-white-1);--color-fill-bg-container-2:var(--palette-rgba-blue-gray-2);--color-fill-bg-container-3:var(--palette-rgba-blue-gray-8);--color-fill-bg-base-1:var(--palette-rgba-blue-gray-2);--color-fill-bg-base-2:rgba(15,16,20,0%);--color-fill-bg-base-3:rgba(0,0,0,20%);--color-fill-bg-base-4:rgba(40,46,58,100%);--color-fill-bg-base-5:rgba(19,25,47,80%);--color-fill-bg-base-6:var(--palette-rgba-blue-gray-3);--color-brand:var(--palette-tech-blue-6);--color-brand-hover:var(--palette-tech-blue-4);--color-brand-active:var(--palette-tech-blue-8);--color-contrast-1:var(--palette-sea-green-4);--color-error:var(--palette-red-6);--color-error-bg:var(--palette-red-2);--color-success:var(--palette-green-6);--color-success-bg:var(--palette-green-2);--color-header-text-big:var(--palette-rgba-white-10);--color-header-text:var(--palette-rgba-white-10);--color-normal-text:var(--palette-rgba-white-10);--color-strong-text:var(--palette-rgba-white-9);--color-auxiliary-text:var(--palette-rgba-white-8);--color-secondary-text:var(--palette-rgba-white-6);--color-disabled-text:var(--palette-rgba-white-4);--color-border-divider-line:var(--palette-rgba-white-1);--color-text-divider-line-1:var(--palette-rgba-white-2);--color-text-divider-line-2:var(--palette-rgba-white-2);--small-border-radius:2px;--medius-border-radius:5px;--larger-border-radius:12px;--container-border-radius:9999px;--no-border-radius:0px;--mask-bg:var(--palette-rgba-gray-7);--title-font-size-larger:30px;--title-font-size-strong:22px;--title-font-size:18px;--normal-font-size:14px;--auxiliary-font-size:16px;--auxiliary-font-size-small:12px;--overview-data-font-size:34px;--statistics-data-font-size:28px;--normal-data-font-size-larger:20px;--normal-data-font-size:16px;--chart-legend-font-size:12px;--chart-tooltips-font-size-1:12px;--chart-tooltips-font-size-2:12px;--chart-axis-x-font-size:12px;--chart-axis-x-font-size-larger:14px;--chart-axis-y-font-size:12px;--chart-axis-y-font-size-larger:14px;--font-weight-600:600;--font-weight-500:500;--font-weight-400:400;--text-shadow:0px 1px 4px #2863ee;--border-width-base:1px;--border-width-double-base:2px;--border-width-tribble-base:3px;--punctate-width-base:1px;--paragraph-width-base:1px;--button-text-color:#40d0db}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n"],"names":["createRelationLine","sourceVector","targetVector","lightColor","subVector","Vector3","subVectors","lineLength","length","lineElement","document","createElement","style","height","classList","add","lineObject","CSS3DObject","centerVector","lerpVectors","position","copy","quaternion","Quaternion","setFromUnitVectors","normalize","clone","setRotationFromQuaternion","getCenterPointOrSubPoint","start","end","pointA","pointB","createTrapezoidalRightOrLeftElement","props","BW","TW","d","TH","BH","isLeft","Math","sqrt","pow","wrapper","cssText","cantCard","className","appendChild","objectCantModel","createTrapezoidalTopOrBottomElement","isTop","topQuaternion","createTrapezoidalObject","objectData","leftBtnName","clusters","columns","leftOnClick","rightBtnName","rightOnClick","appName","container","objectContainer","set","point","width","bottomCard","objectBottomModel","z","topCard","thumbnailEle","objectTopModel","objectCantLeftModel","objectCantRightModel","objectCantTopModel","objectCantBottomModel","btnLeft","wordNode","cursor","innerText","btnLeftObject","rotateX","PI","onpointerdown","btnRight","textNode","btnRightObject","setAppPosition","dataSource","maxX","maxY","appData","map","x","y","i","parseInt","offset","leng","u","h","g","m","createTableTarget","data","cardSize","object3D","Object3D","outerWidth","outerHeight","createCurveTarget","angle","radius","vector","computeCurvePosition","n","a","sin","lookAt","computeCameraDistance","camera","bounds","distanceConfig","margin","aspect","max","tan","fov","o","forEach","t","min","apply","numRange","distance","getAppRelations","object","relationsData","relations","userData","Array","isArray","key","source","target","push","findElementByEvent","e","tagName","_targetName","toUpperCase","path","composedPath","find","node","shadowRoot","customEle","elementFromPoint","clientX","clientY","panelSpace","offsetDistance","getViewBounds","aspectH","ceil","cos","WrappedSystemCard","wrapBrick","AppWallElement","onSystemCardButtonClick","useDblclick","useDistanceConfig","handleCardDbClick","rightBtnOnClick","leftBtnOnClick","cardBrickName","disabledDefaultClickEvent","handleCardClick","containerId","noRotate","boundMargin","useSystemPopover","curClickCardItemAppData","setCurClickCardItemAppData","useState","containerRef","useRef","appwallRef","closeBtnRef","maskRef","systemCardRef","popoverRef","rendererRef","sceneRef","cameraRef","controlsRef","graph3DViewRef","targetsRef","table","curve","objectsRef","lineCiCodesRef","hoverScaleRef","baseCameraDistance","configRef","registerEvents","element","mouseoverTimer","mouseoutTimer","clickTimer","dblClickTimer","isShowGraph3D","isShowAppInfo","isShowRelations","enable","render","useCallback","current","maxDistance","handleResize","restoreElementState","onComplete","_registerEvents$curre","__objectCSS","__curve","object3d","__userData","Tween","rotation","to","scale","onUpdate","onStart","_objectsRef$current2","remove","status","item","opacity","_registerEvents$curre2","transform","targets","duration","MathUtils","randFloat","easing","Easing","Exponential","InOut","showAppInfoAnimate","toggle","reset","c","p","r","s","_objectsRef$current4","hidden","_objectsRef$current3","transition","chain","abs","rect","getBoundingClientRect","top","left","useEffect","cancel","init","_document$getElementB","containerRect","getElementById","window","innerWidth","innerHeight","scene","Scene","PerspectiveCamera","renderer","CSS3DRenderer","setSize","replaceChildren","domElement","controls","TrackballControls","rotateSpeed","minDistance","animate","requestAnimationFrame","TWEEN","update","body","observer","ResizeObserver","debounce","updateProjectionMatrix","addEventListener","observe","disconnect","removeEventListener","dispose","clear","cancelAnimationFrame","_props$dataSource","updateViewBounds","position0","_data$cardItemProps","_data$cardItemProps2","_data$cardItemProps3","_data$cardItemProps4","_data$cardItemProps5","_data$cardItemProps6","_data$cardItemProps7","cardTitle","cardItemProps","description","background","color","titleStyle","desStyle","descriptionList","statusClass","objectCSS","random","querySelector","handleMouseover","clearTimeout","_popoverRef$current","_target$__userData2","canRenderPopover","instanceId","setVisible","setTimeout","rotationY","currentEleRect","_objectsRef$current","curRelations","lineTarget","relation","every","createRelationLines","_target$__userData","centerX","centerY","setPosition","showElementBetweenRelation","handleMouseout","_target$__userData3","handleClick","stopPropagation","handleDbClick","_userData$trapezoida","trapezoidalProps","basePosition","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","blur","spread","_userData$trapezoida2","_userData$trapezoida3","_userData$trapezoida4","_userData$trapezoida5","_userData$trapezoida6","delay","visibility","React","ref","onClick","_extends","systemCardProps","classNames","infoWrapper","warningWrapper","handeReset","___CSS_LOADER_EXPORT___","module","id","toString"],"sourceRoot":""}
@@ -1,3 +0,0 @@
1
- /*! For license information please see 4235.1b0a0cb4.js.LICENSE.txt */
2
- "use strict";(globalThis.webpackChunk_next_bricks_data_view=globalThis.webpackChunk_next_bricks_data_view||[]).push([[4235],{12559:(e,t,n)=>{function r(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}n.d(t,{A:()=>r})},72016:(e,t,n)=>{function r(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{A:()=>r})},70829:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(12559);function o(e,t){return e.get((0,r.A)(e,t))}},70918:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(72016);function o(e,t,n){(0,r.A)(e,t),t.set(e,n)}},86121:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(12559);function o(e,t,n){return e.set((0,r.A)(e,t),n),n}},74635:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(72016);function o(e,t){(0,r.A)(e,t),t.add(e)}},24586:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(11369);function o(e,t,n){return(t=(0,r.A)(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},11369:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(17545);function o(e){var t=function(e,t){if("object"!=(0,r.A)(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,"string");if("object"!=(0,r.A)(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,r.A)(t)?t:t+""}},17545:(e,t,n)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}n.d(t,{A:()=>r})},34235:(e,t,n)=>{n.r(t),n.d(t,{Dialog:()=>Xt,Notification:()=>on,StoryboardFunctionRegistryFactory:()=>pe,__secret_internals:()=>r,__test_only:()=>{},applyTheme:()=>te,authenticate:()=>xa,batchSetAppsLocalTheme:()=>ne,checkIfByTransform:()=>St,checkIfOfComputed:()=>Et,createHistory:()=>A,createRuntime:()=>Ea,customEditors:()=>Na,customProcessors:()=>M,customTemplates:()=>Pe,fetchByProvider:()=>Ua,getAuth:()=>Ma,getBasePath:()=>p,getCssPropertyValue:()=>ce,getCurrentMode:()=>ie,getCurrentTheme:()=>ee,getHistory:()=>k,getPageInfo:()=>fo,getRealValue:()=>ja,getRuntime:()=>Sa,getV2RuntimeFromDll:()=>S,handleHttpError:()=>rn,httpErrorToString:()=>Qt,instantiateModalStack:()=>Ka,isLoggedIn:()=>$a,isUnauthenticatedError:()=>Zt,logout:()=>La,matchPath:()=>Bt,registerWidgetFunctions:()=>Be,registerWidgetI18n:()=>N,setUIVersion:()=>ho,unstable_createRoot:()=>Fa});var r={};n.r(r),n.d(r,{addRealTimeDataInspectHook:()=>Pr,debugDataValue:()=>Cr,getAddedContracts:()=>Ir,getAllContextValues:()=>wr,getBrickPackagesById:()=>Er,getContextValue:()=>yr,getLegalRuntimeValue:()=>Rr,getRenderId:()=>kr,legacyDoTransform:()=>ur,loadBricks:()=>Sr,loadEditors:()=>Ar,mountUseBrick:()=>cr,renderUseBrick:()=>sr,setRealTimeDataInspectRoot:()=>_r,symbolForRootRuntimeContext:()=>ir,unmountUseBrick:()=>lr,updateSnippetPreviewSettings:()=>vr,updateStoryboard:()=>dr,updateStoryboardByRoute:()=>fr,updateStoryboardBySnippet:()=>gr,updateStoryboardByTemplate:()=>pr,updateTemplatePreviewSettings:()=>hr});var o=n(24586),a=n(70918),i=n(86121),s=n(70829),c=n(26181),l=n(50049),u=n(13078),d=n(21302),f=(n(26036),n(32890));function p(){const e=document.querySelector("base");return e?e.getAttribute("href"):"/"}var h=n(41030);function m(e,t){const n=(0,h.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]&&g(n,t))return e}}function g(e,t){return"/"===e?t===e:`${t.replace(/\/+$/,"")}/`.startsWith(`${e.replace(/\/+$/,"")}/`)}function v(e){var t;return!e||(null===(t=Sa().getCurrentApp())||void 0===t?void 0:t.id)!==e.app.id&&!window.STANDALONE_MICRO_APPS&&e.app.standaloneMode}let b,y=!1;function w(e,t){y=!confirm(e),t(!y)}function E(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,f.parsePath)(o).pathname:o.pathname,"string"==typeof s&&s.startsWith("/")&&v(function(e){var t;return m((null===(t=va)||void 0===t?void 0:t.storyboards)??[],e)}(s))?location["push"===r?"assign":"replace"](c?p()+o.substring(1):e.createHref(o)):("push"===r?t:n)(o,a,i)}}return{push:r("push"),replace:r("replace")}}function S(){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 A(){if(!b){const e=(0,f.createBrowserHistory)({basename:p().replace(/\/$/,""),getUserConfirmation:w});Object.assign(e,function(e){const{push:t,replace:n}=e;function r(e,n,r){y=!1,t(e,n),null==r||r(y)}function o(e,t,r){y=!1,n(e,t),null==r||r(y)}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},...E({...e,push:r,replace:o})}}(e)),b=e}return b}const k=function(){const e=S();if(e)return e.getHistory}()||function(){return b};var I=n(74635),C=n(12559),R=n(30108),O=n(522),T=n(54958),_=n(1491),P=n(69613),x=new WeakMap;const M=function(){const e=S();if(e)return Object.freeze({define:(t,n)=>e.getRuntime().registerCustomProcessor(t,n)})}()||new class{constructor(){(0,a.A)(this,x,new Map)}define(e,t){const[n,r]=e.split(".");let o=(0,s.A)(x,this).get(n);if(o||(o=new Map,(0,s.A)(x,this).set(n,o)),o.has(r))throw new Error(`Custom processor of "${e}" already registered`);o.set(r,t)}get(e){return(0,s.A)(x,this).get(e)}};function L(e){let{app:t,meta:n}=e;if(null!=n&&n.i18n){const e=$("app",t.id),r=[];return Object.entries(n.i18n).forEach((t=>{let[n,o]=t;c.i18n.addResourceBundle(n,e,o),r.push(n)})),()=>{for(const t of r)c.i18n.removeResourceBundle(t,e)}}}function $(e,t){return`${e}/${t}`}function B(e){return c.i18n.getFixedT(null,$("widget",e))}const N=function(){const e=S();if(e)return function(t,n){return e.getRuntime().registerWidgetI18n(t,n)}}()||function(e,t){const n=$("widget",e);Object.entries(t).forEach((e=>{let[t,r]=e;c.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")},z={set:H,defineProperty:H,deleteProperty:H,setPrototypeOf:H};function G(e){return new Proxy(e,z)}function q(e){let{get:t,ownKeys:n}=e;return W()?G(Object.fromEntries(n(null).map((e=>[e,t(null,e,null)])))):new Proxy(Object.freeze({}),{get:t})}let Y="light";const X=new u.JsonStorage(localStorage),J="apps-theme";function Q(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?Q(e):e=Z(),e!==ee()&&(document.documentElement.dataset.theme=e,window.dispatchEvent(new CustomEvent("theme.change",{detail:e})))}function ne(e){X.setItem(J,{...re(),...e})}function re(){let e;try{e=X.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:l,appendI18nNamespace:u,storyboardFunctions:d,isStoryboardFunction:f}=t;switch(e){case"BASE_URL":return a?"/next":p().replace(/\/$/,"");case"FN":return d;case"IMG":return a?{get:e=>`mock/images/${e}`}:i?null==wa||null===(n=wa.images)||void 0===n?void 0:n.widgetImagesFactory(i,s):null==wa||null===(r=wa.images)||void 0===r?void 0:r.imagesFactory(l.id,l.isBuildPush,l.currentVersion);case"I18N":return a?h.identity:i?B(i):c.i18n.getFixedT(null,[u,$("app",l.id)].filter(Boolean));case"I18N_TEXT":return a?de:c.i18nText;case"PERMISSIONS":return G({check:a?fe:null==wa||null===(o=wa.checkPermissions)||void 0===o?void 0:o.checkPermissions});case"THEME":return G({getTheme:a?()=>"light":Z,getCssPropertyValue:a?()=>"":ce});case"console":return f?G(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:O.precookFunction,cook:O.cook,supply:P.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,O.precookFunction)(l.source,{typescript:l.typescript,hooks:u&&{beforeVisit:u.beforeVisit},cacheKey:l}),f=(0,P.supply)(d.attemptToVisitGlobals,le(d.attemptToVisitGlobals,{collectCoverage:n,widgetId:e,widgetVersion:t,app:s,storyboardFunctions:i,isStoryboardFunction:!0}),!!n);return l.cooked=(0,O.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){let e=t.deps;null==e&&(e=(0,T.collectMemberUsageInFunction)(t,"FN",!!n),e.delete(t.name));const r=t.perm??(0,T.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,T.collectMemberUsageInFunction)(n,"FN",!0),a=(0,T.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,O.__dev_only_clearGlobalExecutionContextStack)()},getGlobalExecutionContextStack:()=>(0,O.__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]]),Ee=new be,Se={},Ae={};function ke(e,t){let n=!1;Se[t]=e.matches;for(const[e]of we)if(Se[e]&&Ae.breakpoint!==e){Ae.breakpoint=e,n=!0;break}n&&Ee.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=Sa())||void 0===n?void 0:n.getFeatureFlags())||void 0===t||!t["brick-next-v3-strict-mode"])}function Oe(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 Te=new Set(["prefix"]);var _e=new WeakMap;const Pe=function(){const e=S();if(e)return Object.freeze({define:(t,n)=>e.getRuntime().registerCustomTemplate(t,n)})}()||new class{constructor(){(0,a.A)(this,_e,new Map)}define(e,t){var n,r;let o=(0,s.A)(_e,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)??{},c=[],l=[];for(const[t,n]of Object.entries(i))n.asVariable?(Oe(a,"Template `asVariable`",e,t),a||l.push(t)):n.mergeProperty||n.refTransform?console.error("Template `mergeProperty` and `refTransform` are dropped in v3:",e,t):n.ref&&c.push([t,n]);const u={...t,proxy:{...t.proxy,properties:Object.fromEntries(c)},state:(t.state?a?t.state:t.state.map((e=>({expose:!0,...e}))):[]).concat(l.map((e=>({name:e,expose:!0}))))};(0,s.A)(_e,this).set(e,{...u,name:e});const d=(f=u.state,(0,h.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)??{}),m=d.concat(c.map((e=>e[0]))),g=p.map((e=>e[0])),v=m.concat(g).filter((e=>e in HTMLElement.prototype&&!Te.has(e)));if(v.length>0&&(Oe(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 m}static get _dev_only_definedMethods(){return g}$$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)c.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 c)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(){return this.$$getElementByRef(n.ref)[n.refMethod??e](...arguments)},enumerable:!0});customElements.define(e,t)}}get(e){return(0,s.A)(_e,this).get(e)}};function xe(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=xe(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 Le=new Map,$e=new Proxy(Object.freeze({}),{get:(e,t)=>Le.get(t)}),Be=function(){const e=S();if(e)return function(t,n,r){return e.getRuntime().registerWidgetFunctions(t,n,r)}}()||function(e,t,n){if(Le.has(e))throw new Error(`Widget functions of "${e}" already registered`);const{storyboardFunctions:r,registerStoryboardFunctions:o}=pe({widgetId:e,widgetVersion:n});Le.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)=>{ze(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),ze=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 Ge(e,t){let n=Pa(e);if(!n&&null!=wa&&wa.checkInstalledApps&&(n=wa.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 qe(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 Xe(e){var t;const n=null==wa||null===(t=wa.flowApi)||void 0===t?void 0:t.isFlowApiProvider(e);n&&(e=wa.flowApi.FLOW_API_PROVIDER);let r=Ye.get(e);if(r)return r;if(e.includes("-")&&!customElements.get(e))if(n)wa.flowApi.registerFlowApiProvider();else if(await(0,l.loadBricksImperatively)([e],Ca()),!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 Qe(e){if((0,u.isObject)(e)&&!Ze(e))if(Je.add(e),Array.isArray(e))e.forEach(Qe);else{const t=Object.getPrototypeOf(e);t&&t.constructor!==Object||Object.values(e).forEach(Qe)}}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(Oe(e,"`resolve.field`"),e)throw new Error("Using deprecated `resolve.field`")}const[u,d]=await Promise.all([Xe(r),mt(a,t)]),f=null==n?void 0:n.renderId,p=nt(u,r,o,d,n,a,!!f&&f!==Oa());let m,{transform:g}=e;try{const e=await p;m=l?(0,h.get)(e,c):e,Qe(m)}catch(e){if(!function(e){return!(null==e||!e.transform)}(i))throw e;g=i.transform,m=e}return g?"string"==typeof g?{[g]:m}:mt(g,{...t,data:m}):m}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!=wa&&null!==(o=wa.flowApi)&&void 0!==o&&o.isFlowApiProvider(t)?await wa.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,O.shouldAllowRecursiveEvaluations)(e):(0,O.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,h.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,O.preevaluate)(e,{cache:!0,withParent:!0,hooks:{beforeVisitGlobal(e,t){(0,T.collectAppGetMenuUsage)(a,e,t),(0,T.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:d}=s;if(n.lazy||d.has("EVENT")&&!(0,u.hasOwnProperty)(t,"event")||d.has("DATA")&&!(0,u.hasOwnProperty)(t,"data"))return{blockingList:o,run:()=>Object.keys(t).length>0?{[rt]:e,[ot]:t}:e};let f,p,m,g;const v=Re(t);let b,y;(d.has("STATE")||!v&&d.has("TPL"))&&(g=xe(t,"STATE",`: "${e}"`)),d.has("FORM_STATE")&&(y=qe(t,"FORM_STATE",`: "${e}"`));const w=W();if(r||w){if(d.has("CTX")&&(f=(0,T.strictCollectMemberUsage)(e,"CTX"),r&&o.push(t.ctxStore.waitFor(f))),g){if(m=(0,T.strictCollectMemberUsage)(e,"STATE"),!v){const t=(0,T.strictCollectMemberUsage)(e,"TPL");for(const e of t)m.add(e)}r&&o.push(g.waitFor(m))}y&&(b=(0,T.strictCollectMemberUsage)(e,"FORM_STATE"),r&&o.push(y.waitFor(b))),d.has("PROCESSORS")&&(p=(0,T.strictCollectMemberUsage)(e,"PROCESSORS",2),r&&o.push((0,l.loadProcessorsImperatively)(p,Ca())))}if(r){let n=d.has("PERMISSIONS");if(!n&&d.has("FN")){const t=[...(0,T.strictCollectMemberUsage)(e,"FN")];n=ge(t)}if(n&&o.push(...t.pendingPermissionsPreCheck),a.usedArgs.size>0&&null!=wa&&wa.menu){const e=[...a.usedArgs];o.push(Promise.all(e.map((e=>wa.menu.fetchMenuById(e,t,{getStoryboardByAppId:_a,resolveData:tt,asyncComputeRealValue:mt})))))}var E;i.usedArgs.size>0&&o.push(null==wa||null===(E=wa.checkInstalledApps)||void 0===E?void 0:E.waitForCheckingApps([...i.usedArgs]))}return{blockingList:o,run(){var n,r;const{app:o,location:a,query:i,match:l,flags:w,sys:E,ctxStore:S,data:A,event:k}=t,I=t.overrideApp??o;for(const o of d)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,h.cloneDeep)(I),getMenu:null==wa||null===(n=wa.menu)||void 0===n?void 0:n.getMenuById};break;case"CTX":c[o]=q({get:(e,t)=>S.getValue(t),ownKeys:()=>Array.from(f)});break;case"DATA":c[o]=A;break;case"EVENT":c[o]=k;break;case"FLAGS":c[o]=G(w);break;case"FORM_STATE":c[o]=q({get:(e,t)=>y.getValue(t),ownKeys:()=>Array.from(b)});break;case"HASH":c[o]=a.hash;break;case"INSTALLED_APPS":c[o]=G({has:Ge});break;case"ITEM":case"INDEX":case"SIZE":{const n="ITEM"===o?"forEachItem":"INDEX"===o?"forEachIndex":"forEachSize";(0,u.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]=G({getItem:Ce("local")});break;case"MEDIA":c[o]=G(Ie());break;case"MISC":c[o]=Sa().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]=G((null==l?void 0:l.params)??{});break;case"PATH_NAME":c[o]=a.pathname;break;case"PROCESSORS":c[o]=q({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 q({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]=G({getItem:Ce("session")});break;case"TPL":if(Oe(v,'Using "TPL" in expression',`check your expression: "${e}"`),v)break;case"STATE":c[o]=q({get:(e,t)=>g.getValue(t),ownKeys:()=>Array.from(m)});break;case"SYS":c[o]=G(E??{});break;case"__WIDGET_FN__":c[o]=$e;break;case"__WIDGET_IMG__":c[o]=null==wa||null===(r=wa.images)||void 0===r?void 0:r.widgetImagesFactory;break;case"__WIDGET_I18N__":c[o]=B}Object.assign(c,le(s.attemptToVisitGlobals,{storyboardFunctions:he,app:I,appendI18nNamespace:t.appendI18nNamespace}));try{const t=(0,O.cook)(s.expression,s.source,{globalVariables:(0,P.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,O.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,u.hasOwnProperty)(t,"data")?n.noInject?_.transform:_.transformAndInject:n.noInject?bt:_.inject)(e,t),i||Qe(a),a}if(!(0,u.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,O.isEvaluable)(e)?(a=ut(e,t),i=st(e)):a=o?e:((0,u.hasOwnProperty)(t,"data")?n.noInject?_.transform:_.transformAndInject:n.noInject?bt:_.inject)(e,t),i||Qe(a),a}if(!(0,u.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,u.hasOwnProperty)(e,"if")||!!("string"==typeof e.if||at(e.if)?await mt(e.if,t):e.if)}function wt(e,t){return!(0,u.hasOwnProperty)(e,"if")||!!("string"==typeof e.if||at(e.if)?gt(e.if,t):e.if)}function Et(e){return!(0,u.hasOwnProperty)(e,"if")||!!e.if}const St=function(){const e=S();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,O.isEvaluable)(e):at(e)){const o="string"==typeof e?e:it(e);if((0,O.isTrackAll)(o)){const e=(0,T.trackAll)(o);e&&(t=e.context,n=e.state,r=e.formState)}else t=(0,T.track)(o,"track context","CTX"),n=(0,T.track)(o,"track state","STATE"),r=(0,T.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,u.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,u.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,u.isObject)(o))return[n,o]})).filter(Boolean)):{}}(t,n);Array.isArray(e)||(e=[e]),e.forEach((e=>{Ct(e,r)}))}function Ot(e,t,n){if(n)for(const{contextNames:r,stateNames:o,propValue:a}of t){if(r)for(const t of r)n.disposes.push(e.ctxStore.onChange(t,n.listener));if(o)for(const t of o){const r=xe(e,"STATE",`: "${a}"`);n.disposes.push(r.onChange(t,n.listener))}}}function Tt(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function _t(e){return e&&e.sensitive?"":"i"}function Pt(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)),E=Tt(u(y.suffix));if(y.pattern)if(t&&t.push(y),w||E)if("+"===y.modifier||"*"===y.modifier){var S="*"===y.modifier?"?":"";g+="(?:".concat(w,"((?:").concat(y.pattern,")(?:").concat(E).concat(w,"(?:").concat(y.pattern,"))*)").concat(E,")").concat(S)}else g+="(?:".concat(w,"(").concat(y.pattern,")").concat(E,")").concat(y.modifier);else{if("+"===y.modifier||"*"===y.modifier)throw new TypeError('Can not repeat "'.concat(y.name,'" without a prefix and suffix'));g+="(".concat(y.pattern,")").concat(y.modifier)}else g+="(?:".concat(w).concat(E,")").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,_t(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=t.delimiter,i=void 0===a?"/#?":a,s=[],c=0,l=0,u="",d=function(e){if(l<n.length&&n[l].type===e)return n[l++].value},f=function(e){var t=d(e);if(void 0!==t)return t;var r=n[l],o=r.type,a=r.index;throw new TypeError("Unexpected ".concat(o," at ").concat(a,", expected ").concat(e))},p=function(){for(var e,t="";e=d("CHAR")||d("ESCAPED_CHAR");)t+=e;return t},h=function(e){var t=s[s.length-1],n=e||(t&&"string"==typeof t?t:"");if(t&&!n)throw new TypeError('Must have text between two parameters, missing text after "'.concat(t.name,'"'));return!n||function(e){for(var t=0,n=i;t<n.length;t++){var r=n[t];if(e.indexOf(r)>-1)return!0}return!1}(n)?"[^".concat(Tt(i),"]+?"):"(?:(?!".concat(Tt(n),")[^").concat(Tt(i),"])+?")};l<n.length;){var m=d("CHAR"),g=d("NAME"),v=d("PATTERN");if(g||v){var b=m||"";-1===o.indexOf(b)&&(u+=b,b=""),u&&(s.push(u),u=""),s.push({name:g||c++,prefix:b,suffix:"",pattern:v||h(b),modifier:d("MODIFIER")||""})}else{var y=m||d("ESCAPED_CHAR");if(y)u+=y;else if(u&&(s.push(u),u=""),d("OPEN")){b=p();var w=d("NAME")||"",E=d("PATTERN")||"",S=p();f("CLOSE"),s.push({name:w||(E?c++:""),pattern:w&&!E?h(b):E,prefix:b,suffix:S,modifier:d("MODIFIER")||""})}else f("END")}}return s}(e,n),t,n)}function xt(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 xt(e,t,n).source}));return new RegExp("(?:".concat(r.join("|"),")"),_t(n))}(e,t,n):Pt(e,t,n)}const Mt=new Map,Lt=1e4;let $t=0;function Bt(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=Mt.get(n);r||Mt.set(n,r=new Map);const o=r.get(e);if(o)return o;const a=[],i={regexp:xt(e,a,t),keys:a};return $t<Lt&&(r.set(e,i),$t++),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 Nt(e,t,n){return Bt(n,{path:e.path.replace(/^\$\{APP.homepage\}/,t),exact:e.exact})}const Ut=Symbol.for("tpl.asyncComputedPropsFromHost"),Ft=Symbol.for("tpl.stateStoreId"),jt=Symbol.for("tpl.externalForEachItem"),Dt=Symbol.for("tpl.externalForEachIndex"),Kt=Symbol.for("tpl.externalForEachSize"),Vt=new Set;let Wt=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.LICENSE_EXPIRED="LICENSE_EXPIRED",e.NO_PERMISSION="NO_PERMISSION",e.PAGE_NOT_FOUND="PAGE_NOT_FOUND",e.APP_NOT_FOUND="APP_NOT_FOUND",e.UNKNOWN_ERROR="UNKNOWN_ERROR",e.GO_BACK_TO_PREVIOUS_PAGE="GO_BACK_TO_PREVIOUS_PAGE",e.GO_BACK_HOME="GO_BACK_HOME",e.RELOAD="RELOAD",e}({});const Ht={[Wt.REQUEST_FAILED]:"Request Failed",[Wt.SOMETHING_WENT_WRONG]:"Something went wrong!",[Wt.LOGIN_TIMEOUT_MESSAGE]:"You haven't logged in or your login session has expired. Login right now?",[Wt.NETWORK_ERROR]:"Network error, please check your network.",[Wt.LICENSE_EXPIRED]:"The license authorization has expired, please contact the platform administrator",[Wt.NO_PERMISSION]:"Unauthorized access, unable to retrieve the required resources for this page",[Wt.PAGE_NOT_FOUND]:"Page not found, please check the URL",[Wt.APP_NOT_FOUND]:"App not found, maybe the URL is wrong or you don't have permission to access",[Wt.UNKNOWN_ERROR]:"Oops! Something went wrong",[Wt.GO_BACK_TO_PREVIOUS_PAGE]:"Go back to previous page",[Wt.GO_BACK_HOME]:"Go back to home page",[Wt.RELOAD]:"Reload"},zt={[Wt.REQUEST_FAILED]:"请求失败",[Wt.SOMETHING_WENT_WRONG]:"出现了一些问题!",[Wt.LOGIN_TIMEOUT_MESSAGE]:"您还未登录或登录信息已过期,现在重新登录?",[Wt.NETWORK_ERROR]:"网络错误,请检查您的网络连接。",[Wt.LICENSE_EXPIRED]:"License 授权失效,请联系平台管理员",[Wt.NO_PERMISSION]:"没有权限,无法获取页面所需要的资源",[Wt.PAGE_NOT_FOUND]:"请求的页面未找到,请确认 URL 是否正确",[Wt.APP_NOT_FOUND]:"请求的微应用无法找到, 可能是 URL 错误或者无权限访问",[Wt.UNKNOWN_ERROR]:"糟糕!页面出现了一些问题",[Wt.GO_BACK_TO_PREVIOUS_PAGE]:"回到上一页",[Wt.GO_BACK_HOME]:"回到首页",[Wt.RELOAD]:"刷新"},Gt="core/runtime",qt={en:Ht,zh:zt};let Yt;const Xt=Object.freeze({show:function(e){if(Yt)return Yt.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 Jt(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 Qt(e){if(e instanceof Event&&e.target instanceof HTMLScriptElement)return e.target.src;if(e instanceof R.HttpFetchError)return c.i18n.t(`${Gt}:${Wt.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 Zt(e){return e instanceof R.HttpResponseError&&401===e.response.status&&!!e.responseJson&&100003===e.responseJson.code}let en,tn,nn=!1;function rn(e){if(e instanceof R.HttpAbortError)return;if(Zt(e)&&!window.NO_AUTH_GUARD){if(nn)return;return nn=!0,void Xt.show({type:"confirm",content:c.i18n.t(`${Gt}:${Wt.LOGIN_TIMEOUT_MESSAGE}`)}).then((()=>{!function(){const e=Sa().getFeatureFlags()["sso-enabled"],t=k();Jt(t.location),t.push(e?"/sso-auth/login":"/auth/login",{from:{...t.location,state:void 0}})}(),nn=!1}),(()=>{nn=!1}))}console.error(e);const t=Qt(e);t!==en&&(en=t,Xt.show({type:"error",title:c.i18n.t(`${Gt}:${Wt.REQUEST_FAILED}`),content:t,contentStyle:{whiteSpace:"pre-wrap",wordBreak:"break-word"}}).then((()=>{en=void 0})))}const on=Object.freeze({show:function(e){tn?tn.resolve(e):alert(e.message)}});function an(e,t,n){t&&Object.entries(t).forEach((t=>{let[r,o]=t;const a=dn(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 sn(e){return"string"==typeof e.action}function cn(e){return"string"==typeof e.useProvider}function ln(e){return!(!e.target&&!e.targetRef||!e.method&&!e.properties)}function un(e){return!!e.then}function dn(e,t,n){return function(r){for(const o of[].concat(e))if(wt(o,{...t,event:r}))if(un(o))dn(o.then,t,n)(r);else if(sn(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":mn(r,a,o.args,o.callback,t);break;case"window.open":gn(r,o.args,t);break;case"window.postMessage":vn(r,o.args,t);break;case"parent.postMessage":bn(r,o.args,t);break;case"location.reload":case"location.assign":An(r,a,o.args,t);break;case"localStorage.setItem":case"localStorage.removeItem":case"sessionStorage.setItem":case"sessionStorage.removeItem":kn(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":In(r,a,o.args,t);break;case"message.success":case"message.error":case"message.info":case"message.warn":Cn(r,a,o.args,t);break;case"handleHttpError":rn(r.detail);break;case"context.assign":case"context.replace":case"context.refresh":case"context.load":wn(r,a,o.args,o.batch??!0,o.callback,t);break;case"state.update":case"state.refresh":case"state.load":En(r,a,o.args,o.batch??!0,o.callback,t);break;case"tpl.dispatchEvent":{const[e,n]=Tn(o.args,t,r);Me(t,o.action,`: ${e}`).dispatchEvent(new CustomEvent(e,n));break}case"formstate.update":Sn(r,o.args,o.callback,t);break;case"message.subscribe":case"message.unsubscribe":Rn(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]=Tn(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 cn(o)?fn(r,o,t,n):ln(o)?pn(r,o,t,n):console.error("unknown event handler:",o);else o.else&&dn(o.else,t,n)(r)}}function fn(e,t,n,r){const o="saveAs"!==t.method?"resolve":"saveAs";hn(e,t.useProvider,t,o,n,r)}function pn(e,t,n,r){let o=[];const a=t.target,i=t.targetRef;let s=a;if(("string"==typeof a?(0,O.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,O.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=>{hn(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 hn(e,t,n,r,o,a,i){const s=cn(n),c=async()=>{var a;const c=s?await Xe(t):t;if("function"!=typeof c[r])throw new Error(`target <${c.tagName.toLowerCase()}> has no method: ${r}`);let l=Tn(n.args,o,e,i);var u;return cn(n)&&null!=wa&&null!==(a=wa.flowApi)&&void 0!==a&&a.isFlowApiProvider(n.useProvider)&&(l=await wa.flowApi.getArgsOfFlowApi(n.useProvider,l,r,null===(u=n.sse)||void 0===u?void 0:u.stream)),c[r](...l)};if(!n.callback)return void c();const l=On(n.callback,o,a),u={progress:l("progress"),success:l("success"),error:l("error"),finally:l("finally")};if(s){var d,f;const t={...o,event:e};if(gt(null===(d=n.sse)||void 0===d?void 0:d.stream,t))return void async function(e,t){let{progress:n,success:r,error:o,finally:a}=t;const i=Oa();try{const t=await e();for await(const e of t){if(i!==Oa())return;null==n||n(e)}if(i!==Oa())return;null==r||r()}catch(e){if(i!==Oa())return;null==o||o(e)}finally{null==a||a()}}(c,u);if(gt(null===(f=n.poll)||void 0===f?void 0:f.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,h.pick)(n,["interval","leadingRequestDelay","continueOnError","delegateLoadingBar"]),r),m=Oa();let g;async function v(){let t;Vt.delete(g);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 h;t=i||m!==Oa(),t?i&&(null==s||s()):(null==o||o(n),null!==(h=gt(l,r))&&void 0!==h&&h(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||m!==Oa(),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){g=setTimeout(v,e),Vt.add(g)}b(d??0),p&&window.dispatchEvent(new Event("request.start"))}(c,u,n.poll,t)}try{const e=await c();u.success(e)}catch(e){u.error(e)}finally{u.finally()}}function mn(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=Tn(n,o,e,{useEventDetailAsDefault:!0}),c.length=a),i&&r){const e=On(r,o,void 0);c.push((t=>{e(t?"error":"success")({blocked:t}),e("finally")({blocked:t})}))}k()[s](...c)}function gn(e,t,n){const[r,o,a]=Tn(t,n,e);window.open(r,o||"_self",a)}function vn(e,t,n){const r=Tn(t,n,e);1===r.length&&r.push(location.origin),window.postMessage(...r)}function bn(e,t,n){if(parent===window)throw new Error("parent is the window itself");const r=Tn(t,n,e);parent.postMessage(...r)}function yn(e,t,n,r,o,a){t?r.updateValues(e,n,(e=>Tn(e,o,a)[0])):e.forEach((e=>{const{name:t,value:i}=Tn([e],o,a)[0];r.updateValue(t,i,n)}))}function wn(e,t,n,r,o,a){if(!Array.isArray(n)||!n.every(u.isObject)||"assign"!==t&&"replace"!==t){const[r,i]=Tn(n,a,e);a.ctxStore.updateValue(r,i,t,o,a)}else yn(n,r,t,a.ctxStore,a,e)}function En(e,t,n,r,o,a){if(Array.isArray(n)&&n.every(u.isObject)&&"update"===t)yn(n,r,"replace",xe(a,`state.${t}`,`: ${JSON.stringify(n)}`),a,e);else{const[r,i]=Tn(n,a,e);xe(a,`state.${t}`,`: ${r}`).updateValue(r,i,"update"===t?"replace":t,o,a)}}function Sn(e,t,n,r){const[o,a]=Tn(t,r,e);qe(r,"formstate.update",`: ${o}`).updateValue(o,a,"replace",n,r)}function An(e,t,n,r){if("assign"===t){const[t]=Tn(n,r,e);location.assign(t)}else location[t]()}function kn(e,t,n,r,o){const a="localStorage"===t?localStorage:sessionStorage,[i,s]=Tn(r,o,e);"setItem"===n?void 0!==s&&a.setItem(i,JSON.stringify(s)):a.removeItem(i)}function In(e,t,n,r){console[t](...Tn(n,r,e,{useEventAsDefault:!0}))}function Cn(e,t,n,r){const o=Tn(n,r,e,{useEventAsDefault:!0});on.show({type:t,message:o[0]})}async function Rn(e,t,n,r,o,a){const i=()=>{var o;const a=Tn(n,r,e);return null==wa||null===(o=wa.messageDispatcher)||void 0===o?void 0:o[t](...a)};if(!a)return void i();const s=On(a,r,o);try{const e=await i();s("success")(e)}catch(e){s("error")(e)}finally{s("finally")()}}function On(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});dn(a,t,n)(e)}catch(e){console.error(e)}else"error"===r&&console.error("Unhandled callback error:",o)}}}function Tn(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 _n(e){var t;const{ref:n,runtimeContext:r,element:o}=e;if(!n||!r.tplStateStoreId)return;const{hostBrick:a}=xe(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 Pn(e){const{ref:t,runtimeContext:n,element:r}=e;if(null==n||!n.tplStateStoreId||!t)return;const{hostBrick:o}=xe(n,"unbindTemplateProxy");o.tplHostMetadata.internalBricksByRef.delete(t);for(const[e,t]of r.$$proxyListeners??[])r.removeEventListener(e,t);delete r.$$proxyListeners}let xn=function(e){return e[e.ROOT=1]="ROOT",e[e.BRICK=2]="BRICK",e[e.PLACEHOLDER=3]="PLACEHOLDER",e}({});function Mn(e){e.replaceChildren()}function Ln(e,t){window.DISABLE_REACT_FLUSH_SYNC=!1;let n=e.child;const r=[];for(;n;){if(n.tag===xn.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),an(i,n.events,n.runtimeContext),n.tplHostMetadata&&(i.$$tplStateStore=xe({tplStateStoreId:n.tplHostMetadata.tplStateStoreId,tplStateStoreMap:n.runtimeContext.tplStateStoreMap},"mount")),_n(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===xn.ROOT?null===(i=e.container)||void 0===i||i.append(...e.childElements):e.element.append(...e.childElements),e.childElements=void 0;if(e.tag===xn.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 $n=["onMount","onUnmount","onMediaChange","onScrollIntoView","onMessage","onMessageClose"],Bn=["onBeforePageLoad","onPageLoad","onPageLeave","onBeforePageLeave","onAnchorLoad","onAnchorUnload"];var Nn=new WeakMap,Un=new WeakMap,Fn=new WeakMap,jn=new WeakMap,Dn=new WeakMap,Kn=new WeakMap,Vn=new WeakMap,Wn=new WeakMap,Hn=new WeakMap,zn=new WeakSet;class Gn{constructor(e,t){(0,I.A)(this,zn),(0,o.A)(this,"scope",void 0),(0,o.A)(this,"unknownBricks",void 0),(0,o.A)(this,"renderId",void 0),(0,a.A)(this,Nn,void 0),(0,a.A)(this,Un,{onBeforePageLoad:[],onPageLoad:[],onPageLeave:[],onBeforePageLeave:[],onAnchorLoad:[],onAnchorUnload:[],onMediaChange:[],onScrollIntoView:[],onMount:[],onUnmount:[],onMessage:[],onMessageClose:[]}),(0,a.A)(this,Fn,new Map),(0,a.A)(this,jn,void 0),(0,a.A)(this,Dn,new Map),(0,a.A)(this,Kn,void 0),(0,a.A)(this,Vn,void 0),(0,a.A)(this,Wn,new WeakMap),(0,a.A)(this,Hn,new Map),this.scope=e,this.unknownBricks=(null==t?void 0:t.unknownBricks)??"throw",(0,i.A)(Nn,this,null==t?void 0:t.routeHelper),this.renderId=null==t?void 0:t.renderId}setInitialMenuRequestNode(e){(0,i.A)(Vn,this,e)}memoizeMenuRequestNode(e,t){(0,s.A)(Wn,this).set(e,t)}getMenuRequests(){const e=[];let t=(0,s.A)(Vn,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,s.A)(Wn,this).get(t);(0,s.A)(Wn,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,s.A)(Nn,this).mergeMenus(this.getMenuRequests())}reBailout(e){return(0,s.A)(Nn,this).bailout(e)}reCatch(e,t){return(0,s.A)(Nn,this).catch(e,t,!1,!0)}async didPerformIncrementalRender(e,t){let n=!1;const r=[];for(const{parentRoutes:o,callback:a}of[...(0,s.A)(Hn,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,s.A)(Hn,this).set(e,{parentRoutes:t,callback:n})}registerBrickLifeCycle(e,t){if(!t)return;const n=[...$n,..."page"===this.scope?Bn:[]];for(const r of n){const n=t[r];n&&(0,s.A)(Un,this)[r].push({brick:e,handlers:n})}(0,h.isEmpty)(t.useResolves)||console.error("`lifeCycle.useResolves` is dropped in v3:",t)}registerArbitraryLifeCycle(e,t){const n=(0,s.A)(Dn,this).get(e);n?n.add(t):(0,s.A)(Dn,this).set(e,new Set([t]))}memoize(e,t,n,r){(0,s.A)(Kn,this)||(0,i.A)(Kn,this,new WeakMap);const o=[e??"",...t].join(".");let a=(0,s.A)(Kn,this).get(r);a||(a=new Map,(0,s.A)(Kn,this).set(r,a)),a.set(o,{node:n,last:Qn(n),lastNormal:Zn(n),lastPortal:tr(n)})}reRender(e,t,n,r){const o=[e??"",...t].join("."),a=(0,s.A)(Kn,this).get(r).get(o),{node:i,last:c,lastNormal:l,lastPortal:u}=a;let d;const f=[];if((null==i?void 0:i.tag)===xn.PLACEHOLDER){var p,h;d=(null===(p=function(e){return er(e,!0)}(i))||void 0===p?void 0:p.element)??null;const e=null===(h=function(e){return nr(e,!0)}(i))||void 0===h?void 0:h.element;e&&f.push(e)}else{var m,g;d=(null==l||null===(m=l.element)||void 0===m?void 0:m.nextSibling)??null;let e=null==u||null===(g=u.element)||void 0===g?void 0:g.nextSibling;for(;e&&(f.push(e),e instanceof HTMLElement&&"DIV"===e.tagName);)e=e.nextSibling}const v=Qn(n);let b;a.node=n,a.last=v,a.lastNormal=Zn(n),a.lastPortal=tr(n);let y=r.child;for(;y&&y!==c;){if(y.sibling===i){b=y;break}y=y.sibling}const w=document.createDocumentFragment(),E=document.createDocumentFragment(),S={tag:xn.ROOT,container:w,createPortal:E,child:n};for(y=n;y;)y.return=S,y=y.sibling;const A=rr(i,c);for((0,C.A)(zn,this,qn).call(this,A),Ln(S),b?b.sibling=n:r.child=n,v&&(v.sibling=null==c?void 0:c.sibling),y=n;y;)y.return=r,y=y.sibling;var k,I;if(w.hasChildNodes()&&(r.tag===xn.ROOT?null===(k=r.container)||void 0===k||k.insertBefore(w,d):null===(I=r.element)||void 0===I||I.insertBefore(w,d)),E.hasChildNodes()){var R;let e=n;for(;e&&e.return;)e=e.return;if((null===(R=e)||void 0===R?void 0:R.tag)!==xn.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 f)if(t.contains(e)){r=e;break}t.insertBefore(E,r)}const O=rr(n,v);(0,C.A)(zn,this,Yn).call(this,O)}dispose(){for(const e of Object.values((0,s.A)(Un,this)))e.length=0;for(const e of(0,s.A)(Fn,this).values()){for(const t of e)t.disconnect();e.length=0}(0,s.A)(Fn,this).clear(),(0,s.A)(jn,this)&&(Ee.removeEventListener("change",(0,s.A)(jn,this)),(0,i.A)(jn,this,void 0)),(0,i.A)(Kn,this,void 0),(0,s.A)(Dn,this).clear(),(0,s.A)(Hn,this).clear(),(0,i.A)(Wn,this,void 0)}dispatchBeforePageLoad(){(0,C.A)(zn,this,Xn).call(this,"onBeforePageLoad",new CustomEvent("page.beforeLoad"))}dispatchPageLoad(){const e=new CustomEvent("page.load");(0,C.A)(zn,this,Xn).call(this,"onPageLoad",e),window.dispatchEvent(e)}dispatchBeforePageLeave(e){(0,C.A)(zn,this,Xn).call(this,"onBeforePageLeave",new CustomEvent("page.beforeLeave",{detail:e}))}dispatchPageLeave(){(0,C.A)(zn,this,Xn).call(this,"onPageLeave",new CustomEvent("page.leave"))}dispatchAnchorLoad(){const{hash:e}=k().location;e&&"#"!==e?(0,C.A)(zn,this,Xn).call(this,"onAnchorLoad",new CustomEvent("anchor.load",{detail:{hash:e,anchor:e.substring(1)}})):(0,C.A)(zn,this,Xn).call(this,"onAnchorUnload",new CustomEvent("anchor.unload"))}initializeScrollIntoView(){for(const{brick:e,handlers:t}of(0,s.A)(Un,this).onScrollIntoView)(0,C.A)(zn,this,Jn).call(this,e,t)}initializeMediaChange(){(0,i.A)(jn,this,(e=>{(0,C.A)(zn,this,Xn).call(this,"onMediaChange",new CustomEvent("media.change",{detail:G(e.detail)}))})),Ee.addEventListener("change",(0,s.A)(jn,this))}initializeMessageDispatcher(){var e;for(const{brick:e,handlers:n}of(0,s.A)(Un,this).onMessage)for(const r of[].concat(n)){var t;null==wa||null===(t=wa.messageDispatcher)||void 0===t||t.onMessage(r.channel,(t=>{dn(r.handlers,e.runtimeContext,e)(new CustomEvent("message.push",{detail:t}))}))}null==wa||null===(e=wa.messageDispatcher)||void 0===e||e.onClose((()=>{(0,C.A)(zn,this,Xn).call(this,"onMessageClose",new CustomEvent("message.close"))}))}dispatchOnMount(){(0,C.A)(zn,this,Xn).call(this,"onMount",new CustomEvent("mount"))}dispatchOnUnmount(){(0,C.A)(zn,this,Xn).call(this,"onUnmount",new CustomEvent("unmount"))}}function qn(e){const t=[...$n,..."page"===this.scope?Bn:[]],n=[];for(const r of t){const t=(0,h.remove)((0,s.A)(Un,this)[r],(t=>e.has(t.brick)));"onUnmount"===r&&n.push(...t)}for(const t of e){var r,o,a;const e=(0,s.A)(Fn,this).get(t);if(null!=e&&e.length){for(const t of e)t.disconnect();e.length=0,(0,s.A)(Fn,this).delete(t)}Pn(t),null===(r=t.element)||void 0===r||delete r.$$tplStateStore,null===(o=t.element)||void 0===o||o.remove(),null===(a=t.disposes)||void 0===a||a.forEach((e=>e())),delete t.disposes}const i=new CustomEvent("unmount");for(const{brick:e,handlers:t}of n)dn(t,e.runtimeContext,e)(i)}function Yn(e){const t=new CustomEvent("mount");for(const{brick:n,handlers:r}of(0,s.A)(Un,this).onMount)e.has(n)&&dn(r,n.runtimeContext,n)(t);for(const{brick:t,handlers:n}of(0,s.A)(Un,this).onScrollIntoView)e.has(t)&&(0,C.A)(zn,this,Jn).call(this,t,n)}function Xn(e,t){for(const{brick:n,handlers:r}of(0,s.A)(Un,this)[e])dn(r,n.runtimeContext,n)(t);const n=(0,s.A)(Dn,this).get(e);if(n)for(const e of n)e()}function Jn(e,t){const n=t.threshold??.1,r=new IntersectionObserver(((r,o)=>{r.forEach((r=>{r.isIntersecting&&r.intersectionRatio>=n&&(dn(t.handlers,e.runtimeContext,e)(new CustomEvent("scroll.into.view")),o.disconnect())}))}),{threshold:n});r.observe(e.element);let o=(0,s.A)(Fn,this).get(e);o||(o=[],(0,s.A)(Fn,this).set(e,o)),o.push(r)}function Qn(e){let t=e;for(;null!==(n=t)&&void 0!==n&&n.sibling;){var n;t=t.sibling}return t}function Zn(e){return er(e,!1)}function er(e,t){let n,r=e;for(;r;){if(r.tag===xn.BRICK&&!r.portal){if(t)return r;n=r}r=r.sibling}return n}function tr(e){return nr(e,!1)}function nr(e,t){let n,r=e;for(;r;){if(r.tag===xn.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 rr(e,t){const n=new Set;let r=e;for(;r;)if(r.tag===xn.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 or=new Map;function ar(e){return or.get(e)}const ir=Symbol.for("root.runtimeContext");async function sr(e,t,n){var r,o;const[a,i,s]=ro({...e[ir]??Ta(),data:t,pendingPermissionsPreCheck:[]});a.tplStateStoreMap??(a.tplStateStoreMap=new Map),a.formStateStoreMap??(a.formStateStoreMap=new Map);const c=new Gn("fragment"),l={tag:xn.ROOT,createPortal:null},u=e.transform,d=Re();u&&Oe(d,"`useBrick.transform`",'please use "properties" instead, check your useBrick:',e);const f=await eo(l,d&&!n?e:{errorBoundary:n,...e,properties:{...e.properties,...u}},a,c,[],{}),p=[...i,...s];if(await no(f,a,p),(null===(r=f.node)||void 0===r?void 0:r.tag)===xn.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 cr(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},Ln(r,t),o.dispatchOnMount(),o.initializeScrollIntoView(),o.initializeMediaChange(),o.initializeMessageDispatcher();for(const e of a)e.mountAsyncData();return{portal:n}}function lr(e,t){let{rendererContext:n}=e;t.portal&&(Mn(t.portal),t.portal.remove()),n.dispatchOnUnmount(),n.dispose()}function ur(e,t,n){if(n)throw new Error("Legacy doTransform does not support options in v3");return gt(t,{...Ta(),data:e},{noInject:!0})}function dr(e,t){const n=_a(e);Object.assign(n,{...t,meta:{...n.meta,...t.meta},$$fulfilling:null,$$fulfilled:!0,$$registerCustomTemplateProcessed:!1}),L(n)}function fr(e,t){const n=_a(e);let r=!1;function o(e){e.forEach(((n,i)=>{"routes"===n.type?o(n.routes):function(e){return e.path===t.path&&!e.exact==!t.exact}(n)?(r=!0,e[i]=t):Array.isArray(n.bricks)&&a(n.bricks)}))}function a(e){e.forEach((e=>{if(e.slots)for(const t of Object.values(e.slots))"routes"===t.type?o(t.routes):a(t.bricks)}))}o(n.routes),r||n.routes.unshift(t)}function pr(e,t,n){const r=`${e}.${t.name}`;Pe.define(r,{bricks:t.bricks,proxy:t.proxy,state:t.state}),hr(e,t.name,n)}function hr(e,t,n){br(e,`\${APP.homepage}/_dev_only_/template-preview/${t}`,[{brick:t,...(0,h.pick)(n,"properties","events","lifeCycle","context","slots","children")}])}function mr(e){return`\${APP.homepage}/_dev_only_/snippet-preview/${e}`}function gr(e,t){var n;br(e,mr(t.snippetId),null!==(n=t.bricks)&&void 0!==n&&n.length?t.bricks:[{brick:"span"}],t.context)}const vr=gr;function br(e,t,n,r){const{routes:o}=_a(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 yr(e,t){let{tplStateStoreId:n}=t;const r=Ta();return n?xe({...r,tplStateStoreId:n},"STATE").getValue(e):r.ctxStore.getValue(e)}function wr(e){let{tplStateStoreId:t}=e;const n=Ta();return t?xe({...n,tplStateStoreId:t},"STATE").getAllValues():n.ctxStore.getAllValues()}function Er(e){return Ca().find((t=>t.id?t.id===e:t.filePath.startsWith(`${e}/`)))}function Sr(e){return(0,l.loadBricksImperatively)(e,Ca())}function Ar(e,t){return(0,l.loadEditorsImperatively)(e,t??Ca())}function kr(){return Oa()}async function Ir(e,t){let{appId:n,updateStoryboardType:r,collectUsedContracts:o}=t;const a=_a(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=mr(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 Cr(e,t){let{tplStateStoreId:n,routeId:r}=t;const o={...Ta(),tplStateStoreId:n,match:ar(r)};return e.resolve?tt(e.resolve,o,{cache:"reload"}):mt(e.value,o)}function Rr(e){const t=Ta();return{app:(null==t?void 0:t.overrideApp)??(null==t?void 0:t.app),location:(0,h.pick)(location,["href","origin","hostname","host"]),...(0,h.pick)(t,["query","sys"]),match:ar(null==e?void 0:e.routeId)}}let Or;const Tr=[];function _r(e){Or=e;const t=wr({tplStateStoreId:e.tplStateStoreId});xr({changeType:"initialize",tplStateStoreId:e.tplStateStoreId,detail:{data:t}})}function Pr(e){Tr.push(e)}function xr(e){setTimeout((()=>{for(const t of Tr)try{t(e)}catch(t){console.error(`RealTimeDataInspectHook failed (${e.changeType}):`,t)}}))}const Mr=["onBeforePageLoad","onPageLoad","onBeforePageLeave","onPageLeave","onAnchorLoad","onAnchorUnload"];class Lr{constructor(e,t,n,r){(0,o.A)(this,"type",void 0),(0,o.A)(this,"data",new Map),(0,o.A)(this,"changeEventType",void 0),(0,o.A)(this,"pendingStack",[]),(0,o.A)(this,"hostBrick",void 0),(0,o.A)(this,"stateStoreId",void 0),(0,o.A)(this,"batchUpdate",!1),(0,o.A)(this,"batchUpdateContextsNames",[]),(0,o.A)(this,"rendererContext",void 0),(0,o.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(Or){const{tplStateStoreId:n}=Or;(n?"STATE"===this.type&&this.stateStoreId===n:"CTX"===this.type)&&xr({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,u.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!==Oa()};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||rn(e)}))),r){const e=On(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,T.collectMemberUsage)(e,t);if(!n&&"STATE"===t){const t=(0,T.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;const r=null===(n=this.data.get(e))||void 0===n?void 0:n.eventTarget;return null==r||r.addEventListener(this.changeEventType,t),()=>{null==r||r.removeEventListener(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,u.hasOwnProperty)(e,"value");c=e.track&&n&&(0,u.hasOwnProperty)(e.resolve,"if")&&(0,T.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 d={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 f;t&&Mr.includes(t)&&(null===(f=this.rendererContext)||void 0===f||f.registerArbitraryLifeCycle(t,(()=>{this.updateValue(e.name,void 0,"load")})))}if(e.onChange&&d.eventTarget.addEventListener(this.changeEventType,dn(e.onChange,t)),e.track){const n=(0,T.strictCollectMemberUsage)(c?[e.resolve,e.value]:a?e.resolve:e.value,this.type);!a&&(d.deps=[...n]);for(const r of n)this.onChange(r,this.batchAddListener((()=>{d.useResolve=c?wt(e.resolve,t):!!a,d.useResolve?this.updateValue(e.name,{cache:"default"},"refresh"):this.updateValue(e.name,gt(e.value,t),"replace")}),e))}if(d.eventTarget.addEventListener(this.changeEventType,(t=>{this.notifyRealTimeDataChange(e.name,t.detail)})),this.data.set(e.name,d),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 $r(e,t,n){const{reversedProxies:r,asyncHostPropertyEntries:o,externalSlots:a,tplStateStoreId:i,hostBrick:s}=e;let c;if(t&&r){const e=r.properties.get(t);e&&(d=o,c=e.map((e=>{let{from:t,to:n}=e;const r=d.filter((e=>e[0]===t));if(r.length>0&&n.refProperty)return[n.refProperty,kt(r,t),!0]})).filter(Boolean));const i=r.slots.get(t);if(i&&a){const e=new Map;for(const{from:t,to:r}of i){var l;const o=(null===(l=a[t])||void 0===l?void 0:l.bricks)??[];if(!o.length)continue;const i=r.refSlot??t;let c=e.get(i);if(!c){c=[];const t=(0,u.hasOwnProperty)(n,i)?n[i].bricks.length+1:1;for(let e=0;e<t;e+=1)c.push([]);e.set(i,c)}const d=r.refPosition??-1,f=(0,u.hasOwnProperty)(s.runtimeContext,"forEachItem");c[(0,h.clamp)(d<0?c.length+d:d,0,c.length-1)].push(...f?Br(o,s.runtimeContext.forEachItem,s.runtimeContext.forEachIndex,s.runtimeContext.forEachSize):o)}for(const[t,r]of e.entries()){(0,u.hasOwnProperty)(n,t)||(n[t]={type:"bricks",bricks:[]});const e=n[t];e.bricks=r.flatMap(((t,n)=>n<e.bricks.length?t.concat(e.bricks[n]):t)),0===e.bricks.length&&delete n[t]}}}var d;return{[Ut]:c,[Ft]:i}}function Br(e,t,n,r){return e.map((e=>{let{children:o,slots:a,...i}=e;return{...i,[jt]:t,[Dt]:n,[Kt]:r,slots:":forEach"===i.brick?io(o,a):Object.fromEntries(Object.entries(io(o,a)??{}).map((e=>{let[o,a]=e;return[o,"routes"===a.type?{type:"routes",routes:Nr(a.routes,t,n,r)}:{type:"bricks",bricks:Br(a.bricks,t,n,r)}]})))}}))}function Nr(e,t,n,r){return e.map((e=>"routes"===e.type?{...e,routes:Nr(e.routes,t,n,r)}:"redirect"===e.type?e:{...e,bricks:Br(e.bricks,t,n,r)}))}function Ur(e,t){function n(e){return(0,u.isObject)(e)&&"function"!=typeof e?Array.isArray(e)?e.map(n):Object.fromEntries(Object.entries(e).map((e=>{let[t,o]=e;return(0,u.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=io(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,...$r(t,s.ref,l)}}return n(e)}function Fr(e,t,n,r,o){var a;const i=(0,h.uniqueId)("tpl-state-"),s={...n.runtimeContext,tplStateStoreId:i};delete s.forEachItem,delete s.forEachIndex,delete s.forEachSize,delete s.formStateStoreId;const c=new Lr("STATE",n,o,i);s.tplStateStoreMap.set(i,c),s.tplStateStoreScope&&s.tplStateStoreScope.push(c);const{bricks:l,proxy:u,state:d,contracts:f}=Pe.get(e);null==wa||null===(a=wa.flowApi)||void 0===a||a.collectWidgetContract(f),c.define(d,s,r);const{slots:p,children:m,...g}=t,v={...g,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:io(m,p),tplStateStoreId:i,hostBrick:n};return v.slots={"":{type:"bricks",bricks:l.map((e=>jr(e,y)))}},v}function jr(e,t){null===e.if&&delete e.if;const{properties:n,slots:r,children:o,...a}=e,i=io(o,r),s=Object.fromEntries(Object.entries(i??{}).map((e=>{let[n,r]=e;return[n,{type:"bricks",bricks:(r.bricks??[]).map((e=>jr(e,t)))}]})));return{...a,properties:Ur(n,t),slots:s,...$r(t,a.ref,s)}}const Dr="form-renderer.form-renderer",Kr=Symbol.for("form.stateStoreId"),Vr=["forms.general-form","form.general-form","eo-form"];function Wr(e,t,n){const{id:r,bricks:o,events:a,context:i,mountPoint:s,instanceId:c}=e;let{brick:l,properties:d}=e;const f=t.find((e=>e.fieldId===r));if(f){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}(f);l||(l=e.brick),d={...e.properties,...d}}const p={brick:l,properties:d,iid:c,slot:s,events:a,context:i,children:Hr(o,t,n),[Kr]:n};return(0,u.hasOwnProperty)(e,"if")&&(p.if=e.if),p}function Hr(e,t,n){if(Array.isArray(e))return e.map((e=>Wr(e,t,n)))}var zr=new WeakSet;class Gr extends HTMLElement{constructor(){super(...arguments),(0,I.A)(this,zr),(0,o.A)(this,"renderRoot",void 0)}get $$typeof(){return"formRenderer"}validate(){(0,C.A)(zr,this,qr).call(this,"validate")}setInitValue(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];(0,C.A)(zr,this,qr).call(this,"setInitValue",t)}resetFields(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];(0,C.A)(zr,this,qr).call(this,"resetFields",t)}}function qr(e){var t,n;let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const o=!1!==this.renderRoot?null===(t=this.firstElementChild)||void 0===t?void 0:t.firstElementChild:this.firstElementChild,a=null==o||null===(n=o.tagName)||void 0===n?void 0:n.toLowerCase();Vr.includes(a)?o[e](...r):console.error(`no ${e} method in the container element`,{container:a})}class Yr extends Error{constructor(e){super(e),this.name="PageNotFoundError",Error.captureStackTrace&&Error.captureStackTrace(this,l.BrickLoadError)}}async function Xr(e,t,n){const{title:r,variant:o,showLink:a,showDescription:i}=function(e){var t,n;return e instanceof Yr?"app not found"===e.message?{showLink:"home",title:c.i18n.t(`${Gt}:${Wt.APP_NOT_FOUND}`),variant:"no-permission"}:{showLink:"home",variant:"not-found",title:c.i18n.t(`${Gt}:${Wt.PAGE_NOT_FOUND}`)}:e instanceof l.BrickLoadError||e instanceof Error&&"ChunkLoadError"===e.name||e instanceof Event&&"error"===e.type&&e.target instanceof HTMLScriptElement?{showDescription:!0,title:c.i18n.t(`${Gt}:${Wt.NETWORK_ERROR}`),variant:"internet-disconnected",showLink:"reload"}:e instanceof R.HttpResponseError&&403===(null===(t=e.response)||void 0===t?void 0:t.status)?{showLink:"previous",showDescription:!0,title:c.i18n.t(`${Gt}:${Wt.NO_PERMISSION}`),variant:"no-permission"}:e instanceof R.HttpResponseError&&"200000"===(null===(n=e.responseJson)||void 0===n?void 0:n.code)?{showDescription:!0,title:c.i18n.t(`${Gt}:${Wt.LICENSE_EXPIRED}`),variant:"license-expired"}:{showLink:"previous",showDescription:!0,title:c.i18n.t(`${Gt}:${Wt.UNKNOWN_ERROR}`),variant:"unknown-error"}}(e);if(n){const n=Ra().error??"illustrations.error-message";if(!1!==n){const s="eo-link",c=(a?[n,s]:[n]).filter((e=>!customElements.get(e)));try{await Promise.race([(0,l.loadBricksImperatively)(c,Ca()),new Promise(((e,t)=>setTimeout((()=>{t(new Error("timeout"))}),3e3)))]);const u={tag:xn.BRICK,type:n,properties:{errorTitle:r,description:i?Qt(e):void 0,variant:o,dataset:{errorBoundary:""}},runtimeContext:null,return:t};return a&&(u.child=Jr(a,s,u,"")),u}catch(e){console.error("Failed to load brick:",c.join(", "),e)}}}const s=n&&!!customElements.get("easyops-default-error"),u={tag:xn.BRICK,type:s?"easyops-default-error":"div",properties:{errorTitle:r,dataset:{errorBoundary:""},style:{color:"var(--color-error)"}},runtimeContext:null,return:t},d={tag:xn.BRICK,type:"div",properties:{textContent:s?i?Qt(e):"":i?`${r}: ${Qt(e)}`:r},runtimeContext:null,return:u};return u.child=d,n&&a&&(d.sibling=Jr(a,"a",u,s?"link":"")),u}function Jr(e,t,n,r){return{tag:xn.BRICK,type:t,slotId:r,properties:{textContent:"home"===e?c.i18n.t(`${Gt}:${Wt.GO_BACK_HOME}`):"reload"===e?c.i18n.t(`${Gt}:${Wt.RELOAD}`):c.i18n.t(`${Gt}:${Wt.GO_BACK_TO_PREVIOUS_PAGE}`),href:"home"===e?p():"reload"===e?location.href:void 0},events:"previous"===e?{click:{action:"history.goBack"}}:void 0,runtimeContext:null,return:n}}async function Qr(e,t,n,r,o,a,i,s,c){const u=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=Nt(n,t.app.homepage,t.location.pathname);if(e&&await yt(n,t))return t.app.noAuthGuard||n.public||null==wa||!wa.auth||wa.auth.isLoggedIn()?{match:e,route:n}:"unauthenticated"}return"missed"}(t,n),d={blockingList:[]},f=d.menuRequestNode={return:a};switch(u){case"missed":break;case"unauthenticated":d.unauthenticated=!0;break;default:{var p;const a=d.route=u.route;d.path=u.match.path;const g={...n,match:u.match};a.iid&&(h=a.iid,m=u.match,or.set(h,m)),s&&g.ctxStore.disposeDataInRoutes(t);const v=o.concat(a);g.ctxStore.define(a.context,g,void 0,v),g.pendingPermissionsPreCheck.push(null==wa||null===(p=wa.checkPermissions)||void 0===p?void 0:p.preCheckPermissionsForBrickOrRoute(a,(e=>mt(e,g))));const{preLoadBricks:b}=a;if(Array.isArray(b)&&d.blockingList.push((0,l.loadBricksImperatively)(b,Ca())),"redirect"===a.type){let e;if(e="string"==typeof a.redirect?await mt(a.redirect,g):(await tt({transform:"redirect",...a.redirect},g)).redirect,"string"!=typeof e)throw console.error("Unexpected redirect result:",e),new Error("Unexpected type of redirect result: "+typeof e);d.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,g);let o;n&&(f.request=n),s||r.memoizeMenuRequestNode(t,f),o="routes"===a.type?await Qr(e,a.routes,g,r,v,f,i,void 0,c):await Zr(e,a.bricks,g,r,v,f,i,void 0,void 0,c),oo(d,o),ao(f,o.menuRequestNode)}}}var h,m;return d}async function Zr(e,t,n,r,o,a,i,s,c,l){!function(e,t,n){function r(e){if((0,u.isObject)(e)&&"function"!=typeof e)if(Array.isArray(e))e.map(r);else for(const[t,n]of Object.entries(e))(0,u.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[ir]=t),r(e.properties),n&&!i)return;const s=io(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 d={blockingList:[]},f=c??[];return(await Promise.all(t.map(((t,c)=>eo(e,t,n,r,o,a,i,f.concat(c),s&&new Map(s),l))))).forEach(((t,n)=>{t.hasTrackingControls&&r.memoize(i,f.concat(n),t.node,e),oo(d,t)})),d}async function eo(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,d=arguments.length>9?arguments[9]:void 0;try{return await async function(e,t,n,r,o,a,i,s,c,d){var f,p;const m={blockingList:[]};if(!t.brick)return t.template?console.error("Legacy templates are dropped in v3:",t):console.error("Invalid brick:",t),m;const{if:v,permissionsPreCheck:b,...y}=t;if(function(e){return"string"==typeof e?(0,O.isTrackAll)(e):at(e)&&(0,O.isTrackAll)(it(e))}(v))return eo(e,{brick:":if",dataSource:v,permissionsPreCheck:b,slots:{"":{type:"bricks",bricks:[y]}},...Object.getOwnPropertySymbols(t).reduce(((e,n)=>({...e,[n]:t[n]})),{})},n,r,o,a,i,s,c,d);const w=t[Ft],E=t[Kr],S={...n,tplStateStoreId:w,formStateStoreId:E};(0,u.hasOwnProperty)(t,jt)&&(S.forEachItem=t[jt],S.forEachIndex=t[Dt],S.forEachSize=t[Kt]);const{context:A}=t;if(Array.isArray(A)&&A.length>0){const e=Re(S);Oe(e,"Defining context on bricks","check your brick:",t),e||S.ctxStore.define(A,S)}if(S.pendingPermissionsPreCheck.push(null==wa||null===(f=wa.checkPermissions)||void 0===f?void 0:f.preCheckPermissionsForBrickOrRoute(t,(e=>mt(e,S)))),!await async function(e,t){return(0,u.isObject)(e.if)&&!at(e.if)?Et(await tt(e.if,t)):yt(e,t)}(t,S))return m;const k=t.brick;if(k.startsWith(":")){!function(e){if(":forEach"!==e&&":if"!==e&&":switch"!==e)throw new Error(`Unknown storyboard control node: "${e}"`)}(k);const{dataSource:n}=t,{contextNames:l,stateNames:d}=At(n),f=async(f,p,h)=>{var m;const g=await mt(n,f);h&&Ot(f,[{contextNames:l,stateNames:d,propValue:n}],p);const v=":forEach"===k?"":":switch"===k?String(g):g?"":"else",b=io(t.children,t.slots),y=b&&(0,u.hasOwnProperty)(b,v)&&(null===(m=b[v])||void 0===m?void 0:m.bricks);if(!Array.isArray(y))return{blockingList:[]};switch(k){case":forEach":return Array.isArray(g)?async function(e,t,n,r,o,a,i,s,c,l,u){const d={blockingList:[]},f=t.length,p=await Promise.all(t.map(((t,d)=>Promise.all(n.map(((n,p)=>eo(e,n,{...r,forEachItem:t,forEachIndex:d,forEachSize:f},o,a,i,s,l.concat(d*f+p),c&&new Map(c),u)))))));return p.flat().forEach(((t,n)=>{t.hasTrackingControls&&o.memoize(s,l.concat(n),t.node,e),oo(d,t)})),d}(e,g,y,f,r,o,a,i,c,s,p):{blockingList:[]};case":if":case":switch":return Zr(e,y,f,r,o,a,i,c,s,p)}},p=async(n,r)=>{var o;let a=!1;const i={disposes:[],listener:()=>{a=!0}};let s,c=0,l=!0;for(;l||a;)if(a=!1,s=await f(n,i,l&&"initial"===r),i.disposes.forEach((e=>e())),i.disposes.length=0,l=!1,++c>10)throw new Error(`Maximum rerender stack overflowed (iid: ${t.iid})`);return(o=s).node??(o.node={tag:xn.PLACEHOLDER,return:e}),s},m=await p(S,"initial"),{onMount:g,onUnmount:v}=t.lifeCycle??{};if(l||d){m.hasTrackingControls=!0;let t=0;const o=async()=>{const n=++t,[o,a,c]=ro(S),l=await p(o,"rerender"),u=[...a,...c];if(await no(l,o,u),t===n){v&&dn(v,S)(new CustomEvent("unmount",{detail:{rerender:!0}})),r.reRender(i,s,l.node,e),g&&dn(g,o)(new CustomEvent("mount",{detail:{rerender:!0}}));for(const e of u)e.mountAsyncData()}},a=(0,h.debounce)(o,0,{leading:!0,trailing:!0}),c=e.tag===xn.BRICK?e:null,u=c?c.disposes??(c.disposes=[]):[];if(l)for(const e of l)u.push(S.ctxStore.onChange(e,a));if(d)for(const e of d){const t=xe(S,"STATE",`: "${n}"`);u.push(t.onChange(e,a))}}return g&&r.registerArbitraryLifeCycle("onMount",(()=>{dn(g,S)(new CustomEvent("mount",{detail:{rerender:!1}}))})),v&&r.registerArbitraryLifeCycle("onUnmount",(()=>{dn(v,S)(new CustomEvent("unmount",{detail:{rerender:!1}}))})),m}/\.tpl-/.test(k)&&!Pe.get(k)&&await so((0,l.loadBricksImperatively)([k],Ca()),"brick",k,r.unknownBricks);const I=function(e,t){if(!e.includes(".")&&e.startsWith("tpl-")&&t){const n=`${t}.${e}`;if(Pe.get(n))return n}return!!Pe.get(e)&&e}(k,null===(p=S.app)||void 0===p?void 0:p.id);if(I){const e=c.get(I)??0;if(e>=10)throw new Error(`Maximum custom template stack overflowed: "${I}"`);c.set(I,e+1)}else k.includes("-")&&!customElements.get(k)&&(k===Dr?customElements.get(Dr)||customElements.define(Dr,Gr):m.blockingList.push(so((0,l.enqueueStableLoadBricks)([k],Ca()),"brick",k,r.unknownBricks)));let C,R;var _;k===Dr?(({formData:C,...R}=t.properties??{}),null!==(_=t.properties)&&void 0!==_&&_.compute&&(C=await mt(C,S))):R=t.properties;const P=[],x=function(e,t,n){return(0,u.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})]})):[]}(R,S,P),M=t[Ut];M&&x.push(...M);const L="script"===k;if(L||"link"===k){const e=await It(x);if(L?e.src:"stylesheet"===e.rel&&e.href){const t=window.PUBLIC_ROOT??"";if(L){const{src:n,...r}=e;await so((0,l.loadScript)(n,t,r),"script",n,"silent")}else{const{href:n,...r}=e;await so((0,l.loadStyle)(n,t,r),"stylesheet",n,"silent")}return m}}const $={tag:xn.BRICK,type:I||k,return:e,slotId:i,events:t.events,runtimeContext:S,portal:t.portal,iid:t.iid,ref:t.ref};m.node=$;const B=(0,T.strictCollectMemberUsage)([t.events,t.lifeCycle],"PROCESSORS",2);B.size>0&&m.blockingList.push(so((0,l.loadProcessorsImperatively)(B,Ca()),"processors",[...B].join(", "),r.unknownBricks));const N=[];Ot(S,P,d);N.push((async()=>{$.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(e.disposes??(e.disposes=[]),n.contextNames)for(const r of n.contextNames)e.disposes.push(e.runtimeContext.ctxStore.onChange(r,t));if(n.stateNames){const r=xe(e.runtimeContext,"STATE",`: "${n.propValue}"`);for(const o of n.stateNames)e.disposes.push(r.onChange(o,t))}if(n.formStateNames){const r=qe(e.runtimeContext,"FORM_STATE",`: "${n.propValue}"`);for(const o of n.formStateNames)e.disposes.push(r.onChange(o,t))}}}($,P)})()),r.registerBrickLifeCycle($,t.lifeCycle);let U,F=t;I?F=Fr(I,t,$,x,r):k===Dr&&(F=function(e,t,n,r,o){var a;const i="string"==typeof e?JSON.parse(e):e,s=(0,h.uniqueId)("form-state-"),c={...n.runtimeContext,formStateStoreId:s};delete c.forEachItem,delete c.forEachIndex,delete c.forEachSize,delete c.tplStateStoreId;const l=new Lr("FORM_STATE",void 0,o,s);c.formStateStoreMap.set(s,l),c.formStateStoreScope&&c.formStateStoreScope.push(l);const d=i.context??[];d.some((e=>"params"===e.name))||d.push({name:"params"}),l.define(d,c,r);const f=Wr(i.formSchema,i.fields,s);return Vr.includes(f.brick)&&t.events&&(f.events=function(e,t){const n=e??{};for(const[e,r]of Object.entries(t))n[e]=(0,u.hasOwnProperty)(n,e)?[n[e],r].flat():r;return n}(f.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:[f]}]}:{...t,slots:void 0,children:[f]}}(C,t,$,x,r)),F.portal&&($.slotId=void 0),I?(U={...S},delete U.forEachItem,delete U.forEachIndex,delete U.forEachSize):U=S;return N.push((async()=>{const e=io(F.children,F.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 Zr($,s.bricks,U,r,o,a,i,c,void 0,d);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}=U.app,{pathname:c}=e;if(!g(n,c)||!o.every((e=>{let r,o;return(r=Nt(e,n,t.pathname))&&(o=Nt(e,n,c))&&(e!==l||(0,h.isEqual)(r.params,o.params))})))return!1;const[u,d,f]=ro({...U,location:e,query:new URLSearchParams(e.search)});let p,m=!1,v=[];try{if(p=await Qr($,s.routes,u,r,o,a,i,!0),p.route){if(r.reBailout(p))return!0;v=[...d,...f],await no(p,u,[u.ctxStore,...v])}await r.reMergeMenuRequestNodes(a,s.routes,p.menuRequestNode)}catch(e){console.error("Incremental sub-router failed:",e);const t=await r.reCatch(e,$);if(!t)return!0;({failed:m,output:p}=t),await r.reMergeMenuRequestNodes(a,s.routes,p.menuRequestNode)}if(r.reRender(i,[],p.node,$),!m){u.ctxStore.mountAsyncData(p.route);for(const e of v)e.mountAsyncData()}return!!p.route||null}))),Qr($,s.routes,U,r,o,a,i,void 0,d)}))),i={...m,node:void 0,blockingList:[],menuRequestNode:void 0};n.forEach(((e,n)=>{t.has(n)&&r.memoize(t.get(n),[],e.node,$),oo(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&&($.child=i.node),oo(m,{...i,node:void 0}),ao(a,m.menuRequestNode=i.menuRequestNode)})()),await Promise.all(N),m}(e,t,n,r,o,a,i,s,c,d)}catch(n){if(t.errorBoundary)return console.error("Error caught by error boundary:",n),{node:await Xr(n,e),blockingList:[]};throw n}}function to(e){return[e.ctxStore,...e.tplStateStoreMap.values(),...e.formStateStoreMap.values()]}function no(e,t,n){return(0,l.flushStableLoadBricks)(),Promise.all([...e.blockingList,...n.map((e=>e.waitForAll())),...t.pendingPermissionsPreCheck])}function ro(e){const t=[],n=[];return[{...e,tplStateStoreScope:t,formStateStoreScope:n},t,n]}function oo(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 ao(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 io(e,t){let n=t;if(Array.isArray(e)&&!n){n={};for(const t of e){const e=t.slot??"";(0,u.hasOwnProperty)(n,e)||(n[e]={type:"bricks",bricks:[]}),n[e].bricks.push(t)}}return n}function so(e,t,n,r){return"silent"===r?e.catch((e=>{console.error('Load %s "%s" failed:',t,n,e)})):e}let co,lo,uo;function fo(){if(!co){if(co={isInIframe:!1,isInIframeOfSameSite:!1,isInIframeOfNext:!1,isInIframeOfVisualBuilder:!1,isInIframeOfLegacyConsole:!1},window!==window.parent){co.isInIframe=!0;try{if(window.origin===window.parent.origin){co.isInIframeOfSameSite=!0;const e="/next/"===p(),t=window.parent.location.pathname,n=t.startsWith("/next/");co.isInIframeOfNext=0==(Number(e)^Number(n));const r=n?"/next":"";co.isInIframeOfVisualBuilder=t.startsWith(`${r}/visual-builder/`)||t.startsWith(`${r}/visual-builder-`),co.isInIframeOfLegacyConsole=e&&!n}}catch{}}Object.freeze(co)}return co}function po(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}`;Pe.define(n,t)}}function ho(e){let t;t="8.2"===e?"v8-2":"v8",document.documentElement.dataset.ui=t}const mo="basic.show-watermark";var go=new WeakMap,vo=new WeakMap,bo=new WeakMap,yo=new WeakMap,wo=new WeakMap,Eo=new WeakMap,So=new WeakMap,Ao=new WeakMap,ko=new WeakMap,Io=new WeakMap,Co=new WeakMap,Ro=new WeakSet;class Oo{constructor(e){(0,I.A)(this,Ro),(0,a.A)(this,go,void 0),(0,a.A)(this,vo,!1),(0,a.A)(this,bo,void 0),(0,a.A)(this,yo,void 0),(0,a.A)(this,wo,void 0),(0,a.A)(this,Eo,new Set),(0,a.A)(this,So,0),(0,a.A)(this,Ao,void 0),(0,a.A)(this,ko,void 0),(0,a.A)(this,Io,void 0),(0,a.A)(this,Co,void 0),(0,i.A)(go,this,e);const t=k();window.addEventListener("beforeunload",(e=>{(0,C.A)(Ro,this,To).call(this,{})?(e.preventDefault(),e.returnValue=""):delete e.returnValue})),t.block(((e,t)=>(0,C.A)(Ro,this,To).call(this,{location:e,action:t})))}getRenderId(){return(0,s.A)(Ao,this)}getRuntimeContext(){return(0,s.A)(yo,this)}getRecentApps(){return{currentApp:(0,s.A)(ko,this),previousApp:(0,s.A)(Io,this)}}getNavConfig(){return(0,s.A)(Co,this)}bootstrap(){window.AbortController&&(lo=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:lo.signal}}})));const e=k();let t=e.location;return e.listen(((e,n)=>{const r=t;t=e,(0,s.A)(vo,this)?(0,i.A)(bo,this,{location:e,prevLocation:r,action:n}):(0,C.A)(Ro,this,Po).call(this,{location:e,prevLocation:r,action:n}).catch(rn)})),(0,C.A)(Ro,this,Po).call(this,{location:e.location})}}function To(e){var t;const n=k(),r=n.getBlockMessage();null===(t=(0,s.A)(wo,this))||void 0===t||t.dispatchBeforePageLeave(e);const o=n.getBlockMessage();return!r&&o&&n.unblock(),o}function _o(e,t,n){var r,o;if((0,i.A)(So,this,(r=(0,s.A)(So,this),o=r++,r)),o>10){const t=`Infinite redirect detected: from "${n.pathname}${n.search}${n.hash}" to "${e}"`;throw new Error(t)}k().replace(e,t)}async function Po(e){(0,i.A)(vo,this,!0);try{await(0,C.A)(Ro,this,xo).call(this,e)}finally{if((0,i.A)(vo,this,!1),(0,s.A)(bo,this)){const e=(0,s.A)(bo,this);(0,i.A)(bo,this,void 0),await(0,C.A)(Ro,this,Po).call(this,e)}}}async function xo(e){let{location:t,prevLocation:n,action:r}=e;if(n){var o,a,i,c;let e;const u={hash:void 0,state:void 0};var l;if(void 0!==t.key&&("POP"!==r||void 0!==n.key&&!1!==(null===(o=n.state)||void 0===o?void 0:o.notify))||(u.key=void 0),((0,f.locationsAreEqual)({...n,...u},{...t,...u})||"POP"!==r&&!1===(null===(a=t.state)||void 0===a?void 0:a.notify))&&(e=!0),e||null!==(i=t.state)&&void 0!==i&&i.noIncremental||(e=await(null===(l=(0,s.A)(wo,this))||void 0===l?void 0:l.didPerformIncrementalRender(t,n))),e)return;if(lo&&(lo.abort(),lo=new AbortController),null===(c=(0,s.A)(wo,this))||void 0===c||c.dispatchPageLeave(),"POP"===r&&v(m((0,s.A)(go,this),t.pathname)))return void window.location.reload();V("locationChange")}return(0,C.A)(Ro,this,Mo).call(this,t,!n)}async function Mo(e,t){var n,r,o,a;const c=(0,i.A)(Ao,this,(0,h.uniqueId)("render-id-"));Je=new WeakSet,et.clear(),null==wa||null===(n=wa.flowApi)||void 0===n||n.clearCollectWidgetContract(),k().unblock();const u=null==wa||null===(r=wa.pageView)||void 0===r?void 0:r.create(),d=m((0,s.A)(go,this),e.pathname),f=null===(o=(0,s.A)(yo,this))||void 0===o?void 0:o.app,p=null==d||null===(a=d.app)||void 0===a?void 0:a.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:d.app.currentVersion}),null!=d&&d.app&&await async function(e){if(!e.$$fulfilled)return e.$$fulfilling||(e.$$fulfilling=async function(e){var t;await(null==wa||null===(t=wa.fulfilStoryboard)||void 0===t?void 0:t.call(wa,e)),L(e),Object.assign(e,{$$fulfilled:!0,$$fulfilling:null})}(e)),e.$$fulfilling}(d);const g=(0,i.A)(ko,this,null==d?void 0:d.app);!function(){var e,t,n,r,o;const a=Sa().getFeatureFlags(),i=Sa().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==wa||null===(n=wa.auth)||void 0===n||null===(n=n.getAuth())||void 0===n?void 0:n.username)??"",u=i.watermarkConfig??{flags:{}},d=[..."string"==typeof u.content?[u.content]:u.content??[],null!==(r=u.flags)&&void 0!==r&&r["show-development"]&&s?"Development":"",null!==(o=u.flags)&&void 0!==o&&o["show-user"]?c:""].filter(Boolean);if(0===d.length)return;const f={content:d,zIndex:1001,width:200,font:{fontSize:28},gap:[190,190],...(0,h.omit)(u,["content","flags"])};uo?uo.resolve(f):(0,l.loadBricksImperatively)([mo],Ca()).then((()=>{uo=document.createElement(mo),uo.resolve(f)}),(e=>{console.error("Load watermark service failed:",e)}))}();const v=f&&g?f.id!==g.id:f!==g;(0,O.clearExpressionASTCache)(),v&&(0,O.clearFunctionASTCache)();const b=Sa().getFeatureFlags(),y=(0,s.A)(wo,this),w=(t,n)=>{null==u||u({status:"redirected"}),(0,s.A)(Eo,this).add(y),(0,C.A)(Ro,this,_o).call(this,t,n,e)},E=()=>{const t=b["sso-enabled"]?"/sso-auth/login":"/auth/login";Jt(e),w(t,{from:e})},S=document.querySelector("#main-mount-point"),A=document.querySelector("#portal-mount-point"),I={tag:xn.ROOT,container:S,createPortal:A},T=()=>{var e;Mn(S),Mn(A),(0,s.A)(Eo,this).add(y);for(const e of(0,s.A)(Eo,this))e&&(e.dispatchOnUnmount(),e.dispose());(0,s.A)(Eo,this).clear(),null==wa||null===(e=wa.messageDispatcher)||void 0===e||e.reset(),v&&((0,i.A)(Io,this,f),window.dispatchEvent(new CustomEvent("app.change",{detail:{previousApp:f,currentApp:g}})))};if(Q(g&&(re()[g.id]||g.theme)||"light"),ae("default"),g){var _,P,x,M,$,B;null==wa||null===(_=wa.checkInstalledApps)||void 0===_||_.preCheckInstalledApps(d,(e=>!!Pa(e)));const n={bailout:e=>e.unauthenticated?(E(),!0):e.redirect?(w(e.redirect.path,e.redirect.state),!0):void(0,i.A)(So,this,0),mergeMenus:async e=>{const t=await Promise.all(e);(0,i.A)(Co,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,s.A)(Co,this)}))},catch:async(t,n,r,o)=>{if(!Zt(t)||window.NO_AUTH_GUARD){if(!(t instanceof R.HttpAbortError)){const a=Sa().getMiscSettings().noAuthGuardLoginPath;if(Zt(t)&&a)return void w(a,{from:e});if(r)throw t;return{failed:!0,output:{node:await Xr(t,n,!o),blockingList:[]}}}(0,s.A)(Eo,this).add(y)}else E()}},r=(0,i.A)(wo,this,new Gn("page",{routeHelper:n,renderId:c})),o=(0,i.A)(yo,this,{app:g,location:e,query:new URLSearchParams(e.search),flags:b,sys:{...null==wa||null===(P=wa.auth)||void 0===P?void 0:P.getAuth(),...fo(),settings:{brand:Sa().getBrandSettings()}},ctxStore:new Lr("CTX",void 0,r),pendingPermissionsPreCheck:[null==wa||null===(x=wa.checkPermissions)||void 0===x?void 0:x.preCheckPermissions(d)],tplStateStoreMap:new Map,formStateStoreMap:new Map});(0,i.A)(Co,this,void 0),po(d),me(null===(M=d.meta)||void 0===M?void 0:M.functions,g),null==wa||null===($=wa.flowApi)||void 0===$||$.collectContract(null===(B=d.meta)||void 0===B?void 0:B.contracts);let a,l=!1,f=[];try{or.clear();const e={};if(a=await Qr(I,function(e){if(window.parent===window)return e;let t=e;const n=(0,h.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,h.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}(d.routes),o,r,[],e),n.bailout(a))return;f=to(o),await no(a,o,f),e.child=a.menuRequestNode,r.setInitialMenuRequestNode(e),await n.mergeMenus(r.getMenuRequests())}catch(e){console.error("Router failed:",e);const r=await n.catch(e,I,t);if(!r)return;({failed:l,output:a}=r)}if(I.child=a.node,T(),a.route&&"routes"!==a.route.type||l){if(l||r.dispatchBeforePageLoad(),te(),se(),ho(null==g?void 0:g.uiVersion),Ln(I),window.scrollTo(0,0),l)null==u||u({status:"failed"});else{r.dispatchPageLoad(),r.dispatchAnchorLoad(),r.dispatchOnMount(),r.initializeScrollIntoView(),r.initializeMediaChange(),r.initializeMessageDispatcher();for(const e of f)e.mountAsyncData();null==u||u({status:"ok",path:a.path,pageTitle:document.title})}return void V("rendered")}}else{if(!window.NO_AUTH_GUARD&&null!=wa&&wa.auth&&!wa.auth.isLoggedIn())return void E();T()}te(),se();const N=await Xr(new Yr(g?"page not found":"app not found"),I,!0);I.child=N,Ln(I),window.scrollTo(0,0),null==u||u({status:"not-found"}),V("rendered")}const Lo="undefined"!=typeof BRICK_PACKAGES?BRICK_PACKAGES:null;function $o(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 Bo(e){return e<=1?"".concat(100*Number(e),"%"):e}function No(e){return 1===e.length?"0"+e:String(e)}function Uo(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 Fo(e){return jo(e)/255}function jo(e){return parseInt(e,16)}var Do={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 Ko(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(Do[e])e=Do[e],t=!0;else if("transparent"===e)return{r:0,g:0,b:0,a:0,format:"name"};var n=zo.rgb.exec(e);return n?{r:n[1],g:n[2],b:n[3]}:(n=zo.rgba.exec(e))?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=zo.hsl.exec(e))?{h:n[1],s:n[2],l:n[3]}:(n=zo.hsla.exec(e))?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=zo.hsv.exec(e))?{h:n[1],s:n[2],v:n[3]}:(n=zo.hsva.exec(e))?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=zo.hex8.exec(e))?{r:jo(n[1]),g:jo(n[2]),b:jo(n[3]),a:Fo(n[4]),format:t?"name":"hex8"}:(n=zo.hex6.exec(e))?{r:jo(n[1]),g:jo(n[2]),b:jo(n[3]),format:t?"name":"hex"}:(n=zo.hex4.exec(e))?{r:jo(n[1]+n[1]),g:jo(n[2]+n[2]),b:jo(n[3]+n[3]),a:Fo(n[4]+n[4]),format:t?"name":"hex8"}:!!(n=zo.hex3.exec(e))&&{r:jo(n[1]+n[1]),g:jo(n[2]+n[2]),b:jo(n[3]+n[3]),format:t?"name":"hex"}}(e)),"object"==typeof e&&(Go(e.r)&&Go(e.g)&&Go(e.b)?(t=e.r,n=e.g,r=e.b,o={r:255*$o(t,255),g:255*$o(n,255),b:255*$o(r,255)},l=!0,u="%"===String(e.r).substr(-1)?"prgb":"rgb"):Go(e.h)&&Go(e.s)&&Go(e.v)?(i=Bo(e.s),s=Bo(e.v),o=function(e,t,n){e=6*$o(e,360),t=$o(t,100),n=$o(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"):Go(e.h)&&Go(e.s)&&Go(e.l)&&(i=Bo(e.s),c=Bo(e.l),o=function(e,t,n){var r,o,a;if(e=$o(e,360),t=$o(t,100),n=$o(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=Uo(s,i,e+1/3),o=Uo(s,i,e),a=Uo(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 Vo="(?:".concat("[-\\+]?\\d*\\.\\d+%?",")|(?:").concat("[-\\+]?\\d+%?",")"),Wo="[\\s|\\(]+(".concat(Vo,")[,|\\s]+(").concat(Vo,")[,|\\s]+(").concat(Vo,")\\s*\\)?"),Ho="[\\s|\\(]+(".concat(Vo,")[,|\\s]+(").concat(Vo,")[,|\\s]+(").concat(Vo,")[,|\\s]+(").concat(Vo,")\\s*\\)?"),zo={CSS_UNIT:new RegExp(Vo),rgb:new RegExp("rgb"+Wo),rgba:new RegExp("rgba"+Ho),hsl:new RegExp("hsl"+Wo),hsla:new RegExp("hsla"+Ho),hsv:new RegExp("hsv"+Wo),hsva:new RegExp("hsva"+Ho),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 Go(e){return Boolean(zo.CSS_UNIT.exec(String(e)))}var qo=2,Yo=.16,Xo=.05,Jo=.05,Qo=.15,Zo=5,ea=4,ta=[{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 na(e){var t=function(e,t,n){e=$o(e,255),t=$o(t,255),n=$o(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 ra(e){var t=e.r,n=e.g,r=e.b;return"#".concat(function(e,t,n,r){var o=[No(Math.round(e).toString(16)),No(Math.round(t).toString(16)),No(Math.round(n).toString(16))];return o.join("")}(t,n,r))}function oa(e,t,n){var r;return(r=Math.round(e.h)>=60&&Math.round(e.h)<=240?n?Math.round(e.h)-qo*t:Math.round(e.h)+qo*t:n?Math.round(e.h)+qo*t:Math.round(e.h)-qo*t)<0?r+=360:r>=360&&(r-=360),r}function aa(e,t,n){return 0===e.h&&0===e.s?e.s:((r=n?e.s-Yo*t:t===ea?e.s+Yo:e.s+Xo*t)>1&&(r=1),n&&t===Zo&&r>.1&&(r=.1),r<.06&&(r=.06),Number(r.toFixed(2)));var r}function ia(e,t,n){var r;return(r=n?e.v+Jo*t:e.v-Qo*t)>1&&(r=1),Number(r.toFixed(2))}function sa(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=[],r=Ko(e),o=Zo;o>0;o-=1){var a=na(r),i=ra(Ko({h:oa(a,o,!0),s:aa(a,o,!0),v:ia(a,o,!0)}));n.push(i)}n.push(ra(r));for(var s=1;s<=ea;s+=1){var c=na(r),l=ra(Ko({h:oa(c,s),s:aa(c,s),v:ia(c,s)}));n.push(l)}return"dark"===t.theme?ta.map((function(e){var r,o,a,i=e.index,s=e.opacity;return ra((r=Ko(t.backgroundColor||"#141414"),a=100*s/100,{r:((o=Ko(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 ca={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"},la={},ua={};function da(e){return':root,\n[data-override-theme="light"] {\n'.concat(e,"}")}function fa(e){return'html[data-theme="dark-v2"],\n[data-override-theme="dark-v2"] {\n'.concat(e,"}")}function pa(e){return e.match(/[0-9a-fA-F]{2}/g).map((e=>parseInt(e,16))).join(", ")}function ha(e,t,n){return"dark"===t?sa(e,{theme:t,backgroundColor:n})[5]:e}function ma(e){const t=[];if(["light","dark"].forEach((n=>{if(e[n])switch(e.type){case"brandColor":t.push(function(e,t){return("dark"===e?fa:da)("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?fa:da)("".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(pa(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,sa(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(pa(ha(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?fa:da)(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 ga,va,ba,ya,wa;function Ea(e){if(ga)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}})),wa=null==e?void 0:e.hooks,(0,c.initializeI18n)(Gt,qt),d.locale(c.i18n.language),c.i18n.on("languageChanged",(()=>{d.locale(c.i18n.language)})),A(),ga=new Ia,ga}Object.keys(ca).forEach((function(e){la[e]=sa(ca[e]),la[e].primary=la[e][5],ua[e]=sa(ca[e],{theme:"dark",backgroundColor:"#141414"}),ua[e].primary=ua[e][5]})),la.red,la.volcano,la.gold,la.orange,la.yellow,la.lime,la.green,la.cyan,la.blue,la.geekblue,la.purple,la.magenta,la.grey;const Sa=function(){const e=S();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 ga};var Aa=new WeakMap,ka=new WeakMap;class Ia{constructor(){(0,a.A)(this,Aa,!1),(0,a.A)(this,ka,!1),(0,o.A)(this,"version",3)}initialize(e){var t;if((0,s.A)(Aa,this))throw new Error("The runtime cannot be initialized more than once");(0,i.A)(Aa,this,!0),function(e){(0,u.isObject)(e.settings)&&(0,u.deepFreeze)(e.settings),e.brickPackages&&(0,u.deepFreeze)(e.brickPackages)}(e),va=e;const{notification:n,dialog:r}=Ra();var o;!1!==n&&(o=n??"basic.show-notification",(0,this.loadBricks)([o]).then((()=>{tn=document.createElement(o)}),(e=>{console.error("Load notification service failed:",e)}))),!1!==r&&function(e,t){t([e]).then((()=>{Yt=document.createElement(e)}),(e=>{console.error("Load dialog service failed:",e)}))}(r??"basic.show-dialog",this.loadBricks),function(e){e&&(e.brandColor?ma({type:"brandColor",...e.brandColor}):e.baseColors?ma({type:"baseColors",...e.baseColors}):e.variables&&ma({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,s.A)(ka,this))throw new Error("The runtime cannot be bootstrapped more than once");(0,i.A)(ka,this,!0),ba=new Oo(va.storyboards),await ba.bootstrap()}getRecentApps(){var e;return(null===(e=ba)||void 0===e?void 0:e.getRecentApps())??{}}getCurrentApp(){var e;return null===(e=ba)||void 0===e?void 0:e.getRecentApps().currentApp}hasInstalledApp(e,t){return Ge(e,t)}getFeatureFlags(){var e,t;return{...null===(e=va)||void 0===e||null===(e=e.settings)||void 0===e?void 0:e.featureFlags,...null===(t=ba)||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=va)||void 0===e||null===(e=e.settings)||void 0===e?void 0:e.misc,...null===(t=ba)||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=va)||void 0===e||null===(e=e.settings)||void 0===e?void 0:e.brand}}getLaunchpadSettings(){var e;return{columns:7,rows:4,...null===(e=va)||void 0===e||null===(e=e.settings)||void 0===e?void 0:e.launchpad}}getDesktops(){var e;return(null===(e=va)||void 0===e?void 0:e.desktops)??[]}getLaunchpadSiteMap(){var e;return(null===(e=va)||void 0===e?void 0:e.siteSort)??[]}toggleLaunchpadEffect(e){document.body.classList.toggle("launchpad-open",e)}applyPageTitle(e){var t;const n=this.getBrandSettings().base_title;document.title=(null===(t=ba)||void 0===t||null===(t=t.getRecentApps().currentApp)||void 0===t?void 0:t.localeTitle)||(e?`${e} - ${n}`:n)}getNavConfig(){var e;return null===(e=ba)||void 0===e?void 0:e.getNavConfig()}loadBricks(e){return(0,l.loadBricksImperatively)(e,Ca())}}function Ca(){var e;return ya??(ya=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=va)||void 0===e?void 0:e.brickPackages)??Lo??window.STANDALONE_BRICK_PACKAGES??[],window.PUBLIC_DEPS))}function Ra(){var e;return(null===(e=va)||void 0===e||null===(e=e.settings)||void 0===e?void 0:e.presetBricks)??{}}function Oa(){var e;return null===(e=ba)||void 0===e?void 0:e.getRenderId()}function Ta(){var e;return null===(e=ba)||void 0===e?void 0:e.getRuntimeContext()}function _a(e){var t;return null===(t=va)||void 0===t||null===(t=t.storyboards)||void 0===t?void 0:t.find((t=>t.app.id===e))}function Pa(e){var t;return null===(t=_a(e))||void 0===t?void 0:t.app}function xa(){for(var e,t,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];null==wa||null===(e=wa.auth)||void 0===e||null===(t=e.authenticate)||void 0===t||t.call(e,...r)}function Ma(){var e;return null==wa||null===(e=wa.auth)||void 0===e?void 0:e.getAuth()}function La(){var e,t;return null==wa||null===(e=wa.auth)||void 0===e||null===(t=e.logout)||void 0===t?void 0:t.call(e)}function $a(){var e;return null==wa||null===(e=wa.auth)||void 0===e?void 0:e.isLoggedIn()}var Ba=new WeakMap;const Na=new class{constructor(){(0,a.A)(this,Ba,new Map)}define(e,t){(0,s.A)(Ba,this).has(e)?console.error(`Custom editor of "${e}" already registered`):(0,s.A)(Ba,this).set(e,t)}get(e){return(0,s.A)(Ba,this).get(e)}};async function Ua(e,t,n){return nt(await Xe(e),e,"resolve",t,n)}function Fa(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,l=!1;return{async render(n){let{theme:u,uiVersion:d,language:f,context:p,functions:m,templates:g,i18n:v,url:b,app:y}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(l)throw new Error("The root is unmounted and cannot be rendered any more");const w=[].concat(n),E=i,S=(0,h.uniqueId)("render-id-");i=new Gn(r,{unknownBricks:o,renderId:S});const A={ctxStore:new Lr("CTX",void 0,i),pendingPermissionsPreCheck:[],tplStateStoreMap:new Map,formStateStoreMap:new Map};if(b){const e=new URL(b);A.query=e.searchParams,A.location={pathname:e.pathname,search:e.search,hash:e.hash,state:void 0}}const k={tag:xn.ROOT,container:e,createPortal:t};if("page"===r){var I;Q(u??"light"),ae("default"),ho(d),f&&await c.i18n.changeLanguage(f),y??(y={id:"demo",homepage:"/demo"}),A.app=y;const e={app:y,meta:{i18n:v,customTemplates:g}};null===(I=s)||void 0===I||I(),s=L(e),po(e),me(m,y)}A.ctxStore.define(p,A);let C,R=!1,O=[];try{C=await Zr(k,w,A,i,[],{}),O=to(A),await no(C,A,O)}catch(e){R=!0,C={node:await Xr(e,k,"page"===r),blockingList:[]}}if(k.child=C.node,null==E||E.dispatchOnUnmount(),null==E||E.dispose(),Mn(e),a&&Mn(a),"page"===r&&(R||i.dispatchBeforePageLoad(),te(),se()),Ln(k),"page"===r&&window.scrollTo(0,0),!R){for(const e of O)e.mountAsyncData();"page"===r&&i.dispatchPageLoad(),i.dispatchOnMount(),i.initializeScrollIntoView(),i.initializeMediaChange(),i.initializeMessageDispatcher()}},unmount(){l||(l=!0,Mn(e),a&&(Mn(a),n||a.remove()))}}}function ja(e){let{useRealTimeQuery:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n={...Ta()};t&&(n.query=new URLSearchParams(k().location.search));const r=t=>{if("string"==typeof t){if((0,O.isEvaluable)(t)){const e=ut(t,n);return Qe(e),e}return(0,_.inject)(t,n)}return!(0,u.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)}const Da=[];function Ka(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e3,t=-1;const n=()=>{if(t>-1){const e=Da.indexOf(t);e>-1&&Da.splice(e,1)}};return{push:()=>(n(),t=(Da[Da.length-1]??-1)+1,Da.push(t),t+e),pull:n}}}}]);
3
- //# sourceMappingURL=4235.1b0a0cb4.js.map