@dylanpiercey/work 0.0.177 → 0.0.179

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.
Files changed (92) hide show
  1. package/dist/_BjQ0kG_Y.js +2 -0
  2. package/dist/{_B9zhiogp.js → _CT1XA_pS.js} +2 -2
  3. package/dist/{_BRBF-t9p.js → _DSLqyqdU.js} +6 -1
  4. package/dist/index.mjs +835 -722
  5. package/dist/public/assets/_-igetr1k.js +87 -0
  6. package/dist/public/assets/_-igetr1k.js.br +0 -0
  7. package/dist/public/assets/_BDWRaHhB.js +1 -0
  8. package/dist/public/assets/_BDWRaHhB.js.br +0 -0
  9. package/dist/public/assets/_BNadakYr.js +1 -0
  10. package/dist/public/assets/_BRK2K3ed.js +1 -0
  11. package/dist/public/assets/_BRK2K3ed.js.br +0 -0
  12. package/dist/public/assets/_BXzw1p3o.js +1 -0
  13. package/dist/public/assets/_BvvLGQIh.js +1 -0
  14. package/dist/public/assets/_C9JuvGlK.js +1 -0
  15. package/dist/public/assets/_CN0CvJPp.js +1 -0
  16. package/dist/public/assets/_CYn4iSdr.js +1 -0
  17. package/dist/public/assets/_Cbs95QrP.js +1 -0
  18. package/dist/public/assets/_Cti1-2Pj.js +1 -0
  19. package/dist/public/assets/_D1-pYND-.js +1 -0
  20. package/dist/public/assets/_DH9_E-rQ.js +1 -0
  21. package/dist/public/assets/_DJPL6L5P.js +1 -0
  22. package/dist/public/assets/_DaHzxs4q.js +1 -0
  23. package/dist/public/assets/_DcR7jLIq.js +2802 -0
  24. package/dist/public/assets/_DcR7jLIq.js.br +0 -0
  25. package/dist/public/assets/_Dhq3yTn3.js +1 -0
  26. package/dist/public/assets/_FhpoOYKO.js +1 -0
  27. package/dist/public/assets/_USOgcb2G.js +1 -0
  28. package/dist/public/assets/_hL-CwTLk.js +1 -0
  29. package/dist/public/assets/_pUSDs8I1.js +1 -0
  30. package/dist/public/assets/_vCtApeJ4.js +1 -0
  31. package/dist/public/assets/_wM1MuM4A.js +1 -0
  32. package/dist/public/assets/_wk_nezEr.js +1 -0
  33. package/dist/public/assets/_zOsFf2Ho.js +1 -0
  34. package/dist/public/assets/{app-page-DD1F0TTl.css → app-page-Bttz6PCd.css} +1 -1
  35. package/dist/public/assets/app-page-Bttz6PCd.css.br +0 -0
  36. package/dist/public/assets/{icon-arrow-down-Djyi23Q9.css → icon-arrow-down-B_tgvd3z.css} +1 -1
  37. package/dist/public/assets/icon-arrow-down-B_tgvd3z.css.br +0 -0
  38. package/dist/public/assets/new-Cu6jGozd.js +1 -0
  39. package/dist/public/assets/review-view-B8kS7P6x.css +1 -0
  40. package/dist/public/assets/review-view-B8kS7P6x.css.br +0 -0
  41. package/dist/public/assets/review-view-foAMMQMz.js +2 -0
  42. package/dist/public/assets/settings-Cu6jGozd.js +1 -0
  43. package/dist/public/assets/w-Cu6jGozd.js +1 -0
  44. package/dist/public/assets/w._-Cu6jGozd.js +1 -0
  45. package/dist/public/assets/w._-R7bTAfAQ.js +1 -0
  46. package/dist/public/assets/{worker-C0KwUb8K.js → worker-BRm_gkJp.js} +3 -3
  47. package/dist/public/assets/worker-BRm_gkJp.js.br +0 -0
  48. package/lib/preview/media.d.mts +10 -0
  49. package/lib/preview/media.mjs +41 -0
  50. package/lib/review/markdown.mjs +14 -6
  51. package/package.json +2 -1
  52. package/dist/_Cr-5sjB_.js +0 -2
  53. package/dist/public/assets/_4WrdbxBF.js +0 -1
  54. package/dist/public/assets/_4WrdbxBF.js.br +0 -0
  55. package/dist/public/assets/_B0OVfJVa.js +0 -83
  56. package/dist/public/assets/_B0OVfJVa.js.br +0 -0
  57. package/dist/public/assets/_B1OIFWW-.js +0 -1
  58. package/dist/public/assets/_Bfd2dVOp.js +0 -1
  59. package/dist/public/assets/_BkDIoDws.js +0 -1
  60. package/dist/public/assets/_CCHp7HT3.js +0 -1
  61. package/dist/public/assets/_CFA_6zcC.js +0 -1
  62. package/dist/public/assets/_CGPWu3ME.js +0 -1
  63. package/dist/public/assets/_C_X4FoTd.js +0 -1
  64. package/dist/public/assets/_CiAUVpQt.js +0 -2802
  65. package/dist/public/assets/_CiAUVpQt.js.br +0 -0
  66. package/dist/public/assets/_CtGD9jYW.js +0 -1
  67. package/dist/public/assets/_CtJJRDR2.js +0 -1
  68. package/dist/public/assets/_D3jkeyvE.js +0 -1
  69. package/dist/public/assets/_DB_NZjCY.js +0 -1
  70. package/dist/public/assets/_DJMv-6bg.js +0 -1
  71. package/dist/public/assets/_DMt4uXYu.js +0 -1
  72. package/dist/public/assets/_D_N_Xeps.js +0 -1
  73. package/dist/public/assets/_D_Y3vCMi.js +0 -1
  74. package/dist/public/assets/_DoS_32IX.js +0 -1
  75. package/dist/public/assets/_PVFFUgEr.js +0 -1
  76. package/dist/public/assets/_QM85-dob.js +0 -1
  77. package/dist/public/assets/_bLcqPuzt.js +0 -1
  78. package/dist/public/assets/_bLcqPuzt.js.br +0 -0
  79. package/dist/public/assets/_flJGtG_5.js +0 -1
  80. package/dist/public/assets/_kARTodxS.js +0 -1
  81. package/dist/public/assets/_tSMLmX8f.js +0 -1
  82. package/dist/public/assets/app-page-DD1F0TTl.css.br +0 -0
  83. package/dist/public/assets/icon-arrow-down-Djyi23Q9.css.br +0 -0
  84. package/dist/public/assets/new-BwcyiB1L.js +0 -1
  85. package/dist/public/assets/review-view-3q-u988K.css +0 -1
  86. package/dist/public/assets/review-view-3q-u988K.css.br +0 -0
  87. package/dist/public/assets/review-view-CiWwWm6V.js +0 -2
  88. package/dist/public/assets/settings-BwcyiB1L.js +0 -1
  89. package/dist/public/assets/w-BwcyiB1L.js +0 -1
  90. package/dist/public/assets/w._-BwcyiB1L.js +0 -1
  91. package/dist/public/assets/w._-gFT3A4in.js +0 -1
  92. package/dist/public/assets/worker-C0KwUb8K.js.br +0 -0
