mindpm 1.2.15 → 1.2.17

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
@@ -15,7 +15,7 @@ import { homedir } from "os";
15
15
 
16
16
  // src/utils/ids.ts
17
17
  import { randomBytes } from "crypto";
18
- function generateId() {
18
+ function generateId2() {
19
19
  return randomBytes(4).toString("hex");
20
20
  }
21
21
  function generateSlug(name) {
@@ -62,9 +62,22 @@ function createSchema(db2) {
62
62
  completed_at DATETIME
63
63
  );
64
64
 
65
+ CREATE TABLE IF NOT EXISTS task_history (
66
+ id TEXT PRIMARY KEY,
67
+ task_id TEXT NOT NULL REFERENCES tasks(id),
68
+ event TEXT NOT NULL,
69
+ old_value TEXT,
70
+ new_value TEXT,
71
+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP
72
+ );
73
+
74
+ CREATE INDEX IF NOT EXISTS idx_task_history_task_id ON task_history(task_id);
75
+ CREATE INDEX IF NOT EXISTS idx_task_history_created_at ON task_history(created_at);
76
+
65
77
  CREATE TABLE IF NOT EXISTS decisions (
66
78
  id TEXT PRIMARY KEY,
67
79
  project_id TEXT NOT NULL REFERENCES projects(id),
80
+ task_id TEXT REFERENCES tasks(id),
68
81
  title TEXT NOT NULL,
69
82
  decision TEXT NOT NULL,
70
83
  reasoning TEXT,
@@ -181,6 +194,21 @@ function runMigrations(db2) {
181
194
  });
182
195
  }
183
196
  }
197
+ const decisionCols = db2.pragma("table_info(decisions)").map((c) => c.name);
198
+ if (!decisionCols.includes("task_id")) {
199
+ db2.exec("ALTER TABLE decisions ADD COLUMN task_id TEXT REFERENCES tasks(id)");
200
+ }
201
+ const historyCount = db2.prepare("SELECT COUNT(*) as n FROM task_history").get().n;
202
+ if (historyCount === 0) {
203
+ const tasks = db2.prepare("SELECT id, status, priority, created_at FROM tasks").all();
204
+ const insert = db2.prepare("INSERT INTO task_history (id, task_id, event, new_value, created_at) VALUES (?, ?, ?, ?, ?)");
205
+ const insertMany = db2.transaction(() => {
206
+ for (const t of tasks) {
207
+ insert.run(generateId(), t.id, "created", JSON.stringify({ status: t.status, priority: t.priority }), t.created_at);
208
+ }
209
+ });
210
+ insertMany();
211
+ }
184
212
  }
185
213
 
186
214
  // src/db/connection.ts
@@ -243,6 +271,12 @@ function resolveProjectOrDefault(projectRef) {
243
271
  }
244
272
  return getMostRecentProject();
245
273
  }
274
+ function recordTaskHistory(taskId, event, oldValue, newValue) {
275
+ const db2 = getDb();
276
+ db2.prepare(
277
+ "INSERT INTO task_history (id, task_id, event, old_value, new_value) VALUES (?, ?, ?, ?, ?)"
278
+ ).run(generateId2(), taskId, event, oldValue, newValue);
279
+ }
246
280
 
247
281
  // src/tools/projects.ts
