mindpm 1.2.14 → 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 (?, ?, ?, ?, ?)
@@ -780,12 +817,15 @@ var listProjects = async (_req, res) => {
780
817
  const db2 = getDb();
781
818
  const url = new URL(_req.url || "/", "http://localhost");
782
819
  const status = url.searchParams.get("status");
783
- let rows;
784
- if (status) {
785
- rows = db2.prepare("SELECT * FROM projects WHERE status = ? ORDER BY updated_at DESC").all(status);
786
- } else {
787
- rows = db2.prepare("SELECT * FROM projects ORDER BY updated_at DESC").all();
788
- }
820
+ const sql = `
821
+ SELECT p.*,
822
+ (SELECT COUNT(*) FROM tasks WHERE project_id = p.id AND status NOT IN ('done','cancelled')) AS active_task_count,
823
+ (SELECT COUNT(*) FROM tasks WHERE project_id = p.id AND status = 'done') AS done_task_count
824
+ FROM projects p
825
+ ${status ? "WHERE p.status = ?" : ""}
826
+ ORDER BY p.updated_at DESC
827
+ `;
828
+ const rows = status ? db2.prepare(sql).all(status) : db2.prepare(sql).all();
789
829
  sendJson(res, 200, rows);
790
830
  };
791
831
  var getProject = async (_req, res, params) => {
@@ -861,7 +901,7 @@ var createTask = async (req, res, params) => {
861
901
  sendJson(res, 404, { error: "Project not found" });
862
902
  return;
863
903
  }
864
- const id = generateId();
904
+ const id = generateId2();
865
905
  const priority = body.priority || "medium";
866
906
  const tags = Array.isArray(body.tags) ? JSON.stringify(body.tags) : null;
867
907
  const seqRow = db2.prepare("SELECT COALESCE(MAX(seq), 0) + 1 AS next_seq FROM tasks WHERE project_id = ?").get(params.pid);
@@ -879,6 +919,7 @@ var createTask = async (req, res, params) => {
879
919
  body.parent_task_id ?? null
880
920
  );
881
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 }));
882
923
  sendJson(res, 201, task);
883
924
  };
884
925
  var updateTask = async (req, res, params) => {
@@ -929,6 +970,15 @@ var updateTask = async (req, res, params) => {
929
970
  }
930
971
  sqlParams.push(params.id);
931
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
+ }
932
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);
933
983
  sendJson(res, 200, updated);
934
984
  };
