@next-bricks/data-view 1.0.12 → 1.1.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.
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_next_bricks_data_view=self.webpackChunk_next_bricks_data_view||[]).push([[1493],{5562:(e,t,r)=>{r.d(t,{S:()=>I});var n=r(9575),a=r(8769),o=r.n(a),i=r(2445),l=r(5062),c=r(3488),s=r(7807),d=r(7558),p=r(9740),u=(r(1440),r(6041),r(4392),(e,t,r)=>{var n=(new l.Pq0).subVectors(t,e),a=n.length(),o=document.createElement("data-view.app-wall-relation-line");o.style.height="".concat(a,"px"),o.classList.add("relation-line"),o.lightColor=r;var i=new c.on(o),s=(new l.Pq0).lerpVectors(e,t,.5);i.position.copy(s);var d=(new l.PTz).setFromUnitVectors(new l.Pq0(0,1,0).normalize(),n.clone().normalize());return i.setRotationFromQuaternion(d),i}),h=(e,t)=>{var r=new l.Pq0(e[0],e[1],e[2]),n=new l.Pq0(t[0],t[1],t[2]);return{centerVector:(new l.Pq0).lerpVectors(r,n,.5),subVector:(new l.Pq0).subVectors(r,n)}},g=e=>{var{BW:t,TW:r,d:n,TH:a,BH:o,isLeft:i}=e,s=Math.sqrt(Math.pow(r/2-t/2,2)+Math.pow(n,2)),d=document.createElement("div");d.style.cssText="\n width: ".concat(s,"px;\n height:").concat(a,"px;\n position: relative;\n clip-path: polygon(0 0, ").concat(s,"px ").concat(a/2-o/2,"px, ").concat(s,"px ").concat(a/2-o/2+o,"px, 0 ").concat(a,"px);\n ");var p=document.createElement("div");p.className="trapezoidalLeftOrRightAnimation",d.appendChild(p);var u=i?[-t/2,0,0]:[t/2,0,0],g=i?[-r/2,0,n]:[r/2,0,n],b=new c.on(d),{centerVector:m,subVector:v}=h(u,g);b.position.copy(m);var x=(new l.PTz).setFromUnitVectors(new l.Pq0(1,0,0).normalize(),v.clone().normalize());return b.setRotationFromQuaternion(x),b},b=e=>{var{BW:t,TW:r,d:n,TH:a,BH:o,isTop:i}=e,s=Math.sqrt(Math.pow(a/2-o/2,2)+Math.pow(n,2)),d=document.createElement("div");d.style.cssText="\n width: ".concat(r,"px;\n height:").concat(s,"px;\n position: relative;\n clip-path: polygon(0 0, ").concat(r,"px 0, ").concat(r/2-t/2+t,"px ").concat(s,"px, ").concat(r/2-t/2,"px ").concat(s,"px);\n ");var p=document.createElement("div");p.className="trapezoidalTopOrBottomAnimation",d.appendChild(p);var u=new c.on(d),g=i?[0,-o/2,0]:[0,o/2,0],b=i?[0,-a/2,n]:[0,a/2,n],{centerVector:m,subVector:v}=h(g,b);u.position.copy(m);var x=(new l.PTz).setFromUnitVectors(new l.Pq0(0,-1,0).normalize(),v.clone().normalize());return u.setRotationFromQuaternion(x),u},m=e=>{var{objectData:t,leftBtnName:r,clusters:n,columns:a,leftOnClick:o,rightBtnName:i,rightOnClick:l,appName:s}=e,d=600,p=document.createElement("div"),u=new c.on(p);u.position.set(...t.point);var h=t.width,m=t.height,v=1500,x=1200,w=document.createElement("div");w.style.cssText="\n width: ".concat(h,"px;\n height: ").concat(m,"px;\n box-shadow: inset 0px 1px 2px 0px rgba(255,255,255,0.45);\n border: 1px solid rgba(118,255,255,0.58);\n padding: 16px;\n ");var f=new c.on(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!=n?n:[],k.columns=null!=a?a:4,k.appName=s,y.className="visibilityAnimate",y.appendChild(k);var z=new c.on(y);z.position.set(0,0,d);var T=g({BW:h,TW:v,BH:m,TH:x,d,isLeft:!0}),C=g({BW:h,TW:v,BH:m,TH:x,d,isLeft:!1}),S=b({BW:h,TW:v,BH:m,TH:x,d,isTop:!0}),E=b({BW:h,TW:v,BH:m,TH:x,d,isTop:!1});if(u.add(T,C,E,S),r){var P=document.createElement("div");P.style.cssText="\n color: #6BE0FA;\n font-size: 28px;\n font-weight: 500;\n width: ".concat(750,"px;\n line-height: 16px;\n "),P.className="visibilityAnimate";var B=document.createElement("span");B.style.cursor="pointer",B.innerText=r,P.appendChild(B);var R=new c.on(P);R.position.set(-365,-600,14),R.rotateX(Math.PI/2),z.add(R),B.onpointerdown=o}if(i){var M=document.createElement("div");M.style.cssText="\n color: #FFFFFF;\n font-size: 30px;\n font-weight: 500;\n width: ".concat(750,"px;\n text-shadow: 0px 1px 4px #3366FF;\n text-align: right;\n "),M.className="visibilityAnimate";var A=document.createElement("span");A.style.cursor="pointer",A.innerText=i,M.appendChild(A);var I=new c.on(M);I.position.set(365,-600,14),I.rotateX(Math.PI/2),z.add(I),A.onpointerdown=l}return u.add(z),u},v=(e,t,r)=>{if(null==e||!e.length)return[];var n=e.map((e=>(0,p.A)((0,p.A)({},e),{},{x:0,y:0})));if(n.length===t*r)n=n.map(((e,r)=>(0,p.A)((0,p.A)({},e),{},{x:r%t+1,y:parseInt("".concat(r/t))+1})));else{for(var a=t*(r-1),o=n.length-a,i=0;i<a;i++){var l=n[i];l.x=i%t+1,l.y=parseInt("".concat(i/t))+1}for(var c=0;c<o/2;c++){var s=n[c+a],d=n[n.length-1-c];s.x=c+1,s.y=r,s!==d&&(d.x=t-c,d.y=r)}}return n},x=(e,t,r,n)=>{var a=new l.B69;return a.position.x=e.x*t.outerWidth-(r/2+.5)*t.outerWidth,a.position.y=-e.y*t.outerHeight+(n/2+.5)*t.outerHeight,a},w=(e,t,r,n,a,o)=>{var i=new l.B69,c=new l.Pq0,s=((e,t,r,n,a)=>{var o={x:0,y:0,z:0},i=parseInt("".concat(r*t.outerWidth*180))/(a*Math.PI),l=r/2+.5;return o.x=i*Math.sin(Math.PI/(180/((e.x-l)*(a/r)))),o.y=-e.y*t.outerHeight+(n/2+.5)*t.outerHeight,o.z=i-Math.sqrt(i*i-o.x*o.x),o})(e,t,r,n,a);return i.position.x=s.x,i.position.y=s.y,i.position.z=s.z,c.x=0,c.y=i.position.y,c.z=o,i.lookAt(c),i},f=(e,t,r,n)=>{var a=t.height+2*t.margin,o=(t.width+2*t.margin)/e.aspect,i=.5*Math.max(o,a)/Math.tan(e.fov*Math.PI/360)+t.z,l=0;return r.forEach((function(e){n>=Math.min.apply(null,e.numRange)&&n<=Math.max.apply(null,e.numRange)&&(l=e.distance)})),Math.max(l,i)},y=(e,t)=>{var r=[],n=e.userData;return Array.isArray(t)&&t.length&&t.forEach((function(e){n.key!==e.source&&n.key!==e.target||r.push(e)})),r},k=(e,t)=>{var r=t.toUpperCase(),n=e.composedPath().find((e=>null==e?void 0:e.shadowRoot));if((null==n?void 0:n.tagName)===r)return n;var a=document.elementFromPoint(e.clientX,e.clientY),o=null==a?void 0:a.shadowRoot.elementFromPoint(e.clientX,e.clientY);return(null==o?void 0:o.tagName)===r?o:null},z=r(9938),T=r(3373),C=r.n(T),S=[{numRange:[0,40],distance:3e3},{numRange:[40,60],distance:2200},{numRange:[60,80],distance:2700},{numRange:[80,120],distance:3200},{numRange:[120,160],distance:3400},{numRange:[160,300],distance:3600}],E=45,P=100,B=300,R=500,M=(e,t,r,n)=>{var a=Math.ceil(Math.sqrt(e*t.outerHeight/(n*t.outerWidth))),o=Math.ceil(e/a),i=parseInt("".concat(a*t.outerWidth*180))/(P*Math.PI);return{maxX:a,maxY:o,radius:i,bounds:{width:2*i*Math.sin(Math.PI*(P/2)/180)+t.outerWidth,height:o*t.outerHeight,margin:r,z:i-i*Math.cos(Math.PI*(P/2)/180)}}},A=(0,z.wrapBrick)("data-view.app-wall-system-card");function I(e){var{relations:t,onSystemCardButtonClick:r,useDblclick:p,useDistanceConfig:h,handleCardDbClick:g,rightBtnOnClick:b,leftBtnOnClick:z,cardBrickName:T,cardSize:I,disabledDefaultClickEvent:_,handleCardClick:D,containerId:F,noRotate:W,boundMargin:K}=e,[N,L]=(0,a.useState)(null),H=(0,a.useRef)(),O=(0,a.useRef)(),q=(0,a.useRef)(),V=(0,a.useRef)(),j=(0,a.useRef)(),G=(0,a.useRef)(),Y=(0,a.useRef)(),X=(0,a.useRef)(),U=(0,a.useRef)(),Q=(0,a.useRef)(),Z=(0,a.useRef)({table:[],curve:[]}),J=(0,a.useRef)([]),$=(0,a.useRef)([]),ee=(0,a.useRef)(1),te=(0,a.useRef)(5e3),re=(0,a.useRef)({maxX:0,maxY:0,radius:0,bounds:{width:0,height:0,margin:K,z:0}}),ne=(0,a.useRef)({element:null,mouseoverTimer:null,mouseoutTimer:null,clickTimer:null,dblClickTimer:null,isShowGraph3D:!1,isShowAppInfo:!1,isShowRelations:!1,enable:!0}),ae=(0,a.useCallback)((()=>{G.current.render(Y.current,X.current),U.current.maxDistance=te.current+R,U.current.handleResize()}),[]),oe=e=>{var t;if(null===(t=ne.current)||void 0===t||!t.element)return null==e?void 0:e();var{__objectCSS:r,__curve:n,__userData:a}=ne.current.element;new d.K(r.rotation).to({x:n.rotation.x,y:n.rotation.y,z:n.rotation.z},100).start(),new d.K(r.scale).to({x:1,y:1,z:1},100).start(),new d.K(r.position).to({x:n.position.x,y:n.position.y,z:n.position.z},100).onUpdate(ae).onStart((()=>{var e;"data-view.app-wall-card-item"===T&&r.element.classList.remove("status-".concat(a.status||"normal","-card")),null===(e=J.current)||void 0===e||e.forEach((e=>{e.element.style.opacity="1"})),$.current.forEach((e=>{Y.current.remove(e)})),$.current=[],ae()})).onComplete((()=>{var t;ne.current.isShowRelations=!1,null==e||e(null===(t=ne.current)||void 0===t?void 0:t.element)})).start()},ie=(e,t)=>{ne.current.enable=!1;for(var r=0;r<J.current.length;r++){var n=J.current[r],a=e[r];new d.K(n.position).to({x:a.position.x,y:a.position.y,z:a.position.z},l.cj9.randFloat(t,2*t)).easing(d.GS.Exponential.InOut).start(),new d.K(n.rotation).to({x:a.rotation.x,y:a.rotation.y,z:a.rotation.z},l.cj9.randFloat(t,2*t)).easing(d.GS.Exponential.InOut).start()}new d.K({}).to({},2*t).onUpdate(ae).start().onComplete((()=>{ne.current.enable=!0}))},le=e=>{U.current.reset();var t=ne.current.element.__objectCSS,r=ne.current.element.__curve;ne.current.enable=!1,ne.current.isShowAppInfo=!0;var n,a={x:r.position.x>0?2*-I.width:2*I.width,y:0,z:(X.current.position.z-500)/1.5},o={x:0,y:0,z:X.current.position.z-500},i={x:0,y:r.rotation.y>0?90*-Math.PI/180:90*Math.PI/180,z:0},l={x:0,y:r.rotation.y>0?180*-Math.PI/180:180*Math.PI/180,z:0},c=new d.K(t.position),s=new d.K(t.rotation),p=new d.K(t.position),u=new d.K(t.rotation);e?(c.to(a,500).easing().onComplete((()=>{j.current.hidden=!0,ne.current.element.style.opacity="1"})),s.to(i,500).easing(),p.to({x:r.position.x,y:r.position.y,z:r.position.z},700).easing(),u.to({x:r.rotation.x,y:r.rotation.y,z:r.rotation.z},700).easing().onComplete((()=>{var e;null===(e=J.current)||void 0===e||e.forEach((e=>{e.element.style.opacity="1"}))}))):(null===(n=J.current)||void 0===n||n.forEach((e=>{t!=e&&(e.element.style.opacity="0.2")})),c.to(a,700).easing().onStart((()=>{V.current.hidden=!1,j.current.hidden=!0})),s.to(i,700).easing(),p.to(o,500).easing().onStart((function(){ne.current.element.style.opacity="0",j.current.style.transition="transition: all .3s ease",j.current.hidden=!1})),u.to(l,500).easing()),c.chain(p).start(),s.chain(u).start(),new d.K({}).to({},1400).onUpdate((()=>{if(ae(),Math.abs(t.rotation.y)>=Math.PI/2){var e=ne.current.element.getBoundingClientRect(),r=1.35,n=e.width*r,a=e.height*r;j.current.style.width="".concat(n,"px"),j.current.style.height="".concat(a,"px"),j.current.style.top="".concat(e.top-(r-1)*a/2,"px"),j.current.style.left="".concat(e.left-(r-1)*n/2,"px")}})).start().onComplete((function(){ne.current.enable=!0,ne.current.isShowAppInfo=!e,V.current.hidden=e}))};return(0,a.useEffect)((()=>{var e;(()=>{var e,t=null===(e=document.getElementById(F))||void 0===e?void 0:e.getBoundingClientRect(),r=(null==t?void 0:t.width)||window.innerWidth,n=(null==t?void 0:t.height)||window.innerHeight,a=r/n,o=new l.Z58,i=new l.ubm(E,a,.1,1e4),d=new c.a0;d.setSize(r,n),O.current.replaceChildren(d.domElement);var p=new s.V(i,d.domElement);p.rotateSpeed=.5,p.minDistance=500,p.maxDistance=1e4,p.noRotate=W,Y.current=o,X.current=i,U.current=p,G.current=d})();var t=()=>{e=requestAnimationFrame(t),d.Ay.update(),U.current.update()};t();var r=F?document.getElementById(F):document.body,n=new ResizeObserver((0,i.debounce)((()=>{var{width:e,height:t}=r.getBoundingClientRect();X.current.aspect=e/t,X.current.updateProjectionMatrix(),G.current.setSize(e,t),ae()}),300));return U.current.addEventListener("change",ae),n.observe(r),()=>{n.disconnect(),U.current.removeEventListener("change",ae),U.current.dispose(),d.Ay.removeAll(),X.current.clear(),Y.current.clear(),cancelAnimationFrame(e)}}),[]),(0,a.useEffect)((()=>{var t,r=(null===(t=e.dataSource)||void 0===t?void 0:t.length)||0;r>0&&((e=>{re.current=M(e,I,K,1/X.current.aspect)})(r),te.current=f(X.current,re.current.bounds,h?S:[],r),X.current.position.z=te.current,X.current.updateProjectionMatrix(),U.current.position0.copy(X.current.position),v(e.dataSource,re.current.maxX,re.current.maxY).forEach(((e,t)=>{var r,n,a,o,i,l,s,d=document.createElement(T);d.status=e.status,d.cardTitle=null===(r=e.cardItemProps)||void 0===r?void 0:r.cardTitle,d.description=null===(n=e.cardItemProps)||void 0===n?void 0:n.description,d.background=null===(a=e.cardItemProps)||void 0===a?void 0:a.background,d.color=null===(o=e.cardItemProps)||void 0===o?void 0:o.color,d.titleStyle=null===(i=e.cardItemProps)||void 0===i?void 0:i.titleStyle,d.desStyle=null===(l=e.cardItemProps)||void 0===l?void 0:l.desStyle,d.descriptionList=null===(s=e.cardItemProps)||void 0===s?void 0:s.descriptionList;var p="status-".concat((null==e?void 0:e.status)||"normal");d.className="card-item-container ".concat(p),d.style.width="".concat(I.width,"px"),d.style.height="".concat(I.height,"px"),d.classList.add("card-item-wrap");var u=new c.on(d);u.position.set(4e3*Math.random()-2e3,4e3*Math.random()-2e3,4e3*Math.random()-2e3),Y.current.add(u),J.current.push(u);var h=x(e,I,re.current.maxX,re.current.maxY);Z.current.table.push(h);var g=w(e,I,re.current.maxX,re.current.maxY,P,re.current.radius);Z.current.curve.push(g),u.userData=e,d.__objectCSS=u,d.__userData=e,d.__curve=g})),ie(Z.current.curve,1e3));return()=>{U.current.reset(),d.Ay.removeAll(),J.current.map((e=>{Y.current.remove(e)})),J.current=[],Z.current={table:[],curve:[]},ne.current={element:null,mouseoverTimer:null,mouseoutTimer:null,clickTimer:null,dblClickTimer:null,enable:!0,isShowAppInfo:!1,isShowGraph3D:!1,isShowRelations:!1}}}),[e.dataSource,h]),(0,a.useEffect)((()=>{var e=H.current,r=e=>{if(clearTimeout(ne.current.mouseoverTimer),ne.current.isShowAppInfo||ne.current.isShowGraph3D||!ne.current.enable)return!1;var r=k(e,T);ne.current.mouseoverTimer=window.setTimeout((()=>{oe((()=>{r&&!ne.current.isShowAppInfo&&(e=>{var{__objectCSS:r,__userData:n}=e,a=r.rotation.y,o=r.element.getBoundingClientRect(),i={x:r.position.x+50*Math.sin(a),y:r.position.y+15,z:r.position.z+100*Math.cos(a)},l=o.width>=I.width?ee.current:Math.min(I.width/o.width,I.height/o.height);ne.current.isShowRelations=!0,new d.K(r.rotation).onStart((()=>{"data-view.app-wall-card-item"===T&&r.element.classList.add("status-".concat(n.status||"normal","-card"))})).start(),new d.K(r.scale).to({x:l,y:l,z:l},100).start(),new d.K(r.position).to(i,100).onUpdate(ae).onComplete((function(){var n,a,o,i,l,c;l=y(n=r,t),c=n.userData,null==l||l.forEach((e=>{e.source===c.key?(i=J.current.find((t=>t.userData.key===e.target)),o=i&&u(n.position,i.position,"blue")):(i=J.current.find((t=>t.userData.key===e.source)),o=i&&u(i.position,n.position,"purple")),o&&($.current.push(o),Y.current.add(o))})),null===(a=J.current)||void 0===a||a.forEach((e=>{n!=e&&l.every((t=>t.source!=e.userData.key&&t.target!=e.userData.key))&&(e.element.style.opacity="0.2")})),ae(),ne.current.element=e})).start()})(r),clearTimeout(ne.current.mouseoverTimer)}))}),300)},n=e=>{if(clearTimeout(ne.current.clickTimer),clearTimeout(ne.current.mouseoverTimer),ne.current.isShowAppInfo||ne.current.isShowGraph3D||!ne.current.enable)return!1;var t=k(e,T);ne.current.clickTimer=window.setTimeout((function(){clearTimeout(ne.current.mouseoverTimer),oe((()=>{t&&(clearTimeout(ne.current.clickTimer),clearTimeout(ne.current.mouseoverTimer),e.stopPropagation(),ne.current.element=t,_?null==D||D(t.__userData):(L(t.__userData),le(!1)))}))}),200)},a=e=>{if(clearTimeout(ne.current.clickTimer),clearTimeout(ne.current.mouseoverTimer),clearTimeout(ne.current.dblClickTimer),ne.current.isShowAppInfo||ne.current.isShowGraph3D||!ne.current.enable)return!1;var t=k(e,T),{__userData:r,__objectCSS:n}=t;ne.current.isShowGraph3D=!0,ne.current.dblClickTimer=window.setTimeout((function(){oe((()=>{var e;if(p||(null===(e=r.trapezoidalProps)||void 0===e||null===(e=e.clusters)||void 0===e?void 0:e.length)<1)g(r),ne.current.isShowGraph3D=!1;else if(t){clearTimeout(ne.current.mouseoverTimer),clearTimeout(ne.current.clickTimer),O.current.classList.add("mask-container"),U.current.reset();var a={x:n.position.x,y:860+I.height*(re.current.maxY-r.y)},o=new d.K(X.current.position),i=new d.K({opacity:0,scale:0,borderLeftWidth:0,borderRightWidth:0,borderTopWidth:0,borderBottomWidth:0}),l=new d.K({z:0}),c=new d.K(X.current.position),s=new d.K(U.current.target),u=new d.K({blur:12,spread:0});ie(Z.current.table,600),o.to({x:0,y:-3600,z:1600},1e3).chain(u,i,l),i.to({opacity:1},700).onStart((()=>{var e,t,a,o,i,l=m({objectData:{width:I.width,height:I.height,point:[n.position.x,n.position.y,n.position.z]},clusters:null===(e=r.trapezoidalProps)||void 0===e?void 0:e.clusters,columns:null===(t=r.trapezoidalProps)||void 0===t?void 0:t.columns,appName:null===(a=r.trapezoidalProps)||void 0===a?void 0:a.appName,leftBtnName:null===(o=r.trapezoidalProps)||void 0===o?void 0:o.leftBtnName,rightBtnName:null===(i=r.trapezoidalProps)||void 0===i?void 0:i.rightBtnName,rightOnClick:()=>b(r),leftOnClick:()=>z(r)});Q.current=l,Y.current.add(l)})),l.to({z:B},1e3).delay(230).chain(c,s),c.to({x:a.x,y:-3600+a.y},1e3),s.to({x:a.x,y:a.y},1e3).onComplete((function(){q.current.style.visibility="visible"})),o.start()}}))}),200)};return e.addEventListener("dblclick",a),e.addEventListener("click",n),e.addEventListener("mouseover",r),()=>{e.removeEventListener("mouseover",r),e.removeEventListener("click",n),e.removeEventListener("dblclick",a)}}),[_,D]),o().createElement("div",{className:"appwall-container",ref:H},o().createElement("div",{className:"appwall",ref:O}),o().createElement("div",{className:"mask",ref:V,onClick:()=>{ne.current.enable&&le(!0)},hidden:!0},o().createElement(A,(0,n.A)({},null==N?void 0:N.systemCardProps,{onClick:e=>e.stopPropagation(),handleClick:()=>r(N),ref:j,className:C()({infoWrapper:"normal"===(null==N?void 0:N.status),warningWrapper:"warning"===(null==N?void 0:N.status)})}))),o().createElement("div",{className:"closeBtn",ref:q,onClick:()=>{(()=>{d.Ay.removeAll();var e=new d.K({z:0}),t=new d.K({opacity:1}),r=new d.K(X.current.position),n=new d.K(U.current.target),a=new d.K({blur:1500,spread:100});e.to({z:B},1e3).chain(r,n,a),t.to({opacity:0},1e3).onStart((()=>{Y.current.remove(Q.current),q.current.style.visibility="hidden"})).delay(300),r.to(U.current.position0,1e3).onComplete((function(){U.current.reset(),O.current.classList.remove("mask-container"),ie(Z.current.curve,600),ne.current.isShowGraph3D=!1})),n.to({x:0,y:0,z:0},1e3),a.to({blur:0,spread:0},1e3),e.start(),t.start()})()}}))}},2960:(e,t,r)=>{r.d(t,{A:()=>l});var n=r(6758),a=r.n(n),o=r(935),i=r.n(o)()(a());i.push([e.id,':host{display:block;width:100%;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.mask-container{position:absolute;top:0;left:0;width:100%;height:100%;background:#0c1216;z-index:1000}.appwall-container{padding:8px}.appwall{position:relative}.appwall.loading .card-item{pointer-events:none!important}.mask{position:absolute;width:100%;height:100%;top:0;bottom:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:center}.mask[hidden]{display:none}.infoWrapper{position:absolute;background:var(--color-fill-bg-base-4);box-shadow:0 0 12px 2px rgba(80,255,255,0.45),inset 0 0 22px 0 #20242a;border:2px solid #50ffff;overflow:hidden}.warningWrapper{position:absolute;background:linear-gradient(180deg,#cc0066 0%,rgba(204,0,102,0.2) 100%),#0f1117ff;box-shadow:0 0 12px 2px rgba(204,0,102,0.4),inset 0 4px 10px 0 rgba(255,255,255,0.65);overflow:hidden}.relation-line{pointer-events:none!important}.closeBtn{visibility:hidden;position:fixed;top:50px;right:50px;width:46px;height:46px;text-align:center;border:1px solid;color:rgb(138 189 255/84%);font-size:20px;line-height:46px;cursor:pointer;background:rgba(138,189,255,0.13);border-image:linear-gradient(135deg,rgba(255,255,255,0.5),rgba(255,255,255,0),rgba(255,255,255,0.33)) 1 1;display:flex;justify-content:center;align-items:center;z-index:1000}.closeBtn:before,\n.closeBtn:after{content:"";width:2px;height:20px;background:linear-gradient(180deg,#3467ff 0%,#98cbff 100%);position:absolute}.closeBtn:before{transform:rotateZ(45deg)}.closeBtn:after{transform:rotateZ(-45deg)}.closeBtn:hover:after,\n.closeBtn:hover:before{background:var(--color-normal-text)}.visibilityAnimate{visibility:hidden;animation:visibility 0.5s both 1s}.trapezoidalLeftOrRightAnimation,\n.trapezoidalTopOrBottomAnimation{background:linear-gradient(180deg,rgba(51,102,255,0.4) 0%,#99ccff 100%);opacity:0.2;position:absolute}.trapezoidalTopOrBottomAnimation{bottom:0;width:100%;left:0;animation:animateTop 1s both}.trapezoidalLeftOrRightAnimation{top:0;right:0;height:100%;animation:animateLeft 1s both}@keyframes animateTop{0%{height:0}100%{height:100%}}@keyframes animateLeft{0%{width:0}100%{width:100%}}@keyframes visibility{0%{visibility:hidden}100%{visibility:visible}}.card-item-container{transition:opacity 0.5s}.status-normal-card{box-shadow:0 0 100px rgba(80,255,255,0.58);border:1px solid rgba(80,255,255,0.58);background:-webkit-gradient(liner,left top,left bottom,from(#002c8d),to(#00123e));background:linear-gradient(to bottom,rgba(80,255,255,1) 0%,rgba(80,255,255,0) 100%)}.status-warning-card{box-shadow:0 0 100px #cc0066;background:-webkit-gradient(liner,left top,left bottom,from(#cc0066),to(rgba(204,0,102,0.2)));background:linear-gradient(to bottom,#cc0066 0%,rgba(204,0,102,0.2) 100%)}',""]);const l=i.toString()},547:(e,t,r)=>{r.d(t,{A:()=>l});var n=r(6758),a=r.n(n),o=r(935),i=r.n(o)()(a());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()},2415:(e,t,r)=>{r.d(t,{A:()=>l});var n=r(6758),a=r.n(n),o=r(935),i=r.n(o)()(a());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()},8387:(e,t,r)=>{r.d(t,{A:()=>l});var n=r(6758),a=r.n(n),o=r(935),i=r.n(o)()(a());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()},9935:(e,t,r)=>{r.d(t,{A:()=>l});var n=r(6758),a=r.n(n),o=r(935),i=r.n(o)()(a());i.push([e.id,":host{--palette-rgba-white-1:rgba(255,255,255,10%);--palette-rgba-white-2:rgba(255,255,255,20%);--palette-rgba-white-3:rgba(255,255,255,30%);--palette-rgba-white-4:rgba(255,255,255,40%);--palette-rgba-white-5:rgba(255,255,255,50%);--palette-rgba-white-6:rgba(255,255,255,60%);--palette-rgba-white-7:rgba(255,255,255,70%);--palette-rgba-white-8:rgba(255,255,255,80%);--palette-rgba-white-9:rgba(255,255,255,90%);--palette-rgba-white-10:rgba(255,255,255,100%);--palette-rgba-gray-1:rgba(0,0,0,10%);--palette-rgba-gray-2:rgba(0,0,0,20%);--palette-rgba-gray-3:rgba(0,0,0,30%);--palette-rgba-gray-4:rgba(0,0,0,40%);--palette-rgba-gray-5:rgba(0,0,0,50%);--palette-rgba-gray-6:rgba(0,0,0,60%);--palette-rgba-gray-7:rgba(0,0,0,70%);--palette-rgba-gray-8:rgba(0,0,0,80%);--palette-rgba-gray-9:rgba(0,0,0,90%);--palette-rgba-gray-10:rgba(0,0,0,100%);--palette-rgba-blue-gray-2:rgba(101,106,134,20%);--palette-rgba-blue-gray-3:rgba(101,106,134,30%);--palette-rgba-blue-gray-8:rgba(101,106,134,80%);--palette-tech-blue-4-channel:67,127,255;--palette-tech-blue-4:rgb(var(--palette-tech-blue-4-channel));--palette-tech-blue-6-channel:51,102,255;--palette-tech-blue-6:rgb(var(--palette-tech-blue-6-channel));--palette-tech-blue-8-channel:40,69,159;--palette-tech-blue-8:rgb(var(--palette-tech-blue-8-channel));--palette-sea-green-4-channel:131,245,225;--palette-sea-green-4:rgb(var(--palette-sea-green-4-channel));--palette-green-6-channel:81,235,73;--palette-green-6:rgb(var(--palette-green-6-channel));--palette-green-2:rgba(var(--palette-green-6-channel),20%);--palette-lotus-pink-7-channel:204,0,102;--palette-lotus-pink-7:rgb(var(--palette-lotus-pink-7-channel));--palette-red-6-channel:242,39,39;--palette-red-6:rgb(var(--palette-red-6-channel));--palette-red-2:rgba(var(--palette-red-6-channel),20%);--color-fill-global-bg:#0f1014;--color-fill-bg-container-1:var(--palette-rgba-white-1);--color-fill-bg-container-2:var(--palette-rgba-blue-gray-2);--color-fill-bg-container-3:var(--palette-rgba-blue-gray-8);--color-fill-bg-base-1:var(--palette-rgba-blue-gray-2);--color-fill-bg-base-2:rgba(15,16,20,0%);--color-fill-bg-base-3:rgba(0,0,0,20%);--color-fill-bg-base-4:rgba(40,46,58,100%);--color-fill-bg-base-5:rgba(19,25,47,80%);--color-fill-bg-base-6:var(--palette-rgba-blue-gray-3);--color-brand:var(--palette-tech-blue-6);--color-brand-hover:var(--palette-tech-blue-4);--color-brand-active:var(--palette-tech-blue-8);--color-contrast-1:var(--palette-sea-green-4);--color-error:var(--palette-red-6);--color-error-bg:var(--palette-red-2);--color-success:var(--palette-green-6);--color-success-bg:var(--palette-green-2);--color-header-text-big:var(--palette-rgba-white-10);--color-header-text:var(--palette-rgba-white-10);--color-normal-text:var(--palette-rgba-white-10);--color-strong-text:var(--palette-rgba-white-9);--color-auxiliary-text:var(--palette-rgba-white-8);--color-secondary-text:var(--palette-rgba-white-6);--color-disabled-text:var(--palette-rgba-white-4);--color-border-divider-line:var(--palette-rgba-white-1);--color-text-divider-line-1:var(--palette-rgba-white-2);--color-text-divider-line-2:var(--palette-rgba-white-2);--small-border-radius:2px;--medius-border-radius:5px;--larger-border-radius:12px;--container-border-radius:9999px;--no-border-radius:0px;--mask-bg:var(--palette-rgba-gray-7);--title-font-size-larger:30px;--title-font-size-strong:22px;--title-font-size:18px;--normal-font-size:14px;--auxiliary-font-size:16px;--auxiliary-font-size-small:12px;--overview-data-font-size:34px;--statistics-data-font-size:28px;--normal-data-font-size-larger:20px;--normal-data-font-size:16px;--chart-legend-font-size:12px;--chart-tooltips-font-size-1:12px;--chart-tooltips-font-size-2:12px;--chart-axis-x-font-size:12px;--chart-axis-x-font-size-larger:14px;--chart-axis-y-font-size:12px;--chart-axis-y-font-size-larger:14px;--font-weight-600:600;--font-weight-500:500;--font-weight-400:400;--text-shadow:0px 1px 4px #2863ee;--border-width-base:1px;--border-width-double-base:2px;--border-width-tribble-base:3px;--punctate-width-base:1px;--paragraph-width-base:1px;--button-text-color:#40d0db}",""]);const l=i.toString()}}]);
2
- //# sourceMappingURL=1493.19cf946f.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/1493.19cf946f.js","mappings":"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","sources":["webpack:///./src/app-wall/utils.ts","webpack:///./src/app-wall/app-wall.tsx","webpack:///./src/app-wall/app-wall.shadow.css","webpack:///./src/app-wall/card-item/card-item.shadow.css","webpack:///./src/app-wall/relation-line/relation-line.shadow.css","webpack:///./src/app-wall/system-card/system-card.shadow.css","webpack:///./src/data-view-variables.shadow.css"],"sourcesContent":["import {\n Vector3,\n Object3D,\n Quaternion,\n Vector3Tuple,\n PerspectiveCamera,\n} from \"three\";\nimport { CSS3DObject } from \"three/addons/renderers/CSS3DRenderer.js\";\nimport \"./card-item/index.js\";\nimport \"./relation-line/index.js\";\nimport \"./system-card/index.js\";\nimport type { AppWallCardItemProps } from \"./card-item/index.js\";\nimport type {\n AppWallRelationLine,\n AppWallRelationLineProps,\n} from \"./relation-line/index.js\";\nimport type { SystemCardProps } from \"./system-card/index.js\";\nimport {\n TrapezoidalObjectProps,\n TrapezoidalProps,\n bounds,\n CardSize,\n DistanceConfig,\n Position,\n Target,\n Ele,\n AppWallCardBrickNameType,\n} from \"./interface.js\";\nimport { CabinetThumbnail } from \"../cabinet/cabinet-thumbnail/index.jsx\";\nimport { SimpleCardItemProps } from \"../simple-card-item/index.js\";\n\nexport interface AppData {\n key: string;\n status: \"normal\" | \"warning\";\n cardItemProps: AppWallCardItemProps & SimpleCardItemProps;\n systemCardProps: SystemCardProps;\n trapezoidalProps: TrapezoidalProps;\n}\n\nexport type Relation = {\n source: string;\n target: string;\n};\n\nexport interface UserData {\n appData: AppData;\n elementStyle: {\n width: number;\n height: number;\n };\n turningStyle: {\n width: number;\n height: number;\n };\n systemCardStyle: {\n width: number;\n height: number;\n };\n hoverStyle: {\n width: number;\n height: number;\n };\n cardItemObject3D: {\n curve: Object3D;\n flat: Object3D;\n hover: Object3D;\n clickTurn: Object3D;\n };\n systemCardObject3D: {\n clickTurn: Object3D;\n front: Object3D;\n };\n}\nexport const createRelationLine = (\n sourceVector: Vector3,\n targetVector: Vector3,\n lightColor: AppWallRelationLineProps[\"lightColor\"]\n): CSS3DObject => {\n const subVector = new Vector3().subVectors(targetVector, sourceVector);\n const lineLength = subVector.length();\n\n const lineElement = document.createElement(\n \"data-view.app-wall-relation-line\"\n ) as AppWallRelationLine;\n lineElement.style.height = `${lineLength}px`;\n lineElement.classList.add(\"relation-line\");\n lineElement.lightColor = lightColor;\n const lineObject = new CSS3DObject(lineElement);\n\n const centerVector = new Vector3().lerpVectors(\n sourceVector,\n targetVector,\n 0.5\n );\n lineObject.position.copy(centerVector);\n // lineObject.lookAt(new Vector3(0, 0, 10).add(centerVector));\n // lineObject.lookAt(new Vector3(0, 10000, 0));\n\n const quaternion = new Quaternion().setFromUnitVectors(\n new Vector3(0, 1, 0).normalize(),\n subVector.clone().normalize()\n );\n lineObject.setRotationFromQuaternion(quaternion);\n\n return lineObject;\n};\n\nexport const getCenterPointOrSubPoint = (\n start: Vector3Tuple,\n end: Vector3Tuple\n) => {\n const pointA = new Vector3(start[0], start[1], start[2]);\n const pointB = new Vector3(end[0], end[1], end[2]);\n return {\n centerVector: new Vector3().lerpVectors(pointA, pointB, 0.5), //中心点坐标\n subVector: new Vector3().subVectors(pointA, pointB), // a-b向量\n };\n};\nexport const createTrapezoidalRightOrLeftElement = (props: {\n BW: number;\n TW: number;\n d: number;\n TH: number;\n BH: number;\n isLeft: boolean;\n}): CSS3DObject => {\n const { BW, TW, d, TH, BH, isLeft } = props;\n const height = Math.sqrt(Math.pow(TW / 2 - BW / 2, 2) + Math.pow(d, 2)); //斜边\n const wrapper = document.createElement(\"div\");\n wrapper.style.cssText = `\n width: ${height}px;\n height:${TH}px;\n position: relative;\n clip-path: polygon(0 0, ${height}px ${\n TH / 2 - BH / 2\n }px, ${height}px ${TH / 2 - BH / 2 + BH}px, 0 ${TH}px);\n `;\n const cantCard = document.createElement(\"div\");\n cantCard.className = \"trapezoidalLeftOrRightAnimation\";\n wrapper.appendChild(cantCard);\n const start: Vector3Tuple = isLeft ? [-BW / 2, 0, 0] : [BW / 2, 0, 0];\n const end: Vector3Tuple = isLeft ? [-TW / 2, 0, d] : [TW / 2, 0, d];\n const objectCantModel = new CSS3DObject(wrapper);\n const { centerVector, subVector } = getCenterPointOrSubPoint(start, end);\n objectCantModel.position.copy(centerVector);\n const quaternion = new Quaternion().setFromUnitVectors(\n new Vector3(1, 0, 0).normalize(),\n subVector.clone().normalize()\n );\n objectCantModel.setRotationFromQuaternion(quaternion);\n return objectCantModel;\n};\n\nexport const createTrapezoidalTopOrBottomElement = (props: {\n BW: number;\n TW: number;\n d: number;\n TH: number;\n BH: number;\n isTop: boolean;\n}): CSS3DObject => {\n const { BW, TW, d, TH, BH, isTop } = props;\n const height = Math.sqrt(Math.pow(TH / 2 - BH / 2, 2) + Math.pow(d, 2)); //斜边\n const wrapper = document.createElement(\"div\");\n wrapper.style.cssText = `\n width: ${TW}px;\n height:${height}px;\n position: relative;\n clip-path: polygon(0 0, ${TW}px 0, ${\n TW / 2 - BW / 2 + BW\n }px ${height}px, ${TW / 2 - BW / 2}px ${height}px);\n `;\n const cantCard = document.createElement(\"div\");\n cantCard.className = \"trapezoidalTopOrBottomAnimation\";\n wrapper.appendChild(cantCard);\n const objectCantModel = new CSS3DObject(wrapper);\n const start: Vector3Tuple = isTop ? [0, -BH / 2, 0] : [0, BH / 2, 0];\n const end: Vector3Tuple = isTop ? [0, -TH / 2, d] : [0, TH / 2, d];\n const { centerVector, subVector } = getCenterPointOrSubPoint(start, end);\n objectCantModel.position.copy(centerVector);\n const topQuaternion = new Quaternion().setFromUnitVectors(\n new Vector3(0, -1, 0).normalize(),\n subVector.clone().normalize()\n );\n objectCantModel.setRotationFromQuaternion(topQuaternion);\n return objectCantModel;\n};\n/**\n * 创建梯台模型\n * @param props\n * @returns\n */\nexport const createTrapezoidalObject = (props: TrapezoidalObjectProps) => {\n const {\n objectData,\n leftBtnName,\n clusters,\n columns,\n leftOnClick,\n rightBtnName,\n rightOnClick,\n appName,\n } = props;\n const d = 600;\n const container = document.createElement(\"div\");\n const objectContainer = new CSS3DObject(container);\n objectContainer.position.set(...objectData.point);\n // 模型为梯形 , 底部和顶部的宽高成一定的比例计算, bw: tw = 1:11; bh:th= 1:4.5\n const BW: number = objectData.width,\n BH: number = objectData.height,\n TW = 1500,\n TH = 1200;\n // 底部\n const bottomCard = document.createElement(\"div\");\n bottomCard.style.cssText = `\n width: ${BW}px;\n height: ${BH}px;\n box-shadow: inset 0px 1px 2px 0px rgba(255,255,255,0.45);\n border: 1px solid rgba(118,255,255,0.58);\n padding: 16px;\n `;\n const objectBottomModel = new CSS3DObject(bottomCard);\n objectBottomModel.position.z = 0;\n objectContainer.add(objectBottomModel);\n\n // 顶部\n const topCard = document.createElement(\"div\");\n topCard.style.cssText = `\n width: ${TW}px;\n height:${TH}px;\n background: linear-gradient(rgb(13, 54, 179,0.6) 0%, rgb(74, 108, 156,0.6) 100%);\n box-sizing: border-box;\n padding: 16px;\n `;\n const thumbnailEle = document.createElement(\n \"data-view.cabinet-thumbnail\"\n ) as CabinetThumbnail;\n thumbnailEle.clusters = clusters ?? [];\n thumbnailEle.columns = columns ?? 4;\n thumbnailEle.appName = appName;\n topCard.className = \"visibilityAnimate\";\n topCard.appendChild(thumbnailEle);\n const objectTopModel = new CSS3DObject(topCard);\n objectTopModel.position.set(0, 0, d);\n\n const objectCantLeftModel = createTrapezoidalRightOrLeftElement({\n BW,\n TW,\n BH,\n TH,\n d,\n isLeft: true,\n }); //斜面右边\n const objectCantRightModel = createTrapezoidalRightOrLeftElement({\n BW,\n TW,\n BH,\n TH,\n d,\n isLeft: false,\n }); //斜面右边\n const objectCantTopModel = createTrapezoidalTopOrBottomElement({\n BW,\n TW,\n BH,\n TH,\n d,\n isTop: true,\n }); //斜面前边\n const objectCantBottomModel = createTrapezoidalTopOrBottomElement({\n BW,\n TW,\n BH,\n TH,\n d,\n isTop: false,\n }); //斜面后面\n objectContainer.add(\n objectCantLeftModel,\n objectCantRightModel,\n objectCantBottomModel,\n objectCantTopModel\n );\n if (leftBtnName) {\n const btnLeft = document.createElement(\"div\");\n btnLeft.style.cssText = `\n color: #6BE0FA;\n font-size: 28px;\n font-weight: 500;\n width: ${TW / 2}px;\n line-height: 16px;\n `;\n btnLeft.className = \"visibilityAnimate\";\n const wordNode = document.createElement(\"span\");\n wordNode.style.cursor = \"pointer\";\n wordNode.innerText = leftBtnName;\n btnLeft.appendChild(wordNode);\n const btnLeftObject = new CSS3DObject(btnLeft);\n btnLeftObject.position.set(-TW / 4 + 10, -TH / 2, 14);\n btnLeftObject.rotateX(Math.PI / 2);\n objectTopModel.add(btnLeftObject);\n wordNode.onpointerdown = leftOnClick;\n }\n if (rightBtnName) {\n const btnRight = document.createElement(\"div\");\n btnRight.style.cssText = `\n color: #FFFFFF;\n font-size: 30px;\n font-weight: 500;\n width: ${TW / 2}px;\n text-shadow: 0px 1px 4px #3366FF;\n text-align: right;\n `;\n btnRight.className = \"visibilityAnimate\";\n const textNode = document.createElement(\"span\");\n textNode.style.cursor = \"pointer\";\n textNode.innerText = rightBtnName;\n\n btnRight.appendChild(textNode);\n const btnRightObject = new CSS3DObject(btnRight);\n btnRightObject.position.set(TW / 4 - 10, -TH / 2, 14);\n btnRightObject.rotateX(Math.PI / 2);\n objectTopModel.add(btnRightObject);\n textNode.onpointerdown = rightOnClick;\n }\n objectContainer.add(objectTopModel);\n return objectContainer;\n};\n/**\n * 布局计算\n * @param dataSource\n * @param maxX\n * @param maxY\n * @returns\n */\nexport const setAppPosition = (\n dataSource: AppData[],\n maxX: number,\n maxY: number\n) => {\n if (!dataSource?.length) return [];\n let appData: Target[] = dataSource.map((d) => ({ ...d, x: 0, y: 0 }));\n if (appData.length === maxX * maxY) {\n appData = appData.map((d, i) => ({\n ...d,\n x: (i % maxX) + 1,\n y: parseInt(`${i / maxX}`) + 1,\n }));\n } else {\n const offset = maxX * (maxY - 1);\n const leng = appData.length - offset;\n for (let d = 0; d < offset; d++) {\n const u = appData[d];\n u.x = (d % maxX) + 1;\n u.y = parseInt(`${d / maxX}`) + 1;\n }\n for (let h = 0; h < leng / 2; h++) {\n const g = appData[h + offset],\n m = appData[appData.length - 1 - h];\n g.x = h + 1;\n g.y = maxY;\n if (g !== m) {\n m.x = maxX - h;\n m.y = maxY;\n }\n }\n }\n return appData;\n};\nexport const createTableTarget = (\n data: Target,\n cardSize: CardSize,\n maxX: number,\n maxY: number\n) => {\n const object3D = new Object3D();\n object3D.position.x =\n data.x * cardSize.outerWidth - (maxX / 2 + 0.5) * cardSize.outerWidth;\n object3D.position.y =\n -data.y * cardSize.outerHeight + (maxY / 2 + 0.5) * cardSize.outerHeight;\n return object3D;\n};\n\nexport const computeCurvePosition = (\n data: Target,\n cardSize: CardSize,\n maxX: number,\n maxY: number,\n angle: number\n) => {\n const position: Position = {\n x: 0,\n y: 0,\n z: 0,\n },\n n = parseInt(`${maxX * cardSize.outerWidth * 180}`) / (angle * Math.PI),\n a = maxX / 2 + 0.5;\n position.x = n * Math.sin(Math.PI / (180 / ((data.x - a) * (angle / maxX))));\n position.y =\n -data.y * cardSize.outerHeight + (maxY / 2 + 0.5) * cardSize.outerHeight;\n position.z = n - Math.sqrt(n * n - position.x * position.x);\n return position;\n};\nexport const createCurveTarget = (\n data: Target,\n cardSize: CardSize,\n maxX: number,\n maxY: number,\n angle: number,\n radius: number\n) => {\n const object3D = new Object3D();\n const vector = new Vector3();\n const position = computeCurvePosition(data, cardSize, maxX, maxY, angle);\n object3D.position.x = position.x;\n object3D.position.y = position.y;\n object3D.position.z = position.z;\n vector.x = 0;\n vector.y = object3D.position.y;\n vector.z = radius;\n object3D.lookAt(vector);\n return object3D;\n};\nexport const computeCameraDistance = (\n camera: PerspectiveCamera,\n bounds: bounds,\n distanceConfig: DistanceConfig[],\n length: number\n) => {\n const n = bounds.height + 2 * bounds.margin,\n a = (bounds.width + 2 * bounds.margin) / camera.aspect,\n i =\n (0.5 * Math.max(a, n)) / Math.tan((camera.fov * Math.PI) / 360) +\n bounds.z;\n let o = 0;\n distanceConfig.forEach(function (t) {\n length >= Math.min.apply(null, t.numRange) &&\n length <= Math.max.apply(null, t.numRange) &&\n (o = t.distance);\n });\n return Math.max(o, i);\n};\nexport const getAppRelations = (\n object: CSS3DObject,\n relationsData: Relation[]\n) => {\n const relations: Relation[] = [];\n const userData = object.userData;\n Array.isArray(relationsData) &&\n relationsData.length &&\n relationsData.forEach(function (i) {\n (userData.key !== i.source && userData.key !== i.target) ||\n relations.push(i);\n });\n return relations;\n};\nexport const findElementByEvent = (\n e: MouseEvent,\n tagName: AppWallCardBrickNameType\n) => {\n const _targetName = tagName.toUpperCase();\n const path = (e.composedPath() as Element[]).find(\n (node) => node?.shadowRoot\n ) as Ele;\n if (path?.tagName === _targetName) return path;\n const customEle = document.elementFromPoint(e.clientX, e.clientY);\n const target = customEle?.shadowRoot.elementFromPoint(\n e.clientX,\n e.clientY\n ) as Ele;\n if (target?.tagName === _targetName) return target;\n return null;\n};\n","import React, {\n ReactElement,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { debounce } from \"lodash\";\nimport { MathUtils, Object3D, PerspectiveCamera, Scene } from \"three\";\nimport {\n CSS3DObject,\n CSS3DRenderer,\n} from \"three/addons/renderers/CSS3DRenderer.js\";\nimport { TrackballControls } from \"three/addons/controls/TrackballControls.js\";\nimport TWEEN, { Tween, Easing } from \"@tweenjs/tween.js\";\nimport type { AppWallProps } from \"./index.jsx\";\nimport {\n AppWallCardBrickEleType,\n BaseConfig,\n CardSize,\n DistanceConfig,\n Ele,\n Position,\n RegisterEvents,\n Target,\n Targets,\n} from \"./interface.js\";\nimport {\n AppData,\n computeCameraDistance,\n createCurveTarget,\n createTableTarget,\n createTrapezoidalObject,\n setAppPosition,\n createRelationLine,\n getAppRelations,\n findElementByEvent,\n} from \"./utils.js\";\n\nimport \"./card-item/index.js\";\nimport { SystemCard, SystemCardProps } from \"./system-card/index.jsx\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport classNames from \"classnames\";\nconst distanceConfig: DistanceConfig[] = [\n {\n numRange: [0, 40],\n distance: 3000,\n },\n {\n numRange: [40, 60],\n distance: 2200,\n },\n {\n numRange: [60, 80],\n distance: 2700,\n },\n {\n numRange: [80, 120],\n distance: 3200,\n },\n {\n numRange: [120, 160],\n distance: 3400,\n },\n {\n numRange: [160, 300],\n distance: 3600,\n },\n];\nconst fov = 45;\nconst angle = 100;\nconst panelSpace = 300;\nconst offsetDistance = 500;\n\nconst getViewBounds = (\n length: number,\n cardSize: CardSize,\n margin: number,\n aspectH: number\n) => {\n const maxX = Math.ceil(\n Math.sqrt((length * cardSize.outerHeight) / (aspectH * cardSize.outerWidth))\n );\n const maxY = Math.ceil(length / maxX);\n const radius =\n parseInt(`${maxX * cardSize.outerWidth * 180}`) / (angle * Math.PI);\n const width =\n 2 * radius * Math.sin((Math.PI * (angle / 2)) / 180) + cardSize.outerWidth;\n const height = maxY * cardSize.outerHeight;\n const z = radius - radius * Math.cos((Math.PI * (angle / 2)) / 180);\n return {\n maxX,\n maxY,\n radius,\n bounds: {\n width,\n height,\n margin,\n z,\n },\n };\n};\n\nconst WrappedSystemCard = wrapBrick<SystemCard, SystemCardProps>(\n \"data-view.app-wall-system-card\"\n);\n\nexport function AppWallElement(props: AppWallProps): ReactElement {\n const {\n relations,\n onSystemCardButtonClick,\n useDblclick,\n useDistanceConfig,\n handleCardDbClick,\n rightBtnOnClick,\n leftBtnOnClick,\n cardBrickName,\n cardSize,\n disabledDefaultClickEvent,\n handleCardClick,\n containerId,\n noRotate,\n boundMargin,\n } = props;\n const [curClickCardItemAppData, setCurClickCardItemAppData] =\n useState<AppData>(null);\n\n const containerRef = useRef<HTMLDivElement>();\n const appwallRef = useRef<HTMLDivElement>();\n const closeBtnRef = useRef<HTMLDivElement>();\n const maskRef = useRef<HTMLDivElement>();\n const systemCardRef = useRef<SystemCard>();\n\n const rendererRef = useRef<CSS3DRenderer>();\n const sceneRef = useRef<Scene>();\n const cameraRef = useRef<PerspectiveCamera>();\n const controlsRef = useRef<TrackballControls>();\n const graph3DViewRef = useRef<CSS3DObject>(); // 梯形模型\n const targetsRef = useRef<Targets>({\n table: [],\n curve: [],\n });\n const objectsRef = useRef<CSS3DObject[]>([]);\n const lineCiCodesRef = useRef<CSS3DObject[]>([]);\n const hoverScaleRef = useRef<number>(1);\n const baseCameraDistance = useRef<number>(5000);\n\n const configRef = useRef<BaseConfig>({\n maxX: 0,\n maxY: 0,\n radius: 0,\n bounds: {\n width: 0,\n height: 0,\n margin: boundMargin,\n z: 0,\n },\n });\n const registerEvents = useRef<RegisterEvents>({\n element: null,\n mouseoverTimer: null,\n mouseoutTimer: null,\n clickTimer: null,\n dblClickTimer: null,\n isShowGraph3D: false,\n isShowAppInfo: false,\n isShowRelations: false,\n enable: true, //是否可以触发事件\n });\n\n const render = useCallback(() => {\n rendererRef.current.render(sceneRef.current, cameraRef.current);\n controlsRef.current.maxDistance =\n baseCameraDistance.current + offsetDistance;\n controlsRef.current.handleResize();\n }, []);\n\n const updateViewBounds = (length: number) => {\n configRef.current = getViewBounds(\n length,\n cardSize,\n boundMargin,\n 1 / cameraRef.current.aspect\n );\n };\n\n const init = () => {\n const containerRect = document\n .getElementById(containerId)\n ?.getBoundingClientRect();\n const width = containerRect?.width || window.innerWidth;\n const height = containerRect?.height || window.innerHeight;\n const aspect = width / height;\n const scene = new Scene();\n const camera = new PerspectiveCamera(fov, aspect, 0.1, 10000);\n\n const renderer = new CSS3DRenderer();\n renderer.setSize(width, height);\n appwallRef.current.replaceChildren(renderer.domElement);\n\n const controls = new TrackballControls(camera, renderer.domElement);\n controls.rotateSpeed = 0.5;\n controls.minDistance = 500;\n controls.maxDistance = 10000;\n controls.noRotate = noRotate;\n\n sceneRef.current = scene;\n cameraRef.current = camera;\n controlsRef.current = controls;\n rendererRef.current = renderer;\n };\n\n const createView = (table: Target[]) => {\n table.forEach((data, i) => {\n const element = document.createElement(\n cardBrickName\n ) as AppWallCardBrickEleType & Ele;\n element.status = data.status;\n element.cardTitle = data.cardItemProps?.cardTitle;\n element.description = data.cardItemProps?.description;\n element.background = data.cardItemProps?.background;\n element.color = data.cardItemProps?.color;\n element.titleStyle = data.cardItemProps?.titleStyle;\n element.desStyle = data.cardItemProps?.desStyle;\n element.descriptionList = data.cardItemProps?.descriptionList;\n const statusClass = `status-${data?.status || \"normal\"}`;\n element.className = `card-item-container ${statusClass}`;\n element.style.width = `${cardSize.width}px`;\n element.style.height = `${cardSize.height}px`;\n element.classList.add(\"card-item-wrap\");\n // 随机进入\n const objectCSS = new CSS3DObject(element);\n objectCSS.position.set(\n 4e3 * Math.random() - 2e3,\n 4e3 * Math.random() - 2e3,\n 4e3 * Math.random() - 2e3\n );\n\n sceneRef.current.add(objectCSS);\n objectsRef.current.push(objectCSS);\n\n const table = createTableTarget(\n data,\n cardSize,\n configRef.current.maxX,\n configRef.current.maxY\n );\n targetsRef.current.table.push(table);\n const curve = createCurveTarget(\n data,\n cardSize,\n configRef.current.maxX,\n configRef.current.maxY,\n angle,\n configRef.current.radius\n );\n targetsRef.current.curve.push(curve);\n\n objectCSS.userData = data;\n element.__objectCSS = objectCSS;\n element.__userData = data;\n element.__curve = curve;\n });\n };\n\n const createRelationLines = (object: CSS3DObject) => {\n const curRelations = getAppRelations(object, relations);\n const userData = object.userData;\n let lineObject: CSS3DObject, lineTarget: CSS3DObject;\n curRelations?.forEach((relation) => {\n if (relation.source === userData.key) {\n //获取目标target CSS3DObject\n lineTarget = objectsRef.current.find(\n (o) => o.userData.key === relation.target\n );\n lineObject =\n lineTarget &&\n createRelationLine(object.position, lineTarget.position, \"blue\");\n } else {\n lineTarget = objectsRef.current.find(\n (o) => o.userData.key === relation.source\n );\n lineObject =\n lineTarget &&\n createRelationLine(lineTarget.position, object.position, \"purple\");\n }\n if (!lineObject) return;\n lineCiCodesRef.current.push(lineObject);\n sceneRef.current.add(lineObject);\n });\n objectsRef.current?.forEach((item) => {\n if (\n object != item &&\n curRelations.every(\n (r) => r.source != item.userData.key && r.target != item.userData.key\n )\n ) {\n item.element.style.opacity = \"0.2\";\n }\n });\n };\n\n const showElementBetweenRelation = (target: Ele) => {\n const { __objectCSS, __userData } = target;\n const rotationY = __objectCSS.rotation.y;\n const currentEleRect = __objectCSS.element.getBoundingClientRect();\n const position: Position = {\n x: __objectCSS.position.x + 50 * Math.sin(rotationY),\n y: __objectCSS.position.y + 15,\n z: __objectCSS.position.z + 100 * Math.cos(rotationY),\n };\n\n const scale =\n currentEleRect.width >= cardSize.width\n ? hoverScaleRef.current\n : Math.min(\n cardSize.width / currentEleRect.width,\n cardSize.height / currentEleRect.height\n ),\n duration = 100;\n registerEvents.current.isShowRelations = true;\n new Tween(__objectCSS.rotation)\n // .to(\n // {\n // x: 0,\n // y: 0,\n // z: 0,\n // },\n // duration\n // )\n .onStart(() => {\n cardBrickName === \"data-view.app-wall-card-item\" &&\n __objectCSS.element.classList.add(\n `status-${__userData.status || \"normal\"}-card`\n );\n })\n .start();\n new Tween(__objectCSS.scale)\n .to(\n {\n x: scale,\n y: scale,\n z: scale,\n },\n duration\n )\n .start();\n\n new Tween(__objectCSS.position)\n .to(position, duration)\n .onUpdate(render)\n .onComplete(function () {\n //创建连线\n createRelationLines(__objectCSS);\n render();\n registerEvents.current.element = target;\n })\n .start();\n };\n\n const restoreElementState = (onComplete?: (ele?: Ele) => void) => {\n if (!registerEvents.current?.element) return onComplete?.();\n const {\n __objectCSS,\n __curve: object3d,\n __userData,\n } = registerEvents.current.element;\n const duration = 100;\n\n new Tween(__objectCSS.rotation)\n .to(\n {\n x: object3d.rotation.x,\n y: object3d.rotation.y,\n z: object3d.rotation.z,\n },\n duration\n )\n .start();\n new Tween(__objectCSS.scale)\n .to(\n {\n x: 1,\n y: 1,\n z: 1,\n },\n duration\n )\n .start();\n new Tween(__objectCSS.position)\n .to(\n {\n x: object3d.position.x,\n y: object3d.position.y,\n z: object3d.position.z,\n },\n duration\n )\n .onUpdate(render)\n .onStart(() => {\n cardBrickName === \"data-view.app-wall-card-item\" &&\n __objectCSS.element.classList.remove(\n `status-${__userData.status || \"normal\"}-card`\n );\n objectsRef.current?.forEach((item) => {\n item.element.style.opacity = \"1\";\n });\n lineCiCodesRef.current.forEach((lineObject) => {\n sceneRef.current.remove(lineObject);\n });\n lineCiCodesRef.current = [];\n render();\n })\n .onComplete(() => {\n registerEvents.current.isShowRelations = false;\n onComplete?.(registerEvents.current?.element);\n })\n .start();\n };\n\n const transform = (targets: Object3D[], duration: number) => {\n registerEvents.current.enable = false;\n for (let i = 0; i < objectsRef.current.length; i++) {\n const object = objectsRef.current[i];\n const target = targets[i];\n\n new Tween(object.position)\n .to(\n {\n x: target.position.x,\n y: target.position.y,\n z: target.position.z,\n },\n MathUtils.randFloat(duration, duration * 2)\n )\n .easing(Easing.Exponential.InOut)\n .start();\n\n new Tween(object.rotation)\n .to(\n {\n x: target.rotation.x,\n y: target.rotation.y,\n z: target.rotation.z,\n },\n MathUtils.randFloat(duration, duration * 2)\n )\n .easing(Easing.Exponential.InOut)\n .start();\n }\n\n new Tween({})\n .to({}, duration * 2)\n .onUpdate(render)\n .start()\n .onComplete(() => {\n registerEvents.current.enable = true;\n });\n };\n\n const handeReset = () => {\n TWEEN.removeAll();\n const o = {\n opacity: 1,\n },\n e = new Tween({\n z: 0,\n }),\n n = new Tween(o),\n a = new Tween(cameraRef.current.position),\n i = new Tween(controlsRef.current.target),\n r = new Tween({\n blur: 1500,\n spread: 100,\n });\n e.to(\n {\n z: panelSpace,\n },\n 1e3\n ).chain(a, i, r);\n n.to(\n {\n opacity: 0,\n },\n 1e3\n )\n .onStart(() => {\n sceneRef.current.remove(graph3DViewRef.current);\n closeBtnRef.current.style.visibility = \"hidden\";\n })\n .delay(300);\n\n a.to(controlsRef.current.position0, 1e3).onComplete(function () {\n controlsRef.current.reset();\n appwallRef.current.classList.remove(\"mask-container\");\n transform(targetsRef.current.curve, 600);\n registerEvents.current.isShowGraph3D = false;\n });\n i.to(\n {\n x: 0,\n y: 0,\n z: 0,\n },\n 1e3\n );\n r.to(\n {\n blur: 0,\n spread: 0,\n },\n 1e3\n );\n e.start();\n n.start();\n };\n const showAppInfoAnimate = (toggle: boolean) => {\n controlsRef.current.reset();\n const object = registerEvents.current.element.__objectCSS;\n const target = registerEvents.current.element.__curve;\n registerEvents.current.enable = false;\n registerEvents.current.isShowAppInfo = true;\n //定义四个位置\n const c = {\n x: target.position.x > 0 ? 2 * -cardSize.width : 2 * cardSize.width,\n y: 0,\n z: (cameraRef.current.position.z - 500) / 1.5,\n };\n const p = {\n x: 0,\n y: 0,\n z: cameraRef.current.position.z - 500,\n };\n const h = {\n x: 0,\n y: target.rotation.y > 0 ? (-Math.PI * 90) / 180 : (Math.PI * 90) / 180,\n z: 0,\n };\n const d = {\n x: 0,\n y: target.rotation.y > 0 ? (-Math.PI * 180) / 180 : (Math.PI * 180) / 180,\n z: 0,\n };\n const i = new Tween(object.position);\n const r = new Tween(object.rotation);\n const o = new Tween(object.position);\n const s = new Tween(object.rotation);\n if (toggle) {\n //收\n i.to(c, 500)\n .easing()\n .onComplete(() => {\n systemCardRef.current.hidden = true;\n registerEvents.current.element.style.opacity = \"1\";\n });\n r.to(h, 500).easing();\n o.to(\n {\n x: target.position.x,\n y: target.position.y,\n z: target.position.z,\n },\n 700\n ).easing();\n s.to(\n {\n x: target.rotation.x,\n y: target.rotation.y,\n z: target.rotation.z,\n },\n 700\n )\n .easing()\n .onComplete(() => {\n objectsRef.current?.forEach((item) => {\n item.element.style.opacity = \"1\";\n });\n });\n } else {\n //出\n objectsRef.current?.forEach((item) => {\n if (object != item) {\n item.element.style.opacity = \"0.2\";\n }\n });\n i.to(c, 700)\n .easing()\n .onStart(() => {\n //为了飞出去的途中,不能在点击其他的卡片飞出来\n maskRef.current.hidden = false;\n systemCardRef.current.hidden = true;\n });\n r.to(h, 700).easing();\n o.to(p, 500)\n .easing()\n .onStart(function () {\n registerEvents.current.element.style.opacity = \"0\";\n systemCardRef.current.style.transition = \"transition: all .3s ease\";\n systemCardRef.current.hidden = false;\n });\n s.to(d, 500).easing();\n }\n i.chain(o).start();\n r.chain(s).start();\n new Tween({})\n .to({}, 1400)\n .onUpdate(() => {\n render();\n if (Math.abs(object.rotation.y) >= Math.PI / 2) {\n const rect = registerEvents.current.element.getBoundingClientRect();\n const scale = 1.35;\n const width = rect.width * scale;\n const height = rect.height * scale;\n systemCardRef.current.style.width = `${width}px`;\n systemCardRef.current.style.height = `${height}px`;\n systemCardRef.current.style.top = `${\n rect.top - ((scale - 1) * height) / 2\n }px`;\n systemCardRef.current.style.left = `${\n rect.left - ((scale - 1) * width) / 2\n }px`;\n }\n })\n .start()\n .onComplete(function () {\n registerEvents.current.enable = true;\n registerEvents.current.isShowAppInfo = !toggle;\n maskRef.current.hidden = toggle;\n });\n };\n const resetView = () => {\n controlsRef.current.reset();\n TWEEN.removeAll();\n objectsRef.current.map((o) => {\n sceneRef.current.remove(o);\n });\n objectsRef.current = [];\n targetsRef.current = {\n table: [],\n curve: [],\n };\n //重置交互状态\n registerEvents.current = {\n element: null,\n mouseoverTimer: null,\n mouseoutTimer: null,\n clickTimer: null,\n dblClickTimer: null,\n enable: true,\n isShowAppInfo: false,\n isShowGraph3D: false,\n isShowRelations: false,\n };\n };\n\n useEffect(() => {\n init();\n let cancel: number;\n const animate = () => {\n cancel = requestAnimationFrame(animate);\n TWEEN.update();\n controlsRef.current.update();\n };\n animate();\n const container = containerId\n ? document.getElementById(containerId)\n : document.body;\n\n const observer = new ResizeObserver(\n debounce(() => {\n const { width, height } = container.getBoundingClientRect();\n cameraRef.current.aspect = width / height;\n cameraRef.current.updateProjectionMatrix();\n rendererRef.current.setSize(width, height);\n render();\n }, 300)\n );\n controlsRef.current.addEventListener(\"change\", render);\n observer.observe(container);\n return () => {\n observer.disconnect();\n controlsRef.current.removeEventListener(\"change\", render);\n controlsRef.current.dispose();\n TWEEN.removeAll();\n cameraRef.current.clear();\n sceneRef.current.clear();\n cancelAnimationFrame(cancel);\n };\n }, []);\n\n useEffect(() => {\n const length = props.dataSource?.length || 0;\n if (length > 0) {\n updateViewBounds(length);\n baseCameraDistance.current = computeCameraDistance(\n cameraRef.current,\n configRef.current.bounds,\n useDistanceConfig ? distanceConfig : [],\n length\n );\n cameraRef.current.position.z = baseCameraDistance.current;\n cameraRef.current.updateProjectionMatrix();\n controlsRef.current.position0.copy(cameraRef.current.position);\n\n const appData = setAppPosition(\n props.dataSource,\n configRef.current.maxX,\n configRef.current.maxY\n );\n createView(appData);\n transform(targetsRef.current.curve, 1000);\n }\n\n return () => {\n resetView();\n };\n }, [props.dataSource, useDistanceConfig]);\n\n useEffect(() => {\n const container = containerRef.current;\n const handleMouseover = (e: MouseEvent) => {\n clearTimeout(registerEvents.current.mouseoverTimer);\n if (\n registerEvents.current.isShowAppInfo ||\n registerEvents.current.isShowGraph3D ||\n !registerEvents.current.enable\n )\n return false;\n const target = findElementByEvent(e, cardBrickName);\n registerEvents.current.mouseoverTimer = window.setTimeout(() => {\n restoreElementState(() => {\n target &&\n !registerEvents.current.isShowAppInfo &&\n showElementBetweenRelation(target);\n clearTimeout(registerEvents.current.mouseoverTimer);\n });\n }, 300);\n };\n const handleClick = (e: MouseEvent) => {\n clearTimeout(registerEvents.current.clickTimer);\n clearTimeout(registerEvents.current.mouseoverTimer);\n if (\n registerEvents.current.isShowAppInfo ||\n registerEvents.current.isShowGraph3D ||\n !registerEvents.current.enable\n )\n return false;\n\n const target = findElementByEvent(e, cardBrickName);\n registerEvents.current.clickTimer = window.setTimeout(function () {\n clearTimeout(registerEvents.current.mouseoverTimer);\n restoreElementState(() => {\n if (target) {\n clearTimeout(registerEvents.current.clickTimer);\n clearTimeout(registerEvents.current.mouseoverTimer);\n e.stopPropagation();\n registerEvents.current.element = target;\n if (disabledDefaultClickEvent) {\n handleCardClick?.(target.__userData);\n } else {\n setCurClickCardItemAppData(target.__userData);\n showAppInfoAnimate(false);\n }\n }\n });\n }, 200);\n };\n const handleDbClick = (e: MouseEvent) => {\n clearTimeout(registerEvents.current.clickTimer);\n clearTimeout(registerEvents.current.mouseoverTimer);\n clearTimeout(registerEvents.current.dblClickTimer);\n if (\n registerEvents.current.isShowAppInfo ||\n registerEvents.current.isShowGraph3D ||\n !registerEvents.current.enable\n )\n return false;\n\n const target = findElementByEvent(e, cardBrickName);\n const { __userData, __objectCSS } = target;\n registerEvents.current.isShowGraph3D = true;\n registerEvents.current.dblClickTimer = window.setTimeout(function () {\n restoreElementState(() => {\n if (\n useDblclick ||\n __userData.trapezoidalProps?.clusters?.length < 1\n ) {\n handleCardDbClick(__userData);\n registerEvents.current.isShowGraph3D = false;\n } else {\n if (target) {\n clearTimeout(registerEvents.current.mouseoverTimer);\n clearTimeout(registerEvents.current.clickTimer);\n appwallRef.current.classList.add(\"mask-container\");\n controlsRef.current.reset();\n const basePosition = {\n opacity: 0,\n scale: 0,\n borderLeftWidth: 0,\n borderRightWidth: 0,\n borderTopWidth: 0,\n borderBottomWidth: 0,\n };\n const u = {\n x: __objectCSS.position.x,\n y:\n 860 +\n cardSize.height * (configRef.current.maxY - __userData.y),\n };\n const n = new Tween(cameraRef.current.position);\n const a = new Tween(basePosition);\n const i = new Tween({\n z: 0,\n });\n const r = new Tween(cameraRef.current.position);\n const o = new Tween(controlsRef.current.target);\n const s = new Tween({\n blur: 12,\n spread: 0,\n });\n transform(targetsRef.current.table, 600);\n n.to(\n {\n x: 0,\n y: -3600,\n z: 1600,\n },\n 1e3\n ).chain(s, a, i);\n a.to(\n {\n opacity: 1,\n },\n 700\n ).onStart(() => {\n const objectContainer = createTrapezoidalObject({\n objectData: {\n width: cardSize.width,\n height: cardSize.height,\n point: [\n __objectCSS.position.x,\n __objectCSS.position.y,\n __objectCSS.position.z,\n ],\n },\n clusters: __userData.trapezoidalProps?.clusters,\n columns: __userData.trapezoidalProps?.columns,\n appName: __userData.trapezoidalProps?.appName,\n leftBtnName: __userData.trapezoidalProps?.leftBtnName,\n rightBtnName: __userData.trapezoidalProps?.rightBtnName,\n rightOnClick: () => rightBtnOnClick(__userData),\n leftOnClick: () => leftBtnOnClick(__userData),\n });\n graph3DViewRef.current = objectContainer;\n sceneRef.current.add(objectContainer);\n });\n i.to(\n {\n z: panelSpace,\n },\n 1e3\n )\n .delay(230)\n .chain(r, o);\n\n r.to(\n {\n x: u.x,\n y: -3600 + u.y,\n },\n 1e3\n );\n o.to(\n {\n x: u.x,\n y: u.y,\n },\n 1e3\n ).onComplete(function () {\n closeBtnRef.current.style.visibility = \"visible\";\n });\n n.start();\n }\n }\n });\n }, 200);\n };\n\n container.addEventListener(\"dblclick\", handleDbClick);\n container.addEventListener(\"click\", handleClick);\n container.addEventListener(\"mouseover\", handleMouseover);\n return () => {\n container.removeEventListener(\"mouseover\", handleMouseover);\n container.removeEventListener(\"click\", handleClick);\n container.removeEventListener(\"dblclick\", handleDbClick);\n };\n }, [disabledDefaultClickEvent, handleCardClick]);\n\n return (\n <div className=\"appwall-container\" ref={containerRef}>\n <div className=\"appwall\" ref={appwallRef}></div>\n <div\n className=\"mask\"\n ref={maskRef}\n onClick={() => {\n registerEvents.current.enable && showAppInfoAnimate(true);\n }}\n hidden={true}\n >\n <WrappedSystemCard\n {...curClickCardItemAppData?.systemCardProps}\n onClick={(e) => e.stopPropagation()}\n handleClick={() => onSystemCardButtonClick(curClickCardItemAppData)}\n ref={systemCardRef}\n className={classNames({\n infoWrapper: curClickCardItemAppData?.status === \"normal\",\n warningWrapper: curClickCardItemAppData?.status === \"warning\",\n })}\n />\n </div>\n <div\n className=\"closeBtn\"\n ref={closeBtnRef}\n onClick={() => {\n handeReset();\n }}\n />\n </div>\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block;width:100%;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.mask-container{position:absolute;top:0;left:0;width:100%;height:100%;background:#0c1216;z-index:1000}.appwall-container{padding:8px}.appwall{position:relative}.appwall.loading .card-item{pointer-events:none!important}.mask{position:absolute;width:100%;height:100%;top:0;bottom:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:center}.mask[hidden]{display:none}.infoWrapper{position:absolute;background:var(--color-fill-bg-base-4);box-shadow:0 0 12px 2px rgba(80,255,255,0.45),inset 0 0 22px 0 #20242a;border:2px solid #50ffff;overflow:hidden}.warningWrapper{position:absolute;background:linear-gradient(180deg,#cc0066 0%,rgba(204,0,102,0.2) 100%),#0f1117ff;box-shadow:0 0 12px 2px rgba(204,0,102,0.4),inset 0 4px 10px 0 rgba(255,255,255,0.65);overflow:hidden}.relation-line{pointer-events:none!important}.closeBtn{visibility:hidden;position:fixed;top:50px;right:50px;width:46px;height:46px;text-align:center;border:1px solid;color:rgb(138 189 255/84%);font-size:20px;line-height:46px;cursor:pointer;background:rgba(138,189,255,0.13);border-image:linear-gradient(135deg,rgba(255,255,255,0.5),rgba(255,255,255,0),rgba(255,255,255,0.33)) 1 1;display:flex;justify-content:center;align-items:center;z-index:1000}.closeBtn:before,\n.closeBtn:after{content:\"\";width:2px;height:20px;background:linear-gradient(180deg,#3467ff 0%,#98cbff 100%);position:absolute}.closeBtn:before{transform:rotateZ(45deg)}.closeBtn:after{transform:rotateZ(-45deg)}.closeBtn:hover:after,\n.closeBtn:hover:before{background:var(--color-normal-text)}.visibilityAnimate{visibility:hidden;animation:visibility 0.5s both 1s}.trapezoidalLeftOrRightAnimation,\n.trapezoidalTopOrBottomAnimation{background:linear-gradient(180deg,rgba(51,102,255,0.4) 0%,#99ccff 100%);opacity:0.2;position:absolute}.trapezoidalTopOrBottomAnimation{bottom:0;width:100%;left:0;animation:animateTop 1s both}.trapezoidalLeftOrRightAnimation{top:0;right:0;height:100%;animation:animateLeft 1s both}@keyframes animateTop{0%{height:0}100%{height:100%}}@keyframes animateLeft{0%{width:0}100%{width:100%}}@keyframes visibility{0%{visibility:hidden}100%{visibility:visible}}.card-item-container{transition:opacity 0.5s}.status-normal-card{box-shadow:0 0 100px rgba(80,255,255,0.58);border:1px solid rgba(80,255,255,0.58);background:-webkit-gradient(liner,left top,left bottom,from(#002c8d),to(#00123e));background:linear-gradient(to bottom,rgba(80,255,255,1) 0%,rgba(80,255,255,0) 100%)}.status-warning-card{box-shadow:0 0 100px #cc0066;background:-webkit-gradient(liner,left top,left bottom,from(#cc0066),to(rgba(204,0,102,0.2)));background:linear-gradient(to bottom,#cc0066 0%,rgba(204,0,102,0.2) 100%)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:inline-block;width:100%;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.card-item-container{position:relative;width:100%;height:100%}.card-item{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center;border-radius:var(--no-border-radius);border-color:transparent;transition:border-color 0.5s}.status-normal:hover{box-shadow:0 0 100px rgba(80,255,255,0.58);border:1px solid rgba(80,255,255,0.58);background:-webkit-gradient(liner,left top,left bottom,from(#002c8d),to(#00123e));background:linear-gradient(to bottom,rgba(80,255,255,1) 0%,rgba(80,255,255,0) 100%)}.status-warning:hover{box-shadow:0 0 100px #CC0066;background:-webkit-gradient(liner,left top,left bottom,from(#CC0066),to(rgba(204,0,102,0.2)));background:linear-gradient(to bottom,#CC0066 0%,rgba(204,0,102,0.2) 100%)}.card-item-container.status-normal .card-item{background:var(--color-fill-bg-base-4);box-shadow:inset 0px 1px 2px 0px rgba(255,255,255,0.45)}.card-item-container.status-normal:hover .card-item{border:2px solid rgba(80,255,255,0.58)}.card-item-container.status-warning .card-item{background:linear-gradient(180deg,#CC0066 0%,rgba(204,0,102,0.2) 100%);box-shadow:inset 0px 2px 6px 0px rgba(255,255,255,0.65)}.card-item-container.status-warning:hover .card-item{border:none}.card-item-text-container{width:100%;padding:0 12px}.card-item-title,\n.card-item-description{font-size:20px;font-weight:var(--font-weight-500);color:var(--color-normal-text)}.card-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-item-description{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:inline-block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:100%}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.relation-line{position:relative;width:6px;height:100%;background:var(--color-text-divider-line-1);overflow:hidden}.relation-line::after{content:'';position:absolute;width:100%;height:20%;left:0px;top:0px;animation:lightMove 1000ms ease-in-out infinite,lightOpacity 1000ms ease-in-out infinite}.relation-line.light-color-blue::after{background:linear-gradient(rgba(80,255,255,0) 0%,rgba(80,255,255,1) 90%,#DFFFFF 100%)}.relation-line.light-color-purple::after{background:linear-gradient(rgba(102,0,255,0) 0%,rgba(102,0,255,1) 90%,#B07BFF 100%)}@keyframes lightMove{0%{top:0;transform:translateY(-100%)}100%{top:100%;transform:translateY(0)}}@keyframes lightOpacity{0%{opacity:0}20%{opacity:1}80%{opacity:1}100%{opacity:0}}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:inline-block}:host([hidden]){display:none}*,\n*::before,\n*::after{box-sizing:border-box}.wrapper{position:relative;width:100%;height:100%;padding:30px 24px 35px;left:0;display:flex;flex-direction:column;border-radius:var(--no-border-radius)}.cardName{font-size:var(--title-font-size-strong);line-height:22px;text-align:center;font-weight:var(--font-weight-500);color:var(--color-normal-text);text-shadow:0 1px 4px rgba(51,102,255,0.5);margin-bottom:35px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.descriptions{flex:1;margin-bottom:20px;font-size:var(--auxiliary-font-size-small);overflow:auto;font-weight:var(--font-weight-400)}.descriptionsItem .itemKey{color:var(--color-secondary-text)}.descriptionsItem .itemValue{color:var(--color-strong-text)}.descriptionsItem{display:flex;gap:10px;margin-bottom:12px}.descriptionsItem>div{flex:1;text-align:left;word-break:break-all}.buttonContent{position:absolute;bottom:16px;right:24px;font-size:var(--auxiliary-font-size);color:#99CCFF;cursor:pointer;font-weight:var(--font-weight-500)}.buttonName{margin-left:5px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{--palette-rgba-white-1:rgba(255,255,255,10%);--palette-rgba-white-2:rgba(255,255,255,20%);--palette-rgba-white-3:rgba(255,255,255,30%);--palette-rgba-white-4:rgba(255,255,255,40%);--palette-rgba-white-5:rgba(255,255,255,50%);--palette-rgba-white-6:rgba(255,255,255,60%);--palette-rgba-white-7:rgba(255,255,255,70%);--palette-rgba-white-8:rgba(255,255,255,80%);--palette-rgba-white-9:rgba(255,255,255,90%);--palette-rgba-white-10:rgba(255,255,255,100%);--palette-rgba-gray-1:rgba(0,0,0,10%);--palette-rgba-gray-2:rgba(0,0,0,20%);--palette-rgba-gray-3:rgba(0,0,0,30%);--palette-rgba-gray-4:rgba(0,0,0,40%);--palette-rgba-gray-5:rgba(0,0,0,50%);--palette-rgba-gray-6:rgba(0,0,0,60%);--palette-rgba-gray-7:rgba(0,0,0,70%);--palette-rgba-gray-8:rgba(0,0,0,80%);--palette-rgba-gray-9:rgba(0,0,0,90%);--palette-rgba-gray-10:rgba(0,0,0,100%);--palette-rgba-blue-gray-2:rgba(101,106,134,20%);--palette-rgba-blue-gray-3:rgba(101,106,134,30%);--palette-rgba-blue-gray-8:rgba(101,106,134,80%);--palette-tech-blue-4-channel:67,127,255;--palette-tech-blue-4:rgb(var(--palette-tech-blue-4-channel));--palette-tech-blue-6-channel:51,102,255;--palette-tech-blue-6:rgb(var(--palette-tech-blue-6-channel));--palette-tech-blue-8-channel:40,69,159;--palette-tech-blue-8:rgb(var(--palette-tech-blue-8-channel));--palette-sea-green-4-channel:131,245,225;--palette-sea-green-4:rgb(var(--palette-sea-green-4-channel));--palette-green-6-channel:81,235,73;--palette-green-6:rgb(var(--palette-green-6-channel));--palette-green-2:rgba(var(--palette-green-6-channel),20%);--palette-lotus-pink-7-channel:204,0,102;--palette-lotus-pink-7:rgb(var(--palette-lotus-pink-7-channel));--palette-red-6-channel:242,39,39;--palette-red-6:rgb(var(--palette-red-6-channel));--palette-red-2:rgba(var(--palette-red-6-channel),20%);--color-fill-global-bg:#0f1014;--color-fill-bg-container-1:var(--palette-rgba-white-1);--color-fill-bg-container-2:var(--palette-rgba-blue-gray-2);--color-fill-bg-container-3:var(--palette-rgba-blue-gray-8);--color-fill-bg-base-1:var(--palette-rgba-blue-gray-2);--color-fill-bg-base-2:rgba(15,16,20,0%);--color-fill-bg-base-3:rgba(0,0,0,20%);--color-fill-bg-base-4:rgba(40,46,58,100%);--color-fill-bg-base-5:rgba(19,25,47,80%);--color-fill-bg-base-6:var(--palette-rgba-blue-gray-3);--color-brand:var(--palette-tech-blue-6);--color-brand-hover:var(--palette-tech-blue-4);--color-brand-active:var(--palette-tech-blue-8);--color-contrast-1:var(--palette-sea-green-4);--color-error:var(--palette-red-6);--color-error-bg:var(--palette-red-2);--color-success:var(--palette-green-6);--color-success-bg:var(--palette-green-2);--color-header-text-big:var(--palette-rgba-white-10);--color-header-text:var(--palette-rgba-white-10);--color-normal-text:var(--palette-rgba-white-10);--color-strong-text:var(--palette-rgba-white-9);--color-auxiliary-text:var(--palette-rgba-white-8);--color-secondary-text:var(--palette-rgba-white-6);--color-disabled-text:var(--palette-rgba-white-4);--color-border-divider-line:var(--palette-rgba-white-1);--color-text-divider-line-1:var(--palette-rgba-white-2);--color-text-divider-line-2:var(--palette-rgba-white-2);--small-border-radius:2px;--medius-border-radius:5px;--larger-border-radius:12px;--container-border-radius:9999px;--no-border-radius:0px;--mask-bg:var(--palette-rgba-gray-7);--title-font-size-larger:30px;--title-font-size-strong:22px;--title-font-size:18px;--normal-font-size:14px;--auxiliary-font-size:16px;--auxiliary-font-size-small:12px;--overview-data-font-size:34px;--statistics-data-font-size:28px;--normal-data-font-size-larger:20px;--normal-data-font-size:16px;--chart-legend-font-size:12px;--chart-tooltips-font-size-1:12px;--chart-tooltips-font-size-2:12px;--chart-axis-x-font-size:12px;--chart-axis-x-font-size-larger:14px;--chart-axis-y-font-size:12px;--chart-axis-y-font-size-larger:14px;--font-weight-600:600;--font-weight-500:500;--font-weight-400:400;--text-shadow:0px 1px 4px #2863ee;--border-width-base:1px;--border-width-double-base:2px;--border-width-tribble-base:3px;--punctate-width-base:1px;--paragraph-width-base:1px;--button-text-color:#40d0db}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n"],"names":["createRelationLine","sourceVector","targetVector","lightColor","subVector","Vector3","subVectors","lineLength","length","lineElement","document","createElement","style","height","concat","classList","add","lineObject","CSS3DObject","centerVector","lerpVectors","position","copy","quaternion","Quaternion","setFromUnitVectors","normalize","clone","setRotationFromQuaternion","getCenterPointOrSubPoint","start","end","pointA","pointB","createTrapezoidalRightOrLeftElement","props","BW","TW","d","TH","BH","isLeft","Math","sqrt","pow","wrapper","cssText","cantCard","className","appendChild","objectCantModel","createTrapezoidalTopOrBottomElement","isTop","topQuaternion","createTrapezoidalObject","objectData","leftBtnName","clusters","columns","leftOnClick","rightBtnName","rightOnClick","appName","container","objectContainer","set","point","width","bottomCard","objectBottomModel","z","topCard","thumbnailEle","objectTopModel","objectCantLeftModel","objectCantRightModel","objectCantTopModel","objectCantBottomModel","btnLeft","wordNode","cursor","innerText","btnLeftObject","rotateX","PI","onpointerdown","btnRight","textNode","btnRightObject","setAppPosition","dataSource","maxX","maxY","appData","map","_objectSpread","x","y","i","parseInt","offset","leng","u","h","g","m","createTableTarget","data","cardSize","object3D","Object3D","outerWidth","outerHeight","createCurveTarget","angle","radius","vector","computeCurvePosition","n","a","sin","lookAt","computeCameraDistance","camera","bounds","distanceConfig","margin","aspect","max","tan","fov","o","forEach","t","min","apply","numRange","distance","getAppRelations","object","relationsData","relations","userData","Array","isArray","key","source","target","push","findElementByEvent","e","tagName","_targetName","toUpperCase","path","composedPath","find","node","shadowRoot","customEle","elementFromPoint","clientX","clientY","panelSpace","offsetDistance","getViewBounds","aspectH","ceil","cos","WrappedSystemCard","wrapBrick","AppWallElement","onSystemCardButtonClick","useDblclick","useDistanceConfig","handleCardDbClick","rightBtnOnClick","leftBtnOnClick","cardBrickName","disabledDefaultClickEvent","handleCardClick","containerId","noRotate","boundMargin","curClickCardItemAppData","setCurClickCardItemAppData","useState","containerRef","useRef","appwallRef","closeBtnRef","maskRef","systemCardRef","rendererRef","sceneRef","cameraRef","controlsRef","graph3DViewRef","targetsRef","table","curve","objectsRef","lineCiCodesRef","hoverScaleRef","baseCameraDistance","configRef","registerEvents","element","mouseoverTimer","mouseoutTimer","clickTimer","dblClickTimer","isShowGraph3D","isShowAppInfo","isShowRelations","enable","render","useCallback","current","maxDistance","handleResize","restoreElementState","onComplete","_registerEvents$curre","__objectCSS","__curve","object3d","__userData","Tween","rotation","to","scale","onUpdate","onStart","_objectsRef$current2","remove","status","item","opacity","_registerEvents$curre2","transform","targets","duration","MathUtils","randFloat","easing","Easing","Exponential","InOut","showAppInfoAnimate","toggle","reset","_objectsRef$current4","c","p","r","s","hidden","_objectsRef$current3","transition","chain","abs","rect","getBoundingClientRect","top","left","useEffect","cancel","init","_document$getElementB","containerRect","getElementById","window","innerWidth","innerHeight","scene","Scene","PerspectiveCamera","renderer","CSS3DRenderer","setSize","replaceChildren","domElement","controls","TrackballControls","rotateSpeed","minDistance","animate","requestAnimationFrame","TWEEN","update","body","observer","ResizeObserver","debounce","updateProjectionMatrix","addEventListener","observe","disconnect","removeEventListener","dispose","clear","cancelAnimationFrame","_props$dataSource","updateViewBounds","position0","_data$cardItemProps","_data$cardItemProps2","_data$cardItemProps3","_data$cardItemProps4","_data$cardItemProps5","_data$cardItemProps6","_data$cardItemProps7","cardTitle","cardItemProps","description","background","color","titleStyle","desStyle","descriptionList","statusClass","objectCSS","random","handleMouseover","clearTimeout","setTimeout","rotationY","currentEleRect","_objectsRef$current","lineTarget","curRelations","relation","every","showElementBetweenRelation","handleClick","stopPropagation","handleDbClick","_userData$trapezoida","trapezoidalProps","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","blur","spread","_userData$trapezoida2","_userData$trapezoida3","_userData$trapezoida4","_userData$trapezoida5","_userData$trapezoida6","delay","visibility","React","ref","onClick","_extends","systemCardProps","classNames","infoWrapper","warningWrapper","handeReset","___CSS_LOADER_EXPORT___","module","id","toString"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_next_bricks_data_view=self.webpackChunk_next_bricks_data_view||[]).push([[9749,2052],{1440:(t,e,n)=>{n.r(e),n.d(e,{AppWallCardItem:()=>j});var r,i,a,s,o,c,l,u,h=n(918),d=n(1369),f=n(8449),p=n(6902),m=n(8769),v=n.n(m),g=n(9929),b=n(9938),w=n(9935),y=n(547),k=n(3373),A=n.n(k);function E(t,e,n){return t.set(S(t,e),n),n}function C(t,e){return t.get(S(t,e))}function S(t,e,n){if("function"==typeof t?t===e:t.has(e))return arguments.length<3?e:n;throw new TypeError("Private element is not present on this object")}var j,{defineElement:O,property:N}=(0,g.createDecorators)(),T=new WeakMap,D=new WeakMap,W=new WeakMap;class M extends b.ReactNextElement{constructor(){super(...arguments),(0,h.A)(this,T,i(this,"normal")),(0,h.A)(this,D,(a(this),s(this))),(0,h.A)(this,W,(o(this),c(this))),l(this)}get status(){return C(T,this)}set status(t){E(T,this,t)}get cardTitle(){return C(D,this)}set cardTitle(t){E(D,this,t)}get description(){return C(W,this)}set description(t){E(W,this,t)}render(){return v().createElement(P,{status:this.status,cardTitle:this.cardTitle,description:this.description})}}function P(t){var{status:e,cardTitle:n,description:r}=t;return v().createElement("div",{className:A()("card-item-container",e&&"status-".concat(e))},v().createElement("div",{className:"card-item"},v().createElement("div",{className:"card-item-text-container"},v().createElement("div",{className:"card-item-title"},n),v().createElement("div",{className:"card-item-description"},r))))}u=M,({e:[i,a,s,o,c,l],c:[j,r]}=function(t,e,n,r,i,a){var s,o,c,l,u,h,m,v=Symbol.metadata||Symbol.for("Symbol.metadata"),g=Object.defineProperty,b=Object.create,w=[b(null),b(null)],y=e.length;function k(e,n,r){return function(i,a){n&&(a=i,i=t);for(var s=0;s<e.length;s++)a=e[s].apply(i,r?[a]:[]);return r?a:i}}function A(t,e,n,r){if("function"!=typeof t&&(r||void 0!==t))throw new TypeError(e+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return t}function E(t,e,n,r,i,a,c,l,u,h,d){function p(t){if(!d(t))throw new TypeError("Attempted to access private element on non-instance")}var m=[].concat(e[0]),v=e[3],b=!c,y=1===i,E=3===i,C=4===i,S=2===i;function j(e,n,r){return function(i,a){return n&&(a=i,i=t),r&&r(i),O[e].call(i,a)}}if(!b){var O={},N=[],T=E?"get":C||y?"set":"value";if(u?(h||y?O={get:(0,f.A)((function(){return v(this)}),r,"get"),set:function(t){e[4](this,t)}}:O[T]=v,h||(0,f.A)(O[T],r,S?"":T)):h||(O=Object.getOwnPropertyDescriptor(t,r)),!h&&!u){if((o=w[+l][r])&&7!=(o^i))throw new Error("Decorating two elements with the same name ("+O[T].name+") is not supported yet");w[+l][r]=i<3?1:i}}for(var D=t,W=m.length-1;W>=0;W-=n?2:1){var M=m[W],P=n?m[W-1]:void 0,x={},z={kind:["field","accessor","method","getter","setter","class"][i],name:r,metadata:s,addInitializer:function(t,e){if(t.v)throw new Error("attempted to call addInitializer after decoration was finished");A(e,"An initializer","be",!0),a.push(e)}.bind(null,x)};if(b)o=M.call(P,D,z),x.v=1,A(o,"class decorators","return")&&(D=o);else if(z.static=l,z.private=u,o=z.access={has:u?d.bind():function(t){return r in t}},C||(o.get=u?S?function(t){return p(t),O.value}:j("get",0,p):function(t){return t[r]}),S||E||(o.set=u?j("set",0,p):function(t,e){t[r]=e}),D=M.call(P,y?{get:O.get,set:O.set}:O[T],z),x.v=1,y){if("object"==typeof D&&D)(o=A(D.get,"accessor.get"))&&(O.get=o),(o=A(D.set,"accessor.set"))&&(O.set=o),(o=A(D.init,"accessor.init"))&&N.unshift(o);else if(void 0!==D)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else A(D,(h?"field":"method")+" decorators","return")&&(h?N.unshift(D):O[T]=D)}return i<2&&c.push(k(N,l,1),k(a,l,0)),h||b||(u?y?c.splice(-1,0,j("get",l),j("set",l)):c.push(S?O[T]:A.call.bind(O[T])):g(t,r,O)),D}function C(t){return g(t,v,{configurable:!0,enumerable:!0,value:s})}return void 0!==a&&(s=a[v]),s=b(null==s?null:s),u=[],h=function(t){t&&u.push(k(t))},(m=function(e,r){for(var i=0;i<n.length;i++){var a=n[i],s=a[1],o=7&s;if((8&s)==e&&!o==r){var h=a[2],f=!!a[3],m=16&s;E(e?t:t.prototype,a,m,f?"#"+h:(0,d.A)(h),o,o<2?[]:e?l=l||[]:c=c||[],u,!!e,f,r,e&&f?function(e){return(0,p.A)(e)===t}:undefined)}}})(8,0),m(0,0),m(8,1),m(0,1),h(c),h(l),o=u,y||C(t),{e:o,get c(){var n=[];return y&&[C(t=E(t,[e],0,t.name,5,n)),k(n,1)]}}}(u,[O("data-view.app-wall-card-item",{styleTexts:[w.A,y.A]})],[[N(),1,"status"],[N(),1,"cardTitle"],[N(),1,"description"]],0,0,b.ReactNextElement)),r()},571:(t,e,n)=>{n.r(e),n.d(e,{AppWall:()=>ct});var r,i,a,s,o,c,l,u,h,d,f,p,m,v,g,b,w,y,k,A,E,C,S,j,O,N,T,D,W,M,P,x,z,R,I,B,L,_,H,K,V,q,F=n(4586),G=n(4635),J=n(918),Q=n(1369),U=n(8449),X=n(6902),Y=n(8769),Z=n.n(Y),$=n(9929),tt=n(9938),et=n(9935),nt=n(2960),rt=n(5562);function it(t,e,n){return n(ot(t,e))}function at(t,e,n){return t.set(ot(t,e),n),n}function st(t,e){return t.get(ot(t,e))}function ot(t,e,n){if("function"==typeof t?t===e:t.has(e))return arguments.length<3?e:n;throw new TypeError("Private element is not present on this object")}var ct,{defineElement:lt,property:ut,event:ht}=(0,$.createDecorators)(),dt=new WeakMap,ft=new WeakMap,pt=new WeakMap,mt=new WeakMap,vt=new WeakMap,gt=new WeakMap,bt=new WeakMap,wt=new WeakMap,yt=new WeakMap,kt=new WeakMap,At=new WeakMap,Et=new WeakSet,Ct=new WeakMap,St=new WeakMap,jt=new WeakMap,Ot=new WeakMap,Nt=new WeakMap;class Tt extends tt.ReactNextElement{constructor(){super(...arguments),(0,G.A)(this,Et),(0,J.A)(this,dt,i(this)),(0,J.A)(this,ft,(a(this),s(this))),(0,J.A)(this,pt,(o(this),c(this))),(0,J.A)(this,mt,(l(this),u(this))),(0,J.A)(this,vt,(h(this),d(this))),(0,J.A)(this,gt,(f(this),p(this,{width:120,height:160,outerWidth:140,outerHeight:180,lgWidth:180,lgHeight:240}))),(0,J.A)(this,bt,(m(this),v(this,"data-view.app-wall-card-item"))),(0,J.A)(this,wt,(g(this),b(this))),(0,J.A)(this,yt,(w(this),y(this))),(0,J.A)(this,kt,(k(this),A(this,100))),(0,J.A)(this,At,(E(this),C(this))),(0,J.A)(this,Ct,(O(this),t=>{it(Et,this,S).emit(t)})),(0,J.A)(this,St,N(this)),(0,J.A)(this,jt,(W(this),M(this))),(0,J.A)(this,Ot,(z(this),R(this))),(0,J.A)(this,Nt,(L(this),_(this))),(0,F.A)(this,"handleLeftClick",(V(this),t=>{it(Et,this,T).emit(t)})),(0,F.A)(this,"handleRightClick",(t=>{it(Et,this,P).emit(t)})),(0,F.A)(this,"handleCardDbClick",(t=>{it(Et,this,I).emit(t)})),(0,F.A)(this,"handleCardClick",(t=>{it(Et,this,H).emit(t)}))}get dataSource(){return st(dt,this)}set dataSource(t){at(dt,this,t)}get relations(){return st(ft,this)}set relations(t){at(ft,this,t)}get useDblclick(){return st(pt,this)}set useDblclick(t){at(pt,this,t)}get useDistanceConfig(){return st(mt,this)}set useDistanceConfig(t){at(mt,this,t)}get disabledDefaultClickEvent(){return st(vt,this)}set disabledDefaultClickEvent(t){at(vt,this,t)}get cardSize(){return st(gt,this)}set cardSize(t){at(gt,this,t)}get cardBrickName(){return st(bt,this)}set cardBrickName(t){at(bt,this,t)}get containerId(){return st(wt,this)}set containerId(t){at(wt,this,t)}get noRotate(){return st(yt,this)}set noRotate(t){at(yt,this,t)}get boundMargin(){return st(kt,this)}set boundMargin(t){at(kt,this,t)}render(){return Z().createElement(rt.S,{dataSource:this.dataSource,relations:this.relations,onSystemCardButtonClick:st(Ct,this),useDblclick:this.useDblclick,useDistanceConfig:this.useDistanceConfig,leftBtnOnClick:this.handleLeftClick,rightBtnOnClick:this.handleRightClick,handleCardDbClick:this.handleCardDbClick,disabledDefaultClickEvent:this.disabledDefaultClickEvent,handleCardClick:this.handleCardClick,cardSize:this.cardSize,cardBrickName:this.cardBrickName,containerId:this.containerId,noRotate:this.noRotate,boundMargin:this.boundMargin})}}q=Tt,({e:[i,a,s,o,c,l,u,h,d,f,p,m,v,g,b,w,y,k,A,E,C,S,j,O,N,T,D,W,M,P,x,z,R,I,B,L,_,H,K,V],c:[ct,r]}=function(t,e,n,r,i,a){var s,o,c,l,u,h,d,f=Symbol.metadata||Symbol.for("Symbol.metadata"),p=Object.defineProperty,m=Object.create,v=[m(null),m(null)],g=e.length;function b(e,n,r){return function(i,a){n&&(a=i,i=t);for(var s=0;s<e.length;s++)a=e[s].apply(i,r?[a]:[]);return r?a:i}}function w(t,e,n,r){if("function"!=typeof t&&(r||void 0!==t))throw new TypeError(e+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return t}function y(t,e,n,r,i,a,c,l,u,h,d){function f(t){if(!d(t))throw new TypeError("Attempted to access private element on non-instance")}var m=[].concat(e[0]),g=e[3],y=!c,k=1===i,A=3===i,E=4===i,C=2===i;function S(e,n,r){return function(i,a){return n&&(a=i,i=t),r&&r(i),j[e].call(i,a)}}if(!y){var j={},O=[],N=A?"get":E||k?"set":"value";if(u?(h||k?j={get:(0,U.A)((function(){return g(this)}),r,"get"),set:function(t){e[4](this,t)}}:j[N]=g,h||(0,U.A)(j[N],r,C?"":N)):h||(j=Object.getOwnPropertyDescriptor(t,r)),!h&&!u){if((o=v[+l][r])&&7!=(o^i))throw new Error("Decorating two elements with the same name ("+j[N].name+") is not supported yet");v[+l][r]=i<3?1:i}}for(var T=t,D=m.length-1;D>=0;D-=n?2:1){var W=m[D],M=n?m[D-1]:void 0,P={},x={kind:["field","accessor","method","getter","setter","class"][i],name:r,metadata:s,addInitializer:function(t,e){if(t.v)throw new Error("attempted to call addInitializer after decoration was finished");w(e,"An initializer","be",!0),a.push(e)}.bind(null,P)};if(y)o=W.call(M,T,x),P.v=1,w(o,"class decorators","return")&&(T=o);else if(x.static=l,x.private=u,o=x.access={has:u?d.bind():function(t){return r in t}},E||(o.get=u?C?function(t){return f(t),j.value}:S("get",0,f):function(t){return t[r]}),C||A||(o.set=u?S("set",0,f):function(t,e){t[r]=e}),T=W.call(M,k?{get:j.get,set:j.set}:j[N],x),P.v=1,k){if("object"==typeof T&&T)(o=w(T.get,"accessor.get"))&&(j.get=o),(o=w(T.set,"accessor.set"))&&(j.set=o),(o=w(T.init,"accessor.init"))&&O.unshift(o);else if(void 0!==T)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else w(T,(h?"field":"method")+" decorators","return")&&(h?O.unshift(T):j[N]=T)}return i<2&&c.push(b(O,l,1),b(a,l,0)),h||y||(u?k?c.splice(-1,0,S("get",l),S("set",l)):c.push(C?j[N]:w.call.bind(j[N])):p(t,r,j)),T}function k(t){return p(t,f,{configurable:!0,enumerable:!0,value:s})}return void 0!==a&&(s=a[f]),s=m(null==s?null:s),u=[],h=function(t){t&&u.push(b(t))},(d=function(e,r){for(var a=0;a<n.length;a++){var s=n[a],o=s[1],h=7&o;if((8&o)==e&&!h==r){var d=s[2],f=!!s[3],p=16&o;y(e?t:t.prototype,s,p,f?"#"+d:(0,Q.A)(d),h,h<2?[]:e?l=l||[]:c=c||[],u,!!e,f,r,e&&f?function(e){return(0,X.A)(e)===t}:i)}}})(8,0),d(0,0),d(8,1),d(0,1),h(c),h(l),o=u,g||k(t),{e:o,get c(){var n=[];return g&&[k(t=y(t,[e],0,t.name,5,n)),b(n,1)]}}}(q,[lt("data-view.app-wall",{styleTexts:[et.A,nt.A],dependencies:["data-view.app-wall-card-item","data-view.cabinet-thumbnail","data-view.simple-card-item"]})],[[ut({attribute:!1}),1,"dataSource"],[ut({attribute:!1}),1,"relations"],[ut({attribute:!1}),1,"useDblclick"],[ut({attribute:!1}),1,"useDistanceConfig"],[ut({attribute:!1}),1,"disabledDefaultClickEvent"],[ut({attribute:!1}),1,"cardSize"],[ut({attribute:!1}),1,"cardBrickName"],[ut(),1,"containerId"],[ut({type:Boolean}),1,"noRotate"],[ut({type:Number}),1,"boundMargin"],[ht({type:"system.card.button.click"}),1,"systemCardButtonClickEvent",t=>st(At,t),(t,e)=>at(At,t,e)],[ht({type:"left.btn.click"}),1,"onLeftClickEvent",t=>st(St,t),(t,e)=>at(St,t,e)],[ht({type:"right.btn.click"}),1,"onRightClickEvent",t=>st(jt,t),(t,e)=>at(jt,t,e)],[ht({type:"on.card.dbclick"}),1,"onDbClickEvent",t=>st(Ot,t),(t,e)=>at(Ot,t,e)],[ht({type:"card.click"}),1,"onClickEvent",t=>st(Nt,t),(t,e)=>at(Nt,t,e)]],0,(t=>Ct.has((0,X.A)(t))),tt.ReactNextElement)),r()},6041:(t,e,n)=>{n.r(e),n.d(e,{AppWallRelationLine:()=>y});var r,i,a,s,o=n(918),c=n(1369),l=n(8449),u=n(6902),h=n(8769),d=n.n(h),f=n(9929),p=n(9938),m=n(9935),v=n(2415),g=n(3373),b=n.n(g);function w(t,e,n){if("function"==typeof t?t===e:t.has(e))return arguments.length<3?e:n;throw new TypeError("Private element is not present on this object")}var y,{defineElement:k,property:A}=(0,f.createDecorators)(),E=new WeakMap;class C extends p.ReactNextElement{constructor(){super(...arguments),(0,o.A)(this,E,i(this,"blue")),a(this)}get lightColor(){return this,(t=E).get(w(t,this));var t}set lightColor(t){var e,n;n=t,(e=E).set(w(e,this),n)}render(){return d().createElement(S,{lightColor:this.lightColor})}}function S(t){var{lightColor:e}=t;return d().createElement("div",{className:b()("relation-line",e&&"light-color-".concat(e))})}s=C,({e:[i,a],c:[y,r]}=function(t,e,n,r,i,a){var s,o,h,d,f,p,m,v=Symbol.metadata||Symbol.for("Symbol.metadata"),g=Object.defineProperty,b=Object.create,w=[b(null),b(null)],y=e.length;function k(e,n,r){return function(i,a){n&&(a=i,i=t);for(var s=0;s<e.length;s++)a=e[s].apply(i,r?[a]:[]);return r?a:i}}function A(t,e,n,r){if("function"!=typeof t&&(r||void 0!==t))throw new TypeError(e+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return t}function E(t,e,n,r,i,a,c,u,h,d,f){function p(t){if(!f(t))throw new TypeError("Attempted to access private element on non-instance")}var m=[].concat(e[0]),v=e[3],b=!c,y=1===i,E=3===i,C=4===i,S=2===i;function j(e,n,r){return function(i,a){return n&&(a=i,i=t),r&&r(i),O[e].call(i,a)}}if(!b){var O={},N=[],T=E?"get":C||y?"set":"value";if(h?(d||y?O={get:(0,l.A)((function(){return v(this)}),r,"get"),set:function(t){e[4](this,t)}}:O[T]=v,d||(0,l.A)(O[T],r,S?"":T)):d||(O=Object.getOwnPropertyDescriptor(t,r)),!d&&!h){if((o=w[+u][r])&&7!=(o^i))throw new Error("Decorating two elements with the same name ("+O[T].name+") is not supported yet");w[+u][r]=i<3?1:i}}for(var D=t,W=m.length-1;W>=0;W-=n?2:1){var M=m[W],P=n?m[W-1]:void 0,x={},z={kind:["field","accessor","method","getter","setter","class"][i],name:r,metadata:s,addInitializer:function(t,e){if(t.v)throw new Error("attempted to call addInitializer after decoration was finished");A(e,"An initializer","be",!0),a.push(e)}.bind(null,x)};if(b)o=M.call(P,D,z),x.v=1,A(o,"class decorators","return")&&(D=o);else if(z.static=u,z.private=h,o=z.access={has:h?f.bind():function(t){return r in t}},C||(o.get=h?S?function(t){return p(t),O.value}:j("get",0,p):function(t){return t[r]}),S||E||(o.set=h?j("set",0,p):function(t,e){t[r]=e}),D=M.call(P,y?{get:O.get,set:O.set}:O[T],z),x.v=1,y){if("object"==typeof D&&D)(o=A(D.get,"accessor.get"))&&(O.get=o),(o=A(D.set,"accessor.set"))&&(O.set=o),(o=A(D.init,"accessor.init"))&&N.unshift(o);else if(void 0!==D)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else A(D,(d?"field":"method")+" decorators","return")&&(d?N.unshift(D):O[T]=D)}return i<2&&c.push(k(N,u,1),k(a,u,0)),d||b||(h?y?c.splice(-1,0,j("get",u),j("set",u)):c.push(S?O[T]:A.call.bind(O[T])):g(t,r,O)),D}function C(t){return g(t,v,{configurable:!0,enumerable:!0,value:s})}return void 0!==a&&(s=a[v]),s=b(null==s?null:s),f=[],p=function(t){t&&f.push(k(t))},(m=function(e,r){for(var i=0;i<n.length;i++){var a=n[i],s=a[1],o=7&s;if((8&s)==e&&!o==r){var l=a[2],p=!!a[3],m=16&s;E(e?t:t.prototype,a,m,p?"#"+l:(0,c.A)(l),o,o<2?[]:e?d=d||[]:h=h||[],f,!!e,p,r,e&&p?function(e){return(0,u.A)(e)===t}:undefined)}}})(8,0),m(0,0),m(8,1),m(0,1),p(h),p(d),o=f,y||C(t),{e:o,get c(){var n=[];return y&&[C(t=E(t,[e],0,t.name,5,n)),k(n,1)]}}}(s,[k("data-view.app-wall-relation-line",{styleTexts:[m.A,v.A]})],[[A(),1,"lightColor"]],0,0,p.ReactNextElement)),r()},4392:(t,e,n)=>{n.r(e),n.d(e,{SystemCard:()=>x,SystemCardComponent:()=>J});var r,i,a,s,o,c,l,u,h,d,f,p,m,v,g,b,w=n(4586),y=n(4635),k=n(918),A=n(1369),E=n(8449),C=n(6902),S=n(8769),j=n.n(S),O=n(9938),N=n(9929),T=n(8387),D=n(9935);function W(t,e,n){return t.set(P(t,e),n),n}function M(t,e){return t.get(P(t,e))}function P(t,e,n){if("function"==typeof t?t===e:t.has(e))return arguments.length<3?e:n;throw new TypeError("Private element is not present on this object")}var x,{defineElement:z,property:R,event:I}=(0,N.createDecorators)(),B=(0,O.wrapBrick)("eo-icon"),L=new WeakMap,_=new WeakMap,H=new WeakMap,K=new WeakMap,V=new WeakMap,q=new WeakMap,F=new WeakSet;class G extends O.ReactNextElement{constructor(){super(...arguments),(0,y.A)(this,F),(0,k.A)(this,L,i(this,"normal")),(0,k.A)(this,_,(a(this),s(this))),(0,k.A)(this,H,(o(this),c(this))),(0,k.A)(this,K,(l(this),u(this))),(0,k.A)(this,V,(h(this),d(this))),(0,k.A)(this,q,(f(this),p(this))),(0,w.A)(this,"handleClick",(g(this),()=>{var t,e;(t=F,this,e=m,e(P(t,this))).emit()}))}get status(){return M(L,this)}set status(t){W(L,this,t)}get cardTitle(){return M(_,this)}set cardTitle(t){W(_,this,t)}get itemList(){return M(H,this)}set itemList(t){W(H,this,t)}get buttonName(){return M(K,this)}set buttonName(t){W(K,this,t)}get containerStyle(){return M(V,this)}set containerStyle(t){W(V,this,t)}render(){return j().createElement(J,{buttonName:this.buttonName,status:this.status,cardTitle:this.cardTitle,itemList:this.itemList,handleClick:this.handleClick,containerStyle:this.containerStyle})}}function J(t){var{itemList:e,cardTitle:n,buttonName:r,handleClick:i,containerStyle:a}=t,s=(0,S.useRef)();return(0,S.useEffect)((()=>{var t,e;null===(t=s.current)||void 0===t||null===(e=t.scrollTo)||void 0===e||e.call(t,0,0)}),[e]),j().createElement("div",{className:"wrapper",style:a},j().createElement("div",{className:"cardName",title:n},n),(null==e?void 0:e.length)&&j().createElement("div",{className:"descriptions",ref:s},e.map(((t,e)=>j().createElement("div",{key:e,className:"descriptionsItem"},j().createElement("div",{className:"itemKey"},t.key),j().createElement("div",{className:"itemValue"},t.value))))),r&&j().createElement("div",{className:"buttonContent",onClick:i},j().createElement(B,{lib:"antd",icon:"fall",theme:"outlined"}),j().createElement("span",{className:"buttonName"},r)))}b=G,({e:[i,a,s,o,c,l,u,h,d,f,p,m,v,g],c:[x,r]}=function(t,e,n,r,i,a){var s,o,c,l,u,h,d,f=Symbol.metadata||Symbol.for("Symbol.metadata"),p=Object.defineProperty,m=Object.create,v=[m(null),m(null)],g=e.length;function b(e,n,r){return function(i,a){n&&(a=i,i=t);for(var s=0;s<e.length;s++)a=e[s].apply(i,r?[a]:[]);return r?a:i}}function w(t,e,n,r){if("function"!=typeof t&&(r||void 0!==t))throw new TypeError(e+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return t}function y(t,e,n,r,i,a,c,l,u,h,d){function f(t){if(!d(t))throw new TypeError("Attempted to access private element on non-instance")}var m=[].concat(e[0]),g=e[3],y=!c,k=1===i,A=3===i,C=4===i,S=2===i;function j(e,n,r){return function(i,a){return n&&(a=i,i=t),r&&r(i),O[e].call(i,a)}}if(!y){var O={},N=[],T=A?"get":C||k?"set":"value";if(u?(h||k?O={get:(0,E.A)((function(){return g(this)}),r,"get"),set:function(t){e[4](this,t)}}:O[T]=g,h||(0,E.A)(O[T],r,S?"":T)):h||(O=Object.getOwnPropertyDescriptor(t,r)),!h&&!u){if((o=v[+l][r])&&7!=(o^i))throw new Error("Decorating two elements with the same name ("+O[T].name+") is not supported yet");v[+l][r]=i<3?1:i}}for(var D=t,W=m.length-1;W>=0;W-=n?2:1){var M=m[W],P=n?m[W-1]:void 0,x={},z={kind:["field","accessor","method","getter","setter","class"][i],name:r,metadata:s,addInitializer:function(t,e){if(t.v)throw new Error("attempted to call addInitializer after decoration was finished");w(e,"An initializer","be",!0),a.push(e)}.bind(null,x)};if(y)o=M.call(P,D,z),x.v=1,w(o,"class decorators","return")&&(D=o);else if(z.static=l,z.private=u,o=z.access={has:u?d.bind():function(t){return r in t}},C||(o.get=u?S?function(t){return f(t),O.value}:j("get",0,f):function(t){return t[r]}),S||A||(o.set=u?j("set",0,f):function(t,e){t[r]=e}),D=M.call(P,k?{get:O.get,set:O.set}:O[T],z),x.v=1,k){if("object"==typeof D&&D)(o=w(D.get,"accessor.get"))&&(O.get=o),(o=w(D.set,"accessor.set"))&&(O.set=o),(o=w(D.init,"accessor.init"))&&N.unshift(o);else if(void 0!==D)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else w(D,(h?"field":"method")+" decorators","return")&&(h?N.unshift(D):O[T]=D)}return i<2&&c.push(b(N,l,1),b(a,l,0)),h||y||(u?k?c.splice(-1,0,j("get",l),j("set",l)):c.push(S?O[T]:w.call.bind(O[T])):p(t,r,O)),D}function k(t){return p(t,f,{configurable:!0,enumerable:!0,value:s})}return void 0!==a&&(s=a[f]),s=m(null==s?null:s),u=[],h=function(t){t&&u.push(b(t))},(d=function(e,r){for(var a=0;a<n.length;a++){var s=n[a],o=s[1],h=7&o;if((8&o)==e&&!h==r){var d=s[2],f=!!s[3],p=16&o;y(e?t:t.prototype,s,p,f?"#"+d:(0,A.A)(d),h,h<2?[]:e?l=l||[]:c=c||[],u,!!e,f,r,e&&f?function(e){return(0,C.A)(e)===t}:i)}}})(8,0),d(0,0),d(8,1),d(0,1),h(c),h(l),o=u,g||k(t),{e:o,get c(){var n=[];return g&&[k(t=y(t,[e],0,t.name,5,n)),b(n,1)]}}}(b,[z("data-view.app-wall-system-card",{styleTexts:[D.A,T.A]})],[[R({attribute:!1}),1,"status"],[R(),1,"cardTitle"],[R({attribute:!1}),1,"itemList"],[R(),1,"buttonName"],[R({attribute:!1}),1,"containerStyle"],[I({type:"button-click"}),1,"onClickEvent",t=>M(q,t),(t,e)=>W(q,t,e)]],0,(t=>F.has((0,C.A)(t))),O.ReactNextElement)),r()},935:t=>{t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",r=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),r&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),r&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,r,i,a){"string"==typeof t&&(t=[[null,t,void 0]]);var s={};if(r)for(var o=0;o<this.length;o++){var c=this[o][0];null!=c&&(s[c]=!0)}for(var l=0;l<t.length;l++){var u=[].concat(t[l]);r&&s[u[0]]||(void 0!==a&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=a),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),i&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=i):u[4]="".concat(i)),e.push(u))}},e}},6758:t=>{t.exports=function(t){return t[1]}},6902:(t,e,n)=>{n.d(e,{A:()=>i});var r=n(7545);function i(t){if(Object(t)!==t)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==t?(0,r.A)(t):"null"));return t}},2016:(t,e,n)=>{function r(t,e){if(e.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(e,{A:()=>r})},918:(t,e,n)=>{n.d(e,{A:()=>i});var r=n(2016);function i(t,e,n){(0,r.A)(t,e),e.set(t,n)}},4586:(t,e,n)=>{n.d(e,{A:()=>i});var r=n(1369);function i(t,e,n){return(e=(0,r.A)(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}},9740:(t,e,n)=>{n.d(e,{A:()=>a});var r=n(4586);function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function a(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?i(Object(n),!0).forEach((function(e){(0,r.A)(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}},8449:(t,e,n)=>{n.d(e,{A:()=>i});var r=n(7545);function i(t,e,n){"symbol"==(0,r.A)(e)&&(e=(e=e.description)?"["+e+"]":"");try{Object.defineProperty(t,"name",{configurable:!0,value:n?n+" "+e:e})}catch(t){}return t}},1369:(t,e,n)=>{n.d(e,{A:()=>i});var r=n(7545);function i(t){var e=function(t,e){if("object"!=(0,r.A)(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var i=n.call(t,"string");if("object"!=(0,r.A)(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==(0,r.A)(e)?e:String(e)}},7545:(t,e,n)=>{function r(t){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}n.d(e,{A:()=>r})}}]);
2
- //# sourceMappingURL=app-wall.8397c9c3.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/app-wall.8397c9c3.js","mappings":"+hBAOA,IAAuDA,GAAjD,cAAEC,EAAa,SAAEC,IAAaC,EAAAA,EAAAA,oBAAmBC,EAAA,IAAAC,QAAAC,EAAA,IAAAD,QAAAE,EAAA,IAAAF,QAYvD,MAAAG,UAG8BC,EAAAA,iBAAiDC,WAAAA,GAAA,SAAAC,YAC7EC,EAAAA,EAAAA,GAAA,KAAAR,EAAAS,EAAA,KAIwC,YAExCD,EAAAA,EAAAA,GAAA,KAAAN,GAAAQ,EAAA,MAAAC,EAAA,SAMAH,EAAAA,EAAAA,GAAA,KAAAL,GAAAS,EAAA,MAAAC,EAAA,QAAAC,EAAA,gBARSC,GAAM,OAAAC,EAAAhB,EAAA,gBAANe,CAAME,GAAAC,EAAAlB,EAAA,KAAAiB,EAAA,cAMNE,GAAS,OAAAH,EAAAd,EAAA,mBAATiB,CAASF,GAAAC,EAAAhB,EAAA,KAAAe,EAAA,gBAMTG,GAAW,OAAAJ,EAAAb,EAAA,qBAAXiB,CAAWH,GAAAC,EAAAf,EAAA,KAAAc,EAAA,CAEpBI,MAAAA,GACE,OACEC,IAAAA,cAACC,EAAsB,CACrBR,OAAQS,KAAKT,OACbI,UAAWK,KAAKL,UAChBC,YAAaI,KAAKJ,aAGxB,EAGF,SAASG,EACPE,GAEA,IAAM,OAAEV,EAAM,UAAEI,EAAS,YAAEC,GAAgBK,EAE3C,OACEH,IAAAA,cAAA,OACEI,UAAWC,IACT,sBACAZ,GAAU,UAAJa,OAAcb,KAGtBO,IAAAA,cAAA,OAAKI,UAAU,aACbJ,IAAAA,cAAA,OAAKI,UAAU,4BACbJ,IAAAA,cAAA,OAAKI,UAAU,mBAAmBP,GAClCG,IAAAA,cAAA,OAAKI,UAAU,yBAAyBN,KAKlD,CAtBCS,EAAAzB,IAAA0B,GAAArB,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,GAAAiB,GAAAnC,EAAAoC,I,qkFAZY,U,kGAAA,E,uBAYZC,CAAAJ,EAAA,CA/BAhC,EAAc,+BAAgC,CAC7CqC,WAAY,CAACC,EAAAA,EAAoBC,EAAAA,MACjC,EAKCtC,IAAU,aAMVA,IAAU,gBAMVA,IAAU,sBAhBiBO,EAAAA,mBAAgB2B,G,iiBCb9C,IAA8DK,IAAxD,cAAExC,GAAa,SAAEC,GAAQ,MAAEwC,KAAUvC,EAAAA,EAAAA,oBAAmBC,GAAA,IAAAC,QAAAC,GAAA,IAAAD,QAAAE,GAAA,IAAAF,QAAAsC,GAAA,IAAAtC,QAAAuC,GAAA,IAAAvC,QAAAwC,GAAA,IAAAxC,QAAAyC,GAAA,IAAAzC,QAAA0C,GAAA,IAAA1C,QAAA2C,GAAA,IAAA3C,QAAA4C,GAAA,IAAA5C,QAAA6C,GAAA,IAAA7C,QAAA8C,GAAA,IAAAC,QAAAC,GAAA,IAAAhD,QAAAiD,GAAA,IAAAjD,QAAAkD,GAAA,IAAAlD,QAAAmD,GAAA,IAAAnD,QAAAoD,GAAA,IAAApD,QAyB9D,MAAAqD,WAQsBjD,GAAAA,iBAAyCC,WAAAA,GAAA,SAAAC,YAAAgD,EAAAA,EAAAA,GAAA,KAAAR,KAC7DvC,EAAAA,EAAAA,GAAA,KAAAR,GAAAwD,EAAA,QAQAhD,EAAAA,EAAAA,GAAA,KAAAN,IAAAuD,EAAA,MAAAC,EAAA,SAQAlD,EAAAA,EAAAA,GAAA,KAAAL,IAAAwD,EAAA,MAAAC,EAAA,SAQApD,EAAAA,EAAAA,GAAA,KAAA+B,IAAAsB,EAAA,MAAAC,EAAA,SAQAtD,EAAAA,EAAAA,GAAA,KAAAgC,IAAAuB,EAAA,MAAAC,EAAA,SAQAxD,EAAAA,EAAAA,GAAA,KAAAiC,IAAAwB,EAAA,MAAAC,EAAA,KAM8B,CAC5BC,MAAO,IACPC,OAAQ,IACRC,WAAY,IACZC,YAAa,IACbC,QAAS,IACTC,SAAU,SAGZhE,EAAAA,EAAAA,GAAA,KAAAkC,IAAA+B,EAAA,MAAAC,EAAA,KAOE,mCAEFlE,EAAAA,EAAAA,GAAA,KAAAmC,IAAAgC,EAAA,MAAAC,EAAA,SAKApE,EAAAA,EAAAA,GAAA,KAAAoC,IAAAiC,EAAA,MAAAC,EAAA,SAMAtE,EAAAA,EAAAA,GAAA,KAAAqC,IAAAkC,EAAA,MAAAC,EAAA,KAI+B,QAE/BxE,EAAAA,EAAAA,GAAA,KAAAsC,IAAAmC,EAAA,MAAAC,EAAA,SAAA1E,EAAAA,EAAAA,GAAA,KAAAyC,IAAAkC,EAAA,MAMgCC,IAC9BC,GAAAtC,GAAAvB,KAAI8D,GAA6BC,KAAKH,EAAK,KAE7C5E,EAAAA,EAAAA,GAAA,KAAA0C,GAAAsC,EAAA,QAOAhF,EAAAA,EAAAA,GAAA,KAAA2C,IAAAsC,EAAA,MAAAC,EAAA,SAOAlF,EAAAA,EAAAA,GAAA,KAAA4C,IAAAuC,EAAA,MAAAC,EAAA,SAOApF,EAAAA,EAAAA,GAAA,KAAA6C,IAAAwC,EAAA,MAAAC,EAAA,SAAAC,EAAAA,EAAAA,GAAA,wBAAAC,EAAA,MAOmBZ,IACjBC,GAAAtC,GAAAvB,KAAIyE,GAAmBV,KAAKH,EAAK,KAClCW,EAAAA,EAAAA,GAAA,yBACmBX,IAClBC,GAAAtC,GAAAvB,KAAI0E,GAAoBX,KAAKH,EAAK,KACnCW,EAAAA,EAAAA,GAAA,0BACoBX,IACnBC,GAAAtC,GAAAvB,KAAI2E,GAAiBZ,KAAKH,EAAK,KAChCW,EAAAA,EAAAA,GAAA,wBACkBX,IACjBC,GAAAtC,GAAAvB,KAAI4E,GAAeb,KAAKH,EAAK,GAC9B,eA3HQiB,GAAU,OAAArF,GAAAhB,GAAA,oBAAVqG,CAAUpF,GAAAC,GAAAlB,GAAA,KAAAiB,EAAA,cAQVqF,GAAS,OAAAtF,GAAAd,GAAA,mBAAToG,CAASrF,GAAAC,GAAAhB,GAAA,KAAAe,EAAA,gBAQTsF,GAAW,OAAAvF,GAAAb,GAAA,qBAAXoG,CAAWtF,GAAAC,GAAAf,GAAA,KAAAc,EAAA,sBAQXuF,GAAiB,OAAAxF,GAAAuB,GAAA,2BAAjBiE,CAAiBvF,GAAAC,GAAAqB,GAAA,KAAAtB,EAAA,8BAQjBwF,GAAyB,OAAAzF,GAAAwB,GAAA,mCAAzBiE,CAAyBxF,GAAAC,GAAAsB,GAAA,KAAAvB,EAAA,aAQzByF,GAAQ,OAAA1F,GAAAyB,GAAA,kBAARiE,CAAQzF,GAAAC,GAAAuB,GAAA,KAAAxB,EAAA,kBAeR0F,GAAa,OAAA3F,GAAA0B,GAAA,uBAAbiE,CAAa1F,GAAAC,GAAAwB,GAAA,KAAAzB,EAAA,gBAOb2F,GAAW,OAAA5F,GAAA2B,GAAA,qBAAXiE,CAAW3F,GAAAC,GAAAyB,GAAA,KAAA1B,EAAA,aAKX4F,GAAQ,OAAA7F,GAAA4B,GAAA,kBAARiE,CAAQ5F,GAAAC,GAAA0B,GAAA,KAAA3B,EAAA,gBAMR6F,GAAW,OAAA9F,GAAA6B,GAAA,qBAAXiE,CAAW7F,GAAAC,GAAA2B,GAAA,KAAA5B,EAAA,CAoDpBI,MAAAA,GACE,OACEC,IAAAA,cAACyF,GAAAA,EAAc,CACbV,WAAY7E,KAAK6E,WACjBC,UAAW9E,KAAK8E,UAChBU,wBAAuBhG,GAAAiC,GAAEzB,MACzB+E,YAAa/E,KAAK+E,YAClBC,kBAAmBhF,KAAKgF,kBACxBS,eAAgBzF,KAAK0F,gBACrBC,gBAAiB3F,KAAK4F,iBACtBC,kBAAmB7F,KAAK6F,kBACxBZ,0BAA2BjF,KAAKiF,0BAChCa,gBAAiB9F,KAAK8F,gBACtBZ,SAAUlF,KAAKkF,SACfC,cAAenF,KAAKmF,cACpBC,YAAapF,KAAKoF,YAClBC,SAAUrF,KAAKqF,SACfC,YAAatF,KAAKsF,aAGxB,EACDS,EAAAjE,KAAAxB,GAAA0B,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAO,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAI,EAAAkC,EAAArC,EAAAK,EAAAS,EAAAwB,EAAAhC,EAAAC,EAAAQ,EAAAwB,EAAA/B,EAAAC,EAAAO,EAAAwB,EAAA9B,EAAAC,EAAAM,EAAAwB,EAAA5B,GAAAjE,GAAAM,GAAAL,I,yqFArC+B,E,uBAqC/BC,CAAAsF,EAAA,CAjKA1H,GAAc,qBAAsB,CACnCqC,WAAY,CAACC,GAAAA,EAAoBC,GAAAA,GACjCyF,aAAc,CACZ,+BACA,8BACA,iCAEF,EAKC/H,GAAS,CACRgI,WAAW,IACX,iBAMDhI,GAAS,CACRgI,WAAW,IACX,gBAMDhI,GAAS,CACRgI,WAAW,IACX,kBAMDhI,GAAS,CACRgI,WAAW,IACX,wBAMDhI,GAAS,CACRgI,WAAW,IACX,gCAMDhI,GAAS,CACRgI,WAAW,IACX,eAaDhI,GAAS,CACRgI,WAAW,IACX,oBAODhI,KAAU,kBAKVA,GAAS,CAAEiI,KAAMC,UAAU,eAM3BlI,GAAS,CAAEiI,KAAME,SAAS,kBAM1B3F,GAAM,CAAEyF,KAAM,6BAA6B,+BAAAG,GAAAlH,GAAA8B,GAAAoF,GAAA,CAAAA,EAAAjH,IAAAC,GAAA4B,GAAAoF,EAAAjH,IAAA,CAU3CqB,GAAM,CAAEyF,KAAM,mBAAmB,qBAAAG,GAAAlH,GAAAkC,GAAAgF,GAAA,CAAAA,EAAAjH,IAAAC,GAAAgC,GAAAgF,EAAAjH,IAAA,CAOjCqB,GAAM,CAAEyF,KAAM,oBAAoB,sBAAAG,GAAAlH,GAAAmC,GAAA+E,GAAA,CAAAA,EAAAjH,IAAAC,GAAAiC,GAAA+E,EAAAjH,IAAA,CAOlCqB,GAAM,CAAEyF,KAAM,oBAAoB,mBAAAG,GAAAlH,GAAAoC,GAAA8E,GAAA,CAAAA,EAAAjH,IAAAC,GAAAkC,GAAA8E,EAAAjH,IAAA,CAOlCqB,GAAM,CAAEyF,KAAM,eAAe,iBAAAG,GAAAlH,GAAAqC,GAAA6E,GAAA,CAAAA,EAAAjH,IAAAC,GAAAmC,GAAA6E,EAAAjH,KAAA,GAAAkH,GAAAlF,GAAAmF,KAAAC,EAAAA,EAAAA,GAAAF,KApHV9H,GAAAA,mBAAgB2B,G,wVCnCtC,IAAuDsG,GAAjD,cAAEzI,EAAa,SAAEC,IAAaC,EAAAA,EAAAA,oBAAmBC,EAAA,IAAAC,QAUvD,MAAAsI,UAIUlI,EAAAA,iBAEVC,WAAAA,GAAA,SAAAC,YACEC,EAAAA,EAAAA,GAAA,KAAAR,EAAAwI,EAAA,KAOyC,SAAMC,EAAA,oBAAtCC,GAAU,a,EAAA1I,G,QAAA,O,KAAA,eAAV0I,CAAUzH,G,UAAAA,G,EAAAjB,G,QAAA,M,EAAA,CAEnBqB,MAAAA,GACE,OAAOC,IAAAA,cAACqH,EAA0B,CAACD,WAAYlH,KAAKkH,YACtD,EAGF,SAASC,EACPlH,GAEA,IAAM,WAAEiH,GAAejH,EAEvB,OACEH,IAAAA,cAAA,OACEI,UAAWC,IACT,gBACA+G,GAAc,eAAJ9G,OAAmB8G,KAIrC,CAfCE,EAAAL,IAAAzG,GAAA0G,EAAAC,GAAA1G,GAAAuG,EAAAtG,I,qkFANY,U,kGAAA,E,uBAMZC,CAAA2G,EAAA,CAnBA/I,EAAc,mCAAoC,CACjDqC,WAAY,CAACC,EAAAA,EAAoBC,EAAAA,MACjC,EAWCtC,IAAU,qBATHO,EAAAA,mBAAgB2B,G,kdCX1B,IACwE6G,GADlE,cAAEhJ,EAAa,SAAEC,EAAQ,MAAEwC,IAAUvC,EAAAA,EAAAA,oBACrC+I,GAAcC,EAAAA,EAAAA,WAAyC,WAAW/I,EAAA,IAAAC,QAAAC,EAAA,IAAAD,QAAAE,EAAA,IAAAF,QAAAsC,EAAA,IAAAtC,QAAAuC,EAAA,IAAAvC,QAAAwC,EAAA,IAAAxC,QAAA+I,EAAA,IAAAhG,QAmBxE,MAAAiG,UAGyB5I,EAAAA,iBAA4CC,WAAAA,GAAA,SAAAC,YAAAgD,EAAAA,EAAAA,GAAA,KAAAyF,IACnExI,EAAAA,EAAAA,GAAA,KAAAR,EAAAS,EAAA,KAS8B,YAE9BD,EAAAA,EAAAA,GAAA,KAAAN,GAAAQ,EAAA,MAAAC,EAAA,SAWAH,EAAAA,EAAAA,GAAA,KAAAL,GAAAS,EAAA,MAAAsI,EAAA,SAWA1I,EAAAA,EAAAA,GAAA,KAAA+B,GAAA4G,EAAA,MAAAC,EAAA,SAWA5I,EAAAA,EAAAA,GAAA,KAAAgC,GAAA6G,EAAA,MAAAC,EAAA,SAWA9I,EAAAA,EAAAA,GAAA,KAAAiC,GAAA8G,EAAA,MAAAzD,EAAA,SAAAC,EAAAA,EAAAA,GAAA,oBAAAC,EAAA,MAOc,K,WACZgD,EAAAxH,K,EAAI4E,E,MAAJ5E,QAAmB+D,MAAM,GAC1B,WAvDQxE,GAAM,OAAAC,EAAAhB,EAAA,gBAANe,CAAME,GAAAC,EAAAlB,EAAA,KAAAiB,EAAA,cAWNE,GAAS,OAAAH,EAAAd,EAAA,mBAATiB,CAASF,GAAAC,EAAAhB,EAAA,KAAAe,EAAA,aAWTuI,GAAQ,OAAAxI,EAAAb,EAAA,kBAARqJ,CAAQvI,GAAAC,EAAAf,EAAA,KAAAc,EAAA,eAWRwI,GAAU,OAAAzI,EAAAuB,EAAA,oBAAVkH,CAAUxI,GAAAC,EAAAqB,EAAA,KAAAtB,EAAA,mBAWVyI,GAAc,OAAA1I,EAAAwB,EAAA,wBAAdkH,CAAczI,GAAAC,EAAAsB,EAAA,KAAAvB,EAAA,CAavBI,MAAAA,GACE,OACEC,IAAAA,cAACqI,EAAmB,CAClBF,WAAYjI,KAAKiI,WACjB1I,OAAQS,KAAKT,OACbI,UAAWK,KAAKL,UAChBqI,SAAUhI,KAAKgI,SACfI,YAAapI,KAAKoI,YAClBF,eAAgBlI,KAAKkI,gBAG3B,EAGK,SAASC,EACdlI,GAEA,IAAM,SAEJ+H,EAAQ,UACRrI,EAAS,WACTsI,EAAU,YACVG,EAAW,eACXF,GACEjI,EACEoI,GAAiBC,EAAAA,EAAAA,UAMvB,OAJAC,EAAAA,EAAAA,YAAU,KAAM,IAAAC,EAAAC,EACQ,QAAtBD,EAAAH,EAAeK,eAAO,IAAAF,GAAU,QAAVC,EAAtBD,EAAwBG,gBAAQ,IAAAF,GAAhCA,EAAAG,KAAAJ,EAAmC,EAAG,EAAE,GACvC,CAACR,IAGFlI,IAAAA,cAAA,OAAKI,UAAU,UAAU2I,MAAOX,GAC9BpI,IAAAA,cAAA,OAAKI,UAAU,WAAW4I,MAAOnJ,GAC9BA,IAEFqI,aAAQ,EAARA,EAAUe,SACTjJ,IAAAA,cAAA,OAAKI,UAAU,eAAe8I,IAAKX,GAChCL,EAASiB,KAAI,CAACC,EAAMC,IACnBrJ,IAAAA,cAAA,OAAKsJ,IAAKD,EAAOjJ,UAAU,oBACzBJ,IAAAA,cAAA,OAAKI,UAAU,WAAWgJ,EAAKE,KAC/BtJ,IAAAA,cAAA,OAAKI,UAAU,aAAagJ,EAAKG,WAKxCpB,GACCnI,IAAAA,cAAA,OAAKI,UAAU,gBAAgBoJ,QAASlB,GACtCtI,IAAAA,cAACwH,EAAW,CAACiC,IAAI,OAAOC,KAAK,OAAOC,MAAM,aAC1C3J,IAAAA,cAAA,QAAMI,UAAU,cAAc+H,IAKxC,CA1CCyB,EAAAjC,IAAAnH,GAAArB,EAAAC,EAAAC,EAAAC,EAAAsI,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAzD,EAAAM,EAAAwB,EAAA5B,GAAAjE,GAAA8G,EAAA7G,I,yqFAnBiC,E,uBAmBjCC,CAAAiJ,EAAA,CAlFArL,EAAc,iCAAkC,CAC/CqC,WAAY,CAACC,EAAAA,EAAoBC,EAAAA,MACjC,EAUCtC,EAAS,CAAEgI,WAAW,IAAQ,aAW9BhI,IAAU,gBAWVA,EAAS,CAAEgI,WAAW,IAAQ,eAW9BhI,IAAU,iBAWVA,EAAS,CAAEgI,WAAW,IAAQ,qBAO9BxF,EAAM,CAAEyF,KAAM,iBAAiB,iBAAAG,GAAAlH,EAAAyB,EAAAyF,GAAA,CAAAA,EAAAjH,IAAAC,EAAAuB,EAAAyF,EAAAjH,KAAA,GAAAkH,GAAAa,EAAAZ,KAAAC,EAAAA,EAAAA,GAAAF,KA5DT9H,EAAAA,mBAAgB2B,G,UC3BzCmJ,EAAOC,QAAU,SAAUC,GACzB,IAAIC,EAAO,GA4EX,OAzEAA,EAAKC,SAAW,WACd,OAAO/J,KAAKiJ,KAAI,SAAUC,GACxB,IAAIc,EAAU,GACVC,OAA+B,IAAZf,EAAK,GAoB5B,OAnBIA,EAAK,KACPc,GAAW,cAAc5J,OAAO8I,EAAK,GAAI,QAEvCA,EAAK,KACPc,GAAW,UAAU5J,OAAO8I,EAAK,GAAI,OAEnCe,IACFD,GAAW,SAAS5J,OAAO8I,EAAK,GAAGH,OAAS,EAAI,IAAI3I,OAAO8I,EAAK,IAAM,GAAI,OAE5Ec,GAAWH,EAAuBX,GAC9Be,IACFD,GAAW,KAETd,EAAK,KACPc,GAAW,KAETd,EAAK,KACPc,GAAW,KAENA,CACT,IAAGE,KAAK,GACV,EAGAJ,EAAKK,EAAI,SAAWC,EAASC,EAAOC,EAAQC,EAAUC,GAC7B,iBAAZJ,IACTA,EAAU,CAAC,CAAC,KAAMA,OAASK,KAE7B,IAAIC,EAAyB,CAAC,EAC9B,GAAIJ,EACF,IAAK,IAAIK,EAAI,EAAGA,EAAI3K,KAAK+I,OAAQ4B,IAAK,CACpC,IAAIC,EAAK5K,KAAK2K,GAAG,GACP,MAANC,IACFF,EAAuBE,IAAM,EAEjC,CAEF,IAAK,IAAIC,EAAK,EAAGA,EAAKT,EAAQrB,OAAQ8B,IAAM,CAC1C,IAAI3B,EAAO,GAAG9I,OAAOgK,EAAQS,IACzBP,GAAUI,EAAuBxB,EAAK,WAGrB,IAAVsB,SACc,IAAZtB,EAAK,KAGdA,EAAK,GAAK,SAAS9I,OAAO8I,EAAK,GAAGH,OAAS,EAAI,IAAI3I,OAAO8I,EAAK,IAAM,GAAI,MAAM9I,OAAO8I,EAAK,GAAI,MAF/FA,EAAK,GAAKsB,GAMVH,IACGnB,EAAK,IAGRA,EAAK,GAAK,UAAU9I,OAAO8I,EAAK,GAAI,MAAM9I,OAAO8I,EAAK,GAAI,KAC1DA,EAAK,GAAKmB,GAHVnB,EAAK,GAAKmB,GAMVE,IACGrB,EAAK,IAGRA,EAAK,GAAK,cAAc9I,OAAO8I,EAAK,GAAI,OAAO9I,OAAO8I,EAAK,GAAI,KAC/DA,EAAK,GAAKqB,GAHVrB,EAAK,GAAK,GAAG9I,OAAOmK,IAMxBT,EAAKgB,KAAK5B,GACZ,CACF,EACOY,CACT,C,WClFAH,EAAOC,QAAU,SAAUO,GACzB,OAAOA,EAAE,EACX,C,gDCHe,SAAStD,EAAYvG,GAClC,GAAIyK,OAAOzK,KAAOA,EAAG,MAAM0K,UAAU,qDAAuD,OAAS1K,GAAI,OAAQA,GAAK,SACtH,OAAOA,CACT,C,iBCJe,SAAS2K,EAA2BC,EAAKC,GACtD,GAAIA,EAAkBvE,IAAIsE,GACxB,MAAM,IAAIF,UAAU,iEAExB,C,+DCHe,SAAShM,EAA2BkM,EAAKE,EAAY/B,IAClE,OAA0B6B,EAAKE,GAC/BA,EAAWC,IAAIH,EAAK7B,EACtB,C,gDCHe,SAAS9E,EAAgB2G,EAAK9B,EAAKC,GAYhD,OAXAD,GAAM,OAAcA,MACT8B,EACTH,OAAOO,eAAeJ,EAAK9B,EAAK,CAC9BC,MAAOA,EACPkC,YAAY,EACZC,cAAc,EACdC,UAAU,IAGZP,EAAI9B,GAAOC,EAEN6B,CACT,C,gDCbA,SAASQ,EAAQpL,EAAGqL,GAClB,IAAIC,EAAIb,OAAOc,KAAKvL,GACpB,GAAIyK,OAAOe,sBAAuB,CAChC,IAAIpF,EAAIqE,OAAOe,sBAAsBxL,GACrCqL,IAAMjF,EAAIA,EAAEqF,QAAO,SAAUJ,GAC3B,OAAOZ,OAAOiB,yBAAyB1L,EAAGqL,GAAGJ,UAC/C,KAAKK,EAAEd,KAAKmB,MAAML,EAAGlF,EACvB,CACA,OAAOkF,CACT,CACe,SAASM,EAAe5L,GACrC,IAAK,IAAIqL,EAAI,EAAGA,EAAI5M,UAAUgK,OAAQ4C,IAAK,CACzC,IAAIC,EAAI,MAAQ7M,UAAU4M,GAAK5M,UAAU4M,GAAK,CAAC,EAC/CA,EAAI,EAAID,EAAQX,OAAOa,IAAI,GAAIO,SAAQ,SAAUR,IAC/C,OAAerL,EAAGqL,EAAGC,EAAED,GACzB,IAAKZ,OAAOqB,0BAA4BrB,OAAOsB,iBAAiB/L,EAAGyK,OAAOqB,0BAA0BR,IAAMF,EAAQX,OAAOa,IAAIO,SAAQ,SAAUR,GAC7IZ,OAAOO,eAAehL,EAAGqL,EAAGZ,OAAOiB,yBAAyBJ,EAAGD,GACjE,GACF,CACA,OAAOrL,CACT,C,gDCpBe,SAASgM,EAAgBhM,EAAGsL,EAAGW,GAC5C,WAAY,OAAQX,KAAOA,GAAKA,EAAIA,EAAEhM,aAAe,IAAMgM,EAAI,IAAM,IACrE,IACEb,OAAOO,eAAehL,EAAG,OAAQ,CAC/BkL,cAAc,EACdnC,MAAOkD,EAAIA,EAAI,IAAMX,EAAIA,GAE7B,CAAE,MAAOtL,GAAI,CACb,OAAOA,CACT,C,gDCRe,SAASkM,EAAcZ,GACpC,IAAIzB,ECFS,SAAqByB,EAAGD,GACrC,GAAI,WAAY,OAAQC,KAAOA,EAAG,OAAOA,EACzC,IAAItL,EAAIsL,EAAEa,OAAOC,aACjB,QAAI,IAAWpM,EAAG,CAChB,IAAI6J,EAAI7J,EAAEsI,KAAKgD,EAAGD,UAClB,GAAI,WAAY,OAAQxB,GAAI,OAAOA,EACnC,MAAM,IAAIa,UAAU,+CACtB,CACA,OAAyB2B,OAAiBf,EAC5C,CDPUc,CAAYd,GACpB,MAAO,WAAY,OAAQzB,GAAKA,EAAIwC,OAAOxC,EAC7C,C,iBELe,SAASyC,EAAQlG,GAG9B,OAAOkG,EAAU,mBAAqBH,QAAU,iBAAmBA,OAAOI,SAAW,SAAUnG,GAC7F,cAAcA,CAChB,EAAI,SAAUA,GACZ,OAAOA,GAAK,mBAAqB+F,QAAU/F,EAAE5H,cAAgB2N,QAAU/F,IAAM+F,OAAOK,UAAY,gBAAkBpG,CACpH,EAAGkG,EAAQlG,EACb,C","sources":["webpack:///./src/app-wall/card-item/index.tsx","webpack:///./src/app-wall/index.tsx","webpack:///./src/app-wall/relation-line/index.tsx","webpack:///./src/app-wall/system-card/index.tsx","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/checkInRHS.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/setFunctionName.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.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 \"./card-item.shadow.css\";\nimport classNames from \"classnames\";\n\nconst { defineElement, property } = createDecorators();\n\nexport interface AppWallCardItemProps {\n status?: \"normal\" | \"warning\";\n cardTitle: string;\n description: string;\n}\n\n/**\n * 应用墙子构件----卡片项\n * @author nlicroshan\n */\n@defineElement(\"data-view.app-wall-card-item\", {\n styleTexts: [variablesStyleText, styleText],\n})\nclass AppWallCardItem extends ReactNextElement implements AppWallCardItemProps {\n /**\n * 状态\n */\n @property()\n accessor status: \"normal\" | \"warning\" = \"normal\";\n\n /**\n * 标题\n */\n @property()\n accessor cardTitle: string;\n\n /**\n * 描述\n */\n @property()\n accessor description: string;\n\n render() {\n return (\n <AppWallCardItemElement\n status={this.status}\n cardTitle={this.cardTitle}\n description={this.description}\n />\n );\n }\n}\n\nfunction AppWallCardItemElement(\n props: AppWallCardItemProps\n): React.ReactElement {\n const { status, cardTitle, description } = props;\n\n return (\n <div\n className={classNames(\n \"card-item-container\",\n status && `status-${status}`\n )}\n >\n <div className=\"card-item\">\n <div className=\"card-item-text-container\">\n <div className=\"card-item-title\">{cardTitle}</div>\n <div className=\"card-item-description\">{description}</div>\n </div>\n </div>\n </div>\n );\n}\n\nexport { AppWallCardItem };\n","import React from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport variablesStyleText from \"../data-view-variables.shadow.css\";\nimport styleText from \"./app-wall.shadow.css\";\nimport { AppWallElement } from \"./app-wall.js\";\nimport type { AppData, Relation } from \"./utils.js\";\nimport { AppWallCardBrickNameType, CardSize } from \"./interface.js\";\n\nconst { defineElement, property, event } = createDecorators();\n\nexport interface AppWallProps {\n cardSize: CardSize;\n dataSource: AppData[];\n relations: Relation[];\n useDblclick?: boolean;\n useDistanceConfig?: boolean;\n onSystemCardButtonClick?: (data: AppData) => void;\n leftBtnOnClick?: (data: AppData) => void;\n rightBtnOnClick?: (data: AppData) => void;\n handleCardDbClick?: (data: AppData) => void;\n disabledDefaultClickEvent?: boolean;\n handleCardClick?: (data: AppData) => void;\n cardBrickName: AppWallCardBrickNameType; // 支持更多种类,需要在dependencies内增加引入增加的类型\n containerId?: string;\n noRotate?: boolean;\n boundMargin?: number;\n}\n\n/**\n * 应用墙\n * @author nlicroshan\n * @category big-screen-layout\n */\n@defineElement(\"data-view.app-wall\", {\n styleTexts: [variablesStyleText, styleText],\n dependencies: [\n \"data-view.app-wall-card-item\",\n \"data-view.cabinet-thumbnail\",\n \"data-view.simple-card-item\",\n ],\n})\nclass AppWall extends ReactNextElement implements AppWallProps {\n /**\n * 数据\n */\n @property({\n attribute: false,\n })\n accessor dataSource: AppData[];\n\n /**\n * 关系\n */\n @property({\n attribute: false,\n })\n accessor relations: Relation[];\n\n /**\n * 是否使用双击事件,开启之后卡片不会触发内部dblclick事件展示梯台\n */\n @property({\n attribute: false,\n })\n accessor useDblclick: boolean;\n\n /**\n * 是否使用内置的distanceConfig配置\n */\n @property({\n attribute: false,\n })\n accessor useDistanceConfig: boolean;\n\n /**\n * 是否禁用触发默认单击事件,开启之后卡片不会触发内部click事件展示卡片,直接跑出了点击事件\n */\n @property({\n attribute: false,\n })\n accessor disabledDefaultClickEvent: boolean;\n\n /**\n * 卡的大小配置,注意这里卡片大小宽高将影响T台大小展示\n */\n @property({\n attribute: false,\n })\n accessor cardSize: CardSize = {\n width: 120,\n height: 160,\n outerWidth: 140,\n outerHeight: 180,\n lgWidth: 180,\n lgHeight: 240,\n };\n\n /**\n * 卡片支持的构件类型\n */\n @property({\n attribute: false,\n })\n accessor cardBrickName: AppWallCardBrickNameType =\n \"data-view.app-wall-card-item\";\n\n /**\n * 容器id,用于监听容器大小\n */\n @property()\n accessor containerId: string;\n /**\n * 控制是否旋转\n */\n @property({ type: Boolean })\n accessor noRotate: boolean;\n\n /**\n * 四周的边距\n */\n @property({ type: Number })\n accessor boundMargin: number = 100;\n\n /**\n * 详情卡片点击事件\n */\n @event({ type: \"system.card.button.click\" })\n accessor #systemCardButtonClickEvent!: EventEmitter<AppData>;\n\n #handleSystemCardButtonClick = (data: AppData): void => {\n this.#systemCardButtonClickEvent.emit(data);\n };\n /**\n * @detail\n * @description 展示台左边按钮点击\n */\n @event({ type: \"left.btn.click\" })\n accessor #onLeftClickEvent!: EventEmitter<AppData>;\n\n /**\n * @detail\n * @description 展示台左边按钮点击\n */\n @event({ type: \"right.btn.click\" })\n accessor #onRightClickEvent!: EventEmitter<AppData>;\n\n /**\n * @detail\n * @description 卡片双击事件,useDblclick:true 或者当前节点clusters属性无数据的时候也会触发\n */\n @event({ type: \"on.card.dbclick\" })\n accessor #onDbClickEvent!: EventEmitter<AppData>;\n\n /**\n * @detail\n * @description 卡片单击事件, disabledDefaultClickEvent:true 点击卡片触发\n */\n @event({ type: \"card.click\" })\n accessor #onClickEvent!: EventEmitter<AppData>;\n\n handleLeftClick = (data: AppData) => {\n this.#onLeftClickEvent.emit(data);\n };\n handleRightClick = (data: AppData) => {\n this.#onRightClickEvent.emit(data);\n };\n handleCardDbClick = (data: AppData) => {\n this.#onDbClickEvent.emit(data);\n };\n handleCardClick = (data: AppData) => {\n this.#onClickEvent.emit(data);\n };\n\n render() {\n return (\n <AppWallElement\n dataSource={this.dataSource}\n relations={this.relations}\n onSystemCardButtonClick={this.#handleSystemCardButtonClick}\n useDblclick={this.useDblclick}\n useDistanceConfig={this.useDistanceConfig}\n leftBtnOnClick={this.handleLeftClick}\n rightBtnOnClick={this.handleRightClick}\n handleCardDbClick={this.handleCardDbClick}\n disabledDefaultClickEvent={this.disabledDefaultClickEvent}\n handleCardClick={this.handleCardClick}\n cardSize={this.cardSize}\n cardBrickName={this.cardBrickName}\n containerId={this.containerId}\n noRotate={this.noRotate}\n boundMargin={this.boundMargin}\n />\n );\n }\n}\n\nexport { AppWall };\n","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 \"./relation-line.shadow.css\";\nimport classNames from \"classnames\";\n\nconst { defineElement, property } = createDecorators();\n\nexport interface AppWallRelationLineProps {\n lightColor: \"blue\" | \"purple\";\n}\n\n/**\n * 应用墙子构件----关联连线\n * @author nlicroshan\n */\n@defineElement(\"data-view.app-wall-relation-line\", {\n styleTexts: [variablesStyleText, styleText],\n})\nclass AppWallRelationLine\n extends ReactNextElement\n implements AppWallRelationLineProps\n{\n /**\n * @kind \"blue\" | \"purple\"\n * @required false\n * @default \"blue\"\n * @description 光线颜色\n */\n @property()\n accessor lightColor: \"blue\" | \"purple\" = \"blue\";\n\n render() {\n return <AppWallRelationLineElement lightColor={this.lightColor} />;\n }\n}\n\nfunction AppWallRelationLineElement(\n props: AppWallRelationLineProps\n): React.ReactElement {\n const { lightColor } = props;\n\n return (\n <div\n className={classNames(\n \"relation-line\",\n lightColor && `light-color-${lightColor}`\n )}\n />\n );\n}\n\nexport { AppWallRelationLine };\n","import React, { useEffect, useRef } from \"react\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport { createDecorators, EventEmitter } from \"@next-core/element\";\nimport styleText from \"./system-card.shadow.css\";\nimport variablesStyleText from \"../../data-view-variables.shadow.css\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\n\nconst { defineElement, property, event } = createDecorators();\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\ntype StatusType = \"normal\" | \"warning\";\ninterface DescriptionItem {\n key: string;\n value: string;\n}\nexport interface SystemCardProps {\n status: StatusType;\n cardTitle: string | undefined;\n itemList?: DescriptionItem[];\n buttonName?: string;\n handleClick?: () => void;\n containerStyle?: React.CSSProperties;\n}\n\n/**\n * 应用墙系统卡片\n * @author astrid\n */\n@defineElement(\"data-view.app-wall-system-card\", {\n styleTexts: [variablesStyleText, styleText],\n})\nclass SystemCard extends ReactNextElement implements SystemCardProps {\n /**\n * @kind StatusType\n * @required true\n * @default normal\n * @description 卡片状态\n * @enums\n * @group basic\n */\n @property({ attribute: false })\n accessor status: StatusType = \"normal\";\n\n /**\n * @kind string\n * @required -\n * @default -\n * @description 卡片标题\n * @enums\n * @group basic\n */\n @property()\n accessor cardTitle: string | undefined;\n\n /**\n * @kind DescriptionItem[]\n * @required false\n * @default -\n * @description 卡片信息数据\n * @enums\n * @group basic\n */\n @property({ attribute: false })\n accessor itemList: DescriptionItem[];\n\n /**\n * @kind string\n * @required -\n * @default -\n * @description 按钮名称\n * @enums\n * @group basic\n */\n @property()\n accessor buttonName: string | undefined;\n\n /**\n * @kind React.CSSProperties\n * @required -\n * @default -\n * @description 外层容器样式\n * @enums\n * @group basic\n */\n @property({ attribute: false })\n accessor containerStyle: React.CSSProperties;\n\n /**\n * @detail\n * @description 按钮点击\n */\n @event({ type: \"button-click\" })\n accessor #onClickEvent!: EventEmitter<void>;\n\n handleClick = () => {\n this.#onClickEvent.emit();\n };\n\n render(): React.ReactNode {\n return (\n <SystemCardComponent\n buttonName={this.buttonName}\n status={this.status}\n cardTitle={this.cardTitle}\n itemList={this.itemList}\n handleClick={this.handleClick}\n containerStyle={this.containerStyle}\n />\n );\n }\n}\n\nexport function SystemCardComponent(\n props: SystemCardProps\n): React.ReactElement {\n const {\n // status,\n itemList,\n cardTitle,\n buttonName,\n handleClick,\n containerStyle,\n } = props;\n const descriptionRef = useRef<HTMLDivElement>();\n\n useEffect(() => {\n descriptionRef.current?.scrollTo?.(0, 0);\n }, [itemList]);\n\n return (\n <div className=\"wrapper\" style={containerStyle}>\n <div className=\"cardName\" title={cardTitle}>\n {cardTitle}\n </div>\n {itemList?.length && (\n <div className=\"descriptions\" ref={descriptionRef}>\n {itemList.map((item, index) => (\n <div key={index} className=\"descriptionsItem\">\n <div className=\"itemKey\">{item.key}</div>\n <div className=\"itemValue\">{item.value}</div>\n </div>\n ))}\n </div>\n )}\n {buttonName && (\n <div className=\"buttonContent\" onClick={handleClick}>\n <WrappedIcon lib=\"antd\" icon=\"fall\" theme=\"outlined\" />\n <span className=\"buttonName\">{buttonName}</span>\n </div>\n )}\n </div>\n );\n}\n\nexport { SystemCard };\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\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\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}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import defineProperty from \"./defineProperty.js\";\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nexport default function _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}","import _typeof from \"./typeof.js\";\nexport default function setFunctionName(e, t, n) {\n \"symbol\" == _typeof(t) && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\");\n try {\n Object.defineProperty(e, \"name\", {\n configurable: !0,\n value: n ? n + \" \" + t : t\n });\n } catch (e) {}\n return e;\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : String(i);\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}"],"names":["_AppWallCardItem","defineElement","property","createDecorators","_A","WeakMap","_B","_C","AppWallCardItem","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","_init_status","_init_extra_status","_init_cardTitle","_init_extra_cardTitle","_init_description","_init_extra_description","status","_classPrivateFieldGet","v","_classPrivateFieldSet","cardTitle","description","render","React","AppWallCardItemElement","this","props","className","classNames","concat","_AppWallCardItem2","e","c","_initClass","_applyDecs","styleTexts","variablesStyleText","styleText","_AppWall","event","_D","_E","_F","_G","_H","_I","_J","_K","_AppWall_brand","WeakSet","_handleSystemCardButtonClick","_L","_M","_N","_O","AppWall","_classPrivateMethodInitSpec","_init_dataSource","_init_extra_dataSource","_init_relations","_init_extra_relations","_init_useDblclick","_init_extra_useDblclick","_init_useDistanceConfig","_init_extra_useDistanceConfig","_init_disabledDefaultClickEvent","_init_extra_disabledDefaultClickEvent","_init_cardSize","width","height","outerWidth","outerHeight","lgWidth","lgHeight","_init_extra_cardSize","_init_cardBrickName","_init_extra_cardBrickName","_init_containerId","_init_extra_containerId","_init_noRotate","_init_extra_noRotate","_init_boundMargin","_init_extra_boundMargin","_init_systemCardButtonClickEvent","_init_extra_systemCardButtonClickEvent","data","_classPrivateGetter","_get_systemCardButtonClickEvent","emit","_init_onLeftClickEvent","_init_extra_onLeftClickEvent","_init_onRightClickEvent","_init_extra_onRightClickEvent","_init_onDbClickEvent","_init_extra_onDbClickEvent","_init_onClickEvent","_defineProperty","_init_extra_onClickEvent","_get_onLeftClickEvent","_get_onRightClickEvent","_get_onDbClickEvent","_get_onClickEvent","dataSource","relations","useDblclick","useDistanceConfig","disabledDefaultClickEvent","cardSize","cardBrickName","containerId","noRotate","boundMargin","AppWallElement","onSystemCardButtonClick","leftBtnOnClick","handleLeftClick","rightBtnOnClick","handleRightClick","handleCardDbClick","handleCardClick","_AppWall2","_set_systemCardButtonClickEvent","_set_onLeftClickEvent","_set_onRightClickEvent","_set_onDbClickEvent","_set_onClickEvent","dependencies","attribute","type","Boolean","Number","o","_","has","_checkInRHS","_AppWallRelationLine","AppWallRelationLine","_init_lightColor","_init_extra_lightColor","lightColor","AppWallRelationLineElement","_AppWallRelationLine2","_SystemCard","WrappedIcon","wrapBrick","_SystemCard_brand","SystemCard","_init_itemList","_init_extra_itemList","_init_buttonName","_init_extra_buttonName","_init_containerStyle","_init_extra_containerStyle","itemList","buttonName","containerStyle","SystemCardComponent","handleClick","descriptionRef","useRef","useEffect","_descriptionRef$curre","_descriptionRef$curre2","current","scrollTo","call","style","title","length","ref","map","item","index","key","value","onClick","lib","icon","theme","_SystemCard2","module","exports","cssWithMappingToString","list","toString","content","needLayer","join","i","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","id","_k","push","Object","TypeError","_checkPrivateRedeclaration","obj","privateCollection","privateMap","set","defineProperty","enumerable","configurable","writable","ownKeys","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","apply","_objectSpread2","forEach","getOwnPropertyDescriptors","defineProperties","setFunctionName","n","toPropertyKey","Symbol","toPrimitive","String","_typeof","iterator","prototype"],"sourceRoot":""}