@@ -0,0 +1,10 @@
1
+ export type PreviewKind = "image" | "pdf";
2
+
3
+ export interface Preview {
4
+ kind: PreviewKind;
5
+ /** The one content-type the blob route will serve this path as. */
6
+ type: string;
7
+ }
8
+
9
+ /** How to show a path, or null when nothing can. */
10
+ export function previewFor(filePath: string): Preview | null;
@@ -0,0 +1,41 @@
1
+ // What a browser can render inline for a binary file in review, keyed by
2
+ // extension. Plain ESM with no dependencies: the blob route serves only the
3
+ // types in this table and the browser picks its element from the same one,
4
+ // so a type can never be displayable at one end and not the other.
5
+ //
6
+ // The allowlist is the security boundary, not a nicety. The app's API and
7
+ // the review page share an origin, so an `image/svg+xml` opened in a tab —
8
+ // or worse a `text/html` — from a repo under review would be script with
9
+ // the reviewer's access to it. Nothing outside this table is ever served
10
+ // inline, and the served response denies scripts on top of that.
11
+
12
+ /** @typedef {"image" | "pdf"} PreviewKind */
13
+ /** @typedef {{ kind: PreviewKind, type: string }} Preview */
14
+
15
+ /** @type {Record<string, string>} */
16
+ const TYPES = {
17
+ apng: "image/apng",
18
+ avif: "image/avif",
19
+ bmp: "image/bmp",
20
+ gif: "image/gif",
21
+ ico: "image/x-icon",
22
+ jpeg: "image/jpeg",
23
+ jpg: "image/jpeg",
24
+ png: "image/png",
25
+ svg: "image/svg+xml",
26
+ webp: "image/webp",
27
+ pdf: "application/pdf",
28
+ };
29
+
30
+ /**
31
+ * How to show a path, or null when nothing can.
32
+ * @param {string} filePath
33
+ * @returns {Preview | null}
34
+ */
35
+ export function previewFor(filePath) {
36
+ const dot = filePath.lastIndexOf(".");
37
+ const ext = dot < 0 ? "" : filePath.slice(dot + 1).toLowerCase();
38
+ const type = TYPES[ext];
39
+ if (!type) return null;
40
+ return { kind: type === "application/pdf" ? "pdf" : "image", type };
41
+ }
@@ -32,13 +32,12 @@ export function commentMarkdown(comments, repos) {
32
32
  chunks.push(repoHeader(worktree, repo, list));
33
33
  for (const c of list) {
34
34
  n++;
35
- const side = c.side === "deletions" ? "Old" : "New";
36
- const range =
37
- c.line_start === c.line_end
38
- ? `line ${c.line_start}`
39
- : `lines ${c.line_start}-${c.line_end}`;
35
+ // Line 0 is a comment on the file itself — review offers it for a
36
+ // file it shows without a patch, so there are no rows to name or
37
+ // quote, only the path.
38
+ const where = c.line_end === 0 ? "whole file" : rowsOf(c);
40
39
  chunks.push("");
41
- chunks.push(`${n}. **${c.path}** (${side} ${range})`);
40
+ chunks.push(`${n}. **${c.path}** (${where})`);
42
41
  const snippet = c.snippet;
43
42
  if (snippet != null) {
44
43
  const fence = markdownFence(snippet);
@@ -52,6 +51,15 @@ export function commentMarkdown(comments, repos) {
52
51
  return chunks.join("\n");
53
52
  }
54
53
 
54
+ /** Which rows a comment is against, as the reviewer saw them.
55
+ * @param {Comment} c */
56
+ function rowsOf(c) {
57
+ const side = c.side === "deletions" ? "Old" : "New";
58
+ return c.line_start === c.line_end
59
+ ? `${side} line ${c.line_start}`
60
+ : `${side} lines ${c.line_start}-${c.line_end}`;
61
+ }
62
+
55
63
  /** @param {string} worktree @param {Repo | undefined} repo @param {Comment[]} list */
56
64
  function repoHeader(worktree, repo, list) {
57
65
  if (repo?.head) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dylanpiercey/work",
3
- "version": "0.0.177",
3
+ "version": "0.0.179",
4
4
  "type": "module",
5
5
  "description": "Web GUI for agentic dev workspaces",
6
6
  "license": "MIT",
@@ -34,6 +34,7 @@
34
34
  "format:check": "prettier --check ."
35
35
  },
36
36
  "dependencies": {
37
+ "@xterm/addon-image": "0.9.0",
37
38
  "node-pty": "^1.1.0"
38
39
  },
39
40
  "devDependencies": {
package/dist/_Cr-5sjB_.js DELETED
@@ -1,2 +0,0 @@
1
- import { m as notifySessionsChanged } from "./_BRBF-t9p.js";
2
- export { notifySessionsChanged };
@@ -1 +0,0 @@
1
- var e=/[\\;]/g,t=e=>e===`;`?`\\3B `:`\\\\`,n=function e(t,n,r){let i=``,a=``,o;if(t){if(typeof t!=`object`)i+=t;else if(Array.isArray(t))for(let s of t)o=e(s,n,r),o&&(i+=a+o,a=n);else for(let e in t)o=r(e,t[e]),o&&(i+=a+o,a=n)}return i},r=e=>(e+(e<26?10:e<962?334:11998)).toString(36),i,a,o=2,s=new WeakSet,c=new WeakSet,l=[],u=[],d=(e=>{for(let t=0;t<e.length;)e[t++](e[t++])}),f=e=>{(!i||e.b.F?.H!==0)&&e.c(e.b,e.d)},p,m,h,g=(e,t)=>t[1+e]||=(document.addEventListener(e,t,!0),1),_={},v=1e6,y=function e(t){t.H=0,t.D?.forEach(e),t.B?.forEach(Re)},b,x,S=(e,t)=>e.T?.(t),C=new WeakMap,w,T=function e(t,n,i){let a,o,s=0,c=0;for(;t<n.length;)if(a=n.charCodeAt(t++),o=s,s=0,a===32)i[r(c++)]=w;else if(a===37||a===49)w.replaceWith(w=i[r(c++)]=new Text),a===49&&(i[r(c++)]=Ie());else if(a===38)return t;else if(a===47||a===48)t=e(t,n,i[r(c++)]=Pe(i.$,i.F)),a===48&&(i[r(c++)]=Ie());else if(a<92)for(a=25*o+a-67;a--;)E();else if(a<107)for(a=10*o+a-97;a--;)D();else if(a<117){for(a=10*o+a-107;a--;)w=w.parentNode||w;D()}else s=o*10+a-117},E=()=>{if(w.firstChild)return w=w.firstChild;for(;!w.nextSibling&&w.parentNode;)w=w.parentNode;D()},D=()=>w=w.nextSibling||w,O={},k,A,ee,j,te={},ne=/[\p{L}\p{N}]/gu,M=``,re={},ie={},ae=P((e,...t)=>{e=r(e);let n=`D`+e,i=[],a=0;for(;a<t.length;)i.push(Y(``,t[a++],t[a++],t[a++])());return(t,r)=>{r!==(t[n]??(t[`A`+e]&&0))&&$(t,e,i[t[n]=r],J)}}),oe=P((e,t,n,i)=>{e=r(e);let a=`A`+e,o=`D`+e;return(r,s,c)=>{let l=_e(s);if(r[o]!==(r[o]=on(l))||t&&!(l||r[a])){if($(r,e,l||(t?t(r):void 0),cn),n&&(r[a]?(r[a].T=e=>n()(r,e),typeof l==`string`&&ce?.(r[a])):n()(r,void 0)),typeof l==`string`){if(t){let e=t(r);$(r[a],`a`,e,J),e.f&&U(e.e,e.f,r[a].Aa)}}else l?.f&&U(l.e,l.f,r[a])}if(l){let e=r[a],n=c?.();if(typeof l==`string`)(t?xt:St)(e,`a`,(i?n[0]:n)||{},ie[e.a.tagName]),(e.Ia||e.Ea)&&I(e,sn);else{for(let t in l.g)l.g[t](e,l.h[t]);if(l.d){if(i)l.d(e,l._?n[0]:n);else{let i=t?{...n,content:t(r)}:n||{};l.d(e,l._?i:[i])}}}}}}),se=P(e=>{e=r(e);let t=`A`+e,n=`D`+e;return(r,i)=>{if(r[n]!==(r[n]=on(i))&&($(r,e,i,J),i?.f&&U(i.e,i.f,r[t])),i)for(let e in i.g)i.g[e](r[t],i.h[e])}}),ce,le=P(e=>(t,n,i,a,o)=>{t=r(t);let s=`A`+t,c=`O`+t,l=Y(``,n,i,a)();return(n,r)=>{let i=n[t],a=R(n[s]),u=n[s]=[];n[c]=null;let d=a.length,f=i.nodeType>1?i.parentNode||a[0]?.S.parentNode:i,p,m,h=0;e(r,(e,t)=>{let r=u.length,i=a[r],s=d&&(p||e!==(i?.M??r)?(p||=a.reduce((e,t,n)=>n<r?e:(t.I=n,e.set(t.M??n,t)),new Map)).get(e):i&&(h++,i));s?(m=!0,p?.delete(e)):s=J(n.$,l,n,f),s.M=e,u.push(s),o?.(s,t)});let g=u.length,_=i!==f,v=null,y=d-1,b=g-1;if(_&&(d?(v=a[y].K.nextSibling,g||f.insertBefore(i,v)):g&&(v=i.nextSibling,i.remove())),!m){d&&(a.forEach(_?B:z),_||(f.textContent=``));for(let e of u)V(e,f,v);return}if(p)p.forEach(B);else for(let e=g;e<d;e++)B(a[e]);for(;y>=h&&b>=h&&a[y]===u[b];)y--,b--;if(y+1<d&&(v=a[y+1].S),h>y||h>b){for(let e=h;e<=b;e++)V(u[e],f,v);return}let x=b-h+1,S=Array(x),C=Array(x),w=[],T=-1,E,D,O;for(let e=x;e--;)S[e]=u[h+e].I??-1;for(let e=0;e<x;e++)if(~S[e]){if(T<0||S[w[T]]<S[e])~T&&(C[e]=w[T]),w[++T]=e;else{for(E=0,D=T;E<D;)O=(E+D)/2|0,S[w[O]]<S[e]?E=O+1:D=O;S[e]<S[w[E]]&&(E>0&&(C[e]=w[E-1]),w[E]=e)}}for(D=w[T],E=T+1;E-->0;)w[E]=D,D=C[D];for(let e=x;e--;)~T&&e===w[T]?T--:V(u[h+e],f,v),v=u[h+e].S}}),ue=le(([e,t],n)=>{t||=ln,typeof t==`string`?ve(e,(e,r)=>n(e[t],[e,r])):ve(e,(e,r)=>n(t(e,r),[e,r]))}),de=le(([e,t,n,r],i)=>{r||=un,ye(e,t,n,e=>i(r(e),[e]))});function fe(e,t){return t?e:``}function pe(e,t){return t||t===0?me(e)+`:`+me(t+``):``}function me(n){return e.test(n)?n.replace(e,t):n}function he(e){return/^on[A-Z-]/.test(e)}function ge(e){return e[2]===`-`?e.slice(3):e.slice(2).toLowerCase()}function N(e){return e!=null&&e!==!1}function _e(e){if(e){if(typeof e==`string`)return e;let t=e.content||e.default||e;if(`a`in t)return t}}function P(e){return i=1,e}function ve(e,t){if(e){let n=0;for(let r of e)t(r,n++)}}function ye(e,t,n,r){let i=t||0,a=n||1;for(let t=(e-i)/a,n=0;n<=t;n++)r(i+n*a)}function F(e,t,n,r,i=e.L){let a;if(n>=0&&(a=e[n])){if(a.d=r,a.e===o||p&&a.f)return;a.e=o}else a={a:i*1e6+n,b:e,c:t,d:r,e:o},n>=0&&(e[n]=a);be(a)}function be(e){let t=u.push(e)-1;for(;t;){let n=t-1>>1,r=u[n];if(e.a-r.a>=0)break;u[t]=r,t=n}u[t]=e}function I(e,t){l.push(t,e)}function L(){let e=l;try{a=1,we()}finally{o++,a=0,u=[],l=[]}d(e)}function xe(e,t,n){u.length||queueMicrotask(L),F(e,t,-1,n)}function Se(e){let t=u,n=l,r=l=[];u=[];try{a=1,e(),we()}finally{o++,a=0,u=t,l=n}return r}function Ce(e,t){p=1,P(),d=e(d),f=t(f)}function we(){for(;u.length;){let e=u[0],t=u.pop();if(e!==t){let e=0,n=u.length>>1,r=(u[0]=t).a;for(;e<n;){let t=(e<<1)+1,n=t+1;if(n<u.length&&u[n].a-u[t].a<0&&(t=n),u[t].a-r>=0)break;u[e]=u[t],e=t}u[e]=t}f(e)}}function Te(e,t){let n=e.A?.[t];n&&(e.A[t]=void 0,a?I(n,Oe):Oe(n))}function Ee(e,t){return m=1,De(e),((e.A||={})[t]||=new AbortController).signal}function De(e,t){let n=e.F;n&&(n.B||=new Set).add(e),t&&(h=1,(e.Z||=[]).push(t))}function Oe(e){e.abort()}function R(e){return e?Array.isArray(e)?e:[e]:[]}function ke(e,t){if(e){if(Array.isArray(e))for(let n of e)t(n);else t(e)}}function Ae(e,t){return e?Array.isArray(e)?(e.push(t),e):[e,t]:t}function je(e,t,n){e[1+t]===void 0&&g(t,Me),e[1+t]=n||null}function Me(e){let t=!a&&e.target;for(;t;)t[1+e.type]?.(e,t),t=e.bubbles&&!e.cancelBubble&&t.parentNode}function Ne(e,t){let n=_[t]||=document.createElementNS(t,`template`);return n.innerHTML=e,n.content||n}function Pe(e,t){return{L:v++,H:o,F:t,$:e}}function Fe(e){e.H=o}function Ie(){return v++}function Le(e,t){let n=e.F;for(;n&&n[t]==null;)n=n.N;return n}function z(e){e.N?.D?.delete(e),y(e)}function Re(e){if(h&&e.Z?.forEach(ze,e),m)for(let t in e.A)Te(e,t)}function ze(e){e.delete(this)}function B(e){z(e),At(e.S,e.K)}function V(e,t,n){Z(t,n,e.S,e.K)}function Be(e){let t=new DocumentFragment;t.namespaceURI=e.S.parentNode.namespaceURI,Z(t,null,e.S,e.K)}function Ve(){b||(b=1,queueMicrotask(He))}function He(){requestAnimationFrame(Ue),L()}function Ue(){x||(x=new MessageChannel,x.port1.onmessage=()=>{b=0,L()}),x.port2.postMessage(0)}function We(e,t){let n=r(e);return(r,i)=>(a?r.H===o&&(r[n]=i,t?.(r)):(r[n]!==i||!(n in r))&&(r[n]=i,t)&&(Ve(),F(r,t,e)),i)}function Ge(e,t){let n=r(e),i=r(e+1),o=We(e,t);return(e,r,s)=>(a?(e[i]=s)&&(e[n]!==r||!(n in e))?(e[n]=r,t?.(e)):o(e,r):e[i]?e[i](r):o(e,r),r)}function Ke(e,t){return e=r(e),((n,r)=>{(n[e]!==r||!(e in n))&&(n[e]=r,t?.(n))})}function qe(e,t,n=1,i=`L`){return i!==`L`&&(i=r(i)),r=>{r.H===o?~e in r?--r[~e]||t(r):r[~e]=n:F(r,t,e,0,r[i])}}function Je(e,t){e=r(e);let n=`A`+e,i=e=>{let r=R(e[n]);r.length&&F(e,()=>{for(let e of r)e.H>0&&e.H<o&&t(e)},-1,0,r[0].L)};return i._=t,i}function Ye(e,t,n,i){e=r(e),t=r(t),n!==`M`&&(n=r(n));let a=`A`+e,s=`O`+e,c=`_${t}`,l=e=>{let r=R(e[a]);if(e.H<o&&r.length){let o=e[t];F(e,()=>{let t=Xe(e,a,s,n);if(t&&c in t){let e=t.get(t[c]),n=t.get(o);e!==n&&(H(e,i),H(n,i))}else for(let t of R(e[a]))H(t,i);t&&(t[c]=o)},-1,0,r[0].L)}};return l._=i,l}function Xe(e,t,n,r){let i=e[n]||=new Map;if(!i.size)for(let a of R(e[t])){let t=a.M??a[r];if(t===void 0)return e[n]=null;a.M=t,i.set(t,a)}return i}function H(e,t){e&&e.H>0&&e.H<o&&t(e)}function Ze(e,t,n){e=r(e);let i=`A`+e,a=`D`+e,s=e=>{let r=e[i];r&&r.H>0&&r.H<o&&(e[a]||0)===t&&F(r,n,-1)};return s._=n,s}function U(e,t,n){let r=e[t]||=new Set,{size:i}=r;r.add(n).size!==i&&De(n,r)}function Qe(...e){let[t]=e,n=t.a,r=t.b;for(let t=e.length;t--;)e[t].c=t;return t=>{if(t[n])for(let i of t[n])i.H>0&&i.H<o&&F(i,e[i[r]||0],-1)}}function $e(e,t,n,i){e=r(e);let a=(e=>{e[a.b]=a.c,t(e),U(n?n(e):e._,a.a,e)});return a.a=e,a.b=`C`+e,i&&q(i,a),a}function et(e){return e._=(t,n)=>{t._=n,F(t,e,-1)},e}function tt(e,t,n){e[r(t)].T=t=>n(e,t)}function nt(e,t){let n=t!==void 0&&e[t];if(!n){let r=e.$,i=C.get(r)||0;C.set(r,i+1),n=`c`+r.runtimeId+r.renderId+i.toString(36),t!==void 0&&(e[t]=n)}return n}function rt(e,t){return q(e,t),e=>{I(e,t)}}function*W(e,t,n,r=t.length-1){if(e){if(Symbol.iterator in e)for(let i of e.values())yield*W(i,t,n,r);else{let i=e[t[r]];r?yield*W(i,t,n,r-1):yield typeof i==`function`?i(...n):i}}}function it(...e){return e=e.map(e=>typeof e==`string`?e:r(e)),t=>{let n=(...n)=>W(t,e,n).next().value;return n[Symbol.iterator]=()=>W(t,e,[]),n}}function at(e,...t){return q(e,it(...t))}function G(e,t,n){w=e,T(0,t,n)}function ot(e){(A||=new Set).add(e);for(let e in k)K(k[e])}function st(e){return ee=1,e}function ct(e=`M`){if(k)return;let t=self[e],n=t=>Object.defineProperty(self,e,t),r=t=>{n({value:k=(n=>{let r=k[n]=t[n]||t(n),a=r.w,o={},s=e=>o[e]||(+e?l(o[e]={L:+e}):c()),c=()=>o[0]||={runtimeId:e,renderId:n},l=e=>(e.H=1,e.$=c(),i&&e.G&&(e.F=s(e.G)),e),u=e=>{let t=e[0];for(let n=1;n<e.length;n++){let r=e[n];typeof r==`number`?t+=r:(t?l(Object.assign(o[t]||=(r.L=t,r),r)):Object.assign(c(),r),t++)}},d=((e,t)=>typeof e==`number`?t?O[t](s(e)):s(e):u(e)),f=(e=[],t=[],n=[],i=[],a)=>(o,c,l,u,d,f=_.parentNode,m=_,h=n.length,v=i.length)=>{for(y!==`[`&&(b[p()]=y===`)`||y===`}`?f:_,u=`A`+x,d=y!==`]`&&y!==`)`,p());o=+x;){if((l||=[]).push(c=s(o)),dt(c,c.F),(c.O=r.p?.[o])&&(c.O.m=r.m),d){for(;m.previousSibling&&~g.indexOf(m=m.previousSibling););c._??=b,c.K=c.S=m,y===`(`&&(c.a=m)}else a=Ae(a,c),u&&(b[u]=a,ke(a,e=>e._??=b),a=e.pop()),m=t.pop(),f!==m.parentNode&&f.prepend(m),c.S=m,c.K=_.previousSibling===m?m:f.insertBefore(new Text,_);for(;h&&n[h-1].L>o;)h--,dt(n.pop(),c);for(;v&&i[v-1].L>o;){v--;let e=i.pop();e.F!==e&&(e.F=c)}p()}if(l){for(let e of l)n.push(e);d&&(b[u]=l.length>1?l.reverse():l[0])}y===`[`?(l||(e.push(a),a=void 0),t.push(_)):i.push(b)},p=()=>x=v.slice(S,(S=v.indexOf(` `,S)+1||v.length+1)-1),m=(e=[],t)=>{let n=0;for(;n<e.length;n++){let i=e[n];if(typeof i==`string`)for(S=0,v=i;p();)/\D/.test(x)?h=O[x]:t.push(h,s(x));else if(Array.isArray(i)){if(!(A&&i.every(e=>A.has(e)&&!r.b[e].length)))break}else if(A&&typeof i==`number`)break;else{let e=i(d);Array.isArray(e)&&u(e)}}return e.splice(0,n),n},h,g,_,v,y,b,x,S,C;return d._=O,r.m=e=>{if(m(r.r,e),A&&r.b)for(let t=1;t;){t=0;for(let n of A){let i=r.b[n];i&&m(i,e)&&(t=1)}}let t=0;for(_ of g=r.v)S=r.i.length,v=_.data,y=v[S++],b=s(p()),i&&y>`'`?(C||=f())():ee&&r.b&&y>`%`?g[t++]=_:b[p()]=y===`$`?_.previousSibling:_.parentNode.insertBefore(new Text,_);return g.length=t,e},r.w=()=>{a(),K(r)},r})})};if(t){r(t);for(let e in t)K(k(e))}else n({configurable:!0,set:r})}function K(e){try{j=1,d(e.m([]),1)}finally{j=0}}function q(e,t){return O[e]=t}function lt(e,t){return q(e,e=>n=>t(e,n)),t}function ut(e,t,n,r){let i=Pe(e);return i._=t.e||n,dt(i,n?.F),t.b?.(i,r.namespaceURI),i}function dt(e,t){t&&(e.N=t,(t.D||=new Set).add(e)),e.F=e}function J(e,t,n,r){return ft(t,ut(e,t,n,r))}function ft(e,t){return e.c&&F(t,e.c,-1),t}function Y(e,t,n,r,i,a){n=n?n.replace(/[^\0-1]+$/,``):``,r=r?r._||r:void 0,i||=void 0;let o=t?(e,r)=>{((te[r]||={})[1+t]||=mt(t,r))(e,n)}:e=>{G(e.S=e.K=new Text,n,e)};return t=>({a:e,b:o,e:t,c:r,d:i,f:a})}function pt(e,t,n,r,i,a){return q(e,Y(e,t,n,r,i,a))}function mt(e,t){let{firstChild:n,lastChild:r}=Ne(e,t),i=document.createElementNS(t,`t`);return Z(i,null,n,r),n===r&&n.nodeType<8?(e,t)=>{G(e.S=e.K=n.cloneNode(!0),t,e)}:(e,t)=>{let n=i.cloneNode(!0);G(n.firstChild,t,e),e.S=n.firstChild,e.K=n.lastChild}}function ht(e){return e||e===0?e+``:``}function gt(e,t,n){_t(e,t,X(n))}function _t(e,t,n){e.getAttribute(t)!=n&&(n===void 0?e.removeAttribute(t):e.setAttribute(t,n))}function vt(e,t){_t(e,`class`,n(t,` `,fe)||void 0)}function yt(e,t){_t(e,`style`,n(t,`;`,pe)||void 0)}function bt(e,t){let n=ht(t);e.data!==n&&(e.data=n)}function xt(e,t,n,r){let i=e[t];for(let e=i.attributes.length;e--;){let{name:t}=i.attributes.item(e);n&&(t in n||Ct(i,t,n))||i.removeAttribute(t)}Tt(e,t,n,r)}function St(e,t,n,r){xt(e,t,n,r),Et(e,t,n?.content)}function Ct(e,t,n){return t===`checked`&&e.tagName===`INPUT`&&`checkedValue`in n}function wt(e,t,n,r,i){let a=e[t],o={};for(let e=a.attributes.length;e--;){let{name:t}=a.attributes.item(e);!r[t]&&!(n&&(t in n||Ct(a,t,n)))&&a.removeAttribute(t)}for(let e in n){let t=he(e)?`on-${ge(e)}`:e;r[t]||(o[t]=n[e])}Tt(e,t,o,i)}function Tt(e,t,n,r){let i=e[t],a=e[`I`+t],o;for(let e in a)a[e]=0;r&&(e[`F`+t]=5,e[`E`+t]=0,n&&(o=r(e,t,n)));for(let r in n){let s=n[r];switch(r){case`class`:vt(i,s);break;case`style`:yt(i,s);break;default:he(r)?(a||=e[`I`+t]={})[ge(r)]=s:o?.test(r)||r===`content`&&i.tagName!==`META`||gt(i,r,s)}}}function Et(e,t,n){let r=Ot(n);e[`D`+t]!==(e[`D`+t]=on(r))&&($(e,t,r,J),r?.f&&U(r.e,r.f,e[`A`+t]));for(let n in r?.g)r.g[n](e[`A`+t],r.h[n])}function Dt(e,t){let n=e[t],r=e[`I`+t];re[e[`F`+t]]?.(e,t);for(let e in r)je(n,e,r[e])}function Ot(e){let t=_e(e);if(t&&t.a)return t}function X(e){if(N(e))return e===!0?``:e+``}function kt(e,t,n=0){let r=`K`+n,i=e[r];i?(Object.assign(i,t),i.onUpdate?.()):(e[r]=t,Object.assign(t,t.onMount?.()),Ee(e,r).onabort=()=>t.onDestroy?.())}function At(e,t){let n=t.nextSibling;for(;e!==n;){let t=e.nextSibling;e.remove(),e=t}}function Z(e,t,n,r){if(e.isConnected)e.insertBefore(jt(n,r),t);else{let i=r.nextSibling;for(;n!==i;){let r=n.nextSibling;e.insertBefore(n,t),n=r}}return e}function jt(e,t){return e===t?e:Z(new DocumentFragment,null,e,t)}function Mt(e,t,n,r){if((t||t===0)&&(t!==n.length||/kw/.test(e))){let e=n.slice(0,t),i=n.slice(t);if(r.startsWith(e))return t;if(r.endsWith(i))return r.length-i.length;let a=e.match(ne)?.length;for(;a&&ne.test(r);)a--;return a?r.length:ne.lastIndex}return-1}function Nt(e,t,n){let r=e[t],i=N(n);if(r.defaultChecked!==i){let t=e.H<o?r.checked:i;r.defaultChecked=i,t!==i&&(r.checked=t)}}function Pt(e,t,n){let r=e[t],i=X(n)||``;if(r.defaultValue!==i){let t=e.H<o?r.value:i;r.defaultValue=i,Lt(r,t)}}function Ft(e,t,n,r,i=Pt){let a=e[t],s=X(n)||``;e[`E`+t]=r,e[`G`+t]=s,e[`F`+t]=r?2:5,r&&e.H<o?Lt(a,s):i(e,t,n)}function It(e,t){let n=e[t];j&&(e[`G`+t]=n.defaultValue),qt(n,Xt,r=>{let i=e[`E`+t];i&&(M=r?.inputType,i(n.value),L(),Lt(n,e[`G`+t]),M=``)})}function Lt(e,t){if(e.value!==t){let n=Mt(M,document.activeElement===e&&e.selectionStart,e.value,e.value=t);~n&&e.setSelectionRange(n,n)}}function Rt(e,t,n){let r,i=e[t],a=e.H<o,s=Array.isArray(n),c=s?n.map(Q):Q(n);l.unshift(()=>{for(let e of i.options){let t=s?c.includes(e.value):e.value===c;e.defaultSelected!==t&&(a&&(r??=Ht(i,s)),e.defaultSelected=t)}r!==void 0&&Vt(i,r,s)},e)}function zt(e,t,n,r){let i=e[t],a=e.H<o,s=Array.isArray(n),c=e[`G`+t]=s?n.map(Q):Q(n);e[`E`+t]=r,e[`F`+t]=r?3:5,r&&a?l.unshift(()=>Vt(i,c,s),e):Rt(e,t,c)}function Bt(e,t){let n=e[t],r=()=>{let r=e[`E`+t];if(r){let i=e[`G`+t],a=Array.isArray(i),o=Ht(n,a);Vt(n,i,a),r(o),L()}};if(j){if(n.multiple){e[`G`+t]=[];for(let r of n.options)r.defaultSelected&&e[`G`+t].push(r.value)}else{e[`G`+t]=``;for(let r of n.options)if(r.defaultSelected){e[`G`+t]=r.value;break}}}qt(n,Zt,r),Kt(e,t,{childList:!0,subtree:!0},()=>{let i=e[`G`+t];(Array.isArray(i)?i.length!==n.selectedOptions.length||i.some((e,t)=>!i.includes(n.selectedOptions[t].value)):n.value!==i)&&r()})}function Vt(e,t,n){if(n)for(let n of e.options)n.selected=t.includes(n.value);else e.value=t}function Ht(e,t){return t?Array.from(e.selectedOptions,e=>e.value):e.value}function Ut(e,t,n){e.H===o&&(e[t].open=N(n))}function Wt(e,t,n,r){let i=e[`G`+t]=N(n);e[`E`+t]=r,e[`F`+t]=r?4:5,r&&e.H<o?e[t].open=i:Ut(e,t,i)}function Gt(e,t){let n=e[t];Kt(e,t,{attributes:!0,attributeFilter:[`open`]},()=>{let r=e[`E`+t];if(r&&n.open===!e[`G`+t]){let e=n.open;n.open=!e,r(e),L()}})}function Kt(e,t,n,r){(e[`N`+t]||=new MutationObserver(r)).observe(e[t],n)}function qt(e,t,n){e._=n,e.c=t,g(`input`,Jt),e.form&&g(`reset`,Yt),j&&t(e)&&queueMicrotask(n)}function Jt(e){e.target._?.(e)}function Yt(e){let t=[];for(let n of e.target.elements)n._&&n.c(n)&&t.push(n._);requestAnimationFrame(()=>{if(!e.defaultPrevented)for(let e of t)e()})}function Xt(e){return e.value!==e.defaultValue}function Zt(e){for(let t of e.options)if(t.selected!==t.defaultSelected)return!0}function Q(e){return X(e)||``}function Qt(e,t,n){if(`open`in n||`openChange`in n)return Wt(e,t,n.open,n.openChange),/^open(?:Change)?$/}function $t(e,t=Le(e,`Q`)){if(!t)return;let n=t.O;return n?.i||(n=tn(t,()=>rn(t))),c.add(l),en(n,t,()=>{V(t.P=J(t.$,t.Q,t._,t.S.parentNode),t.S.parentNode,t.S),Be(t)}),n}function en(e,t,n){e.i++||requestAnimationFrame(()=>e.i&&d(Se(()=>F(t,n,-1))))}function tn(e,t){let n=e.O={i:0,c(){if(--n.i)return 1;t(),I(e,nn)}};return n}function nn(e){let t=e.J;t&&(e.J=[],d(t,1))}function rn(e){let t=e.P;t&&(e.P=0,t.S.parentNode.insertBefore(e.S.parentNode,t.S),B(t))}function an(e,t){let n=Le(e,`E`);if(n){let e=n._,r=n.P;r&&(n.O&&(n.O.i=0),e[`A`+n.C]=r,z(n)),s.add(l),$(e,n.C,n.E,J),n.E?.d?.(e[`A`+n.C],[t])}else throw t}function on(e){return e?.e?e.a+` `+e.e.L:e?.a||e}function sn(e){Dt(e,`a`)}function $(e,t,n,r){let i=e[t],a=e[`A`+t],o=i.nodeType>1?(a?.S||i).parentNode:i,s=e[`A`+t]=n&&r(e.$,n,e,o);i===o?(a&&(z(a),i.textContent=``),s&&V(s,o,null)):a?(s?V(s,o,a.S):o.insertBefore(i,a.S),B(a)):s&&(V(s,o,i),i.remove())}function cn(e,t,n,r){let i=ut(e,t,n,r);return typeof t==`string`?i.a=i.S=i.K=document.createElementNS(t===`svg`?`http://www.w3.org/2000/svg`:t===`math`?`http://www.w3.org/1998/Math/MathML`:r.namespaceURI,t):ft(t,i),i}function ln(e,t){return t}function un(e){return e}var dn=(function(){let e=typeof document<`u`&&document.createElement(`link`).relList;return e&&e.supports&&e.supports(`modulepreload`)?`modulepreload`:`preload`})(),fn=function(e){return`/`+e},pn={},mn=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=fn(t,n),t=s(t),t in pn)return;pn[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:dn,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};export{c as $,at as A,S as B,oe as C,Ye as D,ue as E,Ge as F,lt as G,bt as H,kt as I,re as J,$t as K,je as L,ae as M,Ze as N,de as O,We as P,Ce as Q,qe as R,Qt as S,Je as T,ht as U,rt as V,tt as W,ct as X,r as Y,V as Z,Qe as _,vt as a,ft as at,Y as b,Ft as c,Bt as d,xe as et,yt as f,et as g,Dt as h,gt as i,o as it,nt as j,it as k,It as l,wt as m,Ee as n,ot as nt,Gt as o,Fe as ot,xt as p,s as q,Te as r,an as rt,Nt as s,st,mn as t,F as tt,zt as u,$e as v,se as w,pt as x,Ke as y,q as z};
Binary file