@next-bricks/data-view 0.24.4 → 0.24.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.
- package/dist/bricks.json +4 -4
- package/dist/chunks/159.caf61ac8.js +2 -0
- package/dist/chunks/159.caf61ac8.js.map +1 -0
- package/dist/chunks/{1646.05542f8f.js → 1646.5675f46d.js} +2 -2
- package/dist/chunks/{7746.ebb00411.js.map → 1646.5675f46d.js.map} +1 -1
- package/dist/chunks/1874.fd357791.js.map +1 -1
- package/dist/chunks/2502.fc376a5d.js +2 -0
- package/dist/chunks/2502.fc376a5d.js.map +1 -0
- package/dist/chunks/3458.b2aa4cae.js +2 -0
- package/dist/chunks/{3458.ace63144.js.map → 3458.b2aa4cae.js.map} +1 -1
- package/dist/chunks/{4031.af83eb4b.js → 4031.e97b00f8.js} +2 -2
- package/dist/chunks/4031.e97b00f8.js.map +1 -0
- package/dist/chunks/{4049.f5e34349.js → 4049.c372388d.js} +2 -2
- package/dist/chunks/{4049.f5e34349.js.map → 4049.c372388d.js.map} +1 -1
- package/dist/chunks/{4275.b3dd1343.js → 4275.f71a1a4b.js} +2 -2
- package/dist/chunks/{4275.b3dd1343.js.map → 4275.f71a1a4b.js.map} +1 -1
- package/dist/chunks/443.5c72124e.js.map +1 -1
- package/dist/chunks/4991.d9c05e27.js +2 -0
- package/dist/chunks/4991.d9c05e27.js.map +1 -0
- package/dist/chunks/{5151.317d0e3c.js → 5151.afc0178c.js} +2 -2
- package/dist/chunks/{5151.317d0e3c.js.map → 5151.afc0178c.js.map} +1 -1
- package/dist/chunks/{5381.51ad107a.js → 5381.1e86ada0.js} +2 -2
- package/dist/chunks/{5381.51ad107a.js.map → 5381.1e86ada0.js.map} +1 -1
- package/dist/chunks/{5636.2c9b6fbb.js → 5636.041225ad.js} +2 -2
- package/dist/chunks/{5636.2c9b6fbb.js.map → 5636.041225ad.js.map} +1 -1
- package/dist/chunks/{5725.eb89582e.js → 5725.fa319c62.js} +2 -2
- package/dist/chunks/{5725.eb89582e.js.map → 5725.fa319c62.js.map} +1 -1
- package/dist/chunks/6051.d0588c7b.js +2 -0
- package/dist/chunks/6051.d0588c7b.js.map +1 -0
- package/dist/chunks/6205.8bfd0a68.js +2 -0
- package/dist/chunks/{6205.6d681a94.js.map → 6205.8bfd0a68.js.map} +1 -1
- package/dist/chunks/{6473.bf5eca9d.js → 6473.2f312932.js} +2 -2
- package/dist/chunks/{6473.bf5eca9d.js.map → 6473.2f312932.js.map} +1 -1
- package/dist/chunks/{6653.8f670392.js → 6653.93433cc6.js} +2 -2
- package/dist/chunks/{6653.8f670392.js.map → 6653.93433cc6.js.map} +1 -1
- package/dist/chunks/{6660.dbeafac4.js → 6660.b880dde6.js} +2 -2
- package/dist/chunks/{6660.dbeafac4.js.map → 6660.b880dde6.js.map} +1 -1
- package/dist/chunks/7164.fc2a7637.js +2 -0
- package/dist/chunks/{7164.8bdcd416.js.map → 7164.fc2a7637.js.map} +1 -1
- package/dist/chunks/{7672.6b9b76f3.js → 7672.0691cd05.js} +2 -2
- package/dist/chunks/{7672.6b9b76f3.js.map → 7672.0691cd05.js.map} +1 -1
- package/dist/chunks/{7746.ebb00411.js → 7746.20ab5bb5.js} +2 -2
- package/dist/chunks/{1646.05542f8f.js.map → 7746.20ab5bb5.js.map} +1 -1
- package/dist/chunks/8442.5751dc28.js +2 -0
- package/dist/chunks/8442.5751dc28.js.map +1 -0
- package/dist/chunks/{8498.f61fdcdc.js → 8498.898bb8d0.js} +2 -2
- package/dist/chunks/{8498.f61fdcdc.js.map → 8498.898bb8d0.js.map} +1 -1
- package/dist/chunks/8588.61711702.js +2 -0
- package/dist/chunks/8588.61711702.js.map +1 -0
- package/dist/chunks/{9809.2d2a6014.js → 9809.1a301a83.js} +2 -2
- package/dist/chunks/9809.1a301a83.js.map +1 -0
- package/dist/chunks/app-wall-card-item.2a4712ef.js +3 -0
- package/dist/chunks/app-wall-card-item.2a4712ef.js.map +1 -0
- package/dist/chunks/app-wall-relation-line.dc0c61bf.js +3 -0
- package/dist/chunks/app-wall-relation-line.dc0c61bf.js.map +1 -0
- package/dist/chunks/{app-wall-system-card.03c861f4.js → app-wall-system-card.b20df312.js} +2 -2
- package/dist/chunks/app-wall-system-card.b20df312.js.map +1 -0
- package/dist/chunks/app-wall.7e47ab87.js +2 -0
- package/dist/chunks/app-wall.7e47ab87.js.map +1 -0
- package/dist/chunks/basic-index-group.930f5ee7.js +2 -0
- package/dist/chunks/basic-index-group.930f5ee7.js.map +1 -0
- package/dist/chunks/battery-chart.46a4f780.js +2 -0
- package/dist/chunks/battery-chart.46a4f780.js.map +1 -0
- package/dist/chunks/brick-notification.1df78b13.js +2 -0
- package/dist/chunks/brick-notification.1df78b13.js.map +1 -0
- package/dist/chunks/{cabinet-app-layer.3dc936ae.js → cabinet-app-layer.522e61c4.js} +3 -3
- package/dist/chunks/cabinet-app-layer.522e61c4.js.map +1 -0
- package/dist/chunks/{cabinet-button.0082a409.js → cabinet-button.c01ed2b9.js} +2 -2
- package/dist/chunks/cabinet-button.c01ed2b9.js.map +1 -0
- package/dist/chunks/{cabinet-container.16655913.js → cabinet-container.32763d76.js} +3 -3
- package/dist/chunks/cabinet-container.32763d76.js.map +1 -0
- package/dist/chunks/{cabinet-graph.eb4f2420.js → cabinet-graph.dd354e0d.js} +2 -2
- package/dist/chunks/cabinet-graph.dd354e0d.js.map +1 -0
- package/dist/chunks/{cabinet-node.a8e901ab.js → cabinet-node.a54abeda.js} +3 -3
- package/dist/chunks/cabinet-node.a54abeda.js.map +1 -0
- package/dist/chunks/{cabinet-thumbnail.c30d7371.js → cabinet-thumbnail.9b9ed679.js} +3 -3
- package/dist/chunks/cabinet-thumbnail.9b9ed679.js.map +1 -0
- package/dist/chunks/complex-search.3eba6077.js +2 -0
- package/dist/chunks/complex-search.3eba6077.js.map +1 -0
- package/dist/chunks/data-display-flipper-fifth.7ff714bd.js +2 -0
- package/dist/chunks/data-display-flipper-fifth.7ff714bd.js.map +1 -0
- package/dist/chunks/data-display-flipper-sixth.7ef2d216.js +2 -0
- package/dist/chunks/data-display-flipper-sixth.7ef2d216.js.map +1 -0
- package/dist/chunks/data-display-flipper.0fd4e655.js +2 -0
- package/dist/chunks/data-display-flipper.0fd4e655.js.map +1 -0
- package/dist/chunks/{dropdown-menu.6d7a1efd.js → dropdown-menu.58bd8241.js} +3 -3
- package/dist/chunks/dropdown-menu.58bd8241.js.map +1 -0
- package/dist/chunks/gauge-chart.3b432743.js +2 -0
- package/dist/chunks/gauge-chart.3b432743.js.map +1 -0
- package/dist/chunks/{gear-background.9da57ea0.js → gear-background.65d1bfed.js} +2 -2
- package/dist/chunks/gear-background.65d1bfed.js.map +1 -0
- package/dist/chunks/graph-layout-grid.1baebba2.js +2 -0
- package/dist/chunks/graph-layout-grid.1baebba2.js.map +1 -0
- package/dist/chunks/{graph-node.a4442441.js → graph-node.df5ea520.js} +2 -2
- package/dist/chunks/graph-node.df5ea520.js.map +1 -0
- package/dist/chunks/{graph-text.5660d154.js → graph-text.ab899a96.js} +2 -2
- package/dist/chunks/graph-text.ab899a96.js.map +1 -0
- package/dist/chunks/{grid-background.490aa2d4.js → grid-background.11eae64c.js} +2 -2
- package/dist/chunks/grid-background.11eae64c.js.map +1 -0
- package/dist/chunks/{hi-tech-button.7e5bc0dd.js → hi-tech-button.f7015f5e.js} +2 -2
- package/dist/chunks/hi-tech-button.f7015f5e.js.map +1 -0
- package/dist/chunks/indicator-card.430e0838.js +3 -0
- package/dist/chunks/indicator-card.430e0838.js.map +1 -0
- package/dist/chunks/lights-component-title.82753b9d.js +2 -0
- package/dist/chunks/lights-component-title.82753b9d.js.map +1 -0
- package/dist/chunks/{loading-panel.1e534c7f.js → loading-panel.a416516b.js} +2 -2
- package/dist/chunks/loading-panel.a416516b.js.map +1 -0
- package/dist/chunks/main.92a8b1d4.js +2 -0
- package/dist/chunks/main.92a8b1d4.js.map +1 -0
- package/dist/chunks/{modern-style-component-title.8e9462d6.js → modern-style-component-title.868e37d5.js} +2 -2
- package/dist/chunks/modern-style-component-title.868e37d5.js.map +1 -0
- package/dist/chunks/modern-style-page-title.ea34a09c.js +2 -0
- package/dist/chunks/modern-style-page-title.ea34a09c.js.map +1 -0
- package/dist/chunks/{modern-style-treemap.e65789ec.js → modern-style-treemap.264d7b10.js} +3 -3
- package/dist/chunks/modern-style-treemap.264d7b10.js.map +1 -0
- package/dist/chunks/{particle-animation.95162605.js → particle-animation.1b52fc37.js} +2 -2
- package/dist/chunks/particle-animation.1b52fc37.js.map +1 -0
- package/dist/chunks/radar-chart.bab0ff9c.js +2 -0
- package/dist/chunks/radar-chart.bab0ff9c.js.map +1 -0
- package/dist/chunks/simple-card-item.4a9c0db4.js +3 -0
- package/dist/chunks/simple-card-item.4a9c0db4.js.map +1 -0
- package/dist/chunks/{tabs-drawer.5c42cc42.js → tabs-drawer.314f831a.js} +3 -3
- package/dist/chunks/tabs-drawer.314f831a.js.map +1 -0
- package/dist/chunks/{tabs-page-title.df51ae41.js → tabs-page-title.1850ce50.js} +3 -3
- package/dist/chunks/tabs-page-title.1850ce50.js.map +1 -0
- package/dist/chunks/tech-mesh-base-view.10f53604.js +2 -0
- package/dist/chunks/tech-mesh-base-view.10f53604.js.map +1 -0
- package/dist/chunks/title-text.bebb548c.js +2 -0
- package/dist/chunks/title-text.bebb548c.js.map +1 -0
- package/dist/chunks/{top-title-bar.c36d6df1.js → top-title-bar.2a5f567b.js} +2 -2
- package/dist/chunks/{top-title-bar.c36d6df1.js.map → top-title-bar.2a5f567b.js.map} +1 -1
- package/dist/examples.json +7 -7
- package/dist/index.c4841024.js +2 -0
- package/dist/index.c4841024.js.map +1 -0
- package/dist/manifest.json +105 -105
- package/dist/types.json +290 -290
- package/package.json +4 -4
- package/dist/chunks/2502.d12fe43c.js +0 -2
- package/dist/chunks/2502.d12fe43c.js.map +0 -1
- package/dist/chunks/3458.ace63144.js +0 -2
- package/dist/chunks/4031.af83eb4b.js.map +0 -1
- package/dist/chunks/4991.7f1b1f2d.js +0 -2
- package/dist/chunks/4991.7f1b1f2d.js.map +0 -1
- package/dist/chunks/6051.c8c241c3.js +0 -2
- package/dist/chunks/6051.c8c241c3.js.map +0 -1
- package/dist/chunks/6205.6d681a94.js +0 -2
- package/dist/chunks/7164.8bdcd416.js +0 -2
- package/dist/chunks/8442.aba7a46f.js +0 -2
- package/dist/chunks/8442.aba7a46f.js.map +0 -1
- package/dist/chunks/8588.2beae150.js +0 -2
- package/dist/chunks/8588.2beae150.js.map +0 -1
- package/dist/chunks/8691.e3206ecb.js +0 -2
- package/dist/chunks/8691.e3206ecb.js.map +0 -1
- package/dist/chunks/9809.2d2a6014.js.map +0 -1
- package/dist/chunks/app-wall-card-item.bb1cc04e.js +0 -3
- package/dist/chunks/app-wall-card-item.bb1cc04e.js.map +0 -1
- package/dist/chunks/app-wall-relation-line.c9f65981.js +0 -3
- package/dist/chunks/app-wall-relation-line.c9f65981.js.map +0 -1
- package/dist/chunks/app-wall-system-card.03c861f4.js.map +0 -1
- package/dist/chunks/app-wall.cfe34da4.js +0 -2
- package/dist/chunks/app-wall.cfe34da4.js.map +0 -1
- package/dist/chunks/basic-index-group.a540fab1.js +0 -2
- package/dist/chunks/basic-index-group.a540fab1.js.map +0 -1
- package/dist/chunks/battery-chart.155daf1c.js +0 -2
- package/dist/chunks/battery-chart.155daf1c.js.map +0 -1
- package/dist/chunks/brick-notification.0b3be734.js +0 -2
- package/dist/chunks/brick-notification.0b3be734.js.map +0 -1
- package/dist/chunks/cabinet-app-layer.3dc936ae.js.map +0 -1
- package/dist/chunks/cabinet-button.0082a409.js.map +0 -1
- package/dist/chunks/cabinet-container.16655913.js.map +0 -1
- package/dist/chunks/cabinet-graph.eb4f2420.js.map +0 -1
- package/dist/chunks/cabinet-node.a8e901ab.js.map +0 -1
- package/dist/chunks/cabinet-thumbnail.c30d7371.js.map +0 -1
- package/dist/chunks/complex-search.6dc8a1eb.js +0 -2
- package/dist/chunks/complex-search.6dc8a1eb.js.map +0 -1
- package/dist/chunks/data-display-flipper-fifth.2ae5ec8a.js +0 -2
- package/dist/chunks/data-display-flipper-fifth.2ae5ec8a.js.map +0 -1
- package/dist/chunks/data-display-flipper-sixth.85dabbfb.js +0 -2
- package/dist/chunks/data-display-flipper-sixth.85dabbfb.js.map +0 -1
- package/dist/chunks/data-display-flipper.9ad4898b.js +0 -2
- package/dist/chunks/data-display-flipper.9ad4898b.js.map +0 -1
- package/dist/chunks/dropdown-menu.6d7a1efd.js.map +0 -1
- package/dist/chunks/gauge-chart.5605e2ea.js +0 -2
- package/dist/chunks/gauge-chart.5605e2ea.js.map +0 -1
- package/dist/chunks/gear-background.9da57ea0.js.map +0 -1
- package/dist/chunks/graph-layout-grid.ae9fa2db.js +0 -2
- package/dist/chunks/graph-layout-grid.ae9fa2db.js.map +0 -1
- package/dist/chunks/graph-node.a4442441.js.map +0 -1
- package/dist/chunks/graph-text.5660d154.js.map +0 -1
- package/dist/chunks/grid-background.490aa2d4.js.map +0 -1
- package/dist/chunks/hi-tech-button.7e5bc0dd.js.map +0 -1
- package/dist/chunks/indicator-card.dad90cc9.js +0 -3
- package/dist/chunks/indicator-card.dad90cc9.js.map +0 -1
- package/dist/chunks/lights-component-title.a95a2abe.js +0 -2
- package/dist/chunks/lights-component-title.a95a2abe.js.map +0 -1
- package/dist/chunks/loading-panel.1e534c7f.js.map +0 -1
- package/dist/chunks/main.3fcf08b9.js +0 -2
- package/dist/chunks/main.3fcf08b9.js.map +0 -1
- package/dist/chunks/modern-style-component-title.8e9462d6.js.map +0 -1
- package/dist/chunks/modern-style-page-title.81f35a48.js +0 -2
- package/dist/chunks/modern-style-page-title.81f35a48.js.map +0 -1
- package/dist/chunks/modern-style-treemap.e65789ec.js.map +0 -1
- package/dist/chunks/particle-animation.95162605.js.map +0 -1
- package/dist/chunks/radar-chart.c393d1dc.js +0 -2
- package/dist/chunks/radar-chart.c393d1dc.js.map +0 -1
- package/dist/chunks/simple-card-item.45cc5b36.js +0 -3
- package/dist/chunks/simple-card-item.45cc5b36.js.map +0 -1
- package/dist/chunks/tabs-drawer.5c42cc42.js.map +0 -1
- package/dist/chunks/tabs-page-title.df51ae41.js.map +0 -1
- package/dist/chunks/tech-mesh-base-view.9246e109.js +0 -2
- package/dist/chunks/tech-mesh-base-view.9246e109.js.map +0 -1
- package/dist/chunks/title-text.9446a7f8.js +0 -2
- package/dist/chunks/title-text.9446a7f8.js.map +0 -1
- package/dist/index.823de768.js +0 -2
- package/dist/index.823de768.js.map +0 -1
- /package/dist/chunks/{app-wall-card-item.bb1cc04e.js.LICENSE.txt → app-wall-card-item.2a4712ef.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{app-wall-relation-line.c9f65981.js.LICENSE.txt → app-wall-relation-line.dc0c61bf.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{cabinet-app-layer.3dc936ae.js.LICENSE.txt → cabinet-app-layer.522e61c4.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{cabinet-container.16655913.js.LICENSE.txt → cabinet-container.32763d76.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{cabinet-node.a8e901ab.js.LICENSE.txt → cabinet-node.a54abeda.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{cabinet-thumbnail.c30d7371.js.LICENSE.txt → cabinet-thumbnail.9b9ed679.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{dropdown-menu.6d7a1efd.js.LICENSE.txt → dropdown-menu.58bd8241.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{indicator-card.dad90cc9.js.LICENSE.txt → indicator-card.430e0838.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{modern-style-treemap.e65789ec.js.LICENSE.txt → modern-style-treemap.264d7b10.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{simple-card-item.45cc5b36.js.LICENSE.txt → simple-card-item.4a9c0db4.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{tabs-drawer.5c42cc42.js.LICENSE.txt → tabs-drawer.314f831a.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{tabs-page-title.df51ae41.js.LICENSE.txt → tabs-page-title.1850ce50.js.LICENSE.txt} +0 -0
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_next_bricks_data_view=self.webpackChunk_next_bricks_data_view||[]).push([[6205,7164],{7164:(e,n,i)=>{i.r(n),i.d(n,{i18n:()=>l,i18nText:()=>f,initializeI18n:()=>o});var t=i(6855),a=i(8819),r=i(6473),s=!1,u=new Set;function o(e,n){if(s||(s=!0,a.i18n.use(r.default).init({fallbackLng:"zh",debug:!1,supportedLngs:["zh","en"],nonExplicitSupportedLngs:!0,interpolation:{escapeValue:!1},react:{useSuspense:!1},compatibilityJSON:"v3",resources:{}})),e&&n&&!u.has(e))for(var[i,t]of(u.add(e),Object.entries(n)))a.i18n.addResourceBundle(i,e,t)}var c=i(7004);function f(e){var n;if(e){var i=null!==(n=a.i18n.language)&&void 0!==n?n:"zh-CN";if((0,c.hasOwnProperty)(e,i))return e[i];var t=i.split("-")[0];if(t!==i)return(0,c.hasOwnProperty)(e,t)?e[t]:void 0;var r="".concat(t,"-");for(var s of Object.keys(e))if(s.startsWith(r))return e[s]}}var l=t.default}}]);
|
|
2
|
-
//# sourceMappingURL=6205.6d681a94.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_next_bricks_data_view=self.webpackChunk_next_bricks_data_view||[]).push([[7164,6205],{7164:(e,n,i)=>{i.r(n),i.d(n,{i18n:()=>l,i18nText:()=>f,initializeI18n:()=>o});var t=i(6855),a=i(8819),r=i(6473),s=!1,u=new Set;function o(e,n){if(s||(s=!0,a.i18n.use(r.default).init({fallbackLng:"zh",debug:!1,supportedLngs:["zh","en"],nonExplicitSupportedLngs:!0,interpolation:{escapeValue:!1},react:{useSuspense:!1},compatibilityJSON:"v3",resources:{}})),e&&n&&!u.has(e))for(var[i,t]of(u.add(e),Object.entries(n)))a.i18n.addResourceBundle(i,e,t)}var c=i(7004);function f(e){var n;if(e){var i=null!==(n=a.i18n.language)&&void 0!==n?n:"zh-CN";if((0,c.hasOwnProperty)(e,i))return e[i];var t=i.split("-")[0];if(t!==i)return(0,c.hasOwnProperty)(e,t)?e[t]:void 0;var r="".concat(t,"-");for(var s of Object.keys(e))if(s.startsWith(r))return e[s]}}var l=t.default}}]);
|
|
2
|
-
//# sourceMappingURL=7164.8bdcd416.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_next_bricks_data_view=self.webpackChunk_next_bricks_data_view||[]).push([[8442],{1906:(e,t,r)=>{r.d(t,{j:()=>I});var a=r(7896),n=r(8657),o=r.n(n),i=r(1211),l=r(6995),c=r(5095),s=r(4827),d=r(2839),p=r(3028),u=(r(7035),r(7709),r(9703),(e,t,r)=>{var a=(new l.Pa4).subVectors(t,e),n=a.length(),o=document.createElement("data-view.app-wall-relation-line");o.style.height="".concat(n,"px"),o.classList.add("relation-line"),o.lightColor=r;var i=new c.cp(o),s=(new l.Pa4).lerpVectors(e,t,.5);i.position.copy(s);var d=(new l._fP).setFromUnitVectors(new l.Pa4(0,1,0).normalize(),a.clone().normalize());return i.setRotationFromQuaternion(d),i}),h=(e,t)=>{var r=new l.Pa4(e[0],e[1],e[2]),a=new l.Pa4(t[0],t[1],t[2]);return{centerVector:(new l.Pa4).lerpVectors(r,a,.5),subVector:(new l.Pa4).subVectors(r,a)}},g=e=>{var{BW:t,TW:r,d:a,TH:n,BH:o,isLeft:i}=e,s=Math.sqrt(Math.pow(r/2-t/2,2)+Math.pow(a,2)),d=document.createElement("div");d.style.cssText="\n width: ".concat(s,"px;\n height:").concat(n,"px;\n position: relative;\n clip-path: polygon(0 0, ").concat(s,"px ").concat(n/2-o/2,"px, ").concat(s,"px ").concat(n/2-o/2+o,"px, 0 ").concat(n,"px);\n ");var p=document.createElement("div");p.className="trapezoidalLeftOrRightAnimation",d.appendChild(p);var u=i?[-t/2,0,0]:[t/2,0,0],g=i?[-r/2,0,a]:[r/2,0,a],b=new c.cp(d),{centerVector:m,subVector:v}=h(u,g);b.position.copy(m);var x=(new l._fP).setFromUnitVectors(new l.Pa4(1,0,0).normalize(),v.clone().normalize());return b.setRotationFromQuaternion(x),b},b=e=>{var{BW:t,TW:r,d:a,TH:n,BH:o,isTop:i}=e,s=Math.sqrt(Math.pow(n/2-o/2,2)+Math.pow(a,2)),d=document.createElement("div");d.style.cssText="\n width: ".concat(r,"px;\n height:").concat(s,"px;\n position: relative;\n clip-path: polygon(0 0, ").concat(r,"px 0, ").concat(r/2-t/2+t,"px ").concat(s,"px, ").concat(r/2-t/2,"px ").concat(s,"px);\n ");var p=document.createElement("div");p.className="trapezoidalTopOrBottomAnimation",d.appendChild(p);var u=new c.cp(d),g=i?[0,-o/2,0]:[0,o/2,0],b=i?[0,-n/2,a]:[0,n/2,a],{centerVector:m,subVector:v}=h(g,b);u.position.copy(m);var x=(new l._fP).setFromUnitVectors(new l.Pa4(0,-1,0).normalize(),v.clone().normalize());return u.setRotationFromQuaternion(x),u},m=e=>{var{objectData:t,leftBtnName:r,clusters:a,columns:n,leftOnClick:o,rightBtnName:i,rightOnClick:l,appName:s}=e,d=600,p=document.createElement("div"),u=new c.cp(p);u.position.set(...t.point);var h=t.width,m=t.height,v=1500,x=1200,w=document.createElement("div");w.style.cssText="\n width: ".concat(h,"px;\n height: ").concat(m,"px;\n box-shadow: inset 0px 1px 2px 0px rgba(255,255,255,0.45);\n border: 1px solid rgba(118,255,255,0.58);\n padding: 16px;\n ");var f=new c.cp(w);f.position.z=0,u.add(f);var y=document.createElement("div");y.style.cssText="\n width: ".concat(v,"px;\n height:").concat(x,"px;\n background: linear-gradient(rgb(13, 54, 179,0.6) 0%, rgb(74, 108, 156,0.6) 100%);\n box-sizing: border-box;\n padding: 16px;\n ");var k=document.createElement("data-view.cabinet-thumbnail");k.clusters=null!=a?a:[],k.columns=null!=n?n:4,k.appName=s,y.className="visibilityAnimate",y.appendChild(k);var z=new c.cp(y);z.position.set(0,0,d);var T=g({BW:h,TW:v,BH:m,TH:x,d,isLeft:!0}),C=g({BW:h,TW:v,BH:m,TH:x,d,isLeft:!1}),S=b({BW:h,TW:v,BH:m,TH:x,d,isTop:!0}),P=b({BW:h,TW:v,BH:m,TH:x,d,isTop:!1});if(u.add(T,C,P,S),r){var E=document.createElement("div");E.style.cssText="\n color: #6BE0FA;\n font-size: 28px;\n font-weight: 500;\n width: ".concat(750,"px;\n line-height: 16px;\n "),E.className="visibilityAnimate";var M=document.createElement("span");M.style.cursor="pointer",M.innerText=r,E.appendChild(M);var R=new c.cp(E);R.position.set(-365,-600,14),R.rotateX(Math.PI/2),z.add(R),M.onpointerdown=o}if(i){var B=document.createElement("div");B.style.cssText="\n color: #FFFFFF;\n font-size: 30px;\n font-weight: 500;\n width: ".concat(750,"px;\n text-shadow: 0px 1px 4px #3366FF;\n text-align: right;\n "),B.className="visibilityAnimate";var I=document.createElement("span");I.style.cursor="pointer",I.innerText=i,B.appendChild(I);var _=new c.cp(B);_.position.set(365,-600,14),_.rotateX(Math.PI/2),z.add(_),I.onpointerdown=l}return u.add(z),u},v=(e,t,r)=>{if(null==e||!e.length)return[];var a=e.map((e=>(0,p.Z)((0,p.Z)({},e),{},{x:0,y:0})));if(a.length===t*r)a=a.map(((e,r)=>(0,p.Z)((0,p.Z)({},e),{},{x:r%t+1,y:parseInt("".concat(r/t))+1})));else{for(var n=t*(r-1),o=a.length-n,i=0;i<n;i++){var l=a[i];l.x=i%t+1,l.y=parseInt("".concat(i/t))+1}for(var c=0;c<o/2;c++){var s=a[c+n],d=a[a.length-1-c];s.x=c+1,s.y=r,s!==d&&(d.x=t-c,d.y=r)}}return a},x=(e,t,r,a)=>{var n=new l.Tme;return n.position.x=e.x*t.outerWidth-(r/2+.5)*t.outerWidth,n.position.y=-e.y*t.outerHeight+(a/2+.5)*t.outerHeight,n},w=(e,t,r,a,n,o)=>{var i=new l.Tme,c=new l.Pa4,s=((e,t,r,a,n)=>{var o={x:0,y:0,z:0},i=parseInt("".concat(r*t.outerWidth*180))/(n*Math.PI),l=r/2+.5;return o.x=i*Math.sin(Math.PI/(180/((e.x-l)*(n/r)))),o.y=-e.y*t.outerHeight+(a/2+.5)*t.outerHeight,o.z=i-Math.sqrt(i*i-o.x*o.x),o})(e,t,r,a,n);return i.position.x=s.x,i.position.y=s.y,i.position.z=s.z,c.x=0,c.y=i.position.y,c.z=o,i.lookAt(c),i},f=(e,t,r,a)=>{var n=t.height+2*t.margin,o=(t.width+2*t.margin)/e.aspect,i=.5*Math.max(o,n)/Math.tan(e.fov*Math.PI/360)+t.z,l=0;return r.forEach((function(e){a>=Math.min.apply(null,e.numRange)&&a<=Math.max.apply(null,e.numRange)&&(l=e.distance)})),Math.max(l,i)},y=(e,t)=>{var r=[],a=e.userData;return Array.isArray(t)&&t.length&&t.forEach((function(e){a.key!==e.source&&a.key!==e.target||r.push(e)})),r},k=(e,t)=>{var r=t.toUpperCase(),a=e.composedPath().find((e=>null==e?void 0:e.shadowRoot));if((null==a?void 0:a.tagName)===r)return a;var n=document.elementFromPoint(e.clientX,e.clientY),o=null==n?void 0:n.shadowRoot.elementFromPoint(e.clientX,e.clientY);return(null==o?void 0:o.tagName)===r?o:null},z=r(4511),T=r(2779),C=r.n(T),S=[{numRange:[0,40],distance:3e3},{numRange:[40,60],distance:2200},{numRange:[60,80],distance:2700},{numRange:[80,120],distance:3200},{numRange:[120,160],distance:3400},{numRange:[160,300],distance:3600}],P=45,E=100,M=300,R=(e,t,r,a)=>{var n=Math.ceil(Math.sqrt(e*t.outerHeight/(a*t.outerWidth))),o=Math.ceil(e/n),i=parseInt("".concat(n*t.outerWidth*180))/(E*Math.PI);return{maxX:n,maxY:o,radius:i,bounds:{width:2*i*Math.sin(Math.PI*(E/2)/180)+t.outerWidth,height:o*t.outerHeight,margin:r,z:i-i*Math.cos(Math.PI*(E/2)/180)}}},B=(0,z.wrapBrick)("data-view.app-wall-system-card");function I(e){var{relations:t,onSystemCardButtonClick:r,useDblclick:p,useDistanceConfig:h,handleCardDbClick:g,rightBtnOnClick:b,leftBtnOnClick:z,cardBrickName:T,cardSize:I,disabledDefaultClickEvent:_,handleCardClick:X,containerId:D,noRotate:F,boundMargin:A}=e,[W,N]=(0,n.useState)(null),L=(0,n.useRef)(),H=(0,n.useRef)(),O=(0,n.useRef)(),Z=(0,n.useRef)(),V=(0,n.useRef)(),j=(0,n.useRef)(),Y=(0,n.useRef)(),G=(0,n.useRef)(),U=(0,n.useRef)(),q=(0,n.useRef)(),Q=(0,n.useRef)({table:[],curve:[]}),K=(0,n.useRef)([]),$=(0,n.useRef)([]),J=(0,n.useRef)(1.15),ee=(0,n.useRef)({maxX:0,maxY:0,radius:0,bounds:{width:0,height:0,margin:A,z:0}}),te=(0,n.useRef)({element:null,mouseoverTimer:null,mouseoutTimer:null,clickTimer:null,dblClickTimer:null,isShowGraph3D:!1,isShowAppInfo:!1,isShowRelations:!1,enable:!0}),re=(0,n.useCallback)((()=>{j.current.render(Y.current,G.current),U.current.maxDistance=ee.current.bounds.z+ee.current.radius,U.current.handleResize()}),[]),ae=e=>{var t;if(null===(t=te.current)||void 0===t||!t.element)return null==e?void 0:e();var{__objectCSS:r,__curve:a,__userData:n}=te.current.element;new d.kX(r.rotation).to({x:a.rotation.x,y:a.rotation.y,z:a.rotation.z},100).start(),new d.kX(r.scale).to({x:1,y:1,z:1},100).start(),new d.kX(r.position).to({x:a.position.x,y:a.position.y,z:a.position.z},100).onUpdate(re).onStart((()=>{var e;"data-view.app-wall-card-item"===T&&r.element.classList.remove("status-".concat(n.status||"normal","-card")),null===(e=K.current)||void 0===e||e.forEach((e=>{e.element.style.opacity="1"})),$.current.forEach((e=>{Y.current.remove(e)})),$.current=[],re()})).onComplete((()=>{var t;te.current.isShowRelations=!1,null==e||e(null===(t=te.current)||void 0===t?void 0:t.element)})).start()},ne=(e,t)=>{te.current.enable=!1;for(var r=0;r<K.current.length;r++){var a=K.current[r],n=e[r];new d.kX(a.position).to({x:n.position.x,y:n.position.y,z:n.position.z},l.M8C.randFloat(t,2*t)).easing(d.oY.Exponential.InOut).start(),new d.kX(a.rotation).to({x:n.rotation.x,y:n.rotation.y,z:n.rotation.z},l.M8C.randFloat(t,2*t)).easing(d.oY.Exponential.InOut).start()}new d.kX({}).to({},2*t).onUpdate(re).start().onComplete((()=>{te.current.enable=!0}))},oe=e=>{U.current.reset();var t=te.current.element.__objectCSS,r=te.current.element.__curve;te.current.enable=!1,te.current.isShowAppInfo=!0;var a,n={x:r.position.x>0?2*-I.width:2*I.width,y:0,z:(G.current.position.z-500)/1.5},o={x:0,y:0,z:G.current.position.z-500},i={x:0,y:r.rotation.y>0?90*-Math.PI/180:90*Math.PI/180,z:0},l={x:0,y:r.rotation.y>0?180*-Math.PI/180:180*Math.PI/180,z:0},c=new d.kX(t.position),s=new d.kX(t.rotation),p=new d.kX(t.position),u=new d.kX(t.rotation);e?(c.to(n,500).easing().onComplete((()=>{V.current.hidden=!0,te.current.element.style.opacity="1"})),s.to(i,500).easing(),p.to({x:r.position.x,y:r.position.y,z:r.position.z},700).easing(),u.to({x:r.rotation.x,y:r.rotation.y,z:r.rotation.z},700).easing().onComplete((()=>{var e;null===(e=K.current)||void 0===e||e.forEach((e=>{e.element.style.opacity="1"}))}))):(null===(a=K.current)||void 0===a||a.forEach((e=>{t!=e&&(e.element.style.opacity="0.2")})),c.to(n,700).easing().onStart((()=>{Z.current.hidden=!1,V.current.hidden=!0})),s.to(i,700).easing(),p.to(o,500).easing().onStart((function(){te.current.element.style.opacity="0",V.current.style.transition="transition: all .3s ease",V.current.hidden=!1})),u.to(l,500).easing()),c.chain(p).start(),s.chain(u).start(),new d.kX({}).to({},1400).onUpdate((()=>{if(re(),Math.abs(t.rotation.y)>=Math.PI/2){var e=te.current.element.getBoundingClientRect(),r=1.35,a=e.width*r,n=e.height*r;V.current.style.width="".concat(a,"px"),V.current.style.height="".concat(n,"px"),V.current.style.top="".concat(e.top-(r-1)*n/2,"px"),V.current.style.left="".concat(e.left-(r-1)*a/2,"px")}})).start().onComplete((function(){te.current.enable=!0,te.current.isShowAppInfo=!e,Z.current.hidden=e}))};return(0,n.useEffect)((()=>{var e;(()=>{var e,t=null===(e=document.getElementById(D))||void 0===e?void 0:e.getBoundingClientRect(),r=(null==t?void 0:t.width)||window.innerWidth,a=(null==t?void 0:t.height)||window.innerHeight,n=r/a,o=new l.xsS,i=new l.cPb(P,n,.1,1e4),d=new c.lX;d.setSize(r,a),H.current.replaceChildren(d.domElement);var p=new s.$(i,d.domElement);p.rotateSpeed=.5,p.minDistance=500,p.maxDistance=1e4,p.noRotate=F,Y.current=o,G.current=i,U.current=p,j.current=d})();var t=()=>{e=requestAnimationFrame(t),d.ZP.update(),U.current.update()};t();var r=D?document.getElementById(D):document.body,a=new ResizeObserver((0,i.debounce)((()=>{var{width:e,height:t}=r.getBoundingClientRect();G.current.aspect=e/t,G.current.updateProjectionMatrix(),j.current.setSize(e,t),re()}),300));return U.current.addEventListener("change",re),a.observe(r),()=>{a.disconnect(),U.current.removeEventListener("change",re),U.current.dispose(),d.ZP.removeAll(),G.current.clear(),Y.current.clear(),cancelAnimationFrame(e)}}),[]),(0,n.useEffect)((()=>{var t,r=(null===(t=e.dataSource)||void 0===t?void 0:t.length)||0;r>0&&((e=>{ee.current=R(e,I,A,1/G.current.aspect)})(r),G.current.position.z=f(G.current,ee.current.bounds,h?S:[],r),G.current.updateProjectionMatrix(),U.current.position0.copy(G.current.position),v(e.dataSource,ee.current.maxX,ee.current.maxY).forEach(((e,t)=>{var r,a,n,o,i,l,s,d=document.createElement(T);d.status=e.status,d.cardTitle=null===(r=e.cardItemProps)||void 0===r?void 0:r.cardTitle,d.description=null===(a=e.cardItemProps)||void 0===a?void 0:a.description,d.background=null===(n=e.cardItemProps)||void 0===n?void 0:n.background,d.color=null===(o=e.cardItemProps)||void 0===o?void 0:o.color,d.titleStyle=null===(i=e.cardItemProps)||void 0===i?void 0:i.titleStyle,d.desStyle=null===(l=e.cardItemProps)||void 0===l?void 0:l.desStyle,d.descriptionList=null===(s=e.cardItemProps)||void 0===s?void 0:s.descriptionList;var p="status-".concat((null==e?void 0:e.status)||"normal");d.className="card-item-container ".concat(p),d.style.width="".concat(I.width,"px"),d.style.height="".concat(I.height,"px"),d.classList.add("card-item-wrap");var u=new c.cp(d);u.position.set(4e3*Math.random()-2e3,4e3*Math.random()-2e3,4e3*Math.random()-2e3),Y.current.add(u),K.current.push(u);var h=x(e,I,ee.current.maxX,ee.current.maxY);Q.current.table.push(h);var g=w(e,I,ee.current.maxX,ee.current.maxY,E,ee.current.radius);Q.current.curve.push(g),u.userData=e,d.__objectCSS=u,d.__userData=e,d.__curve=g})),ne(Q.current.curve,1e3));return()=>{U.current.reset(),d.ZP.removeAll(),K.current.map((e=>{Y.current.remove(e)})),K.current=[],Q.current={table:[],curve:[]},te.current={element:null,mouseoverTimer:null,mouseoutTimer:null,clickTimer:null,dblClickTimer:null,enable:!0,isShowAppInfo:!1,isShowGraph3D:!1,isShowRelations:!1}}}),[e.dataSource,h]),(0,n.useEffect)((()=>{var e=L.current,r=e=>{if(clearTimeout(te.current.mouseoverTimer),te.current.isShowAppInfo||te.current.isShowGraph3D||!te.current.enable)return!1;var r=k(e,T);te.current.mouseoverTimer=window.setTimeout((()=>{ae((()=>{r&&!te.current.isShowAppInfo&&(e=>{var{__objectCSS:r,__userData:a}=e,n=r.rotation.y,o=r.element.getBoundingClientRect(),i={x:r.position.x+50*Math.sin(n),y:r.position.y+15,z:r.position.z+100*Math.cos(n)},l=o.width>=I.width?J.current:Math.min(I.width/o.width,I.height/o.height);te.current.isShowRelations=!0,new d.kX(r.rotation).onStart((()=>{"data-view.app-wall-card-item"===T&&r.element.classList.add("status-".concat(a.status||"normal","-card"))})).start(),new d.kX(r.scale).to({x:l,y:l,z:l},100).start(),new d.kX(r.position).to(i,100).onUpdate(re).onComplete((function(){var a,n,o,i,l,c;l=y(a=r,t),c=a.userData,null==l||l.forEach((e=>{e.source===c.key?(i=K.current.find((t=>t.userData.key===e.target)),o=i&&u(a.position,i.position,"blue")):(i=K.current.find((t=>t.userData.key===e.source)),o=i&&u(i.position,a.position,"purple")),o&&($.current.push(o),Y.current.add(o))})),null===(n=K.current)||void 0===n||n.forEach((e=>{a!=e&&l.every((t=>t.source!=e.userData.key&&t.target!=e.userData.key))&&(e.element.style.opacity="0.2")})),re(),te.current.element=e})).start()})(r),clearTimeout(te.current.mouseoverTimer)}))}),300)},a=e=>{if(clearTimeout(te.current.clickTimer),clearTimeout(te.current.mouseoverTimer),te.current.isShowAppInfo||te.current.isShowGraph3D||!te.current.enable)return!1;var t=k(e,T);te.current.clickTimer=window.setTimeout((function(){clearTimeout(te.current.mouseoverTimer),ae((()=>{t&&(clearTimeout(te.current.clickTimer),clearTimeout(te.current.mouseoverTimer),e.stopPropagation(),te.current.element=t,_?null==X||X(t.__userData):(N(t.__userData),oe(!1)))}))}),200)},n=e=>{if(clearTimeout(te.current.clickTimer),clearTimeout(te.current.mouseoverTimer),clearTimeout(te.current.dblClickTimer),te.current.isShowAppInfo||te.current.isShowGraph3D||!te.current.enable)return!1;var t=k(e,T),{__userData:r,__objectCSS:a}=t;te.current.isShowGraph3D=!0,te.current.dblClickTimer=window.setTimeout((function(){ae((()=>{var e;if(p||(null===(e=r.trapezoidalProps)||void 0===e||null===(e=e.clusters)||void 0===e?void 0:e.length)<1)g(r),te.current.isShowGraph3D=!1;else if(t){clearTimeout(te.current.mouseoverTimer),clearTimeout(te.current.clickTimer),H.current.classList.add("mask-container"),U.current.reset();var n={x:a.position.x,y:860+I.height*(ee.current.maxY-r.y)},o=new d.kX(G.current.position),i=new d.kX({opacity:0,scale:0,borderLeftWidth:0,borderRightWidth:0,borderTopWidth:0,borderBottomWidth:0}),l=new d.kX({z:0}),c=new d.kX(G.current.position),s=new d.kX(U.current.target),u=new d.kX({blur:12,spread:0});ne(Q.current.table,600),o.to({x:0,y:-3600,z:1600},1e3).chain(u,i,l),i.to({opacity:1},700).onStart((()=>{var e,t,n,o,i,l=m({objectData:{width:I.width,height:I.height,point:[a.position.x,a.position.y,a.position.z]},clusters:null===(e=r.trapezoidalProps)||void 0===e?void 0:e.clusters,columns:null===(t=r.trapezoidalProps)||void 0===t?void 0:t.columns,appName:null===(n=r.trapezoidalProps)||void 0===n?void 0:n.appName,leftBtnName:null===(o=r.trapezoidalProps)||void 0===o?void 0:o.leftBtnName,rightBtnName:null===(i=r.trapezoidalProps)||void 0===i?void 0:i.rightBtnName,rightOnClick:()=>b(r),leftOnClick:()=>z(r)});q.current=l,Y.current.add(l)})),l.to({z:M},1e3).delay(230).chain(c,s),c.to({x:n.x,y:-3600+n.y},1e3),s.to({x:n.x,y:n.y},1e3).onComplete((function(){O.current.style.visibility="visible"})),o.start()}}))}),200)};return e.addEventListener("dblclick",n),e.addEventListener("click",a),e.addEventListener("mouseover",r),()=>{e.removeEventListener("mouseover",r),e.removeEventListener("click",a),e.removeEventListener("dblclick",n)}}),[_,X]),o().createElement("div",{className:"appwall-container",ref:L},o().createElement("div",{className:"appwall",ref:H}),o().createElement("div",{className:"mask",ref:Z,onClick:()=>{te.current.enable&&oe(!0)},hidden:!0},o().createElement(B,(0,a.Z)({},null==W?void 0:W.systemCardProps,{onClick:e=>e.stopPropagation(),handleClick:()=>r(W),ref:V,className:C()({infoWrapper:"normal"===(null==W?void 0:W.status),warningWrapper:"warning"===(null==W?void 0:W.status)})}))),o().createElement("div",{className:"closeBtn",ref:O,onClick:()=>{(()=>{d.ZP.removeAll();var e=new d.kX({z:0}),t=new d.kX({opacity:1}),r=new d.kX(G.current.position),a=new d.kX(U.current.target),n=new d.kX({blur:1500,spread:100});e.to({z:M},1e3).chain(r,a,n),t.to({opacity:0},1e3).onStart((()=>{Y.current.remove(q.current),O.current.style.visibility="hidden"})).delay(300),r.to(U.current.position0,1e3).onComplete((function(){U.current.reset(),H.current.classList.remove("mask-container"),ne(Q.current.curve,600),te.current.isShowGraph3D=!1})),a.to({x:0,y:0,z:0},1e3),n.to({blur:0,spread:0},1e3),e.start(),t.start()})()}}))}},2284:(e,t,r)=>{r.d(t,{Z:()=>l});var a=r(9601),n=r.n(a),o=r(2609),i=r.n(o)()(n());i.push([e.id,':host{display:block;width:100%;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.mask-container{position:absolute;top:0;left:0;width:100%;height:100%;background:#0c1216;z-index:1000}.appwall-container{padding:8px}.appwall{position:relative}.appwall.loading .card-item{pointer-events:none!important}.mask{position:absolute;width:100%;height:100%;top:0;bottom:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:center}.mask[hidden]{display:none}.infoWrapper{position:absolute;background:var(--color-fill-bg-base-4);box-shadow:0 0 12px 2px rgba(80,255,255,0.45),inset 0 0 22px 0 #20242a;border:2px solid #50ffff;overflow:hidden}.warningWrapper{position:absolute;background:linear-gradient(180deg,#cc0066 0%,rgba(204,0,102,0.2) 100%),#0f1117ff;box-shadow:0 0 12px 2px rgba(204,0,102,0.4),inset 0 4px 10px 0 rgba(255,255,255,0.65);overflow:hidden}.relation-line{pointer-events:none!important}.closeBtn{visibility:hidden;position:fixed;top:50px;right:50px;width:46px;height:46px;text-align:center;border:1px solid;color:rgb(138 189 255/84%);font-size:20px;line-height:46px;cursor:pointer;background:rgba(138,189,255,0.13);border-image:linear-gradient(135deg,rgba(255,255,255,0.5),rgba(255,255,255,0),rgba(255,255,255,0.33)) 1 1;display:flex;justify-content:center;align-items:center;z-index:1000}.closeBtn:before,\n.closeBtn:after{content:"";width:2px;height:20px;background:linear-gradient(180deg,#3467ff 0%,#98cbff 100%);position:absolute}.closeBtn:before{transform:rotateZ(45deg)}.closeBtn:after{transform:rotateZ(-45deg)}.closeBtn:hover:after,\n.closeBtn:hover:before{background:var(--color-normal-text)}.visibilityAnimate{visibility:hidden;animation:visibility 0.5s both 1s}.trapezoidalLeftOrRightAnimation,\n.trapezoidalTopOrBottomAnimation{background:linear-gradient(180deg,rgba(51,102,255,0.4) 0%,#99ccff 100%);opacity:0.2;position:absolute}.trapezoidalTopOrBottomAnimation{bottom:0;width:100%;left:0;animation:animateTop 1s both}.trapezoidalLeftOrRightAnimation{top:0;right:0;height:100%;animation:animateLeft 1s both}@keyframes animateTop{0%{height:0}100%{height:100%}}@keyframes animateLeft{0%{width:0}100%{width:100%}}@keyframes visibility{0%{visibility:hidden}100%{visibility:visible}}.card-item-container{transition:opacity 0.5s}.status-normal-card{box-shadow:0 0 100px rgba(80,255,255,0.58);border:1px solid rgba(80,255,255,0.58);background:-webkit-gradient(liner,left top,left bottom,from(#002c8d),to(#00123e));background:linear-gradient(to bottom,rgba(80,255,255,1) 0%,rgba(80,255,255,0) 100%)}.status-warning-card{box-shadow:0 0 100px #cc0066;background:-webkit-gradient(liner,left top,left bottom,from(#cc0066),to(rgba(204,0,102,0.2)));background:linear-gradient(to bottom,#cc0066 0%,rgba(204,0,102,0.2) 100%)}',""]);const l=i.toString()},9214:(e,t,r)=>{r.d(t,{Z:()=>l});var a=r(9601),n=r.n(a),o=r(2609),i=r.n(o)()(n());i.push([e.id,":host{display:inline-block;width:100%;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.card-item-container{position:relative;width:100%;height:100%}.card-item{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center;border-radius:var(--no-border-radius);border-color:transparent;transition:border-color 0.5s}.status-normal:hover{box-shadow:0 0 100px rgba(80,255,255,0.58);border:1px solid rgba(80,255,255,0.58);background:-webkit-gradient(liner,left top,left bottom,from(#002c8d),to(#00123e));background:linear-gradient(to bottom,rgba(80,255,255,1) 0%,rgba(80,255,255,0) 100%)}.status-warning:hover{box-shadow:0 0 100px #CC0066;background:-webkit-gradient(liner,left top,left bottom,from(#CC0066),to(rgba(204,0,102,0.2)));background:linear-gradient(to bottom,#CC0066 0%,rgba(204,0,102,0.2) 100%)}.card-item-container.status-normal .card-item{background:var(--color-fill-bg-base-4);box-shadow:inset 0px 1px 2px 0px rgba(255,255,255,0.45)}.card-item-container.status-normal:hover .card-item{border:2px solid rgba(80,255,255,0.58)}.card-item-container.status-warning .card-item{background:linear-gradient(180deg,#CC0066 0%,rgba(204,0,102,0.2) 100%);box-shadow:inset 0px 2px 6px 0px rgba(255,255,255,0.65)}.card-item-container.status-warning:hover .card-item{border:none}.card-item-text-container{width:100%;padding:0 12px}.card-item-title,\n.card-item-description{font-size:20px;font-weight:var(--font-weight-500);color:var(--color-normal-text)}.card-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-item-description{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}",""]);const l=i.toString()},8384:(e,t,r)=>{r.d(t,{Z:()=>l});var a=r(9601),n=r.n(a),o=r(2609),i=r.n(o)()(n());i.push([e.id,":host{display:inline-block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.relation-line{position:relative;width:6px;height:100%;background:var(--color-text-divider-line-1);overflow:hidden}.relation-line::after{content:'';position:absolute;width:100%;height:20%;left:0px;top:0px;animation:lightMove 1000ms ease-in-out infinite,lightOpacity 1000ms ease-in-out infinite}.relation-line.light-color-blue::after{background:linear-gradient(rgba(80,255,255,0) 0%,rgba(80,255,255,1) 90%,#DFFFFF 100%)}.relation-line.light-color-purple::after{background:linear-gradient(rgba(102,0,255,0) 0%,rgba(102,0,255,1) 90%,#B07BFF 100%)}@keyframes lightMove{0%{top:0;transform:translateY(-100%)}100%{top:100%;transform:translateY(0)}}@keyframes lightOpacity{0%{opacity:0}20%{opacity:1}80%{opacity:1}100%{opacity:0}}",""]);const l=i.toString()},9948:(e,t,r)=>{r.d(t,{Z:()=>l});var a=r(9601),n=r.n(a),o=r(2609),i=r.n(o)()(n());i.push([e.id,":host{display:inline-block}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.wrapper{position:relative;width:100%;height:100%;padding:30px 24px 35px;left:0;display:flex;flex-direction:column;border-radius:var(--no-border-radius)}.cardName{font-size:var(--title-font-size-strong);line-height:22px;text-align:center;font-weight:var(--font-weight-500);color:var(--color-normal-text);text-shadow:0 1px 4px rgba(51,102,255,0.5);margin-bottom:35px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.descriptions{flex:1;margin-bottom:20px;font-size:var(--auxiliary-font-size-small);overflow:auto;font-weight:var(--font-weight-400)}.descriptionsItem .itemKey{color:var(--color-secondary-text)}.descriptionsItem .itemValue{color:var(--color-strong-text)}.descriptionsItem{display:flex;gap:10px;margin-bottom:12px}.descriptionsItem>div{flex:1;text-align:left;word-break:break-all}.buttonContent{position:absolute;bottom:16px;right:24px;font-size:var(--auxiliary-font-size);color:#99CCFF;cursor:pointer;font-weight:var(--font-weight-500)}.buttonName{margin-left:5px}",""]);const l=i.toString()},1043:(e,t,r)=>{r.d(t,{Z:()=>l});var a=r(9601),n=r.n(a),o=r(2609),i=r.n(o)()(n());i.push([e.id,":host{--palette-rgba-white-1:rgba(255,255,255,10%);--palette-rgba-white-2:rgba(255,255,255,20%);--palette-rgba-white-3:rgba(255,255,255,30%);--palette-rgba-white-4:rgba(255,255,255,40%);--palette-rgba-white-5:rgba(255,255,255,50%);--palette-rgba-white-6:rgba(255,255,255,60%);--palette-rgba-white-7:rgba(255,255,255,70%);--palette-rgba-white-8:rgba(255,255,255,80%);--palette-rgba-white-9:rgba(255,255,255,90%);--palette-rgba-white-10:rgba(255,255,255,100%);--palette-rgba-gray-1:rgba(0,0,0,10%);--palette-rgba-gray-2:rgba(0,0,0,20%);--palette-rgba-gray-3:rgba(0,0,0,30%);--palette-rgba-gray-4:rgba(0,0,0,40%);--palette-rgba-gray-5:rgba(0,0,0,50%);--palette-rgba-gray-6:rgba(0,0,0,60%);--palette-rgba-gray-7:rgba(0,0,0,70%);--palette-rgba-gray-8:rgba(0,0,0,80%);--palette-rgba-gray-9:rgba(0,0,0,90%);--palette-rgba-gray-10:rgba(0,0,0,100%);--palette-rgba-blue-gray-2:rgba(101,106,134,20%);--palette-rgba-blue-gray-3:rgba(101,106,134,30%);--palette-rgba-blue-gray-8:rgba(101,106,134,80%);--palette-tech-blue-4-channel:67,127,255;--palette-tech-blue-4:rgb(var(--palette-tech-blue-4-channel));--palette-tech-blue-6-channel:51,102,255;--palette-tech-blue-6:rgb(var(--palette-tech-blue-6-channel));--palette-tech-blue-8-channel:40,69,159;--palette-tech-blue-8:rgb(var(--palette-tech-blue-8-channel));--palette-sea-green-4-channel:131,245,225;--palette-sea-green-4:rgb(var(--palette-sea-green-4-channel));--palette-green-6-channel:81,235,73;--palette-green-6:rgb(var(--palette-green-6-channel));--palette-green-2:rgba(var(--palette-green-6-channel),20%);--palette-lotus-pink-7-channel:204,0,102;--palette-lotus-pink-7:rgb(var(--palette-lotus-pink-7-channel));--palette-red-6-channel:242,39,39;--palette-red-6:rgb(var(--palette-red-6-channel));--palette-red-2:rgba(var(--palette-red-6-channel),20%);--color-fill-global-bg:#0f1014;--color-fill-bg-container-1:var(--palette-rgba-white-1);--color-fill-bg-container-2:var(--palette-rgba-blue-gray-2);--color-fill-bg-container-3:var(--palette-rgba-blue-gray-8);--color-fill-bg-base-1:var(--palette-rgba-blue-gray-2);--color-fill-bg-base-2:rgba(15,16,20,0%);--color-fill-bg-base-3:rgba(0,0,0,20%);--color-fill-bg-base-4:rgba(40,46,58,100%);--color-fill-bg-base-5:rgba(19,25,47,80%);--color-fill-bg-base-6:var(--palette-rgba-blue-gray-3);--color-brand:var(--palette-tech-blue-6);--color-brand-hover:var(--palette-tech-blue-4);--color-brand-active:var(--palette-tech-blue-8);--color-contrast-1:var(--palette-sea-green-4);--color-error:var(--palette-red-6);--color-error-bg:var(--palette-red-2);--color-success:var(--palette-green-6);--color-success-bg:var(--palette-green-2);--color-header-text-big:var(--palette-rgba-white-10);--color-header-text:var(--palette-rgba-white-10);--color-normal-text:var(--palette-rgba-white-10);--color-strong-text:var(--palette-rgba-white-9);--color-auxiliary-text:var(--palette-rgba-white-8);--color-secondary-text:var(--palette-rgba-white-6);--color-disabled-text:var(--palette-rgba-white-4);--color-border-divider-line:var(--palette-rgba-white-1);--color-text-divider-line-1:var(--palette-rgba-white-2);--color-text-divider-line-2:var(--palette-rgba-white-2);--small-border-radius:2px;--medius-border-radius:5px;--larger-border-radius:12px;--container-border-radius:9999px;--no-border-radius:0px;--mask-bg:var(--palette-rgba-gray-7);--title-font-size-larger:30px;--title-font-size-strong:22px;--title-font-size:18px;--normal-font-size:14px;--auxiliary-font-size:16px;--auxiliary-font-size-small:12px;--overview-data-font-size:34px;--statistics-data-font-size:28px;--normal-data-font-size-larger:20px;--normal-data-font-size:16px;--chart-legend-font-size:12px;--chart-tooltips-font-size-1:12px;--chart-tooltips-font-size-2:12px;--chart-axis-x-font-size:12px;--chart-axis-x-font-size-larger:14px;--chart-axis-y-font-size:12px;--chart-axis-y-font-size-larger:14px;--font-weight-600:600;--font-weight-500:500;--font-weight-400:400;--text-shadow:0px 1px 4px #2863ee;--border-width-base:1px;--border-width-double-base:2px;--border-width-tribble-base:3px;--punctate-width-base:1px;--paragraph-width-base:1px;--button-text-color:#40d0db}",""]);const l=i.toString()}}]);
|
|
2
|
-
//# sourceMappingURL=8442.aba7a46f.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/8442.aba7a46f.js","mappings":"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","sources":["webpack:///./src/app-wall/utils.ts","webpack:///./src/app-wall/app-wall.tsx","webpack:///./src/app-wall/app-wall.shadow.css","webpack:///./src/app-wall/card-item/card-item.shadow.css","webpack:///./src/app-wall/relation-line/relation-line.shadow.css","webpack:///./src/app-wall/system-card/system-card.shadow.css","webpack:///./src/data-view-variables.shadow.css"],"sourcesContent":["import {\n Vector3,\n Object3D,\n Quaternion,\n Vector3Tuple,\n PerspectiveCamera,\n} from \"three\";\nimport { CSS3DObject } from \"three/addons/renderers/CSS3DRenderer.js\";\nimport \"./card-item/index.js\";\nimport \"./relation-line/index.js\";\nimport \"./system-card/index.js\";\nimport type { AppWallCardItemProps } from \"./card-item/index.js\";\nimport type {\n AppWallRelationLine,\n AppWallRelationLineProps,\n} from \"./relation-line/index.js\";\nimport type { SystemCardProps } from \"./system-card/index.js\";\nimport {\n TrapezoidalObjectProps,\n TrapezoidalProps,\n bounds,\n CardSize,\n DistanceConfig,\n Position,\n Target,\n Ele,\n AppWallCardBrickNameType,\n} from \"./interface.js\";\nimport { CabinetThumbnail } from \"../cabinet/cabinet-thumbnail/index.jsx\";\nimport { SimpleCardItemProps } from \"../simple-card-item/index.js\";\n\nexport interface AppData {\n key: string;\n status: \"normal\" | \"warning\";\n cardItemProps: AppWallCardItemProps & SimpleCardItemProps;\n systemCardProps: SystemCardProps;\n trapezoidalProps: TrapezoidalProps;\n}\n\nexport type Relation = {\n source: string;\n target: string;\n};\n\nexport interface UserData {\n appData: AppData;\n elementStyle: {\n width: number;\n height: number;\n };\n turningStyle: {\n width: number;\n height: number;\n };\n systemCardStyle: {\n width: number;\n height: number;\n };\n hoverStyle: {\n width: number;\n height: number;\n };\n cardItemObject3D: {\n curve: Object3D;\n flat: Object3D;\n hover: Object3D;\n clickTurn: Object3D;\n };\n systemCardObject3D: {\n clickTurn: Object3D;\n front: Object3D;\n };\n}\nexport const createRelationLine = (\n sourceVector: Vector3,\n targetVector: Vector3,\n lightColor: AppWallRelationLineProps[\"lightColor\"]\n): CSS3DObject => {\n const subVector = new Vector3().subVectors(targetVector, sourceVector);\n const lineLength = subVector.length();\n\n const lineElement = document.createElement(\n \"data-view.app-wall-relation-line\"\n ) as AppWallRelationLine;\n lineElement.style.height = `${lineLength}px`;\n lineElement.classList.add(\"relation-line\");\n lineElement.lightColor = lightColor;\n const lineObject = new CSS3DObject(lineElement);\n\n const centerVector = new Vector3().lerpVectors(\n sourceVector,\n targetVector,\n 0.5\n );\n lineObject.position.copy(centerVector);\n // lineObject.lookAt(new Vector3(0, 0, 10).add(centerVector));\n // lineObject.lookAt(new Vector3(0, 10000, 0));\n\n const quaternion = new Quaternion().setFromUnitVectors(\n new Vector3(0, 1, 0).normalize(),\n subVector.clone().normalize()\n );\n lineObject.setRotationFromQuaternion(quaternion);\n\n return lineObject;\n};\n\nexport const getCenterPointOrSubPoint = (\n start: Vector3Tuple,\n end: Vector3Tuple\n) => {\n const pointA = new Vector3(start[0], start[1], start[2]);\n const pointB = new Vector3(end[0], end[1], end[2]);\n return {\n centerVector: new Vector3().lerpVectors(pointA, pointB, 0.5), //中心点坐标\n subVector: new Vector3().subVectors(pointA, pointB), // a-b向量\n };\n};\nexport const createTrapezoidalRightOrLeftElement = (props: {\n BW: number;\n TW: number;\n d: number;\n TH: number;\n BH: number;\n isLeft: boolean;\n}): CSS3DObject => {\n const { BW, TW, d, TH, BH, isLeft } = props;\n const height = Math.sqrt(Math.pow(TW / 2 - BW / 2, 2) + Math.pow(d, 2)); //斜边\n const wrapper = document.createElement(\"div\");\n wrapper.style.cssText = `\n width: ${height}px;\n height:${TH}px;\n position: relative;\n clip-path: polygon(0 0, ${height}px ${\n TH / 2 - BH / 2\n }px, ${height}px ${TH / 2 - BH / 2 + BH}px, 0 ${TH}px);\n `;\n const cantCard = document.createElement(\"div\");\n cantCard.className = \"trapezoidalLeftOrRightAnimation\";\n wrapper.appendChild(cantCard);\n const start: Vector3Tuple = isLeft ? [-BW / 2, 0, 0] : [BW / 2, 0, 0];\n const end: Vector3Tuple = isLeft ? [-TW / 2, 0, d] : [TW / 2, 0, d];\n const objectCantModel = new CSS3DObject(wrapper);\n const { centerVector, subVector } = getCenterPointOrSubPoint(start, end);\n objectCantModel.position.copy(centerVector);\n const quaternion = new Quaternion().setFromUnitVectors(\n new Vector3(1, 0, 0).normalize(),\n subVector.clone().normalize()\n );\n objectCantModel.setRotationFromQuaternion(quaternion);\n return objectCantModel;\n};\n\nexport const createTrapezoidalTopOrBottomElement = (props: {\n BW: number;\n TW: number;\n d: number;\n TH: number;\n BH: number;\n isTop: boolean;\n}): CSS3DObject => {\n const { BW, TW, d, TH, BH, isTop } = props;\n const height = Math.sqrt(Math.pow(TH / 2 - BH / 2, 2) + Math.pow(d, 2)); //斜边\n const wrapper = document.createElement(\"div\");\n wrapper.style.cssText = `\n width: ${TW}px;\n height:${height}px;\n position: relative;\n clip-path: polygon(0 0, ${TW}px 0, ${\n TW / 2 - BW / 2 + BW\n }px ${height}px, ${TW / 2 - BW / 2}px ${height}px);\n `;\n const cantCard = document.createElement(\"div\");\n cantCard.className = \"trapezoidalTopOrBottomAnimation\";\n wrapper.appendChild(cantCard);\n const objectCantModel = new CSS3DObject(wrapper);\n const start: Vector3Tuple = isTop ? [0, -BH / 2, 0] : [0, BH / 2, 0];\n const end: Vector3Tuple = isTop ? [0, -TH / 2, d] : [0, TH / 2, d];\n const { centerVector, subVector } = getCenterPointOrSubPoint(start, end);\n objectCantModel.position.copy(centerVector);\n const topQuaternion = new Quaternion().setFromUnitVectors(\n new Vector3(0, -1, 0).normalize(),\n subVector.clone().normalize()\n );\n objectCantModel.setRotationFromQuaternion(topQuaternion);\n return objectCantModel;\n};\n/**\n * 创建梯台模型\n * @param props\n * @returns\n */\nexport const createTrapezoidalObject = (props: TrapezoidalObjectProps) => {\n const {\n objectData,\n leftBtnName,\n clusters,\n columns,\n leftOnClick,\n rightBtnName,\n rightOnClick,\n appName,\n } = props;\n const d = 600;\n const container = document.createElement(\"div\");\n const objectContainer = new CSS3DObject(container);\n objectContainer.position.set(...objectData.point);\n // 模型为梯形 , 底部和顶部的宽高成一定的比例计算, bw: tw = 1:11; bh:th= 1:4.5\n const BW: number = objectData.width,\n BH: number = objectData.height,\n TW = 1500,\n TH = 1200;\n // 底部\n const bottomCard = document.createElement(\"div\");\n bottomCard.style.cssText = `\n width: ${BW}px;\n height: ${BH}px;\n box-shadow: inset 0px 1px 2px 0px rgba(255,255,255,0.45);\n border: 1px solid rgba(118,255,255,0.58);\n padding: 16px;\n `;\n const objectBottomModel = new CSS3DObject(bottomCard);\n objectBottomModel.position.z = 0;\n objectContainer.add(objectBottomModel);\n\n // 顶部\n const topCard = document.createElement(\"div\");\n topCard.style.cssText = `\n width: ${TW}px;\n height:${TH}px;\n background: linear-gradient(rgb(13, 54, 179,0.6) 0%, rgb(74, 108, 156,0.6) 100%);\n box-sizing: border-box;\n padding: 16px;\n `;\n const thumbnailEle = document.createElement(\n \"data-view.cabinet-thumbnail\"\n ) as CabinetThumbnail;\n thumbnailEle.clusters = clusters ?? [];\n thumbnailEle.columns = columns ?? 4;\n thumbnailEle.appName = appName;\n topCard.className = \"visibilityAnimate\";\n topCard.appendChild(thumbnailEle);\n const objectTopModel = new CSS3DObject(topCard);\n objectTopModel.position.set(0, 0, d);\n\n const objectCantLeftModel = createTrapezoidalRightOrLeftElement({\n BW,\n TW,\n BH,\n TH,\n d,\n isLeft: true,\n }); //斜面右边\n const objectCantRightModel = createTrapezoidalRightOrLeftElement({\n BW,\n TW,\n BH,\n TH,\n d,\n isLeft: false,\n }); //斜面右边\n const objectCantTopModel = createTrapezoidalTopOrBottomElement({\n BW,\n TW,\n BH,\n TH,\n d,\n isTop: true,\n }); //斜面前边\n const objectCantBottomModel = createTrapezoidalTopOrBottomElement({\n BW,\n TW,\n BH,\n TH,\n d,\n isTop: false,\n }); //斜面后面\n objectContainer.add(\n objectCantLeftModel,\n objectCantRightModel,\n objectCantBottomModel,\n objectCantTopModel\n );\n if (leftBtnName) {\n const btnLeft = document.createElement(\"div\");\n btnLeft.style.cssText = `\n color: #6BE0FA;\n font-size: 28px;\n font-weight: 500;\n width: ${TW / 2}px;\n line-height: 16px;\n `;\n btnLeft.className = \"visibilityAnimate\";\n const wordNode = document.createElement(\"span\");\n wordNode.style.cursor = \"pointer\";\n wordNode.innerText = leftBtnName;\n btnLeft.appendChild(wordNode);\n const btnLeftObject = new CSS3DObject(btnLeft);\n btnLeftObject.position.set(-TW / 4 + 10, -TH / 2, 14);\n btnLeftObject.rotateX(Math.PI / 2);\n objectTopModel.add(btnLeftObject);\n wordNode.onpointerdown = leftOnClick;\n }\n if (rightBtnName) {\n const btnRight = document.createElement(\"div\");\n btnRight.style.cssText = `\n color: #FFFFFF;\n font-size: 30px;\n font-weight: 500;\n width: ${TW / 2}px;\n text-shadow: 0px 1px 4px #3366FF;\n text-align: right;\n `;\n btnRight.className = \"visibilityAnimate\";\n const textNode = document.createElement(\"span\");\n textNode.style.cursor = \"pointer\";\n textNode.innerText = rightBtnName;\n\n btnRight.appendChild(textNode);\n const btnRightObject = new CSS3DObject(btnRight);\n btnRightObject.position.set(TW / 4 - 10, -TH / 2, 14);\n btnRightObject.rotateX(Math.PI / 2);\n objectTopModel.add(btnRightObject);\n textNode.onpointerdown = rightOnClick;\n }\n objectContainer.add(objectTopModel);\n return objectContainer;\n};\n/**\n * 布局计算\n * @param dataSource\n * @param maxX\n * @param maxY\n * @returns\n */\nexport const setAppPosition = (\n dataSource: AppData[],\n maxX: number,\n maxY: number\n) => {\n if (!dataSource?.length) return [];\n let appData: Target[] = dataSource.map((d) => ({ ...d, x: 0, y: 0 }));\n if (appData.length === maxX * maxY) {\n appData = appData.map((d, i) => ({\n ...d,\n x: (i % maxX) + 1,\n y: parseInt(`${i / maxX}`) + 1,\n }));\n } else {\n const offset = maxX * (maxY - 1);\n const leng = appData.length - offset;\n for (let d = 0; d < offset; d++) {\n const u = appData[d];\n u.x = (d % maxX) + 1;\n u.y = parseInt(`${d / maxX}`) + 1;\n }\n for (let h = 0; h < leng / 2; h++) {\n const g = appData[h + offset],\n m = appData[appData.length - 1 - h];\n g.x = h + 1;\n g.y = maxY;\n if (g !== m) {\n m.x = maxX - h;\n m.y = maxY;\n }\n }\n }\n return appData;\n};\nexport const createTableTarget = (\n data: Target,\n cardSize: CardSize,\n maxX: number,\n maxY: number\n) => {\n const object3D = new Object3D();\n object3D.position.x =\n data.x * cardSize.outerWidth - (maxX / 2 + 0.5) * cardSize.outerWidth;\n object3D.position.y =\n -data.y * cardSize.outerHeight + (maxY / 2 + 0.5) * cardSize.outerHeight;\n return object3D;\n};\n\nexport const computeCurvePosition = (\n data: Target,\n cardSize: CardSize,\n maxX: number,\n maxY: number,\n angle: number\n) => {\n const position: Position = {\n x: 0,\n y: 0,\n z: 0,\n },\n n = parseInt(`${maxX * cardSize.outerWidth * 180}`) / (angle * Math.PI),\n a = maxX / 2 + 0.5;\n position.x = n * Math.sin(Math.PI / (180 / ((data.x - a) * (angle / maxX))));\n position.y =\n -data.y * cardSize.outerHeight + (maxY / 2 + 0.5) * cardSize.outerHeight;\n position.z = n - Math.sqrt(n * n - position.x * position.x);\n return position;\n};\nexport const createCurveTarget = (\n data: Target,\n cardSize: CardSize,\n maxX: number,\n maxY: number,\n angle: number,\n radius: number\n) => {\n const object3D = new Object3D();\n const vector = new Vector3();\n const position = computeCurvePosition(data, cardSize, maxX, maxY, angle);\n object3D.position.x = position.x;\n object3D.position.y = position.y;\n object3D.position.z = position.z;\n vector.x = 0;\n vector.y = object3D.position.y;\n vector.z = radius;\n object3D.lookAt(vector);\n return object3D;\n};\nexport const computeCameraDistance = (\n camera: PerspectiveCamera,\n bounds: bounds,\n distanceConfig: DistanceConfig[],\n length: number\n) => {\n const n = bounds.height + 2 * bounds.margin,\n a = (bounds.width + 2 * bounds.margin) / camera.aspect,\n i =\n (0.5 * Math.max(a, n)) / Math.tan((camera.fov * Math.PI) / 360) +\n bounds.z;\n let o = 0;\n distanceConfig.forEach(function (t) {\n length >= Math.min.apply(null, t.numRange) &&\n length <= Math.max.apply(null, t.numRange) &&\n (o = t.distance);\n });\n return Math.max(o, i);\n};\nexport const getAppRelations = (\n object: CSS3DObject,\n relationsData: Relation[]\n) => {\n const relations: Relation[] = [];\n const userData = object.userData;\n Array.isArray(relationsData) &&\n relationsData.length &&\n relationsData.forEach(function (i) {\n (userData.key !== i.source && userData.key !== i.target) ||\n relations.push(i);\n });\n return relations;\n};\nexport const findElementByEvent = (\n e: MouseEvent,\n tagName: AppWallCardBrickNameType\n) => {\n const _targetName = tagName.toUpperCase();\n const path = (e.composedPath() as Element[]).find(\n (node) => node?.shadowRoot\n ) as Ele;\n if (path?.tagName === _targetName) return path;\n const customEle = document.elementFromPoint(e.clientX, e.clientY);\n const target = customEle?.shadowRoot.elementFromPoint(\n e.clientX,\n e.clientY\n ) as Ele;\n if (target?.tagName === _targetName) return target;\n return null;\n};\n","import React, {\n ReactElement,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { debounce } from \"lodash\";\nimport { MathUtils, Object3D, PerspectiveCamera, Scene } from \"three\";\nimport {\n CSS3DObject,\n CSS3DRenderer,\n} from \"three/addons/renderers/CSS3DRenderer.js\";\nimport { TrackballControls } from \"three/addons/controls/TrackballControls.js\";\nimport TWEEN, { Tween, Easing } from \"@tweenjs/tween.js\";\nimport type { AppWallProps } from \"./index.jsx\";\nimport {\n AppWallCardBrickEleType,\n BaseConfig,\n CardSize,\n DistanceConfig,\n Ele,\n Position,\n RegisterEvents,\n Target,\n Targets,\n} from \"./interface.js\";\nimport {\n AppData,\n computeCameraDistance,\n createCurveTarget,\n createTableTarget,\n createTrapezoidalObject,\n setAppPosition,\n createRelationLine,\n getAppRelations,\n findElementByEvent,\n} from \"./utils.js\";\n\nimport \"./card-item/index.js\";\nimport { SystemCard, SystemCardProps } from \"./system-card/index.jsx\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport classNames from \"classnames\";\nconst distanceConfig: DistanceConfig[] = [\n {\n numRange: [0, 40],\n distance: 3000,\n },\n {\n numRange: [40, 60],\n distance: 2200,\n },\n {\n numRange: [60, 80],\n distance: 2700,\n },\n {\n numRange: [80, 120],\n distance: 3200,\n },\n {\n numRange: [120, 160],\n distance: 3400,\n },\n {\n numRange: [160, 300],\n distance: 3600,\n },\n];\nconst fov = 45;\nconst angle = 100;\nconst panelSpace = 300;\n\nconst getViewBounds = (\n length: number,\n cardSize: CardSize,\n margin: number,\n aspectH: number\n) => {\n const maxX = Math.ceil(\n Math.sqrt((length * cardSize.outerHeight) / (aspectH * cardSize.outerWidth))\n );\n const maxY = Math.ceil(length / maxX);\n const radius =\n parseInt(`${maxX * cardSize.outerWidth * 180}`) / (angle * Math.PI);\n const width =\n 2 * radius * Math.sin((Math.PI * (angle / 2)) / 180) + cardSize.outerWidth;\n const height = maxY * cardSize.outerHeight;\n const z = radius - radius * Math.cos((Math.PI * (angle / 2)) / 180);\n return {\n maxX,\n maxY,\n radius,\n bounds: {\n width,\n height,\n margin,\n z,\n },\n };\n};\n\nconst WrappedSystemCard = wrapBrick<SystemCard, SystemCardProps>(\n \"data-view.app-wall-system-card\"\n);\n\nexport function AppWallElement(props: AppWallProps): ReactElement {\n const {\n relations,\n onSystemCardButtonClick,\n useDblclick,\n useDistanceConfig,\n handleCardDbClick,\n rightBtnOnClick,\n leftBtnOnClick,\n cardBrickName,\n cardSize,\n disabledDefaultClickEvent,\n handleCardClick,\n containerId,\n noRotate,\n boundMargin,\n } = props;\n const [curClickCardItemAppData, setCurClickCardItemAppData] =\n useState<AppData>(null);\n\n const containerRef = useRef<HTMLDivElement>();\n const appwallRef = useRef<HTMLDivElement>();\n const closeBtnRef = useRef<HTMLDivElement>();\n const maskRef = useRef<HTMLDivElement>();\n const systemCardRef = useRef<SystemCard>();\n\n const rendererRef = useRef<CSS3DRenderer>();\n const sceneRef = useRef<Scene>();\n const cameraRef = useRef<PerspectiveCamera>();\n const controlsRef = useRef<TrackballControls>();\n const graph3DViewRef = useRef<CSS3DObject>(); // 梯形模型\n const targetsRef = useRef<Targets>({\n table: [],\n curve: [],\n });\n const objectsRef = useRef<CSS3DObject[]>([]);\n const lineCiCodesRef = useRef<CSS3DObject[]>([]);\n const hoverScaleRef = useRef<number>(1.15);\n\n const configRef = useRef<BaseConfig>({\n maxX: 0,\n maxY: 0,\n radius: 0,\n bounds: {\n width: 0,\n height: 0,\n margin: boundMargin,\n z: 0,\n },\n });\n const registerEvents = useRef<RegisterEvents>({\n element: null,\n mouseoverTimer: null,\n mouseoutTimer: null,\n clickTimer: null,\n dblClickTimer: null,\n isShowGraph3D: false,\n isShowAppInfo: false,\n isShowRelations: false,\n enable: true, //是否可以触发事件\n });\n\n const render = useCallback(() => {\n rendererRef.current.render(sceneRef.current, cameraRef.current);\n controlsRef.current.maxDistance =\n configRef.current.bounds.z + configRef.current.radius;\n controlsRef.current.handleResize();\n }, []);\n\n const updateViewBounds = (length: number) => {\n configRef.current = getViewBounds(\n length,\n cardSize,\n boundMargin,\n 1 / cameraRef.current.aspect\n );\n };\n\n const init = () => {\n const containerRect = document\n .getElementById(containerId)\n ?.getBoundingClientRect();\n const width = containerRect?.width || window.innerWidth;\n const height = containerRect?.height || window.innerHeight;\n const aspect = width / height;\n const scene = new Scene();\n const camera = new PerspectiveCamera(fov, aspect, 0.1, 10000);\n\n const renderer = new CSS3DRenderer();\n renderer.setSize(width, height);\n appwallRef.current.replaceChildren(renderer.domElement);\n\n const controls = new TrackballControls(camera, renderer.domElement);\n controls.rotateSpeed = 0.5;\n controls.minDistance = 500;\n controls.maxDistance = 10000;\n controls.noRotate = noRotate;\n\n sceneRef.current = scene;\n cameraRef.current = camera;\n controlsRef.current = controls;\n rendererRef.current = renderer;\n };\n\n const createView = (table: Target[]) => {\n table.forEach((data, i) => {\n const element = document.createElement(\n cardBrickName\n ) as AppWallCardBrickEleType & Ele;\n element.status = data.status;\n element.cardTitle = data.cardItemProps?.cardTitle;\n element.description = data.cardItemProps?.description;\n element.background = data.cardItemProps?.background;\n element.color = data.cardItemProps?.color;\n element.titleStyle = data.cardItemProps?.titleStyle;\n element.desStyle = data.cardItemProps?.desStyle;\n element.descriptionList = data.cardItemProps?.descriptionList;\n const statusClass = `status-${data?.status || \"normal\"}`;\n element.className = `card-item-container ${statusClass}`;\n element.style.width = `${cardSize.width}px`;\n element.style.height = `${cardSize.height}px`;\n element.classList.add(\"card-item-wrap\");\n // 随机进入\n const objectCSS = new CSS3DObject(element);\n objectCSS.position.set(\n 4e3 * Math.random() - 2e3,\n 4e3 * Math.random() - 2e3,\n 4e3 * Math.random() - 2e3\n );\n\n sceneRef.current.add(objectCSS);\n objectsRef.current.push(objectCSS);\n\n const table = createTableTarget(\n data,\n cardSize,\n configRef.current.maxX,\n configRef.current.maxY\n );\n targetsRef.current.table.push(table);\n const curve = createCurveTarget(\n data,\n cardSize,\n configRef.current.maxX,\n configRef.current.maxY,\n angle,\n configRef.current.radius\n );\n targetsRef.current.curve.push(curve);\n\n objectCSS.userData = data;\n element.__objectCSS = objectCSS;\n element.__userData = data;\n element.__curve = curve;\n });\n };\n\n const createRelationLines = (object: CSS3DObject) => {\n const curRelations = getAppRelations(object, relations);\n const userData = object.userData;\n let lineObject: CSS3DObject, lineTarget: CSS3DObject;\n curRelations?.forEach((relation) => {\n if (relation.source === userData.key) {\n //获取目标target CSS3DObject\n lineTarget = objectsRef.current.find(\n (o) => o.userData.key === relation.target\n );\n lineObject =\n lineTarget &&\n createRelationLine(object.position, lineTarget.position, \"blue\");\n } else {\n lineTarget = objectsRef.current.find(\n (o) => o.userData.key === relation.source\n );\n lineObject =\n lineTarget &&\n createRelationLine(lineTarget.position, object.position, \"purple\");\n }\n if (!lineObject) return;\n lineCiCodesRef.current.push(lineObject);\n sceneRef.current.add(lineObject);\n });\n objectsRef.current?.forEach((item) => {\n if (\n object != item &&\n curRelations.every(\n (r) => r.source != item.userData.key && r.target != item.userData.key\n )\n ) {\n item.element.style.opacity = \"0.2\";\n }\n });\n };\n\n const showElementBetweenRelation = (target: Ele) => {\n const { __objectCSS, __userData } = target;\n const rotationY = __objectCSS.rotation.y;\n const currentEleRect = __objectCSS.element.getBoundingClientRect();\n const position: Position = {\n x: __objectCSS.position.x + 50 * Math.sin(rotationY),\n y: __objectCSS.position.y + 15,\n z: __objectCSS.position.z + 100 * Math.cos(rotationY),\n };\n const scale =\n currentEleRect.width >= cardSize.width\n ? hoverScaleRef.current\n : Math.min(\n cardSize.width / currentEleRect.width,\n cardSize.height / currentEleRect.height\n ),\n duration = 100;\n registerEvents.current.isShowRelations = true;\n new Tween(__objectCSS.rotation)\n // .to(\n // {\n // x: 0,\n // y: 0,\n // z: 0,\n // },\n // duration\n // )\n .onStart(() => {\n cardBrickName === \"data-view.app-wall-card-item\" &&\n __objectCSS.element.classList.add(\n `status-${__userData.status || \"normal\"}-card`\n );\n })\n .start();\n new Tween(__objectCSS.scale)\n .to(\n {\n x: scale,\n y: scale,\n z: scale,\n },\n duration\n )\n .start();\n new Tween(__objectCSS.position)\n .to(position, duration)\n .onUpdate(render)\n .onComplete(function () {\n //创建连线\n createRelationLines(__objectCSS);\n render();\n registerEvents.current.element = target;\n })\n .start();\n };\n\n const restoreElementState = (onComplete?: (ele?: Ele) => void) => {\n if (!registerEvents.current?.element) return onComplete?.();\n const {\n __objectCSS,\n __curve: object3d,\n __userData,\n } = registerEvents.current.element;\n const duration = 100;\n\n new Tween(__objectCSS.rotation)\n .to(\n {\n x: object3d.rotation.x,\n y: object3d.rotation.y,\n z: object3d.rotation.z,\n },\n duration\n )\n .start();\n new Tween(__objectCSS.scale)\n .to(\n {\n x: 1,\n y: 1,\n z: 1,\n },\n duration\n )\n .start();\n new Tween(__objectCSS.position)\n .to(\n {\n x: object3d.position.x,\n y: object3d.position.y,\n z: object3d.position.z,\n },\n duration\n )\n .onUpdate(render)\n .onStart(() => {\n cardBrickName === \"data-view.app-wall-card-item\" &&\n __objectCSS.element.classList.remove(\n `status-${__userData.status || \"normal\"}-card`\n );\n objectsRef.current?.forEach((item) => {\n item.element.style.opacity = \"1\";\n });\n lineCiCodesRef.current.forEach((lineObject) => {\n sceneRef.current.remove(lineObject);\n });\n lineCiCodesRef.current = [];\n render();\n })\n .onComplete(() => {\n registerEvents.current.isShowRelations = false;\n onComplete?.(registerEvents.current?.element);\n })\n .start();\n };\n\n const transform = (targets: Object3D[], duration: number) => {\n registerEvents.current.enable = false;\n for (let i = 0; i < objectsRef.current.length; i++) {\n const object = objectsRef.current[i];\n const target = targets[i];\n\n new Tween(object.position)\n .to(\n {\n x: target.position.x,\n y: target.position.y,\n z: target.position.z,\n },\n MathUtils.randFloat(duration, duration * 2)\n )\n .easing(Easing.Exponential.InOut)\n .start();\n\n new Tween(object.rotation)\n .to(\n {\n x: target.rotation.x,\n y: target.rotation.y,\n z: target.rotation.z,\n },\n MathUtils.randFloat(duration, duration * 2)\n )\n .easing(Easing.Exponential.InOut)\n .start();\n }\n\n new Tween({})\n .to({}, duration * 2)\n .onUpdate(render)\n .start()\n .onComplete(() => {\n registerEvents.current.enable = true;\n });\n };\n\n const handeReset = () => {\n TWEEN.removeAll();\n const o = {\n opacity: 1,\n },\n e = new Tween({\n z: 0,\n }),\n n = new Tween(o),\n a = new Tween(cameraRef.current.position),\n i = new Tween(controlsRef.current.target),\n r = new Tween({\n blur: 1500,\n spread: 100,\n });\n e.to(\n {\n z: panelSpace,\n },\n 1e3\n ).chain(a, i, r);\n n.to(\n {\n opacity: 0,\n },\n 1e3\n )\n .onStart(() => {\n sceneRef.current.remove(graph3DViewRef.current);\n closeBtnRef.current.style.visibility = \"hidden\";\n })\n .delay(300);\n\n a.to(controlsRef.current.position0, 1e3).onComplete(function () {\n controlsRef.current.reset();\n appwallRef.current.classList.remove(\"mask-container\");\n transform(targetsRef.current.curve, 600);\n registerEvents.current.isShowGraph3D = false;\n });\n i.to(\n {\n x: 0,\n y: 0,\n z: 0,\n },\n 1e3\n );\n r.to(\n {\n blur: 0,\n spread: 0,\n },\n 1e3\n );\n e.start();\n n.start();\n };\n const showAppInfoAnimate = (toggle: boolean) => {\n controlsRef.current.reset();\n const object = registerEvents.current.element.__objectCSS;\n const target = registerEvents.current.element.__curve;\n registerEvents.current.enable = false;\n registerEvents.current.isShowAppInfo = true;\n //定义四个位置\n const c = {\n x: target.position.x > 0 ? 2 * -cardSize.width : 2 * cardSize.width,\n y: 0,\n z: (cameraRef.current.position.z - 500) / 1.5,\n };\n const p = {\n x: 0,\n y: 0,\n z: cameraRef.current.position.z - 500,\n };\n const h = {\n x: 0,\n y: target.rotation.y > 0 ? (-Math.PI * 90) / 180 : (Math.PI * 90) / 180,\n z: 0,\n };\n const d = {\n x: 0,\n y: target.rotation.y > 0 ? (-Math.PI * 180) / 180 : (Math.PI * 180) / 180,\n z: 0,\n };\n const i = new Tween(object.position);\n const r = new Tween(object.rotation);\n const o = new Tween(object.position);\n const s = new Tween(object.rotation);\n if (toggle) {\n //收\n i.to(c, 500)\n .easing()\n .onComplete(() => {\n systemCardRef.current.hidden = true;\n registerEvents.current.element.style.opacity = \"1\";\n });\n r.to(h, 500).easing();\n o.to(\n {\n x: target.position.x,\n y: target.position.y,\n z: target.position.z,\n },\n 700\n ).easing();\n s.to(\n {\n x: target.rotation.x,\n y: target.rotation.y,\n z: target.rotation.z,\n },\n 700\n )\n .easing()\n .onComplete(() => {\n objectsRef.current?.forEach((item) => {\n item.element.style.opacity = \"1\";\n });\n });\n } else {\n //出\n objectsRef.current?.forEach((item) => {\n if (object != item) {\n item.element.style.opacity = \"0.2\";\n }\n });\n i.to(c, 700)\n .easing()\n .onStart(() => {\n //为了飞出去的途中,不能在点击其他的卡片飞出来\n maskRef.current.hidden = false;\n systemCardRef.current.hidden = true;\n });\n r.to(h, 700).easing();\n o.to(p, 500)\n .easing()\n .onStart(function () {\n registerEvents.current.element.style.opacity = \"0\";\n systemCardRef.current.style.transition = \"transition: all .3s ease\";\n systemCardRef.current.hidden = false;\n });\n s.to(d, 500).easing();\n }\n i.chain(o).start();\n r.chain(s).start();\n new Tween({})\n .to({}, 1400)\n .onUpdate(() => {\n render();\n if (Math.abs(object.rotation.y) >= Math.PI / 2) {\n const rect = registerEvents.current.element.getBoundingClientRect();\n const scale = 1.35;\n const width = rect.width * scale;\n const height = rect.height * scale;\n systemCardRef.current.style.width = `${width}px`;\n systemCardRef.current.style.height = `${height}px`;\n systemCardRef.current.style.top = `${\n rect.top - ((scale - 1) * height) / 2\n }px`;\n systemCardRef.current.style.left = `${\n rect.left - ((scale - 1) * width) / 2\n }px`;\n }\n })\n .start()\n .onComplete(function () {\n registerEvents.current.enable = true;\n registerEvents.current.isShowAppInfo = !toggle;\n maskRef.current.hidden = toggle;\n });\n };\n const resetView = () => {\n controlsRef.current.reset();\n TWEEN.removeAll();\n objectsRef.current.map((o) => {\n sceneRef.current.remove(o);\n });\n objectsRef.current = [];\n targetsRef.current = {\n table: [],\n curve: [],\n };\n //重置交互状态\n registerEvents.current = {\n element: null,\n mouseoverTimer: null,\n mouseoutTimer: null,\n clickTimer: null,\n dblClickTimer: null,\n enable: true,\n isShowAppInfo: false,\n isShowGraph3D: false,\n isShowRelations: false,\n };\n };\n\n useEffect(() => {\n init();\n let cancel: number;\n const animate = () => {\n cancel = requestAnimationFrame(animate);\n TWEEN.update();\n controlsRef.current.update();\n };\n animate();\n const container = containerId\n ? document.getElementById(containerId)\n : document.body;\n\n const observer = new ResizeObserver(\n debounce(() => {\n const { width, height } = container.getBoundingClientRect();\n cameraRef.current.aspect = width / height;\n cameraRef.current.updateProjectionMatrix();\n rendererRef.current.setSize(width, height);\n render();\n }, 300)\n );\n controlsRef.current.addEventListener(\"change\", render);\n observer.observe(container);\n return () => {\n observer.disconnect();\n controlsRef.current.removeEventListener(\"change\", render);\n controlsRef.current.dispose();\n TWEEN.removeAll();\n cameraRef.current.clear();\n sceneRef.current.clear();\n cancelAnimationFrame(cancel);\n };\n }, []);\n\n useEffect(() => {\n const length = props.dataSource?.length || 0;\n if (length > 0) {\n updateViewBounds(length);\n cameraRef.current.position.z = computeCameraDistance(\n cameraRef.current,\n configRef.current.bounds,\n useDistanceConfig ? distanceConfig : [],\n length\n );\n cameraRef.current.updateProjectionMatrix();\n controlsRef.current.position0.copy(cameraRef.current.position);\n\n const appData = setAppPosition(\n props.dataSource,\n configRef.current.maxX,\n configRef.current.maxY\n );\n createView(appData);\n transform(targetsRef.current.curve, 1000);\n }\n\n return () => {\n resetView();\n };\n }, [props.dataSource, useDistanceConfig]);\n\n useEffect(() => {\n const container = containerRef.current;\n const handleMouseover = (e: MouseEvent) => {\n clearTimeout(registerEvents.current.mouseoverTimer);\n if (\n registerEvents.current.isShowAppInfo ||\n registerEvents.current.isShowGraph3D ||\n !registerEvents.current.enable\n )\n return false;\n const target = findElementByEvent(e, cardBrickName);\n registerEvents.current.mouseoverTimer = window.setTimeout(() => {\n restoreElementState(() => {\n target &&\n !registerEvents.current.isShowAppInfo &&\n showElementBetweenRelation(target);\n clearTimeout(registerEvents.current.mouseoverTimer);\n });\n }, 300);\n };\n const handleClick = (e: MouseEvent) => {\n clearTimeout(registerEvents.current.clickTimer);\n clearTimeout(registerEvents.current.mouseoverTimer);\n if (\n registerEvents.current.isShowAppInfo ||\n registerEvents.current.isShowGraph3D ||\n !registerEvents.current.enable\n )\n return false;\n\n const target = findElementByEvent(e, cardBrickName);\n registerEvents.current.clickTimer = window.setTimeout(function () {\n clearTimeout(registerEvents.current.mouseoverTimer);\n restoreElementState(() => {\n if (target) {\n clearTimeout(registerEvents.current.clickTimer);\n clearTimeout(registerEvents.current.mouseoverTimer);\n e.stopPropagation();\n registerEvents.current.element = target;\n if (disabledDefaultClickEvent) {\n handleCardClick?.(target.__userData);\n } else {\n setCurClickCardItemAppData(target.__userData);\n showAppInfoAnimate(false);\n }\n }\n });\n }, 200);\n };\n const handleDbClick = (e: MouseEvent) => {\n clearTimeout(registerEvents.current.clickTimer);\n clearTimeout(registerEvents.current.mouseoverTimer);\n clearTimeout(registerEvents.current.dblClickTimer);\n if (\n registerEvents.current.isShowAppInfo ||\n registerEvents.current.isShowGraph3D ||\n !registerEvents.current.enable\n )\n return false;\n\n const target = findElementByEvent(e, cardBrickName);\n const { __userData, __objectCSS } = target;\n registerEvents.current.isShowGraph3D = true;\n registerEvents.current.dblClickTimer = window.setTimeout(function () {\n restoreElementState(() => {\n if (\n useDblclick ||\n __userData.trapezoidalProps?.clusters?.length < 1\n ) {\n handleCardDbClick(__userData);\n registerEvents.current.isShowGraph3D = false;\n } else {\n if (target) {\n clearTimeout(registerEvents.current.mouseoverTimer);\n clearTimeout(registerEvents.current.clickTimer);\n appwallRef.current.classList.add(\"mask-container\");\n controlsRef.current.reset();\n const basePosition = {\n opacity: 0,\n scale: 0,\n borderLeftWidth: 0,\n borderRightWidth: 0,\n borderTopWidth: 0,\n borderBottomWidth: 0,\n };\n const u = {\n x: __objectCSS.position.x,\n y:\n 860 +\n cardSize.height * (configRef.current.maxY - __userData.y),\n };\n const n = new Tween(cameraRef.current.position);\n const a = new Tween(basePosition);\n const i = new Tween({\n z: 0,\n });\n const r = new Tween(cameraRef.current.position);\n const o = new Tween(controlsRef.current.target);\n const s = new Tween({\n blur: 12,\n spread: 0,\n });\n transform(targetsRef.current.table, 600);\n n.to(\n {\n x: 0,\n y: -3600,\n z: 1600,\n },\n 1e3\n ).chain(s, a, i);\n a.to(\n {\n opacity: 1,\n },\n 700\n ).onStart(() => {\n const objectContainer = createTrapezoidalObject({\n objectData: {\n width: cardSize.width,\n height: cardSize.height,\n point: [\n __objectCSS.position.x,\n __objectCSS.position.y,\n __objectCSS.position.z,\n ],\n },\n clusters: __userData.trapezoidalProps?.clusters,\n columns: __userData.trapezoidalProps?.columns,\n appName: __userData.trapezoidalProps?.appName,\n leftBtnName: __userData.trapezoidalProps?.leftBtnName,\n rightBtnName: __userData.trapezoidalProps?.rightBtnName,\n rightOnClick: () => rightBtnOnClick(__userData),\n leftOnClick: () => leftBtnOnClick(__userData),\n });\n graph3DViewRef.current = objectContainer;\n sceneRef.current.add(objectContainer);\n });\n i.to(\n {\n z: panelSpace,\n },\n 1e3\n )\n .delay(230)\n .chain(r, o);\n\n r.to(\n {\n x: u.x,\n y: -3600 + u.y,\n },\n 1e3\n );\n o.to(\n {\n x: u.x,\n y: u.y,\n },\n 1e3\n ).onComplete(function () {\n closeBtnRef.current.style.visibility = \"visible\";\n });\n n.start();\n }\n }\n });\n }, 200);\n };\n\n container.addEventListener(\"dblclick\", handleDbClick);\n container.addEventListener(\"click\", handleClick);\n container.addEventListener(\"mouseover\", handleMouseover);\n return () => {\n container.removeEventListener(\"mouseover\", handleMouseover);\n container.removeEventListener(\"click\", handleClick);\n container.removeEventListener(\"dblclick\", handleDbClick);\n };\n }, [disabledDefaultClickEvent, handleCardClick]);\n\n return (\n <div className=\"appwall-container\" ref={containerRef}>\n <div className=\"appwall\" ref={appwallRef}></div>\n <div\n className=\"mask\"\n ref={maskRef}\n onClick={() => {\n registerEvents.current.enable && showAppInfoAnimate(true);\n }}\n hidden={true}\n >\n <WrappedSystemCard\n {...curClickCardItemAppData?.systemCardProps}\n onClick={(e) => e.stopPropagation()}\n handleClick={() => onSystemCardButtonClick(curClickCardItemAppData)}\n ref={systemCardRef}\n className={classNames({\n infoWrapper: curClickCardItemAppData?.status === \"normal\",\n warningWrapper: curClickCardItemAppData?.status === \"warning\",\n })}\n />\n </div>\n <div\n className=\"closeBtn\"\n ref={closeBtnRef}\n onClick={() => {\n handeReset();\n }}\n />\n </div>\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block;width:100%;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.mask-container{position:absolute;top:0;left:0;width:100%;height:100%;background:#0c1216;z-index:1000}.appwall-container{padding:8px}.appwall{position:relative}.appwall.loading .card-item{pointer-events:none!important}.mask{position:absolute;width:100%;height:100%;top:0;bottom:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:center}.mask[hidden]{display:none}.infoWrapper{position:absolute;background:var(--color-fill-bg-base-4);box-shadow:0 0 12px 2px rgba(80,255,255,0.45),inset 0 0 22px 0 #20242a;border:2px solid #50ffff;overflow:hidden}.warningWrapper{position:absolute;background:linear-gradient(180deg,#cc0066 0%,rgba(204,0,102,0.2) 100%),#0f1117ff;box-shadow:0 0 12px 2px rgba(204,0,102,0.4),inset 0 4px 10px 0 rgba(255,255,255,0.65);overflow:hidden}.relation-line{pointer-events:none!important}.closeBtn{visibility:hidden;position:fixed;top:50px;right:50px;width:46px;height:46px;text-align:center;border:1px solid;color:rgb(138 189 255/84%);font-size:20px;line-height:46px;cursor:pointer;background:rgba(138,189,255,0.13);border-image:linear-gradient(135deg,rgba(255,255,255,0.5),rgba(255,255,255,0),rgba(255,255,255,0.33)) 1 1;display:flex;justify-content:center;align-items:center;z-index:1000}.closeBtn:before,\n.closeBtn:after{content:\"\";width:2px;height:20px;background:linear-gradient(180deg,#3467ff 0%,#98cbff 100%);position:absolute}.closeBtn:before{transform:rotateZ(45deg)}.closeBtn:after{transform:rotateZ(-45deg)}.closeBtn:hover:after,\n.closeBtn:hover:before{background:var(--color-normal-text)}.visibilityAnimate{visibility:hidden;animation:visibility 0.5s both 1s}.trapezoidalLeftOrRightAnimation,\n.trapezoidalTopOrBottomAnimation{background:linear-gradient(180deg,rgba(51,102,255,0.4) 0%,#99ccff 100%);opacity:0.2;position:absolute}.trapezoidalTopOrBottomAnimation{bottom:0;width:100%;left:0;animation:animateTop 1s both}.trapezoidalLeftOrRightAnimation{top:0;right:0;height:100%;animation:animateLeft 1s both}@keyframes animateTop{0%{height:0}100%{height:100%}}@keyframes animateLeft{0%{width:0}100%{width:100%}}@keyframes visibility{0%{visibility:hidden}100%{visibility:visible}}.card-item-container{transition:opacity 0.5s}.status-normal-card{box-shadow:0 0 100px rgba(80,255,255,0.58);border:1px solid rgba(80,255,255,0.58);background:-webkit-gradient(liner,left top,left bottom,from(#002c8d),to(#00123e));background:linear-gradient(to bottom,rgba(80,255,255,1) 0%,rgba(80,255,255,0) 100%)}.status-warning-card{box-shadow:0 0 100px #cc0066;background:-webkit-gradient(liner,left top,left bottom,from(#cc0066),to(rgba(204,0,102,0.2)));background:linear-gradient(to bottom,#cc0066 0%,rgba(204,0,102,0.2) 100%)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:inline-block;width:100%;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.card-item-container{position:relative;width:100%;height:100%}.card-item{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center;border-radius:var(--no-border-radius);border-color:transparent;transition:border-color 0.5s}.status-normal:hover{box-shadow:0 0 100px rgba(80,255,255,0.58);border:1px solid rgba(80,255,255,0.58);background:-webkit-gradient(liner,left top,left bottom,from(#002c8d),to(#00123e));background:linear-gradient(to bottom,rgba(80,255,255,1) 0%,rgba(80,255,255,0) 100%)}.status-warning:hover{box-shadow:0 0 100px #CC0066;background:-webkit-gradient(liner,left top,left bottom,from(#CC0066),to(rgba(204,0,102,0.2)));background:linear-gradient(to bottom,#CC0066 0%,rgba(204,0,102,0.2) 100%)}.card-item-container.status-normal .card-item{background:var(--color-fill-bg-base-4);box-shadow:inset 0px 1px 2px 0px rgba(255,255,255,0.45)}.card-item-container.status-normal:hover .card-item{border:2px solid rgba(80,255,255,0.58)}.card-item-container.status-warning .card-item{background:linear-gradient(180deg,#CC0066 0%,rgba(204,0,102,0.2) 100%);box-shadow:inset 0px 2px 6px 0px rgba(255,255,255,0.65)}.card-item-container.status-warning:hover .card-item{border:none}.card-item-text-container{width:100%;padding:0 12px}.card-item-title,\n.card-item-description{font-size:20px;font-weight:var(--font-weight-500);color:var(--color-normal-text)}.card-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-item-description{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:inline-block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.relation-line{position:relative;width:6px;height:100%;background:var(--color-text-divider-line-1);overflow:hidden}.relation-line::after{content:'';position:absolute;width:100%;height:20%;left:0px;top:0px;animation:lightMove 1000ms ease-in-out infinite,lightOpacity 1000ms ease-in-out infinite}.relation-line.light-color-blue::after{background:linear-gradient(rgba(80,255,255,0) 0%,rgba(80,255,255,1) 90%,#DFFFFF 100%)}.relation-line.light-color-purple::after{background:linear-gradient(rgba(102,0,255,0) 0%,rgba(102,0,255,1) 90%,#B07BFF 100%)}@keyframes lightMove{0%{top:0;transform:translateY(-100%)}100%{top:100%;transform:translateY(0)}}@keyframes lightOpacity{0%{opacity:0}20%{opacity:1}80%{opacity:1}100%{opacity:0}}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:inline-block}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.wrapper{position:relative;width:100%;height:100%;padding:30px 24px 35px;left:0;display:flex;flex-direction:column;border-radius:var(--no-border-radius)}.cardName{font-size:var(--title-font-size-strong);line-height:22px;text-align:center;font-weight:var(--font-weight-500);color:var(--color-normal-text);text-shadow:0 1px 4px rgba(51,102,255,0.5);margin-bottom:35px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.descriptions{flex:1;margin-bottom:20px;font-size:var(--auxiliary-font-size-small);overflow:auto;font-weight:var(--font-weight-400)}.descriptionsItem .itemKey{color:var(--color-secondary-text)}.descriptionsItem .itemValue{color:var(--color-strong-text)}.descriptionsItem{display:flex;gap:10px;margin-bottom:12px}.descriptionsItem>div{flex:1;text-align:left;word-break:break-all}.buttonContent{position:absolute;bottom:16px;right:24px;font-size:var(--auxiliary-font-size);color:#99CCFF;cursor:pointer;font-weight:var(--font-weight-500)}.buttonName{margin-left:5px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{--palette-rgba-white-1:rgba(255,255,255,10%);--palette-rgba-white-2:rgba(255,255,255,20%);--palette-rgba-white-3:rgba(255,255,255,30%);--palette-rgba-white-4:rgba(255,255,255,40%);--palette-rgba-white-5:rgba(255,255,255,50%);--palette-rgba-white-6:rgba(255,255,255,60%);--palette-rgba-white-7:rgba(255,255,255,70%);--palette-rgba-white-8:rgba(255,255,255,80%);--palette-rgba-white-9:rgba(255,255,255,90%);--palette-rgba-white-10:rgba(255,255,255,100%);--palette-rgba-gray-1:rgba(0,0,0,10%);--palette-rgba-gray-2:rgba(0,0,0,20%);--palette-rgba-gray-3:rgba(0,0,0,30%);--palette-rgba-gray-4:rgba(0,0,0,40%);--palette-rgba-gray-5:rgba(0,0,0,50%);--palette-rgba-gray-6:rgba(0,0,0,60%);--palette-rgba-gray-7:rgba(0,0,0,70%);--palette-rgba-gray-8:rgba(0,0,0,80%);--palette-rgba-gray-9:rgba(0,0,0,90%);--palette-rgba-gray-10:rgba(0,0,0,100%);--palette-rgba-blue-gray-2:rgba(101,106,134,20%);--palette-rgba-blue-gray-3:rgba(101,106,134,30%);--palette-rgba-blue-gray-8:rgba(101,106,134,80%);--palette-tech-blue-4-channel:67,127,255;--palette-tech-blue-4:rgb(var(--palette-tech-blue-4-channel));--palette-tech-blue-6-channel:51,102,255;--palette-tech-blue-6:rgb(var(--palette-tech-blue-6-channel));--palette-tech-blue-8-channel:40,69,159;--palette-tech-blue-8:rgb(var(--palette-tech-blue-8-channel));--palette-sea-green-4-channel:131,245,225;--palette-sea-green-4:rgb(var(--palette-sea-green-4-channel));--palette-green-6-channel:81,235,73;--palette-green-6:rgb(var(--palette-green-6-channel));--palette-green-2:rgba(var(--palette-green-6-channel),20%);--palette-lotus-pink-7-channel:204,0,102;--palette-lotus-pink-7:rgb(var(--palette-lotus-pink-7-channel));--palette-red-6-channel:242,39,39;--palette-red-6:rgb(var(--palette-red-6-channel));--palette-red-2:rgba(var(--palette-red-6-channel),20%);--color-fill-global-bg:#0f1014;--color-fill-bg-container-1:var(--palette-rgba-white-1);--color-fill-bg-container-2:var(--palette-rgba-blue-gray-2);--color-fill-bg-container-3:var(--palette-rgba-blue-gray-8);--color-fill-bg-base-1:var(--palette-rgba-blue-gray-2);--color-fill-bg-base-2:rgba(15,16,20,0%);--color-fill-bg-base-3:rgba(0,0,0,20%);--color-fill-bg-base-4:rgba(40,46,58,100%);--color-fill-bg-base-5:rgba(19,25,47,80%);--color-fill-bg-base-6:var(--palette-rgba-blue-gray-3);--color-brand:var(--palette-tech-blue-6);--color-brand-hover:var(--palette-tech-blue-4);--color-brand-active:var(--palette-tech-blue-8);--color-contrast-1:var(--palette-sea-green-4);--color-error:var(--palette-red-6);--color-error-bg:var(--palette-red-2);--color-success:var(--palette-green-6);--color-success-bg:var(--palette-green-2);--color-header-text-big:var(--palette-rgba-white-10);--color-header-text:var(--palette-rgba-white-10);--color-normal-text:var(--palette-rgba-white-10);--color-strong-text:var(--palette-rgba-white-9);--color-auxiliary-text:var(--palette-rgba-white-8);--color-secondary-text:var(--palette-rgba-white-6);--color-disabled-text:var(--palette-rgba-white-4);--color-border-divider-line:var(--palette-rgba-white-1);--color-text-divider-line-1:var(--palette-rgba-white-2);--color-text-divider-line-2:var(--palette-rgba-white-2);--small-border-radius:2px;--medius-border-radius:5px;--larger-border-radius:12px;--container-border-radius:9999px;--no-border-radius:0px;--mask-bg:var(--palette-rgba-gray-7);--title-font-size-larger:30px;--title-font-size-strong:22px;--title-font-size:18px;--normal-font-size:14px;--auxiliary-font-size:16px;--auxiliary-font-size-small:12px;--overview-data-font-size:34px;--statistics-data-font-size:28px;--normal-data-font-size-larger:20px;--normal-data-font-size:16px;--chart-legend-font-size:12px;--chart-tooltips-font-size-1:12px;--chart-tooltips-font-size-2:12px;--chart-axis-x-font-size:12px;--chart-axis-x-font-size-larger:14px;--chart-axis-y-font-size:12px;--chart-axis-y-font-size-larger:14px;--font-weight-600:600;--font-weight-500:500;--font-weight-400:400;--text-shadow:0px 1px 4px #2863ee;--border-width-base:1px;--border-width-double-base:2px;--border-width-tribble-base:3px;--punctate-width-base:1px;--paragraph-width-base:1px;--button-text-color:#40d0db}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n"],"names":["createRelationLine","sourceVector","targetVector","lightColor","subVector","Vector3","subVectors","lineLength","length","lineElement","document","createElement","style","height","concat","classList","add","lineObject","CSS3DObject","centerVector","lerpVectors","position","copy","quaternion","Quaternion","setFromUnitVectors","normalize","clone","setRotationFromQuaternion","getCenterPointOrSubPoint","start","end","pointA","pointB","createTrapezoidalRightOrLeftElement","props","BW","TW","d","TH","BH","isLeft","Math","sqrt","pow","wrapper","cssText","cantCard","className","appendChild","objectCantModel","createTrapezoidalTopOrBottomElement","isTop","topQuaternion","createTrapezoidalObject","objectData","leftBtnName","clusters","columns","leftOnClick","rightBtnName","rightOnClick","appName","container","objectContainer","set","point","width","bottomCard","objectBottomModel","z","topCard","thumbnailEle","objectTopModel","objectCantLeftModel","objectCantRightModel","objectCantTopModel","objectCantBottomModel","btnLeft","wordNode","cursor","innerText","btnLeftObject","rotateX","PI","onpointerdown","btnRight","textNode","btnRightObject","setAppPosition","dataSource","maxX","maxY","appData","map","_objectSpread","x","y","i","parseInt","offset","leng","u","h","g","m","createTableTarget","data","cardSize","object3D","Object3D","outerWidth","outerHeight","createCurveTarget","angle","radius","vector","computeCurvePosition","n","a","sin","lookAt","computeCameraDistance","camera","bounds","distanceConfig","margin","aspect","max","tan","fov","o","forEach","t","min","apply","numRange","distance","getAppRelations","object","relationsData","relations","userData","Array","isArray","key","source","target","push","findElementByEvent","e","tagName","_targetName","toUpperCase","path","composedPath","find","node","shadowRoot","customEle","elementFromPoint","clientX","clientY","panelSpace","getViewBounds","aspectH","ceil","cos","WrappedSystemCard","wrapBrick","AppWallElement","onSystemCardButtonClick","useDblclick","useDistanceConfig","handleCardDbClick","rightBtnOnClick","leftBtnOnClick","cardBrickName","disabledDefaultClickEvent","handleCardClick","containerId","noRotate","boundMargin","curClickCardItemAppData","setCurClickCardItemAppData","useState","containerRef","useRef","appwallRef","closeBtnRef","maskRef","systemCardRef","rendererRef","sceneRef","cameraRef","controlsRef","graph3DViewRef","targetsRef","table","curve","objectsRef","lineCiCodesRef","hoverScaleRef","configRef","registerEvents","element","mouseoverTimer","mouseoutTimer","clickTimer","dblClickTimer","isShowGraph3D","isShowAppInfo","isShowRelations","enable","render","useCallback","current","maxDistance","handleResize","restoreElementState","onComplete","_registerEvents$curre","__objectCSS","__curve","object3d","__userData","Tween","rotation","to","scale","onUpdate","onStart","_objectsRef$current2","remove","status","item","opacity","_registerEvents$curre2","transform","targets","duration","MathUtils","randFloat","easing","Easing","Exponential","InOut","showAppInfoAnimate","toggle","reset","_objectsRef$current4","c","p","r","s","hidden","_objectsRef$current3","transition","chain","abs","rect","getBoundingClientRect","top","left","useEffect","cancel","init","_document$getElementB","containerRect","getElementById","window","innerWidth","innerHeight","scene","Scene","PerspectiveCamera","renderer","CSS3DRenderer","setSize","replaceChildren","domElement","controls","TrackballControls","rotateSpeed","minDistance","animate","requestAnimationFrame","TWEEN","update","body","observer","ResizeObserver","debounce","updateProjectionMatrix","addEventListener","observe","disconnect","removeEventListener","dispose","clear","cancelAnimationFrame","_props$dataSource","updateViewBounds","position0","_data$cardItemProps","_data$cardItemProps2","_data$cardItemProps3","_data$cardItemProps4","_data$cardItemProps5","_data$cardItemProps6","_data$cardItemProps7","cardTitle","cardItemProps","description","background","color","titleStyle","desStyle","descriptionList","statusClass","objectCSS","random","handleMouseover","clearTimeout","setTimeout","rotationY","currentEleRect","_objectsRef$current","lineTarget","curRelations","relation","every","showElementBetweenRelation","handleClick","stopPropagation","handleDbClick","_userData$trapezoida","trapezoidalProps","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","blur","spread","_userData$trapezoida2","_userData$trapezoida3","_userData$trapezoida4","_userData$trapezoida5","_userData$trapezoida6","delay","visibility","React","ref","onClick","_extends","systemCardProps","classNames","infoWrapper","warningWrapper","handeReset","___CSS_LOADER_EXPORT___","module","id","toString"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_next_bricks_data_view=self.webpackChunk_next_bricks_data_view||[]).push([[8588],{4896:e=>{e.exports={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0}},7896:(e,n,t)=>{"use strict";function s(){return s=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s])}return e},s.apply(this,arguments)}t.d(n,{Z:()=>s})},8588:(e,n,t)=>{"use strict";t.r(n),t.d(n,{I18nContext:()=>A,I18nextProvider:()=>M,Trans:()=>K,TransWithoutContext:()=>V,Translation:()=>W,composeInitialProps:()=>U,date:()=>Y,getDefaults:()=>S,getI18n:()=>C,getInitialProps:()=>F,initReactI18next:()=>z,number:()=>G,plural:()=>X,select:()=>Q,selectOrdinal:()=>ee,setDefaults:()=>I,setI18n:()=>j,time:()=>J,useSSR:()=>Z,useTranslation:()=>D,withSSR:()=>q,withTranslation:()=>H});var s=t(8657),i=t(7896),r=t(4896),o=t.n(r),a=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function c(e){var n={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},t=e.match(/<\/?([^\s]+?)[/\s>]/);if(t&&(n.name=t[1],(o()[t[1]]||"/"===e.charAt(e.length-2))&&(n.voidElement=!0),n.name.startsWith("!--"))){var s=e.indexOf("--\x3e");return{type:"comment",comment:-1!==s?e.slice(4,s):""}}for(var i=new RegExp(a),r=null;null!==(r=i.exec(e));)if(r[0].trim())if(r[1]){var c=r[1].trim(),l=[c,""];c.indexOf("=")>-1&&(l=c.split("=")),n.attrs[l[0]]=l[1],i.lastIndex--}else r[2]&&(n.attrs[r[2]]=r[3].trim().substring(1,r[3].length-1));return n}var l=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,u=/^\s*$/,p=Object.create(null);function d(e,n){switch(n.type){case"text":return e+n.content;case"tag":return e+="<"+n.name+(n.attrs?function(e){var n=[];for(var t in e)n.push(t+'="'+e[t]+'"');return n.length?" "+n.join(" "):""}(n.attrs):"")+(n.voidElement?"/>":">"),n.voidElement?e:e+n.children.reduce(d,"")+"</"+n.name+">";case"comment":return e+"\x3c!--"+n.comment+"--\x3e"}}var f={parse:function(e,n){n||(n={}),n.components||(n.components=p);var t,s=[],i=[],r=-1,o=!1;if(0!==e.indexOf("<")){var a=e.indexOf("<");s.push({type:"text",content:-1===a?e:e.substring(0,a)})}return e.replace(l,(function(a,l){if(o){if(a!=="</"+t.name+">")return;o=!1}var p,d="/"!==a.charAt(1),f=a.startsWith("\x3c!--"),g=l+a.length,h=e.charAt(g);if(f){var m=c(a);return r<0?(s.push(m),s):((p=i[r]).children.push(m),s)}if(d&&(r++,"tag"===(t=c(a)).type&&n.components[t.name]&&(t.type="component",o=!0),t.voidElement||o||!h||"<"===h||t.children.push({type:"text",content:e.slice(g,e.indexOf("<",g))}),0===r&&s.push(t),(p=i[r-1])&&p.children.push(t),i[r]=t),(!d||t.voidElement)&&(r>-1&&(t.voidElement||t.name===a.slice(2,-1))&&(r--,t=-1===r?s:i[r]),!o&&"<"!==h&&h)){p=-1===r?s:i[r].children;var y=e.indexOf("<",g),b=e.slice(g,-1===y?void 0:y);u.test(b)&&(b=" "),(y>-1&&r+p.length>=0||" "!==b)&&p.push({type:"text",content:b})}})),s},stringify:function(e){return e.reduce((function(e,n){return e+d("",n)}),"")}};const g=f;function h(){if(console&&console.warn){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];"string"==typeof n[0]&&(n[0]=`react-i18next:: ${n[0]}`),console.warn(...n)}}const m={};function y(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];"string"==typeof n[0]&&m[n[0]]||("string"==typeof n[0]&&(m[n[0]]=new Date),h(...n))}const b=(e,n)=>()=>{if(e.isInitialized)n();else{const t=()=>{setTimeout((()=>{e.off("initialized",t)}),0),n()};e.on("initialized",t)}};function v(e,n,t){e.loadNamespaces(n,b(e,t))}function x(e,n,t,s){"string"==typeof t&&(t=[t]),t.forEach((n=>{e.options.ns.indexOf(n)<0&&e.options.ns.push(n)})),e.loadLanguages(n,b(e,s))}function N(e){return e.displayName||e.name||("string"==typeof e&&e.length>0?e:"Unknown")}const E=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,O={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"…","…":"…","/":"/","/":"/"},w=e=>O[e];let k,$={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:e=>e.replace(E,w)};function I(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$={...$,...e}}function S(){return $}function j(e){k=e}function C(){return k}function R(e,n){if(!e)return!1;const t=e.props?e.props.children:e.children;return n?t.length>0:!!t}function L(e){if(!e)return[];const n=e.props?e.props.children:e.children;return e.props&&e.props.i18nIsDynamicList?T(n):n}function T(e){return Array.isArray(e)?e:[e]}function P(e,n){if(!e)return"";let t="";const i=T(e),r=n.transSupportBasicHtmlNodes&&n.transKeepBasicHtmlNodesFor?n.transKeepBasicHtmlNodesFor:[];return i.forEach(((e,i)=>{if("string"==typeof e)t+=`${e}`;else if((0,s.isValidElement)(e)){const s=Object.keys(e.props).length,o=r.indexOf(e.type)>-1,a=e.props.children;if(!a&&o&&0===s)t+=`<${e.type}/>`;else if(a||o&&0===s)if(e.props.i18nIsDynamicList)t+=`<${i}></${i}>`;else if(o&&1===s&&"string"==typeof a)t+=`<${e.type}>${a}</${e.type}>`;else{const e=P(a,n);t+=`<${i}>${e}</${i}>`}else t+=`<${i}></${i}>`}else if(null===e)h("Trans: the passed in value is invalid - seems you passed in a null child.");else if("object"==typeof e){const{format:n,...s}=e,i=Object.keys(s);if(1===i.length){const e=n?`${i[0]}, ${n}`:i[0];t+=`{{${e}}}`}else h("react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.",e)}else h("Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.",e)})),t}function V(e){let{children:n,count:t,parent:r,i18nKey:o,context:a,tOptions:c={},values:l,defaults:u,components:p,ns:d,i18n:f,t:h,shouldUnescape:m,...b}=e;const v=f||C();if(!v)return y("You will need to pass in an i18next instance by using i18nextReactModule"),n;const x=h||v.t.bind(v)||(e=>e);a&&(c.context=a);const N={...S(),...v.options&&v.options.react};let E=d||x.ns||v.options&&v.options.defaultNS;E="string"==typeof E?[E]:E||["translation"];const O=P(n,N),w=u||O||N.transEmptyNodeValue||o,{hashTransKey:k}=N,$=o||(k?k(O||w):O||w);v.options&&v.options.interpolation&&v.options.interpolation.defaultVariables&&(l=l&&Object.keys(l).length>0?{...l,...v.options.interpolation.defaultVariables}:{...v.options.interpolation.defaultVariables});const I=l?c.interpolation:{interpolation:{...c.interpolation,prefix:"#$?",suffix:"?$#"}},j={...c,count:t,...l,...I,defaultValue:w,ns:E},V=function(e,n,t,r,o,a){if(""===n)return[];const c=r.transKeepBasicHtmlNodesFor||[],l=n&&new RegExp(c.map((e=>`<${e}`)).join("|")).test(n);if(!e&&!l&&!a)return[n];const u={};!function e(n){T(n).forEach((n=>{"string"!=typeof n&&(R(n)?e(L(n)):"object"!=typeof n||(0,s.isValidElement)(n)||Object.assign(u,n))}))}(e);const p=g.parse(`<0>${n}</0>`),d={...u,...o};function f(e,n,t){const i=L(e),r=m(i,n.children,t);return function(e){return"[object Array]"===Object.prototype.toString.call(e)&&e.every((e=>(0,s.isValidElement)(e)))}(i)&&0===r.length||e.props&&e.props.i18nIsDynamicList?i:r}function h(e,n,t,r,o){e.dummy?(e.children=n,t.push((0,s.cloneElement)(e,{key:r},o?void 0:n))):t.push(...s.Children.map([e],(e=>{const t={...e.props};return delete t.i18nIsDynamicList,s.createElement(e.type,(0,i.Z)({},t,{key:r,ref:e.ref},o?{}:{children:n}))})))}function m(n,i,o){const u=T(n);return T(i).reduce(((n,i,p)=>{const g=i.children&&i.children[0]&&i.children[0].content&&t.services.interpolator.interpolate(i.children[0].content,d,t.language);if("tag"===i.type){let a=u[parseInt(i.name,10)];1!==o.length||a||(a=o[0][i.name]),a||(a={});const y=0!==Object.keys(i.attrs).length?function(e,n){const t={...n};return t.props=Object.assign(e.props,n.props),t}({props:i.attrs},a):a,b=(0,s.isValidElement)(y),v=b&&R(i,!0)&&!i.voidElement,x=l&&"object"==typeof y&&y.dummy&&!b,N="object"==typeof e&&null!==e&&Object.hasOwnProperty.call(e,i.name);if("string"==typeof y){const e=t.services.interpolator.interpolate(y,d,t.language);n.push(e)}else if(R(y)||v)h(y,f(y,i,o),n,p);else if(x)h(y,m(u,i.children,o),n,p);else if(Number.isNaN(parseFloat(i.name)))if(N)h(y,f(y,i,o),n,p,i.voidElement);else if(r.transSupportBasicHtmlNodes&&c.indexOf(i.name)>-1)if(i.voidElement)n.push((0,s.createElement)(i.name,{key:`${i.name}-${p}`}));else{const e=m(u,i.children,o);n.push((0,s.createElement)(i.name,{key:`${i.name}-${p}`},e))}else if(i.voidElement)n.push(`<${i.name} />`);else{const e=m(u,i.children,o);n.push(`<${i.name}>${e}</${i.name}>`)}else if("object"!=typeof y||b)h(y,g,n,p,1!==i.children.length||!g);else{const e=i.children[0]?g:null;e&&n.push(e)}}else if("text"===i.type){const e=r.transWrapTextNodes,o=a?r.unescape(t.services.interpolator.interpolate(i.content,d,t.language)):t.services.interpolator.interpolate(i.content,d,t.language);e?n.push((0,s.createElement)(e,{key:`${i.name}-${p}`},o)):n.push(o)}return n}),[])}return L(m([{dummy:!0,children:e||[]}],p,T(e||[]))[0])}(p||n,$?x($,j):w,v,N,j,m),z=void 0!==r?r:N.defaultTransParent;return z?(0,s.createElement)(z,b,V):V}const z={type:"3rdParty",init(e){I(e.options.react),j(e)}},A=(0,s.createContext)();class B{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach((e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)}))}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}function U(e){return n=>new Promise((t=>{const s=F();e.getInitialProps?e.getInitialProps(n).then((e=>{t({...e,...s})})):t(s)}))}function F(){const e=C(),n=e.reportNamespaces?e.reportNamespaces.getUsedNamespaces():[],t={},s={};return e.languages.forEach((t=>{s[t]={},n.forEach((n=>{s[t][n]=e.getResourceBundle(t,n)||{}}))})),t.initialI18nStore=s,t.initialLanguage=e.language,t}function K(e){let{children:n,count:t,parent:i,i18nKey:r,context:o,tOptions:a={},values:c,defaults:l,components:u,ns:p,i18n:d,t:f,shouldUnescape:g,...h}=e;const{i18n:m,defaultNS:y}=(0,s.useContext)(A)||{},b=d||m||C(),v=f||b&&b.t.bind(b);return V({children:n,count:t,parent:i,i18nKey:r,context:o,tOptions:a,values:c,defaults:l,components:u,ns:p||v&&v.ns||y||b&&b.options&&b.options.defaultNS,i18n:b,t:f,shouldUnescape:g,...h})}const _=(e,n)=>{const t=(0,s.useRef)();return(0,s.useEffect)((()=>{t.current=n?t.current:e}),[e,n]),t.current};function D(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{i18n:t}=n,{i18n:i,defaultNS:r}=(0,s.useContext)(A)||{},o=t||i||C();if(o&&!o.reportNamespaces&&(o.reportNamespaces=new B),!o){y("You will need to pass in an i18next instance by using initReactI18next");const e=(e,n)=>"string"==typeof n?n:n&&"object"==typeof n&&"string"==typeof n.defaultValue?n.defaultValue:Array.isArray(e)?e[e.length-1]:e,n=[e,{},!1];return n.t=e,n.i18n={},n.ready=!1,n}o.options.react&&void 0!==o.options.react.wait&&y("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");const a={...S(),...o.options.react,...n},{useSuspense:c,keyPrefix:l}=a;let u=e||r||o.options&&o.options.defaultNS;u="string"==typeof u?[u]:u||["translation"],o.reportNamespaces.addUsedNamespaces&&o.reportNamespaces.addUsedNamespaces(u);const p=(o.isInitialized||o.initializedStoreOnce)&&u.every((e=>function(e,n){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return n.languages&&n.languages.length?void 0!==n.options.ignoreJSONStructure?n.hasLoadedNamespace(e,{lng:t.lng,precheck:(n,s)=>{if(t.bindI18n&&t.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!s(n.isLanguageChangingTo,e))return!1}}):function(e,n){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const s=n.languages[0],i=!!n.options&&n.options.fallbackLng,r=n.languages[n.languages.length-1];if("cimode"===s.toLowerCase())return!0;const o=(e,t)=>{const s=n.services.backendConnector.state[`${e}|${t}`];return-1===s||2===s};return!(t.bindI18n&&t.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!o(n.isLanguageChangingTo,e)||!n.hasResourceBundle(s,e)&&n.services.backendConnector.backend&&(!n.options.resources||n.options.partialBundledLanguages)&&(!o(s,e)||i&&!o(r,e)))}(e,n,t):(y("i18n.languages were undefined or empty",n.languages),!0)}(e,o,a)));function d(){return o.getFixedT(n.lng||null,"fallback"===a.nsMode?u:u[0],l)}const[f,g]=(0,s.useState)(d);let h=u.join();n.lng&&(h=`${n.lng}${h}`);const m=_(h),b=(0,s.useRef)(!0);(0,s.useEffect)((()=>{const{bindI18n:e,bindI18nStore:t}=a;function s(){b.current&&g(d)}return b.current=!0,p||c||(n.lng?x(o,n.lng,u,(()=>{b.current&&g(d)})):v(o,u,(()=>{b.current&&g(d)}))),p&&m&&m!==h&&b.current&&g(d),e&&o&&o.on(e,s),t&&o&&o.store.on(t,s),()=>{b.current=!1,e&&o&&e.split(" ").forEach((e=>o.off(e,s))),t&&o&&t.split(" ").forEach((e=>o.store.off(e,s)))}}),[o,h]);const N=(0,s.useRef)(!0);(0,s.useEffect)((()=>{b.current&&!N.current&&g(d),N.current=!1}),[o,l]);const E=[f,o,p];if(E.t=f,E.i18n=o,E.ready=p,p)return E;if(!p&&!c)return E;throw new Promise((e=>{n.lng?x(o,n.lng,u,(()=>e())):v(o,u,(()=>e()))}))}function H(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(t){function i(i){let{forwardedRef:r,...o}=i;const[a,c,l]=D(e,{...o,keyPrefix:n.keyPrefix}),u={...o,t:a,i18n:c,tReady:l};return n.withRef&&r?u.ref=r:!n.withRef&&r&&(u.forwardedRef=r),(0,s.createElement)(t,u)}return i.displayName=`withI18nextTranslation(${N(t)})`,i.WrappedComponent=t,n.withRef?(0,s.forwardRef)(((e,n)=>(0,s.createElement)(i,Object.assign({},e,{forwardedRef:n})))):i}}function W(e){const{ns:n,children:t,...s}=e,[i,r,o]=D(n,s);return t(i,{i18n:r,lng:r.language},o)}function M(e){let{i18n:n,defaultNS:t,children:i}=e;const r=(0,s.useMemo)((()=>({i18n:n,defaultNS:t})),[n,t]);return(0,s.createElement)(A.Provider,{value:r},i)}function Z(e,n){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{i18n:i}=t,{i18n:r}=(0,s.useContext)(A)||{},o=i||r||C();o.options&&o.options.isClone||(e&&!o.initializedStoreOnce&&(o.services.resourceStore.data=e,o.options.ns=Object.values(e).reduce(((e,n)=>(Object.keys(n).forEach((n=>{e.indexOf(n)<0&&e.push(n)})),e)),o.options.ns),o.initializedStoreOnce=!0,o.isInitialized=!0),n&&!o.initializedLanguageOnce&&(o.changeLanguage(n),o.initializedLanguageOnce=!0))}function q(){return function(e){function n(n){let{initialI18nStore:t,initialLanguage:i,...r}=n;return Z(t,i),(0,s.createElement)(e,{...r})}return n.getInitialProps=U(e),n.displayName=`withI18nextSSR(${N(e)})`,n.WrappedComponent=e,n}}const Y=()=>"",J=()=>"",G=()=>"",Q=()=>"",X=()=>"",ee=()=>""}}]);
|
|
2
|
-
//# sourceMappingURL=8588.2beae150.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/8588.2beae150.js","mappings":"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","sources":["webpack:///../../node_modules/void-elements/index.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///../../node_modules/html-parse-stringify/dist/html-parse-stringify.module.js","webpack:///../../node_modules/react-i18next/dist/es/utils.js","webpack:///../../node_modules/react-i18next/dist/es/unescape.js","webpack:///../../node_modules/react-i18next/dist/es/defaults.js","webpack:///../../node_modules/react-i18next/dist/es/i18nInstance.js","webpack:///../../node_modules/react-i18next/dist/es/TransWithoutContext.js","webpack:///../../node_modules/react-i18next/dist/es/initReactI18next.js","webpack:///../../node_modules/react-i18next/dist/es/context.js","webpack:///../../node_modules/react-i18next/dist/es/Trans.js","webpack:///../../node_modules/react-i18next/dist/es/useTranslation.js","webpack:///../../node_modules/react-i18next/dist/es/withTranslation.js","webpack:///../../node_modules/react-i18next/dist/es/Translation.js","webpack:///../../node_modules/react-i18next/dist/es/I18nextProvider.js","webpack:///../../node_modules/react-i18next/dist/es/useSSR.js","webpack:///../../node_modules/react-i18next/dist/es/withSSR.js","webpack:///../../node_modules/react-i18next/dist/es/index.js"],"sourcesContent":["/**\n * This file automatically generated from `pre-publish.js`.\n * Do not manually edit.\n */\n\nmodule.exports = {\n \"area\": true,\n \"base\": true,\n \"br\": true,\n \"col\": true,\n \"embed\": true,\n \"hr\": true,\n \"img\": true,\n \"input\": true,\n \"link\": true,\n \"meta\": true,\n \"param\": true,\n \"source\": true,\n \"track\": true,\n \"wbr\": true\n};\n","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import e from\"void-elements\";var t=/\\s([^'\"/\\s><]+?)[\\s/>]|([^\\s=]+)=\\s?(\".*?\"|'.*?')/g;function n(n){var r={type:\"tag\",name:\"\",voidElement:!1,attrs:{},children:[]},i=n.match(/<\\/?([^\\s]+?)[/\\s>]/);if(i&&(r.name=i[1],(e[i[1]]||\"/\"===n.charAt(n.length-2))&&(r.voidElement=!0),r.name.startsWith(\"!--\"))){var s=n.indexOf(\"--\\x3e\");return{type:\"comment\",comment:-1!==s?n.slice(4,s):\"\"}}for(var a=new RegExp(t),c=null;null!==(c=a.exec(n));)if(c[0].trim())if(c[1]){var o=c[1].trim(),l=[o,\"\"];o.indexOf(\"=\")>-1&&(l=o.split(\"=\")),r.attrs[l[0]]=l[1],a.lastIndex--}else c[2]&&(r.attrs[c[2]]=c[3].trim().substring(1,c[3].length-1));return r}var r=/<[a-zA-Z0-9\\-\\!\\/](?:\"[^\"]*\"|'[^']*'|[^'\">])*>/g,i=/^\\s*$/,s=Object.create(null);function a(e,t){switch(t.type){case\"text\":return e+t.content;case\"tag\":return e+=\"<\"+t.name+(t.attrs?function(e){var t=[];for(var n in e)t.push(n+'=\"'+e[n]+'\"');return t.length?\" \"+t.join(\" \"):\"\"}(t.attrs):\"\")+(t.voidElement?\"/>\":\">\"),t.voidElement?e:e+t.children.reduce(a,\"\")+\"</\"+t.name+\">\";case\"comment\":return e+\"\\x3c!--\"+t.comment+\"--\\x3e\"}}var c={parse:function(e,t){t||(t={}),t.components||(t.components=s);var a,c=[],o=[],l=-1,m=!1;if(0!==e.indexOf(\"<\")){var u=e.indexOf(\"<\");c.push({type:\"text\",content:-1===u?e:e.substring(0,u)})}return e.replace(r,function(r,s){if(m){if(r!==\"</\"+a.name+\">\")return;m=!1}var u,f=\"/\"!==r.charAt(1),h=r.startsWith(\"\\x3c!--\"),p=s+r.length,d=e.charAt(p);if(h){var v=n(r);return l<0?(c.push(v),c):((u=o[l]).children.push(v),c)}if(f&&(l++,\"tag\"===(a=n(r)).type&&t.components[a.name]&&(a.type=\"component\",m=!0),a.voidElement||m||!d||\"<\"===d||a.children.push({type:\"text\",content:e.slice(p,e.indexOf(\"<\",p))}),0===l&&c.push(a),(u=o[l-1])&&u.children.push(a),o[l]=a),(!f||a.voidElement)&&(l>-1&&(a.voidElement||a.name===r.slice(2,-1))&&(l--,a=-1===l?c:o[l]),!m&&\"<\"!==d&&d)){u=-1===l?c:o[l].children;var x=e.indexOf(\"<\",p),g=e.slice(p,-1===x?void 0:x);i.test(g)&&(g=\" \"),(x>-1&&l+u.length>=0||\" \"!==g)&&u.push({type:\"text\",content:g})}}),c},stringify:function(e){return e.reduce(function(e,t){return e+a(\"\",t)},\"\")}};export default c;\n//# sourceMappingURL=html-parse-stringify.module.js.map\n","export function warn() {\n if (console && console.warn) {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (typeof args[0] === 'string') args[0] = `react-i18next:: ${args[0]}`;\n console.warn(...args);\n }\n}\nconst alreadyWarned = {};\nexport function warnOnce() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n if (typeof args[0] === 'string' && alreadyWarned[args[0]]) return;\n if (typeof args[0] === 'string') alreadyWarned[args[0]] = new Date();\n warn(...args);\n}\nconst loadedClb = (i18n, cb) => () => {\n if (i18n.isInitialized) {\n cb();\n } else {\n const initialized = () => {\n setTimeout(() => {\n i18n.off('initialized', initialized);\n }, 0);\n cb();\n };\n i18n.on('initialized', initialized);\n }\n};\nexport function loadNamespaces(i18n, ns, cb) {\n i18n.loadNamespaces(ns, loadedClb(i18n, cb));\n}\nexport function loadLanguages(i18n, lng, ns, cb) {\n if (typeof ns === 'string') ns = [ns];\n ns.forEach(n => {\n if (i18n.options.ns.indexOf(n) < 0) i18n.options.ns.push(n);\n });\n i18n.loadLanguages(lng, loadedClb(i18n, cb));\n}\nfunction oldI18nextHasLoadedNamespace(ns, i18n) {\n let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n const lng = i18n.languages[0];\n const fallbackLng = i18n.options ? i18n.options.fallbackLng : false;\n const lastLng = i18n.languages[i18n.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n const loadNotPending = (l, n) => {\n const loadState = i18n.services.backendConnector.state[`${l}|${n}`];\n return loadState === -1 || loadState === 2;\n };\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18n.services.backendConnector.backend && i18n.isLanguageChangingTo && !loadNotPending(i18n.isLanguageChangingTo, ns)) return false;\n if (i18n.hasResourceBundle(lng, ns)) return true;\n if (!i18n.services.backendConnector.backend || i18n.options.resources && !i18n.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n}\nexport function hasLoadedNamespace(ns, i18n) {\n let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n if (!i18n.languages || !i18n.languages.length) {\n warnOnce('i18n.languages were undefined or empty', i18n.languages);\n return true;\n }\n const isNewerI18next = i18n.options.ignoreJSONStructure !== undefined;\n if (!isNewerI18next) {\n return oldI18nextHasLoadedNamespace(ns, i18n, options);\n }\n return i18n.hasLoadedNamespace(ns, {\n lng: options.lng,\n precheck: (i18nInstance, loadNotPending) => {\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18nInstance.services.backendConnector.backend && i18nInstance.isLanguageChangingTo && !loadNotPending(i18nInstance.isLanguageChangingTo, ns)) return false;\n }\n });\n}\nexport function getDisplayName(Component) {\n return Component.displayName || Component.name || (typeof Component === 'string' && Component.length > 0 ? Component : 'Unknown');\n}","const matchHtmlEntity = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g;\nconst htmlEntities = {\n '&': '&',\n '&': '&',\n '<': '<',\n '<': '<',\n '>': '>',\n '>': '>',\n ''': \"'\",\n ''': \"'\",\n '"': '\"',\n '"': '\"',\n ' ': ' ',\n ' ': ' ',\n '©': '©',\n '©': '©',\n '®': '®',\n '®': '®',\n '…': '…',\n '…': '…',\n '/': '/',\n '/': '/'\n};\nconst unescapeHtmlEntity = m => htmlEntities[m];\nexport const unescape = text => text.replace(matchHtmlEntity, unescapeHtmlEntity);","import { unescape } from './unescape.js';\nlet defaultOptions = {\n bindI18n: 'languageChanged',\n bindI18nStore: '',\n transEmptyNodeValue: '',\n transSupportBasicHtmlNodes: true,\n transWrapTextNodes: '',\n transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],\n useSuspense: true,\n unescape\n};\nexport function setDefaults() {\n let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n defaultOptions = {\n ...defaultOptions,\n ...options\n };\n}\nexport function getDefaults() {\n return defaultOptions;\n}","let i18nInstance;\nexport function setI18n(instance) {\n i18nInstance = instance;\n}\nexport function getI18n() {\n return i18nInstance;\n}","import _extends from \"@babel/runtime/helpers/extends\";\nimport React, { isValidElement, cloneElement, createElement, Children } from 'react';\nimport HTML from 'html-parse-stringify';\nimport { warn, warnOnce } from './utils.js';\nimport { getDefaults } from './defaults.js';\nimport { getI18n } from './i18nInstance.js';\nfunction hasChildren(node, checkLength) {\n if (!node) return false;\n const base = node.props ? node.props.children : node.children;\n if (checkLength) return base.length > 0;\n return !!base;\n}\nfunction getChildren(node) {\n if (!node) return [];\n const children = node.props ? node.props.children : node.children;\n return node.props && node.props.i18nIsDynamicList ? getAsArray(children) : children;\n}\nfunction hasValidReactChildren(children) {\n if (Object.prototype.toString.call(children) !== '[object Array]') return false;\n return children.every(child => isValidElement(child));\n}\nfunction getAsArray(data) {\n return Array.isArray(data) ? data : [data];\n}\nfunction mergeProps(source, target) {\n const newTarget = {\n ...target\n };\n newTarget.props = Object.assign(source.props, target.props);\n return newTarget;\n}\nexport function nodesToString(children, i18nOptions) {\n if (!children) return '';\n let stringNode = '';\n const childrenArray = getAsArray(children);\n const keepArray = i18nOptions.transSupportBasicHtmlNodes && i18nOptions.transKeepBasicHtmlNodesFor ? i18nOptions.transKeepBasicHtmlNodesFor : [];\n childrenArray.forEach((child, childIndex) => {\n if (typeof child === 'string') {\n stringNode += `${child}`;\n } else if (isValidElement(child)) {\n const childPropsCount = Object.keys(child.props).length;\n const shouldKeepChild = keepArray.indexOf(child.type) > -1;\n const childChildren = child.props.children;\n if (!childChildren && shouldKeepChild && childPropsCount === 0) {\n stringNode += `<${child.type}/>`;\n } else if (!childChildren && (!shouldKeepChild || childPropsCount !== 0)) {\n stringNode += `<${childIndex}></${childIndex}>`;\n } else if (child.props.i18nIsDynamicList) {\n stringNode += `<${childIndex}></${childIndex}>`;\n } else if (shouldKeepChild && childPropsCount === 1 && typeof childChildren === 'string') {\n stringNode += `<${child.type}>${childChildren}</${child.type}>`;\n } else {\n const content = nodesToString(childChildren, i18nOptions);\n stringNode += `<${childIndex}>${content}</${childIndex}>`;\n }\n } else if (child === null) {\n warn(`Trans: the passed in value is invalid - seems you passed in a null child.`);\n } else if (typeof child === 'object') {\n const {\n format,\n ...clone\n } = child;\n const keys = Object.keys(clone);\n if (keys.length === 1) {\n const value = format ? `${keys[0]}, ${format}` : keys[0];\n stringNode += `{{${value}}}`;\n } else {\n warn(`react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.`, child);\n }\n } else {\n warn(`Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.`, child);\n }\n });\n return stringNode;\n}\nfunction renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, shouldUnescape) {\n if (targetString === '') return [];\n const keepArray = i18nOptions.transKeepBasicHtmlNodesFor || [];\n const emptyChildrenButNeedsHandling = targetString && new RegExp(keepArray.map(keep => `<${keep}`).join('|')).test(targetString);\n if (!children && !emptyChildrenButNeedsHandling && !shouldUnescape) return [targetString];\n const data = {};\n function getData(childs) {\n const childrenArray = getAsArray(childs);\n childrenArray.forEach(child => {\n if (typeof child === 'string') return;\n if (hasChildren(child)) getData(getChildren(child));else if (typeof child === 'object' && !isValidElement(child)) Object.assign(data, child);\n });\n }\n getData(children);\n const ast = HTML.parse(`<0>${targetString}</0>`);\n const opts = {\n ...data,\n ...combinedTOpts\n };\n function renderInner(child, node, rootReactNode) {\n const childs = getChildren(child);\n const mappedChildren = mapAST(childs, node.children, rootReactNode);\n return hasValidReactChildren(childs) && mappedChildren.length === 0 || child.props && child.props.i18nIsDynamicList ? childs : mappedChildren;\n }\n function pushTranslatedJSX(child, inner, mem, i, isVoid) {\n if (child.dummy) {\n child.children = inner;\n mem.push(cloneElement(child, {\n key: i\n }, isVoid ? undefined : inner));\n } else {\n mem.push(...Children.map([child], c => {\n const props = {\n ...c.props\n };\n delete props.i18nIsDynamicList;\n return React.createElement(c.type, _extends({}, props, {\n key: i,\n ref: c.ref\n }, isVoid ? {} : {\n children: inner\n }));\n }));\n }\n }\n function mapAST(reactNode, astNode, rootReactNode) {\n const reactNodes = getAsArray(reactNode);\n const astNodes = getAsArray(astNode);\n return astNodes.reduce((mem, node, i) => {\n const translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);\n if (node.type === 'tag') {\n let tmp = reactNodes[parseInt(node.name, 10)];\n if (rootReactNode.length === 1 && !tmp) tmp = rootReactNode[0][node.name];\n if (!tmp) tmp = {};\n const child = Object.keys(node.attrs).length !== 0 ? mergeProps({\n props: node.attrs\n }, tmp) : tmp;\n const isElement = isValidElement(child);\n const isValidTranslationWithChildren = isElement && hasChildren(node, true) && !node.voidElement;\n const isEmptyTransWithHTML = emptyChildrenButNeedsHandling && typeof child === 'object' && child.dummy && !isElement;\n const isKnownComponent = typeof children === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);\n if (typeof child === 'string') {\n const value = i18n.services.interpolator.interpolate(child, opts, i18n.language);\n mem.push(value);\n } else if (hasChildren(child) || isValidTranslationWithChildren) {\n const inner = renderInner(child, node, rootReactNode);\n pushTranslatedJSX(child, inner, mem, i);\n } else if (isEmptyTransWithHTML) {\n const inner = mapAST(reactNodes, node.children, rootReactNode);\n pushTranslatedJSX(child, inner, mem, i);\n } else if (Number.isNaN(parseFloat(node.name))) {\n if (isKnownComponent) {\n const inner = renderInner(child, node, rootReactNode);\n pushTranslatedJSX(child, inner, mem, i, node.voidElement);\n } else if (i18nOptions.transSupportBasicHtmlNodes && keepArray.indexOf(node.name) > -1) {\n if (node.voidElement) {\n mem.push(createElement(node.name, {\n key: `${node.name}-${i}`\n }));\n } else {\n const inner = mapAST(reactNodes, node.children, rootReactNode);\n mem.push(createElement(node.name, {\n key: `${node.name}-${i}`\n }, inner));\n }\n } else if (node.voidElement) {\n mem.push(`<${node.name} />`);\n } else {\n const inner = mapAST(reactNodes, node.children, rootReactNode);\n mem.push(`<${node.name}>${inner}</${node.name}>`);\n }\n } else if (typeof child === 'object' && !isElement) {\n const content = node.children[0] ? translationContent : null;\n if (content) mem.push(content);\n } else {\n pushTranslatedJSX(child, translationContent, mem, i, node.children.length !== 1 || !translationContent);\n }\n } else if (node.type === 'text') {\n const wrapTextNodes = i18nOptions.transWrapTextNodes;\n const content = shouldUnescape ? i18nOptions.unescape(i18n.services.interpolator.interpolate(node.content, opts, i18n.language)) : i18n.services.interpolator.interpolate(node.content, opts, i18n.language);\n if (wrapTextNodes) {\n mem.push(createElement(wrapTextNodes, {\n key: `${node.name}-${i}`\n }, content));\n } else {\n mem.push(content);\n }\n }\n return mem;\n }, []);\n }\n const result = mapAST([{\n dummy: true,\n children: children || []\n }], ast, getAsArray(children || []));\n return getChildren(result[0]);\n}\nexport function Trans(_ref) {\n let {\n children,\n count,\n parent,\n i18nKey,\n context,\n tOptions = {},\n values,\n defaults,\n components,\n ns,\n i18n: i18nFromProps,\n t: tFromProps,\n shouldUnescape,\n ...additionalProps\n } = _ref;\n const i18n = i18nFromProps || getI18n();\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using i18nextReactModule');\n return children;\n }\n const t = tFromProps || i18n.t.bind(i18n) || (k => k);\n if (context) tOptions.context = context;\n const reactI18nextOptions = {\n ...getDefaults(),\n ...(i18n.options && i18n.options.react)\n };\n let namespaces = ns || t.ns || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n const nodeAsString = nodesToString(children, reactI18nextOptions);\n const defaultValue = defaults || nodeAsString || reactI18nextOptions.transEmptyNodeValue || i18nKey;\n const {\n hashTransKey\n } = reactI18nextOptions;\n const key = i18nKey || (hashTransKey ? hashTransKey(nodeAsString || defaultValue) : nodeAsString || defaultValue);\n if (i18n.options && i18n.options.interpolation && i18n.options.interpolation.defaultVariables) {\n values = values && Object.keys(values).length > 0 ? {\n ...values,\n ...i18n.options.interpolation.defaultVariables\n } : {\n ...i18n.options.interpolation.defaultVariables\n };\n }\n const interpolationOverride = values ? tOptions.interpolation : {\n interpolation: {\n ...tOptions.interpolation,\n prefix: '#$?',\n suffix: '?$#'\n }\n };\n const combinedTOpts = {\n ...tOptions,\n count,\n ...values,\n ...interpolationOverride,\n defaultValue,\n ns: namespaces\n };\n const translation = key ? t(key, combinedTOpts) : defaultValue;\n const content = renderNodes(components || children, translation, i18n, reactI18nextOptions, combinedTOpts, shouldUnescape);\n const useAsParent = parent !== undefined ? parent : reactI18nextOptions.defaultTransParent;\n return useAsParent ? createElement(useAsParent, additionalProps, content) : content;\n}","import { setDefaults } from './defaults.js';\nimport { setI18n } from './i18nInstance.js';\nexport const initReactI18next = {\n type: '3rdParty',\n init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};","import { createContext } from 'react';\nimport { getDefaults, setDefaults } from './defaults.js';\nimport { getI18n, setI18n } from './i18nInstance.js';\nimport { initReactI18next } from './initReactI18next.js';\nexport { getDefaults, setDefaults, getI18n, setI18n, initReactI18next };\nexport const I18nContext = createContext();\nexport class ReportNamespaces {\n constructor() {\n this.usedNamespaces = {};\n }\n addUsedNamespaces(namespaces) {\n namespaces.forEach(ns => {\n if (!this.usedNamespaces[ns]) this.usedNamespaces[ns] = true;\n });\n }\n getUsedNamespaces() {\n return Object.keys(this.usedNamespaces);\n }\n}\nexport function composeInitialProps(ForComponent) {\n return ctx => new Promise(resolve => {\n const i18nInitialProps = getInitialProps();\n if (ForComponent.getInitialProps) {\n ForComponent.getInitialProps(ctx).then(componentsInitialProps => {\n resolve({\n ...componentsInitialProps,\n ...i18nInitialProps\n });\n });\n } else {\n resolve(i18nInitialProps);\n }\n });\n}\nexport function getInitialProps() {\n const i18n = getI18n();\n const namespaces = i18n.reportNamespaces ? i18n.reportNamespaces.getUsedNamespaces() : [];\n const ret = {};\n const initialI18nStore = {};\n i18n.languages.forEach(l => {\n initialI18nStore[l] = {};\n namespaces.forEach(ns => {\n initialI18nStore[l][ns] = i18n.getResourceBundle(l, ns) || {};\n });\n });\n ret.initialI18nStore = initialI18nStore;\n ret.initialLanguage = i18n.language;\n return ret;\n}","import { useContext } from 'react';\nimport { nodesToString, Trans as TransWithoutContext } from './TransWithoutContext.js';\nimport { getI18n, I18nContext } from './context.js';\nexport { nodesToString };\nexport function Trans(_ref) {\n let {\n children,\n count,\n parent,\n i18nKey,\n context,\n tOptions = {},\n values,\n defaults,\n components,\n ns,\n i18n: i18nFromProps,\n t: tFromProps,\n shouldUnescape,\n ...additionalProps\n } = _ref;\n const {\n i18n: i18nFromContext,\n defaultNS: defaultNSFromContext\n } = useContext(I18nContext) || {};\n const i18n = i18nFromProps || i18nFromContext || getI18n();\n const t = tFromProps || i18n && i18n.t.bind(i18n);\n return TransWithoutContext({\n children,\n count,\n parent,\n i18nKey,\n context,\n tOptions,\n values,\n defaults,\n components,\n ns: ns || t && t.ns || defaultNSFromContext || i18n && i18n.options && i18n.options.defaultNS,\n i18n,\n t: tFromProps,\n shouldUnescape,\n ...additionalProps\n });\n}","import { useState, useEffect, useContext, useRef } from 'react';\nimport { getI18n, getDefaults, ReportNamespaces, I18nContext } from './context.js';\nimport { warnOnce, loadNamespaces, loadLanguages, hasLoadedNamespace } from './utils.js';\nconst usePrevious = (value, ignore) => {\n const ref = useRef();\n useEffect(() => {\n ref.current = ignore ? ref.current : value;\n }, [value, ignore]);\n return ref.current;\n};\nexport function useTranslation(ns) {\n let props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n i18n: i18nFromProps\n } = props;\n const {\n i18n: i18nFromContext,\n defaultNS: defaultNSFromContext\n } = useContext(I18nContext) || {};\n const i18n = i18nFromProps || i18nFromContext || getI18n();\n if (i18n && !i18n.reportNamespaces) i18n.reportNamespaces = new ReportNamespaces();\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using initReactI18next');\n const notReadyT = (k, optsOrDefaultValue) => {\n if (typeof optsOrDefaultValue === 'string') return optsOrDefaultValue;\n if (optsOrDefaultValue && typeof optsOrDefaultValue === 'object' && typeof optsOrDefaultValue.defaultValue === 'string') return optsOrDefaultValue.defaultValue;\n return Array.isArray(k) ? k[k.length - 1] : k;\n };\n const retNotReady = [notReadyT, {}, false];\n retNotReady.t = notReadyT;\n retNotReady.i18n = {};\n retNotReady.ready = false;\n return retNotReady;\n }\n if (i18n.options.react && i18n.options.react.wait !== undefined) warnOnce('It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.');\n const i18nOptions = {\n ...getDefaults(),\n ...i18n.options.react,\n ...props\n };\n const {\n useSuspense,\n keyPrefix\n } = i18nOptions;\n let namespaces = ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n if (i18n.reportNamespaces.addUsedNamespaces) i18n.reportNamespaces.addUsedNamespaces(namespaces);\n const ready = (i18n.isInitialized || i18n.initializedStoreOnce) && namespaces.every(n => hasLoadedNamespace(n, i18n, i18nOptions));\n function getT() {\n return i18n.getFixedT(props.lng || null, i18nOptions.nsMode === 'fallback' ? namespaces : namespaces[0], keyPrefix);\n }\n const [t, setT] = useState(getT);\n let joinedNS = namespaces.join();\n if (props.lng) joinedNS = `${props.lng}${joinedNS}`;\n const previousJoinedNS = usePrevious(joinedNS);\n const isMounted = useRef(true);\n useEffect(() => {\n const {\n bindI18n,\n bindI18nStore\n } = i18nOptions;\n isMounted.current = true;\n if (!ready && !useSuspense) {\n if (props.lng) {\n loadLanguages(i18n, props.lng, namespaces, () => {\n if (isMounted.current) setT(getT);\n });\n } else {\n loadNamespaces(i18n, namespaces, () => {\n if (isMounted.current) setT(getT);\n });\n }\n }\n if (ready && previousJoinedNS && previousJoinedNS !== joinedNS && isMounted.current) {\n setT(getT);\n }\n function boundReset() {\n if (isMounted.current) setT(getT);\n }\n if (bindI18n && i18n) i18n.on(bindI18n, boundReset);\n if (bindI18nStore && i18n) i18n.store.on(bindI18nStore, boundReset);\n return () => {\n isMounted.current = false;\n if (bindI18n && i18n) bindI18n.split(' ').forEach(e => i18n.off(e, boundReset));\n if (bindI18nStore && i18n) bindI18nStore.split(' ').forEach(e => i18n.store.off(e, boundReset));\n };\n }, [i18n, joinedNS]);\n const isInitial = useRef(true);\n useEffect(() => {\n if (isMounted.current && !isInitial.current) {\n setT(getT);\n }\n isInitial.current = false;\n }, [i18n, keyPrefix]);\n const ret = [t, i18n, ready];\n ret.t = t;\n ret.i18n = i18n;\n ret.ready = ready;\n if (ready) return ret;\n if (!ready && !useSuspense) return ret;\n throw new Promise(resolve => {\n if (props.lng) {\n loadLanguages(i18n, props.lng, namespaces, () => resolve());\n } else {\n loadNamespaces(i18n, namespaces, () => resolve());\n }\n });\n}","import { createElement, forwardRef as forwardRefReact } from 'react';\nimport { useTranslation } from './useTranslation.js';\nimport { getDisplayName } from './utils.js';\nexport function withTranslation(ns) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return function Extend(WrappedComponent) {\n function I18nextWithTranslation(_ref) {\n let {\n forwardedRef,\n ...rest\n } = _ref;\n const [t, i18n, ready] = useTranslation(ns, {\n ...rest,\n keyPrefix: options.keyPrefix\n });\n const passDownProps = {\n ...rest,\n t,\n i18n,\n tReady: ready\n };\n if (options.withRef && forwardedRef) {\n passDownProps.ref = forwardedRef;\n } else if (!options.withRef && forwardedRef) {\n passDownProps.forwardedRef = forwardedRef;\n }\n return createElement(WrappedComponent, passDownProps);\n }\n I18nextWithTranslation.displayName = `withI18nextTranslation(${getDisplayName(WrappedComponent)})`;\n I18nextWithTranslation.WrappedComponent = WrappedComponent;\n const forwardRef = (props, ref) => createElement(I18nextWithTranslation, Object.assign({}, props, {\n forwardedRef: ref\n }));\n return options.withRef ? forwardRefReact(forwardRef) : I18nextWithTranslation;\n };\n}","import { useTranslation } from './useTranslation.js';\nexport function Translation(props) {\n const {\n ns,\n children,\n ...options\n } = props;\n const [t, i18n, ready] = useTranslation(ns, options);\n return children(t, {\n i18n,\n lng: i18n.language\n }, ready);\n}","import { createElement, useMemo } from 'react';\nimport { I18nContext } from './context.js';\nexport function I18nextProvider(_ref) {\n let {\n i18n,\n defaultNS,\n children\n } = _ref;\n const value = useMemo(() => ({\n i18n,\n defaultNS\n }), [i18n, defaultNS]);\n return createElement(I18nContext.Provider, {\n value\n }, children);\n}","import { useContext } from 'react';\nimport { getI18n, I18nContext } from './context.js';\nexport function useSSR(initialI18nStore, initialLanguage) {\n let props = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n const {\n i18n: i18nFromProps\n } = props;\n const {\n i18n: i18nFromContext\n } = useContext(I18nContext) || {};\n const i18n = i18nFromProps || i18nFromContext || getI18n();\n if (i18n.options && i18n.options.isClone) return;\n if (initialI18nStore && !i18n.initializedStoreOnce) {\n i18n.services.resourceStore.data = initialI18nStore;\n i18n.options.ns = Object.values(initialI18nStore).reduce((mem, lngResources) => {\n Object.keys(lngResources).forEach(ns => {\n if (mem.indexOf(ns) < 0) mem.push(ns);\n });\n return mem;\n }, i18n.options.ns);\n i18n.initializedStoreOnce = true;\n i18n.isInitialized = true;\n }\n if (initialLanguage && !i18n.initializedLanguageOnce) {\n i18n.changeLanguage(initialLanguage);\n i18n.initializedLanguageOnce = true;\n }\n}","import { createElement } from 'react';\nimport { useSSR } from './useSSR.js';\nimport { composeInitialProps } from './context.js';\nimport { getDisplayName } from './utils.js';\nexport function withSSR() {\n return function Extend(WrappedComponent) {\n function I18nextWithSSR(_ref) {\n let {\n initialI18nStore,\n initialLanguage,\n ...rest\n } = _ref;\n useSSR(initialI18nStore, initialLanguage);\n return createElement(WrappedComponent, {\n ...rest\n });\n }\n I18nextWithSSR.getInitialProps = composeInitialProps(WrappedComponent);\n I18nextWithSSR.displayName = `withI18nextSSR(${getDisplayName(WrappedComponent)})`;\n I18nextWithSSR.WrappedComponent = WrappedComponent;\n return I18nextWithSSR;\n };\n}","export { Trans } from './Trans.js';\nexport { Trans as TransWithoutContext } from './TransWithoutContext.js';\nexport { useTranslation } from './useTranslation.js';\nexport { withTranslation } from './withTranslation.js';\nexport { Translation } from './Translation.js';\nexport { I18nextProvider } from './I18nextProvider.js';\nexport { withSSR } from './withSSR.js';\nexport { useSSR } from './useSSR.js';\nexport { initReactI18next } from './initReactI18next.js';\nexport { setDefaults, getDefaults } from './defaults.js';\nexport { setI18n, getI18n } from './i18nInstance.js';\nexport { I18nContext, composeInitialProps, getInitialProps } from './context.js';\nexport const date = () => '';\nexport const time = () => '';\nexport const number = () => '';\nexport const select = () => '';\nexport const plural = () => '';\nexport const selectOrdinal = () => '';"],"names":["module","exports","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","t","n","r","type","name","voidElement","attrs","children","match","charAt","startsWith","s","indexOf","comment","slice","a","RegExp","c","exec","trim","o","l","split","lastIndex","substring","create","e","content","push","join","reduce","parse","components","m","u","replace","f","h","p","d","v","x","g","test","stringify","warn","console","_len","args","Array","_key","alreadyWarned","warnOnce","_len2","_key2","Date","loadedClb","i18n","cb","isInitialized","initialized","setTimeout","off","on","loadNamespaces","ns","loadLanguages","lng","forEach","options","getDisplayName","Component","displayName","matchHtmlEntity","htmlEntities","unescapeHtmlEntity","i18nInstance","defaultOptions","bindI18n","bindI18nStore","transEmptyNodeValue","transSupportBasicHtmlNodes","transWrapTextNodes","transKeepBasicHtmlNodesFor","useSuspense","unescape","text","setDefaults","undefined","getDefaults","setI18n","instance","getI18n","hasChildren","node","checkLength","base","props","getChildren","i18nIsDynamicList","getAsArray","data","isArray","nodesToString","i18nOptions","stringNode","childrenArray","keepArray","child","childIndex","isValidElement","childPropsCount","keys","shouldKeepChild","childChildren","format","clone","value","Trans","_ref","count","parent","i18nKey","context","tOptions","values","defaults","i18nFromProps","tFromProps","shouldUnescape","additionalProps","k","reactI18nextOptions","react","namespaces","defaultNS","nodeAsString","defaultValue","hashTransKey","interpolation","defaultVariables","interpolationOverride","prefix","suffix","combinedTOpts","targetString","emptyChildrenButNeedsHandling","map","keep","getData","childs","ast","opts","renderInner","rootReactNode","mappedChildren","mapAST","toString","every","hasValidReactChildren","pushTranslatedJSX","inner","mem","isVoid","dummy","cloneElement","Children","ref","reactNode","astNode","reactNodes","translationContent","services","interpolator","interpolate","language","tmp","parseInt","newTarget","mergeProps","isElement","isValidTranslationWithChildren","isEmptyTransWithHTML","isKnownComponent","Number","isNaN","parseFloat","createElement","wrapTextNodes","renderNodes","useAsParent","defaultTransParent","initReactI18next","init","I18nContext","createContext","ReportNamespaces","constructor","usedNamespaces","addUsedNamespaces","getUsedNamespaces","composeInitialProps","ForComponent","ctx","Promise","resolve","i18nInitialProps","getInitialProps","then","componentsInitialProps","reportNamespaces","ret","initialI18nStore","languages","getResourceBundle","initialLanguage","i18nFromContext","defaultNSFromContext","useContext","usePrevious","ignore","useRef","useEffect","current","useTranslation","notReadyT","optsOrDefaultValue","retNotReady","ready","wait","keyPrefix","initializedStoreOnce","ignoreJSONStructure","hasLoadedNamespace","precheck","loadNotPending","backendConnector","backend","isLanguageChangingTo","fallbackLng","lastLng","toLowerCase","loadState","state","hasResourceBundle","resources","partialBundledLanguages","oldI18nextHasLoadedNamespace","getT","getFixedT","nsMode","setT","useState","joinedNS","previousJoinedNS","isMounted","boundReset","store","isInitial","withTranslation","WrappedComponent","I18nextWithTranslation","forwardedRef","rest","passDownProps","tReady","withRef","forwardRef","Translation","I18nextProvider","useMemo","Provider","useSSR","isClone","resourceStore","lngResources","initializedLanguageOnce","changeLanguage","withSSR","I18nextWithSSR","date","time","number","plural","selectOrdinal"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_next_bricks_data_view=self.webpackChunk_next_bricks_data_view||[]).push([[8691,3458],{3458:(e,t,r)=>{function o(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return function(n,a){if("string"==typeof t?n.name===t:t.includes(n.name)){for(var i=[],s=1;s<=r;s++){var c=a[a.length-s];if("MemberExpression"===(null==c?void 0:c.node.type)&&"object"===c.key){var u=c.node;u.computed||"Identifier"!==u.property.type?u.computed&&"Literal"===u.property.type&&"string"==typeof u.property.value?i.push(o?"".concat(n.name,".").concat(u.property.value):u.property.value):e.hasNonStaticUsage=!0:i.push(o?"".concat(n.name,".").concat(u.property.name):u.property.name)}else e.hasNonStaticUsage=!0}i.length===r&&e.usedProperties.add(i.join("."))}}}function n(e,t){return function(r,o,n){if(o.name===e){var a=n[n.length-1],i=n[n.length-2];if("CallExpression"===(null==i?void 0:i.node.type)&&"callee"===(null==i?void 0:i.key)&&"MemberExpression"===(null==a?void 0:a.node.type)&&"object"===a.key&&(a.node.computed?"Literal"===a.node.property.type&&a.node.property.value===t:"Identifier"===a.node.property.type&&a.node.property.name===t)){var s=i.node.arguments;if(s.length>0){var c=s[0];"Literal"===c.type&&"string"==typeof c.value?r.usedArgs.add(c.value):r.hasNonStaticUsage=!0}}}}}r.r(t),r.d(t,{beforeVisitGlobalMember:()=>o,collectAppGetMenuUsage:()=>a,collectInstalledAppsHasUsage:()=>i,collectMemberUsage:()=>p,collectMemberUsageInFunction:()=>g,createProviderClass:()=>c.createProviderClass,scanPermissionActionsInAny:()=>m,scanPermissionActionsInStoryboard:()=>b,strictCollectMemberUsage:()=>l,track:()=>d,trackAll:()=>f,traverseStoryboardExpressions:()=>u,traverseStoryboardFunction:()=>v,traverseStoryboardFunctions:()=>y,unwrapProvider:()=>c.unwrapProvider});var a=n("APP","getMenu"),i=n("INSTALLED_APPS","has"),s=r(4606),c=r(7004);function u(e,t,r){var o=new WeakSet,{matchExpressionString:n,visitNotMatchedExpressionString:a,visitNonExpressionString:i,visitObject:u}="string"==typeof r?{matchExpressionString:e=>e.includes(r)}:r;!function e(r){if("string"==typeof r)if((0,s.isEvaluable)(r))if(n(r))try{(0,s.preevaluate)(r,{withParent:!0,hooks:{beforeVisitGlobal(e,o){t(e,o,r)}}})}catch(e){console.error("Parse storyboard expression failed:",e)}else null==a||a(r);else null==i||i(r);else if((0,c.isObject)(r)){if(o.has(r))return;for(var l of(o.add(r),null==u||u(r),Array.isArray(r)?r:Object.values(r)))e(l)}}(e)}function l(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,{hasNonStaticUsage:o,nonStaticUsage:n,usedProperties:a}=p(e,t,r);if(o)throw new Error("Non-static usage of ".concat(t,' is prohibited, check your expression: "').concat(n,'"'));return a}function p(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,n={usedProperties:new Set,hasNonStaticUsage:!1},a=o(n,t,r);return u(e,((e,t,r)=>{a(e,t),n.hasNonStaticUsage&&(n.nonStaticUsage=r)}),t),n}function d(e,t,r){if(e.includes(t)){var n,a={usedProperties:new Set,hasNonStaticUsage:!1},{expression:i}=(0,s.preevaluate)(e,{withParent:!0,hooks:{beforeVisitGlobal:o(a,r)}});if("SequenceExpression"===i.type&&(n=i.expressions[0])&&"Literal"===n.type&&n.value===t){if(a.usedProperties.size>0)return a.usedProperties;console.warn('You are using "'.concat(t,'" but no `').concat(r,"` usage found in your expression: ").concat(JSON.stringify(e)))}}return!1}function f(e){if(e){var t={usedProperties:new Set,hasNonStaticUsage:!1};if((0,s.preevaluate)(e,{withParent:!0,hooks:{beforeVisitGlobal:o(t,["CTX","STATE","FORM_STATE"],1,!0)}}),t.usedProperties.size>0){var r=[...t.usedProperties],n={context:!1,state:!1,formState:!1},a={CTX:"context",STATE:"state",FORM_STATE:"formState"};return r.forEach((e=>{var[t,r]=e.split(".");n[a[t]]||(n[a[t]]=[]),n[a[t]].push(r)})),n}console.warn('You are using track all but no "CTX" or "STATE" or "FORM_STATE" usage found in your expression: '.concat(JSON.stringify(e)))}return!1}function y(e,t){if(Array.isArray(e))for(var r of e)v(r,t)}function v(e,t,r){try{(0,s.precookFunction)(e.source,{typescript:e.typescript,withParent:!0,hooks:{beforeVisitGlobal:t}})}catch(t){r||console.error('Parse storyboard function "'.concat(e.name,'" failed:'),t)}}function g(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1,a={usedProperties:new Set,hasNonStaticUsage:!1};if(v(e,o(a,t,n),r),a.hasNonStaticUsage&&!r)throw new Error("Non-static usage of ".concat(t,' is prohibited, check your function: "').concat(e.name,'"'));return a.usedProperties.delete(e.name),a.usedProperties}var h="PERMISSIONS",S="check";function b(e){var t,r=new Set,o=P(r),{customTemplates:n,functions:a}=null!==(t=e.meta)&&void 0!==t?t:{};return u([e.routes,n],o,h),y(a,o),Array.from(r)}function m(e){var t=new Set;return u(e,P(t),h),Array.from(t)}function P(e){return function(t,r){if(t.name===h){var o=r[r.length-1],n=r[r.length-2];if("CallExpression"===(null==n?void 0:n.node.type)&&"callee"===(null==n?void 0:n.key)&&"MemberExpression"===(null==o?void 0:o.node.type)&&"object"===o.key&&(o.node.computed?"Literal"===o.node.property.type&&o.node.property.value===S:"Identifier"===o.node.property.type&&o.node.property.name===S))for(var a of n.node.arguments)"Literal"===a.type&&"string"==typeof a.value&&e.add(a.value)}}}}}]);
|
|
2
|
-
//# sourceMappingURL=8691.e3206ecb.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/8691.e3206ecb.js","mappings":"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","sources":["webpack:///../../node_modules/@next-core/utils/dist/esm/storyboard/expressions/beforeVisitGlobalMember.js","webpack:///../../node_modules/@next-core/utils/dist/esm/storyboard/expressions/collectMemberCallUsage.js","webpack:///../../node_modules/@next-core/utils/dist/esm/storyboard/expressions/traverse.js","webpack:///../../node_modules/@next-core/utils/dist/esm/storyboard/expressions/collectMemberUsage.js","webpack:///../../node_modules/@next-core/utils/dist/esm/storyboard/expressions/track.js","webpack:///../../node_modules/@next-core/utils/dist/esm/storyboard/functions/traverse.js","webpack:///../../node_modules/@next-core/utils/dist/esm/storyboard/functions/collectMemberUsageInFunction.js","webpack:///../../node_modules/@next-core/utils/dist/esm/storyboard/permissions.js"],"sourcesContent":["export function beforeVisitGlobalMember(usage, objectName) {\n var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;\n var rememberObjectName = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n return function beforeVisitGlobal(node, parent) {\n if (typeof objectName === \"string\" ? node.name === objectName : objectName.includes(node.name)) {\n var segments = [];\n for (var i = 1; i <= level; i++) {\n var memberParent = parent[parent.length - i];\n if ((memberParent === null || memberParent === void 0 ? void 0 : memberParent.node.type) === \"MemberExpression\" && memberParent.key === \"object\") {\n var memberNode = memberParent.node;\n if (!memberNode.computed && memberNode.property.type === \"Identifier\") {\n segments.push(rememberObjectName ? \"\".concat(node.name, \".\").concat(memberNode.property.name) : memberNode.property.name);\n } else if (memberNode.computed && memberNode.property.type === \"Literal\" && typeof memberNode.property.value === \"string\") {\n segments.push(rememberObjectName ? \"\".concat(node.name, \".\").concat(memberNode.property.value) : memberNode.property.value);\n } else {\n usage.hasNonStaticUsage = true;\n }\n } else {\n usage.hasNonStaticUsage = true;\n }\n }\n if (segments.length === level) {\n usage.usedProperties.add(segments.join(\".\"));\n }\n }\n };\n}\n//# sourceMappingURL=beforeVisitGlobalMember.js.map","function collectMemberCallUsageFactory(object, property) {\n return function collectMemberCallUsage(usage, node, parent) {\n if (node.name === object) {\n var memberParent = parent[parent.length - 1];\n var callParent = parent[parent.length - 2];\n if ((callParent === null || callParent === void 0 ? void 0 : callParent.node.type) === \"CallExpression\" && (callParent === null || callParent === void 0 ? void 0 : callParent.key) === \"callee\" && (memberParent === null || memberParent === void 0 ? void 0 : memberParent.node.type) === \"MemberExpression\" && memberParent.key === \"object\" && (memberParent.node.computed ? memberParent.node.property.type === \"Literal\" && memberParent.node.property.value === property : memberParent.node.property.type === \"Identifier\" && memberParent.node.property.name === property)) {\n var args = callParent.node.arguments;\n if (args.length > 0) {\n var firstArg = args[0];\n if (firstArg.type === \"Literal\" && typeof firstArg.value === \"string\") {\n usage.usedArgs.add(firstArg.value);\n } else {\n usage.hasNonStaticUsage = true;\n }\n }\n }\n }\n };\n}\nexport var collectAppGetMenuUsage = collectMemberCallUsageFactory(\"APP\", \"getMenu\");\nexport var collectInstalledAppsHasUsage = collectMemberCallUsageFactory(\"INSTALLED_APPS\", \"has\");\n//# sourceMappingURL=collectMemberCallUsage.js.map","import { isEvaluable, preevaluate } from \"@next-core/cook\";\nimport { isObject } from \"@next-core/utils/general\";\nexport function traverseStoryboardExpressions(data, beforeVisitGlobal,\n// If `options` is a string, it means the *keyword*.\noptions) {\n var memo = new WeakSet();\n var {\n matchExpressionString,\n visitNotMatchedExpressionString,\n visitNonExpressionString,\n visitObject\n } = typeof options === \"string\" ? {\n matchExpressionString: v => v.includes(options)\n } : options;\n function traverse(value) {\n if (typeof value === \"string\") {\n if (isEvaluable(value)) {\n if (matchExpressionString(value)) {\n try {\n preevaluate(value, {\n withParent: true,\n hooks: {\n beforeVisitGlobal(node, parent) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n beforeVisitGlobal(node, parent, value);\n }\n }\n });\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Parse storyboard expression failed:\", error);\n }\n } else {\n visitNotMatchedExpressionString === null || visitNotMatchedExpressionString === void 0 || visitNotMatchedExpressionString(value);\n }\n } else {\n visitNonExpressionString === null || visitNonExpressionString === void 0 || visitNonExpressionString(value);\n }\n } else if (isObject(value)) {\n // Avoid call stack overflow.\n if (memo.has(value)) {\n return;\n }\n memo.add(value);\n visitObject === null || visitObject === void 0 || visitObject(value);\n for (var item of Array.isArray(value) ? value : Object.values(value)) {\n traverse(item);\n }\n }\n }\n traverse(data);\n}\n//# sourceMappingURL=traverse.js.map","import { beforeVisitGlobalMember } from \"./beforeVisitGlobalMember.js\";\nimport { traverseStoryboardExpressions } from \"./traverse.js\";\nexport function strictCollectMemberUsage(data, objectName) {\n var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;\n var {\n hasNonStaticUsage,\n nonStaticUsage,\n usedProperties\n } = collectMemberUsage(data, objectName, level);\n if (hasNonStaticUsage) {\n throw new Error(\"Non-static usage of \".concat(objectName, \" is prohibited, check your expression: \\\"\").concat(nonStaticUsage, \"\\\"\"));\n }\n return usedProperties;\n}\nexport function collectMemberUsage(data, objectName) {\n var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;\n var usage = {\n usedProperties: new Set(),\n hasNonStaticUsage: false\n };\n var beforeVisitGlobal = beforeVisitGlobalMember(usage, objectName, level);\n traverseStoryboardExpressions(data, (node, parent, expr) => {\n beforeVisitGlobal(node, parent);\n if (usage.hasNonStaticUsage) {\n usage.nonStaticUsage = expr;\n }\n }, objectName);\n return usage;\n}\n//# sourceMappingURL=collectMemberUsage.js.map","import { preevaluate } from \"@next-core/cook\";\nimport { beforeVisitGlobalMember } from \"./beforeVisitGlobalMember.js\";\nexport function track(raw, trackText, variableName) {\n if (raw.includes(trackText)) {\n var usage = {\n usedProperties: new Set(),\n hasNonStaticUsage: false\n };\n var {\n expression\n } = preevaluate(raw, {\n withParent: true,\n hooks: {\n beforeVisitGlobal: beforeVisitGlobalMember(usage, variableName)\n }\n });\n var trackCtxExp;\n if (expression.type === \"SequenceExpression\" && (trackCtxExp = expression.expressions[0]) && trackCtxExp.type === \"Literal\" && trackCtxExp.value === trackText) {\n if (usage.usedProperties.size > 0) {\n return usage.usedProperties;\n } else {\n // eslint-disable-next-line no-console\n console.warn(\"You are using \\\"\".concat(trackText, \"\\\" but no `\").concat(variableName, \"` usage found in your expression: \").concat(JSON.stringify(raw)));\n }\n }\n }\n return false;\n}\nexport function trackAll(raw) {\n if (raw) {\n var usage = {\n usedProperties: new Set(),\n hasNonStaticUsage: false\n };\n preevaluate(raw, {\n withParent: true,\n hooks: {\n beforeVisitGlobal: beforeVisitGlobalMember(usage, [\"CTX\", \"STATE\", \"FORM_STATE\"], 1, true)\n }\n });\n if (usage.usedProperties.size > 0) {\n var usedProperites = [...usage.usedProperties];\n var result = {\n context: false,\n state: false,\n formState: false\n };\n var keyMap = {\n CTX: \"context\",\n STATE: \"state\",\n FORM_STATE: \"formState\"\n };\n usedProperites.forEach(item => {\n var [key, name] = item.split(\".\");\n if (!result[keyMap[key]]) {\n result[keyMap[key]] = [];\n }\n result[keyMap[key]].push(name);\n });\n return result;\n } else {\n // eslint-disable-next-line no-console\n console.warn(\"You are using track all but no \\\"CTX\\\" or \\\"STATE\\\" or \\\"FORM_STATE\\\" usage found in your expression: \".concat(JSON.stringify(raw)));\n }\n }\n return false;\n}\n//# sourceMappingURL=track.js.map","import { precookFunction } from \"@next-core/cook\";\nexport function traverseStoryboardFunctions(functions, beforeVisitGlobal) {\n if (Array.isArray(functions)) {\n for (var fn of functions) {\n traverseStoryboardFunction(fn, beforeVisitGlobal);\n }\n }\n}\nexport function traverseStoryboardFunction(fn, beforeVisitGlobal, silentErrors) {\n try {\n precookFunction(fn.source, {\n typescript: fn.typescript,\n withParent: true,\n hooks: {\n beforeVisitGlobal\n }\n });\n } catch (error) {\n if (!silentErrors) {\n // eslint-disable-next-line no-console\n console.error(\"Parse storyboard function \\\"\".concat(fn.name, \"\\\" failed:\"), error);\n }\n }\n}\n//# sourceMappingURL=traverse.js.map","import { beforeVisitGlobalMember } from \"../expressions/beforeVisitGlobalMember.js\";\nimport { traverseStoryboardFunction } from \"./traverse.js\";\nexport function collectMemberUsageInFunction(fn, objectName, silentErrors) {\n var level = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;\n var usage = {\n usedProperties: new Set(),\n hasNonStaticUsage: false\n };\n traverseStoryboardFunction(fn, beforeVisitGlobalMember(usage, objectName, level), silentErrors);\n if (usage.hasNonStaticUsage && !silentErrors) {\n throw new Error(\"Non-static usage of \".concat(objectName, \" is prohibited, check your function: \\\"\").concat(fn.name, \"\\\"\"));\n }\n usage.usedProperties.delete(fn.name);\n return usage.usedProperties;\n}\n//# sourceMappingURL=collectMemberUsageInFunction.js.map","import { traverseStoryboardExpressions } from \"./expressions/index.js\";\nimport { traverseStoryboardFunctions } from \"./functions/index.js\";\nvar PERMISSIONS = \"PERMISSIONS\";\nvar check = \"check\";\nexport function scanPermissionActionsInStoryboard(storyboard) {\n var _storyboard$meta;\n var collection = new Set();\n var beforeVisitPermissions = beforeVisitPermissionsFactory(collection);\n var {\n customTemplates,\n functions\n } = (_storyboard$meta = storyboard.meta) !== null && _storyboard$meta !== void 0 ? _storyboard$meta : {};\n traverseStoryboardExpressions([storyboard.routes, customTemplates], beforeVisitPermissions, PERMISSIONS);\n traverseStoryboardFunctions(functions, beforeVisitPermissions);\n return Array.from(collection);\n}\nexport function scanPermissionActionsInAny(data) {\n var collection = new Set();\n traverseStoryboardExpressions(data, beforeVisitPermissionsFactory(collection), PERMISSIONS);\n return Array.from(collection);\n}\nfunction beforeVisitPermissionsFactory(collection) {\n return function beforeVisitPermissions(node, parent) {\n if (node.name === PERMISSIONS) {\n var memberParent = parent[parent.length - 1];\n var callParent = parent[parent.length - 2];\n if ((callParent === null || callParent === void 0 ? void 0 : callParent.node.type) === \"CallExpression\" && (callParent === null || callParent === void 0 ? void 0 : callParent.key) === \"callee\" && (memberParent === null || memberParent === void 0 ? void 0 : memberParent.node.type) === \"MemberExpression\" && memberParent.key === \"object\" && (memberParent.node.computed ? memberParent.node.property.type === \"Literal\" && memberParent.node.property.value === check : memberParent.node.property.type === \"Identifier\" && memberParent.node.property.name === check)) {\n for (var arg of callParent.node.arguments) {\n if (arg.type === \"Literal\" && typeof arg.value === \"string\") {\n collection.add(arg.value);\n }\n }\n }\n }\n };\n}\n//# sourceMappingURL=permissions.js.map"],"names":["beforeVisitGlobalMember","usage","objectName","level","arguments","length","undefined","rememberObjectName","node","parent","name","includes","segments","i","memberParent","type","key","memberNode","computed","property","value","push","concat","hasNonStaticUsage","usedProperties","add","join","collectMemberCallUsageFactory","object","callParent","args","firstArg","usedArgs","collectAppGetMenuUsage","collectInstalledAppsHasUsage","traverseStoryboardExpressions","data","beforeVisitGlobal","options","memo","WeakSet","matchExpressionString","visitNotMatchedExpressionString","visitNonExpressionString","visitObject","v","traverse","isEvaluable","preevaluate","withParent","hooks","error","console","isObject","has","item","Array","isArray","Object","values","strictCollectMemberUsage","nonStaticUsage","collectMemberUsage","Error","Set","expr","track","raw","trackText","variableName","trackCtxExp","expression","expressions","size","warn","JSON","stringify","trackAll","usedProperites","result","context","state","formState","keyMap","CTX","STATE","FORM_STATE","forEach","split","traverseStoryboardFunctions","functions","fn","traverseStoryboardFunction","silentErrors","precookFunction","source","typescript","collectMemberUsageInFunction","delete","PERMISSIONS","check","scanPermissionActionsInStoryboard","storyboard","_storyboard$meta","collection","beforeVisitPermissions","beforeVisitPermissionsFactory","customTemplates","meta","routes","from","scanPermissionActionsInAny","arg"],"sourceRoot":""}
|