@next-bricks/data-view 0.4.1 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/dist/bricks.json +4 -2
  2. package/dist/chunks/{1646.f9e1c73d.js → 1646.82681381.js} +2 -2
  3. package/dist/chunks/{1646.f9e1c73d.js.map → 1646.82681381.js.map} +1 -1
  4. package/dist/chunks/{3914.0bfee7ff.js → 3914.738b0862.js} +2 -2
  5. package/dist/chunks/{3914.0bfee7ff.js.map → 3914.738b0862.js.map} +1 -1
  6. package/dist/chunks/{4717.9fe94e34.js → 4717.ace78c3e.js} +2 -2
  7. package/dist/chunks/{4717.9fe94e34.js.map → 4717.ace78c3e.js.map} +1 -1
  8. package/dist/chunks/{4791.887754ed.js → 4791.3791c567.js} +2 -2
  9. package/dist/chunks/{4791.887754ed.js.map → 4791.3791c567.js.map} +1 -1
  10. package/dist/chunks/5114.3fb5d815.js +2 -0
  11. package/dist/chunks/5114.3fb5d815.js.map +1 -0
  12. package/dist/chunks/{5151.0c83c1fc.js → 5151.f76b1f6a.js} +2 -2
  13. package/dist/chunks/{5151.0c83c1fc.js.map → 5151.f76b1f6a.js.map} +1 -1
  14. package/dist/chunks/{5202.301749b0.js → 5202.3225e09f.js} +2 -2
  15. package/dist/chunks/{5202.301749b0.js.map → 5202.3225e09f.js.map} +1 -1
  16. package/dist/chunks/6252.a408a0a3.js +2 -0
  17. package/dist/chunks/6252.a408a0a3.js.map +1 -0
  18. package/dist/chunks/{7746.a3f7665e.js → 7746.33ddabb6.js} +2 -2
  19. package/dist/chunks/{7746.a3f7665e.js.map → 7746.33ddabb6.js.map} +1 -1
  20. package/dist/chunks/9526.4ed72968.js +2 -0
  21. package/dist/chunks/9526.4ed72968.js.map +1 -0
  22. package/dist/chunks/{9549.6ffa306f.js → 9549.78bc7312.js} +2 -2
  23. package/dist/chunks/{9549.6ffa306f.js.map → 9549.78bc7312.js.map} +1 -1
  24. package/dist/chunks/9566.7ec36f39.js +2 -0
  25. package/dist/chunks/9566.7ec36f39.js.map +1 -0
  26. package/dist/chunks/{9598.5b4f402d.js → 9598.7f1ab6cd.js} +3 -3
  27. package/dist/chunks/{9598.5b4f402d.js.map → 9598.7f1ab6cd.js.map} +1 -1
  28. package/dist/chunks/{battery-chart.93cca2b2.js → battery-chart.658a3780.js} +2 -2
  29. package/dist/chunks/{battery-chart.93cca2b2.js.map → battery-chart.658a3780.js.map} +1 -1
  30. package/dist/chunks/{cabinet-app-layer.98eca353.js → cabinet-app-layer.284d2315.js} +3 -3
  31. package/dist/chunks/{cabinet-app-layer.98eca353.js.map → cabinet-app-layer.284d2315.js.map} +1 -1
  32. package/dist/chunks/cabinet-container.211817d5.js +3 -0
  33. package/dist/chunks/cabinet-container.211817d5.js.map +1 -0
  34. package/dist/chunks/cabinet-node.ccaef2e3.js +3 -0
  35. package/dist/chunks/cabinet-node.ccaef2e3.js.map +1 -0
  36. package/dist/chunks/cabinet-thumbnail.ae126f7b.js +3 -0
  37. package/dist/chunks/cabinet-thumbnail.ae126f7b.js.map +1 -0
  38. package/dist/chunks/complex-search.83f3379d.js +2 -0
  39. package/dist/chunks/complex-search.83f3379d.js.map +1 -0
  40. package/dist/chunks/gear-background.7cbb0818.js +2 -0
  41. package/dist/chunks/gear-background.7cbb0818.js.map +1 -0
  42. package/dist/chunks/graph-layout-grid.635343e1.js +2 -0
  43. package/dist/chunks/graph-layout-grid.635343e1.js.map +1 -0
  44. package/dist/chunks/{grid-background.0acb596c.js → grid-background.6fd3276e.js} +2 -2
  45. package/dist/chunks/{grid-background.0acb596c.js.map → grid-background.6fd3276e.js.map} +1 -1
  46. package/dist/chunks/loading-panel.c495be3f.js +2 -0
  47. package/dist/chunks/loading-panel.c495be3f.js.map +1 -0
  48. package/dist/chunks/main.1c93e93f.js +2 -0
  49. package/dist/chunks/main.1c93e93f.js.map +1 -0
  50. package/dist/chunks/modern-style-treemap.a642bd3c.js +3 -0
  51. package/dist/chunks/modern-style-treemap.a642bd3c.js.LICENSE.txt +5 -0
  52. package/dist/chunks/modern-style-treemap.a642bd3c.js.map +1 -0
  53. package/dist/chunks/radar-chart.e9b3b370.js +2 -0
  54. package/dist/chunks/radar-chart.e9b3b370.js.map +1 -0
  55. package/dist/index.cafe1444.js +2 -0
  56. package/dist/index.cafe1444.js.map +1 -0
  57. package/dist-types/app-wall/utils.d.ts +2 -2
  58. package/dist-types/bootstrap.d.ts +2 -0
  59. package/dist-types/complex-search/index.d.ts +1 -1
  60. package/dist-types/gear-background/index.d.ts +25 -0
  61. package/dist-types/gear-background/index.spec.d.ts +1 -0
  62. package/dist-types/radar-chart/index.d.ts +69 -0
  63. package/dist-types/radar-chart/index.spec.d.ts +7 -0
  64. package/dist-types/radar-chart/interface.d.ts +89 -0
  65. package/dist-types/radar-chart/radar.d.ts +3 -0
  66. package/dist-types/radar-chart/utils.d.ts +107 -0
  67. package/dist-types/radar-chart/utils.spec.d.ts +1 -0
  68. package/package.json +2 -2
  69. package/dist/chunks/1065.a58e6fc5.js +0 -2
  70. package/dist/chunks/1065.a58e6fc5.js.map +0 -1
  71. package/dist/chunks/5114.4bb7f544.js +0 -2
  72. package/dist/chunks/5114.4bb7f544.js.map +0 -1
  73. package/dist/chunks/cabinet-container.52680afc.js +0 -3
  74. package/dist/chunks/cabinet-container.52680afc.js.map +0 -1
  75. package/dist/chunks/cabinet-node.888717db.js +0 -3
  76. package/dist/chunks/cabinet-node.888717db.js.map +0 -1
  77. package/dist/chunks/cabinet-thumbnail.00d41559.js +0 -3
  78. package/dist/chunks/cabinet-thumbnail.00d41559.js.map +0 -1
  79. package/dist/chunks/complex-search.838a9599.js +0 -2
  80. package/dist/chunks/complex-search.838a9599.js.map +0 -1
  81. package/dist/chunks/graph-layout-grid.8e2c1fa8.js +0 -2
  82. package/dist/chunks/graph-layout-grid.8e2c1fa8.js.map +0 -1
  83. package/dist/chunks/loading-panel.757cf1ae.js +0 -2
  84. package/dist/chunks/loading-panel.757cf1ae.js.map +0 -1
  85. package/dist/chunks/main.4c8eaf8e.js +0 -2
  86. package/dist/chunks/main.4c8eaf8e.js.map +0 -1
  87. package/dist/chunks/modern-style-treemap.69ec70c8.js +0 -2
  88. package/dist/chunks/modern-style-treemap.69ec70c8.js.map +0 -1
  89. package/dist/index.eff429f8.js +0 -2
  90. package/dist/index.eff429f8.js.map +0 -1
  91. /package/dist/chunks/{9598.5b4f402d.js.LICENSE.txt → 9598.7f1ab6cd.js.LICENSE.txt} +0 -0
  92. /package/dist/chunks/{cabinet-app-layer.98eca353.js.LICENSE.txt → cabinet-app-layer.284d2315.js.LICENSE.txt} +0 -0
  93. /package/dist/chunks/{cabinet-container.52680afc.js.LICENSE.txt → cabinet-container.211817d5.js.LICENSE.txt} +0 -0
  94. /package/dist/chunks/{cabinet-node.888717db.js.LICENSE.txt → cabinet-node.ccaef2e3.js.LICENSE.txt} +0 -0
  95. /package/dist/chunks/{cabinet-thumbnail.00d41559.js.LICENSE.txt → cabinet-thumbnail.ae126f7b.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([[5114,3518],{2685:(e,t,r)=>{r.d(t,{j:()=>R});var a=r(7896),n=r(8657),o=r.n(n),i=r(6995),l=r(5095),c=r(4827),s=r(2839),p=r(3028),d=(r(4012),r(37),r(7984),(e,t,r)=>{var a=(new i.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 c=new l.cp(o),s=(new i.Pa4).lerpVectors(e,t,.5);c.position.copy(s);var p=(new i._fP).setFromUnitVectors(new i.Pa4(0,1,0).normalize(),a.clone().normalize());return c.setRotationFromQuaternion(p),c}),u=(e,t)=>{var r=new i.Pa4(e[0],e[1],e[2]),a=new i.Pa4(t[0],t[1],t[2]);return{centerVector:(new i.Pa4).lerpVectors(r,a,.5),subVector:(new i.Pa4).subVectors(r,a)}},h=e=>{var{BW:t,TW:r,d:a,TH:n,BH:o,isLeft:c}=e,s=Math.sqrt(Math.pow(r/2-t/2,2)+Math.pow(a,2)),p=document.createElement("div");p.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 d=document.createElement("div");d.className="trapezoidalLeftOrRightAnimation",p.appendChild(d);var h=c?[-t/2,0,0]:[t/2,0,0],g=c?[-r/2,0,a]:[r/2,0,a],b=new l.cp(p),{centerVector:m,subVector:v}=u(h,g);b.position.copy(m);var x=(new i._fP).setFromUnitVectors(new i.Pa4(1,0,0).normalize(),v.clone().normalize());return b.setRotationFromQuaternion(x),b},g=e=>{var{BW:t,TW:r,d:a,TH:n,BH:o,isTop:c}=e,s=Math.sqrt(Math.pow(n/2-o/2,2)+Math.pow(a,2)),p=document.createElement("div");p.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 d=document.createElement("div");d.className="trapezoidalTopOrBottomAnimation",p.appendChild(d);var h=new l.cp(p),g=c?[0,-o/2,0]:[0,o/2,0],b=c?[0,-n/2,a]:[0,n/2,a],{centerVector:m,subVector:v}=u(g,b);h.position.copy(m);var x=(new i._fP).setFromUnitVectors(new i.Pa4(0,-1,0).normalize(),v.clone().normalize());return h.setRotationFromQuaternion(x),h},b=e=>{var{objectData:t,leftBtnName:r,clusters:a,columns:n,leftOnClick:o,rightBtnName:i,rightOnClick:c,appName:s}=e,p=600,d=document.createElement("div"),u=new l.cp(d);u.position.set(...t.point);var b=t.width,m=t.height,v=1500,x=1200,w=document.createElement("div");w.style.cssText="\n width: ".concat(b,"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 l.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 l.cp(y);z.position.set(0,0,p);var T=h({BW:b,TW:v,BH:m,TH:x,d:p,isLeft:!0}),C=h({BW:b,TW:v,BH:m,TH:x,d:p,isLeft:!1}),P=g({BW:b,TW:v,BH:m,TH:x,d:p,isTop:!0}),E=g({BW:b,TW:v,BH:m,TH:x,d:p,isTop:!1});if(u.add(T,C,E,P),r){var S=document.createElement("div");S.style.cssText="\n color: #6BE0FA;\n font-size: 16px;\n font-weight: 500;\n width: ".concat(750,"px;\n line-height: 16px;\n "),S.className="visibilityAnimate";var M=document.createElement("span");M.style.cursor="pointer",M.innerText=r,S.appendChild(M);var B=new l.cp(S);B.position.set(-365,-600,14),B.rotateX(Math.PI/2),z.add(B),M.onclick=o}if(i){var F=document.createElement("div");F.style.cssText="\n color: #FFFFFF;\n font-size: 20px;\n font-weight: 500;\n width: ".concat(750,"px;\n text-shadow: 0px 1px 4px #3366FF;\n text-align: right;\n "),F.className="visibilityAnimate";var A=document.createElement("span");A.style.cursor="pointer",A.innerText=i,F.appendChild(A);var R=new l.cp(F);R.position.set(365,-600,14),R.rotateX(Math.PI/2),z.add(R),A.onclick=c}return u.add(z),u},m=(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},v=(e,t,r,a)=>{var n=new i.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},x=(e,t,r,a,n,o)=>{var l=new i.Tme,c=new i.Pa4,s=w(e,t,r,a,n);return l.position.x=s.x,l.position.y=s.y,l.position.z=s.z,c.x=0,c.y=l.position.y,c.z=o,l.lookAt(c),l},w=(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},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;if(r.forEach((function(e){a>=Math.min.apply(null,e.numRange)&&a<Math.max.apply(null,e.numRange)&&(l=e.distance)})),l>0)return Math.max(l,i);var c=200*Math.ceil((a-160)/40)+3200;return Math.max(c,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=>{var t=e.composedPath().find((e=>null==e?void 0:e.shadowRoot));if("DATA-VIEW.APP-WALL-CARD-ITEM"===(null==t?void 0:t.tagName))return t;var r=document.elementFromPoint(e.clientX,e.clientY),a=null==r?void 0:r.shadowRoot.elementFromPoint(e.clientX,e.clientY);return"DATA-VIEW.APP-WALL-CARD-ITEM"===(null==a?void 0:a.tagName)?a:null},z=r(4949),T=r(2779),C=r.n(T),P=(Array.from({length:262}).map(((e,t)=>({key:"".concat(t),shortName:"shortName-".concat(t),status:t%5?"normal":"warning",cardItemProps:{cardTitle:"cardTitle",description:"description"},systemCardProps:{cardTitle:"cardTitle",description:"description"},trapezoidalProps:{leftBtnName:"leftBtnName",rightBtnName:"rightBtnName",clusters:Array.from({length:3}).map(((e,t)=>({title:"".concat(t,"集群容器"),type:t%2?"host":"k8s",data:Array.from({length:100}).map((e=>({type:"physical-machine",nodeTitle:"255.255.255"})))})))}}))),{width:120,height:160,outerWidth:140,outerHeight:180,lgWidth:180,lgHeight:240}),E=[{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}],S=45,M=100,B=300,F=e=>{var t=Math.ceil(Math.sqrt(e*P.outerHeight/(.4*P.outerWidth))),r=Math.ceil(e/t),a=parseInt("".concat(t*P.outerWidth*180))/(M*Math.PI);return{maxX:t,maxY:r,radius:a,bounds:{width:2*a*Math.sin(Math.PI*(M/2)/180)+P.outerWidth,height:r*P.outerHeight,margin:100,z:a-a*Math.cos(Math.PI*(M/2)/180)}}},A=(0,z.wrapBrick)("data-view.app-wall-system-card");function R(e){var{relations:t,onSystemCardButtonClick:r,useDblclick:p,handleCardDbClick:u,rightBtnOnClick:h,leftBtnOnClick:g}=e,[w,z]=(0,n.useState)(null),T=(0,n.useRef)(),R=(0,n.useRef)(),I=(0,n.useRef)(),_=(0,n.useRef)(),W=(0,n.useRef)(),X=(0,n.useRef)(),N=(0,n.useRef)(),D=(0,n.useRef)(),L=(0,n.useRef)(),H=(0,n.useRef)(),O=(0,n.useRef)({table:[],curve:[]}),V=(0,n.useRef)([]),Z=(0,n.useRef)([]),j=(0,n.useRef)({maxX:0,maxY:0,radius:0,bounds:{width:0,height:0,margin:100,z:0}}),Y=(0,n.useRef)({element:null,mouseoverTimer:null,mouseoutTimer:null,clickTimer:null,dblClickTimer:null,isShowGraph3D:!1,isShowAppInfo:!1,isShowRelations:!1,enable:!0}),G=(0,n.useCallback)((()=>{X.current.render(N.current,D.current)}),[]),U=e=>{var t,r;if(null===(t=Y.current)||void 0===t||!t.element)return null==e?void 0:e();var{__objectCSS:a,__curve:n,__userData:o}=null===(r=Y.current)||void 0===r?void 0:r.element;new s.kX(a.rotation).to({x:n.rotation.x,y:n.rotation.y,z:n.rotation.z},300).start(),new s.kX(a.scale).to({x:1,y:1,z:1},300).start(),new s.kX(a.position).to({x:n.position.x,y:n.position.y,z:n.position.z},300).onUpdate(G).onStart((()=>{var e;a.element.classList.remove("status-".concat(o.status||"normal","-card")),null===(e=V.current)||void 0===e||e.forEach((e=>{e.element.style.opacity="1"})),Z.current.forEach((e=>{N.current.remove(e)})),Z.current=[],G()})).onComplete((()=>{var t;Y.current.isShowRelations=!1,null==e||e(null===(t=Y.current)||void 0===t?void 0:t.element)})).start()},q=(e,t)=>{Y.current.enable=!1;for(var r=0;r<V.current.length;r++){var a=V.current[r],n=e[r];new s.kX(a.position).to({x:n.position.x,y:n.position.y,z:n.position.z},i.M8C.randFloat(t,2*t)).easing(s.oY.Exponential.InOut).start(),new s.kX(a.rotation).to({x:n.rotation.x,y:n.rotation.y,z:n.rotation.z},i.M8C.randFloat(t,2*t)).easing(s.oY.Exponential.InOut).start()}new s.kX({}).to({},2*t).onUpdate(G).start().onComplete((()=>{Y.current.enable=!0}))},Q=e=>{L.current.reset();var t=Y.current.element.__objectCSS,r=Y.current.element.__curve;Y.current.enable=!1,Y.current.isShowAppInfo=!0;var a,n={x:r.position.x>0?2*-P.width:2*P.width,y:0,z:(D.current.position.z-500)/1.5},o={x:0,y:0,z:D.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 s.kX(t.position),p=new s.kX(t.rotation),d=new s.kX(t.position),u=new s.kX(t.rotation);e?(c.to(n,500).easing().onStart((function(){})).onComplete((()=>{W.current.hidden=!0,Y.current.element.style.opacity="1"})),p.to(i,500).easing(),d.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=V.current)||void 0===e||e.forEach((e=>{e.element.style.opacity="1"}))}))):(null===(a=V.current)||void 0===a||a.forEach((e=>{t!=e&&(e.element.style.opacity="0.2")})),c.to(n,700).easing().onStart((()=>{_.current.hidden=!1,W.current.hidden=!0})),p.to(i,700).easing(),d.to(o,500).easing().onStart((function(){Y.current.element.style.opacity="0",W.current.style.transition="transition: all .3s ease",W.current.hidden=!1})),u.to(l,500).easing()),c.chain(d).start(),p.chain(u).start(),new s.kX({}).to({},1400).onUpdate((()=>{if(G(),Math.abs(t.rotation.y)>=Math.PI/2){var e=Y.current.element.getBoundingClientRect();W.current.style.width="".concat(e.width,"px"),W.current.style.height="".concat(e.height,"px"),W.current.style.top="".concat(e.top,"px"),W.current.style.left="".concat(e.left,"px")}})).start().onComplete((function(){Y.current.enable=!0,Y.current.isShowAppInfo=!e,_.current.hidden=e}))};return(0,n.useEffect)((()=>{var e;(()=>{var e=window.innerWidth,t=window.innerHeight,r=e/t,a=new l.lX;a.setSize(e,t),R.current.replaceChildren(a.domElement);var n=new i.cPb(S,r,.1,1e4),o=new c.$(n,a.domElement);o.rotateSpeed=.5,o.minDistance=500,o.maxDistance=1e4;var s=new i.xsS;N.current=s,D.current=n,L.current=o,X.current=a})();var t=()=>{e=requestAnimationFrame(t),s.ZP.update(),L.current.update()};t();var r=()=>{D.current.aspect=window.innerWidth/window.innerHeight,D.current.updateProjectionMatrix(),X.current.setSize(window.innerWidth,window.innerHeight),G()};return L.current.addEventListener("change",G),window.addEventListener("resize",r),()=>{window.removeEventListener("resize",r),L.current.removeEventListener("change",G),L.current.dispose(),s.ZP.removeAll(),D.current.clear(),N.current.clear(),cancelAnimationFrame(e)}}),[]),(0,n.useEffect)((()=>{var t,r=(null===(t=e.dataSource)||void 0===t?void 0:t.length)||0;return(e=>{j.current=F(e)})(r),D.current.position.z=f(D.current,j.current.bounds,E,r),D.current.updateProjectionMatrix(),L.current.position0.copy(D.current.position),m(e.dataSource,j.current.maxX,j.current.maxY).forEach(((e,t)=>{var r,a,n=document.createElement("data-view.app-wall-card-item");n.status=e.status,n.cardTitle=null===(r=e.cardItemProps)||void 0===r?void 0:r.cardTitle,n.description=null===(a=e.cardItemProps)||void 0===a?void 0:a.description;var o="status-".concat((null==e?void 0:e.status)||"normal");n.className="card-item-container ".concat(o),n.style.width="".concat(P.width,"px"),n.style.height="".concat(P.height,"px"),n.classList.add("card-item-wrap");var i=new l.cp(n);i.position.set(4e3*Math.random()-2e3,4e3*Math.random()-2e3,4e3*Math.random()-2e3),N.current.add(i),V.current.push(i);var c=v(e,P,j.current.maxX,j.current.maxY);O.current.table.push(c);var s=x(e,P,j.current.maxX,j.current.maxY,M,j.current.radius);O.current.curve.push(s),i.userData=e,n.__objectCSS=i,n.__userData=e,n.__curve=s})),q(O.current.curve,1e3),()=>{L.current.reset(),s.ZP.removeAll(),V.current.map((e=>{N.current.remove(e)})),V.current=[],O.current={table:[],curve:[]},Y.current={element:null,mouseoverTimer:null,mouseoutTimer:null,clickTimer:null,dblClickTimer:null,enable:!0,isShowAppInfo:!1,isShowGraph3D:!1,isShowRelations:!1}}}),[e.dataSource]),(0,n.useEffect)((()=>{var e=T.current,r=e=>{if(Y.current.isShowAppInfo||Y.current.isShowGraph3D||!Y.current.enable)return!1;var r=k(e);clearTimeout(Y.current.mouseoverTimer),Y.current.mouseoverTimer=window.setTimeout((()=>{U((()=>{r&&!Y.current.isShowRelations&&(e=>{var{__objectCSS:r,__userData:a}=e,n={x:r.position.x+50*Math.sin(r.rotation.y),y:r.position.y,z:r.position.z+100*Math.cos(r.rotation.y)};new s.kX(r.rotation).to({x:0,y:0,z:0},300).onStart((()=>{r.element.classList.add("status-".concat(a.status||"normal","-card")),Y.current.isShowRelations=!0})).start(),new s.kX(r.scale).to({x:1.2,y:1.2,z:1.2},300).start(),new s.kX(r.position).to(n,300).onUpdate(G).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=V.current.find((t=>t.userData.key===e.target)),o=i&&d(a.position,i.position,"blue")):(i=V.current.find((t=>t.userData.key===e.source)),o=i&&d(i.position,a.position,"purple")),o&&(Z.current.push(o),N.current.add(o))})),null===(n=V.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")})),G(),Y.current.element=e})).start()})(r)}))}),500)},a=e=>{if(Y.current.isShowAppInfo||Y.current.isShowGraph3D||!Y.current.enable)return!1;U(),clearTimeout(Y.current.clickTimer),clearTimeout(Y.current.mouseoverTimer),Y.current.clickTimer=window.setTimeout((function(){var t=k(e);t&&(clearTimeout(Y.current.mouseoverTimer),e.stopPropagation(),Y.current.element=t,z(t.__userData),Q(!1))}),300)},n=e=>{var t,r;if(Y.current.isShowAppInfo||Y.current.isShowGraph3D||!Y.current.enable)return!1;var a=k(e),{__userData:n,__objectCSS:o}=a;clearTimeout(Y.current.clickTimer),clearTimeout(Y.current.mouseoverTimer),clearTimeout(Y.current.dblClickTimer),U(),p||(null===(t=n.trapezoidalProps)||void 0===t||null===(r=t.clusters)||void 0===r?void 0:r.length)<1?Y.current.dblClickTimer=window.setTimeout((function(){u(n)}),300):(Y.current.isShowGraph3D=!0,Y.current.dblClickTimer=window.setTimeout((function(){if(a){clearTimeout(Y.current.mouseoverTimer),clearTimeout(Y.current.clickTimer),R.current.classList.add("mask-container"),L.current.reset();var e={x:o.position.x,y:860+P.height*(j.current.maxY-n.y)},t=new s.kX(D.current.position),r=new s.kX({opacity:0,scale:0,borderLeftWidth:0,borderRightWidth:0,borderTopWidth:0,borderBottomWidth:0}),i=new s.kX({z:0}),l=new s.kX(D.current.position),c=new s.kX(L.current.target),p=new s.kX({blur:12,spread:0});q(O.current.table,600),t.to({x:0,y:-3600,z:1600},1e3).chain(p,r,i),r.to({opacity:1},700).onStart((()=>{var e,t,r,a,i,l=b({objectData:{width:P.width,height:P.height,point:[o.position.x,o.position.y,o.position.z]},clusters:null===(e=n.trapezoidalProps)||void 0===e?void 0:e.clusters,columns:null===(t=n.trapezoidalProps)||void 0===t?void 0:t.columns,appName:null===(r=n.trapezoidalProps)||void 0===r?void 0:r.appName,leftBtnName:null===(a=n.trapezoidalProps)||void 0===a?void 0:a.leftBtnName,rightBtnName:null===(i=n.trapezoidalProps)||void 0===i?void 0:i.rightBtnName,rightOnClick:()=>h(n),leftOnClick:()=>g(n)});H.current=l,N.current.add(l)})),i.to({z:B},1e3).delay(230).chain(l,c),l.to({x:e.x,y:-3600+e.y},1e3),c.to({x:e.x,y:e.y},1e3).onComplete((function(){I.current.style.visibility="visible"})),t.start()}}),300))};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)}}),[]),o().createElement("div",{className:"appwall-container",ref:T},o().createElement("div",{className:"appwall",ref:R}),o().createElement("div",{className:"mask",ref:_,onClick:()=>{Y.current.enable&&Q(!0)},hidden:!0},o().createElement(A,(0,a.Z)({},null==w?void 0:w.systemCardProps,{onClick:e=>e.stopPropagation(),handleClick:()=>r(w),ref:W,className:C()({infoWrapper:"normal"===(null==w?void 0:w.status),warningWrapper:"warning"===(null==w?void 0:w.status)})}))),o().createElement("div",{className:"closeBtn",ref:I,onClick:()=>{(()=>{s.ZP.removeAll();var e=new s.kX({z:0}),t=new s.kX({opacity:1}),r=new s.kX(D.current.position),a=new s.kX(L.current.target),n=new s.kX({blur:1500,spread:100});e.to({z:B},1e3).chain(r,a,n),t.to({opacity:0},1e3).onStart((()=>{N.current.remove(H.current),I.current.style.visibility="hidden"})).delay(300),r.to(L.current.position0,1e3).onComplete((function(){L.current.reset(),R.current.classList.remove("mask-container"),q(O.current.curve,600),Y.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{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}",""]);const l=i.toString()}}]);
2
- //# sourceMappingURL=5114.4bb7f544.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/5114.4bb7f544.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 { Vector3, Object3D, Quaternion, Vector3Tuple, PerspectiveCamera } 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 { AppWallRelationLine, AppWallRelationLineProps } from \"./relation-line/index.js\";\nimport type { SystemCardProps } from \"./system-card/index.js\";\nimport { TrapezoidalObjectProps, TrapezoidalProps, bounds, CardSize, DistanceConfig, Position, Target,Ele } from \"./interface.js\";\nimport { CabinetThumbnail } from \"../cabinet/cabinet-thumbnail/index.jsx\";\n\n\nexport interface AppData {\n key: string;\n status: \"normal\" | \"warning\";\n cardItemProps: AppWallCardItemProps,\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 = (sourceVector: Vector3, targetVector: Vector3, lightColor: AppWallRelationLineProps[\"lightColor\"]): CSS3DObject => {\n const subVector = new Vector3().subVectors(targetVector, sourceVector);\n const lineLength = subVector.length();\n\n const lineElement = document.createElement('data-view.app-wall-relation-line') 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(sourceVector, targetVector, 0.5);\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(new Vector3(0, 1, 0).normalize(), subVector.clone().normalize());\n lineObject.setRotationFromQuaternion(quaternion);\n\n return lineObject;\n};\n\nexport const getCenterPointOrSubPoint = (start: Vector3Tuple, end: Vector3Tuple) => {\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 ${(TH / 2 - BH / 2)}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(new Vector3(1, 0, 0).normalize(), subVector.clone().normalize());\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, ${(TW / 2 - BW / 2) + BW}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 {\n centerVector,\n subVector\n } = getCenterPointOrSubPoint(start, end);\n objectCantModel.position.copy(centerVector)\n const topQuaternion = new Quaternion().setFromUnitVectors(new Vector3(0, -1, 0).normalize(), subVector.clone().normalize());\n objectCantModel.setRotationFromQuaternion(topQuaternion);\n return objectCantModel;\n}\n/**\n * 创建梯台模型\n * @param props\n * @returns\n */\nexport const createTrapezoidalObject = (props: TrapezoidalObjectProps) => {\n const { objectData, leftBtnName, clusters, columns, leftOnClick, rightBtnName, rightOnClick,appName } = 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, BH: number = objectData.height, TW: number = 1500, TH: number = 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(\"data-view.cabinet-thumbnail\") 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, TW, BH, TH, d, isLeft: true\n }); //斜面右边\n const objectCantRightModel = createTrapezoidalRightOrLeftElement({\n BW, TW, BH, TH, d, isLeft: false\n }); //斜面右边\n const objectCantTopModel = createTrapezoidalTopOrBottomElement({\n BW, TW, BH, TH, d, isTop: true\n }); //斜面前边\n const objectCantBottomModel = createTrapezoidalTopOrBottomElement({\n BW, TW, BH, TH, d, isTop: false\n }); //斜面后面\n objectContainer.add(objectCantLeftModel, objectCantRightModel, objectCantBottomModel, objectCantTopModel)\n if (leftBtnName) {\n const btnLeft = document.createElement(\"div\");\n btnLeft.style.cssText = `\n color: #6BE0FA;\n font-size: 16px;\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.onclick = leftOnClick;\n }\n if (rightBtnName) {\n const btnRight = document.createElement(\"div\");\n btnRight.style.cssText = `\n color: #FFFFFF;\n font-size: 20px;\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\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.onclick = 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 = (dataSource: AppData[], maxX: number, maxY: number) => {\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 = (data: Target, cardSize: CardSize, maxX: number, maxY: number) => {\n const object3D = new Object3D();\n object3D.position.x = data.x * cardSize.outerWidth - (maxX / 2 + .5) * cardSize.outerWidth\n object3D.position.y = -data.y * cardSize.outerHeight + (maxY / 2 + .5) * cardSize.outerHeight\n return object3D\n}\nexport const createCurveTarget = (data: Target, cardSize: CardSize, maxX: number, maxY: number, angle: number, radius: number) => {\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 computeCurvePosition = (data: Target, cardSize: CardSize, maxX: number, maxY: number, angle: number) => {\n const position: Position = {\n x: 0, y: 0, z: 0\n },\n n = parseInt(`${maxX * cardSize.outerWidth * 180}`) / (angle * Math.PI),\n a = maxX / 2 + .5;\n position.x = n * Math.sin(Math.PI / (180 / ((data.x - a) * (angle / maxX))));\n position.y = -data.y * cardSize\n .outerHeight + (maxY / 2 + .5) * cardSize.outerHeight;\n position.z = n - Math.sqrt(n * n - position.x * position.x);\n return position\n}\nexport const computeCameraDistance = (camera: PerspectiveCamera, bounds: bounds, distanceConfig: DistanceConfig[], length: number) => {\n let n = bounds.height + 2 * bounds.margin,\n a = (bounds.width + 2 * bounds.margin) / camera.aspect,\n i = .5 * Math.max(a, n) / Math.tan(camera.fov * Math.PI / 360) + bounds.z,\n o = 0;\n distanceConfig.forEach(function (t) {\n length >= Math.min.apply(null, t.numRange) && length < Math.max.apply(null, t.numRange) && (o = t\n .distance)\n })\n if (o > 0) return Math.max(o, i);\n const s = 200 * Math.ceil((length - 160) / 40) + 3200;\n return Math.max(s, i)\n\n}\nexport const getAppRelations = (object: CSS3DObject, relationsData: Relation[]) => {\n const relations: Relation[] = [];\n const userData = object.userData;\n Array.isArray(relationsData) && relationsData.length && relationsData.forEach(function (i) {\n userData.key !== i.source && userData.key !== i.target || relations.push(i)\n });\n return relations\n}\nexport const findElementByEvent= (e: MouseEvent) => {\n const path = (e.composedPath() as Element[]).find(node => node?.shadowRoot)as Ele;\n if (path?.tagName === 'DATA-VIEW.APP-WALL-CARD-ITEM') return path\n const customEle = document.elementFromPoint(e.clientX, e.clientY)\n const target = customEle?.shadowRoot.elementFromPoint(e.clientX, e.clientY) as Ele;\n if (target?.tagName === 'DATA-VIEW.APP-WALL-CARD-ITEM') return target\n return null\n}\n","/* istanbul ignore next */\nimport React, { ReactElement, useCallback, useEffect, useRef, useState } from \"react\";\nimport { MathUtils, Object3D, PerspectiveCamera, Scene } from \"three\";\nimport { CSS3DObject, CSS3DRenderer } 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 { BaseConfig, CardSize, DistanceConfig, Ele, Position, RegisterEvents, Target, Targets } from \"./interface.js\";\nimport { AppData, computeCameraDistance, createCurveTarget, createTableTarget, createTrapezoidalObject, setAppPosition, createRelationLine, getAppRelations, findElementByEvent } from \"./utils.js\";\nimport { AppWallCardItem } from \"./card-item/index.jsx\";\nimport \"./card-item/index.js\";\nimport { SystemCard, SystemCardProps } from \"./system-card/index.jsx\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport classNames from \"classnames\";\n\n\nconst table = Array.from({\n length: 262\n}).map((v, i) => ({\n key: `${i}`,\n shortName: `shortName-${i}`,\n status: i % 5 ? 'normal' : 'warning',\n cardItemProps: {\n cardTitle: 'cardTitle',\n description: 'description'\n },\n systemCardProps: {\n cardTitle: 'cardTitle',\n description: 'description'\n },\n trapezoidalProps: {\n leftBtnName: 'leftBtnName',\n rightBtnName: 'rightBtnName',\n clusters: Array.from({\n length: 3\n }).map((c, j) => ({\n title: `${j}集群容器`,\n type: j % 2 ? 'host' : 'k8s',\n data: Array.from({\n length: 100\n }).map(p => ({\n type: 'physical-machine',\n nodeTitle: '255.255.255',\n }))\n }))\n }\n})) as any as AppData[];\nconst cardSize: CardSize = {\n width: 120,\n height: 160,\n outerWidth: 140,\n outerHeight: 180,\n lgWidth: 180,\n lgHeight: 240\n};\nconst distanceConfig: DistanceConfig[] = [{\n numRange: [0, 40],\n distance: 3000\n}, {\n numRange: [40, 60],\n distance: 2200\n}, {\n numRange: [60, 80],\n distance: 2700\n}, {\n numRange: [80, 120],\n distance: 3200\n}, {\n numRange: [120, 160],\n distance: 3400\n}, {\n numRange: [160, 300],\n distance: 3600\n}];\nconst fov = 45;\nconst angle = 100;\nconst panelSpace = 300;\n\nconst getViewBounds = (length: number) => {\n const maxX = Math.ceil(Math.sqrt(length * cardSize.outerHeight / (.4 * cardSize.outerWidth)));\n const maxY = Math.ceil(length / maxX);\n const radius = parseInt(`${maxX * cardSize.outerWidth * 180}`) / (angle * Math.PI);\n const width = 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: 100,\n z\n }\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 { relations, onSystemCardButtonClick, useDblclick, handleCardDbClick, rightBtnOnClick, leftBtnOnClick } = props;\n const [curClickCardItemAppData, setCurClickCardItemAppData] = useState<AppData>(null);\n // props.dataSource=table;\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\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\n const configRef = useRef<BaseConfig>({\n maxX: 0,\n maxY: 0,\n radius: 0,\n bounds: {\n width: 0,\n height: 0,\n margin: 100,\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 }, []);\n\n const updateViewBounds = (length: number) => {\n configRef.current = getViewBounds(length)\n };\n\n const init = () => {\n const width = window.innerWidth;\n const height = window.innerHeight;\n const aspect = width / height;\n\n const renderer = new CSS3DRenderer();\n renderer.setSize(width, height);\n appwallRef.current.replaceChildren(renderer.domElement)\n\n const camera = new PerspectiveCamera(fov, aspect, .1, 10000);\n\n const controls = new TrackballControls(camera, renderer.domElement);\n controls.rotateSpeed = .5;\n controls.minDistance = 500;\n controls.maxDistance = 10000;\n const scene = new Scene();\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 \"data-view.app-wall-card-item\"\n ) as AppWallCardItem & Ele;\n element.status = data.status;\n element.cardTitle = data.cardItemProps?.cardTitle;\n element.description = data.cardItemProps?.description;\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(4e3 * Math.random() - 2e3, 4e3 * Math.random() - 2e3, 4e3 * Math.random() - 2e3);\n\n sceneRef.current.add(objectCSS);\n objectsRef.current.push(objectCSS);\n\n const table = createTableTarget(data, cardSize, configRef.current.maxX, configRef.current.maxY);\n targetsRef.current.table.push(table)\n const curve = createCurveTarget(data, cardSize, configRef.current.maxX, configRef.current.maxY, angle, configRef.current.radius)\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(o => o.userData.key === relation.target);\n lineObject = lineTarget && createRelationLine(object.position, lineTarget.position, \"blue\");\n } else {\n lineTarget = objectsRef.current.find(o => o.userData.key === relation.source);\n lineObject = lineTarget && 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 (object != item && curRelations.every(r => r.source != item.userData.key && r.target != item.userData.key)) {\n item.element.style.opacity = '0.2'\n }\n })\n }\n\n const showElementBetweenRelation = (target: Ele) => {\n const { __objectCSS, __userData } = target\n const position: Position = {\n x: __objectCSS.position.x + 50 * Math.sin(__objectCSS.rotation.y),\n y: __objectCSS.position.y,\n z: __objectCSS.position.z + 100 * Math.cos(__objectCSS.rotation.y)\n }\n const scale = 1.2;\n new Tween(__objectCSS.rotation).to({\n x: 0,\n y: 0,\n z: 0\n }, 300).onStart(() => {\n __objectCSS.element.classList.add(`status-${__userData.status || 'normal'}-card`);\n registerEvents.current.isShowRelations = true;\n }).start();\n new Tween(__objectCSS.scale).to({\n x: scale,\n y: scale,\n z: scale\n }, 300).start();\n new Tween(__objectCSS.position).to(position, 300).onUpdate(render)\n .onComplete(function () {\n //创建连线\n createRelationLines(__objectCSS);\n render()\n registerEvents.current.element = target;\n }).start()\n }\n\n const restoreElementState = (onComplete?: (ele?: Ele) => void) => {\n if (!registerEvents.current?.element) return onComplete?.();\n const { __objectCSS, __curve: object3d, __userData } = registerEvents.current?.element\n new Tween(__objectCSS.rotation).to({\n x: object3d.rotation.x,\n y: object3d.rotation.y,\n z: object3d.rotation.z\n }, 300).start();\n new Tween(__objectCSS.scale).to({\n x: 1,\n y: 1,\n z: 1\n }, 300).start();\n new Tween(__objectCSS.position).to({\n x: object3d.position.x,\n y: object3d.position.y,\n z: object3d.position.z\n }, 300).onUpdate(render).onStart(() => {\n __objectCSS.element.classList.remove(`status-${__userData.status || 'normal'}-card`);\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 }).onComplete(() => {\n registerEvents.current.isShowRelations = false;\n onComplete?.(registerEvents.current?.element)\n }).start()\n }\n\n const transform = (targets: Object3D[], duration: number) => {\n // const preEnable=registerEvents.current.enable\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 x: target.position.x,\n y: target.position.y,\n z: target.position.z\n }, MathUtils.randFloat(duration, duration * 2))\n .easing(Easing.Exponential.InOut)\n .start();\n\n new Tween(object.rotation)\n .to({\n x: target.rotation.x,\n y: target.rotation.y,\n z: target.rotation.z\n }, MathUtils.randFloat(duration, duration * 2))\n .easing(Easing.Exponential.InOut)\n .start();\n }\n\n new Tween({})\n .to({}, duration * 2)\n .onUpdate(render)\n .start().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 z: panelSpace\n }, 1e3).chain(a, i, r);\n n.to({\n opacity: 0\n }, 1e3).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)\n .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 x: 0,\n y: 0,\n z: 0\n }, 1e3);\n r.to({\n blur: 0,\n spread: 0\n }, 1e3)\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).easing().onStart(function () {\n\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 x: target.position.x,\n y: target.position.y,\n z: target.position.z\n }, 700).easing();\n s.to({\n x: target.rotation.x,\n y: target.rotation.y,\n z: target.rotation.z\n }, 700).easing().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).easing().onStart(() => {\n //为了飞出去的途中,不能在点击其他的卡片飞出来\n maskRef.current.hidden = false;\n systemCardRef.current.hidden = true;\n });\n r.to(h, 700).easing();\n o.to(p, 500).easing().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({}).to({}, 1400).onUpdate(() => {\n render()\n if (Math.abs(object.rotation.y) >= Math.PI / 2) {\n const rect = registerEvents.current.element.getBoundingClientRect();\n systemCardRef.current.style.width = `${rect.width}px`\n systemCardRef.current.style.height = `${rect.height}px`;\n systemCardRef.current.style.top = `${rect.top}px`;\n systemCardRef.current.style.left = `${rect.left}px`;\n }\n }).start().onComplete(function () {\n registerEvents.current.enable = true;\n registerEvents.current.isShowAppInfo = !toggle;\n maskRef.current.hidden = toggle\n })\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\n const onWindowResize = () => {\n cameraRef.current.aspect = window.innerWidth / window.innerHeight;\n cameraRef.current.updateProjectionMatrix();\n rendererRef.current.setSize(window.innerWidth, window.innerHeight);\n render();\n };\n\n controlsRef.current.addEventListener('change', render);\n window.addEventListener('resize', onWindowResize);\n\n return () => {\n window.removeEventListener('resize', onWindowResize);\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 updateViewBounds(length);\n cameraRef.current.position.z = computeCameraDistance(cameraRef.current, configRef.current.bounds, distanceConfig, length);\n cameraRef.current.updateProjectionMatrix();\n controlsRef.current.position0.copy(cameraRef.current.position);\n\n const appData = setAppPosition(props.dataSource, configRef.current.maxX, configRef.current.maxY);\n createView(appData);\n transform(targetsRef.current.curve, 1000);\n\n return () => {\n resetView();\n }\n }, [props.dataSource]);\n\n useEffect(() => {\n const container = containerRef.current;\n const handleMouseover = (e: MouseEvent) => {\n if (registerEvents.current.isShowAppInfo || registerEvents.current.isShowGraph3D || !registerEvents.current.enable) return false;\n const target = findElementByEvent(e);\n clearTimeout(registerEvents.current.mouseoverTimer)\n registerEvents.current.mouseoverTimer = window.setTimeout(() => {\n restoreElementState(() => {\n target && !registerEvents.current.isShowRelations && showElementBetweenRelation(target);\n })\n }, 500);\n }\n const handleClick = (e: MouseEvent) => {\n if (registerEvents.current.isShowAppInfo || registerEvents.current.isShowGraph3D || !registerEvents.current.enable) return false;\n restoreElementState();\n clearTimeout(registerEvents.current.clickTimer), clearTimeout(registerEvents.current.mouseoverTimer);\n registerEvents.current.clickTimer = window.setTimeout(function () {\n const target = findElementByEvent(e)\n if (target) {\n (clearTimeout(registerEvents.current.mouseoverTimer))\n e.stopPropagation();\n registerEvents.current.element = target;\n setCurClickCardItemAppData(target.__userData)\n showAppInfoAnimate(false)\n }\n }, 300)\n\n }\n const handleDbClick = (e: MouseEvent) => {\n if (registerEvents.current.isShowAppInfo || registerEvents.current.isShowGraph3D || !registerEvents.current.enable) return false;\n const target = findElementByEvent(e);\n const { __userData, __objectCSS } = target\n clearTimeout(registerEvents.current.clickTimer), clearTimeout(registerEvents.current.mouseoverTimer), clearTimeout(registerEvents.current.dblClickTimer);\n restoreElementState();\n if (useDblclick || __userData.trapezoidalProps?.clusters?.length < 1) {\n registerEvents.current.dblClickTimer = window.setTimeout(function () {\n handleCardDbClick(__userData)\n }, 300)\n } else {\n registerEvents.current.isShowGraph3D = true;\n registerEvents.current.dblClickTimer = window.setTimeout(function () {\n if (target) {\n (clearTimeout(registerEvents.current.mouseoverTimer), 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: 860 + 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 x: 0,\n y: -3600,\n z: 1600\n }, 1e3).chain(s, a, i);\n a.to({\n opacity: 1\n }, 700).onStart(() => {\n const objectContainer = createTrapezoidalObject({\n objectData: {\n width: cardSize.width,\n height: cardSize.height,\n point: [__objectCSS.position.x, __objectCSS.position.y, __objectCSS.position.z]\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 z: panelSpace\n }, 1e3).delay(230).chain(r, o);\n\n r.to({\n x: u.x,\n y: -3600 + u.y\n }, 1e3);\n o.to({\n x: u.x,\n y: u.y\n }, 1e3).onComplete(function () {\n closeBtnRef.current.style.visibility = \"visible\";\n })\n n.start()\n }\n }, 300)\n }\n\n\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 }, [])\n\n return (\n <div className=\"appwall-container\" ref={containerRef} >\n <div className=\"appwall\" ref={appwallRef} ></div>\n <div className=\"mask\" ref={maskRef} onClick={() => {\n registerEvents.current.enable && showAppInfoAnimate(true)\n }} hidden={true} >\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 className=\"closeBtn\" ref={closeBtnRef} onClick={() => {\n handeReset()\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{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}\", \"\"]);\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","onclick","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","lookAt","n","a","sin","computeCameraDistance","camera","bounds","distanceConfig","margin","aspect","max","tan","fov","o","forEach","t","min","apply","numRange","distance","s","ceil","getAppRelations","object","relationsData","relations","userData","Array","isArray","key","source","target","push","findElementByEvent","e","path","composedPath","find","node","shadowRoot","tagName","customEle","elementFromPoint","clientX","clientY","from","v","shortName","status","cardItemProps","cardTitle","description","systemCardProps","trapezoidalProps","c","j","title","type","p","nodeTitle","lgWidth","lgHeight","panelSpace","getViewBounds","cos","WrappedSystemCard","wrapBrick","AppWallElement","onSystemCardButtonClick","useDblclick","handleCardDbClick","rightBtnOnClick","leftBtnOnClick","curClickCardItemAppData","setCurClickCardItemAppData","useState","containerRef","useRef","appwallRef","closeBtnRef","maskRef","systemCardRef","rendererRef","sceneRef","cameraRef","controlsRef","graph3DViewRef","targetsRef","table","curve","objectsRef","lineCiCodesRef","configRef","registerEvents","element","mouseoverTimer","mouseoutTimer","clickTimer","dblClickTimer","isShowGraph3D","isShowAppInfo","isShowRelations","enable","render","useCallback","current","restoreElementState","onComplete","_registerEvents$curre","_registerEvents$curre2","__objectCSS","__curve","object3d","__userData","Tween","rotation","to","scale","onUpdate","onStart","_objectsRef$current2","remove","item","opacity","_registerEvents$curre3","transform","targets","duration","MathUtils","easing","Easing","showAppInfoAnimate","toggle","reset","_objectsRef$current4","r","hidden","_objectsRef$current3","transition","chain","abs","rect","getBoundingClientRect","top","left","useEffect","cancel","init","window","innerWidth","innerHeight","renderer","CSS3DRenderer","setSize","replaceChildren","domElement","PerspectiveCamera","controls","TrackballControls","rotateSpeed","minDistance","maxDistance","scene","Scene","animate","requestAnimationFrame","TWEEN","update","onWindowResize","updateProjectionMatrix","addEventListener","removeEventListener","dispose","clear","cancelAnimationFrame","_props$dataSource","updateViewBounds","position0","_data$cardItemProps","_data$cardItemProps2","statusClass","objectCSS","random","handleMouseover","clearTimeout","setTimeout","_objectsRef$current","lineTarget","curRelations","relation","every","showElementBetweenRelation","handleClick","stopPropagation","handleDbClick","_userData$trapezoida","_userData$trapezoida$","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","blur","spread","_userData$trapezoida2","_userData$trapezoida3","_userData$trapezoida4","_userData$trapezoida5","_userData$trapezoida6","delay","visibility","React","ref","onClick","_extends","classNames","infoWrapper","warningWrapper","handeReset","___CSS_LOADER_EXPORT___","module","id","toString"],"sourceRoot":""}
@@ -1,3 +0,0 @@
1
- /*! For license information please see cabinet-container.52680afc.js.LICENSE.txt */
2
- (self.webpackChunk_next_bricks_data_view=self.webpackChunk_next_bricks_data_view||[]).push([[8409],{1322:(e,t,a)=>{"use strict";a.r(t),a.d(t,{CabinetContainer:()=>x,CabinetContainerComponent:()=>I});var r,i,n,o,l,s,p,c,h,b,g,d,u,f,v,x,w=a(6666),m=a(3395),y=a(381),k=a(687),C=a(5303),z=a(8657),W=a.n(z),Z=a(4949),E=a(1785),M=a(1043),F=a(6573),N=a(2779),T=a.n(N),_=a(4731),{defineElement:S,property:A,event:H}=(0,E.createDecorators)(),R=(0,Z.wrapBrick)("data-view.cabinet-node");i=S("data-view.cabinet-container",{styleTexts:[M.Z,F.Z]}),n=A({attribute:!1}),l=A({attribute:!1}),p=A(),h=A(),g=H({type:"container.click"});var j=new WeakMap,D=new WeakMap,O=new WeakMap,P=new WeakMap,B=new WeakMap,L=new WeakMap;class X extends Z.ReactNextElement{constructor(){super(...arguments),(0,m.Z)(this,L,{get:G,set:q}),(0,m.Z)(this,j,{writable:!0,value:(v(this),o(this,"host"))}),(0,m.Z)(this,D,{writable:!0,value:s(this,[])}),(0,m.Z)(this,O,{writable:!0,value:c(this)}),(0,m.Z)(this,P,{writable:!0,value:b(this)}),(0,m.Z)(this,B,{writable:!0,value:d(this)}),(0,w.Z)(this,"handleClick",(e=>{(0,k.Z)(this,L).emit(e)}))}get type(){return(0,k.Z)(this,j)}set type(e){(0,y.Z)(this,j,e)}get data(){return(0,k.Z)(this,D)}set data(e){(0,y.Z)(this,D,e)}get status(){return(0,k.Z)(this,O)}set status(e){(0,y.Z)(this,O,e)}get customTitle(){return(0,k.Z)(this,P)}set customTitle(e){(0,y.Z)(this,P,e)}render(){return W().createElement(I,{type:this.type,data:this.data,status:this.status,customTitle:this.customTitle,handleClick:this.handleClick})}}function q(e){f(this,e)}function G(){return u(this)}function I(e){var{type:t,data:a,status:r,customTitle:i,handleClick:n}=e,[o,{clientWidth:l,clientHeight:s}]=(0,_.y)(),p=(e,t,r,i)=>{var n=Math.max(i,r),o=Math.min(i,i),l=Math.min(t,e),s=Math.max(t,e),c=Math.floor((e+t)/2),h=Math.ceil((r+i)/2),b=Math.ceil(a.length/c);return c<=1?{col:1,row:a.length}:b===h?{col:c,row:b}:b>h?p(c,s,b,o):b<h?p(l,c,n,b):void 0},c=(0,z.useMemo)((()=>{if(a.length){var e=l-27,t=s-84;if(!(e<=0||t<=0)){var r=Math.floor(e/92),i=Math.floor(t/105),n=Math.floor(e/56),o=Math.floor(t/63),c=r*i,h=n*o,b=a.length;if(b<=c)return{width:Math.floor(e/r),itemWidth:92};if(b>=h)return{width:Math.floor(e/n),itemWidth:56};var{col:g}=p(r,n,i,o);return{width:Math.floor(e/g),itemWidth:Math.max(e/g-10,56)}}}}),[a.length,s,l]);return W().createElement("div",{className:T()("wrapper",{hostWrapper:"host"===t,k8sWrapper:"k8s"===t},r&&"wrapper-".concat(r)),ref:o,onClick:e=>{e.stopPropagation(),null==n||n({type:"container",data:void 0})}},W().createElement("div",{className:T()("container",{hostContainer:"host"===t,k8sContainer:"k8s"===t},r&&"container-".concat(r))},W().createElement("div",{className:"content"},W().createElement("div",{className:"contentLayout"},a.map(((e,t)=>W().createElement("div",{key:t,className:"itemContent",style:{width:null==c?void 0:c.width}},W().createElement("div",{className:"item",style:{width:null==c?void 0:c.itemWidth},onClick:t=>((e,t)=>{e.stopPropagation(),null==n||n({type:"node",data:t})})(t,e)},W().createElement(R,{type:e.type,nodeTitle:e.nodeTitle,status:e.status}))))))),i&&W().createElement("div",{className:"footer"},W().createElement("div",{className:"footerTitle"},i))))}({e:[o,s,c,b,d,u,f,v],c:[x,r]}=(0,C.Z)(X,[[n,1,"type"],[l,1,"data"],[p,1,"status"],[h,1,"customTitle"],[g,1,"onHandleClick",function(){return(0,k.Z)(this,B)},function(e){(0,y.Z)(this,B,e)}]],[i])),r()},4731:(e,t,a)=>{"use strict";a.d(t,{D:()=>i.D,y:()=>r.y});var r=a(6984),i=a(9094)},9094:(e,t,a)=>{"use strict";a.d(t,{D:()=>i});var r=a(8657);function i(e){var t=(0,r.useRef)();return(0,r.useEffect)((()=>{t.current=e})),t.current}},6984:(e,t,a)=>{"use strict";a.d(t,{y:()=>o});var r=a(3028),i=a(8657),n=a(3786);function o(e){var{targetRef:t,onResize:a}=e||{},o=(0,i.useRef)(),l=null!=t?t:o,[s,p]=(0,i.useState)({clientWidth:0,clientHeight:0}),c=(0,i.useCallback)((e=>{var{target:t}=e,{clientWidth:r=0,clientHeight:i=0}=t;p((t=>t.clientWidth===r&&t.clientHeight===i?t:(null==a||a(e),{clientWidth:r,clientHeight:i})))}),[a]);return(0,i.useEffect)((()=>{if("object"!=typeof l||null===l||!(l.current instanceof Element))throw new Error("ResizeObserver must observe an Element");var e=l.current;return(0,n.N7)(e,c),()=>{(0,n.p_)(e,c)}}),[c,l]),[l,(0,r.Z)({},s)]}},3786:(e,t,a)=>{"use strict";a.d(t,{N7:()=>o,p_:()=>l});var r=a(7209),i=new Map,n=new r.Z((e=>{e.forEach((e=>{var t,{target:a}=e;null===(t=i.get(a))||void 0===t||t.forEach((t=>t(e)))}))})),o=(e,t)=>{i.has(e)||(i.set(e,new Set),n.observe(e)),i.get(e).add(t)},l=(e,t)=>{i.has(e)&&(i.get(e).delete(t),0===i.get(e).size&&(n.unobserve(e),i.delete(e)))}},2779:(e,t)=>{var a;!function(){"use strict";var r={}.hasOwnProperty;function i(){for(var e=[],t=0;t<arguments.length;t++){var a=arguments[t];if(a){var n=typeof a;if("string"===n||"number"===n)e.push(a);else if(Array.isArray(a)){if(a.length){var o=i.apply(null,a);o&&e.push(o)}}else if("object"===n){if(a.toString!==Object.prototype.toString&&!a.toString.toString().includes("[native code]")){e.push(a.toString());continue}for(var l in a)r.call(a,l)&&a[l]&&e.push(l)}}}return e.join(" ")}e.exports?(i.default=i,e.exports=i):void 0===(a=function(){return i}.apply(t,[]))||(e.exports=a)}()},6573:(e,t,a)=>{"use strict";a.d(t,{Z:()=>l});var r=a(9601),i=a.n(r),n=a(2609),o=a.n(n)()(i());o.push([e.id,'*,\n*:after,\n*:before{box-sizing:border-box}.wrapper{width:100%;height:100%;position:relative}.container{width:100%;height:100%;border:3px solid;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:flex;flex-direction:column;cursor:pointer}.wrapper:after,\n.wrapper:before{content:"";position:absolute;left:50%;border:3px solid;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);transform:translateX(-50%)}.wrapper:before{width:calc(100% - 10px);height:100%;bottom:-14px;z-index:-1;opacity:0.6}.wrapper:after{width:calc(100% - 30px);height:100%;bottom:-24px;z-index:-10;opacity:0.4}.hostWrapper:before,\n.hostWrapper:after{border-image:radial-gradient(circle,rgba(55,229,252,1),#007ACA) 3 3}.hostWrapper:not(:has(.item:hover)):hover:before,\n.hostWrapper.wrapper-active:before{border-image:radial-gradient(circle,rgba(55,229,252,1),#45E4FF) 3 3}.k8sWrapper:after,\n.k8sWrapper:before{border-image:radial-gradient(circle,rgba(255,102,51,1),#FF663380) 3 3}.hostContainer{background:rgba(7,4,21,0.85);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border-image:radial-gradient(circle,rgba(55,229,252,1),#007ACA) 3 3}.hostContainer:not(:has(.item:hover)):hover,\n.hostContainer.container-active{border-image:radial-gradient(circle,rgba(55,229,252,1),#45E4FF) 3 3;box-shadow:inset 0 0 30px 0 #45E4FF,inset 0 0 20px 0 #45E4FF}.hostWrapper.wrapper-faded:after,\n.hostWrapper.wrapper-faded:before,\n.k8sWrapper.wrapper-faded:after,\n.k8sWrapper.wrapper-faded:before{opacity:0.1}.k8sContainer{background:rgba(7,4,21,0.8);border-image:radial-gradient(circle,rgba(255,102,51,1),#FF663399) 3 3}.k8sContainer:not(:has(.item:hover)):hover,\n.k8sContainer.container-active{box-shadow:inset 0 0 30px 0 #FF6633,inset 0 0 20px 0 #FF6633}.hostContainer.container-faded,\n.k8sContainer.container-faded{opacity:0.3}.content{flex:1;padding:20px 10px;width:100%;box-sizing:border-box;overflow-y:auto;display:flex;justify-content:center}.itemContent{display:inline-block;vertical-align:middle}.item{min-width:56px;min-height:63px;max-width:92px;margin:auto}.footer{width:100%;height:57px;text-align:center;line-height:57px;font-size:var(--auxiliary-font-size);font-weight:var(--font-weight-400);color:var(--color-normal-text);position:relative;display:flex}.footerTitle{flex:1;width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.footer:after{content:"";width:100%;height:100%;position:absolute;left:0;top:0;z-index:-1}.hostContainer > .footer:after{background:linear-gradient(180deg,rgba(26,103,157,0.2) 0%,#1B69A0 100%)}.k8sContainer > .footer:after{background:linear-gradient(180deg,rgba(255,102,51,0.1) 0%,rgba(255,102,51,0.55) 100%)}.hostContainer:not(:has(.item:hover)):hover >.footer:after,\n.hostContainer.container-active > .footer:after,\n.k8sContainer:not(:has(.item:hover)):hover > .footer:after ,\n.k8sContainer.container-active >.footer:after{opacity:0.65}',""]);const l=o.toString()},1043:(e,t,a)=>{"use strict";a.d(t,{Z:()=>l});var r=a(9601),i=a.n(r),n=a(2609),o=a.n(n)()(i());o.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}",""]);const l=o.toString()}}]);
3
- //# sourceMappingURL=cabinet-container.52680afc.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/cabinet-container.52680afc.js","mappings":"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","sources":["webpack:///./src/cabinet/cabinet-container/index.tsx","webpack:///./src/hooks/usePrevious/index.ts","webpack:///./src/hooks/useResizeObserver/index.ts","webpack:///./src/hooks/useResizeObserver/resizeObserverUtil.ts","webpack:///../../node_modules/classnames/index.js","webpack:///./src/cabinet/cabinet-container/cabinet-container.shadow.css","webpack:///./src/data-view-variables.shadow.css"],"sourcesContent":["import React, {useMemo} from \"react\";\nimport {ReactNextElement, wrapBrick} from \"@next-core/react-element\";\nimport {createDecorators, EventEmitter} from \"@next-core/element\";\nimport variablesText from \"../../data-view-variables.shadow.css\";\nimport styleText from \"./cabinet-container.shadow.css\";\nimport classNames from \"classnames\";\nimport {CabinetNodeProps, CabinetNode} from \"../cabinet-node/index.js\";\nimport {useResizeObserver} from \"../../hooks/index.js\";\n\n\nconst {defineElement, property, event} = createDecorators();\nexport type ContainerType = \"host\" | \"k8s\";\nconst WrappedNode = wrapBrick<CabinetNode, CabinetNodeProps>(\n \"data-view.cabinet-node\"\n);\nexport interface ClickEventDataType {\n type: \"node\"|\"container\",\n data: CabinetNodeProps|undefined\n}\n\nexport interface CabinetContainerProps {\n data: CabinetNodeProps[];\n type?: ContainerType;\n customTitle?: string | undefined;\n status?: \"active\" | \"faded\";\n handleClick?: (params:ClickEventDataType)=> void\n\n}\n\n/**\n * @id data-view.cabinet-container\n * @name data-view.cabinet-container\n * @docKind brick\n * @description 大屏集群容器构件\n * @author astrid\n * @noInheritDoc\n */\n@defineElement(\"data-view.cabinet-container\", {\n styleTexts: [variablesText, styleText],\n})\nclass CabinetContainer extends ReactNextElement implements CabinetContainerProps {\n /**\n * @kind ContainerType\n * @required true\n * @default host\n * @description 容器类型,有主机集群类型、k8s集群类型\n */\n @property({attribute: false})\n accessor type: ContainerType = \"host\";\n\n /**\n * @kind CabinetNodeProps[]\n * @required true\n * @default -\n * @description 数据\n */\n @property({attribute: false})\n accessor data: CabinetNodeProps[] = [];\n\n /**\n * @kind \"active\" | \"faded\"\n * @required false\n * @default\n * @description 当前状态,是否高亮或者淡化\n */\n @property()\n accessor status: \"active\" | \"faded\";\n\n /**\n * @kind string|undefined\n * @required false\n * @default -\n * @description 容器标题\n */\n @property()\n accessor customTitle: string|undefined\n\n /**\n * @detail\n * @description 节点或者container 点击事件\n */\n @event({type: \"container.click\"})\n accessor #onHandleClick!: EventEmitter<ClickEventDataType>;\n\n handleClick =(params:ClickEventDataType) =>{\n this.#onHandleClick.emit(params)\n }\n\n\n render(): React.ReactNode {\n return <CabinetContainerComponent\n type={this.type}\n data={this.data}\n status={this.status}\n customTitle={this.customTitle}\n handleClick={this.handleClick}\n />;\n }\n}\n\nexport function CabinetContainerComponent(props: CabinetContainerProps): React.ReactElement {\n const {type, data, status, customTitle, handleClick} = props;\n const [containerRef, {clientWidth, clientHeight}] = useResizeObserver<HTMLDivElement>();\n const binarySearch = (maxSizeCol: number, minSizeCol: number, maxSizeRow: number, minSizeRow: number): { col: number, row: number } => {\n // 利用二分法,去找到一个合适大小;\n const maxRow = Math.max(minSizeRow,maxSizeRow),\n minRow = Math.min(minSizeRow, minSizeRow),\n minCol = Math.min(minSizeCol, maxSizeCol),\n maxCol = Math.max(minSizeCol, maxSizeCol);\n const centerCol = Math.floor((maxSizeCol+minSizeCol)/2);\n const centerRow = Math.ceil((maxSizeRow+minSizeRow) /2);\n const needRow = Math.ceil(data.length /centerCol);\n if(centerCol <= 1){\n return {\n col: 1,\n row: data.length\n }\n }\n if(needRow === centerRow) {\n return {\n col: centerCol,\n row: needRow\n }\n }\n if(needRow > centerRow) {\n // 那么col要放大,row减少\n return binarySearch(centerCol ,maxCol,needRow, minRow)\n }\n if(needRow < centerRow) {\n // 那么col要缩小,row增加\n return binarySearch(minCol,centerCol,maxRow, needRow)\n }\n }\n const layoutWidth = useMemo(() => {\n if (!data.length) {\n return\n }\n\n //数据总量: A, 整个屏幕最大尺寸可以放 B, 整个屏幕最小尺寸可以放C,\n // B>=A,用 最大尺寸\n // C>=A: 用最小尺寸\n // B< A <C: 反推尺寸,\n const maxWidth = 92, minWidth = 56, maxHeight = 105, minHeight = 63;\n const realWidth = clientWidth - 27;\n const realHeight =clientHeight - 84;\n if(realWidth <=0 ||realHeight<=0 ){\n return\n }\n const maxSizeCol = Math.floor(realWidth / maxWidth),\n maxSizeRow = Math.floor(realHeight / maxHeight),\n minSizeCol = Math.floor(realWidth / minWidth),\n minSizeRow = Math.floor(realHeight / minHeight);\n const maxSizeNum = maxSizeCol * maxSizeRow,\n minSizeNum = minSizeCol * minSizeRow;\n const allNum = data.length;\n if (allNum <= maxSizeNum) {\n return {\n width: Math.floor(realWidth / maxSizeCol),\n itemWidth: maxWidth\n };\n } else if (allNum >= minSizeNum) {\n return {\n width: Math.floor(realWidth / minSizeCol),\n itemWidth: minWidth\n };\n } else {\n // 在区间内, 希望撑满整个屏幕, 尺寸肯定在最大和最小之间\n const {col} = binarySearch(maxSizeCol, minSizeCol, maxSizeRow, minSizeRow);\n return {\n width: Math.floor(realWidth / col),\n itemWidth: Math.max(realWidth / col - 10, minWidth)\n };\n }\n\n }, [data.length, clientHeight, clientWidth])\n const handleNodeClick = (e: React.MouseEvent<HTMLDivElement>, item: CabinetNodeProps) =>{\n e.stopPropagation();\n handleClick?.({\n type: \"node\",\n data: item\n })\n\n }\n const handleContainerClick = (e:React.MouseEvent<HTMLDivElement>)=>{\n e.stopPropagation();\n handleClick?.({\n type: \"container\",\n data: undefined\n })\n }\n\n\n return <div className={classNames(\"wrapper\",{\n hostWrapper: type === \"host\",\n k8sWrapper: type === \"k8s\",\n },status && `wrapper-${status}`)} ref={containerRef} onClick={handleContainerClick}>\n <div className={classNames(\"container\", {\n hostContainer: type === \"host\",\n k8sContainer: type === \"k8s\",\n }, status && `container-${status}`)}\n >\n <div className=\"content\">\n <div className=\"contentLayout\">\n {\n data.map((item, index) => (\n <div key={index} className=\"itemContent\" style={{width:layoutWidth?.width}}>\n <div className=\"item\" style={{width:layoutWidth?.itemWidth}} onClick={(e)=>handleNodeClick(e, item)}>\n <WrappedNode type={item.type} nodeTitle={item.nodeTitle} status={item.status} />\n </div>\n </div>))\n }\n </div>\n </div>\n {customTitle && <div className=\"footer\">\n <div className=\"footerTitle\">{customTitle}</div>\n </div>}\n </div>\n </div>\n\n}\n\nexport {CabinetContainer}\n","import {useRef, useEffect} from 'react';\nexport function usePrevious<T>(data?: T):T|undefined{\n const ref = useRef<T>();\n useEffect(()=>{\n ref.current = data\n })\n return ref.current;\n}\n","import {\n useState,\n useCallback,\n useRef,\n type RefObject,\n useEffect,\n} from \"react\";\nimport { observe, unobserve } from \"./resizeObserverUtil.js\";\n\ninterface ElementSize {\n clientWidth: number;\n clientHeight: number;\n}\n\nexport interface ResizeObserveProps<T extends Element = Element> {\n targetRef?: RefObject<T>;\n onResize?: (size: ResizeObserverEntry) => void;\n}\n\nexport function useResizeObserver<T extends Element = Element>(\n props?: ResizeObserveProps<T>\n): [RefObject<T>, ElementSize] {\n const {\n targetRef,\n onResize,\n } = props || {};\n\n const localRef = useRef<T>();\n const ref = targetRef ?? localRef;\n const [size, setSize] = useState<ElementSize>({ clientWidth: 0, clientHeight: 0 });\n\n const handleResize = useCallback(\n (entry: ResizeObserverEntry) => {\n const { target } = entry;\n const { clientWidth = 0, clientHeight = 0 } = target;\n\n setSize((prev) => {\n // skip if same size\n if (prev.clientWidth === clientWidth && prev.clientHeight === clientHeight) {\n return prev;\n }\n\n onResize?.(entry);\n\n return { clientWidth, clientHeight };\n });\n },\n [onResize]\n );\n\n useEffect(() => {\n if (\n typeof ref !== \"object\" ||\n ref === null ||\n !(ref.current instanceof Element)\n ) {\n throw new Error(\"ResizeObserver must observe an Element\");\n }\n\n const element = ref.current;\n observe(element, handleResize);\n\n return () => {\n unobserve(element, handleResize);\n };\n }, [handleResize, ref]);\n\n return [ref, { ...size }];\n}\n","import ResizeObserver from \"resize-observer-polyfill\";\n\nexport type ResizeCallback = (entry: ResizeObserverEntry) => void;\n\nconst elementListeners = new Map<Element, Set<ResizeCallback>>();\n\nexport const elementListeners_only_for_test =\n process.env.NODE_ENV === \"test\"\n ? elementListeners\n : /* istanbul ignore next */ null;\n\nconst resizeObserverCallback = (entries: ResizeObserverEntry[]): void => {\n entries.forEach((entry) => {\n const { target } = entry;\n elementListeners.get(target)?.forEach((callback) => callback(entry));\n });\n};\n\nconst resizeObserver: ResizeObserver = new (ResizeObserver as any)(resizeObserverCallback);\n\nexport const observe = (element: Element, callback: ResizeCallback): void => {\n if (!elementListeners.has(element)) {\n elementListeners.set(element, new Set());\n resizeObserver.observe(element);\n }\n\n elementListeners.get(element).add(callback);\n};\n\nexport const unobserve = (element: Element, callback: ResizeCallback): void => {\n if (elementListeners.has(element)) {\n elementListeners.get(element).delete(callback);\n\n if (elementListeners.get(element).size === 0) {\n resizeObserver.unobserve(element);\n elementListeners.delete(element);\n }\n }\n};\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\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, \"*,\\n*:after,\\n*:before{box-sizing:border-box}.wrapper{width:100%;height:100%;position:relative}.container{width:100%;height:100%;border:3px solid;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:flex;flex-direction:column;cursor:pointer}.wrapper:after,\\n.wrapper:before{content:\\\"\\\";position:absolute;left:50%;border:3px solid;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);transform:translateX(-50%)}.wrapper:before{width:calc(100% - 10px);height:100%;bottom:-14px;z-index:-1;opacity:0.6}.wrapper:after{width:calc(100% - 30px);height:100%;bottom:-24px;z-index:-10;opacity:0.4}.hostWrapper:before,\\n.hostWrapper:after{border-image:radial-gradient(circle,rgba(55,229,252,1),#007ACA) 3 3}.hostWrapper:not(:has(.item:hover)):hover:before,\\n.hostWrapper.wrapper-active:before{border-image:radial-gradient(circle,rgba(55,229,252,1),#45E4FF) 3 3}.k8sWrapper:after,\\n.k8sWrapper:before{border-image:radial-gradient(circle,rgba(255,102,51,1),#FF663380) 3 3}.hostContainer{background:rgba(7,4,21,0.85);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border-image:radial-gradient(circle,rgba(55,229,252,1),#007ACA) 3 3}.hostContainer:not(:has(.item:hover)):hover,\\n.hostContainer.container-active{border-image:radial-gradient(circle,rgba(55,229,252,1),#45E4FF) 3 3;box-shadow:inset 0 0 30px 0 #45E4FF,inset 0 0 20px 0 #45E4FF}.hostWrapper.wrapper-faded:after,\\n.hostWrapper.wrapper-faded:before,\\n.k8sWrapper.wrapper-faded:after,\\n.k8sWrapper.wrapper-faded:before{opacity:0.1}.k8sContainer{background:rgba(7,4,21,0.8);border-image:radial-gradient(circle,rgba(255,102,51,1),#FF663399) 3 3}.k8sContainer:not(:has(.item:hover)):hover,\\n.k8sContainer.container-active{box-shadow:inset 0 0 30px 0 #FF6633,inset 0 0 20px 0 #FF6633}.hostContainer.container-faded,\\n.k8sContainer.container-faded{opacity:0.3}.content{flex:1;padding:20px 10px;width:100%;box-sizing:border-box;overflow-y:auto;display:flex;justify-content:center}.itemContent{display:inline-block;vertical-align:middle}.item{min-width:56px;min-height:63px;max-width:92px;margin:auto}.footer{width:100%;height:57px;text-align:center;line-height:57px;font-size:var(--auxiliary-font-size);font-weight:var(--font-weight-400);color:var(--color-normal-text);position:relative;display:flex}.footerTitle{flex:1;width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.footer:after{content:\\\"\\\";width:100%;height:100%;position:absolute;left:0;top:0;z-index:-1}.hostContainer > .footer:after{background:linear-gradient(180deg,rgba(26,103,157,0.2) 0%,#1B69A0 100%)}.k8sContainer > .footer:after{background:linear-gradient(180deg,rgba(255,102,51,0.1) 0%,rgba(255,102,51,0.55) 100%)}.hostContainer:not(:has(.item:hover)):hover >.footer:after,\\n.hostContainer.container-active > .footer:after,\\n.k8sContainer:not(:has(.item:hover)):hover > .footer:after ,\\n.k8sContainer.container-active >.footer:after{opacity:0.65}\", \"\"]);\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}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n"],"names":["_CabinetContainer","defineElement","property","event","createDecorators","WrappedNode","wrapBrick","_dec","styleTexts","variablesText","styleText","_dec2","attribute","_dec3","_dec4","_dec5","_dec6","type","_A","WeakMap","_B","_C","_D","_E","_onHandleClick","CabinetContainer","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","get","_get_onHandleClick2","set","_set_onHandleClick2","writable","value","_initProto","_init_type","_init_data","_init_status","_init_customTitle","_init_onHandleClick","_defineProperty","params","_classPrivateFieldGet","this","emit","v","_classPrivateFieldSet","data","status","customTitle","render","React","CabinetContainerComponent","handleClick","_set_onHandleClick","_get_onHandleClick","props","containerRef","clientWidth","clientHeight","useResizeObserver","binarySearch","maxSizeCol","minSizeCol","maxSizeRow","minSizeRow","maxRow","Math","max","minRow","min","minCol","maxCol","centerCol","floor","centerRow","ceil","needRow","length","col","row","layoutWidth","useMemo","realWidth","realHeight","maxSizeNum","minSizeNum","allNum","width","itemWidth","className","classNames","hostWrapper","k8sWrapper","concat","ref","onClick","e","stopPropagation","undefined","hostContainer","k8sContainer","map","item","index","key","style","handleNodeClick","nodeTitle","c","_initClass","_applyDecs2203R","usePrevious","useRef","useEffect","current","targetRef","onResize","localRef","size","setSize","useState","handleResize","useCallback","entry","target","prev","Element","Error","element","observe","unobserve","_objectSpread","elementListeners","Map","resizeObserver","ResizeObserver","entries","forEach","_elementListeners$get","callback","has","Set","add","delete","hasOwn","hasOwnProperty","classes","i","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","includes","call","join","module","exports","default","___CSS_LOADER_EXPORT___","id"],"sourceRoot":""}
@@ -1,3 +0,0 @@
1
- /*! For license information please see cabinet-node.888717db.js.LICENSE.txt */
2
- (self.webpackChunk_next_bricks_data_view=self.webpackChunk_next_bricks_data_view||[]).push([[7335],{315:(e,t,r)=>{"use strict";r.r(t),r.d(t,{CabinetNode:()=>u});var a,n,i,o,l,s,c,p,g,u,b=r(3395),h=r(381),f=r(687),d=r(5303),v=r(8657),y=r.n(v),x=r(1785),w=r(4949),m=r(1043),z=r(6859),Z=r(2779),k=r.n(Z),E=r(4236),T=r(2368),S={"container-group":r(9192),"virtual-machine":E,"physical-machine":T},{defineElement:F,property:j}=(0,x.createDecorators)();n=F("data-view.cabinet-node",{styleTexts:[m.Z,z.Z]}),i=j(),l=j(),c=j();var _=new WeakMap,A=new WeakMap,M=new WeakMap;class N extends w.ReactNextElement{constructor(){super(...arguments),(0,b.Z)(this,_,{writable:!0,value:(g(this),o(this))}),(0,b.Z)(this,A,{writable:!0,value:s(this)}),(0,b.Z)(this,M,{writable:!0,value:p(this)})}get type(){return(0,f.Z)(this,_)}set type(e){(0,h.Z)(this,_,e)}get nodeTitle(){return(0,f.Z)(this,A)}set nodeTitle(e){(0,h.Z)(this,A,e)}get status(){return(0,f.Z)(this,M)}set status(e){(0,h.Z)(this,M,e)}render(){return y().createElement(O,{type:this.type,nodeTitle:this.nodeTitle,status:this.status})}}function O(e){var{type:t,nodeTitle:r,status:a}=e;return y().createElement("div",{className:k()("container",t&&"type-".concat(t),a&&"status-".concat(a))},y().createElement("img",{className:"image",src:S[t],alt:t}),y().createElement("div",{className:"node-title",title:r},r))}({e:[o,s,p,g],c:[u,a]}=(0,d.Z)(N,[[i,1,"type"],[l,1,"nodeTitle"],[c,1,"status"]],[n])),a()},2779:(e,t)=>{var r;!function(){"use strict";var a={}.hasOwnProperty;function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var i=typeof r;if("string"===i||"number"===i)e.push(r);else if(Array.isArray(r)){if(r.length){var o=n.apply(null,r);o&&e.push(o)}}else if("object"===i){if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]")){e.push(r.toString());continue}for(var l in r)a.call(r,l)&&r[l]&&e.push(l)}}}return e.join(" ")}e.exports?(n.default=n,e.exports=n):void 0===(r=function(){return n}.apply(t,[]))||(e.exports=r)}()},6859:(e,t,r)=>{"use strict";r.d(t,{Z:()=>l});var a=r(9601),n=r.n(a),i=r(2609),o=r.n(i)()(n());o.push([e.id,":host{display:inline-block;width:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.container{display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:opacity 0.5s}.image{width:100%;border:2px solid transparent}.node-title{width:100%;text-align:center;font-size:var(--normal-font-size);font-weight:var(--font-weight-400);color:var(--color-normal-text);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.type-container-group:hover .image,\n.type-container-group.status-active .image{box-shadow:inset 0px 0px 16px 0px #FF9900;border-color:#FF9900}.type-physical-machine:hover .image,\n.type-virtual-machine:hover .image,\n.type-physical-machine.status-active .image,\n.type-virtual-machine.status-active .image{box-shadow:inset 0px 0px 16px 0px #50FFFF;border-color:#50FFFF}.status-faded{opacity:0.3}",""]);const l=o.toString()},1043:(e,t,r)=>{"use strict";r.d(t,{Z:()=>l});var a=r(9601),n=r.n(a),i=r(2609),o=r.n(i)()(n());o.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}",""]);const l=o.toString()},2609:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var r="",a=void 0!==t[5];return t[4]&&(r+="@supports (".concat(t[4],") {")),t[2]&&(r+="@media ".concat(t[2]," {")),a&&(r+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),r+=e(t),a&&(r+="}"),t[2]&&(r+="}"),t[4]&&(r+="}"),r})).join("")},t.i=function(e,r,a,n,i){"string"==typeof e&&(e=[[null,e,void 0]]);var o={};if(a)for(var l=0;l<this.length;l++){var s=this[l][0];null!=s&&(o[s]=!0)}for(var c=0;c<e.length;c++){var p=[].concat(e[c]);a&&o[p[0]]||(void 0!==i&&(void 0===p[5]||(p[1]="@layer".concat(p[5].length>0?" ".concat(p[5]):""," {").concat(p[1],"}")),p[5]=i),r&&(p[2]?(p[1]="@media ".concat(p[2]," {").concat(p[1],"}"),p[2]=r):p[2]=r),n&&(p[4]?(p[1]="@supports (".concat(p[4],") {").concat(p[1],"}"),p[4]=n):p[4]="".concat(n)),t.push(p))}},t}},9601:e=>{"use strict";e.exports=function(e){return e[1]}},9192:(e,t,r)=>{"use strict";e.exports=r.p+"images/17ea7260.png"},2368:(e,t,r)=>{"use strict";e.exports=r.p+"images/946b4897.png"},4236:(e,t,r)=>{"use strict";e.exports=r.p+"images/55a7b5bb.png"},5303:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});var a=r(6522);function n(e,t,r){return(n=function(){function e(e,t){return function(a){!function(e,t){if(e.v)throw new Error("attempted to call addInitializer after decoration was finished")}(t),r(a,"An initializer"),e.push(a)}}function t(t,r,a,n,i,o,l,s){var c;switch(i){case 1:c="accessor";break;case 2:c="method";break;case 3:c="getter";break;case 4:c="setter";break;default:c="field"}var p,g,u={kind:c,name:l?"#"+r:r,static:o,private:l},b={v:!1};0!==i&&(u.addInitializer=e(n,b)),0===i?l?(p=a.get,g=a.set):(p=function(){return this[r]},g=function(e){this[r]=e}):2===i?p=function(){return a.value}:(1!==i&&3!==i||(p=function(){return a.get.call(this)}),1!==i&&4!==i||(g=function(e){a.set.call(this,e)})),u.access=p&&g?{get:p,set:g}:p?{get:p}:{set:g};try{return t(s,u)}finally{b.v=!0}}function r(e,t){if("function"!=typeof e)throw new TypeError(t+" must be a function")}function n(e,t){var n=(0,a.Z)(t);if(1===e){if("object"!==n||null===t)throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0");void 0!==t.get&&r(t.get,"accessor.get"),void 0!==t.set&&r(t.set,"accessor.set"),void 0!==t.init&&r(t.init,"accessor.init")}else if("function"!==n)throw new TypeError((0===e?"field":10===e?"class":"method")+" decorators must return a function or void 0")}function i(e,r,a,i,o,l,s,c){var p,g,u,b,h,f,d=a[0];if(s?p=0===o||1===o?{get:a[3],set:a[4]}:3===o?{get:a[3]}:4===o?{set:a[3]}:{value:a[3]}:0!==o&&(p=Object.getOwnPropertyDescriptor(r,i)),1===o?u={get:p.get,set:p.set}:2===o?u=p.value:3===o?u=p.get:4===o&&(u=p.set),"function"==typeof d)void 0!==(b=t(d,i,p,c,o,l,s,u))&&(n(o,b),0===o?g=b:1===o?(g=b.init,h=b.get||u.get,f=b.set||u.set,u={get:h,set:f}):u=b);else for(var v=d.length-1;v>=0;v--){var y;void 0!==(b=t(d[v],i,p,c,o,l,s,u))&&(n(o,b),0===o?y=b:1===o?(y=b.init,h=b.get||u.get,f=b.set||u.set,u={get:h,set:f}):u=b,void 0!==y&&(void 0===g?g=y:"function"==typeof g?g=[g,y]:g.push(y)))}if(0===o||1===o){if(void 0===g)g=function(e,t){return t};else if("function"!=typeof g){var x=g;g=function(e,t){for(var r=t,a=0;a<x.length;a++)r=x[a].call(e,r);return r}}else{var w=g;g=function(e,t){return w.call(e,t)}}e.push(g)}0!==o&&(1===o?(p.get=u.get,p.set=u.set):2===o?p.value=u:3===o?p.get=u:4===o&&(p.set=u),s?1===o?(e.push((function(e,t){return u.get.call(e,t)})),e.push((function(e,t){return u.set.call(e,t)}))):2===o?e.push(u):e.push((function(e,t){return u.call(e,t)})):Object.defineProperty(r,i,p))}function o(e,t){for(var r,a,n=[],o=new Map,s=new Map,c=0;c<t.length;c++){var p=t[c];if(Array.isArray(p)){var g,u,b=p[1],h=p[2],f=p.length>3,d=b>=5;if(d?(g=e,0!=(b-=5)&&(u=a=a||[])):(g=e.prototype,0!==b&&(u=r=r||[])),0!==b&&!f){var v=d?s:o,y=v.get(h)||0;if(!0===y||3===y&&4!==b||4===y&&3!==b)throw new Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: "+h);!y&&b>2?v.set(h,b):v.set(h,!0)}i(n,g,p,h,b,d,f,u)}}return l(n,r),l(n,a),n}function l(e,t){t&&e.push((function(e){for(var r=0;r<t.length;r++)t[r].call(e);return e}))}return function(t,r,a){return{e:o(t,r),get c(){return function(t,r){if(r.length>0){for(var a=[],i=t,o=t.name,l=r.length-1;l>=0;l--){var s={v:!1};try{var c=r[l](i,{kind:"class",name:o,addInitializer:e(a,s)})}finally{s.v=!0}void 0!==c&&(n(10,c),i=c)}return[i,function(){for(var e=0;e<a.length;e++)a[e].call(i)}]}}(t,a)}}}}())(e,t,r)}},5863:(e,t,r)=>{"use strict";function a(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}r.d(t,{Z:()=>a})},175:(e,t,r)=>{"use strict";function a(e,t,r){if(!t.has(e))throw new TypeError("attempted to "+r+" private field on non-instance");return t.get(e)}r.d(t,{Z:()=>a})},687:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});var a=r(175);function n(e,t){return function(e,t){return t.get?t.get.call(e):t.value}(e,(0,a.Z)(e,t,"get"))}},3395:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});var a=r(5863);function n(e,t,r){(0,a.Z)(e,t),t.set(e,r)}},381:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});var a=r(175);function n(e,t,r){return function(e,t,r){if(t.set)t.set.call(e,r);else{if(!t.writable)throw new TypeError("attempted to set read only private field");t.value=r}}(e,(0,a.Z)(e,t,"set"),r),r}},6522:(e,t,r)=>{"use strict";function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}r.d(t,{Z:()=>a})}}]);
3
- //# sourceMappingURL=cabinet-node.888717db.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/cabinet-node.888717db.js","mappings":"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","sources":["webpack:///./src/cabinet/cabinet-node/index.tsx","webpack:///../../node_modules/classnames/index.js","webpack:///./src/cabinet/cabinet-node/cabinet-node.shadow.css","webpack:///./src/data-view-variables.shadow.css","webpack:///../../node_modules/css-loader/dist/runtime/api.js","webpack:///../../node_modules/css-loader/dist/runtime/noSourceMaps.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/applyDecs2203R.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classExtractFieldDescriptor.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classApplyDescriptorGet.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classApplyDescriptorSet.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js"],"sourcesContent":["import React from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport variablesStyleText from \"../../data-view-variables.shadow.css\";\nimport styleText from \"./cabinet-node.shadow.css\";\nimport classNames from \"classnames\";\nimport virtualMachineImg from \"./virtualMachine.png\";\nimport physicalMachineImg from \"./physicalMachine.png\";\nimport containerGroupImg from \"./containerGroup.png\";\n\nconst imageMap = {\n \"container-group\": containerGroupImg,\n \"virtual-machine\": virtualMachineImg,\n \"physical-machine\": physicalMachineImg,\n}\n\nconst { defineElement, property } = createDecorators();\n\nexport interface CabinetNodeProps {\n type: \"container-group\" | \"physical-machine\" | \"virtual-machine\";\n nodeTitle: string;\n status?: \"active\" | \"faded\";\n}\n\n/**\n * @id data-view.cabinet-node\n * @name data-view.cabinet-node\n * @docKind brick\n * @description cabinet子构件----节点\n * @author nlicroshan\n * @noInheritDoc\n */\n@defineElement(\"data-view.cabinet-node\", {\n styleTexts: [variablesStyleText, styleText],\n})\nclass CabinetNode extends ReactNextElement implements CabinetNodeProps {\n /**\n * @kind \"container-group\" | \"physical-machine\" | \"virtual-machine\"\n * @required true\n * @default\n * @description 类型\n */\n @property()\n accessor type: \"container-group\" | \"physical-machine\" | \"virtual-machine\";\n\n /**\n * @kind string\n * @required true\n * @default\n * @description 标题\n */\n @property()\n accessor nodeTitle: string;\n\n /**\n * @kind \"active\" | \"faded\"\n * @required false\n * @default\n * @description 当前状态\n */\n @property()\n accessor status: \"active\" | \"faded\";\n\n render() {\n return (\n <CabinetNodeElement\n type={this.type}\n nodeTitle={this.nodeTitle}\n status={this.status}\n />\n );\n }\n}\n\nfunction CabinetNodeElement(props: CabinetNodeProps): React.ReactElement {\n const { type, nodeTitle, status } = props;\n\n return (\n <div className={classNames(\"container\", type && `type-${type}`, status && `status-${status}`)}>\n <img className=\"image\" src={imageMap[type]} alt={type} />\n <div className=\"node-title\" title={nodeTitle}>{nodeTitle}</div>\n </div>\n );\n}\n\nexport { CabinetNode };\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\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:inline-block;width:100%}:host([hidden]){display:none}*,\\n*::before,\\n*::after{box-sizing:border-box}.container{display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:opacity 0.5s}.image{width:100%;border:2px solid transparent}.node-title{width:100%;text-align:center;font-size:var(--normal-font-size);font-weight:var(--font-weight-400);color:var(--color-normal-text);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.type-container-group:hover .image,\\n.type-container-group.status-active .image{box-shadow:inset 0px 0px 16px 0px #FF9900;border-color:#FF9900}.type-physical-machine:hover .image,\\n.type-virtual-machine:hover .image,\\n.type-physical-machine.status-active .image,\\n.type-virtual-machine.status-active .image{box-shadow:inset 0px 0px 16px 0px #50FFFF;border-color:#50FFFF}.status-faded{opacity:0.3}\", \"\"]);\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}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","import _typeof from \"./typeof.js\";\nfunction applyDecs2203RFactory() {\n function createAddInitializerMethod(initializers, decoratorFinishedRef) {\n return function (initializer) {\n !function (decoratorFinishedRef, fnName) {\n if (decoratorFinishedRef.v) throw new Error(\"attempted to call \" + fnName + \" after decoration was finished\");\n }(decoratorFinishedRef, \"addInitializer\"), assertCallable(initializer, \"An initializer\"), initializers.push(initializer);\n };\n }\n function memberDec(dec, name, desc, initializers, kind, isStatic, isPrivate, value) {\n var kindStr;\n switch (kind) {\n case 1:\n kindStr = \"accessor\";\n break;\n case 2:\n kindStr = \"method\";\n break;\n case 3:\n kindStr = \"getter\";\n break;\n case 4:\n kindStr = \"setter\";\n break;\n default:\n kindStr = \"field\";\n }\n var get,\n set,\n ctx = {\n kind: kindStr,\n name: isPrivate ? \"#\" + name : name,\n \"static\": isStatic,\n \"private\": isPrivate\n },\n decoratorFinishedRef = {\n v: !1\n };\n 0 !== kind && (ctx.addInitializer = createAddInitializerMethod(initializers, decoratorFinishedRef)), 0 === kind ? isPrivate ? (get = desc.get, set = desc.set) : (get = function get() {\n return this[name];\n }, set = function set(v) {\n this[name] = v;\n }) : 2 === kind ? get = function get() {\n return desc.value;\n } : (1 !== kind && 3 !== kind || (get = function get() {\n return desc.get.call(this);\n }), 1 !== kind && 4 !== kind || (set = function set(v) {\n desc.set.call(this, v);\n })), ctx.access = get && set ? {\n get: get,\n set: set\n } : get ? {\n get: get\n } : {\n set: set\n };\n try {\n return dec(value, ctx);\n } finally {\n decoratorFinishedRef.v = !0;\n }\n }\n function assertCallable(fn, hint) {\n if (\"function\" != typeof fn) throw new TypeError(hint + \" must be a function\");\n }\n function assertValidReturnValue(kind, value) {\n var type = _typeof(value);\n if (1 === kind) {\n if (\"object\" !== type || null === value) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or void 0\");\n void 0 !== value.get && assertCallable(value.get, \"accessor.get\"), void 0 !== value.set && assertCallable(value.set, \"accessor.set\"), void 0 !== value.init && assertCallable(value.init, \"accessor.init\");\n } else if (\"function\" !== type) {\n var hint;\n throw hint = 0 === kind ? \"field\" : 10 === kind ? \"class\" : \"method\", new TypeError(hint + \" decorators must return a function or void 0\");\n }\n }\n function applyMemberDec(ret, base, decInfo, name, kind, isStatic, isPrivate, initializers) {\n var desc,\n init,\n value,\n newValue,\n get,\n set,\n decs = decInfo[0];\n if (isPrivate ? desc = 0 === kind || 1 === kind ? {\n get: decInfo[3],\n set: decInfo[4]\n } : 3 === kind ? {\n get: decInfo[3]\n } : 4 === kind ? {\n set: decInfo[3]\n } : {\n value: decInfo[3]\n } : 0 !== kind && (desc = Object.getOwnPropertyDescriptor(base, name)), 1 === kind ? value = {\n get: desc.get,\n set: desc.set\n } : 2 === kind ? value = desc.value : 3 === kind ? value = desc.get : 4 === kind && (value = desc.set), \"function\" == typeof decs) void 0 !== (newValue = memberDec(decs, name, desc, initializers, kind, isStatic, isPrivate, value)) && (assertValidReturnValue(kind, newValue), 0 === kind ? init = newValue : 1 === kind ? (init = newValue.init, get = newValue.get || value.get, set = newValue.set || value.set, value = {\n get: get,\n set: set\n }) : value = newValue);else for (var i = decs.length - 1; i >= 0; i--) {\n var newInit;\n if (void 0 !== (newValue = memberDec(decs[i], name, desc, initializers, kind, isStatic, isPrivate, value))) assertValidReturnValue(kind, newValue), 0 === kind ? newInit = newValue : 1 === kind ? (newInit = newValue.init, get = newValue.get || value.get, set = newValue.set || value.set, value = {\n get: get,\n set: set\n }) : value = newValue, void 0 !== newInit && (void 0 === init ? init = newInit : \"function\" == typeof init ? init = [init, newInit] : init.push(newInit));\n }\n if (0 === kind || 1 === kind) {\n if (void 0 === init) init = function init(instance, _init) {\n return _init;\n };else if (\"function\" != typeof init) {\n var ownInitializers = init;\n init = function init(instance, _init2) {\n for (var value = _init2, i = 0; i < ownInitializers.length; i++) value = ownInitializers[i].call(instance, value);\n return value;\n };\n } else {\n var originalInitializer = init;\n init = function init(instance, _init3) {\n return originalInitializer.call(instance, _init3);\n };\n }\n ret.push(init);\n }\n 0 !== kind && (1 === kind ? (desc.get = value.get, desc.set = value.set) : 2 === kind ? desc.value = value : 3 === kind ? desc.get = value : 4 === kind && (desc.set = value), isPrivate ? 1 === kind ? (ret.push(function (instance, args) {\n return value.get.call(instance, args);\n }), ret.push(function (instance, args) {\n return value.set.call(instance, args);\n })) : 2 === kind ? ret.push(value) : ret.push(function (instance, args) {\n return value.call(instance, args);\n }) : Object.defineProperty(base, name, desc));\n }\n function applyMemberDecs(Class, decInfos) {\n for (var protoInitializers, staticInitializers, ret = [], existingProtoNonFields = new Map(), existingStaticNonFields = new Map(), i = 0; i < decInfos.length; i++) {\n var decInfo = decInfos[i];\n if (Array.isArray(decInfo)) {\n var base,\n initializers,\n kind = decInfo[1],\n name = decInfo[2],\n isPrivate = decInfo.length > 3,\n isStatic = kind >= 5;\n if (isStatic ? (base = Class, 0 !== (kind -= 5) && (initializers = staticInitializers = staticInitializers || [])) : (base = Class.prototype, 0 !== kind && (initializers = protoInitializers = protoInitializers || [])), 0 !== kind && !isPrivate) {\n var existingNonFields = isStatic ? existingStaticNonFields : existingProtoNonFields,\n existingKind = existingNonFields.get(name) || 0;\n if (!0 === existingKind || 3 === existingKind && 4 !== kind || 4 === existingKind && 3 !== kind) throw new Error(\"Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: \" + name);\n !existingKind && kind > 2 ? existingNonFields.set(name, kind) : existingNonFields.set(name, !0);\n }\n applyMemberDec(ret, base, decInfo, name, kind, isStatic, isPrivate, initializers);\n }\n }\n return pushInitializers(ret, protoInitializers), pushInitializers(ret, staticInitializers), ret;\n }\n function pushInitializers(ret, initializers) {\n initializers && ret.push(function (instance) {\n for (var i = 0; i < initializers.length; i++) initializers[i].call(instance);\n return instance;\n });\n }\n return function (targetClass, memberDecs, classDecs) {\n return {\n e: applyMemberDecs(targetClass, memberDecs),\n get c() {\n return function (targetClass, classDecs) {\n if (classDecs.length > 0) {\n for (var initializers = [], newClass = targetClass, name = targetClass.name, i = classDecs.length - 1; i >= 0; i--) {\n var decoratorFinishedRef = {\n v: !1\n };\n try {\n var nextNewClass = classDecs[i](newClass, {\n kind: \"class\",\n name: name,\n addInitializer: createAddInitializerMethod(initializers, decoratorFinishedRef)\n });\n } finally {\n decoratorFinishedRef.v = !0;\n }\n void 0 !== nextNewClass && (assertValidReturnValue(10, nextNewClass), newClass = nextNewClass);\n }\n return [newClass, function () {\n for (var i = 0; i < initializers.length; i++) initializers[i].call(newClass);\n }];\n }\n }(targetClass, classDecs);\n }\n };\n };\n}\nexport default function applyDecs2203R(targetClass, memberDecs, classDecs) {\n return (applyDecs2203R = applyDecs2203RFactory())(targetClass, memberDecs, classDecs);\n}","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","export default function _classExtractFieldDescriptor(receiver, privateMap, action) {\n if (!privateMap.has(receiver)) {\n throw new TypeError(\"attempted to \" + action + \" private field on non-instance\");\n }\n return privateMap.get(receiver);\n}","import classApplyDescriptorGet from \"./classApplyDescriptorGet.js\";\nimport classExtractFieldDescriptor from \"./classExtractFieldDescriptor.js\";\nexport default function _classPrivateFieldGet(receiver, privateMap) {\n var descriptor = classExtractFieldDescriptor(receiver, privateMap, \"get\");\n return classApplyDescriptorGet(receiver, descriptor);\n}","export default function _classApplyDescriptorGet(receiver, descriptor) {\n if (descriptor.get) {\n return descriptor.get.call(receiver);\n }\n return descriptor.value;\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","import classApplyDescriptorSet from \"./classApplyDescriptorSet.js\";\nimport classExtractFieldDescriptor from \"./classExtractFieldDescriptor.js\";\nexport default function _classPrivateFieldSet(receiver, privateMap, value) {\n var descriptor = classExtractFieldDescriptor(receiver, privateMap, \"set\");\n classApplyDescriptorSet(receiver, descriptor, value);\n return value;\n}","export default function _classApplyDescriptorSet(receiver, descriptor, value) {\n if (descriptor.set) {\n descriptor.set.call(receiver, value);\n } else {\n if (!descriptor.writable) {\n throw new TypeError(\"attempted to set read only private field\");\n }\n descriptor.value = value;\n }\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}"],"names":["_CabinetNode","imageMap","virtualMachineImg","physicalMachineImg","defineElement","property","createDecorators","_dec","styleTexts","variablesStyleText","styleText","_dec2","_dec3","_dec4","_A","WeakMap","_B","_C","CabinetNode","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","writable","value","_initProto","_init_type","_init_nodeTitle","_init_status","type","_classPrivateFieldGet","v","_classPrivateFieldSet","nodeTitle","status","render","React","CabinetNodeElement","this","props","className","classNames","concat","src","alt","title","e","c","_initClass","_applyDecs2203R","hasOwn","hasOwnProperty","classes","i","length","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","includes","key","call","join","module","exports","default","___CSS_LOADER_EXPORT___","id","cssWithMappingToString","list","map","item","content","needLayer","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","_k","applyDecs2203R","targetClass","memberDecs","classDecs","createAddInitializerMethod","initializers","decoratorFinishedRef","initializer","fnName","Error","assertCallable","memberDec","dec","name","desc","kind","isStatic","isPrivate","kindStr","get","set","ctx","addInitializer","access","fn","hint","TypeError","assertValidReturnValue","init","applyMemberDec","ret","base","decInfo","newValue","decs","getOwnPropertyDescriptor","newInit","instance","_init","ownInitializers","_init2","originalInitializer","_init3","args","defineProperty","applyMemberDecs","Class","decInfos","protoInitializers","staticInitializers","existingProtoNonFields","Map","existingStaticNonFields","existingNonFields","existingKind","pushInitializers","newClass","nextNewClass","applyDecs2203RFactory","_checkPrivateRedeclaration","obj","privateCollection","has","_classExtractFieldDescriptor","receiver","privateMap","action","descriptor","classExtractFieldDescriptor","_typeof","Symbol","iterator"],"sourceRoot":""}
@@ -1,3 +0,0 @@
1
- /*! For license information please see cabinet-thumbnail.00d41559.js.LICENSE.txt */
2
- (self.webpackChunk_next_bricks_data_view=self.webpackChunk_next_bricks_data_view||[]).push([[9410],{7790:(e,t,a)=>{"use strict";a.r(t),a.d(t,{CabinetThumbnail:()=>b,CabinetThumbnailComponent:()=>M});var r,l,i,n,o,s,c,p,g,b,u=a(3028),h=a(3395),d=a(381),f=a(687),v=a(5303),x=a(8657),m=a.n(x),w=a(4949),y=a(1785),k=a(2779),z=a.n(k),C=a(1043),E=a(6708),N=a(4731),Z=(0,w.wrapBrick)("data-view.cabinet-app-layer"),{defineElement:T,property:R}=(0,y.createDecorators)(),S=(0,w.wrapBrick)("data-view.cabinet-node");l=T("data-view.cabinet-thumbnail",{styleTexts:[C.Z,E.Z]}),i=R({attribute:!1}),o=R({type:Number}),c=R();var _=new WeakMap,W=new WeakMap,L=new WeakMap;class H extends w.ReactNextElement{constructor(){super(...arguments),(0,h.Z)(this,_,{writable:!0,value:(g(this),n(this,[]))}),(0,h.Z)(this,W,{writable:!0,value:s(this,4)}),(0,h.Z)(this,L,{writable:!0,value:p(this)})}get clusters(){return(0,f.Z)(this,_)}set clusters(e){(0,d.Z)(this,_,e)}get columns(){return(0,f.Z)(this,W)}set columns(e){(0,d.Z)(this,W,e)}get appName(){return(0,f.Z)(this,L)}set appName(e){(0,d.Z)(this,L,e)}render(){return m().createElement(M,{clusters:this.clusters,columns:this.columns,appName:this.appName})}}function M(e){var{clusters:t,columns:a,appName:r}=e,l=(0,x.useRef)(),i=(0,x.useRef)(),[n,o]=(0,x.useState)(),s=(0,N.D)(n);return(0,x.useLayoutEffect)((()=>{var{width:e,height:r}=l.current.getBoundingClientRect();if(t.length&&a>0){var{width:n,height:c}=i.current.getBoundingClientRect(),p=e/(n/(null!=s?s:1)),g=r/(c*(null!=s?s:1));o(Math.min(Math.floor(100*Math.min(p,g))/100,1))}}),[t,s,a]),m().createElement("div",{ref:l,className:"wrapper"},m().createElement("div",{className:"thumbnailLayout",ref:i,style:(0,u.Z)({},n?{transform:"scale(".concat(n,")")}:{})},m().createElement(Z,{className:"appLayer",appTitle:r}),m().createElement("div",{className:"layout"},t.map(((e,t)=>m().createElement("div",{className:"clusterWrapper",key:t},m().createElement("div",{className:z()("clusterContainer",{clusterHostContainer:"host"===e.type,clusterK8sContainer:"k8s"===e.type})},m().createElement("div",{className:"clusterContent"},m().createElement("div",{className:"clusterContentLayout",style:{gridTemplateColumns:"repeat(".concat(a,",1fr)")}},e.data.map(((e,t)=>m().createElement("div",{key:t,className:"itemContent"},m().createElement(S,{type:e.type,nodeTitle:e.nodeTitle})))))),m().createElement("div",{className:"clusterTitle"},m().createElement("div",{className:"title"},e.title)))))))))}({e:[n,s,p,g],c:[b,r]}=(0,v.Z)(H,[[i,1,"clusters"],[o,1,"columns"],[c,1,"appName"]],[l])),r()},4731:(e,t,a)=>{"use strict";a.d(t,{D:()=>l.D,y:()=>r.y});var r=a(6984),l=a(9094)},9094:(e,t,a)=>{"use strict";a.d(t,{D:()=>l});var r=a(8657);function l(e){var t=(0,r.useRef)();return(0,r.useEffect)((()=>{t.current=e})),t.current}},6984:(e,t,a)=>{"use strict";a.d(t,{y:()=>n});var r=a(3028),l=a(8657),i=a(3786);function n(e){var{targetRef:t,onResize:a}=e||{},n=(0,l.useRef)(),o=null!=t?t:n,[s,c]=(0,l.useState)({clientWidth:0,clientHeight:0}),p=(0,l.useCallback)((e=>{var{target:t}=e,{clientWidth:r=0,clientHeight:l=0}=t;c((t=>t.clientWidth===r&&t.clientHeight===l?t:(null==a||a(e),{clientWidth:r,clientHeight:l})))}),[a]);return(0,l.useEffect)((()=>{if("object"!=typeof o||null===o||!(o.current instanceof Element))throw new Error("ResizeObserver must observe an Element");var e=o.current;return(0,i.N7)(e,p),()=>{(0,i.p_)(e,p)}}),[p,o]),[o,(0,r.Z)({},s)]}},3786:(e,t,a)=>{"use strict";a.d(t,{N7:()=>n,p_:()=>o});var r=a(7209),l=new Map,i=new r.Z((e=>{e.forEach((e=>{var t,{target:a}=e;null===(t=l.get(a))||void 0===t||t.forEach((t=>t(e)))}))})),n=(e,t)=>{l.has(e)||(l.set(e,new Set),i.observe(e)),l.get(e).add(t)},o=(e,t)=>{l.has(e)&&(l.get(e).delete(t),0===l.get(e).size&&(i.unobserve(e),l.delete(e)))}},2779:(e,t)=>{var a;!function(){"use strict";var r={}.hasOwnProperty;function l(){for(var e=[],t=0;t<arguments.length;t++){var a=arguments[t];if(a){var i=typeof a;if("string"===i||"number"===i)e.push(a);else if(Array.isArray(a)){if(a.length){var n=l.apply(null,a);n&&e.push(n)}}else if("object"===i){if(a.toString!==Object.prototype.toString&&!a.toString.toString().includes("[native code]")){e.push(a.toString());continue}for(var o in a)r.call(a,o)&&a[o]&&e.push(o)}}}return e.join(" ")}e.exports?(l.default=l,e.exports=l):void 0===(a=function(){return l}.apply(t,[]))||(e.exports=a)}()},6708:(e,t,a)=>{"use strict";a.d(t,{Z:()=>o});var r=a(9601),l=a.n(r),i=a(2609),n=a.n(i)()(l());n.push([e.id,'*,\n*:after,\n*:before{box-sizing:border-box}.wrapper{width:100%;height:100%}.wrapper,\n.thumbnailLayout{display:flex;justify-content:center;align-items:center}.appLayer{width:90%;margin-bottom:16px;align-self:center;pointer-events:none}.thumbnailLayout{flex-direction:column}.layout{display:flex;gap:17px;margin-top:27px;align-items:stretch}.clusterWrapper{width:100%;height:auto}.clusterContainer{width:100%;height:100%;border:3px solid;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:flex;flex-direction:column}.clusterHostContainer{background:rgba(7,4,21,0.85);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border-image:radial-gradient(circle,rgba(55,229,252,1),#007ACA) 3 3}.clusterK8sContainer{background:rgba(7,4,21,0.8);border-image:radial-gradient(circle,rgba(255,102,51,1),#FF663399) 3 3}.clusterContent{flex:1;padding:20px 10px;width:100%}.clusterContentLayout{display:grid;width:100%}.itemContent{width:92px;pointer-events:none;height:105px}.clusterTitle{width:100%;text-align:center;line-height:57px;font-size:var(--auxiliary-font-size);font-weight:var(--font-weight-400);color:var(--color-normal-text);position:relative;display:flex}.title{flex:1;width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.clusterTitle:after{content:"";width:100%;height:100%;position:absolute;left:0;top:0;z-index:-1}.clusterHostContainer > .clusterTitle:after{background:linear-gradient(180deg,rgba(26,103,157,0.2) 0%,#1B69A0 100%)}.clusterK8sContainer > .clusterTitle:after{background:linear-gradient(180deg,rgba(255,102,51,0.1) 0%,rgba(255,102,51,0.55) 100%)}',""]);const o=n.toString()},1043:(e,t,a)=>{"use strict";a.d(t,{Z:()=>o});var r=a(9601),l=a.n(r),i=a(2609),n=a.n(i)()(l());n.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}",""]);const o=n.toString()}}]);
3
- //# sourceMappingURL=cabinet-thumbnail.00d41559.js.map