From 489e9c0becb92b75f0114c2c5c4bfd81f903cd37 Mon Sep 17 00:00:00 2001 From: Fedorov Vladimir Date: Mon, 3 Aug 2026 01:48:22 +0700 Subject: [PATCH] add qr --- .../{index-Cnreqd_w.js => index-BHzMN3F_.js} | 24 ++++++----- ...{index-CX_1-5F4.css => index-sUhe8JqG.css} | 2 +- dist/index.html | 4 +- src/components/GamePage.vue | 40 ++++++++++++++++++- 4 files changed, 56 insertions(+), 14 deletions(-) rename dist/assets/{index-Cnreqd_w.js => index-BHzMN3F_.js} (90%) rename dist/assets/{index-CX_1-5F4.css => index-sUhe8JqG.css} (71%) diff --git a/dist/assets/index-Cnreqd_w.js b/dist/assets/index-BHzMN3F_.js similarity index 90% rename from dist/assets/index-Cnreqd_w.js rename to dist/assets/index-BHzMN3F_.js index 1af57c4..ff5a94e 100644 --- a/dist/assets/index-Cnreqd_w.js +++ b/dist/assets/index-BHzMN3F_.js @@ -1684,7 +1684,11 @@ right: 0; opacity: 0; } - `)]),Sk=P({name:`Progress`,props:Object.assign(Object.assign({},sx.props),{processing:Boolean,type:{type:String,default:`line`},gapDegree:Number,gapOffsetDegree:Number,status:{type:String,default:`default`},railColor:[String,Array],railStyle:[String,Array],color:[String,Array,Object],viewBoxWidth:{type:Number,default:100},strokeWidth:{type:Number,default:7},percentage:[Number,Array],unit:{type:String,default:`%`},showIndicator:{type:Boolean,default:!0},indicatorPosition:{type:String,default:`outside`},indicatorPlacement:{type:String,default:`outside`},indicatorTextColor:String,circleGap:{type:Number,default:1},height:Number,borderRadius:[String,Number],fillBorderRadius:[String,Number],offsetDegree:Number}),setup(e){let t=V(()=>e.indicatorPlacement||e.indicatorPosition),n=V(()=>{if(e.gapDegree||e.gapDegree===0)return e.gapDegree;if(e.type===`dashboard`)return 75}),{mergedClsPrefixRef:r,inlineThemeDisabled:i}=Tp(e),a=sx(`Progress`,`-progress`,xk,tO,e,r),o=V(()=>{let{status:t}=e,{common:{cubicBezierEaseInOut:n},self:{fontSize:r,fontSizeCircle:i,railColor:o,railHeight:s,iconSizeCircle:c,iconSizeLine:l,textColorCircle:u,textColorLineInner:d,textColorLineOuter:f,lineBgProcessing:p,fontWeightCircle:m,[q(`iconColor`,t)]:h,[q(`fillColor`,t)]:g}}=a.value;return{"--n-bezier":n,"--n-fill-color":g,"--n-font-size":r,"--n-font-size-circle":i,"--n-font-weight-circle":m,"--n-icon-color":h,"--n-icon-size-circle":c,"--n-icon-size-line":l,"--n-line-bg-processing":p,"--n-rail-color":o,"--n-rail-height":s,"--n-text-color-circle":u,"--n-text-color-line-inner":d,"--n-text-color-line-outer":f}}),s=i?Ep(`progress`,V(()=>e.status[0]),o,e):void 0;return{mergedClsPrefix:r,mergedIndicatorPlacement:t,gapDeg:n,cssVars:i?void 0:o,themeClass:s?.themeClass,onRender:s?.onRender}},render(){let{type:e,cssVars:t,indicatorTextColor:n,showIndicator:r,status:i,railColor:a,railStyle:o,color:s,percentage:c,viewBoxWidth:l,strokeWidth:u,mergedIndicatorPlacement:d,unit:f,borderRadius:p,fillBorderRadius:m,height:h,processing:g,circleGap:_,mergedClsPrefix:v,gapDeg:y,gapOffsetDegree:b,themeClass:x,$slots:S,onRender:C}=this;return C?.(),H(`div`,{class:[x,`${v}-progress`,`${v}-progress--${e}`,`${v}-progress--${i}`],style:t,"aria-valuemax":100,"aria-valuemin":0,"aria-valuenow":c,role:e===`circle`||e===`line`||e===`dashboard`?`progressbar`:`none`},e===`circle`||e===`dashboard`?H(gk,{clsPrefix:v,status:i,showIndicator:r,indicatorTextColor:n,railColor:a,fillColor:s,railStyle:o,offsetDegree:this.offsetDegree,percentage:c,viewBoxWidth:l,strokeWidth:u,gapDegree:y===void 0?e===`dashboard`?75:0:y,gapOffsetDegree:b,unit:f},S):e===`line`?H(vk,{clsPrefix:v,status:i,showIndicator:r,indicatorTextColor:n,railColor:a,fillColor:s,railStyle:o,percentage:c,processing:g,indicatorPlacement:d,unit:f,fillBorderRadius:m,railBorderRadius:p,height:h},S):e===`multiple-circle`?H(bk,{clsPrefix:v,strokeWidth:u,railColor:a,fillColor:s,railStyle:o,viewBoxWidth:l,percentage:c,showIndicator:r,circleGap:_},S):null)}}),Ck={name:`QrCode`,common:Q,self:e=>({borderRadius:e.borderRadius})},wk={name:`Skeleton`,common:Q,self(e){let{heightSmall:t,heightMedium:n,heightLarge:r,borderRadius:i}=e;return{color:`rgba(255, 255, 255, 0.12)`,colorEnd:`rgba(255, 255, 255, 0.18)`,borderRadius:i,heightSmall:t,heightMedium:n,heightLarge:r}}},Tk={name:`Split`,common:Q},Ek=W(`switch`,` + `)]),Sk=P({name:`Progress`,props:Object.assign(Object.assign({},sx.props),{processing:Boolean,type:{type:String,default:`line`},gapDegree:Number,gapOffsetDegree:Number,status:{type:String,default:`default`},railColor:[String,Array],railStyle:[String,Array],color:[String,Array,Object],viewBoxWidth:{type:Number,default:100},strokeWidth:{type:Number,default:7},percentage:[Number,Array],unit:{type:String,default:`%`},showIndicator:{type:Boolean,default:!0},indicatorPosition:{type:String,default:`outside`},indicatorPlacement:{type:String,default:`outside`},indicatorTextColor:String,circleGap:{type:Number,default:1},height:Number,borderRadius:[String,Number],fillBorderRadius:[String,Number],offsetDegree:Number}),setup(e){let t=V(()=>e.indicatorPlacement||e.indicatorPosition),n=V(()=>{if(e.gapDegree||e.gapDegree===0)return e.gapDegree;if(e.type===`dashboard`)return 75}),{mergedClsPrefixRef:r,inlineThemeDisabled:i}=Tp(e),a=sx(`Progress`,`-progress`,xk,tO,e,r),o=V(()=>{let{status:t}=e,{common:{cubicBezierEaseInOut:n},self:{fontSize:r,fontSizeCircle:i,railColor:o,railHeight:s,iconSizeCircle:c,iconSizeLine:l,textColorCircle:u,textColorLineInner:d,textColorLineOuter:f,lineBgProcessing:p,fontWeightCircle:m,[q(`iconColor`,t)]:h,[q(`fillColor`,t)]:g}}=a.value;return{"--n-bezier":n,"--n-fill-color":g,"--n-font-size":r,"--n-font-size-circle":i,"--n-font-weight-circle":m,"--n-icon-color":h,"--n-icon-size-circle":c,"--n-icon-size-line":l,"--n-line-bg-processing":p,"--n-rail-color":o,"--n-rail-height":s,"--n-text-color-circle":u,"--n-text-color-line-inner":d,"--n-text-color-line-outer":f}}),s=i?Ep(`progress`,V(()=>e.status[0]),o,e):void 0;return{mergedClsPrefix:r,mergedIndicatorPlacement:t,gapDeg:n,cssVars:i?void 0:o,themeClass:s?.themeClass,onRender:s?.onRender}},render(){let{type:e,cssVars:t,indicatorTextColor:n,showIndicator:r,status:i,railColor:a,railStyle:o,color:s,percentage:c,viewBoxWidth:l,strokeWidth:u,mergedIndicatorPlacement:d,unit:f,borderRadius:p,fillBorderRadius:m,height:h,processing:g,circleGap:_,mergedClsPrefix:v,gapDeg:y,gapOffsetDegree:b,themeClass:x,$slots:S,onRender:C}=this;return C?.(),H(`div`,{class:[x,`${v}-progress`,`${v}-progress--${e}`,`${v}-progress--${i}`],style:t,"aria-valuemax":100,"aria-valuemin":0,"aria-valuenow":c,role:e===`circle`||e===`line`||e===`dashboard`?`progressbar`:`none`},e===`circle`||e===`dashboard`?H(gk,{clsPrefix:v,status:i,showIndicator:r,indicatorTextColor:n,railColor:a,fillColor:s,railStyle:o,offsetDegree:this.offsetDegree,percentage:c,viewBoxWidth:l,strokeWidth:u,gapDegree:y===void 0?e===`dashboard`?75:0:y,gapOffsetDegree:b,unit:f},S):e===`line`?H(vk,{clsPrefix:v,status:i,showIndicator:r,indicatorTextColor:n,railColor:a,fillColor:s,railStyle:o,percentage:c,processing:g,indicatorPlacement:d,unit:f,fillBorderRadius:m,railBorderRadius:p,height:h},S):e===`multiple-circle`?H(bk,{clsPrefix:v,strokeWidth:u,railColor:a,fillColor:s,railStyle:o,viewBoxWidth:l,percentage:c,showIndicator:r,circleGap:_},S):null)}}),Ck={name:`QrCode`,common:Q,self:e=>({borderRadius:e.borderRadius})};function wk(e){return{borderRadius:e.borderRadius}}var Tk={name:`QrCode`,common:oS,self:wk},Ek;(function(e){class t{static encodeText(n,r){let i=e.QrSegment.makeSegments(n);return t.encodeSegments(i,r)}static encodeBinary(n,r){let i=e.QrSegment.makeBytes(n);return t.encodeSegments([i],r)}static encodeSegments(e,r,a=1,o=40,s=-1,c=!0){if(!(t.MIN_VERSION<=a&&a<=o&&o<=t.MAX_VERSION)||s<-1||s>7)throw RangeError(`Invalid value`);let l,u;for(l=a;;l++){let n=t.getNumDataCodewords(l,r)*8,a=i.getTotalBits(e,l);if(a<=n){u=a;break}if(l>=o)throw RangeError(`Data too long`)}for(let e of[t.Ecc.MEDIUM,t.Ecc.QUARTILE,t.Ecc.HIGH])c&&u<=t.getNumDataCodewords(l,e)*8&&(r=e);let d=[];for(let t of e){n(t.mode.modeBits,4,d),n(t.numChars,t.mode.numCharCountBits(l),d);for(let e of t.getData())d.push(e)}let f=t.getNumDataCodewords(l,r)*8;n(0,Math.min(4,f-d.length),d),n(0,(8-d.length%8)%8,d);for(let e=236;d.lengthp[t>>>3]|=e<<7-(t&7)),new t(l,r,p,s)}constructor(e,n,r,i){if(this.version=e,this.errorCorrectionLevel=n,this.modules=[],this.isFunction=[],et.MAX_VERSION)throw RangeError(`Version value out of range`);if(i<-1||i>7)throw RangeError(`Mask value out of range`);this.size=e*4+17;let a=[];for(let e=0;e=0&&e=0&&t>>9)*1335;let i=(t<<10|n)^21522;for(let e=0;e<=5;e++)this.setFunctionModule(8,e,r(i,e));this.setFunctionModule(8,7,r(i,6)),this.setFunctionModule(8,8,r(i,7)),this.setFunctionModule(7,8,r(i,8));for(let e=9;e<15;e++)this.setFunctionModule(14-e,8,r(i,e));for(let e=0;e<8;e++)this.setFunctionModule(this.size-1-e,8,r(i,e));for(let e=8;e<15;e++)this.setFunctionModule(8,this.size-15+e,r(i,e));this.setFunctionModule(8,this.size-8,!0)}drawVersion(){if(this.version<7)return;let e=this.version;for(let t=0;t<12;t++)e=e<<1^(e>>>11)*7973;let t=this.version<<12|e;for(let e=0;e<18;e++){let n=r(t,e),i=this.size-11+e%3,a=Math.floor(e/3);this.setFunctionModule(i,a,n),this.setFunctionModule(a,i,n)}}drawFinderPattern(e,t){for(let n=-4;n<=4;n++)for(let r=-4;r<=4;r++){let i=Math.max(Math.abs(r),Math.abs(n)),a=e+r,o=t+n;a>=0&&a=0&&o{(e!==c-a||n>=s)&&d.push(t[e])});return d}drawCodewords(e){if(e.length!==Math.floor(t.getNumRawDataModules(this.version)/8))throw RangeError(`Invalid argument`);let n=0;for(let t=this.size-1;t>=1;t-=2){t===6&&(t=5);for(let i=0;i>>3],7-(n&7)),n++)}}}applyMask(e){if(e<0||e>7)throw RangeError(`Mask value out of range`);for(let t=0;t5&&e++):(this.finderPenaltyAddHistory(i,a),r||(e+=this.finderPenaltyCountPatterns(a)*t.PENALTY_N3),r=this.modules[n][o],i=1);e+=this.finderPenaltyTerminateAndCount(r,i,a)*t.PENALTY_N3}for(let n=0;n5&&e++):(this.finderPenaltyAddHistory(i,a),r||(e+=this.finderPenaltyCountPatterns(a)*t.PENALTY_N3),r=this.modules[o][n],i=1);e+=this.finderPenaltyTerminateAndCount(r,i,a)*t.PENALTY_N3}for(let n=0;ne+ +!!t,n);let r=this.size*this.size,i=Math.ceil(Math.abs(n*20-r*10)/r)-1;return e+=i*t.PENALTY_N4,e}getAlignmentPatternPositions(){if(this.version===1)return[];{let e=Math.floor(this.version/7)+2,t=this.version===32?26:Math.ceil((this.version*4+4)/(e*2-2))*2,n=[6];for(let r=this.size-7;n.lengtht.MAX_VERSION)throw RangeError(`Version number out of range`);let n=(16*e+128)*e+64;if(e>=2){let t=Math.floor(e/7)+2;n-=(25*t-10)*t-55,e>=7&&(n-=36)}return n}static getNumDataCodewords(e,n){return Math.floor(t.getNumRawDataModules(e)/8)-t.ECC_CODEWORDS_PER_BLOCK[n.ordinal][e]*t.NUM_ERROR_CORRECTION_BLOCKS[n.ordinal][e]}static reedSolomonComputeDivisor(e){if(e<1||e>255)throw RangeError(`Degree out of range`);let n=[];for(let t=0;t0);for(let i of e){let e=i^r.shift();r.push(0),n.forEach((n,i)=>r[i]^=t.reedSolomonMultiply(n,e))}return r}static reedSolomonMultiply(e,t){if(e>>>8||t>>>8)throw RangeError(`Byte out of range`);let n=0;for(let r=7;r>=0;r--)n=n<<1^(n>>>7)*285,n^=(t>>>r&1)*e;return n}finderPenaltyCountPatterns(e){let t=e[1],n=t>0&&e[2]===t&&e[3]===t*3&&e[4]===t&&e[5]===t;return(n&&e[0]>=t*4&&e[6]>=t?1:0)+(n&&e[6]>=t*4&&e[0]>=t?1:0)}finderPenaltyTerminateAndCount(e,t,n){return e&&(this.finderPenaltyAddHistory(t,n),t=0),t+=this.size,this.finderPenaltyAddHistory(t,n),this.finderPenaltyCountPatterns(n)}finderPenaltyAddHistory(e,t){t[0]===0&&(e+=this.size),t.pop(),t.unshift(e)}}t.MIN_VERSION=1,t.MAX_VERSION=40,t.PENALTY_N1=3,t.PENALTY_N2=3,t.PENALTY_N3=40,t.PENALTY_N4=10,t.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],t.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],e.QrCode=t;function n(e,t,n){if(t<0||t>31||e>>>t)throw RangeError(`Value out of range`);for(let r=t-1;r>=0;r--)n.push(e>>>r&1)}function r(e,t){return(e>>>t&1)!=0}class i{static makeBytes(e){let t=[];for(let r of e)n(r,8,t);return new i(i.Mode.BYTE,e.length,t)}static makeNumeric(e){if(!i.isNumeric(e))throw RangeError(`String contains non-numeric characters`);let t=[];for(let r=0;r=1<({"--n-border-radius":r.value.self.borderRadius})),a=n?Ep(`qr-code`,void 0,i,e):void 0,o=k(),s=V(()=>{let t=kk[e.errorCorrectionLevel];return Dk.QrCode.encodeText(e.value??`-`,t)});Vr(()=>{let t=k(0),n=null;qn(()=>{e.type!==`svg`&&(t.value,c(s.value,e.size,e.color,e.backgroundColor,n?{icon:n,iconBorderRadius:e.iconBorderRadius,iconSize:e.iconSize,iconBackgroundColor:e.iconBackgroundColor}:null))}),qn(()=>{if(e.type===`svg`)return;let{iconSrc:r}=e;if(r){let e=!1,i=new Image;return i.src=r,i.onload=()=>{e||(n=i,t.value++)},()=>{e=!0}}})});function c(e,t,n,r,i){let a=o.value;if(!a)return;let s=t*jk,c=s/e.size;a.width=s,a.height=s;let l=a.getContext(`2d`);if(l){l.clearRect(0,0,a.width,a.height);for(let t=0;t=1?o:o*u,f=u<=1?o:o/u,p=s+(o-d)/2,m=c+(o-f)/2;l.drawImage(e,p,m,d,f)}}}function l(e,t=0){let n=[];return e.forEach((e,r)=>{let i=null;e.forEach((a,o)=>{if(!a&&i!==null){n.push(`M${i+t} ${r+t}h${o-i}v1H${i+t}z`),i=null;return}if(o===e.length-1){if(!a)return;i===null?n.push(`M${o+t},${r+t} h1v1H${o+t}z`):n.push(`M${i+t},${r+t} h${o+1-i}v1H${i+t}z`);return}a&&i===null&&(i=o)})}),n.join(``)}function u(t,n,r){let i=t.getModules(),a=i.length,o=i,s=``,c=``,u=``,d=``;if(r){let{iconSrc:e,iconSize:t}=r,o=Math.floor(n*.1),s=a/n,c=(t||o)*s,l=(t||o)*s,u=i.length/2-l/2,f=i.length/2-c/2;d+=``}return s+=c,s+=u,s+=d,{innerHtml:s,numCells:a}}let d=V(()=>u(s.value,e.size,e.iconSrc?{iconSrc:e.iconSrc,iconBorderRadius:e.iconBorderRadius,iconSize:e.iconSize,iconBackgroundColor:e.iconBackgroundColor}:null));return{canvasRef:o,mergedClsPrefix:t,cssVars:n?void 0:i,themeClass:a?.themeClass,svgInfo:d}},render(){let{mergedClsPrefix:e,backgroundColor:t,padding:n,cssVars:r,themeClass:i,size:a,type:o}=this;return H(`div`,{class:[`${e}-qr-code`,i],style:Object.assign({padding:typeof n==`number`?`${n}px`:n,backgroundColor:t,width:`${a}px`,height:`${a}px`},r)},o===`canvas`?H(`canvas`,{ref:`canvasRef`,style:{width:`${a}px`,height:`${a}px`}}):H(`svg`,{height:a,width:a,viewBox:`0 0 ${this.svgInfo.numCells} ${this.svgInfo.numCells}`,role:`img`,innerHTML:this.svgInfo.innerHtml}))}}),Nk={name:`Skeleton`,common:Q,self(e){let{heightSmall:t,heightMedium:n,heightLarge:r,borderRadius:i}=e;return{color:`rgba(255, 255, 255, 0.12)`,colorEnd:`rgba(255, 255, 255, 0.18)`,borderRadius:i,heightSmall:t,heightMedium:n,heightLarge:r}}},Pk={name:`Split`,common:Q},Fk=W(`switch`,` height: var(--n-height); min-width: var(--n-width); vertical-align: middle; @@ -1785,7 +1789,7 @@ `)]),K(`disabled`,[G(`rail`,` cursor: not-allowed; opacity: .5; - `)])]),Dk=Object.assign(Object.assign({},sx.props),{size:String,value:{type:[String,Number,Boolean],default:void 0},loading:Boolean,defaultValue:{type:[String,Number,Boolean],default:!1},disabled:{type:Boolean,default:void 0},round:{type:Boolean,default:!0},"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],checkedValue:{type:[String,Number,Boolean],default:!0},uncheckedValue:{type:[String,Number,Boolean],default:!1},railStyle:Function,rubberBand:{type:Boolean,default:!0},spinProps:Object,onChange:[Function,Array]}),Ok,kk=P({name:`Switch`,props:Dk,slots:Object,setup(e){Ok===void 0&&(Ok=typeof CSS<`u`?CSS.supports===void 0?!1:CSS.supports(`width`,`max(1px)`):!0);let{mergedClsPrefixRef:t,inlineThemeDisabled:n,mergedComponentPropsRef:r}=Tp(e),i=sx(`Switch`,`-switch`,Ek,yO,e,t),a=Op(e,{mergedSize(t){return e.size===void 0?t?t.mergedSize.value:r?.value?.Switch?.size||`medium`:e.size}}),{mergedSizeRef:o,mergedDisabledRef:s}=a,c=k(e.defaultValue),l=mu(j(e,`value`),c),u=V(()=>l.value===e.checkedValue),d=k(!1),f=k(!1),p=V(()=>{let{railStyle:t}=e;if(t)return t({focused:f.value,checked:u.value})});function m(t){let{"onUpdate:value":n,onChange:r,onUpdateValue:i}=e,{nTriggerFormInput:o,nTriggerFormChange:s}=a;n&&X(n,t),i&&X(i,t),r&&X(r,t),c.value=t,o(),s()}function h(){let{nTriggerFormFocus:e}=a;e()}function g(){let{nTriggerFormBlur:e}=a;e()}function _(){e.loading||s.value||(l.value===e.checkedValue?m(e.uncheckedValue):m(e.checkedValue))}function v(){f.value=!0,h()}function y(){f.value=!1,g(),d.value=!1}function b(t){e.loading||s.value||t.key===` `&&(l.value===e.checkedValue?m(e.uncheckedValue):m(e.checkedValue),d.value=!1)}function x(t){e.loading||s.value||t.key===` `&&(t.preventDefault(),d.value=!0)}let S=V(()=>{let{value:e}=o,{self:{opacityDisabled:t,railColor:n,railColorActive:r,buttonBoxShadow:a,buttonColor:s,boxShadowFocus:c,loadingColor:l,textColor:u,iconColor:d,[q(`buttonHeight`,e)]:f,[q(`buttonWidth`,e)]:p,[q(`buttonWidthPressed`,e)]:m,[q(`railHeight`,e)]:h,[q(`railWidth`,e)]:g,[q(`railBorderRadius`,e)]:_,[q(`buttonBorderRadius`,e)]:v},common:{cubicBezierEaseInOut:y}}=i.value,b,x,S;return Ok?(b=`calc((${h} - ${f}) / 2)`,x=`max(${h}, ${f})`,S=`max(${g}, calc(${g} + ${f} - ${h}))`):(b=ol((al(h)-al(f))/2),x=ol(Math.max(al(h),al(f))),S=al(h)>al(f)?g:ol(al(g)+al(f)-al(h))),{"--n-bezier":y,"--n-button-border-radius":v,"--n-button-box-shadow":a,"--n-button-color":s,"--n-button-width":p,"--n-button-width-pressed":m,"--n-button-height":f,"--n-height":x,"--n-offset":b,"--n-opacity-disabled":t,"--n-rail-border-radius":_,"--n-rail-color":n,"--n-rail-color-active":r,"--n-rail-height":h,"--n-rail-width":g,"--n-width":S,"--n-box-shadow-focus":c,"--n-loading-color":l,"--n-text-color":u,"--n-icon-color":d}}),C=n?Ep(`switch`,V(()=>o.value[0]),S,e):void 0;return{handleClick:_,handleBlur:y,handleFocus:v,handleKeyup:b,handleKeydown:x,mergedRailStyle:p,pressed:d,mergedClsPrefix:t,mergedValue:l,checked:u,mergedDisabled:s,cssVars:n?void 0:S,themeClass:C?.themeClass,onRender:C?.onRender}},render(){let{mergedClsPrefix:e,mergedDisabled:t,checked:n,mergedRailStyle:r,onRender:i,$slots:a}=this;i?.();let{checked:o,unchecked:s,icon:c,"checked-icon":l,"unchecked-icon":u}=a,d=!(Sp(c)&&Sp(l)&&Sp(u));return H(`div`,{role:`switch`,"aria-checked":n,class:[`${e}-switch`,this.themeClass,d&&`${e}-switch--icon`,n&&`${e}-switch--active`,t&&`${e}-switch--disabled`,this.round&&`${e}-switch--round`,this.loading&&`${e}-switch--loading`,this.pressed&&`${e}-switch--pressed`,this.rubberBand&&`${e}-switch--rubber-band`],tabindex:this.mergedDisabled?void 0:0,style:this.cssVars,onClick:this.handleClick,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyup:this.handleKeyup,onKeydown:this.handleKeydown},H(`div`,{class:`${e}-switch__rail`,"aria-hidden":`true`,style:r},xp(o,t=>xp(s,n=>t||n?H(`div`,{"aria-hidden":!0,class:`${e}-switch__children-placeholder`},H(`div`,{class:`${e}-switch__rail-placeholder`},H(`div`,{class:`${e}-switch__button-placeholder`}),t),H(`div`,{class:`${e}-switch__rail-placeholder`},H(`div`,{class:`${e}-switch__button-placeholder`}),n)):null)),H(`div`,{class:`${e}-switch__button`},xp(c,t=>xp(l,n=>xp(u,r=>H(ux,null,{default:()=>this.loading?H(qx,Object.assign({key:`loading`,clsPrefix:e,strokeWidth:20},this.spinProps)):this.checked&&(n||t)?H(`div`,{class:`${e}-switch__button-icon`,key:n?`checked-icon`:`icon`},n||t):!this.checked&&(r||t)?H(`div`,{class:`${e}-switch__button-icon`,key:r?`unchecked-icon`:`icon`},r||t):null})))),xp(o,t=>t&&H(`div`,{key:`checked`,class:`${e}-switch__checked`},t)),xp(s,t=>t&&H(`div`,{key:`unchecked`,class:`${e}-switch__unchecked`},t)))))}}),Ak=yu(`n-tabs`),jk={tab:[String,Number,Object,Function],name:{type:[String,Number],required:!0},disabled:Boolean,displayDirective:{type:String,default:`if`},closable:{type:Boolean,default:void 0},tabProps:Object,label:[String,Number,Object,Function]},Mk=P({__TAB_PANE__:!0,name:`TabPane`,alias:[`TabPanel`],props:jk,slots:Object,setup(e){let t=N(Ak,null);return t||cp(`tab-pane`,"`n-tab-pane` must be placed inside `n-tabs`."),{style:t.paneStyleRef,class:t.paneClassRef,mergedClsPrefix:t.mergedClsPrefixRef}},render(){return H(`div`,{class:[`${this.mergedClsPrefix}-tab-pane`,this.class],style:this.style},this.$slots)}}),Nk=P({__TAB__:!0,inheritAttrs:!1,name:`Tab`,props:Object.assign({internalLeftPadded:Boolean,internalAddable:Boolean,internalCreatedByPane:Boolean},gp(jk,[`displayDirective`])),setup(e){let{mergedClsPrefixRef:t,valueRef:n,typeRef:r,closableRef:i,tabStyleRef:a,addTabStyleRef:o,tabClassRef:s,addTabClassRef:c,tabChangeIdRef:l,onBeforeLeaveRef:u,triggerRef:d,handleAdd:f,activateTab:p,handleClose:m}=N(Ak);return{trigger:d,mergedClosable:V(()=>{if(e.internalAddable)return!1;let{closable:t}=e;return t===void 0?i.value:t}),style:a,addStyle:o,tabClass:s,addTabClass:c,clsPrefix:t,value:n,type:r,handleClose(t){t.stopPropagation(),!e.disabled&&m(e.name)},activateTab(){if(e.disabled)return;if(e.internalAddable){f();return}let{name:t}=e,r=++l.id;if(t!==n.value){let{value:i}=u;i?Promise.resolve(i(e.name,n.value)).then(e=>{e&&l.id===r&&p(t)}):p(t)}}}},render(){let{internalAddable:e,clsPrefix:t,name:n,disabled:r,label:i,tab:a,value:o,mergedClosable:s,trigger:c,$slots:{default:l}}=this,u=i??a;return H(`div`,{class:`${t}-tabs-tab-wrapper`},this.internalLeftPadded?H(`div`,{class:`${t}-tabs-tab-pad`}):null,H(`div`,Object.assign({key:n,"data-name":n,"data-disabled":r?!0:void 0},Pa({class:[`${t}-tabs-tab`,o===n&&`${t}-tabs-tab--active`,r&&`${t}-tabs-tab--disabled`,s&&`${t}-tabs-tab--closable`,e&&`${t}-tabs-tab--addable`,e?this.addTabClass:this.tabClass],onClick:c===`click`?this.activateTab:void 0,onMouseenter:c===`hover`?this.activateTab:void 0,style:e?this.addStyle:this.style},this.internalCreatedByPane?this.tabProps||{}:this.$attrs)),H(`span`,{class:`${t}-tabs-tab__label`},e?H(F,null,H(`div`,{class:`${t}-tabs-tab__height-placeholder`},`\xA0`),H(lx,{clsPrefix:t},{default:()=>H(dx,null)})):l?l():typeof u==`object`?u:_p(u??n)),s&&this.type===`card`?H(Hx,{clsPrefix:t,class:`${t}-tabs-tab__close`,onClick:this.handleClose,disabled:r}):null))}}),Pk=W(`tabs`,` + `)])]),Ik=Object.assign(Object.assign({},sx.props),{size:String,value:{type:[String,Number,Boolean],default:void 0},loading:Boolean,defaultValue:{type:[String,Number,Boolean],default:!1},disabled:{type:Boolean,default:void 0},round:{type:Boolean,default:!0},"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],checkedValue:{type:[String,Number,Boolean],default:!0},uncheckedValue:{type:[String,Number,Boolean],default:!1},railStyle:Function,rubberBand:{type:Boolean,default:!0},spinProps:Object,onChange:[Function,Array]}),Lk,Rk=P({name:`Switch`,props:Ik,slots:Object,setup(e){Lk===void 0&&(Lk=typeof CSS<`u`?CSS.supports===void 0?!1:CSS.supports(`width`,`max(1px)`):!0);let{mergedClsPrefixRef:t,inlineThemeDisabled:n,mergedComponentPropsRef:r}=Tp(e),i=sx(`Switch`,`-switch`,Fk,yO,e,t),a=Op(e,{mergedSize(t){return e.size===void 0?t?t.mergedSize.value:r?.value?.Switch?.size||`medium`:e.size}}),{mergedSizeRef:o,mergedDisabledRef:s}=a,c=k(e.defaultValue),l=mu(j(e,`value`),c),u=V(()=>l.value===e.checkedValue),d=k(!1),f=k(!1),p=V(()=>{let{railStyle:t}=e;if(t)return t({focused:f.value,checked:u.value})});function m(t){let{"onUpdate:value":n,onChange:r,onUpdateValue:i}=e,{nTriggerFormInput:o,nTriggerFormChange:s}=a;n&&X(n,t),i&&X(i,t),r&&X(r,t),c.value=t,o(),s()}function h(){let{nTriggerFormFocus:e}=a;e()}function g(){let{nTriggerFormBlur:e}=a;e()}function _(){e.loading||s.value||(l.value===e.checkedValue?m(e.uncheckedValue):m(e.checkedValue))}function v(){f.value=!0,h()}function y(){f.value=!1,g(),d.value=!1}function b(t){e.loading||s.value||t.key===` `&&(l.value===e.checkedValue?m(e.uncheckedValue):m(e.checkedValue),d.value=!1)}function x(t){e.loading||s.value||t.key===` `&&(t.preventDefault(),d.value=!0)}let S=V(()=>{let{value:e}=o,{self:{opacityDisabled:t,railColor:n,railColorActive:r,buttonBoxShadow:a,buttonColor:s,boxShadowFocus:c,loadingColor:l,textColor:u,iconColor:d,[q(`buttonHeight`,e)]:f,[q(`buttonWidth`,e)]:p,[q(`buttonWidthPressed`,e)]:m,[q(`railHeight`,e)]:h,[q(`railWidth`,e)]:g,[q(`railBorderRadius`,e)]:_,[q(`buttonBorderRadius`,e)]:v},common:{cubicBezierEaseInOut:y}}=i.value,b,x,S;return Lk?(b=`calc((${h} - ${f}) / 2)`,x=`max(${h}, ${f})`,S=`max(${g}, calc(${g} + ${f} - ${h}))`):(b=ol((al(h)-al(f))/2),x=ol(Math.max(al(h),al(f))),S=al(h)>al(f)?g:ol(al(g)+al(f)-al(h))),{"--n-bezier":y,"--n-button-border-radius":v,"--n-button-box-shadow":a,"--n-button-color":s,"--n-button-width":p,"--n-button-width-pressed":m,"--n-button-height":f,"--n-height":x,"--n-offset":b,"--n-opacity-disabled":t,"--n-rail-border-radius":_,"--n-rail-color":n,"--n-rail-color-active":r,"--n-rail-height":h,"--n-rail-width":g,"--n-width":S,"--n-box-shadow-focus":c,"--n-loading-color":l,"--n-text-color":u,"--n-icon-color":d}}),C=n?Ep(`switch`,V(()=>o.value[0]),S,e):void 0;return{handleClick:_,handleBlur:y,handleFocus:v,handleKeyup:b,handleKeydown:x,mergedRailStyle:p,pressed:d,mergedClsPrefix:t,mergedValue:l,checked:u,mergedDisabled:s,cssVars:n?void 0:S,themeClass:C?.themeClass,onRender:C?.onRender}},render(){let{mergedClsPrefix:e,mergedDisabled:t,checked:n,mergedRailStyle:r,onRender:i,$slots:a}=this;i?.();let{checked:o,unchecked:s,icon:c,"checked-icon":l,"unchecked-icon":u}=a,d=!(Sp(c)&&Sp(l)&&Sp(u));return H(`div`,{role:`switch`,"aria-checked":n,class:[`${e}-switch`,this.themeClass,d&&`${e}-switch--icon`,n&&`${e}-switch--active`,t&&`${e}-switch--disabled`,this.round&&`${e}-switch--round`,this.loading&&`${e}-switch--loading`,this.pressed&&`${e}-switch--pressed`,this.rubberBand&&`${e}-switch--rubber-band`],tabindex:this.mergedDisabled?void 0:0,style:this.cssVars,onClick:this.handleClick,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyup:this.handleKeyup,onKeydown:this.handleKeydown},H(`div`,{class:`${e}-switch__rail`,"aria-hidden":`true`,style:r},xp(o,t=>xp(s,n=>t||n?H(`div`,{"aria-hidden":!0,class:`${e}-switch__children-placeholder`},H(`div`,{class:`${e}-switch__rail-placeholder`},H(`div`,{class:`${e}-switch__button-placeholder`}),t),H(`div`,{class:`${e}-switch__rail-placeholder`},H(`div`,{class:`${e}-switch__button-placeholder`}),n)):null)),H(`div`,{class:`${e}-switch__button`},xp(c,t=>xp(l,n=>xp(u,r=>H(ux,null,{default:()=>this.loading?H(qx,Object.assign({key:`loading`,clsPrefix:e,strokeWidth:20},this.spinProps)):this.checked&&(n||t)?H(`div`,{class:`${e}-switch__button-icon`,key:n?`checked-icon`:`icon`},n||t):!this.checked&&(r||t)?H(`div`,{class:`${e}-switch__button-icon`,key:r?`unchecked-icon`:`icon`},r||t):null})))),xp(o,t=>t&&H(`div`,{key:`checked`,class:`${e}-switch__checked`},t)),xp(s,t=>t&&H(`div`,{key:`unchecked`,class:`${e}-switch__unchecked`},t)))))}}),zk=yu(`n-tabs`),Bk={tab:[String,Number,Object,Function],name:{type:[String,Number],required:!0},disabled:Boolean,displayDirective:{type:String,default:`if`},closable:{type:Boolean,default:void 0},tabProps:Object,label:[String,Number,Object,Function]},Vk=P({__TAB_PANE__:!0,name:`TabPane`,alias:[`TabPanel`],props:Bk,slots:Object,setup(e){let t=N(zk,null);return t||cp(`tab-pane`,"`n-tab-pane` must be placed inside `n-tabs`."),{style:t.paneStyleRef,class:t.paneClassRef,mergedClsPrefix:t.mergedClsPrefixRef}},render(){return H(`div`,{class:[`${this.mergedClsPrefix}-tab-pane`,this.class],style:this.style},this.$slots)}}),Hk=P({__TAB__:!0,inheritAttrs:!1,name:`Tab`,props:Object.assign({internalLeftPadded:Boolean,internalAddable:Boolean,internalCreatedByPane:Boolean},gp(Bk,[`displayDirective`])),setup(e){let{mergedClsPrefixRef:t,valueRef:n,typeRef:r,closableRef:i,tabStyleRef:a,addTabStyleRef:o,tabClassRef:s,addTabClassRef:c,tabChangeIdRef:l,onBeforeLeaveRef:u,triggerRef:d,handleAdd:f,activateTab:p,handleClose:m}=N(zk);return{trigger:d,mergedClosable:V(()=>{if(e.internalAddable)return!1;let{closable:t}=e;return t===void 0?i.value:t}),style:a,addStyle:o,tabClass:s,addTabClass:c,clsPrefix:t,value:n,type:r,handleClose(t){t.stopPropagation(),!e.disabled&&m(e.name)},activateTab(){if(e.disabled)return;if(e.internalAddable){f();return}let{name:t}=e,r=++l.id;if(t!==n.value){let{value:i}=u;i?Promise.resolve(i(e.name,n.value)).then(e=>{e&&l.id===r&&p(t)}):p(t)}}}},render(){let{internalAddable:e,clsPrefix:t,name:n,disabled:r,label:i,tab:a,value:o,mergedClosable:s,trigger:c,$slots:{default:l}}=this,u=i??a;return H(`div`,{class:`${t}-tabs-tab-wrapper`},this.internalLeftPadded?H(`div`,{class:`${t}-tabs-tab-pad`}):null,H(`div`,Object.assign({key:n,"data-name":n,"data-disabled":r?!0:void 0},Pa({class:[`${t}-tabs-tab`,o===n&&`${t}-tabs-tab--active`,r&&`${t}-tabs-tab--disabled`,s&&`${t}-tabs-tab--closable`,e&&`${t}-tabs-tab--addable`,e?this.addTabClass:this.tabClass],onClick:c===`click`?this.activateTab:void 0,onMouseenter:c===`hover`?this.activateTab:void 0,style:e?this.addStyle:this.style},this.internalCreatedByPane?this.tabProps||{}:this.$attrs)),H(`span`,{class:`${t}-tabs-tab__label`},e?H(F,null,H(`div`,{class:`${t}-tabs-tab__height-placeholder`},`\xA0`),H(lx,{clsPrefix:t},{default:()=>H(dx,null)})):l?l():typeof u==`object`?u:_p(u??n)),s&&this.type===`card`?H(Hx,{clsPrefix:t,class:`${t}-tabs-tab__close`,onClick:this.handleClose,disabled:r}):null))}}),Uk=W(`tabs`,` box-sizing: border-box; width: 100%; display: flex; @@ -2136,7 +2140,7 @@ border-top: 1px solid var(--n-tab-border-color); `),W(`tabs-pad`,` border-top: 1px solid var(--n-tab-border-color); - `)])])])]),Fk=Xb,Ik=P({name:`Tabs`,props:Object.assign(Object.assign({},sx.props),{value:[String,Number],defaultValue:[String,Number],trigger:{type:String,default:`click`},type:{type:String,default:`bar`},closable:Boolean,justifyContent:String,size:String,placement:{type:String,default:`top`},tabStyle:[String,Object],tabClass:String,addTabStyle:[String,Object],addTabClass:String,barWidth:Number,paneClass:String,paneStyle:[String,Object],paneWrapperClass:String,paneWrapperStyle:[String,Object],addable:[Boolean,Object],tabsPadding:{type:Number,default:0},animated:Boolean,onBeforeLeave:Function,onAdd:Function,"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],onClose:[Function,Array],labelSize:String,activeName:[String,Number],onActiveNameChange:[Function,Array]}),slots:Object,setup(e,{slots:t}){let{mergedClsPrefixRef:n,inlineThemeDisabled:r,mergedComponentPropsRef:i}=Tp(e),a=sx(`Tabs`,`-tabs`,Pk,TO,e,n),o=k(null),s=k(null),c=k(null),l=k(null),u=k(null),d=k(null),f=k(!0),p=k(!0),m=gu(e,[`labelSize`,`size`]),h=V(()=>m.value?m.value:i?.value?.Tabs?.size||`medium`),g=gu(e,[`activeName`,`value`]),_=k(g.value??e.defaultValue??(t.default?lp(t.default())[0]?.props?.name:null)),v=mu(g,_),y={id:0},b=V(()=>{if(!(!e.justifyContent||e.type===`card`))return{display:`flex`,justifyContent:e.justifyContent}});Jn(v,()=>{y.id=0,T(),ee()});function x(){let{value:e}=v;return e===null?null:o.value?.querySelector(`[data-name="${e}"]`)}function S(t){if(e.type===`card`)return;let{value:r}=s;if(!r)return;let i=r.style.opacity===`0`;if(t){let a=`${n.value}-tabs-bar--disabled`,{barWidth:o,placement:s}=e;if(t.dataset.disabled===`true`?r.classList.add(a):r.classList.remove(a),[`top`,`bottom`].includes(s)){if(w([`top`,`maxHeight`,`height`]),typeof o==`number`&&t.offsetWidth>=o){let e=Math.floor((t.offsetWidth-o)/2)+t.offsetLeft;r.style.left=`${e}px`,r.style.maxWidth=`${o}px`}else r.style.left=`${t.offsetLeft}px`,r.style.maxWidth=`${t.offsetWidth}px`;r.style.width=`8192px`,i&&(r.style.transition=`none`),r.offsetWidth,i&&(r.style.transition=``,r.style.opacity=`1`)}else{if(w([`left`,`maxWidth`,`width`]),typeof o==`number`&&t.offsetHeight>=o){let e=Math.floor((t.offsetHeight-o)/2)+t.offsetTop;r.style.top=`${e}px`,r.style.maxHeight=`${o}px`}else r.style.top=`${t.offsetTop}px`,r.style.maxHeight=`${t.offsetHeight}px`;r.style.height=`8192px`,i&&(r.style.transition=`none`),r.offsetHeight,i&&(r.style.transition=``,r.style.opacity=`1`)}}}function C(){if(e.type===`card`)return;let{value:t}=s;t&&(t.style.opacity=`0`)}function w(e){let{value:t}=s;if(t)for(let n of e)t.style[n]=``}function T(){if(e.type===`card`)return;let t=x();t?S(t):C()}function ee(){let e=u.value?.$el;if(!e)return;let t=x();if(!t)return;let{scrollLeft:n,offsetWidth:r}=e,{offsetLeft:i,offsetWidth:a}=t;n>i?e.scrollTo({top:0,left:i,behavior:`smooth`}):i+a>n+r&&e.scrollTo({top:0,left:i+a-r,behavior:`smooth`})}let E=k(null),D=0,te=null;function ne(e){let t=E.value;if(t){D=e.getBoundingClientRect().height;let n=`${D}px`,r=()=>{t.style.height=n,t.style.maxHeight=n};te?(r(),te(),te=null):te=r}}function re(e){let t=E.value;if(t){let n=e.getBoundingClientRect().height,r=()=>{document.body.offsetHeight,t.style.maxHeight=`${n}px`,t.style.height=`${Math.max(D,n)}px`};te?(te(),te=null,r()):te=r}}function ie(){let t=E.value;if(t){t.style.maxHeight=``,t.style.height=``;let{paneWrapperStyle:n}=e;if(typeof n==`string`)t.style.cssText=n;else if(n){let{maxHeight:e,height:r}=n;e!==void 0&&(t.style.maxHeight=e),r!==void 0&&(t.style.height=r)}}}let ae={value:[]},oe=k(`next`);function se(e){let t=v.value,n=`next`;for(let r of ae.value){if(r===t)break;if(r===e){n=`prev`;break}}oe.value=n,ce(e)}function ce(t){let{onActiveNameChange:n,onUpdateValue:r,"onUpdate:value":i}=e;n&&X(n,t),r&&X(r,t),i&&X(i,t),_.value=t}function le(t){let{onClose:n}=e;n&&X(n,t)}let ue=!0;function de(){let{value:e}=s;if(!e)return;ue||=!1;let t=`transition-disabled`;e.classList.add(t),T(),e.classList.remove(t)}let fe=k(null);function pe({transitionDisabled:e}){let t=o.value;if(!t)return;e&&t.classList.add(`transition-disabled`);let n=x();n&&fe.value&&(fe.value.style.width=`${n.offsetWidth}px`,fe.value.style.height=`${n.offsetHeight}px`,fe.value.style.transform=`translateX(${n.offsetLeft-al(getComputedStyle(t).paddingLeft)}px)`,e&&fe.value.offsetWidth),e&&t.classList.remove(`transition-disabled`)}Jn([v],()=>{e.type===`segment`&&kn(()=>{pe({transitionDisabled:!1})})}),Vr(()=>{e.type===`segment`&&pe({transitionDisabled:!0})});let me=0;function he(t){if(t.contentRect.width===0&&t.contentRect.height===0||me===t.contentRect.width)return;me=t.contentRect.width;let{type:n}=e;if((n===`line`||n===`bar`)&&(ue||e.justifyContent?.startsWith(`space`))&&de(),n!==`segment`){let{placement:t}=e;xe((t===`top`||t===`bottom`?u.value?.$el:d.value)||null)}}let ge=Fk(he,64);Jn([()=>e.justifyContent,()=>e.size],()=>{kn(()=>{let{type:t}=e;(t===`line`||t===`bar`)&&de()})});let _e=k(!1);function ve(t){let{target:n,contentRect:{width:r,height:i}}=t,a=n.parentElement.parentElement.offsetWidth,o=n.parentElement.parentElement.offsetHeight,{placement:s}=e;if(!_e.value)s===`top`||s===`bottom`?ae.$el.offsetWidth&&(_e.value=!1):o-i>e.$el.offsetHeight&&(_e.value=!1)}xe(u.value?.$el||null)}let ye=Fk(ve,64);function be(){let{onAdd:t}=e;t&&t(),kn(()=>{let e=x(),{value:t}=u;!e||!t||t.scrollTo({left:e.offsetLeft,top:0,behavior:`smooth`})})}function xe(t){if(!t)return;let{placement:n}=e;if(n===`top`||n===`bottom`){let{scrollLeft:e,scrollWidth:n,offsetWidth:r}=t;f.value=e<=0,p.value=e+r>=n}else{let{scrollTop:e,scrollHeight:n,offsetHeight:r}=t;f.value=e<=0,p.value=e+r>=n}}let Se=Fk(e=>{xe(e.target)},64);Un(Ak,{triggerRef:j(e,`trigger`),tabStyleRef:j(e,`tabStyle`),tabClassRef:j(e,`tabClass`),addTabStyleRef:j(e,`addTabStyle`),addTabClassRef:j(e,`addTabClass`),paneClassRef:j(e,`paneClass`),paneStyleRef:j(e,`paneStyle`),mergedClsPrefixRef:n,typeRef:j(e,`type`),closableRef:j(e,`closable`),valueRef:v,tabChangeIdRef:y,onBeforeLeaveRef:j(e,`onBeforeLeave`),activateTab:se,handleClose:le,handleAdd:be}),ru(()=>{T(),ee()}),qn(()=>{let{value:e}=c;if(!e)return;let{value:t}=n,r=`${t}-tabs-nav-scroll-wrapper--shadow-start`,i=`${t}-tabs-nav-scroll-wrapper--shadow-end`;f.value?e.classList.remove(r):e.classList.add(r),p.value?e.classList.remove(i):e.classList.add(i)});let Ce={syncBarPosition:()=>{T()}},O=()=>{pe({transitionDisabled:!0})},we=V(()=>{let{value:t}=h,{type:n}=e,r=`${t}${{card:`Card`,bar:`Bar`,line:`Line`,segment:`Segment`}[n]}`,{self:{barColor:i,closeIconColor:o,closeIconColorHover:s,closeIconColorPressed:c,tabColor:l,tabBorderColor:u,paneTextColor:d,tabFontWeight:f,tabBorderRadius:p,tabFontWeightActive:m,colorSegment:g,fontWeightStrong:_,tabColorSegment:v,closeSize:y,closeIconSize:b,closeColorHover:x,closeColorPressed:S,closeBorderRadius:C,[q(`panePadding`,t)]:w,[q(`tabPadding`,r)]:T,[q(`tabPaddingVertical`,r)]:ee,[q(`tabGap`,r)]:E,[q(`tabGap`,`${r}Vertical`)]:D,[q(`tabTextColor`,n)]:te,[q(`tabTextColorActive`,n)]:ne,[q(`tabTextColorHover`,n)]:re,[q(`tabTextColorDisabled`,n)]:ie,[q(`tabFontSize`,t)]:ae},common:{cubicBezierEaseInOut:oe}}=a.value;return{"--n-bezier":oe,"--n-color-segment":g,"--n-bar-color":i,"--n-tab-font-size":ae,"--n-tab-text-color":te,"--n-tab-text-color-active":ne,"--n-tab-text-color-disabled":ie,"--n-tab-text-color-hover":re,"--n-pane-text-color":d,"--n-tab-border-color":u,"--n-tab-border-radius":p,"--n-close-size":y,"--n-close-icon-size":b,"--n-close-color-hover":x,"--n-close-color-pressed":S,"--n-close-border-radius":C,"--n-close-icon-color":o,"--n-close-icon-color-hover":s,"--n-close-icon-color-pressed":c,"--n-tab-color":l,"--n-tab-font-weight":f,"--n-tab-font-weight-active":m,"--n-tab-padding":T,"--n-tab-padding-vertical":ee,"--n-tab-gap":E,"--n-tab-gap-vertical":D,"--n-pane-padding-left":sl(w,`left`),"--n-pane-padding-right":sl(w,`right`),"--n-pane-padding-top":sl(w,`top`),"--n-pane-padding-bottom":sl(w,`bottom`),"--n-font-weight-strong":_,"--n-tab-color-segment":v}}),Te=r?Ep(`tabs`,V(()=>`${h.value[0]}${e.type[0]}`),we,e):void 0;return Object.assign({mergedClsPrefix:n,mergedValue:v,renderedNames:new Set,segmentCapsuleElRef:fe,tabsPaneWrapperRef:E,tabsElRef:o,barElRef:s,addTabInstRef:l,xScrollInstRef:u,scrollWrapperElRef:c,addTabFixed:_e,tabWrapperStyle:b,handleNavResize:ge,mergedSize:h,handleScroll:Se,handleTabsResize:ye,cssVars:r?void 0:we,themeClass:Te?.themeClass,animationDirection:oe,renderNameListRef:ae,yScrollElRef:d,handleSegmentResize:O,onAnimationBeforeLeave:ne,onAnimationEnter:re,onAnimationAfterEnter:ie,onRender:Te?.onRender},Ce)},render(){let{mergedClsPrefix:e,type:t,placement:n,addTabFixed:r,addable:i,mergedSize:a,renderNameListRef:o,onRender:s,paneWrapperClass:c,paneWrapperStyle:l,$slots:{default:u,prefix:d,suffix:f}}=this;s?.();let p=u?lp(u()).filter(e=>e.type.__TAB_PANE__===!0):[],m=u?lp(u()).filter(e=>e.type.__TAB__===!0):[],h=!m.length,g=t===`card`,_=t===`segment`,v=!g&&!_&&this.justifyContent;o.value=[];let y=()=>{let t=H(`div`,{style:this.tabWrapperStyle,class:`${e}-tabs-wrapper`},v?null:H(`div`,{class:`${e}-tabs-scroll-padding`,style:n===`top`||n===`bottom`?{width:`${this.tabsPadding}px`}:{height:`${this.tabsPadding}px`}}),h?p.map((e,t)=>(o.value.push(e.props.name),Bk(H(Nk,Object.assign({},e.props,{internalCreatedByPane:!0,internalLeftPadded:t!==0&&(!v||v===`center`||v===`start`||v===`end`)}),e.children?{default:e.children.tab}:void 0)))):m.map((e,t)=>(o.value.push(e.props.name),Bk(t!==0&&!v?zk(e):e))),!r&&i&&g?Rk(i,(h?p.length:m.length)!==0):null,v?null:H(`div`,{class:`${e}-tabs-scroll-padding`,style:{width:`${this.tabsPadding}px`}}));return H(`div`,{ref:`tabsElRef`,class:`${e}-tabs-nav-scroll-content`},g&&i?H(Af,{onResize:this.handleTabsResize},{default:()=>t}):t,g?H(`div`,{class:`${e}-tabs-pad`}):null,g?null:H(`div`,{ref:`barElRef`,class:`${e}-tabs-bar`}))},b=_?`top`:n;return H(`div`,{class:[`${e}-tabs`,this.themeClass,`${e}-tabs--${t}-type`,`${e}-tabs--${a}-size`,v&&`${e}-tabs--flex`,`${e}-tabs--${b}`],style:this.cssVars},H(`div`,{class:[`${e}-tabs-nav--${t}-type`,`${e}-tabs-nav--${b}`,`${e}-tabs-nav`]},xp(d,t=>t&&H(`div`,{class:`${e}-tabs-nav__prefix`},t)),_?H(Af,{onResize:this.handleSegmentResize},{default:()=>H(`div`,{class:`${e}-tabs-rail`,ref:`tabsElRef`},H(`div`,{class:`${e}-tabs-capsule`,ref:`segmentCapsuleElRef`},H(`div`,{class:`${e}-tabs-wrapper`},H(`div`,{class:`${e}-tabs-tab`}))),h?p.map((e,t)=>(o.value.push(e.props.name),H(Nk,Object.assign({},e.props,{internalCreatedByPane:!0,internalLeftPadded:t!==0}),e.children?{default:e.children.tab}:void 0))):m.map((e,t)=>(o.value.push(e.props.name),t===0?e:zk(e))))}):H(Af,{onResize:this.handleNavResize},{default:()=>H(`div`,{class:`${e}-tabs-nav-scroll-wrapper`,ref:`scrollWrapperElRef`},[`top`,`bottom`].includes(b)?H(Vf,{ref:`xScrollInstRef`,onScroll:this.handleScroll},{default:y}):H(`div`,{class:`${e}-tabs-nav-y-scroll`,onScroll:this.handleScroll,ref:`yScrollElRef`},y()))}),r&&i&&g?Rk(i,!0):null,xp(f,t=>t&&H(`div`,{class:`${e}-tabs-nav__suffix`},t))),h&&(this.animated&&(b===`top`||b===`bottom`)?H(`div`,{ref:`tabsPaneWrapperRef`,style:l,class:[`${e}-tabs-pane-wrapper`,c]},Lk(p,this.mergedValue,this.renderedNames,this.onAnimationBeforeLeave,this.onAnimationEnter,this.onAnimationAfterEnter,this.animationDirection)):Lk(p,this.mergedValue,this.renderedNames)))}});function Lk(e,t,n,r,i,a,o){let s=[];return e.forEach(e=>{let{name:r,displayDirective:i,"display-directive":a}=e.props,o=e=>i===e||a===e,c=t===r;if(e.key!==void 0&&(e.key=r),c||o(`show`)||o(`show:lazy`)&&n.has(r)){n.has(r)||n.add(r);let t=!o(`if`);s.push(t?Vn(e,[[Io,c]]):e)}}),o?H(hs,{name:`${o}-transition`,onBeforeLeave:r,onEnter:i,onAfterEnter:a},{default:()=>s}):s}function Rk(e,t){return H(Nk,{ref:`addTabInstRef`,key:`__addable`,name:`__addable`,internalCreatedByPane:!0,internalAddable:!0,internalLeftPadded:t,disabled:typeof e==`object`&&e.disabled})}function zk(e){let t=ka(e);return t.props?t.props.internalLeftPadded=!0:t.props={internalLeftPadded:!0},t}function Bk(e){return Array.isArray(e.dynamicProps)?e.dynamicProps.includes(`internalLeftPadded`)||e.dynamicProps.push(`internalLeftPadded`):e.dynamicProps=[`internalLeftPadded`],e}var Vk=W(`text`,` + `)])])])]),Wk=Xb,Gk=P({name:`Tabs`,props:Object.assign(Object.assign({},sx.props),{value:[String,Number],defaultValue:[String,Number],trigger:{type:String,default:`click`},type:{type:String,default:`bar`},closable:Boolean,justifyContent:String,size:String,placement:{type:String,default:`top`},tabStyle:[String,Object],tabClass:String,addTabStyle:[String,Object],addTabClass:String,barWidth:Number,paneClass:String,paneStyle:[String,Object],paneWrapperClass:String,paneWrapperStyle:[String,Object],addable:[Boolean,Object],tabsPadding:{type:Number,default:0},animated:Boolean,onBeforeLeave:Function,onAdd:Function,"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],onClose:[Function,Array],labelSize:String,activeName:[String,Number],onActiveNameChange:[Function,Array]}),slots:Object,setup(e,{slots:t}){let{mergedClsPrefixRef:n,inlineThemeDisabled:r,mergedComponentPropsRef:i}=Tp(e),a=sx(`Tabs`,`-tabs`,Uk,TO,e,n),o=k(null),s=k(null),c=k(null),l=k(null),u=k(null),d=k(null),f=k(!0),p=k(!0),m=gu(e,[`labelSize`,`size`]),h=V(()=>m.value?m.value:i?.value?.Tabs?.size||`medium`),g=gu(e,[`activeName`,`value`]),_=k(g.value??e.defaultValue??(t.default?lp(t.default())[0]?.props?.name:null)),v=mu(g,_),y={id:0},b=V(()=>{if(!(!e.justifyContent||e.type===`card`))return{display:`flex`,justifyContent:e.justifyContent}});Jn(v,()=>{y.id=0,T(),ee()});function x(){let{value:e}=v;return e===null?null:o.value?.querySelector(`[data-name="${e}"]`)}function S(t){if(e.type===`card`)return;let{value:r}=s;if(!r)return;let i=r.style.opacity===`0`;if(t){let a=`${n.value}-tabs-bar--disabled`,{barWidth:o,placement:s}=e;if(t.dataset.disabled===`true`?r.classList.add(a):r.classList.remove(a),[`top`,`bottom`].includes(s)){if(w([`top`,`maxHeight`,`height`]),typeof o==`number`&&t.offsetWidth>=o){let e=Math.floor((t.offsetWidth-o)/2)+t.offsetLeft;r.style.left=`${e}px`,r.style.maxWidth=`${o}px`}else r.style.left=`${t.offsetLeft}px`,r.style.maxWidth=`${t.offsetWidth}px`;r.style.width=`8192px`,i&&(r.style.transition=`none`),r.offsetWidth,i&&(r.style.transition=``,r.style.opacity=`1`)}else{if(w([`left`,`maxWidth`,`width`]),typeof o==`number`&&t.offsetHeight>=o){let e=Math.floor((t.offsetHeight-o)/2)+t.offsetTop;r.style.top=`${e}px`,r.style.maxHeight=`${o}px`}else r.style.top=`${t.offsetTop}px`,r.style.maxHeight=`${t.offsetHeight}px`;r.style.height=`8192px`,i&&(r.style.transition=`none`),r.offsetHeight,i&&(r.style.transition=``,r.style.opacity=`1`)}}}function C(){if(e.type===`card`)return;let{value:t}=s;t&&(t.style.opacity=`0`)}function w(e){let{value:t}=s;if(t)for(let n of e)t.style[n]=``}function T(){if(e.type===`card`)return;let t=x();t?S(t):C()}function ee(){let e=u.value?.$el;if(!e)return;let t=x();if(!t)return;let{scrollLeft:n,offsetWidth:r}=e,{offsetLeft:i,offsetWidth:a}=t;n>i?e.scrollTo({top:0,left:i,behavior:`smooth`}):i+a>n+r&&e.scrollTo({top:0,left:i+a-r,behavior:`smooth`})}let E=k(null),D=0,te=null;function ne(e){let t=E.value;if(t){D=e.getBoundingClientRect().height;let n=`${D}px`,r=()=>{t.style.height=n,t.style.maxHeight=n};te?(r(),te(),te=null):te=r}}function re(e){let t=E.value;if(t){let n=e.getBoundingClientRect().height,r=()=>{document.body.offsetHeight,t.style.maxHeight=`${n}px`,t.style.height=`${Math.max(D,n)}px`};te?(te(),te=null,r()):te=r}}function ie(){let t=E.value;if(t){t.style.maxHeight=``,t.style.height=``;let{paneWrapperStyle:n}=e;if(typeof n==`string`)t.style.cssText=n;else if(n){let{maxHeight:e,height:r}=n;e!==void 0&&(t.style.maxHeight=e),r!==void 0&&(t.style.height=r)}}}let ae={value:[]},oe=k(`next`);function se(e){let t=v.value,n=`next`;for(let r of ae.value){if(r===t)break;if(r===e){n=`prev`;break}}oe.value=n,ce(e)}function ce(t){let{onActiveNameChange:n,onUpdateValue:r,"onUpdate:value":i}=e;n&&X(n,t),r&&X(r,t),i&&X(i,t),_.value=t}function le(t){let{onClose:n}=e;n&&X(n,t)}let ue=!0;function de(){let{value:e}=s;if(!e)return;ue||=!1;let t=`transition-disabled`;e.classList.add(t),T(),e.classList.remove(t)}let fe=k(null);function pe({transitionDisabled:e}){let t=o.value;if(!t)return;e&&t.classList.add(`transition-disabled`);let n=x();n&&fe.value&&(fe.value.style.width=`${n.offsetWidth}px`,fe.value.style.height=`${n.offsetHeight}px`,fe.value.style.transform=`translateX(${n.offsetLeft-al(getComputedStyle(t).paddingLeft)}px)`,e&&fe.value.offsetWidth),e&&t.classList.remove(`transition-disabled`)}Jn([v],()=>{e.type===`segment`&&kn(()=>{pe({transitionDisabled:!1})})}),Vr(()=>{e.type===`segment`&&pe({transitionDisabled:!0})});let me=0;function he(t){if(t.contentRect.width===0&&t.contentRect.height===0||me===t.contentRect.width)return;me=t.contentRect.width;let{type:n}=e;if((n===`line`||n===`bar`)&&(ue||e.justifyContent?.startsWith(`space`))&&de(),n!==`segment`){let{placement:t}=e;xe((t===`top`||t===`bottom`?u.value?.$el:d.value)||null)}}let ge=Wk(he,64);Jn([()=>e.justifyContent,()=>e.size],()=>{kn(()=>{let{type:t}=e;(t===`line`||t===`bar`)&&de()})});let _e=k(!1);function ve(t){let{target:n,contentRect:{width:r,height:i}}=t,a=n.parentElement.parentElement.offsetWidth,o=n.parentElement.parentElement.offsetHeight,{placement:s}=e;if(!_e.value)s===`top`||s===`bottom`?ae.$el.offsetWidth&&(_e.value=!1):o-i>e.$el.offsetHeight&&(_e.value=!1)}xe(u.value?.$el||null)}let ye=Wk(ve,64);function be(){let{onAdd:t}=e;t&&t(),kn(()=>{let e=x(),{value:t}=u;!e||!t||t.scrollTo({left:e.offsetLeft,top:0,behavior:`smooth`})})}function xe(t){if(!t)return;let{placement:n}=e;if(n===`top`||n===`bottom`){let{scrollLeft:e,scrollWidth:n,offsetWidth:r}=t;f.value=e<=0,p.value=e+r>=n}else{let{scrollTop:e,scrollHeight:n,offsetHeight:r}=t;f.value=e<=0,p.value=e+r>=n}}let Se=Wk(e=>{xe(e.target)},64);Un(zk,{triggerRef:j(e,`trigger`),tabStyleRef:j(e,`tabStyle`),tabClassRef:j(e,`tabClass`),addTabStyleRef:j(e,`addTabStyle`),addTabClassRef:j(e,`addTabClass`),paneClassRef:j(e,`paneClass`),paneStyleRef:j(e,`paneStyle`),mergedClsPrefixRef:n,typeRef:j(e,`type`),closableRef:j(e,`closable`),valueRef:v,tabChangeIdRef:y,onBeforeLeaveRef:j(e,`onBeforeLeave`),activateTab:se,handleClose:le,handleAdd:be}),ru(()=>{T(),ee()}),qn(()=>{let{value:e}=c;if(!e)return;let{value:t}=n,r=`${t}-tabs-nav-scroll-wrapper--shadow-start`,i=`${t}-tabs-nav-scroll-wrapper--shadow-end`;f.value?e.classList.remove(r):e.classList.add(r),p.value?e.classList.remove(i):e.classList.add(i)});let Ce={syncBarPosition:()=>{T()}},O=()=>{pe({transitionDisabled:!0})},we=V(()=>{let{value:t}=h,{type:n}=e,r=`${t}${{card:`Card`,bar:`Bar`,line:`Line`,segment:`Segment`}[n]}`,{self:{barColor:i,closeIconColor:o,closeIconColorHover:s,closeIconColorPressed:c,tabColor:l,tabBorderColor:u,paneTextColor:d,tabFontWeight:f,tabBorderRadius:p,tabFontWeightActive:m,colorSegment:g,fontWeightStrong:_,tabColorSegment:v,closeSize:y,closeIconSize:b,closeColorHover:x,closeColorPressed:S,closeBorderRadius:C,[q(`panePadding`,t)]:w,[q(`tabPadding`,r)]:T,[q(`tabPaddingVertical`,r)]:ee,[q(`tabGap`,r)]:E,[q(`tabGap`,`${r}Vertical`)]:D,[q(`tabTextColor`,n)]:te,[q(`tabTextColorActive`,n)]:ne,[q(`tabTextColorHover`,n)]:re,[q(`tabTextColorDisabled`,n)]:ie,[q(`tabFontSize`,t)]:ae},common:{cubicBezierEaseInOut:oe}}=a.value;return{"--n-bezier":oe,"--n-color-segment":g,"--n-bar-color":i,"--n-tab-font-size":ae,"--n-tab-text-color":te,"--n-tab-text-color-active":ne,"--n-tab-text-color-disabled":ie,"--n-tab-text-color-hover":re,"--n-pane-text-color":d,"--n-tab-border-color":u,"--n-tab-border-radius":p,"--n-close-size":y,"--n-close-icon-size":b,"--n-close-color-hover":x,"--n-close-color-pressed":S,"--n-close-border-radius":C,"--n-close-icon-color":o,"--n-close-icon-color-hover":s,"--n-close-icon-color-pressed":c,"--n-tab-color":l,"--n-tab-font-weight":f,"--n-tab-font-weight-active":m,"--n-tab-padding":T,"--n-tab-padding-vertical":ee,"--n-tab-gap":E,"--n-tab-gap-vertical":D,"--n-pane-padding-left":sl(w,`left`),"--n-pane-padding-right":sl(w,`right`),"--n-pane-padding-top":sl(w,`top`),"--n-pane-padding-bottom":sl(w,`bottom`),"--n-font-weight-strong":_,"--n-tab-color-segment":v}}),Te=r?Ep(`tabs`,V(()=>`${h.value[0]}${e.type[0]}`),we,e):void 0;return Object.assign({mergedClsPrefix:n,mergedValue:v,renderedNames:new Set,segmentCapsuleElRef:fe,tabsPaneWrapperRef:E,tabsElRef:o,barElRef:s,addTabInstRef:l,xScrollInstRef:u,scrollWrapperElRef:c,addTabFixed:_e,tabWrapperStyle:b,handleNavResize:ge,mergedSize:h,handleScroll:Se,handleTabsResize:ye,cssVars:r?void 0:we,themeClass:Te?.themeClass,animationDirection:oe,renderNameListRef:ae,yScrollElRef:d,handleSegmentResize:O,onAnimationBeforeLeave:ne,onAnimationEnter:re,onAnimationAfterEnter:ie,onRender:Te?.onRender},Ce)},render(){let{mergedClsPrefix:e,type:t,placement:n,addTabFixed:r,addable:i,mergedSize:a,renderNameListRef:o,onRender:s,paneWrapperClass:c,paneWrapperStyle:l,$slots:{default:u,prefix:d,suffix:f}}=this;s?.();let p=u?lp(u()).filter(e=>e.type.__TAB_PANE__===!0):[],m=u?lp(u()).filter(e=>e.type.__TAB__===!0):[],h=!m.length,g=t===`card`,_=t===`segment`,v=!g&&!_&&this.justifyContent;o.value=[];let y=()=>{let t=H(`div`,{style:this.tabWrapperStyle,class:`${e}-tabs-wrapper`},v?null:H(`div`,{class:`${e}-tabs-scroll-padding`,style:n===`top`||n===`bottom`?{width:`${this.tabsPadding}px`}:{height:`${this.tabsPadding}px`}}),h?p.map((e,t)=>(o.value.push(e.props.name),Yk(H(Hk,Object.assign({},e.props,{internalCreatedByPane:!0,internalLeftPadded:t!==0&&(!v||v===`center`||v===`start`||v===`end`)}),e.children?{default:e.children.tab}:void 0)))):m.map((e,t)=>(o.value.push(e.props.name),Yk(t!==0&&!v?Jk(e):e))),!r&&i&&g?qk(i,(h?p.length:m.length)!==0):null,v?null:H(`div`,{class:`${e}-tabs-scroll-padding`,style:{width:`${this.tabsPadding}px`}}));return H(`div`,{ref:`tabsElRef`,class:`${e}-tabs-nav-scroll-content`},g&&i?H(Af,{onResize:this.handleTabsResize},{default:()=>t}):t,g?H(`div`,{class:`${e}-tabs-pad`}):null,g?null:H(`div`,{ref:`barElRef`,class:`${e}-tabs-bar`}))},b=_?`top`:n;return H(`div`,{class:[`${e}-tabs`,this.themeClass,`${e}-tabs--${t}-type`,`${e}-tabs--${a}-size`,v&&`${e}-tabs--flex`,`${e}-tabs--${b}`],style:this.cssVars},H(`div`,{class:[`${e}-tabs-nav--${t}-type`,`${e}-tabs-nav--${b}`,`${e}-tabs-nav`]},xp(d,t=>t&&H(`div`,{class:`${e}-tabs-nav__prefix`},t)),_?H(Af,{onResize:this.handleSegmentResize},{default:()=>H(`div`,{class:`${e}-tabs-rail`,ref:`tabsElRef`},H(`div`,{class:`${e}-tabs-capsule`,ref:`segmentCapsuleElRef`},H(`div`,{class:`${e}-tabs-wrapper`},H(`div`,{class:`${e}-tabs-tab`}))),h?p.map((e,t)=>(o.value.push(e.props.name),H(Hk,Object.assign({},e.props,{internalCreatedByPane:!0,internalLeftPadded:t!==0}),e.children?{default:e.children.tab}:void 0))):m.map((e,t)=>(o.value.push(e.props.name),t===0?e:Jk(e))))}):H(Af,{onResize:this.handleNavResize},{default:()=>H(`div`,{class:`${e}-tabs-nav-scroll-wrapper`,ref:`scrollWrapperElRef`},[`top`,`bottom`].includes(b)?H(Vf,{ref:`xScrollInstRef`,onScroll:this.handleScroll},{default:y}):H(`div`,{class:`${e}-tabs-nav-y-scroll`,onScroll:this.handleScroll,ref:`yScrollElRef`},y()))}),r&&i&&g?qk(i,!0):null,xp(f,t=>t&&H(`div`,{class:`${e}-tabs-nav__suffix`},t))),h&&(this.animated&&(b===`top`||b===`bottom`)?H(`div`,{ref:`tabsPaneWrapperRef`,style:l,class:[`${e}-tabs-pane-wrapper`,c]},Kk(p,this.mergedValue,this.renderedNames,this.onAnimationBeforeLeave,this.onAnimationEnter,this.onAnimationAfterEnter,this.animationDirection)):Kk(p,this.mergedValue,this.renderedNames)))}});function Kk(e,t,n,r,i,a,o){let s=[];return e.forEach(e=>{let{name:r,displayDirective:i,"display-directive":a}=e.props,o=e=>i===e||a===e,c=t===r;if(e.key!==void 0&&(e.key=r),c||o(`show`)||o(`show:lazy`)&&n.has(r)){n.has(r)||n.add(r);let t=!o(`if`);s.push(t?Vn(e,[[Io,c]]):e)}}),o?H(hs,{name:`${o}-transition`,onBeforeLeave:r,onEnter:i,onAfterEnter:a},{default:()=>s}):s}function qk(e,t){return H(Hk,{ref:`addTabInstRef`,key:`__addable`,name:`__addable`,internalCreatedByPane:!0,internalAddable:!0,internalLeftPadded:t,disabled:typeof e==`object`&&e.disabled})}function Jk(e){let t=ka(e);return t.props?t.props.internalLeftPadded=!0:t.props={internalLeftPadded:!0},t}function Yk(e){return Array.isArray(e.dynamicProps)?e.dynamicProps.includes(`internalLeftPadded`)||e.dynamicProps.push(`internalLeftPadded`):e.dynamicProps=[`internalLeftPadded`],e}var Xk=W(`text`,` transition: color .3s var(--n-bezier); color: var(--n-text-color); `,[K(`strong`,` @@ -2156,7 +2160,7 @@ color: var(--n-code-text-color); background-color: var(--n-code-color); border: var(--n-code-border); - `)]),Hk=P({name:`Text`,props:Object.assign(Object.assign({},sx.props),{code:Boolean,type:{type:String,default:`default`},delete:Boolean,strong:Boolean,italic:Boolean,underline:Boolean,depth:[String,Number],tag:String,as:{type:String,validator:()=>!0,default:void 0}}),setup(e){let{mergedClsPrefixRef:t,inlineThemeDisabled:n}=Tp(e),r=sx(`Typography`,`-text`,Vk,RO,e,t),i=V(()=>{let{depth:t,type:n}=e,i=n==="default"?t===void 0?`textColor`:`textColor${t}Depth`:q(`textColor`,n),{common:{fontWeightStrong:a,fontFamilyMono:o,cubicBezierEaseInOut:s},self:{codeTextColor:c,codeBorderRadius:l,codeColor:u,codeBorder:d,[i]:f}}=r.value;return{"--n-bezier":s,"--n-text-color":f,"--n-font-weight-strong":a,"--n-font-famliy-mono":o,"--n-code-border-radius":l,"--n-code-text-color":c,"--n-code-color":u,"--n-code-border":d}}),a=n?Ep(`text`,V(()=>`${e.type[0]}${e.depth||``}`),i,e):void 0;return{mergedClsPrefix:t,compitableTag:gu(e,[`as`,`tag`]),cssVars:n?void 0:i,themeClass:a?.themeClass,onRender:a?.onRender}},render(){var e,t;let{mergedClsPrefix:n}=this;(e=this.onRender)==null||e.call(this);let r=[`${n}-text`,this.themeClass,{[`${n}-text--code`]:this.code,[`${n}-text--delete`]:this.delete,[`${n}-text--strong`]:this.strong,[`${n}-text--italic`]:this.italic,[`${n}-text--underline`]:this.underline}],i=(t=this.$slots).default?.call(t);return this.code?H(`code`,{class:r,style:this.cssVars},this.delete?H(`del`,null,i):i):this.delete?H(`del`,{class:r,style:this.cssVars},i):H(this.compitableTag||`span`,{class:r,style:this.cssVars},i)}}),Uk=yu(`n-upload`),Wk=U([W(`upload`,`width: 100%;`,[K(`dragger-inside`,[W(`upload-trigger`,` + `)]),Zk=P({name:`Text`,props:Object.assign(Object.assign({},sx.props),{code:Boolean,type:{type:String,default:`default`},delete:Boolean,strong:Boolean,italic:Boolean,underline:Boolean,depth:[String,Number],tag:String,as:{type:String,validator:()=>!0,default:void 0}}),setup(e){let{mergedClsPrefixRef:t,inlineThemeDisabled:n}=Tp(e),r=sx(`Typography`,`-text`,Xk,RO,e,t),i=V(()=>{let{depth:t,type:n}=e,i=n==="default"?t===void 0?`textColor`:`textColor${t}Depth`:q(`textColor`,n),{common:{fontWeightStrong:a,fontFamilyMono:o,cubicBezierEaseInOut:s},self:{codeTextColor:c,codeBorderRadius:l,codeColor:u,codeBorder:d,[i]:f}}=r.value;return{"--n-bezier":s,"--n-text-color":f,"--n-font-weight-strong":a,"--n-font-famliy-mono":o,"--n-code-border-radius":l,"--n-code-text-color":c,"--n-code-color":u,"--n-code-border":d}}),a=n?Ep(`text`,V(()=>`${e.type[0]}${e.depth||``}`),i,e):void 0;return{mergedClsPrefix:t,compitableTag:gu(e,[`as`,`tag`]),cssVars:n?void 0:i,themeClass:a?.themeClass,onRender:a?.onRender}},render(){var e,t;let{mergedClsPrefix:n}=this;(e=this.onRender)==null||e.call(this);let r=[`${n}-text`,this.themeClass,{[`${n}-text--code`]:this.code,[`${n}-text--delete`]:this.delete,[`${n}-text--strong`]:this.strong,[`${n}-text--italic`]:this.italic,[`${n}-text--underline`]:this.underline}],i=(t=this.$slots).default?.call(t);return this.code?H(`code`,{class:r,style:this.cssVars},this.delete?H(`del`,null,i):i):this.delete?H(`del`,{class:r,style:this.cssVars},i):H(this.compitableTag||`span`,{class:r,style:this.cssVars},i)}}),Qk=yu(`n-upload`),$k=U([W(`upload`,`width: 100%;`,[K(`dragger-inside`,[W(`upload-trigger`,` display: block; `)]),K(`drag-over`,[W(`upload-dragger`,` border: var(--n-dragger-border-hover); @@ -2372,13 +2376,13 @@ width: 0; height: 0; opacity: 0; - `)]),Gk=P({name:`UploadDragger`,__UPLOAD_DRAGGER__:!0,setup(e,{slots:t}){let n=N(Uk,null);return n||cp(`upload-dragger`,"`n-upload-dragger` must be placed inside `n-upload`."),()=>{let{mergedClsPrefixRef:{value:e},mergedDisabledRef:{value:r},maxReachedRef:{value:i}}=n;return H(`div`,{class:[`${e}-upload-dragger`,(r||i)&&`${e}-upload-dragger--disabled`]},t)}}});function Kk(){return H(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 28 28`},H(`g`,{fill:`none`},H(`path`,{d:`M21.75 3A3.25 3.25 0 0 1 25 6.25v15.5A3.25 3.25 0 0 1 21.75 25H6.25A3.25 3.25 0 0 1 3 21.75V6.25A3.25 3.25 0 0 1 6.25 3h15.5zm.583 20.4l-7.807-7.68a.75.75 0 0 0-.968-.07l-.084.07l-7.808 7.68c.183.065.38.1.584.1h15.5c.204 0 .4-.035.583-.1l-7.807-7.68l7.807 7.68zM21.75 4.5H6.25A1.75 1.75 0 0 0 4.5 6.25v15.5c0 .208.036.408.103.593l7.82-7.692a2.25 2.25 0 0 1 3.026-.117l.129.117l7.82 7.692c.066-.185.102-.385.102-.593V6.25a1.75 1.75 0 0 0-1.75-1.75zm-3.25 3a2.5 2.5 0 1 1 0 5a2.5 2.5 0 0 1 0-5zm0 1.5a1 1 0 1 0 0 2a1 1 0 0 0 0-2z`,fill:`currentColor`})))}function qk(){return H(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 28 28`},H(`g`,{fill:`none`},H(`path`,{d:`M6.4 2A2.4 2.4 0 0 0 4 4.4v19.2A2.4 2.4 0 0 0 6.4 26h15.2a2.4 2.4 0 0 0 2.4-2.4V11.578c0-.729-.29-1.428-.805-1.944l-6.931-6.931A2.4 2.4 0 0 0 14.567 2H6.4zm-.9 2.4a.9.9 0 0 1 .9-.9H14V10a2 2 0 0 0 2 2h6.5v11.6a.9.9 0 0 1-.9.9H6.4a.9.9 0 0 1-.9-.9V4.4zm16.44 6.1H16a.5.5 0 0 1-.5-.5V4.06l6.44 6.44z`,fill:`currentColor`})))}var Jk=P({name:`UploadProgress`,props:{show:Boolean,percentage:{type:Number,required:!0},status:{type:String,required:!0}},setup(){return{mergedTheme:N(Uk).mergedThemeRef}},render(){return H(Ux,null,{default:()=>this.show?H(Sk,{type:`line`,showIndicator:!1,percentage:this.percentage,status:this.status,height:2,theme:this.mergedTheme.peers.Progress,themeOverrides:this.mergedTheme.peerOverrides.Progress}):null})}}),Yk=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function Xk(e){return e.includes(`image/`)}function Zk(e=``){let t=e.split(`/`),n=t[t.length-1].split(/#|\?/)[0];return(/\.[^./\\]*$/.exec(n)||[``])[0]}var Qk=/(webp|svg|png|gif|jpg|jpeg|jfif|bmp|dpg|ico)$/i,$k=e=>{if(e.type)return Xk(e.type);let t=Zk(e.name||``);if(Qk.test(t))return!0;let n=e.thumbnailUrl||e.url||``,r=Zk(n);return!!(/^data:image\//.test(n)||Qk.test(r))};function eA(e){return Yk(this,void 0,void 0,function*(){return yield new Promise(t=>{if(!e.type||!Xk(e.type)){t(``);return}t(window.URL.createObjectURL(e))})})}var tA=ku&&window.FileReader&&window.File;function nA(e){return e.isDirectory}function rA(e){return e.isFile}function iA(e,t){return Yk(this,void 0,void 0,function*(){let n=[];function r(e){return Yk(this,void 0,void 0,function*(){for(let i of e)if(i){if(t&&nA(i)){let e=i.createReader(),t=[],n;try{do n=yield new Promise((t,n)=>{e.readEntries(t,n)}),t=t.concat(n);while(n.length>0)}catch(e){sp(`upload`,`error happens when handling directory upload`,e)}yield r(t)}else if(rA(i))try{let e=yield new Promise((e,t)=>{i.file(e,t)});n.push({file:e,entry:i,source:`dnd`})}catch(e){sp(`upload`,`error happens when handling file upload`,e)}}})}return yield r(e),n})}function aA(e){let{id:t,name:n,percentage:r,status:i,url:a,file:o,thumbnailUrl:s,type:c,fullPath:l,batchId:u}=e;return{id:t,name:n,percentage:r??null,status:i,url:a??null,file:o??null,thumbnailUrl:s??null,type:c??null,fullPath:l??null,batchId:u??null}}function oA(e,t,n){return e=e.toLowerCase(),t=t.toLocaleLowerCase(),n=n.toLocaleLowerCase(),n.split(`,`).map(e=>e.trim()).filter(Boolean).some(n=>{if(n.startsWith(`.`)){if(e.endsWith(n))return!0}else if(n.includes(`/`)){let[e,r]=t.split(`/`),[i,a]=n.split(`/`);if((i===`*`||e&&i&&i===e)&&(a===`*`||r&&a&&a===r))return!0}else return!0;return!1})}var sA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},cA={paddingMedium:`0 3px`,heightMedium:`24px`,iconSizeMedium:`18px`},lA=P({name:`UploadFile`,props:{clsPrefix:{type:String,required:!0},file:{type:Object,required:!0},listType:{type:String,required:!0},index:{type:Number,required:!0}},setup(e){let t=N(Uk),n=k(null),r=k(``),i=V(()=>{let{file:t}=e;return t.status===`finished`?`success`:t.status===`error`?`error`:`info`}),a=V(()=>{let{file:t}=e;if(t.status===`error`)return`error`}),o=V(()=>{let{file:t}=e;return t.status===`uploading`}),s=V(()=>{if(!t.showCancelButtonRef.value)return!1;let{file:n}=e;return[`uploading`,`pending`,`error`].includes(n.status)}),c=V(()=>{if(!t.showRemoveButtonRef.value)return!1;let{file:n}=e;return[`finished`].includes(n.status)}),l=V(()=>{if(!t.showDownloadButtonRef.value)return!1;let{file:n}=e;return[`finished`].includes(n.status)}),u=V(()=>{if(!t.showRetryButtonRef.value)return!1;let{file:n}=e;return[`error`].includes(n.status)}),d=Ql(()=>r.value||e.file.thumbnailUrl||e.file.url),f=V(()=>{if(!t.showPreviewButtonRef.value)return!1;let{file:{status:n},listType:r}=e;return[`finished`].includes(n)&&d.value&&r===`image-card`});function p(){return sA(this,void 0,void 0,function*(){let n=t.onRetryRef.value;n&&(yield n({file:e.file}))===!1||t.submit({fileId:e.file.id})})}function m(t){t.preventDefault();let{file:n}=e;[`finished`,`pending`,`error`].includes(n.status)?g(n):[`uploading`].includes(n.status)?v(n):op(`upload`,`The button clicked type is unknown.`)}function h(t){t.preventDefault(),_(e.file)}function g(n){let{xhrMap:r,doChange:i,onRemoveRef:{value:a},mergedFileListRef:{value:o}}=t;Promise.resolve(a?a({file:Object.assign({},n),fileList:o,index:e.index}):!0).then(e=>{if(e===!1)return;let t=Object.assign({},n,{status:`removed`});r.delete(n.id),i(t,void 0,{remove:!0})})}function _(e){let{onDownloadRef:{value:n},customDownloadRef:{value:r}}=t;Promise.resolve(n?n(Object.assign({},e)):!0).then(t=>{t!==!1&&(r?r(Object.assign({},e)):tp(e.url,e.name))})}function v(e){let{xhrMap:n}=t;n.get(e.id)?.abort(),g(Object.assign({},e))}function y(r){let{onPreviewRef:{value:i}}=t;if(i)i(e.file,{event:r});else if(e.listType===`image-card`){let{value:e}=n;if(!e)return;e.showPreview()}}let b=()=>sA(this,void 0,void 0,function*(){let{listType:n}=e;n!==`image`&&n!==`image-card`||t.shouldUseThumbnailUrlRef.value(e.file)&&(r.value=yield t.getFileThumbnailUrlResolver(e.file))});return qn(()=>{b()}),{mergedTheme:t.mergedThemeRef,progressStatus:i,buttonType:a,showProgress:o,disabled:t.mergedDisabledRef,showCancelButton:s,showRemoveButton:c,showDownloadButton:l,showRetryButton:u,showPreviewButton:f,mergedThumbnailUrl:d,shouldUseThumbnailUrl:t.shouldUseThumbnailUrlRef,renderIcon:t.renderIconRef,imageRef:n,handleRemoveOrCancelClick:m,handleDownloadClick:h,handleRetryClick:p,handlePreviewClick:y}},render(){let{clsPrefix:e,mergedTheme:t,listType:n,file:r,renderIcon:i}=this,a,o=n===`image`;a=o||n===`image-card`?!this.shouldUseThumbnailUrl(r)||!this.mergedThumbnailUrl?H(`span`,{class:`${e}-upload-file-info__thumbnail`},i?i(r):$k(r)?H(lx,{clsPrefix:e},{default:Kk}):H(lx,{clsPrefix:e},{default:qk})):H(`a`,{rel:`noopener noreferer`,target:`_blank`,href:r.url||void 0,class:`${e}-upload-file-info__thumbnail`,onClick:this.handlePreviewClick},n===`image-card`?H(uk,{src:this.mergedThumbnailUrl||void 0,previewSrc:r.url||void 0,alt:r.name,ref:`imageRef`}):H(`img`,{src:this.mergedThumbnailUrl||void 0,alt:r.name})):H(`span`,{class:`${e}-upload-file-info__thumbnail`},i?i(r):H(lx,{clsPrefix:e},{default:()=>H(hx,null)}));let s=H(Jk,{show:this.showProgress,percentage:r.percentage||0,status:this.progressStatus}),c=n===`text`||n===`image`;return H(`div`,{class:[`${e}-upload-file`,`${e}-upload-file--${this.progressStatus}-status`,r.url&&r.status!==`error`&&n!==`image-card`&&`${e}-upload-file--with-url`,`${e}-upload-file--${n}-type`]},H(`div`,{class:`${e}-upload-file-info`},a,H(`div`,{class:`${e}-upload-file-info__name`},c&&(r.url&&r.status!==`error`?H(`a`,{rel:`noopener noreferer`,target:`_blank`,href:r.url||void 0,onClick:this.handlePreviewClick},r.name):H(`span`,{onClick:this.handlePreviewClick},r.name)),o&&s),H(`div`,{class:[`${e}-upload-file-info__action`,`${e}-upload-file-info__action--${n}-type`]},this.showPreviewButton?H(nT,{key:`preview`,quaternary:!0,type:this.buttonType,onClick:this.handlePreviewClick,theme:t.peers.Button,themeOverrides:t.peerOverrides.Button,builtinThemeOverrides:cA},{icon:()=>H(lx,{clsPrefix:e},{default:()=>H(wx,null)})}):null,(this.showRemoveButton||this.showCancelButton)&&!this.disabled&&H(nT,{key:`cancelOrTrash`,theme:t.peers.Button,themeOverrides:t.peerOverrides.Button,quaternary:!0,builtinThemeOverrides:cA,type:this.buttonType,onClick:this.handleRemoveOrCancelClick},{icon:()=>H(ux,null,{default:()=>this.showRemoveButton?H(lx,{clsPrefix:e,key:`trash`},{default:()=>H(Nx,null)}):H(lx,{clsPrefix:e,key:`cancel`},{default:()=>H(gx,null)})})}),this.showRetryButton&&!this.disabled&&H(nT,{key:`retry`,quaternary:!0,type:this.buttonType,onClick:this.handleRetryClick,theme:t.peers.Button,themeOverrides:t.peerOverrides.Button,builtinThemeOverrides:cA},{icon:()=>H(lx,{clsPrefix:e},{default:()=>H(kx,null)})}),this.showDownloadButton?H(nT,{key:`download`,quaternary:!0,type:this.buttonType,onClick:this.handleDownloadClick,theme:t.peers.Button,themeOverrides:t.peerOverrides.Button,builtinThemeOverrides:cA},{icon:()=>H(lx,{clsPrefix:e},{default:()=>H(xx,null)})}):null)),!o&&s)}}),uA=P({name:`UploadTrigger`,props:{abstract:Boolean},slots:Object,setup(e,{slots:t}){let n=N(Uk,null);n||cp(`upload-trigger`,"`n-upload-trigger` must be placed inside `n-upload`.");let{mergedClsPrefixRef:r,mergedDisabledRef:i,maxReachedRef:a,listTypeRef:o,dragOverRef:s,openOpenFileDialog:c,draggerInsideRef:l,handleFileAddition:u,mergedDirectoryDndRef:d,triggerClassRef:f,triggerStyleRef:p}=n,m=V(()=>o.value===`image-card`);function h(){i.value||a.value||c()}function g(e){e.preventDefault(),s.value=!0}function _(e){e.preventDefault(),s.value=!0}function v(e){e.preventDefault(),s.value=!1}function y(e){if(e.preventDefault(),!l.value||i.value||a.value){s.value=!1;return}let t=e.dataTransfer?.items;t?.length?iA(Array.from(t).map(e=>e.webkitGetAsEntry()),d.value).then(e=>{u(e)}).finally(()=>{s.value=!1}):s.value=!1}return()=>{let{value:n}=r;return e.abstract?t.default?.call(t,{handleClick:h,handleDrop:y,handleDragOver:g,handleDragEnter:_,handleDragLeave:v}):H(`div`,{class:[`${n}-upload-trigger`,(i.value||a.value)&&`${n}-upload-trigger--disabled`,m.value&&`${n}-upload-trigger--image-card`,f.value],style:p.value,onClick:h,onDrop:y,onDragover:g,onDragenter:_,onDragleave:v},m.value?H(Gk,null,{default:()=>yp(t.default,()=>[H(lx,{clsPrefix:n},{default:()=>H(dx,null)})])}):t)}}}),dA=P({name:`UploadFileList`,setup(e,{slots:t}){let n=N(Uk,null);n||cp(`upload-file-list`,"`n-upload-file-list` must be placed inside `n-upload`.");let{abstractRef:r,mergedClsPrefixRef:i,listTypeRef:a,mergedFileListRef:o,fileListClassRef:s,fileListStyleRef:c,cssVarsRef:l,themeClassRef:u,maxReachedRef:d,showTriggerRef:f,imageGroupPropsRef:p}=n,m=V(()=>a.value===`image-card`),h=()=>o.value.map((e,t)=>H(lA,{clsPrefix:i.value,key:e.id,file:e,index:t,listType:a.value})),g=()=>m.value?H(sk,Object.assign({},p.value),{default:h}):H(Ux,{group:!0},{default:h});return()=>{let{value:e}=i,{value:n}=r;return H(`div`,{class:[`${e}-upload-file-list`,m.value&&`${e}-upload-file-list--grid`,n?u?.value:void 0,s.value],style:[n&&l?l.value:``,c.value]},g(),f.value&&!d.value&&m.value&&H(uA,null,t))}}}),fA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function pA(e,t,n){let{doChange:r,xhrMap:i}=e,a=0;function o(n){let o=Object.assign({},t,{status:`error`,percentage:a});i.delete(t.id),o=aA(e.onError?.call(e,{file:o,event:n})||o),r(o,n)}function s(s){if(e.isErrorState){if(e.isErrorState(n)){o(s);return}}else if(n.status<200||n.status>=300){o(s);return}let c=Object.assign({},t,{status:`finished`,percentage:a});i.delete(t.id),c=aA(e.onFinish?.call(e,{file:c,event:s})||c),r(c,s)}return{handleXHRLoad:s,handleXHRError:o,handleXHRAbort(e){let n=Object.assign({},t,{status:`removed`,file:null,percentage:a});i.delete(t.id),r(n,e)},handleXHRProgress(e){let n=Object.assign({},t,{status:`uploading`});if(e.lengthComputable){let t=Math.ceil(e.loaded/e.total*100);n.percentage=t,a=t}r(n,e)}}}function mA(e){let{inst:t,file:n,data:r,headers:i,withCredentials:a,action:o,customRequest:s}=e,{doChange:c}=e.inst,l=0;s({file:n,data:r,headers:i,withCredentials:a,action:o,onProgress(e){let t=Object.assign({},n,{status:`uploading`}),r=e.percent;t.percentage=r,l=r,c(t)},onFinish(){let e=Object.assign({},n,{status:`finished`,percentage:l});e=aA(t.onFinish?.call(t,{file:e})||e),c(e)},onError(){let e=Object.assign({},n,{status:`error`,percentage:l});e=aA(t.onError?.call(t,{file:e})||e),c(e)}})}function hA(e,t,n){let r=pA(e,t,n);n.onabort=r.handleXHRAbort,n.onerror=r.handleXHRError,n.onload=r.handleXHRLoad,n.upload&&(n.upload.onprogress=r.handleXHRProgress)}function gA(e,t){return typeof e==`function`?e({file:t}):e||{}}function _A(e,t,n){let r=gA(t,n);r&&Object.keys(r).forEach(t=>{e.setRequestHeader(t,r[t])})}function vA(e,t,n){let r=gA(t,n);r&&Object.keys(r).forEach(t=>{e.append(t,r[t])})}function yA(e,t,n,{method:r,action:i,withCredentials:a,responseType:o,headers:s,data:c}){let l=new XMLHttpRequest;l.responseType=o,e.xhrMap.set(n.id,l),l.withCredentials=a;let u=new FormData;if(vA(u,c,n),n.file!==null&&u.append(t,n.file),hA(e,n,l),i!==void 0){l.open(r.toUpperCase(),i),_A(l,s,n),l.send(u);let t=Object.assign({},n,{status:`uploading`});e.doChange(t)}}var bA=P({name:`Upload`,props:Object.assign(Object.assign({},sx.props),{name:{type:String,default:`file`},accept:String,action:String,customRequest:Function,directory:Boolean,directoryDnd:{type:Boolean,default:void 0},method:{type:String,default:`POST`},multiple:Boolean,showFileList:{type:Boolean,default:!0},data:[Object,Function],headers:[Object,Function],withCredentials:Boolean,responseType:{type:String,default:``},disabled:{type:Boolean,default:void 0},onChange:Function,onRemove:Function,onFinish:Function,onError:Function,onRetry:Function,onBeforeUpload:Function,isErrorState:Function,onDownload:Function,customDownload:Function,defaultUpload:{type:Boolean,default:!0},fileList:Array,"onUpdate:fileList":[Function,Array],onUpdateFileList:[Function,Array],fileListClass:String,fileListStyle:[String,Object],defaultFileList:{type:Array,default:()=>[]},showCancelButton:{type:Boolean,default:!0},showRemoveButton:{type:Boolean,default:!0},showDownloadButton:Boolean,showRetryButton:{type:Boolean,default:!0},showPreviewButton:{type:Boolean,default:!0},listType:{type:String,default:`text`},onPreview:Function,shouldUseThumbnailUrl:{type:Function,default:e=>tA?$k(e):!1},createThumbnailUrl:Function,abstract:Boolean,max:Number,showTrigger:{type:Boolean,default:!0},imageGroupProps:Object,inputProps:Object,triggerClass:String,triggerStyle:[String,Object],renderIcon:Function}),setup(e){e.abstract&&e.listType===`image-card`&&cp(`upload`,`when the list-type is image-card, abstract is not supported.`);let{mergedClsPrefixRef:t,inlineThemeDisabled:n,mergedRtlRef:r}=Tp(e),i=sx(`Upload`,`-upload`,Wk,VO,e,t),a=$b(`Upload`,r,t),o=Op(e),s=k(e.defaultFileList),c=j(e,`fileList`),l=k(null),u={value:!1},d=k(!1),f=new Map,p=mu(c,s),m=V(()=>p.value.map(aA)),h=V(()=>{let{max:t}=e;return t===void 0?!1:m.value.length>=t});function g(){var e;(e=l.value)==null||e.click()}function _(e){let t=e.target;x(t.files?Array.from(t.files).map(e=>({file:e,entry:null,source:`input`})):null,e),t.value=``}function v(t){let{"onUpdate:fileList":n,onUpdateFileList:r}=e;n&&X(n,t),r&&X(r,t),s.value=t}let y=V(()=>e.multiple||e.directory),b=(t,n,r={append:!1,remove:!1})=>{let{append:i,remove:a}=r,o=Array.from(m.value),s=o.findIndex(e=>e.id===t.id);if(i||a||~s){i?o.push(t):a?o.splice(s,1):o.splice(s,1,t);let{onChange:r}=e;r&&r({file:t,fileList:o,event:n}),v(o)}};function x(t,n){if(!t||t.length===0)return;let{onBeforeUpload:r}=e;t=y.value?t:[t[0]];let{max:i,accept:a}=e;t=t.filter(({file:e,source:t})=>t===`dnd`&&a?.trim()?oA(e.name,e.type,a):!0),i&&(t=t.slice(0,i-m.value.length));let o=Vl();Promise.all(t.map(e=>fA(this,[e],void 0,function*({file:e,entry:t}){let n={id:Vl(),batchId:o,name:e.name,status:`pending`,percentage:0,file:e,url:null,type:e.type,thumbnailUrl:null,fullPath:t?.fullPath??`/${e.webkitRelativePath||e.name}`};return!r||(yield r({file:n,fileList:m.value}))!==!1?n:null}))).then(e=>fA(this,void 0,void 0,function*(){let t=Promise.resolve();e.forEach(e=>{t=t.then(kn).then(()=>{e&&b(e,n,{append:!0})})}),yield t})).then(()=>{e.defaultUpload&&S()})}function S({fileId:t,retry:n=!1}={}){let{method:r,action:i,withCredentials:a,headers:o,data:s,name:c}=e,l=t===void 0?m.value:m.value.filter(e=>e.id===t),u=n||t!==void 0;l.forEach(t=>{let{status:n}=t;(n===`pending`||n===`error`&&u)&&(e.customRequest?mA({inst:{doChange:b,xhrMap:f,onFinish:e.onFinish,onError:e.onError},file:t,action:i,withCredentials:a,headers:o,data:s,customRequest:e.customRequest}):yA({doChange:b,xhrMap:f,onFinish:e.onFinish,onError:e.onError,isErrorState:e.isErrorState},c,t,{method:r,action:i,withCredentials:a,responseType:e.responseType,headers:o,data:s}))})}function C(t){if(t.thumbnailUrl)return t.thumbnailUrl;let{createThumbnailUrl:n}=e;return n?n(t.file,t)??(t.url||``):t.url?t.url:t.file?eA(t.file):``}let w=V(()=>{let{common:{cubicBezierEaseInOut:e},self:{draggerColor:t,draggerBorder:n,draggerBorderHover:r,itemColorHover:a,itemColorHoverError:o,itemTextColorError:s,itemTextColorSuccess:c,itemTextColor:l,itemIconColor:u,itemDisabledOpacity:d,lineHeight:f,borderRadius:p,fontSize:m,itemBorderImageCardError:h,itemBorderImageCard:g}}=i.value;return{"--n-bezier":e,"--n-border-radius":p,"--n-dragger-border":n,"--n-dragger-border-hover":r,"--n-dragger-color":t,"--n-font-size":m,"--n-item-color-hover":a,"--n-item-color-hover-error":o,"--n-item-disabled-opacity":d,"--n-item-icon-color":u,"--n-item-text-color":l,"--n-item-text-color-error":s,"--n-item-text-color-success":c,"--n-line-height":f,"--n-item-border-image-card-error":h,"--n-item-border-image-card":g}}),T=n?Ep(`upload`,void 0,w,e):void 0;Un(Uk,{mergedClsPrefixRef:t,mergedThemeRef:i,showCancelButtonRef:j(e,`showCancelButton`),showDownloadButtonRef:j(e,`showDownloadButton`),showRemoveButtonRef:j(e,`showRemoveButton`),showRetryButtonRef:j(e,`showRetryButton`),onRemoveRef:j(e,`onRemove`),onDownloadRef:j(e,`onDownload`),customDownloadRef:j(e,`customDownload`),mergedFileListRef:m,triggerClassRef:j(e,`triggerClass`),triggerStyleRef:j(e,`triggerStyle`),shouldUseThumbnailUrlRef:j(e,`shouldUseThumbnailUrl`),renderIconRef:j(e,`renderIcon`),xhrMap:f,submit:S,doChange:b,showPreviewButtonRef:j(e,`showPreviewButton`),onPreviewRef:j(e,`onPreview`),getFileThumbnailUrlResolver:C,listTypeRef:j(e,`listType`),dragOverRef:d,openOpenFileDialog:g,draggerInsideRef:u,handleFileAddition:x,mergedDisabledRef:o.mergedDisabledRef,maxReachedRef:h,fileListClassRef:j(e,`fileListClass`),fileListStyleRef:j(e,`fileListStyle`),abstractRef:j(e,`abstract`),acceptRef:j(e,`accept`),cssVarsRef:n?void 0:w,themeClassRef:T?.themeClass,onRender:T?.onRender,showTriggerRef:j(e,`showTrigger`),imageGroupPropsRef:j(e,`imageGroupProps`),mergedDirectoryDndRef:V(()=>e.directoryDnd??e.directory),onRetryRef:j(e,`onRetry`)});let ee={clear:()=>{s.value=[]},submit:S,openOpenFileDialog:g};return Object.assign({mergedClsPrefix:t,draggerInsideRef:u,rtlEnabled:a,inputElRef:l,mergedTheme:i,dragOver:d,mergedMultiple:y,cssVars:n?void 0:w,themeClass:T?.themeClass,onRender:T?.onRender,handleFileInputChange:_},ee)},render(){let{draggerInsideRef:e,mergedClsPrefix:t,$slots:n,directory:r,onRender:i}=this;n.default&&!this.abstract&&n.default()[0]?.type?.__UPLOAD_DRAGGER__&&(e.value=!0);let a=H(`input`,Object.assign({},this.inputProps,{ref:`inputElRef`,type:`file`,class:`${t}-upload-file-input`,accept:this.accept,multiple:this.mergedMultiple,onChange:this.handleFileInputChange,webkitdirectory:r||void 0,directory:r||void 0}));return this.abstract?H(F,null,n.default?.call(n),H(lr,{to:`body`},a)):(i?.(),H(`div`,{class:[`${t}-upload`,this.rtlEnabled&&`${t}-upload--rtl`,e.value&&`${t}-upload--dragger-inside`,this.dragOver&&`${t}-upload--drag-over`,this.themeClass],style:this.cssVars},a,this.showTrigger&&this.listType!==`image-card`&&H(uA,null,n),this.showFileList&&H(dA,null,n)))}}),xA={name:`dark`,common:Q,Alert:qC,Anchor:iw,AutoComplete:Dw,Avatar:zw,AvatarGroup:Vw,BackTop:Uw,Badge:Ww,Breadcrumb:qw,Button:eT,ButtonGroup:jD,Calendar:dT,Card:hT,Carousel:ST,Cascader:OT,Checkbox:ET,Code:PT,Collapse:IT,CollapseTransition:RT,ColorPicker:BT,DataTable:oE,DatePicker:hE,Descriptions:vE,Dialog:CE,Divider:iD,Drawer:oD,Dropdown:XT,DynamicInput:cD,DynamicTags:wD,Element:TD,Empty:QS,Ellipsis:tE,Equation:{name:`Equation`,common:Q,self:()=>({})},Flex:DD,Form:PD,GradientText:FD,Heatmap:KO,Icon:lE,IconWrapper:JO,Image:YO,Input:lw,InputNumber:ID,InputOtp:RD,LegacyTransfer:fk,Layout:zD,List:HD,LoadingBar:zE,Log:UD,Menu:qD,Mention:WD,Message:GE,Modal:jE,Notification:nD,PageHeader:XD,Pagination:qT,Popconfirm:$D,Popover:gC,Popselect:HT,Progress:nO,QrCode:Ck,Radio:rE,Rate:rO,Result:oO,Row:BD,Scrollbar:uS,Select:WT,Skeleton:wk,Slider:cO,Space:vD,Spin:uO,Statistic:fO,Steps:hO,Switch:_O,Table:SO,Tabs:EO,Tag:jC,Thing:OO,TimePicker:fE,Timeline:AO,Tooltip:QT,Transfer:MO,Tree:PO,TreeSelect:FO,Typography:zO,Upload:HO,Watermark:UO,Split:Tk,FloatButton:WO,FloatButtonGroup:{name:`FloatButtonGroup`,common:Q,self(e){let{popoverColor:t,dividerColor:n,borderRadius:r}=e;return{color:t,buttonBorderColor:n,borderRadiusSquare:r,boxShadow:`0 2px 8px 0px rgba(0, 0, 0, .12)`}}},Marquee:mk},SA=typeof document<`u`;function CA(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function wA(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&CA(e.default)}var TA=Object.assign;function EA(e,t){let n={};for(let r in t){let i=t[r];n[r]=OA(i)?i.map(e):e(i)}return n}var DA=()=>{},OA=Array.isArray;function kA(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var AA=Symbol(``);function jA(e,t){return TA(Error(),{type:e,[AA]:!0},t)}function MA(e,t){return e instanceof Error&&AA in e&&(t==null||!!(e.type&t))}var NA=Symbol(``),PA=Symbol(``),FA=Symbol(``),IA=Symbol(``),LA=Symbol(``);function RA(){return N(FA)}function zA(e){return N(IA)}var BA=/#/g,VA=/&/g,HA=/\//g,UA=/=/g,WA=/\?/g,GA=/\+/g,KA=/%5B/g,qA=/%5D/g,JA=/%5E/g,YA=/%60/g,XA=/%7B/g,ZA=/%7C/g,QA=/%7D/g,$A=/%20/g;function ej(e){return e==null?``:encodeURI(``+e).replace(ZA,`|`).replace(KA,`[`).replace(qA,`]`)}function tj(e){return ej(e).replace(XA,`{`).replace(QA,`}`).replace(JA,`^`)}function nj(e){return ej(e).replace(GA,`%2B`).replace($A,`+`).replace(BA,`%23`).replace(VA,`%26`).replace(YA,"`").replace(XA,`{`).replace(QA,`}`).replace(JA,`^`)}function rj(e){return nj(e).replace(UA,`%3D`)}function ij(e){return ej(e).replace(BA,`%23`).replace(WA,`%3F`)}function aj(e){return ij(e).replace(HA,`%2F`)}function oj(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var sj=/\/$/,cj=e=>e.replace(sj,``);function lj(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=_j(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:oj(o)}}function uj(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function dj(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function fj(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&pj(t.matched[r],n.matched[i])&&mj(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function pj(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function mj(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!hj(e[n],t[n]))return!1;return!0}function hj(e,t){return OA(e)?gj(e,t):OA(t)?gj(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function gj(e,t){return OA(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function _j(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var vj={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function yj(e){if(!e)if(SA){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),cj(e)}var bj=/^[^#]+#/;function xj(e,t){return e.replace(bj,`#`)+t}function Sj(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var Cj=()=>({left:window.scrollX,top:window.scrollY});function wj(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=Sj(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function Tj(e,t){return(history.state?history.state.position-t:-1)+e}var Ej=new Map;function Dj(e,t){Ej.set(e,t)}function Oj(e){let t=Ej.get(e);return Ej.delete(e),t}function kj(e){return typeof e==`string`||e&&typeof e==`object`}function Aj(e){return typeof e==`string`||typeof e==`symbol`}function jj(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;ee&&nj(e)):[r&&nj(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Nj(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=OA(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function Pj(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Fj(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(jA(4,{from:n,to:t})):e instanceof Error?c(e):kj(e)?c(jA(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function Ij(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(CA(s)){let c=(s.__vccOpts||s)[t];c&&a.push(Fj(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=wA(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&Fj(c,n,r,o,e,i)()}))}}return a}function Lj(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;opj(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>pj(e,s))||i.push(s))}return[n,r,i]}var Rj=()=>location.protocol+`//`+location.host;function zj(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),dj(n,``)}return dj(n,e)+r+i}function Bj(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=zj(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(TA({},e.state,{scroll:Cj()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function Vj(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?Cj():null}}function Hj(e){let{history:t,location:n}=window,r={value:zj(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:Rj()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,TA({},t.state,Vj(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=TA({},i.value,t.state,{forward:e,scroll:Cj()});a(o.current,o,!0),a(e,TA({},Vj(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function Uj(e){e=yj(e);let t=Hj(e),n=Bj(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=TA({location:``,base:e,go:r,createHref:xj.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}var Wj={type:0,value:``},Gj=/[a-zA-Z0-9_]/;function Kj(e){if(!e)return[[]];if(e===`/`)return[[Wj]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=0,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===0?a.push({type:0,value:l}):n===1||n===2||n===3?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;st.length?t.length===1&&t[0]===80?1:-1:0}function Qj(e,t){let n=0,r=e.score,i=t.score;for(;n0&&t[t.length-1]<0}var eM={strict:!1,end:!0,sensitive:!1};function tM(e,t,n){let r=TA(Xj(Kj(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function nM(e,t){let n=[],r=new Map;t=kA(eM,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=iM(e);s.aliasOf=r&&r.record;let l=kA(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(iM(TA({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=tM(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!oM(d)&&o(e.name)),uM(d)&&c(d),s.children){let e=s.children;for(let t=0;t{o(f)}:DA}function o(e){if(Aj(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=cM(e,n);n.splice(t,0,e),e.record.name&&!oM(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw jA(1,{location:e});s=i.record.name,a=TA(rM(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&rM(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name,i.keys.forEach(e=>{e.optional&&!a[e.name]&&delete a[e.name]}));else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw jA(1,{location:e,currentLocation:t});s=i.record.name,a=TA({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:sM(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function rM(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function iM(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:aM(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function aM(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function oM(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function sM(e){return e.reduce((e,t)=>TA(e,t.meta),{})}function cM(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;Qj(e,t[i])<0?r=i:n=i+1}let i=lM(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function lM(e){let t=e;for(;t=t.parent;)if(uM(t)&&Qj(e,t)===0)return t}function uM({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function dM(e){let t=N(FA),n=N(IA),r=V(()=>{let n=A(e.to);return t.resolve(n)}),i=V(()=>{let{matched:e}=r.value,{length:t}=e,i=e[t-1],a=n.matched;if(!i||!a.length)return-1;let o=a.findIndex(pj.bind(null,i));if(o>-1)return o;let s=gM(e[t-2]);return t>1&&gM(i)===s&&a[a.length-1].path!==s?a.findIndex(pj.bind(null,e[t-2])):o}),a=V(()=>i.value>-1&&hM(n.params,r.value.params)),o=V(()=>i.value>-1&&i.value===n.matched.length-1&&mj(n.params,r.value.params));function s(n={}){if(mM(n)){let n=t[A(e.replace)?`replace`:`push`](A(e.to)).catch(DA);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>n),n}return Promise.resolve()}return{route:r,href:V(()=>r.value.href),isActive:a,isExactActive:o,navigate:s}}function fM(e){return e.length===1?e[0]:e}var pM=P({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:dM,setup(e,{slots:t}){let n=Vt(dM(e)),{options:r}=N(FA),i=V(()=>({[_M(e.activeClass,r.linkActiveClass,`router-link-active`)]:n.isActive,[_M(e.exactActiveClass,r.linkExactActiveClass,`router-link-exact-active`)]:n.isExactActive}));return()=>{let r=t.default&&fM(t.default(n));return e.custom?r:H(`a`,{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:i.value},r)}}});function mM(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function hM(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!OA(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function gM(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var _M=(e,t,n)=>e??t??n,vM=P({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){let r=N(LA),i=V(()=>e.route||r.value),a=N(PA,0),o=V(()=>{let e=A(a),{matched:t}=i.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),s=V(()=>i.value.matched[o.value]);Un(PA,V(()=>o.value+1)),Un(NA,s),Un(LA,i);let c=k();return Jn(()=>[c.value,s.value,e.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!pj(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let r=i.value,a=e.name,o=s.value,l=o&&o.components[a];if(!l)return yM(n.default,{Component:l,route:r});let u=o.props[a],d=H(l,TA({},u?u===!0?r.params:typeof u==`function`?u(r):u:null,t,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(o.instances[a]=null)},ref:c}));return yM(n.default,{Component:d,route:r})||d}}});function yM(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var bM=vM;function xM(e){let t=nM(e.routes,e),n=e.parseQuery||jj,r=e.stringifyQuery||Mj,i=e.history,a=Pj(),o=Pj(),s=Pj(),c=en(vj),l=vj;SA&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let u=EA.bind(null,e=>``+e),d=EA.bind(null,aj),f=EA.bind(null,oj);function p(e,n){let r,i;return Aj(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function m(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function h(){return t.getRoutes().map(e=>e.record)}function g(e){return!!t.getRecordMatcher(e)}function _(e,a){if(a=TA({},a||c.value),typeof e==`string`){let r=lj(n,e,a.path),o=t.resolve({path:r.path},a),s=i.createHref(r.fullPath);return TA(r,o,{params:f(o.params),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=TA({},e,{path:lj(n,e.path,a.path).path});else{let t=TA({},e.params);for(let e in t)t[e]??delete t[e];o=TA({},e,{params:d(t)}),a.params=d(a.params)}let s=t.resolve(o,a),l=e.hash||``;s.params=u(f(s.params));let p=uj(r,TA({},e,{hash:tj(l),path:s.path})),m=i.createHref(p);return TA({fullPath:p,hash:l,query:r===Mj?Nj(e.query):e.query||{}},s,{redirectedFrom:void 0,href:m})}function v(e){return typeof e==`string`?lj(n,e,c.value.path):TA({},e)}function y(e,t){if(l!==e)return jA(8,{from:t,to:e})}function b(e){return C(e)}function x(e){return b(TA(v(e),{replace:!0}))}function S(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=v(i):{path:i},i.params={}),TA({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function C(e,t){let n=l=_(e),i=c.value,a=e.state,o=e.force,s=e.replace===!0,u=S(n,i);if(u)return C(TA(v(u),{state:typeof u==`object`?TA({},a,u.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&fj(r,i,n)&&(f=jA(16,{to:d,from:i}),le(i,i,!0,!1)),(f?Promise.resolve(f):ee(d,i)).catch(e=>MA(e)?MA(e,2)?e:ce(e):oe(e,d,i)).then(e=>{if(e){if(MA(e,2))return C(TA({replace:s},v(e.to),{state:typeof e.to==`object`?TA({},a,e.to.state):a,force:o}),t||d)}else e=D(d,i,!0,s,a);return E(d,i,e),e})}function w(e,t){let n=y(e,t);return n?Promise.reject(n):Promise.resolve()}function T(e){let t=fe.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function ee(e,t){let n,[r,i,s]=Lj(e,t);n=Ij(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(Fj(r,e,t))});let c=w.bind(null,e,t);return n.push(c),me(n).then(()=>{n=[];for(let r of a.list())n.push(Fj(r,e,t));return n.push(c),me(n)}).then(()=>{n=Ij(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(Fj(r,e,t))});return n.push(c),me(n)}).then(()=>{n=[];for(let r of s)if(r.beforeEnter)if(OA(r.beforeEnter))for(let i of r.beforeEnter)n.push(Fj(i,e,t));else n.push(Fj(r.beforeEnter,e,t));return n.push(c),me(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Ij(s,`beforeRouteEnter`,e,t,T),n.push(c),me(n))).then(()=>{n=[];for(let r of o.list())n.push(Fj(r,e,t));return n.push(c),me(n)}).catch(e=>MA(e,8)?e:Promise.reject(e))}function E(e,t,n){s.list().forEach(r=>T(()=>r(e,t,n)))}function D(e,t,n,r,a){let o=y(e,t);if(o)return o;let s=t===vj,l=SA?history.state:{};n&&(r||s?i.replace(e.fullPath,TA({scroll:s&&l&&l.scroll},a)):i.push(e.fullPath,a)),c.value=e,le(e,t,n,s),ce()}let te;function ne(){te||=i.listen((e,t,n)=>{if(!pe.listening)return;let r=_(e),a=S(r,pe.currentRoute.value);if(a){C(TA(a,{replace:!0,force:!0}),r).catch(DA);return}l=r;let o=c.value;SA&&Dj(Tj(o.fullPath,n.delta),Cj()),ee(r,o).catch(e=>MA(e,12)?e:MA(e,2)?(C(TA(v(e.to),{force:!0}),r).then(e=>{MA(e,20)&&!n.delta&&n.type===`pop`&&i.go(-1,!1)}).catch(DA),Promise.reject()):(n.delta&&i.go(-n.delta,!1),oe(e,r,o))).then(e=>{e||=D(r,o,!1),e&&(n.delta&&!MA(e,8)?i.go(-n.delta,!1):n.type===`pop`&&MA(e,20)&&i.go(-1,!1)),E(r,o,e)}).catch(DA)})}let re=Pj(),ie=Pj(),ae;function oe(e,t,n){ce(e);let r=ie.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function se(){return ae&&c.value!==vj?Promise.resolve():new Promise((e,t)=>{re.add([e,t])})}function ce(e){return ae||(ae=!e,ne(),re.list().forEach(([t,n])=>e?n(e):t()),re.reset()),e}function le(t,n,r,i){let{scrollBehavior:a}=e;if(!SA||!a)return Promise.resolve();let o=!r&&Oj(Tj(t.fullPath,0))||(i||!r)&&history.state&&history.state.scroll||null;return kn().then(()=>a(t,n,o)).then(e=>e&&wj(e)).catch(e=>oe(e,t,n))}let ue=e=>i.go(e),de,fe=new Set,pe={currentRoute:c,listening:!0,addRoute:p,removeRoute:m,clearRoutes:t.clearRoutes,hasRoute:g,getRoutes:h,resolve:_,options:e,push:b,replace:x,go:ue,back:()=>ue(-1),forward:()=>ue(1),beforeEach:a.add,beforeResolve:o.add,afterEach:s.add,onError:ie.add,isReady:se,install(e){e.component(`RouterLink`,pM),e.component(`RouterView`,bM),e.config.globalProperties.$router=pe,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>A(c)}),SA&&!de&&c.value===vj&&(de=!0,b(i.location).catch(e=>{}));let t={};for(let e in vj)Object.defineProperty(t,e,{get:()=>c.value[e],enumerable:!0});e.provide(FA,pe),e.provide(IA,Ht(t)),e.provide(LA,c);let n=e.unmount;fe.add(e),e.unmount=function(){fe.delete(e),fe.size<1&&(l=vj,te&&te(),te=null,c.value=vj,de=!1,ae=!1),n()}}};function me(e){return e.reduce((e,t)=>e.then(()=>T(t)),Promise.resolve())}return pe}var SM=P({__name:`App`,setup(e){return(e,t)=>(I(),Sa(A(VT),{theme:A(xA)},{default:M(()=>[z(A(QE),null,{default:M(()=>[z(A(bM))]),_:1})]),_:1},8,[`theme`]))}});function CM(e){return{Ping(t){let n=[],r=`api/test/ping`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`Ping`})},Echo(t){let n=[];t.text&&n.push(`text=${encodeURIComponent(t.text.toString())}`);let r=`api/test/echo`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`POST`,body:null},{service:`EveningDetectiveServer`,method:`Echo`})},Signup(t){let n=JSON.stringify(t),r=[],i=`api/auth/signup`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`Signup`})},RefreshPassword(t){let n=JSON.stringify(t),r=[],i=`api/auth/refresh-password`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`RefreshPassword`})},Login(t){let n=JSON.stringify(t),r=[],i=`api/auth/login`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`Login`})},Refresh(t){let n=JSON.stringify(t),r=[],i=`api/auth/refresh`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`Refresh`})},GetUsers(t){let n=[],r=`api/users`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetUsers`})},GetUserById(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/users/${t.id}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetUserById`})},GetMe(t){let n=[],r=`api/users/me`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetMe`})},AddUserRole(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/users/${t.id}/role/add`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`POST`,body:r},{service:`EveningDetectiveServer`,method:`AddUserRole`})},DeleteUserRole(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/users/${t.id}/role/delete`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`POST`,body:r},{service:`EveningDetectiveServer`,method:`DeleteUserRole`})},GetPermissions(t){let n=[],r=`api/ui/permissions`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetPermissions`})},UploadFile(t){let n=JSON.stringify(t),r=[],i=`api/files/upload`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`UploadFile`})},DownloadFile(t){if(!t.filename)throw Error(`missing required field request.filename`);let n=`api/files/${t.filename}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`DownloadFile`})},AddScenario(t){let n=JSON.stringify(t),r=[],i=`api/scenario`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`AddScenario`})},GetMyScenarios(t){let n=[],r=`api/my-scenarios`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetMyScenarios`})},GetScenariosCatalog(t){let n=[],r=`api/catalog`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetScenariosCatalog`})},GetFullScenario(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}/full`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetFullScenario`})},GetScenario(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetScenario`})},UpdateScenario(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`PUT`,body:r},{service:`EveningDetectiveServer`,method:`UpdateScenario`})},PublicScenario(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}/public`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`PUT`,body:r},{service:`EveningDetectiveServer`,method:`PublicScenario`})},DraftScenario(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}/draft`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`PUT`,body:r},{service:`EveningDetectiveServer`,method:`DraftScenario`})},DeleteScenario(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`DELETE`,body:null},{service:`EveningDetectiveServer`,method:`DeleteScenario`})},AddScenarioPlace(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}/places`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`POST`,body:r},{service:`EveningDetectiveServer`,method:`AddScenarioPlace`})},UpdateScenarioPlace(t){if(!t.id)throw Error(`missing required field request.id`);if(!t.code)throw Error(`missing required field request.code`);let n=`api/scenarios/${t.id}/places/${t.code}`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`PUT`,body:r},{service:`EveningDetectiveServer`,method:`UpdateScenarioPlace`})},DeleteScenarioPlace(t){if(!t.id)throw Error(`missing required field request.id`);if(!t.code)throw Error(`missing required field request.code`);let n=`api/scenarios/${t.id}/places/${t.code}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`DELETE`,body:null},{service:`EveningDetectiveServer`,method:`DeleteScenarioPlace`})},AddGame(t){let n=JSON.stringify(t),r=[],i=`api/games`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`AddGame`})},GetGames(t){let n=[],r=`api/games`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetGames`})},GetGame(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/games/${t.id}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetGame`})},UpdateGame(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/games/${t.id}`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`PUT`,body:r},{service:`EveningDetectiveServer`,method:`UpdateGame`})},DeleteGame(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/games/${t.id}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`DELETE`,body:null},{service:`EveningDetectiveServer`,method:`DeleteGame`})},AddTeam(t){let n=JSON.stringify(t),r=[],i=`api/teams`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`AddTeam`})},UpdateTeam(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/teams/${t.id}`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`PUT`,body:r},{service:`EveningDetectiveServer`,method:`UpdateTeam`})},DeleteTeam(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/teams/${t.id}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`DELETE`,body:null},{service:`EveningDetectiveServer`,method:`DeleteTeam`})},GiveTeamApplications(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/teams/${t.id}/applications`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`POST`,body:r},{service:`EveningDetectiveServer`,method:`GiveTeamApplications`})},GetTeamStory(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/teams/${t.id}/story`,r=[];t.password&&r.push(`password=${encodeURIComponent(t.password.toString())}`);let i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetTeamStory`})},AddTeamAction(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/teams/${t.id}/actions`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`POST`,body:r},{service:`EveningDetectiveServer`,method:`AddTeamAction`})},DeleteLastTeamAction(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/teams/${t.id}/last-actions`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`DELETE`,body:null},{service:`EveningDetectiveServer`,method:`DeleteLastTeamAction`})}}}function wM(e){return CM(TM(e))}function TM(e){return async t=>{let n=`${EM()}/${t.path}`,r={"Content-Type":`application/json`},i=e?.();i&&(r.Authorization=`Bearer ${i}`);let a=await fetch(n,{method:t.method,headers:r,body:t.body});if(a.status==401)throw Error(`unauthorized`);return await a.json()}}function EM(){return`https://evening-detective.crabs-games.art`}var DM=dc(`auth`,()=>{let e=k(null),t=k(null),n=k(null),r=k(!1),i=k(null),a=V(()=>!!e.value),o=V(()=>n.value?.username||``),s=V(()=>n.value?.roles||[]);function c(){let n=localStorage.getItem(`accessToken`),r=localStorage.getItem(`refreshToken`);n&&(e.value=n,t.value=r,u())}function l(){return e.value}async function u(){if(e.value)try{let e=await wM(l).GetMe({});if(e.error){i.value=e.error;return}e.user&&(n.value=e.user)}catch(e){console.error(`Failed to fetch user:`,e),e instanceof Error&&e.message.includes(`401`)&&await h()}}async function d(n,a){r.value=!0,i.value=null;try{let r=await wM(l).Login({email:n,password:a});return r.error?(i.value=r.error,!1):r.accessToken?(e.value=r.accessToken,t.value=r.refreshToken||null,localStorage.setItem(`accessToken`,r.accessToken),r.refreshToken&&localStorage.setItem(`refreshToken`,r.refreshToken),await u(),!0):!1}catch(e){return i.value=e instanceof Error?e.message:`Login failed`,!1}finally{r.value=!1}}async function f(){if(!t.value)return!1;try{let n=await wM(l).Refresh({refreshToken:t.value});return n.error||!n.accessToken?!1:(e.value=n.accessToken,t.value=n.refreshToken||null,localStorage.setItem(`accessToken`,n.accessToken),n.refreshToken&&localStorage.setItem(`refreshToken`,n.refreshToken),!0)}catch{return!1}}async function p(e,t){r.value=!0,i.value=null;try{let n=await wM(l).Signup({username:e,email:t});return n.error?(i.value=n.error,!1):!0}catch(e){return i.value=e instanceof Error?e.message:`Signup failed`,!1}finally{r.value=!1}}async function m(e){r.value=!0,i.value=null;try{let t=await wM(l).RefreshPassword({email:e});return t.error?(i.value=t.error,!1):!0}catch(e){return i.value=e instanceof Error?e.message:`Password reset failed`,!1}finally{r.value=!1}}async function h(){e.value=null,t.value=null,n.value=null,i.value=null,localStorage.removeItem(`accessToken`),localStorage.removeItem(`refreshToken`)}function g(e){return s.value.includes(e)}function _(e){return e.some(e=>s.value.includes(e))}return{accessToken:e,refreshToken:t,user:n,isLoading:r,error:i,isAuthenticated:a,username:o,userRoles:s,initFromStorage:c,getToken:l,login:d,signup:p,refreshPassword:m,logout:h,fetchUser:u,refreshTokenAction:f,hasRole:g,hasAnyRole:_}});function OM(){let e=DM();return kM(e.refreshTokenAction,e.getToken)}function kM(e,t){return CM(AM(e,TM(t)))}function AM(e,t){return async n=>{try{return await t(n)}catch{return await e(),await t(n)}}}var jM={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 24 24`},MM=P({name:`ContactMailRound`,render:function(e,t){return I(),L(`svg`,jM,t[0]||=[R(`path`,{d:`M21 8V7l-3 2l-3-2v1l2.72 1.82a.5.5 0 0 0 .55 0L21 8zm1-5H2C.9 3 0 3.9 0 5v14c0 1.1.9 2 2 2h20c1.1 0 1.99-.9 1.99-2L24 5c0-1.1-.9-2-2-2zM8 6c1.66 0 3 1.34 3 3s-1.34 3-3 3s-3-1.34-3-3s1.34-3 3-3zm6 12H2v-1c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1zm7.5-6h-7c-.28 0-.5-.22-.5-.5v-5c0-.28.22-.5.5-.5h7c.28 0 .5.22.5.5v5c0 .28-.22.5-.5.5z`,fill:`currentColor`},null,-1)])}}),NM={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 24 24`},PM=P({name:`LockOutlined`,render:function(e,t){return I(),L(`svg`,NM,t[0]||=[R(`path`,{d:`M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6zm9 14H6V10h12v10zm-6-3c1.1 0 2-.9 2-2s-.9-2-2-2s-2 .9-2 2s.9 2 2 2z`,fill:`currentColor`},null,-1)])}}),FM={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 24 24`},IM=P({name:`MenuOutlined`,render:function(e,t){return I(),L(`svg`,FM,t[0]||=[R(`path`,{d:`M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z`,fill:`currentColor`},null,-1)])}});function LM(e){let t=0;for(let n=0;n{let r=LM(t);if(!r){e.forEach(e=>{n.push((e&&e+` `)+t)});return}else if(r===1){e.forEach(e=>{n.push(t.replace(`&`,e))});return}let i=[t];for(;r--;){let t=[];i.forEach(n=>{e.forEach(e=>{t.push(n.replace(`&`,e))})}),i=t}i.forEach(e=>n.push(e))}),n}function VM(e,t){let n=[];return t.split(RM).forEach(t=>{e.forEach(e=>{n.push((e&&e+` `)+t)})}),n}function HM(e){let t=[``];return e.forEach(e=>{e&&=e.trim(),e&&(t=e.includes(`&`)?BM(t,e):VM(t,e))}),t.join(`, `).replace(zM,` `)}var UM=/[A-Z]/g;function WM(e){return e.replace(UM,e=>`-`+e.toLowerCase())}function GM(e,t=` `){return typeof e==`object`&&e?` { -`+Object.entries(e).map(e=>t+` ${WM(e[0])}: ${e[1]};`).join(` + `)]),eA=P({name:`UploadDragger`,__UPLOAD_DRAGGER__:!0,setup(e,{slots:t}){let n=N(Qk,null);return n||cp(`upload-dragger`,"`n-upload-dragger` must be placed inside `n-upload`."),()=>{let{mergedClsPrefixRef:{value:e},mergedDisabledRef:{value:r},maxReachedRef:{value:i}}=n;return H(`div`,{class:[`${e}-upload-dragger`,(r||i)&&`${e}-upload-dragger--disabled`]},t)}}});function tA(){return H(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 28 28`},H(`g`,{fill:`none`},H(`path`,{d:`M21.75 3A3.25 3.25 0 0 1 25 6.25v15.5A3.25 3.25 0 0 1 21.75 25H6.25A3.25 3.25 0 0 1 3 21.75V6.25A3.25 3.25 0 0 1 6.25 3h15.5zm.583 20.4l-7.807-7.68a.75.75 0 0 0-.968-.07l-.084.07l-7.808 7.68c.183.065.38.1.584.1h15.5c.204 0 .4-.035.583-.1l-7.807-7.68l7.807 7.68zM21.75 4.5H6.25A1.75 1.75 0 0 0 4.5 6.25v15.5c0 .208.036.408.103.593l7.82-7.692a2.25 2.25 0 0 1 3.026-.117l.129.117l7.82 7.692c.066-.185.102-.385.102-.593V6.25a1.75 1.75 0 0 0-1.75-1.75zm-3.25 3a2.5 2.5 0 1 1 0 5a2.5 2.5 0 0 1 0-5zm0 1.5a1 1 0 1 0 0 2a1 1 0 0 0 0-2z`,fill:`currentColor`})))}function nA(){return H(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 28 28`},H(`g`,{fill:`none`},H(`path`,{d:`M6.4 2A2.4 2.4 0 0 0 4 4.4v19.2A2.4 2.4 0 0 0 6.4 26h15.2a2.4 2.4 0 0 0 2.4-2.4V11.578c0-.729-.29-1.428-.805-1.944l-6.931-6.931A2.4 2.4 0 0 0 14.567 2H6.4zm-.9 2.4a.9.9 0 0 1 .9-.9H14V10a2 2 0 0 0 2 2h6.5v11.6a.9.9 0 0 1-.9.9H6.4a.9.9 0 0 1-.9-.9V4.4zm16.44 6.1H16a.5.5 0 0 1-.5-.5V4.06l6.44 6.44z`,fill:`currentColor`})))}var rA=P({name:`UploadProgress`,props:{show:Boolean,percentage:{type:Number,required:!0},status:{type:String,required:!0}},setup(){return{mergedTheme:N(Qk).mergedThemeRef}},render(){return H(Ux,null,{default:()=>this.show?H(Sk,{type:`line`,showIndicator:!1,percentage:this.percentage,status:this.status,height:2,theme:this.mergedTheme.peers.Progress,themeOverrides:this.mergedTheme.peerOverrides.Progress}):null})}}),iA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function aA(e){return e.includes(`image/`)}function oA(e=``){let t=e.split(`/`),n=t[t.length-1].split(/#|\?/)[0];return(/\.[^./\\]*$/.exec(n)||[``])[0]}var sA=/(webp|svg|png|gif|jpg|jpeg|jfif|bmp|dpg|ico)$/i,cA=e=>{if(e.type)return aA(e.type);let t=oA(e.name||``);if(sA.test(t))return!0;let n=e.thumbnailUrl||e.url||``,r=oA(n);return!!(/^data:image\//.test(n)||sA.test(r))};function lA(e){return iA(this,void 0,void 0,function*(){return yield new Promise(t=>{if(!e.type||!aA(e.type)){t(``);return}t(window.URL.createObjectURL(e))})})}var uA=ku&&window.FileReader&&window.File;function dA(e){return e.isDirectory}function fA(e){return e.isFile}function pA(e,t){return iA(this,void 0,void 0,function*(){let n=[];function r(e){return iA(this,void 0,void 0,function*(){for(let i of e)if(i){if(t&&dA(i)){let e=i.createReader(),t=[],n;try{do n=yield new Promise((t,n)=>{e.readEntries(t,n)}),t=t.concat(n);while(n.length>0)}catch(e){sp(`upload`,`error happens when handling directory upload`,e)}yield r(t)}else if(fA(i))try{let e=yield new Promise((e,t)=>{i.file(e,t)});n.push({file:e,entry:i,source:`dnd`})}catch(e){sp(`upload`,`error happens when handling file upload`,e)}}})}return yield r(e),n})}function mA(e){let{id:t,name:n,percentage:r,status:i,url:a,file:o,thumbnailUrl:s,type:c,fullPath:l,batchId:u}=e;return{id:t,name:n,percentage:r??null,status:i,url:a??null,file:o??null,thumbnailUrl:s??null,type:c??null,fullPath:l??null,batchId:u??null}}function hA(e,t,n){return e=e.toLowerCase(),t=t.toLocaleLowerCase(),n=n.toLocaleLowerCase(),n.split(`,`).map(e=>e.trim()).filter(Boolean).some(n=>{if(n.startsWith(`.`)){if(e.endsWith(n))return!0}else if(n.includes(`/`)){let[e,r]=t.split(`/`),[i,a]=n.split(`/`);if((i===`*`||e&&i&&i===e)&&(a===`*`||r&&a&&a===r))return!0}else return!0;return!1})}var gA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},_A={paddingMedium:`0 3px`,heightMedium:`24px`,iconSizeMedium:`18px`},vA=P({name:`UploadFile`,props:{clsPrefix:{type:String,required:!0},file:{type:Object,required:!0},listType:{type:String,required:!0},index:{type:Number,required:!0}},setup(e){let t=N(Qk),n=k(null),r=k(``),i=V(()=>{let{file:t}=e;return t.status===`finished`?`success`:t.status===`error`?`error`:`info`}),a=V(()=>{let{file:t}=e;if(t.status===`error`)return`error`}),o=V(()=>{let{file:t}=e;return t.status===`uploading`}),s=V(()=>{if(!t.showCancelButtonRef.value)return!1;let{file:n}=e;return[`uploading`,`pending`,`error`].includes(n.status)}),c=V(()=>{if(!t.showRemoveButtonRef.value)return!1;let{file:n}=e;return[`finished`].includes(n.status)}),l=V(()=>{if(!t.showDownloadButtonRef.value)return!1;let{file:n}=e;return[`finished`].includes(n.status)}),u=V(()=>{if(!t.showRetryButtonRef.value)return!1;let{file:n}=e;return[`error`].includes(n.status)}),d=Ql(()=>r.value||e.file.thumbnailUrl||e.file.url),f=V(()=>{if(!t.showPreviewButtonRef.value)return!1;let{file:{status:n},listType:r}=e;return[`finished`].includes(n)&&d.value&&r===`image-card`});function p(){return gA(this,void 0,void 0,function*(){let n=t.onRetryRef.value;n&&(yield n({file:e.file}))===!1||t.submit({fileId:e.file.id})})}function m(t){t.preventDefault();let{file:n}=e;[`finished`,`pending`,`error`].includes(n.status)?g(n):[`uploading`].includes(n.status)?v(n):op(`upload`,`The button clicked type is unknown.`)}function h(t){t.preventDefault(),_(e.file)}function g(n){let{xhrMap:r,doChange:i,onRemoveRef:{value:a},mergedFileListRef:{value:o}}=t;Promise.resolve(a?a({file:Object.assign({},n),fileList:o,index:e.index}):!0).then(e=>{if(e===!1)return;let t=Object.assign({},n,{status:`removed`});r.delete(n.id),i(t,void 0,{remove:!0})})}function _(e){let{onDownloadRef:{value:n},customDownloadRef:{value:r}}=t;Promise.resolve(n?n(Object.assign({},e)):!0).then(t=>{t!==!1&&(r?r(Object.assign({},e)):tp(e.url,e.name))})}function v(e){let{xhrMap:n}=t;n.get(e.id)?.abort(),g(Object.assign({},e))}function y(r){let{onPreviewRef:{value:i}}=t;if(i)i(e.file,{event:r});else if(e.listType===`image-card`){let{value:e}=n;if(!e)return;e.showPreview()}}let b=()=>gA(this,void 0,void 0,function*(){let{listType:n}=e;n!==`image`&&n!==`image-card`||t.shouldUseThumbnailUrlRef.value(e.file)&&(r.value=yield t.getFileThumbnailUrlResolver(e.file))});return qn(()=>{b()}),{mergedTheme:t.mergedThemeRef,progressStatus:i,buttonType:a,showProgress:o,disabled:t.mergedDisabledRef,showCancelButton:s,showRemoveButton:c,showDownloadButton:l,showRetryButton:u,showPreviewButton:f,mergedThumbnailUrl:d,shouldUseThumbnailUrl:t.shouldUseThumbnailUrlRef,renderIcon:t.renderIconRef,imageRef:n,handleRemoveOrCancelClick:m,handleDownloadClick:h,handleRetryClick:p,handlePreviewClick:y}},render(){let{clsPrefix:e,mergedTheme:t,listType:n,file:r,renderIcon:i}=this,a,o=n===`image`;a=o||n===`image-card`?!this.shouldUseThumbnailUrl(r)||!this.mergedThumbnailUrl?H(`span`,{class:`${e}-upload-file-info__thumbnail`},i?i(r):cA(r)?H(lx,{clsPrefix:e},{default:tA}):H(lx,{clsPrefix:e},{default:nA})):H(`a`,{rel:`noopener noreferer`,target:`_blank`,href:r.url||void 0,class:`${e}-upload-file-info__thumbnail`,onClick:this.handlePreviewClick},n===`image-card`?H(uk,{src:this.mergedThumbnailUrl||void 0,previewSrc:r.url||void 0,alt:r.name,ref:`imageRef`}):H(`img`,{src:this.mergedThumbnailUrl||void 0,alt:r.name})):H(`span`,{class:`${e}-upload-file-info__thumbnail`},i?i(r):H(lx,{clsPrefix:e},{default:()=>H(hx,null)}));let s=H(rA,{show:this.showProgress,percentage:r.percentage||0,status:this.progressStatus}),c=n===`text`||n===`image`;return H(`div`,{class:[`${e}-upload-file`,`${e}-upload-file--${this.progressStatus}-status`,r.url&&r.status!==`error`&&n!==`image-card`&&`${e}-upload-file--with-url`,`${e}-upload-file--${n}-type`]},H(`div`,{class:`${e}-upload-file-info`},a,H(`div`,{class:`${e}-upload-file-info__name`},c&&(r.url&&r.status!==`error`?H(`a`,{rel:`noopener noreferer`,target:`_blank`,href:r.url||void 0,onClick:this.handlePreviewClick},r.name):H(`span`,{onClick:this.handlePreviewClick},r.name)),o&&s),H(`div`,{class:[`${e}-upload-file-info__action`,`${e}-upload-file-info__action--${n}-type`]},this.showPreviewButton?H(nT,{key:`preview`,quaternary:!0,type:this.buttonType,onClick:this.handlePreviewClick,theme:t.peers.Button,themeOverrides:t.peerOverrides.Button,builtinThemeOverrides:_A},{icon:()=>H(lx,{clsPrefix:e},{default:()=>H(wx,null)})}):null,(this.showRemoveButton||this.showCancelButton)&&!this.disabled&&H(nT,{key:`cancelOrTrash`,theme:t.peers.Button,themeOverrides:t.peerOverrides.Button,quaternary:!0,builtinThemeOverrides:_A,type:this.buttonType,onClick:this.handleRemoveOrCancelClick},{icon:()=>H(ux,null,{default:()=>this.showRemoveButton?H(lx,{clsPrefix:e,key:`trash`},{default:()=>H(Nx,null)}):H(lx,{clsPrefix:e,key:`cancel`},{default:()=>H(gx,null)})})}),this.showRetryButton&&!this.disabled&&H(nT,{key:`retry`,quaternary:!0,type:this.buttonType,onClick:this.handleRetryClick,theme:t.peers.Button,themeOverrides:t.peerOverrides.Button,builtinThemeOverrides:_A},{icon:()=>H(lx,{clsPrefix:e},{default:()=>H(kx,null)})}),this.showDownloadButton?H(nT,{key:`download`,quaternary:!0,type:this.buttonType,onClick:this.handleDownloadClick,theme:t.peers.Button,themeOverrides:t.peerOverrides.Button,builtinThemeOverrides:_A},{icon:()=>H(lx,{clsPrefix:e},{default:()=>H(xx,null)})}):null)),!o&&s)}}),yA=P({name:`UploadTrigger`,props:{abstract:Boolean},slots:Object,setup(e,{slots:t}){let n=N(Qk,null);n||cp(`upload-trigger`,"`n-upload-trigger` must be placed inside `n-upload`.");let{mergedClsPrefixRef:r,mergedDisabledRef:i,maxReachedRef:a,listTypeRef:o,dragOverRef:s,openOpenFileDialog:c,draggerInsideRef:l,handleFileAddition:u,mergedDirectoryDndRef:d,triggerClassRef:f,triggerStyleRef:p}=n,m=V(()=>o.value===`image-card`);function h(){i.value||a.value||c()}function g(e){e.preventDefault(),s.value=!0}function _(e){e.preventDefault(),s.value=!0}function v(e){e.preventDefault(),s.value=!1}function y(e){if(e.preventDefault(),!l.value||i.value||a.value){s.value=!1;return}let t=e.dataTransfer?.items;t?.length?pA(Array.from(t).map(e=>e.webkitGetAsEntry()),d.value).then(e=>{u(e)}).finally(()=>{s.value=!1}):s.value=!1}return()=>{let{value:n}=r;return e.abstract?t.default?.call(t,{handleClick:h,handleDrop:y,handleDragOver:g,handleDragEnter:_,handleDragLeave:v}):H(`div`,{class:[`${n}-upload-trigger`,(i.value||a.value)&&`${n}-upload-trigger--disabled`,m.value&&`${n}-upload-trigger--image-card`,f.value],style:p.value,onClick:h,onDrop:y,onDragover:g,onDragenter:_,onDragleave:v},m.value?H(eA,null,{default:()=>yp(t.default,()=>[H(lx,{clsPrefix:n},{default:()=>H(dx,null)})])}):t)}}}),bA=P({name:`UploadFileList`,setup(e,{slots:t}){let n=N(Qk,null);n||cp(`upload-file-list`,"`n-upload-file-list` must be placed inside `n-upload`.");let{abstractRef:r,mergedClsPrefixRef:i,listTypeRef:a,mergedFileListRef:o,fileListClassRef:s,fileListStyleRef:c,cssVarsRef:l,themeClassRef:u,maxReachedRef:d,showTriggerRef:f,imageGroupPropsRef:p}=n,m=V(()=>a.value===`image-card`),h=()=>o.value.map((e,t)=>H(vA,{clsPrefix:i.value,key:e.id,file:e,index:t,listType:a.value})),g=()=>m.value?H(sk,Object.assign({},p.value),{default:h}):H(Ux,{group:!0},{default:h});return()=>{let{value:e}=i,{value:n}=r;return H(`div`,{class:[`${e}-upload-file-list`,m.value&&`${e}-upload-file-list--grid`,n?u?.value:void 0,s.value],style:[n&&l?l.value:``,c.value]},g(),f.value&&!d.value&&m.value&&H(yA,null,t))}}}),xA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function SA(e,t,n){let{doChange:r,xhrMap:i}=e,a=0;function o(n){let o=Object.assign({},t,{status:`error`,percentage:a});i.delete(t.id),o=mA(e.onError?.call(e,{file:o,event:n})||o),r(o,n)}function s(s){if(e.isErrorState){if(e.isErrorState(n)){o(s);return}}else if(n.status<200||n.status>=300){o(s);return}let c=Object.assign({},t,{status:`finished`,percentage:a});i.delete(t.id),c=mA(e.onFinish?.call(e,{file:c,event:s})||c),r(c,s)}return{handleXHRLoad:s,handleXHRError:o,handleXHRAbort(e){let n=Object.assign({},t,{status:`removed`,file:null,percentage:a});i.delete(t.id),r(n,e)},handleXHRProgress(e){let n=Object.assign({},t,{status:`uploading`});if(e.lengthComputable){let t=Math.ceil(e.loaded/e.total*100);n.percentage=t,a=t}r(n,e)}}}function CA(e){let{inst:t,file:n,data:r,headers:i,withCredentials:a,action:o,customRequest:s}=e,{doChange:c}=e.inst,l=0;s({file:n,data:r,headers:i,withCredentials:a,action:o,onProgress(e){let t=Object.assign({},n,{status:`uploading`}),r=e.percent;t.percentage=r,l=r,c(t)},onFinish(){let e=Object.assign({},n,{status:`finished`,percentage:l});e=mA(t.onFinish?.call(t,{file:e})||e),c(e)},onError(){let e=Object.assign({},n,{status:`error`,percentage:l});e=mA(t.onError?.call(t,{file:e})||e),c(e)}})}function wA(e,t,n){let r=SA(e,t,n);n.onabort=r.handleXHRAbort,n.onerror=r.handleXHRError,n.onload=r.handleXHRLoad,n.upload&&(n.upload.onprogress=r.handleXHRProgress)}function TA(e,t){return typeof e==`function`?e({file:t}):e||{}}function EA(e,t,n){let r=TA(t,n);r&&Object.keys(r).forEach(t=>{e.setRequestHeader(t,r[t])})}function DA(e,t,n){let r=TA(t,n);r&&Object.keys(r).forEach(t=>{e.append(t,r[t])})}function OA(e,t,n,{method:r,action:i,withCredentials:a,responseType:o,headers:s,data:c}){let l=new XMLHttpRequest;l.responseType=o,e.xhrMap.set(n.id,l),l.withCredentials=a;let u=new FormData;if(DA(u,c,n),n.file!==null&&u.append(t,n.file),wA(e,n,l),i!==void 0){l.open(r.toUpperCase(),i),EA(l,s,n),l.send(u);let t=Object.assign({},n,{status:`uploading`});e.doChange(t)}}var kA=P({name:`Upload`,props:Object.assign(Object.assign({},sx.props),{name:{type:String,default:`file`},accept:String,action:String,customRequest:Function,directory:Boolean,directoryDnd:{type:Boolean,default:void 0},method:{type:String,default:`POST`},multiple:Boolean,showFileList:{type:Boolean,default:!0},data:[Object,Function],headers:[Object,Function],withCredentials:Boolean,responseType:{type:String,default:``},disabled:{type:Boolean,default:void 0},onChange:Function,onRemove:Function,onFinish:Function,onError:Function,onRetry:Function,onBeforeUpload:Function,isErrorState:Function,onDownload:Function,customDownload:Function,defaultUpload:{type:Boolean,default:!0},fileList:Array,"onUpdate:fileList":[Function,Array],onUpdateFileList:[Function,Array],fileListClass:String,fileListStyle:[String,Object],defaultFileList:{type:Array,default:()=>[]},showCancelButton:{type:Boolean,default:!0},showRemoveButton:{type:Boolean,default:!0},showDownloadButton:Boolean,showRetryButton:{type:Boolean,default:!0},showPreviewButton:{type:Boolean,default:!0},listType:{type:String,default:`text`},onPreview:Function,shouldUseThumbnailUrl:{type:Function,default:e=>uA?cA(e):!1},createThumbnailUrl:Function,abstract:Boolean,max:Number,showTrigger:{type:Boolean,default:!0},imageGroupProps:Object,inputProps:Object,triggerClass:String,triggerStyle:[String,Object],renderIcon:Function}),setup(e){e.abstract&&e.listType===`image-card`&&cp(`upload`,`when the list-type is image-card, abstract is not supported.`);let{mergedClsPrefixRef:t,inlineThemeDisabled:n,mergedRtlRef:r}=Tp(e),i=sx(`Upload`,`-upload`,$k,VO,e,t),a=$b(`Upload`,r,t),o=Op(e),s=k(e.defaultFileList),c=j(e,`fileList`),l=k(null),u={value:!1},d=k(!1),f=new Map,p=mu(c,s),m=V(()=>p.value.map(mA)),h=V(()=>{let{max:t}=e;return t===void 0?!1:m.value.length>=t});function g(){var e;(e=l.value)==null||e.click()}function _(e){let t=e.target;x(t.files?Array.from(t.files).map(e=>({file:e,entry:null,source:`input`})):null,e),t.value=``}function v(t){let{"onUpdate:fileList":n,onUpdateFileList:r}=e;n&&X(n,t),r&&X(r,t),s.value=t}let y=V(()=>e.multiple||e.directory),b=(t,n,r={append:!1,remove:!1})=>{let{append:i,remove:a}=r,o=Array.from(m.value),s=o.findIndex(e=>e.id===t.id);if(i||a||~s){i?o.push(t):a?o.splice(s,1):o.splice(s,1,t);let{onChange:r}=e;r&&r({file:t,fileList:o,event:n}),v(o)}};function x(t,n){if(!t||t.length===0)return;let{onBeforeUpload:r}=e;t=y.value?t:[t[0]];let{max:i,accept:a}=e;t=t.filter(({file:e,source:t})=>t===`dnd`&&a?.trim()?hA(e.name,e.type,a):!0),i&&(t=t.slice(0,i-m.value.length));let o=Vl();Promise.all(t.map(e=>xA(this,[e],void 0,function*({file:e,entry:t}){let n={id:Vl(),batchId:o,name:e.name,status:`pending`,percentage:0,file:e,url:null,type:e.type,thumbnailUrl:null,fullPath:t?.fullPath??`/${e.webkitRelativePath||e.name}`};return!r||(yield r({file:n,fileList:m.value}))!==!1?n:null}))).then(e=>xA(this,void 0,void 0,function*(){let t=Promise.resolve();e.forEach(e=>{t=t.then(kn).then(()=>{e&&b(e,n,{append:!0})})}),yield t})).then(()=>{e.defaultUpload&&S()})}function S({fileId:t,retry:n=!1}={}){let{method:r,action:i,withCredentials:a,headers:o,data:s,name:c}=e,l=t===void 0?m.value:m.value.filter(e=>e.id===t),u=n||t!==void 0;l.forEach(t=>{let{status:n}=t;(n===`pending`||n===`error`&&u)&&(e.customRequest?CA({inst:{doChange:b,xhrMap:f,onFinish:e.onFinish,onError:e.onError},file:t,action:i,withCredentials:a,headers:o,data:s,customRequest:e.customRequest}):OA({doChange:b,xhrMap:f,onFinish:e.onFinish,onError:e.onError,isErrorState:e.isErrorState},c,t,{method:r,action:i,withCredentials:a,responseType:e.responseType,headers:o,data:s}))})}function C(t){if(t.thumbnailUrl)return t.thumbnailUrl;let{createThumbnailUrl:n}=e;return n?n(t.file,t)??(t.url||``):t.url?t.url:t.file?lA(t.file):``}let w=V(()=>{let{common:{cubicBezierEaseInOut:e},self:{draggerColor:t,draggerBorder:n,draggerBorderHover:r,itemColorHover:a,itemColorHoverError:o,itemTextColorError:s,itemTextColorSuccess:c,itemTextColor:l,itemIconColor:u,itemDisabledOpacity:d,lineHeight:f,borderRadius:p,fontSize:m,itemBorderImageCardError:h,itemBorderImageCard:g}}=i.value;return{"--n-bezier":e,"--n-border-radius":p,"--n-dragger-border":n,"--n-dragger-border-hover":r,"--n-dragger-color":t,"--n-font-size":m,"--n-item-color-hover":a,"--n-item-color-hover-error":o,"--n-item-disabled-opacity":d,"--n-item-icon-color":u,"--n-item-text-color":l,"--n-item-text-color-error":s,"--n-item-text-color-success":c,"--n-line-height":f,"--n-item-border-image-card-error":h,"--n-item-border-image-card":g}}),T=n?Ep(`upload`,void 0,w,e):void 0;Un(Qk,{mergedClsPrefixRef:t,mergedThemeRef:i,showCancelButtonRef:j(e,`showCancelButton`),showDownloadButtonRef:j(e,`showDownloadButton`),showRemoveButtonRef:j(e,`showRemoveButton`),showRetryButtonRef:j(e,`showRetryButton`),onRemoveRef:j(e,`onRemove`),onDownloadRef:j(e,`onDownload`),customDownloadRef:j(e,`customDownload`),mergedFileListRef:m,triggerClassRef:j(e,`triggerClass`),triggerStyleRef:j(e,`triggerStyle`),shouldUseThumbnailUrlRef:j(e,`shouldUseThumbnailUrl`),renderIconRef:j(e,`renderIcon`),xhrMap:f,submit:S,doChange:b,showPreviewButtonRef:j(e,`showPreviewButton`),onPreviewRef:j(e,`onPreview`),getFileThumbnailUrlResolver:C,listTypeRef:j(e,`listType`),dragOverRef:d,openOpenFileDialog:g,draggerInsideRef:u,handleFileAddition:x,mergedDisabledRef:o.mergedDisabledRef,maxReachedRef:h,fileListClassRef:j(e,`fileListClass`),fileListStyleRef:j(e,`fileListStyle`),abstractRef:j(e,`abstract`),acceptRef:j(e,`accept`),cssVarsRef:n?void 0:w,themeClassRef:T?.themeClass,onRender:T?.onRender,showTriggerRef:j(e,`showTrigger`),imageGroupPropsRef:j(e,`imageGroupProps`),mergedDirectoryDndRef:V(()=>e.directoryDnd??e.directory),onRetryRef:j(e,`onRetry`)});let ee={clear:()=>{s.value=[]},submit:S,openOpenFileDialog:g};return Object.assign({mergedClsPrefix:t,draggerInsideRef:u,rtlEnabled:a,inputElRef:l,mergedTheme:i,dragOver:d,mergedMultiple:y,cssVars:n?void 0:w,themeClass:T?.themeClass,onRender:T?.onRender,handleFileInputChange:_},ee)},render(){let{draggerInsideRef:e,mergedClsPrefix:t,$slots:n,directory:r,onRender:i}=this;n.default&&!this.abstract&&n.default()[0]?.type?.__UPLOAD_DRAGGER__&&(e.value=!0);let a=H(`input`,Object.assign({},this.inputProps,{ref:`inputElRef`,type:`file`,class:`${t}-upload-file-input`,accept:this.accept,multiple:this.mergedMultiple,onChange:this.handleFileInputChange,webkitdirectory:r||void 0,directory:r||void 0}));return this.abstract?H(F,null,n.default?.call(n),H(lr,{to:`body`},a)):(i?.(),H(`div`,{class:[`${t}-upload`,this.rtlEnabled&&`${t}-upload--rtl`,e.value&&`${t}-upload--dragger-inside`,this.dragOver&&`${t}-upload--drag-over`,this.themeClass],style:this.cssVars},a,this.showTrigger&&this.listType!==`image-card`&&H(yA,null,n),this.showFileList&&H(bA,null,n)))}}),AA={name:`dark`,common:Q,Alert:qC,Anchor:iw,AutoComplete:Dw,Avatar:zw,AvatarGroup:Vw,BackTop:Uw,Badge:Ww,Breadcrumb:qw,Button:eT,ButtonGroup:jD,Calendar:dT,Card:hT,Carousel:ST,Cascader:OT,Checkbox:ET,Code:PT,Collapse:IT,CollapseTransition:RT,ColorPicker:BT,DataTable:oE,DatePicker:hE,Descriptions:vE,Dialog:CE,Divider:iD,Drawer:oD,Dropdown:XT,DynamicInput:cD,DynamicTags:wD,Element:TD,Empty:QS,Ellipsis:tE,Equation:{name:`Equation`,common:Q,self:()=>({})},Flex:DD,Form:PD,GradientText:FD,Heatmap:KO,Icon:lE,IconWrapper:JO,Image:YO,Input:lw,InputNumber:ID,InputOtp:RD,LegacyTransfer:fk,Layout:zD,List:HD,LoadingBar:zE,Log:UD,Menu:qD,Mention:WD,Message:GE,Modal:jE,Notification:nD,PageHeader:XD,Pagination:qT,Popconfirm:$D,Popover:gC,Popselect:HT,Progress:nO,QrCode:Ck,Radio:rE,Rate:rO,Result:oO,Row:BD,Scrollbar:uS,Select:WT,Skeleton:Nk,Slider:cO,Space:vD,Spin:uO,Statistic:fO,Steps:hO,Switch:_O,Table:SO,Tabs:EO,Tag:jC,Thing:OO,TimePicker:fE,Timeline:AO,Tooltip:QT,Transfer:MO,Tree:PO,TreeSelect:FO,Typography:zO,Upload:HO,Watermark:UO,Split:Pk,FloatButton:WO,FloatButtonGroup:{name:`FloatButtonGroup`,common:Q,self(e){let{popoverColor:t,dividerColor:n,borderRadius:r}=e;return{color:t,buttonBorderColor:n,borderRadiusSquare:r,boxShadow:`0 2px 8px 0px rgba(0, 0, 0, .12)`}}},Marquee:mk},jA=typeof document<`u`;function MA(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function NA(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&MA(e.default)}var PA=Object.assign;function FA(e,t){let n={};for(let r in t){let i=t[r];n[r]=LA(i)?i.map(e):e(i)}return n}var IA=()=>{},LA=Array.isArray;function RA(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var zA=Symbol(``);function BA(e,t){return PA(Error(),{type:e,[zA]:!0},t)}function VA(e,t){return e instanceof Error&&zA in e&&(t==null||!!(e.type&t))}var HA=Symbol(``),UA=Symbol(``),WA=Symbol(``),GA=Symbol(``),KA=Symbol(``);function qA(){return N(WA)}function JA(e){return N(GA)}var YA=/#/g,XA=/&/g,ZA=/\//g,QA=/=/g,$A=/\?/g,ej=/\+/g,tj=/%5B/g,nj=/%5D/g,rj=/%5E/g,ij=/%60/g,aj=/%7B/g,oj=/%7C/g,sj=/%7D/g,cj=/%20/g;function lj(e){return e==null?``:encodeURI(``+e).replace(oj,`|`).replace(tj,`[`).replace(nj,`]`)}function uj(e){return lj(e).replace(aj,`{`).replace(sj,`}`).replace(rj,`^`)}function dj(e){return lj(e).replace(ej,`%2B`).replace(cj,`+`).replace(YA,`%23`).replace(XA,`%26`).replace(ij,"`").replace(aj,`{`).replace(sj,`}`).replace(rj,`^`)}function fj(e){return dj(e).replace(QA,`%3D`)}function pj(e){return lj(e).replace(YA,`%23`).replace($A,`%3F`)}function mj(e){return pj(e).replace(ZA,`%2F`)}function hj(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var gj=/\/$/,_j=e=>e.replace(gj,``);function vj(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=Ej(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:hj(o)}}function yj(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function bj(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function xj(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&Sj(t.matched[r],n.matched[i])&&Cj(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Sj(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Cj(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!wj(e[n],t[n]))return!1;return!0}function wj(e,t){return LA(e)?Tj(e,t):LA(t)?Tj(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function Tj(e,t){return LA(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function Ej(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var Dj={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function Oj(e){if(!e)if(jA){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),_j(e)}var kj=/^[^#]+#/;function Aj(e,t){return e.replace(kj,`#`)+t}function jj(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var Mj=()=>({left:window.scrollX,top:window.scrollY});function Nj(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=jj(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function Pj(e,t){return(history.state?history.state.position-t:-1)+e}var Fj=new Map;function Ij(e,t){Fj.set(e,t)}function Lj(e){let t=Fj.get(e);return Fj.delete(e),t}function Rj(e){return typeof e==`string`||e&&typeof e==`object`}function zj(e){return typeof e==`string`||typeof e==`symbol`}function Bj(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;ee&&dj(e)):[r&&dj(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Hj(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=LA(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function Uj(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Wj(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(BA(4,{from:n,to:t})):e instanceof Error?c(e):Rj(e)?c(BA(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function Gj(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(MA(s)){let c=(s.__vccOpts||s)[t];c&&a.push(Wj(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=NA(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&Wj(c,n,r,o,e,i)()}))}}return a}function Kj(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;oSj(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>Sj(e,s))||i.push(s))}return[n,r,i]}var qj=()=>location.protocol+`//`+location.host;function Jj(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),bj(n,``)}return bj(n,e)+r+i}function Yj(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=Jj(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(PA({},e.state,{scroll:Mj()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function Xj(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?Mj():null}}function Zj(e){let{history:t,location:n}=window,r={value:Jj(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:qj()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,PA({},t.state,Xj(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=PA({},i.value,t.state,{forward:e,scroll:Mj()});a(o.current,o,!0),a(e,PA({},Xj(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function Qj(e){e=Oj(e);let t=Zj(e),n=Yj(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=PA({location:``,base:e,go:r,createHref:Aj.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}var $j={type:0,value:``},eM=/[a-zA-Z0-9_]/;function tM(e){if(!e)return[[]];if(e===`/`)return[[$j]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=0,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===0?a.push({type:0,value:l}):n===1||n===2||n===3?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;st.length?t.length===1&&t[0]===80?1:-1:0}function sM(e,t){let n=0,r=e.score,i=t.score;for(;n0&&t[t.length-1]<0}var lM={strict:!1,end:!0,sensitive:!1};function uM(e,t,n){let r=PA(aM(tM(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function dM(e,t){let n=[],r=new Map;t=RA(lM,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=pM(e);s.aliasOf=r&&r.record;let l=RA(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(pM(PA({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=uM(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!hM(d)&&o(e.name)),yM(d)&&c(d),s.children){let e=s.children;for(let t=0;t{o(f)}:IA}function o(e){if(zj(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=_M(e,n);n.splice(t,0,e),e.record.name&&!hM(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw BA(1,{location:e});s=i.record.name,a=PA(fM(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&fM(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name,i.keys.forEach(e=>{e.optional&&!a[e.name]&&delete a[e.name]}));else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw BA(1,{location:e,currentLocation:t});s=i.record.name,a=PA({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:gM(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function fM(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function pM(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:mM(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function mM(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function hM(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function gM(e){return e.reduce((e,t)=>PA(e,t.meta),{})}function _M(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;sM(e,t[i])<0?r=i:n=i+1}let i=vM(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function vM(e){let t=e;for(;t=t.parent;)if(yM(t)&&sM(e,t)===0)return t}function yM({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function bM(e){let t=N(WA),n=N(GA),r=V(()=>{let n=A(e.to);return t.resolve(n)}),i=V(()=>{let{matched:e}=r.value,{length:t}=e,i=e[t-1],a=n.matched;if(!i||!a.length)return-1;let o=a.findIndex(Sj.bind(null,i));if(o>-1)return o;let s=TM(e[t-2]);return t>1&&TM(i)===s&&a[a.length-1].path!==s?a.findIndex(Sj.bind(null,e[t-2])):o}),a=V(()=>i.value>-1&&wM(n.params,r.value.params)),o=V(()=>i.value>-1&&i.value===n.matched.length-1&&Cj(n.params,r.value.params));function s(n={}){if(CM(n)){let n=t[A(e.replace)?`replace`:`push`](A(e.to)).catch(IA);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>n),n}return Promise.resolve()}return{route:r,href:V(()=>r.value.href),isActive:a,isExactActive:o,navigate:s}}function xM(e){return e.length===1?e[0]:e}var SM=P({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:bM,setup(e,{slots:t}){let n=Vt(bM(e)),{options:r}=N(WA),i=V(()=>({[EM(e.activeClass,r.linkActiveClass,`router-link-active`)]:n.isActive,[EM(e.exactActiveClass,r.linkExactActiveClass,`router-link-exact-active`)]:n.isExactActive}));return()=>{let r=t.default&&xM(t.default(n));return e.custom?r:H(`a`,{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:i.value},r)}}});function CM(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function wM(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!LA(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function TM(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var EM=(e,t,n)=>e??t??n,DM=P({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){let r=N(KA),i=V(()=>e.route||r.value),a=N(UA,0),o=V(()=>{let e=A(a),{matched:t}=i.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),s=V(()=>i.value.matched[o.value]);Un(UA,V(()=>o.value+1)),Un(HA,s),Un(KA,i);let c=k();return Jn(()=>[c.value,s.value,e.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!Sj(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let r=i.value,a=e.name,o=s.value,l=o&&o.components[a];if(!l)return OM(n.default,{Component:l,route:r});let u=o.props[a],d=H(l,PA({},u?u===!0?r.params:typeof u==`function`?u(r):u:null,t,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(o.instances[a]=null)},ref:c}));return OM(n.default,{Component:d,route:r})||d}}});function OM(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var kM=DM;function AM(e){let t=dM(e.routes,e),n=e.parseQuery||Bj,r=e.stringifyQuery||Vj,i=e.history,a=Uj(),o=Uj(),s=Uj(),c=en(Dj),l=Dj;jA&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let u=FA.bind(null,e=>``+e),d=FA.bind(null,mj),f=FA.bind(null,hj);function p(e,n){let r,i;return zj(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function m(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function h(){return t.getRoutes().map(e=>e.record)}function g(e){return!!t.getRecordMatcher(e)}function _(e,a){if(a=PA({},a||c.value),typeof e==`string`){let r=vj(n,e,a.path),o=t.resolve({path:r.path},a),s=i.createHref(r.fullPath);return PA(r,o,{params:f(o.params),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=PA({},e,{path:vj(n,e.path,a.path).path});else{let t=PA({},e.params);for(let e in t)t[e]??delete t[e];o=PA({},e,{params:d(t)}),a.params=d(a.params)}let s=t.resolve(o,a),l=e.hash||``;s.params=u(f(s.params));let p=yj(r,PA({},e,{hash:uj(l),path:s.path})),m=i.createHref(p);return PA({fullPath:p,hash:l,query:r===Vj?Hj(e.query):e.query||{}},s,{redirectedFrom:void 0,href:m})}function v(e){return typeof e==`string`?vj(n,e,c.value.path):PA({},e)}function y(e,t){if(l!==e)return BA(8,{from:t,to:e})}function b(e){return C(e)}function x(e){return b(PA(v(e),{replace:!0}))}function S(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=v(i):{path:i},i.params={}),PA({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function C(e,t){let n=l=_(e),i=c.value,a=e.state,o=e.force,s=e.replace===!0,u=S(n,i);if(u)return C(PA(v(u),{state:typeof u==`object`?PA({},a,u.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&xj(r,i,n)&&(f=BA(16,{to:d,from:i}),le(i,i,!0,!1)),(f?Promise.resolve(f):ee(d,i)).catch(e=>VA(e)?VA(e,2)?e:ce(e):oe(e,d,i)).then(e=>{if(e){if(VA(e,2))return C(PA({replace:s},v(e.to),{state:typeof e.to==`object`?PA({},a,e.to.state):a,force:o}),t||d)}else e=D(d,i,!0,s,a);return E(d,i,e),e})}function w(e,t){let n=y(e,t);return n?Promise.reject(n):Promise.resolve()}function T(e){let t=fe.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function ee(e,t){let n,[r,i,s]=Kj(e,t);n=Gj(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(Wj(r,e,t))});let c=w.bind(null,e,t);return n.push(c),me(n).then(()=>{n=[];for(let r of a.list())n.push(Wj(r,e,t));return n.push(c),me(n)}).then(()=>{n=Gj(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(Wj(r,e,t))});return n.push(c),me(n)}).then(()=>{n=[];for(let r of s)if(r.beforeEnter)if(LA(r.beforeEnter))for(let i of r.beforeEnter)n.push(Wj(i,e,t));else n.push(Wj(r.beforeEnter,e,t));return n.push(c),me(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Gj(s,`beforeRouteEnter`,e,t,T),n.push(c),me(n))).then(()=>{n=[];for(let r of o.list())n.push(Wj(r,e,t));return n.push(c),me(n)}).catch(e=>VA(e,8)?e:Promise.reject(e))}function E(e,t,n){s.list().forEach(r=>T(()=>r(e,t,n)))}function D(e,t,n,r,a){let o=y(e,t);if(o)return o;let s=t===Dj,l=jA?history.state:{};n&&(r||s?i.replace(e.fullPath,PA({scroll:s&&l&&l.scroll},a)):i.push(e.fullPath,a)),c.value=e,le(e,t,n,s),ce()}let te;function ne(){te||=i.listen((e,t,n)=>{if(!pe.listening)return;let r=_(e),a=S(r,pe.currentRoute.value);if(a){C(PA(a,{replace:!0,force:!0}),r).catch(IA);return}l=r;let o=c.value;jA&&Ij(Pj(o.fullPath,n.delta),Mj()),ee(r,o).catch(e=>VA(e,12)?e:VA(e,2)?(C(PA(v(e.to),{force:!0}),r).then(e=>{VA(e,20)&&!n.delta&&n.type===`pop`&&i.go(-1,!1)}).catch(IA),Promise.reject()):(n.delta&&i.go(-n.delta,!1),oe(e,r,o))).then(e=>{e||=D(r,o,!1),e&&(n.delta&&!VA(e,8)?i.go(-n.delta,!1):n.type===`pop`&&VA(e,20)&&i.go(-1,!1)),E(r,o,e)}).catch(IA)})}let re=Uj(),ie=Uj(),ae;function oe(e,t,n){ce(e);let r=ie.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function se(){return ae&&c.value!==Dj?Promise.resolve():new Promise((e,t)=>{re.add([e,t])})}function ce(e){return ae||(ae=!e,ne(),re.list().forEach(([t,n])=>e?n(e):t()),re.reset()),e}function le(t,n,r,i){let{scrollBehavior:a}=e;if(!jA||!a)return Promise.resolve();let o=!r&&Lj(Pj(t.fullPath,0))||(i||!r)&&history.state&&history.state.scroll||null;return kn().then(()=>a(t,n,o)).then(e=>e&&Nj(e)).catch(e=>oe(e,t,n))}let ue=e=>i.go(e),de,fe=new Set,pe={currentRoute:c,listening:!0,addRoute:p,removeRoute:m,clearRoutes:t.clearRoutes,hasRoute:g,getRoutes:h,resolve:_,options:e,push:b,replace:x,go:ue,back:()=>ue(-1),forward:()=>ue(1),beforeEach:a.add,beforeResolve:o.add,afterEach:s.add,onError:ie.add,isReady:se,install(e){e.component(`RouterLink`,SM),e.component(`RouterView`,kM),e.config.globalProperties.$router=pe,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>A(c)}),jA&&!de&&c.value===Dj&&(de=!0,b(i.location).catch(e=>{}));let t={};for(let e in Dj)Object.defineProperty(t,e,{get:()=>c.value[e],enumerable:!0});e.provide(WA,pe),e.provide(GA,Ht(t)),e.provide(KA,c);let n=e.unmount;fe.add(e),e.unmount=function(){fe.delete(e),fe.size<1&&(l=Dj,te&&te(),te=null,c.value=Dj,de=!1,ae=!1),n()}}};function me(e){return e.reduce((e,t)=>e.then(()=>T(t)),Promise.resolve())}return pe}var jM=P({__name:`App`,setup(e){return(e,t)=>(I(),Sa(A(VT),{theme:A(AA)},{default:M(()=>[z(A(QE),null,{default:M(()=>[z(A(kM))]),_:1})]),_:1},8,[`theme`]))}});function MM(e){return{Ping(t){let n=[],r=`api/test/ping`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`Ping`})},Echo(t){let n=[];t.text&&n.push(`text=${encodeURIComponent(t.text.toString())}`);let r=`api/test/echo`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`POST`,body:null},{service:`EveningDetectiveServer`,method:`Echo`})},Signup(t){let n=JSON.stringify(t),r=[],i=`api/auth/signup`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`Signup`})},RefreshPassword(t){let n=JSON.stringify(t),r=[],i=`api/auth/refresh-password`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`RefreshPassword`})},Login(t){let n=JSON.stringify(t),r=[],i=`api/auth/login`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`Login`})},Refresh(t){let n=JSON.stringify(t),r=[],i=`api/auth/refresh`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`Refresh`})},GetUsers(t){let n=[],r=`api/users`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetUsers`})},GetUserById(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/users/${t.id}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetUserById`})},GetMe(t){let n=[],r=`api/users/me`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetMe`})},AddUserRole(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/users/${t.id}/role/add`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`POST`,body:r},{service:`EveningDetectiveServer`,method:`AddUserRole`})},DeleteUserRole(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/users/${t.id}/role/delete`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`POST`,body:r},{service:`EveningDetectiveServer`,method:`DeleteUserRole`})},GetPermissions(t){let n=[],r=`api/ui/permissions`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetPermissions`})},UploadFile(t){let n=JSON.stringify(t),r=[],i=`api/files/upload`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`UploadFile`})},DownloadFile(t){if(!t.filename)throw Error(`missing required field request.filename`);let n=`api/files/${t.filename}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`DownloadFile`})},AddScenario(t){let n=JSON.stringify(t),r=[],i=`api/scenario`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`AddScenario`})},GetMyScenarios(t){let n=[],r=`api/my-scenarios`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetMyScenarios`})},GetScenariosCatalog(t){let n=[],r=`api/catalog`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetScenariosCatalog`})},GetFullScenario(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}/full`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetFullScenario`})},GetScenario(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetScenario`})},UpdateScenario(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`PUT`,body:r},{service:`EveningDetectiveServer`,method:`UpdateScenario`})},PublicScenario(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}/public`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`PUT`,body:r},{service:`EveningDetectiveServer`,method:`PublicScenario`})},DraftScenario(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}/draft`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`PUT`,body:r},{service:`EveningDetectiveServer`,method:`DraftScenario`})},DeleteScenario(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`DELETE`,body:null},{service:`EveningDetectiveServer`,method:`DeleteScenario`})},AddScenarioPlace(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/scenarios/${t.id}/places`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`POST`,body:r},{service:`EveningDetectiveServer`,method:`AddScenarioPlace`})},UpdateScenarioPlace(t){if(!t.id)throw Error(`missing required field request.id`);if(!t.code)throw Error(`missing required field request.code`);let n=`api/scenarios/${t.id}/places/${t.code}`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`PUT`,body:r},{service:`EveningDetectiveServer`,method:`UpdateScenarioPlace`})},DeleteScenarioPlace(t){if(!t.id)throw Error(`missing required field request.id`);if(!t.code)throw Error(`missing required field request.code`);let n=`api/scenarios/${t.id}/places/${t.code}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`DELETE`,body:null},{service:`EveningDetectiveServer`,method:`DeleteScenarioPlace`})},AddGame(t){let n=JSON.stringify(t),r=[],i=`api/games`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`AddGame`})},GetGames(t){let n=[],r=`api/games`;return n.length>0&&(r+=`?${n.join(`&`)}`),e({path:r,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetGames`})},GetGame(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/games/${t.id}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetGame`})},UpdateGame(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/games/${t.id}`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`PUT`,body:r},{service:`EveningDetectiveServer`,method:`UpdateGame`})},DeleteGame(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/games/${t.id}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`DELETE`,body:null},{service:`EveningDetectiveServer`,method:`DeleteGame`})},AddTeam(t){let n=JSON.stringify(t),r=[],i=`api/teams`;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`POST`,body:n},{service:`EveningDetectiveServer`,method:`AddTeam`})},UpdateTeam(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/teams/${t.id}`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`PUT`,body:r},{service:`EveningDetectiveServer`,method:`UpdateTeam`})},DeleteTeam(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/teams/${t.id}`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`DELETE`,body:null},{service:`EveningDetectiveServer`,method:`DeleteTeam`})},GiveTeamApplications(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/teams/${t.id}/applications`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`POST`,body:r},{service:`EveningDetectiveServer`,method:`GiveTeamApplications`})},GetTeamStory(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/teams/${t.id}/story`,r=[];t.password&&r.push(`password=${encodeURIComponent(t.password.toString())}`);let i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`GET`,body:null},{service:`EveningDetectiveServer`,method:`GetTeamStory`})},AddTeamAction(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/teams/${t.id}/actions`,r=JSON.stringify(t),i=[],a=n;return i.length>0&&(a+=`?${i.join(`&`)}`),e({path:a,method:`POST`,body:r},{service:`EveningDetectiveServer`,method:`AddTeamAction`})},DeleteLastTeamAction(t){if(!t.id)throw Error(`missing required field request.id`);let n=`api/teams/${t.id}/last-actions`,r=[],i=n;return r.length>0&&(i+=`?${r.join(`&`)}`),e({path:i,method:`DELETE`,body:null},{service:`EveningDetectiveServer`,method:`DeleteLastTeamAction`})}}}function NM(e){return MM(PM(e))}function PM(e){return async t=>{let n=`${FM()}/${t.path}`,r={"Content-Type":`application/json`},i=e?.();i&&(r.Authorization=`Bearer ${i}`);let a=await fetch(n,{method:t.method,headers:r,body:t.body});if(a.status==401)throw Error(`unauthorized`);return await a.json()}}function FM(){return`https://evening-detective.crabs-games.art`}var IM=dc(`auth`,()=>{let e=k(null),t=k(null),n=k(null),r=k(!1),i=k(null),a=V(()=>!!e.value),o=V(()=>n.value?.username||``),s=V(()=>n.value?.roles||[]);function c(){let n=localStorage.getItem(`accessToken`),r=localStorage.getItem(`refreshToken`);n&&(e.value=n,t.value=r,u())}function l(){return e.value}async function u(){if(e.value)try{let e=await NM(l).GetMe({});if(e.error){i.value=e.error;return}e.user&&(n.value=e.user)}catch(e){console.error(`Failed to fetch user:`,e),e instanceof Error&&e.message.includes(`401`)&&await h()}}async function d(n,a){r.value=!0,i.value=null;try{let r=await NM(l).Login({email:n,password:a});return r.error?(i.value=r.error,!1):r.accessToken?(e.value=r.accessToken,t.value=r.refreshToken||null,localStorage.setItem(`accessToken`,r.accessToken),r.refreshToken&&localStorage.setItem(`refreshToken`,r.refreshToken),await u(),!0):!1}catch(e){return i.value=e instanceof Error?e.message:`Login failed`,!1}finally{r.value=!1}}async function f(){if(!t.value)return!1;try{let n=await NM(l).Refresh({refreshToken:t.value});return n.error||!n.accessToken?!1:(e.value=n.accessToken,t.value=n.refreshToken||null,localStorage.setItem(`accessToken`,n.accessToken),n.refreshToken&&localStorage.setItem(`refreshToken`,n.refreshToken),!0)}catch{return!1}}async function p(e,t){r.value=!0,i.value=null;try{let n=await NM(l).Signup({username:e,email:t});return n.error?(i.value=n.error,!1):!0}catch(e){return i.value=e instanceof Error?e.message:`Signup failed`,!1}finally{r.value=!1}}async function m(e){r.value=!0,i.value=null;try{let t=await NM(l).RefreshPassword({email:e});return t.error?(i.value=t.error,!1):!0}catch(e){return i.value=e instanceof Error?e.message:`Password reset failed`,!1}finally{r.value=!1}}async function h(){e.value=null,t.value=null,n.value=null,i.value=null,localStorage.removeItem(`accessToken`),localStorage.removeItem(`refreshToken`)}function g(e){return s.value.includes(e)}function _(e){return e.some(e=>s.value.includes(e))}return{accessToken:e,refreshToken:t,user:n,isLoading:r,error:i,isAuthenticated:a,username:o,userRoles:s,initFromStorage:c,getToken:l,login:d,signup:p,refreshPassword:m,logout:h,fetchUser:u,refreshTokenAction:f,hasRole:g,hasAnyRole:_}});function LM(){let e=IM();return RM(e.refreshTokenAction,e.getToken)}function RM(e,t){return MM(zM(e,PM(t)))}function zM(e,t){return async n=>{try{return await t(n)}catch{return await e(),await t(n)}}}var BM={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 24 24`},VM=P({name:`ContactMailRound`,render:function(e,t){return I(),L(`svg`,BM,t[0]||=[R(`path`,{d:`M21 8V7l-3 2l-3-2v1l2.72 1.82a.5.5 0 0 0 .55 0L21 8zm1-5H2C.9 3 0 3.9 0 5v14c0 1.1.9 2 2 2h20c1.1 0 1.99-.9 1.99-2L24 5c0-1.1-.9-2-2-2zM8 6c1.66 0 3 1.34 3 3s-1.34 3-3 3s-3-1.34-3-3s1.34-3 3-3zm6 12H2v-1c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1zm7.5-6h-7c-.28 0-.5-.22-.5-.5v-5c0-.28.22-.5.5-.5h7c.28 0 .5.22.5.5v5c0 .28-.22.5-.5.5z`,fill:`currentColor`},null,-1)])}}),HM={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 24 24`},UM=P({name:`LockOutlined`,render:function(e,t){return I(),L(`svg`,HM,t[0]||=[R(`path`,{d:`M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6zm9 14H6V10h12v10zm-6-3c1.1 0 2-.9 2-2s-.9-2-2-2s-2 .9-2 2s.9 2 2 2z`,fill:`currentColor`},null,-1)])}}),WM={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 24 24`},GM=P({name:`MenuOutlined`,render:function(e,t){return I(),L(`svg`,WM,t[0]||=[R(`path`,{d:`M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z`,fill:`currentColor`},null,-1)])}});function KM(e){let t=0;for(let n=0;n{let r=KM(t);if(!r){e.forEach(e=>{n.push((e&&e+` `)+t)});return}else if(r===1){e.forEach(e=>{n.push(t.replace(`&`,e))});return}let i=[t];for(;r--;){let t=[];i.forEach(n=>{e.forEach(e=>{t.push(n.replace(`&`,e))})}),i=t}i.forEach(e=>n.push(e))}),n}function XM(e,t){let n=[];return t.split(qM).forEach(t=>{e.forEach(e=>{n.push((e&&e+` `)+t)})}),n}function ZM(e){let t=[``];return e.forEach(e=>{e&&=e.trim(),e&&(t=e.includes(`&`)?YM(t,e):XM(t,e))}),t.join(`, `).replace(JM,` `)}var QM=/[A-Z]/g;function $M(e){return e.replace(QM,e=>`-`+e.toLowerCase())}function eN(e,t=` `){return typeof e==`object`&&e?` { +`+Object.entries(e).map(e=>t+` ${$M(e[0])}: ${e[1]};`).join(` `)+` -`+t+`}`:`: ${e};`}function KM(e,t,n){return typeof e==`function`?e({context:t.context,props:n}):e}function qM(e,t,n,r){if(!t)return``;let i=KM(t,n,r);if(!i)return``;if(typeof i==`string`)return`${e} {\n${i}\n}`;let a=Object.keys(i);if(a.length===0)return n.config.keepEmptyBlock?e+` { +`+t+`}`:`: ${e};`}function tN(e,t,n){return typeof e==`function`?e({context:t.context,props:n}):e}function nN(e,t,n,r){if(!t)return``;let i=tN(t,n,r);if(!i)return``;if(typeof i==`string`)return`${e} {\n${i}\n}`;let a=Object.keys(i);if(a.length===0)return n.config.keepEmptyBlock?e+` { }`:``;let o=e?[e+` {`]:[];return a.forEach(e=>{let t=i[e];if(e===`raw`){o.push(` `+t+` -`);return}e=WM(e),t!=null&&o.push(` ${e}${GM(t)}`)}),e&&o.push(`}`),o.join(` -`)}function JM(e,t,n){e&&e.forEach(e=>{if(Array.isArray(e))JM(e,t,n);else if(typeof e==`function`){let r=e(t);Array.isArray(r)?JM(r,t,n):r&&n(r)}else e&&n(e)})}function YM(e,t,n,r,i,a){let o=e.$;!o||typeof o==`string`?t.push(o):typeof o==`function`?t.push(o({context:r.context,props:i})):(o.before&&o.before(r.context),!o.$||typeof o.$==`string`?t.push(o.$):o.$&&t.push(o.$({context:r.context,props:i})));let s=HM(t),c=qM(s,e.props,r,i);a&&c&&a.insertRule(c),!a&&c.length&&n.push(c),e.children&&JM(e.children,{context:r.context,props:i},e=>{if(typeof e==`string`){let t=qM(s,{raw:e},r,i);a?a.insertRule(t):n.push(t)}else YM(e,t,n,r,i,a)}),t.pop(),o&&o.after&&o.after(r.context)}function XM(e,t,n,r=!1){let i=[];return YM(e,[],i,t,n,r?e.instance.__styleSheet:void 0),r?``:i.join(` +`);return}e=$M(e),t!=null&&o.push(` ${e}${eN(t)}`)}),e&&o.push(`}`),o.join(` +`)}function rN(e,t,n){e&&e.forEach(e=>{if(Array.isArray(e))rN(e,t,n);else if(typeof e==`function`){let r=e(t);Array.isArray(r)?rN(r,t,n):r&&n(r)}else e&&n(e)})}function iN(e,t,n,r,i,a){let o=e.$;!o||typeof o==`string`?t.push(o):typeof o==`function`?t.push(o({context:r.context,props:i})):(o.before&&o.before(r.context),!o.$||typeof o.$==`string`?t.push(o.$):o.$&&t.push(o.$({context:r.context,props:i})));let s=ZM(t),c=nN(s,e.props,r,i);a&&c&&a.insertRule(c),!a&&c.length&&n.push(c),e.children&&rN(e.children,{context:r.context,props:i},e=>{if(typeof e==`string`){let t=nN(s,{raw:e},r,i);a?a.insertRule(t):n.push(t)}else iN(e,t,n,r,i,a)}),t.pop(),o&&o.after&&o.after(r.context)}function aN(e,t,n,r=!1){let i=[];return iN(e,[],i,t,n,r?e.instance.__styleSheet:void 0),r?``:i.join(` -`)}function ZM(e){if(!e)return;let t=e.parentElement;t&&t.removeChild(e)}function QM(e){return document.querySelector(`style[cssr-id="${e}"]`)}function $M(e){let t=document.createElement(`style`);return t.setAttribute(`cssr-id`,e),t}window&&(window.__cssrContext={});function eN(e){let t=e.getAttribute(`mount-count`);return t===null?null:Number(t)}function tN(e,t){e.setAttribute(`mount-count`,String(t))}function nN(e,t,n,r){let{els:i}=t;if(n===void 0)i.forEach(ZM),t.els=[];else{let e=QM(n);if(e&&i.includes(e)){let a=eN(e);r?a===null?console.error(`[css-render/unmount]: The style with target='${n}' is mounted in count mode.`):a<=1?(ZM(e),t.els=i.filter(t=>t!==e)):tN(e,a-1):a===null?(ZM(e),t.els=i.filter(t=>t!==e)):console.error(`[css-render/unmount]: The style with target='${n}' is mounted in no-count mode.`)}}}function rN(e,t){e.push(t)}function iN(e,t,n,r,i,a,o,s,c){if(o&&!c){if(n===void 0){console.error("[css-render/mount]: `id` is required in `boost` mode.");return}let i=window.__cssrContext;i[n]||(i[n]=!0,XM(t,e,r,o));return}let l,{els:u}=t,d;if(n===void 0&&(d=t.render(r),n=jc(d)),c){c(n,d??t.render(r));return}let f=QM(n);if(s||f===null){if(l=f===null?$M(n):f,d===void 0&&(d=t.render(r)),l.textContent=d,f!==null)return;if(i){let e=document.head.getElementsByTagName(`style`)[0]||null;document.head.insertBefore(l,e)}else document.head.appendChild(l);a&&tN(l,1),rN(u,l)}else{let e=eN(f);a?e===null?console.error(`[css-render/mount]: The style with id='${n}' has been mounted in no-count mode.`):tN(f,e+1):e!==null&&console.error(`[css-render/mount]: The style with id='${n}' has been mounted in count mode.`)}return f??l}function aN(e){return XM(this,this.instance,e)}function oN(e={}){let{target:t,id:n,ssr:r,props:i,count:a=!1,head:o=!1,boost:s=!1,force:c=!1}=e;return iN(this.instance,this,n??t,i,o,a,s,c,r)}function sN(e={}){let{id:t,target:n,delay:r=0,count:i=!1}=e;r===0?nN(this.instance,this,t??n,i):setTimeout(()=>nN(this.instance,this,t??n,i),r)}var cN=function(e,t,n,r){return{instance:e,$:t,props:n,children:r,els:[],render:aN,mount:oN,unmount:sN}},lN=function(e,t,n,r){return Array.isArray(t)?cN(e,{$:null},null,t):Array.isArray(n)?cN(e,t,null,n):Array.isArray(r)?cN(e,t,n,r):cN(e,t,n,null)};function uN(e={}){let t=null,n={c:((...e)=>lN(n,...e)),use:(e,...t)=>e.install(n,...t),find:QM,context:{},config:e,get __styleSheet(){if(!t){let e=document.createElement(`style`);return document.head.appendChild(e),t=document.styleSheets[document.styleSheets.length-1],t}return t}};return n}var{c:dN}=uN(),fN=dN(`.xicon`,{width:`1em`,height:`1em`,display:`inline-flex`},[dN(`svg`,{width:`1em`,height:`1em`}),dN(`svg:not([fill])`,{fill:`currentColor`})]),pN=()=>{fN.mount({id:`xicons-icon`})},mN={size:[String,Number],color:String,tag:String},hN=Symbol(`IconConfigInjection`),gN=`span`,_N=P({name:`Icon`,props:mN,setup(e,{slots:t}){let n=N(hN,null),r=V(()=>{let t=e.size??n?.size;if(t!==void 0)return typeof t==`number`||/^\d+$/.test(t)?`${t}px`:t}),i=V(()=>{let{color:t}=e;return t===void 0?n?n.color:void 0:t}),a=V(()=>{let{tag:t}=e;return t===void 0?n?.tag??gN:t});return Br(()=>{pN()}),()=>H(a.value,{class:`xicon`,style:{color:i.value,fontSize:r.value}},[Qr(t,`default`)])}}),vN={class:`menu-block`},yN={class:`right-group`},bN=P({__name:`HeaderMenu`,props:{active:{type:String,required:!1}},setup(e){let t=e,n=DM();n.initFromStorage();let r=RA(),i=OM(),a=k([]);async function o(){a.value=[];let e=await i.GetPermissions({});a.value=e.permissions}o();function s(e){return a.value.includes(e)}let c=()=>{r.push(`/login`)},l=()=>{n.logout(),r.push(`/login`)},u=k(!1);return(e,i)=>(I(),L(`div`,vN,[R(`div`,{onClick:i[0]||=e=>u.value=!u.value,class:`burger-button`},[z(A(_N),{class:`burger-icon`,size:`28`},{default:M(()=>[z(A(IM))]),_:1})]),R(`div`,{class:_e([`left-group menu-buttons-block`,u.value?``:`menu-buttons-block-active`])},[R(`div`,{class:_e([`menu-item-block`,{active:t.active==`main`}]),onClick:i[1]||=e=>A(r).push(`/`)},` Главная `,2),A(n).hasRole(`user`)?(I(),L(`div`,{key:0,class:_e([`menu-item-block`,{active:t.active==`office`}]),onClick:i[2]||=e=>A(r).push(`/office`)},` Кабинет `,2)):Aa(``,!0),s(`games_page`)?(I(),L(`div`,{key:1,class:_e([`menu-item-block`,{active:t.active==`games`}]),onClick:i[3]||=e=>A(r).push(`/games`)},` Игры `,2)):Aa(``,!0),R(`div`,{class:_e([`menu-item-block`,{active:t.active==`catalog`}]),onClick:i[4]||=e=>A(r).push(`/catalog`)},` Каталог `,2),s(`scenarios_page`)?(I(),L(`div`,{key:2,class:_e([`menu-item-block`,{active:t.active==`scenarios`}]),onClick:i[5]||=e=>A(r).push(`/scenarios`)},` Мои сценарии `,2)):Aa(``,!0),s(`users_page`)?(I(),L(`div`,{key:3,class:_e([`menu-item-block`,{active:t.active==`users`}]),onClick:i[6]||=e=>A(r).push(`/users`)},` Пользователи `,2)):Aa(``,!0)],2),R(`div`,yN,[A(n).isAuthenticated?Aa(``,!0):(I(),L(`div`,{key:0,class:`menu-item-block right`,onClick:c},` Войти `)),A(n).isAuthenticated?(I(),L(`div`,{key:1,class:`menu-item-block right`,onClick:l},`Выйти`)):Aa(``,!0)])]))}}),xN=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},SN=xN(bN,[[`__scopeId`,`data-v-5e423637`]]),CN={class:`center-block-custom`},wN={class:`width1200`},TN=[`onClick`],EN={class:`game-title`},DN={class:`game-description`},ON=xN(P({__name:`GamesPage`,setup(e){let t=OM(),n=$E(),r=RA(),i=k([]);async function a(){i.value=[];let e=await t.GetGames({});if(e.error!=``){n.error(e.error);return}i.value=e.games||[]}a();async function o(e){r.push(`/games/`+e)}return(e,t)=>(I(),L(F,null,[R(`div`,CN,[R(`div`,wN,[(I(!0),L(F,null,Zr(i.value,e=>(I(),L(`div`,{class:`game-block`,onClick:t=>o(e.id)},[R(`div`,EN,O(e.name),1),R(`div`,DN,O(e.description),1)],8,TN))),256))])]),z(SN,{active:`games`})],64))}}),[[`__scopeId`,`data-v-c7afa62c`]]),kN=P({__name:`GamesView`,setup(e){return(e,t)=>(I(),Sa(ON))}}),AN=P({__name:`HomeView`,setup(e){return(e,t)=>(I(),L(F,null,[t[0]||=R(`div`,{class:`center-block-custom content-block center-middle-block-custom height80`},[R(`div`,null,[R(`h1`,{class:`font-text`},`Вечерний детектив`),R(`h3`,{class:`font-text`},`Дело №0`),R(`p`,{class:`content-text`},` Поиграем? `)])],-1),z(SN,{active:`main`})],64))}}),jN={class:`center-block-custom content-block center-middle-block-custom height80`},MN={class:`form-button-wrapper`},NN={class:`form-label`},PN={key:0},FN={key:1},IN={class:`form-label`},LN={class:`form-button-wrapper`},RN={class:`form-label`},zN={key:0},BN={key:1},VN={class:`form-button-wrapper`},HN={class:`form-label`},UN={key:0},WN={key:1},GN=xN(P({__name:`LoginPage`,setup(e){let t=DM(),n=RA(),r=$E(),i=k(``),a=k(``),o=k(``),s=k(!1),c=V(()=>[`@mail.ru`,`@yandex.ru`,`@gmail.com`].map(e=>{let t=a.value.split(`@`)[0];return{label:t+e,value:t+e}}));async function l(){if(!await t.login(a.value,o.value)&&t.error!=null){r.error(t.error);return}n.push(`/office`)}async function u(){if(s.value){if(!await t.signup(i.value,a.value)&&t.error!=null){r.error(t.error);return}r.info(`Пароль отправлен на почту`)}}async function d(){if(!await t.refreshPassword(a.value)&&t.error!=null){r.error(t.error);return}r.info(`Пароль отправлен на почту`)}return(e,n)=>(I(),L(`div`,jN,[z(A(bT),{style:{"margin-bottom":`16px`},class:`sign-card`},{default:M(()=>[z(A(Ik),{type:`line`,animated:``},{default:M(()=>[z(A(Mk),{name:`signin`,tab:`Вход`},{default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[n[6]||=R(`div`,{class:`form-label`},`Почта`,-1),z(A(jw),{value:a.value,"onUpdate:value":n[0]||=e=>a.value=e,"input-props":{autocomplete:`disabled`},options:c.value,placeholder:`detective@mail.ru`,clearable:``},null,8,[`value`,`options`]),n[7]||=R(`div`,{class:`form-label`},`Пароль`,-1),z(A(yw),{value:o.value,"onUpdate:value":n[1]||=e=>o.value=e,type:`password`,placeholder:`********`},null,8,[`value`]),R(`div`,MN,[R(`div`,NN,[z(A(nT),{onClick:l,disabled:a.value.length==0||o.value.length==0},{default:M(()=>[A(t).isLoading?(I(),L(`span`,FN,` Подождите... `)):(I(),L(`span`,PN,` Вход `))]),_:1},8,[`disabled`])])])]),_:1})]),_:1}),z(A(Mk),{name:`signup`,tab:`Регистрация`},{default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[n[9]||=R(`div`,{class:`form-label`},`Позывной`,-1),z(A(yw),{value:i.value,"onUpdate:value":n[2]||=e=>i.value=e,type:`text`,placeholder:`Шерлок`},null,8,[`value`]),n[10]||=R(`div`,{class:`form-label`},`Почта`,-1),z(A(jw),{value:a.value,"onUpdate:value":n[3]||=e=>a.value=e,"input-props":{autocomplete:`disabled`},options:c.value,placeholder:`detective@mail.ru`,clearable:``},null,8,[`value`,`options`]),R(`div`,IN,[z(A(NT),{checked:s.value,"onUpdate:checked":n[4]||=e=>s.value=e},{default:M(()=>[...n[8]||=[B(` Я согласен с `,-1),R(`a`,{href:`/user-agreement`,target:`_blank`,class:`docs-link`},`пользовательским соглашением`,-1),R(`br`,null,null,-1),B(` и `,-1),R(`a`,{href:`/privacy-policy`,target:`_blank`,class:`docs-link`},`соглашением о персональных данных`,-1)]]),_:1},8,[`checked`])]),R(`div`,LN,[R(`div`,RN,[z(A(nT),{onClick:u,disabled:i.value.length==0||o.value.length==0||!s.value},{default:M(()=>[A(t).isLoading?(I(),L(`span`,BN,` Подождите... `)):(I(),L(`span`,zN,` Регистрация `))]),_:1},8,[`disabled`])])])]),_:1})]),_:1}),z(A(Mk),{name:`new-password`,tab:`Новый пароль`},{default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[n[11]||=R(`div`,{class:`form-label`},`Почта`,-1),z(A(jw),{value:a.value,"onUpdate:value":n[5]||=e=>a.value=e,"input-props":{autocomplete:`disabled`},options:c.value,placeholder:`detective@mail.ru`,clearable:``},null,8,[`value`,`options`]),R(`div`,VN,[R(`div`,HN,[z(A(nT),{onClick:d,disabled:a.value.length==0},{default:M(()=>[A(t).isLoading?(I(),L(`span`,WN,` Подождите... `)):(I(),L(`span`,UN,` Прислать новый пароль `))]),_:1},8,[`disabled`])])])]),_:1})]),_:1})]),_:1})]),_:1})]))}}),[[`__scopeId`,`data-v-c1fd645b`]]),KN=P({__name:`LoginView`,setup(e){return(e,t)=>(I(),L(F,null,[z(GN),z(SN)],64))}}),qN={class:`center-block-custom`},JN={class:`width700`},YN=P({__name:`OfficePage`,setup(e){let t=DM(),n=OM(),r=k([]);async function i(){r.value=[];let e=await n.GetPermissions({});r.value=e.permissions}i();function a(){let e=new Date,t=e.getDay(),n=e.getDate(),r=e.getMonth()+1,i=t===1,a=t===5&&n===13,o=r===1&&n===1||r===12&&n===31,s=r>=6&&r<=8,c=r===12||r<=2,l=n%5==0,u=[`Всегда носи с собой запасную ручку — признания любят записывать в самый неподходящий момент.`,`Если подозреваемый слишком вежлив, он либо дипломат, либо прячет труп в гараже.`,`Кофе в участке — это не напиток, это яд для улик. Пей только свой.`,`Следы на месте преступления всегда ведут к тому, кто забыл закрыть дверь.`,`Лучший способ разговорить молчуна — предложить ему чай с тремя ложками сахара.`,`Если всё указывает на дворецкого, ищи того, кто нанимал дворецкого.`,`Записывай каждую мелочь. Особенно цвет носков убитого.`,`Не верь алиби, которое начинается со слов 'Я бы никогда...'`,`Преступник всегда возвращается на место преступления. Или за забытым телефоном.`,`Ищи того, кому есть что терять, кроме своего времени.`,`Если женщина плачет в кабинете — дай ей платок. Если мужчина — дай ему стакан воды.`,`Самое опасное оружие — не пистолет, а бухгалтерская книга.`,`Собака всегда знает убийцу. Но она не говорит, потому что у неё контракт.`,`Проверяй чеки, билеты и смс. Ложь не терпит документации.`,`Если у тела нет врагов — ты плохо искал врагов.`,`Лупа нужна не для увеличения улик, а для того, чтобы выглядеть умнее.`,`Интуиция — это когда ты уже знаешь ответ, но хочешь убедиться, что не ошибся.`,`Подозревай всех, даже самого себя. Иногда преступник — это ты в прошлом.`,`Хороший детектив видит улики. Великий — видит их отсутствие.`,`Никогда не допрашивай свидетеля на голодный желудок. И себя тоже.`,`Если дело зашло в тупик, переверни бумаги вверх ногами.`,`Самый ценный свидетель — это камера наблюдения, у которой сломана защита.`,`Не ищи мотив. Ищи возможность.`,`Преступник не оставляет следов. Он оставляет выбор.`,`Если дверь была закрыта изнутри — ищи люк, который открывается снаружи.`,`Лучший детектив — тот, кого не замечают в толпе.`,`Учись читать по губам. Пригодится на допросах с адвокатом.`,`Запах духов на месте преступления важнее запаха пороха.`,`Если ты нашел отпечаток пальца — проверь, не твой ли он.`,`Раскрыть дело — это искусство. Не раскрыть — тоже искусство, но другое.`,`Никогда не спорь с баллистикой. Она всегда права, даже если ты не согласен.`,`В каждом деле есть одна странная деталь. Найди её — и пазл сложится.`,`Если преступник умный — он оставит ложный след. Если глупый — он оставит следы в соцсетях.`,`Лучший друг детектива — тишина. Второй друг — кофе.`,`Если свидетель говорит слишком много, он врет. Если молчит — он тоже врет.`,`Преступление редко бывает идеальным. Идеальным бывает только алиби жены.`,`Всегда смотри на часы на трупе. Возможно, они показывают время, когда он перестал верить в людей.`,`Воры любят темноту. Детективы — свет. А маньяки — полную луну.`,`Если ты поймал преступника, не радуйся раньше времени — может, он просто лжец.`,`В каждом городе есть одно место, где собираются все сплетники. Начни оттуда.`,`Не верь в совпадения. Но верь в удачу.`,`Если у тебя нет улик — придумай их. Но только мысленно, чтобы знать, где искать.`,`Жертва всегда знала убийцу. Даже если она не знала, что знает.`,`Проверяй алиби на разрыв. Если оно выдерживает — ты ошибся.`,`Самый страшный враг детектива — не маньяк, а его собственная лень.`,`Если преступник оставил записку — прочитай её. И сожги, чтобы никто не узнал твой почерк.`,`Всегда носи с собой фонарик. Даже днём. Для эффекта.`,`В деле важно всё: от укуса комара до размера обуви.`,`Если ты думаешь, что дело простое — значит, ты не додумал.`,`Убийца всегда ищет внимания. Или наоборот, избегает его.`,`Стук в дверь в полночь — это либо полиция, либо заказчик.`,`Никогда не давай обещаний родственникам жертвы. Только факты.`,`Если у тебя есть три версии — выбирай четвёртую.`,`Лучшее оружие — это бумага. На ней можно написать что угодно.`,`Когда ты смотришь на улику, смотри на неё глазами преступника.`,`Все любят детективы, пока не становятся подозреваемыми.`,`Следы крови важны. Но важнее — следы лжи.`,`Если ты не спишь третьи сутки, значит, ты либо гений, либо дурак.`,`Проверяй каждого, кто говорит 'Я ничего не видел'.`,`В каждом деле есть один человек, который знает всё. И он не говорит.`,`Не суди преступника по одежде. Суди по тому, как он её снимал.`,`Дыра в алиби — это как дыра в лодке. Рано или поздно она утонет.`,`Если преступник использует перчатки — он профессионал. Если нет — он любитель.`,`Запомни: первая версия — всегда неверная.`,`Если у тебя кончились идеи, иди в бар. Там всегда есть кто-то, кто расскажет тебе дело.`,`Свидетель с фотороботом — это как слепой с компасом.`,`Никогда не смейся над уликами. Они могут обидеться и исчезнуть.`,`Если ты нашёл оружие — не трогай его. Иначе твои отпечатки будут на нём.`,`Преступник умён, но ты умнее. Потому что ты пьёшь правильный кофе.`,`Всегда пересматривай видеозаписи. Особенно в два раза медленнее.`,`Если на месте преступления есть кот — он видел всё. Но он не скажет.`,`Лучший способ поймать преступника — пригласить его на обед.`,`Если подозреваемый улыбается, он либо невиновен, либо психопат.`,`Проверяй мусор. В нём всегда есть что-то полезное.`,`Никогда не доверяй красивым историям. Только уродливым фактам.`,`Если ты нашёл улику слишком легко — это ловушка.`,`Убийца всегда оставляет послание. Даже если это просто тишина.`,`Если ты запнулся на допросе — делай вид, что так и задумано.`,`Помни: все врут. Даже я тебе советую.`,`Если ты боишься темноты — стань детективом. Страх пройдёт.`,`Самые лучшие признания случаются под утро, когда все устали.`,`Если преступник использовал компьютер, значит, он либо хакер, либо дурак.`,`Следы шин — это как подпись на дороге.`,`Никогда не забывай про запах. Он помнит дольше, чем люди.`,`Если ты не знаешь, что делать — съешь шоколадку.`,`В каждом деле есть одна минута слабости. Найди её.`,`Преступник всегда нервничает. Даже если он не нервничает.`,`Если у тебя есть подозреваемый и нет улик — подожди. Улики появятся.`,`Не верь в чудеса. Верь в логику.`,`Если ты устал — возьми отпуск. Преступление никуда не денется.`,`Запомни: самый опасный преступник — тот, кто читал детективы.`,`Если ты думаешь, что всё кончено — значит, ты пропустил поворот.`,`Следы на полу важнее следов в душе.`,`Если преступник оставил окурок — он курил. Или хотел, чтобы ты так думал.`,`Хороший детектив всегда голоден. Это помогает мыслить.`,`Не суди по первому впечатлению. Суди по второму, когда увидишь его в наручниках.`,`Если у тебя есть тайный агент — не доверяй ему.`,`В деле всегда есть тот, кто знает больше, чем говорит.`,`Если ты не можешь найти убийцу — стань им (в мыслях).`,`И последнее: всегда проверяй, закрыл ли ты дверь участка.`],d=[];i&&d.push(`☕ Понедельник: Сегодня даже преступники не хотят работать. Проверь тех, кто был слишком бодр.`),a&&d.push(`🔮 Пятница 13-е: Если улики ведут к чёрной кошке, ищи чёрного кота с алиби.`),o&&d.push(`🎄 Новый год: Свидетель в костюме Деда Мороза врёт. Настоящий Дед Мороз всегда в отпуске.`),s&&d.push(`☀️ Лето: В жару преступники забывают улики в карманах, потому что снимают пиджаки.`),c&&d.push(`❄️ Зима: Следы на снегу ведут к тому, у кого самые холодные руки.`),l&&d.push(`🌕 Полнолуние: Если подозреваемый воет на луну, он либо оборотень, либо фанат рока.`);let f=u.concat(d),p=f[Math.floor(Math.random()*f.length)],m=[`🔍 Заметки сыщика:`,`📓 Из дневника инспектора:`,`🕵️ Мудрость Шерлока:`,`🧠 Гениально и просто:`,`📌 Правило большого пальца:`,`☕ Кофейная истина:`];return{header:m[Math.floor(Math.random()*m.length)],text:p}}let o=a();return(e,n)=>(I(),L(F,null,[R(`div`,qN,[R(`div`,JN,[z(A(tw),{title:A(o).header,"show-icon":!1,type:`info`,style:{"margin-bottom":`20px`}},{default:M(()=>[B(O(A(o).text),1)]),_:1},8,[`title`]),R(`p`,null,`Доброго времени суток, `+O(A(t).username)+`.`,1)])]),z(SN,{active:`office`})],64))}}),XN=P({__name:`OfficeView`,setup(e){return(e,t)=>(I(),Sa(YN))}}),ZN={};function QN(e,t){return`Соглашением о персональных данных`}var $N=xN(ZN,[[`render`,QN]]),eP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},tP=P({name:`Settings`,render:function(e,t){return I(),L(`svg`,eP,t[0]||=[R(`path`,{d:`M27 16.76V16v-.77l1.92-1.68A2 2 0 0 0 29.3 11l-2.36-4a2 2 0 0 0-1.73-1a2 2 0 0 0-.64.1l-2.43.82a11.35 11.35 0 0 0-1.31-.75l-.51-2.52a2 2 0 0 0-2-1.61h-4.68a2 2 0 0 0-2 1.61l-.51 2.52a11.48 11.48 0 0 0-1.32.75l-2.38-.86A2 2 0 0 0 6.79 6a2 2 0 0 0-1.73 1L2.7 11a2 2 0 0 0 .41 2.51L5 15.24v1.53l-1.89 1.68A2 2 0 0 0 2.7 21l2.36 4a2 2 0 0 0 1.73 1a2 2 0 0 0 .64-.1l2.43-.82a11.35 11.35 0 0 0 1.31.75l.51 2.52a2 2 0 0 0 2 1.61h4.72a2 2 0 0 0 2-1.61l.51-2.52a11.48 11.48 0 0 0 1.32-.75l2.42.82a2 2 0 0 0 .64.1a2 2 0 0 0 1.73-1l2.28-4a2 2 0 0 0-.41-2.51zM25.21 24l-3.43-1.16a8.86 8.86 0 0 1-2.71 1.57L18.36 28h-4.72l-.71-3.55a9.36 9.36 0 0 1-2.7-1.57L6.79 24l-2.36-4l2.72-2.4a8.9 8.9 0 0 1 0-3.13L4.43 12l2.36-4l3.43 1.16a8.86 8.86 0 0 1 2.71-1.57L13.64 4h4.72l.71 3.55a9.36 9.36 0 0 1 2.7 1.57L25.21 8l2.36 4l-2.72 2.4a8.9 8.9 0 0 1 0 3.13L27.57 20z`,fill:`currentColor`},null,-1),R(`path`,{d:`M16 22a6 6 0 1 1 6-6a5.94 5.94 0 0 1-6 6zm0-10a3.91 3.91 0 0 0-4 4a3.91 3.91 0 0 0 4 4a3.91 3.91 0 0 0 4-4a3.91 3.91 0 0 0-4-4z`,fill:`currentColor`},null,-1)])}}),nP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 24 24`},rP=P({name:`Key24Regular`,render:function(e,t){return I(),L(`svg`,nP,t[0]||=[R(`g`,{fill:`none`},[R(`path`,{d:`M18.25 7a1.25 1.25 0 1 1-2.5 0a1.25 1.25 0 0 1 2.5 0zM15.5 2.05A6.554 6.554 0 0 0 8.95 8.6c0 .387.05.76.11 1.104a.275.275 0 0 1-.07.244l-6.235 6.236a2.75 2.75 0 0 0-.806 1.944V20.3c0 .966.784 1.75 1.75 1.75h2.5a1.75 1.75 0 0 0 1.75-1.75v-1.25H9.7c.69 0 1.25-.56 1.25-1.25v-1.75h1.75a1.25 1.25 0 0 0 1.25-1.204c.496.128 1.02.204 1.55.204a6.554 6.554 0 0 0 6.55-6.55c0-3.631-2.953-6.45-6.55-6.45zM10.45 8.6a5.054 5.054 0 0 1 5.05-5.05c2.802 0 5.05 2.181 5.05 4.95a5.054 5.054 0 0 1-5.05 5.05c-.68 0-1.38-.171-2.005-.44a.75.75 0 0 0-1.046.69v.75H10.7c-.69 0-1.25.56-1.25 1.25v1.75H7.7c-.69 0-1.25.56-1.25 1.25v1.5a.25.25 0 0 1-.25.25H3.7a.25.25 0 0 1-.25-.25v-2.172c0-.331.132-.65.366-.884l6.236-6.235a1.774 1.774 0 0 0 .486-1.564a4.917 4.917 0 0 1-.088-.845z`,fill:`currentColor`})],-1)])}}),iP={class:`main`},aP={class:`message-cloud`},oP=xN(P({__name:`MessagePaper`,setup(e){return(e,t)=>(I(),L(`div`,iP,[t[0]||=R(`div`,{class:`message-cloud-3`},null,-1),t[1]||=R(`div`,{class:`message-cloud-2`},null,-1),R(`div`,aP,[Qr(e.$slots,`default`,{},void 0,!0)])]))}}),[[`__scopeId`,`data-v-dfe3093b`]]),sP={key:1,class:`place-block`},cP={class:`message-header`},lP={class:`message-content`},uP={key:0},dP={class:`message-image-border`},fP=[`src`],pP={class:`key-block`},mP={key:0,class:`hr`},hP={class:`gray-block`},gP={key:0},_P={class:`key-block`},vP={key:3},yP={class:`message-show-header font`},bP={class:`message-show-content font`},xP={key:0},SP={class:`message-image-border`},CP=[`src`],wP={key:0,class:`show-hr`},TP=[`onClick`],EP={class:`button-dialog-text`},DP={key:1,class:`show-hr`},OP={key:4},kP={class:`message-header font`},AP={key:5,class:`place-block`},jP=[`src`],MP={style:{display:`flex`,"align-items":`center`,width:`100%`}},NP={style:{display:`flex`,"flex-direction":`column`}},PP={style:{display:`flex`,"flex-direction":`column`,width:`100%`}},FP={class:`door-add-block`},IP={class:`door-field`},LP={style:{display:`flex`,"align-items":`center`,width:`100%`}},RP={style:{display:`flex`,"align-items":`center`,width:`100%`}},zP={class:`slot-block`},BP=xN(P({__name:`PlaceBlock`,props:{newPlaceCode:{type:String},newPlaceName:{type:String},newPlaceText:{type:String},place:{type:Object},mode:{type:String,required:!0},addAction:{type:Function}},emits:[`update:newPlaceCode`,`update:newPlaceName`,`update:newPlaceText`,`update:mode`],setup(e,{emit:t}){let n=e,r=t,i=e=>{r(`update:newPlaceCode`,e)},a=e=>{r(`update:newPlaceName`,e)},o=e=>{r(`update:newPlaceText`,e)},s=e=>{r(`update:mode`,e)};function c(){return{name:void 0,image:void 0}}function l(){return{code:void 0,name:void 0,keys:void 0}}function u(){return{name:void 0}}return(t,r)=>(I(),L(F,null,[e.mode==`mini-add`?(I(),L(`div`,{key:0,class:`place-block-hover show-editor-block`,onClick:r[0]||=e=>s(`add`)},[...r[14]||=[R(`p`,{class:`place-image-plus`},`+`,-1)]])):Aa(``,!0),e.mode==`add`?(I(),L(`div`,sP,[z(A(CD),{vertical:``},{default:M(()=>[z(A(xw),null,{default:M(()=>[z(A(yw),{style:{width:`20%`},value:e.newPlaceCode,"onUpdate:value":i,type:`text`,placeholder:`Ы-1`},null,8,[`value`]),z(A(yw),{style:{width:`80%`},value:e.newPlaceName,"onUpdate:value":a,type:`text`,placeholder:`Дом №Ы`},null,8,[`value`])]),_:1}),z(A(yw),{value:e.newPlaceText,"onUpdate:value":o,type:`textarea`,autosize:{minRows:3},placeholder:`В начале было слово...`},null,8,[`value`]),Qr(t.$slots,`default`,{},void 0,!0)]),_:3})])):Aa(``,!0),e.mode==`show-editor`?(I(),L(`div`,{key:2,class:`place-block-hover show-editor-block`,onClick:r[1]||=e=>s(`edit`)},[R(`div`,cP,O(n.place?.code)+`: `+O(n.place?.name),1),r[15]||=R(`hr`,{class:`hr`},null,-1),R(`div`,lP,[n.place?.image?(I(),L(`div`,uP,[R(`div`,dP,[R(`img`,{src:n.place?.image,class:`message-image`},null,8,fP)])])):Aa(``,!0),B(` `+O(n.place?.text),1)]),(I(!0),L(F,null,Zr(n.place?.doors,e=>(I(),L(`div`,{key:e.code,class:`door-block`},[B(O(e.name)+` `,1),(I(!0),L(F,null,Zr(e.keys,e=>(I(),L(`span`,pP,[z(A(_N),{class:`lock-icon`},{default:M(()=>[z(A(PM))]),_:1}),B(` `+O(e.name),1)]))),256))]))),128)),n.place?.applications?.length?(I(),L(`hr`,mP)):Aa(``,!0),(I(!0),L(F,null,Zr(n.place?.applications,e=>(I(),L(`div`,{class:`message-footer application-block`,key:e.name},` Приложение: `+O(e.name),1))),128)),R(`p`,hP,[n.place?.hidden?(I(),L(`span`,gP,` Скрытая точка `)):Aa(``,!0),(I(!0),L(F,null,Zr(n.place?.keys,e=>(I(),L(`span`,_P,[z(A(_N),{class:`lock-icon`},{default:M(()=>[z(A(rP))]),_:1}),B(` `+O(e.name),1)]))),256))])])):Aa(``,!0),e.mode==`show`?(I(),L(`div`,vP,[z(oP,null,{default:M(()=>[R(`div`,yP,[B(O(e.place?.code)+`: `+O(e.place?.name)+` `,1),R(`span`,{class:`collapse-icon collapse-icon-up`,onClick:r[2]||=e=>s(`show-collapse`)})]),r[16]||=R(`hr`,{class:`show-hr`},null,-1),R(`div`,bP,[e.place?.image?.length?(I(),L(`div`,xP,[R(`div`,SP,[R(`img`,{src:e.place?.image,class:`message-image`},null,8,CP)])])):Aa(``,!0),B(` `+O(e.place?.text),1)]),n.place?.doors?.length?(I(),L(`hr`,wP)):Aa(``,!0),(I(!0),L(F,null,Zr(n.place?.doors,t=>(I(),L(`div`,{key:t.code,class:`button-dialog font`,onClick:n=>e.addAction(t.code)},[R(`div`,EP,O(t.code)+` `+O(t.name),1)],8,TP))),128)),n.place?.applications?.length?(I(),L(`hr`,DP)):Aa(``,!0),(I(!0),L(F,null,Zr(n.place?.applications,e=>(I(),L(`div`,{class:`message-show-footer font`,key:e.name},` Приложение: `+O(e.name),1))),128))]),_:1})])):Aa(``,!0),e.mode==`show-collapse`?(I(),L(`div`,OP,[z(oP,null,{default:M(()=>[R(`div`,kP,[B(O(e.place?.code)+`: `+O(e.place?.name)+` `,1),R(`span`,{class:`collapse-icon`,onClick:r[3]||=e=>s(`show`)})])]),_:1})])):Aa(``,!0),e.mode==`edit`?(I(),L(`div`,AP,[z(A(CD),{vertical:``},{default:M(()=>[z(A(xw),null,{default:M(()=>[z(A(yw),{style:{width:`20%`},value:n.place.code,"onUpdate:value":r[4]||=e=>n.place.code=e,type:`text`,placeholder:`Ы-1`},null,8,[`value`]),z(A(yw),{style:{width:`80%`},value:n.place.name,"onUpdate:value":r[5]||=e=>n.place.name=e,type:`text`,placeholder:`Дом №Ы`},null,8,[`value`])]),_:1}),z(A(yw),{value:n.place.text,"onUpdate:value":r[6]||=e=>n.place.text=e,type:`textarea`,autosize:{minRows:3},placeholder:`В начале было слово...`},null,8,[`value`]),r[28]||=R(`p`,{class:`settings-header`},`Картинка`,-1),R(`div`,null,[z(A(CD),null,{default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[R(`img`,{src:n.place.image,class:`message-edit-image`},null,8,jP),z(A(nT),{onClick:r[7]||=e=>(n.place.image=``,n.place.fileList=null)},{default:M(()=>[...r[17]||=[B(`Убрать картинку`,-1)]]),_:1})]),_:1}),z(A(CD),{vertical:``},{default:M(()=>[z(A(yw),{value:n.place.image,"onUpdate:value":r[8]||=e=>n.place.image=e,type:`text`,placeholder:`Не задано`,disabled:``},null,8,[`value`]),z(A(bA),{"directory-dnd":``,max:1,"file-list":n.place.fileList,"onUpdate:fileList":r[9]||=e=>n.place.fileList=e},{default:M(()=>[z(A(Gk),null,{default:M(()=>[z(A(Hk),{style:{"font-size":`16px`}},{default:M(()=>[...r[18]||=[B(` Щелкните или перетащите файл в эту область для загрузки `,-1)]]),_:1})]),_:1})]),_:1},8,[`file-list`])]),_:1})]),_:1})]),r[29]||=R(`p`,{class:`settings-header`},`Видимость точки`,-1),z(A(kk),{value:n.place.hidden,"onUpdate:value":r[10]||=e=>n.place.hidden=e},{checked:M(()=>[...r[19]||=[B(` Скрытая точка `,-1)]]),unchecked:M(()=>[...r[20]||=[B(` Обычная точка `,-1)]]),_:1},8,[`value`]),r[30]||=B(` Улики `,-1),z(A(gD),{value:n.place.applications,"onUpdate:value":r[11]||=e=>n.place.applications=e,"on-create":c},{"create-button-default":M(()=>[...r[21]||=[B(` Добавить улику `,-1)]]),default:M(({value:e})=>[R(`div`,MP,[z(A(yw),{value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])])]),_:1},8,[`value`]),r[31]||=B(` Действия `,-1),z(A(gD),{value:n.place.doors,"onUpdate:value":r[12]||=e=>n.place.doors=e,"on-create":l},{"create-button-default":M(()=>[...r[22]||=[B(` Добавить действие `,-1)]]),action:M(({index:e,create:t,remove:n})=>[R(`div`,NP,[z(A(nT),{onClick:()=>t(e),class:`plus-minus-buttons`},{default:M(()=>[...r[23]||=[B(`+`,-1)]]),_:1},8,[`onClick`]),z(A(nT),{disabled:``,onClick:()=>n(e),class:`plus-minus-buttons`},{default:M(()=>[...r[24]||=[B(`-`,-1)]]),_:1},8,[`onClick`])])]),default:M(({value:e})=>[R(`div`,PP,[R(`div`,FP,[z(A(xw),null,{default:M(()=>[z(A(yw),{style:{width:`30%`},value:e.code,"onUpdate:value":t=>e.code=t,type:`text`,placeholder:`Код`},null,8,[`value`,`onUpdate:value`]),z(A(yw),{style:{width:`70%`},value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])]),_:2},1024),r[26]||=R(`p`,{class:`need-keys-text`},`Требуемые ключи`,-1),R(`div`,IP,[z(A(gD),{value:e.keys,"onUpdate:value":t=>e.keys=t,"on-create":u},{"create-button-default":M(()=>[...r[25]||=[B(` Добавить ключ `,-1)]]),default:M(({value:e})=>[R(`div`,LP,[z(A(yw),{value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])])]),_:1},8,[`value`,`onUpdate:value`])])])])]),_:1},8,[`value`]),r[32]||=B(` Получаемые ключи `,-1),z(A(gD),{value:n.place.keys,"onUpdate:value":r[13]||=e=>n.place.keys=e,"on-create":u},{"create-button-default":M(()=>[...r[27]||=[B(` Добавить ключ `,-1)]]),default:M(({value:e})=>[R(`div`,RP,[z(A(yw),{value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])])]),_:1},8,[`value`]),R(`div`,zP,[Qr(t.$slots,`default`,{},void 0,!0)])]),_:3})])):Aa(``,!0)],64))}}),[[`__scopeId`,`data-v-60b29dfb`]]),VP={class:`center-block-custom`},HP={class:`width700`},UP={class:`places-container`},WP={class:`settings-block`},GP=xN(P({__name:`ScenariosEditorPage`,setup(e){let t=DM(),n=OM(),r=zA().params.id,i=k(!1),a=k(``),o=k(``),s=$E(),c=k([]),l=k({id:void 0,name:void 0,story:void 0,author:void 0,status:void 0,updatedAt:void 0,createdAt:void 0,publishedAt:void 0});async function u(e){let t=await n.GetFullScenario({id:e});if(t.error!=``){s.error(t.error);return}l.value=t.scenario,l.value.story?.places?.forEach(e=>{e.oldCode=e.code,e.mode=`show-editor`})}u(Number(r));async function d(e){let t=await n.DeleteScenario({id:e});if(t.error!=``){s.error(t.error);return}mI.push(`/scenarios`)}async function f(e){let t=await n.PublicScenario({id:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),a.value=``,i.value=!1}async function p(e,t){let r=new Date().toISOString(),i=await n.AddGame({name:(`Тестовая игра: `+e).trim(),description:`Тестовая игра`,startAt:r,scenarioId:t});if(i.error!=``){s.error(i.error);return}let a=await n.AddTeam({name:`Тестовая команда`,gameId:i.id});if(a.error!=``){s.error(a.error);return}mI.push(`/team-story/`+a.id+`?password=`+a.password)}async function m(e){let t=await n.DraftScenario({id:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),a.value=``,i.value=!1}async function h(e,t){if(!e)return``;let r=await e.arrayBuffer(),i=new Uint8Array(r),a=await n.UploadFile({filename:t,data:_(i)});return a.error==``?a.filename||``:(s.error(a.error),``)}async function g(){let e=``;if(c.value&&c.value.length>0){let t=c.value[0].file||null;if(t==null||(e=await h(t,`scenarios_`+l.value.id+`_`+t.name),e===``))return}let t=await n.UpdateScenario({id:l.value.id,name:l.value.name,description:l.value.description,image:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),i.value=!1}function _(e){let t=String.fromCharCode(...e);return btoa(t)}let v=k(``),y=k(``),b=k(``),x=k(`mini-add`);async function S(){let e=await n.AddScenarioPlace({id:l.value.id,place:{code:v.value,name:y.value,text:b.value,image:void 0,hidden:void 0,applications:void 0,doors:void 0,keys:void 0}});if(e.error!=``){s.error(e.error);return}await u(Number(r)),v.value=``,y.value=``,b.value=``,x.value=`add`}async function C(){v.value=``,y.value=``,b.value=``,x.value=`mini-add`}async function w(e,t){for(let r of t.doors||[])if(e.story?.places?.find(e=>e.code==r.code)==null){let t=await n.AddScenarioPlace({id:e.id,place:{code:r.code,name:r.name,text:void 0,image:void 0,hidden:!0,applications:void 0,doors:void 0,keys:void 0}});if(t.error!=``){s.error(t.error);return}}}async function T(e){await u(Number(r)),e.mode=`show-editor`}async function ee(e){if(e.fileList&&e.fileList.length>0){let t=e.fileList[0].file||null;if(t==null)return;let n=await h(t,`scenarios_`+l.value.id+`_place_`+e.code+`_`+t.name);if(n===``)return;e.image=n}await w(l.value,e);let t=await n.UpdateScenarioPlace({id:l.value.id,code:e.oldCode,place:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),e.mode=`show-editor`}async function E(e){let t=await n.DeleteScenarioPlace({id:l.value.id,code:e.oldCode});if(t.error!=``){s.error(t.error);return}await u(Number(r))}function D(){let e=[{text:`Настя, ты просто ослепительна сегодня!`,nameForm:`Настя`},{text:`У Насти невероятный вкус!`,nameForm:`Насти`},{text:`Настенька, твоя улыбка делает мир ярче.`,nameForm:`Настенька`},{text:`С Настей всегда интересно общаться.`,nameForm:`Настей`},{text:`Настя, ты — источник вдохновения для всех вокруг.`,nameForm:`Настя`},{text:`Мне нравится, как Настя смотрит на мир.`,nameForm:`Настя`},{text:`Настюха, ты супер!`,nameForm:`Настюха`},{text:`Талант Насти поражает!`,nameForm:`Насти`},{text:`Настя, твоя энергия заряжает батарейки!`,nameForm:`Настя`},{text:`С Настей хочется проводить каждую минуту.`,nameForm:`Настей`},{text:`Настенька, ты — самое красивое, что случилось в этом мире.`,nameForm:`Настенька`},{text:`У Насти золотое сердце.`,nameForm:`Насти`}];return e[Math.floor(Math.random()*e.length)].text}return(e,n)=>(I(),L(F,null,[R(`div`,VP,[R(`div`,HP,[R(`div`,UP,[l.value.status==`public`?(I(),Sa(A(tw),{key:0,title:`Сценарий опубликован`,type:`warning`,style:{"margin-bottom":`20px`}},{default:M(()=>[...n[20]||=[B(` Не рекомендуется редактировать сценарий когда он опубликован. `,-1)]]),_:1})):Aa(``,!0),A(t).user?.id==2?(I(),Sa(A(tw),{key:1,title:D(),type:`info`,style:{"margin-bottom":`20px`}},null,8,[`title`])):Aa(``,!0),R(`div`,WP,[B(` Точек: `+O(l.value.story?.places?.length)+` `,1),z(A(nT),{quaternary:``,onClick:n[0]||=e=>i.value=!0,class:`settings-button`},{default:M(()=>[z(A(_N),{class:`settings-icon`},{default:M(()=>[z(A(tP))]),_:1}),n[21]||=B(` Настройки `,-1)]),_:1})]),z(BP,{mode:x.value,"onUpdate:mode":n[3]||=e=>x.value=e,newPlaceCode:v.value,"onUpdate:newPlaceCode":n[4]||=e=>v.value=e,newPlaceName:y.value,"onUpdate:newPlaceName":n[5]||=e=>y.value=e,newPlaceText:b.value,"onUpdate:newPlaceText":n[6]||=e=>b.value=e},{default:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:n[1]||=e=>C()},{default:M(()=>[...n[22]||=[B(`Отмена`,-1)]]),_:1}),z(A(nT),{onClick:n[2]||=e=>S(),disabled:!v.value},{default:M(()=>[...n[23]||=[B(`Добавить точку`,-1)]]),_:1},8,[`disabled`])]),_:1})]),_:1},8,[`mode`,`newPlaceCode`,`newPlaceName`,`newPlaceText`]),(I(!0),L(F,null,Zr(l.value.story?.places,e=>(I(),Sa(BP,{place:e,mode:e.mode,"onUpdate:mode":t=>e.mode=t,key:e.oldCode},{default:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t=>E(e),type:`error`,ghost:``},{default:M(()=>[...n[24]||=[B(`Удалить`,-1)]]),_:1},8,[`onClick`]),z(A(nT),{onClick:t=>T(e)},{default:M(()=>[...n[25]||=[B(`Отмена`,-1)]]),_:1},8,[`onClick`]),z(A(nT),{onClick:t=>ee(e),disabled:e.code==``},{default:M(()=>[...n[26]||=[B(`Сохранить`,-1)]]),_:1},8,[`onClick`,`disabled`])]),_:2},1024)]),_:2},1032,[`place`,`mode`,`onUpdate:mode`]))),128))])])]),z(A(RE),{show:i.value,"onUpdate:show":n[19]||=e=>i.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Настройки сценария`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:n[7]||=e=>i.value=!1},{default:M(()=>[...n[27]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[...n[47]||=[]]),default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[n[39]||=R(`p`,null,`Название`,-1),z(A(yw),{value:l.value.name,"onUpdate:value":n[8]||=e=>l.value.name=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),n[40]||=R(`p`,{class:`settings-header`},`Описание`,-1),z(A(yw),{value:l.value.description,"onUpdate:value":n[9]||=e=>l.value.description=e,type:`textarea`,placeholder:`Убийство пастуха...`},null,8,[`value`]),n[41]||=R(`p`,{class:`settings-header`},`Картинка`,-1),z(A(yw),{value:l.value.image,"onUpdate:value":n[10]||=e=>l.value.image=e,type:`text`,placeholder:`default_scenario.png`,disabled:``},null,8,[`value`]),z(A(bA),{"directory-dnd":``,max:1,"file-list":c.value,"onUpdate:fileList":n[11]||=e=>c.value=e},{default:M(()=>[z(A(Gk),null,{default:M(()=>[z(A(Hk),{style:{"font-size":`16px`}},{default:M(()=>[...n[28]||=[B(` Щелкните или перетащите файл в эту область для загрузки `,-1)]]),_:1})]),_:1})]),_:1},8,[`file-list`]),z(A(nT),{onClick:n[12]||=e=>g(),ghost:``},{default:M(()=>[...n[29]||=[B(` Сохранить изменения `,-1)]]),_:1}),n[42]||=R(`hr`,{class:`settings-hr`},null,-1),n[43]||=R(`p`,null,`Создать тестовую игру`,-1),z(A(nT),{onClick:n[13]||=e=>p(l.value.name||``,l.value.id),ghost:``},{default:M(()=>[...n[30]||=[B(` Создать игру `,-1)]]),_:1}),n[44]||=R(`hr`,{class:`settings-hr`},null,-1),n[45]||=R(`p`,null,`Публикация`,-1),R(`p`,null,[l.value.status==`public`?(I(),Sa(A(RC),{key:0,bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[...n[31]||=[B(` Опубликовано `,-1)]]),_:1})):Aa(``,!0),l.value.status==`draft`?(I(),Sa(A(RC),{key:1,bordered:!1,type:`warning`,class:`status-block`},{default:M(()=>[...n[32]||=[B(` В разработке `,-1)]]),_:1})):Aa(``,!0)]),R(`p`,null,[n[33]||=B(` Введите название сценария `,-1),z(A(Hk),{class:`name-text`,strong:``},{default:M(()=>[B(O(l.value.name),1)]),_:1})]),z(A(yw),{value:a.value,"onUpdate:value":n[14]||=e=>a.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),l.value.status==`public`?Aa(``,!0):(I(),Sa(A(nT),{key:0,onClick:n[15]||=e=>f(l.value.id),ghost:``,disabled:a.value!=l.value.name},{default:M(()=>[...n[34]||=[B(` Опубликовать сценарий `,-1)]]),_:1},8,[`disabled`])),l.value.status==`draft`?Aa(``,!0):(I(),Sa(A(nT),{key:1,onClick:n[16]||=e=>m(l.value.id),ghost:``,disabled:a.value!=l.value.name},{default:M(()=>[...n[35]||=[B(` Снять сценарий с публикации `,-1)]]),_:1},8,[`disabled`])),n[46]||=R(`hr`,{class:`settings-hr`},null,-1),R(`p`,null,[n[36]||=B(` Введите название сценария `,-1),z(A(Hk),{class:`name-text`,strong:``},{default:M(()=>[B(O(l.value.name),1)]),_:1}),n[37]||=B(` чтобы удалить его `,-1)]),z(A(yw),{value:o.value,"onUpdate:value":n[17]||=e=>o.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),z(A(nT),{onClick:n[18]||=e=>d(l.value.id),type:`error`,ghost:``,disabled:o.value!=l.value.name},{default:M(()=>[...n[38]||=[B(` Удалить сценарий `,-1)]]),_:1},8,[`disabled`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(SN,{active:`scenarios`})],64))}}),[[`__scopeId`,`data-v-e4c92d18`]]),KP=P({__name:`ScenariosEditorView`,setup(e){return(e,t)=>(I(),Sa(GP))}}),qP={class:`center-block-custom`},JP={class:`width1200 display-table`},YP=[`onClick`],XP={class:`scenario-content-block`},ZP={class:`scenario-title`},QP={class:`scenario-label`},$P=xN(P({__name:`ScenariosPage`,setup(e){let t=OM(),n=k([]),r=RA(),i=$E(),a=k(!1),o=k(``);async function s(){n.value=[];let e=await t.GetMyScenarios({});n.value=e.scenarios}async function c(e){let n=await t.AddScenario({name:e});if(n.error!=``){i.error(n.error);return}await l(n.id)}async function l(e){r.push(`/scenarios/`+e+`/editor`)}return s(),(e,t)=>(I(),L(F,null,[R(`div`,qP,[R(`div`,JP,[R(`div`,{class:`scenario-block`,onClick:t[0]||=e=>a.value=!0},[...t[5]||=[R(`div`,{class:`scenario-image-block scenario-image-plus`},`+`,-1),R(`div`,{class:`scenario-content-block`},[R(`p`,{class:`scenario-title`},`Создать новый сценарий`)],-1)]]),(I(!0),L(F,null,Zr(n.value,e=>(I(),L(`div`,{class:`scenario-block`,onClick:t=>l(e.id),key:e.id},[R(`div`,{class:`scenario-image-block scenario-image`,style:fe({backgroundImage:`url(${e.image})`})},null,4),R(`div`,XP,[R(`p`,ZP,O(e.name),1),R(`p`,QP,[e.status==`public`?(I(),Sa(A(RC),{key:0,bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[...t[6]||=[B(`Опубликовано`,-1)]]),_:1})):Aa(``,!0),e.status==`draft`?(I(),Sa(A(RC),{key:1,bordered:!1,type:`warning`,class:`status-block`},{default:M(()=>[...t[7]||=[B(`В разработке`,-1)]]),_:1})):Aa(``,!0)])])],8,YP))),128))])]),z(A(RE),{show:a.value,"onUpdate:show":t[4]||=e=>a.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Создание сценария`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:t[1]||=e=>a.value=!1},{default:M(()=>[...t[8]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t[3]||=e=>c(o.value),disabled:o.value.length==0},{default:M(()=>[...t[9]||=[B(` Создать `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(yw),{value:o.value,"onUpdate:value":t[2]||=e=>o.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`])]),_:1})]),_:1},8,[`show`]),z(SN,{active:`scenarios`})],64))}}),[[`__scopeId`,`data-v-12737793`]]),eF=P({__name:`ScenariosView`,setup(e){return(e,t)=>(I(),Sa($P))}}),tF={};function nF(e,t){return`Пользовательское соглашение`}var rF=xN(tF,[[`render`,nF]]),iF={class:`center-block-custom`},aF={class:`width700`},oF={class:`user-field`},sF={class:`user-field`},cF={class:`user-field`},lF=xN(P({__name:`UsersPage`,setup(e){let t=OM(),n=$E(),r=k([]);async function i(){let e=await t.GetUsers({});if(e.error!=``){n.error(e.error);return}r.value=e.users}i();async function a(e,r){let a=await t.AddUserRole({id:e,role:r});if(a.error!=``){n.error(a.error);return}await i()}async function o(e,r){let a=await t.DeleteUserRole({id:e,role:r});if(a.error!=``){n.error(a.error);return}await i()}return(e,t)=>(I(),L(F,null,[R(`div`,iF,[R(`div`,aF,[(I(!0),L(F,null,Zr(r.value,e=>(I(),L(`div`,{key:e.id,class:`user-block`},[R(`div`,oF,` Позывной: `+O(e.username),1),R(`div`,sF,` Почта: `+O(e.email),1),R(`div`,cF,[z(A(CD),null,{default:M(()=>[t[0]||=B(` Роли: `,-1),(I(!0),L(F,null,Zr(e.roles,e=>(I(),Sa(A(RC),{bordered:!1,key:e},{default:M(()=>[B(O(e),1)]),_:2},1024))),128))]),_:2},1024)]),z(A(AD),{justify:`end`,class:`roles-buttons-block`},{default:M(()=>[e.roles?.includes(`author`)?(I(),Sa(A(nT),{key:1,onClick:t=>o(e.id,`author`)},{default:M(()=>[...t[2]||=[B(`Забрать роль автора`,-1)]]),_:1},8,[`onClick`])):(I(),Sa(A(nT),{key:0,onClick:t=>a(e.id,`author`)},{default:M(()=>[...t[1]||=[B(`Сделать автором`,-1)]]),_:1},8,[`onClick`])),e.roles?.includes(`organizer`)?(I(),Sa(A(nT),{key:3,onClick:t=>o(e.id,`organizer`)},{default:M(()=>[...t[4]||=[B(`Забрать роль организатора`,-1)]]),_:1},8,[`onClick`])):(I(),Sa(A(nT),{key:2,onClick:t=>a(e.id,`organizer`)},{default:M(()=>[...t[3]||=[B(`Сделать организатором`,-1)]]),_:1},8,[`onClick`]))]),_:2},1024)]))),128))])]),z(SN,{active:`users`})],64))}}),[[`__scopeId`,`data-v-b07aea1d`]]),uF=P({__name:`UsersView`,setup(e){return(e,t)=>(I(),Sa(lF))}}),dF={class:`center-block-custom`},fF={class:`width1200 display-table`},pF=[`onClick`],mF={class:`scenario-content-block`},hF={class:`scenario-title`},gF={class:`scenario-description`},_F={class:`scenario-label`},vF=xN(P({__name:`CatalogPage`,setup(e){let t=OM(),n=k([]),r=RA();async function i(){n.value=[];let e=await t.GetScenariosCatalog({});n.value=e.scenarios}async function a(e){r.push(`/scenarios/`+e)}return i(),(e,t)=>(I(),L(F,null,[R(`div`,dF,[R(`div`,fF,[(I(!0),L(F,null,Zr(n.value,e=>(I(),L(`div`,{class:`scenario-block`,onClick:t=>a(e.id),key:e.id},[R(`div`,{class:`scenario-image-block scenario-image`,style:fe({backgroundImage:`url(${e.image})`})},null,4),R(`div`,mF,[R(`p`,hF,O(e.name),1),R(`p`,gF,O(e.description),1),R(`p`,_F,[z(A(RC),{bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[B(`Автор: `+O(e.author?.username),1)]),_:2},1024)])])],8,pF))),128))])]),z(SN,{active:`catalog`})],64))}}),[[`__scopeId`,`data-v-40f12db0`]]),yF=P({__name:`CatalogView`,setup(e){return(e,t)=>(I(),Sa(vF))}}),bF={class:`center-block-custom`},xF={class:`width700`},SF={class:`scenario-title`},CF=[`src`],wF={class:`scenario-description`},TF={class:`scenario-author`},EF=xN(P({__name:`ScenarioPage`,setup(e){let t=$E(),n=OM(),r=zA().params.id,i=k({id:void 0,name:void 0,story:void 0,author:void 0,status:void 0,updatedAt:void 0,createdAt:void 0,publishedAt:void 0});async function a(e){let r=await n.GetScenario({id:e});if(r.error!=``){t.error(r.error);return}i.value=r.scenario}return a(Number(r)),(e,t)=>(I(),L(F,null,[R(`div`,bF,[R(`div`,xF,[R(`div`,SF,O(i.value.name),1),R(`img`,{class:`scenario-image`,src:i.value.image},null,8,CF),R(`div`,wF,O(i.value.description),1),R(`div`,TF,[z(A(RC),{bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[B(`Автор: `+O(i.value.author?.username),1)]),_:1})])])]),z(SN,{active:`catalog`})],64))}}),[[`__scopeId`,`data-v-aa5857fa`]]),DF=P({__name:`ScenarioView`,setup(e){return(e,t)=>(I(),Sa(EF))}}),OF={class:`center-block-custom`},kF={class:`width1200`},AF={class:`settings-block`},jF={class:`team-block`},MF={class:`team-content-block`},NF={class:`title-block`},PF={class:`team-name-block`},FF=xN(P({__name:`GamePage`,setup(e){let t=OM(),n=RA(),r=zA().params.id,i=$E(),a=k(!1),o=k(!1),s=k(!1),c=k(!1),l=k(``),u=k({id:void 0,name:void 0,description:void 0,startAt:void 0,status:void 0,scenario:void 0,teams:void 0});async function d(e){let n=await t.GetGame({id:e});if(n.error!=``){i.error(n.error);return}u.value=n.game}d(Number(r));async function f(e,t){n.push(`/team-story/`+e+`?password=`+t)}async function p(){let e=await t.UpdateGame({id:u.value.id,name:u.value.name,description:u.value.description,startAt:u.value.startAt,scenarioId:u.value.scenario?.id});if(e.error!=``){i.error(e.error);return}await d(u.value.id),a.value=!1}let m=k({id:0,name:``,status:``,password:``,actionsCount:0,applications:[]}),h=k(``),g=k({id:0,name:``,status:``,password:``,actionsCount:0,applications:[]}),_=k({name:``,image:``});function v(e,t){m.value=e,_.value=t,o.value=!0}async function y(){let e=await t.AddTeam({gameId:u.value.id,name:l.value});if(e.error!=``){i.error(e.error);return}await d(u.value.id),s.value=!1}async function b(){let e=await t.GiveTeamApplications({id:m.value.id,name:_.value.name});if(e.error!=``){i.error(e.error);return}await d(u.value.id),o.value=!1}async function x(e){g.value=e,c.value=!0}async function S(){let e=await t.DeleteTeam({id:g.value.id});if(e.error!=``){i.error(e.error);return}await d(u.value.id),c.value=!1}return(e,t)=>(I(),L(F,null,[R(`div`,OF,[R(`div`,kF,[R(`div`,AF,[B(` Команд: `+O(u.value.teams?.length)+` `,1),z(A(nT),{quaternary:``,onClick:t[0]||=e=>a.value=!0,class:`settings-button`},{default:M(()=>[z(A(_N),{class:`settings-icon`},{default:M(()=>[z(A(tP))]),_:1}),t[18]||=B(` Настройки `,-1)]),_:1})]),R(`div`,{class:`team-block team-block-hover`,onClick:t[1]||=e=>s.value=!0},[...t[19]||=[R(`p`,{class:`place-image-plus`},`+`,-1)]]),(I(!0),L(F,null,Zr(u.value.teams,e=>(I(),L(`div`,jF,[R(`div`,MF,[R(`div`,NF,[R(`span`,PF,O(e.name),1),R(`div`,null,` Поездки: `+O(e.actionsCount),1)]),z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t=>f(e.id,e.password)},{default:M(()=>[...t[20]||=[B(` Подсмотреть игру `,-1)]]),_:1},8,[`onClick`]),z(A(nT),{type:`error`,ghost:``,onClick:t=>x(e)},{default:M(()=>[...t[21]||=[B(` Удалить `,-1)]]),_:1},8,[`onClick`])]),_:2},1024),(I(!0),L(F,null,Zr(e.applications,t=>(I(),Sa(A(nT),{key:t.name,class:`link-button`,onClick:n=>v(e,t)},{default:M(()=>[B(` Выдать: `+O(t.name),1)]),_:2},1032,[`onClick`]))),128))])]))),256))])]),z(A(RE),{show:a.value,"onUpdate:show":t[6]||=e=>a.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Настройки игры`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:t[2]||=e=>a.value=!1},{default:M(()=>[...t[22]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t[5]||=e=>p(),ghost:``},{default:M(()=>[...t[25]||=[B(` Сохранить изменения `,-1)]]),_:1})]),_:1})]),default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[t[23]||=R(`p`,null,`Название`,-1),z(A(yw),{value:u.value.name,"onUpdate:value":t[3]||=e=>u.value.name=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),t[24]||=R(`p`,{class:`settings-header`},`Описание`,-1),z(A(yw),{value:u.value.description,"onUpdate:value":t[4]||=e=>u.value.description=e,type:`textarea`,placeholder:`Убийство пастуха...`},null,8,[`value`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(A(RE),{show:o.value,"onUpdate:show":t[9]||=e=>o.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Настройки игры`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:t[7]||=e=>o.value=!1},{default:M(()=>[...t[26]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t[8]||=e=>b(),ghost:``},{default:M(()=>[...t[29]||=[B(` Выдать `,-1)]]),_:1})]),_:1})]),default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[t[27]||=R(`p`,null,`Команда`,-1),R(`h3`,null,O(m.value.name),1),t[28]||=R(`p`,null,`Улика`,-1),R(`h3`,null,O(_.value.name),1)]),_:1})]),_:1})]),_:1},8,[`show`]),z(A(RE),{show:s.value,"onUpdate:show":t[13]||=e=>s.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Создание команды`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:t[10]||=e=>s.value=!1},{default:M(()=>[...t[30]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t[12]||=e=>y(),disabled:l.value.length==0},{default:M(()=>[...t[31]||=[B(` Создать `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(yw),{value:l.value,"onUpdate:value":t[11]||=e=>l.value=e,type:`text`,placeholder:`Три дебила`},null,8,[`value`])]),_:1})]),_:1},8,[`show`]),z(A(RE),{show:c.value,"onUpdate:show":t[17]||=e=>c.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Удаление команды`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:t[14]||=e=>c.value=!1},{default:M(()=>[...t[32]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t[16]||=e=>S(),disabled:h.value!=g.value.name},{default:M(()=>[...t[35]||=[B(` Удалить `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[R(`p`,null,[t[33]||=B(` Введите название команды `,-1),z(A(Hk),{class:`name-text`,strong:``},{default:M(()=>[B(O(g.value.name),1)]),_:1}),t[34]||=B(` чтобы удалить его `,-1)]),z(A(yw),{value:h.value,"onUpdate:value":t[15]||=e=>h.value=e,type:`text`,placeholder:`Три дебила`},null,8,[`value`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(SN,{active:`games`})],64))}}),[[`__scopeId`,`data-v-2a935bdf`]]),IF=P({__name:`GameView`,setup(e){return(e,t)=>(I(),Sa(FF))}}),LF={},RF={class:`belt-block`};function zF(e,t){return I(),L(`div`,null,[t[0]||=R(`div`,{class:`shadow shadow-top`},null,-1),t[1]||=R(`div`,{class:`shadow shadow-bottom`},null,-1),R(`div`,RF,[Qr(e.$slots,`default`,{},void 0,!0)])])}var BF=xN(LF,[[`render`,zF],[`__scopeId`,`data-v-0effe39e`]]),VF={},HF={class:`plate-block`},UF={class:`metal-plate-block`};function WF(e,t){return I(),L(`div`,HF,[R(`div`,UF,[Qr(e.$slots,`default`,{},void 0,!0)]),t[0]||=R(`div`,{class:`pin pin-top-left`},null,-1),t[1]||=R(`div`,{class:`pin pin-top-right`},null,-1),t[2]||=R(`div`,{class:`pin pin-bottom-right`},null,-1),t[3]||=R(`div`,{class:`pin pin-bottom-left`},null,-1)])}var GF=xN(VF,[[`render`,WF],[`__scopeId`,`data-v-34e952c0`]]),KF={class:`text-with-font`},qF=xN(P({__name:`HeaderText`,setup(e){return(e,t)=>(I(),L(`span`,KF,[Qr(e.$slots,`default`,{},void 0,!0)]))}}),[[`__scopeId`,`data-v-e13ee3bd`]]),JF={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 512 512`},YF=P({name:`Footsteps`,render:function(e,t){return I(),L(`svg`,JF,t[0]||=[R(`path`,{d:`M133.83 361.27c-22.61 0-41-8.17-54.79-24.39s-22.84-40.29-28.11-75.31c-7.76-51.61-.06-95.11 21.68-122.48c12.8-16.12 29.6-25.44 48.58-26.94c16.25-1.3 40.54 5.29 64 44c14.69 24.24 25.86 56.44 30.65 88.34c5.79 38.51 1.48 66.86-13.18 86.65c-11.64 15.72-29.54 25.46-53.21 29a106.46 106.46 0 0 1-15.62 1.13z`,fill:`currentColor`},null,-1),R(`path`,{d:`M173 496c-13.21 0-26.6-4.23-38.66-12.36a79.79 79.79 0 0 1-33.52-50.6c-2.85-14.66-1.14-26.31 5.22-35.64c10.33-15.15 28.87-18.56 48.49-22.18c2.07-.38 4.17-.76 6.3-1.17c4.52-.86 9.14-2 13.62-3.11c16.78-4.14 34.14-8.43 48.47 1.75c9.59 6.8 15 18.36 16.62 35.32c1.84 19.57-2.36 39.1-11.83 55c-10.19 17.11-25.47 28.42-43 31.86A61 61 0 0 1 173 496z`,fill:`currentColor`},null,-1),R(`path`,{d:`M378.17 265.27a106.69 106.69 0 0 1-15.6-1.2c-23.66-3.5-41.56-13.25-53.2-29c-14.66-19.79-19-48.13-13.18-86.65c4.79-31.93 15.93-64.1 30.55-88.25c23.34-38.57 47.66-45.26 64-44.08c18.92 1.38 35.69 10.57 48.51 26.6c21.89 27.37 29.65 71 21.86 122.84c-5.27 35-14.2 58.95-28.11 75.31s-32.22 24.43-54.83 24.43z`,fill:`currentColor`},null,-1),R(`path`,{d:`M339 400a61 61 0 0 1-11.68-1.13c-17.56-3.44-32.84-14.75-43-31.86c-9.47-15.9-13.67-35.43-11.83-55c1.6-17 7-28.52 16.62-35.33c14.33-10.17 31.69-5.89 48.47-1.74c4.48 1.1 9.1 2.24 13.62 3.11l6.29 1.17c19.63 3.61 38.17 7 48.5 22.17c6.36 9.33 8.07 21 5.22 35.64a79.78 79.78 0 0 1-33.52 50.61C365.56 395.78 352.17 400 339 400z`,fill:`currentColor`},null,-1)])}}),XF={class:`form-custom`},ZF={class:`center-block-700`},QF={class:`controller`},$F={class:`counters-block`},eI={class:`counter-block`},tI={class:`places-text`},nI={class:`places-text places-text-number`},rI={class:`counter-block`},iI={class:`places-text`},aI={class:`places-text places-text-number`},oI={class:`game-input`},sI=[`disabled`],cI=xN(P({__name:`GameInputForm`,props:{addAction:{type:Function,required:!0},allPlacesCount:{type:Number,required:!0},newPlacesCount:{type:Number,required:!0}},setup(e){let t=k(``),n=e;async function r(){await n.addAction(t.value),t.value=``}function i(e){e%=100;let t=Math.floor(e/10)%10,n=e%10,r=`–`,i=`–`;return t>0&&(r=String(t)),(n>0||t>0)&&(i=String(n)),[r,i]}return(n,a)=>(I(),L(`div`,XF,[z(BF,{class:`input-form`},{default:M(()=>[z(GF,{class:`controller-metal controller-metal-left`}),z(GF,{class:`controller-metal controller-metal-right`}),R(`div`,ZF,[R(`div`,QF,[R(`div`,$F,[R(`div`,eI,[R(`div`,tI,[z(A(_N),{class:`icon-for-counter`},{default:M(()=>[z(A(YF))]),_:1})]),(I(!0),L(F,null,Zr(i(e.allPlacesCount),e=>(I(),L(`div`,nI,O(e),1))),256))]),R(`div`,rI,[R(`div`,iI,[z(A(_N),{class:`icon-for-counter`},{default:M(()=>[z(A(MM))]),_:1})]),(I(!0),L(F,null,Zr(i(e.newPlacesCount),e=>(I(),L(`div`,aI,O(e),1))),256))])]),R(`div`,oI,[Vn(R(`input`,{id:`run`,class:`game-input-run`,"onUpdate:modelValue":a[0]||=e=>t.value=e,type:`text`,placeholder:`Место назначения`},null,512),[[Es,t.value]])]),a[2]||=R(`div`,{class:`game-button-run-shadow`},null,-1),R(`button`,{class:`game-button-run`,type:`submit`,disabled:t.value.length==0,onClick:r},[z(qF,null,{default:M(()=>[...a[1]||=[B(`Поехали`,-1)]]),_:1})],8,sI)])])]),_:1})]))}}),[[`__scopeId`,`data-v-6e0e0fb9`]]);function lI(e,t=5e3){let n=k(!0),r=null,i=()=>{n.value=!0,e(),r=window.setInterval(e,t)},a=()=>{n.value=!1,r&&=(clearInterval(r),null)};return Vr(i),Gr(a),{isActive:n,start:i,stop:a}}var uI={class:`width700`},dI={key:0,class:`edit-panel`},fI=xN(P({__name:`TeamStoryPage`,setup(e){let t=DM(),n=OM(),r=$E(),i=zA(),a=i.params.id,o=i.query.password,s=k(0),c=k(),l=k({places:[]}),u=k({id:void 0,name:void 0,description:void 0,startAt:void 0,status:void 0,scenario:void 0,teams:void 0}),d=k(``),f=()=>{let e=c.value;return e?e.scrollHeight-e.scrollTop-e.clientHeight<1:!1};async function p(){let e=l.value,t=await n.GetTeamStory({id:Number(a),password:o});if(t.error!=``){r.error(t.error);return}u.value=t.game;let i=f();i&&(s.value=0);let d=l.value.places.length;l.value={places:t.story.places?.map((t,n)=>(console.log(e?.places[n]?.mode),{place:t,mode:e?.places[n]?.mode||`show`}))||[]};let p=l.value.places.length;if(p>d&&d!=0&&(s.value+=p-d),await kn(),i&&d!=0){let e=c.value;if(!e)return!1;e.scrollTop=e.scrollHeight}}p();async function m(e){let t=await n.AddTeamAction({id:Number(a),password:o,code:e});if(t.error!=``){r.error(t.error);return}await p(),d.value=``,await kn(),s.value=0}async function h(){let e=await n.DeleteLastTeamAction({id:Number(a)});if(e.error!=``){r.error(e.error);return}await p(),d.value=``}return lI(()=>{p()},2e3),(e,n)=>(I(),L(F,null,[R(`div`,{class:`center-block-custom bottom-margin smooth-scroll`,ref_key:`scrollContainer`,ref:c},[R(`div`,uI,[z(cI,{addAction:m,allPlacesCount:l.value.places.length,newPlacesCount:s.value},null,8,[`allPlacesCount`,`newPlacesCount`]),(I(!0),L(F,null,Zr(l.value.places,e=>(I(),Sa(BP,{place:e.place,mode:e.mode,"onUpdate:mode":t=>e.mode=t,key:e.place.code,addAction:m},null,8,[`place`,`mode`,`onUpdate:mode`]))),128)),A(t).hasRole(`author`)?(I(),L(`div`,dI,[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:h},{default:M(()=>[...n[0]||=[B(`Удалить последний ход`,-1)]]),_:1})]),_:1})])):Aa(``,!0)])],512),z(SN,{active:`games`})],64))}}),[[`__scopeId`,`data-v-c92c3497`]]),pI=P({__name:`TeamStoryView`,setup(e){return(e,t)=>(I(),Sa(fI))}}),mI=xM({history:Uj(`/`),routes:[{path:`/`,name:`home`,component:AN},{path:`/login`,name:`login`,component:KN},{path:`/office`,name:`office`,component:XN},{path:`/user-agreement`,name:`user-agreement`,component:rF},{path:`/privacy-policy`,name:`privacy-policy`,component:$N},{path:`/games`,name:`games`,component:kN},{path:`/games/:id`,name:`game`,component:IF},{path:`/team-story/:id`,name:`team-story`,component:pI},{path:`/scenarios`,name:`scenarios`,component:eF},{path:`/catalog`,name:`catalog`,component:yF},{path:`/scenarios/:id/editor`,name:`scenario-editor`,component:KP},{path:`/scenarios/:id`,name:`scenario`,component:DF},{path:`/users`,name:`users`,component:uF}]}),hI=As(SM);hI.use(Zs()),hI.use(mI),hI.mount(`#app`); \ No newline at end of file +`)}function oN(e){if(!e)return;let t=e.parentElement;t&&t.removeChild(e)}function sN(e){return document.querySelector(`style[cssr-id="${e}"]`)}function cN(e){let t=document.createElement(`style`);return t.setAttribute(`cssr-id`,e),t}window&&(window.__cssrContext={});function lN(e){let t=e.getAttribute(`mount-count`);return t===null?null:Number(t)}function uN(e,t){e.setAttribute(`mount-count`,String(t))}function dN(e,t,n,r){let{els:i}=t;if(n===void 0)i.forEach(oN),t.els=[];else{let e=sN(n);if(e&&i.includes(e)){let a=lN(e);r?a===null?console.error(`[css-render/unmount]: The style with target='${n}' is mounted in count mode.`):a<=1?(oN(e),t.els=i.filter(t=>t!==e)):uN(e,a-1):a===null?(oN(e),t.els=i.filter(t=>t!==e)):console.error(`[css-render/unmount]: The style with target='${n}' is mounted in no-count mode.`)}}}function fN(e,t){e.push(t)}function pN(e,t,n,r,i,a,o,s,c){if(o&&!c){if(n===void 0){console.error("[css-render/mount]: `id` is required in `boost` mode.");return}let i=window.__cssrContext;i[n]||(i[n]=!0,aN(t,e,r,o));return}let l,{els:u}=t,d;if(n===void 0&&(d=t.render(r),n=jc(d)),c){c(n,d??t.render(r));return}let f=sN(n);if(s||f===null){if(l=f===null?cN(n):f,d===void 0&&(d=t.render(r)),l.textContent=d,f!==null)return;if(i){let e=document.head.getElementsByTagName(`style`)[0]||null;document.head.insertBefore(l,e)}else document.head.appendChild(l);a&&uN(l,1),fN(u,l)}else{let e=lN(f);a?e===null?console.error(`[css-render/mount]: The style with id='${n}' has been mounted in no-count mode.`):uN(f,e+1):e!==null&&console.error(`[css-render/mount]: The style with id='${n}' has been mounted in count mode.`)}return f??l}function mN(e){return aN(this,this.instance,e)}function hN(e={}){let{target:t,id:n,ssr:r,props:i,count:a=!1,head:o=!1,boost:s=!1,force:c=!1}=e;return pN(this.instance,this,n??t,i,o,a,s,c,r)}function gN(e={}){let{id:t,target:n,delay:r=0,count:i=!1}=e;r===0?dN(this.instance,this,t??n,i):setTimeout(()=>dN(this.instance,this,t??n,i),r)}var _N=function(e,t,n,r){return{instance:e,$:t,props:n,children:r,els:[],render:mN,mount:hN,unmount:gN}},vN=function(e,t,n,r){return Array.isArray(t)?_N(e,{$:null},null,t):Array.isArray(n)?_N(e,t,null,n):Array.isArray(r)?_N(e,t,n,r):_N(e,t,n,null)};function yN(e={}){let t=null,n={c:((...e)=>vN(n,...e)),use:(e,...t)=>e.install(n,...t),find:sN,context:{},config:e,get __styleSheet(){if(!t){let e=document.createElement(`style`);return document.head.appendChild(e),t=document.styleSheets[document.styleSheets.length-1],t}return t}};return n}var{c:bN}=yN(),xN=bN(`.xicon`,{width:`1em`,height:`1em`,display:`inline-flex`},[bN(`svg`,{width:`1em`,height:`1em`}),bN(`svg:not([fill])`,{fill:`currentColor`})]),SN=()=>{xN.mount({id:`xicons-icon`})},CN={size:[String,Number],color:String,tag:String},wN=Symbol(`IconConfigInjection`),TN=`span`,EN=P({name:`Icon`,props:CN,setup(e,{slots:t}){let n=N(wN,null),r=V(()=>{let t=e.size??n?.size;if(t!==void 0)return typeof t==`number`||/^\d+$/.test(t)?`${t}px`:t}),i=V(()=>{let{color:t}=e;return t===void 0?n?n.color:void 0:t}),a=V(()=>{let{tag:t}=e;return t===void 0?n?.tag??TN:t});return Br(()=>{SN()}),()=>H(a.value,{class:`xicon`,style:{color:i.value,fontSize:r.value}},[Qr(t,`default`)])}}),DN={class:`menu-block`},ON={class:`right-group`},kN=P({__name:`HeaderMenu`,props:{active:{type:String,required:!1}},setup(e){let t=e,n=IM();n.initFromStorage();let r=qA(),i=LM(),a=k([]);async function o(){a.value=[];let e=await i.GetPermissions({});a.value=e.permissions}o();function s(e){return a.value.includes(e)}let c=()=>{r.push(`/login`)},l=()=>{n.logout(),r.push(`/login`)},u=k(!1);return(e,i)=>(I(),L(`div`,DN,[R(`div`,{onClick:i[0]||=e=>u.value=!u.value,class:`burger-button`},[z(A(EN),{class:`burger-icon`,size:`28`},{default:M(()=>[z(A(GM))]),_:1})]),R(`div`,{class:_e([`left-group menu-buttons-block`,u.value?``:`menu-buttons-block-active`])},[R(`div`,{class:_e([`menu-item-block`,{active:t.active==`main`}]),onClick:i[1]||=e=>A(r).push(`/`)},` Главная `,2),A(n).hasRole(`user`)?(I(),L(`div`,{key:0,class:_e([`menu-item-block`,{active:t.active==`office`}]),onClick:i[2]||=e=>A(r).push(`/office`)},` Кабинет `,2)):Aa(``,!0),s(`games_page`)?(I(),L(`div`,{key:1,class:_e([`menu-item-block`,{active:t.active==`games`}]),onClick:i[3]||=e=>A(r).push(`/games`)},` Игры `,2)):Aa(``,!0),R(`div`,{class:_e([`menu-item-block`,{active:t.active==`catalog`}]),onClick:i[4]||=e=>A(r).push(`/catalog`)},` Каталог `,2),s(`scenarios_page`)?(I(),L(`div`,{key:2,class:_e([`menu-item-block`,{active:t.active==`scenarios`}]),onClick:i[5]||=e=>A(r).push(`/scenarios`)},` Мои сценарии `,2)):Aa(``,!0),s(`users_page`)?(I(),L(`div`,{key:3,class:_e([`menu-item-block`,{active:t.active==`users`}]),onClick:i[6]||=e=>A(r).push(`/users`)},` Пользователи `,2)):Aa(``,!0)],2),R(`div`,ON,[A(n).isAuthenticated?Aa(``,!0):(I(),L(`div`,{key:0,class:`menu-item-block right`,onClick:c},` Войти `)),A(n).isAuthenticated?(I(),L(`div`,{key:1,class:`menu-item-block right`,onClick:l},`Выйти`)):Aa(``,!0)])]))}}),AN=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},jN=AN(kN,[[`__scopeId`,`data-v-5e423637`]]),MN={class:`center-block-custom`},NN={class:`width1200`},PN=[`onClick`],FN={class:`game-title`},IN={class:`game-description`},LN=AN(P({__name:`GamesPage`,setup(e){let t=LM(),n=$E(),r=qA(),i=k([]);async function a(){i.value=[];let e=await t.GetGames({});if(e.error!=``){n.error(e.error);return}i.value=e.games||[]}a();async function o(e){r.push(`/games/`+e)}return(e,t)=>(I(),L(F,null,[R(`div`,MN,[R(`div`,NN,[(I(!0),L(F,null,Zr(i.value,e=>(I(),L(`div`,{class:`game-block`,onClick:t=>o(e.id)},[R(`div`,FN,O(e.name),1),R(`div`,IN,O(e.description),1)],8,PN))),256))])]),z(jN,{active:`games`})],64))}}),[[`__scopeId`,`data-v-c7afa62c`]]),RN=P({__name:`GamesView`,setup(e){return(e,t)=>(I(),Sa(LN))}}),zN=P({__name:`HomeView`,setup(e){return(e,t)=>(I(),L(F,null,[t[0]||=R(`div`,{class:`center-block-custom content-block center-middle-block-custom height80`},[R(`div`,null,[R(`h1`,{class:`font-text`},`Вечерний детектив`),R(`h3`,{class:`font-text`},`Дело №0`),R(`p`,{class:`content-text`},` Поиграем? `)])],-1),z(jN,{active:`main`})],64))}}),BN={class:`center-block-custom content-block center-middle-block-custom height80`},VN={class:`form-button-wrapper`},HN={class:`form-label`},UN={key:0},WN={key:1},GN={class:`form-label`},KN={class:`form-button-wrapper`},qN={class:`form-label`},JN={key:0},YN={key:1},XN={class:`form-button-wrapper`},ZN={class:`form-label`},QN={key:0},$N={key:1},eP=AN(P({__name:`LoginPage`,setup(e){let t=IM(),n=qA(),r=$E(),i=k(``),a=k(``),o=k(``),s=k(!1),c=V(()=>[`@mail.ru`,`@yandex.ru`,`@gmail.com`].map(e=>{let t=a.value.split(`@`)[0];return{label:t+e,value:t+e}}));async function l(){if(!await t.login(a.value,o.value)&&t.error!=null){r.error(t.error);return}n.push(`/office`)}async function u(){if(s.value){if(!await t.signup(i.value,a.value)&&t.error!=null){r.error(t.error);return}r.info(`Пароль отправлен на почту`)}}async function d(){if(!await t.refreshPassword(a.value)&&t.error!=null){r.error(t.error);return}r.info(`Пароль отправлен на почту`)}return(e,n)=>(I(),L(`div`,BN,[z(A(bT),{style:{"margin-bottom":`16px`},class:`sign-card`},{default:M(()=>[z(A(Gk),{type:`line`,animated:``},{default:M(()=>[z(A(Vk),{name:`signin`,tab:`Вход`},{default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[n[6]||=R(`div`,{class:`form-label`},`Почта`,-1),z(A(jw),{value:a.value,"onUpdate:value":n[0]||=e=>a.value=e,"input-props":{autocomplete:`disabled`},options:c.value,placeholder:`detective@mail.ru`,clearable:``},null,8,[`value`,`options`]),n[7]||=R(`div`,{class:`form-label`},`Пароль`,-1),z(A(yw),{value:o.value,"onUpdate:value":n[1]||=e=>o.value=e,type:`password`,placeholder:`********`},null,8,[`value`]),R(`div`,VN,[R(`div`,HN,[z(A(nT),{onClick:l,disabled:a.value.length==0||o.value.length==0},{default:M(()=>[A(t).isLoading?(I(),L(`span`,WN,` Подождите... `)):(I(),L(`span`,UN,` Вход `))]),_:1},8,[`disabled`])])])]),_:1})]),_:1}),z(A(Vk),{name:`signup`,tab:`Регистрация`},{default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[n[9]||=R(`div`,{class:`form-label`},`Позывной`,-1),z(A(yw),{value:i.value,"onUpdate:value":n[2]||=e=>i.value=e,type:`text`,placeholder:`Шерлок`},null,8,[`value`]),n[10]||=R(`div`,{class:`form-label`},`Почта`,-1),z(A(jw),{value:a.value,"onUpdate:value":n[3]||=e=>a.value=e,"input-props":{autocomplete:`disabled`},options:c.value,placeholder:`detective@mail.ru`,clearable:``},null,8,[`value`,`options`]),R(`div`,GN,[z(A(NT),{checked:s.value,"onUpdate:checked":n[4]||=e=>s.value=e},{default:M(()=>[...n[8]||=[B(` Я согласен с `,-1),R(`a`,{href:`/user-agreement`,target:`_blank`,class:`docs-link`},`пользовательским соглашением`,-1),R(`br`,null,null,-1),B(` и `,-1),R(`a`,{href:`/privacy-policy`,target:`_blank`,class:`docs-link`},`соглашением о персональных данных`,-1)]]),_:1},8,[`checked`])]),R(`div`,KN,[R(`div`,qN,[z(A(nT),{onClick:u,disabled:i.value.length==0||o.value.length==0||!s.value},{default:M(()=>[A(t).isLoading?(I(),L(`span`,YN,` Подождите... `)):(I(),L(`span`,JN,` Регистрация `))]),_:1},8,[`disabled`])])])]),_:1})]),_:1}),z(A(Vk),{name:`new-password`,tab:`Новый пароль`},{default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[n[11]||=R(`div`,{class:`form-label`},`Почта`,-1),z(A(jw),{value:a.value,"onUpdate:value":n[5]||=e=>a.value=e,"input-props":{autocomplete:`disabled`},options:c.value,placeholder:`detective@mail.ru`,clearable:``},null,8,[`value`,`options`]),R(`div`,XN,[R(`div`,ZN,[z(A(nT),{onClick:d,disabled:a.value.length==0},{default:M(()=>[A(t).isLoading?(I(),L(`span`,$N,` Подождите... `)):(I(),L(`span`,QN,` Прислать новый пароль `))]),_:1},8,[`disabled`])])])]),_:1})]),_:1})]),_:1})]),_:1})]))}}),[[`__scopeId`,`data-v-c1fd645b`]]),tP=P({__name:`LoginView`,setup(e){return(e,t)=>(I(),L(F,null,[z(eP),z(jN)],64))}}),nP={class:`center-block-custom`},rP={class:`width700`},iP=P({__name:`OfficePage`,setup(e){let t=IM(),n=LM(),r=k([]);async function i(){r.value=[];let e=await n.GetPermissions({});r.value=e.permissions}i();function a(){let e=new Date,t=e.getDay(),n=e.getDate(),r=e.getMonth()+1,i=t===1,a=t===5&&n===13,o=r===1&&n===1||r===12&&n===31,s=r>=6&&r<=8,c=r===12||r<=2,l=n%5==0,u=[`Всегда носи с собой запасную ручку — признания любят записывать в самый неподходящий момент.`,`Если подозреваемый слишком вежлив, он либо дипломат, либо прячет труп в гараже.`,`Кофе в участке — это не напиток, это яд для улик. Пей только свой.`,`Следы на месте преступления всегда ведут к тому, кто забыл закрыть дверь.`,`Лучший способ разговорить молчуна — предложить ему чай с тремя ложками сахара.`,`Если всё указывает на дворецкого, ищи того, кто нанимал дворецкого.`,`Записывай каждую мелочь. Особенно цвет носков убитого.`,`Не верь алиби, которое начинается со слов 'Я бы никогда...'`,`Преступник всегда возвращается на место преступления. Или за забытым телефоном.`,`Ищи того, кому есть что терять, кроме своего времени.`,`Если женщина плачет в кабинете — дай ей платок. Если мужчина — дай ему стакан воды.`,`Самое опасное оружие — не пистолет, а бухгалтерская книга.`,`Собака всегда знает убийцу. Но она не говорит, потому что у неё контракт.`,`Проверяй чеки, билеты и смс. Ложь не терпит документации.`,`Если у тела нет врагов — ты плохо искал врагов.`,`Лупа нужна не для увеличения улик, а для того, чтобы выглядеть умнее.`,`Интуиция — это когда ты уже знаешь ответ, но хочешь убедиться, что не ошибся.`,`Подозревай всех, даже самого себя. Иногда преступник — это ты в прошлом.`,`Хороший детектив видит улики. Великий — видит их отсутствие.`,`Никогда не допрашивай свидетеля на голодный желудок. И себя тоже.`,`Если дело зашло в тупик, переверни бумаги вверх ногами.`,`Самый ценный свидетель — это камера наблюдения, у которой сломана защита.`,`Не ищи мотив. Ищи возможность.`,`Преступник не оставляет следов. Он оставляет выбор.`,`Если дверь была закрыта изнутри — ищи люк, который открывается снаружи.`,`Лучший детектив — тот, кого не замечают в толпе.`,`Учись читать по губам. Пригодится на допросах с адвокатом.`,`Запах духов на месте преступления важнее запаха пороха.`,`Если ты нашел отпечаток пальца — проверь, не твой ли он.`,`Раскрыть дело — это искусство. Не раскрыть — тоже искусство, но другое.`,`Никогда не спорь с баллистикой. Она всегда права, даже если ты не согласен.`,`В каждом деле есть одна странная деталь. Найди её — и пазл сложится.`,`Если преступник умный — он оставит ложный след. Если глупый — он оставит следы в соцсетях.`,`Лучший друг детектива — тишина. Второй друг — кофе.`,`Если свидетель говорит слишком много, он врет. Если молчит — он тоже врет.`,`Преступление редко бывает идеальным. Идеальным бывает только алиби жены.`,`Всегда смотри на часы на трупе. Возможно, они показывают время, когда он перестал верить в людей.`,`Воры любят темноту. Детективы — свет. А маньяки — полную луну.`,`Если ты поймал преступника, не радуйся раньше времени — может, он просто лжец.`,`В каждом городе есть одно место, где собираются все сплетники. Начни оттуда.`,`Не верь в совпадения. Но верь в удачу.`,`Если у тебя нет улик — придумай их. Но только мысленно, чтобы знать, где искать.`,`Жертва всегда знала убийцу. Даже если она не знала, что знает.`,`Проверяй алиби на разрыв. Если оно выдерживает — ты ошибся.`,`Самый страшный враг детектива — не маньяк, а его собственная лень.`,`Если преступник оставил записку — прочитай её. И сожги, чтобы никто не узнал твой почерк.`,`Всегда носи с собой фонарик. Даже днём. Для эффекта.`,`В деле важно всё: от укуса комара до размера обуви.`,`Если ты думаешь, что дело простое — значит, ты не додумал.`,`Убийца всегда ищет внимания. Или наоборот, избегает его.`,`Стук в дверь в полночь — это либо полиция, либо заказчик.`,`Никогда не давай обещаний родственникам жертвы. Только факты.`,`Если у тебя есть три версии — выбирай четвёртую.`,`Лучшее оружие — это бумага. На ней можно написать что угодно.`,`Когда ты смотришь на улику, смотри на неё глазами преступника.`,`Все любят детективы, пока не становятся подозреваемыми.`,`Следы крови важны. Но важнее — следы лжи.`,`Если ты не спишь третьи сутки, значит, ты либо гений, либо дурак.`,`Проверяй каждого, кто говорит 'Я ничего не видел'.`,`В каждом деле есть один человек, который знает всё. И он не говорит.`,`Не суди преступника по одежде. Суди по тому, как он её снимал.`,`Дыра в алиби — это как дыра в лодке. Рано или поздно она утонет.`,`Если преступник использует перчатки — он профессионал. Если нет — он любитель.`,`Запомни: первая версия — всегда неверная.`,`Если у тебя кончились идеи, иди в бар. Там всегда есть кто-то, кто расскажет тебе дело.`,`Свидетель с фотороботом — это как слепой с компасом.`,`Никогда не смейся над уликами. Они могут обидеться и исчезнуть.`,`Если ты нашёл оружие — не трогай его. Иначе твои отпечатки будут на нём.`,`Преступник умён, но ты умнее. Потому что ты пьёшь правильный кофе.`,`Всегда пересматривай видеозаписи. Особенно в два раза медленнее.`,`Если на месте преступления есть кот — он видел всё. Но он не скажет.`,`Лучший способ поймать преступника — пригласить его на обед.`,`Если подозреваемый улыбается, он либо невиновен, либо психопат.`,`Проверяй мусор. В нём всегда есть что-то полезное.`,`Никогда не доверяй красивым историям. Только уродливым фактам.`,`Если ты нашёл улику слишком легко — это ловушка.`,`Убийца всегда оставляет послание. Даже если это просто тишина.`,`Если ты запнулся на допросе — делай вид, что так и задумано.`,`Помни: все врут. Даже я тебе советую.`,`Если ты боишься темноты — стань детективом. Страх пройдёт.`,`Самые лучшие признания случаются под утро, когда все устали.`,`Если преступник использовал компьютер, значит, он либо хакер, либо дурак.`,`Следы шин — это как подпись на дороге.`,`Никогда не забывай про запах. Он помнит дольше, чем люди.`,`Если ты не знаешь, что делать — съешь шоколадку.`,`В каждом деле есть одна минута слабости. Найди её.`,`Преступник всегда нервничает. Даже если он не нервничает.`,`Если у тебя есть подозреваемый и нет улик — подожди. Улики появятся.`,`Не верь в чудеса. Верь в логику.`,`Если ты устал — возьми отпуск. Преступление никуда не денется.`,`Запомни: самый опасный преступник — тот, кто читал детективы.`,`Если ты думаешь, что всё кончено — значит, ты пропустил поворот.`,`Следы на полу важнее следов в душе.`,`Если преступник оставил окурок — он курил. Или хотел, чтобы ты так думал.`,`Хороший детектив всегда голоден. Это помогает мыслить.`,`Не суди по первому впечатлению. Суди по второму, когда увидишь его в наручниках.`,`Если у тебя есть тайный агент — не доверяй ему.`,`В деле всегда есть тот, кто знает больше, чем говорит.`,`Если ты не можешь найти убийцу — стань им (в мыслях).`,`И последнее: всегда проверяй, закрыл ли ты дверь участка.`],d=[];i&&d.push(`☕ Понедельник: Сегодня даже преступники не хотят работать. Проверь тех, кто был слишком бодр.`),a&&d.push(`🔮 Пятница 13-е: Если улики ведут к чёрной кошке, ищи чёрного кота с алиби.`),o&&d.push(`🎄 Новый год: Свидетель в костюме Деда Мороза врёт. Настоящий Дед Мороз всегда в отпуске.`),s&&d.push(`☀️ Лето: В жару преступники забывают улики в карманах, потому что снимают пиджаки.`),c&&d.push(`❄️ Зима: Следы на снегу ведут к тому, у кого самые холодные руки.`),l&&d.push(`🌕 Полнолуние: Если подозреваемый воет на луну, он либо оборотень, либо фанат рока.`);let f=u.concat(d),p=f[Math.floor(Math.random()*f.length)],m=[`🔍 Заметки сыщика:`,`📓 Из дневника инспектора:`,`🕵️ Мудрость Шерлока:`,`🧠 Гениально и просто:`,`📌 Правило большого пальца:`,`☕ Кофейная истина:`];return{header:m[Math.floor(Math.random()*m.length)],text:p}}let o=a();return(e,n)=>(I(),L(F,null,[R(`div`,nP,[R(`div`,rP,[z(A(tw),{title:A(o).header,"show-icon":!1,type:`info`,style:{"margin-bottom":`20px`}},{default:M(()=>[B(O(A(o).text),1)]),_:1},8,[`title`]),R(`p`,null,`Доброго времени суток, `+O(A(t).username)+`.`,1)])]),z(jN,{active:`office`})],64))}}),aP=P({__name:`OfficeView`,setup(e){return(e,t)=>(I(),Sa(iP))}}),oP={};function sP(e,t){return`Соглашением о персональных данных`}var cP=AN(oP,[[`render`,sP]]),lP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},uP=P({name:`Settings`,render:function(e,t){return I(),L(`svg`,lP,t[0]||=[R(`path`,{d:`M27 16.76V16v-.77l1.92-1.68A2 2 0 0 0 29.3 11l-2.36-4a2 2 0 0 0-1.73-1a2 2 0 0 0-.64.1l-2.43.82a11.35 11.35 0 0 0-1.31-.75l-.51-2.52a2 2 0 0 0-2-1.61h-4.68a2 2 0 0 0-2 1.61l-.51 2.52a11.48 11.48 0 0 0-1.32.75l-2.38-.86A2 2 0 0 0 6.79 6a2 2 0 0 0-1.73 1L2.7 11a2 2 0 0 0 .41 2.51L5 15.24v1.53l-1.89 1.68A2 2 0 0 0 2.7 21l2.36 4a2 2 0 0 0 1.73 1a2 2 0 0 0 .64-.1l2.43-.82a11.35 11.35 0 0 0 1.31.75l.51 2.52a2 2 0 0 0 2 1.61h4.72a2 2 0 0 0 2-1.61l.51-2.52a11.48 11.48 0 0 0 1.32-.75l2.42.82a2 2 0 0 0 .64.1a2 2 0 0 0 1.73-1l2.28-4a2 2 0 0 0-.41-2.51zM25.21 24l-3.43-1.16a8.86 8.86 0 0 1-2.71 1.57L18.36 28h-4.72l-.71-3.55a9.36 9.36 0 0 1-2.7-1.57L6.79 24l-2.36-4l2.72-2.4a8.9 8.9 0 0 1 0-3.13L4.43 12l2.36-4l3.43 1.16a8.86 8.86 0 0 1 2.71-1.57L13.64 4h4.72l.71 3.55a9.36 9.36 0 0 1 2.7 1.57L25.21 8l2.36 4l-2.72 2.4a8.9 8.9 0 0 1 0 3.13L27.57 20z`,fill:`currentColor`},null,-1),R(`path`,{d:`M16 22a6 6 0 1 1 6-6a5.94 5.94 0 0 1-6 6zm0-10a3.91 3.91 0 0 0-4 4a3.91 3.91 0 0 0 4 4a3.91 3.91 0 0 0 4-4a3.91 3.91 0 0 0-4-4z`,fill:`currentColor`},null,-1)])}}),dP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 24 24`},fP=P({name:`Key24Regular`,render:function(e,t){return I(),L(`svg`,dP,t[0]||=[R(`g`,{fill:`none`},[R(`path`,{d:`M18.25 7a1.25 1.25 0 1 1-2.5 0a1.25 1.25 0 0 1 2.5 0zM15.5 2.05A6.554 6.554 0 0 0 8.95 8.6c0 .387.05.76.11 1.104a.275.275 0 0 1-.07.244l-6.235 6.236a2.75 2.75 0 0 0-.806 1.944V20.3c0 .966.784 1.75 1.75 1.75h2.5a1.75 1.75 0 0 0 1.75-1.75v-1.25H9.7c.69 0 1.25-.56 1.25-1.25v-1.75h1.75a1.25 1.25 0 0 0 1.25-1.204c.496.128 1.02.204 1.55.204a6.554 6.554 0 0 0 6.55-6.55c0-3.631-2.953-6.45-6.55-6.45zM10.45 8.6a5.054 5.054 0 0 1 5.05-5.05c2.802 0 5.05 2.181 5.05 4.95a5.054 5.054 0 0 1-5.05 5.05c-.68 0-1.38-.171-2.005-.44a.75.75 0 0 0-1.046.69v.75H10.7c-.69 0-1.25.56-1.25 1.25v1.75H7.7c-.69 0-1.25.56-1.25 1.25v1.5a.25.25 0 0 1-.25.25H3.7a.25.25 0 0 1-.25-.25v-2.172c0-.331.132-.65.366-.884l6.236-6.235a1.774 1.774 0 0 0 .486-1.564a4.917 4.917 0 0 1-.088-.845z`,fill:`currentColor`})],-1)])}}),pP={class:`main`},mP={class:`message-cloud`},hP=AN(P({__name:`MessagePaper`,setup(e){return(e,t)=>(I(),L(`div`,pP,[t[0]||=R(`div`,{class:`message-cloud-3`},null,-1),t[1]||=R(`div`,{class:`message-cloud-2`},null,-1),R(`div`,mP,[Qr(e.$slots,`default`,{},void 0,!0)])]))}}),[[`__scopeId`,`data-v-dfe3093b`]]),gP={key:1,class:`place-block`},_P={class:`message-header`},vP={class:`message-content`},yP={key:0},bP={class:`message-image-border`},xP=[`src`],SP={class:`key-block`},CP={key:0,class:`hr`},wP={class:`gray-block`},TP={key:0},EP={class:`key-block`},DP={key:3},OP={class:`message-show-header font`},kP={class:`message-show-content font`},AP={key:0},jP={class:`message-image-border`},MP=[`src`],NP={key:0,class:`show-hr`},PP=[`onClick`],FP={class:`button-dialog-text`},IP={key:1,class:`show-hr`},LP={key:4},RP={class:`message-header font`},zP={key:5,class:`place-block`},BP=[`src`],VP={style:{display:`flex`,"align-items":`center`,width:`100%`}},HP={style:{display:`flex`,"flex-direction":`column`}},UP={style:{display:`flex`,"flex-direction":`column`,width:`100%`}},WP={class:`door-add-block`},GP={class:`door-field`},KP={style:{display:`flex`,"align-items":`center`,width:`100%`}},qP={style:{display:`flex`,"align-items":`center`,width:`100%`}},JP={class:`slot-block`},YP=AN(P({__name:`PlaceBlock`,props:{newPlaceCode:{type:String},newPlaceName:{type:String},newPlaceText:{type:String},place:{type:Object},mode:{type:String,required:!0},addAction:{type:Function}},emits:[`update:newPlaceCode`,`update:newPlaceName`,`update:newPlaceText`,`update:mode`],setup(e,{emit:t}){let n=e,r=t,i=e=>{r(`update:newPlaceCode`,e)},a=e=>{r(`update:newPlaceName`,e)},o=e=>{r(`update:newPlaceText`,e)},s=e=>{r(`update:mode`,e)};function c(){return{name:void 0,image:void 0}}function l(){return{code:void 0,name:void 0,keys:void 0}}function u(){return{name:void 0}}return(t,r)=>(I(),L(F,null,[e.mode==`mini-add`?(I(),L(`div`,{key:0,class:`place-block-hover show-editor-block`,onClick:r[0]||=e=>s(`add`)},[...r[14]||=[R(`p`,{class:`place-image-plus`},`+`,-1)]])):Aa(``,!0),e.mode==`add`?(I(),L(`div`,gP,[z(A(CD),{vertical:``},{default:M(()=>[z(A(xw),null,{default:M(()=>[z(A(yw),{style:{width:`20%`},value:e.newPlaceCode,"onUpdate:value":i,type:`text`,placeholder:`Ы-1`},null,8,[`value`]),z(A(yw),{style:{width:`80%`},value:e.newPlaceName,"onUpdate:value":a,type:`text`,placeholder:`Дом №Ы`},null,8,[`value`])]),_:1}),z(A(yw),{value:e.newPlaceText,"onUpdate:value":o,type:`textarea`,autosize:{minRows:3},placeholder:`В начале было слово...`},null,8,[`value`]),Qr(t.$slots,`default`,{},void 0,!0)]),_:3})])):Aa(``,!0),e.mode==`show-editor`?(I(),L(`div`,{key:2,class:`place-block-hover show-editor-block`,onClick:r[1]||=e=>s(`edit`)},[R(`div`,_P,O(n.place?.code)+`: `+O(n.place?.name),1),r[15]||=R(`hr`,{class:`hr`},null,-1),R(`div`,vP,[n.place?.image?(I(),L(`div`,yP,[R(`div`,bP,[R(`img`,{src:n.place?.image,class:`message-image`},null,8,xP)])])):Aa(``,!0),B(` `+O(n.place?.text),1)]),(I(!0),L(F,null,Zr(n.place?.doors,e=>(I(),L(`div`,{key:e.code,class:`door-block`},[B(O(e.name)+` `,1),(I(!0),L(F,null,Zr(e.keys,e=>(I(),L(`span`,SP,[z(A(EN),{class:`lock-icon`},{default:M(()=>[z(A(UM))]),_:1}),B(` `+O(e.name),1)]))),256))]))),128)),n.place?.applications?.length?(I(),L(`hr`,CP)):Aa(``,!0),(I(!0),L(F,null,Zr(n.place?.applications,e=>(I(),L(`div`,{class:`message-footer application-block`,key:e.name},` Приложение: `+O(e.name),1))),128)),R(`p`,wP,[n.place?.hidden?(I(),L(`span`,TP,` Скрытая точка `)):Aa(``,!0),(I(!0),L(F,null,Zr(n.place?.keys,e=>(I(),L(`span`,EP,[z(A(EN),{class:`lock-icon`},{default:M(()=>[z(A(fP))]),_:1}),B(` `+O(e.name),1)]))),256))])])):Aa(``,!0),e.mode==`show`?(I(),L(`div`,DP,[z(hP,null,{default:M(()=>[R(`div`,OP,[B(O(e.place?.code)+`: `+O(e.place?.name)+` `,1),R(`span`,{class:`collapse-icon collapse-icon-up`,onClick:r[2]||=e=>s(`show-collapse`)})]),r[16]||=R(`hr`,{class:`show-hr`},null,-1),R(`div`,kP,[e.place?.image?.length?(I(),L(`div`,AP,[R(`div`,jP,[R(`img`,{src:e.place?.image,class:`message-image`},null,8,MP)])])):Aa(``,!0),B(` `+O(e.place?.text),1)]),n.place?.doors?.length?(I(),L(`hr`,NP)):Aa(``,!0),(I(!0),L(F,null,Zr(n.place?.doors,t=>(I(),L(`div`,{key:t.code,class:`button-dialog font`,onClick:n=>e.addAction(t.code)},[R(`div`,FP,O(t.code)+` `+O(t.name),1)],8,PP))),128)),n.place?.applications?.length?(I(),L(`hr`,IP)):Aa(``,!0),(I(!0),L(F,null,Zr(n.place?.applications,e=>(I(),L(`div`,{class:`message-show-footer font`,key:e.name},` Приложение: `+O(e.name),1))),128))]),_:1})])):Aa(``,!0),e.mode==`show-collapse`?(I(),L(`div`,LP,[z(hP,null,{default:M(()=>[R(`div`,RP,[B(O(e.place?.code)+`: `+O(e.place?.name)+` `,1),R(`span`,{class:`collapse-icon`,onClick:r[3]||=e=>s(`show`)})])]),_:1})])):Aa(``,!0),e.mode==`edit`?(I(),L(`div`,zP,[z(A(CD),{vertical:``},{default:M(()=>[z(A(xw),null,{default:M(()=>[z(A(yw),{style:{width:`20%`},value:n.place.code,"onUpdate:value":r[4]||=e=>n.place.code=e,type:`text`,placeholder:`Ы-1`},null,8,[`value`]),z(A(yw),{style:{width:`80%`},value:n.place.name,"onUpdate:value":r[5]||=e=>n.place.name=e,type:`text`,placeholder:`Дом №Ы`},null,8,[`value`])]),_:1}),z(A(yw),{value:n.place.text,"onUpdate:value":r[6]||=e=>n.place.text=e,type:`textarea`,autosize:{minRows:3},placeholder:`В начале было слово...`},null,8,[`value`]),r[28]||=R(`p`,{class:`settings-header`},`Картинка`,-1),R(`div`,null,[z(A(CD),null,{default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[R(`img`,{src:n.place.image,class:`message-edit-image`},null,8,BP),z(A(nT),{onClick:r[7]||=e=>(n.place.image=``,n.place.fileList=null)},{default:M(()=>[...r[17]||=[B(`Убрать картинку`,-1)]]),_:1})]),_:1}),z(A(CD),{vertical:``},{default:M(()=>[z(A(yw),{value:n.place.image,"onUpdate:value":r[8]||=e=>n.place.image=e,type:`text`,placeholder:`Не задано`,disabled:``},null,8,[`value`]),z(A(kA),{"directory-dnd":``,max:1,"file-list":n.place.fileList,"onUpdate:fileList":r[9]||=e=>n.place.fileList=e},{default:M(()=>[z(A(eA),null,{default:M(()=>[z(A(Zk),{style:{"font-size":`16px`}},{default:M(()=>[...r[18]||=[B(` Щелкните или перетащите файл в эту область для загрузки `,-1)]]),_:1})]),_:1})]),_:1},8,[`file-list`])]),_:1})]),_:1})]),r[29]||=R(`p`,{class:`settings-header`},`Видимость точки`,-1),z(A(Rk),{value:n.place.hidden,"onUpdate:value":r[10]||=e=>n.place.hidden=e},{checked:M(()=>[...r[19]||=[B(` Скрытая точка `,-1)]]),unchecked:M(()=>[...r[20]||=[B(` Обычная точка `,-1)]]),_:1},8,[`value`]),r[30]||=B(` Улики `,-1),z(A(gD),{value:n.place.applications,"onUpdate:value":r[11]||=e=>n.place.applications=e,"on-create":c},{"create-button-default":M(()=>[...r[21]||=[B(` Добавить улику `,-1)]]),default:M(({value:e})=>[R(`div`,VP,[z(A(yw),{value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])])]),_:1},8,[`value`]),r[31]||=B(` Действия `,-1),z(A(gD),{value:n.place.doors,"onUpdate:value":r[12]||=e=>n.place.doors=e,"on-create":l},{"create-button-default":M(()=>[...r[22]||=[B(` Добавить действие `,-1)]]),action:M(({index:e,create:t,remove:n})=>[R(`div`,HP,[z(A(nT),{onClick:()=>t(e),class:`plus-minus-buttons`},{default:M(()=>[...r[23]||=[B(`+`,-1)]]),_:1},8,[`onClick`]),z(A(nT),{disabled:``,onClick:()=>n(e),class:`plus-minus-buttons`},{default:M(()=>[...r[24]||=[B(`-`,-1)]]),_:1},8,[`onClick`])])]),default:M(({value:e})=>[R(`div`,UP,[R(`div`,WP,[z(A(xw),null,{default:M(()=>[z(A(yw),{style:{width:`30%`},value:e.code,"onUpdate:value":t=>e.code=t,type:`text`,placeholder:`Код`},null,8,[`value`,`onUpdate:value`]),z(A(yw),{style:{width:`70%`},value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])]),_:2},1024),r[26]||=R(`p`,{class:`need-keys-text`},`Требуемые ключи`,-1),R(`div`,GP,[z(A(gD),{value:e.keys,"onUpdate:value":t=>e.keys=t,"on-create":u},{"create-button-default":M(()=>[...r[25]||=[B(` Добавить ключ `,-1)]]),default:M(({value:e})=>[R(`div`,KP,[z(A(yw),{value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])])]),_:1},8,[`value`,`onUpdate:value`])])])])]),_:1},8,[`value`]),r[32]||=B(` Получаемые ключи `,-1),z(A(gD),{value:n.place.keys,"onUpdate:value":r[13]||=e=>n.place.keys=e,"on-create":u},{"create-button-default":M(()=>[...r[27]||=[B(` Добавить ключ `,-1)]]),default:M(({value:e})=>[R(`div`,qP,[z(A(yw),{value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])])]),_:1},8,[`value`]),R(`div`,JP,[Qr(t.$slots,`default`,{},void 0,!0)])]),_:3})])):Aa(``,!0)],64))}}),[[`__scopeId`,`data-v-60b29dfb`]]),XP={class:`center-block-custom`},ZP={class:`width700`},QP={class:`places-container`},$P={class:`settings-block`},eF=AN(P({__name:`ScenariosEditorPage`,setup(e){let t=IM(),n=LM(),r=JA().params.id,i=k(!1),a=k(``),o=k(``),s=$E(),c=k([]),l=k({id:void 0,name:void 0,story:void 0,author:void 0,status:void 0,updatedAt:void 0,createdAt:void 0,publishedAt:void 0});async function u(e){let t=await n.GetFullScenario({id:e});if(t.error!=``){s.error(t.error);return}l.value=t.scenario,l.value.story?.places?.forEach(e=>{e.oldCode=e.code,e.mode=`show-editor`})}u(Number(r));async function d(e){let t=await n.DeleteScenario({id:e});if(t.error!=``){s.error(t.error);return}wI.push(`/scenarios`)}async function f(e){let t=await n.PublicScenario({id:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),a.value=``,i.value=!1}async function p(e,t){let r=new Date().toISOString(),i=await n.AddGame({name:(`Тестовая игра: `+e).trim(),description:`Тестовая игра`,startAt:r,scenarioId:t});if(i.error!=``){s.error(i.error);return}let a=await n.AddTeam({name:`Тестовая команда`,gameId:i.id});if(a.error!=``){s.error(a.error);return}wI.push(`/team-story/`+a.id+`?password=`+a.password)}async function m(e){let t=await n.DraftScenario({id:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),a.value=``,i.value=!1}async function h(e,t){if(!e)return``;let r=await e.arrayBuffer(),i=new Uint8Array(r),a=await n.UploadFile({filename:t,data:_(i)});return a.error==``?a.filename||``:(s.error(a.error),``)}async function g(){let e=``;if(c.value&&c.value.length>0){let t=c.value[0].file||null;if(t==null||(e=await h(t,`scenarios_`+l.value.id+`_`+t.name),e===``))return}let t=await n.UpdateScenario({id:l.value.id,name:l.value.name,description:l.value.description,image:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),i.value=!1}function _(e){let t=String.fromCharCode(...e);return btoa(t)}let v=k(``),y=k(``),b=k(``),x=k(`mini-add`);async function S(){let e=await n.AddScenarioPlace({id:l.value.id,place:{code:v.value,name:y.value,text:b.value,image:void 0,hidden:void 0,applications:void 0,doors:void 0,keys:void 0}});if(e.error!=``){s.error(e.error);return}await u(Number(r)),v.value=``,y.value=``,b.value=``,x.value=`add`}async function C(){v.value=``,y.value=``,b.value=``,x.value=`mini-add`}async function w(e,t){for(let r of t.doors||[])if(e.story?.places?.find(e=>e.code==r.code)==null){let t=await n.AddScenarioPlace({id:e.id,place:{code:r.code,name:r.name,text:void 0,image:void 0,hidden:!0,applications:void 0,doors:void 0,keys:void 0}});if(t.error!=``){s.error(t.error);return}}}async function T(e){await u(Number(r)),e.mode=`show-editor`}async function ee(e){if(e.fileList&&e.fileList.length>0){let t=e.fileList[0].file||null;if(t==null)return;let n=await h(t,`scenarios_`+l.value.id+`_place_`+e.code+`_`+t.name);if(n===``)return;e.image=n}await w(l.value,e);let t=await n.UpdateScenarioPlace({id:l.value.id,code:e.oldCode,place:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),e.mode=`show-editor`}async function E(e){let t=await n.DeleteScenarioPlace({id:l.value.id,code:e.oldCode});if(t.error!=``){s.error(t.error);return}await u(Number(r))}function D(){let e=[{text:`Настя, ты просто ослепительна сегодня!`,nameForm:`Настя`},{text:`У Насти невероятный вкус!`,nameForm:`Насти`},{text:`Настенька, твоя улыбка делает мир ярче.`,nameForm:`Настенька`},{text:`С Настей всегда интересно общаться.`,nameForm:`Настей`},{text:`Настя, ты — источник вдохновения для всех вокруг.`,nameForm:`Настя`},{text:`Мне нравится, как Настя смотрит на мир.`,nameForm:`Настя`},{text:`Настюха, ты супер!`,nameForm:`Настюха`},{text:`Талант Насти поражает!`,nameForm:`Насти`},{text:`Настя, твоя энергия заряжает батарейки!`,nameForm:`Настя`},{text:`С Настей хочется проводить каждую минуту.`,nameForm:`Настей`},{text:`Настенька, ты — самое красивое, что случилось в этом мире.`,nameForm:`Настенька`},{text:`У Насти золотое сердце.`,nameForm:`Насти`}];return e[Math.floor(Math.random()*e.length)].text}return(e,n)=>(I(),L(F,null,[R(`div`,XP,[R(`div`,ZP,[R(`div`,QP,[l.value.status==`public`?(I(),Sa(A(tw),{key:0,title:`Сценарий опубликован`,type:`warning`,style:{"margin-bottom":`20px`}},{default:M(()=>[...n[20]||=[B(` Не рекомендуется редактировать сценарий когда он опубликован. `,-1)]]),_:1})):Aa(``,!0),A(t).user?.id==2?(I(),Sa(A(tw),{key:1,title:D(),type:`info`,style:{"margin-bottom":`20px`}},null,8,[`title`])):Aa(``,!0),R(`div`,$P,[B(` Точек: `+O(l.value.story?.places?.length)+` `,1),z(A(nT),{quaternary:``,onClick:n[0]||=e=>i.value=!0,class:`settings-button`},{default:M(()=>[z(A(EN),{class:`settings-icon`},{default:M(()=>[z(A(uP))]),_:1}),n[21]||=B(` Настройки `,-1)]),_:1})]),z(YP,{mode:x.value,"onUpdate:mode":n[3]||=e=>x.value=e,newPlaceCode:v.value,"onUpdate:newPlaceCode":n[4]||=e=>v.value=e,newPlaceName:y.value,"onUpdate:newPlaceName":n[5]||=e=>y.value=e,newPlaceText:b.value,"onUpdate:newPlaceText":n[6]||=e=>b.value=e},{default:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:n[1]||=e=>C()},{default:M(()=>[...n[22]||=[B(`Отмена`,-1)]]),_:1}),z(A(nT),{onClick:n[2]||=e=>S(),disabled:!v.value},{default:M(()=>[...n[23]||=[B(`Добавить точку`,-1)]]),_:1},8,[`disabled`])]),_:1})]),_:1},8,[`mode`,`newPlaceCode`,`newPlaceName`,`newPlaceText`]),(I(!0),L(F,null,Zr(l.value.story?.places,e=>(I(),Sa(YP,{place:e,mode:e.mode,"onUpdate:mode":t=>e.mode=t,key:e.oldCode},{default:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t=>E(e),type:`error`,ghost:``},{default:M(()=>[...n[24]||=[B(`Удалить`,-1)]]),_:1},8,[`onClick`]),z(A(nT),{onClick:t=>T(e)},{default:M(()=>[...n[25]||=[B(`Отмена`,-1)]]),_:1},8,[`onClick`]),z(A(nT),{onClick:t=>ee(e),disabled:e.code==``},{default:M(()=>[...n[26]||=[B(`Сохранить`,-1)]]),_:1},8,[`onClick`,`disabled`])]),_:2},1024)]),_:2},1032,[`place`,`mode`,`onUpdate:mode`]))),128))])])]),z(A(RE),{show:i.value,"onUpdate:show":n[19]||=e=>i.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Настройки сценария`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:n[7]||=e=>i.value=!1},{default:M(()=>[...n[27]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[...n[47]||=[]]),default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[n[39]||=R(`p`,null,`Название`,-1),z(A(yw),{value:l.value.name,"onUpdate:value":n[8]||=e=>l.value.name=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),n[40]||=R(`p`,{class:`settings-header`},`Описание`,-1),z(A(yw),{value:l.value.description,"onUpdate:value":n[9]||=e=>l.value.description=e,type:`textarea`,placeholder:`Убийство пастуха...`},null,8,[`value`]),n[41]||=R(`p`,{class:`settings-header`},`Картинка`,-1),z(A(yw),{value:l.value.image,"onUpdate:value":n[10]||=e=>l.value.image=e,type:`text`,placeholder:`default_scenario.png`,disabled:``},null,8,[`value`]),z(A(kA),{"directory-dnd":``,max:1,"file-list":c.value,"onUpdate:fileList":n[11]||=e=>c.value=e},{default:M(()=>[z(A(eA),null,{default:M(()=>[z(A(Zk),{style:{"font-size":`16px`}},{default:M(()=>[...n[28]||=[B(` Щелкните или перетащите файл в эту область для загрузки `,-1)]]),_:1})]),_:1})]),_:1},8,[`file-list`]),z(A(nT),{onClick:n[12]||=e=>g(),ghost:``},{default:M(()=>[...n[29]||=[B(` Сохранить изменения `,-1)]]),_:1}),n[42]||=R(`hr`,{class:`settings-hr`},null,-1),n[43]||=R(`p`,null,`Создать тестовую игру`,-1),z(A(nT),{onClick:n[13]||=e=>p(l.value.name||``,l.value.id),ghost:``},{default:M(()=>[...n[30]||=[B(` Создать игру `,-1)]]),_:1}),n[44]||=R(`hr`,{class:`settings-hr`},null,-1),n[45]||=R(`p`,null,`Публикация`,-1),R(`p`,null,[l.value.status==`public`?(I(),Sa(A(RC),{key:0,bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[...n[31]||=[B(` Опубликовано `,-1)]]),_:1})):Aa(``,!0),l.value.status==`draft`?(I(),Sa(A(RC),{key:1,bordered:!1,type:`warning`,class:`status-block`},{default:M(()=>[...n[32]||=[B(` В разработке `,-1)]]),_:1})):Aa(``,!0)]),R(`p`,null,[n[33]||=B(` Введите название сценария `,-1),z(A(Zk),{class:`name-text`,strong:``},{default:M(()=>[B(O(l.value.name),1)]),_:1})]),z(A(yw),{value:a.value,"onUpdate:value":n[14]||=e=>a.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),l.value.status==`public`?Aa(``,!0):(I(),Sa(A(nT),{key:0,onClick:n[15]||=e=>f(l.value.id),ghost:``,disabled:a.value!=l.value.name},{default:M(()=>[...n[34]||=[B(` Опубликовать сценарий `,-1)]]),_:1},8,[`disabled`])),l.value.status==`draft`?Aa(``,!0):(I(),Sa(A(nT),{key:1,onClick:n[16]||=e=>m(l.value.id),ghost:``,disabled:a.value!=l.value.name},{default:M(()=>[...n[35]||=[B(` Снять сценарий с публикации `,-1)]]),_:1},8,[`disabled`])),n[46]||=R(`hr`,{class:`settings-hr`},null,-1),R(`p`,null,[n[36]||=B(` Введите название сценария `,-1),z(A(Zk),{class:`name-text`,strong:``},{default:M(()=>[B(O(l.value.name),1)]),_:1}),n[37]||=B(` чтобы удалить его `,-1)]),z(A(yw),{value:o.value,"onUpdate:value":n[17]||=e=>o.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),z(A(nT),{onClick:n[18]||=e=>d(l.value.id),type:`error`,ghost:``,disabled:o.value!=l.value.name},{default:M(()=>[...n[38]||=[B(` Удалить сценарий `,-1)]]),_:1},8,[`disabled`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(jN,{active:`scenarios`})],64))}}),[[`__scopeId`,`data-v-e4c92d18`]]),tF=P({__name:`ScenariosEditorView`,setup(e){return(e,t)=>(I(),Sa(eF))}}),nF={class:`center-block-custom`},rF={class:`width1200 display-table`},iF=[`onClick`],aF={class:`scenario-content-block`},oF={class:`scenario-title`},sF={class:`scenario-label`},cF=AN(P({__name:`ScenariosPage`,setup(e){let t=LM(),n=k([]),r=qA(),i=$E(),a=k(!1),o=k(``);async function s(){n.value=[];let e=await t.GetMyScenarios({});n.value=e.scenarios}async function c(e){let n=await t.AddScenario({name:e});if(n.error!=``){i.error(n.error);return}await l(n.id)}async function l(e){r.push(`/scenarios/`+e+`/editor`)}return s(),(e,t)=>(I(),L(F,null,[R(`div`,nF,[R(`div`,rF,[R(`div`,{class:`scenario-block`,onClick:t[0]||=e=>a.value=!0},[...t[5]||=[R(`div`,{class:`scenario-image-block scenario-image-plus`},`+`,-1),R(`div`,{class:`scenario-content-block`},[R(`p`,{class:`scenario-title`},`Создать новый сценарий`)],-1)]]),(I(!0),L(F,null,Zr(n.value,e=>(I(),L(`div`,{class:`scenario-block`,onClick:t=>l(e.id),key:e.id},[R(`div`,{class:`scenario-image-block scenario-image`,style:fe({backgroundImage:`url(${e.image})`})},null,4),R(`div`,aF,[R(`p`,oF,O(e.name),1),R(`p`,sF,[e.status==`public`?(I(),Sa(A(RC),{key:0,bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[...t[6]||=[B(`Опубликовано`,-1)]]),_:1})):Aa(``,!0),e.status==`draft`?(I(),Sa(A(RC),{key:1,bordered:!1,type:`warning`,class:`status-block`},{default:M(()=>[...t[7]||=[B(`В разработке`,-1)]]),_:1})):Aa(``,!0)])])],8,iF))),128))])]),z(A(RE),{show:a.value,"onUpdate:show":t[4]||=e=>a.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Создание сценария`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:t[1]||=e=>a.value=!1},{default:M(()=>[...t[8]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t[3]||=e=>c(o.value),disabled:o.value.length==0},{default:M(()=>[...t[9]||=[B(` Создать `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(yw),{value:o.value,"onUpdate:value":t[2]||=e=>o.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`])]),_:1})]),_:1},8,[`show`]),z(jN,{active:`scenarios`})],64))}}),[[`__scopeId`,`data-v-12737793`]]),lF=P({__name:`ScenariosView`,setup(e){return(e,t)=>(I(),Sa(cF))}}),uF={};function dF(e,t){return`Пользовательское соглашение`}var fF=AN(uF,[[`render`,dF]]),pF={class:`center-block-custom`},mF={class:`width700`},hF={class:`user-field`},gF={class:`user-field`},_F={class:`user-field`},vF=AN(P({__name:`UsersPage`,setup(e){let t=LM(),n=$E(),r=k([]);async function i(){let e=await t.GetUsers({});if(e.error!=``){n.error(e.error);return}r.value=e.users}i();async function a(e,r){let a=await t.AddUserRole({id:e,role:r});if(a.error!=``){n.error(a.error);return}await i()}async function o(e,r){let a=await t.DeleteUserRole({id:e,role:r});if(a.error!=``){n.error(a.error);return}await i()}return(e,t)=>(I(),L(F,null,[R(`div`,pF,[R(`div`,mF,[(I(!0),L(F,null,Zr(r.value,e=>(I(),L(`div`,{key:e.id,class:`user-block`},[R(`div`,hF,` Позывной: `+O(e.username),1),R(`div`,gF,` Почта: `+O(e.email),1),R(`div`,_F,[z(A(CD),null,{default:M(()=>[t[0]||=B(` Роли: `,-1),(I(!0),L(F,null,Zr(e.roles,e=>(I(),Sa(A(RC),{bordered:!1,key:e},{default:M(()=>[B(O(e),1)]),_:2},1024))),128))]),_:2},1024)]),z(A(AD),{justify:`end`,class:`roles-buttons-block`},{default:M(()=>[e.roles?.includes(`author`)?(I(),Sa(A(nT),{key:1,onClick:t=>o(e.id,`author`)},{default:M(()=>[...t[2]||=[B(`Забрать роль автора`,-1)]]),_:1},8,[`onClick`])):(I(),Sa(A(nT),{key:0,onClick:t=>a(e.id,`author`)},{default:M(()=>[...t[1]||=[B(`Сделать автором`,-1)]]),_:1},8,[`onClick`])),e.roles?.includes(`organizer`)?(I(),Sa(A(nT),{key:3,onClick:t=>o(e.id,`organizer`)},{default:M(()=>[...t[4]||=[B(`Забрать роль организатора`,-1)]]),_:1},8,[`onClick`])):(I(),Sa(A(nT),{key:2,onClick:t=>a(e.id,`organizer`)},{default:M(()=>[...t[3]||=[B(`Сделать организатором`,-1)]]),_:1},8,[`onClick`]))]),_:2},1024)]))),128))])]),z(jN,{active:`users`})],64))}}),[[`__scopeId`,`data-v-b07aea1d`]]),yF=P({__name:`UsersView`,setup(e){return(e,t)=>(I(),Sa(vF))}}),bF={class:`center-block-custom`},xF={class:`width1200 display-table`},SF=[`onClick`],CF={class:`scenario-content-block`},wF={class:`scenario-title`},TF={class:`scenario-description`},EF={class:`scenario-label`},DF=AN(P({__name:`CatalogPage`,setup(e){let t=LM(),n=k([]),r=qA();async function i(){n.value=[];let e=await t.GetScenariosCatalog({});n.value=e.scenarios}async function a(e){r.push(`/scenarios/`+e)}return i(),(e,t)=>(I(),L(F,null,[R(`div`,bF,[R(`div`,xF,[(I(!0),L(F,null,Zr(n.value,e=>(I(),L(`div`,{class:`scenario-block`,onClick:t=>a(e.id),key:e.id},[R(`div`,{class:`scenario-image-block scenario-image`,style:fe({backgroundImage:`url(${e.image})`})},null,4),R(`div`,CF,[R(`p`,wF,O(e.name),1),R(`p`,TF,O(e.description),1),R(`p`,EF,[z(A(RC),{bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[B(`Автор: `+O(e.author?.username),1)]),_:2},1024)])])],8,SF))),128))])]),z(jN,{active:`catalog`})],64))}}),[[`__scopeId`,`data-v-40f12db0`]]),OF=P({__name:`CatalogView`,setup(e){return(e,t)=>(I(),Sa(DF))}}),kF={class:`center-block-custom`},AF={class:`width700`},jF={class:`scenario-title`},MF=[`src`],NF={class:`scenario-description`},PF={class:`scenario-author`},FF=AN(P({__name:`ScenarioPage`,setup(e){let t=$E(),n=LM(),r=JA().params.id,i=k({id:void 0,name:void 0,story:void 0,author:void 0,status:void 0,updatedAt:void 0,createdAt:void 0,publishedAt:void 0});async function a(e){let r=await n.GetScenario({id:e});if(r.error!=``){t.error(r.error);return}i.value=r.scenario}return a(Number(r)),(e,t)=>(I(),L(F,null,[R(`div`,kF,[R(`div`,AF,[R(`div`,jF,O(i.value.name),1),R(`img`,{class:`scenario-image`,src:i.value.image},null,8,MF),R(`div`,NF,O(i.value.description),1),R(`div`,PF,[z(A(RC),{bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[B(`Автор: `+O(i.value.author?.username),1)]),_:1})])])]),z(jN,{active:`catalog`})],64))}}),[[`__scopeId`,`data-v-aa5857fa`]]),IF=P({__name:`ScenarioView`,setup(e){return(e,t)=>(I(),Sa(FF))}}),LF={class:`center-block-custom`},RF={class:`width1200`},zF={class:`settings-block`},BF={class:`team-block`},VF={class:`team-content-block`},HF={class:`title-block`},UF={class:`team-name-block`},WF={class:`qr-block`},GF=AN(P({__name:`GamePage`,setup(e){let t=LM(),n=qA(),r=JA().params.id,i=$E(),a=k(!1),o=k(!1),s=k(!1),c=k(!1),l=k(``),u=k(!1),d=k(``),f=k({id:void 0,name:void 0,description:void 0,startAt:void 0,status:void 0,scenario:void 0,teams:void 0});async function p(e){let n=await t.GetGame({id:e});if(n.error!=``){i.error(n.error);return}f.value=n.game}p(Number(r));async function m(e,t){n.push(`/team-story/`+e+`?password=`+t)}async function h(){let e=await t.UpdateGame({id:f.value.id,name:f.value.name,description:f.value.description,startAt:f.value.startAt,scenarioId:f.value.scenario?.id});if(e.error!=``){i.error(e.error);return}await p(f.value.id),a.value=!1}let g=k({id:0,name:``,status:``,password:``,actionsCount:0,applications:[]}),_=k(``),v=k({id:0,name:``,status:``,password:``,actionsCount:0,applications:[]}),y=k({name:``,image:``});function b(e,t){g.value=e,y.value=t,o.value=!0}async function x(){let e=await t.AddTeam({gameId:f.value.id,name:l.value});if(e.error!=``){i.error(e.error);return}await p(f.value.id),s.value=!1}async function S(){let e=await t.GiveTeamApplications({id:g.value.id,name:y.value.name});if(e.error!=``){i.error(e.error);return}await p(f.value.id),o.value=!1}async function C(e){v.value=e,c.value=!0}async function w(){let e=await t.DeleteTeam({id:v.value.id});if(e.error!=``){i.error(e.error);return}await p(f.value.id),c.value=!1}function T(e,t){return FM()+`/team-story/`+e+`?password=`+t}async function ee(e){d.value=e,u.value=!0}return(e,t)=>(I(),L(F,null,[R(`div`,LF,[R(`div`,RF,[R(`div`,zF,[B(` Команд: `+O(f.value.teams?.length)+` `,1),z(A(nT),{quaternary:``,onClick:t[0]||=e=>a.value=!0,class:`settings-button`},{default:M(()=>[z(A(EN),{class:`settings-icon`},{default:M(()=>[z(A(uP))]),_:1}),t[20]||=B(` Настройки `,-1)]),_:1})]),R(`div`,{class:`team-block team-block-hover`,onClick:t[1]||=e=>s.value=!0},[...t[21]||=[R(`p`,{class:`place-image-plus`},`+`,-1)]]),(I(!0),L(F,null,Zr(f.value.teams,e=>(I(),L(`div`,BF,[R(`div`,VF,[R(`div`,HF,[R(`span`,UF,O(e.name),1),R(`div`,null,` Поездки: `+O(e.actionsCount),1)]),z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t=>ee(T(e.id,e.password))},{default:M(()=>[...t[22]||=[B(` QR `,-1)]]),_:1},8,[`onClick`]),z(A(nT),{onClick:t=>m(e.id,e.password)},{default:M(()=>[...t[23]||=[B(` Подсмотреть игру `,-1)]]),_:1},8,[`onClick`]),z(A(nT),{type:`error`,ghost:``,onClick:t=>C(e)},{default:M(()=>[...t[24]||=[B(` Удалить `,-1)]]),_:1},8,[`onClick`])]),_:2},1024),(I(!0),L(F,null,Zr(e.applications,t=>(I(),Sa(A(nT),{key:t.name,class:`link-button`,onClick:n=>b(e,t)},{default:M(()=>[B(` Выдать: `+O(t.name),1)]),_:2},1032,[`onClick`]))),128))])]))),256))])]),z(A(RE),{show:a.value,"onUpdate:show":t[6]||=e=>a.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Настройки игры`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:t[2]||=e=>a.value=!1},{default:M(()=>[...t[25]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t[5]||=e=>h(),ghost:``},{default:M(()=>[...t[28]||=[B(` Сохранить изменения `,-1)]]),_:1})]),_:1})]),default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[t[26]||=R(`p`,null,`Название`,-1),z(A(yw),{value:f.value.name,"onUpdate:value":t[3]||=e=>f.value.name=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),t[27]||=R(`p`,{class:`settings-header`},`Описание`,-1),z(A(yw),{value:f.value.description,"onUpdate:value":t[4]||=e=>f.value.description=e,type:`textarea`,placeholder:`Убийство пастуха...`},null,8,[`value`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(A(RE),{show:o.value,"onUpdate:show":t[9]||=e=>o.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Настройки игры`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:t[7]||=e=>o.value=!1},{default:M(()=>[...t[29]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t[8]||=e=>S(),ghost:``},{default:M(()=>[...t[32]||=[B(` Выдать `,-1)]]),_:1})]),_:1})]),default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[t[30]||=R(`p`,null,`Команда`,-1),R(`h3`,null,O(g.value.name),1),t[31]||=R(`p`,null,`Улика`,-1),R(`h3`,null,O(y.value.name),1)]),_:1})]),_:1})]),_:1},8,[`show`]),z(A(RE),{show:s.value,"onUpdate:show":t[13]||=e=>s.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Создание команды`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:t[10]||=e=>s.value=!1},{default:M(()=>[...t[33]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t[12]||=e=>x(),disabled:l.value.length==0},{default:M(()=>[...t[34]||=[B(` Создать `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(yw),{value:l.value,"onUpdate:value":t[11]||=e=>l.value=e,type:`text`,placeholder:`Три дебила`},null,8,[`value`])]),_:1})]),_:1},8,[`show`]),z(A(RE),{show:c.value,"onUpdate:show":t[17]||=e=>c.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Удаление команды`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:t[14]||=e=>c.value=!1},{default:M(()=>[...t[35]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:t[16]||=e=>w(),disabled:_.value!=v.value.name},{default:M(()=>[...t[38]||=[B(` Удалить `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[R(`p`,null,[t[36]||=B(` Введите название команды `,-1),z(A(Zk),{class:`name-text`,strong:``},{default:M(()=>[B(O(v.value.name),1)]),_:1}),t[37]||=B(` чтобы удалить его `,-1)]),z(A(yw),{value:_.value,"onUpdate:value":t[15]||=e=>_.value=e,type:`text`,placeholder:`Три дебила`},null,8,[`value`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(A(RE),{show:u.value,"onUpdate:show":t[19]||=e=>u.value=e},{default:M(()=>[z(A(bT),{style:{width:`600px`},title:`Подсмотреть игру`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A(nT),{onClick:t[18]||=e=>u.value=!1},{default:M(()=>[...t[39]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[...t[40]||=[]]),default:M(()=>[z(A(CD),{vertical:``},{default:M(()=>[R(`div`,WF,[z(A(Mk),{value:d.value,size:300,padding:0},null,8,[`value`])])]),_:1})]),_:1})]),_:1},8,[`show`]),z(jN,{active:`games`})],64))}}),[[`__scopeId`,`data-v-f1807272`]]),KF=P({__name:`GameView`,setup(e){return(e,t)=>(I(),Sa(GF))}}),qF={},JF={class:`belt-block`};function YF(e,t){return I(),L(`div`,null,[t[0]||=R(`div`,{class:`shadow shadow-top`},null,-1),t[1]||=R(`div`,{class:`shadow shadow-bottom`},null,-1),R(`div`,JF,[Qr(e.$slots,`default`,{},void 0,!0)])])}var XF=AN(qF,[[`render`,YF],[`__scopeId`,`data-v-0effe39e`]]),ZF={},QF={class:`plate-block`},$F={class:`metal-plate-block`};function eI(e,t){return I(),L(`div`,QF,[R(`div`,$F,[Qr(e.$slots,`default`,{},void 0,!0)]),t[0]||=R(`div`,{class:`pin pin-top-left`},null,-1),t[1]||=R(`div`,{class:`pin pin-top-right`},null,-1),t[2]||=R(`div`,{class:`pin pin-bottom-right`},null,-1),t[3]||=R(`div`,{class:`pin pin-bottom-left`},null,-1)])}var tI=AN(ZF,[[`render`,eI],[`__scopeId`,`data-v-34e952c0`]]),nI={class:`text-with-font`},rI=AN(P({__name:`HeaderText`,setup(e){return(e,t)=>(I(),L(`span`,nI,[Qr(e.$slots,`default`,{},void 0,!0)]))}}),[[`__scopeId`,`data-v-e13ee3bd`]]),iI={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 512 512`},aI=P({name:`Footsteps`,render:function(e,t){return I(),L(`svg`,iI,t[0]||=[R(`path`,{d:`M133.83 361.27c-22.61 0-41-8.17-54.79-24.39s-22.84-40.29-28.11-75.31c-7.76-51.61-.06-95.11 21.68-122.48c12.8-16.12 29.6-25.44 48.58-26.94c16.25-1.3 40.54 5.29 64 44c14.69 24.24 25.86 56.44 30.65 88.34c5.79 38.51 1.48 66.86-13.18 86.65c-11.64 15.72-29.54 25.46-53.21 29a106.46 106.46 0 0 1-15.62 1.13z`,fill:`currentColor`},null,-1),R(`path`,{d:`M173 496c-13.21 0-26.6-4.23-38.66-12.36a79.79 79.79 0 0 1-33.52-50.6c-2.85-14.66-1.14-26.31 5.22-35.64c10.33-15.15 28.87-18.56 48.49-22.18c2.07-.38 4.17-.76 6.3-1.17c4.52-.86 9.14-2 13.62-3.11c16.78-4.14 34.14-8.43 48.47 1.75c9.59 6.8 15 18.36 16.62 35.32c1.84 19.57-2.36 39.1-11.83 55c-10.19 17.11-25.47 28.42-43 31.86A61 61 0 0 1 173 496z`,fill:`currentColor`},null,-1),R(`path`,{d:`M378.17 265.27a106.69 106.69 0 0 1-15.6-1.2c-23.66-3.5-41.56-13.25-53.2-29c-14.66-19.79-19-48.13-13.18-86.65c4.79-31.93 15.93-64.1 30.55-88.25c23.34-38.57 47.66-45.26 64-44.08c18.92 1.38 35.69 10.57 48.51 26.6c21.89 27.37 29.65 71 21.86 122.84c-5.27 35-14.2 58.95-28.11 75.31s-32.22 24.43-54.83 24.43z`,fill:`currentColor`},null,-1),R(`path`,{d:`M339 400a61 61 0 0 1-11.68-1.13c-17.56-3.44-32.84-14.75-43-31.86c-9.47-15.9-13.67-35.43-11.83-55c1.6-17 7-28.52 16.62-35.33c14.33-10.17 31.69-5.89 48.47-1.74c4.48 1.1 9.1 2.24 13.62 3.11l6.29 1.17c19.63 3.61 38.17 7 48.5 22.17c6.36 9.33 8.07 21 5.22 35.64a79.78 79.78 0 0 1-33.52 50.61C365.56 395.78 352.17 400 339 400z`,fill:`currentColor`},null,-1)])}}),oI={class:`form-custom`},sI={class:`center-block-700`},cI={class:`controller`},lI={class:`counters-block`},uI={class:`counter-block`},dI={class:`places-text`},fI={class:`places-text places-text-number`},pI={class:`counter-block`},mI={class:`places-text`},hI={class:`places-text places-text-number`},gI={class:`game-input`},_I=[`disabled`],vI=AN(P({__name:`GameInputForm`,props:{addAction:{type:Function,required:!0},allPlacesCount:{type:Number,required:!0},newPlacesCount:{type:Number,required:!0}},setup(e){let t=k(``),n=e;async function r(){await n.addAction(t.value),t.value=``}function i(e){e%=100;let t=Math.floor(e/10)%10,n=e%10,r=`–`,i=`–`;return t>0&&(r=String(t)),(n>0||t>0)&&(i=String(n)),[r,i]}return(n,a)=>(I(),L(`div`,oI,[z(XF,{class:`input-form`},{default:M(()=>[z(tI,{class:`controller-metal controller-metal-left`}),z(tI,{class:`controller-metal controller-metal-right`}),R(`div`,sI,[R(`div`,cI,[R(`div`,lI,[R(`div`,uI,[R(`div`,dI,[z(A(EN),{class:`icon-for-counter`},{default:M(()=>[z(A(aI))]),_:1})]),(I(!0),L(F,null,Zr(i(e.allPlacesCount),e=>(I(),L(`div`,fI,O(e),1))),256))]),R(`div`,pI,[R(`div`,mI,[z(A(EN),{class:`icon-for-counter`},{default:M(()=>[z(A(VM))]),_:1})]),(I(!0),L(F,null,Zr(i(e.newPlacesCount),e=>(I(),L(`div`,hI,O(e),1))),256))])]),R(`div`,gI,[Vn(R(`input`,{id:`run`,class:`game-input-run`,"onUpdate:modelValue":a[0]||=e=>t.value=e,type:`text`,placeholder:`Место назначения`},null,512),[[Es,t.value]])]),a[2]||=R(`div`,{class:`game-button-run-shadow`},null,-1),R(`button`,{class:`game-button-run`,type:`submit`,disabled:t.value.length==0,onClick:r},[z(rI,null,{default:M(()=>[...a[1]||=[B(`Поехали`,-1)]]),_:1})],8,_I)])])]),_:1})]))}}),[[`__scopeId`,`data-v-6e0e0fb9`]]);function yI(e,t=5e3){let n=k(!0),r=null,i=()=>{n.value=!0,e(),r=window.setInterval(e,t)},a=()=>{n.value=!1,r&&=(clearInterval(r),null)};return Vr(i),Gr(a),{isActive:n,start:i,stop:a}}var bI={class:`width700`},xI={key:0,class:`edit-panel`},SI=AN(P({__name:`TeamStoryPage`,setup(e){let t=IM(),n=LM(),r=$E(),i=JA(),a=i.params.id,o=i.query.password,s=k(0),c=k(),l=k({places:[]}),u=k({id:void 0,name:void 0,description:void 0,startAt:void 0,status:void 0,scenario:void 0,teams:void 0}),d=k(``),f=()=>{let e=c.value;return e?e.scrollHeight-e.scrollTop-e.clientHeight<1:!1};async function p(){let e=l.value,t=await n.GetTeamStory({id:Number(a),password:o});if(t.error!=``){r.error(t.error);return}u.value=t.game;let i=f();i&&(s.value=0);let d=l.value.places.length;l.value={places:t.story.places?.map((t,n)=>(console.log(e?.places[n]?.mode),{place:t,mode:e?.places[n]?.mode||`show`}))||[]};let p=l.value.places.length;if(p>d&&d!=0&&(s.value+=p-d),await kn(),i&&d!=0){let e=c.value;if(!e)return!1;e.scrollTop=e.scrollHeight}}p();async function m(e){let t=await n.AddTeamAction({id:Number(a),password:o,code:e});if(t.error!=``){r.error(t.error);return}await p(),d.value=``,await kn(),s.value=0}async function h(){let e=await n.DeleteLastTeamAction({id:Number(a)});if(e.error!=``){r.error(e.error);return}await p(),d.value=``}return yI(()=>{p()},2e3),(e,n)=>(I(),L(F,null,[R(`div`,{class:`center-block-custom bottom-margin smooth-scroll`,ref_key:`scrollContainer`,ref:c},[R(`div`,bI,[z(vI,{addAction:m,allPlacesCount:l.value.places.length,newPlacesCount:s.value},null,8,[`allPlacesCount`,`newPlacesCount`]),(I(!0),L(F,null,Zr(l.value.places,e=>(I(),Sa(YP,{place:e.place,mode:e.mode,"onUpdate:mode":t=>e.mode=t,key:e.place.code,addAction:m},null,8,[`place`,`mode`,`onUpdate:mode`]))),128)),A(t).hasRole(`author`)?(I(),L(`div`,xI,[z(A(AD),{justify:`end`},{default:M(()=>[z(A(nT),{onClick:h},{default:M(()=>[...n[0]||=[B(`Удалить последний ход`,-1)]]),_:1})]),_:1})])):Aa(``,!0)])],512),z(jN,{active:`games`})],64))}}),[[`__scopeId`,`data-v-c92c3497`]]),CI=P({__name:`TeamStoryView`,setup(e){return(e,t)=>(I(),Sa(SI))}}),wI=AM({history:Qj(`/`),routes:[{path:`/`,name:`home`,component:zN},{path:`/login`,name:`login`,component:tP},{path:`/office`,name:`office`,component:aP},{path:`/user-agreement`,name:`user-agreement`,component:fF},{path:`/privacy-policy`,name:`privacy-policy`,component:cP},{path:`/games`,name:`games`,component:RN},{path:`/games/:id`,name:`game`,component:KF},{path:`/team-story/:id`,name:`team-story`,component:CI},{path:`/scenarios`,name:`scenarios`,component:lF},{path:`/catalog`,name:`catalog`,component:OF},{path:`/scenarios/:id/editor`,name:`scenario-editor`,component:tF},{path:`/scenarios/:id`,name:`scenario`,component:IF},{path:`/users`,name:`users`,component:yF}]}),TI=As(jM);TI.use(Zs()),TI.use(wI),TI.mount(`#app`); \ No newline at end of file diff --git a/dist/assets/index-CX_1-5F4.css b/dist/assets/index-sUhe8JqG.css similarity index 71% rename from dist/assets/index-CX_1-5F4.css rename to dist/assets/index-sUhe8JqG.css index 2dd2842..a8bbbde 100644 --- a/dist/assets/index-CX_1-5F4.css +++ b/dist/assets/index-sUhe8JqG.css @@ -1 +1 @@ -:root{--vt-c-white:#fff;--vt-c-white-soft:#f8f8f8;--vt-c-white-mute:#f2f2f2;--vt-c-black:#181818;--vt-c-black-soft:#222;--vt-c-black-mute:#282828;--vt-c-indigo:#2c3e50;--vt-c-divider-light-1:#3c3c3c4a;--vt-c-divider-light-2:#3c3c3c1f;--vt-c-divider-dark-1:#545454a6;--vt-c-divider-dark-2:#5454547a;--vt-c-text-light-1:var(--vt-c-indigo);--vt-c-text-light-2:#3c3c3ca8;--vt-c-text-dark-1:var(--vt-c-white);--vt-c-text-dark-2:#ebebeba3;--main-color:#22323c;--second-color:#614a16;--main-back-color:#f0f0f0;--main-back-item-color:#fefefe;--color-background:var(--vt-c-white);--color-background-soft:var(--vt-c-white-soft);--color-background-mute:var(--vt-c-white-mute);--color-border:var(--vt-c-divider-light-2);--color-border-hover:var(--vt-c-divider-light-1);--color-heading:var(--vt-c-text-light-1);--color-text:var(--vt-c-text-light-1);--section-gap:160px}@media (prefers-color-scheme:dark){:root{--color-background:var(--vt-c-black);--color-background-soft:var(--vt-c-black-soft);--color-background-mute:var(--vt-c-black-mute);--color-border:var(--vt-c-divider-dark-2);--color-border-hover:var(--vt-c-divider-dark-1);--color-heading:var(--vt-c-text-dark-1);--color-text:var(--vt-c-text-dark-2)}}*,:before,:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:#eee;background:var(--color-background);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-width:none;background-color:#111;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;line-height:1.6;transition:color .5s,background-color .5s;overflow:hidden}@font-face{font-family:font_old_typer;src:url(/assets/a_OldTyper-BsgRTrmO.ttf)}.height80{height:80vh}.content-block{margin-top:70px}.center-block-custom{scrollbar-width:none;height:calc(100vh - 150px);margin-top:70px;overflow-y:auto}.center-block-custom::-webkit-scrollbar{display:none}.width700,.width1200{margin:0 auto;padding:10px}.display-table{flex-flow:wrap;justify-content:center;display:flex}@media (width>=1024px){.center-block-custom{height:calc(100dvh - 70px);margin:70px auto 0}.width700{width:700px;margin:0 auto;padding:20px}.width1200{width:1200px;margin:0 auto;padding:20px}.center-middle-block-custom{place-items:center;display:grid}}.menu-block[data-v-5e423637]{background-color:#222;justify-content:space-between;align-items:center;width:100%;height:70px;padding:20px;display:flex;position:fixed;top:0;left:0}.menu-item-block[data-v-5e423637]{cursor:pointer;margin-left:10px;padding:5px;font-size:1.1em;display:inline-block}.menu-item-block[data-v-5e423637]:hover{color:#63e2b7;opacity:.8}.right[data-v-5e423637]{margin-left:auto}.active[data-v-5e423637]{color:#63e2b7}@media (width>=1024px){.burger-button[data-v-5e423637]{display:none}}@media (width<1024px){.menu-buttons-block[data-v-5e423637]{background-color:#222;flex-direction:column;width:100%;padding-bottom:5px;display:flex;position:fixed;top:70px;left:0}.menu-buttons-block div[data-v-5e423637]{padding:15px 5px}.menu-buttons-block-active[data-v-5e423637]{position:relative;top:-1000px}.burger-icon[data-v-5e423637]{position:relative;top:5px}}.game-block[data-v-c7afa62c]{border:1px solid #444;border-radius:10px;margin:10px 0;padding:20px}.game-block[data-v-c7afa62c]:hover{cursor:pointer;color:#63e2b7}.game-title[data-v-c7afa62c]{margin-bottom:10px;font-size:24px}.game-description[data-v-c7afa62c]{color:#aaa;margin-bottom:10px}.font-text{font-family:font_old_typer}.content-text{float:right;position:relative;top:100px;right:0}@media (width>=1024px){.font-text{position:relative;left:-50px}.content-text{position:relative;top:100px;right:-50px}}.sign-card[data-v-c1fd645b]{background-color:#1d1d1d}.form-label[data-v-c1fd645b]{margin-top:10px}.form-button-wrapper[data-v-c1fd645b]{justify-content:center;display:flex}.docs-link[data-v-c1fd645b]{color:#45aa89}.docs-link[data-v-c1fd645b]:hover{color:#63e2b7}@media (width>=1024px){.sign-card[data-v-c1fd645b]{width:380px}}.main[data-v-dfe3093b]{position:relative}.message-cloud[data-v-dfe3093b],.message-cloud-2[data-v-dfe3093b],.message-cloud-3[data-v-dfe3093b]{background-color:bisque}.message-cloud[data-v-dfe3093b]{color:#000;margin:15px 0;padding:16px;font-family:main;font-size:18px;font-weight:900;line-height:20px;position:relative}.message-cloud[data-v-dfe3093b],.message-cloud-2[data-v-dfe3093b],.message-cloud-3[data-v-dfe3093b]{background-image:url(/assets/paper-CuqvoKhN.jpg);background-size:cover;border-radius:5px;display:flow-root;box-shadow:0 0 5px #000}.message-cloud-2[data-v-dfe3093b],.message-cloud-3[data-v-dfe3093b]{position:absolute;top:0;left:0}.message-cloud-2[data-v-dfe3093b]{filter:brightness(50%);width:100%;height:100%;transform:rotate(-3deg)}.message-cloud-3[data-v-dfe3093b]{filter:brightness(80%);width:100%;height:100%;transform:rotate(2deg)}.hr[data-v-60b29dfb]{border:1px dashed #eee;margin:10px 0}.place-block-hover[data-v-60b29dfb],.place-block[data-v-60b29dfb]{border:1px solid #444;border-radius:10px;margin:10px 0;padding:20px}.place-block-hover[data-v-60b29dfb]:hover{color:#63e2b7;cursor:pointer;border:1px solid #63e2b7}.place-image-plus[data-v-60b29dfb]{justify-content:center;align-items:center;font-size:30px;display:flex}.show-editor-block[data-v-60b29dfb]{cursor:pointer}.message-content[data-v-60b29dfb]{white-space:pre-wrap;font-weight:500}.gray-block[data-v-60b29dfb]{color:#777;margin-top:5px}.application-block[data-v-60b29dfb]{color:#deb887;margin-right:5px}.door-block[data-v-60b29dfb]{color:#eee;background-color:#222;border-radius:5px;margin:10px 5px 10px 0;padding:5px 10px;display:inline-block}.door-add-block[data-v-60b29dfb]{color:#eee;background-color:#222;border-radius:5px;padding:10px}.key-block[data-v-60b29dfb]{color:gold;margin-left:10px}.lock-icon[data-v-60b29dfb]{position:relative;top:2px}.door-field[data-v-60b29dfb]{margin-top:10px}.need-keys-text[data-v-60b29dfb]{color:gold;margin:15px 0 0;padding:0}.slot-block[data-v-60b29dfb]{margin-top:10px}.plus-minus-buttons[data-v-60b29dfb]{text-align:center;color:#eee;border:1px solid #444;border-radius:40px;margin:0 0 10px 5px;padding:0 13px;font-size:25px}.plus-minus-buttons[data-v-60b29dfb]:hover{cursor:pointer;color:#63e2b7}.message-image-border[data-v-60b29dfb]{float:left;background-image:url(/assets/paper_white-ZSlTzOTx.jpg);background-size:cover;width:40%;max-width:200px;margin-right:15px;padding:7px;transform:rotate(-3deg);box-shadow:0 3px 15px #626262}.message-image[data-v-60b29dfb]{width:100%}.message-edit-image[data-v-60b29dfb]{width:135px;height:135px}.message-header[data-v-60b29dfb]{padding-right:50px;font-size:20px}.message-footer[data-v-60b29dfb]{color:#deb887;padding-right:50px;font-weight:400;position:relative}.message-show-header[data-v-60b29dfb]{padding-right:50px;font-size:20px}.collapse-icon[data-v-60b29dfb]{cursor:pointer;background-image:url(/assets/collapse-B6YzUtGl.png);background-position:50%;background-size:cover;width:45px;height:28px;position:absolute;top:12px;right:12px}.collapse-icon-up[data-v-60b29dfb]{transform:rotate(-180deg)}.show-hr[data-v-60b29dfb]{border:1px dashed #000;margin:10px 0}.font[data-v-60b29dfb]{font-family:font_old_typer;font-size:18px}.message-show-content[data-v-60b29dfb]{white-space:pre-wrap;font-weight:500}.message-show-footer[data-v-60b29dfb]{color:var(--second-color);padding-right:50px;font-weight:400;position:relative}.button-dialog[data-v-60b29dfb]{color:#bfa07d;cursor:pointer;background-image:url(/assets/belt-DVqk2_uL.png);background-size:cover;border-radius:5px;margin-top:10px;margin-right:10px;font-size:16px;font-weight:600;display:inline-block}.button-dialog-text[data-v-60b29dfb]{padding:5px 12px}.settings-block[data-v-e4c92d18]{height:40px}.settings-button[data-v-e4c92d18]{float:right}.settings-icon[data-v-e4c92d18]{width:20px}.name-text[data-v-e4c92d18]{background-color:#ffffff1a;border-radius:3px;padding:3px}.settings-header[data-v-e4c92d18]{margin-top:20px}.settings-hr[data-v-e4c92d18]{margin:20px 0}.places-container[data-v-e4c92d18]{flex-flow:column;display:flex}.scenario-block[data-v-12737793]{cursor:pointer;background-color:#333;border:2px solid #333;border-radius:12px;width:160px;height:300px;margin:10px;position:relative}.scenario-content-block[data-v-12737793]{padding:2px 10px}.scenario-block[data-v-12737793]:hover{color:#63e2b7;border:2px solid #63e2b7}.scenario-image-block[data-v-12737793]{background-color:#111;border-radius:10px;height:160px}.scenario-image-plus[data-v-12737793]{background-color:#111;justify-content:center;align-items:center;font-size:120px;display:flex}.scenario-image[data-v-12737793]{background-position:50%;background-size:cover}.scenario-title[data-v-12737793]{padding:5px 0}.status-block[data-v-12737793]{position:absolute;bottom:15px;right:15px}@media (width>=1024px){.scenario-block[data-v-12737793]{width:250px;height:400px}.scenario-image-block[data-v-12737793]{height:250px}.scenario-content-block[data-v-12737793]{padding:4px 10px}}.user-block[data-v-b07aea1d]{border:1px solid #444;border-radius:10px;margin:0 0 20px;padding:20px}.user-field[data-v-b07aea1d]{margin:10px}.roles-buttons-block[data-v-b07aea1d]{margin-top:20px}.scenario-block[data-v-40f12db0]{cursor:pointer;background-color:#333;border:2px solid #333;border-radius:12px;width:160px;height:300px;margin:10px;position:relative}.scenario-content-block[data-v-40f12db0]{padding:2px 10px}.scenario-block[data-v-40f12db0]:hover{color:#63e2b7;border:2px solid #63e2b7}.scenario-image-block[data-v-40f12db0]{background-color:#111;border-radius:10px;height:160px}.scenario-image[data-v-40f12db0]{background-position:50%;background-size:cover}.scenario-title[data-v-40f12db0]{padding:5px 0}.scenario-description[data-v-40f12db0]{color:#aaa;display:none}.status-block[data-v-40f12db0]{position:absolute;bottom:15px;right:15px}@media (width>=1024px){.scenario-block[data-v-40f12db0]{width:250px;height:400px}.scenario-image-block[data-v-40f12db0]{height:250px}.scenario-content-block[data-v-40f12db0]{padding:4px 10px}.scenario-description[data-v-40f12db0]{color:#aaa;display:block}}.scenario-title[data-v-aa5857fa]{margin-bottom:10px;font-size:24px}.scenario-image[data-v-aa5857fa]{width:100%;max-width:400px;margin-bottom:10px}.scenario-description[data-v-aa5857fa]{color:#aaa;margin-bottom:10px}.team-block[data-v-2a935bdf]{border:1px solid #444;border-radius:10px;margin:10px 0}.team-block-hover[data-v-2a935bdf]:hover{color:#63e2b7;cursor:pointer;border:1px solid #63e2b7}.team-content-block[data-v-2a935bdf]{padding:20px}.team-name-block[data-v-2a935bdf]{font-size:20px;font-weight:600}.settings-block[data-v-2a935bdf]{height:40px}.settings-button[data-v-2a935bdf]{float:right}.settings-icon[data-v-2a935bdf]{width:20px}.title-block[data-v-2a935bdf]{margin-bottom:20px}.link-button[data-v-2a935bdf]{width:100%;margin-top:20px}.place-image-plus[data-v-2a935bdf]{justify-content:center;align-items:center;font-size:30px;display:flex}.name-text[data-v-2a935bdf]{background-color:#ffffff1a;border-radius:3px;padding:3px}.belt-block[data-v-0effe39e]{background-color:#000;background-image:url(/assets/belt-DVqk2_uL.png);background-size:cover;height:100%;position:relative}.shadow[data-v-0effe39e]{background-color:#000;width:100%;height:10px;position:absolute}.shadow-top[data-v-0effe39e]{top:0;box-shadow:0 -5px 10px #000}.shadow-bottom[data-v-0effe39e]{bottom:0;box-shadow:0 5px 10px #000}.plate-block[data-v-34e952c0]{position:relative;box-shadow:0 0 10px #000}.metal-plate-block[data-v-34e952c0]{background-image:url(/assets/metal-BiL2PH1r.png);background-size:cover;border-radius:4px;height:100%;position:relative}.pin[data-v-34e952c0]{background-image:url(/assets/pin-CJfldk-j.png);background-size:cover;width:7px;height:7px;position:absolute}.pin-top-left[data-v-34e952c0]{top:3px;left:3px}.pin-top-right[data-v-34e952c0]{top:3px;right:3px}.pin-bottom-right[data-v-34e952c0]{bottom:3px;right:3px}.pin-bottom-left[data-v-34e952c0]{bottom:3px;left:3px}.text-with-font[data-v-e13ee3bd]{color:#bfa07d;letter-spacing:2px;font-family:font_old_typer;font-size:22px;font-weight:600;line-height:20px}.form-custom[data-v-6e0e0fb9]{color:#fff;z-index:1000;width:100%;position:fixed;bottom:0;left:0}.input-form[data-v-6e0e0fb9]{z-index:1000;max-width:1920px;height:76px;margin:0 auto;position:relative}.controller-metal[data-v-6e0e0fb9]{width:30px;height:calc(100% + 2px);position:absolute;top:-1px}.controller-metal-left[data-v-6e0e0fb9]{left:-30px}.controller-metal-right[data-v-6e0e0fb9]{right:-30px}.controller[data-v-6e0e0fb9]{display:flex;position:relative}.game-input[data-v-6e0e0fb9]{width:calc(100% - 175px);height:50px;position:relative;top:14px;left:15px}.game-input-run[data-v-6e0e0fb9]{background-color:#0000;background-image:url(/assets/input_center-DZZtEHaZ.png);background-size:cover;border:0;width:100%;height:100%;padding-left:27px;font-family:font_old_typer;font-size:18px}.game-input-run[data-v-6e0e0fb9]::placeholder{color:#333}.game-input-run[data-v-6e0e0fb9]:focus{border:0;outline:none}.game-button-run-shadow[data-v-6e0e0fb9]{width:150px;height:80px;position:absolute;top:-5px;right:10px;box-shadow:-5px 5px 10px #000}.game-button-run[data-v-6e0e0fb9]{cursor:pointer;background-color:#0000;background-image:url(/assets/button-DdziMEJE.png);background-size:cover;border:0;width:155px;height:80px;margin:0;padding:0;font-size:1.5em;position:absolute;top:-5px;right:10px}.new-places-label[data-v-6e0e0fb9],.all-places-label[data-v-6e0e0fb9]{height:48px;position:absolute}.new-places-label[data-v-6e0e0fb9]{width:40px;top:14px;left:85px}.all-places-label[data-v-6e0e0fb9]{width:60px;top:14px;left:15px}.places-text[data-v-6e0e0fb9]{color:#111;text-align:center;background-color:#d1cebd;background-image:url(/assets/paper-CuqvoKhN.jpg);background-size:cover;border:1px solid #9e9982;border-radius:7px;margin:0 1px;font-family:font_old_typer;font-size:1.4em;display:inline-block;box-shadow:0 -2px 5px #000}.places-text-number[data-v-6e0e0fb9]{width:18px}.counters-block[data-v-6e0e0fb9]{margin:20px 10px 20px 5px;position:absolute;top:-40px;left:23px}.counter-block[data-v-6e0e0fb9]{margin:5px;display:inline-block}.icon-for-counter[data-v-6e0e0fb9]{margin:0 4px;position:relative;top:3px}@media (width>=1025px){.center-block-700[data-v-6e0e0fb9]{width:700px;margin:0 auto}}.bottom-margin[data-v-c92c3497]{height:calc(100dvh - 146px)}.smooth-scroll[data-v-c92c3497]{scroll-behavior:smooth}.edit-panel[data-v-c92c3497]{background-color:#222;border-radius:10px;margin:30px 0;padding:20px}@media (width>=1024px){.bottom-margin[data-v-c92c3497]{height:calc(100dvh - 146px)}} +:root{--vt-c-white:#fff;--vt-c-white-soft:#f8f8f8;--vt-c-white-mute:#f2f2f2;--vt-c-black:#181818;--vt-c-black-soft:#222;--vt-c-black-mute:#282828;--vt-c-indigo:#2c3e50;--vt-c-divider-light-1:#3c3c3c4a;--vt-c-divider-light-2:#3c3c3c1f;--vt-c-divider-dark-1:#545454a6;--vt-c-divider-dark-2:#5454547a;--vt-c-text-light-1:var(--vt-c-indigo);--vt-c-text-light-2:#3c3c3ca8;--vt-c-text-dark-1:var(--vt-c-white);--vt-c-text-dark-2:#ebebeba3;--main-color:#22323c;--second-color:#614a16;--main-back-color:#f0f0f0;--main-back-item-color:#fefefe;--color-background:var(--vt-c-white);--color-background-soft:var(--vt-c-white-soft);--color-background-mute:var(--vt-c-white-mute);--color-border:var(--vt-c-divider-light-2);--color-border-hover:var(--vt-c-divider-light-1);--color-heading:var(--vt-c-text-light-1);--color-text:var(--vt-c-text-light-1);--section-gap:160px}@media (prefers-color-scheme:dark){:root{--color-background:var(--vt-c-black);--color-background-soft:var(--vt-c-black-soft);--color-background-mute:var(--vt-c-black-mute);--color-border:var(--vt-c-divider-dark-2);--color-border-hover:var(--vt-c-divider-dark-1);--color-heading:var(--vt-c-text-dark-1);--color-text:var(--vt-c-text-dark-2)}}*,:before,:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:#eee;background:var(--color-background);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-width:none;background-color:#111;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;line-height:1.6;transition:color .5s,background-color .5s;overflow:hidden}@font-face{font-family:font_old_typer;src:url(/assets/a_OldTyper-BsgRTrmO.ttf)}.height80{height:80vh}.content-block{margin-top:70px}.center-block-custom{scrollbar-width:none;height:calc(100vh - 150px);margin-top:70px;overflow-y:auto}.center-block-custom::-webkit-scrollbar{display:none}.width700,.width1200{margin:0 auto;padding:10px}.display-table{flex-flow:wrap;justify-content:center;display:flex}@media (width>=1024px){.center-block-custom{height:calc(100dvh - 70px);margin:70px auto 0}.width700{width:700px;margin:0 auto;padding:20px}.width1200{width:1200px;margin:0 auto;padding:20px}.center-middle-block-custom{place-items:center;display:grid}}.menu-block[data-v-5e423637]{background-color:#222;justify-content:space-between;align-items:center;width:100%;height:70px;padding:20px;display:flex;position:fixed;top:0;left:0}.menu-item-block[data-v-5e423637]{cursor:pointer;margin-left:10px;padding:5px;font-size:1.1em;display:inline-block}.menu-item-block[data-v-5e423637]:hover{color:#63e2b7;opacity:.8}.right[data-v-5e423637]{margin-left:auto}.active[data-v-5e423637]{color:#63e2b7}@media (width>=1024px){.burger-button[data-v-5e423637]{display:none}}@media (width<1024px){.menu-buttons-block[data-v-5e423637]{background-color:#222;flex-direction:column;width:100%;padding-bottom:5px;display:flex;position:fixed;top:70px;left:0}.menu-buttons-block div[data-v-5e423637]{padding:15px 5px}.menu-buttons-block-active[data-v-5e423637]{position:relative;top:-1000px}.burger-icon[data-v-5e423637]{position:relative;top:5px}}.game-block[data-v-c7afa62c]{border:1px solid #444;border-radius:10px;margin:10px 0;padding:20px}.game-block[data-v-c7afa62c]:hover{cursor:pointer;color:#63e2b7}.game-title[data-v-c7afa62c]{margin-bottom:10px;font-size:24px}.game-description[data-v-c7afa62c]{color:#aaa;margin-bottom:10px}.font-text{font-family:font_old_typer}.content-text{float:right;position:relative;top:100px;right:0}@media (width>=1024px){.font-text{position:relative;left:-50px}.content-text{position:relative;top:100px;right:-50px}}.sign-card[data-v-c1fd645b]{background-color:#1d1d1d}.form-label[data-v-c1fd645b]{margin-top:10px}.form-button-wrapper[data-v-c1fd645b]{justify-content:center;display:flex}.docs-link[data-v-c1fd645b]{color:#45aa89}.docs-link[data-v-c1fd645b]:hover{color:#63e2b7}@media (width>=1024px){.sign-card[data-v-c1fd645b]{width:380px}}.main[data-v-dfe3093b]{position:relative}.message-cloud[data-v-dfe3093b],.message-cloud-2[data-v-dfe3093b],.message-cloud-3[data-v-dfe3093b]{background-color:bisque}.message-cloud[data-v-dfe3093b]{color:#000;margin:15px 0;padding:16px;font-family:main;font-size:18px;font-weight:900;line-height:20px;position:relative}.message-cloud[data-v-dfe3093b],.message-cloud-2[data-v-dfe3093b],.message-cloud-3[data-v-dfe3093b]{background-image:url(/assets/paper-CuqvoKhN.jpg);background-size:cover;border-radius:5px;display:flow-root;box-shadow:0 0 5px #000}.message-cloud-2[data-v-dfe3093b],.message-cloud-3[data-v-dfe3093b]{position:absolute;top:0;left:0}.message-cloud-2[data-v-dfe3093b]{filter:brightness(50%);width:100%;height:100%;transform:rotate(-3deg)}.message-cloud-3[data-v-dfe3093b]{filter:brightness(80%);width:100%;height:100%;transform:rotate(2deg)}.hr[data-v-60b29dfb]{border:1px dashed #eee;margin:10px 0}.place-block-hover[data-v-60b29dfb],.place-block[data-v-60b29dfb]{border:1px solid #444;border-radius:10px;margin:10px 0;padding:20px}.place-block-hover[data-v-60b29dfb]:hover{color:#63e2b7;cursor:pointer;border:1px solid #63e2b7}.place-image-plus[data-v-60b29dfb]{justify-content:center;align-items:center;font-size:30px;display:flex}.show-editor-block[data-v-60b29dfb]{cursor:pointer}.message-content[data-v-60b29dfb]{white-space:pre-wrap;font-weight:500}.gray-block[data-v-60b29dfb]{color:#777;margin-top:5px}.application-block[data-v-60b29dfb]{color:#deb887;margin-right:5px}.door-block[data-v-60b29dfb]{color:#eee;background-color:#222;border-radius:5px;margin:10px 5px 10px 0;padding:5px 10px;display:inline-block}.door-add-block[data-v-60b29dfb]{color:#eee;background-color:#222;border-radius:5px;padding:10px}.key-block[data-v-60b29dfb]{color:gold;margin-left:10px}.lock-icon[data-v-60b29dfb]{position:relative;top:2px}.door-field[data-v-60b29dfb]{margin-top:10px}.need-keys-text[data-v-60b29dfb]{color:gold;margin:15px 0 0;padding:0}.slot-block[data-v-60b29dfb]{margin-top:10px}.plus-minus-buttons[data-v-60b29dfb]{text-align:center;color:#eee;border:1px solid #444;border-radius:40px;margin:0 0 10px 5px;padding:0 13px;font-size:25px}.plus-minus-buttons[data-v-60b29dfb]:hover{cursor:pointer;color:#63e2b7}.message-image-border[data-v-60b29dfb]{float:left;background-image:url(/assets/paper_white-ZSlTzOTx.jpg);background-size:cover;width:40%;max-width:200px;margin-right:15px;padding:7px;transform:rotate(-3deg);box-shadow:0 3px 15px #626262}.message-image[data-v-60b29dfb]{width:100%}.message-edit-image[data-v-60b29dfb]{width:135px;height:135px}.message-header[data-v-60b29dfb]{padding-right:50px;font-size:20px}.message-footer[data-v-60b29dfb]{color:#deb887;padding-right:50px;font-weight:400;position:relative}.message-show-header[data-v-60b29dfb]{padding-right:50px;font-size:20px}.collapse-icon[data-v-60b29dfb]{cursor:pointer;background-image:url(/assets/collapse-B6YzUtGl.png);background-position:50%;background-size:cover;width:45px;height:28px;position:absolute;top:12px;right:12px}.collapse-icon-up[data-v-60b29dfb]{transform:rotate(-180deg)}.show-hr[data-v-60b29dfb]{border:1px dashed #000;margin:10px 0}.font[data-v-60b29dfb]{font-family:font_old_typer;font-size:18px}.message-show-content[data-v-60b29dfb]{white-space:pre-wrap;font-weight:500}.message-show-footer[data-v-60b29dfb]{color:var(--second-color);padding-right:50px;font-weight:400;position:relative}.button-dialog[data-v-60b29dfb]{color:#bfa07d;cursor:pointer;background-image:url(/assets/belt-DVqk2_uL.png);background-size:cover;border-radius:5px;margin-top:10px;margin-right:10px;font-size:16px;font-weight:600;display:inline-block}.button-dialog-text[data-v-60b29dfb]{padding:5px 12px}.settings-block[data-v-e4c92d18]{height:40px}.settings-button[data-v-e4c92d18]{float:right}.settings-icon[data-v-e4c92d18]{width:20px}.name-text[data-v-e4c92d18]{background-color:#ffffff1a;border-radius:3px;padding:3px}.settings-header[data-v-e4c92d18]{margin-top:20px}.settings-hr[data-v-e4c92d18]{margin:20px 0}.places-container[data-v-e4c92d18]{flex-flow:column;display:flex}.scenario-block[data-v-12737793]{cursor:pointer;background-color:#333;border:2px solid #333;border-radius:12px;width:160px;height:300px;margin:10px;position:relative}.scenario-content-block[data-v-12737793]{padding:2px 10px}.scenario-block[data-v-12737793]:hover{color:#63e2b7;border:2px solid #63e2b7}.scenario-image-block[data-v-12737793]{background-color:#111;border-radius:10px;height:160px}.scenario-image-plus[data-v-12737793]{background-color:#111;justify-content:center;align-items:center;font-size:120px;display:flex}.scenario-image[data-v-12737793]{background-position:50%;background-size:cover}.scenario-title[data-v-12737793]{padding:5px 0}.status-block[data-v-12737793]{position:absolute;bottom:15px;right:15px}@media (width>=1024px){.scenario-block[data-v-12737793]{width:250px;height:400px}.scenario-image-block[data-v-12737793]{height:250px}.scenario-content-block[data-v-12737793]{padding:4px 10px}}.user-block[data-v-b07aea1d]{border:1px solid #444;border-radius:10px;margin:0 0 20px;padding:20px}.user-field[data-v-b07aea1d]{margin:10px}.roles-buttons-block[data-v-b07aea1d]{margin-top:20px}.scenario-block[data-v-40f12db0]{cursor:pointer;background-color:#333;border:2px solid #333;border-radius:12px;width:160px;height:300px;margin:10px;position:relative}.scenario-content-block[data-v-40f12db0]{padding:2px 10px}.scenario-block[data-v-40f12db0]:hover{color:#63e2b7;border:2px solid #63e2b7}.scenario-image-block[data-v-40f12db0]{background-color:#111;border-radius:10px;height:160px}.scenario-image[data-v-40f12db0]{background-position:50%;background-size:cover}.scenario-title[data-v-40f12db0]{padding:5px 0}.scenario-description[data-v-40f12db0]{color:#aaa;display:none}.status-block[data-v-40f12db0]{position:absolute;bottom:15px;right:15px}@media (width>=1024px){.scenario-block[data-v-40f12db0]{width:250px;height:400px}.scenario-image-block[data-v-40f12db0]{height:250px}.scenario-content-block[data-v-40f12db0]{padding:4px 10px}.scenario-description[data-v-40f12db0]{color:#aaa;display:block}}.scenario-title[data-v-aa5857fa]{margin-bottom:10px;font-size:24px}.scenario-image[data-v-aa5857fa]{width:100%;max-width:400px;margin-bottom:10px}.scenario-description[data-v-aa5857fa]{color:#aaa;margin-bottom:10px}.team-block[data-v-f1807272]{border:1px solid #444;border-radius:10px;margin:10px 0}.team-block-hover[data-v-f1807272]:hover{color:#63e2b7;cursor:pointer;border:1px solid #63e2b7}.team-content-block[data-v-f1807272]{padding:20px}.team-name-block[data-v-f1807272]{font-size:20px;font-weight:600}.settings-block[data-v-f1807272]{height:40px}.settings-button[data-v-f1807272]{float:right}.settings-icon[data-v-f1807272]{width:20px}.title-block[data-v-f1807272]{margin-bottom:20px}.link-button[data-v-f1807272]{width:100%;margin-top:20px}.place-image-plus[data-v-f1807272]{justify-content:center;align-items:center;font-size:30px;display:flex}.name-text[data-v-f1807272]{background-color:#ffffff1a;border-radius:3px;padding:3px}.qr-block[data-v-f1807272]{background-color:#fff;padding:12px;display:inline-block}.belt-block[data-v-0effe39e]{background-color:#000;background-image:url(/assets/belt-DVqk2_uL.png);background-size:cover;height:100%;position:relative}.shadow[data-v-0effe39e]{background-color:#000;width:100%;height:10px;position:absolute}.shadow-top[data-v-0effe39e]{top:0;box-shadow:0 -5px 10px #000}.shadow-bottom[data-v-0effe39e]{bottom:0;box-shadow:0 5px 10px #000}.plate-block[data-v-34e952c0]{position:relative;box-shadow:0 0 10px #000}.metal-plate-block[data-v-34e952c0]{background-image:url(/assets/metal-BiL2PH1r.png);background-size:cover;border-radius:4px;height:100%;position:relative}.pin[data-v-34e952c0]{background-image:url(/assets/pin-CJfldk-j.png);background-size:cover;width:7px;height:7px;position:absolute}.pin-top-left[data-v-34e952c0]{top:3px;left:3px}.pin-top-right[data-v-34e952c0]{top:3px;right:3px}.pin-bottom-right[data-v-34e952c0]{bottom:3px;right:3px}.pin-bottom-left[data-v-34e952c0]{bottom:3px;left:3px}.text-with-font[data-v-e13ee3bd]{color:#bfa07d;letter-spacing:2px;font-family:font_old_typer;font-size:22px;font-weight:600;line-height:20px}.form-custom[data-v-6e0e0fb9]{color:#fff;z-index:1000;width:100%;position:fixed;bottom:0;left:0}.input-form[data-v-6e0e0fb9]{z-index:1000;max-width:1920px;height:76px;margin:0 auto;position:relative}.controller-metal[data-v-6e0e0fb9]{width:30px;height:calc(100% + 2px);position:absolute;top:-1px}.controller-metal-left[data-v-6e0e0fb9]{left:-30px}.controller-metal-right[data-v-6e0e0fb9]{right:-30px}.controller[data-v-6e0e0fb9]{display:flex;position:relative}.game-input[data-v-6e0e0fb9]{width:calc(100% - 175px);height:50px;position:relative;top:14px;left:15px}.game-input-run[data-v-6e0e0fb9]{background-color:#0000;background-image:url(/assets/input_center-DZZtEHaZ.png);background-size:cover;border:0;width:100%;height:100%;padding-left:27px;font-family:font_old_typer;font-size:18px}.game-input-run[data-v-6e0e0fb9]::placeholder{color:#333}.game-input-run[data-v-6e0e0fb9]:focus{border:0;outline:none}.game-button-run-shadow[data-v-6e0e0fb9]{width:150px;height:80px;position:absolute;top:-5px;right:10px;box-shadow:-5px 5px 10px #000}.game-button-run[data-v-6e0e0fb9]{cursor:pointer;background-color:#0000;background-image:url(/assets/button-DdziMEJE.png);background-size:cover;border:0;width:155px;height:80px;margin:0;padding:0;font-size:1.5em;position:absolute;top:-5px;right:10px}.new-places-label[data-v-6e0e0fb9],.all-places-label[data-v-6e0e0fb9]{height:48px;position:absolute}.new-places-label[data-v-6e0e0fb9]{width:40px;top:14px;left:85px}.all-places-label[data-v-6e0e0fb9]{width:60px;top:14px;left:15px}.places-text[data-v-6e0e0fb9]{color:#111;text-align:center;background-color:#d1cebd;background-image:url(/assets/paper-CuqvoKhN.jpg);background-size:cover;border:1px solid #9e9982;border-radius:7px;margin:0 1px;font-family:font_old_typer;font-size:1.4em;display:inline-block;box-shadow:0 -2px 5px #000}.places-text-number[data-v-6e0e0fb9]{width:18px}.counters-block[data-v-6e0e0fb9]{margin:20px 10px 20px 5px;position:absolute;top:-40px;left:23px}.counter-block[data-v-6e0e0fb9]{margin:5px;display:inline-block}.icon-for-counter[data-v-6e0e0fb9]{margin:0 4px;position:relative;top:3px}@media (width>=1025px){.center-block-700[data-v-6e0e0fb9]{width:700px;margin:0 auto}}.bottom-margin[data-v-c92c3497]{height:calc(100dvh - 146px)}.smooth-scroll[data-v-c92c3497]{scroll-behavior:smooth}.edit-panel[data-v-c92c3497]{background-color:#222;border-radius:10px;margin:30px 0;padding:20px}@media (width>=1024px){.bottom-margin[data-v-c92c3497]{height:calc(100dvh - 146px)}} diff --git a/dist/index.html b/dist/index.html index eb8d74e..ca44b10 100644 --- a/dist/index.html +++ b/dist/index.html @@ -5,8 +5,8 @@ Вечерний детектив - - + +
diff --git a/src/components/GamePage.vue b/src/components/GamePage.vue index 59bd901..313e2a7 100644 --- a/src/components/GamePage.vue +++ b/src/components/GamePage.vue @@ -5,11 +5,12 @@ import { getAuthClient } from '@/api/auth_client'; import { Icon } from '@vicons/utils' import { NButton } from 'naive-ui' import type { Application, Game, Team } from '@/api/generated/crabs/evening_detective_server'; -import { NCard, NInput, NModal, NSpace, NFlex, NText } from 'naive-ui' +import { NCard, NInput, NModal, NSpace, NFlex, NText, NQrCode } from 'naive-ui' import HeaderMenu from '@/components/HeaderMenu.vue' import { useMessage } from 'naive-ui'; import { ref } from 'vue'; import { useRoute, useRouter } from 'vue-router'; +import { getURL } from '@/api/generated/crabs/evening_detective_server/client'; const client = getAuthClient() const router = useRouter() @@ -23,6 +24,8 @@ const showGiveApplicationModal = ref(false) const showAddTeamModal = ref(false) const showDeleteTeamModal = ref(false) const newTeamName = ref('') +const showQR = ref(false) +const urlQR = ref('') const game = ref({ id: undefined, @@ -136,6 +139,15 @@ async function confirmDeleteTeam() { await getGame(game.value.id!) showDeleteTeamModal.value = false } + +function getTeamStoryURL(id: number, password: string): string { + return getURL() + '/team-story/' + id + '?password=' + password +} + +async function openQR(url: string) { + urlQR.value = url + showQR.value = true +} @@ -333,4 +365,10 @@ async function confirmDeleteTeam() { border-radius: 3px; background-color: rgb(255 255 255 / 10%); } + +.qr-block { + display: inline-block; + background-color: white; + padding: 12px; +}