- Delete old Vite+Svelte frontend - Initialize new SvelteKit project with TypeScript - Configure Tailwind CSS v4 + DaisyUI - Implement JWT authentication with auto-refresh - Create login page with form validation (Zod) - Add protected route guards - Update Docker configuration for single-stage build - Add E2E tests with Playwright (6/11 passing) - Fix Svelte 5 reactivity with $state() runes Known issues: - 5 E2E tests failing (timing/async issues) - Token refresh implementation needs debugging - Validation error display timing
3 lines
7.3 KiB
JavaScript
3 lines
7.3 KiB
JavaScript
var De=Object.defineProperty;var oe=t=>{throw TypeError(t)};var Ae=(t,e,s)=>e in t?De(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s;var X=(t,e,s)=>Ae(t,typeof e!="symbol"?e+"":e,s),Z=(t,e,s)=>e.has(t)||oe("Cannot "+s);var i=(t,e,s)=>(Z(t,e,"read from private field"),s?s.call(t):e.get(t)),h=(t,e,s)=>e.has(t)?oe("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,s),n=(t,e,s,a)=>(Z(t,e,"write to private field"),a?a.call(t,s):e.set(t,s),s),y=(t,e,s)=>(Z(t,e,"access private method"),s);import{an as Oe,f as ye,ao as Fe,v as Me,ap as le,aq as W,ar as be,G as O,A as F,j as B,as as ce,z as ke,J as Ie,O as Be,W as I,y as Ee,at as ee,V as te,X as Ce,au as Le,av as K,aw as Q,ax as ue,ay as Ye,az as me,a4 as we,aA as de,aB as xe,aC as _e,aD as He,aE as Pe,U as se,F as U,ad as Ve,Q as We,aF as pe,aG as qe,K as ze,aH as je,aI as Ge,Z as Je,aJ as Ke,_ as Qe,aK as ie,I as Ue,C as Te,N as $e,B as Xe,aL as re,E as z,aM as Ze,aN as et,aO as tt,aP as st,p as it,aQ as rt,aR as at,b as nt}from"./CCV2x70u.js";import{b as ft}from"./pJd4F_Tq.js";function ht(t){let e=0,s=be(0),a;return()=>{Oe()&&(ye(s),Fe(()=>(e===0&&(a=Me(()=>t(()=>le(s)))),e+=1,()=>{W(()=>{e-=1,e===0&&(a==null||a(),a=void 0,le(s))})})))}}var ot=ze|je;function lt(t,e,s){new ct(t,e,s)}var v,q,w,M,b,E,g,m,T,k,N,C,L,Y,R,$,l,Re,Se,ae,J,ne;class ct{constructor(e,s,a){h(this,l);X(this,"parent");X(this,"is_pending",!1);h(this,v);h(this,q,F?O:null);h(this,w);h(this,M);h(this,b);h(this,E,null);h(this,g,null);h(this,m,null);h(this,T,null);h(this,k,0);h(this,N,0);h(this,C,!1);h(this,L,new Set);h(this,Y,new Set);h(this,R,null);h(this,$,ht(()=>(n(this,R,be(i(this,k))),()=>{n(this,R,null)})));n(this,v,e),n(this,w,s),n(this,M,f=>{var r=B;r.b=this,r.f|=ce,a(f)}),this.parent=B.b,n(this,b,ke(()=>{if(F){const f=i(this,q);Ie(),f.data===Be?y(this,l,Se).call(this):y(this,l,Re).call(this)}else y(this,l,ae).call(this)},ot)),F&&n(this,v,O)}defer_effect(e){Le(e,i(this,L),i(this,Y))}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!i(this,w).pending}update_pending_count(e){y(this,l,ne).call(this,e),n(this,k,i(this,k)+e),!(!i(this,R)||i(this,C))&&(n(this,C,!0),W(()=>{n(this,C,!1),i(this,R)&&Pe(i(this,R),i(this,k))}))}get_effect_pending(){return i(this,$).call(this),ye(i(this,R))}error(e){var s=i(this,w).onerror;let a=i(this,w).failed;if(!s&&!a)throw e;i(this,E)&&(se(i(this,E)),n(this,E,null)),i(this,g)&&(se(i(this,g)),n(this,g,null)),i(this,m)&&(se(i(this,m)),n(this,m,null)),F&&(U(i(this,q)),Ve(),U(We()));var f=!1,r=!1;const o=()=>{if(f){Ge();return}f=!0,r&&qe(),i(this,m)!==null&&te(i(this,m),()=>{n(this,m,null)}),y(this,l,J).call(this,()=>{ee.ensure(),y(this,l,ae).call(this)})};W(()=>{try{r=!0,s==null||s(e,o),r=!1}catch(c){pe(c,i(this,b)&&i(this,b).parent)}a&&n(this,m,y(this,l,J).call(this,()=>{ee.ensure();try{return I(()=>{var c=B;c.b=this,c.f|=ce,a(i(this,v),()=>e,()=>o)})}catch(c){return pe(c,i(this,b).parent),null}}))})}}v=new WeakMap,q=new WeakMap,w=new WeakMap,M=new WeakMap,b=new WeakMap,E=new WeakMap,g=new WeakMap,m=new WeakMap,T=new WeakMap,k=new WeakMap,N=new WeakMap,C=new WeakMap,L=new WeakMap,Y=new WeakMap,R=new WeakMap,$=new WeakMap,l=new WeakSet,Re=function(){try{n(this,E,I(()=>i(this,M).call(this,i(this,v))))}catch(e){this.error(e)}},Se=function(){const e=i(this,w).pending;e&&(this.is_pending=!0,n(this,g,I(()=>e(i(this,v)))),W(()=>{var s=n(this,T,document.createDocumentFragment()),a=Ee();s.append(a),n(this,E,y(this,l,J).call(this,()=>(ee.ensure(),I(()=>i(this,M).call(this,a))))),i(this,N)===0&&(i(this,v).before(s),n(this,T,null),te(i(this,g),()=>{n(this,g,null)}),this.is_pending=!1)}))},ae=function(){try{if(this.is_pending=this.has_pending_snippet(),n(this,N,0),n(this,k,0),n(this,E,I(()=>{i(this,M).call(this,i(this,v))})),i(this,N)>0){var e=n(this,T,document.createDocumentFragment());Ce(i(this,E),e);const s=i(this,w).pending;n(this,g,I(()=>s(i(this,v))))}else this.is_pending=!1}catch(s){this.error(s)}},J=function(e){var s=B,a=me,f=we;K(i(this,b)),Q(i(this,b)),ue(i(this,b).ctx);try{return e()}catch(r){return Ye(r),null}finally{K(s),Q(a),ue(f)}},ne=function(e){var s;if(!this.has_pending_snippet()){this.parent&&y(s=this.parent,l,ne).call(s,e);return}if(n(this,N,i(this,N)+e),i(this,N)===0){this.is_pending=!1;for(const a of i(this,L))de(a,xe),_e(a);for(const a of i(this,Y))de(a,He),_e(a);i(this,L).clear(),i(this,Y).clear(),i(this,g)&&te(i(this,g),()=>{n(this,g,null)}),i(this,T)&&(i(this,v).before(i(this,T)),n(this,T,null))}};const ut=["touchstart","touchmove"];function dt(t){return ut.includes(t)}const j=Symbol("events"),_t=new Set,ge=new Set;function pt(t,e,s,a={}){function f(r){if(a.capture||fe.call(e,r),!r.cancelBubble)return Ke(()=>s==null?void 0:s.call(this,r))}return t.startsWith("pointer")||t.startsWith("touch")||t==="wheel"?W(()=>{e.addEventListener(t,f,a)}):e.addEventListener(t,f,a),f}function Et(t,e,s,a,f){var r={capture:a,passive:f},o=pt(t,e,s,r);(e===document.body||e===window||e===document||e instanceof HTMLMediaElement)&&Je(()=>{e.removeEventListener(t,o,r)})}let ve=null;function fe(t){var p,V;var e=this,s=e.ownerDocument,a=t.type,f=((p=t.composedPath)==null?void 0:p.call(t))||[],r=f[0]||t.target;ve=t;var o=0,c=ve===t&&t[j];if(c){var x=f.indexOf(c);if(x!==-1&&(e===document||e===window)){t[j]=e;return}var D=f.indexOf(e);if(D===-1)return;x<=D&&(o=x)}if(r=f[o]||t.target,r!==e){Qe(t,"currentTarget",{configurable:!0,get(){return r||s}});var H=me,P=B;Q(null),K(null);try{for(var u,_=[];r!==null;){var d=r.assignedSlot||r.parentNode||r.host||null;try{var A=(V=r[j])==null?void 0:V[a];A!=null&&(!r.disabled||t.target===r)&&A.call(r,t)}catch(S){u?_.push(S):u=S}if(t.cancelBubble||d===e||d===null)break;r=d}if(u){for(let S of _)queueMicrotask(()=>{throw S});throw u}}finally{t[j]=e,delete t.currentTarget,Q(H),K(P)}}}function mt(t,e){var s=e==null?"":typeof e=="object"?e+"":e;s!==(t.__t??(t.__t=t.nodeValue))&&(t.__t=s,t.nodeValue=s+"")}function gt(t,e){return Ne(t,e)}function wt(t,e){ie(),e.intro=e.intro??!1;const s=e.target,a=F,f=O;try{for(var r=Ue(s);r&&(r.nodeType!==Te||r.data!==$e);)r=Xe(r);if(!r)throw re;z(!0),U(r);const o=Ne(t,{...e,anchor:r});return z(!1),o}catch(o){if(o instanceof Error&&o.message.split(`
|
|
`).some(c=>c.startsWith("https://svelte.dev/e/")))throw o;return o!==re&&console.warn("Failed to hydrate: ",o),e.recover===!1&&Ze(),ie(),et(s),z(!1),gt(t,e)}finally{z(a),U(f)}}const G=new Map;function Ne(t,{target:e,anchor:s,props:a={},events:f,context:r,intro:o=!0}){ie();var c=void 0,x=tt(()=>{var D=s??e.appendChild(Ee());lt(D,{pending:()=>{}},u=>{it({});var _=we;if(r&&(_.c=r),f&&(a.$$events=f),F&&ft(u,null),c=t(u,a)||{},F&&(B.nodes.end=O,O===null||O.nodeType!==Te||O.data!==rt))throw at(),re;nt()});var H=new Set,P=u=>{for(var _=0;_<u.length;_++){var d=u[_];if(!H.has(d)){H.add(d);var A=dt(d);for(const S of[e,document]){var p=G.get(S);p===void 0&&(p=new Map,G.set(S,p));var V=p.get(d);V===void 0?(S.addEventListener(d,fe,{passive:A}),p.set(d,1)):p.set(d,V+1)}}}};return P(st(_t)),ge.add(P),()=>{var A;for(var u of H)for(const p of[e,document]){var _=G.get(p),d=_.get(u);--d==0?(p.removeEventListener(u,fe),_.delete(u),_.size===0&&G.delete(p)):_.set(u,d)}ge.delete(P),D!==s&&((A=D.parentNode)==null||A.removeChild(D))}});return he.set(c,x),c}let he=new WeakMap;function Tt(t,e){const s=he.get(t);return s?(he.delete(t),s(e)):Promise.resolve()}export{Et as e,wt as h,gt as m,mt as s,Tt as u};
|