INIT
CI / build (push) Has been skipped
CI / deploy (push) Successful in 1m11s

This commit is contained in:
eewing
2026-02-18 15:17:47 -06:00
parent e74c106f85
commit ec317eb17c
11532 changed files with 1631690 additions and 1 deletions
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
import{d as s,h as c,e as m,E as h}from"./nEbfNkJh.js";import{B as i}from"./zcqfpVBB.js";function E(n,r,e){c&&m();var o=new i(n);s(()=>{var a=r()??null;o.ensure(a,a&&(t=>e(t,a)))},h)}export{E as c};
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
var e;typeof window<"u"&&((e=window.__svelte??(window.__svelte={})).v??(e.v=new Set)).add("5");
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
import{g as E,u as L}from"./nEbfNkJh.js";import{i as x,a as T,p as k,b as H}from"./BX9MO-1l.js";function C(t,r,i){E(()=>{var o=L(()=>r(t,i==null?void 0:i())||{});if(o!=null&&o.destroy)return()=>o.destroy()})}function M(t){const r=JSON.parse(t);return r.data&&(r.data=k(r.data,H.decoders)),r}function d(t){return HTMLElement.prototype.cloneNode.call(t)}function N(t,r=()=>{}){const i=async({action:e,result:l,reset:n=!0,invalidateAll:c=!0})=>{l.type==="success"&&(n&&HTMLFormElement.prototype.reset.call(t),c&&await x()),(location.origin+location.pathname===e.origin+e.pathname||l.type==="redirect"||l.type==="error")&&await T(l)};async function o(e){var f,b,y;if(((f=e.submitter)!=null&&f.hasAttribute("formmethod")?e.submitter.formMethod:d(t).method)!=="post")return;e.preventDefault();const n=new URL((b=e.submitter)!=null&&b.hasAttribute("formaction")?e.submitter.formAction:d(t).action),c=(y=e.submitter)!=null&&y.hasAttribute("formenctype")?e.submitter.formEnctype:d(t).enctype,m=new FormData(t,e.submitter),u=new AbortController;let p=!1;const w=await r({action:n,cancel:()=>p=!0,controller:u,formData:m,formElement:t,submitter:e.submitter})??i;if(p)return;let s;try{const a=new Headers({accept:"application/json","x-sveltekit-action":"true"});c!=="multipart/form-data"&&a.set("Content-Type",/^(:?application\/x-www-form-urlencoded|text\/plain)$/.test(c)?c:"application/x-www-form-urlencoded");const A=c==="multipart/form-data"?m:new URLSearchParams(m),h=await fetch(n,{method:"POST",headers:a,cache:"no-store",body:A,signal:u.signal});s=M(await h.text()),s.type==="error"&&(s.status=h.status)}catch(a){if((a==null?void 0:a.name)==="AbortError")return;s={type:"error",error:a}}await w({action:n,formData:m,formElement:t,update:a=>i({action:n,result:s,reset:a==null?void 0:a.reset,invalidateAll:a==null?void 0:a.invalidateAll}),result:s})}return HTMLFormElement.prototype.addEventListener.call(t,"submit",o),{destroy(){HTMLFormElement.prototype.removeEventListener.call(t,"submit",o)}}}export{C as a,N as e};
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,5 @@
var ae=Object.defineProperty;var X=e=>{throw TypeError(e)};var ce=(e,t,n)=>t in e?ae(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var T=(e,t,n)=>ce(e,typeof t!="symbol"?t+"":t,n),Y=(e,t,n)=>t.has(e)||X("Cannot "+n);var y=(e,t,n)=>(Y(e,t,"read from private field"),n?n.call(e):t.get(e)),x=(e,t,n)=>t.has(e)?X("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),j=(e,t,n,r)=>(Y(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n);import{b6 as ue,bi as q,h as Q,i as J,aG as _,az as le,u as W,bj as fe,p as E,P as I,aZ as de,aN as pe,aO as ee,bk as me,Q as te,N as M,O as V,a as O,R as ne,c as he,aF as be,r as ve,f as ye}from"./nEbfNkJh.js";import"./Bzak7iHL.js";import{c as ge}from"./BpNSSBPP.js";import{p as B,i as Ee,r as re,s as _e}from"./zcqfpVBB.js";import{f as P,b as D,a as Se,c as we}from"./Xjya7ye4.js";function Ae(){return Symbol(ue)}function vt(e,t,n=t){var r=new WeakSet;q(e,"input",async o=>{var s=o?e.defaultValue:e.value;if(s=L(e)?N(s):s,n(s),_!==null&&r.add(_),await le(),s!==(s=t())){var a=e.selectionStart,u=e.selectionEnd,f=e.value.length;if(e.value=s??"",u!==null){var l=e.value.length;a===u&&u===f&&l>f?(e.selectionStart=l,e.selectionEnd=l):(e.selectionStart=a,e.selectionEnd=Math.min(u,l))}}}),(Q&&e.defaultValue!==e.value||W(t)==null&&e.value)&&(n(L(e)?N(e.value):e.value),_!==null&&r.add(_)),J(()=>{var o=t();if(e===document.activeElement){var s=fe??_;if(r.has(s))return}L(e)&&o===N(e.value)||e.type==="date"&&!o&&!e.value||o!==e.value&&(e.value=o??"")})}function L(e){var t=e.type;return t==="number"||t==="range"}function N(e){return e===""?null:+e}function yt(e,t,n=t){q(e,"change",()=>{n(e.files)}),Q&&e.files&&n(e.files),J(()=>{e.files=t()})}function Te(e){return typeof e=="function"}function xe(e){return e!==null&&typeof e=="object"}const ke=["string","number","bigint","boolean"];function C(e){return e==null||ke.includes(typeof e)?!0:Array.isArray(e)?e.every(t=>C(t)):typeof e=="object"?Object.getPrototypeOf(e)===Object.prototype:!1}const S=Symbol("box"),U=Symbol("is-writable");function F(e,t){const n=I(e);return t?{[S]:!0,[U]:!0,get current(){return E(n)},set current(r){t(r)}}:{[S]:!0,get current(){return e()}}}function R(e){return xe(e)&&S in e}function oe(e){return R(e)&&U in e}function gt(e){return R(e)?e:Te(e)?F(e):Oe(e)}function Et(e){return Object.entries(e).reduce((t,[n,r])=>R(r)?(oe(r)?Object.defineProperty(t,n,{get(){return r.current},set(o){r.current=o}}):Object.defineProperty(t,n,{get(){return r.current}}),t):Object.assign(t,{[n]:r}),{})}function _t(e){return oe(e)?{[S]:!0,get current(){return e.current}}:e}function Oe(e){let t=de(pe(e));return{[S]:!0,[U]:!0,get current(){return E(t)},set current(n){ee(t,n,!0)}}}function Ie(...e){return function(t){var n;for(const r of e)if(r){if(t.defaultPrevented)return;typeof r=="function"?r.call(this,t):(n=r.current)==null||n.call(this,t)}}}var z=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,Re=/\n/g,je=/^\s*/,Pe=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,Le=/^:\s*/,Ne=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,We=/^[;\s]*/,Me=/^\s+|\s+$/g,Ve=`
`,K="/",$="*",v="",Be="comment",Ce="declaration";function Fe(e,t){if(typeof e!="string")throw new TypeError("First argument must be a string");if(!e)return[];t=t||{};var n=1,r=1;function o(c){var i=c.match(Re);i&&(n+=i.length);var h=c.lastIndexOf(Ve);r=~h?c.length-h:r+c.length}function s(){var c={line:n,column:r};return function(i){return i.position=new a(c),l(),i}}function a(c){this.start=c,this.end={line:n,column:r},this.source=t.source}a.prototype.content=e;function u(c){var i=new Error(t.source+":"+n+":"+r+": "+c);if(i.reason=c,i.filename=t.source,i.line=n,i.column=r,i.source=e,!t.silent)throw i}function f(c){var i=c.exec(e);if(i){var h=i[0];return o(h),e=e.slice(h.length),i}}function l(){f(je)}function m(c){var i;for(c=c||[];i=b();)i!==!1&&c.push(i);return c}function b(){var c=s();if(!(K!=e.charAt(0)||$!=e.charAt(1))){for(var i=2;v!=e.charAt(i)&&($!=e.charAt(i)||K!=e.charAt(i+1));)++i;if(i+=2,v===e.charAt(i-1))return u("End of comment missing");var h=e.slice(2,i-2);return r+=2,o(h),e=e.slice(i),r+=2,c({type:Be,comment:h})}}function p(){var c=s(),i=f(Pe);if(i){if(b(),!f(Le))return u("property missing ':'");var h=f(Ne),ie=c({type:Ce,property:Z(i[0].replace(z,v)),value:h?Z(h[0].replace(z,v)):v});return f(We),ie}}function d(){var c=[];m(c);for(var i;i=p();)i!==!1&&(c.push(i),m(c));return c}return l(),d()}function Z(e){return e?e.replace(Me,v):v}function Ge(e,t){let n=null;if(!e||typeof e!="string")return n;const r=Fe(e),o=typeof t=="function";return r.forEach(s=>{if(s.type!=="declaration")return;const{property:a,value:u}=s;o?t(a,u,s):u&&(n=n||{},n[a]=u)}),n}const Ue=/\d/,He=["-","_","/","."];function Xe(e=""){if(!Ue.test(e))return e!==e.toLowerCase()}function Ye(e){const t=[];let n="",r,o;for(const s of e){const a=He.includes(s);if(a===!0){t.push(n),n="",r=void 0;continue}const u=Xe(s);if(o===!1){if(r===!1&&u===!0){t.push(n),n=s,r=u;continue}if(r===!0&&u===!1&&n.length>1){const f=n.at(-1);t.push(n.slice(0,Math.max(0,n.length-1))),n=f+s,r=u;continue}}n+=s,r=u,o=a}return t.push(n),t}function se(e){return e?Ye(e).map(t=>ze(t)).join(""):""}function De(e){return Ke(se(e||""))}function ze(e){return e?e[0].toUpperCase()+e.slice(1):""}function Ke(e){return e?e[0].toLowerCase()+e.slice(1):""}function k(e){if(!e)return{};const t={};function n(r,o){if(r.startsWith("-moz-")||r.startsWith("-webkit-")||r.startsWith("-ms-")||r.startsWith("-o-")){t[se(r)]=o;return}if(r.startsWith("--")){t[r]=o;return}t[De(r)]=o}return Ge(e,n),t}function $e(...e){return(...t)=>{for(const n of e)typeof n=="function"&&n(...t)}}function Ze(e,t){const n=RegExp(e,"g");return r=>{if(typeof r!="string")throw new TypeError(`expected an argument of type string, but got ${typeof r}`);return r.match(n)?r.replace(n,t):r}}const qe=Ze(/[A-Z]/,e=>`-${e.toLowerCase()}`);function Qe(e){if(!e||typeof e!="object"||Array.isArray(e))throw new TypeError(`expected an argument of type object, but got ${typeof e}`);return Object.keys(e).map(t=>`${qe(t)}: ${e[t]};`).join(`
`)}function Je(e={}){return Qe(e).replace(`
`," ")}const et=["onabort","onanimationcancel","onanimationend","onanimationiteration","onanimationstart","onauxclick","onbeforeinput","onbeforetoggle","onblur","oncancel","oncanplay","oncanplaythrough","onchange","onclick","onclose","oncompositionend","oncompositionstart","oncompositionupdate","oncontextlost","oncontextmenu","oncontextrestored","oncopy","oncuechange","oncut","ondblclick","ondrag","ondragend","ondragenter","ondragleave","ondragover","ondragstart","ondrop","ondurationchange","onemptied","onended","onerror","onfocus","onfocusin","onfocusout","onformdata","ongotpointercapture","oninput","oninvalid","onkeydown","onkeypress","onkeyup","onload","onloadeddata","onloadedmetadata","onloadstart","onlostpointercapture","onmousedown","onmouseenter","onmouseleave","onmousemove","onmouseout","onmouseover","onmouseup","onpaste","onpause","onplay","onplaying","onpointercancel","onpointerdown","onpointerenter","onpointerleave","onpointermove","onpointerout","onpointerover","onpointerup","onprogress","onratechange","onreset","onresize","onscroll","onscrollend","onsecuritypolicyviolation","onseeked","onseeking","onselect","onselectionchange","onselectstart","onslotchange","onstalled","onsubmit","onsuspend","ontimeupdate","ontoggle","ontouchcancel","ontouchend","ontouchmove","ontouchstart","ontransitioncancel","ontransitionend","ontransitionrun","ontransitionstart","onvolumechange","onwaiting","onwebkitanimationend","onwebkitanimationiteration","onwebkitanimationstart","onwebkittransitionend","onwheel"],tt=new Set(et);function nt(e){return tt.has(e)}function rt(...e){const t={...e[0]};for(let n=1;n<e.length;n++){const r=e[n];if(r){for(const o of Object.keys(r)){const s=t[o],a=r[o],u=typeof s=="function",f=typeof a=="function";if(u&&nt(o)){const l=s,m=a;t[o]=Ie(l,m)}else if(u&&f)t[o]=$e(s,a);else if(o==="class"){const l=C(s),m=C(a);l&&m?t[o]=P(s,a):l?t[o]=P(s):m&&(t[o]=P(a))}else if(o==="style"){const l=typeof s=="object",m=typeof a=="object",b=typeof s=="string",p=typeof a=="string";if(l&&m)t[o]={...s,...a};else if(l&&p){const d=k(a);t[o]={...s,...d}}else if(b&&m){const d=k(s);t[o]={...d,...a}}else if(b&&p){const d=k(s),c=k(a);t[o]={...d,...c}}else l?t[o]=s:m?t[o]=a:b?t[o]=s:p&&(t[o]=a)}else t[o]=a!==void 0?a:s}for(const o of Object.getOwnPropertySymbols(r)){const s=t[o],a=r[o];t[o]=a!==void 0?a:s}}}return typeof t.style=="object"&&(t.style=Je(t.style).replaceAll(`
`," ")),t.hidden===!1&&(t.hidden=void 0,delete t.hidden),t.disabled===!1&&(t.disabled=void 0,delete t.disabled),t}function ot(e,t){return{[Ae()]:n=>R(e)?(e.current=n,W(()=>t==null?void 0:t(n)),()=>{"isConnected"in n&&n.isConnected||(e.current=null,t==null||t(null))}):(e(n),W(()=>t==null?void 0:t(n)),()=>{"isConnected"in n&&n.isConnected||(e(null),t==null||t(null))})}}function St(e){return e?"true":"false"}function wt(e){return e?"":void 0}function At(e){return e?!0:void 0}function Tt(e){return e?"open":"closed"}function xt(e){return e?"checked":"unchecked"}function kt(e,t){return e?"true":"false"}var g,w;class st{constructor(t){x(this,g);x(this,w);T(this,"attrs");j(this,g,t.getVariant?t.getVariant():null),j(this,w,y(this,g)?`data-${y(this,g)}-`:`data-${t.component}-`),this.getAttr=this.getAttr.bind(this),this.selector=this.selector.bind(this),this.attrs=Object.fromEntries(t.parts.map(n=>[n,this.getAttr(n)]))}getAttr(t,n){return n?`data-${n}-${t}`:`${y(this,w)}${t}`}selector(t,n){return`[${this.getAttr(t,n)}]`}}g=new WeakMap,w=new WeakMap;function it(e){const t=new st(e);return{...t.attrs,selector:t.selector,getAttr:t.getAttr}}function at(e,t){return`bits-${e}`}const ct=it({component:"label",parts:["root"]});var A;const H=class H{constructor(t){T(this,"opts");T(this,"attachment");x(this,A,I(()=>({id:this.opts.id.current,[ct.root]:"",onmousedown:this.onmousedown,...this.attachment})));this.opts=t,this.attachment=ot(this.opts.ref),this.onmousedown=this.onmousedown.bind(this)}static create(t){return new H(t)}onmousedown(t){t.detail>1&&t.preventDefault()}get props(){return E(y(this,A))}set props(t){ee(y(this,A),t)}};A=new WeakMap;let G=H;var ut=ye("<label><!></label>");function lt(e,t){const n=me();te(t,!0);let r=B(t,"id",19,()=>at(n)),o=B(t,"ref",15,null),s=re(t,["$$slots","$$events","$$legacy","children","child","id","ref","for"]);const a=G.create({id:F(()=>r()),ref:F(()=>o(),p=>o(p))}),u=I(()=>rt(s,a.props,{for:t.for}));var f=M(),l=V(f);{var m=p=>{var d=M(),c=V(d);D(c,()=>t.child,()=>({props:E(u)})),O(p,d)},b=p=>{var d=ut();Se(d,()=>({...E(u),for:t.for}));var c=he(d);D(c,()=>t.children??be),ve(d),O(p,d)};Ee(l,p=>{t.child?p(m):p(b,!1)})}O(e,f),ne()}function Ot(e,t){te(t,!0);let n=B(t,"ref",15,null),r=re(t,["$$slots","$$events","$$legacy","ref","class"]);var o=M(),s=V(o);{let a=I(()=>we("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t.class));ge(s,()=>lt,(u,f)=>{f(u,_e({"data-slot":"label",get class(){return E(a)}},()=>r,{get ref(){return n()},set ref(l){n(l)}}))})}O(e,o),ne()}export{S as B,Ot as L,vt as a,yt as b,gt as c,F as d,Et as e,R as f,oe as g,xe as h,U as i,$e as j,ot as k,Tt as l,wt as m,St as n,it as o,Oe as p,Ie as q,at as r,Je as s,_t as t,rt as u,k as v,xt as w,kt as x,At as y};
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
const y="modulepreload",P=function(f,a){return new URL(f,a).href},E={},g=function(a,u,d){let h=Promise.resolve();if(u&&u.length>0){let o=function(e){return Promise.all(e.map(r=>Promise.resolve(r).then(l=>({status:"fulfilled",value:l}),l=>({status:"rejected",reason:l}))))};const t=document.getElementsByTagName("link"),s=document.querySelector("meta[property=csp-nonce]"),v=(s==null?void 0:s.nonce)||(s==null?void 0:s.getAttribute("nonce"));h=o(u.map(e=>{if(e=P(e,d),e in E)return;E[e]=!0;const r=e.endsWith(".css"),l=r?'[rel="stylesheet"]':"";if(d)for(let i=t.length-1;i>=0;i--){const c=t[i];if(c.href===e&&(!r||c.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${e}"]${l}`))return;const n=document.createElement("link");if(n.rel=r?"stylesheet":y,r||(n.as="script"),n.crossOrigin="",n.href=e,v&&n.setAttribute("nonce",v),document.head.appendChild(n),r)return new Promise((i,c)=>{n.addEventListener("load",i),n.addEventListener("error",()=>c(Error(`Unable to preload CSS for ${e}`)))})}))}function m(o){const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=o,window.dispatchEvent(t),!t.defaultPrevented)throw o}return h.then(o=>{for(const t of o||[])t.status==="rejected"&&m(t.reason);return a().catch(m)})};export{g as _};
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
import"./Bzak7iHL.js";import{s,c as e,n as o,b as n,a as t,r as l,f as k}from"./nEbfNkJh.js";import{B as c}from"./uf3Is7Es.js";var g=k('<main class="flex min-h-0 flex-1 flex-col items-center justify-center gap-6 p-6"><h1 class="text-2xl font-semibold">Base</h1> <div class="flex w-full max-w-xs flex-col gap-3"><a href="https://prism.ccllc.pro" class="block" target="_blank" rel="noopener noreferrer"><!></a> <a href="https://tasgrid.ccllc.pro" class="block" target="_blank" rel="noopener noreferrer"><!></a> <a href="https://stackq.ccllc.pro" class="block" target="_blank" rel="noopener noreferrer"><!></a> <a href="https://hrm.ccllc.pro" class="block" target="_blank" rel="noopener noreferrer"><!></a></div></main>');function H(u,w){var i=g(),d=s(e(i),2),f=e(d),$=e(f);c($,{class:"h-12 w-full min-h-12",children:(r,m)=>{o();var a=n("Prism");t(r,a)},$$slots:{default:!0}}),l(f);var p=s(f,2),x=e(p);c(x,{class:"h-12 min-h-12 w-full",variant:"outline",children:(r,m)=>{o();var a=n("TasGrid");t(r,a)},$$slots:{default:!0}}),l(p);var h=s(p,2),_=e(h);c(_,{class:"h-12 min-h-12 w-full",variant:"outline",children:(r,m)=>{o();var a=n("Stackq");t(r,a)},$$slots:{default:!0}}),l(h);var v=s(h,2),b=e(v);c(b,{class:"h-12 min-h-12 w-full",variant:"outline",children:(r,m)=>{o();var a=n("HRM");t(r,a)},$$slots:{default:!0}}),l(v),l(d),l(i),t(u,i)}export{H as default};
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
import{g as S,i as h,u as k,q,S as T}from"./nEbfNkJh.js";function t(r,i){return r===i||(r==null?void 0:r[T])===i}function A(r={},i,a,c){return S(()=>{var f,s;return h(()=>{f=s,s=[],k(()=>{r!==a(...s)&&(i(r,...s),f&&t(a(...f),r)&&i(null,...f))})}),()=>{q(()=>{s&&t(a(...s),r)&&i(null,...s)})}}),r}export{A as b};
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
import{j as d,k as g,l as c,u as m,m as i,o as b,p,v,w as k,x as h}from"./nEbfNkJh.js";function y(n=!1){const s=d,e=s.l.u;if(!e)return;let f=()=>v(s.s);if(n){let o=0,t={};const _=k(()=>{let l=!1;const r=s.s;for(const a in r)r[a]!==t[a]&&(t[a]=r[a],l=!0);return l&&o++,o});f=()=>p(_)}e.b.length&&g(()=>{u(s,f),i(e.b)}),c(()=>{const o=m(()=>e.m.map(b));return()=>{for(const t of o)typeof t=="function"&&t()}}),e.a.length&&c(()=>{u(s,f),i(e.a)})}function u(n,s){if(n.l.s)for(const e of n.l.s)p(e);s()}h();export{y as i};
@@ -0,0 +1 @@
 ŒÂqïã­E<†¢3k.eÓ>%Ó-雼nbvºwÚ¬“K”B"ÎÓÖÁÍ´<Ê8¥±–MŠæ0L¼ŸôþºMÌ«;œ6Ѩ3¶†s_‰t£Mx °A¡P`uÆÀ‹oÄ
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
var q=Object.defineProperty;var B=t=>{throw TypeError(t)};var z=(t,e,s)=>e in t?q(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s;var Y=(t,e,s)=>z(t,typeof e!="symbol"?e+"":e,s),j=(t,e,s)=>e.has(t)||B("Cannot "+s);var n=(t,e,s)=>(j(t,e,"read from private field"),s?s.call(t):e.get(t)),v=(t,e,s)=>e.has(t)?B("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,s),C=(t,e,s,r)=>(j(t,e,"write to private field"),r?r.call(t,s):e.set(t,s),s);import{aG as F,aH as J,ab as I,$ as Q,_ as H,Z as K,h as x,W as V,a0 as k,aI as ee,d as te,e as se,E as re,aJ as ne,aj as ie,H as ae,B as fe,A as oe,C as U,aK as y,aL as ue,aM as ce,p as D,aN as le,aO as de,X as he,aP as _e,aQ as pe,u as ve,ay as be,aR as ge,aS as Se,w as me,aT as Pe,aU as we,aV as Ae,S as $,aW as G,aX as P}from"./nEbfNkJh.js";var d,h,l,b,w,A,O;class Re{constructor(e,s=!0){Y(this,"anchor");v(this,d,new Map);v(this,h,new Map);v(this,l,new Map);v(this,b,new Set);v(this,w,!0);v(this,A,()=>{var e=F;if(n(this,d).has(e)){var s=n(this,d).get(e),r=n(this,h).get(s);if(r)J(r),n(this,b).delete(s);else{var i=n(this,l).get(s);i&&(n(this,h).set(s,i.effect),n(this,l).delete(s),i.fragment.lastChild.remove(),this.anchor.before(i.fragment),r=i.effect)}for(const[a,o]of n(this,d)){if(n(this,d).delete(a),a===e)break;const f=n(this,l).get(o);f&&(I(f.effect),n(this,l).delete(o))}for(const[a,o]of n(this,h)){if(a===s||n(this,b).has(a))continue;const f=()=>{if(Array.from(n(this,d).values()).includes(a)){var _=document.createDocumentFragment();k(o,_),_.append(H()),n(this,l).set(a,{effect:o,fragment:_})}else I(o);n(this,b).delete(a),n(this,h).delete(a)};n(this,w)||!r?(n(this,b).add(a),Q(o,f,!1)):f()}}});v(this,O,e=>{n(this,d).delete(e);const s=Array.from(n(this,d).values());for(const[r,i]of n(this,l))s.includes(r)||(I(i.effect),n(this,l).delete(r))});this.anchor=e,C(this,w,s)}ensure(e,s){var r=F,i=ee();if(s&&!n(this,h).has(e)&&!n(this,l).has(e))if(i){var a=document.createDocumentFragment(),o=H();a.append(o),n(this,l).set(e,{effect:K(()=>s(o)),fragment:a})}else n(this,h).set(e,K(()=>s(this.anchor)));if(n(this,d).set(r,e),i){for(const[f,u]of n(this,h))f===e?r.unskip_effect(u):r.skip_effect(u);for(const[f,u]of n(this,l))f===e?r.unskip_effect(u.effect):r.skip_effect(u.effect);r.oncommit(n(this,A)),r.ondiscard(n(this,O))}else x&&(this.anchor=V),n(this,A).call(this)}}d=new WeakMap,h=new WeakMap,l=new WeakMap,b=new WeakMap,w=new WeakMap,A=new WeakMap,O=new WeakMap;function xe(t,e,s=!1){x&&se();var r=new Re(t),i=s?re:0;function a(o,f){if(x){const p=ne(t);var u;if(p===ie?u=0:p===ae?u=!1:u=parseInt(p.substring(1)),o!==u){var _=fe();oe(_),r.anchor=_,U(!1),r.ensure(o,f),U(!0);return}}r.ensure(o,f)}te(()=>{var o=!1;e((f,u=0)=>{o=!0,a(u,f)}),o||a(!1,null)},i)}let T=!1;function Te(t){var e=T;try{return T=!1,[t(),T]}finally{T=e}}const Oe={get(t,e){if(!t.exclude.includes(e))return t.props[e]},set(t,e){return!1},getOwnPropertyDescriptor(t,e){if(!t.exclude.includes(e)&&e in t.props)return{enumerable:!0,configurable:!0,value:t.props[e]}},has(t,e){return t.exclude.includes(e)?!1:e in t.props},ownKeys(t){return Reflect.ownKeys(t.props).filter(e=>!t.exclude.includes(e))}};function ye(t,e,s){return new Proxy({props:t,exclude:e},Oe)}const Ee={get(t,e){let s=t.props.length;for(;s--;){let r=t.props[s];if(P(r)&&(r=r()),typeof r=="object"&&r!==null&&e in r)return r[e]}},set(t,e,s){let r=t.props.length;for(;r--;){let i=t.props[r];P(i)&&(i=i());const a=y(i,e);if(a&&a.set)return a.set(s),!0}return!1},getOwnPropertyDescriptor(t,e){let s=t.props.length;for(;s--;){let r=t.props[s];if(P(r)&&(r=r()),typeof r=="object"&&r!==null&&e in r){const i=y(r,e);return i&&!i.configurable&&(i.configurable=!0),i}}},has(t,e){if(e===$||e===G)return!1;for(let s of t.props)if(P(s)&&(s=s()),s!=null&&e in s)return!0;return!1},ownKeys(t){const e=[];for(let s of t.props)if(P(s)&&(s=s()),!!s){for(const r in s)e.includes(r)||e.push(r);for(const r of Object.getOwnPropertySymbols(s))e.includes(r)||e.push(r)}return e}};function Le(...t){return new Proxy({props:t},Ee)}function Me(t,e,s,r){var M;var i=!be||(s&ge)!==0,a=(s&pe)!==0,o=(s&we)!==0,f=r,u=!0,_=()=>(u&&(u=!1,f=o?ve(r):r),f),p;if(a){var W=$ in t||G in t;p=((M=y(t,e))==null?void 0:M.set)??(W&&e in t?c=>t[e]=c:void 0)}var S,L=!1;a?[S,L]=Te(()=>t[e]):S=t[e],S===void 0&&r!==void 0&&(S=_(),p&&(i&&ue(),p(S)));var g;if(i?g=()=>{var c=t[e];return c===void 0?_():(u=!0,c)}:g=()=>{var c=t[e];return c!==void 0&&(f=void 0),c===void 0?f:c},i&&(s&ce)===0)return g;if(p){var X=t.$$legacy;return(function(c,R){return arguments.length>0?((!i||!R||X||L)&&p(R?g():c),c):g()})}var E=!1,m=((s&Se)!==0?me:Pe)(()=>(E=!1,g()));a&&D(m);var Z=he;return(function(c,R){if(arguments.length>0){const N=R?D(m):i&&a?le(c):c;return de(m,N),E=!0,f!==void 0&&(f=N),c}return Ae&&E||(Z.f&_e)!==0?m.v:D(m)})}export{Re as B,xe as i,Me as p,ye as r,Le as s};
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,2 @@
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.DsCqkoz9.js","../chunks/Bzak7iHL.js","../chunks/CPmvlhtF.js","../chunks/nEbfNkJh.js","../chunks/zcqfpVBB.js","../chunks/Xjya7ye4.js","../chunks/BpNSSBPP.js","../chunks/CoAkxMBS.js","../chunks/BX9MO-1l.js","../chunks/CvA4ASMA.js","../chunks/ggIfGDPQ.js","../assets/0.Ci1WSy1v.css","../nodes/1.CwhQAky3.js","../nodes/2.B4w5AQ-r.js","../chunks/D4nn9Y_6.js","../chunks/uf3Is7Es.js","../chunks/DTd9pe6t.js","../nodes/3.sctq0uPd.js","../nodes/4.BG9kRLiv.js"])))=>i.map(i=>d[i]);
var M=e=>{throw TypeError(e)};var Y=(e,t,r)=>t.has(e)||M("Cannot "+r);var o=(e,t,r)=>(Y(e,t,"read from private field"),r?r.call(e):t.get(e)),L=(e,t,r)=>t.has(e)?M("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),j=(e,t,r,n)=>(Y(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r);import{_ as O}from"../chunks/D4nn9Y_6.js";import{aO as x,aW as F,p as l,J as H,aY as K,L as U,Q as X,k as $,l as tt,az as et,O as R,s as rt,a as y,R as at,aZ as k,N as w,c as st,r as ot,f as z,P as A,b as nt,t as ct}from"../chunks/nEbfNkJh.js";import{h as it,m as ut,u as mt,o as lt,s as dt}from"../chunks/CPmvlhtF.js";import"../chunks/Bzak7iHL.js";import{p,i as D}from"../chunks/zcqfpVBB.js";import{c as I}from"../chunks/BpNSSBPP.js";import{b as T}from"../chunks/DTd9pe6t.js";function ft(e){return class extends _t{constructor(t){super({component:e,...t})}}}var d,i;class _t{constructor(t){L(this,d);L(this,i);var v;var r=new Map,n=(a,s)=>{var f=U(s,!1,!1);return r.set(a,f),f};const m=new Proxy({...t.props||{},$$events:{}},{get(a,s){return l(r.get(s)??n(s,Reflect.get(a,s)))},has(a,s){return s===F?!0:(l(r.get(s)??n(s,Reflect.get(a,s))),Reflect.has(a,s))},set(a,s,f){return x(r.get(s)??n(s,f),f),Reflect.set(a,s,f)}});j(this,i,(t.hydrate?it:ut)(t.component,{target:t.target,anchor:t.anchor,props:m,context:t.context,intro:t.intro??!1,recover:t.recover})),(!((v=t==null?void 0:t.props)!=null&&v.$$host)||t.sync===!1)&&H(),j(this,d,m.$$events);for(const a of Object.keys(o(this,i)))a==="$set"||a==="$destroy"||a==="$on"||K(this,a,{get(){return o(this,i)[a]},set(s){o(this,i)[a]=s},enumerable:!0});o(this,i).$set=a=>{Object.assign(m,a)},o(this,i).$destroy=()=>{mt(o(this,i))}}$set(t){o(this,i).$set(t)}$on(t,r){o(this,d)[t]=o(this,d)[t]||[];const n=(...m)=>r.call(this,...m);return o(this,d)[t].push(n),()=>{o(this,d)[t]=o(this,d)[t].filter(m=>m!==n)}}$destroy(){o(this,i).$destroy()}}d=new WeakMap,i=new WeakMap;const wt={};var ht=z('<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>'),gt=z("<!> <!>",1);function vt(e,t){X(t,!0);let r=p(t,"components",23,()=>[]),n=p(t,"data_0",3,null),m=p(t,"data_1",3,null);$(()=>t.stores.page.set(t.page)),tt(()=>{t.stores,t.page,t.constructors,r(),t.form,n(),m(),t.stores.page.notify()});let v=k(!1),a=k(!1),s=k(null);lt(()=>{const c=t.stores.page.subscribe(()=>{l(v)&&(x(a,!0),et().then(()=>{x(s,document.title||"untitled page",!0)}))});return x(v,!0),c});const f=A(()=>t.constructors[1]);var V=gt(),C=R(V);{var J=c=>{const _=A(()=>t.constructors[0]);var h=w(),E=R(h);I(E,()=>l(_),(g,b)=>{T(b(g,{get data(){return n()},get form(){return t.form},get params(){return t.page.params},children:(u,yt)=>{var S=w(),Z=R(S);I(Z,()=>l(f),(q,B)=>{T(B(q,{get data(){return m()},get form(){return t.form},get params(){return t.page.params}}),P=>r()[1]=P,()=>{var P;return(P=r())==null?void 0:P[1]})}),y(u,S)},$$slots:{default:!0}}),u=>r()[0]=u,()=>{var u;return(u=r())==null?void 0:u[0]})}),y(c,h)},N=c=>{const _=A(()=>t.constructors[0]);var h=w(),E=R(h);I(E,()=>l(_),(g,b)=>{T(b(g,{get data(){return n()},get form(){return t.form},get params(){return t.page.params}}),u=>r()[0]=u,()=>{var u;return(u=r())==null?void 0:u[0]})}),y(c,h)};D(C,c=>{t.constructors[1]?c(J):c(N,!1)})}var Q=rt(C,2);{var W=c=>{var _=ht(),h=st(_);{var E=g=>{var b=nt();ct(()=>dt(b,l(s))),y(g,b)};D(h,g=>{l(a)&&g(E)})}ot(_),y(c,_)};D(Q,c=>{l(v)&&c(W)})}y(e,V),at()}const At=ft(vt),pt=[()=>O(()=>import("../nodes/0.DsCqkoz9.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11]),import.meta.url),()=>O(()=>import("../nodes/1.CwhQAky3.js"),__vite__mapDeps([12,1,10,3,2,8]),import.meta.url),()=>O(()=>import("../nodes/2.B4w5AQ-r.js"),__vite__mapDeps([13,14,1,3,4,6,15,5,16]),import.meta.url),()=>O(()=>import("../nodes/3.sctq0uPd.js"),__vite__mapDeps([17,1,3,7,8,2,5,4,15,16]),import.meta.url),()=>O(()=>import("../nodes/4.BG9kRLiv.js"),__vite__mapDeps([18,1,3,2,4,6,7,8,5,15,16,9]),import.meta.url)],Dt=[0],It={"/":[2],"/login":[-5],"/logout":[3]},G={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},bt=Object.fromEntries(Object.entries(G.transport).map(([e,t])=>[e,t.decode])),Tt=Object.fromEntries(Object.entries(G.transport).map(([e,t])=>[e,t.encode])),Vt=!1,Ct=(e,t)=>bt[e](t);export{Ct as decode,bt as decoders,It as dictionary,Tt as encoders,Vt as hash,G as hooks,wt as matchers,pt as nodes,At as root,Dt as server_loads};
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
import{l as o,e as r}from"../chunks/BX9MO-1l.js";export{o as load_css,r as start};
@@ -0,0 +1,2 @@
)€import{l as o,e as r}from"../chunks/BX9MO-1l.js";export{o as load_css,r as start};

