vue-print-designer 1.0.25 → 1.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -498,7 +498,7 @@ __p += '`),Vr&&(vt+=`' +
|
|
|
498
498
|
function print() { __p += __j.call(arguments, '') }
|
|
499
499
|
`:`;
|
|
500
500
|
`)+vt+`return __p
|
|
501
|
-
}`;var Sr=K9(function(){return gr(Te,Gt+"return "+vt).apply(r,De)});if(Sr.source=vt,P3(Sr))throw Sr;return Sr}function Axe(h){return cn(h).toLowerCase()}function lxe(h){return cn(h).toUpperCase()}function uxe(h,v,C){if(h=cn(h),h&&(C||v===r))return ga(h);if(!h||!(v=Qo(v)))return h;var X=ko(h),ce=ko(v),Te=Xu(X,ce),De=Wu(X,ce)+1;return Bs(X,Te,De).join("")}function cxe(h,v,C){if(h=cn(h),h&&(C||v===r))return h.slice(0,oA(h)+1);if(!h||!(v=Qo(v)))return h;var X=ko(h),ce=Wu(X,ko(v))+1;return Bs(X,0,ce).join("")}function fxe(h,v,C){if(h=cn(h),h&&(C||v===r))return h.replace($r,"");if(!h||!(v=Qo(v)))return h;var X=ko(h),ce=Xu(X,ko(v));return Bs(X,ce).join("")}function dxe(h,v){var C=K,X=L;if(Wn(v)){var ce="separator"in v?v.separator:ce;C="length"in v?Br(v.length):C,X="omission"in v?Qo(v.omission):X}h=cn(h);var Te=h.length;if(za(h)){var De=ko(h);Te=De.length}if(C>=Te)return h;var ze=C-iA(X);if(ze<1)return X;var Ye=De?Bs(De,0,ze).join(""):h.slice(0,ze);if(ce===r)return Ye+X;if(De&&(ze+=Ye.length-ze),L3(ce)){if(h.slice(ze).search(ce)){var lt,ut=Ye;for(ce.global||(ce=Rl(ce.source,cn(Fo.exec(ce))+"g")),ce.lastIndex=0;lt=ce.exec(ut);)var vt=lt.index;Ye=Ye.slice(0,vt===r?ze:vt)}}else if(h.indexOf(Qo(ce),ze)!=ze){var Ot=Ye.lastIndexOf(ce);Ot>-1&&(Ye=Ye.slice(0,Ot))}return Ye+X}function hxe(h){return h=cn(h),h&&sr.test(h)?h.replace(Lr,Dl):h}var gxe=Ch(function(h,v,C){return h+(C?" ":"")+v.toUpperCase()}),U3=GH("toUpperCase");function q9(h,v,C){return h=cn(h),v=C?r:v,v===r?Ju(h)?ZA(h):Qe(h):h.match(v)||[]}var K9=xr(function(h,v){try{return Ki(h,r,v)}catch(C){return P3(C)?C:new qt(C)}}),pxe=Zl(function(h,v){return Gi(v,function(C){C=nl(C),Ct(h,C,I3(h[C],h))}),h});function vxe(h){var v=h==null?0:h.length,C=_t();return h=v?en(h,function(X){if(typeof X[1]!="function")throw new Mi(a);return[C(X[0]),X[1]]}):[],xr(function(X){for(var ce=-1;++ce<v;){var Te=h[ce];if(Ki(Te[0],this,X))return Ki(Te[1],this,X)}})}function mxe(h){return Wr(bt(h,c))}function M3(h){return function(){return h}}function yxe(h,v){return h==null||h!==h?v:h}var bxe=WH(),wxe=WH(!0);function Oa(h){return h}function D3(h){return Tf(typeof h=="function"?h:bt(h,c))}function xxe(h){return V1(bt(h,c))}function Bxe(h,v){return mh(h,bt(v,c))}var Exe=xr(function(h,v){return function(C){return jl(C,h,v)}}),Cxe=xr(function(h,v){return function(C){return jl(h,C,v)}});function R3(h,v,C){var X=to(v),ce=ii(v,X);C==null&&!(Wn(v)&&(ce.length||!X.length))&&(C=v,v=h,h=this,ce=ii(v,to(v)));var Te=!(Wn(C)&&"chain"in C)||!!C.chain,De=_l(h);return Gi(ce,function(ze){var Ye=v[ze];h[ze]=Ye,De&&(h.prototype[ze]=function(){var lt=this.__chain__;if(Te||lt){var ut=h(this.__wrapped__),vt=ut.__actions__=Ea(this.__actions__);return vt.push({func:Ye,args:arguments,thisArg:h}),ut.__chain__=lt,ut}return Ye.apply(h,ha([this.value()],arguments))})}),h}function Sxe(){return ri._===this&&(ri._=Kn),this}function Q3(){}function Oxe(h){return h=Br(h),xr(function(v){return j1(v,h)})}var Txe=p3(en),Ixe=p3(Ku),Fxe=p3(U);function G9(h){return B3(h)?lr(nl(h)):G1(h)}function Pxe(h){return function(v){return h==null?r:Xn(h,v)}}var Lxe=ZH(),kxe=ZH(!0);function H3(){return[]}function z3(){return!1}function Nxe(){return{}}function Uxe(){return""}function Mxe(){return!0}function Dxe(h,v){if(h=Br(h),h<1||h>oe)return[];var C=te,X=eo(h,te);v=_t(v),h-=te;for(var ce=Ni(X,v);++C<h;)v(C);return ce}function Rxe(h){return mr(h)?en(h,nl):Wa(h)?[h]:Ea(f9(cn(h)))}function Qxe(h){var v=++ma;return cn(h)+v}var Hxe=ey(function(h,v){return h+v},0),zxe=v3("ceil"),Vxe=ey(function(h,v){return h/v},1),jxe=v3("floor");function qxe(h){return h&&h.length?Fn(h,Oa,oi):r}function Kxe(h,v){return h&&h.length?Fn(h,_t(v,2),oi):r}function Gxe(h){return cr(h,Oa)}function Xxe(h,v){return cr(h,_t(v,2))}function Wxe(h){return h&&h.length?Fn(h,Oa,Kl):r}function Yxe(h,v){return h&&h.length?Fn(h,_t(v,2),Kl):r}var Zxe=ey(function(h,v){return h*v},1),Jxe=v3("round"),_xe=ey(function(h,v){return h-v},0);function $xe(h){return h&&h.length?Dn(h,Oa):0}function eBe(h,v){return h&&h.length?Dn(h,_t(v,2)):0}return xe.after=x2e,xe.ary=B9,xe.assign=l5e,xe.assignIn=D9,xe.assignInWith=dy,xe.assignWith=u5e,xe.at=c5e,xe.before=E9,xe.bind=I3,xe.bindAll=pxe,xe.bindKey=C9,xe.castArray=N2e,xe.chain=b9,xe.chunk=jbe,xe.compact=qbe,xe.concat=Kbe,xe.cond=vxe,xe.conforms=mxe,xe.constant=M3,xe.countBy=$we,xe.create=f5e,xe.curry=S9,xe.curryRight=O9,xe.debounce=T9,xe.defaults=d5e,xe.defaultsDeep=h5e,xe.defer=B2e,xe.delay=E2e,xe.difference=Gbe,xe.differenceBy=Xbe,xe.differenceWith=Wbe,xe.drop=Ybe,xe.dropRight=Zbe,xe.dropRightWhile=Jbe,xe.dropWhile=_be,xe.fill=$be,xe.filter=t2e,xe.flatMap=i2e,xe.flatMapDeep=o2e,xe.flatMapDepth=a2e,xe.flatten=p9,xe.flattenDeep=ewe,xe.flattenDepth=twe,xe.flip=C2e,xe.flow=bxe,xe.flowRight=wxe,xe.fromPairs=rwe,xe.functions=w5e,xe.functionsIn=x5e,xe.groupBy=s2e,xe.initial=iwe,xe.intersection=owe,xe.intersectionBy=awe,xe.intersectionWith=swe,xe.invert=E5e,xe.invertBy=C5e,xe.invokeMap=l2e,xe.iteratee=D3,xe.keyBy=u2e,xe.keys=to,xe.keysIn=Sa,xe.map=sy,xe.mapKeys=O5e,xe.mapValues=T5e,xe.matches=xxe,xe.matchesProperty=Bxe,xe.memoize=ly,xe.merge=I5e,xe.mergeWith=R9,xe.method=Exe,xe.methodOf=Cxe,xe.mixin=R3,xe.negate=uy,xe.nthArg=Oxe,xe.omit=F5e,xe.omitBy=P5e,xe.once=S2e,xe.orderBy=c2e,xe.over=Txe,xe.overArgs=O2e,xe.overEvery=Ixe,xe.overSome=Fxe,xe.partial=F3,xe.partialRight=I9,xe.partition=f2e,xe.pick=L5e,xe.pickBy=Q9,xe.property=G9,xe.propertyOf=Pxe,xe.pull=cwe,xe.pullAll=m9,xe.pullAllBy=fwe,xe.pullAllWith=dwe,xe.pullAt=hwe,xe.range=Lxe,xe.rangeRight=kxe,xe.rearg=T2e,xe.reject=g2e,xe.remove=gwe,xe.rest=I2e,xe.reverse=O3,xe.sampleSize=v2e,xe.set=N5e,xe.setWith=U5e,xe.shuffle=m2e,xe.slice=pwe,xe.sortBy=w2e,xe.sortedUniq=Bwe,xe.sortedUniqBy=Ewe,xe.split=ixe,xe.spread=F2e,xe.tail=Cwe,xe.take=Swe,xe.takeRight=Owe,xe.takeRightWhile=Twe,xe.takeWhile=Iwe,xe.tap=qwe,xe.throttle=P2e,xe.thru=ay,xe.toArray=N9,xe.toPairs=H9,xe.toPairsIn=z9,xe.toPath=Rxe,xe.toPlainObject=M9,xe.transform=M5e,xe.unary=L2e,xe.union=Fwe,xe.unionBy=Pwe,xe.unionWith=Lwe,xe.uniq=kwe,xe.uniqBy=Nwe,xe.uniqWith=Uwe,xe.unset=D5e,xe.unzip=T3,xe.unzipWith=y9,xe.update=R5e,xe.updateWith=Q5e,xe.values=Th,xe.valuesIn=H5e,xe.without=Mwe,xe.words=q9,xe.wrap=k2e,xe.xor=Dwe,xe.xorBy=Rwe,xe.xorWith=Qwe,xe.zip=Hwe,xe.zipObject=zwe,xe.zipObjectDeep=Vwe,xe.zipWith=jwe,xe.entries=H9,xe.entriesIn=z9,xe.extend=D9,xe.extendWith=dy,R3(xe,xe),xe.add=Hxe,xe.attempt=K9,xe.camelCase=q5e,xe.capitalize=V9,xe.ceil=zxe,xe.clamp=z5e,xe.clone=U2e,xe.cloneDeep=D2e,xe.cloneDeepWith=R2e,xe.cloneWith=M2e,xe.conformsTo=Q2e,xe.deburr=j9,xe.defaultTo=yxe,xe.divide=Vxe,xe.endsWith=K5e,xe.eq=vA,xe.escape=G5e,xe.escapeRegExp=X5e,xe.every=e2e,xe.find=r2e,xe.findIndex=h9,xe.findKey=g5e,xe.findLast=n2e,xe.findLastIndex=g9,xe.findLastKey=p5e,xe.floor=jxe,xe.forEach=w9,xe.forEachRight=x9,xe.forIn=v5e,xe.forInRight=m5e,xe.forOwn=y5e,xe.forOwnRight=b5e,xe.get=k3,xe.gt=H2e,xe.gte=z2e,xe.has=B5e,xe.hasIn=N3,xe.head=v9,xe.identity=Oa,xe.includes=A2e,xe.indexOf=nwe,xe.inRange=V5e,xe.invoke=S5e,xe.isArguments=Df,xe.isArray=mr,xe.isArrayBuffer=V2e,xe.isArrayLike=Ca,xe.isArrayLikeObject=yi,xe.isBoolean=j2e,xe.isBuffer=uc,xe.isDate=q2e,xe.isElement=K2e,xe.isEmpty=G2e,xe.isEqual=X2e,xe.isEqualWith=W2e,xe.isError=P3,xe.isFinite=Y2e,xe.isFunction=_l,xe.isInteger=F9,xe.isLength=cy,xe.isMap=P9,xe.isMatch=Z2e,xe.isMatchWith=J2e,xe.isNaN=_2e,xe.isNative=$2e,xe.isNil=t5e,xe.isNull=e5e,xe.isNumber=L9,xe.isObject=Wn,xe.isObjectLike=ai,xe.isPlainObject=Kp,xe.isRegExp=L3,xe.isSafeInteger=r5e,xe.isSet=k9,xe.isString=fy,xe.isSymbol=Wa,xe.isTypedArray=Oh,xe.isUndefined=n5e,xe.isWeakMap=i5e,xe.isWeakSet=o5e,xe.join=Awe,xe.kebabCase=W5e,xe.last=Es,xe.lastIndexOf=lwe,xe.lowerCase=Y5e,xe.lowerFirst=Z5e,xe.lt=a5e,xe.lte=s5e,xe.max=qxe,xe.maxBy=Kxe,xe.mean=Gxe,xe.meanBy=Xxe,xe.min=Wxe,xe.minBy=Yxe,xe.stubArray=H3,xe.stubFalse=z3,xe.stubObject=Nxe,xe.stubString=Uxe,xe.stubTrue=Mxe,xe.multiply=Zxe,xe.nth=uwe,xe.noConflict=Sxe,xe.noop=Q3,xe.now=Ay,xe.pad=J5e,xe.padEnd=_5e,xe.padStart=$5e,xe.parseInt=exe,xe.random=j5e,xe.reduce=d2e,xe.reduceRight=h2e,xe.repeat=txe,xe.replace=rxe,xe.result=k5e,xe.round=Jxe,xe.runInContext=Ge,xe.sample=p2e,xe.size=y2e,xe.snakeCase=nxe,xe.some=b2e,xe.sortedIndex=vwe,xe.sortedIndexBy=mwe,xe.sortedIndexOf=ywe,xe.sortedLastIndex=bwe,xe.sortedLastIndexBy=wwe,xe.sortedLastIndexOf=xwe,xe.startCase=oxe,xe.startsWith=axe,xe.subtract=_xe,xe.sum=$xe,xe.sumBy=eBe,xe.template=sxe,xe.times=Dxe,xe.toFinite=$l,xe.toInteger=Br,xe.toLength=U9,xe.toLower=Axe,xe.toNumber=Cs,xe.toSafeInteger=A5e,xe.toString=cn,xe.toUpper=lxe,xe.trim=uxe,xe.trimEnd=cxe,xe.trimStart=fxe,xe.truncate=dxe,xe.unescape=hxe,xe.uniqueId=Qxe,xe.upperCase=gxe,xe.upperFirst=U3,xe.each=w9,xe.eachRight=x9,xe.first=v9,R3(xe,(function(){var h={};return Rn(xe,function(v,C){Dr.call(xe.prototype,C)||(h[C]=v)}),h})(),{chain:!1}),xe.VERSION=n,Gi(["bind","bindKey","curry","curryRight","partial","partialRight"],function(h){xe[h].placeholder=xe}),Gi(["drop","take"],function(h,v){Or.prototype[h]=function(C){C=C===r?1:mi(Br(C),0);var X=this.__filtered__&&!v?new Or(this):this.clone();return X.__filtered__?X.__takeCount__=eo(C,X.__takeCount__):X.__views__.push({size:eo(C,te),type:h+(X.__dir__<0?"Right":"")}),X},Or.prototype[h+"Right"]=function(C){return this.reverse()[h](C).reverse()}}),Gi(["filter","map","takeWhile"],function(h,v){var C=v+1,X=C==x||C==$;Or.prototype[h]=function(ce){var Te=this.clone();return Te.__iteratees__.push({iteratee:_t(ce,3),type:C}),Te.__filtered__=Te.__filtered__||X,Te}}),Gi(["head","last"],function(h,v){var C="take"+(v?"Right":"");Or.prototype[h]=function(){return this[C](1).value()[0]}}),Gi(["initial","tail"],function(h,v){var C="drop"+(v?"":"Right");Or.prototype[h]=function(){return this.__filtered__?new Or(this):this[C](1)}}),Or.prototype.compact=function(){return this.filter(Oa)},Or.prototype.find=function(h){return this.filter(h).head()},Or.prototype.findLast=function(h){return this.reverse().find(h)},Or.prototype.invokeMap=xr(function(h,v){return typeof h=="function"?new Or(this):this.map(function(C){return jl(C,h,v)})}),Or.prototype.reject=function(h){return this.filter(uy(_t(h)))},Or.prototype.slice=function(h,v){h=Br(h);var C=this;return C.__filtered__&&(h>0||v<0)?new Or(C):(h<0?C=C.takeRight(-h):h&&(C=C.drop(h)),v!==r&&(v=Br(v),C=v<0?C.dropRight(-v):C.take(v-h)),C)},Or.prototype.takeRightWhile=function(h){return this.reverse().takeWhile(h).reverse()},Or.prototype.toArray=function(){return this.take(te)},Rn(Or.prototype,function(h,v){var C=/^(?:filter|find|map|reject)|While$/.test(v),X=/^(?:head|last)$/.test(v),ce=xe[X?"take"+(v=="last"?"Right":""):v],Te=X||/^find/.test(v);ce&&(xe.prototype[v]=function(){var De=this.__wrapped__,ze=X?[1]:arguments,Ye=De instanceof Or,lt=ze[0],ut=Ye||mr(De),vt=function(kr){var Vr=ce.apply(xe,ha([kr],ze));return X&&Ot?Vr[0]:Vr};ut&&C&&typeof lt=="function"&<.length!=1&&(Ye=ut=!1);var Ot=this.__chain__,Gt=!!this.__actions__.length,rr=Te&&!Ot,Sr=Ye&&!Gt;if(!Te&&ut){De=Sr?De:new Or(this);var nr=h.apply(De,ze);return nr.__actions__.push({func:ay,args:[vt],thisArg:r}),new ea(nr,Ot)}return rr&&Sr?h.apply(this,ze):(nr=this.thru(vt),rr?X?nr.value()[0]:nr.value():nr)})}),Gi(["pop","push","shift","sort","splice","unshift"],function(h){var v=Va[h],C=/^(?:push|sort|unshift)$/.test(h)?"tap":"thru",X=/^(?:pop|shift)$/.test(h);xe.prototype[h]=function(){var ce=arguments;if(X&&!this.__chain__){var Te=this.value();return v.apply(mr(Te)?Te:[],ce)}return this[C](function(De){return v.apply(mr(De)?De:[],ce)})}}),Rn(Or.prototype,function(h,v){var C=xe[v];if(C){var X=C.name+"";Dr.call(ac,X)||(ac[X]=[]),ac[X].push({name:v,func:C})}}),ac[$1(r,m).name]=[{name:"wrapper",func:r}],Or.prototype.clone=N1,Or.prototype.reverse=i3,Or.prototype.value=dh,xe.prototype.at=Kwe,xe.prototype.chain=Gwe,xe.prototype.commit=Xwe,xe.prototype.next=Wwe,xe.prototype.plant=Zwe,xe.prototype.reverse=Jwe,xe.prototype.toJSON=xe.prototype.valueOf=xe.prototype.value=_we,xe.prototype.first=xe.prototype.head,JA&&(xe.prototype[JA]=Ywe),xe}),Uo=aA();co?((co.exports=Uo)._=Uo,da._=Uo):ri._=Uo}).call(Cse)})(qg,qg.exports)),qg.exports}var Ose=Sse();const Tse={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Ise(t,e){return Ie(),Ne("svg",Tse,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M4 19q-.825 0-1.412-.587T2 17V7q0-.825.588-1.412T4 5h16q.825 0 1.413.588T22 7v10q0 .825-.587 1.413T20 19zm4-3h8v-2H8zm-3-3h2v-2H5zm3 0h2v-2H8zm3 0h2v-2h-2zm3 0h2v-2h-2zm3 0h2v-2h-2zM5 10h2V8H5zm3 0h2V8H8zm3 0h2V8h-2zm3 0h2V8h-2zm3 0h2V8h-2z"},null,-1)])])}const Fse=kt({name:"material-symbols-keyboard",render:Ise}),Pse={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Lse(t,e){return Ie(),Ne("svg",Pse,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M11 17h2v-6h-2zm1-8q.425 0 .713-.288T13 8t-.288-.712T12 7t-.712.288T11 8t.288.713T12 9m0 13q-2.075 0-3.9-.788t-3.175-2.137T2.788 15.9T2 12t.788-3.9t2.137-3.175T8.1 2.788T12 2t3.9.788t3.175 2.137T21.213 8.1T22 12t-.788 3.9t-2.137 3.175t-3.175 2.138T12 22"},null,-1)])])}const kse=kt({name:"material-symbols-info",render:Lse}),Cx={name:"vue-print-designer",version:"1.0.25",dependencies:{"@guolao/vue-monaco-editor":"^1.6.0",canvg:"^4.0.3","dom-to-image-more":"^3.7.2",jszip:"^3.10.1",jsbarcode:"^3.12.3",jspdf:"^2.5.2",lodash:"^4.17.21",pinia:"^2.3.0",qrcode:"^1.5.4",uuid:"^11.0.3",vue:"^3.5.13","vue-i18n":"^11.2.8"}},Nse={class:"bg-white rounded-lg shadow-xl w-[700px] max-w-full h-[500px] flex overflow-hidden"},Use={class:"w-48 bg-gray-50 border-r border-gray-200 flex flex-col"},Mse={class:"h-[60px] flex items-center px-4 border-b border-gray-200"},Dse={class:"text-lg font-semibold text-gray-800"},Rse={class:"flex-1 py-2"},Qse={class:"flex-1 flex flex-col min-w-0"},Hse={class:"h-[60px] flex items-center justify-between px-4 border-b border-gray-200"},zse={class:"text-lg font-semibold text-gray-800"},Vse={class:"flex-1 overflow-y-auto p-6"},jse={key:0,class:"space-y-6"},qse={class:"grid grid-cols-1 gap-6 text-sm"},Kse={class:"font-medium text-gray-900 mb-3 border-b pb-1"},Gse={class:"space-y-2 text-gray-600"},Xse={class:"flex justify-between items-center"},Wse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Yse={class:"flex justify-between items-center"},Zse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Jse={class:"flex justify-between items-center"},_se={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},$se={class:"flex justify-between items-center"},eAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},tAe={class:"flex justify-between items-center"},rAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},nAe={class:"flex justify-between items-center"},iAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},oAe={class:"flex justify-between items-center"},aAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},sAe={class:"flex justify-between items-center"},AAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},lAe={class:"flex justify-between items-center"},uAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},cAe={class:"flex justify-between items-center"},fAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},dAe={class:"flex justify-between items-center"},hAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},gAe={class:"flex justify-between items-center"},pAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},vAe={class:"flex justify-between items-center"},mAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},yAe={class:"font-medium text-gray-900 mb-3 border-b pb-1"},bAe={class:"space-y-2 text-gray-600"},wAe={class:"flex justify-between items-center"},xAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},BAe={class:"flex justify-between items-center"},EAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},CAe={class:"flex justify-between items-center"},SAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},OAe={class:"flex justify-between items-center"},TAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},IAe={class:"flex justify-between items-center"},FAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},PAe={class:"flex justify-between items-center"},LAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},kAe={class:"flex justify-between items-center"},NAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},UAe={class:"flex justify-between items-center"},MAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},DAe={class:"flex justify-between items-center"},RAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},QAe={class:"flex justify-between items-center"},HAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},zAe={class:"font-medium text-gray-900 mb-3 border-b pb-1"},VAe={class:"space-y-2 text-gray-600"},jAe={class:"flex justify-between items-center"},qAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},KAe={class:"flex justify-between items-center"},GAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},XAe={class:"flex justify-between items-center"},WAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},YAe={class:"flex justify-between items-center"},ZAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},JAe={key:1,class:"space-y-6"},_Ae={class:"text-center mb-8"},$Ae={class:"text-xl font-bold text-gray-800"},ele={class:"mt-4 flex justify-center"},tle={href:"https://github.com/0ldFive/Vue-Print-Designer",target:"_blank",rel:"noopener noreferrer",class:"group inline-flex items-center gap-2 rounded-full border border-gray-200 bg-gray-50 px-2.5 py-1 text-[11px] text-gray-700 shadow-sm transition-colors hover:border-blue-200 hover:bg-blue-50 hover:text-blue-700",title:"https://github.com/0ldFive/Vue-Print-Designer"},rle={class:"text-gray-600 group-hover:text-blue-600"},nle={class:"font-medium text-gray-900 mb-3 border-b pb-1"},ile={class:"bg-gray-50 rounded-lg border border-gray-200 overflow-hidden"},ole={class:"w-full text-sm text-left"},ale={class:"bg-gray-100 text-gray-700 font-medium"},sle={class:"px-4 py-2 border-b"},Ale={class:"px-4 py-2 border-b"},lle={class:"divide-y divide-gray-200"},ule={class:"px-4 py-2 text-gray-700 font-mono"},cle={class:"px-4 py-2 text-gray-500"},fle={class:"p-4 border-t border-gray-200 bg-gray-50 flex justify-end rounded-br-lg"},dle=Tr({__name:"HelpModal",props:{show:{type:Boolean}},emits:["update:show"],setup(t,{emit:e}){const r=t,n=e,{t:i}=zn(),o=fn(),a=li("modal-container",We(null)),s=We("shortcuts"),A=()=>{n("update:show",!1)},l=f=>{r.show&&f.key==="Escape"&&(f.preventDefault(),A())};xi(()=>{window.addEventListener("keydown",l)}),Yt(()=>r.show,f=>{o.setDisableGlobalShortcuts(f)}),Bi(()=>{window.removeEventListener("keydown",l),r.show&&o.setDisableGlobalShortcuts(!1)});const u=Object.entries(Cx.dependencies).map(([f,g])=>({name:f,version:g})),c=Cx.version,d=Ose.startCase(Cx.name);return(f,g)=>(Ie(),Ur(Ns,{to:R(a)||"body"},[t.show?(Ie(),Ne("div",{key:0,class:"fixed inset-0 z-[99999] flex items-center justify-center bg-black/50 pointer-events-auto",onClick:Ci(A,["self"])},[F("div",Nse,[F("div",Use,[F("div",Mse,[F("h3",Dse,me(R(i)("help.title")),1)]),F("div",Rse,[F("button",{onClick:g[0]||(g[0]=p=>s.value="shortcuts"),class:St(["w-full text-left px-4 py-3 flex items-center gap-3 transition-colors text-sm",s.value==="shortcuts"?"bg-white text-blue-600 border-l-4 border-blue-600 font-medium":"text-gray-600 hover:bg-gray-100 border-l-4 border-transparent"])},[et(R(Fse),{class:"w-5 h-5"}),zt(" "+me(R(i)("shortcuts.title")),1)],2),F("button",{onClick:g[1]||(g[1]=p=>s.value="about"),class:St(["w-full text-left px-4 py-3 flex items-center gap-3 transition-colors text-sm",s.value==="about"?"bg-white text-blue-600 border-l-4 border-blue-600 font-medium":"text-gray-600 hover:bg-gray-100 border-l-4 border-transparent"])},[et(R(kse),{class:"w-5 h-5"}),zt(" "+me(R(i)("help.about")),1)],2)])]),F("div",Qse,[F("div",Hse,[F("h3",zse,me(s.value==="shortcuts"?R(i)("shortcuts.keyboardShortcuts"):R(i)("help.aboutProject",{name:R(d)})),1),F("button",{onClick:A,class:"p-1 hover:bg-gray-100 rounded-full transition-colors text-gray-500"},[et(R(qc),{class:"w-4 h-4"})])]),F("div",Vse,[s.value==="shortcuts"?(Ie(),Ne("div",jse,[F("div",qse,[F("div",null,[F("h4",Kse,me(R(i)("shortcuts.general")),1),F("ul",Gse,[F("li",Xse,[F("span",null,me(R(i)("common.save")),1),g[2]||(g[2]=zt()),F("kbd",Wse,me(R(_r)(["Ctrl","S"])),1)]),F("li",Yse,[F("span",null,me(R(i)("shortcuts.saveAsTemplate")),1),g[3]||(g[3]=zt()),F("kbd",Zse,me(R(_r)(["Ctrl","Shift","S"])),1)]),F("li",Jse,[F("span",null,me(R(i)("editor.print")),1),g[4]||(g[4]=zt()),F("kbd",_se,me(R(_r)(["Ctrl","P"])),1)]),F("li",$se,[F("span",null,me(R(i)("editor.exportPdf")),1),g[5]||(g[5]=zt()),F("kbd",eAe,me(R(_r)(["Ctrl","Shift","E"])),1)]),F("li",tAe,[F("span",null,me(R(i)("editor.preview")),1),g[6]||(g[6]=zt()),F("kbd",rAe,me(R(_r)(["Ctrl","Shift","P"])),1)]),F("li",nAe,[F("span",null,me(R(i)("editor.viewJson")),1),g[7]||(g[7]=zt()),F("kbd",iAe,me(R(_r)(["Ctrl","Shift","J"])),1)]),F("li",oAe,[F("span",null,me(R(i)("shortcuts.newTemplate")),1),g[8]||(g[8]=zt()),F("kbd",aAe,me(R(_r)(["Ctrl","Alt","N"])),1)]),F("li",sAe,[F("span",null,me(R(i)("shortcuts.openSettings")),1),g[9]||(g[9]=zt()),F("kbd",AAe,me(R(_r)(["Ctrl",","])),1)]),F("li",lAe,[F("span",null,me(R(i)("common.undo")),1),g[10]||(g[10]=zt()),F("kbd",uAe,me(R(_r)(["Ctrl","Z"])),1)]),F("li",cAe,[F("span",null,me(R(i)("common.redo")),1),g[11]||(g[11]=zt()),F("kbd",fAe,me(R(_r)(["Ctrl","Y"])),1)]),F("li",dAe,[F("span",null,me(R(i)("shortcuts.openHelp")),1),g[12]||(g[12]=zt()),F("kbd",hAe,me(R(_r)(["Ctrl","H"])),1)]),F("li",gAe,[F("span",null,me(R(i)("shortcuts.zoom")),1),g[13]||(g[13]=zt()),F("kbd",pAe,me(R(_r)(["Ctrl","Wheel"])),1)]),F("li",vAe,[F("span",null,me(R(i)("shortcuts.closeModal")),1),g[14]||(g[14]=zt()),F("kbd",mAe,me(R(_r)(["Esc"])),1)])])]),F("div",null,[F("h4",yAe,me(R(i)("shortcuts.editing")),1),F("ul",bAe,[F("li",wAe,[F("span",null,me(R(i)("common.copy")),1),g[15]||(g[15]=zt()),F("kbd",xAe,me(R(_r)(["Ctrl","C"])),1)]),F("li",BAe,[F("span",null,me(R(i)("common.cut")),1),g[16]||(g[16]=zt()),F("kbd",EAe,me(R(_r)(["Ctrl","X"])),1)]),F("li",CAe,[F("span",null,me(R(i)("common.paste")),1),g[17]||(g[17]=zt()),F("kbd",SAe,me(R(_r)(["Ctrl","V"])),1)]),F("li",OAe,[F("span",null,me(R(i)("common.delete")),1),g[18]||(g[18]=zt()),F("kbd",TAe,me(R(_r)(["Delete"])),1)]),F("li",IAe,[F("span",null,me(R(i)("shortcuts.selectAll")),1),g[19]||(g[19]=zt()),F("kbd",FAe,me(R(_r)(["Ctrl","A"])),1)]),F("li",PAe,[F("span",null,me(R(i)("shortcuts.multiSelect")),1),g[20]||(g[20]=zt()),F("kbd",LAe,me(R(_r)(["Ctrl","Click"])),1)]),F("li",kAe,[F("span",null,me(R(i)("common.lock"))+"/"+me(R(i)("common.unlock")),1),g[21]||(g[21]=zt()),F("kbd",NAe,me(R(_r)(["Ctrl","L"])),1)]),F("li",UAe,[F("span",null,me(R(i)("shortcuts.customEditSave")),1),g[22]||(g[22]=zt()),F("kbd",MAe,me(R(_r)(["Ctrl","S"])),1)]),F("li",DAe,[F("span",null,me(R(i)("shortcuts.customEditSaveAs")),1),g[23]||(g[23]=zt()),F("kbd",RAe,me(R(_r)(["Ctrl","Shift","S"])),1)]),F("li",QAe,[F("span",null,me(R(i)("shortcuts.customEditExit")),1),g[24]||(g[24]=zt()),F("kbd",HAe,me(R(_r)(["Ctrl","Q"])),1)])])]),F("div",null,[F("h4",zAe,me(R(i)("shortcuts.manipulation")),1),F("ul",VAe,[F("li",jAe,[F("span",null,me(R(i)("shortcuts.move")),1),g[25]||(g[25]=zt()),F("kbd",qAe,me(R(i)("shortcuts.arrow")),1)]),F("li",KAe,[F("span",null,me(R(i)("shortcuts.fastMove")),1),g[26]||(g[26]=zt()),F("kbd",GAe,me(R(_r)(["Shift",R(i)("shortcuts.arrow")])),1)]),F("li",XAe,[F("span",null,me(R(i)("shortcuts.snapRotate")),1),g[27]||(g[27]=zt()),F("kbd",WAe,me(R(_r)(["Shift",R(i)("shortcuts.drag")])),1)]),F("li",YAe,[F("span",null,me(R(i)("shortcuts.resize")),1),g[28]||(g[28]=zt()),F("kbd",ZAe,me(R(_r)(["Shift",R(i)("shortcuts.resize")])),1)])])])])])):mt("",!0),s.value==="about"?(Ie(),Ne("div",JAe,[F("div",_Ae,[g[32]||(g[32]=F("img",{src:pN,alt:"Vue Print Designer",class:"w-12 h-12 mx-auto mb-2"},null,-1)),F("h2",$Ae,me(R(d)),1),F("div",ele,[F("a",tle,[g[29]||(g[29]=F("span",{class:"inline-flex h-5 w-5 items-center justify-center rounded-full bg-white text-gray-700 shadow-sm transition-colors group-hover:text-blue-700"},[F("svg",{viewBox:"0 0 16 16","aria-hidden":"true",class:"w-3.5 h-3.5"},[F("path",{fill:"currentColor",d:"M8 0C3.58 0 0 3.73 0 8.35c0 3.7 2.29 6.83 5.47 7.94.4.08.55-.18.55-.4 0-.2-.01-.86-.01-1.56-2.01.38-2.53-.5-2.69-.96-.09-.24-.48-.96-.82-1.16-.28-.16-.68-.56-.01-.57.63-.01 1.08.6 1.23.85.72 1.25 1.87.9 2.33.69.07-.54.28-.9.51-1.11-1.78-.21-3.64-.92-3.64-4.08 0-.9.31-1.64.82-2.22-.08-.21-.36-1.06.08-2.2 0 0 .67-.22 2.2.85.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.07 2.2-.85 2.2-.85.44 1.14.16 1.99.08 2.2.51.58.82 1.32.82 2.22 0 3.17-1.87 3.87-3.65 4.08.29.26.54.77.54 1.56 0 1.12-.01 2.03-.01 2.32 0 .22.15.48.55.4C13.71 15.18 16 12.04 16 8.35 16 3.73 12.42 0 8 0z"})])],-1)),g[30]||(g[30]=F("span",{class:"text-gray-500 group-hover:text-blue-600"},"0ldFive/Vue-Print-Designer",-1)),g[31]||(g[31]=F("span",{class:"text-gray-400"},"|",-1)),F("span",rle,me(R(i)("help.version"))+" "+me(R(c)),1)])])]),F("div",null,[F("h4",nle,me(R(i)("help.dependencies")),1),F("div",ile,[F("table",ole,[F("thead",ale,[F("tr",null,[F("th",sle,me(R(i)("help.package")),1),F("th",Ale,me(R(i)("help.version")),1)])]),F("tbody",lle,[(Ie(!0),Ne(Rt,null,Zr(R(u),p=>(Ie(),Ne("tr",{key:p.name,class:"hover:bg-gray-50"},[F("td",ule,me(p.name),1),F("td",cle,me(p.version),1)]))),128))])])])])])):mt("",!0)]),F("div",fle,[F("button",{onClick:A,class:"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors text-sm"},me(R(i)("common.close")),1)])])])])):mt("",!0)],8,["to"]))}}),hle={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function gle(t,e){return Ie(),Ne("svg",hle,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"m11.9 22l4.55-12h2.1l4.55 12H21l-1.075-3.05h-4.85L14 22zM4 19l-1.4-1.4l5.05-5.05q-.875-.875-1.588-2T4.75 8h2.1q.5.975 1 1.7t1.2 1.45q.825-.825 1.713-2.313T12.1 6H1V4h7V2h2v2h7v2h-2.9q-.525 1.8-1.575 3.7t-2.075 2.9l2.4 2.45l-.75 2.05l-3.05-3.125zm11.7-1.8h3.6l-1.8-5.1z"},null,-1)])])}const ple=kt({name:"material-symbols-translate",render:gle}),vle={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function mle(t,e){return Ie(),Ne("svg",vle,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M6.5 20q-2.275 0-3.887-1.575T1 14.575q0-1.95 1.175-3.475T5.25 9.15q.625-2.3 2.5-3.725T12 4q2.925 0 4.963 2.038T19 11q1.725.2 2.863 1.488T23 15.5q0 1.875-1.312 3.188T18.5 20z"},null,-1)])])}const yle=kt({name:"material-symbols-cloud",render:mle}),ble={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function wle(t,e){return Ie(),Ne("svg",ble,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M11 17H7q-2.075 0-3.537-1.463T2 12t1.463-3.537T7 7h4v2H7q-1.25 0-2.125.875T4 12t.875 2.125T7 15h4zm-3-4v-2h8v2zm5 4v-2h4q1.25 0 2.125-.875T20 12t-.875-2.125T17 9h-4V7h4q2.075 0 3.538 1.463T22 12t-1.463 3.538T17 17z"},null,-1)])])}const mN=kt({name:"material-symbols-link",render:wle}),xle={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Ble(t,e){return Ie(),Ne("svg",xle,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"m19.25 16.45l-1.5-1.55q1-.275 1.625-1.063T20 12q0-1.25-.875-2.125T17 9h-4V7h4q2.075 0 3.538 1.463T22 12q0 1.425-.737 2.625T19.25 16.45M15.85 13l-2-2H16v2zm3.95 9.6L1.4 4.2l1.4-1.4l18.4 18.4zM11 17H7q-2.075 0-3.537-1.463T2 12q0-1.725 1.05-3.075t2.7-1.775L7.6 9H7q-1.25 0-2.125.875T4 12t.875 2.125T7 15h4zm-3-4v-2h1.625l1.975 2z"},null,-1)])])}const yN=kt({name:"material-symbols-link-off",render:Ble}),Ele={class:"bg-white rounded-lg shadow-xl w-[700px] max-w-full h-[500px] flex overflow-hidden"},Cle={class:"w-48 bg-gray-50 border-r border-gray-200 flex flex-col"},Sle={class:"h-[60px] flex items-center px-4 border-b border-gray-200"},Ole={class:"text-lg font-semibold text-gray-800"},Tle={class:"flex-1 py-2"},Ile={class:"flex-1 flex flex-col min-w-0 relative"},Fle={class:"h-[60px] flex items-center justify-between px-4 border-b border-gray-200"},Ple={class:"text-lg font-semibold text-gray-800"},Lle={class:"flex-1 overflow-y-auto p-6"},kle={key:0,class:"space-y-4 text-sm text-gray-700"},Nle={class:"mb-2 font-medium text-gray-900"},Ule={class:"flex items-center gap-3"},Mle={class:"text-xs text-gray-500 mt-2"},Dle={class:"border-t border-gray-200 pt-4"},Rle={class:"mb-2 font-medium text-gray-900"},Qle={class:"flex flex-wrap gap-2"},Hle=["onClick"],zle={class:"text-xs text-gray-500 mt-2"},Vle={class:"border-t border-gray-200 pt-4"},jle={class:"flex items-center justify-between"},qle={class:"font-medium text-gray-900"},Kle={class:"sr-only"},Gle={class:"text-xs text-gray-500 mt-2"},Xle={class:"border-t border-gray-200 pt-4"},Wle={class:"flex items-center justify-between"},Yle={class:"font-medium text-gray-900"},Zle={class:"sr-only"},Jle={class:"text-xs text-gray-500 mt-2"},_le={class:"border-t border-gray-200 pt-4 space-y-3"},$le={class:"mb-2 font-medium text-gray-900"},eue={class:"flex items-center gap-3"},tue=["disabled"],rue=["disabled"],nue={class:"text-xs text-gray-500 mt-2"},iue={class:"flex items-center justify-between"},oue={class:"font-medium text-gray-900"},aue={class:"sr-only"},sue={class:"text-xs text-gray-500"},Aue={key:1,class:"space-y-4 text-sm text-gray-700"},lue={class:"mb-2 font-medium text-gray-900"},uue={class:"flex items-center gap-3"},cue={class:"text-xs text-gray-500 mt-2"},fue={key:2,class:"space-y-4 text-sm text-gray-700"},due={class:"space-y-2"},hue={class:"font-medium text-gray-900"},gue={class:"text-xs text-gray-500"},pue={class:"grid grid-cols-2 gap-4"},vue={class:"flex flex-col gap-1 col-span-2"},mue={class:"text-xs text-gray-500"},yue=["placeholder"],bue={class:"flex flex-col gap-1 col-span-2"},wue={class:"text-xs text-gray-500"},xue={class:"rounded bg-gray-100 px-3 py-2 text-xs text-gray-600 break-all"},Bue={class:"font-medium text-gray-700"},Eue={class:"w-full pt-2"},Cue=["disabled"],Sue={key:0,class:"mt-2 flex items-center justify-between text-xs text-gray-500"},Oue={key:3,class:"space-y-4 text-sm text-gray-700"},Tue={class:"space-y-2"},Iue={class:"font-medium text-gray-900"},Fue={class:"text-xs text-gray-500"},Pue={class:"grid grid-cols-2 gap-4"},Lue={class:"flex flex-col gap-1 col-span-2"},kue={class:"text-xs text-gray-500"},Nue=["placeholder"],Uue={class:"flex flex-col gap-1"},Mue={class:"text-xs text-gray-500"},Due={class:"flex flex-col gap-1"},Rue={class:"text-xs text-gray-500"},Que={class:"space-y-2 pt-2 border-t border-gray-200"},Hue={class:"font-medium text-gray-900"},zue={class:"text-xs text-gray-500"},Vue={class:"grid grid-cols-2 gap-4"},jue={class:"flex flex-col gap-1 col-span-2"},que={class:"text-xs text-gray-500"},Kue=["placeholder"],Gue={class:"flex flex-col gap-1 col-span-2"},Xue={class:"text-xs text-gray-500"},Wue=["disabled"],Yue={value:""},Zue=["value","disabled"],Jue={class:"rounded bg-gray-100 px-3 py-2 text-xs text-gray-600 break-all"},_ue={class:"font-medium text-gray-700"},$ue={class:"text-xs text-gray-500"},ece={class:"w-full pt-2"},tce=["disabled"],rce={key:0,class:"mt-2 flex items-center justify-between text-xs text-gray-500"},nce={class:"p-4 border-t border-gray-200 bg-gray-50 flex justify-end rounded-br-lg"},ice=Tr({__name:"SettingsModal",props:{show:{type:Boolean}},emits:["update:show"],setup(t,{emit:e}){const r=t,n=e,{t:i,locale:o}=zn(),{theme:a,setTheme:s}=du(),{autoSave:A}=oP(),l=fn(),u=li("modal-container",We(null)),{printMode:c,silentPrint:d,exportImageMerged:f,localSettings:g,remoteSettings:p,localStatus:b,remoteStatus:m,localRetryCount:w,remoteRetryCount:S,remoteClients:E,remoteSelectedClientId:Q,localWsUrl:j,remoteWsUrl:T,cancelLocalRetry:N,cancelRemoteRetry:D,connectLocal:K,disconnectLocal:L,connectRemote:O,disconnectRemote:P,fetchRemoteClients:x}=Sg(),q=We("basic"),$=We(o.value),Z=We(localStorage.getItem("print-designer-brand-key")||"default"),oe=We(localStorage.getItem("print-designer-brand-custom-hex")||"#3b82f6"),ae=it(()=>b.value||"disconnected"),re=it(()=>m.value||"disconnected"),te=it(()=>w.value||0),k=it(()=>S.value||0),W=it(()=>E.value||[]),ne=it(()=>ae.value==="connected"),Y=it(()=>re.value==="connected"),de=it(()=>ae.value==="connecting"),Be=it(()=>re.value==="connecting"),ke=it(()=>!!g.wsAddress),Se=it(()=>!!(p.apiBaseUrl&&p.username&&p.password)),qe=it(()=>ne.value?i("settings.status.connected"):i("settings.status.disconnected")),Oe=it(()=>Y.value?i("settings.status.connected"):i("settings.status.disconnected")),Ue=Pe=>Pe==="connected"?"bg-blue-600 hover:bg-blue-700 text-white border border-blue-600":"bg-transparent text-blue-600 border border-blue-600 hover:bg-blue-50",ie=(Pe,pe=0,ye=255)=>Math.min(Math.max(Pe,pe),ye),I=(Pe,pe,ye)=>{const Fe=Re=>ie(Math.round(Re)).toString(16).padStart(2,"0");return`#${Fe(Pe)}${Fe(pe)}${Fe(ye)}`},_=(Pe,pe,ye)=>({r:Pe.r+(pe.r-Pe.r)*ye,g:Pe.g+(pe.g-Pe.g)*ye,b:Pe.b+(pe.b-Pe.b)*ye}),z=Pe=>{const pe=vg(Pe);if(!pe)return null;const ye=pg(pe.h,pe.s,pe.v),Fe={r:255,g:255,b:255},Re={r:0,g:0,b:0},dt=_(ye,Fe,.92),ot=_(ye,Fe,.84),Ut=_(ye,Fe,.68),Mt=_(ye,Fe,.5),wt=_(ye,Fe,.32),Vt=_(ye,Fe,.16),jt=_(ye,Re,.12),wr=_(ye,Re,.24),or=_(ye,Re,.36),Lr=_(ye,Re,.5);return{"--brand-50":I(dt.r,dt.g,dt.b),"--brand-100":I(ot.r,ot.g,ot.b),"--brand-200":I(Ut.r,Ut.g,Ut.b),"--brand-300":I(Mt.r,Mt.g,Mt.b),"--brand-400":I(wt.r,wt.g,wt.b),"--brand-500":I(Vt.r,Vt.g,Vt.b),"--brand-600":I(ye.r,ye.g,ye.b),"--brand-700":I(jt.r,jt.g,jt.b),"--brand-800":I(wr.r,wr.g,wr.b),"--brand-900":I(or.r,or.g,or.b),"--brand-950":I(Lr.r,Lr.g,Lr.b)}},G=it(()=>z(oe.value)||{}),M=it(()=>[{key:"default",labelKey:"settings.themePresetDefault",colors:{"--brand-50":"#eff6ff","--brand-100":"#dbeafe","--brand-200":"#bfdbfe","--brand-300":"#93c5fd","--brand-400":"#60a5fa","--brand-500":"#3b82f6","--brand-600":"#2563eb","--brand-700":"#1d4ed8","--brand-800":"#1e40af","--brand-900":"#1e3a8a","--brand-950":"#172554"}},{key:"emerald",labelKey:"settings.themePresetEmerald",colors:{"--brand-50":"#ecfdf5","--brand-100":"#d1fae5","--brand-200":"#a7f3d0","--brand-300":"#6ee7b7","--brand-400":"#34d399","--brand-500":"#10b981","--brand-600":"#059669","--brand-700":"#047857","--brand-800":"#065f46","--brand-900":"#064e3b","--brand-950":"#022c22"}},{key:"amber",labelKey:"settings.themePresetAmber",colors:{"--brand-50":"#fffbeb","--brand-100":"#fef3c7","--brand-200":"#fde68a","--brand-300":"#fcd34d","--brand-400":"#fbbf24","--brand-500":"#f59e0b","--brand-600":"#d97706","--brand-700":"#b45309","--brand-800":"#92400e","--brand-900":"#78350f","--brand-950":"#451a03"}},{key:"rose",labelKey:"settings.themePresetRose",colors:{"--brand-50":"#fff1f2","--brand-100":"#ffe4e6","--brand-200":"#fecdd3","--brand-300":"#fda4af","--brand-400":"#fb7185","--brand-500":"#f43f5e","--brand-600":"#e11d48","--brand-700":"#be123c","--brand-800":"#9f1239","--brand-900":"#881337","--brand-950":"#4c0519"}},{key:"custom",labelKey:"settings.themePresetCustom",colors:G.value}]),V=Pe=>{const pe=document.documentElement;Object.entries(Pe).forEach(([ye,Fe])=>{pe.style.setProperty(ye,Fe)}),window.dispatchEvent(new CustomEvent("brand-theme-updated"))},ee=Pe=>{localStorage.setItem("print-designer-brand-vars",JSON.stringify(Pe))},se=Pe=>{const pe=M.value.find(ye=>ye.key===Pe)||M.value[0];pe.colors&&(V(pe.colors),ee(pe.colors),localStorage.setItem("print-designer-brand-key",pe.key))};(()=>{const Pe=localStorage.getItem("print-designer-brand-vars");if(Pe)try{const pe=JSON.parse(Pe);pe&&typeof pe=="object"&&V(pe)}catch{}})();const be=async()=>{try{if(de.value)return;if(ne.value){L();return}await K()}catch(Pe){console.error("Local connection error:",Pe)}},ge=async()=>{try{if(Be.value)return;if(Y.value){P();return}await O()}catch(Pe){console.error("Remote connection error:",Pe)}};Yt($,Pe=>{o.value=Pe,localStorage.setItem("print-designer-language",Pe)}),Yt(o,Pe=>{$.value!==Pe&&($.value=Pe)}),Yt(a,Pe=>{s(Pe)}),Yt(()=>r.show,Pe=>{l.setDisableGlobalShortcuts(Pe)}),Yt(oe,Pe=>{Pe&&(localStorage.setItem("print-designer-brand-custom-hex",Pe),Z.value==="custom"&&se("custom"))}),Yt(Z,Pe=>{se(Pe)},{immediate:!0}),Yt([q,m],([Pe,pe])=>{Pe!=="remote"||pe!=="connected"||x()});const le=()=>{try{n("update:show",!1)}catch(Pe){console.error("Error closing modal:",Pe)}},Ee=Pe=>{try{if(!r.show)return;Pe.key==="Escape"&&(Pe.preventDefault(),le())}catch(pe){console.error("Error in keydown handler:",pe)}};return xi(()=>{window.addEventListener("keydown",Ee)}),Bi(()=>{window.removeEventListener("keydown",Ee),r.show&&l.setDisableGlobalShortcuts(!1)}),(Pe,pe)=>(Ie(),Ur(Ns,{to:R(u)||"body"},[t.show?(Ie(),Ne("div",{key:0,class:"fixed inset-0 z-[99999] flex items-center justify-center bg-black/50 pointer-events-auto",onClick:Ci(le,["self"])},[F("div",Ele,[F("div",Cle,[F("div",Sle,[F("h3",Ole,me(R(i)("settings.title")),1)]),F("div",Tle,[F("button",{onClick:pe[0]||(pe[0]=ye=>q.value="basic"),class:St(["w-full text-left px-4 py-3 flex items-center gap-3 transition-colors text-sm",q.value==="basic"?"bg-white text-blue-600 border-l-4 border-blue-600 font-medium":"text-gray-600 hover:bg-gray-100 border-l-4 border-transparent"])},[et(R(_0),{class:"w-5 h-5"}),zt(" "+me(R(i)("settings.basic")),1)],2),F("button",{onClick:pe[1]||(pe[1]=ye=>q.value="language"),class:St(["w-full text-left px-4 py-3 flex items-center gap-3 transition-colors text-sm",q.value==="language"?"bg-white text-blue-600 border-l-4 border-blue-600 font-medium":"text-gray-600 hover:bg-gray-100 border-l-4 border-transparent"])},[et(R(ple),{class:"w-5 h-5"}),zt(" "+me(R(i)("settings.language")),1)],2),F("button",{onClick:pe[2]||(pe[2]=ye=>q.value="local"),class:St(["w-full text-left px-4 py-3 flex items-center gap-3 transition-colors text-sm",q.value==="local"?"bg-white text-blue-600 border-l-4 border-blue-600 font-medium":"text-gray-600 hover:bg-gray-100 border-l-4 border-transparent"])},[et(R(s5),{class:"w-5 h-5"}),zt(" "+me(R(i)("settings.localConnection")),1)],2),F("button",{onClick:pe[3]||(pe[3]=ye=>q.value="remote"),class:St(["w-full text-left px-4 py-3 flex items-center gap-3 transition-colors text-sm",q.value==="remote"?"bg-white text-blue-600 border-l-4 border-blue-600 font-medium":"text-gray-600 hover:bg-gray-100 border-l-4 border-transparent"])},[et(R(yle),{class:"w-5 h-5"}),zt(" "+me(R(i)("settings.remoteConnection")),1)],2)])]),F("div",Ile,[F("div",Fle,[F("h3",Ple,me(q.value==="basic"?R(i)("settings.basic"):q.value==="language"?R(i)("settings.language"):q.value==="local"?R(i)("settings.localConnection"):R(i)("settings.remoteConnection")),1),F("button",{onClick:le,class:"p-1 hover:bg-gray-100 rounded-full transition-colors text-gray-500"},[et(R(qc),{class:"w-4 h-4"})])]),F("div",Lle,[q.value==="basic"?(Ie(),Ne("div",kle,[F("div",null,[F("div",Nle,me(R(i)("settings.theme")),1),F("div",Ule,[F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",R(a)==="system"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"system","onUpdate:modelValue":pe[4]||(pe[4]=ye=>Nr(a)?a.value=ye:null)},null,512),[[su,R(a)]]),F("span",null,me(R(i)("settings.themeSystem")),1)],2),F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",R(a)==="light"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"light","onUpdate:modelValue":pe[5]||(pe[5]=ye=>Nr(a)?a.value=ye:null)},null,512),[[su,R(a)]]),F("span",null,me(R(i)("settings.themeLight")),1)],2),F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",R(a)==="dark"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"dark","onUpdate:modelValue":pe[6]||(pe[6]=ye=>Nr(a)?a.value=ye:null)},null,512),[[su,R(a)]]),F("span",null,me(R(i)("settings.themeDark")),1)],2)]),F("p",Mle,me(R(i)("settings.themeDesc")),1)]),F("div",Dle,[F("div",Rle,me(R(i)("settings.themeColor")),1),F("div",Qle,[(Ie(!0),Ne(Rt,null,Zr(M.value.filter(ye=>ye.key!=="custom"),ye=>(Ie(),Ne("button",{key:ye.key,type:"button",class:St(["flex items-center gap-2 px-3 py-2 border rounded text-xs transition-colors",Z.value===ye.key?"border-blue-600 text-blue-700":"border-gray-300 text-gray-700 hover:bg-gray-50"]),onClick:Fe=>Z.value=ye.key},[F("span",{class:"inline-block w-3.5 h-3.5 rounded-full",style:Bt({backgroundColor:ye.colors["--brand-600"]})},null,4),F("span",null,me(R(i)(ye.labelKey)),1)],10,Hle))),128)),et(Ld,{"model-value":oe.value,"onUpdate:modelValue":pe[8]||(pe[8]=ye=>{ye&&(oe.value=ye,Z.value="custom")}),"default-color":oe.value,"teleport-to-body":!0},{trigger:Al(({color:ye,open:Fe})=>[F("button",{type:"button",class:St(["flex items-center gap-2 px-3 py-2 border rounded text-xs transition-colors",Z.value==="custom"?"border-blue-600 text-blue-700":"border-gray-300 text-gray-700 hover:bg-gray-50"]),onClick:pe[7]||(pe[7]=Re=>Z.value="custom")},[F("span",{class:St(["inline-block w-3.5 h-3.5 rounded-full border border-gray-200",{"ring-2 ring-blue-500 ring-offset-1":Fe}]),style:Bt({backgroundColor:ye||oe.value})},null,6),F("span",null,me(R(i)("settings.themePresetCustom")),1)],2)]),_:1},8,["model-value","default-color"])]),F("p",zle,me(R(i)("settings.themeColorDesc")),1)]),F("div",Vle,[F("div",jle,[F("div",qle,me(R(i)("settings.autoSave")),1),F("button",{onClick:pe[9]||(pe[9]=ye=>A.value=!R(A)),class:St(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-blue-600 focus:ring-offset-2",R(A)?"bg-blue-600":"bg-gray-200"])},[F("span",Kle,me(R(i)("settings.autoSave")),1),F("span",{"aria-hidden":"true",class:St(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",R(A)?"translate-x-5":"translate-x-0"])},null,2)],2)]),F("p",Gle,me(R(i)("settings.autoSaveDesc")),1)]),F("div",Xle,[F("div",Wle,[F("div",Yle,me(R(i)("settings.exportImageMerged")),1),F("button",{onClick:pe[10]||(pe[10]=ye=>f.value=!R(f)),class:St(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-blue-600 focus:ring-offset-2",R(f)?"bg-blue-600":"bg-gray-200"])},[F("span",Zle,me(R(i)("settings.exportImageMerged")),1),F("span",{"aria-hidden":"true",class:St(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",R(f)?"translate-x-5":"translate-x-0"])},null,2)],2)]),F("p",Jle,me(R(i)("settings.exportImageMergedDesc")),1)]),F("div",_le,[F("div",null,[F("div",$le,me(R(i)("settings.printMode")),1),F("div",eue,[F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",R(c)==="browser"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"browser","onUpdate:modelValue":pe[11]||(pe[11]=ye=>Nr(c)?c.value=ye:null)},null,512),[[su,R(c)]]),F("span",null,me(R(i)("settings.printModeBrowser")),1)],2),F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",R(c)==="local"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"local","onUpdate:modelValue":pe[12]||(pe[12]=ye=>Nr(c)?c.value=ye:null),disabled:!ne.value},null,8,tue),[[su,R(c)]]),F("span",null,me(R(i)("settings.printModeLocal")),1)],2),F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",R(c)==="remote"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"remote","onUpdate:modelValue":pe[13]||(pe[13]=ye=>Nr(c)?c.value=ye:null),disabled:!Y.value},null,8,rue),[[su,R(c)]]),F("span",null,me(R(i)("settings.printModeRemote")),1)],2)]),F("p",nue,me(R(i)("settings.printModeDesc")),1)]),F("div",iue,[F("div",oue,me(R(i)("settings.silentPrint")),1),F("button",{onClick:pe[14]||(pe[14]=ye=>d.value=!R(d)),class:St(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-blue-600 focus:ring-offset-2",R(d)?"bg-blue-600":"bg-gray-200"])},[F("span",aue,me(R(i)("settings.silentPrint")),1),F("span",{"aria-hidden":"true",class:St(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",R(d)?"translate-x-5":"translate-x-0"])},null,2)],2)]),F("p",sue,me(R(i)("settings.silentPrintDesc")),1)])])):mt("",!0),q.value==="language"?(Ie(),Ne("div",Aue,[F("div",lue,me(R(i)("settings.selectLanguage")),1),F("div",uue,[F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",$.value==="zh"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"zh","onUpdate:modelValue":pe[15]||(pe[15]=ye=>$.value=ye)},null,512),[[su,$.value]]),F("span",null,me(R(i)("settings.zhLabel")),1)],2),F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",$.value==="en"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"en","onUpdate:modelValue":pe[16]||(pe[16]=ye=>$.value=ye)},null,512),[[su,$.value]]),F("span",null,me(R(i)("settings.enLabel")),1)],2)]),F("p",cue,me(R(i)("settings.languageDesc")),1)])):mt("",!0),q.value==="local"?(Ie(),Ne("div",fue,[F("div",due,[F("div",hue,me(R(i)("settings.localClientTitle")),1),F("p",gue,me(R(i)("settings.localClientDesc")),1)]),F("div",pue,[F("label",vue,[F("span",mue,me(R(i)("settings.wsAddress")),1),fr(F("input",{"onUpdate:modelValue":pe[17]||(pe[17]=ye=>R(g).wsAddress=ye),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600",placeholder:R(i)("settings.localWsAddressPlaceholder")},null,8,yue),[[wn,R(g).wsAddress]])]),F("label",bue,[F("span",wue,me(R(i)("settings.secretKey")),1),fr(F("input",{"onUpdate:modelValue":pe[18]||(pe[18]=ye=>R(g).secretKey=ye),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600"},null,512),[[wn,R(g).secretKey]])])]),F("div",xue,[F("span",Bue,me(R(i)("settings.connectionUrl"))+": ",1),F("span",null,me(R(j)),1)]),F("div",Eue,[F("button",{onClick:be,disabled:de.value||te.value>0||!ne.value&&!ke.value,class:St(["w-full inline-flex items-center justify-center gap-2 px-3 h-9 rounded transition-colors text-sm shadow-sm disabled:opacity-50 disabled:pointer-events-none disabled:cursor-not-allowed",Ue(ae.value)])},[ne.value?(Ie(),Ur(R(mN),{key:0,class:"w-4 h-4"})):(Ie(),Ur(R(yN),{key:1,class:"w-4 h-4"})),F("span",null,me(qe.value),1)],10,Cue),te.value>0&&!ne.value?(Ie(),Ne("div",Sue,[F("span",null,me(R(i)("settings.retrying",{count:te.value,max:10})),1),F("button",{onClick:pe[19]||(pe[19]=(...ye)=>R(N)&&R(N)(...ye)),class:"text-blue-600 hover:text-blue-700"},me(R(i)("settings.cancelRetry")),1)])):mt("",!0)])])):mt("",!0),q.value==="remote"?(Ie(),Ne("div",Oue,[F("div",Tue,[F("div",Iue,me(R(i)("settings.remoteLoginTitle")),1),F("p",Fue,me(R(i)("settings.remoteLoginDesc")),1)]),F("div",Pue,[F("label",Lue,[F("span",kue,me(R(i)("settings.apiBaseUrl")),1),fr(F("input",{"onUpdate:modelValue":pe[20]||(pe[20]=ye=>R(p).apiBaseUrl=ye),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600",placeholder:R(i)("settings.apiBasePlaceholder")},null,8,Nue),[[wn,R(p).apiBaseUrl]])]),F("label",Uue,[F("span",Mue,me(R(i)("settings.username")),1),fr(F("input",{"onUpdate:modelValue":pe[21]||(pe[21]=ye=>R(p).username=ye),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600"},null,512),[[wn,R(p).username]])]),F("label",Due,[F("span",Rue,me(R(i)("settings.password")),1),fr(F("input",{"onUpdate:modelValue":pe[22]||(pe[22]=ye=>R(p).password=ye),type:"password",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600"},null,512),[[wn,R(p).password]])])]),F("div",Que,[F("div",Hue,me(R(i)("settings.remoteWsTitle")),1),F("p",zue,me(R(i)("settings.remoteWsDesc")),1)]),F("div",Vue,[F("label",jue,[F("span",que,me(R(i)("settings.wsAddress")),1),fr(F("input",{"onUpdate:modelValue":pe[23]||(pe[23]=ye=>R(p).wsAddress=ye),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600",placeholder:R(i)("settings.wsAddressPlaceholder")},null,8,Kue),[[wn,R(p).wsAddress]])]),F("label",Gue,[F("span",Xue,me(R(i)("settings.remoteClient")),1),fr(F("select",{"onUpdate:modelValue":pe[24]||(pe[24]=ye=>Nr(Q)?Q.value=ye:null),class:"w-full px-3 py-2 border rounded bg-white focus:ring-2 focus:ring-blue-600 focus:border-blue-600",disabled:re.value!=="connected"||W.value.length===0},[F("option",Yue,me(R(i)("settings.remoteClientPlaceholder")),1),(Ie(!0),Ne(Rt,null,Zr(W.value,ye=>(Ie(),Ne("option",{key:ye.client_id,value:ye.client_id,disabled:ye.online===!1},me(ye.client_name||ye.client_id)+me(ye.online===!1?" (offline)":""),9,Zue))),128))],8,Wue),[[Ms,R(Q)]])])]),F("div",Jue,[F("span",_ue,me(R(i)("settings.connectionUrl"))+": ",1),F("span",null,me(R(T)),1)]),F("p",$ue,me(R(i)("settings.remoteAuthHint")),1),F("div",ece,[F("button",{onClick:ge,disabled:Be.value||k.value>0||!Y.value&&!Se.value,class:St(["w-full inline-flex items-center justify-center gap-2 px-3 h-9 rounded transition-colors text-sm shadow-sm disabled:opacity-50 disabled:pointer-events-none disabled:cursor-not-allowed",Ue(re.value)])},[Y.value?(Ie(),Ur(R(mN),{key:0,class:"w-4 h-4"})):(Ie(),Ur(R(yN),{key:1,class:"w-4 h-4"})),F("span",null,me(Oe.value),1)],10,tce),k.value>0&&!Y.value?(Ie(),Ne("div",rce,[F("span",null,me(R(i)("settings.retrying",{count:k.value,max:10})),1),F("button",{onClick:pe[25]||(pe[25]=(...ye)=>R(D)&&R(D)(...ye)),class:"text-blue-600 hover:text-blue-700"},me(R(i)("settings.cancelRetry")),1)])):mt("",!0)])])):mt("",!0)]),F("div",nce,[F("button",{onClick:le,class:"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors text-sm"},me(R(i)("common.close")),1)])])])])):mt("",!0)],8,["to"]))}}),oce={class:"h-14 bg-white border-b border-gray-200 flex items-center justify-between px-4 z-[2000] relative shadow-sm"},ace={class:"flex items-center gap-2"},sce=["src"],Ace={key:1,class:"font-semibold text-gray-700"},lce=Tr({__name:"Header",setup(t){const{t:e}=zn(),r=fn(),n=it(()=>{var s;return((s=r.branding)==null?void 0:s.showLogo)!==!1}),i=it(()=>{var s;return((s=r.branding)==null?void 0:s.showTitle)!==!1}),o=it(()=>{var s;return((s=r.branding)==null?void 0:s.logoUrl)||pN}),a=it(()=>{var s;return((s=r.branding)==null?void 0:s.title)||e("common.appTitle")});return(s,A)=>(Ie(),Ne("header",oce,[F("div",ace,[n.value?(Ie(),Ne("img",{key:0,src:o.value,alt:"Logo",class:"w-8 h-8 object-contain"},null,8,sce)):mt("",!0),i.value?(Ie(),Ne("h1",Ace,me(a.value),1)):mt("",!0)]),et(Ese,{onToggleHelp:A[0]||(A[0]=l=>R(r).setShowHelp(!0)),onToggleSettings:A[1]||(A[1]=l=>R(r).setShowSettings(!0))}),et(dle,{show:R(r).showHelp,"onUpdate:show":A[2]||(A[2]=l=>R(r).setShowHelp(l))},null,8,["show"]),et(ice,{show:R(r).showSettings,"onUpdate:show":A[3]||(A[3]=l=>R(r).setShowSettings(l))},null,8,["show"])]))}}),uce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function cce(t,e){return Ie(),Ne("svg",uce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M7 20V7H2V4h13v3h-5v13zm9 0v-8h-3V9h9v3h-3v8z"},null,-1)])])}const bN=kt({name:"material-symbols-text-fields",render:cce}),fce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function dce(t,e){return Ie(),Ne("svg",fce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"m6 20l1-4H3l.5-2h4l1-4h-4L5 8h4l1-4h2l-1 4h4l1-4h2l-1 4h4l-.5 2h-4l-1 4h4l-.5 2h-4l-1 4h-2l1-4H9l-1 4zm3.5-6h4l1-4h-4z"},null,-1)])])}const wN=kt({name:"material-symbols-numbers",render:dce}),hce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function gce(t,e){return Ie(),Ne("svg",hce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M3 8V5q0-.825.588-1.412T5 3h14q.825 0 1.413.588T21 5v3zm2 13q-.825 0-1.412-.587T3 19v-9h4.5v11zm11.5 0V10H21v9q0 .825-.587 1.413T19 21zm-7 0V10h5v11z"},null,-1)])])}const xN=kt({name:"material-symbols-table-chart",render:gce}),pce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function vce(t,e){return Ie(),Ne("svg",pce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M1 19V5h2v14zm3 0V5h2v14zm3 0V5h1v14zm3 0V5h2v14zm3 0V5h3v14zm4 0V5h1v14zm3 0V5h3v14z"},null,-1)])])}const BN=kt({name:"material-symbols-barcode",render:vce}),mce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function yce(t,e){return Ie(),Ne("svg",mce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M3 11V3h8v8zm2-2h4V5H5zM3 21v-8h8v8zm2-2h4v-4H5zm8-8V3h8v8zm2-2h4V5h-4zm4 12v-2h2v2zm-6-6v-2h2v2zm2 2v-2h2v2zm-2 2v-2h2v2zm2 2v-2h2v2zm2-2v-2h2v2zm0-4v-2h2v2zm2 2v-2h2v2z"},null,-1)])])}const EN=kt({name:"material-symbols-qr-code",render:yce}),bce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function wce(t,e){return Ie(),Ne("svg",bce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M4 13v-2h16v2z"},null,-1)])])}const CN=kt({name:"material-symbols-horizontal-rule",render:wce}),xce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Bce(t,e){return Ie(),Ne("svg",xce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M5 21q-.825 0-1.412-.587T3 19V5q0-.825.588-1.412T5 3h14q.825 0 1.413.588T21 5v14q0 .825-.587 1.413T19 21zm0-2h14V5H5z"},null,-1)])])}const SN=kt({name:"material-symbols-check-box-outline-blank",render:Bce}),Ece={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Cce(t,e){return Ie(),Ne("svg",Ece,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M12 22q-2.075 0-3.9-.788t-3.175-2.137T2.788 15.9T2 12t.788-3.9t2.137-3.175T8.1 2.788T12 2t3.9.788t3.175 2.137T21.213 8.1T22 12t-.788 3.9t-2.137 3.175t-3.175 2.138T12 22m0-2q3.35 0 5.675-2.325T20 12t-2.325-5.675T12 4T6.325 6.325T4 12t2.325 5.675T12 20"},null,-1)])])}const ON=kt({name:"material-symbols-radio-button-unchecked",render:Cce}),Sce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Oce(t,e){return Ie(),Ne("svg",Sce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"m5.825 21l1.625-7.025L2 9.25l7.2-.625L12 2l2.8 6.625l7.2.625l-5.45 4.725L18.175 21L12 17.275z"},null,-1)])])}const Tce=kt({name:"material-symbols-star",render:Oce}),Ice={class:"w-64 bg-white dark:bg-gray-900 border-r border-gray-200 dark:border-gray-700 flex flex-col h-full z-40"},Fce={class:"p-4 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-800"},Pce={class:"font-semibold text-gray-700 dark:text-gray-200"},Lce={class:"text-xs text-gray-500 dark:text-gray-400 mt-1"},kce={class:"flex border-b border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900"},Nce={key:0,class:"absolute bottom-0 left-0 w-full h-0.5 bg-blue-600 dark:bg-blue-400"},Uce={key:0,class:"absolute bottom-0 left-0 w-full h-0.5 bg-blue-600 dark:bg-blue-400"},Mce={class:"flex-1 overflow-y-auto"},Dce={class:"text-xs font-semibold text-gray-500 dark:text-gray-400 uppercase tracking-wider mb-3 px-1"},Rce={class:"grid grid-cols-2 gap-3"},Qce=["onDragstart"],Hce={class:"text-sm font-medium text-gray-700 dark:text-gray-200"},zce={key:0,class:"p-6 text-center"},Vce={class:"text-sm text-gray-500 dark:text-gray-400"},jce={key:1,class:"p-4 grid grid-cols-2 gap-3"},qce=["onDragstart"],Kce=["title"],Gce=["onClick","title"],Xce=["onClick"],Wce=["onClick"],Yce=["onClick"],Zce=["onClick"],Jce=["onClick"],_ce=Tr({__name:"Sidebar",setup(t){const{t:e}=zn(),r=fn(),n=li("modal-container",We(null)),i=We("standard"),o=it(()=>r.customElements),a=We(null),s=We({}),A=We(!1),l=We(null),u=We(""),c=We(!1),d=We(""),f=We(null),g=We([]),p=[{title:"sidebar.general",items:[{type:ct.TEXT,label:"sidebar.text",icon:bN},{type:ct.IMAGE,label:"sidebar.image",icon:yP},{type:ct.PAGE_NUMBER,label:"sidebar.pagination",icon:wN}]},{title:"sidebar.dataCodes",items:[{type:ct.TABLE,label:"sidebar.table",icon:xN},{type:ct.BARCODE,label:"sidebar.barcode",icon:BN},{type:ct.QRCODE,label:"sidebar.qrcode",icon:EN}]},{title:"sidebar.shapes",items:[{type:ct.LINE,label:"sidebar.line",icon:CN},{type:ct.RECT,label:"sidebar.rect",icon:SN},{type:ct.CIRCLE,label:"sidebar.circle",icon:ON}]}],b=(P,x)=>{P.dataTransfer&&(P.dataTransfer.setData("application/json",JSON.stringify({type:x})),P.dataTransfer.effectAllowed="copy")},m=(P,x)=>{P.dataTransfer&&(P.dataTransfer.setData("application/json",JSON.stringify({type:x.element.type,payload:x.element})),P.dataTransfer.effectAllowed="copy")},w=P=>{switch(P){case ct.TEXT:return bN;case ct.IMAGE:return yP;case ct.TABLE:return xN;case ct.PAGE_NUMBER:return wN;case ct.BARCODE:return BN;case ct.QRCODE:return EN;case ct.LINE:return CN;case ct.RECT:return SN;case ct.CIRCLE:return ON;default:return Tce}},S=(P,x)=>{if(P.stopPropagation(),a.value===x)a.value=null;else{const $=P.currentTarget.getBoundingClientRect();let Z=$.right-128;Z<5&&(Z=$.left),window.innerHeight-$.bottom<210?s.value={bottom:`${window.innerHeight-$.top+5}px`,left:`${Z}px`}:s.value={top:`${$.bottom+5}px`,left:`${Z}px`},a.value=x}},E=P=>{if(!a.value)return;P.composedPath().some($=>$ instanceof Element?$.classList.contains("sidebar-context-menu"):!1)||(a.value=null)},Q=P=>{a.value=null,l.value=P.id,u.value=P.name,A.value=!0},j=P=>{l.value&&P&&r.renameCustomElement(l.value,P)},T=P=>{a.value=null,r.addCustomElement(`${P.name} Copy`,P.element)},N=P=>{a.value=null,confirm(e("sidebar.confirmDelete",{name:P.name}))&&r.removeCustomElement(P.id)},D=P=>{if(a.value=null,r.editingCustomElementId!==P.id){if(r.editingCustomElementId&&r.editingCustomElementId!==P.id){const x=r.customElements.find($=>$.id===r.editingCustomElementId),q=x?x.name:"";if(!confirm(e("sidebar.confirmSwitchEdit",{name:q})))return;r.cancelCustomElementEdit()}r.startCustomElementEdit(P.id)}},K=P=>ok(P.element),L=P=>{a.value=null,f.value=P;const x=P.testData||{},q=K5(P.element,x);g.value=Object.keys(q),d.value=JSON.stringify(q,null,2),c.value=!0},O=()=>{var oe;const P=f.value,x=new Set(g.value||[]);if(f.value=null,g.value=[],!P)return;let q=null;try{const ae=((oe=d.value)==null?void 0:oe.trim())||"{}",re=JSON.parse(ae);re&&typeof re=="object"&&!Array.isArray(re)&&(q=re)}catch{q=null}if(!q){alert(e("common.invalidJson"));return}if(x.size>0){const ae=Object.keys(q);if(ae.length!==x.size||ae.some(te=>!x.has(te))){alert(e("common.testDataKeyChanged"));return}}const $=K5(P.element,P.testData||{}),Z={};Object.keys($).forEach(ae=>{(x.size===0||x.has(ae))&&(Z[ae]=Object.prototype.hasOwnProperty.call(q,ae)?q[ae]:$[ae])}),P.testData=Z,r.saveCustomElements()};return xi(()=>{window.addEventListener("mousedown",E)}),Bi(()=>{window.removeEventListener("mousedown",E)}),(P,x)=>(Ie(),Ne("aside",Ice,[F("div",Fce,[F("h2",Pce,me(R(e)("sidebar.elements")),1),F("p",Lce,me(R(e)("sidebar.dragToCanvas")),1)]),F("div",kce,[F("button",{onClick:x[0]||(x[0]=q=>i.value="standard"),class:St(["flex-1 py-3 text-sm font-medium transition-colors relative",i.value==="standard"?"text-blue-600 dark:text-blue-400":"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-800"])},[zt(me(R(e)("sidebar.standard"))+" ",1),i.value==="standard"?(Ie(),Ne("div",Nce)):mt("",!0)],2),F("button",{onClick:x[1]||(x[1]=q=>i.value="custom"),class:St(["flex-1 py-3 text-sm font-medium transition-colors relative",i.value==="custom"?"text-blue-600 dark:text-blue-400":"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-800"])},[zt(me(R(e)("sidebar.custom"))+" ",1),i.value==="custom"?(Ie(),Ne("div",Uce)):mt("",!0)],2)]),F("div",Mce,[i.value==="standard"?(Ie(),Ne(Rt,{key:0},Zr(p,q=>F("div",{key:q.title,class:"p-4 border-b border-gray-100 dark:border-gray-800 last:border-0"},[F("h3",Dce,me(R(e)(q.title)),1),F("div",Rce,[(Ie(!0),Ne(Rt,null,Zr(q.items,$=>(Ie(),Ne("div",{key:$.type,class:"flex flex-col items-center justify-center p-4 border border-gray-200 dark:border-gray-700 rounded-lg theme-hover-border theme-hover-bg cursor-move transition-all dark:bg-gray-800 dark:hover:bg-gray-700",draggable:"true",onDragstart:Z=>b(Z,$.type)},[(Ie(),Ur(qh($.icon),{class:"w-8 h-8 text-gray-600 dark:text-gray-300 mb-2"})),F("span",Hce,me(R(e)($.label)),1)],40,Qce))),128))])])),64)):mt("",!0),i.value==="custom"?(Ie(),Ne(Rt,{key:1},[o.value.length===0?(Ie(),Ne("div",zce,[F("p",Vce,me(R(e)("sidebar.noCustomElements")),1)])):(Ie(),Ne("div",jce,[(Ie(!0),Ne(Rt,null,Zr(o.value,q=>(Ie(),Ne("div",{key:q.id,class:"group relative flex flex-col items-center justify-center p-4 border border-gray-200 dark:border-gray-700 rounded-lg theme-hover-border theme-hover-bg cursor-move transition-all dark:bg-gray-800 dark:hover:bg-gray-700",draggable:"true",onDragstart:$=>m($,q)},[(Ie(),Ur(qh(w(q.element.type)),{class:"w-8 h-8 text-gray-600 dark:text-gray-300 mb-2"})),F("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-200 truncate w-full text-center",title:q.name},me(q.name),9,Kce),F("button",{onClick:$=>S($,q.id),class:St(["absolute top-1 right-1 p-1 text-gray-400 dark:text-gray-500 hover:text-gray-600 dark:hover:text-gray-300 rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 opacity-0 group-hover:opacity-100 transition-opacity",{"opacity-100 bg-gray-100 dark:bg-gray-700 text-gray-600 dark:text-gray-300":a.value===q.id}]),title:R(e)("sidebar.moreOptions")},[et(R(gN),{class:"w-4 h-4"})],10,Gce)],40,qce))),128))]))],64)):mt("",!0)]),(Ie(),Ur(Ns,{to:R(n)||"body"},[a.value?(Ie(),Ne("div",{key:0,class:"fixed inset-0 z-[2000] pointer-events-auto",onClick:x[3]||(x[3]=q=>a.value=null)},[F("div",{class:"sidebar-context-menu absolute w-32 bg-white dark:bg-gray-800 rounded shadow-lg border border-gray-100 dark:border-gray-700 z-[2001] py-1 pointer-events-auto",style:Bt(s.value),onClick:x[2]||(x[2]=Ci(()=>{},["stop"]))},[(Ie(!0),Ne(Rt,null,Zr(o.value,q=>(Ie(),Ne(Rt,{key:q.id},[q.id===a.value?(Ie(),Ne(Rt,{key:0},[F("button",{onClick:$=>D(q),class:"w-full text-left px-3 py-1.5 text-xs text-gray-700 dark:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-700 flex items-center gap-2"},[et(R(Ex),{class:"w-3.5 h-3.5"}),zt(" "+me(R(e)("sidebar.editElement")),1)],8,Xce),K(q)?(Ie(),Ne("button",{key:0,onClick:$=>L(q),class:"w-full text-left px-3 py-1.5 text-xs text-gray-700 dark:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-700 flex items-center gap-2"},[et(R(wu),{class:"w-3.5 h-3.5"}),zt(" "+me(R(e)("common.testData")),1)],8,Wce)):mt("",!0),F("button",{onClick:$=>Q(q),class:"w-full text-left px-3 py-1.5 text-xs text-gray-700 dark:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-700 flex items-center gap-2"},[et(R(Ex),{class:"w-3.5 h-3.5"}),zt(" "+me(R(e)("sidebar.rename")),1)],8,Yce),F("button",{onClick:$=>T(q),class:"w-full text-left px-3 py-1.5 text-xs text-gray-700 dark:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-700 flex items-center gap-2"},[et(R(dd),{class:"w-3.5 h-3.5"}),zt(" "+me(R(e)("sidebar.copy")),1)],8,Zce),F("button",{onClick:$=>N(q),class:"w-full text-left px-3 py-1.5 text-xs text-red-600 dark:text-red-400 hover:bg-red-50 dark:hover:bg-red-900/30 flex items-center gap-2"},[et(R(fd),{class:"w-3.5 h-3.5"}),zt(" "+me(R(e)("sidebar.delete")),1)],8,Jce)],64)):mt("",!0)],64))),128))],4)])):mt("",!0)],8,["to"])),et(jg,{show:A.value,"initial-value":u.value,title:R(e)("sidebar.renameModalTitle"),placeholder:R(e)("sidebar.enterNamePlaceholder"),onClose:x[4]||(x[4]=q=>A.value=!1),onSave:j},null,8,["show","initial-value","title","placeholder"]),et(Vg,{visible:c.value,"onUpdate:visible":x[5]||(x[5]=q=>c.value=q),title:R(e)("common.testData"),value:d.value,language:"json","onUpdate:value":x[6]||(x[6]=q=>d.value=q),onClose:O},null,8,["visible","title","value"])]))}}),$ce={key:0,class:"flex items-center justify-between"},efe={class:"text-sm text-gray-700 dark:text-gray-200 font-medium"},tfe=["disabled"],rfe={class:"sr-only"},nfe={key:1},ife={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1"},ofe=["value","disabled","placeholder"],afe=["type","value","disabled","placeholder","min","max","step"],Nd=Tr({__name:"PropertyInput",props:{label:{},value:{type:[String,Number,Boolean]},type:{},placeholder:{},min:{},max:{},step:{},disabled:{type:Boolean}},emits:["update:value"],setup(t,{emit:e}){const r=e,n=i=>{const o=i.target;r("update:value",o.value)};return(i,o)=>t.type==="switch"?(Ie(),Ne("div",$ce,[F("label",efe,me(t.label),1),F("button",{type:"button",disabled:t.disabled,onClick:o[0]||(o[0]=a=>i.$emit("update:value",!t.value)),class:St(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-blue-600 focus:ring-offset-2 disabled:opacity-50 disabled:cursor-not-allowed",t.value?"bg-blue-600 dark:bg-blue-500":"bg-gray-200 dark:bg-gray-700"])},[F("span",rfe,"Toggle "+me(t.label),1),F("span",{"aria-hidden":"true",class:St(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white dark:bg-gray-100 shadow ring-0 transition duration-200 ease-in-out",t.value?"translate-x-5":"translate-x-0"])},null,2)],10,tfe)])):(Ie(),Ne("div",nfe,[F("label",ife,me(t.label),1),t.type==="textarea"?(Ie(),Ne("textarea",{key:0,value:t.value===void 0||t.value===null?"":String(t.value),disabled:t.disabled,placeholder:t.placeholder,onInput:n,class:"w-full px-2 py-1 text-sm border border-gray-300 dark:border-gray-700 rounded focus:border-blue-500 dark:focus:border-blue-400 outline-none h-24 resize-y disabled:bg-gray-100 dark:disabled:bg-gray-800 disabled:text-gray-500 dark:disabled:text-gray-400 bg-white dark:bg-gray-800 text-gray-700 dark:text-gray-200"},null,40,ofe)):(Ie(),Ne("input",{key:1,type:t.type||"text",value:t.value===void 0||t.value===null?"":String(t.value),disabled:t.disabled,placeholder:t.placeholder,min:t.min,max:t.max,step:t.step,onChange:n,class:"w-full px-2 py-1 text-sm border border-gray-300 dark:border-gray-700 rounded focus:border-blue-500 dark:focus:border-blue-400 outline-none disabled:bg-gray-100 dark:disabled:bg-gray-800 disabled:text-gray-500 dark:disabled:text-gray-400 bg-white dark:bg-gray-800 text-gray-700 dark:text-gray-200"},null,40,afe))]))}}),sfe={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1"},Afe=["value","disabled"],lfe=["value"],ufe=Tr({__name:"PropertySelect",props:{label:{},value:{type:[String,Number,Boolean]},options:{},disabled:{type:Boolean}},emits:["update:value"],setup(t,{emit:e}){const r=t,n=e,i=o=>{const s=o.target.value,A=r.options.find(l=>String(l.value)===s);n("update:value",A?A.value:s)};return(o,a)=>(Ie(),Ne("div",null,[F("label",sfe,me(t.label),1),F("select",{value:t.value,disabled:t.disabled,onChange:i,class:"w-full px-2 py-1 text-sm border border-gray-300 dark:border-gray-700 rounded focus:border-blue-500 dark:focus:border-blue-400 outline-none disabled:bg-gray-100 dark:disabled:bg-gray-800 disabled:text-gray-500 dark:disabled:text-gray-400 bg-white dark:bg-gray-800 text-gray-700 dark:text-gray-200"},[(Ie(!0),Ne(Rt,null,Zr(t.options,s=>(Ie(),Ne("option",{key:String(s.value),value:s.value,class:"dark:bg-gray-800 dark:text-gray-200"},me(s.label),9,lfe))),128))],40,Afe)]))}}),cfe={class:"flex items-center justify-between"},ffe={class:"text-xs text-gray-500 dark:text-gray-400"},dfe={class:"flex items-center gap-2"},hfe={key:0,class:"absolute inset-0 flex items-center justify-center"},TN=Tr({__name:"PropertyColor",props:{label:{},value:{},disabled:{type:Boolean}},emits:["update:value"],setup(t,{emit:e}){const r=e;return(n,i)=>(Ie(),Ne("div",cfe,[F("label",ffe,me(t.label),1),F("div",dfe,[et(Ld,{"model-value":t.value,"onUpdate:modelValue":i[0]||(i[0]=o=>r("update:value",o)),disabled:t.disabled,"allow-transparent":!0},{trigger:Al(({color:o,open:a})=>[F("div",{class:St(["w-8 h-6 rounded border border-gray-300 dark:border-gray-600 cursor-pointer relative overflow-hidden hover:border-blue-500 dark:hover:border-blue-400 transition-colors",{"ring-2 ring-blue-500 dark:ring-blue-400 ring-offset-1 dark:ring-offset-gray-900":a,"opacity-50 cursor-not-allowed":t.disabled}])},[i[2]||(i[2]=F("div",{class:"absolute inset-0 bg-[url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwZ+5wNisxL//8n04mEeRAAAhNwX869V4DYAAAAASUVORK5CYII=')] opacity-50"},null,-1)),F("div",{class:"absolute inset-0",style:Bt({backgroundColor:o==="transparent"?"transparent":o})},null,4),o==="transparent"?(Ie(),Ne("div",hfe,[...i[1]||(i[1]=[F("div",{class:"w-full h-[1px] bg-red-500 rotate-45"},null,-1)])])):mt("",!0)],2)]),_:1},8,["model-value","disabled"])])]))}}),gfe={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function pfe(t,e){return Ie(),Ne("svg",gfe,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M3 21v-8h2v4.6L17.6 5H13V3h8v8h-2V6.4L6.4 19H11v2z"},null,-1)])])}const vfe=kt({name:"material-symbols-open-in-full",render:pfe}),mfe={class:"flex flex-col gap-1"},yfe={class:"flex justify-between items-center"},bfe={class:"text-xs text-gray-500 font-medium"},wfe={class:"flex items-center gap-2"},xfe={class:"text-[10px] text-gray-400 uppercase"},Bfe=Pd(Tr({__name:"PropertyCode",props:{label:{},value:{},language:{},disabled:{type:Boolean},height:{}},emits:["update:value"],setup(t,{emit:e}){const r=e;fn();const{isDark:n}=du(),i=We(!1),o=it(()=>({minimap:{enabled:!1},lineNumbers:"on",glyphMargin:!1,folding:!0,wordWrap:"on",automaticLayout:!0,scrollBeyondLastLine:!1,theme:n.value?"vs-dark":"vs",fontSize:12,fontFamily:'Consolas, "Courier New", monospace',renderLineHighlight:"none",overviewRulerLanes:0,hideCursorInOverviewRuler:!0,contextmenu:!1})),a=u=>{r("update:value",u||"")},s=()=>{i.value=!i.value},A=()=>{i.value=!1},l=u=>{r("update:value",u)};return(u,c)=>(Ie(),Ne("div",mfe,[F("div",yfe,[F("label",bfe,me(t.label),1),F("div",wfe,[F("span",xfe,me(t.language),1),F("button",{onClick:s,class:"text-gray-400 hover:text-blue-600 transition-colors p-0.5 rounded hover:bg-gray-100",title:"Expand Editor"},[et(R(vfe),{class:"w-3.5 h-3.5"})])])]),F("div",{class:"border border-gray-300 rounded overflow-hidden focus-within:border-blue-500 focus-within:ring-1 focus-within:ring-blue-500 resize-y relative group",style:Bt({height:`${t.height||200}px`,minHeight:"100px",maxHeight:"600px"})},[et(R(hN),{value:t.value,language:t.language,options:{...o.value,readOnly:t.disabled},"onUpdate:value":a,class:"w-full h-full"},null,8,["value","language","options"]),c[1]||(c[1]=F("div",{class:"absolute bottom-0 right-0 w-3 h-3 cursor-ns-resize pointer-events-none bg-gradient-to-tl from-gray-300 to-transparent opacity-50 group-hover:opacity-100"},null,-1))],4),et(Vg,{visible:i.value,"onUpdate:visible":c[0]||(c[0]=d=>i.value=d),title:t.label,value:t.value,language:t.language,"read-only":t.disabled,"onUpdate:value":l,onClose:A},null,8,["visible","title","value","language","read-only"])]))}}),[["__scopeId","data-v-44208768"]]),Efe={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1"},Cfe={class:"space-y-2"},Sfe=["value","disabled","placeholder"],Ofe={class:"flex flex-col gap-1"},Tfe=["disabled"],Ife={class:"text-[10px] text-gray-400 dark:text-gray-500 text-center"},Ffe={key:0,class:"text-xs text-red-500 mt-1"},Pfe=Tr({__name:"PropertyImage",props:{label:{},value:{},disabled:{type:Boolean},placeholder:{}},emits:["update:value"],setup(t,{emit:e}){const r=t,n=e,{t:i}=zn(),o=We(null),a=We(""),s=()=>{var u;r.disabled||(u=o.value)==null||u.click()},A=u=>{var g;const c=u.target,d=(g=c.files)==null?void 0:g[0];if(!d)return;if(a.value="",d.size>2*1024*1024){a.value=i("properties.image.sizeError"),c.value="";return}const f=new FileReader;f.onload=p=>{var m;const b=(m=p.target)==null?void 0:m.result;n("update:value",b)},f.onerror=()=>{a.value=i("properties.image.readError")},f.readAsDataURL(d),c.value=""},l=u=>{const c=u.target;n("update:value",c.value)};return(u,c)=>(Ie(),Ne("div",null,[F("label",Efe,me(t.label),1),F("div",Cfe,[F("input",{type:"text",value:t.value||"",disabled:t.disabled,placeholder:t.placeholder||R(i)("properties.image.urlPlaceholder"),onInput:l,class:"w-full px-2 py-1 text-sm border border-gray-300 dark:border-gray-700 rounded focus:border-blue-500 dark:focus:border-blue-400 outline-none disabled:bg-gray-100 dark:disabled:bg-gray-800 disabled:text-gray-500 dark:disabled:text-gray-400 bg-white dark:bg-gray-800 text-gray-700 dark:text-gray-200"},null,40,Sfe),F("div",Ofe,[F("button",{type:"button",onClick:s,disabled:t.disabled,class:"w-full py-1.5 px-3 bg-white dark:bg-gray-800 text-gray-700 dark:text-gray-200 border border-gray-300 dark:border-gray-700 rounded hover:bg-gray-50 dark:hover:bg-gray-700 focus:outline-none focus:ring-2 focus:ring-blue-500 disabled:opacity-50 disabled:cursor-not-allowed flex items-center justify-center gap-2 transition-colors"},[c[0]||(c[0]=F("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[F("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-8l-4-4m0 0L8 8m4-4v12"})],-1)),zt(" "+me(R(i)("properties.image.uploadBtn")),1)],8,Tfe),F("span",Ife,me(R(i)("properties.image.uploadTip")),1)]),a.value?(Ie(),Ne("p",Ffe,me(a.value),1)):mt("",!0),F("input",{ref_key:"fileInput",ref:o,type:"file",accept:"image/*",class:"hidden",onChange:A},null,544)])]))}}),Lfe={class:"p-4 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-800 flex items-center justify-between"},kfe={class:"font-semibold text-gray-700 dark:text-gray-200"},Nfe={class:"text-xs text-gray-500 dark:text-gray-400 mt-1"},Ufe={key:0,class:"flex items-center text-red-500 dark:text-red-400 gap-1 text-xs font-medium bg-red-50 dark:bg-red-900/30 px-2 py-1 rounded border border-red-100 dark:border-red-800"},Mfe={key:0,class:"p-6 text-center"},Dfe={class:"mb-4"},Rfe={class:"text-lg font-semibold text-gray-900 dark:text-gray-100"},Qfe={class:"text-sm text-gray-500 dark:text-gray-400 mt-2"},Hfe={class:"font-medium text-gray-700 dark:text-gray-200"},zfe={key:1,class:"flex flex-col h-full overflow-hidden"},Vfe={class:"flex border-b border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900"},jfe=["onClick"],qfe={key:0,class:"absolute bottom-0 left-0 w-full h-0.5 bg-blue-600 dark:bg-blue-400"},Kfe={class:"p-4 space-y-6 overflow-y-auto flex-1 custom-scrollbar dark:bg-gray-900"},Gfe={key:0,class:"space-y-3"},Xfe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},Wfe={class:"grid grid-cols-2 gap-3"},Yfe={key:1,class:"space-y-3 pt-2 border-t border-gray-100 dark:border-gray-800"},Zfe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},Jfe={key:2,class:"space-y-3 pt-2 border-t border-gray-100 dark:border-gray-800"},_fe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},$fe={class:"grid grid-cols-2 gap-3"},ede=["disabled"],tde=["disabled"],rde={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},nde={class:"space-y-3"},ide={key:0},ode=["onClick","disabled"],ade={key:6},sde={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1 font-medium"},Ade=["placeholder","disabled","value","onChange"],lde={key:3,class:"space-y-3 pt-2 border-t border-gray-100 dark:border-gray-800"},ude={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},cde={key:4,class:"space-y-4"},fde={class:"p-4 bg-gray-50 dark:bg-gray-800 rounded border border-gray-200 dark:border-gray-700"},dde={class:"text-sm font-medium text-gray-700 dark:text-gray-200 mb-3"},hde={class:"space-y-3"},gde={class:"text-xs text-gray-500 dark:text-gray-400 mb-1.5 font-medium"},pde={class:"flex items-center gap-2 bg-white dark:bg-gray-900 border border-gray-200 dark:border-gray-700 rounded px-2 py-1.5 hover:border-blue-400 dark:hover:border-blue-500 transition-colors"},vde=["title"],mde=["title"],yde={class:"text-xs text-gray-500 flex items-center justify-between border-t border-gray-100 pt-2"},bde={class:"font-medium"},wde={class:"px-2 py-0.5 bg-gray-100 rounded text-gray-600"},xde=["disabled"],Bde={key:2,class:"p-6 text-center"},Ede={class:"mb-4"},Cde={class:"text-lg font-semibold text-gray-900"},Sde={class:"text-sm text-gray-500 mt-2"},Ode=Pd(Tr({__name:"PropertiesPanel",setup(t){const{t:e}=zn(),r=fn(),n=it(()=>r.selectedElement),i=it(()=>r.selectedElementIds.length>1),o=it(()=>{var Y;return((Y=n.value)==null?void 0:Y.locked)||!1}),a=We(!1),s=We(""),A=it(()=>n.value?[ct.LINE,ct.RECT,ct.CIRCLE].includes(n.value.type):!1),l=it(()=>n.value?n.value.type!==ct.TABLE:!1),u=it(()=>r.tableSelection?r.tableSelection.cells.length>1:!1),c=it(()=>{if(!r.tableSelection||r.tableSelection.cells.length!==1)return!1;const Y=r.tableSelection.cells[0],de=r.selectedElement;if(!de||de.type!==ct.TABLE)return!1;const ke=(Y.section||"body")==="footer"?de.footerData:de.data;if(!ke)return!1;const Se=ke[Y.rowIndex];if(!Se)return!1;const qe=Se[Y.colField];return qe&&typeof qe=="object"?(qe.rowSpan||1)>1||(qe.colSpan||1)>1:!1}),d=We("properties"),f=We(!1),g=it(()=>r.unit||"mm"),p=it(()=>r.unit||"mm"),b=new Set(["fontSize","borderWidth","barcodeWidth","barcodeHeight","margin","borderRadius","headerHeight","rowHeight","footerHeight","labelFontSize","labelBorderWidth"]),m=Y=>Y.type!=="number"||!Y.key?!1:b.has(Y.key),w=Y=>{const de=e(Y.label);return m(Y)?`${de} (${p.value})`:de},S=Y=>{const de=ae(Y);return m(Y)&&typeof de=="number"?LA(de,g.value):de},E=(Y,de)=>m(Y)?ka(Number(de),g.value):de,Q=Y=>{if(!(Y.min===void 0||Y.min===null))return m(Y)?LA(Y.min,g.value):Y.min},j=Y=>{if(!(Y.max===void 0||Y.max===null))return m(Y)?LA(Y.max,g.value):Y.max},T=Y=>{if(!(Y.step===void 0||Y.step===null))return m(Y)?LA(Y.step,g.value):Y.step},N=()=>{n.value&&(navigator.clipboard.writeText(n.value.id),f.value=!0,setTimeout(()=>{f.value=!1},2e3))},D=()=>{n.value&&(s.value=n.value.type,a.value=!0)},K=Y=>{n.value&&Y&&r.addCustomElement(Y,n.value)},L=(Y,de)=>{n.value&&r.updateElement(n.value.id,{[Y]:de})},O=(Y,de)=>{n.value&&r.updateElement(n.value.id,{style:{...n.value.style,[Y]:de}})},P=(Y,de)=>{try{const Be=de.target.value;L(Y,JSON.parse(Be))}catch{window.alert("Invalid JSON")}},x=Y=>{const de=ae(Y);return Y.language==="json"&&typeof de=="object"?JSON.stringify(de,null,2):de||""},q=(Y,de)=>{if(Y.language==="json")try{const Be=JSON.parse(de);L(Y.key,Be)}catch{}else L(Y.key,de)},$=Y=>{switch(Y){case ct.TEXT:return A$;case ct.IMAGE:return f$;case ct.TABLE:return R$;case ct.PAGE_NUMBER:return z$;case ct.BARCODE:return Iee;case ct.QRCODE:return tte;case ct.LINE:return ite;case ct.RECT:return ate;case ct.CIRCLE:return Ate;default:return null}},Z=it(()=>n.value?$(n.value.type):null),oe=it(()=>Z.value?Z.value.sections.filter(Y=>(Y.tab||"properties")===d.value):[]),ae=Y=>n.value?(Y.target==="style"?n.value.style:n.value)[Y.key]??Y.defaultValue:Y.defaultValue,re=(Y,de)=>{n.value&&(Y.target==="style"&&Y.key?O(Y.key,de):Y.target==="element"&&Y.key&&L(Y.key,de))},te=Y=>{!n.value||!Y.actionName||(Y.actionName==="paginateTable"?r.paginateTable(n.value.id):Y.actionName==="removeBorder"&&r.updateElement(n.value.id,{style:{...n.value.style,borderStyle:void 0,borderWidth:void 0,borderColor:void 0,border:"none"}}))},k=()=>{i.value?r.removeSelectedElements():n.value&&r.removeElement(n.value.id)},W=Y=>{Y.relatedTarget&&Y.currentTarget.contains(Y.relatedTarget)||r.setDisableGlobalShortcuts(!0)},ne=Y=>{Y.relatedTarget&&Y.currentTarget.contains(Y.relatedTarget)||r.setDisableGlobalShortcuts(!1)};return(Y,de)=>(Ie(),Ne(Rt,null,[F("aside",{class:"w-[380px] bg-white dark:bg-gray-900 border-l border-gray-200 dark:border-gray-700 flex flex-col h-full z-40 overflow-hidden",onFocusin:W,onFocusout:ne},[F("div",Lfe,[F("div",null,[F("h2",kfe,me(R(e)("properties.title")),1),F("p",Nfe,me(R(e)("properties.subtitle")),1)]),o.value?(Ie(),Ne("div",Ufe,[et(R($0),{class:"w-3 h-3"}),F("span",null,me(R(e)("properties.locked")),1)])):mt("",!0)]),i.value?(Ie(),Ne("div",Mfe,[F("div",Dfe,[F("h3",Rfe,me(R(e)("properties.multiSelectMode")),1),F("p",Qfe,[F("span",Hfe,me(R(r).selectedElementIds.length),1),zt(" "+me(R(e)("properties.selectedElements",{n:""}).replace("{n}","")),1)])]),F("button",{onClick:k,class:"w-full py-2 bg-red-50 dark:bg-red-900/30 text-red-600 dark:text-red-400 rounded border border-red-200 dark:border-red-800 hover:bg-red-100 dark:hover:bg-red-900/50 transition-colors text-sm font-medium"},me(R(e)("properties.deleteSelected")),1)])):n.value?(Ie(),Ne("div",zfe,[F("div",Vfe,[(Ie(),Ne(Rt,null,Zr(["properties","style","advanced"],Be=>F("button",{key:Be,onClick:ke=>d.value=Be,class:St(["flex-1 py-3 text-sm font-medium transition-colors relative",d.value===Be?"text-blue-600 dark:text-blue-400":"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-800"])},[zt(me(R(e)(`properties.tab.${Be}`))+" ",1),d.value===Be?(Ie(),Ne("div",qfe)):mt("",!0)],10,jfe)),64))]),F("div",Kfe,[d.value==="properties"?(Ie(),Ne("div",Gfe,[F("h3",Xfe,me(R(e)("properties.section.positionSize")),1),F("div",Wfe,[et(Nd,{label:`${R(e)("properties.label.x")} (${p.value})`,type:"number",disabled:o.value,value:R(LA)(n.value.x,g.value),"onUpdate:value":de[0]||(de[0]=Be=>L("x",R(ka)(Number(Be),g.value)))},null,8,["label","disabled","value"]),et(Nd,{label:`${R(e)("properties.label.y")} (${p.value})`,type:"number",disabled:o.value,value:R(LA)(n.value.y,g.value),"onUpdate:value":de[1]||(de[1]=Be=>L("y",R(ka)(Number(Be),g.value)))},null,8,["label","disabled","value"]),et(Nd,{label:`${R(e)("properties.label.width")} (${p.value})`,type:"number",disabled:o.value,value:R(LA)(n.value.width,g.value),"onUpdate:value":de[2]||(de[2]=Be=>L("width",R(ka)(Number(Be),g.value)))},null,8,["label","disabled","value"]),et(Nd,{label:`${R(e)("properties.label.height")} (${p.value})`,type:"number",disabled:o.value,value:R(LA)(n.value.height,g.value),"onUpdate:value":de[3]||(de[3]=Be=>L("height",R(ka)(Number(Be),g.value)))},null,8,["label","disabled","value"])])])):mt("",!0),d.value==="properties"&&l.value?(Ie(),Ne("div",Yfe,[F("h3",Zfe,me(R(e)("properties.section.dataBehavior")),1),et(Nd,{label:R(e)("properties.label.repeatPerPage"),type:"switch",disabled:o.value,value:n.value.repeatPerPage||!1,"onUpdate:value":de[4]||(de[4]=Be=>L("repeatPerPage",!!Be))},null,8,["label","disabled","value"])])):mt("",!0),d.value==="properties"&&n.value.type==="table"&&R(r).tableSelection?(Ie(),Ne("div",Jfe,[F("h3",_fe,me(R(e)("properties.section.cellOperations")),1),F("div",$fe,[F("button",{onClick:de[5]||(de[5]=Be=>R(r).mergeSelectedCells()),disabled:!u.value||o.value,class:"w-full py-2 bg-blue-50 dark:bg-blue-900/30 text-blue-600 dark:text-blue-400 rounded border border-blue-200 dark:border-blue-800 hover:bg-blue-100 dark:hover:bg-blue-900/50 transition-colors text-xs font-medium disabled:opacity-50 disabled:cursor-not-allowed disabled:bg-gray-50 dark:disabled:bg-gray-800 disabled:text-gray-400 dark:disabled:text-gray-600 disabled:border-gray-200 dark:disabled:border-gray-700"},me(R(e)("properties.action.mergeCells")),9,ede),F("button",{onClick:de[6]||(de[6]=Be=>R(r).splitSelectedCells()),disabled:!c.value||o.value,class:"w-full py-2 bg-white dark:bg-gray-800 text-gray-600 dark:text-gray-300 rounded border border-gray-200 dark:border-gray-700 hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors text-xs font-medium disabled:opacity-50 disabled:cursor-not-allowed"},me(R(e)("properties.action.splitCells")),9,tde)])])):mt("",!0),(Ie(!0),Ne(Rt,null,Zr(oe.value,(Be,ke)=>(Ie(),Ne("div",{key:ke,class:"space-y-3 pt-2 first:pt-0 border-t first:border-0 border-gray-100 dark:border-gray-800"},[F("h3",rde,me(R(e)(Be.title)),1),F("div",nde,[(Ie(!0),Ne(Rt,null,Zr(Be.fields,(Se,qe)=>(Ie(),Ne(Rt,{key:qe},[Se.type==="action"?(Ie(),Ne("div",ide,[F("button",{onClick:Oe=>te(Se),disabled:o.value,class:"w-full py-2 bg-blue-600 dark:bg-blue-500 text-white rounded hover:bg-blue-700 dark:hover:bg-blue-600 transition-colors text-sm font-medium shadow-sm disabled:opacity-50 disabled:cursor-not-allowed disabled:bg-gray-400 dark:disabled:bg-gray-700"},me(R(e)(Se.label)),9,ode)])):Se.type==="text"||Se.type==="number"||Se.type==="switch"?(Ie(),Ur(Nd,{key:1,label:w(Se),type:Se.type,min:Q(Se),max:j(Se),step:T(Se),disabled:o.value,placeholder:Se.placeholder?Se.placeholder.startsWith("properties.")?R(e)(Se.placeholder):Se.placeholder:"",value:S(Se),"onUpdate:value":Oe=>re(Se,E(Se,Oe))},null,8,["label","type","min","max","step","disabled","placeholder","value","onUpdate:value"])):Se.type==="select"?(Ie(),Ur(ufe,{key:2,label:R(e)(Se.label),options:(Se.options||[]).map(Oe=>({...Oe,label:R(e)(Oe.label)})),disabled:o.value,value:ae(Se),"onUpdate:value":Oe=>re(Se,Oe)},null,8,["label","options","disabled","value","onUpdate:value"])):Se.type==="color"?(Ie(),Ur(TN,{key:3,label:R(e)(Se.label),disabled:o.value,value:ae(Se),"onUpdate:value":Oe=>re(Se,Oe)},null,8,["label","disabled","value","onUpdate:value"])):Se.type==="image"?(Ie(),Ur(Pfe,{key:4,label:R(e)(Se.label),disabled:o.value,placeholder:Se.placeholder?Se.placeholder.startsWith("properties.")?R(e)(Se.placeholder):Se.placeholder:void 0,value:ae(Se),"onUpdate:value":Oe=>re(Se,Oe)},null,8,["label","disabled","placeholder","value","onUpdate:value"])):Se.type==="code"?(Ie(),Ur(Bfe,{key:5,label:R(e)(Se.label),language:Se.language||"javascript",disabled:o.value,value:x(Se),"onUpdate:value":Oe=>q(Se,Oe)},null,8,["label","language","disabled","value","onUpdate:value"])):Se.type==="textarea"?(Ie(),Ne("div",ade,[F("label",sde,me(R(e)(Se.label)),1),F("textarea",{placeholder:Se.placeholder?Se.placeholder.startsWith("properties.")?R(e)(Se.placeholder):Se.placeholder:"",disabled:o.value,value:["data","columns","footerData"].includes(Se.key)?JSON.stringify(n.value[Se.key],null,2):ae(Se),onChange:Oe=>["data","columns","footerData"].includes(Se.key)?P(Se.key,Oe):re(Se,Oe.target.value),class:"w-full px-3 py-2 text-sm border border-gray-300 dark:border-gray-600 rounded focus:border-blue-500 outline-none h-24 resize-y font-mono disabled:bg-gray-100 dark:disabled:bg-gray-800 disabled:text-gray-500 dark:disabled:text-gray-400 bg-white dark:bg-gray-800 text-gray-700 dark:text-gray-200"},null,40,Ade)])):mt("",!0)],64))),128))])]))),128)),d.value==="style"&&!A.value?(Ie(),Ne("div",lde,[F("h3",ude,me(R(e)("properties.section.appearance")),1),et(TN,{label:R(e)("properties.label.backgroundColor"),disabled:o.value,value:n.value.style.backgroundColor||"#ffffff","onUpdate:value":de[7]||(de[7]=Be=>O("backgroundColor",Be))},null,8,["label","disabled","value"])])):mt("",!0),d.value==="advanced"?(Ie(),Ne("div",cde,[F("div",fde,[F("h4",dde,me(R(e)("properties.section.elementInfo")),1),F("div",hde,[F("div",null,[F("p",gde,me(R(e)("properties.label.id")),1),F("div",pde,[F("span",{class:"font-mono text-xs text-gray-600 dark:text-gray-400 flex-1 truncate select-all",title:n.value.id},me(n.value.id),9,vde),F("button",{onClick:N,class:"text-gray-400 dark:text-gray-500 hover:text-blue-600 dark:hover:text-blue-400 transition-colors p-1 rounded hover:bg-gray-100 dark:hover:bg-gray-800 flex-shrink-0",title:f.value?R(e)("properties.action.copied"):R(e)("properties.action.copyId")},[f.value?(Ie(),Ur(R(ene),{key:0,class:"w-3.5 h-3.5 text-green-500 dark:text-green-400"})):(Ie(),Ur(R(dd),{key:1,class:"w-3.5 h-3.5"}))],8,mde)])]),F("div",yde,[F("span",bde,me(R(e)("properties.label.type")),1),F("span",wde,me(R(e)("elements."+n.value.type)),1)])])]),F("button",{onClick:D,class:"w-full py-2 bg-white text-blue-600 rounded border border-blue-200 hover:bg-blue-50 transition-colors text-sm font-medium flex items-center justify-center gap-2 mb-2 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-white"},[et(R(A5),{class:"w-4 h-4"}),zt(" "+me(R(e)("properties.action.saveCustom")),1)]),F("button",{onClick:k,disabled:o.value,class:"w-full py-2 bg-white text-red-600 rounded border border-red-200 hover:bg-red-50 transition-colors text-sm font-medium flex items-center justify-center gap-2 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-white"},[et(R(fd),{class:"w-4 h-4"}),zt(" "+me(R(e)("properties.action.deleteElement")),1)],8,xde)])):mt("",!0)])])):(Ie(),Ne("div",Bde,[F("div",Ede,[F("h3",Cde,me(R(e)("properties.empty.noSelection")),1),F("p",Sde,me(R(e)("properties.empty.selectInstruction")),1)])]))],32),et(jg,{show:a.value,"initial-value":s.value,title:R(e)("properties.action.saveCustomModal"),placeholder:R(e)("sidebar.enterNamePlaceholder"),onClose:de[8]||(de[8]=Be=>a.value=!1),onSave:K},null,8,["show","initial-value","title","placeholder"])],64))}}),[["__scopeId","data-v-d835e7a6"]]),IN=Tr({__name:"Ruler",props:{type:{},zoom:{},scroll:{},offset:{},thick:{},indicators:{},unit:{}},emits:["guide-drag-start"],setup(t,{emit:e}){const r=t,{isDark:n}=du(),i=We(null),o=r.thick||20,a=()=>{const u=i.value;if(!u)return;const c=u.getContext("2d");if(!c)return;const d=u.width,f=u.height,{zoom:g,scroll:p,offset:b,type:m,indicators:w}=r,S=n.value;if(c.clearRect(0,0,d,f),c.fillStyle=S?"#1f2937":"#F9FAFB",c.fillRect(0,0,d,f),w&&w.length>0)for(const x of w){const q=b+x.position*g-p;c.fillStyle=x.color,m==="horizontal"?c.fillRect(q-2,0,4,o):c.fillRect(0,q-2,o,4)}c.strokeStyle=S?"#6b7280":"#9CA3AF",c.fillStyle=S?"#9ca3af":"#6B7280",c.lineWidth=1,c.font="10px sans-serif",c.beginPath();const E=r.unit==="mm"?dP:r.unit==="pt"?hP:r.unit==="in"?gP:r.unit==="cm"?pP:1,T=50/(E*g),N=[.1,.2,.5,1,2,5,10,20,50,100,200,500,1e3];let D=N[N.length-1];for(const x of N)if(x>=T-.001){D=x;break}const K=m==="horizontal"?d:f,L=(-b+p)/(g*E),O=(K-b+p)/(g*E),P=Math.floor(L/D)*D;for(let x=P;x<=O;x+=D){const q=b+x*E*g-p,$=Number(x.toFixed(1)).toString();m==="horizontal"?(c.moveTo(q,0),c.lineTo(q,o),c.fillText($,q+2,10)):(c.moveTo(0,q),c.lineTo(o,q),c.save(),c.translate(10,q+2),c.rotate(-Math.PI/2),c.fillText($,4,0),c.restore());const Z=D/5;for(let oe=1;oe<5;oe++){const ae=x+Z*oe,re=b+ae*E*g-p;m==="horizontal"?(c.moveTo(re,o-5),c.lineTo(re,o)):(c.moveTo(o-5,re),c.lineTo(o,re))}}c.stroke()},s=new ResizeObserver(u=>{for(const c of u){const d=i.value;if(d){const{width:f,height:g}=c.contentRect;d.width=f,d.height=g,a()}}});xi(()=>{i.value&&(s.observe(i.value.parentElement),a())}),Bi(()=>{s.disconnect()}),Yt(()=>[r.zoom,r.scroll,r.offset,r.indicators,r.unit,n.value],a,{deep:!0});const A=e,l=u=>{A("guide-drag-start",u)};return(u,c)=>(Ie(),Ne("div",{class:"w-full h-full overflow-hidden bg-gray-50 dark:bg-gray-800 relative",onMousedown:l},[F("canvas",{ref_key:"canvasRef",ref:i,class:"block"},null,512)],32))}}),Tde={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Ide(t,e){return Ie(),Ne("svg",Tde,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"m19 21l-7-7l-2.35 2.35q.2.375.275.8T10 18q0 1.65-1.175 2.825T6 22t-2.825-1.175T2 18t1.175-2.825T6 14q.425 0 .85.075t.8.275L10 12L7.65 9.65q-.375.2-.8.275T6 10q-1.65 0-2.825-1.175T2 6t1.175-2.825T6 2t2.825 1.175T10 6q0 .425-.075.85t-.275.8L22 20v1zm-4-10l-2-2l6-6h3v1zM6 8q.825 0 1.413-.587T8 6t-.587-1.412T6 4t-1.412.588T4 6t.588 1.413T6 8m6 4.5q.2 0 .35-.15t.15-.35t-.15-.35t-.35-.15t-.35.15t-.15.35t.15.35t.35.15M6 20q.825 0 1.413-.587T8 18t-.587-1.412T6 16t-1.412.588T4 18t.588 1.413T6 20"},null,-1)])])}const Fde=kt({name:"material-symbols-content-cut",render:Ide}),Pde={class:"bg-white border border-gray-200 shadow-xl rounded-md min-w-[160px] py-1"},Lde=["disabled"],kde=["disabled"],Nde=["disabled"],Ude=["disabled"],Mde=["disabled"],Dde=Tr({__name:"Shortcuts",setup(t){const{t:e}=zn(),r=fn(),n=li("designer-root"),i=We(!1),o=We(0),a=We(0),s=We(0),A=We(0),l=We(null),u=We(!1),c=We(0),d=We(0),f=E=>{c.value=E.clientX,d.value=E.clientY},g=()=>{var E;return((E=n==null?void 0:n.value)==null?void 0:E.getRootNode())||document},p=(E,Q)=>{const j=g().querySelectorAll(".print-page");if(j.length===0)return;let T=null,N=1/0,D=0;for(let K=0;K<j.length;K++){const L=j[K],O=L.getBoundingClientRect();if(E>=O.left&&E<=O.right&&Q>=O.top&&Q<=O.bottom)return{pageIndex:K,x:(E-O.left)/r.zoom,y:(Q-O.top)/r.zoom};const P=Math.max(O.left-E,0,E-O.right),x=Math.max(O.top-Q,0,Q-O.bottom),q=Math.sqrt(P*P+x*x);q<N&&(N=q,T=L,D=K)}if(T){const K=T.getBoundingClientRect();let L=(E-K.left)/r.zoom,O=(Q-K.top)/r.zoom;return L=Math.max(0,Math.min(r.canvasSize.width,L)),O=Math.max(0,Math.min(r.canvasSize.height,O)),{pageIndex:D,x:L,y:O}}},b=E=>{if(r.disableGlobalShortcuts)return;if((E.ctrlKey||E.metaKey)&&E.altKey&&E.key.toLowerCase()==="n"){E.preventDefault(),E.stopPropagation(),window.dispatchEvent(new CustomEvent("designer:new-template"));return}if((E.ctrlKey||E.metaKey)&&E.key===","){E.preventDefault(),E.stopPropagation(),r.setShowSettings(!0);return}const Q=E.target;if(Q&&Q.closest('input, textarea, select, [contenteditable="true"]'))return;if(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(E.key)){const N=E.shiftKey?10:1;if(r.selectedGuideId){const D=r.guides.find(K=>K.id===r.selectedGuideId);if(D){E.preventDefault();const K=D.position;let L=K;if(D.type==="vertical")if(E.key==="ArrowLeft")L-=N;else if(E.key==="ArrowRight")L+=N;else return;else if(E.key==="ArrowUp")L-=N;else if(E.key==="ArrowDown")L+=N;else return;(K>0&&L<0||K<0&&L>0||L===0)&&(L=0),r.updateGuide(D.id,L),r.setHighlightedGuide(D.id)}}else if(r.selectedElementIds.length>0){E.preventDefault();const D=E.key==="ArrowLeft"?-N:E.key==="ArrowRight"?N:0,K=E.key==="ArrowUp"?-N:E.key==="ArrowDown"?N:0;r.nudgeSelectedElements(D,K)}return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="a"){if(E.preventDefault(),r.pages[r.currentPageIndex]){const N=r.pages[r.currentPageIndex].elements.map(D=>D.id);r.setSelection(N)}return}if(E.key==="Delete"){r.selectedElementIds.length>1?(E.preventDefault(),r.removeSelectedElements()):r.selectedElementId?(E.preventDefault(),r.removeElement(r.selectedElementId)):r.selectedGuideId&&(E.preventDefault(),r.removeGuide(r.selectedGuideId));return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="c"){r.selectedElementId&&(E.preventDefault(),r.copy());return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="x"){r.selectedElementId&&(E.preventDefault(),r.cut());return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="v"){r.clipboard.length>0&&(E.preventDefault(),r.paste(p(c.value,d.value)));return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="h"){E.preventDefault(),r.setShowHelp(!0);return}if(r.showHelp&&E.key==="Escape"){E.preventDefault(),r.setShowHelp(!1);return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="z"&&!E.shiftKey){E.preventDefault(),r.undo();return}if((E.ctrlKey||E.metaKey)&&(E.key.toLowerCase()==="y"||E.key.toLowerCase()==="z"&&E.shiftKey)){E.preventDefault(),r.redo();return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="l"){E.preventDefault(),r.toggleLock();return}if((E.ctrlKey||E.metaKey)&&E.shiftKey&&E.key.toLowerCase()==="p"){E.preventDefault(),window.dispatchEvent(new CustomEvent("designer:preview"));return}const j=E.ctrlKey||E.metaKey,T=E.key.toLowerCase();if(!(r.editingCustomElementId&&j&&(T==="s"||T==="q"))){if(j&&E.shiftKey&&T==="s"){E.preventDefault(),window.dispatchEvent(new CustomEvent("designer:save-as"));return}if(j&&T==="s"){E.preventDefault(),window.dispatchEvent(new CustomEvent("designer:save"));return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="p"&&!E.shiftKey){E.preventDefault(),window.dispatchEvent(new CustomEvent("designer:print"));return}if((E.ctrlKey||E.metaKey)&&E.shiftKey&&E.key.toLowerCase()==="e"){E.preventDefault(),window.dispatchEvent(new CustomEvent("designer:export-pdf"));return}if((E.ctrlKey||E.metaKey)&&E.shiftKey&&E.key.toLowerCase()==="j"){E.preventDefault(),window.dispatchEvent(new CustomEvent("designer:view-json"));return}}},m=E=>{["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(E.key)&&(r.setHighlightedGuide(null),r.setHighlightedEdge(null))},w=async E=>{const Q=g().querySelector(".overflow-auto"),j=E.composedPath();if(!(!!Q&&j.some(K=>K===Q?!0:K instanceof Element&&Q.contains(K))))return;if(E.preventDefault(),i.value=!0,o.value=E.clientX,a.value=E.clientY,s.value=E.clientX,A.value=E.clientY,await Wi(),l.value){const K=l.value.getBoundingClientRect(),L=window.innerWidth,O=window.innerHeight;E.clientX+K.width>L&&(o.value=L-K.width-5),E.clientY+K.height>O&&(a.value=O-K.height-5)}const N=g().querySelectorAll(".print-page");let D=!1;N.forEach(K=>{const L=K.getBoundingClientRect();E.clientX>=L.left&&E.clientX<=L.right&&E.clientY>=L.top&&E.clientY<=L.bottom&&(D=!0)}),u.value=D,window.addEventListener("click",S)},S=()=>{i.value=!1,window.removeEventListener("click",S)};return xi(()=>{window.addEventListener("keydown",b,{capture:!0}),window.addEventListener("contextmenu",w),window.addEventListener("keyup",m),window.addEventListener("mousemove",f)}),Bi(()=>{window.removeEventListener("keydown",b,{capture:!0}),window.removeEventListener("contextmenu",w),window.removeEventListener("click",S),window.removeEventListener("keyup",m),window.removeEventListener("mousemove",f)}),(E,Q)=>{var j,T,N,D,K;return i.value?(Ie(),Ne("div",{key:0,ref_key:"menuRef",ref:l,class:"fixed z-[9999]",style:Bt({left:`${o.value}px`,top:`${a.value}px`})},[F("div",Pde,[F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 disabled:opacity-50 flex items-center gap-2",disabled:R(r).selectedElementIds.length===0&&!R(r).selectedGuideId||((j=R(r).selectedElement)==null?void 0:j.locked),onClick:Q[0]||(Q[0]=()=>{R(r).selectedElementIds.length>1?R(r).removeSelectedElements():R(r).selectedElementId?R(r).removeElement(R(r).selectedElementId):R(r).selectedGuideId&&R(r).removeGuide(R(r).selectedGuideId),i.value=!1})},[et(R(fd),{class:"w-4 h-4"}),F("span",null,me(R(e)("common.delete"))+me(R(r).selectedElementIds.length>1?` (${R(r).selectedElementIds.length})`:""),1)],8,Lde),F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 disabled:opacity-50 flex items-center gap-2",disabled:!R(r).selectedElementId||((T=R(r).selectedElement)==null?void 0:T.locked),onClick:Q[1]||(Q[1]=()=>{R(r).cut(),i.value=!1})},[et(R(Fde),{class:"w-4 h-4"}),F("span",null,me(R(e)("common.cut")),1)],8,kde),F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 disabled:opacity-50 flex items-center gap-2",disabled:!R(r).selectedElementId||((N=R(r).selectedElement)==null?void 0:N.locked),onClick:Q[2]||(Q[2]=()=>{R(r).copy(),i.value=!1})},[et(R(dd),{class:"w-4 h-4"}),F("span",null,me(R(e)("common.copy")),1)],8,Nde),F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 disabled:opacity-50 flex items-center gap-2",disabled:R(r).clipboard.length===0,onClick:Q[3]||(Q[3]=()=>{R(r).paste(p(s.value,A.value)),i.value=!1})},[et(R(l5),{class:"w-4 h-4"}),F("span",null,me(R(e)("common.paste")),1)],8,Ude),F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 disabled:opacity-50 flex items-center gap-2",disabled:R(r).selectedElementIds.length===0,onClick:Q[4]||(Q[4]=()=>{R(r).toggleLock(),i.value=!1})},[(Ie(),Ur(qh((D=R(r).selectedElement)!=null&&D.locked?R(CP):R($0)),{class:"w-4 h-4"})),F("span",null,me((K=R(r).selectedElement)!=null&&K.locked?R(e)("common.unlock"):R(e)("common.lock")),1)],8,Mde),Q[7]||(Q[7]=F("div",{class:"border-t border-gray-200 my-1"},null,-1)),F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 flex items-center gap-2",onClick:Q[5]||(Q[5]=L=>{R(r).undo(),i.value=!1})},[et(R(BP),{class:"w-4 h-4"}),F("span",null,me(R(e)("common.undo")),1)]),F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 flex items-center gap-2",onClick:Q[6]||(Q[6]=L=>{R(r).redo(),i.value=!1})},[et(R(EP),{class:"w-4 h-4"}),F("span",null,me(R(e)("common.redo")),1)])])],4)):mt("",!0)}}}),Rde={class:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 text-sm leading-none text-gray-300 z-10"},Qde={key:2,class:"w-full h-full bg-gray-200 flex items-center justify-center overflow-hidden"},Hde=["src"],zde={key:3,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},Vde=["src"],jde={key:4,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},qde=["src"],Kde={key:2,class:"w-full h-full bg-gray-200 flex items-center justify-center overflow-hidden"},Gde=["src"],Xde={key:3,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},Wde=["src"],Yde={key:4,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},Zde=["src"],FN=180,PN=120,LN=300,Jde=32,_de=Pd(Tr({__name:"Minimap",props:{scrollWidth:{},scrollHeight:{},viewportWidth:{},viewportHeight:{},scrollLeft:{},scrollTop:{},pages:{},pageWidth:{},pageHeight:{},zoom:{},contentOffsetX:{},contentOffsetY:{},canvasBackground:{},showHeaderLine:{type:Boolean},showFooterLine:{type:Boolean},headerHeight:{},footerHeight:{},watermark:{}},emits:["update:scroll"],setup(t,{emit:e}){const r=t,n=e,i=it(()=>{if(r.scrollWidth<=0||r.scrollHeight<=0)return .1;let L=FN/r.scrollWidth;return r.scrollHeight*L>LN&&(L=LN/r.scrollHeight),r.scrollWidth*L<PN&&(L=PN/r.scrollWidth),L}),o=it(()=>r.scrollHeight*i.value),a=it(()=>({left:`${r.scrollLeft*i.value}px`,top:`${r.scrollTop*i.value}px`,width:`${r.viewportWidth*i.value}px`,height:`${r.viewportHeight*i.value}px`})),s=L=>L.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'"),A=it(()=>{const L=r.watermark;if(!L||!L.enabled||!L.text)return null;const O=s(L.text),P=Number.isFinite(L.angle)?L.angle:-30,x=Math.max(6,L.size||24),q=Math.max(40,L.density||160),$=L.color||"#000000",Z=Math.min(1,Math.max(0,L.opacity??.1)),oe=`<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="${q}" height="${q}"><text x="50%" y="50%" dominant-baseline="middle" text-anchor="middle" fill="${$}" fill-opacity="${Z}" font-size="${x}" transform="rotate(${P} ${q/2} ${q/2})">${O}</text></svg>`;return{backgroundImage:`url("data:image/svg+xml,${encodeURIComponent(oe)}")`,backgroundRepeat:"repeat",backgroundSize:`${q}px ${q}px`}}),l=L=>{const O={left:`${r.contentOffsetX*i.value}px`,top:`${(r.contentOffsetY+L*(r.pageHeight+Jde)*r.zoom)*i.value}px`,width:`${r.pageWidth*r.zoom*i.value}px`,height:`${r.pageHeight*r.zoom*i.value}px`,backgroundColor:r.canvasBackground||"#ffffff"};return A.value?{...O,...A.value}:O},u=()=>{if(!r.pages||r.pages.length===0)return[];const L=r.pages[0];if(!(L!=null&&L.elements))return[];const O=P=>{var ne;const q=(Number(((ne=P==null?void 0:P.style)==null?void 0:ne.rotate)||0)%360+360)%360;if(q===0)return{minY:P.y,maxY:P.y+P.height};const $=P.x+P.width/2,Z=P.y+P.height/2,oe=q*Math.PI/180,ae=Math.cos(oe),re=Math.sin(oe),te=[{x:P.x,y:P.y},{x:P.x+P.width,y:P.y},{x:P.x,y:P.y+P.height},{x:P.x+P.width,y:P.y+P.height}];let k=1/0,W=-1/0;for(const Y of te){const de=Z+(Y.x-$)*re+(Y.y-Z)*ae;de<k&&(k=de),de>W&&(W=de)}return{minY:k,maxY:W}};return L.elements.filter(P=>{if(P.type===ct.TABLE)return!1;const x=O(P),q=P.repeatPerPage===!0,$=r.showHeaderLine&&x.maxY<=r.headerHeight,Z=r.showFooterLine&&x.minY>=r.pageHeight-r.footerHeight;return q||$||Z})},c=L=>{const O=Math.max(1,L.width*r.zoom*i.value),P=Math.max(1,L.height*r.zoom*i.value);return{width:O,height:P}},d=L=>{var q,$,Z,oe,ae,re,te,k,W,ne,Y,de;const{width:O,height:P}=c(L),x={left:`${L.x*r.zoom*i.value}px`,top:`${L.y*r.zoom*i.value}px`,width:`${O}px`,height:`${P}px`,fontSize:`${(((q=L.style)==null?void 0:q.fontSize)||12)*r.zoom*i.value}px`,zIndex:(($=L.style)==null?void 0:$.zIndex)||1,transform:`rotate(${((Z=L.style)==null?void 0:Z.rotate)||0}deg)`};if(L.type===ct.LINE){const Be=((oe=L.style)==null?void 0:oe.borderColor)||"#111827",ke=Math.max(1,(((ae=L.style)==null?void 0:ae.borderWidth)||1)*r.zoom*i.value);return{...x,height:`${ke}px`,backgroundColor:Be,top:`${L.y*r.zoom*i.value+(P-ke)/2}px`}}if(L.type===ct.RECT||L.type===ct.CIRCLE){const Be=((re=L.style)==null?void 0:re.borderColor)||"#111827",ke=Math.max(1,(((te=L.style)==null?void 0:te.borderWidth)||1)*r.zoom*i.value);return{...x,backgroundColor:((k=L.style)==null?void 0:k.backgroundColor)||"transparent",borderColor:Be,borderWidth:`${ke}px`,borderStyle:((W=L.style)==null?void 0:W.borderStyle)||"solid",borderRadius:L.type===ct.CIRCLE?"9999px":`${((ne=L.style)==null?void 0:ne.borderRadius)||0}px`}}return L.type===ct.BARCODE||L.type===ct.QRCODE?{...x,backgroundColor:"rgba(17, 24, 39, 0.15)",border:"1px solid rgba(17, 24, 39, 0.3)"}:L.type===ct.PAGE_NUMBER?{...x,color:((Y=L.style)==null?void 0:Y.color)||"#111827",backgroundColor:((de=L.style)==null?void 0:de.backgroundColor)||"transparent"}:{...x,backgroundColor:L.type===ct.IMAGE?"#e5e7eb":void 0}},f=(L,O)=>{var $;const P=O+1,x=(($=r.pages)==null?void 0:$.length)||1,q=L.format||"1/Total";return q==="1"?`${P}`:q==="Page 1"?`Page ${P}`:`${P}/${x}`},g=L=>{const O=L.style?JSON.stringify(L.style):"";return`${L.id}:${L.type}:${L.variable||""}:${L.content||""}:${O}`},p=We({}),b=We({});let m=0;const w=L=>L.type===ct.BARCODE?L.variable||L.content||"12345678":L.type===ct.QRCODE?L.variable||L.content||"https://example.com":L.variable||L.content||"",S=L=>{try{const O=document.createElement("canvas"),P=L.style||{};return g6(O,w(L),{format:P.barcodeFormat||"CODE128",lineColor:P.color||"#000000",width:Number(P.barcodeWidth)||2,height:Number(P.barcodeHeight)||40,displayValue:P.showText!==!1&&P.showText!=="false",fontOptions:P.fontOptions||"",font:P.font||"monospace",textAlign:P.textAlign||"center",textPosition:P.textPosition||"bottom",textMargin:Number(P.textMargin)||2,fontSize:Number(P.fontSize)||20,background:"transparent",margin:Number(P.margin)||0}),O.toDataURL("image/png")}catch{return""}},E=async L=>{var O,P;try{return await W6.toDataURL(w(L),{margin:0,color:{dark:((O=L.style)==null?void 0:O.color)||"#000000",light:"#00000000"},errorCorrectionLevel:((P=L.style)==null?void 0:P.qrErrorCorrection)||"M"})}catch{return""}},Q=async()=>{const L=++m,O={},P={},x=r.pages||[];for(const q of x){const $=(q==null?void 0:q.elements)||[];for(const Z of $){const oe=g(Z);if(Z.type===ct.BARCODE){const ae=S(Z);ae&&(O[oe]=ae)}else if(Z.type===ct.QRCODE){const ae=await E(Z);ae&&(P[oe]=ae)}}}L===m&&(p.value=O,b.value=P)},j=L=>p.value[g(L)]||"",T=L=>b.value[g(L)]||"";Yt(()=>r.pages,()=>{Q()},{deep:!0,immediate:!0});const N=We(!1),D=We(null);Yt(()=>r.scrollTop,()=>{if(!D.value)return;const L=r.scrollTop*i.value,O=r.viewportHeight*i.value,P=D.value.clientHeight,x=D.value.scrollTop;L<x?D.value.scrollTop=L:L+O>x+P&&(D.value.scrollTop=L+O-P)});const K=L=>{L.preventDefault();const O=L.currentTarget,P=O.getBoundingClientRect(),x=L.clientX-P.left,q=L.clientY-P.top,$=r.scrollLeft*i.value,Z=r.scrollTop*i.value,oe=r.viewportWidth*i.value,ae=r.viewportHeight*i.value;let re=0,te=0;if(x>=$&&x<=$+oe&&q>=Z&&q<=Z+ae)re=x-$,te=q-Z;else{const ne=x/i.value-r.viewportWidth/2,Y=q/i.value-r.viewportHeight/2;n("update:scroll",{left:ne,top:Y}),re=oe/2,te=ae/2}N.value=!0;const k=ne=>{const Y=O.getBoundingClientRect(),de=ne.clientX-Y.left,Be=ne.clientY-Y.top,ke=de-re,Se=Be-te;n("update:scroll",{left:ke/i.value,top:Se/i.value})},W=()=>{N.value=!1,window.removeEventListener("mousemove",k),window.removeEventListener("mouseup",W)};window.addEventListener("mousemove",k),window.addEventListener("mouseup",W)};return(L,O)=>(Ie(),Ne("div",{ref_key:"scrollContainer",ref:D,class:"bg-white border border-gray-200 shadow-lg rounded max-h-[300px] overflow-y-auto overflow-x-hidden box-content no-scrollbar",style:Bt({width:`${r.scrollWidth*i.value}px`,maxWidth:`${FN}px`})},[F("div",{class:"relative select-none box-content overflow-hidden",style:Bt({width:`${r.scrollWidth*i.value}px`,height:`${o.value}px`}),onMousedown:K},[O[0]||(O[0]=F("div",{class:"absolute inset-0 bg-gray-100"},null,-1)),(Ie(!0),Ne(Rt,null,Zr(t.pages,(P,x)=>(Ie(),Ne("div",{key:x,class:"absolute shadow-sm border border-gray-300 overflow-hidden",style:Bt(l(x))},[F("div",Rde,me(x+1),1),(Ie(!0),Ne(Rt,null,Zr(P.elements,q=>{var $,Z;return Ie(),Ne("div",{key:q.id,class:"absolute",style:Bt(d(q))},[q.type===R(ct).TEXT?(Ie(),Ne("div",{key:0,class:"w-full h-full overflow-hidden whitespace-nowrap",style:Bt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},me(q.variable||q.content),5)):q.type===R(ct).PAGE_NUMBER?(Ie(),Ne("div",{key:1,class:"w-full h-full overflow-hidden whitespace-nowrap",style:Bt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},me(f(q,x)),5)):q.type===R(ct).IMAGE?(Ie(),Ne("div",Qde,[q.content?(Ie(),Ne("img",{key:0,src:q.content,class:"w-full h-full object-cover"},null,8,Hde)):mt("",!0)])):q.type===R(ct).BARCODE?(Ie(),Ne("div",zde,[j(q)?(Ie(),Ne("img",{key:0,src:j(q),class:"w-full h-full object-contain"},null,8,Vde)):mt("",!0)])):q.type===R(ct).QRCODE?(Ie(),Ne("div",jde,[T(q)?(Ie(),Ne("img",{key:0,src:T(q),class:"w-full h-full object-contain"},null,8,qde)):mt("",!0)])):q.type===R(ct).TABLE?(Ie(),Ne("div",{key:5,class:"w-full h-full border border-gray-300 bg-white grid",style:Bt({gridTemplateColumns:`repeat(${(($=q.columns)==null?void 0:$.length)||2}, 1fr)`})},[(Ie(!0),Ne(Rt,null,Zr(Math.min(6,(((Z=q.columns)==null?void 0:Z.length)||2)*2),oe=>(Ie(),Ne("div",{key:oe,class:"border-[0.5px] border-gray-100"}))),128))],4)):mt("",!0)],4)}),128)),x>0?(Ie(!0),Ne(Rt,{key:0},Zr(u(),q=>{var $,Z;return Ie(),Ne("div",{key:`global-${x}-${q.id}`,class:"absolute",style:Bt(d(q))},[q.type===R(ct).TEXT?(Ie(),Ne("div",{key:0,class:"w-full h-full overflow-hidden whitespace-nowrap",style:Bt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},me(q.variable||q.content),5)):q.type===R(ct).PAGE_NUMBER?(Ie(),Ne("div",{key:1,class:"w-full h-full overflow-hidden whitespace-nowrap",style:Bt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},me(f(q,x)),5)):q.type===R(ct).IMAGE?(Ie(),Ne("div",Kde,[q.content?(Ie(),Ne("img",{key:0,src:q.content,class:"w-full h-full object-cover"},null,8,Gde)):mt("",!0)])):q.type===R(ct).BARCODE?(Ie(),Ne("div",Xde,[j(q)?(Ie(),Ne("img",{key:0,src:j(q),class:"w-full h-full object-contain"},null,8,Wde)):mt("",!0)])):q.type===R(ct).QRCODE?(Ie(),Ne("div",Yde,[T(q)?(Ie(),Ne("img",{key:0,src:T(q),class:"w-full h-full object-contain"},null,8,Zde)):mt("",!0)])):q.type===R(ct).TABLE?(Ie(),Ne("div",{key:5,class:"w-full h-full border border-gray-300 bg-white grid",style:Bt({gridTemplateColumns:`repeat(${(($=q.columns)==null?void 0:$.length)||2}, 1fr)`})},[(Ie(!0),Ne(Rt,null,Zr(Math.min(6,(((Z=q.columns)==null?void 0:Z.length)||2)*2),oe=>(Ie(),Ne("div",{key:oe,class:"border-[0.5px] border-gray-100"}))),128))],4)):mt("",!0)],4)}),128)):mt("",!0)],4))),128)),F("div",{class:"absolute border-2 border-blue-500 bg-blue-500/10 cursor-move z-[1000]",style:Bt(a.value)},null,4)],36)],4))}}),[["__scopeId","data-v-177efb4d"]]),$de={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ehe(t,e){return Ie(),Ne("svg",$de,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M5 21q-.825 0-1.412-.587T3 19V5q0-.825.588-1.412T5 3h7v2H5v14h7v2zm11-4l-1.375-1.45l2.55-2.55H9v-2h8.175l-2.55-2.55L16 7l5 5z"},null,-1)])])}const the=kt({name:"material-symbols-logout",render:ehe}),rhe={class:"flex-1 flex overflow-hidden"},nhe={class:"flex-1 overflow-hidden relative flex flex-col"},ihe={key:0,class:"flex items-center justify-between px-4 py-2 bg-blue-50 border-b border-blue-200 text-blue-900 dark:bg-blue-950 dark:border-blue-800 dark:text-blue-100"},ohe={class:"text-sm font-medium"},ahe={class:"flex items-center gap-2"},she={class:"relative w-full h-full flex flex-col overflow-hidden"},Ahe={class:"flex-none h-5 bg-gray-50 border-b border-gray-300 flex z-20"},lhe={class:"flex-1 relative overflow-hidden"},uhe={class:"flex-1 flex overflow-hidden relative"},che={class:"w-5 flex-none bg-gray-50 border-r border-gray-300 h-full relative z-20 overflow-hidden"},fhe=["onMousedown"],dhe={class:"absolute left-2 -top-4 theme-bg text-white text-[10px] px-1 rounded opacity-0 group-hover:opacity-100 pointer-events-none whitespace-nowrap"},hhe=["onMousedown"],ghe={class:"absolute top-2 -left-4 theme-bg text-white text-[10px] px-1 rounded opacity-0 group-hover:opacity-100 pointer-events-none whitespace-nowrap"},phe={key:2,class:"absolute pointer-events-none"},vhe={key:1,class:"absolute bottom-4 right-4 z-50"},mhe=Tr({__name:"PrintDesigner",setup(t){const e=fn(),r=gg(),{autoSave:n}=oP(),{isDark:i}=du(),{t:o}=zn(),a=We(null),s=We(null),A=We(null);let l=null;const u=We(null);Hy("designer-root",s),Hy("modal-container",A);const c=We(null),d=We(!1),f=We(0),g=()=>{f.value+=1},p=(z,G)=>{const M=getComputedStyle(document.documentElement).getPropertyValue(z).trim(),V=vg(M);return V?_W(V.h,V.s,V.v,G):`rgba(59, 130, 246, ${G})`},b=it(()=>e.editingCustomElement),m=it(()=>b.value?`${b.value.name} Copy`:"");xi(()=>{e.setIsExporting(!1),Wi(()=>{re()}),l=new ResizeObserver(()=>{re()}),a.value&&l.observe(a.value),window.addEventListener("resize",re),window.addEventListener("keydown",qe),window.addEventListener("keydown",T),window.addEventListener("keyup",qe),window.addEventListener("blur",Oe),window.addEventListener("brand-theme-updated",g),Yt([()=>e.pages.length,()=>e.canvasSize.width,()=>e.canvasSize.height,()=>e.zoom,()=>e.showMinimap],()=>{Wi(re)}),Yt(i,z=>{s.value&&s.value.classList.toggle("dark",z)},{immediate:!0}),Yt([()=>e.pages,()=>e.canvasSize,()=>e.guides,()=>e.headerHeight,()=>e.footerHeight,()=>e.showHeaderLine,()=>e.showFooterLine,()=>e.canvasBackground,()=>e.pageSpacingX,()=>e.pageSpacingY,()=>e.watermark,()=>e.showMinimap],()=>{w()},{deep:!0})});const w=HW(()=>{if(!e.editingCustomElementId&&n.value&&r.currentTemplateId&&!r.isSaving){const z=r.templates.find(G=>G.id===r.currentTemplateId);z&&r.saveCurrentTemplate(z.name)}},1e3),S=()=>{if(!e.commitCustomElementEdit()){alert(o("sidebar.editSaveFailed"));return}e.cancelCustomElementEdit()},E=z=>{const G=z.trim();if(!G)return;if(!e.saveCustomElementEditAs(G)){alert(o("sidebar.editSaveFailed"));return}e.cancelCustomElementEdit()},Q=()=>{confirm(o("sidebar.confirmExitEdit"))&&(e.cancelCustomElementEdit(),requestAnimationFrame(()=>{var z,G;(G=(z=a.value)==null?void 0:z.focus)==null||G.call(z)}))},j=z=>{var V;const G=z;if(!G)return!1;if(G.isContentEditable)return!0;const M=(V=G.tagName)==null?void 0:V.toLowerCase();return M==="input"||M==="textarea"||M==="select"},T=z=>{if(e.disableGlobalShortcuts||!e.editingCustomElementId||d.value||j(z.target)||!(z.ctrlKey||z.metaKey))return;const M=z.key.toLowerCase();if(M==="s"&&z.shiftKey){z.preventDefault(),z.stopPropagation(),d.value=!0;return}if(M==="s"){z.preventDefault(),z.stopPropagation(),S();return}M==="q"&&(z.preventDefault(),z.stopPropagation(),Q())},N=We(0),D=We(0),K=We(0),L=We(0),O=z=>{const G=z.target;N.value=G.scrollLeft,D.value=G.scrollTop},P=We(0),x=We(0),q=We(0),$=We(0),Z=it(()=>e.unit||"mm"),oe=z=>{const G=LA(z,e.unit||"mm");return e.unit==="px"?Math.round(G):Number(G.toFixed(1))},ae=it(()=>{const z=e.pages.length,G=e.canvasSize.height,M=e.canvasSize.width,ee=z>0?z*G+(z-1)*20:0;return{width:`${M*e.zoom}px`,height:`${ee*e.zoom}px`}}),re=()=>{if(a.value&&c.value){const z=a.value.clientWidth,G=a.value.clientHeight;q.value=z,$.value=G;const M=parseFloat(ae.value.width),V=parseFloat(ae.value.height),ee=64,se=64;P.value=Math.max(z,M+ee),x.value=Math.max(G,V+se),M+ee<=z&&(P.value=z),V+se<=G&&(x.value=G);const Ae=a.value.getBoundingClientRect(),be=c.value.getBoundingClientRect(),ge=a.value.clientLeft||0,le=a.value.clientTop||0;N.value=a.value.scrollLeft,D.value=a.value.scrollTop,K.value=be.left-Ae.left+a.value.scrollLeft-ge,L.value=be.top-Ae.top+a.value.scrollTop-le}};Bi(()=>{var z;w.cancel(),l&&(l.disconnect(),l=null),window.removeEventListener("resize",re),window.removeEventListener("mousemove",Be),window.removeEventListener("mouseup",ke),window.removeEventListener("keydown",qe),window.removeEventListener("keydown",T),window.removeEventListener("keyup",qe),window.removeEventListener("blur",Oe),window.removeEventListener("brand-theme-updated",g),(z=a.value)==null||z.removeEventListener("wheel",Se)});const te=We(!1),k=We(null),W=We("horizontal"),ne=We(0),Y=(z,G,M=null)=>{te.value=!0,k.value=M,W.value=G,de(z),window.addEventListener("mousemove",Be),window.addEventListener("mouseup",ke)},de=z=>{if(!a.value)return;const G=a.value.getBoundingClientRect(),M=e.zoom;if(W.value==="horizontal"){const V=z.clientY-G.top+a.value.scrollTop;ne.value=(V-L.value)/M}else{const V=z.clientX-G.left+a.value.scrollLeft;ne.value=(V-K.value)/M}},Be=z=>{te.value&&(z.preventDefault(),de(z),k.value&&e.updateGuide(k.value,ne.value))},ke=z=>{if(!te.value)return;const G=a.value.getBoundingClientRect();let M=!1;W.value==="horizontal"?z.clientY<G.top&&(M=!0):z.clientX<G.left&&(M=!0),M?k.value&&e.removeGuide(k.value):k.value?e.updateGuide(k.value,ne.value):e.addGuide({type:W.value,position:ne.value}),te.value=!1,k.value=null,window.removeEventListener("mousemove",Be),window.removeEventListener("mouseup",ke)},Se=z=>{z.ctrlKey&&(z.preventDefault(),z.deltaY<0?e.setZoom(Math.min(5,e.zoom+.1)):e.setZoom(Math.max(.2,e.zoom-.1)))},qe=z=>{var G,M;e.disableGlobalShortcuts||(z.key==="Control"||z.key==="Meta")&&(z.type==="keydown"&&!z.repeat?(G=a.value)==null||G.addEventListener("wheel",Se,{passive:!1}):z.type==="keyup"&&((M=a.value)==null||M.removeEventListener("wheel",Se)))},Oe=()=>{var z;(z=a.value)==null||z.removeEventListener("wheel",Se)},Ue=z=>{a.value&&a.value.scrollTo({left:z.left,top:z.top,behavior:"auto"})},ie=z=>{var pe;const G=((pe=z.style)==null?void 0:pe.rotate)||0;if(G===0)return{minX:z.x,maxX:z.x+z.width,minY:z.y,maxY:z.y+z.height};const M=z.x+z.width/2,V=z.y+z.height/2,ee=G*Math.PI/180,se=Math.cos(ee),Ae=Math.sin(ee),be=[{x:z.x,y:z.y},{x:z.x+z.width,y:z.y},{x:z.x,y:z.y+z.height},{x:z.x+z.width,y:z.y+z.height}];let ge=1/0,le=-1/0,Ee=1/0,Pe=-1/0;for(const ye of be){const Fe=M+(ye.x-M)*se-(ye.y-V)*Ae,Re=V+(ye.x-M)*Ae+(ye.y-V)*se;Fe<ge&&(ge=Fe),Fe>le&&(le=Fe),Re<Ee&&(Ee=Re),Re>Pe&&(Pe=Re)}return{minX:ge,maxX:le,minY:Ee,maxY:Pe}},I=it(()=>{if(!e.isDragging||e.selectedElementIds.length===0)return null;const z=[];for(const ge of e.selectedElementIds)for(let le=0;le<e.pages.length;le++){const Pe=e.pages[le].elements.find(pe=>pe.id===ge);Pe&&z.push({el:Pe,pageIndex:le})}if(z.length===0)return null;let G=1/0,M=-1/0,V=1/0,ee=-1/0;const se=20;for(const{el:ge,pageIndex:le}of z){const Ee=ie(ge),Pe=le*(e.canvasSize.height+se);Ee.minY+=Pe,Ee.maxY+=Pe,Ee.minX<G&&(G=Ee.minX),Ee.maxX>M&&(M=Ee.maxX),Ee.minY<V&&(V=Ee.minY),Ee.maxY>ee&&(ee=Ee.maxY)}const Ae=(G+M)/2,be=(V+ee)/2;return{minX:G,maxX:M,minY:V,maxY:ee,centerX:Ae,centerY:be}}),_=it(()=>{if(!I.value)return{h:[],v:[]};f.value;const z=p("--brand-500",.5),{minX:G,maxX:M,minY:V,maxY:ee}=I.value;return{h:[{position:G,color:z},{position:M,color:z}],v:[{position:V,color:z},{position:ee,color:z}]}});return(z,G)=>{var M;return Ie(),Ne("div",{ref_key:"rootContainer",ref:s,class:"h-full w-full flex flex-col bg-gray-100 overflow-hidden"},[et(lce),F("div",rhe,[et(_ce),F("main",nhe,[R(e).editingCustomElementId?(Ie(),Ne("div",ihe,[F("div",ohe,me(R(o)("sidebar.editingElement",{name:((M=b.value)==null?void 0:M.name)||""})),1),F("div",ahe,[F("button",{onClick:S,class:"px-3 py-1.5 text-xs font-medium bg-blue-600 text-white rounded hover:bg-blue-700 dark:bg-blue-500 dark:hover:bg-blue-400 inline-flex items-center gap-1.5"},[et(R(A5),{class:"w-4 h-4"}),zt(" "+me(R(o)("sidebar.saveEdit")),1)]),F("button",{onClick:G[0]||(G[0]=V=>d.value=!0),class:"px-3 py-1.5 text-xs font-medium bg-blue-200 text-blue-900 rounded hover:bg-blue-300 dark:bg-blue-700 dark:hover:bg-blue-600 dark:text-white inline-flex items-center gap-1.5"},[et(R(xP),{class:"w-4 h-4"}),zt(" "+me(R(o)("sidebar.saveAs")),1)]),F("button",{onClick:Q,class:"px-3 py-1.5 text-xs font-medium bg-slate-200 text-slate-900 rounded hover:bg-slate-300 dark:bg-slate-700 dark:hover:bg-slate-600 dark:text-slate-100 inline-flex items-center gap-1.5"},[et(R(the),{class:"w-4 h-4"}),zt(" "+me(R(o)("sidebar.exitEdit")),1)])])])):mt("",!0),et(Dde),F("div",she,[F("div",Ahe,[G[5]||(G[5]=F("div",{class:"w-5 flex-none bg-gray-100 border-r border-gray-300"},null,-1)),F("div",lhe,[et(IN,{type:"horizontal",zoom:R(e).zoom,scroll:N.value,offset:K.value,thick:20,unit:R(e).unit||"mm",indicators:_.value.h,onGuideDragStart:G[1]||(G[1]=V=>Y(V,"horizontal"))},null,8,["zoom","scroll","offset","unit","indicators"])])]),F("div",uhe,[F("div",che,[et(IN,{type:"vertical",zoom:R(e).zoom,scroll:D.value,offset:L.value,thick:20,unit:R(e).unit||"mm",indicators:_.value.v,onGuideDragStart:G[2]||(G[2]=V=>Y(V,"vertical"))},null,8,["zoom","scroll","offset","unit","indicators"])]),F("div",{ref_key:"scrollContainer",ref:a,tabindex:"-1",class:"flex-1 overflow-auto p-8 flex relative canvas-scroll bg-gray-100 focus:outline-none",onScroll:O,onClick:G[3]||(G[3]=V=>{(V.target===a.value||V.target===V.currentTarget)&&R(e).selectGuide(null)})},[F("div",{ref_key:"canvasWrapper",ref:c,style:Bt(ae.value),class:"mx-auto relative"},[et(Y6,{ref_key:"canvasContainer",ref:u,class:"absolute top-0 left-0"},null,512)],4),F("div",{class:"absolute top-0 left-0 pointer-events-none z-50",style:Bt({width:`${P.value}px`,height:`${x.value}px`})},[I.value?(Ie(),Ne(Rt,{key:0},[F("div",{class:"absolute w-full border-t border-blue-500 border-dashed",style:Bt({top:`${L.value+Math.round(I.value.minY*R(e).zoom)}px`,left:0})},[F("div",{class:"absolute -top-6 bg-blue-500 text-white text-xs px-1.5 py-0.5 rounded shadow-sm",style:Bt({left:`${N.value+10}px`})},me(oe(I.value.minY))+" "+me(Z.value),5)],4),F("div",{class:"absolute w-full border-t border-dashed theme-border",style:Bt({top:`${L.value+Math.round(I.value.maxY*R(e).zoom)}px`,left:0})},[F("div",{class:"absolute -top-6 theme-bg text-white text-xs px-1.5 py-0.5 rounded shadow-sm",style:Bt({left:`${N.value+10}px`})},me(oe(I.value.maxY))+" "+me(Z.value),5)],4),F("div",{class:"absolute h-full border-l border-dashed theme-border",style:Bt({left:`${K.value+Math.round(I.value.minX*R(e).zoom)}px`,top:0})},[F("div",{class:"absolute -left-2 transform -translate-x-full theme-bg text-white text-xs px-1.5 py-0.5 rounded shadow-sm whitespace-nowrap",style:Bt({top:`${D.value+10}px`})},me(oe(I.value.minX))+" "+me(Z.value),5)],4),F("div",{class:"absolute h-full border-l border-dashed theme-border",style:Bt({left:`${K.value+Math.round(I.value.maxX*R(e).zoom)}px`,top:0})},[F("div",{class:"absolute -left-2 transform -translate-x-full theme-bg text-white text-xs px-1.5 py-0.5 rounded shadow-sm whitespace-nowrap",style:Bt({top:`${D.value+10}px`})},me(oe(I.value.maxX))+" "+me(Z.value),5)],4)],64)):mt("",!0),(Ie(!0),Ne(Rt,null,Zr(R(e).guides,V=>(Ie(),Ne(Rt,{key:V.id},[V.type==="horizontal"?(Ie(),Ne("div",{key:0,class:"absolute left-0 w-full h-3 -mt-1.5 cursor-row-resize pointer-events-auto group flex flex-col justify-center",style:Bt({top:`${L.value+V.position*R(e).zoom}px`}),onMousedown:Ci(ee=>{R(e).selectGuide(V.id),Y(ee,"horizontal",V.id)},["stop"])},[F("div",{class:St(["w-full",R(e).highlightedGuideId===V.id?"border-t-2 theme-border-strong":"border-t theme-border","theme-border-hover"])},null,2),F("div",dhe,me(oe(V.position))+me(Z.value),1)],44,fhe)):(Ie(),Ne("div",{key:1,class:"absolute top-0 h-full w-3 -ml-1.5 cursor-col-resize pointer-events-auto group flex flex-row justify-center",style:Bt({left:`${K.value+V.position*R(e).zoom}px`}),onMousedown:Ci(ee=>{R(e).selectGuide(V.id),Y(ee,"vertical",V.id)},["stop"])},[F("div",{class:St(["h-full",R(e).highlightedGuideId===V.id?"border-l-2 theme-border-strong":"border-l theme-border","theme-border-hover"])},null,2),F("div",ghe,me(oe(V.position))+me(Z.value),1)],44,hhe))],64))),128)),te.value&&!k.value?(Ie(),Ne("div",{key:1,class:St(["absolute border-dashed pointer-events-none theme-border",W.value==="horizontal"?"left-0 w-full border-t":"top-0 h-full border-l"]),style:Bt({top:W.value==="horizontal"?`${L.value+ne.value*R(e).zoom}px`:void 0,left:W.value==="vertical"?`${K.value+ne.value*R(e).zoom}px`:void 0})},[F("div",{class:St(["absolute theme-bg text-white text-[10px] px-1 rounded",W.value==="horizontal"?"left-2 -top-4":"top-2 -left-4"])},me(oe(ne.value))+me(Z.value),3)],6)):mt("",!0),R(e).highlightedEdge?(Ie(),Ne("div",phe,[R(e).highlightedEdge==="top"?(Ie(),Ne("div",{key:0,class:"absolute left-0 w-full border-t theme-border",style:Bt({top:`${L.value}px`})},null,4)):R(e).highlightedEdge==="bottom"?(Ie(),Ne("div",{key:1,class:"absolute left-0 w-full border-t theme-border",style:Bt({top:`${L.value+R(e).canvasSize.height*R(e).zoom}px`})},null,4)):R(e).highlightedEdge==="left"?(Ie(),Ne("div",{key:2,class:"absolute top-0 h-full border-l theme-border",style:Bt({left:`${K.value}px`})},null,4)):R(e).highlightedEdge==="right"?(Ie(),Ne("div",{key:3,class:"absolute top-0 h-full border-l theme-border",style:Bt({left:`${K.value+R(e).canvasSize.width*R(e).zoom}px`})},null,4)):mt("",!0)])):mt("",!0)],4)],544)])]),R(e).showMinimap?(Ie(),Ne("div",vhe,[et(_de,{"scroll-width":P.value,"scroll-height":x.value,"viewport-width":q.value,"viewport-height":$.value,"scroll-left":N.value,"scroll-top":D.value,pages:R(e).pages,"page-width":R(e).canvasSize.width,"page-height":R(e).canvasSize.height,zoom:R(e).zoom,"content-offset-x":K.value,"content-offset-y":L.value,"canvas-background":R(e).canvasBackground,"show-header-line":R(e).showHeaderLine,"show-footer-line":R(e).showFooterLine,"header-height":R(e).headerHeight,"footer-height":R(e).footerHeight,watermark:R(e).watermark||null,"onUpdate:scroll":Ue},null,8,["scroll-width","scroll-height","viewport-width","viewport-height","scroll-left","scroll-top","pages","page-width","page-height","zoom","content-offset-x","content-offset-y","canvas-background","show-header-line","show-footer-line","header-height","footer-height","watermark"])])):mt("",!0)]),et(Ode)]),et(jg,{show:d.value,"initial-value":m.value,title:R(o)("sidebar.saveAsCustomElement"),placeholder:R(o)("sidebar.enterNamePlaceholder"),onClose:G[4]||(G[4]=V=>d.value=!1),onSave:E},null,8,["show","initial-value","title","placeholder"]),F("div",{ref_key:"modalContainer",ref:A,class:"print-designer-modals fixed inset-0 pointer-events-none z-[9999]"},null,512)],512)}}}),Sx="print-designer-font-family",yhe=()=>{const t=localStorage.getItem("print-designer-brand-vars");if(t)try{const e=JSON.parse(t);if(!e||typeof e!="object")return;const r=document.documentElement;Object.entries(e).forEach(([n,i])=>{r.style.setProperty(n,i)})}catch{}},bhe=()=>{var t;return((t=localStorage.getItem(Sx))==null?void 0:t.trim())||""};class kN extends HTMLElement{constructor(){super(...arguments);il(this,"app",null);il(this,"printApi",null);il(this,"printSettings",null);il(this,"designerStore",null);il(this,"templateStore",null);il(this,"themeApi",null);il(this,"i18n",null);il(this,"mountEl",null);il(this,"headObserver",null)}static get observedAttributes(){return["lang"]}attributeChangedCallback(r,n,i){r==="lang"&&i!==n&&this.setLanguage(i)}setLanguage(r){(r==="zh"||r==="en")&&(this.i18n&&(this.i18n.global.locale.value=r),localStorage.setItem("print-designer-language",r))}syncMonacoStyles(){const r=this.shadowRoot;if(!r)return;Array.from(document.querySelectorAll("style")).filter(o=>{var a,s,A;return((a=o.textContent)==null?void 0:a.includes(".monaco-editor"))||((s=o.id)==null?void 0:s.startsWith("monaco-"))||((A=o.textContent)==null?void 0:A.includes("print-designer"))}).forEach(o=>{if(!Array.from(r.querySelectorAll("style")).find(s=>s.textContent===o.textContent)){const s=o.cloneNode(!0);s.setAttribute("data-monaco-clone","true"),r.appendChild(s)}}),Array.from(document.querySelectorAll('link[rel="stylesheet"]')).filter(o=>{const a=o.getAttribute("href")||"";return a.includes("monaco")||a.includes("print-designer")}).forEach(o=>{if(!r.querySelector(`link[href="${o.href}"]`)){const s=o.cloneNode(!0);s.setAttribute("data-monaco-clone","true"),r.appendChild(s)}})}ensureShadowRoot(){const r=this.shadowRoot||this.attachShadow({mode:"open"});if(!r.querySelector("style[data-print-designer-inline]")){const n=document.createElement("style");n.setAttribute("data-print-designer-inline","true"),n.textContent=RI,r.appendChild(n)}return this.syncMonacoStyles(),r}connectedCallback(){if(this.app)return;this.headObserver=new MutationObserver(()=>{this.syncMonacoStyles()}),this.headObserver.observe(document.head,{childList:!0,subtree:!0});const r=gT();td(r);const n=rT(mhe);this.themeApi=du(),yhe(),n.use(r);const i=this.getAttribute("lang"),o=DI(i||void 0);this.i18n=o,n.use(o);const a=this.ensureShadowRoot();this.mountEl||(this.mountEl=document.createElement("div"),this.mountEl.style.width="100%",this.mountEl.style.height="100%",a.appendChild(this.mountEl));const s=bhe();s&&(this.mountEl.style.fontFamily=s),n.mount(this.mountEl),this.printApi=mx(),this.printSettings=Sg(),this.designerStore=fn(r),this.templateStore=gg(r),this.app=n,this.dispatchEvent(new CustomEvent("ready"))}disconnectedCallback(){this.headObserver&&(this.headObserver.disconnect(),this.headObserver=null),this.app&&(this.app.unmount(),this.app=null),this.printApi=null,this.printSettings=null,this.designerStore=null,this.templateStore=null,this.themeApi=null,this.i18n=null,this.mountEl=null}getPrintPages(){const r=this.shadowRoot||this;return Array.from(r.querySelectorAll(".print-page"))}async print(r={}){if(!this.printApi)return;const n=this.getPrintPages();this.dispatchEvent(new CustomEvent("print",{detail:{request:r}}));try{await this.printApi.print(n,{mode:r.mode,options:r.options}),this.dispatchEvent(new CustomEvent("printed",{detail:{request:r}}))}catch(i){throw this.dispatchEvent(new CustomEvent("error",{detail:{scope:"print",error:i}})),i}}async export(r){if(!this.printApi||!this.printSettings)return;const n=r==null?void 0:r.type,i=this.printSettings.exportImageMerged.value;(r==null?void 0:r.merged)!==void 0&&(this.printSettings.exportImageMerged.value=!!r.merged);try{if(this.dispatchEvent(new CustomEvent("export",{detail:{request:r}})),n==="pdf"){await this.printApi.exportPdf(this.getPrintPages(),r.filename||"print-design.pdf"),this.dispatchEvent(new CustomEvent("exported",{detail:{request:r}}));return}if(n==="images"){await this.printApi.exportImages(this.getPrintPages(),r.filenamePrefix||"print-design"),this.dispatchEvent(new CustomEvent("exported",{detail:{request:r}}));return}if(n==="pdfBlob"){const o=await this.printApi.getPdfBlob(this.getPrintPages());return this.dispatchEvent(new CustomEvent("exported",{detail:{request:r,blob:o}})),o}if(n==="imageBlob"){const o=await this.printApi.getImageBlob(this.getPrintPages());return this.dispatchEvent(new CustomEvent("exported",{detail:{request:r,blob:o}})),o}throw new Error("export type not supported")}catch(o){throw this.dispatchEvent(new CustomEvent("error",{detail:{scope:"export",error:o}})),o}finally{this.printSettings.exportImageMerged.value=i}}setBranding(r={}){this.designerStore&&this.designerStore.setBranding(r)}setBrandVars(r,n={}){if(!r||typeof r!="object")return;const i=document.documentElement;Object.entries(r).forEach(([o,a])=>{i.style.setProperty(o,a)}),n.persist!==!1&&localStorage.setItem("print-designer-brand-vars",JSON.stringify(r))}setTheme(r){this.themeApi&&this.themeApi.setTheme(r)}setDesignerFont(r,n={}){if(!this.mountEl)return;const i=(r||"").trim();i?this.mountEl.style.fontFamily=i:this.mountEl.style.removeProperty("font-family"),n.persist!==!1&&(i?localStorage.setItem(Sx,i):localStorage.removeItem(Sx))}getVariables(){return this.designerStore?Ht(this.designerStore.testData||{}):{}}setVariables(r,n={}){if(!(!this.designerStore||!r||typeof r!="object")){if(n.merge){this.designerStore.testData={...this.designerStore.testData||{},...r};return}this.designerStore.testData=r}}getTemplateData(){return this.designerStore?{pages:Ht(this.designerStore.pages),canvasSize:Ht(this.designerStore.canvasSize),guides:Ht(this.designerStore.guides),zoom:this.designerStore.zoom,showGrid:this.designerStore.showGrid,headerHeight:this.designerStore.headerHeight,footerHeight:this.designerStore.footerHeight,showHeaderLine:this.designerStore.showHeaderLine,showFooterLine:this.designerStore.showFooterLine,showMinimap:this.designerStore.showMinimap,canvasBackground:this.designerStore.canvasBackground,pageSpacingX:this.designerStore.pageSpacingX,pageSpacingY:this.designerStore.pageSpacingY,unit:this.designerStore.unit,watermark:Ht(this.designerStore.watermark),testData:Ht(this.designerStore.testData||{})}:null}loadTemplateData(r){return!this.designerStore||this.designerStore.editingCustomElementId||!r?!1:(this.designerStore.resetCanvas(),Array.isArray(r.pages)&&r.pages.length>0&&(this.designerStore.pages=r.pages),r.canvasSize&&(this.designerStore.canvasSize=r.canvasSize),r.guides&&(this.designerStore.guides=r.guides),r.zoom!==void 0&&(this.designerStore.zoom=r.zoom),r.showGrid!==void 0&&(this.designerStore.showGrid=r.showGrid),r.headerHeight!==void 0&&(this.designerStore.headerHeight=r.headerHeight),r.footerHeight!==void 0&&(this.designerStore.footerHeight=r.footerHeight),r.showHeaderLine!==void 0&&(this.designerStore.showHeaderLine=r.showHeaderLine),r.showFooterLine!==void 0&&(this.designerStore.showFooterLine=r.showFooterLine),r.showMinimap!==void 0&&(this.designerStore.showMinimap=r.showMinimap),r.canvasBackground!==void 0&&(this.designerStore.canvasBackground=r.canvasBackground),r.pageSpacingX!==void 0&&(this.designerStore.pageSpacingX=r.pageSpacingX),r.pageSpacingY!==void 0&&(this.designerStore.pageSpacingY=r.pageSpacingY),r.unit!==void 0&&(this.designerStore.unit=r.unit),r.watermark!==void 0&&(this.designerStore.watermark=r.watermark),this.designerStore.testData=r.testData||{},this.designerStore.selectedElementId=null,this.designerStore.selectedGuideId=null,this.designerStore.historyPast=[],this.designerStore.historyFuture=[],!0)}setPrintDefaults(r={}){this.printSettings&&(r.printMode&&(this.printSettings.printMode.value=r.printMode),r.silentPrint!==void 0&&(this.printSettings.silentPrint.value=!!r.silentPrint),r.exportImageMerged!==void 0&&(this.printSettings.exportImageMerged.value=!!r.exportImageMerged),r.localSettings&&Object.assign(this.printSettings.localSettings,r.localSettings),r.remoteSettings&&Object.assign(this.printSettings.remoteSettings,r.remoteSettings),r.localPrintOptions&&Object.assign(this.printSettings.localPrintOptions,r.localPrintOptions),r.remotePrintOptions&&Object.assign(this.printSettings.remotePrintOptions,r.remotePrintOptions))}async fetchLocalPrinters(){return this.printSettings?this.printSettings.fetchLocalPrinters():[]}async fetchLocalPrinterCaps(r){if(!(!this.printSettings||!r))return this.printSettings.fetchLocalPrinterCaps(r)}async fetchRemotePrinters(r){return this.printSettings?this.printSettings.fetchRemotePrinters(r):[]}async fetchRemoteClients(){return this.printSettings?this.printSettings.fetchRemoteClients():[]}setCrudMode(r){var n,i;SW(r),r==="remote"&&((n=this.templateStore)==null||n.loadTemplates().then(()=>{this.templateStore&&!this.templateStore.currentTemplateId&&this.templateStore.templates.length>0&&this.templateStore.loadTemplate(this.templateStore.templates[0].id)}),(i=this.designerStore)==null||i.loadCustomElements())}setCrudEndpoints(r,n={}){CW({endpoints:{...r,baseUrl:n.baseUrl},headers:n.headers})}getTemplates(r={}){return this.templateStore?r.includeData?Ht(this.templateStore.templates):this.templateStore.templates.map(n=>({id:n.id,name:n.name,updatedAt:n.updatedAt})):[]}getTemplate(r){if(!this.templateStore)return null;const n=this.templateStore.templates.find(i=>i.id===r);return n?Ht(n):null}async upsertTemplate(r,n={}){var c,d;if(!this.templateStore||!r||typeof r.name!="string")return null;const{mode:i,endpoints:o,headers:a,fetcher:s}=Pa(),A=r.id||Hi(),l=this.templateStore.templates.findIndex(f=>f.id===A),u={id:A,name:r.name,data:r.data||((c=this.templateStore.templates[l])==null?void 0:c.data)||{},updatedAt:r.updatedAt||Date.now()};if(l>=0?this.templateStore.templates[l]=u:this.templateStore.templates.unshift(u),n.setCurrent&&(this.templateStore.currentTemplateId=A),i==="remote")try{const f=La(((d=o.templates)==null?void 0:d.upsert)||""),p=await(await(s||fetch)(f,{method:"POST",headers:a,body:JSON.stringify(u)})).json(),b=(p==null?void 0:p.id)||u.id;if(b!==u.id){const m=this.templateStore.templates.findIndex(S=>S.id===u.id),w={...u,id:b};m>=0?this.templateStore.templates[m]=w:this.templateStore.templates.unshift(w),this.templateStore.currentTemplateId===u.id&&(this.templateStore.currentTemplateId=b)}return b}catch(f){return console.error("Failed to upsert template",f),u.id}return this.templateStore.saveToLocalStorage(),u.id}setTemplates(r,n={}){if(!this.templateStore||!Array.isArray(r))return;this.templateStore.templates=r.filter(o=>o&&typeof o.id=="string"&&typeof o.name=="string").map(o=>({id:o.id,name:o.name,data:o.data||{},updatedAt:o.updatedAt||Date.now()}));let i=n.currentTemplateId||this.templateStore.currentTemplateId;i&&!this.templateStore.templates.some(o=>o.id===i)&&(i=null),!i&&this.templateStore.templates.length>0&&(i=this.templateStore.templates[0].id),i&&(this.templateStore.currentTemplateId=i,this.designerStore&&!this.designerStore.editingCustomElementId&&this.templateStore.loadTemplate(i)),this.templateStore.saveToLocalStorage()}deleteTemplate(r){this.templateStore&&this.templateStore.deleteTemplate(r)}loadTemplate(r){return!this.templateStore||!this.designerStore||this.designerStore.editingCustomElementId?!1:(this.templateStore.loadTemplate(r),!0)}getCustomElements(r={}){return this.designerStore?r.includeElement?Ht(this.designerStore.customElements):this.designerStore.customElements.map(n=>({id:n.id,name:n.name})):[]}getCustomElement(r){if(!this.designerStore)return null;const n=this.designerStore.customElements.find(i=>i.id===r);return n?Ht(n):null}async upsertCustomElement(r){var u;if(!this.designerStore||!r||typeof r.name!="string"||!r.element)return null;const{mode:n,endpoints:i,headers:o,fetcher:a}=Pa(),s=r.id||Hi(),A=this.designerStore.customElements.findIndex(c=>c.id===s),l={id:s,name:r.name,element:Ht(r.element)};if(A>=0?this.designerStore.customElements.splice(A,1,l):this.designerStore.customElements.push(l),n==="remote")try{const c=La(((u=i.customElements)==null?void 0:u.upsert)||""),f=await(await(a||fetch)(c,{method:"POST",headers:o,body:JSON.stringify(l)})).json(),g=(f==null?void 0:f.id)||l.id;if(g!==l.id){const p=this.designerStore.customElements.findIndex(m=>m.id===l.id),b={...l,id:g};p>=0?this.designerStore.customElements.splice(p,1,b):this.designerStore.customElements.push(b)}return g}catch(c){return console.error("Failed to upsert custom element",c),l.id}return this.designerStore.saveCustomElements(),l.id}setCustomElements(r){this.designerStore&&Array.isArray(r)&&(this.designerStore.customElements=r.filter(n=>n&&typeof n.id=="string"&&typeof n.name=="string"&&n.element).map(n=>({id:n.id,name:n.name,element:Ht(n.element)})),this.designerStore.saveCustomElements())}deleteCustomElement(r){this.designerStore&&this.designerStore.removeCustomElement(r)}}const NN="print-designer";customElements.get(NN)||customElements.define(NN,kN);/*!
|
|
501
|
+
}`;var Sr=K9(function(){return gr(Te,Gt+"return "+vt).apply(r,De)});if(Sr.source=vt,P3(Sr))throw Sr;return Sr}function Axe(h){return cn(h).toLowerCase()}function lxe(h){return cn(h).toUpperCase()}function uxe(h,v,C){if(h=cn(h),h&&(C||v===r))return ga(h);if(!h||!(v=Qo(v)))return h;var X=ko(h),ce=ko(v),Te=Xu(X,ce),De=Wu(X,ce)+1;return Bs(X,Te,De).join("")}function cxe(h,v,C){if(h=cn(h),h&&(C||v===r))return h.slice(0,oA(h)+1);if(!h||!(v=Qo(v)))return h;var X=ko(h),ce=Wu(X,ko(v))+1;return Bs(X,0,ce).join("")}function fxe(h,v,C){if(h=cn(h),h&&(C||v===r))return h.replace($r,"");if(!h||!(v=Qo(v)))return h;var X=ko(h),ce=Xu(X,ko(v));return Bs(X,ce).join("")}function dxe(h,v){var C=K,X=L;if(Wn(v)){var ce="separator"in v?v.separator:ce;C="length"in v?Br(v.length):C,X="omission"in v?Qo(v.omission):X}h=cn(h);var Te=h.length;if(za(h)){var De=ko(h);Te=De.length}if(C>=Te)return h;var ze=C-iA(X);if(ze<1)return X;var Ye=De?Bs(De,0,ze).join(""):h.slice(0,ze);if(ce===r)return Ye+X;if(De&&(ze+=Ye.length-ze),L3(ce)){if(h.slice(ze).search(ce)){var lt,ut=Ye;for(ce.global||(ce=Rl(ce.source,cn(Fo.exec(ce))+"g")),ce.lastIndex=0;lt=ce.exec(ut);)var vt=lt.index;Ye=Ye.slice(0,vt===r?ze:vt)}}else if(h.indexOf(Qo(ce),ze)!=ze){var Ot=Ye.lastIndexOf(ce);Ot>-1&&(Ye=Ye.slice(0,Ot))}return Ye+X}function hxe(h){return h=cn(h),h&&sr.test(h)?h.replace(Lr,Dl):h}var gxe=Ch(function(h,v,C){return h+(C?" ":"")+v.toUpperCase()}),U3=GH("toUpperCase");function q9(h,v,C){return h=cn(h),v=C?r:v,v===r?Ju(h)?ZA(h):Qe(h):h.match(v)||[]}var K9=xr(function(h,v){try{return Ki(h,r,v)}catch(C){return P3(C)?C:new qt(C)}}),pxe=Zl(function(h,v){return Gi(v,function(C){C=nl(C),Ct(h,C,I3(h[C],h))}),h});function vxe(h){var v=h==null?0:h.length,C=_t();return h=v?en(h,function(X){if(typeof X[1]!="function")throw new Mi(a);return[C(X[0]),X[1]]}):[],xr(function(X){for(var ce=-1;++ce<v;){var Te=h[ce];if(Ki(Te[0],this,X))return Ki(Te[1],this,X)}})}function mxe(h){return Wr(bt(h,c))}function M3(h){return function(){return h}}function yxe(h,v){return h==null||h!==h?v:h}var bxe=WH(),wxe=WH(!0);function Oa(h){return h}function D3(h){return Tf(typeof h=="function"?h:bt(h,c))}function xxe(h){return V1(bt(h,c))}function Bxe(h,v){return mh(h,bt(v,c))}var Exe=xr(function(h,v){return function(C){return jl(C,h,v)}}),Cxe=xr(function(h,v){return function(C){return jl(h,C,v)}});function R3(h,v,C){var X=to(v),ce=ii(v,X);C==null&&!(Wn(v)&&(ce.length||!X.length))&&(C=v,v=h,h=this,ce=ii(v,to(v)));var Te=!(Wn(C)&&"chain"in C)||!!C.chain,De=_l(h);return Gi(ce,function(ze){var Ye=v[ze];h[ze]=Ye,De&&(h.prototype[ze]=function(){var lt=this.__chain__;if(Te||lt){var ut=h(this.__wrapped__),vt=ut.__actions__=Ea(this.__actions__);return vt.push({func:Ye,args:arguments,thisArg:h}),ut.__chain__=lt,ut}return Ye.apply(h,ha([this.value()],arguments))})}),h}function Sxe(){return ri._===this&&(ri._=Kn),this}function Q3(){}function Oxe(h){return h=Br(h),xr(function(v){return j1(v,h)})}var Txe=p3(en),Ixe=p3(Ku),Fxe=p3(U);function G9(h){return B3(h)?lr(nl(h)):G1(h)}function Pxe(h){return function(v){return h==null?r:Xn(h,v)}}var Lxe=ZH(),kxe=ZH(!0);function H3(){return[]}function z3(){return!1}function Nxe(){return{}}function Uxe(){return""}function Mxe(){return!0}function Dxe(h,v){if(h=Br(h),h<1||h>oe)return[];var C=te,X=eo(h,te);v=_t(v),h-=te;for(var ce=Ni(X,v);++C<h;)v(C);return ce}function Rxe(h){return mr(h)?en(h,nl):Wa(h)?[h]:Ea(f9(cn(h)))}function Qxe(h){var v=++ma;return cn(h)+v}var Hxe=ey(function(h,v){return h+v},0),zxe=v3("ceil"),Vxe=ey(function(h,v){return h/v},1),jxe=v3("floor");function qxe(h){return h&&h.length?Fn(h,Oa,oi):r}function Kxe(h,v){return h&&h.length?Fn(h,_t(v,2),oi):r}function Gxe(h){return cr(h,Oa)}function Xxe(h,v){return cr(h,_t(v,2))}function Wxe(h){return h&&h.length?Fn(h,Oa,Kl):r}function Yxe(h,v){return h&&h.length?Fn(h,_t(v,2),Kl):r}var Zxe=ey(function(h,v){return h*v},1),Jxe=v3("round"),_xe=ey(function(h,v){return h-v},0);function $xe(h){return h&&h.length?Dn(h,Oa):0}function eBe(h,v){return h&&h.length?Dn(h,_t(v,2)):0}return xe.after=x2e,xe.ary=B9,xe.assign=l5e,xe.assignIn=D9,xe.assignInWith=dy,xe.assignWith=u5e,xe.at=c5e,xe.before=E9,xe.bind=I3,xe.bindAll=pxe,xe.bindKey=C9,xe.castArray=N2e,xe.chain=b9,xe.chunk=jbe,xe.compact=qbe,xe.concat=Kbe,xe.cond=vxe,xe.conforms=mxe,xe.constant=M3,xe.countBy=$we,xe.create=f5e,xe.curry=S9,xe.curryRight=O9,xe.debounce=T9,xe.defaults=d5e,xe.defaultsDeep=h5e,xe.defer=B2e,xe.delay=E2e,xe.difference=Gbe,xe.differenceBy=Xbe,xe.differenceWith=Wbe,xe.drop=Ybe,xe.dropRight=Zbe,xe.dropRightWhile=Jbe,xe.dropWhile=_be,xe.fill=$be,xe.filter=t2e,xe.flatMap=i2e,xe.flatMapDeep=o2e,xe.flatMapDepth=a2e,xe.flatten=p9,xe.flattenDeep=ewe,xe.flattenDepth=twe,xe.flip=C2e,xe.flow=bxe,xe.flowRight=wxe,xe.fromPairs=rwe,xe.functions=w5e,xe.functionsIn=x5e,xe.groupBy=s2e,xe.initial=iwe,xe.intersection=owe,xe.intersectionBy=awe,xe.intersectionWith=swe,xe.invert=E5e,xe.invertBy=C5e,xe.invokeMap=l2e,xe.iteratee=D3,xe.keyBy=u2e,xe.keys=to,xe.keysIn=Sa,xe.map=sy,xe.mapKeys=O5e,xe.mapValues=T5e,xe.matches=xxe,xe.matchesProperty=Bxe,xe.memoize=ly,xe.merge=I5e,xe.mergeWith=R9,xe.method=Exe,xe.methodOf=Cxe,xe.mixin=R3,xe.negate=uy,xe.nthArg=Oxe,xe.omit=F5e,xe.omitBy=P5e,xe.once=S2e,xe.orderBy=c2e,xe.over=Txe,xe.overArgs=O2e,xe.overEvery=Ixe,xe.overSome=Fxe,xe.partial=F3,xe.partialRight=I9,xe.partition=f2e,xe.pick=L5e,xe.pickBy=Q9,xe.property=G9,xe.propertyOf=Pxe,xe.pull=cwe,xe.pullAll=m9,xe.pullAllBy=fwe,xe.pullAllWith=dwe,xe.pullAt=hwe,xe.range=Lxe,xe.rangeRight=kxe,xe.rearg=T2e,xe.reject=g2e,xe.remove=gwe,xe.rest=I2e,xe.reverse=O3,xe.sampleSize=v2e,xe.set=N5e,xe.setWith=U5e,xe.shuffle=m2e,xe.slice=pwe,xe.sortBy=w2e,xe.sortedUniq=Bwe,xe.sortedUniqBy=Ewe,xe.split=ixe,xe.spread=F2e,xe.tail=Cwe,xe.take=Swe,xe.takeRight=Owe,xe.takeRightWhile=Twe,xe.takeWhile=Iwe,xe.tap=qwe,xe.throttle=P2e,xe.thru=ay,xe.toArray=N9,xe.toPairs=H9,xe.toPairsIn=z9,xe.toPath=Rxe,xe.toPlainObject=M9,xe.transform=M5e,xe.unary=L2e,xe.union=Fwe,xe.unionBy=Pwe,xe.unionWith=Lwe,xe.uniq=kwe,xe.uniqBy=Nwe,xe.uniqWith=Uwe,xe.unset=D5e,xe.unzip=T3,xe.unzipWith=y9,xe.update=R5e,xe.updateWith=Q5e,xe.values=Th,xe.valuesIn=H5e,xe.without=Mwe,xe.words=q9,xe.wrap=k2e,xe.xor=Dwe,xe.xorBy=Rwe,xe.xorWith=Qwe,xe.zip=Hwe,xe.zipObject=zwe,xe.zipObjectDeep=Vwe,xe.zipWith=jwe,xe.entries=H9,xe.entriesIn=z9,xe.extend=D9,xe.extendWith=dy,R3(xe,xe),xe.add=Hxe,xe.attempt=K9,xe.camelCase=q5e,xe.capitalize=V9,xe.ceil=zxe,xe.clamp=z5e,xe.clone=U2e,xe.cloneDeep=D2e,xe.cloneDeepWith=R2e,xe.cloneWith=M2e,xe.conformsTo=Q2e,xe.deburr=j9,xe.defaultTo=yxe,xe.divide=Vxe,xe.endsWith=K5e,xe.eq=vA,xe.escape=G5e,xe.escapeRegExp=X5e,xe.every=e2e,xe.find=r2e,xe.findIndex=h9,xe.findKey=g5e,xe.findLast=n2e,xe.findLastIndex=g9,xe.findLastKey=p5e,xe.floor=jxe,xe.forEach=w9,xe.forEachRight=x9,xe.forIn=v5e,xe.forInRight=m5e,xe.forOwn=y5e,xe.forOwnRight=b5e,xe.get=k3,xe.gt=H2e,xe.gte=z2e,xe.has=B5e,xe.hasIn=N3,xe.head=v9,xe.identity=Oa,xe.includes=A2e,xe.indexOf=nwe,xe.inRange=V5e,xe.invoke=S5e,xe.isArguments=Df,xe.isArray=mr,xe.isArrayBuffer=V2e,xe.isArrayLike=Ca,xe.isArrayLikeObject=yi,xe.isBoolean=j2e,xe.isBuffer=uc,xe.isDate=q2e,xe.isElement=K2e,xe.isEmpty=G2e,xe.isEqual=X2e,xe.isEqualWith=W2e,xe.isError=P3,xe.isFinite=Y2e,xe.isFunction=_l,xe.isInteger=F9,xe.isLength=cy,xe.isMap=P9,xe.isMatch=Z2e,xe.isMatchWith=J2e,xe.isNaN=_2e,xe.isNative=$2e,xe.isNil=t5e,xe.isNull=e5e,xe.isNumber=L9,xe.isObject=Wn,xe.isObjectLike=ai,xe.isPlainObject=Kp,xe.isRegExp=L3,xe.isSafeInteger=r5e,xe.isSet=k9,xe.isString=fy,xe.isSymbol=Wa,xe.isTypedArray=Oh,xe.isUndefined=n5e,xe.isWeakMap=i5e,xe.isWeakSet=o5e,xe.join=Awe,xe.kebabCase=W5e,xe.last=Es,xe.lastIndexOf=lwe,xe.lowerCase=Y5e,xe.lowerFirst=Z5e,xe.lt=a5e,xe.lte=s5e,xe.max=qxe,xe.maxBy=Kxe,xe.mean=Gxe,xe.meanBy=Xxe,xe.min=Wxe,xe.minBy=Yxe,xe.stubArray=H3,xe.stubFalse=z3,xe.stubObject=Nxe,xe.stubString=Uxe,xe.stubTrue=Mxe,xe.multiply=Zxe,xe.nth=uwe,xe.noConflict=Sxe,xe.noop=Q3,xe.now=Ay,xe.pad=J5e,xe.padEnd=_5e,xe.padStart=$5e,xe.parseInt=exe,xe.random=j5e,xe.reduce=d2e,xe.reduceRight=h2e,xe.repeat=txe,xe.replace=rxe,xe.result=k5e,xe.round=Jxe,xe.runInContext=Ge,xe.sample=p2e,xe.size=y2e,xe.snakeCase=nxe,xe.some=b2e,xe.sortedIndex=vwe,xe.sortedIndexBy=mwe,xe.sortedIndexOf=ywe,xe.sortedLastIndex=bwe,xe.sortedLastIndexBy=wwe,xe.sortedLastIndexOf=xwe,xe.startCase=oxe,xe.startsWith=axe,xe.subtract=_xe,xe.sum=$xe,xe.sumBy=eBe,xe.template=sxe,xe.times=Dxe,xe.toFinite=$l,xe.toInteger=Br,xe.toLength=U9,xe.toLower=Axe,xe.toNumber=Cs,xe.toSafeInteger=A5e,xe.toString=cn,xe.toUpper=lxe,xe.trim=uxe,xe.trimEnd=cxe,xe.trimStart=fxe,xe.truncate=dxe,xe.unescape=hxe,xe.uniqueId=Qxe,xe.upperCase=gxe,xe.upperFirst=U3,xe.each=w9,xe.eachRight=x9,xe.first=v9,R3(xe,(function(){var h={};return Rn(xe,function(v,C){Dr.call(xe.prototype,C)||(h[C]=v)}),h})(),{chain:!1}),xe.VERSION=n,Gi(["bind","bindKey","curry","curryRight","partial","partialRight"],function(h){xe[h].placeholder=xe}),Gi(["drop","take"],function(h,v){Or.prototype[h]=function(C){C=C===r?1:mi(Br(C),0);var X=this.__filtered__&&!v?new Or(this):this.clone();return X.__filtered__?X.__takeCount__=eo(C,X.__takeCount__):X.__views__.push({size:eo(C,te),type:h+(X.__dir__<0?"Right":"")}),X},Or.prototype[h+"Right"]=function(C){return this.reverse()[h](C).reverse()}}),Gi(["filter","map","takeWhile"],function(h,v){var C=v+1,X=C==x||C==$;Or.prototype[h]=function(ce){var Te=this.clone();return Te.__iteratees__.push({iteratee:_t(ce,3),type:C}),Te.__filtered__=Te.__filtered__||X,Te}}),Gi(["head","last"],function(h,v){var C="take"+(v?"Right":"");Or.prototype[h]=function(){return this[C](1).value()[0]}}),Gi(["initial","tail"],function(h,v){var C="drop"+(v?"":"Right");Or.prototype[h]=function(){return this.__filtered__?new Or(this):this[C](1)}}),Or.prototype.compact=function(){return this.filter(Oa)},Or.prototype.find=function(h){return this.filter(h).head()},Or.prototype.findLast=function(h){return this.reverse().find(h)},Or.prototype.invokeMap=xr(function(h,v){return typeof h=="function"?new Or(this):this.map(function(C){return jl(C,h,v)})}),Or.prototype.reject=function(h){return this.filter(uy(_t(h)))},Or.prototype.slice=function(h,v){h=Br(h);var C=this;return C.__filtered__&&(h>0||v<0)?new Or(C):(h<0?C=C.takeRight(-h):h&&(C=C.drop(h)),v!==r&&(v=Br(v),C=v<0?C.dropRight(-v):C.take(v-h)),C)},Or.prototype.takeRightWhile=function(h){return this.reverse().takeWhile(h).reverse()},Or.prototype.toArray=function(){return this.take(te)},Rn(Or.prototype,function(h,v){var C=/^(?:filter|find|map|reject)|While$/.test(v),X=/^(?:head|last)$/.test(v),ce=xe[X?"take"+(v=="last"?"Right":""):v],Te=X||/^find/.test(v);ce&&(xe.prototype[v]=function(){var De=this.__wrapped__,ze=X?[1]:arguments,Ye=De instanceof Or,lt=ze[0],ut=Ye||mr(De),vt=function(kr){var Vr=ce.apply(xe,ha([kr],ze));return X&&Ot?Vr[0]:Vr};ut&&C&&typeof lt=="function"&<.length!=1&&(Ye=ut=!1);var Ot=this.__chain__,Gt=!!this.__actions__.length,rr=Te&&!Ot,Sr=Ye&&!Gt;if(!Te&&ut){De=Sr?De:new Or(this);var nr=h.apply(De,ze);return nr.__actions__.push({func:ay,args:[vt],thisArg:r}),new ea(nr,Ot)}return rr&&Sr?h.apply(this,ze):(nr=this.thru(vt),rr?X?nr.value()[0]:nr.value():nr)})}),Gi(["pop","push","shift","sort","splice","unshift"],function(h){var v=Va[h],C=/^(?:push|sort|unshift)$/.test(h)?"tap":"thru",X=/^(?:pop|shift)$/.test(h);xe.prototype[h]=function(){var ce=arguments;if(X&&!this.__chain__){var Te=this.value();return v.apply(mr(Te)?Te:[],ce)}return this[C](function(De){return v.apply(mr(De)?De:[],ce)})}}),Rn(Or.prototype,function(h,v){var C=xe[v];if(C){var X=C.name+"";Dr.call(ac,X)||(ac[X]=[]),ac[X].push({name:v,func:C})}}),ac[$1(r,m).name]=[{name:"wrapper",func:r}],Or.prototype.clone=N1,Or.prototype.reverse=i3,Or.prototype.value=dh,xe.prototype.at=Kwe,xe.prototype.chain=Gwe,xe.prototype.commit=Xwe,xe.prototype.next=Wwe,xe.prototype.plant=Zwe,xe.prototype.reverse=Jwe,xe.prototype.toJSON=xe.prototype.valueOf=xe.prototype.value=_we,xe.prototype.first=xe.prototype.head,JA&&(xe.prototype[JA]=Ywe),xe}),Uo=aA();co?((co.exports=Uo)._=Uo,da._=Uo):ri._=Uo}).call(Cse)})(qg,qg.exports)),qg.exports}var Ose=Sse();const Tse={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Ise(t,e){return Ie(),Ne("svg",Tse,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M4 19q-.825 0-1.412-.587T2 17V7q0-.825.588-1.412T4 5h16q.825 0 1.413.588T22 7v10q0 .825-.587 1.413T20 19zm4-3h8v-2H8zm-3-3h2v-2H5zm3 0h2v-2H8zm3 0h2v-2h-2zm3 0h2v-2h-2zm3 0h2v-2h-2zM5 10h2V8H5zm3 0h2V8H8zm3 0h2V8h-2zm3 0h2V8h-2zm3 0h2V8h-2z"},null,-1)])])}const Fse=kt({name:"material-symbols-keyboard",render:Ise}),Pse={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Lse(t,e){return Ie(),Ne("svg",Pse,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M11 17h2v-6h-2zm1-8q.425 0 .713-.288T13 8t-.288-.712T12 7t-.712.288T11 8t.288.713T12 9m0 13q-2.075 0-3.9-.788t-3.175-2.137T2.788 15.9T2 12t.788-3.9t2.137-3.175T8.1 2.788T12 2t3.9.788t3.175 2.137T21.213 8.1T22 12t-.788 3.9t-2.137 3.175t-3.175 2.138T12 22"},null,-1)])])}const kse=kt({name:"material-symbols-info",render:Lse}),Cx={name:"vue-print-designer",version:"1.0.26",dependencies:{"@guolao/vue-monaco-editor":"^1.6.0",canvg:"^4.0.3","dom-to-image-more":"^3.7.2",jszip:"^3.10.1",jsbarcode:"^3.12.3",jspdf:"^2.5.2",lodash:"^4.17.21",pinia:"^2.3.0",qrcode:"^1.5.4",uuid:"^11.0.3",vue:"^3.5.13","vue-i18n":"^11.2.8"}},Nse={class:"bg-white rounded-lg shadow-xl w-[700px] max-w-full h-[500px] flex overflow-hidden"},Use={class:"w-48 bg-gray-50 border-r border-gray-200 flex flex-col"},Mse={class:"h-[60px] flex items-center px-4 border-b border-gray-200"},Dse={class:"text-lg font-semibold text-gray-800"},Rse={class:"flex-1 py-2"},Qse={class:"flex-1 flex flex-col min-w-0"},Hse={class:"h-[60px] flex items-center justify-between px-4 border-b border-gray-200"},zse={class:"text-lg font-semibold text-gray-800"},Vse={class:"flex-1 overflow-y-auto p-6"},jse={key:0,class:"space-y-6"},qse={class:"grid grid-cols-1 gap-6 text-sm"},Kse={class:"font-medium text-gray-900 mb-3 border-b pb-1"},Gse={class:"space-y-2 text-gray-600"},Xse={class:"flex justify-between items-center"},Wse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Yse={class:"flex justify-between items-center"},Zse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Jse={class:"flex justify-between items-center"},_se={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},$se={class:"flex justify-between items-center"},eAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},tAe={class:"flex justify-between items-center"},rAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},nAe={class:"flex justify-between items-center"},iAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},oAe={class:"flex justify-between items-center"},aAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},sAe={class:"flex justify-between items-center"},AAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},lAe={class:"flex justify-between items-center"},uAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},cAe={class:"flex justify-between items-center"},fAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},dAe={class:"flex justify-between items-center"},hAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},gAe={class:"flex justify-between items-center"},pAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},vAe={class:"flex justify-between items-center"},mAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},yAe={class:"font-medium text-gray-900 mb-3 border-b pb-1"},bAe={class:"space-y-2 text-gray-600"},wAe={class:"flex justify-between items-center"},xAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},BAe={class:"flex justify-between items-center"},EAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},CAe={class:"flex justify-between items-center"},SAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},OAe={class:"flex justify-between items-center"},TAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},IAe={class:"flex justify-between items-center"},FAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},PAe={class:"flex justify-between items-center"},LAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},kAe={class:"flex justify-between items-center"},NAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},UAe={class:"flex justify-between items-center"},MAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},DAe={class:"flex justify-between items-center"},RAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},QAe={class:"flex justify-between items-center"},HAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},zAe={class:"font-medium text-gray-900 mb-3 border-b pb-1"},VAe={class:"space-y-2 text-gray-600"},jAe={class:"flex justify-between items-center"},qAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},KAe={class:"flex justify-between items-center"},GAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},XAe={class:"flex justify-between items-center"},WAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},YAe={class:"flex justify-between items-center"},ZAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},JAe={key:1,class:"space-y-6"},_Ae={class:"text-center mb-8"},$Ae={class:"text-xl font-bold text-gray-800"},ele={class:"mt-4 flex justify-center"},tle={href:"https://github.com/0ldFive/Vue-Print-Designer",target:"_blank",rel:"noopener noreferrer",class:"group inline-flex items-center gap-2 rounded-full border border-gray-200 bg-gray-50 px-2.5 py-1 text-[11px] text-gray-700 shadow-sm transition-colors hover:border-blue-200 hover:bg-blue-50 hover:text-blue-700",title:"https://github.com/0ldFive/Vue-Print-Designer"},rle={class:"text-gray-600 group-hover:text-blue-600"},nle={class:"font-medium text-gray-900 mb-3 border-b pb-1"},ile={class:"bg-gray-50 rounded-lg border border-gray-200 overflow-hidden"},ole={class:"w-full text-sm text-left"},ale={class:"bg-gray-100 text-gray-700 font-medium"},sle={class:"px-4 py-2 border-b"},Ale={class:"px-4 py-2 border-b"},lle={class:"divide-y divide-gray-200"},ule={class:"px-4 py-2 text-gray-700 font-mono"},cle={class:"px-4 py-2 text-gray-500"},fle={class:"p-4 border-t border-gray-200 bg-gray-50 flex justify-end rounded-br-lg"},dle=Tr({__name:"HelpModal",props:{show:{type:Boolean}},emits:["update:show"],setup(t,{emit:e}){const r=t,n=e,{t:i}=zn(),o=fn(),a=li("modal-container",We(null)),s=We("shortcuts"),A=()=>{n("update:show",!1)},l=f=>{r.show&&f.key==="Escape"&&(f.preventDefault(),A())};xi(()=>{window.addEventListener("keydown",l)}),Yt(()=>r.show,f=>{o.setDisableGlobalShortcuts(f)}),Bi(()=>{window.removeEventListener("keydown",l),r.show&&o.setDisableGlobalShortcuts(!1)});const u=Object.entries(Cx.dependencies).map(([f,g])=>({name:f,version:g})),c=Cx.version,d=Ose.startCase(Cx.name);return(f,g)=>(Ie(),Ur(Ns,{to:R(a)||"body"},[t.show?(Ie(),Ne("div",{key:0,class:"fixed inset-0 z-[99999] flex items-center justify-center bg-black/50 pointer-events-auto",onClick:Ci(A,["self"])},[F("div",Nse,[F("div",Use,[F("div",Mse,[F("h3",Dse,me(R(i)("help.title")),1)]),F("div",Rse,[F("button",{onClick:g[0]||(g[0]=p=>s.value="shortcuts"),class:St(["w-full text-left px-4 py-3 flex items-center gap-3 transition-colors text-sm",s.value==="shortcuts"?"bg-white text-blue-600 border-l-4 border-blue-600 font-medium":"text-gray-600 hover:bg-gray-100 border-l-4 border-transparent"])},[et(R(Fse),{class:"w-5 h-5"}),zt(" "+me(R(i)("shortcuts.title")),1)],2),F("button",{onClick:g[1]||(g[1]=p=>s.value="about"),class:St(["w-full text-left px-4 py-3 flex items-center gap-3 transition-colors text-sm",s.value==="about"?"bg-white text-blue-600 border-l-4 border-blue-600 font-medium":"text-gray-600 hover:bg-gray-100 border-l-4 border-transparent"])},[et(R(kse),{class:"w-5 h-5"}),zt(" "+me(R(i)("help.about")),1)],2)])]),F("div",Qse,[F("div",Hse,[F("h3",zse,me(s.value==="shortcuts"?R(i)("shortcuts.keyboardShortcuts"):R(i)("help.aboutProject",{name:R(d)})),1),F("button",{onClick:A,class:"p-1 hover:bg-gray-100 rounded-full transition-colors text-gray-500"},[et(R(qc),{class:"w-4 h-4"})])]),F("div",Vse,[s.value==="shortcuts"?(Ie(),Ne("div",jse,[F("div",qse,[F("div",null,[F("h4",Kse,me(R(i)("shortcuts.general")),1),F("ul",Gse,[F("li",Xse,[F("span",null,me(R(i)("common.save")),1),g[2]||(g[2]=zt()),F("kbd",Wse,me(R(_r)(["Ctrl","S"])),1)]),F("li",Yse,[F("span",null,me(R(i)("shortcuts.saveAsTemplate")),1),g[3]||(g[3]=zt()),F("kbd",Zse,me(R(_r)(["Ctrl","Shift","S"])),1)]),F("li",Jse,[F("span",null,me(R(i)("editor.print")),1),g[4]||(g[4]=zt()),F("kbd",_se,me(R(_r)(["Ctrl","P"])),1)]),F("li",$se,[F("span",null,me(R(i)("editor.exportPdf")),1),g[5]||(g[5]=zt()),F("kbd",eAe,me(R(_r)(["Ctrl","Shift","E"])),1)]),F("li",tAe,[F("span",null,me(R(i)("editor.preview")),1),g[6]||(g[6]=zt()),F("kbd",rAe,me(R(_r)(["Ctrl","Shift","P"])),1)]),F("li",nAe,[F("span",null,me(R(i)("editor.viewJson")),1),g[7]||(g[7]=zt()),F("kbd",iAe,me(R(_r)(["Ctrl","Shift","J"])),1)]),F("li",oAe,[F("span",null,me(R(i)("shortcuts.newTemplate")),1),g[8]||(g[8]=zt()),F("kbd",aAe,me(R(_r)(["Ctrl","Alt","N"])),1)]),F("li",sAe,[F("span",null,me(R(i)("shortcuts.openSettings")),1),g[9]||(g[9]=zt()),F("kbd",AAe,me(R(_r)(["Ctrl",","])),1)]),F("li",lAe,[F("span",null,me(R(i)("common.undo")),1),g[10]||(g[10]=zt()),F("kbd",uAe,me(R(_r)(["Ctrl","Z"])),1)]),F("li",cAe,[F("span",null,me(R(i)("common.redo")),1),g[11]||(g[11]=zt()),F("kbd",fAe,me(R(_r)(["Ctrl","Y"])),1)]),F("li",dAe,[F("span",null,me(R(i)("shortcuts.openHelp")),1),g[12]||(g[12]=zt()),F("kbd",hAe,me(R(_r)(["Ctrl","H"])),1)]),F("li",gAe,[F("span",null,me(R(i)("shortcuts.zoom")),1),g[13]||(g[13]=zt()),F("kbd",pAe,me(R(_r)(["Ctrl","Wheel"])),1)]),F("li",vAe,[F("span",null,me(R(i)("shortcuts.closeModal")),1),g[14]||(g[14]=zt()),F("kbd",mAe,me(R(_r)(["Esc"])),1)])])]),F("div",null,[F("h4",yAe,me(R(i)("shortcuts.editing")),1),F("ul",bAe,[F("li",wAe,[F("span",null,me(R(i)("common.copy")),1),g[15]||(g[15]=zt()),F("kbd",xAe,me(R(_r)(["Ctrl","C"])),1)]),F("li",BAe,[F("span",null,me(R(i)("common.cut")),1),g[16]||(g[16]=zt()),F("kbd",EAe,me(R(_r)(["Ctrl","X"])),1)]),F("li",CAe,[F("span",null,me(R(i)("common.paste")),1),g[17]||(g[17]=zt()),F("kbd",SAe,me(R(_r)(["Ctrl","V"])),1)]),F("li",OAe,[F("span",null,me(R(i)("common.delete")),1),g[18]||(g[18]=zt()),F("kbd",TAe,me(R(_r)(["Delete"])),1)]),F("li",IAe,[F("span",null,me(R(i)("shortcuts.selectAll")),1),g[19]||(g[19]=zt()),F("kbd",FAe,me(R(_r)(["Ctrl","A"])),1)]),F("li",PAe,[F("span",null,me(R(i)("shortcuts.multiSelect")),1),g[20]||(g[20]=zt()),F("kbd",LAe,me(R(_r)(["Ctrl","Click"])),1)]),F("li",kAe,[F("span",null,me(R(i)("common.lock"))+"/"+me(R(i)("common.unlock")),1),g[21]||(g[21]=zt()),F("kbd",NAe,me(R(_r)(["Ctrl","L"])),1)]),F("li",UAe,[F("span",null,me(R(i)("shortcuts.customEditSave")),1),g[22]||(g[22]=zt()),F("kbd",MAe,me(R(_r)(["Ctrl","S"])),1)]),F("li",DAe,[F("span",null,me(R(i)("shortcuts.customEditSaveAs")),1),g[23]||(g[23]=zt()),F("kbd",RAe,me(R(_r)(["Ctrl","Shift","S"])),1)]),F("li",QAe,[F("span",null,me(R(i)("shortcuts.customEditExit")),1),g[24]||(g[24]=zt()),F("kbd",HAe,me(R(_r)(["Ctrl","Q"])),1)])])]),F("div",null,[F("h4",zAe,me(R(i)("shortcuts.manipulation")),1),F("ul",VAe,[F("li",jAe,[F("span",null,me(R(i)("shortcuts.move")),1),g[25]||(g[25]=zt()),F("kbd",qAe,me(R(i)("shortcuts.arrow")),1)]),F("li",KAe,[F("span",null,me(R(i)("shortcuts.fastMove")),1),g[26]||(g[26]=zt()),F("kbd",GAe,me(R(_r)(["Shift",R(i)("shortcuts.arrow")])),1)]),F("li",XAe,[F("span",null,me(R(i)("shortcuts.snapRotate")),1),g[27]||(g[27]=zt()),F("kbd",WAe,me(R(_r)(["Shift",R(i)("shortcuts.drag")])),1)]),F("li",YAe,[F("span",null,me(R(i)("shortcuts.resize")),1),g[28]||(g[28]=zt()),F("kbd",ZAe,me(R(_r)(["Shift",R(i)("shortcuts.resize")])),1)])])])])])):mt("",!0),s.value==="about"?(Ie(),Ne("div",JAe,[F("div",_Ae,[g[32]||(g[32]=F("img",{src:pN,alt:"Vue Print Designer",class:"w-12 h-12 mx-auto mb-2"},null,-1)),F("h2",$Ae,me(R(d)),1),F("div",ele,[F("a",tle,[g[29]||(g[29]=F("span",{class:"inline-flex h-5 w-5 items-center justify-center rounded-full bg-white text-gray-700 shadow-sm transition-colors group-hover:text-blue-700"},[F("svg",{viewBox:"0 0 16 16","aria-hidden":"true",class:"w-3.5 h-3.5"},[F("path",{fill:"currentColor",d:"M8 0C3.58 0 0 3.73 0 8.35c0 3.7 2.29 6.83 5.47 7.94.4.08.55-.18.55-.4 0-.2-.01-.86-.01-1.56-2.01.38-2.53-.5-2.69-.96-.09-.24-.48-.96-.82-1.16-.28-.16-.68-.56-.01-.57.63-.01 1.08.6 1.23.85.72 1.25 1.87.9 2.33.69.07-.54.28-.9.51-1.11-1.78-.21-3.64-.92-3.64-4.08 0-.9.31-1.64.82-2.22-.08-.21-.36-1.06.08-2.2 0 0 .67-.22 2.2.85.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.07 2.2-.85 2.2-.85.44 1.14.16 1.99.08 2.2.51.58.82 1.32.82 2.22 0 3.17-1.87 3.87-3.65 4.08.29.26.54.77.54 1.56 0 1.12-.01 2.03-.01 2.32 0 .22.15.48.55.4C13.71 15.18 16 12.04 16 8.35 16 3.73 12.42 0 8 0z"})])],-1)),g[30]||(g[30]=F("span",{class:"text-gray-500 group-hover:text-blue-600"},"0ldFive/Vue-Print-Designer",-1)),g[31]||(g[31]=F("span",{class:"text-gray-400"},"|",-1)),F("span",rle,me(R(i)("help.version"))+" "+me(R(c)),1)])])]),F("div",null,[F("h4",nle,me(R(i)("help.dependencies")),1),F("div",ile,[F("table",ole,[F("thead",ale,[F("tr",null,[F("th",sle,me(R(i)("help.package")),1),F("th",Ale,me(R(i)("help.version")),1)])]),F("tbody",lle,[(Ie(!0),Ne(Rt,null,Zr(R(u),p=>(Ie(),Ne("tr",{key:p.name,class:"hover:bg-gray-50"},[F("td",ule,me(p.name),1),F("td",cle,me(p.version),1)]))),128))])])])])])):mt("",!0)]),F("div",fle,[F("button",{onClick:A,class:"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors text-sm"},me(R(i)("common.close")),1)])])])])):mt("",!0)],8,["to"]))}}),hle={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function gle(t,e){return Ie(),Ne("svg",hle,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"m11.9 22l4.55-12h2.1l4.55 12H21l-1.075-3.05h-4.85L14 22zM4 19l-1.4-1.4l5.05-5.05q-.875-.875-1.588-2T4.75 8h2.1q.5.975 1 1.7t1.2 1.45q.825-.825 1.713-2.313T12.1 6H1V4h7V2h2v2h7v2h-2.9q-.525 1.8-1.575 3.7t-2.075 2.9l2.4 2.45l-.75 2.05l-3.05-3.125zm11.7-1.8h3.6l-1.8-5.1z"},null,-1)])])}const ple=kt({name:"material-symbols-translate",render:gle}),vle={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function mle(t,e){return Ie(),Ne("svg",vle,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M6.5 20q-2.275 0-3.887-1.575T1 14.575q0-1.95 1.175-3.475T5.25 9.15q.625-2.3 2.5-3.725T12 4q2.925 0 4.963 2.038T19 11q1.725.2 2.863 1.488T23 15.5q0 1.875-1.312 3.188T18.5 20z"},null,-1)])])}const yle=kt({name:"material-symbols-cloud",render:mle}),ble={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function wle(t,e){return Ie(),Ne("svg",ble,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M11 17H7q-2.075 0-3.537-1.463T2 12t1.463-3.537T7 7h4v2H7q-1.25 0-2.125.875T4 12t.875 2.125T7 15h4zm-3-4v-2h8v2zm5 4v-2h4q1.25 0 2.125-.875T20 12t-.875-2.125T17 9h-4V7h4q2.075 0 3.538 1.463T22 12t-1.463 3.538T17 17z"},null,-1)])])}const mN=kt({name:"material-symbols-link",render:wle}),xle={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Ble(t,e){return Ie(),Ne("svg",xle,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"m19.25 16.45l-1.5-1.55q1-.275 1.625-1.063T20 12q0-1.25-.875-2.125T17 9h-4V7h4q2.075 0 3.538 1.463T22 12q0 1.425-.737 2.625T19.25 16.45M15.85 13l-2-2H16v2zm3.95 9.6L1.4 4.2l1.4-1.4l18.4 18.4zM11 17H7q-2.075 0-3.537-1.463T2 12q0-1.725 1.05-3.075t2.7-1.775L7.6 9H7q-1.25 0-2.125.875T4 12t.875 2.125T7 15h4zm-3-4v-2h1.625l1.975 2z"},null,-1)])])}const yN=kt({name:"material-symbols-link-off",render:Ble}),Ele={class:"bg-white rounded-lg shadow-xl w-[700px] max-w-full h-[500px] flex overflow-hidden"},Cle={class:"w-48 bg-gray-50 border-r border-gray-200 flex flex-col"},Sle={class:"h-[60px] flex items-center px-4 border-b border-gray-200"},Ole={class:"text-lg font-semibold text-gray-800"},Tle={class:"flex-1 py-2"},Ile={class:"flex-1 flex flex-col min-w-0 relative"},Fle={class:"h-[60px] flex items-center justify-between px-4 border-b border-gray-200"},Ple={class:"text-lg font-semibold text-gray-800"},Lle={class:"flex-1 overflow-y-auto p-6"},kle={key:0,class:"space-y-4 text-sm text-gray-700"},Nle={class:"mb-2 font-medium text-gray-900"},Ule={class:"flex items-center gap-3"},Mle={class:"text-xs text-gray-500 mt-2"},Dle={class:"border-t border-gray-200 pt-4"},Rle={class:"mb-2 font-medium text-gray-900"},Qle={class:"flex flex-wrap gap-2"},Hle=["onClick"],zle={class:"text-xs text-gray-500 mt-2"},Vle={class:"border-t border-gray-200 pt-4"},jle={class:"flex items-center justify-between"},qle={class:"font-medium text-gray-900"},Kle={class:"sr-only"},Gle={class:"text-xs text-gray-500 mt-2"},Xle={class:"border-t border-gray-200 pt-4"},Wle={class:"flex items-center justify-between"},Yle={class:"font-medium text-gray-900"},Zle={class:"sr-only"},Jle={class:"text-xs text-gray-500 mt-2"},_le={class:"border-t border-gray-200 pt-4 space-y-3"},$le={class:"mb-2 font-medium text-gray-900"},eue={class:"flex items-center gap-3"},tue=["disabled"],rue=["disabled"],nue={class:"text-xs text-gray-500 mt-2"},iue={class:"flex items-center justify-between"},oue={class:"font-medium text-gray-900"},aue={class:"sr-only"},sue={class:"text-xs text-gray-500"},Aue={key:1,class:"space-y-4 text-sm text-gray-700"},lue={class:"mb-2 font-medium text-gray-900"},uue={class:"flex items-center gap-3"},cue={class:"text-xs text-gray-500 mt-2"},fue={key:2,class:"space-y-4 text-sm text-gray-700"},due={class:"space-y-2"},hue={class:"font-medium text-gray-900"},gue={class:"text-xs text-gray-500"},pue={class:"grid grid-cols-2 gap-4"},vue={class:"flex flex-col gap-1 col-span-2"},mue={class:"text-xs text-gray-500"},yue=["placeholder"],bue={class:"flex flex-col gap-1 col-span-2"},wue={class:"text-xs text-gray-500"},xue={class:"rounded bg-gray-100 px-3 py-2 text-xs text-gray-600 break-all"},Bue={class:"font-medium text-gray-700"},Eue={class:"w-full pt-2"},Cue=["disabled"],Sue={key:0,class:"mt-2 flex items-center justify-between text-xs text-gray-500"},Oue={key:3,class:"space-y-4 text-sm text-gray-700"},Tue={class:"space-y-2"},Iue={class:"font-medium text-gray-900"},Fue={class:"text-xs text-gray-500"},Pue={class:"grid grid-cols-2 gap-4"},Lue={class:"flex flex-col gap-1 col-span-2"},kue={class:"text-xs text-gray-500"},Nue=["placeholder"],Uue={class:"flex flex-col gap-1"},Mue={class:"text-xs text-gray-500"},Due={class:"flex flex-col gap-1"},Rue={class:"text-xs text-gray-500"},Que={class:"space-y-2 pt-2 border-t border-gray-200"},Hue={class:"font-medium text-gray-900"},zue={class:"text-xs text-gray-500"},Vue={class:"grid grid-cols-2 gap-4"},jue={class:"flex flex-col gap-1 col-span-2"},que={class:"text-xs text-gray-500"},Kue=["placeholder"],Gue={class:"flex flex-col gap-1 col-span-2"},Xue={class:"text-xs text-gray-500"},Wue=["disabled"],Yue={value:""},Zue=["value","disabled"],Jue={class:"rounded bg-gray-100 px-3 py-2 text-xs text-gray-600 break-all"},_ue={class:"font-medium text-gray-700"},$ue={class:"text-xs text-gray-500"},ece={class:"w-full pt-2"},tce=["disabled"],rce={key:0,class:"mt-2 flex items-center justify-between text-xs text-gray-500"},nce={class:"p-4 border-t border-gray-200 bg-gray-50 flex justify-end rounded-br-lg"},ice=Tr({__name:"SettingsModal",props:{show:{type:Boolean}},emits:["update:show"],setup(t,{emit:e}){const r=t,n=e,{t:i,locale:o}=zn(),{theme:a,setTheme:s}=du(),{autoSave:A}=oP(),l=fn(),u=li("modal-container",We(null)),{printMode:c,silentPrint:d,exportImageMerged:f,localSettings:g,remoteSettings:p,localStatus:b,remoteStatus:m,localRetryCount:w,remoteRetryCount:S,remoteClients:E,remoteSelectedClientId:Q,localWsUrl:j,remoteWsUrl:T,cancelLocalRetry:N,cancelRemoteRetry:D,connectLocal:K,disconnectLocal:L,connectRemote:O,disconnectRemote:P,fetchRemoteClients:x}=Sg(),q=We("basic"),$=We(o.value),Z=We(localStorage.getItem("print-designer-brand-key")||"default"),oe=We(localStorage.getItem("print-designer-brand-custom-hex")||"#3b82f6"),ae=it(()=>b.value||"disconnected"),re=it(()=>m.value||"disconnected"),te=it(()=>w.value||0),k=it(()=>S.value||0),W=it(()=>E.value||[]),ne=it(()=>ae.value==="connected"),Y=it(()=>re.value==="connected"),de=it(()=>ae.value==="connecting"),Be=it(()=>re.value==="connecting"),ke=it(()=>!!g.wsAddress),Se=it(()=>!!(p.apiBaseUrl&&p.username&&p.password)),qe=it(()=>ne.value?i("settings.status.connected"):i("settings.status.disconnected")),Oe=it(()=>Y.value?i("settings.status.connected"):i("settings.status.disconnected")),Ue=Pe=>Pe==="connected"?"bg-blue-600 hover:bg-blue-700 text-white border border-blue-600":"bg-transparent text-blue-600 border border-blue-600 hover:bg-blue-50",ie=(Pe,pe=0,ye=255)=>Math.min(Math.max(Pe,pe),ye),I=(Pe,pe,ye)=>{const Fe=Re=>ie(Math.round(Re)).toString(16).padStart(2,"0");return`#${Fe(Pe)}${Fe(pe)}${Fe(ye)}`},_=(Pe,pe,ye)=>({r:Pe.r+(pe.r-Pe.r)*ye,g:Pe.g+(pe.g-Pe.g)*ye,b:Pe.b+(pe.b-Pe.b)*ye}),z=Pe=>{const pe=vg(Pe);if(!pe)return null;const ye=pg(pe.h,pe.s,pe.v),Fe={r:255,g:255,b:255},Re={r:0,g:0,b:0},dt=_(ye,Fe,.92),ot=_(ye,Fe,.84),Ut=_(ye,Fe,.68),Mt=_(ye,Fe,.5),wt=_(ye,Fe,.32),Vt=_(ye,Fe,.16),jt=_(ye,Re,.12),wr=_(ye,Re,.24),or=_(ye,Re,.36),Lr=_(ye,Re,.5);return{"--brand-50":I(dt.r,dt.g,dt.b),"--brand-100":I(ot.r,ot.g,ot.b),"--brand-200":I(Ut.r,Ut.g,Ut.b),"--brand-300":I(Mt.r,Mt.g,Mt.b),"--brand-400":I(wt.r,wt.g,wt.b),"--brand-500":I(Vt.r,Vt.g,Vt.b),"--brand-600":I(ye.r,ye.g,ye.b),"--brand-700":I(jt.r,jt.g,jt.b),"--brand-800":I(wr.r,wr.g,wr.b),"--brand-900":I(or.r,or.g,or.b),"--brand-950":I(Lr.r,Lr.g,Lr.b)}},G=it(()=>z(oe.value)||{}),M=it(()=>[{key:"default",labelKey:"settings.themePresetDefault",colors:{"--brand-50":"#eff6ff","--brand-100":"#dbeafe","--brand-200":"#bfdbfe","--brand-300":"#93c5fd","--brand-400":"#60a5fa","--brand-500":"#3b82f6","--brand-600":"#2563eb","--brand-700":"#1d4ed8","--brand-800":"#1e40af","--brand-900":"#1e3a8a","--brand-950":"#172554"}},{key:"emerald",labelKey:"settings.themePresetEmerald",colors:{"--brand-50":"#ecfdf5","--brand-100":"#d1fae5","--brand-200":"#a7f3d0","--brand-300":"#6ee7b7","--brand-400":"#34d399","--brand-500":"#10b981","--brand-600":"#059669","--brand-700":"#047857","--brand-800":"#065f46","--brand-900":"#064e3b","--brand-950":"#022c22"}},{key:"amber",labelKey:"settings.themePresetAmber",colors:{"--brand-50":"#fffbeb","--brand-100":"#fef3c7","--brand-200":"#fde68a","--brand-300":"#fcd34d","--brand-400":"#fbbf24","--brand-500":"#f59e0b","--brand-600":"#d97706","--brand-700":"#b45309","--brand-800":"#92400e","--brand-900":"#78350f","--brand-950":"#451a03"}},{key:"rose",labelKey:"settings.themePresetRose",colors:{"--brand-50":"#fff1f2","--brand-100":"#ffe4e6","--brand-200":"#fecdd3","--brand-300":"#fda4af","--brand-400":"#fb7185","--brand-500":"#f43f5e","--brand-600":"#e11d48","--brand-700":"#be123c","--brand-800":"#9f1239","--brand-900":"#881337","--brand-950":"#4c0519"}},{key:"custom",labelKey:"settings.themePresetCustom",colors:G.value}]),V=Pe=>{const pe=document.documentElement;Object.entries(Pe).forEach(([ye,Fe])=>{pe.style.setProperty(ye,Fe)}),window.dispatchEvent(new CustomEvent("brand-theme-updated"))},ee=Pe=>{localStorage.setItem("print-designer-brand-vars",JSON.stringify(Pe))},se=Pe=>{const pe=M.value.find(ye=>ye.key===Pe)||M.value[0];pe.colors&&(V(pe.colors),ee(pe.colors),localStorage.setItem("print-designer-brand-key",pe.key))};(()=>{const Pe=localStorage.getItem("print-designer-brand-vars");if(Pe)try{const pe=JSON.parse(Pe);pe&&typeof pe=="object"&&V(pe)}catch{}})();const be=async()=>{try{if(de.value)return;if(ne.value){L();return}await K()}catch(Pe){console.error("Local connection error:",Pe)}},ge=async()=>{try{if(Be.value)return;if(Y.value){P();return}await O()}catch(Pe){console.error("Remote connection error:",Pe)}};Yt($,Pe=>{o.value=Pe,localStorage.setItem("print-designer-language",Pe)}),Yt(o,Pe=>{$.value!==Pe&&($.value=Pe)}),Yt(a,Pe=>{s(Pe)}),Yt(()=>r.show,Pe=>{l.setDisableGlobalShortcuts(Pe)}),Yt(oe,Pe=>{Pe&&(localStorage.setItem("print-designer-brand-custom-hex",Pe),Z.value==="custom"&&se("custom"))}),Yt(Z,Pe=>{se(Pe)},{immediate:!0}),Yt([q,m],([Pe,pe])=>{Pe!=="remote"||pe!=="connected"||x()});const le=()=>{try{n("update:show",!1)}catch(Pe){console.error("Error closing modal:",Pe)}},Ee=Pe=>{try{if(!r.show)return;Pe.key==="Escape"&&(Pe.preventDefault(),le())}catch(pe){console.error("Error in keydown handler:",pe)}};return xi(()=>{window.addEventListener("keydown",Ee)}),Bi(()=>{window.removeEventListener("keydown",Ee),r.show&&l.setDisableGlobalShortcuts(!1)}),(Pe,pe)=>(Ie(),Ur(Ns,{to:R(u)||"body"},[t.show?(Ie(),Ne("div",{key:0,class:"fixed inset-0 z-[99999] flex items-center justify-center bg-black/50 pointer-events-auto",onClick:Ci(le,["self"])},[F("div",Ele,[F("div",Cle,[F("div",Sle,[F("h3",Ole,me(R(i)("settings.title")),1)]),F("div",Tle,[F("button",{onClick:pe[0]||(pe[0]=ye=>q.value="basic"),class:St(["w-full text-left px-4 py-3 flex items-center gap-3 transition-colors text-sm",q.value==="basic"?"bg-white text-blue-600 border-l-4 border-blue-600 font-medium":"text-gray-600 hover:bg-gray-100 border-l-4 border-transparent"])},[et(R(_0),{class:"w-5 h-5"}),zt(" "+me(R(i)("settings.basic")),1)],2),F("button",{onClick:pe[1]||(pe[1]=ye=>q.value="language"),class:St(["w-full text-left px-4 py-3 flex items-center gap-3 transition-colors text-sm",q.value==="language"?"bg-white text-blue-600 border-l-4 border-blue-600 font-medium":"text-gray-600 hover:bg-gray-100 border-l-4 border-transparent"])},[et(R(ple),{class:"w-5 h-5"}),zt(" "+me(R(i)("settings.language")),1)],2),F("button",{onClick:pe[2]||(pe[2]=ye=>q.value="local"),class:St(["w-full text-left px-4 py-3 flex items-center gap-3 transition-colors text-sm",q.value==="local"?"bg-white text-blue-600 border-l-4 border-blue-600 font-medium":"text-gray-600 hover:bg-gray-100 border-l-4 border-transparent"])},[et(R(s5),{class:"w-5 h-5"}),zt(" "+me(R(i)("settings.localConnection")),1)],2),F("button",{onClick:pe[3]||(pe[3]=ye=>q.value="remote"),class:St(["w-full text-left px-4 py-3 flex items-center gap-3 transition-colors text-sm",q.value==="remote"?"bg-white text-blue-600 border-l-4 border-blue-600 font-medium":"text-gray-600 hover:bg-gray-100 border-l-4 border-transparent"])},[et(R(yle),{class:"w-5 h-5"}),zt(" "+me(R(i)("settings.remoteConnection")),1)],2)])]),F("div",Ile,[F("div",Fle,[F("h3",Ple,me(q.value==="basic"?R(i)("settings.basic"):q.value==="language"?R(i)("settings.language"):q.value==="local"?R(i)("settings.localConnection"):R(i)("settings.remoteConnection")),1),F("button",{onClick:le,class:"p-1 hover:bg-gray-100 rounded-full transition-colors text-gray-500"},[et(R(qc),{class:"w-4 h-4"})])]),F("div",Lle,[q.value==="basic"?(Ie(),Ne("div",kle,[F("div",null,[F("div",Nle,me(R(i)("settings.theme")),1),F("div",Ule,[F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",R(a)==="system"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"system","onUpdate:modelValue":pe[4]||(pe[4]=ye=>Nr(a)?a.value=ye:null)},null,512),[[su,R(a)]]),F("span",null,me(R(i)("settings.themeSystem")),1)],2),F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",R(a)==="light"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"light","onUpdate:modelValue":pe[5]||(pe[5]=ye=>Nr(a)?a.value=ye:null)},null,512),[[su,R(a)]]),F("span",null,me(R(i)("settings.themeLight")),1)],2),F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",R(a)==="dark"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"dark","onUpdate:modelValue":pe[6]||(pe[6]=ye=>Nr(a)?a.value=ye:null)},null,512),[[su,R(a)]]),F("span",null,me(R(i)("settings.themeDark")),1)],2)]),F("p",Mle,me(R(i)("settings.themeDesc")),1)]),F("div",Dle,[F("div",Rle,me(R(i)("settings.themeColor")),1),F("div",Qle,[(Ie(!0),Ne(Rt,null,Zr(M.value.filter(ye=>ye.key!=="custom"),ye=>(Ie(),Ne("button",{key:ye.key,type:"button",class:St(["flex items-center gap-2 px-3 py-2 border rounded text-xs transition-colors",Z.value===ye.key?"border-blue-600 text-blue-700":"border-gray-300 text-gray-700 hover:bg-gray-50"]),onClick:Fe=>Z.value=ye.key},[F("span",{class:"inline-block w-3.5 h-3.5 rounded-full",style:Bt({backgroundColor:ye.colors["--brand-600"]})},null,4),F("span",null,me(R(i)(ye.labelKey)),1)],10,Hle))),128)),et(Ld,{"model-value":oe.value,"onUpdate:modelValue":pe[8]||(pe[8]=ye=>{ye&&(oe.value=ye,Z.value="custom")}),"default-color":oe.value,"teleport-to-body":!0},{trigger:Al(({color:ye,open:Fe})=>[F("button",{type:"button",class:St(["flex items-center gap-2 px-3 py-2 border rounded text-xs transition-colors",Z.value==="custom"?"border-blue-600 text-blue-700":"border-gray-300 text-gray-700 hover:bg-gray-50"]),onClick:pe[7]||(pe[7]=Re=>Z.value="custom")},[F("span",{class:St(["inline-block w-3.5 h-3.5 rounded-full border border-gray-200",{"ring-2 ring-blue-500 ring-offset-1":Fe}]),style:Bt({backgroundColor:ye||oe.value})},null,6),F("span",null,me(R(i)("settings.themePresetCustom")),1)],2)]),_:1},8,["model-value","default-color"])]),F("p",zle,me(R(i)("settings.themeColorDesc")),1)]),F("div",Vle,[F("div",jle,[F("div",qle,me(R(i)("settings.autoSave")),1),F("button",{onClick:pe[9]||(pe[9]=ye=>A.value=!R(A)),class:St(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-blue-600 focus:ring-offset-2",R(A)?"bg-blue-600":"bg-gray-200"])},[F("span",Kle,me(R(i)("settings.autoSave")),1),F("span",{"aria-hidden":"true",class:St(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",R(A)?"translate-x-5":"translate-x-0"])},null,2)],2)]),F("p",Gle,me(R(i)("settings.autoSaveDesc")),1)]),F("div",Xle,[F("div",Wle,[F("div",Yle,me(R(i)("settings.exportImageMerged")),1),F("button",{onClick:pe[10]||(pe[10]=ye=>f.value=!R(f)),class:St(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-blue-600 focus:ring-offset-2",R(f)?"bg-blue-600":"bg-gray-200"])},[F("span",Zle,me(R(i)("settings.exportImageMerged")),1),F("span",{"aria-hidden":"true",class:St(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",R(f)?"translate-x-5":"translate-x-0"])},null,2)],2)]),F("p",Jle,me(R(i)("settings.exportImageMergedDesc")),1)]),F("div",_le,[F("div",null,[F("div",$le,me(R(i)("settings.printMode")),1),F("div",eue,[F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",R(c)==="browser"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"browser","onUpdate:modelValue":pe[11]||(pe[11]=ye=>Nr(c)?c.value=ye:null)},null,512),[[su,R(c)]]),F("span",null,me(R(i)("settings.printModeBrowser")),1)],2),F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",R(c)==="local"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"local","onUpdate:modelValue":pe[12]||(pe[12]=ye=>Nr(c)?c.value=ye:null),disabled:!ne.value},null,8,tue),[[su,R(c)]]),F("span",null,me(R(i)("settings.printModeLocal")),1)],2),F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",R(c)==="remote"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"remote","onUpdate:modelValue":pe[13]||(pe[13]=ye=>Nr(c)?c.value=ye:null),disabled:!Y.value},null,8,rue),[[su,R(c)]]),F("span",null,me(R(i)("settings.printModeRemote")),1)],2)]),F("p",nue,me(R(i)("settings.printModeDesc")),1)]),F("div",iue,[F("div",oue,me(R(i)("settings.silentPrint")),1),F("button",{onClick:pe[14]||(pe[14]=ye=>d.value=!R(d)),class:St(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-blue-600 focus:ring-offset-2",R(d)?"bg-blue-600":"bg-gray-200"])},[F("span",aue,me(R(i)("settings.silentPrint")),1),F("span",{"aria-hidden":"true",class:St(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",R(d)?"translate-x-5":"translate-x-0"])},null,2)],2)]),F("p",sue,me(R(i)("settings.silentPrintDesc")),1)])])):mt("",!0),q.value==="language"?(Ie(),Ne("div",Aue,[F("div",lue,me(R(i)("settings.selectLanguage")),1),F("div",uue,[F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",$.value==="zh"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"zh","onUpdate:modelValue":pe[15]||(pe[15]=ye=>$.value=ye)},null,512),[[su,$.value]]),F("span",null,me(R(i)("settings.zhLabel")),1)],2),F("label",{class:St(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",$.value==="en"?"border-blue-600 text-blue-700":"border-gray-300"])},[fr(F("input",{type:"radio",value:"en","onUpdate:modelValue":pe[16]||(pe[16]=ye=>$.value=ye)},null,512),[[su,$.value]]),F("span",null,me(R(i)("settings.enLabel")),1)],2)]),F("p",cue,me(R(i)("settings.languageDesc")),1)])):mt("",!0),q.value==="local"?(Ie(),Ne("div",fue,[F("div",due,[F("div",hue,me(R(i)("settings.localClientTitle")),1),F("p",gue,me(R(i)("settings.localClientDesc")),1)]),F("div",pue,[F("label",vue,[F("span",mue,me(R(i)("settings.wsAddress")),1),fr(F("input",{"onUpdate:modelValue":pe[17]||(pe[17]=ye=>R(g).wsAddress=ye),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600",placeholder:R(i)("settings.localWsAddressPlaceholder")},null,8,yue),[[wn,R(g).wsAddress]])]),F("label",bue,[F("span",wue,me(R(i)("settings.secretKey")),1),fr(F("input",{"onUpdate:modelValue":pe[18]||(pe[18]=ye=>R(g).secretKey=ye),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600"},null,512),[[wn,R(g).secretKey]])])]),F("div",xue,[F("span",Bue,me(R(i)("settings.connectionUrl"))+": ",1),F("span",null,me(R(j)),1)]),F("div",Eue,[F("button",{onClick:be,disabled:de.value||te.value>0||!ne.value&&!ke.value,class:St(["w-full inline-flex items-center justify-center gap-2 px-3 h-9 rounded transition-colors text-sm shadow-sm disabled:opacity-50 disabled:pointer-events-none disabled:cursor-not-allowed",Ue(ae.value)])},[ne.value?(Ie(),Ur(R(mN),{key:0,class:"w-4 h-4"})):(Ie(),Ur(R(yN),{key:1,class:"w-4 h-4"})),F("span",null,me(qe.value),1)],10,Cue),te.value>0&&!ne.value?(Ie(),Ne("div",Sue,[F("span",null,me(R(i)("settings.retrying",{count:te.value,max:10})),1),F("button",{onClick:pe[19]||(pe[19]=(...ye)=>R(N)&&R(N)(...ye)),class:"text-blue-600 hover:text-blue-700"},me(R(i)("settings.cancelRetry")),1)])):mt("",!0)])])):mt("",!0),q.value==="remote"?(Ie(),Ne("div",Oue,[F("div",Tue,[F("div",Iue,me(R(i)("settings.remoteLoginTitle")),1),F("p",Fue,me(R(i)("settings.remoteLoginDesc")),1)]),F("div",Pue,[F("label",Lue,[F("span",kue,me(R(i)("settings.apiBaseUrl")),1),fr(F("input",{"onUpdate:modelValue":pe[20]||(pe[20]=ye=>R(p).apiBaseUrl=ye),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600",placeholder:R(i)("settings.apiBasePlaceholder")},null,8,Nue),[[wn,R(p).apiBaseUrl]])]),F("label",Uue,[F("span",Mue,me(R(i)("settings.username")),1),fr(F("input",{"onUpdate:modelValue":pe[21]||(pe[21]=ye=>R(p).username=ye),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600"},null,512),[[wn,R(p).username]])]),F("label",Due,[F("span",Rue,me(R(i)("settings.password")),1),fr(F("input",{"onUpdate:modelValue":pe[22]||(pe[22]=ye=>R(p).password=ye),type:"password",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600"},null,512),[[wn,R(p).password]])])]),F("div",Que,[F("div",Hue,me(R(i)("settings.remoteWsTitle")),1),F("p",zue,me(R(i)("settings.remoteWsDesc")),1)]),F("div",Vue,[F("label",jue,[F("span",que,me(R(i)("settings.wsAddress")),1),fr(F("input",{"onUpdate:modelValue":pe[23]||(pe[23]=ye=>R(p).wsAddress=ye),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600",placeholder:R(i)("settings.wsAddressPlaceholder")},null,8,Kue),[[wn,R(p).wsAddress]])]),F("label",Gue,[F("span",Xue,me(R(i)("settings.remoteClient")),1),fr(F("select",{"onUpdate:modelValue":pe[24]||(pe[24]=ye=>Nr(Q)?Q.value=ye:null),class:"w-full px-3 py-2 border rounded bg-white focus:ring-2 focus:ring-blue-600 focus:border-blue-600",disabled:re.value!=="connected"||W.value.length===0},[F("option",Yue,me(R(i)("settings.remoteClientPlaceholder")),1),(Ie(!0),Ne(Rt,null,Zr(W.value,ye=>(Ie(),Ne("option",{key:ye.client_id,value:ye.client_id,disabled:ye.online===!1},me(ye.client_name||ye.client_id)+me(ye.online===!1?" (offline)":""),9,Zue))),128))],8,Wue),[[Ms,R(Q)]])])]),F("div",Jue,[F("span",_ue,me(R(i)("settings.connectionUrl"))+": ",1),F("span",null,me(R(T)),1)]),F("p",$ue,me(R(i)("settings.remoteAuthHint")),1),F("div",ece,[F("button",{onClick:ge,disabled:Be.value||k.value>0||!Y.value&&!Se.value,class:St(["w-full inline-flex items-center justify-center gap-2 px-3 h-9 rounded transition-colors text-sm shadow-sm disabled:opacity-50 disabled:pointer-events-none disabled:cursor-not-allowed",Ue(re.value)])},[Y.value?(Ie(),Ur(R(mN),{key:0,class:"w-4 h-4"})):(Ie(),Ur(R(yN),{key:1,class:"w-4 h-4"})),F("span",null,me(Oe.value),1)],10,tce),k.value>0&&!Y.value?(Ie(),Ne("div",rce,[F("span",null,me(R(i)("settings.retrying",{count:k.value,max:10})),1),F("button",{onClick:pe[25]||(pe[25]=(...ye)=>R(D)&&R(D)(...ye)),class:"text-blue-600 hover:text-blue-700"},me(R(i)("settings.cancelRetry")),1)])):mt("",!0)])])):mt("",!0)]),F("div",nce,[F("button",{onClick:le,class:"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors text-sm"},me(R(i)("common.close")),1)])])])])):mt("",!0)],8,["to"]))}}),oce={class:"h-14 bg-white border-b border-gray-200 flex items-center justify-between px-4 z-[2000] relative shadow-sm"},ace={class:"flex items-center gap-2"},sce=["src"],Ace={key:1,class:"font-semibold text-gray-700"},lce=Tr({__name:"Header",setup(t){const{t:e}=zn(),r=fn(),n=it(()=>{var s;return((s=r.branding)==null?void 0:s.showLogo)!==!1}),i=it(()=>{var s;return((s=r.branding)==null?void 0:s.showTitle)!==!1}),o=it(()=>{var s;return((s=r.branding)==null?void 0:s.logoUrl)||pN}),a=it(()=>{var s;return((s=r.branding)==null?void 0:s.title)||e("common.appTitle")});return(s,A)=>(Ie(),Ne("header",oce,[F("div",ace,[n.value?(Ie(),Ne("img",{key:0,src:o.value,alt:"Logo",class:"w-8 h-8 object-contain"},null,8,sce)):mt("",!0),i.value?(Ie(),Ne("h1",Ace,me(a.value),1)):mt("",!0)]),et(Ese,{onToggleHelp:A[0]||(A[0]=l=>R(r).setShowHelp(!0)),onToggleSettings:A[1]||(A[1]=l=>R(r).setShowSettings(!0))}),et(dle,{show:R(r).showHelp,"onUpdate:show":A[2]||(A[2]=l=>R(r).setShowHelp(l))},null,8,["show"]),et(ice,{show:R(r).showSettings,"onUpdate:show":A[3]||(A[3]=l=>R(r).setShowSettings(l))},null,8,["show"])]))}}),uce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function cce(t,e){return Ie(),Ne("svg",uce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M7 20V7H2V4h13v3h-5v13zm9 0v-8h-3V9h9v3h-3v8z"},null,-1)])])}const bN=kt({name:"material-symbols-text-fields",render:cce}),fce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function dce(t,e){return Ie(),Ne("svg",fce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"m6 20l1-4H3l.5-2h4l1-4h-4L5 8h4l1-4h2l-1 4h4l1-4h2l-1 4h4l-.5 2h-4l-1 4h4l-.5 2h-4l-1 4h-2l1-4H9l-1 4zm3.5-6h4l1-4h-4z"},null,-1)])])}const wN=kt({name:"material-symbols-numbers",render:dce}),hce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function gce(t,e){return Ie(),Ne("svg",hce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M3 8V5q0-.825.588-1.412T5 3h14q.825 0 1.413.588T21 5v3zm2 13q-.825 0-1.412-.587T3 19v-9h4.5v11zm11.5 0V10H21v9q0 .825-.587 1.413T19 21zm-7 0V10h5v11z"},null,-1)])])}const xN=kt({name:"material-symbols-table-chart",render:gce}),pce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function vce(t,e){return Ie(),Ne("svg",pce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M1 19V5h2v14zm3 0V5h2v14zm3 0V5h1v14zm3 0V5h2v14zm3 0V5h3v14zm4 0V5h1v14zm3 0V5h3v14z"},null,-1)])])}const BN=kt({name:"material-symbols-barcode",render:vce}),mce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function yce(t,e){return Ie(),Ne("svg",mce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M3 11V3h8v8zm2-2h4V5H5zM3 21v-8h8v8zm2-2h4v-4H5zm8-8V3h8v8zm2-2h4V5h-4zm4 12v-2h2v2zm-6-6v-2h2v2zm2 2v-2h2v2zm-2 2v-2h2v2zm2 2v-2h2v2zm2-2v-2h2v2zm0-4v-2h2v2zm2 2v-2h2v2z"},null,-1)])])}const EN=kt({name:"material-symbols-qr-code",render:yce}),bce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function wce(t,e){return Ie(),Ne("svg",bce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M4 13v-2h16v2z"},null,-1)])])}const CN=kt({name:"material-symbols-horizontal-rule",render:wce}),xce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Bce(t,e){return Ie(),Ne("svg",xce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M5 21q-.825 0-1.412-.587T3 19V5q0-.825.588-1.412T5 3h14q.825 0 1.413.588T21 5v14q0 .825-.587 1.413T19 21zm0-2h14V5H5z"},null,-1)])])}const SN=kt({name:"material-symbols-check-box-outline-blank",render:Bce}),Ece={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Cce(t,e){return Ie(),Ne("svg",Ece,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M12 22q-2.075 0-3.9-.788t-3.175-2.137T2.788 15.9T2 12t.788-3.9t2.137-3.175T8.1 2.788T12 2t3.9.788t3.175 2.137T21.213 8.1T22 12t-.788 3.9t-2.137 3.175t-3.175 2.138T12 22m0-2q3.35 0 5.675-2.325T20 12t-2.325-5.675T12 4T6.325 6.325T4 12t2.325 5.675T12 20"},null,-1)])])}const ON=kt({name:"material-symbols-radio-button-unchecked",render:Cce}),Sce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Oce(t,e){return Ie(),Ne("svg",Sce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"m5.825 21l1.625-7.025L2 9.25l7.2-.625L12 2l2.8 6.625l7.2.625l-5.45 4.725L18.175 21L12 17.275z"},null,-1)])])}const Tce=kt({name:"material-symbols-star",render:Oce}),Ice={class:"w-64 bg-white dark:bg-gray-900 border-r border-gray-200 dark:border-gray-700 flex flex-col h-full z-40"},Fce={class:"p-4 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-800"},Pce={class:"font-semibold text-gray-700 dark:text-gray-200"},Lce={class:"text-xs text-gray-500 dark:text-gray-400 mt-1"},kce={class:"flex border-b border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900"},Nce={key:0,class:"absolute bottom-0 left-0 w-full h-0.5 bg-blue-600 dark:bg-blue-400"},Uce={key:0,class:"absolute bottom-0 left-0 w-full h-0.5 bg-blue-600 dark:bg-blue-400"},Mce={class:"flex-1 overflow-y-auto"},Dce={class:"text-xs font-semibold text-gray-500 dark:text-gray-400 uppercase tracking-wider mb-3 px-1"},Rce={class:"grid grid-cols-2 gap-3"},Qce=["onDragstart"],Hce={class:"text-sm font-medium text-gray-700 dark:text-gray-200"},zce={key:0,class:"p-6 text-center"},Vce={class:"text-sm text-gray-500 dark:text-gray-400"},jce={key:1,class:"p-4 grid grid-cols-2 gap-3"},qce=["onDragstart"],Kce=["title"],Gce=["onClick","title"],Xce=["onClick"],Wce=["onClick"],Yce=["onClick"],Zce=["onClick"],Jce=["onClick"],_ce=Tr({__name:"Sidebar",setup(t){const{t:e}=zn(),r=fn(),n=li("modal-container",We(null)),i=We("standard"),o=it(()=>r.customElements),a=We(null),s=We({}),A=We(!1),l=We(null),u=We(""),c=We(!1),d=We(""),f=We(null),g=We([]),p=[{title:"sidebar.general",items:[{type:ct.TEXT,label:"sidebar.text",icon:bN},{type:ct.IMAGE,label:"sidebar.image",icon:yP},{type:ct.PAGE_NUMBER,label:"sidebar.pagination",icon:wN}]},{title:"sidebar.dataCodes",items:[{type:ct.TABLE,label:"sidebar.table",icon:xN},{type:ct.BARCODE,label:"sidebar.barcode",icon:BN},{type:ct.QRCODE,label:"sidebar.qrcode",icon:EN}]},{title:"sidebar.shapes",items:[{type:ct.LINE,label:"sidebar.line",icon:CN},{type:ct.RECT,label:"sidebar.rect",icon:SN},{type:ct.CIRCLE,label:"sidebar.circle",icon:ON}]}],b=(P,x)=>{P.dataTransfer&&(P.dataTransfer.setData("application/json",JSON.stringify({type:x})),P.dataTransfer.effectAllowed="copy")},m=(P,x)=>{P.dataTransfer&&(P.dataTransfer.setData("application/json",JSON.stringify({type:x.element.type,payload:x.element})),P.dataTransfer.effectAllowed="copy")},w=P=>{switch(P){case ct.TEXT:return bN;case ct.IMAGE:return yP;case ct.TABLE:return xN;case ct.PAGE_NUMBER:return wN;case ct.BARCODE:return BN;case ct.QRCODE:return EN;case ct.LINE:return CN;case ct.RECT:return SN;case ct.CIRCLE:return ON;default:return Tce}},S=(P,x)=>{if(P.stopPropagation(),a.value===x)a.value=null;else{const $=P.currentTarget.getBoundingClientRect();let Z=$.right-128;Z<5&&(Z=$.left),window.innerHeight-$.bottom<210?s.value={bottom:`${window.innerHeight-$.top+5}px`,left:`${Z}px`}:s.value={top:`${$.bottom+5}px`,left:`${Z}px`},a.value=x}},E=P=>{if(!a.value)return;P.composedPath().some($=>$ instanceof Element?$.classList.contains("sidebar-context-menu"):!1)||(a.value=null)},Q=P=>{a.value=null,l.value=P.id,u.value=P.name,A.value=!0},j=P=>{l.value&&P&&r.renameCustomElement(l.value,P)},T=P=>{a.value=null,r.addCustomElement(`${P.name} Copy`,P.element)},N=P=>{a.value=null,confirm(e("sidebar.confirmDelete",{name:P.name}))&&r.removeCustomElement(P.id)},D=P=>{if(a.value=null,r.editingCustomElementId!==P.id){if(r.editingCustomElementId&&r.editingCustomElementId!==P.id){const x=r.customElements.find($=>$.id===r.editingCustomElementId),q=x?x.name:"";if(!confirm(e("sidebar.confirmSwitchEdit",{name:q})))return;r.cancelCustomElementEdit()}r.startCustomElementEdit(P.id)}},K=P=>ok(P.element),L=P=>{a.value=null,f.value=P;const x=P.testData||{},q=K5(P.element,x);g.value=Object.keys(q),d.value=JSON.stringify(q,null,2),c.value=!0},O=()=>{var oe;const P=f.value,x=new Set(g.value||[]);if(f.value=null,g.value=[],!P)return;let q=null;try{const ae=((oe=d.value)==null?void 0:oe.trim())||"{}",re=JSON.parse(ae);re&&typeof re=="object"&&!Array.isArray(re)&&(q=re)}catch{q=null}if(!q){alert(e("common.invalidJson"));return}if(x.size>0){const ae=Object.keys(q);if(ae.length!==x.size||ae.some(te=>!x.has(te))){alert(e("common.testDataKeyChanged"));return}}const $=K5(P.element,P.testData||{}),Z={};Object.keys($).forEach(ae=>{(x.size===0||x.has(ae))&&(Z[ae]=Object.prototype.hasOwnProperty.call(q,ae)?q[ae]:$[ae])}),P.testData=Z,r.saveCustomElements()};return xi(()=>{window.addEventListener("mousedown",E)}),Bi(()=>{window.removeEventListener("mousedown",E)}),(P,x)=>(Ie(),Ne("aside",Ice,[F("div",Fce,[F("h2",Pce,me(R(e)("sidebar.elements")),1),F("p",Lce,me(R(e)("sidebar.dragToCanvas")),1)]),F("div",kce,[F("button",{onClick:x[0]||(x[0]=q=>i.value="standard"),class:St(["flex-1 py-3 text-sm font-medium transition-colors relative",i.value==="standard"?"text-blue-600 dark:text-blue-400":"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-800"])},[zt(me(R(e)("sidebar.standard"))+" ",1),i.value==="standard"?(Ie(),Ne("div",Nce)):mt("",!0)],2),F("button",{onClick:x[1]||(x[1]=q=>i.value="custom"),class:St(["flex-1 py-3 text-sm font-medium transition-colors relative",i.value==="custom"?"text-blue-600 dark:text-blue-400":"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-800"])},[zt(me(R(e)("sidebar.custom"))+" ",1),i.value==="custom"?(Ie(),Ne("div",Uce)):mt("",!0)],2)]),F("div",Mce,[i.value==="standard"?(Ie(),Ne(Rt,{key:0},Zr(p,q=>F("div",{key:q.title,class:"p-4 border-b border-gray-100 dark:border-gray-800 last:border-0"},[F("h3",Dce,me(R(e)(q.title)),1),F("div",Rce,[(Ie(!0),Ne(Rt,null,Zr(q.items,$=>(Ie(),Ne("div",{key:$.type,class:"flex flex-col items-center justify-center p-4 border border-gray-200 dark:border-gray-700 rounded-lg theme-hover-border theme-hover-bg cursor-move transition-all dark:bg-gray-800 dark:hover:bg-gray-700",draggable:"true",onDragstart:Z=>b(Z,$.type)},[(Ie(),Ur(qh($.icon),{class:"w-8 h-8 text-gray-600 dark:text-gray-300 mb-2"})),F("span",Hce,me(R(e)($.label)),1)],40,Qce))),128))])])),64)):mt("",!0),i.value==="custom"?(Ie(),Ne(Rt,{key:1},[o.value.length===0?(Ie(),Ne("div",zce,[F("p",Vce,me(R(e)("sidebar.noCustomElements")),1)])):(Ie(),Ne("div",jce,[(Ie(!0),Ne(Rt,null,Zr(o.value,q=>(Ie(),Ne("div",{key:q.id,class:"group relative flex flex-col items-center justify-center p-4 border border-gray-200 dark:border-gray-700 rounded-lg theme-hover-border theme-hover-bg cursor-move transition-all dark:bg-gray-800 dark:hover:bg-gray-700",draggable:"true",onDragstart:$=>m($,q)},[(Ie(),Ur(qh(w(q.element.type)),{class:"w-8 h-8 text-gray-600 dark:text-gray-300 mb-2"})),F("span",{class:"text-sm font-medium text-gray-700 dark:text-gray-200 truncate w-full text-center",title:q.name},me(q.name),9,Kce),F("button",{onClick:$=>S($,q.id),class:St(["absolute top-1 right-1 p-1 text-gray-400 dark:text-gray-500 hover:text-gray-600 dark:hover:text-gray-300 rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 opacity-0 group-hover:opacity-100 transition-opacity",{"opacity-100 bg-gray-100 dark:bg-gray-700 text-gray-600 dark:text-gray-300":a.value===q.id}]),title:R(e)("sidebar.moreOptions")},[et(R(gN),{class:"w-4 h-4"})],10,Gce)],40,qce))),128))]))],64)):mt("",!0)]),(Ie(),Ur(Ns,{to:R(n)||"body"},[a.value?(Ie(),Ne("div",{key:0,class:"fixed inset-0 z-[2000] pointer-events-auto",onClick:x[3]||(x[3]=q=>a.value=null)},[F("div",{class:"sidebar-context-menu absolute w-32 bg-white dark:bg-gray-800 rounded shadow-lg border border-gray-100 dark:border-gray-700 z-[2001] py-1 pointer-events-auto",style:Bt(s.value),onClick:x[2]||(x[2]=Ci(()=>{},["stop"]))},[(Ie(!0),Ne(Rt,null,Zr(o.value,q=>(Ie(),Ne(Rt,{key:q.id},[q.id===a.value?(Ie(),Ne(Rt,{key:0},[F("button",{onClick:$=>D(q),class:"w-full text-left px-3 py-1.5 text-xs text-gray-700 dark:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-700 flex items-center gap-2"},[et(R(Ex),{class:"w-3.5 h-3.5"}),zt(" "+me(R(e)("sidebar.editElement")),1)],8,Xce),K(q)?(Ie(),Ne("button",{key:0,onClick:$=>L(q),class:"w-full text-left px-3 py-1.5 text-xs text-gray-700 dark:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-700 flex items-center gap-2"},[et(R(wu),{class:"w-3.5 h-3.5"}),zt(" "+me(R(e)("common.testData")),1)],8,Wce)):mt("",!0),F("button",{onClick:$=>Q(q),class:"w-full text-left px-3 py-1.5 text-xs text-gray-700 dark:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-700 flex items-center gap-2"},[et(R(Ex),{class:"w-3.5 h-3.5"}),zt(" "+me(R(e)("sidebar.rename")),1)],8,Yce),F("button",{onClick:$=>T(q),class:"w-full text-left px-3 py-1.5 text-xs text-gray-700 dark:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-700 flex items-center gap-2"},[et(R(dd),{class:"w-3.5 h-3.5"}),zt(" "+me(R(e)("sidebar.copy")),1)],8,Zce),F("button",{onClick:$=>N(q),class:"w-full text-left px-3 py-1.5 text-xs text-red-600 dark:text-red-400 hover:bg-red-50 dark:hover:bg-red-900/30 flex items-center gap-2"},[et(R(fd),{class:"w-3.5 h-3.5"}),zt(" "+me(R(e)("sidebar.delete")),1)],8,Jce)],64)):mt("",!0)],64))),128))],4)])):mt("",!0)],8,["to"])),et(jg,{show:A.value,"initial-value":u.value,title:R(e)("sidebar.renameModalTitle"),placeholder:R(e)("sidebar.enterNamePlaceholder"),onClose:x[4]||(x[4]=q=>A.value=!1),onSave:j},null,8,["show","initial-value","title","placeholder"]),et(Vg,{visible:c.value,"onUpdate:visible":x[5]||(x[5]=q=>c.value=q),title:R(e)("common.testData"),value:d.value,language:"json","onUpdate:value":x[6]||(x[6]=q=>d.value=q),onClose:O},null,8,["visible","title","value"])]))}}),$ce={key:0,class:"flex items-center justify-between"},efe={class:"text-sm text-gray-700 dark:text-gray-200 font-medium"},tfe=["disabled"],rfe={class:"sr-only"},nfe={key:1},ife={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1"},ofe=["value","disabled","placeholder"],afe=["type","value","disabled","placeholder","min","max","step"],Nd=Tr({__name:"PropertyInput",props:{label:{},value:{type:[String,Number,Boolean]},type:{},placeholder:{},min:{},max:{},step:{},disabled:{type:Boolean}},emits:["update:value"],setup(t,{emit:e}){const r=e,n=i=>{const o=i.target;r("update:value",o.value)};return(i,o)=>t.type==="switch"?(Ie(),Ne("div",$ce,[F("label",efe,me(t.label),1),F("button",{type:"button",disabled:t.disabled,onClick:o[0]||(o[0]=a=>i.$emit("update:value",!t.value)),class:St(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-blue-600 focus:ring-offset-2 disabled:opacity-50 disabled:cursor-not-allowed",t.value?"bg-blue-600 dark:bg-blue-500":"bg-gray-200 dark:bg-gray-700"])},[F("span",rfe,"Toggle "+me(t.label),1),F("span",{"aria-hidden":"true",class:St(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white dark:bg-gray-100 shadow ring-0 transition duration-200 ease-in-out",t.value?"translate-x-5":"translate-x-0"])},null,2)],10,tfe)])):(Ie(),Ne("div",nfe,[F("label",ife,me(t.label),1),t.type==="textarea"?(Ie(),Ne("textarea",{key:0,value:t.value===void 0||t.value===null?"":String(t.value),disabled:t.disabled,placeholder:t.placeholder,onInput:n,class:"w-full px-2 py-1 text-sm border border-gray-300 dark:border-gray-700 rounded focus:border-blue-500 dark:focus:border-blue-400 outline-none h-24 resize-y disabled:bg-gray-100 dark:disabled:bg-gray-800 disabled:text-gray-500 dark:disabled:text-gray-400 bg-white dark:bg-gray-800 text-gray-700 dark:text-gray-200"},null,40,ofe)):(Ie(),Ne("input",{key:1,type:t.type||"text",value:t.value===void 0||t.value===null?"":String(t.value),disabled:t.disabled,placeholder:t.placeholder,min:t.min,max:t.max,step:t.step,onChange:n,class:"w-full px-2 py-1 text-sm border border-gray-300 dark:border-gray-700 rounded focus:border-blue-500 dark:focus:border-blue-400 outline-none disabled:bg-gray-100 dark:disabled:bg-gray-800 disabled:text-gray-500 dark:disabled:text-gray-400 bg-white dark:bg-gray-800 text-gray-700 dark:text-gray-200"},null,40,afe))]))}}),sfe={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1"},Afe=["value","disabled"],lfe=["value"],ufe=Tr({__name:"PropertySelect",props:{label:{},value:{type:[String,Number,Boolean]},options:{},disabled:{type:Boolean}},emits:["update:value"],setup(t,{emit:e}){const r=t,n=e,i=o=>{const s=o.target.value,A=r.options.find(l=>String(l.value)===s);n("update:value",A?A.value:s)};return(o,a)=>(Ie(),Ne("div",null,[F("label",sfe,me(t.label),1),F("select",{value:t.value,disabled:t.disabled,onChange:i,class:"w-full px-2 py-1 text-sm border border-gray-300 dark:border-gray-700 rounded focus:border-blue-500 dark:focus:border-blue-400 outline-none disabled:bg-gray-100 dark:disabled:bg-gray-800 disabled:text-gray-500 dark:disabled:text-gray-400 bg-white dark:bg-gray-800 text-gray-700 dark:text-gray-200"},[(Ie(!0),Ne(Rt,null,Zr(t.options,s=>(Ie(),Ne("option",{key:String(s.value),value:s.value,class:"dark:bg-gray-800 dark:text-gray-200"},me(s.label),9,lfe))),128))],40,Afe)]))}}),cfe={class:"flex items-center justify-between"},ffe={class:"text-xs text-gray-500 dark:text-gray-400"},dfe={class:"flex items-center gap-2"},hfe={key:0,class:"absolute inset-0 flex items-center justify-center"},TN=Tr({__name:"PropertyColor",props:{label:{},value:{},disabled:{type:Boolean}},emits:["update:value"],setup(t,{emit:e}){const r=e;return(n,i)=>(Ie(),Ne("div",cfe,[F("label",ffe,me(t.label),1),F("div",dfe,[et(Ld,{"model-value":t.value,"onUpdate:modelValue":i[0]||(i[0]=o=>r("update:value",o)),disabled:t.disabled,"allow-transparent":!0},{trigger:Al(({color:o,open:a})=>[F("div",{class:St(["w-8 h-6 rounded border border-gray-300 dark:border-gray-600 cursor-pointer relative overflow-hidden hover:border-blue-500 dark:hover:border-blue-400 transition-colors",{"ring-2 ring-blue-500 dark:ring-blue-400 ring-offset-1 dark:ring-offset-gray-900":a,"opacity-50 cursor-not-allowed":t.disabled}])},[i[2]||(i[2]=F("div",{class:"absolute inset-0 bg-[url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwZ+5wNisxL//8n04mEeRAAAhNwX869V4DYAAAAASUVORK5CYII=')] opacity-50"},null,-1)),F("div",{class:"absolute inset-0",style:Bt({backgroundColor:o==="transparent"?"transparent":o})},null,4),o==="transparent"?(Ie(),Ne("div",hfe,[...i[1]||(i[1]=[F("div",{class:"w-full h-[1px] bg-red-500 rotate-45"},null,-1)])])):mt("",!0)],2)]),_:1},8,["model-value","disabled"])])]))}}),gfe={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function pfe(t,e){return Ie(),Ne("svg",gfe,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M3 21v-8h2v4.6L17.6 5H13V3h8v8h-2V6.4L6.4 19H11v2z"},null,-1)])])}const vfe=kt({name:"material-symbols-open-in-full",render:pfe}),mfe={class:"flex flex-col gap-1"},yfe={class:"flex justify-between items-center"},bfe={class:"text-xs text-gray-500 font-medium"},wfe={class:"flex items-center gap-2"},xfe={class:"text-[10px] text-gray-400 uppercase"},Bfe=Pd(Tr({__name:"PropertyCode",props:{label:{},value:{},language:{},disabled:{type:Boolean},height:{}},emits:["update:value"],setup(t,{emit:e}){const r=e;fn();const{isDark:n}=du(),i=We(!1),o=it(()=>({minimap:{enabled:!1},lineNumbers:"on",glyphMargin:!1,folding:!0,wordWrap:"on",automaticLayout:!0,scrollBeyondLastLine:!1,theme:n.value?"vs-dark":"vs",fontSize:12,fontFamily:'Consolas, "Courier New", monospace',renderLineHighlight:"none",overviewRulerLanes:0,hideCursorInOverviewRuler:!0,contextmenu:!1})),a=u=>{r("update:value",u||"")},s=()=>{i.value=!i.value},A=()=>{i.value=!1},l=u=>{r("update:value",u)};return(u,c)=>(Ie(),Ne("div",mfe,[F("div",yfe,[F("label",bfe,me(t.label),1),F("div",wfe,[F("span",xfe,me(t.language),1),F("button",{onClick:s,class:"text-gray-400 hover:text-blue-600 transition-colors p-0.5 rounded hover:bg-gray-100",title:"Expand Editor"},[et(R(vfe),{class:"w-3.5 h-3.5"})])])]),F("div",{class:"border border-gray-300 rounded overflow-hidden focus-within:border-blue-500 focus-within:ring-1 focus-within:ring-blue-500 resize-y relative group",style:Bt({height:`${t.height||200}px`,minHeight:"100px",maxHeight:"600px"})},[et(R(hN),{value:t.value,language:t.language,options:{...o.value,readOnly:t.disabled},"onUpdate:value":a,class:"w-full h-full"},null,8,["value","language","options"]),c[1]||(c[1]=F("div",{class:"absolute bottom-0 right-0 w-3 h-3 cursor-ns-resize pointer-events-none bg-gradient-to-tl from-gray-300 to-transparent opacity-50 group-hover:opacity-100"},null,-1))],4),et(Vg,{visible:i.value,"onUpdate:visible":c[0]||(c[0]=d=>i.value=d),title:t.label,value:t.value,language:t.language,"read-only":t.disabled,"onUpdate:value":l,onClose:A},null,8,["visible","title","value","language","read-only"])]))}}),[["__scopeId","data-v-44208768"]]),Efe={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1"},Cfe={class:"space-y-2"},Sfe=["value","disabled","placeholder"],Ofe={class:"flex flex-col gap-1"},Tfe=["disabled"],Ife={class:"text-[10px] text-gray-400 dark:text-gray-500 text-center"},Ffe={key:0,class:"text-xs text-red-500 mt-1"},Pfe=Tr({__name:"PropertyImage",props:{label:{},value:{},disabled:{type:Boolean},placeholder:{}},emits:["update:value"],setup(t,{emit:e}){const r=t,n=e,{t:i}=zn(),o=We(null),a=We(""),s=()=>{var u;r.disabled||(u=o.value)==null||u.click()},A=u=>{var g;const c=u.target,d=(g=c.files)==null?void 0:g[0];if(!d)return;if(a.value="",d.size>2*1024*1024){a.value=i("properties.image.sizeError"),c.value="";return}const f=new FileReader;f.onload=p=>{var m;const b=(m=p.target)==null?void 0:m.result;n("update:value",b)},f.onerror=()=>{a.value=i("properties.image.readError")},f.readAsDataURL(d),c.value=""},l=u=>{const c=u.target;n("update:value",c.value)};return(u,c)=>(Ie(),Ne("div",null,[F("label",Efe,me(t.label),1),F("div",Cfe,[F("input",{type:"text",value:t.value||"",disabled:t.disabled,placeholder:t.placeholder||R(i)("properties.image.urlPlaceholder"),onInput:l,class:"w-full px-2 py-1 text-sm border border-gray-300 dark:border-gray-700 rounded focus:border-blue-500 dark:focus:border-blue-400 outline-none disabled:bg-gray-100 dark:disabled:bg-gray-800 disabled:text-gray-500 dark:disabled:text-gray-400 bg-white dark:bg-gray-800 text-gray-700 dark:text-gray-200"},null,40,Sfe),F("div",Ofe,[F("button",{type:"button",onClick:s,disabled:t.disabled,class:"w-full py-1.5 px-3 bg-white dark:bg-gray-800 text-gray-700 dark:text-gray-200 border border-gray-300 dark:border-gray-700 rounded hover:bg-gray-50 dark:hover:bg-gray-700 focus:outline-none focus:ring-2 focus:ring-blue-500 disabled:opacity-50 disabled:cursor-not-allowed flex items-center justify-center gap-2 transition-colors"},[c[0]||(c[0]=F("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[F("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-8l-4-4m0 0L8 8m4-4v12"})],-1)),zt(" "+me(R(i)("properties.image.uploadBtn")),1)],8,Tfe),F("span",Ife,me(R(i)("properties.image.uploadTip")),1)]),a.value?(Ie(),Ne("p",Ffe,me(a.value),1)):mt("",!0),F("input",{ref_key:"fileInput",ref:o,type:"file",accept:"image/*",class:"hidden",onChange:A},null,544)])]))}}),Lfe={class:"p-4 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-800 flex items-center justify-between"},kfe={class:"font-semibold text-gray-700 dark:text-gray-200"},Nfe={class:"text-xs text-gray-500 dark:text-gray-400 mt-1"},Ufe={key:0,class:"flex items-center text-red-500 dark:text-red-400 gap-1 text-xs font-medium bg-red-50 dark:bg-red-900/30 px-2 py-1 rounded border border-red-100 dark:border-red-800"},Mfe={key:0,class:"p-6 text-center"},Dfe={class:"mb-4"},Rfe={class:"text-lg font-semibold text-gray-900 dark:text-gray-100"},Qfe={class:"text-sm text-gray-500 dark:text-gray-400 mt-2"},Hfe={class:"font-medium text-gray-700 dark:text-gray-200"},zfe={key:1,class:"flex flex-col h-full overflow-hidden"},Vfe={class:"flex border-b border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900"},jfe=["onClick"],qfe={key:0,class:"absolute bottom-0 left-0 w-full h-0.5 bg-blue-600 dark:bg-blue-400"},Kfe={class:"p-4 space-y-6 overflow-y-auto flex-1 custom-scrollbar dark:bg-gray-900"},Gfe={key:0,class:"space-y-3"},Xfe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},Wfe={class:"grid grid-cols-2 gap-3"},Yfe={key:1,class:"space-y-3 pt-2 border-t border-gray-100 dark:border-gray-800"},Zfe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},Jfe={key:2,class:"space-y-3 pt-2 border-t border-gray-100 dark:border-gray-800"},_fe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},$fe={class:"grid grid-cols-2 gap-3"},ede=["disabled"],tde=["disabled"],rde={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},nde={class:"space-y-3"},ide={key:0},ode=["onClick","disabled"],ade={key:6},sde={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1 font-medium"},Ade=["placeholder","disabled","value","onChange"],lde={key:3,class:"space-y-3 pt-2 border-t border-gray-100 dark:border-gray-800"},ude={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},cde={key:4,class:"space-y-4"},fde={class:"p-4 bg-gray-50 dark:bg-gray-800 rounded border border-gray-200 dark:border-gray-700"},dde={class:"text-sm font-medium text-gray-700 dark:text-gray-200 mb-3"},hde={class:"space-y-3"},gde={class:"text-xs text-gray-500 dark:text-gray-400 mb-1.5 font-medium"},pde={class:"flex items-center gap-2 bg-white dark:bg-gray-900 border border-gray-200 dark:border-gray-700 rounded px-2 py-1.5 hover:border-blue-400 dark:hover:border-blue-500 transition-colors"},vde=["title"],mde=["title"],yde={class:"text-xs text-gray-500 flex items-center justify-between border-t border-gray-100 pt-2"},bde={class:"font-medium"},wde={class:"px-2 py-0.5 bg-gray-100 rounded text-gray-600"},xde=["disabled"],Bde={key:2,class:"p-6 text-center"},Ede={class:"mb-4"},Cde={class:"text-lg font-semibold text-gray-900"},Sde={class:"text-sm text-gray-500 mt-2"},Ode=Pd(Tr({__name:"PropertiesPanel",setup(t){const{t:e}=zn(),r=fn(),n=it(()=>r.selectedElement),i=it(()=>r.selectedElementIds.length>1),o=it(()=>{var Y;return((Y=n.value)==null?void 0:Y.locked)||!1}),a=We(!1),s=We(""),A=it(()=>n.value?[ct.LINE,ct.RECT,ct.CIRCLE].includes(n.value.type):!1),l=it(()=>n.value?n.value.type!==ct.TABLE:!1),u=it(()=>r.tableSelection?r.tableSelection.cells.length>1:!1),c=it(()=>{if(!r.tableSelection||r.tableSelection.cells.length!==1)return!1;const Y=r.tableSelection.cells[0],de=r.selectedElement;if(!de||de.type!==ct.TABLE)return!1;const ke=(Y.section||"body")==="footer"?de.footerData:de.data;if(!ke)return!1;const Se=ke[Y.rowIndex];if(!Se)return!1;const qe=Se[Y.colField];return qe&&typeof qe=="object"?(qe.rowSpan||1)>1||(qe.colSpan||1)>1:!1}),d=We("properties"),f=We(!1),g=it(()=>r.unit||"mm"),p=it(()=>r.unit||"mm"),b=new Set(["fontSize","borderWidth","barcodeWidth","barcodeHeight","margin","borderRadius","headerHeight","rowHeight","footerHeight","labelFontSize","labelBorderWidth"]),m=Y=>Y.type!=="number"||!Y.key?!1:b.has(Y.key),w=Y=>{const de=e(Y.label);return m(Y)?`${de} (${p.value})`:de},S=Y=>{const de=ae(Y);return m(Y)&&typeof de=="number"?LA(de,g.value):de},E=(Y,de)=>m(Y)?ka(Number(de),g.value):de,Q=Y=>{if(!(Y.min===void 0||Y.min===null))return m(Y)?LA(Y.min,g.value):Y.min},j=Y=>{if(!(Y.max===void 0||Y.max===null))return m(Y)?LA(Y.max,g.value):Y.max},T=Y=>{if(!(Y.step===void 0||Y.step===null))return m(Y)?LA(Y.step,g.value):Y.step},N=()=>{n.value&&(navigator.clipboard.writeText(n.value.id),f.value=!0,setTimeout(()=>{f.value=!1},2e3))},D=()=>{n.value&&(s.value=n.value.type,a.value=!0)},K=Y=>{n.value&&Y&&r.addCustomElement(Y,n.value)},L=(Y,de)=>{n.value&&r.updateElement(n.value.id,{[Y]:de})},O=(Y,de)=>{n.value&&r.updateElement(n.value.id,{style:{...n.value.style,[Y]:de}})},P=(Y,de)=>{try{const Be=de.target.value;L(Y,JSON.parse(Be))}catch{window.alert("Invalid JSON")}},x=Y=>{const de=ae(Y);return Y.language==="json"&&typeof de=="object"?JSON.stringify(de,null,2):de||""},q=(Y,de)=>{if(Y.language==="json")try{const Be=JSON.parse(de);L(Y.key,Be)}catch{}else L(Y.key,de)},$=Y=>{switch(Y){case ct.TEXT:return A$;case ct.IMAGE:return f$;case ct.TABLE:return R$;case ct.PAGE_NUMBER:return z$;case ct.BARCODE:return Iee;case ct.QRCODE:return tte;case ct.LINE:return ite;case ct.RECT:return ate;case ct.CIRCLE:return Ate;default:return null}},Z=it(()=>n.value?$(n.value.type):null),oe=it(()=>Z.value?Z.value.sections.filter(Y=>(Y.tab||"properties")===d.value):[]),ae=Y=>n.value?(Y.target==="style"?n.value.style:n.value)[Y.key]??Y.defaultValue:Y.defaultValue,re=(Y,de)=>{n.value&&(Y.target==="style"&&Y.key?O(Y.key,de):Y.target==="element"&&Y.key&&L(Y.key,de))},te=Y=>{!n.value||!Y.actionName||(Y.actionName==="paginateTable"?r.paginateTable(n.value.id):Y.actionName==="removeBorder"&&r.updateElement(n.value.id,{style:{...n.value.style,borderStyle:void 0,borderWidth:void 0,borderColor:void 0,border:"none"}}))},k=()=>{i.value?r.removeSelectedElements():n.value&&r.removeElement(n.value.id)},W=Y=>{Y.relatedTarget&&Y.currentTarget.contains(Y.relatedTarget)||r.setDisableGlobalShortcuts(!0)},ne=Y=>{Y.relatedTarget&&Y.currentTarget.contains(Y.relatedTarget)||r.setDisableGlobalShortcuts(!1)};return(Y,de)=>(Ie(),Ne(Rt,null,[F("aside",{class:"w-[380px] bg-white dark:bg-gray-900 border-l border-gray-200 dark:border-gray-700 flex flex-col h-full z-40 overflow-hidden",onFocusin:W,onFocusout:ne},[F("div",Lfe,[F("div",null,[F("h2",kfe,me(R(e)("properties.title")),1),F("p",Nfe,me(R(e)("properties.subtitle")),1)]),o.value?(Ie(),Ne("div",Ufe,[et(R($0),{class:"w-3 h-3"}),F("span",null,me(R(e)("properties.locked")),1)])):mt("",!0)]),i.value?(Ie(),Ne("div",Mfe,[F("div",Dfe,[F("h3",Rfe,me(R(e)("properties.multiSelectMode")),1),F("p",Qfe,[F("span",Hfe,me(R(r).selectedElementIds.length),1),zt(" "+me(R(e)("properties.selectedElements",{n:""}).replace("{n}","")),1)])]),F("button",{onClick:k,class:"w-full py-2 bg-red-50 dark:bg-red-900/30 text-red-600 dark:text-red-400 rounded border border-red-200 dark:border-red-800 hover:bg-red-100 dark:hover:bg-red-900/50 transition-colors text-sm font-medium"},me(R(e)("properties.deleteSelected")),1)])):n.value?(Ie(),Ne("div",zfe,[F("div",Vfe,[(Ie(),Ne(Rt,null,Zr(["properties","style","advanced"],Be=>F("button",{key:Be,onClick:ke=>d.value=Be,class:St(["flex-1 py-3 text-sm font-medium transition-colors relative",d.value===Be?"text-blue-600 dark:text-blue-400":"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 hover:bg-gray-50 dark:hover:bg-gray-800"])},[zt(me(R(e)(`properties.tab.${Be}`))+" ",1),d.value===Be?(Ie(),Ne("div",qfe)):mt("",!0)],10,jfe)),64))]),F("div",Kfe,[d.value==="properties"?(Ie(),Ne("div",Gfe,[F("h3",Xfe,me(R(e)("properties.section.positionSize")),1),F("div",Wfe,[et(Nd,{label:`${R(e)("properties.label.x")} (${p.value})`,type:"number",disabled:o.value,value:R(LA)(n.value.x,g.value),"onUpdate:value":de[0]||(de[0]=Be=>L("x",R(ka)(Number(Be),g.value)))},null,8,["label","disabled","value"]),et(Nd,{label:`${R(e)("properties.label.y")} (${p.value})`,type:"number",disabled:o.value,value:R(LA)(n.value.y,g.value),"onUpdate:value":de[1]||(de[1]=Be=>L("y",R(ka)(Number(Be),g.value)))},null,8,["label","disabled","value"]),et(Nd,{label:`${R(e)("properties.label.width")} (${p.value})`,type:"number",disabled:o.value,value:R(LA)(n.value.width,g.value),"onUpdate:value":de[2]||(de[2]=Be=>L("width",R(ka)(Number(Be),g.value)))},null,8,["label","disabled","value"]),et(Nd,{label:`${R(e)("properties.label.height")} (${p.value})`,type:"number",disabled:o.value,value:R(LA)(n.value.height,g.value),"onUpdate:value":de[3]||(de[3]=Be=>L("height",R(ka)(Number(Be),g.value)))},null,8,["label","disabled","value"])])])):mt("",!0),d.value==="properties"&&l.value?(Ie(),Ne("div",Yfe,[F("h3",Zfe,me(R(e)("properties.section.dataBehavior")),1),et(Nd,{label:R(e)("properties.label.repeatPerPage"),type:"switch",disabled:o.value,value:n.value.repeatPerPage||!1,"onUpdate:value":de[4]||(de[4]=Be=>L("repeatPerPage",!!Be))},null,8,["label","disabled","value"])])):mt("",!0),d.value==="properties"&&n.value.type==="table"&&R(r).tableSelection?(Ie(),Ne("div",Jfe,[F("h3",_fe,me(R(e)("properties.section.cellOperations")),1),F("div",$fe,[F("button",{onClick:de[5]||(de[5]=Be=>R(r).mergeSelectedCells()),disabled:!u.value||o.value,class:"w-full py-2 bg-blue-50 dark:bg-blue-900/30 text-blue-600 dark:text-blue-400 rounded border border-blue-200 dark:border-blue-800 hover:bg-blue-100 dark:hover:bg-blue-900/50 transition-colors text-xs font-medium disabled:opacity-50 disabled:cursor-not-allowed disabled:bg-gray-50 dark:disabled:bg-gray-800 disabled:text-gray-400 dark:disabled:text-gray-600 disabled:border-gray-200 dark:disabled:border-gray-700"},me(R(e)("properties.action.mergeCells")),9,ede),F("button",{onClick:de[6]||(de[6]=Be=>R(r).splitSelectedCells()),disabled:!c.value||o.value,class:"w-full py-2 bg-white dark:bg-gray-800 text-gray-600 dark:text-gray-300 rounded border border-gray-200 dark:border-gray-700 hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors text-xs font-medium disabled:opacity-50 disabled:cursor-not-allowed"},me(R(e)("properties.action.splitCells")),9,tde)])])):mt("",!0),(Ie(!0),Ne(Rt,null,Zr(oe.value,(Be,ke)=>(Ie(),Ne("div",{key:ke,class:"space-y-3 pt-2 first:pt-0 border-t first:border-0 border-gray-100 dark:border-gray-800"},[F("h3",rde,me(R(e)(Be.title)),1),F("div",nde,[(Ie(!0),Ne(Rt,null,Zr(Be.fields,(Se,qe)=>(Ie(),Ne(Rt,{key:qe},[Se.type==="action"?(Ie(),Ne("div",ide,[F("button",{onClick:Oe=>te(Se),disabled:o.value,class:"w-full py-2 bg-blue-600 dark:bg-blue-500 text-white rounded hover:bg-blue-700 dark:hover:bg-blue-600 transition-colors text-sm font-medium shadow-sm disabled:opacity-50 disabled:cursor-not-allowed disabled:bg-gray-400 dark:disabled:bg-gray-700"},me(R(e)(Se.label)),9,ode)])):Se.type==="text"||Se.type==="number"||Se.type==="switch"?(Ie(),Ur(Nd,{key:1,label:w(Se),type:Se.type,min:Q(Se),max:j(Se),step:T(Se),disabled:o.value,placeholder:Se.placeholder?Se.placeholder.startsWith("properties.")?R(e)(Se.placeholder):Se.placeholder:"",value:S(Se),"onUpdate:value":Oe=>re(Se,E(Se,Oe))},null,8,["label","type","min","max","step","disabled","placeholder","value","onUpdate:value"])):Se.type==="select"?(Ie(),Ur(ufe,{key:2,label:R(e)(Se.label),options:(Se.options||[]).map(Oe=>({...Oe,label:R(e)(Oe.label)})),disabled:o.value,value:ae(Se),"onUpdate:value":Oe=>re(Se,Oe)},null,8,["label","options","disabled","value","onUpdate:value"])):Se.type==="color"?(Ie(),Ur(TN,{key:3,label:R(e)(Se.label),disabled:o.value,value:ae(Se),"onUpdate:value":Oe=>re(Se,Oe)},null,8,["label","disabled","value","onUpdate:value"])):Se.type==="image"?(Ie(),Ur(Pfe,{key:4,label:R(e)(Se.label),disabled:o.value,placeholder:Se.placeholder?Se.placeholder.startsWith("properties.")?R(e)(Se.placeholder):Se.placeholder:void 0,value:ae(Se),"onUpdate:value":Oe=>re(Se,Oe)},null,8,["label","disabled","placeholder","value","onUpdate:value"])):Se.type==="code"?(Ie(),Ur(Bfe,{key:5,label:R(e)(Se.label),language:Se.language||"javascript",disabled:o.value,value:x(Se),"onUpdate:value":Oe=>q(Se,Oe)},null,8,["label","language","disabled","value","onUpdate:value"])):Se.type==="textarea"?(Ie(),Ne("div",ade,[F("label",sde,me(R(e)(Se.label)),1),F("textarea",{placeholder:Se.placeholder?Se.placeholder.startsWith("properties.")?R(e)(Se.placeholder):Se.placeholder:"",disabled:o.value,value:["data","columns","footerData"].includes(Se.key)?JSON.stringify(n.value[Se.key],null,2):ae(Se),onChange:Oe=>["data","columns","footerData"].includes(Se.key)?P(Se.key,Oe):re(Se,Oe.target.value),class:"w-full px-3 py-2 text-sm border border-gray-300 dark:border-gray-600 rounded focus:border-blue-500 outline-none h-24 resize-y font-mono disabled:bg-gray-100 dark:disabled:bg-gray-800 disabled:text-gray-500 dark:disabled:text-gray-400 bg-white dark:bg-gray-800 text-gray-700 dark:text-gray-200"},null,40,Ade)])):mt("",!0)],64))),128))])]))),128)),d.value==="style"&&!A.value?(Ie(),Ne("div",lde,[F("h3",ude,me(R(e)("properties.section.appearance")),1),et(TN,{label:R(e)("properties.label.backgroundColor"),disabled:o.value,value:n.value.style.backgroundColor||"#ffffff","onUpdate:value":de[7]||(de[7]=Be=>O("backgroundColor",Be))},null,8,["label","disabled","value"])])):mt("",!0),d.value==="advanced"?(Ie(),Ne("div",cde,[F("div",fde,[F("h4",dde,me(R(e)("properties.section.elementInfo")),1),F("div",hde,[F("div",null,[F("p",gde,me(R(e)("properties.label.id")),1),F("div",pde,[F("span",{class:"font-mono text-xs text-gray-600 dark:text-gray-400 flex-1 truncate select-all",title:n.value.id},me(n.value.id),9,vde),F("button",{onClick:N,class:"text-gray-400 dark:text-gray-500 hover:text-blue-600 dark:hover:text-blue-400 transition-colors p-1 rounded hover:bg-gray-100 dark:hover:bg-gray-800 flex-shrink-0",title:f.value?R(e)("properties.action.copied"):R(e)("properties.action.copyId")},[f.value?(Ie(),Ur(R(ene),{key:0,class:"w-3.5 h-3.5 text-green-500 dark:text-green-400"})):(Ie(),Ur(R(dd),{key:1,class:"w-3.5 h-3.5"}))],8,mde)])]),F("div",yde,[F("span",bde,me(R(e)("properties.label.type")),1),F("span",wde,me(R(e)("elements."+n.value.type)),1)])])]),F("button",{onClick:D,class:"w-full py-2 bg-white text-blue-600 rounded border border-blue-200 hover:bg-blue-50 transition-colors text-sm font-medium flex items-center justify-center gap-2 mb-2 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-white"},[et(R(A5),{class:"w-4 h-4"}),zt(" "+me(R(e)("properties.action.saveCustom")),1)]),F("button",{onClick:k,disabled:o.value,class:"w-full py-2 bg-white text-red-600 rounded border border-red-200 hover:bg-red-50 transition-colors text-sm font-medium flex items-center justify-center gap-2 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-white"},[et(R(fd),{class:"w-4 h-4"}),zt(" "+me(R(e)("properties.action.deleteElement")),1)],8,xde)])):mt("",!0)])])):(Ie(),Ne("div",Bde,[F("div",Ede,[F("h3",Cde,me(R(e)("properties.empty.noSelection")),1),F("p",Sde,me(R(e)("properties.empty.selectInstruction")),1)])]))],32),et(jg,{show:a.value,"initial-value":s.value,title:R(e)("properties.action.saveCustomModal"),placeholder:R(e)("sidebar.enterNamePlaceholder"),onClose:de[8]||(de[8]=Be=>a.value=!1),onSave:K},null,8,["show","initial-value","title","placeholder"])],64))}}),[["__scopeId","data-v-d835e7a6"]]),IN=Tr({__name:"Ruler",props:{type:{},zoom:{},scroll:{},offset:{},thick:{},indicators:{},unit:{}},emits:["guide-drag-start"],setup(t,{emit:e}){const r=t,{isDark:n}=du(),i=We(null),o=r.thick||20,a=()=>{const u=i.value;if(!u)return;const c=u.getContext("2d");if(!c)return;const d=u.width,f=u.height,{zoom:g,scroll:p,offset:b,type:m,indicators:w}=r,S=n.value;if(c.clearRect(0,0,d,f),c.fillStyle=S?"#1f2937":"#F9FAFB",c.fillRect(0,0,d,f),w&&w.length>0)for(const x of w){const q=b+x.position*g-p;c.fillStyle=x.color,m==="horizontal"?c.fillRect(q-2,0,4,o):c.fillRect(0,q-2,o,4)}c.strokeStyle=S?"#6b7280":"#9CA3AF",c.fillStyle=S?"#9ca3af":"#6B7280",c.lineWidth=1,c.font="10px sans-serif",c.beginPath();const E=r.unit==="mm"?dP:r.unit==="pt"?hP:r.unit==="in"?gP:r.unit==="cm"?pP:1,T=50/(E*g),N=[.1,.2,.5,1,2,5,10,20,50,100,200,500,1e3];let D=N[N.length-1];for(const x of N)if(x>=T-.001){D=x;break}const K=m==="horizontal"?d:f,L=(-b+p)/(g*E),O=(K-b+p)/(g*E),P=Math.floor(L/D)*D;for(let x=P;x<=O;x+=D){const q=b+x*E*g-p,$=Number(x.toFixed(1)).toString();m==="horizontal"?(c.moveTo(q,0),c.lineTo(q,o),c.fillText($,q+2,10)):(c.moveTo(0,q),c.lineTo(o,q),c.save(),c.translate(10,q+2),c.rotate(-Math.PI/2),c.fillText($,4,0),c.restore());const Z=D/5;for(let oe=1;oe<5;oe++){const ae=x+Z*oe,re=b+ae*E*g-p;m==="horizontal"?(c.moveTo(re,o-5),c.lineTo(re,o)):(c.moveTo(o-5,re),c.lineTo(o,re))}}c.stroke()},s=new ResizeObserver(u=>{for(const c of u){const d=i.value;if(d){const{width:f,height:g}=c.contentRect;d.width=f,d.height=g,a()}}});xi(()=>{i.value&&(s.observe(i.value.parentElement),a())}),Bi(()=>{s.disconnect()}),Yt(()=>[r.zoom,r.scroll,r.offset,r.indicators,r.unit,n.value],a,{deep:!0});const A=e,l=u=>{A("guide-drag-start",u)};return(u,c)=>(Ie(),Ne("div",{class:"w-full h-full overflow-hidden bg-gray-50 dark:bg-gray-800 relative",onMousedown:l},[F("canvas",{ref_key:"canvasRef",ref:i,class:"block"},null,512)],32))}}),Tde={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Ide(t,e){return Ie(),Ne("svg",Tde,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"m19 21l-7-7l-2.35 2.35q.2.375.275.8T10 18q0 1.65-1.175 2.825T6 22t-2.825-1.175T2 18t1.175-2.825T6 14q.425 0 .85.075t.8.275L10 12L7.65 9.65q-.375.2-.8.275T6 10q-1.65 0-2.825-1.175T2 6t1.175-2.825T6 2t2.825 1.175T10 6q0 .425-.075.85t-.275.8L22 20v1zm-4-10l-2-2l6-6h3v1zM6 8q.825 0 1.413-.587T8 6t-.587-1.412T6 4t-1.412.588T4 6t.588 1.413T6 8m6 4.5q.2 0 .35-.15t.15-.35t-.15-.35t-.35-.15t-.35.15t-.15.35t.15.35t.35.15M6 20q.825 0 1.413-.587T8 18t-.587-1.412T6 16t-1.412.588T4 18t.588 1.413T6 20"},null,-1)])])}const Fde=kt({name:"material-symbols-content-cut",render:Ide}),Pde={class:"bg-white border border-gray-200 shadow-xl rounded-md min-w-[160px] py-1"},Lde=["disabled"],kde=["disabled"],Nde=["disabled"],Ude=["disabled"],Mde=["disabled"],Dde=Tr({__name:"Shortcuts",setup(t){const{t:e}=zn(),r=fn(),n=li("designer-root"),i=We(!1),o=We(0),a=We(0),s=We(0),A=We(0),l=We(null),u=We(!1),c=We(0),d=We(0),f=E=>{c.value=E.clientX,d.value=E.clientY},g=()=>{var E;return((E=n==null?void 0:n.value)==null?void 0:E.getRootNode())||document},p=(E,Q)=>{const j=g().querySelectorAll(".print-page");if(j.length===0)return;let T=null,N=1/0,D=0;for(let K=0;K<j.length;K++){const L=j[K],O=L.getBoundingClientRect();if(E>=O.left&&E<=O.right&&Q>=O.top&&Q<=O.bottom)return{pageIndex:K,x:(E-O.left)/r.zoom,y:(Q-O.top)/r.zoom};const P=Math.max(O.left-E,0,E-O.right),x=Math.max(O.top-Q,0,Q-O.bottom),q=Math.sqrt(P*P+x*x);q<N&&(N=q,T=L,D=K)}if(T){const K=T.getBoundingClientRect();let L=(E-K.left)/r.zoom,O=(Q-K.top)/r.zoom;return L=Math.max(0,Math.min(r.canvasSize.width,L)),O=Math.max(0,Math.min(r.canvasSize.height,O)),{pageIndex:D,x:L,y:O}}},b=E=>{if(r.disableGlobalShortcuts)return;if((E.ctrlKey||E.metaKey)&&E.altKey&&E.key.toLowerCase()==="n"){E.preventDefault(),E.stopPropagation(),window.dispatchEvent(new CustomEvent("designer:new-template"));return}if((E.ctrlKey||E.metaKey)&&E.key===","){E.preventDefault(),E.stopPropagation(),r.setShowSettings(!0);return}const Q=E.target;if(Q&&Q.closest('input, textarea, select, [contenteditable="true"]'))return;if(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(E.key)){const N=E.shiftKey?10:1;if(r.selectedGuideId){const D=r.guides.find(K=>K.id===r.selectedGuideId);if(D){E.preventDefault();const K=D.position;let L=K;if(D.type==="vertical")if(E.key==="ArrowLeft")L-=N;else if(E.key==="ArrowRight")L+=N;else return;else if(E.key==="ArrowUp")L-=N;else if(E.key==="ArrowDown")L+=N;else return;(K>0&&L<0||K<0&&L>0||L===0)&&(L=0),r.updateGuide(D.id,L),r.setHighlightedGuide(D.id)}}else if(r.selectedElementIds.length>0){E.preventDefault();const D=E.key==="ArrowLeft"?-N:E.key==="ArrowRight"?N:0,K=E.key==="ArrowUp"?-N:E.key==="ArrowDown"?N:0;r.nudgeSelectedElements(D,K)}return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="a"){if(E.preventDefault(),r.pages[r.currentPageIndex]){const N=r.pages[r.currentPageIndex].elements.map(D=>D.id);r.setSelection(N)}return}if(E.key==="Delete"){r.selectedElementIds.length>1?(E.preventDefault(),r.removeSelectedElements()):r.selectedElementId?(E.preventDefault(),r.removeElement(r.selectedElementId)):r.selectedGuideId&&(E.preventDefault(),r.removeGuide(r.selectedGuideId));return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="c"){r.selectedElementId&&(E.preventDefault(),r.copy());return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="x"){r.selectedElementId&&(E.preventDefault(),r.cut());return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="v"){r.clipboard.length>0&&(E.preventDefault(),r.paste(p(c.value,d.value)));return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="h"){E.preventDefault(),r.setShowHelp(!0);return}if(r.showHelp&&E.key==="Escape"){E.preventDefault(),r.setShowHelp(!1);return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="z"&&!E.shiftKey){E.preventDefault(),r.undo();return}if((E.ctrlKey||E.metaKey)&&(E.key.toLowerCase()==="y"||E.key.toLowerCase()==="z"&&E.shiftKey)){E.preventDefault(),r.redo();return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="l"){E.preventDefault(),r.toggleLock();return}if((E.ctrlKey||E.metaKey)&&E.shiftKey&&E.key.toLowerCase()==="p"){E.preventDefault(),window.dispatchEvent(new CustomEvent("designer:preview"));return}const j=E.ctrlKey||E.metaKey,T=E.key.toLowerCase();if(!(r.editingCustomElementId&&j&&(T==="s"||T==="q"))){if(j&&E.shiftKey&&T==="s"){E.preventDefault(),window.dispatchEvent(new CustomEvent("designer:save-as"));return}if(j&&T==="s"){E.preventDefault(),window.dispatchEvent(new CustomEvent("designer:save"));return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="p"&&!E.shiftKey){E.preventDefault(),window.dispatchEvent(new CustomEvent("designer:print"));return}if((E.ctrlKey||E.metaKey)&&E.shiftKey&&E.key.toLowerCase()==="e"){E.preventDefault(),window.dispatchEvent(new CustomEvent("designer:export-pdf"));return}if((E.ctrlKey||E.metaKey)&&E.shiftKey&&E.key.toLowerCase()==="j"){E.preventDefault(),window.dispatchEvent(new CustomEvent("designer:view-json"));return}}},m=E=>{["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(E.key)&&(r.setHighlightedGuide(null),r.setHighlightedEdge(null))},w=async E=>{const Q=g().querySelector(".overflow-auto"),j=E.composedPath();if(!(!!Q&&j.some(K=>K===Q?!0:K instanceof Element&&Q.contains(K))))return;if(E.preventDefault(),i.value=!0,o.value=E.clientX,a.value=E.clientY,s.value=E.clientX,A.value=E.clientY,await Wi(),l.value){const K=l.value.getBoundingClientRect(),L=window.innerWidth,O=window.innerHeight;E.clientX+K.width>L&&(o.value=L-K.width-5),E.clientY+K.height>O&&(a.value=O-K.height-5)}const N=g().querySelectorAll(".print-page");let D=!1;N.forEach(K=>{const L=K.getBoundingClientRect();E.clientX>=L.left&&E.clientX<=L.right&&E.clientY>=L.top&&E.clientY<=L.bottom&&(D=!0)}),u.value=D,window.addEventListener("click",S)},S=()=>{i.value=!1,window.removeEventListener("click",S)};return xi(()=>{window.addEventListener("keydown",b,{capture:!0}),window.addEventListener("contextmenu",w),window.addEventListener("keyup",m),window.addEventListener("mousemove",f)}),Bi(()=>{window.removeEventListener("keydown",b,{capture:!0}),window.removeEventListener("contextmenu",w),window.removeEventListener("click",S),window.removeEventListener("keyup",m),window.removeEventListener("mousemove",f)}),(E,Q)=>{var j,T,N,D,K;return i.value?(Ie(),Ne("div",{key:0,ref_key:"menuRef",ref:l,class:"fixed z-[9999]",style:Bt({left:`${o.value}px`,top:`${a.value}px`})},[F("div",Pde,[F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 disabled:opacity-50 flex items-center gap-2",disabled:R(r).selectedElementIds.length===0&&!R(r).selectedGuideId||((j=R(r).selectedElement)==null?void 0:j.locked),onClick:Q[0]||(Q[0]=()=>{R(r).selectedElementIds.length>1?R(r).removeSelectedElements():R(r).selectedElementId?R(r).removeElement(R(r).selectedElementId):R(r).selectedGuideId&&R(r).removeGuide(R(r).selectedGuideId),i.value=!1})},[et(R(fd),{class:"w-4 h-4"}),F("span",null,me(R(e)("common.delete"))+me(R(r).selectedElementIds.length>1?` (${R(r).selectedElementIds.length})`:""),1)],8,Lde),F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 disabled:opacity-50 flex items-center gap-2",disabled:!R(r).selectedElementId||((T=R(r).selectedElement)==null?void 0:T.locked),onClick:Q[1]||(Q[1]=()=>{R(r).cut(),i.value=!1})},[et(R(Fde),{class:"w-4 h-4"}),F("span",null,me(R(e)("common.cut")),1)],8,kde),F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 disabled:opacity-50 flex items-center gap-2",disabled:!R(r).selectedElementId||((N=R(r).selectedElement)==null?void 0:N.locked),onClick:Q[2]||(Q[2]=()=>{R(r).copy(),i.value=!1})},[et(R(dd),{class:"w-4 h-4"}),F("span",null,me(R(e)("common.copy")),1)],8,Nde),F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 disabled:opacity-50 flex items-center gap-2",disabled:R(r).clipboard.length===0,onClick:Q[3]||(Q[3]=()=>{R(r).paste(p(s.value,A.value)),i.value=!1})},[et(R(l5),{class:"w-4 h-4"}),F("span",null,me(R(e)("common.paste")),1)],8,Ude),F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 disabled:opacity-50 flex items-center gap-2",disabled:R(r).selectedElementIds.length===0,onClick:Q[4]||(Q[4]=()=>{R(r).toggleLock(),i.value=!1})},[(Ie(),Ur(qh((D=R(r).selectedElement)!=null&&D.locked?R(CP):R($0)),{class:"w-4 h-4"})),F("span",null,me((K=R(r).selectedElement)!=null&&K.locked?R(e)("common.unlock"):R(e)("common.lock")),1)],8,Mde),Q[7]||(Q[7]=F("div",{class:"border-t border-gray-200 my-1"},null,-1)),F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 flex items-center gap-2",onClick:Q[5]||(Q[5]=L=>{R(r).undo(),i.value=!1})},[et(R(BP),{class:"w-4 h-4"}),F("span",null,me(R(e)("common.undo")),1)]),F("button",{class:"w-full text-left px-3 py-2 text-sm hover:bg-gray-100 flex items-center gap-2",onClick:Q[6]||(Q[6]=L=>{R(r).redo(),i.value=!1})},[et(R(EP),{class:"w-4 h-4"}),F("span",null,me(R(e)("common.redo")),1)])])],4)):mt("",!0)}}}),Rde={class:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 text-sm leading-none text-gray-300 z-10"},Qde={key:2,class:"w-full h-full bg-gray-200 flex items-center justify-center overflow-hidden"},Hde=["src"],zde={key:3,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},Vde=["src"],jde={key:4,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},qde=["src"],Kde={key:2,class:"w-full h-full bg-gray-200 flex items-center justify-center overflow-hidden"},Gde=["src"],Xde={key:3,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},Wde=["src"],Yde={key:4,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},Zde=["src"],FN=180,PN=120,LN=300,Jde=32,_de=Pd(Tr({__name:"Minimap",props:{scrollWidth:{},scrollHeight:{},viewportWidth:{},viewportHeight:{},scrollLeft:{},scrollTop:{},pages:{},pageWidth:{},pageHeight:{},zoom:{},contentOffsetX:{},contentOffsetY:{},canvasBackground:{},showHeaderLine:{type:Boolean},showFooterLine:{type:Boolean},headerHeight:{},footerHeight:{},watermark:{}},emits:["update:scroll"],setup(t,{emit:e}){const r=t,n=e,i=it(()=>{if(r.scrollWidth<=0||r.scrollHeight<=0)return .1;let L=FN/r.scrollWidth;return r.scrollHeight*L>LN&&(L=LN/r.scrollHeight),r.scrollWidth*L<PN&&(L=PN/r.scrollWidth),L}),o=it(()=>r.scrollHeight*i.value),a=it(()=>({left:`${r.scrollLeft*i.value}px`,top:`${r.scrollTop*i.value}px`,width:`${r.viewportWidth*i.value}px`,height:`${r.viewportHeight*i.value}px`})),s=L=>L.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'"),A=it(()=>{const L=r.watermark;if(!L||!L.enabled||!L.text)return null;const O=s(L.text),P=Number.isFinite(L.angle)?L.angle:-30,x=Math.max(6,L.size||24),q=Math.max(40,L.density||160),$=L.color||"#000000",Z=Math.min(1,Math.max(0,L.opacity??.1)),oe=`<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="${q}" height="${q}"><text x="50%" y="50%" dominant-baseline="middle" text-anchor="middle" fill="${$}" fill-opacity="${Z}" font-size="${x}" transform="rotate(${P} ${q/2} ${q/2})">${O}</text></svg>`;return{backgroundImage:`url("data:image/svg+xml,${encodeURIComponent(oe)}")`,backgroundRepeat:"repeat",backgroundSize:`${q}px ${q}px`}}),l=L=>{const O={left:`${r.contentOffsetX*i.value}px`,top:`${(r.contentOffsetY+L*(r.pageHeight+Jde)*r.zoom)*i.value}px`,width:`${r.pageWidth*r.zoom*i.value}px`,height:`${r.pageHeight*r.zoom*i.value}px`,backgroundColor:r.canvasBackground||"#ffffff"};return A.value?{...O,...A.value}:O},u=()=>{if(!r.pages||r.pages.length===0)return[];const L=r.pages[0];if(!(L!=null&&L.elements))return[];const O=P=>{var ne;const q=(Number(((ne=P==null?void 0:P.style)==null?void 0:ne.rotate)||0)%360+360)%360;if(q===0)return{minY:P.y,maxY:P.y+P.height};const $=P.x+P.width/2,Z=P.y+P.height/2,oe=q*Math.PI/180,ae=Math.cos(oe),re=Math.sin(oe),te=[{x:P.x,y:P.y},{x:P.x+P.width,y:P.y},{x:P.x,y:P.y+P.height},{x:P.x+P.width,y:P.y+P.height}];let k=1/0,W=-1/0;for(const Y of te){const de=Z+(Y.x-$)*re+(Y.y-Z)*ae;de<k&&(k=de),de>W&&(W=de)}return{minY:k,maxY:W}};return L.elements.filter(P=>{if(P.type===ct.TABLE)return!1;const x=O(P),q=P.repeatPerPage===!0,$=r.showHeaderLine&&x.maxY<=r.headerHeight,Z=r.showFooterLine&&x.minY>=r.pageHeight-r.footerHeight;return q||$||Z})},c=L=>{const O=Math.max(1,L.width*r.zoom*i.value),P=Math.max(1,L.height*r.zoom*i.value);return{width:O,height:P}},d=L=>{var q,$,Z,oe,ae,re,te,k,W,ne,Y,de;const{width:O,height:P}=c(L),x={left:`${L.x*r.zoom*i.value}px`,top:`${L.y*r.zoom*i.value}px`,width:`${O}px`,height:`${P}px`,fontSize:`${(((q=L.style)==null?void 0:q.fontSize)||12)*r.zoom*i.value}px`,zIndex:(($=L.style)==null?void 0:$.zIndex)||1,transform:`rotate(${((Z=L.style)==null?void 0:Z.rotate)||0}deg)`};if(L.type===ct.LINE){const Be=((oe=L.style)==null?void 0:oe.borderColor)||"#111827",ke=Math.max(1,(((ae=L.style)==null?void 0:ae.borderWidth)||1)*r.zoom*i.value);return{...x,height:`${ke}px`,backgroundColor:Be,top:`${L.y*r.zoom*i.value+(P-ke)/2}px`}}if(L.type===ct.RECT||L.type===ct.CIRCLE){const Be=((re=L.style)==null?void 0:re.borderColor)||"#111827",ke=Math.max(1,(((te=L.style)==null?void 0:te.borderWidth)||1)*r.zoom*i.value);return{...x,backgroundColor:((k=L.style)==null?void 0:k.backgroundColor)||"transparent",borderColor:Be,borderWidth:`${ke}px`,borderStyle:((W=L.style)==null?void 0:W.borderStyle)||"solid",borderRadius:L.type===ct.CIRCLE?"9999px":`${((ne=L.style)==null?void 0:ne.borderRadius)||0}px`}}return L.type===ct.BARCODE||L.type===ct.QRCODE?{...x,backgroundColor:"rgba(17, 24, 39, 0.15)",border:"1px solid rgba(17, 24, 39, 0.3)"}:L.type===ct.PAGE_NUMBER?{...x,color:((Y=L.style)==null?void 0:Y.color)||"#111827",backgroundColor:((de=L.style)==null?void 0:de.backgroundColor)||"transparent"}:{...x,backgroundColor:L.type===ct.IMAGE?"#e5e7eb":void 0}},f=(L,O)=>{var $;const P=O+1,x=(($=r.pages)==null?void 0:$.length)||1,q=L.format||"1/Total";return q==="1"?`${P}`:q==="Page 1"?`Page ${P}`:`${P}/${x}`},g=L=>{const O=L.style?JSON.stringify(L.style):"";return`${L.id}:${L.type}:${L.variable||""}:${L.content||""}:${O}`},p=We({}),b=We({});let m=0;const w=L=>L.type===ct.BARCODE?L.variable||L.content||"12345678":L.type===ct.QRCODE?L.variable||L.content||"https://example.com":L.variable||L.content||"",S=L=>{try{const O=document.createElement("canvas"),P=L.style||{};return g6(O,w(L),{format:P.barcodeFormat||"CODE128",lineColor:P.color||"#000000",width:Number(P.barcodeWidth)||2,height:Number(P.barcodeHeight)||40,displayValue:P.showText!==!1&&P.showText!=="false",fontOptions:P.fontOptions||"",font:P.font||"monospace",textAlign:P.textAlign||"center",textPosition:P.textPosition||"bottom",textMargin:Number(P.textMargin)||2,fontSize:Number(P.fontSize)||20,background:"transparent",margin:Number(P.margin)||0}),O.toDataURL("image/png")}catch{return""}},E=async L=>{var O,P;try{return await W6.toDataURL(w(L),{margin:0,color:{dark:((O=L.style)==null?void 0:O.color)||"#000000",light:"#00000000"},errorCorrectionLevel:((P=L.style)==null?void 0:P.qrErrorCorrection)||"M"})}catch{return""}},Q=async()=>{const L=++m,O={},P={},x=r.pages||[];for(const q of x){const $=(q==null?void 0:q.elements)||[];for(const Z of $){const oe=g(Z);if(Z.type===ct.BARCODE){const ae=S(Z);ae&&(O[oe]=ae)}else if(Z.type===ct.QRCODE){const ae=await E(Z);ae&&(P[oe]=ae)}}}L===m&&(p.value=O,b.value=P)},j=L=>p.value[g(L)]||"",T=L=>b.value[g(L)]||"";Yt(()=>r.pages,()=>{Q()},{deep:!0,immediate:!0});const N=We(!1),D=We(null);Yt(()=>r.scrollTop,()=>{if(!D.value)return;const L=r.scrollTop*i.value,O=r.viewportHeight*i.value,P=D.value.clientHeight,x=D.value.scrollTop;L<x?D.value.scrollTop=L:L+O>x+P&&(D.value.scrollTop=L+O-P)});const K=L=>{L.preventDefault();const O=L.currentTarget,P=O.getBoundingClientRect(),x=L.clientX-P.left,q=L.clientY-P.top,$=r.scrollLeft*i.value,Z=r.scrollTop*i.value,oe=r.viewportWidth*i.value,ae=r.viewportHeight*i.value;let re=0,te=0;if(x>=$&&x<=$+oe&&q>=Z&&q<=Z+ae)re=x-$,te=q-Z;else{const ne=x/i.value-r.viewportWidth/2,Y=q/i.value-r.viewportHeight/2;n("update:scroll",{left:ne,top:Y}),re=oe/2,te=ae/2}N.value=!0;const k=ne=>{const Y=O.getBoundingClientRect(),de=ne.clientX-Y.left,Be=ne.clientY-Y.top,ke=de-re,Se=Be-te;n("update:scroll",{left:ke/i.value,top:Se/i.value})},W=()=>{N.value=!1,window.removeEventListener("mousemove",k),window.removeEventListener("mouseup",W)};window.addEventListener("mousemove",k),window.addEventListener("mouseup",W)};return(L,O)=>(Ie(),Ne("div",{ref_key:"scrollContainer",ref:D,class:"bg-white border border-gray-200 shadow-lg rounded max-h-[300px] overflow-y-auto overflow-x-hidden box-content no-scrollbar",style:Bt({width:`${r.scrollWidth*i.value}px`,maxWidth:`${FN}px`})},[F("div",{class:"relative select-none box-content overflow-hidden",style:Bt({width:`${r.scrollWidth*i.value}px`,height:`${o.value}px`}),onMousedown:K},[O[0]||(O[0]=F("div",{class:"absolute inset-0 bg-gray-100"},null,-1)),(Ie(!0),Ne(Rt,null,Zr(t.pages,(P,x)=>(Ie(),Ne("div",{key:x,class:"absolute shadow-sm border border-gray-300 overflow-hidden",style:Bt(l(x))},[F("div",Rde,me(x+1),1),(Ie(!0),Ne(Rt,null,Zr(P.elements,q=>{var $,Z;return Ie(),Ne("div",{key:q.id,class:"absolute",style:Bt(d(q))},[q.type===R(ct).TEXT?(Ie(),Ne("div",{key:0,class:"w-full h-full overflow-hidden whitespace-nowrap",style:Bt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},me(q.variable||q.content),5)):q.type===R(ct).PAGE_NUMBER?(Ie(),Ne("div",{key:1,class:"w-full h-full overflow-hidden whitespace-nowrap",style:Bt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},me(f(q,x)),5)):q.type===R(ct).IMAGE?(Ie(),Ne("div",Qde,[q.content?(Ie(),Ne("img",{key:0,src:q.content,class:"w-full h-full object-cover"},null,8,Hde)):mt("",!0)])):q.type===R(ct).BARCODE?(Ie(),Ne("div",zde,[j(q)?(Ie(),Ne("img",{key:0,src:j(q),class:"w-full h-full object-contain"},null,8,Vde)):mt("",!0)])):q.type===R(ct).QRCODE?(Ie(),Ne("div",jde,[T(q)?(Ie(),Ne("img",{key:0,src:T(q),class:"w-full h-full object-contain"},null,8,qde)):mt("",!0)])):q.type===R(ct).TABLE?(Ie(),Ne("div",{key:5,class:"w-full h-full border border-gray-300 bg-white grid",style:Bt({gridTemplateColumns:`repeat(${(($=q.columns)==null?void 0:$.length)||2}, 1fr)`})},[(Ie(!0),Ne(Rt,null,Zr(Math.min(6,(((Z=q.columns)==null?void 0:Z.length)||2)*2),oe=>(Ie(),Ne("div",{key:oe,class:"border-[0.5px] border-gray-100"}))),128))],4)):mt("",!0)],4)}),128)),x>0?(Ie(!0),Ne(Rt,{key:0},Zr(u(),q=>{var $,Z;return Ie(),Ne("div",{key:`global-${x}-${q.id}`,class:"absolute",style:Bt(d(q))},[q.type===R(ct).TEXT?(Ie(),Ne("div",{key:0,class:"w-full h-full overflow-hidden whitespace-nowrap",style:Bt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},me(q.variable||q.content),5)):q.type===R(ct).PAGE_NUMBER?(Ie(),Ne("div",{key:1,class:"w-full h-full overflow-hidden whitespace-nowrap",style:Bt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},me(f(q,x)),5)):q.type===R(ct).IMAGE?(Ie(),Ne("div",Kde,[q.content?(Ie(),Ne("img",{key:0,src:q.content,class:"w-full h-full object-cover"},null,8,Gde)):mt("",!0)])):q.type===R(ct).BARCODE?(Ie(),Ne("div",Xde,[j(q)?(Ie(),Ne("img",{key:0,src:j(q),class:"w-full h-full object-contain"},null,8,Wde)):mt("",!0)])):q.type===R(ct).QRCODE?(Ie(),Ne("div",Yde,[T(q)?(Ie(),Ne("img",{key:0,src:T(q),class:"w-full h-full object-contain"},null,8,Zde)):mt("",!0)])):q.type===R(ct).TABLE?(Ie(),Ne("div",{key:5,class:"w-full h-full border border-gray-300 bg-white grid",style:Bt({gridTemplateColumns:`repeat(${(($=q.columns)==null?void 0:$.length)||2}, 1fr)`})},[(Ie(!0),Ne(Rt,null,Zr(Math.min(6,(((Z=q.columns)==null?void 0:Z.length)||2)*2),oe=>(Ie(),Ne("div",{key:oe,class:"border-[0.5px] border-gray-100"}))),128))],4)):mt("",!0)],4)}),128)):mt("",!0)],4))),128)),F("div",{class:"absolute border-2 border-blue-500 bg-blue-500/10 cursor-move z-[1000]",style:Bt(a.value)},null,4)],36)],4))}}),[["__scopeId","data-v-177efb4d"]]),$de={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ehe(t,e){return Ie(),Ne("svg",$de,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M5 21q-.825 0-1.412-.587T3 19V5q0-.825.588-1.412T5 3h7v2H5v14h7v2zm11-4l-1.375-1.45l2.55-2.55H9v-2h8.175l-2.55-2.55L16 7l5 5z"},null,-1)])])}const the=kt({name:"material-symbols-logout",render:ehe}),rhe={class:"flex-1 flex overflow-hidden"},nhe={class:"flex-1 overflow-hidden relative flex flex-col"},ihe={key:0,class:"flex items-center justify-between px-4 py-2 bg-blue-50 border-b border-blue-200 text-blue-900 dark:bg-blue-950 dark:border-blue-800 dark:text-blue-100"},ohe={class:"text-sm font-medium"},ahe={class:"flex items-center gap-2"},she={class:"relative w-full h-full flex flex-col overflow-hidden"},Ahe={class:"flex-none h-5 bg-gray-50 border-b border-gray-300 flex z-20"},lhe={class:"flex-1 relative overflow-hidden"},uhe={class:"flex-1 flex overflow-hidden relative"},che={class:"w-5 flex-none bg-gray-50 border-r border-gray-300 h-full relative z-20 overflow-hidden"},fhe=["onMousedown"],dhe={class:"absolute left-2 -top-4 theme-bg text-white text-[10px] px-1 rounded opacity-0 group-hover:opacity-100 pointer-events-none whitespace-nowrap"},hhe=["onMousedown"],ghe={class:"absolute top-2 -left-4 theme-bg text-white text-[10px] px-1 rounded opacity-0 group-hover:opacity-100 pointer-events-none whitespace-nowrap"},phe={key:2,class:"absolute pointer-events-none"},vhe={key:1,class:"absolute bottom-4 right-4 z-50"},mhe=Tr({__name:"PrintDesigner",setup(t){const e=fn(),r=gg(),{autoSave:n}=oP(),{isDark:i}=du(),{t:o}=zn(),a=We(null),s=We(null),A=We(null);let l=null;const u=We(null);Hy("designer-root",s),Hy("modal-container",A);const c=We(null),d=We(!1),f=We(0),g=()=>{f.value+=1},p=(z,G)=>{const M=getComputedStyle(document.documentElement).getPropertyValue(z).trim(),V=vg(M);return V?_W(V.h,V.s,V.v,G):`rgba(59, 130, 246, ${G})`},b=it(()=>e.editingCustomElement),m=it(()=>b.value?`${b.value.name} Copy`:"");xi(()=>{e.setIsExporting(!1),Wi(()=>{re()}),l=new ResizeObserver(()=>{re()}),a.value&&l.observe(a.value),window.addEventListener("resize",re),window.addEventListener("keydown",qe),window.addEventListener("keydown",T),window.addEventListener("keyup",qe),window.addEventListener("blur",Oe),window.addEventListener("brand-theme-updated",g),Yt([()=>e.pages.length,()=>e.canvasSize.width,()=>e.canvasSize.height,()=>e.zoom,()=>e.showMinimap],()=>{Wi(re)}),Yt(i,z=>{s.value&&s.value.classList.toggle("dark",z)},{immediate:!0}),Yt([()=>e.pages,()=>e.canvasSize,()=>e.guides,()=>e.headerHeight,()=>e.footerHeight,()=>e.showHeaderLine,()=>e.showFooterLine,()=>e.canvasBackground,()=>e.pageSpacingX,()=>e.pageSpacingY,()=>e.watermark,()=>e.showMinimap],()=>{w()},{deep:!0})});const w=HW(()=>{if(!e.editingCustomElementId&&n.value&&r.currentTemplateId&&!r.isSaving){const z=r.templates.find(G=>G.id===r.currentTemplateId);z&&r.saveCurrentTemplate(z.name)}},1e3),S=()=>{if(!e.commitCustomElementEdit()){alert(o("sidebar.editSaveFailed"));return}e.cancelCustomElementEdit()},E=z=>{const G=z.trim();if(!G)return;if(!e.saveCustomElementEditAs(G)){alert(o("sidebar.editSaveFailed"));return}e.cancelCustomElementEdit()},Q=()=>{confirm(o("sidebar.confirmExitEdit"))&&(e.cancelCustomElementEdit(),requestAnimationFrame(()=>{var z,G;(G=(z=a.value)==null?void 0:z.focus)==null||G.call(z)}))},j=z=>{var V;const G=z;if(!G)return!1;if(G.isContentEditable)return!0;const M=(V=G.tagName)==null?void 0:V.toLowerCase();return M==="input"||M==="textarea"||M==="select"},T=z=>{if(e.disableGlobalShortcuts||!e.editingCustomElementId||d.value||j(z.target)||!(z.ctrlKey||z.metaKey))return;const M=z.key.toLowerCase();if(M==="s"&&z.shiftKey){z.preventDefault(),z.stopPropagation(),d.value=!0;return}if(M==="s"){z.preventDefault(),z.stopPropagation(),S();return}M==="q"&&(z.preventDefault(),z.stopPropagation(),Q())},N=We(0),D=We(0),K=We(0),L=We(0),O=z=>{const G=z.target;N.value=G.scrollLeft,D.value=G.scrollTop},P=We(0),x=We(0),q=We(0),$=We(0),Z=it(()=>e.unit||"mm"),oe=z=>{const G=LA(z,e.unit||"mm");return e.unit==="px"?Math.round(G):Number(G.toFixed(1))},ae=it(()=>{const z=e.pages.length,G=e.canvasSize.height,M=e.canvasSize.width,ee=z>0?z*G+(z-1)*20:0;return{width:`${M*e.zoom}px`,height:`${ee*e.zoom}px`}}),re=()=>{if(a.value&&c.value){const z=a.value.clientWidth,G=a.value.clientHeight;q.value=z,$.value=G;const M=parseFloat(ae.value.width),V=parseFloat(ae.value.height),ee=64,se=64;P.value=Math.max(z,M+ee),x.value=Math.max(G,V+se),M+ee<=z&&(P.value=z),V+se<=G&&(x.value=G);const Ae=a.value.getBoundingClientRect(),be=c.value.getBoundingClientRect(),ge=a.value.clientLeft||0,le=a.value.clientTop||0;N.value=a.value.scrollLeft,D.value=a.value.scrollTop,K.value=be.left-Ae.left+a.value.scrollLeft-ge,L.value=be.top-Ae.top+a.value.scrollTop-le}};Bi(()=>{var z;w.cancel(),l&&(l.disconnect(),l=null),window.removeEventListener("resize",re),window.removeEventListener("mousemove",Be),window.removeEventListener("mouseup",ke),window.removeEventListener("keydown",qe),window.removeEventListener("keydown",T),window.removeEventListener("keyup",qe),window.removeEventListener("blur",Oe),window.removeEventListener("brand-theme-updated",g),(z=a.value)==null||z.removeEventListener("wheel",Se)});const te=We(!1),k=We(null),W=We("horizontal"),ne=We(0),Y=(z,G,M=null)=>{te.value=!0,k.value=M,W.value=G,de(z),window.addEventListener("mousemove",Be),window.addEventListener("mouseup",ke)},de=z=>{if(!a.value)return;const G=a.value.getBoundingClientRect(),M=e.zoom;if(W.value==="horizontal"){const V=z.clientY-G.top+a.value.scrollTop;ne.value=(V-L.value)/M}else{const V=z.clientX-G.left+a.value.scrollLeft;ne.value=(V-K.value)/M}},Be=z=>{te.value&&(z.preventDefault(),de(z),k.value&&e.updateGuide(k.value,ne.value))},ke=z=>{if(!te.value)return;const G=a.value.getBoundingClientRect();let M=!1;W.value==="horizontal"?z.clientY<G.top&&(M=!0):z.clientX<G.left&&(M=!0),M?k.value&&e.removeGuide(k.value):k.value?e.updateGuide(k.value,ne.value):e.addGuide({type:W.value,position:ne.value}),te.value=!1,k.value=null,window.removeEventListener("mousemove",Be),window.removeEventListener("mouseup",ke)},Se=z=>{z.ctrlKey&&(z.preventDefault(),z.deltaY<0?e.setZoom(Math.min(5,e.zoom+.1)):e.setZoom(Math.max(.2,e.zoom-.1)))},qe=z=>{var G,M;e.disableGlobalShortcuts||(z.key==="Control"||z.key==="Meta")&&(z.type==="keydown"&&!z.repeat?(G=a.value)==null||G.addEventListener("wheel",Se,{passive:!1}):z.type==="keyup"&&((M=a.value)==null||M.removeEventListener("wheel",Se)))},Oe=()=>{var z;(z=a.value)==null||z.removeEventListener("wheel",Se)},Ue=z=>{a.value&&a.value.scrollTo({left:z.left,top:z.top,behavior:"auto"})},ie=z=>{var pe;const G=((pe=z.style)==null?void 0:pe.rotate)||0;if(G===0)return{minX:z.x,maxX:z.x+z.width,minY:z.y,maxY:z.y+z.height};const M=z.x+z.width/2,V=z.y+z.height/2,ee=G*Math.PI/180,se=Math.cos(ee),Ae=Math.sin(ee),be=[{x:z.x,y:z.y},{x:z.x+z.width,y:z.y},{x:z.x,y:z.y+z.height},{x:z.x+z.width,y:z.y+z.height}];let ge=1/0,le=-1/0,Ee=1/0,Pe=-1/0;for(const ye of be){const Fe=M+(ye.x-M)*se-(ye.y-V)*Ae,Re=V+(ye.x-M)*Ae+(ye.y-V)*se;Fe<ge&&(ge=Fe),Fe>le&&(le=Fe),Re<Ee&&(Ee=Re),Re>Pe&&(Pe=Re)}return{minX:ge,maxX:le,minY:Ee,maxY:Pe}},I=it(()=>{if(!e.isDragging||e.selectedElementIds.length===0)return null;const z=[];for(const ge of e.selectedElementIds)for(let le=0;le<e.pages.length;le++){const Pe=e.pages[le].elements.find(pe=>pe.id===ge);Pe&&z.push({el:Pe,pageIndex:le})}if(z.length===0)return null;let G=1/0,M=-1/0,V=1/0,ee=-1/0;const se=20;for(const{el:ge,pageIndex:le}of z){const Ee=ie(ge),Pe=le*(e.canvasSize.height+se);Ee.minY+=Pe,Ee.maxY+=Pe,Ee.minX<G&&(G=Ee.minX),Ee.maxX>M&&(M=Ee.maxX),Ee.minY<V&&(V=Ee.minY),Ee.maxY>ee&&(ee=Ee.maxY)}const Ae=(G+M)/2,be=(V+ee)/2;return{minX:G,maxX:M,minY:V,maxY:ee,centerX:Ae,centerY:be}}),_=it(()=>{if(!I.value)return{h:[],v:[]};f.value;const z=p("--brand-500",.5),{minX:G,maxX:M,minY:V,maxY:ee}=I.value;return{h:[{position:G,color:z},{position:M,color:z}],v:[{position:V,color:z},{position:ee,color:z}]}});return(z,G)=>{var M;return Ie(),Ne("div",{ref_key:"rootContainer",ref:s,class:"h-full w-full flex flex-col bg-gray-100 overflow-hidden"},[et(lce),F("div",rhe,[et(_ce),F("main",nhe,[R(e).editingCustomElementId?(Ie(),Ne("div",ihe,[F("div",ohe,me(R(o)("sidebar.editingElement",{name:((M=b.value)==null?void 0:M.name)||""})),1),F("div",ahe,[F("button",{onClick:S,class:"px-3 py-1.5 text-xs font-medium bg-blue-600 text-white rounded hover:bg-blue-700 dark:bg-blue-500 dark:hover:bg-blue-400 inline-flex items-center gap-1.5"},[et(R(A5),{class:"w-4 h-4"}),zt(" "+me(R(o)("sidebar.saveEdit")),1)]),F("button",{onClick:G[0]||(G[0]=V=>d.value=!0),class:"px-3 py-1.5 text-xs font-medium bg-blue-200 text-blue-900 rounded hover:bg-blue-300 dark:bg-blue-700 dark:hover:bg-blue-600 dark:text-white inline-flex items-center gap-1.5"},[et(R(xP),{class:"w-4 h-4"}),zt(" "+me(R(o)("sidebar.saveAs")),1)]),F("button",{onClick:Q,class:"px-3 py-1.5 text-xs font-medium bg-slate-200 text-slate-900 rounded hover:bg-slate-300 dark:bg-slate-700 dark:hover:bg-slate-600 dark:text-slate-100 inline-flex items-center gap-1.5"},[et(R(the),{class:"w-4 h-4"}),zt(" "+me(R(o)("sidebar.exitEdit")),1)])])])):mt("",!0),et(Dde),F("div",she,[F("div",Ahe,[G[5]||(G[5]=F("div",{class:"w-5 flex-none bg-gray-100 border-r border-gray-300"},null,-1)),F("div",lhe,[et(IN,{type:"horizontal",zoom:R(e).zoom,scroll:N.value,offset:K.value,thick:20,unit:R(e).unit||"mm",indicators:_.value.h,onGuideDragStart:G[1]||(G[1]=V=>Y(V,"horizontal"))},null,8,["zoom","scroll","offset","unit","indicators"])])]),F("div",uhe,[F("div",che,[et(IN,{type:"vertical",zoom:R(e).zoom,scroll:D.value,offset:L.value,thick:20,unit:R(e).unit||"mm",indicators:_.value.v,onGuideDragStart:G[2]||(G[2]=V=>Y(V,"vertical"))},null,8,["zoom","scroll","offset","unit","indicators"])]),F("div",{ref_key:"scrollContainer",ref:a,tabindex:"-1",class:"flex-1 overflow-auto p-8 flex relative canvas-scroll bg-gray-100 focus:outline-none",onScroll:O,onClick:G[3]||(G[3]=V=>{(V.target===a.value||V.target===V.currentTarget)&&R(e).selectGuide(null)})},[F("div",{ref_key:"canvasWrapper",ref:c,style:Bt(ae.value),class:"mx-auto relative"},[et(Y6,{ref_key:"canvasContainer",ref:u,class:"absolute top-0 left-0"},null,512)],4),F("div",{class:"absolute top-0 left-0 pointer-events-none z-50",style:Bt({width:`${P.value}px`,height:`${x.value}px`})},[I.value?(Ie(),Ne(Rt,{key:0},[F("div",{class:"absolute w-full border-t border-blue-500 border-dashed",style:Bt({top:`${L.value+Math.round(I.value.minY*R(e).zoom)}px`,left:0})},[F("div",{class:"absolute -top-6 bg-blue-500 text-white text-xs px-1.5 py-0.5 rounded shadow-sm",style:Bt({left:`${N.value+10}px`})},me(oe(I.value.minY))+" "+me(Z.value),5)],4),F("div",{class:"absolute w-full border-t border-dashed theme-border",style:Bt({top:`${L.value+Math.round(I.value.maxY*R(e).zoom)}px`,left:0})},[F("div",{class:"absolute -top-6 theme-bg text-white text-xs px-1.5 py-0.5 rounded shadow-sm",style:Bt({left:`${N.value+10}px`})},me(oe(I.value.maxY))+" "+me(Z.value),5)],4),F("div",{class:"absolute h-full border-l border-dashed theme-border",style:Bt({left:`${K.value+Math.round(I.value.minX*R(e).zoom)}px`,top:0})},[F("div",{class:"absolute -left-2 transform -translate-x-full theme-bg text-white text-xs px-1.5 py-0.5 rounded shadow-sm whitespace-nowrap",style:Bt({top:`${D.value+10}px`})},me(oe(I.value.minX))+" "+me(Z.value),5)],4),F("div",{class:"absolute h-full border-l border-dashed theme-border",style:Bt({left:`${K.value+Math.round(I.value.maxX*R(e).zoom)}px`,top:0})},[F("div",{class:"absolute -left-2 transform -translate-x-full theme-bg text-white text-xs px-1.5 py-0.5 rounded shadow-sm whitespace-nowrap",style:Bt({top:`${D.value+10}px`})},me(oe(I.value.maxX))+" "+me(Z.value),5)],4)],64)):mt("",!0),(Ie(!0),Ne(Rt,null,Zr(R(e).guides,V=>(Ie(),Ne(Rt,{key:V.id},[V.type==="horizontal"?(Ie(),Ne("div",{key:0,class:"absolute left-0 w-full h-3 -mt-1.5 cursor-row-resize pointer-events-auto group flex flex-col justify-center",style:Bt({top:`${L.value+V.position*R(e).zoom}px`}),onMousedown:Ci(ee=>{R(e).selectGuide(V.id),Y(ee,"horizontal",V.id)},["stop"])},[F("div",{class:St(["w-full",R(e).highlightedGuideId===V.id?"border-t-2 theme-border-strong":"border-t theme-border","theme-border-hover"])},null,2),F("div",dhe,me(oe(V.position))+me(Z.value),1)],44,fhe)):(Ie(),Ne("div",{key:1,class:"absolute top-0 h-full w-3 -ml-1.5 cursor-col-resize pointer-events-auto group flex flex-row justify-center",style:Bt({left:`${K.value+V.position*R(e).zoom}px`}),onMousedown:Ci(ee=>{R(e).selectGuide(V.id),Y(ee,"vertical",V.id)},["stop"])},[F("div",{class:St(["h-full",R(e).highlightedGuideId===V.id?"border-l-2 theme-border-strong":"border-l theme-border","theme-border-hover"])},null,2),F("div",ghe,me(oe(V.position))+me(Z.value),1)],44,hhe))],64))),128)),te.value&&!k.value?(Ie(),Ne("div",{key:1,class:St(["absolute border-dashed pointer-events-none theme-border",W.value==="horizontal"?"left-0 w-full border-t":"top-0 h-full border-l"]),style:Bt({top:W.value==="horizontal"?`${L.value+ne.value*R(e).zoom}px`:void 0,left:W.value==="vertical"?`${K.value+ne.value*R(e).zoom}px`:void 0})},[F("div",{class:St(["absolute theme-bg text-white text-[10px] px-1 rounded",W.value==="horizontal"?"left-2 -top-4":"top-2 -left-4"])},me(oe(ne.value))+me(Z.value),3)],6)):mt("",!0),R(e).highlightedEdge?(Ie(),Ne("div",phe,[R(e).highlightedEdge==="top"?(Ie(),Ne("div",{key:0,class:"absolute left-0 w-full border-t theme-border",style:Bt({top:`${L.value}px`})},null,4)):R(e).highlightedEdge==="bottom"?(Ie(),Ne("div",{key:1,class:"absolute left-0 w-full border-t theme-border",style:Bt({top:`${L.value+R(e).canvasSize.height*R(e).zoom}px`})},null,4)):R(e).highlightedEdge==="left"?(Ie(),Ne("div",{key:2,class:"absolute top-0 h-full border-l theme-border",style:Bt({left:`${K.value}px`})},null,4)):R(e).highlightedEdge==="right"?(Ie(),Ne("div",{key:3,class:"absolute top-0 h-full border-l theme-border",style:Bt({left:`${K.value+R(e).canvasSize.width*R(e).zoom}px`})},null,4)):mt("",!0)])):mt("",!0)],4)],544)])]),R(e).showMinimap?(Ie(),Ne("div",vhe,[et(_de,{"scroll-width":P.value,"scroll-height":x.value,"viewport-width":q.value,"viewport-height":$.value,"scroll-left":N.value,"scroll-top":D.value,pages:R(e).pages,"page-width":R(e).canvasSize.width,"page-height":R(e).canvasSize.height,zoom:R(e).zoom,"content-offset-x":K.value,"content-offset-y":L.value,"canvas-background":R(e).canvasBackground,"show-header-line":R(e).showHeaderLine,"show-footer-line":R(e).showFooterLine,"header-height":R(e).headerHeight,"footer-height":R(e).footerHeight,watermark:R(e).watermark||null,"onUpdate:scroll":Ue},null,8,["scroll-width","scroll-height","viewport-width","viewport-height","scroll-left","scroll-top","pages","page-width","page-height","zoom","content-offset-x","content-offset-y","canvas-background","show-header-line","show-footer-line","header-height","footer-height","watermark"])])):mt("",!0)]),et(Ode)]),et(jg,{show:d.value,"initial-value":m.value,title:R(o)("sidebar.saveAsCustomElement"),placeholder:R(o)("sidebar.enterNamePlaceholder"),onClose:G[4]||(G[4]=V=>d.value=!1),onSave:E},null,8,["show","initial-value","title","placeholder"]),F("div",{ref_key:"modalContainer",ref:A,class:"print-designer-modals fixed inset-0 pointer-events-none z-[9999]"},null,512)],512)}}}),Sx="print-designer-font-family",yhe=()=>{const t=localStorage.getItem("print-designer-brand-vars");if(t)try{const e=JSON.parse(t);if(!e||typeof e!="object")return;const r=document.documentElement;Object.entries(e).forEach(([n,i])=>{r.style.setProperty(n,i)})}catch{}},bhe=()=>{var t;return((t=localStorage.getItem(Sx))==null?void 0:t.trim())||""};class kN extends HTMLElement{constructor(){super(...arguments);il(this,"app",null);il(this,"printApi",null);il(this,"printSettings",null);il(this,"designerStore",null);il(this,"templateStore",null);il(this,"themeApi",null);il(this,"i18n",null);il(this,"mountEl",null);il(this,"headObserver",null)}static get observedAttributes(){return["lang"]}attributeChangedCallback(r,n,i){r==="lang"&&i!==n&&this.setLanguage(i)}setLanguage(r){(r==="zh"||r==="en")&&(this.i18n&&(this.i18n.global.locale.value=r),localStorage.setItem("print-designer-language",r))}syncMonacoStyles(){const r=this.shadowRoot;if(!r)return;Array.from(document.querySelectorAll("style")).filter(o=>{var a,s,A;return((a=o.textContent)==null?void 0:a.includes(".monaco-editor"))||((s=o.id)==null?void 0:s.startsWith("monaco-"))||((A=o.textContent)==null?void 0:A.includes("print-designer"))}).forEach(o=>{if(!Array.from(r.querySelectorAll("style")).find(s=>s.textContent===o.textContent)){const s=o.cloneNode(!0);s.setAttribute("data-monaco-clone","true"),r.appendChild(s)}}),Array.from(document.querySelectorAll('link[rel="stylesheet"]')).filter(o=>{const a=o.getAttribute("href")||"";return a.includes("monaco")||a.includes("print-designer")}).forEach(o=>{if(!r.querySelector(`link[href="${o.href}"]`)){const s=o.cloneNode(!0);s.setAttribute("data-monaco-clone","true"),r.appendChild(s)}})}ensureShadowRoot(){const r=this.shadowRoot||this.attachShadow({mode:"open"});if(!r.querySelector("style[data-print-designer-inline]")){const n=document.createElement("style");n.setAttribute("data-print-designer-inline","true"),n.textContent=RI,r.appendChild(n)}return this.syncMonacoStyles(),r}connectedCallback(){if(this.app)return;this.headObserver=new MutationObserver(()=>{this.syncMonacoStyles()}),this.headObserver.observe(document.head,{childList:!0,subtree:!0});const r=gT();td(r);const n=rT(mhe);this.themeApi=du(),yhe(),n.use(r);const i=this.getAttribute("lang"),o=DI(i||void 0);this.i18n=o,n.use(o);const a=this.ensureShadowRoot();this.mountEl||(this.mountEl=document.createElement("div"),this.mountEl.style.width="100%",this.mountEl.style.height="100%",a.appendChild(this.mountEl));const s=bhe();s&&(this.mountEl.style.fontFamily=s),n.mount(this.mountEl),this.printApi=mx(),this.printSettings=Sg(),this.designerStore=fn(r),this.templateStore=gg(r),this.app=n,this.dispatchEvent(new CustomEvent("ready"))}disconnectedCallback(){this.headObserver&&(this.headObserver.disconnect(),this.headObserver=null),this.app&&(this.app.unmount(),this.app=null),this.printApi=null,this.printSettings=null,this.designerStore=null,this.templateStore=null,this.themeApi=null,this.i18n=null,this.mountEl=null}getPrintPages(){const r=this.shadowRoot||this;return Array.from(r.querySelectorAll(".print-page"))}async print(r={}){if(!this.printApi)return;const n=this.getPrintPages();this.dispatchEvent(new CustomEvent("print",{detail:{request:r}}));try{await this.printApi.print(n,{mode:r.mode,options:r.options}),this.dispatchEvent(new CustomEvent("printed",{detail:{request:r}}))}catch(i){throw this.dispatchEvent(new CustomEvent("error",{detail:{scope:"print",error:i}})),i}}async export(r){if(!this.printApi||!this.printSettings)return;const n=r==null?void 0:r.type,i=this.printSettings.exportImageMerged.value;(r==null?void 0:r.merged)!==void 0&&(this.printSettings.exportImageMerged.value=!!r.merged);try{if(this.dispatchEvent(new CustomEvent("export",{detail:{request:r}})),n==="pdf"){await this.printApi.exportPdf(this.getPrintPages(),r.filename||"print-design.pdf"),this.dispatchEvent(new CustomEvent("exported",{detail:{request:r}}));return}if(n==="images"){await this.printApi.exportImages(this.getPrintPages(),r.filenamePrefix||"print-design"),this.dispatchEvent(new CustomEvent("exported",{detail:{request:r}}));return}if(n==="pdfBlob"){const o=await this.printApi.getPdfBlob(this.getPrintPages());return this.dispatchEvent(new CustomEvent("exported",{detail:{request:r,blob:o}})),o}if(n==="imageBlob"){const o=await this.printApi.getImageBlob(this.getPrintPages());return this.dispatchEvent(new CustomEvent("exported",{detail:{request:r,blob:o}})),o}throw new Error("export type not supported")}catch(o){throw this.dispatchEvent(new CustomEvent("error",{detail:{scope:"export",error:o}})),o}finally{this.printSettings.exportImageMerged.value=i}}setBranding(r={}){this.designerStore&&this.designerStore.setBranding(r)}setBrandVars(r,n={}){if(!r||typeof r!="object")return;const i=document.documentElement;Object.entries(r).forEach(([o,a])=>{i.style.setProperty(o,a)}),n.persist!==!1&&localStorage.setItem("print-designer-brand-vars",JSON.stringify(r))}setTheme(r){this.themeApi&&this.themeApi.setTheme(r)}setDesignerFont(r,n={}){if(!this.mountEl)return;const i=(r||"").trim();i?this.mountEl.style.fontFamily=i:this.mountEl.style.removeProperty("font-family"),n.persist!==!1&&(i?localStorage.setItem(Sx,i):localStorage.removeItem(Sx))}getVariables(){return this.designerStore?Ht(this.designerStore.testData||{}):{}}setVariables(r,n={}){if(!(!this.designerStore||!r||typeof r!="object")){if(n.merge){this.designerStore.testData={...this.designerStore.testData||{},...r};return}this.designerStore.testData=r}}getTemplateData(){return this.designerStore?{pages:Ht(this.designerStore.pages),canvasSize:Ht(this.designerStore.canvasSize),guides:Ht(this.designerStore.guides),zoom:this.designerStore.zoom,showGrid:this.designerStore.showGrid,headerHeight:this.designerStore.headerHeight,footerHeight:this.designerStore.footerHeight,showHeaderLine:this.designerStore.showHeaderLine,showFooterLine:this.designerStore.showFooterLine,showMinimap:this.designerStore.showMinimap,canvasBackground:this.designerStore.canvasBackground,pageSpacingX:this.designerStore.pageSpacingX,pageSpacingY:this.designerStore.pageSpacingY,unit:this.designerStore.unit,watermark:Ht(this.designerStore.watermark),testData:Ht(this.designerStore.testData||{})}:null}loadTemplateData(r){return!this.designerStore||this.designerStore.editingCustomElementId||!r?!1:(this.designerStore.resetCanvas(),Array.isArray(r.pages)&&r.pages.length>0&&(this.designerStore.pages=r.pages),r.canvasSize&&(this.designerStore.canvasSize=r.canvasSize),r.guides&&(this.designerStore.guides=r.guides),r.zoom!==void 0&&(this.designerStore.zoom=r.zoom),r.showGrid!==void 0&&(this.designerStore.showGrid=r.showGrid),r.headerHeight!==void 0&&(this.designerStore.headerHeight=r.headerHeight),r.footerHeight!==void 0&&(this.designerStore.footerHeight=r.footerHeight),r.showHeaderLine!==void 0&&(this.designerStore.showHeaderLine=r.showHeaderLine),r.showFooterLine!==void 0&&(this.designerStore.showFooterLine=r.showFooterLine),r.showMinimap!==void 0&&(this.designerStore.showMinimap=r.showMinimap),r.canvasBackground!==void 0&&(this.designerStore.canvasBackground=r.canvasBackground),r.pageSpacingX!==void 0&&(this.designerStore.pageSpacingX=r.pageSpacingX),r.pageSpacingY!==void 0&&(this.designerStore.pageSpacingY=r.pageSpacingY),r.unit!==void 0&&(this.designerStore.unit=r.unit),r.watermark!==void 0&&(this.designerStore.watermark=r.watermark),this.designerStore.testData=r.testData||{},this.designerStore.selectedElementId=null,this.designerStore.selectedGuideId=null,this.designerStore.historyPast=[],this.designerStore.historyFuture=[],!0)}setPrintDefaults(r={}){this.printSettings&&(r.printMode&&(this.printSettings.printMode.value=r.printMode),r.silentPrint!==void 0&&(this.printSettings.silentPrint.value=!!r.silentPrint),r.exportImageMerged!==void 0&&(this.printSettings.exportImageMerged.value=!!r.exportImageMerged),r.localSettings&&Object.assign(this.printSettings.localSettings,r.localSettings),r.remoteSettings&&Object.assign(this.printSettings.remoteSettings,r.remoteSettings),r.localPrintOptions&&Object.assign(this.printSettings.localPrintOptions,r.localPrintOptions),r.remotePrintOptions&&Object.assign(this.printSettings.remotePrintOptions,r.remotePrintOptions))}async fetchLocalPrinters(){return this.printSettings?this.printSettings.fetchLocalPrinters():[]}async fetchLocalPrinterCaps(r){if(!(!this.printSettings||!r))return this.printSettings.fetchLocalPrinterCaps(r)}async fetchRemotePrinters(r){return this.printSettings?this.printSettings.fetchRemotePrinters(r):[]}async fetchRemoteClients(){return this.printSettings?this.printSettings.fetchRemoteClients():[]}setCrudMode(r){var n,i;SW(r),r==="remote"&&((n=this.templateStore)==null||n.loadTemplates().then(()=>{this.templateStore&&!this.templateStore.currentTemplateId&&this.templateStore.templates.length>0&&this.templateStore.loadTemplate(this.templateStore.templates[0].id)}),(i=this.designerStore)==null||i.loadCustomElements())}setCrudEndpoints(r,n={}){CW({endpoints:{...r,baseUrl:n.baseUrl},headers:n.headers})}getTemplates(r={}){return this.templateStore?r.includeData?Ht(this.templateStore.templates):this.templateStore.templates.map(n=>({id:n.id,name:n.name,updatedAt:n.updatedAt})):[]}getTemplate(r){if(!this.templateStore)return null;const n=this.templateStore.templates.find(i=>i.id===r);return n?Ht(n):null}async upsertTemplate(r,n={}){var c,d;if(!this.templateStore||!r||typeof r.name!="string")return null;const{mode:i,endpoints:o,headers:a,fetcher:s}=Pa(),A=r.id||Hi(),l=this.templateStore.templates.findIndex(f=>f.id===A),u={id:A,name:r.name,data:r.data||((c=this.templateStore.templates[l])==null?void 0:c.data)||{},updatedAt:r.updatedAt||Date.now()};if(l>=0?this.templateStore.templates[l]=u:this.templateStore.templates.unshift(u),n.setCurrent&&(this.templateStore.currentTemplateId=A),i==="remote")try{const f=La(((d=o.templates)==null?void 0:d.upsert)||""),p=await(await(s||fetch)(f,{method:"POST",headers:a,body:JSON.stringify(u)})).json(),b=(p==null?void 0:p.id)||u.id;if(b!==u.id){const m=this.templateStore.templates.findIndex(S=>S.id===u.id),w={...u,id:b};m>=0?this.templateStore.templates[m]=w:this.templateStore.templates.unshift(w),this.templateStore.currentTemplateId===u.id&&(this.templateStore.currentTemplateId=b)}return b}catch(f){return console.error("Failed to upsert template",f),u.id}return this.templateStore.saveToLocalStorage(),u.id}setTemplates(r,n={}){if(!this.templateStore||!Array.isArray(r))return;this.templateStore.templates=r.filter(o=>o&&typeof o.id=="string"&&typeof o.name=="string").map(o=>({id:o.id,name:o.name,data:o.data||{},updatedAt:o.updatedAt||Date.now()}));let i=n.currentTemplateId||this.templateStore.currentTemplateId;i&&!this.templateStore.templates.some(o=>o.id===i)&&(i=null),!i&&this.templateStore.templates.length>0&&(i=this.templateStore.templates[0].id),i&&(this.templateStore.currentTemplateId=i,this.designerStore&&!this.designerStore.editingCustomElementId&&this.templateStore.loadTemplate(i)),this.templateStore.saveToLocalStorage()}deleteTemplate(r){this.templateStore&&this.templateStore.deleteTemplate(r)}loadTemplate(r){return!this.templateStore||!this.designerStore||this.designerStore.editingCustomElementId?!1:(this.templateStore.loadTemplate(r),!0)}getCustomElements(r={}){return this.designerStore?r.includeElement?Ht(this.designerStore.customElements):this.designerStore.customElements.map(n=>({id:n.id,name:n.name})):[]}getCustomElement(r){if(!this.designerStore)return null;const n=this.designerStore.customElements.find(i=>i.id===r);return n?Ht(n):null}async upsertCustomElement(r){var u;if(!this.designerStore||!r||typeof r.name!="string"||!r.element)return null;const{mode:n,endpoints:i,headers:o,fetcher:a}=Pa(),s=r.id||Hi(),A=this.designerStore.customElements.findIndex(c=>c.id===s),l={id:s,name:r.name,element:Ht(r.element)};if(A>=0?this.designerStore.customElements.splice(A,1,l):this.designerStore.customElements.push(l),n==="remote")try{const c=La(((u=i.customElements)==null?void 0:u.upsert)||""),f=await(await(a||fetch)(c,{method:"POST",headers:o,body:JSON.stringify(l)})).json(),g=(f==null?void 0:f.id)||l.id;if(g!==l.id){const p=this.designerStore.customElements.findIndex(m=>m.id===l.id),b={...l,id:g};p>=0?this.designerStore.customElements.splice(p,1,b):this.designerStore.customElements.push(b)}return g}catch(c){return console.error("Failed to upsert custom element",c),l.id}return this.designerStore.saveCustomElements(),l.id}setCustomElements(r){this.designerStore&&Array.isArray(r)&&(this.designerStore.customElements=r.filter(n=>n&&typeof n.id=="string"&&typeof n.name=="string"&&n.element).map(n=>({id:n.id,name:n.name,element:Ht(n.element)})),this.designerStore.saveCustomElements())}deleteCustomElement(r){this.designerStore&&this.designerStore.removeCustomElement(r)}}const NN="print-designer";customElements.get(NN)||customElements.define(NN,kN);/*!
|
|
502
502
|
* html2canvas 1.4.1 <https://html2canvas.hertzen.com>
|
|
503
503
|
* Copyright (c) 2022 Niklas von Hertzen <https://hertzen.com>
|
|
504
504
|
* Released under MIT License
|
|
@@ -21392,7 +21392,7 @@ function NA(t) {
|
|
|
21392
21392
|
*/
|
|
21393
21393
|
(function(t) {
|
|
21394
21394
|
function e() {
|
|
21395
|
-
return (Jt.canvg ? Promise.resolve(Jt.canvg) : import("./index.es-
|
|
21395
|
+
return (Jt.canvg ? Promise.resolve(Jt.canvg) : import("./index.es-bd0tAuXc.js")).catch((function(r) {
|
|
21396
21396
|
return Promise.reject(new Error("Could not load canvg: " + r));
|
|
21397
21397
|
})).then((function(r) {
|
|
21398
21398
|
return r.default ? r.default : r;
|
|
@@ -42862,7 +42862,7 @@ function YQ(t, e) {
|
|
|
42862
42862
|
}, null, -1)
|
|
42863
42863
|
])]);
|
|
42864
42864
|
}
|
|
42865
|
-
const KQ = Pt({ name: "material-symbols-info", render: YQ }), ZQ = "vue-print-designer", QQ = "1.0.
|
|
42865
|
+
const KQ = Pt({ name: "material-symbols-info", render: YQ }), ZQ = "vue-print-designer", QQ = "1.0.26", JQ = { "@guolao/vue-monaco-editor": "^1.6.0", canvg: "^4.0.3", "dom-to-image-more": "^3.7.2", jszip: "^3.10.1", jsbarcode: "^3.12.3", jspdf: "^2.5.2", lodash: "^4.17.21", pinia: "^2.3.0", qrcode: "^1.5.4", uuid: "^11.0.3", vue: "^3.5.13", "vue-i18n": "^11.2.8" }, f2 = {
|
|
42866
42866
|
name: ZQ,
|
|
42867
42867
|
version: QQ,
|
|
42868
42868
|
dependencies: JQ
|