@aitronos/freddy-plugins 0.4.16 โ 0.4.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/dist/index.cjs +154 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +943 -47
- package/dist/index.js +61202 -3513
- package/dist/index.js.map +1 -1
- package/dist/web-components.iife.js +1 -1
- package/dist/web-components.iife.js.map +1 -1
- package/dist/web-components.js +87 -36
- package/dist/web-components.js.map +1 -1
- package/package.json +2 -1
|
@@ -150,7 +150,7 @@ Use type guards to ensure runtime type safety.
|
|
|
150
150
|
- [Composition API RFC](https://github.com/vuejs/rfcs/blob/master/active-rfcs/0013-composition-api.md)
|
|
151
151
|
- [TypeScript Handbook](https://www.typescriptlang.org/docs/)
|
|
152
152
|
|
|
153
|
-
This should give you a solid foundation for building **maintainable**, **type-safe** Vue 3 applications!`,sender:"assistant",timestamp:new Date(Date.now()-6e4),type:"text"}]);const w=t.ref([]),O=t.computed(()=>w.value.length>0?w.value:n.messages&&n.messages.length>0?n.messages:[]),V=async D=>{if(D.trim()){const I={id:Date.now().toString(),content:D,sender:"user",timestamp:new Date,type:"text"};w.value.push(I),o("send",D),a.value="",i.value&&Nt(i.value),await v(D)}},q=async(D,I)=>{if(D.trim()){const M=I.map($=>$.name),L={id:Date.now().toString(),content:D,sender:"user",timestamp:new Date,type:"text",context:M};w.value.push(L),o("sendWithContext",D,M),a.value="",i.value&&Nt(i.value),await v(D)}};return(D,I)=>(t.openBlock(),t.createElementBlock("div",pT,[b.value?(t.openBlock(),t.createElementBlock("div",mT,[I[13]||(I[13]=t.createElementVNode("div",{class:"chat-interface__debug-header"},"๐ Debug Info",-1)),t.createElementVNode("div",gT,[t.createElementVNode("div",null,[I[1]||(I[1]=t.createElementVNode("strong",null,"Internal Messages:",-1)),t.createTextVNode(" "+t.toDisplayString(w.value.length),1)]),t.createElementVNode("div",null,[I[2]||(I[2]=t.createElementVNode("strong",null,"Display Messages:",-1)),t.createTextVNode(" "+t.toDisplayString(O.value.length),1)]),t.createElementVNode("div",null,[I[3]||(I[3]=t.createElementVNode("strong",null,"Last Event:",-1)),t.createTextVNode(" "+t.toDisplayString(f.value),1)]),t.createElementVNode("div",null,[I[4]||(I[4]=t.createElementVNode("strong",null,"Streaming:",-1)),t.createTextVNode(" "+t.toDisplayString(C.value?"Yes":"No"),1)]),t.createElementVNode("div",null,[I[5]||(I[5]=t.createElementVNode("strong",null,"Thread ID:",-1)),t.createTextVNode(" "+t.toDisplayString(p.value||"None"),1)]),t.createElementVNode("div",fT,[t.createElementVNode("div",null,[I[6]||(I[6]=t.createElementVNode("strong",null,"๐ค Request Sent:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.requestSent?`+${E.value.requestSent-E.value.requestSent}ms`:"Not sent"),1)]),t.createElementVNode("div",null,[I[7]||(I[7]=t.createElementVNode("strong",null,"๐ฅ API Response:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.apiResponseReceived?`+${E.value.apiResponseReceived-E.value.requestSent}ms`:"Waiting..."),1)]),t.createElementVNode("div",null,[I[8]||(I[8]=t.createElementVNode("strong",null,"๐ First Stream Object:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.firstStreamObject?`+${E.value.firstStreamObject-E.value.requestSent}ms`:"Waiting..."),1)]),t.createElementVNode("div",null,[I[9]||(I[9]=t.createElementVNode("strong",null,"๐ฌ Our Stream Start:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.ourStreamStart?`+${E.value.ourStreamStart-E.value.requestSent}ms`:"Waiting..."),1)]),t.createElementVNode("div",null,[I[10]||(I[10]=t.createElementVNode("strong",null,"๐ API Stream End:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.apiStreamEnd?`+${E.value.apiStreamEnd-E.value.requestSent}ms`:"Waiting..."),1)]),t.createElementVNode("div",null,[I[11]||(I[11]=t.createElementVNode("strong",null,"โ
Our Stream End:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.ourStreamEnd?`+${E.value.ourStreamEnd-E.value.requestSent}ms`:"Waiting..."),1)]),E.value.ourStreamEnd&&E.value.requestSent?(t.openBlock(),t.createElementBlock("div",ET,[I[12]||(I[12]=t.createElementVNode("strong",null,"๐ Total Time:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.ourStreamEnd-E.value.requestSent)+"ms",1)])):t.createCommentVNode("",!0)]),w.value.length>0?(t.openBlock(),t.createElementBlock("div",bT,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(w.value,(M,L)=>(t.openBlock(),t.createElementBlock("div",{key:M.id,class:"chat-interface__debug-message"},[t.createElementVNode("strong",null,t.toDisplayString(L)+":",1),t.createTextVNode(" "+t.toDisplayString(M.sender)+' - "'+t.toDisplayString(typeof M.content=="string"?M.content.substring(0,50):"Complex content")+'..." ',1)]))),128))])):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0),p.value?(t.openBlock(),t.createElementBlock("div",ST,[I[14]||(I[14]=t.createElementVNode("span",{class:"chat-interface__thread-icon"},"๐งต",-1)),t.createElementVNode("span",hT,"Using thread context (ID: "+t.toDisplayString(p.value)+")",1)])):t.createCommentVNode("",!0),t.createElementVNode("div",{ref_key:"messagesContainer",ref:i,class:"chat-interface__messages"},[_.value||m.value?(t.openBlock(),t.createElementBlock("div",CT,[...I[15]||(I[15]=[t.createElementVNode("div",{class:"chat-interface__loading-spinner"},null,-1),t.createElementVNode("span",{class:"chat-interface__loading-text"},"Loading assistants and models...",-1)])])):O.value.length===0?(t.openBlock(),t.createElementBlock("div",yT,[...I[16]||(I[16]=[t.createElementVNode("div",{class:"chat-interface__welcome-icon"},"๐ฌ",-1),t.createElementVNode("h3",{class:"chat-interface__welcome-title"},"Start a conversation",-1),t.createElementVNode("p",{class:"chat-interface__welcome-text"},"Type a message below to begin chatting with your AI assistant.",-1)])])):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:2},t.renderList(O.value,M=>(t.openBlock(),t.createElementBlock("div",{key:M.id,class:"chat-interface__message-container"},[t.createVNode(Yr,{content:M.sender==="assistant"?N(M.content):M.content,variant:M.sender,timestamp:M.timestamp,type:M.type,context:M.context,size:n.size,markdown:!1},null,8,["content","variant","timestamp","type","context","size"])]))),128))],512),t.createElementVNode("div",TT,[t.createVNode(Ns,{ref_key:"chatInputRef",ref:l,modelValue:a.value,"onUpdate:modelValue":I[0]||(I[0]=M=>a.value=M),placeholder:D.placeholder,size:n.size,assistants:d.value,models:u.value,onSend:V,onSendWithContext:q},null,8,["modelValue","placeholder","size","assistants","models"])])]))}}),[["styles",[".chat-interface{display:flex;flex-direction:column;height:100%;width:100%;background:var(--freddy-bg-primary);border-radius:12px;box-shadow:0 4px 6px -1px var(--border-light);overflow:visible;position:relative}.chat-interface__debug-panel{background:#1f2937;color:#f9fafb;border-bottom:2px solid #374151;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:11px;max-height:200px;overflow-y:auto}.chat-interface__debug-header{background:#111827;padding:8px 12px;font-weight:700;border-bottom:1px solid #374151}.chat-interface__debug-content{padding:8px 12px;line-height:1.4}.chat-interface__debug-content>div{margin-bottom:4px}.chat-interface__debug-messages{margin-top:8px;padding-top:8px;border-top:1px solid #374151;max-height:100px;overflow-y:auto}.chat-interface__debug-message{font-size:10px;margin-bottom:2px;color:#d1d5db}.chat-interface__debug-timing{margin-top:8px;padding-top:8px;border-top:1px solid #374151;font-size:10px;line-height:1.3}.chat-interface__debug-timing>div{margin-bottom:2px}.chat-interface__thread-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#f0f9ff;border-bottom:1px solid #bae6fd;font-size:12px;color:#0369a1}.chat-interface__thread-icon{font-size:14px}.chat-interface__thread-text{font-weight:500}.chat-interface__loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:24px;color:#6b7280;font-size:14px}.chat-interface__loading-spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:freddy-plugin-spin 1s linear infinite}.chat-interface__loading-text{font-weight:500}@keyframes freddy-plugin-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.chat-interface__welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center;color:#6b7280}.chat-interface__welcome-icon{font-size:48px;margin-bottom:16px}.chat-interface__welcome-title{font-size:20px;font-weight:600;color:#374151;margin:0 0 8px}.chat-interface__welcome-text{font-size:14px;margin:0;line-height:1.5}.chat-interface__messages{flex:1;overflow-y:auto;overflow-x:visible;padding:32px;min-height:400px;max-height:600px}@media (max-width: 768px){.chat-interface__messages{padding:20px 8px}}.chat-interface__message-container{margin-bottom:20px}.chat-interface__message-container:last-child{margin-bottom:0}.chat-interface__input-bar{padding:0 24px 12px;background:transparent!important;overflow:visible}"]]]),RT={class:"freddy-plugin-color-comparison"},xT={key:0,class:"freddy-plugin-loading"},vT={key:1,class:"freddy-plugin-error"},OT={key:2,class:"color-comparison__content"},IT={class:"color-comparison__selection-controls"},DT={class:"freddy-plugin-control-group"},wT=["value"],kT={class:"freddy-plugin-control-group"},MT=["disabled"],LT=["value"],PT={class:"freddy-plugin-control-group"},BT=["value"],FT={class:"freddy-plugin-control-group"},UT=["disabled"],GT=["value"],VT={class:"color-comparison__section-filter"},YT=["value"],zT={key:0,class:"color-comparison__grid"},HT={class:"color-comparison__header-row"},qT={class:"color-comparison__brand1-header"},WT={class:"color-comparison__brand2-header"},KT={class:"color-comparison__color-name"},QT={class:"color-comparison__color-display color-comparison__brand1"},$T=["title"],ZT={class:"color-comparison__color-value"},XT={class:"color-comparison__color-display color-comparison__brand2"},jT=["title"],JT={class:"color-comparison__color-value"},eA={class:"color-comparison__difference-indicator"},tA={key:1,class:"color-comparison__no-comparison"},rA={key:1,class:"color-comparison__no-comparison-message"},nA={key:2,class:"color-comparison__selection-prompt"},s_=x(t.defineComponent({__name:"ColorComparison",setup(r){const{currentProject:e,currentColorMode:n}=pe(),o=t.ref(null),a=t.ref(!0),i=t.ref(null),l=t.ref(""),s=t.ref(""),c=t.ref(""),d=t.ref(""),u=t.ref(""),_=t.ref([]),m=t.computed(()=>{var T;if(!((T=o.value)!=null&&T.projects))return[];const v=new Set;return o.value.projects.forEach(N=>{var w;(w=N.colorModes)==null||w.forEach(O=>{var V;(V=O.colorConfig)!=null&&V.sections&&Object.keys(O.colorConfig.sections).forEach(q=>{v.add(q)})})}),Array.from(v).sort()}),g=v=>{var N;if(!((N=o.value)!=null&&N.projects))return[];const T=o.value.projects.find(w=>w.id===v);return(T==null?void 0:T.colorModes)||[]},p=v=>{var N;if(!((N=o.value)!=null&&N.projects))return"";const T=o.value.projects.find(w=>w.id===v);return(T==null?void 0:T.name)||""},b=v=>{if(!l.value&&!s.value)return"";const N=[...g(l.value),...g(s.value)].find(w=>w.id===v);return(N==null?void 0:N.name)||""},f=v=>v.replace(/([A-Z])/g," $1").replace(/^./,T=>T.toUpperCase()).trim(),C=(v,T,N)=>{var V,q,D,I,M;if(!((V=o.value)!=null&&V.projects))return"";const w=o.value.projects.find(L=>L.id===v);if(!w)return"";const O=(q=w.colorModes)==null?void 0:q.find(L=>L.id===T);if(!((D=O==null?void 0:O.colorConfig)!=null&&D.sections))return"";if(u.value){const L=O.colorConfig.sections[u.value];return(I=L==null?void 0:L.colors)!=null&&I[N]?L.colors[N].value:""}for(const L of Object.values(O.colorConfig.sections))if((M=L.colors)!=null&&M[N])return L.colors[N].value;return""},E=()=>{var T;if(!((T=o.value)!=null&&T.projects))return[];const v=new Set;return o.value.projects.forEach(N=>{var w;(w=N.colorModes)==null||w.forEach(O=>{var V;(V=O.colorConfig)!=null&&V.sections&&Object.values(O.colorConfig.sections).forEach(q=>{q.colors&&Object.keys(q.colors).forEach(D=>{v.add(D)})})})}),Array.from(v).sort()},S=()=>{if(!l.value||!s.value||!c.value||!d.value){_.value=[];return}const v=E(),T=[];v.forEach(N=>{const w=C(l.value,c.value,N),O=C(s.value,d.value,N);(w||O)&&T.push({colorName:N,color1:w,color2:O})}),_.value=T},y=(v,T)=>!v||!T?"":v.toLowerCase()===T.toLowerCase()?"same":"different",R=(v,T)=>!v||!T?"":v.toLowerCase()===T.toLowerCase()?"Same":"Different",A=async()=>{try{a.value=!0,i.value=null;const v=await fetch("/src/dist/clean-configuration.json");if(!v.ok)throw new Error(`Failed to load configuration: ${v.statusText}`);const T=await v.json();o.value=T}catch(v){i.value=v instanceof Error?v.message:"Unknown error occurred"}finally{a.value=!1}};return t.onMounted(()=>{A()}),(v,T)=>{var N,w;return t.openBlock(),t.createElementBlock("div",RT,[a.value?(t.openBlock(),t.createElementBlock("div",xT,[...T[5]||(T[5]=[t.createElementVNode("div",{class:"freddy-plugin-spinner"},null,-1),t.createElementVNode("p",null,"Loading configuration data...",-1)])])):i.value?(t.openBlock(),t.createElementBlock("div",vT,[T[6]||(T[6]=t.createElementVNode("h3",null,"Error loading configuration",-1)),t.createElementVNode("p",null,t.toDisplayString(i.value),1)])):(t.openBlock(),t.createElementBlock("div",OT,[t.createElementVNode("div",IT,[t.createElementVNode("div",DT,[T[8]||(T[8]=t.createElementVNode("label",null,"Brand 1:",-1)),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":T[0]||(T[0]=O=>l.value=O),onChange:S},[T[7]||(T[7]=t.createElementVNode("option",{value:""},"Select Brand",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList((N=o.value)==null?void 0:N.projects,O=>(t.openBlock(),t.createElementBlock("option",{key:O.id,value:O.id},t.toDisplayString(O.name),9,wT))),128))],544),[[t.vModelSelect,l.value]])]),t.createElementVNode("div",kT,[T[10]||(T[10]=t.createElementVNode("label",null,"Mode 1:",-1)),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":T[1]||(T[1]=O=>c.value=O),onChange:S,disabled:!l.value},[T[9]||(T[9]=t.createElementVNode("option",{value:""},"Select Mode",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g(l.value),O=>(t.openBlock(),t.createElementBlock("option",{key:O.id,value:O.id},t.toDisplayString(O.name),9,LT))),128))],40,MT),[[t.vModelSelect,c.value]])]),T[15]||(T[15]=t.createElementVNode("div",{class:"color-comparison__vs-divider"},"VS",-1)),t.createElementVNode("div",PT,[T[12]||(T[12]=t.createElementVNode("label",null,"Brand 2:",-1)),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":T[2]||(T[2]=O=>s.value=O),onChange:S},[T[11]||(T[11]=t.createElementVNode("option",{value:""},"Select Brand",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList((w=o.value)==null?void 0:w.projects,O=>(t.openBlock(),t.createElementBlock("option",{key:O.id,value:O.id},t.toDisplayString(O.name),9,BT))),128))],544),[[t.vModelSelect,s.value]])]),t.createElementVNode("div",FT,[T[14]||(T[14]=t.createElementVNode("label",null,"Mode 2:",-1)),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":T[3]||(T[3]=O=>d.value=O),onChange:S,disabled:!s.value},[T[13]||(T[13]=t.createElementVNode("option",{value:""},"Select Mode",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g(s.value),O=>(t.openBlock(),t.createElementBlock("option",{key:O.id,value:O.id},t.toDisplayString(O.name),9,GT))),128))],40,UT),[[t.vModelSelect,d.value]])])]),t.createElementVNode("div",VT,[T[17]||(T[17]=t.createElementVNode("label",null,"Filter by Color Section:",-1)),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":T[4]||(T[4]=O=>u.value=O),onChange:S},[T[16]||(T[16]=t.createElementVNode("option",{value:""},"All Sections",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m.value,O=>(t.openBlock(),t.createElementBlock("option",{key:O,value:O},t.toDisplayString(f(O)),9,YT))),128))],544),[[t.vModelSelect,u.value]])]),_.value.length>0?(t.openBlock(),t.createElementBlock("div",zT,[t.createElementVNode("div",HT,[T[18]||(T[18]=t.createElementVNode("div",{class:"color-comparison__color-name-header"},"Color Name",-1)),t.createElementVNode("div",qT,t.toDisplayString(p(l.value))+" - "+t.toDisplayString(b(c.value)),1),t.createElementVNode("div",WT,t.toDisplayString(p(s.value))+" - "+t.toDisplayString(b(d.value)),1),T[19]||(T[19]=t.createElementVNode("div",{class:"color-comparison__difference-header"},"Difference",-1))]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(_.value,O=>(t.openBlock(),t.createElementBlock("div",{key:O.colorName,class:"color-comparison__row"},[t.createElementVNode("div",KT,t.toDisplayString(O.colorName),1),t.createElementVNode("div",QT,[t.createElementVNode("div",{class:"color-comparison__color-swatch",style:t.normalizeStyle({backgroundColor:O.color1}),title:`${O.colorName}: ${O.color1}`},null,12,$T),t.createElementVNode("div",ZT,t.toDisplayString(O.color1),1)]),t.createElementVNode("div",XT,[t.createElementVNode("div",{class:"color-comparison__color-swatch",style:t.normalizeStyle({backgroundColor:O.color2}),title:`${O.colorName}: ${O.color2}`},null,12,jT),t.createElementVNode("div",JT,t.toDisplayString(O.color2),1)]),t.createElementVNode("div",eA,[O.color1&&O.color2?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["color-comparison__difference-badge",y(O.color1,O.color2)])},t.toDisplayString(R(O.color1,O.color2)),3)):(t.openBlock(),t.createElementBlock("div",tA,"-"))])]))),128))])):l.value&&s.value?(t.openBlock(),t.createElementBlock("div",rA,[...T[20]||(T[20]=[t.createElementVNode("p",null,"No matching colors found for comparison.",-1),t.createElementVNode("p",null,"Try selecting different brands, modes, or color sections.",-1)])])):(t.openBlock(),t.createElementBlock("div",nA,[...T[21]||(T[21]=[t.createElementVNode("div",{class:"color-comparison__prompt-icon"},"๐จ",-1),t.createElementVNode("h3",null,"Select Brands and Modes",-1),t.createElementVNode("p",null," Choose two different brands and their color modes to start comparing colors. ",-1)])]))]))])}}}),[["styles",[".freddy-plugin-color-comparison{padding:2rem;max-width:1400px;margin:0 auto}.freddy-plugin-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.freddy-plugin-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:freddy-plugin-spin 1s linear infinite;margin-bottom:16px}@keyframes freddy-plugin-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.freddy-plugin-error{background:#fee;border:2px solid #fcc;border-radius:8px;padding:20px;text-align:center}.error h3{color:#c33;margin-bottom:8px}.color-comparison__selection-controls{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding:1.5rem;background:var(--freddy-bg-secondary);border-radius:12px;flex-wrap:wrap}.freddy-plugin-control-group{display:flex;flex-direction:column;gap:.5rem;min-width:200px}.freddy-plugin-control-group label{font-weight:600;color:var(--freddy-text-primary);font-size:.9rem}.freddy-plugin-control-group select{padding:.75rem;border:2px solid var(--freddy-border-color);border-radius:6px;background:var(--freddy-bg-primary);color:var(--freddy-text-primary);font-size:.9rem}.freddy-plugin-control-group select:disabled{opacity:.6;cursor:not-allowed}.color-comparison__vs-divider{font-weight:700;font-size:1.2rem;color:var(--freddy-text-secondary);padding:0 1rem}.color-comparison__section-filter{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding:1rem;background:var(--freddy-bg-secondary);border-radius:8px}.color-comparison__section-filter label{font-weight:600;color:var(--freddy-text-primary)}.color-comparison__section-filter select{padding:.5rem;border:2px solid var(--freddy-border-color);border-radius:4px;background:var(--freddy-bg-primary);color:var(--freddy-text-primary);min-width:200px}.color-comparison__grid{background:var(--freddy-bg-primary);border:2px solid var(--freddy-border-color);border-radius:12px;overflow:hidden}.color-comparison__header-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:1rem;padding:1rem;background:var(--freddy-bg-secondary);font-weight:600;color:var(--freddy-text-primary);border-bottom:1px solid var(--freddy-border-color)}.color-comparison__row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:1rem;padding:1rem;border-bottom:1px solid var(--freddy-border-color);align-items:center}.color-comparison__row:last-child{border-bottom:none}.color-comparison__color-name{font-weight:600;color:var(--freddy-text-primary)}.color-comparison__color-display{display:flex;flex-direction:column;align-items:center;gap:.5rem}.color-comparison__color-swatch{width:60px;height:40px;border-radius:6px;border:2px solid var(--freddy-border-color);cursor:pointer;transition:transform .2s ease}.color-comparison__color-swatch:hover{transform:scale(1.05)}.color-comparison__color-value{font-size:.8rem;color:var(--freddy-text-secondary);text-align:center;word-break:break-all}.color-comparison__difference-indicator{display:flex;justify-content:center}.color-comparison__difference-badge{padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600}.color-comparison__difference-badge.same{background:#d1fae5;color:#065f46}.color-comparison__difference-badge.different{background:#fef3c7;color:#92400e}.color-comparison__no-comparison{color:var(--freddy-text-secondary);font-style:italic}.color-comparison__no-comparison-message{text-align:center;padding:3rem;color:var(--freddy-text-secondary)}.color-comparison__selection-prompt{text-align:center;padding:4rem 2rem;color:var(--freddy-text-secondary)}.color-comparison__prompt-icon{font-size:4rem;margin-bottom:1rem}.color-comparison__selection-prompt h3{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--freddy-text-primary)}@media (max-width: 768px){.freddy-plugin-color-comparison{padding:1rem}.color-comparison__selection-controls{flex-direction:column;align-items:stretch}.color-comparison__vs-divider{text-align:center;padding:.5rem 0}.color-comparison__header-row,.color-comparison__row{grid-template-columns:1fr;gap:.5rem}.color-comparison__header-row{display:none}.color-comparison__row{border:2px solid var(--freddy-border-color);border-radius:8px;margin-bottom:1rem}.color-comparison__color-name{font-weight:700;text-align:center;padding-bottom:.5rem;border-bottom:1px solid var(--freddy-border-color)}}"]]]),oA={class:"freddy-plugin-color-validation"},aA={class:"freddy-plugin-header"},iA={class:"freddy-plugin-summary"},sA={class:"freddy-plugin-meta"},lA={key:0,class:"freddy-plugin-empty"},cA={key:1,class:"freddy-plugin-categories"},dA={class:"freddy-plugin-category freddy-plugin-compatibility-tests"},uA={class:"freddy-plugin-caret"},_A={class:"freddy-plugin-items"},pA={class:"freddy-plugin-test-header"},mA={class:"freddy-plugin-test-name"},gA={class:"freddy-plugin-test-contrast"},fA={class:"freddy-plugin-test-status"},EA={class:"freddy-plugin-test-details"},bA={class:"freddy-plugin-color-info"},SA={class:"freddy-plugin-color-value"},hA={class:"freddy-plugin-color-info"},CA={class:"freddy-plugin-color-value"},yA=["onClick"],TA={class:"freddy-plugin-caret"},AA={class:"freddy-plugin-title"},NA={class:"freddy-plugin-items"},RA={class:"freddy-plugin-swatches"},xA={class:"freddy-plugin-info"},vA={class:"freddy-plugin-name"},OA={class:"freddy-plugin-var"},IA={class:"freddy-plugin-values"},DA={class:"freddy-plugin-expected"},wA={class:"freddy-plugin-actual"},kA={class:"freddy-plugin-status"},l_=x(t.defineComponent({__name:"ColorValidation",setup(r){const{currentProject:e,currentColorMode:n}=pe(),o=t.reactive({compatibility:!0,text:!0,background:!0,border:!0,foreground:!1,utility:!1}),a=E=>!!o[E],i=E=>o[E]=!o[E],l=E=>E.toLowerCase().replace(/\s+/g,"-").replace(/[^a-z0-9-]/g,"").replace(/-+/g,"-").replace(/^-|-$/g,""),s=(E,S)=>`--${E}-${l(S)}`;function c(E){return getComputedStyle(document.documentElement).getPropertyValue(E).trim()}function d(E){const S=E.match(/#([0-9a-f]{3}|[0-9a-f]{6})/i);return S?`#${S[1].toLowerCase()}`:E.toLowerCase()}const u=t.computed(()=>{var R,A,v,T,N;const E=n.value;if(!E)return[];const S=[],y=(w,O,V,q)=>{const D=V.map(M=>{const L=s(q,M.name),$=d(M.value),le=d(c(L));return{name:M.name,varName:L,expected:$,actual:le,pass:$===le}}),I=D.filter(M=>M.pass).length;S.push({key:w,title:O,items:D,passed:I,total:D.length})};return y("text","Text Colors",[...((R=E.textColors)==null?void 0:R.colors)||[]],"text"),y("background","Background Colors",[...((A=E.backgroundColor)==null?void 0:A.colors)||[]],"bg"),y("border","Border Colors",[...((v=E.borderColor)==null?void 0:v.colors)||[]],"border"),y("foreground","Foreground Colors",[...((T=E.foregroundColors)==null?void 0:T.colors)||[]],"fg"),y("utility","Utility Colors",[...((N=E.utilityColors)==null?void 0:N.colors)||[]],"utility"),S}),_=t.computed(()=>{const E=u.value.flatMap(S=>S.items);return{total:E.length,passed:E.filter(S=>S.pass).length}});function m(E){const S=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(E);return S?{r:parseInt(S[1],16),g:parseInt(S[2],16),b:parseInt(S[3],16)}:null}function g(E,S,y){const[R,A,v]=[E,S,y].map(T=>(T=T/255,T<=.03928?T/12.92:Math.pow((T+.055)/1.055,2.4)));return .2126*R+.7152*A+.0722*v}function p(E,S){const y=Math.max(E,S),R=Math.min(E,S);return(y+.05)/(R+.05)}function b(E,S){const y=m(E),R=m(S);if(!y||!R)return 0;const A=g(y.r,y.g,y.b),v=g(R.r,R.g,R.b);return p(A,v)}const f=t.computed(()=>{var T,N;const E=n.value;if(!E)return[];const S=[],y=((T=E.textColors)==null?void 0:T.colors)||[],R=((N=E.backgroundColor)==null?void 0:N.colors)||[];if(y.length===0||R.length===0)return[];const A=y.slice(0,8),v=R.slice(0,6);return A.forEach(w=>{v.forEach(O=>{if(w.value===O.value)return;const V=b(w.value,O.value),q=V>=4.5;S.push({id:`${w.name}-on-${O.name}`,name:`${w.name} on ${O.name}`,textColor:w.value,backgroundColor:O.value,contrastRatio:V,pass:q})})}),S}),C=t.computed(()=>{const E=f.value;return{total:E.length,passed:E.filter(S=>S.pass).length}});return t.watch(()=>{var E;return(E=n.value)==null?void 0:E.id},async()=>{await t.nextTick()}),(E,S)=>{var y,R;return t.openBlock(),t.createElementBlock("div",oA,[t.createElementVNode("div",aA,[S[3]||(S[3]=t.createElementVNode("h3",null,"๐งช Color Tests",-1)),S[4]||(S[4]=t.createElementVNode("p",null," Verifies that CSS variables applied to the document match the current configuration for the selected brand and mode. ",-1)),t.createElementVNode("div",iA,[t.createElementVNode("div",{class:t.normalizeClass(["freddy-plugin-badge",{"freddy-plugin-pass":_.value.passed===_.value.total,"freddy-plugin-fail":_.value.passed!==_.value.total}])},t.toDisplayString(_.value.passed)+" / "+t.toDisplayString(_.value.total)+" passed ",3),t.createElementVNode("div",sA,[S[1]||(S[1]=t.createTextVNode(" Brand: ",-1)),t.createElementVNode("strong",null,t.toDisplayString(((y=t.unref(e))==null?void 0:y.name)||"n/a"),1),S[2]||(S[2]=t.createTextVNode(" โข Mode: ",-1)),t.createElementVNode("strong",null,t.toDisplayString(((R=t.unref(n))==null?void 0:R.name)||"n/a"),1)])])]),t.unref(n)?(t.openBlock(),t.createElementBlock("div",cA,[t.createElementVNode("div",dA,[t.createElementVNode("div",{class:"freddy-plugin-category-header",onClick:S[0]||(S[0]=A=>i("compatibility"))},[t.createElementVNode("span",uA,t.toDisplayString(a("compatibility")?"โผ":"โถ"),1),S[5]||(S[5]=t.createElementVNode("span",{class:"freddy-plugin-title"},"๐จ Color Compatibility Tests",-1)),t.createElementVNode("span",{class:t.normalizeClass(["freddy-plugin-count",{"freddy-plugin-pass":C.value.passed===C.value.total,"freddy-plugin-fail":C.value.passed!==C.value.total}])},t.toDisplayString(C.value.passed)+" / "+t.toDisplayString(C.value.total),3)]),t.withDirectives(t.createElementVNode("div",_A,[S[7]||(S[7]=t.createElementVNode("div",{class:"freddy-plugin-compatibility-intro"},[t.createElementVNode("p",null," Tests text readability on different background colors. A combination passes if the contrast ratio meets WCAG AA standards (4.5:1 for normal text, 3:1 for large text). ")],-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,A=>(t.openBlock(),t.createElementBlock("div",{key:A.id,class:t.normalizeClass(["freddy-plugin-compatibility-test",{"freddy-plugin-pass":A.pass,"freddy-plugin-fail":!A.pass}])},[t.createElementVNode("div",pA,[t.createElementVNode("div",mA,t.toDisplayString(A.name),1),t.createElementVNode("div",gA," Contrast: "+t.toDisplayString(A.contrastRatio.toFixed(2))+":1 ",1),t.createElementVNode("div",fA,t.toDisplayString(A.pass?"PASS":"FAIL"),1)]),t.createElementVNode("div",{class:"freddy-plugin-test-preview",style:t.normalizeStyle({backgroundColor:A.backgroundColor,color:A.textColor})},[...S[6]||(S[6]=[t.createElementVNode("div",{class:"freddy-plugin-preview-text"},[t.createElementVNode("span",{class:"freddy-plugin-large-text"},"Large Text Sample (18pt+)"),t.createElementVNode("span",{class:"freddy-plugin-normal-text"},"Normal Text Sample (16pt)"),t.createElementVNode("span",{class:"freddy-plugin-small-text"},"Small Text Sample (14pt)")],-1)])],4),t.createElementVNode("div",EA,[t.createElementVNode("div",bA,[t.createElementVNode("div",{class:"freddy-plugin-color-swatch",style:t.normalizeStyle({backgroundColor:A.textColor}),title:"Text Color"},null,4),t.createElementVNode("span",SA,t.toDisplayString(A.textColor),1)]),t.createElementVNode("div",hA,[t.createElementVNode("div",{class:"freddy-plugin-color-swatch",style:t.normalizeStyle({backgroundColor:A.backgroundColor}),title:"Background Color"},null,4),t.createElementVNode("span",CA,t.toDisplayString(A.backgroundColor),1)])])],2))),128))],512),[[t.vShow,a("compatibility")]])]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u.value,A=>(t.openBlock(),t.createElementBlock("div",{key:A.key,class:"freddy-plugin-category"},[t.createElementVNode("div",{class:"freddy-plugin-category-header",onClick:v=>i(A.key)},[t.createElementVNode("span",TA,t.toDisplayString(a(A.key)?"โผ":"โถ"),1),t.createElementVNode("span",AA,t.toDisplayString(A.title),1),t.createElementVNode("span",{class:t.normalizeClass(["freddy-plugin-count",{"freddy-plugin-pass":A.passed===A.total,"freddy-plugin-fail":A.passed!==A.total}])},t.toDisplayString(A.passed)+" / "+t.toDisplayString(A.total),3)],8,yA),t.withDirectives(t.createElementVNode("div",NA,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(A.items,v=>(t.openBlock(),t.createElementBlock("div",{key:v.varName+v.name,class:t.normalizeClass(["freddy-plugin-item",{"freddy-plugin-pass":v.pass,"freddy-plugin-fail":!v.pass}])},[t.createElementVNode("div",RA,[t.createElementVNode("div",{class:"freddy-plugin-swatch freddy-plugin-expected",style:t.normalizeStyle({backgroundColor:v.expected}),title:"expected"},null,4),t.createElementVNode("div",{class:"freddy-plugin-swatch freddy-plugin-actual",style:t.normalizeStyle({backgroundColor:v.actual}),title:"actual"},null,4)]),t.createElementVNode("div",xA,[t.createElementVNode("div",vA,t.toDisplayString(v.name),1),t.createElementVNode("div",OA,t.toDisplayString(v.varName),1)]),t.createElementVNode("div",IA,[t.createElementVNode("div",DA,t.toDisplayString(v.expected),1),t.createElementVNode("div",wA,t.toDisplayString(v.actual),1)]),t.createElementVNode("div",kA,t.toDisplayString(v.pass?"PASS":"FAIL"),1)],2))),128))],512),[[t.vShow,a(A.key)]])]))),128))])):(t.openBlock(),t.createElementBlock("div",lA," No color mode selected. "))])}}}),[["styles",[".freddy-plugin-color-validation{background:var(--freddy-bg-primary);color:var(--freddy-text-primary);border:2px solid var(--freddy-border-color);border-radius:12px;padding:1rem}.freddy-plugin-header h3{margin:0 0 .25rem}.freddy-plugin-header p{margin:0 0 .5rem;color:var(--freddy-text-secondary)}.freddy-plugin-summary{display:flex;align-items:center;gap:.75rem}.freddy-plugin-badge{padding:.2rem .5rem;border-radius:8px;font-weight:600;font-size:.85rem}.freddy-plugin-badge.freddy-plugin-pass{background:var(--success-color, #22c55e);color:#fff}.freddy-plugin-badge.freddy-plugin-fail{background:var(--error-color, #ef4444);color:#fff}.freddy-plugin-meta{color:var(--freddy-text-secondary)}.freddy-plugin-empty{padding:1rem;color:var(--freddy-text-secondary)}.freddy-plugin-category{border:2px solid var(--freddy-border-color);border-radius:10px;margin-top:1rem;overflow:hidden}.freddy-plugin-category-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--freddy-bg-secondary);cursor:pointer}.freddy-plugin-category-header .freddy-plugin-title{font-weight:600}.freddy-plugin-category-header .freddy-plugin-count{margin-left:auto;font-weight:600}.freddy-plugin-category-header .freddy-plugin-count.freddy-plugin-pass{color:var(--success-color, #22c55e)}.freddy-plugin-category-header .freddy-plugin-count.freddy-plugin-fail{color:var(--error-color, #ef4444)}.freddy-plugin-items{border-top:1px solid var(--freddy-border-color)}.freddy-plugin-item{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:.75rem;padding:.5rem 1rem;border-top:1px solid var(--border-light)}.freddy-plugin-item:first-child{border-top:none}.freddy-plugin-item.freddy-plugin-pass{background:color-mix(in oklab,var(--success-color, #22c55e) 8%,transparent)}.freddy-plugin-item.freddy-plugin-fail{background:color-mix(in oklab,var(--error-color, #ef4444) 8%,transparent)}.freddy-plugin-swatches{display:flex;gap:.25rem}.freddy-plugin-swatch{width:28px;height:20px;border:2px solid var(--freddy-border-color);border-radius:4px}.freddy-plugin-info .freddy-plugin-name{font-weight:600}.freddy-plugin-info .freddy-plugin-var{font-family:Monaco,Menlo,monospace;font-size:.8rem;color:var(--freddy-text-secondary)}.freddy-plugin-values{text-align:right;font-family:Monaco,Menlo,monospace;font-size:.85rem}.freddy-plugin-status{width:60px;text-align:right;font-weight:700}.freddy-plugin-compatibility-intro{padding:1rem;background:var(--freddy-bg-secondary);border-bottom:1px solid var(--freddy-border-color)}.compatibility-intro p{margin:0;color:var(--freddy-text-secondary);font-size:.9rem}.freddy-plugin-compatibility-test{border-bottom:1px solid var(--border-light);padding:1rem}.freddy-plugin-compatibility-test:last-child{border-bottom:none}.compatibility-test.freddy-plugin-pass{background:color-mix(in oklab,var(--success-color, #22c55e) 4%,transparent)}.compatibility-test.freddy-plugin-fail{background:color-mix(in oklab,var(--error-color, #ef4444) 4%,transparent)}.freddy-plugin-test-header{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.freddy-plugin-test-name{font-weight:600;flex:1}.freddy-plugin-test-contrast{font-family:Monaco,Menlo,monospace;font-size:.85rem;color:var(--freddy-text-secondary)}.freddy-plugin-test-status{font-weight:700;font-size:.85rem;padding:.2rem .5rem;border-radius:4px;min-width:50px;text-align:center}.compatibility-test.pass .freddy-plugin-test-status{background:var(--success-color, #22c55e);color:#fff}.compatibility-test.fail .freddy-plugin-test-status{background:var(--error-color, #ef4444);color:#fff}.freddy-plugin-test-preview{padding:1rem;border-radius:8px;margin-bottom:.75rem;border:2px solid var(--freddy-border-color)}.freddy-plugin-preview-text{display:flex;flex-direction:column;gap:.5rem}.preview-text .freddy-plugin-large-text{font-size:1.25rem;font-weight:600}.preview-text .freddy-plugin-normal-text{font-size:1rem}.preview-text .freddy-plugin-small-text{font-size:.875rem}.freddy-plugin-test-details{display:flex;gap:1rem;align-items:center}.freddy-plugin-color-info{display:flex;align-items:center;gap:.5rem}.freddy-plugin-color-swatch{width:24px;height:24px;border-radius:4px;border:2px solid var(--freddy-border-color)}.freddy-plugin-color-value{font-family:Monaco,Menlo,monospace;font-size:.85rem;color:var(--freddy-text-secondary)}"]]]),MA={class:"color-dashboard"},LA={class:"stats-grid"},PA={class:"stat-card"},BA={class:"stat-number"},FA={class:"stat-card"},UA={class:"stat-number"},GA={class:"stat-card"},VA={class:"stat-number"},YA={class:"brands-container"},zA={class:"brand-header"},HA={class:"brand-title"},qA={class:"brand-info"},WA={class:"brand-stat"},KA={class:"brand-stat-value"},QA={class:"brand-stat"},$A={class:"brand-stat-value"},ZA={class:"modes-container"},XA={class:"mode-header"},jA={class:"mode-title"},JA={class:"mode-id"},e9={class:"color-categories"},t9={class:"category-section"},r9={class:"category-count"},n9={class:"category-content"},o9={class:"color-grid"},a9=["onClick"],i9={class:"color-info"},s9={class:"color-name"},l9={class:"color-value"},c9={class:"category-section"},d9={class:"category-count"},u9={class:"category-content"},_9={class:"color-grid"},p9=["onClick"],m9={class:"color-info"},g9={class:"color-name"},f9={class:"color-value"},E9={class:"category-section"},b9={class:"category-count"},S9={class:"category-content"},h9={class:"color-grid"},C9=["onClick"],y9={class:"color-info"},T9={class:"color-name"},A9={class:"color-value"},N9={key:0,class:"category-section"},R9={class:"category-count"},x9={class:"category-content"},v9={class:"color-grid"},O9=["onClick"],I9={class:"color-info"},D9={class:"color-name"},w9={class:"color-value"},k9={key:1,class:"category-section"},M9={class:"category-count"},L9={class:"category-content"},P9={class:"color-grid"},B9=["onClick"],F9={class:"color-info"},U9={class:"color-name"},G9={class:"color-value"},qi=x(t.defineComponent({__name:"ConfigurationDashboard",setup(r){const{configuration:e}=pe(),n=t.computed(()=>{var d;return((d=e.value)==null?void 0:d.projects)||[]}),o=t.computed(()=>n.value.length),a=t.computed(()=>n.value.reduce((d,u)=>d+u.colorModes.length,0)),i=t.computed(()=>n.value.reduce((d,u)=>d+l(u),0));function l(d){return d.colorModes.reduce((u,_)=>u+_.textColors.colors.length+_.backgroundColor.colors.length+_.borderColor.colors.length+_.foregroundColors.colors.length+_.utilityColors.colors.length,0)}function s(d){const u=d.target,_=u.querySelector(".category-toggle"),m=u.nextElementSibling;m.classList.contains("expanded")?(m.classList.remove("expanded"),_.classList.remove("expanded"),_.textContent="โถ"):(m.classList.add("expanded"),_.classList.add("expanded"),_.textContent="โผ")}function c(d){navigator.clipboard.writeText(d).then(()=>{})}return(d,u)=>(t.openBlock(),t.createElementBlock("div",MA,[u[20]||(u[20]=t.createElementVNode("div",{class:"dashboard-header"},[t.createElementVNode("h1",null,"๐จ Color Dashboard"),t.createElementVNode("p",null,"Comprehensive view of all colors from the theme configuration")],-1)),t.createElementVNode("div",LA,[t.createElementVNode("div",PA,[t.createElementVNode("div",BA,t.toDisplayString(o.value),1),u[0]||(u[0]=t.createElementVNode("div",{class:"stat-label"},"Brands",-1))]),t.createElementVNode("div",FA,[t.createElementVNode("div",UA,t.toDisplayString(a.value),1),u[1]||(u[1]=t.createElementVNode("div",{class:"stat-label"},"Color Modes",-1))]),t.createElementVNode("div",GA,[t.createElementVNode("div",VA,t.toDisplayString(i.value),1),u[2]||(u[2]=t.createElementVNode("div",{class:"stat-label"},"Total Colors",-1))])]),t.createElementVNode("div",YA,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.value,_=>(t.openBlock(),t.createElementBlock("div",{key:_.id,class:"brand-section"},[t.createElementVNode("div",zA,[t.createElementVNode("div",HA,t.toDisplayString(_.name),1),t.createElementVNode("div",qA,[t.createElementVNode("div",WA,[u[3]||(u[3]=t.createElementVNode("div",{class:"brand-stat-label"},"Color Modes",-1)),t.createElementVNode("div",KA,t.toDisplayString(_.colorModes.length),1)]),t.createElementVNode("div",QA,[u[4]||(u[4]=t.createElementVNode("div",{class:"brand-stat-label"},"Total Colors",-1)),t.createElementVNode("div",$A,t.toDisplayString(l(_)),1)])])]),t.createElementVNode("div",ZA,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(_.colorModes,m=>(t.openBlock(),t.createElementBlock("div",{key:m.id,class:"mode-card"},[t.createElementVNode("div",XA,[t.createElementVNode("div",jA,t.toDisplayString(m.name),1),t.createElementVNode("div",JA,t.toDisplayString(m.id),1)]),t.createElementVNode("div",e9,[t.createElementVNode("div",t9,[t.createElementVNode("div",{class:"category-title",onClick:s},[u[5]||(u[5]=t.createElementVNode("span",{class:"category-toggle"},"โถ",-1)),u[6]||(u[6]=t.createTextVNode(" ๐ Text Colors ",-1)),t.createElementVNode("span",r9,t.toDisplayString(m.textColors.colors.length),1)]),t.createElementVNode("div",n9,[t.createElementVNode("div",o9,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m.textColors.colors,g=>(t.openBlock(),t.createElementBlock("div",{key:g.id,class:"color-item"},[t.createElementVNode("div",{class:"color-preview",style:t.normalizeStyle({backgroundColor:g.value}),onClick:p=>c(g.value)},[...u[7]||(u[7]=[t.createElementVNode("div",{class:"color-overlay"},"Click to Copy",-1)])],12,a9),t.createElementVNode("div",i9,[t.createElementVNode("div",s9,t.toDisplayString(g.name),1),t.createElementVNode("div",l9,t.toDisplayString(g.value),1)])]))),128))])])]),t.createElementVNode("div",c9,[t.createElementVNode("div",{class:"category-title",onClick:s},[u[8]||(u[8]=t.createElementVNode("span",{class:"category-toggle"},"โถ",-1)),u[9]||(u[9]=t.createTextVNode(" ๐จ Background Colors ",-1)),t.createElementVNode("span",d9,t.toDisplayString(m.backgroundColor.colors.length),1)]),t.createElementVNode("div",u9,[t.createElementVNode("div",_9,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m.backgroundColor.colors,g=>(t.openBlock(),t.createElementBlock("div",{key:g.id,class:"color-item"},[t.createElementVNode("div",{class:"color-preview",style:t.normalizeStyle({backgroundColor:g.value}),onClick:p=>c(g.value)},[...u[10]||(u[10]=[t.createElementVNode("div",{class:"color-overlay"},"Click to Copy",-1)])],12,p9),t.createElementVNode("div",m9,[t.createElementVNode("div",g9,t.toDisplayString(g.name),1),t.createElementVNode("div",f9,t.toDisplayString(g.value),1)])]))),128))])])]),t.createElementVNode("div",E9,[t.createElementVNode("div",{class:"category-title",onClick:s},[u[11]||(u[11]=t.createElementVNode("span",{class:"category-toggle"},"โถ",-1)),u[12]||(u[12]=t.createTextVNode(" ๐ฒ Border Colors ",-1)),t.createElementVNode("span",b9,t.toDisplayString(m.borderColor.colors.length),1)]),t.createElementVNode("div",S9,[t.createElementVNode("div",h9,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m.borderColor.colors,g=>(t.openBlock(),t.createElementBlock("div",{key:g.id,class:"color-item"},[t.createElementVNode("div",{class:"color-preview",style:t.normalizeStyle({backgroundColor:g.value}),onClick:p=>c(g.value)},[...u[13]||(u[13]=[t.createElementVNode("div",{class:"color-overlay"},"Click to Copy",-1)])],12,C9),t.createElementVNode("div",y9,[t.createElementVNode("div",T9,t.toDisplayString(g.name),1),t.createElementVNode("div",A9,t.toDisplayString(g.value),1)])]))),128))])])]),m.foregroundColors.colors.length>0?(t.openBlock(),t.createElementBlock("div",N9,[t.createElementVNode("div",{class:"category-title",onClick:s},[u[14]||(u[14]=t.createElementVNode("span",{class:"category-toggle"},"โถ",-1)),u[15]||(u[15]=t.createTextVNode(" ๐ฏ Foreground Colors ",-1)),t.createElementVNode("span",R9,t.toDisplayString(m.foregroundColors.colors.length),1)]),t.createElementVNode("div",x9,[t.createElementVNode("div",v9,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m.foregroundColors.colors,g=>(t.openBlock(),t.createElementBlock("div",{key:g.id,class:"color-item"},[t.createElementVNode("div",{class:"color-preview",style:t.normalizeStyle({backgroundColor:g.value}),onClick:p=>c(g.value)},[...u[16]||(u[16]=[t.createElementVNode("div",{class:"color-overlay"},"Click to Copy",-1)])],12,O9),t.createElementVNode("div",I9,[t.createElementVNode("div",D9,t.toDisplayString(g.name),1),t.createElementVNode("div",w9,t.toDisplayString(g.value),1)])]))),128))])])])):t.createCommentVNode("",!0),m.utilityColors.colors.length>0?(t.openBlock(),t.createElementBlock("div",k9,[t.createElementVNode("div",{class:"category-title",onClick:s},[u[17]||(u[17]=t.createElementVNode("span",{class:"category-toggle"},"โถ",-1)),u[18]||(u[18]=t.createTextVNode(" ๐ง Utility Colors ",-1)),t.createElementVNode("span",M9,t.toDisplayString(m.utilityColors.colors.length),1)]),t.createElementVNode("div",L9,[t.createElementVNode("div",P9,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m.utilityColors.colors,g=>(t.openBlock(),t.createElementBlock("div",{key:g.id,class:"color-item"},[t.createElementVNode("div",{class:"color-preview",style:t.normalizeStyle({backgroundColor:g.value}),onClick:p=>c(g.value)},[...u[19]||(u[19]=[t.createElementVNode("div",{class:"color-overlay"},"Click to Copy",-1)])],12,B9),t.createElementVNode("div",F9,[t.createElementVNode("div",U9,t.toDisplayString(g.name),1),t.createElementVNode("div",G9,t.toDisplayString(g.value),1)])]))),128))])])])):t.createCommentVNode("",!0)])]))),128))])]))),128))])]))}}),[["styles",[".color-dashboard{font-family:Arial,sans-serif;margin:0;padding:20px;background-color:var(--bg-primary, #ffffff);color:var(--text-primary, #000000);transition:all .3s ease}.dashboard-header{text-align:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px}.dashboard-header h1{margin:0 0 10px;font-size:2.5em}.dashboard-header p{margin:0;font-size:1.1em;opacity:.9}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:30px}.stat-card{background:var(--bg-secondary, #f8f9fa);border:2px solid var(--border-color, #ddd);border-radius:8px;padding:20px;text-align:center}.stat-number{font-size:2.5em;font-weight:700;color:var(--primary-color, #007bff);margin-bottom:5px}.stat-label{font-size:.9em;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.brand-section{margin-bottom:40px;border:2px solid var(--border-color, #ddd);border-radius:12px;overflow:hidden}.brand-header{background:var(--bg-secondary, #f8f9fa);padding:20px;border-bottom:1px solid var(--border-color, #ddd)}.brand-title{font-size:1.5em;font-weight:700;margin-bottom:10px;color:var(--text-primary, #333)}.brand-info{display:flex;gap:20px;flex-wrap:wrap}.brand-stat{background:var(--bg-primary, #fff);padding:10px 15px;border-radius:6px;border:2px solid var(--border-color, #ddd)}.brand-stat-label{font-size:.8em;color:var(--text-secondary, #666);text-transform:uppercase}.brand-stat-value{font-weight:700;color:var(--text-primary, #333)}.modes-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px;padding:20px}.mode-card{border:2px solid var(--border-color, #ddd);border-radius:8px;overflow:hidden;background:var(--bg-primary, #fff)}.mode-header{background:var(--bg-secondary, #f8f9fa);padding:15px;border-bottom:1px solid var(--border-color, #ddd)}.mode-title{font-size:1.2em;font-weight:700;margin-bottom:5px;color:var(--text-primary, #333)}.mode-id{font-size:.8em;color:var(--text-secondary, #666);font-family:Monaco,Menlo,monospace}.color-categories{padding:15px}.category-section{margin-bottom:20px;border:2px solid var(--border-color, #ddd);border-radius:8px;overflow:hidden}.category-title{font-size:1em;font-weight:700;padding:15px;margin-bottom:0;color:var(--text-primary, #333);display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease;background:var(--bg-secondary, #f8f9fa);border-bottom:1px solid var(--border-color, #ddd)}.category-title:hover{color:var(--primary-color, #007bff)}.category-toggle{font-size:1.2em;transition:transform .2s ease;color:var(--text-secondary, #666)}.category-toggle.expanded{transform:rotate(90deg)}.category-content{overflow:hidden;transition:max-height .3s ease;max-height:0;padding:0 15px}.category-content.expanded{max-height:2000px}.category-count{background:var(--primary-color, #007bff);color:#fff;padding:2px 8px;border-radius:12px;font-size:.8em;font-weight:700}.color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;padding:15px 0}.color-item{border:2px solid var(--border-color, #ddd);border-radius:6px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.color-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.color-preview{height:60px;display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer}.color-preview:hover .color-overlay{opacity:1}.color-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000c;color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;font-size:.9em;font-weight:700}.color-info{padding:10px}.color-name{font-weight:700;margin-bottom:5px;color:var(--text-primary, #333)}.color-value{font-family:Monaco,Menlo,monospace;font-size:.8em;color:var(--text-secondary, #666);word-break:break-all}@media (prefers-color-scheme: dark){.color-dashboard{background-color:var(--bg-primary, #1a1a1a);color:var(--text-primary, #ffffff)}.stat-card{background:var(--bg-secondary, #2d2d2d);border-color:var(--border-color, #404040)}.stat-label{color:var(--text-secondary, #cccccc)}.brand-section{border-color:var(--border-color, #404040)}.brand-header{background:var(--bg-secondary, #2d2d2d);border-bottom-color:var(--border-color, #404040)}.brand-title{color:var(--text-primary, #ffffff)}.brand-stat{background:var(--bg-primary, #1a1a1a);border-color:var(--border-color, #404040)}.brand-stat-label{color:var(--text-secondary, #cccccc)}.brand-stat-value{color:var(--text-primary, #ffffff)}.mode-card{border-color:var(--border-color, #404040);background:var(--bg-primary, #1a1a1a)}.mode-header{background:var(--bg-secondary, #2d2d2d);border-bottom-color:var(--border-color, #404040)}.mode-title{color:var(--text-primary, #ffffff)}.mode-id{color:var(--text-secondary, #cccccc)}.category-section{border-color:var(--border-color, #404040)}.category-title{color:var(--text-primary, #ffffff);background:var(--bg-secondary, #2d2d2d);border-bottom-color:var(--border-color, #404040)}.category-toggle{color:var(--text-secondary, #cccccc)}.color-item{border-color:var(--border-color, #404040)}.color-name{color:var(--text-primary, #ffffff)}.color-value{color:var(--text-secondary, #cccccc)}}@media (max-width: 768px){.color-dashboard{padding:10px}.stats-grid{grid-template-columns:1fr}.modes-container{grid-template-columns:1fr;padding:10px}.color-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.brand-info{flex-direction:column;gap:10px}}"]]]),V9=["aria-checked","aria-disabled","aria-label"],Y9=["checked","disabled"],z9={key:0,class:"checkbox-dash"},H9={key:1,class:"checkbox-icon",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg"},q9=["stroke"],W9=x(t.defineComponent({__name:"CustomCheckbox",props:{isChecked:{type:Boolean},isDashInput:{type:Boolean},blueCheckbox:{type:Boolean},disabled:{type:Boolean},ariaLabel:{type:String}},emits:["update:isChecked"],setup(r,{emit:e}){const{currentProject:n,currentColorMode:o}=pe(),a=r,i=e;function l(s){const c=s.target;a.disabled||i("update:isChecked",c.checked)}return(s,c)=>(t.openBlock(),t.createElementBlock("label",{class:t.normalizeClass(["base-checkbox",{checked:s.isChecked&&!s.blueCheckbox,"checked-blue":s.isChecked&&s.blueCheckbox,"not-checked":!s.isChecked,"is-disabled":s.disabled}]),"aria-checked":s.isChecked,"aria-disabled":s.disabled,"aria-label":s.ariaLabel,role:"checkbox"},[t.createElementVNode("input",{id:"checkbox-input",type:"checkbox",class:"checkbox-input",checked:s.isChecked,disabled:s.disabled,onChange:l},null,40,Y9),s.isDashInput&&s.isChecked?(t.openBlock(),t.createElementBlock("span",z9)):s.isChecked&&!s.isDashInput?(t.openBlock(),t.createElementBlock("svg",H9,[t.createElementVNode("path",{d:"M10 3L4.5 8.5L2 6",stroke:s.blueCheckbox?"var(--text-50, var(--text-inverse))":"#000","stroke-width":"1.6666","stroke-linecap":"round","stroke-linejoin":"round"},null,8,q9)])):t.createCommentVNode("",!0)],10,V9))}}),[["styles",[".base-checkbox{position:relative;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:4px;border:2px solid currentColor;cursor:pointer;transition:background-color .15s ease-in-out,border-color .15s ease-in-out;-webkit-user-select:none;user-select:none}.checked{background-color:var(--freddy-text-primary);border-color:transparent}.checked-blue{background-color:#7ba8ef;border-color:transparent}.not-checked{background-color:transparent;border-color:currentColor}.checkbox-input{position:absolute;opacity:0;pointer-events:none}.checkbox-dash{width:8px;height:2px;background-color:var(--freddy-text-primary);border-radius:1px}.checkbox-icon{width:16px;height:16px;pointer-events:none}.is-disabled{opacity:.5;cursor:not-allowed}"]]]),K9={class:"verification-container"},Q9={class:"verification-header"},$9={class:"verification-subtitle"},Z9={class:"code-input-container"},X9={class:"code-inputs"},j9=["onUpdate:modelValue","onInput","onKeydown","disabled"],J9={class:"verification-actions"},e8={key:0,class:"error-message"},t8={class:"verification-footer"},r8={class:"resend-text"},n8=["disabled"],o8=x(t.defineComponent({__name:"EmailCodeVerification",props:{email:{type:String},brand:{default:"contentplate",type:String},loading:{type:Boolean,default:!1},error:{default:"",type:String},resendCooldown:{default:0,type:Number}},emits:["verify","resend"],setup(r,{emit:e}){const{currentProject:n,currentColorMode:o}=pe(),a=r,{brand:i,loading:l,error:s,resendCooldown:c}=a,d=e,u=t.ref(["","","",""]),_=t.ref([]),m=t.computed(()=>u.value.every(S=>S!=="")),g=t.computed(()=>u.value.join("")),p=(S,y)=>{const R=y.target,A=R.value;if(!/^\d*$/.test(A)){R.value="";return}u.value[S]=A,A&&S<3&&t.nextTick(()=>{var v;(v=_.value[S+1])==null||v.focus()})},b=(S,y)=>{y.key==="Backspace"&&!u.value[S]&&S>0&&t.nextTick(()=>{var R;(R=_.value[S-1])==null||R.focus()})},f=S=>{var T;S.preventDefault();const y=(T=S.clipboardData)==null?void 0:T.getData("text");if(!y)return;const R=y.replace(/\D/g,"").slice(0,4).split("");u.value=[...R,"","","",""].slice(0,4);const A=u.value.findIndex(N=>N===""),v=A===-1?3:A;t.nextTick(()=>{var N;(N=_.value[v])==null||N.focus()})},C=()=>{m.value&&d("verify",g.value)},E=()=>{d("resend")};return t.onMounted(()=>{t.nextTick(()=>{var S;(S=_.value[0])==null||S.focus()})}),(S,y)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["email-verification",`email-verification--${t.unref(i)}`])},[t.createElementVNode("div",K9,[t.createElementVNode("div",Q9,[y[1]||(y[1]=t.createElementVNode("h2",{class:"verification-title"},"Verify Your Email",-1)),t.createElementVNode("p",$9,[y[0]||(y[0]=t.createTextVNode(" We've sent a 4-digit verification code to ",-1)),t.createElementVNode("strong",null,t.toDisplayString(S.email),1)])]),t.createElementVNode("form",{onSubmit:t.withModifiers(C,["prevent"]),class:"verification-form"},[t.createElementVNode("div",Z9,[t.createElementVNode("div",X9,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(4,(R,A)=>t.withDirectives(t.createElementVNode("input",{key:A,ref_for:!0,ref:v=>_.value[A]=v,"onUpdate:modelValue":v=>u.value[A]=v,type:"text",maxlength:"1",class:t.normalizeClass(["code-input",`code-input--${t.unref(i)}`]),onInput:v=>p(A,v),onKeydown:v=>b(A,v),onPaste:f,disabled:t.unref(l),autocomplete:"one-time-code"},null,42,j9),[[t.vModelText,u.value[A]]])),64))])]),t.createElementVNode("div",J9,[t.createVNode(ct,{type:"submit",label:t.unref(l)?"Verifying...":"Verify Code",hierarchy:"primary",size:"lg",loading:t.unref(l),disabled:!m.value||t.unref(l),class:t.normalizeClass(`verify-button verify-button--${t.unref(i)}`)},null,8,["label","loading","disabled","class"])]),t.unref(s)?(t.openBlock(),t.createElementBlock("div",e8,t.toDisplayString(t.unref(s)),1)):t.createCommentVNode("",!0),t.createElementVNode("div",t8,[t.createElementVNode("p",r8,[y[2]||(y[2]=t.createTextVNode(" Didn't receive the code? ",-1)),t.createElementVNode("button",{type:"button",class:"resend-button",disabled:t.unref(c)>0,onClick:E},t.toDisplayString(t.unref(c)>0?`Resend in ${t.unref(c)}s`:"Resend code"),9,n8)])])],32)])],2))}}),[["styles",[".email-verification{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.verification-container{max-width:400px;width:100%;text-align:center}.verification-header{margin-bottom:2rem}.verification-title{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.verification-subtitle{color:var(--text-500, var(--freddy-text-secondary));font-size:.875rem}.verification-form{display:flex;flex-direction:column;gap:1.5rem}.code-input-container{display:flex;justify-content:center}.code-inputs{display:flex;gap:.75rem}.code-input{width:3rem;height:3rem;text-align:center;font-size:1.25rem;font-weight:600;border:2px solid var(--freddy-border-color);border-radius:.5rem;background:transparent;transition:all .2s ease}.code-input:focus{outline:none;border-color:var(--color-primary-500, var(--freddy-primary-color));box-shadow:0 0 0 3px #3b82f61a}.code-input:disabled{opacity:.6;cursor:not-allowed}.code-input:-webkit-autofill,.code-input:-webkit-autofill:hover,.code-input:-webkit-autofill:focus,.code-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px transparent inset!important;-webkit-text-fill-color:inherit!important;transition:background-color 5000s ease-in-out 0s;background-color:transparent!important;background-image:none!important}.code-input:-moz-autofill,.code-input:-moz-autofill:focus{background-color:transparent!important;color:inherit!important;border:none!important;box-shadow:none!important}.code-input:-ms-autofill,.code-input:-ms-autofill:focus{background-color:transparent!important;color:inherit!important;border:none!important;box-shadow:none!important}.code-input--contentplate{border-color:var(--color-purple-500, var(--freddy-primary-color))}.code-input--contentplate:focus{border-color:var(--color-purple-600, var(--freddy-primary-color));box-shadow:0 0 0 3px #7c3aed1a}.code-input--flowplate{border-color:var(--color-indigo-500, var(--freddy-primary-color));background:#6366f10d}.code-input--flowplate:focus{border-color:var(--color-indigo-600, #4f46e5);box-shadow:0 0 0 3px #4f46e51a}.code-input--freddy{border-color:var(--freddy-primary-color)}.code-input--freddy:focus{border-color:var(--color-primary-600, #0099cc);box-shadow:0 0 0 3px #00aeef1a}.verification-actions{display:flex;justify-content:center}.verify-button{min-width:200px}.error-message{color:var(--color-destructive-500, var(--freddy-error-color));font-size:.875rem;margin-top:.5rem}.verification-footer{margin-top:1rem}.resend-text{font-size:.875rem;color:var(--text-500, var(--freddy-text-secondary))}.resend-button{background:none;border:none;color:var(--color-primary-500, var(--freddy-primary-color));cursor:pointer;font-size:.875rem;text-decoration:underline}.resend-button:hover:not(:disabled){color:var(--color-primary-600, var(--freddy-primary-color))}.resend-button:disabled{color:var(--border-300, #9ca3af);cursor:not-allowed;text-decoration:none}.verify-button--contentplate{background:var(--color-purple-500, var(--freddy-primary-color))!important;border-color:var(--color-purple-500, var(--freddy-primary-color))!important}.verify-button--flowplate{background:var(--color-indigo-500, var(--freddy-primary-color))!important;border-color:var(--color-indigo-500, var(--freddy-primary-color))!important}.verify-button--freddy{background:var(--freddy-primary-color)!important;border-color:var(--freddy-primary-color)!important}"]]]),a8={class:"input-field-wrapper"},i8=["for"],s8={key:0,class:"required-asterisk"},l8={class:"dropdown-text"},c8=["id","type","placeholder","disabled","readonly"],d8={class:"dropdown-text"},Dt=x(t.defineComponent({__name:"InputField",props:{size:{default:"md",type:String},colorStyle:{default:"freddy",type:String},type:{default:"default",type:String},state:{default:"placeholder",type:String},destructive:{type:Boolean,default:!1},iconLeading:{type:Boolean,default:!1},leadingIcon:{default:void 0,type:null},label:{default:"",type:String},hintText:{default:"",type:String},required:{type:Boolean,default:!1},helpIcon:{type:Boolean,default:!1},helpText:{default:"",type:String},placeholder:{default:"",type:String},value:{default:"",type:String},inputType:{default:"text",type:String},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},leadingDropdownText:{default:"US",type:String},trailingDropdownText:{default:"USD",type:String},leadingText:{default:"http://",type:String},trailingButtonText:{default:"Copy",type:String},modelValue:{default:"",type:String}},emits:["update:modelValue","input","focus","blur","trailing-button-click"],setup(r,{emit:e}){const n=r,o=e,a=t.ref(null),i=t.ref(n.modelValue||n.value||""),l=t.computed(()=>`input-${Math.random().toString(36).substr(2,9)}`),s=t.computed(()=>({[`input-field-container--${n.size}`]:!0,[`input-field-container--${n.colorStyle}`]:!0,"input-field-container--destructive":n.destructive||n.state==="error","input-field-container--focused":n.state==="focused","input-field-container--disabled":n.state==="disabled","input-field-container--loading":n.state==="loading","input-field-container--success":n.state==="success",[`input-field-container--${n.type}`]:n.type!=="default"})),c=t.computed(()=>({[`input-field--${n.size}`]:!0,[`input-field--${n.colorStyle}`]:!0,"input-field--destructive":n.destructive,"input-field--focused":n.state==="focused","input-field--disabled":n.state==="disabled","input-field--with-leading":n.iconLeading||n.type==="leading-dropdown"||n.type==="leading-text","input-field--with-trailing":n.type==="trailing-dropdown"||n.type==="trailing-button"||n.type==="clear"||n.helpIcon})),d=()=>{var f;n.state!=="disabled"&&((f=a.value)==null||f.focus())},u=f=>{const C=f.target;i.value=C.value,o("update:modelValue",C.value),o("input",C.value)},_=f=>{o("focus",f)},m=f=>{o("blur",f)},g=f=>{f.key==="Enter"&&n.type==="trailing-button"&&p(f)},p=f=>{o("trailing-button-click",f)},b=()=>{i.value="",o("update:modelValue",""),o("input",""),t.nextTick(()=>{var f;(f=a.value)==null||f.focus()})};return t.watch(()=>n.modelValue,f=>{f!==void 0&&(i.value=f)}),t.watch(()=>n.value,f=>{f!==void 0&&(i.value=f)}),(f,C)=>(t.openBlock(),t.createElementBlock("div",a8,[f.label?(t.openBlock(),t.createElementBlock("label",{key:0,for:l.value,class:t.normalizeClass(["input-field-label",`input-field-label--${f.colorStyle}`])},[t.createTextVNode(t.toDisplayString(f.label)+" ",1),f.required?(t.openBlock(),t.createElementBlock("span",s8,"*")):t.createCommentVNode("",!0)],10,i8)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(["input-field-container",s.value]),onClick:d},[f.type==="leading-dropdown"?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-leading-dropdown",`input-leading-dropdown--${f.colorStyle}`])},[t.createElementVNode("span",l8,t.toDisplayString(f.leadingDropdownText),1),t.createVNode(t.unref(sr),{class:"dropdown-icon"})],2)):f.iconLeading?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(f.leadingIcon),{key:1,class:t.normalizeClass(["input-leading-icon",`input-leading-icon--${f.colorStyle}`]),"aria-hidden":"true"},null,8,["class"])):f.type==="leading-text"?(t.openBlock(),t.createElementBlock("span",{key:2,class:t.normalizeClass(["input-leading-text",`input-leading-text--${f.colorStyle}`])},t.toDisplayString(f.leadingText),3)):t.createCommentVNode("",!0),t.withDirectives(t.createElementVNode("input",{id:l.value,ref_key:"inputRef",ref:a,"onUpdate:modelValue":C[0]||(C[0]=E=>i.value=E),type:f.inputType,placeholder:f.placeholder,disabled:f.disabled,readonly:f.readonly,class:t.normalizeClass(["input-field",c.value]),onInput:u,onFocus:_,onBlur:m,onKeydown:g},null,42,c8),[[t.vModelDynamic,i.value]]),f.type==="trailing-dropdown"?(t.openBlock(),t.createElementBlock("div",{key:3,class:t.normalizeClass(["input-trailing-dropdown",`input-trailing-dropdown--${f.colorStyle}`])},[t.createElementVNode("span",d8,t.toDisplayString(f.trailingDropdownText),1),t.createVNode(t.unref(sr),{class:"dropdown-icon"})],2)):f.type==="trailing-button"?(t.openBlock(),t.createElementBlock("button",{key:4,type:"button",class:t.normalizeClass(["input-trailing-button",`input-trailing-button--${f.colorStyle}`]),onClick:p},t.toDisplayString(f.trailingButtonText),3)):f.type==="clear"&&i.value?(t.openBlock(),t.createElementBlock("button",{key:5,type:"button",class:t.normalizeClass(["input-clear-button",`input-clear-button--${f.colorStyle}`]),onClick:b,"aria-label":"Clear input"},[t.createVNode(t.unref(yt),{class:"clear-icon"})],2)):t.createCommentVNode("",!0),f.helpIcon&&f.helpText?(t.openBlock(),t.createBlock(ir,{key:6,text:f.helpText,placement:"top"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ps),{class:t.normalizeClass(["input-help-icon",`input-help-icon--${f.colorStyle}`])},null,8,["class"])]),_:1},8,["text"])):t.createCommentVNode("",!0)],2),f.hintText?(t.openBlock(),t.createElementBlock("p",{key:1,class:t.normalizeClass(["input-hint-text",`input-hint-text--${f.colorStyle}`])},t.toDisplayString(f.hintText),3)):t.createCommentVNode("",!0)]))}}),[["styles",['.input-field-wrapper{display:flex;flex-direction:column;gap:.5rem;width:100%}.input-field-label{font-size:.875rem;font-weight:500;line-height:1.25rem}.input-field-label--freddy{color:var(--text-300, var(--text-muted))}.input-field-label--contentplate{color:var(--text-700, var(--freddy-text-primary))}.required-asterisk{color:var(--color-destructive-500, var(--freddy-error-color));margin-left:.125rem}.input-field-container{position:relative;display:flex;align-items:center;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:text;overflow:hidden}.input-field-container--freddy{background-color:var(--bg-800, var(--freddy-bg-primary));border:2px solid var(--border-600, #475569);box-shadow:0 1px 2px #0000000d}.input-field-container--freddy:hover:not(.input-field-container--disabled){border-color:var(--freddy-text-secondary);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.input-field-container--freddy.input-field-container--focused{border-color:var(--freddy-primary-color);box-shadow:0 0 0 3px #3b82f61a,0 4px 6px -1px #0000001a;transform:translateY(-1px)}.input-field-container--freddy.input-field-container--destructive{border-color:var(--freddy-error-color)}.input-field-container--freddy.input-field-container--destructive:hover{border-color:#f87171}.input-field-container--contentplate{background-color:var(--bg-50, var(--freddy-bg-primary));border:2px solid var(--border-200, var(--freddy-border-color));box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.input-field-container--contentplate:hover:not(.input-field-container--disabled){border-color:var(--border-300, #9ca3af);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-1px)}.input-field-container--contentplate.input-field-container--focused{border-color:var(--color-primary-500, var(--freddy-primary-color));box-shadow:0 0 0 3px #3b82f61a,0 10px 15px -3px #0000001a;transform:translateY(-1px)}.input-field-container--contentplate.input-field-container--destructive{border-color:var(--color-destructive-500, var(--freddy-error-color))}.input-field-container--contentplate.input-field-container--destructive:hover{border-color:var(--color-destructive-400, #f87171)}.input-field-container:hover:not(.input-field-container--disabled){border-color:var(--border-400, var(--freddy-text-secondary))}.input-field-container--focused{border-color:var(--color-primary-500, var(--freddy-primary-color));box-shadow:0 0 0 1px var(--color-primary-500, var(--freddy-primary-color))}.input-field-container--destructive{border-color:var(--color-destructive-500, var(--freddy-error-color))}.input-field-container--destructive:hover{border-color:var(--color-destructive-400, #f87171)}.input-field-container--disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.input-field-container--sm{height:40px;border-radius:8px;font-size:.875rem}.input-field-container--md{height:44px;border-radius:12px;font-size:.875rem}.input-field-container--lg{height:48px;border-radius:16px;font-size:1rem}.input-leading-dropdown,.input-leading-text{display:flex;align-items:center;gap:.25rem;padding:0 .75rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.input-leading-dropdown--freddy,.input-leading-text--freddy{border-right:1px solid var(--border-600, #475569);color:var(--text-400, var(--text-muted))}.input-leading-dropdown--contentplate,.input-leading-text--contentplate{border-right:1px solid var(--border-200, var(--freddy-border-color));color:var(--text-500, var(--freddy-text-secondary))}.input-leading-dropdown--freddy:hover{color:var(--text-300, var(--text-muted));transform:scale(1.02)}.input-leading-dropdown--contentplate:hover{color:var(--text-700, var(--freddy-text-primary));transform:scale(1.02)}.dropdown-text{font-size:.875rem;font-weight:500}.dropdown-icon{width:1rem;height:1rem;stroke:currentColor}.input-leading-icon{width:1.25rem;height:1.25rem;margin-left:.75rem}.input-leading-icon--freddy{stroke:var(--text-muted)}.input-leading-icon--contentplate{stroke:var(--freddy-text-secondary)}.input-leading-text--freddy{color:var(--text-muted)}.input-leading-text--contentplate{color:var(--freddy-text-secondary)}.input-field{flex:1;background:transparent;border:none;outline:none;font-size:.875rem;font-weight:500;line-height:1.25rem;padding:0 .75rem;height:100%;transition:all .2s cubic-bezier(.4,0,.2,1)}.input-field:-webkit-autofill,.input-field:-webkit-autofill:hover,.input-field:-webkit-autofill:focus,.input-field:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px transparent inset!important;-webkit-text-fill-color:inherit!important;transition:background-color 5000s ease-in-out 0s;background-color:transparent!important;background-image:none!important}.input-field:-moz-autofill,.input-field:-moz-autofill:focus{background-color:transparent!important;color:inherit!important;border:none!important;box-shadow:none!important}.input-field:-ms-autofill,.input-field:-ms-autofill:focus{background-color:transparent!important;color:inherit!important;border:none!important;box-shadow:none!important}.input-field--freddy{color:var(--text-300, var(--text-muted))}.input-field--freddy:-webkit-autofill,.input-field--freddy:-webkit-autofill:hover,.input-field--freddy:-webkit-autofill:focus,.input-field--freddy:-webkit-autofill:active{-webkit-text-fill-color:var(--text-300, var(--text-muted))!important}.input-field--contentplate{color:var(--text-700, var(--freddy-text-primary))}.input-field--contentplate:-webkit-autofill,.input-field--contentplate:-webkit-autofill:hover,.input-field--contentplate:-webkit-autofill:focus,.input-field--contentplate:-webkit-autofill:active{-webkit-text-fill-color:var(--freddy-text-primary)!important}.input-field--freddy::placeholder{color:var(--text-muted);opacity:.7}.input-field--contentplate::placeholder{color:#9ca3af;opacity:.7}.input-field--disabled{cursor:not-allowed}.input-field--freddy.input-field--destructive{color:var(--freddy-error-color)}.input-field--freddy.input-field--destructive::placeholder{color:#f87171}.input-field--contentplate.input-field--destructive{color:var(--freddy-error-color)}.input-field--contentplate.input-field--destructive::placeholder{color:#f87171}.input-trailing-dropdown{display:flex;align-items:center;gap:.25rem;padding:0 .75rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.input-trailing-dropdown--freddy{border-left:1px solid #475569;color:var(--text-muted)}.input-trailing-dropdown--contentplate{border-left:1px solid var(--freddy-border-color);color:var(--freddy-text-secondary)}.input-trailing-dropdown--freddy:hover{color:var(--text-muted);transform:scale(1.02)}.input-trailing-dropdown--contentplate:hover{color:var(--freddy-text-primary);transform:scale(1.02)}.input-trailing-button{display:flex;align-items:center;padding:0 .75rem;background:transparent;color:var(--freddy-primary-color);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.input-trailing-button--freddy{border-left:1px solid #475569}.input-trailing-button--contentplate{border-left:1px solid var(--freddy-border-color)}.input-trailing-button:hover{color:#60a5fa;transform:scale(1.02)}.input-clear-button{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin-right:.5rem;background:transparent;border:none;cursor:pointer;border-radius:.25rem;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.input-clear-button--freddy{color:var(--text-muted)}.input-clear-button--contentplate{color:var(--freddy-text-secondary)}.input-clear-button--freddy:hover{background-color:var(--freddy-text-primary);color:var(--text-muted);transform:scale(1.1)}.input-clear-button--contentplate:hover{background-color:var(--freddy-bg-secondary);color:var(--freddy-text-primary);transform:scale(1.1)}.clear-icon{width:1rem;height:1rem;stroke:currentColor}.input-help-icon{width:1.25rem;height:1.25rem;margin-right:.75rem;cursor:help;transition:all .2s cubic-bezier(.4,0,.2,1)}.input-help-icon--freddy{stroke:var(--text-muted)}.input-help-icon--contentplate{stroke:var(--freddy-text-secondary)}.input-help-icon--freddy:hover{stroke:var(--text-muted);transform:scale(1.1)}.input-help-icon--contentplate:hover{stroke:var(--freddy-text-primary);transform:scale(1.1)}.input-hint-text{font-size:.75rem;line-height:1rem;margin:0}.input-hint-text--freddy{color:var(--text-muted)}.input-hint-text--contentplate{color:var(--freddy-text-secondary)}.input-field-container--payment .input-field{font-family:Courier New,monospace;letter-spacing:.05em}.input-field:focus{outline:none}.input-field-container--loading{position:relative}.input-field-container--loading:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.input-field-container--success{border-color:#10b981!important}.input-field-container--success.input-field-container--focused{box-shadow:0 0 0 3px #10b9811a!important}.input-field-container--destructive{animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}.input-field-container--freddy-input{background-color:var(--freddy-bg-primary);border-color:#334155}.input-field-container--freddy-input .input-field{color:#f1f5f9}.input-field-container--freddy-input .input-field::placeholder{color:var(--freddy-text-secondary)}']]]),Wi=x(t.defineComponent({__name:"AuthContainer",props:{brand:{default:"contentplate",type:String}},setup(r){const{currentProject:e,currentColorMode:n}=pe(),o=r,a=t.computed(()=>o.brand);return(i,l)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["auth-container",`auth-container--${a.value}`])},[t.renderSlot(i.$slots,"default")],2))}}),[["styles",['.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem}.auth-container--contentplate{background:var(--freddy-bg-secondary)}.auth-container--flowplate{background:linear-gradient(135deg,var(--freddy-bg-primary) 0%,var(--freddy-bg-primary) 100%);position:relative;overflow:hidden}.auth-container--flowplate:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,var(--color-primary-100, rgba(99, 102, 241, .1)) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(139,92,246,.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(99,102,241,.05) 0%,transparent 50%);pointer-events:none}.auth-container--freddy{background:var(--freddy-bg-primary)}']]]),Ki=x(t.defineComponent({__name:"AuthCard",props:{brand:{default:"contentplate",type:String}},setup(r){const{currentProject:e,currentColorMode:n}=pe(),o=r,a=t.computed(()=>o.brand);return(i,l)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["auth-card",`auth-card--${a.value}`])},[t.renderSlot(i.$slots,"default")],2))}}),[["styles",['.auth-card{padding:2rem;width:100%;max-width:400px;margin:0 auto}.auth-card--contentplate{background:var(--bg-50, white);border-radius:8px;box-shadow:0 4px 6px var(--border-light)}.auth-card--flowplate{background:#1e293bcc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:2px solid var(--color-primary-200, rgba(99, 102, 241, .2));border-radius:16px;box-shadow:0 25px 50px -12px #00000080,0 0 0 1px var(--color-primary-100, rgba(99, 102, 241, .1));position:relative;z-index:1}.auth-card--flowplate:before{content:"";position:absolute;top:-1px;left:-1px;right:-1px;bottom:-1px;background:linear-gradient(135deg,var(--color-primary-500, var(--freddy-primary-color)),var(--color-purple-500, var(--freddy-primary-color)),var(--color-primary-500, var(--freddy-primary-color)));border-radius:16px;z-index:-1;opacity:.3}.auth-card--freddy{background:var(--bg-800, var(--freddy-bg-primary));border:2px solid var(--border-600, #475569);border-radius:8px;box-shadow:0 4px 6px var(--text-muted)}']]]),c_="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAwIiBoZWlnaHQ9IjYwIiB2aWV3Qm94PSIwIDAgMjAwIDYwIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDwhLS0gUmVmZXJlbmNlIHRoZSBzbWFsbCBsb2dvIGFzIGEgY29tcG9uZW50IC0tPgogIDxkZWZzPgogICAgPGcgaWQ9ImNvbnRlbnRwbGF0ZS1pY29uIj4KICAgICAgPHJlY3QgeD0iMTAiIHk9IjEwIiB3aWR0aD0iODAiIGhlaWdodD0iODAiIHJ4PSIxNSIgZmlsbD0iIzQ1MTZjYiIvPgogICAgICA8cGF0aCBkPSJNMzAgMzVoNDB2MTBIMzB6TTMwIDU1aDQwdjEwSDMweiIgZmlsbD0iI2ZmZiIvPgogICAgICA8Y2lyY2xlIGN4PSI3NSIgY3k9Ijc1IiByPSI4IiBmaWxsPSIjMDBmZjI2Ii8+CiAgICA8L2c+CiAgPC9kZWZzPgogIAogIDwhLS0gVXNlIHRoZSBpY29uIGNvbXBvbmVudCAtIGNlbnRlcmVkIHZlcnRpY2FsbHkgLS0+CiAgPHVzZSBocmVmPSIjY29udGVudHBsYXRlLWljb24iIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwLCAxMCkgc2NhbGUoMC41KSIvPgogIAogIDwhLS0gVGV4dCAiQ29udGVudHBsYXRlIiAtIHByb3Blcmx5IGNlbnRlcmVkIHZlcnRpY2FsbHkgLS0+CiAgPHRleHQgeD0iNzAiIHk9IjMyIiBmb250LWZhbWlseT0iSW50ZXIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgc2Fucy1zZXJpZiIgZm9udC1zaXplPSIyNCIgZm9udC13ZWlnaHQ9IjcwMCIgZmlsbD0iIzQ1MTZjYiI+Q29udGVudDwvdGV4dD4KICA8dGV4dCB4PSI3MCIgeT0iNTIiIGZvbnQtZmFtaWx5PSJJbnRlciwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBzYW5zLXNlcmlmIiBmb250LXNpemU9IjI0IiBmb250LXdlaWdodD0iNzAwIiBmaWxsPSIjNDUxNmNiIj5wbGF0ZTwvdGV4dD4KPC9zdmc+IA==",u8="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAwIiBoZWlnaHQ9IjYwIiB2aWV3Qm94PSIwIDAgMjAwIDYwIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDwhLS0gRnJlZGR5IGljb24gLSByb2JvdCBoZWFkIC0tPgogIDxyZWN0IHg9IjEwIiB5PSIxNSIgd2lkdGg9IjQwIiBoZWlnaHQ9IjMwIiByeD0iOCIgZmlsbD0iIzBmMTcyYSIgc3Ryb2tlPSIjNDc1NTY5IiBzdHJva2Utd2lkdGg9IjIiLz4KICA8Y2lyY2xlIGN4PSIyNSIgY3k9IjI1IiByPSIzIiBmaWxsPSIjN0JBOEVGIi8+CiAgPGNpcmNsZSBjeD0iMzUiIGN5PSIyNSIgcj0iMyIgZmlsbD0iIzdCQThFRiIvPgogIDxyZWN0IHg9IjI1IiB5PSIzMiIgd2lkdGg9IjEwIiBoZWlnaHQ9IjIiIHJ4PSIxIiBmaWxsPSIjN0JBOEVGIi8+CiAgPHJlY3QgeD0iMTUiIHk9IjEwIiB3aWR0aD0iMzAiIGhlaWdodD0iOCIgcng9IjQiIGZpbGw9IiM0NzU1NjkiLz4KICAKICA8IS0tIFRleHQgIkZyZWRkeSIgLS0+CiAgPHRleHQgeD0iNzAiIHk9IjI1IiBmb250LWZhbWlseT0iSW50ZXIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgc2Fucy1zZXJpZiIgZm9udC1zaXplPSIyNCIgZm9udC13ZWlnaHQ9IjcwMCIgZmlsbD0iIzFGMjkzNyI+RnJlZDwvdGV4dD4KICA8dGV4dCB4PSI3MCIgeT0iNDUiIGZvbnQtZmFtaWx5PSJJbnRlciwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBzYW5zLXNlcmlmIiBmb250LXNpemU9IjI0IiBmb250LXdlaWdodD0iNzAwIiBmaWxsPSIjN0JBOEVGIj5keTwvdGV4dD4KICAKICA8IS0tIFN1YnRsZSB0YWdsaW5lIC0tPgogIDx0ZXh0IHg9IjcwIiB5PSI1NSIgZm9udC1mYW1pbHk9IkludGVyLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIHNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMTAiIGZvbnQtd2VpZ2h0PSI0MDAiIGZpbGw9IiM2QjcyODAiPkFJIEFzc2lzdGFudDwvdGV4dD4KPC9zdmc+IA==",_8="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAwIiBoZWlnaHQ9IjYwIiB2aWV3Qm94PSIwIDAgMjAwIDYwIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDwhLS0gQmFja2dyb3VuZCBjaXJjbGUgZm9yIHRoZSBpY29uIC0gY2VudGVyZWQgdmVydGljYWxseSAtLT4KICA8Y2lyY2xlIGN4PSIzMCIgY3k9IjMwIiByPSIyMCIgZmlsbD0iIzYzNjZGMSIgc3Ryb2tlPSIjNEY0NkU1IiBzdHJva2Utd2lkdGg9IjIiLz4KICAKICA8IS0tIEZsb3cgYXJyb3dzIHJlcHJlc2VudGluZyB3b3JrZmxvdyAtLT4KICA8cGF0aCBkPSJNMTggMjUgTDI1IDI1IEwyNSAyMiBMMzAgMzAgTDI1IDM4IEwyNSAzNSBMMTggMzUgWiIgZmlsbD0id2hpdGUiLz4KICA8cGF0aCBkPSJNMjUgMTggTDMyIDE4IEwzMiAxNSBMMzcgMjMgTDMyIDMwIEwzMiAyNyBMMjUgMjcgWiIgZmlsbD0id2hpdGUiIG9wYWNpdHk9IjAuOCIvPgogIDxwYXRoIGQ9Ik0zMiAzMiBMMzkgMzIgTDM5IDI5IEw0NCAzNyBMMzkgNDQgTDM5IDQxIEwzMiA0MSBaIiBmaWxsPSJ3aGl0ZSIgb3BhY2l0eT0iMC42Ii8+CiAgCiAgPCEtLSBUZXh0ICJGbG93cGxhdGUiIC0gcHJvcGVybHkgY2VudGVyZWQgdmVydGljYWxseSAtLT4KICA8dGV4dCB4PSI3MCIgeT0iMjgiIGZvbnQtZmFtaWx5PSJJbnRlciwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBzYW5zLXNlcmlmIiBmb250LXNpemU9IjI0IiBmb250LXdlaWdodD0iNzAwIiBmaWxsPSIjMUYyOTM3Ij5GbG93PC90ZXh0PgogIDx0ZXh0IHg9IjcwIiB5PSI0OCIgZm9udC1mYW1pbHk9IkludGVyLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIHNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMjQiIGZvbnQtd2VpZ2h0PSI3MDAiIGZpbGw9IiM2MzY2RjEiPnBsYXRlPC90ZXh0Pgo8L3N2Zz4g",p8=["src","alt"],yr=x(t.defineComponent({__name:"Logo",props:{brand:{default:"contentplate",type:String},size:{default:"md",type:String},showTitle:{type:Boolean,default:!0}},setup(r){const e=r,n=t.computed(()=>{switch(e.brand){case"contentplate":return c_;case"flowplate":return _8;case"freddy":return u8;default:return c_}}),o=t.computed(()=>{switch(e.brand){case"contentplate":return"Contentplate";case"flowplate":return"Flowplate";case"freddy":return"Freddy";default:return"Contentplate"}}),a=t.computed(()=>[`logo-container--${e.size}`,`logo-container--${e.brand}`,{"logo-container--brand-no-title":(e.brand==="flowplate"||e.brand==="contentplate")&&!e.showTitle}]),i=t.computed(()=>[`logo-image--${e.size}`,{"logo-image--brand-no-title":(e.brand==="flowplate"||e.brand==="contentplate")&&!e.showTitle}]);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["logo-container",a.value])},[t.createElementVNode("img",{src:n.value,alt:`${l.brand} Logo`,class:t.normalizeClass(["logo-image",i.value])},null,10,p8),l.showTitle?(t.openBlock(),t.createElementBlock("h1",{key:0,class:t.normalizeClass(["logo-title",`logo-title--${l.size}`])},t.toDisplayString(o.value),3)):t.createCommentVNode("",!0)],2))}}),[["styles",[".logo-container{display:flex;align-items:center;gap:.75rem}.logo-container--sm{gap:.5rem}.logo-container--lg{gap:1rem}.logo-image{object-fit:contain;height:auto}.logo-image--sm{width:64px;height:64px}.logo-image--md{width:96px;height:96px}.logo-image--lg{width:128px;height:128px}.logo-image--brand-no-title.logo-image--lg{width:180px;height:54px}.logo-image{max-width:100%;height:auto;aspect-ratio:200/60}.logo-title{margin:0;font-weight:600;color:#374151}.logo-title--sm{font-size:1rem}.logo-title--md{font-size:1.25rem}.logo-title--lg{font-size:1.5rem}"]]]),m8={class:"form-group"},g8={class:"form-group"},f8={class:"form-actions"},E8={key:0,class:"error-message"},b8={class:"signup-link"},d_=x(t.defineComponent({__name:"LoginForm",props:{loading:{type:Boolean,default:!1},error:{default:"",type:String}},emits:["submit","switch-to-register"],setup(r,{emit:e}){const n=r,{currentProject:o,currentColorMode:a}=pe(),i=t.computed(()=>{var p;const g=((p=o.value)==null?void 0:p.name)||"Freddy Public";return g.includes("Contentplate")?"contentplate":g.includes("Flowplate")?"flowplate":(g.includes("Freddy"),"freddy")}),l=t.computed(()=>n.loading),s=t.computed(()=>n.error),c=e,d=t.ref(""),u=t.ref(""),_=t.computed(()=>d.value.trim()!==""&&u.value.length>=8),m=()=>{_.value&&c("submit",d.value,u.value)};return(g,p)=>{const b=t.resolveDirective("motion");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["login-form-container",`login-form-container--${i.value}`])},[t.createVNode(yr,{brand:i.value,size:"lg","show-title":i.value==="freddy"},null,8,["brand","show-title"]),t.withDirectives((t.openBlock(),t.createElementBlock("form",{onSubmit:t.withModifiers(m,["prevent"]),class:"login-form"},[t.createElementVNode("div",m8,[t.createVNode(Dt,{modelValue:d.value,"onUpdate:modelValue":p[0]||(p[0]=f=>d.value=f),label:"Email",placeholder:"Enter your email","input-type":"email","color-style":i.value==="contentplate"?"contentplate":"freddy",required:"",disabled:l.value},null,8,["modelValue","color-style","disabled"])]),t.createElementVNode("div",g8,[t.createVNode(Dt,{modelValue:u.value,"onUpdate:modelValue":p[1]||(p[1]=f=>u.value=f),label:"Password",placeholder:"Enter your password","input-type":"password","color-style":i.value==="contentplate"?"contentplate":"freddy",required:"",disabled:l.value},null,8,["modelValue","color-style","disabled"])]),t.createElementVNode("div",f8,[t.createVNode(ct,{type:"submit",label:"Login",hierarchy:"primary",size:"lg",loading:l.value,disabled:!_.value||l.value,class:t.normalizeClass(`login-button login-button--${i.value}`)},null,8,["loading","disabled","class"])]),s.value?(t.openBlock(),t.createElementBlock("p",E8,t.toDisplayString(s.value),1)):t.createCommentVNode("",!0),t.createElementVNode("div",b8,[p[3]||(p[3]=t.createTextVNode(" Don't have an account? ",-1)),t.createElementVNode("button",{type:"button",class:"link-button",onClick:p[2]||(p[2]=f=>g.$emit("switch-to-register"))}," Sign up ")])],32)),[[b,"slide-visible"]])],2)}}}),[["styles",[".login-form-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:400px;margin:0 auto}.login-form{width:100%;display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-actions{margin-top:.5rem}.login-button{width:100%}.login-button--flowplate{background:linear-gradient(135deg,var(--color-primary-500, var(--freddy-primary-color)),var(--color-purple-500, var(--freddy-primary-color)))!important;border:none!important;box-shadow:0 4px 12px var(--color-primary-300, rgba(99, 102, 241, .3));transition:all .3s ease}.login-button--flowplate:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-600, var(--freddy-primary-color)),var(--color-purple-600, var(--freddy-primary-color)))!important;transform:translateY(-1px);box-shadow:0 6px 16px var(--color-primary-400, rgba(99, 102, 241, .4))}.login-button--contentplate{background:var(--color-primary-500, var(--freddy-primary-color))!important;border:none!important;box-shadow:0 4px 12px var(--color-primary-300, rgba(124, 58, 237, .3));transition:all .3s ease}.login-button--contentplate:hover:not(:disabled){background:var(--color-primary-600, var(--freddy-primary-color))!important;transform:translateY(-1px);box-shadow:0 6px 16px var(--color-primary-400, rgba(124, 58, 237, .4))}.login-button--freddy{background:var(--color-primary-500, var(--freddy-primary-color))!important;border:none!important;box-shadow:0 4px 12px var(--color-primary-300, rgba(0, 174, 239, .3));transition:all .3s ease}.login-button--freddy:hover:not(:disabled){background:var(--color-primary-600, var(--freddy-primary-color))!important;transform:translateY(-1px);box-shadow:0 6px 16px var(--color-primary-400, rgba(0, 174, 239, .4))}.error-message{color:var(--color-destructive-500, var(--freddy-error-color));font-size:.875rem;text-align:center;margin:0}.login-form-container--contentplate .error-message{color:var(--color-destructive-500, var(--freddy-error-color))}.login-form-container--flowplate .error-message{background:var(--color-destructive-50, rgba(239, 68, 68, .1));padding:.75rem;border-radius:8px;border:2px solid var(--color-destructive-200, rgba(239, 68, 68, .2))}.login-form-container--freddy .error-message{color:var(--color-destructive-500, var(--freddy-error-color))}.signup-link{text-align:center;font-size:.875rem;color:var(--text-500, var(--freddy-text-secondary));margin-top:1rem}.login-form-container--contentplate .signup-link{color:var(--text-500, var(--freddy-text-secondary))}.login-form-container--flowplate .signup-link,.login-form-container--freddy .signup-link{color:var(--text-400, var(--text-muted))}.link-button{background:none;border:none;color:var(--color-primary-500, var(--freddy-primary-color));font-size:.875rem;cursor:pointer;padding:0;margin:0;text-decoration:none}.login-form-container--contentplate .link-button,.login-form-container--flowplate .link-button,.login-form-container--freddy .link-button{color:var(--color-primary-500, var(--freddy-primary-color));transition:color .2s ease}.link-button:hover{text-decoration:underline}.login-form-container--flowplate .link-button:hover,.login-form-container--contentplate .link-button:hover,.login-form-container--freddy .link-button:hover{color:var(--color-primary-600, var(--freddy-primary-color))}.login-form{animation:slideInUp .6s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.form-group{animation:fadeInUp .6s ease-out;animation-fill-mode:both}.form-group:nth-child(1){animation-delay:.1s}.form-group:nth-child(2){animation-delay:.2s}.form-actions{animation:fadeInUp .6s ease-out;animation-delay:.3s;animation-fill-mode:both}.signup-link{animation:fadeInUp .6s ease-out;animation-delay:.4s;animation-fill-mode:both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}"]]]);class S8{constructor(e={}){xe(this,"baseUrl");xe(this,"timeout");xe(this,"retries");xe(this,"defaultHeaders");this.baseUrl=e.baseUrl||om(),this.timeout=e.timeout||3e4,this.retries=e.retries||3,this.defaultHeaders={"Content-Type":"application/json",Accept:"application/json",Origin:window.location.origin,...e.headers}}async makeRequest(e,n={}){const o=`${this.baseUrl}${e}`,a={...this.defaultHeaders,...n.headers};Tt.isAuthenticated()&&(a.Authorization=`Bearer ${Tt.getToken()}`);const i=new AbortController,l=setTimeout(()=>i.abort(),this.timeout);try{const s=await fetch(o,{...n,headers:a,credentials:"include",signal:i.signal});clearTimeout(l);const c=await s.json();return s.ok?{success:!0,data:c,status:s.status}:{success:!1,error:c.message||`Request failed with status ${s.status}`,status:s.status,code:c.code}}catch(s){return clearTimeout(l),s.name==="AbortError"?{success:!1,error:"Request timeout"}:{success:!1,error:s.message||"Network error occurred"}}}async retryRequest(e,n={}){let o="";for(let a=1;a<=this.retries;a++){const i=await this.makeRequest(e,n);if(i.success)return i;if(o=i.error||"Unknown error",i.status&&i.status>=400&&i.status<500)break;a<this.retries&&await new Promise(l=>setTimeout(l,Math.pow(2,a)*1e3))}return{success:!1,error:`Request failed after ${this.retries} attempts. Last error: ${o}`}}buildQueryParams(e){const n=new URLSearchParams;return Object.entries(e).forEach(([o,a])=>{a!=null&&n.append(o,a.toString())}),n.toString()}setBaseUrl(e){this.baseUrl=e}setTimeout(e){this.timeout=e}setRetries(e){this.retries=e}addDefaultHeader(e,n){this.defaultHeaders[e]=n}removeDefaultHeader(e){delete this.defaultHeaders[e]}async batchRequest(e){const n=e.map(o=>this.makeRequest(o.endpoint,{method:o.method||"GET",body:o.body?JSON.stringify(o.body):void 0}));return Promise.all(n)}}class u_ extends S8{async login(e){return this.makeRequest("/login",{method:"POST",body:JSON.stringify(e)})}async verifyLogin(e){return this.makeRequest("/verify-login",{method:"POST",body:JSON.stringify(e)})}async sendEmailVerification(e){return this.makeRequest("/send-email-verification",{method:"POST",body:JSON.stringify(e)})}async requestNewVerification(e){return this.makeRequest("/request-new-verification",{method:"POST",body:JSON.stringify(e)})}async register(e){return this.makeRequest("/public-signup",{method:"POST",body:JSON.stringify(e)})}async getMfaQr(){return this.makeRequest("/mfa/qr",{method:"GET"})}async verifyMfa(e){return this.makeRequest("/mfa/verify",{method:"POST",body:JSON.stringify(e)})}async enableMfa(e){return this.makeRequest("/mfa/enable",{method:"POST",body:JSON.stringify(e)})}async disableMfa(e){return this.makeRequest("/mfa/disable",{method:"POST",body:JSON.stringify(e)})}async enforceMfa(e){return this.makeRequest("/mfa/enforce-mfa",{method:"POST",body:JSON.stringify(e)})}async getCurrentUser(){return this.makeRequest("/user/profile",{method:"GET"})}async updateUserProfile(e){return this.makeRequest("/user/profile",{method:"PUT",body:JSON.stringify(e)})}async changePassword(e,n){return this.makeRequest("/user/change-password",{method:"POST",body:JSON.stringify({currentPassword:e,newPassword:n})})}async getOrganizations(){return this.makeRequest("/organizations",{method:"GET"})}async getOrganization(e){return this.makeRequest(`/organizations/${e}`,{method:"GET"})}async getWorkflows(e){return this.makeRequest(`/organizations/${e}/workflows`,{method:"GET"})}async getWorkflow(e,n){return this.makeRequest(`/organizations/${e}/workflows/${n}`,{method:"GET"})}async createWorkflow(e,n){return this.makeRequest(`/organizations/${e}/workflows`,{method:"POST",body:JSON.stringify(n)})}async updateWorkflow(e,n,o){return this.makeRequest(`/organizations/${e}/workflows/${n}`,{method:"PUT",body:JSON.stringify(o)})}async deleteWorkflow(e,n){return this.makeRequest(`/organizations/${e}/workflows/${n}`,{method:"DELETE"})}getDeviceInformation(){const e=navigator.userAgent;return{deviceId:this.generateDeviceId(),deviceName:this.getDeviceName(e),deviceType:this.getDeviceType(e),operatingSystem:this.getOperatingSystem(e),platform:"web"}}generateDeviceId(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const n=Math.random()*16|0;return(e==="x"?n:n&3|8).toString(16)})}getDeviceName(e){return e.includes("Mac")?"Mac":e.includes("Windows")?"Windows PC":e.includes("Linux")?"Linux PC":e.includes("iPhone")?"iPhone":e.includes("iPad")?"iPad":e.includes("Android")?"Android Device":"Unknown Device"}getDeviceType(e){return e.includes("Mobile")?"mobile":e.includes("iPad")?"tablet":"desktop"}getOperatingSystem(e){return e.includes("Mac")?"macOS":e.includes("Windows")?"Windows":e.includes("Linux")?"Linux":e.includes("iPhone")?"iOS":e.includes("Android")?"Android":"Unknown OS"}async healthCheck(){return this.makeRequest("/health",{method:"GET"})}}new u_;class h8{constructor(){xe(this,"flowplateToken",null);xe(this,"jwtToken",null);xe(this,"user",null);xe(this,"deviceId");xe(this,"apiService");const e=localStorage.getItem("flowplate_token"),n=localStorage.getItem("flowplate_jwt_token"),o=localStorage.getItem("flowplate_user");e&&(this.flowplateToken=e),n&&(this.jwtToken=n),o&&(this.user=JSON.parse(o)),this.deviceId=localStorage.getItem("flowplate_device_id")||this.generateDeviceId(),localStorage.getItem("flowplate_device_id")||localStorage.setItem("flowplate_device_id",this.deviceId),this.apiService=new u_}generateDeviceId(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const n=Math.random()*16|0;return(e==="x"?n:n&3|8).toString(16)})}async login(e,n,o){try{const a=this.apiService.getDeviceInformation(),i={emailOrLdapLoginId:e,password:n,deviceInformation:a};o&&(i.mfaCode=o);const l=await this.apiService.login(i);if(!l.success)throw new Error(l.error||"Login failed");return l.data?(this.setTokens(l.data),this.setUser(l.data.user),!0):!1}catch(a){throw a}}async verifyLogin(e,n,o){try{const a={email:e,token:n,emailKey:o},i=await this.apiService.verifyLogin(a);if(!i.success)throw new Error(i.error||"Login verification failed");return i.data?(this.setTokens(i.data),this.setUser(i.data.user),!0):!1}catch(a){throw a}}async sendEmailVerification(e){try{const n={email:e},o=await this.apiService.sendEmailVerification(n);if(!o.success)throw new Error(o.error||"Failed to send email verification");return!0}catch(n){throw n}}async register(e,n,o,a){try{const i={email:e,firstName:n,lastName:o,password:a},l=await this.apiService.register(i);if(!l.success)throw new Error(l.error||"Registration failed");return!0}catch(i){throw i}}async getMfaQr(){try{const e=await this.apiService.getMfaQr();if(!e.success)throw new Error(e.error||"Failed to get MFA QR code");return e.data||null}catch(e){throw e}}async verifyMfa(e){try{const n={mfaCode:e},o=await this.apiService.verifyMfa(n);if(!o.success)throw new Error(o.error||"MFA verification failed");return!0}catch(n){throw n}}async enableMfa(e){try{const n={mfaCode:e},o=await this.apiService.enableMfa(n);if(!o.success)throw new Error(o.error||"Failed to enable MFA");return this.user&&(this.user.mfaEnabled=!0,this.setUser(this.user)),!0}catch(n){throw n}}async disableMfa(e,n){try{const o={mfaCode:e,mfaRecoveryCode:n},a=await this.apiService.disableMfa(o);if(!a.success)throw new Error(a.error||"Failed to disable MFA");return this.user&&(this.user.mfaEnabled=!1,this.setUser(this.user)),!0}catch(o){throw o}}async getCurrentUser(){try{const e=await this.apiService.getCurrentUser();if(!e.success)throw new Error(e.error||"Failed to get current user");return e.data?(this.setUser(e.data),e.data):null}catch(e){throw e}}setTokens(e){this.flowplateToken=e.flowplateToken,this.jwtToken=e.jwtToken,localStorage.setItem("flowplate_token",e.flowplateToken),localStorage.setItem("flowplate_jwt_token",e.jwtToken)}setUser(e){this.user=e,localStorage.setItem("flowplate_user",JSON.stringify(e))}getFlowplateToken(){return this.flowplateToken}getJwtToken(){return this.jwtToken}getUser(){return this.user}isAuthenticated(){return!!this.flowplateToken&&!!this.jwtToken}getDeviceId(){return this.deviceId}logout(){this.flowplateToken=null,this.jwtToken=null,this.user=null,localStorage.removeItem("flowplate_token"),localStorage.removeItem("flowplate_jwt_token"),localStorage.removeItem("flowplate_user")}}const __=new h8,p_=t.defineComponent({__name:"LoginPage",props:{initialEmail:{default:"",type:String}},emits:["login-success","switch-to-register"],setup(r,{emit:e}){const{currentProject:n,initializeTheme:o}=pe();t.onMounted(async()=>{await o()});const a=t.computed(()=>{var u;const d=((u=n.value)==null?void 0:u.name)||"Freddy Public";return d.includes("Contentplate")?"contentplate":d.includes("Flowplate")?"flowplate":(d.includes("Freddy"),"freddy")}),i=e,l=t.ref(!1),s=t.ref(""),c=async(d,u)=>{l.value=!0,s.value="";try{if(a.value==="flowplate")if(await __.login(d,u))i("login-success",d);else throw new Error("Login failed");else if(await new Promise(_=>setTimeout(_,1e3)),d&&u)i("login-success",d);else throw new Error("Please enter valid email and password")}catch(_){s.value=_.message||"Login failed. Please try again."}finally{l.value=!1}};return(d,u)=>(t.openBlock(),t.createBlock(Wi,{brand:a.value},{default:t.withCtx(()=>[t.createVNode(Ki,{brand:a.value},{default:t.withCtx(()=>[t.createVNode(d_,{brand:a.value,loading:l.value,error:s.value,onSubmit:c,onSwitchToRegister:u[0]||(u[0]=_=>d.$emit("switch-to-register"))},null,8,["brand","loading","error"])]),_:1},8,["brand"])]),_:1},8,["brand"]))}}),C8={class:"form-group"},y8={class:"form-group"},T8={class:"form-group"},A8={class:"form-actions"},N8={key:0,class:"error-message"},R8={class:"login-link"},m_=x(t.defineComponent({__name:"RegisterForm",props:{loading:{type:Boolean,default:!1},error:{default:"",type:String}},emits:["submit","switch-to-login"],setup(r,{emit:e}){const{currentProject:n,currentColorMode:o}=pe(),a=r,i=t.computed(()=>{var b;const p=((b=n.value)==null?void 0:b.name)||"Freddy Public";return p.includes("Contentplate")?"contentplate":p.includes("Flowplate")?"flowplate":(p.includes("Freddy"),"freddy")}),l=a.loading,s=a.error,c=e,d=t.ref(""),u=t.ref(""),_=t.ref(""),m=t.computed(()=>d.value.trim()!==""&&u.value.trim()!==""&&_.value.length>=8),g=()=>{m.value&&c("submit",d.value,u.value,_.value)};return(p,b)=>{const f=t.resolveDirective("motion");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["register-form-container",`register-form-container--${i.value}`])},[t.createVNode(yr,{brand:i.value,size:"lg","show-title":i.value==="freddy"},null,8,["brand","show-title"]),b[5]||(b[5]=t.createElementVNode("h2",{class:"form-title"},"Create Account",-1)),t.withDirectives((t.openBlock(),t.createElementBlock("form",{onSubmit:t.withModifiers(g,["prevent"]),class:"register-form"},[t.createElementVNode("div",C8,[t.createVNode(Dt,{modelValue:d.value,"onUpdate:modelValue":b[0]||(b[0]=C=>d.value=C),label:"Full Name",placeholder:"Enter your full name","input-type":"text","color-style":i.value==="contentplate"?"contentplate":"freddy",required:"",disabled:t.unref(l)},null,8,["modelValue","color-style","disabled"])]),t.createElementVNode("div",y8,[t.createVNode(Dt,{modelValue:u.value,"onUpdate:modelValue":b[1]||(b[1]=C=>u.value=C),label:"Email",placeholder:"Enter your email","input-type":"email","color-style":i.value==="contentplate"?"contentplate":"freddy",required:"",disabled:t.unref(l)},null,8,["modelValue","color-style","disabled"])]),t.createElementVNode("div",T8,[t.createVNode(Dt,{modelValue:_.value,"onUpdate:modelValue":b[2]||(b[2]=C=>_.value=C),label:"Password",placeholder:"Enter your password","input-type":"password","color-style":i.value==="contentplate"?"contentplate":"freddy",required:"",disabled:t.unref(l)},null,8,["modelValue","color-style","disabled"])]),t.createElementVNode("div",A8,[t.createVNode(ct,{type:"submit",label:"Create Account",hierarchy:"primary",size:"lg",loading:t.unref(l),disabled:!m.value||t.unref(l),class:t.normalizeClass(`register-button register-button--${i.value}`)},null,8,["loading","disabled","class"])]),t.unref(s)?(t.openBlock(),t.createElementBlock("p",N8,t.toDisplayString(t.unref(s)),1)):t.createCommentVNode("",!0),t.createElementVNode("div",R8,[b[4]||(b[4]=t.createTextVNode(" Already have an account? ",-1)),t.createElementVNode("button",{type:"button",class:"link-button",onClick:b[3]||(b[3]=C=>p.$emit("switch-to-login"))}," Login ")])],32)),[[f,"slide-visible"]])],2)}}}),[["styles",[".register-form-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:400px;margin:0 auto}.form-title{margin:2rem 0 0;font-size:1.5rem;font-weight:700;text-align:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.register-form-container--contentplate .form-title{color:var(--freddy-text-primary)}.register-form-container--flowplate .form-title{color:var(--text-inverse);text-shadow:0 2px 4px var(--text-muted)}.register-form-container--freddy .form-title{color:var(--text-muted)}.register-form{width:100%;display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-actions{margin-top:.5rem}.register-button{width:100%}.register-button--flowplate{background:linear-gradient(135deg,var(--color-primary-500, var(--freddy-primary-color)),var(--color-purple-500, var(--freddy-primary-color)))!important;border:none!important;box-shadow:0 4px 12px var(--color-primary-300, rgba(99, 102, 241, .3));transition:all .3s ease}.register-button--flowplate:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-600, var(--freddy-primary-color)),var(--color-purple-600, var(--freddy-primary-color)))!important;transform:translateY(-1px);box-shadow:0 6px 16px var(--color-primary-400, rgba(99, 102, 241, .4))}.error-message{color:var(--color-destructive-500, var(--freddy-error-color));font-size:.875rem;text-align:center;margin:0}.register-form-container--contentplate .error-message{color:var(--color-destructive-500, var(--freddy-error-color))}.register-form-container--flowplate .error-message{background:var(--color-destructive-50, rgba(239, 68, 68, .1));padding:.75rem;border-radius:8px;border:2px solid var(--color-destructive-200, rgba(239, 68, 68, .2))}.register-form-container--freddy .error-message{color:var(--color-destructive-500, var(--freddy-error-color))}.login-link{text-align:center;font-size:.875rem;color:var(--text-500, var(--freddy-text-secondary));margin-top:1rem}.register-form-container--contentplate .login-link{color:var(--text-500, var(--freddy-text-secondary))}.register-form-container--flowplate .login-link,.register-form-container--freddy .login-link{color:var(--text-400, var(--text-muted))}.link-button{background:none;border:none;color:var(--color-primary-500, var(--freddy-primary-color));font-size:.875rem;cursor:pointer;padding:0;margin:0;text-decoration:none}.register-form-container--contentplate .link-button,.register-form-container--flowplate .link-button,.register-form-container--freddy .link-button{color:var(--color-primary-500, var(--freddy-primary-color));transition:color .2s ease}.link-button:hover{text-decoration:underline}.register-form-container--flowplate .link-button:hover{color:var(--color-primary-600, var(--freddy-primary-color))}.register-form{animation:slideInUp .6s ease-out}.form-title{animation:fadeInUp .6s ease-out;animation-delay:.1s;animation-fill-mode:both}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.form-group{animation:fadeInUp .6s ease-out;animation-fill-mode:both}.form-group:nth-child(1){animation-delay:.2s}.form-group:nth-child(2){animation-delay:.3s}.form-group:nth-child(3){animation-delay:.4s}.form-actions{animation:fadeInUp .6s ease-out;animation-delay:.5s;animation-fill-mode:both}.login-link{animation:fadeInUp .6s ease-out;animation-delay:.6s;animation-fill-mode:both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}"]]]),g_=t.defineComponent({__name:"RegisterPage",props:{initialEmail:{default:"",type:String}},emits:["register-success","switch-to-login"],setup(r,{emit:e}){const{currentProject:n,initializeTheme:o}=pe();t.onMounted(async()=>{await o()});const a=t.computed(()=>{var u;const d=((u=n.value)==null?void 0:u.name)||"Freddy Public";return d.includes("Contentplate")?"contentplate":d.includes("Flowplate")?"flowplate":(d.includes("Freddy"),"freddy")}),i=e,l=t.ref(!1),s=t.ref(""),c=async(d,u,_)=>{l.value=!0,s.value="";try{if(a.value==="flowplate")if(await __.register(u,d.split(" ")[0],d.split(" ").slice(1).join(" "),_))i("register-success",u);else throw new Error("Registration failed");else if(await new Promise(m=>setTimeout(m,1500)),d&&u&&_)i("register-success",u);else throw new Error("Please enter valid registration information")}catch(m){s.value=m.message||"Registration failed. Please try again."}finally{l.value=!1}};return(d,u)=>(t.openBlock(),t.createBlock(Wi,{brand:a.value},{default:t.withCtx(()=>[t.createVNode(Ki,{brand:a.value},{default:t.withCtx(()=>[t.createVNode(m_,{brand:a.value,loading:l.value,error:s.value,onSubmit:c,onSwitchToLogin:u[0]||(u[0]=_=>d.$emit("switch-to-login"))},null,8,["brand","loading","error"])]),_:1},8,["brand"])]),_:1},8,["brand"]))}}),x8={key:0,class:"api-warning"},v8={class:"api-warning__content"},O8={class:"api-warning__text"},I8=x(t.defineComponent({__name:"AuthManager",props:{initialView:{default:"login",type:String},initialEmail:{default:"",type:String}},emits:["login-success","register-success"],setup(r,{emit:e}){const n=r,{currentProject:o,initializeTheme:a}=pe();t.onMounted(async()=>{await a()});const i=t.computed(()=>{var p;const g=((p=o.value)==null?void 0:p.name)||"Freddy Public";return g.includes("Contentplate")?"contentplate":g.includes("Flowplate")?"flowplate":(g.includes("Freddy"),"freddy")}),l=e,s=t.ref(n.initialView),c=t.ref(n.initialEmail),d=()=>{s.value="register"},u=()=>{s.value="login"},_=g=>{l("login-success",g)},m=g=>{l("register-success",g)};return(g,p)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["auth-manager",`auth-manager--${i.value}`])},[i.value!=="flowplate"?(t.openBlock(),t.createElementBlock("div",x8,[t.createElementVNode("div",v8,[p[1]||(p[1]=t.createElementVNode("div",{class:"api-warning__icon"},"โ ๏ธ",-1)),t.createElementVNode("div",O8,[p[0]||(p[0]=t.createElementVNode("h3",null,"API Integration Not Available",-1)),t.createElementVNode("p",null,"API interaction is not yet enabled for "+t.toDisplayString(i.value)+" brand. This is a demo interface.",1)])])])):t.createCommentVNode("",!0),t.createVNode(t.Transition,{name:"auth-slide",mode:"out-in"},{default:t.withCtx(()=>[s.value==="login"?(t.openBlock(),t.createBlock(p_,{key:"login",brand:i.value,"initial-email":c.value,onLoginSuccess:_,onSwitchToRegister:d},null,8,["brand","initial-email"])):(t.openBlock(),t.createBlock(g_,{key:"register",brand:i.value,"initial-email":c.value,onRegisterSuccess:m,onSwitchToLogin:u},null,8,["brand","initial-email"]))]),_:1})],2))}}),[["styles",[".auth-manager{width:100%;height:100vh;overflow:hidden;position:relative}.api-warning{position:absolute;top:0;left:0;right:0;z-index:100;background:#ffc1071a;border-bottom:2px solid #ffc107;padding:12px 20px}.api-warning__content{display:flex;align-items:center;gap:12px;max-width:600px;margin:0 auto}.api-warning__icon{font-size:20px;flex-shrink:0}.api-warning__text h3{margin:0 0 4px;font-size:14px;font-weight:600;color:#d97706}.api-warning__text p{margin:0;font-size:12px;color:#92400e;line-height:1.4}.auth-manager--contentplate{background:var(--freddy-bg-secondary)}.auth-manager--flowplate{background:linear-gradient(135deg,var(--freddy-bg-primary) 0%,var(--freddy-bg-primary) 100%)}.auth-manager--freddy{background:var(--freddy-bg-primary)}.auth-slide-enter-active,.auth-slide-leave-active{transition:all .6s cubic-bezier(.4,0,.2,1)}.auth-slide-enter-from{opacity:0;transform:scale(.95) translateY(20px)}.auth-slide-leave-to{opacity:0;transform:scale(.95) translateY(-20px)}.auth-slide-enter-to,.auth-slide-leave-from{opacity:1;transform:scale(1) translateY(0)}.auth-manager--contentplate .auth-slide-enter-active,.auth-manager--contentplate .auth-slide-leave-active{transition:all .5s ease-in-out}.auth-manager--flowplate .auth-slide-enter-active,.auth-manager--flowplate .auth-slide-leave-active{transition:all .7s cubic-bezier(.4,0,.2,1)}.auth-manager--freddy .auth-slide-enter-active,.auth-manager--freddy .auth-slide-leave-active{transition:all .6s ease-out}"]]]),D8=".bg-modalBackgroundBlur{background-color:#1d2e47e6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.bg-background{background-color:#0f172a}.freddy-modal-container{background-color:var(--bg-900, var(--freddy-bg-primary));padding:2rem;border-radius:2.5rem;overflow:hidden;color:#fff}.modal-header:last-child,.modal-body:last-child,.modal-footer:last-child{margin-bottom:0}.modal-enter-active,.modal-leave-active{transition:all .3s ease}.modal-enter-from,.modal-leave-to{opacity:0;transform:scale(.9)}.modal-enter-to,.modal-leave-from{opacity:1;transform:scale(1)}@media (min-width: 1280px){.modal-container-large{width:56.25rem}}@media (max-width: 1279px) and (min-width: 1024px){.modal-container-large{width:56.25rem}}@media (max-width: 1023px) and (min-width: 768px){.modal-container-large{width:56.25rem}}@media (max-width: 767px) and (min-width: 640px){.modal-container-large{width:45.625rem}}@media (max-width: 639px) and (min-width: 480px){.modal-container-large{width:31.25rem}}@media (max-width: 479px){.modal-container-large{width:auto;max-width:90%}}",w8={name:"ModalBox",props:{isVisible:{type:Boolean,default:!0},largeModel:{type:Boolean,default:!0}},methods:{closeModal(){this.$emit("close")}}},k8={key:0,class:"fixed z-[9998] top-0 left-0 w-full h-full bg-modalBackgroundBlur flex justify-center items-center"},M8={class:"flex justify-center items-center"},L8={class:"modal-header"},P8={class:"modal-body"},B8={class:"modal-footer"};function F8(r,e,n,o,a,i){return t.openBlock(),t.createBlock(t.Transition,{name:"modal"},{default:t.withCtx(()=>[n.isVisible?(t.openBlock(),t.createElementBlock("div",k8,[t.createElementVNode("div",M8,[t.createElementVNode("div",{class:t.normalizeClass({"p-8 bg-background rounded-[2.5rem] overflow-hidden text-white":n.largeModel,"modal-container-large":n.largeModel})},[t.createElementVNode("div",L8,[t.renderSlot(r.$slots,"header")]),t.createElementVNode("div",P8,[t.renderSlot(r.$slots,"body")]),t.createElementVNode("div",B8,[t.renderSlot(r.$slots,"footer")])],2)])])):t.createCommentVNode("",!0)]),_:3})}const U8=x(w8,[["render",F8],["styles",[D8]]]),G8={class:"freddy-modal-header"},V8={class:"freddy-modal-body"},Y8=x(t.defineComponent({__name:"ModalOverlay",props:{modalTitle:{type:String},headerClass:{type:String},disableClickOutside:{type:Boolean}},emits:["close"],setup(r,{emit:e}){const{currentProject:n,currentColorMode:o}=pe(),a=r,i=e,l=()=>{i("close")},s=()=>{a.disableClickOutside||l()};return(c,d)=>(t.openBlock(),t.createElementBlock("div",{role:"dialog","aria-modal":"true",class:"freddy-modal-overlay",onClick:s},[t.createElementVNode("div",{class:"freddy-modal-content",onClick:d[0]||(d[0]=t.withModifiers(()=>{},["stop"]))},[t.createElementVNode("header",G8,[t.createElementVNode("h2",{class:t.normalizeClass(["freddy-modal-title",c.headerClass])},t.toDisplayString(c.modalTitle),3),t.createElementVNode("button",{class:"freddy-modal-close",onClick:l},[t.createVNode(qr,{class:"freddy-modal-close-icon"})])]),t.createElementVNode("div",V8,[t.renderSlot(c.$slots,"content")])])]))}}),[["styles",[".freddy-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background-color:#031525c4;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;overflow:auto}.freddy-modal-content{background-color:var(--text-900, var(--freddy-bg-primary));border-radius:40px;box-shadow:0 0 10px 2px #ffffff40;padding:30px;position:relative;margin:auto;min-width:370px;max-width:90%;width:auto}.freddy-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:8px}.freddy-modal-title{font-size:29px;line-height:35px;font-weight:600;margin:0}.freddy-modal-close{background:none;border:none;font-size:35px;font-weight:400;color:#fff;padding:0;line-height:1;cursor:pointer}.freddy-modal-close-icon{width:16px;height:16px;stroke-width:2px}"]]]),z8={key:0,class:"freddy-pagination-nav","aria-label":"Pagination"},H8=["disabled"],q8={class:"freddy-pagination-dynamic-container"},W8=["onClick","disabled"],K8=["disabled"],Q8=x(t.defineComponent({__name:"Pagination",props:{totalItems:{type:Number,required:!0,default:0},itemsPerPage:{type:Number,required:!0,default:10},currentPage:{type:Number,required:!0,default:1}},emits:["update:currentPage"],setup(r,{emit:e}){const n=r,o=e,a=t.computed(()=>!n.totalItems||isNaN(n.totalItems)?0:Math.ceil(n.totalItems/n.itemsPerPage)),i=t.computed(()=>{const s=[],c=a.value,d=n.currentPage;if(c<=7)for(let u=1;u<=c;u++)s.push(u);else{s.push(1),d>4?s.push("..."):s.push(2,3);for(let u=Math.max(4,d-1);u<=Math.min(c-3,d+1);u++)s.push(u);d<c-4&&s.push("..."),s.push(c-2,c-1,c)}return s});function l(s){s==="..."||s===n.currentPage||typeof s=="number"&&s>=1&&s<=a.value&&o("update:currentPage",s)}return(s,c)=>a.value>0?(t.openBlock(),t.createElementBlock("nav",z8,[t.createElementVNode("button",{class:t.normalizeClass(["freddy-pagination-end-button",{"freddy-pagination-hover-enabled":r.currentPage!==1}]),onClick:c[0]||(c[0]=d=>l(r.currentPage-1)),disabled:r.currentPage===1}," Previous ",10,H8),t.createElementVNode("div",q8,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.value,d=>(t.openBlock(),t.createElementBlock("button",{key:String(d),class:t.normalizeClass(["freddy-pagination-number-button",{active:d===r.currentPage}]),onClick:u=>l(d),disabled:d==="..."||d===r.currentPage},t.toDisplayString(d),11,W8))),128)),t.createElementVNode("button",{class:t.normalizeClass(["freddy-pagination-end-button",{"freddy-pagination-hover-enabled":r.currentPage!==a.value}]),onClick:c[1]||(c[1]=d=>l(r.currentPage+1)),disabled:r.currentPage===a.value||a.value===0}," Next ",10,K8)])])):t.createCommentVNode("",!0)}}),[["styles",[".freddy-pagination-nav{width:100%;display:flex;gap:.25rem;justify-content:space-between}.freddy-pagination-number-button{display:flex;align-items:center;justify-content:center;border-radius:4px;color:var(--text-500, var(--freddy-text-secondary));cursor:pointer;padding:.5rem .75rem;height:auto;background:transparent;border:none;transition:background-color .2s,color .2s}.freddy-pagination-number-button.active,.freddy-pagination-number-button.bg-white{background-color:var(--bg-surface);color:#fff}.freddy-pagination-dynamic-container{display:flex;gap:.25rem}.freddy-pagination-end-button{margin-left:16px;display:flex;align-items:center;justify-content:center;padding:0 1rem;height:2.5rem;margin-inline-start:0;line-height:1.25rem;color:var(--text-500, var(--freddy-text-secondary));background-color:var(--text-900, var(--freddy-bg-primary));border:2px solid var(--border-light);border-radius:.5rem;cursor:pointer;transition:background-color .2s,color .2s}.freddy-pagination-hover-enabled:hover{background-color:var(--bg-surface);color:var(--text-300, var(--text-muted));cursor:pointer}"]]]),$8=["placeholder","maxlength"],Z8=x(t.defineComponent({inheritAttrs:!1,__name:"SearchInput",props:{placeholder:{default:"Search here...",type:String},showLoaderForSearch:{type:Boolean,default:!1},maxCharLimit:{default:void 0,type:Number}},emits:["update:searchInput"],setup(r,{emit:e}){const{currentProject:n,currentColorMode:o}=pe(),a=t.useAttrs(),i=t.ref(null),l=t.ref(null),s=t.ref(null),c=e,d=()=>{var _;(_=l.value)==null||_.focus()},u=()=>{c("update:searchInput",i.value)};return(_,m)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"dropdownRef",ref:s,class:t.normalizeClass(["freddy-search-wrapper",t.unref(a).class]),onClick:d},[t.createVNode(t.unref(Bs),{class:"freddy-search-icon"}),t.withDirectives(t.createElementVNode("input",{type:"text",id:"search-input",class:"freddy-search-input",ref_key:"searchInput",ref:l,"onUpdate:modelValue":m[0]||(m[0]=g=>i.value=g),onInput:u,placeholder:_.placeholder,maxlength:_.maxCharLimit},null,40,$8),[[t.vModelText,i.value]]),_.showLoaderForSearch?(t.openBlock(),t.createBlock(Br,{key:0,class:"freddy-search-spinner"})):t.createCommentVNode("",!0)],2))}}),[["styles",[".freddy-search-wrapper{display:flex;box-sizing:border-box;align-items:flex-start;gap:.5rem;height:37px;width:100%;border:2px solid var(--freddy-border-color);padding-left:.875rem;padding-right:.875rem;border-radius:.5rem;cursor:text}.freddy-search-icon{flex-shrink:0;width:1.25rem;height:1.25rem;align-self:center;stroke:var(--text-muted)}.freddy-search-input{flex:1 1 auto;width:100%;font-size:14px;font-weight:500;line-height:16px;background:transparent;border:none;outline:none;color:var(--text-300, var(--text-muted));align-self:center}.freddy-search-input::placeholder{color:var(--text-muted);opacity:.7}.freddy-search-input:-webkit-autofill,.freddy-search-input:-webkit-autofill:hover,.freddy-search-input:-webkit-autofill:focus,.freddy-search-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px transparent inset!important;-webkit-text-fill-color:var(--text-300, var(--text-muted))!important;transition:background-color 5000s ease-in-out 0s;background-color:transparent!important;background-image:none!important}.freddy-search-input:-moz-autofill,.freddy-search-input:-moz-autofill:focus{background-color:transparent!important;color:var(--text-300, var(--text-muted))!important;border:none!important;box-shadow:none!important}.freddy-search-input:-ms-autofill,.freddy-search-input:-ms-autofill:focus{background-color:transparent!important;color:var(--text-300, var(--text-muted))!important;border:none!important;box-shadow:none!important}.freddy-search-spinner{width:21px!important;align-self:center}"]]]),X8={key:0,class:"skeleton-card"},j8={key:0,class:"skeleton-line skeleton-wave skeleton-w-32 skeleton-h-6 mb-2"},J8={key:1,class:"skeleton-paragraph"},e7={key:0,class:"skeleton-line skeleton-wave skeleton-h-6 skeleton-w-40 mb-2"},t7={key:2,class:"skeleton-single-box"},r7={key:0,class:"skeleton-line skeleton-wave skeleton-h-6 skeleton-w-40 mb-2"},n7={key:3,class:"skeleton-table"},o7={key:0,class:"skeleton-line skeleton-wave skeleton-h-6 skeleton-w-40"},a7={class:"table-full"},i7=x(t.defineComponent({__name:"SkeletonLoader",props:{type:{type:String},hasHeader:{type:Boolean},count:{type:Number}},setup(r){const{currentProject:e,currentColorMode:n}=pe(),o=r,{type:a,hasHeader:i=!1,count:l=5}=o;return(s,c)=>t.unref(a)==="card"?(t.openBlock(),t.createElementBlock("div",X8,[t.unref(i)?(t.openBlock(),t.createElementBlock("div",j8)):t.createCommentVNode("",!0),c[0]||(c[0]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-6 skeleton-w-3-4"},null,-1)),c[1]||(c[1]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-4 skeleton-w-full"},null,-1)),c[2]||(c[2]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-4 skeleton-w-5-6"},null,-1))])):t.unref(a)==="paragraph"?(t.openBlock(),t.createElementBlock("div",J8,[t.unref(i)?(t.openBlock(),t.createElementBlock("div",e7)):t.createCommentVNode("",!0),c[3]||(c[3]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-4 skeleton-w-full"},null,-1)),c[4]||(c[4]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-4 skeleton-w-5-6"},null,-1)),c[5]||(c[5]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-4 skeleton-w-3-4"},null,-1))])):t.unref(a)==="single-box"?(t.openBlock(),t.createElementBlock("div",t7,[t.unref(i)?(t.openBlock(),t.createElementBlock("div",r7)):t.createCommentVNode("",!0),c[6]||(c[6]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-4 skeleton-w-full"},null,-1))])):t.unref(a)==="table"?(t.openBlock(),t.createElementBlock("div",n7,[t.unref(i)?(t.openBlock(),t.createElementBlock("div",o7)):t.createCommentVNode("",!0),t.createElementVNode("table",a7,[t.createElementVNode("tbody",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),d=>(t.openBlock(),t.createElementBlock("tr",{key:d},[...c[7]||(c[7]=[t.createElementVNode("td",{class:"td-padding"},[t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-8 skeleton-w-full"})],-1),t.createElementVNode("td",{class:"td-padding"},[t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-8 skeleton-w-full"})],-1)])]))),128))])])])):t.createCommentVNode("",!0)}}),[["styles",['.skeleton-card{background-color:var(--freddy-bg-primary)a8;padding:1rem;border:2px solid var(--text-50, var(--text-inverse))fff0a;border-radius:.5rem;box-shadow:4px 7px 27px -13px #fdfdff0f;display:flex;flex-direction:column;gap:1rem}.skeleton-paragraph,.skeleton-single-box,.skeleton-single-paragraph{padding:1rem;border:2px solid var(--text-50, var(--text-inverse))fff0a;border-radius:.75rem;background-color:var(--freddy-bg-primary)a8;box-shadow:4px 7px 27px -13px #fdfdff0f;display:flex;flex-direction:column;gap:.5rem}.skeleton-single-box{padding:8px}.skeleton-table{background-color:var(--freddy-bg-primary)a8;padding:1rem;border:2px solid var(--text-50, var(--text-inverse))fff0a;border-radius:.5rem;overflow:hidden;box-shadow:4px 7px 27px -13px #fdfdff0f;display:flex;flex-direction:column;gap:1rem}.skeleton-wave{position:relative;overflow:hidden;background-color:var(--text-900, var(--freddy-bg-primary))}.skeleton-wave:after{content:"";position:absolute;top:0;left:-150%;height:100%;width:150%;background:linear-gradient(90deg,#fff0,#ffffffb3,#fff0);animation:wave 3s ease-in-out infinite}@keyframes wave{0%{left:-150%}50%{left:100%}to{left:100%}}.skeleton-line{background-color:var(--text-50, var(--text-inverse))fff17;border-radius:.25rem}.skeleton-h-4{height:1rem}.skeleton-h-6{height:1.5rem}.skeleton-h-8{height:2rem}.skeleton-w-full{width:100%}.skeleton-w-5-6{width:83.333333%}.skeleton-w-3-4{width:75%}.skeleton-w-40{width:10rem}.skeleton-w-32{width:8rem}.table-full{min-width:100%;border-collapse:collapse}.td-padding{padding:.5rem 1.5rem}']]]),s7={class:"freddy-plugin-snackbar-content"},l7={class:"freddy-plugin-snackbar-left"},c7={class:"freddy-plugin-snackbar-text"},d7=["innerHTML"],u7=["innerHTML"],_7=["onClick"],p7=x(t.defineComponent({__name:"SnackBar",setup(r){const{currentProject:e,currentColorMode:n}=pe(),{snackQueue:o}=lm(),a=s=>{switch(s){case"success":return zr;case"danger":return yt;case"info":return _r;default:return zr}},i=t.computed(()=>{const s=o.value[o.value.length-1];if(!s)return"side70";switch(s.toastContainerSize){case"half":return"half";case"full":return"full";default:return"side70"}}),l=s=>{o.value.splice(s,1)};return(s,c)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["freddy-plugin-snackbar-container",`freddy-plugin-snackbar-container--${i.value}`])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o),(d,u)=>(t.openBlock(),t.createElementBlock("div",{key:u,class:t.normalizeClass(["freddy-plugin-snackbar",`freddy-plugin-snackbar--${d.toastType}`])},[t.createElementVNode("div",s7,[t.createElementVNode("div",l7,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a(d.toastType)),{class:t.normalizeClass(["freddy-plugin-snackbar-icon",[d.toastType==="info"&&"freddy-plugin-snackbar-icon--info",d.toastType==="danger"&&"freddy-plugin-snackbar-icon--danger",d.toastType==="success"&&"freddy-plugin-snackbar-icon--success"]])},null,8,["class"])),t.createElementVNode("div",c7,[t.createElementVNode("p",{class:"freddy-plugin-snackbar-title",innerHTML:d.title},null,8,d7),t.createElementVNode("p",{class:"freddy-plugin-snackbar-message",innerHTML:d.message},null,8,u7)])]),t.createElementVNode("button",{class:"freddy-plugin-snackbar-close-btn",onClick:_=>l(u)},[t.createVNode(qr,{class:"freddy-plugin-snackbar-close-icon"})],8,_7)])],2))),128))],2))}}),[["styles",["@keyframes fade-in-right{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.freddy-plugin-snackbar-container{position:fixed;right:1.25rem;bottom:.5rem;padding-bottom:17px;z-index:50}.freddy-plugin-snackbar-container--side70{width:78%}.freddy-plugin-snackbar-container--half{width:50%}.freddy-plugin-snackbar-container--full{width:100%;padding-left:2.5rem}.freddy-plugin-snackbar{margin-top:.75rem;padding:1rem;border-radius:1.5rem;background-color:var(--text-900, var(--freddy-bg-primary));animation:fade-in-right .5s ease-out}.freddy-plugin-snackbar--info{border:2px solid var(--text-50, var(--text-inverse))fff;box-shadow:0 0 0 1px var(--text-50, var(--text-inverse))}.freddy-plugin-snackbar--danger{border:2px solid var(--color-warning-500, var(--freddy-warning-color));box-shadow:0 0 0 1px var(--color-warning-500, var(--freddy-warning-color))}.freddy-plugin-snackbar--success{border:2px solid var(--color-success-500, var(--freddy-success-color));box-shadow:0 0 0 1px var(--color-success-500, var(--freddy-success-color))}.freddy-plugin-snackbar-content{display:flex;justify-content:space-between;align-items:center;position:relative}.freddy-plugin-snackbar-left{display:flex;gap:1rem}.freddy-plugin-snackbar-icon{height:16px;width:16px;stroke-width:2;color:var(--text-50, var(--text-inverse))fff;border-radius:9999px;padding:.25rem;border:4px solid transparent;box-sizing:content-box}.freddy-plugin-snackbar-icon--info{border-color:var(--text-50, var(--text-inverse))fff33;background-color:var(--text-50, var(--text-inverse))fff17}.freddy-plugin-snackbar-icon--danger{border-color:var(--color-warning-500, var(--freddy-warning-color));background-color:var(--color-warning-500, var(--freddy-warning-color))}.freddy-plugin-snackbar-icon--success{border-color:var(--color-success-500, var(--freddy-success-color));background-color:var(--color-success-400, var(--freddy-success-color))}.freddy-plugin-snackbar-text{display:flex;flex-direction:column;gap:.375rem;color:var(--text-50, var(--text-inverse))fff}.freddy-plugin-snackbar-title{font-size:.875rem;font-weight:600;margin:0;color:var(--text-50, var(--text-inverse))fff}.freddy-plugin-snackbar-message{font-size:.875rem;font-weight:500;line-height:normal;margin:0;color:var(--text-50, var(--text-inverse))fff}.freddy-plugin-snackbar-close-btn{position:absolute;right:.5rem;top:0;background:none;border:none;cursor:pointer}.freddy-plugin-snackbar-close-icon{height:10px;width:10px;stroke-width:1.67;color:#fff}"]]]),m7={class:"freddy-plugin-nav-bar"},g7=["onClick"],f7=x(t.defineComponent({__name:"TabList",props:{tabList:{type:Array},currentTab:{default:0,type:Number}},emits:["tabSwitch"],setup(r,{emit:e}){const n=r,o=e,a=t.ref(n.currentTab),i=l=>{a.value!==l.id&&(a.value=l.id,o("tabSwitch",l.id))};return(l,s)=>(t.openBlock(),t.createElementBlock("div",m7,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.tabList,(c,d)=>(t.openBlock(),t.createElementBlock("button",{class:"freddy-plugin-menu-button",key:d,onClick:u=>i(c)},[t.createTextVNode(t.toDisplayString(c.title)+" ",1),t.createElementVNode("span",{class:t.normalizeClass({"freddy-plugin-active-tab":a.value===c.id})},null,2)],8,g7))),128))]))}}),[["styles",[".freddy-plugin-nav-bar{display:flex;width:100%;gap:24px;border-bottom:1px solid rgba(255,255,255,.09);padding-right:10px;font-family:Inter,sans-serif;font-size:.875rem;font-weight:600}.freddy-plugin-menu-button{all:unset;display:flex;flex-direction:column;padding-top:8px;cursor:pointer}.freddy-plugin-active-tab{width:100%;background-color:var(--text-50, var(--text-inverse))fff;height:2px;border-top-left-radius:.375rem;border-top-right-radius:.375rem}"]]]),E7={class:"theme-switcher"},b7={class:"theme-switcher-header"},S7={class:"header-content"},h7={class:"header-right"},C7=["title"],y7={class:"status-text"},T7={key:0,class:"loading-container"},A7={key:1,class:"error-container"},N7={class:"error-content"},R7={key:2,class:"theme-switcher-main"},x7={class:"current-theme-section"},v7={class:"section-header"},O7={class:"current-theme-card"},I7={class:"theme-info"},D7={class:"theme-brand-info"},w7={class:"brand-icon"},k7={class:"brand-details"},M7={class:"brand-version"},L7={class:"theme-mode-info"},P7={class:"mode-details"},B7={class:"mode-key"},F7={key:0,class:"enhanced-color-preview"},U7={class:"primary-color-grid"},G7=["onClick"],V7={key:0,class:"color-text-sample"},Y7={class:"color-overlay"},z7={class:"color-label"},H7={class:"color-description"},q7={class:"color-value"},W7={class:"theme-controls-section"},K7={class:"control-card"},Q7={class:"brand-selection"},$7=["onClick"],Z7={class:"brand-visual"},X7={class:"brand-logo"},j7={key:0,class:"brand-status"},J7={class:"brand-content"},eN={class:"brand-version"},tN={class:"color-mode-section"},rN={class:"mode-selection"},nN=["onClick"],oN={class:"mode-visual"},aN={key:0,class:"mode-status"},iN={class:"mode-content"},sN={class:"mode-key"},lN={key:0,class:"debug-section"},cN={class:"debug-content"},dN={class:"debug-item"},uN={class:"debug-item"},_N={class:"debug-item"},pN={class:"debug-item"},mN={class:"debug-item"},gN={class:"debug-colors"},fN={key:0},EN={key:1},bN={key:2},SN={class:"debug-css-vars"},hN={class:"control-card"},CN={class:"stats-grid"},yN={class:"stat-item"},TN={class:"stat-content"},AN={class:"stat-value"},NN={class:"stat-item"},RN={class:"stat-content"},xN={class:"stat-value"},vN={class:"stat-item"},ON={class:"stat-content"},IN={class:"stat-value"},DN={class:"stat-item"},wN={class:"stat-content"},kN={class:"stat-value"},f_=x(t.defineComponent({__name:"ThemeSwitcher",setup(r){const{currentBrandId:e,currentModeId:n,currentProject:o,currentColorMode:a,isLoading:i,error:l,availableBrands:s,availableModes:c,setBrand:d,setMode:u,initializeTheme:_,applyThemeToDocument:m,getCSSVariableMapping:g,saveThemeToStorage:p,loadThemeFromStorage:b}=pe(),f=()=>i.value?"Loading...":l.value?"Error":"Ready to Switch",C=()=>i.value?"Loading theme configuration...":l.value?"Error loading theme configuration":"Theme system is ready - you can switch between brands and color modes",E=()=>!o.value||!a.value?"inactive":"active",S=()=>!o.value||!a.value?"No Theme":"Active",y=T=>T&&{"Contentplate Public":"contentplate","Flowplate Public":"flowplate","Freddy Public":"freddy"}[T]||"contentplate",R=T=>{const N=T.name.toLowerCase().includes("dark");return{backgroundColor:N?"#2a2a2a":"var(--freddy-bg-primary)",color:N?"var(--freddy-bg-primary)":"var(--freddy-text-primary)"}},A=()=>{var N,w,O,V,q,D,I,M,L,$,le;if(!a.value)return{};const T={};if((N=a.value.backgroundColor)!=null&&N.colors){const J=((w=a.value.backgroundColor.colors.find(Z=>Z.name==="Background"))==null?void 0:w.value)||((O=a.value.backgroundColor.colors.find(Z=>Z.name==="Surface"))==null?void 0:O.value);J&&(T.background={value:J,label:"Background",description:"Main page background"})}if((V=a.value.textColors)!=null&&V.colors){const J=((q=a.value.textColors.colors.find(Z=>Z.name==="Primary"))==null?void 0:q.value)||((D=a.value.textColors.colors.find(Z=>Z.name==="Text"))==null?void 0:D.value);J&&(T.text={value:J,label:"Text",description:"Primary text color"})}if((I=a.value.textColors)!=null&&I.colors){const J=((M=a.value.textColors.colors.find(Z=>Z.name==="Accent"))==null?void 0:M.value)||((L=a.value.textColors.colors.find(Z=>Z.name==="Link"))==null?void 0:L.value);J&&(T.primary={value:J,label:"Primary",description:"Brand & action color"})}if(($=a.value.borderColor)!=null&&$.colors){const J=(le=a.value.borderColor.colors.find(Z=>Z.name==="Border"))==null?void 0:le.value;J&&(T.border={value:J,label:"Border",description:"UI element borders"})}return T},v=async(T,N)=>{try{await navigator.clipboard.writeText(T)}catch{}};return t.onMounted(()=>{_()}),(T,N)=>{var w,O,V,q,D,I,M,L,$,le,J,Z,Se,ne,z,me,W,te,K,ce,ae,fe,oe,Ie,Ze,et;return t.openBlock(),t.createElementBlock("div",E7,[t.createElementVNode("div",b7,[t.createElementVNode("div",S7,[N[2]||(N[2]=t.createElementVNode("div",{class:"header-left"},[t.createElementVNode("h2",null,"๐จ Theme Switcher"),t.createElementVNode("p",null,"Customize your design system appearance")],-1)),t.createElementVNode("div",h7,[t.createElementVNode("div",{class:t.normalizeClass(["status-indicator",{active:!t.unref(i)&&!t.unref(l)}]),title:C()},[N[1]||(N[1]=t.createElementVNode("div",{class:"status-dot"},null,-1)),t.createElementVNode("span",y7,t.toDisplayString(f()),1)],10,C7)])])]),t.unref(i)?(t.openBlock(),t.createElementBlock("div",T7,[...N[3]||(N[3]=[t.createStaticVNode('<div class="loading-content"><div class="loading-spinner"><div class="spinner-ring"></div><div class="spinner-ring"></div><div class="spinner-ring"></div></div><h3>Loading Theme Configuration</h3><p>Please wait while we load your available themes...</p></div>',1)])])):t.unref(l)?(t.openBlock(),t.createElementBlock("div",A7,[t.createElementVNode("div",N7,[N[5]||(N[5]=t.createElementVNode("div",{class:"error-icon"},"โ ๏ธ",-1)),N[6]||(N[6]=t.createElementVNode("h3",null,"Configuration Error",-1)),t.createElementVNode("p",null,t.toDisplayString(t.unref(l)),1),t.createElementVNode("button",{onClick:N[0]||(N[0]=(...re)=>t.unref(_)&&t.unref(_)(...re)),class:"retry-button"},[...N[4]||(N[4]=[t.createElementVNode("span",{class:"btn-icon"},"๐",-1),t.createTextVNode(" Try Again ",-1)])])])])):(t.openBlock(),t.createElementBlock("div",R7,[t.createElementVNode("div",x7,[t.createElementVNode("div",v7,[N[7]||(N[7]=t.createElementVNode("h3",null,"Current Theme",-1)),t.createElementVNode("div",{class:t.normalizeClass(["theme-badge",E()])},t.toDisplayString(S()),3)]),t.createElementVNode("div",O7,[t.createElementVNode("div",I7,[t.createElementVNode("div",D7,[t.createElementVNode("div",w7,[t.createVNode(yr,{brand:y((w=t.unref(o))==null?void 0:w.name),size:"sm","show-title":!1},null,8,["brand"])]),t.createElementVNode("div",k7,[t.createElementVNode("h4",null,t.toDisplayString(((O=t.unref(o))==null?void 0:O.name)||"No Brand Selected"),1),t.createElementVNode("span",M7,"v"+t.toDisplayString(((V=t.unref(o))==null?void 0:V.version)||"0"),1)])]),t.createElementVNode("div",L7,[N[8]||(N[8]=t.createElementVNode("div",{class:"mode-icon"},[t.createElementVNode("span",{class:"mode-icon-text"},"๐จ")],-1)),t.createElementVNode("div",P7,[t.createElementVNode("h4",null,t.toDisplayString(((q=t.unref(a))==null?void 0:q.name)||"No Mode Selected"),1),t.createElementVNode("span",B7,t.toDisplayString(((D=t.unref(a))==null?void 0:D.name)||"none"),1)])])]),t.unref(a)?(t.openBlock(),t.createElementBlock("div",F7,[N[10]||(N[10]=t.createElementVNode("h4",null,"Theme Color Palette",-1)),N[11]||(N[11]=t.createElementVNode("p",{class:"color-preview-description"}," Key colors from the current theme ",-1)),t.createElementVNode("div",U7,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(A(),(re,De)=>(t.openBlock(),t.createElementBlock("div",{key:De,class:"primary-color-item",style:t.normalizeStyle({backgroundColor:re.value}),onClick:tt=>v(re.value)},[De==="background"?(t.openBlock(),t.createElementBlock("div",V7,[...N[9]||(N[9]=[t.createElementVNode("span",{style:{color:"var(--freddy-text-primary)"}},"Sample Text",-1)])])):t.createCommentVNode("",!0),t.createElementVNode("div",Y7,[t.createElementVNode("span",z7,t.toDisplayString(re.label),1),t.createElementVNode("span",H7,t.toDisplayString(re.description),1),t.createElementVNode("span",q7,t.toDisplayString(re.value),1)])],12,G7))),128))])])):t.createCommentVNode("",!0)])]),t.createElementVNode("div",W7,[t.createElementVNode("div",K7,[N[13]||(N[13]=t.createElementVNode("div",{class:"card-header"},[t.createElementVNode("h3",null,"Brand Selection"),t.createElementVNode("span",{class:"card-subtitle"},"Choose your design system")],-1)),t.createElementVNode("div",Q7,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(s),re=>(t.openBlock(),t.createElementBlock("div",{key:re.id,onClick:De=>t.unref(d)(re.id),class:t.normalizeClass(["brand-option",{active:t.unref(e)===re.id}])},[t.createElementVNode("div",Z7,[t.createElementVNode("div",X7,[t.createVNode(yr,{brand:y(re.name),size:"sm","show-title":!1},null,8,["brand"])]),t.unref(e)===re.id?(t.openBlock(),t.createElementBlock("div",j7,[...N[12]||(N[12]=[t.createElementVNode("span",{class:"check-icon"},"โ",-1)])])):t.createCommentVNode("",!0)]),t.createElementVNode("div",J7,[t.createElementVNode("h4",null,t.toDisplayString(re.name),1),t.createElementVNode("span",eN,"Version "+t.toDisplayString(re.version),1)])],10,$7))),128))])]),t.createElementVNode("div",tN,[N[16]||(N[16]=t.createElementVNode("div",{class:"section-header"},[t.createElementVNode("h3",null,"Color Mode"),t.createElementVNode("span",{class:"card-subtitle"},"Select your preferred appearance")],-1)),t.createElementVNode("div",rN,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(c),re=>(t.openBlock(),t.createElementBlock("div",{key:re.id,onClick:De=>t.unref(u)(re.id),class:t.normalizeClass(["mode-option",{active:t.unref(n)===re.id}])},[t.createElementVNode("div",oN,[t.createElementVNode("div",{class:"mode-preview",style:t.normalizeStyle(R(re))},[...N[14]||(N[14]=[t.createElementVNode("div",{class:"mode-icon"},"๐จ",-1)])],4),t.unref(n)===re.id?(t.openBlock(),t.createElementBlock("div",aN,[...N[15]||(N[15]=[t.createElementVNode("span",{class:"check-icon"},"โ",-1)])])):t.createCommentVNode("",!0)]),t.createElementVNode("div",iN,[t.createElementVNode("h4",null,t.toDisplayString(re.name),1),t.createElementVNode("span",sN,t.toDisplayString(re.name),1)])],10,nN))),128))])]),t.unref(a)?(t.openBlock(),t.createElementBlock("div",lN,[N[27]||(N[27]=t.createElementVNode("div",{class:"section-header"},[t.createElementVNode("h3",null,"Debug Info"),t.createElementVNode("span",{class:"card-subtitle"},"Current theme debugging")],-1)),t.createElementVNode("div",cN,[t.createElementVNode("div",dN,[N[17]||(N[17]=t.createElementVNode("strong",null,"Current Brand:",-1)),t.createTextVNode(" "+t.toDisplayString((I=t.unref(o))==null?void 0:I.name),1)]),t.createElementVNode("div",uN,[N[18]||(N[18]=t.createElementVNode("strong",null,"Current Mode:",-1)),t.createTextVNode(" "+t.toDisplayString((M=t.unref(a))==null?void 0:M.name),1)]),t.createElementVNode("div",_N,[N[19]||(N[19]=t.createElementVNode("strong",null,"Text Colors:",-1)),t.createTextVNode(" "+t.toDisplayString(((le=($=(L=t.unref(a))==null?void 0:L.textColors)==null?void 0:$.colors)==null?void 0:le.length)||0)+" colors ",1)]),t.createElementVNode("div",pN,[N[20]||(N[20]=t.createElementVNode("strong",null,"Background Colors:",-1)),t.createTextVNode(" "+t.toDisplayString(((Se=(Z=(J=t.unref(a))==null?void 0:J.backgroundColor)==null?void 0:Z.colors)==null?void 0:Se.length)||0)+" colors ",1)]),t.createElementVNode("div",mN,[N[21]||(N[21]=t.createElementVNode("strong",null,"Border Colors:",-1)),t.createTextVNode(" "+t.toDisplayString(((me=(z=(ne=t.unref(a))==null?void 0:ne.borderColor)==null?void 0:z.colors)==null?void 0:me.length)||0)+" colors ",1)]),t.createElementVNode("div",gN,[N[25]||(N[25]=t.createElementVNode("h4",null,"Found Colors:",-1)),(te=(W=t.unref(a))==null?void 0:W.textColors)!=null&&te.colors?(t.openBlock(),t.createElementBlock("div",fN,[N[22]||(N[22]=t.createElementVNode("strong",null,"Text Colors:",-1)),t.createTextVNode(" "+t.toDisplayString(t.unref(a).textColors.colors.map(re=>re.name).join(", ")),1)])):t.createCommentVNode("",!0),(ce=(K=t.unref(a))==null?void 0:K.backgroundColor)!=null&&ce.colors?(t.openBlock(),t.createElementBlock("div",EN,[N[23]||(N[23]=t.createElementVNode("strong",null,"Background Colors:",-1)),t.createTextVNode(" "+t.toDisplayString(t.unref(a).backgroundColor.colors.map(re=>re.name).join(", ")),1)])):t.createCommentVNode("",!0),(fe=(ae=t.unref(a))==null?void 0:ae.borderColor)!=null&&fe.colors?(t.openBlock(),t.createElementBlock("div",bN,[N[24]||(N[24]=t.createElementVNode("strong",null,"Border Colors:",-1)),t.createTextVNode(" "+t.toDisplayString(t.unref(a).borderColor.colors.map(re=>re.name).join(", ")),1)])):t.createCommentVNode("",!0)]),t.createElementVNode("div",SN,[N[26]||(N[26]=t.createElementVNode("h4",null,"Generated CSS Variables:",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(g)(),(re,De)=>(t.openBlock(),t.createElementBlock("div",{key:De,class:"css-var"},[t.createElementVNode("strong",null,t.toDisplayString(De)+":",1),t.createTextVNode(" "+t.toDisplayString(re),1)]))),128))])])])):t.createCommentVNode("",!0),t.createElementVNode("div",hN,[N[36]||(N[36]=t.createElementVNode("div",{class:"card-header"},[t.createElementVNode("h3",null,"Theme Statistics"),t.createElementVNode("span",{class:"card-subtitle"},"Current theme details")],-1)),t.createElementVNode("div",CN,[t.createElementVNode("div",yN,[N[29]||(N[29]=t.createElementVNode("div",{class:"stat-icon"},"๐จ",-1)),t.createElementVNode("div",TN,[t.createElementVNode("span",AN,t.toDisplayString(Object.keys(t.unref(g)()).length),1),N[28]||(N[28]=t.createElementVNode("span",{class:"stat-label"},"CSS Variables",-1))])]),t.createElementVNode("div",NN,[N[31]||(N[31]=t.createElementVNode("div",{class:"stat-icon"},"๐",-1)),t.createElementVNode("div",RN,[t.createElementVNode("span",xN,t.toDisplayString(((Ie=(oe=t.unref(o))==null?void 0:oe.fontThemes)==null?void 0:Ie.length)||0),1),N[30]||(N[30]=t.createElementVNode("span",{class:"stat-label"},"Font Themes",-1))])]),t.createElementVNode("div",vN,[N[33]||(N[33]=t.createElementVNode("div",{class:"stat-icon"},"๐ฒ",-1)),t.createElementVNode("div",ON,[t.createElementVNode("span",IN,t.toDisplayString(((et=(Ze=t.unref(o))==null?void 0:Ze.cornerRadiusThemes)==null?void 0:et.length)||0),1),N[32]||(N[32]=t.createElementVNode("span",{class:"stat-label"},"Corner Radius",-1))])]),t.createElementVNode("div",DN,[N[35]||(N[35]=t.createElementVNode("div",{class:"stat-icon"},"๐ฏ",-1)),t.createElementVNode("div",wN,[t.createElementVNode("span",kN,t.toDisplayString(t.unref(c).length),1),N[34]||(N[34]=t.createElementVNode("span",{class:"stat-label"},"Color Modes",-1))])])])])])]))])}}}),[["styles",[".theme-switcher{max-width:1200px;margin:0 auto;padding:0}.theme-switcher-header{background:var(--freddy-bg-primary);border-bottom:1px solid var(--freddy-border-color);padding:1.5rem 2rem;margin-bottom:2rem}.header-content{display:flex;justify-content:space-between;align-items:center}.header-left h2{font-size:1.8rem;font-weight:700;margin:0 0 .25rem;color:var(--freddy-text-primary)}.header-left p{font-size:.95rem;color:var(--freddy-text-secondary);margin:0}.status-indicator{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;background:var(--freddy-bg-secondary);border:2px solid var(--freddy-border-color)}.status-indicator.active{background:var(--freddy-success-color);border-color:var(--freddy-success-color);color:var(--text-inverse)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--freddy-text-secondary)}.status-indicator.active .status-dot{background:var(--freddy-success-color)}.status-text{font-size:.85rem;font-weight:500}.loading-container{display:flex;justify-content:center;align-items:center;min-height:400px}.loading-content{text-align:center}.loading-spinner{position:relative;width:60px;height:60px;margin:0 auto 1.5rem}.spinner-ring{position:absolute;width:100%;height:100%;border:3px solid transparent;border-top:3px solid var(--freddy-primary-color);border-radius:50%;animation:freddy-plugin-spin 1s linear infinite}.spinner-ring:nth-child(2){width:80%;height:80%;top:10%;left:10%;animation-delay:.2s}.spinner-ring:nth-child(3){width:60%;height:60%;top:20%;left:20%;animation-delay:.4s}@keyframes freddy-plugin-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-content h3{font-size:1.3rem;font-weight:600;margin-bottom:.5rem;color:var(--freddy-text-primary)}.loading-content p{color:var(--freddy-text-secondary);margin:0}.error-container{display:flex;justify-content:center;align-items:center;min-height:400px}.error-content{text-align:center;max-width:400px}.error-icon{font-size:3rem;margin-bottom:1rem}.error-content h3{font-size:1.3rem;font-weight:600;margin-bottom:.5rem;color:var(--freddy-text-primary)}.error-content p{color:var(--freddy-text-secondary);margin-bottom:1.5rem}.retry-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--freddy-primary-color);color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease}.retry-button:hover{opacity:.9;transform:translateY(-1px)}.theme-switcher-main{display:grid;grid-template-columns:1fr 2fr;gap:2rem;padding:0 2rem}.current-theme-section{position:sticky;top:2rem;height:fit-content}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{font-size:1.2rem;font-weight:600;margin:0;color:var(--freddy-text-primary)}.theme-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.theme-badge.active{background:var(--freddy-success-color);color:var(--text-inverse)}.theme-badge.inactive{background:var(--freddy-error-color);color:var(--text-inverse)}.current-theme-card{background:var(--freddy-bg-primary);border:2px solid var(--freddy-border-color);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px var(--border-light)}.theme-info{margin-bottom:1.5rem}.theme-brand-info,.theme-mode-info{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--freddy-border-color)}.theme-mode-info{border-bottom:none}.brand-icon,.mode-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--freddy-bg-secondary);border-radius:8px;overflow:hidden}.mode-icon-text{font-size:1.5rem}.brand-details h4,.mode-details h4{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:var(--freddy-text-primary)}.brand-version,.mode-key{font-size:.8rem;color:var(--freddy-text-secondary)}.enhanced-color-preview h4{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--freddy-text-primary)}.color-preview-description{font-size:.85rem;color:var(--freddy-text-secondary);margin-bottom:.75rem}.primary-color-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:.75rem}.primary-color-item{height:100px;border-radius:12px;border:2px solid transparent;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;box-shadow:0 2px 8px var(--border-light)}.color-text-sample{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.9rem;font-weight:500;opacity:.8;pointer-events:none}.primary-color-item:hover .color-text-sample{opacity:.6}.primary-color-item:hover{transform:scale(1.02);border-color:var(--freddy-primary-color);box-shadow:0 6px 16px var(--freddy-border-color)}.color-overlay{position:absolute;bottom:0;left:0;right:0;background:#000c;color:#fff;padding:.75rem;transform:translateY(100%);transition:transform .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.primary-color-item:hover .color-overlay{transform:translateY(0)}.color-label{font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:.25rem}.color-description{font-size:.65rem;opacity:.8;margin-bottom:.5rem;display:block;line-height:1.2}.color-value{font-size:.7rem;font-family:Monaco,Menlo,monospace;opacity:.9;background:var(--bg-surface);padding:.2rem .4rem;border-radius:4px;display:inline-block}.theme-controls-section{display:flex;flex-direction:column;gap:1.5rem}.control-card{background:var(--freddy-bg-primary);border:2px solid var(--freddy-border-color);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px var(--border-light)}.card-header{margin-bottom:1.5rem}.card-header h3{font-size:1.1rem;font-weight:600;margin:0 0 .25rem;color:var(--freddy-text-primary)}.card-subtitle{font-size:.85rem;color:var(--freddy-text-secondary)}.brand-selection{display:grid;gap:1rem}.brand-option{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid var(--freddy-border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;background:transparent}.brand-option:hover{border-color:var(--freddy-primary-color);background:var(--freddy-bg-secondary)}.brand-option.active{border-color:var(--freddy-primary-color);background:var(--freddy-primary-color);color:#fff}.brand-visual{position:relative}.brand-logo{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:transparent;border-radius:8px;overflow:hidden}.brand-option.active .brand-logo{background:var(--border-light)}.brand-option.active .brand-logo :deep(.logo-image){filter:brightness(0) invert(1)}.brand-option.active{background:var(--freddy-bg-secondary);border-color:var(--freddy-primary-color);color:var(--freddy-text-primary)}.brand-option.active .brand-logo{background:var(--freddy-bg-primary)}.brand-status{position:absolute;top:-4px;right:-4px;width:20px;height:20px;background:var(--freddy-success-color);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.7rem;font-weight:700}.brand-content h4{font-size:1rem;font-weight:600;margin:0 0 .25rem}.brand-version{font-size:.8rem;opacity:.7}.mode-selection{display:grid;gap:1rem}.mode-option{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid var(--freddy-border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;background:transparent}.mode-option:hover{border-color:var(--freddy-primary-color);background:var(--freddy-bg-secondary)}.mode-option.active{border-color:var(--freddy-primary-color);background:var(--freddy-bg-secondary);color:var(--freddy-text-primary)}.mode-option.active .mode-preview{background:var(--freddy-bg-primary)}.mode-visual{position:relative}.mode-preview{width:60px;height:40px;border-radius:6px;border:2px solid var(--freddy-border-color);overflow:hidden;position:relative;background:transparent}.color-palette-preview{display:flex;flex-wrap:wrap;gap:2px;padding:4px;height:100%;align-items:center;justify-content:center}.color-dot{width:8px;height:8px;border-radius:50%;border:2px solid var(--border-light);flex-shrink:0}.mode-status{position:absolute;top:-4px;right:-4px;width:20px;height:20px;background:var(--freddy-success-color);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.7rem;font-weight:700}.mode-content{flex:1}.mode-content h4{font-size:1rem;font-weight:600;margin:0 0 .25rem}.mode-key{font-size:.8rem;opacity:.7;margin-bottom:.25rem;display:block}.default-indicator{display:inline-block;background:var(--freddy-warning-color);color:#fff;font-size:.7rem;padding:.2rem .4rem;border-radius:4px;font-weight:600}.debug-section{background:var(--freddy-bg-primary);border:2px solid var(--freddy-border-color);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px var(--border-light);margin-top:1.5rem}.debug-content{display:flex;flex-direction:column;gap:.75rem}.debug-item{font-size:.9rem;color:var(--freddy-text-secondary)}.debug-item strong{color:var(--freddy-text-primary);font-weight:500}.debug-colors h4,.debug-css-vars h4{font-size:1rem;font-weight:600;margin-bottom:.75rem;color:var(--freddy-text-primary)}.debug-colors div{margin-bottom:.5rem;font-size:.85rem;color:var(--freddy-text-secondary)}.debug-colors strong{color:var(--freddy-text-primary);font-weight:500}.css-var{font-size:.85rem;color:var(--freddy-text-secondary);margin-bottom:.25rem;font-family:Courier New,monospace}.css-var strong{color:var(--freddy-text-primary);font-weight:500}.debug-colors,.debug-css-vars{background:var(--freddy-bg-secondary);border:2px solid var(--border-light);border-radius:8px;padding:1rem;margin-top:.5rem}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.stat-item{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--freddy-bg-secondary);border-radius:8px}.stat-icon{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--freddy-bg-primary);border-radius:8px}.stat-content{flex:1}.stat-value{display:block;font-size:1.5rem;font-weight:700;color:var(--freddy-text-primary);line-height:1}.stat-label{font-size:.8rem;color:var(--freddy-text-secondary)}@media (max-width: 1024px){.theme-switcher-main{grid-template-columns:1fr;gap:1.5rem}.current-theme-section{position:static}}@media (max-width: 768px){.theme-switcher{padding:0 1rem}.theme-switcher-header{padding:1rem}.header-content{flex-direction:column;gap:1rem;text-align:center}.theme-switcher-main{padding:0 1rem}.stats-grid,.primary-color-grid{grid-template-columns:1fr}}@media (max-width: 480px){.brand-option,.mode-option{flex-direction:column;text-align:center}}"]]]),MN={class:"themable"},LN={key:0,class:"status-indicator"},PN={class:"status-content"},BN={key:0},FN={key:1},UN={class:"tab-navigation"},GN=["onClick"],VN={class:"tab-icon"},YN={class:"tab-label"},zN={class:"tab-content"},HN={key:0,class:"tab-panel"},qN={key:1,class:"tab-panel"},WN={key:2,class:"tab-panel"},KN={key:3,class:"tab-panel"},QN=x(t.defineComponent({__name:"Themable",setup(r){const e=t.ref("overview"),n=t.ref("Initializing..."),{initializeTheme:o,currentProject:a,currentColorMode:i,configuration:l}=pe(),s=[{id:"overview",label:"Overview Dashboard",icon:"๐"},{id:"comparison",label:"Color Comparison",icon:"๐จ"},{id:"tests",label:"Color Tests",icon:"๐งช"},{id:"switcher",label:"Theme Switcher",icon:"โ๏ธ"}];return t.onMounted(async()=>{try{n.value="Loading...",await o(),n.value="Ready"}catch(c){n.value="Error: "+(c instanceof Error?c.message:"Unknown error")}}),(c,d)=>(t.openBlock(),t.createElementBlock("div",MN,[d[4]||(d[4]=t.createElementVNode("div",{class:"themable-header"},[t.createElementVNode("h1",null,"Themable Design System"),t.createElementVNode("p",null,"Comprehensive tools for managing and comparing design system configurations")],-1)),n.value!=="Ready"?(t.openBlock(),t.createElementBlock("div",LN,[t.createElementVNode("div",PN,[t.createElementVNode("p",null,"Theme Service Status: "+t.toDisplayString(n.value),1),t.unref(a)?(t.openBlock(),t.createElementBlock("p",BN,"Current Project: "+t.toDisplayString(t.unref(a).name),1)):t.createCommentVNode("",!0),t.unref(i)?(t.openBlock(),t.createElementBlock("p",FN,"Current Mode: "+t.toDisplayString(t.unref(i).name),1)):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0),t.createElementVNode("div",UN,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(s,u=>t.createElementVNode("button",{key:u.id,onClick:_=>e.value=u.id,class:t.normalizeClass(["tab-button",{active:e.value===u.id}])},[t.createElementVNode("span",VN,t.toDisplayString(u.icon),1),t.createElementVNode("span",YN,t.toDisplayString(u.label),1)],10,GN)),64))]),t.createElementVNode("div",zN,[e.value==="overview"?(t.openBlock(),t.createElementBlock("div",HN,[d[0]||(d[0]=t.createElementVNode("div",{class:"panel-header"},[t.createElementVNode("h2",null,"Overview Dashboard"),t.createElementVNode("p",null,"View all color configurations, fonts, and corner radius for all brands and color modes")],-1)),t.createVNode(qi)])):t.createCommentVNode("",!0),e.value==="comparison"?(t.openBlock(),t.createElementBlock("div",qN,[d[1]||(d[1]=t.createElementVNode("div",{class:"panel-header"},[t.createElementVNode("h2",null,"Color Comparison"),t.createElementVNode("p",null,"Compare colors across different brands and color modes")],-1)),t.createVNode(s_)])):t.createCommentVNode("",!0),e.value==="tests"?(t.openBlock(),t.createElementBlock("div",WN,[d[2]||(d[2]=t.createElementVNode("div",{class:"panel-header"},[t.createElementVNode("h2",null,"Color Tests"),t.createElementVNode("p",null,"Validate that applied CSS variables match the configuration for the selected brand and mode.")],-1)),t.createVNode(l_)])):t.createCommentVNode("",!0),e.value==="switcher"?(t.openBlock(),t.createElementBlock("div",KN,[d[3]||(d[3]=t.createElementVNode("div",{class:"panel-header"},[t.createElementVNode("h2",null,"Theme Switcher"),t.createElementVNode("p",null,"Switch between different brands and color modes to customize your design system")],-1)),t.createVNode(f_)])):t.createCommentVNode("",!0)])]))}}),[["styles",[".themable{padding:0 2rem 2rem;max-width:1400px;margin:0 auto;background:var(--bg-primary, #ffffff);color:var(--text-primary, #111111);min-height:100vh}@media (prefers-color-scheme: dark){.themable{background:var(--bg-primary, #1a1a1a);color:var(--text-primary, #ffffff)}}.themable-header{text-align:center;margin-bottom:2rem}.themable-header h1{font-size:2.5rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary, #111111)}.themable-header p{font-size:1.1rem;color:var(--text-secondary, #666666)}@media (prefers-color-scheme: dark){.themable-header h1{color:var(--text-primary, #ffffff)}.themable-header p{color:var(--text-secondary, #cccccc)}}.status-indicator{background:var(--bg-secondary, #f8f9fa);border:2px solid var(--border-color, #e9ecef);border-radius:8px;padding:1rem;margin-bottom:2rem}.status-content p{margin:.5rem 0;font-family:monospace;color:var(--text-secondary, #666666)}@media (prefers-color-scheme: dark){.status-indicator{background:var(--bg-secondary, #2a2a2a);border-color:var(--border-color, #444444)}.status-content p{color:var(--text-secondary, #cccccc)}}.tab-navigation{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:1px solid var(--freddy-border-color)}.tab-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;background:none;color:var(--text-secondary, #666666);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s ease}.tab-button:hover{color:var(--text-primary, #111111);background-color:var(--bg-secondary, #f8f9fa)}.tab-button.active{color:var(--text-primary, #111111);border-bottom-color:var(--primary-color, #007bff);background-color:var(--bg-secondary, #f8f9fa)}@media (prefers-color-scheme: dark){.tab-button{color:var(--text-secondary, #cccccc)}.tab-button:hover,.tab-button.active{color:var(--text-primary, #ffffff);background-color:var(--bg-secondary, #2a2a2a)}}.tab-icon{font-size:1.2rem}.tab-label{font-weight:500}.tab-content{min-height:600px}.tab-panel{animation:fadeIn .3s ease}.panel-header{margin-bottom:2rem}.panel-header h2{font-size:1.8rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary, #111111)}.panel-header p{font-size:1rem;color:var(--text-secondary, #666666)}@media (prefers-color-scheme: dark){.panel-header h2{color:var(--text-primary, #ffffff)}.panel-header p{color:var(--text-secondary, #cccccc)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.themable{padding:1rem}.tab-navigation{flex-direction:column;gap:.5rem}.tab-button{justify-content:center}}"]]]),$N={class:"themable-overview-dashboard"},ZN=x(t.defineComponent({__name:"ThemableOverviewDashboard",setup(r){return(e,n)=>(t.openBlock(),t.createElementBlock("div",$N,[n[0]||(n[0]=t.createElementVNode("div",{class:"dashboard-header"},[t.createElementVNode("h1",null,"Themable Overview Dashboard"),t.createElementVNode("p",null,"View all color configurations, fonts, and corner radius for all brands and color modes")],-1)),t.createVNode(qi)]))}}),[["styles",[".themable-overview-dashboard{padding:2rem;max-width:1200px;margin:0 auto}.dashboard-header{margin-bottom:2rem;text-align:center}.dashboard-header h1{font-size:2.5rem;font-weight:600;margin-bottom:.5rem;color:var(--freddy-text-primary)}.dashboard-header p{font-size:1.1rem;color:var(--freddy-text-secondary);margin:0}"]]]),XN={class:"toast-wrapper"},jN={class:"toast-icon-wrapper"},JN={class:"toast-message"},eR=["onClick"],tR=x(t.defineComponent({__name:"ToastMessage",setup(r){const{toastQueue:e}=Is(),n={success:"toast-success",danger:"toast-danger",info:"toast-info"},o=l=>n[l],a=l=>{switch(l){case"success":return Wr;case"danger":return yt;case"info":return _r;default:return Wr}},i=l=>{e.value.splice(l,1)};return(l,s)=>(t.openBlock(),t.createElementBlock("div",XN,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(e),(c,d)=>(t.openBlock(),t.createElementBlock("div",{key:d,class:t.normalizeClass(["toast-item",o(c.toastType)])},[t.createElementVNode("div",jN,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a(c.toastType)),{class:"toast-icon"}))]),t.createElementVNode("span",JN,t.toDisplayString(c.message),1),t.createElementVNode("button",{class:"toast-close-button",onClick:u=>i(d)},[t.createVNode(t.unref(yt),{class:"toast-close-icon"})],8,eR)],2))),128))]))}}),[["styles",[".toast-wrapper{position:fixed;right:10px;bottom:10px;display:flex;flex-direction:column;gap:.5rem}.toast-item{display:flex;align-items:center;padding:.625rem;gap:.625rem;border-radius:10px;box-shadow:0 1px 3px var(--border-light);animation:fadeIn .3s ease}.toast-success{background-color:var(--color-success-500, var(--freddy-success-color));--toast-icon-color: var(--color-success-500, var(--freddy-success-color))}.toast-danger{background-color:var(--color-destructive-500, var(--freddy-error-color));--toast-icon-color: var(--color-destructive-500, var(--freddy-error-color))}.toast-info{background-color:var(--color-primary-500, var(--freddy-primary-color));--toast-icon-color: var(--color-primary-500, var(--freddy-primary-color))}.toast-icon-wrapper{width:1.25rem;height:1.25rem;background-color:var(--freddy-bg-secondary);border-radius:9999px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-icon{width:100%;height:100%;padding:.25rem;color:var(--toast-icon-color)}.toast-message{min-width:16rem;max-width:420px;flex:1 1 auto;font-size:1rem;font-weight:500;color:#fff}.toast-close-button{width:1rem;height:1rem;background:transparent;border:none;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-close-icon{width:100%;height:100%;padding:.125rem;color:#fff}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}"]]]),rR=x(t.defineComponent({__name:"AnimeSpaceman",props:{customClass:{type:String},customStyle:{type:[String,Object]}},setup(r){return(e,n)=>(t.openBlock(),t.createElementBlock("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"0 0 800 600",class:t.normalizeClass(["spaceman-logo",e.customClass]),style:t.normalizeStyle(e.customStyle)},[...n[0]||(n[0]=[t.createStaticVNode(`<g><defs><clipPath id="GlassClip"><path d="M380.857,346.164c-1.247,4.651-4.668,8.421-9.196,10.06c-9.332,3.377-26.2,7.817-42.301,3.5
|
|
153
|
+
This should give you a solid foundation for building **maintainable**, **type-safe** Vue 3 applications!`,sender:"assistant",timestamp:new Date(Date.now()-6e4),type:"text"}]);const w=t.ref([]),O=t.computed(()=>w.value.length>0?w.value:n.messages&&n.messages.length>0?n.messages:[]),V=async D=>{if(D.trim()){const I={id:Date.now().toString(),content:D,sender:"user",timestamp:new Date,type:"text"};w.value.push(I),o("send",D),a.value="",i.value&&Nt(i.value),await v(D)}},q=async(D,I)=>{if(D.trim()){const M=I.map($=>$.name),L={id:Date.now().toString(),content:D,sender:"user",timestamp:new Date,type:"text",context:M};w.value.push(L),o("sendWithContext",D,M),a.value="",i.value&&Nt(i.value),await v(D)}};return(D,I)=>(t.openBlock(),t.createElementBlock("div",pT,[b.value?(t.openBlock(),t.createElementBlock("div",mT,[I[13]||(I[13]=t.createElementVNode("div",{class:"chat-interface__debug-header"},"๐ Debug Info",-1)),t.createElementVNode("div",gT,[t.createElementVNode("div",null,[I[1]||(I[1]=t.createElementVNode("strong",null,"Internal Messages:",-1)),t.createTextVNode(" "+t.toDisplayString(w.value.length),1)]),t.createElementVNode("div",null,[I[2]||(I[2]=t.createElementVNode("strong",null,"Display Messages:",-1)),t.createTextVNode(" "+t.toDisplayString(O.value.length),1)]),t.createElementVNode("div",null,[I[3]||(I[3]=t.createElementVNode("strong",null,"Last Event:",-1)),t.createTextVNode(" "+t.toDisplayString(f.value),1)]),t.createElementVNode("div",null,[I[4]||(I[4]=t.createElementVNode("strong",null,"Streaming:",-1)),t.createTextVNode(" "+t.toDisplayString(C.value?"Yes":"No"),1)]),t.createElementVNode("div",null,[I[5]||(I[5]=t.createElementVNode("strong",null,"Thread ID:",-1)),t.createTextVNode(" "+t.toDisplayString(p.value||"None"),1)]),t.createElementVNode("div",fT,[t.createElementVNode("div",null,[I[6]||(I[6]=t.createElementVNode("strong",null,"๐ค Request Sent:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.requestSent?`+${E.value.requestSent-E.value.requestSent}ms`:"Not sent"),1)]),t.createElementVNode("div",null,[I[7]||(I[7]=t.createElementVNode("strong",null,"๐ฅ API Response:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.apiResponseReceived?`+${E.value.apiResponseReceived-E.value.requestSent}ms`:"Waiting..."),1)]),t.createElementVNode("div",null,[I[8]||(I[8]=t.createElementVNode("strong",null,"๐ First Stream Object:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.firstStreamObject?`+${E.value.firstStreamObject-E.value.requestSent}ms`:"Waiting..."),1)]),t.createElementVNode("div",null,[I[9]||(I[9]=t.createElementVNode("strong",null,"๐ฌ Our Stream Start:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.ourStreamStart?`+${E.value.ourStreamStart-E.value.requestSent}ms`:"Waiting..."),1)]),t.createElementVNode("div",null,[I[10]||(I[10]=t.createElementVNode("strong",null,"๐ API Stream End:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.apiStreamEnd?`+${E.value.apiStreamEnd-E.value.requestSent}ms`:"Waiting..."),1)]),t.createElementVNode("div",null,[I[11]||(I[11]=t.createElementVNode("strong",null,"โ
Our Stream End:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.ourStreamEnd?`+${E.value.ourStreamEnd-E.value.requestSent}ms`:"Waiting..."),1)]),E.value.ourStreamEnd&&E.value.requestSent?(t.openBlock(),t.createElementBlock("div",ET,[I[12]||(I[12]=t.createElementVNode("strong",null,"๐ Total Time:",-1)),t.createTextVNode(" "+t.toDisplayString(E.value.ourStreamEnd-E.value.requestSent)+"ms ",1)])):t.createCommentVNode("",!0)]),w.value.length>0?(t.openBlock(),t.createElementBlock("div",bT,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(w.value,(M,L)=>(t.openBlock(),t.createElementBlock("div",{key:M.id,class:"chat-interface__debug-message"},[t.createElementVNode("strong",null,t.toDisplayString(L)+":",1),t.createTextVNode(" "+t.toDisplayString(M.sender)+' - "'+t.toDisplayString(typeof M.content=="string"?M.content.substring(0,50):"Complex content")+'..." ',1)]))),128))])):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0),p.value?(t.openBlock(),t.createElementBlock("div",ST,[I[14]||(I[14]=t.createElementVNode("span",{class:"chat-interface__thread-icon"},"๐งต",-1)),t.createElementVNode("span",hT,"Using thread context (ID: "+t.toDisplayString(p.value)+")",1)])):t.createCommentVNode("",!0),t.createElementVNode("div",{ref_key:"messagesContainer",ref:i,class:"chat-interface__messages"},[_.value||m.value?(t.openBlock(),t.createElementBlock("div",CT,[...I[15]||(I[15]=[t.createElementVNode("div",{class:"chat-interface__loading-spinner"},null,-1),t.createElementVNode("span",{class:"chat-interface__loading-text"},"Loading assistants and models...",-1)])])):O.value.length===0?(t.openBlock(),t.createElementBlock("div",yT,[...I[16]||(I[16]=[t.createElementVNode("div",{class:"chat-interface__welcome-icon"},"๐ฌ",-1),t.createElementVNode("h3",{class:"chat-interface__welcome-title"},"Start a conversation",-1),t.createElementVNode("p",{class:"chat-interface__welcome-text"}," Type a message below to begin chatting with your AI assistant. ",-1)])])):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:2},t.renderList(O.value,M=>(t.openBlock(),t.createElementBlock("div",{key:M.id,class:"chat-interface__message-container"},[t.createVNode(Yr,{content:M.sender==="assistant"?N(M.content):M.content,variant:M.sender,timestamp:M.timestamp,type:M.type,context:M.context,size:n.size,markdown:!1},null,8,["content","variant","timestamp","type","context","size"])]))),128))],512),t.createElementVNode("div",TT,[t.createVNode(Ns,{ref_key:"chatInputRef",ref:l,modelValue:a.value,"onUpdate:modelValue":I[0]||(I[0]=M=>a.value=M),placeholder:D.placeholder,size:n.size,assistants:d.value,models:u.value,onSend:V,onSendWithContext:q},null,8,["modelValue","placeholder","size","assistants","models"])])]))}}),[["styles",[".chat-interface{display:flex;flex-direction:column;height:100%;width:100%;background:var(--freddy-bg-primary);border-radius:12px;box-shadow:0 4px 6px -1px var(--border-light);overflow:visible;position:relative}.chat-interface__debug-panel{background:#1f2937;color:#f9fafb;border-bottom:2px solid #374151;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:11px;max-height:200px;overflow-y:auto}.chat-interface__debug-header{background:#111827;padding:8px 12px;font-weight:700;border-bottom:1px solid #374151}.chat-interface__debug-content{padding:8px 12px;line-height:1.4}.chat-interface__debug-content>div{margin-bottom:4px}.chat-interface__debug-messages{margin-top:8px;padding-top:8px;border-top:1px solid #374151;max-height:100px;overflow-y:auto}.chat-interface__debug-message{font-size:10px;margin-bottom:2px;color:#d1d5db}.chat-interface__debug-timing{margin-top:8px;padding-top:8px;border-top:1px solid #374151;font-size:10px;line-height:1.3}.chat-interface__debug-timing>div{margin-bottom:2px}.chat-interface__thread-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#f0f9ff;border-bottom:1px solid #bae6fd;font-size:12px;color:#0369a1}.chat-interface__thread-icon{font-size:14px}.chat-interface__thread-text{font-weight:500}.chat-interface__loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:24px;color:#6b7280;font-size:14px}.chat-interface__loading-spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:freddy-plugin-spin 1s linear infinite}.chat-interface__loading-text{font-weight:500}@keyframes freddy-plugin-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.chat-interface__welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center;color:#6b7280}.chat-interface__welcome-icon{font-size:48px;margin-bottom:16px}.chat-interface__welcome-title{font-size:20px;font-weight:600;color:#374151;margin:0 0 8px}.chat-interface__welcome-text{font-size:14px;margin:0;line-height:1.5}.chat-interface__messages{flex:1;overflow-y:auto;overflow-x:visible;padding:32px;min-height:400px}@media (max-width: 768px){.chat-interface__messages{padding:20px 8px}}.chat-interface__message-container{margin-bottom:20px}.chat-interface__message-container:last-child{margin-bottom:0}.chat-interface__input-bar{padding:0 24px 12px;background:transparent!important;overflow:visible}"]]]),RT={class:"freddy-plugin-color-comparison"},xT={key:0,class:"freddy-plugin-loading"},vT={key:1,class:"freddy-plugin-error"},OT={key:2,class:"color-comparison__content"},IT={class:"color-comparison__selection-controls"},DT={class:"freddy-plugin-control-group"},wT=["value"],kT={class:"freddy-plugin-control-group"},MT=["disabled"],LT=["value"],PT={class:"freddy-plugin-control-group"},BT=["value"],FT={class:"freddy-plugin-control-group"},UT=["disabled"],GT=["value"],VT={class:"color-comparison__section-filter"},YT=["value"],zT={key:0,class:"color-comparison__grid"},HT={class:"color-comparison__header-row"},qT={class:"color-comparison__brand1-header"},WT={class:"color-comparison__brand2-header"},KT={class:"color-comparison__color-name"},QT={class:"color-comparison__color-display color-comparison__brand1"},$T=["title"],ZT={class:"color-comparison__color-value"},XT={class:"color-comparison__color-display color-comparison__brand2"},jT=["title"],JT={class:"color-comparison__color-value"},eA={class:"color-comparison__difference-indicator"},tA={key:1,class:"color-comparison__no-comparison"},rA={key:1,class:"color-comparison__no-comparison-message"},nA={key:2,class:"color-comparison__selection-prompt"},s_=x(t.defineComponent({__name:"ColorComparison",setup(r){const{currentProject:e,currentColorMode:n}=pe(),o=t.ref(null),a=t.ref(!0),i=t.ref(null),l=t.ref(""),s=t.ref(""),c=t.ref(""),d=t.ref(""),u=t.ref(""),_=t.ref([]),m=t.computed(()=>{var T;if(!((T=o.value)!=null&&T.projects))return[];const v=new Set;return o.value.projects.forEach(N=>{var w;(w=N.colorModes)==null||w.forEach(O=>{var V;(V=O.colorConfig)!=null&&V.sections&&Object.keys(O.colorConfig.sections).forEach(q=>{v.add(q)})})}),Array.from(v).sort()}),g=v=>{var N;if(!((N=o.value)!=null&&N.projects))return[];const T=o.value.projects.find(w=>w.id===v);return(T==null?void 0:T.colorModes)||[]},p=v=>{var N;if(!((N=o.value)!=null&&N.projects))return"";const T=o.value.projects.find(w=>w.id===v);return(T==null?void 0:T.name)||""},b=v=>{if(!l.value&&!s.value)return"";const N=[...g(l.value),...g(s.value)].find(w=>w.id===v);return(N==null?void 0:N.name)||""},f=v=>v.replace(/([A-Z])/g," $1").replace(/^./,T=>T.toUpperCase()).trim(),C=(v,T,N)=>{var V,q,D,I,M;if(!((V=o.value)!=null&&V.projects))return"";const w=o.value.projects.find(L=>L.id===v);if(!w)return"";const O=(q=w.colorModes)==null?void 0:q.find(L=>L.id===T);if(!((D=O==null?void 0:O.colorConfig)!=null&&D.sections))return"";if(u.value){const L=O.colorConfig.sections[u.value];return(I=L==null?void 0:L.colors)!=null&&I[N]?L.colors[N].value:""}for(const L of Object.values(O.colorConfig.sections))if((M=L.colors)!=null&&M[N])return L.colors[N].value;return""},E=()=>{var T;if(!((T=o.value)!=null&&T.projects))return[];const v=new Set;return o.value.projects.forEach(N=>{var w;(w=N.colorModes)==null||w.forEach(O=>{var V;(V=O.colorConfig)!=null&&V.sections&&Object.values(O.colorConfig.sections).forEach(q=>{q.colors&&Object.keys(q.colors).forEach(D=>{v.add(D)})})})}),Array.from(v).sort()},S=()=>{if(!l.value||!s.value||!c.value||!d.value){_.value=[];return}const v=E(),T=[];v.forEach(N=>{const w=C(l.value,c.value,N),O=C(s.value,d.value,N);(w||O)&&T.push({colorName:N,color1:w,color2:O})}),_.value=T},y=(v,T)=>!v||!T?"":v.toLowerCase()===T.toLowerCase()?"same":"different",R=(v,T)=>!v||!T?"":v.toLowerCase()===T.toLowerCase()?"Same":"Different",A=async()=>{try{a.value=!0,i.value=null;const v=await fetch("/src/dist/clean-configuration.json");if(!v.ok)throw new Error(`Failed to load configuration: ${v.statusText}`);const T=await v.json();o.value=T}catch(v){i.value=v instanceof Error?v.message:"Unknown error occurred"}finally{a.value=!1}};return t.onMounted(()=>{A()}),(v,T)=>{var N,w;return t.openBlock(),t.createElementBlock("div",RT,[a.value?(t.openBlock(),t.createElementBlock("div",xT,[...T[5]||(T[5]=[t.createElementVNode("div",{class:"freddy-plugin-spinner"},null,-1),t.createElementVNode("p",null,"Loading configuration data...",-1)])])):i.value?(t.openBlock(),t.createElementBlock("div",vT,[T[6]||(T[6]=t.createElementVNode("h3",null,"Error loading configuration",-1)),t.createElementVNode("p",null,t.toDisplayString(i.value),1)])):(t.openBlock(),t.createElementBlock("div",OT,[t.createElementVNode("div",IT,[t.createElementVNode("div",DT,[T[8]||(T[8]=t.createElementVNode("label",null,"Brand 1:",-1)),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":T[0]||(T[0]=O=>l.value=O),onChange:S},[T[7]||(T[7]=t.createElementVNode("option",{value:""},"Select Brand",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList((N=o.value)==null?void 0:N.projects,O=>(t.openBlock(),t.createElementBlock("option",{key:O.id,value:O.id},t.toDisplayString(O.name),9,wT))),128))],544),[[t.vModelSelect,l.value]])]),t.createElementVNode("div",kT,[T[10]||(T[10]=t.createElementVNode("label",null,"Mode 1:",-1)),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":T[1]||(T[1]=O=>c.value=O),onChange:S,disabled:!l.value},[T[9]||(T[9]=t.createElementVNode("option",{value:""},"Select Mode",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g(l.value),O=>(t.openBlock(),t.createElementBlock("option",{key:O.id,value:O.id},t.toDisplayString(O.name),9,LT))),128))],40,MT),[[t.vModelSelect,c.value]])]),T[15]||(T[15]=t.createElementVNode("div",{class:"color-comparison__vs-divider"},"VS",-1)),t.createElementVNode("div",PT,[T[12]||(T[12]=t.createElementVNode("label",null,"Brand 2:",-1)),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":T[2]||(T[2]=O=>s.value=O),onChange:S},[T[11]||(T[11]=t.createElementVNode("option",{value:""},"Select Brand",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList((w=o.value)==null?void 0:w.projects,O=>(t.openBlock(),t.createElementBlock("option",{key:O.id,value:O.id},t.toDisplayString(O.name),9,BT))),128))],544),[[t.vModelSelect,s.value]])]),t.createElementVNode("div",FT,[T[14]||(T[14]=t.createElementVNode("label",null,"Mode 2:",-1)),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":T[3]||(T[3]=O=>d.value=O),onChange:S,disabled:!s.value},[T[13]||(T[13]=t.createElementVNode("option",{value:""},"Select Mode",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g(s.value),O=>(t.openBlock(),t.createElementBlock("option",{key:O.id,value:O.id},t.toDisplayString(O.name),9,GT))),128))],40,UT),[[t.vModelSelect,d.value]])])]),t.createElementVNode("div",VT,[T[17]||(T[17]=t.createElementVNode("label",null,"Filter by Color Section:",-1)),t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":T[4]||(T[4]=O=>u.value=O),onChange:S},[T[16]||(T[16]=t.createElementVNode("option",{value:""},"All Sections",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m.value,O=>(t.openBlock(),t.createElementBlock("option",{key:O,value:O},t.toDisplayString(f(O)),9,YT))),128))],544),[[t.vModelSelect,u.value]])]),_.value.length>0?(t.openBlock(),t.createElementBlock("div",zT,[t.createElementVNode("div",HT,[T[18]||(T[18]=t.createElementVNode("div",{class:"color-comparison__color-name-header"},"Color Name",-1)),t.createElementVNode("div",qT,t.toDisplayString(p(l.value))+" - "+t.toDisplayString(b(c.value)),1),t.createElementVNode("div",WT,t.toDisplayString(p(s.value))+" - "+t.toDisplayString(b(d.value)),1),T[19]||(T[19]=t.createElementVNode("div",{class:"color-comparison__difference-header"},"Difference",-1))]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(_.value,O=>(t.openBlock(),t.createElementBlock("div",{key:O.colorName,class:"color-comparison__row"},[t.createElementVNode("div",KT,t.toDisplayString(O.colorName),1),t.createElementVNode("div",QT,[t.createElementVNode("div",{class:"color-comparison__color-swatch",style:t.normalizeStyle({backgroundColor:O.color1}),title:`${O.colorName}: ${O.color1}`},null,12,$T),t.createElementVNode("div",ZT,t.toDisplayString(O.color1),1)]),t.createElementVNode("div",XT,[t.createElementVNode("div",{class:"color-comparison__color-swatch",style:t.normalizeStyle({backgroundColor:O.color2}),title:`${O.colorName}: ${O.color2}`},null,12,jT),t.createElementVNode("div",JT,t.toDisplayString(O.color2),1)]),t.createElementVNode("div",eA,[O.color1&&O.color2?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["color-comparison__difference-badge",y(O.color1,O.color2)])},t.toDisplayString(R(O.color1,O.color2)),3)):(t.openBlock(),t.createElementBlock("div",tA,"-"))])]))),128))])):l.value&&s.value?(t.openBlock(),t.createElementBlock("div",rA,[...T[20]||(T[20]=[t.createElementVNode("p",null,"No matching colors found for comparison.",-1),t.createElementVNode("p",null,"Try selecting different brands, modes, or color sections.",-1)])])):(t.openBlock(),t.createElementBlock("div",nA,[...T[21]||(T[21]=[t.createElementVNode("div",{class:"color-comparison__prompt-icon"},"๐จ",-1),t.createElementVNode("h3",null,"Select Brands and Modes",-1),t.createElementVNode("p",null," Choose two different brands and their color modes to start comparing colors. ",-1)])]))]))])}}}),[["styles",[".freddy-plugin-color-comparison{padding:2rem;max-width:1400px;margin:0 auto}.freddy-plugin-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.freddy-plugin-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:freddy-plugin-spin 1s linear infinite;margin-bottom:16px}@keyframes freddy-plugin-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.freddy-plugin-error{background:#fee;border:2px solid #fcc;border-radius:8px;padding:20px;text-align:center}.error h3{color:#c33;margin-bottom:8px}.color-comparison__selection-controls{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding:1.5rem;background:var(--freddy-bg-secondary);border-radius:12px;flex-wrap:wrap}.freddy-plugin-control-group{display:flex;flex-direction:column;gap:.5rem;min-width:200px}.freddy-plugin-control-group label{font-weight:600;color:var(--freddy-text-primary);font-size:.9rem}.freddy-plugin-control-group select{padding:.75rem;border:2px solid var(--freddy-border-color);border-radius:6px;background:var(--freddy-bg-primary);color:var(--freddy-text-primary);font-size:.9rem}.freddy-plugin-control-group select:disabled{opacity:.6;cursor:not-allowed}.color-comparison__vs-divider{font-weight:700;font-size:1.2rem;color:var(--freddy-text-secondary);padding:0 1rem}.color-comparison__section-filter{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding:1rem;background:var(--freddy-bg-secondary);border-radius:8px}.color-comparison__section-filter label{font-weight:600;color:var(--freddy-text-primary)}.color-comparison__section-filter select{padding:.5rem;border:2px solid var(--freddy-border-color);border-radius:4px;background:var(--freddy-bg-primary);color:var(--freddy-text-primary);min-width:200px}.color-comparison__grid{background:var(--freddy-bg-primary);border:2px solid var(--freddy-border-color);border-radius:12px;overflow:hidden}.color-comparison__header-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:1rem;padding:1rem;background:var(--freddy-bg-secondary);font-weight:600;color:var(--freddy-text-primary);border-bottom:1px solid var(--freddy-border-color)}.color-comparison__row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:1rem;padding:1rem;border-bottom:1px solid var(--freddy-border-color);align-items:center}.color-comparison__row:last-child{border-bottom:none}.color-comparison__color-name{font-weight:600;color:var(--freddy-text-primary)}.color-comparison__color-display{display:flex;flex-direction:column;align-items:center;gap:.5rem}.color-comparison__color-swatch{width:60px;height:40px;border-radius:6px;border:2px solid var(--freddy-border-color);cursor:pointer;transition:transform .2s ease}.color-comparison__color-swatch:hover{transform:scale(1.05)}.color-comparison__color-value{font-size:.8rem;color:var(--freddy-text-secondary);text-align:center;word-break:break-all}.color-comparison__difference-indicator{display:flex;justify-content:center}.color-comparison__difference-badge{padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600}.color-comparison__difference-badge.same{background:#d1fae5;color:#065f46}.color-comparison__difference-badge.different{background:#fef3c7;color:#92400e}.color-comparison__no-comparison{color:var(--freddy-text-secondary);font-style:italic}.color-comparison__no-comparison-message{text-align:center;padding:3rem;color:var(--freddy-text-secondary)}.color-comparison__selection-prompt{text-align:center;padding:4rem 2rem;color:var(--freddy-text-secondary)}.color-comparison__prompt-icon{font-size:4rem;margin-bottom:1rem}.color-comparison__selection-prompt h3{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--freddy-text-primary)}@media (max-width: 768px){.freddy-plugin-color-comparison{padding:1rem}.color-comparison__selection-controls{flex-direction:column;align-items:stretch}.color-comparison__vs-divider{text-align:center;padding:.5rem 0}.color-comparison__header-row,.color-comparison__row{grid-template-columns:1fr;gap:.5rem}.color-comparison__header-row{display:none}.color-comparison__row{border:2px solid var(--freddy-border-color);border-radius:8px;margin-bottom:1rem}.color-comparison__color-name{font-weight:700;text-align:center;padding-bottom:.5rem;border-bottom:1px solid var(--freddy-border-color)}}"]]]),oA={class:"freddy-plugin-color-validation"},aA={class:"freddy-plugin-header"},iA={class:"freddy-plugin-summary"},sA={class:"freddy-plugin-meta"},lA={key:0,class:"freddy-plugin-empty"},cA={key:1,class:"freddy-plugin-categories"},dA={class:"freddy-plugin-category freddy-plugin-compatibility-tests"},uA={class:"freddy-plugin-caret"},_A={class:"freddy-plugin-items"},pA={class:"freddy-plugin-test-header"},mA={class:"freddy-plugin-test-name"},gA={class:"freddy-plugin-test-contrast"},fA={class:"freddy-plugin-test-status"},EA={class:"freddy-plugin-test-details"},bA={class:"freddy-plugin-color-info"},SA={class:"freddy-plugin-color-value"},hA={class:"freddy-plugin-color-info"},CA={class:"freddy-plugin-color-value"},yA=["onClick"],TA={class:"freddy-plugin-caret"},AA={class:"freddy-plugin-title"},NA={class:"freddy-plugin-items"},RA={class:"freddy-plugin-swatches"},xA={class:"freddy-plugin-info"},vA={class:"freddy-plugin-name"},OA={class:"freddy-plugin-var"},IA={class:"freddy-plugin-values"},DA={class:"freddy-plugin-expected"},wA={class:"freddy-plugin-actual"},kA={class:"freddy-plugin-status"},l_=x(t.defineComponent({__name:"ColorValidation",setup(r){const{currentProject:e,currentColorMode:n}=pe(),o=t.reactive({compatibility:!0,text:!0,background:!0,border:!0,foreground:!1,utility:!1}),a=E=>!!o[E],i=E=>o[E]=!o[E],l=E=>E.toLowerCase().replace(/\s+/g,"-").replace(/[^a-z0-9-]/g,"").replace(/-+/g,"-").replace(/^-|-$/g,""),s=(E,S)=>`--${E}-${l(S)}`;function c(E){return getComputedStyle(document.documentElement).getPropertyValue(E).trim()}function d(E){const S=E.match(/#([0-9a-f]{3}|[0-9a-f]{6})/i);return S?`#${S[1].toLowerCase()}`:E.toLowerCase()}const u=t.computed(()=>{var R,A,v,T,N;const E=n.value;if(!E)return[];const S=[],y=(w,O,V,q)=>{const D=V.map(M=>{const L=s(q,M.name),$=d(M.value),le=d(c(L));return{name:M.name,varName:L,expected:$,actual:le,pass:$===le}}),I=D.filter(M=>M.pass).length;S.push({key:w,title:O,items:D,passed:I,total:D.length})};return y("text","Text Colors",[...((R=E.textColors)==null?void 0:R.colors)||[]],"text"),y("background","Background Colors",[...((A=E.backgroundColor)==null?void 0:A.colors)||[]],"bg"),y("border","Border Colors",[...((v=E.borderColor)==null?void 0:v.colors)||[]],"border"),y("foreground","Foreground Colors",[...((T=E.foregroundColors)==null?void 0:T.colors)||[]],"fg"),y("utility","Utility Colors",[...((N=E.utilityColors)==null?void 0:N.colors)||[]],"utility"),S}),_=t.computed(()=>{const E=u.value.flatMap(S=>S.items);return{total:E.length,passed:E.filter(S=>S.pass).length}});function m(E){const S=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(E);return S?{r:parseInt(S[1],16),g:parseInt(S[2],16),b:parseInt(S[3],16)}:null}function g(E,S,y){const[R,A,v]=[E,S,y].map(T=>(T=T/255,T<=.03928?T/12.92:Math.pow((T+.055)/1.055,2.4)));return .2126*R+.7152*A+.0722*v}function p(E,S){const y=Math.max(E,S),R=Math.min(E,S);return(y+.05)/(R+.05)}function b(E,S){const y=m(E),R=m(S);if(!y||!R)return 0;const A=g(y.r,y.g,y.b),v=g(R.r,R.g,R.b);return p(A,v)}const f=t.computed(()=>{var T,N;const E=n.value;if(!E)return[];const S=[],y=((T=E.textColors)==null?void 0:T.colors)||[],R=((N=E.backgroundColor)==null?void 0:N.colors)||[];if(y.length===0||R.length===0)return[];const A=y.slice(0,8),v=R.slice(0,6);return A.forEach(w=>{v.forEach(O=>{if(w.value===O.value)return;const V=b(w.value,O.value),q=V>=4.5;S.push({id:`${w.name}-on-${O.name}`,name:`${w.name} on ${O.name}`,textColor:w.value,backgroundColor:O.value,contrastRatio:V,pass:q})})}),S}),C=t.computed(()=>{const E=f.value;return{total:E.length,passed:E.filter(S=>S.pass).length}});return t.watch(()=>{var E;return(E=n.value)==null?void 0:E.id},async()=>{await t.nextTick()}),(E,S)=>{var y,R;return t.openBlock(),t.createElementBlock("div",oA,[t.createElementVNode("div",aA,[S[3]||(S[3]=t.createElementVNode("h3",null,"๐งช Color Tests",-1)),S[4]||(S[4]=t.createElementVNode("p",null," Verifies that CSS variables applied to the document match the current configuration for the selected brand and mode. ",-1)),t.createElementVNode("div",iA,[t.createElementVNode("div",{class:t.normalizeClass(["freddy-plugin-badge",{"freddy-plugin-pass":_.value.passed===_.value.total,"freddy-plugin-fail":_.value.passed!==_.value.total}])},t.toDisplayString(_.value.passed)+" / "+t.toDisplayString(_.value.total)+" passed ",3),t.createElementVNode("div",sA,[S[1]||(S[1]=t.createTextVNode(" Brand: ",-1)),t.createElementVNode("strong",null,t.toDisplayString(((y=t.unref(e))==null?void 0:y.name)||"n/a"),1),S[2]||(S[2]=t.createTextVNode(" โข Mode: ",-1)),t.createElementVNode("strong",null,t.toDisplayString(((R=t.unref(n))==null?void 0:R.name)||"n/a"),1)])])]),t.unref(n)?(t.openBlock(),t.createElementBlock("div",cA,[t.createElementVNode("div",dA,[t.createElementVNode("div",{class:"freddy-plugin-category-header",onClick:S[0]||(S[0]=A=>i("compatibility"))},[t.createElementVNode("span",uA,t.toDisplayString(a("compatibility")?"โผ":"โถ"),1),S[5]||(S[5]=t.createElementVNode("span",{class:"freddy-plugin-title"},"๐จ Color Compatibility Tests",-1)),t.createElementVNode("span",{class:t.normalizeClass(["freddy-plugin-count",{"freddy-plugin-pass":C.value.passed===C.value.total,"freddy-plugin-fail":C.value.passed!==C.value.total}])},t.toDisplayString(C.value.passed)+" / "+t.toDisplayString(C.value.total),3)]),t.withDirectives(t.createElementVNode("div",_A,[S[7]||(S[7]=t.createElementVNode("div",{class:"freddy-plugin-compatibility-intro"},[t.createElementVNode("p",null," Tests text readability on different background colors. A combination passes if the contrast ratio meets WCAG AA standards (4.5:1 for normal text, 3:1 for large text). ")],-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,A=>(t.openBlock(),t.createElementBlock("div",{key:A.id,class:t.normalizeClass(["freddy-plugin-compatibility-test",{"freddy-plugin-pass":A.pass,"freddy-plugin-fail":!A.pass}])},[t.createElementVNode("div",pA,[t.createElementVNode("div",mA,t.toDisplayString(A.name),1),t.createElementVNode("div",gA," Contrast: "+t.toDisplayString(A.contrastRatio.toFixed(2))+":1 ",1),t.createElementVNode("div",fA,t.toDisplayString(A.pass?"PASS":"FAIL"),1)]),t.createElementVNode("div",{class:"freddy-plugin-test-preview",style:t.normalizeStyle({backgroundColor:A.backgroundColor,color:A.textColor})},[...S[6]||(S[6]=[t.createElementVNode("div",{class:"freddy-plugin-preview-text"},[t.createElementVNode("span",{class:"freddy-plugin-large-text"},"Large Text Sample (18pt+)"),t.createElementVNode("span",{class:"freddy-plugin-normal-text"},"Normal Text Sample (16pt)"),t.createElementVNode("span",{class:"freddy-plugin-small-text"},"Small Text Sample (14pt)")],-1)])],4),t.createElementVNode("div",EA,[t.createElementVNode("div",bA,[t.createElementVNode("div",{class:"freddy-plugin-color-swatch",style:t.normalizeStyle({backgroundColor:A.textColor}),title:"Text Color"},null,4),t.createElementVNode("span",SA,t.toDisplayString(A.textColor),1)]),t.createElementVNode("div",hA,[t.createElementVNode("div",{class:"freddy-plugin-color-swatch",style:t.normalizeStyle({backgroundColor:A.backgroundColor}),title:"Background Color"},null,4),t.createElementVNode("span",CA,t.toDisplayString(A.backgroundColor),1)])])],2))),128))],512),[[t.vShow,a("compatibility")]])]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u.value,A=>(t.openBlock(),t.createElementBlock("div",{key:A.key,class:"freddy-plugin-category"},[t.createElementVNode("div",{class:"freddy-plugin-category-header",onClick:v=>i(A.key)},[t.createElementVNode("span",TA,t.toDisplayString(a(A.key)?"โผ":"โถ"),1),t.createElementVNode("span",AA,t.toDisplayString(A.title),1),t.createElementVNode("span",{class:t.normalizeClass(["freddy-plugin-count",{"freddy-plugin-pass":A.passed===A.total,"freddy-plugin-fail":A.passed!==A.total}])},t.toDisplayString(A.passed)+" / "+t.toDisplayString(A.total),3)],8,yA),t.withDirectives(t.createElementVNode("div",NA,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(A.items,v=>(t.openBlock(),t.createElementBlock("div",{key:v.varName+v.name,class:t.normalizeClass(["freddy-plugin-item",{"freddy-plugin-pass":v.pass,"freddy-plugin-fail":!v.pass}])},[t.createElementVNode("div",RA,[t.createElementVNode("div",{class:"freddy-plugin-swatch freddy-plugin-expected",style:t.normalizeStyle({backgroundColor:v.expected}),title:"expected"},null,4),t.createElementVNode("div",{class:"freddy-plugin-swatch freddy-plugin-actual",style:t.normalizeStyle({backgroundColor:v.actual}),title:"actual"},null,4)]),t.createElementVNode("div",xA,[t.createElementVNode("div",vA,t.toDisplayString(v.name),1),t.createElementVNode("div",OA,t.toDisplayString(v.varName),1)]),t.createElementVNode("div",IA,[t.createElementVNode("div",DA,t.toDisplayString(v.expected),1),t.createElementVNode("div",wA,t.toDisplayString(v.actual),1)]),t.createElementVNode("div",kA,t.toDisplayString(v.pass?"PASS":"FAIL"),1)],2))),128))],512),[[t.vShow,a(A.key)]])]))),128))])):(t.openBlock(),t.createElementBlock("div",lA," No color mode selected. "))])}}}),[["styles",[".freddy-plugin-color-validation{background:var(--freddy-bg-primary);color:var(--freddy-text-primary);border:2px solid var(--freddy-border-color);border-radius:12px;padding:1rem}.freddy-plugin-header h3{margin:0 0 .25rem}.freddy-plugin-header p{margin:0 0 .5rem;color:var(--freddy-text-secondary)}.freddy-plugin-summary{display:flex;align-items:center;gap:.75rem}.freddy-plugin-badge{padding:.2rem .5rem;border-radius:8px;font-weight:600;font-size:.85rem}.freddy-plugin-badge.freddy-plugin-pass{background:var(--success-color, #22c55e);color:#fff}.freddy-plugin-badge.freddy-plugin-fail{background:var(--error-color, #ef4444);color:#fff}.freddy-plugin-meta{color:var(--freddy-text-secondary)}.freddy-plugin-empty{padding:1rem;color:var(--freddy-text-secondary)}.freddy-plugin-category{border:2px solid var(--freddy-border-color);border-radius:10px;margin-top:1rem;overflow:hidden}.freddy-plugin-category-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--freddy-bg-secondary);cursor:pointer}.freddy-plugin-category-header .freddy-plugin-title{font-weight:600}.freddy-plugin-category-header .freddy-plugin-count{margin-left:auto;font-weight:600}.freddy-plugin-category-header .freddy-plugin-count.freddy-plugin-pass{color:var(--success-color, #22c55e)}.freddy-plugin-category-header .freddy-plugin-count.freddy-plugin-fail{color:var(--error-color, #ef4444)}.freddy-plugin-items{border-top:1px solid var(--freddy-border-color)}.freddy-plugin-item{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:.75rem;padding:.5rem 1rem;border-top:1px solid var(--border-light)}.freddy-plugin-item:first-child{border-top:none}.freddy-plugin-item.freddy-plugin-pass{background:color-mix(in oklab,var(--success-color, #22c55e) 8%,transparent)}.freddy-plugin-item.freddy-plugin-fail{background:color-mix(in oklab,var(--error-color, #ef4444) 8%,transparent)}.freddy-plugin-swatches{display:flex;gap:.25rem}.freddy-plugin-swatch{width:28px;height:20px;border:2px solid var(--freddy-border-color);border-radius:4px}.freddy-plugin-info .freddy-plugin-name{font-weight:600}.freddy-plugin-info .freddy-plugin-var{font-family:Monaco,Menlo,monospace;font-size:.8rem;color:var(--freddy-text-secondary)}.freddy-plugin-values{text-align:right;font-family:Monaco,Menlo,monospace;font-size:.85rem}.freddy-plugin-status{width:60px;text-align:right;font-weight:700}.freddy-plugin-compatibility-intro{padding:1rem;background:var(--freddy-bg-secondary);border-bottom:1px solid var(--freddy-border-color)}.compatibility-intro p{margin:0;color:var(--freddy-text-secondary);font-size:.9rem}.freddy-plugin-compatibility-test{border-bottom:1px solid var(--border-light);padding:1rem}.freddy-plugin-compatibility-test:last-child{border-bottom:none}.compatibility-test.freddy-plugin-pass{background:color-mix(in oklab,var(--success-color, #22c55e) 4%,transparent)}.compatibility-test.freddy-plugin-fail{background:color-mix(in oklab,var(--error-color, #ef4444) 4%,transparent)}.freddy-plugin-test-header{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.freddy-plugin-test-name{font-weight:600;flex:1}.freddy-plugin-test-contrast{font-family:Monaco,Menlo,monospace;font-size:.85rem;color:var(--freddy-text-secondary)}.freddy-plugin-test-status{font-weight:700;font-size:.85rem;padding:.2rem .5rem;border-radius:4px;min-width:50px;text-align:center}.compatibility-test.pass .freddy-plugin-test-status{background:var(--success-color, #22c55e);color:#fff}.compatibility-test.fail .freddy-plugin-test-status{background:var(--error-color, #ef4444);color:#fff}.freddy-plugin-test-preview{padding:1rem;border-radius:8px;margin-bottom:.75rem;border:2px solid var(--freddy-border-color)}.freddy-plugin-preview-text{display:flex;flex-direction:column;gap:.5rem}.preview-text .freddy-plugin-large-text{font-size:1.25rem;font-weight:600}.preview-text .freddy-plugin-normal-text{font-size:1rem}.preview-text .freddy-plugin-small-text{font-size:.875rem}.freddy-plugin-test-details{display:flex;gap:1rem;align-items:center}.freddy-plugin-color-info{display:flex;align-items:center;gap:.5rem}.freddy-plugin-color-swatch{width:24px;height:24px;border-radius:4px;border:2px solid var(--freddy-border-color)}.freddy-plugin-color-value{font-family:Monaco,Menlo,monospace;font-size:.85rem;color:var(--freddy-text-secondary)}"]]]),MA={class:"color-dashboard"},LA={class:"stats-grid"},PA={class:"stat-card"},BA={class:"stat-number"},FA={class:"stat-card"},UA={class:"stat-number"},GA={class:"stat-card"},VA={class:"stat-number"},YA={class:"brands-container"},zA={class:"brand-header"},HA={class:"brand-title"},qA={class:"brand-info"},WA={class:"brand-stat"},KA={class:"brand-stat-value"},QA={class:"brand-stat"},$A={class:"brand-stat-value"},ZA={class:"modes-container"},XA={class:"mode-header"},jA={class:"mode-title"},JA={class:"mode-id"},e9={class:"color-categories"},t9={class:"category-section"},r9={class:"category-count"},n9={class:"category-content"},o9={class:"color-grid"},a9=["onClick"],i9={class:"color-info"},s9={class:"color-name"},l9={class:"color-value"},c9={class:"category-section"},d9={class:"category-count"},u9={class:"category-content"},_9={class:"color-grid"},p9=["onClick"],m9={class:"color-info"},g9={class:"color-name"},f9={class:"color-value"},E9={class:"category-section"},b9={class:"category-count"},S9={class:"category-content"},h9={class:"color-grid"},C9=["onClick"],y9={class:"color-info"},T9={class:"color-name"},A9={class:"color-value"},N9={key:0,class:"category-section"},R9={class:"category-count"},x9={class:"category-content"},v9={class:"color-grid"},O9=["onClick"],I9={class:"color-info"},D9={class:"color-name"},w9={class:"color-value"},k9={key:1,class:"category-section"},M9={class:"category-count"},L9={class:"category-content"},P9={class:"color-grid"},B9=["onClick"],F9={class:"color-info"},U9={class:"color-name"},G9={class:"color-value"},qi=x(t.defineComponent({__name:"ConfigurationDashboard",setup(r){const{configuration:e}=pe(),n=t.computed(()=>{var d;return((d=e.value)==null?void 0:d.projects)||[]}),o=t.computed(()=>n.value.length),a=t.computed(()=>n.value.reduce((d,u)=>d+u.colorModes.length,0)),i=t.computed(()=>n.value.reduce((d,u)=>d+l(u),0));function l(d){return d.colorModes.reduce((u,_)=>u+_.textColors.colors.length+_.backgroundColor.colors.length+_.borderColor.colors.length+_.foregroundColors.colors.length+_.utilityColors.colors.length,0)}function s(d){const u=d.target,_=u.querySelector(".category-toggle"),m=u.nextElementSibling;m.classList.contains("expanded")?(m.classList.remove("expanded"),_.classList.remove("expanded"),_.textContent="โถ"):(m.classList.add("expanded"),_.classList.add("expanded"),_.textContent="โผ")}function c(d){navigator.clipboard.writeText(d).then(()=>{})}return(d,u)=>(t.openBlock(),t.createElementBlock("div",MA,[u[20]||(u[20]=t.createElementVNode("div",{class:"dashboard-header"},[t.createElementVNode("h1",null,"๐จ Color Dashboard"),t.createElementVNode("p",null,"Comprehensive view of all colors from the theme configuration")],-1)),t.createElementVNode("div",LA,[t.createElementVNode("div",PA,[t.createElementVNode("div",BA,t.toDisplayString(o.value),1),u[0]||(u[0]=t.createElementVNode("div",{class:"stat-label"},"Brands",-1))]),t.createElementVNode("div",FA,[t.createElementVNode("div",UA,t.toDisplayString(a.value),1),u[1]||(u[1]=t.createElementVNode("div",{class:"stat-label"},"Color Modes",-1))]),t.createElementVNode("div",GA,[t.createElementVNode("div",VA,t.toDisplayString(i.value),1),u[2]||(u[2]=t.createElementVNode("div",{class:"stat-label"},"Total Colors",-1))])]),t.createElementVNode("div",YA,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.value,_=>(t.openBlock(),t.createElementBlock("div",{key:_.id,class:"brand-section"},[t.createElementVNode("div",zA,[t.createElementVNode("div",HA,t.toDisplayString(_.name),1),t.createElementVNode("div",qA,[t.createElementVNode("div",WA,[u[3]||(u[3]=t.createElementVNode("div",{class:"brand-stat-label"},"Color Modes",-1)),t.createElementVNode("div",KA,t.toDisplayString(_.colorModes.length),1)]),t.createElementVNode("div",QA,[u[4]||(u[4]=t.createElementVNode("div",{class:"brand-stat-label"},"Total Colors",-1)),t.createElementVNode("div",$A,t.toDisplayString(l(_)),1)])])]),t.createElementVNode("div",ZA,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(_.colorModes,m=>(t.openBlock(),t.createElementBlock("div",{key:m.id,class:"mode-card"},[t.createElementVNode("div",XA,[t.createElementVNode("div",jA,t.toDisplayString(m.name),1),t.createElementVNode("div",JA,t.toDisplayString(m.id),1)]),t.createElementVNode("div",e9,[t.createElementVNode("div",t9,[t.createElementVNode("div",{class:"category-title",onClick:s},[u[5]||(u[5]=t.createElementVNode("span",{class:"category-toggle"},"โถ",-1)),u[6]||(u[6]=t.createTextVNode(" ๐ Text Colors ",-1)),t.createElementVNode("span",r9,t.toDisplayString(m.textColors.colors.length),1)]),t.createElementVNode("div",n9,[t.createElementVNode("div",o9,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m.textColors.colors,g=>(t.openBlock(),t.createElementBlock("div",{key:g.id,class:"color-item"},[t.createElementVNode("div",{class:"color-preview",style:t.normalizeStyle({backgroundColor:g.value}),onClick:p=>c(g.value)},[...u[7]||(u[7]=[t.createElementVNode("div",{class:"color-overlay"},"Click to Copy",-1)])],12,a9),t.createElementVNode("div",i9,[t.createElementVNode("div",s9,t.toDisplayString(g.name),1),t.createElementVNode("div",l9,t.toDisplayString(g.value),1)])]))),128))])])]),t.createElementVNode("div",c9,[t.createElementVNode("div",{class:"category-title",onClick:s},[u[8]||(u[8]=t.createElementVNode("span",{class:"category-toggle"},"โถ",-1)),u[9]||(u[9]=t.createTextVNode(" ๐จ Background Colors ",-1)),t.createElementVNode("span",d9,t.toDisplayString(m.backgroundColor.colors.length),1)]),t.createElementVNode("div",u9,[t.createElementVNode("div",_9,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m.backgroundColor.colors,g=>(t.openBlock(),t.createElementBlock("div",{key:g.id,class:"color-item"},[t.createElementVNode("div",{class:"color-preview",style:t.normalizeStyle({backgroundColor:g.value}),onClick:p=>c(g.value)},[...u[10]||(u[10]=[t.createElementVNode("div",{class:"color-overlay"},"Click to Copy",-1)])],12,p9),t.createElementVNode("div",m9,[t.createElementVNode("div",g9,t.toDisplayString(g.name),1),t.createElementVNode("div",f9,t.toDisplayString(g.value),1)])]))),128))])])]),t.createElementVNode("div",E9,[t.createElementVNode("div",{class:"category-title",onClick:s},[u[11]||(u[11]=t.createElementVNode("span",{class:"category-toggle"},"โถ",-1)),u[12]||(u[12]=t.createTextVNode(" ๐ฒ Border Colors ",-1)),t.createElementVNode("span",b9,t.toDisplayString(m.borderColor.colors.length),1)]),t.createElementVNode("div",S9,[t.createElementVNode("div",h9,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m.borderColor.colors,g=>(t.openBlock(),t.createElementBlock("div",{key:g.id,class:"color-item"},[t.createElementVNode("div",{class:"color-preview",style:t.normalizeStyle({backgroundColor:g.value}),onClick:p=>c(g.value)},[...u[13]||(u[13]=[t.createElementVNode("div",{class:"color-overlay"},"Click to Copy",-1)])],12,C9),t.createElementVNode("div",y9,[t.createElementVNode("div",T9,t.toDisplayString(g.name),1),t.createElementVNode("div",A9,t.toDisplayString(g.value),1)])]))),128))])])]),m.foregroundColors.colors.length>0?(t.openBlock(),t.createElementBlock("div",N9,[t.createElementVNode("div",{class:"category-title",onClick:s},[u[14]||(u[14]=t.createElementVNode("span",{class:"category-toggle"},"โถ",-1)),u[15]||(u[15]=t.createTextVNode(" ๐ฏ Foreground Colors ",-1)),t.createElementVNode("span",R9,t.toDisplayString(m.foregroundColors.colors.length),1)]),t.createElementVNode("div",x9,[t.createElementVNode("div",v9,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m.foregroundColors.colors,g=>(t.openBlock(),t.createElementBlock("div",{key:g.id,class:"color-item"},[t.createElementVNode("div",{class:"color-preview",style:t.normalizeStyle({backgroundColor:g.value}),onClick:p=>c(g.value)},[...u[16]||(u[16]=[t.createElementVNode("div",{class:"color-overlay"},"Click to Copy",-1)])],12,O9),t.createElementVNode("div",I9,[t.createElementVNode("div",D9,t.toDisplayString(g.name),1),t.createElementVNode("div",w9,t.toDisplayString(g.value),1)])]))),128))])])])):t.createCommentVNode("",!0),m.utilityColors.colors.length>0?(t.openBlock(),t.createElementBlock("div",k9,[t.createElementVNode("div",{class:"category-title",onClick:s},[u[17]||(u[17]=t.createElementVNode("span",{class:"category-toggle"},"โถ",-1)),u[18]||(u[18]=t.createTextVNode(" ๐ง Utility Colors ",-1)),t.createElementVNode("span",M9,t.toDisplayString(m.utilityColors.colors.length),1)]),t.createElementVNode("div",L9,[t.createElementVNode("div",P9,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m.utilityColors.colors,g=>(t.openBlock(),t.createElementBlock("div",{key:g.id,class:"color-item"},[t.createElementVNode("div",{class:"color-preview",style:t.normalizeStyle({backgroundColor:g.value}),onClick:p=>c(g.value)},[...u[19]||(u[19]=[t.createElementVNode("div",{class:"color-overlay"},"Click to Copy",-1)])],12,B9),t.createElementVNode("div",F9,[t.createElementVNode("div",U9,t.toDisplayString(g.name),1),t.createElementVNode("div",G9,t.toDisplayString(g.value),1)])]))),128))])])])):t.createCommentVNode("",!0)])]))),128))])]))),128))])]))}}),[["styles",[".color-dashboard{font-family:Arial,sans-serif;margin:0;padding:20px;background-color:var(--bg-primary, #ffffff);color:var(--text-primary, #000000);transition:all .3s ease}.dashboard-header{text-align:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px}.dashboard-header h1{margin:0 0 10px;font-size:2.5em}.dashboard-header p{margin:0;font-size:1.1em;opacity:.9}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:30px}.stat-card{background:var(--bg-secondary, #f8f9fa);border:2px solid var(--border-color, #ddd);border-radius:8px;padding:20px;text-align:center}.stat-number{font-size:2.5em;font-weight:700;color:var(--primary-color, #007bff);margin-bottom:5px}.stat-label{font-size:.9em;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.brand-section{margin-bottom:40px;border:2px solid var(--border-color, #ddd);border-radius:12px;overflow:hidden}.brand-header{background:var(--bg-secondary, #f8f9fa);padding:20px;border-bottom:1px solid var(--border-color, #ddd)}.brand-title{font-size:1.5em;font-weight:700;margin-bottom:10px;color:var(--text-primary, #333)}.brand-info{display:flex;gap:20px;flex-wrap:wrap}.brand-stat{background:var(--bg-primary, #fff);padding:10px 15px;border-radius:6px;border:2px solid var(--border-color, #ddd)}.brand-stat-label{font-size:.8em;color:var(--text-secondary, #666);text-transform:uppercase}.brand-stat-value{font-weight:700;color:var(--text-primary, #333)}.modes-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px;padding:20px}.mode-card{border:2px solid var(--border-color, #ddd);border-radius:8px;overflow:hidden;background:var(--bg-primary, #fff)}.mode-header{background:var(--bg-secondary, #f8f9fa);padding:15px;border-bottom:1px solid var(--border-color, #ddd)}.mode-title{font-size:1.2em;font-weight:700;margin-bottom:5px;color:var(--text-primary, #333)}.mode-id{font-size:.8em;color:var(--text-secondary, #666);font-family:Monaco,Menlo,monospace}.color-categories{padding:15px}.category-section{margin-bottom:20px;border:2px solid var(--border-color, #ddd);border-radius:8px;overflow:hidden}.category-title{font-size:1em;font-weight:700;padding:15px;margin-bottom:0;color:var(--text-primary, #333);display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease;background:var(--bg-secondary, #f8f9fa);border-bottom:1px solid var(--border-color, #ddd)}.category-title:hover{color:var(--primary-color, #007bff)}.category-toggle{font-size:1.2em;transition:transform .2s ease;color:var(--text-secondary, #666)}.category-toggle.expanded{transform:rotate(90deg)}.category-content{overflow:hidden;transition:max-height .3s ease;max-height:0;padding:0 15px}.category-content.expanded{max-height:2000px}.category-count{background:var(--primary-color, #007bff);color:#fff;padding:2px 8px;border-radius:12px;font-size:.8em;font-weight:700}.color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;padding:15px 0}.color-item{border:2px solid var(--border-color, #ddd);border-radius:6px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.color-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.color-preview{height:60px;display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer}.color-preview:hover .color-overlay{opacity:1}.color-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000c;color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;font-size:.9em;font-weight:700}.color-info{padding:10px}.color-name{font-weight:700;margin-bottom:5px;color:var(--text-primary, #333)}.color-value{font-family:Monaco,Menlo,monospace;font-size:.8em;color:var(--text-secondary, #666);word-break:break-all}@media (prefers-color-scheme: dark){.color-dashboard{background-color:var(--bg-primary, #1a1a1a);color:var(--text-primary, #ffffff)}.stat-card{background:var(--bg-secondary, #2d2d2d);border-color:var(--border-color, #404040)}.stat-label{color:var(--text-secondary, #cccccc)}.brand-section{border-color:var(--border-color, #404040)}.brand-header{background:var(--bg-secondary, #2d2d2d);border-bottom-color:var(--border-color, #404040)}.brand-title{color:var(--text-primary, #ffffff)}.brand-stat{background:var(--bg-primary, #1a1a1a);border-color:var(--border-color, #404040)}.brand-stat-label{color:var(--text-secondary, #cccccc)}.brand-stat-value{color:var(--text-primary, #ffffff)}.mode-card{border-color:var(--border-color, #404040);background:var(--bg-primary, #1a1a1a)}.mode-header{background:var(--bg-secondary, #2d2d2d);border-bottom-color:var(--border-color, #404040)}.mode-title{color:var(--text-primary, #ffffff)}.mode-id{color:var(--text-secondary, #cccccc)}.category-section{border-color:var(--border-color, #404040)}.category-title{color:var(--text-primary, #ffffff);background:var(--bg-secondary, #2d2d2d);border-bottom-color:var(--border-color, #404040)}.category-toggle{color:var(--text-secondary, #cccccc)}.color-item{border-color:var(--border-color, #404040)}.color-name{color:var(--text-primary, #ffffff)}.color-value{color:var(--text-secondary, #cccccc)}}@media (max-width: 768px){.color-dashboard{padding:10px}.stats-grid{grid-template-columns:1fr}.modes-container{grid-template-columns:1fr;padding:10px}.color-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.brand-info{flex-direction:column;gap:10px}}"]]]),V9=["aria-checked","aria-disabled","aria-label"],Y9=["checked","disabled"],z9={key:0,class:"checkbox-dash"},H9={key:1,class:"checkbox-icon",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg"},q9=["stroke"],W9=x(t.defineComponent({__name:"CustomCheckbox",props:{isChecked:{type:Boolean},isDashInput:{type:Boolean},blueCheckbox:{type:Boolean},disabled:{type:Boolean},ariaLabel:{type:String}},emits:["update:isChecked"],setup(r,{emit:e}){const{currentProject:n,currentColorMode:o}=pe(),a=r,i=e;function l(s){const c=s.target;a.disabled||i("update:isChecked",c.checked)}return(s,c)=>(t.openBlock(),t.createElementBlock("label",{class:t.normalizeClass(["base-checkbox",{checked:s.isChecked&&!s.blueCheckbox,"checked-blue":s.isChecked&&s.blueCheckbox,"not-checked":!s.isChecked,"is-disabled":s.disabled}]),"aria-checked":s.isChecked,"aria-disabled":s.disabled,"aria-label":s.ariaLabel,role:"checkbox"},[t.createElementVNode("input",{id:"checkbox-input",type:"checkbox",class:"checkbox-input",checked:s.isChecked,disabled:s.disabled,onChange:l},null,40,Y9),s.isDashInput&&s.isChecked?(t.openBlock(),t.createElementBlock("span",z9)):s.isChecked&&!s.isDashInput?(t.openBlock(),t.createElementBlock("svg",H9,[t.createElementVNode("path",{d:"M10 3L4.5 8.5L2 6",stroke:s.blueCheckbox?"var(--text-50, var(--text-inverse))":"#000","stroke-width":"1.6666","stroke-linecap":"round","stroke-linejoin":"round"},null,8,q9)])):t.createCommentVNode("",!0)],10,V9))}}),[["styles",[".base-checkbox{position:relative;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:4px;border:2px solid currentColor;cursor:pointer;transition:background-color .15s ease-in-out,border-color .15s ease-in-out;-webkit-user-select:none;user-select:none}.checked{background-color:var(--freddy-text-primary);border-color:transparent}.checked-blue{background-color:#7ba8ef;border-color:transparent}.not-checked{background-color:transparent;border-color:currentColor}.checkbox-input{position:absolute;opacity:0;pointer-events:none}.checkbox-dash{width:8px;height:2px;background-color:var(--freddy-text-primary);border-radius:1px}.checkbox-icon{width:16px;height:16px;pointer-events:none}.is-disabled{opacity:.5;cursor:not-allowed}"]]]),K9={class:"verification-container"},Q9={class:"verification-header"},$9={class:"verification-subtitle"},Z9={class:"code-input-container"},X9={class:"code-inputs"},j9=["onUpdate:modelValue","onInput","onKeydown","disabled"],J9={class:"verification-actions"},e8={key:0,class:"error-message"},t8={class:"verification-footer"},r8={class:"resend-text"},n8=["disabled"],o8=x(t.defineComponent({__name:"EmailCodeVerification",props:{email:{type:String},brand:{default:"contentplate",type:String},loading:{type:Boolean,default:!1},error:{default:"",type:String},resendCooldown:{default:0,type:Number}},emits:["verify","resend"],setup(r,{emit:e}){const{currentProject:n,currentColorMode:o}=pe(),a=r,{brand:i,loading:l,error:s,resendCooldown:c}=a,d=e,u=t.ref(["","","",""]),_=t.ref([]),m=t.computed(()=>u.value.every(S=>S!=="")),g=t.computed(()=>u.value.join("")),p=(S,y)=>{const R=y.target,A=R.value;if(!/^\d*$/.test(A)){R.value="";return}u.value[S]=A,A&&S<3&&t.nextTick(()=>{var v;(v=_.value[S+1])==null||v.focus()})},b=(S,y)=>{y.key==="Backspace"&&!u.value[S]&&S>0&&t.nextTick(()=>{var R;(R=_.value[S-1])==null||R.focus()})},f=S=>{var T;S.preventDefault();const y=(T=S.clipboardData)==null?void 0:T.getData("text");if(!y)return;const R=y.replace(/\D/g,"").slice(0,4).split("");u.value=[...R,"","","",""].slice(0,4);const A=u.value.findIndex(N=>N===""),v=A===-1?3:A;t.nextTick(()=>{var N;(N=_.value[v])==null||N.focus()})},C=()=>{m.value&&d("verify",g.value)},E=()=>{d("resend")};return t.onMounted(()=>{t.nextTick(()=>{var S;(S=_.value[0])==null||S.focus()})}),(S,y)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["email-verification",`email-verification--${t.unref(i)}`])},[t.createElementVNode("div",K9,[t.createElementVNode("div",Q9,[y[1]||(y[1]=t.createElementVNode("h2",{class:"verification-title"},"Verify Your Email",-1)),t.createElementVNode("p",$9,[y[0]||(y[0]=t.createTextVNode(" We've sent a 4-digit verification code to ",-1)),t.createElementVNode("strong",null,t.toDisplayString(S.email),1)])]),t.createElementVNode("form",{onSubmit:t.withModifiers(C,["prevent"]),class:"verification-form"},[t.createElementVNode("div",Z9,[t.createElementVNode("div",X9,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(4,(R,A)=>t.withDirectives(t.createElementVNode("input",{key:A,ref_for:!0,ref:v=>_.value[A]=v,"onUpdate:modelValue":v=>u.value[A]=v,type:"text",maxlength:"1",class:t.normalizeClass(["code-input",`code-input--${t.unref(i)}`]),onInput:v=>p(A,v),onKeydown:v=>b(A,v),onPaste:f,disabled:t.unref(l),autocomplete:"one-time-code"},null,42,j9),[[t.vModelText,u.value[A]]])),64))])]),t.createElementVNode("div",J9,[t.createVNode(ct,{type:"submit",label:t.unref(l)?"Verifying...":"Verify Code",hierarchy:"primary",size:"lg",loading:t.unref(l),disabled:!m.value||t.unref(l),class:t.normalizeClass(`verify-button verify-button--${t.unref(i)}`)},null,8,["label","loading","disabled","class"])]),t.unref(s)?(t.openBlock(),t.createElementBlock("div",e8,t.toDisplayString(t.unref(s)),1)):t.createCommentVNode("",!0),t.createElementVNode("div",t8,[t.createElementVNode("p",r8,[y[2]||(y[2]=t.createTextVNode(" Didn't receive the code? ",-1)),t.createElementVNode("button",{type:"button",class:"resend-button",disabled:t.unref(c)>0,onClick:E},t.toDisplayString(t.unref(c)>0?`Resend in ${t.unref(c)}s`:"Resend code"),9,n8)])])],32)])],2))}}),[["styles",[".email-verification{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.verification-container{max-width:400px;width:100%;text-align:center}.verification-header{margin-bottom:2rem}.verification-title{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.verification-subtitle{color:var(--text-500, var(--freddy-text-secondary));font-size:.875rem}.verification-form{display:flex;flex-direction:column;gap:1.5rem}.code-input-container{display:flex;justify-content:center}.code-inputs{display:flex;gap:.75rem}.code-input{width:3rem;height:3rem;text-align:center;font-size:1.25rem;font-weight:600;border:2px solid var(--freddy-border-color);border-radius:.5rem;background:transparent;transition:all .2s ease}.code-input:focus{outline:none;border-color:var(--color-primary-500, var(--freddy-primary-color));box-shadow:0 0 0 3px #3b82f61a}.code-input:disabled{opacity:.6;cursor:not-allowed}.code-input:-webkit-autofill,.code-input:-webkit-autofill:hover,.code-input:-webkit-autofill:focus,.code-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px transparent inset!important;-webkit-text-fill-color:inherit!important;transition:background-color 5000s ease-in-out 0s;background-color:transparent!important;background-image:none!important}.code-input:-moz-autofill,.code-input:-moz-autofill:focus{background-color:transparent!important;color:inherit!important;border:none!important;box-shadow:none!important}.code-input:-ms-autofill,.code-input:-ms-autofill:focus{background-color:transparent!important;color:inherit!important;border:none!important;box-shadow:none!important}.code-input--contentplate{border-color:var(--color-purple-500, var(--freddy-primary-color))}.code-input--contentplate:focus{border-color:var(--color-purple-600, var(--freddy-primary-color));box-shadow:0 0 0 3px #7c3aed1a}.code-input--flowplate{border-color:var(--color-indigo-500, var(--freddy-primary-color));background:#6366f10d}.code-input--flowplate:focus{border-color:var(--color-indigo-600, #4f46e5);box-shadow:0 0 0 3px #4f46e51a}.code-input--freddy{border-color:var(--freddy-primary-color)}.code-input--freddy:focus{border-color:var(--color-primary-600, #0099cc);box-shadow:0 0 0 3px #00aeef1a}.verification-actions{display:flex;justify-content:center}.verify-button{min-width:200px}.error-message{color:var(--color-destructive-500, var(--freddy-error-color));font-size:.875rem;margin-top:.5rem}.verification-footer{margin-top:1rem}.resend-text{font-size:.875rem;color:var(--text-500, var(--freddy-text-secondary))}.resend-button{background:none;border:none;color:var(--color-primary-500, var(--freddy-primary-color));cursor:pointer;font-size:.875rem;text-decoration:underline}.resend-button:hover:not(:disabled){color:var(--color-primary-600, var(--freddy-primary-color))}.resend-button:disabled{color:var(--border-300, #9ca3af);cursor:not-allowed;text-decoration:none}.verify-button--contentplate{background:var(--color-purple-500, var(--freddy-primary-color))!important;border-color:var(--color-purple-500, var(--freddy-primary-color))!important}.verify-button--flowplate{background:var(--color-indigo-500, var(--freddy-primary-color))!important;border-color:var(--color-indigo-500, var(--freddy-primary-color))!important}.verify-button--freddy{background:var(--freddy-primary-color)!important;border-color:var(--freddy-primary-color)!important}"]]]),a8={class:"input-field-wrapper"},i8=["for"],s8={key:0,class:"required-asterisk"},l8={class:"dropdown-text"},c8=["id","type","placeholder","disabled","readonly"],d8={class:"dropdown-text"},Dt=x(t.defineComponent({__name:"InputField",props:{size:{default:"md",type:String},colorStyle:{default:"freddy",type:String},type:{default:"default",type:String},state:{default:"placeholder",type:String},destructive:{type:Boolean,default:!1},iconLeading:{type:Boolean,default:!1},leadingIcon:{default:void 0,type:null},label:{default:"",type:String},hintText:{default:"",type:String},required:{type:Boolean,default:!1},helpIcon:{type:Boolean,default:!1},helpText:{default:"",type:String},placeholder:{default:"",type:String},value:{default:"",type:String},inputType:{default:"text",type:String},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},leadingDropdownText:{default:"US",type:String},trailingDropdownText:{default:"USD",type:String},leadingText:{default:"http://",type:String},trailingButtonText:{default:"Copy",type:String},modelValue:{default:"",type:String}},emits:["update:modelValue","input","focus","blur","trailing-button-click"],setup(r,{emit:e}){const n=r,o=e,a=t.ref(null),i=t.ref(n.modelValue||n.value||""),l=t.computed(()=>`input-${Math.random().toString(36).substr(2,9)}`),s=t.computed(()=>({[`input-field-container--${n.size}`]:!0,[`input-field-container--${n.colorStyle}`]:!0,"input-field-container--destructive":n.destructive||n.state==="error","input-field-container--focused":n.state==="focused","input-field-container--disabled":n.state==="disabled","input-field-container--loading":n.state==="loading","input-field-container--success":n.state==="success",[`input-field-container--${n.type}`]:n.type!=="default"})),c=t.computed(()=>({[`input-field--${n.size}`]:!0,[`input-field--${n.colorStyle}`]:!0,"input-field--destructive":n.destructive,"input-field--focused":n.state==="focused","input-field--disabled":n.state==="disabled","input-field--with-leading":n.iconLeading||n.type==="leading-dropdown"||n.type==="leading-text","input-field--with-trailing":n.type==="trailing-dropdown"||n.type==="trailing-button"||n.type==="clear"||n.helpIcon})),d=()=>{var f;n.state!=="disabled"&&((f=a.value)==null||f.focus())},u=f=>{const C=f.target;i.value=C.value,o("update:modelValue",C.value),o("input",C.value)},_=f=>{o("focus",f)},m=f=>{o("blur",f)},g=f=>{f.key==="Enter"&&n.type==="trailing-button"&&p(f)},p=f=>{o("trailing-button-click",f)},b=()=>{i.value="",o("update:modelValue",""),o("input",""),t.nextTick(()=>{var f;(f=a.value)==null||f.focus()})};return t.watch(()=>n.modelValue,f=>{f!==void 0&&(i.value=f)}),t.watch(()=>n.value,f=>{f!==void 0&&(i.value=f)}),(f,C)=>(t.openBlock(),t.createElementBlock("div",a8,[f.label?(t.openBlock(),t.createElementBlock("label",{key:0,for:l.value,class:t.normalizeClass(["input-field-label",`input-field-label--${f.colorStyle}`])},[t.createTextVNode(t.toDisplayString(f.label)+" ",1),f.required?(t.openBlock(),t.createElementBlock("span",s8,"*")):t.createCommentVNode("",!0)],10,i8)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(["input-field-container",s.value]),onClick:d},[f.type==="leading-dropdown"?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-leading-dropdown",`input-leading-dropdown--${f.colorStyle}`])},[t.createElementVNode("span",l8,t.toDisplayString(f.leadingDropdownText),1),t.createVNode(t.unref(sr),{class:"dropdown-icon"})],2)):f.iconLeading?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(f.leadingIcon),{key:1,class:t.normalizeClass(["input-leading-icon",`input-leading-icon--${f.colorStyle}`]),"aria-hidden":"true"},null,8,["class"])):f.type==="leading-text"?(t.openBlock(),t.createElementBlock("span",{key:2,class:t.normalizeClass(["input-leading-text",`input-leading-text--${f.colorStyle}`])},t.toDisplayString(f.leadingText),3)):t.createCommentVNode("",!0),t.withDirectives(t.createElementVNode("input",{id:l.value,ref_key:"inputRef",ref:a,"onUpdate:modelValue":C[0]||(C[0]=E=>i.value=E),type:f.inputType,placeholder:f.placeholder,disabled:f.disabled,readonly:f.readonly,class:t.normalizeClass(["input-field",c.value]),onInput:u,onFocus:_,onBlur:m,onKeydown:g},null,42,c8),[[t.vModelDynamic,i.value]]),f.type==="trailing-dropdown"?(t.openBlock(),t.createElementBlock("div",{key:3,class:t.normalizeClass(["input-trailing-dropdown",`input-trailing-dropdown--${f.colorStyle}`])},[t.createElementVNode("span",d8,t.toDisplayString(f.trailingDropdownText),1),t.createVNode(t.unref(sr),{class:"dropdown-icon"})],2)):f.type==="trailing-button"?(t.openBlock(),t.createElementBlock("button",{key:4,type:"button",class:t.normalizeClass(["input-trailing-button",`input-trailing-button--${f.colorStyle}`]),onClick:p},t.toDisplayString(f.trailingButtonText),3)):f.type==="clear"&&i.value?(t.openBlock(),t.createElementBlock("button",{key:5,type:"button",class:t.normalizeClass(["input-clear-button",`input-clear-button--${f.colorStyle}`]),onClick:b,"aria-label":"Clear input"},[t.createVNode(t.unref(yt),{class:"clear-icon"})],2)):t.createCommentVNode("",!0),f.helpIcon&&f.helpText?(t.openBlock(),t.createBlock(ir,{key:6,text:f.helpText,placement:"top"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ps),{class:t.normalizeClass(["input-help-icon",`input-help-icon--${f.colorStyle}`])},null,8,["class"])]),_:1},8,["text"])):t.createCommentVNode("",!0)],2),f.hintText?(t.openBlock(),t.createElementBlock("p",{key:1,class:t.normalizeClass(["input-hint-text",`input-hint-text--${f.colorStyle}`])},t.toDisplayString(f.hintText),3)):t.createCommentVNode("",!0)]))}}),[["styles",['.input-field-wrapper{display:flex;flex-direction:column;gap:.5rem;width:100%}.input-field-label{font-size:.875rem;font-weight:500;line-height:1.25rem}.input-field-label--freddy{color:var(--text-300, var(--text-muted))}.input-field-label--contentplate{color:var(--text-700, var(--freddy-text-primary))}.required-asterisk{color:var(--color-destructive-500, var(--freddy-error-color));margin-left:.125rem}.input-field-container{position:relative;display:flex;align-items:center;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:text;overflow:hidden}.input-field-container--freddy{background-color:var(--bg-800, var(--freddy-bg-primary));border:2px solid var(--border-600, #475569);box-shadow:0 1px 2px #0000000d}.input-field-container--freddy:hover:not(.input-field-container--disabled){border-color:var(--freddy-text-secondary);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.input-field-container--freddy.input-field-container--focused{border-color:var(--freddy-primary-color);box-shadow:0 0 0 3px #3b82f61a,0 4px 6px -1px #0000001a;transform:translateY(-1px)}.input-field-container--freddy.input-field-container--destructive{border-color:var(--freddy-error-color)}.input-field-container--freddy.input-field-container--destructive:hover{border-color:#f87171}.input-field-container--contentplate{background-color:var(--bg-50, var(--freddy-bg-primary));border:2px solid var(--border-200, var(--freddy-border-color));box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.input-field-container--contentplate:hover:not(.input-field-container--disabled){border-color:var(--border-300, #9ca3af);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-1px)}.input-field-container--contentplate.input-field-container--focused{border-color:var(--color-primary-500, var(--freddy-primary-color));box-shadow:0 0 0 3px #3b82f61a,0 10px 15px -3px #0000001a;transform:translateY(-1px)}.input-field-container--contentplate.input-field-container--destructive{border-color:var(--color-destructive-500, var(--freddy-error-color))}.input-field-container--contentplate.input-field-container--destructive:hover{border-color:var(--color-destructive-400, #f87171)}.input-field-container:hover:not(.input-field-container--disabled){border-color:var(--border-400, var(--freddy-text-secondary))}.input-field-container--focused{border-color:var(--color-primary-500, var(--freddy-primary-color));box-shadow:0 0 0 1px var(--color-primary-500, var(--freddy-primary-color))}.input-field-container--destructive{border-color:var(--color-destructive-500, var(--freddy-error-color))}.input-field-container--destructive:hover{border-color:var(--color-destructive-400, #f87171)}.input-field-container--disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.input-field-container--sm{height:40px;border-radius:8px;font-size:.875rem}.input-field-container--md{height:44px;border-radius:12px;font-size:.875rem}.input-field-container--lg{height:48px;border-radius:16px;font-size:1rem}.input-leading-dropdown,.input-leading-text{display:flex;align-items:center;gap:.25rem;padding:0 .75rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.input-leading-dropdown--freddy,.input-leading-text--freddy{border-right:1px solid var(--border-600, #475569);color:var(--text-400, var(--text-muted))}.input-leading-dropdown--contentplate,.input-leading-text--contentplate{border-right:1px solid var(--border-200, var(--freddy-border-color));color:var(--text-500, var(--freddy-text-secondary))}.input-leading-dropdown--freddy:hover{color:var(--text-300, var(--text-muted));transform:scale(1.02)}.input-leading-dropdown--contentplate:hover{color:var(--text-700, var(--freddy-text-primary));transform:scale(1.02)}.dropdown-text{font-size:.875rem;font-weight:500}.dropdown-icon{width:1rem;height:1rem;stroke:currentColor}.input-leading-icon{width:1.25rem;height:1.25rem;margin-left:.75rem}.input-leading-icon--freddy{stroke:var(--text-muted)}.input-leading-icon--contentplate{stroke:var(--freddy-text-secondary)}.input-leading-text--freddy{color:var(--text-muted)}.input-leading-text--contentplate{color:var(--freddy-text-secondary)}.input-field{flex:1;background:transparent;border:none;outline:none;font-size:.875rem;font-weight:500;line-height:1.25rem;padding:0 .75rem;height:100%;transition:all .2s cubic-bezier(.4,0,.2,1)}.input-field:-webkit-autofill,.input-field:-webkit-autofill:hover,.input-field:-webkit-autofill:focus,.input-field:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px transparent inset!important;-webkit-text-fill-color:inherit!important;transition:background-color 5000s ease-in-out 0s;background-color:transparent!important;background-image:none!important}.input-field:-moz-autofill,.input-field:-moz-autofill:focus{background-color:transparent!important;color:inherit!important;border:none!important;box-shadow:none!important}.input-field:-ms-autofill,.input-field:-ms-autofill:focus{background-color:transparent!important;color:inherit!important;border:none!important;box-shadow:none!important}.input-field--freddy{color:var(--text-300, var(--text-muted))}.input-field--freddy:-webkit-autofill,.input-field--freddy:-webkit-autofill:hover,.input-field--freddy:-webkit-autofill:focus,.input-field--freddy:-webkit-autofill:active{-webkit-text-fill-color:var(--text-300, var(--text-muted))!important}.input-field--contentplate{color:var(--text-700, var(--freddy-text-primary))}.input-field--contentplate:-webkit-autofill,.input-field--contentplate:-webkit-autofill:hover,.input-field--contentplate:-webkit-autofill:focus,.input-field--contentplate:-webkit-autofill:active{-webkit-text-fill-color:var(--freddy-text-primary)!important}.input-field--freddy::placeholder{color:var(--text-muted);opacity:.7}.input-field--contentplate::placeholder{color:#9ca3af;opacity:.7}.input-field--disabled{cursor:not-allowed}.input-field--freddy.input-field--destructive{color:var(--freddy-error-color)}.input-field--freddy.input-field--destructive::placeholder{color:#f87171}.input-field--contentplate.input-field--destructive{color:var(--freddy-error-color)}.input-field--contentplate.input-field--destructive::placeholder{color:#f87171}.input-trailing-dropdown{display:flex;align-items:center;gap:.25rem;padding:0 .75rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.input-trailing-dropdown--freddy{border-left:1px solid #475569;color:var(--text-muted)}.input-trailing-dropdown--contentplate{border-left:1px solid var(--freddy-border-color);color:var(--freddy-text-secondary)}.input-trailing-dropdown--freddy:hover{color:var(--text-muted);transform:scale(1.02)}.input-trailing-dropdown--contentplate:hover{color:var(--freddy-text-primary);transform:scale(1.02)}.input-trailing-button{display:flex;align-items:center;padding:0 .75rem;background:transparent;color:var(--freddy-primary-color);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.input-trailing-button--freddy{border-left:1px solid #475569}.input-trailing-button--contentplate{border-left:1px solid var(--freddy-border-color)}.input-trailing-button:hover{color:#60a5fa;transform:scale(1.02)}.input-clear-button{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin-right:.5rem;background:transparent;border:none;cursor:pointer;border-radius:.25rem;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.input-clear-button--freddy{color:var(--text-muted)}.input-clear-button--contentplate{color:var(--freddy-text-secondary)}.input-clear-button--freddy:hover{background-color:var(--freddy-text-primary);color:var(--text-muted);transform:scale(1.1)}.input-clear-button--contentplate:hover{background-color:var(--freddy-bg-secondary);color:var(--freddy-text-primary);transform:scale(1.1)}.clear-icon{width:1rem;height:1rem;stroke:currentColor}.input-help-icon{width:1.25rem;height:1.25rem;margin-right:.75rem;cursor:help;transition:all .2s cubic-bezier(.4,0,.2,1)}.input-help-icon--freddy{stroke:var(--text-muted)}.input-help-icon--contentplate{stroke:var(--freddy-text-secondary)}.input-help-icon--freddy:hover{stroke:var(--text-muted);transform:scale(1.1)}.input-help-icon--contentplate:hover{stroke:var(--freddy-text-primary);transform:scale(1.1)}.input-hint-text{font-size:.75rem;line-height:1rem;margin:0}.input-hint-text--freddy{color:var(--text-muted)}.input-hint-text--contentplate{color:var(--freddy-text-secondary)}.input-field-container--payment .input-field{font-family:Courier New,monospace;letter-spacing:.05em}.input-field:focus{outline:none}.input-field-container--loading{position:relative}.input-field-container--loading:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.input-field-container--success{border-color:#10b981!important}.input-field-container--success.input-field-container--focused{box-shadow:0 0 0 3px #10b9811a!important}.input-field-container--destructive{animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}.input-field-container--freddy-input{background-color:var(--freddy-bg-primary);border-color:#334155}.input-field-container--freddy-input .input-field{color:#f1f5f9}.input-field-container--freddy-input .input-field::placeholder{color:var(--freddy-text-secondary)}']]]),Wi=x(t.defineComponent({__name:"AuthContainer",props:{brand:{default:"contentplate",type:String}},setup(r){const{currentProject:e,currentColorMode:n}=pe(),o=r,a=t.computed(()=>o.brand);return(i,l)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["auth-container",`auth-container--${a.value}`])},[t.renderSlot(i.$slots,"default")],2))}}),[["styles",['.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem}.auth-container--contentplate{background:var(--freddy-bg-secondary)}.auth-container--flowplate{background:linear-gradient(135deg,var(--freddy-bg-primary) 0%,var(--freddy-bg-primary) 100%);position:relative;overflow:hidden}.auth-container--flowplate:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,var(--color-primary-100, rgba(99, 102, 241, .1)) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(139,92,246,.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(99,102,241,.05) 0%,transparent 50%);pointer-events:none}.auth-container--freddy{background:var(--freddy-bg-primary)}']]]),Ki=x(t.defineComponent({__name:"AuthCard",props:{brand:{default:"contentplate",type:String}},setup(r){const{currentProject:e,currentColorMode:n}=pe(),o=r,a=t.computed(()=>o.brand);return(i,l)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["auth-card",`auth-card--${a.value}`])},[t.renderSlot(i.$slots,"default")],2))}}),[["styles",['.auth-card{padding:2rem;width:100%;max-width:400px;margin:0 auto}.auth-card--contentplate{background:var(--bg-50, white);border-radius:8px;box-shadow:0 4px 6px var(--border-light)}.auth-card--flowplate{background:#1e293bcc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:2px solid var(--color-primary-200, rgba(99, 102, 241, .2));border-radius:16px;box-shadow:0 25px 50px -12px #00000080,0 0 0 1px var(--color-primary-100, rgba(99, 102, 241, .1));position:relative;z-index:1}.auth-card--flowplate:before{content:"";position:absolute;top:-1px;left:-1px;right:-1px;bottom:-1px;background:linear-gradient(135deg,var(--color-primary-500, var(--freddy-primary-color)),var(--color-purple-500, var(--freddy-primary-color)),var(--color-primary-500, var(--freddy-primary-color)));border-radius:16px;z-index:-1;opacity:.3}.auth-card--freddy{background:var(--bg-800, var(--freddy-bg-primary));border:2px solid var(--border-600, #475569);border-radius:8px;box-shadow:0 4px 6px var(--text-muted)}']]]),c_="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAwIiBoZWlnaHQ9IjYwIiB2aWV3Qm94PSIwIDAgMjAwIDYwIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDwhLS0gUmVmZXJlbmNlIHRoZSBzbWFsbCBsb2dvIGFzIGEgY29tcG9uZW50IC0tPgogIDxkZWZzPgogICAgPGcgaWQ9ImNvbnRlbnRwbGF0ZS1pY29uIj4KICAgICAgPHJlY3QgeD0iMTAiIHk9IjEwIiB3aWR0aD0iODAiIGhlaWdodD0iODAiIHJ4PSIxNSIgZmlsbD0iIzQ1MTZjYiIvPgogICAgICA8cGF0aCBkPSJNMzAgMzVoNDB2MTBIMzB6TTMwIDU1aDQwdjEwSDMweiIgZmlsbD0iI2ZmZiIvPgogICAgICA8Y2lyY2xlIGN4PSI3NSIgY3k9Ijc1IiByPSI4IiBmaWxsPSIjMDBmZjI2Ii8+CiAgICA8L2c+CiAgPC9kZWZzPgogIAogIDwhLS0gVXNlIHRoZSBpY29uIGNvbXBvbmVudCAtIGNlbnRlcmVkIHZlcnRpY2FsbHkgLS0+CiAgPHVzZSBocmVmPSIjY29udGVudHBsYXRlLWljb24iIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwLCAxMCkgc2NhbGUoMC41KSIvPgogIAogIDwhLS0gVGV4dCAiQ29udGVudHBsYXRlIiAtIHByb3Blcmx5IGNlbnRlcmVkIHZlcnRpY2FsbHkgLS0+CiAgPHRleHQgeD0iNzAiIHk9IjMyIiBmb250LWZhbWlseT0iSW50ZXIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgc2Fucy1zZXJpZiIgZm9udC1zaXplPSIyNCIgZm9udC13ZWlnaHQ9IjcwMCIgZmlsbD0iIzQ1MTZjYiI+Q29udGVudDwvdGV4dD4KICA8dGV4dCB4PSI3MCIgeT0iNTIiIGZvbnQtZmFtaWx5PSJJbnRlciwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBzYW5zLXNlcmlmIiBmb250LXNpemU9IjI0IiBmb250LXdlaWdodD0iNzAwIiBmaWxsPSIjNDUxNmNiIj5wbGF0ZTwvdGV4dD4KPC9zdmc+IA==",u8="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAwIiBoZWlnaHQ9IjYwIiB2aWV3Qm94PSIwIDAgMjAwIDYwIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDwhLS0gRnJlZGR5IGljb24gLSByb2JvdCBoZWFkIC0tPgogIDxyZWN0IHg9IjEwIiB5PSIxNSIgd2lkdGg9IjQwIiBoZWlnaHQ9IjMwIiByeD0iOCIgZmlsbD0iIzBmMTcyYSIgc3Ryb2tlPSIjNDc1NTY5IiBzdHJva2Utd2lkdGg9IjIiLz4KICA8Y2lyY2xlIGN4PSIyNSIgY3k9IjI1IiByPSIzIiBmaWxsPSIjN0JBOEVGIi8+CiAgPGNpcmNsZSBjeD0iMzUiIGN5PSIyNSIgcj0iMyIgZmlsbD0iIzdCQThFRiIvPgogIDxyZWN0IHg9IjI1IiB5PSIzMiIgd2lkdGg9IjEwIiBoZWlnaHQ9IjIiIHJ4PSIxIiBmaWxsPSIjN0JBOEVGIi8+CiAgPHJlY3QgeD0iMTUiIHk9IjEwIiB3aWR0aD0iMzAiIGhlaWdodD0iOCIgcng9IjQiIGZpbGw9IiM0NzU1NjkiLz4KICAKICA8IS0tIFRleHQgIkZyZWRkeSIgLS0+CiAgPHRleHQgeD0iNzAiIHk9IjI1IiBmb250LWZhbWlseT0iSW50ZXIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgc2Fucy1zZXJpZiIgZm9udC1zaXplPSIyNCIgZm9udC13ZWlnaHQ9IjcwMCIgZmlsbD0iIzFGMjkzNyI+RnJlZDwvdGV4dD4KICA8dGV4dCB4PSI3MCIgeT0iNDUiIGZvbnQtZmFtaWx5PSJJbnRlciwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBzYW5zLXNlcmlmIiBmb250LXNpemU9IjI0IiBmb250LXdlaWdodD0iNzAwIiBmaWxsPSIjN0JBOEVGIj5keTwvdGV4dD4KICAKICA8IS0tIFN1YnRsZSB0YWdsaW5lIC0tPgogIDx0ZXh0IHg9IjcwIiB5PSI1NSIgZm9udC1mYW1pbHk9IkludGVyLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIHNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMTAiIGZvbnQtd2VpZ2h0PSI0MDAiIGZpbGw9IiM2QjcyODAiPkFJIEFzc2lzdGFudDwvdGV4dD4KPC9zdmc+IA==",_8="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAwIiBoZWlnaHQ9IjYwIiB2aWV3Qm94PSIwIDAgMjAwIDYwIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDwhLS0gQmFja2dyb3VuZCBjaXJjbGUgZm9yIHRoZSBpY29uIC0gY2VudGVyZWQgdmVydGljYWxseSAtLT4KICA8Y2lyY2xlIGN4PSIzMCIgY3k9IjMwIiByPSIyMCIgZmlsbD0iIzYzNjZGMSIgc3Ryb2tlPSIjNEY0NkU1IiBzdHJva2Utd2lkdGg9IjIiLz4KICAKICA8IS0tIEZsb3cgYXJyb3dzIHJlcHJlc2VudGluZyB3b3JrZmxvdyAtLT4KICA8cGF0aCBkPSJNMTggMjUgTDI1IDI1IEwyNSAyMiBMMzAgMzAgTDI1IDM4IEwyNSAzNSBMMTggMzUgWiIgZmlsbD0id2hpdGUiLz4KICA8cGF0aCBkPSJNMjUgMTggTDMyIDE4IEwzMiAxNSBMMzcgMjMgTDMyIDMwIEwzMiAyNyBMMjUgMjcgWiIgZmlsbD0id2hpdGUiIG9wYWNpdHk9IjAuOCIvPgogIDxwYXRoIGQ9Ik0zMiAzMiBMMzkgMzIgTDM5IDI5IEw0NCAzNyBMMzkgNDQgTDM5IDQxIEwzMiA0MSBaIiBmaWxsPSJ3aGl0ZSIgb3BhY2l0eT0iMC42Ii8+CiAgCiAgPCEtLSBUZXh0ICJGbG93cGxhdGUiIC0gcHJvcGVybHkgY2VudGVyZWQgdmVydGljYWxseSAtLT4KICA8dGV4dCB4PSI3MCIgeT0iMjgiIGZvbnQtZmFtaWx5PSJJbnRlciwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBzYW5zLXNlcmlmIiBmb250LXNpemU9IjI0IiBmb250LXdlaWdodD0iNzAwIiBmaWxsPSIjMUYyOTM3Ij5GbG93PC90ZXh0PgogIDx0ZXh0IHg9IjcwIiB5PSI0OCIgZm9udC1mYW1pbHk9IkludGVyLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIHNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMjQiIGZvbnQtd2VpZ2h0PSI3MDAiIGZpbGw9IiM2MzY2RjEiPnBsYXRlPC90ZXh0Pgo8L3N2Zz4g",p8=["src","alt"],yr=x(t.defineComponent({__name:"Logo",props:{brand:{default:"contentplate",type:String},size:{default:"md",type:String},showTitle:{type:Boolean,default:!0}},setup(r){const e=r,n=t.computed(()=>{switch(e.brand){case"contentplate":return c_;case"flowplate":return _8;case"freddy":return u8;default:return c_}}),o=t.computed(()=>{switch(e.brand){case"contentplate":return"Contentplate";case"flowplate":return"Flowplate";case"freddy":return"Freddy";default:return"Contentplate"}}),a=t.computed(()=>[`logo-container--${e.size}`,`logo-container--${e.brand}`,{"logo-container--brand-no-title":(e.brand==="flowplate"||e.brand==="contentplate")&&!e.showTitle}]),i=t.computed(()=>[`logo-image--${e.size}`,{"logo-image--brand-no-title":(e.brand==="flowplate"||e.brand==="contentplate")&&!e.showTitle}]);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["logo-container",a.value])},[t.createElementVNode("img",{src:n.value,alt:`${l.brand} Logo`,class:t.normalizeClass(["logo-image",i.value])},null,10,p8),l.showTitle?(t.openBlock(),t.createElementBlock("h1",{key:0,class:t.normalizeClass(["logo-title",`logo-title--${l.size}`])},t.toDisplayString(o.value),3)):t.createCommentVNode("",!0)],2))}}),[["styles",[".logo-container{display:flex;align-items:center;gap:.75rem}.logo-container--sm{gap:.5rem}.logo-container--lg{gap:1rem}.logo-image{object-fit:contain;height:auto}.logo-image--sm{width:64px;height:64px}.logo-image--md{width:96px;height:96px}.logo-image--lg{width:128px;height:128px}.logo-image--brand-no-title.logo-image--lg{width:180px;height:54px}.logo-image{max-width:100%;height:auto;aspect-ratio:200/60}.logo-title{margin:0;font-weight:600;color:#374151}.logo-title--sm{font-size:1rem}.logo-title--md{font-size:1.25rem}.logo-title--lg{font-size:1.5rem}"]]]),m8={class:"form-group"},g8={class:"form-group"},f8={class:"form-actions"},E8={key:0,class:"error-message"},b8={class:"signup-link"},d_=x(t.defineComponent({__name:"LoginForm",props:{loading:{type:Boolean,default:!1},error:{default:"",type:String}},emits:["submit","switch-to-register"],setup(r,{emit:e}){const n=r,{currentProject:o,currentColorMode:a}=pe(),i=t.computed(()=>{var p;const g=((p=o.value)==null?void 0:p.name)||"Freddy Public";return g.includes("Contentplate")?"contentplate":g.includes("Flowplate")?"flowplate":(g.includes("Freddy"),"freddy")}),l=t.computed(()=>n.loading),s=t.computed(()=>n.error),c=e,d=t.ref(""),u=t.ref(""),_=t.computed(()=>d.value.trim()!==""&&u.value.length>=8),m=()=>{_.value&&c("submit",d.value,u.value)};return(g,p)=>{const b=t.resolveDirective("motion");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["login-form-container",`login-form-container--${i.value}`])},[t.createVNode(yr,{brand:i.value,size:"lg","show-title":i.value==="freddy"},null,8,["brand","show-title"]),t.withDirectives((t.openBlock(),t.createElementBlock("form",{onSubmit:t.withModifiers(m,["prevent"]),class:"login-form"},[t.createElementVNode("div",m8,[t.createVNode(Dt,{modelValue:d.value,"onUpdate:modelValue":p[0]||(p[0]=f=>d.value=f),label:"Email",placeholder:"Enter your email","input-type":"email","color-style":i.value==="contentplate"?"contentplate":"freddy",required:"",disabled:l.value},null,8,["modelValue","color-style","disabled"])]),t.createElementVNode("div",g8,[t.createVNode(Dt,{modelValue:u.value,"onUpdate:modelValue":p[1]||(p[1]=f=>u.value=f),label:"Password",placeholder:"Enter your password","input-type":"password","color-style":i.value==="contentplate"?"contentplate":"freddy",required:"",disabled:l.value},null,8,["modelValue","color-style","disabled"])]),t.createElementVNode("div",f8,[t.createVNode(ct,{type:"submit",label:"Login",hierarchy:"primary",size:"lg",loading:l.value,disabled:!_.value||l.value,class:t.normalizeClass(`login-button login-button--${i.value}`)},null,8,["loading","disabled","class"])]),s.value?(t.openBlock(),t.createElementBlock("p",E8,t.toDisplayString(s.value),1)):t.createCommentVNode("",!0),t.createElementVNode("div",b8,[p[3]||(p[3]=t.createTextVNode(" Don't have an account? ",-1)),t.createElementVNode("button",{type:"button",class:"link-button",onClick:p[2]||(p[2]=f=>g.$emit("switch-to-register"))}," Sign up ")])],32)),[[b,"slide-visible"]])],2)}}}),[["styles",[".login-form-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:400px;margin:0 auto}.login-form{width:100%;display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-actions{margin-top:.5rem}.login-button{width:100%}.login-button--flowplate{background:linear-gradient(135deg,var(--color-primary-500, var(--freddy-primary-color)),var(--color-purple-500, var(--freddy-primary-color)))!important;border:none!important;box-shadow:0 4px 12px var(--color-primary-300, rgba(99, 102, 241, .3));transition:all .3s ease}.login-button--flowplate:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-600, var(--freddy-primary-color)),var(--color-purple-600, var(--freddy-primary-color)))!important;transform:translateY(-1px);box-shadow:0 6px 16px var(--color-primary-400, rgba(99, 102, 241, .4))}.login-button--contentplate{background:var(--color-primary-500, var(--freddy-primary-color))!important;border:none!important;box-shadow:0 4px 12px var(--color-primary-300, rgba(124, 58, 237, .3));transition:all .3s ease}.login-button--contentplate:hover:not(:disabled){background:var(--color-primary-600, var(--freddy-primary-color))!important;transform:translateY(-1px);box-shadow:0 6px 16px var(--color-primary-400, rgba(124, 58, 237, .4))}.login-button--freddy{background:var(--color-primary-500, var(--freddy-primary-color))!important;border:none!important;box-shadow:0 4px 12px var(--color-primary-300, rgba(0, 174, 239, .3));transition:all .3s ease}.login-button--freddy:hover:not(:disabled){background:var(--color-primary-600, var(--freddy-primary-color))!important;transform:translateY(-1px);box-shadow:0 6px 16px var(--color-primary-400, rgba(0, 174, 239, .4))}.error-message{color:var(--color-destructive-500, var(--freddy-error-color));font-size:.875rem;text-align:center;margin:0}.login-form-container--contentplate .error-message{color:var(--color-destructive-500, var(--freddy-error-color))}.login-form-container--flowplate .error-message{background:var(--color-destructive-50, rgba(239, 68, 68, .1));padding:.75rem;border-radius:8px;border:2px solid var(--color-destructive-200, rgba(239, 68, 68, .2))}.login-form-container--freddy .error-message{color:var(--color-destructive-500, var(--freddy-error-color))}.signup-link{text-align:center;font-size:.875rem;color:var(--text-500, var(--freddy-text-secondary));margin-top:1rem}.login-form-container--contentplate .signup-link{color:var(--text-500, var(--freddy-text-secondary))}.login-form-container--flowplate .signup-link,.login-form-container--freddy .signup-link{color:var(--text-400, var(--text-muted))}.link-button{background:none;border:none;color:var(--color-primary-500, var(--freddy-primary-color));font-size:.875rem;cursor:pointer;padding:0;margin:0;text-decoration:none}.login-form-container--contentplate .link-button,.login-form-container--flowplate .link-button,.login-form-container--freddy .link-button{color:var(--color-primary-500, var(--freddy-primary-color));transition:color .2s ease}.link-button:hover{text-decoration:underline}.login-form-container--flowplate .link-button:hover,.login-form-container--contentplate .link-button:hover,.login-form-container--freddy .link-button:hover{color:var(--color-primary-600, var(--freddy-primary-color))}.login-form{animation:slideInUp .6s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.form-group{animation:fadeInUp .6s ease-out;animation-fill-mode:both}.form-group:nth-child(1){animation-delay:.1s}.form-group:nth-child(2){animation-delay:.2s}.form-actions{animation:fadeInUp .6s ease-out;animation-delay:.3s;animation-fill-mode:both}.signup-link{animation:fadeInUp .6s ease-out;animation-delay:.4s;animation-fill-mode:both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}"]]]);class S8{constructor(e={}){xe(this,"baseUrl");xe(this,"timeout");xe(this,"retries");xe(this,"defaultHeaders");this.baseUrl=e.baseUrl||om(),this.timeout=e.timeout||3e4,this.retries=e.retries||3,this.defaultHeaders={"Content-Type":"application/json",Accept:"application/json",Origin:window.location.origin,...e.headers}}async makeRequest(e,n={}){const o=`${this.baseUrl}${e}`,a={...this.defaultHeaders,...n.headers};Tt.isAuthenticated()&&(a.Authorization=`Bearer ${Tt.getToken()}`);const i=new AbortController,l=setTimeout(()=>i.abort(),this.timeout);try{const s=await fetch(o,{...n,headers:a,credentials:"include",signal:i.signal});clearTimeout(l);const c=await s.json();return s.ok?{success:!0,data:c,status:s.status}:{success:!1,error:c.message||`Request failed with status ${s.status}`,status:s.status,code:c.code}}catch(s){return clearTimeout(l),s.name==="AbortError"?{success:!1,error:"Request timeout"}:{success:!1,error:s.message||"Network error occurred"}}}async retryRequest(e,n={}){let o="";for(let a=1;a<=this.retries;a++){const i=await this.makeRequest(e,n);if(i.success)return i;if(o=i.error||"Unknown error",i.status&&i.status>=400&&i.status<500)break;a<this.retries&&await new Promise(l=>setTimeout(l,Math.pow(2,a)*1e3))}return{success:!1,error:`Request failed after ${this.retries} attempts. Last error: ${o}`}}buildQueryParams(e){const n=new URLSearchParams;return Object.entries(e).forEach(([o,a])=>{a!=null&&n.append(o,a.toString())}),n.toString()}setBaseUrl(e){this.baseUrl=e}setTimeout(e){this.timeout=e}setRetries(e){this.retries=e}addDefaultHeader(e,n){this.defaultHeaders[e]=n}removeDefaultHeader(e){delete this.defaultHeaders[e]}async batchRequest(e){const n=e.map(o=>this.makeRequest(o.endpoint,{method:o.method||"GET",body:o.body?JSON.stringify(o.body):void 0}));return Promise.all(n)}}class u_ extends S8{async login(e){return this.makeRequest("/login",{method:"POST",body:JSON.stringify(e)})}async verifyLogin(e){return this.makeRequest("/verify-login",{method:"POST",body:JSON.stringify(e)})}async sendEmailVerification(e){return this.makeRequest("/send-email-verification",{method:"POST",body:JSON.stringify(e)})}async requestNewVerification(e){return this.makeRequest("/request-new-verification",{method:"POST",body:JSON.stringify(e)})}async register(e){return this.makeRequest("/public-signup",{method:"POST",body:JSON.stringify(e)})}async getMfaQr(){return this.makeRequest("/mfa/qr",{method:"GET"})}async verifyMfa(e){return this.makeRequest("/mfa/verify",{method:"POST",body:JSON.stringify(e)})}async enableMfa(e){return this.makeRequest("/mfa/enable",{method:"POST",body:JSON.stringify(e)})}async disableMfa(e){return this.makeRequest("/mfa/disable",{method:"POST",body:JSON.stringify(e)})}async enforceMfa(e){return this.makeRequest("/mfa/enforce-mfa",{method:"POST",body:JSON.stringify(e)})}async getCurrentUser(){return this.makeRequest("/user/profile",{method:"GET"})}async updateUserProfile(e){return this.makeRequest("/user/profile",{method:"PUT",body:JSON.stringify(e)})}async changePassword(e,n){return this.makeRequest("/user/change-password",{method:"POST",body:JSON.stringify({currentPassword:e,newPassword:n})})}async getOrganizations(){return this.makeRequest("/organizations",{method:"GET"})}async getOrganization(e){return this.makeRequest(`/organizations/${e}`,{method:"GET"})}async getWorkflows(e){return this.makeRequest(`/organizations/${e}/workflows`,{method:"GET"})}async getWorkflow(e,n){return this.makeRequest(`/organizations/${e}/workflows/${n}`,{method:"GET"})}async createWorkflow(e,n){return this.makeRequest(`/organizations/${e}/workflows`,{method:"POST",body:JSON.stringify(n)})}async updateWorkflow(e,n,o){return this.makeRequest(`/organizations/${e}/workflows/${n}`,{method:"PUT",body:JSON.stringify(o)})}async deleteWorkflow(e,n){return this.makeRequest(`/organizations/${e}/workflows/${n}`,{method:"DELETE"})}getDeviceInformation(){const e=navigator.userAgent;return{deviceId:this.generateDeviceId(),deviceName:this.getDeviceName(e),deviceType:this.getDeviceType(e),operatingSystem:this.getOperatingSystem(e),platform:"web"}}generateDeviceId(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const n=Math.random()*16|0;return(e==="x"?n:n&3|8).toString(16)})}getDeviceName(e){return e.includes("Mac")?"Mac":e.includes("Windows")?"Windows PC":e.includes("Linux")?"Linux PC":e.includes("iPhone")?"iPhone":e.includes("iPad")?"iPad":e.includes("Android")?"Android Device":"Unknown Device"}getDeviceType(e){return e.includes("Mobile")?"mobile":e.includes("iPad")?"tablet":"desktop"}getOperatingSystem(e){return e.includes("Mac")?"macOS":e.includes("Windows")?"Windows":e.includes("Linux")?"Linux":e.includes("iPhone")?"iOS":e.includes("Android")?"Android":"Unknown OS"}async healthCheck(){return this.makeRequest("/health",{method:"GET"})}}new u_;class h8{constructor(){xe(this,"flowplateToken",null);xe(this,"jwtToken",null);xe(this,"user",null);xe(this,"deviceId");xe(this,"apiService");const e=localStorage.getItem("flowplate_token"),n=localStorage.getItem("flowplate_jwt_token"),o=localStorage.getItem("flowplate_user");e&&(this.flowplateToken=e),n&&(this.jwtToken=n),o&&(this.user=JSON.parse(o)),this.deviceId=localStorage.getItem("flowplate_device_id")||this.generateDeviceId(),localStorage.getItem("flowplate_device_id")||localStorage.setItem("flowplate_device_id",this.deviceId),this.apiService=new u_}generateDeviceId(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const n=Math.random()*16|0;return(e==="x"?n:n&3|8).toString(16)})}async login(e,n,o){try{const a=this.apiService.getDeviceInformation(),i={emailOrLdapLoginId:e,password:n,deviceInformation:a};o&&(i.mfaCode=o);const l=await this.apiService.login(i);if(!l.success)throw new Error(l.error||"Login failed");return l.data?(this.setTokens(l.data),this.setUser(l.data.user),!0):!1}catch(a){throw a}}async verifyLogin(e,n,o){try{const a={email:e,token:n,emailKey:o},i=await this.apiService.verifyLogin(a);if(!i.success)throw new Error(i.error||"Login verification failed");return i.data?(this.setTokens(i.data),this.setUser(i.data.user),!0):!1}catch(a){throw a}}async sendEmailVerification(e){try{const n={email:e},o=await this.apiService.sendEmailVerification(n);if(!o.success)throw new Error(o.error||"Failed to send email verification");return!0}catch(n){throw n}}async register(e,n,o,a){try{const i={email:e,firstName:n,lastName:o,password:a},l=await this.apiService.register(i);if(!l.success)throw new Error(l.error||"Registration failed");return!0}catch(i){throw i}}async getMfaQr(){try{const e=await this.apiService.getMfaQr();if(!e.success)throw new Error(e.error||"Failed to get MFA QR code");return e.data||null}catch(e){throw e}}async verifyMfa(e){try{const n={mfaCode:e},o=await this.apiService.verifyMfa(n);if(!o.success)throw new Error(o.error||"MFA verification failed");return!0}catch(n){throw n}}async enableMfa(e){try{const n={mfaCode:e},o=await this.apiService.enableMfa(n);if(!o.success)throw new Error(o.error||"Failed to enable MFA");return this.user&&(this.user.mfaEnabled=!0,this.setUser(this.user)),!0}catch(n){throw n}}async disableMfa(e,n){try{const o={mfaCode:e,mfaRecoveryCode:n},a=await this.apiService.disableMfa(o);if(!a.success)throw new Error(a.error||"Failed to disable MFA");return this.user&&(this.user.mfaEnabled=!1,this.setUser(this.user)),!0}catch(o){throw o}}async getCurrentUser(){try{const e=await this.apiService.getCurrentUser();if(!e.success)throw new Error(e.error||"Failed to get current user");return e.data?(this.setUser(e.data),e.data):null}catch(e){throw e}}setTokens(e){this.flowplateToken=e.flowplateToken,this.jwtToken=e.jwtToken,localStorage.setItem("flowplate_token",e.flowplateToken),localStorage.setItem("flowplate_jwt_token",e.jwtToken)}setUser(e){this.user=e,localStorage.setItem("flowplate_user",JSON.stringify(e))}getFlowplateToken(){return this.flowplateToken}getJwtToken(){return this.jwtToken}getUser(){return this.user}isAuthenticated(){return!!this.flowplateToken&&!!this.jwtToken}getDeviceId(){return this.deviceId}logout(){this.flowplateToken=null,this.jwtToken=null,this.user=null,localStorage.removeItem("flowplate_token"),localStorage.removeItem("flowplate_jwt_token"),localStorage.removeItem("flowplate_user")}}const __=new h8,p_=t.defineComponent({__name:"LoginPage",props:{initialEmail:{default:"",type:String}},emits:["login-success","switch-to-register"],setup(r,{emit:e}){const{currentProject:n,initializeTheme:o}=pe();t.onMounted(async()=>{await o()});const a=t.computed(()=>{var u;const d=((u=n.value)==null?void 0:u.name)||"Freddy Public";return d.includes("Contentplate")?"contentplate":d.includes("Flowplate")?"flowplate":(d.includes("Freddy"),"freddy")}),i=e,l=t.ref(!1),s=t.ref(""),c=async(d,u)=>{l.value=!0,s.value="";try{if(a.value==="flowplate")if(await __.login(d,u))i("login-success",d);else throw new Error("Login failed");else if(await new Promise(_=>setTimeout(_,1e3)),d&&u)i("login-success",d);else throw new Error("Please enter valid email and password")}catch(_){s.value=_.message||"Login failed. Please try again."}finally{l.value=!1}};return(d,u)=>(t.openBlock(),t.createBlock(Wi,{brand:a.value},{default:t.withCtx(()=>[t.createVNode(Ki,{brand:a.value},{default:t.withCtx(()=>[t.createVNode(d_,{brand:a.value,loading:l.value,error:s.value,onSubmit:c,onSwitchToRegister:u[0]||(u[0]=_=>d.$emit("switch-to-register"))},null,8,["brand","loading","error"])]),_:1},8,["brand"])]),_:1},8,["brand"]))}}),C8={class:"form-group"},y8={class:"form-group"},T8={class:"form-group"},A8={class:"form-actions"},N8={key:0,class:"error-message"},R8={class:"login-link"},m_=x(t.defineComponent({__name:"RegisterForm",props:{loading:{type:Boolean,default:!1},error:{default:"",type:String}},emits:["submit","switch-to-login"],setup(r,{emit:e}){const{currentProject:n,currentColorMode:o}=pe(),a=r,i=t.computed(()=>{var b;const p=((b=n.value)==null?void 0:b.name)||"Freddy Public";return p.includes("Contentplate")?"contentplate":p.includes("Flowplate")?"flowplate":(p.includes("Freddy"),"freddy")}),l=a.loading,s=a.error,c=e,d=t.ref(""),u=t.ref(""),_=t.ref(""),m=t.computed(()=>d.value.trim()!==""&&u.value.trim()!==""&&_.value.length>=8),g=()=>{m.value&&c("submit",d.value,u.value,_.value)};return(p,b)=>{const f=t.resolveDirective("motion");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["register-form-container",`register-form-container--${i.value}`])},[t.createVNode(yr,{brand:i.value,size:"lg","show-title":i.value==="freddy"},null,8,["brand","show-title"]),b[5]||(b[5]=t.createElementVNode("h2",{class:"form-title"},"Create Account",-1)),t.withDirectives((t.openBlock(),t.createElementBlock("form",{onSubmit:t.withModifiers(g,["prevent"]),class:"register-form"},[t.createElementVNode("div",C8,[t.createVNode(Dt,{modelValue:d.value,"onUpdate:modelValue":b[0]||(b[0]=C=>d.value=C),label:"Full Name",placeholder:"Enter your full name","input-type":"text","color-style":i.value==="contentplate"?"contentplate":"freddy",required:"",disabled:t.unref(l)},null,8,["modelValue","color-style","disabled"])]),t.createElementVNode("div",y8,[t.createVNode(Dt,{modelValue:u.value,"onUpdate:modelValue":b[1]||(b[1]=C=>u.value=C),label:"Email",placeholder:"Enter your email","input-type":"email","color-style":i.value==="contentplate"?"contentplate":"freddy",required:"",disabled:t.unref(l)},null,8,["modelValue","color-style","disabled"])]),t.createElementVNode("div",T8,[t.createVNode(Dt,{modelValue:_.value,"onUpdate:modelValue":b[2]||(b[2]=C=>_.value=C),label:"Password",placeholder:"Enter your password","input-type":"password","color-style":i.value==="contentplate"?"contentplate":"freddy",required:"",disabled:t.unref(l)},null,8,["modelValue","color-style","disabled"])]),t.createElementVNode("div",A8,[t.createVNode(ct,{type:"submit",label:"Create Account",hierarchy:"primary",size:"lg",loading:t.unref(l),disabled:!m.value||t.unref(l),class:t.normalizeClass(`register-button register-button--${i.value}`)},null,8,["loading","disabled","class"])]),t.unref(s)?(t.openBlock(),t.createElementBlock("p",N8,t.toDisplayString(t.unref(s)),1)):t.createCommentVNode("",!0),t.createElementVNode("div",R8,[b[4]||(b[4]=t.createTextVNode(" Already have an account? ",-1)),t.createElementVNode("button",{type:"button",class:"link-button",onClick:b[3]||(b[3]=C=>p.$emit("switch-to-login"))}," Login ")])],32)),[[f,"slide-visible"]])],2)}}}),[["styles",[".register-form-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:400px;margin:0 auto}.form-title{margin:2rem 0 0;font-size:1.5rem;font-weight:700;text-align:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.register-form-container--contentplate .form-title{color:var(--freddy-text-primary)}.register-form-container--flowplate .form-title{color:var(--text-inverse);text-shadow:0 2px 4px var(--text-muted)}.register-form-container--freddy .form-title{color:var(--text-muted)}.register-form{width:100%;display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-actions{margin-top:.5rem}.register-button{width:100%}.register-button--flowplate{background:linear-gradient(135deg,var(--color-primary-500, var(--freddy-primary-color)),var(--color-purple-500, var(--freddy-primary-color)))!important;border:none!important;box-shadow:0 4px 12px var(--color-primary-300, rgba(99, 102, 241, .3));transition:all .3s ease}.register-button--flowplate:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-600, var(--freddy-primary-color)),var(--color-purple-600, var(--freddy-primary-color)))!important;transform:translateY(-1px);box-shadow:0 6px 16px var(--color-primary-400, rgba(99, 102, 241, .4))}.error-message{color:var(--color-destructive-500, var(--freddy-error-color));font-size:.875rem;text-align:center;margin:0}.register-form-container--contentplate .error-message{color:var(--color-destructive-500, var(--freddy-error-color))}.register-form-container--flowplate .error-message{background:var(--color-destructive-50, rgba(239, 68, 68, .1));padding:.75rem;border-radius:8px;border:2px solid var(--color-destructive-200, rgba(239, 68, 68, .2))}.register-form-container--freddy .error-message{color:var(--color-destructive-500, var(--freddy-error-color))}.login-link{text-align:center;font-size:.875rem;color:var(--text-500, var(--freddy-text-secondary));margin-top:1rem}.register-form-container--contentplate .login-link{color:var(--text-500, var(--freddy-text-secondary))}.register-form-container--flowplate .login-link,.register-form-container--freddy .login-link{color:var(--text-400, var(--text-muted))}.link-button{background:none;border:none;color:var(--color-primary-500, var(--freddy-primary-color));font-size:.875rem;cursor:pointer;padding:0;margin:0;text-decoration:none}.register-form-container--contentplate .link-button,.register-form-container--flowplate .link-button,.register-form-container--freddy .link-button{color:var(--color-primary-500, var(--freddy-primary-color));transition:color .2s ease}.link-button:hover{text-decoration:underline}.register-form-container--flowplate .link-button:hover{color:var(--color-primary-600, var(--freddy-primary-color))}.register-form{animation:slideInUp .6s ease-out}.form-title{animation:fadeInUp .6s ease-out;animation-delay:.1s;animation-fill-mode:both}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.form-group{animation:fadeInUp .6s ease-out;animation-fill-mode:both}.form-group:nth-child(1){animation-delay:.2s}.form-group:nth-child(2){animation-delay:.3s}.form-group:nth-child(3){animation-delay:.4s}.form-actions{animation:fadeInUp .6s ease-out;animation-delay:.5s;animation-fill-mode:both}.login-link{animation:fadeInUp .6s ease-out;animation-delay:.6s;animation-fill-mode:both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}"]]]),g_=t.defineComponent({__name:"RegisterPage",props:{initialEmail:{default:"",type:String}},emits:["register-success","switch-to-login"],setup(r,{emit:e}){const{currentProject:n,initializeTheme:o}=pe();t.onMounted(async()=>{await o()});const a=t.computed(()=>{var u;const d=((u=n.value)==null?void 0:u.name)||"Freddy Public";return d.includes("Contentplate")?"contentplate":d.includes("Flowplate")?"flowplate":(d.includes("Freddy"),"freddy")}),i=e,l=t.ref(!1),s=t.ref(""),c=async(d,u,_)=>{l.value=!0,s.value="";try{if(a.value==="flowplate")if(await __.register(u,d.split(" ")[0],d.split(" ").slice(1).join(" "),_))i("register-success",u);else throw new Error("Registration failed");else if(await new Promise(m=>setTimeout(m,1500)),d&&u&&_)i("register-success",u);else throw new Error("Please enter valid registration information")}catch(m){s.value=m.message||"Registration failed. Please try again."}finally{l.value=!1}};return(d,u)=>(t.openBlock(),t.createBlock(Wi,{brand:a.value},{default:t.withCtx(()=>[t.createVNode(Ki,{brand:a.value},{default:t.withCtx(()=>[t.createVNode(m_,{brand:a.value,loading:l.value,error:s.value,onSubmit:c,onSwitchToLogin:u[0]||(u[0]=_=>d.$emit("switch-to-login"))},null,8,["brand","loading","error"])]),_:1},8,["brand"])]),_:1},8,["brand"]))}}),x8={key:0,class:"api-warning"},v8={class:"api-warning__content"},O8={class:"api-warning__text"},I8=x(t.defineComponent({__name:"AuthManager",props:{initialView:{default:"login",type:String},initialEmail:{default:"",type:String}},emits:["login-success","register-success"],setup(r,{emit:e}){const n=r,{currentProject:o,initializeTheme:a}=pe();t.onMounted(async()=>{await a()});const i=t.computed(()=>{var p;const g=((p=o.value)==null?void 0:p.name)||"Freddy Public";return g.includes("Contentplate")?"contentplate":g.includes("Flowplate")?"flowplate":(g.includes("Freddy"),"freddy")}),l=e,s=t.ref(n.initialView),c=t.ref(n.initialEmail),d=()=>{s.value="register"},u=()=>{s.value="login"},_=g=>{l("login-success",g)},m=g=>{l("register-success",g)};return(g,p)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["auth-manager",`auth-manager--${i.value}`])},[i.value!=="flowplate"?(t.openBlock(),t.createElementBlock("div",x8,[t.createElementVNode("div",v8,[p[1]||(p[1]=t.createElementVNode("div",{class:"api-warning__icon"},"โ ๏ธ",-1)),t.createElementVNode("div",O8,[p[0]||(p[0]=t.createElementVNode("h3",null,"API Integration Not Available",-1)),t.createElementVNode("p",null,"API interaction is not yet enabled for "+t.toDisplayString(i.value)+" brand. This is a demo interface.",1)])])])):t.createCommentVNode("",!0),t.createVNode(t.Transition,{name:"auth-slide",mode:"out-in"},{default:t.withCtx(()=>[s.value==="login"?(t.openBlock(),t.createBlock(p_,{key:"login",brand:i.value,"initial-email":c.value,onLoginSuccess:_,onSwitchToRegister:d},null,8,["brand","initial-email"])):(t.openBlock(),t.createBlock(g_,{key:"register",brand:i.value,"initial-email":c.value,onRegisterSuccess:m,onSwitchToLogin:u},null,8,["brand","initial-email"]))]),_:1})],2))}}),[["styles",[".auth-manager{width:100%;height:100vh;overflow:hidden;position:relative}.api-warning{position:absolute;top:0;left:0;right:0;z-index:100;background:#ffc1071a;border-bottom:2px solid #ffc107;padding:12px 20px}.api-warning__content{display:flex;align-items:center;gap:12px;max-width:600px;margin:0 auto}.api-warning__icon{font-size:20px;flex-shrink:0}.api-warning__text h3{margin:0 0 4px;font-size:14px;font-weight:600;color:#d97706}.api-warning__text p{margin:0;font-size:12px;color:#92400e;line-height:1.4}.auth-manager--contentplate{background:var(--freddy-bg-secondary)}.auth-manager--flowplate{background:linear-gradient(135deg,var(--freddy-bg-primary) 0%,var(--freddy-bg-primary) 100%)}.auth-manager--freddy{background:var(--freddy-bg-primary)}.auth-slide-enter-active,.auth-slide-leave-active{transition:all .6s cubic-bezier(.4,0,.2,1)}.auth-slide-enter-from{opacity:0;transform:scale(.95) translateY(20px)}.auth-slide-leave-to{opacity:0;transform:scale(.95) translateY(-20px)}.auth-slide-enter-to,.auth-slide-leave-from{opacity:1;transform:scale(1) translateY(0)}.auth-manager--contentplate .auth-slide-enter-active,.auth-manager--contentplate .auth-slide-leave-active{transition:all .5s ease-in-out}.auth-manager--flowplate .auth-slide-enter-active,.auth-manager--flowplate .auth-slide-leave-active{transition:all .7s cubic-bezier(.4,0,.2,1)}.auth-manager--freddy .auth-slide-enter-active,.auth-manager--freddy .auth-slide-leave-active{transition:all .6s ease-out}"]]]),D8=".bg-modalBackgroundBlur{background-color:#1d2e47e6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.bg-background{background-color:#0f172a}.freddy-modal-container{background-color:var(--bg-900, var(--freddy-bg-primary));padding:2rem;border-radius:2.5rem;overflow:hidden;color:#fff}.modal-header:last-child,.modal-body:last-child,.modal-footer:last-child{margin-bottom:0}.modal-enter-active,.modal-leave-active{transition:all .3s ease}.modal-enter-from,.modal-leave-to{opacity:0;transform:scale(.9)}.modal-enter-to,.modal-leave-from{opacity:1;transform:scale(1)}@media (min-width: 1280px){.modal-container-large{width:56.25rem}}@media (max-width: 1279px) and (min-width: 1024px){.modal-container-large{width:56.25rem}}@media (max-width: 1023px) and (min-width: 768px){.modal-container-large{width:56.25rem}}@media (max-width: 767px) and (min-width: 640px){.modal-container-large{width:45.625rem}}@media (max-width: 639px) and (min-width: 480px){.modal-container-large{width:31.25rem}}@media (max-width: 479px){.modal-container-large{width:auto;max-width:90%}}",w8={name:"ModalBox",props:{isVisible:{type:Boolean,default:!0},largeModel:{type:Boolean,default:!0}},methods:{closeModal(){this.$emit("close")}}},k8={key:0,class:"fixed z-[9998] top-0 left-0 w-full h-full bg-modalBackgroundBlur flex justify-center items-center"},M8={class:"flex justify-center items-center"},L8={class:"modal-header"},P8={class:"modal-body"},B8={class:"modal-footer"};function F8(r,e,n,o,a,i){return t.openBlock(),t.createBlock(t.Transition,{name:"modal"},{default:t.withCtx(()=>[n.isVisible?(t.openBlock(),t.createElementBlock("div",k8,[t.createElementVNode("div",M8,[t.createElementVNode("div",{class:t.normalizeClass({"p-8 bg-background rounded-[2.5rem] overflow-hidden text-white":n.largeModel,"modal-container-large":n.largeModel})},[t.createElementVNode("div",L8,[t.renderSlot(r.$slots,"header")]),t.createElementVNode("div",P8,[t.renderSlot(r.$slots,"body")]),t.createElementVNode("div",B8,[t.renderSlot(r.$slots,"footer")])],2)])])):t.createCommentVNode("",!0)]),_:3})}const U8=x(w8,[["render",F8],["styles",[D8]]]),G8={class:"freddy-modal-header"},V8={class:"freddy-modal-body"},Y8=x(t.defineComponent({__name:"ModalOverlay",props:{modalTitle:{type:String},headerClass:{type:String},disableClickOutside:{type:Boolean}},emits:["close"],setup(r,{emit:e}){const{currentProject:n,currentColorMode:o}=pe(),a=r,i=e,l=()=>{i("close")},s=()=>{a.disableClickOutside||l()};return(c,d)=>(t.openBlock(),t.createElementBlock("div",{role:"dialog","aria-modal":"true",class:"freddy-modal-overlay",onClick:s},[t.createElementVNode("div",{class:"freddy-modal-content",onClick:d[0]||(d[0]=t.withModifiers(()=>{},["stop"]))},[t.createElementVNode("header",G8,[t.createElementVNode("h2",{class:t.normalizeClass(["freddy-modal-title",c.headerClass])},t.toDisplayString(c.modalTitle),3),t.createElementVNode("button",{class:"freddy-modal-close",onClick:l},[t.createVNode(qr,{class:"freddy-modal-close-icon"})])]),t.createElementVNode("div",V8,[t.renderSlot(c.$slots,"content")])])]))}}),[["styles",[".freddy-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background-color:#031525c4;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;overflow:auto}.freddy-modal-content{background-color:var(--text-900, var(--freddy-bg-primary));border-radius:40px;box-shadow:0 0 10px 2px #ffffff40;padding:30px;position:relative;margin:auto;min-width:370px;max-width:90%;width:auto}.freddy-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:8px}.freddy-modal-title{font-size:29px;line-height:35px;font-weight:600;margin:0}.freddy-modal-close{background:none;border:none;font-size:35px;font-weight:400;color:#fff;padding:0;line-height:1;cursor:pointer}.freddy-modal-close-icon{width:16px;height:16px;stroke-width:2px}"]]]),z8={key:0,class:"freddy-pagination-nav","aria-label":"Pagination"},H8=["disabled"],q8={class:"freddy-pagination-dynamic-container"},W8=["onClick","disabled"],K8=["disabled"],Q8=x(t.defineComponent({__name:"Pagination",props:{totalItems:{type:Number,required:!0,default:0},itemsPerPage:{type:Number,required:!0,default:10},currentPage:{type:Number,required:!0,default:1}},emits:["update:currentPage"],setup(r,{emit:e}){const n=r,o=e,a=t.computed(()=>!n.totalItems||isNaN(n.totalItems)?0:Math.ceil(n.totalItems/n.itemsPerPage)),i=t.computed(()=>{const s=[],c=a.value,d=n.currentPage;if(c<=7)for(let u=1;u<=c;u++)s.push(u);else{s.push(1),d>4?s.push("..."):s.push(2,3);for(let u=Math.max(4,d-1);u<=Math.min(c-3,d+1);u++)s.push(u);d<c-4&&s.push("..."),s.push(c-2,c-1,c)}return s});function l(s){s==="..."||s===n.currentPage||typeof s=="number"&&s>=1&&s<=a.value&&o("update:currentPage",s)}return(s,c)=>a.value>0?(t.openBlock(),t.createElementBlock("nav",z8,[t.createElementVNode("button",{class:t.normalizeClass(["freddy-pagination-end-button",{"freddy-pagination-hover-enabled":r.currentPage!==1}]),onClick:c[0]||(c[0]=d=>l(r.currentPage-1)),disabled:r.currentPage===1}," Previous ",10,H8),t.createElementVNode("div",q8,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.value,d=>(t.openBlock(),t.createElementBlock("button",{key:String(d),class:t.normalizeClass(["freddy-pagination-number-button",{active:d===r.currentPage}]),onClick:u=>l(d),disabled:d==="..."||d===r.currentPage},t.toDisplayString(d),11,W8))),128)),t.createElementVNode("button",{class:t.normalizeClass(["freddy-pagination-end-button",{"freddy-pagination-hover-enabled":r.currentPage!==a.value}]),onClick:c[1]||(c[1]=d=>l(r.currentPage+1)),disabled:r.currentPage===a.value||a.value===0}," Next ",10,K8)])])):t.createCommentVNode("",!0)}}),[["styles",[".freddy-pagination-nav{width:100%;display:flex;gap:.25rem;justify-content:space-between}.freddy-pagination-number-button{display:flex;align-items:center;justify-content:center;border-radius:4px;color:var(--text-500, var(--freddy-text-secondary));cursor:pointer;padding:.5rem .75rem;height:auto;background:transparent;border:none;transition:background-color .2s,color .2s}.freddy-pagination-number-button.active,.freddy-pagination-number-button.bg-white{background-color:var(--bg-surface);color:#fff}.freddy-pagination-dynamic-container{display:flex;gap:.25rem}.freddy-pagination-end-button{margin-left:16px;display:flex;align-items:center;justify-content:center;padding:0 1rem;height:2.5rem;margin-inline-start:0;line-height:1.25rem;color:var(--text-500, var(--freddy-text-secondary));background-color:var(--text-900, var(--freddy-bg-primary));border:2px solid var(--border-light);border-radius:.5rem;cursor:pointer;transition:background-color .2s,color .2s}.freddy-pagination-hover-enabled:hover{background-color:var(--bg-surface);color:var(--text-300, var(--text-muted));cursor:pointer}"]]]),$8=["placeholder","maxlength"],Z8=x(t.defineComponent({inheritAttrs:!1,__name:"SearchInput",props:{placeholder:{default:"Search here...",type:String},showLoaderForSearch:{type:Boolean,default:!1},maxCharLimit:{default:void 0,type:Number}},emits:["update:searchInput"],setup(r,{emit:e}){const{currentProject:n,currentColorMode:o}=pe(),a=t.useAttrs(),i=t.ref(null),l=t.ref(null),s=t.ref(null),c=e,d=()=>{var _;(_=l.value)==null||_.focus()},u=()=>{c("update:searchInput",i.value)};return(_,m)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"dropdownRef",ref:s,class:t.normalizeClass(["freddy-search-wrapper",t.unref(a).class]),onClick:d},[t.createVNode(t.unref(Bs),{class:"freddy-search-icon"}),t.withDirectives(t.createElementVNode("input",{type:"text",id:"search-input",class:"freddy-search-input",ref_key:"searchInput",ref:l,"onUpdate:modelValue":m[0]||(m[0]=g=>i.value=g),onInput:u,placeholder:_.placeholder,maxlength:_.maxCharLimit},null,40,$8),[[t.vModelText,i.value]]),_.showLoaderForSearch?(t.openBlock(),t.createBlock(Br,{key:0,class:"freddy-search-spinner"})):t.createCommentVNode("",!0)],2))}}),[["styles",[".freddy-search-wrapper{display:flex;box-sizing:border-box;align-items:flex-start;gap:.5rem;height:37px;width:100%;border:2px solid var(--freddy-border-color);padding-left:.875rem;padding-right:.875rem;border-radius:.5rem;cursor:text}.freddy-search-icon{flex-shrink:0;width:1.25rem;height:1.25rem;align-self:center;stroke:var(--text-muted)}.freddy-search-input{flex:1 1 auto;width:100%;font-size:14px;font-weight:500;line-height:16px;background:transparent;border:none;outline:none;color:var(--text-300, var(--text-muted));align-self:center}.freddy-search-input::placeholder{color:var(--text-muted);opacity:.7}.freddy-search-input:-webkit-autofill,.freddy-search-input:-webkit-autofill:hover,.freddy-search-input:-webkit-autofill:focus,.freddy-search-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px transparent inset!important;-webkit-text-fill-color:var(--text-300, var(--text-muted))!important;transition:background-color 5000s ease-in-out 0s;background-color:transparent!important;background-image:none!important}.freddy-search-input:-moz-autofill,.freddy-search-input:-moz-autofill:focus{background-color:transparent!important;color:var(--text-300, var(--text-muted))!important;border:none!important;box-shadow:none!important}.freddy-search-input:-ms-autofill,.freddy-search-input:-ms-autofill:focus{background-color:transparent!important;color:var(--text-300, var(--text-muted))!important;border:none!important;box-shadow:none!important}.freddy-search-spinner{width:21px!important;align-self:center}"]]]),X8={key:0,class:"skeleton-card"},j8={key:0,class:"skeleton-line skeleton-wave skeleton-w-32 skeleton-h-6 mb-2"},J8={key:1,class:"skeleton-paragraph"},e7={key:0,class:"skeleton-line skeleton-wave skeleton-h-6 skeleton-w-40 mb-2"},t7={key:2,class:"skeleton-single-box"},r7={key:0,class:"skeleton-line skeleton-wave skeleton-h-6 skeleton-w-40 mb-2"},n7={key:3,class:"skeleton-table"},o7={key:0,class:"skeleton-line skeleton-wave skeleton-h-6 skeleton-w-40"},a7={class:"table-full"},i7=x(t.defineComponent({__name:"SkeletonLoader",props:{type:{type:String},hasHeader:{type:Boolean},count:{type:Number}},setup(r){const{currentProject:e,currentColorMode:n}=pe(),o=r,{type:a,hasHeader:i=!1,count:l=5}=o;return(s,c)=>t.unref(a)==="card"?(t.openBlock(),t.createElementBlock("div",X8,[t.unref(i)?(t.openBlock(),t.createElementBlock("div",j8)):t.createCommentVNode("",!0),c[0]||(c[0]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-6 skeleton-w-3-4"},null,-1)),c[1]||(c[1]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-4 skeleton-w-full"},null,-1)),c[2]||(c[2]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-4 skeleton-w-5-6"},null,-1))])):t.unref(a)==="paragraph"?(t.openBlock(),t.createElementBlock("div",J8,[t.unref(i)?(t.openBlock(),t.createElementBlock("div",e7)):t.createCommentVNode("",!0),c[3]||(c[3]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-4 skeleton-w-full"},null,-1)),c[4]||(c[4]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-4 skeleton-w-5-6"},null,-1)),c[5]||(c[5]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-4 skeleton-w-3-4"},null,-1))])):t.unref(a)==="single-box"?(t.openBlock(),t.createElementBlock("div",t7,[t.unref(i)?(t.openBlock(),t.createElementBlock("div",r7)):t.createCommentVNode("",!0),c[6]||(c[6]=t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-4 skeleton-w-full"},null,-1))])):t.unref(a)==="table"?(t.openBlock(),t.createElementBlock("div",n7,[t.unref(i)?(t.openBlock(),t.createElementBlock("div",o7)):t.createCommentVNode("",!0),t.createElementVNode("table",a7,[t.createElementVNode("tbody",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),d=>(t.openBlock(),t.createElementBlock("tr",{key:d},[...c[7]||(c[7]=[t.createElementVNode("td",{class:"td-padding"},[t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-8 skeleton-w-full"})],-1),t.createElementVNode("td",{class:"td-padding"},[t.createElementVNode("div",{class:"skeleton-line skeleton-wave skeleton-h-8 skeleton-w-full"})],-1)])]))),128))])])])):t.createCommentVNode("",!0)}}),[["styles",['.skeleton-card{background-color:var(--freddy-bg-primary)a8;padding:1rem;border:2px solid var(--text-50, var(--text-inverse))fff0a;border-radius:.5rem;box-shadow:4px 7px 27px -13px #fdfdff0f;display:flex;flex-direction:column;gap:1rem}.skeleton-paragraph,.skeleton-single-box,.skeleton-single-paragraph{padding:1rem;border:2px solid var(--text-50, var(--text-inverse))fff0a;border-radius:.75rem;background-color:var(--freddy-bg-primary)a8;box-shadow:4px 7px 27px -13px #fdfdff0f;display:flex;flex-direction:column;gap:.5rem}.skeleton-single-box{padding:8px}.skeleton-table{background-color:var(--freddy-bg-primary)a8;padding:1rem;border:2px solid var(--text-50, var(--text-inverse))fff0a;border-radius:.5rem;overflow:hidden;box-shadow:4px 7px 27px -13px #fdfdff0f;display:flex;flex-direction:column;gap:1rem}.skeleton-wave{position:relative;overflow:hidden;background-color:var(--text-900, var(--freddy-bg-primary))}.skeleton-wave:after{content:"";position:absolute;top:0;left:-150%;height:100%;width:150%;background:linear-gradient(90deg,#fff0,#ffffffb3,#fff0);animation:wave 3s ease-in-out infinite}@keyframes wave{0%{left:-150%}50%{left:100%}to{left:100%}}.skeleton-line{background-color:var(--text-50, var(--text-inverse))fff17;border-radius:.25rem}.skeleton-h-4{height:1rem}.skeleton-h-6{height:1.5rem}.skeleton-h-8{height:2rem}.skeleton-w-full{width:100%}.skeleton-w-5-6{width:83.333333%}.skeleton-w-3-4{width:75%}.skeleton-w-40{width:10rem}.skeleton-w-32{width:8rem}.table-full{min-width:100%;border-collapse:collapse}.td-padding{padding:.5rem 1.5rem}']]]),s7={class:"freddy-plugin-snackbar-content"},l7={class:"freddy-plugin-snackbar-left"},c7={class:"freddy-plugin-snackbar-text"},d7=["innerHTML"],u7=["innerHTML"],_7=["onClick"],p7=x(t.defineComponent({__name:"SnackBar",setup(r){const{currentProject:e,currentColorMode:n}=pe(),{snackQueue:o}=lm(),a=s=>{switch(s){case"success":return zr;case"danger":return yt;case"info":return _r;default:return zr}},i=t.computed(()=>{const s=o.value[o.value.length-1];if(!s)return"side70";switch(s.toastContainerSize){case"half":return"half";case"full":return"full";default:return"side70"}}),l=s=>{o.value.splice(s,1)};return(s,c)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["freddy-plugin-snackbar-container",`freddy-plugin-snackbar-container--${i.value}`])},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o),(d,u)=>(t.openBlock(),t.createElementBlock("div",{key:u,class:t.normalizeClass(["freddy-plugin-snackbar",`freddy-plugin-snackbar--${d.toastType}`])},[t.createElementVNode("div",s7,[t.createElementVNode("div",l7,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a(d.toastType)),{class:t.normalizeClass(["freddy-plugin-snackbar-icon",[d.toastType==="info"&&"freddy-plugin-snackbar-icon--info",d.toastType==="danger"&&"freddy-plugin-snackbar-icon--danger",d.toastType==="success"&&"freddy-plugin-snackbar-icon--success"]])},null,8,["class"])),t.createElementVNode("div",c7,[t.createElementVNode("p",{class:"freddy-plugin-snackbar-title",innerHTML:d.title},null,8,d7),t.createElementVNode("p",{class:"freddy-plugin-snackbar-message",innerHTML:d.message},null,8,u7)])]),t.createElementVNode("button",{class:"freddy-plugin-snackbar-close-btn",onClick:_=>l(u)},[t.createVNode(qr,{class:"freddy-plugin-snackbar-close-icon"})],8,_7)])],2))),128))],2))}}),[["styles",["@keyframes fade-in-right{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.freddy-plugin-snackbar-container{position:fixed;right:1.25rem;bottom:.5rem;padding-bottom:17px;z-index:50}.freddy-plugin-snackbar-container--side70{width:78%}.freddy-plugin-snackbar-container--half{width:50%}.freddy-plugin-snackbar-container--full{width:100%;padding-left:2.5rem}.freddy-plugin-snackbar{margin-top:.75rem;padding:1rem;border-radius:1.5rem;background-color:var(--text-900, var(--freddy-bg-primary));animation:fade-in-right .5s ease-out}.freddy-plugin-snackbar--info{border:2px solid var(--text-50, var(--text-inverse))fff;box-shadow:0 0 0 1px var(--text-50, var(--text-inverse))}.freddy-plugin-snackbar--danger{border:2px solid var(--color-warning-500, var(--freddy-warning-color));box-shadow:0 0 0 1px var(--color-warning-500, var(--freddy-warning-color))}.freddy-plugin-snackbar--success{border:2px solid var(--color-success-500, var(--freddy-success-color));box-shadow:0 0 0 1px var(--color-success-500, var(--freddy-success-color))}.freddy-plugin-snackbar-content{display:flex;justify-content:space-between;align-items:center;position:relative}.freddy-plugin-snackbar-left{display:flex;gap:1rem}.freddy-plugin-snackbar-icon{height:16px;width:16px;stroke-width:2;color:var(--text-50, var(--text-inverse))fff;border-radius:9999px;padding:.25rem;border:4px solid transparent;box-sizing:content-box}.freddy-plugin-snackbar-icon--info{border-color:var(--text-50, var(--text-inverse))fff33;background-color:var(--text-50, var(--text-inverse))fff17}.freddy-plugin-snackbar-icon--danger{border-color:var(--color-warning-500, var(--freddy-warning-color));background-color:var(--color-warning-500, var(--freddy-warning-color))}.freddy-plugin-snackbar-icon--success{border-color:var(--color-success-500, var(--freddy-success-color));background-color:var(--color-success-400, var(--freddy-success-color))}.freddy-plugin-snackbar-text{display:flex;flex-direction:column;gap:.375rem;color:var(--text-50, var(--text-inverse))fff}.freddy-plugin-snackbar-title{font-size:.875rem;font-weight:600;margin:0;color:var(--text-50, var(--text-inverse))fff}.freddy-plugin-snackbar-message{font-size:.875rem;font-weight:500;line-height:normal;margin:0;color:var(--text-50, var(--text-inverse))fff}.freddy-plugin-snackbar-close-btn{position:absolute;right:.5rem;top:0;background:none;border:none;cursor:pointer}.freddy-plugin-snackbar-close-icon{height:10px;width:10px;stroke-width:1.67;color:#fff}"]]]),m7={class:"freddy-plugin-nav-bar"},g7=["onClick"],f7=x(t.defineComponent({__name:"TabList",props:{tabList:{type:Array},currentTab:{default:0,type:Number}},emits:["tabSwitch"],setup(r,{emit:e}){const n=r,o=e,a=t.ref(n.currentTab),i=l=>{a.value!==l.id&&(a.value=l.id,o("tabSwitch",l.id))};return(l,s)=>(t.openBlock(),t.createElementBlock("div",m7,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.tabList,(c,d)=>(t.openBlock(),t.createElementBlock("button",{class:"freddy-plugin-menu-button",key:d,onClick:u=>i(c)},[t.createTextVNode(t.toDisplayString(c.title)+" ",1),t.createElementVNode("span",{class:t.normalizeClass({"freddy-plugin-active-tab":a.value===c.id})},null,2)],8,g7))),128))]))}}),[["styles",[".freddy-plugin-nav-bar{display:flex;width:100%;gap:24px;border-bottom:1px solid rgba(255,255,255,.09);padding-right:10px;font-family:Inter,sans-serif;font-size:.875rem;font-weight:600}.freddy-plugin-menu-button{all:unset;display:flex;flex-direction:column;padding-top:8px;cursor:pointer}.freddy-plugin-active-tab{width:100%;background-color:var(--text-50, var(--text-inverse))fff;height:2px;border-top-left-radius:.375rem;border-top-right-radius:.375rem}"]]]),E7={class:"theme-switcher"},b7={class:"theme-switcher-header"},S7={class:"header-content"},h7={class:"header-right"},C7=["title"],y7={class:"status-text"},T7={key:0,class:"loading-container"},A7={key:1,class:"error-container"},N7={class:"error-content"},R7={key:2,class:"theme-switcher-main"},x7={class:"current-theme-section"},v7={class:"section-header"},O7={class:"current-theme-card"},I7={class:"theme-info"},D7={class:"theme-brand-info"},w7={class:"brand-icon"},k7={class:"brand-details"},M7={class:"brand-version"},L7={class:"theme-mode-info"},P7={class:"mode-details"},B7={class:"mode-key"},F7={key:0,class:"enhanced-color-preview"},U7={class:"primary-color-grid"},G7=["onClick"],V7={key:0,class:"color-text-sample"},Y7={class:"color-overlay"},z7={class:"color-label"},H7={class:"color-description"},q7={class:"color-value"},W7={class:"theme-controls-section"},K7={class:"control-card"},Q7={class:"brand-selection"},$7=["onClick"],Z7={class:"brand-visual"},X7={class:"brand-logo"},j7={key:0,class:"brand-status"},J7={class:"brand-content"},eN={class:"brand-version"},tN={class:"color-mode-section"},rN={class:"mode-selection"},nN=["onClick"],oN={class:"mode-visual"},aN={key:0,class:"mode-status"},iN={class:"mode-content"},sN={class:"mode-key"},lN={key:0,class:"debug-section"},cN={class:"debug-content"},dN={class:"debug-item"},uN={class:"debug-item"},_N={class:"debug-item"},pN={class:"debug-item"},mN={class:"debug-item"},gN={class:"debug-colors"},fN={key:0},EN={key:1},bN={key:2},SN={class:"debug-css-vars"},hN={class:"control-card"},CN={class:"stats-grid"},yN={class:"stat-item"},TN={class:"stat-content"},AN={class:"stat-value"},NN={class:"stat-item"},RN={class:"stat-content"},xN={class:"stat-value"},vN={class:"stat-item"},ON={class:"stat-content"},IN={class:"stat-value"},DN={class:"stat-item"},wN={class:"stat-content"},kN={class:"stat-value"},f_=x(t.defineComponent({__name:"ThemeSwitcher",setup(r){const{currentBrandId:e,currentModeId:n,currentProject:o,currentColorMode:a,isLoading:i,error:l,availableBrands:s,availableModes:c,setBrand:d,setMode:u,initializeTheme:_,applyThemeToDocument:m,getCSSVariableMapping:g,saveThemeToStorage:p,loadThemeFromStorage:b}=pe(),f=()=>i.value?"Loading...":l.value?"Error":"Ready to Switch",C=()=>i.value?"Loading theme configuration...":l.value?"Error loading theme configuration":"Theme system is ready - you can switch between brands and color modes",E=()=>!o.value||!a.value?"inactive":"active",S=()=>!o.value||!a.value?"No Theme":"Active",y=T=>T&&{"Contentplate Public":"contentplate","Flowplate Public":"flowplate","Freddy Public":"freddy"}[T]||"contentplate",R=T=>{const N=T.name.toLowerCase().includes("dark");return{backgroundColor:N?"#2a2a2a":"var(--freddy-bg-primary)",color:N?"var(--freddy-bg-primary)":"var(--freddy-text-primary)"}},A=()=>{var N,w,O,V,q,D,I,M,L,$,le;if(!a.value)return{};const T={};if((N=a.value.backgroundColor)!=null&&N.colors){const J=((w=a.value.backgroundColor.colors.find(Z=>Z.name==="Background"))==null?void 0:w.value)||((O=a.value.backgroundColor.colors.find(Z=>Z.name==="Surface"))==null?void 0:O.value);J&&(T.background={value:J,label:"Background",description:"Main page background"})}if((V=a.value.textColors)!=null&&V.colors){const J=((q=a.value.textColors.colors.find(Z=>Z.name==="Primary"))==null?void 0:q.value)||((D=a.value.textColors.colors.find(Z=>Z.name==="Text"))==null?void 0:D.value);J&&(T.text={value:J,label:"Text",description:"Primary text color"})}if((I=a.value.textColors)!=null&&I.colors){const J=((M=a.value.textColors.colors.find(Z=>Z.name==="Accent"))==null?void 0:M.value)||((L=a.value.textColors.colors.find(Z=>Z.name==="Link"))==null?void 0:L.value);J&&(T.primary={value:J,label:"Primary",description:"Brand & action color"})}if(($=a.value.borderColor)!=null&&$.colors){const J=(le=a.value.borderColor.colors.find(Z=>Z.name==="Border"))==null?void 0:le.value;J&&(T.border={value:J,label:"Border",description:"UI element borders"})}return T},v=async(T,N)=>{try{await navigator.clipboard.writeText(T)}catch{}};return t.onMounted(()=>{_()}),(T,N)=>{var w,O,V,q,D,I,M,L,$,le,J,Z,Se,ne,z,me,W,te,K,ce,ae,fe,oe,Ie,Ze,et;return t.openBlock(),t.createElementBlock("div",E7,[t.createElementVNode("div",b7,[t.createElementVNode("div",S7,[N[2]||(N[2]=t.createElementVNode("div",{class:"header-left"},[t.createElementVNode("h2",null,"๐จ Theme Switcher"),t.createElementVNode("p",null,"Customize your design system appearance")],-1)),t.createElementVNode("div",h7,[t.createElementVNode("div",{class:t.normalizeClass(["status-indicator",{active:!t.unref(i)&&!t.unref(l)}]),title:C()},[N[1]||(N[1]=t.createElementVNode("div",{class:"status-dot"},null,-1)),t.createElementVNode("span",y7,t.toDisplayString(f()),1)],10,C7)])])]),t.unref(i)?(t.openBlock(),t.createElementBlock("div",T7,[...N[3]||(N[3]=[t.createStaticVNode('<div class="loading-content"><div class="loading-spinner"><div class="spinner-ring"></div><div class="spinner-ring"></div><div class="spinner-ring"></div></div><h3>Loading Theme Configuration</h3><p>Please wait while we load your available themes...</p></div>',1)])])):t.unref(l)?(t.openBlock(),t.createElementBlock("div",A7,[t.createElementVNode("div",N7,[N[5]||(N[5]=t.createElementVNode("div",{class:"error-icon"},"โ ๏ธ",-1)),N[6]||(N[6]=t.createElementVNode("h3",null,"Configuration Error",-1)),t.createElementVNode("p",null,t.toDisplayString(t.unref(l)),1),t.createElementVNode("button",{onClick:N[0]||(N[0]=(...re)=>t.unref(_)&&t.unref(_)(...re)),class:"retry-button"},[...N[4]||(N[4]=[t.createElementVNode("span",{class:"btn-icon"},"๐",-1),t.createTextVNode(" Try Again ",-1)])])])])):(t.openBlock(),t.createElementBlock("div",R7,[t.createElementVNode("div",x7,[t.createElementVNode("div",v7,[N[7]||(N[7]=t.createElementVNode("h3",null,"Current Theme",-1)),t.createElementVNode("div",{class:t.normalizeClass(["theme-badge",E()])},t.toDisplayString(S()),3)]),t.createElementVNode("div",O7,[t.createElementVNode("div",I7,[t.createElementVNode("div",D7,[t.createElementVNode("div",w7,[t.createVNode(yr,{brand:y((w=t.unref(o))==null?void 0:w.name),size:"sm","show-title":!1},null,8,["brand"])]),t.createElementVNode("div",k7,[t.createElementVNode("h4",null,t.toDisplayString(((O=t.unref(o))==null?void 0:O.name)||"No Brand Selected"),1),t.createElementVNode("span",M7,"v"+t.toDisplayString(((V=t.unref(o))==null?void 0:V.version)||"0"),1)])]),t.createElementVNode("div",L7,[N[8]||(N[8]=t.createElementVNode("div",{class:"mode-icon"},[t.createElementVNode("span",{class:"mode-icon-text"},"๐จ")],-1)),t.createElementVNode("div",P7,[t.createElementVNode("h4",null,t.toDisplayString(((q=t.unref(a))==null?void 0:q.name)||"No Mode Selected"),1),t.createElementVNode("span",B7,t.toDisplayString(((D=t.unref(a))==null?void 0:D.name)||"none"),1)])])]),t.unref(a)?(t.openBlock(),t.createElementBlock("div",F7,[N[10]||(N[10]=t.createElementVNode("h4",null,"Theme Color Palette",-1)),N[11]||(N[11]=t.createElementVNode("p",{class:"color-preview-description"}," Key colors from the current theme ",-1)),t.createElementVNode("div",U7,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(A(),(re,De)=>(t.openBlock(),t.createElementBlock("div",{key:De,class:"primary-color-item",style:t.normalizeStyle({backgroundColor:re.value}),onClick:tt=>v(re.value)},[De==="background"?(t.openBlock(),t.createElementBlock("div",V7,[...N[9]||(N[9]=[t.createElementVNode("span",{style:{color:"var(--freddy-text-primary)"}},"Sample Text",-1)])])):t.createCommentVNode("",!0),t.createElementVNode("div",Y7,[t.createElementVNode("span",z7,t.toDisplayString(re.label),1),t.createElementVNode("span",H7,t.toDisplayString(re.description),1),t.createElementVNode("span",q7,t.toDisplayString(re.value),1)])],12,G7))),128))])])):t.createCommentVNode("",!0)])]),t.createElementVNode("div",W7,[t.createElementVNode("div",K7,[N[13]||(N[13]=t.createElementVNode("div",{class:"card-header"},[t.createElementVNode("h3",null,"Brand Selection"),t.createElementVNode("span",{class:"card-subtitle"},"Choose your design system")],-1)),t.createElementVNode("div",Q7,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(s),re=>(t.openBlock(),t.createElementBlock("div",{key:re.id,onClick:De=>t.unref(d)(re.id),class:t.normalizeClass(["brand-option",{active:t.unref(e)===re.id}])},[t.createElementVNode("div",Z7,[t.createElementVNode("div",X7,[t.createVNode(yr,{brand:y(re.name),size:"sm","show-title":!1},null,8,["brand"])]),t.unref(e)===re.id?(t.openBlock(),t.createElementBlock("div",j7,[...N[12]||(N[12]=[t.createElementVNode("span",{class:"check-icon"},"โ",-1)])])):t.createCommentVNode("",!0)]),t.createElementVNode("div",J7,[t.createElementVNode("h4",null,t.toDisplayString(re.name),1),t.createElementVNode("span",eN,"Version "+t.toDisplayString(re.version),1)])],10,$7))),128))])]),t.createElementVNode("div",tN,[N[16]||(N[16]=t.createElementVNode("div",{class:"section-header"},[t.createElementVNode("h3",null,"Color Mode"),t.createElementVNode("span",{class:"card-subtitle"},"Select your preferred appearance")],-1)),t.createElementVNode("div",rN,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(c),re=>(t.openBlock(),t.createElementBlock("div",{key:re.id,onClick:De=>t.unref(u)(re.id),class:t.normalizeClass(["mode-option",{active:t.unref(n)===re.id}])},[t.createElementVNode("div",oN,[t.createElementVNode("div",{class:"mode-preview",style:t.normalizeStyle(R(re))},[...N[14]||(N[14]=[t.createElementVNode("div",{class:"mode-icon"},"๐จ",-1)])],4),t.unref(n)===re.id?(t.openBlock(),t.createElementBlock("div",aN,[...N[15]||(N[15]=[t.createElementVNode("span",{class:"check-icon"},"โ",-1)])])):t.createCommentVNode("",!0)]),t.createElementVNode("div",iN,[t.createElementVNode("h4",null,t.toDisplayString(re.name),1),t.createElementVNode("span",sN,t.toDisplayString(re.name),1)])],10,nN))),128))])]),t.unref(a)?(t.openBlock(),t.createElementBlock("div",lN,[N[27]||(N[27]=t.createElementVNode("div",{class:"section-header"},[t.createElementVNode("h3",null,"Debug Info"),t.createElementVNode("span",{class:"card-subtitle"},"Current theme debugging")],-1)),t.createElementVNode("div",cN,[t.createElementVNode("div",dN,[N[17]||(N[17]=t.createElementVNode("strong",null,"Current Brand:",-1)),t.createTextVNode(" "+t.toDisplayString((I=t.unref(o))==null?void 0:I.name),1)]),t.createElementVNode("div",uN,[N[18]||(N[18]=t.createElementVNode("strong",null,"Current Mode:",-1)),t.createTextVNode(" "+t.toDisplayString((M=t.unref(a))==null?void 0:M.name),1)]),t.createElementVNode("div",_N,[N[19]||(N[19]=t.createElementVNode("strong",null,"Text Colors:",-1)),t.createTextVNode(" "+t.toDisplayString(((le=($=(L=t.unref(a))==null?void 0:L.textColors)==null?void 0:$.colors)==null?void 0:le.length)||0)+" colors ",1)]),t.createElementVNode("div",pN,[N[20]||(N[20]=t.createElementVNode("strong",null,"Background Colors:",-1)),t.createTextVNode(" "+t.toDisplayString(((Se=(Z=(J=t.unref(a))==null?void 0:J.backgroundColor)==null?void 0:Z.colors)==null?void 0:Se.length)||0)+" colors ",1)]),t.createElementVNode("div",mN,[N[21]||(N[21]=t.createElementVNode("strong",null,"Border Colors:",-1)),t.createTextVNode(" "+t.toDisplayString(((me=(z=(ne=t.unref(a))==null?void 0:ne.borderColor)==null?void 0:z.colors)==null?void 0:me.length)||0)+" colors ",1)]),t.createElementVNode("div",gN,[N[25]||(N[25]=t.createElementVNode("h4",null,"Found Colors:",-1)),(te=(W=t.unref(a))==null?void 0:W.textColors)!=null&&te.colors?(t.openBlock(),t.createElementBlock("div",fN,[N[22]||(N[22]=t.createElementVNode("strong",null,"Text Colors:",-1)),t.createTextVNode(" "+t.toDisplayString(t.unref(a).textColors.colors.map(re=>re.name).join(", ")),1)])):t.createCommentVNode("",!0),(ce=(K=t.unref(a))==null?void 0:K.backgroundColor)!=null&&ce.colors?(t.openBlock(),t.createElementBlock("div",EN,[N[23]||(N[23]=t.createElementVNode("strong",null,"Background Colors:",-1)),t.createTextVNode(" "+t.toDisplayString(t.unref(a).backgroundColor.colors.map(re=>re.name).join(", ")),1)])):t.createCommentVNode("",!0),(fe=(ae=t.unref(a))==null?void 0:ae.borderColor)!=null&&fe.colors?(t.openBlock(),t.createElementBlock("div",bN,[N[24]||(N[24]=t.createElementVNode("strong",null,"Border Colors:",-1)),t.createTextVNode(" "+t.toDisplayString(t.unref(a).borderColor.colors.map(re=>re.name).join(", ")),1)])):t.createCommentVNode("",!0)]),t.createElementVNode("div",SN,[N[26]||(N[26]=t.createElementVNode("h4",null,"Generated CSS Variables:",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(g)(),(re,De)=>(t.openBlock(),t.createElementBlock("div",{key:De,class:"css-var"},[t.createElementVNode("strong",null,t.toDisplayString(De)+":",1),t.createTextVNode(" "+t.toDisplayString(re),1)]))),128))])])])):t.createCommentVNode("",!0),t.createElementVNode("div",hN,[N[36]||(N[36]=t.createElementVNode("div",{class:"card-header"},[t.createElementVNode("h3",null,"Theme Statistics"),t.createElementVNode("span",{class:"card-subtitle"},"Current theme details")],-1)),t.createElementVNode("div",CN,[t.createElementVNode("div",yN,[N[29]||(N[29]=t.createElementVNode("div",{class:"stat-icon"},"๐จ",-1)),t.createElementVNode("div",TN,[t.createElementVNode("span",AN,t.toDisplayString(Object.keys(t.unref(g)()).length),1),N[28]||(N[28]=t.createElementVNode("span",{class:"stat-label"},"CSS Variables",-1))])]),t.createElementVNode("div",NN,[N[31]||(N[31]=t.createElementVNode("div",{class:"stat-icon"},"๐",-1)),t.createElementVNode("div",RN,[t.createElementVNode("span",xN,t.toDisplayString(((Ie=(oe=t.unref(o))==null?void 0:oe.fontThemes)==null?void 0:Ie.length)||0),1),N[30]||(N[30]=t.createElementVNode("span",{class:"stat-label"},"Font Themes",-1))])]),t.createElementVNode("div",vN,[N[33]||(N[33]=t.createElementVNode("div",{class:"stat-icon"},"๐ฒ",-1)),t.createElementVNode("div",ON,[t.createElementVNode("span",IN,t.toDisplayString(((et=(Ze=t.unref(o))==null?void 0:Ze.cornerRadiusThemes)==null?void 0:et.length)||0),1),N[32]||(N[32]=t.createElementVNode("span",{class:"stat-label"},"Corner Radius",-1))])]),t.createElementVNode("div",DN,[N[35]||(N[35]=t.createElementVNode("div",{class:"stat-icon"},"๐ฏ",-1)),t.createElementVNode("div",wN,[t.createElementVNode("span",kN,t.toDisplayString(t.unref(c).length),1),N[34]||(N[34]=t.createElementVNode("span",{class:"stat-label"},"Color Modes",-1))])])])])])]))])}}}),[["styles",[".theme-switcher{max-width:1200px;margin:0 auto;padding:0}.theme-switcher-header{background:var(--freddy-bg-primary);border-bottom:1px solid var(--freddy-border-color);padding:1.5rem 2rem;margin-bottom:2rem}.header-content{display:flex;justify-content:space-between;align-items:center}.header-left h2{font-size:1.8rem;font-weight:700;margin:0 0 .25rem;color:var(--freddy-text-primary)}.header-left p{font-size:.95rem;color:var(--freddy-text-secondary);margin:0}.status-indicator{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;background:var(--freddy-bg-secondary);border:2px solid var(--freddy-border-color)}.status-indicator.active{background:var(--freddy-success-color);border-color:var(--freddy-success-color);color:var(--text-inverse)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--freddy-text-secondary)}.status-indicator.active .status-dot{background:var(--freddy-success-color)}.status-text{font-size:.85rem;font-weight:500}.loading-container{display:flex;justify-content:center;align-items:center;min-height:400px}.loading-content{text-align:center}.loading-spinner{position:relative;width:60px;height:60px;margin:0 auto 1.5rem}.spinner-ring{position:absolute;width:100%;height:100%;border:3px solid transparent;border-top:3px solid var(--freddy-primary-color);border-radius:50%;animation:freddy-plugin-spin 1s linear infinite}.spinner-ring:nth-child(2){width:80%;height:80%;top:10%;left:10%;animation-delay:.2s}.spinner-ring:nth-child(3){width:60%;height:60%;top:20%;left:20%;animation-delay:.4s}@keyframes freddy-plugin-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-content h3{font-size:1.3rem;font-weight:600;margin-bottom:.5rem;color:var(--freddy-text-primary)}.loading-content p{color:var(--freddy-text-secondary);margin:0}.error-container{display:flex;justify-content:center;align-items:center;min-height:400px}.error-content{text-align:center;max-width:400px}.error-icon{font-size:3rem;margin-bottom:1rem}.error-content h3{font-size:1.3rem;font-weight:600;margin-bottom:.5rem;color:var(--freddy-text-primary)}.error-content p{color:var(--freddy-text-secondary);margin-bottom:1.5rem}.retry-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--freddy-primary-color);color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease}.retry-button:hover{opacity:.9;transform:translateY(-1px)}.theme-switcher-main{display:grid;grid-template-columns:1fr 2fr;gap:2rem;padding:0 2rem}.current-theme-section{position:sticky;top:2rem;height:fit-content}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{font-size:1.2rem;font-weight:600;margin:0;color:var(--freddy-text-primary)}.theme-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.theme-badge.active{background:var(--freddy-success-color);color:var(--text-inverse)}.theme-badge.inactive{background:var(--freddy-error-color);color:var(--text-inverse)}.current-theme-card{background:var(--freddy-bg-primary);border:2px solid var(--freddy-border-color);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px var(--border-light)}.theme-info{margin-bottom:1.5rem}.theme-brand-info,.theme-mode-info{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--freddy-border-color)}.theme-mode-info{border-bottom:none}.brand-icon,.mode-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--freddy-bg-secondary);border-radius:8px;overflow:hidden}.mode-icon-text{font-size:1.5rem}.brand-details h4,.mode-details h4{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:var(--freddy-text-primary)}.brand-version,.mode-key{font-size:.8rem;color:var(--freddy-text-secondary)}.enhanced-color-preview h4{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--freddy-text-primary)}.color-preview-description{font-size:.85rem;color:var(--freddy-text-secondary);margin-bottom:.75rem}.primary-color-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:.75rem}.primary-color-item{height:100px;border-radius:12px;border:2px solid transparent;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;box-shadow:0 2px 8px var(--border-light)}.color-text-sample{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.9rem;font-weight:500;opacity:.8;pointer-events:none}.primary-color-item:hover .color-text-sample{opacity:.6}.primary-color-item:hover{transform:scale(1.02);border-color:var(--freddy-primary-color);box-shadow:0 6px 16px var(--freddy-border-color)}.color-overlay{position:absolute;bottom:0;left:0;right:0;background:#000c;color:#fff;padding:.75rem;transform:translateY(100%);transition:transform .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.primary-color-item:hover .color-overlay{transform:translateY(0)}.color-label{font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:.25rem}.color-description{font-size:.65rem;opacity:.8;margin-bottom:.5rem;display:block;line-height:1.2}.color-value{font-size:.7rem;font-family:Monaco,Menlo,monospace;opacity:.9;background:var(--bg-surface);padding:.2rem .4rem;border-radius:4px;display:inline-block}.theme-controls-section{display:flex;flex-direction:column;gap:1.5rem}.control-card{background:var(--freddy-bg-primary);border:2px solid var(--freddy-border-color);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px var(--border-light)}.card-header{margin-bottom:1.5rem}.card-header h3{font-size:1.1rem;font-weight:600;margin:0 0 .25rem;color:var(--freddy-text-primary)}.card-subtitle{font-size:.85rem;color:var(--freddy-text-secondary)}.brand-selection{display:grid;gap:1rem}.brand-option{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid var(--freddy-border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;background:transparent}.brand-option:hover{border-color:var(--freddy-primary-color);background:var(--freddy-bg-secondary)}.brand-option.active{border-color:var(--freddy-primary-color);background:var(--freddy-primary-color);color:#fff}.brand-visual{position:relative}.brand-logo{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:transparent;border-radius:8px;overflow:hidden}.brand-option.active .brand-logo{background:var(--border-light)}.brand-option.active .brand-logo :deep(.logo-image){filter:brightness(0) invert(1)}.brand-option.active{background:var(--freddy-bg-secondary);border-color:var(--freddy-primary-color);color:var(--freddy-text-primary)}.brand-option.active .brand-logo{background:var(--freddy-bg-primary)}.brand-status{position:absolute;top:-4px;right:-4px;width:20px;height:20px;background:var(--freddy-success-color);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.7rem;font-weight:700}.brand-content h4{font-size:1rem;font-weight:600;margin:0 0 .25rem}.brand-version{font-size:.8rem;opacity:.7}.mode-selection{display:grid;gap:1rem}.mode-option{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid var(--freddy-border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;background:transparent}.mode-option:hover{border-color:var(--freddy-primary-color);background:var(--freddy-bg-secondary)}.mode-option.active{border-color:var(--freddy-primary-color);background:var(--freddy-bg-secondary);color:var(--freddy-text-primary)}.mode-option.active .mode-preview{background:var(--freddy-bg-primary)}.mode-visual{position:relative}.mode-preview{width:60px;height:40px;border-radius:6px;border:2px solid var(--freddy-border-color);overflow:hidden;position:relative;background:transparent}.color-palette-preview{display:flex;flex-wrap:wrap;gap:2px;padding:4px;height:100%;align-items:center;justify-content:center}.color-dot{width:8px;height:8px;border-radius:50%;border:2px solid var(--border-light);flex-shrink:0}.mode-status{position:absolute;top:-4px;right:-4px;width:20px;height:20px;background:var(--freddy-success-color);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.7rem;font-weight:700}.mode-content{flex:1}.mode-content h4{font-size:1rem;font-weight:600;margin:0 0 .25rem}.mode-key{font-size:.8rem;opacity:.7;margin-bottom:.25rem;display:block}.default-indicator{display:inline-block;background:var(--freddy-warning-color);color:#fff;font-size:.7rem;padding:.2rem .4rem;border-radius:4px;font-weight:600}.debug-section{background:var(--freddy-bg-primary);border:2px solid var(--freddy-border-color);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px var(--border-light);margin-top:1.5rem}.debug-content{display:flex;flex-direction:column;gap:.75rem}.debug-item{font-size:.9rem;color:var(--freddy-text-secondary)}.debug-item strong{color:var(--freddy-text-primary);font-weight:500}.debug-colors h4,.debug-css-vars h4{font-size:1rem;font-weight:600;margin-bottom:.75rem;color:var(--freddy-text-primary)}.debug-colors div{margin-bottom:.5rem;font-size:.85rem;color:var(--freddy-text-secondary)}.debug-colors strong{color:var(--freddy-text-primary);font-weight:500}.css-var{font-size:.85rem;color:var(--freddy-text-secondary);margin-bottom:.25rem;font-family:Courier New,monospace}.css-var strong{color:var(--freddy-text-primary);font-weight:500}.debug-colors,.debug-css-vars{background:var(--freddy-bg-secondary);border:2px solid var(--border-light);border-radius:8px;padding:1rem;margin-top:.5rem}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.stat-item{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--freddy-bg-secondary);border-radius:8px}.stat-icon{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--freddy-bg-primary);border-radius:8px}.stat-content{flex:1}.stat-value{display:block;font-size:1.5rem;font-weight:700;color:var(--freddy-text-primary);line-height:1}.stat-label{font-size:.8rem;color:var(--freddy-text-secondary)}@media (max-width: 1024px){.theme-switcher-main{grid-template-columns:1fr;gap:1.5rem}.current-theme-section{position:static}}@media (max-width: 768px){.theme-switcher{padding:0 1rem}.theme-switcher-header{padding:1rem}.header-content{flex-direction:column;gap:1rem;text-align:center}.theme-switcher-main{padding:0 1rem}.stats-grid,.primary-color-grid{grid-template-columns:1fr}}@media (max-width: 480px){.brand-option,.mode-option{flex-direction:column;text-align:center}}"]]]),MN={class:"themable"},LN={key:0,class:"status-indicator"},PN={class:"status-content"},BN={key:0},FN={key:1},UN={class:"tab-navigation"},GN=["onClick"],VN={class:"tab-icon"},YN={class:"tab-label"},zN={class:"tab-content"},HN={key:0,class:"tab-panel"},qN={key:1,class:"tab-panel"},WN={key:2,class:"tab-panel"},KN={key:3,class:"tab-panel"},QN=x(t.defineComponent({__name:"Themable",setup(r){const e=t.ref("overview"),n=t.ref("Initializing..."),{initializeTheme:o,currentProject:a,currentColorMode:i,configuration:l}=pe(),s=[{id:"overview",label:"Overview Dashboard",icon:"๐"},{id:"comparison",label:"Color Comparison",icon:"๐จ"},{id:"tests",label:"Color Tests",icon:"๐งช"},{id:"switcher",label:"Theme Switcher",icon:"โ๏ธ"}];return t.onMounted(async()=>{try{n.value="Loading...",await o(),n.value="Ready"}catch(c){n.value="Error: "+(c instanceof Error?c.message:"Unknown error")}}),(c,d)=>(t.openBlock(),t.createElementBlock("div",MN,[d[4]||(d[4]=t.createElementVNode("div",{class:"themable-header"},[t.createElementVNode("h1",null,"Themable Design System"),t.createElementVNode("p",null,"Comprehensive tools for managing and comparing design system configurations")],-1)),n.value!=="Ready"?(t.openBlock(),t.createElementBlock("div",LN,[t.createElementVNode("div",PN,[t.createElementVNode("p",null,"Theme Service Status: "+t.toDisplayString(n.value),1),t.unref(a)?(t.openBlock(),t.createElementBlock("p",BN,"Current Project: "+t.toDisplayString(t.unref(a).name),1)):t.createCommentVNode("",!0),t.unref(i)?(t.openBlock(),t.createElementBlock("p",FN,"Current Mode: "+t.toDisplayString(t.unref(i).name),1)):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0),t.createElementVNode("div",UN,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(s,u=>t.createElementVNode("button",{key:u.id,onClick:_=>e.value=u.id,class:t.normalizeClass(["tab-button",{active:e.value===u.id}])},[t.createElementVNode("span",VN,t.toDisplayString(u.icon),1),t.createElementVNode("span",YN,t.toDisplayString(u.label),1)],10,GN)),64))]),t.createElementVNode("div",zN,[e.value==="overview"?(t.openBlock(),t.createElementBlock("div",HN,[d[0]||(d[0]=t.createElementVNode("div",{class:"panel-header"},[t.createElementVNode("h2",null,"Overview Dashboard"),t.createElementVNode("p",null,"View all color configurations, fonts, and corner radius for all brands and color modes")],-1)),t.createVNode(qi)])):t.createCommentVNode("",!0),e.value==="comparison"?(t.openBlock(),t.createElementBlock("div",qN,[d[1]||(d[1]=t.createElementVNode("div",{class:"panel-header"},[t.createElementVNode("h2",null,"Color Comparison"),t.createElementVNode("p",null,"Compare colors across different brands and color modes")],-1)),t.createVNode(s_)])):t.createCommentVNode("",!0),e.value==="tests"?(t.openBlock(),t.createElementBlock("div",WN,[d[2]||(d[2]=t.createElementVNode("div",{class:"panel-header"},[t.createElementVNode("h2",null,"Color Tests"),t.createElementVNode("p",null,"Validate that applied CSS variables match the configuration for the selected brand and mode.")],-1)),t.createVNode(l_)])):t.createCommentVNode("",!0),e.value==="switcher"?(t.openBlock(),t.createElementBlock("div",KN,[d[3]||(d[3]=t.createElementVNode("div",{class:"panel-header"},[t.createElementVNode("h2",null,"Theme Switcher"),t.createElementVNode("p",null,"Switch between different brands and color modes to customize your design system")],-1)),t.createVNode(f_)])):t.createCommentVNode("",!0)])]))}}),[["styles",[".themable{padding:0 2rem 2rem;max-width:1400px;margin:0 auto;background:var(--bg-primary, #ffffff);color:var(--text-primary, #111111);min-height:100vh}@media (prefers-color-scheme: dark){.themable{background:var(--bg-primary, #1a1a1a);color:var(--text-primary, #ffffff)}}.themable-header{text-align:center;margin-bottom:2rem}.themable-header h1{font-size:2.5rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary, #111111)}.themable-header p{font-size:1.1rem;color:var(--text-secondary, #666666)}@media (prefers-color-scheme: dark){.themable-header h1{color:var(--text-primary, #ffffff)}.themable-header p{color:var(--text-secondary, #cccccc)}}.status-indicator{background:var(--bg-secondary, #f8f9fa);border:2px solid var(--border-color, #e9ecef);border-radius:8px;padding:1rem;margin-bottom:2rem}.status-content p{margin:.5rem 0;font-family:monospace;color:var(--text-secondary, #666666)}@media (prefers-color-scheme: dark){.status-indicator{background:var(--bg-secondary, #2a2a2a);border-color:var(--border-color, #444444)}.status-content p{color:var(--text-secondary, #cccccc)}}.tab-navigation{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:1px solid var(--freddy-border-color)}.tab-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;background:none;color:var(--text-secondary, #666666);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s ease}.tab-button:hover{color:var(--text-primary, #111111);background-color:var(--bg-secondary, #f8f9fa)}.tab-button.active{color:var(--text-primary, #111111);border-bottom-color:var(--primary-color, #007bff);background-color:var(--bg-secondary, #f8f9fa)}@media (prefers-color-scheme: dark){.tab-button{color:var(--text-secondary, #cccccc)}.tab-button:hover,.tab-button.active{color:var(--text-primary, #ffffff);background-color:var(--bg-secondary, #2a2a2a)}}.tab-icon{font-size:1.2rem}.tab-label{font-weight:500}.tab-content{min-height:600px}.tab-panel{animation:fadeIn .3s ease}.panel-header{margin-bottom:2rem}.panel-header h2{font-size:1.8rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary, #111111)}.panel-header p{font-size:1rem;color:var(--text-secondary, #666666)}@media (prefers-color-scheme: dark){.panel-header h2{color:var(--text-primary, #ffffff)}.panel-header p{color:var(--text-secondary, #cccccc)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.themable{padding:1rem}.tab-navigation{flex-direction:column;gap:.5rem}.tab-button{justify-content:center}}"]]]),$N={class:"themable-overview-dashboard"},ZN=x(t.defineComponent({__name:"ThemableOverviewDashboard",setup(r){return(e,n)=>(t.openBlock(),t.createElementBlock("div",$N,[n[0]||(n[0]=t.createElementVNode("div",{class:"dashboard-header"},[t.createElementVNode("h1",null,"Themable Overview Dashboard"),t.createElementVNode("p",null,"View all color configurations, fonts, and corner radius for all brands and color modes")],-1)),t.createVNode(qi)]))}}),[["styles",[".themable-overview-dashboard{padding:2rem;max-width:1200px;margin:0 auto}.dashboard-header{margin-bottom:2rem;text-align:center}.dashboard-header h1{font-size:2.5rem;font-weight:600;margin-bottom:.5rem;color:var(--freddy-text-primary)}.dashboard-header p{font-size:1.1rem;color:var(--freddy-text-secondary);margin:0}"]]]),XN={class:"toast-wrapper"},jN={class:"toast-icon-wrapper"},JN={class:"toast-message"},eR=["onClick"],tR=x(t.defineComponent({__name:"ToastMessage",setup(r){const{toastQueue:e}=Is(),n={success:"toast-success",danger:"toast-danger",info:"toast-info"},o=l=>n[l],a=l=>{switch(l){case"success":return Wr;case"danger":return yt;case"info":return _r;default:return Wr}},i=l=>{e.value.splice(l,1)};return(l,s)=>(t.openBlock(),t.createElementBlock("div",XN,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(e),(c,d)=>(t.openBlock(),t.createElementBlock("div",{key:d,class:t.normalizeClass(["toast-item",o(c.toastType)])},[t.createElementVNode("div",jN,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a(c.toastType)),{class:"toast-icon"}))]),t.createElementVNode("span",JN,t.toDisplayString(c.message),1),t.createElementVNode("button",{class:"toast-close-button",onClick:u=>i(d)},[t.createVNode(t.unref(yt),{class:"toast-close-icon"})],8,eR)],2))),128))]))}}),[["styles",[".toast-wrapper{position:fixed;right:10px;bottom:10px;display:flex;flex-direction:column;gap:.5rem}.toast-item{display:flex;align-items:center;padding:.625rem;gap:.625rem;border-radius:10px;box-shadow:0 1px 3px var(--border-light);animation:fadeIn .3s ease}.toast-success{background-color:var(--color-success-500, var(--freddy-success-color));--toast-icon-color: var(--color-success-500, var(--freddy-success-color))}.toast-danger{background-color:var(--color-destructive-500, var(--freddy-error-color));--toast-icon-color: var(--color-destructive-500, var(--freddy-error-color))}.toast-info{background-color:var(--color-primary-500, var(--freddy-primary-color));--toast-icon-color: var(--color-primary-500, var(--freddy-primary-color))}.toast-icon-wrapper{width:1.25rem;height:1.25rem;background-color:var(--freddy-bg-secondary);border-radius:9999px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-icon{width:100%;height:100%;padding:.25rem;color:var(--toast-icon-color)}.toast-message{min-width:16rem;max-width:420px;flex:1 1 auto;font-size:1rem;font-weight:500;color:#fff}.toast-close-button{width:1rem;height:1rem;background:transparent;border:none;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-close-icon{width:100%;height:100%;padding:.125rem;color:#fff}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}"]]]),rR=x(t.defineComponent({__name:"AnimeSpaceman",props:{customClass:{type:String},customStyle:{type:[String,Object]}},setup(r){return(e,n)=>(t.openBlock(),t.createElementBlock("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"0 0 800 600",class:t.normalizeClass(["spaceman-logo",e.customClass]),style:t.normalizeStyle(e.customStyle)},[...n[0]||(n[0]=[t.createStaticVNode(`<g><defs><clipPath id="GlassClip"><path d="M380.857,346.164c-1.247,4.651-4.668,8.421-9.196,10.06c-9.332,3.377-26.2,7.817-42.301,3.5
|
|
154
154
|
s-28.485-16.599-34.877-24.192c-3.101-3.684-4.177-8.66-2.93-13.311l7.453-27.798c0.756-2.82,3.181-4.868,6.088-5.13
|
|
155
155
|
c6.755-0.61,20.546-0.608,41.785,5.087s33.181,12.591,38.725,16.498c2.387,1.682,3.461,4.668,2.705,7.488L380.857,346.164z"></path></clipPath><clipPath id="cordClip"><rect width="800" height="600"></rect></clipPath></defs><g id="planet"><circle fill="none" stroke="#ffffff" stroke-width="3" stroke-miterlimit="10" cx="572.859" cy="108.803" r="90.788"></circle><circle id="craterBig" fill="none" stroke="#ffffff" stroke-width="3" stroke-miterlimit="10" cx="548.891" cy="62.319" r="13.074"></circle><circle id="craterSmall" fill="none" stroke="#ffffff" stroke-width="3" stroke-miterlimit="10" cx="591.743" cy="158.918" r="7.989"></circle><path id="ring" fill="none" stroke="#ffffff" stroke-width="3" stroke-linecap="round" stroke-miterlimit="10" d="
|
|
156
156
|
M476.562,101.461c-30.404,2.164-49.691,4.221-49.691,8.007c0,6.853,63.166,12.408,141.085,12.408s141.085-5.555,141.085-12.408
|