@yinuo-ngm/server 1.0.23 → 1.0.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/modules/agent-connections/agent-connections.schema.d.ts +4 -0
- package/lib/modules/agent-connections/agent-connections.schema.js +112 -0
- package/lib/modules/agent-connections/agent-connections.service.d.ts +18 -0
- package/lib/modules/agent-connections/agent-connections.service.js +209 -0
- package/lib/modules/agent-connections/agent-connections.types.d.ts +57 -0
- package/lib/modules/agent-connections/agent-connections.types.js +2 -0
- package/lib/modules/agent-connections/atomic-json-file.d.ts +8 -0
- package/lib/modules/agent-connections/atomic-json-file.js +44 -0
- package/lib/modules/agent-connections/token-mask.d.ts +1 -0
- package/lib/modules/agent-connections/token-mask.js +12 -0
- package/lib/routes/agent-connections.routes.d.ts +3 -0
- package/lib/routes/agent-connections.routes.js +28 -0
- package/lib/routes/index.js +2 -0
- package/package.json +4 -3
- package/www/3rdpartylicenses.txt +5 -5
- package/www/browser/chunk-2EB7UV3S.js +15 -0
- package/www/browser/{chunk-3I7BQCXS.js → chunk-2S6Y2RQI.js} +1 -1
- package/www/browser/{chunk-U3EUR236.js → chunk-2SYBXRWK.js} +1 -1
- package/www/browser/{chunk-OUGN4APK.js → chunk-365ZCRSD.js} +1 -1
- package/www/browser/{chunk-6UFDNETG.js → chunk-3MPEGFKP.js} +1 -1
- package/www/browser/{chunk-WCHN62X6.js → chunk-4PSSTE76.js} +1 -1
- package/www/browser/{chunk-DENFXXOY.js → chunk-5HVK6MON.js} +1 -1
- package/www/browser/{chunk-TXAXE73U.js → chunk-5Y7KNVNN.js} +1 -1
- package/www/browser/chunk-6L2CHHFV.js +1 -0
- package/www/browser/{chunk-NNOWADVM.js → chunk-6ZXQKFRQ.js} +1 -1
- package/www/browser/chunk-735SLX4X.js +1 -0
- package/www/browser/chunk-7KLACOZT.js +2 -0
- package/www/browser/chunk-7VJKEZTT.js +20 -0
- package/www/browser/{chunk-CO3CQHKV.js → chunk-7X4X4YHI.js} +1 -1
- package/www/browser/chunk-ACYCDF6M.js +1 -0
- package/www/browser/{chunk-UJKK4A7Y.js → chunk-AQYHNHJ3.js} +1 -1
- package/www/browser/chunk-BHKSOTOM.js +1 -0
- package/www/browser/{chunk-3ODVU46S.js → chunk-BXZVX5KD.js} +1 -1
- package/www/browser/{chunk-TCBOC5FF.js → chunk-C5DOE7UG.js} +1 -1
- package/www/browser/{chunk-7AKVG375.js → chunk-C6GC5OOE.js} +1 -1
- package/www/browser/{chunk-SSCUT2GF.js → chunk-D5W7J3FS.js} +1 -1
- package/www/browser/chunk-DPGKZHEW.js +1 -0
- package/www/browser/chunk-DRV2KPHO.js +1 -0
- package/www/browser/chunk-E2WRB7KQ.js +2 -0
- package/www/browser/{chunk-MPLGMTLT.js → chunk-EAFAHVBG.js} +1 -1
- package/www/browser/{chunk-WWIPELAV.js → chunk-ERH36Q6S.js} +1 -1
- package/www/browser/chunk-GSUKZOEV.js +1 -0
- package/www/browser/chunk-GYXK6ZZT.js +1 -0
- package/www/browser/{chunk-PDI3HSSH.js → chunk-H27FQ6OP.js} +3 -3
- package/www/browser/chunk-I7RTVSMK.js +1 -0
- package/www/browser/{chunk-SD2HFD54.js → chunk-IVX3LVU4.js} +1 -1
- package/www/browser/{chunk-U2YWR3HF.js → chunk-IX6UZA7J.js} +1 -1
- package/www/browser/{chunk-CPJTSA6E.js → chunk-JFR7U5DE.js} +1 -1
- package/www/browser/chunk-JIVQNGBJ.js +1 -0
- package/www/browser/{chunk-PY3AUTHC.js → chunk-KDMWEV46.js} +1 -1
- package/www/browser/{chunk-JM6DCZP6.js → chunk-LRHJZDWY.js} +1 -1
- package/www/browser/chunk-NVN2P466.js +1 -0
- package/www/browser/{chunk-NREWZQVN.js → chunk-O64FT2TA.js} +1 -1
- package/www/browser/{chunk-YVRGRFK2.js → chunk-OZONPLGN.js} +1 -1
- package/www/browser/chunk-PC7TJLCL.js +2 -0
- package/www/browser/{chunk-7GLWEFTM.js → chunk-PNFC3J4Z.js} +1 -1
- package/www/browser/chunk-PRKDURHI.js +1 -0
- package/www/browser/{chunk-RMIYLAEM.js → chunk-PUHSNEN6.js} +1 -1
- package/www/browser/{chunk-442QFABJ.js → chunk-RKKAY5CD.js} +1 -1
- package/www/browser/{chunk-M6NZ6C2R.js → chunk-RLH7DAA2.js} +1 -1
- package/www/browser/chunk-S6BY2OTR.js +1 -0
- package/www/browser/{chunk-KRYMOHYF.js → chunk-SIKDYQOR.js} +1 -1
- package/www/browser/{chunk-RKK4I2RT.js → chunk-SVRGVAFE.js} +1 -1
- package/www/browser/chunk-TPVKLECM.js +1 -0
- package/www/browser/{chunk-UPOORT3S.js → chunk-VBMHQZWH.js} +1 -1
- package/www/browser/chunk-WVRMU265.js +1 -0
- package/www/browser/chunk-X6PRUZ5G.js +1 -0
- package/www/browser/{chunk-PUG3VNTI.js → chunk-XQQ6PT2E.js} +1 -1
- package/www/browser/chunk-XUUNCF53.js +1 -0
- package/www/browser/{chunk-4BRW6LCZ.js → chunk-YGWA6NUS.js} +1 -1
- package/www/browser/{chunk-2VJVGBXG.js → chunk-YNYWN7QI.js} +1 -1
- package/www/browser/chunk-Z4T3LTE2.js +1 -0
- package/www/browser/chunk-Z7GYTPTP.js +1 -0
- package/www/browser/chunk-ZZN3NP7F.js +1 -0
- package/www/browser/index.html +1 -1
- package/www/browser/main-HMOP3OWL.js +38 -0
- package/www/browser/chunk-6J6G7JEP.js +0 -1
- package/www/browser/chunk-7QR6RHLA.js +0 -1
- package/www/browser/chunk-H2USFIYR.js +0 -1
- package/www/browser/chunk-HC5KLPHD.js +0 -1
- package/www/browser/chunk-HJAP6WBI.js +0 -1
- package/www/browser/chunk-K6C5ZIV2.js +0 -20
- package/www/browser/chunk-MBPB43C6.js +0 -1
- package/www/browser/chunk-PB2LGZNW.js +0 -1
- package/www/browser/chunk-R4HSZU2J.js +0 -1
- package/www/browser/chunk-RZA3IFQV.js +0 -2
- package/www/browser/chunk-SEJGGBE2.js +0 -1
- package/www/browser/chunk-TS5ZQYYY.js +0 -1
- package/www/browser/chunk-TVJHI463.js +0 -1
- package/www/browser/chunk-UKCMUTYL.js +0 -1
- package/www/browser/chunk-VW3S7C2Z.js +0 -1
- package/www/browser/chunk-VZYJ3MSW.js +0 -15
- package/www/browser/chunk-WUA5JFDD.js +0 -1
- package/www/browser/chunk-WYNERG74.js +0 -2
- package/www/browser/chunk-XJDJL3TQ.js +0 -1
- package/www/browser/chunk-YV6QPLF5.js +0 -1
- package/www/browser/main-7GYUOEJY.js +0 -38
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as Oe,b as Ze}from"./chunk-U2YWR3HF.js";import{E as Te,Ea as Fe,Fa as Me,G as Re,H as Ne,L as I,U as T,a as ae,ib as We,pa as V,r as De,ra as A,ta as R,x as Ee,y as xe}from"./chunk-VZYJ3MSW.js";import{A as Pe}from"./chunk-KRYMOHYF.js";import{$b as X,Ac as ne,Ba as B,Ca as U,Da as Q,Fb as K,Fc as L,Gb as ze,Gc as x,Hb as ve,I as G,Jc as be,M,Mc as ke,Oa as de,Ra as ge,S as ce,Ub as we,Wb as Z,Yb as W,_b as q,a as b,ac as J,bc as ee,cc as g,dc as _,ea as me,ec as C,f as j,fa as O,kb as fe,l as F,lc as H,na as he,nb as z,nc as ye,oa as pe,r as E,rc as k,s as u,sa as s,sb as Y,sc as _e,tb as ue,uc as v,ud as oe,vc as Ce,wc as Se,ya as P,yc as te,yd as Ie,za as D,zc as ie}from"./chunk-4BRW6LCZ.js";var Be=["*"],Ue=["imgRef"],Qe=["imagePreviewWrapper"];function Ye(t,r){if(t&1){let e=H();g(0,"div",13),k("click",function(i){P(e);let o=v();return D(o.onSwitchLeft(i))}),C(1,"nz-icon",14),_(),g(2,"div",15),k("click",function(i){P(e);let o=v();return D(o.onSwitchRight(i))}),C(3,"nz-icon",16),_()}if(t&2){let e=v();x("ant-image-preview-switch-left-disabled",e.index<=0),z(2),x("ant-image-preview-switch-right-disabled",e.index>=e.images.length-1)}}function Ke(t,r){if(t&1&&(g(0,"li",5),be(1),_()),t&2){let e=v();z(),ke("",e.index+1," / ",e.images.length)}}function qe(t,r){if(t&1){let e=H();g(0,"li",17),k("click",function(){let i=P(e).$implicit;return D(i.onClick())}),C(1,"nz-icon",18),_()}if(t&2){let e=r.$implicit,n=v();x("ant-image-preview-operations-operation-disabled",n.zoomOutDisabled&&e.type==="zoomOut"),z(),ee("nzType",e.icon)("nzRotate",e.rotate??0)}}function Xe(t,r){if(t&1&&C(0,"img",20,1),t&2){let e=v().$implicit,n=v();L("width",e.width)("height",e.height)("transform",n.previewImageTransform),we("src",n.sanitizerResourceUrl(e.src),fe)("srcset",e.srcset)("alt",e.alt)}}function Je(t,r){if(t&1&&Z(0,Xe,2,9,"img",19),t&2){let e=r.$index,n=v();W(e===n.index?0:-1)}}var et=(()=>{class t{nzScaleStep=null;images=[];addImage(e){this.images.push(e)}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=K({type:t,selectors:[["nz-image-group"]],inputs:{nzScaleStep:"nzScaleStep"},exportAs:["nzImageGroup"],ngContentSelectors:Be,decls:1,vars:0,template:function(n,i){n&1&&(Ce(),Se(0))},encapsulation:2,changeDetection:0})}return t})(),$e="image",N=class{nzKeyboard=!0;nzNoAnimation=!1;nzMaskClosable=!0;nzCloseOnNavigation=!0;nzZIndex;nzZoom;nzRotate;nzFlipHorizontally;nzFlipVertically;nzScaleStep;nzDirection};function tt(t){let r={};return t.width<=t.clientWidth&&t.height<=t.clientHeight&&(r={x:0,y:0}),(t.width>t.clientWidth||t.height>t.clientHeight)&&(r={x:Ve(t.left,t.width,t.clientWidth),y:Ve(t.top,t.height,t.clientHeight)}),r}function it(t){let r=t.getBoundingClientRect(),e=document.documentElement;return{left:r.left+(window.pageXOffset||e.scrollLeft)-(e.clientLeft||document.body.clientLeft||0),top:r.top+(window.pageYOffset||e.scrollTop)-(e.clientTop||document.body.clientTop||0)}}function nt(){let t=document.documentElement.clientWidth,r=window.innerHeight||document.documentElement.clientHeight;return{width:t,height:r}}function Ve(t,r,e){let n=t+r,i=(r-e)/2,o=null;return r>e?(t>0&&(o=i),t<0&&n<e&&(o=-i)):(t<0||n>e)&&(o=t<0?i:-i),o}var Ae={x:0,y:0},se=.5,ot=1,at=0,je=(()=>{class t{document=s(U);ngZone=s(ue);cdr=s(oe);nzConfigService=s(A);config=s(N);sanitizer=s(Pe);destroyRef=s(Q);_defaultNzZoom=ot;_defaultNzScaleStep=se;_defaultNzRotate=at;images=[];index=0;isDragging=!1;visible=!0;animationStateChanged=new Y;scaleStepMap=new Map;previewImageTransform="";previewImageWrapperTransform="";operations=[{icon:"close",onClick:()=>{this.onClose()},type:"close"},{icon:"zoom-in",onClick:()=>{this.onZoomIn()},type:"zoomIn"},{icon:"zoom-out",onClick:()=>{this.onZoomOut()},type:"zoomOut"},{icon:"rotate-right",onClick:()=>{this.onRotateRight()},type:"rotateRight"},{icon:"rotate-left",onClick:()=>{this.onRotateLeft()},type:"rotateLeft"},{icon:"swap",onClick:()=>{this.onHorizontalFlip()},type:"flipHorizontally"},{icon:"swap",onClick:()=>{this.onVerticalFlip()},type:"flipVertically",rotate:90}];zoomOutDisabled=!1;position=b({},Ae);previewRef;closeClick=new Y;imageRef;imagePreviewWrapper;zoom=this.config.nzZoom??this._defaultNzZoom;rotate=this.config.nzRotate??this._defaultNzRotate;scaleStep=this.config.nzScaleStep??this._defaultNzScaleStep;flipHorizontally=this.config.nzFlipHorizontally??!1;flipVertically=this.config.nzFlipVertically??!1;get animationDisabled(){return this.config.nzNoAnimation??!1}get maskClosable(){let e=this.nzConfigService.getConfigForComponent($e)||{};return this.config.nzMaskClosable??e.nzMaskClosable??!0}constructor(){this.updateZoomOutDisabled(),this.updatePreviewImageTransform(),this.updatePreviewImageWrapperTransform()}ngOnInit(){V(this.imagePreviewWrapper.nativeElement,"mousedown").pipe(I(this.destroyRef)).subscribe(()=>{this.isDragging=!0}),V(this.imagePreviewWrapper.nativeElement,"wheel").pipe(I(this.destroyRef)).subscribe(e=>{this.ngZone.run(()=>this.wheelZoomEventHandler(e))}),V(this.document,"keydown").pipe(M(e=>e.keyCode===27),I(this.destroyRef)).subscribe(()=>{this.ngZone.run(()=>{this.onClose(),this.markForCheck()})})}setImages(e,n){n&&(this.scaleStepMap=n),this.images=e,this.markForCheck()}switchTo(e){this.index=e,this.markForCheck()}next(){this.index<this.images.length-1&&(this.reset(),this.index++,this.updatePreviewImageTransform(),this.updatePreviewImageWrapperTransform(),this.updateZoomOutDisabled(),this.markForCheck())}prev(){this.index>0&&(this.reset(),this.index--,this.updatePreviewImageTransform(),this.updatePreviewImageWrapperTransform(),this.updateZoomOutDisabled(),this.markForCheck())}markForCheck(){this.cdr.markForCheck()}onClose(){this.visible=!1,this.closeClick.emit()}onZoomIn(){let e=this.scaleStepMap.get(this.images[this.index].src??this.images[this.index].srcset)??this.scaleStep;this.zoom+=e,this.updatePreviewImageTransform(),this.updateZoomOutDisabled()}onZoomOut(){if(this.zoom>1){let e=this.scaleStepMap.get(this.images[this.index].src??this.images[this.index].srcset)??this.scaleStep;this.zoom-=e,this.updatePreviewImageTransform(),this.updateZoomOutDisabled(),this.zoom<=1&&this.reCenterImage()}}onRotateRight(){this.rotate+=90,this.updatePreviewImageTransform()}onRotateLeft(){this.rotate-=90,this.updatePreviewImageTransform()}onSwitchLeft(e){e.preventDefault(),e.stopPropagation(),this.prev()}onSwitchRight(e){e.preventDefault(),e.stopPropagation(),this.next()}onHorizontalFlip(){this.flipHorizontally=!this.flipHorizontally,this.updatePreviewImageTransform()}onVerticalFlip(){this.flipVertically=!this.flipVertically,this.updatePreviewImageTransform()}wheelZoomEventHandler(e){e.preventDefault(),e.stopPropagation(),this.handlerImageTransformationWhileZoomingWithMouse(e,e.deltaY),this.handleImageScaleWhileZoomingWithMouse(e.deltaY),this.updatePreviewImageWrapperTransform(),this.updatePreviewImageTransform(),this.markForCheck()}onAnimationStart(e){this.animationStateChanged.emit(e)}onAnimationDone(e){this.animationStateChanged.emit(e)}onDragEnd(e){this.isDragging=!1;let n=this.imageRef.nativeElement.offsetWidth*this.zoom,i=this.imageRef.nativeElement.offsetHeight*this.zoom,{left:o,top:m}=it(this.imageRef.nativeElement),{width:c,height:f}=nt(),S=this.rotate%180!==0,y=tt({width:S?i:n,height:S?n:i,left:o,top:m,clientWidth:c,clientHeight:f});T(y.x)||T(y.y)?this.position=b(b({},this.position),y):!T(y.x)&&!T(y.y)&&(this.position={x:e.source.getFreeDragPosition().x,y:e.source.getFreeDragPosition().y})}sanitizerResourceUrl(e){return this.sanitizer.bypassSecurityTrustResourceUrl(e)}updatePreviewImageTransform(){this.previewImageTransform=`scale3d(${this.zoom*(this.flipHorizontally?-1:1)}, ${this.zoom*(this.flipVertically?-1:1)}, 1) rotate(${this.rotate}deg)`}updatePreviewImageWrapperTransform(){this.previewImageWrapperTransform=`translate3d(${this.position.x}px, ${this.position.y}px, 0)`}updateZoomOutDisabled(){this.zoomOutDisabled=this.zoom<=1}handlerImageTransformationWhileZoomingWithMouse(e,n){let i,o=this.imageRef.nativeElement,c=getComputedStyle(o).transform.match(/matrix.*\((.+)\)/);c?i=+c[1].split(", ")[0]:i=this.zoom;let f=(e.clientX-o.getBoundingClientRect().x)/i,S=(e.clientY-o.getBoundingClientRect().y)/i,w=n<0?this.scaleStep/2:-this.scaleStep/2;this.position.x+=-f*w*2+o.offsetWidth*w,this.position.y+=-S*w*2+o.offsetHeight*w}handleImageScaleWhileZoomingWithMouse(e){this.isZoomedInWithMouseWheel(e)?this.onZoomIn():this.onZoomOut(),this.zoom<=1&&this.reCenterImage()}isZoomedInWithMouseWheel(e){return e<0}reset(){this.zoom=this.config.nzZoom??this._defaultNzZoom,this.scaleStep=this.config.nzScaleStep??this._defaultNzScaleStep,this.rotate=this.config.nzRotate??this._defaultNzRotate,this.flipHorizontally=!1,this.flipVertically=!1,this.reCenterImage()}reCenterImage(){this.position=b({},Ae)}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=K({type:t,selectors:[["nz-image-preview"]],viewQuery:function(n,i){if(n&1&&(te(Ue,5),te(Qe,7)),n&2){let o;ie(o=ne())&&(i.imageRef=o.first),ie(o=ne())&&(i.imagePreviewWrapper=o.first)}},hostAttrs:[1,"ant-image-preview-root"],hostVars:6,hostBindings:function(n,i){n&1&&_e("@fadeMotion.start",function(m){return i.onAnimationStart(m)})("@fadeMotion.done",function(m){return i.onAnimationDone(m)}),n&2&&(ye("@.disabled",i.config.nzNoAnimation)("@fadeMotion",i.visible?"enter":"leave"),L("z-index",i.config.nzZIndex),x("ant-image-preview-moving",i.isDragging))},exportAs:["nzImagePreview"],decls:17,vars:5,consts:[["imagePreviewWrapper",""],["imgRef",""],[1,"ant-image-preview-mask"],[1,"ant-image-preview-operations-wrapper"],[1,"ant-image-preview-operations"],[1,"ant-image-preview-operations-progress"],[1,"ant-image-preview-operations-operation",3,"ant-image-preview-operations-operation-disabled"],["tabindex","-1",1,"ant-image-preview-wrap",3,"click"],["role","dialog","aria-modal","true",1,"ant-image-preview"],["tabindex","0","aria-hidden","true",1,"ant-image-preview-focus-trap"],[1,"ant-image-preview-content"],[1,"ant-image-preview-body"],["cdkDrag","",1,"ant-image-preview-img-wrapper",3,"cdkDragEnded","cdkDragFreeDragPosition"],[1,"ant-image-preview-switch-left",3,"click"],["nzType","left","nzTheme","outline"],[1,"ant-image-preview-switch-right",3,"click"],["nzType","right","nzTheme","outline"],[1,"ant-image-preview-operations-operation",3,"click"],["nzTheme","outline",1,"ant-image-preview-operations-icon",3,"nzType","nzRotate"],["cdkDragHandle","",1,"ant-image-preview-img",3,"width","height","transform"],["cdkDragHandle","",1,"ant-image-preview-img"]],template:function(n,i){if(n&1){let o=H();C(0,"div",2),g(1,"div",3),Z(2,Ye,4,4),g(3,"ul",4),Z(4,Ke,2,2,"li",5),X(5,qe,2,4,"li",6,q),_()(),g(7,"div",7),k("click",function(c){return P(o),D(i.maskClosable&&c.target===c.currentTarget&&i.onClose())}),g(8,"div",8),C(9,"div",9),g(10,"div",10)(11,"div",11)(12,"div",12,0),k("cdkDragEnded",function(c){return P(o),D(i.onDragEnd(c))}),X(14,Je,1,1,null,null,q),_()()(),C(16,"div",9),_()()}n&2&&(z(2),W(i.images.length>1?2:-1),z(2),W(i.images.length>1?4:-1),z(),J(i.operations),z(7),L("transform",i.previewImageWrapperTransform),ee("cdkDragFreeDragPosition",i.position),z(2),J(i.images))},dependencies:[Me,Fe,Oe,Ze],encapsulation:2,data:{animation:[We]},changeDetection:0})}return t})(),le=class{previewInstance;config;overlayRef;destroy$=new F;constructor(r,e,n){this.previewInstance=r,this.config=e,this.overlayRef=n,n.keydownEvents().pipe(M(i=>this.config.nzKeyboard&&(i.keyCode===27||i.keyCode===37||i.keyCode===39)&&!Ee(i))).subscribe(i=>{i.preventDefault(),i.keyCode===27&&r.onClose(),i.keyCode===37&&this.prev(),i.keyCode===39&&this.next()}),n.detachments().subscribe(()=>{this.overlayRef.dispose()}),r.closeClick.pipe(ce(1),me(()=>r.animationStateChanged),M(i=>i.phaseName==="done"),O(this.destroy$)).subscribe(()=>{this.close()})}switchTo(r){this.previewInstance.switchTo(r)}next(){this.previewInstance.next()}prev(){this.previewInstance.prev()}close(){this.destroy$.next(),this.overlayRef.dispose()}},Ge=(()=>{class t{injector=s(B);nzConfigService=s(A);directionality=s(ae);preview(e,n,i){return this.display(e,n,i)}display(e,n,i){let o=b(b({},new N),n??{}),m=this.createOverlay(o),c=this.attachPreviewComponent(m,o);c.setImages(e,i);let f=new le(c,o,m);return c.previewRef=f,f}attachPreviewComponent(e,n){let i=B.create({parent:this.injector,providers:[{provide:Te,useValue:e},{provide:N,useValue:n}]}),o=new De(je,null,i);return e.attach(o).instance}createOverlay(e){let n=this.nzConfigService.getConfigForComponent($e)||{};return Ne(this.injector,{scrollStrategy:xe(this.injector),positionStrategy:Re(this.injector),disposeOnNavigation:e.nzCloseOnNavigation??n.nzCloseOnNavigation??!0,direction:e.nzDirection||n.nzDirection||this.directionality.value})}static \u0275fac=function(n){return new(n||t)};static \u0275prov=he({token:t,factory:t.\u0275fac})}return t})(),rt="image",Nt=(()=>{var p;let t,r=[],e=[],n,i=[],o=[],m,c=[],f=[],S,w=[],y=[];return p=class{document=s(U);nzConfigService=s(A);elementRef=s(ge);nzImageService=s(Ge);cdr=s(oe);directionality=s(ae);destroyRef=s(Q);_nzModuleName=rt;nzSrc="";nzSrcset="";nzDisablePreview=u(this,r,!1);nzFallback=(u(this,e),u(this,i,null));nzPlaceholder=(u(this,o),u(this,c,null));nzScaleStep=(u(this,f),u(this,w,null));dir=u(this,y);backLoadImage;status="normal";backLoadDestroy$=new F;parentGroup=s(et,{optional:!0});get previewable(){return!this.nzDisablePreview&&this.status!=="error"}ngOnInit(){this.backLoad(),this.parentGroup&&this.parentGroup.addImage(this),this.directionality&&(this.directionality.change?.pipe(I(this.destroyRef)).subscribe(l=>{this.dir=l,this.cdr.detectChanges()}),this.dir=this.directionality.value)}onPreview(){if(this.previewable)if(this.parentGroup){let l=this.parentGroup.images.filter(d=>d.previewable),a=l.map(d=>({src:d.nzSrc,srcset:d.nzSrcset})),h=l.findIndex(d=>this===d),$=new Map;l.forEach(d=>{$.set(d.nzSrc??d.nzSrcset,d.nzScaleStep??this.parentGroup.nzScaleStep??this.nzScaleStep??se)}),this.nzImageService.preview(a,{nzDirection:this.dir},$).switchTo(h)}else{let l=[{src:this.nzSrc,srcset:this.nzSrcset}];this.nzImageService.preview(l,{nzDirection:this.dir,nzScaleStep:this.nzScaleStep??se})}}getElement(){return this.elementRef}ngOnChanges(l){let{nzSrc:a}=l;a&&(this.getElement().nativeElement.src=a.currentValue,this.backLoad())}backLoad(){this.backLoadImage=this.document.createElement("img"),this.backLoadImage.src=this.nzSrc,this.backLoadImage.srcset=this.nzSrcset,this.status="loading",this.backLoadDestroy$.next(),this.backLoadDestroy$.complete(),this.backLoadDestroy$=new F,this.backLoadImage.complete?(this.status="normal",this.getElement().nativeElement.src=this.nzSrc,this.getElement().nativeElement.srcset=this.nzSrcset):(this.nzPlaceholder?(this.getElement().nativeElement.src=this.nzPlaceholder,this.getElement().nativeElement.srcset=""):(this.getElement().nativeElement.src=this.nzSrc,this.getElement().nativeElement.srcset=this.nzSrcset),G(this.backLoadImage,"load").pipe(O(this.backLoadDestroy$),I(this.destroyRef)).subscribe(()=>{this.status="normal",this.getElement().nativeElement.src=this.nzSrc,this.getElement().nativeElement.srcset=this.nzSrcset}),G(this.backLoadImage,"error").pipe(O(this.backLoadDestroy$),I(this.destroyRef)).subscribe(()=>{this.status="error",this.nzFallback&&(this.getElement().nativeElement.src=this.nzFallback,this.getElement().nativeElement.srcset="")}))}},(()=>{let l=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;t=[R()],n=[R()],m=[R()],S=[R()],E(null,null,t,{kind:"field",name:"nzDisablePreview",static:!1,private:!1,access:{has:a=>"nzDisablePreview"in a,get:a=>a.nzDisablePreview,set:(a,h)=>{a.nzDisablePreview=h}},metadata:l},r,e),E(null,null,n,{kind:"field",name:"nzFallback",static:!1,private:!1,access:{has:a=>"nzFallback"in a,get:a=>a.nzFallback,set:(a,h)=>{a.nzFallback=h}},metadata:l},i,o),E(null,null,m,{kind:"field",name:"nzPlaceholder",static:!1,private:!1,access:{has:a=>"nzPlaceholder"in a,get:a=>a.nzPlaceholder,set:(a,h)=>{a.nzPlaceholder=h}},metadata:l},c,f),E(null,null,S,{kind:"field",name:"nzScaleStep",static:!1,private:!1,access:{has:a=>"nzScaleStep"in a,get:a=>a.nzScaleStep,set:(a,h)=>{a.nzScaleStep=h}},metadata:l},w,y),l&&Object.defineProperty(p,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:l})})(),j(p,"\u0275fac",function(a){return new(a||p)}),j(p,"\u0275dir",ve({type:p,selectors:[["img","nz-image",""]],hostBindings:function(a,h){a&1&&k("click",function(){return h.onPreview()})},inputs:{nzSrc:"nzSrc",nzSrcset:"nzSrcset",nzDisablePreview:[2,"nzDisablePreview","nzDisablePreview",Ie],nzFallback:"nzFallback",nzPlaceholder:"nzPlaceholder",nzScaleStep:"nzScaleStep"},exportAs:["nzImage"],features:[de]})),p})(),Ft=(()=>{class t{static \u0275fac=function(n){return new(n||t)};static \u0275mod=ze({type:t});static \u0275inj=pe({providers:[Ge],imports:[je]})}return t})();export{et as a,Ge as b,Nt as c,Ft as d};
|
|
1
|
+
import{a as Oe,b as Ze}from"./chunk-IX6UZA7J.js";import{F as Te,H as Re,I as Ne,Ia as Fe,Ja as Me,M as I,V as T,a as ae,mb as We,ra as V,s as De,ta as A,va as R,y as Ee,z as xe}from"./chunk-2EB7UV3S.js";import{A as Pe}from"./chunk-SIKDYQOR.js";import{$b as q,Ac as ie,Ba as B,Bc as ne,Ca as U,Da as Q,Gb as K,Gc as L,Hb as ze,Hc as x,I as G,Ib as ve,Kc as be,M,Nc as ke,Oa as de,Ra as ge,S as ce,Vb as we,Xb as Z,Zb as W,a as b,ac as X,bc as J,cc as ee,dc as g,ea as me,ec as _,f as j,fa as O,fc as C,kb as fe,l as F,mc as H,na as he,oa as pe,ob as z,oc as ye,r as E,s as u,sa as s,sc as k,tb as Y,tc as _e,ub as ue,vc as v,vd as oe,wc as Ce,xc as Se,ya as P,za as D,zc as te,zd as Ie}from"./chunk-YGWA6NUS.js";var Be=["*"],Ue=["imgRef"],Qe=["imagePreviewWrapper"];function Ye(t,r){if(t&1){let e=H();g(0,"div",13),k("click",function(i){P(e);let o=v();return D(o.onSwitchLeft(i))}),C(1,"nz-icon",14),_(),g(2,"div",15),k("click",function(i){P(e);let o=v();return D(o.onSwitchRight(i))}),C(3,"nz-icon",16),_()}if(t&2){let e=v();x("ant-image-preview-switch-left-disabled",e.index<=0),z(2),x("ant-image-preview-switch-right-disabled",e.index>=e.images.length-1)}}function Ke(t,r){if(t&1&&(g(0,"li",5),be(1),_()),t&2){let e=v();z(),ke("",e.index+1," / ",e.images.length)}}function qe(t,r){if(t&1){let e=H();g(0,"li",17),k("click",function(){let i=P(e).$implicit;return D(i.onClick())}),C(1,"nz-icon",18),_()}if(t&2){let e=r.$implicit,n=v();x("ant-image-preview-operations-operation-disabled",n.zoomOutDisabled&&e.type==="zoomOut"),z(),ee("nzType",e.icon)("nzRotate",e.rotate??0)}}function Xe(t,r){if(t&1&&C(0,"img",20,1),t&2){let e=v().$implicit,n=v();L("width",e.width)("height",e.height)("transform",n.previewImageTransform),we("src",n.sanitizerResourceUrl(e.src),fe)("srcset",e.srcset)("alt",e.alt)}}function Je(t,r){if(t&1&&Z(0,Xe,2,9,"img",19),t&2){let e=r.$index,n=v();W(e===n.index?0:-1)}}var et=(()=>{class t{nzScaleStep=null;images=[];addImage(e){this.images.push(e)}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=K({type:t,selectors:[["nz-image-group"]],inputs:{nzScaleStep:"nzScaleStep"},exportAs:["nzImageGroup"],ngContentSelectors:Be,decls:1,vars:0,template:function(n,i){n&1&&(Ce(),Se(0))},encapsulation:2,changeDetection:0})}return t})(),$e="image",N=class{nzKeyboard=!0;nzNoAnimation=!1;nzMaskClosable=!0;nzCloseOnNavigation=!0;nzZIndex;nzZoom;nzRotate;nzFlipHorizontally;nzFlipVertically;nzScaleStep;nzDirection};function tt(t){let r={};return t.width<=t.clientWidth&&t.height<=t.clientHeight&&(r={x:0,y:0}),(t.width>t.clientWidth||t.height>t.clientHeight)&&(r={x:Ve(t.left,t.width,t.clientWidth),y:Ve(t.top,t.height,t.clientHeight)}),r}function it(t){let r=t.getBoundingClientRect(),e=document.documentElement;return{left:r.left+(window.pageXOffset||e.scrollLeft)-(e.clientLeft||document.body.clientLeft||0),top:r.top+(window.pageYOffset||e.scrollTop)-(e.clientTop||document.body.clientTop||0)}}function nt(){let t=document.documentElement.clientWidth,r=window.innerHeight||document.documentElement.clientHeight;return{width:t,height:r}}function Ve(t,r,e){let n=t+r,i=(r-e)/2,o=null;return r>e?(t>0&&(o=i),t<0&&n<e&&(o=-i)):(t<0||n>e)&&(o=t<0?i:-i),o}var Ae={x:0,y:0},se=.5,ot=1,at=0,je=(()=>{class t{document=s(U);ngZone=s(ue);cdr=s(oe);nzConfigService=s(A);config=s(N);sanitizer=s(Pe);destroyRef=s(Q);_defaultNzZoom=ot;_defaultNzScaleStep=se;_defaultNzRotate=at;images=[];index=0;isDragging=!1;visible=!0;animationStateChanged=new Y;scaleStepMap=new Map;previewImageTransform="";previewImageWrapperTransform="";operations=[{icon:"close",onClick:()=>{this.onClose()},type:"close"},{icon:"zoom-in",onClick:()=>{this.onZoomIn()},type:"zoomIn"},{icon:"zoom-out",onClick:()=>{this.onZoomOut()},type:"zoomOut"},{icon:"rotate-right",onClick:()=>{this.onRotateRight()},type:"rotateRight"},{icon:"rotate-left",onClick:()=>{this.onRotateLeft()},type:"rotateLeft"},{icon:"swap",onClick:()=>{this.onHorizontalFlip()},type:"flipHorizontally"},{icon:"swap",onClick:()=>{this.onVerticalFlip()},type:"flipVertically",rotate:90}];zoomOutDisabled=!1;position=b({},Ae);previewRef;closeClick=new Y;imageRef;imagePreviewWrapper;zoom=this.config.nzZoom??this._defaultNzZoom;rotate=this.config.nzRotate??this._defaultNzRotate;scaleStep=this.config.nzScaleStep??this._defaultNzScaleStep;flipHorizontally=this.config.nzFlipHorizontally??!1;flipVertically=this.config.nzFlipVertically??!1;get animationDisabled(){return this.config.nzNoAnimation??!1}get maskClosable(){let e=this.nzConfigService.getConfigForComponent($e)||{};return this.config.nzMaskClosable??e.nzMaskClosable??!0}constructor(){this.updateZoomOutDisabled(),this.updatePreviewImageTransform(),this.updatePreviewImageWrapperTransform()}ngOnInit(){V(this.imagePreviewWrapper.nativeElement,"mousedown").pipe(I(this.destroyRef)).subscribe(()=>{this.isDragging=!0}),V(this.imagePreviewWrapper.nativeElement,"wheel").pipe(I(this.destroyRef)).subscribe(e=>{this.ngZone.run(()=>this.wheelZoomEventHandler(e))}),V(this.document,"keydown").pipe(M(e=>e.keyCode===27),I(this.destroyRef)).subscribe(()=>{this.ngZone.run(()=>{this.onClose(),this.markForCheck()})})}setImages(e,n){n&&(this.scaleStepMap=n),this.images=e,this.markForCheck()}switchTo(e){this.index=e,this.markForCheck()}next(){this.index<this.images.length-1&&(this.reset(),this.index++,this.updatePreviewImageTransform(),this.updatePreviewImageWrapperTransform(),this.updateZoomOutDisabled(),this.markForCheck())}prev(){this.index>0&&(this.reset(),this.index--,this.updatePreviewImageTransform(),this.updatePreviewImageWrapperTransform(),this.updateZoomOutDisabled(),this.markForCheck())}markForCheck(){this.cdr.markForCheck()}onClose(){this.visible=!1,this.closeClick.emit()}onZoomIn(){let e=this.scaleStepMap.get(this.images[this.index].src??this.images[this.index].srcset)??this.scaleStep;this.zoom+=e,this.updatePreviewImageTransform(),this.updateZoomOutDisabled()}onZoomOut(){if(this.zoom>1){let e=this.scaleStepMap.get(this.images[this.index].src??this.images[this.index].srcset)??this.scaleStep;this.zoom-=e,this.updatePreviewImageTransform(),this.updateZoomOutDisabled(),this.zoom<=1&&this.reCenterImage()}}onRotateRight(){this.rotate+=90,this.updatePreviewImageTransform()}onRotateLeft(){this.rotate-=90,this.updatePreviewImageTransform()}onSwitchLeft(e){e.preventDefault(),e.stopPropagation(),this.prev()}onSwitchRight(e){e.preventDefault(),e.stopPropagation(),this.next()}onHorizontalFlip(){this.flipHorizontally=!this.flipHorizontally,this.updatePreviewImageTransform()}onVerticalFlip(){this.flipVertically=!this.flipVertically,this.updatePreviewImageTransform()}wheelZoomEventHandler(e){e.preventDefault(),e.stopPropagation(),this.handlerImageTransformationWhileZoomingWithMouse(e,e.deltaY),this.handleImageScaleWhileZoomingWithMouse(e.deltaY),this.updatePreviewImageWrapperTransform(),this.updatePreviewImageTransform(),this.markForCheck()}onAnimationStart(e){this.animationStateChanged.emit(e)}onAnimationDone(e){this.animationStateChanged.emit(e)}onDragEnd(e){this.isDragging=!1;let n=this.imageRef.nativeElement.offsetWidth*this.zoom,i=this.imageRef.nativeElement.offsetHeight*this.zoom,{left:o,top:m}=it(this.imageRef.nativeElement),{width:c,height:f}=nt(),S=this.rotate%180!==0,y=tt({width:S?i:n,height:S?n:i,left:o,top:m,clientWidth:c,clientHeight:f});T(y.x)||T(y.y)?this.position=b(b({},this.position),y):!T(y.x)&&!T(y.y)&&(this.position={x:e.source.getFreeDragPosition().x,y:e.source.getFreeDragPosition().y})}sanitizerResourceUrl(e){return this.sanitizer.bypassSecurityTrustResourceUrl(e)}updatePreviewImageTransform(){this.previewImageTransform=`scale3d(${this.zoom*(this.flipHorizontally?-1:1)}, ${this.zoom*(this.flipVertically?-1:1)}, 1) rotate(${this.rotate}deg)`}updatePreviewImageWrapperTransform(){this.previewImageWrapperTransform=`translate3d(${this.position.x}px, ${this.position.y}px, 0)`}updateZoomOutDisabled(){this.zoomOutDisabled=this.zoom<=1}handlerImageTransformationWhileZoomingWithMouse(e,n){let i,o=this.imageRef.nativeElement,c=getComputedStyle(o).transform.match(/matrix.*\((.+)\)/);c?i=+c[1].split(", ")[0]:i=this.zoom;let f=(e.clientX-o.getBoundingClientRect().x)/i,S=(e.clientY-o.getBoundingClientRect().y)/i,w=n<0?this.scaleStep/2:-this.scaleStep/2;this.position.x+=-f*w*2+o.offsetWidth*w,this.position.y+=-S*w*2+o.offsetHeight*w}handleImageScaleWhileZoomingWithMouse(e){this.isZoomedInWithMouseWheel(e)?this.onZoomIn():this.onZoomOut(),this.zoom<=1&&this.reCenterImage()}isZoomedInWithMouseWheel(e){return e<0}reset(){this.zoom=this.config.nzZoom??this._defaultNzZoom,this.scaleStep=this.config.nzScaleStep??this._defaultNzScaleStep,this.rotate=this.config.nzRotate??this._defaultNzRotate,this.flipHorizontally=!1,this.flipVertically=!1,this.reCenterImage()}reCenterImage(){this.position=b({},Ae)}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=K({type:t,selectors:[["nz-image-preview"]],viewQuery:function(n,i){if(n&1&&(te(Ue,5),te(Qe,7)),n&2){let o;ie(o=ne())&&(i.imageRef=o.first),ie(o=ne())&&(i.imagePreviewWrapper=o.first)}},hostAttrs:[1,"ant-image-preview-root"],hostVars:6,hostBindings:function(n,i){n&1&&_e("@fadeMotion.start",function(m){return i.onAnimationStart(m)})("@fadeMotion.done",function(m){return i.onAnimationDone(m)}),n&2&&(ye("@.disabled",i.config.nzNoAnimation)("@fadeMotion",i.visible?"enter":"leave"),L("z-index",i.config.nzZIndex),x("ant-image-preview-moving",i.isDragging))},exportAs:["nzImagePreview"],decls:17,vars:5,consts:[["imagePreviewWrapper",""],["imgRef",""],[1,"ant-image-preview-mask"],[1,"ant-image-preview-operations-wrapper"],[1,"ant-image-preview-operations"],[1,"ant-image-preview-operations-progress"],[1,"ant-image-preview-operations-operation",3,"ant-image-preview-operations-operation-disabled"],["tabindex","-1",1,"ant-image-preview-wrap",3,"click"],["role","dialog","aria-modal","true",1,"ant-image-preview"],["tabindex","0","aria-hidden","true",1,"ant-image-preview-focus-trap"],[1,"ant-image-preview-content"],[1,"ant-image-preview-body"],["cdkDrag","",1,"ant-image-preview-img-wrapper",3,"cdkDragEnded","cdkDragFreeDragPosition"],[1,"ant-image-preview-switch-left",3,"click"],["nzType","left","nzTheme","outline"],[1,"ant-image-preview-switch-right",3,"click"],["nzType","right","nzTheme","outline"],[1,"ant-image-preview-operations-operation",3,"click"],["nzTheme","outline",1,"ant-image-preview-operations-icon",3,"nzType","nzRotate"],["cdkDragHandle","",1,"ant-image-preview-img",3,"width","height","transform"],["cdkDragHandle","",1,"ant-image-preview-img"]],template:function(n,i){if(n&1){let o=H();C(0,"div",2),g(1,"div",3),Z(2,Ye,4,4),g(3,"ul",4),Z(4,Ke,2,2,"li",5),X(5,qe,2,4,"li",6,q),_()(),g(7,"div",7),k("click",function(c){return P(o),D(i.maskClosable&&c.target===c.currentTarget&&i.onClose())}),g(8,"div",8),C(9,"div",9),g(10,"div",10)(11,"div",11)(12,"div",12,0),k("cdkDragEnded",function(c){return P(o),D(i.onDragEnd(c))}),X(14,Je,1,1,null,null,q),_()()(),C(16,"div",9),_()()}n&2&&(z(2),W(i.images.length>1?2:-1),z(2),W(i.images.length>1?4:-1),z(),J(i.operations),z(7),L("transform",i.previewImageWrapperTransform),ee("cdkDragFreeDragPosition",i.position),z(2),J(i.images))},dependencies:[Me,Fe,Oe,Ze],encapsulation:2,data:{animation:[We]},changeDetection:0})}return t})(),le=class{previewInstance;config;overlayRef;destroy$=new F;constructor(r,e,n){this.previewInstance=r,this.config=e,this.overlayRef=n,n.keydownEvents().pipe(M(i=>this.config.nzKeyboard&&(i.keyCode===27||i.keyCode===37||i.keyCode===39)&&!Ee(i))).subscribe(i=>{i.preventDefault(),i.keyCode===27&&r.onClose(),i.keyCode===37&&this.prev(),i.keyCode===39&&this.next()}),n.detachments().subscribe(()=>{this.overlayRef.dispose()}),r.closeClick.pipe(ce(1),me(()=>r.animationStateChanged),M(i=>i.phaseName==="done"),O(this.destroy$)).subscribe(()=>{this.close()})}switchTo(r){this.previewInstance.switchTo(r)}next(){this.previewInstance.next()}prev(){this.previewInstance.prev()}close(){this.destroy$.next(),this.overlayRef.dispose()}},Ge=(()=>{class t{injector=s(B);nzConfigService=s(A);directionality=s(ae);preview(e,n,i){return this.display(e,n,i)}display(e,n,i){let o=b(b({},new N),n??{}),m=this.createOverlay(o),c=this.attachPreviewComponent(m,o);c.setImages(e,i);let f=new le(c,o,m);return c.previewRef=f,f}attachPreviewComponent(e,n){let i=B.create({parent:this.injector,providers:[{provide:Te,useValue:e},{provide:N,useValue:n}]}),o=new De(je,null,i);return e.attach(o).instance}createOverlay(e){let n=this.nzConfigService.getConfigForComponent($e)||{};return Ne(this.injector,{scrollStrategy:xe(this.injector),positionStrategy:Re(this.injector),disposeOnNavigation:e.nzCloseOnNavigation??n.nzCloseOnNavigation??!0,direction:e.nzDirection||n.nzDirection||this.directionality.value})}static \u0275fac=function(n){return new(n||t)};static \u0275prov=he({token:t,factory:t.\u0275fac})}return t})(),rt="image",Nt=(()=>{var p;let t,r=[],e=[],n,i=[],o=[],m,c=[],f=[],S,w=[],y=[];return p=class{document=s(U);nzConfigService=s(A);elementRef=s(ge);nzImageService=s(Ge);cdr=s(oe);directionality=s(ae);destroyRef=s(Q);_nzModuleName=rt;nzSrc="";nzSrcset="";nzDisablePreview=u(this,r,!1);nzFallback=(u(this,e),u(this,i,null));nzPlaceholder=(u(this,o),u(this,c,null));nzScaleStep=(u(this,f),u(this,w,null));dir=u(this,y);backLoadImage;status="normal";backLoadDestroy$=new F;parentGroup=s(et,{optional:!0});get previewable(){return!this.nzDisablePreview&&this.status!=="error"}ngOnInit(){this.backLoad(),this.parentGroup&&this.parentGroup.addImage(this),this.directionality&&(this.directionality.change?.pipe(I(this.destroyRef)).subscribe(l=>{this.dir=l,this.cdr.detectChanges()}),this.dir=this.directionality.value)}onPreview(){if(this.previewable)if(this.parentGroup){let l=this.parentGroup.images.filter(d=>d.previewable),a=l.map(d=>({src:d.nzSrc,srcset:d.nzSrcset})),h=l.findIndex(d=>this===d),$=new Map;l.forEach(d=>{$.set(d.nzSrc??d.nzSrcset,d.nzScaleStep??this.parentGroup.nzScaleStep??this.nzScaleStep??se)}),this.nzImageService.preview(a,{nzDirection:this.dir},$).switchTo(h)}else{let l=[{src:this.nzSrc,srcset:this.nzSrcset}];this.nzImageService.preview(l,{nzDirection:this.dir,nzScaleStep:this.nzScaleStep??se})}}getElement(){return this.elementRef}ngOnChanges(l){let{nzSrc:a}=l;a&&(this.getElement().nativeElement.src=a.currentValue,this.backLoad())}backLoad(){this.backLoadImage=this.document.createElement("img"),this.backLoadImage.src=this.nzSrc,this.backLoadImage.srcset=this.nzSrcset,this.status="loading",this.backLoadDestroy$.next(),this.backLoadDestroy$.complete(),this.backLoadDestroy$=new F,this.backLoadImage.complete?(this.status="normal",this.getElement().nativeElement.src=this.nzSrc,this.getElement().nativeElement.srcset=this.nzSrcset):(this.nzPlaceholder?(this.getElement().nativeElement.src=this.nzPlaceholder,this.getElement().nativeElement.srcset=""):(this.getElement().nativeElement.src=this.nzSrc,this.getElement().nativeElement.srcset=this.nzSrcset),G(this.backLoadImage,"load").pipe(O(this.backLoadDestroy$),I(this.destroyRef)).subscribe(()=>{this.status="normal",this.getElement().nativeElement.src=this.nzSrc,this.getElement().nativeElement.srcset=this.nzSrcset}),G(this.backLoadImage,"error").pipe(O(this.backLoadDestroy$),I(this.destroyRef)).subscribe(()=>{this.status="error",this.nzFallback&&(this.getElement().nativeElement.src=this.nzFallback,this.getElement().nativeElement.srcset="")}))}},(()=>{let l=typeof Symbol=="function"&&Symbol.metadata?Object.create(null):void 0;t=[R()],n=[R()],m=[R()],S=[R()],E(null,null,t,{kind:"field",name:"nzDisablePreview",static:!1,private:!1,access:{has:a=>"nzDisablePreview"in a,get:a=>a.nzDisablePreview,set:(a,h)=>{a.nzDisablePreview=h}},metadata:l},r,e),E(null,null,n,{kind:"field",name:"nzFallback",static:!1,private:!1,access:{has:a=>"nzFallback"in a,get:a=>a.nzFallback,set:(a,h)=>{a.nzFallback=h}},metadata:l},i,o),E(null,null,m,{kind:"field",name:"nzPlaceholder",static:!1,private:!1,access:{has:a=>"nzPlaceholder"in a,get:a=>a.nzPlaceholder,set:(a,h)=>{a.nzPlaceholder=h}},metadata:l},c,f),E(null,null,S,{kind:"field",name:"nzScaleStep",static:!1,private:!1,access:{has:a=>"nzScaleStep"in a,get:a=>a.nzScaleStep,set:(a,h)=>{a.nzScaleStep=h}},metadata:l},w,y),l&&Object.defineProperty(p,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:l})})(),j(p,"\u0275fac",function(a){return new(a||p)}),j(p,"\u0275dir",ve({type:p,selectors:[["img","nz-image",""]],hostBindings:function(a,h){a&1&&k("click",function(){return h.onPreview()})},inputs:{nzSrc:"nzSrc",nzSrcset:"nzSrcset",nzDisablePreview:[2,"nzDisablePreview","nzDisablePreview",Ie],nzFallback:"nzFallback",nzPlaceholder:"nzPlaceholder",nzScaleStep:"nzScaleStep"},exportAs:["nzImage"],features:[de]})),p})(),Ft=(()=>{class t{static \u0275fac=function(n){return new(n||t)};static \u0275mod=ze({type:t});static \u0275inj=pe({providers:[Ge],imports:[je]})}return t})();export{et as a,Ge as b,Nt as c,Ft as d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{E as Ee,Fa as Fe,H as Ie,I as q,Ia as Pe,Ja as Ve,Ka as je,La as We,M as P,X as G,a as Te,aa as b,eb as $e,lb as Be,m as Ne,s as U,t as ke,ta as Ae,ub as Qe,v as F,va as D,w as Me,z as Se}from"./chunk-2EB7UV3S.js";import{i as Re}from"./chunk-SIKDYQOR.js";import{Ac as M,Ba as N,Bc as S,Ca as me,Cb as ze,Da as pe,Gb as Ce,Gc as E,Hb as _e,Hc as K,Ib as ge,Ic as L,Jc as xe,Kb as ye,Kc as I,Lc as A,Mb as C,Na as fe,Oa as he,Wc as be,Xb as m,Zb as p,c as se,cc as f,dc as h,ec as u,ed as De,f as j,fa as W,fc as ve,jc as O,kc as x,l as T,lc as we,mc as X,na as le,oa as ce,ob as o,qa as de,r as w,s as z,sa as l,sc as Y,tb as k,vc as r,vd as H,xb as Q,ya as $,yc as Oe,za as B,zb as ue,zc as Z,zd as g}from"./chunk-YGWA6NUS.js";var Ke=["drawerTemplate"];function Le(t,a){if(t&1){let e=X();h(0,"div",9),Y("click",function(){$(e);let _=r(2);return B(_.maskClick())}),u()}if(t&2){let e=r(2);L(e.nzMaskStyle),f("@drawerMaskMotion",void 0)}}function He(t,a){if(t&1&&(O(0),ve(1,"nz-icon",17),x()),t&2){let e=a.$implicit;o(),f("nzType",e)}}function Ue(t,a){if(t&1){let e=X();h(0,"button",15),Y("click",function(){$(e);let _=r(3);return B(_.closeClick())}),C(1,He,2,1,"ng-container",16),u()}if(t&2){let e=r(3);o(),f("nzStringTemplateOutlet",e.nzCloseIcon)}}function qe(t,a){if(t&1&&(O(0),I(1),x()),t&2){let e=r(4);o(),A(e.nzTitle)}}function Ge(t,a){if(t&1&&(h(0,"div",13),C(1,qe,2,1,"ng-container",16),u()),t&2){let e=r(3);o(),f("nzStringTemplateOutlet",e.nzTitle)}}function Je(t,a){if(t&1&&(O(0),I(1),x()),t&2){let e=r(4);o(),A(e.nzExtra)}}function et(t,a){if(t&1&&(h(0,"div",14),C(1,Je,2,1,"ng-container",16),u()),t&2){let e=r(3);o(),f("nzStringTemplateOutlet",e.nzExtra)}}function tt(t,a){if(t&1&&(h(0,"div",10)(1,"div",11),m(2,Ue,2,1,"button",12),m(3,Ge,2,1,"div",13),u(),m(4,et,2,1,"div",14),u()),t&2){let e=r(2);K("ant-drawer-header-close-only",!e.nzTitle),o(2),p(e.nzClosable?2:-1),o(),p(e.nzTitle?3:-1),o(),p(e.nzExtra?4:-1)}}function nt(t,a){}function it(t,a){t&1&&we(0)}function at(t,a){if(t&1&&C(0,it,1,0,"ng-container",18),t&2){let e=r(3);f("ngTemplateOutlet",e.nzContent)("ngTemplateOutletContext",e.templateContext)}}function ot(t,a){if(t&1&&m(0,at,1,2,"ng-container"),t&2){let e=r(2);p(e.isTemplateRef(e.nzContent)?0:-1)}}function rt(t,a){}function st(t,a){if(t&1&&C(0,rt,0,0,"ng-template",19),t&2){let e=r(3);f("ngTemplateOutlet",e.contentFromContentChild)}}function lt(t,a){if(t&1&&m(0,st,1,1,null,19),t&2){let e=r(2);p(e.contentFromContentChild&&(e.isOpen||e.inAnimation)?0:-1)}}function ct(t,a){if(t&1&&(O(0),I(1),x()),t&2){let e=r(3);o(),A(e.nzFooter)}}function dt(t,a){if(t&1&&(h(0,"div",8),C(1,ct,2,1,"ng-container",16),u()),t&2){let e=r(2);o(),f("nzStringTemplateOutlet",e.nzFooter)}}function mt(t,a){if(t&1&&(h(0,"div",1),m(1,Le,1,3,"div",2),h(2,"div")(3,"div",3)(4,"div",4),m(5,tt,5,5,"div",5),h(6,"div",6),C(7,nt,0,0,"ng-template",7),m(8,ot,1,1)(9,lt,1,1),u(),m(10,dt,2,1,"div",8),u()()()()),t&2){let e=r();E("transform",e.offsetTransform)("transition",e.placementChanging?"none":null)("z-index",e.nzZIndex),K("ant-drawer-rtl",e.dir==="rtl")("ant-drawer-open",e.isOpen)("no-mask",!e.nzMask)("ant-drawer-top",e.nzPlacement==="top")("ant-drawer-bottom",e.nzPlacement==="bottom")("ant-drawer-right",e.nzPlacement==="right")("ant-drawer-left",e.nzPlacement==="left"),f("nzNoAnimation",e.nzNoAnimation),o(),p(e.nzMask&&e.isOpen?1:-1),o(),xe(be("ant-drawer-content-wrapper ",e.nzWrapClassName)),E("width",e.width)("height",e.height)("transform",e.transform)("transition",e.placementChanging?"none":null),o(2),E("height",e.isLeftOrRight?"100%":null),o(),p(e.nzTitle||e.nzClosable?5:-1),o(),L(e.nzBodyStyle),o(2),p(e.nzContent?8:9),o(2),p(e.nzFooter?10:-1)}}var pt=(()=>{class t{templateRef=l(Q);static \u0275fac=function(c){return new(c||t)};static \u0275dir=ge({type:t,selectors:[["","nzDrawerContent",""]],exportAs:["nzDrawerContent"]})}return t})(),Xe=378,Ye=736,ft=new de(""),V=class{},ht=300,ut="drawer",Ze=(()=>{var d;let t=V,a,e=[],c=[],_,v=[],R=[],ee,te=[],ne=[],ie,ae=[],oe=[];return d=class extends t{cdr=l(H);nzConfigService=l(Ae);renderer=l(ue);injector=l(N);changeDetectorRef=l(H);focusTrapFactory=l($e);viewContainerRef=l(ze);overlayKeyboardDispatcher=l(Ee);directionality=l(Te);destroyRef=l(pe);_nzModuleName=ut;nzContent;nzCloseIcon="close";nzClosable=!0;nzMaskClosable=z(this,e,!0);nzMask=(z(this,c),z(this,v,!0));nzCloseOnNavigation=(z(this,R),z(this,te,!0));nzNoAnimation=(z(this,ne),!1);nzKeyboard=!0;nzTitle;nzExtra;nzFooter;nzPlacement="right";nzSize="default";nzMaskStyle={};nzBodyStyle={};nzWrapClassName;nzWidth;nzHeight;nzZIndex=1e3;nzOffsetX=0;nzOffsetY=0;componentInstance=null;componentRef=null;set nzVisible(i){this.isOpen=i}get nzVisible(){return this.isOpen}nzOnViewInit=new k;nzOnClose=new k;nzVisibleChange=new k;drawerTemplate;bodyPortalOutlet;contentFromContentChild;previouslyFocusedElement;placementChanging=!1;placementChangeTimeoutId;nzContentParams;nzData;overlayRef;portal;focusTrap;isOpen=!1;inAnimation=!1;templateContext={$implicit:void 0,drawerRef:this};isTemplateRef=G;get offsetTransform(){if(!this.isOpen||this.nzOffsetX+this.nzOffsetY===0)return null;switch(this.nzPlacement){case"left":return`translateX(${this.nzOffsetX}px)`;case"right":return`translateX(-${this.nzOffsetX}px)`;case"top":return`translateY(${this.nzOffsetY}px)`;case"bottom":return`translateY(-${this.nzOffsetY}px)`}}get transform(){if(this.isOpen)return null;switch(this.nzPlacement){case"left":return"translateX(-100%)";case"right":return"translateX(100%)";case"top":return"translateY(-100%)";case"bottom":return"translateY(100%)"}}get width(){if(this.isLeftOrRight){let i=this.nzSize==="large"?Ye:Xe;return this.nzWidth===void 0?b(i):b(this.nzWidth)}return null}get height(){if(!this.isLeftOrRight){let i=this.nzSize==="large"?Ye:Xe;return this.nzHeight===void 0?b(i):b(this.nzHeight)}return null}get isLeftOrRight(){return this.nzPlacement==="left"||this.nzPlacement==="right"}nzAfterOpen=new T;nzAfterClose=new T;get afterOpen(){return this.nzAfterOpen.asObservable()}get afterClose(){return this.nzAfterClose.asObservable()}get isNzContentTemplateRef(){return G(this.nzContent)}nzDirection=z(this,ae,void 0);dir=(z(this,oe),"ltr");document=l(me);constructor(){super(),this.destroyRef.onDestroy(()=>{clearTimeout(this.placementChangeTimeoutId),this.disposeOverlay()})}ngOnInit(){this.directionality.change?.pipe(P(this.destroyRef)).subscribe(i=>{this.dir=i,this.cdr.detectChanges()}),this.dir=this.nzDirection||this.directionality.value,this.attachOverlay(),this.updateOverlayStyle(),this.updateBodyOverflow(),this.templateContext={$implicit:this.nzData||this.nzContentParams,drawerRef:this},this.changeDetectorRef.detectChanges()}ngAfterViewInit(){this.attachBodyContent(),this.nzOnViewInit.observers.length&&setTimeout(()=>{this.nzOnViewInit.emit()})}ngOnChanges(i){let{nzPlacement:n,nzVisible:s}=i;s&&(i.nzVisible.currentValue?this.open():this.close()),n&&!n.isFirstChange()&&this.triggerPlacementChangeCycleOnce()}getAnimationDuration(){return this.nzNoAnimation?0:ht}triggerPlacementChangeCycleOnce(){this.nzNoAnimation||(this.placementChanging=!0,this.changeDetectorRef.markForCheck(),clearTimeout(this.placementChangeTimeoutId),this.placementChangeTimeoutId=setTimeout(()=>{this.placementChanging=!1,this.changeDetectorRef.markForCheck()},this.getAnimationDuration()))}close(i){this.isOpen=!1,this.inAnimation=!0,this.nzVisibleChange.emit(!1),this.updateOverlayStyle(),this.overlayKeyboardDispatcher.remove(this.overlayRef),this.changeDetectorRef.detectChanges(),setTimeout(()=>{this.updateBodyOverflow(),this.restoreFocus(),this.inAnimation=!1,this.nzAfterClose.next(i),this.nzAfterClose.complete(),this.componentInstance=null,this.componentRef=null},this.getAnimationDuration())}open(){this.attachOverlay(),this.isOpen=!0,this.inAnimation=!0,this.nzVisibleChange.emit(!0),this.overlayKeyboardDispatcher.add(this.overlayRef),this.updateOverlayStyle(),this.updateBodyOverflow(),this.savePreviouslyFocusedElement(),this.trapFocus(),this.changeDetectorRef.detectChanges(),setTimeout(()=>{this.inAnimation=!1,this.changeDetectorRef.detectChanges(),this.nzAfterOpen.next()},this.getAnimationDuration())}getContentComponent(){return this.componentInstance}getContentComponentRef(){return this.componentRef}closeClick(){this.nzOnClose.emit()}maskClick(){this.nzMaskClosable&&this.nzMask&&this.nzOnClose.emit()}attachBodyContent(){if(this.bodyPortalOutlet.dispose(),this.nzContent instanceof fe){let i=N.create({parent:this.injector,providers:[{provide:V,useValue:this},{provide:ft,useValue:this.nzData}]}),n=new U(this.nzContent,null,i);this.componentRef=this.bodyPortalOutlet.attachComponentPortal(n),this.componentInstance=this.componentRef.instance,Object.assign(this.componentRef.instance,this.nzData||this.nzContentParams),this.componentRef.changeDetectorRef.detectChanges()}}attachOverlay(){this.overlayRef||(this.portal=new ke(this.drawerTemplate,this.viewContainerRef),this.overlayRef=q(this.injector,{disposeOnNavigation:this.nzCloseOnNavigation,positionStrategy:Ie(this.injector),scrollStrategy:Se(this.injector)}),Fe(this.overlayRef,this.nzZIndex)),this.overlayRef&&!this.overlayRef.hasAttached()&&(this.overlayRef.attach(this.portal),this.overlayRef.keydownEvents().pipe(P(this.destroyRef)).subscribe(i=>{i.keyCode===27&&this.isOpen&&this.nzKeyboard&&this.nzOnClose.emit()}),this.overlayRef.detachments().pipe(P(this.destroyRef)).subscribe(()=>{this.close(),this.disposeOverlay()}))}disposeOverlay(){this.overlayRef?.dispose(),this.overlayRef=null}updateOverlayStyle(){this.overlayRef&&this.overlayRef.overlayElement&&this.renderer.setStyle(this.overlayRef.overlayElement,"pointer-events",this.isOpen?"auto":"none")}updateBodyOverflow(){this.overlayRef&&(this.isOpen?this.overlayRef.getConfig().scrollStrategy.enable():this.overlayRef.getConfig().scrollStrategy.disable())}savePreviouslyFocusedElement(){this.document&&!this.previouslyFocusedElement&&(this.previouslyFocusedElement=this.document.activeElement,this.previouslyFocusedElement&&typeof this.previouslyFocusedElement.blur=="function"&&this.previouslyFocusedElement.blur())}trapFocus(){!this.focusTrap&&this.overlayRef&&this.overlayRef.overlayElement&&(this.focusTrap=this.focusTrapFactory.create(this.overlayRef.overlayElement),this.focusTrap.focusInitialElement())}restoreFocus(){this.previouslyFocusedElement&&typeof this.previouslyFocusedElement.focus=="function"&&(this.previouslyFocusedElement.focus(),this.previouslyFocusedElement=void 0),this.focusTrap&&this.focusTrap.destroy()}},(()=>{let i=typeof Symbol=="function"&&Symbol.metadata?Object.create(t[Symbol.metadata]??null):void 0;a=[D()],_=[D()],ee=[D()],ie=[D()],w(null,null,a,{kind:"field",name:"nzMaskClosable",static:!1,private:!1,access:{has:n=>"nzMaskClosable"in n,get:n=>n.nzMaskClosable,set:(n,s)=>{n.nzMaskClosable=s}},metadata:i},e,c),w(null,null,_,{kind:"field",name:"nzMask",static:!1,private:!1,access:{has:n=>"nzMask"in n,get:n=>n.nzMask,set:(n,s)=>{n.nzMask=s}},metadata:i},v,R),w(null,null,ee,{kind:"field",name:"nzCloseOnNavigation",static:!1,private:!1,access:{has:n=>"nzCloseOnNavigation"in n,get:n=>n.nzCloseOnNavigation,set:(n,s)=>{n.nzCloseOnNavigation=s}},metadata:i},te,ne),w(null,null,ie,{kind:"field",name:"nzDirection",static:!1,private:!1,access:{has:n=>"nzDirection"in n,get:n=>n.nzDirection,set:(n,s)=>{n.nzDirection=s}},metadata:i},ae,oe),i&&Object.defineProperty(d,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})})(),j(d,"\u0275fac",function(n){return new(n||d)}),j(d,"\u0275cmp",Ce({type:d,selectors:[["nz-drawer"]],contentQueries:function(n,s,y){if(n&1&&Oe(y,pt,7,Q),n&2){let re;M(re=S())&&(s.contentFromContentChild=re.first)}},viewQuery:function(n,s){if(n&1&&(Z(Ke,7),Z(F,5)),n&2){let y;M(y=S())&&(s.drawerTemplate=y.first),M(y=S())&&(s.bodyPortalOutlet=y.first)}},inputs:{nzContent:"nzContent",nzCloseIcon:"nzCloseIcon",nzClosable:[2,"nzClosable","nzClosable",g],nzMaskClosable:[2,"nzMaskClosable","nzMaskClosable",g],nzMask:[2,"nzMask","nzMask",g],nzCloseOnNavigation:[2,"nzCloseOnNavigation","nzCloseOnNavigation",g],nzNoAnimation:[2,"nzNoAnimation","nzNoAnimation",g],nzKeyboard:[2,"nzKeyboard","nzKeyboard",g],nzTitle:"nzTitle",nzExtra:"nzExtra",nzFooter:"nzFooter",nzPlacement:"nzPlacement",nzSize:"nzSize",nzMaskStyle:"nzMaskStyle",nzBodyStyle:"nzBodyStyle",nzWrapClassName:"nzWrapClassName",nzWidth:"nzWidth",nzHeight:"nzHeight",nzZIndex:"nzZIndex",nzOffsetX:"nzOffsetX",nzOffsetY:"nzOffsetY",nzVisible:[2,"nzVisible","nzVisible",g]},outputs:{nzOnViewInit:"nzOnViewInit",nzOnClose:"nzOnClose",nzVisibleChange:"nzVisibleChange"},exportAs:["nzDrawer"],features:[ye,he],decls:2,vars:0,consts:[["drawerTemplate",""],[1,"ant-drawer",3,"nzNoAnimation"],[1,"ant-drawer-mask",3,"style"],[1,"ant-drawer-content"],[1,"ant-drawer-wrapper-body"],[1,"ant-drawer-header",3,"ant-drawer-header-close-only"],["cdkScrollable","",1,"ant-drawer-body"],["cdkPortalOutlet",""],[1,"ant-drawer-footer"],[1,"ant-drawer-mask",3,"click"],[1,"ant-drawer-header"],[1,"ant-drawer-header-title"],["aria-label","Close",1,"ant-drawer-close"],[1,"ant-drawer-title"],[1,"ant-drawer-extra"],["aria-label","Close",1,"ant-drawer-close",3,"click"],[4,"nzStringTemplateOutlet"],[3,"nzType"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"ngTemplateOutlet"]],template:function(n,s){n&1&&C(0,mt,11,40,"ng-template",null,0,De)},dependencies:[Qe,We,je,Ve,Pe,Me,F,Re,Ne],encapsulation:2,data:{animation:[Be]},changeDetection:0})),d})(),J=class{overlayRef;options;drawerRef;unsubscribe$=new T;constructor(a,e){this.overlayRef=a,this.options=e;let v=this.options,{nzOnCancel:c}=v,_=se(v,["nzOnCancel"]);this.drawerRef=this.overlayRef.attach(new U(Ze)).instance,this.updateOptions(_),this.drawerRef.savePreviouslyFocusedElement(),this.drawerRef.nzOnViewInit.pipe(W(this.unsubscribe$)).subscribe(()=>{this.drawerRef.open()}),this.drawerRef.nzOnClose.subscribe(()=>{c?c().then(R=>{R!==!1&&this.drawerRef.close()}):this.drawerRef.close()}),this.drawerRef.afterClose.pipe(W(this.unsubscribe$)).subscribe(()=>{this.overlayRef.dispose(),this.drawerRef=null,this.unsubscribe$.next(),this.unsubscribe$.complete()})}getInstance(){return this.drawerRef}updateOptions(a){Object.assign(this.drawerRef,a)}},zt=(()=>{class t{injector=l(N);create(e){return new J(q(this.injector),e).getInstance()}static \u0275fac=function(c){return new(c||t)};static \u0275prov=le({token:t,factory:t.\u0275fac})}return t})(),Lt=(()=>{class t{static \u0275fac=function(c){return new(c||t)};static \u0275mod=_e({type:t});static \u0275inj=ce({providers:[zt],imports:[Ze]})}return t})();export{pt as a,Ze as b,Lt as c};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as ai}from"./chunk-3ODVU46S.js";import"./chunk-HC5KLPHD.js";import{c as Ke}from"./chunk-6J6G7JEP.js";import{c as ii}from"./chunk-M6NZ6C2R.js";import{b as Qe}from"./chunk-MBPB43C6.js";import{d as si,e as ni,f as oi}from"./chunk-CPJTSA6E.js";import{e as qe}from"./chunk-TXAXE73U.js";import"./chunk-442QFABJ.js";import{a as ri,b as li}from"./chunk-SD2HFD54.js";import{h as Gt,i as jt,k as Ut,l as Qt}from"./chunk-U2YWR3HF.js";import"./chunk-PB2LGZNW.js";import{d as Ze,k as Zt,l as ti,m as ei}from"./chunk-K6C5ZIV2.js";import{$b as qt,Db as zt,Ea as B,Fa as F,Fb as ct,Jb as pt,La as je,Ma as Ue,Na as V,Oa as H,Qa as A,Ra as W,Tb as gt,Xb as Kt,Zb as Tt,ac as Mt,dc as Je,fc as Jt}from"./chunk-VZYJ3MSW.js";import"./chunk-HFZLJHYR.js";import{e as Ge}from"./chunk-WUA5JFDD.js";import{h as Ae,m as Xe,n as D,u as Ye}from"./chunk-KRYMOHYF.js";import{$b as K,Cc as Fe,Dc as We,Fb as k,Fc as Oe,Gc as xt,Ha as P,J as $e,Jc as f,Kc as j,Lb as Xt,Lc as bt,Oa as ot,Oc as dt,Pc as ht,Q as ke,Qc as mt,Ra as Et,Wb as z,Yb as T,Zb as pe,a as S,ac as q,ad as Ne,b as G,bc as c,cc as l,cd as Le,dc as a,ea as Pe,ec as p,fa as me,fc as X,gc as L,hd as Be,ic as et,id as R,jc as it,jd as Ve,kb as Ee,l as At,lc as b,na as _t,nb as h,pd as He,rc as v,sa as M,sb as N,tb as ce,tc as rt,uc as m,ud as Yt,vb as Re,vc as Ft,wa as Se,wc as It,xa as De,ya as g,yb as Rt,z as he,za as u,zb as Q}from"./chunk-4BRW6LCZ.js";var $t=class n{api=M(Zt);getInfo(e){return this.api.get(`/api/dashboard/getInfo/${e}`)}update(e,t){return this.api.post(`/api/dashboard/update/${e}`,t)}widgets(e){return this.api.get(`/api/dashboard/widgets/${e}`)}addWidget(e,t){let{x:i,y:s}=t;return this.api.get(`/api/dashboard/addWidget/${e}/${t.widgetKey}/${i}/${s}`)}removeWidget(e,t){return this.api.delete(`/api/dashboard/removeWidget/${e}/${t}`)}updateItemConfig(e,t,i){return this.api.post(`/api/dashboard/updateItemConfig/${e}/${t}`,i)}killPort(e){return this.api.get(`/api/dashboard/killPort/${e}`)}static \u0275fac=function(t){return new(t||n)};static \u0275prov=_t({token:n,factory:n.\u0275fac,providedIn:"root"})};var st=class n{api=M($t);_doc=P(null);items=R(()=>this._doc()?.items??[]);updatedAt=R(()=>this._doc()?.updatedAt??0);widgets=P([]);saveTimer=null;async load(e){try{let t=await he(this.api.getInfo(e));this._doc.set(t);return}catch{this._doc.set({version:1,projectId:e,updatedAt:Date.now(),items:[]})}}setItems(e,t){let i=this._doc();i&&(this._doc.set(G(S({},i),{items:t})),this.scheduleAutoSave(e))}scheduleAutoSave(e,t=1e4){this.saveTimer&&clearTimeout(this.saveTimer),this.saveTimer=setTimeout(()=>{this.flushSave(e).catch(()=>{})},t)}async flushSave(e){this.saveTimer&&(clearTimeout(this.saveTimer),this.saveTimer=null);let t=this._doc();if(!t)return;let i=await he(this.api.update(e,t));this._doc.set(i)}add(e){console.log("add widget",e);let t=this._doc();t&&(this._doc.set(G(S({},t),{items:[...t.items,e]})),setTimeout(()=>{let{x:i,y:s}=e;this.api.addWidget(t.projectId,{widgetKey:e.key,x:i,y:s}).subscribe(o=>{this._doc.set(o),this.getWidgets()})},0))}remove(e){let t=this._doc();t&&this.api.removeWidget(t.projectId,e).subscribe(i=>{this._doc.set(i),this.getWidgets()})}killProcess(e){this.api.killPort(Number(e)).subscribe(t=>{console.log("Killed port",e)})}getWidgets(){let e=this._doc();e&&this.api.widgets(e.projectId).subscribe(t=>{this.widgets.set(t)})}updateConfig(e,t,i){this._doc()&&this.api.updateItemConfig(e,t,i).subscribe(o=>{this._doc.set(o)})}static \u0275fac=function(t){return new(t||n)};static \u0275prov=_t({token:n,factory:n.\u0275fac,providedIn:"root"})};var bi=(n,e)=>e.key;function zi(n,e){if(n&1){let t=b();l(0,"div",5)(1,"div",6)(2,"div",7),p(3,"nz-icon",8),a(),l(4,"div",9)(5,"div",10),f(6),a(),l(7,"div",11),f(8),a()(),l(9,"div",12)(10,"button",13),v("click",function(){let s=g(t).$implicit,o=m();return u(o.addWidget(s))}),p(11,"nz-icon",14),a()()()()}if(n&2){let t=e.$implicit;h(3),c("nzType",t.icon||"appstore"),h(3),j(t.title),h(2),j(t.desc)}}var te=class n{layout=M(st);add=new N;keyword=P("");widgets=this.layout.widgets;filtered=R(()=>{let e=this.keyword().trim().toLowerCase();return e?this.widgets().filter(t=>(t.title+(t.desc??"")).toLowerCase().includes(e)):this.widgets()});constructor(){}addWidget(e){this.add.emit(e)}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=k({type:n,selectors:[["app-add-widget-drawer"]],outputs:{add:"add"},decls:8,vars:1,consts:[[1,"list"],[1,"topbar"],["nzInputPrefix","","nzType","search",1,"search-icon"],["nz-input","","placeholder","",3,"ngModelChange","ngModel"],[1,"items"],[1,"item"],[1,"row"],[1,"icon"],["nzTheme","outline",3,"nzType"],[1,"info"],[1,"name"],[1,"description"],[1,"actions"],["nz-button","","nzType","primary","nzSize","small","nzTooltip","\u6DFB\u52A0\u90E8\u4EF6",3,"click"],["nzType","plus"]],template:function(t,i){t&1&&(l(0,"div",0)(1,"div",1)(2,"nz-input-wrapper"),p(3,"nz-icon",2),l(4,"input",3),v("ngModelChange",function(o){return i.keyword.set(o)}),a()()(),l(5,"div",4),K(6,zi,12,3,"div",5,bi),a()()),t&2&&(h(4),c("ngModel",i.keyword()),h(2),q(i.filtered()))},dependencies:[D,gt,zt,ct,pt,F,B,Mt,Tt,qt,Kt,W,A,V,H,Jt],styles:[".list[_ngcontent-%COMP%]{height:100%;width:100%;display:flex;flex-direction:column}.list[_ngcontent-%COMP%] .topbar[_ngcontent-%COMP%]{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:10px 16px}.list[_ngcontent-%COMP%] .topbar[_ngcontent-%COMP%] nz-input-wrapper[_ngcontent-%COMP%]{width:100%;border-radius:18px}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%]{flex:1 1 auto;overflow:auto;height:0;display:flex;flex-direction:column;gap:8px;padding:8px;overflow-x:hidden;overflow-y:auto}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{border-radius:3px;padding:10px;cursor:pointer}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover, .list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item.active[_ngcontent-%COMP%]{background:var(--app-primary-3)}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%]{display:flex;gap:10px;align-items:center;overflow:hidden;justify-content:space-between}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{font-size:28px;flex:0 0 auto;position:relative;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--app-primary-1)}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .info[_ngcontent-%COMP%]{flex:1 1 auto;display:flex;flex-direction:column;gap:4px;overflow:hidden}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .info[_ngcontent-%COMP%] .name[_ngcontent-%COMP%]{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .info[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{font-size:13px;color:var(--app-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{flex:0 0 auto}"],changeDetection:0})};var ci=["*"];function Ti(n,e){if(n&1&&p(0,"div",0),n&2){let t=e.$index,i=m();c("ngStyle",i.gridRenderer.getGridColumnStyle(t))}}function Mi(n,e){if(n&1&&p(0,"div",1),n&2){let t=e.$index,i=m();c("ngStyle",i.gridRenderer.getGridRowStyle(t))}}function $i(n,e){if(n&1){let t=b();X(0,"div",8),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function ki(n,e){if(n&1){let t=b();X(0,"div",9),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function Pi(n,e){if(n&1){let t=b();X(0,"div",10),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function Si(n,e){if(n&1){let t=b();X(0,"div",11),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function Di(n,e){if(n&1){let t=b();X(0,"div",12),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function Ei(n,e){if(n&1){let t=b();X(0,"div",13),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function Ri(n,e){if(n&1){let t=b();X(0,"div",14),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function Fi(n,e){if(n&1){let t=b();X(0,"div",15),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}var C=(function(n){return n.Fit="fit",n.ScrollVertical="scrollVertical",n.ScrollHorizontal="scrollHorizontal",n.Fixed="fixed",n.VerticalFixed="verticalFixed",n.HorizontalFixed="horizontalFixed",n})(C||{}),ie=(function(n){return n.Always="always",n.OnDragAndResize="onDrag&Resize",n.None="none",n})(ie||{}),_=(function(n){return n.None="none",n.CompactUp="compactUp",n.CompactLeft="compactLeft",n.CompactUpAndLeft="compactUp&Left",n.CompactLeftAndUp="compactLeft&Up",n.CompactRight="compactRight",n.CompactUpAndRight="compactUp&Right",n.CompactRightAndUp="compactRight&Up",n.CompactDown="compactDown",n.CompactDownAndLeft="compactDown&Left",n.CompactLeftAndDown="compactLeft&Down",n.CompactDownAndRight="compactDown&Right",n.CompactRightAndDown="compactRight&Down",n.CompactGrid="compactGrid",n})(_||{}),E=(function(n){return n.LTR="ltr",n.RTL="rtl",n})(E||{}),fe=class{gridster;constructor(e){this.gridster=e}destroy(){this.gridster=null}checkCompact(){this.gridster.$options.compactType!==_.None&&(this.gridster.$options.compactType===_.CompactUp?this.checkCompactMovement("y",-1):this.gridster.$options.compactType===_.CompactLeft?this.checkCompactMovement("x",-1):this.gridster.$options.compactType===_.CompactUpAndLeft?(this.checkCompactMovement("y",-1),this.checkCompactMovement("x",-1)):this.gridster.$options.compactType===_.CompactLeftAndUp?(this.checkCompactMovement("x",-1),this.checkCompactMovement("y",-1)):this.gridster.$options.compactType===_.CompactRight?this.checkCompactMovement("x",1):this.gridster.$options.compactType===_.CompactUpAndRight?(this.checkCompactMovement("y",-1),this.checkCompactMovement("x",1)):this.gridster.$options.compactType===_.CompactRightAndUp?(this.checkCompactMovement("x",1),this.checkCompactMovement("y",-1)):this.gridster.$options.compactType===_.CompactDown?this.checkCompactMovement("y",1):this.gridster.$options.compactType===_.CompactDownAndLeft?(this.checkCompactMovement("y",1),this.checkCompactMovement("x",-1)):this.gridster.$options.compactType===_.CompactDownAndRight?(this.checkCompactMovement("y",1),this.checkCompactMovement("x",1)):this.gridster.$options.compactType===_.CompactLeftAndDown?(this.checkCompactMovement("x",-1),this.checkCompactMovement("y",1)):this.gridster.$options.compactType===_.CompactRightAndDown?(this.checkCompactMovement("x",1),this.checkCompactMovement("y",1)):this.gridster.$options.compactType===_.CompactGrid&&this.checkCompactGrid())}checkCompactItem(e){this.gridster.$options.compactType!==_.None&&(this.gridster.$options.compactType===_.CompactUp?this.moveTillCollision(e,"y",-1):this.gridster.$options.compactType===_.CompactLeft?this.moveTillCollision(e,"x",-1):this.gridster.$options.compactType===_.CompactUpAndLeft?(this.moveTillCollision(e,"y",-1),this.moveTillCollision(e,"x",-1)):this.gridster.$options.compactType===_.CompactLeftAndUp?(this.moveTillCollision(e,"x",-1),this.moveTillCollision(e,"y",-1)):this.gridster.$options.compactType===_.CompactUpAndRight?(this.moveTillCollision(e,"y",-1),this.moveTillCollision(e,"x",1)):this.gridster.$options.compactType===_.CompactDown?this.moveTillCollision(e,"y",1):this.gridster.$options.compactType===_.CompactDownAndLeft?(this.moveTillCollision(e,"y",1),this.moveTillCollision(e,"x",-1)):this.gridster.$options.compactType===_.CompactLeftAndDown?(this.moveTillCollision(e,"x",-1),this.moveTillCollision(e,"y",1)):this.gridster.$options.compactType===_.CompactDownAndRight?(this.moveTillCollision(e,"y",1),this.moveTillCollision(e,"x",1)):this.gridster.$options.compactType===_.CompactRightAndDown?(this.moveTillCollision(e,"x",1),this.moveTillCollision(e,"y",1)):this.gridster.$options.compactType===_.CompactGrid&&this.moveToGridPosition(e))}checkCompactMovement(e,t){let i=!1;this.gridster.grid.forEach(s=>{s.$item.compactEnabled!==!1&&this.moveTillCollision(s.$item,e,t)&&(i=!0,s.item[e]=s.$item[e],s.itemChanged())}),i&&this.checkCompact()}moveTillCollision(e,t,i){return e[t]+=i,this.gridster.checkCollision(e)?(e[t]-=i,!1):(this.moveTillCollision(e,t,i),!0)}checkCompactGrid(){let e=this.gridster.grid.filter(o=>o.$item.compactEnabled!==!1).sort((o,r)=>o.$item.y!==r.$item.y?o.$item.y-r.$item.y:o.$item.x-r.$item.x),t=0,i=0,s=0;e.forEach(o=>{let r=o.$item;i+r.cols>this.gridster.columns&&(t=s,i=0,s=t);let d=r.x,y=r.y;r.x=i,r.y=t,(d!==r.x||y!==r.y)&&(o.item.x=r.x,o.item.y=r.y,o.itemChanged()),i+=r.cols,s=Math.max(s,t+r.rows)})}moveToGridPosition(e){let t=0,i=0,s=0,o=this.gridster.grid.filter(r=>r.$item!==e).sort((r,d)=>r.$item.y!==d.$item.y?r.$item.y-d.$item.y:r.$item.x-d.$item.x);for(let r of o){let d=r.$item;i+d.cols>this.gridster.columns&&(t=s,i=0,s=t),t<d.y+d.rows&&t+e.rows>d.y&&i<d.x+d.cols&&i+e.cols>d.x?(i=d.x+d.cols,t=d.y,s=Math.max(s,t+d.rows)):(i+=d.cols,s=Math.max(s,t+d.rows))}i+e.cols>this.gridster.columns&&(t=s,i=0),e.x=i,e.y=t}},Wi={gridType:C.Fit,scale:1,fixedColWidth:250,fixedRowHeight:250,keepFixedHeightInMobile:!1,keepFixedWidthInMobile:!1,setGridSize:!1,compactType:_.None,mobileBreakpoint:640,useBodyForBreakpoint:!1,allowMultiLayer:!1,defaultLayerIndex:0,maxLayerIndex:2,baseLayerIndex:1,minCols:1,maxCols:100,minRows:1,maxRows:100,defaultItemCols:1,defaultItemRows:1,itemAspectRatio:void 0,maxItemCols:50,maxItemRows:50,minItemCols:1,minItemRows:1,minItemArea:1,maxItemArea:2500,addEmptyRowsCount:0,rowHeightRatio:1,margin:10,outerMargin:!0,outerMarginTop:null,outerMarginRight:null,outerMarginBottom:null,outerMarginLeft:null,useTransformPositioning:!0,scrollSensitivity:10,scrollSpeed:20,initCallback:void 0,destroyCallback:void 0,gridSizeChangedCallback:void 0,itemChangeCallback:void 0,itemResizeCallback:void 0,itemInitCallback:void 0,itemRemovedCallback:void 0,itemValidateCallback:void 0,enableEmptyCellClick:!1,enableEmptyCellContextMenu:!1,enableEmptyCellDrop:!1,enableEmptyCellDrag:!1,enableOccupiedCellDrop:!1,emptyCellClickCallback:void 0,emptyCellContextMenuCallback:void 0,emptyCellDropCallback:void 0,emptyCellDragCallback:void 0,emptyCellDragMaxCols:50,emptyCellDragMaxRows:50,ignoreMarginInRow:!1,draggable:{delayStart:0,enabled:!1,ignoreContentClass:"gridster-item-content",ignoreContent:!1,dragHandleClass:"drag-handler",stop:void 0,start:void 0,dropOverItems:!1,dropOverItemsCallback:void 0},resizable:{delayStart:0,enabled:!1,handles:{s:!0,e:!0,n:!0,w:!0,se:!0,ne:!0,sw:!0,nw:!0},stop:void 0,start:void 0},swap:!0,swapWhileDragging:!1,pushItems:!1,disablePushOnDrag:!1,disablePushOnResize:!1,pushDirections:{north:!0,east:!0,south:!0,west:!0},pushResizeItems:!1,displayGrid:ie.OnDragAndResize,disableWindowResize:!1,disableWarnings:!1,scrollToNewItems:!1,disableScrollHorizontal:!1,disableScrollVertical:!1,enableBoundaryControl:!1,disableAutoPositionOnConflict:!1,dirType:E.LTR},O=class n{static merge(e,t,i){for(let s in t)t[s]!==void 0&&i.hasOwnProperty(s)&&(typeof t[s]=="object"?(s in e||(e[s]={}),e[s]=n.merge(e[s],t[s],i[s])):e[s]=t[s]);return e}static checkTouchEvent(e){e.clientX===void 0&&e.touches&&(e.touches&&e.touches.length?(e.clientX=e.touches[0].clientX,e.clientY=e.touches[0].clientY):e.changedTouches&&e.changedTouches.length&&(e.clientX=e.changedTouches[0].clientX,e.clientY=e.changedTouches[0].clientY))}static checkContentClassForEvent(e,t){if(e.$options.draggable.ignoreContent){if(!n.checkDragHandleClass(t.target,t.currentTarget,e.$options.draggable.dragHandleClass,e.$options.draggable.ignoreContentClass))return!0}else if(n.checkContentClass(t.target,t.currentTarget,e.$options.draggable.ignoreContentClass))return!0;return!1}static checkContentClassForEmptyCellClickEvent(e,t){return n.checkContentClass(t.target,t.currentTarget,e.$options.draggable.ignoreContentClass)||n.checkContentClass(t.target,t.currentTarget,e.$options.draggable.dragHandleClass)}static checkDragHandleClass(e,t,i,s){if(!e||e===t)return!1;if(e.hasAttribute("class")){let o=e.getAttribute("class").split(" ");if(o.indexOf(i)>-1)return!0;if(o.indexOf(s)>-1)return!1}return n.checkDragHandleClass(e.parentNode,t,i,s)}static checkContentClass(e,t,i){return!e||e===t?!1:e.hasAttribute("class")&&e.getAttribute("class").split(" ").indexOf(i)>-1?!0:n.checkContentClass(e.parentNode,t,i)}static compareItems(e,t){return e.y>t.y?-1:e.y<t.y?1:e.x>t.x?-1:1}},Ce=class{gridster;initialItem;removeEmptyCellClickListenerFn;removeEmptyCellTouchendListenerFn;removeEmptyCellContextMenuListenerFn;removeEmptyCellDropListenerFn;removeEmptyCellMousedownListenerFn;removeEmptyCellTouchstartListenerFn;removeWindowMousemoveListenerFn;removeWindowTouchmoveListenerFn;removeWindowMouseupListenerFn;removeWindowTouchendListenerFn;removeEmptyCellDragoverListenerFn;removeDocumentDragendListenerFn;constructor(e){this.gridster=e}destroy(){this.gridster.previewStyle&&this.gridster.previewStyle(),this.gridster.movingItem=null,this.initialItem=this.gridster=null,this.removeDocumentDragendListenerFn&&(this.removeDocumentDragendListenerFn(),this.removeDocumentDragendListenerFn=null)}updateOptions(){this.gridster.$options.enableEmptyCellClick&&!this.removeEmptyCellClickListenerFn&&this.gridster.options.emptyCellClickCallback?(this.removeEmptyCellClickListenerFn=this.gridster.renderer.listen(this.gridster.el,"click",this.emptyCellClickCb),this.removeEmptyCellTouchendListenerFn=this.gridster.renderer.listen(this.gridster.el,"touchend",this.emptyCellClickCb)):!this.gridster.$options.enableEmptyCellClick&&this.removeEmptyCellClickListenerFn&&this.removeEmptyCellTouchendListenerFn&&(this.removeEmptyCellClickListenerFn(),this.removeEmptyCellTouchendListenerFn(),this.removeEmptyCellClickListenerFn=null,this.removeEmptyCellTouchendListenerFn=null),this.gridster.$options.enableEmptyCellContextMenu&&!this.removeEmptyCellContextMenuListenerFn&&this.gridster.options.emptyCellContextMenuCallback?this.removeEmptyCellContextMenuListenerFn=this.gridster.renderer.listen(this.gridster.el,"contextmenu",this.emptyCellContextMenuCb):!this.gridster.$options.enableEmptyCellContextMenu&&this.removeEmptyCellContextMenuListenerFn&&(this.removeEmptyCellContextMenuListenerFn(),this.removeEmptyCellContextMenuListenerFn=null),this.gridster.$options.enableEmptyCellDrop&&!this.removeEmptyCellDropListenerFn&&this.gridster.options.emptyCellDropCallback?(this.removeEmptyCellDropListenerFn=this.gridster.renderer.listen(this.gridster.el,"drop",this.emptyCellDragDrop),this.gridster.zone.runOutsideAngular(()=>{this.removeEmptyCellDragoverListenerFn=this.gridster.renderer.listen(this.gridster.el,"dragover",this.emptyCellDragOver)}),this.removeDocumentDragendListenerFn=this.gridster.renderer.listen("document","dragend",()=>{this.gridster.movingItem=null,this.gridster.previewStyle()})):!this.gridster.$options.enableEmptyCellDrop&&this.removeEmptyCellDropListenerFn&&this.removeEmptyCellDragoverListenerFn&&this.removeDocumentDragendListenerFn&&(this.removeEmptyCellDropListenerFn(),this.removeEmptyCellDragoverListenerFn(),this.removeDocumentDragendListenerFn(),this.removeEmptyCellDragoverListenerFn=null,this.removeEmptyCellDropListenerFn=null,this.removeDocumentDragendListenerFn=null),this.gridster.$options.enableEmptyCellDrag&&!this.removeEmptyCellMousedownListenerFn&&this.gridster.options.emptyCellDragCallback?(this.removeEmptyCellMousedownListenerFn=this.gridster.renderer.listen(this.gridster.el,"mousedown",this.emptyCellMouseDown),this.removeEmptyCellTouchstartListenerFn=this.gridster.renderer.listen(this.gridster.el,"touchstart",this.emptyCellMouseDown)):!this.gridster.$options.enableEmptyCellDrag&&this.removeEmptyCellMousedownListenerFn&&this.removeEmptyCellTouchstartListenerFn&&(this.removeEmptyCellMousedownListenerFn(),this.removeEmptyCellTouchstartListenerFn(),this.removeEmptyCellMousedownListenerFn=null,this.removeEmptyCellTouchstartListenerFn=null)}emptyCellClickCb=e=>{if(!this.gridster||this.gridster.movingItem||O.checkContentClassForEmptyCellClickEvent(this.gridster,e))return;let t=this.getValidItemFromEvent(e);t&&(this.gridster.options.emptyCellClickCallback&&this.gridster.options.emptyCellClickCallback(e,t),this.gridster.cdRef.markForCheck())};emptyCellContextMenuCb=e=>{if(this.gridster.movingItem||O.checkContentClassForEmptyCellClickEvent(this.gridster,e))return;e.preventDefault(),e.stopPropagation();let t=this.getValidItemFromEvent(e);t&&(this.gridster.options.emptyCellContextMenuCallback&&this.gridster.options.emptyCellContextMenuCallback(e,t),this.gridster.cdRef.markForCheck())};emptyCellDragDrop=e=>{let t=this.getValidItemFromEvent(e);t&&(this.gridster.options.emptyCellDropCallback&&this.gridster.options.emptyCellDropCallback(e,t),this.gridster.cdRef.markForCheck())};emptyCellDragOver=e=>{e.preventDefault(),e.stopPropagation();let t=this.getValidItemFromEvent(e);t?(e.dataTransfer&&(e.dataTransfer.dropEffect="move"),this.gridster.movingItem=t):(e.dataTransfer&&(e.dataTransfer.dropEffect="none"),this.gridster.movingItem=null),this.gridster.previewStyle()};emptyCellMouseDown=e=>{if(O.checkContentClassForEmptyCellClickEvent(this.gridster,e))return;e.preventDefault(),e.stopPropagation();let t=this.getValidItemFromEvent(e);!t||e.buttons!==1&&!(e instanceof TouchEvent)||(this.initialItem=t,this.gridster.movingItem=t,this.gridster.previewStyle(),this.gridster.zone.runOutsideAngular(()=>{this.removeWindowMousemoveListenerFn=this.gridster.renderer.listen("window","mousemove",this.emptyCellMouseMove),this.removeWindowTouchmoveListenerFn=this.gridster.renderer.listen("window","touchmove",this.emptyCellMouseMove)}),this.removeWindowMouseupListenerFn=this.gridster.renderer.listen("window","mouseup",this.emptyCellMouseUp),this.removeWindowTouchendListenerFn=this.gridster.renderer.listen("window","touchend",this.emptyCellMouseUp))};emptyCellMouseMove=e=>{e.preventDefault(),e.stopPropagation();let t=this.getValidItemFromEvent(e,this.initialItem);t&&(this.gridster.movingItem=t,this.gridster.previewStyle())};emptyCellMouseUp=e=>{this.removeWindowMousemoveListenerFn(),this.removeWindowTouchmoveListenerFn(),this.removeWindowMouseupListenerFn(),this.removeWindowTouchendListenerFn();let t=this.getValidItemFromEvent(e,this.initialItem);t&&(this.gridster.movingItem=t),this.gridster.options.emptyCellDragCallback&&this.gridster.movingItem&&this.gridster.options.emptyCellDragCallback(e,this.gridster.movingItem),setTimeout(()=>{this.initialItem=null,this.gridster&&(this.gridster.movingItem=null,this.gridster.previewStyle())}),this.gridster.cdRef.markForCheck()};getPixelsX(e,t){let i=this.gridster.options.scale;return i?(e.clientX-t.left)/i+this.gridster.el.scrollLeft-this.gridster.gridRenderer.getLeftMargin():e.clientX+this.gridster.el.scrollLeft-t.left-this.gridster.gridRenderer.getLeftMargin()}getPixelsY(e,t){let i=this.gridster.options.scale;return i?(e.clientY-t.top)/i+this.gridster.el.scrollTop-this.gridster.gridRenderer.getTopMargin():e.clientY+this.gridster.el.scrollTop-t.top-this.gridster.gridRenderer.getTopMargin()}getValidItemFromEvent(e,t){e.preventDefault(),e.stopPropagation(),O.checkTouchEvent(e);let i=this.gridster.el.getBoundingClientRect(),s=this.getPixelsX(e,i),o=this.getPixelsY(e,i),r={x:this.gridster.pixelsToPositionX(s,Math.floor,!0),y:this.gridster.pixelsToPositionY(o,Math.floor,!0),cols:this.gridster.$options.defaultItemCols,rows:this.gridster.$options.defaultItemRows};if(t&&(r.cols=Math.min(Math.abs(t.x-r.x)+1,this.gridster.$options.emptyCellDragMaxCols),r.rows=Math.min(Math.abs(t.y-r.y)+1,this.gridster.$options.emptyCellDragMaxRows),t.x<r.x?r.x=t.x:t.x-r.x>this.gridster.$options.emptyCellDragMaxCols-1&&(r.x=this.gridster.movingItem?this.gridster.movingItem.x:0),t.y<r.y?r.y=t.y:t.y-r.y>this.gridster.$options.emptyCellDragMaxRows-1&&(r.y=this.gridster.movingItem?this.gridster.movingItem.y:0)),!(!this.gridster.$options.enableOccupiedCellDrop&&this.gridster.checkCollision(r)))return r}},we=class{gridster;lastGridColumnStyles={};lastGridRowStyles={};constructor(e){this.gridster=e}destroy(){this.gridster=null}updateItem(e,t,i){if(this.gridster.mobile)this.clearCellPosition(i,e),this.gridster.$options.keepFixedHeightInMobile?i.setStyle(e,"height",(t.rows-1)*this.gridster.$options.margin+t.rows*this.gridster.$options.fixedRowHeight+"px"):i.setStyle(e,"height",t.rows*this.gridster.curWidth/t.cols+"px"),this.gridster.$options.keepFixedWidthInMobile?i.setStyle(e,"width",this.gridster.$options.fixedColWidth+"px"):i.setStyle(e,"width",""),i.setStyle(e,"margin-bottom",this.gridster.$options.margin+"px"),i.setStyle(e,E.LTR?"margin-right":"margin-left","");else{let s=Math.round(this.gridster.curColWidth*t.x),o=Math.round(this.gridster.curRowHeight*t.y),r=this.gridster.curColWidth*t.cols-this.gridster.$options.margin,d=this.gridster.curRowHeight*t.rows-this.gridster.$options.margin;this.setCellPosition(i,e,s,o),i.setStyle(e,"width",r+"px"),i.setStyle(e,"height",d+"px");let y=null,w=null;this.gridster.$options.outerMargin&&(this.gridster.rows===t.rows+t.y&&(this.gridster.$options.outerMarginBottom!==null?y=this.gridster.$options.outerMarginBottom+"px":y=this.gridster.$options.margin+"px"),this.gridster.columns===t.cols+t.x&&(this.gridster.$options.outerMarginBottom!==null?w=this.gridster.$options.outerMarginRight+"px":w=this.gridster.$options.margin+"px")),i.setStyle(e,"margin-bottom",y),i.setStyle(e,this.gridster.$options.dirType===E.LTR?"margin-right":"margin-left",w)}}updateGridster(){let e="",t="",i="",s="";if(this.gridster.$options.gridType===C.Fit)e=C.Fit,t=C.ScrollVertical,i=C.ScrollHorizontal,s=C.Fixed;else if(this.gridster.$options.gridType===C.ScrollVertical)this.gridster.curRowHeight=this.gridster.curColWidth*this.gridster.$options.rowHeightRatio,e=C.ScrollVertical,t=C.Fit,i=C.ScrollHorizontal,s=C.Fixed;else if(this.gridster.$options.gridType===C.ScrollHorizontal){let o=this.gridster.$options.rowHeightRatio,r=o>=1?o:o+1;this.gridster.curColWidth=this.gridster.curRowHeight*r,e=C.ScrollHorizontal,t=C.Fit,i=C.ScrollVertical,s=C.Fixed}else this.gridster.$options.gridType===C.Fixed?(this.gridster.curColWidth=this.gridster.$options.fixedColWidth+(this.gridster.$options.ignoreMarginInRow?0:this.gridster.$options.margin),this.gridster.curRowHeight=this.gridster.$options.fixedRowHeight+(this.gridster.$options.ignoreMarginInRow?0:this.gridster.$options.margin),e=C.Fixed,t=C.Fit,i=C.ScrollVertical,s=C.ScrollHorizontal):this.gridster.$options.gridType===C.VerticalFixed?(this.gridster.curRowHeight=this.gridster.$options.fixedRowHeight+(this.gridster.$options.ignoreMarginInRow?0:this.gridster.$options.margin),e=C.ScrollVertical,t=C.Fit,i=C.ScrollHorizontal,s=C.Fixed):this.gridster.$options.gridType===C.HorizontalFixed&&(this.gridster.curColWidth=this.gridster.$options.fixedColWidth+(this.gridster.$options.ignoreMarginInRow?0:this.gridster.$options.margin),e=C.ScrollHorizontal,t=C.Fit,i=C.ScrollVertical,s=C.Fixed);this.gridster.mobile||this.gridster.$options.setGridSize&&this.gridster.$options.gridType!==C.Fit?this.gridster.renderer.removeClass(this.gridster.el,e):this.gridster.renderer.addClass(this.gridster.el,e),this.gridster.renderer.removeClass(this.gridster.el,t),this.gridster.renderer.removeClass(this.gridster.el,i),this.gridster.renderer.removeClass(this.gridster.el,s)}getGridColumnStyle(e){let t={left:this.gridster.curColWidth*e,width:this.gridster.curColWidth-this.gridster.$options.margin,height:this.gridster.gridRows.length*this.gridster.curRowHeight-this.gridster.$options.margin,style:{}};t.style=G(S({},this.getLeftPosition(t.left)),{width:t.width+"px",height:t.height+"px"});let i=this.lastGridColumnStyles[e];return i&&i.left===t.left&&i.width===t.width&&i.height===t.height?i.style:(this.lastGridColumnStyles[e]=t,t.style)}getGridRowStyle(e){let t={top:this.gridster.curRowHeight*e,width:this.gridster.gridColumns.length*this.gridster.curColWidth+this.gridster.$options.margin,height:this.gridster.curRowHeight-this.gridster.$options.margin,style:{}};t.style=G(S({},this.getTopPosition(t.top)),{width:t.width+"px",height:t.height+"px"});let i=this.lastGridRowStyles[e];return i&&i.top===t.top&&i.width===t.width&&i.height===t.height?i.style:(this.lastGridRowStyles[e]=t,t.style)}getLeftPosition(e){let t=this.gridster.$options.dirType===E.RTL?-e:e;return this.gridster.$options.useTransformPositioning?{transform:"translateX("+t+"px)"}:{left:this.getLeftMargin()+t+"px"}}getTopPosition(e){return this.gridster.$options.useTransformPositioning?{transform:"translateY("+e+"px)"}:{top:this.getTopMargin()+e+"px"}}clearCellPosition(e,t){this.gridster.$options.useTransformPositioning?e.setStyle(t,"transform",""):(e.setStyle(t,"top",""),e.setStyle(t,"left",""))}setCellPosition(e,t,i,s){let o=this.gridster.$options.dirType===E.RTL?-i:i;if(this.gridster.$options.useTransformPositioning){let r="translate3d("+o+"px, "+s+"px, 0)";e.setStyle(t,"transform",r)}else e.setStyle(t,"left",this.getLeftMargin()+o+"px"),e.setStyle(t,"top",this.getTopMargin()+s+"px")}getLeftMargin(){return this.gridster.$options.outerMargin?this.gridster.$options.outerMarginLeft!==null?this.gridster.$options.outerMarginLeft:this.gridster.$options.margin:0}getTopMargin(){return this.gridster.$options.outerMargin?this.gridster.$options.outerMarginTop!==null?this.gridster.$options.outerMarginTop:this.gridster.$options.margin:0}},ue=(()=>{class n{renderer;gridRenderer;el;constructor(t,i){this.renderer=i,this.el=t.nativeElement}previewStyle(t){t?(this.renderer.setStyle(this.el,"display","block"),this.gridRenderer.updateItem(this.el,t,this.renderer)):this.renderer.setStyle(this.el,"display","")}static \u0275fac=function(i){return new(i||n)(Q(Et),Q(Rt))};static \u0275cmp=k({type:n,selectors:[["gridster-preview"]],inputs:{gridRenderer:"gridRenderer"},decls:0,vars:0,template:function(i,s){},styles:[`gridster-preview{position:absolute;display:none;background:#00000026}
|
|
1
|
+
import{a as ai}from"./chunk-BXZVX5KD.js";import"./chunk-DRV2KPHO.js";import{c as Ke}from"./chunk-TPVKLECM.js";import{c as ii}from"./chunk-RLH7DAA2.js";import{b as Qe}from"./chunk-PRKDURHI.js";import{d as si,e as ni,f as oi}from"./chunk-JFR7U5DE.js";import{e as qe}from"./chunk-5Y7KNVNN.js";import"./chunk-RKKAY5CD.js";import{a as ri,b as li}from"./chunk-IVX3LVU4.js";import{h as Gt,i as jt,k as Ut,l as Qt}from"./chunk-IX6UZA7J.js";import"./chunk-GYXK6ZZT.js";import{a as ei}from"./chunk-7VJKEZTT.js";import{c as Je,e as Jt}from"./chunk-S6BY2OTR.js";import{d as Ze,k as Zt,l as ti}from"./chunk-JIVQNGBJ.js";import{Ia as B,Ib as zt,Ja as F,Kb as ct,Ob as pt,Pa as je,Qa as Ue,Ra as V,Sa as H,Ua as A,Va as W,Yb as gt,ac as Kt,cc as Tt,ec as qt,fc as Mt}from"./chunk-2EB7UV3S.js";import"./chunk-HFZLJHYR.js";import{e as Ge}from"./chunk-X6PRUZ5G.js";import{h as Ae,m as Xe,n as D,u as Ye}from"./chunk-SIKDYQOR.js";import{Ab as Q,Dc as Fe,Ec as We,Gb as k,Gc as Oe,Ha as P,Hc as xt,J as $e,Kc as f,Lc as j,Mb as Xt,Mc as bt,Oa as ot,Pc as dt,Q as ke,Qc as ht,Ra as Et,Rc as mt,Xb as z,Zb as T,_b as pe,a as S,ac as K,b as G,bc as q,bd as Ne,cc as c,dc as l,dd as Le,ea as Pe,ec as a,fa as me,fc as p,gc as X,hc as L,id as Be,jc as et,jd as R,kb as Ee,kc as it,kd as Ve,l as At,mc as b,na as _t,ob as h,qd as He,sa as M,sc as v,tb as N,ub as ce,uc as rt,vc as m,vd as Yt,wa as Se,wb as Re,wc as Ft,xa as De,xc as It,ya as g,z as he,za as u,zb as Rt}from"./chunk-YGWA6NUS.js";var $t=class n{api=M(Zt);getInfo(e){return this.api.get(`/api/dashboard/getInfo/${e}`)}update(e,t){return this.api.post(`/api/dashboard/update/${e}`,t)}widgets(e){return this.api.get(`/api/dashboard/widgets/${e}`)}addWidget(e,t){let{x:i,y:s}=t;return this.api.get(`/api/dashboard/addWidget/${e}/${t.widgetKey}/${i}/${s}`)}removeWidget(e,t){return this.api.delete(`/api/dashboard/removeWidget/${e}/${t}`)}updateItemConfig(e,t,i){return this.api.post(`/api/dashboard/updateItemConfig/${e}/${t}`,i)}killPort(e){return this.api.get(`/api/dashboard/killPort/${e}`)}static \u0275fac=function(t){return new(t||n)};static \u0275prov=_t({token:n,factory:n.\u0275fac,providedIn:"root"})};var st=class n{api=M($t);_doc=P(null);items=R(()=>this._doc()?.items??[]);updatedAt=R(()=>this._doc()?.updatedAt??0);widgets=P([]);saveTimer=null;async load(e){try{let t=await he(this.api.getInfo(e));this._doc.set(t);return}catch{this._doc.set({version:1,projectId:e,updatedAt:Date.now(),items:[]})}}setItems(e,t){let i=this._doc();i&&(this._doc.set(G(S({},i),{items:t})),this.scheduleAutoSave(e))}scheduleAutoSave(e,t=1e4){this.saveTimer&&clearTimeout(this.saveTimer),this.saveTimer=setTimeout(()=>{this.flushSave(e).catch(()=>{})},t)}async flushSave(e){this.saveTimer&&(clearTimeout(this.saveTimer),this.saveTimer=null);let t=this._doc();if(!t)return;let i=await he(this.api.update(e,t));this._doc.set(i)}add(e){console.log("add widget",e);let t=this._doc();t&&(this._doc.set(G(S({},t),{items:[...t.items,e]})),setTimeout(()=>{let{x:i,y:s}=e;this.api.addWidget(t.projectId,{widgetKey:e.key,x:i,y:s}).subscribe(o=>{this._doc.set(o),this.getWidgets()})},0))}remove(e){let t=this._doc();t&&this.api.removeWidget(t.projectId,e).subscribe(i=>{this._doc.set(i),this.getWidgets()})}killProcess(e){this.api.killPort(Number(e)).subscribe(t=>{console.log("Killed port",e)})}getWidgets(){let e=this._doc();e&&this.api.widgets(e.projectId).subscribe(t=>{this.widgets.set(t)})}updateConfig(e,t,i){this._doc()&&this.api.updateItemConfig(e,t,i).subscribe(o=>{this._doc.set(o)})}static \u0275fac=function(t){return new(t||n)};static \u0275prov=_t({token:n,factory:n.\u0275fac,providedIn:"root"})};var bi=(n,e)=>e.key;function zi(n,e){if(n&1){let t=b();l(0,"div",5)(1,"div",6)(2,"div",7),p(3,"nz-icon",8),a(),l(4,"div",9)(5,"div",10),f(6),a(),l(7,"div",11),f(8),a()(),l(9,"div",12)(10,"button",13),v("click",function(){let s=g(t).$implicit,o=m();return u(o.addWidget(s))}),p(11,"nz-icon",14),a()()()()}if(n&2){let t=e.$implicit;h(3),c("nzType",t.icon||"appstore"),h(3),j(t.title),h(2),j(t.desc)}}var te=class n{layout=M(st);add=new N;keyword=P("");widgets=this.layout.widgets;filtered=R(()=>{let e=this.keyword().trim().toLowerCase();return e?this.widgets().filter(t=>(t.title+(t.desc??"")).toLowerCase().includes(e)):this.widgets()});constructor(){}addWidget(e){this.add.emit(e)}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=k({type:n,selectors:[["app-add-widget-drawer"]],outputs:{add:"add"},decls:8,vars:1,consts:[[1,"list"],[1,"topbar"],["nzInputPrefix","","nzType","search",1,"search-icon"],["nz-input","","placeholder","",3,"ngModelChange","ngModel"],[1,"items"],[1,"item"],[1,"row"],[1,"icon"],["nzTheme","outline",3,"nzType"],[1,"info"],[1,"name"],[1,"description"],[1,"actions"],["nz-button","","nzType","primary","nzSize","small","nzTooltip","\u6DFB\u52A0\u90E8\u4EF6",3,"click"],["nzType","plus"]],template:function(t,i){t&1&&(l(0,"div",0)(1,"div",1)(2,"nz-input-wrapper"),p(3,"nz-icon",2),l(4,"input",3),v("ngModelChange",function(o){return i.keyword.set(o)}),a()()(),l(5,"div",4),K(6,zi,12,3,"div",5,bi),a()()),t&2&&(h(4),c("ngModel",i.keyword()),h(2),q(i.filtered()))},dependencies:[D,gt,zt,ct,pt,F,B,Mt,Tt,qt,Kt,W,A,V,H,Jt],styles:[".list[_ngcontent-%COMP%]{height:100%;width:100%;display:flex;flex-direction:column}.list[_ngcontent-%COMP%] .topbar[_ngcontent-%COMP%]{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:10px 16px}.list[_ngcontent-%COMP%] .topbar[_ngcontent-%COMP%] nz-input-wrapper[_ngcontent-%COMP%]{width:100%;border-radius:18px}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%]{flex:1 1 auto;overflow:auto;height:0;display:flex;flex-direction:column;gap:8px;padding:8px;overflow-x:hidden;overflow-y:auto}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{border-radius:3px;padding:10px;cursor:pointer}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:hover, .list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item.active[_ngcontent-%COMP%]{background:var(--app-primary-3)}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%]{display:flex;gap:10px;align-items:center;overflow:hidden;justify-content:space-between}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{font-size:28px;flex:0 0 auto;position:relative;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--app-primary-1)}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .info[_ngcontent-%COMP%]{flex:1 1 auto;display:flex;flex-direction:column;gap:4px;overflow:hidden}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .info[_ngcontent-%COMP%] .name[_ngcontent-%COMP%]{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .info[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{font-size:13px;color:var(--app-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list[_ngcontent-%COMP%] .items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{flex:0 0 auto}"],changeDetection:0})};var ci=["*"];function Ti(n,e){if(n&1&&p(0,"div",0),n&2){let t=e.$index,i=m();c("ngStyle",i.gridRenderer.getGridColumnStyle(t))}}function Mi(n,e){if(n&1&&p(0,"div",1),n&2){let t=e.$index,i=m();c("ngStyle",i.gridRenderer.getGridRowStyle(t))}}function $i(n,e){if(n&1){let t=b();X(0,"div",8),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function ki(n,e){if(n&1){let t=b();X(0,"div",9),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function Pi(n,e){if(n&1){let t=b();X(0,"div",10),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function Si(n,e){if(n&1){let t=b();X(0,"div",11),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function Di(n,e){if(n&1){let t=b();X(0,"div",12),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function Ei(n,e){if(n&1){let t=b();X(0,"div",13),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function Ri(n,e){if(n&1){let t=b();X(0,"div",14),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}function Fi(n,e){if(n&1){let t=b();X(0,"div",15),rt("mousedown",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))})("touchstart",function(s){g(t);let o=m();return u(o.resize.dragStartDelay(s))}),L()}}var C=(function(n){return n.Fit="fit",n.ScrollVertical="scrollVertical",n.ScrollHorizontal="scrollHorizontal",n.Fixed="fixed",n.VerticalFixed="verticalFixed",n.HorizontalFixed="horizontalFixed",n})(C||{}),ie=(function(n){return n.Always="always",n.OnDragAndResize="onDrag&Resize",n.None="none",n})(ie||{}),_=(function(n){return n.None="none",n.CompactUp="compactUp",n.CompactLeft="compactLeft",n.CompactUpAndLeft="compactUp&Left",n.CompactLeftAndUp="compactLeft&Up",n.CompactRight="compactRight",n.CompactUpAndRight="compactUp&Right",n.CompactRightAndUp="compactRight&Up",n.CompactDown="compactDown",n.CompactDownAndLeft="compactDown&Left",n.CompactLeftAndDown="compactLeft&Down",n.CompactDownAndRight="compactDown&Right",n.CompactRightAndDown="compactRight&Down",n.CompactGrid="compactGrid",n})(_||{}),E=(function(n){return n.LTR="ltr",n.RTL="rtl",n})(E||{}),fe=class{gridster;constructor(e){this.gridster=e}destroy(){this.gridster=null}checkCompact(){this.gridster.$options.compactType!==_.None&&(this.gridster.$options.compactType===_.CompactUp?this.checkCompactMovement("y",-1):this.gridster.$options.compactType===_.CompactLeft?this.checkCompactMovement("x",-1):this.gridster.$options.compactType===_.CompactUpAndLeft?(this.checkCompactMovement("y",-1),this.checkCompactMovement("x",-1)):this.gridster.$options.compactType===_.CompactLeftAndUp?(this.checkCompactMovement("x",-1),this.checkCompactMovement("y",-1)):this.gridster.$options.compactType===_.CompactRight?this.checkCompactMovement("x",1):this.gridster.$options.compactType===_.CompactUpAndRight?(this.checkCompactMovement("y",-1),this.checkCompactMovement("x",1)):this.gridster.$options.compactType===_.CompactRightAndUp?(this.checkCompactMovement("x",1),this.checkCompactMovement("y",-1)):this.gridster.$options.compactType===_.CompactDown?this.checkCompactMovement("y",1):this.gridster.$options.compactType===_.CompactDownAndLeft?(this.checkCompactMovement("y",1),this.checkCompactMovement("x",-1)):this.gridster.$options.compactType===_.CompactDownAndRight?(this.checkCompactMovement("y",1),this.checkCompactMovement("x",1)):this.gridster.$options.compactType===_.CompactLeftAndDown?(this.checkCompactMovement("x",-1),this.checkCompactMovement("y",1)):this.gridster.$options.compactType===_.CompactRightAndDown?(this.checkCompactMovement("x",1),this.checkCompactMovement("y",1)):this.gridster.$options.compactType===_.CompactGrid&&this.checkCompactGrid())}checkCompactItem(e){this.gridster.$options.compactType!==_.None&&(this.gridster.$options.compactType===_.CompactUp?this.moveTillCollision(e,"y",-1):this.gridster.$options.compactType===_.CompactLeft?this.moveTillCollision(e,"x",-1):this.gridster.$options.compactType===_.CompactUpAndLeft?(this.moveTillCollision(e,"y",-1),this.moveTillCollision(e,"x",-1)):this.gridster.$options.compactType===_.CompactLeftAndUp?(this.moveTillCollision(e,"x",-1),this.moveTillCollision(e,"y",-1)):this.gridster.$options.compactType===_.CompactUpAndRight?(this.moveTillCollision(e,"y",-1),this.moveTillCollision(e,"x",1)):this.gridster.$options.compactType===_.CompactDown?this.moveTillCollision(e,"y",1):this.gridster.$options.compactType===_.CompactDownAndLeft?(this.moveTillCollision(e,"y",1),this.moveTillCollision(e,"x",-1)):this.gridster.$options.compactType===_.CompactLeftAndDown?(this.moveTillCollision(e,"x",-1),this.moveTillCollision(e,"y",1)):this.gridster.$options.compactType===_.CompactDownAndRight?(this.moveTillCollision(e,"y",1),this.moveTillCollision(e,"x",1)):this.gridster.$options.compactType===_.CompactRightAndDown?(this.moveTillCollision(e,"x",1),this.moveTillCollision(e,"y",1)):this.gridster.$options.compactType===_.CompactGrid&&this.moveToGridPosition(e))}checkCompactMovement(e,t){let i=!1;this.gridster.grid.forEach(s=>{s.$item.compactEnabled!==!1&&this.moveTillCollision(s.$item,e,t)&&(i=!0,s.item[e]=s.$item[e],s.itemChanged())}),i&&this.checkCompact()}moveTillCollision(e,t,i){return e[t]+=i,this.gridster.checkCollision(e)?(e[t]-=i,!1):(this.moveTillCollision(e,t,i),!0)}checkCompactGrid(){let e=this.gridster.grid.filter(o=>o.$item.compactEnabled!==!1).sort((o,r)=>o.$item.y!==r.$item.y?o.$item.y-r.$item.y:o.$item.x-r.$item.x),t=0,i=0,s=0;e.forEach(o=>{let r=o.$item;i+r.cols>this.gridster.columns&&(t=s,i=0,s=t);let d=r.x,y=r.y;r.x=i,r.y=t,(d!==r.x||y!==r.y)&&(o.item.x=r.x,o.item.y=r.y,o.itemChanged()),i+=r.cols,s=Math.max(s,t+r.rows)})}moveToGridPosition(e){let t=0,i=0,s=0,o=this.gridster.grid.filter(r=>r.$item!==e).sort((r,d)=>r.$item.y!==d.$item.y?r.$item.y-d.$item.y:r.$item.x-d.$item.x);for(let r of o){let d=r.$item;i+d.cols>this.gridster.columns&&(t=s,i=0,s=t),t<d.y+d.rows&&t+e.rows>d.y&&i<d.x+d.cols&&i+e.cols>d.x?(i=d.x+d.cols,t=d.y,s=Math.max(s,t+d.rows)):(i+=d.cols,s=Math.max(s,t+d.rows))}i+e.cols>this.gridster.columns&&(t=s,i=0),e.x=i,e.y=t}},Wi={gridType:C.Fit,scale:1,fixedColWidth:250,fixedRowHeight:250,keepFixedHeightInMobile:!1,keepFixedWidthInMobile:!1,setGridSize:!1,compactType:_.None,mobileBreakpoint:640,useBodyForBreakpoint:!1,allowMultiLayer:!1,defaultLayerIndex:0,maxLayerIndex:2,baseLayerIndex:1,minCols:1,maxCols:100,minRows:1,maxRows:100,defaultItemCols:1,defaultItemRows:1,itemAspectRatio:void 0,maxItemCols:50,maxItemRows:50,minItemCols:1,minItemRows:1,minItemArea:1,maxItemArea:2500,addEmptyRowsCount:0,rowHeightRatio:1,margin:10,outerMargin:!0,outerMarginTop:null,outerMarginRight:null,outerMarginBottom:null,outerMarginLeft:null,useTransformPositioning:!0,scrollSensitivity:10,scrollSpeed:20,initCallback:void 0,destroyCallback:void 0,gridSizeChangedCallback:void 0,itemChangeCallback:void 0,itemResizeCallback:void 0,itemInitCallback:void 0,itemRemovedCallback:void 0,itemValidateCallback:void 0,enableEmptyCellClick:!1,enableEmptyCellContextMenu:!1,enableEmptyCellDrop:!1,enableEmptyCellDrag:!1,enableOccupiedCellDrop:!1,emptyCellClickCallback:void 0,emptyCellContextMenuCallback:void 0,emptyCellDropCallback:void 0,emptyCellDragCallback:void 0,emptyCellDragMaxCols:50,emptyCellDragMaxRows:50,ignoreMarginInRow:!1,draggable:{delayStart:0,enabled:!1,ignoreContentClass:"gridster-item-content",ignoreContent:!1,dragHandleClass:"drag-handler",stop:void 0,start:void 0,dropOverItems:!1,dropOverItemsCallback:void 0},resizable:{delayStart:0,enabled:!1,handles:{s:!0,e:!0,n:!0,w:!0,se:!0,ne:!0,sw:!0,nw:!0},stop:void 0,start:void 0},swap:!0,swapWhileDragging:!1,pushItems:!1,disablePushOnDrag:!1,disablePushOnResize:!1,pushDirections:{north:!0,east:!0,south:!0,west:!0},pushResizeItems:!1,displayGrid:ie.OnDragAndResize,disableWindowResize:!1,disableWarnings:!1,scrollToNewItems:!1,disableScrollHorizontal:!1,disableScrollVertical:!1,enableBoundaryControl:!1,disableAutoPositionOnConflict:!1,dirType:E.LTR},O=class n{static merge(e,t,i){for(let s in t)t[s]!==void 0&&i.hasOwnProperty(s)&&(typeof t[s]=="object"?(s in e||(e[s]={}),e[s]=n.merge(e[s],t[s],i[s])):e[s]=t[s]);return e}static checkTouchEvent(e){e.clientX===void 0&&e.touches&&(e.touches&&e.touches.length?(e.clientX=e.touches[0].clientX,e.clientY=e.touches[0].clientY):e.changedTouches&&e.changedTouches.length&&(e.clientX=e.changedTouches[0].clientX,e.clientY=e.changedTouches[0].clientY))}static checkContentClassForEvent(e,t){if(e.$options.draggable.ignoreContent){if(!n.checkDragHandleClass(t.target,t.currentTarget,e.$options.draggable.dragHandleClass,e.$options.draggable.ignoreContentClass))return!0}else if(n.checkContentClass(t.target,t.currentTarget,e.$options.draggable.ignoreContentClass))return!0;return!1}static checkContentClassForEmptyCellClickEvent(e,t){return n.checkContentClass(t.target,t.currentTarget,e.$options.draggable.ignoreContentClass)||n.checkContentClass(t.target,t.currentTarget,e.$options.draggable.dragHandleClass)}static checkDragHandleClass(e,t,i,s){if(!e||e===t)return!1;if(e.hasAttribute("class")){let o=e.getAttribute("class").split(" ");if(o.indexOf(i)>-1)return!0;if(o.indexOf(s)>-1)return!1}return n.checkDragHandleClass(e.parentNode,t,i,s)}static checkContentClass(e,t,i){return!e||e===t?!1:e.hasAttribute("class")&&e.getAttribute("class").split(" ").indexOf(i)>-1?!0:n.checkContentClass(e.parentNode,t,i)}static compareItems(e,t){return e.y>t.y?-1:e.y<t.y?1:e.x>t.x?-1:1}},Ce=class{gridster;initialItem;removeEmptyCellClickListenerFn;removeEmptyCellTouchendListenerFn;removeEmptyCellContextMenuListenerFn;removeEmptyCellDropListenerFn;removeEmptyCellMousedownListenerFn;removeEmptyCellTouchstartListenerFn;removeWindowMousemoveListenerFn;removeWindowTouchmoveListenerFn;removeWindowMouseupListenerFn;removeWindowTouchendListenerFn;removeEmptyCellDragoverListenerFn;removeDocumentDragendListenerFn;constructor(e){this.gridster=e}destroy(){this.gridster.previewStyle&&this.gridster.previewStyle(),this.gridster.movingItem=null,this.initialItem=this.gridster=null,this.removeDocumentDragendListenerFn&&(this.removeDocumentDragendListenerFn(),this.removeDocumentDragendListenerFn=null)}updateOptions(){this.gridster.$options.enableEmptyCellClick&&!this.removeEmptyCellClickListenerFn&&this.gridster.options.emptyCellClickCallback?(this.removeEmptyCellClickListenerFn=this.gridster.renderer.listen(this.gridster.el,"click",this.emptyCellClickCb),this.removeEmptyCellTouchendListenerFn=this.gridster.renderer.listen(this.gridster.el,"touchend",this.emptyCellClickCb)):!this.gridster.$options.enableEmptyCellClick&&this.removeEmptyCellClickListenerFn&&this.removeEmptyCellTouchendListenerFn&&(this.removeEmptyCellClickListenerFn(),this.removeEmptyCellTouchendListenerFn(),this.removeEmptyCellClickListenerFn=null,this.removeEmptyCellTouchendListenerFn=null),this.gridster.$options.enableEmptyCellContextMenu&&!this.removeEmptyCellContextMenuListenerFn&&this.gridster.options.emptyCellContextMenuCallback?this.removeEmptyCellContextMenuListenerFn=this.gridster.renderer.listen(this.gridster.el,"contextmenu",this.emptyCellContextMenuCb):!this.gridster.$options.enableEmptyCellContextMenu&&this.removeEmptyCellContextMenuListenerFn&&(this.removeEmptyCellContextMenuListenerFn(),this.removeEmptyCellContextMenuListenerFn=null),this.gridster.$options.enableEmptyCellDrop&&!this.removeEmptyCellDropListenerFn&&this.gridster.options.emptyCellDropCallback?(this.removeEmptyCellDropListenerFn=this.gridster.renderer.listen(this.gridster.el,"drop",this.emptyCellDragDrop),this.gridster.zone.runOutsideAngular(()=>{this.removeEmptyCellDragoverListenerFn=this.gridster.renderer.listen(this.gridster.el,"dragover",this.emptyCellDragOver)}),this.removeDocumentDragendListenerFn=this.gridster.renderer.listen("document","dragend",()=>{this.gridster.movingItem=null,this.gridster.previewStyle()})):!this.gridster.$options.enableEmptyCellDrop&&this.removeEmptyCellDropListenerFn&&this.removeEmptyCellDragoverListenerFn&&this.removeDocumentDragendListenerFn&&(this.removeEmptyCellDropListenerFn(),this.removeEmptyCellDragoverListenerFn(),this.removeDocumentDragendListenerFn(),this.removeEmptyCellDragoverListenerFn=null,this.removeEmptyCellDropListenerFn=null,this.removeDocumentDragendListenerFn=null),this.gridster.$options.enableEmptyCellDrag&&!this.removeEmptyCellMousedownListenerFn&&this.gridster.options.emptyCellDragCallback?(this.removeEmptyCellMousedownListenerFn=this.gridster.renderer.listen(this.gridster.el,"mousedown",this.emptyCellMouseDown),this.removeEmptyCellTouchstartListenerFn=this.gridster.renderer.listen(this.gridster.el,"touchstart",this.emptyCellMouseDown)):!this.gridster.$options.enableEmptyCellDrag&&this.removeEmptyCellMousedownListenerFn&&this.removeEmptyCellTouchstartListenerFn&&(this.removeEmptyCellMousedownListenerFn(),this.removeEmptyCellTouchstartListenerFn(),this.removeEmptyCellMousedownListenerFn=null,this.removeEmptyCellTouchstartListenerFn=null)}emptyCellClickCb=e=>{if(!this.gridster||this.gridster.movingItem||O.checkContentClassForEmptyCellClickEvent(this.gridster,e))return;let t=this.getValidItemFromEvent(e);t&&(this.gridster.options.emptyCellClickCallback&&this.gridster.options.emptyCellClickCallback(e,t),this.gridster.cdRef.markForCheck())};emptyCellContextMenuCb=e=>{if(this.gridster.movingItem||O.checkContentClassForEmptyCellClickEvent(this.gridster,e))return;e.preventDefault(),e.stopPropagation();let t=this.getValidItemFromEvent(e);t&&(this.gridster.options.emptyCellContextMenuCallback&&this.gridster.options.emptyCellContextMenuCallback(e,t),this.gridster.cdRef.markForCheck())};emptyCellDragDrop=e=>{let t=this.getValidItemFromEvent(e);t&&(this.gridster.options.emptyCellDropCallback&&this.gridster.options.emptyCellDropCallback(e,t),this.gridster.cdRef.markForCheck())};emptyCellDragOver=e=>{e.preventDefault(),e.stopPropagation();let t=this.getValidItemFromEvent(e);t?(e.dataTransfer&&(e.dataTransfer.dropEffect="move"),this.gridster.movingItem=t):(e.dataTransfer&&(e.dataTransfer.dropEffect="none"),this.gridster.movingItem=null),this.gridster.previewStyle()};emptyCellMouseDown=e=>{if(O.checkContentClassForEmptyCellClickEvent(this.gridster,e))return;e.preventDefault(),e.stopPropagation();let t=this.getValidItemFromEvent(e);!t||e.buttons!==1&&!(e instanceof TouchEvent)||(this.initialItem=t,this.gridster.movingItem=t,this.gridster.previewStyle(),this.gridster.zone.runOutsideAngular(()=>{this.removeWindowMousemoveListenerFn=this.gridster.renderer.listen("window","mousemove",this.emptyCellMouseMove),this.removeWindowTouchmoveListenerFn=this.gridster.renderer.listen("window","touchmove",this.emptyCellMouseMove)}),this.removeWindowMouseupListenerFn=this.gridster.renderer.listen("window","mouseup",this.emptyCellMouseUp),this.removeWindowTouchendListenerFn=this.gridster.renderer.listen("window","touchend",this.emptyCellMouseUp))};emptyCellMouseMove=e=>{e.preventDefault(),e.stopPropagation();let t=this.getValidItemFromEvent(e,this.initialItem);t&&(this.gridster.movingItem=t,this.gridster.previewStyle())};emptyCellMouseUp=e=>{this.removeWindowMousemoveListenerFn(),this.removeWindowTouchmoveListenerFn(),this.removeWindowMouseupListenerFn(),this.removeWindowTouchendListenerFn();let t=this.getValidItemFromEvent(e,this.initialItem);t&&(this.gridster.movingItem=t),this.gridster.options.emptyCellDragCallback&&this.gridster.movingItem&&this.gridster.options.emptyCellDragCallback(e,this.gridster.movingItem),setTimeout(()=>{this.initialItem=null,this.gridster&&(this.gridster.movingItem=null,this.gridster.previewStyle())}),this.gridster.cdRef.markForCheck()};getPixelsX(e,t){let i=this.gridster.options.scale;return i?(e.clientX-t.left)/i+this.gridster.el.scrollLeft-this.gridster.gridRenderer.getLeftMargin():e.clientX+this.gridster.el.scrollLeft-t.left-this.gridster.gridRenderer.getLeftMargin()}getPixelsY(e,t){let i=this.gridster.options.scale;return i?(e.clientY-t.top)/i+this.gridster.el.scrollTop-this.gridster.gridRenderer.getTopMargin():e.clientY+this.gridster.el.scrollTop-t.top-this.gridster.gridRenderer.getTopMargin()}getValidItemFromEvent(e,t){e.preventDefault(),e.stopPropagation(),O.checkTouchEvent(e);let i=this.gridster.el.getBoundingClientRect(),s=this.getPixelsX(e,i),o=this.getPixelsY(e,i),r={x:this.gridster.pixelsToPositionX(s,Math.floor,!0),y:this.gridster.pixelsToPositionY(o,Math.floor,!0),cols:this.gridster.$options.defaultItemCols,rows:this.gridster.$options.defaultItemRows};if(t&&(r.cols=Math.min(Math.abs(t.x-r.x)+1,this.gridster.$options.emptyCellDragMaxCols),r.rows=Math.min(Math.abs(t.y-r.y)+1,this.gridster.$options.emptyCellDragMaxRows),t.x<r.x?r.x=t.x:t.x-r.x>this.gridster.$options.emptyCellDragMaxCols-1&&(r.x=this.gridster.movingItem?this.gridster.movingItem.x:0),t.y<r.y?r.y=t.y:t.y-r.y>this.gridster.$options.emptyCellDragMaxRows-1&&(r.y=this.gridster.movingItem?this.gridster.movingItem.y:0)),!(!this.gridster.$options.enableOccupiedCellDrop&&this.gridster.checkCollision(r)))return r}},we=class{gridster;lastGridColumnStyles={};lastGridRowStyles={};constructor(e){this.gridster=e}destroy(){this.gridster=null}updateItem(e,t,i){if(this.gridster.mobile)this.clearCellPosition(i,e),this.gridster.$options.keepFixedHeightInMobile?i.setStyle(e,"height",(t.rows-1)*this.gridster.$options.margin+t.rows*this.gridster.$options.fixedRowHeight+"px"):i.setStyle(e,"height",t.rows*this.gridster.curWidth/t.cols+"px"),this.gridster.$options.keepFixedWidthInMobile?i.setStyle(e,"width",this.gridster.$options.fixedColWidth+"px"):i.setStyle(e,"width",""),i.setStyle(e,"margin-bottom",this.gridster.$options.margin+"px"),i.setStyle(e,E.LTR?"margin-right":"margin-left","");else{let s=Math.round(this.gridster.curColWidth*t.x),o=Math.round(this.gridster.curRowHeight*t.y),r=this.gridster.curColWidth*t.cols-this.gridster.$options.margin,d=this.gridster.curRowHeight*t.rows-this.gridster.$options.margin;this.setCellPosition(i,e,s,o),i.setStyle(e,"width",r+"px"),i.setStyle(e,"height",d+"px");let y=null,w=null;this.gridster.$options.outerMargin&&(this.gridster.rows===t.rows+t.y&&(this.gridster.$options.outerMarginBottom!==null?y=this.gridster.$options.outerMarginBottom+"px":y=this.gridster.$options.margin+"px"),this.gridster.columns===t.cols+t.x&&(this.gridster.$options.outerMarginBottom!==null?w=this.gridster.$options.outerMarginRight+"px":w=this.gridster.$options.margin+"px")),i.setStyle(e,"margin-bottom",y),i.setStyle(e,this.gridster.$options.dirType===E.LTR?"margin-right":"margin-left",w)}}updateGridster(){let e="",t="",i="",s="";if(this.gridster.$options.gridType===C.Fit)e=C.Fit,t=C.ScrollVertical,i=C.ScrollHorizontal,s=C.Fixed;else if(this.gridster.$options.gridType===C.ScrollVertical)this.gridster.curRowHeight=this.gridster.curColWidth*this.gridster.$options.rowHeightRatio,e=C.ScrollVertical,t=C.Fit,i=C.ScrollHorizontal,s=C.Fixed;else if(this.gridster.$options.gridType===C.ScrollHorizontal){let o=this.gridster.$options.rowHeightRatio,r=o>=1?o:o+1;this.gridster.curColWidth=this.gridster.curRowHeight*r,e=C.ScrollHorizontal,t=C.Fit,i=C.ScrollVertical,s=C.Fixed}else this.gridster.$options.gridType===C.Fixed?(this.gridster.curColWidth=this.gridster.$options.fixedColWidth+(this.gridster.$options.ignoreMarginInRow?0:this.gridster.$options.margin),this.gridster.curRowHeight=this.gridster.$options.fixedRowHeight+(this.gridster.$options.ignoreMarginInRow?0:this.gridster.$options.margin),e=C.Fixed,t=C.Fit,i=C.ScrollVertical,s=C.ScrollHorizontal):this.gridster.$options.gridType===C.VerticalFixed?(this.gridster.curRowHeight=this.gridster.$options.fixedRowHeight+(this.gridster.$options.ignoreMarginInRow?0:this.gridster.$options.margin),e=C.ScrollVertical,t=C.Fit,i=C.ScrollHorizontal,s=C.Fixed):this.gridster.$options.gridType===C.HorizontalFixed&&(this.gridster.curColWidth=this.gridster.$options.fixedColWidth+(this.gridster.$options.ignoreMarginInRow?0:this.gridster.$options.margin),e=C.ScrollHorizontal,t=C.Fit,i=C.ScrollVertical,s=C.Fixed);this.gridster.mobile||this.gridster.$options.setGridSize&&this.gridster.$options.gridType!==C.Fit?this.gridster.renderer.removeClass(this.gridster.el,e):this.gridster.renderer.addClass(this.gridster.el,e),this.gridster.renderer.removeClass(this.gridster.el,t),this.gridster.renderer.removeClass(this.gridster.el,i),this.gridster.renderer.removeClass(this.gridster.el,s)}getGridColumnStyle(e){let t={left:this.gridster.curColWidth*e,width:this.gridster.curColWidth-this.gridster.$options.margin,height:this.gridster.gridRows.length*this.gridster.curRowHeight-this.gridster.$options.margin,style:{}};t.style=G(S({},this.getLeftPosition(t.left)),{width:t.width+"px",height:t.height+"px"});let i=this.lastGridColumnStyles[e];return i&&i.left===t.left&&i.width===t.width&&i.height===t.height?i.style:(this.lastGridColumnStyles[e]=t,t.style)}getGridRowStyle(e){let t={top:this.gridster.curRowHeight*e,width:this.gridster.gridColumns.length*this.gridster.curColWidth+this.gridster.$options.margin,height:this.gridster.curRowHeight-this.gridster.$options.margin,style:{}};t.style=G(S({},this.getTopPosition(t.top)),{width:t.width+"px",height:t.height+"px"});let i=this.lastGridRowStyles[e];return i&&i.top===t.top&&i.width===t.width&&i.height===t.height?i.style:(this.lastGridRowStyles[e]=t,t.style)}getLeftPosition(e){let t=this.gridster.$options.dirType===E.RTL?-e:e;return this.gridster.$options.useTransformPositioning?{transform:"translateX("+t+"px)"}:{left:this.getLeftMargin()+t+"px"}}getTopPosition(e){return this.gridster.$options.useTransformPositioning?{transform:"translateY("+e+"px)"}:{top:this.getTopMargin()+e+"px"}}clearCellPosition(e,t){this.gridster.$options.useTransformPositioning?e.setStyle(t,"transform",""):(e.setStyle(t,"top",""),e.setStyle(t,"left",""))}setCellPosition(e,t,i,s){let o=this.gridster.$options.dirType===E.RTL?-i:i;if(this.gridster.$options.useTransformPositioning){let r="translate3d("+o+"px, "+s+"px, 0)";e.setStyle(t,"transform",r)}else e.setStyle(t,"left",this.getLeftMargin()+o+"px"),e.setStyle(t,"top",this.getTopMargin()+s+"px")}getLeftMargin(){return this.gridster.$options.outerMargin?this.gridster.$options.outerMarginLeft!==null?this.gridster.$options.outerMarginLeft:this.gridster.$options.margin:0}getTopMargin(){return this.gridster.$options.outerMargin?this.gridster.$options.outerMarginTop!==null?this.gridster.$options.outerMarginTop:this.gridster.$options.margin:0}},ue=(()=>{class n{renderer;gridRenderer;el;constructor(t,i){this.renderer=i,this.el=t.nativeElement}previewStyle(t){t?(this.renderer.setStyle(this.el,"display","block"),this.gridRenderer.updateItem(this.el,t,this.renderer)):this.renderer.setStyle(this.el,"display","")}static \u0275fac=function(i){return new(i||n)(Q(Et),Q(Rt))};static \u0275cmp=k({type:n,selectors:[["gridster-preview"]],inputs:{gridRenderer:"gridRenderer"},decls:0,vars:0,template:function(i,s){},styles:[`gridster-preview{position:absolute;display:none;background:#00000026}
|
|
2
2
|
`],encapsulation:2})}return n})(),Ie=(()=>{class n{renderer;cdRef;zone;gridsterPreview=He.required(ue);options;movingItem;el;$options;mobile;curWidth;curHeight;grid;columns=0;rows=0;curColWidth;curRowHeight;gridColumns=[];gridRows=[];windowResize;dragInProgress;emptyCell;compact;gridRenderer;calculateLayout$=new At;resize$=new At;destroy$=new At;constructor(t,i,s,o){this.renderer=i,this.cdRef=s,this.zone=o,this.el=t.nativeElement,this.$options=JSON.parse(JSON.stringify(Wi)),this.mobile=!1,this.curWidth=0,this.curHeight=0,this.grid=[],this.curColWidth=0,this.curRowHeight=0,this.dragInProgress=!1,this.emptyCell=new Ce(this),this.compact=new fe(this),this.gridRenderer=new we(this)}static checkCollisionTwoItemsForSwaping(t,i){let s=t.cols===1?0:1,o=i.cols===1?0:1,r=t.rows===1?0:1,d=i.rows===1?0:1;return t.x+s<i.x+i.cols&&t.x+t.cols>i.x+o&&t.y+r<i.y+i.rows&&t.y+t.rows>i.y+d}checkCollisionTwoItems(t,i){if(!(t.x<i.x+i.cols&&t.x+t.cols>i.x&&t.y<i.y+i.rows&&t.y+t.rows>i.y))return!1;if(!this.$options.allowMultiLayer)return!0;let o=this.$options.defaultLayerIndex,r=t.layerIndex===void 0?o:t.layerIndex,d=i.layerIndex===void 0?o:i.layerIndex;return r===d}ngOnInit(){this.options.initCallback&&this.options.initCallback(this),this.calculateLayout$.pipe(ke(0),me(this.destroy$)).subscribe(()=>this.calculateLayout()),this.resize$.pipe(Pe(()=>$e(100)),me(this.destroy$)).subscribe(()=>this.resize())}ngOnChanges(t){t.options&&(this.setOptions(),this.options.api={optionsChanged:this.optionsChanged,resize:this.onResize,getNextPossiblePosition:this.getNextPossiblePosition,getFirstPossiblePosition:this.getFirstPossiblePosition,getLastPossiblePosition:this.getLastPossiblePosition,getItemComponent:i=>this.getItemComponent(i)},this.columns=this.$options.minCols,this.rows=this.$options.minRows+this.$options.addEmptyRowsCount,this.setGridSize(),this.calculateLayout())}resize(){let t,i;this.$options.gridType==="fit"&&!this.mobile?(i=this.el.offsetWidth,t=this.el.offsetHeight):(i=this.el.clientWidth,t=this.el.clientHeight),(i!==this.curWidth||t!==this.curHeight)&&this.checkIfToResize()&&this.onResize()}setOptions(){this.$options=O.merge(this.$options,this.options,this.$options),!this.$options.disableWindowResize&&!this.windowResize?this.windowResize=this.renderer.listen("window","resize",this.onResize):this.$options.disableWindowResize&&this.windowResize&&(this.windowResize(),this.windowResize=null),this.emptyCell.updateOptions()}optionsChanged=()=>{this.setOptions();let t=this.grid.length-1,i;for(;t>=0;t--)i=this.grid[t],i.updateOptions();this.calculateLayout()};ngOnDestroy(){this.destroy$.next(),this.windowResize&&this.windowResize(),this.options&&this.options.destroyCallback&&this.options.destroyCallback(this),this.options&&this.options.api&&(this.options.api.resize=void 0,this.options.api.optionsChanged=void 0,this.options.api.getNextPossiblePosition=void 0,this.options.api=void 0),this.emptyCell.destroy(),this.emptyCell=null,this.compact.destroy(),this.compact=null}onResize=()=>{this.el.clientWidth&&(this.options.setGridSize&&(this.renderer.setStyle(this.el,"width",""),this.renderer.setStyle(this.el,"height","")),this.setGridSize(),this.calculateLayout())};checkIfToResize(){let t=this.el.clientWidth,i=this.el.offsetWidth,s=this.el.scrollWidth,o=this.el.clientHeight,r=this.el.offsetHeight,d=this.el.scrollHeight,y=t<i&&d>r&&d-r<i-t,w=o<r&&s>i&&s-i<r-o;return y?!1:!w}checkIfMobile(){return this.$options.useBodyForBreakpoint?this.$options.mobileBreakpoint>document.body.clientWidth:this.$options.mobileBreakpoint>this.curWidth}setGridSize(){let t=this.el,i,s;this.$options.setGridSize||this.$options.gridType===C.Fit&&!this.mobile?(i=t.offsetWidth,s=t.offsetHeight):(i=t.clientWidth,s=t.clientHeight),this.curWidth=i,this.curHeight=s}setGridDimensions(){this.setGridSize(),!this.mobile&&this.checkIfMobile()?(this.mobile=!this.mobile,this.renderer.addClass(this.el,"mobile")):this.mobile&&!this.checkIfMobile()&&(this.mobile=!this.mobile,this.renderer.removeClass(this.el,"mobile"));let t=this.$options.minRows,i=this.$options.minCols,s=this.grid.length-1,o;for(;s>=0;s--)o=this.grid[s],o.notPlaced||(t=Math.max(t,o.$item.y+o.$item.rows),i=Math.max(i,o.$item.x+o.$item.cols));t+=this.$options.addEmptyRowsCount,(this.columns!==i||this.rows!==t)&&(this.columns=i,this.rows=t,this.options.gridSizeChangedCallback&&this.options.gridSizeChangedCallback(this))}calculateLayout(){if(this.compact&&this.compact.checkCompact(),this.setGridDimensions(),this.$options.outerMargin){let s=-this.$options.margin;this.$options.outerMarginLeft!==null?(s+=this.$options.outerMarginLeft,this.renderer.setStyle(this.el,"padding-left",this.$options.outerMarginLeft+"px")):(s+=this.$options.margin,this.renderer.setStyle(this.el,"padding-left",this.$options.margin+"px")),this.$options.outerMarginRight!==null?(s+=this.$options.outerMarginRight,this.renderer.setStyle(this.el,"padding-right",this.$options.outerMarginRight+"px")):(s+=this.$options.margin,this.renderer.setStyle(this.el,"padding-right",this.$options.margin+"px")),this.curColWidth=(this.curWidth-s)/this.columns;let o=-this.$options.margin;this.$options.outerMarginTop!==null?(o+=this.$options.outerMarginTop,this.renderer.setStyle(this.el,"padding-top",this.$options.outerMarginTop+"px")):(o+=this.$options.margin,this.renderer.setStyle(this.el,"padding-top",this.$options.margin+"px")),this.$options.outerMarginBottom!==null?(o+=this.$options.outerMarginBottom,this.renderer.setStyle(this.el,"padding-bottom",this.$options.outerMarginBottom+"px")):(o+=this.$options.margin,this.renderer.setStyle(this.el,"padding-bottom",this.$options.margin+"px")),this.curRowHeight=(this.curHeight-o)/this.rows*this.$options.rowHeightRatio}else this.curColWidth=(this.curWidth+this.$options.margin)/this.columns,this.curRowHeight=(this.curHeight+this.$options.margin)/this.rows*this.$options.rowHeightRatio,this.renderer.setStyle(this.el,"padding-left","0px"),this.renderer.setStyle(this.el,"padding-right","0px"),this.renderer.setStyle(this.el,"padding-top","0px"),this.renderer.setStyle(this.el,"padding-bottom","0px");this.gridRenderer.updateGridster(),this.$options.setGridSize?(this.renderer.addClass(this.el,"gridSize"),this.mobile||(this.renderer.setStyle(this.el,"width",this.columns*this.curColWidth+this.$options.margin+"px"),this.renderer.setStyle(this.el,"height",this.rows*this.curRowHeight+this.$options.margin+"px"))):(this.renderer.removeClass(this.el,"gridSize"),this.renderer.setStyle(this.el,"width",""),this.renderer.setStyle(this.el,"height","")),this.updateGrid();let t=this.grid.length-1,i;for(;t>=0;t--)i=this.grid[t],i.setSize(),i.drag.toggle(),i.resize.toggle();this.resize$.next()}updateGrid(){this.$options.displayGrid==="always"&&!this.mobile?this.renderer.addClass(this.el,"display-grid"):this.$options.displayGrid==="onDrag&Resize"&&this.dragInProgress?this.renderer.addClass(this.el,"display-grid"):(this.$options.displayGrid==="none"||!this.dragInProgress||this.mobile)&&this.renderer.removeClass(this.el,"display-grid"),this.setGridDimensions(),this.gridColumns.length=n.getNewArrayLength(this.columns,this.curWidth,this.curColWidth),this.gridRows.length=n.getNewArrayLength(this.rows,this.curHeight,this.curRowHeight),this.cdRef.markForCheck()}addItem(t){t.$item.cols===void 0&&(t.$item.cols=this.$options.defaultItemCols,t.item.cols=t.$item.cols,t.itemChanged()),t.$item.rows===void 0&&(t.$item.rows=this.$options.defaultItemRows,t.item.rows=t.$item.rows,t.itemChanged()),t.$item.x===-1||t.$item.y===-1?this.autoPositionItem(t):this.checkCollision(t.$item)&&(this.$options.disableWarnings||(t.notPlaced=!0,console.warn("Can't be placed in the bounds of the dashboard, trying to auto position!/n"+JSON.stringify(t.item,["cols","rows","x","y"]))),this.$options.disableAutoPositionOnConflict?t.notPlaced=!0:this.autoPositionItem(t)),this.grid.push(t),this.calculateLayout$.next()}removeItem(t){this.grid.splice(this.grid.indexOf(t),1),this.calculateLayout$.next(),this.options.itemRemovedCallback&&this.options.itemRemovedCallback(t.item,t),this.movingItem&&this.movingItem===t.$item&&(this.movingItem=null,this.previewStyle())}checkCollision(t,i){let s=!1;if(this.options.itemValidateCallback&&(s=!this.options.itemValidateCallback(t)),!s&&this.checkGridCollision(t,i)&&(s=!0),!s){let o=this.findItemWithItem(t);o&&(s=o)}return s}checkGridCollision(t,i=!1){let s=t.y>-1&&t.x>-1,o=t.cols+t.x<=this.$options.maxCols,r=t.rows+t.y<=this.$options.maxRows,d=t.maxItemCols===void 0?this.$options.maxItemCols:t.maxItemCols,y=t.minItemCols===void 0?this.$options.minItemCols:t.minItemCols,w=t.maxItemRows===void 0?this.$options.maxItemRows:t.maxItemRows,$=t.minItemRows===void 0?this.$options.minItemRows:t.minItemRows,x=t.cols<=d&&t.cols>=y,I=t.rows<=w&&t.rows>=$,Z=!0;if(i){let wt=t.itemAspectRatio||this.$options.itemAspectRatio;wt&&(Z=t.cols/t.rows===wt)}let ft=t.minItemArea===void 0?this.$options.minItemArea:t.minItemArea,Ct=t.maxItemArea===void 0?this.$options.maxItemArea:t.maxItemArea,tt=t.cols*t.rows,at=ft<=tt,vt=Ct>=tt;return!(s&&o&&r&&Z&&x&&I&&at&&vt)}findItemWithItem(t){let i=0,s;for(;i<this.grid.length;i++)if(s=this.grid[i],s.$item!==t&&this.checkCollisionTwoItems(s.$item,t))return s;return!1}findItemsWithItem(t){let i=[],s=0,o;for(;s<this.grid.length;s++)o=this.grid[s],o.$item!==t&&this.checkCollisionTwoItems(o.$item,t)&&i.push(o);return i}autoPositionItem(t){this.getNextPossiblePosition(t.$item)?(t.notPlaced=!1,t.item.x=t.$item.x,t.item.y=t.$item.y,t.itemChanged()):(t.notPlaced=!0,this.$options.disableWarnings||console.warn("Can't be placed in the bounds of the dashboard!/n"+JSON.stringify(t.item,["cols","rows","x","y"])))}getNextPossiblePosition=(t,i={})=>{t.cols===-1&&(t.cols=this.$options.defaultItemCols),t.rows===-1&&(t.rows=this.$options.defaultItemRows),this.setGridDimensions();let s=i.y||0,o;for(;s<this.rows;s++)for(t.y=s,o=i.x||0;o<this.columns;o++)if(t.x=o,!this.checkCollision(t))return!0;let r=this.$options.maxRows>=this.rows+t.rows,d=this.$options.maxCols>=this.columns+t.cols;return!(this.rows<=this.columns&&r)&&d?(t.x=this.columns,t.y=0,!0):r?(t.y=this.rows,t.x=0,!0):!1};getFirstPossiblePosition=t=>{let i=Object.assign({},t);return this.getNextPossiblePosition(i),i};getLastPossiblePosition=t=>{let i={y:0,x:0};i=this.grid.reduce((o,r)=>{let d={y:r.$item.y+r.$item.rows-1,x:r.$item.x+r.$item.cols-1};return O.compareItems(o,d)===1?d:o},i);let s=Object.assign({},t);return this.getNextPossiblePosition(s,i),s};pixelsToPositionX(t,i,s){let o=i(t/this.curColWidth);return s?o:Math.max(o,0)}pixelsToPositionY(t,i,s){let o=i(t/this.curRowHeight);return s?o:Math.max(o,0)}positionXToPixels(t){return t*this.curColWidth}positionYToPixels(t){return t*this.curRowHeight}getItemComponent(t){return this.grid.find(i=>i.item===t)}checkCollisionForSwaping(t){let i=!1;if(this.options.itemValidateCallback&&(i=!this.options.itemValidateCallback(t)),!i&&this.checkGridCollision(t)&&(i=!0),!i){let s=this.findItemWithItemForSwapping(t);s&&(i=s)}return i}findItemWithItemForSwapping(t){let i=this.grid.length-1,s;for(;i>-1;i--)if(s=this.grid[i],s.$item!==t&&n.checkCollisionTwoItemsForSwaping(s.$item,t))return s;return!1}previewStyle(t=!1){let i=this.gridsterPreview();this.movingItem?(this.compact&&t&&this.compact.checkCompactItem(this.movingItem),i.previewStyle(this.movingItem)):i.previewStyle(null)}static getNewArrayLength(t,i,s){let o=Math.max(t,Math.floor(i/s));return o<0?0:Number.isFinite(o)?Math.floor(o):0}static \u0275fac=function(i){return new(i||n)(Q(Et),Q(Rt),Q(Yt),Q(ce))};static \u0275cmp=k({type:n,selectors:[["gridster"]],viewQuery:function(i,s){i&1&&Fe(s.gridsterPreview,ue,5),i&2&&We()},inputs:{options:"options"},features:[ot],ngContentSelectors:ci,decls:6,vars:1,consts:[[1,"gridster-column",3,"ngStyle"],[1,"gridster-row",3,"ngStyle"],[1,"gridster-preview",3,"gridRenderer"]],template:function(i,s){i&1&&(Ft(),K(0,Ti,1,1,"div",0,pe),K(2,Mi,1,1,"div",1,pe),It(4),p(5,"gridster-preview",2)),i&2&&(q(s.gridColumns),h(2),q(s.gridRows),h(3),c("gridRenderer",s.gridRenderer))},dependencies:[Ae,ue],styles:[`gridster{position:relative;box-sizing:border-box;background:gray;width:100%;height:100%;-webkit-user-select:none;user-select:none;display:block}gridster.fit{overflow-x:hidden;overflow-y:hidden}gridster.scrollVertical{overflow-x:hidden;overflow-y:auto}gridster.scrollHorizontal{overflow-x:auto;overflow-y:hidden}gridster.fixed{overflow:auto}gridster.mobile{overflow-x:hidden;overflow-y:auto}gridster.mobile gridster-item{position:relative}gridster.gridSize{height:initial;width:initial}gridster.gridSize.fit{height:100%;width:100%}gridster .gridster-column,gridster .gridster-row{position:absolute;display:none;transition:.3s;box-sizing:border-box}gridster.display-grid .gridster-column,gridster.display-grid .gridster-row{display:block}gridster .gridster-column{border-left:1px solid white;border-right:1px solid white}gridster .gridster-row{border-top:1px solid white;border-bottom:1px solid white}
|
|
3
3
|
`],encapsulation:2})}return n})(),ee=class{fromSouth;fromNorth;fromEast;fromWest;pushedItems;pushedItemsTemp;pushedItemsTempPath;pushedItemsPath;gridsterItem;gridster;pushedItemsOrder;tryPattern;iteration=0;constructor(e){this.pushedItems=[],this.pushedItemsTemp=[],this.pushedItemsTempPath=[],this.pushedItemsPath=[],this.gridsterItem=e,this.gridster=e.gridster,this.tryPattern={fromEast:[this.tryWest,this.trySouth,this.tryNorth,this.tryEast],fromWest:[this.tryEast,this.trySouth,this.tryNorth,this.tryWest],fromNorth:[this.trySouth,this.tryEast,this.tryWest,this.tryNorth],fromSouth:[this.tryNorth,this.tryEast,this.tryWest,this.trySouth]},this.fromSouth="fromSouth",this.fromNorth="fromNorth",this.fromEast="fromEast",this.fromWest="fromWest"}destroy(){this.gridster=this.gridsterItem=null}pushItems(e,t){if(this.gridster.$options.pushItems&&!t){this.pushedItemsOrder=[],this.iteration=0;let i=this.push(this.gridsterItem,e);return i||this.restoreTempItems(),this.pushedItemsOrder=[],this.pushedItemsTemp=[],this.pushedItemsTempPath=[],i}else return!1}restoreTempItems(){let e=this.pushedItemsTemp.length-1;for(;e>-1;e--)this.removeFromTempPushed(this.pushedItemsTemp[e])}restoreItems(){let e=0,t=this.pushedItems.length,i;for(;e<t;e++)i=this.pushedItems[e],i.$item.x=i.item.x||0,i.$item.y=i.item.y||0,i.setSize();this.pushedItems=[],this.pushedItemsPath=[]}setPushedItems(){let e=0,t=this.pushedItems.length,i;for(;e<t;e++)i=this.pushedItems[e],i.checkItemChanges(i.$item,i.item);this.pushedItems=[],this.pushedItemsPath=[]}checkPushBack(){let e=this.pushedItems.length-1,t=!1;for(;e>-1;e--)this.checkPushedItem(this.pushedItems[e],e)&&(t=!0);t&&this.checkPushBack()}push(e,t){if(this.iteration>100)return console.warn("max iteration reached"),!1;if(this.gridster.checkGridCollision(e.$item)||t==="")return!1;let i=this.gridster.findItemsWithItem(e.$item),s=t===this.fromNorth||t===this.fromWest;i.sort((w,$)=>s?$.$item.y-w.$item.y||$.$item.x-w.$item.x:w.$item.y-$.$item.y||w.$item.x-$.$item.x);let o=0,r,d=!0,y=[];for(;o<i.length;o++){if(r=i[o],r===this.gridsterItem)continue;if(!r.canBeDragged()){d=!1;break}let w=this.pushedItemsTemp.indexOf(r);if(w>-1&&this.pushedItemsTempPath[w].length>10){d=!1;break}if(this.tryPattern[t][0].call(this,r,e))this.pushedItemsOrder.push(r),y.push(r);else if(this.tryPattern[t][1].call(this,r,e))this.pushedItemsOrder.push(r),y.push(r);else if(this.tryPattern[t][2].call(this,r,e))this.pushedItemsOrder.push(r),y.push(r);else if(this.tryPattern[t][3].call(this,r,e))this.pushedItemsOrder.push(r),y.push(r);else{d=!1;break}}if(!d&&(o=this.pushedItemsOrder.lastIndexOf(y[0]),o>-1)){let w=this.pushedItemsOrder.length-1;for(;w>=o;w--)r=this.pushedItemsOrder[w],this.pushedItemsOrder.pop(),this.removeFromTempPushed(r),this.removeFromPushedItem(r)}return this.iteration++,d}trySouth(e,t){return this.gridster.$options.pushDirections.south?(this.addToTempPushed(e),e.$item.y=t.$item.y+t.$item.rows,this.push(e,this.fromNorth)?(e.setSize(),this.addToPushed(e),!0):(this.removeFromTempPushed(e),!1)):!1}tryNorth(e,t){return this.gridster.$options.pushDirections.north?(this.addToTempPushed(e),e.$item.y=t.$item.y-e.$item.rows,this.push(e,this.fromSouth)?(e.setSize(),this.addToPushed(e),!0):(this.removeFromTempPushed(e),!1)):!1}tryEast(e,t){return this.gridster.$options.pushDirections.east?(this.addToTempPushed(e),e.$item.x=t.$item.x+t.$item.cols,this.push(e,this.fromWest)?(e.setSize(),this.addToPushed(e),!0):(this.removeFromTempPushed(e),!1)):!1}tryWest(e,t){return this.gridster.$options.pushDirections.west?(this.addToTempPushed(e),e.$item.x=t.$item.x-e.$item.cols,this.push(e,this.fromEast)?(e.setSize(),this.addToPushed(e),!0):(this.removeFromTempPushed(e),!1)):!1}addToTempPushed(e){let t=this.pushedItemsTemp.indexOf(e);t===-1&&(t=this.pushedItemsTemp.push(e)-1,this.pushedItemsTempPath[t]=[]),this.pushedItemsTempPath[t].push({x:e.$item.x,y:e.$item.y})}removeFromTempPushed(e){let t=this.pushedItemsTemp.indexOf(e),i=this.pushedItemsTempPath[t].pop();i&&(e.$item.x=i.x,e.$item.y=i.y,e.setSize(),this.pushedItemsTempPath[t].length||(this.pushedItemsTemp.splice(t,1),this.pushedItemsTempPath.splice(t,1)))}addToPushed(e){if(this.pushedItems.indexOf(e)<0)this.pushedItems.push(e),this.pushedItemsPath.push([{x:e.item.x||0,y:e.item.y||0},{x:e.$item.x,y:e.$item.y}]);else{let t=this.pushedItems.indexOf(e);this.pushedItemsPath[t].push({x:e.$item.x,y:e.$item.y})}}removeFromPushed(e){e>-1&&(this.pushedItems.splice(e,1),this.pushedItemsPath.splice(e,1))}removeFromPushedItem(e){let t=this.pushedItems.indexOf(e);t>-1&&(this.pushedItemsPath[t].pop(),this.pushedItemsPath.length||(this.pushedItems.splice(t,1),this.pushedItemsPath.splice(t,1)))}checkPushedItem(e,t){let i=this.pushedItemsPath[t],s=i.length-2,o,r,d,y=!1;for(;s>-1;s--)o=i[s],r=e.$item.x,d=e.$item.y,e.$item.x=o.x,e.$item.y=o.y,this.gridster.findItemWithItem(e.$item)?(e.$item.x=r,e.$item.y=d):(e.setSize(),i.splice(s+1,i.length-s-1),y=!0);return i.length<2&&this.removeFromPushed(t),y}},Wt,Nt,pi=50,J,Ot,lt,Lt,Bt,Vt,Ht;function gi(n,e,t,i,s,o,r,d,y,w){Wt=n.$options.scrollSensitivity,Nt=n.$options.scrollSpeed,J=n.el,Ot=y,lt=w;let $=J.offsetWidth,x=J.offsetHeight,I=J.scrollLeft,Z=J.scrollTop,ft=t-Z,Ct=x+Z-t-s,{clientX:tt,clientY:at}=o;if(!n.$options.disableScrollVertical)if(r.clientY<at&&Ct<Wt){if(yi(),Ot&<&&!lt.south||Ht)return;Ht=hi(1,d,r)}else if(r.clientY>at&&Z>0&&ft<Wt){if(wi(),Ot&<&&!lt.north||Vt)return;Vt=hi(-1,d,r)}else r.clientY!==at&&ze();let vt=I+$-e-i,wt=e-I;if(!n.$options.disableScrollHorizontal){let yt=n.$options.dirType===E.RTL,Te=r.clientX<tt,Me=r.clientX>tt,_i=yt?Me:Te,Ii=yt?Te:Me;if(_i&&vt<=Wt){if(Ci(),Ot&<&&!lt.east||Lt)return;Lt=mi(1,d,r,yt)}else if(Ii&&I>0&&wt<Wt){if(fi(),Ot&<&&!lt.west||Bt)return;Bt=mi(-1,d,r,yt)}else r.clientX!==tt&&be()}}function hi(n,e,t){let i=t.clientY;return window.setInterval(()=>{(!J||n===-1&&J.scrollTop-Nt<0)&&ze(),J.scrollTop+=n*Nt,i+=n*Nt,e({clientX:t.clientX,clientY:i})},pi)}function mi(n,e,t,i){let s=t.clientX;return window.setInterval(()=>{if(!J){be();return}let o=n*Nt,r=i?-o:o;J.scrollBy({left:r,behavior:"auto"}),s+=r,e({clientX:s,clientY:t.clientY})},pi)}function ui(){be(),ze(),J=null}function be(){fi(),Ci()}function ze(){yi(),wi()}function fi(){Lt&&(clearInterval(Lt),Lt=0)}function Ci(){Bt&&(clearInterval(Bt),Bt=0)}function wi(){Ht&&(clearInterval(Ht),Ht=0)}function yi(){Vt&&(clearInterval(Vt),Vt=0)}var ye=class{swapedItem;gridsterItem;gridster;constructor(e){this.gridsterItem=e,this.gridster=e.gridster}destroy(){this.gridster=this.gridsterItem=this.swapedItem=null}swapItems(){this.gridster.$options.swap&&(this.checkSwapBack(),this.checkSwap(this.gridsterItem))}checkSwapBack(){if(this.swapedItem){let e=this.swapedItem.$item.x,t=this.swapedItem.$item.y;this.swapedItem.$item.x=this.swapedItem.item.x||0,this.swapedItem.$item.y=this.swapedItem.item.y||0,this.gridster.checkCollision(this.swapedItem.$item)?(this.swapedItem.$item.x=e,this.swapedItem.$item.y=t):(this.swapedItem.setSize(),this.gridsterItem.$item.x=this.gridsterItem.item.x||0,this.gridsterItem.$item.y=this.gridsterItem.item.y||0,this.swapedItem=void 0)}}restoreSwapItem(){this.swapedItem&&(this.swapedItem.$item.x=this.swapedItem.item.x||0,this.swapedItem.$item.y=this.swapedItem.item.y||0,this.swapedItem.setSize(),this.swapedItem=void 0)}setSwapItem(){this.swapedItem&&(this.swapedItem.checkItemChanges(this.swapedItem.$item,this.swapedItem.item),this.swapedItem=void 0)}checkSwap(e){let t;if(this.gridster.$options.swapWhileDragging?t=this.gridster.checkCollisionForSwaping(e.$item):t=this.gridster.checkCollision(e.$item),t&&t!==!0&&t.canBeDragged()){let i=t,s=i.$item.x,o=i.$item.y,r=e.$item.x,d=e.$item.y,y=r-s,w=d-o;i.$item.x=e.item.x-y,i.$item.y=e.item.y-w,e.$item.x=i.item.x+y,e.$item.y=i.item.y+w,this.gridster.checkCollision(i.$item)||this.gridster.checkCollision(e.$item)?(e.$item.x=r,e.$item.y=d,i.$item.x=s,i.$item.y=o):(i.setSize(),this.swapedItem=i,this.gridster.$options.swapWhileDragging&&(this.gridsterItem.checkItemChanges(this.gridsterItem.$item,this.gridsterItem.item),this.setSwapItem()))}}},Oi="gridster-item-resizable-handler",Y=(function(n){return n.UP="UP",n.DOWN="DOWN",n.LEFT="LEFT",n.RIGHT="RIGHT",n})(Y||{}),xe=class{zone;gridsterItem;gridster;lastMouse;offsetLeft;offsetTop;margin;outerMarginTop;outerMarginRight;outerMarginBottom;outerMarginLeft;diffTop;diffLeft;originalClientX;originalClientY;top;left;height;width;positionX;positionY;positionXBackup;positionYBackup;enabled;mousemove;mouseup;mouseleave;cancelOnBlur;touchmove;touchend;touchcancel;mousedown;touchstart;push;swap;path;collision=!1;constructor(e,t,i){this.zone=i,this.gridsterItem=e,this.gridster=t,this.lastMouse={clientX:0,clientY:0},this.path=[]}destroy(){this.gridster.previewStyle&&this.gridster.previewStyle(!0),this.gridsterItem=this.gridster=this.collision=null,this.mousedown&&(this.mousedown(),this.touchstart())}dragStart(e){e.which&&e.which!==1||this.gridster.dragInProgress||(this.gridster.options.draggable&&this.gridster.options.draggable.start&&this.gridster.options.draggable.start(this.gridsterItem.item,this.gridsterItem,e),e.stopPropagation(),e.preventDefault(),this.zone.runOutsideAngular(()=>{this.mousemove=this.gridsterItem.renderer.listen("document","mousemove",this.dragMove),this.touchmove=this.gridster.renderer.listen(this.gridster.el,"touchmove",this.dragMove)}),this.mouseup=this.gridsterItem.renderer.listen("document","mouseup",this.dragStop),this.mouseleave=this.gridsterItem.renderer.listen("document","mouseleave",this.dragStop),this.cancelOnBlur=this.gridsterItem.renderer.listen("window","blur",this.dragStop),this.touchend=this.gridsterItem.renderer.listen("document","touchend",this.dragStop),this.touchcancel=this.gridsterItem.renderer.listen("document","touchcancel",this.dragStop),this.gridsterItem.renderer.addClass(this.gridsterItem.el,"gridster-item-moving"),this.margin=this.gridster.$options.margin,this.outerMarginTop=this.gridster.$options.outerMarginTop,this.outerMarginRight=this.gridster.$options.outerMarginRight,this.outerMarginBottom=this.gridster.$options.outerMarginBottom,this.outerMarginLeft=this.gridster.$options.outerMarginLeft,this.offsetLeft=this.gridster.el.scrollLeft-this.gridster.el.offsetLeft,this.offsetTop=this.gridster.el.scrollTop-this.gridster.el.offsetTop,this.left=this.gridsterItem.left-this.margin,this.top=this.gridsterItem.top-this.margin,this.originalClientX=e.clientX,this.originalClientY=e.clientY,this.width=this.gridsterItem.width,this.height=this.gridsterItem.height,this.gridster.$options.dirType===E.RTL?this.diffLeft=e.clientX-this.gridster.el.scrollWidth+this.gridsterItem.left:this.diffLeft=e.clientX+this.offsetLeft-this.margin-this.left,this.diffTop=e.clientY+this.offsetTop-this.margin-this.top,this.gridster.movingItem=this.gridsterItem.$item,this.gridster.previewStyle(!0),this.push=new ee(this.gridsterItem),this.swap=new ye(this.gridsterItem),this.gridster.dragInProgress=!0,this.gridster.updateGrid(),this.path.push({x:this.gridsterItem.item.x||0,y:this.gridsterItem.item.y||0}))}dragMove=e=>{e.stopPropagation(),e.preventDefault(),O.checkTouchEvent(e);let t=this.getDirections(e);this.gridster.options.enableBoundaryControl&&(t.includes(Y.UP)&&this.gridsterItem.el.getBoundingClientRect().top<this.gridster.el.getBoundingClientRect().top+(this.outerMarginTop??this.margin)&&(t=t.filter(i=>i!=Y.UP),e=new MouseEvent(e.type,{clientX:e.clientX,clientY:this.lastMouse.clientY})),t.includes(Y.LEFT)&&this.gridsterItem.el.getBoundingClientRect().left<this.gridster.el.getBoundingClientRect().left+(this.outerMarginLeft??this.margin)&&(t=t.filter(i=>i!=Y.LEFT),e=new MouseEvent(e.type,{clientX:this.lastMouse.clientX,clientY:e.clientY})),t.includes(Y.RIGHT)&&this.gridsterItem.el.getBoundingClientRect().right>this.gridster.el.getBoundingClientRect().right-(this.outerMarginRight??this.margin)&&(t=t.filter(i=>i!=Y.RIGHT),e=new MouseEvent(e.type,{clientX:this.lastMouse.clientX,clientY:e.clientY})),t.includes(Y.DOWN)&&this.gridsterItem.el.getBoundingClientRect().bottom>this.gridster.el.getBoundingClientRect().bottom-(this.outerMarginBottom??this.margin)&&(t=t.filter(i=>i!=Y.DOWN),e=new MouseEvent(e.type,{clientX:e.clientX,clientY:this.lastMouse.clientY}))),t.length&&(this.offsetLeft=this.gridster.el.scrollLeft-this.gridster.el.offsetLeft,this.offsetTop=this.gridster.el.scrollTop-this.gridster.el.offsetTop,gi(this.gridster,this.left,this.top,this.width,this.height,e,this.lastMouse,this.calculateItemPositionFromMousePosition),this.calculateItemPositionFromMousePosition(e))};calculateItemPositionFromMousePosition=e=>{this.gridster.options.scale?this.calculateItemPositionWithScale(e,this.gridster.options.scale):this.calculateItemPositionWithoutScale(e),this.calculateItemPosition(),this.lastMouse.clientX=e.clientX,this.lastMouse.clientY=e.clientY,this.zone.run(()=>{this.gridster.updateGrid()})};calculateItemPositionWithScale(e,t){this.gridster.$options.dirType===E.RTL?this.left=this.gridster.el.scrollWidth-this.originalClientX+(e.clientX-this.originalClientX)/t+this.diffLeft:this.left=this.originalClientX+(e.clientX-this.originalClientX)/t+this.offsetLeft-this.diffLeft,this.top=this.originalClientY+(e.clientY-this.originalClientY)/t+this.offsetTop-this.diffTop}calculateItemPositionWithoutScale(e){this.gridster.$options.dirType===E.RTL?this.left=this.gridster.el.offsetWidth-(e.clientX+this.offsetLeft-this.diffLeft):this.left=e.clientX+this.offsetLeft-this.diffLeft,this.top=e.clientY+this.offsetTop-this.diffTop}dragStop=e=>{e.stopPropagation(),e.preventDefault(),ui(),this.cancelOnBlur(),this.mousemove(),this.mouseup(),this.mouseleave(),this.touchmove(),this.touchend(),this.touchcancel(),this.gridsterItem.renderer.removeClass(this.gridsterItem.el,"gridster-item-moving"),this.gridster.dragInProgress=!1,this.gridster.updateGrid(),this.path=[],this.gridster.options.draggable&&this.gridster.options.draggable.stop?Promise.resolve(this.gridster.options.draggable.stop(this.gridsterItem.item,this.gridsterItem,e)).then(this.makeDrag,this.cancelDrag):this.makeDrag(),setTimeout(()=>{this.gridster&&(this.gridster.movingItem=null,this.gridster.previewStyle(!0))})};cancelDrag=()=>{this.gridsterItem.$item.x=this.gridsterItem.item.x||0,this.gridsterItem.$item.y=this.gridsterItem.item.y||0,this.gridsterItem.setSize(),this.push&&this.push.restoreItems(),this.swap&&this.swap.restoreSwapItem(),this.push&&(this.push.destroy(),this.push=null),this.swap&&(this.swap.destroy(),this.swap=null)};makeDrag=()=>{this.gridster.$options.draggable.dropOverItems&&this.gridster.options.draggable&&this.gridster.options.draggable.dropOverItemsCallback&&this.collision&&this.collision!==!0&&this.collision.$item&&this.gridster.options.draggable.dropOverItemsCallback(this.gridsterItem.item,this.collision.item,this.gridster),this.collision=!1,this.gridsterItem.setSize(),this.gridsterItem.checkItemChanges(this.gridsterItem.$item,this.gridsterItem.item),this.push&&this.push.setPushedItems(),this.swap&&this.swap.setSwapItem(),this.push&&(this.push.destroy(),this.push=null),this.swap&&(this.swap.destroy(),this.swap=null)};calculateItemPosition(){if(this.gridster.movingItem=this.gridsterItem.$item,this.positionX=this.gridster.pixelsToPositionX(this.left,Math.round),this.positionY=this.gridster.pixelsToPositionY(this.top,Math.round),this.positionXBackup=this.gridsterItem.$item.x,this.positionYBackup=this.gridsterItem.$item.y,this.gridsterItem.$item.x=this.positionX,this.gridster.checkGridCollision(this.gridsterItem.$item)&&(this.gridsterItem.$item.x=this.positionXBackup),this.gridsterItem.$item.y=this.positionY,this.gridster.checkGridCollision(this.gridsterItem.$item)&&(this.gridsterItem.$item.y=this.positionYBackup),this.gridster.gridRenderer.setCellPosition(this.gridsterItem.renderer,this.gridsterItem.el,this.left,this.top),this.positionXBackup!==this.gridsterItem.$item.x||this.positionYBackup!==this.gridsterItem.$item.y){let e=this.path[this.path.length-1],t="";e.x<this.gridsterItem.$item.x?t=this.push.fromWest:e.x>this.gridsterItem.$item.x?t=this.push.fromEast:e.y<this.gridsterItem.$item.y?t=this.push.fromNorth:e.y>this.gridsterItem.$item.y&&(t=this.push.fromSouth),this.push.pushItems(t,this.gridster.$options.disablePushOnDrag),this.swap.swapItems(),this.collision=this.gridster.checkCollision(this.gridsterItem.$item),this.collision?(this.gridsterItem.$item.x=this.positionXBackup,this.gridsterItem.$item.y=this.positionYBackup,this.gridster.$options.draggable.dropOverItems&&this.collision!==!0&&this.collision.$item&&(this.gridster.movingItem=null)):this.path.push({x:this.gridsterItem.$item.x,y:this.gridsterItem.$item.y}),this.push.checkPushBack()}else this.collision=!1;this.gridster.previewStyle(!0)}toggle(){let e=this.gridsterItem.canBeDragged();!this.enabled&&e?(this.enabled=!this.enabled,this.mousedown=this.gridsterItem.renderer.listen(this.gridsterItem.el,"mousedown",this.dragStartDelay),this.touchstart=this.gridsterItem.renderer.listen(this.gridsterItem.el,"touchstart",this.dragStartDelay)):this.enabled&&!e&&(this.enabled=!this.enabled,this.mousedown(),this.touchstart())}dragStartDelay=e=>{if(e.target.classList.contains(Oi)||O.checkContentClassForEvent(this.gridster,e))return;if(O.checkTouchEvent(e),!this.gridster.$options.draggable.delayStart){this.dragStart(e);return}let i=setTimeout(()=>{this.dragStart(e),x()},this.gridster.$options.draggable.delayStart),s=this.gridsterItem.renderer.listen("document","mouseup",x),o=this.gridsterItem.renderer.listen("document","mouseleave",x),r=this.gridsterItem.renderer.listen("window","blur",x),d=this.gridsterItem.renderer.listen("document","touchmove",$),y=this.gridsterItem.renderer.listen("document","touchend",x),w=this.gridsterItem.renderer.listen("document","touchcancel",x);function $(I){O.checkTouchEvent(I),(Math.abs(I.clientX-e.clientX)>9||Math.abs(I.clientY-e.clientY)>9)&&x()}function x(){clearTimeout(i),r(),s(),o(),d(),y(),w()}};getDirections(e){let t=[];return this.lastMouse.clientX===0&&this.lastMouse.clientY===0&&(this.lastMouse.clientY=e.clientY,this.lastMouse.clientX=e.clientX),this.lastMouse.clientY>e.clientY&&t.push(Y.UP),this.lastMouse.clientY<e.clientY&&t.push(Y.DOWN),this.lastMouse.clientX<e.clientX&&t.push(Y.RIGHT),this.lastMouse.clientX>e.clientX&&t.push(Y.LEFT),t}},ve=class{fromSouth;fromNorth;fromEast;fromWest;pushedItems;pushedItemsPath;gridsterItem;gridster;tryPattern;constructor(e){this.pushedItems=[],this.pushedItemsPath=[],this.gridsterItem=e,this.gridster=e.gridster,this.tryPattern={fromEast:this.tryWest,fromWest:this.tryEast,fromNorth:this.trySouth,fromSouth:this.tryNorth},this.fromSouth="fromSouth",this.fromNorth="fromNorth",this.fromEast="fromEast",this.fromWest="fromWest"}destroy(){this.gridster=this.gridsterItem=null}pushItems(e){return this.gridster.$options.pushResizeItems?this.push(this.gridsterItem,e):!1}restoreItems(){let e=0,t=this.pushedItems.length,i;for(;e<t;e++)i=this.pushedItems[e],i.$item.x=i.item.x||0,i.$item.y=i.item.y||0,i.$item.cols=i.item.cols||1,i.$item.row=i.item.row||1,i.setSize();this.pushedItems=[],this.pushedItemsPath=[]}setPushedItems(){let e=0,t=this.pushedItems.length,i;for(;e<t;e++)i=this.pushedItems[e],i.checkItemChanges(i.$item,i.item);this.pushedItems=[],this.pushedItemsPath=[]}checkPushBack(){let e=this.pushedItems.length-1,t=!1;for(;e>-1;e--)this.checkPushedItem(this.pushedItems[e],e)&&(t=!0);t&&this.checkPushBack()}push(e,t){let i=this.gridster.checkCollision(e.$item);if(i&&i!==!0&&i!==this.gridsterItem&&i.canBeResized()){if(this.tryPattern[t].call(this,i,e,t))return!0}else if(i===!1)return!0;return!1}trySouth(e,t,i){let s=e.$item.y,o=e.$item.rows;return e.$item.y=t.$item.y+t.$item.rows,e.$item.rows=o+s-e.$item.y,!this.gridster.checkCollisionTwoItems(e.$item,t.$item)&&!this.gridster.checkGridCollision(e.$item)?(e.setSize(),this.addToPushed(e),this.push(t,i),!0):(e.$item.y=s,e.$item.rows=o,!1)}tryNorth(e,t,i){let s=e.$item.rows;return e.$item.rows=t.$item.y-e.$item.y,!this.gridster.checkCollisionTwoItems(e.$item,t.$item)&&!this.gridster.checkGridCollision(e.$item)?(e.setSize(),this.addToPushed(e),this.push(t,i),!0):(e.$item.rows=s,!1)}tryEast(e,t,i){let s=e.$item.x,o=e.$item.cols;return e.$item.x=t.$item.x+t.$item.cols,e.$item.cols=o+s-e.$item.x,!this.gridster.checkCollisionTwoItems(e.$item,t.$item)&&!this.gridster.checkGridCollision(e.$item)?(e.setSize(),this.addToPushed(e),this.push(t,i),!0):(e.$item.x=s,e.$item.cols=o,!1)}tryWest(e,t,i){let s=e.$item.cols;return e.$item.cols=t.$item.x-e.$item.x,!this.gridster.checkCollisionTwoItems(e.$item,t.$item)&&!this.gridster.checkGridCollision(e.$item)?(e.setSize(),this.addToPushed(e),this.push(t,i),!0):(e.$item.cols=s,!1)}addToPushed(e){if(this.pushedItems.indexOf(e)<0)this.pushedItems.push(e),this.pushedItemsPath.push([{x:e.item.x||0,y:e.item.y||0,cols:e.item.cols||0,rows:e.item.rows||0},{x:e.$item.x,y:e.$item.y,cols:e.$item.cols,rows:e.$item.rows}]);else{let t=this.pushedItems.indexOf(e);this.pushedItemsPath[t].push({x:e.$item.x,y:e.$item.y,cols:e.$item.cols,rows:e.$item.rows})}}removeFromPushed(e){e>-1&&(this.pushedItems.splice(e,1),this.pushedItemsPath.splice(e,1))}checkPushedItem(e,t){let i=this.pushedItemsPath[t],s=i.length-2,o,r,d,y,w;for(;s>-1;s--)o=i[s],r=e.$item.x,d=e.$item.y,y=e.$item.cols,w=e.$item.rows,e.$item.x=o.x,e.$item.y=o.y,e.$item.cols=o.cols,e.$item.rows=o.rows,this.gridster.findItemWithItem(e.$item)?(e.$item.x=r,e.$item.y=d,e.$item.cols=y,e.$item.rows=w):(e.setSize(),i.splice(s+1,i.length-1-s));return i.length<2?(this.removeFromPushed(t),!0):!1}},_e=class{zone;gridsterItem;gridster;lastMouse;itemBackup={x:0,y:0,cols:0,rows:0};resizeEventScrollType;directionFunction=null;resizeEnabled;resizableHandles;mousemove;mouseup;mouseleave;cancelOnBlur;touchmove;touchend;touchcancel;push;pushResize;minHeight;minWidth;offsetTop;offsetLeft;diffTop;diffLeft;diffRight;diffBottom;margin;outerMarginTop;outerMarginRight;outerMarginBottom;outerMarginLeft;originalClientX;originalClientY;top;left;bottom;right;width;height;hasRatio;constructor(e,t,i){this.zone=i,this.gridsterItem=e,this.gridster=t,this.lastMouse={clientX:0,clientY:0},this.resizeEventScrollType={west:!1,east:!1,north:!1,south:!1}}destroy(){this.gridster?.previewStyle(),this.gridster=this.gridsterItem=null}dragStart(e){if(e.which&&e.which!==1||this.gridster.dragInProgress)return;this.gridster.options.resizable&&this.gridster.options.resizable.start&&this.gridster.options.resizable.start(this.gridsterItem.item,this.gridsterItem,e),e.stopPropagation(),e.preventDefault(),this.zone.runOutsideAngular(()=>{this.mousemove=this.gridsterItem.renderer.listen("document","mousemove",this.dragMove),this.touchmove=this.gridster.renderer.listen(this.gridster.el,"touchmove",this.dragMove)}),this.mouseup=this.gridsterItem.renderer.listen("document","mouseup",this.dragStop),this.mouseleave=this.gridsterItem.renderer.listen("document","mouseleave",this.dragStop),this.cancelOnBlur=this.gridsterItem.renderer.listen("window","blur",this.dragStop),this.touchend=this.gridsterItem.renderer.listen("document","touchend",this.dragStop),this.touchcancel=this.gridsterItem.renderer.listen("document","touchcancel",this.dragStop),this.gridsterItem.renderer.addClass(this.gridsterItem.el,"gridster-item-resizing"),this.lastMouse.clientX=e.clientX,this.lastMouse.clientY=e.clientY,this.left=this.gridsterItem.left,this.top=this.gridsterItem.top,this.originalClientX=e.clientX,this.originalClientY=e.clientY,this.width=this.gridsterItem.width,this.height=this.gridsterItem.height,this.bottom=this.gridsterItem.top+this.gridsterItem.height,this.right=this.gridsterItem.left+this.gridsterItem.width,this.margin=this.gridster.$options.margin,this.outerMarginTop=this.gridster.$options.outerMarginTop,this.outerMarginRight=this.gridster.$options.outerMarginRight,this.outerMarginBottom=this.gridster.$options.outerMarginBottom,this.outerMarginLeft=this.gridster.$options.outerMarginLeft,this.offsetLeft=this.gridster.el.scrollLeft-this.gridster.el.offsetLeft,this.offsetTop=this.gridster.el.scrollTop-this.gridster.el.offsetTop,this.diffLeft=e.clientX+this.offsetLeft-this.left,this.diffRight=e.clientX+this.offsetLeft-this.right,this.diffTop=e.clientY+this.offsetTop-this.top,this.diffBottom=e.clientY+this.offsetTop-this.bottom,this.minHeight=this.gridster.positionYToPixels(this.gridsterItem.$item.minItemRows||this.gridster.$options.minItemRows)-this.margin,this.minWidth=this.gridster.positionXToPixels(this.gridsterItem.$item.minItemCols||this.gridster.$options.minItemCols)-this.margin,this.gridster.movingItem=this.gridsterItem.$item,this.gridster.previewStyle(),this.push=new ee(this.gridsterItem),this.pushResize=new ve(this.gridsterItem),this.gridster.dragInProgress=!0,this.hasRatio=!!(this.gridster.$options.itemAspectRatio||this.gridsterItem.$item.itemAspectRatio),this.itemBackup={x:0,y:0,cols:0,rows:0},this.gridster.updateGrid();let{classList:t}=e.target;t.contains("handle-n")?(this.resizeEventScrollType.north=!0,this.directionFunction=this.handleNorth):t.contains("handle-w")?this.gridster.$options.dirType===E.RTL?(this.resizeEventScrollType.east=!0,this.directionFunction=this.handleEast):(this.resizeEventScrollType.west=!0,this.directionFunction=this.handleWest):t.contains("handle-s")?(this.resizeEventScrollType.south=!0,this.directionFunction=this.handleSouth):t.contains("handle-e")?this.gridster.$options.dirType===E.RTL?(this.resizeEventScrollType.west=!0,this.directionFunction=this.handleWest):(this.resizeEventScrollType.east=!0,this.directionFunction=this.handleEast):t.contains("handle-nw")?this.gridster.$options.dirType===E.RTL?(this.resizeEventScrollType.north=!0,this.resizeEventScrollType.east=!0,this.directionFunction=this.handleNorthEast):(this.resizeEventScrollType.north=!0,this.resizeEventScrollType.west=!0,this.directionFunction=this.handleNorthWest):t.contains("handle-ne")?this.gridster.$options.dirType===E.RTL?(this.resizeEventScrollType.north=!0,this.resizeEventScrollType.west=!0,this.directionFunction=this.handleNorthWest):(this.resizeEventScrollType.north=!0,this.resizeEventScrollType.east=!0,this.directionFunction=this.handleNorthEast):t.contains("handle-sw")?this.gridster.$options.dirType===E.RTL?(this.resizeEventScrollType.south=!0,this.resizeEventScrollType.east=!0,this.directionFunction=this.handleSouthEast):(this.resizeEventScrollType.south=!0,this.resizeEventScrollType.west=!0,this.directionFunction=this.handleSouthWest):t.contains("handle-se")&&(this.gridster.$options.dirType===E.RTL?(this.resizeEventScrollType.south=!0,this.resizeEventScrollType.west=!0,this.directionFunction=this.handleSouthWest):(this.resizeEventScrollType.south=!0,this.resizeEventScrollType.east=!0,this.directionFunction=this.handleSouthEast))}dragMove=e=>{if(this.directionFunction===null)throw new Error("The `directionFunction` has not been set before calling `dragMove`.");e.stopPropagation(),e.preventDefault(),O.checkTouchEvent(e),this.offsetTop=this.gridster.el.scrollTop-this.gridster.el.offsetTop,this.offsetLeft=this.gridster.el.scrollLeft-this.gridster.el.offsetLeft,gi(this.gridster,this.left,this.top,this.width,this.height,e,this.lastMouse,this.directionFunction,!0,this.resizeEventScrollType);let t=this.gridster.options.scale||1;this.directionFunction({clientX:this.originalClientX+(e.clientX-this.originalClientX)/t,clientY:this.originalClientY+(e.clientY-this.originalClientY)/t}),this.lastMouse.clientX=e.clientX,this.lastMouse.clientY=e.clientY,this.zone.run(()=>{this.gridster.updateGrid()})};dragStop=e=>{e.stopPropagation(),e.preventDefault(),ui(),this.mousemove(),this.mouseup(),this.mouseleave(),this.cancelOnBlur(),this.touchmove(),this.touchend(),this.touchcancel(),this.gridster.dragInProgress=!1,this.resizeEventScrollType={west:!1,east:!1,north:!1,south:!1},this.gridster.updateGrid(),this.gridster.options.resizable&&this.gridster.options.resizable.stop?Promise.resolve(this.gridster.options.resizable.stop(this.gridsterItem.item,this.gridsterItem,e)).then(this.makeResize,this.cancelResize):this.makeResize(),setTimeout(()=>{this.gridsterItem.renderer.removeClass(this.gridsterItem.el,"gridster-item-resizing"),this.gridster&&(this.gridster.movingItem=null,this.gridster.previewStyle())})};cancelResize=()=>{this.gridsterItem.$item.cols=this.gridsterItem.item.cols||1,this.gridsterItem.$item.rows=this.gridsterItem.item.rows||1,this.gridsterItem.$item.x=this.gridsterItem.item.x||0,this.gridsterItem.$item.y=this.gridsterItem.item.y||0,this.gridsterItem.setSize(),this.push.restoreItems(),this.pushResize.restoreItems(),this.push.destroy(),this.push=null,this.pushResize.destroy(),this.pushResize=null};makeResize=()=>{this.gridsterItem.setSize(),this.gridsterItem.checkItemChanges(this.gridsterItem.$item,this.gridsterItem.item),this.push.setPushedItems(),this.pushResize.setPushedItems(),this.push.destroy(),this.push=null,this.pushResize.destroy(),this.pushResize=null};check=e=>(this.hasRatio&&this.enforceAspectRatio(),this.pushResize.pushItems(e),this.push.pushItems(e,this.gridster.$options.disablePushOnResize),this.gridster.checkCollision(this.gridsterItem.$item,!0)?(this.resetItem(this.hasRatio),!1):(this.gridster.previewStyle(),this.pushResize.checkPushBack(),this.push.checkPushBack(),!0));getNewNorthPosition=e=>{this.top=e.clientY+this.offsetTop-this.diffTop,this.height=this.bottom-this.top,this.minHeight>this.height?(this.height=this.minHeight,this.top=this.bottom-this.minHeight):this.gridster.options.enableBoundaryControl&&(this.top=Math.max(0,this.top),this.height=this.bottom-this.top);let t=this.gridster.options.pushItems?this.margin:0;return this.gridster.pixelsToPositionY(this.top+t,Math.floor)};handleNorth=e=>{let t=this.getNewNorthPosition(e);this.gridsterItem.$item.y!==t&&(this.makeItemBackup(),this.gridsterItem.$item.rows+=this.gridsterItem.$item.y-t,this.gridsterItem.$item.y=t,!this.check(this.pushResize.fromSouth))||(this.setItemTop(this.top),this.setItemHeight(this.height))};getNewWestPosition=e=>{let t=this.gridster.$options.dirType===E.RTL?this.originalClientX+(this.originalClientX-e.clientX):e.clientX;this.left=t+this.offsetLeft-this.diffLeft,this.width=this.right-this.left,this.minWidth>this.width?(this.width=this.minWidth,this.left=this.right-this.minWidth):this.gridster.options.enableBoundaryControl&&(this.left=Math.max(0,this.left),this.width=this.right-this.left);let i=this.gridster.options.pushItems?this.margin:0;return this.gridster.pixelsToPositionX(this.left+i,Math.floor)};handleWest=e=>{let t=this.getNewWestPosition(e);this.gridsterItem.$item.x!==t&&(this.makeItemBackup(),this.gridsterItem.$item.cols+=this.gridsterItem.$item.x-t,this.gridsterItem.$item.x=t,!this.check(this.pushResize.fromEast))||(this.setItemLeft(this.left),this.setItemWidth(this.width))};getNewSouthPosition=e=>{if(this.height=e.clientY+this.offsetTop-this.diffBottom-this.top,this.minHeight>this.height&&(this.height=this.minHeight),this.bottom=this.top+this.height,this.gridster.options.enableBoundaryControl){let i=this.outerMarginBottom??this.margin,s=this.gridster.el.getBoundingClientRect();this.bottom=Math.min(this.bottom,s.bottom-s.top-2*i),this.height=this.bottom-this.top}let t=this.gridster.options.pushItems?0:this.margin;return this.gridster.pixelsToPositionY(this.bottom+t,Math.ceil)};handleSouth=e=>{let t=this.getNewSouthPosition(e);this.gridsterItem.$item.y+this.gridsterItem.$item.rows!==t&&(this.makeItemBackup(),this.gridsterItem.$item.rows=t-this.gridsterItem.$item.y,!this.check(this.pushResize.fromNorth))||this.setItemHeight(this.height)};getNewEastPosition=e=>{let t=this.gridster.$options.dirType===E.RTL?this.originalClientX+(this.originalClientX-e.clientX):e.clientX;if(this.width=t+this.offsetLeft-this.diffRight-this.left,this.minWidth>this.width&&(this.width=this.minWidth),this.right=this.left+this.width,this.gridster.options.enableBoundaryControl){let s=this.outerMarginRight??this.margin,o=this.gridster.el.getBoundingClientRect();this.right=Math.min(this.right,o.right-o.left-2*s),this.width=this.right-this.left}let i=this.gridster.options.pushItems?0:this.margin;return this.gridster.pixelsToPositionX(this.right+i,Math.ceil)};handleEast=e=>{let t=this.getNewEastPosition(e);this.gridsterItem.$item.x+this.gridsterItem.$item.cols!==t&&(this.makeItemBackup(),this.gridsterItem.$item.cols=t-this.gridsterItem.$item.x,!this.check(this.pushResize.fromWest))||this.setItemWidth(this.width)};handleNorthWest=e=>{let t=this.getNewNorthPosition(e),i=this.getNewWestPosition(e);(this.gridsterItem.$item.y!==t||this.gridsterItem.$item.x!==i)&&(this.makeItemBackup(),this.gridsterItem.$item.rows+=this.gridsterItem.$item.y-t,this.gridsterItem.$item.y=t,this.gridsterItem.$item.cols+=this.gridsterItem.$item.x-i,this.gridsterItem.$item.x=i,!this.check(this.pushResize.fromSouth))||(this.setItemTop(this.top),this.setItemHeight(this.height),this.setItemLeft(this.left),this.setItemWidth(this.width))};handleNorthEast=e=>{let t=this.getNewNorthPosition(e),i=this.getNewEastPosition(e);(this.gridsterItem.$item.y!==t||this.gridsterItem.$item.x+this.gridsterItem.$item.cols!==i)&&(this.makeItemBackup(),this.gridsterItem.$item.rows+=this.gridsterItem.$item.y-t,this.gridsterItem.$item.y=t,this.gridsterItem.$item.cols=i-this.gridsterItem.$item.x,!this.check(this.pushResize.fromSouth))||(this.setItemTop(this.top),this.setItemHeight(this.height),this.setItemWidth(this.width))};handleSouthWest=e=>{let t=this.getNewSouthPosition(e),i=this.getNewWestPosition(e);(this.gridsterItem.$item.y+this.gridsterItem.$item.rows!==t||this.gridsterItem.$item.x!==i)&&(this.makeItemBackup(),this.gridsterItem.$item.rows=t-this.gridsterItem.$item.y,this.gridsterItem.$item.cols+=this.gridsterItem.$item.x-i,this.gridsterItem.$item.x=i,!this.check(this.pushResize.fromNorth))||(this.setItemLeft(this.left),this.setItemHeight(this.height),this.setItemWidth(this.width))};handleSouthEast=e=>{let t=this.getNewSouthPosition(e),i=this.getNewEastPosition(e);(this.gridsterItem.$item.y+this.gridsterItem.$item.rows!==t||this.gridsterItem.$item.x+this.gridsterItem.$item.cols!==i)&&(this.makeItemBackup(),this.gridsterItem.$item.rows=t-this.gridsterItem.$item.y,this.gridsterItem.$item.cols=i-this.gridsterItem.$item.x,!this.check(this.pushResize.fromNorth))||(this.setItemHeight(this.height),this.setItemWidth(this.width))};makeItemBackup(){this.itemBackup.x=this.gridsterItem.$item.x,this.itemBackup.y=this.gridsterItem.$item.y,this.itemBackup.cols=this.gridsterItem.$item.cols,this.itemBackup.rows=this.gridsterItem.$item.rows}resetItem(e=!1){this.gridsterItem.$item.x!==this.itemBackup.x&&(this.gridsterItem.$item.x=this.itemBackup.x,e||(this.left=this.gridster.positionXToPixels(this.gridsterItem.$item.x),this.setItemLeft(this.left))),this.gridsterItem.$item.y!==this.itemBackup.y&&(this.gridsterItem.$item.y=this.itemBackup.y,e||(this.top=this.gridster.positionYToPixels(this.gridsterItem.$item.y),this.setItemTop(this.top))),this.gridsterItem.$item.cols!==this.itemBackup.cols&&(this.gridsterItem.$item.cols=this.itemBackup.cols,e||this.setItemWidth(this.gridster.positionXToPixels(this.gridsterItem.$item.cols)-this.margin)),this.gridsterItem.$item.rows!==this.itemBackup.rows&&(this.gridsterItem.$item.rows=this.itemBackup.rows,e||this.setItemHeight(this.gridster.positionYToPixels(this.gridsterItem.$item.rows)-this.margin))}toggle(){this.resizeEnabled=this.gridsterItem.canBeResized(),this.resizableHandles=this.gridsterItem.getResizableHandles()}dragStartDelay(e){if(O.checkTouchEvent(e),!this.gridster.$options.resizable.delayStart){this.dragStart(e);return}let t=setTimeout(()=>{this.dragStart(e),$()},this.gridster.$options.resizable.delayStart),{cancelMouse:i,cancelMouseLeave:s,cancelOnBlur:o,cancelTouchMove:r,cancelTouchEnd:d,cancelTouchCancel:y}=this.zone.runOutsideAngular(()=>{let x=this.gridsterItem.renderer.listen("document","mouseup",$),I=this.gridsterItem.renderer.listen("document","mouseleave",$),Z=this.gridsterItem.renderer.listen("window","blur",$),ft=this.gridsterItem.renderer.listen("document","touchmove",w),Ct=this.gridsterItem.renderer.listen("document","touchend",$),tt=this.gridsterItem.renderer.listen("document","touchcancel",$);return{cancelMouse:x,cancelMouseLeave:I,cancelOnBlur:Z,cancelTouchMove:ft,cancelTouchEnd:Ct,cancelTouchCancel:tt}});function w(x){O.checkTouchEvent(x),(Math.abs(x.clientX-e.clientX)>9||Math.abs(x.clientY-e.clientY)>9)&&$()}function $(){clearTimeout(t),o(),i(),s(),r(),d(),y()}}setItemTop(e){this.gridster.gridRenderer.setCellPosition(this.gridsterItem.renderer,this.gridsterItem.el,this.left,e)}setItemLeft(e){this.gridster.gridRenderer.setCellPosition(this.gridsterItem.renderer,this.gridsterItem.el,e,this.top)}setItemHeight(e){this.gridsterItem.renderer.setStyle(this.gridsterItem.el,"height",e+"px")}setItemWidth(e){this.gridsterItem.renderer.setStyle(this.gridsterItem.el,"width",e+"px")}enforceAspectRatio(){let e=this.gridsterItem.$item.itemAspectRatio||this.gridster.$options.itemAspectRatio;if(!e)return;let t=e*(this.gridster.curColWidth/this.gridster.curRowHeight),i=this.gridsterItem.$item.minItemCols||this.gridster.$options.minItemCols,s=this.gridsterItem.$item.minItemRows||this.gridster.$options.minItemRows,o=this.gridster.positionXToPixels(i)-this.margin,r=this.gridster.positionYToPixels(s)-this.margin,d=this.gridsterItem.$item.maxItemCols||this.gridster.$options.maxItemCols||0,y=this.gridsterItem.$item.maxItemRows||this.gridster.$options.maxItemRows||0,w=d?this.gridster.positionXToPixels(d)-this.margin:Number.MAX_VALUE,$=y?this.gridster.positionYToPixels(y)-this.margin:Number.MAX_VALUE,x=this.width,I=this.height;if(this.resizeEventScrollType.north||this.resizeEventScrollType.south?(x=this.height*t,x<o?(x=o,I=o/t):x>w&&(x=w,I=w/t)):(this.resizeEventScrollType.east||this.resizeEventScrollType.west)&&(I=this.width/t,I<r?(I=r,x=r*t):I>$&&(I=$,x=$*t)),this.gridster.options.enableBoundaryControl){let at=this.gridster.el.getBoundingClientRect(),vt=Math.max(this.outerMarginTop||this.margin,this.outerMarginRight||this.margin,this.outerMarginBottom||this.margin,this.outerMarginLeft||this.margin),wt=at.width-2*vt,yt=at.height-2*vt;this.resizeEventScrollType.west?this.right-x<0&&(x=this.right,I=x/t):this.resizeEventScrollType.east&&this.left+x>wt&&(x=wt-this.left,I=x/t),this.resizeEventScrollType.north?this.bottom-I<0&&(I=this.bottom,x=I*t):this.resizeEventScrollType.south&&this.top+I>yt&&(I=yt-this.top,x=I*t)}this.width=x,this.height=I,this.resizeEventScrollType.west&&(this.left=this.right-this.width),this.resizeEventScrollType.north&&(this.top=this.bottom-this.height);let Z=this.gridster.options.pushItems?0:this.margin,ft=this.gridster.options.pushItems?0:this.margin,Ct=this.gridster.options.pushItems?this.margin:0,tt=this.gridster.options.pushItems?this.margin:0;this.gridsterItem.$item.x=this.gridster.pixelsToPositionX(this.left+Z,Math.floor),this.gridsterItem.$item.y=this.gridster.pixelsToPositionY(this.top+ft,Math.floor),this.gridsterItem.$item.cols=this.gridster.pixelsToPositionX(this.width+Ct,Math.ceil),this.gridsterItem.$item.rows=this.gridster.pixelsToPositionY(this.height+tt,Math.ceil),this.setItemTop(this.top),this.setItemLeft(this.left),this.setItemWidth(this.width),this.setItemHeight(this.height)}},xi=(()=>{class n{renderer;zone;item;itemInit=new N;itemChange=new N;itemResize=new N;$item;el;gridster;top;left;width;height;drag;resize;notPlaced;init;get zIndex(){return this.getLayerIndex()+this.gridster.$options.baseLayerIndex}constructor(t,i,s,o){this.renderer=s,this.zone=o,this.el=t.nativeElement,this.$item={cols:-1,rows:-1,x:-1,y:-1},this.gridster=i,this.drag=new xe(this,i,this.zone),this.resize=new _e(this,i,this.zone)}ngOnInit(){this.gridster.addItem(this)}ngOnChanges(t){t.item&&(this.updateOptions(),this.init||this.gridster.calculateLayout$.next()),t.item&&t.item.previousValue&&this.setSize()}updateOptions(){this.$item=O.merge(this.$item,this.item,{cols:void 0,rows:void 0,x:void 0,y:void 0,layerIndex:void 0,dragEnabled:void 0,resizeEnabled:void 0,compactEnabled:void 0,itemAspectRatio:void 0,maxItemRows:void 0,minItemRows:void 0,maxItemCols:void 0,minItemCols:void 0,maxItemArea:void 0,minItemArea:void 0,resizableHandles:{s:void 0,e:void 0,n:void 0,w:void 0,se:void 0,ne:void 0,sw:void 0,nw:void 0}})}ngOnDestroy(){this.gridster.removeItem(this),this.drag.destroy(),this.resize.destroy(),this.gridster=this.drag=this.resize=null}setSize(){this.renderer.setStyle(this.el,"display",this.notPlaced?"":"block"),this.gridster.gridRenderer.updateItem(this.el,this.$item,this.renderer),this.updateItemSize()}updateItemSize(){let t=this.$item.y*this.gridster.curRowHeight,i=this.$item.x*this.gridster.curColWidth,s=this.$item.cols*this.gridster.curColWidth-this.gridster.$options.margin,o=this.$item.rows*this.gridster.curRowHeight-this.gridster.$options.margin;this.top=t,this.left=i,!this.init&&s>0&&o>0&&(this.init=!0,this.item.initCallback&&this.item.initCallback(this.item,this),this.gridster.options.itemInitCallback&&this.gridster.options.itemInitCallback(this.item,this),this.itemInit.next({item:this.item,itemComponent:this}),this.gridster.$options.scrollToNewItems&&this.el.scrollIntoView({block:"end",inline:"nearest",behavior:"smooth"})),(s!==this.width||o!==this.height)&&(this.width=s,this.height=o,this.gridster.options.itemResizeCallback&&this.gridster.options.itemResizeCallback(this.item,this),this.itemResize.next({item:this.item,itemComponent:this}))}itemChanged(){this.gridster.options.itemChangeCallback&&this.gridster.options.itemChangeCallback(this.item,this),this.itemChange.next({item:this.item,itemComponent:this})}checkItemChanges(t,i){t.rows===i.rows&&t.cols===i.cols&&t.x===i.x&&t.y===i.y||(this.gridster.checkCollision(this.$item)?(this.$item.x=i.x||0,this.$item.y=i.y||0,this.$item.cols=i.cols||1,this.$item.rows=i.rows||1,this.setSize()):(this.item.cols=this.$item.cols,this.item.rows=this.$item.rows,this.item.x=this.$item.x,this.item.y=this.$item.y,this.gridster.calculateLayout$.next(),this.itemChanged()))}canBeDragged(){let t=this.gridster.$options.draggable.enabled,i=this.$item.dragEnabled===void 0?t:this.$item.dragEnabled;return!this.gridster.mobile&&t&&i}canBeResized(){let t=this.gridster.$options.resizable.enabled,i=this.$item.resizeEnabled===void 0?t:this.$item.resizeEnabled;return!this.gridster.mobile&&t&&i}getResizableHandles(){let t=this.gridster.$options.resizable.handles,i=this.$item.resizableHandles;return i===void 0?t:S(S({},t),i)}bringToFront(t){if(t&&t<=0)return;let i=this.getLayerIndex(),s=this.gridster.$options.maxLayerIndex;if(i<s){let o=t?i+t:s;this.item.layerIndex=this.$item.layerIndex=o>s?s:o}}sendToBack(t){if(t&&t<=0)return;let i=this.getLayerIndex();if(i>0){let s=t?i-t:0;this.item.layerIndex=this.$item.layerIndex=s<0?0:s}}getLayerIndex(){return this.item.layerIndex!==void 0?this.item.layerIndex:this.gridster.$options.defaultLayerIndex!==void 0?this.gridster.$options.defaultLayerIndex:0}static \u0275fac=function(i){return new(i||n)(Q(Et),Q(Ie),Q(Rt),Q(ce))};static \u0275cmp=k({type:n,selectors:[["gridster-item"]],hostVars:2,hostBindings:function(i,s){i&2&&Oe("z-index",s.zIndex)},inputs:{item:"item"},outputs:{itemInit:"itemInit",itemChange:"itemChange",itemResize:"itemResize"},features:[ot],ngContentSelectors:ci,decls:9,vars:8,consts:[[1,"gridster-item-resizable-handler","handle-s"],[1,"gridster-item-resizable-handler","handle-e"],[1,"gridster-item-resizable-handler","handle-n"],[1,"gridster-item-resizable-handler","handle-w"],[1,"gridster-item-resizable-handler","handle-se"],[1,"gridster-item-resizable-handler","handle-ne"],[1,"gridster-item-resizable-handler","handle-sw"],[1,"gridster-item-resizable-handler","handle-nw"],[1,"gridster-item-resizable-handler","handle-s",3,"mousedown","touchstart"],[1,"gridster-item-resizable-handler","handle-e",3,"mousedown","touchstart"],[1,"gridster-item-resizable-handler","handle-n",3,"mousedown","touchstart"],[1,"gridster-item-resizable-handler","handle-w",3,"mousedown","touchstart"],[1,"gridster-item-resizable-handler","handle-se",3,"mousedown","touchstart"],[1,"gridster-item-resizable-handler","handle-ne",3,"mousedown","touchstart"],[1,"gridster-item-resizable-handler","handle-sw",3,"mousedown","touchstart"],[1,"gridster-item-resizable-handler","handle-nw",3,"mousedown","touchstart"]],template:function(i,s){i&1&&(Ft(),It(0),z(1,$i,1,0,"div",0),z(2,ki,1,0,"div",1),z(3,Pi,1,0,"div",2),z(4,Si,1,0,"div",3),z(5,Di,1,0,"div",4),z(6,Ei,1,0,"div",5),z(7,Ri,1,0,"div",6),z(8,Fi,1,0,"div",7)),i&2&&(h(),T(s.resize.resizableHandles!=null&&s.resize.resizableHandles.s&&s.resize.resizeEnabled?1:-1),h(),T(s.resize.resizableHandles!=null&&s.resize.resizableHandles.e&&s.resize.resizeEnabled?2:-1),h(),T(s.resize.resizableHandles!=null&&s.resize.resizableHandles.n&&s.resize.resizeEnabled?3:-1),h(),T(s.resize.resizableHandles!=null&&s.resize.resizableHandles.w&&s.resize.resizeEnabled?4:-1),h(),T(s.resize.resizableHandles!=null&&s.resize.resizableHandles.se&&s.resize.resizeEnabled?5:-1),h(),T(s.resize.resizableHandles!=null&&s.resize.resizableHandles.ne&&s.resize.resizeEnabled?6:-1),h(),T(s.resize.resizableHandles!=null&&s.resize.resizableHandles.sw&&s.resize.resizeEnabled?7:-1),h(),T(s.resize.resizableHandles!=null&&s.resize.resizableHandles.nw&&s.resize.resizeEnabled?8:-1))},styles:[`gridster-item{box-sizing:border-box;z-index:1;position:absolute;overflow:hidden;transition:.3s;display:none;background:#fff;-webkit-user-select:text;user-select:text}gridster-item.gridster-item-moving{cursor:move}gridster-item.gridster-item-resizing,gridster-item.gridster-item-moving{transition:0s;z-index:2;box-shadow:0 0 5px 5px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.gridster-item-resizable-handler{position:absolute;z-index:2}.gridster-item-resizable-handler.handle-n{cursor:ns-resize;height:10px;right:0;top:0;left:0}.gridster-item-resizable-handler.handle-e{cursor:ew-resize;width:10px;bottom:0;right:0;top:0}.gridster-item-resizable-handler.handle-s{cursor:ns-resize;height:10px;right:0;bottom:0;left:0}.gridster-item-resizable-handler.handle-w{cursor:ew-resize;width:10px;left:0;top:0;bottom:0}.gridster-item-resizable-handler.handle-ne{cursor:ne-resize;width:10px;height:10px;right:0;top:0}.gridster-item-resizable-handler.handle-nw{cursor:nw-resize;width:10px;height:10px;left:0;top:0}.gridster-item-resizable-handler.handle-se{cursor:se-resize;width:0;height:0;right:0;bottom:0;border-style:solid;border-width:0 0 10px 10px;border-color:transparent}.gridster-item-resizable-handler.handle-sw{cursor:sw-resize;width:10px;height:10px;left:0;bottom:0}gridster-item:hover .gridster-item-resizable-handler.handle-se{border-color:transparent transparent #ccc}
|
|
4
4
|
`],encapsulation:2})}return n})();var Ni=["*",[["actions"]]],Li=["*","actions"];function Bi(n,e){n&1&&(X(0,"div",3),It(1,1),L())}var nt=class n{item;static \u0275fac=function(t){return new(t||n)};static \u0275cmp=k({type:n,selectors:[["app-widget-base"]],inputs:{item:"item"},ngContentSelectors:Li,decls:7,vars:2,consts:[[1,"widget"],[1,"header"],[1,"title"],[1,"actions"],[1,"content"]],template:function(t,i){t&1&&(Ft(Ni),X(0,"div",0)(1,"div",1)(2,"div",2),f(3),L(),z(4,Bi,2,0,"div",3),L(),X(5,"div",4),It(6),L()()),t&2&&(h(3),j(i.item.title),h(),T(i.item.configurable?4:-1))},dependencies:[D,W,F],styles:["[_nghost-%COMP%]{display:block;height:100%}.widget[_ngcontent-%COMP%]{height:100%;padding:12px 0;display:flex;flex-direction:column}.header[_ngcontent-%COMP%]{flex:0 0 auto;padding:0 16px;display:flex;align-items:center;justify-content:space-between}.title[_ngcontent-%COMP%]{font-size:18px;font-weight:600;flex:1 1 auto;opacity:.5}.actions[_ngcontent-%COMP%]{flex:0 0 auto}.content[_ngcontent-%COMP%]{flex:1 1 auto;display:flex;flex-direction:column;width:100%;height:0;overflow:hidden}"]})};var se=class n{item;port="";api=M($t);msg=M(Ze);spin=P(!1);isPortValid(){let e=Number(this.port);return Number.isInteger(e)&&e>0&&e<=65535}killPort(){if(!this.isPortValid()){this.msg.error("\u8BF7\u8F93\u5165\u6709\u6548\u7684\u7AEF\u53E3\u53F7\uFF081-65535\uFF09");return}this.spin.set(!0),this.api.killPort(Number(this.port)).subscribe({next:e=>{if(e.killed.length===0){this.msg.info(`\u7AEF\u53E3 ${this.port} \u6CA1\u6709\u88AB\u4EFB\u4F55\u8FDB\u7A0B\u5360\u7528`);return}this.port="",this.msg.success(`\u7AEF\u53E3 ${this.port} \u5DF2\u88AB\u7EC8\u6B62`)},error:e=>{console.error("Kill port error",e),this.msg.error(`\u65E0\u6CD5\u7EC8\u6B62\u7AEF\u53E3 ${this.port}\uFF1A${e.message||e}`)},complete:()=>{this.spin.set(!1)}})}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=k({type:n,selectors:[["app-kill-port-widget"]],inputs:{item:"item"},decls:11,vars:3,consts:[[3,"item"],[1,"logo"],[1,"icon-wrapper"],["nzType","thunderbolt","nzTheme","outline"],[2,"padding","12px 24px"],["nz-input","","placeholder","\u8F93\u5165\u4E00\u4E2A\u7F51\u7EDC\u7AEF\u53E3","name","port",3,"ngModelChange","keydown.enter","ngModel"],["nz-button","","nzType","primary",3,"click"],["nzTheme","outline",3,"nzType"]],template:function(t,i){t&1&&(l(0,"app-widget-base",0)(1,"div",1)(2,"div",2),p(3,"nz-icon",3),a(),l(4,"h3"),f(5,"\u51C6\u5907\u597D\u7EC8\u6B62"),a()(),l(6,"nz-space",4)(7,"input",5),mt("ngModelChange",function(o){return ht(i.port,o)||(i.port=o),o}),v("keydown.enter",function(){return i.killPort()}),a(),l(8,"button",6),v("click",function(){return i.killPort()}),p(9,"nz-icon",7),f(10," \u7EC8\u6B62 "),a()()()),t&2&&(c("item",i.item),h(7),dt("ngModel",i.port),h(2),c("nzType",i.spin()?"loading":"thunderbolt"))},dependencies:[D,gt,zt,ct,pt,nt,F,B,Mt,Tt,Ue,je,W,A,V,H],styles:[".logo[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;padding:12px 24px}.logo[_ngcontent-%COMP%] .icon-wrapper[_ngcontent-%COMP%]{width:32px;height:32px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;background-color:var(--app-gray);border-radius:50%}.logo[_ngcontent-%COMP%] .icon-wrapper[_ngcontent-%COMP%] nz-icon[_ngcontent-%COMP%]{font-size:20px;color:var(--app-primary-5)}.logo[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{flex:1 1 auto;font-size:18px;margin:0;font-weight:500}"],changeDetection:0})};var ne=class n{api=M(Zt);preview(e,t){let i=new Ye().set("url",e);return t?.limit&&(i=i.set("limit",String(t.limit))),t?.cacheSec&&(i=i.set("cacheSec",String(t.cacheSec))),t?.force&&(i=i.set("force","1")),this.api.get("/api/rss/preview",i)}static \u0275fac=function(t){return new(t||n)};static \u0275prov=_t({token:n,factory:n.\u0275fac,providedIn:"root"})};var Hi=(n,e)=>e.link;function Ai(n,e){if(n&1){let t=b();l(0,"div",6)(1,"div",10),f(2,"\u672A\u914D\u7F6E RSS \u6E90"),a(),l(3,"button",11),v("click",function(){g(t);let s=m();return u(s.openConfig())}),f(4,"\u53BB\u914D\u7F6E"),a()()}}function Xi(n,e){if(n&1){let t=b();l(0,"div",12)(1,"p"),f(2),a(),l(3,"button",2),v("click",function(){g(t);let s=m(2);return u(s.reload(!0))}),f(4,"\u91CD\u8BD5"),a()()}if(n&2){let t=m(2);h(2),j(t.errorMsg())}}function Yi(n,e){if(n&1&&(l(0,"span",17),f(1),Ne(2,"date"),a()),n&2){let t=m().$implicit;h(),j(Le(2,1,t.pubDate,"yyyy-MM-dd HH:mm"))}}function Gi(n,e){if(n&1&&(l(0,"span",18),f(1),a()),n&2){let t=m().$implicit;h(),j(t.author)}}function ji(n,e){if(n&1&&(l(0,"a",14)(1,"div",15),f(2),a(),l(3,"div",16),z(4,Yi,3,4,"span",17),z(5,Gi,2,1,"span",18),a()()),n&2){let t=e.$implicit;c("href",t.link,Ee),h(2),j(t.title),h(2),T(t.pubDate?4:-1),h(),T(t.author?5:-1)}}function Ui(n,e){if(n&1&&(l(0,"div",13),K(1,ji,6,4,"a",14,Hi),a()),n&2){let t=m(2);h(),q(t.feedItems())}}function Qi(n,e){if(n&1&&z(0,Xi,5,1,"div",12)(1,Ui,3,0,"div",13),n&2){let t=m();T(t.errorMsg()?0:1)}}function Ki(n,e){if(n&1){let t=b();et(0),l(1,"div",19)(2,"label"),f(3,"RSS\u6E90\u5730\u5740"),a(),l(4,"nz-input-wrapper")(5,"input",20),mt("ngModelChange",function(s){g(t);let o=m();return ht(o.rssUrl,s)||(o.rssUrl=s),u(s)}),a(),p(6,"nz-icon",21),a()(),it()}if(n&2){let t=m();h(5),dt("ngModel",t.rssUrl)}}function qi(n,e){if(n&1){let t=b();et(0),l(1,"button",22),v("click",function(){g(t);let s=m();return u(s.save())}),f(2,"\u4FDD\u5B58"),a(),it()}if(n&2){let t=m();h(),c("disabled",!t.rssUrl().trim())}}var oe=class n{item;layout=M(st);rss=M(ne);cdr=M(Yt);curConfig=P(null);rssUrl=P("");isModalVisible=P(!1);loading=P(!1);feedTitle=P("");feedItems=P([]);errorMsg=P("");hasConfig=R(()=>!!this.curConfig()?.rssUrl?.trim());ngOnChanges(e){if(e.item&&e.item.currentValue){let t=this.item?.config;this.curConfig.set(t?S({},t):null),t?.rssUrl&&this.reload(!1)}}openConfig(){let e=this.item?.config;this.rssUrl.set(e?.rssUrl??""),this.isModalVisible.set(!0)}reload(e=!0){let t=this.curConfig()??this.item?.config,i=(t?.rssUrl??"").trim();if(!i)return;this.loading.set(!0),this.errorMsg.set("");let s=t?.limit??20,o=t?.cacheSec??300;this.rss.preview(i,{limit:s,cacheSec:o,force:e}).subscribe({next:r=>{this.loading.set(!1),this.feedTitle.set(r.title??""),this.feedItems.set(r.items??[]),this.feedTitle()&&(this.item.title=this.feedTitle(),this.cdr.markForCheck())},error:r=>{this.errorMsg.set(ti(r,"\u52A0\u8F7D\u5931\u8D25")),this.loading.set(!1)}})}save(){let e=this.item.projectId,t=(this.rssUrl()??"").trim();if(!e||!t)return;let i=this.item?.config??{},s=G(S({},i),{rssUrl:t,limit:i.limit??20,cacheSec:i.cacheSec??300});this.item.config=s,this.curConfig.set(s),this.layout.updateConfig(e,this.item.id,s),this.isModalVisible.set(!1),this.reload(!0)}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=k({type:n,selectors:[["app-news-feed-widget"]],inputs:{item:"item"},features:[ot],decls:12,vars:5,consts:[[3,"item"],["ngProjectAs","actions",5,["actions"]],["nz-button","","nzType","link","nzSize","small",3,"click"],["nzTheme","outline",3,"nzType"],["nzType","setting","nzTheme","outline"],[1,"news-feed-widget"],[1,"empty"],["nzCentered","","nzTitle","\u914D\u7F6E\u90E8\u4EF6",3,"nzVisibleChange","nzOnCancel","nzVisible","nzMaskClosable"],[4,"nzModalContent"],[4,"nzModalFooter"],[1,"hint"],["nz-button","","nzType","default","nzSize","small",3,"click"],[1,"error"],[1,"list"],["target","_blank","rel","noreferrer",1,"row",3,"href"],[1,"t"],[1,"m"],[1,"d"],[1,"a"],[1,"modal-body"],["nz-input","","placeholder","\u8BF7\u8F93\u5165RSS\u6E90\u5730\u5740",2,"width","100%",3,"ngModelChange","ngModel"],["nzType","global","nzTheme","outline","nzInputPrefix",""],["nz-button","","nzType","primary",3,"click","disabled"]],template:function(t,i){t&1&&(l(0,"app-widget-base",0),et(1,1),l(2,"button",2),v("click",function(){return i.reload()}),p(3,"nz-icon",3),a(),l(4,"button",2),v("click",function(){return i.openConfig()}),p(5,"nz-icon",4),a(),it(),l(6,"div",5),z(7,Ai,5,0,"div",6)(8,Qi,2,1),a()(),l(9,"nz-modal",7),mt("nzVisibleChange",function(o){return ht(i.isModalVisible,o)||(i.isModalVisible=o),o}),v("nzOnCancel",function(){return i.isModalVisible.set(!1)}),Xt(10,Ki,7,1,"ng-container",8)(11,qi,3,1,"ng-container",9),a()),t&2&&(c("item",i.item),h(3),c("nzType",i.loading()?"loading":"reload"),h(4),T(i.hasConfig()?8:7),h(2),dt("nzVisible",i.isModalVisible),c("nzMaskClosable",!1))},dependencies:[D,gt,zt,ct,pt,Mt,Tt,qt,Kt,W,A,V,H,nt,Qt,Ut,jt,Gt,F,B,Xe],styles:[".news-feed-widget[_ngcontent-%COMP%]{padding:8px 12px;height:100%;overflow:auto}.empty[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;height:100%;opacity:.75}.list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.row[_ngcontent-%COMP%]{display:block;padding:8px;border-radius:8px;text-decoration:none;border:1px solid rgba(0,0,0,.06)}.row[_ngcontent-%COMP%]:hover{background:#00000005}.t[_ngcontent-%COMP%]{font-size:13px;line-height:1.3;color:#000000e0}.m[_ngcontent-%COMP%]{margin-top:4px;display:flex;gap:10px;font-size:12px;color:#00000073}.error[_ngcontent-%COMP%]{display:flex;gap:8px;flex-direction:column;align-items:center;justify-content:center;color:#d4380d}.error[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{width:100%;white-space:pre-wrap;word-break:break-word}.loading[_ngcontent-%COMP%]{display:flex;gap:8px;align-items:center;opacity:.75}.modal-body[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:space-between;align-items:center}.modal-body[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{flex:0 0 auto;margin-right:16px;display:inline-block;width:100px}.modal-body[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{flex:1;margin-left:16px}"]})};var Ji=(n,e)=>e.value;function Zi(n,e){if(n&1){let t=b();p(0,"nz-icon",9),l(1,"button",10),v("click",function(){g(t);let s=m(2);return u(s.openConfig())}),f(2,"\u914D\u7F6E\u90E8\u4EF6"),a()}}function ts(n,e){n&1&&p(0,"nz-badge",15)}function es(n,e){n&1&&p(0,"nz-badge",16)}function is(n,e){n&1&&p(0,"nz-badge",17)}function ss(n,e){if(n&1){let t=b();l(0,"div",11)(1,"div",12)(2,"div",13),p(3,"nz-icon",14),z(4,ts,1,0,"nz-badge",15)(5,es,1,0,"nz-badge",16)(6,is,1,0,"nz-badge",17),a(),l(7,"div",18)(8,"div",19),f(9),a(),l(10,"div",20),f(11),a()()()(),l(12,"div",21)(13,"app-task-actions",22),v("toggle",function(){g(t);let s=m(2);return u(s.toggleTask())})("restart",function(){g(t);let s=m(2);return u(s.restartTask())}),a(),l(14,"button",23),v("click",function(){g(t);let s=m(2);return u(s.goToTask())}),p(15,"nz-icon",24),f(16," \u524D\u5F80\u4EFB\u52A1\u9875 "),a()()}if(n&2){let t,i,s,o,r=m(2);h(),c("nz-tooltip",((t=r.curConfig())==null?null:t.description)??""),h(3),T(r.curRuntime().status==="running"?4:r.curRuntime().status==="stopping"?5:6),h(4),c("title",(i=r.curConfig())==null?null:i.taskName),h(),j((s=r.curConfig())==null?null:s.taskName),h(2),bt(" ",r.curRuntime().status==="running"?"\u8FD0\u884C\u4E2D":r.curRuntime().status==="stopping"?"\u505C\u6B62\u4E2D":r.curRuntime().status==="stopped"?"\u5DF2\u505C\u6B62":((o=r.curConfig())==null?null:o.description)||"\u7A7A\u95F2\u4E2D"," "),h(2),c("isRunning",r.isRunning())("isStopping",r.isStopping())("isStartable",r.isStartable())}}function ns(n,e){if(n&1&&(l(0,"div",8),z(1,Zi,3,0)(2,ss,17,8),a()),n&2){let t=m();xt("no-config",t.curConfig()===null),h(),T(t.curConfig()===null?1:2)}}function os(n,e){if(n&1&&p(0,"nz-option",27),n&2){let t=e.$implicit;c("nzLabel",t.label)("nzValue",t.value)}}function rs(n,e){if(n&1){let t=b();et(0),l(1,"div",25)(2,"label"),f(3,"\u9009\u62E9\u4E00\u9879\u4EFB\u52A1"),a(),l(4,"nz-select",26),mt("ngModelChange",function(s){g(t);let o=m();return ht(o.selectedTaskId,s)||(o.selectedTaskId=s),u(s)}),K(5,os,1,2,"nz-option",27,Ji),a()(),it()}if(n&2){let t=m();h(4),dt("ngModel",t.selectedTaskId),c("nzLoading",t.loading())("nzDisabled",t.loading()),h(),q(t.taskOptions())}}function ls(n,e){if(n&1){let t=b();et(0),l(1,"button",28),v("click",function(){g(t);let s=m();return u(s.save())}),f(2,"\u4FDD\u5B58"),a(),it()}if(n&2){let t=m();h(),c("disabled",!t.selectedTaskId)}}var re=class n{item;taskState=M(ii);layout=M(st);router=M(Ge);isModalVisible=P(!1);loading=P(!1);curConfig=P(null);curRuntime=R(()=>{let e=this.curConfig();if(!e)return{status:"idle"};let t=e.taskId;return this.taskState.getRuntime(t)||{status:"idle"}});isRunning=R(()=>this.curRuntime().status==="running");isStopping=R(()=>this.curRuntime().status==="stopping");isStartable=R(()=>{let e=this.curRuntime().status;return e==="idle"||e==="stopped"||e==="failed"||e==="success"});selectedTaskId="";rowsOfProject=R(()=>{let e=this.item.projectId;return e?this.taskState.rowsViewOf(e)():[]});taskOptions=R(()=>this.rowsOfProject().map(t=>({value:t.spec.id,label:t.spec.name??t.spec.id,description:t.spec.description??""})));ngOnChanges(e){if(e.item){let t=this.item?.config;this.curConfig.set(t?S({},t):null)}}async openConfig(){let e=this.item.projectId;if(!e){this.isModalVisible.set(!1);return}let t=this.item?.config;this.selectedTaskId=t?.taskId??"",this.isModalVisible.set(!0),this.loading.set(!0);try{await this.taskState.ensureProjectLoaded(e)}finally{this.loading.set(!1)}}save(){let e=this.item.projectId,t=(this.selectedTaskId??"").trim();if(!e||!t)return;let i=this.rowsOfProject().find(d=>d.spec.id===t),s=i?.spec.name??"",o=i?.spec.description??"",r={taskId:t,taskName:s,description:o};this.item.config=r,this.curConfig.set(r),this.layout.updateConfig(e,this.item.id,r),this.isModalVisible.set(!1)}toggleTask(){if(this.curConfig()==null||!this.curConfig().taskId)return;let e=this.curConfig().taskId;this.isRunning()?this.taskState.stopSelected(e):this.isStartable()&&this.taskState.startSelected(e),this.goToTask()}restartTask(){if(this.curConfig()==null||!this.curConfig().taskId)return;let e=this.curConfig().taskId;this.taskState.restartSelected(e),this.goToTask()}async goToTask(){let e=this.curConfig();if(!e)return;let t=e.taskId;this.taskState.select(t),await this.router.navigate(["/tasks"])}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=k({type:n,selectors:[["app-quick-task-widget"]],inputs:{item:"item"},features:[ot],decls:8,vars:4,consts:[[3,"item"],["ngProjectAs","actions",5,["actions"]],["nz-button","","nzType","link","nzSize","small",3,"click"],["nzType","setting","nzTheme","outline"],[1,"configured-info",3,"no-config"],["nzCentered","","nzTitle","\u914D\u7F6E\u90E8\u4EF6",3,"nzVisibleChange","nzOnCancel","nzVisible","nzMaskClosable"],[4,"nzModalContent"],[4,"nzModalFooter"],[1,"configured-info"],["nzType","setting","nzTheme","fill"],["nz-button","","nzType","primary",3,"click"],[1,"item"],["nzTooltipPlacement","right",1,"row",3,"nz-tooltip"],[1,"icon"],["nzType","codepen-circle","nzTheme","outline"],["nzStatus","processing"],["nzStatus","warning"],["nzStatus","default"],[1,"info"],[1,"name",3,"title"],[1,"description"],[1,"actions"],[3,"toggle","restart","isRunning","isStopping","isStartable"],["nz-button","","nzType","default",3,"click"],["nzType","schedule","nzTheme","outline"],[1,"modal-body"],["nzPlaceHolder","\u8BF7\u9009\u62E9\u4EFB\u52A1",2,"width","100%",3,"ngModelChange","ngModel","nzLoading","nzDisabled"],[3,"nzLabel","nzValue"],["nz-button","","nzType","primary",3,"click","disabled"]],template:function(t,i){t&1&&(l(0,"app-widget-base",0),et(1,1),l(2,"button",2),v("click",function(){return i.openConfig()}),p(3,"nz-icon",3),a(),it(),z(4,ns,3,3,"div",4),a(),l(5,"nz-modal",5),mt("nzVisibleChange",function(o){return ht(i.isModalVisible,o)||(i.isModalVisible=o),o}),v("nzOnCancel",function(){return i.isModalVisible.set(!1)}),Xt(6,rs,7,3,"ng-container",6)(7,ls,3,1,"ng-container",7),a()),t&2&&(c("item",i.item),h(4),T(i.item.configurable?4:-1),h(),dt("nzVisible",i.isModalVisible),c("nzMaskClosable",!1))},dependencies:[D,gt,ct,pt,nt,W,A,V,H,F,B,Qt,Ut,jt,Gt,oi,si,ni,li,ri,Jt,Je,ai],styles:[".configured-info[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:100%;height:100%}.configured-info.no-config[_ngcontent-%COMP%]{gap:20px}.configured-info.no-config[_ngcontent-%COMP%] nz-icon[_ngcontent-%COMP%]{font-size:48px;color:var(--app-gray)}.configured-info[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;align-items:center;width:100%;justify-content:center;gap:8px}.item[_ngcontent-%COMP%]{width:100%;padding:12px 16px;cursor:pointer}.item[_ngcontent-%COMP%]:hover, .item.active[_ngcontent-%COMP%]{background:var(--app-primary-3)}.item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%]{display:flex;gap:10px;align-items:center;overflow:hidden;justify-content:space-between}.item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{font-size:36px;flex:0 0 auto;position:relative}.item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .info[_ngcontent-%COMP%]{flex:1 1 auto;display:flex;flex-direction:column;gap:4px;overflow:hidden}.item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .info[_ngcontent-%COMP%] .name[_ngcontent-%COMP%]{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item[_ngcontent-%COMP%] .row[_ngcontent-%COMP%] .info[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{font-size:13px;color:var(--app-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item[_ngcontent-%COMP%] .badge[_ngcontent-%COMP%]{font-size:12px;padding:2px 8px;border-radius:999px;border:1px solid rgba(0,0,0,.2);opacity:.85}.item[_ngcontent-%COMP%] .badge[data-status=running][_ngcontent-%COMP%]{font-weight:700}.item[_ngcontent-%COMP%] .badge[data-status=stopped][_ngcontent-%COMP%]{opacity:.7}.item[_ngcontent-%COMP%] .badge[data-status=failed][_ngcontent-%COMP%]{font-weight:700}.item[_ngcontent-%COMP%] .meta[_ngcontent-%COMP%]{margin-top:6px;font-size:12px;opacity:.75;display:flex;align-items:center;gap:6px}.item[_ngcontent-%COMP%] .meta[_ngcontent-%COMP%] .mono[_ngcontent-%COMP%]{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.item[_ngcontent-%COMP%] .meta[_ngcontent-%COMP%] .sep[_ngcontent-%COMP%]{opacity:.5}.modal-body[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:space-between;align-items:center}.modal-body[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{flex:0 0 auto;margin-right:16px;display:inline-block;width:120px}.modal-body[_ngcontent-%COMP%] nz-select[_ngcontent-%COMP%]{flex:1;margin-left:16px}"]})};var le=class n{item;removeWidget=new N;static \u0275fac=function(t){return new(t||n)};static \u0275cmp=k({type:n,selectors:[["app-welcome-widget"]],inputs:{item:"item"},outputs:{removeWidget:"removeWidget"},decls:25,vars:1,consts:[[3,"item"],[1,"logo"],["nzType","proj:angular","nzTheme","outline"],[1,"item"],[1,"icon-wrapper"],["nzType","dashboard","nzTheme","outline"],["nzType","arrow-left","nzTheme","outline"],["nzType","home","nzTheme","outline"],[1,"footer"],["nz-button","","nzType","primary","routerLink","/projects","nzSize","large",3,"click"],["nzType","check","nzTheme","outline"]],template:function(t,i){t&1&&(l(0,"app-widget-base",0)(1,"div",1),p(2,"nz-icon",2),a(),l(3,"h2"),f(4,"\u6B22\u8FCE\u6765\u5230\u65B0\u9879\u76EE\uFF01"),a(),l(5,"div",3)(6,"div",4),p(7,"nz-icon",5),a(),l(8,"p"),f(9,"\u8FD9\u91CC\u662F\u9879\u76EE\u4EEA\u8868\u76D8\uFF0C\u4F60\u53EF\u4EE5\u70B9\u51FB\u53F3\u4E0A\u65B9\u7684\u201C\u81EA\u5B9A\u4E49\u201D\u6309\u94AE\u6765\u6DFB\u52A0\u90E8\u4EF6\u3002\u4F60\u7684\u6539\u52A8\u5C06\u4F1A\u81EA\u52A8\u4FDD\u5B58\u3002"),a()(),l(10,"div",3)(11,"div",4),p(12,"nz-icon",6),a(),l(13,"p"),f(14,"\u5DE6\u4FA7\u662F\u5404\u4E2A\u7BA1\u7406\u9875\u9762\u3002\u5728\u300C\u63D2\u4EF6\u300D\u9875\u9762\u53EF\u4EE5\u6DFB\u52A0\u65B0\u7684 Vue CLI \u63D2\u4EF6\uFF0C\u300C\u4F9D\u8D56\u300D\u9875\u9762\u7528\u4E8E\u7BA1\u7406\u9879\u76EE\u7684\u4F9D\u8D56\u5305\uFF0C\u300C\u914D\u7F6E\u300D\u9875\u9762\u7528\u4E8E\u914D\u7F6E\u5404\u79CD\u5DE5\u5177\uFF0C\u300C\u4EFB\u52A1\u300D\u9875\u9762\u7528\u4E8E\u8FD0\u884C\u5404\u4E2A\u811A\u672C\uFF08\u6BD4\u5982 webpack \u6253\u5305\uFF09\u3002"),a()(),l(15,"div",3)(16,"div",4),p(17,"nz-icon",7),a(),l(18,"p"),f(19,"\u70B9\u51FB\u5DE6\u4E0A\u65B9\u7684\u4E0B\u62C9\u83DC\u5355\u6216\u72B6\u6001\u680F\u4E0A\u7684\u5C0F\u623F\u5B50\u6309\u94AE\u6765\u8FD4\u56DE\u5230\u9879\u76EE\u7BA1\u7406\u5668\u3002"),a()(),l(20,"div",8)(21,"button",9),v("click",function(){return i.removeWidget.emit()}),p(22,"nz-icon",10),l(23,"span"),f(24," \u4E86\u89E3 "),a()()()()),t&2&&c("item",i.item)},dependencies:[D,F,B,W,A,V,H,nt],styles:[".logo[_ngcontent-%COMP%]{width:70px;height:70px;border-radius:50%;background-color:var(--app-primary-2);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.logo[_ngcontent-%COMP%] nz-icon[_ngcontent-%COMP%]{font-size:50px}h2[_ngcontent-%COMP%]{text-align:center;font-weight:600;flex:0 0 auto;margin-bottom:8px}.footer[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;padding:30px 0}.item[_ngcontent-%COMP%]{display:flex;flex-direction:row;align-items:center;padding:24px 16px}.item[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin-bottom:0}.item[_ngcontent-%COMP%] .icon-wrapper[_ngcontent-%COMP%]{width:50px;height:50px;margin-right:12px;flex:0 0 auto;background-color:var(--app-gray);border-radius:50%;display:flex;align-items:center;justify-content:center}.item[_ngcontent-%COMP%] .icon-wrapper[_ngcontent-%COMP%] nz-icon[_ngcontent-%COMP%]{font-size:24px;color:var(--app-primary-5)}"]})};function as(n,e){if(n&1){let t=b();l(0,"app-welcome-widget",1),v("removeWidget",function(){g(t);let s=m(2);return u(s.remove.emit(s.item))}),a()}if(n&2){let t=m(2);c("item",t.item)}}function ds(n,e){if(n&1&&p(0,"app-quick-task-widget",0),n&2){let t=m(2);c("item",t.item)}}function hs(n,e){if(n&1&&p(0,"app-kill-port-widget",0),n&2){let t=m(2);c("item",t.item)}}function ms(n,e){if(n&1&&p(0,"app-news-feed-widget",0),n&2){let t=m(2);c("item",t.item)}}function cs(n,e){if(n&1&&z(0,as,1,1,"app-welcome-widget",0)(1,ds,1,1,"app-quick-task-widget",0)(2,hs,1,1,"app-kill-port-widget",0)(3,ms,1,1,"app-news-feed-widget",0),n&2){let t,i=m();T((t=i.item.key)==="welcome"?0:t==="quickTasks"?1:t==="killPort"?2:t==="newsFeed"?3:-1)}}var ae=class n{item;editMode=!1;remove=new N;static \u0275fac=function(t){return new(t||n)};static \u0275cmp=k({type:n,selectors:[["app-widget-host"]],inputs:{item:"item",editMode:"editMode"},outputs:{remove:"remove"},decls:1,vars:1,consts:[[3,"item"],[3,"removeWidget","item"]],template:function(t,i){t&1&&z(0,cs,4,1),t&2&&T(i.item?0:-1)},dependencies:[D,le,re,se,oe],styles:["[_nghost-%COMP%]{display:block;width:100%;height:100%}.widget-shell[_ngcontent-%COMP%]{width:100%;height:100%}.widget-shell[data-fit=scroll][_ngcontent-%COMP%]{overflow:auto}.widget-shell[data-fit=responsive][_ngcontent-%COMP%], .widget-shell[data-fit=scale][_ngcontent-%COMP%]{overflow:hidden}.widget-scale[_ngcontent-%COMP%]{width:100%;height:100%}"]})};var ps=(n,e)=>e.id;function gs(n,e){if(n&1){let t=b();l(0,"div",5)(1,"button",6),p(2,"i",7),f(3),a()(),l(4,"button",8),v("click",function(){g(t);let s=m().$implicit,o=m();return u(o.remove.emit(s.id))}),p(5,"nz-icon",9),a()}if(n&2){let t=m().$implicit;h(2),c("nzType",t.icon||"appstore"),h(),bt(" ",t.title," ")}}function us(n,e){if(n&1){let t=b();l(0,"gridster-item",1)(1,"div",2),z(2,gs,6,2),l(3,"div",3)(4,"app-widget-host",4),v("remove",function(s){g(t);let o=m();return u(o.remove.emit(s.id))}),a()()()()}if(n&2){let t=e.$implicit,i=m();c("item",t),h(),xt("edit-mode",i.editMode),h(),T(i.editMode?2:-1),h(2),c("item",t)("editMode",i.editMode)}}var de=class n{editMode=!1;items=[];itemsChange=new N;remove=new N;kill=new N;patch=new Map;itemChange=(e,t)=>{let i=t.item.id;i&&this.patch.set(i,{x:e.x??t.item.x,y:e.y??t.item.y,cols:e.cols??t.item.cols,rows:e.rows??t.item.rows})};itemResize=(e,t)=>{};options={gridType:C.Fixed,fixedColWidth:90,fixedRowHeight:90,margin:10,outerMargin:!0,compactType:_.None,pushItems:!0,displayGrid:ie.None,resizable:{enabled:!0,stop:()=>this.emitSync()},draggable:{enabled:!1,stop:()=>this.emitSync()},itemChangeCallback:this.itemChange,itemResizeCallback:this.itemResize};ngOnChanges(e){let t=e.editMode;t&&t.currentValue!=t.previousValue&&(this.options=G(S({},this.options),{draggable:G(S({},this.options.draggable),{enabled:this.editMode}),resizable:G(S({},this.options.resizable),{enabled:this.editMode}),fixedColWidth:this.editMode?70:90,fixedRowHeight:this.editMode?70:90}))}emitSync(){let e=this.items.map(t=>{let i=this.patch.get(t.id);return i?S(S({},t),i):t});this.patch.clear(),this.itemsChange.emit(e)}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=k({type:n,selectors:[["app-dashboard-canvas"]],inputs:{editMode:"editMode",items:"items"},outputs:{itemsChange:"itemsChange",remove:"remove",kill:"kill"},features:[ot],decls:3,vars:1,consts:[[3,"options"],[3,"item"],[1,"card"],[1,"card-body"],[3,"remove","item","editMode"],["aria-hidden","true",1,"card-overlay"],["nz-button","","nzType","primary","nzSize","large"],["nz-icon","","nzTheme","outline",3,"nzType"],["nz-button","","nzType","text","nzSize","small","nz-tooltip","\u79FB\u9664\u90E8\u4EF6",1,"remove-button",3,"click"],["nzType","close","nzTheme","outline"]],template:function(t,i){t&1&&(l(0,"gridster",0),K(1,us,5,6,"gridster-item",1,ps),a()),t&2&&(c("options",i.options),h(),q(i.items))},dependencies:[D,W,A,V,H,F,B,Ie,xi,ae],styles:["[_nghost-%COMP%]{display:block;height:100%}gridster[_ngcontent-%COMP%]{display:block;height:100%;background:var(--app-primary-1)}gridster-item[_ngcontent-%COMP%]{border-radius:10px}.card[_ngcontent-%COMP%]{height:100%;background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000000f;overflow:hidden;position:relative}.card.edit-mode[_ngcontent-%COMP%]{-webkit-user-select:none;user-select:none}.card-overlay[_ngcontent-%COMP%]{position:absolute;inset:0;background:#ffffff8c;display:flex;justify-content:center;align-items:center;pointer-events:none;z-index:2}.remove-button[_ngcontent-%COMP%]{position:absolute;right:16px;top:16px;z-index:3;background:var(--app-primary-1);color:var(--app-primary);transition:all .3s}.remove-button[_ngcontent-%COMP%]:hover{background:var(--app-primary);color:#fff}.card-overlay[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{pointer-events:none;border-radius:20px}.title[_ngcontent-%COMP%]{font-size:12px;color:#000000bf}.card-body[_ngcontent-%COMP%]{position:relative;height:100%}.card.edit-mode[_ngcontent-%COMP%] .card-body[_ngcontent-%COMP%]{cursor:move;pointer-events:none;opacity:.8}"]})};var fs=["class","component"],vi=class n{projectContext=M(ei);layout=M(st);envInjector=M(Se);projectId=R(()=>this.projectContext.currentProjectId()||"");editMode=P(!1);items=R(()=>this.layout.items());constructor(){Ve(()=>{let e=this.projectId();e&&(Be(()=>this.layout.load(e)),De(this.envInjector,()=>{Re(()=>{queueMicrotask(()=>this.editMode.set(!1))})}))})}toggleEdit(){let e=!this.editMode();this.editMode.set(e),e?this.layout.getWidgets():this.layout.flushSave(this.projectId())}onItemsChange(e){this.layout.setItems(this.projectId(),e)}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=k({type:n,selectors:[["app-dashboard",8,"component"]],hostVars:2,hostBindings:function(t,i){t&2&&xt("collapsed",i.editMode())},attrs:fs,decls:14,vars:8,consts:[[3,"title","isFullscreen"],["ngProjectAs","actions",5,["actions"]],["nz-button","","nzType","primary",3,"click"],["nzTheme","outline",3,"nzType"],[3,"itemsChange","remove","kill","editMode","items"],[1,"side-panel"],[1,"side-header"],[1,"title"],["nz-button","","nzType","text",3,"click"],["nzType","close"],[1,"side-body"],[3,"add"]],template:function(t,i){t&1&&(l(0,"app-page-layout",0),et(1,1),l(2,"button",2),v("click",function(){return i.toggleEdit()}),p(3,"nz-icon",3),f(4),a(),it(),l(5,"app-dashboard-canvas",4),v("itemsChange",function(o){return i.onItemsChange(o)})("remove",function(o){return i.layout.remove(o)})("kill",function(o){return i.layout.killProcess(o)}),a()(),l(6,"div",5)(7,"div",6)(8,"div",7),f(9,"\u6DFB\u52A0\u90E8\u4EF6"),a(),l(10,"button",8),v("click",function(){return i.editMode.set(!1)}),p(11,"nz-icon",9),a()(),l(12,"div",10)(13,"app-add-widget-drawer",11),v("add",function(o){return i.layout.add(o)}),a()()()),t&2&&(c("title","\u9879\u76EE\u4EEA\u8868\u76D8")("isFullscreen",!0),h(3),c("nzType",i.editMode()?"check":"edit"),h(),bt(" ",i.editMode()?"\u5B8C\u6210":"\u81EA\u5B9A\u4E49"," "),h(),c("editMode",i.editMode())("items",i.items()),h(),xt("open",i.editMode()))},dependencies:[D,W,A,V,H,F,B,Qe,Ke,qe,de,te],styles:["[_nghost-%COMP%]{height:100%;display:block;position:relative;transition:width .2s}.collapsed[_nghost-%COMP%]{width:calc(100% - 360px)}.side-panel[_ngcontent-%COMP%]{position:fixed;top:0;right:0;height:100vh;width:360px;background:#fff;box-shadow:-8px 0 24px #0000001f;transform:translate(100%);transition:transform .2s ease;z-index:1000;display:flex;flex-direction:column}.side-panel.open[_ngcontent-%COMP%]{transform:translate(0)}.side-header[_ngcontent-%COMP%]{height:56px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(0,0,0,.06)}.side-body[_ngcontent-%COMP%]{flex:1;overflow:hidden}"]})};export{vi as DashboardComponent};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as fe,b as be}from"./chunk-ZZN3NP7F.js";import{c as se,d as me,f as ce,g as ue,h as de,i as pe,j as ge}from"./chunk-ERH36Q6S.js";import"./chunk-C6GC5OOE.js";import{a as oe,b as re}from"./chunk-YNYWN7QI.js";import{a as ae,b as le}from"./chunk-4PSSTE76.js";import"./chunk-6ZXQKFRQ.js";import"./chunk-PUHSNEN6.js";import{a as _e,b as Ce}from"./chunk-7X4X4YHI.js";import{a as q,b as J}from"./chunk-PRKDURHI.js";import{a as ne,c as ie}from"./chunk-JFR7U5DE.js";import{g as L,h as U,k as K,l as R}from"./chunk-IX6UZA7J.js";import{d as ee,k as te}from"./chunk-JIVQNGBJ.js";import{Ib as G,Kb as Q,Ob as X,Ra as B,Sa as H,Ua as O,Va as W,Yb as Y,cc as Z,fc as $}from"./chunk-2EB7UV3S.js";import"./chunk-HFZLJHYR.js";import"./chunk-X6PRUZ5G.js";import{n as I}from"./chunk-SIKDYQOR.js";import{Gb as P,Ha as x,Kc as a,Lc as b,Mb as z,Mc as V,Pc as _,Qc as C,Rc as f,Xb as A,Zb as y,a as S,ac as D,b as E,bc as N,cc as p,dc as i,ec as o,fc as F,jc as v,kc as w,mc as k,na as j,ob as s,sa as T,sc as g,vc as c,ya as u,z as h,za as d}from"./chunk-YGWA6NUS.js";var M=class m{api=T(te);listHubV2AgentConnections(){return this.api.get("/api/agent-connections/hub-v2")}createHubV2AgentConnection(t){return this.api.post("/api/agent-connections/hub-v2",t)}updateHubV2AgentConnection(t,e){return this.api.put(`/api/agent-connections/hub-v2/${encodeURIComponent(t)}`,e)}deleteHubV2AgentConnection(t){return this.api.delete(`/api/agent-connections/hub-v2/${encodeURIComponent(t)}`)}setDefaultHubV2AgentConnection(t){return this.api.post(`/api/agent-connections/hub-v2/${encodeURIComponent(t)}/set-default`)}static \u0275fac=function(e){return new(e||m)};static \u0275prov=j({token:m,factory:m.\u0275fac,providedIn:"root"})};var Ee=(m,t)=>t.name;function he(m,t){if(m&1&&F(0,"nz-alert",9),m&2){let e=c();p("nzMessage",e.errorMessage())}}function Te(m,t){m&1&&F(0,"nz-empty",11)}function Fe(m,t){m&1&&(i(0,"nz-tag",18),a(1,"\u9ED8\u8BA4"),o())}function ke(m,t){m&1&&(i(0,"span"),a(1,"-"),o())}function Me(m,t){if(m&1){let e=k();i(0,"tr")(1,"td"),a(2),o(),i(3,"td"),a(4),o(),i(5,"td"),a(6),o(),i(7,"td"),a(8),o(),i(9,"td"),a(10),o(),i(11,"td"),a(12),o(),i(13,"td"),A(14,Fe,2,0,"nz-tag",18)(15,ke,2,0,"span"),o(),i(16,"td"),a(17),o(),i(18,"td")(19,"div",19)(20,"button",20),g("click",function(){let n=u(e).$implicit,l=c(2);return d(l.openEdit(n))}),a(21,"\u7F16\u8F91"),o(),i(22,"button",21),g("click",function(){let n=u(e).$implicit,l=c(2);return d(l.setDefault(n))}),a(23," \u8BBE\u4E3A\u9ED8\u8BA4 "),o(),i(24,"button",22),g("click",function(){let n=u(e).$implicit,l=c(2);return d(l.confirmDelete(n))}),a(25," \u5220\u9664 "),o()()()()}if(m&2){let e=t.$implicit,r=c(2);s(2),b(e.name),s(2),b(e.baseUrl),s(2),b(e.projectKey),s(2),b(e.projectName||"-"),s(2),b(r.tokenStatusText(e.hasProjectToken,e.projectTokenPreview)),s(2),b(r.tokenStatusText(e.hasPersonalToken,e.personalTokenPreview)),s(2),y(e.isDefault?14:15),s(3),b(e.source||"-"),s(5),p("disabled",e.isDefault||r.submitting()),s(2),p("disabled",r.submitting())}}function ze(m,t){if(m&1&&(i(0,"nz-table",12)(1,"thead")(2,"tr")(3,"th"),a(4,"\u540D\u79F0"),o(),i(5,"th"),a(6,"Base URL"),o(),i(7,"th"),a(8,"Project Key"),o(),i(9,"th"),a(10,"Project Name"),o(),i(11,"th"),a(12,"Project Token"),o(),i(13,"th"),a(14,"Personal Token"),o(),i(15,"th"),a(16,"\u9ED8\u8BA4"),o(),i(17,"th"),a(18,"\u6765\u6E90"),o(),i(19,"th"),a(20,"\u64CD\u4F5C"),o()()(),i(21,"tbody"),D(22,Me,26,10,"tr",null,Ee),o()()),m&2){let e=c();p("nzData",e.items())("nzFrontPagination",!1),s(22),N(e.items())}}function ve(m,t){if(m&1){let e=k();v(0),i(1,"div",23)(2,"label"),a(3,"name"),o(),i(4,"input",24),f("ngModelChange",function(n){u(e);let l=c();return C(l.createForm.name,n)||(l.createForm.name=n),d(n)}),o(),i(5,"label"),a(6,"baseUrl"),o(),i(7,"input",25),f("ngModelChange",function(n){u(e);let l=c();return C(l.createForm.baseUrl,n)||(l.createForm.baseUrl=n),d(n)}),o(),i(8,"label"),a(9,"projectKey"),o(),i(10,"input",24),f("ngModelChange",function(n){u(e);let l=c();return C(l.createForm.projectKey,n)||(l.createForm.projectKey=n),d(n)}),o(),i(11,"label"),a(12,"projectName"),o(),i(13,"input",26),f("ngModelChange",function(n){u(e);let l=c();return C(l.createForm.projectName,n)||(l.createForm.projectName=n),d(n)}),o(),i(14,"label"),a(15,"projectToken"),o(),i(16,"input",27),f("ngModelChange",function(n){u(e);let l=c();return C(l.createForm.projectToken,n)||(l.createForm.projectToken=n),d(n)}),o(),i(17,"label"),a(18,"personalToken"),o(),i(19,"input",27),f("ngModelChange",function(n){u(e);let l=c();return C(l.createForm.personalToken,n)||(l.createForm.personalToken=n),d(n)}),o(),F(20,"label"),i(21,"label",28),f("ngModelChange",function(n){u(e);let l=c();return C(l.createForm.isDefault,n)||(l.createForm.isDefault=n),d(n)}),a(22,"\u8BBE\u4E3A\u9ED8\u8BA4\u8FDE\u63A5"),o()(),w()}if(m&2){let e=c();s(4),_("ngModel",e.createForm.name),s(3),_("ngModel",e.createForm.baseUrl),s(3),_("ngModel",e.createForm.projectKey),s(3),_("ngModel",e.createForm.projectName),s(3),_("ngModel",e.createForm.projectToken),s(3),_("ngModel",e.createForm.personalToken),s(2),_("ngModel",e.createForm.isDefault)}}function we(m,t){m&1&&(i(0,"nz-tag",35),a(1,"\u5C06\u88AB\u6E05\u9664"),o())}function Ve(m,t){m&1&&(i(0,"nz-tag",35),a(1,"\u5C06\u88AB\u6E05\u9664"),o())}function je(m,t){if(m&1){let e=k();i(0,"div",23)(1,"label"),a(2,"name"),o(),F(3,"input",29),i(4,"label"),a(5,"baseUrl"),o(),i(6,"input",30),f("ngModelChange",function(n){u(e);let l=c(2);return C(l.editForm.baseUrl,n)||(l.editForm.baseUrl=n),d(n)}),o(),i(7,"label"),a(8,"projectKey"),o(),i(9,"input",30),f("ngModelChange",function(n){u(e);let l=c(2);return C(l.editForm.projectKey,n)||(l.editForm.projectKey=n),d(n)}),o(),i(10,"label"),a(11,"projectName"),o(),i(12,"input",30),f("ngModelChange",function(n){u(e);let l=c(2);return C(l.editForm.projectName,n)||(l.editForm.projectName=n),d(n)}),o(),i(13,"label"),a(14,"Project Token"),o(),i(15,"div",31)(16,"input",32),g("ngModelChange",function(n){u(e);let l=c(2);return d(l.onProjectTokenInput(n))}),o(),i(17,"button",33),g("click",function(){u(e);let n=c(2);return d(n.clearProjectTokenInEdit())}),a(18,"\u6E05\u9664 Project Token"),o()(),i(19,"div",34),a(20),A(21,we,2,0,"nz-tag",35),o(),i(22,"label"),a(23,"Personal Token"),o(),i(24,"div",31)(25,"input",32),g("ngModelChange",function(n){u(e);let l=c(2);return d(l.onPersonalTokenInput(n))}),o(),i(26,"button",33),g("click",function(){u(e);let n=c(2);return d(n.clearPersonalTokenInEdit())}),a(27,"\u6E05\u9664 Personal Token"),o()(),i(28,"div",34),a(29),A(30,Ve,2,0,"nz-tag",35),o(),F(31,"label"),i(32,"label",28),f("ngModelChange",function(n){u(e);let l=c(2);return C(l.editForm.isDefault,n)||(l.editForm.isDefault=n),d(n)}),a(33,"\u8BBE\u4E3A\u9ED8\u8BA4\u8FDE\u63A5"),o()()}if(m&2){let e=c(2);s(3),p("ngModel",e.editForm.name),s(3),_("ngModel",e.editForm.baseUrl),s(3),_("ngModel",e.editForm.projectKey),s(3),_("ngModel",e.editForm.projectName),s(4),p("ngModel",e.editForm.projectTokenInput),s(4),V(" \u5F53\u524D\u72B6\u6001\uFF1A",e.tokenStatusText(e.editingItem().hasProjectToken,e.editingItem().projectTokenPreview)," "),s(),y(e.editForm.clearProjectToken?21:-1),s(4),p("ngModel",e.editForm.personalTokenInput),s(4),V(" \u5F53\u524D\u72B6\u6001\uFF1A",e.tokenStatusText(e.editingItem().hasPersonalToken,e.editingItem().personalTokenPreview)," "),s(),y(e.editForm.clearPersonalToken?30:-1),s(2),_("ngModel",e.editForm.isDefault)}}function Pe(m,t){if(m&1&&(v(0),A(1,je,34,11,"div",23),w()),m&2){let e=c();s(),y(e.editingItem()?1:-1)}}function xe(){return{name:"",baseUrl:"",projectKey:"",projectName:"",projectToken:"",personalToken:"",isDefault:!1}}function Ae(m=""){return{name:m,baseUrl:"",projectKey:"",projectName:"",projectTokenInput:"",personalTokenInput:"",clearProjectToken:!1,clearPersonalToken:!1,isDefault:!1}}var ye=class m{api=T(M);message=T(ee);modal=T(L);loading=x(!1);submitting=x(!1);errorMessage=x("");items=x([]);configPath=x("");createVisible=x(!1);editVisible=x(!1);mcpServerConfigExample=JSON.stringify({mcpServers:{"ng-manager":{command:"ngm",args:["mcp"]}}},null,2);createForm=xe();editForm=Ae();editingItem=x(null);ngOnInit(){this.refresh()}async refresh(t=!1){this.loading.set(!0),this.errorMessage.set("");try{let e=await h(this.api.listHubV2AgentConnections());this.applyList(e),t&&this.message.success("\u5DF2\u5237\u65B0 Agent Connection \u5217\u8868")}catch(e){this.errorMessage.set(`\u52A0\u8F7D Agent Connection \u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5 ngm server \u662F\u5426\u6B63\u5E38\u8FD0\u884C\u3002${this.extractErrorMessage(e)}`)}finally{this.loading.set(!1)}}openCreate(){this.createForm=xe(),this.createVisible.set(!0)}closeCreate(){this.createVisible.set(!1)}async submitCreate(){let t=this.createForm,e=this.validateRequired(t.name,t.baseUrl,t.projectKey);if(e){this.message.error(e);return}let r={name:t.name.trim(),baseUrl:t.baseUrl.trim(),projectKey:t.projectKey.trim(),isDefault:t.isDefault};t.projectName.trim()&&(r.projectName=t.projectName.trim()),t.projectToken.trim()&&(r.projectToken=t.projectToken.trim()),t.personalToken.trim()&&(r.personalToken=t.personalToken.trim()),await this.runSubmitting(async()=>{let n=await h(this.api.createHubV2AgentConnection(r));this.applyList(n),this.closeCreate(),this.message.success("\u5DF2\u65B0\u589E Agent Connection")})}openEdit(t){this.editingItem.set(t),this.editForm=E(S({},Ae(t.name)),{baseUrl:t.baseUrl,projectKey:t.projectKey,projectName:t.projectName??"",isDefault:t.isDefault}),this.editVisible.set(!0)}closeEdit(){this.editVisible.set(!1),this.editingItem.set(null)}async submitEdit(){let t=this.editingItem();if(!t)return;let e=this.editForm,r=this.validateRequired(t.name,e.baseUrl,e.projectKey);if(r){this.message.error(r);return}let n={baseUrl:e.baseUrl.trim(),projectKey:e.projectKey.trim(),projectName:e.projectName.trim()?e.projectName.trim():null,isDefault:e.isDefault?!0:void 0};e.clearProjectToken?n.projectToken=null:e.projectTokenInput.trim()&&(n.projectToken=e.projectTokenInput.trim()),e.clearPersonalToken?n.personalToken=null:e.personalTokenInput.trim()&&(n.personalToken=e.personalTokenInput.trim()),await this.runSubmitting(async()=>{let l=await h(this.api.updateHubV2AgentConnection(t.name,n));this.applyList(l),this.closeEdit(),this.message.success("\u5DF2\u66F4\u65B0 Agent Connection")})}async setDefault(t){t.isDefault||await this.runSubmitting(async()=>{let e=await h(this.api.setDefaultHubV2AgentConnection(t.name));this.applyList(e),this.message.success(`\u5DF2\u5C06 ${t.name} \u8BBE\u4E3A\u9ED8\u8BA4\u8FDE\u63A5`)})}confirmDelete(t){let e=t.isDefault?"\u5982\u679C\u4ECD\u6709\u5176\u4ED6\u8FDE\u63A5\uFF0C\u7CFB\u7EDF\u4F1A\u81EA\u52A8\u9009\u62E9\u65B0\u7684\u9ED8\u8BA4\u8FDE\u63A5\uFF1B\u5426\u5219\u4F1A\u6E05\u7A7A\u9ED8\u8BA4\u8FDE\u63A5\u3002":"";this.modal.confirm({nzTitle:`\u5220\u9664\u8FDE\u63A5 ${t.name}`,nzContent:`\u5220\u9664\u540E\u8BE5 Hub V2 connection \u5C06\u4ECE agent-connections.json \u4E2D\u79FB\u9664\u3002\u76F8\u5173 token \u4E5F\u4F1A\u88AB\u5220\u9664\u3002${e}`,nzOkText:"\u5220\u9664",nzOkDanger:!0,nzCancelText:"\u53D6\u6D88",nzOnOk:async()=>{await this.runSubmitting(async()=>{let r=await h(this.api.deleteHubV2AgentConnection(t.name));this.applyList(r),this.message.success("\u5DF2\u5220\u9664\u8FDE\u63A5")})}})}tokenStatusText(t,e){return t?e||"configured":"missing"}onProjectTokenInput(t){let e=this.editForm;this.editForm=E(S({},e),{projectTokenInput:t,clearProjectToken:t.trim()?!1:e.clearProjectToken})}onPersonalTokenInput(t){let e=this.editForm;this.editForm=E(S({},e),{personalTokenInput:t,clearPersonalToken:t.trim()?!1:e.clearPersonalToken})}clearProjectTokenInEdit(){let t=this.editForm;this.editForm=E(S({},t),{projectTokenInput:"",clearProjectToken:!0})}clearPersonalTokenInEdit(){let t=this.editForm;this.editForm=E(S({},t),{personalTokenInput:"",clearPersonalToken:!0})}applyList(t){this.items.set(t.items||[]),this.configPath.set(t.configPath||"")}validateRequired(t,e,r){return t.trim()?e.trim()?/^https?:\/\//i.test(e.trim())?r.trim()?null:"projectKey \u5FC5\u586B":"baseUrl \u5FC5\u987B\u4EE5 http:// \u6216 https:// \u5F00\u5934":"baseUrl \u5FC5\u586B":"name \u5FC5\u586B"}async runSubmitting(t){this.submitting.set(!0);try{await t()}catch(e){this.message.error(this.extractErrorMessage(e))}finally{this.submitting.set(!1)}}extractErrorMessage(t){return t instanceof Error&&t.message?t.message:"\u8BF7\u6C42\u5931\u8D25"}static \u0275fac=function(e){return new(e||m)};static \u0275cmp=P({type:m,selectors:[["app-ai-agent-settings"]],decls:41,vars:12,consts:[[1,"ai-agent-settings"],["nzTitle","AI Agent / MCP \u914D\u7F6E"],[1,"description"],[1,"meta-list"],[1,"hint"],["nzTitle","Hub V2 Agent Connection \u5217\u8868",1,"connections-card"],[1,"toolbar"],["nz-button","","nzType","primary",3,"click"],["nz-button","",3,"click","disabled"],["nzType","error",3,"nzMessage"],[3,"nzSpinning"],["nzNotFoundContent","\u6682\u65E0 Hub V2 Agent Connection\u3002\u8BF7\u65B0\u589E\u4E00\u4E2A\u8FDE\u63A5\uFF0C\u7528\u4E8E MCP tools \u8BBF\u95EE Hub V2 \u6587\u6863\u3001Issue \u548C\u7814\u53D1\u9879\u3002"],["nzSize","small",3,"nzData","nzFrontPagination"],["nzTitle","\u4F7F\u7528\u8BF4\u660E"],[1,"code-block"],["nzTitle","\u65B0\u589E Hub V2 Agent Connection",3,"nzOnCancel","nzOnOk","nzVisible","nzMaskClosable","nzOkLoading"],[4,"nzModalContent"],["nzTitle","\u7F16\u8F91 Hub V2 Agent Connection",3,"nzOnCancel","nzOnOk","nzVisible","nzMaskClosable","nzOkLoading"],["nzColor","blue"],[1,"row-actions"],["nz-button","","nzType","link",3,"click"],["nz-button","","nzType","link",3,"click","disabled"],["nz-button","","nzType","link","nzDanger","",3,"click","disabled"],[1,"form-grid"],["nz-input","","placeholder","\u4F8B\u5982\uFF1Ang-manager",3,"ngModelChange","ngModel"],["nz-input","","placeholder","http://127.0.0.1:7001",3,"ngModelChange","ngModel"],["nz-input","","placeholder","\u53EF\u9009",3,"ngModelChange","ngModel"],["nz-input","","type","password","placeholder","\u53EF\u9009",3,"ngModelChange","ngModel"],["nz-checkbox","",3,"ngModelChange","ngModel"],["nz-input","","disabled","",3,"ngModel"],["nz-input","",3,"ngModelChange","ngModel"],[1,"token-input-row"],["nz-input","","type","password","placeholder","\u7559\u7A7A\u5219\u4E0D\u66F4\u65B0\uFF1B\u8F93\u5165\u65B0\u503C\u5219\u8986\u76D6",3,"ngModelChange","ngModel"],["nz-button","","nzType","default",3,"click"],[1,"token-hint"],["nzColor","orange"]],template:function(e,r){e&1&&(i(0,"div",0)(1,"nz-card",1)(2,"p",2),a(3," \u7BA1\u7406 ng-manager MCP Server \u4F7F\u7528\u7684 Agent Connection \u914D\u7F6E\u3002MCP Server \u901A\u8FC7 agent-connections.json \u8BFB\u53D6 Hub V2 Project Token \u548C Personal Token\u3002 "),o(),i(4,"div",3)(5,"div")(6,"strong"),a(7,"MCP \u542F\u52A8\u547D\u4EE4\uFF1A"),o(),i(8,"code"),a(9,"ngm mcp"),o()(),i(10,"div")(11,"strong"),a(12,"\u8BCA\u65AD\u547D\u4EE4\uFF1A"),o(),i(13,"code"),a(14,"ngm mcp doctor"),o()(),i(15,"div")(16,"strong"),a(17,"\u914D\u7F6E\u6587\u4EF6\u8DEF\u5F84\uFF1A"),o(),i(18,"code"),a(19),o()(),i(20,"div",4),a(21," ngm mcp \u662F stdio MCP Server\uFF0C\u76F4\u63A5\u8FD0\u884C\u65F6\u65E0\u666E\u901A\u8F93\u51FA\u662F\u6B63\u5E38\u73B0\u8C61\u3002 "),o()()(),i(22,"nz-card",5)(23,"div",6)(24,"button",7),g("click",function(){return r.openCreate()}),a(25,"\u65B0\u589E"),o(),i(26,"button",8),g("click",function(){return r.refresh(!0)}),a(27,"\u5237\u65B0"),o()(),A(28,he,1,1,"nz-alert",9),i(29,"nz-spin",10),A(30,Te,1,0,"nz-empty",11)(31,ze,24,2,"nz-table",12),o()(),i(32,"nz-card",13)(33,"p"),a(34," \u8BE5\u914D\u7F6E\u7528\u4E8E AI Agent \u901A\u8FC7 ng-manager MCP Server \u8BBF\u95EE Hub V2 \u6587\u6863\u3001Issue\u3001\u7814\u53D1\u9879\u7B49\u80FD\u529B\u3002Token \u4E0D\u4F1A\u5728\u9875\u9762\u4E2D\u660E\u6587\u5C55\u793A\u3002 "),o(),i(35,"pre",14),a(36),o()()(),i(37,"nz-modal",15),g("nzOnCancel",function(){return r.closeCreate()})("nzOnOk",function(){return r.submitCreate()}),z(38,ve,23,7,"ng-container",16),o(),i(39,"nz-modal",17),g("nzOnCancel",function(){return r.closeEdit()})("nzOnOk",function(){return r.submitEdit()}),z(40,Pe,2,1,"ng-container",16),o()),e&2&&(s(19),b(r.configPath()||"-"),s(7),p("disabled",r.loading()||r.submitting()),s(2),y(r.errorMessage()?28:-1),s(),p("nzSpinning",r.loading()),s(),y(!r.loading()&&!r.errorMessage()&&r.items().length===0?30:31),s(6),b(r.mcpServerConfigExample),s(),p("nzVisible",r.createVisible())("nzMaskClosable",!1)("nzOkLoading",r.submitting()),s(2),p("nzVisible",r.editVisible())("nzMaskClosable",!1)("nzOkLoading",r.submitting()))},dependencies:[I,Y,G,Q,X,J,q,ge,ue,se,me,pe,ce,de,W,O,B,H,Ce,_e,R,K,U,$,Z,re,oe,le,ae,be,fe,ie,ne],styles:[".ai-agent-settings[_ngcontent-%COMP%]{display:grid;gap:16px}.description[_ngcontent-%COMP%]{margin:0 0 8px;color:#595959}.meta-list[_ngcontent-%COMP%]{display:grid;gap:6px;color:#262626}.hint[_ngcontent-%COMP%]{color:#8c8c8c;font-size:12px}.connections-card[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%]{display:flex;gap:8px;margin-bottom:12px}.row-actions[_ngcontent-%COMP%]{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.code-block[_ngcontent-%COMP%]{margin:8px 0 0;padding:12px;border-radius:8px;background:#fafafa;border:1px solid #f0f0f0;overflow:auto}.form-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:128px 1fr;gap:10px 12px;align-items:center}.token-input-row[_ngcontent-%COMP%]{display:flex;gap:8px}.token-hint[_ngcontent-%COMP%]{grid-column:2;color:#8c8c8c;font-size:12px;display:flex;align-items:center;gap:8px}"]})};export{ye as AiAgentSettingsComponent};
|