@teammy/server 0.1.0 → 0.1.2

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 (40) hide show
  1. package/README.md +2 -2
  2. package/dist/main.js +4252 -2901
  3. package/dist/project-pi-entry.js +1 -1
  4. package/dist/runtime/shared/system.md +5 -3
  5. package/dist/runtime/workflows/directory-analysis/config.json +1 -1
  6. package/dist/runtime/workflows/directory-analysis/prompt.md +6 -0
  7. package/dist/runtime/workflows/file-summary/config.json +1 -1
  8. package/dist/runtime/workflows/file-summary/prompt.md +4 -0
  9. package/dist/runtime/workflows/session-handoff/config.json +1 -1
  10. package/dist/runtime/workflows/session-handoff/prompt.md +11 -7
  11. package/dist/runtime/workflows/session-overview/config.json +1 -1
  12. package/dist/runtime/workflows/session-overview/prompt.md +16 -10
  13. package/dist/runtime/workflows/task-bootstrap/config.json +1 -1
  14. package/dist/runtime/workflows/task-bootstrap/prompt.md +10 -10
  15. package/dist/web/assets/Assistant-C6pKB7Ad.js +1 -0
  16. package/dist/web/assets/Assistant-CpCuE2gu.css +1 -0
  17. package/dist/web/assets/Dashboard-9YigAZz5.js +1 -0
  18. package/dist/web/assets/Dashboard-BOW5jKmH.css +1 -0
  19. package/dist/web/assets/Files-DV2qyyA7.js +1 -0
  20. package/dist/web/assets/Markdown-B3gyVKQQ.js +29 -0
  21. package/dist/web/assets/Sessions-paWfamTw.js +1 -0
  22. package/dist/web/assets/WorkspaceTree-1wC3k-B-.js +1 -0
  23. package/dist/web/assets/{file-links-CxMgXvq5.js → file-links-BV_YvnFy.js} +1 -1
  24. package/dist/web/assets/index-COCTfq_q.js +12 -0
  25. package/dist/web/assets/index-C_jc0zVK.css +1 -0
  26. package/dist/web/assets/project-context--9YVXMif.js +55 -0
  27. package/dist/web/assets/teammy-favicon-BiDvlPj2.png +0 -0
  28. package/dist/web/index.html +5 -4
  29. package/package.json +2 -1
  30. package/dist/web/assets/Assistant-DULVRmR1.css +0 -1
  31. package/dist/web/assets/Assistant-XhSRCXwn.js +0 -1
  32. package/dist/web/assets/Dashboard-BVdTOhzK.css +0 -1
  33. package/dist/web/assets/Dashboard-DTOcZYlb.js +0 -1
  34. package/dist/web/assets/Files-Cz049ktm.js +0 -1
  35. package/dist/web/assets/Markdown-B4-VDnLX.js +0 -29
  36. package/dist/web/assets/Sessions-CKSEnuem.js +0 -1
  37. package/dist/web/assets/WorkspaceTree-CAmKdjSN.js +0 -1
  38. package/dist/web/assets/index-CM5Lhy8F.js +0 -12
  39. package/dist/web/assets/index-DQlDs2jS.css +0 -1
  40. package/dist/web/assets/project-context-DaIDEKgk.js +0 -55
