vue-print-designer 0.9.87 → 0.9.88

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { c as Ga, _ as ca, R as ga, p as pl, a as Xe, r as _r } from "./web-component-B2TuChTO.js";
1
+ import { c as Ga, _ as ca, R as ga, p as pl, a as Xe, r as _r } from "./web-component-Dvo9wIUB.js";
2
2
  var za = {}, $a = {}, Qe, Wa;
3
3
  function W() {
4
4
  if (Wa) return Qe;
@@ -1,4 +1,4 @@
1
- import { P as n } from "./web-component-B2TuChTO.js";
1
+ import { P as n } from "./web-component-Dvo9wIUB.js";
2
2
  export {
3
3
  n as PrintDesignerElement
4
4
  };
@@ -498,7 +498,7 @@ __p += '`),zr&&(gt+=`' +
498
498
  function print() { __p += __j.call(arguments, '') }
499
499
  `:`;
500
500
  `)+gt+`return __p
501
- }`;var Sr=H9(function(){return hr(Be,jt+"return "+gt).apply(r,Me)});if(Sr.source=gt,I3(Sr))throw Sr;return Sr}function G5e(h){return ln(h).toLowerCase()}function W5e(h){return ln(h).toUpperCase()}function X5e(h,v,C){if(h=ln(h),h&&(C||v===r))return ga(h);if(!h||!(v=Ro(v)))return h;var X=Lo(h),ce=Lo(v),Be=Wu(X,ce),Me=Xu(X,ce)+1;return Bs(X,Be,Me).join("")}function Y5e(h,v,C){if(h=ln(h),h&&(C||v===r))return h.slice(0,oA(h)+1);if(!h||!(v=Ro(v)))return h;var X=Lo(h),ce=Xu(X,Lo(v))+1;return Bs(X,0,ce).join("")}function Z5e(h,v,C){if(h=ln(h),h&&(C||v===r))return h.replace(ri,"");if(!h||!(v=Ro(v)))return h;var X=Lo(h),ce=Wu(X,Lo(v));return Bs(X,ce).join("")}function J5e(h,v){var C=K,X=P;if(Xn(v)){var ce="separator"in v?v.separator:ce;C="length"in v?xr(v.length):C,X="omission"in v?Ro(v.omission):X}h=ln(h);var Be=h.length;if(za(h)){var Me=Lo(h);Be=Me.length}if(C>=Be)return h;var ze=C-iA(X);if(ze<1)return X;var Ye=Me?Bs(Me,0,ze).join(""):h.slice(0,ze);if(ce===r)return Ye+X;if(Me&&(ze+=Ye.length-ze),F3(ce)){if(h.slice(ze).search(ce)){var At,lt=Ye;for(ce.global||(ce=Rl(ce.source,ln(Io.exec(ce))+"g")),ce.lastIndex=0;At=ce.exec(lt);)var gt=At.index;Ye=Ye.slice(0,gt===r?ze:gt)}}else if(h.indexOf(Ro(ce),ze)!=ze){var St=Ye.lastIndexOf(ce);St>-1&&(Ye=Ye.slice(0,St))}return Ye+X}function _5e(h){return h=ln(h),h&&Pr.test(h)?h.replace(tr,Dl):h}var $5e=Bh(function(h,v,C){return h+(C?" ":"")+v.toUpperCase()}),k3=zH("toUpperCase");function Q9(h,v,C){return h=ln(h),v=C?r:v,v===r?Ju(h)?ZA(h):Re(h):h.match(v)||[]}var H9=wr(function(h,v){try{return Ki(h,r,v)}catch(C){return I3(C)?C:new zt(C)}}),exe=Zl(function(h,v){return Gi(v,function(C){C=nl(C),Bt(h,C,O3(h[C],h))}),h});function txe(h){var v=h==null?0:h.length,C=Jt();return h=v?_r(h,function(X){if(typeof X[1]!="function")throw new Di(a);return[C(X[0]),X[1]]}):[],wr(function(X){for(var ce=-1;++ce<v;){var Be=h[ce];if(Ki(Be[0],this,X))return Ki(Be[1],this,X)}})}function rxe(h){return Wr(yt(h,c))}function N3(h){return function(){return h}}function nxe(h,v){return h==null||h!==h?v:h}var ixe=jH(),oxe=jH(!0);function Oa(h){return h}function U3(h){return Tf(typeof h=="function"?h:yt(h,c))}function axe(h){return z1(yt(h,c))}function sxe(h,v){return ph(h,yt(v,c))}var Axe=wr(function(h,v){return function(C){return jl(C,h,v)}}),lxe=wr(function(h,v){return function(C){return jl(h,C,v)}});function M3(h,v,C){var X=to(v),ce=oi(v,X);C==null&&!(Xn(v)&&(ce.length||!X.length))&&(C=v,v=h,h=this,ce=oi(v,to(v)));var Be=!(Xn(C)&&"chain"in C)||!!C.chain,Me=_l(h);return Gi(ce,function(ze){var Ye=v[ze];h[ze]=Ye,Me&&(h.prototype[ze]=function(){var At=this.__chain__;if(Be||At){var lt=h(this.__wrapped__),gt=lt.__actions__=Ea(this.__actions__);return gt.push({func:Ye,args:arguments,thisArg:h}),lt.__chain__=At,lt}return Ye.apply(h,ha([this.value()],arguments))})}),h}function uxe(){return ni._===this&&(ni._=Kn),this}function D3(){}function cxe(h){return h=xr(h),wr(function(v){return V1(v,h)})}var fxe=h3(_r),dxe=h3(Ku),hxe=h3(U);function z9(h){return w3(h)?sr(nl(h)):K1(h)}function gxe(h){return function(v){return h==null?r:Wn(h,v)}}var pxe=KH(),vxe=KH(!0);function R3(){return[]}function Q3(){return!1}function mxe(){return{}}function yxe(){return""}function bxe(){return!0}function wxe(h,v){if(h=xr(h),h<1||h>oe)return[];var C=Y,X=eo(h,Y);v=Jt(v),h-=Y;for(var ce=Ui(X,v);++C<h;)v(C);return ce}function xxe(h){return mr(h)?_r(h,nl):Xa(h)?[h]:Ea(s9(ln(h)))}function Bxe(h){var v=++ma;return ln(h)+v}var Exe=$1(function(h,v){return h+v},0),Cxe=g3("ceil"),Sxe=$1(function(h,v){return h/v},1),Oxe=g3("floor");function Txe(h){return h&&h.length?Fn(h,Oa,ai):r}function Ixe(h,v){return h&&h.length?Fn(h,Jt(v,2),ai):r}function Fxe(h){return ur(h,Oa)}function Pxe(h,v){return ur(h,Jt(v,2))}function Lxe(h){return h&&h.length?Fn(h,Oa,Kl):r}function kxe(h,v){return h&&h.length?Fn(h,Jt(v,2),Kl):r}var Nxe=$1(function(h,v){return h*v},1),Uxe=g3("round"),Mxe=$1(function(h,v){return h-v},0);function Dxe(h){return h&&h.length?Dn(h,Oa):0}function Rxe(h,v){return h&&h.length?Dn(h,Jt(v,2)):0}return me.after=a2e,me.ary=m9,me.assign=W2e,me.assignIn=L9,me.assignInWith=fy,me.assignWith=X2e,me.at=Y2e,me.before=y9,me.bind=O3,me.bindAll=exe,me.bindKey=b9,me.castArray=m2e,me.chain=g9,me.chunk=Obe,me.compact=Tbe,me.concat=Ibe,me.cond=txe,me.conforms=rxe,me.constant=N3,me.countBy=Dwe,me.create=Z2e,me.curry=w9,me.curryRight=x9,me.debounce=B9,me.defaults=J2e,me.defaultsDeep=_2e,me.defer=s2e,me.delay=A2e,me.difference=Fbe,me.differenceBy=Pbe,me.differenceWith=Lbe,me.drop=kbe,me.dropRight=Nbe,me.dropRightWhile=Ube,me.dropWhile=Mbe,me.fill=Dbe,me.filter=Qwe,me.flatMap=Vwe,me.flatMapDeep=jwe,me.flatMapDepth=qwe,me.flatten=c9,me.flattenDeep=Rbe,me.flattenDepth=Qbe,me.flip=l2e,me.flow=ixe,me.flowRight=oxe,me.fromPairs=Hbe,me.functions=o5e,me.functionsIn=a5e,me.groupBy=Kwe,me.initial=Vbe,me.intersection=jbe,me.intersectionBy=qbe,me.intersectionWith=Kbe,me.invert=A5e,me.invertBy=l5e,me.invokeMap=Wwe,me.iteratee=U3,me.keyBy=Xwe,me.keys=to,me.keysIn=Sa,me.map=ay,me.mapKeys=c5e,me.mapValues=f5e,me.matches=axe,me.matchesProperty=sxe,me.memoize=Ay,me.merge=d5e,me.mergeWith=k9,me.method=Axe,me.methodOf=lxe,me.mixin=M3,me.negate=ly,me.nthArg=cxe,me.omit=h5e,me.omitBy=g5e,me.once=u2e,me.orderBy=Ywe,me.over=fxe,me.overArgs=c2e,me.overEvery=dxe,me.overSome=hxe,me.partial=T3,me.partialRight=E9,me.partition=Zwe,me.pick=p5e,me.pickBy=N9,me.property=z9,me.propertyOf=gxe,me.pull=Ybe,me.pullAll=d9,me.pullAllBy=Zbe,me.pullAllWith=Jbe,me.pullAt=_be,me.range=pxe,me.rangeRight=vxe,me.rearg=f2e,me.reject=$we,me.remove=$be,me.rest=d2e,me.reverse=C3,me.sampleSize=t2e,me.set=m5e,me.setWith=y5e,me.shuffle=r2e,me.slice=ewe,me.sortBy=o2e,me.sortedUniq=swe,me.sortedUniqBy=Awe,me.split=V5e,me.spread=h2e,me.tail=lwe,me.take=uwe,me.takeRight=cwe,me.takeRightWhile=fwe,me.takeWhile=dwe,me.tap=Twe,me.throttle=g2e,me.thru=oy,me.toArray=I9,me.toPairs=U9,me.toPairsIn=M9,me.toPath=xxe,me.toPlainObject=P9,me.transform=b5e,me.unary=p2e,me.union=hwe,me.unionBy=gwe,me.unionWith=pwe,me.uniq=vwe,me.uniqBy=mwe,me.uniqWith=ywe,me.unset=w5e,me.unzip=S3,me.unzipWith=h9,me.update=x5e,me.updateWith=B5e,me.values=Sh,me.valuesIn=E5e,me.without=bwe,me.words=Q9,me.wrap=v2e,me.xor=wwe,me.xorBy=xwe,me.xorWith=Bwe,me.zip=Ewe,me.zipObject=Cwe,me.zipObjectDeep=Swe,me.zipWith=Owe,me.entries=U9,me.entriesIn=M9,me.extend=L9,me.extendWith=fy,M3(me,me),me.add=Exe,me.attempt=H9,me.camelCase=T5e,me.capitalize=D9,me.ceil=Cxe,me.clamp=C5e,me.clone=y2e,me.cloneDeep=w2e,me.cloneDeepWith=x2e,me.cloneWith=b2e,me.conformsTo=B2e,me.deburr=R9,me.defaultTo=nxe,me.divide=Sxe,me.endsWith=I5e,me.eq=vA,me.escape=F5e,me.escapeRegExp=P5e,me.every=Rwe,me.find=Hwe,me.findIndex=l9,me.findKey=$2e,me.findLast=zwe,me.findLastIndex=u9,me.findLastKey=e5e,me.floor=Oxe,me.forEach=p9,me.forEachRight=v9,me.forIn=t5e,me.forInRight=r5e,me.forOwn=n5e,me.forOwnRight=i5e,me.get=P3,me.gt=E2e,me.gte=C2e,me.has=s5e,me.hasIn=L3,me.head=f9,me.identity=Oa,me.includes=Gwe,me.indexOf=zbe,me.inRange=S5e,me.invoke=u5e,me.isArguments=Df,me.isArray=mr,me.isArrayBuffer=S2e,me.isArrayLike=Ca,me.isArrayLikeObject=yi,me.isBoolean=O2e,me.isBuffer=uc,me.isDate=T2e,me.isElement=I2e,me.isEmpty=F2e,me.isEqual=P2e,me.isEqualWith=L2e,me.isError=I3,me.isFinite=k2e,me.isFunction=_l,me.isInteger=C9,me.isLength=uy,me.isMap=S9,me.isMatch=N2e,me.isMatchWith=U2e,me.isNaN=M2e,me.isNative=D2e,me.isNil=Q2e,me.isNull=R2e,me.isNumber=O9,me.isObject=Xn,me.isObjectLike=si,me.isPlainObject=qp,me.isRegExp=F3,me.isSafeInteger=H2e,me.isSet=T9,me.isString=cy,me.isSymbol=Xa,me.isTypedArray=Ch,me.isUndefined=z2e,me.isWeakMap=V2e,me.isWeakSet=j2e,me.join=Gbe,me.kebabCase=L5e,me.last=Es,me.lastIndexOf=Wbe,me.lowerCase=k5e,me.lowerFirst=N5e,me.lt=q2e,me.lte=K2e,me.max=Txe,me.maxBy=Ixe,me.mean=Fxe,me.meanBy=Pxe,me.min=Lxe,me.minBy=kxe,me.stubArray=R3,me.stubFalse=Q3,me.stubObject=mxe,me.stubString=yxe,me.stubTrue=bxe,me.multiply=Nxe,me.nth=Xbe,me.noConflict=uxe,me.noop=D3,me.now=sy,me.pad=U5e,me.padEnd=M5e,me.padStart=D5e,me.parseInt=R5e,me.random=O5e,me.reduce=Jwe,me.reduceRight=_we,me.repeat=Q5e,me.replace=H5e,me.result=v5e,me.round=Uxe,me.runInContext=Ge,me.sample=e2e,me.size=n2e,me.snakeCase=z5e,me.some=i2e,me.sortedIndex=twe,me.sortedIndexBy=rwe,me.sortedIndexOf=nwe,me.sortedLastIndex=iwe,me.sortedLastIndexBy=owe,me.sortedLastIndexOf=awe,me.startCase=j5e,me.startsWith=q5e,me.subtract=Mxe,me.sum=Dxe,me.sumBy=Rxe,me.template=K5e,me.times=wxe,me.toFinite=$l,me.toInteger=xr,me.toLength=F9,me.toLower=G5e,me.toNumber=Cs,me.toSafeInteger=G2e,me.toString=ln,me.toUpper=W5e,me.trim=X5e,me.trimEnd=Y5e,me.trimStart=Z5e,me.truncate=J5e,me.unescape=_5e,me.uniqueId=Bxe,me.upperCase=$5e,me.upperFirst=k3,me.each=p9,me.eachRight=v9,me.first=f9,M3(me,(function(){var h={};return Rn(me,function(v,C){Mr.call(me.prototype,C)||(h[C]=v)}),h})(),{chain:!1}),me.VERSION=n,Gi(["bind","bindKey","curry","curryRight","partial","partialRight"],function(h){me[h].placeholder=me}),Gi(["drop","take"],function(h,v){Or.prototype[h]=function(C){C=C===r?1:mi(xr(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,Y),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==B||C==te;Or.prototype[h]=function(ce){var Be=this.clone();return Be.__iteratees__.push({iteratee:Jt(ce,3),type:C}),Be.__filtered__=Be.__filtered__||X,Be}}),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=wr(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(ly(Jt(h)))},Or.prototype.slice=function(h,v){h=xr(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=xr(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(Y)},Rn(Or.prototype,function(h,v){var C=/^(?:filter|find|map|reject)|While$/.test(v),X=/^(?:head|last)$/.test(v),ce=me[X?"take"+(v=="last"?"Right":""):v],Be=X||/^find/.test(v);ce&&(me.prototype[v]=function(){var Me=this.__wrapped__,ze=X?[1]:arguments,Ye=Me instanceof Or,At=ze[0],lt=Ye||mr(Me),gt=function(Lr){var zr=ce.apply(me,ha([Lr],ze));return X&&St?zr[0]:zr};lt&&C&&typeof At=="function"&&At.length!=1&&(Ye=lt=!1);var St=this.__chain__,jt=!!this.__actions__.length,rr=Be&&!St,Sr=Ye&&!jt;if(!Be&&lt){Me=Sr?Me:new Or(this);var nr=h.apply(Me,ze);return nr.__actions__.push({func:oy,args:[gt],thisArg:r}),new $o(nr,St)}return rr&&Sr?h.apply(this,ze):(nr=this.thru(gt),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);me.prototype[h]=function(){var ce=arguments;if(X&&!this.__chain__){var Be=this.value();return v.apply(mr(Be)?Be:[],ce)}return this[C](function(Me){return v.apply(mr(Me)?Me:[],ce)})}}),Rn(Or.prototype,function(h,v){var C=me[v];if(C){var X=C.name+"";Mr.call(ac,X)||(ac[X]=[]),ac[X].push({name:v,func:C})}}),ac[_1(r,m).name]=[{name:"wrapper",func:r}],Or.prototype.clone=k1,Or.prototype.reverse=r3,Or.prototype.value=ch,me.prototype.at=Iwe,me.prototype.chain=Fwe,me.prototype.commit=Pwe,me.prototype.next=Lwe,me.prototype.plant=Nwe,me.prototype.reverse=Uwe,me.prototype.toJSON=me.prototype.valueOf=me.prototype.value=Mwe,me.prototype.first=me.prototype.head,JA&&(me.prototype[JA]=kwe),me}),No=aA();co?((co.exports=No)._=No,da._=No):ni._=No}).call(fse)})(Vg,Vg.exports)),Vg.exports}var hse=dse();const gse={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function pse(t,e){return Ee(),Pe("svg",gse,[...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 vse=Lt({name:"material-symbols-keyboard",render:pse}),mse={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function yse(t,e){return Ee(),Pe("svg",mse,[...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 bse=Lt({name:"material-symbols-info",render:yse}),Ex={name:"vue-print-designer",version:"0.9.87",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"}},wse={class:"bg-white rounded-lg shadow-xl w-[700px] max-w-full h-[500px] flex overflow-hidden"},xse={class:"w-48 bg-gray-50 border-r border-gray-200 flex flex-col"},Bse={class:"h-[60px] flex items-center px-4 border-b border-gray-200"},Ese={class:"text-lg font-semibold text-gray-800"},Cse={class:"flex-1 py-2"},Sse={class:"flex-1 flex flex-col min-w-0"},Ose={class:"h-[60px] flex items-center justify-between px-4 border-b border-gray-200"},Tse={class:"text-lg font-semibold text-gray-800"},Ise={class:"flex-1 overflow-y-auto p-6"},Fse={key:0,class:"space-y-6"},Pse={class:"grid grid-cols-1 gap-6 text-sm"},Lse={class:"font-medium text-gray-900 mb-3 border-b pb-1"},kse={class:"space-y-2 text-gray-600"},Nse={class:"flex justify-between items-center"},Use={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Mse={class:"flex justify-between items-center"},Dse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Rse={class:"flex justify-between items-center"},Qse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Hse={class:"flex justify-between items-center"},zse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Vse={class:"flex justify-between items-center"},jse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},qse={class:"flex justify-between items-center"},Kse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Gse={class:"flex justify-between items-center"},Wse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Xse={class:"flex justify-between items-center"},Yse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Zse={class:"flex justify-between items-center"},Jse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},_se={class:"flex justify-between items-center"},$se={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},eAe={class:"flex justify-between items-center"},tAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},rAe={class:"flex justify-between items-center"},nAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},iAe={class:"flex justify-between items-center"},oAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},aAe={class:"font-medium text-gray-900 mb-3 border-b pb-1"},sAe={class:"space-y-2 text-gray-600"},AAe={class:"flex justify-between items-center"},lAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},uAe={class:"flex justify-between items-center"},cAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},fAe={class:"flex justify-between items-center"},dAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},hAe={class:"flex justify-between items-center"},gAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},pAe={class:"flex justify-between items-center"},vAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},mAe={class:"flex justify-between items-center"},yAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},bAe={class:"flex justify-between items-center"},wAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},xAe={class:"flex justify-between items-center"},BAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},EAe={class:"flex justify-between items-center"},CAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},SAe={class:"flex justify-between items-center"},OAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},TAe={class:"font-medium text-gray-900 mb-3 border-b pb-1"},IAe={class:"space-y-2 text-gray-600"},FAe={class:"flex justify-between items-center"},PAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},LAe={class:"flex justify-between items-center"},kAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},NAe={class:"flex justify-between items-center"},UAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},MAe={class:"flex justify-between items-center"},DAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},RAe={key:1,class:"space-y-6"},QAe={class:"text-center mb-8"},HAe={class:"text-xl font-bold text-gray-800"},zAe={class:"mt-4 flex justify-center"},VAe=["title"],jAe={class:"text-gray-600"},qAe={class:"font-medium text-gray-900 mb-3 border-b pb-1"},KAe={class:"bg-gray-50 rounded-lg border border-gray-200 overflow-hidden"},GAe={class:"w-full text-sm text-left"},WAe={class:"bg-gray-100 text-gray-700 font-medium"},XAe={class:"px-4 py-2 border-b"},YAe={class:"px-4 py-2 border-b"},ZAe={class:"divide-y divide-gray-200"},JAe={class:"px-4 py-2 text-gray-700 font-mono"},_Ae={class:"px-4 py-2 text-gray-500"},$Ae={class:"p-4 border-t border-gray-200 bg-gray-50 flex justify-end rounded-br-lg"},ele=Tr({__name:"HelpModal",props:{show:{type:Boolean}},emits:["update:show"],setup(t,{emit:e}){const r=t,n=e,{t:i}=zn(),o=un(),a=ui("modal-container",Xe(null)),s=Xe("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(Ex.dependencies).map(([f,g])=>({name:f,version:g})),c=Ex.version,d=hse.startCase(Ex.name);return(f,g)=>(Ee(),Nr(Ns,{to:Q(a)||"body"},[t.show?(Ee(),Pe("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",wse,[F("div",xse,[F("div",Bse,[F("h3",Ese,pe(Q(i)("help.title")),1)]),F("div",Cse,[F("button",{onClick:g[0]||(g[0]=p=>s.value="shortcuts"),class:Ct(["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(Q(vse),{class:"w-5 h-5"}),Ht(" "+pe(Q(i)("shortcuts.title")),1)],2),F("button",{onClick:g[1]||(g[1]=p=>s.value="about"),class:Ct(["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(Q(bse),{class:"w-5 h-5"}),Ht(" "+pe(Q(i)("help.about")),1)],2)])]),F("div",Sse,[F("div",Ose,[F("h3",Tse,pe(s.value==="shortcuts"?Q(i)("shortcuts.keyboardShortcuts"):Q(i)("help.aboutProject",{name:Q(d)})),1),F("button",{onClick:A,class:"p-1 hover:bg-gray-100 rounded-full transition-colors text-gray-500"},[et(Q(qc),{class:"w-4 h-4"})])]),F("div",Ise,[s.value==="shortcuts"?(Ee(),Pe("div",Fse,[F("div",Pse,[F("div",null,[F("h4",Lse,pe(Q(i)("shortcuts.general")),1),F("ul",kse,[F("li",Nse,[F("span",null,pe(Q(i)("common.save")),1),g[2]||(g[2]=Ht()),F("kbd",Use,pe(Q(Jr)(["Ctrl","S"])),1)]),F("li",Mse,[F("span",null,pe(Q(i)("shortcuts.saveAsTemplate")),1),g[3]||(g[3]=Ht()),F("kbd",Dse,pe(Q(Jr)(["Ctrl","Shift","S"])),1)]),F("li",Rse,[F("span",null,pe(Q(i)("editor.print")),1),g[4]||(g[4]=Ht()),F("kbd",Qse,pe(Q(Jr)(["Ctrl","P"])),1)]),F("li",Hse,[F("span",null,pe(Q(i)("editor.exportPdf")),1),g[5]||(g[5]=Ht()),F("kbd",zse,pe(Q(Jr)(["Ctrl","Shift","E"])),1)]),F("li",Vse,[F("span",null,pe(Q(i)("editor.preview")),1),g[6]||(g[6]=Ht()),F("kbd",jse,pe(Q(Jr)(["Ctrl","Shift","P"])),1)]),F("li",qse,[F("span",null,pe(Q(i)("editor.viewJson")),1),g[7]||(g[7]=Ht()),F("kbd",Kse,pe(Q(Jr)(["Ctrl","Shift","J"])),1)]),F("li",Gse,[F("span",null,pe(Q(i)("shortcuts.newTemplate")),1),g[8]||(g[8]=Ht()),F("kbd",Wse,pe(Q(Jr)(["Ctrl","Alt","N"])),1)]),F("li",Xse,[F("span",null,pe(Q(i)("shortcuts.openSettings")),1),g[9]||(g[9]=Ht()),F("kbd",Yse,pe(Q(Jr)(["Ctrl",","])),1)]),F("li",Zse,[F("span",null,pe(Q(i)("common.undo")),1),g[10]||(g[10]=Ht()),F("kbd",Jse,pe(Q(Jr)(["Ctrl","Z"])),1)]),F("li",_se,[F("span",null,pe(Q(i)("common.redo")),1),g[11]||(g[11]=Ht()),F("kbd",$se,pe(Q(Jr)(["Ctrl","Y"])),1)]),F("li",eAe,[F("span",null,pe(Q(i)("shortcuts.openHelp")),1),g[12]||(g[12]=Ht()),F("kbd",tAe,pe(Q(Jr)(["Ctrl","H"])),1)]),F("li",rAe,[F("span",null,pe(Q(i)("shortcuts.zoom")),1),g[13]||(g[13]=Ht()),F("kbd",nAe,pe(Q(Jr)(["Ctrl","Wheel"])),1)]),F("li",iAe,[F("span",null,pe(Q(i)("shortcuts.closeModal")),1),g[14]||(g[14]=Ht()),F("kbd",oAe,pe(Q(Jr)(["Esc"])),1)])])]),F("div",null,[F("h4",aAe,pe(Q(i)("shortcuts.editing")),1),F("ul",sAe,[F("li",AAe,[F("span",null,pe(Q(i)("common.copy")),1),g[15]||(g[15]=Ht()),F("kbd",lAe,pe(Q(Jr)(["Ctrl","C"])),1)]),F("li",uAe,[F("span",null,pe(Q(i)("common.cut")),1),g[16]||(g[16]=Ht()),F("kbd",cAe,pe(Q(Jr)(["Ctrl","X"])),1)]),F("li",fAe,[F("span",null,pe(Q(i)("common.paste")),1),g[17]||(g[17]=Ht()),F("kbd",dAe,pe(Q(Jr)(["Ctrl","V"])),1)]),F("li",hAe,[F("span",null,pe(Q(i)("common.delete")),1),g[18]||(g[18]=Ht()),F("kbd",gAe,pe(Q(Jr)(["Delete"])),1)]),F("li",pAe,[F("span",null,pe(Q(i)("shortcuts.selectAll")),1),g[19]||(g[19]=Ht()),F("kbd",vAe,pe(Q(Jr)(["Ctrl","A"])),1)]),F("li",mAe,[F("span",null,pe(Q(i)("shortcuts.multiSelect")),1),g[20]||(g[20]=Ht()),F("kbd",yAe,pe(Q(Jr)(["Ctrl","Click"])),1)]),F("li",bAe,[F("span",null,pe(Q(i)("common.lock"))+"/"+pe(Q(i)("common.unlock")),1),g[21]||(g[21]=Ht()),F("kbd",wAe,pe(Q(Jr)(["Ctrl","L"])),1)]),F("li",xAe,[F("span",null,pe(Q(i)("shortcuts.customEditSave")),1),g[22]||(g[22]=Ht()),F("kbd",BAe,pe(Q(Jr)(["Ctrl","S"])),1)]),F("li",EAe,[F("span",null,pe(Q(i)("shortcuts.customEditSaveAs")),1),g[23]||(g[23]=Ht()),F("kbd",CAe,pe(Q(Jr)(["Ctrl","Shift","S"])),1)]),F("li",SAe,[F("span",null,pe(Q(i)("shortcuts.customEditExit")),1),g[24]||(g[24]=Ht()),F("kbd",OAe,pe(Q(Jr)(["Ctrl","Q"])),1)])])]),F("div",null,[F("h4",TAe,pe(Q(i)("shortcuts.manipulation")),1),F("ul",IAe,[F("li",FAe,[F("span",null,pe(Q(i)("shortcuts.move")),1),g[25]||(g[25]=Ht()),F("kbd",PAe,pe(Q(i)("shortcuts.arrow")),1)]),F("li",LAe,[F("span",null,pe(Q(i)("shortcuts.fastMove")),1),g[26]||(g[26]=Ht()),F("kbd",kAe,pe(Q(Jr)(["Shift",Q(i)("shortcuts.arrow")])),1)]),F("li",NAe,[F("span",null,pe(Q(i)("shortcuts.snapRotate")),1),g[27]||(g[27]=Ht()),F("kbd",UAe,pe(Q(Jr)(["Shift",Q(i)("shortcuts.drag")])),1)]),F("li",MAe,[F("span",null,pe(Q(i)("shortcuts.resize")),1),g[28]||(g[28]=Ht()),F("kbd",DAe,pe(Q(Jr)(["Shift",Q(i)("shortcuts.resize")])),1)])])])])])):pt("",!0),s.value==="about"?(Ee(),Pe("div",RAe,[F("div",QAe,[g[32]||(g[32]=F("img",{src:cN,alt:"Vue Print Designer",class:"w-12 h-12 mx-auto mb-2"},null,-1)),F("h2",HAe,pe(Q(d)),1),F("div",zAe,[F("a",{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:Q(i)("help.github")},[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",jAe,pe(Q(i)("help.version"))+" "+pe(Q(c)),1)],8,VAe)])]),F("div",null,[F("h4",qAe,pe(Q(i)("help.dependencies")),1),F("div",KAe,[F("table",GAe,[F("thead",WAe,[F("tr",null,[F("th",XAe,pe(Q(i)("help.package")),1),F("th",YAe,pe(Q(i)("help.version")),1)])]),F("tbody",ZAe,[(Ee(!0),Pe(Mt,null,Yr(Q(u),p=>(Ee(),Pe("tr",{key:p.name,class:"hover:bg-gray-50"},[F("td",JAe,pe(p.name),1),F("td",_Ae,pe(p.version),1)]))),128))])])])])])):pt("",!0)]),F("div",$Ae,[F("button",{onClick:A,class:"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors text-sm"},pe(Q(i)("common.close")),1)])])])])):pt("",!0)],8,["to"]))}}),tle={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function rle(t,e){return Ee(),Pe("svg",tle,[...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 nle=Lt({name:"material-symbols-translate",render:rle}),ile={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ole(t,e){return Ee(),Pe("svg",ile,[...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 ale=Lt({name:"material-symbols-cloud",render:ole}),sle={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Ale(t,e){return Ee(),Pe("svg",sle,[...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 dN=Lt({name:"material-symbols-link",render:Ale}),lle={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ule(t,e){return Ee(),Pe("svg",lle,[...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 hN=Lt({name:"material-symbols-link-off",render:ule}),cle={class:"bg-white rounded-lg shadow-xl w-[700px] max-w-full h-[500px] flex overflow-hidden"},fle={class:"w-48 bg-gray-50 border-r border-gray-200 flex flex-col"},dle={class:"h-[60px] flex items-center px-4 border-b border-gray-200"},hle={class:"text-lg font-semibold text-gray-800"},gle={class:"flex-1 py-2"},ple={class:"flex-1 flex flex-col min-w-0 relative"},vle={class:"h-[60px] flex items-center justify-between px-4 border-b border-gray-200"},mle={class:"text-lg font-semibold text-gray-800"},yle={class:"flex-1 overflow-y-auto p-6"},ble={key:0,class:"space-y-4 text-sm text-gray-700"},wle={class:"mb-2 font-medium text-gray-900"},xle={class:"flex items-center gap-3"},Ble={class:"text-xs text-gray-500 mt-2"},Ele={class:"border-t border-gray-200 pt-4"},Cle={class:"mb-2 font-medium text-gray-900"},Sle={class:"flex flex-wrap gap-2"},Ole=["onClick"],Tle={class:"text-xs text-gray-500 mt-2"},Ile={class:"border-t border-gray-200 pt-4"},Fle={class:"flex items-center justify-between"},Ple={class:"font-medium text-gray-900"},Lle={class:"sr-only"},kle={class:"text-xs text-gray-500 mt-2"},Nle={class:"border-t border-gray-200 pt-4"},Ule={class:"flex items-center justify-between"},Mle={class:"font-medium text-gray-900"},Dle={class:"sr-only"},Rle={class:"text-xs text-gray-500 mt-2"},Qle={class:"border-t border-gray-200 pt-4 space-y-3"},Hle={class:"mb-2 font-medium text-gray-900"},zle={class:"flex items-center gap-3"},Vle=["disabled"],jle=["disabled"],qle={class:"text-xs text-gray-500 mt-2"},Kle={class:"flex items-center justify-between"},Gle={class:"font-medium text-gray-900"},Wle={class:"sr-only"},Xle={class:"text-xs text-gray-500"},Yle={key:1,class:"space-y-4 text-sm text-gray-700"},Zle={class:"mb-2 font-medium text-gray-900"},Jle={class:"flex items-center gap-3"},_le={class:"text-xs text-gray-500 mt-2"},$le={key:2,class:"space-y-4 text-sm text-gray-700"},eue={class:"space-y-2"},tue={class:"font-medium text-gray-900"},rue={class:"text-xs text-gray-500"},nue={class:"grid grid-cols-2 gap-4"},iue={class:"flex flex-col gap-1 col-span-2"},oue={class:"text-xs text-gray-500"},aue=["placeholder"],sue={class:"flex flex-col gap-1 col-span-2"},Aue={class:"text-xs text-gray-500"},lue={class:"rounded bg-gray-100 px-3 py-2 text-xs text-gray-600 break-all"},uue={class:"font-medium text-gray-700"},cue={class:"w-full pt-2"},fue=["disabled"],due={key:0,class:"mt-2 flex items-center justify-between text-xs text-gray-500"},hue={key:3,class:"space-y-4 text-sm text-gray-700"},gue={class:"space-y-2"},pue={class:"font-medium text-gray-900"},vue={class:"text-xs text-gray-500"},mue={class:"grid grid-cols-2 gap-4"},yue={class:"flex flex-col gap-1 col-span-2"},bue={class:"text-xs text-gray-500"},wue=["placeholder"],xue={class:"flex flex-col gap-1"},Bue={class:"text-xs text-gray-500"},Eue={class:"flex flex-col gap-1"},Cue={class:"text-xs text-gray-500"},Sue={class:"space-y-2 pt-2 border-t border-gray-200"},Oue={class:"font-medium text-gray-900"},Tue={class:"text-xs text-gray-500"},Iue={class:"grid grid-cols-2 gap-4"},Fue={class:"flex flex-col gap-1 col-span-2"},Pue={class:"text-xs text-gray-500"},Lue=["placeholder"],kue={class:"flex flex-col gap-1 col-span-2"},Nue={class:"text-xs text-gray-500"},Uue=["disabled"],Mue={value:""},Due=["value","disabled"],Rue={class:"rounded bg-gray-100 px-3 py-2 text-xs text-gray-600 break-all"},Que={class:"font-medium text-gray-700"},Hue={class:"text-xs text-gray-500"},zue={class:"w-full pt-2"},Vue=["disabled"],jue={key:0,class:"mt-2 flex items-center justify-between text-xs text-gray-500"},que={class:"p-4 border-t border-gray-200 bg-gray-50 flex justify-end rounded-br-lg"},Kue=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}=rP(),l=un(),u=ui("modal-container",Xe(null)),{printMode:c,silentPrint:d,exportImageMerged:f,localSettings:g,remoteSettings:p,localStatus:b,remoteStatus:m,localRetryCount:w,remoteRetryCount:S,remoteClients:E,remoteSelectedClientId:V,localWsUrl:j,remoteWsUrl:T,cancelLocalRetry:L,cancelRemoteRetry:R,connectLocal:K,disconnectLocal:P,connectRemote:I,disconnectRemote:k,fetchRemoteClients:B}=Eg(),q=Xe("basic"),te=Xe(o.value),J=Xe(localStorage.getItem("print-designer-brand-key")||"default"),oe=Xe(localStorage.getItem("print-designer-brand-custom-hex")||"#3b82f6"),se=it(()=>b.value||"disconnected"),ae=it(()=>m.value||"disconnected"),Y=it(()=>w.value||0),D=it(()=>S.value||0),Z=it(()=>E.value||[]),G=it(()=>se.value==="connected"),re=it(()=>ae.value==="connected"),ye=it(()=>se.value==="connecting"),Ce=it(()=>ae.value==="connecting"),we=it(()=>!!g.wsAddress),Fe=it(()=>!!(p.apiBaseUrl&&p.username&&p.password)),Ve=it(()=>G.value?i("settings.status.connected"):i("settings.status.disconnected")),Se=it(()=>re.value?i("settings.status.connected"):i("settings.status.disconnected")),ke=Ue=>Ue==="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=(Ue,Ne=0,Te=255)=>Math.min(Math.max(Ue,Ne),Te),O=(Ue,Ne,Te)=>{const De=Qe=>ie(Math.round(Qe)).toString(16).padStart(2,"0");return`#${De(Ue)}${De(Ne)}${De(Te)}`},ee=(Ue,Ne,Te)=>({r:Ue.r+(Ne.r-Ue.r)*Te,g:Ue.g+(Ne.g-Ue.g)*Te,b:Ue.b+(Ne.b-Ue.b)*Te}),H=Ue=>{const Ne=gg(Ue);if(!Ne)return null;const Te=hg(Ne.h,Ne.s,Ne.v),De={r:255,g:255,b:255},Qe={r:0,g:0,b:0},Tt=ee(Te,De,.92),vt=ee(Te,De,.84),Xt=ee(Te,De,.68),Qt=ee(Te,De,.5),Et=ee(Te,De,.32),Ar=ee(Te,De,.16),Zt=ee(Te,Qe,.12),cn=ee(Te,Qe,.24),Er=ee(Te,Qe,.36),tr=ee(Te,Qe,.5);return{"--brand-50":O(Tt.r,Tt.g,Tt.b),"--brand-100":O(vt.r,vt.g,vt.b),"--brand-200":O(Xt.r,Xt.g,Xt.b),"--brand-300":O(Qt.r,Qt.g,Qt.b),"--brand-400":O(Et.r,Et.g,Et.b),"--brand-500":O(Ar.r,Ar.g,Ar.b),"--brand-600":O(Te.r,Te.g,Te.b),"--brand-700":O(Zt.r,Zt.g,Zt.b),"--brand-800":O(cn.r,cn.g,cn.b),"--brand-900":O(Er.r,Er.g,Er.b),"--brand-950":O(tr.r,tr.g,tr.b)}},W=it(()=>H(oe.value)||{}),N=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:W.value}]),M=Ue=>{const Ne=document.documentElement;Object.entries(Ue).forEach(([Te,De])=>{Ne.style.setProperty(Te,De)}),window.dispatchEvent(new CustomEvent("brand-theme-updated"))},$=Ue=>{localStorage.setItem("print-designer-brand-vars",JSON.stringify(Ue))},ne=Ue=>{const Ne=N.value.find(Te=>Te.key===Ue)||N.value[0];Ne.colors&&(M(Ne.colors),$(Ne.colors),localStorage.setItem("print-designer-brand-key",Ne.key))};(()=>{const Ue=localStorage.getItem("print-designer-brand-vars");if(Ue)try{const Ne=JSON.parse(Ue);Ne&&typeof Ne=="object"&&M(Ne)}catch{}})();const xe=async()=>{try{if(ye.value)return;if(G.value){P();return}await K()}catch(Ue){console.error("Local connection error:",Ue)}},he=async()=>{try{if(Ce.value)return;if(re.value){k();return}await I()}catch(Ue){console.error("Remote connection error:",Ue)}};Yt(te,Ue=>{o.value=Ue,localStorage.setItem("print-designer-language",Ue)}),Yt(o,Ue=>{te.value!==Ue&&(te.value=Ue)}),Yt(a,Ue=>{s(Ue)}),Yt(()=>r.show,Ue=>{l.setDisableGlobalShortcuts(Ue)}),Yt(oe,Ue=>{Ue&&(localStorage.setItem("print-designer-brand-custom-hex",Ue),J.value==="custom"&&ne("custom"))}),Yt(J,Ue=>{ne(Ue)},{immediate:!0}),Yt([q,m],([Ue,Ne])=>{Ue!=="remote"||Ne!=="connected"||B()});const le=()=>{try{n("update:show",!1)}catch(Ue){console.error("Error closing modal:",Ue)}},Oe=Ue=>{try{if(!r.show)return;Ue.key==="Escape"&&(Ue.preventDefault(),le())}catch(Ne){console.error("Error in keydown handler:",Ne)}};return xi(()=>{window.addEventListener("keydown",Oe)}),Bi(()=>{window.removeEventListener("keydown",Oe),r.show&&l.setDisableGlobalShortcuts(!1)}),(Ue,Ne)=>(Ee(),Nr(Ns,{to:Q(u)||"body"},[t.show?(Ee(),Pe("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",cle,[F("div",fle,[F("div",dle,[F("h3",hle,pe(Q(i)("settings.title")),1)]),F("div",gle,[F("button",{onClick:Ne[0]||(Ne[0]=Te=>q.value="basic"),class:Ct(["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(Q(J0),{class:"w-5 h-5"}),Ht(" "+pe(Q(i)("settings.basic")),1)],2),F("button",{onClick:Ne[1]||(Ne[1]=Te=>q.value="language"),class:Ct(["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(Q(nle),{class:"w-5 h-5"}),Ht(" "+pe(Q(i)("settings.language")),1)],2),F("button",{onClick:Ne[2]||(Ne[2]=Te=>q.value="local"),class:Ct(["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(Q(a5),{class:"w-5 h-5"}),Ht(" "+pe(Q(i)("settings.localConnection")),1)],2),F("button",{onClick:Ne[3]||(Ne[3]=Te=>q.value="remote"),class:Ct(["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(Q(ale),{class:"w-5 h-5"}),Ht(" "+pe(Q(i)("settings.remoteConnection")),1)],2)])]),F("div",ple,[F("div",vle,[F("h3",mle,pe(q.value==="basic"?Q(i)("settings.basic"):q.value==="language"?Q(i)("settings.language"):q.value==="local"?Q(i)("settings.localConnection"):Q(i)("settings.remoteConnection")),1),F("button",{onClick:le,class:"p-1 hover:bg-gray-100 rounded-full transition-colors text-gray-500"},[et(Q(qc),{class:"w-4 h-4"})])]),F("div",yle,[q.value==="basic"?(Ee(),Pe("div",ble,[F("div",null,[F("div",wle,pe(Q(i)("settings.theme")),1),F("div",xle,[F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",Q(a)==="system"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"system","onUpdate:modelValue":Ne[4]||(Ne[4]=Te=>kr(a)?a.value=Te:null)},null,512),[[su,Q(a)]]),F("span",null,pe(Q(i)("settings.themeSystem")),1)],2),F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",Q(a)==="light"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"light","onUpdate:modelValue":Ne[5]||(Ne[5]=Te=>kr(a)?a.value=Te:null)},null,512),[[su,Q(a)]]),F("span",null,pe(Q(i)("settings.themeLight")),1)],2),F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",Q(a)==="dark"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"dark","onUpdate:modelValue":Ne[6]||(Ne[6]=Te=>kr(a)?a.value=Te:null)},null,512),[[su,Q(a)]]),F("span",null,pe(Q(i)("settings.themeDark")),1)],2)]),F("p",Ble,pe(Q(i)("settings.themeDesc")),1)]),F("div",Ele,[F("div",Cle,pe(Q(i)("settings.themeColor")),1),F("div",Sle,[(Ee(!0),Pe(Mt,null,Yr(N.value.filter(Te=>Te.key!=="custom"),Te=>(Ee(),Pe("button",{key:Te.key,type:"button",class:Ct(["flex items-center gap-2 px-3 py-2 border rounded text-xs transition-colors",J.value===Te.key?"border-blue-600 text-blue-700":"border-gray-300 text-gray-700 hover:bg-gray-50"]),onClick:De=>J.value=Te.key},[F("span",{class:"inline-block w-3.5 h-3.5 rounded-full",style:wt({backgroundColor:Te.colors["--brand-600"]})},null,4),F("span",null,pe(Q(i)(Te.labelKey)),1)],10,Ole))),128)),et(Pd,{"model-value":oe.value,"onUpdate:modelValue":Ne[8]||(Ne[8]=Te=>{Te&&(oe.value=Te,J.value="custom")}),"default-color":oe.value,"teleport-to-body":!0},{trigger:Al(({color:Te,open:De})=>[F("button",{type:"button",class:Ct(["flex items-center gap-2 px-3 py-2 border rounded text-xs transition-colors",J.value==="custom"?"border-blue-600 text-blue-700":"border-gray-300 text-gray-700 hover:bg-gray-50"]),onClick:Ne[7]||(Ne[7]=Qe=>J.value="custom")},[F("span",{class:Ct(["inline-block w-3.5 h-3.5 rounded-full border border-gray-200",{"ring-2 ring-blue-500 ring-offset-1":De}]),style:wt({backgroundColor:Te||oe.value})},null,6),F("span",null,pe(Q(i)("settings.themePresetCustom")),1)],2)]),_:1},8,["model-value","default-color"])]),F("p",Tle,pe(Q(i)("settings.themeColorDesc")),1)]),F("div",Ile,[F("div",Fle,[F("div",Ple,pe(Q(i)("settings.autoSave")),1),F("button",{onClick:Ne[9]||(Ne[9]=Te=>A.value=!Q(A)),class:Ct(["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",Q(A)?"bg-blue-600":"bg-gray-200"])},[F("span",Lle,pe(Q(i)("settings.autoSave")),1),F("span",{"aria-hidden":"true",class:Ct(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Q(A)?"translate-x-5":"translate-x-0"])},null,2)],2)]),F("p",kle,pe(Q(i)("settings.autoSaveDesc")),1)]),F("div",Nle,[F("div",Ule,[F("div",Mle,pe(Q(i)("settings.exportImageMerged")),1),F("button",{onClick:Ne[10]||(Ne[10]=Te=>f.value=!Q(f)),class:Ct(["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",Q(f)?"bg-blue-600":"bg-gray-200"])},[F("span",Dle,pe(Q(i)("settings.exportImageMerged")),1),F("span",{"aria-hidden":"true",class:Ct(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Q(f)?"translate-x-5":"translate-x-0"])},null,2)],2)]),F("p",Rle,pe(Q(i)("settings.exportImageMergedDesc")),1)]),F("div",Qle,[F("div",null,[F("div",Hle,pe(Q(i)("settings.printMode")),1),F("div",zle,[F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",Q(c)==="browser"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"browser","onUpdate:modelValue":Ne[11]||(Ne[11]=Te=>kr(c)?c.value=Te:null)},null,512),[[su,Q(c)]]),F("span",null,pe(Q(i)("settings.printModeBrowser")),1)],2),F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",Q(c)==="local"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"local","onUpdate:modelValue":Ne[12]||(Ne[12]=Te=>kr(c)?c.value=Te:null),disabled:!G.value},null,8,Vle),[[su,Q(c)]]),F("span",null,pe(Q(i)("settings.printModeLocal")),1)],2),F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",Q(c)==="remote"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"remote","onUpdate:modelValue":Ne[13]||(Ne[13]=Te=>kr(c)?c.value=Te:null),disabled:!re.value},null,8,jle),[[su,Q(c)]]),F("span",null,pe(Q(i)("settings.printModeRemote")),1)],2)]),F("p",qle,pe(Q(i)("settings.printModeDesc")),1)]),F("div",Kle,[F("div",Gle,pe(Q(i)("settings.silentPrint")),1),F("button",{onClick:Ne[14]||(Ne[14]=Te=>d.value=!Q(d)),class:Ct(["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",Q(d)?"bg-blue-600":"bg-gray-200"])},[F("span",Wle,pe(Q(i)("settings.silentPrint")),1),F("span",{"aria-hidden":"true",class:Ct(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Q(d)?"translate-x-5":"translate-x-0"])},null,2)],2)]),F("p",Xle,pe(Q(i)("settings.silentPrintDesc")),1)])])):pt("",!0),q.value==="language"?(Ee(),Pe("div",Yle,[F("div",Zle,pe(Q(i)("settings.selectLanguage")),1),F("div",Jle,[F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",te.value==="zh"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"zh","onUpdate:modelValue":Ne[15]||(Ne[15]=Te=>te.value=Te)},null,512),[[su,te.value]]),F("span",null,pe(Q(i)("settings.zhLabel")),1)],2),F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",te.value==="en"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"en","onUpdate:modelValue":Ne[16]||(Ne[16]=Te=>te.value=Te)},null,512),[[su,te.value]]),F("span",null,pe(Q(i)("settings.enLabel")),1)],2)]),F("p",_le,pe(Q(i)("settings.languageDesc")),1)])):pt("",!0),q.value==="local"?(Ee(),Pe("div",$le,[F("div",eue,[F("div",tue,pe(Q(i)("settings.localClientTitle")),1),F("p",rue,pe(Q(i)("settings.localClientDesc")),1)]),F("div",nue,[F("label",iue,[F("span",oue,pe(Q(i)("settings.wsAddress")),1),cr(F("input",{"onUpdate:modelValue":Ne[17]||(Ne[17]=Te=>Q(g).wsAddress=Te),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600",placeholder:Q(i)("settings.localWsAddressPlaceholder")},null,8,aue),[[bn,Q(g).wsAddress]])]),F("label",sue,[F("span",Aue,pe(Q(i)("settings.secretKey")),1),cr(F("input",{"onUpdate:modelValue":Ne[18]||(Ne[18]=Te=>Q(g).secretKey=Te),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600"},null,512),[[bn,Q(g).secretKey]])])]),F("div",lue,[F("span",uue,pe(Q(i)("settings.connectionUrl"))+": ",1),F("span",null,pe(Q(j)),1)]),F("div",cue,[F("button",{onClick:xe,disabled:ye.value||Y.value>0||!G.value&&!we.value,class:Ct(["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",ke(se.value)])},[G.value?(Ee(),Nr(Q(dN),{key:0,class:"w-4 h-4"})):(Ee(),Nr(Q(hN),{key:1,class:"w-4 h-4"})),F("span",null,pe(Ve.value),1)],10,fue),Y.value>0&&!G.value?(Ee(),Pe("div",due,[F("span",null,pe(Q(i)("settings.retrying",{count:Y.value,max:10})),1),F("button",{onClick:Ne[19]||(Ne[19]=(...Te)=>Q(L)&&Q(L)(...Te)),class:"text-blue-600 hover:text-blue-700"},pe(Q(i)("settings.cancelRetry")),1)])):pt("",!0)])])):pt("",!0),q.value==="remote"?(Ee(),Pe("div",hue,[F("div",gue,[F("div",pue,pe(Q(i)("settings.remoteLoginTitle")),1),F("p",vue,pe(Q(i)("settings.remoteLoginDesc")),1)]),F("div",mue,[F("label",yue,[F("span",bue,pe(Q(i)("settings.apiBaseUrl")),1),cr(F("input",{"onUpdate:modelValue":Ne[20]||(Ne[20]=Te=>Q(p).apiBaseUrl=Te),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600",placeholder:Q(i)("settings.apiBasePlaceholder")},null,8,wue),[[bn,Q(p).apiBaseUrl]])]),F("label",xue,[F("span",Bue,pe(Q(i)("settings.username")),1),cr(F("input",{"onUpdate:modelValue":Ne[21]||(Ne[21]=Te=>Q(p).username=Te),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600"},null,512),[[bn,Q(p).username]])]),F("label",Eue,[F("span",Cue,pe(Q(i)("settings.password")),1),cr(F("input",{"onUpdate:modelValue":Ne[22]||(Ne[22]=Te=>Q(p).password=Te),type:"password",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600"},null,512),[[bn,Q(p).password]])])]),F("div",Sue,[F("div",Oue,pe(Q(i)("settings.remoteWsTitle")),1),F("p",Tue,pe(Q(i)("settings.remoteWsDesc")),1)]),F("div",Iue,[F("label",Fue,[F("span",Pue,pe(Q(i)("settings.wsAddress")),1),cr(F("input",{"onUpdate:modelValue":Ne[23]||(Ne[23]=Te=>Q(p).wsAddress=Te),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600",placeholder:Q(i)("settings.wsAddressPlaceholder")},null,8,Lue),[[bn,Q(p).wsAddress]])]),F("label",kue,[F("span",Nue,pe(Q(i)("settings.remoteClient")),1),cr(F("select",{"onUpdate:modelValue":Ne[24]||(Ne[24]=Te=>kr(V)?V.value=Te:null),class:"w-full px-3 py-2 border rounded bg-white focus:ring-2 focus:ring-blue-600 focus:border-blue-600",disabled:ae.value!=="connected"||Z.value.length===0},[F("option",Mue,pe(Q(i)("settings.remoteClientPlaceholder")),1),(Ee(!0),Pe(Mt,null,Yr(Z.value,Te=>(Ee(),Pe("option",{key:Te.client_id,value:Te.client_id,disabled:Te.online===!1},pe(Te.client_name||Te.client_id)+pe(Te.online===!1?" (offline)":""),9,Due))),128))],8,Uue),[[Ms,Q(V)]])])]),F("div",Rue,[F("span",Que,pe(Q(i)("settings.connectionUrl"))+": ",1),F("span",null,pe(Q(T)),1)]),F("p",Hue,pe(Q(i)("settings.remoteAuthHint")),1),F("div",zue,[F("button",{onClick:he,disabled:Ce.value||D.value>0||!re.value&&!Fe.value,class:Ct(["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",ke(ae.value)])},[re.value?(Ee(),Nr(Q(dN),{key:0,class:"w-4 h-4"})):(Ee(),Nr(Q(hN),{key:1,class:"w-4 h-4"})),F("span",null,pe(Se.value),1)],10,Vue),D.value>0&&!re.value?(Ee(),Pe("div",jue,[F("span",null,pe(Q(i)("settings.retrying",{count:D.value,max:10})),1),F("button",{onClick:Ne[25]||(Ne[25]=(...Te)=>Q(R)&&Q(R)(...Te)),class:"text-blue-600 hover:text-blue-700"},pe(Q(i)("settings.cancelRetry")),1)])):pt("",!0)])])):pt("",!0)]),F("div",que,[F("button",{onClick:le,class:"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors text-sm"},pe(Q(i)("common.close")),1)])])])])):pt("",!0)],8,["to"]))}}),Gue={class:"h-14 bg-white border-b border-gray-200 flex items-center justify-between px-4 z-[2000] relative shadow-sm"},Wue={class:"flex items-center gap-2"},Xue=["src"],Yue={key:1,class:"font-semibold text-gray-700"},Zue=Tr({__name:"Header",setup(t){const{t:e}=zn(),r=un(),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)||cN}),a=it(()=>{var s;return((s=r.branding)==null?void 0:s.title)||e("common.appTitle")});return(s,A)=>(Ee(),Pe("header",Gue,[F("div",Wue,[n.value?(Ee(),Pe("img",{key:0,src:o.value,alt:"Logo",class:"w-8 h-8 object-contain"},null,8,Xue)):pt("",!0),i.value?(Ee(),Pe("h1",Yue,pe(a.value),1)):pt("",!0)]),et(cse,{onToggleHelp:A[0]||(A[0]=l=>Q(r).setShowHelp(!0)),onToggleSettings:A[1]||(A[1]=l=>Q(r).setShowSettings(!0))}),et(ele,{show:Q(r).showHelp,"onUpdate:show":A[2]||(A[2]=l=>Q(r).setShowHelp(l))},null,8,["show"]),et(Kue,{show:Q(r).showSettings,"onUpdate:show":A[3]||(A[3]=l=>Q(r).setShowSettings(l))},null,8,["show"])]))}}),Jue={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function _ue(t,e){return Ee(),Pe("svg",Jue,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M7 20V7H2V4h13v3h-5v13zm9 0v-8h-3V9h9v3h-3v8z"},null,-1)])])}const gN=Lt({name:"material-symbols-text-fields",render:_ue}),$ue={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ece(t,e){return Ee(),Pe("svg",$ue,[...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 pN=Lt({name:"material-symbols-numbers",render:ece}),tce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function rce(t,e){return Ee(),Pe("svg",tce,[...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 vN=Lt({name:"material-symbols-table-chart",render:rce}),nce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ice(t,e){return Ee(),Pe("svg",nce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M1 19V5h2v14zm3 0V5h2v14zm3 0V5h1v14zm3 0V5h2v14zm3 0V5h3v14zm4 0V5h1v14zm3 0V5h3v14z"},null,-1)])])}const mN=Lt({name:"material-symbols-barcode",render:ice}),oce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ace(t,e){return Ee(),Pe("svg",oce,[...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 yN=Lt({name:"material-symbols-qr-code",render:ace}),sce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Ace(t,e){return Ee(),Pe("svg",sce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M4 13v-2h16v2z"},null,-1)])])}const bN=Lt({name:"material-symbols-horizontal-rule",render:Ace}),lce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function uce(t,e){return Ee(),Pe("svg",lce,[...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 wN=Lt({name:"material-symbols-check-box-outline-blank",render:uce}),cce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function fce(t,e){return Ee(),Pe("svg",cce,[...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 xN=Lt({name:"material-symbols-radio-button-unchecked",render:fce}),dce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function hce(t,e){return Ee(),Pe("svg",dce,[...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 gce=Lt({name:"material-symbols-star",render:hce}),pce={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"},vce={class:"p-4 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-800"},mce={class:"font-semibold text-gray-700 dark:text-gray-200"},yce={class:"text-xs text-gray-500 dark:text-gray-400 mt-1"},bce={class:"flex border-b border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900"},wce={key:0,class:"absolute bottom-0 left-0 w-full h-0.5 bg-blue-600 dark:bg-blue-400"},xce={key:0,class:"absolute bottom-0 left-0 w-full h-0.5 bg-blue-600 dark:bg-blue-400"},Bce={class:"flex-1 overflow-y-auto"},Ece={class:"text-xs font-semibold text-gray-500 dark:text-gray-400 uppercase tracking-wider mb-3 px-1"},Cce={class:"grid grid-cols-2 gap-3"},Sce=["onDragstart"],Oce={class:"text-sm font-medium text-gray-700 dark:text-gray-200"},Tce={key:0,class:"p-6 text-center"},Ice={class:"text-sm text-gray-500 dark:text-gray-400"},Fce={key:1,class:"p-4 grid grid-cols-2 gap-3"},Pce=["onDragstart"],Lce=["title"],kce=["onClick","title"],Nce=["onClick"],Uce=["onClick"],Mce=["onClick"],Dce=["onClick"],Rce=["onClick"],Qce=Tr({__name:"Sidebar",setup(t){const{t:e}=zn(),r=un(),n=ui("modal-container",Xe(null)),i=Xe("standard"),o=it(()=>r.customElements),a=Xe(null),s=Xe({}),A=Xe(!1),l=Xe(null),u=Xe(""),c=Xe(!1),d=Xe(""),f=Xe(null),g=Xe([]),p=[{title:"sidebar.general",items:[{type:dt.TEXT,label:"sidebar.text",icon:gN},{type:dt.IMAGE,label:"sidebar.image",icon:hP},{type:dt.PAGE_NUMBER,label:"sidebar.pagination",icon:pN}]},{title:"sidebar.dataCodes",items:[{type:dt.TABLE,label:"sidebar.table",icon:vN},{type:dt.BARCODE,label:"sidebar.barcode",icon:mN},{type:dt.QRCODE,label:"sidebar.qrcode",icon:yN}]},{title:"sidebar.shapes",items:[{type:dt.LINE,label:"sidebar.line",icon:bN},{type:dt.RECT,label:"sidebar.rect",icon:wN},{type:dt.CIRCLE,label:"sidebar.circle",icon:xN}]}],b=(k,B)=>{k.dataTransfer&&(k.dataTransfer.setData("application/json",JSON.stringify({type:B})),k.dataTransfer.effectAllowed="copy")},m=(k,B)=>{k.dataTransfer&&(k.dataTransfer.setData("application/json",JSON.stringify({type:B.element.type,payload:B.element})),k.dataTransfer.effectAllowed="copy")},w=k=>{switch(k){case dt.TEXT:return gN;case dt.IMAGE:return hP;case dt.TABLE:return vN;case dt.PAGE_NUMBER:return pN;case dt.BARCODE:return mN;case dt.QRCODE:return yN;case dt.LINE:return bN;case dt.RECT:return wN;case dt.CIRCLE:return xN;default:return gce}},S=(k,B)=>{if(k.stopPropagation(),a.value===B)a.value=null;else{const te=k.currentTarget.getBoundingClientRect();let J=te.right-128;J<5&&(J=te.left),window.innerHeight-te.bottom<210?s.value={bottom:`${window.innerHeight-te.top+5}px`,left:`${J}px`}:s.value={top:`${te.bottom+5}px`,left:`${J}px`},a.value=B}},E=k=>{if(!a.value)return;k.composedPath().some(te=>te instanceof Element?te.classList.contains("sidebar-context-menu"):!1)||(a.value=null)},V=k=>{a.value=null,l.value=k.id,u.value=k.name,A.value=!0},j=k=>{l.value&&k&&r.renameCustomElement(l.value,k)},T=k=>{a.value=null,r.addCustomElement(`${k.name} Copy`,k.element)},L=k=>{a.value=null,confirm(e("sidebar.confirmDelete",{name:k.name}))&&r.removeCustomElement(k.id)},R=k=>{if(a.value=null,r.editingCustomElementId!==k.id){if(r.editingCustomElementId&&r.editingCustomElementId!==k.id){const B=r.customElements.find(te=>te.id===r.editingCustomElementId),q=B?B.name:"";if(!confirm(e("sidebar.confirmSwitchEdit",{name:q})))return;r.cancelCustomElementEdit()}r.startCustomElementEdit(k.id)}},K=k=>ek(k.element),P=k=>{a.value=null,f.value=k;const B=k.testData||{},q=q5(k.element,B);g.value=Object.keys(q),d.value=JSON.stringify(q,null,2),c.value=!0},I=()=>{var oe;const k=f.value,B=new Set(g.value||[]);if(f.value=null,g.value=[],!k)return;let q=null;try{const se=((oe=d.value)==null?void 0:oe.trim())||"{}",ae=JSON.parse(se);ae&&typeof ae=="object"&&!Array.isArray(ae)&&(q=ae)}catch{q=null}if(!q){alert(e("common.invalidJson"));return}if(B.size>0){const se=Object.keys(q);if(se.length!==B.size||se.some(Y=>!B.has(Y))){alert(e("common.testDataKeyChanged"));return}}const te=q5(k.element,k.testData||{}),J={};Object.keys(te).forEach(se=>{(B.size===0||B.has(se))&&(J[se]=Object.prototype.hasOwnProperty.call(q,se)?q[se]:te[se])}),k.testData=J,r.saveCustomElements()};return xi(()=>{window.addEventListener("mousedown",E)}),Bi(()=>{window.removeEventListener("mousedown",E)}),(k,B)=>(Ee(),Pe("aside",pce,[F("div",vce,[F("h2",mce,pe(Q(e)("sidebar.elements")),1),F("p",yce,pe(Q(e)("sidebar.dragToCanvas")),1)]),F("div",bce,[F("button",{onClick:B[0]||(B[0]=q=>i.value="standard"),class:Ct(["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"])},[Ht(pe(Q(e)("sidebar.standard"))+" ",1),i.value==="standard"?(Ee(),Pe("div",wce)):pt("",!0)],2),F("button",{onClick:B[1]||(B[1]=q=>i.value="custom"),class:Ct(["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"])},[Ht(pe(Q(e)("sidebar.custom"))+" ",1),i.value==="custom"?(Ee(),Pe("div",xce)):pt("",!0)],2)]),F("div",Bce,[i.value==="standard"?(Ee(),Pe(Mt,{key:0},Yr(p,q=>F("div",{key:q.title,class:"p-4 border-b border-gray-100 dark:border-gray-800 last:border-0"},[F("h3",Ece,pe(Q(e)(q.title)),1),F("div",Cce,[(Ee(!0),Pe(Mt,null,Yr(q.items,te=>(Ee(),Pe("div",{key:te.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:J=>b(J,te.type)},[(Ee(),Nr(Vh(te.icon),{class:"w-8 h-8 text-gray-600 dark:text-gray-300 mb-2"})),F("span",Oce,pe(Q(e)(te.label)),1)],40,Sce))),128))])])),64)):pt("",!0),i.value==="custom"?(Ee(),Pe(Mt,{key:1},[o.value.length===0?(Ee(),Pe("div",Tce,[F("p",Ice,pe(Q(e)("sidebar.noCustomElements")),1)])):(Ee(),Pe("div",Fce,[(Ee(!0),Pe(Mt,null,Yr(o.value,q=>(Ee(),Pe("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:te=>m(te,q)},[(Ee(),Nr(Vh(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},pe(q.name),9,Lce),F("button",{onClick:te=>S(te,q.id),class:Ct(["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:Q(e)("sidebar.moreOptions")},[et(Q(uN),{class:"w-4 h-4"})],10,kce)],40,Pce))),128))]))],64)):pt("",!0)]),(Ee(),Nr(Ns,{to:Q(n)||"body"},[a.value?(Ee(),Pe("div",{key:0,class:"fixed inset-0 z-[2000] pointer-events-auto",onClick:B[3]||(B[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:wt(s.value),onClick:B[2]||(B[2]=Ci(()=>{},["stop"]))},[(Ee(!0),Pe(Mt,null,Yr(o.value,q=>(Ee(),Pe(Mt,{key:q.id},[q.id===a.value?(Ee(),Pe(Mt,{key:0},[F("button",{onClick:te=>R(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(Q(Bx),{class:"w-3.5 h-3.5"}),Ht(" "+pe(Q(e)("sidebar.editElement")),1)],8,Nce),K(q)?(Ee(),Pe("button",{key:0,onClick:te=>P(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(Q(wu),{class:"w-3.5 h-3.5"}),Ht(" "+pe(Q(e)("common.testData")),1)],8,Uce)):pt("",!0),F("button",{onClick:te=>V(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(Q(Bx),{class:"w-3.5 h-3.5"}),Ht(" "+pe(Q(e)("sidebar.rename")),1)],8,Mce),F("button",{onClick:te=>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(Q(fd),{class:"w-3.5 h-3.5"}),Ht(" "+pe(Q(e)("sidebar.copy")),1)],8,Dce),F("button",{onClick:te=>L(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(Q(cd),{class:"w-3.5 h-3.5"}),Ht(" "+pe(Q(e)("sidebar.delete")),1)],8,Rce)],64)):pt("",!0)],64))),128))],4)])):pt("",!0)],8,["to"])),et(zg,{show:A.value,"initial-value":u.value,title:Q(e)("sidebar.renameModalTitle"),placeholder:Q(e)("sidebar.enterNamePlaceholder"),onClose:B[4]||(B[4]=q=>A.value=!1),onSave:j},null,8,["show","initial-value","title","placeholder"]),et(Hg,{visible:c.value,"onUpdate:visible":B[5]||(B[5]=q=>c.value=q),title:Q(e)("common.testData"),value:d.value,language:"json","onUpdate:value":B[6]||(B[6]=q=>d.value=q),onClose:I},null,8,["visible","title","value"])]))}}),Hce={key:0,class:"flex items-center justify-between"},zce={class:"text-sm text-gray-700 dark:text-gray-200 font-medium"},Vce=["disabled"],jce={class:"sr-only"},qce={key:1},Kce={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1"},Gce=["value","disabled","placeholder"],Wce=["type","value","disabled","placeholder","min","max","step"],jg=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"?(Ee(),Pe("div",Hce,[F("label",zce,pe(t.label),1),F("button",{type:"button",disabled:t.disabled,onClick:o[0]||(o[0]=a=>i.$emit("update:value",!t.value)),class:Ct(["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",jce,"Toggle "+pe(t.label),1),F("span",{"aria-hidden":"true",class:Ct(["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,Vce)])):(Ee(),Pe("div",qce,[F("label",Kce,pe(t.label),1),t.type==="textarea"?(Ee(),Pe("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,Gce)):(Ee(),Pe("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,Wce))]))}}),Xce={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1"},Yce=["value","disabled"],Zce=["value"],Jce=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)=>(Ee(),Pe("div",null,[F("label",Xce,pe(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"},[(Ee(!0),Pe(Mt,null,Yr(t.options,s=>(Ee(),Pe("option",{key:String(s.value),value:s.value,class:"dark:bg-gray-800 dark:text-gray-200"},pe(s.label),9,Zce))),128))],40,Yce)]))}}),_ce={class:"flex items-center justify-between"},$ce={class:"text-xs text-gray-500 dark:text-gray-400"},efe={class:"flex items-center gap-2"},tfe={key:0,class:"absolute inset-0 flex items-center justify-center"},BN=Tr({__name:"PropertyColor",props:{label:{},value:{},disabled:{type:Boolean}},emits:["update:value"],setup(t,{emit:e}){const r=e;return(n,i)=>(Ee(),Pe("div",_ce,[F("label",$ce,pe(t.label),1),F("div",efe,[et(Pd,{"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:Ct(["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:wt({backgroundColor:o==="transparent"?"transparent":o})},null,4),o==="transparent"?(Ee(),Pe("div",tfe,[...i[1]||(i[1]=[F("div",{class:"w-full h-[1px] bg-red-500 rotate-45"},null,-1)])])):pt("",!0)],2)]),_:1},8,["model-value","disabled"])])]))}}),rfe={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function nfe(t,e){return Ee(),Pe("svg",rfe,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M3 21v-8h2v4.6L17.6 5H13V3h8v8h-2V6.4L6.4 19H11v2z"},null,-1)])])}const ife=Lt({name:"material-symbols-open-in-full",render:nfe}),ofe={class:"flex flex-col gap-1"},afe={class:"flex justify-between items-center"},sfe={class:"text-xs text-gray-500 font-medium"},Afe={class:"flex items-center gap-2"},lfe={class:"text-[10px] text-gray-400 uppercase"},ufe=Fd(Tr({__name:"PropertyCode",props:{label:{},value:{},language:{},disabled:{type:Boolean},height:{}},emits:["update:value"],setup(t,{emit:e}){const r=e;un();const{isDark:n}=du(),i=Xe(!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)=>(Ee(),Pe("div",ofe,[F("div",afe,[F("label",sfe,pe(t.label),1),F("div",Afe,[F("span",lfe,pe(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(Q(ife),{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:wt({height:`${t.height||200}px`,minHeight:"100px",maxHeight:"600px"})},[et(Q(lN),{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(Hg,{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"]]),cfe={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1"},ffe={class:"space-y-2"},dfe=["value","disabled","placeholder"],hfe={class:"flex flex-col gap-1"},gfe=["disabled"],pfe={class:"text-[10px] text-gray-400 dark:text-gray-500 text-center"},vfe={key:0,class:"text-xs text-red-500 mt-1"},mfe=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=Xe(null),a=Xe(""),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)=>(Ee(),Pe("div",null,[F("label",cfe,pe(t.label),1),F("div",ffe,[F("input",{type:"text",value:t.value||"",disabled:t.disabled,placeholder:t.placeholder||Q(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,dfe),F("div",hfe,[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)),Ht(" "+pe(Q(i)("properties.image.uploadBtn")),1)],8,gfe),F("span",pfe,pe(Q(i)("properties.image.uploadTip")),1)]),a.value?(Ee(),Pe("p",vfe,pe(a.value),1)):pt("",!0),F("input",{ref_key:"fileInput",ref:o,type:"file",accept:"image/*",class:"hidden",onChange:A},null,544)])]))}}),yfe={class:"p-4 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-800 flex items-center justify-between"},bfe={class:"font-semibold text-gray-700 dark:text-gray-200"},wfe={class:"text-xs text-gray-500 dark:text-gray-400 mt-1"},xfe={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"},Bfe={key:0,class:"p-6 text-center"},Efe={class:"mb-4"},Cfe={class:"text-lg font-semibold text-gray-900 dark:text-gray-100"},Sfe={class:"text-sm text-gray-500 dark:text-gray-400 mt-2"},Ofe={class:"font-medium text-gray-700 dark:text-gray-200"},Tfe={key:1,class:"flex flex-col h-full overflow-hidden"},Ife={class:"flex border-b border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900"},Ffe=["onClick"],Pfe={key:0,class:"absolute bottom-0 left-0 w-full h-0.5 bg-blue-600 dark:bg-blue-400"},Lfe={class:"p-4 space-y-6 overflow-y-auto flex-1 custom-scrollbar dark:bg-gray-900"},kfe={key:0,class:"space-y-3"},Nfe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},Ufe={class:"grid grid-cols-2 gap-3"},Mfe={key:1,class:"space-y-3 pt-2 border-t border-gray-100 dark:border-gray-800"},Dfe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},Rfe={class:"grid grid-cols-2 gap-3"},Qfe=["disabled"],Hfe=["disabled"],zfe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},Vfe={class:"space-y-3"},jfe={key:0},qfe=["onClick","disabled"],Kfe={key:6},Gfe={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1 font-medium"},Wfe=["placeholder","disabled","value","onChange"],Xfe={key:2,class:"space-y-3 pt-2 border-t border-gray-100 dark:border-gray-800"},Yfe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},Zfe={key:3,class:"space-y-4"},Jfe={class:"p-4 bg-gray-50 dark:bg-gray-800 rounded border border-gray-200 dark:border-gray-700"},_fe={class:"text-sm font-medium text-gray-700 dark:text-gray-200 mb-3"},$fe={class:"space-y-3"},ede={class:"text-xs text-gray-500 dark:text-gray-400 mb-1.5 font-medium"},tde={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"},rde=["title"],nde=["title"],ide={class:"text-xs text-gray-500 flex items-center justify-between border-t border-gray-100 pt-2"},ode={class:"font-medium"},ade={class:"px-2 py-0.5 bg-gray-100 rounded text-gray-600"},sde=["disabled"],Ade={key:2,class:"p-6 text-center"},lde={class:"mb-4"},ude={class:"text-lg font-semibold text-gray-900"},cde={class:"text-sm text-gray-500 mt-2"},fde=Fd(Tr({__name:"PropertiesPanel",setup(t){const{t:e}=zn(),r=un(),n=it(()=>r.selectedElement),i=it(()=>r.selectedElementIds.length>1),o=it(()=>{var G;return((G=n.value)==null?void 0:G.locked)||!1}),a=Xe(!1),s=Xe(""),A=it(()=>n.value?[dt.LINE,dt.RECT,dt.CIRCLE].includes(n.value.type):!1),l=it(()=>r.tableSelection?r.tableSelection.cells.length>1:!1),u=it(()=>{if(!r.tableSelection||r.tableSelection.cells.length!==1)return!1;const G=r.tableSelection.cells[0],re=r.selectedElement;if(!re||re.type!==dt.TABLE)return!1;const Ce=(G.section||"body")==="footer"?re.footerData:re.data;if(!Ce)return!1;const we=Ce[G.rowIndex];if(!we)return!1;const Fe=we[G.colField];return Fe&&typeof Fe=="object"?(Fe.rowSpan||1)>1||(Fe.colSpan||1)>1:!1}),c=Xe("properties"),d=Xe(!1),f=it(()=>r.unit||"mm"),g=it(()=>r.unit||"mm"),p=new Set(["fontSize","borderWidth","barcodeWidth","barcodeHeight","margin","borderRadius","headerHeight","rowHeight","footerHeight","labelFontSize","labelBorderWidth"]),b=G=>G.type!=="number"||!G.key?!1:p.has(G.key),m=G=>{const re=e(G.label);return b(G)?`${re} (${g.value})`:re},w=G=>{const re=oe(G);return b(G)&&typeof re=="number"?LA(re,f.value):re},S=(G,re)=>b(G)?ka(Number(re),f.value):re,E=G=>{if(!(G.min===void 0||G.min===null))return b(G)?LA(G.min,f.value):G.min},V=G=>{if(!(G.max===void 0||G.max===null))return b(G)?LA(G.max,f.value):G.max},j=G=>{if(!(G.step===void 0||G.step===null))return b(G)?LA(G.step,f.value):G.step},T=()=>{n.value&&(navigator.clipboard.writeText(n.value.id),d.value=!0,setTimeout(()=>{d.value=!1},2e3))},L=()=>{n.value&&(s.value=n.value.type,a.value=!0)},R=G=>{n.value&&G&&r.addCustomElement(G,n.value)},K=(G,re)=>{n.value&&r.updateElement(n.value.id,{[G]:re})},P=(G,re)=>{n.value&&r.updateElement(n.value.id,{style:{...n.value.style,[G]:re}})},I=(G,re)=>{try{const ye=re.target.value;K(G,JSON.parse(ye))}catch{window.alert("Invalid JSON")}},k=G=>{const re=oe(G);return G.language==="json"&&typeof re=="object"?JSON.stringify(re,null,2):re||""},B=(G,re)=>{if(G.language==="json")try{const ye=JSON.parse(re);K(G.key,ye)}catch{}else K(G.key,re)},q=G=>{switch(G){case dt.TEXT:return Z_;case dt.IMAGE:return e$;case dt.TABLE:return S$;case dt.PAGE_NUMBER:return I$;case dt.BARCODE:return vee;case dt.QRCODE:return jee;case dt.LINE:return Gee;case dt.RECT:return Xee;case dt.CIRCLE:return Zee;default:return null}},te=it(()=>n.value?q(n.value.type):null),J=it(()=>te.value?te.value.sections.filter(G=>(G.tab||"properties")===c.value):[]),oe=G=>n.value?(G.target==="style"?n.value.style:n.value)[G.key]??G.defaultValue:G.defaultValue,se=(G,re)=>{n.value&&(G.target==="style"&&G.key?P(G.key,re):G.target==="element"&&G.key&&K(G.key,re))},ae=G=>{!n.value||!G.actionName||(G.actionName==="paginateTable"?r.paginateTable(n.value.id):G.actionName==="removeBorder"&&r.updateElement(n.value.id,{style:{...n.value.style,borderStyle:void 0,borderWidth:void 0,borderColor:void 0,border:"none"}}))},Y=()=>{i.value?r.removeSelectedElements():n.value&&r.removeElement(n.value.id)},D=G=>{G.relatedTarget&&G.currentTarget.contains(G.relatedTarget)||r.setDisableGlobalShortcuts(!0)},Z=G=>{G.relatedTarget&&G.currentTarget.contains(G.relatedTarget)||r.setDisableGlobalShortcuts(!1)};return(G,re)=>(Ee(),Pe(Mt,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:D,onFocusout:Z},[F("div",yfe,[F("div",null,[F("h2",bfe,pe(Q(e)("properties.title")),1),F("p",wfe,pe(Q(e)("properties.subtitle")),1)]),o.value?(Ee(),Pe("div",xfe,[et(Q(_0),{class:"w-3 h-3"}),F("span",null,pe(Q(e)("properties.locked")),1)])):pt("",!0)]),i.value?(Ee(),Pe("div",Bfe,[F("div",Efe,[F("h3",Cfe,pe(Q(e)("properties.multiSelectMode")),1),F("p",Sfe,[F("span",Ofe,pe(Q(r).selectedElementIds.length),1),Ht(" "+pe(Q(e)("properties.selectedElements",{n:""}).replace("{n}","")),1)])]),F("button",{onClick:Y,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"},pe(Q(e)("properties.deleteSelected")),1)])):n.value?(Ee(),Pe("div",Tfe,[F("div",Ife,[(Ee(),Pe(Mt,null,Yr(["properties","style","advanced"],ye=>F("button",{key:ye,onClick:Ce=>c.value=ye,class:Ct(["flex-1 py-3 text-sm font-medium transition-colors relative",c.value===ye?"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"])},[Ht(pe(Q(e)(`properties.tab.${ye}`))+" ",1),c.value===ye?(Ee(),Pe("div",Pfe)):pt("",!0)],10,Ffe)),64))]),F("div",Lfe,[c.value==="properties"?(Ee(),Pe("div",kfe,[F("h3",Nfe,pe(Q(e)("properties.section.positionSize")),1),F("div",Ufe,[et(jg,{label:`${Q(e)("properties.label.x")} (${g.value})`,type:"number",disabled:o.value,value:Q(LA)(n.value.x,f.value),"onUpdate:value":re[0]||(re[0]=ye=>K("x",Q(ka)(Number(ye),f.value)))},null,8,["label","disabled","value"]),et(jg,{label:`${Q(e)("properties.label.y")} (${g.value})`,type:"number",disabled:o.value,value:Q(LA)(n.value.y,f.value),"onUpdate:value":re[1]||(re[1]=ye=>K("y",Q(ka)(Number(ye),f.value)))},null,8,["label","disabled","value"]),et(jg,{label:`${Q(e)("properties.label.width")} (${g.value})`,type:"number",disabled:o.value,value:Q(LA)(n.value.width,f.value),"onUpdate:value":re[2]||(re[2]=ye=>K("width",Q(ka)(Number(ye),f.value)))},null,8,["label","disabled","value"]),et(jg,{label:`${Q(e)("properties.label.height")} (${g.value})`,type:"number",disabled:o.value,value:Q(LA)(n.value.height,f.value),"onUpdate:value":re[3]||(re[3]=ye=>K("height",Q(ka)(Number(ye),f.value)))},null,8,["label","disabled","value"])])])):pt("",!0),c.value==="properties"&&n.value.type==="table"&&Q(r).tableSelection?(Ee(),Pe("div",Mfe,[F("h3",Dfe,pe(Q(e)("properties.section.cellOperations")),1),F("div",Rfe,[F("button",{onClick:re[4]||(re[4]=ye=>Q(r).mergeSelectedCells()),disabled:!l.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"},pe(Q(e)("properties.action.mergeCells")),9,Qfe),F("button",{onClick:re[5]||(re[5]=ye=>Q(r).splitSelectedCells()),disabled:!u.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"},pe(Q(e)("properties.action.splitCells")),9,Hfe)])])):pt("",!0),(Ee(!0),Pe(Mt,null,Yr(J.value,(ye,Ce)=>(Ee(),Pe("div",{key:Ce,class:"space-y-3 pt-2 first:pt-0 border-t first:border-0 border-gray-100 dark:border-gray-800"},[F("h3",zfe,pe(Q(e)(ye.title)),1),F("div",Vfe,[(Ee(!0),Pe(Mt,null,Yr(ye.fields,(we,Fe)=>(Ee(),Pe(Mt,{key:Fe},[we.type==="action"?(Ee(),Pe("div",jfe,[F("button",{onClick:Ve=>ae(we),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"},pe(Q(e)(we.label)),9,qfe)])):we.type==="text"||we.type==="number"||we.type==="switch"?(Ee(),Nr(jg,{key:1,label:m(we),type:we.type,min:E(we),max:V(we),step:j(we),disabled:o.value,placeholder:we.placeholder?we.placeholder.startsWith("properties.")?Q(e)(we.placeholder):we.placeholder:"",value:w(we),"onUpdate:value":Ve=>se(we,S(we,Ve))},null,8,["label","type","min","max","step","disabled","placeholder","value","onUpdate:value"])):we.type==="select"?(Ee(),Nr(Jce,{key:2,label:Q(e)(we.label),options:(we.options||[]).map(Ve=>({...Ve,label:Q(e)(Ve.label)})),disabled:o.value,value:oe(we),"onUpdate:value":Ve=>se(we,Ve)},null,8,["label","options","disabled","value","onUpdate:value"])):we.type==="color"?(Ee(),Nr(BN,{key:3,label:Q(e)(we.label),disabled:o.value,value:oe(we),"onUpdate:value":Ve=>se(we,Ve)},null,8,["label","disabled","value","onUpdate:value"])):we.type==="image"?(Ee(),Nr(mfe,{key:4,label:Q(e)(we.label),disabled:o.value,placeholder:we.placeholder?we.placeholder.startsWith("properties.")?Q(e)(we.placeholder):we.placeholder:void 0,value:oe(we),"onUpdate:value":Ve=>se(we,Ve)},null,8,["label","disabled","placeholder","value","onUpdate:value"])):we.type==="code"?(Ee(),Nr(ufe,{key:5,label:Q(e)(we.label),language:we.language||"javascript",disabled:o.value,value:k(we),"onUpdate:value":Ve=>B(we,Ve)},null,8,["label","language","disabled","value","onUpdate:value"])):we.type==="textarea"?(Ee(),Pe("div",Kfe,[F("label",Gfe,pe(Q(e)(we.label)),1),F("textarea",{placeholder:we.placeholder?we.placeholder.startsWith("properties.")?Q(e)(we.placeholder):we.placeholder:"",disabled:o.value,value:["data","columns","footerData"].includes(we.key)?JSON.stringify(n.value[we.key],null,2):oe(we),onChange:Ve=>["data","columns","footerData"].includes(we.key)?I(we.key,Ve):se(we,Ve.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,Wfe)])):pt("",!0)],64))),128))])]))),128)),c.value==="style"&&!A.value?(Ee(),Pe("div",Xfe,[F("h3",Yfe,pe(Q(e)("properties.section.appearance")),1),et(BN,{label:Q(e)("properties.label.backgroundColor"),disabled:o.value,value:n.value.style.backgroundColor||"#ffffff","onUpdate:value":re[6]||(re[6]=ye=>P("backgroundColor",ye))},null,8,["label","disabled","value"])])):pt("",!0),c.value==="advanced"?(Ee(),Pe("div",Zfe,[F("div",Jfe,[F("h4",_fe,pe(Q(e)("properties.section.elementInfo")),1),F("div",$fe,[F("div",null,[F("p",ede,pe(Q(e)("properties.label.id")),1),F("div",tde,[F("span",{class:"font-mono text-xs text-gray-600 dark:text-gray-400 flex-1 truncate select-all",title:n.value.id},pe(n.value.id),9,rde),F("button",{onClick:T,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:d.value?Q(e)("properties.action.copied"):Q(e)("properties.action.copyId")},[d.value?(Ee(),Nr(Q(Vre),{key:0,class:"w-3.5 h-3.5 text-green-500 dark:text-green-400"})):(Ee(),Nr(Q(fd),{key:1,class:"w-3.5 h-3.5"}))],8,nde)])]),F("div",ide,[F("span",ode,pe(Q(e)("properties.label.type")),1),F("span",ade,pe(Q(e)("elements."+n.value.type)),1)])])]),F("button",{onClick:L,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(Q(s5),{class:"w-4 h-4"}),Ht(" "+pe(Q(e)("properties.action.saveCustom")),1)]),F("button",{onClick:Y,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(Q(cd),{class:"w-4 h-4"}),Ht(" "+pe(Q(e)("properties.action.deleteElement")),1)],8,sde)])):pt("",!0)])])):(Ee(),Pe("div",Ade,[F("div",lde,[F("h3",ude,pe(Q(e)("properties.empty.noSelection")),1),F("p",cde,pe(Q(e)("properties.empty.selectInstruction")),1)])]))],32),et(zg,{show:a.value,"initial-value":s.value,title:Q(e)("properties.action.saveCustomModal"),placeholder:Q(e)("sidebar.enterNamePlaceholder"),onClose:re[7]||(re[7]=ye=>a.value=!1),onSave:R},null,8,["show","initial-value","title","placeholder"])],64))}}),[["__scopeId","data-v-0bce654d"]]),EN=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=Xe(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 B of w){const q=b+B.position*g-p;c.fillStyle=B.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"?uP:r.unit==="pt"?cP:1,T=50/(E*g),L=[1,2,5,10,20,50,100,200,500,1e3];let R=L[L.length-1];for(const B of L)if(B>=T-.001){R=B;break}const K=m==="horizontal"?d:f,P=(-b+p)/(g*E),I=(K-b+p)/(g*E),k=Math.floor(P/R)*R;for(let B=k;B<=I;B+=R){const q=b+B*E*g-p,te=Number(B.toFixed(1)).toString();m==="horizontal"?(c.moveTo(q,0),c.lineTo(q,o),c.fillText(te,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(te,0,0),c.restore());const J=R/5;for(let oe=1;oe<5;oe++){const se=B+J*oe,ae=b+se*E*g-p;m==="horizontal"?(c.moveTo(ae,o-5),c.lineTo(ae,o)):(c.moveTo(o-5,ae),c.lineTo(o,ae))}}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)=>(Ee(),Pe("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))}}),dde={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function hde(t,e){return Ee(),Pe("svg",dde,[...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 gde=Lt({name:"material-symbols-content-cut",render:hde}),pde={class:"bg-white border border-gray-200 shadow-xl rounded-md min-w-[160px] py-1"},vde=["disabled"],mde=["disabled"],yde=["disabled"],bde=["disabled"],wde=["disabled"],xde=Tr({__name:"Shortcuts",setup(t){const{t:e}=zn(),r=un(),n=ui("designer-root"),i=Xe(!1),o=Xe(0),a=Xe(0),s=Xe(0),A=Xe(0),l=Xe(null),u=Xe(!1),c=Xe(0),d=Xe(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,V)=>{const j=g().querySelectorAll(".print-page");if(j.length===0)return;let T=null,L=1/0,R=0;for(let K=0;K<j.length;K++){const P=j[K],I=P.getBoundingClientRect();if(E>=I.left&&E<=I.right&&V>=I.top&&V<=I.bottom)return{pageIndex:K,x:(E-I.left)/r.zoom,y:(V-I.top)/r.zoom};const k=Math.max(I.left-E,0,E-I.right),B=Math.max(I.top-V,0,V-I.bottom),q=Math.sqrt(k*k+B*B);q<L&&(L=q,T=P,R=K)}if(T){const K=T.getBoundingClientRect();let P=(E-K.left)/r.zoom,I=(V-K.top)/r.zoom;return P=Math.max(0,Math.min(r.canvasSize.width,P)),I=Math.max(0,Math.min(r.canvasSize.height,I)),{pageIndex:R,x:P,y:I}}},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 V=E.target;if(V&&V.closest('input, textarea, select, [contenteditable="true"]'))return;if(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(E.key)){const L=E.shiftKey?10:1;if(r.selectedGuideId){const R=r.guides.find(K=>K.id===r.selectedGuideId);if(R){E.preventDefault();const K=R.position;let P=K;if(R.type==="vertical")if(E.key==="ArrowLeft")P-=L;else if(E.key==="ArrowRight")P+=L;else return;else if(E.key==="ArrowUp")P-=L;else if(E.key==="ArrowDown")P+=L;else return;(K>0&&P<0||K<0&&P>0||P===0)&&(P=0),r.updateGuide(R.id,P),r.setHighlightedGuide(R.id)}}else if(r.selectedElementIds.length>0){E.preventDefault();const R=E.key==="ArrowLeft"?-L:E.key==="ArrowRight"?L:0,K=E.key==="ArrowUp"?-L:E.key==="ArrowDown"?L:0;r.nudgeSelectedElements(R,K)}return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="a"){if(E.preventDefault(),r.pages[r.currentPageIndex]){const L=r.pages[r.currentPageIndex].elements.map(R=>R.id);r.setSelection(L)}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 V=E.target,j=g().querySelector(".overflow-auto");if(!j||!j.contains(V))return;if(E.preventDefault(),i.value=!0,o.value=E.clientX,a.value=E.clientY,s.value=E.clientX,A.value=E.clientY,await Xi(),l.value){const R=l.value.getBoundingClientRect(),K=window.innerWidth,P=window.innerHeight;E.clientX+R.width>K&&(o.value=K-R.width-5),E.clientY+R.height>P&&(a.value=P-R.height-5)}const T=g().querySelectorAll(".print-page");let L=!1;T.forEach(R=>{const K=R.getBoundingClientRect();E.clientX>=K.left&&E.clientX<=K.right&&E.clientY>=K.top&&E.clientY<=K.bottom&&(L=!0)}),u.value=L,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,V)=>{var j,T,L,R,K;return i.value?(Ee(),Pe("div",{key:0,ref_key:"menuRef",ref:l,class:"fixed z-[9999]",style:wt({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:Q(r).selectedElementIds.length===0&&!Q(r).selectedGuideId||((j=Q(r).selectedElement)==null?void 0:j.locked),onClick:V[0]||(V[0]=()=>{Q(r).selectedElementIds.length>1?Q(r).removeSelectedElements():Q(r).selectedElementId?Q(r).removeElement(Q(r).selectedElementId):Q(r).selectedGuideId&&Q(r).removeGuide(Q(r).selectedGuideId),i.value=!1})},[et(Q(cd),{class:"w-4 h-4"}),F("span",null,pe(Q(e)("common.delete"))+pe(Q(r).selectedElementIds.length>1?` (${Q(r).selectedElementIds.length})`:""),1)],8,vde),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:!Q(r).selectedElementId||((T=Q(r).selectedElement)==null?void 0:T.locked),onClick:V[1]||(V[1]=()=>{Q(r).cut(),i.value=!1})},[et(Q(gde),{class:"w-4 h-4"}),F("span",null,pe(Q(e)("common.cut")),1)],8,mde),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:!Q(r).selectedElementId||((L=Q(r).selectedElement)==null?void 0:L.locked),onClick:V[2]||(V[2]=()=>{Q(r).copy(),i.value=!1})},[et(Q(fd),{class:"w-4 h-4"}),F("span",null,pe(Q(e)("common.copy")),1)],8,yde),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:Q(r).clipboard.length===0,onClick:V[3]||(V[3]=()=>{Q(r).paste(p(s.value,A.value)),i.value=!1})},[et(Q(A5),{class:"w-4 h-4"}),F("span",null,pe(Q(e)("common.paste")),1)],8,bde),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:Q(r).selectedElementIds.length===0,onClick:V[4]||(V[4]=()=>{Q(r).toggleLock(),i.value=!1})},[(Ee(),Nr(Vh((R=Q(r).selectedElement)!=null&&R.locked?Q(bP):Q(_0)),{class:"w-4 h-4"})),F("span",null,pe((K=Q(r).selectedElement)!=null&&K.locked?Q(e)("common.unlock"):Q(e)("common.lock")),1)],8,wde),V[7]||(V[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:V[5]||(V[5]=P=>{Q(r).undo(),i.value=!1})},[et(Q(mP),{class:"w-4 h-4"}),F("span",null,pe(Q(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:V[6]||(V[6]=P=>{Q(r).redo(),i.value=!1})},[et(Q(yP),{class:"w-4 h-4"}),F("span",null,pe(Q(e)("common.redo")),1)])])],4)):pt("",!0)}}}),Bde={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"},Ede={key:2,class:"w-full h-full bg-gray-200 flex items-center justify-center overflow-hidden"},Cde=["src"],Sde={key:3,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},Ode=["src"],Tde={key:4,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},Ide=["src"],Fde={key:2,class:"w-full h-full bg-gray-200 flex items-center justify-center overflow-hidden"},Pde=["src"],Lde={key:3,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},kde=["src"],Nde={key:4,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},Ude=["src"],CN=180,SN=120,ON=300,Mde=32,Dde=Fd(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 P=CN/r.scrollWidth;return r.scrollHeight*P>ON&&(P=ON/r.scrollHeight),r.scrollWidth*P<SN&&(P=SN/r.scrollWidth),P}),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=P=>P.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;"),A=it(()=>{const P=r.watermark;if(!P||!P.enabled||!P.text)return null;const I=s(P.text),k=Number.isFinite(P.angle)?P.angle:-30,B=Math.max(6,P.size||24),q=Math.max(40,P.density||160),te=P.color||"#000000",J=Math.min(1,Math.max(0,P.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="${te}" fill-opacity="${J}" font-size="${B}" transform="rotate(${k} ${q/2} ${q/2})">${I}</text></svg>`;return{backgroundImage:`url("data:image/svg+xml,${encodeURIComponent(oe)}")`,backgroundRepeat:"repeat",backgroundSize:`${q}px ${q}px`}}),l=P=>{const I={left:`${r.contentOffsetX*i.value}px`,top:`${(r.contentOffsetY+P*(r.pageHeight+Mde)*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?{...I,...A.value}:I},u=()=>{if(!r.pages||r.pages.length===0)return[];const P=r.pages[0];return P!=null&&P.elements?P.elements.filter(I=>r.showHeaderLine&&I.y<r.headerHeight||r.showFooterLine&&I.y>=r.pageHeight-r.footerHeight):[]},c=P=>{const I=Math.max(1,P.width*r.zoom*i.value),k=Math.max(1,P.height*r.zoom*i.value);return{width:I,height:k}},d=P=>{var q,te,J,oe,se,ae,Y,D,Z,G,re,ye;const{width:I,height:k}=c(P),B={left:`${P.x*r.zoom*i.value}px`,top:`${P.y*r.zoom*i.value}px`,width:`${I}px`,height:`${k}px`,fontSize:`${(((q=P.style)==null?void 0:q.fontSize)||12)*r.zoom*i.value}px`,zIndex:((te=P.style)==null?void 0:te.zIndex)||1,transform:`rotate(${((J=P.style)==null?void 0:J.rotate)||0}deg)`};if(P.type===dt.LINE){const Ce=((oe=P.style)==null?void 0:oe.borderColor)||"#111827",we=Math.max(1,(((se=P.style)==null?void 0:se.borderWidth)||1)*r.zoom*i.value);return{...B,height:`${we}px`,backgroundColor:Ce,top:`${P.y*r.zoom*i.value+(k-we)/2}px`}}if(P.type===dt.RECT||P.type===dt.CIRCLE){const Ce=((ae=P.style)==null?void 0:ae.borderColor)||"#111827",we=Math.max(1,(((Y=P.style)==null?void 0:Y.borderWidth)||1)*r.zoom*i.value);return{...B,backgroundColor:((D=P.style)==null?void 0:D.backgroundColor)||"transparent",borderColor:Ce,borderWidth:`${we}px`,borderStyle:((Z=P.style)==null?void 0:Z.borderStyle)||"solid",borderRadius:P.type===dt.CIRCLE?"9999px":`${((G=P.style)==null?void 0:G.borderRadius)||0}px`}}return P.type===dt.BARCODE||P.type===dt.QRCODE?{...B,backgroundColor:"rgba(17, 24, 39, 0.15)",border:"1px solid rgba(17, 24, 39, 0.3)"}:P.type===dt.PAGE_NUMBER?{...B,color:((re=P.style)==null?void 0:re.color)||"#111827",backgroundColor:((ye=P.style)==null?void 0:ye.backgroundColor)||"transparent"}:{...B,backgroundColor:P.type===dt.IMAGE?"#e5e7eb":void 0}},f=(P,I)=>{var te;const k=I+1,B=((te=r.pages)==null?void 0:te.length)||1,q=P.format||"1/Total";return q==="1"?`${k}`:q==="Page 1"?`Page ${k}`:`${k}/${B}`},g=P=>{const I=P.style?JSON.stringify(P.style):"";return`${P.id}:${P.type}:${P.variable||""}:${P.content||""}:${I}`},p=Xe({}),b=Xe({});let m=0;const w=P=>P.type===dt.BARCODE?P.variable||P.content||"12345678":P.type===dt.QRCODE?P.variable||P.content||"https://example.com":P.variable||P.content||"",S=P=>{try{const I=document.createElement("canvas"),k=P.style||{};return u6(I,w(P),{format:k.barcodeFormat||"CODE128",lineColor:k.color||"#000000",width:Number(k.barcodeWidth)||2,height:Number(k.barcodeHeight)||40,displayValue:k.showText!==!1&&k.showText!=="false",fontOptions:k.fontOptions||"",font:k.font||"monospace",textAlign:k.textAlign||"center",textPosition:k.textPosition||"bottom",textMargin:Number(k.textMargin)||2,fontSize:Number(k.fontSize)||20,background:"transparent",margin:Number(k.margin)||0}),I.toDataURL("image/png")}catch{return""}},E=async P=>{var I,k;try{return await j6.toDataURL(w(P),{margin:0,color:{dark:((I=P.style)==null?void 0:I.color)||"#000000",light:"#00000000"},errorCorrectionLevel:((k=P.style)==null?void 0:k.qrErrorCorrection)||"M"})}catch{return""}},V=async()=>{const P=++m,I={},k={},B=r.pages||[];for(const q of B){const te=(q==null?void 0:q.elements)||[];for(const J of te){const oe=g(J);if(J.type===dt.BARCODE){const se=S(J);se&&(I[oe]=se)}else if(J.type===dt.QRCODE){const se=await E(J);se&&(k[oe]=se)}}}P===m&&(p.value=I,b.value=k)},j=P=>p.value[g(P)]||"",T=P=>b.value[g(P)]||"";Yt(()=>r.pages,()=>{V()},{deep:!0,immediate:!0});const L=Xe(!1),R=Xe(null);Yt(()=>r.scrollTop,()=>{if(!R.value)return;const P=r.scrollTop*i.value,I=r.viewportHeight*i.value,k=R.value.clientHeight,B=R.value.scrollTop;P<B?R.value.scrollTop=P:P+I>B+k&&(R.value.scrollTop=P+I-k)});const K=P=>{P.preventDefault();const I=P.currentTarget,k=I.getBoundingClientRect(),B=P.clientX-k.left,q=P.clientY-k.top,te=r.scrollLeft*i.value,J=r.scrollTop*i.value,oe=r.viewportWidth*i.value,se=r.viewportHeight*i.value;let ae=0,Y=0;if(B>=te&&B<=te+oe&&q>=J&&q<=J+se)ae=B-te,Y=q-J;else{const G=B/i.value-r.viewportWidth/2,re=q/i.value-r.viewportHeight/2;n("update:scroll",{left:G,top:re}),ae=oe/2,Y=se/2}L.value=!0;const D=G=>{const re=I.getBoundingClientRect(),ye=G.clientX-re.left,Ce=G.clientY-re.top,we=ye-ae,Fe=Ce-Y;n("update:scroll",{left:we/i.value,top:Fe/i.value})},Z=()=>{L.value=!1,window.removeEventListener("mousemove",D),window.removeEventListener("mouseup",Z)};window.addEventListener("mousemove",D),window.addEventListener("mouseup",Z)};return(P,I)=>(Ee(),Pe("div",{ref_key:"scrollContainer",ref:R,class:"bg-white border border-gray-200 shadow-lg rounded max-h-[300px] overflow-y-auto overflow-x-hidden box-content no-scrollbar",style:wt({width:`${r.scrollWidth*i.value}px`,maxWidth:`${CN}px`})},[F("div",{class:"relative select-none box-content overflow-hidden",style:wt({width:`${r.scrollWidth*i.value}px`,height:`${o.value}px`}),onMousedown:K},[I[0]||(I[0]=F("div",{class:"absolute inset-0 bg-gray-100"},null,-1)),(Ee(!0),Pe(Mt,null,Yr(t.pages,(k,B)=>(Ee(),Pe("div",{key:B,class:"absolute shadow-sm border border-gray-300 overflow-hidden",style:wt(l(B))},[F("div",Bde,pe(B+1),1),(Ee(!0),Pe(Mt,null,Yr(k.elements,q=>{var te,J;return Ee(),Pe("div",{key:q.id,class:"absolute",style:wt(d(q))},[q.type===Q(dt).TEXT?(Ee(),Pe("div",{key:0,class:"w-full h-full overflow-hidden whitespace-nowrap",style:wt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},pe(q.variable||q.content),5)):q.type===Q(dt).PAGE_NUMBER?(Ee(),Pe("div",{key:1,class:"w-full h-full overflow-hidden whitespace-nowrap",style:wt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},pe(f(q,B)),5)):q.type===Q(dt).IMAGE?(Ee(),Pe("div",Ede,[q.content?(Ee(),Pe("img",{key:0,src:q.content,class:"w-full h-full object-cover"},null,8,Cde)):pt("",!0)])):q.type===Q(dt).BARCODE?(Ee(),Pe("div",Sde,[j(q)?(Ee(),Pe("img",{key:0,src:j(q),class:"w-full h-full object-contain"},null,8,Ode)):pt("",!0)])):q.type===Q(dt).QRCODE?(Ee(),Pe("div",Tde,[T(q)?(Ee(),Pe("img",{key:0,src:T(q),class:"w-full h-full object-contain"},null,8,Ide)):pt("",!0)])):q.type===Q(dt).TABLE?(Ee(),Pe("div",{key:5,class:"w-full h-full border border-gray-300 bg-white grid",style:wt({gridTemplateColumns:`repeat(${((te=q.columns)==null?void 0:te.length)||2}, 1fr)`})},[(Ee(!0),Pe(Mt,null,Yr(Math.min(6,(((J=q.columns)==null?void 0:J.length)||2)*2),oe=>(Ee(),Pe("div",{key:oe,class:"border-[0.5px] border-gray-100"}))),128))],4)):pt("",!0)],4)}),128)),B>0?(Ee(!0),Pe(Mt,{key:0},Yr(u(),q=>{var te,J;return Ee(),Pe("div",{key:`global-${B}-${q.id}`,class:"absolute",style:wt(d(q))},[q.type===Q(dt).TEXT?(Ee(),Pe("div",{key:0,class:"w-full h-full overflow-hidden whitespace-nowrap",style:wt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},pe(q.variable||q.content),5)):q.type===Q(dt).PAGE_NUMBER?(Ee(),Pe("div",{key:1,class:"w-full h-full overflow-hidden whitespace-nowrap",style:wt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},pe(f(q,B)),5)):q.type===Q(dt).IMAGE?(Ee(),Pe("div",Fde,[q.content?(Ee(),Pe("img",{key:0,src:q.content,class:"w-full h-full object-cover"},null,8,Pde)):pt("",!0)])):q.type===Q(dt).BARCODE?(Ee(),Pe("div",Lde,[j(q)?(Ee(),Pe("img",{key:0,src:j(q),class:"w-full h-full object-contain"},null,8,kde)):pt("",!0)])):q.type===Q(dt).QRCODE?(Ee(),Pe("div",Nde,[T(q)?(Ee(),Pe("img",{key:0,src:T(q),class:"w-full h-full object-contain"},null,8,Ude)):pt("",!0)])):q.type===Q(dt).TABLE?(Ee(),Pe("div",{key:5,class:"w-full h-full border border-gray-300 bg-white grid",style:wt({gridTemplateColumns:`repeat(${((te=q.columns)==null?void 0:te.length)||2}, 1fr)`})},[(Ee(!0),Pe(Mt,null,Yr(Math.min(6,(((J=q.columns)==null?void 0:J.length)||2)*2),oe=>(Ee(),Pe("div",{key:oe,class:"border-[0.5px] border-gray-100"}))),128))],4)):pt("",!0)],4)}),128)):pt("",!0)],4))),128)),F("div",{class:"absolute border-2 border-blue-500 bg-blue-500/10 cursor-move z-[1000]",style:wt(a.value)},null,4)],36)],4))}}),[["__scopeId","data-v-5a8ed346"]]),Rde={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Qde(t,e){return Ee(),Pe("svg",Rde,[...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 Hde=Lt({name:"material-symbols-logout",render:Qde}),zde={class:"flex-1 flex overflow-hidden"},Vde={class:"flex-1 overflow-hidden relative flex flex-col"},jde={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"},qde={class:"text-sm font-medium"},Kde={class:"flex items-center gap-2"},Gde={class:"relative w-full h-full flex flex-col overflow-hidden"},Wde={class:"flex-none h-5 bg-gray-50 border-b border-gray-300 flex z-20"},Xde={class:"flex-1 relative overflow-hidden"},Yde={class:"flex-1 flex overflow-hidden relative"},Zde={class:"w-5 flex-none bg-gray-50 border-r border-gray-300 h-full relative z-20 overflow-hidden"},Jde=["onMousedown"],_de={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"},$de=["onMousedown"],ehe={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"},the={key:2,class:"absolute pointer-events-none"},rhe={key:1,class:"absolute bottom-4 right-4 z-50"},nhe=Tr({__name:"PrintDesigner",setup(t){const e=un(),r=dg(),{autoSave:n}=rP(),{isDark:i}=du(),{t:o}=zn(),a=Xe(null),s=Xe(null),A=Xe(null);let l=null;const u=Xe(null);Qy("designer-root",s),Qy("modal-container",A);const c=Xe(null),d=Xe(!1),f=Xe(0),g=()=>{f.value+=1},p=(H,W)=>{const N=getComputedStyle(document.documentElement).getPropertyValue(H).trim(),M=gg(N);return M?HX(M.h,M.s,M.v,W):`rgba(59, 130, 246, ${W})`},b=it(()=>e.editingCustomElement),m=it(()=>b.value?`${b.value.name} Copy`:"");xi(()=>{e.setIsExporting(!1),Xi(()=>{ae()}),l=new ResizeObserver(()=>{ae()}),a.value&&l.observe(a.value),window.addEventListener("resize",ae),window.addEventListener("keydown",Ve),window.addEventListener("keydown",T),window.addEventListener("keyup",Ve),window.addEventListener("blur",Se),window.addEventListener("brand-theme-updated",g),Yt([()=>e.pages.length,()=>e.canvasSize.width,()=>e.canvasSize.height,()=>e.zoom,()=>e.showMinimap],()=>{Xi(ae)}),Yt(i,H=>{s.value&&s.value.classList.toggle("dark",H)},{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=NX(()=>{if(!e.editingCustomElementId&&n.value&&r.currentTemplateId&&!r.isSaving){const H=r.templates.find(W=>W.id===r.currentTemplateId);H&&r.saveCurrentTemplate(H.name)}},1e3),S=()=>{if(!e.commitCustomElementEdit()){alert(o("sidebar.editSaveFailed"));return}e.cancelCustomElementEdit()},E=H=>{const W=H.trim();if(!W)return;if(!e.saveCustomElementEditAs(W)){alert(o("sidebar.editSaveFailed"));return}e.cancelCustomElementEdit()},V=()=>{confirm(o("sidebar.confirmExitEdit"))&&(e.cancelCustomElementEdit(),requestAnimationFrame(()=>{var H,W;(W=(H=a.value)==null?void 0:H.focus)==null||W.call(H)}))},j=H=>{var M;const W=H;if(!W)return!1;if(W.isContentEditable)return!0;const N=(M=W.tagName)==null?void 0:M.toLowerCase();return N==="input"||N==="textarea"||N==="select"},T=H=>{if(e.disableGlobalShortcuts||!e.editingCustomElementId||d.value||j(H.target)||!(H.ctrlKey||H.metaKey))return;const N=H.key.toLowerCase();if(N==="s"&&H.shiftKey){H.preventDefault(),H.stopPropagation(),d.value=!0;return}if(N==="s"){H.preventDefault(),H.stopPropagation(),S();return}N==="q"&&(H.preventDefault(),H.stopPropagation(),V())},L=Xe(0),R=Xe(0),K=Xe(0),P=Xe(0),I=H=>{const W=H.target;L.value=W.scrollLeft,R.value=W.scrollTop},k=Xe(0),B=Xe(0),q=Xe(0),te=Xe(0),J=it(()=>e.unit||"mm"),oe=H=>{const W=LA(H,e.unit||"mm");return e.unit==="px"?Math.round(W):Number(W.toFixed(1))},se=it(()=>{const H=e.pages.length,W=e.canvasSize.height,N=e.canvasSize.width,M=e.pageSpacingY||0,$=H>0?H*W+(H-1)*M:0;return{width:`${N*e.zoom}px`,height:`${$*e.zoom}px`}}),ae=()=>{if(a.value&&c.value){const H=a.value.clientWidth,W=a.value.clientHeight;q.value=H,te.value=W;const N=parseFloat(se.value.width),M=parseFloat(se.value.height),$=64,ne=64;k.value=Math.max(H,N+$),B.value=Math.max(W,M+ne),N+$<=H&&(k.value=H),M+ne<=W&&(B.value=W);const Ae=a.value.getBoundingClientRect(),xe=c.value.getBoundingClientRect(),he=a.value.clientLeft||0,le=a.value.clientTop||0;L.value=a.value.scrollLeft,R.value=a.value.scrollTop,K.value=xe.left-Ae.left+a.value.scrollLeft-he,P.value=xe.top-Ae.top+a.value.scrollTop-le}};Bi(()=>{var H;w.cancel(),l&&(l.disconnect(),l=null),window.removeEventListener("resize",ae),window.removeEventListener("mousemove",Ce),window.removeEventListener("mouseup",we),window.removeEventListener("keydown",Ve),window.removeEventListener("keydown",T),window.removeEventListener("keyup",Ve),window.removeEventListener("blur",Se),window.removeEventListener("brand-theme-updated",g),(H=a.value)==null||H.removeEventListener("wheel",Fe)});const Y=Xe(!1),D=Xe(null),Z=Xe("horizontal"),G=Xe(0),re=(H,W,N=null)=>{Y.value=!0,D.value=N,Z.value=W,ye(H),window.addEventListener("mousemove",Ce),window.addEventListener("mouseup",we)},ye=H=>{if(!a.value)return;const W=a.value.getBoundingClientRect(),N=e.zoom;if(Z.value==="horizontal"){const M=H.clientY-W.top+a.value.scrollTop;G.value=(M-P.value)/N}else{const M=H.clientX-W.left+a.value.scrollLeft;G.value=(M-K.value)/N}},Ce=H=>{Y.value&&(H.preventDefault(),ye(H),D.value&&e.updateGuide(D.value,G.value))},we=H=>{if(!Y.value)return;const W=a.value.getBoundingClientRect();let N=!1;Z.value==="horizontal"?H.clientY<W.top&&(N=!0):H.clientX<W.left&&(N=!0),N?D.value&&e.removeGuide(D.value):D.value?e.updateGuide(D.value,G.value):e.addGuide({type:Z.value,position:G.value}),Y.value=!1,D.value=null,window.removeEventListener("mousemove",Ce),window.removeEventListener("mouseup",we)},Fe=H=>{H.ctrlKey&&(H.preventDefault(),H.deltaY<0?e.setZoom(Math.min(5,e.zoom+.1)):e.setZoom(Math.max(.2,e.zoom-.1)))},Ve=H=>{var W,N;e.disableGlobalShortcuts||(H.key==="Control"||H.key==="Meta")&&(H.type==="keydown"&&!H.repeat?(W=a.value)==null||W.addEventListener("wheel",Fe,{passive:!1}):H.type==="keyup"&&((N=a.value)==null||N.removeEventListener("wheel",Fe)))},Se=()=>{var H;(H=a.value)==null||H.removeEventListener("wheel",Fe)},ke=H=>{a.value&&a.value.scrollTo({left:H.left,top:H.top,behavior:"auto"})},ie=H=>{var Ne;const W=((Ne=H.style)==null?void 0:Ne.rotate)||0;if(W===0)return{minX:H.x,maxX:H.x+H.width,minY:H.y,maxY:H.y+H.height};const N=H.x+H.width/2,M=H.y+H.height/2,$=W*Math.PI/180,ne=Math.cos($),Ae=Math.sin($),xe=[{x:H.x,y:H.y},{x:H.x+H.width,y:H.y},{x:H.x,y:H.y+H.height},{x:H.x+H.width,y:H.y+H.height}];let he=1/0,le=-1/0,Oe=1/0,Ue=-1/0;for(const Te of xe){const De=N+(Te.x-N)*ne-(Te.y-M)*Ae,Qe=M+(Te.x-N)*Ae+(Te.y-M)*ne;De<he&&(he=De),De>le&&(le=De),Qe<Oe&&(Oe=Qe),Qe>Ue&&(Ue=Qe)}return{minX:he,maxX:le,minY:Oe,maxY:Ue}},O=it(()=>{if(!e.isDragging||e.selectedElementIds.length===0)return null;const H=[];for(const xe of e.selectedElementIds)for(const he of e.pages){const le=he.elements.find(Oe=>Oe.id===xe);le&&H.push(le)}if(H.length===0)return null;let W=1/0,N=-1/0,M=1/0,$=-1/0;for(const xe of H){const he=ie(xe);he.minX<W&&(W=he.minX),he.maxX>N&&(N=he.maxX),he.minY<M&&(M=he.minY),he.maxY>$&&($=he.maxY)}const ne=(W+N)/2,Ae=(M+$)/2;return{minX:W,maxX:N,minY:M,maxY:$,centerX:ne,centerY:Ae}}),ee=it(()=>{if(!O.value)return{h:[],v:[]};f.value;const H=p("--brand-500",.5),{minX:W,maxX:N,minY:M,maxY:$}=O.value;return{h:[{position:W,color:H},{position:N,color:H}],v:[{position:M,color:H},{position:$,color:H}]}});return(H,W)=>{var N;return Ee(),Pe("div",{ref_key:"rootContainer",ref:s,class:"h-full w-full flex flex-col bg-gray-100 overflow-hidden"},[et(Zue),F("div",zde,[et(Qce),F("main",Vde,[Q(e).editingCustomElementId?(Ee(),Pe("div",jde,[F("div",qde,pe(Q(o)("sidebar.editingElement",{name:((N=b.value)==null?void 0:N.name)||""})),1),F("div",Kde,[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(Q(s5),{class:"w-4 h-4"}),Ht(" "+pe(Q(o)("sidebar.saveEdit")),1)]),F("button",{onClick:W[0]||(W[0]=M=>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(Q(vP),{class:"w-4 h-4"}),Ht(" "+pe(Q(o)("sidebar.saveAs")),1)]),F("button",{onClick:V,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(Q(Hde),{class:"w-4 h-4"}),Ht(" "+pe(Q(o)("sidebar.exitEdit")),1)])])])):pt("",!0),et(xde),F("div",Gde,[F("div",Wde,[W[5]||(W[5]=F("div",{class:"w-5 flex-none bg-gray-100 border-r border-gray-300"},null,-1)),F("div",Xde,[et(EN,{type:"horizontal",zoom:Q(e).zoom,scroll:L.value,offset:K.value,thick:20,unit:Q(e).unit||"mm",indicators:ee.value.h,onGuideDragStart:W[1]||(W[1]=M=>re(M,"horizontal"))},null,8,["zoom","scroll","offset","unit","indicators"])])]),F("div",Yde,[F("div",Zde,[et(EN,{type:"vertical",zoom:Q(e).zoom,scroll:R.value,offset:P.value,thick:20,unit:Q(e).unit||"mm",indicators:ee.value.v,onGuideDragStart:W[2]||(W[2]=M=>re(M,"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:I,onClick:W[3]||(W[3]=M=>{(M.target===a.value||M.target===M.currentTarget)&&Q(e).selectGuide(null)})},[F("div",{ref_key:"canvasWrapper",ref:c,style:wt(se.value),class:"mx-auto relative"},[et(q6,{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:wt({width:`${k.value}px`,height:`${B.value}px`})},[O.value?(Ee(),Pe(Mt,{key:0},[F("div",{class:"absolute w-full border-t border-blue-500 border-dashed",style:wt({top:`${P.value+Math.round(O.value.minY*Q(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:wt({left:`${L.value+10}px`})},pe(oe(O.value.minY))+" "+pe(J.value),5)],4),F("div",{class:"absolute w-full border-t border-dashed theme-border",style:wt({top:`${P.value+Math.round(O.value.maxY*Q(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:wt({left:`${L.value+10}px`})},pe(oe(O.value.maxY))+" "+pe(J.value),5)],4),F("div",{class:"absolute h-full border-l border-dashed theme-border",style:wt({left:`${K.value+Math.round(O.value.minX*Q(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:wt({top:`${R.value+10}px`})},pe(oe(O.value.minX))+" "+pe(J.value),5)],4),F("div",{class:"absolute h-full border-l border-dashed theme-border",style:wt({left:`${K.value+Math.round(O.value.maxX*Q(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:wt({top:`${R.value+10}px`})},pe(oe(O.value.maxX))+" "+pe(J.value),5)],4)],64)):pt("",!0),(Ee(!0),Pe(Mt,null,Yr(Q(e).guides,M=>(Ee(),Pe(Mt,{key:M.id},[M.type==="horizontal"?(Ee(),Pe("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:wt({top:`${P.value+M.position*Q(e).zoom}px`}),onMousedown:Ci($=>{Q(e).selectGuide(M.id),re($,"horizontal",M.id)},["stop"])},[F("div",{class:Ct(["w-full",Q(e).highlightedGuideId===M.id?"border-t-2 theme-border-strong":"border-t theme-border","theme-border-hover"])},null,2),F("div",_de,pe(oe(M.position))+pe(J.value),1)],44,Jde)):(Ee(),Pe("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:wt({left:`${K.value+M.position*Q(e).zoom}px`}),onMousedown:Ci($=>{Q(e).selectGuide(M.id),re($,"vertical",M.id)},["stop"])},[F("div",{class:Ct(["h-full",Q(e).highlightedGuideId===M.id?"border-l-2 theme-border-strong":"border-l theme-border","theme-border-hover"])},null,2),F("div",ehe,pe(oe(M.position))+pe(J.value),1)],44,$de))],64))),128)),Y.value&&!D.value?(Ee(),Pe("div",{key:1,class:Ct(["absolute border-dashed pointer-events-none theme-border",Z.value==="horizontal"?"left-0 w-full border-t":"top-0 h-full border-l"]),style:wt({top:Z.value==="horizontal"?`${P.value+G.value*Q(e).zoom}px`:void 0,left:Z.value==="vertical"?`${K.value+G.value*Q(e).zoom}px`:void 0})},[F("div",{class:Ct(["absolute theme-bg text-white text-[10px] px-1 rounded",Z.value==="horizontal"?"left-2 -top-4":"top-2 -left-4"])},pe(oe(G.value))+pe(J.value),3)],6)):pt("",!0),Q(e).highlightedEdge?(Ee(),Pe("div",the,[Q(e).highlightedEdge==="top"?(Ee(),Pe("div",{key:0,class:"absolute left-0 w-full border-t theme-border",style:wt({top:`${P.value}px`})},null,4)):Q(e).highlightedEdge==="bottom"?(Ee(),Pe("div",{key:1,class:"absolute left-0 w-full border-t theme-border",style:wt({top:`${P.value+Q(e).canvasSize.height*Q(e).zoom}px`})},null,4)):Q(e).highlightedEdge==="left"?(Ee(),Pe("div",{key:2,class:"absolute top-0 h-full border-l theme-border",style:wt({left:`${K.value}px`})},null,4)):Q(e).highlightedEdge==="right"?(Ee(),Pe("div",{key:3,class:"absolute top-0 h-full border-l theme-border",style:wt({left:`${K.value+Q(e).canvasSize.width*Q(e).zoom}px`})},null,4)):pt("",!0)])):pt("",!0)],4)],544)])]),Q(e).showMinimap?(Ee(),Pe("div",rhe,[et(Dde,{"scroll-width":k.value,"scroll-height":B.value,"viewport-width":q.value,"viewport-height":te.value,"scroll-left":L.value,"scroll-top":R.value,pages:Q(e).pages,"page-width":Q(e).canvasSize.width,"page-height":Q(e).canvasSize.height,zoom:Q(e).zoom,"content-offset-x":K.value,"content-offset-y":P.value,"canvas-background":Q(e).canvasBackground,"show-header-line":Q(e).showHeaderLine,"show-footer-line":Q(e).showFooterLine,"header-height":Q(e).headerHeight,"footer-height":Q(e).footerHeight,watermark:Q(e).watermark||null,"onUpdate:scroll":ke},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"])])):pt("",!0)]),et(fde)]),et(zg,{show:d.value,"initial-value":m.value,title:Q(o)("sidebar.saveAsCustomElement"),placeholder:Q(o)("sidebar.enterNamePlaceholder"),onClose:W[4]||(W[4]=M=>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)}}}),ihe=()=>{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{}};class TN 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=MI,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=dT();td(r);const n=eT(nhe);this.themeApi=du(),ihe(),n.use(r);const i=this.getAttribute("lang"),o=UI(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)),n.mount(this.mountEl),this.printApi=vx(),this.printSettings=Eg(),this.designerStore=un(r),this.templateStore=dg(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)}getVariables(){return this.designerStore?Rt(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:Rt(this.designerStore.pages),canvasSize:Rt(this.designerStore.canvasSize),guides:Rt(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:Rt(this.designerStore.watermark),testData:Rt(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))}setCrudMode(r){var n,i;wX(r),r==="remote"&&((n=this.templateStore)==null||n.loadTemplates(),(i=this.designerStore)==null||i.loadCustomElements())}setCrudEndpoints(r,n={}){bX({endpoints:{...r,baseUrl:n.baseUrl},headers:n.headers})}getTemplates(r={}){return this.templateStore?r.includeData?Rt(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?Rt(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||Oi(),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={}){this.templateStore&&Array.isArray(r)&&(this.templateStore.templates=r.filter(i=>i&&typeof i.id=="string"&&typeof i.name=="string").map(i=>({id:i.id,name:i.name,data:i.data||{},updatedAt:i.updatedAt||Date.now()})),n.currentTemplateId&&(this.templateStore.currentTemplateId=n.currentTemplateId),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?Rt(this.designerStore.customElements):this.designerStore.customElements.map(n=>({id:n.id,name:n.name})):[]}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||Oi(),A=this.designerStore.customElements.findIndex(c=>c.id===s),l={id:s,name:r.name,element:Rt(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:Rt(n.element)})),this.designerStore.saveCustomElements())}deleteCustomElement(r){this.designerStore&&this.designerStore.removeCustomElement(r)}}const IN="print-designer";customElements.get(IN)||customElements.define(IN,TN);/*!
501
+ }`;var Sr=H9(function(){return hr(Be,jt+"return "+gt).apply(r,Me)});if(Sr.source=gt,I3(Sr))throw Sr;return Sr}function G5e(h){return ln(h).toLowerCase()}function W5e(h){return ln(h).toUpperCase()}function X5e(h,v,C){if(h=ln(h),h&&(C||v===r))return ga(h);if(!h||!(v=Ro(v)))return h;var X=Lo(h),ce=Lo(v),Be=Wu(X,ce),Me=Xu(X,ce)+1;return Bs(X,Be,Me).join("")}function Y5e(h,v,C){if(h=ln(h),h&&(C||v===r))return h.slice(0,oA(h)+1);if(!h||!(v=Ro(v)))return h;var X=Lo(h),ce=Xu(X,Lo(v))+1;return Bs(X,0,ce).join("")}function Z5e(h,v,C){if(h=ln(h),h&&(C||v===r))return h.replace(ri,"");if(!h||!(v=Ro(v)))return h;var X=Lo(h),ce=Wu(X,Lo(v));return Bs(X,ce).join("")}function J5e(h,v){var C=K,X=P;if(Xn(v)){var ce="separator"in v?v.separator:ce;C="length"in v?xr(v.length):C,X="omission"in v?Ro(v.omission):X}h=ln(h);var Be=h.length;if(za(h)){var Me=Lo(h);Be=Me.length}if(C>=Be)return h;var ze=C-iA(X);if(ze<1)return X;var Ye=Me?Bs(Me,0,ze).join(""):h.slice(0,ze);if(ce===r)return Ye+X;if(Me&&(ze+=Ye.length-ze),F3(ce)){if(h.slice(ze).search(ce)){var At,lt=Ye;for(ce.global||(ce=Rl(ce.source,ln(Io.exec(ce))+"g")),ce.lastIndex=0;At=ce.exec(lt);)var gt=At.index;Ye=Ye.slice(0,gt===r?ze:gt)}}else if(h.indexOf(Ro(ce),ze)!=ze){var St=Ye.lastIndexOf(ce);St>-1&&(Ye=Ye.slice(0,St))}return Ye+X}function _5e(h){return h=ln(h),h&&Pr.test(h)?h.replace(tr,Dl):h}var $5e=Bh(function(h,v,C){return h+(C?" ":"")+v.toUpperCase()}),k3=zH("toUpperCase");function Q9(h,v,C){return h=ln(h),v=C?r:v,v===r?Ju(h)?ZA(h):Re(h):h.match(v)||[]}var H9=wr(function(h,v){try{return Ki(h,r,v)}catch(C){return I3(C)?C:new zt(C)}}),exe=Zl(function(h,v){return Gi(v,function(C){C=nl(C),Bt(h,C,O3(h[C],h))}),h});function txe(h){var v=h==null?0:h.length,C=Jt();return h=v?_r(h,function(X){if(typeof X[1]!="function")throw new Di(a);return[C(X[0]),X[1]]}):[],wr(function(X){for(var ce=-1;++ce<v;){var Be=h[ce];if(Ki(Be[0],this,X))return Ki(Be[1],this,X)}})}function rxe(h){return Wr(yt(h,c))}function N3(h){return function(){return h}}function nxe(h,v){return h==null||h!==h?v:h}var ixe=jH(),oxe=jH(!0);function Oa(h){return h}function U3(h){return Tf(typeof h=="function"?h:yt(h,c))}function axe(h){return z1(yt(h,c))}function sxe(h,v){return ph(h,yt(v,c))}var Axe=wr(function(h,v){return function(C){return jl(C,h,v)}}),lxe=wr(function(h,v){return function(C){return jl(h,C,v)}});function M3(h,v,C){var X=to(v),ce=oi(v,X);C==null&&!(Xn(v)&&(ce.length||!X.length))&&(C=v,v=h,h=this,ce=oi(v,to(v)));var Be=!(Xn(C)&&"chain"in C)||!!C.chain,Me=_l(h);return Gi(ce,function(ze){var Ye=v[ze];h[ze]=Ye,Me&&(h.prototype[ze]=function(){var At=this.__chain__;if(Be||At){var lt=h(this.__wrapped__),gt=lt.__actions__=Ea(this.__actions__);return gt.push({func:Ye,args:arguments,thisArg:h}),lt.__chain__=At,lt}return Ye.apply(h,ha([this.value()],arguments))})}),h}function uxe(){return ni._===this&&(ni._=Kn),this}function D3(){}function cxe(h){return h=xr(h),wr(function(v){return V1(v,h)})}var fxe=h3(_r),dxe=h3(Ku),hxe=h3(U);function z9(h){return w3(h)?sr(nl(h)):K1(h)}function gxe(h){return function(v){return h==null?r:Wn(h,v)}}var pxe=KH(),vxe=KH(!0);function R3(){return[]}function Q3(){return!1}function mxe(){return{}}function yxe(){return""}function bxe(){return!0}function wxe(h,v){if(h=xr(h),h<1||h>oe)return[];var C=Y,X=eo(h,Y);v=Jt(v),h-=Y;for(var ce=Ui(X,v);++C<h;)v(C);return ce}function xxe(h){return mr(h)?_r(h,nl):Xa(h)?[h]:Ea(s9(ln(h)))}function Bxe(h){var v=++ma;return ln(h)+v}var Exe=$1(function(h,v){return h+v},0),Cxe=g3("ceil"),Sxe=$1(function(h,v){return h/v},1),Oxe=g3("floor");function Txe(h){return h&&h.length?Fn(h,Oa,ai):r}function Ixe(h,v){return h&&h.length?Fn(h,Jt(v,2),ai):r}function Fxe(h){return ur(h,Oa)}function Pxe(h,v){return ur(h,Jt(v,2))}function Lxe(h){return h&&h.length?Fn(h,Oa,Kl):r}function kxe(h,v){return h&&h.length?Fn(h,Jt(v,2),Kl):r}var Nxe=$1(function(h,v){return h*v},1),Uxe=g3("round"),Mxe=$1(function(h,v){return h-v},0);function Dxe(h){return h&&h.length?Dn(h,Oa):0}function Rxe(h,v){return h&&h.length?Dn(h,Jt(v,2)):0}return me.after=a2e,me.ary=m9,me.assign=W2e,me.assignIn=L9,me.assignInWith=fy,me.assignWith=X2e,me.at=Y2e,me.before=y9,me.bind=O3,me.bindAll=exe,me.bindKey=b9,me.castArray=m2e,me.chain=g9,me.chunk=Obe,me.compact=Tbe,me.concat=Ibe,me.cond=txe,me.conforms=rxe,me.constant=N3,me.countBy=Dwe,me.create=Z2e,me.curry=w9,me.curryRight=x9,me.debounce=B9,me.defaults=J2e,me.defaultsDeep=_2e,me.defer=s2e,me.delay=A2e,me.difference=Fbe,me.differenceBy=Pbe,me.differenceWith=Lbe,me.drop=kbe,me.dropRight=Nbe,me.dropRightWhile=Ube,me.dropWhile=Mbe,me.fill=Dbe,me.filter=Qwe,me.flatMap=Vwe,me.flatMapDeep=jwe,me.flatMapDepth=qwe,me.flatten=c9,me.flattenDeep=Rbe,me.flattenDepth=Qbe,me.flip=l2e,me.flow=ixe,me.flowRight=oxe,me.fromPairs=Hbe,me.functions=o5e,me.functionsIn=a5e,me.groupBy=Kwe,me.initial=Vbe,me.intersection=jbe,me.intersectionBy=qbe,me.intersectionWith=Kbe,me.invert=A5e,me.invertBy=l5e,me.invokeMap=Wwe,me.iteratee=U3,me.keyBy=Xwe,me.keys=to,me.keysIn=Sa,me.map=ay,me.mapKeys=c5e,me.mapValues=f5e,me.matches=axe,me.matchesProperty=sxe,me.memoize=Ay,me.merge=d5e,me.mergeWith=k9,me.method=Axe,me.methodOf=lxe,me.mixin=M3,me.negate=ly,me.nthArg=cxe,me.omit=h5e,me.omitBy=g5e,me.once=u2e,me.orderBy=Ywe,me.over=fxe,me.overArgs=c2e,me.overEvery=dxe,me.overSome=hxe,me.partial=T3,me.partialRight=E9,me.partition=Zwe,me.pick=p5e,me.pickBy=N9,me.property=z9,me.propertyOf=gxe,me.pull=Ybe,me.pullAll=d9,me.pullAllBy=Zbe,me.pullAllWith=Jbe,me.pullAt=_be,me.range=pxe,me.rangeRight=vxe,me.rearg=f2e,me.reject=$we,me.remove=$be,me.rest=d2e,me.reverse=C3,me.sampleSize=t2e,me.set=m5e,me.setWith=y5e,me.shuffle=r2e,me.slice=ewe,me.sortBy=o2e,me.sortedUniq=swe,me.sortedUniqBy=Awe,me.split=V5e,me.spread=h2e,me.tail=lwe,me.take=uwe,me.takeRight=cwe,me.takeRightWhile=fwe,me.takeWhile=dwe,me.tap=Twe,me.throttle=g2e,me.thru=oy,me.toArray=I9,me.toPairs=U9,me.toPairsIn=M9,me.toPath=xxe,me.toPlainObject=P9,me.transform=b5e,me.unary=p2e,me.union=hwe,me.unionBy=gwe,me.unionWith=pwe,me.uniq=vwe,me.uniqBy=mwe,me.uniqWith=ywe,me.unset=w5e,me.unzip=S3,me.unzipWith=h9,me.update=x5e,me.updateWith=B5e,me.values=Sh,me.valuesIn=E5e,me.without=bwe,me.words=Q9,me.wrap=v2e,me.xor=wwe,me.xorBy=xwe,me.xorWith=Bwe,me.zip=Ewe,me.zipObject=Cwe,me.zipObjectDeep=Swe,me.zipWith=Owe,me.entries=U9,me.entriesIn=M9,me.extend=L9,me.extendWith=fy,M3(me,me),me.add=Exe,me.attempt=H9,me.camelCase=T5e,me.capitalize=D9,me.ceil=Cxe,me.clamp=C5e,me.clone=y2e,me.cloneDeep=w2e,me.cloneDeepWith=x2e,me.cloneWith=b2e,me.conformsTo=B2e,me.deburr=R9,me.defaultTo=nxe,me.divide=Sxe,me.endsWith=I5e,me.eq=vA,me.escape=F5e,me.escapeRegExp=P5e,me.every=Rwe,me.find=Hwe,me.findIndex=l9,me.findKey=$2e,me.findLast=zwe,me.findLastIndex=u9,me.findLastKey=e5e,me.floor=Oxe,me.forEach=p9,me.forEachRight=v9,me.forIn=t5e,me.forInRight=r5e,me.forOwn=n5e,me.forOwnRight=i5e,me.get=P3,me.gt=E2e,me.gte=C2e,me.has=s5e,me.hasIn=L3,me.head=f9,me.identity=Oa,me.includes=Gwe,me.indexOf=zbe,me.inRange=S5e,me.invoke=u5e,me.isArguments=Df,me.isArray=mr,me.isArrayBuffer=S2e,me.isArrayLike=Ca,me.isArrayLikeObject=yi,me.isBoolean=O2e,me.isBuffer=uc,me.isDate=T2e,me.isElement=I2e,me.isEmpty=F2e,me.isEqual=P2e,me.isEqualWith=L2e,me.isError=I3,me.isFinite=k2e,me.isFunction=_l,me.isInteger=C9,me.isLength=uy,me.isMap=S9,me.isMatch=N2e,me.isMatchWith=U2e,me.isNaN=M2e,me.isNative=D2e,me.isNil=Q2e,me.isNull=R2e,me.isNumber=O9,me.isObject=Xn,me.isObjectLike=si,me.isPlainObject=qp,me.isRegExp=F3,me.isSafeInteger=H2e,me.isSet=T9,me.isString=cy,me.isSymbol=Xa,me.isTypedArray=Ch,me.isUndefined=z2e,me.isWeakMap=V2e,me.isWeakSet=j2e,me.join=Gbe,me.kebabCase=L5e,me.last=Es,me.lastIndexOf=Wbe,me.lowerCase=k5e,me.lowerFirst=N5e,me.lt=q2e,me.lte=K2e,me.max=Txe,me.maxBy=Ixe,me.mean=Fxe,me.meanBy=Pxe,me.min=Lxe,me.minBy=kxe,me.stubArray=R3,me.stubFalse=Q3,me.stubObject=mxe,me.stubString=yxe,me.stubTrue=bxe,me.multiply=Nxe,me.nth=Xbe,me.noConflict=uxe,me.noop=D3,me.now=sy,me.pad=U5e,me.padEnd=M5e,me.padStart=D5e,me.parseInt=R5e,me.random=O5e,me.reduce=Jwe,me.reduceRight=_we,me.repeat=Q5e,me.replace=H5e,me.result=v5e,me.round=Uxe,me.runInContext=Ge,me.sample=e2e,me.size=n2e,me.snakeCase=z5e,me.some=i2e,me.sortedIndex=twe,me.sortedIndexBy=rwe,me.sortedIndexOf=nwe,me.sortedLastIndex=iwe,me.sortedLastIndexBy=owe,me.sortedLastIndexOf=awe,me.startCase=j5e,me.startsWith=q5e,me.subtract=Mxe,me.sum=Dxe,me.sumBy=Rxe,me.template=K5e,me.times=wxe,me.toFinite=$l,me.toInteger=xr,me.toLength=F9,me.toLower=G5e,me.toNumber=Cs,me.toSafeInteger=G2e,me.toString=ln,me.toUpper=W5e,me.trim=X5e,me.trimEnd=Y5e,me.trimStart=Z5e,me.truncate=J5e,me.unescape=_5e,me.uniqueId=Bxe,me.upperCase=$5e,me.upperFirst=k3,me.each=p9,me.eachRight=v9,me.first=f9,M3(me,(function(){var h={};return Rn(me,function(v,C){Mr.call(me.prototype,C)||(h[C]=v)}),h})(),{chain:!1}),me.VERSION=n,Gi(["bind","bindKey","curry","curryRight","partial","partialRight"],function(h){me[h].placeholder=me}),Gi(["drop","take"],function(h,v){Or.prototype[h]=function(C){C=C===r?1:mi(xr(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,Y),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==B||C==te;Or.prototype[h]=function(ce){var Be=this.clone();return Be.__iteratees__.push({iteratee:Jt(ce,3),type:C}),Be.__filtered__=Be.__filtered__||X,Be}}),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=wr(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(ly(Jt(h)))},Or.prototype.slice=function(h,v){h=xr(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=xr(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(Y)},Rn(Or.prototype,function(h,v){var C=/^(?:filter|find|map|reject)|While$/.test(v),X=/^(?:head|last)$/.test(v),ce=me[X?"take"+(v=="last"?"Right":""):v],Be=X||/^find/.test(v);ce&&(me.prototype[v]=function(){var Me=this.__wrapped__,ze=X?[1]:arguments,Ye=Me instanceof Or,At=ze[0],lt=Ye||mr(Me),gt=function(Lr){var zr=ce.apply(me,ha([Lr],ze));return X&&St?zr[0]:zr};lt&&C&&typeof At=="function"&&At.length!=1&&(Ye=lt=!1);var St=this.__chain__,jt=!!this.__actions__.length,rr=Be&&!St,Sr=Ye&&!jt;if(!Be&&lt){Me=Sr?Me:new Or(this);var nr=h.apply(Me,ze);return nr.__actions__.push({func:oy,args:[gt],thisArg:r}),new $o(nr,St)}return rr&&Sr?h.apply(this,ze):(nr=this.thru(gt),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);me.prototype[h]=function(){var ce=arguments;if(X&&!this.__chain__){var Be=this.value();return v.apply(mr(Be)?Be:[],ce)}return this[C](function(Me){return v.apply(mr(Me)?Me:[],ce)})}}),Rn(Or.prototype,function(h,v){var C=me[v];if(C){var X=C.name+"";Mr.call(ac,X)||(ac[X]=[]),ac[X].push({name:v,func:C})}}),ac[_1(r,m).name]=[{name:"wrapper",func:r}],Or.prototype.clone=k1,Or.prototype.reverse=r3,Or.prototype.value=ch,me.prototype.at=Iwe,me.prototype.chain=Fwe,me.prototype.commit=Pwe,me.prototype.next=Lwe,me.prototype.plant=Nwe,me.prototype.reverse=Uwe,me.prototype.toJSON=me.prototype.valueOf=me.prototype.value=Mwe,me.prototype.first=me.prototype.head,JA&&(me.prototype[JA]=kwe),me}),No=aA();co?((co.exports=No)._=No,da._=No):ni._=No}).call(fse)})(Vg,Vg.exports)),Vg.exports}var hse=dse();const gse={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function pse(t,e){return Ee(),Pe("svg",gse,[...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 vse=Lt({name:"material-symbols-keyboard",render:pse}),mse={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function yse(t,e){return Ee(),Pe("svg",mse,[...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 bse=Lt({name:"material-symbols-info",render:yse}),Ex={name:"vue-print-designer",version:"0.9.88",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"}},wse={class:"bg-white rounded-lg shadow-xl w-[700px] max-w-full h-[500px] flex overflow-hidden"},xse={class:"w-48 bg-gray-50 border-r border-gray-200 flex flex-col"},Bse={class:"h-[60px] flex items-center px-4 border-b border-gray-200"},Ese={class:"text-lg font-semibold text-gray-800"},Cse={class:"flex-1 py-2"},Sse={class:"flex-1 flex flex-col min-w-0"},Ose={class:"h-[60px] flex items-center justify-between px-4 border-b border-gray-200"},Tse={class:"text-lg font-semibold text-gray-800"},Ise={class:"flex-1 overflow-y-auto p-6"},Fse={key:0,class:"space-y-6"},Pse={class:"grid grid-cols-1 gap-6 text-sm"},Lse={class:"font-medium text-gray-900 mb-3 border-b pb-1"},kse={class:"space-y-2 text-gray-600"},Nse={class:"flex justify-between items-center"},Use={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Mse={class:"flex justify-between items-center"},Dse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Rse={class:"flex justify-between items-center"},Qse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Hse={class:"flex justify-between items-center"},zse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Vse={class:"flex justify-between items-center"},jse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},qse={class:"flex justify-between items-center"},Kse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Gse={class:"flex justify-between items-center"},Wse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Xse={class:"flex justify-between items-center"},Yse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},Zse={class:"flex justify-between items-center"},Jse={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},_se={class:"flex justify-between items-center"},$se={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},eAe={class:"flex justify-between items-center"},tAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},rAe={class:"flex justify-between items-center"},nAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},iAe={class:"flex justify-between items-center"},oAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},aAe={class:"font-medium text-gray-900 mb-3 border-b pb-1"},sAe={class:"space-y-2 text-gray-600"},AAe={class:"flex justify-between items-center"},lAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},uAe={class:"flex justify-between items-center"},cAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},fAe={class:"flex justify-between items-center"},dAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},hAe={class:"flex justify-between items-center"},gAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},pAe={class:"flex justify-between items-center"},vAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},mAe={class:"flex justify-between items-center"},yAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},bAe={class:"flex justify-between items-center"},wAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},xAe={class:"flex justify-between items-center"},BAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},EAe={class:"flex justify-between items-center"},CAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},SAe={class:"flex justify-between items-center"},OAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},TAe={class:"font-medium text-gray-900 mb-3 border-b pb-1"},IAe={class:"space-y-2 text-gray-600"},FAe={class:"flex justify-between items-center"},PAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},LAe={class:"flex justify-between items-center"},kAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},NAe={class:"flex justify-between items-center"},UAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},MAe={class:"flex justify-between items-center"},DAe={class:"bg-gray-100 px-2 py-0.5 rounded border text-xs"},RAe={key:1,class:"space-y-6"},QAe={class:"text-center mb-8"},HAe={class:"text-xl font-bold text-gray-800"},zAe={class:"mt-4 flex justify-center"},VAe=["title"],jAe={class:"text-gray-600"},qAe={class:"font-medium text-gray-900 mb-3 border-b pb-1"},KAe={class:"bg-gray-50 rounded-lg border border-gray-200 overflow-hidden"},GAe={class:"w-full text-sm text-left"},WAe={class:"bg-gray-100 text-gray-700 font-medium"},XAe={class:"px-4 py-2 border-b"},YAe={class:"px-4 py-2 border-b"},ZAe={class:"divide-y divide-gray-200"},JAe={class:"px-4 py-2 text-gray-700 font-mono"},_Ae={class:"px-4 py-2 text-gray-500"},$Ae={class:"p-4 border-t border-gray-200 bg-gray-50 flex justify-end rounded-br-lg"},ele=Tr({__name:"HelpModal",props:{show:{type:Boolean}},emits:["update:show"],setup(t,{emit:e}){const r=t,n=e,{t:i}=zn(),o=un(),a=ui("modal-container",Xe(null)),s=Xe("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(Ex.dependencies).map(([f,g])=>({name:f,version:g})),c=Ex.version,d=hse.startCase(Ex.name);return(f,g)=>(Ee(),Nr(Ns,{to:Q(a)||"body"},[t.show?(Ee(),Pe("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",wse,[F("div",xse,[F("div",Bse,[F("h3",Ese,pe(Q(i)("help.title")),1)]),F("div",Cse,[F("button",{onClick:g[0]||(g[0]=p=>s.value="shortcuts"),class:Ct(["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(Q(vse),{class:"w-5 h-5"}),Ht(" "+pe(Q(i)("shortcuts.title")),1)],2),F("button",{onClick:g[1]||(g[1]=p=>s.value="about"),class:Ct(["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(Q(bse),{class:"w-5 h-5"}),Ht(" "+pe(Q(i)("help.about")),1)],2)])]),F("div",Sse,[F("div",Ose,[F("h3",Tse,pe(s.value==="shortcuts"?Q(i)("shortcuts.keyboardShortcuts"):Q(i)("help.aboutProject",{name:Q(d)})),1),F("button",{onClick:A,class:"p-1 hover:bg-gray-100 rounded-full transition-colors text-gray-500"},[et(Q(qc),{class:"w-4 h-4"})])]),F("div",Ise,[s.value==="shortcuts"?(Ee(),Pe("div",Fse,[F("div",Pse,[F("div",null,[F("h4",Lse,pe(Q(i)("shortcuts.general")),1),F("ul",kse,[F("li",Nse,[F("span",null,pe(Q(i)("common.save")),1),g[2]||(g[2]=Ht()),F("kbd",Use,pe(Q(Jr)(["Ctrl","S"])),1)]),F("li",Mse,[F("span",null,pe(Q(i)("shortcuts.saveAsTemplate")),1),g[3]||(g[3]=Ht()),F("kbd",Dse,pe(Q(Jr)(["Ctrl","Shift","S"])),1)]),F("li",Rse,[F("span",null,pe(Q(i)("editor.print")),1),g[4]||(g[4]=Ht()),F("kbd",Qse,pe(Q(Jr)(["Ctrl","P"])),1)]),F("li",Hse,[F("span",null,pe(Q(i)("editor.exportPdf")),1),g[5]||(g[5]=Ht()),F("kbd",zse,pe(Q(Jr)(["Ctrl","Shift","E"])),1)]),F("li",Vse,[F("span",null,pe(Q(i)("editor.preview")),1),g[6]||(g[6]=Ht()),F("kbd",jse,pe(Q(Jr)(["Ctrl","Shift","P"])),1)]),F("li",qse,[F("span",null,pe(Q(i)("editor.viewJson")),1),g[7]||(g[7]=Ht()),F("kbd",Kse,pe(Q(Jr)(["Ctrl","Shift","J"])),1)]),F("li",Gse,[F("span",null,pe(Q(i)("shortcuts.newTemplate")),1),g[8]||(g[8]=Ht()),F("kbd",Wse,pe(Q(Jr)(["Ctrl","Alt","N"])),1)]),F("li",Xse,[F("span",null,pe(Q(i)("shortcuts.openSettings")),1),g[9]||(g[9]=Ht()),F("kbd",Yse,pe(Q(Jr)(["Ctrl",","])),1)]),F("li",Zse,[F("span",null,pe(Q(i)("common.undo")),1),g[10]||(g[10]=Ht()),F("kbd",Jse,pe(Q(Jr)(["Ctrl","Z"])),1)]),F("li",_se,[F("span",null,pe(Q(i)("common.redo")),1),g[11]||(g[11]=Ht()),F("kbd",$se,pe(Q(Jr)(["Ctrl","Y"])),1)]),F("li",eAe,[F("span",null,pe(Q(i)("shortcuts.openHelp")),1),g[12]||(g[12]=Ht()),F("kbd",tAe,pe(Q(Jr)(["Ctrl","H"])),1)]),F("li",rAe,[F("span",null,pe(Q(i)("shortcuts.zoom")),1),g[13]||(g[13]=Ht()),F("kbd",nAe,pe(Q(Jr)(["Ctrl","Wheel"])),1)]),F("li",iAe,[F("span",null,pe(Q(i)("shortcuts.closeModal")),1),g[14]||(g[14]=Ht()),F("kbd",oAe,pe(Q(Jr)(["Esc"])),1)])])]),F("div",null,[F("h4",aAe,pe(Q(i)("shortcuts.editing")),1),F("ul",sAe,[F("li",AAe,[F("span",null,pe(Q(i)("common.copy")),1),g[15]||(g[15]=Ht()),F("kbd",lAe,pe(Q(Jr)(["Ctrl","C"])),1)]),F("li",uAe,[F("span",null,pe(Q(i)("common.cut")),1),g[16]||(g[16]=Ht()),F("kbd",cAe,pe(Q(Jr)(["Ctrl","X"])),1)]),F("li",fAe,[F("span",null,pe(Q(i)("common.paste")),1),g[17]||(g[17]=Ht()),F("kbd",dAe,pe(Q(Jr)(["Ctrl","V"])),1)]),F("li",hAe,[F("span",null,pe(Q(i)("common.delete")),1),g[18]||(g[18]=Ht()),F("kbd",gAe,pe(Q(Jr)(["Delete"])),1)]),F("li",pAe,[F("span",null,pe(Q(i)("shortcuts.selectAll")),1),g[19]||(g[19]=Ht()),F("kbd",vAe,pe(Q(Jr)(["Ctrl","A"])),1)]),F("li",mAe,[F("span",null,pe(Q(i)("shortcuts.multiSelect")),1),g[20]||(g[20]=Ht()),F("kbd",yAe,pe(Q(Jr)(["Ctrl","Click"])),1)]),F("li",bAe,[F("span",null,pe(Q(i)("common.lock"))+"/"+pe(Q(i)("common.unlock")),1),g[21]||(g[21]=Ht()),F("kbd",wAe,pe(Q(Jr)(["Ctrl","L"])),1)]),F("li",xAe,[F("span",null,pe(Q(i)("shortcuts.customEditSave")),1),g[22]||(g[22]=Ht()),F("kbd",BAe,pe(Q(Jr)(["Ctrl","S"])),1)]),F("li",EAe,[F("span",null,pe(Q(i)("shortcuts.customEditSaveAs")),1),g[23]||(g[23]=Ht()),F("kbd",CAe,pe(Q(Jr)(["Ctrl","Shift","S"])),1)]),F("li",SAe,[F("span",null,pe(Q(i)("shortcuts.customEditExit")),1),g[24]||(g[24]=Ht()),F("kbd",OAe,pe(Q(Jr)(["Ctrl","Q"])),1)])])]),F("div",null,[F("h4",TAe,pe(Q(i)("shortcuts.manipulation")),1),F("ul",IAe,[F("li",FAe,[F("span",null,pe(Q(i)("shortcuts.move")),1),g[25]||(g[25]=Ht()),F("kbd",PAe,pe(Q(i)("shortcuts.arrow")),1)]),F("li",LAe,[F("span",null,pe(Q(i)("shortcuts.fastMove")),1),g[26]||(g[26]=Ht()),F("kbd",kAe,pe(Q(Jr)(["Shift",Q(i)("shortcuts.arrow")])),1)]),F("li",NAe,[F("span",null,pe(Q(i)("shortcuts.snapRotate")),1),g[27]||(g[27]=Ht()),F("kbd",UAe,pe(Q(Jr)(["Shift",Q(i)("shortcuts.drag")])),1)]),F("li",MAe,[F("span",null,pe(Q(i)("shortcuts.resize")),1),g[28]||(g[28]=Ht()),F("kbd",DAe,pe(Q(Jr)(["Shift",Q(i)("shortcuts.resize")])),1)])])])])])):pt("",!0),s.value==="about"?(Ee(),Pe("div",RAe,[F("div",QAe,[g[32]||(g[32]=F("img",{src:cN,alt:"Vue Print Designer",class:"w-12 h-12 mx-auto mb-2"},null,-1)),F("h2",HAe,pe(Q(d)),1),F("div",zAe,[F("a",{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:Q(i)("help.github")},[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",jAe,pe(Q(i)("help.version"))+" "+pe(Q(c)),1)],8,VAe)])]),F("div",null,[F("h4",qAe,pe(Q(i)("help.dependencies")),1),F("div",KAe,[F("table",GAe,[F("thead",WAe,[F("tr",null,[F("th",XAe,pe(Q(i)("help.package")),1),F("th",YAe,pe(Q(i)("help.version")),1)])]),F("tbody",ZAe,[(Ee(!0),Pe(Mt,null,Yr(Q(u),p=>(Ee(),Pe("tr",{key:p.name,class:"hover:bg-gray-50"},[F("td",JAe,pe(p.name),1),F("td",_Ae,pe(p.version),1)]))),128))])])])])])):pt("",!0)]),F("div",$Ae,[F("button",{onClick:A,class:"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors text-sm"},pe(Q(i)("common.close")),1)])])])])):pt("",!0)],8,["to"]))}}),tle={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function rle(t,e){return Ee(),Pe("svg",tle,[...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 nle=Lt({name:"material-symbols-translate",render:rle}),ile={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ole(t,e){return Ee(),Pe("svg",ile,[...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 ale=Lt({name:"material-symbols-cloud",render:ole}),sle={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Ale(t,e){return Ee(),Pe("svg",sle,[...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 dN=Lt({name:"material-symbols-link",render:Ale}),lle={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ule(t,e){return Ee(),Pe("svg",lle,[...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 hN=Lt({name:"material-symbols-link-off",render:ule}),cle={class:"bg-white rounded-lg shadow-xl w-[700px] max-w-full h-[500px] flex overflow-hidden"},fle={class:"w-48 bg-gray-50 border-r border-gray-200 flex flex-col"},dle={class:"h-[60px] flex items-center px-4 border-b border-gray-200"},hle={class:"text-lg font-semibold text-gray-800"},gle={class:"flex-1 py-2"},ple={class:"flex-1 flex flex-col min-w-0 relative"},vle={class:"h-[60px] flex items-center justify-between px-4 border-b border-gray-200"},mle={class:"text-lg font-semibold text-gray-800"},yle={class:"flex-1 overflow-y-auto p-6"},ble={key:0,class:"space-y-4 text-sm text-gray-700"},wle={class:"mb-2 font-medium text-gray-900"},xle={class:"flex items-center gap-3"},Ble={class:"text-xs text-gray-500 mt-2"},Ele={class:"border-t border-gray-200 pt-4"},Cle={class:"mb-2 font-medium text-gray-900"},Sle={class:"flex flex-wrap gap-2"},Ole=["onClick"],Tle={class:"text-xs text-gray-500 mt-2"},Ile={class:"border-t border-gray-200 pt-4"},Fle={class:"flex items-center justify-between"},Ple={class:"font-medium text-gray-900"},Lle={class:"sr-only"},kle={class:"text-xs text-gray-500 mt-2"},Nle={class:"border-t border-gray-200 pt-4"},Ule={class:"flex items-center justify-between"},Mle={class:"font-medium text-gray-900"},Dle={class:"sr-only"},Rle={class:"text-xs text-gray-500 mt-2"},Qle={class:"border-t border-gray-200 pt-4 space-y-3"},Hle={class:"mb-2 font-medium text-gray-900"},zle={class:"flex items-center gap-3"},Vle=["disabled"],jle=["disabled"],qle={class:"text-xs text-gray-500 mt-2"},Kle={class:"flex items-center justify-between"},Gle={class:"font-medium text-gray-900"},Wle={class:"sr-only"},Xle={class:"text-xs text-gray-500"},Yle={key:1,class:"space-y-4 text-sm text-gray-700"},Zle={class:"mb-2 font-medium text-gray-900"},Jle={class:"flex items-center gap-3"},_le={class:"text-xs text-gray-500 mt-2"},$le={key:2,class:"space-y-4 text-sm text-gray-700"},eue={class:"space-y-2"},tue={class:"font-medium text-gray-900"},rue={class:"text-xs text-gray-500"},nue={class:"grid grid-cols-2 gap-4"},iue={class:"flex flex-col gap-1 col-span-2"},oue={class:"text-xs text-gray-500"},aue=["placeholder"],sue={class:"flex flex-col gap-1 col-span-2"},Aue={class:"text-xs text-gray-500"},lue={class:"rounded bg-gray-100 px-3 py-2 text-xs text-gray-600 break-all"},uue={class:"font-medium text-gray-700"},cue={class:"w-full pt-2"},fue=["disabled"],due={key:0,class:"mt-2 flex items-center justify-between text-xs text-gray-500"},hue={key:3,class:"space-y-4 text-sm text-gray-700"},gue={class:"space-y-2"},pue={class:"font-medium text-gray-900"},vue={class:"text-xs text-gray-500"},mue={class:"grid grid-cols-2 gap-4"},yue={class:"flex flex-col gap-1 col-span-2"},bue={class:"text-xs text-gray-500"},wue=["placeholder"],xue={class:"flex flex-col gap-1"},Bue={class:"text-xs text-gray-500"},Eue={class:"flex flex-col gap-1"},Cue={class:"text-xs text-gray-500"},Sue={class:"space-y-2 pt-2 border-t border-gray-200"},Oue={class:"font-medium text-gray-900"},Tue={class:"text-xs text-gray-500"},Iue={class:"grid grid-cols-2 gap-4"},Fue={class:"flex flex-col gap-1 col-span-2"},Pue={class:"text-xs text-gray-500"},Lue=["placeholder"],kue={class:"flex flex-col gap-1 col-span-2"},Nue={class:"text-xs text-gray-500"},Uue=["disabled"],Mue={value:""},Due=["value","disabled"],Rue={class:"rounded bg-gray-100 px-3 py-2 text-xs text-gray-600 break-all"},Que={class:"font-medium text-gray-700"},Hue={class:"text-xs text-gray-500"},zue={class:"w-full pt-2"},Vue=["disabled"],jue={key:0,class:"mt-2 flex items-center justify-between text-xs text-gray-500"},que={class:"p-4 border-t border-gray-200 bg-gray-50 flex justify-end rounded-br-lg"},Kue=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}=rP(),l=un(),u=ui("modal-container",Xe(null)),{printMode:c,silentPrint:d,exportImageMerged:f,localSettings:g,remoteSettings:p,localStatus:b,remoteStatus:m,localRetryCount:w,remoteRetryCount:S,remoteClients:E,remoteSelectedClientId:V,localWsUrl:j,remoteWsUrl:T,cancelLocalRetry:L,cancelRemoteRetry:R,connectLocal:K,disconnectLocal:P,connectRemote:I,disconnectRemote:k,fetchRemoteClients:B}=Eg(),q=Xe("basic"),te=Xe(o.value),J=Xe(localStorage.getItem("print-designer-brand-key")||"default"),oe=Xe(localStorage.getItem("print-designer-brand-custom-hex")||"#3b82f6"),se=it(()=>b.value||"disconnected"),ae=it(()=>m.value||"disconnected"),Y=it(()=>w.value||0),D=it(()=>S.value||0),Z=it(()=>E.value||[]),G=it(()=>se.value==="connected"),re=it(()=>ae.value==="connected"),ye=it(()=>se.value==="connecting"),Ce=it(()=>ae.value==="connecting"),we=it(()=>!!g.wsAddress),Fe=it(()=>!!(p.apiBaseUrl&&p.username&&p.password)),Ve=it(()=>G.value?i("settings.status.connected"):i("settings.status.disconnected")),Se=it(()=>re.value?i("settings.status.connected"):i("settings.status.disconnected")),ke=Ue=>Ue==="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=(Ue,Ne=0,Te=255)=>Math.min(Math.max(Ue,Ne),Te),O=(Ue,Ne,Te)=>{const De=Qe=>ie(Math.round(Qe)).toString(16).padStart(2,"0");return`#${De(Ue)}${De(Ne)}${De(Te)}`},ee=(Ue,Ne,Te)=>({r:Ue.r+(Ne.r-Ue.r)*Te,g:Ue.g+(Ne.g-Ue.g)*Te,b:Ue.b+(Ne.b-Ue.b)*Te}),H=Ue=>{const Ne=gg(Ue);if(!Ne)return null;const Te=hg(Ne.h,Ne.s,Ne.v),De={r:255,g:255,b:255},Qe={r:0,g:0,b:0},Tt=ee(Te,De,.92),vt=ee(Te,De,.84),Xt=ee(Te,De,.68),Qt=ee(Te,De,.5),Et=ee(Te,De,.32),Ar=ee(Te,De,.16),Zt=ee(Te,Qe,.12),cn=ee(Te,Qe,.24),Er=ee(Te,Qe,.36),tr=ee(Te,Qe,.5);return{"--brand-50":O(Tt.r,Tt.g,Tt.b),"--brand-100":O(vt.r,vt.g,vt.b),"--brand-200":O(Xt.r,Xt.g,Xt.b),"--brand-300":O(Qt.r,Qt.g,Qt.b),"--brand-400":O(Et.r,Et.g,Et.b),"--brand-500":O(Ar.r,Ar.g,Ar.b),"--brand-600":O(Te.r,Te.g,Te.b),"--brand-700":O(Zt.r,Zt.g,Zt.b),"--brand-800":O(cn.r,cn.g,cn.b),"--brand-900":O(Er.r,Er.g,Er.b),"--brand-950":O(tr.r,tr.g,tr.b)}},W=it(()=>H(oe.value)||{}),N=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:W.value}]),M=Ue=>{const Ne=document.documentElement;Object.entries(Ue).forEach(([Te,De])=>{Ne.style.setProperty(Te,De)}),window.dispatchEvent(new CustomEvent("brand-theme-updated"))},$=Ue=>{localStorage.setItem("print-designer-brand-vars",JSON.stringify(Ue))},ne=Ue=>{const Ne=N.value.find(Te=>Te.key===Ue)||N.value[0];Ne.colors&&(M(Ne.colors),$(Ne.colors),localStorage.setItem("print-designer-brand-key",Ne.key))};(()=>{const Ue=localStorage.getItem("print-designer-brand-vars");if(Ue)try{const Ne=JSON.parse(Ue);Ne&&typeof Ne=="object"&&M(Ne)}catch{}})();const xe=async()=>{try{if(ye.value)return;if(G.value){P();return}await K()}catch(Ue){console.error("Local connection error:",Ue)}},he=async()=>{try{if(Ce.value)return;if(re.value){k();return}await I()}catch(Ue){console.error("Remote connection error:",Ue)}};Yt(te,Ue=>{o.value=Ue,localStorage.setItem("print-designer-language",Ue)}),Yt(o,Ue=>{te.value!==Ue&&(te.value=Ue)}),Yt(a,Ue=>{s(Ue)}),Yt(()=>r.show,Ue=>{l.setDisableGlobalShortcuts(Ue)}),Yt(oe,Ue=>{Ue&&(localStorage.setItem("print-designer-brand-custom-hex",Ue),J.value==="custom"&&ne("custom"))}),Yt(J,Ue=>{ne(Ue)},{immediate:!0}),Yt([q,m],([Ue,Ne])=>{Ue!=="remote"||Ne!=="connected"||B()});const le=()=>{try{n("update:show",!1)}catch(Ue){console.error("Error closing modal:",Ue)}},Oe=Ue=>{try{if(!r.show)return;Ue.key==="Escape"&&(Ue.preventDefault(),le())}catch(Ne){console.error("Error in keydown handler:",Ne)}};return xi(()=>{window.addEventListener("keydown",Oe)}),Bi(()=>{window.removeEventListener("keydown",Oe),r.show&&l.setDisableGlobalShortcuts(!1)}),(Ue,Ne)=>(Ee(),Nr(Ns,{to:Q(u)||"body"},[t.show?(Ee(),Pe("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",cle,[F("div",fle,[F("div",dle,[F("h3",hle,pe(Q(i)("settings.title")),1)]),F("div",gle,[F("button",{onClick:Ne[0]||(Ne[0]=Te=>q.value="basic"),class:Ct(["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(Q(J0),{class:"w-5 h-5"}),Ht(" "+pe(Q(i)("settings.basic")),1)],2),F("button",{onClick:Ne[1]||(Ne[1]=Te=>q.value="language"),class:Ct(["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(Q(nle),{class:"w-5 h-5"}),Ht(" "+pe(Q(i)("settings.language")),1)],2),F("button",{onClick:Ne[2]||(Ne[2]=Te=>q.value="local"),class:Ct(["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(Q(a5),{class:"w-5 h-5"}),Ht(" "+pe(Q(i)("settings.localConnection")),1)],2),F("button",{onClick:Ne[3]||(Ne[3]=Te=>q.value="remote"),class:Ct(["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(Q(ale),{class:"w-5 h-5"}),Ht(" "+pe(Q(i)("settings.remoteConnection")),1)],2)])]),F("div",ple,[F("div",vle,[F("h3",mle,pe(q.value==="basic"?Q(i)("settings.basic"):q.value==="language"?Q(i)("settings.language"):q.value==="local"?Q(i)("settings.localConnection"):Q(i)("settings.remoteConnection")),1),F("button",{onClick:le,class:"p-1 hover:bg-gray-100 rounded-full transition-colors text-gray-500"},[et(Q(qc),{class:"w-4 h-4"})])]),F("div",yle,[q.value==="basic"?(Ee(),Pe("div",ble,[F("div",null,[F("div",wle,pe(Q(i)("settings.theme")),1),F("div",xle,[F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",Q(a)==="system"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"system","onUpdate:modelValue":Ne[4]||(Ne[4]=Te=>kr(a)?a.value=Te:null)},null,512),[[su,Q(a)]]),F("span",null,pe(Q(i)("settings.themeSystem")),1)],2),F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",Q(a)==="light"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"light","onUpdate:modelValue":Ne[5]||(Ne[5]=Te=>kr(a)?a.value=Te:null)},null,512),[[su,Q(a)]]),F("span",null,pe(Q(i)("settings.themeLight")),1)],2),F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",Q(a)==="dark"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"dark","onUpdate:modelValue":Ne[6]||(Ne[6]=Te=>kr(a)?a.value=Te:null)},null,512),[[su,Q(a)]]),F("span",null,pe(Q(i)("settings.themeDark")),1)],2)]),F("p",Ble,pe(Q(i)("settings.themeDesc")),1)]),F("div",Ele,[F("div",Cle,pe(Q(i)("settings.themeColor")),1),F("div",Sle,[(Ee(!0),Pe(Mt,null,Yr(N.value.filter(Te=>Te.key!=="custom"),Te=>(Ee(),Pe("button",{key:Te.key,type:"button",class:Ct(["flex items-center gap-2 px-3 py-2 border rounded text-xs transition-colors",J.value===Te.key?"border-blue-600 text-blue-700":"border-gray-300 text-gray-700 hover:bg-gray-50"]),onClick:De=>J.value=Te.key},[F("span",{class:"inline-block w-3.5 h-3.5 rounded-full",style:wt({backgroundColor:Te.colors["--brand-600"]})},null,4),F("span",null,pe(Q(i)(Te.labelKey)),1)],10,Ole))),128)),et(Pd,{"model-value":oe.value,"onUpdate:modelValue":Ne[8]||(Ne[8]=Te=>{Te&&(oe.value=Te,J.value="custom")}),"default-color":oe.value,"teleport-to-body":!0},{trigger:Al(({color:Te,open:De})=>[F("button",{type:"button",class:Ct(["flex items-center gap-2 px-3 py-2 border rounded text-xs transition-colors",J.value==="custom"?"border-blue-600 text-blue-700":"border-gray-300 text-gray-700 hover:bg-gray-50"]),onClick:Ne[7]||(Ne[7]=Qe=>J.value="custom")},[F("span",{class:Ct(["inline-block w-3.5 h-3.5 rounded-full border border-gray-200",{"ring-2 ring-blue-500 ring-offset-1":De}]),style:wt({backgroundColor:Te||oe.value})},null,6),F("span",null,pe(Q(i)("settings.themePresetCustom")),1)],2)]),_:1},8,["model-value","default-color"])]),F("p",Tle,pe(Q(i)("settings.themeColorDesc")),1)]),F("div",Ile,[F("div",Fle,[F("div",Ple,pe(Q(i)("settings.autoSave")),1),F("button",{onClick:Ne[9]||(Ne[9]=Te=>A.value=!Q(A)),class:Ct(["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",Q(A)?"bg-blue-600":"bg-gray-200"])},[F("span",Lle,pe(Q(i)("settings.autoSave")),1),F("span",{"aria-hidden":"true",class:Ct(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Q(A)?"translate-x-5":"translate-x-0"])},null,2)],2)]),F("p",kle,pe(Q(i)("settings.autoSaveDesc")),1)]),F("div",Nle,[F("div",Ule,[F("div",Mle,pe(Q(i)("settings.exportImageMerged")),1),F("button",{onClick:Ne[10]||(Ne[10]=Te=>f.value=!Q(f)),class:Ct(["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",Q(f)?"bg-blue-600":"bg-gray-200"])},[F("span",Dle,pe(Q(i)("settings.exportImageMerged")),1),F("span",{"aria-hidden":"true",class:Ct(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Q(f)?"translate-x-5":"translate-x-0"])},null,2)],2)]),F("p",Rle,pe(Q(i)("settings.exportImageMergedDesc")),1)]),F("div",Qle,[F("div",null,[F("div",Hle,pe(Q(i)("settings.printMode")),1),F("div",zle,[F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",Q(c)==="browser"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"browser","onUpdate:modelValue":Ne[11]||(Ne[11]=Te=>kr(c)?c.value=Te:null)},null,512),[[su,Q(c)]]),F("span",null,pe(Q(i)("settings.printModeBrowser")),1)],2),F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",Q(c)==="local"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"local","onUpdate:modelValue":Ne[12]||(Ne[12]=Te=>kr(c)?c.value=Te:null),disabled:!G.value},null,8,Vle),[[su,Q(c)]]),F("span",null,pe(Q(i)("settings.printModeLocal")),1)],2),F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",Q(c)==="remote"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"remote","onUpdate:modelValue":Ne[13]||(Ne[13]=Te=>kr(c)?c.value=Te:null),disabled:!re.value},null,8,jle),[[su,Q(c)]]),F("span",null,pe(Q(i)("settings.printModeRemote")),1)],2)]),F("p",qle,pe(Q(i)("settings.printModeDesc")),1)]),F("div",Kle,[F("div",Gle,pe(Q(i)("settings.silentPrint")),1),F("button",{onClick:Ne[14]||(Ne[14]=Te=>d.value=!Q(d)),class:Ct(["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",Q(d)?"bg-blue-600":"bg-gray-200"])},[F("span",Wle,pe(Q(i)("settings.silentPrint")),1),F("span",{"aria-hidden":"true",class:Ct(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Q(d)?"translate-x-5":"translate-x-0"])},null,2)],2)]),F("p",Xle,pe(Q(i)("settings.silentPrintDesc")),1)])])):pt("",!0),q.value==="language"?(Ee(),Pe("div",Yle,[F("div",Zle,pe(Q(i)("settings.selectLanguage")),1),F("div",Jle,[F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",te.value==="zh"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"zh","onUpdate:modelValue":Ne[15]||(Ne[15]=Te=>te.value=Te)},null,512),[[su,te.value]]),F("span",null,pe(Q(i)("settings.zhLabel")),1)],2),F("label",{class:Ct(["flex items-center gap-2 px-3 py-2 border rounded cursor-pointer",te.value==="en"?"border-blue-600 text-blue-700":"border-gray-300"])},[cr(F("input",{type:"radio",value:"en","onUpdate:modelValue":Ne[16]||(Ne[16]=Te=>te.value=Te)},null,512),[[su,te.value]]),F("span",null,pe(Q(i)("settings.enLabel")),1)],2)]),F("p",_le,pe(Q(i)("settings.languageDesc")),1)])):pt("",!0),q.value==="local"?(Ee(),Pe("div",$le,[F("div",eue,[F("div",tue,pe(Q(i)("settings.localClientTitle")),1),F("p",rue,pe(Q(i)("settings.localClientDesc")),1)]),F("div",nue,[F("label",iue,[F("span",oue,pe(Q(i)("settings.wsAddress")),1),cr(F("input",{"onUpdate:modelValue":Ne[17]||(Ne[17]=Te=>Q(g).wsAddress=Te),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600",placeholder:Q(i)("settings.localWsAddressPlaceholder")},null,8,aue),[[bn,Q(g).wsAddress]])]),F("label",sue,[F("span",Aue,pe(Q(i)("settings.secretKey")),1),cr(F("input",{"onUpdate:modelValue":Ne[18]||(Ne[18]=Te=>Q(g).secretKey=Te),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600"},null,512),[[bn,Q(g).secretKey]])])]),F("div",lue,[F("span",uue,pe(Q(i)("settings.connectionUrl"))+": ",1),F("span",null,pe(Q(j)),1)]),F("div",cue,[F("button",{onClick:xe,disabled:ye.value||Y.value>0||!G.value&&!we.value,class:Ct(["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",ke(se.value)])},[G.value?(Ee(),Nr(Q(dN),{key:0,class:"w-4 h-4"})):(Ee(),Nr(Q(hN),{key:1,class:"w-4 h-4"})),F("span",null,pe(Ve.value),1)],10,fue),Y.value>0&&!G.value?(Ee(),Pe("div",due,[F("span",null,pe(Q(i)("settings.retrying",{count:Y.value,max:10})),1),F("button",{onClick:Ne[19]||(Ne[19]=(...Te)=>Q(L)&&Q(L)(...Te)),class:"text-blue-600 hover:text-blue-700"},pe(Q(i)("settings.cancelRetry")),1)])):pt("",!0)])])):pt("",!0),q.value==="remote"?(Ee(),Pe("div",hue,[F("div",gue,[F("div",pue,pe(Q(i)("settings.remoteLoginTitle")),1),F("p",vue,pe(Q(i)("settings.remoteLoginDesc")),1)]),F("div",mue,[F("label",yue,[F("span",bue,pe(Q(i)("settings.apiBaseUrl")),1),cr(F("input",{"onUpdate:modelValue":Ne[20]||(Ne[20]=Te=>Q(p).apiBaseUrl=Te),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600",placeholder:Q(i)("settings.apiBasePlaceholder")},null,8,wue),[[bn,Q(p).apiBaseUrl]])]),F("label",xue,[F("span",Bue,pe(Q(i)("settings.username")),1),cr(F("input",{"onUpdate:modelValue":Ne[21]||(Ne[21]=Te=>Q(p).username=Te),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600"},null,512),[[bn,Q(p).username]])]),F("label",Eue,[F("span",Cue,pe(Q(i)("settings.password")),1),cr(F("input",{"onUpdate:modelValue":Ne[22]||(Ne[22]=Te=>Q(p).password=Te),type:"password",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600"},null,512),[[bn,Q(p).password]])])]),F("div",Sue,[F("div",Oue,pe(Q(i)("settings.remoteWsTitle")),1),F("p",Tue,pe(Q(i)("settings.remoteWsDesc")),1)]),F("div",Iue,[F("label",Fue,[F("span",Pue,pe(Q(i)("settings.wsAddress")),1),cr(F("input",{"onUpdate:modelValue":Ne[23]||(Ne[23]=Te=>Q(p).wsAddress=Te),type:"text",class:"w-full px-3 py-2 border rounded focus:ring-2 focus:ring-blue-600 focus:border-blue-600",placeholder:Q(i)("settings.wsAddressPlaceholder")},null,8,Lue),[[bn,Q(p).wsAddress]])]),F("label",kue,[F("span",Nue,pe(Q(i)("settings.remoteClient")),1),cr(F("select",{"onUpdate:modelValue":Ne[24]||(Ne[24]=Te=>kr(V)?V.value=Te:null),class:"w-full px-3 py-2 border rounded bg-white focus:ring-2 focus:ring-blue-600 focus:border-blue-600",disabled:ae.value!=="connected"||Z.value.length===0},[F("option",Mue,pe(Q(i)("settings.remoteClientPlaceholder")),1),(Ee(!0),Pe(Mt,null,Yr(Z.value,Te=>(Ee(),Pe("option",{key:Te.client_id,value:Te.client_id,disabled:Te.online===!1},pe(Te.client_name||Te.client_id)+pe(Te.online===!1?" (offline)":""),9,Due))),128))],8,Uue),[[Ms,Q(V)]])])]),F("div",Rue,[F("span",Que,pe(Q(i)("settings.connectionUrl"))+": ",1),F("span",null,pe(Q(T)),1)]),F("p",Hue,pe(Q(i)("settings.remoteAuthHint")),1),F("div",zue,[F("button",{onClick:he,disabled:Ce.value||D.value>0||!re.value&&!Fe.value,class:Ct(["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",ke(ae.value)])},[re.value?(Ee(),Nr(Q(dN),{key:0,class:"w-4 h-4"})):(Ee(),Nr(Q(hN),{key:1,class:"w-4 h-4"})),F("span",null,pe(Se.value),1)],10,Vue),D.value>0&&!re.value?(Ee(),Pe("div",jue,[F("span",null,pe(Q(i)("settings.retrying",{count:D.value,max:10})),1),F("button",{onClick:Ne[25]||(Ne[25]=(...Te)=>Q(R)&&Q(R)(...Te)),class:"text-blue-600 hover:text-blue-700"},pe(Q(i)("settings.cancelRetry")),1)])):pt("",!0)])])):pt("",!0)]),F("div",que,[F("button",{onClick:le,class:"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors text-sm"},pe(Q(i)("common.close")),1)])])])])):pt("",!0)],8,["to"]))}}),Gue={class:"h-14 bg-white border-b border-gray-200 flex items-center justify-between px-4 z-[2000] relative shadow-sm"},Wue={class:"flex items-center gap-2"},Xue=["src"],Yue={key:1,class:"font-semibold text-gray-700"},Zue=Tr({__name:"Header",setup(t){const{t:e}=zn(),r=un(),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)||cN}),a=it(()=>{var s;return((s=r.branding)==null?void 0:s.title)||e("common.appTitle")});return(s,A)=>(Ee(),Pe("header",Gue,[F("div",Wue,[n.value?(Ee(),Pe("img",{key:0,src:o.value,alt:"Logo",class:"w-8 h-8 object-contain"},null,8,Xue)):pt("",!0),i.value?(Ee(),Pe("h1",Yue,pe(a.value),1)):pt("",!0)]),et(cse,{onToggleHelp:A[0]||(A[0]=l=>Q(r).setShowHelp(!0)),onToggleSettings:A[1]||(A[1]=l=>Q(r).setShowSettings(!0))}),et(ele,{show:Q(r).showHelp,"onUpdate:show":A[2]||(A[2]=l=>Q(r).setShowHelp(l))},null,8,["show"]),et(Kue,{show:Q(r).showSettings,"onUpdate:show":A[3]||(A[3]=l=>Q(r).setShowSettings(l))},null,8,["show"])]))}}),Jue={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function _ue(t,e){return Ee(),Pe("svg",Jue,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M7 20V7H2V4h13v3h-5v13zm9 0v-8h-3V9h9v3h-3v8z"},null,-1)])])}const gN=Lt({name:"material-symbols-text-fields",render:_ue}),$ue={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ece(t,e){return Ee(),Pe("svg",$ue,[...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 pN=Lt({name:"material-symbols-numbers",render:ece}),tce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function rce(t,e){return Ee(),Pe("svg",tce,[...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 vN=Lt({name:"material-symbols-table-chart",render:rce}),nce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ice(t,e){return Ee(),Pe("svg",nce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M1 19V5h2v14zm3 0V5h2v14zm3 0V5h1v14zm3 0V5h2v14zm3 0V5h3v14zm4 0V5h1v14zm3 0V5h3v14z"},null,-1)])])}const mN=Lt({name:"material-symbols-barcode",render:ice}),oce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ace(t,e){return Ee(),Pe("svg",oce,[...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 yN=Lt({name:"material-symbols-qr-code",render:ace}),sce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Ace(t,e){return Ee(),Pe("svg",sce,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M4 13v-2h16v2z"},null,-1)])])}const bN=Lt({name:"material-symbols-horizontal-rule",render:Ace}),lce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function uce(t,e){return Ee(),Pe("svg",lce,[...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 wN=Lt({name:"material-symbols-check-box-outline-blank",render:uce}),cce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function fce(t,e){return Ee(),Pe("svg",cce,[...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 xN=Lt({name:"material-symbols-radio-button-unchecked",render:fce}),dce={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function hce(t,e){return Ee(),Pe("svg",dce,[...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 gce=Lt({name:"material-symbols-star",render:hce}),pce={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"},vce={class:"p-4 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-800"},mce={class:"font-semibold text-gray-700 dark:text-gray-200"},yce={class:"text-xs text-gray-500 dark:text-gray-400 mt-1"},bce={class:"flex border-b border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900"},wce={key:0,class:"absolute bottom-0 left-0 w-full h-0.5 bg-blue-600 dark:bg-blue-400"},xce={key:0,class:"absolute bottom-0 left-0 w-full h-0.5 bg-blue-600 dark:bg-blue-400"},Bce={class:"flex-1 overflow-y-auto"},Ece={class:"text-xs font-semibold text-gray-500 dark:text-gray-400 uppercase tracking-wider mb-3 px-1"},Cce={class:"grid grid-cols-2 gap-3"},Sce=["onDragstart"],Oce={class:"text-sm font-medium text-gray-700 dark:text-gray-200"},Tce={key:0,class:"p-6 text-center"},Ice={class:"text-sm text-gray-500 dark:text-gray-400"},Fce={key:1,class:"p-4 grid grid-cols-2 gap-3"},Pce=["onDragstart"],Lce=["title"],kce=["onClick","title"],Nce=["onClick"],Uce=["onClick"],Mce=["onClick"],Dce=["onClick"],Rce=["onClick"],Qce=Tr({__name:"Sidebar",setup(t){const{t:e}=zn(),r=un(),n=ui("modal-container",Xe(null)),i=Xe("standard"),o=it(()=>r.customElements),a=Xe(null),s=Xe({}),A=Xe(!1),l=Xe(null),u=Xe(""),c=Xe(!1),d=Xe(""),f=Xe(null),g=Xe([]),p=[{title:"sidebar.general",items:[{type:dt.TEXT,label:"sidebar.text",icon:gN},{type:dt.IMAGE,label:"sidebar.image",icon:hP},{type:dt.PAGE_NUMBER,label:"sidebar.pagination",icon:pN}]},{title:"sidebar.dataCodes",items:[{type:dt.TABLE,label:"sidebar.table",icon:vN},{type:dt.BARCODE,label:"sidebar.barcode",icon:mN},{type:dt.QRCODE,label:"sidebar.qrcode",icon:yN}]},{title:"sidebar.shapes",items:[{type:dt.LINE,label:"sidebar.line",icon:bN},{type:dt.RECT,label:"sidebar.rect",icon:wN},{type:dt.CIRCLE,label:"sidebar.circle",icon:xN}]}],b=(k,B)=>{k.dataTransfer&&(k.dataTransfer.setData("application/json",JSON.stringify({type:B})),k.dataTransfer.effectAllowed="copy")},m=(k,B)=>{k.dataTransfer&&(k.dataTransfer.setData("application/json",JSON.stringify({type:B.element.type,payload:B.element})),k.dataTransfer.effectAllowed="copy")},w=k=>{switch(k){case dt.TEXT:return gN;case dt.IMAGE:return hP;case dt.TABLE:return vN;case dt.PAGE_NUMBER:return pN;case dt.BARCODE:return mN;case dt.QRCODE:return yN;case dt.LINE:return bN;case dt.RECT:return wN;case dt.CIRCLE:return xN;default:return gce}},S=(k,B)=>{if(k.stopPropagation(),a.value===B)a.value=null;else{const te=k.currentTarget.getBoundingClientRect();let J=te.right-128;J<5&&(J=te.left),window.innerHeight-te.bottom<210?s.value={bottom:`${window.innerHeight-te.top+5}px`,left:`${J}px`}:s.value={top:`${te.bottom+5}px`,left:`${J}px`},a.value=B}},E=k=>{if(!a.value)return;k.composedPath().some(te=>te instanceof Element?te.classList.contains("sidebar-context-menu"):!1)||(a.value=null)},V=k=>{a.value=null,l.value=k.id,u.value=k.name,A.value=!0},j=k=>{l.value&&k&&r.renameCustomElement(l.value,k)},T=k=>{a.value=null,r.addCustomElement(`${k.name} Copy`,k.element)},L=k=>{a.value=null,confirm(e("sidebar.confirmDelete",{name:k.name}))&&r.removeCustomElement(k.id)},R=k=>{if(a.value=null,r.editingCustomElementId!==k.id){if(r.editingCustomElementId&&r.editingCustomElementId!==k.id){const B=r.customElements.find(te=>te.id===r.editingCustomElementId),q=B?B.name:"";if(!confirm(e("sidebar.confirmSwitchEdit",{name:q})))return;r.cancelCustomElementEdit()}r.startCustomElementEdit(k.id)}},K=k=>ek(k.element),P=k=>{a.value=null,f.value=k;const B=k.testData||{},q=q5(k.element,B);g.value=Object.keys(q),d.value=JSON.stringify(q,null,2),c.value=!0},I=()=>{var oe;const k=f.value,B=new Set(g.value||[]);if(f.value=null,g.value=[],!k)return;let q=null;try{const se=((oe=d.value)==null?void 0:oe.trim())||"{}",ae=JSON.parse(se);ae&&typeof ae=="object"&&!Array.isArray(ae)&&(q=ae)}catch{q=null}if(!q){alert(e("common.invalidJson"));return}if(B.size>0){const se=Object.keys(q);if(se.length!==B.size||se.some(Y=>!B.has(Y))){alert(e("common.testDataKeyChanged"));return}}const te=q5(k.element,k.testData||{}),J={};Object.keys(te).forEach(se=>{(B.size===0||B.has(se))&&(J[se]=Object.prototype.hasOwnProperty.call(q,se)?q[se]:te[se])}),k.testData=J,r.saveCustomElements()};return xi(()=>{window.addEventListener("mousedown",E)}),Bi(()=>{window.removeEventListener("mousedown",E)}),(k,B)=>(Ee(),Pe("aside",pce,[F("div",vce,[F("h2",mce,pe(Q(e)("sidebar.elements")),1),F("p",yce,pe(Q(e)("sidebar.dragToCanvas")),1)]),F("div",bce,[F("button",{onClick:B[0]||(B[0]=q=>i.value="standard"),class:Ct(["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"])},[Ht(pe(Q(e)("sidebar.standard"))+" ",1),i.value==="standard"?(Ee(),Pe("div",wce)):pt("",!0)],2),F("button",{onClick:B[1]||(B[1]=q=>i.value="custom"),class:Ct(["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"])},[Ht(pe(Q(e)("sidebar.custom"))+" ",1),i.value==="custom"?(Ee(),Pe("div",xce)):pt("",!0)],2)]),F("div",Bce,[i.value==="standard"?(Ee(),Pe(Mt,{key:0},Yr(p,q=>F("div",{key:q.title,class:"p-4 border-b border-gray-100 dark:border-gray-800 last:border-0"},[F("h3",Ece,pe(Q(e)(q.title)),1),F("div",Cce,[(Ee(!0),Pe(Mt,null,Yr(q.items,te=>(Ee(),Pe("div",{key:te.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:J=>b(J,te.type)},[(Ee(),Nr(Vh(te.icon),{class:"w-8 h-8 text-gray-600 dark:text-gray-300 mb-2"})),F("span",Oce,pe(Q(e)(te.label)),1)],40,Sce))),128))])])),64)):pt("",!0),i.value==="custom"?(Ee(),Pe(Mt,{key:1},[o.value.length===0?(Ee(),Pe("div",Tce,[F("p",Ice,pe(Q(e)("sidebar.noCustomElements")),1)])):(Ee(),Pe("div",Fce,[(Ee(!0),Pe(Mt,null,Yr(o.value,q=>(Ee(),Pe("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:te=>m(te,q)},[(Ee(),Nr(Vh(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},pe(q.name),9,Lce),F("button",{onClick:te=>S(te,q.id),class:Ct(["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:Q(e)("sidebar.moreOptions")},[et(Q(uN),{class:"w-4 h-4"})],10,kce)],40,Pce))),128))]))],64)):pt("",!0)]),(Ee(),Nr(Ns,{to:Q(n)||"body"},[a.value?(Ee(),Pe("div",{key:0,class:"fixed inset-0 z-[2000] pointer-events-auto",onClick:B[3]||(B[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:wt(s.value),onClick:B[2]||(B[2]=Ci(()=>{},["stop"]))},[(Ee(!0),Pe(Mt,null,Yr(o.value,q=>(Ee(),Pe(Mt,{key:q.id},[q.id===a.value?(Ee(),Pe(Mt,{key:0},[F("button",{onClick:te=>R(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(Q(Bx),{class:"w-3.5 h-3.5"}),Ht(" "+pe(Q(e)("sidebar.editElement")),1)],8,Nce),K(q)?(Ee(),Pe("button",{key:0,onClick:te=>P(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(Q(wu),{class:"w-3.5 h-3.5"}),Ht(" "+pe(Q(e)("common.testData")),1)],8,Uce)):pt("",!0),F("button",{onClick:te=>V(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(Q(Bx),{class:"w-3.5 h-3.5"}),Ht(" "+pe(Q(e)("sidebar.rename")),1)],8,Mce),F("button",{onClick:te=>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(Q(fd),{class:"w-3.5 h-3.5"}),Ht(" "+pe(Q(e)("sidebar.copy")),1)],8,Dce),F("button",{onClick:te=>L(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(Q(cd),{class:"w-3.5 h-3.5"}),Ht(" "+pe(Q(e)("sidebar.delete")),1)],8,Rce)],64)):pt("",!0)],64))),128))],4)])):pt("",!0)],8,["to"])),et(zg,{show:A.value,"initial-value":u.value,title:Q(e)("sidebar.renameModalTitle"),placeholder:Q(e)("sidebar.enterNamePlaceholder"),onClose:B[4]||(B[4]=q=>A.value=!1),onSave:j},null,8,["show","initial-value","title","placeholder"]),et(Hg,{visible:c.value,"onUpdate:visible":B[5]||(B[5]=q=>c.value=q),title:Q(e)("common.testData"),value:d.value,language:"json","onUpdate:value":B[6]||(B[6]=q=>d.value=q),onClose:I},null,8,["visible","title","value"])]))}}),Hce={key:0,class:"flex items-center justify-between"},zce={class:"text-sm text-gray-700 dark:text-gray-200 font-medium"},Vce=["disabled"],jce={class:"sr-only"},qce={key:1},Kce={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1"},Gce=["value","disabled","placeholder"],Wce=["type","value","disabled","placeholder","min","max","step"],jg=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"?(Ee(),Pe("div",Hce,[F("label",zce,pe(t.label),1),F("button",{type:"button",disabled:t.disabled,onClick:o[0]||(o[0]=a=>i.$emit("update:value",!t.value)),class:Ct(["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",jce,"Toggle "+pe(t.label),1),F("span",{"aria-hidden":"true",class:Ct(["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,Vce)])):(Ee(),Pe("div",qce,[F("label",Kce,pe(t.label),1),t.type==="textarea"?(Ee(),Pe("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,Gce)):(Ee(),Pe("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,Wce))]))}}),Xce={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1"},Yce=["value","disabled"],Zce=["value"],Jce=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)=>(Ee(),Pe("div",null,[F("label",Xce,pe(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"},[(Ee(!0),Pe(Mt,null,Yr(t.options,s=>(Ee(),Pe("option",{key:String(s.value),value:s.value,class:"dark:bg-gray-800 dark:text-gray-200"},pe(s.label),9,Zce))),128))],40,Yce)]))}}),_ce={class:"flex items-center justify-between"},$ce={class:"text-xs text-gray-500 dark:text-gray-400"},efe={class:"flex items-center gap-2"},tfe={key:0,class:"absolute inset-0 flex items-center justify-center"},BN=Tr({__name:"PropertyColor",props:{label:{},value:{},disabled:{type:Boolean}},emits:["update:value"],setup(t,{emit:e}){const r=e;return(n,i)=>(Ee(),Pe("div",_ce,[F("label",$ce,pe(t.label),1),F("div",efe,[et(Pd,{"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:Ct(["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:wt({backgroundColor:o==="transparent"?"transparent":o})},null,4),o==="transparent"?(Ee(),Pe("div",tfe,[...i[1]||(i[1]=[F("div",{class:"w-full h-[1px] bg-red-500 rotate-45"},null,-1)])])):pt("",!0)],2)]),_:1},8,["model-value","disabled"])])]))}}),rfe={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function nfe(t,e){return Ee(),Pe("svg",rfe,[...e[0]||(e[0]=[F("path",{fill:"currentColor",d:"M3 21v-8h2v4.6L17.6 5H13V3h8v8h-2V6.4L6.4 19H11v2z"},null,-1)])])}const ife=Lt({name:"material-symbols-open-in-full",render:nfe}),ofe={class:"flex flex-col gap-1"},afe={class:"flex justify-between items-center"},sfe={class:"text-xs text-gray-500 font-medium"},Afe={class:"flex items-center gap-2"},lfe={class:"text-[10px] text-gray-400 uppercase"},ufe=Fd(Tr({__name:"PropertyCode",props:{label:{},value:{},language:{},disabled:{type:Boolean},height:{}},emits:["update:value"],setup(t,{emit:e}){const r=e;un();const{isDark:n}=du(),i=Xe(!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)=>(Ee(),Pe("div",ofe,[F("div",afe,[F("label",sfe,pe(t.label),1),F("div",Afe,[F("span",lfe,pe(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(Q(ife),{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:wt({height:`${t.height||200}px`,minHeight:"100px",maxHeight:"600px"})},[et(Q(lN),{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(Hg,{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"]]),cfe={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1"},ffe={class:"space-y-2"},dfe=["value","disabled","placeholder"],hfe={class:"flex flex-col gap-1"},gfe=["disabled"],pfe={class:"text-[10px] text-gray-400 dark:text-gray-500 text-center"},vfe={key:0,class:"text-xs text-red-500 mt-1"},mfe=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=Xe(null),a=Xe(""),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)=>(Ee(),Pe("div",null,[F("label",cfe,pe(t.label),1),F("div",ffe,[F("input",{type:"text",value:t.value||"",disabled:t.disabled,placeholder:t.placeholder||Q(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,dfe),F("div",hfe,[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)),Ht(" "+pe(Q(i)("properties.image.uploadBtn")),1)],8,gfe),F("span",pfe,pe(Q(i)("properties.image.uploadTip")),1)]),a.value?(Ee(),Pe("p",vfe,pe(a.value),1)):pt("",!0),F("input",{ref_key:"fileInput",ref:o,type:"file",accept:"image/*",class:"hidden",onChange:A},null,544)])]))}}),yfe={class:"p-4 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-800 flex items-center justify-between"},bfe={class:"font-semibold text-gray-700 dark:text-gray-200"},wfe={class:"text-xs text-gray-500 dark:text-gray-400 mt-1"},xfe={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"},Bfe={key:0,class:"p-6 text-center"},Efe={class:"mb-4"},Cfe={class:"text-lg font-semibold text-gray-900 dark:text-gray-100"},Sfe={class:"text-sm text-gray-500 dark:text-gray-400 mt-2"},Ofe={class:"font-medium text-gray-700 dark:text-gray-200"},Tfe={key:1,class:"flex flex-col h-full overflow-hidden"},Ife={class:"flex border-b border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900"},Ffe=["onClick"],Pfe={key:0,class:"absolute bottom-0 left-0 w-full h-0.5 bg-blue-600 dark:bg-blue-400"},Lfe={class:"p-4 space-y-6 overflow-y-auto flex-1 custom-scrollbar dark:bg-gray-900"},kfe={key:0,class:"space-y-3"},Nfe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},Ufe={class:"grid grid-cols-2 gap-3"},Mfe={key:1,class:"space-y-3 pt-2 border-t border-gray-100 dark:border-gray-800"},Dfe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},Rfe={class:"grid grid-cols-2 gap-3"},Qfe=["disabled"],Hfe=["disabled"],zfe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},Vfe={class:"space-y-3"},jfe={key:0},qfe=["onClick","disabled"],Kfe={key:6},Gfe={class:"block text-xs text-gray-500 dark:text-gray-400 mb-1 font-medium"},Wfe=["placeholder","disabled","value","onChange"],Xfe={key:2,class:"space-y-3 pt-2 border-t border-gray-100 dark:border-gray-800"},Yfe={class:"text-xs font-bold text-gray-500 dark:text-gray-400 uppercase tracking-wider"},Zfe={key:3,class:"space-y-4"},Jfe={class:"p-4 bg-gray-50 dark:bg-gray-800 rounded border border-gray-200 dark:border-gray-700"},_fe={class:"text-sm font-medium text-gray-700 dark:text-gray-200 mb-3"},$fe={class:"space-y-3"},ede={class:"text-xs text-gray-500 dark:text-gray-400 mb-1.5 font-medium"},tde={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"},rde=["title"],nde=["title"],ide={class:"text-xs text-gray-500 flex items-center justify-between border-t border-gray-100 pt-2"},ode={class:"font-medium"},ade={class:"px-2 py-0.5 bg-gray-100 rounded text-gray-600"},sde=["disabled"],Ade={key:2,class:"p-6 text-center"},lde={class:"mb-4"},ude={class:"text-lg font-semibold text-gray-900"},cde={class:"text-sm text-gray-500 mt-2"},fde=Fd(Tr({__name:"PropertiesPanel",setup(t){const{t:e}=zn(),r=un(),n=it(()=>r.selectedElement),i=it(()=>r.selectedElementIds.length>1),o=it(()=>{var G;return((G=n.value)==null?void 0:G.locked)||!1}),a=Xe(!1),s=Xe(""),A=it(()=>n.value?[dt.LINE,dt.RECT,dt.CIRCLE].includes(n.value.type):!1),l=it(()=>r.tableSelection?r.tableSelection.cells.length>1:!1),u=it(()=>{if(!r.tableSelection||r.tableSelection.cells.length!==1)return!1;const G=r.tableSelection.cells[0],re=r.selectedElement;if(!re||re.type!==dt.TABLE)return!1;const Ce=(G.section||"body")==="footer"?re.footerData:re.data;if(!Ce)return!1;const we=Ce[G.rowIndex];if(!we)return!1;const Fe=we[G.colField];return Fe&&typeof Fe=="object"?(Fe.rowSpan||1)>1||(Fe.colSpan||1)>1:!1}),c=Xe("properties"),d=Xe(!1),f=it(()=>r.unit||"mm"),g=it(()=>r.unit||"mm"),p=new Set(["fontSize","borderWidth","barcodeWidth","barcodeHeight","margin","borderRadius","headerHeight","rowHeight","footerHeight","labelFontSize","labelBorderWidth"]),b=G=>G.type!=="number"||!G.key?!1:p.has(G.key),m=G=>{const re=e(G.label);return b(G)?`${re} (${g.value})`:re},w=G=>{const re=oe(G);return b(G)&&typeof re=="number"?LA(re,f.value):re},S=(G,re)=>b(G)?ka(Number(re),f.value):re,E=G=>{if(!(G.min===void 0||G.min===null))return b(G)?LA(G.min,f.value):G.min},V=G=>{if(!(G.max===void 0||G.max===null))return b(G)?LA(G.max,f.value):G.max},j=G=>{if(!(G.step===void 0||G.step===null))return b(G)?LA(G.step,f.value):G.step},T=()=>{n.value&&(navigator.clipboard.writeText(n.value.id),d.value=!0,setTimeout(()=>{d.value=!1},2e3))},L=()=>{n.value&&(s.value=n.value.type,a.value=!0)},R=G=>{n.value&&G&&r.addCustomElement(G,n.value)},K=(G,re)=>{n.value&&r.updateElement(n.value.id,{[G]:re})},P=(G,re)=>{n.value&&r.updateElement(n.value.id,{style:{...n.value.style,[G]:re}})},I=(G,re)=>{try{const ye=re.target.value;K(G,JSON.parse(ye))}catch{window.alert("Invalid JSON")}},k=G=>{const re=oe(G);return G.language==="json"&&typeof re=="object"?JSON.stringify(re,null,2):re||""},B=(G,re)=>{if(G.language==="json")try{const ye=JSON.parse(re);K(G.key,ye)}catch{}else K(G.key,re)},q=G=>{switch(G){case dt.TEXT:return Z_;case dt.IMAGE:return e$;case dt.TABLE:return S$;case dt.PAGE_NUMBER:return I$;case dt.BARCODE:return vee;case dt.QRCODE:return jee;case dt.LINE:return Gee;case dt.RECT:return Xee;case dt.CIRCLE:return Zee;default:return null}},te=it(()=>n.value?q(n.value.type):null),J=it(()=>te.value?te.value.sections.filter(G=>(G.tab||"properties")===c.value):[]),oe=G=>n.value?(G.target==="style"?n.value.style:n.value)[G.key]??G.defaultValue:G.defaultValue,se=(G,re)=>{n.value&&(G.target==="style"&&G.key?P(G.key,re):G.target==="element"&&G.key&&K(G.key,re))},ae=G=>{!n.value||!G.actionName||(G.actionName==="paginateTable"?r.paginateTable(n.value.id):G.actionName==="removeBorder"&&r.updateElement(n.value.id,{style:{...n.value.style,borderStyle:void 0,borderWidth:void 0,borderColor:void 0,border:"none"}}))},Y=()=>{i.value?r.removeSelectedElements():n.value&&r.removeElement(n.value.id)},D=G=>{G.relatedTarget&&G.currentTarget.contains(G.relatedTarget)||r.setDisableGlobalShortcuts(!0)},Z=G=>{G.relatedTarget&&G.currentTarget.contains(G.relatedTarget)||r.setDisableGlobalShortcuts(!1)};return(G,re)=>(Ee(),Pe(Mt,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:D,onFocusout:Z},[F("div",yfe,[F("div",null,[F("h2",bfe,pe(Q(e)("properties.title")),1),F("p",wfe,pe(Q(e)("properties.subtitle")),1)]),o.value?(Ee(),Pe("div",xfe,[et(Q(_0),{class:"w-3 h-3"}),F("span",null,pe(Q(e)("properties.locked")),1)])):pt("",!0)]),i.value?(Ee(),Pe("div",Bfe,[F("div",Efe,[F("h3",Cfe,pe(Q(e)("properties.multiSelectMode")),1),F("p",Sfe,[F("span",Ofe,pe(Q(r).selectedElementIds.length),1),Ht(" "+pe(Q(e)("properties.selectedElements",{n:""}).replace("{n}","")),1)])]),F("button",{onClick:Y,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"},pe(Q(e)("properties.deleteSelected")),1)])):n.value?(Ee(),Pe("div",Tfe,[F("div",Ife,[(Ee(),Pe(Mt,null,Yr(["properties","style","advanced"],ye=>F("button",{key:ye,onClick:Ce=>c.value=ye,class:Ct(["flex-1 py-3 text-sm font-medium transition-colors relative",c.value===ye?"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"])},[Ht(pe(Q(e)(`properties.tab.${ye}`))+" ",1),c.value===ye?(Ee(),Pe("div",Pfe)):pt("",!0)],10,Ffe)),64))]),F("div",Lfe,[c.value==="properties"?(Ee(),Pe("div",kfe,[F("h3",Nfe,pe(Q(e)("properties.section.positionSize")),1),F("div",Ufe,[et(jg,{label:`${Q(e)("properties.label.x")} (${g.value})`,type:"number",disabled:o.value,value:Q(LA)(n.value.x,f.value),"onUpdate:value":re[0]||(re[0]=ye=>K("x",Q(ka)(Number(ye),f.value)))},null,8,["label","disabled","value"]),et(jg,{label:`${Q(e)("properties.label.y")} (${g.value})`,type:"number",disabled:o.value,value:Q(LA)(n.value.y,f.value),"onUpdate:value":re[1]||(re[1]=ye=>K("y",Q(ka)(Number(ye),f.value)))},null,8,["label","disabled","value"]),et(jg,{label:`${Q(e)("properties.label.width")} (${g.value})`,type:"number",disabled:o.value,value:Q(LA)(n.value.width,f.value),"onUpdate:value":re[2]||(re[2]=ye=>K("width",Q(ka)(Number(ye),f.value)))},null,8,["label","disabled","value"]),et(jg,{label:`${Q(e)("properties.label.height")} (${g.value})`,type:"number",disabled:o.value,value:Q(LA)(n.value.height,f.value),"onUpdate:value":re[3]||(re[3]=ye=>K("height",Q(ka)(Number(ye),f.value)))},null,8,["label","disabled","value"])])])):pt("",!0),c.value==="properties"&&n.value.type==="table"&&Q(r).tableSelection?(Ee(),Pe("div",Mfe,[F("h3",Dfe,pe(Q(e)("properties.section.cellOperations")),1),F("div",Rfe,[F("button",{onClick:re[4]||(re[4]=ye=>Q(r).mergeSelectedCells()),disabled:!l.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"},pe(Q(e)("properties.action.mergeCells")),9,Qfe),F("button",{onClick:re[5]||(re[5]=ye=>Q(r).splitSelectedCells()),disabled:!u.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"},pe(Q(e)("properties.action.splitCells")),9,Hfe)])])):pt("",!0),(Ee(!0),Pe(Mt,null,Yr(J.value,(ye,Ce)=>(Ee(),Pe("div",{key:Ce,class:"space-y-3 pt-2 first:pt-0 border-t first:border-0 border-gray-100 dark:border-gray-800"},[F("h3",zfe,pe(Q(e)(ye.title)),1),F("div",Vfe,[(Ee(!0),Pe(Mt,null,Yr(ye.fields,(we,Fe)=>(Ee(),Pe(Mt,{key:Fe},[we.type==="action"?(Ee(),Pe("div",jfe,[F("button",{onClick:Ve=>ae(we),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"},pe(Q(e)(we.label)),9,qfe)])):we.type==="text"||we.type==="number"||we.type==="switch"?(Ee(),Nr(jg,{key:1,label:m(we),type:we.type,min:E(we),max:V(we),step:j(we),disabled:o.value,placeholder:we.placeholder?we.placeholder.startsWith("properties.")?Q(e)(we.placeholder):we.placeholder:"",value:w(we),"onUpdate:value":Ve=>se(we,S(we,Ve))},null,8,["label","type","min","max","step","disabled","placeholder","value","onUpdate:value"])):we.type==="select"?(Ee(),Nr(Jce,{key:2,label:Q(e)(we.label),options:(we.options||[]).map(Ve=>({...Ve,label:Q(e)(Ve.label)})),disabled:o.value,value:oe(we),"onUpdate:value":Ve=>se(we,Ve)},null,8,["label","options","disabled","value","onUpdate:value"])):we.type==="color"?(Ee(),Nr(BN,{key:3,label:Q(e)(we.label),disabled:o.value,value:oe(we),"onUpdate:value":Ve=>se(we,Ve)},null,8,["label","disabled","value","onUpdate:value"])):we.type==="image"?(Ee(),Nr(mfe,{key:4,label:Q(e)(we.label),disabled:o.value,placeholder:we.placeholder?we.placeholder.startsWith("properties.")?Q(e)(we.placeholder):we.placeholder:void 0,value:oe(we),"onUpdate:value":Ve=>se(we,Ve)},null,8,["label","disabled","placeholder","value","onUpdate:value"])):we.type==="code"?(Ee(),Nr(ufe,{key:5,label:Q(e)(we.label),language:we.language||"javascript",disabled:o.value,value:k(we),"onUpdate:value":Ve=>B(we,Ve)},null,8,["label","language","disabled","value","onUpdate:value"])):we.type==="textarea"?(Ee(),Pe("div",Kfe,[F("label",Gfe,pe(Q(e)(we.label)),1),F("textarea",{placeholder:we.placeholder?we.placeholder.startsWith("properties.")?Q(e)(we.placeholder):we.placeholder:"",disabled:o.value,value:["data","columns","footerData"].includes(we.key)?JSON.stringify(n.value[we.key],null,2):oe(we),onChange:Ve=>["data","columns","footerData"].includes(we.key)?I(we.key,Ve):se(we,Ve.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,Wfe)])):pt("",!0)],64))),128))])]))),128)),c.value==="style"&&!A.value?(Ee(),Pe("div",Xfe,[F("h3",Yfe,pe(Q(e)("properties.section.appearance")),1),et(BN,{label:Q(e)("properties.label.backgroundColor"),disabled:o.value,value:n.value.style.backgroundColor||"#ffffff","onUpdate:value":re[6]||(re[6]=ye=>P("backgroundColor",ye))},null,8,["label","disabled","value"])])):pt("",!0),c.value==="advanced"?(Ee(),Pe("div",Zfe,[F("div",Jfe,[F("h4",_fe,pe(Q(e)("properties.section.elementInfo")),1),F("div",$fe,[F("div",null,[F("p",ede,pe(Q(e)("properties.label.id")),1),F("div",tde,[F("span",{class:"font-mono text-xs text-gray-600 dark:text-gray-400 flex-1 truncate select-all",title:n.value.id},pe(n.value.id),9,rde),F("button",{onClick:T,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:d.value?Q(e)("properties.action.copied"):Q(e)("properties.action.copyId")},[d.value?(Ee(),Nr(Q(Vre),{key:0,class:"w-3.5 h-3.5 text-green-500 dark:text-green-400"})):(Ee(),Nr(Q(fd),{key:1,class:"w-3.5 h-3.5"}))],8,nde)])]),F("div",ide,[F("span",ode,pe(Q(e)("properties.label.type")),1),F("span",ade,pe(Q(e)("elements."+n.value.type)),1)])])]),F("button",{onClick:L,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(Q(s5),{class:"w-4 h-4"}),Ht(" "+pe(Q(e)("properties.action.saveCustom")),1)]),F("button",{onClick:Y,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(Q(cd),{class:"w-4 h-4"}),Ht(" "+pe(Q(e)("properties.action.deleteElement")),1)],8,sde)])):pt("",!0)])])):(Ee(),Pe("div",Ade,[F("div",lde,[F("h3",ude,pe(Q(e)("properties.empty.noSelection")),1),F("p",cde,pe(Q(e)("properties.empty.selectInstruction")),1)])]))],32),et(zg,{show:a.value,"initial-value":s.value,title:Q(e)("properties.action.saveCustomModal"),placeholder:Q(e)("sidebar.enterNamePlaceholder"),onClose:re[7]||(re[7]=ye=>a.value=!1),onSave:R},null,8,["show","initial-value","title","placeholder"])],64))}}),[["__scopeId","data-v-0bce654d"]]),EN=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=Xe(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 B of w){const q=b+B.position*g-p;c.fillStyle=B.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"?uP:r.unit==="pt"?cP:1,T=50/(E*g),L=[1,2,5,10,20,50,100,200,500,1e3];let R=L[L.length-1];for(const B of L)if(B>=T-.001){R=B;break}const K=m==="horizontal"?d:f,P=(-b+p)/(g*E),I=(K-b+p)/(g*E),k=Math.floor(P/R)*R;for(let B=k;B<=I;B+=R){const q=b+B*E*g-p,te=Number(B.toFixed(1)).toString();m==="horizontal"?(c.moveTo(q,0),c.lineTo(q,o),c.fillText(te,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(te,0,0),c.restore());const J=R/5;for(let oe=1;oe<5;oe++){const se=B+J*oe,ae=b+se*E*g-p;m==="horizontal"?(c.moveTo(ae,o-5),c.lineTo(ae,o)):(c.moveTo(o-5,ae),c.lineTo(o,ae))}}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)=>(Ee(),Pe("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))}}),dde={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function hde(t,e){return Ee(),Pe("svg",dde,[...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 gde=Lt({name:"material-symbols-content-cut",render:hde}),pde={class:"bg-white border border-gray-200 shadow-xl rounded-md min-w-[160px] py-1"},vde=["disabled"],mde=["disabled"],yde=["disabled"],bde=["disabled"],wde=["disabled"],xde=Tr({__name:"Shortcuts",setup(t){const{t:e}=zn(),r=un(),n=ui("designer-root"),i=Xe(!1),o=Xe(0),a=Xe(0),s=Xe(0),A=Xe(0),l=Xe(null),u=Xe(!1),c=Xe(0),d=Xe(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,V)=>{const j=g().querySelectorAll(".print-page");if(j.length===0)return;let T=null,L=1/0,R=0;for(let K=0;K<j.length;K++){const P=j[K],I=P.getBoundingClientRect();if(E>=I.left&&E<=I.right&&V>=I.top&&V<=I.bottom)return{pageIndex:K,x:(E-I.left)/r.zoom,y:(V-I.top)/r.zoom};const k=Math.max(I.left-E,0,E-I.right),B=Math.max(I.top-V,0,V-I.bottom),q=Math.sqrt(k*k+B*B);q<L&&(L=q,T=P,R=K)}if(T){const K=T.getBoundingClientRect();let P=(E-K.left)/r.zoom,I=(V-K.top)/r.zoom;return P=Math.max(0,Math.min(r.canvasSize.width,P)),I=Math.max(0,Math.min(r.canvasSize.height,I)),{pageIndex:R,x:P,y:I}}},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 V=E.target;if(V&&V.closest('input, textarea, select, [contenteditable="true"]'))return;if(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(E.key)){const L=E.shiftKey?10:1;if(r.selectedGuideId){const R=r.guides.find(K=>K.id===r.selectedGuideId);if(R){E.preventDefault();const K=R.position;let P=K;if(R.type==="vertical")if(E.key==="ArrowLeft")P-=L;else if(E.key==="ArrowRight")P+=L;else return;else if(E.key==="ArrowUp")P-=L;else if(E.key==="ArrowDown")P+=L;else return;(K>0&&P<0||K<0&&P>0||P===0)&&(P=0),r.updateGuide(R.id,P),r.setHighlightedGuide(R.id)}}else if(r.selectedElementIds.length>0){E.preventDefault();const R=E.key==="ArrowLeft"?-L:E.key==="ArrowRight"?L:0,K=E.key==="ArrowUp"?-L:E.key==="ArrowDown"?L:0;r.nudgeSelectedElements(R,K)}return}if((E.ctrlKey||E.metaKey)&&E.key.toLowerCase()==="a"){if(E.preventDefault(),r.pages[r.currentPageIndex]){const L=r.pages[r.currentPageIndex].elements.map(R=>R.id);r.setSelection(L)}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 V=E.target,j=g().querySelector(".overflow-auto");if(!j||!j.contains(V))return;if(E.preventDefault(),i.value=!0,o.value=E.clientX,a.value=E.clientY,s.value=E.clientX,A.value=E.clientY,await Xi(),l.value){const R=l.value.getBoundingClientRect(),K=window.innerWidth,P=window.innerHeight;E.clientX+R.width>K&&(o.value=K-R.width-5),E.clientY+R.height>P&&(a.value=P-R.height-5)}const T=g().querySelectorAll(".print-page");let L=!1;T.forEach(R=>{const K=R.getBoundingClientRect();E.clientX>=K.left&&E.clientX<=K.right&&E.clientY>=K.top&&E.clientY<=K.bottom&&(L=!0)}),u.value=L,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,V)=>{var j,T,L,R,K;return i.value?(Ee(),Pe("div",{key:0,ref_key:"menuRef",ref:l,class:"fixed z-[9999]",style:wt({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:Q(r).selectedElementIds.length===0&&!Q(r).selectedGuideId||((j=Q(r).selectedElement)==null?void 0:j.locked),onClick:V[0]||(V[0]=()=>{Q(r).selectedElementIds.length>1?Q(r).removeSelectedElements():Q(r).selectedElementId?Q(r).removeElement(Q(r).selectedElementId):Q(r).selectedGuideId&&Q(r).removeGuide(Q(r).selectedGuideId),i.value=!1})},[et(Q(cd),{class:"w-4 h-4"}),F("span",null,pe(Q(e)("common.delete"))+pe(Q(r).selectedElementIds.length>1?` (${Q(r).selectedElementIds.length})`:""),1)],8,vde),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:!Q(r).selectedElementId||((T=Q(r).selectedElement)==null?void 0:T.locked),onClick:V[1]||(V[1]=()=>{Q(r).cut(),i.value=!1})},[et(Q(gde),{class:"w-4 h-4"}),F("span",null,pe(Q(e)("common.cut")),1)],8,mde),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:!Q(r).selectedElementId||((L=Q(r).selectedElement)==null?void 0:L.locked),onClick:V[2]||(V[2]=()=>{Q(r).copy(),i.value=!1})},[et(Q(fd),{class:"w-4 h-4"}),F("span",null,pe(Q(e)("common.copy")),1)],8,yde),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:Q(r).clipboard.length===0,onClick:V[3]||(V[3]=()=>{Q(r).paste(p(s.value,A.value)),i.value=!1})},[et(Q(A5),{class:"w-4 h-4"}),F("span",null,pe(Q(e)("common.paste")),1)],8,bde),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:Q(r).selectedElementIds.length===0,onClick:V[4]||(V[4]=()=>{Q(r).toggleLock(),i.value=!1})},[(Ee(),Nr(Vh((R=Q(r).selectedElement)!=null&&R.locked?Q(bP):Q(_0)),{class:"w-4 h-4"})),F("span",null,pe((K=Q(r).selectedElement)!=null&&K.locked?Q(e)("common.unlock"):Q(e)("common.lock")),1)],8,wde),V[7]||(V[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:V[5]||(V[5]=P=>{Q(r).undo(),i.value=!1})},[et(Q(mP),{class:"w-4 h-4"}),F("span",null,pe(Q(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:V[6]||(V[6]=P=>{Q(r).redo(),i.value=!1})},[et(Q(yP),{class:"w-4 h-4"}),F("span",null,pe(Q(e)("common.redo")),1)])])],4)):pt("",!0)}}}),Bde={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"},Ede={key:2,class:"w-full h-full bg-gray-200 flex items-center justify-center overflow-hidden"},Cde=["src"],Sde={key:3,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},Ode=["src"],Tde={key:4,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},Ide=["src"],Fde={key:2,class:"w-full h-full bg-gray-200 flex items-center justify-center overflow-hidden"},Pde=["src"],Lde={key:3,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},kde=["src"],Nde={key:4,class:"w-full h-full bg-gray-100 flex items-center justify-center overflow-hidden"},Ude=["src"],CN=180,SN=120,ON=300,Mde=32,Dde=Fd(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 P=CN/r.scrollWidth;return r.scrollHeight*P>ON&&(P=ON/r.scrollHeight),r.scrollWidth*P<SN&&(P=SN/r.scrollWidth),P}),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=P=>P.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;"),A=it(()=>{const P=r.watermark;if(!P||!P.enabled||!P.text)return null;const I=s(P.text),k=Number.isFinite(P.angle)?P.angle:-30,B=Math.max(6,P.size||24),q=Math.max(40,P.density||160),te=P.color||"#000000",J=Math.min(1,Math.max(0,P.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="${te}" fill-opacity="${J}" font-size="${B}" transform="rotate(${k} ${q/2} ${q/2})">${I}</text></svg>`;return{backgroundImage:`url("data:image/svg+xml,${encodeURIComponent(oe)}")`,backgroundRepeat:"repeat",backgroundSize:`${q}px ${q}px`}}),l=P=>{const I={left:`${r.contentOffsetX*i.value}px`,top:`${(r.contentOffsetY+P*(r.pageHeight+Mde)*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?{...I,...A.value}:I},u=()=>{if(!r.pages||r.pages.length===0)return[];const P=r.pages[0];return P!=null&&P.elements?P.elements.filter(I=>r.showHeaderLine&&I.y<r.headerHeight||r.showFooterLine&&I.y>=r.pageHeight-r.footerHeight):[]},c=P=>{const I=Math.max(1,P.width*r.zoom*i.value),k=Math.max(1,P.height*r.zoom*i.value);return{width:I,height:k}},d=P=>{var q,te,J,oe,se,ae,Y,D,Z,G,re,ye;const{width:I,height:k}=c(P),B={left:`${P.x*r.zoom*i.value}px`,top:`${P.y*r.zoom*i.value}px`,width:`${I}px`,height:`${k}px`,fontSize:`${(((q=P.style)==null?void 0:q.fontSize)||12)*r.zoom*i.value}px`,zIndex:((te=P.style)==null?void 0:te.zIndex)||1,transform:`rotate(${((J=P.style)==null?void 0:J.rotate)||0}deg)`};if(P.type===dt.LINE){const Ce=((oe=P.style)==null?void 0:oe.borderColor)||"#111827",we=Math.max(1,(((se=P.style)==null?void 0:se.borderWidth)||1)*r.zoom*i.value);return{...B,height:`${we}px`,backgroundColor:Ce,top:`${P.y*r.zoom*i.value+(k-we)/2}px`}}if(P.type===dt.RECT||P.type===dt.CIRCLE){const Ce=((ae=P.style)==null?void 0:ae.borderColor)||"#111827",we=Math.max(1,(((Y=P.style)==null?void 0:Y.borderWidth)||1)*r.zoom*i.value);return{...B,backgroundColor:((D=P.style)==null?void 0:D.backgroundColor)||"transparent",borderColor:Ce,borderWidth:`${we}px`,borderStyle:((Z=P.style)==null?void 0:Z.borderStyle)||"solid",borderRadius:P.type===dt.CIRCLE?"9999px":`${((G=P.style)==null?void 0:G.borderRadius)||0}px`}}return P.type===dt.BARCODE||P.type===dt.QRCODE?{...B,backgroundColor:"rgba(17, 24, 39, 0.15)",border:"1px solid rgba(17, 24, 39, 0.3)"}:P.type===dt.PAGE_NUMBER?{...B,color:((re=P.style)==null?void 0:re.color)||"#111827",backgroundColor:((ye=P.style)==null?void 0:ye.backgroundColor)||"transparent"}:{...B,backgroundColor:P.type===dt.IMAGE?"#e5e7eb":void 0}},f=(P,I)=>{var te;const k=I+1,B=((te=r.pages)==null?void 0:te.length)||1,q=P.format||"1/Total";return q==="1"?`${k}`:q==="Page 1"?`Page ${k}`:`${k}/${B}`},g=P=>{const I=P.style?JSON.stringify(P.style):"";return`${P.id}:${P.type}:${P.variable||""}:${P.content||""}:${I}`},p=Xe({}),b=Xe({});let m=0;const w=P=>P.type===dt.BARCODE?P.variable||P.content||"12345678":P.type===dt.QRCODE?P.variable||P.content||"https://example.com":P.variable||P.content||"",S=P=>{try{const I=document.createElement("canvas"),k=P.style||{};return u6(I,w(P),{format:k.barcodeFormat||"CODE128",lineColor:k.color||"#000000",width:Number(k.barcodeWidth)||2,height:Number(k.barcodeHeight)||40,displayValue:k.showText!==!1&&k.showText!=="false",fontOptions:k.fontOptions||"",font:k.font||"monospace",textAlign:k.textAlign||"center",textPosition:k.textPosition||"bottom",textMargin:Number(k.textMargin)||2,fontSize:Number(k.fontSize)||20,background:"transparent",margin:Number(k.margin)||0}),I.toDataURL("image/png")}catch{return""}},E=async P=>{var I,k;try{return await j6.toDataURL(w(P),{margin:0,color:{dark:((I=P.style)==null?void 0:I.color)||"#000000",light:"#00000000"},errorCorrectionLevel:((k=P.style)==null?void 0:k.qrErrorCorrection)||"M"})}catch{return""}},V=async()=>{const P=++m,I={},k={},B=r.pages||[];for(const q of B){const te=(q==null?void 0:q.elements)||[];for(const J of te){const oe=g(J);if(J.type===dt.BARCODE){const se=S(J);se&&(I[oe]=se)}else if(J.type===dt.QRCODE){const se=await E(J);se&&(k[oe]=se)}}}P===m&&(p.value=I,b.value=k)},j=P=>p.value[g(P)]||"",T=P=>b.value[g(P)]||"";Yt(()=>r.pages,()=>{V()},{deep:!0,immediate:!0});const L=Xe(!1),R=Xe(null);Yt(()=>r.scrollTop,()=>{if(!R.value)return;const P=r.scrollTop*i.value,I=r.viewportHeight*i.value,k=R.value.clientHeight,B=R.value.scrollTop;P<B?R.value.scrollTop=P:P+I>B+k&&(R.value.scrollTop=P+I-k)});const K=P=>{P.preventDefault();const I=P.currentTarget,k=I.getBoundingClientRect(),B=P.clientX-k.left,q=P.clientY-k.top,te=r.scrollLeft*i.value,J=r.scrollTop*i.value,oe=r.viewportWidth*i.value,se=r.viewportHeight*i.value;let ae=0,Y=0;if(B>=te&&B<=te+oe&&q>=J&&q<=J+se)ae=B-te,Y=q-J;else{const G=B/i.value-r.viewportWidth/2,re=q/i.value-r.viewportHeight/2;n("update:scroll",{left:G,top:re}),ae=oe/2,Y=se/2}L.value=!0;const D=G=>{const re=I.getBoundingClientRect(),ye=G.clientX-re.left,Ce=G.clientY-re.top,we=ye-ae,Fe=Ce-Y;n("update:scroll",{left:we/i.value,top:Fe/i.value})},Z=()=>{L.value=!1,window.removeEventListener("mousemove",D),window.removeEventListener("mouseup",Z)};window.addEventListener("mousemove",D),window.addEventListener("mouseup",Z)};return(P,I)=>(Ee(),Pe("div",{ref_key:"scrollContainer",ref:R,class:"bg-white border border-gray-200 shadow-lg rounded max-h-[300px] overflow-y-auto overflow-x-hidden box-content no-scrollbar",style:wt({width:`${r.scrollWidth*i.value}px`,maxWidth:`${CN}px`})},[F("div",{class:"relative select-none box-content overflow-hidden",style:wt({width:`${r.scrollWidth*i.value}px`,height:`${o.value}px`}),onMousedown:K},[I[0]||(I[0]=F("div",{class:"absolute inset-0 bg-gray-100"},null,-1)),(Ee(!0),Pe(Mt,null,Yr(t.pages,(k,B)=>(Ee(),Pe("div",{key:B,class:"absolute shadow-sm border border-gray-300 overflow-hidden",style:wt(l(B))},[F("div",Bde,pe(B+1),1),(Ee(!0),Pe(Mt,null,Yr(k.elements,q=>{var te,J;return Ee(),Pe("div",{key:q.id,class:"absolute",style:wt(d(q))},[q.type===Q(dt).TEXT?(Ee(),Pe("div",{key:0,class:"w-full h-full overflow-hidden whitespace-nowrap",style:wt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},pe(q.variable||q.content),5)):q.type===Q(dt).PAGE_NUMBER?(Ee(),Pe("div",{key:1,class:"w-full h-full overflow-hidden whitespace-nowrap",style:wt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},pe(f(q,B)),5)):q.type===Q(dt).IMAGE?(Ee(),Pe("div",Ede,[q.content?(Ee(),Pe("img",{key:0,src:q.content,class:"w-full h-full object-cover"},null,8,Cde)):pt("",!0)])):q.type===Q(dt).BARCODE?(Ee(),Pe("div",Sde,[j(q)?(Ee(),Pe("img",{key:0,src:j(q),class:"w-full h-full object-contain"},null,8,Ode)):pt("",!0)])):q.type===Q(dt).QRCODE?(Ee(),Pe("div",Tde,[T(q)?(Ee(),Pe("img",{key:0,src:T(q),class:"w-full h-full object-contain"},null,8,Ide)):pt("",!0)])):q.type===Q(dt).TABLE?(Ee(),Pe("div",{key:5,class:"w-full h-full border border-gray-300 bg-white grid",style:wt({gridTemplateColumns:`repeat(${((te=q.columns)==null?void 0:te.length)||2}, 1fr)`})},[(Ee(!0),Pe(Mt,null,Yr(Math.min(6,(((J=q.columns)==null?void 0:J.length)||2)*2),oe=>(Ee(),Pe("div",{key:oe,class:"border-[0.5px] border-gray-100"}))),128))],4)):pt("",!0)],4)}),128)),B>0?(Ee(!0),Pe(Mt,{key:0},Yr(u(),q=>{var te,J;return Ee(),Pe("div",{key:`global-${B}-${q.id}`,class:"absolute",style:wt(d(q))},[q.type===Q(dt).TEXT?(Ee(),Pe("div",{key:0,class:"w-full h-full overflow-hidden whitespace-nowrap",style:wt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},pe(q.variable||q.content),5)):q.type===Q(dt).PAGE_NUMBER?(Ee(),Pe("div",{key:1,class:"w-full h-full overflow-hidden whitespace-nowrap",style:wt({color:q.style.color||"#000000",fontFamily:q.style.fontFamily,fontWeight:q.style.fontWeight,fontStyle:q.style.fontStyle,textAlign:q.style.textAlign,lineHeight:1})},pe(f(q,B)),5)):q.type===Q(dt).IMAGE?(Ee(),Pe("div",Fde,[q.content?(Ee(),Pe("img",{key:0,src:q.content,class:"w-full h-full object-cover"},null,8,Pde)):pt("",!0)])):q.type===Q(dt).BARCODE?(Ee(),Pe("div",Lde,[j(q)?(Ee(),Pe("img",{key:0,src:j(q),class:"w-full h-full object-contain"},null,8,kde)):pt("",!0)])):q.type===Q(dt).QRCODE?(Ee(),Pe("div",Nde,[T(q)?(Ee(),Pe("img",{key:0,src:T(q),class:"w-full h-full object-contain"},null,8,Ude)):pt("",!0)])):q.type===Q(dt).TABLE?(Ee(),Pe("div",{key:5,class:"w-full h-full border border-gray-300 bg-white grid",style:wt({gridTemplateColumns:`repeat(${((te=q.columns)==null?void 0:te.length)||2}, 1fr)`})},[(Ee(!0),Pe(Mt,null,Yr(Math.min(6,(((J=q.columns)==null?void 0:J.length)||2)*2),oe=>(Ee(),Pe("div",{key:oe,class:"border-[0.5px] border-gray-100"}))),128))],4)):pt("",!0)],4)}),128)):pt("",!0)],4))),128)),F("div",{class:"absolute border-2 border-blue-500 bg-blue-500/10 cursor-move z-[1000]",style:wt(a.value)},null,4)],36)],4))}}),[["__scopeId","data-v-5a8ed346"]]),Rde={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Qde(t,e){return Ee(),Pe("svg",Rde,[...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 Hde=Lt({name:"material-symbols-logout",render:Qde}),zde={class:"flex-1 flex overflow-hidden"},Vde={class:"flex-1 overflow-hidden relative flex flex-col"},jde={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"},qde={class:"text-sm font-medium"},Kde={class:"flex items-center gap-2"},Gde={class:"relative w-full h-full flex flex-col overflow-hidden"},Wde={class:"flex-none h-5 bg-gray-50 border-b border-gray-300 flex z-20"},Xde={class:"flex-1 relative overflow-hidden"},Yde={class:"flex-1 flex overflow-hidden relative"},Zde={class:"w-5 flex-none bg-gray-50 border-r border-gray-300 h-full relative z-20 overflow-hidden"},Jde=["onMousedown"],_de={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"},$de=["onMousedown"],ehe={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"},the={key:2,class:"absolute pointer-events-none"},rhe={key:1,class:"absolute bottom-4 right-4 z-50"},nhe=Tr({__name:"PrintDesigner",setup(t){const e=un(),r=dg(),{autoSave:n}=rP(),{isDark:i}=du(),{t:o}=zn(),a=Xe(null),s=Xe(null),A=Xe(null);let l=null;const u=Xe(null);Qy("designer-root",s),Qy("modal-container",A);const c=Xe(null),d=Xe(!1),f=Xe(0),g=()=>{f.value+=1},p=(H,W)=>{const N=getComputedStyle(document.documentElement).getPropertyValue(H).trim(),M=gg(N);return M?HX(M.h,M.s,M.v,W):`rgba(59, 130, 246, ${W})`},b=it(()=>e.editingCustomElement),m=it(()=>b.value?`${b.value.name} Copy`:"");xi(()=>{e.setIsExporting(!1),Xi(()=>{ae()}),l=new ResizeObserver(()=>{ae()}),a.value&&l.observe(a.value),window.addEventListener("resize",ae),window.addEventListener("keydown",Ve),window.addEventListener("keydown",T),window.addEventListener("keyup",Ve),window.addEventListener("blur",Se),window.addEventListener("brand-theme-updated",g),Yt([()=>e.pages.length,()=>e.canvasSize.width,()=>e.canvasSize.height,()=>e.zoom,()=>e.showMinimap],()=>{Xi(ae)}),Yt(i,H=>{s.value&&s.value.classList.toggle("dark",H)},{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=NX(()=>{if(!e.editingCustomElementId&&n.value&&r.currentTemplateId&&!r.isSaving){const H=r.templates.find(W=>W.id===r.currentTemplateId);H&&r.saveCurrentTemplate(H.name)}},1e3),S=()=>{if(!e.commitCustomElementEdit()){alert(o("sidebar.editSaveFailed"));return}e.cancelCustomElementEdit()},E=H=>{const W=H.trim();if(!W)return;if(!e.saveCustomElementEditAs(W)){alert(o("sidebar.editSaveFailed"));return}e.cancelCustomElementEdit()},V=()=>{confirm(o("sidebar.confirmExitEdit"))&&(e.cancelCustomElementEdit(),requestAnimationFrame(()=>{var H,W;(W=(H=a.value)==null?void 0:H.focus)==null||W.call(H)}))},j=H=>{var M;const W=H;if(!W)return!1;if(W.isContentEditable)return!0;const N=(M=W.tagName)==null?void 0:M.toLowerCase();return N==="input"||N==="textarea"||N==="select"},T=H=>{if(e.disableGlobalShortcuts||!e.editingCustomElementId||d.value||j(H.target)||!(H.ctrlKey||H.metaKey))return;const N=H.key.toLowerCase();if(N==="s"&&H.shiftKey){H.preventDefault(),H.stopPropagation(),d.value=!0;return}if(N==="s"){H.preventDefault(),H.stopPropagation(),S();return}N==="q"&&(H.preventDefault(),H.stopPropagation(),V())},L=Xe(0),R=Xe(0),K=Xe(0),P=Xe(0),I=H=>{const W=H.target;L.value=W.scrollLeft,R.value=W.scrollTop},k=Xe(0),B=Xe(0),q=Xe(0),te=Xe(0),J=it(()=>e.unit||"mm"),oe=H=>{const W=LA(H,e.unit||"mm");return e.unit==="px"?Math.round(W):Number(W.toFixed(1))},se=it(()=>{const H=e.pages.length,W=e.canvasSize.height,N=e.canvasSize.width,M=e.pageSpacingY||0,$=H>0?H*W+(H-1)*M:0;return{width:`${N*e.zoom}px`,height:`${$*e.zoom}px`}}),ae=()=>{if(a.value&&c.value){const H=a.value.clientWidth,W=a.value.clientHeight;q.value=H,te.value=W;const N=parseFloat(se.value.width),M=parseFloat(se.value.height),$=64,ne=64;k.value=Math.max(H,N+$),B.value=Math.max(W,M+ne),N+$<=H&&(k.value=H),M+ne<=W&&(B.value=W);const Ae=a.value.getBoundingClientRect(),xe=c.value.getBoundingClientRect(),he=a.value.clientLeft||0,le=a.value.clientTop||0;L.value=a.value.scrollLeft,R.value=a.value.scrollTop,K.value=xe.left-Ae.left+a.value.scrollLeft-he,P.value=xe.top-Ae.top+a.value.scrollTop-le}};Bi(()=>{var H;w.cancel(),l&&(l.disconnect(),l=null),window.removeEventListener("resize",ae),window.removeEventListener("mousemove",Ce),window.removeEventListener("mouseup",we),window.removeEventListener("keydown",Ve),window.removeEventListener("keydown",T),window.removeEventListener("keyup",Ve),window.removeEventListener("blur",Se),window.removeEventListener("brand-theme-updated",g),(H=a.value)==null||H.removeEventListener("wheel",Fe)});const Y=Xe(!1),D=Xe(null),Z=Xe("horizontal"),G=Xe(0),re=(H,W,N=null)=>{Y.value=!0,D.value=N,Z.value=W,ye(H),window.addEventListener("mousemove",Ce),window.addEventListener("mouseup",we)},ye=H=>{if(!a.value)return;const W=a.value.getBoundingClientRect(),N=e.zoom;if(Z.value==="horizontal"){const M=H.clientY-W.top+a.value.scrollTop;G.value=(M-P.value)/N}else{const M=H.clientX-W.left+a.value.scrollLeft;G.value=(M-K.value)/N}},Ce=H=>{Y.value&&(H.preventDefault(),ye(H),D.value&&e.updateGuide(D.value,G.value))},we=H=>{if(!Y.value)return;const W=a.value.getBoundingClientRect();let N=!1;Z.value==="horizontal"?H.clientY<W.top&&(N=!0):H.clientX<W.left&&(N=!0),N?D.value&&e.removeGuide(D.value):D.value?e.updateGuide(D.value,G.value):e.addGuide({type:Z.value,position:G.value}),Y.value=!1,D.value=null,window.removeEventListener("mousemove",Ce),window.removeEventListener("mouseup",we)},Fe=H=>{H.ctrlKey&&(H.preventDefault(),H.deltaY<0?e.setZoom(Math.min(5,e.zoom+.1)):e.setZoom(Math.max(.2,e.zoom-.1)))},Ve=H=>{var W,N;e.disableGlobalShortcuts||(H.key==="Control"||H.key==="Meta")&&(H.type==="keydown"&&!H.repeat?(W=a.value)==null||W.addEventListener("wheel",Fe,{passive:!1}):H.type==="keyup"&&((N=a.value)==null||N.removeEventListener("wheel",Fe)))},Se=()=>{var H;(H=a.value)==null||H.removeEventListener("wheel",Fe)},ke=H=>{a.value&&a.value.scrollTo({left:H.left,top:H.top,behavior:"auto"})},ie=H=>{var Ne;const W=((Ne=H.style)==null?void 0:Ne.rotate)||0;if(W===0)return{minX:H.x,maxX:H.x+H.width,minY:H.y,maxY:H.y+H.height};const N=H.x+H.width/2,M=H.y+H.height/2,$=W*Math.PI/180,ne=Math.cos($),Ae=Math.sin($),xe=[{x:H.x,y:H.y},{x:H.x+H.width,y:H.y},{x:H.x,y:H.y+H.height},{x:H.x+H.width,y:H.y+H.height}];let he=1/0,le=-1/0,Oe=1/0,Ue=-1/0;for(const Te of xe){const De=N+(Te.x-N)*ne-(Te.y-M)*Ae,Qe=M+(Te.x-N)*Ae+(Te.y-M)*ne;De<he&&(he=De),De>le&&(le=De),Qe<Oe&&(Oe=Qe),Qe>Ue&&(Ue=Qe)}return{minX:he,maxX:le,minY:Oe,maxY:Ue}},O=it(()=>{if(!e.isDragging||e.selectedElementIds.length===0)return null;const H=[];for(const xe of e.selectedElementIds)for(const he of e.pages){const le=he.elements.find(Oe=>Oe.id===xe);le&&H.push(le)}if(H.length===0)return null;let W=1/0,N=-1/0,M=1/0,$=-1/0;for(const xe of H){const he=ie(xe);he.minX<W&&(W=he.minX),he.maxX>N&&(N=he.maxX),he.minY<M&&(M=he.minY),he.maxY>$&&($=he.maxY)}const ne=(W+N)/2,Ae=(M+$)/2;return{minX:W,maxX:N,minY:M,maxY:$,centerX:ne,centerY:Ae}}),ee=it(()=>{if(!O.value)return{h:[],v:[]};f.value;const H=p("--brand-500",.5),{minX:W,maxX:N,minY:M,maxY:$}=O.value;return{h:[{position:W,color:H},{position:N,color:H}],v:[{position:M,color:H},{position:$,color:H}]}});return(H,W)=>{var N;return Ee(),Pe("div",{ref_key:"rootContainer",ref:s,class:"h-full w-full flex flex-col bg-gray-100 overflow-hidden"},[et(Zue),F("div",zde,[et(Qce),F("main",Vde,[Q(e).editingCustomElementId?(Ee(),Pe("div",jde,[F("div",qde,pe(Q(o)("sidebar.editingElement",{name:((N=b.value)==null?void 0:N.name)||""})),1),F("div",Kde,[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(Q(s5),{class:"w-4 h-4"}),Ht(" "+pe(Q(o)("sidebar.saveEdit")),1)]),F("button",{onClick:W[0]||(W[0]=M=>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(Q(vP),{class:"w-4 h-4"}),Ht(" "+pe(Q(o)("sidebar.saveAs")),1)]),F("button",{onClick:V,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(Q(Hde),{class:"w-4 h-4"}),Ht(" "+pe(Q(o)("sidebar.exitEdit")),1)])])])):pt("",!0),et(xde),F("div",Gde,[F("div",Wde,[W[5]||(W[5]=F("div",{class:"w-5 flex-none bg-gray-100 border-r border-gray-300"},null,-1)),F("div",Xde,[et(EN,{type:"horizontal",zoom:Q(e).zoom,scroll:L.value,offset:K.value,thick:20,unit:Q(e).unit||"mm",indicators:ee.value.h,onGuideDragStart:W[1]||(W[1]=M=>re(M,"horizontal"))},null,8,["zoom","scroll","offset","unit","indicators"])])]),F("div",Yde,[F("div",Zde,[et(EN,{type:"vertical",zoom:Q(e).zoom,scroll:R.value,offset:P.value,thick:20,unit:Q(e).unit||"mm",indicators:ee.value.v,onGuideDragStart:W[2]||(W[2]=M=>re(M,"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:I,onClick:W[3]||(W[3]=M=>{(M.target===a.value||M.target===M.currentTarget)&&Q(e).selectGuide(null)})},[F("div",{ref_key:"canvasWrapper",ref:c,style:wt(se.value),class:"mx-auto relative"},[et(q6,{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:wt({width:`${k.value}px`,height:`${B.value}px`})},[O.value?(Ee(),Pe(Mt,{key:0},[F("div",{class:"absolute w-full border-t border-blue-500 border-dashed",style:wt({top:`${P.value+Math.round(O.value.minY*Q(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:wt({left:`${L.value+10}px`})},pe(oe(O.value.minY))+" "+pe(J.value),5)],4),F("div",{class:"absolute w-full border-t border-dashed theme-border",style:wt({top:`${P.value+Math.round(O.value.maxY*Q(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:wt({left:`${L.value+10}px`})},pe(oe(O.value.maxY))+" "+pe(J.value),5)],4),F("div",{class:"absolute h-full border-l border-dashed theme-border",style:wt({left:`${K.value+Math.round(O.value.minX*Q(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:wt({top:`${R.value+10}px`})},pe(oe(O.value.minX))+" "+pe(J.value),5)],4),F("div",{class:"absolute h-full border-l border-dashed theme-border",style:wt({left:`${K.value+Math.round(O.value.maxX*Q(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:wt({top:`${R.value+10}px`})},pe(oe(O.value.maxX))+" "+pe(J.value),5)],4)],64)):pt("",!0),(Ee(!0),Pe(Mt,null,Yr(Q(e).guides,M=>(Ee(),Pe(Mt,{key:M.id},[M.type==="horizontal"?(Ee(),Pe("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:wt({top:`${P.value+M.position*Q(e).zoom}px`}),onMousedown:Ci($=>{Q(e).selectGuide(M.id),re($,"horizontal",M.id)},["stop"])},[F("div",{class:Ct(["w-full",Q(e).highlightedGuideId===M.id?"border-t-2 theme-border-strong":"border-t theme-border","theme-border-hover"])},null,2),F("div",_de,pe(oe(M.position))+pe(J.value),1)],44,Jde)):(Ee(),Pe("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:wt({left:`${K.value+M.position*Q(e).zoom}px`}),onMousedown:Ci($=>{Q(e).selectGuide(M.id),re($,"vertical",M.id)},["stop"])},[F("div",{class:Ct(["h-full",Q(e).highlightedGuideId===M.id?"border-l-2 theme-border-strong":"border-l theme-border","theme-border-hover"])},null,2),F("div",ehe,pe(oe(M.position))+pe(J.value),1)],44,$de))],64))),128)),Y.value&&!D.value?(Ee(),Pe("div",{key:1,class:Ct(["absolute border-dashed pointer-events-none theme-border",Z.value==="horizontal"?"left-0 w-full border-t":"top-0 h-full border-l"]),style:wt({top:Z.value==="horizontal"?`${P.value+G.value*Q(e).zoom}px`:void 0,left:Z.value==="vertical"?`${K.value+G.value*Q(e).zoom}px`:void 0})},[F("div",{class:Ct(["absolute theme-bg text-white text-[10px] px-1 rounded",Z.value==="horizontal"?"left-2 -top-4":"top-2 -left-4"])},pe(oe(G.value))+pe(J.value),3)],6)):pt("",!0),Q(e).highlightedEdge?(Ee(),Pe("div",the,[Q(e).highlightedEdge==="top"?(Ee(),Pe("div",{key:0,class:"absolute left-0 w-full border-t theme-border",style:wt({top:`${P.value}px`})},null,4)):Q(e).highlightedEdge==="bottom"?(Ee(),Pe("div",{key:1,class:"absolute left-0 w-full border-t theme-border",style:wt({top:`${P.value+Q(e).canvasSize.height*Q(e).zoom}px`})},null,4)):Q(e).highlightedEdge==="left"?(Ee(),Pe("div",{key:2,class:"absolute top-0 h-full border-l theme-border",style:wt({left:`${K.value}px`})},null,4)):Q(e).highlightedEdge==="right"?(Ee(),Pe("div",{key:3,class:"absolute top-0 h-full border-l theme-border",style:wt({left:`${K.value+Q(e).canvasSize.width*Q(e).zoom}px`})},null,4)):pt("",!0)])):pt("",!0)],4)],544)])]),Q(e).showMinimap?(Ee(),Pe("div",rhe,[et(Dde,{"scroll-width":k.value,"scroll-height":B.value,"viewport-width":q.value,"viewport-height":te.value,"scroll-left":L.value,"scroll-top":R.value,pages:Q(e).pages,"page-width":Q(e).canvasSize.width,"page-height":Q(e).canvasSize.height,zoom:Q(e).zoom,"content-offset-x":K.value,"content-offset-y":P.value,"canvas-background":Q(e).canvasBackground,"show-header-line":Q(e).showHeaderLine,"show-footer-line":Q(e).showFooterLine,"header-height":Q(e).headerHeight,"footer-height":Q(e).footerHeight,watermark:Q(e).watermark||null,"onUpdate:scroll":ke},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"])])):pt("",!0)]),et(fde)]),et(zg,{show:d.value,"initial-value":m.value,title:Q(o)("sidebar.saveAsCustomElement"),placeholder:Q(o)("sidebar.enterNamePlaceholder"),onClose:W[4]||(W[4]=M=>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)}}}),ihe=()=>{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{}};class TN 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=MI,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=dT();td(r);const n=eT(nhe);this.themeApi=du(),ihe(),n.use(r);const i=this.getAttribute("lang"),o=UI(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)),n.mount(this.mountEl),this.printApi=vx(),this.printSettings=Eg(),this.designerStore=un(r),this.templateStore=dg(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)}getVariables(){return this.designerStore?Rt(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:Rt(this.designerStore.pages),canvasSize:Rt(this.designerStore.canvasSize),guides:Rt(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:Rt(this.designerStore.watermark),testData:Rt(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))}setCrudMode(r){var n,i;wX(r),r==="remote"&&((n=this.templateStore)==null||n.loadTemplates(),(i=this.designerStore)==null||i.loadCustomElements())}setCrudEndpoints(r,n={}){bX({endpoints:{...r,baseUrl:n.baseUrl},headers:n.headers})}getTemplates(r={}){return this.templateStore?r.includeData?Rt(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?Rt(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||Oi(),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?Rt(this.designerStore.customElements):this.designerStore.customElements.map(n=>({id:n.id,name:n.name})):[]}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||Oi(),A=this.designerStore.customElements.findIndex(c=>c.id===s),l={id:s,name:r.name,element:Rt(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:Rt(n.element)})),this.designerStore.saveCustomElements())}deleteCustomElement(r){this.designerStore&&this.designerStore.removeCustomElement(r)}}const IN="print-designer";customElements.get(IN)||customElements.define(IN,TN);/*!
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
@@ -21340,7 +21340,7 @@ function TA(t) {
21340
21340
  */
21341
21341
  (function(t) {
21342
21342
  function e() {
21343
- return (Yt.canvg ? Promise.resolve(Yt.canvg) : import("./index.es-Gb4YncdS.js")).catch((function(r) {
21343
+ return (Yt.canvg ? Promise.resolve(Yt.canvg) : import("./index.es-DNXzKInd.js")).catch((function(r) {
21344
21344
  return Promise.reject(new Error("Could not load canvg: " + r));
21345
21345
  })).then((function(r) {
21346
21346
  return r.default ? r.default : r;
@@ -42710,7 +42710,7 @@ function DQ(t, e) {
42710
42710
  }, null, -1)
42711
42711
  ])]);
42712
42712
  }
42713
- const zQ = kt({ name: "material-symbols-info", render: DQ }), RQ = "vue-print-designer", jQ = "0.9.87", FQ = { "@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" }, d2 = {
42713
+ const zQ = kt({ name: "material-symbols-info", render: DQ }), RQ = "vue-print-designer", jQ = "0.9.88", FQ = { "@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" }, d2 = {
42714
42714
  name: RQ,
42715
42715
  version: jQ,
42716
42716
  dependencies: FQ
@@ -46216,12 +46216,15 @@ class kne extends HTMLElement {
46216
46216
  return this.templateStore.saveToLocalStorage(), c.id;
46217
46217
  }
46218
46218
  setTemplates(r, n = {}) {
46219
- this.templateStore && Array.isArray(r) && (this.templateStore.templates = r.filter((i) => i && typeof i.id == "string" && typeof i.name == "string").map((i) => ({
46220
- id: i.id,
46221
- name: i.name,
46222
- data: i.data || {},
46223
- updatedAt: i.updatedAt || Date.now()
46224
- })), n.currentTemplateId && (this.templateStore.currentTemplateId = n.currentTemplateId), this.templateStore.saveToLocalStorage());
46219
+ if (!this.templateStore || !Array.isArray(r)) return;
46220
+ this.templateStore.templates = r.filter((o) => o && typeof o.id == "string" && typeof o.name == "string").map((o) => ({
46221
+ id: o.id,
46222
+ name: o.name,
46223
+ data: o.data || {},
46224
+ updatedAt: o.updatedAt || Date.now()
46225
+ }));
46226
+ let i = n.currentTemplateId || this.templateStore.currentTemplateId;
46227
+ 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();
46225
46228
  }
46226
46229
  deleteTemplate(r) {
46227
46230
  this.templateStore && this.templateStore.deleteTemplate(r);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vue-print-designer",
3
3
  "private": false,
4
- "version": "0.9.87",
4
+ "version": "0.9.88",
5
5
  "license": "AGPL-3.0-only",
6
6
  "type": "module",
7
7
  "main": "dist/print-designer.umd.js",