File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
import"../chunks/Bzak7iHL.js";import{i as h}from"../chunks/ggIfGDPQ.js";import{Q as g,O as l,t as v,a as d,R as _,f as x,c as e,r as o,s as $}from"../chunks/nEbfNkJh.js";import{s as p}from"../chunks/CPmvlhtF.js";import{s as k,c as m}from"../chunks/BX9MO-1l.js";const b={get error(){return m.error},get status(){return m.status}};k.updated.check;const i=b;var E=x("<h1> </h1> <p> </p>",1);function w(c,f){g(f,!1),h();var t=E(),r=l(t),n=e(r,!0);o(r);var s=$(r,2),u=e(s,!0);o(s),v(()=>{var a;p(n,i.status),p(u,(a=i.error)==null?void 0:a.message)}),d(c,t),_()}export{w as component};
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,2 @@
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../chunks/D8bjufgL.js","../chunks/Bzak7iHL.js","../chunks/nEbfNkJh.js","../chunks/uf3Is7Es.js","../chunks/Xjya7ye4.js","../chunks/zcqfpVBB.js","../chunks/DTd9pe6t.js"])))=>i.map(i=>d[i]);
import{_ as B}from"../chunks/D4nn9Y_6.js";import"../chunks/Bzak7iHL.js";import{h as d,e as P,y as w,d as O,z as T,H as R,A as S,B as W,C as D,q,D as I,F as G,G as M,I as U,J as $,K as b,U as j,L as k,M as z,N as x,O as E,a as p,p as N,P as A,f as C}from"../chunks/nEbfNkJh.js";import{B as F,i as J}from"../chunks/zcqfpVBB.js";import{c as K}from"../chunks/BpNSSBPP.js";import"../chunks/uf3Is7Es.js";const L=0,H=1;function V(v,g,m,t,u){d&&P();var i=w(),e=j,o=i?b(e):k(e,!1,!1),r=i?b(e):k(e,!1,!1),a=new F(v);O(()=>{var n=g(),c=!1;let f=d&&T(n)===(v.data===R);if(f&&(S(W()),D(!1)),T(n)){var h=z(),l=!1;const s=_=>{if(!c){l=!0,h(!1),G.ensure(),d&&D(!1);try{_()}finally{M(),U||$()}}};n.then(_=>{s(()=>{I(o,_),a.ensure(H,t&&(y=>t(y,o)))})},_=>{s(()=>{if(I(r,_),a.ensure(H,u&&(y=>u(y,r))),!u)throw r.v})}),d?a.ensure(L,m):q(()=>{l||s(()=>{a.ensure(L,m)})})}else I(o,n),a.ensure(H,t&&(s=>t(s,o)));return f&&D(!0),()=>{c=!0}})}var Y=C('<main class="flex min-h-0 flex-1 flex-col items-center justify-center gap-6 p-6"><p class="text-muted-foreground">Loading…</p></main>');function sa(v,g){var m=x(),t=E(m);{var u=i=>{var e=x(),o=E(e);V(o,()=>B(()=>import("../chunks/D8bjufgL.js"),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url),r=>{var a=Y();p(r,a)},(r,a)=>{var n=A(()=>{var{default:l}=N(a);return{HomeWithDialog:l}}),c=A(()=>N(n).HomeWithDialog),f=x(),h=E(f);K(h,()=>N(c),(l,s)=>{s(l,{get data(){return g.data}})}),p(r,f)}),p(i,e)};J(t,i=>{i(u)})}p(v,m)}export{sa as component};
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
import"../chunks/Bzak7iHL.js";import{t as c,a as r,f as l,c as s,n as d,b as u,r as m}from"../chunks/nEbfNkJh.js";import{a as v,e as h}from"../chunks/CoAkxMBS.js";import{s as x}from"../chunks/Xjya7ye4.js";import{B as $}from"../chunks/uf3Is7Es.js";var _=l('<div class="app-shell flex items-center justify-center min-h-[200px]"><form method="POST"><!></form></div>');function j(i,n){var e=_(),t=s(e),f=s(t);$(f,{type:"submit",children:(o,a)=>{d();var p=u("Log out");r(o,p)},$$slots:{default:!0}}),m(t),v(t,o=>{var a;return(a=h)==null?void 0:a(o)}),m(e),c(()=>x(t,"action",n.formAction)),r(i,e)}export{j as component};
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
+1
View File
@@ -0,0 +1 @@
{"version":"1771448604064"}
Binary file not shown.
Binary file not shown.
+94
View File
@@ -0,0 +1,94 @@
import process from 'node:process';
/* global "" */
const expected = new Set([
'SOCKET_PATH',
'HOST',
'PORT',
'ORIGIN',
'XFF_DEPTH',
'ADDRESS_HEADER',
'PROTOCOL_HEADER',
'HOST_HEADER',
'PORT_HEADER',
'BODY_SIZE_LIMIT',
'SHUTDOWN_TIMEOUT',
'IDLE_TIMEOUT',
'KEEP_ALIVE_TIMEOUT',
'HEADERS_TIMEOUT'
]);
const expected_unprefixed = new Set(['LISTEN_PID', 'LISTEN_FDS']);
if ("") {
for (const name in process.env) {
if (name.startsWith("")) {
const unprefixed = name.slice("".length);
if (!expected.has(unprefixed)) {
throw new Error(
`You should change envPrefix (${""}) to avoid conflicts with existing environment variables — unexpectedly saw ${name}`
);
}
}
}
}
/**
* @param {string} name
* @param {any} fallback
*/
function env(name, fallback) {
const prefix = expected_unprefixed.has(name) ? '' : "";
const prefixed = prefix + name;
return prefixed in process.env ? process.env[prefixed] : fallback;
}
const integer_regexp = /^\d+$/;
/**
* Throw a consistently-structured parsing error for environment variables.
* @param {string} name
* @param {any} value
* @param {string} description
* @returns {never}
*/
function parsing_error(name, value, description) {
throw new Error(
`Invalid value for environment variable ${name}: ${JSON.stringify(value)} (${description})`
);
}
/**
* Check the environment for a timeout value (non-negative integer) in seconds.
* @param {string} name
* @param {number} [fallback]
* @returns {number | undefined}
*/
function timeout_env(name, fallback) {
const raw = env(name, fallback);
if (!raw) {
return fallback;
}
if (!integer_regexp.test(raw)) {
parsing_error(name, raw, 'should be a non-negative integer');
}
const parsed = Number.parseInt(raw, 10);
// We don't technically need to check `Number.isNaN` because the value already passed the regexp test.
// However, just in case there's some new codepath introduced somewhere down the line, it's probably good
// to stick this in here.
if (Number.isNaN(parsed)) {
parsing_error(name, raw, 'should be a non-negative integer');
}
if (parsed < 0) {
parsing_error(name, raw, 'should be a non-negative integer');
}
return parsed;
}
export { env, timeout_env };
+1494
View File
File diff suppressed because it is too large Load Diff
+345
View File
@@ -0,0 +1,345 @@
import http from 'node:http';
import process from 'node:process';
import { handler } from './handler.js';
import { env, timeout_env } from './env.js';
import { setImmediate } from 'node:timers';
import * as qs from 'node:querystring';
/**
* @param {string|RegExp} input The route pattern
* @param {boolean} [loose] Allow open-ended matching. Ignored with `RegExp` input.
*/
function parse$1(input, loose) {
if (input instanceof RegExp) return { keys:false, pattern:input };
var c, o, tmp, ext, keys=[], pattern='', arr = input.split('/');
arr[0] || arr.shift();
while (tmp = arr.shift()) {
c = tmp[0];
if (c === '*') {
keys.push(c);
pattern += tmp[1] === '?' ? '(?:/(.*))?' : '/(.*)';
} else if (c === ':') {
o = tmp.indexOf('?', 1);
ext = tmp.indexOf('.', 1);
keys.push( tmp.substring(1, !!~o ? o : !!~ext ? ext : tmp.length) );
pattern += !!~o && !~ext ? '(?:/([^/]+?))?' : '/([^/]+?)';
if (!!~ext) pattern += (!!~o ? '?' : '') + '\\' + tmp.substring(ext);
} else {
pattern += '/' + tmp;
}
}
return {
keys: keys,
pattern: new RegExp('^' + pattern + (loose ? '(?=$|\/)' : '\/?$'), 'i')
};
}
const MAP = {
"": 0,
GET: 1,
HEAD: 2,
PATCH: 3,
OPTIONS: 4,
CONNECT: 5,
DELETE: 6,
TRACE: 7,
POST: 8,
PUT: 9,
};
class Trouter {
constructor() {
this.routes = [];
this.all = this.add.bind(this, '');
this.get = this.add.bind(this, 'GET');
this.head = this.add.bind(this, 'HEAD');
this.patch = this.add.bind(this, 'PATCH');
this.options = this.add.bind(this, 'OPTIONS');
this.connect = this.add.bind(this, 'CONNECT');
this.delete = this.add.bind(this, 'DELETE');
this.trace = this.add.bind(this, 'TRACE');
this.post = this.add.bind(this, 'POST');
this.put = this.add.bind(this, 'PUT');
}
use(route, ...fns) {
let handlers = [].concat.apply([], fns);
let { keys, pattern } = parse$1(route, true);
this.routes.push({ keys, pattern, method: '', handlers, midx: MAP[''] });
return this;
}
add(method, route, ...fns) {
let { keys, pattern } = parse$1(route);
let handlers = [].concat.apply([], fns);
this.routes.push({ keys, pattern, method, handlers, midx: MAP[method] });
return this;
}
find(method, url) {
let midx = MAP[method];
let isHEAD = (midx === 2);
let i=0, j=0, k, tmp, arr=this.routes;
let matches=[], params={}, handlers=[];
for (; i < arr.length; i++) {
tmp = arr[i];
if (tmp.midx === midx || tmp.midx === 0 || (isHEAD && tmp.midx===1) ) {
if (tmp.keys === false) {
matches = tmp.pattern.exec(url);
if (matches === null) continue;
if (matches.groups !== void 0) for (k in matches.groups) params[k]=matches.groups[k];
tmp.handlers.length > 1 ? (handlers=handlers.concat(tmp.handlers)) : handlers.push(tmp.handlers[0]);
} else if (tmp.keys.length > 0) {
matches = tmp.pattern.exec(url);
if (matches === null) continue;
for (j=0; j < tmp.keys.length;) params[tmp.keys[j]]=matches[++j];
tmp.handlers.length > 1 ? (handlers=handlers.concat(tmp.handlers)) : handlers.push(tmp.handlers[0]);
} else if (tmp.pattern.test(url)) {
tmp.handlers.length > 1 ? (handlers=handlers.concat(tmp.handlers)) : handlers.push(tmp.handlers[0]);
}
} // else not a match
}
return { params, handlers };
}
}
/**
* @typedef ParsedURL
* @type {import('.').ParsedURL}
*/
/**
* @typedef Request
* @property {string} url
* @property {ParsedURL} _parsedUrl
*/
/**
* @param {Request} req
* @returns {ParsedURL|void}
*/
function parse(req) {
let raw = req.url;
if (raw == null) return;
let prev = req._parsedUrl;
if (prev && prev.raw === raw) return prev;
let pathname=raw, search='', query;
if (raw.length > 1) {
let idx = raw.indexOf('?', 1);
if (idx !== -1) {
search = raw.substring(idx);
pathname = raw.substring(0, idx);
if (search.length > 1) {
query = qs.parse(search.substring(1));
}
}
}
return req._parsedUrl = { pathname, search, query, raw };
}
function onError(err, req, res) {
let code = typeof err.status === 'number' && err.status;
code = res.statusCode = (code && code >= 100 ? code : 500);
if (typeof err === 'string' || Buffer.isBuffer(err)) res.end(err);
else res.end(err.message || http.STATUS_CODES[code]);
}
const mount = fn => fn instanceof Polka ? fn.attach : fn;
class Polka extends Trouter {
constructor(opts={}) {
super();
this.parse = parse;
this.server = opts.server;
this.handler = this.handler.bind(this);
this.onError = opts.onError || onError; // catch-all handler
this.onNoMatch = opts.onNoMatch || this.onError.bind(null, { status: 404 });
this.attach = (req, res) => setImmediate(this.handler, req, res);
}
use(base, ...fns) {
if (base === '/') {
super.use(base, fns.map(mount));
} else if (typeof base === 'function' || base instanceof Polka) {
super.use('/', [base, ...fns].map(mount));
} else {
super.use(base,
(req, _, next) => {
if (typeof base === 'string') {
let len = base.length;
base.startsWith('/') || len++;
req.url = req.url.substring(len) || '/';
req.path = req.path.substring(len) || '/';
} else {
req.url = req.url.replace(base, '') || '/';
req.path = req.path.replace(base, '') || '/';
}
if (req.url.charAt(0) !== '/') {
req.url = '/' + req.url;
}
next();
},
fns.map(mount),
(req, _, next) => {
req.path = req._parsedUrl.pathname;
req.url = req.path + req._parsedUrl.search;
next();
}
);
}
return this; // chainable
}
listen() {
(this.server = this.server || http.createServer()).on('request', this.attach);
this.server.listen.apply(this.server, arguments);
return this;
}
handler(req, res, next) {
let info = this.parse(req), path = info.pathname;
let obj = this.find(req.method, req.path=path);
req.url = path + info.search;
req.originalUrl = req.originalUrl || req.url;
req.query = info.query || {};
req.search = info.search;
req.params = obj.params;
if (path.length > 1 && path.indexOf('%', 1) !== -1) {
for (let k in req.params) {
try { req.params[k] = decodeURIComponent(req.params[k]); }
catch (e) { /* malform uri segment */ }
}
}
let i=0, arr=obj.handlers.concat(this.onNoMatch), len=arr.length;
let loop = async () => res.finished || (i < len) && arr[i++](req, res, next);
(next = next || (err => err ? this.onError(err, req, res, next) : loop().catch(next)))(); // init
}
}
function polka (opts) {
return new Polka(opts);
}
const path = env('SOCKET_PATH', false);
const host = env('HOST', '0.0.0.0');
const port = env('PORT', !path && '3000');
const shutdown_timeout = parseInt(env('SHUTDOWN_TIMEOUT', '30'));
const idle_timeout = parseInt(env('IDLE_TIMEOUT', '0'));
const listen_pid = parseInt(env('LISTEN_PID', '0'));
const listen_fds = parseInt(env('LISTEN_FDS', '0'));
// https://www.freedesktop.org/software/systemd/man/latest/sd_listen_fds.html
const SD_LISTEN_FDS_START = 3;
if (listen_pid !== 0 && listen_pid !== process.pid) {
throw new Error(`received LISTEN_PID ${listen_pid} but current process id is ${process.pid}`);
}
if (listen_fds > 1) {
throw new Error(
`only one socket is allowed for socket activation, but LISTEN_FDS was set to ${listen_fds}`
);
}
const socket_activation = listen_pid === process.pid && listen_fds === 1;
let requests = 0;
/** @type {NodeJS.Timeout | void} */
let shutdown_timeout_id;
/** @type {NodeJS.Timeout | void} */
let idle_timeout_id;
// Initialize the HTTP server here so that we can set properties before starting to listen.
// Otherwise, polka delays creating the server until listen() is called. Settings these
// properties after the server has started listening could lead to race conditions.
const httpServer = http.createServer();
const keep_alive_timeout = timeout_env('KEEP_ALIVE_TIMEOUT');
if (keep_alive_timeout !== undefined) {
// Convert the keep-alive timeout from seconds to milliseconds (the unit Node.js expects).
httpServer.keepAliveTimeout = keep_alive_timeout * 1000;
}
const headers_timeout = timeout_env('HEADERS_TIMEOUT');
if (headers_timeout !== undefined) {
// Convert the headers timeout from seconds to milliseconds (the unit Node.js expects).
httpServer.headersTimeout = headers_timeout * 1000;
}
const server = polka({ server: httpServer }).use(handler);
if (socket_activation) {
server.listen({ fd: SD_LISTEN_FDS_START }, () => {
console.log(`Listening on file descriptor ${SD_LISTEN_FDS_START}`);
});
} else {
server.listen({ path, host, port }, () => {
console.log(`Listening on ${path || `http://${host}:${port}`}`);
});
}
/** @param {'SIGINT' | 'SIGTERM' | 'IDLE'} reason */
function graceful_shutdown(reason) {
if (shutdown_timeout_id) return;
// If a connection was opened with a keep-alive header close() will wait for the connection to
// time out rather than close it even if it is not handling any requests, so call this first
httpServer.closeIdleConnections();
httpServer.close((error) => {
// occurs if the server is already closed
if (error) return;
if (shutdown_timeout_id) {
clearTimeout(shutdown_timeout_id);
}
if (idle_timeout_id) {
clearTimeout(idle_timeout_id);
}
// @ts-expect-error custom events cannot be typed
process.emit('sveltekit:shutdown', reason);
});
shutdown_timeout_id = setTimeout(() => httpServer.closeAllConnections(), shutdown_timeout * 1000);
}
httpServer.on(
'request',
/** @param {import('node:http').IncomingMessage} req */
(req) => {
requests++;
if (socket_activation && idle_timeout_id) {
idle_timeout_id = clearTimeout(idle_timeout_id);
}
req.on('close', () => {
requests--;
if (shutdown_timeout_id) {
// close connections as soon as they become idle, so they don't accept new requests
httpServer.closeIdleConnections();
}
if (requests === 0 && socket_activation && idle_timeout) {
idle_timeout_id = setTimeout(() => graceful_shutdown('IDLE'), idle_timeout * 1000);
}
});
}
);
process.on('SIGTERM', graceful_shutdown);
process.on('SIGINT', graceful_shutdown);
export { host, path, port, server };
+21
View File
@@ -0,0 +1,21 @@
const load = async ({ locals }) => {
return {
user: locals.user
};
};
var _layout_server_ts = /*#__PURE__*/Object.freeze({
__proto__: null,
load: load
});
const index = 0;
let component_cache;
const component = async () => component_cache ??= (await import('./_layout.svelte-C9R7TwNZ.js')).default;
const server_id = "src/routes/+layout.server.ts";
const imports = ["_app/immutable/nodes/0.DsCqkoz9.js","_app/immutable/chunks/Bzak7iHL.js","_app/immutable/chunks/CPmvlhtF.js","_app/immutable/chunks/nEbfNkJh.js","_app/immutable/chunks/zcqfpVBB.js","_app/immutable/chunks/Xjya7ye4.js","_app/immutable/chunks/BpNSSBPP.js","_app/immutable/chunks/CoAkxMBS.js","_app/immutable/chunks/BX9MO-1l.js","_app/immutable/chunks/CvA4ASMA.js","_app/immutable/chunks/ggIfGDPQ.js"];
const stylesheets = ["_app/immutable/assets/0.Ci1WSy1v.css"];
const fonts = [];
export { component, fonts, imports, index, _layout_server_ts as server, server_id, stylesheets };
//# sourceMappingURL=0-DANNRPIf.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"0-DANNRPIf.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/_layout.server.ts.js","../../../.svelte-kit/adapter-node/nodes/0.js"],"sourcesContent":["const load = async ({ locals }) => {\n return {\n user: locals.user\n };\n};\nexport {\n load\n};\n","import * as server from '../entries/pages/_layout.server.ts.js';\n\nexport const index = 0;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/_layout.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/+layout.server.ts\";\nexport const imports = [\"_app/immutable/nodes/0.DsCqkoz9.js\",\"_app/immutable/chunks/Bzak7iHL.js\",\"_app/immutable/chunks/CPmvlhtF.js\",\"_app/immutable/chunks/nEbfNkJh.js\",\"_app/immutable/chunks/zcqfpVBB.js\",\"_app/immutable/chunks/Xjya7ye4.js\",\"_app/immutable/chunks/BpNSSBPP.js\",\"_app/immutable/chunks/CoAkxMBS.js\",\"_app/immutable/chunks/BX9MO-1l.js\",\"_app/immutable/chunks/CvA4ASMA.js\",\"_app/immutable/chunks/ggIfGDPQ.js\"];\nexport const stylesheets = [\"_app/immutable/assets/0.Ci1WSy1v.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":"AAAA,MAAM,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,KAAK;AACnC,EAAE,OAAO;AACT,IAAI,IAAI,EAAE,MAAM,CAAC;AACjB,GAAG;AACH,CAAC;;;;;;;ACFW,MAAC,KAAK,GAAG;AACrB,IAAI,eAAe;AACP,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,8BAAoC,CAAC,EAAE;AAElG,MAAC,SAAS,GAAG;AACb,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AACxZ,MAAC,WAAW,GAAG,CAAC,sCAAsC;AACtD,MAAC,KAAK,GAAG;;;;"}
+9
View File
@@ -0,0 +1,9 @@
const index = 1;
let component_cache;
const component = async () => component_cache ??= (await import('./error.svelte-C7iligE9.js')).default;
const imports = ["_app/immutable/nodes/1.CwhQAky3.js","_app/immutable/chunks/Bzak7iHL.js","_app/immutable/chunks/ggIfGDPQ.js","_app/immutable/chunks/nEbfNkJh.js","_app/immutable/chunks/CPmvlhtF.js","_app/immutable/chunks/BX9MO-1l.js"];
const stylesheets = [];
const fonts = [];
export { component, fonts, imports, index, stylesheets };
//# sourceMappingURL=1-BIdyPzep.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"1-BIdyPzep.js","sources":["../../../.svelte-kit/adapter-node/nodes/1.js"],"sourcesContent":["\n\nexport const index = 1;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/fallbacks/error.svelte.js')).default;\nexport const imports = [\"_app/immutable/nodes/1.CwhQAky3.js\",\"_app/immutable/chunks/Bzak7iHL.js\",\"_app/immutable/chunks/ggIfGDPQ.js\",\"_app/immutable/chunks/nEbfNkJh.js\",\"_app/immutable/chunks/CPmvlhtF.js\",\"_app/immutable/chunks/BX9MO-1l.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACrB,IAAI,eAAe;AACP,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAAsC,CAAC,EAAE;AACpG,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AACpO,MAAC,WAAW,GAAG;AACf,MAAC,KAAK,GAAG;;;;"}
+9
View File
@@ -0,0 +1,9 @@
const index = 2;
let component_cache;
const component = async () => component_cache ??= (await import('./_page.svelte-fWQjRNRW.js')).default;
const imports = ["_app/immutable/nodes/2.B4w5AQ-r.js","_app/immutable/chunks/D4nn9Y_6.js","_app/immutable/chunks/Bzak7iHL.js","_app/immutable/chunks/nEbfNkJh.js","_app/immutable/chunks/zcqfpVBB.js","_app/immutable/chunks/BpNSSBPP.js","_app/immutable/chunks/uf3Is7Es.js","_app/immutable/chunks/Xjya7ye4.js","_app/immutable/chunks/DTd9pe6t.js"];
const stylesheets = [];
const fonts = [];
export { component, fonts, imports, index, stylesheets };
//# sourceMappingURL=2-BM-ldjTW.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"2-BM-ldjTW.js","sources":["../../../.svelte-kit/adapter-node/nodes/2.js"],"sourcesContent":["\n\nexport const index = 2;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/_page.svelte.js')).default;\nexport const imports = [\"_app/immutable/nodes/2.B4w5AQ-r.js\",\"_app/immutable/chunks/D4nn9Y_6.js\",\"_app/immutable/chunks/Bzak7iHL.js\",\"_app/immutable/chunks/nEbfNkJh.js\",\"_app/immutable/chunks/zcqfpVBB.js\",\"_app/immutable/chunks/BpNSSBPP.js\",\"_app/immutable/chunks/uf3Is7Es.js\",\"_app/immutable/chunks/Xjya7ye4.js\",\"_app/immutable/chunks/DTd9pe6t.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACrB,IAAI,eAAe;AACP,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAAkC,CAAC,EAAE;AAChG,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AAChV,MAAC,WAAW,GAAG;AACf,MAAC,KAAK,GAAG;;;;"}
+24
View File
@@ -0,0 +1,24 @@
import { r as redirect } from './index-wpIsICWW.js';
const actions = {
default: async ({ locals }) => {
locals.pb.authStore.clear();
throw redirect(303, "/login");
}
};
var _page_server_ts = /*#__PURE__*/Object.freeze({
__proto__: null,
actions: actions
});
const index = 3;
let component_cache;
const component = async () => component_cache ??= (await import('./_page.svelte-CzjPx6eH.js')).default;
const server_id = "src/routes/logout/+page.server.ts";
const imports = ["_app/immutable/nodes/3.sctq0uPd.js","_app/immutable/chunks/Bzak7iHL.js","_app/immutable/chunks/nEbfNkJh.js","_app/immutable/chunks/CoAkxMBS.js","_app/immutable/chunks/BX9MO-1l.js","_app/immutable/chunks/CPmvlhtF.js","_app/immutable/chunks/Xjya7ye4.js","_app/immutable/chunks/zcqfpVBB.js","_app/immutable/chunks/uf3Is7Es.js","_app/immutable/chunks/DTd9pe6t.js"];
const stylesheets = [];
const fonts = [];
export { component, fonts, imports, index, _page_server_ts as server, server_id, stylesheets };
//# sourceMappingURL=3-CFvpokQ_.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"3-CFvpokQ_.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/logout/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/3.js"],"sourcesContent":["import { redirect } from \"@sveltejs/kit\";\nconst actions = {\n default: async ({ locals }) => {\n locals.pb.authStore.clear();\n throw redirect(303, \"/login\");\n }\n};\nexport {\n actions\n};\n","import * as server from '../entries/pages/logout/_page.server.ts.js';\n\nexport const index = 3;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/logout/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/logout/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/3.sctq0uPd.js\",\"_app/immutable/chunks/Bzak7iHL.js\",\"_app/immutable/chunks/nEbfNkJh.js\",\"_app/immutable/chunks/CoAkxMBS.js\",\"_app/immutable/chunks/BX9MO-1l.js\",\"_app/immutable/chunks/CPmvlhtF.js\",\"_app/immutable/chunks/Xjya7ye4.js\",\"_app/immutable/chunks/zcqfpVBB.js\",\"_app/immutable/chunks/uf3Is7Es.js\",\"_app/immutable/chunks/DTd9pe6t.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":";;AACA,MAAM,OAAO,GAAG;AAChB,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AACjC,IAAI,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE;AAC/B,IAAI,MAAM,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;AACjC,EAAE;AACF,CAAC;;;;;;;ACJW,MAAC,KAAK,GAAG;AACrB,IAAI,eAAe;AACP,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAAyC,CAAC,EAAE;AAEvG,MAAC,SAAS,GAAG;AACb,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AACpX,MAAC,WAAW,GAAG;AACf,MAAC,KAAK,GAAG;;;;"}
+52
View File
@@ -0,0 +1,52 @@
import { r as redirect } from './index-wpIsICWW.js';
const load = async ({ url, locals }) => {
if (locals.user) {
throw redirect(303, url.searchParams.get("redirectTo") ?? "/");
}
return {
redirectTo: url.searchParams.get("redirectTo") ?? "",
error: null
};
};
const actions = {
default: async ({ request, locals, url }) => {
const formData = await request.formData();
const email = String(formData.get("email") ?? "").trim();
const password = String(formData.get("password") ?? "");
const redirectTo = String(formData.get("redirectTo") ?? "").trim() || "/";
if (!email || !password) {
return {
redirectTo,
error: "Email and password are required."
};
}
try {
await locals.pb.collection("users").authWithPassword(email, password);
} catch (err) {
const message = err && typeof err === "object" && "message" in err ? String(err.message) : "Invalid email or password.";
return {
redirectTo,
error: message
};
}
throw redirect(303, redirectTo);
}
};
var _page_server_ts = /*#__PURE__*/Object.freeze({
__proto__: null,
actions: actions,
load: load
});
const index = 4;
let component_cache;
const component = async () => component_cache ??= (await import('./_page.svelte-CYuAo59m.js')).default;
const server_id = "src/routes/login/+page.server.ts";
const imports = ["_app/immutable/nodes/4.BG9kRLiv.js","_app/immutable/chunks/Bzak7iHL.js","_app/immutable/chunks/nEbfNkJh.js","_app/immutable/chunks/CPmvlhtF.js","_app/immutable/chunks/zcqfpVBB.js","_app/immutable/chunks/BpNSSBPP.js","_app/immutable/chunks/CoAkxMBS.js","_app/immutable/chunks/BX9MO-1l.js","_app/immutable/chunks/Xjya7ye4.js","_app/immutable/chunks/uf3Is7Es.js","_app/immutable/chunks/DTd9pe6t.js","_app/immutable/chunks/CvA4ASMA.js"];
const stylesheets = [];
const fonts = [];
export { component, fonts, imports, index, _page_server_ts as server, server_id, stylesheets };
//# sourceMappingURL=4-ano5Glp5.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"4-ano5Glp5.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/login/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/4.js"],"sourcesContent":["import { redirect } from \"@sveltejs/kit\";\nconst load = async ({ url, locals }) => {\n if (locals.user) {\n throw redirect(303, url.searchParams.get(\"redirectTo\") ?? \"/\");\n }\n return {\n redirectTo: url.searchParams.get(\"redirectTo\") ?? \"\",\n error: null\n };\n};\nconst actions = {\n default: async ({ request, locals, url }) => {\n const formData = await request.formData();\n const email = String(formData.get(\"email\") ?? \"\").trim();\n const password = String(formData.get(\"password\") ?? \"\");\n const redirectTo = String(formData.get(\"redirectTo\") ?? \"\").trim() || \"/\";\n if (!email || !password) {\n return {\n redirectTo,\n error: \"Email and password are required.\"\n };\n }\n try {\n await locals.pb.collection(\"users\").authWithPassword(email, password);\n } catch (err) {\n const message = err && typeof err === \"object\" && \"message\" in err ? String(err.message) : \"Invalid email or password.\";\n return {\n redirectTo,\n error: message\n };\n }\n throw redirect(303, redirectTo);\n }\n};\nexport {\n actions,\n load\n};\n","import * as server from '../entries/pages/login/_page.server.ts.js';\n\nexport const index = 4;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/login/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/login/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/4.BG9kRLiv.js\",\"_app/immutable/chunks/Bzak7iHL.js\",\"_app/immutable/chunks/nEbfNkJh.js\",\"_app/immutable/chunks/CPmvlhtF.js\",\"_app/immutable/chunks/zcqfpVBB.js\",\"_app/immutable/chunks/BpNSSBPP.js\",\"_app/immutable/chunks/CoAkxMBS.js\",\"_app/immutable/chunks/BX9MO-1l.js\",\"_app/immutable/chunks/Xjya7ye4.js\",\"_app/immutable/chunks/uf3Is7Es.js\",\"_app/immutable/chunks/DTd9pe6t.js\",\"_app/immutable/chunks/CvA4ASMA.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":";;AACA,MAAM,IAAI,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK;AACxC,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE;AACnB,IAAI,MAAM,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC;AAClE,EAAE;AACF,EAAE,OAAO;AACT,IAAI,UAAU,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE;AACxD,IAAI,KAAK,EAAE;AACX,GAAG;AACH,CAAC;AACD,MAAM,OAAO,GAAG;AAChB,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK;AAC/C,IAAI,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE;AAC7C,IAAI,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;AAC5D,IAAI,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;AAC3D,IAAI,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,GAAG;AAC7E,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,EAAE;AAC7B,MAAM,OAAO;AACb,QAAQ,UAAU;AAClB,QAAQ,KAAK,EAAE;AACf,OAAO;AACP,IAAI;AACJ,IAAI,IAAI;AACR,MAAM,MAAM,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC;AAC3E,IAAI,CAAC,CAAC,OAAO,GAAG,EAAE;AAClB,MAAM,MAAM,OAAO,GAAG,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,SAAS,IAAI,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,4BAA4B;AAC7H,MAAM,OAAO;AACb,QAAQ,UAAU;AAClB,QAAQ,KAAK,EAAE;AACf,OAAO;AACP,IAAI;AACJ,IAAI,MAAM,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;AACnC,EAAE;AACF,CAAC;;;;;;;;AC/BW,MAAC,KAAK,GAAG;AACrB,IAAI,eAAe;AACP,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAAwC,CAAC,EAAE;AAEtG,MAAC,SAAS,GAAG;AACb,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AAC5b,MAAC,WAAW,GAAG;AACf,MAAC,KAAK,GAAG;;;;"}
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
@@ -0,0 +1,254 @@
import { m as attributes, t as clsx, c as bind_props, r as attr, o as escape_html } from './index2-DHYCG7Ly.js';
import './root-BEb1kut4.js';
import './state.svelte-CsO7NG8X.js';
import { B as Button } from './button-DEEgteap.js';
import { c as cn } from './utils2-B05Dmz_H.js';
import { L as Label } from './label-CsPa3Fds.js';
import 'clsx';
import 'tailwind-merge';
function Input($$renderer, $$props) {
$$renderer.component(($$renderer2) => {
let {
ref = null,
value = void 0,
type,
files = void 0,
class: className,
"data-slot": dataSlot = "input",
$$slots,
$$events,
...restProps
} = $$props;
if (type === "file") {
$$renderer2.push("<!--[-->");
$$renderer2.push(`<input${attributes(
{
"data-slot": dataSlot,
class: clsx(cn("selection:bg-primary dark:bg-input/30 selection:text-primary-foreground border-input ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 pt-1.5 text-sm font-medium shadow-xs transition-[color,box-shadow] outline-none disabled:cursor-not-allowed disabled:opacity-50", "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]", "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", className)),
type: "file",
...restProps
},
void 0,
void 0,
void 0,
4
)}/>`);
} else {
$$renderer2.push("<!--[!-->");
$$renderer2.push(`<input${attributes(
{
"data-slot": dataSlot,
class: clsx(cn("border-input bg-background selection:bg-primary dark:bg-input/30 selection:text-primary-foreground ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-md border px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]", "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", className)),
type,
value,
...restProps
},
void 0,
void 0,
void 0,
4
)}/>`);
}
$$renderer2.push(`<!--]-->`);
bind_props($$props, { ref, value, files });
});
}
function Card($$renderer, $$props) {
$$renderer.component(($$renderer2) => {
let {
ref = null,
class: className,
children,
$$slots,
$$events,
...restProps
} = $$props;
$$renderer2.push(`<div${attributes({
"data-slot": "card",
class: clsx(cn("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm", className)),
...restProps
})}>`);
children?.($$renderer2);
$$renderer2.push(`<!----></div>`);
bind_props($$props, { ref });
});
}
function Card_content($$renderer, $$props) {
$$renderer.component(($$renderer2) => {
let {
ref = null,
class: className,
children,
$$slots,
$$events,
...restProps
} = $$props;
$$renderer2.push(`<div${attributes({
"data-slot": "card-content",
class: clsx(cn("px-6", className)),
...restProps
})}>`);
children?.($$renderer2);
$$renderer2.push(`<!----></div>`);
bind_props($$props, { ref });
});
}
function Card_description($$renderer, $$props) {
$$renderer.component(($$renderer2) => {
let {
ref = null,
class: className,
children,
$$slots,
$$events,
...restProps
} = $$props;
$$renderer2.push(`<p${attributes({
"data-slot": "card-description",
class: clsx(cn("text-muted-foreground text-sm", className)),
...restProps
})}>`);
children?.($$renderer2);
$$renderer2.push(`<!----></p>`);
bind_props($$props, { ref });
});
}
function Card_header($$renderer, $$props) {
$$renderer.component(($$renderer2) => {
let {
ref = null,
class: className,
children,
$$slots,
$$events,
...restProps
} = $$props;
$$renderer2.push(`<div${attributes({
"data-slot": "card-header",
class: clsx(cn("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6", className)),
...restProps
})}>`);
children?.($$renderer2);
$$renderer2.push(`<!----></div>`);
bind_props($$props, { ref });
});
}
function Card_title($$renderer, $$props) {
$$renderer.component(($$renderer2) => {
let {
ref = null,
class: className,
children,
$$slots,
$$events,
...restProps
} = $$props;
$$renderer2.push(`<div${attributes({
"data-slot": "card-title",
class: clsx(cn("leading-none font-semibold", className)),
...restProps
})}>`);
children?.($$renderer2);
$$renderer2.push(`<!----></div>`);
bind_props($$props, { ref });
});
}
function _page($$renderer, $$props) {
$$renderer.component(($$renderer2) => {
let { data, formAction } = $$props;
const redirectTo = data.form?.redirectTo ?? data.redirectTo ?? "";
const error = data.form?.error;
$$renderer2.push(`<div class="app-shell max-w-sm mx-auto w-full">`);
$$renderer2.push("<!---->");
Card?.($$renderer2, {
children: ($$renderer3) => {
$$renderer3.push("<!---->");
Card_header?.($$renderer3, {
children: ($$renderer4) => {
$$renderer4.push("<!---->");
Card_title?.($$renderer4, {
children: ($$renderer5) => {
$$renderer5.push(`<!---->Sign in`);
},
$$slots: { default: true }
});
$$renderer4.push(`<!----> `);
$$renderer4.push("<!---->");
Card_description?.($$renderer4, {
children: ($$renderer5) => {
$$renderer5.push(`<!---->Enter your email and password.`);
},
$$slots: { default: true }
});
$$renderer4.push(`<!---->`);
},
$$slots: { default: true }
});
$$renderer3.push(`<!----> `);
$$renderer3.push("<!---->");
Card_content?.($$renderer3, {
children: ($$renderer4) => {
$$renderer4.push(`<form method="POST"${attr("action", formAction)} class="flex flex-col gap-4"><input type="hidden" name="redirectTo"${attr("value", redirectTo)}/> <div class="grid gap-2">`);
Label($$renderer4, {
for: "email",
children: ($$renderer5) => {
$$renderer5.push(`<!---->Email`);
},
$$slots: { default: true }
});
$$renderer4.push(`<!----> `);
Input($$renderer4, {
id: "email",
name: "email",
type: "email",
placeholder: "you@example.com",
required: true,
autocomplete: "email"
});
$$renderer4.push(`<!----></div> <div class="grid gap-2">`);
Label($$renderer4, {
for: "password",
children: ($$renderer5) => {
$$renderer5.push(`<!---->Password`);
},
$$slots: { default: true }
});
$$renderer4.push(`<!----> `);
Input($$renderer4, {
id: "password",
name: "password",
type: "password",
required: true,
autocomplete: "current-password"
});
$$renderer4.push(`<!----></div> `);
if (error) {
$$renderer4.push("<!--[-->");
$$renderer4.push(`<p class="text-sm text-destructive">${escape_html(error)}</p>`);
} else {
$$renderer4.push("<!--[!-->");
}
$$renderer4.push(`<!--]--> `);
Button($$renderer4, {
type: "submit",
class: "w-full",
children: ($$renderer5) => {
$$renderer5.push(`<!---->Sign in`);
},
$$slots: { default: true }
});
$$renderer4.push(`<!----></form>`);
},
$$slots: { default: true }
});
$$renderer3.push(`<!---->`);
},
$$slots: { default: true }
});
$$renderer2.push(`<!----></div>`);
});
}
export { _page as default };
//# sourceMappingURL=_page.svelte-CYuAo59m.js.map
File diff suppressed because one or more lines are too long
@@ -0,0 +1,23 @@
import { r as attr } from './index2-DHYCG7Ly.js';
import './root-BEb1kut4.js';
import './state.svelte-CsO7NG8X.js';
import { B as Button } from './button-DEEgteap.js';
import 'clsx';
import './utils2-B05Dmz_H.js';
import 'tailwind-merge';
function _page($$renderer, $$props) {
let { formAction } = $$props;
$$renderer.push(`<div class="app-shell flex items-center justify-center min-h-[200px]"><form method="POST"${attr("action", formAction)}>`);
Button($$renderer, {
type: "submit",
children: ($$renderer2) => {
$$renderer2.push(`<!---->Log out`);
},
$$slots: { default: true }
});
$$renderer.push(`<!----></form></div>`);
}
export { _page as default };
//# sourceMappingURL=_page.svelte-CzjPx6eH.js.map
@@ -0,0 +1 @@
{"version":3,"file":"_page.svelte-CzjPx6eH.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/logout/_page.svelte.js"],"sourcesContent":["import { i as attr } from \"../../../chunks/index2.js\";\nimport \"@sveltejs/kit/internal\";\nimport \"../../../chunks/exports.js\";\nimport \"../../../chunks/utils.js\";\nimport \"@sveltejs/kit/internal/server\";\nimport \"../../../chunks/root.js\";\nimport \"../../../chunks/state.svelte.js\";\nimport { B as Button } from \"../../../chunks/button.js\";\nfunction _page($$renderer, $$props) {\n let { formAction } = $$props;\n $$renderer.push(`<div class=\"app-shell flex items-center justify-center min-h-[200px]\"><form method=\"POST\"${attr(\"action\", formAction)}>`);\n Button($$renderer, {\n type: \"submit\",\n children: ($$renderer2) => {\n $$renderer2.push(`<!---->Log out`);\n },\n $$slots: { default: true }\n });\n $$renderer.push(`<!----></form></div>`);\n}\nexport {\n _page as default\n};\n"],"names":[],"mappings":";;;;;;;;AAQA,SAAS,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE;AACpC,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO;AAC9B,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,yFAAyF,EAAE,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5I,EAAE,MAAM,CAAC,UAAU,EAAE;AACrB,IAAI,IAAI,EAAE,QAAQ;AAClB,IAAI,QAAQ,EAAE,CAAC,WAAW,KAAK;AAC/B,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC;AACxC,IAAI,CAAC;AACL,IAAI,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI;AAC5B,GAAG,CAAC;AACJ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC;AACzC;;;;"}
@@ -0,0 +1,52 @@
import 'clsx';
import { B as Button } from './button-DEEgteap.js';
import './index2-DHYCG7Ly.js';
import './utils2-B05Dmz_H.js';
import 'tailwind-merge';
function _page($$renderer, $$props) {
let { data } = $$props;
{
$$renderer.push("<!--[!-->");
$$renderer.push(`<main class="flex min-h-0 flex-1 flex-col items-center justify-center gap-6 p-6"><h1 class="text-2xl font-semibold">Base</h1> <div class="flex w-full max-w-xs flex-col gap-3"><a href="https://prism.ccllc.pro" class="block" target="_blank" rel="noopener noreferrer">`);
Button($$renderer, {
class: "h-12 w-full min-h-12",
children: ($$renderer2) => {
$$renderer2.push(`<!---->Prism`);
},
$$slots: { default: true }
});
$$renderer.push(`<!----></a> <a href="https://tasgrid.ccllc.pro" class="block" target="_blank" rel="noopener noreferrer">`);
Button($$renderer, {
class: "h-12 min-h-12 w-full",
variant: "outline",
children: ($$renderer2) => {
$$renderer2.push(`<!---->TasGrid`);
},
$$slots: { default: true }
});
$$renderer.push(`<!----></a> <a href="https://stackq.ccllc.pro" class="block" target="_blank" rel="noopener noreferrer">`);
Button($$renderer, {
class: "h-12 min-h-12 w-full",
variant: "outline",
children: ($$renderer2) => {
$$renderer2.push(`<!---->Stackq`);
},
$$slots: { default: true }
});
$$renderer.push(`<!----></a> <a href="https://hrm.ccllc.pro" class="block" target="_blank" rel="noopener noreferrer">`);
Button($$renderer, {
class: "h-12 min-h-12 w-full",
variant: "outline",
children: ($$renderer2) => {
$$renderer2.push(`<!---->HRM`);
},
$$slots: { default: true }
});
$$renderer.push(`<!----></a></div></main>`);
}
$$renderer.push(`<!--]-->`);
}
export { _page as default };
//# sourceMappingURL=_page.svelte-fWQjRNRW.js.map
@@ -0,0 +1 @@
{"version":3,"file":"_page.svelte-fWQjRNRW.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/_page.svelte.js"],"sourcesContent":["import \"clsx\";\nimport { B as Button } from \"../../chunks/button.js\";\nfunction _page($$renderer, $$props) {\n let { data } = $$props;\n {\n $$renderer.push(\"<!--[!-->\");\n $$renderer.push(`<main class=\"flex min-h-0 flex-1 flex-col items-center justify-center gap-6 p-6\"><h1 class=\"text-2xl font-semibold\">Base</h1> <div class=\"flex w-full max-w-xs flex-col gap-3\"><a href=\"https://prism.ccllc.pro\" class=\"block\" target=\"_blank\" rel=\"noopener noreferrer\">`);\n Button($$renderer, {\n class: \"h-12 w-full min-h-12\",\n children: ($$renderer2) => {\n $$renderer2.push(`<!---->Prism`);\n },\n $$slots: { default: true }\n });\n $$renderer.push(`<!----></a> <a href=\"https://tasgrid.ccllc.pro\" class=\"block\" target=\"_blank\" rel=\"noopener noreferrer\">`);\n Button($$renderer, {\n class: \"h-12 min-h-12 w-full\",\n variant: \"outline\",\n children: ($$renderer2) => {\n $$renderer2.push(`<!---->TasGrid`);\n },\n $$slots: { default: true }\n });\n $$renderer.push(`<!----></a> <a href=\"https://stackq.ccllc.pro\" class=\"block\" target=\"_blank\" rel=\"noopener noreferrer\">`);\n Button($$renderer, {\n class: \"h-12 min-h-12 w-full\",\n variant: \"outline\",\n children: ($$renderer2) => {\n $$renderer2.push(`<!---->Stackq`);\n },\n $$slots: { default: true }\n });\n $$renderer.push(`<!----></a> <a href=\"https://hrm.ccllc.pro\" class=\"block\" target=\"_blank\" rel=\"noopener noreferrer\">`);\n Button($$renderer, {\n class: \"h-12 min-h-12 w-full\",\n variant: \"outline\",\n children: ($$renderer2) => {\n $$renderer2.push(`<!---->HRM`);\n },\n $$slots: { default: true }\n });\n $$renderer.push(`<!----></a></div></main>`);\n }\n $$renderer.push(`<!--]-->`);\n}\nexport {\n _page as default\n};\n"],"names":[],"mappings":";;;;;;AAEA,SAAS,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE;AACpC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO;AACxB,EAAE;AACF,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAChC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,yQAAyQ,CAAC,CAAC;AAChS,IAAI,MAAM,CAAC,UAAU,EAAE;AACvB,MAAM,KAAK,EAAE,sBAAsB;AACnC,MAAM,QAAQ,EAAE,CAAC,WAAW,KAAK;AACjC,QAAQ,WAAW,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC;AACxC,MAAM,CAAC;AACP,MAAM,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI;AAC9B,KAAK,CAAC;AACN,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,wGAAwG,CAAC,CAAC;AAC/H,IAAI,MAAM,CAAC,UAAU,EAAE;AACvB,MAAM,KAAK,EAAE,sBAAsB;AACnC,MAAM,OAAO,EAAE,SAAS;AACxB,MAAM,QAAQ,EAAE,CAAC,WAAW,KAAK;AACjC,QAAQ,WAAW,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC;AAC1C,MAAM,CAAC;AACP,MAAM,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI;AAC9B,KAAK,CAAC;AACN,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,uGAAuG,CAAC,CAAC;AAC9H,IAAI,MAAM,CAAC,UAAU,EAAE;AACvB,MAAM,KAAK,EAAE,sBAAsB;AACnC,MAAM,OAAO,EAAE,SAAS;AACxB,MAAM,QAAQ,EAAE,CAAC,WAAW,KAAK;AACjC,QAAQ,WAAW,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC;AACzC,MAAM,CAAC;AACP,MAAM,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI;AAC9B,KAAK,CAAC;AACN,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,oGAAoG,CAAC,CAAC;AAC3H,IAAI,MAAM,CAAC,UAAU,EAAE;AACvB,MAAM,KAAK,EAAE,sBAAsB;AACnC,MAAM,OAAO,EAAE,SAAS;AACxB,MAAM,QAAQ,EAAE,CAAC,WAAW,KAAK;AACjC,QAAQ,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;AACtC,MAAM,CAAC;AACP,MAAM,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI;AAC9B,KAAK,CAAC;AACN,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,wBAAwB,CAAC,CAAC;AAC/C,EAAE;AACF,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC7B;;;;"}
@@ -0,0 +1,24 @@
import { j as json } from './index-wpIsICWW.js';
const POST = async ({ request, locals }) => {
if (!locals.user) {
return json({ error: "Unauthorized" }, { status: 401 });
}
let body;
try {
body = await request.json();
} catch {
return json({ error: "Invalid JSON" }, { status: 400 });
}
const darkmode = !!body.darkmode;
try {
await locals.pb.collection("users").update(locals.user.id, { darkmode });
await locals.pb.collection("users").authRefresh();
} catch (e) {
return json({ error: "Update failed" }, { status: 500 });
}
return json({ darkmode });
};
export { POST };
//# sourceMappingURL=_server.ts-DNQ95foO.js.map
@@ -0,0 +1 @@
{"version":3,"file":"_server.ts-DNQ95foO.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/darkmode/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nconst POST = async ({ request, locals }) => {\n if (!locals.user) {\n return json({ error: \"Unauthorized\" }, { status: 401 });\n }\n let body;\n try {\n body = await request.json();\n } catch {\n return json({ error: \"Invalid JSON\" }, { status: 400 });\n }\n const darkmode = !!body.darkmode;\n try {\n await locals.pb.collection(\"users\").update(locals.user.id, { darkmode });\n await locals.pb.collection(\"users\").authRefresh();\n } catch (e) {\n return json({ error: \"Update failed\" }, { status: 500 });\n }\n return json({ darkmode });\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;AACK,MAAC,IAAI,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AAC5C,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;AACpB,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AAC3D,EAAE;AACF,EAAE,IAAI,IAAI;AACV,EAAE,IAAI;AACN,IAAI,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE;AAC/B,EAAE,CAAC,CAAC,MAAM;AACV,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AAC3D,EAAE;AACF,EAAE,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ;AAClC,EAAE,IAAI;AACN,IAAI,MAAM,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;AAC5E,IAAI,MAAM,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE;AACrD,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE;AACd,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AAC5D,EAAE;AACF,EAAE,OAAO,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;AAC3B;;;;"}
+472
View File
@@ -0,0 +1,472 @@
import { m as attributes, t as clsx, c as bind_props } from './index2-DHYCG7Ly.js';
import { c as cn } from './utils2-B05Dmz_H.js';
import { twMerge, extendTailwindMerge } from 'tailwind-merge';
// src/utils.js
var SPACE_REGEX = /\s+/g;
var removeExtraSpaces = (str) => {
if (typeof str !== "string" || !str) return str;
return str.replace(SPACE_REGEX, " ").trim();
};
var cx = (...classnames) => {
const classList = [];
const buildClassString = (input) => {
if (!input && input !== 0 && input !== 0n) return;
if (Array.isArray(input)) {
for (let i = 0, len = input.length; i < len; i++) buildClassString(input[i]);
return;
}
const type = typeof input;
if (type === "string" || type === "number" || type === "bigint") {
if (type === "number" && input !== input) return;
classList.push(String(input));
} else if (type === "object") {
const keys = Object.keys(input);
for (let i = 0, len = keys.length; i < len; i++) {
const key = keys[i];
if (input[key]) classList.push(key);
}
}
};
for (let i = 0, len = classnames.length; i < len; i++) {
const c = classnames[i];
if (c !== null && c !== void 0) buildClassString(c);
}
return classList.length > 0 ? removeExtraSpaces(classList.join(" ")) : void 0;
};
var falsyToString = (value) => value === false ? "false" : value === true ? "true" : value === 0 ? "0" : value;
var isEmptyObject = (obj) => {
if (!obj || typeof obj !== "object") return true;
for (const _ in obj) return false;
return true;
};
var isEqual = (obj1, obj2) => {
if (obj1 === obj2) return true;
if (!obj1 || !obj2) return false;
const keys1 = Object.keys(obj1);
const keys2 = Object.keys(obj2);
if (keys1.length !== keys2.length) return false;
for (let i = 0; i < keys1.length; i++) {
const key = keys1[i];
if (!keys2.includes(key)) return false;
if (obj1[key] !== obj2[key]) return false;
}
return true;
};
var joinObjects = (obj1, obj2) => {
for (const key in obj2) {
if (Object.prototype.hasOwnProperty.call(obj2, key)) {
const val2 = obj2[key];
if (key in obj1) {
obj1[key] = cx(obj1[key], val2);
} else {
obj1[key] = val2;
}
}
}
return obj1;
};
var flat = (arr, target) => {
for (let i = 0; i < arr.length; i++) {
const el = arr[i];
if (Array.isArray(el)) flat(el, target);
else if (el) target.push(el);
}
};
var flatMergeArrays = (...arrays) => {
const result = [];
flat(arrays, result);
const filtered = [];
for (let i = 0; i < result.length; i++) {
if (result[i]) filtered.push(result[i]);
}
return filtered;
};
var mergeObjects = (obj1, obj2) => {
const result = {};
for (const key in obj1) {
const val1 = obj1[key];
if (key in obj2) {
const val2 = obj2[key];
if (Array.isArray(val1) || Array.isArray(val2)) {
result[key] = flatMergeArrays(val2, val1);
} else if (typeof val1 === "object" && typeof val2 === "object" && val1 && val2) {
result[key] = mergeObjects(val1, val2);
} else {
result[key] = val2 + " " + val1;
}
} else {
result[key] = val1;
}
}
for (const key in obj2) {
if (!(key in obj1)) {
result[key] = obj2[key];
}
}
return result;
};
// src/config.js
var defaultConfig = {
twMerge: true,
twMergeConfig: {}
};
// src/state.js
function createState() {
let cachedTwMerge = null;
let cachedTwMergeConfig = {};
let didTwMergeConfigChange = false;
return {
get cachedTwMerge() {
return cachedTwMerge;
},
set cachedTwMerge(value) {
cachedTwMerge = value;
},
get cachedTwMergeConfig() {
return cachedTwMergeConfig;
},
set cachedTwMergeConfig(value) {
cachedTwMergeConfig = value;
},
get didTwMergeConfigChange() {
return didTwMergeConfigChange;
},
set didTwMergeConfigChange(value) {
didTwMergeConfigChange = value;
},
reset() {
cachedTwMerge = null;
cachedTwMergeConfig = {};
didTwMergeConfigChange = false;
}
};
}
var state = createState();
// src/core.js
var getTailwindVariants = (cn) => {
const tv = (options, configProp) => {
const {
extend = null,
slots: slotProps = {},
variants: variantsProps = {},
compoundVariants: compoundVariantsProps = [],
compoundSlots = [],
defaultVariants: defaultVariantsProps = {}
} = options;
const config = { ...defaultConfig, ...configProp };
const base = extend?.base ? cx(extend.base, options?.base) : options?.base;
const variants = extend?.variants && !isEmptyObject(extend.variants) ? mergeObjects(variantsProps, extend.variants) : variantsProps;
const defaultVariants = extend?.defaultVariants && !isEmptyObject(extend.defaultVariants) ? { ...extend.defaultVariants, ...defaultVariantsProps } : defaultVariantsProps;
if (!isEmptyObject(config.twMergeConfig) && !isEqual(config.twMergeConfig, state.cachedTwMergeConfig)) {
state.didTwMergeConfigChange = true;
state.cachedTwMergeConfig = config.twMergeConfig;
}
const isExtendedSlotsEmpty = isEmptyObject(extend?.slots);
const componentSlots = !isEmptyObject(slotProps) ? {
// add "base" to the slots object
base: cx(options?.base, isExtendedSlotsEmpty && extend?.base),
...slotProps
} : {};
const slots = isExtendedSlotsEmpty ? componentSlots : joinObjects(
{ ...extend?.slots },
isEmptyObject(componentSlots) ? { base: options?.base } : componentSlots
);
const compoundVariants = isEmptyObject(extend?.compoundVariants) ? compoundVariantsProps : flatMergeArrays(extend?.compoundVariants, compoundVariantsProps);
const component = (props) => {
if (isEmptyObject(variants) && isEmptyObject(slotProps) && isExtendedSlotsEmpty) {
return cn(base, props?.class, props?.className)(config);
}
if (compoundVariants && !Array.isArray(compoundVariants)) {
throw new TypeError(
`The "compoundVariants" prop must be an array. Received: ${typeof compoundVariants}`
);
}
if (compoundSlots && !Array.isArray(compoundSlots)) {
throw new TypeError(
`The "compoundSlots" prop must be an array. Received: ${typeof compoundSlots}`
);
}
const getVariantValue = (variant, vrs = variants, _slotKey = null, slotProps2 = null) => {
const variantObj = vrs[variant];
if (!variantObj || isEmptyObject(variantObj)) {
return null;
}
const variantProp = slotProps2?.[variant] ?? props?.[variant];
if (variantProp === null) return null;
const variantKey = falsyToString(variantProp);
if (typeof variantKey === "object") {
return null;
}
const defaultVariantProp = defaultVariants?.[variant];
const key = variantKey != null ? variantKey : falsyToString(defaultVariantProp);
const value = variantObj[key || "false"];
return value;
};
const getVariantClassNames = () => {
if (!variants) return null;
const keys = Object.keys(variants);
const result = [];
for (let i = 0; i < keys.length; i++) {
const value = getVariantValue(keys[i], variants);
if (value) result.push(value);
}
return result;
};
const getVariantClassNamesBySlotKey = (slotKey, slotProps2) => {
if (!variants || typeof variants !== "object") return null;
const result = [];
for (const variant in variants) {
const variantValue = getVariantValue(variant, variants, slotKey, slotProps2);
const value = slotKey === "base" && typeof variantValue === "string" ? variantValue : variantValue && variantValue[slotKey];
if (value) result.push(value);
}
return result;
};
const propsWithoutUndefined = {};
for (const prop in props) {
const value = props[prop];
if (value !== void 0) propsWithoutUndefined[prop] = value;
}
const getCompleteProps = (key, slotProps2) => {
const initialProp = typeof props?.[key] === "object" ? {
[key]: props[key]?.initial
} : {};
return {
...defaultVariants,
...propsWithoutUndefined,
...initialProp,
...slotProps2
};
};
const getCompoundVariantsValue = (cv = [], slotProps2) => {
const result = [];
const cvLength = cv.length;
for (let i = 0; i < cvLength; i++) {
const { class: tvClass, className: tvClassName, ...compoundVariantOptions } = cv[i];
let isValid = true;
const completeProps = getCompleteProps(null, slotProps2);
for (const key in compoundVariantOptions) {
const value = compoundVariantOptions[key];
const completePropsValue = completeProps[key];
if (Array.isArray(value)) {
if (!value.includes(completePropsValue)) {
isValid = false;
break;
}
} else {
if ((value == null || value === false) && (completePropsValue == null || completePropsValue === false))
continue;
if (completePropsValue !== value) {
isValid = false;
break;
}
}
}
if (isValid) {
if (tvClass) result.push(tvClass);
if (tvClassName) result.push(tvClassName);
}
}
return result;
};
const getCompoundVariantClassNamesBySlot = (slotProps2) => {
const compoundClassNames = getCompoundVariantsValue(compoundVariants, slotProps2);
if (!Array.isArray(compoundClassNames)) return compoundClassNames;
const result = {};
const cnFn = cn;
for (let i = 0; i < compoundClassNames.length; i++) {
const className = compoundClassNames[i];
if (typeof className === "string") {
result.base = cnFn(result.base, className)(config);
} else if (typeof className === "object") {
for (const slot in className) {
result[slot] = cnFn(result[slot], className[slot])(config);
}
}
}
return result;
};
const getCompoundSlotClassNameBySlot = (slotProps2) => {
if (compoundSlots.length < 1) return null;
const result = {};
const completeProps = getCompleteProps(null, slotProps2);
for (let i = 0; i < compoundSlots.length; i++) {
const {
slots: slots2 = [],
class: slotClass,
className: slotClassName,
...slotVariants
} = compoundSlots[i];
if (!isEmptyObject(slotVariants)) {
let isValid = true;
for (const key in slotVariants) {
const completePropsValue = completeProps[key];
const slotVariantValue = slotVariants[key];
if (completePropsValue === void 0 || (Array.isArray(slotVariantValue) ? !slotVariantValue.includes(completePropsValue) : slotVariantValue !== completePropsValue)) {
isValid = false;
break;
}
}
if (!isValid) continue;
}
for (let j = 0; j < slots2.length; j++) {
const slotName = slots2[j];
if (!result[slotName]) result[slotName] = [];
result[slotName].push([slotClass, slotClassName]);
}
}
return result;
};
if (!isEmptyObject(slotProps) || !isExtendedSlotsEmpty) {
const slotsFns = {};
if (typeof slots === "object" && !isEmptyObject(slots)) {
const cnFn = cn;
for (const slotKey in slots) {
slotsFns[slotKey] = (slotProps2) => {
const compoundVariantClasses = getCompoundVariantClassNamesBySlot(slotProps2);
const compoundSlotClasses = getCompoundSlotClassNameBySlot(slotProps2);
return cnFn(
slots[slotKey],
getVariantClassNamesBySlotKey(slotKey, slotProps2),
compoundVariantClasses ? compoundVariantClasses[slotKey] : void 0,
compoundSlotClasses ? compoundSlotClasses[slotKey] : void 0,
slotProps2?.class,
slotProps2?.className
)(config);
};
}
}
return slotsFns;
}
return cn(
base,
getVariantClassNames(),
getCompoundVariantsValue(compoundVariants),
props?.class,
props?.className
)(config);
};
const getVariantKeys = () => {
if (!variants || typeof variants !== "object") return;
return Object.keys(variants);
};
component.variantKeys = getVariantKeys();
component.extend = extend;
component.base = base;
component.slots = slots;
component.variants = variants;
component.defaultVariants = defaultVariants;
component.compoundSlots = compoundSlots;
component.compoundVariants = compoundVariants;
return component;
};
const createTV = (configProp) => {
return (options, config) => tv(options, config ? mergeObjects(configProp, config) : configProp);
};
return {
tv,
createTV
};
};
var createTwMerge = (cachedTwMergeConfig) => {
return isEmptyObject(cachedTwMergeConfig) ? twMerge : extendTailwindMerge({
...cachedTwMergeConfig,
extend: {
theme: cachedTwMergeConfig.theme,
classGroups: cachedTwMergeConfig.classGroups,
conflictingClassGroupModifiers: cachedTwMergeConfig.conflictingClassGroupModifiers,
conflictingClassGroups: cachedTwMergeConfig.conflictingClassGroups,
...cachedTwMergeConfig.extend
}
});
};
var executeMerge = (classnames, config) => {
const base = cx(classnames);
if (!base || !(config?.twMerge ?? true)) return base;
if (!state.cachedTwMerge || state.didTwMergeConfigChange) {
state.didTwMergeConfigChange = false;
state.cachedTwMerge = createTwMerge(state.cachedTwMergeConfig);
}
return state.cachedTwMerge(base) || void 0;
};
var cnMerge = (...classnames) => {
return (config) => executeMerge(classnames, config);
};
// src/index.js
var { tv } = getTailwindVariants(cnMerge);
const buttonVariants = tv({
base: "focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
variants: {
variant: {
default: "bg-primary text-primary-foreground hover:bg-primary/90 shadow-xs",
destructive: "bg-destructive hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60 text-white shadow-xs",
outline: "bg-background hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 border shadow-xs",
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80 shadow-xs",
ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
link: "text-primary underline-offset-4 hover:underline"
},
size: {
default: "h-9 px-4 py-2 has-[>svg]:px-3",
sm: "h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",
lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
icon: "size-9",
"icon-sm": "size-8",
"icon-lg": "size-10"
}
},
defaultVariants: { variant: "default", size: "default" }
});
function Button($$renderer, $$props) {
$$renderer.component(($$renderer2) => {
let {
class: className,
variant = "default",
size = "default",
ref = null,
href = void 0,
type = "button",
disabled,
children,
$$slots,
$$events,
...restProps
} = $$props;
if (href) {
$$renderer2.push("<!--[-->");
$$renderer2.push(`<a${attributes({
"data-slot": "button",
class: clsx(cn(buttonVariants({ variant, size }), className)),
href: disabled ? void 0 : href,
"aria-disabled": disabled,
role: disabled ? "link" : void 0,
tabindex: disabled ? -1 : void 0,
...restProps
})}>`);
children?.($$renderer2);
$$renderer2.push(`<!----></a>`);
} else {
$$renderer2.push("<!--[!-->");
$$renderer2.push(`<button${attributes({
"data-slot": "button",
class: clsx(cn(buttonVariants({ variant, size }), className)),
type,
disabled,
...restProps
})}>`);
children?.($$renderer2);
$$renderer2.push(`<!----></button>`);
}
$$renderer2.push(`<!--]-->`);
bind_props($$props, { ref });
});
}
export { Button as B };
//# sourceMappingURL=button-DEEgteap.js.map
File diff suppressed because one or more lines are too long
@@ -0,0 +1,42 @@
import { o as escape_html, f as getContext } from './index2-DHYCG7Ly.js';
import 'clsx';
import './state.svelte-CsO7NG8X.js';
import './root-BEb1kut4.js';
import { w as writable } from './index-BGaaC8Kf.js';
function create_updated_store() {
const { set, subscribe } = writable(false);
{
return {
subscribe,
// eslint-disable-next-line @typescript-eslint/require-await
check: async () => false
};
}
}
const stores = {
updated: /* @__PURE__ */ create_updated_store()
};
({
check: stores.updated.check
});
function context() {
return getContext("__request__");
}
const page$1 = {
get error() {
return context().page.error;
},
get status() {
return context().page.status;
}
};
const page = page$1;
function Error$1($$renderer, $$props) {
$$renderer.component(($$renderer2) => {
$$renderer2.push(`<h1>${escape_html(page.status)}</h1> <p>${escape_html(page.error?.message)}</p>`);
});
}
export { Error$1 as default };
//# sourceMappingURL=error.svelte-C7iligE9.js.map
@@ -0,0 +1 @@
{"version":3,"file":"error.svelte-C7iligE9.js","sources":["../../../.svelte-kit/adapter-node/entries/fallbacks/error.svelte.js"],"sourcesContent":["import { g as getContext, f as escape_html } from \"../../chunks/index2.js\";\nimport \"clsx\";\nimport \"../../chunks/state.svelte.js\";\nimport \"@sveltejs/kit/internal\";\nimport \"../../chunks/exports.js\";\nimport \"../../chunks/utils.js\";\nimport { w as writable } from \"../../chunks/index.js\";\nimport \"@sveltejs/kit/internal/server\";\nimport \"../../chunks/root.js\";\nfunction create_updated_store() {\n const { set, subscribe } = writable(false);\n {\n return {\n subscribe,\n // eslint-disable-next-line @typescript-eslint/require-await\n check: async () => false\n };\n }\n}\nconst stores = {\n updated: /* @__PURE__ */ create_updated_store()\n};\n({\n check: stores.updated.check\n});\nfunction context() {\n return getContext(\"__request__\");\n}\nconst page$1 = {\n get error() {\n return context().page.error;\n },\n get status() {\n return context().page.status;\n }\n};\nconst page = page$1;\nfunction Error$1($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n $$renderer2.push(`<h1>${escape_html(page.status)}</h1> <p>${escape_html(page.error?.message)}</p>`);\n });\n}\nexport {\n Error$1 as default\n};\n"],"names":[],"mappings":";;;;;;AASA,SAAS,oBAAoB,GAAG;AAChC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC;AAC5C,EAAE;AACF,IAAI,OAAO;AACX,MAAM,SAAS;AACf;AACA,MAAM,KAAK,EAAE,YAAY;AACzB,KAAK;AACL,EAAE;AACF;AACA,MAAM,MAAM,GAAG;AACf,EAAE,OAAO,kBAAkB,oBAAoB;AAC/C,CAAC;AACD,CAAC;AACD,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;AACxB,CAAC;AACD,SAAS,OAAO,GAAG;AACnB,EAAE,OAAO,UAAU,CAAC,aAAa,CAAC;AAClC;AACA,MAAM,MAAM,GAAG;AACf,EAAE,IAAI,KAAK,GAAG;AACd,IAAI,OAAO,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK;AAC/B,EAAE,CAAC;AACH,EAAE,IAAI,MAAM,GAAG;AACf,IAAI,OAAO,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM;AAChC,EAAE;AACF,CAAC;AACD,MAAM,IAAI,GAAG,MAAM;AACnB,SAAS,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE;AACtC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,KAAK;AACxC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;AACvG,EAAE,CAAC,CAAC;AACJ;;;;"}
@@ -0,0 +1,42 @@
import { r as redirect } from './index-wpIsICWW.js';
import PocketBase from 'pocketbase';
const POCKETBASE_URL = process.env.VITE_POCKETBASE_URL ?? "https://pocketbase.ccllc.pro";
const LOGIN_PATH = "/login";
const LOGOUT_PATH = "/logout";
function isPublicRoute(pathname) {
return pathname === LOGIN_PATH || pathname.startsWith(LOGIN_PATH + "/") || pathname === LOGOUT_PATH;
}
const handle = async ({ event, resolve }) => {
event.locals.pb = new PocketBase(POCKETBASE_URL);
event.locals.pb.authStore.loadFromCookie(event.request.headers.get("cookie") ?? "");
try {
if (event.locals.pb.authStore.isValid) {
await event.locals.pb.collection("users").authRefresh();
}
} catch {
event.locals.pb.authStore.clear();
}
const record = event.locals.pb.authStore.record;
event.locals.user = record ? {
id: record.id,
email: record.email,
name: record.name,
avatar: record.avatar,
darkmode: !!record.darkmode
} : null;
if (!event.locals.user && !isPublicRoute(event.url.pathname)) {
const redirectTo = event.url.pathname + event.url.search;
const loginUrl = redirectTo && redirectTo !== "/" ? `${LOGIN_PATH}?redirectTo=${encodeURIComponent(redirectTo)}` : LOGIN_PATH;
throw redirect(303, loginUrl);
}
const response = await resolve(event);
response.headers.append(
"set-cookie",
event.locals.pb.authStore.exportToCookie({ httpOnly: false, sameSite: "Lax" })
);
return response;
};
export { handle };
//# sourceMappingURL=hooks.server-DlmQdTt1.js.map
@@ -0,0 +1 @@
{"version":3,"file":"hooks.server-DlmQdTt1.js","sources":["../../../.svelte-kit/adapter-node/entries/hooks.server.js"],"sourcesContent":["import { redirect } from \"@sveltejs/kit\";\nimport PocketBase from \"pocketbase\";\nconst POCKETBASE_URL = process.env.VITE_POCKETBASE_URL ?? \"https://pocketbase.ccllc.pro\";\nconst LOGIN_PATH = \"/login\";\nconst LOGOUT_PATH = \"/logout\";\nfunction isPublicRoute(pathname) {\n return pathname === LOGIN_PATH || pathname.startsWith(LOGIN_PATH + \"/\") || pathname === LOGOUT_PATH;\n}\nconst handle = async ({ event, resolve }) => {\n event.locals.pb = new PocketBase(POCKETBASE_URL);\n event.locals.pb.authStore.loadFromCookie(event.request.headers.get(\"cookie\") ?? \"\");\n try {\n if (event.locals.pb.authStore.isValid) {\n await event.locals.pb.collection(\"users\").authRefresh();\n }\n } catch {\n event.locals.pb.authStore.clear();\n }\n const record = event.locals.pb.authStore.record;\n event.locals.user = record ? {\n id: record.id,\n email: record.email,\n name: record.name,\n avatar: record.avatar,\n darkmode: !!record.darkmode\n } : null;\n if (!event.locals.user && !isPublicRoute(event.url.pathname)) {\n const redirectTo = event.url.pathname + event.url.search;\n const loginUrl = redirectTo && redirectTo !== \"/\" ? `${LOGIN_PATH}?redirectTo=${encodeURIComponent(redirectTo)}` : LOGIN_PATH;\n throw redirect(303, loginUrl);\n }\n const response = await resolve(event);\n response.headers.append(\n \"set-cookie\",\n event.locals.pb.authStore.exportToCookie({ httpOnly: false, sameSite: \"Lax\" })\n );\n return response;\n};\nexport {\n handle\n};\n"],"names":[],"mappings":";;;AAEA,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,8BAA8B;AACxF,MAAM,UAAU,GAAG,QAAQ;AAC3B,MAAM,WAAW,GAAG,SAAS;AAC7B,SAAS,aAAa,CAAC,QAAQ,EAAE;AACjC,EAAE,OAAO,QAAQ,KAAK,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,QAAQ,KAAK,WAAW;AACrG;AACK,MAAC,MAAM,GAAG,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK;AAC7C,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,UAAU,CAAC,cAAc,CAAC;AAClD,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;AACrF,EAAE,IAAI;AACN,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE;AAC3C,MAAM,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE;AAC7D,IAAI;AACJ,EAAE,CAAC,CAAC,MAAM;AACV,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE;AACrC,EAAE;AACF,EAAE,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM;AACjD,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,GAAG;AAC/B,IAAI,EAAE,EAAE,MAAM,CAAC,EAAE;AACjB,IAAI,KAAK,EAAE,MAAM,CAAC,KAAK;AACvB,IAAI,IAAI,EAAE,MAAM,CAAC,IAAI;AACrB,IAAI,MAAM,EAAE,MAAM,CAAC,MAAM;AACzB,IAAI,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;AACvB,GAAG,GAAG,IAAI;AACV,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;AAChE,IAAI,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM;AAC5D,IAAI,MAAM,QAAQ,GAAG,UAAU,IAAI,UAAU,KAAK,GAAG,GAAG,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU;AACjI,IAAI,MAAM,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;AACjC,EAAE;AACF,EAAE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC;AACvC,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM;AACzB,IAAI,YAAY;AAChB,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE;AACjF,GAAG;AACH,EAAE,OAAO,QAAQ;AACjB;;;;"}
+60
View File
@@ -0,0 +1,60 @@
import { q as noop } from './index2-DHYCG7Ly.js';
import { s as safe_not_equal } from './root-BEb1kut4.js';
import 'clsx';
const subscriber_queue = [];
function readable(value, start) {
return {
subscribe: writable(value, start).subscribe
};
}
function writable(value, start = noop) {
let stop = null;
const subscribers = /* @__PURE__ */ new Set();
function set(new_value) {
if (safe_not_equal(value, new_value)) {
value = new_value;
if (stop) {
const run_queue = !subscriber_queue.length;
for (const subscriber of subscribers) {
subscriber[1]();
subscriber_queue.push(subscriber, value);
}
if (run_queue) {
for (let i = 0; i < subscriber_queue.length; i += 2) {
subscriber_queue[i][0](subscriber_queue[i + 1]);
}
subscriber_queue.length = 0;
}
}
}
}
function update(fn) {
set(fn(
/** @type {T} */
value
));
}
function subscribe(run, invalidate = noop) {
const subscriber = [run, invalidate];
subscribers.add(subscriber);
if (subscribers.size === 1) {
stop = start(set, update) || noop;
}
run(
/** @type {T} */
value
);
return () => {
subscribers.delete(subscriber);
if (subscribers.size === 0 && stop) {
stop();
stop = null;
}
};
}
return { set, update, subscribe };
}
export { readable as r, writable as w };
//# sourceMappingURL=index-BGaaC8Kf.js.map
@@ -0,0 +1 @@
{"version":3,"file":"index-BGaaC8Kf.js","sources":["../../../.svelte-kit/adapter-node/chunks/index.js"],"sourcesContent":["import { n as noop } from \"./index2.js\";\nimport { s as safe_not_equal } from \"./root.js\";\nimport \"clsx\";\nconst subscriber_queue = [];\nfunction readable(value, start) {\n return {\n subscribe: writable(value, start).subscribe\n };\n}\nfunction writable(value, start = noop) {\n let stop = null;\n const subscribers = /* @__PURE__ */ new Set();\n function set(new_value) {\n if (safe_not_equal(value, new_value)) {\n value = new_value;\n if (stop) {\n const run_queue = !subscriber_queue.length;\n for (const subscriber of subscribers) {\n subscriber[1]();\n subscriber_queue.push(subscriber, value);\n }\n if (run_queue) {\n for (let i = 0; i < subscriber_queue.length; i += 2) {\n subscriber_queue[i][0](subscriber_queue[i + 1]);\n }\n subscriber_queue.length = 0;\n }\n }\n }\n }\n function update(fn) {\n set(fn(\n /** @type {T} */\n value\n ));\n }\n function subscribe(run, invalidate = noop) {\n const subscriber = [run, invalidate];\n subscribers.add(subscriber);\n if (subscribers.size === 1) {\n stop = start(set, update) || noop;\n }\n run(\n /** @type {T} */\n value\n );\n return () => {\n subscribers.delete(subscriber);\n if (subscribers.size === 0 && stop) {\n stop();\n stop = null;\n }\n };\n }\n return { set, update, subscribe };\n}\nexport {\n readable as r,\n writable as w\n};\n"],"names":[],"mappings":";;;;AAGA,MAAM,gBAAgB,GAAG,EAAE;AAC3B,SAAS,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE;AAChC,EAAE,OAAO;AACT,IAAI,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACtC,GAAG;AACH;AACA,SAAS,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE;AACvC,EAAE,IAAI,IAAI,GAAG,IAAI;AACjB,EAAE,MAAM,WAAW,mBAAmB,IAAI,GAAG,EAAE;AAC/C,EAAE,SAAS,GAAG,CAAC,SAAS,EAAE;AAC1B,IAAI,IAAI,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE;AAC1C,MAAM,KAAK,GAAG,SAAS;AACvB,MAAM,IAAI,IAAI,EAAE;AAChB,QAAQ,MAAM,SAAS,GAAG,CAAC,gBAAgB,CAAC,MAAM;AAClD,QAAQ,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;AAC9C,UAAU,UAAU,CAAC,CAAC,CAAC,EAAE;AACzB,UAAU,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC;AAClD,QAAQ;AACR,QAAQ,IAAI,SAAS,EAAE;AACvB,UAAU,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;AAC/D,YAAY,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3D,UAAU;AACV,UAAU,gBAAgB,CAAC,MAAM,GAAG,CAAC;AACrC,QAAQ;AACR,MAAM;AACN,IAAI;AACJ,EAAE;AACF,EAAE,SAAS,MAAM,CAAC,EAAE,EAAE;AACtB,IAAI,GAAG,CAAC,EAAE;AACV;AACA,MAAM;AACN,KAAK,CAAC;AACN,EAAE;AACF,EAAE,SAAS,SAAS,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,EAAE;AAC7C,IAAI,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC;AACxC,IAAI,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;AAC/B,IAAI,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,EAAE;AAChC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,IAAI;AACvC,IAAI;AACJ,IAAI,GAAG;AACP;AACA,MAAM;AACN,KAAK;AACL,IAAI,OAAO,MAAM;AACjB,MAAM,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC;AACpC,MAAM,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE;AAC1C,QAAQ,IAAI,EAAE;AACd,QAAQ,IAAI,GAAG,IAAI;AACnB,MAAM;AACN,IAAI,CAAC;AACL,EAAE;AACF,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE;AACnC;;;;"}

Some files were not shown because too many files have changed in this diff Show More