@@ -951,6 +1001,13 @@ var deleteTask = async (_req, res, params) => {
951
1001
  deleteTransaction(params.id);
952
1002
  sendJson(res, 200, { message: "Task deleted" });
953
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
+ };
954
1011
  var listDecisions = async (_req, res, params) => {
955
1012
  const db2 = getDb();
956
1013
  const rows = db2.prepare("SELECT * FROM decisions WHERE project_id = ? ORDER BY created_at DESC").all(params.pid);
@@ -964,7 +1021,8 @@ var routes = [
964
1021
  { method: "GET", pattern: "/api/projects/:pid/tasks", handler: listTasks },
965
1022
  { method: "POST", pattern: "/api/projects/:pid/tasks", handler: createTask },
966
1023
  { method: "PATCH", pattern: "/api/tasks/:id", handler: updateTask },
967
- { 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 }
968
1026
  ];
969
1027
  async function handleApiRequest(req, res) {
970
1028
  const url = new URL(req.url || "/", "http://localhost");
@@ -1166,7 +1224,7 @@ function registerSessionTools(server2) {
1166
1224
  const decisionIds = [...new Set(
1167
1225
  recentActivity.filter((a) => a.type === "decision").map((a) => a.id)
1168
1226
  )];
1169
- const syntheticId = generateId();
1227
+ const syntheticId = generateId2();
1170
1228
  db2.prepare(
1171
1229
  `INSERT INTO sessions (id, project_id, summary, tasks_worked_on, decisions_made) VALUES (?, ?, ?, ?, ?)`
1172
1230
  ).run(
@@ -1232,7 +1290,7 @@ ${JSON.stringify(result, null, 2)}` }]
1232
1290
  return { content: [{ type: "text", text: project ? `Project "${project}" not found.` : "No active projects found." }], isError: true };
1233
1291
  }
1234
1292
  const db2 = getDb();
1235
- const id = generateId();
1293
+ const id = generateId2();
1236
1294
  db2.prepare(
1237
1295
  `INSERT INTO sessions (id, project_id, summary, tasks_worked_on, decisions_made, next_steps) VALUES (?, ?, ?, ?, ?, ?)`
1238
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-CQ9lQ6U2.js"></script>
8
- <link rel="stylesheet" crossorigin href="/assets/index-Y0GQecAc.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.14",
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,2 +0,0 @@
1
- var Oi=Object.defineProperty;var mr=e=>{throw TypeError(e)};var Ii=(e,t,n)=>t in e?Oi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Ue=(e,t,n)=>Ii(e,typeof t!="symbol"?t+"":t,n),Mn=(e,t,n)=>t.has(e)||mr("Cannot "+n);var v=(e,t,n)=>(Mn(e,t,"read from private field"),n?n.call(e):t.get(e)),F=(e,t,n)=>t.has(e)?mr("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),R=(e,t,n,r)=>(Mn(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n),ae=(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 s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const i of s)if(i.type==="childList")for(const a of i.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&r(a)}).observe(document,{childList:!0,subtree:!0});function n(s){const i={};return s.integrity&&(i.integrity=s.integrity),s.referrerPolicy&&(i.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?i.credentials="include":s.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function r(s){if(s.ep)return;s.ep=!0;const i=n(s);fetch(s.href,i)}})();const Bn=!1;var rr=Array.isArray,Ri=Array.prototype.indexOf,Gt=Array.prototype.includes,Dn=Array.from,Li=Object.defineProperty,zt=Object.getOwnPropertyDescriptor,Mi=Object.prototype,Fi=Array.prototype,zi=Object.getPrototypeOf,yr=Object.isExtensible;const qi=()=>{};function Bi(e){for(var t=0;t<e.length;t++)e[t]()}function Rr(){var e,t,n=new Promise((r,s)=>{e=r,t=s});return{promise:n,resolve:e,reject:t}}const ue=2,dn=4,An=8,Lr=1<<24,it=16,Ke=32,Mt=64,Kn=128,De=512,le=1024,ce=2048,Be=4096,Ee=8192,tt=16384,Ot=32768,Jt=65536,br=1<<17,Mr=1<<18,Zt=1<<19,Ki=1<<20,et=1<<25,It=65536,Un=1<<21,ir=1<<22,vt=1<<23,Pt=Symbol("$state"),Ui=Symbol("legacy props"),bt=new class extends Error{constructor(){super(...arguments);Ue(this,"name","StaleReactionError");Ue(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};var Nr;const Hi=!!((Nr=globalThis.document)!=null&&Nr.contentType)&&globalThis.document.contentType.includes("xml");function Vi(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function Yi(e,t,n){throw new Error("https://svelte.dev/e/each_key_duplicate")}function Gi(e){throw new Error("https://svelte.dev/e/effect_in_teardown")}function Ji(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function Wi(e){throw new Error("https://svelte.dev/e/effect_orphan")}function Qi(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function Xi(e){throw new Error("https://svelte.dev/e/props_invalid_value")}function Zi(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function $i(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function es(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function ts(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}const ns=1,rs=2,Fr=4,is=8,ss=16,as=1,ls=4,os=8,fs=16,us=1,cs=2,oe=Symbol(),zr="http://www.w3.org/1999/xhtml";function vs(){console.warn("https://svelte.dev/e/select_multiple_invalid_value")}function ds(){console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}function qr(e){return e===this.v}function hs(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}function Br(e){return!hs(e,this.v)}let _s=!1,Ne=null;function Wt(e){Ne=e}function We(e,t=!1,n){Ne={p:Ne,i:!1,c:null,e:null,s:e,x:null,l:null}}function Qe(e){var t=Ne,n=t.e;if(n!==null){t.e=null;for(var r of n)oi(r)}return t.i=!0,Ne=t.p,{}}function Kr(){return!0}let wt=[];function Ur(){var e=wt;wt=[],Bi(e)}function Ge(e){if(wt.length===0&&!tn){var t=wt;queueMicrotask(()=>{t===wt&&Ur()})}wt.push(e)}function gs(){for(;wt.length>0;)Ur()}function Hr(e){var t=B;if(t===null)return M.f|=vt,e;if((t.f&Ot)===0&&(t.f&dn)===0)throw e;ct(e,t)}function ct(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 ps=-7169;function Z(e,t){e.f=e.f&ps|t}function sr(e){(e.f&De)!==0||e.deps===null?Z(e,le):Z(e,Be)}function Vr(e){if(e!==null)for(const t of e)(t.f&ue)===0||(t.f&It)===0||(t.f^=It,Vr(t.deps))}function Yr(e,t,n){(e.f&ce)!==0?t.add(e):(e.f&Be)!==0&&n.add(e),Vr(e.deps),Z(e,le)}const yn=new Set;let N=null,Sn=null,fe=null,he=[],Nn=null,Hn=!1,tn=!1;var qt,Bt,Tt,Kt,fn,un,St,Xe,Ut,Te,Vn,Yn,Gn,Gr;const _r=class _r{constructor(){F(this,Te);Ue(this,"current",new Map);Ue(this,"previous",new Map);F(this,qt,new Set);F(this,Bt,new Set);F(this,Tt,0);F(this,Kt,0);F(this,fn,null);F(this,un,new Set);F(this,St,new Set);F(this,Xe,new Map);Ue(this,"is_fork",!1);F(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)Z(r,ce),Fe(r);for(r of n.m)Z(r,Be),Fe(r)}}process(t){var s;he=[],this.apply();var n=[],r=[];for(const i of t)ae(this,Te,Yn).call(this,i,n,r);if(ae(this,Te,Vn).call(this)){ae(this,Te,Gn).call(this,r),ae(this,Te,Gn).call(this,n);for(const[i,a]of v(this,Xe))Xr(i,a)}else{for(const i of v(this,qt))i();v(this,qt).clear(),v(this,Tt)===0&&ae(this,Te,Gr).call(this),Sn=this,N=null,wr(r),wr(n),Sn=null,(s=v(this,fn))==null||s.resolve()}fe=null}capture(t,n){n!==oe&&!this.previous.has(t)&&this.previous.set(t,n),(t.f&vt)===0&&(this.current.set(t,t.v),fe==null||fe.set(t,t.v))}activate(){N=this,this.apply()}deactivate(){N===this&&(N=null,fe=null)}flush(){if(this.activate(),he.length>0){if(Jr(),N!==null&&N!==this)return}else v(this,Tt)===0&&this.process([]);this.deactivate()}discard(){for(const t of v(this,Bt))t(this);v(this,Bt).clear()}increment(t){R(this,Tt,v(this,Tt)+1),t&&R(this,Kt,v(this,Kt)+1)}decrement(t){R(this,Tt,v(this,Tt)-1),t&&R(this,Kt,v(this,Kt)-1),!v(this,Ut)&&(R(this,Ut,!0),Ge(()=>{R(this,Ut,!1),ae(this,Te,Vn).call(this)?he.length>0&&this.flush():this.revive()}))}revive(){for(const t of v(this,un))v(this,St).delete(t),Z(t,ce),Fe(t);for(const t of v(this,St))Z(t,Be),Fe(t);this.flush()}oncommit(t){v(this,qt).add(t)}ondiscard(t){v(this,Bt).add(t)}settled(){return(v(this,fn)??R(this,fn,Rr())).promise}static ensure(){if(N===null){const t=N=new _r;yn.add(N),tn||Ge(()=>{N===t&&t.flush()})}return N}apply(){}};qt=new WeakMap,Bt=new WeakMap,Tt=new WeakMap,Kt=new WeakMap,fn=new WeakMap,un=new WeakMap,St=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^=le;for(var s=t.first;s!==null;){var i=s.f,a=(i&(Ke|Mt))!==0,f=a&&(i&le)!==0,o=f||(i&Ee)!==0||v(this,Xe).has(s);if(!o&&s.fn!==null){a?s.f^=le:(i&dn)!==0?n.push(s):_n(s)&&((i&it)!==0&&v(this,St).add(s),Xt(s));var u=s.first;if(u!==null){s=u;continue}}for(;s!==null;){var d=s.next;if(d!==null){s=d;break}s=s.parent}}},Gn=function(t){for(var n=0;n<t.length;n+=1)Yr(t[n],v(this,un),v(this,St))},Gr=function(){var s;if(yn.size>1){this.previous.clear();var t=fe,n=!0;for(const i of yn){if(i===this){n=!1;continue}const a=[];for(const[o,u]of this.current){if(i.current.has(o))if(n&&u!==i.current.get(o))i.current.set(o,u);else continue;a.push(o)}if(a.length===0)continue;const f=[...i.current.keys()].filter(o=>!this.current.has(o));if(f.length>0){var r=he;he=[];const o=new Set,u=new Map;for(const d of a)Wr(d,f,o,u);if(he.length>0){N=i,i.apply();for(const d of he)ae(s=i,Te,Yn).call(s,d,[],[]);i.deactivate()}he=r}}N=null,fe=t}yn.delete(this)};let dt=_r;function ms(e){var t=tn;tn=!0;try{for(var n;;){if(gs(),he.length===0&&(N==null||N.flush(),he.length===0))return Nn=null,n;Jr()}}finally{tn=t}}function Jr(){Hn=!0;var e=null;try{for(var t=0;he.length>0;){var n=dt.ensure();if(t++>1e3){var r,s;ys()}n.process(he),ht.clear()}}finally{he=[],Hn=!1,Nn=null}}function ys(){try{Qi()}catch(e){ct(e,Nn)}}let Re=null;function wr(e){var t=e.length;if(t!==0){for(var n=0;n<t;){var r=e[n++];if((r.f&(tt|Ee))===0&&_n(r)&&(Re=new Set,Xt(r),r.deps===null&&r.first===null&&r.nodes===null&&r.teardown===null&&r.ac===null&&ci(r),(Re==null?void 0:Re.size)>0)){ht.clear();for(const s of Re){if((s.f&(tt|Ee))!==0)continue;const i=[s];let a=s.parent;for(;a!==null;)Re.has(a)&&(Re.delete(a),i.push(a)),a=a.parent;for(let f=i.length-1;f>=0;f--){const o=i[f];(o.f&(tt|Ee))===0&&Xt(o)}}Re.clear()}}Re=null}}function Wr(e,t,n,r){if(!n.has(e)&&(n.add(e),e.reactions!==null))for(const s of e.reactions){const i=s.f;(i&ue)!==0?Wr(s,t,n,r):(i&(ir|it))!==0&&(i&ce)===0&&Qr(s,t,r)&&(Z(s,ce),Fe(s))}}function Qr(e,t,n){const r=n.get(e);if(r!==void 0)return r;if(e.deps!==null)for(const s of e.deps){if(Gt.call(t,s))return!0;if((s.f&ue)!==0&&Qr(s,t,n))return n.set(s,!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&(dn|An|Lr))!==0&&(e.f&Ot)===0){n.defer_effect(e);return}for(;t.parent!==null;){t=t.parent;var r=t.f;if(Hn&&t===B&&(r&it)!==0&&(r&Mr)===0&&(r&Ot)!==0)return;if((r&(Mt|Ke))!==0){if((r&le)===0)return;t.f^=le}}he.push(t)}function Xr(e,t){if(!((e.f&Ke)!==0&&(e.f&le)!==0)){(e.f&ce)!==0?t.d.push(e):(e.f&Be)!==0&&t.m.push(e),Z(e,le);for(var n=e.first;n!==null;)Xr(n,t),n=n.next}}function bs(e){let t=0,n=Rt(0),r;return()=>{or()&&(l(n),ur(()=>(t===0&&(r=Rn(()=>e(()=>nn(n)))),t+=1,()=>{Ge(()=>{t-=1,t===0&&(r==null||r(),r=void 0,nn(n))})})))}}var ws=Jt|Zt;function ks(e,t,n,r){new Es(e,t,n,r)}var je,nr,He,xt,de,Ve,we,Le,Ze,Ct,ut,Ht,Vt,Yt,$e,jn,re,Ts,Ss,xs,Jn,kn,En,Wn;class Es{constructor(t,n,r,s){F(this,re);Ue(this,"parent");Ue(this,"is_pending",!1);Ue(this,"transform_error");F(this,je);F(this,nr,null);F(this,He);F(this,xt);F(this,de);F(this,Ve,null);F(this,we,null);F(this,Le,null);F(this,Ze,null);F(this,Ct,0);F(this,ut,0);F(this,Ht,!1);F(this,Vt,new Set);F(this,Yt,new Set);F(this,$e,null);F(this,jn,bs(()=>(R(this,$e,Rt(v(this,Ct))),()=>{R(this,$e,null)})));var i;R(this,je,t),R(this,He,n),R(this,xt,a=>{var f=B;f.b=this,f.f|=Kn,r(a)}),this.parent=B.b,this.transform_error=s??((i=this.parent)==null?void 0:i.transform_error)??(a=>a),R(this,de,cr(()=>{ae(this,re,Jn).call(this)},ws))}defer_effect(t){Yr(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,He).pending}update_pending_count(t){ae(this,re,Wn).call(this,t),R(this,Ct,v(this,Ct)+t),!(!v(this,$e)||v(this,Ht))&&(R(this,Ht,!0),Ge(()=>{R(this,Ht,!1),v(this,$e)&&Qt(v(this,$e),v(this,Ct))}))}get_effect_pending(){return v(this,jn).call(this),l(v(this,$e))}error(t){var n=v(this,He).onerror;let r=v(this,He).failed;if(!n&&!r)throw t;v(this,Ve)&&(ge(v(this,Ve)),R(this,Ve,null)),v(this,we)&&(ge(v(this,we)),R(this,we,null)),v(this,Le)&&(ge(v(this,Le)),R(this,Le,null));var s=!1,i=!1;const a=()=>{if(s){ds();return}s=!0,i&&ts(),v(this,Le)!==null&&Dt(v(this,Le),()=>{R(this,Le,null)}),ae(this,re,En).call(this,()=>{dt.ensure(),ae(this,re,Jn).call(this)})},f=o=>{try{i=!0,n==null||n(o,a),i=!1}catch(u){ct(u,v(this,de)&&v(this,de).parent)}r&&R(this,Le,ae(this,re,En).call(this,()=>{dt.ensure();try{return Pe(()=>{var u=B;u.b=this,u.f|=Kn,r(v(this,je),()=>o,()=>a)})}catch(u){return ct(u,v(this,de).parent),null}}))};Ge(()=>{var o;try{o=this.transform_error(t)}catch(u){ct(u,v(this,de)&&v(this,de).parent);return}o!==null&&typeof o=="object"&&typeof o.then=="function"?o.then(f,u=>ct(u,v(this,de)&&v(this,de).parent)):f(o)})}}je=new WeakMap,nr=new WeakMap,He=new WeakMap,xt=new WeakMap,de=new WeakMap,Ve=new WeakMap,we=new WeakMap,Le=new WeakMap,Ze=new WeakMap,Ct=new WeakMap,ut=new WeakMap,Ht=new WeakMap,Vt=new WeakMap,Yt=new WeakMap,$e=new WeakMap,jn=new WeakMap,re=new WeakSet,Ts=function(){try{R(this,Ve,Pe(()=>v(this,xt).call(this,v(this,je))))}catch(t){this.error(t)}},Ss=function(t){const n=v(this,He).failed;n&&R(this,Le,Pe(()=>{n(v(this,je),()=>t,()=>()=>{})}))},xs=function(){const t=v(this,He).pending;t&&(this.is_pending=!0,R(this,we,Pe(()=>t(v(this,je)))),Ge(()=>{var n=R(this,Ze,document.createDocumentFragment()),r=nt();n.append(r),R(this,Ve,ae(this,re,En).call(this,()=>(dt.ensure(),Pe(()=>v(this,xt).call(this,r))))),v(this,ut)===0&&(v(this,je).before(n),R(this,Ze,null),Dt(v(this,we),()=>{R(this,we,null)}),ae(this,re,kn).call(this))}))},Jn=function(){try{if(this.is_pending=this.has_pending_snippet(),R(this,ut,0),R(this,Ct,0),R(this,Ve,Pe(()=>{v(this,xt).call(this,v(this,je))})),v(this,ut)>0){var t=R(this,Ze,document.createDocumentFragment());hi(v(this,Ve),t);const n=v(this,He).pending;R(this,we,Pe(()=>n(v(this,je))))}else ae(this,re,kn).call(this)}catch(n){this.error(n)}},kn=function(){this.is_pending=!1;for(const t of v(this,Vt))Z(t,ce),Fe(t);for(const t of v(this,Yt))Z(t,Be),Fe(t);v(this,Vt).clear(),v(this,Yt).clear()},En=function(t){var n=B,r=M,s=Ne;Je(v(this,de)),Oe(v(this,de)),Wt(v(this,de).ctx);try{return t()}catch(i){return Hr(i),null}finally{Je(n),Oe(r),Wt(s)}},Wn=function(t){var n;if(!this.has_pending_snippet()){this.parent&&ae(n=this.parent,re,Wn).call(n,t);return}R(this,ut,v(this,ut)+t),v(this,ut)===0&&(ae(this,re,kn).call(this),v(this,we)&&Dt(v(this,we),()=>{R(this,we,null)}),v(this,Ze)&&(v(this,je).before(v(this,Ze)),R(this,Ze,null)))};function Cs(e,t,n,r){const s=On;var i=e.filter(g=>!g.settled);if(n.length===0&&i.length===0){r(t.map(s));return}var a=B,f=js(),o=i.length===1?i[0].promise:i.length>1?Promise.all(i.map(g=>g.promise)):null;function u(g){f();try{r(g)}catch(p){(a.f&tt)===0&&ct(p,a)}Qn()}if(n.length===0){o.then(()=>u(t.map(s)));return}function d(){f(),Promise.all(n.map(g=>Ds(g))).then(g=>u([...t.map(s),...g])).catch(g=>ct(g,a))}o?o.then(d):d()}function js(){var e=B,t=M,n=Ne,r=N;return function(i=!0){Je(e),Oe(t),Wt(n),i&&(r==null||r.activate())}}function Qn(e=!0){Je(null),Oe(null),Wt(null),e&&(N==null||N.deactivate())}function Ps(){var e=B.b,t=N,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=ue|ce,n=M!==null&&(M.f&ue)!==0?M:null;return B!==null&&(B.f|=Zt),{ctx:Ne,deps:null,effects:null,equals:qr,f:t,fn:e,reactions:null,rv:0,v:oe,wv:0,parent:n??B,ac:null}}function Ds(e,t,n){B===null&&Vi();var s=void 0,i=Rt(oe),a=!M,f=new Map;return Hs(()=>{var p;var o=Rr();s=o.promise;try{Promise.resolve(e()).then(o.resolve,o.reject).finally(Qn)}catch(b){o.reject(b),Qn()}var u=N;if(a){var d=Ps();(p=f.get(u))==null||p.reject(bt),f.delete(u),f.set(u,o)}const g=(b,h=void 0)=>{if(u.activate(),h)h!==bt&&(i.f|=vt,Qt(i,h));else{(i.f&vt)!==0&&(i.f^=vt),Qt(i,b);for(const[w,c]of f){if(f.delete(w),w===u)break;c.reject(bt)}}d&&d()};o.promise.then(g,b=>g(null,b||"unknown"))}),fr(()=>{for(const o of f.values())o.reject(bt)}),new Promise(o=>{function u(d){function g(){d===s?o(i):u(s)}d.then(g,g)}u(s)})}function ne(e){const t=On(e);return _i(t),t}function Zr(e){const t=On(e);return t.equals=Br,t}function As(e){var t=e.effects;if(t!==null){e.effects=null;for(var n=0;n<t.length;n+=1)ge(t[n])}}function Ns(e){for(var t=e.parent;t!==null;){if((t.f&ue)===0)return(t.f&tt)===0?t:null;t=t.parent}return null}function ar(e){var t,n=B;Je(Ns(e));try{e.f&=~It,As(e),t=yi(e)}finally{Je(n)}return t}function $r(e){var t=ar(e);if(!e.equals(t)&&(e.wv=pi(),(!(N!=null&&N.is_fork)||e.deps===null)&&(e.v=t,e.deps===null))){Z(e,le);return}gt||(fe!==null?(or()||N!=null&&N.is_fork)&&fe.set(e,t):sr(e))}function Os(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(bt),r.teardown=qi,r.ac=null,ln(r,0),vr(r))}function ei(e){if(e.effects!==null)for(const t of e.effects)t.teardown&&Xt(t)}let Xn=new Set;const ht=new Map;let ti=!1;function Rt(e,t){var n={f:0,v:e,reactions:null,equals:qr,rv:0,wv:0};return n}function A(e,t){const n=Rt(e);return _i(n),n}function Is(e,t=!1,n=!0){const r=Rt(e);return t||(r.equals=Br),r}function y(e,t,n=!1){M!==null&&(!qe||(M.f&br)!==0)&&Kr()&&(M.f&(ue|it|ir|br))!==0&&(Ae===null||!Gt.call(Ae,e))&&es();let r=n?ze(t):t;return Qt(e,r)}function Qt(e,t){if(!e.equals(t)){var n=e.v;gt?ht.set(e,t):ht.set(e,n),e.v=t;var r=dt.ensure();if(r.capture(e,n),(e.f&ue)!==0){const s=e;(e.f&ce)!==0&&ar(s),sr(s)}e.wv=pi(),ni(e,ce),B!==null&&(B.f&le)!==0&&(B.f&(Ke|Mt))===0&&(Ce===null?Gs([e]):Ce.push(e)),!r.is_fork&&Xn.size>0&&!ti&&Rs()}return t}function Rs(){ti=!1;for(const e of Xn)(e.f&le)!==0&&Z(e,Be),_n(e)&&Xt(e);Xn.clear()}function nn(e){y(e,e.v+1)}function ni(e,t){var n=e.reactions;if(n!==null)for(var r=n.length,s=0;s<r;s++){var i=n[s],a=i.f,f=(a&ce)===0;if(f&&Z(i,t),(a&ue)!==0){var o=i;fe==null||fe.delete(o),(a&It)===0&&(a&De&&(i.f|=It),ni(o,Be))}else f&&((a&it)!==0&&Re!==null&&Re.add(i),Fe(i))}}function ze(e){if(typeof e!="object"||e===null||Pt in e)return e;const t=zi(e);if(t!==Mi&&t!==Fi)return e;var n=new Map,r=rr(e),s=A(0),i=At,a=f=>{if(At===i)return f();var o=M,u=At;Oe(null),Sr(i);var d=f();return Oe(o),Sr(u),d};return r&&n.set("length",A(e.length)),new Proxy(e,{defineProperty(f,o,u){(!("value"in u)||u.configurable===!1||u.enumerable===!1||u.writable===!1)&&Zi();var d=n.get(o);return d===void 0?a(()=>{var g=A(u.value);return n.set(o,g),g}):y(d,u.value,!0),!0},deleteProperty(f,o){var u=n.get(o);if(u===void 0){if(o in f){const d=a(()=>A(oe));n.set(o,d),nn(s)}}else y(u,oe),nn(s);return!0},get(f,o,u){var b;if(o===Pt)return e;var d=n.get(o),g=o in f;if(d===void 0&&(!g||(b=zt(f,o))!=null&&b.writable)&&(d=a(()=>{var h=ze(g?f[o]:oe),w=A(h);return w}),n.set(o,d)),d!==void 0){var p=l(d);return p===oe?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=l(d))}else if(u===void 0){var g=n.get(o),p=g==null?void 0:g.v;if(g!==void 0&&p!==oe)return{enumerable:!0,configurable:!0,value:p,writable:!0}}return u},has(f,o){var p;if(o===Pt)return!0;var u=n.get(o),d=u!==void 0&&u.v!==oe||Reflect.has(f,o);if(u!==void 0||B!==null&&(!d||(p=zt(f,o))!=null&&p.writable)){u===void 0&&(u=a(()=>{var b=d?ze(f[o]):oe,h=A(b);return h}),n.set(o,u));var g=l(u);if(g===oe)return!1}return d},set(f,o,u,d){var D;var g=n.get(o),p=o in f;if(r&&o==="length")for(var b=u;b<g.v;b+=1){var h=n.get(b+"");h!==void 0?y(h,oe):b in f&&(h=a(()=>A(oe)),n.set(b+"",h))}if(g===void 0)(!p||(D=zt(f,o))!=null&&D.writable)&&(g=a(()=>A(void 0)),y(g,ze(u)),n.set(o,g));else{p=g.v!==oe;var w=a(()=>ze(u));y(g,w)}var c=Reflect.getOwnPropertyDescriptor(f,o);if(c!=null&&c.set&&c.set.call(d,u),!p){if(r&&typeof o=="string"){var k=n.get("length"),O=Number(o);Number.isInteger(O)&&O>=k.v&&y(k,O+1)}nn(s)}return!0},ownKeys(f){l(s);var o=Reflect.ownKeys(f).filter(g=>{var p=n.get(g);return p===void 0||p.v!==oe});for(var[u,d]of n)d.v!==oe&&!(u in f)&&o.push(u);return o},setPrototypeOf(){$i()}})}function kr(e){try{if(e!==null&&typeof e=="object"&&Pt in e)return e[Pt]}catch{}return e}function Ls(e,t){return Object.is(kr(e),kr(t))}var _t,ri,ii,si;function Ms(){if(_t===void 0){_t=window,ri=/Firefox/.test(navigator.userAgent);var e=Element.prototype,t=Node.prototype,n=Text.prototype;ii=zt(t,"firstChild").get,si=zt(t,"nextSibling").get,yr(e)&&(e.__click=void 0,e.__className=void 0,e.__attributes=null,e.__style=void 0,e.__e=void 0),yr(n)&&(n.__t=void 0)}}function nt(e=""){return document.createTextNode(e)}function xn(e){return ii.call(e)}function hn(e){return si.call(e)}function T(e,t){return xn(e)}function an(e,t=!1){{var n=xn(e);return n instanceof Comment&&n.data===""?hn(n):n}}function x(e,t=1,n=!1){let r=e;for(;t--;)r=hn(r);return r}function Fs(e){e.textContent=""}function ai(){return!1}function zs(e,t,n){return document.createElementNS(zr,e,void 0)}function lr(e,t){{const n=document.body;e.autofocus=!0,Ge(()=>{document.activeElement===n&&e.focus()})}}let Er=!1;function qs(){Er||(Er=!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=M,n=B;Oe(null),Je(null);try{return e()}finally{Oe(t),Je(n)}}function li(e,t,n,r=n){e.addEventListener(t,()=>In(n));const s=e.__on_r;s?e.__on_r=()=>{s(),r(!0)}:e.__on_r=()=>r(!0),qs()}function Bs(e){B===null&&(M===null&&Wi(),Ji()),gt&&Gi()}function Ks(e,t){var n=t.last;n===null?t.last=t.first=e:(n.next=e,e.prev=n,t.last=e)}function st(e,t,n){var r=B;r!==null&&(r.f&Ee)!==0&&(e|=Ee);var s={ctx:Ne,deps:null,nodes:null,f:e|ce|De,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(s)}catch(f){throw ge(s),f}else t!==null&&Fe(s);var i=s;if(n&&i.deps===null&&i.teardown===null&&i.nodes===null&&i.first===i.last&&(i.f&Zt)===0&&(i=i.first,(e&it)!==0&&(e&Jt)!==0&&i!==null&&(i.f|=Jt)),i!==null&&(i.parent=r,r!==null&&Ks(i,r),M!==null&&(M.f&ue)!==0&&(e&Mt)===0)){var a=M;(a.effects??(a.effects=[])).push(i)}return s}function or(){return M!==null&&!qe}function fr(e){const t=st(An,null,!1);return Z(t,le),t.teardown=e,t}function Lt(e){Bs();var t=B.f,n=!M&&(t&Ke)!==0&&(t&Ot)===0;if(n){var r=Ne;(r.e??(r.e=[])).push(e)}else return oi(e)}function oi(e){return st(dn|Ki,e,!1)}function Us(e){dt.ensure();const t=st(Mt|Zt,e,!0);return(n={})=>new Promise(r=>{n.outro?Dt(t,()=>{ge(t),r(void 0)}):(ge(t),r(void 0))})}function fi(e){return st(dn,e,!1)}function Hs(e){return st(ir|Zt,e,!0)}function ur(e,t=0){return st(An|t,e,!0)}function W(e,t=[],n=[],r=[]){Cs(r,t,n,s=>{st(An,()=>e(...s.map(l)),!0)})}function cr(e,t=0){var n=st(it|t,e,!0);return n}function Pe(e){return st(Ke|Zt,e,!0)}function ui(e){var t=e.teardown;if(t!==null){const n=gt,r=M;Tr(!0),Oe(null);try{t.call(null)}finally{Tr(n),Oe(r)}}}function vr(e,t=!1){var n=e.first;for(e.first=e.last=null;n!==null;){const s=n.ac;s!==null&&In(()=>{s.abort(bt)});var r=n.next;(n.f&Mt)!==0?n.parent=null:ge(n,t),n=r}}function Vs(e){for(var t=e.first;t!==null;){var n=t.next;(t.f&Ke)===0&&ge(t),t=n}}function ge(e,t=!0){var n=!1;(t||(e.f&Mr)!==0)&&e.nodes!==null&&e.nodes.end!==null&&(Ys(e.nodes.start,e.nodes.end),n=!0),vr(e,t&&!n),ln(e,0),Z(e,tt);var r=e.nodes&&e.nodes.t;if(r!==null)for(const i of r)i.stop();ui(e);var s=e.parent;s!==null&&s.first!==null&&ci(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=null}function Ys(e,t){for(;e!==null;){var n=e===t?null:hn(e);e.remove(),e=n}}function ci(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=[];vi(e,r,!0);var s=()=>{n&&ge(e),t&&t()},i=r.length;if(i>0){var a=()=>--i||s();for(var f of r)f.out(a)}else s()}function vi(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 s=e.first;s!==null;){var i=s.next,a=(s.f&Jt)!==0||(s.f&Ke)!==0&&(e.f&it)!==0;vi(s,t,a?n:!1),s=i}}}function dr(e){di(e,!0)}function di(e,t){if((e.f&Ee)!==0){e.f^=Ee,(e.f&le)===0&&(Z(e,ce),Fe(e));for(var n=e.first;n!==null;){var r=n.next,s=(n.f&Jt)!==0||(n.f&Ke)!==0;di(n,s?t:!1),n=r}var i=e.nodes&&e.nodes.t;if(i!==null)for(const a of i)(a.is_global||t)&&a.in()}}function hi(e,t){if(e.nodes)for(var n=e.nodes.start,r=e.nodes.end;n!==null;){var s=n===r?null:hn(n);t.append(n),n=s}}let Tn=!1,gt=!1;function Tr(e){gt=e}let M=null,qe=!1;function Oe(e){M=e}let B=null;function Je(e){B=e}let Ae=null;function _i(e){M!==null&&(Ae===null?Ae=[e]:Ae.push(e))}let _e=null,be=0,Ce=null;function Gs(e){Ce=e}let gi=1,kt=0,At=kt;function Sr(e){At=e}function pi(){return++gi}function _n(e){var t=e.f;if((t&ce)!==0)return!0;if(t&ue&&(e.f&=~It),(t&Be)!==0){for(var n=e.deps,r=n.length,s=0;s<r;s++){var i=n[s];if(_n(i)&&$r(i),i.wv>e.wv)return!0}(t&De)!==0&&fe===null&&Z(e,le)}return!1}function mi(e,t,n=!0){var r=e.reactions;if(r!==null&&!(Ae!==null&&Gt.call(Ae,e)))for(var s=0;s<r.length;s++){var i=r[s];(i.f&ue)!==0?mi(i,t,!1):t===i&&(n?Z(i,ce):(i.f&le)!==0&&Z(i,Be),Fe(i))}}function yi(e){var w;var t=_e,n=be,r=Ce,s=M,i=Ae,a=Ne,f=qe,o=At,u=e.f;_e=null,be=0,Ce=null,M=(u&(Ke|Mt))===0?e:null,Ae=null,Wt(e.ctx),qe=!1,At=++kt,e.ac!==null&&(In(()=>{e.ac.abort(bt)}),e.ac=null);try{e.f|=Un;var d=e.fn,g=d();e.f|=Ot;var p=e.deps,b=N==null?void 0:N.is_fork;if(_e!==null){var h;if(b||ln(e,be),p!==null&&be>0)for(p.length=be+_e.length,h=0;h<_e.length;h++)p[be+h]=_e[h];else e.deps=p=_e;if(or()&&(e.f&De)!==0)for(h=be;h<p.length;h++)((w=p[h]).reactions??(w.reactions=[])).push(e)}else!b&&p!==null&&be<p.length&&(ln(e,be),p.length=be);if(Kr()&&Ce!==null&&!qe&&p!==null&&(e.f&(ue|Be|ce))===0)for(h=0;h<Ce.length;h++)mi(Ce[h],e);if(s!==null&&s!==e){if(kt++,s.deps!==null)for(let c=0;c<n;c+=1)s.deps[c].rv=kt;if(t!==null)for(const c of t)c.rv=kt;Ce!==null&&(r===null?r=Ce:r.push(...Ce))}return(e.f&vt)!==0&&(e.f^=vt),g}catch(c){return Hr(c)}finally{e.f^=Un,_e=t,be=n,Ce=r,M=s,Ae=i,Wt(a),qe=f,At=o}}function Js(e,t){let n=t.reactions;if(n!==null){var r=Ri.call(n,e);if(r!==-1){var s=n.length-1;s===0?n=t.reactions=null:(n[r]=n[s],n.pop())}}if(n===null&&(t.f&ue)!==0&&(_e===null||!Gt.call(_e,t))){var i=t;(i.f&De)!==0&&(i.f^=De,i.f&=~It),sr(i),Os(i),ln(i,0)}}function ln(e,t){var n=e.deps;if(n!==null)for(var r=t;r<n.length;r++)Js(e,n[r])}function Xt(e){var t=e.f;if((t&tt)===0){Z(e,le);var n=B,r=Tn;B=e,Tn=!0;try{(t&(it|Lr))!==0?Vs(e):vr(e),ui(e);var s=yi(e);e.teardown=typeof s=="function"?s:null,e.wv=gi;var i;Bn&&_s&&(e.f&ce)!==0&&e.deps}finally{Tn=r,B=n}}}async function Ws(){await Promise.resolve(),ms()}function l(e){var t=e.f,n=(t&ue)!==0;if(M!==null&&!qe){var r=B!==null&&(B.f&tt)!==0;if(!r&&(Ae===null||!Gt.call(Ae,e))){var s=M.deps;if((M.f&Un)!==0)e.rv<kt&&(e.rv=kt,_e===null&&s!==null&&s[be]===e?be++:_e===null?_e=[e]:_e.push(e));else{(M.deps??(M.deps=[])).push(e);var i=e.reactions;i===null?e.reactions=[M]:Gt.call(i,M)||i.push(M)}}}if(gt&&ht.has(e))return ht.get(e);if(n){var a=e;if(gt){var f=a.v;return((a.f&le)===0&&a.reactions!==null||wi(a))&&(f=ar(a)),ht.set(a,f),f}var o=(a.f&De)===0&&!qe&&M!==null&&(Tn||(M.f&De)!==0),u=(a.f&Ot)===0;_n(a)&&(o&&(a.f|=De),$r(a)),o&&!u&&(ei(a),bi(a))}if(fe!=null&&fe.has(e))return fe.get(e);if((e.f&vt)!==0)throw e.v;return e.v}function bi(e){if(e.f|=De,e.deps!==null)for(const t of e.deps)(t.reactions??(t.reactions=[])).push(e),(t.f&ue)!==0&&(t.f&De)===0&&(ei(t),bi(t))}function wi(e){if(e.v===oe)return!0;if(e.deps===null)return!1;for(const t of e.deps)if(ht.has(t)||(t.f&ue)!==0&&wi(t))return!0;return!1}function Rn(e){var t=qe;try{return qe=!0,e()}finally{qe=t}}const Qs=["touchstart","touchmove"];function Xs(e){return Qs.includes(e)}const Et=Symbol("events"),ki=new Set,Zn=new Set;function Zs(e,t,n,r={}){function s(i){if(r.capture||$n.call(t,i),!i.cancelBubble)return In(()=>n==null?void 0:n.call(this,i))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?Ge(()=>{t.addEventListener(e,s,r)}):t.addEventListener(e,s,r),s}function pe(e,t,n,r,s){var i={capture:r,passive:s},a=Zs(e,t,n,i);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&fr(()=>{t.removeEventListener(e,a,i)})}function Q(e,t,n){(t[Et]??(t[Et]={}))[e]=n}function pt(e){for(var t=0;t<e.length;t++)ki.add(e[t]);for(var n of Zn)n(e)}let xr=null;function $n(e){var c,k;var t=this,n=t.ownerDocument,r=e.type,s=((c=e.composedPath)==null?void 0:c.call(e))||[],i=s[0]||e.target;xr=e;var a=0,f=xr===e&&e[Et];if(f){var o=s.indexOf(f);if(o!==-1&&(t===document||t===window)){e[Et]=t;return}var u=s.indexOf(t);if(u===-1)return;o<=u&&(a=o)}if(i=s[a]||e.target,i!==t){Li(e,"currentTarget",{configurable:!0,get(){return i||n}});var d=M,g=B;Oe(null),Je(null);try{for(var p,b=[];i!==null;){var h=i.assignedSlot||i.parentNode||i.host||null;try{var w=(k=i[Et])==null?void 0:k[r];w!=null&&(!i.disabled||e.target===i)&&w.call(i,e)}catch(O){p?b.push(O):p=O}if(e.cancelBubble||h===t||h===null)break;i=h}if(p){for(let O of b)queueMicrotask(()=>{throw O});throw p}}finally{e[Et]=t,delete e.currentTarget,Oe(d),Je(g)}}}var Or;const Fn=((Or=globalThis==null?void 0:globalThis.window)==null?void 0:Or.trustedTypes)&&globalThis.window.trustedTypes.createPolicy("svelte-trusted-html",{createHTML:e=>e});function $s(e){return(Fn==null?void 0:Fn.createHTML(e))??e}function ea(e){var t=zs("template");return t.innerHTML=$s(e.replaceAll("<!>","<!---->")),t.content}function Cn(e,t){var n=B;n.nodes===null&&(n.nodes={start:e,end:t,a:null,t:null})}function P(e,t){var n=(t&us)!==0,r=(t&cs)!==0,s,i=!e.startsWith("<!>");return()=>{s===void 0&&(s=ea(i?e:"<!>"+e),n||(s=xn(s)));var a=r||ri?document.importNode(s,!0):s.cloneNode(!0);if(n){var f=xn(a),o=a.lastChild;Cn(f,o)}else Cn(a,a);return a}}function Cr(e=""){{var t=nt(e+"");return Cn(t,t),t}}function ta(){var e=document.createDocumentFragment(),t=document.createComment(""),n=nt();return e.append(t,n),Cn(t,n),e}function j(e,t){e!==null&&e.before(t)}function V(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 na(e,t){return ra(e,t)}const bn=new Map;function ra(e,{target:t,anchor:n,props:r={},events:s,context:i,intro:a=!0,transformError:f}){Ms();var o=void 0,u=Us(()=>{var d=n??t.appendChild(nt());ks(d,{pending:()=>{}},b=>{We({});var h=Ne;i&&(h.c=i),s&&(r.$$events=s),o=e(b,r)||{},Qe()},f);var g=new Set,p=b=>{for(var h=0;h<b.length;h++){var w=b[h];if(!g.has(w)){g.add(w);var c=Xs(w);for(const D of[t,document]){var k=bn.get(D);k===void 0&&(k=new Map,bn.set(D,k));var O=k.get(w);O===void 0?(D.addEventListener(w,$n,{passive:c}),k.set(w,1)):k.set(w,O+1)}}}};return p(Dn(ki)),Zn.add(p),()=>{var c;for(var b of g)for(const k of[t,document]){var h=bn.get(k),w=h.get(b);--w==0?(k.removeEventListener(b,$n),h.delete(b),h.size===0&&bn.delete(k)):h.set(b,w)}Zn.delete(p),d!==n&&((c=d.parentNode)==null||c.removeChild(d))}});return ia.set(o,u),o}let ia=new WeakMap;var Me,Ye,ke,jt,cn,vn,Pn;class sa{constructor(t,n=!0){Ue(this,"anchor");F(this,Me,new Map);F(this,Ye,new Map);F(this,ke,new Map);F(this,jt,new Set);F(this,cn,!0);F(this,vn,()=>{var t=N;if(v(this,Me).has(t)){var n=v(this,Me).get(t),r=v(this,Ye).get(n);if(r)dr(r),v(this,jt).delete(n);else{var s=v(this,ke).get(n);s&&(v(this,Ye).set(n,s.effect),v(this,ke).delete(n),s.fragment.lastChild.remove(),this.anchor.before(s.fragment),r=s.effect)}for(const[i,a]of v(this,Me)){if(v(this,Me).delete(i),i===t)break;const f=v(this,ke).get(a);f&&(ge(f.effect),v(this,ke).delete(a))}for(const[i,a]of v(this,Ye)){if(i===n||v(this,jt).has(i))continue;const f=()=>{if(Array.from(v(this,Me).values()).includes(i)){var u=document.createDocumentFragment();hi(a,u),u.append(nt()),v(this,ke).set(i,{effect:a,fragment:u})}else ge(a);v(this,jt).delete(i),v(this,Ye).delete(i)};v(this,cn)||!r?(v(this,jt).add(i),Dt(a,f,!1)):f()}}});F(this,Pn,t=>{v(this,Me).delete(t);const n=Array.from(v(this,Me).values());for(const[r,s]of v(this,ke))n.includes(r)||(ge(s.effect),v(this,ke).delete(r))});this.anchor=t,R(this,cn,n)}ensure(t,n){var r=N,s=ai();if(n&&!v(this,Ye).has(t)&&!v(this,ke).has(t))if(s){var i=document.createDocumentFragment(),a=nt();i.append(a),v(this,ke).set(t,{effect:Pe(()=>n(a)),fragment:i})}else v(this,Ye).set(t,Pe(()=>n(this.anchor)));if(v(this,Me).set(r,t),s){for(const[f,o]of v(this,Ye))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,vn)),r.ondiscard(v(this,Pn))}else v(this,vn).call(this)}}Me=new WeakMap,Ye=new WeakMap,ke=new WeakMap,jt=new WeakMap,cn=new WeakMap,vn=new WeakMap,Pn=new WeakMap;function G(e,t,n=!1){var r=new sa(e),s=n?Jt:0;function i(a,f){r.ensure(a,f)}cr(()=>{var a=!1;t((f,o=0)=>{a=!0,i(o,f)}),a||i(!1,null)},s)}function on(e,t){return t}function aa(e,t,n){for(var r=[],s=t.length,i,a=t.length,f=0;f<s;f++){let g=t[f];Dt(g,()=>{if(i){if(i.pending.delete(g),i.done.add(g),i.pending.size===0){var p=e.outrogroups;er(Dn(i.done)),p.delete(i),p.size===0&&(e.outrogroups=null)}}else a-=1},!1)}if(a===0){var o=r.length===0&&n!==null;if(o){var u=n,d=u.parentNode;Fs(d),d.append(u),e.items.clear()}er(t,!o)}else i={pending:new Set(t),done:new Set},(e.outrogroups??(e.outrogroups=new Set)).add(i)}function er(e,t=!0){for(var n=0;n<e.length;n++)ge(e[n],t)}var jr;function rt(e,t,n,r,s,i=null){var a=e,f=new Map,o=(t&Fr)!==0;if(o){var u=e;a=u.appendChild(nt())}var d=null,g=Zr(()=>{var k=n();return rr(k)?k:k==null?[]:Dn(k)}),p,b=!0;function h(){c.fallback=d,la(c,p,a,t,r),d!==null&&(p.length===0?(d.f&et)===0?dr(d):(d.f^=et,en(d,null,a)):Dt(d,()=>{d=null}))}var w=cr(()=>{p=l(g);for(var k=p.length,O=new Set,D=N,K=ai(),m=0;m<k;m+=1){var S=p[m],C=r(S,m),z=b?null:f.get(C);z?(z.v&&Qt(z.v,S),z.i&&Qt(z.i,m),K&&D.unskip_effect(z.e)):(z=oa(f,b?a:jr??(jr=nt()),S,C,m,s,t,n),b||(z.e.f|=et),f.set(C,z)),O.add(C)}if(k===0&&i&&!d&&(b?d=Pe(()=>i(a)):(d=Pe(()=>i(jr??(jr=nt()))),d.f|=et)),k>O.size&&Yi(),!b)if(K){for(const[ee,ie]of f)O.has(ee)||D.skip_effect(ie.e);D.oncommit(h),D.ondiscard(()=>{})}else h();l(g)}),c={effect:w,items:f,outrogroups:null,fallback:d};b=!1}function $t(e){for(;e!==null&&(e.f&Ke)===0;)e=e.next;return e}function la(e,t,n,r,s){var ie,me,L,X,U,se,ve,ye,Ie;var i=(r&is)!==0,a=t.length,f=e.items,o=$t(e.effect.first),u,d=null,g,p=[],b=[],h,w,c,k;if(i)for(k=0;k<a;k+=1)h=t[k],w=s(h,k),c=f.get(w).e,(c.f&et)===0&&((me=(ie=c.nodes)==null?void 0:ie.a)==null||me.measure(),(g??(g=new Set)).add(c));for(k=0;k<a;k+=1){if(h=t[k],w=s(h,k),c=f.get(w).e,e.outrogroups!==null)for(const Y of e.outrogroups)Y.pending.delete(c),Y.done.delete(c);if((c.f&et)!==0)if(c.f^=et,c===o)en(c,null,n);else{var O=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),lt(e,d,c),lt(e,c,O),en(c,O,n),d=c,p=[],b=[],o=$t(d.next);continue}if((c.f&Ee)!==0&&(dr(c),i&&((X=(L=c.nodes)==null?void 0:L.a)==null||X.unfix(),(g??(g=new Set)).delete(c))),c!==o){if(u!==void 0&&u.has(c)){if(p.length<b.length){var D=b[0],K;d=D.prev;var m=p[0],S=p[p.length-1];for(K=0;K<p.length;K+=1)en(p[K],D,n);for(K=0;K<b.length;K+=1)u.delete(b[K]);lt(e,m.prev,S.next),lt(e,d,m),lt(e,S,D),o=D,d=S,k-=1,p=[],b=[]}else u.delete(c),en(c,o,n),lt(e,c.prev,c.next),lt(e,c,d===null?e.effect.first:d.next),lt(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 Y of e.outrogroups)Y.pending.size===0&&(er(Dn(Y.done)),(U=e.outrogroups)==null||U.delete(Y));e.outrogroups.size===0&&(e.outrogroups=null)}if(o!==null||u!==void 0){var C=[];if(u!==void 0)for(c of u)(c.f&Ee)===0&&C.push(c);for(;o!==null;)(o.f&Ee)===0&&o!==e.fallback&&C.push(o),o=$t(o.next);var z=C.length;if(z>0){var ee=(r&Fr)!==0&&a===0?n:null;if(i){for(k=0;k<z;k+=1)(ve=(se=C[k].nodes)==null?void 0:se.a)==null||ve.measure();for(k=0;k<z;k+=1)(Ie=(ye=C[k].nodes)==null?void 0:ye.a)==null||Ie.fix()}aa(e,C,ee)}}i&&Ge(()=>{var Y,te;if(g!==void 0)for(c of g)(te=(Y=c.nodes)==null?void 0:Y.a)==null||te.apply()})}function oa(e,t,n,r,s,i,a,f){var o=(a&ns)!==0?(a&ss)===0?Is(n,!1,!1):Rt(n):null,u=(a&rs)!==0?Rt(s):null;return{v:o,i:u,e:Pe(()=>(i(t,o??n,u??s,f),()=>{e.delete(r)}))}}function en(e,t,n){if(e.nodes)for(var r=e.nodes.start,s=e.nodes.end,i=t&&(t.f&et)===0?t.nodes.start:n;r!==null;){var a=hn(r);if(i.before(r),r===s)return;r=a}}function lt(e,t,n){t===null?e.effect.first=n:t.next=n,n===null?e.effect.last=t:n.prev=t}const Pr=[...`
2
- \r\f \v\uFEFF`];function fa(e,t,n){var r=e==null?"":""+e;if(t&&(r=r?r+" "+t:t),n){for(var s of Object.keys(n))if(n[s])r=r?r+" "+s:s;else if(r.length)for(var i=s.length,a=0;(a=r.indexOf(s,a))>=0;){var f=a+i;(a===0||Pr.includes(r[a-1]))&&(f===r.length||Pr.includes(r[f]))?r=(a===0?"":r.substring(0,a))+r.substring(f+1):a=f}}return r===""?null:r}function ua(e,t){return e==null?null:String(e)}function Nt(e,t,n,r,s,i){var a=e.__className;if(a!==n||a===void 0){var f=fa(n,r,i);f==null?e.removeAttribute("class"):e.className=f,e.__className=n}else if(i&&s!==i)for(var o in i){var u=!!i[o];(s==null||u!==!!s[o])&&e.classList.toggle(o,u)}return i}function ca(e,t,n,r){var s=e.__style;if(s!==t){var i=ua(t);i==null?e.removeAttribute("style"):e.style.cssText=i,e.__style=t}return r}function hr(e,t,n=!1){if(e.multiple){if(t==null)return;if(!rr(t))return vs();for(var r of e.options)r.selected=t.includes(rn(r));return}for(r of e.options){var s=rn(r);if(Ls(s,t)){r.selected=!0;return}}(!n||t!==void 0)&&(e.selectedIndex=-1)}function Ei(e){var t=new MutationObserver(()=>{hr(e,e.__value)});t.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),fr(()=>{t.disconnect()})}function Dr(e,t,n=t){var r=new WeakSet,s=!0;li(e,"change",i=>{var a=i?"[selected]":":checked",f;if(e.multiple)f=[].map.call(e.querySelectorAll(a),rn);else{var o=e.querySelector(a)??e.querySelector("option:not([disabled])");f=o&&rn(o)}n(f),N!==null&&r.add(N)}),fi(()=>{var i=t();if(e===document.activeElement){var a=Sn??N;if(r.has(a))return}if(hr(e,i,s),s&&i===void 0){var f=e.querySelector(":checked");f!==null&&(i=rn(f),n(i))}e.__value=i,s=!1}),Ei(e)}function rn(e){return"__value"in e?e.__value:e.value}const va=Symbol("is custom element"),da=Symbol("is html"),ha=Hi?"progress":"PROGRESS";function _a(e,t){var n=ga(e);n.value===(n.value=t??void 0)||e.value===t&&(t!==0||e.nodeName!==ha)||(e.value=t??"")}function ga(e){return e.__attributes??(e.__attributes={[va]:e.nodeName.includes("-"),[da]:e.namespaceURI===zr})}function sn(e,t,n=t){var r=new WeakSet;li(e,"input",async s=>{var i=s?e.defaultValue:e.value;if(i=zn(e)?qn(i):i,n(i),N!==null&&r.add(N),await Ws(),i!==(i=t())){var a=e.selectionStart,f=e.selectionEnd,o=e.value.length;if(e.value=i??"",f!==null){var u=e.value.length;a===f&&f===o&&u>o?(e.selectionStart=u,e.selectionEnd=u):(e.selectionStart=a,e.selectionEnd=Math.min(f,u))}}}),Rn(t)==null&&e.value&&(n(zn(e)?qn(e.value):e.value),N!==null&&r.add(N)),ur(()=>{var s=t();if(e===document.activeElement){var i=Sn??N;if(r.has(i))return}zn(e)&&s===qn(e.value)||e.type==="date"&&!s&&!e.value||s!==e.value&&(e.value=s??"")})}function zn(e){var t=e.type;return t==="number"||t==="range"}function qn(e){return e===""?null:+e}function Ar(e,t){return e===t||(e==null?void 0:e[Pt])===t}function tr(e={},t,n,r){return fi(()=>{var s,i;return ur(()=>{s=i,i=[],Rn(()=>{e!==n(...i)&&(t(e,...i),s&&Ar(n(...s),e)&&t(null,...s))})}),()=>{Ge(()=>{i&&Ar(n(...i),e)&&t(null,...i)})}}),e}let wn=!1;function pa(e){var t=wn;try{return wn=!1,[e(),wn]}finally{wn=t}}function gn(e,t,n,r){var O;var s=(n&os)!==0,i=(n&fs)!==0,a=r,f=!0,o=()=>(f&&(f=!1,a=i?Rn(r):r),a),u;if(s){var d=Pt in e||Ui in e;u=((O=zt(e,t))==null?void 0:O.set)??(d&&t in e?D=>e[t]=D:void 0)}var g,p=!1;s?[g,p]=pa(()=>e[t]):g=e[t],g===void 0&&r!==void 0&&(g=o(),u&&(Xi(),u(g)));var b;if(b=()=>{var D=e[t];return D===void 0?o():(f=!0,D)},(n&ls)===0)return b;if(u){var h=e.$$legacy;return(function(D,K){return arguments.length>0?((!K||h||p)&&u(K?b():D),D):b()})}var w=!1,c=((n&as)!==0?On:Zr)(()=>(w=!1,b()));s&&l(c);var k=B;return(function(D,K){if(arguments.length>0){const m=K?l(c):s?ze(D):D;return y(c,m),w=!0,a!==void 0&&(a=m),D}return gt&&w||(k.f&tt)!==0?c.v:l(c)})}const ma="5";var Ir;typeof window<"u"&&((Ir=window.__svelte??(window.__svelte={})).v??(Ir.v=new Set)).add(ma);async function ot(e,t){const n=await fetch(`/api${e}`,{headers:{"Content-Type":"application/json"},...t});if(!n.ok){const r=await n.json().catch(()=>({error:n.statusText}));throw new Error(r.error||"Request failed")}return n.json()}const ft={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`)};var ya=P('<option class="svelte-1kanzy0"> </option>'),ba=P('<span class="project-slug svelte-1kanzy0"> </span>'),wa=P('<input class="rename-input svelte-1kanzy0" type="text"/>'),ka=P('<button class="rename-btn svelte-1kanzy0" title="Rename project">✎</button>'),Ea=P("<!> <!>",1),Ta=P('<header class="toolbar svelte-1kanzy0"><div class="brand svelte-1kanzy0"><span class="prompt svelte-1kanzy0">&gt;</span> mindpm</div> <div class="project-area svelte-1kanzy0"><span class="project-label svelte-1kanzy0">project:</span> <select class="svelte-1kanzy0"></select> <!></div></header>');function Sa(e,t){We(t,!0);let n=A(!1),r=A("");const s=ne(()=>t.projects.find(h=>h.id===t.selectedId));function i(){l(s)&&(y(r,l(s).name,!0),y(n,!0))}function a(){if(!l(s)||!l(n))return;const h=l(r).trim();h&&h!==l(s).name&&t.onRenamed(l(s).id,h),y(n,!1)}function f(h){h.key==="Enter"&&a(),h.key==="Escape"&&y(n,!1)}var o=Ta(),u=x(T(o),2),d=x(T(u),2);rt(d,21,()=>t.projects,on,(h,w)=>{var c=ya(),k=T(c),O={};W(()=>{V(k,l(w).name),O!==(O=l(w).id)&&(c.value=(c.__value=l(w).id)??"")}),j(h,c)});var g;Ei(d);var p=x(d,2);{var b=h=>{var w=Ea(),c=an(w);{var k=m=>{var S=ba(),C=T(S);W(()=>V(C,`[${l(s).slug??""}]`)),j(m,S)};G(c,m=>{l(s).slug&&m(k)})}var O=x(c,2);{var D=m=>{var S=wa();lr(S),pe("blur",S,a),Q("keydown",S,f),sn(S,()=>l(r),C=>y(r,C)),j(m,S)},K=m=>{var S=ka();Q("click",S,i),j(m,S)};G(O,m=>{l(n)?m(D):m(K,!1)})}j(h,w)};G(p,h=>{l(s)&&h(b)})}W(()=>{g!==(g=t.selectedId??"")&&(d.value=(d.__value=t.selectedId??"")??"",hr(d,t.selectedId??""))}),Q("change",d,h=>t.onSelect(h.target.value)),j(e,o),Qe()}pt(["change","keydown","click"]);const xa=[{status:"todo",label:"Todo"},{status:"in_progress",label:"In Progress"},{status:"blocked",label:"Blocked"},{status:"done",label:"Done"},{status:"cancelled",label:"Cancelled"}],Ti=["critical","high","medium","low"];var Ca=P('<span class="task-id svelte-35ep21"> </span>'),ja=P('<div class="card-desc svelte-35ep21"> </div>'),Pa=P('<span class="tag svelte-35ep21"> </span>'),Da=P('<div class="card-tags svelte-35ep21"></div>'),Aa=P('<span class="badge badge-blocked svelte-35ep21">⊘ blocked</span>'),Na=P('<span class="badge badge-subtasks svelte-35ep21"> </span>'),Oa=P('<div class="card-footer svelte-35ep21"><!> <!></div>'),Ia=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 Ra(e,t){We(t,!0);let n=gn(t,"subtaskCount",3,0),r=A(!1);function s(L){if(!L)return[];try{return JSON.parse(L)}catch{return[]}}const i=ne(()=>s(t.task.tags)),a=ne(()=>`priority-${t.task.priority}`),f=ne(()=>()=>{if(!t.task.blocked_by)return!1;try{const L=JSON.parse(t.task.blocked_by);return Array.isArray(L)&&L.length>0}catch{return!1}});function o(L){y(r,!0),t.onDragStart(L,t.task)}function u(){y(r,!1)}var d=Ia();let g;var p=T(d),b=T(p),h=T(b),w=x(b,2),c=T(w);{var k=L=>{var X=Ca(),U=T(X);W(()=>V(U,t.task.short_id)),j(L,X)};G(c,L=>{t.task.short_id&&L(k)})}var O=x(c,2),D=x(p,2),K=T(D),m=x(D,2);{var S=L=>{var X=ja(),U=T(X);W(()=>V(U,t.task.description)),j(L,X)};G(m,L=>{t.task.description&&L(S)})}var C=x(m,2);{var z=L=>{var X=Da();rt(X,21,()=>l(i),on,(U,se)=>{var ve=Pa(),ye=T(ve);W(()=>V(ye,l(se))),j(U,ve)}),j(L,X)};G(C,L=>{l(i).length>0&&L(z)})}var ee=x(C,2);{var ie=L=>{var X=Oa(),U=T(X);{var se=Y=>{var te=Aa();j(Y,te)},ve=ne(()=>l(f)());G(U,Y=>{l(ve)&&Y(se)})}var ye=x(U,2);{var Ie=Y=>{var te=Na(),Se=T(te);W(()=>V(Se,`⑂ ${n()??""}`)),j(Y,te)};G(ye,Y=>{n()>0&&Y(Ie)})}j(L,X)},me=ne(()=>l(f)()||n()>0);G(ee,L=>{l(me)&&L(ie)})}W(()=>{g=Nt(d,1,`card ${l(a)??""}`,"svelte-35ep21",g,{dragging:l(r)}),Nt(b,1,`priority-badge ${l(a)??""}`,"svelte-35ep21"),V(h,t.task.priority),V(K,t.task.title)}),pe("dragstart",d,o),pe("dragend",d,u),Q("click",d,()=>t.onEdit(t.task)),Q("keydown",d,L=>{L.key==="Enter"&&t.onEdit(t.task)}),Q("click",O,L=>{L.stopPropagation(),t.onDelete(t.task)}),j(e,d),Qe()}pt(["click","keydown"]);var La=P('<button class="add-btn svelte-zswfgn" title="Add task">+</button>'),Ma=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 Fa(e,t){We(t,!0);let n=A(!1);function r(c){c.preventDefault(),c.dataTransfer&&(c.dataTransfer.dropEffect="move"),y(n,!0)}function s(){y(n,!1)}function i(c){c.preventDefault(),y(n,!1),t.onDrop(t.status)}var a=Ma();let f;var o=T(a),u=T(o),d=x(T(u)),g=x(d),p=T(g),b=x(u,2);{var h=c=>{var k=La();Q("click",k,()=>t.onAddTask(t.status)),j(c,k)};G(b,c=>{t.status==="todo"&&c(h)})}var w=x(o,2);rt(w,21,()=>t.tasks,c=>c.id,(c,k)=>{{let O=ne(()=>t.subtaskCounts.get(l(k).id)??0);Ra(c,{get task(){return l(k)},get subtaskCount(){return l(O)},get onEdit(){return t.onEdit},get onDelete(){return t.onDelete},get onDragStart(){return t.onDragStart}})}}),W(()=>{f=Nt(a,1,"column svelte-zswfgn",null,f,{"drag-over":l(n)}),V(d,` ${t.label??""} `),V(p,`[${t.tasks.length??""}]`)}),pe("dragover",a,r),pe("dragleave",a,s),pe("drop",a,i),j(e,a),Qe()}pt(["click"]);var za=P('<span class="modal-task-id svelte-1gmf2hi"> </span>'),qa=P("<option> </option>"),Ba=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>'),Ka=P('<div class="decision-reasoning svelte-1gmf2hi"> </div>'),Ua=P('<div class="decision-alts svelte-1gmf2hi"> </div>'),Ha=P('<div class="decision-item svelte-1gmf2hi"><div class="decision-title svelte-1gmf2hi"> </div> <div class="decision-body svelte-1gmf2hi"> </div> <!> <!></div>'),Va=P('<div class="decisions-section svelte-1gmf2hi"><h3 class="decisions-heading svelte-1gmf2hi">Decisions</h3> <div class="decisions-list svelte-1gmf2hi"></div></div>'),Ya=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 Ga(e,t){We(t,!0);let n=gn(t,"defaultStatus",3,"todo"),r=A(""),s=A(""),i=A("medium"),a=A("todo"),f=A(""),o=A(ze([]));Lt(()=>{var I,q,$,_,E;if(y(r,((I=t.task)==null?void 0:I.title)??"",!0),y(s,((q=t.task)==null?void 0:q.description)??"",!0),y(i,(($=t.task)==null?void 0:$.priority)??"medium",!0),y(a,((_=t.task)==null?void 0:_.status)??n(),!0),(E=t.task)!=null&&E.tags)try{y(f,JSON.parse(t.task.tags).join(", "),!0)}catch{y(f,"")}else y(f,"")}),Lt(()=>{t.task!==null?ft.getDecisions(t.projectId).then(I=>{y(o,I,!0)}).catch(()=>{y(o,[],!0)}):y(o,[],!0)});const u=ne(()=>t.task!==null);function d(I){I.preventDefault();const q=l(r).trim();if(!q)return;const $=l(f).split(",").map(_=>_.trim()).filter(Boolean);t.onSave({title:q,description:l(s).trim(),priority:l(i),...l(u)?{status:l(a)}:{},tags:$})}function g(I){I.target.classList.contains("modal-backdrop")&&t.onClose()}function p(I){I.key==="Escape"&&t.onClose()}var b=Ya();pe("keydown",_t,p);var h=T(b),w=T(h),c=T(w),k=T(c),O=T(k),D=x(k,2);{var K=I=>{var q=za(),$=T(q);W(()=>V($,t.task.short_id)),j(I,q)};G(D,I=>{var q;(q=t.task)!=null&&q.short_id&&I(K)})}var m=x(c,2),S=x(w,2),C=T(S),z=x(T(C),2);lr(z);var ee=x(C,2),ie=x(T(ee),2),me=x(ee,2),L=T(me),X=x(T(L),2);rt(X,21,()=>Ti,on,(I,q)=>{var $=qa(),_=T($),E={};W(()=>{V(_,l(q)),E!==(E=l(q))&&($.value=($.__value=l(q))??"")}),j(I,$)});var U=x(L,2);{var se=I=>{var q=Ba(),$=x(T(q),2),_=T($);_.value=_.__value="todo";var E=x(_);E.value=E.__value="in_progress";var H=x(E);H.value=H.__value="blocked";var J=x(H);J.value=J.__value="done";var xe=x(J);xe.value=xe.__value="cancelled",Dr($,()=>l(a),pn=>y(a,pn)),j(I,q)};G(U,I=>{l(u)&&I(se)})}var ve=x(me,2),ye=x(T(ve),2),Ie=x(ve,2),Y=T(Ie),te=x(Y,2),Se=T(te),at=x(S,2);{var mt=I=>{var q=Va(),$=x(T(q),2);rt($,21,()=>l(o),_=>_.id,(_,E)=>{var H=Ha(),J=T(H),xe=T(J),pn=x(J,2),Si=T(pn),gr=x(pn,2);{var xi=yt=>{var Ft=Ka(),mn=T(Ft);W(()=>V(mn,l(E).reasoning)),j(yt,Ft)};G(gr,yt=>{l(E).reasoning&&yt(xi)})}var Ci=x(gr,2);{var ji=yt=>{const Ft=ne(()=>(()=>{try{return JSON.parse(l(E).alternatives)}catch{return null}})());var mn=ta(),Pi=an(mn);{var Di=Ln=>{var pr=Ua(),Ai=T(pr);W(Ni=>V(Ai,`Alternatives: ${Ni??""}`),[()=>l(Ft).join(", ")]),j(Ln,pr)};G(Pi,Ln=>{l(Ft)&&l(Ft).length>0&&Ln(Di)})}j(yt,mn)};G(Ci,yt=>{l(E).alternatives&&yt(ji)})}W(()=>{V(xe,l(E).title),V(Si,l(E).decision)}),j(_,H)}),j(I,q)};G(at,I=>{l(u)&&l(o).length>0&&I(mt)})}W(()=>{V(O,l(u)?"Edit Task":"New Task"),V(Se,l(u)?"Save":"Create")}),Q("click",b,g),Q("click",m,function(...I){var q;(q=t.onClose)==null||q.apply(this,I)}),pe("submit",S,d),sn(z,()=>l(r),I=>y(r,I)),sn(ie,()=>l(s),I=>y(s,I)),Dr(X,()=>l(i),I=>y(i,I)),sn(ye,()=>l(f),I=>y(f,I)),Q("click",Y,function(...I){var q;(q=t.onClose)==null||q.apply(this,I)}),j(e,b),Qe()}pt(["click"]);var Ja=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 Wa(e,t){We(t,!0);let n=gn(t,"confirmLabel",3,"Delete");function r(w){w.target.classList.contains("modal-backdrop")&&t.onCancel()}function s(w){w.key==="Escape"&&t.onCancel()}var i=Ja();pe("keydown",_t,s);var a=T(i),f=T(a),o=T(f),u=x(f,2),d=T(u),g=x(u,2),p=T(g),b=x(p,2),h=T(b);W(()=>{V(o,t.title),V(d,t.message),V(h,n())}),Q("click",i,r),Q("click",p,function(...w){var c;(c=t.onCancel)==null||c.apply(this,w)}),Q("click",b,function(...w){var c;(c=t.onConfirm)==null||c.apply(this,w)}),j(e,i),Qe()}pt(["click"]);var Qa=P('<button class="clear-input svelte-dhotvj">&times;</button>'),Xa=P("<button> </button>"),Za=P('<button><span class="tag-checkbox svelte-dhotvj"> </span> <span class="tag-name svelte-dhotvj"> </span></button>'),$a=P('<button class="tag-clear svelte-dhotvj">clear tags</button>'),el=P('<div class="tag-dropdown svelte-dhotvj"><!> <!></div>'),tl=P('<div class="filter-section tag-dropdown-wrapper svelte-dhotvj"><span class="filter-label svelte-dhotvj">tags:</span> <button><!></button> <!></div>'),nl=P('<button class="clear-all svelte-dhotvj"> </button>'),rl=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 il(e,t){We(t,!0);let n=gn(t,"focusSearch",15,null),r=A(null),s=A(!1),i=A(null);Lt(()=>{n(()=>{var m;return(m=l(r))==null?void 0:m.focus()})});const a=ne(()=>(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(m){m.key==="Escape"&&y(s,!1)}function u(m){l(i)&&!l(i).contains(m.target)&&y(s,!1)}var d=rl();pe("click",_t,u),pe("keydown",_t,o);var g=T(d),p=x(T(g),2);tr(p,m=>y(r,m),()=>l(r));var b=x(p,2);{var h=m=>{var S=Qa();Q("click",S,()=>t.onSearchChange("")),j(m,S)};G(b,m=>{t.searchQuery&&m(h)})}var w=x(g,2),c=x(T(w),2);rt(c,21,()=>Ti,on,(m,S)=>{var C=Xa();let z;var ee=T(C);W(ie=>{z=Nt(C,1,"chip svelte-dhotvj",null,z,ie),ca(C,`--chip-color: ${f[l(S)]??""}`),V(ee,l(S))},[()=>({active:t.selectedPriorities.has(l(S))})]),Q("click",C,()=>t.onPriorityToggle(l(S))),j(m,C)});var k=x(w,2);{var O=m=>{var S=tl(),C=x(T(S),2);let z;var ee=T(C);{var ie=U=>{var se=Cr();W(()=>V(se,`[${t.selectedTags.size??""}] ▾`)),j(U,se)},me=U=>{var se=Cr("all ▾");j(U,se)};G(ee,U=>{t.selectedTags.size>0?U(ie):U(me,!1)})}var L=x(C,2);{var X=U=>{var se=el(),ve=T(se);rt(ve,17,()=>t.allTags,on,(Y,te)=>{var Se=Za();let at;var mt=T(Se),I=T(mt),q=x(mt,2),$=T(q);W((_,E)=>{at=Nt(Se,1,"tag-option svelte-dhotvj",null,at,_),V(I,E),V($,`#${l(te)??""}`)},[()=>({selected:t.selectedTags.has(l(te))}),()=>t.selectedTags.has(l(te))?"✓":" "]),Q("click",Se,_=>{_.stopPropagation(),t.onTagToggle(l(te))}),j(Y,Se)});var ye=x(ve,2);{var Ie=Y=>{var te=$a();Q("click",te,Se=>{Se.stopPropagation(),t.selectedTags.forEach(at=>t.onTagToggle(at))}),j(Y,te)};G(ye,Y=>{t.selectedTags.size>0&&Y(Ie)})}j(U,se)};G(L,U=>{l(s)&&U(X)})}tr(S,U=>y(i,U),()=>l(i)),W(()=>z=Nt(C,1,"dropdown-trigger svelte-dhotvj",null,z,{active:t.selectedTags.size>0})),Q("click",C,U=>{U.stopPropagation(),y(s,!l(s))}),j(m,S)};G(k,m=>{t.allTags.length>0&&m(O)})}var D=x(k,2);{var K=m=>{var S=nl(),C=T(S);W(()=>V(C,`clear [${l(a)??""}]`)),Q("click",S,function(...z){var ee;(ee=t.onClear)==null||ee.apply(this,z)}),j(m,S)};G(D,m=>{l(a)>0&&m(K)})}W(()=>_a(p,t.searchQuery)),Q("input",p,m=>t.onSearchChange(m.target.value)),j(e,d),Qe()}pt(["input","click"]);var sl=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>'),ll=P('<div class="board svelte-x7v2jt"></div>'),ol=P('<!> <div class="board-wrapper svelte-x7v2jt"><!></div> <!> <!>',1);function fl(e,t){We(t,!0);let n=gn(t,"triggerNewTask",3,!1),r=A(ze([])),s=A(!0),i=A(null),a=A(!1),f=A(null),o=A("todo"),u=A(!1),d=A(null),g=A(null),p=A(""),b=A(ze(new Set)),h=A(ze(new Set));const w=ne(()=>()=>{const _=new Map;for(const E of l(r))E.parent_task_id&&_.set(E.parent_task_id,(_.get(E.parent_task_id)??0)+1);return _}),c=ne(()=>()=>{const _=new Set;for(const E of l(r))if(E.tags)try{for(const H of JSON.parse(E.tags))_.add(H)}catch{}return[..._].sort()}),k=ne(()=>()=>{let _=l(r);const E=l(p).trim().toLowerCase();return E&&(_=_.filter(H=>H.title.toLowerCase().includes(E)||(H.description??"").toLowerCase().includes(E)||(H.short_id??"").toLowerCase().includes(E))),l(b).size>0&&(_=_.filter(H=>l(b).has(H.priority))),l(h).size>0&&(_=_.filter(H=>{if(!H.tags)return!1;try{return JSON.parse(H.tags).some(xe=>l(h).has(xe))}catch{return!1}})),_}),O=ne(()=>xa.map(_=>({..._,tasks:l(k)().filter(E=>E.status===_.status)})));function D(_){const E=new Set(l(b));E.has(_)?E.delete(_):E.add(_),y(b,E,!0)}function K(_){const E=new Set(l(h));E.has(_)?E.delete(_):E.add(_),y(h,E,!0)}function m(){y(p,""),y(b,new Set,!0),y(h,new Set,!0)}let S=A(null);function C(_){var J;const E=_.target.tagName;E==="INPUT"||E==="TEXTAREA"||E==="SELECT"||_.ctrlKey||_.metaKey||_.altKey||(_.key==="n"||_.key==="N"?(_.preventDefault(),me("todo")):_.key==="/"&&(_.preventDefault(),(J=l(S))==null||J()))}Lt(()=>{var _;n()&&(me("todo"),(_=t.onNewTaskTriggered)==null||_.call(t))});async function z(){y(s,!0),y(i,null);try{y(r,await ft.getTasks(t.project.id),!0)}catch(_){y(i,_.message,!0)}finally{y(s,!1)}}Lt(()=>{t.project.id,z()});function ee(_,E){y(g,E,!0),_.dataTransfer&&(_.dataTransfer.effectAllowed="move",_.dataTransfer.setData("text/plain",E.id))}async function ie(_){if(!l(g)||l(g).status===_){y(g,null);return}const E=l(g),H=E.status;y(g,null);const J=l(r).findIndex(xe=>xe.id===E.id);J!==-1&&(l(r)[J]={...l(r)[J],status:_});try{await ft.updateTask(E.id,{status:_})}catch(xe){J!==-1&&(l(r)[J]={...l(r)[J],status:H}),y(i,xe.message,!0)}}function me(_){y(f,null),y(o,_,!0),y(a,!0)}function L(_){y(f,_,!0),y(a,!0)}async function X(_){try{if(l(f)){const E=await ft.updateTask(l(f).id,{title:_.title,description:_.description||null,priority:_.priority,status:_.status,tags:_.tags.length>0?_.tags:null}),H=l(r).findIndex(J=>J.id===l(f).id);H!==-1&&(l(r)[H]=E)}else{const E=await ft.createTask(t.project.id,{title:_.title,description:_.description||void 0,priority:_.priority,tags:_.tags.length>0?_.tags:void 0});y(r,[E,...l(r)],!0)}y(a,!1),y(f,null)}catch(E){y(i,E.message,!0)}}function U(_){y(d,_,!0),y(u,!0)}async function se(){if(l(d))try{await ft.deleteTask(l(d).id),y(r,l(r).filter(_=>_.id!==l(d).id&&_.parent_task_id!==l(d).id),!0),y(u,!1),y(d,null)}catch(_){y(i,_.message,!0)}}var ve=ol();pe("keydown",_t,C);var ye=an(ve);{let _=ne(()=>l(c)());il(ye,{get allTags(){return l(_)},get searchQuery(){return l(p)},get selectedPriorities(){return l(b)},get selectedTags(){return l(h)},onSearchChange:E=>{y(p,E,!0)},onPriorityToggle:D,onTagToggle:K,onClear:m,get focusSearch(){return l(S)},set focusSearch(E){y(S,E,!0)}})}var Ie=x(ye,2),Y=T(Ie);{var te=_=>{var E=sl();j(_,E)},Se=_=>{var E=al(),H=T(E),J=x(H);W(()=>V(H,`${l(i)??""} `)),Q("click",J,()=>{y(i,null),z()}),j(_,E)},at=_=>{var E=ll();rt(E,21,()=>l(O),H=>H.status,(H,J)=>{{let xe=ne(()=>l(w)());Fa(H,{get status(){return l(J).status},get label(){return l(J).label},get tasks(){return l(J).tasks},get subtaskCounts(){return l(xe)},onEdit:L,onDelete:U,onDragStart:ee,onDrop:ie,onAddTask:me})}}),j(_,E)};G(Y,_=>{l(s)?_(te):l(i)?_(Se,1):_(at,!1)})}var mt=x(Ie,2);{var I=_=>{Ga(_,{get task(){return l(f)},get projectId(){return t.project.id},get defaultStatus(){return l(o)},onSave:X,onClose:()=>{y(a,!1),y(f,null)}})};G(mt,_=>{l(a)&&_(I)})}var q=x(mt,2);{var $=_=>{Wa(_,{title:"Delete Task",get message(){return`Are you sure you want to delete "${l(d).title??""}"? This cannot be undone.`},onConfirm:se,onCancel:()=>{y(u,!1),y(d,null)}})};G(q,_=>{l(u)&&l(d)&&_($)})}j(e,ve),Qe()}pt(["click"]);var ul=P('<div><span class="item-label svelte-1bm0yy4"> </span> <span class="item-hint svelte-1bm0yy4"> </span></div>'),cl=P('<div class="palette-empty svelte-1bm0yy4">no commands match</div>'),vl=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 dl(e,t){We(t,!0);let n=A(""),r=A(0),s=A(null);const i=ne(()=>[{id:"new-task",label:"new task",hint:"create",action:()=>{t.onClose(),t.onNewTask()}},...t.projects.map(h=>({id:`project-${h.id}`,label:h.name,hint:h.slug?`switch → ${h.slug}`:"switch",action:()=>{t.onClose(),t.onSelectProject(h.id)}}))]),a=ne(()=>()=>{const h=l(n).trim().toLowerCase();return h?l(i).filter(w=>w.label.toLowerCase().includes(h)||w.hint.toLowerCase().includes(h)):l(i)});Lt(()=>{l(a)(),y(r,0)});function f(h){var c;const w=l(a)();h.key==="ArrowDown"?(h.preventDefault(),y(r,Math.min(l(r)+1,w.length-1),!0)):h.key==="ArrowUp"?(h.preventDefault(),y(r,Math.max(l(r)-1,0),!0)):h.key==="Enter"?(h.preventDefault(),(c=w[l(r)])==null||c.action()):h.key==="Escape"&&t.onClose()}function o(h){h.target.classList.contains("palette-backdrop")&&t.onClose()}var u=vl(),d=T(u),g=T(d),p=x(T(g),2);lr(p),tr(p,h=>y(s,h),()=>l(s));var b=x(g,2);rt(b,23,()=>l(a)(),h=>h.id,(h,w,c)=>{var k=ul();let O;var D=T(k),K=T(D),m=x(D,2),S=T(m);W(()=>{O=Nt(k,1,"palette-item svelte-1bm0yy4",null,O,{active:l(c)===l(r)}),V(K,l(w).label),V(S,l(w).hint)}),pe("mouseenter",k,()=>{y(r,l(c),!0)}),Q("click",k,()=>l(w).action()),j(h,k)},h=>{var w=cl();j(h,w)}),Q("click",u,o),Q("keydown",p,f),sn(p,()=>l(n),h=>y(n,h)),j(e,u),Qe()}pt(["click","keydown"]);var hl=P('<div class="loading svelte-1n46o8q"><span class="prompt svelte-1n46o8q">&gt;</span> loading projects...</div>'),_l=P('<div class="error svelte-1n46o8q"><span class="err-prefix svelte-1n46o8q">[error]</span> </div>'),gl=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>'),pl=P("<!> <!>",1),ml=P("<!> <!>",1);function yl(e,t){We(t,!0);let n=A(ze([])),r=A(null),s=A(!0),i=A(null),a=A(!1),f=A(!1);const o=ne(()=>l(n).find(m=>m.id===l(r))??null);async function u(){try{if(y(n,await ft.getProjects(),!0),l(n).length>0&&!l(r)){const m=new URLSearchParams(window.location.search).get("project"),S=m?l(n).find(C=>C.id===m||C.name===m):null;y(r,S?S.id:l(n)[0].id,!0)}}catch(m){y(i,m.message,!0)}finally{y(s,!1)}}function d(m){y(r,m,!0)}async function g(m,S){try{await ft.updateProject(m,{name:S});const C=l(n).findIndex(z=>z.id===m);C!==-1&&(l(n)[C]={...l(n)[C],name:S})}catch(C){y(i,C.message,!0)}}Lt(()=>{u()});function p(m){(m.ctrlKey||m.metaKey)&&m.key==="k"&&(m.preventDefault(),y(a,!l(a)))}var b=ml();pe("keydown",_t,p);var h=an(b);{var w=m=>{dl(m,{get projects(){return l(n)},onSelectProject:S=>{y(r,S,!0)},onNewTask:()=>{y(f,!0)},onClose:()=>{y(a,!1)}})};G(h,m=>{l(a)&&m(w)})}var c=x(h,2);{var k=m=>{var S=hl();j(m,S)},O=m=>{var S=_l(),C=x(T(S));W(()=>V(C,` ${l(i)??""}`)),j(m,S)},D=m=>{var S=gl();j(m,S)},K=m=>{var S=pl(),C=an(S);Sa(C,{get projects(){return l(n)},get selectedId(){return l(r)},onSelect:d,onRenamed:g});var z=x(C,2);{var ee=ie=>{fl(ie,{get project(){return l(o)},get triggerNewTask(){return l(f)},onNewTaskTriggered:()=>{y(f,!1)}})};G(z,ie=>{l(o)&&ie(ee)})}j(m,S)};G(c,m=>{l(s)?m(k):l(i)?m(O,1):l(n).length===0?m(D,2):m(K,!1)})}j(e,b),Qe()}na(yl,{target:document.getElementById("app")});
@@ -1 +0,0 @@
1
- .toolbar.svelte-1kanzy0{display:flex;align-items:center;gap:20px;padding:8px 16px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.brand.svelte-1kanzy0{font-size:.95rem;font-weight:700;color:var(--primary);letter-spacing:.5px;white-space:nowrap}.prompt.svelte-1kanzy0{color:var(--text-dim)}.project-area.svelte-1kanzy0{display:flex;align-items:center;gap:8px}.project-label.svelte-1kanzy0{color:var(--text-muted);font-size:.8rem}.project-slug.svelte-1kanzy0{color:var(--text-muted);font-size:.75rem}select.svelte-1kanzy0{padding:4px 8px;border-radius:var(--radius-sm);border:1px solid var(--border-bright);background:var(--surface-2);color:var(--text);-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}select.svelte-1kanzy0 option:where(.svelte-1kanzy0){background:var(--surface-2);color:var(--text)}.rename-btn.svelte-1kanzy0{background:none;border:1px solid var(--border);color:var(--text-muted);border-radius:var(--radius-sm);padding:2px 7px;font-size:.85rem;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)}.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;padding:16px}.board.svelte-x7v2jt{display:flex;gap:12px;align-items:flex-start;min-height:calc(100vh - 100px)}.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)}.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{min-height:100vh;display:flex;flex-direction:column}::-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}