@@ -0,0 +1 @@
1
+ [data-testid=nav-assistant]{position:relative}.navigation-unread{background:var(--brand-orange);border-radius:50%;width:7px;height:7px;position:absolute;top:-3px;right:-4px}:root{--brand-black:#161615;--brand-orange:#fd523a;--brand-white:#fefcf5;--brand-cold-white:#fdfefe;--color-canvas:var(--brand-cold-white);--color-text:var(--brand-black);--color-muted:#747a7a;--color-surface:var(--brand-cold-white);--color-soft:#f3f5f5;--color-hover:#edf0f0;--color-line:#e0e5e5;--color-accent-soft:#fff0e8;--color-link:#ac3324;--color-danger:#a72d2d;--color-danger-soft:#fff0ec;--color-danger-line:#ebc6bd;--color-on-dark:var(--brand-cold-white);--color-rail-muted:#c6c6c0;--color-rail-hover:#30302c;--color-backdrop:#16161566;--shadow-menu:0 12px 40px #16161514;--shadow-modal:0 24px 80px #16161526;--shadow-floating:0 6px 28px #1616150a;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:ui-monospace, "SFMono-Regular", Menlo, Monaco, Consolas, monospace;--text-xs:12px;--text-sm:13px;--text-base:15px;--text-lg:17px;--text-title:28px;--text-project:38px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:40px;--space-8:48px;--control-height:44px;--sidebar-width:80px;--page-gutter:48px;--pane-width:340px;--line:var(--color-line);--muted:var(--color-muted);font-family:var(--font-body);color:var(--color-text);background:var(--color-canvas);font-synthesis:none;font-size:var(--text-base);--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;line-height:1.6}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}button,input,textarea,select{font:inherit;color:inherit}button,.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);font-size:var(--text-sm);cursor:pointer;flex-shrink:0;padding:9px 16px;font-weight:550;line-height:22px;text-decoration:none;transition:background-color .12s,color .12s;display:inline-flex}button:hover,.button:hover{background:var(--color-hover)}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--brand-black);border-color:var(--brand-black);color:var(--color-on-dark)}button.primary:hover{background:var(--color-rail-hover)}button.danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-on-dark)}:focus-visible{outline:2px solid var(--brand-orange);outline-offset:3px}input,select,textarea{width:100%;min-width:0;min-height:var(--control-height);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);padding:10px 12px}input::placeholder,textarea::placeholder{color:var(--color-muted)}textarea{resize:vertical}input:disabled,textarea:disabled{background:var(--color-soft);color:var(--color-muted)}input[type=checkbox],input[type=radio]{width:16px;height:16px;min-height:16px;accent-color:var(--brand-black);flex:0 0 16px;margin:0;padding:0}.check-field{width:fit-content;font-size:var(--text-sm);cursor:pointer;align-items:center;gap:8px;display:inline-flex}h1,h2,h3,p{margin:0}h1{font-size:var(--text-title);letter-spacing:-.7px;font-weight:750;line-height:1.35}h2{font-size:22px;font-weight:700;line-height:1.5}h3{font-size:var(--text-lg);font-weight:650}p{color:var(--color-muted);line-height:1.8}small,.muted{font-size:var(--text-sm);color:var(--color-muted)}a{color:var(--color-link);text-underline-offset:4px}code,pre{font-family:var(--font-mono)}fieldset{border:0;min-width:0;margin:0;padding:0}details>summary{cursor:pointer;font-size:var(--text-sm);padding:12px 0}details p{margin:8px 0}dt{color:var(--color-muted)}dd{overflow-wrap:anywhere;margin:0}.summary{font-size:var(--text-sm);grid-template-columns:auto 1fr;gap:8px 18px;margin:12px 0;display:grid}.brand{align-items:center;line-height:1;display:inline-flex}.brand img{width:176px;height:auto;display:block}.brand-compact img{object-fit:contain;width:42px;height:58px}.mascot{object-fit:contain;width:80px;height:112px;display:block}.icon{fill:none;stroke:currentColor;stroke-linejoin:round;stroke-linecap:round;flex-shrink:0}.stack{gap:var(--space-5);flex-direction:column;min-width:0;display:flex}.field{gap:var(--space-2);font-size:var(--text-sm);flex-direction:column;min-width:0;display:flex}.field>span{font-weight:600}.field small{font-weight:400;line-height:1.7}.row{align-items:center;gap:var(--space-2);display:flex}.wrap{flex-wrap:wrap}.actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.form-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.notice{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-soft);font-size:var(--text-sm);overflow-wrap:anywhere;padding:12px 16px}.notice:empty{display:none}.notice.error{background:var(--color-danger-soft);border-color:var(--color-danger-line);color:var(--color-danger)}.repository-status-card{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-soft);font-size:var(--text-sm);align-items:flex-start;gap:12px;padding:16px;display:flex}.repository-status-card>svg{flex:none}.repository-status-card strong{display:block}.repository-status-card p{color:var(--color-muted);margin:4px 0 0}.repository-status-card.active{background:var(--color-accent-soft);border-color:var(--color-link);color:var(--color-link)}.repository-status-card.error{background:var(--color-danger-soft);border-color:var(--color-danger-line);color:var(--color-danger)}.error-text{color:var(--color-danger);overflow-wrap:anywhere}.badge{border:1px solid var(--color-line);background:var(--color-soft);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--color-muted);vertical-align:middle;align-items:center;padding:2px 8px;line-height:20px;display:inline-flex}.badge.warn{background:var(--color-accent-soft);color:var(--color-link)}.panel{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-5);min-width:0}.panel>h2,.panel>h3{margin-bottom:var(--space-4)}.section-heading{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.section-heading h2{align-items:center;gap:var(--space-3);display:flex}.stack>.section-heading{margin-bottom:0}.count{color:var(--color-muted);margin-left:var(--space-2);font-variant-numeric:tabular-nums;align-items:center;font-size:.75em;font-weight:450;display:inline-flex}.avatar{background:var(--color-soft);width:48px;height:48px;color:var(--color-muted);border-radius:50%;flex-shrink:0;place-items:center;font-size:20px;font-weight:650;display:inline-grid}.avatar.small{width:32px;height:32px;font-size:var(--text-sm)}.empty{text-align:center;color:var(--color-muted);padding:48px 24px}.empty h3{margin-bottom:var(--space-2)}.empty p{font-size:var(--text-sm)}.empty-state{justify-content:center;align-items:center;gap:var(--space-3);text-align:center;padding:var(--space-8) var(--space-5);flex-direction:column;min-width:0;margin:auto;display:flex}.empty-state .mascot{margin-bottom:var(--space-4)}.empty-state>.icon{color:var(--color-muted);margin-bottom:var(--space-2)}.empty-state h3{font-size:var(--text-base);font-weight:600}.empty-state p{max-width:320px;font-size:var(--text-sm)}.icon-button{width:var(--control-height);height:var(--control-height);min-height:var(--control-height);border-radius:var(--radius-md);color:var(--color-text);background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;padding:10px;display:inline-flex;position:relative}.icon-button:hover{background:var(--color-hover)}:where(form,dialog,.task-card,.settings-section,.member-card) .icon-button{width:32px;height:32px;min-height:32px;padding:7px}:where(form,dialog,.task-card,.settings-section,.member-card) .icon-button>.icon{width:18px;height:18px}[data-tooltip]:after{content:attr(data-tooltip);z-index:50;border-radius:var(--radius-sm);background:var(--brand-black);color:var(--color-on-dark);white-space:nowrap;font-size:var(--text-xs);visibility:hidden;opacity:0;pointer-events:none;padding:5px 8px;font-weight:400;line-height:1.5;position:absolute;bottom:calc(100% + 6px);right:0}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{visibility:visible;opacity:1}.selection-item{color:inherit;background:0 0;border:0;text-decoration:none}.selection-item:hover{background:0 0}.selection-content{min-width:0;max-width:100%;padding:8px 12px;display:inline-flex;position:relative}.selection-inner{z-index:1;align-items:center;gap:12px;min-width:0;max-width:100%;display:inline-flex;position:relative}.selection-mark{pointer-events:none;fill:none;width:100%;height:100%;stroke:var(--brand-orange);stroke-linecap:round;stroke-linejoin:round;position:absolute;inset:0;overflow:visible}.selection-mark path{stroke-dasharray:1;stroke-dashoffset:0;animation:selection-draw var(--selection-duration) var(--selection-easing) both}.selection-mark .selection-mark-tail{animation-duration:var(--selection-tail-duration);animation-delay:var(--selection-tail-delay)}@keyframes selection-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.selection-item[data-selection-variant=inverse][data-selected=true] .selection-content{background:var(--color-on-dark);color:var(--brand-black);border-radius:var(--radius-md)}.toolbar-actions{align-items:center;gap:var(--space-3);display:flex}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.workspace{min-width:0;min-height:100dvh}.sidebar{z-index:30;width:var(--sidebar-width);background:var(--brand-black);color:var(--color-on-dark);scrollbar-width:none;flex-direction:column;align-items:center;padding:28px 8px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.sidebar nav{flex-direction:column;gap:12px;display:flex}.sidebar nav a{width:64px;height:68px;color:var(--color-rail-muted);justify-content:center;align-items:center;padding:0;display:flex;position:relative}.sidebar nav a:hover,.sidebar nav a[aria-current=page]{color:var(--color-on-dark)}.sidebar .selection-inner{flex-direction:column;gap:4px}.sidebar nav .icon{width:26px;height:26px}.navigation-label{font-size:var(--text-xs);font-weight:600;line-height:16px}.main-shell{margin-left:var(--sidebar-width);min-width:0}.workspace-home .main-shell{margin-left:0}.dropdown{min-width:0;position:relative}.dropdown-trigger{text-align:left;background:0 0;border:0;padding:8px 0}.dropdown-trigger:hover{background:0 0}.dropdown-menu{z-index:40;width:320px;max-width:calc(100vw - 40px);max-height:min(480px,70dvh);padding:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-menu);position:absolute;top:calc(100% + 12px);left:0;overflow:auto}.dropdown-menu [role=menuitem]{justify-content:flex-start;align-items:center;gap:var(--space-3);text-align:left;border:0;width:100%;padding:12px;display:flex}.dropdown-menu [role=menuitem]:hover,.dropdown-menu [role=menuitem]:focus-visible{background:var(--color-soft)}.dropdown-menu [role=menuitem]>span{overflow-wrap:anywhere;flex:1;min-width:0}.account-menu-wrap{max-width:160px;margin-left:auto}.account-menu-wrap .dropdown-trigger{max-width:100%;font-size:var(--text-lg)}.account-menu-wrap strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-menu-wrap .dropdown-menu{width:200px;left:auto;right:0}main#main{padding:48px var(--page-gutter);outline:0;min-width:0}.page-header{justify-content:space-between;align-items:center;gap:var(--space-5);margin-bottom:var(--space-6);display:flex}.page-header p{margin-top:var(--space-2);font-size:var(--text-sm)}.skip-link{z-index:100;background:var(--color-surface);padding:12px;position:fixed;top:-100px;left:12px}.skip-link:focus{top:12px}.file-explorer{height:100dvh;min-height:600px}.file-tree-pane{flex-direction:column;min-width:0;min-height:0;display:flex}.explorer-heading{justify-content:space-between;align-items:center;gap:var(--space-2);flex-shrink:0;min-height:48px;margin-bottom:32px;display:flex}.explorer-heading h1{align-items:center;gap:var(--space-3);letter-spacing:-.5px;min-width:0;font-size:26px;display:flex}[role=tree]{scrollbar-width:thin;min-height:0;padding:4px;overflow:auto}.tree-item{width:100%;min-height:40px;padding:2px 2px 2px calc((var(--tree-level) - 1) * 18px);font-size:var(--text-base);text-align:left;justify-content:flex-start;align-items:center;gap:2px;display:flex}.tree-item:focus-visible{outline-offset:-2px}.tree-item .selection-content{padding-top:5px;padding-bottom:5px}.tree-chevron{width:16px;height:24px;color:var(--color-muted);flex-shrink:0;align-items:center;display:inline-flex}.tree-chevron.expanded{transform:rotate(90deg)}.tree-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tree-status{color:var(--color-muted);font-size:var(--text-xs);padding:6px 24px;display:block}.tree-action{min-height:32px;font-size:var(--text-xs);background:0 0;margin:4px 16px;padding:4px 12px}.file-detail,.session-reader{min-width:0;min-height:0;padding:48px var(--page-gutter) 32px;flex-direction:column;display:flex;overflow:hidden}.file-detail-header{justify-content:space-between;align-items:center;gap:var(--space-4);flex-shrink:0;min-height:48px;margin-bottom:32px;display:flex}.file-detail-path{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-base);overflow:hidden}.file-detail-path>span{color:var(--color-muted)}.file-detail>.preview-body{flex:1;min-height:0;overflow:auto}.preview-body{min-width:0;padding:0 8px 24px 0}.file-detail>.notice{margin-bottom:var(--space-3)}.file-entry-retry{align-self:flex-start;margin:12px 0}.raw{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--text-sm);margin:0;line-height:1.8}.markdown{overflow-wrap:anywhere;min-width:0;font-size:16px;line-height:1.85}.markdown h1{font-size:30px}.markdown h2{font-size:23px}.markdown h3{font-size:18px}.markdown h1,.markdown h2,.markdown h3{margin:28px 0 12px}.markdown>:first-child{margin-top:0}.markdown p,.markdown ul,.markdown ol{color:var(--color-text);margin:12px 0}.markdown pre{background:var(--color-soft);border-radius:var(--radius-md);font-size:var(--text-sm);padding:18px;overflow:auto}.markdown code{background:var(--color-soft);border-radius:var(--radius-sm);padding:2px 4px}.markdown pre code{padding:0}.markdown blockquote{border-left:3px solid var(--brand-orange);margin:18px 0;padding:0 18px}.markdown table{border-collapse:collapse;max-width:100%;display:block;overflow:auto}.markdown td,.markdown th{border:1px solid var(--color-line);padding:8px 12px}.markdown input[type=checkbox]{appearance:none;vertical-align:-3px;border:2px solid var(--color-line);opacity:1;background:0 0;border-radius:50%;width:18px;height:18px;min-height:0;margin:0 8px 0 0;padding:0;position:relative}.markdown .task-list-item{list-style:none}.markdown .contains-task-list{padding-left:0}.markdown input[type=checkbox]:checked{border-color:var(--brand-orange)}.markdown input[type=checkbox]:checked:after{content:"";border:solid var(--brand-orange);border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.session-explorer{align-items:start;height:auto;min-height:100dvh}.session-explorer>.file-tree-pane{height:100dvh;position:sticky;top:0}.session-explorer .session-reader{min-height:100dvh;overflow:visible}.session-search-dock{z-index:2;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);width:min(100%,760px);box-shadow:var(--shadow-floating);flex-shrink:0;align-self:center;margin:24px 0 0;padding:10px 14px;position:sticky;bottom:24px}.session-search-input-row{align-items:center;gap:var(--space-2);display:flex}.session-search-input-row input{min-width:0;font-size:var(--text-base);background:0 0;border:0;flex:1;padding:8px 4px}.session-search-input-row input:focus{outline:0}.session-search-dock:focus-within{outline:2px solid var(--brand-orange);outline-offset:2px}.search-scope-chip{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);background:var(--color-hover);max-width:100%;height:22px;min-height:0;color:var(--color-muted);line-height:18px;font-size:var(--text-xs);text-align:left;border:0;padding:2px 6px;display:flex}.search-scope-chip .scope-label{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.search-scope-chip>span:last-child{flex-shrink:0;margin-left:auto}.session-reader-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:visible}.session-conversation{min-width:0}.conversation-header{padding-bottom:var(--space-5);border-bottom:1px solid var(--color-line)}.conversation-header p{font-size:var(--text-sm);margin-top:var(--space-2)}.session-title{overflow-wrap:anywhere;font-size:22px;line-height:1.5}.session-messages{flex-direction:column;display:flex}.session-message{gap:var(--space-4);border-bottom:1px solid var(--color-line);grid-template-columns:76px minmax(0,1fr);min-width:0;padding:24px 0;display:grid}.session-message.matched{box-shadow:inset 3px 0 var(--brand-orange);padding-left:var(--space-4);background:var(--color-accent-soft)}.message-role{font-size:var(--text-sm);color:var(--color-muted);padding-top:3px}.session-item{text-align:left;align-items:flex-start;gap:var(--space-2);padding:var(--space-5) 0;border:0;border-bottom:1px solid var(--color-line);background:0 0;border-radius:0;flex-direction:column;display:flex}.session-item>*{overflow-wrap:anywhere;min-width:0;max-width:100%}.session-excerpt{color:var(--color-muted);font-size:var(--text-sm);white-space:normal;font-weight:400}mark.search-highlight{color:inherit;background:linear-gradient(transparent 12%, color-mix(in srgb, var(--brand-orange) 32%, transparent) 12% 90%, transparent 90%);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:2px;padding:0}.management-page{max-width:1120px;margin:0 auto}.settings-layout{min-height:100dvh}.settings-navigation .page-header{min-height:48px;margin-bottom:32px}.settings-navigation h1{font-size:26px}.settings-tabs{gap:var(--space-3);flex-direction:column;display:flex}.settings-tabs[aria-orientation=horizontal]{gap:var(--space-5);flex-direction:row}.site-settings-content{padding-top:var(--space-7);margin-top:var(--space-5);border-top:1px solid var(--color-line)}.settings-tabs [role=tab]{font-size:var(--text-base);justify-content:flex-start;padding:2px 4px;font-weight:600}.settings-content{min-width:0;padding:48px var(--page-gutter)}.settings-content [role=tabpanel]{min-width:0}.settings-section{padding:0 0 var(--space-6)}.settings-section+.settings-section{border-top:1px solid var(--color-line);padding-top:var(--space-6)}.settings-section>h2{margin-bottom:var(--space-5)}.settings-section form,.settings-section>.stack{max-width:800px}.member-list{min-width:0}.member-card{justify-content:space-between;align-items:center;gap:var(--space-4);border-bottom:1px solid var(--color-line);min-width:0;padding:24px 0;display:flex}.member-heading{align-items:center;gap:var(--space-5);min-width:0;display:flex}.member-heading>div{min-width:0}.member-heading h3{overflow-wrap:anywhere;font-size:19px}.member-heading small{overflow-wrap:anywhere}.member-actions{gap:var(--space-1);display:flex}.form-section-title{margin-top:var(--space-4);padding-top:var(--space-5);border-top:1px solid var(--color-line)}.application-row{gap:var(--space-4);border-bottom:1px solid var(--color-line);grid-template-columns:90px minmax(0,1fr);padding:20px 0;display:grid}.application-row:last-child{border-bottom:0;padding-bottom:0}.application-row strong{font-size:var(--text-sm);overflow-wrap:anywhere;font-weight:600}.ai-model-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding-top:0}.ai-model-row>div{min-width:0}.ai-model-row small{overflow-wrap:anywhere;display:block}.connect-panel{gap:var(--space-4);flex-direction:column;display:flex}.connect-panel>h2{margin:0}.connect-panel p{font-size:var(--text-sm)}.command{align-items:center;gap:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-soft);padding:12px;display:flex}.command code{font-size:var(--text-sm);overflow-wrap:anywhere;white-space:pre-wrap;flex:1;min-width:0}.command button{min-height:32px;padding:6px}.scope-path{border-top:1px solid var(--color-line);font-size:var(--text-xs);overflow-wrap:anywhere;color:var(--color-muted);margin-top:20px;padding-top:16px}.model-default-row{padding:8px 0}.model-default-controls{align-items:flex-end;gap:var(--space-3);display:flex}.model-default-controls .field{flex:1;min-width:0}.model-default-controls .icon-button{margin-bottom:2px}.settings-section-actions{margin-bottom:var(--space-4);justify-content:flex-end;display:flex}.site-page{max-width:1320px;margin:0 auto}.site-brand-header{justify-content:space-between;align-items:center;gap:var(--space-5);margin-bottom:64px;display:flex}.site-page .page-header{margin-bottom:28px}.site-page .page-header h1{font-size:36px}.project-list{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:28px;display:grid}.project-card{text-align:left;border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-canvas);flex-direction:column;align-items:flex-start;gap:24px;min-height:230px;padding:30px;display:flex;position:relative}.project-card:hover{border-color:var(--brand-orange);background:var(--color-canvas)}.project-card>span{min-width:0}.project-card strong{overflow-wrap:anywhere;font-size:22px;display:block}.project-card small{overflow-wrap:anywhere;margin-top:10px;font-weight:400;display:block}.project-card>.icon:last-child{color:var(--color-muted);position:absolute;bottom:28px;right:24px}dialog{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-canvas);width:calc(100% - 32px);max-width:520px;color:var(--color-text);box-shadow:var(--shadow-modal);max-height:85dvh;padding:0;overflow:auto}dialog::backdrop{background:var(--color-backdrop)}.dialog-content{padding:var(--space-6)}.dialog-header{margin-bottom:var(--space-5);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.dialog-header h2{font-size:22px}.boot{gap:var(--space-5);max-width:520px;margin:100px auto;padding:24px;display:grid}.access{grid-template-columns:minmax(280px,42%) minmax(0,1fr);min-height:100dvh;display:grid}.access-aside{background:var(--color-soft);flex-direction:column;padding:40px;display:flex;position:relative;overflow:hidden}.access-art{flex:1;place-items:center;padding:48px 0;display:grid}.access-art .mascot{width:min(70%,250px);height:auto;max-height:45dvh}.access-copy{padding:16px 0 8px}.access-copy h2{letter-spacing:-1px;margin:0;font-size:30px}.access-main{justify-content:center;align-items:center;padding:56px 48px;display:flex}.access-form{gap:var(--space-5);flex-direction:column;width:100%;max-width:380px;display:flex}.access-form>p{font-size:var(--text-sm);margin-top:-10px}.wide{width:100%}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.brand-home{border-radius:var(--radius-sm);justify-content:center;margin-bottom:36px;display:inline-flex}.sidebar .selection-content{justify-content:center;align-items:center;width:100%;height:100%;padding:8px}.split-layout{grid-template-columns:var(--pane-width) minmax(0, 1fr);display:grid}.file-tree-pane,.settings-navigation{border-right:1px solid var(--color-line);padding:48px 24px 32px 28px}main#main:is([data-page=files],[data-page=sessions],[data-page=settings]){padding:0}.setup-runtime{color:var(--muted);flex-wrap:wrap;gap:8px 14px;font-size:12px;display:flex}
@@ -0,0 +1,55 @@
1
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t,t.exports),e=null),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,o)=>(o=n==null?{}:e(i(n)),c(r||!n||!n.__esModule||!a.call(n,`default`)?t(o,`default`,{value:n,enumerable:!0}):o,n));function u(){return document.querySelector(`meta[name="teammy-base-path"]`)?.content??``}function d(e){let t=u();return!e.startsWith(`/`)||e.startsWith(`//`)||!t||e===t||e.startsWith(t+`/`)||e.startsWith(t+`?`)?e:t+e}function f(){let e=u();return e&&(location.pathname===e||location.pathname.startsWith(e+`/`))?location.pathname.slice(e.length)||`/`:location.pathname}function p(){return location.origin+u()}var m=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.for(`react.view_transition`),m=Symbol.iterator;function h(e){return typeof e!=`object`||!e?null:(e=m&&e[m]||e[`@@iterator`],typeof e==`function`?e:null)}var ee={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},te=Object.assign,ne={};function g(e,t,n){this.props=e,this.context=t,this.refs=ne,this.updater=n||ee}g.prototype.isReactComponent={},g.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},g.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function re(){}re.prototype=g.prototype;function ie(e,t,n){this.props=e,this.context=t,this.refs=ne,this.updater=n||ee}var ae=ie.prototype=new re;ae.constructor=ie,te(ae,g.prototype),ae.isPureReactComponent=!0;var oe=Array.isArray;function _(){}var v={H:null,A:null,T:null,S:null},y=Object.prototype.hasOwnProperty;function se(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function ce(e,t){return se(e.type,t,e.props)}function b(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function le(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var x=/\/+/g;function ue(e,t){return typeof e==`object`&&e&&e.key!=null?le(``+e.key):t.toString(36)}function de(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(_,_):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function S(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,S(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+ue(e,0):a,oe(o)?(i=``,c!=null&&(i=c.replace(x,`$&/`)+`/`),S(o,r,i,``,function(e){return e})):o!=null&&(b(o)&&(o=ce(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(x,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(oe(e))for(var u=0;u<e.length;u++)a=e[u],s=l+ue(a,u),c+=S(a,r,i,s,o);else if(u=h(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+ue(a,u++),c+=S(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return S(de(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function C(e,t,n){if(e==null)return e;var r=[],i=0;return S(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function fe(e){if(e._status===-1){var t=e._result,n=t();n.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t,n.status===void 0&&(n.status=`fulfilled`,n.value=t))},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t,n.status===void 0&&(n.status=`rejected`,n.reason=t))}),e._status===-1&&(e._status=0,e._result=n)}if(e._status===1)return e._result.default;throw e._result}var pe=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)};function me(e){var t=v.T,n={};n.types=t===null?null:t.types,v.T=n;try{var r=e(),i=v.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(_,pe)}catch(e){pe(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),v.T=t}}function he(e){var t=v.T;if(t!==null){var n=t.types;n===null?t.types=[e]:n.indexOf(e)===-1&&n.push(e)}else me(he.bind(null,e))}var ge={map:C,forEach:function(e,t,n){C(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return C(e,function(){t++}),t},toArray:function(e){return C(e,function(e){return e})||[]},only:function(e){if(!b(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=ge,e.Component=g,e.Fragment=r,e.Profiler=a,e.PureComponent=ie,e.StrictMode=i,e.Suspense=l,e.ViewTransition=p,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=v,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return v.H.useMemoCache(e)}},e.addTransitionType=he,e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=te({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!y.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return se(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)y.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return se(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=b,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:fe}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=me,e.unstable_useCacheRefresh=function(){return v.H.useCacheRefresh()},e.use=function(e){return v.H.use(e)},e.useActionState=function(e,t,n){return v.H.useActionState(e,t,n)},e.useCallback=function(e,t){return v.H.useCallback(e,t)},e.useContext=function(e){return v.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return v.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return v.H.useEffect(e,t)},e.useEffectEvent=function(e){return v.H.useEffectEvent(e)},e.useId=function(){return v.H.useId()},e.useImperativeHandle=function(e,t,n){return v.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return v.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return v.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return v.H.useMemo(e,t)},e.useOptimistic=function(e,t){return v.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return v.H.useReducer(e,t,n)},e.useRef=function(e){return v.H.useRef(e)},e.useState=function(e){return v.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return v.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return v.H.useTransition()},e.version=`19.3.1`})),h=o(((e,t)=>{t.exports=m()}));function ee(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function te(e,t=`|`){return e.map(e=>_e(e)).join(t)}function ne(e,t){return typeof t==`bigint`?t.toString():t}var g=class{constructor(e){this._getter=e,this._value=void 0}get value(){let e=this._getter;return e!==void 0&&(this._value=e(),this._getter=void 0),this._value}};function re(e){return new g(e)}function ie(e){return e==null}function ae(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function oe(e,t){let n=e/t,r=Math.round(n),i=4*2**-52*Math.max(Math.abs(n),1);return Math.abs(n-r)<i?0:n-r}function _(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function v(e){let t=Object.getOwnPropertyDescriptor(e,`shape`);return t?.get?t.get.raw:t?.value}function y(e){return v(e._zod.def)??e._zod.def.shape}function se(e,t,n){Object.defineProperty(e,t,{get(){let e=n();return _(this,t,e),e},enumerable:!0,configurable:!0})}function ce(e,t,n){t in e?_(e,t,n):e[t]=n}function b(e,t,n,r){let i=y(t);for(let a of n){let n=Object.getOwnPropertyDescriptor(i,a);n.enumerable&&(n.get?se(e,a,()=>{let e=t._zod.def.shape[a];return r?r(e,a):e}):ce(e,a,r?r(n.value,a):n.value))}}function le(e,t){for(let n of Reflect.ownKeys(t)){let r=Object.getOwnPropertyDescriptor(t,n);r.enumerable&&(r.get?se(e,n,()=>t[n]):ce(e,n,r.value))}}function x(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function ue(e){return JSON.stringify(e)}function de(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var S=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function C(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var fe=re(()=>{if(A.jitless||typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function pe(e){if(C(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return C(n)!==!1&&Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)!==!1}function me(e){return pe(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}var he=new Set([`string`,`number`,`symbol`]);function ge(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function w(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function T(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function _e(e){return typeof e==`bigint`?e.toString()+`n`:typeof e==`string`?`"${e}"`:`${e}`}function ve(e){return Object.keys(e).filter(t=>e[t]._zod.optin!==void 0&&e[t]._zod.optout===`optional`)}var ye={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},be={int64:[BigInt(`-9223372036854775808`),BigInt(`9223372036854775807`)],uint64:[BigInt(0),BigInt(`18446744073709551615`)]};function xe(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);let i={};return b(i,e,Se(e,t)),w(e,x(n,{shape:i,checks:[]}))}function Se(e,t){let n=y(e),r=[];for(let e of Reflect.ownKeys(t)){if(!Object.getOwnPropertyDescriptor(n,e)?.enumerable)throw Error(`Unrecognized key: "${String(e)}"`);t[e]&&r.push(e)}return r}function Ce(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);let i=new Set(Se(e,t)),a={};return b(a,e,Reflect.ownKeys(y(e)).filter(e=>!i.has(e))),w(e,x(n,{shape:a,checks:[]}))}function we(e,t){if(!pe(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=y(e);for(let e of Reflect.ownKeys(t))if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return w(e,x(e._zod.def,{shape:Te(e,t)}))}function Te(e,t){let n={};return b(n,e,Reflect.ownKeys(y(e))),le(n,t),n}function Ee(e,t){if(!pe(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return w(e,x(e._zod.def,{shape:Te(e,t)}))}function De(e,t){if(!t?._zod?.def)throw Error("Invalid input to merge: expected an object schema. To merge a plain shape, use `.extend()`.");if(e._zod.def.checks?.length)throw Error(`.merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.`);let n={};return b(n,e,Reflect.ownKeys(y(e))),b(n,t,Reflect.ownKeys(y(t))),w(e,x(e._zod.def,{shape:n,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function Oe(e,t,n,r=`partial`){let i=t._zod.def.checks;if(i&&i.length>0)throw Error(`.${r}() cannot be used on object schemas containing refinements`);let a=n?new Set(Se(t,n)):void 0,o={};return b(o,t,Reflect.ownKeys(y(t)),e&&((t,n)=>a&&!a.has(n)?t:new e({type:`optional`,innerType:t}))),w(t,x(t._zod.def,{shape:o,checks:[]}))}function ke(e,t,n){let r=n?new Set(Se(t,n)):void 0,i={};return b(i,t,Reflect.ownKeys(y(t)),(t,n)=>r&&!r.has(n)?t:new e({type:`nonoptional`,innerType:t})),w(t,x(t._zod.def,{shape:i}))}function E(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Ae(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function je(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Me(e){return typeof e==`string`?e:e?.message}function Ne(e){let t=[];for(let n of e??[]){let e=n._zod.def;if(!/_(length|size)$|_equals$/.test(e.check))break;let r=e.maximum??e.length??e.size;r>=0&&t.push([r,n])}return t}function Pe(e,t,n){var r;for(let i=t;i<e.length;i++)(r=e[i]).schema??(r.schema=n)}function Fe(e,t,n){var r;let i=e.inst?._zod?.traits;i?.has(`$ZodType`)&&(i.has(`$ZodCheck`)?(r=e).schema??(r.schema=e.inst):e.schema=e.inst);let a=e.schema===e.inst?void 0:e.schema?._zod.def?.error,o=e.message?e.message:Me(e.inst?._zod.def?.error?.(e))??Me(a?.(e))??Me(t?.error?.(e))??Me(n.customError?.(e))??Me(n.localeError?.(e))??`Invalid input`,s={};for(let t of Object.keys(e))t!==`inst`&&t!==`schema`&&t!==`continue`&&t!==`input`&&t!==`__proto__`&&(s[t]=e[t]);return s.path??=[],s.message=o,t?.reportInput&&(s.input=e.input),s}var Ie=/[\uD800-\uDBFF]/;function Le(e){let t=e.length;if(!Ie.test(e))return t;let n=t;for(let r=0;r<t-1;r++)(e.charCodeAt(r)&64512)==55296&&(e.charCodeAt(r+1)&64512)==56320&&(n--,r++);return n}function Re(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function ze(e){let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`nan`:`number`;case`object`:{if(e===null)return`null`;if(Array.isArray(e))return`array`;let t=e;if(t&&Object.getPrototypeOf(t)!==Object.prototype&&`constructor`in t&&t.constructor)return t.constructor.name}}return t}function Be(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}function Ve(e,t){for(let n in t){let r=Object.getOwnPropertyDescriptor(t,n);r.get?Object.defineProperty(e,n,{...r,enumerable:!1}):We(e,n,r.value)}}function D(e,t,n,r=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:r,value:n}),n}function He(e,t,n){return D(e,t,n,!1)}function Ue(e,t){for(let n in e){let r=e[n];Object.defineProperty(t,n,{configurable:!0,enumerable:!0,get(){return D(this,n,r(this))},set(e){D(this,n,e)}})}return t}function We(e,t,n){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?n:D(this,t,n.bind(this))},set(e){D(this,t,e)}})}function Ge(e,t){let n=Object.getPrototypeOf(e);return t in n?void 0:n}var Ke,qe=!1,Je={configurable:!0,get(){qe=!0}};function O(e,t,n){let r=Object.getPrototypeOf(e._zod);t in r&&Ke!==e._zod?Ke=void 0:(Ke=e._zod,Object.defineProperty(r,t,{configurable:!0,get(){Object.defineProperty(this,t,Je);let e=qe;qe=!1;try{let r=n(this);return qe?delete this[t]:Object.defineProperty(this,t,{configurable:!0,writable:!0,value:r}),qe||=e,r}catch(n){throw delete this[t],qe||=e,n}},set(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:e})}}))}function Ye(e,t,n,r){let i=Ge(e,t);i&&Object.defineProperty(i,t,{configurable:!0,get(){let e={configurable:!0,writable:!0,enumerable:r,value:void 0};return Object.defineProperty(this,t,e),e.value=n(this),Object.defineProperty(this,t,e),e.value},set(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,enumerable:r,value:e})}})}var Xe=`~constantCatch`;function Ze(e){let t=()=>e;return t[Xe]=!0,t}var Qe,$e={value:void 0,enumerable:!1},et=`captureStackTrace`in Error?Error:null;function tt(e){let t=et;if(t){let n=t.stackTraceLimit;if(typeof n==`number`){try{t.stackTraceLimit=0}catch{return et=null,new e}try{return new e}finally{t.stackTraceLimit=n}}}return new e}function k(e,t,n,r){let i={};function a(e){this.def=e,this.constr=d,this.traits=new Set}a.prototype=i;let o=n,s=o&&new WeakSet;function c(n,r){if(!n._zod){$e.value=new a(r);try{Object.defineProperty(n,"_zod",$e)}finally{$e.value=void 0}}else if(n._zod.traits.has(e))return;if(n._zod.traits.add(e),t(n,r),s){let e=Object.getPrototypeOf(n),t=n._zod.constr.prototype,r=e;for(;r&&r!==t;)r=Object.getPrototypeOf(r);let i=r??e;s.has(i)||(s.add(i),Ve(i,o))}let i=d.prototype;for(let e in i)Object.prototype.hasOwnProperty.call(i,e)&&(e in n||(n[e]=i[e].bind(n)))}let l=r?.Parent??Object;class u extends l{}Object.defineProperty(u,"name",{value:e});function d(e){let t=r?.Parent?tt(u):this;c(t,e);let n=t._zod.deferred;if(n){for(let e of n)e();t._zod.deferred=void 0}let i=globalThis.__zod_globalConfig?.postProcessor;return i&&i(t),t}return Object.defineProperty(d,"init",{value:c}),Object.defineProperty(d,Symbol.hasInstance,{value:t=>r?.Parent&&t instanceof r.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(d,"name",{value:e}),d}var nt=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},rt=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(Qe=globalThis).__zod_globalConfig??(Qe.__zod_globalConfig={});var A=globalThis.__zod_globalConfig;function j(e){return e&&Object.assign(A,e),A}function it(){let e=this._zod;return e.message??=JSON.stringify(e.def,ne,2),e.message}function at(e){this._zod.message=e}var ot={get:it,set:at,enumerable:!0,configurable:!0},st={value:void 0,enumerable:!1},ct=new WeakSet([Object.prototype,Error.prototype]),lt=k(`$ZodError`,(e,t)=>{e.name=`$ZodError`,st.value=t,Object.defineProperty(e,"issues",st),st.value=void 0,Object.defineProperty(e,"message",ot);let n=Object.getPrototypeOf(e);ct.has(n)||(ct.add(n),Object.defineProperty(n,"toString",{configurable:!0,enumerable:!1,get(){let e=()=>this.message;return Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0}),e},set(e){Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0})}}))});function ut(e,t,n){return Object.prototype.hasOwnProperty.call(e,t)||(t===`__proto__`?Object.defineProperty(e,t,{value:n(),writable:!0,enumerable:!0,configurable:!0}):e[t]=n()),e[t]}function dt(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?ut(n,i.path[0],()=>[]).push(t(i)):r.push(t(i));return{formErrors:r,fieldErrors:n}}function ft(e,t=e=>e.message){let n={_errors:[]},r=(e,i=[])=>{for(let a of e.issues)if(a.code===`invalid_union`&&a.errors.length)a.errors.map(e=>r({issues:e},[...i,...a.path]));else if(a.code===`invalid_key`)r({issues:a.issues},[...i,...a.path]);else if(a.code===`invalid_element`)r({issues:a.issues},[...i,...a.path]);else{let e=[...i,...a.path];if(e.length===0)n._errors.push(t(a));else{let r=n,i=0;for(;i<e.length;){let n=e[i],o=i===e.length-1;if(n===`_errors`){o&&r._errors.push(t(a)),i++;continue}Object.prototype.hasOwnProperty.call(r,n)||Object.defineProperty(r,n,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});let s=r[n];o&&s._errors.push(t(a)),r=s,i++}}}};return r(e),n}function pt(e,t){return{callee:t?.callee??e,Err:t?.Err}}var mt=e=>{let t=(n,r,i,a)=>{let o=i?{...i,async:!1}:{async:!1},s=n._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new nt;if(s.issues.length){let n=new((a?.Err)??e)(s.issues.map(e=>Fe(e,o,j())));throw S(n,a?.callee??t),n}return s.value};return t},ht=e=>{let t=async(n,r,i,a)=>{let o=i?{...i,async:!0}:{async:!0},s=n._zod.run({value:r,issues:[]},o);if(s instanceof Promise&&(s=await s),s.issues.length){let n=new((a?.Err)??e)(s.issues.map(e=>Fe(e,o,j())));throw S(n,a?.callee??t),n}return s.value};return t},gt=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new nt;return a.issues.length?_t(e,a.issues,i):{success:!0,data:a.value}};function _t(e,t,n){let r;return{success:!1,get error(){return r||(r=new e(t.map(e=>Fe(e,n,j()))),t=void 0,n=void 0),r},set error(e){r=e,t=void 0,n=void 0}}}var vt=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?_t(e,a.issues,i):{success:!0,data:a.value}},yt=Symbol.for(`zod.compile.invalid`),bt=Symbol.for(`zod.compile.fallback`),xt=((e,t,n)=>{let r=e._zod.bag.validator;if(r!==void 0){if(r(t)!==yt)return!0;if(r.definite===!0&&n===void 0)return!1}return St(e,t,n)});function St(e,t,n){let r=n?{...n,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},i=e._zod.bag.fallbackRun,a;if(i?(r[bt]=!0,a=i({value:t,issues:[]},r)):a=e._zod.run({value:t,issues:[]},r),a instanceof Promise)throw new nt;return a.issues.length===0}var Ct=async(e,t,n)=>{let r=n?{...n,async:!0,abortEarly:!0}:{async:!0,abortEarly:!0},i=e._zod.run({value:t,issues:[]},r);return i instanceof Promise&&(i=await i),i.issues.length===0},wt=e=>{let t=mt(e),n=(e,r,i,a)=>{let o=i?{...i,direction:`backward`}:{direction:`backward`};return t(e,r,o,pt(n,a))};return n},Tt=e=>{let t=mt(e),n=(e,r,i,a)=>t(e,r,i,pt(n,a));return n},Et=e=>{let t=ht(e),n=async(e,r,i,a)=>{let o=i?{...i,direction:`backward`}:{direction:`backward`};return await t(e,r,o,pt(n,a))};return n},Dt=e=>{let t=ht(e),n=async(e,r,i,a)=>await t(e,r,i,pt(n,a));return n},Ot=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return gt(e)(t,n,i)},kt=e=>(t,n,r)=>gt(e)(t,n,r),At=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return vt(e)(t,n,i)},jt=e=>async(t,n,r)=>vt(e)(t,n,r),Mt=/^[cC][0-9a-z]{6,}$/,Nt=/^[0-9a-z]+$/,Pt=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,Ft=/^[0-9a-vA-V]{20}$/,It=/^[A-Za-z0-9]{27}$/,Lt=/^[a-zA-Z0-9_-]{21}$/;function Rt(e){return RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}var zt=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Bt=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Vt=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Ht=/^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Ut=`^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$`;function Wt(){return new RegExp(Ut,`u`)}var Gt=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Kt=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,qt=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Jt=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Yt=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Xt=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/,Zt=/^https?$/,Qt=/^\+[1-9]\d{6,14}$/,$t=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`;function en(e){return RegExp(`^${e}$`)}var tn=en($t);function nn(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?`${t}:[0-5]\\d(?:\\.\\d+)?`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function rn(e){return RegExp(`^${nn(e)}$`)}function an(e){let t=[`Z`];e.offset&&t.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let n=`${nn({precision:e.precision,seconds:!0})}(?:${t.join(`|`)})`,r=e.local?`${n}|${nn({precision:e.precision})}`:n;return RegExp(`^${$t}T(?:${r})$`)}var on=/^[\s\S]{0,}$/,sn=/^-?\d+(?:\.\d+)?$/,cn=/^(?:true|false)$/i,ln=/^[^A-Z]*$/,un=/^[^a-z]*$/,M=k(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),dn=e=>{let t=e.value;return!ie(t)&&t.length!==void 0},fn={number:`number`,bigint:`bigint`,object:`date`},pn=k(`$ZodCheckLessThan`,(e,t)=>{M.init(e,t);let n=fn[typeof t.value];e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:fn[typeof r.value]??n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),mn=k(`$ZodCheckGreaterThan`,(e,t)=>{M.init(e,t);let n=fn[typeof t.value];e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:fn[typeof r.value]??n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),hn=k(`$ZodCheckMultipleOf`,(e,t)=>{M.init(e,t),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?t.value!==BigInt(0)&&n.value%t.value===BigInt(0):oe(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),gn=k(`$ZodCheckNumberFormat`,(e,t)=>{M.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=ye[t.format];e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),_n=k(`$ZodCheckMaxLength`,(e,t)=>{var n;M.init(e,t),(n=e._zod.def).when??(n.when=dn),e._zod.check=n=>{let r=n.value,i=r.length;if((typeof r==`string`&&i>t.maximum?Le(r):i)<=t.maximum)return;let a=Re(r);n.issues.push({origin:a,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),vn=k(`$ZodCheckMinLength`,(e,t)=>{var n;M.init(e,t),(n=e._zod.def).when??(n.when=dn),e._zod.check=n=>{let r=n.value,i=r.length;if((typeof r==`string`&&i>=t.minimum&&i<t.minimum*2?Le(r):i)>=t.minimum)return;let a=Re(r);n.issues.push({origin:a,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),yn=k(`$ZodCheckLengthEquals`,(e,t)=>{var n;M.init(e,t),(n=e._zod.def).when??(n.when=dn),e._zod.check=n=>{let r=n.value,i=r.length,a=typeof r==`string`&&i>=t.length&&i<=t.length*2?Le(r):i;if(a===t.length)return;let o=Re(r),s=a>t.length;n.issues.push({origin:o,...s?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),bn=k(`$ZodCheckStringFormat`,(e,t)=>{var n,r;M.init(e,t),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),xn=k(`$ZodCheckRegex`,(e,t)=>{bn.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Sn=k(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=ln,bn.init(e,t)}),Cn=k(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=un,bn.init(e,t)}),wn=k(`$ZodCheckIncludes`,(e,t)=>{M.init(e,t);let n=ge(t.includes);t.pattern=new RegExp(typeof t.position==`number`?`^.{${t.position},}${n}`:n),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Tn=k(`$ZodCheckStartsWith`,(e,t)=>{M.init(e,t);let n=RegExp(`^${ge(t.prefix)}.*`);t.pattern??=n,e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),En=k(`$ZodCheckEndsWith`,(e,t)=>{M.init(e,t);let n=RegExp(`.*${ge(t.suffix)}$`);t.pattern??=n,e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),Dn=k(`$ZodCheckOverwrite`,(e,t)=>{M.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),On=class{constructor(e=[],t={}){this.content=[],this.indent=0,this.args=e,this.closed=t}indented(e){this.indent+=1;try{e(this)}finally{--this.indent}}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
2
+ `).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.content??[``];return new e(...Object.keys(this.closed),`return function (${this.args.join(`, `)}) {\n${t.join(`
3
+ `)}\n};`)(...Object.values(this.closed))}},kn={major:4,minor:6,patch:7},N=k(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=kn;let r=e._zod.def.checks,i=e._zod.traits.has(`$ZodCheck`)?[e,...r??[]]:r?.length?[...r]:[];for(let t of i)for(let n of t._zod.onattach)n(e);if(i.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(t,n,r)=>{if(t.memo)return t;let i=E(t),a;for(let o of n){if(o._zod.def.when){if(Ae(t)||!o._zod.def.when(t))continue}else if(i)continue;let n=t.issues.length,s=o._zod.check(t);if(s instanceof Promise&&r?.async===!1)throw new nt;if(a||s instanceof Promise)a=(a??Promise.resolve()).then(async()=>{await s,t.issues.length!==n&&(Pe(t.issues,n,e),i||=E(t,n))});else{if(t.issues.length===n)continue;Pe(t.issues,n,e),i||=E(t,n)}}return a?a.then(()=>t):t},n=(n,r,a)=>{if(E(n))return n.aborted=!0,n;let o=t(r,i,a);if(o instanceof Promise){if(a.async===!1)throw new nt;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(r,a)=>{if(a.skipChecks)return e._zod.parse(r,a);if(a.direction===`backward`){let t=e._zod.parse({value:r.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,r,a)):n(t,r,a)}let o=e._zod.parse(r,a);if(o instanceof Promise){if(a.async===!1)throw new nt;return o.then(e=>t(e,i,a))}return t(o,i,a)}}},{get"~standard"(){return He(this,`~standard`,Mn(this))},set"~standard"(e){D(this,`~standard`,e)}}),An=(e,t)=>e.issues.length?{issues:e.issues.map(e=>Fe(e,t,j()))}:{value:e.value};async function jn(e,t){let n={async:!0};return An(await e._zod.run({value:t,issues:[]},n),n)}function Mn(e){return{validate:t=>{let n={async:!1};try{let r=e._zod.run({value:t,issues:[]},n);if(!(r instanceof Promise))return An(r,n)}catch{}return jn(e,t)},vendor:`zod`,version:1}}var Nn=k(`$ZodString`,(e,t)=>{N.init(e,t),e._zod.pattern=t.pattern??on,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),P=k(`$ZodStringFormat`,(e,t)=>{bn.init(e,t),Nn.init(e,t)}),Pn=k(`$ZodGUID`,(e,t)=>{t.pattern??=Bt,P.init(e,t)}),Fn=k(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=Vt(e)}else t.pattern??=Vt();P.init(e,t)}),In=k(`$ZodEmail`,(e,t)=>{t.pattern??=Ht,P.init(e,t)});function Ln(e){try{return typeof URL<`u`&&typeof URL.canParse==`function`?URL.canParse(e):(new URL(e),!0)}catch{return!1}}function Rn(e,t){return!(`normalize`in t)&&!(`hostname`in t)&&!(`protocol`in t)?Ln(e)||2:zn(e,t)}function zn(e,t){if(!t.normalize&&t.protocol?.source===Zt.source&&!/^https?:\/\//i.test(e))return 1;try{if(typeof URL<`u`){let t=URL;if(typeof t.parse==`function`)return t.parse(e)??2}return new URL(e)}catch{return 2}}var Bn=/[\t\n\r]/g;function Vn(e){return e.replace(Bn,``)}function Hn(e,t){return t.lastIndex=0,t.test(e.hostname)}function Un(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(`:`)?e.protocol.slice(0,-1):e.protocol)}var Wn=k(`$ZodURL`,(e,t)=>{P.init(e,t),e._zod.check=n=>{try{let r=n.value.trim(),i=Rn(r,t);if(i===1){n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid URL format`,input:n.value,inst:e,continue:!t.abort});return}if(i===2){n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort});return}if(i===!0){n.value=Vn(r);return}t.hostname&&!Hn(i,t.hostname)&&n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort}),t.protocol&&!Un(i,t.protocol)&&n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort}),n.value=t.normalize?i.href:Vn(r);return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),Gn=k(`$ZodEmoji`,(e,t)=>{t.pattern??=Wt(),P.init(e,t)}),Kn=k(`$ZodNanoID`,(e,t)=>{if(t.length!==void 0&&(!Number.isInteger(t.length)||t.length<1))throw Error(`Invalid nanoid length: ${t.length}`);t.pattern??=t.length===void 0?Lt:Rt(t.length),P.init(e,t)}),qn=k(`$ZodCUID`,(e,t)=>{t.pattern??=Mt,P.init(e,t)}),Jn=k(`$ZodCUID2`,(e,t)=>{t.pattern??=Nt,P.init(e,t)}),Yn=k(`$ZodULID`,(e,t)=>{t.pattern??=Pt,P.init(e,t)}),Xn=k(`$ZodXID`,(e,t)=>{t.pattern??=Ft,P.init(e,t)}),Zn=k(`$ZodKSUID`,(e,t)=>{t.pattern??=It,P.init(e,t)}),Qn=k(`$ZodISODateTime`,(e,t)=>{t.pattern??=an(t),P.init(e,t)}),$n=k(`$ZodISODate`,(e,t)=>{t.pattern??=tn,P.init(e,t)}),er=k(`$ZodISOTime`,(e,t)=>{t.pattern??=rn(t),P.init(e,t)}),tr=k(`$ZodISODuration`,(e,t)=>{t.pattern??=zt,P.init(e,t)}),nr=k(`$ZodIPv4`,(e,t)=>{t.pattern??=Gt,P.init(e,t)}),rr=/^[0-9a-fA-F:.]+$/;function ir(e){return rr.test(e)?Ln(`http://[${e}]`):!1}var ar=k(`$ZodIPv6`,(e,t)=>{t.pattern??=Kt,P.init(e,t),e._zod.check=n=>{ir(n.value)||n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}),or=k(`$ZodCIDRv4`,(e,t)=>{t.pattern??=qt,P.init(e,t)});function sr(e){let t=e.split(`/`);if(t.length!==2)return!1;let[n,r]=t;if(!r)return!1;let i=Number(r);return`${i}`!==r||i<0||i>128?!1:ir(n)}var cr=k(`$ZodCIDRv6`,(e,t)=>{t.pattern??=Jt,P.init(e,t),e._zod.check=n=>{sr(n.value)||n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}});function lr(e){if(e===``)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var ur=/^[0-9a-zA-Z+/]*={0,2}$/,dr=k(`$ZodBase64`,(e,t)=>{t.pattern??=ur,P.init(e,t),e._zod.check=n=>{lr(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}}),fr=/^[A-Za-z0-9_-]*$/;function pr(e){if(!fr.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return lr(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var mr=k(`$ZodBase64URL`,(e,t)=>{t.pattern??=fr,P.init(e,t),e._zod.check=n=>{pr(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),hr=k(`$ZodE164`,(e,t)=>{t.pattern??=Qt,P.init(e,t)});function gr(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var _r=k(`$ZodJWT`,(e,t)=>{P.init(e,t),e._zod.check=n=>{gr(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),vr=k(`$ZodNumber`,(e,t)=>{N.init(e,t),e._zod.pattern=sn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:String(i):void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),yr=k(`$ZodNumberFormat`,(e,t)=>{gn.init(e,t),vr.init(e,t)}),br=k(`$ZodBoolean`,(e,t)=>{N.init(e,t),e._zod.pattern=cn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),xr=k(`$ZodUnknown`,(e,t)=>{N.init(e,t),e._zod.parse=e=>e}),Sr=k(`$ZodNever`,(e,t)=>{N.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)});function Cr(e,t){let n=Ne(e._zod.def.checks);if(!n.length)return;let r=Math.min(...n.map(e=>e[0])),i=e._zod.parse;e._zod.parse=(n,a)=>{let o=t(n.value);if(o>r&&!a?.skipChecks&&a?.direction!==`backward`){for(let[t,r]of Ne(e._zod.def.checks))if(o>t&&r._zod.def.when(n)){let t=n.issues.length;return r._zod.check(n),n.issues[t].continue=!1,Pe(n.issues,t,e),n}}return i(n,a)}}var wr=e=>Array.isArray(e)?e.length:-1;function Tr(e,t,n){e.issues.length&&t.issues.push(...je(n,e.issues)),t.value[n]=e.value}var Er=k(`$ZodArray`,(e,t)=>{N.init(e,t);let n=A.memoizer;n?.attach(e),e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({expected:`array`,code:`invalid_type`,input:a,inst:e}),r;r.value=n?n.alloc(e,r,Array(a.length),i):Array(a.length);let o=[],s=i?.abortEarly;for(let e=0;e<a.length;e++){let n=a[e],c=t.element._zod.run({value:n,issues:[]},i);if(c instanceof Promise)o.push(c.then(t=>Tr(t,r,e)));else if(Tr(c,r,e),s&&c.issues.length!==0&&E(c))break}return o.length?Promise.all(o).then(()=>r):r},Cr(e,wr)});function Dr(e,t,n,r,i,a){let o=n in r,s=a===`optional`;if(o||!s||i!==`optional`){if(e.issues.length){if(i!==void 0&&s&&!o)return;t.issues.push(...je(n,e.issues))}!o&&i===void 0?e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]}):e.value===void 0?(o||i===`defaulted`&&!s)&&(t.value[n]=void 0):t.value[n]=e.value}}var Or=[];function kr(e){let t=Object.keys(e.shape),n=Object.getOwnPropertySymbols(e.shape),r=n.length?n:Or,i=r.length?[...t,...r]:t;for(let t of i)if(!e.shape?.[t]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${String(t)}": expected a Zod schema`);let a=ve(e.shape);return{...e,allKeys:i,symbolKeys:r,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(a)}}function Ar(e,t,n,r,i,a,o){let s=[],c=i.keySet,l=i.catchall._zod,u=l.def.type,d=l.optin,f=l.optout,p=0;for(let i in t){if(o&&n.issues.length!==p){if(E(n,p))break;p=n.issues.length}if(c.has(i))continue;if(i===`__proto__`){u===`never`&&s.push(i);continue}if(u===`never`){s.push(i);continue}let a=l.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>Dr(e,n,i,t,d,f))):Dr(a,n,i,t,d,f)}return s.length&&n.issues.push({code:`unrecognized_keys`,keys:s,input:t,inst:a,continue:!0}),e.length?Promise.all(e).then(()=>n):n}var jr=k(`$ZodObject`,(e,t)=>{N.init(e,t);let n=Object.getOwnPropertyDescriptor(t,`shape`),r=n?.get?n.get.raw:t.shape??{};if(r){let e=()=>{let n={...r};return Object.defineProperty(t,"shape",{value:n}),e.raw=n,n};e.raw=r,Object.defineProperty(t,"shape",{get:e})}let i=re(()=>kr(t));O(e,`propValues`,e=>{let t=e.def.shape,n={};for(let e in t){let r=t[e]._zod;if(r.values){Object.prototype.hasOwnProperty.call(n,e)||_(n,e,new Set);for(let t of r.values)n[e].add(t);r.optin!==void 0&&n[e].add(void 0)}}return n});let a=C,o=t.catchall,s,c=A.memoizer;c?.attach(e),e._zod.parse=(t,n)=>{s??=i.value;let r=t.value;if(!a(r))return t.issues.push({expected:`object`,code:`invalid_type`,input:r,inst:e}),t;t.value=c?c.alloc(e,t,{},n):{};let l=[],u=s.shape,d=n?.abortEarly,f=t.issues.length;for(let e of s.allKeys){if(d&&t.issues.length!==f){if(E(t,f))break;f=t.issues.length}if(e===`__proto__`)continue;let i=u[e],a=i._zod.optin,o=i._zod.optout,s=i._zod.run({value:r[e],issues:[]},n);s instanceof Promise?l.push(s.then(n=>Dr(n,t,e,r,a,o))):Dr(s,t,e,r,a,o)}return o?Ar(l,r,t,n,i.value,e,d===!0):l.length?Promise.all(l).then(()=>t):t}}),Mr=k(`$ZodObjectJIT`,(e,t)=>{jr.init(e,t);let n=e._zod.parse,r=re(()=>kr(t)),i=A.memoizer,a=t=>{let n=r.value,a=n.symbolKeys,o=new On([`payload`,`ctx`],{shape:t,inst:e,memo:i,syms:a}),s=e=>`shape[${e}]._zod.run({ value: input[${e}], issues: [] }, ctx)`,c=(e,t)=>`
4
+ let ${e}_ab = false;
5
+ for (let i = 0; i < ${e}.issues.length; i++) {
6
+ const iss = ${e}.issues[i];
7
+ iss.path = iss.path ? [${t}, ...iss.path] : [${t}];
8
+ payload.issues.push(iss);
9
+ if (iss.continue !== true) ${e}_ab = true;
10
+ }
11
+ if (${e}_ab && ctx && ctx.abortEarly) {
12
+ payload.value = newResult;
13
+ return payload;
14
+ }`;o.write(`const input = payload.value;`);let l=Object.create(null),u=0;for(let e of n.allKeys)l[e]=`key_${u++}`;o.write(i?`const newResult = memo.alloc(inst, payload, {}, ctx);`:`const newResult = {};`);for(let e of n.allKeys){if(e===`__proto__`)continue;let n=l[e],r=typeof e==`symbol`?`syms[${a.indexOf(e)}]`:ue(e),i=`${r} in input`,u=t[e],d=u?._zod?.optin,f=d!==void 0,p=u?._zod?.optout===`optional`;if(o.write(`const ${n} = ${s(r)};`),f&&p){let e=d===`optional`?`${n}_present`:`${n}.value !== undefined || ${n}_present`;o.write(`
15
+ const ${n}_present = ${i};
16
+ if (!${n}.issues.length || ${n}_present) {
17
+ if (${n}.issues.length) {${c(n,r)}
18
+ }
19
+
20
+ if (${e}) {
21
+ newResult[${r}] = ${n}.value;
22
+ }
23
+ }
24
+
25
+ `)}else f?(o.write(`
26
+ if (${n}.issues.length) {${c(n,r)}
27
+ }
28
+ `),d===`defaulted`?o.write(`newResult[${r}] = ${n}.value;`):o.write(`
29
+ if (${n}.value !== undefined || ${i}) {
30
+ newResult[${r}] = ${n}.value;
31
+ }
32
+ `)):o.write(`
33
+ const ${n}_present = ${i};
34
+ if (${n}.issues.length) {${c(n,r)}
35
+ }
36
+ if (!${n}_present && !${n}.issues.length) {
37
+ payload.issues.push({
38
+ code: "invalid_type",
39
+ expected: "nonoptional",
40
+ input: undefined,
41
+ path: [${r}]
42
+ });
43
+ if (ctx && ctx.abortEarly) {
44
+ payload.value = newResult;
45
+ return payload;
46
+ }
47
+ }
48
+
49
+ if (${n}_present) {
50
+ newResult[${r}] = ${n}.value;
51
+ }
52
+
53
+ `)}return o.write(`payload.value = newResult;`),o.write(`return payload;`),o.compile()},o,s=C,c=!A.jitless,l=c&&fe.value,u=t.catchall,d;e._zod.parse=(i,f)=>{d??=r.value;let p=i.value;return s(p)?c&&l&&f?.async===!1&&f.jitless!==!0?(o||=a(t.shape),i=o(i,f),u?Ar([],p,i,f,d,e,f?.abortEarly===!0):i):n(i,f):(i.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),i)}});function Nr(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!E(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Fe(e,r,j())))}),t)}var Pr=k(`$ZodUnion`,(e,t)=>{N.init(e,t),O(e,`optin`,e=>e.def.options.some(e=>e._zod.optin===`defaulted`)?`defaulted`:e.def.options.some(e=>e._zod.optin!==void 0)?`optional`:void 0),O(e,`optout`,e=>e.def.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),O(e,`values`,e=>{if(e.def.options.every(e=>e._zod.values))return new Set(e.def.options.flatMap(e=>Array.from(e._zod.values)))}),O(e,`pattern`,e=>{if(e.def.options.every(e=>e._zod.pattern)){let t=e.def.options.map(e=>e._zod.pattern);return RegExp(`^(${t.map(e=>ae(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>Nr(t,r,e,i)):Nr(o,r,e,i)}});function Fr(e){let t=new Map;for(let n of e.options){let r=n._zod.propValues?.[e.discriminator];if(!r||r.size===0)throw Error(`Invalid discriminated union option at index "${e.options.indexOf(n)}"`);for(let e of r)if(t.has(e)){if(e!==void 0)throw Error(`Duplicate discriminator value "${String(e)}"`);t.set(e,null)}else t.set(e,n)}return t}var Ir=k(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,Pr.init(e,t);let n=e._zod.parse;O(e,`propValues`,e=>{let t={},n=0;for(let r of e.def.options){let i=r._zod.propValues;if(!i||Object.keys(i).length===0)throw Error(`Invalid discriminated union option at index "${e.def.options.indexOf(r)}"`);i[e.def.discriminator]?.has(void 0)&&n++;for(let[e,n]of Object.entries(i)){Object.prototype.hasOwnProperty.call(t,e)||_(t,e,new Set);for(let r of n)t[e].add(r)}}return!e.def.unionFallback&&n>1&&t[e.def.discriminator]?.delete(void 0),t}),t.options.forEach((e,n)=>{let r=v(e._zod.def);if(r&&!Object.prototype.hasOwnProperty.call(r,t.discriminator))throw Error(`Invalid discriminated union option at index "${n}"`)});let r=re(()=>Fr(t));e._zod.parse=(i,a)=>{let o=i.value;if(!C(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=o?.[t.discriminator],c=r.value.get(s);return c&&(s!==void 0||a.direction!==`backward`)?c._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()).filter(e=>r.value.get(e)!==null),input:o,path:[t.discriminator],inst:e}),i)}}),Lr=k(`$ZodIntersection`,(e,t)=>{N.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>zr(e,t,n)):zr(e,i,a)}});function Rr(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(pe(e)&&pe(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};Object.prototype.hasOwnProperty.call(i,`__proto__`)&&delete i.__proto__;for(let n of r){if(n===`__proto__`)continue;let r=Rr(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=Rr(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function zr(e,t,n){let r=new Map,i,a=new Map,o=(e,t)=>{let n;if(e.code===`unrecognized_keys`&&!e.path?.length)i??=e,n=e.keys;else if(e.code===`invalid_key`&&e.origin===`record`&&e.path?.length===1){let t=String(e.path[0]);a.has(t)||a.set(t,e),n=[t]}else return!1;for(let e of n)r.has(e)||r.set(e,{}),r.get(e)[t]=!0;return!0};for(let n of t.issues)o(n,`l`)||e.issues.push(n);for(let t of n.issues)o(t,`r`)||e.issues.push(t);let s=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(s.length){let t=i?s.filter(e=>i.keys.includes(e)):[];t.length&&e.issues.push({...i,keys:t});for(let n of s)!t.includes(n)&&a.has(n)&&e.issues.push(a.get(n))}let c=Rr(t.value,n.value);if(!c.valid){if(E(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}var Br=k(`$ZodEnum`,(e,t)=>{N.init(e,t);let n=ee(t.entries),r=new Set(n);e._zod.values=r,O(e,`pattern`,e=>{let t=ee(e.def.entries).filter(e=>he.has(typeof e));return RegExp(t.length?`^(${t.map(e=>ge(e.toString())).join(`|`)})$`:`^[^\\s\\S]$`)}),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),Vr=k(`$ZodLiteral`,(e,t)=>{N.init(e,t);let n=new Set(t.values);e._zod.values=n,O(e,`pattern`,e=>{let t=e.def.values;return RegExp(t.length?`^(${t.map(e=>typeof e==`string`?ge(e):e?ge(e.toString()):String(e)).join(`|`)})$`:`^[^\\s\\S]$`)}),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),Hr=k(`$ZodTransform`,(e,t)=>{N.init(e,t),e._zod.optin=`optional`,A.memoizer?.guard(e),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new rt(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new nt;return n.value=i,n}});function Ur(e,t){return e.value=t.issues.length?void 0:t.value,e}var Wr=k(`$ZodOptional`,(e,t)=>{N.init(e,t),O(e,`optin`,e=>e.def.innerType._zod.optin===`defaulted`?`defaulted`:`optional`),e._zod.optout=`optional`,O(e,`values`,e=>{let t=e.def.innerType._zod.values;return t?new Set([...t,void 0]):void 0}),O(e,`pattern`,e=>{let t=e.def.innerType._zod.pattern;return t?RegExp(`^(${ae(t.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(e.value===void 0){if(t.innerType._zod.optin!==`defaulted`)return e;let r=t.innerType._zod.run({value:e.value,issues:[]},n);return r instanceof Promise?r.then(t=>Ur(e,t)):Ur(e,r)}return t.innerType._zod.run(e,n)}}),Gr=k(`$ZodExactOptional`,(e,t)=>{Wr.init(e,t),O(e,`values`,e=>e.def.innerType._zod.values),O(e,`pattern`,e=>e.def.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),Kr=k(`$ZodNullable`,(e,t)=>{N.init(e,t),O(e,`optin`,e=>e.def.innerType._zod.optin),O(e,`optout`,e=>e.def.innerType._zod.optout),O(e,`pattern`,e=>{let t=e.def.innerType._zod.pattern;return t?RegExp(`^(${ae(t.source)}|null)$`):void 0}),O(e,`values`,e=>e.def.innerType._zod.values?new Set([...e.def.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),qr=k(`$ZodDefault`,(e,t)=>{N.init(e,t),e._zod.optin=`defaulted`,O(e,`values`,e=>e.def.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>Jr(e,t)):Jr(r,t)}});function Jr(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var Yr=k(`$ZodPrefault`,(e,t)=>{N.init(e,t),e._zod.optin=`defaulted`,O(e,`values`,e=>e.def.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),Xr=k(`$ZodNonOptional`,(e,t)=>{N.init(e,t),O(e,`values`,e=>{let t=e.def.innerType._zod.values;return t?new Set([...t].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>Zr(t,e)):Zr(i,e)}});function Zr(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}function Qr(e,t,n,r){return t.issues.length?(e.value=n.catchValue({...t,value:e.value,error:{issues:t.issues.map(e=>Fe(e,r,j()))},input:e.value}),e):(e.value=t.value,t.memo&&(e.memo=!0),e)}var $r=k(`$ZodCatch`,(e,t)=>{N.init(e,t),O(e,`optin`,e=>e.def.innerType._zod.optin===`defaulted`?`defaulted`:`optional`),O(e,`optout`,e=>e.def.innerType._zod.optout),O(e,`values`,e=>e.def.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run({value:e.value,issues:[]},n);return r instanceof Promise?r.then(r=>Qr(e,r,t,n)):Qr(e,r,t,n)}}),ei=k(`$ZodPipe`,(e,t)=>{N.init(e,t),O(e,`values`,e=>e.def.in._zod.values),O(e,`optin`,e=>e.def.in._zod.optin),O(e,`optout`,e=>e.def.out._zod.optout),O(e,`propValues`,e=>e.def.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>ti(e,t.in,n)):ti(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>ti(e,t.out,n)):ti(r,t.out,n)}});function ti(e,t,n){return e.issues.some(e=>e.code!==`unrecognized_keys`)?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}var ni=k(`$ZodReadonly`,(e,t)=>{N.init(e,t),O(e,`propValues`,e=>e.def.innerType._zod.propValues),O(e,`values`,e=>e.def.innerType._zod.values),O(e,`optin`,e=>e.def.innerType?._zod?.optin),O(e,`optout`,e=>e.def.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(ri):ri(r)}});function ri(e){return e.memo||(e.value=Object.freeze(e.value)),e}var ii=k(`$ZodCustom`,(e,t)=>{M.init(e,t),N.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>ai(t,n,r,e));ai(i,n,r,e)}});function ai(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Be(e))}}var oi=class extends Error{constructor(){super(`Cannot parse a reference cycle that closes through a transform`),this.name=`ZodCyclicError`}},si=`~memo`,ci=[];function li(e){return typeof e==`object`&&!!e}function ui(e){return e.map(e=>e.path?{...e,path:e.path.slice()}:{...e})}var di=new WeakMap,fi=0,pi=1,mi=2;function hi(e,t,n){let r=di.get(e);if(r!==void 0)return r?mi:fi;if(t.has(e))return mi;t.add(e);let i=fi,a=e=>{if(i!==mi&&e?._zod){let r=hi(e,t,n);r>i&&(i=r)}},o=(e,r)=>{let i=fi;for(let a of Reflect.ownKeys(e)){let o=Object.getOwnPropertyDescriptor(e,a);if(r&&!o.enumerable)continue;let s=o.get?pi:o.value?._zod?hi(o.value,t,n):fi;s>i&&(i=s)}return i},s=e=>{e>i&&(i=e)},c=e._zod.def;switch(c.type){case`object`:{let e=v(c);s(e?o(e,!0):pi),a(c.catchall);break}case`array`:a(c.element);break;case`tuple`:for(let e of c.items)a(e);a(c.rest);break;case`record`:case`map`:a(c.keyType),a(c.valueType);break;case`set`:a(c.valueType);break;case`union`:for(let e of c.options)a(e);break;case`intersection`:a(c.left),a(c.right);break;case`optional`:case`nullable`:case`default`:case`prefault`:case`catch`:case`readonly`:case`nonoptional`:case`promise`:case`success`:a(c.innerType);break;case`pipe`:a(c.in),a(c.out);break;case`function`:a(c.input),a(c.output);break;case`lazy`:{let r=c._cachedInner??(n?e._zod.innerType:void 0);s(r?hi(r,t,!1):pi);break}case`template_literal`:case`string`:case`number`:case`int`:case`boolean`:case`bigint`:case`symbol`:case`undefined`:case`null`:case`void`:case`never`:case`any`:case`unknown`:case`date`:case`nan`:case`enum`:case`literal`:case`file`:case`transform`:case`custom`:break;default:for(let e in c){let t=Object.getOwnPropertyDescriptor(c,e);if(!t||t.get)continue;let n=t.value;if(n&&typeof n==`object`){if(n._zod)a(n);else if(Array.isArray(n))for(let e of n)a(e)}}}return t.delete(e),gi(e,i)}function gi(e,t){return t!==pi&&di.set(e,t===mi),t}function _i(e,t){let n=e.buckets.get(t);return n||(n=new WeakMap,e.buckets.set(t,n)),n}var vi,yi=[],bi={alloc(e,t,n){let r=vi;if(!r)return n;vi=void 0;let i={value:n,issues:null};return r.set(t.value,i),yi.push(i),n},guard(e){var t;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let t=e._zod.parse,n=(e,n)=>{if(n.direction!==`backward`&&Si(n,e.value))throw new oi;return t(e,n)};e._zod.parse=n,e._zod.run===t&&(e._zod.run=n)})},attach(e){var t;let n,r=!1,i,a;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let t=e._zod.parse,o=(s,c)=>{if(n===void 0){let i=hi(e,new Set,!1);if(i===fi)return e._zod.parse=t,e._zod.run===o&&(e._zod.run=t),t(s,c);i===mi||r?n=!0:r=!0}let l=s.value;if(!li(l))return t(s,c);let u=c[si];u||(u={buckets:new WeakMap,backEdges:void 0},c[si]=u);let d;i===c?d=a:(d=_i(u,e),i=c,a=d);let f=d.get(l);if(f)return s.value=f.value,f.issues?f.issues.length&&s.issues.push(...ui(f.issues)):(s.memo=!0,u.backEdges??(u.backEdges=new WeakSet),u.backEdges.add(f.value)),s;vi=d;let p=yi.length,m=t(s,c);vi=void 0;let h=yi.length>p?yi.pop():void 0;return m instanceof Promise?m.then(e=>(h&&(h.issues=e.issues.length?ui(e.issues):ci),e)):(h&&(h.issues=m.issues.length?ui(m.issues):ci),m)};e._zod.parse=o,e._zod.run===t&&(e._zod.run=o)})}};function xi(){return bi}function Si(e,t){let n=e[si]?.backEdges;return n!==void 0&&li(t)&&n.has(t)}var Ci=()=>{let e={string:{unit:`characters`,verb:`to have`},file:{unit:`bytes`,verb:`to have`},array:{unit:`items`,verb:`to have`},set:{unit:`items`,verb:`to have`},map:{unit:`entries`,verb:`to have`}};function t(t){return e[t]??null}let n={regex:`input`,email:`email address`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO datetime`,date:`ISO date`,time:`ISO time`,duration:`ISO duration`,ipv4:`IPv4 address`,ipv6:`IPv6 address`,mac:`MAC address`,cidrv4:`IPv4 range`,cidrv6:`IPv6 range`,base64:`base64-encoded string`,base64url:`base64url-encoded string`,json_string:`JSON string`,e164:`E.164 number`,currency_code:`currency code`,credit_card:`credit card number`,iban:`IBAN`,jwt:`JWT`,template_literal:`input`},r={nan:`NaN`};function i(e,t){return e===`number`&&typeof t==`number`&&!Number.isFinite(t)?String(t):r[e]??e}return e=>{switch(e.code){case`invalid_type`:return`Invalid input: expected ${i(e.expected)}, received ${i(ze(e.input),e.input)}`;case`invalid_value`:return e.values.length===1?`Invalid input: expected ${_e(e.values[0])}`:`Invalid option: expected one of ${te(e.values,`|`)}`;case`too_big`:{let n=e.exact?`exactly `:e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Too big: expected ${e.origin??`value`} to have ${n}${e.maximum.toString()} ${r.unit??`elements`}`:`Too big: expected ${e.origin??`value`} to be ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.exact?`exactly `:e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Too small: expected ${e.origin} to have ${n}${e.minimum.toString()} ${r.unit}`:`Too small: expected ${e.origin} to be ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Invalid string: must start with "${t.prefix}"`:t.format===`ends_with`?`Invalid string: must end with "${t.suffix}"`:t.format===`includes`?`Invalid string: must include "${t.includes}"`:t.format===`regex`?`Invalid string: must match pattern ${t.pattern}`:`Invalid ${n[t.format]??e.format}`}case`not_multiple_of`:return`Invalid number: must be a multiple of ${e.divisor}`;case`unrecognized_keys`:return`Unrecognized key${e.keys.length>1?`s`:``}: ${te(e.keys,`, `)}`;case`invalid_key`:return`Invalid key in ${e.origin}`;case`invalid_union`:return e.options&&Array.isArray(e.options)&&e.options.length>0?`Invalid discriminator value. Expected ${e.options.map(e=>`'${e}'`).join(` | `)}`:e.inclusive===!1?`Invalid input: more than one option matched`:`Invalid input`;case`invalid_element`:return`Invalid value in ${e.origin}`;default:return`Invalid input`}}};function wi(){return{localeError:Ci()}}var Ti,Ei=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function Di(){return new Ei}(Ti=globalThis).__zod_globalRegistry??(Ti.__zod_globalRegistry=Di());var Oi=globalThis.__zod_globalRegistry;function ki(e){return e.checks&&=[...e.checks],e}function Ai(e,t){return new e(ki({type:`string`,...T(t)}))}function ji(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...T(t)})}function Mi(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...T(t)})}function Ni(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...T(t)})}function Pi(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...T(t)})}function Fi(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...T(t)})}function Ii(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...T(t)})}function Li(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...T(t)})}function Ri(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...T(t)})}function zi(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...T(t)})}function Bi(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...T(t)})}function Vi(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...T(t)})}function Hi(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...T(t)})}function Ui(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...T(t)})}function Wi(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...T(t)})}function Gi(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...T(t)})}function Ki(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...T(t)})}function qi(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...T(t)})}function Ji(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...T(t)})}function Yi(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...T(t)})}function Xi(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...T(t)})}function Zi(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...T(t)})}function Qi(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...T(t)})}function $i(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...T(t)})}function ea(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...T(t)})}function ta(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...T(t)})}function na(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...T(t)})}function ra(e,t){return new e(ki({type:`number`,checks:[],...T(t)}))}function ia(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...T(t)})}function aa(e,t){return new e({type:`boolean`,...T(t)})}function oa(e){return new e({type:`unknown`})}function sa(e,t){return new e({type:`never`,...T(t)})}function ca(e,t){return new pn({check:`less_than`,...T(t),value:e,inclusive:!1})}function la(e,t){return new pn({check:`less_than`,...T(t),value:e,inclusive:!0})}function ua(e,t){return new mn({check:`greater_than`,...T(t),value:e,inclusive:!1})}function da(e,t){return new mn({check:`greater_than`,...T(t),value:e,inclusive:!0})}function fa(e,t){return new hn({check:`multiple_of`,...T(t),value:e})}function pa(e,t){return new _n({check:`max_length`,...T(t),maximum:e})}function ma(e,t){return new vn({check:`min_length`,...T(t),minimum:e})}function ha(e,t){return new yn({check:`length_equals`,...T(t),length:e})}function ga(e,t){return new xn({check:`string_format`,format:`regex`,...T(t),pattern:e})}function _a(e){return new Sn({check:`string_format`,format:`lowercase`,...T(e)})}function va(e){return new Cn({check:`string_format`,format:`uppercase`,...T(e)})}function ya(e,t){return new wn({check:`string_format`,format:`includes`,...T(t),includes:e})}function ba(e,t){return new Tn({check:`string_format`,format:`starts_with`,...T(t),prefix:e})}function xa(e,t){return new En({check:`string_format`,format:`ends_with`,...T(t),suffix:e})}function Sa(e){return new Dn({check:`overwrite`,tx:e})}function Ca(e){return Sa(t=>t.normalize(e))}function wa(){return Sa(e=>e.trim())}function Ta(){return Sa(e=>e.toLowerCase())}function Ea(){return Sa(e=>e.toUpperCase())}function Da(){return Sa(e=>de(e))}function Oa(e,t,n){return new e({type:`array`,element:t,...T(n)})}function ka(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...T(n)})}function Aa(e,t){let n=ja(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(Be(e,t.value,n._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,`input`in r||(r.input=t.value),r.inst??=n,r.continue??=!n._zod.def.abort,t.issues.push(Be(r))}},e(t.value,t)),t);return n}function ja(e,t){let n=new M({check:`custom`,...T(t)});return n._zod.check=e,n}function Ma(e,...t){for(let n of t)for(let t of Reflect.ownKeys(n))Object.prototype.propertyIsEnumerable.call(n,t)&&_(e,t,n[t]);return e}function Na(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??Oi,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,sharedDefsExtractedFor:void 0,sharedEmitDoneFor:void 0,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,intersections:[],deferred:[],external:e?.external??void 0}}function F(e,t,n,r,i){let a=typeof t.unrepresentable==`function`?t.unrepresentable({zodSchema:e,path:r.path,message:i}):t.unrepresentable;if(a===`any`)return!1;if(a===void 0||a===`throw`)throw Error(i);return Object.assign(n,a),!0}function I(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o),t.sharedDefsExtractedFor=void 0,t.sharedEmitDoneFor=void 0;let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,I(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Ma(o.schema,c),t.io===`input`&&L(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&`_prefault`in o.schema&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function Pa(e){return e.replace(/~/g,`~0`).replace(/\//g,`~1`)}function Fa(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);if(e.external&&e.sharedDefsExtractedFor===e.external)return;let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${Pa(a)}`}}let i=`#/${r}/`;if(t[1]===n&&!t[1].schema.id)return{ref:`#`};let a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+Pa(a)}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
54
+
55
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0])a(n);else{if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}(e.metadataRegistry.get(n[0])?.id||r.cycle||r.count>1&&e.reused===`ref`)&&a(n)}}e.external&&(e.sharedDefsExtractedFor=e.external)}function Ia(e){let t=e.anyOf;if(!Array.isArray(t)||t.length===0||e.type!==void 0)return;let n=[];for(let e of t){if(!e||typeof e!=`object`)return;Ia(e);let t=Object.keys(e);if(t.length!==1||t[0]!==`type`)return;let r=e.type;for(let e of Array.isArray(r)?r:[r]){if(typeof e!=`string`)return;n.includes(e)||n.push(e)}}delete e.anyOf,e.type=n.length===1?n[0]:n}var La=new Set([`type`,`properties`,`required`,`additionalProperties`]),Ra=[`oneOf`,`anyOf`];function za(e){let t=e.additionalProperties;return t===void 0||t===!1||typeof t!=`object`||!t?null:Object.keys(t).length?t:null}function Ba(e){let t=[];for(let n of e){if(typeof n!=`object`||n.type!==`object`)return null;for(let e in n)if(!La.has(e))return null;t.push(n)}let n={},r=new Set;for(let e of t){for(let r in e.properties){if(Object.prototype.hasOwnProperty.call(n,r))continue;let e=[];for(let n of t){let t=n.properties?.[r]??za(n);t!=null&&(e.some(e=>JSON.stringify(e)===JSON.stringify(t))||e.push(t))}_(n,r,e.length===1?e[0]:Ba(e)??{allOf:e})}for(let t of e.required??[])r.add(t)}let i={type:`object`,properties:n};if(r.size&&(i.required=[...r]),t.every(e=>e.additionalProperties===!1))i.additionalProperties=!1;else{let e=[];for(let n of t){let t=za(n);t&&!e.some(e=>JSON.stringify(e)===JSON.stringify(t))&&e.push(t)}e.length===1?i.additionalProperties=e[0]:e.length>1&&(i.additionalProperties={allOf:e})}return i}function Va(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let t of La)if(t in e)return;let n=t.filter(e=>Ra.some(t=>Array.isArray(e[t]))),r=null;if(!n.length)r=Ba(t);else{let e=n[0],i=Ra.find(t=>Array.isArray(e[t]));if(Object.keys(e).length!==1)return;let a=t.filter(t=>t!==e),o=e[i].map(e=>Ba([...a,e]));if(o.some(e=>!e))return;r={[i]:o}}r&&(delete e.allOf,Ma(e,r))}function Ha(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Ma(i,s),Ma(i,a),t._zod.parent===o)for(let e in i)e!==`$ref`&&e!==`allOf`&&(e in a||delete i[e]);if(s.$ref&&n.def)for(let e in i)e!==`$ref`&&e!==`allOf`&&e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e!==`$ref`&&e!==`allOf`&&e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};if(!e.external||e.sharedEmitDoneFor!==e.external){for(let t of[...e.seen.entries()].reverse())r(t[0]);if(e.target!==`openapi-3.0`)for(let t of e.seen.entries())Ia(t[1].def??t[1].schema);for(let t of e.deferred)t();if(e.intersections.length){let t=new Map;for(let n of e.seen.values())for(let e of[n.schema,n.def]){let n=e?.allOf;if(!Array.isArray(n))continue;let r=t.get(n);r?r.push(e):t.set(n,[e])}for(let n of e.intersections)for(let e of t.get(n)??[])Va(e)}}let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Ma(i,n.defId?n.schema:n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};if(!e.external||e.sharedEmitDoneFor!==e.external)for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,_(o,e.defId,e.def))}e.external&&(e.sharedEmitDoneFor=e.external),e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:Wa(t,`input`,e.processors),output:Wa(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function L(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return L(r.element,n);if(r.type===`set`)return L(r.valueType,n);if(r.type===`lazy`)return L(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type==="default"||r.type===`prefault`||r.type===`catch`)return L(r.innerType,n);if(r.type===`intersection`)return L(r.left,n)||L(r.right,n);if(r.type===`record`||r.type===`map`)return L(r.keyType,n)||L(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:L(r.in,n)||L(r.out,n);if(r.type===`object`){for(let e in r.shape)if(L(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(L(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(L(e,n))return!0;return!!(r.rest&&L(r.rest,n))}return!1}var Ua=(e,t={})=>n=>{let r=Na({...n,processors:t});return I(e,r),Fa(r,e),Ha(r,e)},Wa=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=Na({...i??{},target:a,io:t,processors:n});return I(e,o),Fa(o,e),Ha(o,e)},Ga=(e,t,n)=>{(e[t]===void 0||n>e[t])&&(e[t]=n)},Ka=(e,t,n)=>{(e[t]===void 0||n<e[t])&&(e[t]=n)},qa=(e,t)=>{Ga(e,`minimum`,t),Ka(e,`maximum`,t)},Ja=(e,t)=>{e.multipleOf??=[],e.multipleOf.includes(t)||e.multipleOf.push(t)},Ya=(e,t)=>{e.patterns??=new Set,e.patterns.add(t)},Xa=(e,t)=>{e.mime=e.mime?e.mime.filter(e=>t.includes(e)):[...t]},Za=(e,t)=>{e.format=t,t.includes(`int`)&&(e.isInt=!0)},Qa=(e,t)=>Ga(e,`minimum`,t.minimum),$a=(e,t)=>Ka(e,`maximum`,t.maximum),eo=e=>(t,n)=>{Za(t,n.format);let[r,i]=e[n.format];Ga(t,`minimum`,r),Ka(t,`maximum`,i)},to={greater_than:(e,t)=>Ga(e,t.inclusive?`minimum`:`exclusiveMinimum`,t.value),less_than:(e,t)=>Ka(e,t.inclusive?`maximum`:`exclusiveMaximum`,t.value),multiple_of:(e,t)=>Ja(e,t.value),number_format:eo(ye),bigint_format:eo(be),min_length:Qa,max_length:$a,length_equals:(e,t)=>qa(e,t.length),min_size:Qa,max_size:$a,size_equals:(e,t)=>qa(e,t.size),string_format:(e,t)=>{Za(e,t.format),t.pattern&&Ya(e,t.pattern),(t.format===`base64`||t.format===`base64url`)&&(e.contentEncoding=t.format),(t.local||t.precision===-1)&&(e.laxFormat=!0)},mime_type:(e,t)=>Xa(e,t.mime)};function R(e){let t={},n=e._zod.def,r=e._zod.traits.has(`$ZodCheck`)?[e,...n.checks??[]]:n.checks??[];for(let e of r)to[e._zod.def.check]?.(t,e._zod.def);let i=e._zod.bag;i.minimum!==void 0&&Ga(t,`minimum`,i.minimum),i.exclusiveMinimum!==void 0&&Ga(t,`exclusiveMinimum`,i.exclusiveMinimum),i.maximum!==void 0&&Ka(t,`maximum`,i.maximum),i.exclusiveMaximum!==void 0&&Ka(t,`exclusiveMaximum`,i.exclusiveMaximum),i.multipleOf!==void 0&&Ja(t,i.multipleOf),i.format!==void 0&&(t.format??=i.format,i.format.includes(`int`)&&(t.isInt=!0)),i.mime&&Xa(t,i.mime);for(let e of i.patterns??[])Ya(t,e);return t}var no={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},ro=new Map([[ur,Yt],[fr,Xt]]),io=e=>ro.get(e)??e,ao=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l,laxFormat:u}=R(e);if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=no[s]??s,i.format===``&&delete i.format,(s===`time`||u)&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c].map(io);e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},oo=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,multipleOf:s,exclusiveMaximum:c,exclusiveMinimum:l,isInt:u}=R(e);i.type=u?`integer`:`number`;let d=typeof l==`number`&&l>=(a??-1/0),f=typeof c==`number`&&c<=(o??1/0),p=t.target===`draft-04`||t.target===`openapi-3.0`;if(d?p?(i.minimum=l,i.exclusiveMinimum=!0):i.exclusiveMinimum=l:typeof a==`number`&&(i.minimum=a),f?p?(i.maximum=c,i.exclusiveMaximum=!0):i.exclusiveMaximum=c:typeof o==`number`&&(i.maximum=o),s){let n=new Set;for(let a of s)Number.isFinite(a)&&a!==0?n.add(Math.abs(a)):F(e,t,i,r,`A multipleOf divisor of ${a} cannot be represented in JSON Schema`);let[a,...o]=n;a!==void 0&&(i.multipleOf=a),o.length&&(i.allOf=[...i.allOf??[],...o.map(e=>({multipleOf:e}))])}},so=(e,t,n,r)=>{n.type=`boolean`},co=(e,t,n,r)=>{n.not={}},lo=(e,t,n,r)=>{let i=e._zod.def,a=ee(i.entries);a.length===0?n.not={}:(a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a)},uo=(e,t,n,r)=>{let i=e._zod.def;if(i.values.length===0){n.not={};return}let a=[];for(let o of i.values)if(o===void 0){if(F(e,t,n,r,"Literal `undefined` cannot be represented in JSON Schema"))return}else if(typeof o==`bigint`){if(F(e,t,n,r,`BigInt literals cannot be represented in JSON Schema`))return;a.push(Number(o))}else a.push(o);if(a.length!==0){if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a}},fo=(e,t,n,r)=>{F(e,t,n,r,`Custom types cannot be represented in JSON Schema`)},po=(e,t,n,r)=>{F(e,t,n,r,`Transforms cannot be represented in JSON Schema`)},mo=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=R(e);typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=I(a.element,t,{...r,path:[...r.path,`items`]})};function ho(e){let t=e._zod.def;return t.type===`pipe`&&t.in._zod.traits.has(`$ZodTransform`)?ho(t.out):t.type===`catch`?ho(t.innerType):e._zod.optin}var go=(e,t,n,r)=>{let i=n,a=e._zod.def,o=a.shape;if(Object.getOwnPropertySymbols(o).length&&F(e,t,i,r,`Symbol keys cannot be represented in JSON Schema`))return;i.type=`object`,i.properties={};for(let e in o)_(i.properties,e,I(o[e],t,{...r,path:[...r.path,`properties`,e]}));let s=[];for(let e of Object.keys(o)){let n=a.shape[e];(t.io===`input`?ho(n)===void 0:n._zod.optout===void 0)&&s.push(e)}s.length>0&&(i.required=s),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=I(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},_o=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>I(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},vo=(e,t,n,r)=>{let i=e._zod.def,a=I(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=I(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1,c=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]];n.allOf=c,t.intersections.push(c)},yo=(e,t,n,r)=>{let i=e._zod.def,a=I(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},bo=(e,t,n,r)=>{let i=e._zod.def;I(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},xo=Symbol();function So(e,t,n,r,i){let a=!1,o=JSON.stringify(e,(e,t)=>typeof t==`bigint`?(a=!0,null):t);return a?(F(t,n,r,i,`BigInt defaults cannot be represented in JSON Schema`),xo):JSON.parse(o)}var Co=(e,t,n,r)=>{let i=e._zod.def;I(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o=So(i.defaultValue,e,t,n,r);o!==xo&&(n.default=o)},wo=(e,t,n,r)=>{let i=e._zod.def;I(i.innerType,t,r);let a=t.seen.get(e);if(a.ref=i.innerType,t.io!==`input`)return;let o=So(i.defaultValue,e,t,n,r);o!==xo&&(n._prefault=o)},To=(e,t,n,r)=>{let i=e._zod.def;I(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{F(e,t,n,r,`Dynamic catch values are not supported in JSON Schema`);return}n.default=o},Eo=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;I(o,t,r);let s=t.seen.get(e);s.ref=o},Do=(e,t,n,r)=>{let i=e._zod.def;I(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Oo=(e,t,n,r)=>{let i=e._zod.def;I(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},ko=new WeakSet([Object.prototype,Error.prototype]);function Ao(e,t,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get(){let e=n(this);return Object.defineProperty(this,t,{value:e,configurable:!0,writable:!0}),e},set(e){Object.defineProperty(this,t,{value:e,configurable:!0,writable:!0})}})}var jo=(e,t)=>{lt.init(e,t),e.name=`ZodError`;let n=Object.getPrototypeOf(e);ko.has(n)||(ko.add(n),Ao(n,`format`,e=>t=>ft(e,t)),Ao(n,`flatten`,e=>t=>dt(e,t)),Ao(n,`addIssue`,e=>t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,ne,2)}),Ao(n,`addIssues`,e=>t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,ne,2)}),Object.defineProperty(n,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}}))},Mo=k(`ZodError`,jo),z=k(`ZodError`,jo,void 0,{Parent:Error}),No=mt(z),Po=ht(z),Fo=gt(z),Io=vt(z),Lo=wt(z),Ro=Tt(z),zo=Et(z),Bo=Dt(z),Vo=Ot(z),Ho=kt(z),Uo=At(z),Wo=jt(z);function Go(){A.localeError||j(wi())}function Ko(){A.memoizer||j({memoizer:xi()})}var B=k(`ZodType`,(e,t)=>(Go(),N.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(x(t,{checks:[...t.checks??[],...e.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return w(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(oc(e,t))},superRefine(e,t){return this.check(sc(e,t))},overwrite(e){return this.check(Sa(e))},optional(){return Hs(this)},exactOptional(){return Ws(this)},nullable(){return Ks(this)},nullish(){return Hs(Ks(this))},nonoptional(e){return Qs(this,e)},array(){return W(this)},or(e){return js([this,e])},and(e){return Fs(this,e)},transform(e){return nc(this,Bs(e))},default(e){return Js(this,e)},prefault(e){return Xs(this,e)},catch(e){return ec(this,e)},pipe(e){return nc(this,e)},readonly(){return ic(this)},describe(e){let t=this.clone();return Oi.add(t,{description:e}),t},meta(...e){if(e.length===0)return Oi.get(this);let t=this.clone();return Oi.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e,...t){return t.length===0?e(this):e(this,...t)},get"~standard"(){return He(this,`~standard`,{...Mn(this),jsonSchema:{input:Wa(this,`input`),output:Wa(this,`output`)}})},set"~standard"(e){D(this,`~standard`,e)},parse:function e(t,n){return No(this,t,n,{callee:e})},parseAsync:async function e(t,n){return await Po(this,t,n,{callee:e})},safeParse(e,t){return Fo(this,e,t)},async safeParseAsync(e,t){return Io(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){D(this,`spa`,e)},validate(e,t){return xt(this,e,t)},validateAsync(e,t){return Ct(this,e,t)},encode:function e(t,n){return Lo(this,t,n,{callee:e})},decode:function e(t,n){return Ro(this,t,n,{callee:e})},encodeAsync:async function e(t,n){return await zo(this,t,n,{callee:e})},decodeAsync:async function e(t,n){return await Bo(this,t,n,{callee:e})},safeEncode(e,t){return Vo(this,e,t)},safeDecode(e,t){return Ho(this,e,t)},async safeEncodeAsync(e,t){return Uo(this,e,t)},async safeDecodeAsync(e,t){return Wo(this,e,t)},toJSONSchema(e){return Ua(this,{})(e)},get description(){return Oi.get(this)?.description},get _def(){return this._zod.def}}),qo=k(`_ZodString`,(e,t)=>{Nn.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ao(e,t,n,r)},Ue({format:e=>R(e).format??null,minLength:e=>R(e).minimum??null,maxLength:e=>R(e).maximum??null},{regex(...e){return this.check(ga(...e))},includes(...e){return this.check(ya(...e))},startsWith(...e){return this.check(ba(...e))},endsWith(...e){return this.check(xa(...e))},min(...e){return this.check(ma(...e))},max(...e){return this.check(pa(...e))},length(...e){return this.check(ha(...e))},nonempty(...e){return this.check(ma(1,...e))},lowercase(e){return this.check(_a(e))},uppercase(e){return this.check(va(e))},trim(){return this.check(wa())},normalize(...e){return this.check(Ca(...e))},toLowerCase(){return this.check(Ta())},toUpperCase(){return this.check(Ea())},slugify(){return this.check(Da())}})),Jo=k(`ZodString`,(e,t)=>{Nn.init(e,t),qo.init(e,t)},{email(e){return this.check(ji($o,e))},url(e){return this.check(Li(rs,e))},jwt(e){return this.check(Qi(vs,e))},emoji(e){return this.check(Ri(is,e))},guid(e){return this.check(Mi(es,e))},uuid(e){return this.check(Ni(ts,e))},uuidv4(e){return this.check(Pi(ts,e))},uuidv6(e){return this.check(Fi(ts,e))},uuidv7(e){return this.check(Ii(ts,e))},nanoid(e){return this.check(zi(as,e))},cuid(e){return this.check(Bi(os,e))},cuid2(e){return this.check(Vi(ss,e))},ulid(e){return this.check(Hi(cs,e))},base64(e){return this.check(Yi(hs,e))},base64url(e){return this.check(Xi(gs,e))},xid(e){return this.check(Ui(ls,e))},ksuid(e){return this.check(Wi(us,e))},ipv4(e){return this.check(Gi(ds,e))},ipv6(e){return this.check(Ki(fs,e))},cidrv4(e){return this.check(qi(ps,e))},cidrv6(e){return this.check(Ji(ms,e))},e164(e){return this.check(Zi(_s,e))},datetime(e){return this.check($i(Yo,e))},date(e){return this.check(ea(Xo,e))},time(e){return this.check(ta(Zo,e))},duration(e){return this.check(na(Qo,e))}});function V(e){return Ai(Jo,e)}var H=k(`ZodStringFormat`,(e,t)=>{P.init(e,t),qo.init(e,t)}),Yo=k(`ZodISODateTime`,(e,t)=>{Qn.init(e,t),H.init(e,t)}),Xo=k(`ZodISODate`,(e,t)=>{$n.init(e,t),H.init(e,t)}),Zo=k(`ZodISOTime`,(e,t)=>{er.init(e,t),H.init(e,t)}),Qo=k(`ZodISODuration`,(e,t)=>{tr.init(e,t),H.init(e,t)}),$o=k(`ZodEmail`,(e,t)=>{In.init(e,t),H.init(e,t)}),es=k(`ZodGUID`,(e,t)=>{Pn.init(e,t),H.init(e,t)}),ts=k(`ZodUUID`,(e,t)=>{Fn.init(e,t),H.init(e,t)});function ns(e){return Ni(ts,e)}var rs=k(`ZodURL`,(e,t)=>{Wn.init(e,t),H.init(e,t)}),is=k(`ZodEmoji`,(e,t)=>{Gn.init(e,t),H.init(e,t)}),as=k(`ZodNanoID`,(e,t)=>{Kn.init(e,t),H.init(e,t)}),os=k(`ZodCUID`,(e,t)=>{qn.init(e,t),H.init(e,t)}),ss=k(`ZodCUID2`,(e,t)=>{Jn.init(e,t),H.init(e,t)}),cs=k(`ZodULID`,(e,t)=>{Yn.init(e,t),H.init(e,t)}),ls=k(`ZodXID`,(e,t)=>{Xn.init(e,t),H.init(e,t)}),us=k(`ZodKSUID`,(e,t)=>{Zn.init(e,t),H.init(e,t)}),ds=k(`ZodIPv4`,(e,t)=>{nr.init(e,t),H.init(e,t)}),fs=k(`ZodIPv6`,(e,t)=>{ar.init(e,t),H.init(e,t)}),ps=k(`ZodCIDRv4`,(e,t)=>{or.init(e,t),H.init(e,t)}),ms=k(`ZodCIDRv6`,(e,t)=>{cr.init(e,t),H.init(e,t)}),hs=k(`ZodBase64`,(e,t)=>{dr.init(e,t),H.init(e,t)}),gs=k(`ZodBase64URL`,(e,t)=>{mr.init(e,t),H.init(e,t)}),_s=k(`ZodE164`,(e,t)=>{hr.init(e,t),H.init(e,t)}),vs=k(`ZodJWT`,(e,t)=>{_r.init(e,t),H.init(e,t)}),ys=k(`ZodNumber`,(e,t)=>{vr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>oo(e,t,n,r),e.isFinite=!0},Ue({minValue:e=>{let{minimum:t,exclusiveMinimum:n}=R(e);return Math.max(t??-1/0,n??-1/0)},maxValue:e=>{let{maximum:t,exclusiveMaximum:n}=R(e);return Math.min(t??1/0,n??1/0)},isInt:e=>{let{isInt:t,multipleOf:n}=R(e);return!!t||!!n?.some(Number.isSafeInteger)},format:e=>R(e).format??null},{gt(e,t){return this.check(ua(e,t))},gte(e,t){return this.check(da(e,t))},min(e,t){return this.check(da(e,t))},lt(e,t){return this.check(ca(e,t))},lte(e,t){return this.check(la(e,t))},max(e,t){return this.check(la(e,t))},int(e){return this.check(Ss(e))},safe(e){return this.check(Ss(e))},positive(e){return this.check(ua(0,e))},nonnegative(e){return this.check(da(0,e))},negative(e){return this.check(ca(0,e))},nonpositive(e){return this.check(la(0,e))},multipleOf(e,t){return this.check(fa(e,t))},step(e,t){return this.check(fa(e,t))},finite(){return this}}));function bs(e){return ra(ys,e)}var xs=k(`ZodNumberFormat`,(e,t)=>{yr.init(e,t),ys.init(e,t)});function Ss(e){return ia(xs,e)}var Cs=k(`ZodBoolean`,(e,t)=>{br.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>so(e,t,n,r)});function U(e){return aa(Cs,e)}var ws=k(`ZodUnknown`,(e,t)=>{xr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Ts(){return oa(ws)}var Es=k(`ZodNever`,(e,t)=>{Sr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>co(e,t,n,r)});function Ds(e){return sa(Es,e)}var Os=k(`ZodArray`,(e,t)=>{Ko(),Er.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>mo(e,t,n,r),e.element=t.element},{min(e,t){return this.check(ma(e,t))},nonempty(e){return this.check(ma(1,e))},max(e,t){return this.check(pa(e,t))},length(e,t){return this.check(ha(e,t))},unwrap(){return this.element}});function W(e,t){return Oa(Os,e,t)}var ks=k(`ZodObject`,(e,t)=>{Ko(),Mr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>go(e,t,n,r),Ye(e,`shape`,e=>e._zod.def.shape,!1)},{keyof(){return Ls(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(x(this._zod.def,{catchall:e}))},passthrough(){return this.clone(x(this._zod.def,{catchall:Ts()}))},loose(){return this.clone(x(this._zod.def,{catchall:Ts()}))},strict(){return this.clone(x(this._zod.def,{catchall:Ds()}))},strip(){return this.clone(x(this._zod.def,{catchall:void 0}))},extend(e){return we(this,e)},safeExtend(e){return Ee(this,e)},merge(e){return De(this,e)},pick(e){return xe(this,e)},omit(e){return Ce(this,e)},partial(...e){return Oe(Vs,this,e[0])},exactPartial(...e){return Oe(Us,this,e[0],`exactPartial`)},required(...e){return ke(Zs,this,e[0])}});function G(e,t){return new ks({type:`object`,shape:e??{},...T(t)})}var As=k(`ZodUnion`,(e,t)=>{Pr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>_o(e,t,n,r),e.options=t.options});function js(e,t){return new As({type:`union`,options:e,...T(t)})}var Ms=k(`ZodDiscriminatedUnion`,(e,t)=>{As.init(e,t),Ir.init(e,t)});function Ns(e,t,n){return new Ms({type:`union`,options:t,discriminator:e,...T(n)})}var Ps=k(`ZodIntersection`,(e,t)=>{Lr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>vo(e,t,n,r)});function Fs(e,t){return new Ps({type:`intersection`,left:e,right:t})}var Is=k(`ZodEnum`,(e,t)=>{Br.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>lo(e,t,n,r),e.enum=t.entries,e.options=[...e._zod.values];let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new Is({...t,checks:[],...T(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new Is({...t,checks:[],...T(r),entries:i})}});function Ls(e,t){return new Is({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...T(t)})}var Rs=k(`ZodLiteral`,(e,t)=>{Vr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>uo(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function K(e,t){return new Rs({type:`literal`,values:Array.isArray(e)?e:[e],...T(t)})}var zs=k(`ZodTransform`,(e,t)=>{Ko(),Hr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>po(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new rt(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(Be(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,`input`in t||(t.input=n.value),t.inst??=e,n.issues.push(Be(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function Bs(e){return new zs({type:`transform`,transform:e})}var Vs=k(`ZodOptional`,(e,t)=>{Wr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Oo(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Hs(e){return new Vs({type:`optional`,innerType:e})}var Us=k(`ZodExactOptional`,(e,t)=>{Gr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Oo(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Ws(e){return new Us({type:`optional`,innerType:e})}var Gs=k(`ZodNullable`,(e,t)=>{Kr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>yo(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Ks(e){return new Gs({type:`nullable`,innerType:e})}var qs=k(`ZodDefault`,(e,t)=>{qr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Co(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Js(e,t){return new qs({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():me(t)}})}var Ys=k(`ZodPrefault`,(e,t)=>{Yr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>wo(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Xs(e,t){return new Ys({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():me(t)}})}var Zs=k(`ZodNonOptional`,(e,t)=>{Xr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>bo(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Qs(e,t){return new Zs({type:`nonoptional`,innerType:e,...T(t)})}var $s=k(`ZodCatch`,(e,t)=>{$r.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>To(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ec(e,t){return new $s({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:Ze(t)})}var tc=k(`ZodPipe`,(e,t)=>{ei.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Eo(e,t,n,r),e.in=t.in,e.out=t.out});function nc(e,t){return new tc({type:`pipe`,in:e,out:t})}var rc=k(`ZodReadonly`,(e,t)=>{ni.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Do(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ic(e){return new rc({type:`readonly`,innerType:e})}var ac=k(`ZodCustom`,(e,t)=>{ii.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>fo(e,t,n,r)});function oc(e,t={}){return ka(ac,e,t)}function sc(e,t){return Aa(e,t)}var q=h(),J=V().regex(/^[a-z][a-z0-9_-]{0,63}$/),cc=ns();G({deviceId:cc,projectId:J.optional()}).strict(),G({workspaceId:J,memberId:J,deviceId:cc}),G({members:W(J)});var lc=134217728,uc=10485760,dc=3e5,fc=V().regex(/^[a-f0-9]{64}$/),Y=bs().int().nonnegative().max(2**53-1),pc=V().min(1).max(1024).refine(e=>e!==e.normalize(`NFC`)||/[\\\x00-\x1f\x7f:<>"|?*]/.test(e)?!1:e.split(`/`).every(e=>e.length>0&&e.length<=255&&e!==`.`&&e!==`..`&&!/[. ]$/.test(e)&&!/^\.teammy(?:-|$)/i.test(e)&&!/^(con|prn|aux|nul|com[1-9]|lpt[1-9])(?:\.|$)/i.test(e)),`Path must be a portable, normalized relative file path.`),mc=G({sha256:fc,size:bs().int().min(0).max(lc)}),hc=mc.extend({size:bs().int().min(0).max(uc)}),gc=Ns(`kind`,[hc.extend({kind:K(`upsert`),path:pc}).strict(),G({kind:K(`delete`),path:pc}).strict()]);G({operationId:ns(),parentRevision:Y,changes:W(gc)}).strict().refine(e=>new Set(e.changes.map(e=>e.path)).size===e.changes.length,`Duplicate paths in a publication.`),G({operationId:ns(),revision:Y});var _c=hc.extend({path:pc,revision:Y});G({revision:Y,complete:U().default(!1),files:W(_c),nextCursor:V().nullable()}),G({headRevision:Y,revisions:W(G({revision:Y,operationId:ns(),createdAt:V(),changes:W(gc)}))}),G({hashes:W(fc).max(200)}).strict(),G({missing:W(fc)});var vc=Ns(`kind`,[_c.extend({kind:K(`file`)}),G({kind:K(`directory`),path:pc,fileCount:bs().int().positive()})]),yc=G({revision:Y,path:js([K(``),pc]),entries:W(vc),nextCursor:V().nullable()}),bc=G({revision:Y,file:_c}),xc=V().url().max(2048).refine(e=>{let t=new URL(e);return[`http:`,`https:`].includes(t.protocol)&&!t.username&&!t.password&&!t.search&&!t.hash},`Use an HTTP(S) server URL without credentials, query or fragment.`),Sc=G({checkIntervalSeconds:bs().int().min(1).max(86400),fileSettleSeconds:bs().int().min(0).max(86400)}).strict(),Cc=G({schemaVersion:K(1),projectId:J,projectName:V().trim().min(1).max(120),description:V().max(2e3),publicServerUrl:xc,configRevision:Y,scopeProfile:K(`workspace-and-sessions-v1`),sync:Sc}).strict(),wc=G({operationId:ns(),publicServerUrl:xc,adminId:J}).strict(),Tc=G({initialized:U()}),Ec=Cc.pick({projectName:!0,description:!0}).extend({expectedRevision:Y.optional()}).strict(),Dc=G({id:J,displayName:V().max(120),enabled:U(),accountEnabled:U(),revision:Y,bound:U(),fileRevision:Y,lastPublishedAt:V().nullable()}),Oc=G({memberId:J,displayName:V(),siteRole:Ls([`admin`,`member`])}),kc=Oc.extend({workspaceId:J}),Ac=G({id:J}).strict(),jc=G({expectedRevision:Y,displayName:V().trim().max(120).optional(),enabled:U().optional()}).strict();G({operationId:ns(),projectName:V().trim().min(1).max(120),description:V().max(2e3).default(``),workspacePath:V().trim().min(1).optional()}).strict();var Mc=G({projects:W(G({projectId:J,projectName:V(),description:V()}))}),Nc=G({sync:Sc,publicServerUrl:xc,revision:Y}),Pc=G({publicServerUrl:xc.optional(),sync:Sc.optional(),expectedRevision:Y}).strict().refine(e=>e.publicServerUrl!==void 0||e.sync!==void 0,`Provide a setting to update.`),Fc=G({id:J,displayName:V(),siteRole:Ls([`admin`,`member`]),enabled:U(),revision:Y}),Ic=G({id:J,displayName:V().trim().max(120).default(``),siteRole:Ls([`admin`,`member`]).default(`member`)}).strict(),Lc=G({expectedRevision:Y,displayName:V().trim().max(120).optional(),enabled:U().optional(),siteRole:Ls([`admin`,`member`]).optional()}).strict(),X={brand:`Teammy`,navigation:`主导航`,filePreview:`文件预览`,versionPicker:`选择目录版本`,connectCommand:`连接命令`,syncCommand:`开启同步命令`,syncStopCommand:`停止同步命令`,installCommandLabel:`安装命令`,skipToMain:`跳到主要内容`,loading:`正在加载…`,retry:`重试`,refresh:`刷新`,cancel:`取消`,close:`关闭`,save:`保存`,saving:`正在保存…`,next:`下一步`,back:`上一步`,confirm:`确认`,logout:`退出登录`,menu:`导航菜单`,files:`文件浏览`,dashboard:`工作看板`,sessions:`对话库`,members:`成员`,settings:`设置`,account:`个人账户`,project:`项目`,projectName:`项目名称`,description:`项目说明`,address:`团队接入地址`,addressHint:`填写成员设备能够访问的服务地址。`,adminId:`管理员 ID`,memberId:`成员 ID`,idHint:`以小写字母开头,最多 64 位,可包含数字、短横线或下划线。ID 创建后不可修改。`,displayName:`显示名称`,admin:`管理员`,member:`成员`,enabled:`已启用`,disabled:`已停用`,login:`进入工作台`,loginTitle:`连接你的团队`,loginHint:`输入管理员预先建立的成员 ID。`,existing:`接入已有工作区`,choose:`请选择`,interval:`文件检查间隔(秒)`,settle:`文件稳定等待(秒)`,timingHint:`文件停止修改后开始计时。新设置约 30 秒后下发,当前批次结束后生效。`,scope:`共享范围`,owner:`文件所属成员`,noFiles:`该目录版本暂无文件`,noFilesHint:`运行客户端同步后查看。`,pickFile:`选择文件,查看内容`,more:`加载更多`,name:`文件路径`,size:`大小`,version:`版本`,directoryVersion:`目录版本`,latest:`最新版本`,viewVersion:`查看版本`,download:`下载原文件`,raw:`原文`,rendered:`预览`,previewUnavailable:`该文件不支持文本预览,请下载查看。`,previewLarge:`文件超过 512 KiB,请下载查看完整内容。`,readOnly:`只读`,refreshFiles:`刷新目录`,remoteImage:`图片`,addMember:`添加成员`,editName:`修改名称`,disableMember:`停用成员`,enableMember:`启用成员`,resetDevice:`重置设备`,resetHint:`撤销该成员的设备凭证,保留共享文件与历史。成员需要重新运行 connect --reconnect。`,disableHint:`停止该成员访问和同步本项目,保留历史资料。其他项目不受影响。`,enableHint:`恢复本项目访问权限。设备需要重新接入。`,bound:`设备已绑定`,unbound:`尚未绑定设备`,noContact:`尚无状态报告`,lastContact:`最近联系`,lastPublished:`最近发布`,noPublication:`尚未发布文件`,stale:`报告已超过 2 分钟`,applied:`已应用`,waiting:`等待应用`,failed:`应用失败`,received:`已接收`,saved:`服务端已保存`,override:`含命令行覆盖`,effective:`当前有效策略`,syncResult:`最近同步`,pending:`待发文件`,clientVersion:`客户端版本`,syncIssues:`同步提示`,statusHint:`最近上报状态,非实时在线状态。`,connectTitle:`连接项目目录`,connectHint:`在工作目录(例如 utu/)运行以下命令,并在打开的网页中确认用户 ID,将当前工作目录连接到 Teammy 服务:`,connectAfter:`注意:会话采集以工作目录为范围,只采集该目录及其子目录中的 Agent 会话。因此,建议在项目根目录(例如 utu/)执行此命令。`,install:`首次使用`,installHint:`需要 Node.js 22.19+,客户端版本与服务端保持一致。`,copy:`复制`,copied:`已复制`,copyFailed:`复制失败,请手动选择命令。`,configSaved:`设置已保存,等待客户端接收并上报。`,reloadConfig:`读取最新设置`,configConflict:`设置已被其他成员修改。先读取最新设置,再重新编辑。`,permissionHint:`公共设置由管理员维护。`,application:`配置应用情况`,serverVersion:`服务端版本`,notReported:`未上报`,seconds:`秒`,errors:{AI_DEFAULT_REQUIRED:`请选择模型,或先设置默认接入点。`,AI_PROFILE_DISABLED:`该模型接入点已停用,请重新选择。`,AI_CONFIG_CONFLICT:`模型设置已更新,请重新载入后保存。`,SITE_ADMIN_REQUIRED:`此操作需要站点管理员身份。`,USER_NOT_FOUND:`用户尚未建立或账号已停用,请联系站点管理员。`,USER_EXISTS:`该用户 ID 已存在。`,PROJECT_NOT_FOUND:`项目不存在或你已不再是该项目成员。`,PROJECT_REQUIRED:`请选择一个项目。`,PROJECT_MISMATCH:`设备凭证属于其他项目。`,UNKNOWN_MEMBER:`成员 ID 不存在或已被停用。`,LOGIN_REQUIRED:`登录已失效,请重新登录。`,ADMIN_REQUIRED:`此操作需要管理员身份。`,STALE_CONFIG:`设置已变更,请读取最新设置后重试。`,STALE_MEMBER:`成员信息已变更,请刷新后重试。`,LAST_ADMIN:`至少需要保留一位启用的管理员。`,MEMBER_EXISTS:`该成员 ID 已存在。`,ALREADY_INITIALIZED:`服务已初始化,请刷新页面进入登录。`,INVALID_REQUEST:`请检查输入内容和数值范围。`,FORBIDDEN:`没有执行此操作的权限。`,INVALID_REVISION:`该目录版本不存在。`}};function Rc(e){let t=e.replace(/\s+/g,` `).trim()||`未命名对话`,n=Array.from(t);return n.length>56?n.slice(0,56).join(``)+`…`:t}var zc=class extends Error{code;status;constructor(e,t,n){super(X.errors[e]??t),this.code=e,this.status=n}};async function Z(e,t,n={}){let r=await fetch(d(`/api/v1/${e}`),{method:n.method??`GET`,headers:{accept:`application/json`,...n.body===void 0?{}:{"content-type":`application/json`},...n.method&&n.method!==`GET`?{"x-teammy-web":`1`}:{}},body:n.body===void 0?void 0:JSON.stringify(n.body),signal:n.signal?AbortSignal.any([n.signal,AbortSignal.timeout(n.timeoutMs??15e3)]):AbortSignal.timeout(n.timeoutMs??15e3),credentials:`same-origin`}),i=await r.json();if(!r.ok){let e=new zc(i.error?.code??`HTTP_ERROR`,i.error?.message??`HTTP ${r.status}`,r.status);throw e.code===`LOGIN_REQUIRED`&&window.dispatchEvent(new Event(`teammy:logout`)),e}return t.parse(i)}var Bc={server:e=>Z(`server`,G({version:V()}),{signal:e}),projects:e=>Z(`projects`,Mc,{signal:e}),setup:e=>Z(`setup`,Tc,{signal:e}),session:e=>Z(`web/session`,Oc,{signal:e}),login:e=>Z(`web/session`,Oc,{method:`POST`,body:{id:e}}),logout:()=>Z(`web/session`,G({ok:U()}),{method:`DELETE`})};function Vc(e){return{config:t=>e(`project/config`,Cc,{signal:t}),members:t=>e(`web/members`,G({members:W(Dc)}),{signal:t}),file:(t,n,r,i)=>e(`files/${encodeURIComponent(t)}/entry?${new URLSearchParams({path:n,...r===void 0?{}:{revision:String(r)}})}`,bc,{signal:i}),tree:(t,n,r,i,a)=>e(`files/${encodeURIComponent(t)}/tree?${new URLSearchParams({path:n,after:i,limit:`100`,...r===void 0?{}:{revision:String(r)}})}`,yc,{signal:a})}}function Hc(e){return e instanceof Mo?X.errors.INVALID_REQUEST:e instanceof Error?e.message:String(e)}function Uc(e){return`'${e.replaceAll(`'`,`'\\''`)}'`}function Wc(){let e=crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``);return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}async function Gc(e,t,n){let r=await fetch(d(`${n}/blobs/${e.sha256}`),{signal:AbortSignal.any([t,AbortSignal.timeout(dc)])});if(!r.ok)throw r.status===401&&window.dispatchEvent(new Event(`teammy:logout`)),new zc(`HTTP_ERROR`,`HTTP ${r.status}`,r.status);let i=await r.arrayBuffer();if(i.byteLength!==e.size)throw Error(`File size mismatch.`);let a;try{a=new TextDecoder(`utf-8`,{fatal:!0}).decode(i)}catch{throw Error(X.previewUnavailable)}if(a.includes(`\0`))throw Error(X.previewUnavailable);return a}var Kc=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),qc=o(((e,t)=>{t.exports=Kc()})),Q=qc(),Jc=class{values=new Map;get(e){return this.values.get(e)}set(e,t){this.values.set(e,t)}delete(e){this.values.delete(e)}},Yc=(0,q.createContext)(void 0);function Xc({children:e}){let[t]=(0,q.useState)(()=>new Jc);return(0,Q.jsx)(Yc.Provider,{value:t,children:e})}var Zc=()=>(0,q.useContext)(Yc),Qc=(...e)=>JSON.stringify(e);function $c(e,t=!1,n){let r=Zc(),i=n??e,a=()=>n?r?.get(n):void 0,[o,s]=(0,q.useState)(()=>({source:i,data:a(),error:``,loading:!0})),c=o.source===i?o:{source:i,data:a(),error:``,loading:!0},l=(0,q.useRef)(null),u=(0,q.useRef)(0),d=(0,q.useCallback)(async()=>{l.current?.abort();let t=new AbortController;l.current=t;let o=++u.current;s(e=>({source:i,data:e.source===i?e.data:a(),error:``,loading:!0}));try{let a=await e(t.signal);o===u.current&&(n&&r?.set(n,a),s({source:i,data:a,error:``,loading:!1}))}catch(e){if(!t.signal.aborted&&o===u.current){let t=e instanceof zc&&[401,403,404].includes(e.status);t&&n&&r?.delete(n),s(n=>({...n,data:t?void 0:n.data,error:Hc(e)}))}}finally{o===u.current&&(s(e=>({...e,loading:!1})),l.current=null)}},[e,n,r]);return(0,q.useEffect)(()=>{d();let e=()=>{!document.hidden&&!l.current&&d()},n=t?setInterval(e,typeof t==`number`?t:3e4):void 0;return t&&document.addEventListener(`visibilitychange`,e),()=>{u.current++,l.current?.abort(),l.current=null,clearInterval(n),document.removeEventListener(`visibilitychange`,e)}},[d,t]),{data:c.data,error:c.error,loading:c.loading,reload:d}}function el(){let[e]=(0,q.useState)(()=>new AbortController);return(0,q.useEffect)(()=>()=>e.abort(),[e]),e.signal}async function tl(e){if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(e);return}catch{}let t=document.activeElement,n=window.getSelection(),r=n?Array.from({length:n.rangeCount},(e,t)=>n.getRangeAt(t).cloneRange()):[],i=document.createElement(`textarea`);i.value=e,i.readOnly=!0,i.style.cssText=`position:fixed;left:0;top:0;opacity:0;pointer-events:none;`,document.body.append(i);try{if(i.focus({preventScroll:!0}),i.select(),!document.execCommand(`copy`))throw Error(`Clipboard copy was denied.`)}finally{if(i.remove(),t instanceof HTMLElement&&t.focus({preventScroll:!0}),n){n.removeAllRanges();for(let e of r)n.addRange(e)}}}var nl=new URL(`teammy-wordmark-ZFwxG0yl.png`,import.meta.url).href,rl=new URL(`teammy-mark-CxBtF1-X.png`,import.meta.url).href,il=new URL(`teammy-calm-DVuoOK0F.png`,import.meta.url).href,al=new URL(`teammy-wave-CVTgecuC.png`,import.meta.url).href,ol=e=>e?.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase();function sl(e,t,n=[]){if(t==null)throw Error(`[lucide]: iconNode is required when icon name is used`);return{name:ol(e),size:24,node:t,...n.length>0?{aliases:n}:{}}}var cl=e=>{let t=``,n=!1;for(let r of e)r===`-`||r===`_`||r<=` `?n=t.length>0:(t.length===0?t+=r.toLowerCase():t+=n?r.toUpperCase():r,n=!1);return t},ll=e=>{let t=cl(e);return t.charAt(0).toUpperCase()+t.slice(1)},ul=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),dl={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":2,"stroke-linecap":`round`,"stroke-linejoin":`round`};function fl(e){return e!=null}function pl(e,t={}){let n=t.attributeNames??{},r=e=>n[e]??e,i=e.size??e.width??dl.width,a=e.size??e.height??dl.height,o=e.aliases?.filter(e=>typeof e==`string`&&e.trim()!==``).map(e=>`lucide-${e}`)??[],s=[...e.name?[`lucide-${e.name}`]:[],...o],c=t.className?.split(` `).filter(Boolean)??[],l=t.includeDefaultClasses===!1?ul(...c):ul(`lucide`,...s,...c),u=t.absoluteStrokeWidth?Number(t.strokeWidth??dl[`stroke-width`])*Number(e.size??e.width??dl.width)/Number(t.size??t.width??dl.width):t.strokeWidth??dl[`stroke-width`];return[`svg`,{...Object.entries(dl).reduce((e,[t,n])=>(e[r(t)]=n,e),{}),...`color`in t&&t.color&&{[r(`stroke`)]:t.color},...`size`in t&&fl(t.size)&&{[r(`width`)]:t.size,[r(`height`)]:t.size},...`width`in t&&fl(t.width)&&{[r(`width`)]:t.width},...`height`in t&&fl(t.height)&&{[r(`height`)]:t.height},[r(`stroke-width`)]:u,...l&&{[r(`class`)]:l},[r(`viewBox`)]:`0 0 ${i} ${a}`,...t.hasA11yProp===!1?{[r(`aria-hidden`)]:`true`}:{},...`attributes`in t&&t.attributes},e.node.map(e=>{let[n,i,a]=e,o=t.nonScalingStroke?{[r(`vector-effect`)]:`non-scaling-stroke`,...i}:i;return a?[n,o,a]:[n,o]})]}function ml(e,t={}){return pl(e,{...t,attributeNames:{...t.attributeNames,class:`className`,"stroke-width":`strokeWidth`,"stroke-linecap":`strokeLinecap`,"stroke-linejoin":`strokeLinejoin`,"vector-effect":`vectorEffect`}})}var hl=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},gl=(0,q.createContext)({}),_l=()=>(0,q.useContext)(gl),vl=(0,q.forwardRef)(({color:e,size:t,width:n,height:r,strokeWidth:i,absoluteStrokeWidth:a,nonScalingStroke:o,className:s=``,children:c,iconNode:l=[],icon:u={node:l,aliases:[],size:24},...d},f)=>{let{size:p=24,strokeWidth:m=2,absoluteStrokeWidth:h=!1,nonScalingStroke:ee=!1,color:te=`currentColor`,className:ne=``}=_l()??{},g=!!c||hl(d),[re,ie,ae=[]]=ml(u,{color:e??te,width:n??t??p,height:r??t??p,strokeWidth:i??m,absoluteStrokeWidth:a??h,nonScalingStroke:o??ee,className:ul(ne,s),hasA11yProp:g,attributes:d});return(0,q.createElement)(re,{ref:f,...ie},[...ae.map(([e,t])=>(0,q.createElement)(e,t)),...Array.isArray(c)?c:[c]])});function $(e,t=[],n=[]){let r=typeof e==`string`?sl(e,t,n):e,i=(0,q.forwardRef)(({className:e,...t},n)=>(0,q.createElement)(vl,{ref:n,icon:r,className:e,...t}));return r.name&&(i.displayName=ll(r.name)),i}var yl={name:`archive`,size:24,node:[[`rect`,{width:`20`,height:`5`,x:`2`,y:`3`,rx:`1`,key:`1wp1u1`}],[`path`,{d:`M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8`,key:`1s80jp`}],[`path`,{d:`M10 12h4`,key:`a56b0p`}]]};yl.node;var bl=$(yl),xl={name:`arrow-up`,size:24,node:[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]};xl.node;var Sl=$(xl),Cl={name:`bell`,size:24,node:[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}]]};Cl.node;var wl=$(Cl),Tl={name:`check`,size:24,node:[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]};Tl.node;var El=$(Tl),Dl={name:`chevron-down`,size:24,node:[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]};Dl.node;var Ol=$(Dl),kl={name:`chevron-right`,size:24,node:[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]};kl.node;var Al=$(kl),jl={name:`chevron-up`,size:24,node:[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]};jl.node;var Ml=$(jl),Nl={name:`circle-alert`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]],aliases:[`alert-circle`]};Nl.node;var Pl=$(Nl),Fl={name:`code-xml`,size:24,node:[[`path`,{d:`m18 16 4-4-4-4`,key:`1inbqp`}],[`path`,{d:`m6 8-4 4 4 4`,key:`15zrgr`}],[`path`,{d:`m14.5 4-5 16`,key:`e7oirm`}]],aliases:[`code-2`]};Fl.node;var Il=$(Fl),Ll={name:`copy`,size:24,node:[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]};Ll.node;var Rl=$(Ll),zl={name:`cpu`,size:24,node:[[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M17 20v2`,key:`1rnc9c`}],[`path`,{d:`M17 2v2`,key:`11trls`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M2 17h2`,key:`7oei6x`}],[`path`,{d:`M2 7h2`,key:`asdhe0`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`M20 17h2`,key:`1fpfkl`}],[`path`,{d:`M20 7h2`,key:`1o8tra`}],[`path`,{d:`M7 20v2`,key:`4gnj0m`}],[`path`,{d:`M7 2v2`,key:`1i4yhu`}],[`rect`,{x:`4`,y:`4`,width:`16`,height:`16`,rx:`2`,key:`1vbyd7`}],[`rect`,{x:`8`,y:`8`,width:`8`,height:`8`,rx:`1`,key:`z9xiuo`}]]};zl.node;var Bl=$(zl),Vl={name:`download`,size:24,node:[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]};Vl.node;var Hl=$(Vl),Ul={name:`eye`,size:24,node:[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]};Ul.node;var Wl=$(Ul),Gl={name:`file-text`,size:24,node:[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]};Gl.node;var Kl=$(Gl),ql={name:`folder-open`,size:24,node:[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]};ql.node;var Jl=$(ql),Yl={name:`folder`,size:24,node:[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]};Yl.node;var Xl=$(Yl),Zl={name:`key-round`,size:24,node:[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]};Zl.node;var Ql=$(Zl),$l={name:`layout-grid`,size:24,node:[[`rect`,{width:`7`,height:`7`,x:`3`,y:`3`,rx:`1`,key:`1g98yp`}],[`rect`,{width:`7`,height:`7`,x:`14`,y:`3`,rx:`1`,key:`6d4xhi`}],[`rect`,{width:`7`,height:`7`,x:`14`,y:`14`,rx:`1`,key:`nxv5o0`}],[`rect`,{width:`7`,height:`7`,x:`3`,y:`14`,rx:`1`,key:`1bb6yr`}]]};$l.node;var eu=$($l),tu={name:`log-out`,size:24,node:[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]};tu.node;var nu=$(tu),ru={name:`menu`,size:24,node:[[`path`,{d:`M4 5h16`,key:`1tepv9`}],[`path`,{d:`M4 12h16`,key:`1lakjw`}],[`path`,{d:`M4 19h16`,key:`1djgab`}]]};ru.node;var iu=$(ru),au={name:`messages-square`,size:24,node:[[`path`,{d:`M16 10a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 14.286V4a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z`,key:`1n2ejm`}],[`path`,{d:`M20 9a2 2 0 0 1 2 2v10.286a.71.71 0 0 1-1.212.502l-2.202-2.202A2 2 0 0 0 17.172 19H10a2 2 0 0 1-2-2v-1`,key:`1qfcsi`}]]};au.node;var ou=$(au),su={name:`monitor`,size:24,node:[[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`line`,{x1:`8`,x2:`16`,y1:`21`,y2:`21`,key:`1svkeh`}],[`line`,{x1:`12`,x2:`12`,y1:`17`,y2:`21`,key:`vw1qmm`}]]};su.node;var cu=$(su),lu={name:`pencil`,size:24,node:[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]};lu.node;var uu=$(lu),du={name:`plug`,size:24,node:[[`path`,{d:`M12 22v-5`,key:`1ega77`}],[`path`,{d:`M15 8V2`,key:`18g5xt`}],[`path`,{d:`M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z`,key:`1xoxul`}],[`path`,{d:`M9 8V2`,key:`14iosj`}]]};du.node;var fu=$(du),pu={name:`plus`,size:24,node:[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]};pu.node;var mu=$(pu),hu={name:`refresh-cw`,size:24,node:[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]};hu.node;var gu=$(hu),_u={name:`search`,size:24,node:[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]};_u.node;var vu=$(_u),yu={name:`settings`,size:24,node:[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]};yu.node;var bu=$(yu),xu={name:`sliders-horizontal`,size:24,node:[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]};xu.node;var Su=$(xu),Cu={name:`sparkles`,size:24,node:[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}],[`path`,{d:`M20 2v4`,key:`1rf3ol`}],[`path`,{d:`M22 4h-4`,key:`gwowj6`}],[`circle`,{cx:`4`,cy:`20`,r:`2`,key:`6kqj1y`}]],aliases:[`stars`]};Cu.node;var wu=$(Cu),Tu={name:`user-round-check`,size:24,node:[[`path`,{d:`M2 21a8 8 0 0 1 13.292-6`,key:`bjp14o`}],[`circle`,{cx:`10`,cy:`8`,r:`5`,key:`o932ke`}],[`path`,{d:`m16 19 2 2 4-4`,key:`1b14m6`}]],aliases:[`user-check-2`]};Tu.node;var Eu=$(Tu),Du={name:`user-round`,size:24,node:[[`circle`,{cx:`12`,cy:`8`,r:`5`,key:`1hypcn`}],[`path`,{d:`M20 21a8 8 0 0 0-16 0`,key:`rfgkzh`}]],aliases:[`user-2`]};Du.node;var Ou=$(Du),ku={name:`user-round-x`,size:24,node:[[`path`,{d:`m16.5 16.5 5 5`,key:`zc9lw7`}],[`path`,{d:`M2 21a8 8 0 0 1 11.531-7.18`,key:`x5izle`}],[`path`,{d:`m21.5 16.5-5 5`,key:`1empo3`}],[`circle`,{cx:`10`,cy:`8`,r:`5`,key:`o932ke`}]],aliases:[`user-x-2`]};ku.node;var Au=$(ku),ju={name:`users`,size:24,node:[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]};ju.node;var Mu=$(ju),Nu={name:`x`,size:24,node:[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]};Nu.node;var Pu=$(Nu);function Fu({compact:e=!1}){return(0,Q.jsx)(`div`,{className:`brand ${e?`brand-compact`:``}`,children:(0,Q.jsx)(`img`,{src:e?rl:nl,alt:`Teammy`})})}function Iu({pose:e=`calm`}){return(0,Q.jsx)(`img`,{className:`mascot mascot-${e}`,src:e===`wave`?al:il,alt:``,"aria-hidden":`true`})}function Lu({name:e,small:t=!1}){return(0,Q.jsx)(`span`,{className:`avatar ${t?`small`:``}`,"aria-hidden":`true`,children:Array.from(e)[0]?.toUpperCase()})}function Ru({children:e}){return(0,Q.jsx)(`span`,{className:`count`,children:e})}function zu({title:e,description:t,icon:n,mascot:r=!1,children:i}){return(0,Q.jsxs)(`div`,{className:`empty-state`,children:[r?(0,Q.jsx)(Iu,{}):n?(0,Q.jsx)(Xu,{name:n}):null,(0,Q.jsx)(`h3`,{children:e}),t&&(0,Q.jsx)(`p`,{children:t}),i]})}function Bu({title:e,count:t,children:n}){return(0,Q.jsxs)(`div`,{className:`section-heading`,children:[(0,Q.jsxs)(`h2`,{children:[e,t!==void 0&&(0,Q.jsx)(Ru,{children:t})]}),n]})}function Vu({label:e,children:t}){return(0,Q.jsx)(`div`,{className:`toolbar-actions`,role:`group`,"aria-label":e,children:t})}function Hu({children:e,error:t=!1}){return e?(0,Q.jsx)(`div`,{"data-testid":`notice`,"data-kind":t?`error`:`info`,className:`notice ${t?`error`:``}`,role:t?`alert`:`status`,children:e}):null}function Uu({id:e,name:t,label:n,hint:r,children:i}){let a=[i.props[`aria-describedby`],r?`${e}-hint`:void 0].filter(Boolean).join(` `)||void 0;return(0,Q.jsxs)(`label`,{className:`field`,htmlFor:e,children:[(0,Q.jsx)(`span`,{id:`${e}-label`,children:n}),(0,q.cloneElement)(i,{id:e,name:t??i.props.name??e,"data-testid":e,"aria-labelledby":`${e}-label`,"aria-describedby":a}),r&&(0,Q.jsx)(`small`,{id:`${e}-hint`,children:r})]})}function Wu({title:e,description:t,children:n}){return(0,Q.jsxs)(`header`,{className:`page-header`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`h1`,{children:e}),t&&(0,Q.jsx)(`p`,{children:t})]}),n]})}function Gu({id:e,title:t,children:n,onClose:r}){let i=(0,q.useRef)(null);return(0,q.useEffect)(()=>{let e=document.activeElement;return i.current?.showModal(),()=>{i.current?.close(),e?.focus()}},[]),(0,Q.jsx)(`dialog`,{id:e,"data-testid":e,"aria-labelledby":`${e}-title`,ref:i,onCancel:r,onClick:e=>{e.target===e.currentTarget&&r()},children:(0,Q.jsxs)(`div`,{className:`dialog-content`,children:[(0,Q.jsxs)(`header`,{className:`dialog-header`,children:[(0,Q.jsx)(`h2`,{id:`${e}-title`,children:t}),(0,Q.jsx)(Zu,{icon:`close`,label:X.close,"data-testid":`dialog-close`,onClick:r})]}),n]})})}function Ku({id:e,label:t,value:n}){let[r,i]=(0,q.useState)(``);return(0,Q.jsxs)(`div`,{children:[(0,Q.jsxs)(`div`,{className:`command`,"data-testid":e,children:[(0,Q.jsx)(`code`,{"data-testid":`${e}-value`,children:n}),(0,Q.jsx)(Zu,{icon:`copy`,"data-testid":`${e}-copy`,label:`${X.copy}${t}`,onClick:async()=>{try{await tl(n),i(X.copied)}catch{i(X.copyFailed)}}})]}),r&&(0,Q.jsx)(`small`,{"data-testid":`${e}-feedback`,role:`status`,children:r})]})}function qu({value:e}){return e?(0,Q.jsx)(`time`,{dateTime:e,children:new Date(e).toLocaleString(`zh-CN`,{hour12:!1})}):(0,Q.jsx)(`span`,{children:`—`})}var Ju={assistant:wu,archive:bl,send:Sl,dashboard:eu,sessions:ou,files:Xl,folderOpen:Jl,chevronUp:Ml,chevronDown:Ol,members:Mu,settings:bu,refresh:gu,chevron:Al,file:Kl,download:Hl,code:Il,preview:Wl,sparkles:wu,close:Pu,plus:mu,edit:uu,device:cu,disable:Au,enable:Eu,reset:Ql,menu:iu,logout:nu,account:Ou,copy:Rl,general:Su,connect:fu,model:Bl,check:El,search:vu,notifications:wl,attention:Pl},Yu={small:16,normal:24,navigation:38};function Xu({name:e,size:t=`normal`}){let n=Ju[e];return(0,Q.jsx)(n,{className:`icon`,size:Yu[t],strokeWidth:2,absoluteStrokeWidth:!0,"aria-hidden":`true`})}function Zu({label:e,icon:t,tooltip:n=t!==`refresh`,className:r=``,variant:i=`ghost`,...a}){return(0,Q.jsx)(`button`,{type:`button`,...a,className:`icon-button ${i===`primary`?`primary`:``} ${r}`,"aria-label":e,"data-tooltip":n?e:void 0,children:(0,Q.jsx)(Xu,{name:t})})}function Qu(e){let t=`projects/${encodeURIComponent(e)}`,n=(e,n,r)=>Z(`${t}/${e}`,n,r);return{projectId:e,request:n,api:Vc(n),blobUrl:e=>d(`/api/v1/${t}/blobs/${e}`),readTextBlob:(e,n)=>Gc(e,n,`/api/v1/${t}`)}}var $u=(0,q.createContext)(null);function ed(){let e=(0,q.useContext)($u);if(!e)throw Error(`Project context is required.`);return e}export{Ls as $,Uc as A,Nc as B,Zc as C,Hc as D,Bc as E,Dc as F,Oc as G,Ic as H,jc as I,pc as J,kc as K,Cc as L,X as M,Ec as N,Wc as O,Ac as P,J as Q,xc as R,Qc as S,zc as T,Fc as U,Pc as V,Lc as W,Y as X,fc as Y,cc as Z,Vu as _,Fu as a,G as at,$c as b,zu as c,ns as ct,Zu as d,f as dt,W as et,Iu as f,p as ft,Bu as g,Wu as h,l as ht,Lu as i,bs as it,Rc as j,Z as k,Uu as l,h as lt,Hu as m,s as mt,Qu as n,Ns as nt,Ku as o,V as ot,Gu as p,o as pt,mc as q,ed as r,K as rt,Ru as s,js as st,$u as t,U as tt,Xu as u,d as ut,qu as v,qc as w,Xc as x,el as y,wc as z};
@@ -4,10 +4,11 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <meta name="theme-color" content="#161615" />
7
- <title>Teammy · 团队工作台</title>
8
- <script type="module" crossorigin src="/assets/index-CM5Lhy8F.js"></script>
9
- <link rel="modulepreload" crossorigin href="/assets/project-context-DaIDEKgk.js">
10
- <link rel="stylesheet" crossorigin href="/assets/index-DQlDs2jS.css">
7
+ <title>Teammy 工作台</title>
8
+ <link rel="icon" type="image/png" href="./assets/teammy-favicon-BiDvlPj2.png" />
9
+ <script type="module" crossorigin src="./assets/index-COCTfq_q.js"></script>
10
+ <link rel="modulepreload" crossorigin href="./assets/project-context--9YVXMif.js">
11
+ <link rel="stylesheet" crossorigin href="./assets/index-C_jc0zVK.css">
11
12
  </head>
12
13
  <body>
13
14
  <div id="root" data-teammy-ui-version="11"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@teammy/server",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "The centralized Teammy collaboration hub server.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -29,6 +29,7 @@
29
29
  "@fastify/static": "^10.1.7",
30
30
  "diff": "8.0.4",
31
31
  "fastify": "5.12.7",
32
+ "ignore": "^7.0.8",
32
33
  "zod": "4.6.7"
33
34
  }
34
35
  }
@@ -1 +0,0 @@
1
- main#main[data-page=assistant]{height:100dvh;padding:0}.assistant-layout{grid-template-columns:var(--pane-width) minmax(0, 1fr);height:100%;min-height:0}.assistant-list{border-right:1px solid var(--color-line);background:var(--color-surface);flex-direction:column;min-height:0;display:flex}.assistant-list-heading,.assistant-thread-heading{border-bottom:1px solid var(--color-line);flex:0 0 76px;justify-content:space-between;align-items:center;padding:0 24px;display:flex}.assistant-list-heading h1{margin:0;font-size:20px}.assistant-thread-heading h2{margin:0;font-size:17px}.assistant-message-scroll{flex:1;min-height:0;overflow-y:auto}.assistant-message-item{border:0;border-bottom:1px solid var(--color-line);text-align:left;width:100%;color:var(--color-text);background:0 0;border-radius:0;align-items:center;gap:12px;padding:20px 24px;display:flex}.assistant-message-item:hover{background:var(--color-hover)}.assistant-message-item.selected{background:var(--color-soft)}.assistant-message-item.archived{color:var(--color-muted)}.assistant-message-item.archived strong{font-weight:400}.assistant-entry-footer{border-top:1px solid var(--color-line);background:var(--color-surface);flex-shrink:0}.assistant-launcher{width:100%;min-height:76px;color:var(--color-text);text-align:center;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;margin:0;padding:0 24px;display:flex}.assistant-launcher:hover{background:var(--color-hover)}.assistant-launcher:focus-visible{outline-offset:-4px}.assistant-launcher .selection-content{padding:12px 18px}.assistant-launcher .mascot{flex-shrink:0;width:31.5px;height:47.7px}.assistant-launcher-copy{white-space:nowrap;font-size:16px}.assistant-message-copy{flex-direction:column;gap:6px;min-width:0;display:flex}.assistant-message-copy strong,.assistant-message-copy>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.assistant-message-copy strong{font-size:var(--text-base);font-weight:600}.assistant-message-copy>span,.assistant-message-copy time{font-size:var(--text-xs);color:var(--color-muted)}.assistant-message-dot{border-radius:50%;flex:0 0 7px;width:7px;height:7px}.assistant-message-dot.unread{background:var(--brand-orange)}.assistant-thread{background:var(--color-canvas);flex-direction:column;min-width:0;min-height:0;display:flex}.assistant-transcript{flex:1;min-height:0;padding:28px clamp(20px,4vw,64px);overflow-y:auto}.assistant-bubble-row{margin:0 0 24px;display:flex}.assistant-bubble-row.mine{justify-content:flex-end}.assistant-bubble{border-radius:4px var(--radius-lg) var(--radius-lg);background:var(--color-soft);overflow-wrap:anywhere;min-width:100px;max-width:min(88%,800px);padding:14px 18px}.assistant-bubble-row.mine .assistant-bubble{background:var(--color-accent-soft);border-radius:var(--radius-lg) 4px var(--radius-lg) var(--radius-lg)}.assistant-bubble-meta{font-size:var(--text-xs);color:var(--color-muted);align-items:baseline;gap:16px;margin-bottom:8px;display:flex}.assistant-debug-reply{font-size:var(--text-xs);background:var(--color-surface);margin-top:12px;padding:4px 10px}.assistant-bubble .markdown>:first-child{margin-top:0}.assistant-bubble .markdown>:last-child{margin-bottom:0}.assistant-bubble .markdown{font-size:var(--text-base);line-height:1.75}.assistant-bubble pre{max-width:100%;overflow-x:auto}.assistant-composer{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);align-items:flex-end;gap:12px;margin:0 28px 28px;padding:12px;display:flex}.assistant-reply-hint{font-size:var(--text-xs);color:var(--color-muted);margin:0 28px 10px;line-height:1.7}.assistant-composer:focus-within{border-color:var(--color-muted)}.assistant-composer textarea{box-shadow:none;resize:vertical;background:0 0;border:0;flex:1;min-height:56px;max-height:220px;padding:8px}.assistant-composer textarea:focus{box-shadow:none;outline:none}.assistant-send{flex:0 0 40px;place-items:center;width:40px;height:40px;padding:0;display:grid}.assistant-empty{height:100%;min-height:240px;color:var(--color-muted);flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex}.assistant-empty .mascot{width:96px;height:144px}.assistant-empty p{margin:0}.assistant-archived{color:var(--color-muted);font-size:var(--text-sm);justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.assistant-thread>.notice{margin:0 28px 12px}.assistant-typing{gap:5px;padding:8px 0;display:inline-flex}.assistant-typing i{background:var(--color-muted);border-radius:50%;width:5px;height:5px;animation:1.4s infinite assistant-pulse}.assistant-typing i:nth-child(2){animation-delay:.15s}.assistant-typing i:nth-child(3){animation-delay:.3s}@keyframes assistant-pulse{0%,70%,to{opacity:.35}35%{opacity:1}}@media (prefers-reduced-motion:reduce){.assistant-typing i{animation:none}}@media (width<=900px){.assistant-layout{grid-template-columns:240px minmax(0,1fr)}.assistant-message-item{padding:16px}.assistant-composer{margin:0 16px 16px}.assistant-reply-hint{margin:0 16px 10px}.assistant-launcher{padding:0 12px}.assistant-bubble{max-width:96%}}@media (width<=600px){.assistant-layout{grid-template-columns:150px minmax(0,1fr)}.assistant-list-heading,.assistant-thread-heading{padding:0 12px}.assistant-launcher{padding:0 4px}.assistant-launcher .selection-content{padding:12px 6px}.assistant-launcher .selection-inner{gap:4px}.assistant-launcher-copy{font-size:12px}.assistant-transcript{padding:16px 10px}.assistant-composer{gap:4px;margin:0 8px 12px;padding:6px}.assistant-reply-hint{margin:0 8px 10px}}
@@ -1 +0,0 @@
1
- import{$ as e,et as t,f as n,it as r,m as i,r as a,u as o,w as s,x as c,y as l}from"./project-context-DaIDEKgk.js";import{a as u,i as d,o as f,r as p,u as m}from"./index-CM5Lhy8F.js";import{t as h}from"./Markdown-B4-VDnLX.js";var g=r(),_=l(),v=e=>new Date(e).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`}),y=e=>e.replace(/[#*_`>]/g,``).replace(/\s+/g,` `).trim();function b({mine:e=!1,author:t,time:n,children:r}){return(0,_.jsx)(`div`,{className:`assistant-bubble-row ${e?`mine`:``}`,children:(0,_.jsxs)(`div`,{className:`assistant-bubble`,children:[(0,_.jsxs)(`div`,{className:`assistant-bubble-meta`,children:[(0,_.jsx)(`span`,{children:t}),(0,_.jsx)(`time`,{dateTime:n,children:v(n)})]}),r]})})}function x({me:r}){let{projectId:l,request:x}=a(),C=(0,g.useCallback)(e=>x(`agents/outbox`,u,{signal:e}),[x]),w=c(C,3e3),[T,E]=(0,g.useState)(),[D,O]=(0,g.useState)(`constant`),[k,A]=(0,g.useState)(),[j,M]=(0,g.useState)(``),[N,P]=(0,g.useState)(!1),[F,I]=(0,g.useState)(``),L=(0,g.useRef)(null),R=(0,g.useRef)(!0),z=(w.data?.messages??[]).filter(e=>e.box===`debug`).reverse(),B=w.data?.messages.find(e=>e.id===(D===`debug`?k:D)),V=z.filter(e=>!e.readAt).map(e=>e.id).join(`,`);(0,g.useEffect)(()=>{D===`debug`&&V&&Promise.all(V.split(`,`).map(e=>x(`agents/outbox/${e}/read`,f,{method:`POST`}))).then(()=>{window.dispatchEvent(new Event(`teammy:outbox`)),w.reload()}).catch(e=>I(s(e)))},[D,V,x,w.reload]),(0,g.useEffect)(()=>{let e=new EventSource(`/api/v1/projects/${encodeURIComponent(l)}/agents/chat/events`);e.addEventListener(`snapshot`,e=>{try{E(p.parse(JSON.parse(e.data))),I(``)}catch(e){I(s(e))}}),e.addEventListener(`run`,e=>{let t=d.parse(JSON.parse(e.data));E(e=>e&&{...e,runs:e.runs.some(e=>e.id===t.id)?e.runs:[...e.runs,t]})});for(let t of[`delta`,`reset`,`state`])e.addEventListener(t,e=>{let n=JSON.parse(e.data);E(e=>e&&{...e,runs:e.runs.map(e=>e.id===n.id?{...e,answer:t===`delta`?e.answer+(n.text??``):t===`reset`?``:n.answer??e.answer,state:n.state??e.state,error:n.error===void 0?e.error:n.error}:e)})});return()=>e.close()},[l]),(0,g.useEffect)(()=>{R.current&&L.current?.scrollIntoView({block:`end`})},[D,T?.runs,B?.recipients,z.length]);function H(){window.dispatchEvent(new Event(`teammy:outbox`)),w.reload()}async function U(e){if(R.current=!0,O(e),M(``),I(``),A(void 0),e!==`constant`&&e!==`debug`)try{await x(`agents/outbox/${e}/read`,f,{method:`POST`}),H()}catch(e){I(s(e))}}async function W(n){n.preventDefault();let r=j.trim();if(r&&!N){P(!0),I(``);try{if(D===`constant`){let e=await x(`agents/chat`,d,{method:`POST`,body:{text:r}});E(t=>t&&{...t,runs:t.runs.some(t=>t.id===e.id)?t.runs:[...t.runs,e]})}else await x(`agents/outbox/${B.id}/reply`,t({taskId:e()}),{method:`POST`,body:{body:r}}),H(),A(void 0);M(``)}catch(e){I(s(e))}finally{P(!1)}}}let G=D===`constant`||!!B&&!B.archivedAt&&!B.recipients.find(e=>e.userId===r)?.reply;return(0,_.jsxs)(`div`,{className:`split-layout assistant-layout`,"data-testid":`assistant-page`,children:[(0,_.jsxs)(`aside`,{className:`assistant-list`,"aria-label":`消息列表`,children:[(0,_.jsx)(`header`,{className:`assistant-list-heading`,children:(0,_.jsx)(`h1`,{children:`消息`})}),(0,_.jsxs)(`div`,{className:`assistant-message-scroll`,children:[!!z.length&&(0,_.jsxs)(`button`,{type:`button`,"data-testid":`debug-outbox`,className:`assistant-message-item ${D===`debug`?`selected`:``}`,onClick:()=>void U(`debug`),children:[(0,_.jsx)(`span`,{className:`assistant-message-dot ${V?`unread`:``}`}),(0,_.jsxs)(`span`,{className:`assistant-message-copy`,children:[(0,_.jsx)(`strong`,{children:`运行提醒`}),(0,_.jsx)(`span`,{children:y(z.at(-1).body)})]})]}),w.data?.messages.filter(e=>e.box!==`debug`).sort((e,t)=>Number(!!e.archivedAt)-Number(!!t.archivedAt)).map(e=>(0,_.jsxs)(`button`,{type:`button`,"data-testid":`outbox-${e.id}`,className:`assistant-message-item ${e.archivedAt?`archived`:``} ${D===e.id?`selected`:``}`,onClick:()=>void U(e.id),children:[(0,_.jsx)(`span`,{className:`assistant-message-dot ${e.readAt?``:`unread`}`}),(0,_.jsxs)(`span`,{className:`assistant-message-copy`,children:[(0,_.jsx)(`strong`,{children:y(e.body)}),(0,_.jsxs)(`time`,{dateTime:e.createdAt,children:[new Date(e.createdAt).toLocaleDateString([],{month:`numeric`,day:`numeric`}),` `,v(e.createdAt)]})]})]},e.id))]}),(0,_.jsx)(i,{error:!0,children:w.error}),(0,_.jsx)(`footer`,{className:`assistant-entry-footer`,children:(0,_.jsxs)(m,{className:`assistant-launcher`,"aria-pressed":D===`constant`,onClick:()=>void U(`constant`),"data-testid":`assistant-launcher`,children:[(0,_.jsx)(n,{}),(0,_.jsx)(`strong`,{className:`assistant-launcher-copy`,children:`与提百事聊聊`})]})})]}),(0,_.jsxs)(`section`,{className:`assistant-thread`,"aria-label":D===`constant`?`提百事对话`:`消息内容`,children:[(0,_.jsx)(`header`,{className:`assistant-thread-heading`,children:(0,_.jsx)(`h2`,{children:D===`constant`?`提百事`:D===`debug`?`运行提醒`:`项目消息`})}),(0,_.jsxs)(`div`,{className:`assistant-transcript`,role:`log`,"aria-live":`polite`,"data-testid":`assistant-transcript`,onScroll:e=>{let t=e.currentTarget;R.current=t.scrollHeight-t.scrollTop-t.clientHeight<100},children:[D===`constant`?T?.runs.length?T.runs.map(e=>(0,_.jsxs)(`div`,{className:`assistant-turn`,children:[(0,_.jsx)(b,{mine:!0,author:r,time:e.createdAt,children:(0,_.jsx)(`div`,{className:`markdown`,children:(0,_.jsx)(h,{children:e.text})})}),(0,_.jsxs)(b,{author:`提百事`,time:e.createdAt,children:[e.answer&&(0,_.jsx)(`div`,{className:`markdown`,children:(0,_.jsx)(h,{children:e.answer})}),[`queued`,`running`].includes(e.state)&&(0,_.jsxs)(`span`,{className:`assistant-typing`,"aria-label":`正在回答`,children:[(0,_.jsx)(`i`,{}),(0,_.jsx)(`i`,{}),(0,_.jsx)(`i`,{})]}),e.state===`failed`&&(0,_.jsx)(i,{error:!0,children:e.error||`本次回答未完成。`})]})]},e.id)):(0,_.jsxs)(`div`,{className:`assistant-empty`,children:[(0,_.jsx)(n,{}),(0,_.jsx)(`p`,{children:`有什么项目问题想聊聊?`})]}):D===`debug`?z.map(e=>(0,_.jsx)(S,{item:e,me:r,onReply:!e.archivedAt&&!e.recipients.find(e=>e.userId===r)?.reply?()=>{A(e.id),M(``),I(``)}:void 0},e.id)):B&&(0,_.jsx)(S,{item:B,me:r}),(0,_.jsx)(`div`,{ref:L})]}),(0,_.jsx)(i,{error:!0,children:F}),G&&D!==`constant`&&(0,_.jsx)(`p`,{className:`assistant-reply-hint`,id:`assistant-reply-hint`,children:D===`debug`?`回复运行提醒:${y(B.body).split(`诊断码`)[0]}。发送后将作为新的后台输入。`:`回应「提百事」的问题。注意:只能发送一条消息,发送后「提百事」会恢复工作。`}),G?(0,_.jsxs)(`form`,{className:`assistant-composer`,onSubmit:e=>void W(e),children:[(0,_.jsx)(`textarea`,{value:j,onChange:e=>M(e.target.value),"aria-label":D===`constant`?`向提百事提问`:`回复消息`,"aria-describedby":D===`constant`?void 0:`assistant-reply-hint`,placeholder:D===`constant`?`问问提百事…`:`回复…`,rows:2,onKeyDown:e=>{e.key===`Enter`&&!e.shiftKey&&!e.nativeEvent.isComposing&&(e.preventDefault(),e.currentTarget.form?.requestSubmit())}}),(0,_.jsx)(`button`,{className:`primary assistant-send`,type:`submit`,disabled:N||!j.trim(),"aria-label":`发送`,children:(0,_.jsx)(o,{name:`send`})})]}):D!==`debug`&&B&&(0,_.jsxs)(`div`,{className:`assistant-archived`,children:[(0,_.jsx)(o,{name:`archive`}),`已归档`]})]})]})}function S({item:e,me:t,onReply:n}){return(0,_.jsxs)(`div`,{"data-testid":`outbox-thread-${e.id}`,children:[(0,_.jsxs)(b,{author:e.box===`debug`?`运行提醒`:`提百事`,time:e.createdAt,children:[(0,_.jsx)(`div`,{className:`markdown`,children:(0,_.jsx)(h,{children:e.body})}),n&&(0,_.jsx)(`button`,{type:`button`,className:`assistant-debug-reply`,onClick:n,children:`回复`})]}),[...e.recipients].filter(e=>e.reply).sort((e,t)=>e.reply.createdAt.localeCompare(t.reply.createdAt)).map(e=>(0,_.jsx)(b,{mine:e.userId===t,author:e.userId,time:e.reply.createdAt,children:(0,_.jsx)(`div`,{className:`markdown`,children:(0,_.jsx)(h,{children:e.reply.body})})},e.userId))]})}export{x as Assistant};
@@ -1 +0,0 @@
1
- .task-board{min-width:0}.task-board .page-header{margin-bottom:40px}.task-board-lanes{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));align-items:start;gap:24px;margin-bottom:32px;display:grid}.task-lane{min-width:0}.task-lane h2{font-size:var(--text-base);border-bottom:1px solid var(--color-line);align-items:center;gap:10px;padding:0 0 16px;font-weight:600;display:flex}.task-lane .count{margin-left:auto}.task-lane-content{flex-direction:column;gap:12px;padding-top:16px;display:flex}.lane-dot{border:1.5px solid var(--color-muted);border-radius:50%;width:8px;height:8px}.task-lane[data-stage=in_progress] .lane-dot{border-color:var(--brand-orange);background:var(--brand-orange)}.task-lane[data-stage=in_review] .lane-dot{border-color:var(--brand-black);background:var(--brand-black)}.task-lane[data-stage=completed] .lane-dot{border-color:var(--color-muted);background:var(--color-muted)}.task-lane-empty{font-size:var(--text-xs);color:var(--color-muted);padding:44px 0}.task-card{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);overflow-wrap:anywhere;min-width:0;position:relative}.task-card>.task-card-heading{border-radius:inherit;padding:16px;list-style:none;position:relative}.task-card-heading::-webkit-details-marker{display:none}.task-card-heading:hover{background:var(--color-soft)}.task-card[open]>.task-card-heading{padding-right:48px}.task-card-heading>small{margin-top:8px;display:block}.task-card-heading h3{font-size:var(--text-base);font-weight:650;line-height:1.55}.task-card-edit{opacity:0;pointer-events:none;position:absolute;top:10px;right:8px}.task-card[open]:hover>.task-card-edit{opacity:1;pointer-events:auto}.task-card[open]:has(:focus-visible)>.task-card-edit{opacity:1;pointer-events:auto}.task-progress{font-size:var(--text-sm);white-space:pre-wrap;line-height:1.85}.task-card small{color:var(--color-muted);font-size:var(--text-xs)}.task-card-details{padding:0 16px 16px}.task-card-details h4{font-size:var(--text-xs);margin:16px 0 4px;font-weight:600}.task-card-details p{font-size:var(--text-sm);margin:0}.task-card-sources{flex-direction:column;align-items:flex-start;gap:8px;margin:16px 0;display:flex}.task-card-sources a{text-align:left;overflow-wrap:anywhere;max-width:100%;font-size:var(--text-xs);min-height:28px;color:var(--color-muted);justify-content:flex-start;gap:8px;padding:4px 0;text-decoration:none;display:inline-flex}.task-card-sources a:hover{color:var(--color-link);text-decoration:underline}.task-mention{border-radius:var(--radius-sm);background:var(--color-accent-soft);color:inherit;padding:0 2px}
@@ -1 +0,0 @@
1
- import{b as e,d as t,h as n,it as r,l as i,m as a,p as o,r as s,s as c,u as l,v as u,w as d,x as f,y as p}from"./project-context-DaIDEKgk.js";import{n as m,t as h}from"./index-CM5Lhy8F.js";import{t as g}from"./project-links-XbF78Bal.js";import"./file-links-CxMgXvq5.js";var _=r(),v=p(),y=[{status:`planned`,label:`计划`},{status:`in_progress`,label:`进行中`},{status:`in_review`,label:`待验收`},{status:`completed`,label:`已完成`},{status:null,label:`未明确`}];function b({members:e}){let{request:t}=s(),r=(0,_.useCallback)(e=>t(`tasks`,h,{signal:e}),[t]),i=f(r,3e3),[o,l]=(0,_.useState)(),u=i.data,d=u?.members.some(e=>[`queued`,`running`].includes(e.status)),p=new Map(e.map(e=>[e.id,e.displayName||e.id]));return(0,v.jsxs)(`div`,{className:`task-board`,children:[(0,v.jsx)(n,{title:`工作看板`}),(0,v.jsx)(`span`,{className:`sr-only`,role:`status`,children:d?`正在整理工作区`:i.loading&&!u?`正在读取任务`:``}),(0,v.jsx)(a,{error:!0,children:i.error}),(0,v.jsx)(`section`,{className:`task-board-lanes`,"aria-label":`任务进度`,"data-testid":`progress-board`,children:y.filter(e=>e.status!==null||u?.tasks.some(e=>e.status===null)).map(e=>{let t=u?.tasks.filter(t=>t.status===e.status)??[];return(0,v.jsxs)(`section`,{className:`task-lane`,"aria-label":e.label,"data-stage":e.status??`unknown`,children:[(0,v.jsxs)(`h2`,{children:[(0,v.jsx)(`span`,{className:`lane-dot`}),e.label,(0,v.jsx)(c,{children:u?t.length:`—`})]}),(0,v.jsx)(`div`,{className:`task-lane-content`,children:t.length?t.map(e=>(0,v.jsx)(x,{task:e,names:p,onEdit:()=>l(e)},e.id)):(0,v.jsx)(`p`,{className:`task-lane-empty`,children:i.error&&!u?`读取失败`:u?`暂无任务`:`读取中…`})})]},e.label)})}),o&&(0,v.jsx)(C,{task:o,onClose:()=>l(void 0),onSaved:()=>{l(void 0),i.reload()}},o.id)]})}function x({task:e,names:n,onEdit:r}){let{projectId:i}=s();return(0,v.jsxs)(`details`,{className:`task-card`,"data-testid":`task-card`,"data-task-id":e.id,"data-owner":e.owner,"data-status":e.status??`unknown`,children:[(0,v.jsxs)(`summary`,{className:`task-card-heading`,"data-testid":`task-toggle`,children:[(0,v.jsx)(`h3`,{children:e.title}),(0,v.jsx)(`small`,{children:n.get(e.owner)??e.owner})]}),(0,v.jsx)(t,{icon:`edit`,className:`task-card-edit`,label:`纠正任务:${e.title}`,"data-testid":`task-correct`,onClick:r}),(0,v.jsxs)(`div`,{className:`task-card-details`,children:[(e.corrected||e.needsConfirmation)&&(0,v.jsx)(`small`,{children:[e.corrected&&`已纠正`,e.needsConfirmation&&`待确认`].filter(Boolean).join(` · `)}),e.needsReview&&(0,v.jsx)(`p`,{children:`本次整理未能明确对应,请核对来源。`}),(0,v.jsx)(`h4`,{children:`目标`}),(0,v.jsx)(`p`,{children:e.goal?(0,v.jsx)(S,{value:e.goal,names:n}):`目标未明确`}),(0,v.jsx)(`h4`,{children:`当前进展`}),(0,v.jsx)(`p`,{className:`task-progress`,children:(0,v.jsx)(S,{value:e.progress,names:n})}),(0,v.jsx)(`div`,{className:`task-card-sources`,children:e.sources.map(t=>(0,v.jsxs)(`a`,{"data-testid":`task-source`,href:g(i,e.owner,t.path),children:[(0,v.jsx)(l,{name:`file`,size:`small`}),(0,v.jsx)(`span`,{children:t.path})]},t.path))}),e.syncedAt&&(0,v.jsxs)(`small`,{children:[`资料同步于 `,(0,v.jsx)(u,{value:e.syncedAt})]})]})]})}function S({value:e,names:t}){return e.split(/(@[a-z][a-z0-9_-]*)/gi).map((e,n)=>e.startsWith(`@`)&&t.has(e.slice(1))?(0,v.jsx)(`mark`,{className:`task-mention`,children:e},n):e)}function C({task:t,onClose:n,onSaved:r}){let{request:c}=s(),l=e(),[u,f]=(0,_.useState)(t.title),[p,h]=(0,_.useState)(t.status??``),[g,b]=(0,_.useState)(t.goal??``),[x,S]=(0,_.useState)(t.progress),[C,w]=(0,_.useState)(t.needsConfirmation),[T,E]=(0,_.useState)(!1),[D,O]=(0,_.useState)(``),k={...u===t.title?{}:{title:u},...p===(t.status??``)?{}:{status:p||null},...g===(t.goal??``)?{}:{goal:g||null},...x===t.progress?{}:{progress:x},...C===t.needsConfirmation?{}:{needsConfirmation:C}};async function A(e=!1){if(!(T||!e&&!Object.keys(k).length)){E(!0),O(``);try{await c(`tasks/${t.id}/correction`,m,{method:e?`DELETE`:`PATCH`,signal:l,...e?{}:{body:k}}),l.aborted||r()}catch(e){l.aborted||O(d(e))}finally{E(!1)}}}return(0,v.jsx)(o,{id:`task-correction`,title:`纠正任务`,onClose:n,children:(0,v.jsxs)(`form`,{className:`stack`,"aria-busy":T,onSubmit:e=>{e.preventDefault(),A()},children:[(0,v.jsx)(i,{id:`task-title`,label:`标题`,children:(0,v.jsx)(`input`,{value:u,required:!0,onChange:e=>f(e.target.value)})}),(0,v.jsx)(i,{id:`task-status`,label:`状态`,children:(0,v.jsx)(`select`,{value:p,onChange:e=>h(e.target.value),children:y.map(e=>(0,v.jsx)(`option`,{value:e.status??``,children:e.label},e.label))})}),(0,v.jsx)(i,{id:`task-goal`,label:`目标`,children:(0,v.jsx)(`textarea`,{value:g,onChange:e=>b(e.target.value)})}),(0,v.jsx)(i,{id:`task-progress`,label:`当前进展`,children:(0,v.jsx)(`textarea`,{value:x,onChange:e=>S(e.target.value)})}),(0,v.jsxs)(`label`,{className:`check-field`,children:[(0,v.jsx)(`input`,{type:`checkbox`,checked:C,onChange:e=>w(e.target.checked)}),`需要确认`]}),(0,v.jsx)(`small`,{children:`仅调整看板,不修改原始文件。`}),(0,v.jsx)(a,{error:!0,children:D}),(0,v.jsxs)(`div`,{className:`row wrap`,children:[(0,v.jsx)(`button`,{type:`submit`,disabled:T||!Object.keys(k).length,"data-testid":`task-correction-save`,children:`保存`}),t.corrected&&(0,v.jsx)(`button`,{type:`button`,disabled:T,"data-testid":`task-correction-reset`,onClick:()=>void A(!0),children:`恢复自动结果`})]})]})})}function w({members:e}){return(0,v.jsx)(b,{members:e})}export{w as Dashboard};
@@ -1 +0,0 @@
1
- import{G as e,S as t,_ as n,c as r,d as i,it as a,k as o,m as s,r as c,u as l,x as u,y as d}from"./project-context-DaIDEKgk.js";import{c as f,l as p,s as m}from"./index-CM5Lhy8F.js";import{t as h}from"./Markdown-B4-VDnLX.js";import{t as g}from"./project-links-XbF78Bal.js";import{t as _}from"./file-links-CxMgXvq5.js";import{n as v,t as y}from"./WorkspaceTree-CAmKdjSN.js";var b=a(),x=d();function S(e,t){let n=t.split(`/`).slice(0,-1);return n.map((t,r)=>v(e,n.slice(0,r+1).join(`/`))).concat(v(e,``))}function C({members:n,me:a,onRefresh:l}){let{api:d,projectId:h}=c(),[C,T]=(0,b.useState)(()=>{let t=new URLSearchParams(location.search),r=t.get(`owner`),i=e.safeParse(t.get(`path`));return r&&(r===`_project`||n.some(e=>e.id===r))&&i.success&&!f(i.data)?{owner:r,path:i.data}:void 0}),[E,D]=(0,b.useState)(()=>new Set(C?S(C.owner,C.path):[v(a,``)])),[O,k]=(0,b.useState)(()=>C?{...C,kind:`file`}:void 0),[A,j]=(0,b.useState)(0),[M,N]=(0,b.useState)(()=>{let e=new URLSearchParams(location.search);return!C&&(e.has(`owner`)||e.has(`path`))?`文件链接不完整或目标已不可用。`:``}),P=(0,b.useCallback)(async e=>{if(C)try{return{owner:C.owner,...await d.file(C.owner,C.path,void 0,e)}}catch(e){throw e instanceof t&&e.code===`FILE_NOT_FOUND`?Error(`找不到这个文件,可能已被删除或移动。`):e}},[C?.owner,C?.path,A]),F=u(P),I=F.data?.owner===C?.owner&&F.data?.file.path===C?.path?F.data:void 0;function L(e,t){let n=t.split(`/`).filter(Boolean);D(t=>{let r=new Set(t);for(let t=0;t<=n.length;t++)r.add(v(e,n.slice(0,t).join(`/`)));return r})}function R(e,t){N(``),L(e,t.split(`/`).slice(0,-1).join(`/`)),T({owner:e,path:t}),k({owner:e,path:t,kind:`file`}),history.replaceState(null,``,g(h,e,t))}function z(e){if(!C)return!1;let t=_(C.owner===`_project`?C.path:`${C.owner}/${C.path}`,e);if(!t)return!/^[a-z][a-z0-9+.-]*:/i.test(e)&&!e.startsWith(`//`)&&(N(`该链接超出工作区,请在原仓库查看。`),!0);if(f(t.path))return N(`配置文件不在文件浏览中显示。`),!0;let[r,...i]=t.path.split(`/`),a=n.some(e=>e.id===r),o=a?r:m,s=a?i.join(`/`):t.path;return N(``),t.directory?(L(o,s),k({owner:o,path:s,kind:`directory`})):o===C.owner&&s===C.path?t.anchor&&[...document.querySelectorAll(`.markdown h1,.markdown h2,.markdown h3,.markdown h4`)].find(e=>e.textContent?.trim().toLowerCase().replace(/\s+/g,`-`)===t.anchor.toLowerCase())?.scrollIntoView({block:`center`}):R(o,s),!0}return(0,x.jsxs)(`div`,{className:`split-layout file-explorer`,"data-testid":`file-browser`,children:[(0,x.jsxs)(`aside`,{className:`file-tree-pane`,"aria-label":`文件资源管理器`,children:[(0,x.jsx)(p,{title:`文件`,icon:`files`,children:(0,x.jsx)(i,{icon:`refresh`,label:`刷新文件`,"data-testid":`files-refresh`,onClick:()=>{N(``),j(e=>e+1),l()}})}),(0,x.jsx)(y,{members:n,expanded:E,selected:O,revealed:!F.loading&&!F.error&&I?{owner:I.owner,path:I.file.path,file:I.file}:void 0,onSelect:R,onToggle:(e,t)=>{k({owner:e,path:t,kind:`directory`}),D(n=>{let r=new Set(n),i=v(e,t);return r.has(i)?r.delete(i):r.add(i),r})}},A)]}),(0,x.jsx)(`section`,{className:`file-detail`,"data-testid":`file-preview`,"data-owner-id":C?.owner,"data-file-path":C?.path,"aria-label":o.filePreview,children:C?(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(s,{error:!0,children:M||!F.loading&&F.error}),F.error&&(0,x.jsx)(`button`,{className:`file-entry-retry`,"data-testid":`files-retry`,onClick:()=>void F.reload(),children:o.retry}),F.loading?(0,x.jsx)(`p`,{className:`preview-body`,role:`status`,children:o.loading}):!F.error&&I&&(0,x.jsx)(w,{owner:I.owner,file:I.file,onLink:z},`${I.owner}:${I.file.path}:${I.file.sha256}`)]}):M?(0,x.jsx)(s,{error:!0,children:M}):(0,x.jsx)(r,{mascot:!0,title:`从一份资料开始`,description:o.pickFile})})]})}function w({owner:e,file:t,onLink:r}){let{readTextBlob:a,blobUrl:d}=c(),[f,p]=(0,b.useState)(!1),m=t.size>524288,g=/\.(md|markdown)$/i.test(t.path),_=(0,b.useCallback)(e=>m?Promise.resolve(void 0):a(t,e),[t.sha256,t.size,m]),v=u(_);return(0,x.jsxs)(x.Fragment,{children:[(0,x.jsxs)(`header`,{className:`file-detail-header`,children:[(0,x.jsxs)(`span`,{className:`file-detail-path`,title:`${e===`_project`?`workspaces`:e}/${t.path}`,children:[(0,x.jsxs)(`span`,{children:[e===`_project`?`workspaces`:e,` / `]}),t.path]}),(0,x.jsxs)(n,{label:`文件操作`,children:[g&&(0,x.jsx)(i,{icon:f?`preview`:`code`,label:f?`切换为预览`:`切换为原文`,"data-testid":`file-toggle-raw`,"aria-pressed":f,onClick:()=>p(!f)}),(0,x.jsx)(`a`,{className:`icon-button`,"data-testid":`file-download`,"aria-label":o.download,title:o.download,href:d(t.sha256),download:t.path.split(`/`).at(-1),children:(0,x.jsx)(l,{name:`download`})})]})]}),m?(0,x.jsx)(`div`,{className:`empty`,children:(0,x.jsx)(`p`,{children:o.previewLarge})}):v.error?(0,x.jsxs)(`div`,{className:`preview-body`,children:[(0,x.jsx)(s,{error:!0,children:v.error}),(0,x.jsx)(`button`,{"data-testid":`file-preview-retry`,onClick:()=>void v.reload(),children:o.retry})]}):v.loading?(0,x.jsx)(`p`,{className:`preview-body`,role:`status`,children:o.loading}):(0,x.jsx)(`div`,{className:`preview-body`,children:g&&!f?(0,x.jsx)(`article`,{className:`markdown`,"data-testid":`file-content`,"data-format":`markdown`,children:(0,x.jsx)(h,{onLink:r,children:v.data??``})}):(0,x.jsx)(`pre`,{className:`raw`,"data-testid":`file-content`,"data-format":`text`,children:v.data})})]})}export{C as Files};