248
282
  function registerProjectTools(server2) {
@@ -260,7 +294,7 @@ function registerProjectTools(server2) {
260
294
  },
261
295
  async ({ name, description, tech_stack, repo_path }) => {
262
296
  const db2 = getDb();
263
- const id = generateId();
297
+ const id = generateId2();
264
298
  let slug = generateSlug(name);
265
299
  const existing = db2.prepare("SELECT slug FROM projects WHERE slug LIKE ?").all(`${slug}%`);
266
300
  const usedSlugs = new Set(existing.map((r) => r.slug));
@@ -364,7 +398,7 @@ function registerTaskTools(server2) {
364
398
  return { content: [{ type: "text", text: project ? `Project "${project}" not found.` : "No active projects found. Create a project first." }], isError: true };
365
399
  }
366
400
  const db2 = getDb();
367
- const id = generateId();
401
+ const id = generateId2();
368
402
  const seqRow = db2.prepare("SELECT COALESCE(MAX(seq), 0) + 1 AS next_seq FROM tasks WHERE project_id = ?").get(resolved.id);
369
403
  const seq = seqRow.next_seq;
370
404
  db2.prepare(
@@ -563,6 +597,7 @@ function registerDecisionTools(server2) {
563
597
  description: "Record a decision with reasoning and alternatives considered. Proactively use this when the user makes a technical decision, chooses between options, or settles a debate.",
564
598
  inputSchema: {
565
599
  project: z3.string().optional().describe("Project name or ID"),
600
+ task_id: z3.string().optional().describe("Task ID to associate this decision with (omit for project-level)"),
566
601
  title: z3.string().describe("Short title for the decision"),
567
602
  decision: z3.string().describe("What was decided"),
568
603
  reasoning: z3.string().optional().describe("Why this was decided"),
@@ -570,28 +605,30 @@ function registerDecisionTools(server2) {
570
605
  tags: z3.array(z3.string()).optional().describe('Tags like "architecture", "database", "api"')
571
606
  }
572
607
  },
573
- async ({ project, title, decision, reasoning, alternatives, tags }) => {
608
+ async ({ project, task_id, title, decision, reasoning, alternatives, tags }) => {
574
609
  const resolved = resolveProjectOrDefault(project);
575
610
  if (!resolved) {
576
611
  return { content: [{ type: "text", text: project ? `Project "${project}" not found.` : "No active projects found. Create a project first." }], isError: true };
577
612
  }
578
613
  const db2 = getDb();
579
- const id = generateId();
614
+ const id = generateId2();
580
615
  db2.prepare(
581
- `INSERT INTO decisions (id, project_id, title, decision, reasoning, alternatives, tags) VALUES (?, ?, ?, ?, ?, ?, ?)`
616
+ `INSERT INTO decisions (id, project_id, task_id, title, decision, reasoning, alternatives, tags) VALUES (?, ?, ?, ?, ?, ?, ?, ?)`
582
617
  ).run(
583
618
  id,
584
619
  resolved.id,
620
+ task_id ?? null,
585
621
  title,
586
622
  decision,
587
623
  reasoning ?? null,
588
624
  alternatives ? JSON.stringify(alternatives) : null,
589
625
  tags ? JSON.stringify(tags) : null
590
626
  );
627
+ const scope = task_id ? `task ${task_id} in ${resolved.name}` : resolved.name;
591
628
  return {
592
629
  content: [{
593
630
  type: "text",
594
- text: JSON.stringify({ decision_id: id, message: `Decision logged: "${title}" in ${resolved.name}` })
631
+ text: JSON.stringify({ decision_id: id, message: `Decision logged: "${title}" in ${scope}` })
595
632
  }]
596
633
  };
597
634
  }
@@ -652,7 +689,7 @@ function registerNoteTools(server2) {
652
689
  return { content: [{ type: "text", text: project ? `Project "${project}" not found.` : "No active projects found. Create a project first." }], isError: true };
653
690
  }
654
691
  const db2 = getDb();
655
- const id = generateId();
692
+ const id = generateId2();
656
693
  db2.prepare(
657
694
  `INSERT INTO notes (id, project_id, task_id, content, category, tags) VALUES (?, ?, ?, ?, ?, ?)`
658
695
  ).run(
@@ -721,7 +758,7 @@ function registerNoteTools(server2) {
721
758
  return { content: [{ type: "text", text: project ? `Project "${project}" not found.` : "No active projects found. Create a project first." }], isError: true };
722
759
  }
723
760
  const db2 = getDb();
724
- const id = generateId();
761
+ const id = generateId2();
725
762
  db2.prepare(
726
763
  `INSERT INTO context (id, project_id, key, value, category)
727
764
  VALUES (?, ?, ?, ?, ?)
@@ -864,7 +901,7 @@ var createTask = async (req, res, params) => {
864
901
  sendJson(res, 404, { error: "Project not found" });
865
902
  return;
866
903
  }
867
- const id = generateId();
904
+ const id = generateId2();
868
905
  const priority = body.priority || "medium";
869
906
  const tags = Array.isArray(body.tags) ? JSON.stringify(body.tags) : null;
870
907
  const seqRow = db2.prepare("SELECT COALESCE(MAX(seq), 0) + 1 AS next_seq FROM tasks WHERE project_id = ?").get(params.pid);
@@ -882,6 +919,7 @@ var createTask = async (req, res, params) => {
882
919
  body.parent_task_id ?? null
883
920
  );
884
921
  const task = db2.prepare("SELECT t.*, p.slug || '-' || t.seq AS short_id FROM tasks t JOIN projects p ON t.project_id = p.id WHERE t.id = ?").get(id);
922
+ recordTaskHistory(id, "created", null, JSON.stringify({ status: priority === "medium" ? "todo" : priority, priority }));
885
923
  sendJson(res, 201, task);
886
924
  };
887
925
  var updateTask = async (req, res, params) => {
@@ -932,6 +970,15 @@ var updateTask = async (req, res, params) => {
932
970
  }
933
971
  sqlParams.push(params.id);
934
972
  db2.prepare(`UPDATE tasks SET ${updates.join(", ")} WHERE id = ?`).run(...sqlParams);
973
+ if (body.status !== void 0 && body.status !== existing.status) {
974
+ recordTaskHistory(params.id, "status_changed", existing.status, body.status);
975
+ }
976
+ if (body.priority !== void 0 && body.priority !== existing.priority) {
977
+ recordTaskHistory(params.id, "priority_changed", existing.priority, body.priority);
978
+ }
979
+ if (body.title !== void 0 && body.title !== existing.title) {
980
+ recordTaskHistory(params.id, "title_changed", existing.title, body.title);
981
+ }
935
982
  const updated = db2.prepare("SELECT t.*, p.slug || '-' || t.seq AS short_id FROM tasks t JOIN projects p ON t.project_id = p.id WHERE t.id = ?").get(params.id);
936
983
  sendJson(res, 200, updated);
937
984
  };
@@ -954,6 +1001,13 @@ var deleteTask = async (_req, res, params) => {
954
1001
  deleteTransaction(params.id);
955
1002
  sendJson(res, 200, { message: "Task deleted" });
956
1003
  };
1004
+ var getTaskHistory = async (_req, res, params) => {
1005
+ const db2 = getDb();
1006
+ const rows = db2.prepare(
1007
+ "SELECT * FROM task_history WHERE task_id = ? ORDER BY created_at ASC"
1008
+ ).all(params.id);
1009
+ sendJson(res, 200, rows);
1010
+ };
957
1011
  var listDecisions = async (_req, res, params) => {
958
1012
  const db2 = getDb();
959
1013
  const rows = db2.prepare("SELECT * FROM decisions WHERE project_id = ? ORDER BY created_at DESC").all(params.pid);
@@ -967,7 +1021,8 @@ var routes = [
967
1021
  { method: "GET", pattern: "/api/projects/:pid/tasks", handler: listTasks },
968
1022
  { method: "POST", pattern: "/api/projects/:pid/tasks", handler: createTask },
969
1023
  { method: "PATCH", pattern: "/api/tasks/:id", handler: updateTask },
970
- { method: "DELETE", pattern: "/api/tasks/:id", handler: deleteTask }
1024
+ { method: "DELETE", pattern: "/api/tasks/:id", handler: deleteTask },
1025
+ { method: "GET", pattern: "/api/tasks/:id/history", handler: getTaskHistory }
971
1026
  ];
972
1027
  async function handleApiRequest(req, res) {
973
1028
  const url = new URL(req.url || "/", "http://localhost");
@@ -1169,7 +1224,7 @@ function registerSessionTools(server2) {
1169
1224
  const decisionIds = [...new Set(
1170
1225
  recentActivity.filter((a) => a.type === "decision").map((a) => a.id)
1171
1226
  )];
1172
- const syntheticId = generateId();
1227
+ const syntheticId = generateId2();
1173
1228
  db2.prepare(
1174
1229
  `INSERT INTO sessions (id, project_id, summary, tasks_worked_on, decisions_made) VALUES (?, ?, ?, ?, ?)`
1175
1230
  ).run(
@@ -1235,7 +1290,7 @@ ${JSON.stringify(result, null, 2)}` }]
1235
1290
  return { content: [{ type: "text", text: project ? `Project "${project}" not found.` : "No active projects found." }], isError: true };
1236
1291
  }
1237
1292
  const db2 = getDb();
1238
- const id = generateId();
1293
+ const id = generateId2();
1239
1294
  db2.prepare(
1240
1295
  `INSERT INTO sessions (id, project_id, summary, tasks_worked_on, decisions_made, next_steps) VALUES (?, ?, ?, ?, ?, ?)`
1241
1296
  ).run(
@@ -0,0 +1,2 @@
1
+ var Gs=Object.defineProperty;var xn=e=>{throw TypeError(e)};var Ys=(e,t,r)=>t in e?Gs(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var $e=(e,t,r)=>Ys(e,typeof t!="symbol"?t+"":t,r),Vr=(e,t,r)=>t.has(e)||xn("Cannot "+r);var d=(e,t,r)=>(Vr(e,t,"read from private field"),r?r.call(e):t.get(e)),K=(e,t,r)=>t.has(e)?xn("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),F=(e,t,r,n)=>(Vr(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),oe=(e,t,r)=>(Vr(e,t,"access private method"),r);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const s of i)if(s.type==="childList")for(const l of s.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&n(l)}).observe(document,{childList:!0,subtree:!0});function r(i){const s={};return i.integrity&&(s.integrity=i.integrity),i.referrerPolicy&&(s.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?s.credentials="include":i.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function n(i){if(i.ep)return;i.ep=!0;const s=r(i);fetch(i.href,s)}})();const Wr=!1;var vn=Array.isArray,Js=Array.prototype.indexOf,nr=Array.prototype.includes,Fr=Array.from,Ws=Object.defineProperty,Wt=Object.getOwnPropertyDescriptor,Qs=Object.getOwnPropertyDescriptors,Xs=Object.prototype,Zs=Array.prototype,Vn=Object.getPrototypeOf,Cn=Object.isExtensible;const Gn=()=>{};function $s(e){for(var t=0;t<e.length;t++)e[t]()}function Yn(){var e,t,r=new Promise((n,i)=>{e=n,t=i});return{promise:r,resolve:e,reject:t}}const ve=2,Sr=4,qr=8,Jn=1<<24,gt=16,Je=32,Yt=64,Qr=128,Le=512,fe=1024,de=2048,Ye=4096,Ce=8192,ht=16384,Kt=32768,sr=65536,jn=1<<17,Wn=1<<18,or=1<<19,ei=1<<20,dt=1<<25,Ut=65536,Xr=1<<21,dn=1<<22,Tt=1<<23,Ft=Symbol("$state"),ti=Symbol("legacy props"),Pt=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 Hn;const ri=!!((Hn=globalThis.document)!=null&&Hn.contentType)&&globalThis.document.contentType.includes("xml");function ni(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function si(e,t,r){throw new Error("https://svelte.dev/e/each_key_duplicate")}function ii(e){throw new Error("https://svelte.dev/e/effect_in_teardown")}function ai(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function li(e){throw new Error("https://svelte.dev/e/effect_orphan")}function oi(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function fi(e){throw new Error("https://svelte.dev/e/props_invalid_value")}function ui(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function ci(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function vi(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function di(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}const hi=1,_i=2,Qn=4,gi=8,pi=16,mi=1,yi=4,bi=8,wi=16,ki=1,Ei=2,ue=Symbol(),Xn="http://www.w3.org/1999/xhtml",Ti="http://www.w3.org/2000/svg",Si="http://www.w3.org/1998/Math/MathML";function xi(){console.warn("https://svelte.dev/e/select_multiple_invalid_value")}function Ci(){console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}function Zn(e){return e===this.v}function ji(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}function $n(e){return!ji(e,this.v)}let Pi=!1,Fe=null;function ir(e){Fe=e}function We(e,t=!1,r){Fe={p:Fe,i:!1,c:null,e:null,s:e,x:null,l:null}}function Qe(e){var t=Fe,r=t.e;if(r!==null){t.e=null;for(var n of r)ws(n)}return t.i=!0,Fe=t.p,{}}function es(){return!0}let At=[];function ts(){var e=At;At=[],$s(e)}function nt(e){if(At.length===0&&!hr){var t=At;queueMicrotask(()=>{t===At&&ts()})}At.push(e)}function Ai(){for(;At.length>0;)ts()}function rs(e){var t=G;if(t===null)return z.f|=Tt,e;if((t.f&Kt)===0&&(t.f&Sr)===0)throw e;Et(e,t)}function Et(e,t){for(;t!==null;){if((t.f&Qr)!==0){if((t.f&Kt)===0)throw e;try{t.b.error(e);return}catch(r){e=r}}t=t.parent}throw e}const Di=-7169;function te(e,t){e.f=e.f&Di|t}function hn(e){(e.f&Le)!==0||e.deps===null?te(e,fe):te(e,Ye)}function ns(e){if(e!==null)for(const t of e)(t.f&ve)===0||(t.f&Ut)===0||(t.f^=Ut,ns(t.deps))}function ss(e,t,r){(e.f&de)!==0?t.add(e):(e.f&Ye)!==0&&r.add(e),ns(e.deps),te(e,fe)}const Pr=new Set;let L=null,Mr=null,ce=null,ye=[],zr=null,Zr=!1,hr=!1;var Qt,Xt,Ot,Zt,wr,kr,It,ft,$t,je,$r,en,tn,is;const En=class En{constructor(){K(this,je);$e(this,"current",new Map);$e(this,"previous",new Map);K(this,Qt,new Set);K(this,Xt,new Set);K(this,Ot,0);K(this,Zt,0);K(this,wr,null);K(this,kr,new Set);K(this,It,new Set);K(this,ft,new Map);$e(this,"is_fork",!1);K(this,$t,!1)}skip_effect(t){d(this,ft).has(t)||d(this,ft).set(t,{d:[],m:[]})}unskip_effect(t){var r=d(this,ft).get(t);if(r){d(this,ft).delete(t);for(var n of r.d)te(n,de),Ve(n);for(n of r.m)te(n,Ye),Ve(n)}}process(t){var i;ye=[],this.apply();var r=[],n=[];for(const s of t)oe(this,je,en).call(this,s,r,n);if(oe(this,je,$r).call(this)){oe(this,je,tn).call(this,n),oe(this,je,tn).call(this,r);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,Ot)===0&&oe(this,je,is).call(this),Mr=this,L=null,Pn(n),Pn(r),Mr=null,(i=d(this,wr))==null||i.resolve()}ce=null}capture(t,r){r!==ue&&!this.previous.has(t)&&this.previous.set(t,r),(t.f&Tt)===0&&(this.current.set(t,t.v),ce==null||ce.set(t,t.v))}activate(){L=this,this.apply()}deactivate(){L===this&&(L=null,ce=null)}flush(){if(this.activate(),ye.length>0){if(as(),L!==null&&L!==this)return}else d(this,Ot)===0&&this.process([]);this.deactivate()}discard(){for(const t of d(this,Xt))t(this);d(this,Xt).clear()}increment(t){F(this,Ot,d(this,Ot)+1),t&&F(this,Zt,d(this,Zt)+1)}decrement(t){F(this,Ot,d(this,Ot)-1),t&&F(this,Zt,d(this,Zt)-1),!d(this,$t)&&(F(this,$t,!0),nt(()=>{F(this,$t,!1),oe(this,je,$r).call(this)?ye.length>0&&this.flush():this.revive()}))}revive(){for(const t of d(this,kr))d(this,It).delete(t),te(t,de),Ve(t);for(const t of d(this,It))te(t,Ye),Ve(t);this.flush()}oncommit(t){d(this,Qt).add(t)}ondiscard(t){d(this,Xt).add(t)}settled(){return(d(this,wr)??F(this,wr,Yn())).promise}static ensure(){if(L===null){const t=L=new En;Pr.add(L),hr||nt(()=>{L===t&&t.flush()})}return L}apply(){}};Qt=new WeakMap,Xt=new WeakMap,Ot=new WeakMap,Zt=new WeakMap,wr=new WeakMap,kr=new WeakMap,It=new WeakMap,ft=new WeakMap,$t=new WeakMap,je=new WeakSet,$r=function(){return this.is_fork||d(this,Zt)>0},en=function(t,r,n){t.f^=fe;for(var i=t.first;i!==null;){var s=i.f,l=(s&(Je|Yt))!==0,f=l&&(s&fe)!==0,o=f||(s&Ce)!==0||d(this,ft).has(i);if(!o&&i.fn!==null){l?i.f^=fe:(s&Sr)!==0?r.push(i):Cr(i)&&((s&gt)!==0&&d(this,It).add(i),lr(i));var u=i.first;if(u!==null){i=u;continue}}for(;i!==null;){var v=i.next;if(v!==null){i=v;break}i=i.parent}}},tn=function(t){for(var r=0;r<t.length;r+=1)ss(t[r],d(this,kr),d(this,It))},is=function(){var i;if(Pr.size>1){this.previous.clear();var t=ce,r=!0;for(const s of Pr){if(s===this){r=!1;continue}const l=[];for(const[o,u]of this.current){if(s.current.has(o))if(r&&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 n=ye;ye=[];const o=new Set,u=new Map;for(const v of l)ls(v,f,o,u);if(ye.length>0){L=s,s.apply();for(const v of ye)oe(i=s,je,en).call(i,v,[],[]);s.deactivate()}ye=n}}L=null,ce=t}Pr.delete(this)};let St=En;function Ni(e){var t=hr;hr=!0;try{for(var r;;){if(Ai(),ye.length===0&&(L==null||L.flush(),ye.length===0))return zr=null,r;as()}}finally{hr=t}}function as(){Zr=!0;var e=null;try{for(var t=0;ye.length>0;){var r=St.ensure();if(t++>1e3){var n,i;Oi()}r.process(ye),xt.clear()}}finally{ye=[],Zr=!1,zr=null}}function Oi(){try{oi()}catch(e){Et(e,zr)}}let He=null;function Pn(e){var t=e.length;if(t!==0){for(var r=0;r<t;){var n=e[r++];if((n.f&(ht|Ce))===0&&Cr(n)&&(He=new Set,lr(n),n.deps===null&&n.first===null&&n.nodes===null&&n.teardown===null&&n.ac===null&&Ss(n),(He==null?void 0:He.size)>0)){xt.clear();for(const i of He){if((i.f&(ht|Ce))!==0)continue;const s=[i];let l=i.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|Ce))===0&&lr(o)}}He.clear()}}He=null}}function ls(e,t,r,n){if(!r.has(e)&&(r.add(e),e.reactions!==null))for(const i of e.reactions){const s=i.f;(s&ve)!==0?ls(i,t,r,n):(s&(dn|gt))!==0&&(s&de)===0&&os(i,t,n)&&(te(i,de),Ve(i))}}function os(e,t,r){const n=r.get(e);if(n!==void 0)return n;if(e.deps!==null)for(const i of e.deps){if(nr.call(t,i))return!0;if((i.f&ve)!==0&&os(i,t,r))return r.set(i,!0),!0}return r.set(e,!1),!1}function Ve(e){var t=zr=e,r=t.b;if(r!=null&&r.is_pending&&(e.f&(Sr|qr|Jn))!==0&&(e.f&Kt)===0){r.defer_effect(e);return}for(;t.parent!==null;){t=t.parent;var n=t.f;if(Zr&&t===G&&(n&gt)!==0&&(n&Wn)===0&&(n&Kt)!==0)return;if((n&(Yt|Je))!==0){if((n&fe)===0)return;t.f^=fe}}ye.push(t)}function fs(e,t){if(!((e.f&Je)!==0&&(e.f&fe)!==0)){(e.f&de)!==0?t.d.push(e):(e.f&Ye)!==0&&t.m.push(e),te(e,fe);for(var r=e.first;r!==null;)fs(r,t),r=r.next}}function Ii(e){let t=0,r=Vt(0),n;return()=>{pn()&&(a(r),yn(()=>(t===0&&(n=Kr(()=>e(()=>_r(r)))),t+=1,()=>{nt(()=>{t-=1,t===0&&(n==null||n(),n=void 0,_r(r))})})))}}var Mi=sr|or;function Li(e,t,r,n){new Ri(e,t,r,n)}var Ne,cn,et,Mt,me,tt,Se,Ke,ut,Lt,kt,er,tr,rr,ct,Lr,ae,Fi,qi,zi,rn,Nr,Or,nn;class Ri{constructor(t,r,n,i){K(this,ae);$e(this,"parent");$e(this,"is_pending",!1);$e(this,"transform_error");K(this,Ne);K(this,cn,null);K(this,et);K(this,Mt);K(this,me);K(this,tt,null);K(this,Se,null);K(this,Ke,null);K(this,ut,null);K(this,Lt,0);K(this,kt,0);K(this,er,!1);K(this,tr,new Set);K(this,rr,new Set);K(this,ct,null);K(this,Lr,Ii(()=>(F(this,ct,Vt(d(this,Lt))),()=>{F(this,ct,null)})));var s;F(this,Ne,t),F(this,et,r),F(this,Mt,l=>{var f=G;f.b=this,f.f|=Qr,n(l)}),this.parent=G.b,this.transform_error=i??((s=this.parent)==null?void 0:s.transform_error)??(l=>l),F(this,me,bn(()=>{oe(this,ae,rn).call(this)},Mi))}defer_effect(t){ss(t,d(this,tr),d(this,rr))}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!d(this,et).pending}update_pending_count(t){oe(this,ae,nn).call(this,t),F(this,Lt,d(this,Lt)+t),!(!d(this,ct)||d(this,er))&&(F(this,er,!0),nt(()=>{F(this,er,!1),d(this,ct)&&ar(d(this,ct),d(this,Lt))}))}get_effect_pending(){return d(this,Lr).call(this),a(d(this,ct))}error(t){var r=d(this,et).onerror;let n=d(this,et).failed;if(!r&&!n)throw t;d(this,tt)&&(we(d(this,tt)),F(this,tt,null)),d(this,Se)&&(we(d(this,Se)),F(this,Se,null)),d(this,Ke)&&(we(d(this,Ke)),F(this,Ke,null));var i=!1,s=!1;const l=()=>{if(i){Ci();return}i=!0,s&&di(),d(this,Ke)!==null&&Bt(d(this,Ke),()=>{F(this,Ke,null)}),oe(this,ae,Or).call(this,()=>{St.ensure(),oe(this,ae,rn).call(this)})},f=o=>{try{s=!0,r==null||r(o,l),s=!1}catch(u){Et(u,d(this,me)&&d(this,me).parent)}n&&F(this,Ke,oe(this,ae,Or).call(this,()=>{St.ensure();try{return Oe(()=>{var u=G;u.b=this,u.f|=Qr,n(d(this,Ne),()=>o,()=>l)})}catch(u){return Et(u,d(this,me).parent),null}}))};nt(()=>{var o;try{o=this.transform_error(t)}catch(u){Et(u,d(this,me)&&d(this,me).parent);return}o!==null&&typeof o=="object"&&typeof o.then=="function"?o.then(f,u=>Et(u,d(this,me)&&d(this,me).parent)):f(o)})}}Ne=new WeakMap,cn=new WeakMap,et=new WeakMap,Mt=new WeakMap,me=new WeakMap,tt=new WeakMap,Se=new WeakMap,Ke=new WeakMap,ut=new WeakMap,Lt=new WeakMap,kt=new WeakMap,er=new WeakMap,tr=new WeakMap,rr=new WeakMap,ct=new WeakMap,Lr=new WeakMap,ae=new WeakSet,Fi=function(){try{F(this,tt,Oe(()=>d(this,Mt).call(this,d(this,Ne))))}catch(t){this.error(t)}},qi=function(t){const r=d(this,et).failed;r&&F(this,Ke,Oe(()=>{r(d(this,Ne),()=>t,()=>()=>{})}))},zi=function(){const t=d(this,et).pending;t&&(this.is_pending=!0,F(this,Se,Oe(()=>t(d(this,Ne)))),nt(()=>{var r=F(this,ut,document.createDocumentFragment()),n=_t();r.append(n),F(this,tt,oe(this,ae,Or).call(this,()=>(St.ensure(),Oe(()=>d(this,Mt).call(this,n))))),d(this,kt)===0&&(d(this,Ne).before(r),F(this,ut,null),Bt(d(this,Se),()=>{F(this,Se,null)}),oe(this,ae,Nr).call(this))}))},rn=function(){try{if(this.is_pending=this.has_pending_snippet(),F(this,kt,0),F(this,Lt,0),F(this,tt,Oe(()=>{d(this,Mt).call(this,d(this,Ne))})),d(this,kt)>0){var t=F(this,ut,document.createDocumentFragment());js(d(this,tt),t);const r=d(this,et).pending;F(this,Se,Oe(()=>r(d(this,Ne))))}else oe(this,ae,Nr).call(this)}catch(r){this.error(r)}},Nr=function(){this.is_pending=!1;for(const t of d(this,tr))te(t,de),Ve(t);for(const t of d(this,rr))te(t,Ye),Ve(t);d(this,tr).clear(),d(this,rr).clear()},Or=function(t){var r=G,n=z,i=Fe;it(d(this,me)),qe(d(this,me)),ir(d(this,me).ctx);try{return t()}catch(s){return rs(s),null}finally{it(r),qe(n),ir(i)}},nn=function(t){var r;if(!this.has_pending_snippet()){this.parent&&oe(r=this.parent,ae,nn).call(r,t);return}F(this,kt,d(this,kt)+t),d(this,kt)===0&&(oe(this,ae,Nr).call(this),d(this,Se)&&Bt(d(this,Se),()=>{F(this,Se,null)}),d(this,ut)&&(d(this,Ne).before(d(this,ut)),F(this,ut,null)))};function Bi(e,t,r,n){const i=Br;var s=e.filter(h=>!h.settled);if(r.length===0&&s.length===0){n(t.map(i));return}var l=G,f=Hi(),o=s.length===1?s[0].promise:s.length>1?Promise.all(s.map(h=>h.promise)):null;function u(h){f();try{n(h)}catch(g){(l.f&ht)===0&&Et(g,l)}sn()}if(r.length===0){o.then(()=>u(t.map(i)));return}function v(){f(),Promise.all(r.map(h=>Ui(h))).then(h=>u([...t.map(i),...h])).catch(h=>Et(h,l))}o?o.then(v):v()}function Hi(){var e=G,t=z,r=Fe,n=L;return function(s=!0){it(e),qe(t),ir(r),s&&(n==null||n.activate())}}function sn(e=!0){it(null),qe(null),ir(null),e&&(L==null||L.deactivate())}function Ki(){var e=G.b,t=L,r=e.is_rendered();return e.update_pending_count(1),t.increment(r),()=>{e.update_pending_count(-1),t.decrement(r)}}function Br(e){var t=ve|de,r=z!==null&&(z.f&ve)!==0?z:null;return G!==null&&(G.f|=or),{ctx:Fe,deps:null,effects:null,equals:Zn,f:t,fn:e,reactions:null,rv:0,v:ue,wv:0,parent:r??G,ac:null}}function Ui(e,t,r){G===null&&ni();var i=void 0,s=Vt(ue),l=!z,f=new Map;return na(()=>{var g;var o=Yn();i=o.promise;try{Promise.resolve(e()).then(o.resolve,o.reject).finally(sn)}catch(b){o.reject(b),sn()}var u=L;if(l){var v=Ki();(g=f.get(u))==null||g.reject(Pt),f.delete(u),f.set(u,o)}const h=(b,_=void 0)=>{if(u.activate(),_)_!==Pt&&(s.f|=Tt,ar(s,_));else{(s.f&Tt)!==0&&(s.f^=Tt),ar(s,b);for(const[E,c]of f){if(f.delete(E),E===u)break;c.reject(Pt)}}v&&v()};o.promise.then(h,b=>h(null,b||"unknown"))}),mn(()=>{for(const o of f.values())o.reject(Pt)}),new Promise(o=>{function u(v){function h(){v===i?o(s):u(i)}v.then(h,h)}u(i)})}function se(e){const t=Br(e);return Ps(t),t}function us(e){const t=Br(e);return t.equals=$n,t}function Vi(e){var t=e.effects;if(t!==null){e.effects=null;for(var r=0;r<t.length;r+=1)we(t[r])}}function Gi(e){for(var t=e.parent;t!==null;){if((t.f&ve)===0)return(t.f&ht)===0?t:null;t=t.parent}return null}function _n(e){var t,r=G;it(Gi(e));try{e.f&=~Ut,Vi(e),t=Os(e)}finally{it(r)}return t}function cs(e){var t=_n(e);if(!e.equals(t)&&(e.wv=Ds(),(!(L!=null&&L.is_fork)||e.deps===null)&&(e.v=t,e.deps===null))){te(e,fe);return}jt||(ce!==null?(pn()||L!=null&&L.is_fork)&&ce.set(e,t):hn(e))}function Yi(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(Pt),n.teardown=Gn,n.ac=null,mr(n,0),wn(n))}function vs(e){if(e.effects!==null)for(const t of e.effects)t.teardown&&lr(t)}let an=new Set;const xt=new Map;let ds=!1;function Vt(e,t){var r={f:0,v:e,reactions:null,equals:Zn,rv:0,wv:0};return r}function O(e,t){const r=Vt(e);return Ps(r),r}function Ji(e,t=!1,r=!0){const n=Vt(e);return t||(n.equals=$n),n}function m(e,t,r=!1){z!==null&&(!Ge||(z.f&jn)!==0)&&es()&&(z.f&(ve|gt|dn|jn))!==0&&(Re===null||!nr.call(Re,e))&&vi();let n=r?Me(t):t;return ar(e,n)}function ar(e,t){if(!e.equals(t)){var r=e.v;jt?xt.set(e,t):xt.set(e,r),e.v=t;var n=St.ensure();if(n.capture(e,r),(e.f&ve)!==0){const i=e;(e.f&de)!==0&&_n(i),hn(i)}e.wv=Ds(),hs(e,de),G!==null&&(G.f&fe)!==0&&(G.f&(Je|Yt))===0&&(De===null?ia([e]):De.push(e)),!n.is_fork&&an.size>0&&!ds&&Wi()}return t}function Wi(){ds=!1;for(const e of an)(e.f&fe)!==0&&te(e,Ye),Cr(e)&&lr(e);an.clear()}function _r(e){m(e,e.v+1)}function hs(e,t){var r=e.reactions;if(r!==null)for(var n=r.length,i=0;i<n;i++){var s=r[i],l=s.f,f=(l&de)===0;if(f&&te(s,t),(l&ve)!==0){var o=s;ce==null||ce.delete(o),(l&Ut)===0&&(l&Le&&(s.f|=Ut),hs(o,Ye))}else f&&((l&gt)!==0&&He!==null&&He.add(s),Ve(s))}}function Me(e){if(typeof e!="object"||e===null||Ft in e)return e;const t=Vn(e);if(t!==Xs&&t!==Zs)return e;var r=new Map,n=vn(e),i=O(0),s=Ht,l=f=>{if(Ht===s)return f();var o=z,u=Ht;qe(null),On(s);var v=f();return qe(o),On(u),v};return n&&r.set("length",O(e.length)),new Proxy(e,{defineProperty(f,o,u){(!("value"in u)||u.configurable===!1||u.enumerable===!1||u.writable===!1)&&ui();var v=r.get(o);return v===void 0?l(()=>{var h=O(u.value);return r.set(o,h),h}):m(v,u.value,!0),!0},deleteProperty(f,o){var u=r.get(o);if(u===void 0){if(o in f){const v=l(()=>O(ue));r.set(o,v),_r(i)}}else m(u,ue),_r(i);return!0},get(f,o,u){var b;if(o===Ft)return e;var v=r.get(o),h=o in f;if(v===void 0&&(!h||(b=Wt(f,o))!=null&&b.writable)&&(v=l(()=>{var _=Me(h?f[o]:ue),E=O(_);return E}),r.set(o,v)),v!==void 0){var g=a(v);return g===ue?void 0:g}return Reflect.get(f,o,u)},getOwnPropertyDescriptor(f,o){var u=Reflect.getOwnPropertyDescriptor(f,o);if(u&&"value"in u){var v=r.get(o);v&&(u.value=a(v))}else if(u===void 0){var h=r.get(o),g=h==null?void 0:h.v;if(h!==void 0&&g!==ue)return{enumerable:!0,configurable:!0,value:g,writable:!0}}return u},has(f,o){var g;if(o===Ft)return!0;var u=r.get(o),v=u!==void 0&&u.v!==ue||Reflect.has(f,o);if(u!==void 0||G!==null&&(!v||(g=Wt(f,o))!=null&&g.writable)){u===void 0&&(u=l(()=>{var b=v?Me(f[o]):ue,_=O(b);return _}),r.set(o,u));var h=a(u);if(h===ue)return!1}return v},set(f,o,u,v){var N;var h=r.get(o),g=o in f;if(n&&o==="length")for(var b=u;b<h.v;b+=1){var _=r.get(b+"");_!==void 0?m(_,ue):b in f&&(_=l(()=>O(ue)),r.set(b+"",_))}if(h===void 0)(!g||(N=Wt(f,o))!=null&&N.writable)&&(h=l(()=>O(void 0)),m(h,Me(u)),r.set(o,h));else{g=h.v!==ue;var E=l(()=>Me(u));m(h,E)}var c=Reflect.getOwnPropertyDescriptor(f,o);if(c!=null&&c.set&&c.set.call(v,u),!g){if(n&&typeof o=="string"){var y=r.get("length"),D=Number(o);Number.isInteger(D)&&D>=y.v&&m(y,D+1)}_r(i)}return!0},ownKeys(f){a(i);var o=Reflect.ownKeys(f).filter(h=>{var g=r.get(h);return g===void 0||g.v!==ue});for(var[u,v]of r)v.v!==ue&&!(u in f)&&o.push(u);return o},setPrototypeOf(){ci()}})}function An(e){try{if(e!==null&&typeof e=="object"&&Ft in e)return e[Ft]}catch{}return e}function Qi(e,t){return Object.is(An(e),An(t))}var Ct,_s,gs,ps;function Xi(){if(Ct===void 0){Ct=window,_s=/Firefox/.test(navigator.userAgent);var e=Element.prototype,t=Node.prototype,r=Text.prototype;gs=Wt(t,"firstChild").get,ps=Wt(t,"nextSibling").get,Cn(e)&&(e.__click=void 0,e.__className=void 0,e.__attributes=null,e.__style=void 0,e.__e=void 0),Cn(r)&&(r.__t=void 0)}}function _t(e=""){return document.createTextNode(e)}function qt(e){return gs.call(e)}function xr(e){return ps.call(e)}function k(e,t){return qt(e)}function zt(e,t=!1){{var r=qt(e);return r instanceof Comment&&r.data===""?xr(r):r}}function T(e,t=1,r=!1){let n=e;for(;t--;)n=xr(n);return n}function Zi(e){e.textContent=""}function ms(){return!1}function ys(e,t,r){return document.createElementNS(t??Xn,e,void 0)}function gn(e,t){{const r=document.body;e.autofocus=!0,nt(()=>{document.activeElement===r&&e.focus()})}}let Dn=!1;function $i(){Dn||(Dn=!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 Hr(e){var t=z,r=G;qe(null),it(null);try{return e()}finally{qe(t),it(r)}}function bs(e,t,r,n=r){e.addEventListener(t,()=>Hr(r));const i=e.__on_r;i?e.__on_r=()=>{i(),n(!0)}:e.__on_r=()=>n(!0),$i()}function ea(e){G===null&&(z===null&&li(),ai()),jt&&ii()}function ta(e,t){var r=t.last;r===null?t.last=t.first=e:(r.next=e,e.prev=r,t.last=e)}function pt(e,t,r){var n=G;n!==null&&(n.f&Ce)!==0&&(e|=Ce);var i={ctx:Fe,deps:null,nodes:null,f:e|de|Le,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{lr(i)}catch(f){throw we(i),f}else t!==null&&Ve(i);var s=i;if(r&&s.deps===null&&s.teardown===null&&s.nodes===null&&s.first===s.last&&(s.f&or)===0&&(s=s.first,(e&gt)!==0&&(e&sr)!==0&&s!==null&&(s.f|=sr)),s!==null&&(s.parent=n,n!==null&&ta(s,n),z!==null&&(z.f&ve)!==0&&(e&Yt)===0)){var l=z;(l.effects??(l.effects=[])).push(s)}return i}function pn(){return z!==null&&!Ge}function mn(e){const t=pt(qr,null,!1);return te(t,fe),t.teardown=e,t}function Gt(e){ea();var t=G.f,r=!z&&(t&Je)!==0&&(t&Kt)===0;if(r){var n=Fe;(n.e??(n.e=[])).push(e)}else return ws(e)}function ws(e){return pt(Sr|ei,e,!1)}function ra(e){St.ensure();const t=pt(Yt|or,e,!0);return(r={})=>new Promise(n=>{r.outro?Bt(t,()=>{we(t),n(void 0)}):(we(t),n(void 0))})}function ks(e){return pt(Sr,e,!1)}function na(e){return pt(dn|or,e,!0)}function yn(e,t=0){return pt(qr|t,e,!0)}function V(e,t=[],r=[],n=[]){Bi(n,t,r,i=>{pt(qr,()=>e(...i.map(a)),!0)})}function bn(e,t=0){var r=pt(gt|t,e,!0);return r}function Oe(e){return pt(Je|or,e,!0)}function Es(e){var t=e.teardown;if(t!==null){const r=jt,n=z;Nn(!0),qe(null);try{t.call(null)}finally{Nn(r),qe(n)}}}function wn(e,t=!1){var r=e.first;for(e.first=e.last=null;r!==null;){const i=r.ac;i!==null&&Hr(()=>{i.abort(Pt)});var n=r.next;(r.f&Yt)!==0?r.parent=null:we(r,t),r=n}}function sa(e){for(var t=e.first;t!==null;){var r=t.next;(t.f&Je)===0&&we(t),t=r}}function we(e,t=!0){var r=!1;(t||(e.f&Wn)!==0)&&e.nodes!==null&&e.nodes.end!==null&&(Ts(e.nodes.start,e.nodes.end),r=!0),wn(e,t&&!r),mr(e,0),te(e,ht);var n=e.nodes&&e.nodes.t;if(n!==null)for(const s of n)s.stop();Es(e);var i=e.parent;i!==null&&i.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 r=e===t?null:xr(e);e.remove(),e=r}}function Ss(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 Bt(e,t,r=!0){var n=[];xs(e,n,!0);var i=()=>{r&&we(e),t&&t()},s=n.length;if(s>0){var l=()=>--s||i();for(var f of n)f.out(l)}else i()}function xs(e,t,r){if((e.f&Ce)===0){e.f^=Ce;var n=e.nodes&&e.nodes.t;if(n!==null)for(const f of n)(f.is_global||r)&&t.push(f);for(var i=e.first;i!==null;){var s=i.next,l=(i.f&sr)!==0||(i.f&Je)!==0&&(e.f&gt)!==0;xs(i,t,l?r:!1),i=s}}}function kn(e){Cs(e,!0)}function Cs(e,t){if((e.f&Ce)!==0){e.f^=Ce,(e.f&fe)===0&&(te(e,de),Ve(e));for(var r=e.first;r!==null;){var n=r.next,i=(r.f&sr)!==0||(r.f&Je)!==0;Cs(r,i?t:!1),r=n}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 r=e.nodes.start,n=e.nodes.end;r!==null;){var i=r===n?null:xr(r);t.append(r),r=i}}let Ir=!1,jt=!1;function Nn(e){jt=e}let z=null,Ge=!1;function qe(e){z=e}let G=null;function it(e){G=e}let Re=null;function Ps(e){z!==null&&(Re===null?Re=[e]:Re.push(e))}let be=null,Te=0,De=null;function ia(e){De=e}let As=1,Dt=0,Ht=Dt;function On(e){Ht=e}function Ds(){return++As}function Cr(e){var t=e.f;if((t&de)!==0)return!0;if(t&ve&&(e.f&=~Ut),(t&Ye)!==0){for(var r=e.deps,n=r.length,i=0;i<n;i++){var s=r[i];if(Cr(s)&&cs(s),s.wv>e.wv)return!0}(t&Le)!==0&&ce===null&&te(e,fe)}return!1}function Ns(e,t,r=!0){var n=e.reactions;if(n!==null&&!(Re!==null&&nr.call(Re,e)))for(var i=0;i<n.length;i++){var s=n[i];(s.f&ve)!==0?Ns(s,t,!1):t===s&&(r?te(s,de):(s.f&fe)!==0&&te(s,Ye),Ve(s))}}function Os(e){var E;var t=be,r=Te,n=De,i=z,s=Re,l=Fe,f=Ge,o=Ht,u=e.f;be=null,Te=0,De=null,z=(u&(Je|Yt))===0?e:null,Re=null,ir(e.ctx),Ge=!1,Ht=++Dt,e.ac!==null&&(Hr(()=>{e.ac.abort(Pt)}),e.ac=null);try{e.f|=Xr;var v=e.fn,h=v();e.f|=Kt;var g=e.deps,b=L==null?void 0:L.is_fork;if(be!==null){var _;if(b||mr(e,Te),g!==null&&Te>0)for(g.length=Te+be.length,_=0;_<be.length;_++)g[Te+_]=be[_];else e.deps=g=be;if(pn()&&(e.f&Le)!==0)for(_=Te;_<g.length;_++)((E=g[_]).reactions??(E.reactions=[])).push(e)}else!b&&g!==null&&Te<g.length&&(mr(e,Te),g.length=Te);if(es()&&De!==null&&!Ge&&g!==null&&(e.f&(ve|Ye|de))===0)for(_=0;_<De.length;_++)Ns(De[_],e);if(i!==null&&i!==e){if(Dt++,i.deps!==null)for(let c=0;c<r;c+=1)i.deps[c].rv=Dt;if(t!==null)for(const c of t)c.rv=Dt;De!==null&&(n===null?n=De:n.push(...De))}return(e.f&Tt)!==0&&(e.f^=Tt),h}catch(c){return rs(c)}finally{e.f^=Xr,be=t,Te=r,De=n,z=i,Re=s,ir(l),Ge=f,Ht=o}}function aa(e,t){let r=t.reactions;if(r!==null){var n=Js.call(r,e);if(n!==-1){var i=r.length-1;i===0?r=t.reactions=null:(r[n]=r[i],r.pop())}}if(r===null&&(t.f&ve)!==0&&(be===null||!nr.call(be,t))){var s=t;(s.f&Le)!==0&&(s.f^=Le,s.f&=~Ut),hn(s),Yi(s),mr(s,0)}}function mr(e,t){var r=e.deps;if(r!==null)for(var n=t;n<r.length;n++)aa(e,r[n])}function lr(e){var t=e.f;if((t&ht)===0){te(e,fe);var r=G,n=Ir;G=e,Ir=!0;try{(t&(gt|Jn))!==0?sa(e):wn(e),Es(e);var i=Os(e);e.teardown=typeof i=="function"?i:null,e.wv=As;var s;Wr&&Pi&&(e.f&de)!==0&&e.deps}finally{Ir=n,G=r}}}async function la(){await Promise.resolve(),Ni()}function a(e){var t=e.f,r=(t&ve)!==0;if(z!==null&&!Ge){var n=G!==null&&(G.f&ht)!==0;if(!n&&(Re===null||!nr.call(Re,e))){var i=z.deps;if((z.f&Xr)!==0)e.rv<Dt&&(e.rv=Dt,be===null&&i!==null&&i[Te]===e?Te++:be===null?be=[e]:be.push(e));else{(z.deps??(z.deps=[])).push(e);var s=e.reactions;s===null?e.reactions=[z]:nr.call(s,z)||s.push(z)}}}if(jt&&xt.has(e))return xt.get(e);if(r){var l=e;if(jt){var f=l.v;return((l.f&fe)===0&&l.reactions!==null||Ms(l))&&(f=_n(l)),xt.set(l,f),f}var o=(l.f&Le)===0&&!Ge&&z!==null&&(Ir||(z.f&Le)!==0),u=(l.f&Kt)===0;Cr(l)&&(o&&(l.f|=Le),cs(l)),o&&!u&&(vs(l),Is(l))}if(ce!=null&&ce.has(e))return ce.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&ve)!==0&&(t.f&Le)===0&&(vs(t),Is(t))}function Ms(e){if(e.v===ue)return!0;if(e.deps===null)return!1;for(const t of e.deps)if(xt.has(t)||(t.f&ve)!==0&&Ms(t))return!0;return!1}function Kr(e){var t=Ge;try{return Ge=!0,e()}finally{Ge=t}}const oa=["touchstart","touchmove"];function fa(e){return oa.includes(e)}const Nt=Symbol("events"),Ls=new Set,ln=new Set;function ua(e,t,r,n={}){function i(s){if(n.capture||on.call(t,s),!s.cancelBubble)return Hr(()=>r==null?void 0:r.call(this,s))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?nt(()=>{t.addEventListener(e,i,n)}):t.addEventListener(e,i,n),i}function ke(e,t,r,n,i){var s={capture:n,passive:i},l=ua(e,t,r,s);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&mn(()=>{t.removeEventListener(e,l,s)})}function Q(e,t,r){(t[Nt]??(t[Nt]={}))[e]=r}function mt(e){for(var t=0;t<e.length;t++)Ls.add(e[t]);for(var r of ln)r(e)}let In=null;function on(e){var c,y;var t=this,r=t.ownerDocument,n=e.type,i=((c=e.composedPath)==null?void 0:c.call(e))||[],s=i[0]||e.target;In=e;var l=0,f=In===e&&e[Nt];if(f){var o=i.indexOf(f);if(o!==-1&&(t===document||t===window)){e[Nt]=t;return}var u=i.indexOf(t);if(u===-1)return;o<=u&&(l=o)}if(s=i[l]||e.target,s!==t){Ws(e,"currentTarget",{configurable:!0,get(){return s||r}});var v=z,h=G;qe(null),it(null);try{for(var g,b=[];s!==null;){var _=s.assignedSlot||s.parentNode||s.host||null;try{var E=(y=s[Nt])==null?void 0:y[n];E!=null&&(!s.disabled||e.target===s)&&E.call(s,e)}catch(D){g?b.push(D):g=D}if(e.cancelBubble||_===t||_===null)break;s=_}if(g){for(let D of b)queueMicrotask(()=>{throw D});throw g}}finally{e[Nt]=t,delete e.currentTarget,qe(v),it(h)}}}var Kn;const Gr=((Kn=globalThis==null?void 0:globalThis.window)==null?void 0:Kn.trustedTypes)&&globalThis.window.trustedTypes.createPolicy("svelte-trusted-html",{createHTML:e=>e});function ca(e){return(Gr==null?void 0:Gr.createHTML(e))??e}function va(e){var t=ys("template");return t.innerHTML=ca(e.replaceAll("<!>","<!---->")),t.content}function yr(e,t){var r=G;r.nodes===null&&(r.nodes={start:e,end:t,a:null,t:null})}function P(e,t){var r=(t&ki)!==0,n=(t&Ei)!==0,i,s=!e.startsWith("<!>");return()=>{i===void 0&&(i=va(s?e:"<!>"+e),r||(i=qt(i)));var l=n||_s?document.importNode(i,!0):i.cloneNode(!0);if(r){var f=qt(l),o=l.lastChild;yr(f,o)}else yr(l,l);return l}}function Mn(e=""){{var t=_t(e+"");return yr(t,t),t}}function da(){var e=document.createDocumentFragment(),t=document.createComment(""),r=_t();return e.append(t,r),yr(t,r),e}function x(e,t){e!==null&&e.before(t)}function B(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 ha(e,t){return _a(e,t)}const Ar=new Map;function _a(e,{target:t,anchor:r,props:n={},events:i,context:s,intro:l=!0,transformError:f}){Xi();var o=void 0,u=ra(()=>{var v=r??t.appendChild(_t());Li(v,{pending:()=>{}},b=>{We({});var _=Fe;s&&(_.c=s),i&&(n.$$events=i),o=e(b,n)||{},Qe()},f);var h=new Set,g=b=>{for(var _=0;_<b.length;_++){var E=b[_];if(!h.has(E)){h.add(E);var c=fa(E);for(const N of[t,document]){var y=Ar.get(N);y===void 0&&(y=new Map,Ar.set(N,y));var D=y.get(E);D===void 0?(N.addEventListener(E,on,{passive:c}),y.set(E,1)):y.set(E,D+1)}}}};return g(Fr(Ls)),ln.add(g),()=>{var c;for(var b of h)for(const y of[t,document]){var _=Ar.get(y),E=_.get(b);--E==0?(y.removeEventListener(b,on),_.delete(b),_.size===0&&Ar.delete(y)):_.set(b,E)}ln.delete(g),v!==r&&((c=v.parentNode)==null||c.removeChild(v))}});return ga.set(o,u),o}let ga=new WeakMap;var Ue,rt,xe,Rt,Er,Tr,Rr;class pa{constructor(t,r=!0){$e(this,"anchor");K(this,Ue,new Map);K(this,rt,new Map);K(this,xe,new Map);K(this,Rt,new Set);K(this,Er,!0);K(this,Tr,()=>{var t=L;if(d(this,Ue).has(t)){var r=d(this,Ue).get(t),n=d(this,rt).get(r);if(n)kn(n),d(this,Rt).delete(r);else{var i=d(this,xe).get(r);i&&(d(this,rt).set(r,i.effect),d(this,xe).delete(r),i.fragment.lastChild.remove(),this.anchor.before(i.fragment),n=i.effect)}for(const[s,l]of d(this,Ue)){if(d(this,Ue).delete(s),s===t)break;const f=d(this,xe).get(l);f&&(we(f.effect),d(this,xe).delete(l))}for(const[s,l]of d(this,rt)){if(s===r||d(this,Rt).has(s))continue;const f=()=>{if(Array.from(d(this,Ue).values()).includes(s)){var u=document.createDocumentFragment();js(l,u),u.append(_t()),d(this,xe).set(s,{effect:l,fragment:u})}else we(l);d(this,Rt).delete(s),d(this,rt).delete(s)};d(this,Er)||!n?(d(this,Rt).add(s),Bt(l,f,!1)):f()}}});K(this,Rr,t=>{d(this,Ue).delete(t);const r=Array.from(d(this,Ue).values());for(const[n,i]of d(this,xe))r.includes(n)||(we(i.effect),d(this,xe).delete(n))});this.anchor=t,F(this,Er,r)}ensure(t,r){var n=L,i=ms();if(r&&!d(this,rt).has(t)&&!d(this,xe).has(t))if(i){var s=document.createDocumentFragment(),l=_t();s.append(l),d(this,xe).set(t,{effect:Oe(()=>r(l)),fragment:s})}else d(this,rt).set(t,Oe(()=>r(this.anchor)));if(d(this,Ue).set(n,t),i){for(const[f,o]of d(this,rt))f===t?n.unskip_effect(o):n.skip_effect(o);for(const[f,o]of d(this,xe))f===t?n.unskip_effect(o.effect):n.skip_effect(o.effect);n.oncommit(d(this,Tr)),n.ondiscard(d(this,Rr))}else d(this,Tr).call(this)}}Ue=new WeakMap,rt=new WeakMap,xe=new WeakMap,Rt=new WeakMap,Er=new WeakMap,Tr=new WeakMap,Rr=new WeakMap;function U(e,t,r=!1){var n=new pa(e),i=r?sr:0;function s(l,f){n.ensure(l,f)}bn(()=>{var l=!1;t((f,o=0)=>{l=!0,s(o,f)}),l||s(!1,null)},i)}function br(e,t){return t}function ma(e,t,r){for(var n=[],i=t.length,s,l=t.length,f=0;f<i;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;fn(Fr(s.done)),g.delete(s),g.size===0&&(e.outrogroups=null)}}else l-=1},!1)}if(l===0){var o=n.length===0&&r!==null;if(o){var u=r,v=u.parentNode;Zi(v),v.append(u),e.items.clear()}fn(t,!o)}else s={pending:new Set(t),done:new Set},(e.outrogroups??(e.outrogroups=new Set)).add(s)}function fn(e,t=!0){for(var r=0;r<e.length;r++)we(e[r],t)}var Ln;function Ie(e,t,r,n,i,s=null){var l=e,f=new Map,o=(t&Qn)!==0;if(o){var u=e;l=u.appendChild(_t())}var v=null,h=us(()=>{var y=r();return vn(y)?y:y==null?[]:Fr(y)}),g,b=!0;function _(){c.fallback=v,ya(c,g,l,t,n),v!==null&&(g.length===0?(v.f&dt)===0?kn(v):(v.f^=dt,dr(v,null,l)):Bt(v,()=>{v=null}))}var E=bn(()=>{g=a(h);for(var y=g.length,D=new Set,N=L,q=ms(),w=0;w<y;w+=1){var C=g[w],A=n(C,w),I=b?null:f.get(A);I?(I.v&&ar(I.v,C),I.i&&ar(I.i,w),q&&N.unskip_effect(I.e)):(I=ba(f,b?l:Ln??(Ln=_t()),C,A,w,i,t,r),b||(I.e.f|=dt),f.set(A,I)),D.add(A)}if(y===0&&s&&!v&&(b?v=Oe(()=>s(l)):(v=Oe(()=>s(Ln??(Ln=_t()))),v.f|=dt)),y>D.size&&si(),!b)if(q){for(const[J,ee]of f)D.has(J)||N.skip_effect(ee.e);N.oncommit(_),N.ondiscard(()=>{})}else _();a(h)}),c={effect:E,items:f,outrogroups:null,fallback:v};b=!1}function vr(e){for(;e!==null&&(e.f&Je)===0;)e=e.next;return e}function ya(e,t,r,n,i){var ee,he,M,X,H,Z,le,Ee,Pe;var s=(n&gi)!==0,l=t.length,f=e.items,o=vr(e.effect.first),u,v=null,h,g=[],b=[],_,E,c,y;if(s)for(y=0;y<l;y+=1)_=t[y],E=i(_,y),c=f.get(E).e,(c.f&dt)===0&&((he=(ee=c.nodes)==null?void 0:ee.a)==null||he.measure(),(h??(h=new Set)).add(c));for(y=0;y<l;y+=1){if(_=t[y],E=i(_,y),c=f.get(E).e,e.outrogroups!==null)for(const Y of e.outrogroups)Y.pending.delete(c),Y.done.delete(c);if((c.f&dt)!==0)if(c.f^=dt,c===o)dr(c,null,r);else{var D=v?v.next:o;c===e.effect.last&&(e.effect.last=c.prev),c.prev&&(c.prev.next=c.next),c.next&&(c.next.prev=c.prev),wt(e,v,c),wt(e,c,D),dr(c,D,r),v=c,g=[],b=[],o=vr(v.next);continue}if((c.f&Ce)!==0&&(kn(c),s&&((X=(M=c.nodes)==null?void 0:M.a)==null||X.unfix(),(h??(h=new Set)).delete(c))),c!==o){if(u!==void 0&&u.has(c)){if(g.length<b.length){var N=b[0],q;v=N.prev;var w=g[0],C=g[g.length-1];for(q=0;q<g.length;q+=1)dr(g[q],N,r);for(q=0;q<b.length;q+=1)u.delete(b[q]);wt(e,w.prev,C.next),wt(e,v,w),wt(e,C,N),o=N,v=C,y-=1,g=[],b=[]}else u.delete(c),dr(c,o,r),wt(e,c.prev,c.next),wt(e,c,v===null?e.effect.first:v.next),wt(e,v,c),v=c;continue}for(g=[],b=[];o!==null&&o!==c;)(u??(u=new Set)).add(o),b.push(o),o=vr(o.next);if(o===null)continue}(c.f&dt)===0&&g.push(c),v=c,o=vr(c.next)}if(e.outrogroups!==null){for(const Y of e.outrogroups)Y.pending.size===0&&(fn(Fr(Y.done)),(H=e.outrogroups)==null||H.delete(Y));e.outrogroups.size===0&&(e.outrogroups=null)}if(o!==null||u!==void 0){var A=[];if(u!==void 0)for(c of u)(c.f&Ce)===0&&A.push(c);for(;o!==null;)(o.f&Ce)===0&&o!==e.fallback&&A.push(o),o=vr(o.next);var I=A.length;if(I>0){var J=(n&Qn)!==0&&l===0?r:null;if(s){for(y=0;y<I;y+=1)(le=(Z=A[y].nodes)==null?void 0:Z.a)==null||le.measure();for(y=0;y<I;y+=1)(Pe=(Ee=A[y].nodes)==null?void 0:Ee.a)==null||Pe.fix()}ma(e,A,J)}}s&&nt(()=>{var Y,re;if(h!==void 0)for(c of h)(re=(Y=c.nodes)==null?void 0:Y.a)==null||re.apply()})}function ba(e,t,r,n,i,s,l,f){var o=(l&hi)!==0?(l&pi)===0?Ji(r,!1,!1):Vt(r):null,u=(l&_i)!==0?Vt(i):null;return{v:o,i:u,e:Oe(()=>(s(t,o??r,u??i,f),()=>{e.delete(n)}))}}function dr(e,t,r){if(e.nodes)for(var n=e.nodes.start,i=e.nodes.end,s=t&&(t.f&dt)===0?t.nodes.start:r;n!==null;){var l=xr(n);if(s.before(n),n===i)return;n=l}}function wt(e,t,r){t===null?e.effect.first=r:t.next=r,r===null?e.effect.last=t:r.prev=t}function wa(e,t,r=!1,n=!1,i=!1){var s=e,l="";V(()=>{var f=G;if(l!==(l=t()??"")&&(f.nodes!==null&&(Ts(f.nodes.start,f.nodes.end),f.nodes=null),l!=="")){var o=r?Ti:n?Si:void 0,u=ys(r?"svg":n?"math":"template",o);u.innerHTML=l;var v=r||n?u:u.content;if(yr(qt(v),v.lastChild),r||n)for(;qt(v);)s.before(qt(v));else s.before(v)}})}const Rn=[...`
2
+ \r\f \v\uFEFF`];function ka(e,t,r){var n=e==null?"":""+e;if(t&&(n=n?n+" "+t:t),r){for(var i of Object.keys(r))if(r[i])n=n?n+" "+i:i;else if(n.length)for(var s=i.length,l=0;(l=n.indexOf(i,l))>=0;){var f=l+s;(l===0||Rn.includes(n[l-1]))&&(f===n.length||Rn.includes(n[f]))?n=(l===0?"":n.substring(0,l))+n.substring(f+1):l=f}}return n===""?null:n}function Ea(e,t){return e==null?null:String(e)}function st(e,t,r,n,i,s){var l=e.__className;if(l!==r||l===void 0){var f=ka(r,n,s);f==null?e.removeAttribute("class"):e.className=f,e.__className=r}else if(s&&i!==s)for(var o in s){var u=!!s[o];(i==null||u!==!!i[o])&&e.classList.toggle(o,u)}return s}function Rs(e,t,r,n){var i=e.__style;if(i!==t){var s=Ea(t);s==null?e.removeAttribute("style"):e.style.cssText=s,e.__style=t}return n}function Fs(e,t,r=!1){if(e.multiple){if(t==null)return;if(!vn(t))return xi();for(var n of e.options)n.selected=t.includes(gr(n));return}for(n of e.options){var i=gr(n);if(Qi(i,t)){n.selected=!0;return}}(!r||t!==void 0)&&(e.selectedIndex=-1)}function Ta(e){var t=new MutationObserver(()=>{Fs(e,e.__value)});t.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),mn(()=>{t.disconnect()})}function Fn(e,t,r=t){var n=new WeakSet,i=!0;bs(e,"change",s=>{var l=s?"[selected]":":checked",f;if(e.multiple)f=[].map.call(e.querySelectorAll(l),gr);else{var o=e.querySelector(l)??e.querySelector("option:not([disabled])");f=o&&gr(o)}r(f),L!==null&&n.add(L)}),ks(()=>{var s=t();if(e===document.activeElement){var l=Mr??L;if(n.has(l))return}if(Fs(e,s,i),i&&s===void 0){var f=e.querySelector(":checked");f!==null&&(s=gr(f),r(s))}e.__value=s,i=!1}),Ta(e)}function gr(e){return"__value"in e?e.__value:e.value}const Sa=Symbol("is custom element"),xa=Symbol("is html"),Ca=ri?"progress":"PROGRESS";function ja(e,t){var r=qs(e);r.value===(r.value=t??void 0)||e.value===t&&(t!==0||e.nodeName!==Ca)||(e.value=t??"")}function qn(e,t,r,n){var i=qs(e);i[t]!==(i[t]=r)&&(r==null?e.removeAttribute(t):typeof r!="string"&&Pa(e).includes(t)?e[t]=r:e.setAttribute(t,r))}function qs(e){return e.__attributes??(e.__attributes={[Sa]:e.nodeName.includes("-"),[xa]:e.namespaceURI===Xn})}var zn=new Map;function Pa(e){var t=e.getAttribute("is")||e.nodeName,r=zn.get(t);if(r)return r;zn.set(t,r=[]);for(var n,i=e,s=Element.prototype;s!==i;){n=Qs(i);for(var l in n)n[l].set&&r.push(l);i=Vn(i)}return r}function pr(e,t,r=t){var n=new WeakSet;bs(e,"input",async i=>{var s=i?e.defaultValue:e.value;if(s=Yr(e)?Jr(s):s,r(s),L!==null&&n.add(L),await la(),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))}}}),Kr(t)==null&&e.value&&(r(Yr(e)?Jr(e.value):e.value),L!==null&&n.add(L)),yn(()=>{var i=t();if(e===document.activeElement){var s=Mr??L;if(n.has(s))return}Yr(e)&&i===Jr(e.value)||e.type==="date"&&!i&&!e.value||i!==e.value&&(e.value=i??"")})}function Yr(e){var t=e.type;return t==="number"||t==="range"}function Jr(e){return e===""?null:+e}function Bn(e,t){return e===t||(e==null?void 0:e[Ft])===t}function un(e={},t,r,n){return ks(()=>{var i,s;return yn(()=>{i=s,s=[],Kr(()=>{e!==r(...s)&&(t(e,...s),i&&Bn(r(...i),e)&&t(null,...i))})}),()=>{nt(()=>{s&&Bn(r(...s),e)&&t(null,...s)})}}),e}let Dr=!1;function Aa(e){var t=Dr;try{return Dr=!1,[e(),Dr]}finally{Dr=t}}function jr(e,t,r,n){var D;var i=(r&bi)!==0,s=(r&wi)!==0,l=n,f=!0,o=()=>(f&&(f=!1,l=s?Kr(n):n),l),u;if(i){var v=Ft in e||ti in e;u=((D=Wt(e,t))==null?void 0:D.set)??(v&&t in e?N=>e[t]=N:void 0)}var h,g=!1;i?[h,g]=Aa(()=>e[t]):h=e[t],h===void 0&&n!==void 0&&(h=o(),u&&(fi(),u(h)));var b;if(b=()=>{var N=e[t];return N===void 0?o():(f=!0,N)},(r&yi)===0)return b;if(u){var _=e.$$legacy;return(function(N,q){return arguments.length>0?((!q||_||g)&&u(q?b():N),N):b()})}var E=!1,c=((r&mi)!==0?Br:us)(()=>(E=!1,b()));i&&a(c);var y=G;return(function(N,q){if(arguments.length>0){const w=q?a(c):i?Me(N):N;return m(c,w),E=!0,l!==void 0&&(l=w),N}return jt&&E||(y.f&ht)!==0?c.v:a(c)})}const Da="5";var Un;typeof window<"u"&&((Un=window.__svelte??(window.__svelte={})).v??(Un.v=new Set)).add(Da);async function ot(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 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 Na=P('<input class="rename-input svelte-1kanzy0" type="text"/>'),Oa=P('<span class="project-slug svelte-1kanzy0"> </span>'),Ia=P('<span class="project-name svelte-1kanzy0"> </span> <!> <button class="rename-btn svelte-1kanzy0" title="Rename project">✎</button>',1),Ma=P('<div class="project-area svelte-1kanzy0"><!></div>'),La=P('<header class="toolbar svelte-1kanzy0"><!></header>');function Ra(e,t){We(t,!0);let r=O(!1),n=O("");const i=se(()=>projects.find(h=>h.id===t.selectedId));function s(){a(i)&&(m(n,a(i).name,!0),m(r,!0))}function l(){if(!a(i)||!a(r))return;const h=a(n).trim();h&&h!==a(i).name&&t.onRenamed(a(i).id,h),m(r,!1)}function f(h){h.key==="Enter"&&l(),h.key==="Escape"&&m(r,!1)}var o=La(),u=k(o);{var v=h=>{var g=Ma(),b=k(g);{var _=c=>{var y=Na();gn(y),ke("blur",y,l),Q("keydown",y,f),pr(y,()=>a(n),D=>m(n,D)),x(c,y)},E=c=>{var y=Ia(),D=zt(y),N=k(D),q=T(D,2);{var w=A=>{var I=Oa(),J=k(I);V(()=>B(J,`[${a(i).slug??""}]`)),x(A,I)};U(q,A=>{a(i).slug&&A(w)})}var C=T(q,2);V(()=>B(N,a(i).name)),Q("click",C,s),x(c,y)};U(b,c=>{a(r)?c(_):c(E,!1)})}x(h,g)};U(u,h=>{a(i)&&h(v)})}x(e,o),Qe()}mt(["keydown","click"]);var Fa=P('<span class="brand svelte-rig7vt"><span class="prompt svelte-rig7vt">&gt;</span> mindpm</span>'),qa=P('<span class="task-count svelte-rig7vt"> </span>'),za=P('<span class="project-name svelte-rig7vt"> </span> <!>',1),Ba=P('<span class="task-count-collapsed svelte-rig7vt"> </span>'),Ha=P('<button><span class="status-dot svelte-rig7vt"></span> <!></button>'),Ka=P('<div class="sidebar-footer svelte-rig7vt"><span class="footer-hint svelte-rig7vt"> </span></div>'),Ua=P('<aside><div class="sidebar-header svelte-rig7vt"><!> <button class="collapse-btn svelte-rig7vt"> </button></div> <nav class="project-list svelte-rig7vt"></nav> <!></aside>');function Va(e,t){We(t,!0);const r="mindpm_sidebar_collapsed";let n=O(localStorage.getItem(r)==="true");function i(){m(n,!a(n)),localStorage.setItem(r,String(a(n)))}const s={active:"var(--primary)",paused:"#d29922",completed:"var(--text-muted)",archived:"var(--border-bright)"};var l=Ua();let f;var o=k(l),u=k(o);{var v=c=>{var y=Fa();x(c,y)};U(u,c=>{a(n)||c(v)})}var h=T(u,2),g=k(h),b=T(o,2);Ie(b,21,()=>t.projects,c=>c.id,(c,y)=>{var D=Ha();let N;var q=k(D),w=T(q,2);{var C=I=>{var J=za(),ee=zt(J),he=k(ee),M=T(ee,2);{var X=H=>{var Z=qa(),le=k(Z);V(()=>B(le,a(y).active_task_count)),x(H,Z)};U(M,H=>{(a(y).active_task_count??0)>0&&H(X)})}V(()=>B(he,a(y).name)),x(I,J)},A=I=>{var J=Ba(),ee=k(J);V(()=>B(ee,a(y).active_task_count)),x(I,J)};U(w,I=>{a(n)?(a(y).active_task_count??0)>0&&I(A,1):I(C)})}V(()=>{N=st(D,1,"project-item svelte-rig7vt",null,N,{active:a(y).id===t.selectedId}),qn(D,"title",a(n)?a(y).name:void 0),Rs(q,`background: ${s[a(y).status]??"var(--text-muted)"??""}`)}),Q("click",D,()=>t.onSelect(a(y).id)),x(c,D)});var _=T(b,2);{var E=c=>{var y=Ka(),D=k(y),N=k(D);V(()=>B(N,`// ${t.projects.length??""} project${t.projects.length!==1?"s":""}`)),x(c,y)};U(_,c=>{a(n)||c(E)})}V(()=>{f=st(l,1,"sidebar svelte-rig7vt",null,f,{collapsed:a(n)}),qn(h,"title",a(n)?"Expand sidebar":"Collapse sidebar"),B(g,a(n)?"»":"«")}),Q("click",h,i),x(e,l),Qe()}mt(["click"]);const Ga=[{status:"todo",label:"Todo"},{status:"in_progress",label:"In Progress"},{status:"blocked",label:"Blocked"},{status:"done",label:"Done"},{status:"cancelled",label:"Cancelled"}],zs=["critical","high","medium","low"];var Ya=P('<span class="task-id svelte-35ep21"> </span>'),Ja=P('<div class="card-desc svelte-35ep21"> </div>'),Wa=P('<span class="tag svelte-35ep21"> </span>'),Qa=P('<div class="card-tags svelte-35ep21"></div>'),Xa=P('<span class="badge badge-blocked svelte-35ep21">⊘ blocked</span>'),Za=P('<span class="badge badge-subtasks svelte-35ep21"> </span>'),$a=P('<div class="card-footer svelte-35ep21"><!> <!></div>'),el=P('<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">&times;</button></div></div> <div class="card-title svelte-35ep21"> </div> <!> <!> <!></div>');function tl(e,t){We(t,!0);let r=jr(t,"subtaskCount",3,0),n=O(!1);function i(M){if(!M)return[];try{return JSON.parse(M)}catch{return[]}}const s=se(()=>i(t.task.tags)),l=se(()=>`priority-${t.task.priority}`),f=se(()=>()=>{if(!t.task.blocked_by)return!1;try{const M=JSON.parse(t.task.blocked_by);return Array.isArray(M)&&M.length>0}catch{return!1}});function o(M){m(n,!0),t.onDragStart(M,t.task)}function u(){m(n,!1)}var v=el();let h;var g=k(v),b=k(g),_=k(b),E=T(b,2),c=k(E);{var y=M=>{var X=Ya(),H=k(X);V(()=>B(H,t.task.short_id)),x(M,X)};U(c,M=>{t.task.short_id&&M(y)})}var D=T(c,2),N=T(g,2),q=k(N),w=T(N,2);{var C=M=>{var X=Ja(),H=k(X);V(()=>B(H,t.task.description)),x(M,X)};U(w,M=>{t.task.description&&M(C)})}var A=T(w,2);{var I=M=>{var X=Qa();Ie(X,21,()=>a(s),br,(H,Z)=>{var le=Wa(),Ee=k(le);V(()=>B(Ee,a(Z))),x(H,le)}),x(M,X)};U(A,M=>{a(s).length>0&&M(I)})}var J=T(A,2);{var ee=M=>{var X=$a(),H=k(X);{var Z=Y=>{var re=Xa();x(Y,re)},le=se(()=>a(f)());U(H,Y=>{a(le)&&Y(Z)})}var Ee=T(H,2);{var Pe=Y=>{var re=Za(),Ae=k(re);V(()=>B(Ae,`⑂ ${r()??""}`)),x(Y,re)};U(Ee,Y=>{r()>0&&Y(Pe)})}x(M,X)},he=se(()=>a(f)()||r()>0);U(J,M=>{a(he)&&M(ee)})}V(()=>{h=st(v,1,`card ${a(l)??""}`,"svelte-35ep21",h,{dragging:a(n)}),st(b,1,`priority-badge ${a(l)??""}`,"svelte-35ep21"),B(_,t.task.priority),B(q,t.task.title)}),ke("dragstart",v,o),ke("dragend",v,u),Q("click",v,()=>t.onEdit(t.task)),Q("keydown",v,M=>{M.key==="Enter"&&t.onEdit(t.task)}),Q("click",D,M=>{M.stopPropagation(),t.onDelete(t.task)}),x(e,v),Qe()}mt(["click","keydown"]);var rl=P('<button class="add-btn svelte-zswfgn" title="Add task">+</button>'),nl=P('<div role="list"><div class="column-header svelte-zswfgn"><h3 class="svelte-zswfgn"><span class="chevron svelte-zswfgn">▸</span> <span class="count svelte-zswfgn"> </span></h3> <!></div> <div class="card-list svelte-zswfgn"></div></div>');function sl(e,t){We(t,!0);let r=O(!1);function n(c){c.preventDefault(),c.dataTransfer&&(c.dataTransfer.dropEffect="move"),m(r,!0)}function i(){m(r,!1)}function s(c){c.preventDefault(),m(r,!1),t.onDrop(t.status)}var l=nl();let f;var o=k(l),u=k(o),v=T(k(u)),h=T(v),g=k(h),b=T(u,2);{var _=c=>{var y=rl();Q("click",y,()=>t.onAddTask(t.status)),x(c,y)};U(b,c=>{t.status==="todo"&&c(_)})}var E=T(o,2);Ie(E,21,()=>t.tasks,c=>c.id,(c,y)=>{{let D=se(()=>t.subtaskCounts.get(a(y).id)??0);tl(c,{get task(){return a(y)},get subtaskCount(){return a(D)},get onEdit(){return t.onEdit},get onDelete(){return t.onDelete},get onDragStart(){return t.onDragStart}})}}),V(()=>{f=st(l,1,"column svelte-zswfgn",null,f,{"drag-over":a(r)}),B(v,` ${t.label??""} `),B(g,`[${t.tasks.length??""}]`)}),ke("dragover",l,n),ke("dragleave",l,i),ke("drop",l,s),x(e,l),Qe()}mt(["click"]);var il=P('<div class="decision-reasoning svelte-1gmf2hi"> </div>'),al=P('<div class="decision-alts svelte-1gmf2hi"> </div>'),ll=P('<div class="decision-item svelte-1gmf2hi"><div class="decision-title svelte-1gmf2hi"> </div> <div class="decision-body svelte-1gmf2hi"> </div> <!> <!></div>'),ol=P('<span class="modal-task-id svelte-1gmf2hi"> </span>'),fl=P("<option> </option>"),ul=P('<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>'),cl=P('<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>'),vl=P('<div class="history-section svelte-1gmf2hi"><h3 class="history-heading svelte-1gmf2hi">History</h3> <div class="history-list svelte-1gmf2hi"></div></div>'),dl=P('<h3 class="decisions-heading svelte-1gmf2hi">Task Decisions</h3> <div class="decisions-list svelte-1gmf2hi"></div>',1),hl=P('<h3>Project Decisions</h3> <div class="decisions-list svelte-1gmf2hi"></div>',1),_l=P('<div class="decisions-section svelte-1gmf2hi"><!> <!></div>'),gl=P('<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">&times;</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 pl(e,t){We(t,!0);const r=(S,R=Gn)=>{var $=ll(),ie=k($),_e=k(ie),ze=T(ie,2),ge=k(ze),pe=T(ze,2);{var Xe=Be=>{var lt=il(),cr=k(lt);V(()=>B(cr,R().reasoning)),x(Be,lt)};U(pe,Be=>{R().reasoning&&Be(Xe)})}var Ze=T(pe,2);Ie(Ze,17,()=>E(R().alternatives),br,(Be,lt,cr)=>{var Tn=da(),Hs=zt(Tn);{var Ks=Ur=>{var Sn=al(),Us=k(Sn);V(Vs=>B(Us,`Alternatives: ${Vs??""}`),[()=>E(R().alternatives).join(", ")]),x(Ur,Sn)};U(Hs,Ur=>{cr===0&&Ur(Ks)})}x(Be,Tn)}),V(()=>{B(_e,R().title),B(ge,R().decision)}),x(S,$)};let n=jr(t,"defaultStatus",3,"todo"),i=O(""),s=O(""),l=O("medium"),f=O("todo"),o=O(""),u=O(Me([])),v=O(Me([]));Gt(()=>{var S,R,$,ie,_e;if(m(i,((S=t.task)==null?void 0:S.title)??"",!0),m(s,((R=t.task)==null?void 0:R.description)??"",!0),m(l,(($=t.task)==null?void 0:$.priority)??"medium",!0),m(f,((ie=t.task)==null?void 0:ie.status)??n(),!0),(_e=t.task)!=null&&_e.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(S=>{m(u,S,!0)}).catch(()=>{m(u,[],!0)}),vt.getTaskHistory(t.task.id).then(S=>{m(v,S,!0)}).catch(()=>{m(v,[],!0)})):(m(u,[],!0),m(v,[],!0))});const h=se(()=>t.task!==null),g=se(()=>a(u).filter(S=>{var R;return S.task_id===((R=t.task)==null?void 0:R.id)})),b=se(()=>a(u).filter(S=>S.task_id===null));function _(S){switch(S.event){case"created":return"<b>created</b>";case"status_changed":return`status <b>${S.old_value}</b> → <b>${S.new_value}</b>`;case"priority_changed":return`priority <b>${S.old_value}</b> → <b>${S.new_value}</b>`;case"title_changed":return"title renamed";default:return S.event.replace(/_/g," ")}}function E(S){if(!S)return[];try{return JSON.parse(S)}catch{return[]}}function c(S){return new Date(S.replace(" ","T")+"Z").toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function y(S){S.preventDefault();const R=a(i).trim();if(!R)return;const $=a(o).split(",").map(ie=>ie.trim()).filter(Boolean);t.onSave({title:R,description:a(s).trim(),priority:a(l),...a(h)?{status:a(f)}:{},tags:$})}function D(S){S.target.classList.contains("modal-backdrop")&&t.onClose()}function N(S){S.key==="Escape"&&t.onClose()}var q=gl();ke("keydown",Ct,N);var w=k(q),C=k(w),A=k(C),I=k(A),J=k(I),ee=T(I,2);{var he=S=>{var R=ol(),$=k(R);V(()=>B($,t.task.short_id)),x(S,R)};U(ee,S=>{var R;(R=t.task)!=null&&R.short_id&&S(he)})}var M=T(A,2),X=T(C,2),H=k(X),Z=T(k(H),2);gn(Z);var le=T(H,2),Ee=T(k(le),2),Pe=T(le,2),Y=k(Pe),re=T(k(Y),2);Ie(re,21,()=>zs,br,(S,R)=>{var $=fl(),ie=k($),_e={};V(()=>{B(ie,a(R)),_e!==(_e=a(R))&&($.value=($.__value=a(R))??"")}),x(S,$)});var Ae=T(Y,2);{var yt=S=>{var R=ul(),$=T(k(R),2),ie=k($);ie.value=ie.__value="todo";var _e=T(ie);_e.value=_e.__value="in_progress";var ze=T(_e);ze.value=ze.__value="blocked";var ge=T(ze);ge.value=ge.__value="done";var pe=T(ge);pe.value=pe.__value="cancelled",Fn($,()=>a(f),Xe=>m(f,Xe)),x(S,R)};U(Ae,S=>{a(h)&&S(yt)})}var bt=T(Pe,2),fr=T(k(bt),2),ur=T(bt,2),Jt=k(ur),p=T(Jt,2),j=k(p),W=T(X,2);{var ne=S=>{var R=vl(),$=T(k(R),2);Ie($,21,()=>a(v),ie=>ie.id,(ie,_e)=>{var ze=cl(),ge=T(k(ze),2),pe=k(ge),Xe=k(pe);wa(Xe,()=>_(a(_e)));var Ze=T(pe,2),Be=k(Ze);V(lt=>B(Be,lt),[()=>c(a(_e).created_at)]),x(ie,ze)}),x(S,R)};U(W,S=>{a(h)&&a(v).length>0&&S(ne)})}var at=T(W,2);{var Bs=S=>{var R=_l(),$=k(R);{var ie=ge=>{var pe=dl(),Xe=T(zt(pe),2);Ie(Xe,21,()=>a(g),Ze=>Ze.id,(Ze,Be)=>{r(Ze,()=>a(Be))}),x(ge,pe)};U($,ge=>{a(g).length>0&&ge(ie)})}var _e=T($,2);{var ze=ge=>{var pe=hl(),Xe=zt(pe);let Ze;var Be=T(Xe,2);Ie(Be,21,()=>a(b),lt=>lt.id,(lt,cr)=>{r(lt,()=>a(cr))}),V(()=>Ze=st(Xe,1,"decisions-heading svelte-1gmf2hi",null,Ze,{spaced:a(g).length>0})),x(ge,pe)};U(_e,ge=>{a(b).length>0&&ge(ze)})}x(S,R)};U(at,S=>{a(h)&&(a(g).length>0||a(b).length>0)&&S(Bs)})}V(()=>{B(J,a(h)?"Edit Task":"New Task"),B(j,a(h)?"Save":"Create")}),Q("click",q,D),Q("click",M,function(...S){var R;(R=t.onClose)==null||R.apply(this,S)}),ke("submit",X,y),pr(Z,()=>a(i),S=>m(i,S)),pr(Ee,()=>a(s),S=>m(s,S)),Fn(re,()=>a(l),S=>m(l,S)),pr(fr,()=>a(o),S=>m(o,S)),Q("click",Jt,function(...S){var R;(R=t.onClose)==null||R.apply(this,S)}),x(e,q),Qe()}mt(["click"]);var ml=P('<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 yl(e,t){We(t,!0);let r=jr(t,"confirmLabel",3,"Delete");function n(E){E.target.classList.contains("modal-backdrop")&&t.onCancel()}function i(E){E.key==="Escape"&&t.onCancel()}var s=ml();ke("keydown",Ct,i);var l=k(s),f=k(l),o=k(f),u=T(f,2),v=k(u),h=T(u,2),g=k(h),b=T(g,2),_=k(b);V(()=>{B(o,t.title),B(v,t.message),B(_,r())}),Q("click",s,n),Q("click",g,function(...E){var c;(c=t.onCancel)==null||c.apply(this,E)}),Q("click",b,function(...E){var c;(c=t.onConfirm)==null||c.apply(this,E)}),x(e,s),Qe()}mt(["click"]);var bl=P('<button class="clear-input svelte-dhotvj">&times;</button>'),wl=P("<button> </button>"),kl=P('<button><span class="tag-checkbox svelte-dhotvj"> </span> <span class="tag-name svelte-dhotvj"> </span></button>'),El=P('<button class="tag-clear svelte-dhotvj">clear tags</button>'),Tl=P('<div class="tag-dropdown svelte-dhotvj"><!> <!></div>'),Sl=P('<div class="filter-section tag-dropdown-wrapper svelte-dhotvj"><span class="filter-label svelte-dhotvj">tags:</span> <button><!></button> <!></div>'),xl=P('<button class="clear-all svelte-dhotvj"> </button>'),Cl=P('<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 jl(e,t){We(t,!0);let r=jr(t,"focusSearch",15,null),n=O(null),i=O(!1),s=O(null);Gt(()=>{r(()=>{var w;return(w=a(n))==null?void 0:w.focus()})});const l=se(()=>(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(w){w.key==="Escape"&&m(i,!1)}function u(w){a(s)&&!a(s).contains(w.target)&&m(i,!1)}var v=Cl();ke("click",Ct,u),ke("keydown",Ct,o);var h=k(v),g=T(k(h),2);un(g,w=>m(n,w),()=>a(n));var b=T(g,2);{var _=w=>{var C=bl();Q("click",C,()=>t.onSearchChange("")),x(w,C)};U(b,w=>{t.searchQuery&&w(_)})}var E=T(h,2),c=T(k(E),2);Ie(c,21,()=>zs,br,(w,C)=>{var A=wl();let I;var J=k(A);V(ee=>{I=st(A,1,"chip svelte-dhotvj",null,I,ee),Rs(A,`--chip-color: ${f[a(C)]??""}`),B(J,a(C))},[()=>({active:t.selectedPriorities.has(a(C))})]),Q("click",A,()=>t.onPriorityToggle(a(C))),x(w,A)});var y=T(E,2);{var D=w=>{var C=Sl(),A=T(k(C),2);let I;var J=k(A);{var ee=H=>{var Z=Mn();V(()=>B(Z,`[${t.selectedTags.size??""}] ▾`)),x(H,Z)},he=H=>{var Z=Mn("all ▾");x(H,Z)};U(J,H=>{t.selectedTags.size>0?H(ee):H(he,!1)})}var M=T(A,2);{var X=H=>{var Z=Tl(),le=k(Z);Ie(le,17,()=>t.allTags,br,(Y,re)=>{var Ae=kl();let yt;var bt=k(Ae),fr=k(bt),ur=T(bt,2),Jt=k(ur);V((p,j)=>{yt=st(Ae,1,"tag-option svelte-dhotvj",null,yt,p),B(fr,j),B(Jt,`#${a(re)??""}`)},[()=>({selected:t.selectedTags.has(a(re))}),()=>t.selectedTags.has(a(re))?"✓":" "]),Q("click",Ae,p=>{p.stopPropagation(),t.onTagToggle(a(re))}),x(Y,Ae)});var Ee=T(le,2);{var Pe=Y=>{var re=El();Q("click",re,Ae=>{Ae.stopPropagation(),t.selectedTags.forEach(yt=>t.onTagToggle(yt))}),x(Y,re)};U(Ee,Y=>{t.selectedTags.size>0&&Y(Pe)})}x(H,Z)};U(M,H=>{a(i)&&H(X)})}un(C,H=>m(s,H),()=>a(s)),V(()=>I=st(A,1,"dropdown-trigger svelte-dhotvj",null,I,{active:t.selectedTags.size>0})),Q("click",A,H=>{H.stopPropagation(),m(i,!a(i))}),x(w,C)};U(y,w=>{t.allTags.length>0&&w(D)})}var N=T(y,2);{var q=w=>{var C=xl(),A=k(C);V(()=>B(A,`clear [${a(l)??""}]`)),Q("click",C,function(...I){var J;(J=t.onClear)==null||J.apply(this,I)}),x(w,C)};U(N,w=>{a(l)>0&&w(q)})}V(()=>ja(g,t.searchQuery)),Q("input",g,w=>t.onSearchChange(w.target.value)),x(e,v),Qe()}mt(["input","click"]);var Pl=P('<div class="board-message svelte-x7v2jt">Loading tasks...</div>'),Al=P('<div class="board-message error svelte-x7v2jt"> <button class="svelte-x7v2jt">Retry</button></div>'),Dl=P('<div class="board svelte-x7v2jt"></div>'),Nl=P('<!> <div class="board-wrapper svelte-x7v2jt"><!></div> <!> <!>',1);function Ol(e,t){We(t,!0);let r=jr(t,"triggerNewTask",3,!1),n=O(Me([])),i=O(!0),s=O(null),l=O(!1),f=O(null),o=O("todo"),u=O(!1),v=O(null),h=O(null),g=O(""),b=O(Me(new Set)),_=O(Me(new Set));const E=se(()=>()=>{const p=new Map;for(const j of a(n))j.parent_task_id&&p.set(j.parent_task_id,(p.get(j.parent_task_id)??0)+1);return p}),c=se(()=>()=>{const p=new Set;for(const j of a(n))if(j.tags)try{for(const W of JSON.parse(j.tags))p.add(W)}catch{}return[...p].sort()}),y=se(()=>()=>{let p=a(n);const j=a(g).trim().toLowerCase();return j&&(p=p.filter(W=>W.title.toLowerCase().includes(j)||(W.description??"").toLowerCase().includes(j)||(W.short_id??"").toLowerCase().includes(j))),a(b).size>0&&(p=p.filter(W=>a(b).has(W.priority))),a(_).size>0&&(p=p.filter(W=>{if(!W.tags)return!1;try{return JSON.parse(W.tags).some(at=>a(_).has(at))}catch{return!1}})),p}),D=se(()=>Ga.map(p=>({...p,tasks:a(y)().filter(j=>j.status===p.status)})));function N(p){const j=new Set(a(b));j.has(p)?j.delete(p):j.add(p),m(b,j,!0)}function q(p){const j=new Set(a(_));j.has(p)?j.delete(p):j.add(p),m(_,j,!0)}function w(){m(g,""),m(b,new Set,!0),m(_,new Set,!0)}let C=O(null);function A(p){var ne;const j=p.target.tagName;j==="INPUT"||j==="TEXTAREA"||j==="SELECT"||p.ctrlKey||p.metaKey||p.altKey||(p.key==="n"||p.key==="N"?(p.preventDefault(),he("todo")):p.key==="/"&&(p.preventDefault(),(ne=a(C))==null||ne()))}Gt(()=>{var p;r()&&(he("todo"),(p=t.onNewTaskTriggered)==null||p.call(t))});async function I(){m(i,!0),m(s,null);try{m(n,await vt.getTasks(t.project.id),!0)}catch(p){m(s,p.message,!0)}finally{m(i,!1)}}Gt(()=>{t.project.id,I()});function J(p,j){m(h,j,!0),p.dataTransfer&&(p.dataTransfer.effectAllowed="move",p.dataTransfer.setData("text/plain",j.id))}async function ee(p){if(!a(h)||a(h).status===p){m(h,null);return}const j=a(h),W=j.status;m(h,null);const ne=a(n).findIndex(at=>at.id===j.id);ne!==-1&&(a(n)[ne]={...a(n)[ne],status:p});try{await vt.updateTask(j.id,{status:p})}catch(at){ne!==-1&&(a(n)[ne]={...a(n)[ne],status:W}),m(s,at.message,!0)}}function he(p){m(f,null),m(o,p,!0),m(l,!0)}function M(p){m(f,p,!0),m(l,!0)}async function X(p){try{if(a(f)){const j=await vt.updateTask(a(f).id,{title:p.title,description:p.description||null,priority:p.priority,status:p.status,tags:p.tags.length>0?p.tags:null}),W=a(n).findIndex(ne=>ne.id===a(f).id);W!==-1&&(a(n)[W]=j)}else{const j=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(n,[j,...a(n)],!0)}m(l,!1),m(f,null)}catch(j){m(s,j.message,!0)}}function H(p){m(v,p,!0),m(u,!0)}async function Z(){if(a(v))try{await vt.deleteTask(a(v).id),m(n,a(n).filter(p=>p.id!==a(v).id&&p.parent_task_id!==a(v).id),!0),m(u,!1),m(v,null)}catch(p){m(s,p.message,!0)}}var le=Nl();ke("keydown",Ct,A);var Ee=zt(le);{let p=se(()=>a(c)());jl(Ee,{get allTags(){return a(p)},get searchQuery(){return a(g)},get selectedPriorities(){return a(b)},get selectedTags(){return a(_)},onSearchChange:j=>{m(g,j,!0)},onPriorityToggle:N,onTagToggle:q,onClear:w,get focusSearch(){return a(C)},set focusSearch(j){m(C,j,!0)}})}var Pe=T(Ee,2),Y=k(Pe);{var re=p=>{var j=Pl();x(p,j)},Ae=p=>{var j=Al(),W=k(j),ne=T(W);V(()=>B(W,`${a(s)??""} `)),Q("click",ne,()=>{m(s,null),I()}),x(p,j)},yt=p=>{var j=Dl();Ie(j,21,()=>a(D),W=>W.status,(W,ne)=>{{let at=se(()=>a(E)());sl(W,{get status(){return a(ne).status},get label(){return a(ne).label},get tasks(){return a(ne).tasks},get subtaskCounts(){return a(at)},onEdit:M,onDelete:H,onDragStart:J,onDrop:ee,onAddTask:he})}}),x(p,j)};U(Y,p=>{a(i)?p(re):a(s)?p(Ae,1):p(yt,!1)})}var bt=T(Pe,2);{var fr=p=>{pl(p,{get task(){return a(f)},get projectId(){return t.project.id},get defaultStatus(){return a(o)},onSave:X,onClose:()=>{m(l,!1),m(f,null)}})};U(bt,p=>{a(l)&&p(fr)})}var ur=T(bt,2);{var Jt=p=>{yl(p,{title:"Delete Task",get message(){return`Are you sure you want to delete "${a(v).title??""}"? This cannot be undone.`},onConfirm:Z,onCancel:()=>{m(u,!1),m(v,null)}})};U(ur,p=>{a(u)&&a(v)&&p(Jt)})}x(e,le),Qe()}mt(["click"]);var Il=P('<div><span class="item-label svelte-1bm0yy4"> </span> <span class="item-hint svelte-1bm0yy4"> </span></div>'),Ml=P('<div class="palette-empty svelte-1bm0yy4">no commands match</div>'),Ll=P('<div class="palette-backdrop svelte-1bm0yy4"><div class="palette svelte-1bm0yy4"><div class="palette-input-row svelte-1bm0yy4"><span class="palette-prompt svelte-1bm0yy4">&gt;</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 Rl(e,t){We(t,!0);let r=O(""),n=O(0),i=O(null);const s=se(()=>[{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=se(()=>()=>{const _=a(r).trim().toLowerCase();return _?a(s).filter(E=>E.label.toLowerCase().includes(_)||E.hint.toLowerCase().includes(_)):a(s)});Gt(()=>{a(l)(),m(n,0)});function f(_){var c;const E=a(l)();_.key==="ArrowDown"?(_.preventDefault(),m(n,Math.min(a(n)+1,E.length-1),!0)):_.key==="ArrowUp"?(_.preventDefault(),m(n,Math.max(a(n)-1,0),!0)):_.key==="Enter"?(_.preventDefault(),(c=E[a(n)])==null||c.action()):_.key==="Escape"&&t.onClose()}function o(_){_.target.classList.contains("palette-backdrop")&&t.onClose()}var u=Ll(),v=k(u),h=k(v),g=T(k(h),2);gn(g),un(g,_=>m(i,_),()=>a(i));var b=T(h,2);Ie(b,23,()=>a(l)(),_=>_.id,(_,E,c)=>{var y=Il();let D;var N=k(y),q=k(N),w=T(N,2),C=k(w);V(()=>{D=st(y,1,"palette-item svelte-1bm0yy4",null,D,{active:a(c)===a(n)}),B(q,a(E).label),B(C,a(E).hint)}),ke("mouseenter",y,()=>{m(n,a(c),!0)}),Q("click",y,()=>a(E).action()),x(_,y)},_=>{var E=Ml();x(_,E)}),Q("click",u,o),Q("keydown",g,f),pr(g,()=>a(r),_=>m(r,_)),x(e,u),Qe()}mt(["click","keydown"]);var Fl=P('<div class="loading svelte-1n46o8q"><span class="prompt svelte-1n46o8q">&gt;</span> loading projects...</div>'),ql=P('<div class="error svelte-1n46o8q"><span class="err-prefix svelte-1n46o8q">[error]</span> </div>'),zl=P('<div class="empty svelte-1n46o8q"><p class="empty-prompt svelte-1n46o8q">&gt; no projects found</p> <p class="empty-hint svelte-1n46o8q">// create a project using mindpm MCP tools to get started</p></div>'),Bl=P('<div class="app-layout svelte-1n46o8q"><!> <div class="main svelte-1n46o8q"><!> <!></div></div>'),Hl=P("<!> <!>",1);function Kl(e,t){We(t,!0);let r=O(Me([])),n=O(null),i=O(!0),s=O(null),l=O(!1),f=O(!1);const o=se(()=>a(r).find(w=>w.id===a(n))??null);async function u(){try{if(m(r,await vt.getProjects(),!0),a(r).length>0&&!a(n)){const w=new URLSearchParams(window.location.search).get("project"),C=w?a(r).find(A=>A.id===w||A.name===w):null;m(n,C?C.id:a(r)[0].id,!0)}}catch(w){m(s,w.message,!0)}finally{m(i,!1)}}function v(w){m(n,w,!0)}async function h(w,C){try{await vt.updateProject(w,{name:C});const A=a(r).findIndex(I=>I.id===w);A!==-1&&(a(r)[A]={...a(r)[A],name:C})}catch(A){m(s,A.message,!0)}}Gt(()=>{u()});function g(w){(w.ctrlKey||w.metaKey)&&w.key==="k"&&(w.preventDefault(),m(l,!a(l)))}var b=Hl();ke("keydown",Ct,g);var _=zt(b);{var E=w=>{Rl(w,{get projects(){return a(r)},onSelectProject:C=>{m(n,C,!0)},onNewTask:()=>{m(f,!0)},onClose:()=>{m(l,!1)}})};U(_,w=>{a(l)&&w(E)})}var c=T(_,2);{var y=w=>{var C=Fl();x(w,C)},D=w=>{var C=ql(),A=T(k(C));V(()=>B(A,` ${a(s)??""}`)),x(w,C)},N=w=>{var C=zl();x(w,C)},q=w=>{var C=Bl(),A=k(C);Va(A,{get projects(){return a(r)},get selectedId(){return a(n)},onSelect:v});var I=T(A,2),J=k(I);Ra(J,{get projects(){return a(r)},get selectedId(){return a(n)},onSelect:v,onRenamed:h});var ee=T(J,2);{var he=M=>{Ol(M,{get project(){return a(o)},get triggerNewTask(){return a(f)},onNewTaskTriggered:()=>{m(f,!1)}})};U(ee,M=>{a(o)&&M(he)})}x(w,C)};U(c,w=>{a(i)?w(y):a(s)?w(D,1):a(r).length===0?w(N,2):w(q,!1)})}x(e,b),Qe()}ha(Kl,{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}.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}.column.drag-over.svelte-zswfgn{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary-dim)}.column-header.svelte-zswfgn{padding:8px 10px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;border-bottom:1px solid var(--border)}.column-header.svelte-zswfgn h3:where(.svelte-zswfgn){font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim)}.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}.add-btn.svelte-zswfgn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);width:22px;height:22px;font-size:1rem;color:var(--text-muted);display:flex;align-items:center;justify-content:center;line-height:1}.add-btn.svelte-zswfgn:hover{border-color:var(--primary);color:var(--primary)}.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}
@@ -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-l4EAs_31.js"></script>
8
- <link rel="stylesheet" crossorigin href="/assets/index-Dewo1Ytp.css">
7
+ <script type="module" crossorigin src="/assets/index-CDcaXN4o.js"></script>
8
+ <link rel="stylesheet" crossorigin href="/assets/index-Du9PRoLb.css">
9
9
  </head>
10
10
  <body>
11
11
  <div id="app"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mindpm",
3
- "version": "1.2.15",
3
+ "version": "1.2.17",
4
4
  "description": "Persistent project memory for LLMs via MCP. Never re-explain your project again.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -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}.column.drag-over.svelte-zswfgn{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary-dim)}.column-header.svelte-zswfgn{padding:8px 10px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;border-bottom:1px solid var(--border)}.column-header.svelte-zswfgn h3:where(.svelte-zswfgn){font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim)}.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}.add-btn.svelte-zswfgn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);width:22px;height:22px;font-size:1rem;color:var(--text-muted);display:flex;align-items:center;justify-content:center;line-height:1}.add-btn.svelte-zswfgn:hover{border-color:var(--primary);color:var(--primary)}.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)}.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-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 Ms=Object.defineProperty;var pr=e=>{throw TypeError(e)};var Fs=(e,t,n)=>t in e?Ms(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Ve=(e,t,n)=>Fs(e,typeof t!="symbol"?t+"":t,n),Mn=(e,t,n)=>t.has(e)||pr("Cannot "+n);var v=(e,t,n)=>(Mn(e,t,"read from private field"),n?n.call(e):t.get(e)),q=(e,t,n)=>t.has(e)?pr("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),M=(e,t,n,r)=>(Mn(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n),le=(e,t,n)=>(Mn(e,t,"access private method"),n);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const s of i)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(i){const s={};return i.integrity&&(s.integrity=i.integrity),i.referrerPolicy&&(s.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?s.credentials="include":i.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function r(i){if(i.ep)return;i.ep=!0;const s=n(i);fetch(i.href,s)}})();const Bn=!1;var rr=Array.isArray,qs=Array.prototype.indexOf,Gt=Array.prototype.includes,An=Array.from,zs=Object.defineProperty,qt=Object.getOwnPropertyDescriptor,Bs=Object.getOwnPropertyDescriptors,Ks=Object.prototype,Us=Array.prototype,Lr=Object.getPrototypeOf,mr=Object.isExtensible;const Hs=()=>{};function Vs(e){for(var t=0;t<e.length;t++)e[t]()}function Mr(){var e,t,n=new Promise((r,i)=>{e=r,t=i});return{promise:n,resolve:e,reject:t}}const ve=2,cn=4,Dn=8,Fr=1<<24,it=16,Ke=32,Mt=64,Kn=128,Ae=512,oe=1024,de=2048,Be=4096,Ee=8192,tt=16384,Ot=32768,Jt=65536,yr=1<<17,qr=1<<18,Zt=1<<19,Ys=1<<20,et=1<<25,It=65536,Un=1<<21,sr=1<<22,ht=1<<23,At=Symbol("$state"),Gs=Symbol("legacy props"),wt=new class extends Error{constructor(){super(...arguments);Ve(this,"name","StaleReactionError");Ve(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};var Or;const Js=!!((Or=globalThis.document)!=null&&Or.contentType)&&globalThis.document.contentType.includes("xml");function Ws(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function Qs(e,t,n){throw new Error("https://svelte.dev/e/each_key_duplicate")}function Xs(e){throw new Error("https://svelte.dev/e/effect_in_teardown")}function Zs(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function $s(e){throw new Error("https://svelte.dev/e/effect_orphan")}function ei(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function ti(e){throw new Error("https://svelte.dev/e/props_invalid_value")}function ni(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function ri(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function si(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function ii(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}const ai=1,li=2,zr=4,oi=8,fi=16,ui=1,ci=4,vi=8,di=16,hi=1,_i=2,ue=Symbol(),Br="http://www.w3.org/1999/xhtml";function gi(){console.warn("https://svelte.dev/e/select_multiple_invalid_value")}function pi(){console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}function Kr(e){return e===this.v}function mi(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}function Ur(e){return!mi(e,this.v)}let yi=!1,Ne=null;function Wt(e){Ne=e}function Ue(e,t=!1,n){Ne={p:Ne,i:!1,c:null,e:null,s:e,x:null,l:null}}function He(e){var t=Ne,n=t.e;if(n!==null){t.e=null;for(var r of n)us(r)}return t.i=!0,Ne=t.p,{}}function Hr(){return!0}let kt=[];function Vr(){var e=kt;kt=[],Vs(e)}function We(e){if(kt.length===0&&!tn){var t=kt;queueMicrotask(()=>{t===kt&&Vr()})}kt.push(e)}function bi(){for(;kt.length>0;)Vr()}function Yr(e){var t=V;if(t===null)return F.f|=ht,e;if((t.f&Ot)===0&&(t.f&cn)===0)throw e;dt(e,t)}function dt(e,t){for(;t!==null;){if((t.f&Kn)!==0){if((t.f&Ot)===0)throw e;try{t.b.error(e);return}catch(n){e=n}}t=t.parent}throw e}const wi=-7169;function te(e,t){e.f=e.f&wi|t}function ir(e){(e.f&Ae)!==0||e.deps===null?te(e,oe):te(e,Be)}function Gr(e){if(e!==null)for(const t of e)(t.f&ve)===0||(t.f&It)===0||(t.f^=It,Gr(t.deps))}function Jr(e,t,n){(e.f&de)!==0?t.add(e):(e.f&Be)!==0&&n.add(e),Gr(e.deps),te(e,oe)}const mn=new Set;let R=null,Tn=null,ce=null,_e=[],Nn=null,Hn=!1,tn=!1;var zt,Bt,St,Kt,ln,on,xt,Xe,Ut,Te,Vn,Yn,Gn,Wr;const hr=class hr{constructor(){q(this,Te);Ve(this,"current",new Map);Ve(this,"previous",new Map);q(this,zt,new Set);q(this,Bt,new Set);q(this,St,0);q(this,Kt,0);q(this,ln,null);q(this,on,new Set);q(this,xt,new Set);q(this,Xe,new Map);Ve(this,"is_fork",!1);q(this,Ut,!1)}skip_effect(t){v(this,Xe).has(t)||v(this,Xe).set(t,{d:[],m:[]})}unskip_effect(t){var n=v(this,Xe).get(t);if(n){v(this,Xe).delete(t);for(var r of n.d)te(r,de),Fe(r);for(r of n.m)te(r,Be),Fe(r)}}process(t){var i;_e=[],this.apply();var n=[],r=[];for(const s of t)le(this,Te,Yn).call(this,s,n,r);if(le(this,Te,Vn).call(this)){le(this,Te,Gn).call(this,r),le(this,Te,Gn).call(this,n);for(const[s,l]of v(this,Xe))$r(s,l)}else{for(const s of v(this,zt))s();v(this,zt).clear(),v(this,St)===0&&le(this,Te,Wr).call(this),Tn=this,R=null,br(r),br(n),Tn=null,(i=v(this,ln))==null||i.resolve()}ce=null}capture(t,n){n!==ue&&!this.previous.has(t)&&this.previous.set(t,n),(t.f&ht)===0&&(this.current.set(t,t.v),ce==null||ce.set(t,t.v))}activate(){R=this,this.apply()}deactivate(){R===this&&(R=null,ce=null)}flush(){if(this.activate(),_e.length>0){if(Qr(),R!==null&&R!==this)return}else v(this,St)===0&&this.process([]);this.deactivate()}discard(){for(const t of v(this,Bt))t(this);v(this,Bt).clear()}increment(t){M(this,St,v(this,St)+1),t&&M(this,Kt,v(this,Kt)+1)}decrement(t){M(this,St,v(this,St)-1),t&&M(this,Kt,v(this,Kt)-1),!v(this,Ut)&&(M(this,Ut,!0),We(()=>{M(this,Ut,!1),le(this,Te,Vn).call(this)?_e.length>0&&this.flush():this.revive()}))}revive(){for(const t of v(this,on))v(this,xt).delete(t),te(t,de),Fe(t);for(const t of v(this,xt))te(t,Be),Fe(t);this.flush()}oncommit(t){v(this,zt).add(t)}ondiscard(t){v(this,Bt).add(t)}settled(){return(v(this,ln)??M(this,ln,Mr())).promise}static ensure(){if(R===null){const t=R=new hr;mn.add(R),tn||We(()=>{R===t&&t.flush()})}return R}apply(){}};zt=new WeakMap,Bt=new WeakMap,St=new WeakMap,Kt=new WeakMap,ln=new WeakMap,on=new WeakMap,xt=new WeakMap,Xe=new WeakMap,Ut=new WeakMap,Te=new WeakSet,Vn=function(){return this.is_fork||v(this,Kt)>0},Yn=function(t,n,r){t.f^=oe;for(var i=t.first;i!==null;){var s=i.f,l=(s&(Ke|Mt))!==0,f=l&&(s&oe)!==0,o=f||(s&Ee)!==0||v(this,Xe).has(i);if(!o&&i.fn!==null){l?i.f^=oe:(s&cn)!==0?n.push(i):hn(i)&&((s&it)!==0&&v(this,xt).add(i),Xt(i));var u=i.first;if(u!==null){i=u;continue}}for(;i!==null;){var d=i.next;if(d!==null){i=d;break}i=i.parent}}},Gn=function(t){for(var n=0;n<t.length;n+=1)Jr(t[n],v(this,on),v(this,xt))},Wr=function(){var i;if(mn.size>1){this.previous.clear();var t=ce,n=!0;for(const s of mn){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=_e;_e=[];const o=new Set,u=new Map;for(const d of l)Xr(d,f,o,u);if(_e.length>0){R=s,s.apply();for(const d of _e)le(i=s,Te,Yn).call(i,d,[],[]);s.deactivate()}_e=r}}R=null,ce=t}mn.delete(this)};let _t=hr;function ki(e){var t=tn;tn=!0;try{for(var n;;){if(bi(),_e.length===0&&(R==null||R.flush(),_e.length===0))return Nn=null,n;Qr()}}finally{tn=t}}function Qr(){Hn=!0;var e=null;try{for(var t=0;_e.length>0;){var n=_t.ensure();if(t++>1e3){var r,i;Ei()}n.process(_e),gt.clear()}}finally{_e=[],Hn=!1,Nn=null}}function Ei(){try{ei()}catch(e){dt(e,Nn)}}let Re=null;function br(e){var t=e.length;if(t!==0){for(var n=0;n<t;){var r=e[n++];if((r.f&(tt|Ee))===0&&hn(r)&&(Re=new Set,Xt(r),r.deps===null&&r.first===null&&r.nodes===null&&r.teardown===null&&r.ac===null&&ds(r),(Re==null?void 0:Re.size)>0)){gt.clear();for(const i of Re){if((i.f&(tt|Ee))!==0)continue;const s=[i];let l=i.parent;for(;l!==null;)Re.has(l)&&(Re.delete(l),s.push(l)),l=l.parent;for(let f=s.length-1;f>=0;f--){const o=s[f];(o.f&(tt|Ee))===0&&Xt(o)}}Re.clear()}}Re=null}}function Xr(e,t,n,r){if(!n.has(e)&&(n.add(e),e.reactions!==null))for(const i of e.reactions){const s=i.f;(s&ve)!==0?Xr(i,t,n,r):(s&(sr|it))!==0&&(s&de)===0&&Zr(i,t,r)&&(te(i,de),Fe(i))}}function Zr(e,t,n){const r=n.get(e);if(r!==void 0)return r;if(e.deps!==null)for(const i of e.deps){if(Gt.call(t,i))return!0;if((i.f&ve)!==0&&Zr(i,t,n))return n.set(i,!0),!0}return n.set(e,!1),!1}function Fe(e){var t=Nn=e,n=t.b;if(n!=null&&n.is_pending&&(e.f&(cn|Dn|Fr))!==0&&(e.f&Ot)===0){n.defer_effect(e);return}for(;t.parent!==null;){t=t.parent;var r=t.f;if(Hn&&t===V&&(r&it)!==0&&(r&qr)===0&&(r&Ot)!==0)return;if((r&(Mt|Ke))!==0){if((r&oe)===0)return;t.f^=oe}}_e.push(t)}function $r(e,t){if(!((e.f&Ke)!==0&&(e.f&oe)!==0)){(e.f&de)!==0?t.d.push(e):(e.f&Be)!==0&&t.m.push(e),te(e,oe);for(var n=e.first;n!==null;)$r(n,t),n=n.next}}function Ti(e){let t=0,n=Rt(0),r;return()=>{or()&&(a(n),ur(()=>(t===0&&(r=Rn(()=>e(()=>nn(n)))),t+=1,()=>{We(()=>{t-=1,t===0&&(r==null||r(),r=void 0,nn(n))})})))}}var Si=Jt|Zt;function xi(e,t,n,r){new Ci(e,t,n,r)}var je,nr,Ye,Ct,he,Ge,we,Le,Ze,jt,vt,Ht,Vt,Yt,$e,jn,ie,ji,Pi,Ai,Jn,wn,kn,Wn;class Ci{constructor(t,n,r,i){q(this,ie);Ve(this,"parent");Ve(this,"is_pending",!1);Ve(this,"transform_error");q(this,je);q(this,nr,null);q(this,Ye);q(this,Ct);q(this,he);q(this,Ge,null);q(this,we,null);q(this,Le,null);q(this,Ze,null);q(this,jt,0);q(this,vt,0);q(this,Ht,!1);q(this,Vt,new Set);q(this,Yt,new Set);q(this,$e,null);q(this,jn,Ti(()=>(M(this,$e,Rt(v(this,jt))),()=>{M(this,$e,null)})));var s;M(this,je,t),M(this,Ye,n),M(this,Ct,l=>{var f=V;f.b=this,f.f|=Kn,r(l)}),this.parent=V.b,this.transform_error=i??((s=this.parent)==null?void 0:s.transform_error)??(l=>l),M(this,he,cr(()=>{le(this,ie,Jn).call(this)},Si))}defer_effect(t){Jr(t,v(this,Vt),v(this,Yt))}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!v(this,Ye).pending}update_pending_count(t){le(this,ie,Wn).call(this,t),M(this,jt,v(this,jt)+t),!(!v(this,$e)||v(this,Ht))&&(M(this,Ht,!0),We(()=>{M(this,Ht,!1),v(this,$e)&&Qt(v(this,$e),v(this,jt))}))}get_effect_pending(){return v(this,jn).call(this),a(v(this,$e))}error(t){var n=v(this,Ye).onerror;let r=v(this,Ye).failed;if(!n&&!r)throw t;v(this,Ge)&&(pe(v(this,Ge)),M(this,Ge,null)),v(this,we)&&(pe(v(this,we)),M(this,we,null)),v(this,Le)&&(pe(v(this,Le)),M(this,Le,null));var i=!1,s=!1;const l=()=>{if(i){pi();return}i=!0,s&&ii(),v(this,Le)!==null&&Dt(v(this,Le),()=>{M(this,Le,null)}),le(this,ie,kn).call(this,()=>{_t.ensure(),le(this,ie,Jn).call(this)})},f=o=>{try{s=!0,n==null||n(o,l),s=!1}catch(u){dt(u,v(this,he)&&v(this,he).parent)}r&&M(this,Le,le(this,ie,kn).call(this,()=>{_t.ensure();try{return Pe(()=>{var u=V;u.b=this,u.f|=Kn,r(v(this,je),()=>o,()=>l)})}catch(u){return dt(u,v(this,he).parent),null}}))};We(()=>{var o;try{o=this.transform_error(t)}catch(u){dt(u,v(this,he)&&v(this,he).parent);return}o!==null&&typeof o=="object"&&typeof o.then=="function"?o.then(f,u=>dt(u,v(this,he)&&v(this,he).parent)):f(o)})}}je=new WeakMap,nr=new WeakMap,Ye=new WeakMap,Ct=new WeakMap,he=new WeakMap,Ge=new WeakMap,we=new WeakMap,Le=new WeakMap,Ze=new WeakMap,jt=new WeakMap,vt=new WeakMap,Ht=new WeakMap,Vt=new WeakMap,Yt=new WeakMap,$e=new WeakMap,jn=new WeakMap,ie=new WeakSet,ji=function(){try{M(this,Ge,Pe(()=>v(this,Ct).call(this,v(this,je))))}catch(t){this.error(t)}},Pi=function(t){const n=v(this,Ye).failed;n&&M(this,Le,Pe(()=>{n(v(this,je),()=>t,()=>()=>{})}))},Ai=function(){const t=v(this,Ye).pending;t&&(this.is_pending=!0,M(this,we,Pe(()=>t(v(this,je)))),We(()=>{var n=M(this,Ze,document.createDocumentFragment()),r=nt();n.append(r),M(this,Ge,le(this,ie,kn).call(this,()=>(_t.ensure(),Pe(()=>v(this,Ct).call(this,r))))),v(this,vt)===0&&(v(this,je).before(n),M(this,Ze,null),Dt(v(this,we),()=>{M(this,we,null)}),le(this,ie,wn).call(this))}))},Jn=function(){try{if(this.is_pending=this.has_pending_snippet(),M(this,vt,0),M(this,jt,0),M(this,Ge,Pe(()=>{v(this,Ct).call(this,v(this,je))})),v(this,vt)>0){var t=M(this,Ze,document.createDocumentFragment());gs(v(this,Ge),t);const n=v(this,Ye).pending;M(this,we,Pe(()=>n(v(this,je))))}else le(this,ie,wn).call(this)}catch(n){this.error(n)}},wn=function(){this.is_pending=!1;for(const t of v(this,Vt))te(t,de),Fe(t);for(const t of v(this,Yt))te(t,Be),Fe(t);v(this,Vt).clear(),v(this,Yt).clear()},kn=function(t){var n=V,r=F,i=Ne;Qe(v(this,he)),Oe(v(this,he)),Wt(v(this,he).ctx);try{return t()}catch(s){return Yr(s),null}finally{Qe(n),Oe(r),Wt(i)}},Wn=function(t){var n;if(!this.has_pending_snippet()){this.parent&&le(n=this.parent,ie,Wn).call(n,t);return}M(this,vt,v(this,vt)+t),v(this,vt)===0&&(le(this,ie,wn).call(this),v(this,we)&&Dt(v(this,we),()=>{M(this,we,null)}),v(this,Ze)&&(v(this,je).before(v(this,Ze)),M(this,Ze,null)))};function Di(e,t,n,r){const i=On;var s=e.filter(_=>!_.settled);if(n.length===0&&s.length===0){r(t.map(i));return}var l=V,f=Ni(),o=s.length===1?s[0].promise:s.length>1?Promise.all(s.map(_=>_.promise)):null;function u(_){f();try{r(_)}catch(p){(l.f&tt)===0&&dt(p,l)}Qn()}if(n.length===0){o.then(()=>u(t.map(i)));return}function d(){f(),Promise.all(n.map(_=>Ii(_))).then(_=>u([...t.map(i),..._])).catch(_=>dt(_,l))}o?o.then(d):d()}function Ni(){var e=V,t=F,n=Ne,r=R;return function(s=!0){Qe(e),Oe(t),Wt(n),s&&(r==null||r.activate())}}function Qn(e=!0){Qe(null),Oe(null),Wt(null),e&&(R==null||R.deactivate())}function Oi(){var e=V.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 On(e){var t=ve|de,n=F!==null&&(F.f&ve)!==0?F:null;return V!==null&&(V.f|=Zt),{ctx:Ne,deps:null,effects:null,equals:Kr,f:t,fn:e,reactions:null,rv:0,v:ue,wv:0,parent:n??V,ac:null}}function Ii(e,t,n){V===null&&Ws();var i=void 0,s=Rt(ue),l=!F,f=new Map;return Ji(()=>{var p;var o=Mr();i=o.promise;try{Promise.resolve(e()).then(o.resolve,o.reject).finally(Qn)}catch(b){o.reject(b),Qn()}var u=R;if(l){var d=Oi();(p=f.get(u))==null||p.reject(wt),f.delete(u),f.set(u,o)}const _=(b,g=void 0)=>{if(u.activate(),g)g!==wt&&(s.f|=ht,Qt(s,g));else{(s.f&ht)!==0&&(s.f^=ht),Qt(s,b);for(const[E,c]of f){if(f.delete(E),E===u)break;c.reject(wt)}}d&&d()};o.promise.then(_,b=>_(null,b||"unknown"))}),fr(()=>{for(const o of f.values())o.reject(wt)}),new Promise(o=>{function u(d){function _(){d===i?o(s):u(i)}d.then(_,_)}u(i)})}function se(e){const t=On(e);return ps(t),t}function es(e){const t=On(e);return t.equals=Ur,t}function Ri(e){var t=e.effects;if(t!==null){e.effects=null;for(var n=0;n<t.length;n+=1)pe(t[n])}}function Li(e){for(var t=e.parent;t!==null;){if((t.f&ve)===0)return(t.f&tt)===0?t:null;t=t.parent}return null}function ar(e){var t,n=V;Qe(Li(e));try{e.f&=~It,Ri(e),t=ws(e)}finally{Qe(n)}return t}function ts(e){var t=ar(e);if(!e.equals(t)&&(e.wv=ys(),(!(R!=null&&R.is_fork)||e.deps===null)&&(e.v=t,e.deps===null))){te(e,oe);return}mt||(ce!==null?(or()||R!=null&&R.is_fork)&&ce.set(e,t):ir(e))}function Mi(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(wt),r.teardown=Hs,r.ac=null,an(r,0),vr(r))}function ns(e){if(e.effects!==null)for(const t of e.effects)t.teardown&&Xt(t)}let Xn=new Set;const gt=new Map;let rs=!1;function Rt(e,t){var n={f:0,v:e,reactions:null,equals:Kr,rv:0,wv:0};return n}function N(e,t){const n=Rt(e);return ps(n),n}function Fi(e,t=!1,n=!0){const r=Rt(e);return t||(r.equals=Ur),r}function y(e,t,n=!1){F!==null&&(!ze||(F.f&yr)!==0)&&Hr()&&(F.f&(ve|it|sr|yr))!==0&&(De===null||!Gt.call(De,e))&&si();let r=n?qe(t):t;return Qt(e,r)}function Qt(e,t){if(!e.equals(t)){var n=e.v;mt?gt.set(e,t):gt.set(e,n),e.v=t;var r=_t.ensure();if(r.capture(e,n),(e.f&ve)!==0){const i=e;(e.f&de)!==0&&ar(i),ir(i)}e.wv=ys(),ss(e,de),V!==null&&(V.f&oe)!==0&&(V.f&(Ke|Mt))===0&&(Ce===null?Xi([e]):Ce.push(e)),!r.is_fork&&Xn.size>0&&!rs&&qi()}return t}function qi(){rs=!1;for(const e of Xn)(e.f&oe)!==0&&te(e,Be),hn(e)&&Xt(e);Xn.clear()}function nn(e){y(e,e.v+1)}function ss(e,t){var n=e.reactions;if(n!==null)for(var r=n.length,i=0;i<r;i++){var s=n[i],l=s.f,f=(l&de)===0;if(f&&te(s,t),(l&ve)!==0){var o=s;ce==null||ce.delete(o),(l&It)===0&&(l&Ae&&(s.f|=It),ss(o,Be))}else f&&((l&it)!==0&&Re!==null&&Re.add(s),Fe(s))}}function qe(e){if(typeof e!="object"||e===null||At in e)return e;const t=Lr(e);if(t!==Ks&&t!==Us)return e;var n=new Map,r=rr(e),i=N(0),s=Nt,l=f=>{if(Nt===s)return f();var o=F,u=Nt;Oe(null),Tr(s);var d=f();return Oe(o),Tr(u),d};return r&&n.set("length",N(e.length)),new Proxy(e,{defineProperty(f,o,u){(!("value"in u)||u.configurable===!1||u.enumerable===!1||u.writable===!1)&&ni();var d=n.get(o);return d===void 0?l(()=>{var _=N(u.value);return n.set(o,_),_}):y(d,u.value,!0),!0},deleteProperty(f,o){var u=n.get(o);if(u===void 0){if(o in f){const d=l(()=>N(ue));n.set(o,d),nn(i)}}else y(u,ue),nn(i);return!0},get(f,o,u){var b;if(o===At)return e;var d=n.get(o),_=o in f;if(d===void 0&&(!_||(b=qt(f,o))!=null&&b.writable)&&(d=l(()=>{var g=qe(_?f[o]:ue),E=N(g);return E}),n.set(o,d)),d!==void 0){var p=a(d);return p===ue?void 0:p}return Reflect.get(f,o,u)},getOwnPropertyDescriptor(f,o){var u=Reflect.getOwnPropertyDescriptor(f,o);if(u&&"value"in u){var d=n.get(o);d&&(u.value=a(d))}else if(u===void 0){var _=n.get(o),p=_==null?void 0:_.v;if(_!==void 0&&p!==ue)return{enumerable:!0,configurable:!0,value:p,writable:!0}}return u},has(f,o){var p;if(o===At)return!0;var u=n.get(o),d=u!==void 0&&u.v!==ue||Reflect.has(f,o);if(u!==void 0||V!==null&&(!d||(p=qt(f,o))!=null&&p.writable)){u===void 0&&(u=l(()=>{var b=d?qe(f[o]):ue,g=N(b);return g}),n.set(o,u));var _=a(u);if(_===ue)return!1}return d},set(f,o,u,d){var D;var _=n.get(o),p=o in f;if(r&&o==="length")for(var b=u;b<_.v;b+=1){var g=n.get(b+"");g!==void 0?y(g,ue):b in f&&(g=l(()=>N(ue)),n.set(b+"",g))}if(_===void 0)(!p||(D=qt(f,o))!=null&&D.writable)&&(_=l(()=>N(void 0)),y(_,qe(u)),n.set(o,_));else{p=_.v!==ue;var E=l(()=>qe(u));y(_,E)}var c=Reflect.getOwnPropertyDescriptor(f,o);if(c!=null&&c.set&&c.set.call(d,u),!p){if(r&&typeof o=="string"){var m=n.get("length"),A=Number(o);Number.isInteger(A)&&A>=m.v&&y(m,A+1)}nn(i)}return!0},ownKeys(f){a(i);var o=Reflect.ownKeys(f).filter(_=>{var p=n.get(_);return p===void 0||p.v!==ue});for(var[u,d]of n)d.v!==ue&&!(u in f)&&o.push(u);return o},setPrototypeOf(){ri()}})}function wr(e){try{if(e!==null&&typeof e=="object"&&At in e)return e[At]}catch{}return e}function zi(e,t){return Object.is(wr(e),wr(t))}var pt,is,as,ls;function Bi(){if(pt===void 0){pt=window,is=/Firefox/.test(navigator.userAgent);var e=Element.prototype,t=Node.prototype,n=Text.prototype;as=qt(t,"firstChild").get,ls=qt(t,"nextSibling").get,mr(e)&&(e.__click=void 0,e.__className=void 0,e.__attributes=null,e.__style=void 0,e.__e=void 0),mr(n)&&(n.__t=void 0)}}function nt(e=""){return document.createTextNode(e)}function Sn(e){return as.call(e)}function vn(e){return ls.call(e)}function k(e,t){return Sn(e)}function dn(e,t=!1){{var n=Sn(e);return n instanceof Comment&&n.data===""?vn(n):n}}function S(e,t=1,n=!1){let r=e;for(;t--;)r=vn(r);return r}function Ki(e){e.textContent=""}function os(){return!1}function Ui(e,t,n){return document.createElementNS(Br,e,void 0)}function lr(e,t){{const n=document.body;e.autofocus=!0,We(()=>{document.activeElement===n&&e.focus()})}}let kr=!1;function Hi(){kr||(kr=!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 In(e){var t=F,n=V;Oe(null),Qe(null);try{return e()}finally{Oe(t),Qe(n)}}function fs(e,t,n,r=n){e.addEventListener(t,()=>In(n));const i=e.__on_r;i?e.__on_r=()=>{i(),r(!0)}:e.__on_r=()=>r(!0),Hi()}function Vi(e){V===null&&(F===null&&$s(),Zs()),mt&&Xs()}function Yi(e,t){var n=t.last;n===null?t.last=t.first=e:(n.next=e,e.prev=n,t.last=e)}function at(e,t,n){var r=V;r!==null&&(r.f&Ee)!==0&&(e|=Ee);var i={ctx:Ne,deps:null,nodes:null,f:e|de|Ae,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{Xt(i)}catch(f){throw pe(i),f}else t!==null&&Fe(i);var s=i;if(n&&s.deps===null&&s.teardown===null&&s.nodes===null&&s.first===s.last&&(s.f&Zt)===0&&(s=s.first,(e&it)!==0&&(e&Jt)!==0&&s!==null&&(s.f|=Jt)),s!==null&&(s.parent=r,r!==null&&Yi(s,r),F!==null&&(F.f&ve)!==0&&(e&Mt)===0)){var l=F;(l.effects??(l.effects=[])).push(s)}return i}function or(){return F!==null&&!ze}function fr(e){const t=at(Dn,null,!1);return te(t,oe),t.teardown=e,t}function Lt(e){Vi();var t=V.f,n=!F&&(t&Ke)!==0&&(t&Ot)===0;if(n){var r=Ne;(r.e??(r.e=[])).push(e)}else return us(e)}function us(e){return at(cn|Ys,e,!1)}function Gi(e){_t.ensure();const t=at(Mt|Zt,e,!0);return(n={})=>new Promise(r=>{n.outro?Dt(t,()=>{pe(t),r(void 0)}):(pe(t),r(void 0))})}function cs(e){return at(cn,e,!1)}function Ji(e){return at(sr|Zt,e,!0)}function ur(e,t=0){return at(Dn|t,e,!0)}function G(e,t=[],n=[],r=[]){Di(r,t,n,i=>{at(Dn,()=>e(...i.map(a)),!0)})}function cr(e,t=0){var n=at(it|t,e,!0);return n}function Pe(e){return at(Ke|Zt,e,!0)}function vs(e){var t=e.teardown;if(t!==null){const n=mt,r=F;Er(!0),Oe(null);try{t.call(null)}finally{Er(n),Oe(r)}}}function vr(e,t=!1){var n=e.first;for(e.first=e.last=null;n!==null;){const i=n.ac;i!==null&&In(()=>{i.abort(wt)});var r=n.next;(n.f&Mt)!==0?n.parent=null:pe(n,t),n=r}}function Wi(e){for(var t=e.first;t!==null;){var n=t.next;(t.f&Ke)===0&&pe(t),t=n}}function pe(e,t=!0){var n=!1;(t||(e.f&qr)!==0)&&e.nodes!==null&&e.nodes.end!==null&&(Qi(e.nodes.start,e.nodes.end),n=!0),vr(e,t&&!n),an(e,0),te(e,tt);var r=e.nodes&&e.nodes.t;if(r!==null)for(const s of r)s.stop();vs(e);var i=e.parent;i!==null&&i.first!==null&&ds(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=null}function Qi(e,t){for(;e!==null;){var n=e===t?null:vn(e);e.remove(),e=n}}function ds(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 Dt(e,t,n=!0){var r=[];hs(e,r,!0);var i=()=>{n&&pe(e),t&&t()},s=r.length;if(s>0){var l=()=>--s||i();for(var f of r)f.out(l)}else i()}function hs(e,t,n){if((e.f&Ee)===0){e.f^=Ee;var r=e.nodes&&e.nodes.t;if(r!==null)for(const f of r)(f.is_global||n)&&t.push(f);for(var i=e.first;i!==null;){var s=i.next,l=(i.f&Jt)!==0||(i.f&Ke)!==0&&(e.f&it)!==0;hs(i,t,l?n:!1),i=s}}}function dr(e){_s(e,!0)}function _s(e,t){if((e.f&Ee)!==0){e.f^=Ee,(e.f&oe)===0&&(te(e,de),Fe(e));for(var n=e.first;n!==null;){var r=n.next,i=(n.f&Jt)!==0||(n.f&Ke)!==0;_s(n,i?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 gs(e,t){if(e.nodes)for(var n=e.nodes.start,r=e.nodes.end;n!==null;){var i=n===r?null:vn(n);t.append(n),n=i}}let En=!1,mt=!1;function Er(e){mt=e}let F=null,ze=!1;function Oe(e){F=e}let V=null;function Qe(e){V=e}let De=null;function ps(e){F!==null&&(De===null?De=[e]:De.push(e))}let ge=null,be=0,Ce=null;function Xi(e){Ce=e}let ms=1,Et=0,Nt=Et;function Tr(e){Nt=e}function ys(){return++ms}function hn(e){var t=e.f;if((t&de)!==0)return!0;if(t&ve&&(e.f&=~It),(t&Be)!==0){for(var n=e.deps,r=n.length,i=0;i<r;i++){var s=n[i];if(hn(s)&&ts(s),s.wv>e.wv)return!0}(t&Ae)!==0&&ce===null&&te(e,oe)}return!1}function bs(e,t,n=!0){var r=e.reactions;if(r!==null&&!(De!==null&&Gt.call(De,e)))for(var i=0;i<r.length;i++){var s=r[i];(s.f&ve)!==0?bs(s,t,!1):t===s&&(n?te(s,de):(s.f&oe)!==0&&te(s,Be),Fe(s))}}function ws(e){var E;var t=ge,n=be,r=Ce,i=F,s=De,l=Ne,f=ze,o=Nt,u=e.f;ge=null,be=0,Ce=null,F=(u&(Ke|Mt))===0?e:null,De=null,Wt(e.ctx),ze=!1,Nt=++Et,e.ac!==null&&(In(()=>{e.ac.abort(wt)}),e.ac=null);try{e.f|=Un;var d=e.fn,_=d();e.f|=Ot;var p=e.deps,b=R==null?void 0:R.is_fork;if(ge!==null){var g;if(b||an(e,be),p!==null&&be>0)for(p.length=be+ge.length,g=0;g<ge.length;g++)p[be+g]=ge[g];else e.deps=p=ge;if(or()&&(e.f&Ae)!==0)for(g=be;g<p.length;g++)((E=p[g]).reactions??(E.reactions=[])).push(e)}else!b&&p!==null&&be<p.length&&(an(e,be),p.length=be);if(Hr()&&Ce!==null&&!ze&&p!==null&&(e.f&(ve|Be|de))===0)for(g=0;g<Ce.length;g++)bs(Ce[g],e);if(i!==null&&i!==e){if(Et++,i.deps!==null)for(let c=0;c<n;c+=1)i.deps[c].rv=Et;if(t!==null)for(const c of t)c.rv=Et;Ce!==null&&(r===null?r=Ce:r.push(...Ce))}return(e.f&ht)!==0&&(e.f^=ht),_}catch(c){return Yr(c)}finally{e.f^=Un,ge=t,be=n,Ce=r,F=i,De=s,Wt(l),ze=f,Nt=o}}function Zi(e,t){let n=t.reactions;if(n!==null){var r=qs.call(n,e);if(r!==-1){var i=n.length-1;i===0?n=t.reactions=null:(n[r]=n[i],n.pop())}}if(n===null&&(t.f&ve)!==0&&(ge===null||!Gt.call(ge,t))){var s=t;(s.f&Ae)!==0&&(s.f^=Ae,s.f&=~It),ir(s),Mi(s),an(s,0)}}function an(e,t){var n=e.deps;if(n!==null)for(var r=t;r<n.length;r++)Zi(e,n[r])}function Xt(e){var t=e.f;if((t&tt)===0){te(e,oe);var n=V,r=En;V=e,En=!0;try{(t&(it|Fr))!==0?Wi(e):vr(e),vs(e);var i=ws(e);e.teardown=typeof i=="function"?i:null,e.wv=ms;var s;Bn&&yi&&(e.f&de)!==0&&e.deps}finally{En=r,V=n}}}async function $i(){await Promise.resolve(),ki()}function a(e){var t=e.f,n=(t&ve)!==0;if(F!==null&&!ze){var r=V!==null&&(V.f&tt)!==0;if(!r&&(De===null||!Gt.call(De,e))){var i=F.deps;if((F.f&Un)!==0)e.rv<Et&&(e.rv=Et,ge===null&&i!==null&&i[be]===e?be++:ge===null?ge=[e]:ge.push(e));else{(F.deps??(F.deps=[])).push(e);var s=e.reactions;s===null?e.reactions=[F]:Gt.call(s,F)||s.push(F)}}}if(mt&&gt.has(e))return gt.get(e);if(n){var l=e;if(mt){var f=l.v;return((l.f&oe)===0&&l.reactions!==null||Es(l))&&(f=ar(l)),gt.set(l,f),f}var o=(l.f&Ae)===0&&!ze&&F!==null&&(En||(F.f&Ae)!==0),u=(l.f&Ot)===0;hn(l)&&(o&&(l.f|=Ae),ts(l)),o&&!u&&(ns(l),ks(l))}if(ce!=null&&ce.has(e))return ce.get(e);if((e.f&ht)!==0)throw e.v;return e.v}function ks(e){if(e.f|=Ae,e.deps!==null)for(const t of e.deps)(t.reactions??(t.reactions=[])).push(e),(t.f&ve)!==0&&(t.f&Ae)===0&&(ns(t),ks(t))}function Es(e){if(e.v===ue)return!0;if(e.deps===null)return!1;for(const t of e.deps)if(gt.has(t)||(t.f&ve)!==0&&Es(t))return!0;return!1}function Rn(e){var t=ze;try{return ze=!0,e()}finally{ze=t}}const ea=["touchstart","touchmove"];function ta(e){return ea.includes(e)}const Tt=Symbol("events"),Ts=new Set,Zn=new Set;function na(e,t,n,r={}){function i(s){if(r.capture||$n.call(t,s),!s.cancelBubble)return In(()=>n==null?void 0:n.call(this,s))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?We(()=>{t.addEventListener(e,i,r)}):t.addEventListener(e,i,r),i}function me(e,t,n,r,i){var s={capture:r,passive:i},l=na(e,t,n,s);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&fr(()=>{t.removeEventListener(e,l,s)})}function X(e,t,n){(t[Tt]??(t[Tt]={}))[e]=n}function lt(e){for(var t=0;t<e.length;t++)Ts.add(e[t]);for(var n of Zn)n(e)}let Sr=null;function $n(e){var c,m;var t=this,n=t.ownerDocument,r=e.type,i=((c=e.composedPath)==null?void 0:c.call(e))||[],s=i[0]||e.target;Sr=e;var l=0,f=Sr===e&&e[Tt];if(f){var o=i.indexOf(f);if(o!==-1&&(t===document||t===window)){e[Tt]=t;return}var u=i.indexOf(t);if(u===-1)return;o<=u&&(l=o)}if(s=i[l]||e.target,s!==t){zs(e,"currentTarget",{configurable:!0,get(){return s||n}});var d=F,_=V;Oe(null),Qe(null);try{for(var p,b=[];s!==null;){var g=s.assignedSlot||s.parentNode||s.host||null;try{var E=(m=s[Tt])==null?void 0:m[r];E!=null&&(!s.disabled||e.target===s)&&E.call(s,e)}catch(A){p?b.push(A):p=A}if(e.cancelBubble||g===t||g===null)break;s=g}if(p){for(let A of b)queueMicrotask(()=>{throw A});throw p}}finally{e[Tt]=t,delete e.currentTarget,Oe(d),Qe(_)}}}var Ir;const Fn=((Ir=globalThis==null?void 0:globalThis.window)==null?void 0:Ir.trustedTypes)&&globalThis.window.trustedTypes.createPolicy("svelte-trusted-html",{createHTML:e=>e});function ra(e){return(Fn==null?void 0:Fn.createHTML(e))??e}function sa(e){var t=Ui("template");return t.innerHTML=ra(e.replaceAll("<!>","<!---->")),t.content}function xn(e,t){var n=V;n.nodes===null&&(n.nodes={start:e,end:t,a:null,t:null})}function P(e,t){var n=(t&hi)!==0,r=(t&_i)!==0,i,s=!e.startsWith("<!>");return()=>{i===void 0&&(i=sa(s?e:"<!>"+e),n||(i=Sn(i)));var l=r||is?document.importNode(i,!0):i.cloneNode(!0);if(n){var f=Sn(l),o=l.lastChild;xn(f,o)}else xn(l,l);return l}}function xr(e=""){{var t=nt(e+"");return xn(t,t),t}}function ia(){var e=document.createDocumentFragment(),t=document.createComment(""),n=nt();return e.append(t,n),xn(t,n),e}function C(e,t){e!==null&&e.before(t)}function z(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 aa(e,t){return la(e,t)}const yn=new Map;function la(e,{target:t,anchor:n,props:r={},events:i,context:s,intro:l=!0,transformError:f}){Bi();var o=void 0,u=Gi(()=>{var d=n??t.appendChild(nt());xi(d,{pending:()=>{}},b=>{Ue({});var g=Ne;s&&(g.c=s),i&&(r.$$events=i),o=e(b,r)||{},He()},f);var _=new Set,p=b=>{for(var g=0;g<b.length;g++){var E=b[g];if(!_.has(E)){_.add(E);var c=ta(E);for(const D of[t,document]){var m=yn.get(D);m===void 0&&(m=new Map,yn.set(D,m));var A=m.get(E);A===void 0?(D.addEventListener(E,$n,{passive:c}),m.set(E,1)):m.set(E,A+1)}}}};return p(An(Ts)),Zn.add(p),()=>{var c;for(var b of _)for(const m of[t,document]){var g=yn.get(m),E=g.get(b);--E==0?(m.removeEventListener(b,$n),g.delete(b),g.size===0&&yn.delete(m)):g.set(b,E)}Zn.delete(p),d!==n&&((c=d.parentNode)==null||c.removeChild(d))}});return oa.set(o,u),o}let oa=new WeakMap;var Me,Je,ke,Pt,fn,un,Pn;class fa{constructor(t,n=!0){Ve(this,"anchor");q(this,Me,new Map);q(this,Je,new Map);q(this,ke,new Map);q(this,Pt,new Set);q(this,fn,!0);q(this,un,()=>{var t=R;if(v(this,Me).has(t)){var n=v(this,Me).get(t),r=v(this,Je).get(n);if(r)dr(r),v(this,Pt).delete(n);else{var i=v(this,ke).get(n);i&&(v(this,Je).set(n,i.effect),v(this,ke).delete(n),i.fragment.lastChild.remove(),this.anchor.before(i.fragment),r=i.effect)}for(const[s,l]of v(this,Me)){if(v(this,Me).delete(s),s===t)break;const f=v(this,ke).get(l);f&&(pe(f.effect),v(this,ke).delete(l))}for(const[s,l]of v(this,Je)){if(s===n||v(this,Pt).has(s))continue;const f=()=>{if(Array.from(v(this,Me).values()).includes(s)){var u=document.createDocumentFragment();gs(l,u),u.append(nt()),v(this,ke).set(s,{effect:l,fragment:u})}else pe(l);v(this,Pt).delete(s),v(this,Je).delete(s)};v(this,fn)||!r?(v(this,Pt).add(s),Dt(l,f,!1)):f()}}});q(this,Pn,t=>{v(this,Me).delete(t);const n=Array.from(v(this,Me).values());for(const[r,i]of v(this,ke))n.includes(r)||(pe(i.effect),v(this,ke).delete(r))});this.anchor=t,M(this,fn,n)}ensure(t,n){var r=R,i=os();if(n&&!v(this,Je).has(t)&&!v(this,ke).has(t))if(i){var s=document.createDocumentFragment(),l=nt();s.append(l),v(this,ke).set(t,{effect:Pe(()=>n(l)),fragment:s})}else v(this,Je).set(t,Pe(()=>n(this.anchor)));if(v(this,Me).set(r,t),i){for(const[f,o]of v(this,Je))f===t?r.unskip_effect(o):r.skip_effect(o);for(const[f,o]of v(this,ke))f===t?r.unskip_effect(o.effect):r.skip_effect(o.effect);r.oncommit(v(this,un)),r.ondiscard(v(this,Pn))}else v(this,un).call(this)}}Me=new WeakMap,Je=new WeakMap,ke=new WeakMap,Pt=new WeakMap,fn=new WeakMap,un=new WeakMap,Pn=new WeakMap;function U(e,t,n=!1){var r=new fa(e),i=n?Jt:0;function s(l,f){r.ensure(l,f)}cr(()=>{var l=!1;t((f,o=0)=>{l=!0,s(o,f)}),l||s(!1,null)},i)}function Cn(e,t){return t}function ua(e,t,n){for(var r=[],i=t.length,s,l=t.length,f=0;f<i;f++){let _=t[f];Dt(_,()=>{if(s){if(s.pending.delete(_),s.done.add(_),s.pending.size===0){var p=e.outrogroups;er(An(s.done)),p.delete(s),p.size===0&&(e.outrogroups=null)}}else l-=1},!1)}if(l===0){var o=r.length===0&&n!==null;if(o){var u=n,d=u.parentNode;Ki(d),d.append(u),e.items.clear()}er(t,!o)}else s={pending:new Set(t),done:new Set},(e.outrogroups??(e.outrogroups=new Set)).add(s)}function er(e,t=!0){for(var n=0;n<e.length;n++)pe(e[n],t)}var Cr;function st(e,t,n,r,i,s=null){var l=e,f=new Map,o=(t&zr)!==0;if(o){var u=e;l=u.appendChild(nt())}var d=null,_=es(()=>{var m=n();return rr(m)?m:m==null?[]:An(m)}),p,b=!0;function g(){c.fallback=d,ca(c,p,l,t,r),d!==null&&(p.length===0?(d.f&et)===0?dr(d):(d.f^=et,en(d,null,l)):Dt(d,()=>{d=null}))}var E=cr(()=>{p=a(_);for(var m=p.length,A=new Set,D=R,B=os(),w=0;w<m;w+=1){var x=p[w],j=r(x,w),O=b?null:f.get(j);O?(O.v&&Qt(O.v,x),O.i&&Qt(O.i,w),B&&D.unskip_effect(O.e)):(O=va(f,b?l:Cr??(Cr=nt()),x,j,w,i,t,n),b||(O.e.f|=et),f.set(j,O)),A.add(j)}if(m===0&&s&&!d&&(b?d=Pe(()=>s(l)):(d=Pe(()=>s(Cr??(Cr=nt()))),d.f|=et)),m>A.size&&Qs(),!b)if(B){for(const[J,$]of f)A.has(J)||D.skip_effect($.e);D.oncommit(g),D.ondiscard(()=>{})}else g();a(_)}),c={effect:E,items:f,outrogroups:null,fallback:d};b=!1}function $t(e){for(;e!==null&&(e.f&Ke)===0;)e=e.next;return e}function ca(e,t,n,r,i){var $,fe,I,Z,K,ee,ae,ye,Ie;var s=(r&oi)!==0,l=t.length,f=e.items,o=$t(e.effect.first),u,d=null,_,p=[],b=[],g,E,c,m;if(s)for(m=0;m<l;m+=1)g=t[m],E=i(g,m),c=f.get(E).e,(c.f&et)===0&&((fe=($=c.nodes)==null?void 0:$.a)==null||fe.measure(),(_??(_=new Set)).add(c));for(m=0;m<l;m+=1){if(g=t[m],E=i(g,m),c=f.get(E).e,e.outrogroups!==null)for(const W of e.outrogroups)W.pending.delete(c),W.done.delete(c);if((c.f&et)!==0)if(c.f^=et,c===o)en(c,null,n);else{var A=d?d.next:o;c===e.effect.last&&(e.effect.last=c.prev),c.prev&&(c.prev.next=c.next),c.next&&(c.next.prev=c.prev),ft(e,d,c),ft(e,c,A),en(c,A,n),d=c,p=[],b=[],o=$t(d.next);continue}if((c.f&Ee)!==0&&(dr(c),s&&((Z=(I=c.nodes)==null?void 0:I.a)==null||Z.unfix(),(_??(_=new Set)).delete(c))),c!==o){if(u!==void 0&&u.has(c)){if(p.length<b.length){var D=b[0],B;d=D.prev;var w=p[0],x=p[p.length-1];for(B=0;B<p.length;B+=1)en(p[B],D,n);for(B=0;B<b.length;B+=1)u.delete(b[B]);ft(e,w.prev,x.next),ft(e,d,w),ft(e,x,D),o=D,d=x,m-=1,p=[],b=[]}else u.delete(c),en(c,o,n),ft(e,c.prev,c.next),ft(e,c,d===null?e.effect.first:d.next),ft(e,d,c),d=c;continue}for(p=[],b=[];o!==null&&o!==c;)(u??(u=new Set)).add(o),b.push(o),o=$t(o.next);if(o===null)continue}(c.f&et)===0&&p.push(c),d=c,o=$t(c.next)}if(e.outrogroups!==null){for(const W of e.outrogroups)W.pending.size===0&&(er(An(W.done)),(K=e.outrogroups)==null||K.delete(W));e.outrogroups.size===0&&(e.outrogroups=null)}if(o!==null||u!==void 0){var j=[];if(u!==void 0)for(c of u)(c.f&Ee)===0&&j.push(c);for(;o!==null;)(o.f&Ee)===0&&o!==e.fallback&&j.push(o),o=$t(o.next);var O=j.length;if(O>0){var J=(r&zr)!==0&&l===0?n:null;if(s){for(m=0;m<O;m+=1)(ae=(ee=j[m].nodes)==null?void 0:ee.a)==null||ae.measure();for(m=0;m<O;m+=1)(Ie=(ye=j[m].nodes)==null?void 0:ye.a)==null||Ie.fix()}ua(e,j,J)}}s&&We(()=>{var W,re;if(_!==void 0)for(c of _)(re=(W=c.nodes)==null?void 0:W.a)==null||re.apply()})}function va(e,t,n,r,i,s,l,f){var o=(l&ai)!==0?(l&fi)===0?Fi(n,!1,!1):Rt(n):null,u=(l&li)!==0?Rt(i):null;return{v:o,i:u,e:Pe(()=>(s(t,o??n,u??i,f),()=>{e.delete(r)}))}}function en(e,t,n){if(e.nodes)for(var r=e.nodes.start,i=e.nodes.end,s=t&&(t.f&et)===0?t.nodes.start:n;r!==null;){var l=vn(r);if(s.before(r),r===i)return;r=l}}function ft(e,t,n){t===null?e.effect.first=n:t.next=n,n===null?e.effect.last=t:n.prev=t}const jr=[...`
2
- \r\f \v\uFEFF`];function da(e,t,n){var r=e==null?"":""+e;if(t&&(r=r?r+" "+t:t),n){for(var i of Object.keys(n))if(n[i])r=r?r+" "+i:i;else if(r.length)for(var s=i.length,l=0;(l=r.indexOf(i,l))>=0;){var f=l+s;(l===0||jr.includes(r[l-1]))&&(f===r.length||jr.includes(r[f]))?r=(l===0?"":r.substring(0,l))+r.substring(f+1):l=f}}return r===""?null:r}function ha(e,t){return e==null?null:String(e)}function rt(e,t,n,r,i,s){var l=e.__className;if(l!==n||l===void 0){var f=da(n,r,s);f==null?e.removeAttribute("class"):e.className=f,e.__className=n}else if(s&&i!==s)for(var o in s){var u=!!s[o];(i==null||u!==!!i[o])&&e.classList.toggle(o,u)}return s}function Ss(e,t,n,r){var i=e.__style;if(i!==t){var s=ha(t);s==null?e.removeAttribute("style"):e.style.cssText=s,e.__style=t}return r}function xs(e,t,n=!1){if(e.multiple){if(t==null)return;if(!rr(t))return gi();for(var r of e.options)r.selected=t.includes(rn(r));return}for(r of e.options){var i=rn(r);if(zi(i,t)){r.selected=!0;return}}(!n||t!==void 0)&&(e.selectedIndex=-1)}function _a(e){var t=new MutationObserver(()=>{xs(e,e.__value)});t.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),fr(()=>{t.disconnect()})}function Pr(e,t,n=t){var r=new WeakSet,i=!0;fs(e,"change",s=>{var l=s?"[selected]":":checked",f;if(e.multiple)f=[].map.call(e.querySelectorAll(l),rn);else{var o=e.querySelector(l)??e.querySelector("option:not([disabled])");f=o&&rn(o)}n(f),R!==null&&r.add(R)}),cs(()=>{var s=t();if(e===document.activeElement){var l=Tn??R;if(r.has(l))return}if(xs(e,s,i),i&&s===void 0){var f=e.querySelector(":checked");f!==null&&(s=rn(f),n(s))}e.__value=s,i=!1}),_a(e)}function rn(e){return"__value"in e?e.__value:e.value}const ga=Symbol("is custom element"),pa=Symbol("is html"),ma=Js?"progress":"PROGRESS";function ya(e,t){var n=Cs(e);n.value===(n.value=t??void 0)||e.value===t&&(t!==0||e.nodeName!==ma)||(e.value=t??"")}function Ar(e,t,n,r){var i=Cs(e);i[t]!==(i[t]=n)&&(n==null?e.removeAttribute(t):typeof n!="string"&&ba(e).includes(t)?e[t]=n:e.setAttribute(t,n))}function Cs(e){return e.__attributes??(e.__attributes={[ga]:e.nodeName.includes("-"),[pa]:e.namespaceURI===Br})}var Dr=new Map;function ba(e){var t=e.getAttribute("is")||e.nodeName,n=Dr.get(t);if(n)return n;Dr.set(t,n=[]);for(var r,i=e,s=Element.prototype;s!==i;){r=Bs(i);for(var l in r)r[l].set&&n.push(l);i=Lr(i)}return n}function sn(e,t,n=t){var r=new WeakSet;fs(e,"input",async i=>{var s=i?e.defaultValue:e.value;if(s=qn(e)?zn(s):s,n(s),R!==null&&r.add(R),await $i(),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))}}}),Rn(t)==null&&e.value&&(n(qn(e)?zn(e.value):e.value),R!==null&&r.add(R)),ur(()=>{var i=t();if(e===document.activeElement){var s=Tn??R;if(r.has(s))return}qn(e)&&i===zn(e.value)||e.type==="date"&&!i&&!e.value||i!==e.value&&(e.value=i??"")})}function qn(e){var t=e.type;return t==="number"||t==="range"}function zn(e){return e===""?null:+e}function Nr(e,t){return e===t||(e==null?void 0:e[At])===t}function tr(e={},t,n,r){return cs(()=>{var i,s;return ur(()=>{i=s,s=[],Rn(()=>{e!==n(...s)&&(t(e,...s),i&&Nr(n(...i),e)&&t(null,...i))})}),()=>{We(()=>{s&&Nr(n(...s),e)&&t(null,...s)})}}),e}let bn=!1;function wa(e){var t=bn;try{return bn=!1,[e(),bn]}finally{bn=t}}function _n(e,t,n,r){var A;var i=(n&vi)!==0,s=(n&di)!==0,l=r,f=!0,o=()=>(f&&(f=!1,l=s?Rn(r):r),l),u;if(i){var d=At in e||Gs in e;u=((A=qt(e,t))==null?void 0:A.set)??(d&&t in e?D=>e[t]=D:void 0)}var _,p=!1;i?[_,p]=wa(()=>e[t]):_=e[t],_===void 0&&r!==void 0&&(_=o(),u&&(ti(),u(_)));var b;if(b=()=>{var D=e[t];return D===void 0?o():(f=!0,D)},(n&ci)===0)return b;if(u){var g=e.$$legacy;return(function(D,B){return arguments.length>0?((!B||g||p)&&u(B?b():D),D):b()})}var E=!1,c=((n&ui)!==0?On:es)(()=>(E=!1,b()));i&&a(c);var m=V;return(function(D,B){if(arguments.length>0){const w=B?a(c):i?qe(D):D;return y(c,w),E=!0,l!==void 0&&(l=w),D}return mt&&E||(m.f&tt)!==0?c.v:a(c)})}const ka="5";var Rr;typeof window<"u"&&((Rr=window.__svelte??(window.__svelte={})).v??(Rr.v=new Set)).add(ka);async function ut(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 ct={getProjects:()=>ut("/projects"),getProject:e=>ut(`/projects/${e}`),updateProject:(e,t)=>ut(`/projects/${e}`,{method:"PATCH",body:JSON.stringify(t)}),getTasks:e=>ut(`/projects/${e}/tasks?include_done=true`),createTask:(e,t)=>ut(`/projects/${e}/tasks`,{method:"POST",body:JSON.stringify(t)}),updateTask:(e,t)=>ut(`/tasks/${e}`,{method:"PATCH",body:JSON.stringify(t)}),deleteTask:e=>ut(`/tasks/${e}`,{method:"DELETE"}),getDecisions:e=>ut(`/projects/${e}/decisions`)};var Ea=P('<input class="rename-input svelte-1kanzy0" type="text"/>'),Ta=P('<span class="project-slug svelte-1kanzy0"> </span>'),Sa=P('<span class="project-name svelte-1kanzy0"> </span> <!> <button class="rename-btn svelte-1kanzy0" title="Rename project">✎</button>',1),xa=P('<div class="project-area svelte-1kanzy0"><!></div>'),Ca=P('<header class="toolbar svelte-1kanzy0"><!></header>');function ja(e,t){Ue(t,!0);let n=N(!1),r=N("");const i=se(()=>projects.find(_=>_.id===t.selectedId));function s(){a(i)&&(y(r,a(i).name,!0),y(n,!0))}function l(){if(!a(i)||!a(n))return;const _=a(r).trim();_&&_!==a(i).name&&t.onRenamed(a(i).id,_),y(n,!1)}function f(_){_.key==="Enter"&&l(),_.key==="Escape"&&y(n,!1)}var o=Ca(),u=k(o);{var d=_=>{var p=xa(),b=k(p);{var g=c=>{var m=Ea();lr(m),me("blur",m,l),X("keydown",m,f),sn(m,()=>a(r),A=>y(r,A)),C(c,m)},E=c=>{var m=Sa(),A=dn(m),D=k(A),B=S(A,2);{var w=j=>{var O=Ta(),J=k(O);G(()=>z(J,`[${a(i).slug??""}]`)),C(j,O)};U(B,j=>{a(i).slug&&j(w)})}var x=S(B,2);G(()=>z(D,a(i).name)),X("click",x,s),C(c,m)};U(b,c=>{a(n)?c(g):c(E,!1)})}C(_,p)};U(u,_=>{a(i)&&_(d)})}C(e,o),He()}lt(["keydown","click"]);var Pa=P('<span class="brand svelte-rig7vt"><span class="prompt svelte-rig7vt">&gt;</span> mindpm</span>'),Aa=P('<span class="task-count svelte-rig7vt"> </span>'),Da=P('<span class="project-name svelte-rig7vt"> </span> <!>',1),Na=P('<span class="task-count-collapsed svelte-rig7vt"> </span>'),Oa=P('<button><span class="status-dot svelte-rig7vt"></span> <!></button>'),Ia=P('<div class="sidebar-footer svelte-rig7vt"><span class="footer-hint svelte-rig7vt"> </span></div>'),Ra=P('<aside><div class="sidebar-header svelte-rig7vt"><!> <button class="collapse-btn svelte-rig7vt"> </button></div> <nav class="project-list svelte-rig7vt"></nav> <!></aside>');function La(e,t){Ue(t,!0);const n="mindpm_sidebar_collapsed";let r=N(localStorage.getItem(n)==="true");function i(){y(r,!a(r)),localStorage.setItem(n,String(a(r)))}const s={active:"var(--primary)",paused:"#d29922",completed:"var(--text-muted)",archived:"var(--border-bright)"};var l=Ra();let f;var o=k(l),u=k(o);{var d=c=>{var m=Pa();C(c,m)};U(u,c=>{a(r)||c(d)})}var _=S(u,2),p=k(_),b=S(o,2);st(b,21,()=>t.projects,c=>c.id,(c,m)=>{var A=Oa();let D;var B=k(A),w=S(B,2);{var x=O=>{var J=Da(),$=dn(J),fe=k($),I=S($,2);{var Z=K=>{var ee=Aa(),ae=k(ee);G(()=>z(ae,a(m).active_task_count)),C(K,ee)};U(I,K=>{(a(m).active_task_count??0)>0&&K(Z)})}G(()=>z(fe,a(m).name)),C(O,J)},j=O=>{var J=Na(),$=k(J);G(()=>z($,a(m).active_task_count)),C(O,J)};U(w,O=>{a(r)?(a(m).active_task_count??0)>0&&O(j,1):O(x)})}G(()=>{D=rt(A,1,"project-item svelte-rig7vt",null,D,{active:a(m).id===t.selectedId}),Ar(A,"title",a(r)?a(m).name:void 0),Ss(B,`background: ${s[a(m).status]??"var(--text-muted)"??""}`)}),X("click",A,()=>t.onSelect(a(m).id)),C(c,A)});var g=S(b,2);{var E=c=>{var m=Ia(),A=k(m),D=k(A);G(()=>z(D,`// ${t.projects.length??""} project${t.projects.length!==1?"s":""}`)),C(c,m)};U(g,c=>{a(r)||c(E)})}G(()=>{f=rt(l,1,"sidebar svelte-rig7vt",null,f,{collapsed:a(r)}),Ar(_,"title",a(r)?"Expand sidebar":"Collapse sidebar"),z(p,a(r)?"»":"«")}),X("click",_,i),C(e,l),He()}lt(["click"]);const Ma=[{status:"todo",label:"Todo"},{status:"in_progress",label:"In Progress"},{status:"blocked",label:"Blocked"},{status:"done",label:"Done"},{status:"cancelled",label:"Cancelled"}],js=["critical","high","medium","low"];var Fa=P('<span class="task-id svelte-35ep21"> </span>'),qa=P('<div class="card-desc svelte-35ep21"> </div>'),za=P('<span class="tag svelte-35ep21"> </span>'),Ba=P('<div class="card-tags svelte-35ep21"></div>'),Ka=P('<span class="badge badge-blocked svelte-35ep21">⊘ blocked</span>'),Ua=P('<span class="badge badge-subtasks svelte-35ep21"> </span>'),Ha=P('<div class="card-footer svelte-35ep21"><!> <!></div>'),Va=P('<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">&times;</button></div></div> <div class="card-title svelte-35ep21"> </div> <!> <!> <!></div>');function Ya(e,t){Ue(t,!0);let n=_n(t,"subtaskCount",3,0),r=N(!1);function i(I){if(!I)return[];try{return JSON.parse(I)}catch{return[]}}const s=se(()=>i(t.task.tags)),l=se(()=>`priority-${t.task.priority}`),f=se(()=>()=>{if(!t.task.blocked_by)return!1;try{const I=JSON.parse(t.task.blocked_by);return Array.isArray(I)&&I.length>0}catch{return!1}});function o(I){y(r,!0),t.onDragStart(I,t.task)}function u(){y(r,!1)}var d=Va();let _;var p=k(d),b=k(p),g=k(b),E=S(b,2),c=k(E);{var m=I=>{var Z=Fa(),K=k(Z);G(()=>z(K,t.task.short_id)),C(I,Z)};U(c,I=>{t.task.short_id&&I(m)})}var A=S(c,2),D=S(p,2),B=k(D),w=S(D,2);{var x=I=>{var Z=qa(),K=k(Z);G(()=>z(K,t.task.description)),C(I,Z)};U(w,I=>{t.task.description&&I(x)})}var j=S(w,2);{var O=I=>{var Z=Ba();st(Z,21,()=>a(s),Cn,(K,ee)=>{var ae=za(),ye=k(ae);G(()=>z(ye,a(ee))),C(K,ae)}),C(I,Z)};U(j,I=>{a(s).length>0&&I(O)})}var J=S(j,2);{var $=I=>{var Z=Ha(),K=k(Z);{var ee=W=>{var re=Ka();C(W,re)},ae=se(()=>a(f)());U(K,W=>{a(ae)&&W(ee)})}var ye=S(K,2);{var Ie=W=>{var re=Ua(),Se=k(re);G(()=>z(Se,`⑂ ${n()??""}`)),C(W,re)};U(ye,W=>{n()>0&&W(Ie)})}C(I,Z)},fe=se(()=>a(f)()||n()>0);U(J,I=>{a(fe)&&I($)})}G(()=>{_=rt(d,1,`card ${a(l)??""}`,"svelte-35ep21",_,{dragging:a(r)}),rt(b,1,`priority-badge ${a(l)??""}`,"svelte-35ep21"),z(g,t.task.priority),z(B,t.task.title)}),me("dragstart",d,o),me("dragend",d,u),X("click",d,()=>t.onEdit(t.task)),X("keydown",d,I=>{I.key==="Enter"&&t.onEdit(t.task)}),X("click",A,I=>{I.stopPropagation(),t.onDelete(t.task)}),C(e,d),He()}lt(["click","keydown"]);var Ga=P('<button class="add-btn svelte-zswfgn" title="Add task">+</button>'),Ja=P('<div role="list"><div class="column-header svelte-zswfgn"><h3 class="svelte-zswfgn"><span class="chevron svelte-zswfgn">▸</span> <span class="count svelte-zswfgn"> </span></h3> <!></div> <div class="card-list svelte-zswfgn"></div></div>');function Wa(e,t){Ue(t,!0);let n=N(!1);function r(c){c.preventDefault(),c.dataTransfer&&(c.dataTransfer.dropEffect="move"),y(n,!0)}function i(){y(n,!1)}function s(c){c.preventDefault(),y(n,!1),t.onDrop(t.status)}var l=Ja();let f;var o=k(l),u=k(o),d=S(k(u)),_=S(d),p=k(_),b=S(u,2);{var g=c=>{var m=Ga();X("click",m,()=>t.onAddTask(t.status)),C(c,m)};U(b,c=>{t.status==="todo"&&c(g)})}var E=S(o,2);st(E,21,()=>t.tasks,c=>c.id,(c,m)=>{{let A=se(()=>t.subtaskCounts.get(a(m).id)??0);Ya(c,{get task(){return a(m)},get subtaskCount(){return a(A)},get onEdit(){return t.onEdit},get onDelete(){return t.onDelete},get onDragStart(){return t.onDragStart}})}}),G(()=>{f=rt(l,1,"column svelte-zswfgn",null,f,{"drag-over":a(n)}),z(d,` ${t.label??""} `),z(p,`[${t.tasks.length??""}]`)}),me("dragover",l,r),me("dragleave",l,i),me("drop",l,s),C(e,l),He()}lt(["click"]);var Qa=P('<span class="modal-task-id svelte-1gmf2hi"> </span>'),Xa=P("<option> </option>"),Za=P('<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>'),$a=P('<div class="decision-reasoning svelte-1gmf2hi"> </div>'),el=P('<div class="decision-alts svelte-1gmf2hi"> </div>'),tl=P('<div class="decision-item svelte-1gmf2hi"><div class="decision-title svelte-1gmf2hi"> </div> <div class="decision-body svelte-1gmf2hi"> </div> <!> <!></div>'),nl=P('<div class="decisions-section svelte-1gmf2hi"><h3 class="decisions-heading svelte-1gmf2hi">Decisions</h3> <div class="decisions-list svelte-1gmf2hi"></div></div>'),rl=P('<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">&times;</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 sl(e,t){Ue(t,!0);let n=_n(t,"defaultStatus",3,"todo"),r=N(""),i=N(""),s=N("medium"),l=N("todo"),f=N(""),o=N(qe([]));Lt(()=>{var L,H,ne,h,T;if(y(r,((L=t.task)==null?void 0:L.title)??"",!0),y(i,((H=t.task)==null?void 0:H.description)??"",!0),y(s,((ne=t.task)==null?void 0:ne.priority)??"medium",!0),y(l,((h=t.task)==null?void 0:h.status)??n(),!0),(T=t.task)!=null&&T.tags)try{y(f,JSON.parse(t.task.tags).join(", "),!0)}catch{y(f,"")}else y(f,"")}),Lt(()=>{t.task!==null?ct.getDecisions(t.projectId).then(L=>{y(o,L,!0)}).catch(()=>{y(o,[],!0)}):y(o,[],!0)});const u=se(()=>t.task!==null);function d(L){L.preventDefault();const H=a(r).trim();if(!H)return;const ne=a(f).split(",").map(h=>h.trim()).filter(Boolean);t.onSave({title:H,description:a(i).trim(),priority:a(s),...a(u)?{status:a(l)}:{},tags:ne})}function _(L){L.target.classList.contains("modal-backdrop")&&t.onClose()}function p(L){L.key==="Escape"&&t.onClose()}var b=rl();me("keydown",pt,p);var g=k(b),E=k(g),c=k(E),m=k(c),A=k(m),D=S(m,2);{var B=L=>{var H=Qa(),ne=k(H);G(()=>z(ne,t.task.short_id)),C(L,H)};U(D,L=>{var H;(H=t.task)!=null&&H.short_id&&L(B)})}var w=S(c,2),x=S(E,2),j=k(x),O=S(k(j),2);lr(O);var J=S(j,2),$=S(k(J),2),fe=S(J,2),I=k(fe),Z=S(k(I),2);st(Z,21,()=>js,Cn,(L,H)=>{var ne=Xa(),h=k(ne),T={};G(()=>{z(h,a(H)),T!==(T=a(H))&&(ne.value=(ne.__value=a(H))??"")}),C(L,ne)});var K=S(I,2);{var ee=L=>{var H=Za(),ne=S(k(H),2),h=k(ne);h.value=h.__value="todo";var T=S(h);T.value=T.__value="in_progress";var Y=S(T);Y.value=Y.__value="blocked";var Q=S(Y);Q.value=Q.__value="done";var xe=S(Q);xe.value=xe.__value="cancelled",Pr(ne,()=>a(l),gn=>y(l,gn)),C(L,H)};U(K,L=>{a(u)&&L(ee)})}var ae=S(fe,2),ye=S(k(ae),2),Ie=S(ae,2),W=k(Ie),re=S(W,2),Se=k(re),ot=S(x,2);{var yt=L=>{var H=nl(),ne=S(k(H),2);st(ne,21,()=>a(o),h=>h.id,(h,T)=>{var Y=tl(),Q=k(Y),xe=k(Q),gn=S(Q,2),Ps=k(gn),_r=S(gn,2);{var As=bt=>{var Ft=$a(),pn=k(Ft);G(()=>z(pn,a(T).reasoning)),C(bt,Ft)};U(_r,bt=>{a(T).reasoning&&bt(As)})}var Ds=S(_r,2);{var Ns=bt=>{const Ft=se(()=>(()=>{try{return JSON.parse(a(T).alternatives)}catch{return null}})());var pn=ia(),Os=dn(pn);{var Is=Ln=>{var gr=el(),Rs=k(gr);G(Ls=>z(Rs,`Alternatives: ${Ls??""}`),[()=>a(Ft).join(", ")]),C(Ln,gr)};U(Os,Ln=>{a(Ft)&&a(Ft).length>0&&Ln(Is)})}C(bt,pn)};U(Ds,bt=>{a(T).alternatives&&bt(Ns)})}G(()=>{z(xe,a(T).title),z(Ps,a(T).decision)}),C(h,Y)}),C(L,H)};U(ot,L=>{a(u)&&a(o).length>0&&L(yt)})}G(()=>{z(A,a(u)?"Edit Task":"New Task"),z(Se,a(u)?"Save":"Create")}),X("click",b,_),X("click",w,function(...L){var H;(H=t.onClose)==null||H.apply(this,L)}),me("submit",x,d),sn(O,()=>a(r),L=>y(r,L)),sn($,()=>a(i),L=>y(i,L)),Pr(Z,()=>a(s),L=>y(s,L)),sn(ye,()=>a(f),L=>y(f,L)),X("click",W,function(...L){var H;(H=t.onClose)==null||H.apply(this,L)}),C(e,b),He()}lt(["click"]);var il=P('<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 al(e,t){Ue(t,!0);let n=_n(t,"confirmLabel",3,"Delete");function r(E){E.target.classList.contains("modal-backdrop")&&t.onCancel()}function i(E){E.key==="Escape"&&t.onCancel()}var s=il();me("keydown",pt,i);var l=k(s),f=k(l),o=k(f),u=S(f,2),d=k(u),_=S(u,2),p=k(_),b=S(p,2),g=k(b);G(()=>{z(o,t.title),z(d,t.message),z(g,n())}),X("click",s,r),X("click",p,function(...E){var c;(c=t.onCancel)==null||c.apply(this,E)}),X("click",b,function(...E){var c;(c=t.onConfirm)==null||c.apply(this,E)}),C(e,s),He()}lt(["click"]);var ll=P('<button class="clear-input svelte-dhotvj">&times;</button>'),ol=P("<button> </button>"),fl=P('<button><span class="tag-checkbox svelte-dhotvj"> </span> <span class="tag-name svelte-dhotvj"> </span></button>'),ul=P('<button class="tag-clear svelte-dhotvj">clear tags</button>'),cl=P('<div class="tag-dropdown svelte-dhotvj"><!> <!></div>'),vl=P('<div class="filter-section tag-dropdown-wrapper svelte-dhotvj"><span class="filter-label svelte-dhotvj">tags:</span> <button><!></button> <!></div>'),dl=P('<button class="clear-all svelte-dhotvj"> </button>'),hl=P('<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 _l(e,t){Ue(t,!0);let n=_n(t,"focusSearch",15,null),r=N(null),i=N(!1),s=N(null);Lt(()=>{n(()=>{var w;return(w=a(r))==null?void 0:w.focus()})});const l=se(()=>(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(w){w.key==="Escape"&&y(i,!1)}function u(w){a(s)&&!a(s).contains(w.target)&&y(i,!1)}var d=hl();me("click",pt,u),me("keydown",pt,o);var _=k(d),p=S(k(_),2);tr(p,w=>y(r,w),()=>a(r));var b=S(p,2);{var g=w=>{var x=ll();X("click",x,()=>t.onSearchChange("")),C(w,x)};U(b,w=>{t.searchQuery&&w(g)})}var E=S(_,2),c=S(k(E),2);st(c,21,()=>js,Cn,(w,x)=>{var j=ol();let O;var J=k(j);G($=>{O=rt(j,1,"chip svelte-dhotvj",null,O,$),Ss(j,`--chip-color: ${f[a(x)]??""}`),z(J,a(x))},[()=>({active:t.selectedPriorities.has(a(x))})]),X("click",j,()=>t.onPriorityToggle(a(x))),C(w,j)});var m=S(E,2);{var A=w=>{var x=vl(),j=S(k(x),2);let O;var J=k(j);{var $=K=>{var ee=xr();G(()=>z(ee,`[${t.selectedTags.size??""}] ▾`)),C(K,ee)},fe=K=>{var ee=xr("all ▾");C(K,ee)};U(J,K=>{t.selectedTags.size>0?K($):K(fe,!1)})}var I=S(j,2);{var Z=K=>{var ee=cl(),ae=k(ee);st(ae,17,()=>t.allTags,Cn,(W,re)=>{var Se=fl();let ot;var yt=k(Se),L=k(yt),H=S(yt,2),ne=k(H);G((h,T)=>{ot=rt(Se,1,"tag-option svelte-dhotvj",null,ot,h),z(L,T),z(ne,`#${a(re)??""}`)},[()=>({selected:t.selectedTags.has(a(re))}),()=>t.selectedTags.has(a(re))?"✓":" "]),X("click",Se,h=>{h.stopPropagation(),t.onTagToggle(a(re))}),C(W,Se)});var ye=S(ae,2);{var Ie=W=>{var re=ul();X("click",re,Se=>{Se.stopPropagation(),t.selectedTags.forEach(ot=>t.onTagToggle(ot))}),C(W,re)};U(ye,W=>{t.selectedTags.size>0&&W(Ie)})}C(K,ee)};U(I,K=>{a(i)&&K(Z)})}tr(x,K=>y(s,K),()=>a(s)),G(()=>O=rt(j,1,"dropdown-trigger svelte-dhotvj",null,O,{active:t.selectedTags.size>0})),X("click",j,K=>{K.stopPropagation(),y(i,!a(i))}),C(w,x)};U(m,w=>{t.allTags.length>0&&w(A)})}var D=S(m,2);{var B=w=>{var x=dl(),j=k(x);G(()=>z(j,`clear [${a(l)??""}]`)),X("click",x,function(...O){var J;(J=t.onClear)==null||J.apply(this,O)}),C(w,x)};U(D,w=>{a(l)>0&&w(B)})}G(()=>ya(p,t.searchQuery)),X("input",p,w=>t.onSearchChange(w.target.value)),C(e,d),He()}lt(["input","click"]);var gl=P('<div class="board-message svelte-x7v2jt">Loading tasks...</div>'),pl=P('<div class="board-message error svelte-x7v2jt"> <button class="svelte-x7v2jt">Retry</button></div>'),ml=P('<div class="board svelte-x7v2jt"></div>'),yl=P('<!> <div class="board-wrapper svelte-x7v2jt"><!></div> <!> <!>',1);function bl(e,t){Ue(t,!0);let n=_n(t,"triggerNewTask",3,!1),r=N(qe([])),i=N(!0),s=N(null),l=N(!1),f=N(null),o=N("todo"),u=N(!1),d=N(null),_=N(null),p=N(""),b=N(qe(new Set)),g=N(qe(new Set));const E=se(()=>()=>{const h=new Map;for(const T of a(r))T.parent_task_id&&h.set(T.parent_task_id,(h.get(T.parent_task_id)??0)+1);return h}),c=se(()=>()=>{const h=new Set;for(const T of a(r))if(T.tags)try{for(const Y of JSON.parse(T.tags))h.add(Y)}catch{}return[...h].sort()}),m=se(()=>()=>{let h=a(r);const T=a(p).trim().toLowerCase();return T&&(h=h.filter(Y=>Y.title.toLowerCase().includes(T)||(Y.description??"").toLowerCase().includes(T)||(Y.short_id??"").toLowerCase().includes(T))),a(b).size>0&&(h=h.filter(Y=>a(b).has(Y.priority))),a(g).size>0&&(h=h.filter(Y=>{if(!Y.tags)return!1;try{return JSON.parse(Y.tags).some(xe=>a(g).has(xe))}catch{return!1}})),h}),A=se(()=>Ma.map(h=>({...h,tasks:a(m)().filter(T=>T.status===h.status)})));function D(h){const T=new Set(a(b));T.has(h)?T.delete(h):T.add(h),y(b,T,!0)}function B(h){const T=new Set(a(g));T.has(h)?T.delete(h):T.add(h),y(g,T,!0)}function w(){y(p,""),y(b,new Set,!0),y(g,new Set,!0)}let x=N(null);function j(h){var Q;const T=h.target.tagName;T==="INPUT"||T==="TEXTAREA"||T==="SELECT"||h.ctrlKey||h.metaKey||h.altKey||(h.key==="n"||h.key==="N"?(h.preventDefault(),fe("todo")):h.key==="/"&&(h.preventDefault(),(Q=a(x))==null||Q()))}Lt(()=>{var h;n()&&(fe("todo"),(h=t.onNewTaskTriggered)==null||h.call(t))});async function O(){y(i,!0),y(s,null);try{y(r,await ct.getTasks(t.project.id),!0)}catch(h){y(s,h.message,!0)}finally{y(i,!1)}}Lt(()=>{t.project.id,O()});function J(h,T){y(_,T,!0),h.dataTransfer&&(h.dataTransfer.effectAllowed="move",h.dataTransfer.setData("text/plain",T.id))}async function $(h){if(!a(_)||a(_).status===h){y(_,null);return}const T=a(_),Y=T.status;y(_,null);const Q=a(r).findIndex(xe=>xe.id===T.id);Q!==-1&&(a(r)[Q]={...a(r)[Q],status:h});try{await ct.updateTask(T.id,{status:h})}catch(xe){Q!==-1&&(a(r)[Q]={...a(r)[Q],status:Y}),y(s,xe.message,!0)}}function fe(h){y(f,null),y(o,h,!0),y(l,!0)}function I(h){y(f,h,!0),y(l,!0)}async function Z(h){try{if(a(f)){const T=await ct.updateTask(a(f).id,{title:h.title,description:h.description||null,priority:h.priority,status:h.status,tags:h.tags.length>0?h.tags:null}),Y=a(r).findIndex(Q=>Q.id===a(f).id);Y!==-1&&(a(r)[Y]=T)}else{const T=await ct.createTask(t.project.id,{title:h.title,description:h.description||void 0,priority:h.priority,tags:h.tags.length>0?h.tags:void 0});y(r,[T,...a(r)],!0)}y(l,!1),y(f,null)}catch(T){y(s,T.message,!0)}}function K(h){y(d,h,!0),y(u,!0)}async function ee(){if(a(d))try{await ct.deleteTask(a(d).id),y(r,a(r).filter(h=>h.id!==a(d).id&&h.parent_task_id!==a(d).id),!0),y(u,!1),y(d,null)}catch(h){y(s,h.message,!0)}}var ae=yl();me("keydown",pt,j);var ye=dn(ae);{let h=se(()=>a(c)());_l(ye,{get allTags(){return a(h)},get searchQuery(){return a(p)},get selectedPriorities(){return a(b)},get selectedTags(){return a(g)},onSearchChange:T=>{y(p,T,!0)},onPriorityToggle:D,onTagToggle:B,onClear:w,get focusSearch(){return a(x)},set focusSearch(T){y(x,T,!0)}})}var Ie=S(ye,2),W=k(Ie);{var re=h=>{var T=gl();C(h,T)},Se=h=>{var T=pl(),Y=k(T),Q=S(Y);G(()=>z(Y,`${a(s)??""} `)),X("click",Q,()=>{y(s,null),O()}),C(h,T)},ot=h=>{var T=ml();st(T,21,()=>a(A),Y=>Y.status,(Y,Q)=>{{let xe=se(()=>a(E)());Wa(Y,{get status(){return a(Q).status},get label(){return a(Q).label},get tasks(){return a(Q).tasks},get subtaskCounts(){return a(xe)},onEdit:I,onDelete:K,onDragStart:J,onDrop:$,onAddTask:fe})}}),C(h,T)};U(W,h=>{a(i)?h(re):a(s)?h(Se,1):h(ot,!1)})}var yt=S(Ie,2);{var L=h=>{sl(h,{get task(){return a(f)},get projectId(){return t.project.id},get defaultStatus(){return a(o)},onSave:Z,onClose:()=>{y(l,!1),y(f,null)}})};U(yt,h=>{a(l)&&h(L)})}var H=S(yt,2);{var ne=h=>{al(h,{title:"Delete Task",get message(){return`Are you sure you want to delete "${a(d).title??""}"? This cannot be undone.`},onConfirm:ee,onCancel:()=>{y(u,!1),y(d,null)}})};U(H,h=>{a(u)&&a(d)&&h(ne)})}C(e,ae),He()}lt(["click"]);var wl=P('<div><span class="item-label svelte-1bm0yy4"> </span> <span class="item-hint svelte-1bm0yy4"> </span></div>'),kl=P('<div class="palette-empty svelte-1bm0yy4">no commands match</div>'),El=P('<div class="palette-backdrop svelte-1bm0yy4"><div class="palette svelte-1bm0yy4"><div class="palette-input-row svelte-1bm0yy4"><span class="palette-prompt svelte-1bm0yy4">&gt;</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 Tl(e,t){Ue(t,!0);let n=N(""),r=N(0),i=N(null);const s=se(()=>[{id:"new-task",label:"new task",hint:"create",action:()=>{t.onClose(),t.onNewTask()}},...t.projects.map(g=>({id:`project-${g.id}`,label:g.name,hint:g.slug?`switch → ${g.slug}`:"switch",action:()=>{t.onClose(),t.onSelectProject(g.id)}}))]),l=se(()=>()=>{const g=a(n).trim().toLowerCase();return g?a(s).filter(E=>E.label.toLowerCase().includes(g)||E.hint.toLowerCase().includes(g)):a(s)});Lt(()=>{a(l)(),y(r,0)});function f(g){var c;const E=a(l)();g.key==="ArrowDown"?(g.preventDefault(),y(r,Math.min(a(r)+1,E.length-1),!0)):g.key==="ArrowUp"?(g.preventDefault(),y(r,Math.max(a(r)-1,0),!0)):g.key==="Enter"?(g.preventDefault(),(c=E[a(r)])==null||c.action()):g.key==="Escape"&&t.onClose()}function o(g){g.target.classList.contains("palette-backdrop")&&t.onClose()}var u=El(),d=k(u),_=k(d),p=S(k(_),2);lr(p),tr(p,g=>y(i,g),()=>a(i));var b=S(_,2);st(b,23,()=>a(l)(),g=>g.id,(g,E,c)=>{var m=wl();let A;var D=k(m),B=k(D),w=S(D,2),x=k(w);G(()=>{A=rt(m,1,"palette-item svelte-1bm0yy4",null,A,{active:a(c)===a(r)}),z(B,a(E).label),z(x,a(E).hint)}),me("mouseenter",m,()=>{y(r,a(c),!0)}),X("click",m,()=>a(E).action()),C(g,m)},g=>{var E=kl();C(g,E)}),X("click",u,o),X("keydown",p,f),sn(p,()=>a(n),g=>y(n,g)),C(e,u),He()}lt(["click","keydown"]);var Sl=P('<div class="loading svelte-1n46o8q"><span class="prompt svelte-1n46o8q">&gt;</span> loading projects...</div>'),xl=P('<div class="error svelte-1n46o8q"><span class="err-prefix svelte-1n46o8q">[error]</span> </div>'),Cl=P('<div class="empty svelte-1n46o8q"><p class="empty-prompt svelte-1n46o8q">&gt; no projects found</p> <p class="empty-hint svelte-1n46o8q">// create a project using mindpm MCP tools to get started</p></div>'),jl=P('<div class="app-layout svelte-1n46o8q"><!> <div class="main svelte-1n46o8q"><!> <!></div></div>'),Pl=P("<!> <!>",1);function Al(e,t){Ue(t,!0);let n=N(qe([])),r=N(null),i=N(!0),s=N(null),l=N(!1),f=N(!1);const o=se(()=>a(n).find(w=>w.id===a(r))??null);async function u(){try{if(y(n,await ct.getProjects(),!0),a(n).length>0&&!a(r)){const w=new URLSearchParams(window.location.search).get("project"),x=w?a(n).find(j=>j.id===w||j.name===w):null;y(r,x?x.id:a(n)[0].id,!0)}}catch(w){y(s,w.message,!0)}finally{y(i,!1)}}function d(w){y(r,w,!0)}async function _(w,x){try{await ct.updateProject(w,{name:x});const j=a(n).findIndex(O=>O.id===w);j!==-1&&(a(n)[j]={...a(n)[j],name:x})}catch(j){y(s,j.message,!0)}}Lt(()=>{u()});function p(w){(w.ctrlKey||w.metaKey)&&w.key==="k"&&(w.preventDefault(),y(l,!a(l)))}var b=Pl();me("keydown",pt,p);var g=dn(b);{var E=w=>{Tl(w,{get projects(){return a(n)},onSelectProject:x=>{y(r,x,!0)},onNewTask:()=>{y(f,!0)},onClose:()=>{y(l,!1)}})};U(g,w=>{a(l)&&w(E)})}var c=S(g,2);{var m=w=>{var x=Sl();C(w,x)},A=w=>{var x=xl(),j=S(k(x));G(()=>z(j,` ${a(s)??""}`)),C(w,x)},D=w=>{var x=Cl();C(w,x)},B=w=>{var x=jl(),j=k(x);La(j,{get projects(){return a(n)},get selectedId(){return a(r)},onSelect:d});var O=S(j,2),J=k(O);ja(J,{get projects(){return a(n)},get selectedId(){return a(r)},onSelect:d,onRenamed:_});var $=S(J,2);{var fe=I=>{bl(I,{get project(){return a(o)},get triggerNewTask(){return a(f)},onNewTaskTriggered:()=>{y(f,!1)}})};U($,I=>{a(o)&&I(fe)})}C(w,x)};U(c,w=>{a(i)?w(m):a(s)?w(A,1):a(n).length===0?w(D,2):w(B,!1)})}C(e,b),He()}aa(Al,{target:document.getElementById("app")});