@next-bricks/data-view 1.12.4 → 1.12.6

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 (203) hide show
  1. package/dist/bricks.json +7 -7
  2. package/dist/chunks/114.215cb100.js +2 -0
  3. package/dist/chunks/{114.19fb04c3.js.map → 114.215cb100.js.map} +1 -1
  4. package/dist/chunks/{1493.d9a3fd09.js → 1493.fe6d5acc.js} +2 -2
  5. package/dist/chunks/{1493.d9a3fd09.js.map → 1493.fe6d5acc.js.map} +1 -1
  6. package/dist/chunks/1889.c7ee1fb2.js +2 -0
  7. package/dist/chunks/1889.c7ee1fb2.js.map +1 -0
  8. package/dist/chunks/{3171.f3d21c75.js → 3171.5ff70824.js} +2 -2
  9. package/dist/chunks/{3171.f3d21c75.js.map → 3171.5ff70824.js.map} +1 -1
  10. package/dist/chunks/4291.786c5a3c.js +2 -0
  11. package/dist/chunks/4291.786c5a3c.js.map +1 -0
  12. package/dist/chunks/{7146.e395f790.js → 4765.eb56f156.js} +2 -2
  13. package/dist/chunks/4765.eb56f156.js.map +1 -0
  14. package/dist/chunks/{7218.2b5b7887.js → 4837.80094357.js} +2 -2
  15. package/dist/chunks/{7218.2b5b7887.js.map → 4837.80094357.js.map} +1 -1
  16. package/dist/chunks/{5552.51f3063d.js → 5552.cb9ff5fe.js} +2 -2
  17. package/dist/chunks/{5552.51f3063d.js.map → 5552.cb9ff5fe.js.map} +1 -1
  18. package/dist/chunks/6785.f4940e56.js +3 -0
  19. package/dist/chunks/6785.f4940e56.js.map +1 -0
  20. package/dist/chunks/{4765.fe24f07e.js → 7146.f03a8b35.js} +2 -2
  21. package/dist/chunks/7146.f03a8b35.js.map +1 -0
  22. package/dist/chunks/{4837.7e3e2eea.js → 7218.7a1bbf3a.js} +2 -2
  23. package/dist/chunks/{4837.7e3e2eea.js.map → 7218.7a1bbf3a.js.map} +1 -1
  24. package/dist/chunks/7733.7dea1845.js +2 -0
  25. package/dist/chunks/{7733.c0366b9c.js.map → 7733.7dea1845.js.map} +1 -1
  26. package/dist/chunks/{8097.afdbc01f.js → 8097.8ec1c8ca.js} +2 -2
  27. package/dist/chunks/{8097.afdbc01f.js.map → 8097.8ec1c8ca.js.map} +1 -1
  28. package/dist/chunks/871.5f400f2b.js +2 -0
  29. package/dist/chunks/871.5f400f2b.js.map +1 -0
  30. package/dist/chunks/8826.4d6be14b.js +2 -0
  31. package/dist/chunks/{8826.8ef9431c.js.map → 8826.4d6be14b.js.map} +1 -1
  32. package/dist/chunks/948.3dac7f67.js +3 -0
  33. package/dist/chunks/948.3dac7f67.js.map +1 -0
  34. package/dist/chunks/app-wall-card-item.fc236047.js +3 -0
  35. package/dist/chunks/{app-wall-card-item.438a2758.js.map → app-wall-card-item.fc236047.js.map} +1 -1
  36. package/dist/chunks/app-wall-relation-line.25f802e7.js +3 -0
  37. package/dist/chunks/{app-wall-relation-line.94bc5eba.js.map → app-wall-relation-line.25f802e7.js.map} +1 -1
  38. package/dist/chunks/app-wall-system-card.35ab7e18.js +2 -0
  39. package/dist/chunks/{app-wall-system-card.29cd2836.js.map → app-wall-system-card.35ab7e18.js.map} +1 -1
  40. package/dist/chunks/app-wall.2b68db7b.js +2 -0
  41. package/dist/chunks/{app-wall.1d0801d4.js.map → app-wall.2b68db7b.js.map} +1 -1
  42. package/dist/chunks/basic-index-group.4549f81f.js +2 -0
  43. package/dist/chunks/{basic-index-group.ffbab2ee.js.map → basic-index-group.4549f81f.js.map} +1 -1
  44. package/dist/chunks/battery-chart.832cc834.js +2 -0
  45. package/dist/chunks/{battery-chart.80355972.js.map → battery-chart.832cc834.js.map} +1 -1
  46. package/dist/chunks/brick-notification.5495ff12.js +2 -0
  47. package/dist/chunks/{brick-notification.11d7411b.js.map → brick-notification.5495ff12.js.map} +1 -1
  48. package/dist/chunks/{bubbles-indicator.9df60d36.js → bubbles-indicator.a1159eac.js} +2 -2
  49. package/dist/chunks/{bubbles-indicator.9df60d36.js.map → bubbles-indicator.a1159eac.js.map} +1 -1
  50. package/dist/chunks/cabinet-app-layer.fffb3971.js +3 -0
  51. package/dist/chunks/{cabinet-app-layer.05c66229.js.map → cabinet-app-layer.fffb3971.js.map} +1 -1
  52. package/dist/chunks/cabinet-button.f5af4a19.js +2 -0
  53. package/dist/chunks/{cabinet-button.ee9ea68d.js.map → cabinet-button.f5af4a19.js.map} +1 -1
  54. package/dist/chunks/cabinet-container.53e6a418.js +3 -0
  55. package/dist/chunks/{cabinet-container.70ba99de.js.map → cabinet-container.53e6a418.js.map} +1 -1
  56. package/dist/chunks/cabinet-graph.c7073f3b.js +2 -0
  57. package/dist/chunks/{cabinet-graph.4cfa6429.js.map → cabinet-graph.c7073f3b.js.map} +1 -1
  58. package/dist/chunks/{cabinet-node.54685641.js → cabinet-node.8380d805.js} +3 -3
  59. package/dist/chunks/{cabinet-node.54685641.js.map → cabinet-node.8380d805.js.map} +1 -1
  60. package/dist/chunks/{cabinet-thumbnail.ae05c311.js → cabinet-thumbnail.c475ab5d.js} +3 -3
  61. package/dist/chunks/{cabinet-thumbnail.ae05c311.js.map → cabinet-thumbnail.c475ab5d.js.map} +1 -1
  62. package/dist/chunks/{china-map-chart.7f0adf1a.js → china-map-chart.c64f6170.js} +2 -2
  63. package/dist/chunks/{china-map-chart.7f0adf1a.js.map → china-map-chart.c64f6170.js.map} +1 -1
  64. package/dist/chunks/china-map.fbd94cbc.js +2 -0
  65. package/dist/chunks/{china-map.3e89e422.js.map → china-map.fbd94cbc.js.map} +1 -1
  66. package/dist/chunks/complex-search.6a42c5fa.js +2 -0
  67. package/dist/chunks/{complex-search.2fa969e0.js.map → complex-search.6a42c5fa.js.map} +1 -1
  68. package/dist/chunks/crystal-ball-indicator.eac0803f.js +2 -0
  69. package/dist/chunks/{crystal-ball-indicator.bb7f716b.js.map → crystal-ball-indicator.eac0803f.js.map} +1 -1
  70. package/dist/chunks/data-display-flipper-fifth.592d3664.js +2 -0
  71. package/dist/chunks/{data-display-flipper-fifth.6cdcf8a4.js.map → data-display-flipper-fifth.592d3664.js.map} +1 -1
  72. package/dist/chunks/{data-display-flipper-sixth.d3052c74.js → data-display-flipper-sixth.39b00839.js} +2 -2
  73. package/dist/chunks/{data-display-flipper-sixth.d3052c74.js.map → data-display-flipper-sixth.39b00839.js.map} +1 -1
  74. package/dist/chunks/{data-display-flipper.df9e9e17.js → data-display-flipper.381d2287.js} +2 -2
  75. package/dist/chunks/{data-display-flipper.df9e9e17.js.map → data-display-flipper.381d2287.js.map} +1 -1
  76. package/dist/chunks/{dropdown-menu.7c2ad1f0.js → dropdown-menu.3fc9e527.js} +3 -3
  77. package/dist/chunks/{dropdown-menu.7c2ad1f0.js.map → dropdown-menu.3fc9e527.js.map} +1 -1
  78. package/dist/chunks/gauge-chart.47c3d492.js +2 -0
  79. package/dist/chunks/{gauge-chart.cbbfe883.js.map → gauge-chart.47c3d492.js.map} +1 -1
  80. package/dist/chunks/gear-background.adbc0340.js +2 -0
  81. package/dist/chunks/{gear-background.5ab63f12.js.map → gear-background.adbc0340.js.map} +1 -1
  82. package/dist/chunks/{globe-with-gear-indicator.61e1e1e1.js → globe-with-gear-indicator.e6e97680.js} +2 -2
  83. package/dist/chunks/{globe-with-gear-indicator.61e1e1e1.js.map → globe-with-gear-indicator.e6e97680.js.map} +1 -1
  84. package/dist/chunks/globe-with-halo-indicator.1d27ef8f.js +2 -0
  85. package/dist/chunks/{globe-with-halo-indicator.dbbb98b8.js.map → globe-with-halo-indicator.1d27ef8f.js.map} +1 -1
  86. package/dist/chunks/globe-with-orbit-indicator.da885b24.js +2 -0
  87. package/dist/chunks/{globe-with-orbit-indicator.3539cb84.js.map → globe-with-orbit-indicator.da885b24.js.map} +1 -1
  88. package/dist/chunks/graph-layout-grid.9b4dded5.js +2 -0
  89. package/dist/chunks/{graph-layout-grid.abb6c059.js.map → graph-layout-grid.9b4dded5.js.map} +1 -1
  90. package/dist/chunks/{graph-node.dce0737b.js → graph-node.cef1191e.js} +2 -2
  91. package/dist/chunks/{graph-node.dce0737b.js.map → graph-node.cef1191e.js.map} +1 -1
  92. package/dist/chunks/graph-text.9a08fac2.js +2 -0
  93. package/dist/chunks/{graph-text.0e9a8aa9.js.map → graph-text.9a08fac2.js.map} +1 -1
  94. package/dist/chunks/grid-background.4ae70f4b.js +2 -0
  95. package/dist/chunks/{grid-background.ac91a79b.js.map → grid-background.4ae70f4b.js.map} +1 -1
  96. package/dist/chunks/hi-tech-button.148b86b5.js +2 -0
  97. package/dist/chunks/{hi-tech-button.174e33b5.js.map → hi-tech-button.148b86b5.js.map} +1 -1
  98. package/dist/chunks/indicator-card.6bd83151.js +3 -0
  99. package/dist/chunks/{indicator-card.365a80fa.js.map → indicator-card.6bd83151.js.map} +1 -1
  100. package/dist/chunks/lights-component-title.70df56ef.js +2 -0
  101. package/dist/chunks/{lights-component-title.b45aca52.js.map → lights-component-title.70df56ef.js.map} +1 -1
  102. package/dist/chunks/loading-panel.5064b525.js +2 -0
  103. package/dist/chunks/{loading-panel.c38af443.js.map → loading-panel.5064b525.js.map} +1 -1
  104. package/dist/chunks/main.d3aeba23.js +2 -0
  105. package/dist/chunks/main.d3aeba23.js.map +1 -0
  106. package/dist/chunks/modern-style-component-title.da246d43.js +2 -0
  107. package/dist/chunks/{modern-style-component-title.66152366.js.map → modern-style-component-title.da246d43.js.map} +1 -1
  108. package/dist/chunks/modern-style-page-title.1d66ce8f.js +2 -0
  109. package/dist/chunks/{modern-style-page-title.f50dfbec.js.map → modern-style-page-title.1d66ce8f.js.map} +1 -1
  110. package/dist/chunks/modern-style-treemap.0c28b431.js +3 -0
  111. package/dist/chunks/{modern-style-treemap.912d99c6.js.map → modern-style-treemap.0c28b431.js.map} +1 -1
  112. package/dist/chunks/particle-animation.e912dac0.js +2 -0
  113. package/dist/chunks/{particle-animation.ee49b237.js.map → particle-animation.e912dac0.js.map} +1 -1
  114. package/dist/chunks/{progress-bar-list.7254b6b3.js → progress-bar-list.97c12820.js} +2 -2
  115. package/dist/chunks/{progress-bar-list.7254b6b3.js.map → progress-bar-list.97c12820.js.map} +1 -1
  116. package/dist/chunks/{radar-chart.0e982983.js → radar-chart.cbcd687b.js} +2 -2
  117. package/dist/chunks/{radar-chart.0e982983.js.map → radar-chart.cbcd687b.js.map} +1 -1
  118. package/dist/chunks/simple-card-item.e5725926.js +3 -0
  119. package/dist/chunks/{simple-card-item.c36118a6.js.map → simple-card-item.e5725926.js.map} +1 -1
  120. package/dist/chunks/tabs-drawer.cc1ad77e.js +3 -0
  121. package/dist/chunks/{tabs-drawer.2e83b00f.js.map → tabs-drawer.cc1ad77e.js.map} +1 -1
  122. package/dist/chunks/tabs-page-title.201b4c96.js +3 -0
  123. package/dist/chunks/{tabs-page-title.19eaecee.js.map → tabs-page-title.201b4c96.js.map} +1 -1
  124. package/dist/chunks/{tech-mesh-base-view.2c686877.js → tech-mesh-base-view.b39e33a3.js} +2 -2
  125. package/dist/chunks/{tech-mesh-base-view.2c686877.js.map → tech-mesh-base-view.b39e33a3.js.map} +1 -1
  126. package/dist/chunks/title-text.3902e977.js +2 -0
  127. package/dist/chunks/{title-text.fc52bc8a.js.map → title-text.3902e977.js.map} +1 -1
  128. package/dist/chunks/top-title-bar.7523d456.js +2 -0
  129. package/dist/chunks/{top-title-bar.0e9025cd.js.map → top-title-bar.7523d456.js.map} +1 -1
  130. package/dist/examples.json +12 -12
  131. package/dist/index.5fce8056.js +2 -0
  132. package/dist/index.5fce8056.js.map +1 -0
  133. package/dist/manifest.json +102 -102
  134. package/dist/types.json +45 -45
  135. package/package.json +4 -4
  136. package/dist/chunks/114.19fb04c3.js +0 -2
  137. package/dist/chunks/1889.91fa1d7c.js +0 -2
  138. package/dist/chunks/1889.91fa1d7c.js.map +0 -1
  139. package/dist/chunks/4291.66178472.js +0 -2
  140. package/dist/chunks/4291.66178472.js.map +0 -1
  141. package/dist/chunks/4765.fe24f07e.js.map +0 -1
  142. package/dist/chunks/5902.549535f9.js +0 -3
  143. package/dist/chunks/5902.549535f9.js.map +0 -1
  144. package/dist/chunks/7146.e395f790.js.map +0 -1
  145. package/dist/chunks/7733.c0366b9c.js +0 -2
  146. package/dist/chunks/871.b8aa19b8.js +0 -2
  147. package/dist/chunks/871.b8aa19b8.js.map +0 -1
  148. package/dist/chunks/8826.8ef9431c.js +0 -2
  149. package/dist/chunks/9140.eddbf9c8.js +0 -3
  150. package/dist/chunks/9140.eddbf9c8.js.map +0 -1
  151. package/dist/chunks/app-wall-card-item.438a2758.js +0 -3
  152. package/dist/chunks/app-wall-relation-line.94bc5eba.js +0 -3
  153. package/dist/chunks/app-wall-system-card.29cd2836.js +0 -2
  154. package/dist/chunks/app-wall.1d0801d4.js +0 -2
  155. package/dist/chunks/basic-index-group.ffbab2ee.js +0 -2
  156. package/dist/chunks/battery-chart.80355972.js +0 -2
  157. package/dist/chunks/brick-notification.11d7411b.js +0 -2
  158. package/dist/chunks/cabinet-app-layer.05c66229.js +0 -3
  159. package/dist/chunks/cabinet-button.ee9ea68d.js +0 -2
  160. package/dist/chunks/cabinet-container.70ba99de.js +0 -3
  161. package/dist/chunks/cabinet-graph.4cfa6429.js +0 -2
  162. package/dist/chunks/china-map.3e89e422.js +0 -2
  163. package/dist/chunks/complex-search.2fa969e0.js +0 -2
  164. package/dist/chunks/crystal-ball-indicator.bb7f716b.js +0 -2
  165. package/dist/chunks/data-display-flipper-fifth.6cdcf8a4.js +0 -2
  166. package/dist/chunks/gauge-chart.cbbfe883.js +0 -2
  167. package/dist/chunks/gear-background.5ab63f12.js +0 -2
  168. package/dist/chunks/globe-with-halo-indicator.dbbb98b8.js +0 -2
  169. package/dist/chunks/globe-with-orbit-indicator.3539cb84.js +0 -2
  170. package/dist/chunks/graph-layout-grid.abb6c059.js +0 -2
  171. package/dist/chunks/graph-text.0e9a8aa9.js +0 -2
  172. package/dist/chunks/grid-background.ac91a79b.js +0 -2
  173. package/dist/chunks/hi-tech-button.174e33b5.js +0 -2
  174. package/dist/chunks/indicator-card.365a80fa.js +0 -3
  175. package/dist/chunks/lights-component-title.b45aca52.js +0 -2
  176. package/dist/chunks/loading-panel.c38af443.js +0 -2
  177. package/dist/chunks/main.e6b2d9a9.js +0 -2
  178. package/dist/chunks/main.e6b2d9a9.js.map +0 -1
  179. package/dist/chunks/modern-style-component-title.66152366.js +0 -2
  180. package/dist/chunks/modern-style-page-title.f50dfbec.js +0 -2
  181. package/dist/chunks/modern-style-treemap.912d99c6.js +0 -3
  182. package/dist/chunks/particle-animation.ee49b237.js +0 -2
  183. package/dist/chunks/simple-card-item.c36118a6.js +0 -3
  184. package/dist/chunks/tabs-drawer.2e83b00f.js +0 -3
  185. package/dist/chunks/tabs-page-title.19eaecee.js +0 -3
  186. package/dist/chunks/title-text.fc52bc8a.js +0 -2
  187. package/dist/chunks/top-title-bar.0e9025cd.js +0 -2
  188. package/dist/index.7b4cd640.js +0 -2
  189. package/dist/index.7b4cd640.js.map +0 -1
  190. /package/dist/chunks/{5902.549535f9.js.LICENSE.txt → 6785.f4940e56.js.LICENSE.txt} +0 -0
  191. /package/dist/chunks/{9140.eddbf9c8.js.LICENSE.txt → 948.3dac7f67.js.LICENSE.txt} +0 -0
  192. /package/dist/chunks/{app-wall-card-item.438a2758.js.LICENSE.txt → app-wall-card-item.fc236047.js.LICENSE.txt} +0 -0
  193. /package/dist/chunks/{app-wall-relation-line.94bc5eba.js.LICENSE.txt → app-wall-relation-line.25f802e7.js.LICENSE.txt} +0 -0
  194. /package/dist/chunks/{cabinet-app-layer.05c66229.js.LICENSE.txt → cabinet-app-layer.fffb3971.js.LICENSE.txt} +0 -0
  195. /package/dist/chunks/{cabinet-container.70ba99de.js.LICENSE.txt → cabinet-container.53e6a418.js.LICENSE.txt} +0 -0
  196. /package/dist/chunks/{cabinet-node.54685641.js.LICENSE.txt → cabinet-node.8380d805.js.LICENSE.txt} +0 -0
  197. /package/dist/chunks/{cabinet-thumbnail.ae05c311.js.LICENSE.txt → cabinet-thumbnail.c475ab5d.js.LICENSE.txt} +0 -0
  198. /package/dist/chunks/{dropdown-menu.7c2ad1f0.js.LICENSE.txt → dropdown-menu.3fc9e527.js.LICENSE.txt} +0 -0
  199. /package/dist/chunks/{indicator-card.365a80fa.js.LICENSE.txt → indicator-card.6bd83151.js.LICENSE.txt} +0 -0
  200. /package/dist/chunks/{modern-style-treemap.912d99c6.js.LICENSE.txt → modern-style-treemap.0c28b431.js.LICENSE.txt} +0 -0
  201. /package/dist/chunks/{simple-card-item.c36118a6.js.LICENSE.txt → simple-card-item.e5725926.js.LICENSE.txt} +0 -0
  202. /package/dist/chunks/{tabs-drawer.2e83b00f.js.LICENSE.txt → tabs-drawer.cc1ad77e.js.LICENSE.txt} +0 -0
  203. /package/dist/chunks/{tabs-page-title.19eaecee.js.LICENSE.txt → tabs-page-title.201b4c96.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/globe-with-halo-indicator.dbbb98b8.js","mappings":"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","sources":["webpack:///../../node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack:///./src/shared/useCenterScale.ts","webpack:///../../node_modules/css-loader/dist/runtime/getUrl.js","webpack:///./src/globe-with-halo-indicator/index.tsx","webpack:///../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack:///./src/shared/useContainerScale.ts","webpack:///./src/shared/CornerIndicator.tsx","webpack:///../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///../../node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack:///./src/shared/formatValue.ts","webpack:///./src/globe-with-halo-indicator/styles.shadow.css","webpack:///../../node_modules/style-loader/dist/runtime/insertBySelector.js","webpack:///./src/globe-with-halo-indicator/SatelliteRing.tsx","webpack:///./src/globe-with-halo-indicator/RotatingArc.tsx","webpack:///./src/shared/CornerIndicator.shadow.css","webpack:///../../node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack:///./src/fonts/ALiBaBaPuHuiTi.css?7885","webpack:///./src/fonts/ALiBaBaPuHuiTi.css"],"sourcesContent":["\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","import { useEffect, useRef, useState } from \"react\";\nimport ResizeObserver from \"resize-observer-polyfill\";\n\n/**\n * 让中心数据值不要超过球体范围,但缩放值最低不小于 0.3\n */\nexport function useCenterScale(maxWidth: number) {\n const [centerScale, setCenterScale] = useState<number | null>(null);\n const centerRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const centerValueElement = centerRef.current;\n if (!centerValueElement) {\n return;\n }\n const observer = new ResizeObserver(() => {\n const width = centerValueElement.clientWidth;\n setCenterScale(Math.min(1, Math.max(0.3, maxWidth / width)));\n });\n observer.observe(centerValueElement);\n return () => observer.disconnect();\n }, [maxWidth]);\n\n return [centerScale, centerRef] as const;\n}\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\n};","import React, { useMemo } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { formatValue } from \"../shared/formatValue\";\nimport { CornerIndicator } from \"../shared/CornerIndicator\";\nimport { RotatingArc } from \"./RotatingArc\";\nimport { SatelliteRing } from \"./SatelliteRing\";\nimport { useContainerScale } from \"../shared/useContainerScale\";\nimport { useCenterScale } from \"../shared/useCenterScale\";\nimport particlesWebm from \"./assets/particles.webm\";\nimport \"../fonts/ALiBaBaPuHuiTi.css\";\nimport styleText from \"./styles.shadow.css\";\nimport cornerStyleText from \"../shared/CornerIndicator.shadow.css\";\n\nconst { defineElement, property } = createDecorators();\n\nexport interface GlobeWithHaloIndicatorProps {\n dataSource?: DataItem[];\n centerDataSource?: DataItem;\n cornerDataSource?: CornerDataItem[];\n maxScale?: number;\n}\n\nexport interface DataItem {\n label: string;\n value: string | number;\n}\n\nexport interface CornerDataItem extends DataItem {\n color?: string;\n}\n\ninterface DataItemWithPosition extends DataItem {\n x: number;\n y: number;\n d: string;\n x2: number;\n y2: number;\n}\n\n/**\n * 地球加光环的数据展示构件。\n */\nexport\n@defineElement(\"data-view.globe-with-halo-indicator\", {\n styleTexts: [styleText, cornerStyleText],\n})\nclass GlobeWithHaloIndicator\n extends ReactNextElement\n implements GlobeWithHaloIndicatorProps\n{\n /**\n * 指标数据列表(显示在环上)\n *\n * 注意:最多显示8项数据\n */\n @property({ attribute: false })\n accessor dataSource: DataItem[] | undefined;\n\n /** 中心数据(显示在中心地球内) */\n @property({ attribute: false })\n accessor centerDataSource: DataItem | undefined;\n\n /**\n * 左上角指标数据列表\n */\n @property({ attribute: false })\n accessor cornerDataSource: CornerDataItem[] | undefined;\n\n /**\n * 最大缩放比例\n *\n * @default 1\n */\n @property({ type: Number })\n accessor maxScale: number | undefined;\n\n render() {\n return (\n <GlobeWithHaloIndicatorComponent\n root={this}\n dataSource={this.dataSource}\n centerDataSource={this.centerDataSource}\n cornerDataSource={this.cornerDataSource}\n maxScale={this.maxScale}\n />\n );\n }\n}\n\nexport interface GlobeWithHaloIndicatorComponentProps\n extends GlobeWithHaloIndicatorProps {\n root: GlobeWithHaloIndicator;\n}\n\nexport function GlobeWithHaloIndicatorComponent({\n root,\n dataSource,\n centerDataSource,\n cornerDataSource,\n maxScale,\n}: GlobeWithHaloIndicatorComponentProps) {\n const scale = useContainerScale({ width: 900, height: 575, root, maxScale });\n const [centerValueScale, centerValueRef] = useCenterScale(260);\n\n // 计算环上标签的位置\n // 1. 将数据分为两组,分别在环的两侧\n // 2. 索引(从 0 开始)为偶数的数据在右侧,索引为奇数的数据在左侧\n // 3. 总数为偶数时,两侧数据对称,每组数据按照角度均匀分布\n // 4. 总数为奇数时,右侧数据比左侧数据多一个,右侧数据按照等差数列间隔分布,\n // 左侧第 N 个数据的角度为右侧第 N 个和第 N + 1 个数据的角度的中分角\n const labels = useMemo(() => {\n const clampedData = dataSource?.slice(0, 8) ?? [];\n if (clampedData.length === 0) {\n return [];\n }\n\n const rx = 292.4;\n const ry = 59.4;\n const cx = 413;\n const cy = 65.5;\n const lineBaseDiameter = 340;\n\n const even = clampedData.length % 2 === 0;\n const m = Math.ceil(clampedData.length / 2) + 1;\n const fractions = getSequenceSum(m);\n const startAngle = -Math.PI / 3;\n const endAngle = Math.PI / 4;\n const arc = (endAngle - startAngle) / fractions;\n\n let index = 0;\n let x: number;\n let y: number;\n let x2: number;\n let y2: number;\n let r: number;\n let angle: number;\n let lineAngle: number;\n const result: DataItemWithPosition[] = [];\n while (index < clampedData.length) {\n const item = clampedData[index];\n if (index % 2 === 0) {\n const n = index / 2 + 1;\n angle = startAngle + arc * getSequenceSum(n);\n lineAngle = (Math.PI / 3) * (2 - n / m);\n r =\n lineBaseDiameter -\n (m > 2 ? ((lineBaseDiameter / 2) * index) / 2 / (m - 2) : 0);\n x = cx + rx * Math.cos(angle);\n y = cy + ry * Math.sin(angle);\n x2 = x + Math.cos(lineAngle) * r;\n y2 = y - Math.sin(lineAngle) * r;\n const d = `M ${x} ${y} A ${r} ${r} 0 0 0 ${x2} ${y2}`;\n result.push({ ...item, x, y, x2, y2, d });\n } else if (even) {\n const oddX = cx * 2 - x;\n const oddX2 = cx * 2 - x2;\n result.push({\n ...item,\n x: oddX,\n y,\n x2: oddX2,\n y2: y2,\n d: `M ${oddX} ${y} A ${r} ${r} 0 0 1 ${oddX2} ${y2}`,\n });\n } else {\n const oddAngle = Math.PI - (angle + (arc * (index + 1)) / 2);\n const oddLineAngle = Math.PI - lineAngle;\n const oddX = cx + rx * Math.cos(oddAngle);\n const oddY = cy + ry * Math.sin(oddAngle);\n // Assert: m > 2 here\n const oddR = r - lineBaseDiameter / 4 / (m - 2);\n const oddX2 = oddX + Math.cos(oddLineAngle) * oddR;\n const oddY2 = oddY - Math.sin(oddLineAngle) * oddR;\n result.push({\n ...item,\n x: oddX,\n y: oddY,\n x2: oddX2,\n y2: oddY2,\n d: `M ${oddX} ${oddY} A ${oddR} ${oddR} 0 0 1 ${oddX2} ${oddY2}`,\n });\n }\n index++;\n }\n return result;\n }, [dataSource]);\n\n return (\n <>\n <div\n className=\"container\"\n style={\n {\n visibility: scale === null ? \"hidden\" : \"visible\",\n \"--scale\": scale,\n } as React.CSSProperties & {\n \"--scale\": number;\n }\n }\n >\n <div className=\"base\"></div>\n <svg className=\"ring\" width={928} height={534} viewBox=\"0 0 928 534\">\n <g transform=\"translate(51 304)\">\n <ellipse\n cx=\"413\"\n cy=\"89.5\"\n rx=\"412.4\"\n ry=\"88.9\"\n fill=\"none\"\n stroke=\"rgba(123,212,235,255)\"\n strokeWidth=\"1.2\"\n >\n <animate\n attributeName=\"rx\"\n values=\"412.4;0\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"ry\"\n values=\"88.9;0\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"cy\"\n values=\"89.5;10\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"stroke\"\n values=\"rgba(123,212,235,255);rgba(123,212,235,255);rgba(123,212,235,25)\"\n keyTimes=\"0;0.53846;1\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n </ellipse>\n <RotatingArc cx={413} cy={89.5} rx={412.4} ry={88.9} />\n {labels.map((label, index) => (\n <path\n key={index}\n d={label.d}\n fill=\"none\"\n stroke=\"#3889B6\"\n strokeWidth={2}\n strokeDasharray=\"6 4\"\n ></path>\n ))}\n </g>\n </svg>\n\n <div className=\"globe\"></div>\n\n <SatelliteRing />\n\n <video\n className=\"particles\"\n width={197}\n height={246}\n autoPlay\n muted\n loop\n playsInline\n >\n <source src={particlesWebm} type=\"video/webm\" />\n </video>\n\n <div className=\"ring-labels\">\n {labels.map((item, index) => (\n <div\n key={index}\n className={`ring-label-container ${index % 2 === 0 ? \"even\" : \"odd\"}`}\n style={{\n left: item.x2 + 51,\n top: item.y2 + 304,\n }}\n >\n <div className=\"ring-icon\"></div>\n <div className=\"ring-label\">{item.label}</div>\n <div className=\"ring-value\">{formatValue(item.value)}</div>\n </div>\n ))}\n </div>\n\n <div className=\"center\">\n <div className=\"center-label\">{centerDataSource?.label}</div>\n <div\n className=\"center-value\"\n ref={centerValueRef}\n style={{\n visibility: centerValueScale === null ? \"hidden\" : \"visible\",\n transform: `scale(${centerValueScale ?? 1})`,\n }}\n >\n {formatValue(centerDataSource?.value)}\n </div>\n </div>\n </div>\n <CornerIndicator cornerDataSource={cornerDataSource} />\n </>\n );\n}\n\nfunction getSequenceSum(n: number) {\n return (n * (n + 1)) / 2;\n}\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","import { useEffect, useState } from \"react\";\nimport ResizeObserver from \"resize-observer-polyfill\";\n\n/**\n * 根据容器尺寸进行缩放\n */\nexport function useContainerScale({\n width: baseWidth,\n height: baseHeight,\n root,\n maxScale,\n disabled,\n}: {\n width: number;\n height: number;\n root: HTMLElement;\n /** 最大缩放比例,默认为 1 */\n maxScale?: number;\n disabled?: boolean;\n}): number | null {\n const [scale, setScale] = useState<number | null>(null);\n\n useEffect(() => {\n if (disabled) {\n setScale(null);\n return;\n }\n // 当容器宽高低于预设值时,图形会自动缩小\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === root) {\n const { width, height } = entry.contentRect;\n setScale(\n Math.min(maxScale ?? 1, width / baseWidth, height / baseHeight)\n );\n }\n }\n });\n observer.observe(root);\n return () => observer.disconnect();\n }, [baseHeight, baseWidth, disabled, maxScale, root]);\n\n return scale;\n}\n","import React from \"react\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type { Tag, TagProps } from \"@next-bricks/basic/tag\";\nimport { formatValue } from \"./formatValue\";\n\nconst WrappedTag = wrapBrick<Tag, TagProps>(\"eo-tag\");\n\nexport interface CornerDataItem {\n label: string;\n value: string | number;\n color?: string;\n}\n\nexport interface CornerIndicatorProps {\n cornerDataSource?: CornerDataItem[];\n}\n\nexport function CornerIndicator({ cornerDataSource }: CornerIndicatorProps) {\n return (\n <div className=\"corner\">\n {cornerDataSource?.map((item, index) => (\n <div key={index} className=\"corner-item\">\n <div className=\"corner-label\">{item.label}</div>\n <WrappedTag\n className=\"corner-value\"\n outline\n color={item.color}\n tagStyle={{\n fontSize: 18,\n padding: \"2px 16px\",\n }}\n >\n {formatValue(item.value)}\n </WrappedTag>\n </div>\n ))}\n </div>\n );\n}\n","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","const numberFormatter = new Intl.NumberFormat(\"zh-CN\", {\n useGrouping: true,\n});\n\nexport function formatValue(value: string | number): string {\n return isMeaningfulNumber(value) ? numberFormatter.format(+value) : value;\n}\n\n/**\n * 判断一个值是否是有意义的数字,包括数字和可以转换为数字的字符串。\n *\n * 但不包括 NaN、Infinity、-Infinity 等。\n *\n * Ref https://github.com/jonschlinkert/is-number/blob/master/index.js\n */\nexport function isMeaningfulNumber(value: unknown): value is number | string {\n if (typeof value === \"number\") {\n return value - value === 0;\n }\n if (typeof value === \"string\" && value.trim() !== \"\") {\n return /* istanbul ignore next */ (Number.isFinite ?? isFinite)(+value);\n }\n return false;\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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./assets/base.png\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_1___ = new URL(\"./assets/globe.png\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_2___ = new URL(\"../crystal-ball-indicator/assets/green-dot.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\nvar ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_2___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host,\n.center{display:flex;align-items:center;justify-content:center}:host{height:100%;color:#fff}:host([hidden]){display:none}*{box-sizing:border-box}.container{width:928px;height:534px;position:relative;transform-origin:center;transform:scale(var(--scale));--scale:1}.base,\n.center,\n.globe,\n.satellite-ring,\n.ring,\n.ring-labels{position:absolute;left:50%;transform:translate(-50%,0)}.base{width:1312px;height:575px;bottom:0;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});background-repeat:no-repeat;background-position:center bottom -173px;background-size:100%}.globe,\n.center{width:272px;height:272px;bottom:228px}.globe{background-image:url(${___CSS_LOADER_URL_REPLACEMENT_1___});background-repeat:no-repeat;background-size:100%;background-position:center}.satellite-ring,\n.ring{top:0}.particles{mix-blend-mode:screen;position:absolute;bottom:204px;left:50%;transform:translate(-50%,0)}.ring-labels{top:0;width:928px}.ring-label-container{position:absolute;padding:0 35px;margin-top:-14px;width:max-content}.ring-icon{position:absolute;width:36px;height:36px;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_2___});background-repeat:no-repeat;background-size:100%;background-position:0 0;top:-4px}.odd{transform:translate(-100%,0);text-align:right}.odd .ring-icon{right:-18px}.even .ring-icon{left:-18px}.ring-label{color:rgba(200,226,255,0.8);font-size:18px}.ring-value{font-family:ALiBaBaPuHuiTi;font-size:28px;text-shadow:0px 4px 7px #514af7}.center{flex-direction:column;text-align:center;text-shadow:0px 2px 4px rgba(0,0,0,0.5)}.center-label:empty,\n.center-value:empty{display:none}.center-label{font-size:24px;font-weight:600;line-height:33px}.center-value{font-family:ALiBaBaPuHuiTi;font-weight:bold;font-size:60px;line-height:82px}.corner{position:absolute;top:13px;left:31px;font-size:18px}.corner-item{display:flex;margin-bottom:15px}.corner-label{font-weight:500;line-height:25px}.corner-value{display:block;margin-left:19px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","import React from \"react\";\n\nexport function SatelliteRing() {\n return (\n <svg\n className=\"satellite-ring\"\n width=\"928px\"\n height=\"534px\"\n viewBox=\"0 0 928 534\"\n >\n <defs>\n <linearGradient\n x1=\"50%\"\n y1=\"14.8555832%\"\n x2=\"50%\"\n y2=\"100%\"\n id=\"linearGradient-1\"\n >\n <stop stopColor=\"#00E8FF\" stopOpacity=\"0\" offset=\"0%\"></stop>\n <stop stopColor=\"#00CCFF\" offset=\"100%\"></stop>\n </linearGradient>\n <linearGradient\n x1=\"50%\"\n y1=\"14.8555832%\"\n x2=\"50%\"\n y2=\"100%\"\n id=\"linearGradient-2\"\n >\n <stop stopColor=\"#00CCFF\" offset=\"0%\"></stop>\n <stop stopColor=\"#00E8FF\" stopOpacity=\"0\" offset=\"100%\"></stop>\n </linearGradient>\n </defs>\n <g transform=\"translate(51 304)\" stroke=\"1\" fill=\"none\" opacity={0.5}>\n <ellipse\n cx=\"413\"\n cy=\"-136\"\n rx=\"164\"\n ry=\"94.5\"\n stroke=\"url(#linearGradient-1)\"\n >\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"0 413 -136\"\n to=\"360 413 -136\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n </ellipse>\n <ellipse\n cx=\"413\"\n cy=\"-136\"\n rx=\"164\"\n ry=\"94.5\"\n stroke=\"url(#linearGradient-2)\"\n >\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"210 413 -136\"\n to=\"-150 413 -136\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n </ellipse>\n </g>\n </svg>\n );\n}\n","import { uniqueId } from \"lodash\";\nimport React, { useEffect, useMemo, useState } from \"react\";\n\nexport interface RotatingArcProps {\n cx: number;\n cy: number;\n rx: number;\n ry: number;\n}\n\nexport function RotatingArc({ cx, cy, rx, ry }: RotatingArcProps) {\n const durationPerCircle = 2.6;\n const [path, setPath] = useState(\"M 0 0\");\n const defId = useMemo(() => uniqueId(\"rotating-arc-\"), []);\n\n useEffect(() => {\n let start: number;\n let timer: number;\n\n function step(timestamp: number) {\n if (start === undefined) {\n start = timestamp;\n }\n const elapsed = timestamp - start;\n\n const startAngle =\n -(elapsed / 1000 / durationPerCircle) * Math.PI * 2 + Math.PI * 1.1;\n // A bit more than a quarter circle\n const endAngle = startAngle - Math.PI * 0.6;\n const x1 = cx + rx * Math.cos(startAngle);\n const y1 = cy + ry * Math.sin(startAngle);\n const x2 = cx + rx * Math.cos(endAngle);\n const y2 = cy + ry * Math.sin(endAngle);\n setPath(`M ${x1} ${y1} A ${rx} ${ry} 0 0 0 ${x2} ${y2}`);\n timer = requestAnimationFrame(step);\n }\n\n timer = requestAnimationFrame(step);\n\n return () => {\n cancelAnimationFrame(timer);\n };\n }, [cx, cy, rx, ry]);\n\n return (\n <>\n <defs>\n <linearGradient\n id={defId}\n gradientTransform=\"rotate(48)\"\n x1=\"0\"\n y1=\"0\"\n x2=\"830px\"\n y2=\"183px\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0%\" stopColor=\"rgba(132, 253, 253, 0)\" />\n <stop offset=\"25%\" stopColor=\"rgba(132, 253, 253, 1)\" />\n <stop offset=\"50%\" stopColor=\"rgba(132, 253, 253, 1)\" />\n <stop offset=\"75%\" stopColor=\"rgba(248, 255, 255, 1)\" />\n </linearGradient>\n </defs>\n <path\n d={path}\n // d=\"M 0.6 89.5 A 412.4 88.9 0 0 0 825.4 88.9\"\n strokeWidth={4}\n stroke={`url(#${defId})`}\n fill=\"none\"\n />\n </>\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, `.corner{position:absolute;top:13px;left:31px;font-size:18px}.corner-item{display:flex;margin-bottom:15px}.corner-label{font-weight:500;line-height:25px;color:rgba(255,255,255,0.85)}.corner-value{display:block;margin-left:19px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./ALiBaBaPuHuiTi.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./ALiBaBaPuHuiTi.css\";\n export default content && content.locals ? content.locals : undefined;\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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./ALiBaBaPuHuiTi.ttf\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@font-face{font-family:ALiBaBaPuHuiTi;src:url(${___CSS_LOADER_URL_REPLACEMENT_0___})}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["module","exports","options","document","update","remove","styleElement","insertStyleElement","obj","css","supports","concat","media","needLayer","layer","length","sourceMap","btoa","unescape","encodeURIComponent","JSON","stringify","styleTagTransform","apply","parentNode","removeChild","removeStyleElement","useCenterScale","maxWidth","centerScale","setCenterScale","useState","centerRef","useRef","useEffect","centerValueElement","current","observer","ResizeObserver","width","clientWidth","Math","min","max","observe","disconnect","url","String","__esModule","default","test","slice","hash","needQuotes","replace","defineElement","property","createDecorators","_GlobeWithHaloIndicat","_A","WeakMap","_B","_C","_D","GlobeWithHaloIndicator","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_dataSource","_init_extra_dataSource","_init_centerDataSource","_init_extra_centerDataSource","_init_cornerDataSource","_init_extra_cornerDataSource","_init_maxScale","_init_extra_maxScale","dataSource","_classPrivateFieldGet","v","_classPrivateFieldSet","centerDataSource","cornerDataSource","maxScale","render","React","GlobeWithHaloIndicatorComponent","root","this","_ref","scale","useContainerScale","height","centerValueScale","centerValueRef","labels","useMemo","_dataSource$slice","clampedData","even","m","ceil","fractions","getSequenceSum","startAngle","PI","arc","x","y","x2","y2","r","angle","lineAngle","index","result","item","n","lineBaseDiameter","cos","sin","d","push","oddX","cx","oddX2","oddAngle","oddLineAngle","oddY","oddR","oddY2","className","style","visibility","viewBox","transform","cy","rx","ry","fill","stroke","strokeWidth","attributeName","values","dur","repeatCount","keyTimes","RotatingArc","map","label","key","strokeDasharray","SatelliteRing","autoPlay","muted","loop","playsInline","src","particlesWebm","type","left","top","formatValue","value","ref","CornerIndicator","_GlobeWithHaloIndicator","e","c","_initClass","_applyDecs","styleTexts","styleText","cornerStyleText","attribute","Number","nonce","setAttribute","baseWidth","baseHeight","disabled","setScale","entries","entry","target","contentRect","WrappedTag","wrapBrick","outline","color","tagStyle","fontSize","padding","stylesInDOM","getIndexByIdentifier","identifier","i","modulesToDom","list","idCountMap","identifiers","id","base","count","indexByIdentifier","references","updater","addElementStyle","byIndex","splice","api","domAPI","newObj","lastIdentifiers","newList","newLastIdentifiers","_i","_index","styleSheet","cssText","firstChild","appendChild","createTextNode","numberFormatter","Intl","NumberFormat","useGrouping","trim","_Number$isFinite","isFinite","isMeaningfulNumber","format","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_URL_IMPORT_1___","___CSS_LOADER_URL_IMPORT_2___","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","___CSS_LOADER_URL_REPLACEMENT_1___","___CSS_LOADER_URL_REPLACEMENT_2___","toString","memo","insert","styleTarget","querySelector","window","HTMLIFrameElement","contentDocument","head","getTarget","Error","x1","y1","stopColor","stopOpacity","offset","opacity","from","to","path","setPath","defId","uniqueId","start","timer","requestAnimationFrame","step","timestamp","undefined","endAngle","cancelAnimationFrame","gradientTransform","gradientUnits","element","createElement","setAttributes","attributes","locals"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/globe-with-halo-indicator.1d27ef8f.js","mappings":"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","sources":["webpack:///../../node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack:///./src/shared/useCenterScale.ts","webpack:///../../node_modules/css-loader/dist/runtime/getUrl.js","webpack:///./src/globe-with-halo-indicator/index.tsx","webpack:///../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack:///./src/shared/useContainerScale.ts","webpack:///./src/shared/CornerIndicator.tsx","webpack:///../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///../../node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack:///./src/shared/formatValue.ts","webpack:///./src/globe-with-halo-indicator/styles.shadow.css","webpack:///../../node_modules/style-loader/dist/runtime/insertBySelector.js","webpack:///./src/globe-with-halo-indicator/SatelliteRing.tsx","webpack:///./src/globe-with-halo-indicator/RotatingArc.tsx","webpack:///./src/shared/CornerIndicator.shadow.css","webpack:///../../node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack:///./src/fonts/ALiBaBaPuHuiTi.css?7885","webpack:///./src/fonts/ALiBaBaPuHuiTi.css"],"sourcesContent":["\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","import { useEffect, useRef, useState } from \"react\";\nimport ResizeObserver from \"resize-observer-polyfill\";\n\n/**\n * 让中心数据值不要超过球体范围,但缩放值最低不小于 0.3\n */\nexport function useCenterScale(maxWidth: number) {\n const [centerScale, setCenterScale] = useState<number | null>(null);\n const centerRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const centerValueElement = centerRef.current;\n if (!centerValueElement) {\n return;\n }\n const observer = new ResizeObserver(() => {\n const width = centerValueElement.clientWidth;\n setCenterScale(Math.min(1, Math.max(0.3, maxWidth / width)));\n });\n observer.observe(centerValueElement);\n return () => observer.disconnect();\n }, [maxWidth]);\n\n return [centerScale, centerRef] as const;\n}\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\n};","import React, { useMemo } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { formatValue } from \"../shared/formatValue\";\nimport { CornerIndicator } from \"../shared/CornerIndicator\";\nimport { RotatingArc } from \"./RotatingArc\";\nimport { SatelliteRing } from \"./SatelliteRing\";\nimport { useContainerScale } from \"../shared/useContainerScale\";\nimport { useCenterScale } from \"../shared/useCenterScale\";\nimport particlesWebm from \"./assets/particles.webm\";\nimport \"../fonts/ALiBaBaPuHuiTi.css\";\nimport styleText from \"./styles.shadow.css\";\nimport cornerStyleText from \"../shared/CornerIndicator.shadow.css\";\n\nconst { defineElement, property } = createDecorators();\n\nexport interface GlobeWithHaloIndicatorProps {\n dataSource?: DataItem[];\n centerDataSource?: DataItem;\n cornerDataSource?: CornerDataItem[];\n maxScale?: number;\n}\n\nexport interface DataItem {\n label: string;\n value: string | number;\n}\n\nexport interface CornerDataItem extends DataItem {\n color?: string;\n}\n\ninterface DataItemWithPosition extends DataItem {\n x: number;\n y: number;\n d: string;\n x2: number;\n y2: number;\n}\n\n/**\n * 地球加光环的数据展示构件。\n */\nexport\n@defineElement(\"data-view.globe-with-halo-indicator\", {\n styleTexts: [styleText, cornerStyleText],\n})\nclass GlobeWithHaloIndicator\n extends ReactNextElement\n implements GlobeWithHaloIndicatorProps\n{\n /**\n * 指标数据列表(显示在环上)\n *\n * 注意:最多显示8项数据\n */\n @property({ attribute: false })\n accessor dataSource: DataItem[] | undefined;\n\n /** 中心数据(显示在中心地球内) */\n @property({ attribute: false })\n accessor centerDataSource: DataItem | undefined;\n\n /**\n * 左上角指标数据列表\n */\n @property({ attribute: false })\n accessor cornerDataSource: CornerDataItem[] | undefined;\n\n /**\n * 最大缩放比例\n *\n * @default 1\n */\n @property({ type: Number })\n accessor maxScale: number | undefined;\n\n render() {\n return (\n <GlobeWithHaloIndicatorComponent\n root={this}\n dataSource={this.dataSource}\n centerDataSource={this.centerDataSource}\n cornerDataSource={this.cornerDataSource}\n maxScale={this.maxScale}\n />\n );\n }\n}\n\nexport interface GlobeWithHaloIndicatorComponentProps\n extends GlobeWithHaloIndicatorProps {\n root: GlobeWithHaloIndicator;\n}\n\nexport function GlobeWithHaloIndicatorComponent({\n root,\n dataSource,\n centerDataSource,\n cornerDataSource,\n maxScale,\n}: GlobeWithHaloIndicatorComponentProps) {\n const scale = useContainerScale({ width: 900, height: 575, root, maxScale });\n const [centerValueScale, centerValueRef] = useCenterScale(260);\n\n // 计算环上标签的位置\n // 1. 将数据分为两组,分别在环的两侧\n // 2. 索引(从 0 开始)为偶数的数据在右侧,索引为奇数的数据在左侧\n // 3. 总数为偶数时,两侧数据对称,每组数据按照角度均匀分布\n // 4. 总数为奇数时,右侧数据比左侧数据多一个,右侧数据按照等差数列间隔分布,\n // 左侧第 N 个数据的角度为右侧第 N 个和第 N + 1 个数据的角度的中分角\n const labels = useMemo(() => {\n const clampedData = dataSource?.slice(0, 8) ?? [];\n if (clampedData.length === 0) {\n return [];\n }\n\n const rx = 292.4;\n const ry = 59.4;\n const cx = 413;\n const cy = 65.5;\n const lineBaseDiameter = 340;\n\n const even = clampedData.length % 2 === 0;\n const m = Math.ceil(clampedData.length / 2) + 1;\n const fractions = getSequenceSum(m);\n const startAngle = -Math.PI / 3;\n const endAngle = Math.PI / 4;\n const arc = (endAngle - startAngle) / fractions;\n\n let index = 0;\n let x: number;\n let y: number;\n let x2: number;\n let y2: number;\n let r: number;\n let angle: number;\n let lineAngle: number;\n const result: DataItemWithPosition[] = [];\n while (index < clampedData.length) {\n const item = clampedData[index];\n if (index % 2 === 0) {\n const n = index / 2 + 1;\n angle = startAngle + arc * getSequenceSum(n);\n lineAngle = (Math.PI / 3) * (2 - n / m);\n r =\n lineBaseDiameter -\n (m > 2 ? ((lineBaseDiameter / 2) * index) / 2 / (m - 2) : 0);\n x = cx + rx * Math.cos(angle);\n y = cy + ry * Math.sin(angle);\n x2 = x + Math.cos(lineAngle) * r;\n y2 = y - Math.sin(lineAngle) * r;\n const d = `M ${x} ${y} A ${r} ${r} 0 0 0 ${x2} ${y2}`;\n result.push({ ...item, x, y, x2, y2, d });\n } else if (even) {\n const oddX = cx * 2 - x;\n const oddX2 = cx * 2 - x2;\n result.push({\n ...item,\n x: oddX,\n y,\n x2: oddX2,\n y2: y2,\n d: `M ${oddX} ${y} A ${r} ${r} 0 0 1 ${oddX2} ${y2}`,\n });\n } else {\n const oddAngle = Math.PI - (angle + (arc * (index + 1)) / 2);\n const oddLineAngle = Math.PI - lineAngle;\n const oddX = cx + rx * Math.cos(oddAngle);\n const oddY = cy + ry * Math.sin(oddAngle);\n // Assert: m > 2 here\n const oddR = r - lineBaseDiameter / 4 / (m - 2);\n const oddX2 = oddX + Math.cos(oddLineAngle) * oddR;\n const oddY2 = oddY - Math.sin(oddLineAngle) * oddR;\n result.push({\n ...item,\n x: oddX,\n y: oddY,\n x2: oddX2,\n y2: oddY2,\n d: `M ${oddX} ${oddY} A ${oddR} ${oddR} 0 0 1 ${oddX2} ${oddY2}`,\n });\n }\n index++;\n }\n return result;\n }, [dataSource]);\n\n return (\n <>\n <div\n className=\"container\"\n style={\n {\n visibility: scale === null ? \"hidden\" : \"visible\",\n \"--scale\": scale,\n } as React.CSSProperties & {\n \"--scale\": number;\n }\n }\n >\n <div className=\"base\"></div>\n <svg className=\"ring\" width={928} height={534} viewBox=\"0 0 928 534\">\n <g transform=\"translate(51 304)\">\n <ellipse\n cx=\"413\"\n cy=\"89.5\"\n rx=\"412.4\"\n ry=\"88.9\"\n fill=\"none\"\n stroke=\"rgba(123,212,235,255)\"\n strokeWidth=\"1.2\"\n >\n <animate\n attributeName=\"rx\"\n values=\"412.4;0\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"ry\"\n values=\"88.9;0\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"cy\"\n values=\"89.5;10\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"stroke\"\n values=\"rgba(123,212,235,255);rgba(123,212,235,255);rgba(123,212,235,25)\"\n keyTimes=\"0;0.53846;1\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n </ellipse>\n <RotatingArc cx={413} cy={89.5} rx={412.4} ry={88.9} />\n {labels.map((label, index) => (\n <path\n key={index}\n d={label.d}\n fill=\"none\"\n stroke=\"#3889B6\"\n strokeWidth={2}\n strokeDasharray=\"6 4\"\n ></path>\n ))}\n </g>\n </svg>\n\n <div className=\"globe\"></div>\n\n <SatelliteRing />\n\n <video\n className=\"particles\"\n width={197}\n height={246}\n autoPlay\n muted\n loop\n playsInline\n >\n <source src={particlesWebm} type=\"video/webm\" />\n </video>\n\n <div className=\"ring-labels\">\n {labels.map((item, index) => (\n <div\n key={index}\n className={`ring-label-container ${index % 2 === 0 ? \"even\" : \"odd\"}`}\n style={{\n left: item.x2 + 51,\n top: item.y2 + 304,\n }}\n >\n <div className=\"ring-icon\"></div>\n <div className=\"ring-label\">{item.label}</div>\n <div className=\"ring-value\">{formatValue(item.value)}</div>\n </div>\n ))}\n </div>\n\n <div className=\"center\">\n <div className=\"center-label\">{centerDataSource?.label}</div>\n <div\n className=\"center-value\"\n ref={centerValueRef}\n style={{\n visibility: centerValueScale === null ? \"hidden\" : \"visible\",\n transform: `scale(${centerValueScale ?? 1})`,\n }}\n >\n {formatValue(centerDataSource?.value)}\n </div>\n </div>\n </div>\n <CornerIndicator cornerDataSource={cornerDataSource} />\n </>\n );\n}\n\nfunction getSequenceSum(n: number) {\n return (n * (n + 1)) / 2;\n}\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","import { useEffect, useState } from \"react\";\nimport ResizeObserver from \"resize-observer-polyfill\";\n\n/**\n * 根据容器尺寸进行缩放\n */\nexport function useContainerScale({\n width: baseWidth,\n height: baseHeight,\n root,\n maxScale,\n disabled,\n}: {\n width: number;\n height: number;\n root: HTMLElement;\n /** 最大缩放比例,默认为 1 */\n maxScale?: number;\n disabled?: boolean;\n}): number | null {\n const [scale, setScale] = useState<number | null>(null);\n\n useEffect(() => {\n if (disabled) {\n setScale(null);\n return;\n }\n // 当容器宽高低于预设值时,图形会自动缩小\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === root) {\n const { width, height } = entry.contentRect;\n setScale(\n Math.min(maxScale ?? 1, width / baseWidth, height / baseHeight)\n );\n }\n }\n });\n observer.observe(root);\n return () => observer.disconnect();\n }, [baseHeight, baseWidth, disabled, maxScale, root]);\n\n return scale;\n}\n","import React from \"react\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type { Tag, TagProps } from \"@next-bricks/basic/tag\";\nimport { formatValue } from \"./formatValue\";\n\nconst WrappedTag = wrapBrick<Tag, TagProps>(\"eo-tag\");\n\nexport interface CornerDataItem {\n label: string;\n value: string | number;\n color?: string;\n}\n\nexport interface CornerIndicatorProps {\n cornerDataSource?: CornerDataItem[];\n}\n\nexport function CornerIndicator({ cornerDataSource }: CornerIndicatorProps) {\n return (\n <div className=\"corner\">\n {cornerDataSource?.map((item, index) => (\n <div key={index} className=\"corner-item\">\n <div className=\"corner-label\">{item.label}</div>\n <WrappedTag\n className=\"corner-value\"\n outline\n color={item.color}\n tagStyle={{\n fontSize: 18,\n padding: \"2px 16px\",\n }}\n >\n {formatValue(item.value)}\n </WrappedTag>\n </div>\n ))}\n </div>\n );\n}\n","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","const numberFormatter = new Intl.NumberFormat(\"zh-CN\", {\n useGrouping: true,\n});\n\nexport function formatValue(value: string | number): string {\n return isMeaningfulNumber(value) ? numberFormatter.format(+value) : value;\n}\n\n/**\n * 判断一个值是否是有意义的数字,包括数字和可以转换为数字的字符串。\n *\n * 但不包括 NaN、Infinity、-Infinity 等。\n *\n * Ref https://github.com/jonschlinkert/is-number/blob/master/index.js\n */\nexport function isMeaningfulNumber(value: unknown): value is number | string {\n if (typeof value === \"number\") {\n return value - value === 0;\n }\n if (typeof value === \"string\" && value.trim() !== \"\") {\n return /* istanbul ignore next */ (Number.isFinite ?? isFinite)(+value);\n }\n return false;\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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./assets/base.png\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_1___ = new URL(\"./assets/globe.png\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_2___ = new URL(\"../crystal-ball-indicator/assets/green-dot.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\nvar ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_2___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host,\n.center{display:flex;align-items:center;justify-content:center}:host{height:100%;color:#fff}:host([hidden]){display:none}*{box-sizing:border-box}.container{width:928px;height:534px;position:relative;transform-origin:center;transform:scale(var(--scale));--scale:1}.base,\n.center,\n.globe,\n.satellite-ring,\n.ring,\n.ring-labels{position:absolute;left:50%;transform:translate(-50%,0)}.base{width:1312px;height:575px;bottom:0;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});background-repeat:no-repeat;background-position:center bottom -173px;background-size:100%}.globe,\n.center{width:272px;height:272px;bottom:228px}.globe{background-image:url(${___CSS_LOADER_URL_REPLACEMENT_1___});background-repeat:no-repeat;background-size:100%;background-position:center}.satellite-ring,\n.ring{top:0}.particles{mix-blend-mode:screen;position:absolute;bottom:204px;left:50%;transform:translate(-50%,0)}.ring-labels{top:0;width:928px}.ring-label-container{position:absolute;padding:0 35px;margin-top:-14px;width:max-content}.ring-icon{position:absolute;width:36px;height:36px;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_2___});background-repeat:no-repeat;background-size:100%;background-position:0 0;top:-4px}.odd{transform:translate(-100%,0);text-align:right}.odd .ring-icon{right:-18px}.even .ring-icon{left:-18px}.ring-label{color:rgba(200,226,255,0.8);font-size:18px}.ring-value{font-family:ALiBaBaPuHuiTi;font-size:28px;text-shadow:0px 4px 7px #514af7}.center{flex-direction:column;text-align:center;text-shadow:0px 2px 4px rgba(0,0,0,0.5)}.center-label:empty,\n.center-value:empty{display:none}.center-label{font-size:24px;font-weight:600;line-height:33px}.center-value{font-family:ALiBaBaPuHuiTi;font-weight:bold;font-size:60px;line-height:82px}.corner{position:absolute;top:13px;left:31px;font-size:18px}.corner-item{display:flex;margin-bottom:15px}.corner-label{font-weight:500;line-height:25px}.corner-value{display:block;margin-left:19px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","import React from \"react\";\n\nexport function SatelliteRing() {\n return (\n <svg\n className=\"satellite-ring\"\n width=\"928px\"\n height=\"534px\"\n viewBox=\"0 0 928 534\"\n >\n <defs>\n <linearGradient\n x1=\"50%\"\n y1=\"14.8555832%\"\n x2=\"50%\"\n y2=\"100%\"\n id=\"linearGradient-1\"\n >\n <stop stopColor=\"#00E8FF\" stopOpacity=\"0\" offset=\"0%\"></stop>\n <stop stopColor=\"#00CCFF\" offset=\"100%\"></stop>\n </linearGradient>\n <linearGradient\n x1=\"50%\"\n y1=\"14.8555832%\"\n x2=\"50%\"\n y2=\"100%\"\n id=\"linearGradient-2\"\n >\n <stop stopColor=\"#00CCFF\" offset=\"0%\"></stop>\n <stop stopColor=\"#00E8FF\" stopOpacity=\"0\" offset=\"100%\"></stop>\n </linearGradient>\n </defs>\n <g transform=\"translate(51 304)\" stroke=\"1\" fill=\"none\" opacity={0.5}>\n <ellipse\n cx=\"413\"\n cy=\"-136\"\n rx=\"164\"\n ry=\"94.5\"\n stroke=\"url(#linearGradient-1)\"\n >\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"0 413 -136\"\n to=\"360 413 -136\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n </ellipse>\n <ellipse\n cx=\"413\"\n cy=\"-136\"\n rx=\"164\"\n ry=\"94.5\"\n stroke=\"url(#linearGradient-2)\"\n >\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"210 413 -136\"\n to=\"-150 413 -136\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n </ellipse>\n </g>\n </svg>\n );\n}\n","import { uniqueId } from \"lodash\";\nimport React, { useEffect, useMemo, useState } from \"react\";\n\nexport interface RotatingArcProps {\n cx: number;\n cy: number;\n rx: number;\n ry: number;\n}\n\nexport function RotatingArc({ cx, cy, rx, ry }: RotatingArcProps) {\n const durationPerCircle = 2.6;\n const [path, setPath] = useState(\"M 0 0\");\n const defId = useMemo(() => uniqueId(\"rotating-arc-\"), []);\n\n useEffect(() => {\n let start: number;\n let timer: number;\n\n function step(timestamp: number) {\n if (start === undefined) {\n start = timestamp;\n }\n const elapsed = timestamp - start;\n\n const startAngle =\n -(elapsed / 1000 / durationPerCircle) * Math.PI * 2 + Math.PI * 1.1;\n // A bit more than a quarter circle\n const endAngle = startAngle - Math.PI * 0.6;\n const x1 = cx + rx * Math.cos(startAngle);\n const y1 = cy + ry * Math.sin(startAngle);\n const x2 = cx + rx * Math.cos(endAngle);\n const y2 = cy + ry * Math.sin(endAngle);\n setPath(`M ${x1} ${y1} A ${rx} ${ry} 0 0 0 ${x2} ${y2}`);\n timer = requestAnimationFrame(step);\n }\n\n timer = requestAnimationFrame(step);\n\n return () => {\n cancelAnimationFrame(timer);\n };\n }, [cx, cy, rx, ry]);\n\n return (\n <>\n <defs>\n <linearGradient\n id={defId}\n gradientTransform=\"rotate(48)\"\n x1=\"0\"\n y1=\"0\"\n x2=\"830px\"\n y2=\"183px\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0%\" stopColor=\"rgba(132, 253, 253, 0)\" />\n <stop offset=\"25%\" stopColor=\"rgba(132, 253, 253, 1)\" />\n <stop offset=\"50%\" stopColor=\"rgba(132, 253, 253, 1)\" />\n <stop offset=\"75%\" stopColor=\"rgba(248, 255, 255, 1)\" />\n </linearGradient>\n </defs>\n <path\n d={path}\n // d=\"M 0.6 89.5 A 412.4 88.9 0 0 0 825.4 88.9\"\n strokeWidth={4}\n stroke={`url(#${defId})`}\n fill=\"none\"\n />\n </>\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, `.corner{position:absolute;top:13px;left:31px;font-size:18px}.corner-item{display:flex;margin-bottom:15px}.corner-label{font-weight:500;line-height:25px;color:rgba(255,255,255,0.85)}.corner-value{display:block;margin-left:19px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./ALiBaBaPuHuiTi.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./ALiBaBaPuHuiTi.css\";\n export default content && content.locals ? content.locals : undefined;\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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./ALiBaBaPuHuiTi.ttf\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@font-face{font-family:ALiBaBaPuHuiTi;src:url(${___CSS_LOADER_URL_REPLACEMENT_0___})}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["module","exports","options","document","update","remove","styleElement","insertStyleElement","obj","css","supports","concat","media","needLayer","layer","length","sourceMap","btoa","unescape","encodeURIComponent","JSON","stringify","styleTagTransform","apply","parentNode","removeChild","removeStyleElement","useCenterScale","maxWidth","centerScale","setCenterScale","useState","centerRef","useRef","useEffect","centerValueElement","current","observer","ResizeObserver","width","clientWidth","Math","min","max","observe","disconnect","url","String","__esModule","default","test","slice","hash","needQuotes","replace","defineElement","property","createDecorators","_GlobeWithHaloIndicat","_A","WeakMap","_B","_C","_D","GlobeWithHaloIndicator","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_dataSource","_init_extra_dataSource","_init_centerDataSource","_init_extra_centerDataSource","_init_cornerDataSource","_init_extra_cornerDataSource","_init_maxScale","_init_extra_maxScale","dataSource","_classPrivateFieldGet","v","_classPrivateFieldSet","centerDataSource","cornerDataSource","maxScale","render","React","GlobeWithHaloIndicatorComponent","root","this","_ref","scale","useContainerScale","height","centerValueScale","centerValueRef","labels","useMemo","_dataSource$slice","clampedData","even","m","ceil","fractions","getSequenceSum","startAngle","PI","arc","x","y","x2","y2","r","angle","lineAngle","index","result","item","n","lineBaseDiameter","cos","sin","d","push","oddX","cx","oddX2","oddAngle","oddLineAngle","oddY","oddR","oddY2","className","style","visibility","viewBox","transform","cy","rx","ry","fill","stroke","strokeWidth","attributeName","values","dur","repeatCount","keyTimes","RotatingArc","map","label","key","strokeDasharray","SatelliteRing","autoPlay","muted","loop","playsInline","src","particlesWebm","type","left","top","formatValue","value","ref","CornerIndicator","_GlobeWithHaloIndicator","e","c","_initClass","_applyDecs","styleTexts","styleText","cornerStyleText","attribute","Number","nonce","setAttribute","baseWidth","baseHeight","disabled","setScale","entries","entry","target","contentRect","WrappedTag","wrapBrick","outline","color","tagStyle","fontSize","padding","stylesInDOM","getIndexByIdentifier","identifier","i","modulesToDom","list","idCountMap","identifiers","id","base","count","indexByIdentifier","references","updater","addElementStyle","byIndex","splice","api","domAPI","newObj","lastIdentifiers","newList","newLastIdentifiers","_i","_index","styleSheet","cssText","firstChild","appendChild","createTextNode","numberFormatter","Intl","NumberFormat","useGrouping","trim","_Number$isFinite","isFinite","isMeaningfulNumber","format","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_URL_IMPORT_1___","___CSS_LOADER_URL_IMPORT_2___","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","___CSS_LOADER_URL_REPLACEMENT_1___","___CSS_LOADER_URL_REPLACEMENT_2___","toString","memo","insert","styleTarget","querySelector","window","HTMLIFrameElement","contentDocument","head","getTarget","Error","x1","y1","stopColor","stopOpacity","offset","opacity","from","to","path","setPath","defId","uniqueId","start","timer","requestAnimationFrame","step","timestamp","undefined","endAngle","cancelAnimationFrame","gradientTransform","gradientUnits","element","createElement","setAttributes","attributes","locals"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(globalThis.webpackChunk_next_bricks_data_view=globalThis.webpackChunk_next_bricks_data_view||[]).push([[9088],{1740:e=>{e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(n){!function(e,t,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var a=void 0!==n.layer;a&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,a&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var o=n.sourceMap;o&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(o))))," */")),t.styleTagTransform(r,e,t.options)}(t,e,n)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},9239:(e,t,n)=>{e.exports=n.p+"media/2978c0ae.ttf"},11752:(e,t,n)=>{n.d(t,{L:()=>o});var r=n(18769),a=n(99126);function o(e){const[t,n]=(0,r.useState)(null),o=(0,r.useRef)(null);return(0,r.useEffect)((()=>{const t=o.current;if(!t)return;const r=new a.A((()=>{const r=t.clientWidth;n(Math.min(1,Math.max(.3,e/r)))}));return r.observe(t),()=>r.disconnect()}),[e]),[t,o]}},17577:(e,t,n)=>{e.exports=n.p+"media/792b07b2.ttf"},20062:e=>{e.exports=function(e,t){return t||(t={}),e?(e=String(e.__esModule?e.default:e),/^['"].*['"]$/.test(e)&&(e=e.slice(1,-1)),t.hash&&(e+=t.hash),/["'() \t\n]|(%20)/.test(e)||t.needQuotes?'"'.concat(e.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):e):e}},30855:(e,t,n)=>{e.exports=function(e){var t=n.nc;t&&e.setAttribute("nonce",t)}},32356:(e,t,n)=>{e.exports=n.p+"images/7ddba157.png"},39132:(e,t,n)=>{e.exports=n.p+"media/8023ccd1.mp4"},40703:(e,t,n)=>{n.d(t,{A:()=>f});var r=n(36758),a=n.n(r),o=n(40935),i=n.n(o),l=n(20062),s=n.n(l),c=new URL(n(81026),n.b),u=new URL(n(9239),n.b),d=i()(a()),p=s()(c),m=s()(u);d.push([e.id,`@font-face{font-family:HarmonyOSSans;src:url(${p});font-weight:normal}@font-face{font-family:HarmonyOSSans;src:url(${m});font-weight:bold}`,""]);const f=d},47906:(e,t,n)=>{n.d(t,{D:()=>o});var r=n(18769),a=n(99126);function o(e){let{width:t,height:n,root:o,maxScale:i,disabled:l}=e;const[s,c]=(0,r.useState)(null);return(0,r.useEffect)((()=>{if(l)return void c(null);const e=new a.A((e=>{for(const r of e)if(r.target===o){const{width:e,height:a}=r.contentRect;c(Math.min(null!=i?i:1,e/t,a/n))}}));return e.observe(o),()=>e.disconnect()}),[n,t,l,i,o]),s}},48181:(e,t,n)=>{e.exports=n.p+"images/923db8f8.png"},49573:(e,t,n)=>{n.d(t,{A:()=>b});var r=n(36758),a=n.n(r),o=n(40935),i=n.n(o),l=n(20062),s=n.n(l),c=new URL(n(81548),n.b),u=new URL(n(32356),n.b),d=new URL(n(48181),n.b),p=i()(a()),m=s()(c),f=s()(u),h=s()(d);p.push([e.id,`:host,\n.center,\n.globe-video-container,\n.orbit-label-container{display:flex;align-items:center;justify-content:center}:host{height:100%;color:#fff}:host([hidden]){display:none}*{box-sizing:border-box}.container{width:852px;height:570px;position:relative;transform-origin:center;transform:scale(var(--scale));--scale:1}.base,\n.center,\n.ring,\n.globe,\n.globe-video-container,\n.orbit-labels,\n.satellite-ring{position:absolute;left:50%;transform:translate(-50%,0)}.base{width:852px;height:570px;bottom:0;background-image:url(${m});background-repeat:no-repeat;background-position:center;background-size:100%}.globe,\n.center{width:288px;height:288px;top:41px}.globe{background-image:url(${f});background-repeat:no-repeat;background-size:100%;background-position:center}.globe-video-container{top:65px;border-radius:9999px;width:240px;height:240px;overflow:hidden;mix-blend-mode:screen}.satellite-ring{top:14px;pointer-events:none}.center{flex-direction:column;text-align:center;text-shadow:0px 2px 4px rgba(0,0,0,0.5)}.center-label:empty,\n.center-value:empty{display:none}.center-label{font-size:24px;font-weight:600;line-height:33px;color:rgba(255,255,255,0.85)}.center-value{font-family:HarmonyOSSans;font-weight:bold;font-size:60px;line-height:85px;color:#d9f3f6}.orbit-labels{top:0;width:852px}.orbit-label-container{position:absolute;width:148px;height:94px;padding:10px;background-image:url(${h});background-repeat:no-repeat;background-size:100%;background-position:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);text-align:center;flex-direction:column;transform:translate(-50%,-50%)}.orbit-label{font-size:14px;font-weight:500;line-height:20px;color:rgba(200,226,255,0.9)}.orbit-value{font-size:26px;font-family:ALiBaBaPuHuiTi;line-height:35px;text-shadow:0px 4px 7px #514af7}`,""]);const b=p.toString()},57384:(e,t,n)=>{n.d(t,{x:()=>s});var r=n(18769),a=n.n(r),o=n(30981),i=n(82650);const l=(0,o.wrapBrick)("eo-tag");function s(e){let{cornerDataSource:t}=e;return a().createElement("div",{className:"corner"},null==t?void 0:t.map(((e,t)=>a().createElement("div",{key:t,className:"corner-item"},a().createElement("div",{className:"corner-label"},e.label),a().createElement(l,{className:"corner-value",outline:!0,color:e.color,tagStyle:{fontSize:18,padding:"2px 16px"}},(0,i.F)(e.value))))))}},62066:(e,t,n)=>{n.r(t),n.d(t,{GlobeWithOrbitIndicator:()=>T,GlobeWithOrbitIndicatorComponent:()=>G});var r,a=n(70918),o=n(86121),i=n(70829),l=n(62740),s=n(18769),c=n.n(s),u=n(90870),d=n(30981),p=(n(37),n(82650)),m=n(57384),f=n(88952),h=n(88517),b=n(47906),g=n(11752),x=n(39132),v=(n(95178),n(77293),n(49573)),y=n(92481);let E,S,w,A,M,k,N,C,F;const{defineElement:I,property:P}=(0,u.createDecorators)();let T;var D=new WeakMap,$=new WeakMap,L=new WeakMap,R=new WeakMap;class z extends d.ReactNextElement{constructor(){super(...arguments),(0,a.A)(this,D,S(this)),(0,a.A)(this,$,(w(this),A(this))),(0,a.A)(this,L,(M(this),k(this))),(0,a.A)(this,R,(N(this),C(this))),F(this)}get dataSource(){return(0,i.A)(D,this)}set dataSource(e){(0,o.A)(D,this,e)}get centerDataSource(){return(0,i.A)($,this)}set centerDataSource(e){(0,o.A)($,this,e)}get cornerDataSource(){return(0,i.A)(L,this)}set cornerDataSource(e){(0,o.A)(L,this,e)}get maxScale(){return(0,i.A)(R,this)}set maxScale(e){(0,o.A)(R,this,e)}render(){return c().createElement(G,{root:this,dataSource:this.dataSource,centerDataSource:this.centerDataSource,cornerDataSource:this.cornerDataSource,maxScale:this.maxScale})}}function G(e){let{root:t,dataSource:n,centerDataSource:r,cornerDataSource:a,maxScale:o}=e;const i=(0,b.D)({width:852,height:570,root:t,maxScale:o}),[l,u]=(0,g.L)(230),[d,v]=(0,s.useState)(null);return(0,s.useEffect)((()=>{var e;const t=null!==(e=null==n?void 0:n.slice(0,8))&&void 0!==e?e:[];if(0===t.length)return void v([]);let r,a;const o=2*Math.PI/t.length,i=3e3-(t.length-1)/7*1500,l=1e3*((t.length-8)**2*3/49+3),s=l+i;return a=requestAnimationFrame((function e(n){void 0===r&&(r=n);const c=n-r,u=Math.floor(c/s)%t.length,d=c%s,p=d<i?0:(d-i)/l,m=5*Math.PI/2+o*u+o*p;v(t.map(((e,t)=>{const n=(m-o*t)%(2*Math.PI);return{...e,x:426+367*Math.cos(n),y:330+170*Math.sin(n),opacity:n>Math.PI?n<5*Math.PI/4?1-(n-Math.PI)/(Math.PI/4)*.4:n>7*Math.PI/4?1-(2*Math.PI-n)/(Math.PI/4)*.4:.6:1}}))),a=requestAnimationFrame(e)})),()=>{cancelAnimationFrame(a)}}),[n]),c().createElement(c().Fragment,null,c().createElement("div",{className:"container",style:{visibility:null===i?"hidden":"visible","--scale":i}},c().createElement("div",{className:"base"}),c().createElement("svg",{className:"ring",width:852,height:570,viewBox:"0 0 852 570"},c().createElement(f.x,{cx:426,cy:300,rx:288,ry:132})),c().createElement("div",{className:"orbit-labels"},null==d?void 0:d.map(((e,t)=>c().createElement("div",{key:t,className:"orbit-label-container",style:{left:e.x,top:e.y,opacity:e.opacity}},c().createElement("div",{className:"orbit-label"},e.label),c().createElement("div",{className:"orbit-value"},(0,p.F)(e.value)))))),c().createElement("div",{className:"globe"}),c().createElement("div",{className:"globe-video-container"},c().createElement("video",{width:389,height:300,autoPlay:!0,muted:!0,loop:!0,playsInline:!0},c().createElement("source",{src:x,type:"video/mp4"}))),c().createElement(h.s,null),c().createElement("div",{className:"center"},c().createElement("div",{className:"center-label"},null==r?void 0:r.label),c().createElement("div",{className:"center-value",ref:u,style:{visibility:null===l?"hidden":"visible",transform:`scale(${null!=l?l:1})`}},(0,p.F)(null==r?void 0:r.value)))),c().createElement(m.x,{cornerDataSource:a}))}r=z,({e:[S,w,A,M,k,N,C,F],c:[T,E]}=(0,l.A)(r,[I("data-view.globe-with-orbit-indicator",{styleTexts:[v.A,y.A]})],[[P({attribute:!1}),1,"dataSource"],[P({attribute:!1}),1,"centerDataSource"],[P({attribute:!1}),1,"cornerDataSource"],[P({type:Number}),1,"maxScale"]],0,void 0,d.ReactNextElement)),E()},72591:e=>{var t=[];function n(e){for(var n=-1,r=0;r<t.length;r++)if(t[r].identifier===e){n=r;break}return n}function r(e,r){for(var o={},i=[],l=0;l<e.length;l++){var s=e[l],c=r.base?s[0]+r.base:s[0],u=o[c]||0,d="".concat(c," ").concat(u);o[c]=u+1;var p=n(d),m={css:s[1],media:s[2],sourceMap:s[3],supports:s[4],layer:s[5]};if(-1!==p)t[p].references++,t[p].updater(m);else{var f=a(m,r);r.byIndex=l,t.splice(l,0,{identifier:d,updater:f,references:1})}i.push(d)}return i}function a(e,t){var n=t.domAPI(t);return n.update(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;n.update(e=t)}else n.remove()}}e.exports=function(e,a){var o=r(e=e||[],a=a||{});return function(e){e=e||[];for(var i=0;i<o.length;i++){var l=n(o[i]);t[l].references--}for(var s=r(e,a),c=0;c<o.length;c++){var u=n(o[c]);0===t[u].references&&(t[u].updater(),t.splice(u,1))}o=s}}},73656:e=>{e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},77293:(e,t,n)=>{var r=n(72591),a=n.n(r),o=n(1740),i=n.n(o),l=n(88128),s=n.n(l),c=n(30855),u=n.n(c),d=n(93051),p=n.n(d),m=n(73656),f=n.n(m),h=n(40703),b={};b.styleTagTransform=f(),b.setAttributes=u(),b.insert=s().bind(null,"head"),b.domAPI=i(),b.insertStyleElement=p(),a()(h.A,b),h.A&&h.A.locals&&h.A.locals},81026:(e,t,n)=>{e.exports=n.p+"media/cc0a5a55.ttf"},81548:(e,t,n)=>{e.exports=n.p+"images/43f65465.png"},82650:(e,t,n)=>{n.d(t,{F:()=>a});const r=new Intl.NumberFormat("zh-CN",{useGrouping:!0});function a(e){return function(e){return"number"==typeof e?e-e==0:"string"==typeof e&&""!==e.trim()&&(null!==(t=Number.isFinite)&&void 0!==t?t:isFinite)(+e);var t}(e)?r.format(+e):e}},88128:e=>{var t={};e.exports=function(e,n){var r=function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}t[e]=n}return t[e]}(e);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},88517:(e,t,n)=>{n.d(t,{s:()=>o});var r=n(18769),a=n.n(r);function o(){return a().createElement("svg",{className:"satellite-ring",width:"928px",height:"534px",viewBox:"0 0 928 534"},a().createElement("defs",null,a().createElement("linearGradient",{x1:"50%",y1:"14.8555832%",x2:"50%",y2:"100%",id:"linearGradient-1"},a().createElement("stop",{stopColor:"#00E8FF",stopOpacity:"0",offset:"0%"}),a().createElement("stop",{stopColor:"#00CCFF",offset:"100%"})),a().createElement("linearGradient",{x1:"50%",y1:"14.8555832%",x2:"50%",y2:"100%",id:"linearGradient-2"},a().createElement("stop",{stopColor:"#00CCFF",offset:"0%"}),a().createElement("stop",{stopColor:"#00E8FF",stopOpacity:"0",offset:"100%"}))),a().createElement("g",{transform:"translate(51 304)",stroke:"1",fill:"none",opacity:.5},a().createElement("ellipse",{cx:"413",cy:"-136",rx:"164",ry:"94.5",stroke:"url(#linearGradient-1)"},a().createElement("animateTransform",{attributeName:"transform",type:"rotate",from:"0 413 -136",to:"360 413 -136",dur:"2.6s",repeatCount:"indefinite"})),a().createElement("ellipse",{cx:"413",cy:"-136",rx:"164",ry:"94.5",stroke:"url(#linearGradient-2)"},a().createElement("animateTransform",{attributeName:"transform",type:"rotate",from:"210 413 -136",to:"-150 413 -136",dur:"2.6s",repeatCount:"indefinite"}))))}},88952:(e,t,n)=>{n.d(t,{x:()=>i});var r=n(20563),a=n(18769),o=n.n(a);function i(e){let{cx:t,cy:n,rx:i,ry:l}=e;const[s,c]=(0,a.useState)("M 0 0"),u=(0,a.useMemo)((()=>(0,r.uniqueId)("rotating-arc-")),[]);return(0,a.useEffect)((()=>{let e,r;return r=requestAnimationFrame((function a(o){void 0===e&&(e=o);const s=-(o-e)/1e3/2.6*Math.PI*2+1.1*Math.PI,u=s-.6*Math.PI,d=t+i*Math.cos(s),p=n+l*Math.sin(s),m=t+i*Math.cos(u),f=n+l*Math.sin(u);c(`M ${d} ${p} A ${i} ${l} 0 0 0 ${m} ${f}`),r=requestAnimationFrame(a)})),()=>{cancelAnimationFrame(r)}}),[t,n,i,l]),o().createElement(o().Fragment,null,o().createElement("defs",null,o().createElement("linearGradient",{id:u,gradientTransform:"rotate(48)",x1:"0",y1:"0",x2:"830px",y2:"183px",gradientUnits:"userSpaceOnUse"},o().createElement("stop",{offset:"0%",stopColor:"rgba(132, 253, 253, 0)"}),o().createElement("stop",{offset:"25%",stopColor:"rgba(132, 253, 253, 1)"}),o().createElement("stop",{offset:"50%",stopColor:"rgba(132, 253, 253, 1)"}),o().createElement("stop",{offset:"75%",stopColor:"rgba(248, 255, 255, 1)"}))),o().createElement("path",{d:s,strokeWidth:4,stroke:`url(#${u})`,fill:"none"}))}},92481:(e,t,n)=>{n.d(t,{A:()=>l});var r=n(36758),a=n.n(r),o=n(40935),i=n.n(o)()(a());i.push([e.id,".corner{position:absolute;top:13px;left:31px;font-size:18px}.corner-item{display:flex;margin-bottom:15px}.corner-label{font-weight:500;line-height:25px;color:rgba(255,255,255,0.85)}.corner-value{display:block;margin-left:19px}",""]);const l=i.toString()},93051:e=>{e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},95178:(e,t,n)=>{var r=n(72591),a=n.n(r),o=n(1740),i=n.n(o),l=n(88128),s=n.n(l),c=n(30855),u=n.n(c),d=n(93051),p=n.n(d),m=n(73656),f=n.n(m),h=n(97136),b={};b.styleTagTransform=f(),b.setAttributes=u(),b.insert=s().bind(null,"head"),b.domAPI=i(),b.insertStyleElement=p(),a()(h.A,b),h.A&&h.A.locals&&h.A.locals},97136:(e,t,n)=>{n.d(t,{A:()=>p});var r=n(36758),a=n.n(r),o=n(40935),i=n.n(o),l=n(20062),s=n.n(l),c=new URL(n(17577),n.b),u=i()(a()),d=s()(c);u.push([e.id,`@font-face{font-family:ALiBaBaPuHuiTi;src:url(${d})}`,""]);const p=u}}]);
2
+ //# sourceMappingURL=globe-with-orbit-indicator.da885b24.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/globe-with-orbit-indicator.3539cb84.js","mappings":"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","sources":["webpack:///../../node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack:///./src/shared/useCenterScale.ts","webpack:///../../node_modules/css-loader/dist/runtime/getUrl.js","webpack:///../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack:///./src/fonts/HarmonyOSSans.css","webpack:///./src/shared/useContainerScale.ts","webpack:///./src/globe-with-orbit-indicator/styles.shadow.css","webpack:///./src/shared/CornerIndicator.tsx","webpack:///./src/globe-with-orbit-indicator/index.tsx","webpack:///../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///../../node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack:///./src/fonts/HarmonyOSSans.css?a0fb","webpack:///./src/shared/formatValue.ts","webpack:///../../node_modules/style-loader/dist/runtime/insertBySelector.js","webpack:///./src/globe-with-halo-indicator/SatelliteRing.tsx","webpack:///./src/globe-with-halo-indicator/RotatingArc.tsx","webpack:///./src/shared/CornerIndicator.shadow.css","webpack:///../../node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack:///./src/fonts/ALiBaBaPuHuiTi.css?7885","webpack:///./src/fonts/ALiBaBaPuHuiTi.css"],"sourcesContent":["\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","import { useEffect, useRef, useState } from \"react\";\nimport ResizeObserver from \"resize-observer-polyfill\";\n\n/**\n * 让中心数据值不要超过球体范围,但缩放值最低不小于 0.3\n */\nexport function useCenterScale(maxWidth: number) {\n const [centerScale, setCenterScale] = useState<number | null>(null);\n const centerRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const centerValueElement = centerRef.current;\n if (!centerValueElement) {\n return;\n }\n const observer = new ResizeObserver(() => {\n const width = centerValueElement.clientWidth;\n setCenterScale(Math.min(1, Math.max(0.3, maxWidth / width)));\n });\n observer.observe(centerValueElement);\n return () => observer.disconnect();\n }, [maxWidth]);\n\n return [centerScale, centerRef] as const;\n}\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","// 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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./HarmonyOSSans.ttf\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_1___ = new URL(\"./HarmonyOSSansBold.ttf\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@font-face{font-family:HarmonyOSSans;src:url(${___CSS_LOADER_URL_REPLACEMENT_0___});font-weight:normal}@font-face{font-family:HarmonyOSSans;src:url(${___CSS_LOADER_URL_REPLACEMENT_1___});font-weight:bold}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","import { useEffect, useState } from \"react\";\nimport ResizeObserver from \"resize-observer-polyfill\";\n\n/**\n * 根据容器尺寸进行缩放\n */\nexport function useContainerScale({\n width: baseWidth,\n height: baseHeight,\n root,\n maxScale,\n disabled,\n}: {\n width: number;\n height: number;\n root: HTMLElement;\n /** 最大缩放比例,默认为 1 */\n maxScale?: number;\n disabled?: boolean;\n}): number | null {\n const [scale, setScale] = useState<number | null>(null);\n\n useEffect(() => {\n if (disabled) {\n setScale(null);\n return;\n }\n // 当容器宽高低于预设值时,图形会自动缩小\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === root) {\n const { width, height } = entry.contentRect;\n setScale(\n Math.min(maxScale ?? 1, width / baseWidth, height / baseHeight)\n );\n }\n }\n });\n observer.observe(root);\n return () => observer.disconnect();\n }, [baseHeight, baseWidth, disabled, maxScale, root]);\n\n return scale;\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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./assets/base.png\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_1___ = new URL(\"./assets/globe.png\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_2___ = new URL(\"./assets/label-bg.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\nvar ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_2___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host,\n.center,\n.globe-video-container,\n.orbit-label-container{display:flex;align-items:center;justify-content:center}:host{height:100%;color:#fff}:host([hidden]){display:none}*{box-sizing:border-box}.container{width:852px;height:570px;position:relative;transform-origin:center;transform:scale(var(--scale));--scale:1}.base,\n.center,\n.ring,\n.globe,\n.globe-video-container,\n.orbit-labels,\n.satellite-ring{position:absolute;left:50%;transform:translate(-50%,0)}.base{width:852px;height:570px;bottom:0;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});background-repeat:no-repeat;background-position:center;background-size:100%}.globe,\n.center{width:288px;height:288px;top:41px}.globe{background-image:url(${___CSS_LOADER_URL_REPLACEMENT_1___});background-repeat:no-repeat;background-size:100%;background-position:center}.globe-video-container{top:65px;border-radius:9999px;width:240px;height:240px;overflow:hidden;mix-blend-mode:screen}.satellite-ring{top:14px;pointer-events:none}.center{flex-direction:column;text-align:center;text-shadow:0px 2px 4px rgba(0,0,0,0.5)}.center-label:empty,\n.center-value:empty{display:none}.center-label{font-size:24px;font-weight:600;line-height:33px;color:rgba(255,255,255,0.85)}.center-value{font-family:HarmonyOSSans;font-weight:bold;font-size:60px;line-height:85px;color:#d9f3f6}.orbit-labels{top:0;width:852px}.orbit-label-container{position:absolute;width:148px;height:94px;padding:10px;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_2___});background-repeat:no-repeat;background-size:100%;background-position:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);text-align:center;flex-direction:column;transform:translate(-50%,-50%)}.orbit-label{font-size:14px;font-weight:500;line-height:20px;color:rgba(200,226,255,0.9)}.orbit-value{font-size:26px;font-family:ALiBaBaPuHuiTi;line-height:35px;text-shadow:0px 4px 7px #514af7}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import React from \"react\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type { Tag, TagProps } from \"@next-bricks/basic/tag\";\nimport { formatValue } from \"./formatValue\";\n\nconst WrappedTag = wrapBrick<Tag, TagProps>(\"eo-tag\");\n\nexport interface CornerDataItem {\n label: string;\n value: string | number;\n color?: string;\n}\n\nexport interface CornerIndicatorProps {\n cornerDataSource?: CornerDataItem[];\n}\n\nexport function CornerIndicator({ cornerDataSource }: CornerIndicatorProps) {\n return (\n <div className=\"corner\">\n {cornerDataSource?.map((item, index) => (\n <div key={index} className=\"corner-item\">\n <div className=\"corner-label\">{item.label}</div>\n <WrappedTag\n className=\"corner-value\"\n outline\n color={item.color}\n tagStyle={{\n fontSize: 18,\n padding: \"2px 16px\",\n }}\n >\n {formatValue(item.value)}\n </WrappedTag>\n </div>\n ))}\n </div>\n );\n}\n","import React, { useEffect, useState } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { formatValue } from \"../shared/formatValue\";\nimport { CornerIndicator } from \"../shared/CornerIndicator\";\nimport { RotatingArc } from \"../globe-with-halo-indicator/RotatingArc\";\nimport { SatelliteRing } from \"../globe-with-halo-indicator/SatelliteRing\";\nimport { useContainerScale } from \"../shared/useContainerScale\";\nimport { useCenterScale } from \"../shared/useCenterScale\";\nimport globeMp4 from \"./assets/globe.mp4\";\nimport \"../fonts/ALiBaBaPuHuiTi.css\";\nimport \"../fonts/HarmonyOSSans.css\";\nimport styleText from \"./styles.shadow.css\";\nimport cornerStyleText from \"../shared/CornerIndicator.shadow.css\";\n\nconst { defineElement, property } = createDecorators();\n\nexport interface GlobeWithOrbitIndicatorProps {\n dataSource?: DataItem[];\n centerDataSource?: DataItem;\n cornerDataSource?: CornerDataItem[];\n maxScale?: number;\n}\n\nexport interface DataItem {\n label: string;\n value: string | number;\n}\n\nexport interface CornerDataItem extends DataItem {\n color?: string;\n}\n\ninterface DataItemWithPosition extends DataItem {\n x: number;\n y: number;\n opacity: number;\n}\n\n/**\n * 地球加轨道的数据展示构件。\n */\nexport\n@defineElement(\"data-view.globe-with-orbit-indicator\", {\n styleTexts: [styleText, cornerStyleText],\n})\nclass GlobeWithOrbitIndicator\n extends ReactNextElement\n implements GlobeWithOrbitIndicatorProps\n{\n /**\n * 指标数据列表(显示在轨道上)\n *\n * 注意:最多显示8项数据\n */\n @property({ attribute: false })\n accessor dataSource: DataItem[] | undefined;\n\n /** 中心数据(显示在中心地球内) */\n @property({ attribute: false })\n accessor centerDataSource: DataItem | undefined;\n\n /**\n * 左上角指标数据列表\n */\n @property({ attribute: false })\n accessor cornerDataSource: CornerDataItem[] | undefined;\n\n /**\n * 最大缩放比例\n *\n * @default 1\n */\n @property({ type: Number })\n accessor maxScale: number | undefined;\n\n render() {\n return (\n <GlobeWithOrbitIndicatorComponent\n root={this}\n dataSource={this.dataSource}\n centerDataSource={this.centerDataSource}\n cornerDataSource={this.cornerDataSource}\n maxScale={this.maxScale}\n />\n );\n }\n}\n\nexport interface GlobeWithOrbitIndicatorComponentProps\n extends GlobeWithOrbitIndicatorProps {\n root: GlobeWithOrbitIndicator;\n}\n\nexport function GlobeWithOrbitIndicatorComponent({\n root,\n dataSource,\n centerDataSource,\n cornerDataSource,\n maxScale,\n}: GlobeWithOrbitIndicatorComponentProps) {\n const scale = useContainerScale({ width: 852, height: 570, root, maxScale });\n const [centerValueScale, centerValueRef] = useCenterScale(230);\n\n const [labels, setLabels] = useState<DataItemWithPosition[] | null>(null);\n\n // 计算轨道上标签的位置和动画\n // 1. 按逆时针均匀分布在轨道上\n // 2. 没隔一段时间,轨道上的标签会逐个移动到最前方,并停留一秒\n // 3. 当标签数量达到最大 8 个时,单个卡片的移动时间为 3 秒,停留 1.5 秒\n // 4. 当标签数量为 1 个时,单个卡片的移动时间为 6 秒,停留 3 秒\n // 5. 其他数量时,计算合适的移动时间和停留时间\n // 6. 移动到后半圈时,不透明度逐渐减少,经过 1/4 圈后达到 0.6 并保持,反之亦然\n useEffect(() => {\n const clampedData = dataSource?.slice(0, 8) ?? [];\n if (clampedData.length === 0) {\n setLabels([]);\n return;\n }\n\n let start: number;\n let timer: number;\n const arc = (Math.PI * 2) / clampedData.length;\n\n const rx = 367;\n const ry = 170;\n const cx = 426;\n const cy = 330;\n const stay = 3000 - ((clampedData.length - 1) / 7) * 1500;\n // x = 1, y = 6\n // x = 8, y = 3\n // y - 3 = (x - 8)^2 * 3 / 49\n const durationPerLabel =\n (((clampedData.length - 8) ** 2 * 3) / 49 + 3) * 1000;\n const totalPerLabel = durationPerLabel + stay;\n\n function step(timestamp: number) {\n if (start === undefined) {\n start = timestamp;\n }\n const elapsed = timestamp - start;\n\n const count = Math.floor(elapsed / totalPerLabel) % clampedData.length;\n const offset = elapsed % totalPerLabel;\n const progress = offset < stay ? 0 : (offset - stay) / durationPerLabel;\n const startAngle = (Math.PI * 5) / 2 + arc * count + arc * progress;\n\n setLabels(\n clampedData.map<DataItemWithPosition>((item, index) => {\n const angle = (startAngle - arc * index) % (Math.PI * 2);\n const x = cx + rx * Math.cos(angle);\n const y = cy + ry * Math.sin(angle);\n const opacity =\n angle > Math.PI\n ? angle < (Math.PI * 5) / 4\n ? 1 - ((angle - Math.PI) / (Math.PI / 4)) * 0.4\n : angle > (Math.PI * 7) / 4\n ? 1 - ((Math.PI * 2 - angle) / (Math.PI / 4)) * 0.4\n : 0.6\n : 1;\n return { ...item, x, y, opacity };\n })\n );\n\n timer = requestAnimationFrame(step);\n }\n\n timer = requestAnimationFrame(step);\n\n return () => {\n cancelAnimationFrame(timer);\n };\n }, [dataSource]);\n\n return (\n <>\n <div\n className=\"container\"\n style={\n {\n visibility: scale === null ? \"hidden\" : \"visible\",\n \"--scale\": scale,\n } as React.CSSProperties & {\n \"--scale\": number;\n }\n }\n >\n <div className=\"base\"></div>\n <svg className=\"ring\" width={852} height={570} viewBox=\"0 0 852 570\">\n <RotatingArc cx={426} cy={300} rx={288} ry={132} />\n </svg>\n\n <div className=\"orbit-labels\">\n {labels?.map((item, index) => (\n <div\n key={index}\n className=\"orbit-label-container\"\n style={{\n left: item.x,\n top: item.y,\n opacity: item.opacity,\n }}\n >\n <div className=\"orbit-label\">{item.label}</div>\n <div className=\"orbit-value\">{formatValue(item.value)}</div>\n </div>\n ))}\n </div>\n\n <div className=\"globe\"></div>\n <div className=\"globe-video-container\">\n <video width={389} height={300} autoPlay muted loop playsInline>\n <source src={globeMp4} type=\"video/mp4\" />\n </video>\n </div>\n\n <SatelliteRing />\n\n <div className=\"center\">\n <div className=\"center-label\">{centerDataSource?.label}</div>\n <div\n className=\"center-value\"\n ref={centerValueRef}\n style={{\n visibility: centerValueScale === null ? \"hidden\" : \"visible\",\n transform: `scale(${centerValueScale ?? 1})`,\n }}\n >\n {formatValue(centerDataSource?.value)}\n </div>\n </div>\n </div>\n\n <CornerIndicator cornerDataSource={cornerDataSource} />\n </>\n );\n}\n","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./HarmonyOSSans.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./HarmonyOSSans.css\";\n export default content && content.locals ? content.locals : undefined;\n","const numberFormatter = new Intl.NumberFormat(\"zh-CN\", {\n useGrouping: true,\n});\n\nexport function formatValue(value: string | number): string {\n return isMeaningfulNumber(value) ? numberFormatter.format(+value) : value;\n}\n\n/**\n * 判断一个值是否是有意义的数字,包括数字和可以转换为数字的字符串。\n *\n * 但不包括 NaN、Infinity、-Infinity 等。\n *\n * Ref https://github.com/jonschlinkert/is-number/blob/master/index.js\n */\nexport function isMeaningfulNumber(value: unknown): value is number | string {\n if (typeof value === \"number\") {\n return value - value === 0;\n }\n if (typeof value === \"string\" && value.trim() !== \"\") {\n return /* istanbul ignore next */ (Number.isFinite ?? isFinite)(+value);\n }\n return false;\n}\n","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","import React from \"react\";\n\nexport function SatelliteRing() {\n return (\n <svg\n className=\"satellite-ring\"\n width=\"928px\"\n height=\"534px\"\n viewBox=\"0 0 928 534\"\n >\n <defs>\n <linearGradient\n x1=\"50%\"\n y1=\"14.8555832%\"\n x2=\"50%\"\n y2=\"100%\"\n id=\"linearGradient-1\"\n >\n <stop stopColor=\"#00E8FF\" stopOpacity=\"0\" offset=\"0%\"></stop>\n <stop stopColor=\"#00CCFF\" offset=\"100%\"></stop>\n </linearGradient>\n <linearGradient\n x1=\"50%\"\n y1=\"14.8555832%\"\n x2=\"50%\"\n y2=\"100%\"\n id=\"linearGradient-2\"\n >\n <stop stopColor=\"#00CCFF\" offset=\"0%\"></stop>\n <stop stopColor=\"#00E8FF\" stopOpacity=\"0\" offset=\"100%\"></stop>\n </linearGradient>\n </defs>\n <g transform=\"translate(51 304)\" stroke=\"1\" fill=\"none\" opacity={0.5}>\n <ellipse\n cx=\"413\"\n cy=\"-136\"\n rx=\"164\"\n ry=\"94.5\"\n stroke=\"url(#linearGradient-1)\"\n >\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"0 413 -136\"\n to=\"360 413 -136\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n </ellipse>\n <ellipse\n cx=\"413\"\n cy=\"-136\"\n rx=\"164\"\n ry=\"94.5\"\n stroke=\"url(#linearGradient-2)\"\n >\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"210 413 -136\"\n to=\"-150 413 -136\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n </ellipse>\n </g>\n </svg>\n );\n}\n","import { uniqueId } from \"lodash\";\nimport React, { useEffect, useMemo, useState } from \"react\";\n\nexport interface RotatingArcProps {\n cx: number;\n cy: number;\n rx: number;\n ry: number;\n}\n\nexport function RotatingArc({ cx, cy, rx, ry }: RotatingArcProps) {\n const durationPerCircle = 2.6;\n const [path, setPath] = useState(\"M 0 0\");\n const defId = useMemo(() => uniqueId(\"rotating-arc-\"), []);\n\n useEffect(() => {\n let start: number;\n let timer: number;\n\n function step(timestamp: number) {\n if (start === undefined) {\n start = timestamp;\n }\n const elapsed = timestamp - start;\n\n const startAngle =\n -(elapsed / 1000 / durationPerCircle) * Math.PI * 2 + Math.PI * 1.1;\n // A bit more than a quarter circle\n const endAngle = startAngle - Math.PI * 0.6;\n const x1 = cx + rx * Math.cos(startAngle);\n const y1 = cy + ry * Math.sin(startAngle);\n const x2 = cx + rx * Math.cos(endAngle);\n const y2 = cy + ry * Math.sin(endAngle);\n setPath(`M ${x1} ${y1} A ${rx} ${ry} 0 0 0 ${x2} ${y2}`);\n timer = requestAnimationFrame(step);\n }\n\n timer = requestAnimationFrame(step);\n\n return () => {\n cancelAnimationFrame(timer);\n };\n }, [cx, cy, rx, ry]);\n\n return (\n <>\n <defs>\n <linearGradient\n id={defId}\n gradientTransform=\"rotate(48)\"\n x1=\"0\"\n y1=\"0\"\n x2=\"830px\"\n y2=\"183px\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0%\" stopColor=\"rgba(132, 253, 253, 0)\" />\n <stop offset=\"25%\" stopColor=\"rgba(132, 253, 253, 1)\" />\n <stop offset=\"50%\" stopColor=\"rgba(132, 253, 253, 1)\" />\n <stop offset=\"75%\" stopColor=\"rgba(248, 255, 255, 1)\" />\n </linearGradient>\n </defs>\n <path\n d={path}\n // d=\"M 0.6 89.5 A 412.4 88.9 0 0 0 825.4 88.9\"\n strokeWidth={4}\n stroke={`url(#${defId})`}\n fill=\"none\"\n />\n </>\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, `.corner{position:absolute;top:13px;left:31px;font-size:18px}.corner-item{display:flex;margin-bottom:15px}.corner-label{font-weight:500;line-height:25px;color:rgba(255,255,255,0.85)}.corner-value{display:block;margin-left:19px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./ALiBaBaPuHuiTi.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./ALiBaBaPuHuiTi.css\";\n export default content && content.locals ? content.locals : undefined;\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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./ALiBaBaPuHuiTi.ttf\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@font-face{font-family:ALiBaBaPuHuiTi;src:url(${___CSS_LOADER_URL_REPLACEMENT_0___})}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["module","exports","options","document","update","remove","styleElement","insertStyleElement","obj","css","supports","concat","media","needLayer","layer","length","sourceMap","btoa","unescape","encodeURIComponent","JSON","stringify","styleTagTransform","apply","parentNode","removeChild","removeStyleElement","useCenterScale","maxWidth","centerScale","setCenterScale","useState","centerRef","useRef","useEffect","centerValueElement","current","observer","ResizeObserver","width","clientWidth","Math","min","max","observe","disconnect","url","String","__esModule","default","test","slice","hash","needQuotes","replace","nonce","setAttribute","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_URL_IMPORT_1___","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","___CSS_LOADER_URL_REPLACEMENT_1___","push","id","useContainerScale","_ref","baseWidth","height","baseHeight","root","maxScale","disabled","scale","setScale","entries","entry","target","contentRect","___CSS_LOADER_URL_IMPORT_2___","___CSS_LOADER_URL_REPLACEMENT_2___","toString","WrappedTag","wrapBrick","CornerIndicator","cornerDataSource","React","className","map","item","index","key","label","outline","color","tagStyle","fontSize","padding","formatValue","value","defineElement","property","createDecorators","_GlobeWithOrbitIndica","_A","WeakMap","_B","_C","_D","GlobeWithOrbitIndicator","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_dataSource","_init_extra_dataSource","_init_centerDataSource","_init_extra_centerDataSource","_init_cornerDataSource","_init_extra_cornerDataSource","_init_maxScale","_init_extra_maxScale","dataSource","_classPrivateFieldGet","v","_classPrivateFieldSet","centerDataSource","render","GlobeWithOrbitIndicatorComponent","this","centerValueScale","centerValueRef","labels","setLabels","_dataSource$slice","clampedData","start","timer","arc","PI","stay","durationPerLabel","totalPerLabel","requestAnimationFrame","step","timestamp","undefined","elapsed","count","floor","offset","progress","startAngle","angle","x","cos","y","sin","opacity","cancelAnimationFrame","style","visibility","viewBox","RotatingArc","cx","cy","rx","ry","left","top","autoPlay","muted","loop","playsInline","src","globeMp4","type","SatelliteRing","ref","transform","_GlobeWithOrbitIndicator","e","c","_initClass","_applyDecs","styleTexts","styleText","cornerStyleText","attribute","Number","stylesInDOM","getIndexByIdentifier","identifier","result","i","modulesToDom","list","idCountMap","identifiers","base","indexByIdentifier","references","updater","addElementStyle","byIndex","splice","api","domAPI","newObj","lastIdentifiers","newList","newLastIdentifiers","_i","_index","styleSheet","cssText","firstChild","appendChild","createTextNode","setAttributes","insert","locals","numberFormatter","Intl","NumberFormat","useGrouping","trim","_Number$isFinite","isFinite","isMeaningfulNumber","format","memo","styleTarget","querySelector","window","HTMLIFrameElement","contentDocument","head","getTarget","Error","x1","y1","x2","y2","stopColor","stopOpacity","stroke","fill","attributeName","from","to","dur","repeatCount","path","setPath","defId","useMemo","uniqueId","endAngle","gradientTransform","gradientUnits","d","strokeWidth","element","createElement","attributes"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/globe-with-orbit-indicator.da885b24.js","mappings":"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","sources":["webpack:///../../node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack:///./src/shared/useCenterScale.ts","webpack:///../../node_modules/css-loader/dist/runtime/getUrl.js","webpack:///../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack:///./src/fonts/HarmonyOSSans.css","webpack:///./src/shared/useContainerScale.ts","webpack:///./src/globe-with-orbit-indicator/styles.shadow.css","webpack:///./src/shared/CornerIndicator.tsx","webpack:///./src/globe-with-orbit-indicator/index.tsx","webpack:///../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///../../node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack:///./src/fonts/HarmonyOSSans.css?a0fb","webpack:///./src/shared/formatValue.ts","webpack:///../../node_modules/style-loader/dist/runtime/insertBySelector.js","webpack:///./src/globe-with-halo-indicator/SatelliteRing.tsx","webpack:///./src/globe-with-halo-indicator/RotatingArc.tsx","webpack:///./src/shared/CornerIndicator.shadow.css","webpack:///../../node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack:///./src/fonts/ALiBaBaPuHuiTi.css?7885","webpack:///./src/fonts/ALiBaBaPuHuiTi.css"],"sourcesContent":["\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","import { useEffect, useRef, useState } from \"react\";\nimport ResizeObserver from \"resize-observer-polyfill\";\n\n/**\n * 让中心数据值不要超过球体范围,但缩放值最低不小于 0.3\n */\nexport function useCenterScale(maxWidth: number) {\n const [centerScale, setCenterScale] = useState<number | null>(null);\n const centerRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const centerValueElement = centerRef.current;\n if (!centerValueElement) {\n return;\n }\n const observer = new ResizeObserver(() => {\n const width = centerValueElement.clientWidth;\n setCenterScale(Math.min(1, Math.max(0.3, maxWidth / width)));\n });\n observer.observe(centerValueElement);\n return () => observer.disconnect();\n }, [maxWidth]);\n\n return [centerScale, centerRef] as const;\n}\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","// 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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./HarmonyOSSans.ttf\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_1___ = new URL(\"./HarmonyOSSansBold.ttf\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@font-face{font-family:HarmonyOSSans;src:url(${___CSS_LOADER_URL_REPLACEMENT_0___});font-weight:normal}@font-face{font-family:HarmonyOSSans;src:url(${___CSS_LOADER_URL_REPLACEMENT_1___});font-weight:bold}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","import { useEffect, useState } from \"react\";\nimport ResizeObserver from \"resize-observer-polyfill\";\n\n/**\n * 根据容器尺寸进行缩放\n */\nexport function useContainerScale({\n width: baseWidth,\n height: baseHeight,\n root,\n maxScale,\n disabled,\n}: {\n width: number;\n height: number;\n root: HTMLElement;\n /** 最大缩放比例,默认为 1 */\n maxScale?: number;\n disabled?: boolean;\n}): number | null {\n const [scale, setScale] = useState<number | null>(null);\n\n useEffect(() => {\n if (disabled) {\n setScale(null);\n return;\n }\n // 当容器宽高低于预设值时,图形会自动缩小\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === root) {\n const { width, height } = entry.contentRect;\n setScale(\n Math.min(maxScale ?? 1, width / baseWidth, height / baseHeight)\n );\n }\n }\n });\n observer.observe(root);\n return () => observer.disconnect();\n }, [baseHeight, baseWidth, disabled, maxScale, root]);\n\n return scale;\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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./assets/base.png\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_1___ = new URL(\"./assets/globe.png\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_2___ = new URL(\"./assets/label-bg.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\nvar ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_2___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host,\n.center,\n.globe-video-container,\n.orbit-label-container{display:flex;align-items:center;justify-content:center}:host{height:100%;color:#fff}:host([hidden]){display:none}*{box-sizing:border-box}.container{width:852px;height:570px;position:relative;transform-origin:center;transform:scale(var(--scale));--scale:1}.base,\n.center,\n.ring,\n.globe,\n.globe-video-container,\n.orbit-labels,\n.satellite-ring{position:absolute;left:50%;transform:translate(-50%,0)}.base{width:852px;height:570px;bottom:0;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});background-repeat:no-repeat;background-position:center;background-size:100%}.globe,\n.center{width:288px;height:288px;top:41px}.globe{background-image:url(${___CSS_LOADER_URL_REPLACEMENT_1___});background-repeat:no-repeat;background-size:100%;background-position:center}.globe-video-container{top:65px;border-radius:9999px;width:240px;height:240px;overflow:hidden;mix-blend-mode:screen}.satellite-ring{top:14px;pointer-events:none}.center{flex-direction:column;text-align:center;text-shadow:0px 2px 4px rgba(0,0,0,0.5)}.center-label:empty,\n.center-value:empty{display:none}.center-label{font-size:24px;font-weight:600;line-height:33px;color:rgba(255,255,255,0.85)}.center-value{font-family:HarmonyOSSans;font-weight:bold;font-size:60px;line-height:85px;color:#d9f3f6}.orbit-labels{top:0;width:852px}.orbit-label-container{position:absolute;width:148px;height:94px;padding:10px;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_2___});background-repeat:no-repeat;background-size:100%;background-position:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);text-align:center;flex-direction:column;transform:translate(-50%,-50%)}.orbit-label{font-size:14px;font-weight:500;line-height:20px;color:rgba(200,226,255,0.9)}.orbit-value{font-size:26px;font-family:ALiBaBaPuHuiTi;line-height:35px;text-shadow:0px 4px 7px #514af7}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import React from \"react\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type { Tag, TagProps } from \"@next-bricks/basic/tag\";\nimport { formatValue } from \"./formatValue\";\n\nconst WrappedTag = wrapBrick<Tag, TagProps>(\"eo-tag\");\n\nexport interface CornerDataItem {\n label: string;\n value: string | number;\n color?: string;\n}\n\nexport interface CornerIndicatorProps {\n cornerDataSource?: CornerDataItem[];\n}\n\nexport function CornerIndicator({ cornerDataSource }: CornerIndicatorProps) {\n return (\n <div className=\"corner\">\n {cornerDataSource?.map((item, index) => (\n <div key={index} className=\"corner-item\">\n <div className=\"corner-label\">{item.label}</div>\n <WrappedTag\n className=\"corner-value\"\n outline\n color={item.color}\n tagStyle={{\n fontSize: 18,\n padding: \"2px 16px\",\n }}\n >\n {formatValue(item.value)}\n </WrappedTag>\n </div>\n ))}\n </div>\n );\n}\n","import React, { useEffect, useState } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { formatValue } from \"../shared/formatValue\";\nimport { CornerIndicator } from \"../shared/CornerIndicator\";\nimport { RotatingArc } from \"../globe-with-halo-indicator/RotatingArc\";\nimport { SatelliteRing } from \"../globe-with-halo-indicator/SatelliteRing\";\nimport { useContainerScale } from \"../shared/useContainerScale\";\nimport { useCenterScale } from \"../shared/useCenterScale\";\nimport globeMp4 from \"./assets/globe.mp4\";\nimport \"../fonts/ALiBaBaPuHuiTi.css\";\nimport \"../fonts/HarmonyOSSans.css\";\nimport styleText from \"./styles.shadow.css\";\nimport cornerStyleText from \"../shared/CornerIndicator.shadow.css\";\n\nconst { defineElement, property } = createDecorators();\n\nexport interface GlobeWithOrbitIndicatorProps {\n dataSource?: DataItem[];\n centerDataSource?: DataItem;\n cornerDataSource?: CornerDataItem[];\n maxScale?: number;\n}\n\nexport interface DataItem {\n label: string;\n value: string | number;\n}\n\nexport interface CornerDataItem extends DataItem {\n color?: string;\n}\n\ninterface DataItemWithPosition extends DataItem {\n x: number;\n y: number;\n opacity: number;\n}\n\n/**\n * 地球加轨道的数据展示构件。\n */\nexport\n@defineElement(\"data-view.globe-with-orbit-indicator\", {\n styleTexts: [styleText, cornerStyleText],\n})\nclass GlobeWithOrbitIndicator\n extends ReactNextElement\n implements GlobeWithOrbitIndicatorProps\n{\n /**\n * 指标数据列表(显示在轨道上)\n *\n * 注意:最多显示8项数据\n */\n @property({ attribute: false })\n accessor dataSource: DataItem[] | undefined;\n\n /** 中心数据(显示在中心地球内) */\n @property({ attribute: false })\n accessor centerDataSource: DataItem | undefined;\n\n /**\n * 左上角指标数据列表\n */\n @property({ attribute: false })\n accessor cornerDataSource: CornerDataItem[] | undefined;\n\n /**\n * 最大缩放比例\n *\n * @default 1\n */\n @property({ type: Number })\n accessor maxScale: number | undefined;\n\n render() {\n return (\n <GlobeWithOrbitIndicatorComponent\n root={this}\n dataSource={this.dataSource}\n centerDataSource={this.centerDataSource}\n cornerDataSource={this.cornerDataSource}\n maxScale={this.maxScale}\n />\n );\n }\n}\n\nexport interface GlobeWithOrbitIndicatorComponentProps\n extends GlobeWithOrbitIndicatorProps {\n root: GlobeWithOrbitIndicator;\n}\n\nexport function GlobeWithOrbitIndicatorComponent({\n root,\n dataSource,\n centerDataSource,\n cornerDataSource,\n maxScale,\n}: GlobeWithOrbitIndicatorComponentProps) {\n const scale = useContainerScale({ width: 852, height: 570, root, maxScale });\n const [centerValueScale, centerValueRef] = useCenterScale(230);\n\n const [labels, setLabels] = useState<DataItemWithPosition[] | null>(null);\n\n // 计算轨道上标签的位置和动画\n // 1. 按逆时针均匀分布在轨道上\n // 2. 没隔一段时间,轨道上的标签会逐个移动到最前方,并停留一秒\n // 3. 当标签数量达到最大 8 个时,单个卡片的移动时间为 3 秒,停留 1.5 秒\n // 4. 当标签数量为 1 个时,单个卡片的移动时间为 6 秒,停留 3 秒\n // 5. 其他数量时,计算合适的移动时间和停留时间\n // 6. 移动到后半圈时,不透明度逐渐减少,经过 1/4 圈后达到 0.6 并保持,反之亦然\n useEffect(() => {\n const clampedData = dataSource?.slice(0, 8) ?? [];\n if (clampedData.length === 0) {\n setLabels([]);\n return;\n }\n\n let start: number;\n let timer: number;\n const arc = (Math.PI * 2) / clampedData.length;\n\n const rx = 367;\n const ry = 170;\n const cx = 426;\n const cy = 330;\n const stay = 3000 - ((clampedData.length - 1) / 7) * 1500;\n // x = 1, y = 6\n // x = 8, y = 3\n // y - 3 = (x - 8)^2 * 3 / 49\n const durationPerLabel =\n (((clampedData.length - 8) ** 2 * 3) / 49 + 3) * 1000;\n const totalPerLabel = durationPerLabel + stay;\n\n function step(timestamp: number) {\n if (start === undefined) {\n start = timestamp;\n }\n const elapsed = timestamp - start;\n\n const count = Math.floor(elapsed / totalPerLabel) % clampedData.length;\n const offset = elapsed % totalPerLabel;\n const progress = offset < stay ? 0 : (offset - stay) / durationPerLabel;\n const startAngle = (Math.PI * 5) / 2 + arc * count + arc * progress;\n\n setLabels(\n clampedData.map<DataItemWithPosition>((item, index) => {\n const angle = (startAngle - arc * index) % (Math.PI * 2);\n const x = cx + rx * Math.cos(angle);\n const y = cy + ry * Math.sin(angle);\n const opacity =\n angle > Math.PI\n ? angle < (Math.PI * 5) / 4\n ? 1 - ((angle - Math.PI) / (Math.PI / 4)) * 0.4\n : angle > (Math.PI * 7) / 4\n ? 1 - ((Math.PI * 2 - angle) / (Math.PI / 4)) * 0.4\n : 0.6\n : 1;\n return { ...item, x, y, opacity };\n })\n );\n\n timer = requestAnimationFrame(step);\n }\n\n timer = requestAnimationFrame(step);\n\n return () => {\n cancelAnimationFrame(timer);\n };\n }, [dataSource]);\n\n return (\n <>\n <div\n className=\"container\"\n style={\n {\n visibility: scale === null ? \"hidden\" : \"visible\",\n \"--scale\": scale,\n } as React.CSSProperties & {\n \"--scale\": number;\n }\n }\n >\n <div className=\"base\"></div>\n <svg className=\"ring\" width={852} height={570} viewBox=\"0 0 852 570\">\n <RotatingArc cx={426} cy={300} rx={288} ry={132} />\n </svg>\n\n <div className=\"orbit-labels\">\n {labels?.map((item, index) => (\n <div\n key={index}\n className=\"orbit-label-container\"\n style={{\n left: item.x,\n top: item.y,\n opacity: item.opacity,\n }}\n >\n <div className=\"orbit-label\">{item.label}</div>\n <div className=\"orbit-value\">{formatValue(item.value)}</div>\n </div>\n ))}\n </div>\n\n <div className=\"globe\"></div>\n <div className=\"globe-video-container\">\n <video width={389} height={300} autoPlay muted loop playsInline>\n <source src={globeMp4} type=\"video/mp4\" />\n </video>\n </div>\n\n <SatelliteRing />\n\n <div className=\"center\">\n <div className=\"center-label\">{centerDataSource?.label}</div>\n <div\n className=\"center-value\"\n ref={centerValueRef}\n style={{\n visibility: centerValueScale === null ? \"hidden\" : \"visible\",\n transform: `scale(${centerValueScale ?? 1})`,\n }}\n >\n {formatValue(centerDataSource?.value)}\n </div>\n </div>\n </div>\n\n <CornerIndicator cornerDataSource={cornerDataSource} />\n </>\n );\n}\n","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./HarmonyOSSans.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./HarmonyOSSans.css\";\n export default content && content.locals ? content.locals : undefined;\n","const numberFormatter = new Intl.NumberFormat(\"zh-CN\", {\n useGrouping: true,\n});\n\nexport function formatValue(value: string | number): string {\n return isMeaningfulNumber(value) ? numberFormatter.format(+value) : value;\n}\n\n/**\n * 判断一个值是否是有意义的数字,包括数字和可以转换为数字的字符串。\n *\n * 但不包括 NaN、Infinity、-Infinity 等。\n *\n * Ref https://github.com/jonschlinkert/is-number/blob/master/index.js\n */\nexport function isMeaningfulNumber(value: unknown): value is number | string {\n if (typeof value === \"number\") {\n return value - value === 0;\n }\n if (typeof value === \"string\" && value.trim() !== \"\") {\n return /* istanbul ignore next */ (Number.isFinite ?? isFinite)(+value);\n }\n return false;\n}\n","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","import React from \"react\";\n\nexport function SatelliteRing() {\n return (\n <svg\n className=\"satellite-ring\"\n width=\"928px\"\n height=\"534px\"\n viewBox=\"0 0 928 534\"\n >\n <defs>\n <linearGradient\n x1=\"50%\"\n y1=\"14.8555832%\"\n x2=\"50%\"\n y2=\"100%\"\n id=\"linearGradient-1\"\n >\n <stop stopColor=\"#00E8FF\" stopOpacity=\"0\" offset=\"0%\"></stop>\n <stop stopColor=\"#00CCFF\" offset=\"100%\"></stop>\n </linearGradient>\n <linearGradient\n x1=\"50%\"\n y1=\"14.8555832%\"\n x2=\"50%\"\n y2=\"100%\"\n id=\"linearGradient-2\"\n >\n <stop stopColor=\"#00CCFF\" offset=\"0%\"></stop>\n <stop stopColor=\"#00E8FF\" stopOpacity=\"0\" offset=\"100%\"></stop>\n </linearGradient>\n </defs>\n <g transform=\"translate(51 304)\" stroke=\"1\" fill=\"none\" opacity={0.5}>\n <ellipse\n cx=\"413\"\n cy=\"-136\"\n rx=\"164\"\n ry=\"94.5\"\n stroke=\"url(#linearGradient-1)\"\n >\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"0 413 -136\"\n to=\"360 413 -136\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n </ellipse>\n <ellipse\n cx=\"413\"\n cy=\"-136\"\n rx=\"164\"\n ry=\"94.5\"\n stroke=\"url(#linearGradient-2)\"\n >\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"210 413 -136\"\n to=\"-150 413 -136\"\n dur=\"2.6s\"\n repeatCount=\"indefinite\"\n />\n </ellipse>\n </g>\n </svg>\n );\n}\n","import { uniqueId } from \"lodash\";\nimport React, { useEffect, useMemo, useState } from \"react\";\n\nexport interface RotatingArcProps {\n cx: number;\n cy: number;\n rx: number;\n ry: number;\n}\n\nexport function RotatingArc({ cx, cy, rx, ry }: RotatingArcProps) {\n const durationPerCircle = 2.6;\n const [path, setPath] = useState(\"M 0 0\");\n const defId = useMemo(() => uniqueId(\"rotating-arc-\"), []);\n\n useEffect(() => {\n let start: number;\n let timer: number;\n\n function step(timestamp: number) {\n if (start === undefined) {\n start = timestamp;\n }\n const elapsed = timestamp - start;\n\n const startAngle =\n -(elapsed / 1000 / durationPerCircle) * Math.PI * 2 + Math.PI * 1.1;\n // A bit more than a quarter circle\n const endAngle = startAngle - Math.PI * 0.6;\n const x1 = cx + rx * Math.cos(startAngle);\n const y1 = cy + ry * Math.sin(startAngle);\n const x2 = cx + rx * Math.cos(endAngle);\n const y2 = cy + ry * Math.sin(endAngle);\n setPath(`M ${x1} ${y1} A ${rx} ${ry} 0 0 0 ${x2} ${y2}`);\n timer = requestAnimationFrame(step);\n }\n\n timer = requestAnimationFrame(step);\n\n return () => {\n cancelAnimationFrame(timer);\n };\n }, [cx, cy, rx, ry]);\n\n return (\n <>\n <defs>\n <linearGradient\n id={defId}\n gradientTransform=\"rotate(48)\"\n x1=\"0\"\n y1=\"0\"\n x2=\"830px\"\n y2=\"183px\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0%\" stopColor=\"rgba(132, 253, 253, 0)\" />\n <stop offset=\"25%\" stopColor=\"rgba(132, 253, 253, 1)\" />\n <stop offset=\"50%\" stopColor=\"rgba(132, 253, 253, 1)\" />\n <stop offset=\"75%\" stopColor=\"rgba(248, 255, 255, 1)\" />\n </linearGradient>\n </defs>\n <path\n d={path}\n // d=\"M 0.6 89.5 A 412.4 88.9 0 0 0 825.4 88.9\"\n strokeWidth={4}\n stroke={`url(#${defId})`}\n fill=\"none\"\n />\n </>\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, `.corner{position:absolute;top:13px;left:31px;font-size:18px}.corner-item{display:flex;margin-bottom:15px}.corner-label{font-weight:500;line-height:25px;color:rgba(255,255,255,0.85)}.corner-value{display:block;margin-left:19px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./ALiBaBaPuHuiTi.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./ALiBaBaPuHuiTi.css\";\n export default content && content.locals ? content.locals : undefined;\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\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./ALiBaBaPuHuiTi.ttf\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@font-face{font-family:ALiBaBaPuHuiTi;src:url(${___CSS_LOADER_URL_REPLACEMENT_0___})}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["module","exports","options","document","update","remove","styleElement","insertStyleElement","obj","css","supports","concat","media","needLayer","layer","length","sourceMap","btoa","unescape","encodeURIComponent","JSON","stringify","styleTagTransform","apply","parentNode","removeChild","removeStyleElement","useCenterScale","maxWidth","centerScale","setCenterScale","useState","centerRef","useRef","useEffect","centerValueElement","current","observer","ResizeObserver","width","clientWidth","Math","min","max","observe","disconnect","url","String","__esModule","default","test","slice","hash","needQuotes","replace","nonce","setAttribute","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_URL_IMPORT_1___","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","___CSS_LOADER_URL_REPLACEMENT_1___","push","id","useContainerScale","_ref","baseWidth","height","baseHeight","root","maxScale","disabled","scale","setScale","entries","entry","target","contentRect","___CSS_LOADER_URL_IMPORT_2___","___CSS_LOADER_URL_REPLACEMENT_2___","toString","WrappedTag","wrapBrick","CornerIndicator","cornerDataSource","React","className","map","item","index","key","label","outline","color","tagStyle","fontSize","padding","formatValue","value","defineElement","property","createDecorators","_GlobeWithOrbitIndica","_A","WeakMap","_B","_C","_D","GlobeWithOrbitIndicator","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_dataSource","_init_extra_dataSource","_init_centerDataSource","_init_extra_centerDataSource","_init_cornerDataSource","_init_extra_cornerDataSource","_init_maxScale","_init_extra_maxScale","dataSource","_classPrivateFieldGet","v","_classPrivateFieldSet","centerDataSource","render","GlobeWithOrbitIndicatorComponent","this","centerValueScale","centerValueRef","labels","setLabels","_dataSource$slice","clampedData","start","timer","arc","PI","stay","durationPerLabel","totalPerLabel","requestAnimationFrame","step","timestamp","undefined","elapsed","count","floor","offset","progress","startAngle","angle","x","cos","y","sin","opacity","cancelAnimationFrame","style","visibility","viewBox","RotatingArc","cx","cy","rx","ry","left","top","autoPlay","muted","loop","playsInline","src","globeMp4","type","SatelliteRing","ref","transform","_GlobeWithOrbitIndicator","e","c","_initClass","_applyDecs","styleTexts","styleText","cornerStyleText","attribute","Number","stylesInDOM","getIndexByIdentifier","identifier","result","i","modulesToDom","list","idCountMap","identifiers","base","indexByIdentifier","references","updater","addElementStyle","byIndex","splice","api","domAPI","newObj","lastIdentifiers","newList","newLastIdentifiers","_i","_index","styleSheet","cssText","firstChild","appendChild","createTextNode","setAttributes","insert","locals","numberFormatter","Intl","NumberFormat","useGrouping","trim","_Number$isFinite","isFinite","isMeaningfulNumber","format","memo","styleTarget","querySelector","window","HTMLIFrameElement","contentDocument","head","getTarget","Error","x1","y1","x2","y2","stopColor","stopOpacity","stroke","fill","attributeName","from","to","dur","repeatCount","path","setPath","defId","useMemo","uniqueId","endAngle","gradientTransform","gradientUnits","d","strokeWidth","element","createElement","attributes"],"sourceRoot":""}