mindpm 1.2.27 → 1.2.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js
CHANGED
|
@@ -568,6 +568,11 @@ var createSession = async (req, res, params) => {
|
|
|
568
568
|
const session = db2.prepare("SELECT * FROM sessions WHERE id = ?").get(id);
|
|
569
569
|
sendJson(res, 201, session);
|
|
570
570
|
};
|
|
571
|
+
var listNotes = async (_req, res, params) => {
|
|
572
|
+
const db2 = getDb();
|
|
573
|
+
const rows = db2.prepare("SELECT * FROM notes WHERE project_id = ? ORDER BY created_at DESC").all(params.pid);
|
|
574
|
+
sendJson(res, 200, rows);
|
|
575
|
+
};
|
|
571
576
|
var listDecisions = async (_req, res, params) => {
|
|
572
577
|
const db2 = getDb();
|
|
573
578
|
const rows = db2.prepare("SELECT * FROM decisions WHERE project_id = ? ORDER BY created_at DESC").all(params.pid);
|
|
@@ -578,6 +583,7 @@ var routes = [
|
|
|
578
583
|
{ method: "GET", pattern: "/api/projects/:id", handler: getProject },
|
|
579
584
|
{ method: "PATCH", pattern: "/api/projects/:id", handler: updateProject },
|
|
580
585
|
{ method: "POST", pattern: "/api/projects/:pid/sessions", handler: createSession },
|
|
586
|
+
{ method: "GET", pattern: "/api/projects/:pid/notes", handler: listNotes },
|
|
581
587
|
{ method: "GET", pattern: "/api/projects/:pid/decisions", handler: listDecisions },
|
|
582
588
|
{ method: "GET", pattern: "/api/projects/:pid/tasks", handler: listTasks },
|
|
583
589
|
{ method: "POST", pattern: "/api/projects/:pid/tasks", handler: createTask },
|
|
@@ -948,7 +954,6 @@ function registerTaskTools(server2) {
|
|
|
948
954
|
if (!resolved) {
|
|
949
955
|
return { content: [{ type: "text", text: project ? `Project "${project}" not found.` : "No active projects found. Create a project first." }], isError: true };
|
|
950
956
|
}
|
|
951
|
-
const sessionPreamble = maybeAutoSession(resolved.id);
|
|
952
957
|
const db2 = getDb();
|
|
953
958
|
const id = generateId();
|
|
954
959
|
const seqRow = db2.prepare("SELECT COALESCE(MAX(seq), 0) + 1 AS next_seq FROM tasks WHERE project_id = ?").get(resolved.id);
|
|
@@ -967,19 +972,14 @@ function registerTaskTools(server2) {
|
|
|
967
972
|
);
|
|
968
973
|
const proj = db2.prepare("SELECT slug FROM projects WHERE id = ?").get(resolved.id);
|
|
969
974
|
const short_id = proj?.slug ? `${proj.slug}-${seq}` : null;
|
|
970
|
-
const resultText = JSON.stringify({
|
|
971
|
-
task_id: id,
|
|
972
|
-
short_id,
|
|
973
|
-
message: `Task created: "${title}" in ${resolved.name} (priority: ${priority ?? "medium"})`
|
|
974
|
-
});
|
|
975
975
|
return {
|
|
976
976
|
content: [{
|
|
977
977
|
type: "text",
|
|
978
|
-
text:
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
978
|
+
text: JSON.stringify({
|
|
979
|
+
task_id: id,
|
|
980
|
+
short_id,
|
|
981
|
+
message: `Task created: "${title}" in ${resolved.name} (priority: ${priority ?? "medium"})`
|
|
982
|
+
})
|
|
983
983
|
}]
|
|
984
984
|
};
|
|
985
985
|
}
|
|
@@ -1005,7 +1005,6 @@ ${resultText}` : resultText
|
|
|
1005
1005
|
if (!existing) {
|
|
1006
1006
|
return { content: [{ type: "text", text: `Task "${task_id}" not found.` }], isError: true };
|
|
1007
1007
|
}
|
|
1008
|
-
const sessionPreamble = maybeAutoSession(existing.project_id);
|
|
1009
1008
|
const updates = [];
|
|
1010
1009
|
const params = [];
|
|
1011
1010
|
if (title !== void 0) {
|
|
@@ -1043,13 +1042,8 @@ ${resultText}` : resultText
|
|
|
1043
1042
|
}
|
|
1044
1043
|
params.push(task_id);
|
|
1045
1044
|
db2.prepare(`UPDATE tasks SET ${updates.join(", ")} WHERE id = ?`).run(...params);
|
|
1046
|
-
const resultText = JSON.stringify({ task_id, message: `Task "${existing.title}" updated.` });
|
|
1047
1045
|
return {
|
|
1048
|
-
content: [{ type: "text", text:
|
|
1049
|
-
|
|
1050
|
-
---
|
|
1051
|
-
|
|
1052
|
-
${resultText}` : resultText }]
|
|
1046
|
+
content: [{ type: "text", text: JSON.stringify({ task_id, message: `Task "${existing.title}" updated.` }) }]
|
|
1053
1047
|
};
|
|
1054
1048
|
}
|
|
1055
1049
|
);
|
|
@@ -1191,7 +1185,6 @@ function registerDecisionTools(server2) {
|
|
|
1191
1185
|
if (!resolved) {
|
|
1192
1186
|
return { content: [{ type: "text", text: project ? `Project "${project}" not found.` : "No active projects found. Create a project first." }], isError: true };
|
|
1193
1187
|
}
|
|
1194
|
-
const sessionPreamble = maybeAutoSession(resolved.id);
|
|
1195
1188
|
const db2 = getDb();
|
|
1196
1189
|
const id = generateId();
|
|
1197
1190
|
db2.prepare(
|
|
@@ -1207,15 +1200,10 @@ function registerDecisionTools(server2) {
|
|
|
1207
1200
|
tags ? JSON.stringify(tags) : null
|
|
1208
1201
|
);
|
|
1209
1202
|
const scope = task_id ? `task ${task_id} in ${resolved.name}` : resolved.name;
|
|
1210
|
-
const resultText = JSON.stringify({ decision_id: id, message: `Decision logged: "${title}" in ${scope}` });
|
|
1211
1203
|
return {
|
|
1212
1204
|
content: [{
|
|
1213
1205
|
type: "text",
|
|
1214
|
-
text:
|
|
1215
|
-
|
|
1216
|
-
---
|
|
1217
|
-
|
|
1218
|
-
${resultText}` : resultText
|
|
1206
|
+
text: JSON.stringify({ decision_id: id, message: `Decision logged: "${title}" in ${scope}` })
|
|
1219
1207
|
}]
|
|
1220
1208
|
};
|
|
1221
1209
|
}
|
|
@@ -1267,9 +1255,9 @@ function registerNoteTools(server2) {
|
|
|
1267
1255
|
"add_note",
|
|
1268
1256
|
{
|
|
1269
1257
|
title: "Add Note",
|
|
1270
|
-
description: "Add a note to a project or task. Proactively use this when the user shares context about architecture, bugs, ideas, research findings, or any important information worth remembering.",
|
|
1258
|
+
description: "Add a note to a project or task. Proactively use this when the user shares context about architecture, bugs, ideas, research findings, or any important information worth remembering. Always specify the project parameter when you know which project is active.",
|
|
1271
1259
|
inputSchema: {
|
|
1272
|
-
project: z4.string().optional().describe("Project name or ID"),
|
|
1260
|
+
project: z4.string().optional().describe("Project name or ID (always pass this when known \u2014 omitting may target the wrong project)"),
|
|
1273
1261
|
content: z4.string().describe("The note content"),
|
|
1274
1262
|
category: z4.enum(["general", "architecture", "bug", "idea", "research", "meeting", "review"]).optional().describe("Note category (default: general)"),
|
|
1275
1263
|
task_id: z4.string().optional().describe("Link this note to a specific task"),
|
|
@@ -1281,7 +1269,6 @@ function registerNoteTools(server2) {
|
|
|
1281
1269
|
if (!resolved) {
|
|
1282
1270
|
return { content: [{ type: "text", text: project ? `Project "${project}" not found.` : "No active projects found. Create a project first." }], isError: true };
|
|
1283
1271
|
}
|
|
1284
|
-
const sessionPreamble = maybeAutoSession(resolved.id);
|
|
1285
1272
|
const db2 = getDb();
|
|
1286
1273
|
const id = generateId();
|
|
1287
1274
|
db2.prepare(
|
|
@@ -1294,15 +1281,10 @@ function registerNoteTools(server2) {
|
|
|
1294
1281
|
category ?? "general",
|
|
1295
1282
|
tags ? JSON.stringify(tags) : null
|
|
1296
1283
|
);
|
|
1297
|
-
const resultText = JSON.stringify({ note_id: id, message: `Note added to ${resolved.name} (${category ?? "general"})` });
|
|
1298
1284
|
return {
|
|
1299
1285
|
content: [{
|
|
1300
1286
|
type: "text",
|
|
1301
|
-
text:
|
|
1302
|
-
|
|
1303
|
-
---
|
|
1304
|
-
|
|
1305
|
-
${resultText}` : resultText
|
|
1287
|
+
text: JSON.stringify({ note_id: id, message: `Note added to ${resolved.name} (${category ?? "general"})` })
|
|
1306
1288
|
}]
|
|
1307
1289
|
};
|
|
1308
1290
|
}
|
|
@@ -1362,7 +1344,6 @@ ${resultText}` : resultText }]
|
|
|
1362
1344
|
if (!resolved) {
|
|
1363
1345
|
return { content: [{ type: "text", text: project ? `Project "${project}" not found.` : "No active projects found. Create a project first." }], isError: true };
|
|
1364
1346
|
}
|
|
1365
|
-
const sessionPreamble = maybeAutoSession(resolved.id);
|
|
1366
1347
|
const db2 = getDb();
|
|
1367
1348
|
const id = generateId();
|
|
1368
1349
|
db2.prepare(
|
|
@@ -1370,15 +1351,10 @@ ${resultText}` : resultText }]
|
|
|
1370
1351
|
VALUES (?, ?, ?, ?, ?)
|
|
1371
1352
|
ON CONFLICT(project_id, key) DO UPDATE SET value = excluded.value, category = excluded.category`
|
|
1372
1353
|
).run(id, resolved.id, key, value, category ?? "general");
|
|
1373
|
-
const resultText = JSON.stringify({ message: `Context set: "${key}" = "${value}" in ${resolved.name}` });
|
|
1374
1354
|
return {
|
|
1375
1355
|
content: [{
|
|
1376
1356
|
type: "text",
|
|
1377
|
-
text:
|
|
1378
|
-
|
|
1379
|
-
---
|
|
1380
|
-
|
|
1381
|
-
${resultText}` : resultText
|
|
1357
|
+
text: JSON.stringify({ message: `Context set: "${key}" = "${value}" in ${resolved.name}` })
|
|
1382
1358
|
}]
|
|
1383
1359
|
};
|
|
1384
1360
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var Aa=Object.defineProperty;var _n=e=>{throw TypeError(e)};var Da=(e,t,r)=>t in e?Aa(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var $e=(e,t,r)=>Da(e,typeof t!="symbol"?t+"":t,r),Ir=(e,t,r)=>t.has(e)||_n("Cannot "+r);var d=(e,t,r)=>(Ir(e,t,"read from private field"),r?r.call(e):t.get(e)),W=(e,t,r)=>t.has(e)?_n("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),J=(e,t,r,n)=>(Ir(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),de=(e,t,r)=>(Ir(e,t,"access private method"),r);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))n(a);new MutationObserver(a=>{for(const s of a)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&n(o)}).observe(document,{childList:!0,subtree:!0});function r(a){const s={};return a.integrity&&(s.integrity=a.integrity),a.referrerPolicy&&(s.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?s.credentials="include":a.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function n(a){if(a.ep)return;a.ep=!0;const s=r(a);fetch(a.href,s)}})();const zr=!1;var en=Array.isArray,Oa=Array.prototype.indexOf,Wt=Array.prototype.includes,Cr=Array.from,Na=Object.defineProperty,Bt=Object.getOwnPropertyDescriptor,Ia=Object.getOwnPropertyDescriptors,Ma=Object.prototype,Ra=Array.prototype,Nn=Object.getPrototypeOf,hn=Object.isExtensible;const La=()=>{};function za(e){for(var t=0;t<e.length;t++)e[t]()}function In(){var e,t,r=new Promise((n,a)=>{e=n,t=a});return{promise:r,resolve:e,reject:t}}const pe=2,hr=4,jr=8,Mn=1<<24,dt=16,Xe=32,qt=64,Fr=128,Be=512,_e=1024,me=2048,Ze=4096,Oe=8192,ct=16384,Rt=32768,Qt=65536,gn=1<<17,Rn=1<<18,rr=1<<19,Fa=1<<20,ft=1<<25,Lt=65536,qr=1<<21,tn=1<<22,mt=1<<23,Ot=Symbol("$state"),qa=Symbol("legacy props"),Tt=new class extends Error{constructor(){super(...arguments);$e(this,"name","StaleReactionError");$e(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};var An;const Ba=!!((An=globalThis.document)!=null&&An.contentType)&&globalThis.document.contentType.includes("xml");function Ka(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function Ha(e,t,r){throw new Error("https://svelte.dev/e/each_key_duplicate")}function Ua(e){throw new Error("https://svelte.dev/e/effect_in_teardown")}function Va(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function Ja(e){throw new Error("https://svelte.dev/e/effect_orphan")}function Ya(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function Ga(e){throw new Error("https://svelte.dev/e/props_invalid_value")}function Wa(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function Qa(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function Za(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function Xa(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}const $a=1,es=2,Ln=4,ts=8,rs=16,ns=1,as=4,ss=8,is=16,ls=1,os=2,he=Symbol(),zn="http://www.w3.org/1999/xhtml",us="http://www.w3.org/2000/svg",fs="http://www.w3.org/1998/Math/MathML";function cs(){console.warn("https://svelte.dev/e/select_multiple_invalid_value")}function vs(){console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}function Fn(e){return e===this.v}function ds(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}function qn(e){return!ds(e,this.v)}let _s=!1,He=null;function Zt(e){He=e}function Me(e,t=!1,r){He={p:He,i:!1,c:null,e:null,s:e,x:null,l:null}}function Re(e){var t=He,r=t.e;if(r!==null){t.e=null;for(var n of r)oa(n)}return t.i=!0,He=t.p,{}}function Bn(){return!0}let Et=[];function Kn(){var e=Et;Et=[],za(e)}function at(e){if(Et.length===0&&!sr){var t=Et;queueMicrotask(()=>{t===Et&&Kn()})}Et.push(e)}function hs(){for(;Et.length>0;)Kn()}function Hn(e){var t=te;if(t===null)return G.f|=mt,e;if((t.f&Rt)===0&&(t.f&hr)===0)throw e;pt(e,t)}function pt(e,t){for(;t!==null;){if((t.f&Fr)!==0){if((t.f&Rt)===0)throw e;try{t.b.error(e);return}catch(r){e=r}}t=t.parent}throw e}const gs=-7169;function ce(e,t){e.f=e.f&gs|t}function rn(e){(e.f&Be)!==0||e.deps===null?ce(e,_e):ce(e,Ze)}function Un(e){if(e!==null)for(const t of e)(t.f&pe)===0||(t.f&Lt)===0||(t.f^=Lt,Un(t.deps))}function Vn(e,t,r){(e.f&me)!==0?t.add(e):(e.f&Ze)!==0&&r.add(e),Un(e.deps),ce(e,_e)}const mr=new Set;let H=null,Er=null,ge=null,Ee=[],Pr=null,Br=!1,sr=!1;var Kt,Ht,Ct,Ut,cr,vr,jt,lt,Vt,Ie,Kr,Hr,Ur,Jn;const dn=class dn{constructor(){W(this,Ie);$e(this,"current",new Map);$e(this,"previous",new Map);W(this,Kt,new Set);W(this,Ht,new Set);W(this,Ct,0);W(this,Ut,0);W(this,cr,null);W(this,vr,new Set);W(this,jt,new Set);W(this,lt,new Map);$e(this,"is_fork",!1);W(this,Vt,!1)}skip_effect(t){d(this,lt).has(t)||d(this,lt).set(t,{d:[],m:[]})}unskip_effect(t){var r=d(this,lt).get(t);if(r){d(this,lt).delete(t);for(var n of r.d)ce(n,me),We(n);for(n of r.m)ce(n,Ze),We(n)}}process(t){var a;Ee=[],this.apply();var r=[],n=[];for(const s of t)de(this,Ie,Hr).call(this,s,r,n);if(de(this,Ie,Kr).call(this)){de(this,Ie,Ur).call(this,n),de(this,Ie,Ur).call(this,r);for(const[s,o]of d(this,lt))Qn(s,o)}else{for(const s of d(this,Kt))s();d(this,Kt).clear(),d(this,Ct)===0&&de(this,Ie,Jn).call(this),Er=this,H=null,pn(n),pn(r),Er=null,(a=d(this,cr))==null||a.resolve()}ge=null}capture(t,r){r!==he&&!this.previous.has(t)&&this.previous.set(t,r),(t.f&mt)===0&&(this.current.set(t,t.v),ge==null||ge.set(t,t.v))}activate(){H=this,this.apply()}deactivate(){H===this&&(H=null,ge=null)}flush(){if(this.activate(),Ee.length>0){if(Yn(),H!==null&&H!==this)return}else d(this,Ct)===0&&this.process([]);this.deactivate()}discard(){for(const t of d(this,Ht))t(this);d(this,Ht).clear()}increment(t){J(this,Ct,d(this,Ct)+1),t&&J(this,Ut,d(this,Ut)+1)}decrement(t){J(this,Ct,d(this,Ct)-1),t&&J(this,Ut,d(this,Ut)-1),!d(this,Vt)&&(J(this,Vt,!0),at(()=>{J(this,Vt,!1),de(this,Ie,Kr).call(this)?Ee.length>0&&this.flush():this.revive()}))}revive(){for(const t of d(this,vr))d(this,jt).delete(t),ce(t,me),We(t);for(const t of d(this,jt))ce(t,Ze),We(t);this.flush()}oncommit(t){d(this,Kt).add(t)}ondiscard(t){d(this,Ht).add(t)}settled(){return(d(this,cr)??J(this,cr,In())).promise}static ensure(){if(H===null){const t=H=new dn;mr.add(H),sr||at(()=>{H===t&&t.flush()})}return H}apply(){}};Kt=new WeakMap,Ht=new WeakMap,Ct=new WeakMap,Ut=new WeakMap,cr=new WeakMap,vr=new WeakMap,jt=new WeakMap,lt=new WeakMap,Vt=new WeakMap,Ie=new WeakSet,Kr=function(){return this.is_fork||d(this,Ut)>0},Hr=function(t,r,n){t.f^=_e;for(var a=t.first;a!==null;){var s=a.f,o=(s&(Xe|qt))!==0,f=o&&(s&_e)!==0,l=f||(s&Oe)!==0||d(this,lt).has(a);if(!l&&a.fn!==null){o?a.f^=_e:(s&hr)!==0?r.push(a):pr(a)&&((s&dt)!==0&&d(this,jt).add(a),$t(a));var c=a.first;if(c!==null){a=c;continue}}for(;a!==null;){var v=a.next;if(v!==null){a=v;break}a=a.parent}}},Ur=function(t){for(var r=0;r<t.length;r+=1)Vn(t[r],d(this,vr),d(this,jt))},Jn=function(){var a;if(mr.size>1){this.previous.clear();var t=ge,r=!0;for(const s of mr){if(s===this){r=!1;continue}const o=[];for(const[l,c]of this.current){if(s.current.has(l))if(r&&c!==s.current.get(l))s.current.set(l,c);else continue;o.push(l)}if(o.length===0)continue;const f=[...s.current.keys()].filter(l=>!this.current.has(l));if(f.length>0){var n=Ee;Ee=[];const l=new Set,c=new Map;for(const v of o)Gn(v,f,l,c);if(Ee.length>0){H=s,s.apply();for(const v of Ee)de(a=s,Ie,Hr).call(a,v,[],[]);s.deactivate()}Ee=n}}H=null,ge=t}mr.delete(this)};let yt=dn;function ps(e){var t=sr;sr=!0;try{for(var r;;){if(hs(),Ee.length===0&&(H==null||H.flush(),Ee.length===0))return Pr=null,r;Yn()}}finally{sr=t}}function Yn(){Br=!0;var e=null;try{for(var t=0;Ee.length>0;){var r=yt.ensure();if(t++>1e3){var n,a;ms()}r.process(Ee),bt.clear()}}finally{Ee=[],Br=!1,Pr=null}}function ms(){try{Ya()}catch(e){pt(e,Pr)}}let Je=null;function pn(e){var t=e.length;if(t!==0){for(var r=0;r<t;){var n=e[r++];if((n.f&(ct|Oe))===0&&pr(n)&&(Je=new Set,$t(n),n.deps===null&&n.first===null&&n.nodes===null&&n.teardown===null&&n.ac===null&&va(n),(Je==null?void 0:Je.size)>0)){bt.clear();for(const a of Je){if((a.f&(ct|Oe))!==0)continue;const s=[a];let o=a.parent;for(;o!==null;)Je.has(o)&&(Je.delete(o),s.push(o)),o=o.parent;for(let f=s.length-1;f>=0;f--){const l=s[f];(l.f&(ct|Oe))===0&&$t(l)}}Je.clear()}}Je=null}}function Gn(e,t,r,n){if(!r.has(e)&&(r.add(e),e.reactions!==null))for(const a of e.reactions){const s=a.f;(s&pe)!==0?Gn(a,t,r,n):(s&(tn|dt))!==0&&(s&me)===0&&Wn(a,t,n)&&(ce(a,me),We(a))}}function Wn(e,t,r){const n=r.get(e);if(n!==void 0)return n;if(e.deps!==null)for(const a of e.deps){if(Wt.call(t,a))return!0;if((a.f&pe)!==0&&Wn(a,t,r))return r.set(a,!0),!0}return r.set(e,!1),!1}function We(e){var t=Pr=e,r=t.b;if(r!=null&&r.is_pending&&(e.f&(hr|jr|Mn))!==0&&(e.f&Rt)===0){r.defer_effect(e);return}for(;t.parent!==null;){t=t.parent;var n=t.f;if(Br&&t===te&&(n&dt)!==0&&(n&Rn)===0&&(n&Rt)!==0)return;if((n&(qt|Xe))!==0){if((n&_e)===0)return;t.f^=_e}}Ee.push(t)}function Qn(e,t){if(!((e.f&Xe)!==0&&(e.f&_e)!==0)){(e.f&me)!==0?t.d.push(e):(e.f&Ze)!==0&&t.m.push(e),ce(e,_e);for(var r=e.first;r!==null;)Qn(r,t),r=r.next}}function ys(e){let t=0,r=zt(0),n;return()=>{sn()&&(i(r),on(()=>(t===0&&(n=Or(()=>e(()=>ir(r)))),t+=1,()=>{at(()=>{t-=1,t===0&&(n==null||n(),n=void 0,ir(r))})})))}}var bs=Qt|rr;function ws(e,t,r,n){new ks(e,t,r,n)}var ze,$r,tt,Pt,Te,rt,Ae,Ye,ot,At,gt,Jt,Yt,Gt,ut,Sr,ve,Ts,Es,Ss,Vr,wr,kr,Jr;class ks{constructor(t,r,n,a){W(this,ve);$e(this,"parent");$e(this,"is_pending",!1);$e(this,"transform_error");W(this,ze);W(this,$r,null);W(this,tt);W(this,Pt);W(this,Te);W(this,rt,null);W(this,Ae,null);W(this,Ye,null);W(this,ot,null);W(this,At,0);W(this,gt,0);W(this,Jt,!1);W(this,Yt,new Set);W(this,Gt,new Set);W(this,ut,null);W(this,Sr,ys(()=>(J(this,ut,zt(d(this,At))),()=>{J(this,ut,null)})));var s;J(this,ze,t),J(this,tt,r),J(this,Pt,o=>{var f=te;f.b=this,f.f|=Fr,n(o)}),this.parent=te.b,this.transform_error=a??((s=this.parent)==null?void 0:s.transform_error)??(o=>o),J(this,Te,un(()=>{de(this,ve,Vr).call(this)},bs))}defer_effect(t){Vn(t,d(this,Yt),d(this,Gt))}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!d(this,tt).pending}update_pending_count(t){de(this,ve,Jr).call(this,t),J(this,At,d(this,At)+t),!(!d(this,ut)||d(this,Jt))&&(J(this,Jt,!0),at(()=>{J(this,Jt,!1),d(this,ut)&&Xt(d(this,ut),d(this,At))}))}get_effect_pending(){return d(this,Sr).call(this),i(d(this,ut))}error(t){var r=d(this,tt).onerror;let n=d(this,tt).failed;if(!r&&!n)throw t;d(this,rt)&&(xe(d(this,rt)),J(this,rt,null)),d(this,Ae)&&(xe(d(this,Ae)),J(this,Ae,null)),d(this,Ye)&&(xe(d(this,Ye)),J(this,Ye,null));var a=!1,s=!1;const o=()=>{if(a){vs();return}a=!0,s&&Xa(),d(this,Ye)!==null&&It(d(this,Ye),()=>{J(this,Ye,null)}),de(this,ve,kr).call(this,()=>{yt.ensure(),de(this,ve,Vr).call(this)})},f=l=>{try{s=!0,r==null||r(l,o),s=!1}catch(c){pt(c,d(this,Te)&&d(this,Te).parent)}n&&J(this,Ye,de(this,ve,kr).call(this,()=>{yt.ensure();try{return Fe(()=>{var c=te;c.b=this,c.f|=Fr,n(d(this,ze),()=>l,()=>o)})}catch(c){return pt(c,d(this,Te).parent),null}}))};at(()=>{var l;try{l=this.transform_error(t)}catch(c){pt(c,d(this,Te)&&d(this,Te).parent);return}l!==null&&typeof l=="object"&&typeof l.then=="function"?l.then(f,c=>pt(c,d(this,Te)&&d(this,Te).parent)):f(l)})}}ze=new WeakMap,$r=new WeakMap,tt=new WeakMap,Pt=new WeakMap,Te=new WeakMap,rt=new WeakMap,Ae=new WeakMap,Ye=new WeakMap,ot=new WeakMap,At=new WeakMap,gt=new WeakMap,Jt=new WeakMap,Yt=new WeakMap,Gt=new WeakMap,ut=new WeakMap,Sr=new WeakMap,ve=new WeakSet,Ts=function(){try{J(this,rt,Fe(()=>d(this,Pt).call(this,d(this,ze))))}catch(t){this.error(t)}},Es=function(t){const r=d(this,tt).failed;r&&J(this,Ye,Fe(()=>{r(d(this,ze),()=>t,()=>()=>{})}))},Ss=function(){const t=d(this,tt).pending;t&&(this.is_pending=!0,J(this,Ae,Fe(()=>t(d(this,ze)))),at(()=>{var r=J(this,ot,document.createDocumentFragment()),n=vt();r.append(n),J(this,rt,de(this,ve,kr).call(this,()=>(yt.ensure(),Fe(()=>d(this,Pt).call(this,n))))),d(this,gt)===0&&(d(this,ze).before(r),J(this,ot,null),It(d(this,Ae),()=>{J(this,Ae,null)}),de(this,ve,wr).call(this))}))},Vr=function(){try{if(this.is_pending=this.has_pending_snippet(),J(this,gt,0),J(this,At,0),J(this,rt,Fe(()=>{d(this,Pt).call(this,d(this,ze))})),d(this,gt)>0){var t=J(this,ot,document.createDocumentFragment());ha(d(this,rt),t);const r=d(this,tt).pending;J(this,Ae,Fe(()=>r(d(this,ze))))}else de(this,ve,wr).call(this)}catch(r){this.error(r)}},wr=function(){this.is_pending=!1;for(const t of d(this,Yt))ce(t,me),We(t);for(const t of d(this,Gt))ce(t,Ze),We(t);d(this,Yt).clear(),d(this,Gt).clear()},kr=function(t){var r=te,n=G,a=He;it(d(this,Te)),Ue(d(this,Te)),Zt(d(this,Te).ctx);try{return t()}catch(s){return Hn(s),null}finally{it(r),Ue(n),Zt(a)}},Jr=function(t){var r;if(!this.has_pending_snippet()){this.parent&&de(r=this.parent,ve,Jr).call(r,t);return}J(this,gt,d(this,gt)+t),d(this,gt)===0&&(de(this,ve,wr).call(this),d(this,Ae)&&It(d(this,Ae),()=>{J(this,Ae,null)}),d(this,ot)&&(d(this,ze).before(d(this,ot)),J(this,ot,null)))};function xs(e,t,r,n){const a=Ar;var s=e.filter(p=>!p.settled);if(r.length===0&&s.length===0){n(t.map(a));return}var o=te,f=Cs(),l=s.length===1?s[0].promise:s.length>1?Promise.all(s.map(p=>p.promise)):null;function c(p){f();try{n(p)}catch(b){(o.f&ct)===0&&pt(b,o)}Yr()}if(r.length===0){l.then(()=>c(t.map(a)));return}function v(){f(),Promise.all(r.map(p=>Ps(p))).then(p=>c([...t.map(a),...p])).catch(p=>pt(p,o))}l?l.then(v):v()}function Cs(){var e=te,t=G,r=He,n=H;return function(s=!0){it(e),Ue(t),Zt(r),s&&(n==null||n.activate())}}function Yr(e=!0){it(null),Ue(null),Zt(null),e&&(H==null||H.deactivate())}function js(){var e=te.b,t=H,r=e.is_rendered();return e.update_pending_count(1),t.increment(r),()=>{e.update_pending_count(-1),t.decrement(r)}}function Ar(e){var t=pe|me,r=G!==null&&(G.f&pe)!==0?G:null;return te!==null&&(te.f|=rr),{ctx:He,deps:null,effects:null,equals:Fn,f:t,fn:e,reactions:null,rv:0,v:he,wv:0,parent:r??te,ac:null}}function Ps(e,t,r){te===null&&Ka();var a=void 0,s=zt(he),o=!G,f=new Map;return Ks(()=>{var b;var l=In();a=l.promise;try{Promise.resolve(e()).then(l.resolve,l.reject).finally(Yr)}catch(w){l.reject(w),Yr()}var c=H;if(o){var v=js();(b=f.get(c))==null||b.reject(Tt),f.delete(c),f.set(c,l)}const p=(w,m=void 0)=>{if(c.activate(),m)m!==Tt&&(s.f|=mt,Xt(s,m));else{(s.f&mt)!==0&&(s.f^=mt),Xt(s,w);for(const[T,u]of f){if(f.delete(T),T===c)break;u.reject(Tt)}}v&&v()};l.promise.then(p,w=>p(null,w||"unknown"))}),ln(()=>{for(const l of f.values())l.reject(Tt)}),new Promise(l=>{function c(v){function p(){v===a?l(s):c(a)}v.then(p,p)}c(a)})}function oe(e){const t=Ar(e);return ga(t),t}function Zn(e){const t=Ar(e);return t.equals=qn,t}function As(e){var t=e.effects;if(t!==null){e.effects=null;for(var r=0;r<t.length;r+=1)xe(t[r])}}function Ds(e){for(var t=e.parent;t!==null;){if((t.f&pe)===0)return(t.f&ct)===0?t:null;t=t.parent}return null}function nn(e){var t,r=te;it(Ds(e));try{e.f&=~Lt,As(e),t=ba(e)}finally{it(r)}return t}function Xn(e){var t=nn(e);if(!e.equals(t)&&(e.wv=ma(),(!(H!=null&&H.is_fork)||e.deps===null)&&(e.v=t,e.deps===null))){ce(e,_e);return}kt||(ge!==null?(sn()||H!=null&&H.is_fork)&&ge.set(e,t):rn(e))}function Os(e){var t,r;if(e.effects!==null)for(const n of e.effects)(n.teardown||n.ac)&&((t=n.teardown)==null||t.call(n),(r=n.ac)==null||r.abort(Tt),n.teardown=La,n.ac=null,ur(n,0),fn(n))}function $n(e){if(e.effects!==null)for(const t of e.effects)t.teardown&&$t(t)}let Gr=new Set;const bt=new Map;let ea=!1;function zt(e,t){var r={f:0,v:e,reactions:null,equals:Fn,rv:0,wv:0};return r}function I(e,t){const r=zt(e);return ga(r),r}function Ns(e,t=!1,r=!0){const n=zt(e);return t||(n.equals=qn),n}function h(e,t,r=!1){G!==null&&(!Qe||(G.f&gn)!==0)&&Bn()&&(G.f&(pe|dt|tn|gn))!==0&&(Ke===null||!Wt.call(Ke,e))&&Za();let n=r?be(t):t;return Xt(e,n)}function Xt(e,t){if(!e.equals(t)){var r=e.v;kt?bt.set(e,t):bt.set(e,r),e.v=t;var n=yt.ensure();if(n.capture(e,r),(e.f&pe)!==0){const a=e;(e.f&me)!==0&&nn(a),rn(a)}e.wv=ma(),ta(e,me),te!==null&&(te.f&_e)!==0&&(te.f&(Xe|qt))===0&&(Le===null?Us([e]):Le.push(e)),!n.is_fork&&Gr.size>0&&!ea&&Is()}return t}function Is(){ea=!1;for(const e of Gr)(e.f&_e)!==0&&ce(e,Ze),pr(e)&&$t(e);Gr.clear()}function ir(e){h(e,e.v+1)}function ta(e,t){var r=e.reactions;if(r!==null)for(var n=r.length,a=0;a<n;a++){var s=r[a],o=s.f,f=(o&me)===0;if(f&&ce(s,t),(o&pe)!==0){var l=s;ge==null||ge.delete(l),(o&Lt)===0&&(o&Be&&(s.f|=Lt),ta(l,Ze))}else f&&((o&dt)!==0&&Je!==null&&Je.add(s),We(s))}}function be(e){if(typeof e!="object"||e===null||Ot in e)return e;const t=Nn(e);if(t!==Ma&&t!==Ra)return e;var r=new Map,n=en(e),a=I(0),s=Mt,o=f=>{if(Mt===s)return f();var l=G,c=Mt;Ue(null),wn(s);var v=f();return Ue(l),wn(c),v};return n&&r.set("length",I(e.length)),new Proxy(e,{defineProperty(f,l,c){(!("value"in c)||c.configurable===!1||c.enumerable===!1||c.writable===!1)&&Wa();var v=r.get(l);return v===void 0?o(()=>{var p=I(c.value);return r.set(l,p),p}):h(v,c.value,!0),!0},deleteProperty(f,l){var c=r.get(l);if(c===void 0){if(l in f){const v=o(()=>I(he));r.set(l,v),ir(a)}}else h(c,he),ir(a);return!0},get(f,l,c){var w;if(l===Ot)return e;var v=r.get(l),p=l in f;if(v===void 0&&(!p||(w=Bt(f,l))!=null&&w.writable)&&(v=o(()=>{var m=be(p?f[l]:he),T=I(m);return T}),r.set(l,v)),v!==void 0){var b=i(v);return b===he?void 0:b}return Reflect.get(f,l,c)},getOwnPropertyDescriptor(f,l){var c=Reflect.getOwnPropertyDescriptor(f,l);if(c&&"value"in c){var v=r.get(l);v&&(c.value=i(v))}else if(c===void 0){var p=r.get(l),b=p==null?void 0:p.v;if(p!==void 0&&b!==he)return{enumerable:!0,configurable:!0,value:b,writable:!0}}return c},has(f,l){var b;if(l===Ot)return!0;var c=r.get(l),v=c!==void 0&&c.v!==he||Reflect.has(f,l);if(c!==void 0||te!==null&&(!v||(b=Bt(f,l))!=null&&b.writable)){c===void 0&&(c=o(()=>{var w=v?be(f[l]):he,m=I(w);return m}),r.set(l,c));var p=i(c);if(p===he)return!1}return v},set(f,l,c,v){var S;var p=r.get(l),b=l in f;if(n&&l==="length")for(var w=c;w<p.v;w+=1){var m=r.get(w+"");m!==void 0?h(m,he):w in f&&(m=o(()=>I(he)),r.set(w+"",m))}if(p===void 0)(!b||(S=Bt(f,l))!=null&&S.writable)&&(p=o(()=>I(void 0)),h(p,be(c)),r.set(l,p));else{b=p.v!==he;var T=o(()=>be(c));h(p,T)}var u=Reflect.getOwnPropertyDescriptor(f,l);if(u!=null&&u.set&&u.set.call(v,c),!b){if(n&&typeof l=="string"){var _=r.get("length"),x=Number(l);Number.isInteger(x)&&x>=_.v&&h(_,x+1)}ir(a)}return!0},ownKeys(f){i(a);var l=Reflect.ownKeys(f).filter(p=>{var b=r.get(p);return b===void 0||b.v!==he});for(var[c,v]of r)v.v!==he&&!(c in f)&&l.push(c);return l},setPrototypeOf(){Qa()}})}function mn(e){try{if(e!==null&&typeof e=="object"&&Ot in e)return e[Ot]}catch{}return e}function Ms(e,t){return Object.is(mn(e),mn(t))}var wt,ra,na,aa;function Rs(){if(wt===void 0){wt=window,ra=/Firefox/.test(navigator.userAgent);var e=Element.prototype,t=Node.prototype,r=Text.prototype;na=Bt(t,"firstChild").get,aa=Bt(t,"nextSibling").get,hn(e)&&(e.__click=void 0,e.__className=void 0,e.__attributes=null,e.__style=void 0,e.__e=void 0),hn(r)&&(r.__t=void 0)}}function vt(e=""){return document.createTextNode(e)}function Nt(e){return na.call(e)}function gr(e){return aa.call(e)}function y(e,t){return Nt(e)}function Ft(e,t=!1){{var r=Nt(e);return r instanceof Comment&&r.data===""?gr(r):r}}function E(e,t=1,r=!1){let n=e;for(;t--;)n=gr(n);return n}function Ls(e){e.textContent=""}function sa(){return!1}function ia(e,t,r){return document.createElementNS(t??zn,e,void 0)}function an(e,t){{const r=document.body;e.autofocus=!0,at(()=>{document.activeElement===r&&e.focus()})}}let yn=!1;function zs(){yn||(yn=!0,document.addEventListener("reset",e=>{Promise.resolve().then(()=>{var t;if(!e.defaultPrevented)for(const r of e.target.elements)(t=r.__on_r)==null||t.call(r)})},{capture:!0}))}function Dr(e){var t=G,r=te;Ue(null),it(null);try{return e()}finally{Ue(t),it(r)}}function la(e,t,r,n=r){e.addEventListener(t,()=>Dr(r));const a=e.__on_r;a?e.__on_r=()=>{a(),n(!0)}:e.__on_r=()=>n(!0),zs()}function Fs(e){te===null&&(G===null&&Ja(),Va()),kt&&Ua()}function qs(e,t){var r=t.last;r===null?t.last=t.first=e:(r.next=e,e.prev=r,t.last=e)}function _t(e,t,r){var n=te;n!==null&&(n.f&Oe)!==0&&(e|=Oe);var a={ctx:He,deps:null,nodes:null,f:e|me|Be,first:null,fn:t,last:null,next:null,parent:n,b:n&&n.b,prev:null,teardown:null,wv:0,ac:null};if(r)try{$t(a)}catch(f){throw xe(a),f}else t!==null&&We(a);var s=a;if(r&&s.deps===null&&s.teardown===null&&s.nodes===null&&s.first===s.last&&(s.f&rr)===0&&(s=s.first,(e&dt)!==0&&(e&Qt)!==0&&s!==null&&(s.f|=Qt)),s!==null&&(s.parent=n,n!==null&&qs(s,n),G!==null&&(G.f&pe)!==0&&(e&qt)===0)){var o=G;(o.effects??(o.effects=[])).push(s)}return a}function sn(){return G!==null&&!Qe}function ln(e){const t=_t(jr,null,!1);return ce(t,_e),t.teardown=e,t}function st(e){Fs();var t=te.f,r=!G&&(t&Xe)!==0&&(t&Rt)===0;if(r){var n=He;(n.e??(n.e=[])).push(e)}else return oa(e)}function oa(e){return _t(hr|Fa,e,!1)}function Bs(e){yt.ensure();const t=_t(qt|rr,e,!0);return(r={})=>new Promise(n=>{r.outro?It(t,()=>{xe(t),n(void 0)}):(xe(t),n(void 0))})}function ua(e){return _t(hr,e,!1)}function Ks(e){return _t(tn|rr,e,!0)}function on(e,t=0){return _t(jr|t,e,!0)}function B(e,t=[],r=[],n=[]){xs(n,t,r,a=>{_t(jr,()=>e(...a.map(i)),!0)})}function un(e,t=0){var r=_t(dt|t,e,!0);return r}function Fe(e){return _t(Xe|rr,e,!0)}function fa(e){var t=e.teardown;if(t!==null){const r=kt,n=G;bn(!0),Ue(null);try{t.call(null)}finally{bn(r),Ue(n)}}}function fn(e,t=!1){var r=e.first;for(e.first=e.last=null;r!==null;){const a=r.ac;a!==null&&Dr(()=>{a.abort(Tt)});var n=r.next;(r.f&qt)!==0?r.parent=null:xe(r,t),r=n}}function Hs(e){for(var t=e.first;t!==null;){var r=t.next;(t.f&Xe)===0&&xe(t),t=r}}function xe(e,t=!0){var r=!1;(t||(e.f&Rn)!==0)&&e.nodes!==null&&e.nodes.end!==null&&(ca(e.nodes.start,e.nodes.end),r=!0),fn(e,t&&!r),ur(e,0),ce(e,ct);var n=e.nodes&&e.nodes.t;if(n!==null)for(const s of n)s.stop();fa(e);var a=e.parent;a!==null&&a.first!==null&&va(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=null}function ca(e,t){for(;e!==null;){var r=e===t?null:gr(e);e.remove(),e=r}}function va(e){var t=e.parent,r=e.prev,n=e.next;r!==null&&(r.next=n),n!==null&&(n.prev=r),t!==null&&(t.first===e&&(t.first=n),t.last===e&&(t.last=r))}function It(e,t,r=!0){var n=[];da(e,n,!0);var a=()=>{r&&xe(e),t&&t()},s=n.length;if(s>0){var o=()=>--s||a();for(var f of n)f.out(o)}else a()}function da(e,t,r){if((e.f&Oe)===0){e.f^=Oe;var n=e.nodes&&e.nodes.t;if(n!==null)for(const f of n)(f.is_global||r)&&t.push(f);for(var a=e.first;a!==null;){var s=a.next,o=(a.f&Qt)!==0||(a.f&Xe)!==0&&(e.f&dt)!==0;da(a,t,o?r:!1),a=s}}}function cn(e){_a(e,!0)}function _a(e,t){if((e.f&Oe)!==0){e.f^=Oe,(e.f&_e)===0&&(ce(e,me),We(e));for(var r=e.first;r!==null;){var n=r.next,a=(r.f&Qt)!==0||(r.f&Xe)!==0;_a(r,a?t:!1),r=n}var s=e.nodes&&e.nodes.t;if(s!==null)for(const o of s)(o.is_global||t)&&o.in()}}function ha(e,t){if(e.nodes)for(var r=e.nodes.start,n=e.nodes.end;r!==null;){var a=r===n?null:gr(r);t.append(r),r=a}}let Tr=!1,kt=!1;function bn(e){kt=e}let G=null,Qe=!1;function Ue(e){G=e}let te=null;function it(e){te=e}let Ke=null;function ga(e){G!==null&&(Ke===null?Ke=[e]:Ke.push(e))}let Se=null,Pe=0,Le=null;function Us(e){Le=e}let pa=1,St=0,Mt=St;function wn(e){Mt=e}function ma(){return++pa}function pr(e){var t=e.f;if((t&me)!==0)return!0;if(t&pe&&(e.f&=~Lt),(t&Ze)!==0){for(var r=e.deps,n=r.length,a=0;a<n;a++){var s=r[a];if(pr(s)&&Xn(s),s.wv>e.wv)return!0}(t&Be)!==0&&ge===null&&ce(e,_e)}return!1}function ya(e,t,r=!0){var n=e.reactions;if(n!==null&&!(Ke!==null&&Wt.call(Ke,e)))for(var a=0;a<n.length;a++){var s=n[a];(s.f&pe)!==0?ya(s,t,!1):t===s&&(r?ce(s,me):(s.f&_e)!==0&&ce(s,Ze),We(s))}}function ba(e){var T;var t=Se,r=Pe,n=Le,a=G,s=Ke,o=He,f=Qe,l=Mt,c=e.f;Se=null,Pe=0,Le=null,G=(c&(Xe|qt))===0?e:null,Ke=null,Zt(e.ctx),Qe=!1,Mt=++St,e.ac!==null&&(Dr(()=>{e.ac.abort(Tt)}),e.ac=null);try{e.f|=qr;var v=e.fn,p=v();e.f|=Rt;var b=e.deps,w=H==null?void 0:H.is_fork;if(Se!==null){var m;if(w||ur(e,Pe),b!==null&&Pe>0)for(b.length=Pe+Se.length,m=0;m<Se.length;m++)b[Pe+m]=Se[m];else e.deps=b=Se;if(sn()&&(e.f&Be)!==0)for(m=Pe;m<b.length;m++)((T=b[m]).reactions??(T.reactions=[])).push(e)}else!w&&b!==null&&Pe<b.length&&(ur(e,Pe),b.length=Pe);if(Bn()&&Le!==null&&!Qe&&b!==null&&(e.f&(pe|Ze|me))===0)for(m=0;m<Le.length;m++)ya(Le[m],e);if(a!==null&&a!==e){if(St++,a.deps!==null)for(let u=0;u<r;u+=1)a.deps[u].rv=St;if(t!==null)for(const u of t)u.rv=St;Le!==null&&(n===null?n=Le:n.push(...Le))}return(e.f&mt)!==0&&(e.f^=mt),p}catch(u){return Hn(u)}finally{e.f^=qr,Se=t,Pe=r,Le=n,G=a,Ke=s,Zt(o),Qe=f,Mt=l}}function Vs(e,t){let r=t.reactions;if(r!==null){var n=Oa.call(r,e);if(n!==-1){var a=r.length-1;a===0?r=t.reactions=null:(r[n]=r[a],r.pop())}}if(r===null&&(t.f&pe)!==0&&(Se===null||!Wt.call(Se,t))){var s=t;(s.f&Be)!==0&&(s.f^=Be,s.f&=~Lt),rn(s),Os(s),ur(s,0)}}function ur(e,t){var r=e.deps;if(r!==null)for(var n=t;n<r.length;n++)Vs(e,r[n])}function $t(e){var t=e.f;if((t&ct)===0){ce(e,_e);var r=te,n=Tr;te=e,Tr=!0;try{(t&(dt|Mn))!==0?Hs(e):fn(e),fa(e);var a=ba(e);e.teardown=typeof a=="function"?a:null,e.wv=pa;var s;zr&&_s&&(e.f&me)!==0&&e.deps}finally{Tr=n,te=r}}}async function Js(){await Promise.resolve(),ps()}function i(e){var t=e.f,r=(t&pe)!==0;if(G!==null&&!Qe){var n=te!==null&&(te.f&ct)!==0;if(!n&&(Ke===null||!Wt.call(Ke,e))){var a=G.deps;if((G.f&qr)!==0)e.rv<St&&(e.rv=St,Se===null&&a!==null&&a[Pe]===e?Pe++:Se===null?Se=[e]:Se.push(e));else{(G.deps??(G.deps=[])).push(e);var s=e.reactions;s===null?e.reactions=[G]:Wt.call(s,G)||s.push(G)}}}if(kt&&bt.has(e))return bt.get(e);if(r){var o=e;if(kt){var f=o.v;return((o.f&_e)===0&&o.reactions!==null||ka(o))&&(f=nn(o)),bt.set(o,f),f}var l=(o.f&Be)===0&&!Qe&&G!==null&&(Tr||(G.f&Be)!==0),c=(o.f&Rt)===0;pr(o)&&(l&&(o.f|=Be),Xn(o)),l&&!c&&($n(o),wa(o))}if(ge!=null&&ge.has(e))return ge.get(e);if((e.f&mt)!==0)throw e.v;return e.v}function wa(e){if(e.f|=Be,e.deps!==null)for(const t of e.deps)(t.reactions??(t.reactions=[])).push(e),(t.f&pe)!==0&&(t.f&Be)===0&&($n(t),wa(t))}function ka(e){if(e.v===he)return!0;if(e.deps===null)return!1;for(const t of e.deps)if(bt.has(t)||(t.f&pe)!==0&&ka(t))return!0;return!1}function Or(e){var t=Qe;try{return Qe=!0,e()}finally{Qe=t}}const Ys=["touchstart","touchmove"];function Gs(e){return Ys.includes(e)}const xt=Symbol("events"),Ta=new Set,Wr=new Set;function Ws(e,t,r,n={}){function a(s){if(n.capture||Qr.call(t,s),!s.cancelBubble)return Dr(()=>r==null?void 0:r.call(this,s))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?at(()=>{t.addEventListener(e,a,n)}):t.addEventListener(e,a,n),a}function Ce(e,t,r,n,a){var s={capture:n,passive:a},o=Ws(e,t,r,s);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&ln(()=>{t.removeEventListener(e,o,s)})}function ee(e,t,r){(t[xt]??(t[xt]={}))[e]=r}function Ve(e){for(var t=0;t<e.length;t++)Ta.add(e[t]);for(var r of Wr)r(e)}let kn=null;function Qr(e){var u,_;var t=this,r=t.ownerDocument,n=e.type,a=((u=e.composedPath)==null?void 0:u.call(e))||[],s=a[0]||e.target;kn=e;var o=0,f=kn===e&&e[xt];if(f){var l=a.indexOf(f);if(l!==-1&&(t===document||t===window)){e[xt]=t;return}var c=a.indexOf(t);if(c===-1)return;l<=c&&(o=l)}if(s=a[o]||e.target,s!==t){Na(e,"currentTarget",{configurable:!0,get(){return s||r}});var v=G,p=te;Ue(null),it(null);try{for(var b,w=[];s!==null;){var m=s.assignedSlot||s.parentNode||s.host||null;try{var T=(_=s[xt])==null?void 0:_[n];T!=null&&(!s.disabled||e.target===s)&&T.call(s,e)}catch(x){b?w.push(x):b=x}if(e.cancelBubble||m===t||m===null)break;s=m}if(b){for(let x of w)queueMicrotask(()=>{throw x});throw b}}finally{e[xt]=t,delete e.currentTarget,Ue(v),it(p)}}}var Dn;const Mr=((Dn=globalThis==null?void 0:globalThis.window)==null?void 0:Dn.trustedTypes)&&globalThis.window.trustedTypes.createPolicy("svelte-trusted-html",{createHTML:e=>e});function Qs(e){return(Mr==null?void 0:Mr.createHTML(e))??e}function Zs(e){var t=ia("template");return t.innerHTML=Qs(e.replaceAll("<!>","<!---->")),t.content}function fr(e,t){var r=te;r.nodes===null&&(r.nodes={start:e,end:t,a:null,t:null})}function j(e,t){var r=(t&ls)!==0,n=(t&os)!==0,a,s=!e.startsWith("<!>");return()=>{a===void 0&&(a=Zs(s?e:"<!>"+e),r||(a=Nt(a)));var o=n||ra?document.importNode(a,!0):a.cloneNode(!0);if(r){var f=Nt(o),l=o.lastChild;fr(f,l)}else fr(o,o);return o}}function Tn(e=""){{var t=vt(e+"");return fr(t,t),t}}function Xs(){var e=document.createDocumentFragment(),t=document.createComment(""),r=vt();return e.append(t,r),fr(t,r),e}function C(e,t){e!==null&&e.before(t)}function z(e,t){var r=t==null?"":typeof t=="object"?t+"":t;r!==(e.__t??(e.__t=e.nodeValue))&&(e.__t=r,e.nodeValue=r+"")}function $s(e,t){return ei(e,t)}const yr=new Map;function ei(e,{target:t,anchor:r,props:n={},events:a,context:s,intro:o=!0,transformError:f}){Rs();var l=void 0,c=Bs(()=>{var v=r??t.appendChild(vt());ws(v,{pending:()=>{}},w=>{Me({});var m=He;s&&(m.c=s),a&&(n.$$events=a),l=e(w,n)||{},Re()},f);var p=new Set,b=w=>{for(var m=0;m<w.length;m++){var T=w[m];if(!p.has(T)){p.add(T);var u=Gs(T);for(const S of[t,document]){var _=yr.get(S);_===void 0&&(_=new Map,yr.set(S,_));var x=_.get(T);x===void 0?(S.addEventListener(T,Qr,{passive:u}),_.set(T,1)):_.set(T,x+1)}}}};return b(Cr(Ta)),Wr.add(b),()=>{var u;for(var w of p)for(const _ of[t,document]){var m=yr.get(_),T=m.get(w);--T==0?(_.removeEventListener(w,Qr),m.delete(w),m.size===0&&yr.delete(_)):m.set(w,T)}Wr.delete(b),v!==r&&((u=v.parentNode)==null||u.removeChild(v))}});return ti.set(l,c),l}let ti=new WeakMap;var Ge,nt,De,Dt,dr,_r,xr;class ri{constructor(t,r=!0){$e(this,"anchor");W(this,Ge,new Map);W(this,nt,new Map);W(this,De,new Map);W(this,Dt,new Set);W(this,dr,!0);W(this,_r,()=>{var t=H;if(d(this,Ge).has(t)){var r=d(this,Ge).get(t),n=d(this,nt).get(r);if(n)cn(n),d(this,Dt).delete(r);else{var a=d(this,De).get(r);a&&(d(this,nt).set(r,a.effect),d(this,De).delete(r),a.fragment.lastChild.remove(),this.anchor.before(a.fragment),n=a.effect)}for(const[s,o]of d(this,Ge)){if(d(this,Ge).delete(s),s===t)break;const f=d(this,De).get(o);f&&(xe(f.effect),d(this,De).delete(o))}for(const[s,o]of d(this,nt)){if(s===r||d(this,Dt).has(s))continue;const f=()=>{if(Array.from(d(this,Ge).values()).includes(s)){var c=document.createDocumentFragment();ha(o,c),c.append(vt()),d(this,De).set(s,{effect:o,fragment:c})}else xe(o);d(this,Dt).delete(s),d(this,nt).delete(s)};d(this,dr)||!n?(d(this,Dt).add(s),It(o,f,!1)):f()}}});W(this,xr,t=>{d(this,Ge).delete(t);const r=Array.from(d(this,Ge).values());for(const[n,a]of d(this,De))r.includes(n)||(xe(a.effect),d(this,De).delete(n))});this.anchor=t,J(this,dr,r)}ensure(t,r){var n=H,a=sa();if(r&&!d(this,nt).has(t)&&!d(this,De).has(t))if(a){var s=document.createDocumentFragment(),o=vt();s.append(o),d(this,De).set(t,{effect:Fe(()=>r(o)),fragment:s})}else d(this,nt).set(t,Fe(()=>r(this.anchor)));if(d(this,Ge).set(n,t),a){for(const[f,l]of d(this,nt))f===t?n.unskip_effect(l):n.skip_effect(l);for(const[f,l]of d(this,De))f===t?n.unskip_effect(l.effect):n.skip_effect(l.effect);n.oncommit(d(this,_r)),n.ondiscard(d(this,xr))}else d(this,_r).call(this)}}Ge=new WeakMap,nt=new WeakMap,De=new WeakMap,Dt=new WeakMap,dr=new WeakMap,_r=new WeakMap,xr=new WeakMap;function K(e,t,r=!1){var n=new ri(e),a=r?Qt:0;function s(o,f){n.ensure(o,f)}un(()=>{var o=!1;t((f,l=0)=>{o=!0,s(l,f)}),o||s(!1,null)},a)}function er(e,t){return t}function ni(e,t,r){for(var n=[],a=t.length,s,o=t.length,f=0;f<a;f++){let p=t[f];It(p,()=>{if(s){if(s.pending.delete(p),s.done.add(p),s.pending.size===0){var b=e.outrogroups;Zr(Cr(s.done)),b.delete(s),b.size===0&&(e.outrogroups=null)}}else o-=1},!1)}if(o===0){var l=n.length===0&&r!==null;if(l){var c=r,v=c.parentNode;Ls(v),v.append(c),e.items.clear()}Zr(t,!l)}else s={pending:new Set(t),done:new Set},(e.outrogroups??(e.outrogroups=new Set)).add(s)}function Zr(e,t=!0){for(var r=0;r<e.length;r++)xe(e[r],t)}var En;function Ne(e,t,r,n,a,s=null){var o=e,f=new Map,l=(t&Ln)!==0;if(l){var c=e;o=c.appendChild(vt())}var v=null,p=Zn(()=>{var _=r();return en(_)?_:_==null?[]:Cr(_)}),b,w=!0;function m(){u.fallback=v,ai(u,b,o,t,n),v!==null&&(b.length===0?(v.f&ft)===0?cn(v):(v.f^=ft,ar(v,null,o)):It(v,()=>{v=null}))}var T=un(()=>{b=i(p);for(var _=b.length,x=new Set,S=H,O=sa(),D=0;D<_;D+=1){var R=b[D],k=n(R,D),P=w?null:f.get(k);P?(P.v&&Xt(P.v,R),P.i&&Xt(P.i,D),O&&S.unskip_effect(P.e)):(P=si(f,w?o:En??(En=vt()),R,k,D,a,t,r),w||(P.e.f|=ft),f.set(k,P)),x.add(k)}if(_===0&&s&&!v&&(w?v=Fe(()=>s(o)):(v=Fe(()=>s(En??(En=vt()))),v.f|=ft)),_>x.size&&Ha(),!w)if(O){for(const[F,Z]of f)x.has(F)||S.skip_effect(Z.e);S.oncommit(m),S.ondiscard(()=>{})}else m();i(p)}),u={effect:T,items:f,outrogroups:null,fallback:v};w=!1}function nr(e){for(;e!==null&&(e.f&Xe)===0;)e=e.next;return e}function ai(e,t,r,n,a){var Z,ue,L,Y,q,X,ae,Q,se;var s=(n&ts)!==0,o=t.length,f=e.items,l=nr(e.effect.first),c,v=null,p,b=[],w=[],m,T,u,_;if(s)for(_=0;_<o;_+=1)m=t[_],T=a(m,_),u=f.get(T).e,(u.f&ft)===0&&((ue=(Z=u.nodes)==null?void 0:Z.a)==null||ue.measure(),(p??(p=new Set)).add(u));for(_=0;_<o;_+=1){if(m=t[_],T=a(m,_),u=f.get(T).e,e.outrogroups!==null)for(const U of e.outrogroups)U.pending.delete(u),U.done.delete(u);if((u.f&ft)!==0)if(u.f^=ft,u===l)ar(u,null,r);else{var x=v?v.next:l;u===e.effect.last&&(e.effect.last=u.prev),u.prev&&(u.prev.next=u.next),u.next&&(u.next.prev=u.prev),ht(e,v,u),ht(e,u,x),ar(u,x,r),v=u,b=[],w=[],l=nr(v.next);continue}if((u.f&Oe)!==0&&(cn(u),s&&((Y=(L=u.nodes)==null?void 0:L.a)==null||Y.unfix(),(p??(p=new Set)).delete(u))),u!==l){if(c!==void 0&&c.has(u)){if(b.length<w.length){var S=w[0],O;v=S.prev;var D=b[0],R=b[b.length-1];for(O=0;O<b.length;O+=1)ar(b[O],S,r);for(O=0;O<w.length;O+=1)c.delete(w[O]);ht(e,D.prev,R.next),ht(e,v,D),ht(e,R,S),l=S,v=R,_-=1,b=[],w=[]}else c.delete(u),ar(u,l,r),ht(e,u.prev,u.next),ht(e,u,v===null?e.effect.first:v.next),ht(e,v,u),v=u;continue}for(b=[],w=[];l!==null&&l!==u;)(c??(c=new Set)).add(l),w.push(l),l=nr(l.next);if(l===null)continue}(u.f&ft)===0&&b.push(u),v=u,l=nr(u.next)}if(e.outrogroups!==null){for(const U of e.outrogroups)U.pending.size===0&&(Zr(Cr(U.done)),(q=e.outrogroups)==null||q.delete(U));e.outrogroups.size===0&&(e.outrogroups=null)}if(l!==null||c!==void 0){var k=[];if(c!==void 0)for(u of c)(u.f&Oe)===0&&k.push(u);for(;l!==null;)(l.f&Oe)===0&&l!==e.fallback&&k.push(l),l=nr(l.next);var P=k.length;if(P>0){var F=(n&Ln)!==0&&o===0?r:null;if(s){for(_=0;_<P;_+=1)(ae=(X=k[_].nodes)==null?void 0:X.a)==null||ae.measure();for(_=0;_<P;_+=1)(se=(Q=k[_].nodes)==null?void 0:Q.a)==null||se.fix()}ni(e,k,F)}}s&&at(()=>{var U,le;if(p!==void 0)for(u of p)(le=(U=u.nodes)==null?void 0:U.a)==null||le.apply()})}function si(e,t,r,n,a,s,o,f){var l=(o&$a)!==0?(o&rs)===0?Ns(r,!1,!1):zt(r):null,c=(o&es)!==0?zt(a):null;return{v:l,i:c,e:Fe(()=>(s(t,l??r,c??a,f),()=>{e.delete(n)}))}}function ar(e,t,r){if(e.nodes)for(var n=e.nodes.start,a=e.nodes.end,s=t&&(t.f&ft)===0?t.nodes.start:r;n!==null;){var o=gr(n);if(s.before(n),n===a)return;n=o}}function ht(e,t,r){t===null?e.effect.first=r:t.next=r,r===null?e.effect.last=t:r.prev=t}function ii(e,t,r=!1,n=!1,a=!1){var s=e,o="";B(()=>{var f=te;if(o!==(o=t()??"")&&(f.nodes!==null&&(ca(f.nodes.start,f.nodes.end),f.nodes=null),o!=="")){var l=r?us:n?fs:void 0,c=ia(r?"svg":n?"math":"template",l);c.innerHTML=o;var v=r||n?c:c.content;if(fr(Nt(v),v.lastChild),r||n)for(;Nt(v);)s.before(Nt(v));else s.before(v)}})}const Sn=[...`
|
|
2
|
+
\r\f \v\uFEFF`];function li(e,t,r){var n=e==null?"":""+e;if(t&&(n=n?n+" "+t:t),r){for(var a of Object.keys(r))if(r[a])n=n?n+" "+a:a;else if(n.length)for(var s=a.length,o=0;(o=n.indexOf(a,o))>=0;){var f=o+s;(o===0||Sn.includes(n[o-1]))&&(f===n.length||Sn.includes(n[f]))?n=(o===0?"":n.substring(0,o))+n.substring(f+1):o=f}}return n===""?null:n}function oi(e,t){return e==null?null:String(e)}function je(e,t,r,n,a,s){var o=e.__className;if(o!==r||o===void 0){var f=li(r,n,s);f==null?e.removeAttribute("class"):e.className=f,e.__className=r}else if(s&&a!==s)for(var l in s){var c=!!s[l];(a==null||c!==!!a[l])&&e.classList.toggle(l,c)}return s}function vn(e,t,r,n){var a=e.__style;if(a!==t){var s=oi(t);s==null?e.removeAttribute("style"):e.style.cssText=s,e.__style=t}return n}function Ea(e,t,r=!1){if(e.multiple){if(t==null)return;if(!en(t))return cs();for(var n of e.options)n.selected=t.includes(lr(n));return}for(n of e.options){var a=lr(n);if(Ms(a,t)){n.selected=!0;return}}(!r||t!==void 0)&&(e.selectedIndex=-1)}function ui(e){var t=new MutationObserver(()=>{Ea(e,e.__value)});t.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),ln(()=>{t.disconnect()})}function xn(e,t,r=t){var n=new WeakSet,a=!0;la(e,"change",s=>{var o=s?"[selected]":":checked",f;if(e.multiple)f=[].map.call(e.querySelectorAll(o),lr);else{var l=e.querySelector(o)??e.querySelector("option:not([disabled])");f=l&&lr(l)}r(f),H!==null&&n.add(H)}),ua(()=>{var s=t();if(e===document.activeElement){var o=Er??H;if(n.has(o))return}if(Ea(e,s,a),a&&s===void 0){var f=e.querySelector(":checked");f!==null&&(s=lr(f),r(s))}e.__value=s,a=!1}),ui(e)}function lr(e){return"__value"in e?e.__value:e.value}const fi=Symbol("is custom element"),ci=Symbol("is html"),vi=Ba?"progress":"PROGRESS";function di(e,t){var r=Sa(e);r.value===(r.value=t??void 0)||e.value===t&&(t!==0||e.nodeName!==vi)||(e.value=t??"")}function Cn(e,t,r,n){var a=Sa(e);a[t]!==(a[t]=r)&&(r==null?e.removeAttribute(t):typeof r!="string"&&_i(e).includes(t)?e[t]=r:e.setAttribute(t,r))}function Sa(e){return e.__attributes??(e.__attributes={[fi]:e.nodeName.includes("-"),[ci]:e.namespaceURI===zn})}var jn=new Map;function _i(e){var t=e.getAttribute("is")||e.nodeName,r=jn.get(t);if(r)return r;jn.set(t,r=[]);for(var n,a=e,s=Element.prototype;s!==a;){n=Ia(a);for(var o in n)n[o].set&&r.push(o);a=Nn(a)}return r}function or(e,t,r=t){var n=new WeakSet;la(e,"input",async a=>{var s=a?e.defaultValue:e.value;if(s=Rr(e)?Lr(s):s,r(s),H!==null&&n.add(H),await Js(),s!==(s=t())){var o=e.selectionStart,f=e.selectionEnd,l=e.value.length;if(e.value=s??"",f!==null){var c=e.value.length;o===f&&f===l&&c>l?(e.selectionStart=c,e.selectionEnd=c):(e.selectionStart=o,e.selectionEnd=Math.min(f,c))}}}),Or(t)==null&&e.value&&(r(Rr(e)?Lr(e.value):e.value),H!==null&&n.add(H)),on(()=>{var a=t();if(e===document.activeElement){var s=Er??H;if(n.has(s))return}Rr(e)&&a===Lr(e.value)||e.type==="date"&&!a&&!e.value||a!==e.value&&(e.value=a??"")})}function Rr(e){var t=e.type;return t==="number"||t==="range"}function Lr(e){return e===""?null:+e}function Pn(e,t){return e===t||(e==null?void 0:e[Ot])===t}function Xr(e={},t,r,n){return ua(()=>{var a,s;return on(()=>{a=s,s=[],Or(()=>{e!==r(...s)&&(t(e,...s),a&&Pn(r(...a),e)&&t(null,...a))})}),()=>{at(()=>{s&&Pn(r(...s),e)&&t(null,...s)})}}),e}let br=!1;function hi(e){var t=br;try{return br=!1,[e(),br]}finally{br=t}}function tr(e,t,r,n){var x;var a=(r&ss)!==0,s=(r&is)!==0,o=n,f=!0,l=()=>(f&&(f=!1,o=s?Or(n):n),o),c;if(a){var v=Ot in e||qa in e;c=((x=Bt(e,t))==null?void 0:x.set)??(v&&t in e?S=>e[t]=S:void 0)}var p,b=!1;a?[p,b]=hi(()=>e[t]):p=e[t],p===void 0&&n!==void 0&&(p=l(),c&&(Ga(),c(p)));var w;if(w=()=>{var S=e[t];return S===void 0?l():(f=!0,S)},(r&as)===0)return w;if(c){var m=e.$$legacy;return(function(S,O){return arguments.length>0?((!O||m||b)&&c(O?w():S),S):w()})}var T=!1,u=((r&ns)!==0?Ar:Zn)(()=>(T=!1,w()));a&&i(u);var _=te;return(function(S,O){if(arguments.length>0){const D=O?i(u):a?be(S):S;return h(u,D),T=!0,o!==void 0&&(o=D),S}return kt&&T||(_.f&ct)!==0?u.v:i(u)})}const gi="5";var On;typeof window<"u"&&((On=window.__svelte??(window.__svelte={})).v??(On.v=new Set)).add(gi);async function et(e,t){const r=await fetch(`/api${e}`,{headers:{"Content-Type":"application/json"},...t});if(!r.ok){const n=await r.json().catch(()=>({error:r.statusText}));throw new Error(n.error||"Request failed")}return r.json()}const qe={getProjects:()=>et("/projects"),getProject:e=>et(`/projects/${e}`),updateProject:(e,t)=>et(`/projects/${e}`,{method:"PATCH",body:JSON.stringify(t)}),getTasks:e=>et(`/projects/${e}/tasks?include_done=true`),createTask:(e,t)=>et(`/projects/${e}/tasks`,{method:"POST",body:JSON.stringify(t)}),updateTask:(e,t)=>et(`/tasks/${e}`,{method:"PATCH",body:JSON.stringify(t)}),deleteTask:e=>et(`/tasks/${e}`,{method:"DELETE"}),getNotes:e=>et(`/projects/${e}/notes`),getDecisions:e=>et(`/projects/${e}/decisions`),getTaskHistory:e=>et(`/tasks/${e}/history`)};var pi=j('<input class="rename-input svelte-1kanzy0" type="text"/>'),mi=j('<span class="project-slug svelte-1kanzy0"> </span>'),yi=j('<span class="project-name svelte-1kanzy0"> </span> <!> <button class="rename-btn svelte-1kanzy0" title="Rename project">✎</button>',1),bi=j('<div class="project-area svelte-1kanzy0"><!></div>'),wi=j('<header class="toolbar svelte-1kanzy0"><!></header>');function ki(e,t){Me(t,!0);let r=I(!1),n=I("");const a=oe(()=>t.projects.find(p=>p.id===t.selectedId));function s(){i(a)&&(h(n,i(a).name,!0),h(r,!0))}function o(){if(!i(a)||!i(r))return;const p=i(n).trim();p&&p!==i(a).name&&t.onRenamed(i(a).id,p),h(r,!1)}function f(p){p.key==="Enter"&&o(),p.key==="Escape"&&h(r,!1)}var l=wi(),c=y(l);{var v=p=>{var b=bi(),w=y(b);{var m=u=>{var _=pi();an(_),Ce("blur",_,o),ee("keydown",_,f),or(_,()=>i(n),x=>h(n,x)),C(u,_)},T=u=>{var _=yi(),x=Ft(_),S=y(x),O=E(x,2);{var D=k=>{var P=mi(),F=y(P);B(()=>z(F,`[${i(a).slug??""}]`)),C(k,P)};K(O,k=>{i(a).slug&&k(D)})}var R=E(O,2);B(()=>z(S,i(a).name)),ee("click",R,s),C(u,_)};K(w,u=>{i(r)?u(m):u(T,!1)})}C(p,b)};K(c,p=>{i(a)&&p(v)})}C(e,l),Re()}Ve(["keydown","click"]);var Ti=j('<span class="brand svelte-rig7vt"><span class="prompt svelte-rig7vt">></span> mindpm</span>'),Ei=j('<span class="task-count svelte-rig7vt"> </span>'),Si=j('<span class="project-name svelte-rig7vt"> </span> <!>',1),xi=j('<span class="project-slug-collapsed svelte-rig7vt"> </span>'),Ci=j('<button><span class="status-dot svelte-rig7vt"></span> <!></button>'),ji=j('<div class="sidebar-footer svelte-rig7vt"><span class="footer-hint svelte-rig7vt"> </span></div>'),Pi=j('<aside><div class="sidebar-header svelte-rig7vt"><!> <button class="collapse-btn svelte-rig7vt"> </button></div> <nav class="project-list svelte-rig7vt"></nav> <!></aside>');function Ai(e,t){Me(t,!0);const r="mindpm_sidebar_collapsed";let n=I(localStorage.getItem(r)==="true");function a(){h(n,!i(n)),localStorage.setItem(r,String(i(n)))}const s={active:"var(--primary)",paused:"#d29922",completed:"var(--text-muted)",archived:"var(--border-bright)"};var o=Pi();let f;var l=y(o),c=y(l);{var v=u=>{var _=Ti();C(u,_)};K(c,u=>{i(n)||u(v)})}var p=E(c,2),b=y(p),w=E(l,2);Ne(w,21,()=>t.projects,u=>u.id,(u,_)=>{var x=Ci();let S;var O=y(x),D=E(O,2);{var R=P=>{var F=Si(),Z=Ft(F),ue=y(Z),L=E(Z,2);{var Y=q=>{var X=Ei(),ae=y(X);B(()=>z(ae,i(_).active_task_count)),C(q,X)};K(L,q=>{(i(_).active_task_count??0)>0&&q(Y)})}B(()=>z(ue,i(_).name)),C(P,F)},k=P=>{var F=Xs(),Z=Ft(F);{var ue=L=>{var Y=xi(),q=y(Y);B(()=>z(q,i(_).slug)),C(L,Y)};K(Z,L=>{i(_).slug&&L(ue)})}C(P,F)};K(D,P=>{i(n)?P(k,!1):P(R)})}B(()=>{S=je(x,1,"project-item svelte-rig7vt",null,S,{active:i(_).id===t.selectedId}),Cn(x,"title",i(n)?i(_).name:void 0),vn(O,`background: ${s[i(_).status]??"var(--text-muted)"??""}`)}),ee("click",x,()=>t.onSelect(i(_).id)),C(u,x)});var m=E(w,2);{var T=u=>{var _=ji(),x=y(_),S=y(x);B(()=>z(S,`// ${t.projects.length??""} project${t.projects.length!==1?"s":""}`)),C(u,_)};K(m,u=>{i(n)||u(T)})}B(()=>{f=je(o,1,"sidebar svelte-rig7vt",null,f,{collapsed:i(n)}),Cn(p,"title",i(n)?"Expand sidebar":"Collapse sidebar"),z(b,i(n)?"»":"«")}),ee("click",p,a),C(e,o),Re()}Ve(["click"]);const Di=[{status:"todo",label:"Todo"},{status:"in_progress",label:"In Progress"},{status:"blocked",label:"Blocked"},{status:"done",label:"Done"},{status:"cancelled",label:"Cancelled"}],xa=["critical","high","medium","low"];var Oi=j('<span class="task-id svelte-35ep21"> </span>'),Ni=j('<div class="card-desc svelte-35ep21"> </div>'),Ii=j('<span class="tag svelte-35ep21"> </span>'),Mi=j('<div class="card-tags svelte-35ep21"></div>'),Ri=j('<span class="badge badge-blocked svelte-35ep21">⊘ blocked</span>'),Li=j('<span class="badge badge-subtasks svelte-35ep21"> </span>'),zi=j('<div class="card-footer svelte-35ep21"><!> <!></div>'),Fi=j('<div draggable="true" role="button" tabindex="0"><div class="card-header svelte-35ep21"><span> </span> <div class="card-header-right svelte-35ep21"><!> <button class="delete-btn svelte-35ep21" title="Delete task">×</button></div></div> <div class="card-title svelte-35ep21"> </div> <!> <!> <!></div>');function qi(e,t){Me(t,!0);let r=tr(t,"subtaskCount",3,0),n=I(!1);function a(L){if(!L)return[];try{return JSON.parse(L)}catch{return[]}}const s=oe(()=>a(t.task.tags)),o=oe(()=>`priority-${t.task.priority}`),f=oe(()=>()=>{if(!t.task.blocked_by)return!1;try{const L=JSON.parse(t.task.blocked_by);return Array.isArray(L)&&L.length>0}catch{return!1}});function l(L){h(n,!0),t.onDragStart(L,t.task)}function c(){h(n,!1)}var v=Fi();let p;var b=y(v),w=y(b),m=y(w),T=E(w,2),u=y(T);{var _=L=>{var Y=Oi(),q=y(Y);B(()=>z(q,t.task.short_id)),C(L,Y)};K(u,L=>{t.task.short_id&&L(_)})}var x=E(u,2),S=E(b,2),O=y(S),D=E(S,2);{var R=L=>{var Y=Ni(),q=y(Y);B(()=>z(q,t.task.description)),C(L,Y)};K(D,L=>{t.task.description&&L(R)})}var k=E(D,2);{var P=L=>{var Y=Mi();Ne(Y,21,()=>i(s),er,(q,X)=>{var ae=Ii(),Q=y(ae);B(()=>z(Q,i(X))),C(q,ae)}),C(L,Y)};K(k,L=>{i(s).length>0&&L(P)})}var F=E(k,2);{var Z=L=>{var Y=zi(),q=y(Y);{var X=U=>{var le=Ri();C(U,le)},ae=oe(()=>i(f)());K(q,U=>{i(ae)&&U(X)})}var Q=E(q,2);{var se=U=>{var le=Li(),$=y(le);B(()=>z($,`⑂ ${r()??""}`)),C(U,le)};K(Q,U=>{r()>0&&U(se)})}C(L,Y)},ue=oe(()=>i(f)()||r()>0);K(F,L=>{i(ue)&&L(Z)})}B(()=>{p=je(v,1,`card ${i(o)??""}`,"svelte-35ep21",p,{dragging:i(n)}),je(w,1,`priority-badge ${i(o)??""}`,"svelte-35ep21"),z(m,t.task.priority),z(O,t.task.title)}),Ce("dragstart",v,l),Ce("dragend",v,c),ee("click",v,()=>t.onEdit(t.task)),ee("keydown",v,L=>{L.key==="Enter"&&t.onEdit(t.task)}),ee("click",x,L=>{L.stopPropagation(),t.onDelete(t.task)}),C(e,v),Re()}Ve(["click","keydown"]);var Bi=j('<div class="column-collapsed svelte-zswfgn"><button class="expand-btn svelte-zswfgn" title="Expand column">»</button> <div class="collapsed-label svelte-zswfgn"><span> </span> <span class="collapsed-text svelte-zswfgn"> </span></div></div>'),Ki=j('<button class="add-btn svelte-zswfgn" title="Add task">+</button>'),Hi=j('<div class="wip-banner svelte-zswfgn"> </div>'),Ui=j('<div class="column-header svelte-zswfgn"><h3 class="svelte-zswfgn"><span class="chevron svelte-zswfgn">▸</span> <span> </span></h3> <div class="header-actions svelte-zswfgn"><!> <button class="collapse-btn svelte-zswfgn" title="Collapse column">«</button></div></div> <!> <div class="card-list svelte-zswfgn"></div>',1),Vi=j('<div role="list"><!></div>');function Ji(e,t){Me(t,!0);const r=5,n="mindpm_collapsed_cols";let a=I(!1);function s(){try{const x=localStorage.getItem(n);return(x?JSON.parse(x):[]).includes(t.status)}catch{return!1}}function o(x){try{const S=localStorage.getItem(n),O=S?JSON.parse(S):[],D=x?[...new Set([...O,t.status])]:O.filter(R=>R!==t.status);localStorage.setItem(n,JSON.stringify(D))}catch{}}let f=I(be(s()));function l(){h(f,!i(f)),o(i(f))}const c=oe(()=>t.status==="in_progress"&&t.tasks.length>r);function v(x){x.preventDefault(),x.dataTransfer&&(x.dataTransfer.dropEffect="move"),h(a,!0)}function p(){h(a,!1)}function b(x){x.preventDefault(),h(a,!1),t.onDrop(t.status)}var w=Vi();let m;var T=y(w);{var u=x=>{var S=Bi(),O=y(S),D=E(O,2),R=y(D);let k;var P=y(R),F=E(R,2),Z=y(F);B(()=>{k=je(R,1,"collapsed-count svelte-zswfgn",null,k,{wip:i(c)}),z(P,`[${t.tasks.length??""}]`),z(Z,t.label)}),ee("click",O,l),C(x,S)},_=x=>{var S=Ui(),O=Ft(S),D=y(O),R=E(y(D)),k=E(R);let P;var F=y(k),Z=E(D,2),ue=y(Z);{var L=Q=>{var se=Ki();ee("click",se,()=>t.onAddTask(t.status)),C(Q,se)};K(ue,Q=>{t.status==="todo"&&Q(L)})}var Y=E(ue,2),q=E(O,2);{var X=Q=>{var se=Hi(),U=y(se);B(()=>z(U,`WIP limit exceeded (${t.tasks.length??""}/5)`)),C(Q,se)};K(q,Q=>{i(c)&&Q(X)})}var ae=E(q,2);Ne(ae,21,()=>t.tasks,Q=>Q.id,(Q,se)=>{{let U=oe(()=>t.subtaskCounts.get(i(se).id)??0);qi(Q,{get task(){return i(se)},get subtaskCount(){return i(U)},get onEdit(){return t.onEdit},get onDelete(){return t.onDelete},get onDragStart(){return t.onDragStart}})}}),B(()=>{z(R,` ${t.label??""} `),P=je(k,1,"count svelte-zswfgn",null,P,{wip:i(c)}),z(F,`[${t.tasks.length??""}${i(c)?" ⚠":""}]`)}),ee("click",Y,l),C(x,S)};K(T,x=>{i(f)?x(u):x(_,!1)})}B(()=>m=je(w,1,"column svelte-zswfgn",null,m,{"drag-over":i(a),collapsed:i(f),"wip-warning":i(c)})),Ce("dragover",w,v),Ce("dragleave",w,p),Ce("drop",w,b),C(e,w),Re()}Ve(["click"]);var Yi=j('<span class="modal-task-id svelte-1gmf2hi"> </span>'),Gi=j("<option> </option>"),Wi=j('<div class="field svelte-1gmf2hi"><label for="status" class="svelte-1gmf2hi">Status</label> <select id="status" class="svelte-1gmf2hi"><option>Todo</option><option>In Progress</option><option>Blocked</option><option>Done</option><option>Cancelled</option></select></div>'),Qi=j('<div class="history-item svelte-1gmf2hi"><span class="history-dot svelte-1gmf2hi"></span> <div class="history-body svelte-1gmf2hi"><span class="history-event svelte-1gmf2hi"><!></span> <span class="history-time svelte-1gmf2hi"> </span></div></div>'),Zi=j('<div class="history-section svelte-1gmf2hi"><h3 class="history-heading svelte-1gmf2hi">History</h3> <div class="history-list svelte-1gmf2hi"></div></div>'),Xi=j('<div class="modal-backdrop svelte-1gmf2hi"><div class="modal svelte-1gmf2hi"><div class="modal-header svelte-1gmf2hi"><div class="modal-title svelte-1gmf2hi"><h2 class="svelte-1gmf2hi"> </h2> <!></div> <button class="close-btn svelte-1gmf2hi">×</button></div> <form><div class="field svelte-1gmf2hi"><label for="title" class="svelte-1gmf2hi">Title</label> <input id="title" type="text" placeholder="Task title" required="" class="svelte-1gmf2hi"/></div> <div class="field svelte-1gmf2hi"><label for="description" class="svelte-1gmf2hi">Description</label> <textarea id="description" placeholder="Optional description" rows="3" class="svelte-1gmf2hi"></textarea></div> <div class="row svelte-1gmf2hi"><div class="field svelte-1gmf2hi"><label for="priority" class="svelte-1gmf2hi">Priority</label> <select id="priority" class="svelte-1gmf2hi"></select></div> <!></div> <div class="field svelte-1gmf2hi"><label for="tags" class="svelte-1gmf2hi">Tags <span class="hint svelte-1gmf2hi">(comma-separated)</span></label> <input id="tags" type="text" placeholder="e.g. backend, auth, bug" class="svelte-1gmf2hi"/></div> <div class="actions svelte-1gmf2hi"><button type="button" class="btn-cancel svelte-1gmf2hi">Cancel</button> <button type="submit" class="btn-save svelte-1gmf2hi"> </button></div></form> <!></div></div>');function $i(e,t){Me(t,!0);let r=tr(t,"defaultStatus",3,"todo"),n=I(""),a=I(""),s=I("medium"),o=I("todo"),f=I(""),l=I(be([]));st(()=>{var N,M,re,g,A;if(h(n,((N=t.task)==null?void 0:N.title)??"",!0),h(a,((M=t.task)==null?void 0:M.description)??"",!0),h(s,((re=t.task)==null?void 0:re.priority)??"medium",!0),h(o,((g=t.task)==null?void 0:g.status)??r(),!0),(A=t.task)!=null&&A.tags)try{h(f,JSON.parse(t.task.tags).join(", "),!0)}catch{h(f,"")}else h(f,"")}),st(()=>{t.task!==null?qe.getTaskHistory(t.task.id).then(N=>{h(l,N,!0)}).catch(()=>{h(l,[],!0)}):h(l,[],!0)});const c=oe(()=>t.task!==null);function v(N){switch(N.event){case"created":return"<b>created</b>";case"status_changed":return`status <b>${N.old_value}</b> → <b>${N.new_value}</b>`;case"priority_changed":return`priority <b>${N.old_value}</b> → <b>${N.new_value}</b>`;case"title_changed":return"title renamed";default:return N.event.replace(/_/g," ")}}function p(N){return new Date(N.replace(" ","T")+"Z").toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function b(N){N.preventDefault();const M=i(n).trim();if(!M)return;const re=i(f).split(",").map(g=>g.trim()).filter(Boolean);t.onSave({title:M,description:i(a).trim(),priority:i(s),...i(c)?{status:i(o)}:{},tags:re})}function w(N){N.target.classList.contains("modal-backdrop")&&t.onClose()}function m(N){N.key==="Escape"&&t.onClose()}var T=Xi();Ce("keydown",wt,m);var u=y(T),_=y(u),x=y(_),S=y(x),O=y(S),D=E(S,2);{var R=N=>{var M=Yi(),re=y(M);B(()=>z(re,t.task.short_id)),C(N,M)};K(D,N=>{var M;(M=t.task)!=null&&M.short_id&&N(R)})}var k=E(x,2),P=E(_,2),F=y(P),Z=E(y(F),2);an(Z);var ue=E(F,2),L=E(y(ue),2),Y=E(ue,2),q=y(Y),X=E(y(q),2);Ne(X,21,()=>xa,er,(N,M)=>{var re=Gi(),g=y(re),A={};B(()=>{z(g,i(M)),A!==(A=i(M))&&(re.value=(re.__value=i(M))??"")}),C(N,re)});var ae=E(q,2);{var Q=N=>{var M=Wi(),re=E(y(M),2),g=y(re);g.value=g.__value="todo";var A=E(g);A.value=A.__value="in_progress";var V=E(A);V.value=V.__value="blocked";var ne=E(V);ne.value=ne.__value="done";var ye=E(ne);ye.value=ye.__value="cancelled",xn(re,()=>i(o),Nr=>h(o,Nr)),C(N,M)};K(ae,N=>{i(c)&&N(Q)})}var se=E(Y,2),U=E(y(se),2),le=E(se,2),$=y(le),ie=E($,2),fe=y(ie),we=E(P,2);{var ke=N=>{var M=Zi(),re=E(y(M),2);Ne(re,21,()=>i(l),g=>g.id,(g,A)=>{var V=Qi(),ne=E(y(V),2),ye=y(ne),Nr=y(ye);ii(Nr,()=>v(i(A)));var Ca=E(ye,2),ja=y(Ca);B(Pa=>z(ja,Pa),[()=>p(i(A).created_at)]),C(g,V)}),C(N,M)};K(we,N=>{i(c)&&i(l).length>0&&N(ke)})}B(()=>{z(O,i(c)?"Edit Task":"New Task"),z(fe,i(c)?"Save":"Create")}),ee("click",T,w),ee("click",k,function(...N){var M;(M=t.onClose)==null||M.apply(this,N)}),Ce("submit",P,b),or(Z,()=>i(n),N=>h(n,N)),or(L,()=>i(a),N=>h(a,N)),xn(X,()=>i(s),N=>h(s,N)),or(U,()=>i(f),N=>h(f,N)),ee("click",$,function(...N){var M;(M=t.onClose)==null||M.apply(this,N)}),C(e,T),Re()}Ve(["click"]);var el=j('<div class="modal-backdrop svelte-1efofyg"><div class="dialog svelte-1efofyg"><h3 class="svelte-1efofyg"> </h3> <p class="svelte-1efofyg"> </p> <div class="actions svelte-1efofyg"><button class="btn-cancel svelte-1efofyg">Cancel</button> <button class="btn-confirm svelte-1efofyg"> </button></div></div></div>');function tl(e,t){Me(t,!0);let r=tr(t,"confirmLabel",3,"Delete");function n(T){T.target.classList.contains("modal-backdrop")&&t.onCancel()}function a(T){T.key==="Escape"&&t.onCancel()}var s=el();Ce("keydown",wt,a);var o=y(s),f=y(o),l=y(f),c=E(f,2),v=y(c),p=E(c,2),b=y(p),w=E(b,2),m=y(w);B(()=>{z(l,t.title),z(v,t.message),z(m,r())}),ee("click",s,n),ee("click",b,function(...T){var u;(u=t.onCancel)==null||u.apply(this,T)}),ee("click",w,function(...T){var u;(u=t.onConfirm)==null||u.apply(this,T)}),C(e,s),Re()}Ve(["click"]);var rl=j('<button class="clear-input svelte-dhotvj">×</button>'),nl=j("<button> </button>"),al=j('<button><span class="tag-checkbox svelte-dhotvj"> </span> <span class="tag-name svelte-dhotvj"> </span></button>'),sl=j('<button class="tag-clear svelte-dhotvj">clear tags</button>'),il=j('<div class="tag-dropdown svelte-dhotvj"><!> <!></div>'),ll=j('<div class="filter-section tag-dropdown-wrapper svelte-dhotvj"><span class="filter-label svelte-dhotvj">tags:</span> <button><!></button> <!></div>'),ol=j('<button class="clear-all svelte-dhotvj"> </button>'),ul=j('<div class="filter-bar svelte-dhotvj"><div class="filter-search svelte-dhotvj"><span class="search-icon svelte-dhotvj">/</span> <input type="text" placeholder="search tasks..." class="svelte-dhotvj"/> <!></div> <div class="filter-section svelte-dhotvj"><span class="filter-label svelte-dhotvj">priority:</span> <div class="chip-group svelte-dhotvj"></div></div> <!> <!> <div class="shortcuts-hint svelte-dhotvj"><span class="svelte-dhotvj"><kbd class="svelte-dhotvj">N</kbd> new</span> <span class="svelte-dhotvj"><kbd class="svelte-dhotvj">/</kbd> search</span> <span class="svelte-dhotvj"><kbd class="svelte-dhotvj">Ctrl K</kbd> palette</span></div></div>');function fl(e,t){Me(t,!0);let r=tr(t,"focusSearch",15,null),n=I(null),a=I(!1),s=I(null);st(()=>{r(()=>{var D;return(D=i(n))==null?void 0:D.focus()})});const o=oe(()=>(t.searchQuery.trim()?1:0)+t.selectedPriorities.size+t.selectedTags.size),f={critical:"var(--priority-critical)",high:"var(--priority-high)",medium:"var(--priority-medium)",low:"var(--text-muted)"};function l(D){D.key==="Escape"&&h(a,!1)}function c(D){i(s)&&!i(s).contains(D.target)&&h(a,!1)}var v=ul();Ce("click",wt,c),Ce("keydown",wt,l);var p=y(v),b=E(y(p),2);Xr(b,D=>h(n,D),()=>i(n));var w=E(b,2);{var m=D=>{var R=rl();ee("click",R,()=>t.onSearchChange("")),C(D,R)};K(w,D=>{t.searchQuery&&D(m)})}var T=E(p,2),u=E(y(T),2);Ne(u,21,()=>xa,er,(D,R)=>{var k=nl();let P;var F=y(k);B(Z=>{P=je(k,1,"chip svelte-dhotvj",null,P,Z),vn(k,`--chip-color: ${f[i(R)]??""}`),z(F,i(R))},[()=>({active:t.selectedPriorities.has(i(R))})]),ee("click",k,()=>t.onPriorityToggle(i(R))),C(D,k)});var _=E(T,2);{var x=D=>{var R=ll(),k=E(y(R),2);let P;var F=y(k);{var Z=q=>{var X=Tn();B(()=>z(X,`[${t.selectedTags.size??""}] ▾`)),C(q,X)},ue=q=>{var X=Tn("all ▾");C(q,X)};K(F,q=>{t.selectedTags.size>0?q(Z):q(ue,!1)})}var L=E(k,2);{var Y=q=>{var X=il(),ae=y(X);Ne(ae,17,()=>t.allTags,er,(U,le)=>{var $=al();let ie;var fe=y($),we=y(fe),ke=E(fe,2),N=y(ke);B((M,re)=>{ie=je($,1,"tag-option svelte-dhotvj",null,ie,M),z(we,re),z(N,`#${i(le)??""}`)},[()=>({selected:t.selectedTags.has(i(le))}),()=>t.selectedTags.has(i(le))?"✓":" "]),ee("click",$,M=>{M.stopPropagation(),t.onTagToggle(i(le))}),C(U,$)});var Q=E(ae,2);{var se=U=>{var le=sl();ee("click",le,$=>{$.stopPropagation(),t.selectedTags.forEach(ie=>t.onTagToggle(ie))}),C(U,le)};K(Q,U=>{t.selectedTags.size>0&&U(se)})}C(q,X)};K(L,q=>{i(a)&&q(Y)})}Xr(R,q=>h(s,q),()=>i(s)),B(()=>P=je(k,1,"dropdown-trigger svelte-dhotvj",null,P,{active:t.selectedTags.size>0})),ee("click",k,q=>{q.stopPropagation(),h(a,!i(a))}),C(D,R)};K(_,D=>{t.allTags.length>0&&D(x)})}var S=E(_,2);{var O=D=>{var R=ol(),k=y(R);B(()=>z(k,`clear [${i(o)??""}]`)),ee("click",R,function(...P){var F;(F=t.onClear)==null||F.apply(this,P)}),C(D,R)};K(S,D=>{i(o)>0&&D(O)})}B(()=>di(b,t.searchQuery)),ee("input",b,D=>t.onSearchChange(D.target.value)),C(e,v),Re()}Ve(["input","click"]);var cl=j('<div class="board-message svelte-x7v2jt">Loading tasks...</div>'),vl=j('<div class="board-message error svelte-x7v2jt"> <button class="svelte-x7v2jt">Retry</button></div>'),dl=j('<div class="board svelte-x7v2jt"></div>'),_l=j('<!> <div class="board-wrapper svelte-x7v2jt"><!></div> <!> <!>',1);function hl(e,t){Me(t,!0);let r=tr(t,"triggerNewTask",3,!1),n=tr(t,"openTask",3,null),a=I(be([])),s=I(!0),o=I(null),f=I(!1),l=I(null),c=I("todo"),v=I(!1),p=I(null),b=I(null),w=I(""),m=I(be(new Set)),T=I(be(new Set));const u=oe(()=>()=>{const g=new Map;for(const A of i(a))A.parent_task_id&&g.set(A.parent_task_id,(g.get(A.parent_task_id)??0)+1);return g}),_=oe(()=>()=>{const g=new Set;for(const A of i(a))if(A.tags)try{for(const V of JSON.parse(A.tags))g.add(V)}catch{}return[...g].sort()}),x=oe(()=>()=>{let g=i(a);const A=i(w).trim().toLowerCase();return A&&(g=g.filter(V=>V.title.toLowerCase().includes(A)||(V.description??"").toLowerCase().includes(A)||(V.short_id??"").toLowerCase().includes(A))),i(m).size>0&&(g=g.filter(V=>i(m).has(V.priority))),i(T).size>0&&(g=g.filter(V=>{if(!V.tags)return!1;try{return JSON.parse(V.tags).some(ye=>i(T).has(ye))}catch{return!1}})),g}),S={critical:0,high:1,medium:2,low:3},O=oe(()=>Di.map(g=>{const A=i(x)().filter(V=>V.status===g.status);return g.status==="done"||g.status==="cancelled"?A.sort((V,ne)=>(ne.updated_at??"").localeCompare(V.updated_at??"")):A.sort((V,ne)=>{const ye=(S[V.priority]??3)-(S[ne.priority]??3);return ye!==0?ye:(ne.created_at??"").localeCompare(V.created_at??"")}),{...g,tasks:A}}));function D(g){const A=new Set(i(m));A.has(g)?A.delete(g):A.add(g),h(m,A,!0)}function R(g){const A=new Set(i(T));A.has(g)?A.delete(g):A.add(g),h(T,A,!0)}function k(){h(w,""),h(m,new Set,!0),h(T,new Set,!0)}let P=I(null);function F(g){var ne;const A=g.target.tagName;A==="INPUT"||A==="TEXTAREA"||A==="SELECT"||g.ctrlKey||g.metaKey||g.altKey||(g.key==="n"||g.key==="N"?(g.preventDefault(),Y("todo")):g.key==="/"&&(g.preventDefault(),(ne=i(P))==null||ne()))}st(()=>{var g;r()&&(Y("todo"),(g=t.onNewTaskTriggered)==null||g.call(t))}),st(()=>{var g;n()&&(h(l,n()),h(f,!0),(g=t.onOpenTaskHandled)==null||g.call(t))});async function Z(){h(s,!0),h(o,null);try{h(a,await qe.getTasks(t.project.id),!0)}catch(g){h(o,g.message,!0)}finally{h(s,!1)}}st(()=>{t.project.id,Z()});function ue(g,A){h(b,A,!0),g.dataTransfer&&(g.dataTransfer.effectAllowed="move",g.dataTransfer.setData("text/plain",A.id))}async function L(g){if(!i(b)||i(b).status===g){h(b,null);return}const A=i(b),V=A.status;h(b,null);const ne=i(a).findIndex(ye=>ye.id===A.id);ne!==-1&&(i(a)[ne]={...i(a)[ne],status:g});try{await qe.updateTask(A.id,{status:g})}catch(ye){ne!==-1&&(i(a)[ne]={...i(a)[ne],status:V}),h(o,ye.message,!0)}}function Y(g){h(l,null),h(c,g,!0),h(f,!0)}function q(g){h(l,g,!0),h(f,!0)}async function X(g){try{if(i(l)){const A=await qe.updateTask(i(l).id,{title:g.title,description:g.description||null,priority:g.priority,status:g.status,tags:g.tags.length>0?g.tags.join(","):null}),V=i(a).findIndex(ne=>ne.id===i(l).id);V!==-1&&(i(a)[V]=A)}else{const A=await qe.createTask(t.project.id,{title:g.title,description:g.description||void 0,priority:g.priority,tags:g.tags.length>0?g.tags:void 0});h(a,[A,...i(a)],!0)}h(f,!1),h(l,null)}catch(A){h(o,A.message,!0)}}function ae(g){h(p,g,!0),h(v,!0)}async function Q(){if(i(p))try{await qe.deleteTask(i(p).id),h(a,i(a).filter(g=>g.id!==i(p).id&&g.parent_task_id!==i(p).id),!0),h(v,!1),h(p,null)}catch(g){h(o,g.message,!0)}}var se=_l();Ce("keydown",wt,F);var U=Ft(se);{let g=oe(()=>i(_)());fl(U,{get allTags(){return i(g)},get searchQuery(){return i(w)},get selectedPriorities(){return i(m)},get selectedTags(){return i(T)},onSearchChange:A=>{h(w,A,!0)},onPriorityToggle:D,onTagToggle:R,onClear:k,get focusSearch(){return i(P)},set focusSearch(A){h(P,A,!0)}})}var le=E(U,2),$=y(le);{var ie=g=>{var A=cl();C(g,A)},fe=g=>{var A=vl(),V=y(A),ne=E(V);B(()=>z(V,`${i(o)??""} `)),ee("click",ne,()=>{h(o,null),Z()}),C(g,A)},we=g=>{var A=dl();Ne(A,21,()=>i(O),V=>V.status,(V,ne)=>{{let ye=oe(()=>i(u)());Ji(V,{get status(){return i(ne).status},get label(){return i(ne).label},get tasks(){return i(ne).tasks},get subtaskCounts(){return i(ye)},onEdit:q,onDelete:ae,onDragStart:ue,onDrop:L,onAddTask:Y})}}),C(g,A)};K($,g=>{i(s)?g(ie):i(o)?g(fe,1):g(we,!1)})}var ke=E(le,2);{var N=g=>{$i(g,{get task(){return i(l)},get projectId(){return t.project.id},get defaultStatus(){return i(c)},onSave:X,onClose:()=>{h(f,!1),h(l,null)}})};K(ke,g=>{i(f)&&g(N)})}var M=E(ke,2);{var re=g=>{tl(g,{title:"Delete Task",get message(){return`Are you sure you want to delete "${i(p).title??""}"? This cannot be undone.`},onConfirm:Q,onCancel:()=>{h(v,!1),h(p,null)}})};K(M,g=>{i(v)&&i(p)&&g(re)})}C(e,se),Re()}Ve(["click"]);var gl=j('<div class="state-msg svelte-mwtig8"><span class="prompt svelte-mwtig8">></span> loading notes...</div>'),pl=j('<div class="state-msg err svelte-mwtig8"> </div>'),ml=j('<div class="state-msg muted svelte-mwtig8">// no notes yet — use add_note via MCP tools</div>'),yl=j('<span class="tag svelte-mwtig8"> </span>'),bl=j('<div class="tags svelte-mwtig8"></div>'),wl=j('<span class="task-link svelte-mwtig8"> </span>'),kl=j('<div class="card-footer svelte-mwtig8"><!> <!></div>'),Tl=j('<div class="card svelte-mwtig8"><div class="card-header svelte-mwtig8"><span class="category svelte-mwtig8"> </span> <span class="date svelte-mwtig8"> </span></div> <div class="content svelte-mwtig8"> </div> <!></div>'),El=j('<div class="list svelte-mwtig8"></div>'),Sl=j('<div class="view svelte-mwtig8"><!></div>');function xl(e,t){Me(t,!0);let r=I(be([])),n=I(be([])),a=I(!0),s=I(null);st(()=>{h(a,!0),h(s,null),Promise.all([qe.getNotes(t.projectId),qe.getTasks(t.projectId)]).then(([u,_])=>{h(r,u,!0),h(n,_,!0)}).catch(u=>{h(s,u.message,!0)}).finally(()=>{h(a,!1)})});const o=oe(()=>new Map(i(n).map(u=>[u.id,u]))),f={general:"var(--text-muted)",architecture:"#3d98f4",bug:"var(--danger)",idea:"var(--priority-high)",research:"#a371f7",meeting:"var(--text-dim)",review:"var(--primary)"};function l(u){if(!u)return[];try{return JSON.parse(u)}catch{return[]}}function c(u){return new Date(u.replace(" ","T")+"Z").toLocaleDateString(void 0,{month:"short",day:"numeric",year:"numeric"})}var v=Sl(),p=y(v);{var b=u=>{var _=gl();C(u,_)},w=u=>{var _=pl(),x=y(_);B(()=>z(x,`[error] ${i(s)??""}`)),C(u,_)},m=u=>{var _=ml();C(u,_)},T=u=>{var _=El();Ne(_,21,()=>i(r),x=>x.id,(x,S)=>{const O=oe(()=>i(S).task_id?i(o).get(i(S).task_id):null),D=oe(()=>l(i(S).tags));var R=Tl(),k=y(R),P=y(k),F=y(P),Z=E(P,2),ue=y(Z),L=E(k,2),Y=y(L),q=E(L,2);{var X=ae=>{var Q=kl(),se=y(Q);{var U=ie=>{var fe=bl();Ne(fe,21,()=>i(D),er,(we,ke)=>{var N=yl(),M=y(N);B(()=>z(M,i(ke))),C(we,N)}),C(ie,fe)};K(se,ie=>{i(D).length>0&&ie(U)})}var le=E(se,2);{var $=ie=>{var fe=wl(),we=y(fe);B(ke=>z(we,`→ ${ke??""}: ${i(O).title??""}`),[()=>i(O).short_id??i(O).id.slice(0,8)]),ee("click",fe,()=>t.onOpenTask(i(O))),C(ie,fe)};K(le,ie=>{i(O)&&ie($)})}C(ae,Q)};K(q,ae=>{(i(D).length>0||i(O))&&ae(X)})}B(ae=>{vn(P,`color: ${f[i(S).category]??"var(--text-muted)"??""}`),z(F,i(S).category),z(ue,ae),z(Y,i(S).content)},[()=>c(i(S).created_at)]),C(x,R)}),C(u,_)};K(p,u=>{i(a)?u(b):i(s)?u(w,1):i(r).length===0?u(m,2):u(T,!1)})}C(e,v),Re()}Ve(["click"]);var Cl=j('<div class="state-msg svelte-1nwykvu"><span class="prompt svelte-1nwykvu">></span> loading decisions...</div>'),jl=j('<div class="state-msg err svelte-1nwykvu"> </div>'),Pl=j('<div class="state-msg muted svelte-1nwykvu">// no decisions yet — use log_decision via MCP tools</div>'),Al=j('<div class="reasoning svelte-1nwykvu"> </div>'),Dl=j('<div class="alts svelte-1nwykvu"> </div>'),Ol=j('<span class="tag svelte-1nwykvu"> </span>'),Nl=j('<div class="tags svelte-1nwykvu"></div>'),Il=j('<span class="task-link svelte-1nwykvu"> </span>'),Ml=j('<div class="card-footer svelte-1nwykvu"><!> <!></div>'),Rl=j('<div class="card svelte-1nwykvu"><div class="card-header svelte-1nwykvu"><span class="title svelte-1nwykvu"> </span> <span class="date svelte-1nwykvu"> </span></div> <div class="decision-text svelte-1nwykvu"> </div> <!> <!> <!></div>'),Ll=j('<div class="list svelte-1nwykvu"></div>'),zl=j('<div class="view svelte-1nwykvu"><!></div>');function Fl(e,t){Me(t,!0);let r=I(be([])),n=I(be([])),a=I(!0),s=I(null);st(()=>{h(a,!0),h(s,null),Promise.all([qe.getDecisions(t.projectId),qe.getTasks(t.projectId)]).then(([u,_])=>{h(r,u,!0),h(n,_,!0)}).catch(u=>{h(s,u.message,!0)}).finally(()=>{h(a,!1)})});const o=oe(()=>new Map(i(n).map(u=>[u.id,u])));function f(u){if(!u)return[];try{return JSON.parse(u)}catch{return[]}}function l(u){if(!u)return[];try{return JSON.parse(u)}catch{return[]}}function c(u){return new Date(u.replace(" ","T")+"Z").toLocaleDateString(void 0,{month:"short",day:"numeric",year:"numeric"})}var v=zl(),p=y(v);{var b=u=>{var _=Cl();C(u,_)},w=u=>{var _=jl(),x=y(_);B(()=>z(x,`[error] ${i(s)??""}`)),C(u,_)},m=u=>{var _=Pl();C(u,_)},T=u=>{var _=Ll();Ne(_,21,()=>i(r),x=>x.id,(x,S)=>{const O=oe(()=>i(S).task_id?i(o).get(i(S).task_id):null),D=oe(()=>f(i(S).alternatives)),R=oe(()=>l(i(S).tags));var k=Rl(),P=y(k),F=y(P),Z=y(F),ue=E(F,2),L=y(ue),Y=E(P,2),q=y(Y),X=E(Y,2);{var ae=$=>{var ie=Al(),fe=y(ie);B(()=>z(fe,i(S).reasoning)),C($,ie)};K(X,$=>{i(S).reasoning&&$(ae)})}var Q=E(X,2);{var se=$=>{var ie=Dl(),fe=y(ie);B(we=>z(fe,`Alternatives considered: ${we??""}`),[()=>i(D).join(", ")]),C($,ie)};K(Q,$=>{i(D).length>0&&$(se)})}var U=E(Q,2);{var le=$=>{var ie=Ml(),fe=y(ie);{var we=M=>{var re=Nl();Ne(re,21,()=>i(R),er,(g,A)=>{var V=Ol(),ne=y(V);B(()=>z(ne,i(A))),C(g,V)}),C(M,re)};K(fe,M=>{i(R).length>0&&M(we)})}var ke=E(fe,2);{var N=M=>{var re=Il(),g=y(re);B(A=>z(g,`→ ${A??""}: ${i(O).title??""}`),[()=>i(O).short_id??i(O).id.slice(0,8)]),ee("click",re,()=>t.onOpenTask(i(O))),C(M,re)};K(ke,M=>{i(O)&&M(N)})}C($,ie)};K(U,$=>{(i(R).length>0||i(O))&&$(le)})}B($=>{z(Z,i(S).title),z(L,$),z(q,i(S).decision)},[()=>c(i(S).created_at)]),C(x,k)}),C(u,_)};K(p,u=>{i(a)?u(b):i(s)?u(w,1):i(r).length===0?u(m,2):u(T,!1)})}C(e,v),Re()}Ve(["click"]);var ql=j('<div><span class="item-label svelte-1bm0yy4"> </span> <span class="item-hint svelte-1bm0yy4"> </span></div>'),Bl=j('<div class="palette-empty svelte-1bm0yy4">no commands match</div>'),Kl=j('<div class="palette-backdrop svelte-1bm0yy4"><div class="palette svelte-1bm0yy4"><div class="palette-input-row svelte-1bm0yy4"><span class="palette-prompt svelte-1bm0yy4">></span> <input placeholder="type a command..." class="svelte-1bm0yy4"/></div> <div class="palette-list svelte-1bm0yy4"></div> <div class="palette-footer svelte-1bm0yy4"><span class="svelte-1bm0yy4"><kbd class="svelte-1bm0yy4">↑↓</kbd> navigate</span> <span class="svelte-1bm0yy4"><kbd class="svelte-1bm0yy4">↵</kbd> select</span> <span class="svelte-1bm0yy4"><kbd class="svelte-1bm0yy4">esc</kbd> close</span></div></div></div>');function Hl(e,t){Me(t,!0);let r=I(""),n=I(0),a=I(null);const s=oe(()=>[{id:"new-task",label:"new task",hint:"create",action:()=>{t.onClose(),t.onNewTask()}},...t.projects.map(m=>({id:`project-${m.id}`,label:m.name,hint:m.slug?`switch → ${m.slug}`:"switch",action:()=>{t.onClose(),t.onSelectProject(m.id)}}))]),o=oe(()=>()=>{const m=i(r).trim().toLowerCase();return m?i(s).filter(T=>T.label.toLowerCase().includes(m)||T.hint.toLowerCase().includes(m)):i(s)});st(()=>{i(o)(),h(n,0)});function f(m){var u;const T=i(o)();m.key==="ArrowDown"?(m.preventDefault(),h(n,Math.min(i(n)+1,T.length-1),!0)):m.key==="ArrowUp"?(m.preventDefault(),h(n,Math.max(i(n)-1,0),!0)):m.key==="Enter"?(m.preventDefault(),(u=T[i(n)])==null||u.action()):m.key==="Escape"&&t.onClose()}function l(m){m.target.classList.contains("palette-backdrop")&&t.onClose()}var c=Kl(),v=y(c),p=y(v),b=E(y(p),2);an(b),Xr(b,m=>h(a,m),()=>i(a));var w=E(p,2);Ne(w,23,()=>i(o)(),m=>m.id,(m,T,u)=>{var _=ql();let x;var S=y(_),O=y(S),D=E(S,2),R=y(D);B(()=>{x=je(_,1,"palette-item svelte-1bm0yy4",null,x,{active:i(u)===i(n)}),z(O,i(T).label),z(R,i(T).hint)}),Ce("mouseenter",_,()=>{h(n,i(u),!0)}),ee("click",_,()=>i(T).action()),C(m,_)},m=>{var T=Bl();C(m,T)}),ee("click",c,l),ee("keydown",b,f),or(b,()=>i(r),m=>h(r,m)),C(e,c),Re()}Ve(["click","keydown"]);var Ul=j('<div class="loading svelte-1n46o8q"><span class="prompt svelte-1n46o8q">></span> loading projects...</div>'),Vl=j('<div class="error svelte-1n46o8q"><span class="err-prefix svelte-1n46o8q">[error]</span> </div>'),Jl=j('<div class="empty svelte-1n46o8q"><p class="empty-prompt svelte-1n46o8q">> no projects found</p> <p class="empty-hint svelte-1n46o8q">// create a project using mindpm MCP tools to get started</p></div>'),Yl=j('<div class="tabs svelte-1n46o8q"><button>Kanban</button> <button>Notes</button> <button>Decisions</button></div> <!>',1),Gl=j('<div class="app-layout svelte-1n46o8q"><!> <div class="main svelte-1n46o8q"><!> <!></div></div>'),Wl=j("<!> <!>",1);function Ql(e,t){Me(t,!0);let r=I(be([])),n=I(null),a=I(!0),s=I(null),o=I(!1),f=I(!1),l=I("kanban"),c=I(null);const v=oe(()=>i(r).find(k=>k.id===i(n))??null);async function p(){try{if(h(r,await qe.getProjects(),!0),i(r).length>0&&!i(n)){const k=new URLSearchParams(window.location.search).get("project"),P=k?i(r).find(F=>F.id===k||F.name===k):null;h(n,P?P.id:i(r)[0].id,!0)}}catch(k){h(s,k.message,!0)}finally{h(a,!1)}}function b(k){h(n,k,!0),h(l,"kanban");const P=new URL(window.location.href);P.searchParams.set("project",k),history.replaceState(null,"",P.toString())}async function w(k,P){try{await qe.updateProject(k,{name:P});const F=i(r).findIndex(Z=>Z.id===k);F!==-1&&(i(r)[F]={...i(r)[F],name:P})}catch(F){h(s,F.message,!0)}}st(()=>{p()});function m(k){(k.ctrlKey||k.metaKey)&&k.key==="k"&&(k.preventDefault(),h(o,!i(o)))}var T=Wl();Ce("keydown",wt,m);var u=Ft(T);{var _=k=>{Hl(k,{get projects(){return i(r)},onSelectProject:P=>{h(n,P,!0)},onNewTask:()=>{h(f,!0)},onClose:()=>{h(o,!1)}})};K(u,k=>{i(o)&&k(_)})}var x=E(u,2);{var S=k=>{var P=Ul();C(k,P)},O=k=>{var P=Vl(),F=E(y(P));B(()=>z(F,` ${i(s)??""}`)),C(k,P)},D=k=>{var P=Jl();C(k,P)},R=k=>{var P=Gl(),F=y(P);Ai(F,{get projects(){return i(r)},get selectedId(){return i(n)},onSelect:b});var Z=E(F,2),ue=y(Z);ki(ue,{get projects(){return i(r)},get selectedId(){return i(n)},onSelect:b,onRenamed:w});var L=E(ue,2);{var Y=q=>{var X=Yl(),ae=Ft(X),Q=y(ae);let se;var U=E(Q,2);let le;var $=E(U,2);let ie;var fe=E(ae,2);{var we=M=>{hl(M,{get project(){return i(v)},get triggerNewTask(){return i(f)},get openTask(){return i(c)},onNewTaskTriggered:()=>{h(f,!1)},onOpenTaskHandled:()=>{h(c,null)}})},ke=M=>{xl(M,{get projectId(){return i(v).id},onOpenTask:re=>{h(c,re,!0),h(l,"kanban")}})},N=M=>{Fl(M,{get projectId(){return i(v).id},onOpenTask:re=>{h(c,re,!0),h(l,"kanban")}})};K(fe,M=>{i(l)==="kanban"?M(we):i(l)==="notes"?M(ke,1):i(l)==="decisions"&&M(N,2)})}B(()=>{se=je(Q,1,"tab svelte-1n46o8q",null,se,{active:i(l)==="kanban"}),le=je(U,1,"tab svelte-1n46o8q",null,le,{active:i(l)==="notes"}),ie=je($,1,"tab svelte-1n46o8q",null,ie,{active:i(l)==="decisions"})}),ee("click",Q,()=>h(l,"kanban")),ee("click",U,()=>h(l,"notes")),ee("click",$,()=>h(l,"decisions")),C(q,X)};K(L,q=>{i(v)&&q(Y)})}C(k,P)};K(x,k=>{i(a)?k(S):i(s)?k(O,1):i(r).length===0?k(D,2):k(R,!1)})}C(e,T),Re()}Ve(["click"]);$s(Ql,{target:document.getElementById("app")});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.toolbar.svelte-1kanzy0{display:flex;align-items:center;padding:7px 14px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;min-height:37px}.project-area.svelte-1kanzy0{display:flex;align-items:center;gap:8px}.project-name.svelte-1kanzy0{font-size:.82rem;font-weight:700;color:var(--text)}.project-slug.svelte-1kanzy0{font-size:.7rem;color:var(--text-muted)}.rename-btn.svelte-1kanzy0{background:none;border:1px solid var(--border);color:var(--text-muted);border-radius:var(--radius-sm);padding:1px 6px;font-size:.8rem;line-height:1.5}.rename-btn.svelte-1kanzy0:hover{border-color:var(--primary);color:var(--primary)}.rename-input.svelte-1kanzy0{padding:3px 8px;border-radius:var(--radius-sm);border:1px solid var(--primary);background:var(--surface-2);color:var(--text);width:180px;outline:none;box-shadow:0 0 0 2px var(--primary-dim)}.sidebar.svelte-rig7vt{width:200px;min-width:200px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;transition:width .2s,min-width .2s;overflow:hidden}.sidebar.collapsed.svelte-rig7vt{width:44px;min-width:44px}.sidebar-header.svelte-rig7vt{display:flex;align-items:center;justify-content:space-between;padding:10px 10px 10px 12px;border-bottom:1px solid var(--border);flex-shrink:0;gap:8px}.brand.svelte-rig7vt{font-size:.85rem;font-weight:700;color:var(--primary);white-space:nowrap;overflow:hidden}.prompt.svelte-rig7vt{color:var(--text-dim)}.collapse-btn.svelte-rig7vt{background:none;border:1px solid var(--border);color:var(--text-muted);border-radius:var(--radius-sm);font-size:.7rem;padding:2px 6px;flex-shrink:0;line-height:1.4}.collapse-btn.svelte-rig7vt:hover{border-color:var(--primary);color:var(--primary)}.project-list.svelte-rig7vt{flex:1;overflow-y:auto;padding:6px 0}.project-item.svelte-rig7vt{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px 6px 12px;background:none;border:none;border-left:2px solid transparent;color:var(--text-dim);font-size:.75rem;text-align:left;cursor:pointer;transition:background .1s,color .1s,border-color .1s;white-space:nowrap;overflow:hidden}.project-item.svelte-rig7vt:hover{background:var(--surface-2);color:var(--text)}.project-item.active.svelte-rig7vt{border-left-color:var(--primary);color:var(--primary);background:var(--primary-dim)}.status-dot.svelte-rig7vt{width:6px;height:6px;border-radius:50%;flex-shrink:0}.project-name.svelte-rig7vt{flex:1;overflow:hidden;text-overflow:ellipsis}.task-count.svelte-rig7vt{font-size:.62rem;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);border-radius:2px;padding:0 4px;flex-shrink:0;line-height:1.6}.project-item.active.svelte-rig7vt .task-count:where(.svelte-rig7vt){border-color:var(--primary);color:var(--primary);background:none}.project-slug-collapsed.svelte-rig7vt{font-size:.55rem;color:var(--text-muted);line-height:1;overflow:hidden;text-overflow:ellipsis}.project-item.active.svelte-rig7vt .project-slug-collapsed:where(.svelte-rig7vt){color:var(--primary)}.sidebar-footer.svelte-rig7vt{padding:8px 12px;border-top:1px solid var(--border);flex-shrink:0}.footer-hint.svelte-rig7vt{font-size:.62rem;color:var(--text-muted)}.card.svelte-35ep21{background:var(--surface);border:1px solid var(--border);border-left-width:3px;border-radius:var(--radius);padding:8px 10px;cursor:grab;transition:border-color .15s,background .15s;position:relative}.card.priority-critical.svelte-35ep21{border-left-color:var(--priority-critical)}.card.priority-high.svelte-35ep21{border-left-color:var(--priority-high)}.card.priority-medium.svelte-35ep21{border-left-color:var(--priority-medium)}.card.priority-low.svelte-35ep21{border-left-color:var(--border-bright)}.card.svelte-35ep21:hover{background:var(--surface-2);border-color:var(--border-bright);border-left-color:inherit}.card.dragging.svelte-35ep21{opacity:.4}.card-header.svelte-35ep21{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.card-header-right.svelte-35ep21{display:flex;align-items:center;gap:6px}.task-id.svelte-35ep21{font-size:.65rem;color:var(--text-muted)}.priority-badge.svelte-35ep21{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted)}.priority-badge.priority-critical.svelte-35ep21{color:var(--priority-critical)}.priority-badge.priority-high.svelte-35ep21{color:var(--priority-high)}.priority-badge.priority-medium.svelte-35ep21{color:var(--priority-medium)}.priority-badge.priority-low.svelte-35ep21{color:var(--text-muted)}.delete-btn.svelte-35ep21{background:none;border:none;color:var(--text-muted);font-size:1rem;line-height:1;padding:0 2px;opacity:0;transition:opacity .1s}.card.svelte-35ep21:hover .delete-btn:where(.svelte-35ep21){opacity:1}.delete-btn.svelte-35ep21:hover{color:var(--danger)}.card-title.svelte-35ep21{font-size:.8rem;font-weight:500;word-break:break-word;color:var(--text);line-height:1.4}.card-desc.svelte-35ep21{font-size:.72rem;color:var(--text-muted);margin-top:4px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4}.card-tags.svelte-35ep21{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.tag.svelte-35ep21{font-size:.62rem;background:var(--bg);color:var(--text-muted);border:1px solid var(--border);padding:1px 5px;border-radius:2px}.card-footer.svelte-35ep21{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.badge.svelte-35ep21{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:1px 5px;border-radius:2px;border:1px solid}.badge-blocked.svelte-35ep21{color:var(--priority-critical);border-color:var(--priority-critical);background:color-mix(in srgb,var(--priority-critical) 10%,transparent)}.badge-subtasks.svelte-35ep21{color:var(--text-muted);border-color:var(--border-bright);background:none}.column.svelte-zswfgn{background:var(--column-bg);border:1px solid var(--border);border-radius:var(--radius);width:270px;min-width:270px;max-height:calc(100vh - 60px);display:flex;flex-direction:column;transition:border-color .15s,width .2s,min-width .2s;flex-shrink:0}.column.collapsed.svelte-zswfgn{width:40px;min-width:40px}.column.drag-over.svelte-zswfgn{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary-dim)}.column.wip-warning.svelte-zswfgn{border-color:var(--priority-high)}.column-collapsed.svelte-zswfgn{display:flex;flex-direction:column;align-items:center;padding:8px 0 12px;gap:10px;flex:1;overflow:hidden}.expand-btn.svelte-zswfgn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-size:.65rem;padding:2px 5px;line-height:1.4}.expand-btn.svelte-zswfgn:hover{border-color:var(--primary);color:var(--primary)}.collapsed-label.svelte-zswfgn{display:flex;flex-direction:column;align-items:center;gap:6px;writing-mode:vertical-rl;transform:rotate(180deg);flex:1;justify-content:center}.collapsed-count.svelte-zswfgn{font-size:.6rem;color:var(--text-muted);font-weight:700}.collapsed-count.wip.svelte-zswfgn{color:var(--priority-high)}.collapsed-text.svelte-zswfgn{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);white-space:nowrap}.column-header.svelte-zswfgn{padding:8px 8px 8px 10px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;border-bottom:1px solid var(--border);gap:6px}.column-header.svelte-zswfgn h3:where(.svelte-zswfgn){font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);white-space:nowrap;overflow:hidden}.chevron.svelte-zswfgn{color:var(--primary);margin-right:4px}.count.svelte-zswfgn{font-weight:400;color:var(--text-muted);margin-left:4px;font-size:.68rem}.count.wip.svelte-zswfgn{color:var(--priority-high);font-weight:700}.header-actions.svelte-zswfgn{display:flex;align-items:center;gap:4px;flex-shrink:0}.add-btn.svelte-zswfgn,.collapse-btn.svelte-zswfgn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);width:22px;height:22px;font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;justify-content:center;line-height:1}.add-btn.svelte-zswfgn:hover,.collapse-btn.svelte-zswfgn:hover{border-color:var(--primary);color:var(--primary)}.wip-banner.svelte-zswfgn{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--priority-high);background:color-mix(in srgb,var(--priority-high) 10%,transparent);border-bottom:1px solid color-mix(in srgb,var(--priority-high) 25%,transparent);padding:3px 10px;flex-shrink:0}.card-list.svelte-zswfgn{padding:6px;display:flex;flex-direction:column;gap:6px;overflow-y:auto;flex:1}.modal-backdrop.svelte-1gmf2hi{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100}.modal.svelte-1gmf2hi{background:var(--surface);border:1px solid var(--border-bright);border-radius:var(--radius);width:520px;max-width:95vw;max-height:90vh;overflow-y:auto;padding:20px}.modal-title.svelte-1gmf2hi{display:flex;align-items:baseline;gap:10px}.modal-task-id.svelte-1gmf2hi{font-size:.7rem;color:var(--text-muted)}.modal-header.svelte-1gmf2hi{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--border)}.modal-header.svelte-1gmf2hi h2:where(.svelte-1gmf2hi){font-size:.9rem;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:1px}.close-btn.svelte-1gmf2hi{background:none;border:none;font-size:1.2rem;color:var(--text-muted);padding:0 4px;line-height:1}.close-btn.svelte-1gmf2hi:hover{color:var(--danger)}.field.svelte-1gmf2hi{margin-bottom:14px;flex:1}label.svelte-1gmf2hi{display:block;font-size:.68rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px}.hint.svelte-1gmf2hi{font-weight:400;text-transform:none;letter-spacing:0}input.svelte-1gmf2hi,textarea.svelte-1gmf2hi,select.svelte-1gmf2hi{width:100%;padding:7px 9px;border:1px solid var(--border-bright);border-radius:var(--radius-sm);background:var(--bg);color:var(--text)}input.svelte-1gmf2hi:focus,textarea.svelte-1gmf2hi:focus,select.svelte-1gmf2hi:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-dim)}textarea.svelte-1gmf2hi{resize:vertical}.row.svelte-1gmf2hi{display:flex;gap:12px}.actions.svelte-1gmf2hi{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}.btn-cancel.svelte-1gmf2hi,.btn-save.svelte-1gmf2hi{padding:6px 14px;border-radius:var(--radius-sm);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.5px}.btn-cancel.svelte-1gmf2hi{background:none;border:1px solid var(--border-bright);color:var(--text-muted)}.btn-cancel.svelte-1gmf2hi:hover{border-color:var(--text-muted);color:var(--text)}.btn-save.svelte-1gmf2hi{background:var(--primary);border:1px solid var(--primary);color:#0d0d0d;font-weight:700}.btn-save.svelte-1gmf2hi:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.history-section.svelte-1gmf2hi{margin-top:18px;border-top:1px solid var(--border);padding-top:14px}.history-heading.svelte-1gmf2hi{font-size:.65rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.history-list.svelte-1gmf2hi{display:flex;flex-direction:column;gap:0;max-height:180px;overflow-y:auto}.history-item.svelte-1gmf2hi{display:flex;align-items:flex-start;gap:10px;padding:4px 0;position:relative}.history-item.svelte-1gmf2hi:not(:last-child):before{content:"";position:absolute;left:4px;top:14px;bottom:-4px;width:1px;background:var(--border)}.history-dot.svelte-1gmf2hi{width:9px;height:9px;border-radius:50%;background:var(--border-bright);border:1px solid var(--surface);flex-shrink:0;margin-top:3px}.history-item.svelte-1gmf2hi:first-child .history-dot:where(.svelte-1gmf2hi){background:var(--primary)}.history-body.svelte-1gmf2hi{display:flex;flex-direction:column;gap:1px;flex:1}.history-event.svelte-1gmf2hi{font-size:.72rem;color:var(--text-dim);line-height:1.4}.history-event.svelte-1gmf2hi b{color:var(--text);font-weight:600}.history-time.svelte-1gmf2hi{font-size:.62rem;color:var(--text-muted)}.modal-backdrop.svelte-1efofyg{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:200}.dialog.svelte-1efofyg{background:var(--surface);border:1px solid var(--border-bright);border-top:3px solid var(--danger);border-radius:var(--radius);padding:20px;width:340px;max-width:90vw}h3.svelte-1efofyg{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--danger);margin-bottom:10px}p.svelte-1efofyg{color:var(--text-dim);font-size:.78rem;margin-bottom:18px;line-height:1.5}.actions.svelte-1efofyg{display:flex;justify-content:flex-end;gap:8px}.btn-cancel.svelte-1efofyg,.btn-confirm.svelte-1efofyg{padding:5px 14px;border-radius:var(--radius-sm);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.5px}.btn-cancel.svelte-1efofyg{background:none;border:1px solid var(--border-bright);color:var(--text-muted)}.btn-cancel.svelte-1efofyg:hover{color:var(--text);border-color:var(--text-muted)}.btn-confirm.svelte-1efofyg{background:var(--danger);border:1px solid var(--danger);color:#fff}.btn-confirm.svelte-1efofyg:hover{background:var(--danger-hover);border-color:var(--danger-hover)}.filter-bar.svelte-dhotvj{display:flex;align-items:center;gap:16px;padding:6px 16px;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;flex-shrink:0}.filter-search.svelte-dhotvj{position:relative;display:flex;align-items:center}.search-icon.svelte-dhotvj{position:absolute;left:8px;color:var(--primary);font-weight:700;font-size:.85rem;pointer-events:none}.filter-search.svelte-dhotvj input:where(.svelte-dhotvj){background:var(--bg);border:1px solid var(--border-bright);border-radius:var(--radius-sm);color:var(--text);padding:4px 26px 4px 22px;width:180px;font-size:.75rem}.filter-search.svelte-dhotvj input:where(.svelte-dhotvj):focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-dim)}.filter-search.svelte-dhotvj input:where(.svelte-dhotvj)::placeholder{color:var(--text-muted)}.clear-input.svelte-dhotvj{position:absolute;right:6px;background:none;border:none;color:var(--text-muted);font-size:.9rem;line-height:1;padding:0}.clear-input.svelte-dhotvj:hover{color:var(--text)}.filter-section.svelte-dhotvj{display:flex;align-items:center;gap:6px}.filter-label.svelte-dhotvj{font-size:.65rem;color:var(--text-muted);white-space:nowrap}.chip-group.svelte-dhotvj{display:flex;gap:4px;flex-wrap:wrap}.chip.svelte-dhotvj{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 7px;border-radius:2px;border:1px solid var(--border-bright);background:none;color:var(--text-muted);transition:border-color .1s,color .1s,background .1s}.chip.svelte-dhotvj:hover{border-color:var(--chip-color, var(--text-dim));color:var(--chip-color, var(--text))}.chip.active.svelte-dhotvj{border-color:var(--chip-color, var(--primary));color:var(--chip-color, var(--primary));background:color-mix(in srgb,var(--chip-color, var(--primary)) 12%,transparent)}.tag-dropdown-wrapper.svelte-dhotvj{position:relative}.dropdown-trigger.svelte-dhotvj{font-size:.62rem;font-weight:700;padding:2px 8px;border-radius:2px;border:1px solid var(--border-bright);background:none;color:var(--text-muted);transition:border-color .1s,color .1s;letter-spacing:.5px}.dropdown-trigger.svelte-dhotvj:hover{border-color:var(--primary);color:var(--primary)}.dropdown-trigger.active.svelte-dhotvj{border-color:var(--primary);color:var(--primary);background:var(--primary-dim)}.tag-dropdown.svelte-dhotvj{position:absolute;top:calc(100% + 4px);left:0;background:var(--surface);border:1px solid var(--border-bright);border-radius:var(--radius);min-width:140px;z-index:50;overflow:hidden}.tag-option.svelte-dhotvj{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;background:none;border:none;color:var(--text-dim);font-size:.72rem;text-align:left;transition:background .1s,color .1s}.tag-option.svelte-dhotvj:hover{background:var(--surface-2);color:var(--text)}.tag-option.selected.svelte-dhotvj{color:var(--primary)}.tag-checkbox.svelte-dhotvj{font-size:.65rem;color:var(--primary);width:10px;text-align:center;flex-shrink:0}.tag-option.svelte-dhotvj:not(.selected) .tag-checkbox:where(.svelte-dhotvj){color:var(--border-bright)}.tag-name.svelte-dhotvj{flex:1}.tag-clear.svelte-dhotvj{display:block;width:100%;padding:5px 10px;background:none;border:none;border-top:1px solid var(--border);color:var(--danger);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;text-align:left;transition:background .1s}.tag-clear.svelte-dhotvj:hover{background:var(--surface-2)}.clear-all.svelte-dhotvj{background:none;border:none;color:var(--danger);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 0;margin-left:auto}.clear-all.svelte-dhotvj:hover{color:var(--danger-hover)}.shortcuts-hint.svelte-dhotvj{display:flex;gap:10px;margin-left:auto}.shortcuts-hint.svelte-dhotvj span:where(.svelte-dhotvj){font-size:.6rem;color:var(--text-muted);display:flex;align-items:center;gap:3px}kbd.svelte-dhotvj{font-family:var(--font-mono);font-size:.58rem;background:var(--surface-2);border:1px solid var(--border-bright);border-radius:2px;padding:1px 4px;color:var(--text-dim)}.board-wrapper.svelte-x7v2jt{flex:1;overflow-x:auto;overflow-y:hidden;padding:12px;min-height:0}.board.svelte-x7v2jt{display:flex;gap:10px;align-items:flex-start;height:100%}.board-message.svelte-x7v2jt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:200px;color:var(--text-muted);font-size:1rem}.board-message.error.svelte-x7v2jt{color:var(--danger)}.board-message.svelte-x7v2jt button:where(.svelte-x7v2jt){padding:5px 14px;background:none;color:var(--primary);border:1px solid var(--primary);border-radius:var(--radius-sm);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.board-message.svelte-x7v2jt button:where(.svelte-x7v2jt):hover{background:var(--primary-dim)}.view.svelte-mwtig8{flex:1;overflow-y:auto;padding:16px 20px}.state-msg.svelte-mwtig8{color:var(--text-dim);font-size:.8rem;padding:40px 0;text-align:center}.state-msg.err.svelte-mwtig8{color:var(--danger)}.state-msg.muted.svelte-mwtig8{color:var(--text-muted)}.prompt.svelte-mwtig8{color:var(--primary)}.list.svelte-mwtig8{display:flex;flex-direction:column;gap:8px;max-width:760px}.card.svelte-mwtig8{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:6px}.card-header.svelte-mwtig8{display:flex;align-items:center;justify-content:space-between}.category.svelte-mwtig8{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px}.date.svelte-mwtig8{font-size:.62rem;color:var(--text-muted)}.content.svelte-mwtig8{font-size:.78rem;color:var(--text);line-height:1.55;white-space:pre-wrap}.card-footer.svelte-mwtig8{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:2px}.tags.svelte-mwtig8{display:flex;flex-wrap:wrap;gap:4px}.tag.svelte-mwtig8{font-size:.62rem;color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1px 6px}.task-link.svelte-mwtig8{font-size:.68rem;color:var(--primary);cursor:pointer;border:1px solid var(--primary-dim);border-radius:var(--radius-sm);padding:1px 7px;background:var(--primary-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}.task-link.svelte-mwtig8:hover{background:#39d35340}.view.svelte-1nwykvu{flex:1;overflow-y:auto;padding:16px 20px}.state-msg.svelte-1nwykvu{color:var(--text-dim);font-size:.8rem;padding:40px 0;text-align:center}.state-msg.err.svelte-1nwykvu{color:var(--danger)}.state-msg.muted.svelte-1nwykvu{color:var(--text-muted)}.prompt.svelte-1nwykvu{color:var(--primary)}.list.svelte-1nwykvu{display:flex;flex-direction:column;gap:8px;max-width:760px}.card.svelte-1nwykvu{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--border-bright);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:5px}.card-header.svelte-1nwykvu{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.title.svelte-1nwykvu{font-size:.82rem;font-weight:700;color:var(--text)}.date.svelte-1nwykvu{font-size:.62rem;color:var(--text-muted);flex-shrink:0}.decision-text.svelte-1nwykvu{font-size:.78rem;color:var(--text-dim);line-height:1.5}.reasoning.svelte-1nwykvu{font-size:.72rem;color:var(--text-muted);font-style:italic;line-height:1.4}.alts.svelte-1nwykvu{font-size:.68rem;color:var(--text-muted)}.card-footer.svelte-1nwykvu{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:2px}.tags.svelte-1nwykvu{display:flex;flex-wrap:wrap;gap:4px}.tag.svelte-1nwykvu{font-size:.62rem;color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1px 6px}.task-link.svelte-1nwykvu{font-size:.68rem;color:var(--primary);cursor:pointer;border:1px solid var(--primary-dim);border-radius:var(--radius-sm);padding:1px 7px;background:var(--primary-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}.task-link.svelte-1nwykvu:hover{background:#39d35340}.palette-backdrop.svelte-1bm0yy4{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;z-index:300}.palette.svelte-1bm0yy4{background:var(--surface);border:1px solid var(--border-bright);border-radius:var(--radius);width:480px;max-width:95vw;overflow:hidden}.palette-input-row.svelte-1bm0yy4{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border)}.palette-prompt.svelte-1bm0yy4{color:var(--primary);font-weight:700;font-size:.9rem;flex-shrink:0}.palette-input-row.svelte-1bm0yy4 input:where(.svelte-1bm0yy4){flex:1;background:none;border:none;color:var(--text);font-size:.85rem;outline:none}.palette-input-row.svelte-1bm0yy4 input:where(.svelte-1bm0yy4)::placeholder{color:var(--text-muted)}.palette-list.svelte-1bm0yy4{max-height:260px;overflow-y:auto}.palette-item.svelte-1bm0yy4{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;cursor:pointer;gap:12px}.palette-item.active.svelte-1bm0yy4{background:var(--surface-2);border-left:2px solid var(--primary);padding-left:12px}.item-label.svelte-1bm0yy4{font-size:.8rem;color:var(--text)}.item-hint.svelte-1bm0yy4{font-size:.68rem;color:var(--text-muted);white-space:nowrap}.palette-empty.svelte-1bm0yy4{padding:16px 14px;font-size:.75rem;color:var(--text-muted)}.palette-footer.svelte-1bm0yy4{display:flex;gap:16px;padding:6px 14px;border-top:1px solid var(--border);background:var(--bg)}.palette-footer.svelte-1bm0yy4 span:where(.svelte-1bm0yy4){font-size:.62rem;color:var(--text-muted);display:flex;align-items:center;gap:4px}kbd.svelte-1bm0yy4{font-family:var(--font-mono);font-size:.6rem;background:var(--surface-2);border:1px solid var(--border-bright);border-radius:2px;padding:1px 4px;color:var(--text-dim)}.app-layout.svelte-1n46o8q{display:flex;flex:1;overflow:hidden;min-height:0}.main.svelte-1n46o8q{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.tabs.svelte-1n46o8q{display:flex;gap:0;border-bottom:1px solid var(--border);padding:0 16px;flex-shrink:0}.tab.svelte-1n46o8q{background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.8px;padding:8px 14px;margin-bottom:-1px;transition:color .1s,border-color .1s}.tab.svelte-1n46o8q:hover{color:var(--text-dim)}.tab.active.svelte-1n46o8q{color:var(--primary);border-bottom-color:var(--primary)}.loading.svelte-1n46o8q,.error.svelte-1n46o8q,.empty.svelte-1n46o8q{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:8px;font-size:.85rem}.prompt.svelte-1n46o8q{color:var(--primary)}.loading.svelte-1n46o8q{color:var(--text-dim)}.error.svelte-1n46o8q{color:var(--danger)}.err-prefix.svelte-1n46o8q{margin-right:6px}.empty-prompt.svelte-1n46o8q{color:var(--text)}.empty-hint.svelte-1n46o8q{color:var(--text-muted);font-size:.75rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0d0d0d;--surface: #141414;--surface-2: #1a1a1a;--border: #252525;--border-bright: #333333;--text: #d4d4d4;--text-muted: #555555;--text-dim: #888888;--primary: #39d353;--primary-hover: #2fb844;--primary-dim: rgba(57, 211, 83, .15);--danger: #f85149;--danger-hover: #da3633;--priority-critical: #f85149;--priority-high: #d29922;--priority-medium: #39d353;--priority-low: #3d444d;--column-bg: #111111;--card-shadow: none;--card-shadow-hover: 0 0 0 1px var(--border-bright);--radius: 4px;--radius-sm: 3px;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", "Consolas", "Courier New", monospace}body{font-family:var(--font-mono);background:var(--bg);color:var(--text);line-height:1.5;min-height:100vh;font-size:13px}button{cursor:pointer;font-family:inherit;font-size:inherit}input,textarea,select{font-family:inherit;font-size:inherit}#app{height:100vh;display:flex;flex-direction:column;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#444}
|
package/dist/ui/index.html
CHANGED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>mindpm - Kanban</title>
|
|
7
|
-
<script type="module" crossorigin src="/assets/index-
|
|
8
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
7
|
+
<script type="module" crossorigin src="/assets/index-DayISKut.js"></script>
|
|
8
|
+
<link rel="stylesheet" crossorigin href="/assets/index-bp2jAVk_.css">
|
|
9
9
|
</head>
|
|
10
10
|
<body>
|
|
11
11
|
<div id="app"></div>
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.toolbar.svelte-1kanzy0{display:flex;align-items:center;padding:7px 14px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;min-height:37px}.project-area.svelte-1kanzy0{display:flex;align-items:center;gap:8px}.project-name.svelte-1kanzy0{font-size:.82rem;font-weight:700;color:var(--text)}.project-slug.svelte-1kanzy0{font-size:.7rem;color:var(--text-muted)}.rename-btn.svelte-1kanzy0{background:none;border:1px solid var(--border);color:var(--text-muted);border-radius:var(--radius-sm);padding:1px 6px;font-size:.8rem;line-height:1.5}.rename-btn.svelte-1kanzy0:hover{border-color:var(--primary);color:var(--primary)}.rename-input.svelte-1kanzy0{padding:3px 8px;border-radius:var(--radius-sm);border:1px solid var(--primary);background:var(--surface-2);color:var(--text);width:180px;outline:none;box-shadow:0 0 0 2px var(--primary-dim)}.sidebar.svelte-rig7vt{width:200px;min-width:200px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;transition:width .2s,min-width .2s;overflow:hidden}.sidebar.collapsed.svelte-rig7vt{width:44px;min-width:44px}.sidebar-header.svelte-rig7vt{display:flex;align-items:center;justify-content:space-between;padding:10px 10px 10px 12px;border-bottom:1px solid var(--border);flex-shrink:0;gap:8px}.brand.svelte-rig7vt{font-size:.85rem;font-weight:700;color:var(--primary);white-space:nowrap;overflow:hidden}.prompt.svelte-rig7vt{color:var(--text-dim)}.collapse-btn.svelte-rig7vt{background:none;border:1px solid var(--border);color:var(--text-muted);border-radius:var(--radius-sm);font-size:.7rem;padding:2px 6px;flex-shrink:0;line-height:1.4}.collapse-btn.svelte-rig7vt:hover{border-color:var(--primary);color:var(--primary)}.project-list.svelte-rig7vt{flex:1;overflow-y:auto;padding:6px 0}.project-item.svelte-rig7vt{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px 6px 12px;background:none;border:none;border-left:2px solid transparent;color:var(--text-dim);font-size:.75rem;text-align:left;cursor:pointer;transition:background .1s,color .1s,border-color .1s;white-space:nowrap;overflow:hidden}.project-item.svelte-rig7vt:hover{background:var(--surface-2);color:var(--text)}.project-item.active.svelte-rig7vt{border-left-color:var(--primary);color:var(--primary);background:var(--primary-dim)}.status-dot.svelte-rig7vt{width:6px;height:6px;border-radius:50%;flex-shrink:0}.project-name.svelte-rig7vt{flex:1;overflow:hidden;text-overflow:ellipsis}.task-count.svelte-rig7vt{font-size:.62rem;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);border-radius:2px;padding:0 4px;flex-shrink:0;line-height:1.6}.project-item.active.svelte-rig7vt .task-count:where(.svelte-rig7vt){border-color:var(--primary);color:var(--primary);background:none}.task-count-collapsed.svelte-rig7vt{font-size:.55rem;color:var(--primary);line-height:1}.sidebar-footer.svelte-rig7vt{padding:8px 12px;border-top:1px solid var(--border);flex-shrink:0}.footer-hint.svelte-rig7vt{font-size:.62rem;color:var(--text-muted)}.card.svelte-35ep21{background:var(--surface);border:1px solid var(--border);border-left-width:3px;border-radius:var(--radius);padding:8px 10px;cursor:grab;transition:border-color .15s,background .15s;position:relative}.card.priority-critical.svelte-35ep21{border-left-color:var(--priority-critical)}.card.priority-high.svelte-35ep21{border-left-color:var(--priority-high)}.card.priority-medium.svelte-35ep21{border-left-color:var(--priority-medium)}.card.priority-low.svelte-35ep21{border-left-color:var(--border-bright)}.card.svelte-35ep21:hover{background:var(--surface-2);border-color:var(--border-bright);border-left-color:inherit}.card.dragging.svelte-35ep21{opacity:.4}.card-header.svelte-35ep21{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.card-header-right.svelte-35ep21{display:flex;align-items:center;gap:6px}.task-id.svelte-35ep21{font-size:.65rem;color:var(--text-muted)}.priority-badge.svelte-35ep21{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted)}.priority-badge.priority-critical.svelte-35ep21{color:var(--priority-critical)}.priority-badge.priority-high.svelte-35ep21{color:var(--priority-high)}.priority-badge.priority-medium.svelte-35ep21{color:var(--priority-medium)}.priority-badge.priority-low.svelte-35ep21{color:var(--text-muted)}.delete-btn.svelte-35ep21{background:none;border:none;color:var(--text-muted);font-size:1rem;line-height:1;padding:0 2px;opacity:0;transition:opacity .1s}.card.svelte-35ep21:hover .delete-btn:where(.svelte-35ep21){opacity:1}.delete-btn.svelte-35ep21:hover{color:var(--danger)}.card-title.svelte-35ep21{font-size:.8rem;font-weight:500;word-break:break-word;color:var(--text);line-height:1.4}.card-desc.svelte-35ep21{font-size:.72rem;color:var(--text-muted);margin-top:4px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4}.card-tags.svelte-35ep21{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.tag.svelte-35ep21{font-size:.62rem;background:var(--bg);color:var(--text-muted);border:1px solid var(--border);padding:1px 5px;border-radius:2px}.card-footer.svelte-35ep21{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.badge.svelte-35ep21{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:1px 5px;border-radius:2px;border:1px solid}.badge-blocked.svelte-35ep21{color:var(--priority-critical);border-color:var(--priority-critical);background:color-mix(in srgb,var(--priority-critical) 10%,transparent)}.badge-subtasks.svelte-35ep21{color:var(--text-muted);border-color:var(--border-bright);background:none}.column.svelte-zswfgn{background:var(--column-bg);border:1px solid var(--border);border-radius:var(--radius);width:270px;min-width:270px;max-height:calc(100vh - 60px);display:flex;flex-direction:column;transition:border-color .15s,width .2s,min-width .2s;flex-shrink:0}.column.collapsed.svelte-zswfgn{width:40px;min-width:40px}.column.drag-over.svelte-zswfgn{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary-dim)}.column.wip-warning.svelte-zswfgn{border-color:var(--priority-high)}.column-collapsed.svelte-zswfgn{display:flex;flex-direction:column;align-items:center;padding:8px 0 12px;gap:10px;flex:1;overflow:hidden}.expand-btn.svelte-zswfgn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-size:.65rem;padding:2px 5px;line-height:1.4}.expand-btn.svelte-zswfgn:hover{border-color:var(--primary);color:var(--primary)}.collapsed-label.svelte-zswfgn{display:flex;flex-direction:column;align-items:center;gap:6px;writing-mode:vertical-rl;transform:rotate(180deg);flex:1;justify-content:center}.collapsed-count.svelte-zswfgn{font-size:.6rem;color:var(--text-muted);font-weight:700}.collapsed-count.wip.svelte-zswfgn{color:var(--priority-high)}.collapsed-text.svelte-zswfgn{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);white-space:nowrap}.column-header.svelte-zswfgn{padding:8px 8px 8px 10px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;border-bottom:1px solid var(--border);gap:6px}.column-header.svelte-zswfgn h3:where(.svelte-zswfgn){font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);white-space:nowrap;overflow:hidden}.chevron.svelte-zswfgn{color:var(--primary);margin-right:4px}.count.svelte-zswfgn{font-weight:400;color:var(--text-muted);margin-left:4px;font-size:.68rem}.count.wip.svelte-zswfgn{color:var(--priority-high);font-weight:700}.header-actions.svelte-zswfgn{display:flex;align-items:center;gap:4px;flex-shrink:0}.add-btn.svelte-zswfgn,.collapse-btn.svelte-zswfgn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);width:22px;height:22px;font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;justify-content:center;line-height:1}.add-btn.svelte-zswfgn:hover,.collapse-btn.svelte-zswfgn:hover{border-color:var(--primary);color:var(--primary)}.wip-banner.svelte-zswfgn{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--priority-high);background:color-mix(in srgb,var(--priority-high) 10%,transparent);border-bottom:1px solid color-mix(in srgb,var(--priority-high) 25%,transparent);padding:3px 10px;flex-shrink:0}.card-list.svelte-zswfgn{padding:6px;display:flex;flex-direction:column;gap:6px;overflow-y:auto;flex:1}.modal-backdrop.svelte-1gmf2hi{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100}.modal.svelte-1gmf2hi{background:var(--surface);border:1px solid var(--border-bright);border-radius:var(--radius);width:520px;max-width:95vw;max-height:90vh;overflow-y:auto;padding:20px}.modal-title.svelte-1gmf2hi{display:flex;align-items:baseline;gap:10px}.modal-task-id.svelte-1gmf2hi{font-size:.7rem;color:var(--text-muted)}.modal-header.svelte-1gmf2hi{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--border)}.modal-header.svelte-1gmf2hi h2:where(.svelte-1gmf2hi){font-size:.9rem;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:1px}.close-btn.svelte-1gmf2hi{background:none;border:none;font-size:1.2rem;color:var(--text-muted);padding:0 4px;line-height:1}.close-btn.svelte-1gmf2hi:hover{color:var(--danger)}.field.svelte-1gmf2hi{margin-bottom:14px;flex:1}label.svelte-1gmf2hi{display:block;font-size:.68rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px}.hint.svelte-1gmf2hi{font-weight:400;text-transform:none;letter-spacing:0}input.svelte-1gmf2hi,textarea.svelte-1gmf2hi,select.svelte-1gmf2hi{width:100%;padding:7px 9px;border:1px solid var(--border-bright);border-radius:var(--radius-sm);background:var(--bg);color:var(--text)}input.svelte-1gmf2hi:focus,textarea.svelte-1gmf2hi:focus,select.svelte-1gmf2hi:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-dim)}textarea.svelte-1gmf2hi{resize:vertical}.row.svelte-1gmf2hi{display:flex;gap:12px}.actions.svelte-1gmf2hi{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}.btn-cancel.svelte-1gmf2hi,.btn-save.svelte-1gmf2hi{padding:6px 14px;border-radius:var(--radius-sm);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.5px}.btn-cancel.svelte-1gmf2hi{background:none;border:1px solid var(--border-bright);color:var(--text-muted)}.btn-cancel.svelte-1gmf2hi:hover{border-color:var(--text-muted);color:var(--text)}.btn-save.svelte-1gmf2hi{background:var(--primary);border:1px solid var(--primary);color:#0d0d0d;font-weight:700}.btn-save.svelte-1gmf2hi:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.history-section.svelte-1gmf2hi{margin-top:18px;border-top:1px solid var(--border);padding-top:14px}.history-heading.svelte-1gmf2hi{font-size:.65rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.history-list.svelte-1gmf2hi{display:flex;flex-direction:column;gap:0;max-height:180px;overflow-y:auto}.history-item.svelte-1gmf2hi{display:flex;align-items:flex-start;gap:10px;padding:4px 0;position:relative}.history-item.svelte-1gmf2hi:not(:last-child):before{content:"";position:absolute;left:4px;top:14px;bottom:-4px;width:1px;background:var(--border)}.history-dot.svelte-1gmf2hi{width:9px;height:9px;border-radius:50%;background:var(--border-bright);border:1px solid var(--surface);flex-shrink:0;margin-top:3px}.history-item.svelte-1gmf2hi:first-child .history-dot:where(.svelte-1gmf2hi){background:var(--primary)}.history-body.svelte-1gmf2hi{display:flex;flex-direction:column;gap:1px;flex:1}.history-event.svelte-1gmf2hi{font-size:.72rem;color:var(--text-dim);line-height:1.4}.history-event.svelte-1gmf2hi b{color:var(--text);font-weight:600}.history-time.svelte-1gmf2hi{font-size:.62rem;color:var(--text-muted)}.decisions-section.svelte-1gmf2hi{margin-top:18px;border-top:1px solid var(--border);padding-top:14px}.decisions-heading.svelte-1gmf2hi{font-size:.65rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.decisions-heading.spaced.svelte-1gmf2hi{margin-top:12px}.decisions-list.svelte-1gmf2hi{display:flex;flex-direction:column;gap:6px;max-height:240px;overflow-y:auto}.decision-item.svelte-1gmf2hi{background:var(--bg);border:1px solid var(--border);border-left:3px solid var(--border-bright);border-radius:var(--radius-sm);padding:8px 10px}.decision-title.svelte-1gmf2hi{font-size:.78rem;font-weight:700;color:var(--text);margin-bottom:3px}.decision-body.svelte-1gmf2hi{font-size:.75rem;color:var(--text-dim);line-height:1.4}.decision-reasoning.svelte-1gmf2hi{font-size:.7rem;color:var(--text-muted);margin-top:3px;line-height:1.4;font-style:italic}.decision-alts.svelte-1gmf2hi{font-size:.7rem;color:var(--text-muted);margin-top:3px}.modal-backdrop.svelte-1efofyg{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:200}.dialog.svelte-1efofyg{background:var(--surface);border:1px solid var(--border-bright);border-top:3px solid var(--danger);border-radius:var(--radius);padding:20px;width:340px;max-width:90vw}h3.svelte-1efofyg{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--danger);margin-bottom:10px}p.svelte-1efofyg{color:var(--text-dim);font-size:.78rem;margin-bottom:18px;line-height:1.5}.actions.svelte-1efofyg{display:flex;justify-content:flex-end;gap:8px}.btn-cancel.svelte-1efofyg,.btn-confirm.svelte-1efofyg{padding:5px 14px;border-radius:var(--radius-sm);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.5px}.btn-cancel.svelte-1efofyg{background:none;border:1px solid var(--border-bright);color:var(--text-muted)}.btn-cancel.svelte-1efofyg:hover{color:var(--text);border-color:var(--text-muted)}.btn-confirm.svelte-1efofyg{background:var(--danger);border:1px solid var(--danger);color:#fff}.btn-confirm.svelte-1efofyg:hover{background:var(--danger-hover);border-color:var(--danger-hover)}.filter-bar.svelte-dhotvj{display:flex;align-items:center;gap:16px;padding:6px 16px;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;flex-shrink:0}.filter-search.svelte-dhotvj{position:relative;display:flex;align-items:center}.search-icon.svelte-dhotvj{position:absolute;left:8px;color:var(--primary);font-weight:700;font-size:.85rem;pointer-events:none}.filter-search.svelte-dhotvj input:where(.svelte-dhotvj){background:var(--bg);border:1px solid var(--border-bright);border-radius:var(--radius-sm);color:var(--text);padding:4px 26px 4px 22px;width:180px;font-size:.75rem}.filter-search.svelte-dhotvj input:where(.svelte-dhotvj):focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-dim)}.filter-search.svelte-dhotvj input:where(.svelte-dhotvj)::placeholder{color:var(--text-muted)}.clear-input.svelte-dhotvj{position:absolute;right:6px;background:none;border:none;color:var(--text-muted);font-size:.9rem;line-height:1;padding:0}.clear-input.svelte-dhotvj:hover{color:var(--text)}.filter-section.svelte-dhotvj{display:flex;align-items:center;gap:6px}.filter-label.svelte-dhotvj{font-size:.65rem;color:var(--text-muted);white-space:nowrap}.chip-group.svelte-dhotvj{display:flex;gap:4px;flex-wrap:wrap}.chip.svelte-dhotvj{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 7px;border-radius:2px;border:1px solid var(--border-bright);background:none;color:var(--text-muted);transition:border-color .1s,color .1s,background .1s}.chip.svelte-dhotvj:hover{border-color:var(--chip-color, var(--text-dim));color:var(--chip-color, var(--text))}.chip.active.svelte-dhotvj{border-color:var(--chip-color, var(--primary));color:var(--chip-color, var(--primary));background:color-mix(in srgb,var(--chip-color, var(--primary)) 12%,transparent)}.tag-dropdown-wrapper.svelte-dhotvj{position:relative}.dropdown-trigger.svelte-dhotvj{font-size:.62rem;font-weight:700;padding:2px 8px;border-radius:2px;border:1px solid var(--border-bright);background:none;color:var(--text-muted);transition:border-color .1s,color .1s;letter-spacing:.5px}.dropdown-trigger.svelte-dhotvj:hover{border-color:var(--primary);color:var(--primary)}.dropdown-trigger.active.svelte-dhotvj{border-color:var(--primary);color:var(--primary);background:var(--primary-dim)}.tag-dropdown.svelte-dhotvj{position:absolute;top:calc(100% + 4px);left:0;background:var(--surface);border:1px solid var(--border-bright);border-radius:var(--radius);min-width:140px;z-index:50;overflow:hidden}.tag-option.svelte-dhotvj{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;background:none;border:none;color:var(--text-dim);font-size:.72rem;text-align:left;transition:background .1s,color .1s}.tag-option.svelte-dhotvj:hover{background:var(--surface-2);color:var(--text)}.tag-option.selected.svelte-dhotvj{color:var(--primary)}.tag-checkbox.svelte-dhotvj{font-size:.65rem;color:var(--primary);width:10px;text-align:center;flex-shrink:0}.tag-option.svelte-dhotvj:not(.selected) .tag-checkbox:where(.svelte-dhotvj){color:var(--border-bright)}.tag-name.svelte-dhotvj{flex:1}.tag-clear.svelte-dhotvj{display:block;width:100%;padding:5px 10px;background:none;border:none;border-top:1px solid var(--border);color:var(--danger);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;text-align:left;transition:background .1s}.tag-clear.svelte-dhotvj:hover{background:var(--surface-2)}.clear-all.svelte-dhotvj{background:none;border:none;color:var(--danger);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 0;margin-left:auto}.clear-all.svelte-dhotvj:hover{color:var(--danger-hover)}.shortcuts-hint.svelte-dhotvj{display:flex;gap:10px;margin-left:auto}.shortcuts-hint.svelte-dhotvj span:where(.svelte-dhotvj){font-size:.6rem;color:var(--text-muted);display:flex;align-items:center;gap:3px}kbd.svelte-dhotvj{font-family:var(--font-mono);font-size:.58rem;background:var(--surface-2);border:1px solid var(--border-bright);border-radius:2px;padding:1px 4px;color:var(--text-dim)}.board-wrapper.svelte-x7v2jt{flex:1;overflow-x:auto;overflow-y:hidden;padding:12px;min-height:0}.board.svelte-x7v2jt{display:flex;gap:10px;align-items:flex-start;height:100%}.board-message.svelte-x7v2jt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:200px;color:var(--text-muted);font-size:1rem}.board-message.error.svelte-x7v2jt{color:var(--danger)}.board-message.svelte-x7v2jt button:where(.svelte-x7v2jt){padding:5px 14px;background:none;color:var(--primary);border:1px solid var(--primary);border-radius:var(--radius-sm);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.board-message.svelte-x7v2jt button:where(.svelte-x7v2jt):hover{background:var(--primary-dim)}.palette-backdrop.svelte-1bm0yy4{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;z-index:300}.palette.svelte-1bm0yy4{background:var(--surface);border:1px solid var(--border-bright);border-radius:var(--radius);width:480px;max-width:95vw;overflow:hidden}.palette-input-row.svelte-1bm0yy4{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border)}.palette-prompt.svelte-1bm0yy4{color:var(--primary);font-weight:700;font-size:.9rem;flex-shrink:0}.palette-input-row.svelte-1bm0yy4 input:where(.svelte-1bm0yy4){flex:1;background:none;border:none;color:var(--text);font-size:.85rem;outline:none}.palette-input-row.svelte-1bm0yy4 input:where(.svelte-1bm0yy4)::placeholder{color:var(--text-muted)}.palette-list.svelte-1bm0yy4{max-height:260px;overflow-y:auto}.palette-item.svelte-1bm0yy4{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;cursor:pointer;gap:12px}.palette-item.active.svelte-1bm0yy4{background:var(--surface-2);border-left:2px solid var(--primary);padding-left:12px}.item-label.svelte-1bm0yy4{font-size:.8rem;color:var(--text)}.item-hint.svelte-1bm0yy4{font-size:.68rem;color:var(--text-muted);white-space:nowrap}.palette-empty.svelte-1bm0yy4{padding:16px 14px;font-size:.75rem;color:var(--text-muted)}.palette-footer.svelte-1bm0yy4{display:flex;gap:16px;padding:6px 14px;border-top:1px solid var(--border);background:var(--bg)}.palette-footer.svelte-1bm0yy4 span:where(.svelte-1bm0yy4){font-size:.62rem;color:var(--text-muted);display:flex;align-items:center;gap:4px}kbd.svelte-1bm0yy4{font-family:var(--font-mono);font-size:.6rem;background:var(--surface-2);border:1px solid var(--border-bright);border-radius:2px;padding:1px 4px;color:var(--text-dim)}.app-layout.svelte-1n46o8q{display:flex;flex:1;overflow:hidden;min-height:0}.main.svelte-1n46o8q{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.loading.svelte-1n46o8q,.error.svelte-1n46o8q,.empty.svelte-1n46o8q{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:8px;font-size:.85rem}.prompt.svelte-1n46o8q{color:var(--primary)}.loading.svelte-1n46o8q{color:var(--text-dim)}.error.svelte-1n46o8q{color:var(--danger)}.err-prefix.svelte-1n46o8q{margin-right:6px}.empty-prompt.svelte-1n46o8q{color:var(--text)}.empty-hint.svelte-1n46o8q{color:var(--text-muted);font-size:.75rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0d0d0d;--surface: #141414;--surface-2: #1a1a1a;--border: #252525;--border-bright: #333333;--text: #d4d4d4;--text-muted: #555555;--text-dim: #888888;--primary: #39d353;--primary-hover: #2fb844;--primary-dim: rgba(57, 211, 83, .15);--danger: #f85149;--danger-hover: #da3633;--priority-critical: #f85149;--priority-high: #d29922;--priority-medium: #39d353;--priority-low: #3d444d;--column-bg: #111111;--card-shadow: none;--card-shadow-hover: 0 0 0 1px var(--border-bright);--radius: 4px;--radius-sm: 3px;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", "Consolas", "Courier New", monospace}body{font-family:var(--font-mono);background:var(--bg);color:var(--text);line-height:1.5;min-height:100vh;font-size:13px}button{cursor:pointer;font-family:inherit;font-size:inherit}input,textarea,select{font-family:inherit;font-size:inherit}#app{height:100vh;display:flex;flex-direction:column;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#444}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var Gs=Object.defineProperty;var xr=e=>{throw TypeError(e)};var Js=(e,t,n)=>t in e?Gs(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var et=(e,t,n)=>Js(e,typeof t!="symbol"?t+"":t,n),Gn=(e,t,n)=>t.has(e)||xr("Cannot "+n);var d=(e,t,n)=>(Gn(e,t,"read from private field"),n?n.call(e):t.get(e)),V=(e,t,n)=>t.has(e)?xr("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),B=(e,t,n,r)=>(Gn(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n),ce=(e,t,n)=>(Gn(e,t,"access private method"),n);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))r(a);new MutationObserver(a=>{for(const s of a)if(s.type==="childList")for(const l of s.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&r(l)}).observe(document,{childList:!0,subtree:!0});function n(a){const s={};return a.integrity&&(s.integrity=a.integrity),a.referrerPolicy&&(s.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?s.credentials="include":a.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function r(a){if(a.ep)return;a.ep=!0;const s=n(a);fetch(a.href,s)}})();const Qn=!1;var vr=Array.isArray,Ys=Array.prototype.indexOf,rn=Array.prototype.includes,Fn=Array.from,Ws=Object.defineProperty,Wt=Object.getOwnPropertyDescriptor,Qs=Object.getOwnPropertyDescriptors,Xs=Object.prototype,Zs=Array.prototype,Vr=Object.getPrototypeOf,Cr=Object.isExtensible;const Gr=()=>{};function $s(e){for(var t=0;t<e.length;t++)e[t]()}function Jr(){var e,t,n=new Promise((r,a)=>{e=r,t=a});return{promise:n,resolve:e,reject:t}}const _e=2,xn=4,qn=8,Yr=1<<24,gt=16,We=32,Jt=64,Xn=128,Le=512,ve=1024,ge=2048,Ye=4096,Pe=8192,ht=16384,Ht=32768,sn=65536,jr=1<<17,Wr=1<<18,fn=1<<19,ea=1<<20,dt=1<<25,Ut=65536,Zn=1<<21,dr=1<<22,Tt=1<<23,Ft=Symbol("$state"),ta=Symbol("legacy props"),At=new class extends Error{constructor(){super(...arguments);et(this,"name","StaleReactionError");et(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};var Kr;const na=!!((Kr=globalThis.document)!=null&&Kr.contentType)&&globalThis.document.contentType.includes("xml");function ra(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function sa(e,t,n){throw new Error("https://svelte.dev/e/each_key_duplicate")}function aa(e){throw new Error("https://svelte.dev/e/effect_in_teardown")}function ia(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function la(e){throw new Error("https://svelte.dev/e/effect_orphan")}function oa(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function fa(e){throw new Error("https://svelte.dev/e/props_invalid_value")}function ua(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function ca(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function va(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function da(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}const ha=1,_a=2,Qr=4,ga=8,pa=16,ma=1,ya=4,ba=8,wa=16,ka=1,Ea=2,de=Symbol(),Xr="http://www.w3.org/1999/xhtml",Ta="http://www.w3.org/2000/svg",Sa="http://www.w3.org/1998/Math/MathML";function xa(){console.warn("https://svelte.dev/e/select_multiple_invalid_value")}function Ca(){console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}function Zr(e){return e===this.v}function ja(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}function $r(e){return!ja(e,this.v)}let Pa=!1,Fe=null;function an(e){Fe=e}function Qe(e,t=!1,n){Fe={p:Fe,i:!1,c:null,e:null,s:e,x:null,l:null}}function Xe(e){var t=Fe,n=t.e;if(n!==null){t.e=null;for(var r of n)ws(r)}return t.i=!0,Fe=t.p,{}}function es(){return!0}let Dt=[];function ts(){var e=Dt;Dt=[],$s(e)}function st(e){if(Dt.length===0&&!_n){var t=Dt;queueMicrotask(()=>{t===Dt&&ts()})}Dt.push(e)}function Aa(){for(;Dt.length>0;)ts()}function ns(e){var t=J;if(t===null)return K.f|=Tt,e;if((t.f&Ht)===0&&(t.f&xn)===0)throw e;Et(e,t)}function Et(e,t){for(;t!==null;){if((t.f&Xn)!==0){if((t.f&Ht)===0)throw e;try{t.b.error(e);return}catch(n){e=n}}t=t.parent}throw e}const Da=-7169;function se(e,t){e.f=e.f&Da|t}function hr(e){(e.f&Le)!==0||e.deps===null?se(e,ve):se(e,Ye)}function rs(e){if(e!==null)for(const t of e)(t.f&_e)===0||(t.f&Ut)===0||(t.f^=Ut,rs(t.deps))}function ss(e,t,n){(e.f&ge)!==0?t.add(e):(e.f&Ye)!==0&&n.add(e),rs(e.deps),se(e,ve)}const An=new Set;let R=null,Ln=null,he=null,we=[],Bn=null,$n=!1,_n=!1;var Qt,Xt,It,Zt,kn,En,Mt,ft,$t,Ae,er,tr,nr,as;const Er=class Er{constructor(){V(this,Ae);et(this,"current",new Map);et(this,"previous",new Map);V(this,Qt,new Set);V(this,Xt,new Set);V(this,It,0);V(this,Zt,0);V(this,kn,null);V(this,En,new Set);V(this,Mt,new Set);V(this,ft,new Map);et(this,"is_fork",!1);V(this,$t,!1)}skip_effect(t){d(this,ft).has(t)||d(this,ft).set(t,{d:[],m:[]})}unskip_effect(t){var n=d(this,ft).get(t);if(n){d(this,ft).delete(t);for(var r of n.d)se(r,ge),Ge(r);for(r of n.m)se(r,Ye),Ge(r)}}process(t){var a;we=[],this.apply();var n=[],r=[];for(const s of t)ce(this,Ae,tr).call(this,s,n,r);if(ce(this,Ae,er).call(this)){ce(this,Ae,nr).call(this,r),ce(this,Ae,nr).call(this,n);for(const[s,l]of d(this,ft))fs(s,l)}else{for(const s of d(this,Qt))s();d(this,Qt).clear(),d(this,It)===0&&ce(this,Ae,as).call(this),Ln=this,R=null,Pr(r),Pr(n),Ln=null,(a=d(this,kn))==null||a.resolve()}he=null}capture(t,n){n!==de&&!this.previous.has(t)&&this.previous.set(t,n),(t.f&Tt)===0&&(this.current.set(t,t.v),he==null||he.set(t,t.v))}activate(){R=this,this.apply()}deactivate(){R===this&&(R=null,he=null)}flush(){if(this.activate(),we.length>0){if(is(),R!==null&&R!==this)return}else d(this,It)===0&&this.process([]);this.deactivate()}discard(){for(const t of d(this,Xt))t(this);d(this,Xt).clear()}increment(t){B(this,It,d(this,It)+1),t&&B(this,Zt,d(this,Zt)+1)}decrement(t){B(this,It,d(this,It)-1),t&&B(this,Zt,d(this,Zt)-1),!d(this,$t)&&(B(this,$t,!0),st(()=>{B(this,$t,!1),ce(this,Ae,er).call(this)?we.length>0&&this.flush():this.revive()}))}revive(){for(const t of d(this,En))d(this,Mt).delete(t),se(t,ge),Ge(t);for(const t of d(this,Mt))se(t,Ye),Ge(t);this.flush()}oncommit(t){d(this,Qt).add(t)}ondiscard(t){d(this,Xt).add(t)}settled(){return(d(this,kn)??B(this,kn,Jr())).promise}static ensure(){if(R===null){const t=R=new Er;An.add(R),_n||st(()=>{R===t&&t.flush()})}return R}apply(){}};Qt=new WeakMap,Xt=new WeakMap,It=new WeakMap,Zt=new WeakMap,kn=new WeakMap,En=new WeakMap,Mt=new WeakMap,ft=new WeakMap,$t=new WeakMap,Ae=new WeakSet,er=function(){return this.is_fork||d(this,Zt)>0},tr=function(t,n,r){t.f^=ve;for(var a=t.first;a!==null;){var s=a.f,l=(s&(We|Jt))!==0,f=l&&(s&ve)!==0,o=f||(s&Pe)!==0||d(this,ft).has(a);if(!o&&a.fn!==null){l?a.f^=ve:(s&xn)!==0?n.push(a):jn(a)&&((s>)!==0&&d(this,Mt).add(a),on(a));var u=a.first;if(u!==null){a=u;continue}}for(;a!==null;){var c=a.next;if(c!==null){a=c;break}a=a.parent}}},nr=function(t){for(var n=0;n<t.length;n+=1)ss(t[n],d(this,En),d(this,Mt))},as=function(){var a;if(An.size>1){this.previous.clear();var t=he,n=!0;for(const s of An){if(s===this){n=!1;continue}const l=[];for(const[o,u]of this.current){if(s.current.has(o))if(n&&u!==s.current.get(o))s.current.set(o,u);else continue;l.push(o)}if(l.length===0)continue;const f=[...s.current.keys()].filter(o=>!this.current.has(o));if(f.length>0){var r=we;we=[];const o=new Set,u=new Map;for(const c of l)ls(c,f,o,u);if(we.length>0){R=s,s.apply();for(const c of we)ce(a=s,Ae,tr).call(a,c,[],[]);s.deactivate()}we=r}}R=null,he=t}An.delete(this)};let St=Er;function Na(e){var t=_n;_n=!0;try{for(var n;;){if(Aa(),we.length===0&&(R==null||R.flush(),we.length===0))return Bn=null,n;is()}}finally{_n=t}}function is(){$n=!0;var e=null;try{for(var t=0;we.length>0;){var n=St.ensure();if(t++>1e3){var r,a;Oa()}n.process(we),xt.clear()}}finally{we=[],$n=!1,Bn=null}}function Oa(){try{oa()}catch(e){Et(e,Bn)}}let He=null;function Pr(e){var t=e.length;if(t!==0){for(var n=0;n<t;){var r=e[n++];if((r.f&(ht|Pe))===0&&jn(r)&&(He=new Set,on(r),r.deps===null&&r.first===null&&r.nodes===null&&r.teardown===null&&r.ac===null&&Ss(r),(He==null?void 0:He.size)>0)){xt.clear();for(const a of He){if((a.f&(ht|Pe))!==0)continue;const s=[a];let l=a.parent;for(;l!==null;)He.has(l)&&(He.delete(l),s.push(l)),l=l.parent;for(let f=s.length-1;f>=0;f--){const o=s[f];(o.f&(ht|Pe))===0&&on(o)}}He.clear()}}He=null}}function ls(e,t,n,r){if(!n.has(e)&&(n.add(e),e.reactions!==null))for(const a of e.reactions){const s=a.f;(s&_e)!==0?ls(a,t,n,r):(s&(dr|gt))!==0&&(s&ge)===0&&os(a,t,r)&&(se(a,ge),Ge(a))}}function os(e,t,n){const r=n.get(e);if(r!==void 0)return r;if(e.deps!==null)for(const a of e.deps){if(rn.call(t,a))return!0;if((a.f&_e)!==0&&os(a,t,n))return n.set(a,!0),!0}return n.set(e,!1),!1}function Ge(e){var t=Bn=e,n=t.b;if(n!=null&&n.is_pending&&(e.f&(xn|qn|Yr))!==0&&(e.f&Ht)===0){n.defer_effect(e);return}for(;t.parent!==null;){t=t.parent;var r=t.f;if($n&&t===J&&(r>)!==0&&(r&Wr)===0&&(r&Ht)!==0)return;if((r&(Jt|We))!==0){if((r&ve)===0)return;t.f^=ve}}we.push(t)}function fs(e,t){if(!((e.f&We)!==0&&(e.f&ve)!==0)){(e.f&ge)!==0?t.d.push(e):(e.f&Ye)!==0&&t.m.push(e),se(e,ve);for(var n=e.first;n!==null;)fs(n,t),n=n.next}}function Ia(e){let t=0,n=Vt(0),r;return()=>{pr()&&(i(n),yr(()=>(t===0&&(r=Un(()=>e(()=>gn(n)))),t+=1,()=>{st(()=>{t-=1,t===0&&(r==null||r(),r=void 0,gn(n))})})))}}var Ma=sn|fn;function La(e,t,n,r){new Ra(e,t,n,r)}var Oe,cr,tt,Lt,be,nt,xe,Ue,ut,Rt,kt,en,tn,nn,ct,Rn,ue,za,Fa,qa,rr,On,In,sr;class Ra{constructor(t,n,r,a){V(this,ue);et(this,"parent");et(this,"is_pending",!1);et(this,"transform_error");V(this,Oe);V(this,cr,null);V(this,tt);V(this,Lt);V(this,be);V(this,nt,null);V(this,xe,null);V(this,Ue,null);V(this,ut,null);V(this,Rt,0);V(this,kt,0);V(this,en,!1);V(this,tn,new Set);V(this,nn,new Set);V(this,ct,null);V(this,Rn,Ia(()=>(B(this,ct,Vt(d(this,Rt))),()=>{B(this,ct,null)})));var s;B(this,Oe,t),B(this,tt,n),B(this,Lt,l=>{var f=J;f.b=this,f.f|=Xn,r(l)}),this.parent=J.b,this.transform_error=a??((s=this.parent)==null?void 0:s.transform_error)??(l=>l),B(this,be,br(()=>{ce(this,ue,rr).call(this)},Ma))}defer_effect(t){ss(t,d(this,tn),d(this,nn))}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!d(this,tt).pending}update_pending_count(t){ce(this,ue,sr).call(this,t),B(this,Rt,d(this,Rt)+t),!(!d(this,ct)||d(this,en))&&(B(this,en,!0),st(()=>{B(this,en,!1),d(this,ct)&&ln(d(this,ct),d(this,Rt))}))}get_effect_pending(){return d(this,Rn).call(this),i(d(this,ct))}error(t){var n=d(this,tt).onerror;let r=d(this,tt).failed;if(!n&&!r)throw t;d(this,nt)&&(Ee(d(this,nt)),B(this,nt,null)),d(this,xe)&&(Ee(d(this,xe)),B(this,xe,null)),d(this,Ue)&&(Ee(d(this,Ue)),B(this,Ue,null));var a=!1,s=!1;const l=()=>{if(a){Ca();return}a=!0,s&&da(),d(this,Ue)!==null&&Bt(d(this,Ue),()=>{B(this,Ue,null)}),ce(this,ue,In).call(this,()=>{St.ensure(),ce(this,ue,rr).call(this)})},f=o=>{try{s=!0,n==null||n(o,l),s=!1}catch(u){Et(u,d(this,be)&&d(this,be).parent)}r&&B(this,Ue,ce(this,ue,In).call(this,()=>{St.ensure();try{return Ie(()=>{var u=J;u.b=this,u.f|=Xn,r(d(this,Oe),()=>o,()=>l)})}catch(u){return Et(u,d(this,be).parent),null}}))};st(()=>{var o;try{o=this.transform_error(t)}catch(u){Et(u,d(this,be)&&d(this,be).parent);return}o!==null&&typeof o=="object"&&typeof o.then=="function"?o.then(f,u=>Et(u,d(this,be)&&d(this,be).parent)):f(o)})}}Oe=new WeakMap,cr=new WeakMap,tt=new WeakMap,Lt=new WeakMap,be=new WeakMap,nt=new WeakMap,xe=new WeakMap,Ue=new WeakMap,ut=new WeakMap,Rt=new WeakMap,kt=new WeakMap,en=new WeakMap,tn=new WeakMap,nn=new WeakMap,ct=new WeakMap,Rn=new WeakMap,ue=new WeakSet,za=function(){try{B(this,nt,Ie(()=>d(this,Lt).call(this,d(this,Oe))))}catch(t){this.error(t)}},Fa=function(t){const n=d(this,tt).failed;n&&B(this,Ue,Ie(()=>{n(d(this,Oe),()=>t,()=>()=>{})}))},qa=function(){const t=d(this,tt).pending;t&&(this.is_pending=!0,B(this,xe,Ie(()=>t(d(this,Oe)))),st(()=>{var n=B(this,ut,document.createDocumentFragment()),r=_t();n.append(r),B(this,nt,ce(this,ue,In).call(this,()=>(St.ensure(),Ie(()=>d(this,Lt).call(this,r))))),d(this,kt)===0&&(d(this,Oe).before(n),B(this,ut,null),Bt(d(this,xe),()=>{B(this,xe,null)}),ce(this,ue,On).call(this))}))},rr=function(){try{if(this.is_pending=this.has_pending_snippet(),B(this,kt,0),B(this,Rt,0),B(this,nt,Ie(()=>{d(this,Lt).call(this,d(this,Oe))})),d(this,kt)>0){var t=B(this,ut,document.createDocumentFragment());js(d(this,nt),t);const n=d(this,tt).pending;B(this,xe,Ie(()=>n(d(this,Oe))))}else ce(this,ue,On).call(this)}catch(n){this.error(n)}},On=function(){this.is_pending=!1;for(const t of d(this,tn))se(t,ge),Ge(t);for(const t of d(this,nn))se(t,Ye),Ge(t);d(this,tn).clear(),d(this,nn).clear()},In=function(t){var n=J,r=K,a=Fe;at(d(this,be)),qe(d(this,be)),an(d(this,be).ctx);try{return t()}catch(s){return ns(s),null}finally{at(n),qe(r),an(a)}},sr=function(t){var n;if(!this.has_pending_snippet()){this.parent&&ce(n=this.parent,ue,sr).call(n,t);return}B(this,kt,d(this,kt)+t),d(this,kt)===0&&(ce(this,ue,On).call(this),d(this,xe)&&Bt(d(this,xe),()=>{B(this,xe,null)}),d(this,ut)&&(d(this,Oe).before(d(this,ut)),B(this,ut,null)))};function Ba(e,t,n,r){const a=Kn;var s=e.filter(h=>!h.settled);if(n.length===0&&s.length===0){r(t.map(a));return}var l=J,f=Ka(),o=s.length===1?s[0].promise:s.length>1?Promise.all(s.map(h=>h.promise)):null;function u(h){f();try{r(h)}catch(g){(l.f&ht)===0&&Et(g,l)}ar()}if(n.length===0){o.then(()=>u(t.map(a)));return}function c(){f(),Promise.all(n.map(h=>Ua(h))).then(h=>u([...t.map(a),...h])).catch(h=>Et(h,l))}o?o.then(c):c()}function Ka(){var e=J,t=K,n=Fe,r=R;return function(s=!0){at(e),qe(t),an(n),s&&(r==null||r.activate())}}function ar(e=!0){at(null),qe(null),an(null),e&&(R==null||R.deactivate())}function Ha(){var e=J.b,t=R,n=e.is_rendered();return e.update_pending_count(1),t.increment(n),()=>{e.update_pending_count(-1),t.decrement(n)}}function Kn(e){var t=_e|ge,n=K!==null&&(K.f&_e)!==0?K:null;return J!==null&&(J.f|=fn),{ctx:Fe,deps:null,effects:null,equals:Zr,f:t,fn:e,reactions:null,rv:0,v:de,wv:0,parent:n??J,ac:null}}function Ua(e,t,n){J===null&&ra();var a=void 0,s=Vt(de),l=!K,f=new Map;return ri(()=>{var g;var o=Jr();a=o.promise;try{Promise.resolve(e()).then(o.resolve,o.reject).finally(ar)}catch(b){o.reject(b),ar()}var u=R;if(l){var c=Ha();(g=f.get(u))==null||g.reject(At),f.delete(u),f.set(u,o)}const h=(b,_=void 0)=>{if(u.activate(),_)_!==At&&(s.f|=Tt,ln(s,_));else{(s.f&Tt)!==0&&(s.f^=Tt),ln(s,b);for(const[T,v]of f){if(f.delete(T),T===u)break;v.reject(At)}}c&&c()};o.promise.then(h,b=>h(null,b||"unknown"))}),mr(()=>{for(const o of f.values())o.reject(At)}),new Promise(o=>{function u(c){function h(){c===a?o(s):u(a)}c.then(h,h)}u(a)})}function re(e){const t=Kn(e);return Ps(t),t}function us(e){const t=Kn(e);return t.equals=$r,t}function Va(e){var t=e.effects;if(t!==null){e.effects=null;for(var n=0;n<t.length;n+=1)Ee(t[n])}}function Ga(e){for(var t=e.parent;t!==null;){if((t.f&_e)===0)return(t.f&ht)===0?t:null;t=t.parent}return null}function _r(e){var t,n=J;at(Ga(e));try{e.f&=~Ut,Va(e),t=Os(e)}finally{at(n)}return t}function cs(e){var t=_r(e);if(!e.equals(t)&&(e.wv=Ds(),(!(R!=null&&R.is_fork)||e.deps===null)&&(e.v=t,e.deps===null))){se(e,ve);return}Pt||(he!==null?(pr()||R!=null&&R.is_fork)&&he.set(e,t):hr(e))}function Ja(e){var t,n;if(e.effects!==null)for(const r of e.effects)(r.teardown||r.ac)&&((t=r.teardown)==null||t.call(r),(n=r.ac)==null||n.abort(At),r.teardown=Gr,r.ac=null,yn(r,0),wr(r))}function vs(e){if(e.effects!==null)for(const t of e.effects)t.teardown&&on(t)}let ir=new Set;const xt=new Map;let ds=!1;function Vt(e,t){var n={f:0,v:e,reactions:null,equals:Zr,rv:0,wv:0};return n}function I(e,t){const n=Vt(e);return Ps(n),n}function Ya(e,t=!1,n=!0){const r=Vt(e);return t||(r.equals=$r),r}function m(e,t,n=!1){K!==null&&(!Je||(K.f&jr)!==0)&&es()&&(K.f&(_e|gt|dr|jr))!==0&&(Re===null||!rn.call(Re,e))&&va();let r=n?je(t):t;return ln(e,r)}function ln(e,t){if(!e.equals(t)){var n=e.v;Pt?xt.set(e,t):xt.set(e,n),e.v=t;var r=St.ensure();if(r.capture(e,n),(e.f&_e)!==0){const a=e;(e.f&ge)!==0&&_r(a),hr(a)}e.wv=Ds(),hs(e,ge),J!==null&&(J.f&ve)!==0&&(J.f&(We|Jt))===0&&(Ne===null?ai([e]):Ne.push(e)),!r.is_fork&&ir.size>0&&!ds&&Wa()}return t}function Wa(){ds=!1;for(const e of ir)(e.f&ve)!==0&&se(e,Ye),jn(e)&&on(e);ir.clear()}function gn(e){m(e,e.v+1)}function hs(e,t){var n=e.reactions;if(n!==null)for(var r=n.length,a=0;a<r;a++){var s=n[a],l=s.f,f=(l&ge)===0;if(f&&se(s,t),(l&_e)!==0){var o=s;he==null||he.delete(o),(l&Ut)===0&&(l&Le&&(s.f|=Ut),hs(o,Ye))}else f&&((l>)!==0&&He!==null&&He.add(s),Ge(s))}}function je(e){if(typeof e!="object"||e===null||Ft in e)return e;const t=Vr(e);if(t!==Xs&&t!==Zs)return e;var n=new Map,r=vr(e),a=I(0),s=Kt,l=f=>{if(Kt===s)return f();var o=K,u=Kt;qe(null),Or(s);var c=f();return qe(o),Or(u),c};return r&&n.set("length",I(e.length)),new Proxy(e,{defineProperty(f,o,u){(!("value"in u)||u.configurable===!1||u.enumerable===!1||u.writable===!1)&&ua();var c=n.get(o);return c===void 0?l(()=>{var h=I(u.value);return n.set(o,h),h}):m(c,u.value,!0),!0},deleteProperty(f,o){var u=n.get(o);if(u===void 0){if(o in f){const c=l(()=>I(de));n.set(o,c),gn(a)}}else m(u,de),gn(a);return!0},get(f,o,u){var b;if(o===Ft)return e;var c=n.get(o),h=o in f;if(c===void 0&&(!h||(b=Wt(f,o))!=null&&b.writable)&&(c=l(()=>{var _=je(h?f[o]:de),T=I(_);return T}),n.set(o,c)),c!==void 0){var g=i(c);return g===de?void 0:g}return Reflect.get(f,o,u)},getOwnPropertyDescriptor(f,o){var u=Reflect.getOwnPropertyDescriptor(f,o);if(u&&"value"in u){var c=n.get(o);c&&(u.value=i(c))}else if(u===void 0){var h=n.get(o),g=h==null?void 0:h.v;if(h!==void 0&&g!==de)return{enumerable:!0,configurable:!0,value:g,writable:!0}}return u},has(f,o){var g;if(o===Ft)return!0;var u=n.get(o),c=u!==void 0&&u.v!==de||Reflect.has(f,o);if(u!==void 0||J!==null&&(!c||(g=Wt(f,o))!=null&&g.writable)){u===void 0&&(u=l(()=>{var b=c?je(f[o]):de,_=I(b);return _}),n.set(o,u));var h=i(u);if(h===de)return!1}return c},set(f,o,u,c){var P;var h=n.get(o),g=o in f;if(r&&o==="length")for(var b=u;b<h.v;b+=1){var _=n.get(b+"");_!==void 0?m(_,de):b in f&&(_=l(()=>I(de)),n.set(b+"",_))}if(h===void 0)(!g||(P=Wt(f,o))!=null&&P.writable)&&(h=l(()=>I(void 0)),m(h,je(u)),n.set(o,h));else{g=h.v!==de;var T=l(()=>je(u));m(h,T)}var v=Reflect.getOwnPropertyDescriptor(f,o);if(v!=null&&v.set&&v.set.call(c,u),!g){if(r&&typeof o=="string"){var w=n.get("length"),S=Number(o);Number.isInteger(S)&&S>=w.v&&m(w,S+1)}gn(a)}return!0},ownKeys(f){i(a);var o=Reflect.ownKeys(f).filter(h=>{var g=n.get(h);return g===void 0||g.v!==de});for(var[u,c]of n)c.v!==de&&!(u in f)&&o.push(u);return o},setPrototypeOf(){ca()}})}function Ar(e){try{if(e!==null&&typeof e=="object"&&Ft in e)return e[Ft]}catch{}return e}function Qa(e,t){return Object.is(Ar(e),Ar(t))}var jt,_s,gs,ps;function Xa(){if(jt===void 0){jt=window,_s=/Firefox/.test(navigator.userAgent);var e=Element.prototype,t=Node.prototype,n=Text.prototype;gs=Wt(t,"firstChild").get,ps=Wt(t,"nextSibling").get,Cr(e)&&(e.__click=void 0,e.__className=void 0,e.__attributes=null,e.__style=void 0,e.__e=void 0),Cr(n)&&(n.__t=void 0)}}function _t(e=""){return document.createTextNode(e)}function qt(e){return gs.call(e)}function Cn(e){return ps.call(e)}function k(e,t){return qt(e)}function Ct(e,t=!1){{var n=qt(e);return n instanceof Comment&&n.data===""?Cn(n):n}}function E(e,t=1,n=!1){let r=e;for(;t--;)r=Cn(r);return r}function Za(e){e.textContent=""}function ms(){return!1}function ys(e,t,n){return document.createElementNS(t??Xr,e,void 0)}function gr(e,t){{const n=document.body;e.autofocus=!0,st(()=>{document.activeElement===n&&e.focus()})}}let Dr=!1;function $a(){Dr||(Dr=!0,document.addEventListener("reset",e=>{Promise.resolve().then(()=>{var t;if(!e.defaultPrevented)for(const n of e.target.elements)(t=n.__on_r)==null||t.call(n)})},{capture:!0}))}function Hn(e){var t=K,n=J;qe(null),at(null);try{return e()}finally{qe(t),at(n)}}function bs(e,t,n,r=n){e.addEventListener(t,()=>Hn(n));const a=e.__on_r;a?e.__on_r=()=>{a(),r(!0)}:e.__on_r=()=>r(!0),$a()}function ei(e){J===null&&(K===null&&la(),ia()),Pt&&aa()}function ti(e,t){var n=t.last;n===null?t.last=t.first=e:(n.next=e,e.prev=n,t.last=e)}function pt(e,t,n){var r=J;r!==null&&(r.f&Pe)!==0&&(e|=Pe);var a={ctx:Fe,deps:null,nodes:null,f:e|ge|Le,first:null,fn:t,last:null,next:null,parent:r,b:r&&r.b,prev:null,teardown:null,wv:0,ac:null};if(n)try{on(a)}catch(f){throw Ee(a),f}else t!==null&&Ge(a);var s=a;if(n&&s.deps===null&&s.teardown===null&&s.nodes===null&&s.first===s.last&&(s.f&fn)===0&&(s=s.first,(e>)!==0&&(e&sn)!==0&&s!==null&&(s.f|=sn)),s!==null&&(s.parent=r,r!==null&&ti(s,r),K!==null&&(K.f&_e)!==0&&(e&Jt)===0)){var l=K;(l.effects??(l.effects=[])).push(s)}return a}function pr(){return K!==null&&!Je}function mr(e){const t=pt(qn,null,!1);return se(t,ve),t.teardown=e,t}function Gt(e){ei();var t=J.f,n=!K&&(t&We)!==0&&(t&Ht)===0;if(n){var r=Fe;(r.e??(r.e=[])).push(e)}else return ws(e)}function ws(e){return pt(xn|ea,e,!1)}function ni(e){St.ensure();const t=pt(Jt|fn,e,!0);return(n={})=>new Promise(r=>{n.outro?Bt(t,()=>{Ee(t),r(void 0)}):(Ee(t),r(void 0))})}function ks(e){return pt(xn,e,!1)}function ri(e){return pt(dr|fn,e,!0)}function yr(e,t=0){return pt(qn|t,e,!0)}function H(e,t=[],n=[],r=[]){Ba(r,t,n,a=>{pt(qn,()=>e(...a.map(i)),!0)})}function br(e,t=0){var n=pt(gt|t,e,!0);return n}function Ie(e){return pt(We|fn,e,!0)}function Es(e){var t=e.teardown;if(t!==null){const n=Pt,r=K;Nr(!0),qe(null);try{t.call(null)}finally{Nr(n),qe(r)}}}function wr(e,t=!1){var n=e.first;for(e.first=e.last=null;n!==null;){const a=n.ac;a!==null&&Hn(()=>{a.abort(At)});var r=n.next;(n.f&Jt)!==0?n.parent=null:Ee(n,t),n=r}}function si(e){for(var t=e.first;t!==null;){var n=t.next;(t.f&We)===0&&Ee(t),t=n}}function Ee(e,t=!0){var n=!1;(t||(e.f&Wr)!==0)&&e.nodes!==null&&e.nodes.end!==null&&(Ts(e.nodes.start,e.nodes.end),n=!0),wr(e,t&&!n),yn(e,0),se(e,ht);var r=e.nodes&&e.nodes.t;if(r!==null)for(const s of r)s.stop();Es(e);var a=e.parent;a!==null&&a.first!==null&&Ss(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=null}function Ts(e,t){for(;e!==null;){var n=e===t?null:Cn(e);e.remove(),e=n}}function Ss(e){var t=e.parent,n=e.prev,r=e.next;n!==null&&(n.next=r),r!==null&&(r.prev=n),t!==null&&(t.first===e&&(t.first=r),t.last===e&&(t.last=n))}function Bt(e,t,n=!0){var r=[];xs(e,r,!0);var a=()=>{n&&Ee(e),t&&t()},s=r.length;if(s>0){var l=()=>--s||a();for(var f of r)f.out(l)}else a()}function xs(e,t,n){if((e.f&Pe)===0){e.f^=Pe;var r=e.nodes&&e.nodes.t;if(r!==null)for(const f of r)(f.is_global||n)&&t.push(f);for(var a=e.first;a!==null;){var s=a.next,l=(a.f&sn)!==0||(a.f&We)!==0&&(e.f>)!==0;xs(a,t,l?n:!1),a=s}}}function kr(e){Cs(e,!0)}function Cs(e,t){if((e.f&Pe)!==0){e.f^=Pe,(e.f&ve)===0&&(se(e,ge),Ge(e));for(var n=e.first;n!==null;){var r=n.next,a=(n.f&sn)!==0||(n.f&We)!==0;Cs(n,a?t:!1),n=r}var s=e.nodes&&e.nodes.t;if(s!==null)for(const l of s)(l.is_global||t)&&l.in()}}function js(e,t){if(e.nodes)for(var n=e.nodes.start,r=e.nodes.end;n!==null;){var a=n===r?null:Cn(n);t.append(n),n=a}}let Mn=!1,Pt=!1;function Nr(e){Pt=e}let K=null,Je=!1;function qe(e){K=e}let J=null;function at(e){J=e}let Re=null;function Ps(e){K!==null&&(Re===null?Re=[e]:Re.push(e))}let ke=null,Se=0,Ne=null;function ai(e){Ne=e}let As=1,Nt=0,Kt=Nt;function Or(e){Kt=e}function Ds(){return++As}function jn(e){var t=e.f;if((t&ge)!==0)return!0;if(t&_e&&(e.f&=~Ut),(t&Ye)!==0){for(var n=e.deps,r=n.length,a=0;a<r;a++){var s=n[a];if(jn(s)&&cs(s),s.wv>e.wv)return!0}(t&Le)!==0&&he===null&&se(e,ve)}return!1}function Ns(e,t,n=!0){var r=e.reactions;if(r!==null&&!(Re!==null&&rn.call(Re,e)))for(var a=0;a<r.length;a++){var s=r[a];(s.f&_e)!==0?Ns(s,t,!1):t===s&&(n?se(s,ge):(s.f&ve)!==0&&se(s,Ye),Ge(s))}}function Os(e){var T;var t=ke,n=Se,r=Ne,a=K,s=Re,l=Fe,f=Je,o=Kt,u=e.f;ke=null,Se=0,Ne=null,K=(u&(We|Jt))===0?e:null,Re=null,an(e.ctx),Je=!1,Kt=++Nt,e.ac!==null&&(Hn(()=>{e.ac.abort(At)}),e.ac=null);try{e.f|=Zn;var c=e.fn,h=c();e.f|=Ht;var g=e.deps,b=R==null?void 0:R.is_fork;if(ke!==null){var _;if(b||yn(e,Se),g!==null&&Se>0)for(g.length=Se+ke.length,_=0;_<ke.length;_++)g[Se+_]=ke[_];else e.deps=g=ke;if(pr()&&(e.f&Le)!==0)for(_=Se;_<g.length;_++)((T=g[_]).reactions??(T.reactions=[])).push(e)}else!b&&g!==null&&Se<g.length&&(yn(e,Se),g.length=Se);if(es()&&Ne!==null&&!Je&&g!==null&&(e.f&(_e|Ye|ge))===0)for(_=0;_<Ne.length;_++)Ns(Ne[_],e);if(a!==null&&a!==e){if(Nt++,a.deps!==null)for(let v=0;v<n;v+=1)a.deps[v].rv=Nt;if(t!==null)for(const v of t)v.rv=Nt;Ne!==null&&(r===null?r=Ne:r.push(...Ne))}return(e.f&Tt)!==0&&(e.f^=Tt),h}catch(v){return ns(v)}finally{e.f^=Zn,ke=t,Se=n,Ne=r,K=a,Re=s,an(l),Je=f,Kt=o}}function ii(e,t){let n=t.reactions;if(n!==null){var r=Ys.call(n,e);if(r!==-1){var a=n.length-1;a===0?n=t.reactions=null:(n[r]=n[a],n.pop())}}if(n===null&&(t.f&_e)!==0&&(ke===null||!rn.call(ke,t))){var s=t;(s.f&Le)!==0&&(s.f^=Le,s.f&=~Ut),hr(s),Ja(s),yn(s,0)}}function yn(e,t){var n=e.deps;if(n!==null)for(var r=t;r<n.length;r++)ii(e,n[r])}function on(e){var t=e.f;if((t&ht)===0){se(e,ve);var n=J,r=Mn;J=e,Mn=!0;try{(t&(gt|Yr))!==0?si(e):wr(e),Es(e);var a=Os(e);e.teardown=typeof a=="function"?a:null,e.wv=As;var s;Qn&&Pa&&(e.f&ge)!==0&&e.deps}finally{Mn=r,J=n}}}async function li(){await Promise.resolve(),Na()}function i(e){var t=e.f,n=(t&_e)!==0;if(K!==null&&!Je){var r=J!==null&&(J.f&ht)!==0;if(!r&&(Re===null||!rn.call(Re,e))){var a=K.deps;if((K.f&Zn)!==0)e.rv<Nt&&(e.rv=Nt,ke===null&&a!==null&&a[Se]===e?Se++:ke===null?ke=[e]:ke.push(e));else{(K.deps??(K.deps=[])).push(e);var s=e.reactions;s===null?e.reactions=[K]:rn.call(s,K)||s.push(K)}}}if(Pt&&xt.has(e))return xt.get(e);if(n){var l=e;if(Pt){var f=l.v;return((l.f&ve)===0&&l.reactions!==null||Ms(l))&&(f=_r(l)),xt.set(l,f),f}var o=(l.f&Le)===0&&!Je&&K!==null&&(Mn||(K.f&Le)!==0),u=(l.f&Ht)===0;jn(l)&&(o&&(l.f|=Le),cs(l)),o&&!u&&(vs(l),Is(l))}if(he!=null&&he.has(e))return he.get(e);if((e.f&Tt)!==0)throw e.v;return e.v}function Is(e){if(e.f|=Le,e.deps!==null)for(const t of e.deps)(t.reactions??(t.reactions=[])).push(e),(t.f&_e)!==0&&(t.f&Le)===0&&(vs(t),Is(t))}function Ms(e){if(e.v===de)return!0;if(e.deps===null)return!1;for(const t of e.deps)if(xt.has(t)||(t.f&_e)!==0&&Ms(t))return!0;return!1}function Un(e){var t=Je;try{return Je=!0,e()}finally{Je=t}}const oi=["touchstart","touchmove"];function fi(e){return oi.includes(e)}const Ot=Symbol("events"),Ls=new Set,lr=new Set;function ui(e,t,n,r={}){function a(s){if(r.capture||or.call(t,s),!s.cancelBubble)return Hn(()=>n==null?void 0:n.call(this,s))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?st(()=>{t.addEventListener(e,a,r)}):t.addEventListener(e,a,r),a}function Te(e,t,n,r,a){var s={capture:r,passive:a},l=ui(e,t,n,s);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&mr(()=>{t.removeEventListener(e,l,s)})}function W(e,t,n){(t[Ot]??(t[Ot]={}))[e]=n}function mt(e){for(var t=0;t<e.length;t++)Ls.add(e[t]);for(var n of lr)n(e)}let Ir=null;function or(e){var v,w;var t=this,n=t.ownerDocument,r=e.type,a=((v=e.composedPath)==null?void 0:v.call(e))||[],s=a[0]||e.target;Ir=e;var l=0,f=Ir===e&&e[Ot];if(f){var o=a.indexOf(f);if(o!==-1&&(t===document||t===window)){e[Ot]=t;return}var u=a.indexOf(t);if(u===-1)return;o<=u&&(l=o)}if(s=a[l]||e.target,s!==t){Ws(e,"currentTarget",{configurable:!0,get(){return s||n}});var c=K,h=J;qe(null),at(null);try{for(var g,b=[];s!==null;){var _=s.assignedSlot||s.parentNode||s.host||null;try{var T=(w=s[Ot])==null?void 0:w[r];T!=null&&(!s.disabled||e.target===s)&&T.call(s,e)}catch(S){g?b.push(S):g=S}if(e.cancelBubble||_===t||_===null)break;s=_}if(g){for(let S of b)queueMicrotask(()=>{throw S});throw g}}finally{e[Ot]=t,delete e.currentTarget,qe(c),at(h)}}}var Hr;const Jn=((Hr=globalThis==null?void 0:globalThis.window)==null?void 0:Hr.trustedTypes)&&globalThis.window.trustedTypes.createPolicy("svelte-trusted-html",{createHTML:e=>e});function ci(e){return(Jn==null?void 0:Jn.createHTML(e))??e}function vi(e){var t=ys("template");return t.innerHTML=ci(e.replaceAll("<!>","<!---->")),t.content}function bn(e,t){var n=J;n.nodes===null&&(n.nodes={start:e,end:t,a:null,t:null})}function D(e,t){var n=(t&ka)!==0,r=(t&Ea)!==0,a,s=!e.startsWith("<!>");return()=>{a===void 0&&(a=vi(s?e:"<!>"+e),n||(a=qt(a)));var l=r||_s?document.importNode(a,!0):a.cloneNode(!0);if(n){var f=qt(l),o=l.lastChild;bn(f,o)}else bn(l,l);return l}}function Mr(e=""){{var t=_t(e+"");return bn(t,t),t}}function di(){var e=document.createDocumentFragment(),t=document.createComment(""),n=_t();return e.append(t,n),bn(t,n),e}function C(e,t){e!==null&&e.before(t)}function F(e,t){var n=t==null?"":typeof t=="object"?t+"":t;n!==(e.__t??(e.__t=e.nodeValue))&&(e.__t=n,e.nodeValue=n+"")}function hi(e,t){return _i(e,t)}const Dn=new Map;function _i(e,{target:t,anchor:n,props:r={},events:a,context:s,intro:l=!0,transformError:f}){Xa();var o=void 0,u=ni(()=>{var c=n??t.appendChild(_t());La(c,{pending:()=>{}},b=>{Qe({});var _=Fe;s&&(_.c=s),a&&(r.$$events=a),o=e(b,r)||{},Xe()},f);var h=new Set,g=b=>{for(var _=0;_<b.length;_++){var T=b[_];if(!h.has(T)){h.add(T);var v=fi(T);for(const P of[t,document]){var w=Dn.get(P);w===void 0&&(w=new Map,Dn.set(P,w));var S=w.get(T);S===void 0?(P.addEventListener(T,or,{passive:v}),w.set(T,1)):w.set(T,S+1)}}}};return g(Fn(Ls)),lr.add(g),()=>{var v;for(var b of h)for(const w of[t,document]){var _=Dn.get(w),T=_.get(b);--T==0?(w.removeEventListener(b,or),_.delete(b),_.size===0&&Dn.delete(w)):_.set(b,T)}lr.delete(g),c!==n&&((v=c.parentNode)==null||v.removeChild(c))}});return gi.set(o,u),o}let gi=new WeakMap;var Ve,rt,Ce,zt,Tn,Sn,zn;class pi{constructor(t,n=!0){et(this,"anchor");V(this,Ve,new Map);V(this,rt,new Map);V(this,Ce,new Map);V(this,zt,new Set);V(this,Tn,!0);V(this,Sn,()=>{var t=R;if(d(this,Ve).has(t)){var n=d(this,Ve).get(t),r=d(this,rt).get(n);if(r)kr(r),d(this,zt).delete(n);else{var a=d(this,Ce).get(n);a&&(d(this,rt).set(n,a.effect),d(this,Ce).delete(n),a.fragment.lastChild.remove(),this.anchor.before(a.fragment),r=a.effect)}for(const[s,l]of d(this,Ve)){if(d(this,Ve).delete(s),s===t)break;const f=d(this,Ce).get(l);f&&(Ee(f.effect),d(this,Ce).delete(l))}for(const[s,l]of d(this,rt)){if(s===n||d(this,zt).has(s))continue;const f=()=>{if(Array.from(d(this,Ve).values()).includes(s)){var u=document.createDocumentFragment();js(l,u),u.append(_t()),d(this,Ce).set(s,{effect:l,fragment:u})}else Ee(l);d(this,zt).delete(s),d(this,rt).delete(s)};d(this,Tn)||!r?(d(this,zt).add(s),Bt(l,f,!1)):f()}}});V(this,zn,t=>{d(this,Ve).delete(t);const n=Array.from(d(this,Ve).values());for(const[r,a]of d(this,Ce))n.includes(r)||(Ee(a.effect),d(this,Ce).delete(r))});this.anchor=t,B(this,Tn,n)}ensure(t,n){var r=R,a=ms();if(n&&!d(this,rt).has(t)&&!d(this,Ce).has(t))if(a){var s=document.createDocumentFragment(),l=_t();s.append(l),d(this,Ce).set(t,{effect:Ie(()=>n(l)),fragment:s})}else d(this,rt).set(t,Ie(()=>n(this.anchor)));if(d(this,Ve).set(r,t),a){for(const[f,o]of d(this,rt))f===t?r.unskip_effect(o):r.skip_effect(o);for(const[f,o]of d(this,Ce))f===t?r.unskip_effect(o.effect):r.skip_effect(o.effect);r.oncommit(d(this,Sn)),r.ondiscard(d(this,zn))}else d(this,Sn).call(this)}}Ve=new WeakMap,rt=new WeakMap,Ce=new WeakMap,zt=new WeakMap,Tn=new WeakMap,Sn=new WeakMap,zn=new WeakMap;function U(e,t,n=!1){var r=new pi(e),a=n?sn:0;function s(l,f){r.ensure(l,f)}br(()=>{var l=!1;t((f,o=0)=>{l=!0,s(o,f)}),l||s(!1,null)},a)}function wn(e,t){return t}function mi(e,t,n){for(var r=[],a=t.length,s,l=t.length,f=0;f<a;f++){let h=t[f];Bt(h,()=>{if(s){if(s.pending.delete(h),s.done.add(h),s.pending.size===0){var g=e.outrogroups;fr(Fn(s.done)),g.delete(s),g.size===0&&(e.outrogroups=null)}}else l-=1},!1)}if(l===0){var o=r.length===0&&n!==null;if(o){var u=n,c=u.parentNode;Za(c),c.append(u),e.items.clear()}fr(t,!o)}else s={pending:new Set(t),done:new Set},(e.outrogroups??(e.outrogroups=new Set)).add(s)}function fr(e,t=!0){for(var n=0;n<e.length;n++)Ee(e[n],t)}var Lr;function Me(e,t,n,r,a,s=null){var l=e,f=new Map,o=(t&Qr)!==0;if(o){var u=e;l=u.appendChild(_t())}var c=null,h=us(()=>{var w=n();return vr(w)?w:w==null?[]:Fn(w)}),g,b=!0;function _(){v.fallback=c,yi(v,g,l,t,r),c!==null&&(g.length===0?(c.f&dt)===0?kr(c):(c.f^=dt,hn(c,null,l)):Bt(c,()=>{c=null}))}var T=br(()=>{g=i(h);for(var w=g.length,S=new Set,P=R,M=ms(),y=0;y<w;y+=1){var x=g[y],A=r(x,y),O=b?null:f.get(A);O?(O.v&&ln(O.v,x),O.i&&ln(O.i,y),M&&P.unskip_effect(O.e)):(O=bi(f,b?l:Lr??(Lr=_t()),x,A,y,a,t,n),b||(O.e.f|=dt),f.set(A,O)),S.add(A)}if(w===0&&s&&!c&&(b?c=Ie(()=>s(l)):(c=Ie(()=>s(Lr??(Lr=_t()))),c.f|=dt)),w>S.size&&sa(),!b)if(M){for(const[Y,Z]of f)S.has(Y)||P.skip_effect(Z.e);P.oncommit(_),P.ondiscard(()=>{})}else _();i(h)}),v={effect:T,items:f,outrogroups:null,fallback:c};b=!1}function dn(e){for(;e!==null&&(e.f&We)===0;)e=e.next;return e}function yi(e,t,n,r,a){var Z,oe,L,Q,q,ee,ae,$,ne;var s=(r&ga)!==0,l=t.length,f=e.items,o=dn(e.effect.first),u,c=null,h,g=[],b=[],_,T,v,w;if(s)for(w=0;w<l;w+=1)_=t[w],T=a(_,w),v=f.get(T).e,(v.f&dt)===0&&((oe=(Z=v.nodes)==null?void 0:Z.a)==null||oe.measure(),(h??(h=new Set)).add(v));for(w=0;w<l;w+=1){if(_=t[w],T=a(_,w),v=f.get(T).e,e.outrogroups!==null)for(const G of e.outrogroups)G.pending.delete(v),G.done.delete(v);if((v.f&dt)!==0)if(v.f^=dt,v===o)hn(v,null,n);else{var S=c?c.next:o;v===e.effect.last&&(e.effect.last=v.prev),v.prev&&(v.prev.next=v.next),v.next&&(v.next.prev=v.prev),wt(e,c,v),wt(e,v,S),hn(v,S,n),c=v,g=[],b=[],o=dn(c.next);continue}if((v.f&Pe)!==0&&(kr(v),s&&((Q=(L=v.nodes)==null?void 0:L.a)==null||Q.unfix(),(h??(h=new Set)).delete(v))),v!==o){if(u!==void 0&&u.has(v)){if(g.length<b.length){var P=b[0],M;c=P.prev;var y=g[0],x=g[g.length-1];for(M=0;M<g.length;M+=1)hn(g[M],P,n);for(M=0;M<b.length;M+=1)u.delete(b[M]);wt(e,y.prev,x.next),wt(e,c,y),wt(e,x,P),o=P,c=x,w-=1,g=[],b=[]}else u.delete(v),hn(v,o,n),wt(e,v.prev,v.next),wt(e,v,c===null?e.effect.first:c.next),wt(e,c,v),c=v;continue}for(g=[],b=[];o!==null&&o!==v;)(u??(u=new Set)).add(o),b.push(o),o=dn(o.next);if(o===null)continue}(v.f&dt)===0&&g.push(v),c=v,o=dn(v.next)}if(e.outrogroups!==null){for(const G of e.outrogroups)G.pending.size===0&&(fr(Fn(G.done)),(q=e.outrogroups)==null||q.delete(G));e.outrogroups.size===0&&(e.outrogroups=null)}if(o!==null||u!==void 0){var A=[];if(u!==void 0)for(v of u)(v.f&Pe)===0&&A.push(v);for(;o!==null;)(o.f&Pe)===0&&o!==e.fallback&&A.push(o),o=dn(o.next);var O=A.length;if(O>0){var Y=(r&Qr)!==0&&l===0?n:null;if(s){for(w=0;w<O;w+=1)(ae=(ee=A[w].nodes)==null?void 0:ee.a)==null||ae.measure();for(w=0;w<O;w+=1)(ne=($=A[w].nodes)==null?void 0:$.a)==null||ne.fix()}mi(e,A,Y)}}s&&st(()=>{var G,ie;if(h!==void 0)for(v of h)(ie=(G=v.nodes)==null?void 0:G.a)==null||ie.apply()})}function bi(e,t,n,r,a,s,l,f){var o=(l&ha)!==0?(l&pa)===0?Ya(n,!1,!1):Vt(n):null,u=(l&_a)!==0?Vt(a):null;return{v:o,i:u,e:Ie(()=>(s(t,o??n,u??a,f),()=>{e.delete(r)}))}}function hn(e,t,n){if(e.nodes)for(var r=e.nodes.start,a=e.nodes.end,s=t&&(t.f&dt)===0?t.nodes.start:n;r!==null;){var l=Cn(r);if(s.before(r),r===a)return;r=l}}function wt(e,t,n){t===null?e.effect.first=n:t.next=n,n===null?e.effect.last=t:n.prev=t}function wi(e,t,n=!1,r=!1,a=!1){var s=e,l="";H(()=>{var f=J;if(l!==(l=t()??"")&&(f.nodes!==null&&(Ts(f.nodes.start,f.nodes.end),f.nodes=null),l!=="")){var o=n?Ta:r?Sa:void 0,u=ys(n?"svg":r?"math":"template",o);u.innerHTML=l;var c=n||r?u:u.content;if(bn(qt(c),c.lastChild),n||r)for(;qt(c);)s.before(qt(c));else s.before(c)}})}const Rr=[...`
|
|
2
|
-
\r\f \v\uFEFF`];function ki(e,t,n){var r=e==null?"":""+e;if(t&&(r=r?r+" "+t:t),n){for(var a of Object.keys(n))if(n[a])r=r?r+" "+a:a;else if(r.length)for(var s=a.length,l=0;(l=r.indexOf(a,l))>=0;){var f=l+s;(l===0||Rr.includes(r[l-1]))&&(f===r.length||Rr.includes(r[f]))?r=(l===0?"":r.substring(0,l))+r.substring(f+1):l=f}}return r===""?null:r}function Ei(e,t){return e==null?null:String(e)}function ze(e,t,n,r,a,s){var l=e.__className;if(l!==n||l===void 0){var f=ki(n,r,s);f==null?e.removeAttribute("class"):e.className=f,e.__className=n}else if(s&&a!==s)for(var o in s){var u=!!s[o];(a==null||u!==!!a[o])&&e.classList.toggle(o,u)}return s}function Rs(e,t,n,r){var a=e.__style;if(a!==t){var s=Ei(t);s==null?e.removeAttribute("style"):e.style.cssText=s,e.__style=t}return r}function zs(e,t,n=!1){if(e.multiple){if(t==null)return;if(!vr(t))return xa();for(var r of e.options)r.selected=t.includes(pn(r));return}for(r of e.options){var a=pn(r);if(Qa(a,t)){r.selected=!0;return}}(!n||t!==void 0)&&(e.selectedIndex=-1)}function Ti(e){var t=new MutationObserver(()=>{zs(e,e.__value)});t.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),mr(()=>{t.disconnect()})}function zr(e,t,n=t){var r=new WeakSet,a=!0;bs(e,"change",s=>{var l=s?"[selected]":":checked",f;if(e.multiple)f=[].map.call(e.querySelectorAll(l),pn);else{var o=e.querySelector(l)??e.querySelector("option:not([disabled])");f=o&&pn(o)}n(f),R!==null&&r.add(R)}),ks(()=>{var s=t();if(e===document.activeElement){var l=Ln??R;if(r.has(l))return}if(zs(e,s,a),a&&s===void 0){var f=e.querySelector(":checked");f!==null&&(s=pn(f),n(s))}e.__value=s,a=!1}),Ti(e)}function pn(e){return"__value"in e?e.__value:e.value}const Si=Symbol("is custom element"),xi=Symbol("is html"),Ci=na?"progress":"PROGRESS";function ji(e,t){var n=Fs(e);n.value===(n.value=t??void 0)||e.value===t&&(t!==0||e.nodeName!==Ci)||(e.value=t??"")}function Fr(e,t,n,r){var a=Fs(e);a[t]!==(a[t]=n)&&(n==null?e.removeAttribute(t):typeof n!="string"&&Pi(e).includes(t)?e[t]=n:e.setAttribute(t,n))}function Fs(e){return e.__attributes??(e.__attributes={[Si]:e.nodeName.includes("-"),[xi]:e.namespaceURI===Xr})}var qr=new Map;function Pi(e){var t=e.getAttribute("is")||e.nodeName,n=qr.get(t);if(n)return n;qr.set(t,n=[]);for(var r,a=e,s=Element.prototype;s!==a;){r=Qs(a);for(var l in r)r[l].set&&n.push(l);a=Vr(a)}return n}function mn(e,t,n=t){var r=new WeakSet;bs(e,"input",async a=>{var s=a?e.defaultValue:e.value;if(s=Yn(e)?Wn(s):s,n(s),R!==null&&r.add(R),await li(),s!==(s=t())){var l=e.selectionStart,f=e.selectionEnd,o=e.value.length;if(e.value=s??"",f!==null){var u=e.value.length;l===f&&f===o&&u>o?(e.selectionStart=u,e.selectionEnd=u):(e.selectionStart=l,e.selectionEnd=Math.min(f,u))}}}),Un(t)==null&&e.value&&(n(Yn(e)?Wn(e.value):e.value),R!==null&&r.add(R)),yr(()=>{var a=t();if(e===document.activeElement){var s=Ln??R;if(r.has(s))return}Yn(e)&&a===Wn(e.value)||e.type==="date"&&!a&&!e.value||a!==e.value&&(e.value=a??"")})}function Yn(e){var t=e.type;return t==="number"||t==="range"}function Wn(e){return e===""?null:+e}function Br(e,t){return e===t||(e==null?void 0:e[Ft])===t}function ur(e={},t,n,r){return ks(()=>{var a,s;return yr(()=>{a=s,s=[],Un(()=>{e!==n(...s)&&(t(e,...s),a&&Br(n(...a),e)&&t(null,...a))})}),()=>{st(()=>{s&&Br(n(...s),e)&&t(null,...s)})}}),e}let Nn=!1;function Ai(e){var t=Nn;try{return Nn=!1,[e(),Nn]}finally{Nn=t}}function Pn(e,t,n,r){var S;var a=(n&ba)!==0,s=(n&wa)!==0,l=r,f=!0,o=()=>(f&&(f=!1,l=s?Un(r):r),l),u;if(a){var c=Ft in e||ta in e;u=((S=Wt(e,t))==null?void 0:S.set)??(c&&t in e?P=>e[t]=P:void 0)}var h,g=!1;a?[h,g]=Ai(()=>e[t]):h=e[t],h===void 0&&r!==void 0&&(h=o(),u&&(fa(),u(h)));var b;if(b=()=>{var P=e[t];return P===void 0?o():(f=!0,P)},(n&ya)===0)return b;if(u){var _=e.$$legacy;return(function(P,M){return arguments.length>0?((!M||_||g)&&u(M?b():P),P):b()})}var T=!1,v=((n&ma)!==0?Kn:us)(()=>(T=!1,b()));a&&i(v);var w=J;return(function(P,M){if(arguments.length>0){const y=M?i(v):a?je(P):P;return m(v,y),T=!0,l!==void 0&&(l=y),P}return Pt&&T||(w.f&ht)!==0?v.v:i(v)})}const Di="5";var Ur;typeof window<"u"&&((Ur=window.__svelte??(window.__svelte={})).v??(Ur.v=new Set)).add(Di);async function ot(e,t){const n=await fetch(`/api${e}`,{headers:{"Content-Type":"application/json"},...t});if(!n.ok){const r=await n.json().catch(()=>({error:n.statusText}));throw new Error(r.error||"Request failed")}return n.json()}const vt={getProjects:()=>ot("/projects"),getProject:e=>ot(`/projects/${e}`),updateProject:(e,t)=>ot(`/projects/${e}`,{method:"PATCH",body:JSON.stringify(t)}),getTasks:e=>ot(`/projects/${e}/tasks?include_done=true`),createTask:(e,t)=>ot(`/projects/${e}/tasks`,{method:"POST",body:JSON.stringify(t)}),updateTask:(e,t)=>ot(`/tasks/${e}`,{method:"PATCH",body:JSON.stringify(t)}),deleteTask:e=>ot(`/tasks/${e}`,{method:"DELETE"}),getDecisions:e=>ot(`/projects/${e}/decisions`),getTaskHistory:e=>ot(`/tasks/${e}/history`)};var Ni=D('<input class="rename-input svelte-1kanzy0" type="text"/>'),Oi=D('<span class="project-slug svelte-1kanzy0"> </span>'),Ii=D('<span class="project-name svelte-1kanzy0"> </span> <!> <button class="rename-btn svelte-1kanzy0" title="Rename project">✎</button>',1),Mi=D('<div class="project-area svelte-1kanzy0"><!></div>'),Li=D('<header class="toolbar svelte-1kanzy0"><!></header>');function Ri(e,t){Qe(t,!0);let n=I(!1),r=I("");const a=re(()=>t.projects.find(h=>h.id===t.selectedId));function s(){i(a)&&(m(r,i(a).name,!0),m(n,!0))}function l(){if(!i(a)||!i(n))return;const h=i(r).trim();h&&h!==i(a).name&&t.onRenamed(i(a).id,h),m(n,!1)}function f(h){h.key==="Enter"&&l(),h.key==="Escape"&&m(n,!1)}var o=Li(),u=k(o);{var c=h=>{var g=Mi(),b=k(g);{var _=v=>{var w=Ni();gr(w),Te("blur",w,l),W("keydown",w,f),mn(w,()=>i(r),S=>m(r,S)),C(v,w)},T=v=>{var w=Ii(),S=Ct(w),P=k(S),M=E(S,2);{var y=A=>{var O=Oi(),Y=k(O);H(()=>F(Y,`[${i(a).slug??""}]`)),C(A,O)};U(M,A=>{i(a).slug&&A(y)})}var x=E(M,2);H(()=>F(P,i(a).name)),W("click",x,s),C(v,w)};U(b,v=>{i(n)?v(_):v(T,!1)})}C(h,g)};U(u,h=>{i(a)&&h(c)})}C(e,o),Xe()}mt(["keydown","click"]);var zi=D('<span class="brand svelte-rig7vt"><span class="prompt svelte-rig7vt">></span> mindpm</span>'),Fi=D('<span class="task-count svelte-rig7vt"> </span>'),qi=D('<span class="project-name svelte-rig7vt"> </span> <!>',1),Bi=D('<span class="task-count-collapsed svelte-rig7vt"> </span>'),Ki=D('<button><span class="status-dot svelte-rig7vt"></span> <!></button>'),Hi=D('<div class="sidebar-footer svelte-rig7vt"><span class="footer-hint svelte-rig7vt"> </span></div>'),Ui=D('<aside><div class="sidebar-header svelte-rig7vt"><!> <button class="collapse-btn svelte-rig7vt"> </button></div> <nav class="project-list svelte-rig7vt"></nav> <!></aside>');function Vi(e,t){Qe(t,!0);const n="mindpm_sidebar_collapsed";let r=I(localStorage.getItem(n)==="true");function a(){m(r,!i(r)),localStorage.setItem(n,String(i(r)))}const s={active:"var(--primary)",paused:"#d29922",completed:"var(--text-muted)",archived:"var(--border-bright)"};var l=Ui();let f;var o=k(l),u=k(o);{var c=v=>{var w=zi();C(v,w)};U(u,v=>{i(r)||v(c)})}var h=E(u,2),g=k(h),b=E(o,2);Me(b,21,()=>t.projects,v=>v.id,(v,w)=>{var S=Ki();let P;var M=k(S),y=E(M,2);{var x=O=>{var Y=qi(),Z=Ct(Y),oe=k(Z),L=E(Z,2);{var Q=q=>{var ee=Fi(),ae=k(ee);H(()=>F(ae,i(w).active_task_count)),C(q,ee)};U(L,q=>{(i(w).active_task_count??0)>0&&q(Q)})}H(()=>F(oe,i(w).name)),C(O,Y)},A=O=>{var Y=Bi(),Z=k(Y);H(()=>F(Z,i(w).active_task_count)),C(O,Y)};U(y,O=>{i(r)?(i(w).active_task_count??0)>0&&O(A,1):O(x)})}H(()=>{P=ze(S,1,"project-item svelte-rig7vt",null,P,{active:i(w).id===t.selectedId}),Fr(S,"title",i(r)?i(w).name:void 0),Rs(M,`background: ${s[i(w).status]??"var(--text-muted)"??""}`)}),W("click",S,()=>t.onSelect(i(w).id)),C(v,S)});var _=E(b,2);{var T=v=>{var w=Hi(),S=k(w),P=k(S);H(()=>F(P,`// ${t.projects.length??""} project${t.projects.length!==1?"s":""}`)),C(v,w)};U(_,v=>{i(r)||v(T)})}H(()=>{f=ze(l,1,"sidebar svelte-rig7vt",null,f,{collapsed:i(r)}),Fr(h,"title",i(r)?"Expand sidebar":"Collapse sidebar"),F(g,i(r)?"»":"«")}),W("click",h,a),C(e,l),Xe()}mt(["click"]);const Gi=[{status:"todo",label:"Todo"},{status:"in_progress",label:"In Progress"},{status:"blocked",label:"Blocked"},{status:"done",label:"Done"},{status:"cancelled",label:"Cancelled"}],qs=["critical","high","medium","low"];var Ji=D('<span class="task-id svelte-35ep21"> </span>'),Yi=D('<div class="card-desc svelte-35ep21"> </div>'),Wi=D('<span class="tag svelte-35ep21"> </span>'),Qi=D('<div class="card-tags svelte-35ep21"></div>'),Xi=D('<span class="badge badge-blocked svelte-35ep21">⊘ blocked</span>'),Zi=D('<span class="badge badge-subtasks svelte-35ep21"> </span>'),$i=D('<div class="card-footer svelte-35ep21"><!> <!></div>'),el=D('<div draggable="true" role="button" tabindex="0"><div class="card-header svelte-35ep21"><span> </span> <div class="card-header-right svelte-35ep21"><!> <button class="delete-btn svelte-35ep21" title="Delete task">×</button></div></div> <div class="card-title svelte-35ep21"> </div> <!> <!> <!></div>');function tl(e,t){Qe(t,!0);let n=Pn(t,"subtaskCount",3,0),r=I(!1);function a(L){if(!L)return[];try{return JSON.parse(L)}catch{return[]}}const s=re(()=>a(t.task.tags)),l=re(()=>`priority-${t.task.priority}`),f=re(()=>()=>{if(!t.task.blocked_by)return!1;try{const L=JSON.parse(t.task.blocked_by);return Array.isArray(L)&&L.length>0}catch{return!1}});function o(L){m(r,!0),t.onDragStart(L,t.task)}function u(){m(r,!1)}var c=el();let h;var g=k(c),b=k(g),_=k(b),T=E(b,2),v=k(T);{var w=L=>{var Q=Ji(),q=k(Q);H(()=>F(q,t.task.short_id)),C(L,Q)};U(v,L=>{t.task.short_id&&L(w)})}var S=E(v,2),P=E(g,2),M=k(P),y=E(P,2);{var x=L=>{var Q=Yi(),q=k(Q);H(()=>F(q,t.task.description)),C(L,Q)};U(y,L=>{t.task.description&&L(x)})}var A=E(y,2);{var O=L=>{var Q=Qi();Me(Q,21,()=>i(s),wn,(q,ee)=>{var ae=Wi(),$=k(ae);H(()=>F($,i(ee))),C(q,ae)}),C(L,Q)};U(A,L=>{i(s).length>0&&L(O)})}var Y=E(A,2);{var Z=L=>{var Q=$i(),q=k(Q);{var ee=G=>{var ie=Xi();C(G,ie)},ae=re(()=>i(f)());U(q,G=>{i(ae)&&G(ee)})}var $=E(q,2);{var ne=G=>{var ie=Zi(),De=k(ie);H(()=>F(De,`⑂ ${n()??""}`)),C(G,ie)};U($,G=>{n()>0&&G(ne)})}C(L,Q)},oe=re(()=>i(f)()||n()>0);U(Y,L=>{i(oe)&&L(Z)})}H(()=>{h=ze(c,1,`card ${i(l)??""}`,"svelte-35ep21",h,{dragging:i(r)}),ze(b,1,`priority-badge ${i(l)??""}`,"svelte-35ep21"),F(_,t.task.priority),F(M,t.task.title)}),Te("dragstart",c,o),Te("dragend",c,u),W("click",c,()=>t.onEdit(t.task)),W("keydown",c,L=>{L.key==="Enter"&&t.onEdit(t.task)}),W("click",S,L=>{L.stopPropagation(),t.onDelete(t.task)}),C(e,c),Xe()}mt(["click","keydown"]);var nl=D('<div class="column-collapsed svelte-zswfgn"><button class="expand-btn svelte-zswfgn" title="Expand column">»</button> <div class="collapsed-label svelte-zswfgn"><span> </span> <span class="collapsed-text svelte-zswfgn"> </span></div></div>'),rl=D('<button class="add-btn svelte-zswfgn" title="Add task">+</button>'),sl=D('<div class="wip-banner svelte-zswfgn"> </div>'),al=D('<div class="column-header svelte-zswfgn"><h3 class="svelte-zswfgn"><span class="chevron svelte-zswfgn">▸</span> <span> </span></h3> <div class="header-actions svelte-zswfgn"><!> <button class="collapse-btn svelte-zswfgn" title="Collapse column">«</button></div></div> <!> <div class="card-list svelte-zswfgn"></div>',1),il=D('<div role="list"><!></div>');function ll(e,t){Qe(t,!0);const n=5,r="mindpm_collapsed_cols";let a=I(!1);function s(){try{const S=localStorage.getItem(r);return(S?JSON.parse(S):[]).includes(t.status)}catch{return!1}}function l(S){try{const P=localStorage.getItem(r),M=P?JSON.parse(P):[],y=S?[...new Set([...M,t.status])]:M.filter(x=>x!==t.status);localStorage.setItem(r,JSON.stringify(y))}catch{}}let f=I(je(s()));function o(){m(f,!i(f)),l(i(f))}const u=re(()=>t.status==="in_progress"&&t.tasks.length>n);function c(S){S.preventDefault(),S.dataTransfer&&(S.dataTransfer.dropEffect="move"),m(a,!0)}function h(){m(a,!1)}function g(S){S.preventDefault(),m(a,!1),t.onDrop(t.status)}var b=il();let _;var T=k(b);{var v=S=>{var P=nl(),M=k(P),y=E(M,2),x=k(y);let A;var O=k(x),Y=E(x,2),Z=k(Y);H(()=>{A=ze(x,1,"collapsed-count svelte-zswfgn",null,A,{wip:i(u)}),F(O,`[${t.tasks.length??""}]`),F(Z,t.label)}),W("click",M,o),C(S,P)},w=S=>{var P=al(),M=Ct(P),y=k(M),x=E(k(y)),A=E(x);let O;var Y=k(A),Z=E(y,2),oe=k(Z);{var L=$=>{var ne=rl();W("click",ne,()=>t.onAddTask(t.status)),C($,ne)};U(oe,$=>{t.status==="todo"&&$(L)})}var Q=E(oe,2),q=E(M,2);{var ee=$=>{var ne=sl(),G=k(ne);H(()=>F(G,`WIP limit exceeded (${t.tasks.length??""}/5)`)),C($,ne)};U(q,$=>{i(u)&&$(ee)})}var ae=E(q,2);Me(ae,21,()=>t.tasks,$=>$.id,($,ne)=>{{let G=re(()=>t.subtaskCounts.get(i(ne).id)??0);tl($,{get task(){return i(ne)},get subtaskCount(){return i(G)},get onEdit(){return t.onEdit},get onDelete(){return t.onDelete},get onDragStart(){return t.onDragStart}})}}),H(()=>{F(x,` ${t.label??""} `),O=ze(A,1,"count svelte-zswfgn",null,O,{wip:i(u)}),F(Y,`[${t.tasks.length??""}${i(u)?" ⚠":""}]`)}),W("click",Q,o),C(S,P)};U(T,S=>{i(f)?S(v):S(w,!1)})}H(()=>_=ze(b,1,"column svelte-zswfgn",null,_,{"drag-over":i(a),collapsed:i(f),"wip-warning":i(u)})),Te("dragover",b,c),Te("dragleave",b,h),Te("drop",b,g),C(e,b),Xe()}mt(["click"]);var ol=D('<div class="decision-reasoning svelte-1gmf2hi"> </div>'),fl=D('<div class="decision-alts svelte-1gmf2hi"> </div>'),ul=D('<div class="decision-item svelte-1gmf2hi"><div class="decision-title svelte-1gmf2hi"> </div> <div class="decision-body svelte-1gmf2hi"> </div> <!> <!></div>'),cl=D('<span class="modal-task-id svelte-1gmf2hi"> </span>'),vl=D("<option> </option>"),dl=D('<div class="field svelte-1gmf2hi"><label for="status" class="svelte-1gmf2hi">Status</label> <select id="status" class="svelte-1gmf2hi"><option>Todo</option><option>In Progress</option><option>Blocked</option><option>Done</option><option>Cancelled</option></select></div>'),hl=D('<div class="history-item svelte-1gmf2hi"><span class="history-dot svelte-1gmf2hi"></span> <div class="history-body svelte-1gmf2hi"><span class="history-event svelte-1gmf2hi"><!></span> <span class="history-time svelte-1gmf2hi"> </span></div></div>'),_l=D('<div class="history-section svelte-1gmf2hi"><h3 class="history-heading svelte-1gmf2hi">History</h3> <div class="history-list svelte-1gmf2hi"></div></div>'),gl=D('<h3 class="decisions-heading svelte-1gmf2hi">Task Decisions</h3> <div class="decisions-list svelte-1gmf2hi"></div>',1),pl=D('<h3>Project Decisions</h3> <div class="decisions-list svelte-1gmf2hi"></div>',1),ml=D('<div class="decisions-section svelte-1gmf2hi"><!> <!></div>'),yl=D('<div class="modal-backdrop svelte-1gmf2hi"><div class="modal svelte-1gmf2hi"><div class="modal-header svelte-1gmf2hi"><div class="modal-title svelte-1gmf2hi"><h2 class="svelte-1gmf2hi"> </h2> <!></div> <button class="close-btn svelte-1gmf2hi">×</button></div> <form><div class="field svelte-1gmf2hi"><label for="title" class="svelte-1gmf2hi">Title</label> <input id="title" type="text" placeholder="Task title" required="" class="svelte-1gmf2hi"/></div> <div class="field svelte-1gmf2hi"><label for="description" class="svelte-1gmf2hi">Description</label> <textarea id="description" placeholder="Optional description" rows="3" class="svelte-1gmf2hi"></textarea></div> <div class="row svelte-1gmf2hi"><div class="field svelte-1gmf2hi"><label for="priority" class="svelte-1gmf2hi">Priority</label> <select id="priority" class="svelte-1gmf2hi"></select></div> <!></div> <div class="field svelte-1gmf2hi"><label for="tags" class="svelte-1gmf2hi">Tags <span class="hint svelte-1gmf2hi">(comma-separated)</span></label> <input id="tags" type="text" placeholder="e.g. backend, auth, bug" class="svelte-1gmf2hi"/></div> <div class="actions svelte-1gmf2hi"><button type="button" class="btn-cancel svelte-1gmf2hi">Cancel</button> <button type="submit" class="btn-save svelte-1gmf2hi"> </button></div></form> <!> <!></div></div>');function bl(e,t){Qe(t,!0);const n=(j,z=Gr)=>{var te=ul(),fe=k(te),pe=k(fe),Be=E(fe,2),me=k(Be),ye=E(Be,2);{var Ze=Ke=>{var lt=ol(),vn=k(lt);H(()=>F(vn,z().reasoning)),C(Ke,lt)};U(ye,Ke=>{z().reasoning&&Ke(Ze)})}var $e=E(ye,2);Me($e,17,()=>T(z().alternatives),wn,(Ke,lt,vn)=>{var Tr=di(),Ks=Ct(Tr);{var Hs=Vn=>{var Sr=fl(),Us=k(Sr);H(Vs=>F(Us,`Alternatives: ${Vs??""}`),[()=>T(z().alternatives).join(", ")]),C(Vn,Sr)};U(Ks,Vn=>{vn===0&&Vn(Hs)})}C(Ke,Tr)}),H(()=>{F(pe,z().title),F(me,z().decision)}),C(j,te)};let r=Pn(t,"defaultStatus",3,"todo"),a=I(""),s=I(""),l=I("medium"),f=I("todo"),o=I(""),u=I(je([])),c=I(je([]));Gt(()=>{var j,z,te,fe,pe;if(m(a,((j=t.task)==null?void 0:j.title)??"",!0),m(s,((z=t.task)==null?void 0:z.description)??"",!0),m(l,((te=t.task)==null?void 0:te.priority)??"medium",!0),m(f,((fe=t.task)==null?void 0:fe.status)??r(),!0),(pe=t.task)!=null&&pe.tags)try{m(o,JSON.parse(t.task.tags).join(", "),!0)}catch{m(o,"")}else m(o,"")}),Gt(()=>{t.task!==null?(vt.getDecisions(t.projectId).then(j=>{m(u,j,!0)}).catch(()=>{m(u,[],!0)}),vt.getTaskHistory(t.task.id).then(j=>{m(c,j,!0)}).catch(()=>{m(c,[],!0)})):(m(u,[],!0),m(c,[],!0))});const h=re(()=>t.task!==null),g=re(()=>i(u).filter(j=>{var z;return j.task_id===((z=t.task)==null?void 0:z.id)})),b=re(()=>i(u).filter(j=>j.task_id===null));function _(j){switch(j.event){case"created":return"<b>created</b>";case"status_changed":return`status <b>${j.old_value}</b> → <b>${j.new_value}</b>`;case"priority_changed":return`priority <b>${j.old_value}</b> → <b>${j.new_value}</b>`;case"title_changed":return"title renamed";default:return j.event.replace(/_/g," ")}}function T(j){if(!j)return[];try{return JSON.parse(j)}catch{return[]}}function v(j){return new Date(j.replace(" ","T")+"Z").toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function w(j){j.preventDefault();const z=i(a).trim();if(!z)return;const te=i(o).split(",").map(fe=>fe.trim()).filter(Boolean);t.onSave({title:z,description:i(s).trim(),priority:i(l),...i(h)?{status:i(f)}:{},tags:te})}function S(j){j.target.classList.contains("modal-backdrop")&&t.onClose()}function P(j){j.key==="Escape"&&t.onClose()}var M=yl();Te("keydown",jt,P);var y=k(M),x=k(y),A=k(x),O=k(A),Y=k(O),Z=E(O,2);{var oe=j=>{var z=cl(),te=k(z);H(()=>F(te,t.task.short_id)),C(j,z)};U(Z,j=>{var z;(z=t.task)!=null&&z.short_id&&j(oe)})}var L=E(A,2),Q=E(x,2),q=k(Q),ee=E(k(q),2);gr(ee);var ae=E(q,2),$=E(k(ae),2),ne=E(ae,2),G=k(ne),ie=E(k(G),2);Me(ie,21,()=>qs,wn,(j,z)=>{var te=vl(),fe=k(te),pe={};H(()=>{F(fe,i(z)),pe!==(pe=i(z))&&(te.value=(te.__value=i(z))??"")}),C(j,te)});var De=E(G,2);{var yt=j=>{var z=dl(),te=E(k(z),2),fe=k(te);fe.value=fe.__value="todo";var pe=E(fe);pe.value=pe.__value="in_progress";var Be=E(pe);Be.value=Be.__value="blocked";var me=E(Be);me.value=me.__value="done";var ye=E(me);ye.value=ye.__value="cancelled",zr(te,()=>i(f),Ze=>m(f,Ze)),C(j,z)};U(De,j=>{i(h)&&j(yt)})}var bt=E(ne,2),un=E(k(bt),2),cn=E(bt,2),Yt=k(cn),p=E(Yt,2),N=k(p),X=E(Q,2);{var le=j=>{var z=_l(),te=E(k(z),2);Me(te,21,()=>i(c),fe=>fe.id,(fe,pe)=>{var Be=hl(),me=E(k(Be),2),ye=k(me),Ze=k(ye);wi(Ze,()=>_(i(pe)));var $e=E(ye,2),Ke=k($e);H(lt=>F(Ke,lt),[()=>v(i(pe).created_at)]),C(fe,Be)}),C(j,z)};U(X,j=>{i(h)&&i(c).length>0&&j(le)})}var it=E(X,2);{var Bs=j=>{var z=ml(),te=k(z);{var fe=me=>{var ye=gl(),Ze=E(Ct(ye),2);Me(Ze,21,()=>i(g),$e=>$e.id,($e,Ke)=>{n($e,()=>i(Ke))}),C(me,ye)};U(te,me=>{i(g).length>0&&me(fe)})}var pe=E(te,2);{var Be=me=>{var ye=pl(),Ze=Ct(ye);let $e;var Ke=E(Ze,2);Me(Ke,21,()=>i(b),lt=>lt.id,(lt,vn)=>{n(lt,()=>i(vn))}),H(()=>$e=ze(Ze,1,"decisions-heading svelte-1gmf2hi",null,$e,{spaced:i(g).length>0})),C(me,ye)};U(pe,me=>{i(b).length>0&&me(Be)})}C(j,z)};U(it,j=>{i(h)&&(i(g).length>0||i(b).length>0)&&j(Bs)})}H(()=>{F(Y,i(h)?"Edit Task":"New Task"),F(N,i(h)?"Save":"Create")}),W("click",M,S),W("click",L,function(...j){var z;(z=t.onClose)==null||z.apply(this,j)}),Te("submit",Q,w),mn(ee,()=>i(a),j=>m(a,j)),mn($,()=>i(s),j=>m(s,j)),zr(ie,()=>i(l),j=>m(l,j)),mn(un,()=>i(o),j=>m(o,j)),W("click",Yt,function(...j){var z;(z=t.onClose)==null||z.apply(this,j)}),C(e,M),Xe()}mt(["click"]);var wl=D('<div class="modal-backdrop svelte-1efofyg"><div class="dialog svelte-1efofyg"><h3 class="svelte-1efofyg"> </h3> <p class="svelte-1efofyg"> </p> <div class="actions svelte-1efofyg"><button class="btn-cancel svelte-1efofyg">Cancel</button> <button class="btn-confirm svelte-1efofyg"> </button></div></div></div>');function kl(e,t){Qe(t,!0);let n=Pn(t,"confirmLabel",3,"Delete");function r(T){T.target.classList.contains("modal-backdrop")&&t.onCancel()}function a(T){T.key==="Escape"&&t.onCancel()}var s=wl();Te("keydown",jt,a);var l=k(s),f=k(l),o=k(f),u=E(f,2),c=k(u),h=E(u,2),g=k(h),b=E(g,2),_=k(b);H(()=>{F(o,t.title),F(c,t.message),F(_,n())}),W("click",s,r),W("click",g,function(...T){var v;(v=t.onCancel)==null||v.apply(this,T)}),W("click",b,function(...T){var v;(v=t.onConfirm)==null||v.apply(this,T)}),C(e,s),Xe()}mt(["click"]);var El=D('<button class="clear-input svelte-dhotvj">×</button>'),Tl=D("<button> </button>"),Sl=D('<button><span class="tag-checkbox svelte-dhotvj"> </span> <span class="tag-name svelte-dhotvj"> </span></button>'),xl=D('<button class="tag-clear svelte-dhotvj">clear tags</button>'),Cl=D('<div class="tag-dropdown svelte-dhotvj"><!> <!></div>'),jl=D('<div class="filter-section tag-dropdown-wrapper svelte-dhotvj"><span class="filter-label svelte-dhotvj">tags:</span> <button><!></button> <!></div>'),Pl=D('<button class="clear-all svelte-dhotvj"> </button>'),Al=D('<div class="filter-bar svelte-dhotvj"><div class="filter-search svelte-dhotvj"><span class="search-icon svelte-dhotvj">/</span> <input type="text" placeholder="search tasks..." class="svelte-dhotvj"/> <!></div> <div class="filter-section svelte-dhotvj"><span class="filter-label svelte-dhotvj">priority:</span> <div class="chip-group svelte-dhotvj"></div></div> <!> <!> <div class="shortcuts-hint svelte-dhotvj"><span class="svelte-dhotvj"><kbd class="svelte-dhotvj">N</kbd> new</span> <span class="svelte-dhotvj"><kbd class="svelte-dhotvj">/</kbd> search</span> <span class="svelte-dhotvj"><kbd class="svelte-dhotvj">Ctrl K</kbd> palette</span></div></div>');function Dl(e,t){Qe(t,!0);let n=Pn(t,"focusSearch",15,null),r=I(null),a=I(!1),s=I(null);Gt(()=>{n(()=>{var y;return(y=i(r))==null?void 0:y.focus()})});const l=re(()=>(t.searchQuery.trim()?1:0)+t.selectedPriorities.size+t.selectedTags.size),f={critical:"var(--priority-critical)",high:"var(--priority-high)",medium:"var(--priority-medium)",low:"var(--text-muted)"};function o(y){y.key==="Escape"&&m(a,!1)}function u(y){i(s)&&!i(s).contains(y.target)&&m(a,!1)}var c=Al();Te("click",jt,u),Te("keydown",jt,o);var h=k(c),g=E(k(h),2);ur(g,y=>m(r,y),()=>i(r));var b=E(g,2);{var _=y=>{var x=El();W("click",x,()=>t.onSearchChange("")),C(y,x)};U(b,y=>{t.searchQuery&&y(_)})}var T=E(h,2),v=E(k(T),2);Me(v,21,()=>qs,wn,(y,x)=>{var A=Tl();let O;var Y=k(A);H(Z=>{O=ze(A,1,"chip svelte-dhotvj",null,O,Z),Rs(A,`--chip-color: ${f[i(x)]??""}`),F(Y,i(x))},[()=>({active:t.selectedPriorities.has(i(x))})]),W("click",A,()=>t.onPriorityToggle(i(x))),C(y,A)});var w=E(T,2);{var S=y=>{var x=jl(),A=E(k(x),2);let O;var Y=k(A);{var Z=q=>{var ee=Mr();H(()=>F(ee,`[${t.selectedTags.size??""}] ▾`)),C(q,ee)},oe=q=>{var ee=Mr("all ▾");C(q,ee)};U(Y,q=>{t.selectedTags.size>0?q(Z):q(oe,!1)})}var L=E(A,2);{var Q=q=>{var ee=Cl(),ae=k(ee);Me(ae,17,()=>t.allTags,wn,(G,ie)=>{var De=Sl();let yt;var bt=k(De),un=k(bt),cn=E(bt,2),Yt=k(cn);H((p,N)=>{yt=ze(De,1,"tag-option svelte-dhotvj",null,yt,p),F(un,N),F(Yt,`#${i(ie)??""}`)},[()=>({selected:t.selectedTags.has(i(ie))}),()=>t.selectedTags.has(i(ie))?"✓":" "]),W("click",De,p=>{p.stopPropagation(),t.onTagToggle(i(ie))}),C(G,De)});var $=E(ae,2);{var ne=G=>{var ie=xl();W("click",ie,De=>{De.stopPropagation(),t.selectedTags.forEach(yt=>t.onTagToggle(yt))}),C(G,ie)};U($,G=>{t.selectedTags.size>0&&G(ne)})}C(q,ee)};U(L,q=>{i(a)&&q(Q)})}ur(x,q=>m(s,q),()=>i(s)),H(()=>O=ze(A,1,"dropdown-trigger svelte-dhotvj",null,O,{active:t.selectedTags.size>0})),W("click",A,q=>{q.stopPropagation(),m(a,!i(a))}),C(y,x)};U(w,y=>{t.allTags.length>0&&y(S)})}var P=E(w,2);{var M=y=>{var x=Pl(),A=k(x);H(()=>F(A,`clear [${i(l)??""}]`)),W("click",x,function(...O){var Y;(Y=t.onClear)==null||Y.apply(this,O)}),C(y,x)};U(P,y=>{i(l)>0&&y(M)})}H(()=>ji(g,t.searchQuery)),W("input",g,y=>t.onSearchChange(y.target.value)),C(e,c),Xe()}mt(["input","click"]);var Nl=D('<div class="board-message svelte-x7v2jt">Loading tasks...</div>'),Ol=D('<div class="board-message error svelte-x7v2jt"> <button class="svelte-x7v2jt">Retry</button></div>'),Il=D('<div class="board svelte-x7v2jt"></div>'),Ml=D('<!> <div class="board-wrapper svelte-x7v2jt"><!></div> <!> <!>',1);function Ll(e,t){Qe(t,!0);let n=Pn(t,"triggerNewTask",3,!1),r=I(je([])),a=I(!0),s=I(null),l=I(!1),f=I(null),o=I("todo"),u=I(!1),c=I(null),h=I(null),g=I(""),b=I(je(new Set)),_=I(je(new Set));const T=re(()=>()=>{const p=new Map;for(const N of i(r))N.parent_task_id&&p.set(N.parent_task_id,(p.get(N.parent_task_id)??0)+1);return p}),v=re(()=>()=>{const p=new Set;for(const N of i(r))if(N.tags)try{for(const X of JSON.parse(N.tags))p.add(X)}catch{}return[...p].sort()}),w=re(()=>()=>{let p=i(r);const N=i(g).trim().toLowerCase();return N&&(p=p.filter(X=>X.title.toLowerCase().includes(N)||(X.description??"").toLowerCase().includes(N)||(X.short_id??"").toLowerCase().includes(N))),i(b).size>0&&(p=p.filter(X=>i(b).has(X.priority))),i(_).size>0&&(p=p.filter(X=>{if(!X.tags)return!1;try{return JSON.parse(X.tags).some(it=>i(_).has(it))}catch{return!1}})),p}),S=re(()=>Gi.map(p=>({...p,tasks:i(w)().filter(N=>N.status===p.status)})));function P(p){const N=new Set(i(b));N.has(p)?N.delete(p):N.add(p),m(b,N,!0)}function M(p){const N=new Set(i(_));N.has(p)?N.delete(p):N.add(p),m(_,N,!0)}function y(){m(g,""),m(b,new Set,!0),m(_,new Set,!0)}let x=I(null);function A(p){var le;const N=p.target.tagName;N==="INPUT"||N==="TEXTAREA"||N==="SELECT"||p.ctrlKey||p.metaKey||p.altKey||(p.key==="n"||p.key==="N"?(p.preventDefault(),oe("todo")):p.key==="/"&&(p.preventDefault(),(le=i(x))==null||le()))}Gt(()=>{var p;n()&&(oe("todo"),(p=t.onNewTaskTriggered)==null||p.call(t))});async function O(){m(a,!0),m(s,null);try{m(r,await vt.getTasks(t.project.id),!0)}catch(p){m(s,p.message,!0)}finally{m(a,!1)}}Gt(()=>{t.project.id,O()});function Y(p,N){m(h,N,!0),p.dataTransfer&&(p.dataTransfer.effectAllowed="move",p.dataTransfer.setData("text/plain",N.id))}async function Z(p){if(!i(h)||i(h).status===p){m(h,null);return}const N=i(h),X=N.status;m(h,null);const le=i(r).findIndex(it=>it.id===N.id);le!==-1&&(i(r)[le]={...i(r)[le],status:p});try{await vt.updateTask(N.id,{status:p})}catch(it){le!==-1&&(i(r)[le]={...i(r)[le],status:X}),m(s,it.message,!0)}}function oe(p){m(f,null),m(o,p,!0),m(l,!0)}function L(p){m(f,p,!0),m(l,!0)}async function Q(p){try{if(i(f)){const N=await vt.updateTask(i(f).id,{title:p.title,description:p.description||null,priority:p.priority,status:p.status,tags:p.tags.length>0?p.tags.join(","):null}),X=i(r).findIndex(le=>le.id===i(f).id);X!==-1&&(i(r)[X]=N)}else{const N=await vt.createTask(t.project.id,{title:p.title,description:p.description||void 0,priority:p.priority,tags:p.tags.length>0?p.tags:void 0});m(r,[N,...i(r)],!0)}m(l,!1),m(f,null)}catch(N){m(s,N.message,!0)}}function q(p){m(c,p,!0),m(u,!0)}async function ee(){if(i(c))try{await vt.deleteTask(i(c).id),m(r,i(r).filter(p=>p.id!==i(c).id&&p.parent_task_id!==i(c).id),!0),m(u,!1),m(c,null)}catch(p){m(s,p.message,!0)}}var ae=Ml();Te("keydown",jt,A);var $=Ct(ae);{let p=re(()=>i(v)());Dl($,{get allTags(){return i(p)},get searchQuery(){return i(g)},get selectedPriorities(){return i(b)},get selectedTags(){return i(_)},onSearchChange:N=>{m(g,N,!0)},onPriorityToggle:P,onTagToggle:M,onClear:y,get focusSearch(){return i(x)},set focusSearch(N){m(x,N,!0)}})}var ne=E($,2),G=k(ne);{var ie=p=>{var N=Nl();C(p,N)},De=p=>{var N=Ol(),X=k(N),le=E(X);H(()=>F(X,`${i(s)??""} `)),W("click",le,()=>{m(s,null),O()}),C(p,N)},yt=p=>{var N=Il();Me(N,21,()=>i(S),X=>X.status,(X,le)=>{{let it=re(()=>i(T)());ll(X,{get status(){return i(le).status},get label(){return i(le).label},get tasks(){return i(le).tasks},get subtaskCounts(){return i(it)},onEdit:L,onDelete:q,onDragStart:Y,onDrop:Z,onAddTask:oe})}}),C(p,N)};U(G,p=>{i(a)?p(ie):i(s)?p(De,1):p(yt,!1)})}var bt=E(ne,2);{var un=p=>{bl(p,{get task(){return i(f)},get projectId(){return t.project.id},get defaultStatus(){return i(o)},onSave:Q,onClose:()=>{m(l,!1),m(f,null)}})};U(bt,p=>{i(l)&&p(un)})}var cn=E(bt,2);{var Yt=p=>{kl(p,{title:"Delete Task",get message(){return`Are you sure you want to delete "${i(c).title??""}"? This cannot be undone.`},onConfirm:ee,onCancel:()=>{m(u,!1),m(c,null)}})};U(cn,p=>{i(u)&&i(c)&&p(Yt)})}C(e,ae),Xe()}mt(["click"]);var Rl=D('<div><span class="item-label svelte-1bm0yy4"> </span> <span class="item-hint svelte-1bm0yy4"> </span></div>'),zl=D('<div class="palette-empty svelte-1bm0yy4">no commands match</div>'),Fl=D('<div class="palette-backdrop svelte-1bm0yy4"><div class="palette svelte-1bm0yy4"><div class="palette-input-row svelte-1bm0yy4"><span class="palette-prompt svelte-1bm0yy4">></span> <input placeholder="type a command..." class="svelte-1bm0yy4"/></div> <div class="palette-list svelte-1bm0yy4"></div> <div class="palette-footer svelte-1bm0yy4"><span class="svelte-1bm0yy4"><kbd class="svelte-1bm0yy4">↑↓</kbd> navigate</span> <span class="svelte-1bm0yy4"><kbd class="svelte-1bm0yy4">↵</kbd> select</span> <span class="svelte-1bm0yy4"><kbd class="svelte-1bm0yy4">esc</kbd> close</span></div></div></div>');function ql(e,t){Qe(t,!0);let n=I(""),r=I(0),a=I(null);const s=re(()=>[{id:"new-task",label:"new task",hint:"create",action:()=>{t.onClose(),t.onNewTask()}},...t.projects.map(_=>({id:`project-${_.id}`,label:_.name,hint:_.slug?`switch → ${_.slug}`:"switch",action:()=>{t.onClose(),t.onSelectProject(_.id)}}))]),l=re(()=>()=>{const _=i(n).trim().toLowerCase();return _?i(s).filter(T=>T.label.toLowerCase().includes(_)||T.hint.toLowerCase().includes(_)):i(s)});Gt(()=>{i(l)(),m(r,0)});function f(_){var v;const T=i(l)();_.key==="ArrowDown"?(_.preventDefault(),m(r,Math.min(i(r)+1,T.length-1),!0)):_.key==="ArrowUp"?(_.preventDefault(),m(r,Math.max(i(r)-1,0),!0)):_.key==="Enter"?(_.preventDefault(),(v=T[i(r)])==null||v.action()):_.key==="Escape"&&t.onClose()}function o(_){_.target.classList.contains("palette-backdrop")&&t.onClose()}var u=Fl(),c=k(u),h=k(c),g=E(k(h),2);gr(g),ur(g,_=>m(a,_),()=>i(a));var b=E(h,2);Me(b,23,()=>i(l)(),_=>_.id,(_,T,v)=>{var w=Rl();let S;var P=k(w),M=k(P),y=E(P,2),x=k(y);H(()=>{S=ze(w,1,"palette-item svelte-1bm0yy4",null,S,{active:i(v)===i(r)}),F(M,i(T).label),F(x,i(T).hint)}),Te("mouseenter",w,()=>{m(r,i(v),!0)}),W("click",w,()=>i(T).action()),C(_,w)},_=>{var T=zl();C(_,T)}),W("click",u,o),W("keydown",g,f),mn(g,()=>i(n),_=>m(n,_)),C(e,u),Xe()}mt(["click","keydown"]);var Bl=D('<div class="loading svelte-1n46o8q"><span class="prompt svelte-1n46o8q">></span> loading projects...</div>'),Kl=D('<div class="error svelte-1n46o8q"><span class="err-prefix svelte-1n46o8q">[error]</span> </div>'),Hl=D('<div class="empty svelte-1n46o8q"><p class="empty-prompt svelte-1n46o8q">> no projects found</p> <p class="empty-hint svelte-1n46o8q">// create a project using mindpm MCP tools to get started</p></div>'),Ul=D('<div class="app-layout svelte-1n46o8q"><!> <div class="main svelte-1n46o8q"><!> <!></div></div>'),Vl=D("<!> <!>",1);function Gl(e,t){Qe(t,!0);let n=I(je([])),r=I(null),a=I(!0),s=I(null),l=I(!1),f=I(!1);const o=re(()=>i(n).find(y=>y.id===i(r))??null);async function u(){try{if(m(n,await vt.getProjects(),!0),i(n).length>0&&!i(r)){const y=new URLSearchParams(window.location.search).get("project"),x=y?i(n).find(A=>A.id===y||A.name===y):null;m(r,x?x.id:i(n)[0].id,!0)}}catch(y){m(s,y.message,!0)}finally{m(a,!1)}}function c(y){m(r,y,!0)}async function h(y,x){try{await vt.updateProject(y,{name:x});const A=i(n).findIndex(O=>O.id===y);A!==-1&&(i(n)[A]={...i(n)[A],name:x})}catch(A){m(s,A.message,!0)}}Gt(()=>{u()});function g(y){(y.ctrlKey||y.metaKey)&&y.key==="k"&&(y.preventDefault(),m(l,!i(l)))}var b=Vl();Te("keydown",jt,g);var _=Ct(b);{var T=y=>{ql(y,{get projects(){return i(n)},onSelectProject:x=>{m(r,x,!0)},onNewTask:()=>{m(f,!0)},onClose:()=>{m(l,!1)}})};U(_,y=>{i(l)&&y(T)})}var v=E(_,2);{var w=y=>{var x=Bl();C(y,x)},S=y=>{var x=Kl(),A=E(k(x));H(()=>F(A,` ${i(s)??""}`)),C(y,x)},P=y=>{var x=Hl();C(y,x)},M=y=>{var x=Ul(),A=k(x);Vi(A,{get projects(){return i(n)},get selectedId(){return i(r)},onSelect:c});var O=E(A,2),Y=k(O);Ri(Y,{get projects(){return i(n)},get selectedId(){return i(r)},onSelect:c,onRenamed:h});var Z=E(Y,2);{var oe=L=>{Ll(L,{get project(){return i(o)},get triggerNewTask(){return i(f)},onNewTaskTriggered:()=>{m(f,!1)}})};U(Z,L=>{i(o)&&L(oe)})}C(y,x)};U(v,y=>{i(a)?y(w):i(s)?y(S,1):i(n).length===0?y(P,2):y(M,!1)})}C(e,b),Xe()}hi(Gl,{target:document.getElementById("app")});
|