@p4code/cli 0.7.1 → 0.7.3

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 (29) hide show
  1. package/dist/bin.mjs +40738 -52057
  2. package/dist/client/assets/DiffPanel-1TZXju6q.js +98 -0
  3. package/dist/client/assets/FilePreviewPanel-DGKHFQQ_.js +2230 -0
  4. package/dist/client/assets/P4DesignScreen-DIBwDYjN.js +19 -0
  5. package/dist/client/assets/P4DesignScreen-D_8l8WCl.css +1 -0
  6. package/dist/client/assets/PreviewPanel-B5bhhzbx.js +2 -0
  7. package/dist/client/assets/PullRequestCodeTab-ENp-K16o.js +251 -0
  8. package/dist/client/assets/entities-fvtdKO2-.js +2 -0
  9. package/dist/client/assets/env-jW24S9HL.js +2 -0
  10. package/dist/client/assets/fileCommentAnnotations-BPIepn3Q.js +2 -0
  11. package/dist/client/assets/{index-I-nORz_l.js → index-B4Nxc2w0.js} +257 -245
  12. package/dist/client/assets/{index-DRONsSry.css → index-XfE7ve8U.css} +1 -1
  13. package/dist/client/assets/previewAssetResource-J1WeeXS-.js +4 -0
  14. package/dist/client/assets/renderFileChildren-B7uYxWA9.js +2 -0
  15. package/dist/client/assets/textarea-CVN2-Kkx.js +47 -0
  16. package/dist/client/assets/toggle-group-Bs73JkcK.js +2 -0
  17. package/dist/client/index.html +6 -3
  18. package/dist/renderer-Dd2mDvu6.mjs +426 -0
  19. package/dist/runtime-Bv8fNDZe.mjs +984 -0
  20. package/dist/src-BLvXVs9y.mjs +17005 -0
  21. package/package.json +6 -1
  22. package/dist/client/assets/DiffPanel-CRdb9_i3.js +0 -98
  23. package/dist/client/assets/FilePreviewPanel-BQsOXww5.js +0 -2230
  24. package/dist/client/assets/PreviewPanel-D5oUQ2mL.js +0 -2
  25. package/dist/client/assets/PullRequestCodeTab-Cl61iwpH.js +0 -251
  26. package/dist/client/assets/fileCommentAnnotations-DLN1BKH9.js +0 -2
  27. package/dist/client/assets/previewAssetResource-6mhfd1nG.js +0 -48
  28. package/dist/client/assets/renderFileChildren-BdcEfybl.js +0 -2
  29. package/dist/client/assets/toggle-group-ffZyRu1q.js +0 -2
@@ -0,0 +1 @@
1
+ @property --design-selection{syntax:"<color>";inherits:true;initial-value:#2563eb}@property --design-change-stroke{syntax:"<color>";inherits:true;initial-value:#b45309}.design-workspace{--design-bg:var(--muted);--design-topbar-bg:var(--background);--design-agent-bg:var(--background);--design-surface:var(--card);--design-surface-sunken:var(--background);--design-catalog-bg:var(--sidebar);--design-row-hover:var(--sidebar-row-hover);--design-row-selected:var(--sidebar-row-selected);--design-panel-border:var(--sidebar-border);--design-field-border:var(--input);--design-fg:var(--foreground);--design-fg-muted:var(--muted-foreground);--design-selection:#2563eb;--design-selection-fg:#fff;--design-change-stroke:#b45309;--design-accent:var(--design-selection);--design-focus-color:var(--ring);--design-focus-ring:0 0 0 1px var(--background), 0 0 0 3px var(--design-focus-color);--design-radius:var(--radius-lg);--design-radius-control:var(--radius-md);--design-radius-small:var(--radius-sm);--design-float-shadow:0 1px 2px color-mix(in srgb, var(--foreground) 6%, transparent), 0 4px 14px color-mix(in srgb, var(--foreground) 7%, transparent);--design-island-bg:var(--card);--design-island-border:var(--design-panel-border);--design-island-radius:var(--design-radius);--design-island-shadow:var(--design-float-shadow);--design-island-backdrop:none;--design-canvas-ground:var(--design-bg);--design-canvas-ground-image:none;--design-canvas-ground-size:auto;--design-canvas-ground-position:0 0;--design-grid-line:color-mix(in srgb, var(--design-fg) 12%, transparent);--design-grid-line-minor:color-mix(in srgb, var(--design-fg) 5%, transparent);--design-grid-size:40px;--design-grid-minor-size:8px;--design-field-color:var(--design-accent);--design-ground-grid:linear-gradient(var(--design-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--design-grid-line) 1px, transparent 1px);--design-ground-grid-size:var(--design-grid-size) var(--design-grid-size);--design-ground-blueprint:var(--design-ground-grid), linear-gradient(var(--design-grid-line-minor) 1px, transparent 1px), linear-gradient(90deg, var(--design-grid-line-minor) 1px, transparent 1px);--design-ground-blueprint-size:var(--design-ground-grid-size), var(--design-ground-grid-size), var(--design-grid-minor-size) var(--design-grid-minor-size), var(--design-grid-minor-size) var(--design-grid-minor-size);--design-ground-dots:radial-gradient(var(--design-grid-line) 1px, transparent 1px);--design-ground-dots-size:22px 22px;--design-ground-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .11 0 0 0 0 .09 0 0 0 0 .07 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--design-ground-grain-size:220px 220px;--design-ground-field:radial-gradient(50% 45% at 58% 42%, color-mix(in srgb, var(--design-field-color) 30%, transparent), transparent 100%);--design-ground-field-size:100% 100%;--design-agent-edit-color:var(--design-change-stroke);--design-agent-edit-outline:1.5px solid var(--design-agent-edit-color);--design-agent-edit-offset:3px;--design-agent-edit-radius:var(--design-radius-small);--design-agent-edit-glow:none;--design-agent-edit-callout-gap:12px;--design-agent-edit-reach:0px;--design-paint-color:var(--design-accent);--design-paint-tint:color-mix(in srgb, var(--design-paint-color) 9%, transparent);--design-paint-hatch:color-mix(in srgb, var(--design-paint-color) 24%, transparent);--design-paint-field:repeating-linear-gradient(-45deg, var(--design-paint-hatch) 0 1px, transparent 1px 9px), var(--design-paint-tint);--design-paint-field-edge:1px dashed var(--design-paint-color);--design-paint-field-warn:repeating-linear-gradient(-45deg, color-mix(in srgb, var(--design-paint-warn) 34%, transparent) 0 1px, transparent 1px 9px), color-mix(in srgb, var(--design-paint-warn) 9%, transparent);--design-paint-field-warn-edge:1px dashed var(--design-paint-warn);--design-paint-outline:1.5px solid var(--design-paint-color);--design-paint-flash-tint:color-mix(in srgb, var(--design-paint-color) 16%, transparent);--design-paint-radius:var(--design-radius-small);--design-paint-pill-bg:var(--design-paint-color);--design-paint-pill-fg:var(--design-selection-fg);--design-paint-pill-border:transparent;--design-paint-pill-radius:var(--design-radius-small);--design-paint-pill-shadow:var(--design-float-shadow);--design-paint-cursor-fill:var(--design-paint-pill-bg);--design-paint-cursor-stroke:var(--design-paint-pill-fg);--design-paint-cursor-glow:none;--design-paint-warn:var(--warning,#b45309);--design-paint-warn-bg:var(--design-paint-warn);--design-paint-warn-fg:var(--background,#fff);--design-paint-warn-border:transparent;--design-paint-warn-cursor-stroke:var(--design-paint-warn-bg);--design-ease-out:cubic-bezier(.23, 1, .32, 1);min-width:0;height:100%;min-height:0;color:var(--design-fg);background:var(--design-bg);font-family:var(--design-font-ui);flex-direction:column;font-size:13px;display:flex;position:relative;overflow:hidden;container-type:inline-size}.design-workspace :is(.design-title,.design-agent-header h2,.design-revision-heading h2,.design-selection-card-header h2,.design-inspector-title,.design-frame-label){font-family:var(--design-font-display);font-weight:var(--design-display-weight,600);letter-spacing:var(--design-display-tracking);text-transform:var(--design-display-case)}.design-truncate{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.design-mono{font-family:var(--design-font-mono,var(--font-mono,ui-monospace, monospace));font-variant-numeric:tabular-nums}.design-small-muted{color:var(--design-fg-muted,var(--muted-foreground));font-size:12px}.design-title,.design-document-switcher{min-width:0;max-width:100%;font-size:14px;font-weight:600}.design-title{margin:0;display:flex}.design-document-switcher{width:auto;color:var(--design-fg)}.design-topbar{min-height:var(--workspace-topbar-height,52px);border-bottom:1px solid var(--design-panel-border);background:var(--design-topbar-bg);flex:none;align-items:center;gap:8px;padding:3px 8px 3px 10px;display:flex}[data-sidebar-state=collapsed] .design-topbar{padding-inline-start:var(--workspace-titlebar-content-left)}.design-topbar-title{flex:0 auto;align-items:center;gap:8px;min-width:0;display:flex}.design-topbar-title>.design-small-muted{flex:none}.design-topbar-notices{flex:auto;justify-content:center;min-width:0;display:flex}.design-topbar-actions{flex:none;align-items:center;gap:4px;margin-inline-start:auto;display:flex}.design-topbar-select{width:auto;min-width:0;max-width:220px;color:var(--design-fg)}.design-notices{flex-direction:column;align-items:center;gap:4px;min-width:0;max-width:100%;display:flex}.design-notice-alert{border-radius:var(--design-radius-control);max-width:100%;transition:opacity .15s var(--design-ease-out);padding:2px 3px 2px 10px}@starting-style{.design-notice-alert{opacity:0}}.design-workspace-pane .design-notices{flex:none;align-items:stretch;padding:0 0 6px}.design-diagnostics-list{overflow-wrap:anywhere;gap:6px;margin:0;padding:0;font-size:12px;list-style:none;display:grid}.design-body{flex:1;min-width:0;min-height:0;display:flex;position:relative}.design-agent{width:340px;min-height:0;margin:var(--design-agent-inset,0);border:var(--design-agent-border,0 solid transparent);border-inline-end:var(--design-agent-border,1px solid var(--design-panel-border));border-radius:var(--design-agent-radius,0);background:var(--design-agent-bg);box-shadow:var(--design-agent-shadow,none);-webkit-backdrop-filter:var(--design-agent-backdrop,none);backdrop-filter:var(--design-agent-backdrop,none);transition:opacity .15s var(--design-ease-out);flex-direction:column;flex:none;display:flex;overflow:hidden}@starting-style{.design-agent{opacity:0}}.design-agent-header{border-bottom:1px solid var(--design-panel-border);flex:none;align-items:center;gap:8px;min-height:40px;padding:4px 6px 4px 14px;display:flex}.design-agent-header h2{white-space:nowrap;margin:0;font-size:14px;font-weight:600}.design-agent-header .design-small-muted{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.design-agent-header-spacer{flex:1}.design-agent-card{border-bottom:1px solid var(--design-panel-border);flex:none;max-height:50%;padding:10px 12px;overflow:auto}.design-agent-thread{flex:1;min-width:0;min-height:0;display:flex}.design-agent-thread [data-chat-column-maximized-away]{min-width:0}.design-agent-empty{max-width:260px;color:var(--design-fg-muted);text-align:center;margin:auto;padding:24px;line-height:1.4}.design-revision-card{border:1px solid var(--design-panel-border);border-radius:var(--design-radius);background:var(--design-surface);gap:8px;padding:10px 12px;display:grid}.design-revision-heading{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.design-revision-heading h2{min-width:0;margin:0;font-size:14px;font-weight:600}.design-revision-changes{gap:4px;margin:0;padding:0;list-style:none;display:grid}.design-revision-changes li{overflow-wrap:anywhere;padding-inline-start:14px;line-height:1.4;position:relative}.design-revision-changes li:before{inset-inline-start:2px;background:var(--design-accent);content:"";border-radius:50%;width:6px;height:6px;position:absolute;top:.5lh;transform:translateY(-50%)}.design-revision-more{justify-self:start}.design-revision-note{color:var(--design-fg-muted);margin:0;font-size:12px;line-height:1.4}.design-revision-actions{flex-wrap:var(--design-revision-actions-wrap,nowrap);border-top:1px solid var(--design-panel-border);align-items:center;gap:6px;padding-top:8px;display:flex}.design-revision-spacer{flex:1}.design-revision-reason{color:var(--warning-foreground);text-align:end;justify-content:flex-end;align-items:center;gap:6px;margin:0;font-size:12px;display:flex}.design-revision-reason svg{flex:none;width:14px;height:14px}.design-revision-name{align-items:center;gap:6px;display:flex}.design-revision-error{color:var(--destructive-foreground);margin:0;font-size:12px}.design-revision-error-row{align-items:flex-start;gap:8px;display:flex}.design-revision-error-row .design-revision-error{flex:1;line-height:1.4}.design-revision-signer{color:var(--design-fg-muted);margin:0;font-size:12px}.design-restore-help{color:var(--muted-foreground);margin:0;font-size:12px;line-height:1.45}.design-follow-up{border-top:1px solid var(--design-panel-border);gap:8px;padding-top:8px;display:grid}.design-follow-up-heading{align-items:center;gap:8px;display:flex}.design-follow-up-heading h3{flex:1;margin:0;font-size:13px;font-weight:600}.design-follow-up-help{color:var(--design-fg-muted);margin:0;font-size:12px;line-height:1.4}.design-follow-up .design-revision-actions{border-top:0;padding-top:0}.design-workspace-full .design-main{background-color:var(--design-canvas-ground);background-image:var(--design-canvas-ground-image);background-size:var(--design-canvas-ground-size);background-position:var(--design-canvas-ground-position);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.design-canvas-topleft{z-index:5;pointer-events:none;align-items:flex-start;gap:6px;max-width:calc(100% - 24px);display:flex;position:absolute;inset:12px auto 12px 12px}.design-canvas-topleft>*{pointer-events:auto}.design-workspace-comparing .design-canvas-topleft{inset:auto auto 12px 12px}.design-float-pill{box-shadow:var(--design-island-shadow)}.design-pill-count{color:var(--design-fg-muted);font-variant-numeric:tabular-nums}.design-catalog-float{flex-direction:column;align-items:flex-start;gap:6px;min-height:0;max-height:100%;display:flex}.design-catalog-panel{border:1px solid var(--design-island-border);border-radius:var(--design-island-radius);background:var(--design-catalog-bg);width:280px;height:min(480px,100%);min-height:0;box-shadow:var(--design-island-shadow);-webkit-backdrop-filter:var(--design-island-backdrop);backdrop-filter:var(--design-island-backdrop);transition:opacity .15s var(--design-ease-out);flex-direction:column;display:flex;overflow:hidden}@starting-style{.design-catalog-panel{opacity:0}}.design-catalog-tabs{border-bottom:1px solid var(--design-panel-border);flex:none;align-items:center;gap:2px;padding:6px;display:flex}.design-catalog-tabs button{border-radius:var(--design-radius-control);min-width:30px;height:28px;color:var(--design-fg-muted);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 7px;display:flex}.design-catalog-tabs button:hover{color:var(--design-fg);background:var(--design-row-hover)}.design-catalog-tabs button[aria-selected=true]{color:var(--design-fg);background:var(--design-row-selected);box-shadow:inset 0 0 0 1px var(--design-panel-border);font-weight:600}.design-catalog-tabpanel{flex-direction:column;flex:1;min-height:0;display:flex}.design-catalog-search{border:1px solid var(--design-field-border);border-radius:var(--design-radius-control);height:30px;color:var(--design-fg-muted);background:var(--design-surface-sunken);flex:none;align-items:center;gap:7px;margin:8px;padding-inline:8px;display:flex}.design-catalog-search:focus-within{box-shadow:var(--design-focus-ring)}.design-catalog-search input{width:100%;min-width:0;color:var(--design-fg);background:0 0;border:0;outline:0}.design-catalog-list,.design-pane-content{overflow:auto}.design-catalog-list{flex:1;min-height:0;padding:4px 6px 6px}.design-catalog-list .design-small-muted{margin:8px}.design-catalog-row,.design-token-row{border-radius:var(--design-radius-small);text-align:left;align-items:center;gap:8px;width:100%;min-width:0;min-height:30px;padding:4px 8px;display:flex}.design-catalog-row:hover{background:var(--design-row-hover)}.design-catalog-row small{color:var(--design-fg-muted);font-variant-numeric:tabular-nums;margin-inline-start:auto}.design-token-row{justify-content:space-between}.design-row-icon{width:16px;height:16px;color:var(--design-fg-muted);flex:none;place-items:center;display:grid}.design-comments-panel{flex:1;min-height:0;overflow:auto}.design-main{background-color:var(--design-canvas-ground);background-image:var(--design-canvas-ground-image);background-size:var(--design-canvas-ground-size);background-position:var(--design-canvas-ground-position);flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.design-main-hidden{display:none}.design-canvas-wrap{flex:1;min-width:0;min-height:0;position:relative;overflow:hidden}.design-canvas-surface{cursor:grab;touch-action:none;position:absolute;inset:0;overflow:hidden}.design-canvas-surface:active{cursor:grabbing}.design-canvas-surface[aria-label*=annotation]{cursor:crosshair}.design-canvas-surface:focus-visible{box-shadow:inset 0 0 0 2px var(--design-focus-color);outline:none}.design-annotation-pins{z-index:2;pointer-events:none;position:absolute;inset:0}.design-annotation-pin{border:1.5px solid var(--card);width:20px;height:20px;color:var(--primary-foreground);background:var(--primary);font-variant-numeric:tabular-nums;pointer-events:auto;box-shadow:0 1px 3px color-mix(in srgb, var(--design-fg) 20%, transparent);border-radius:50% 50% 50% 0;place-items:center;font-size:11px;font-weight:600;display:grid;position:absolute;transform:translateY(-100%)}.design-annotation-pin-blocking{background:var(--warning);color:var(--background)}.design-annotation-pin-resolved{opacity:.55}.design-annotation-pin:focus-visible{box-shadow:var(--design-focus-ring);outline:none}.design-annotation-region{border:1px solid var(--ring);background:color-mix(in srgb, var(--ring) 14%, transparent);pointer-events:none;position:absolute}.design-annotation-region[hidden],.design-annotation-pin[hidden],.design-selection-card[hidden]{display:none}.design-canvas-tools,.design-canvas-zoom{z-index:4;border:1px solid var(--design-island-border);border-radius:var(--design-island-radius);background:var(--design-island-bg);box-shadow:var(--design-island-shadow);-webkit-backdrop-filter:var(--design-island-backdrop);backdrop-filter:var(--design-island-backdrop);align-items:center;gap:2px;padding:3px;display:flex;position:absolute}.design-workspace-full .design-main>.design-canvas-wrap>.design-canvas-tools{inset-block-start:12px;inset-inline-start:50%;transform:translate(-50%)}.design-workspace-full .design-main>.design-canvas-wrap>.design-canvas-zoom{inset-block-end:12px;inset-inline-end:12px}.design-workspace-pane .design-canvas-tools{flex-direction:column;inset-block-start:10px;inset-inline-start:10px}.design-workspace-pane .design-canvas-zoom{inset-block-end:10px;inset-inline-end:10px}.design-tool-separator{background:var(--design-panel-border);flex:none;width:1px;height:18px;margin-inline:3px}.design-workspace-pane .design-tool-separator,.design-compare .design-tool-separator{width:18px;height:1px;margin:3px 0}.design-canvas-zoom output{text-align:center;font-variant-numeric:tabular-nums;min-width:42px}.design-frame-labels{z-index:2;pointer-events:none;position:absolute;inset:0}.design-frame-mark{pointer-events:none;position:absolute}.design-frame-label{max-width:240px;color:var(--design-fg-muted);pointer-events:auto;transform:translateY(calc(-100% - var(--design-frame-label-offset,6px)));font-size:11px;font-weight:600;display:flex;position:absolute}.design-selection-badge{z-index:2;border-radius:var(--design-radius-small);color:var(--design-selection-fg);background:var(--design-selection);font-variant-numeric:tabular-nums;pointer-events:none;padding:1px 5px;font-size:11px;position:absolute;transform:translate(-50%,7px)}.design-agent-edit{z-index:2;border-radius:var(--design-agent-edit-radius);outline:var(--design-agent-edit-outline);outline-offset:var(--design-agent-edit-offset);box-shadow:var(--design-agent-edit-glow);pointer-events:none;transition:opacity .15s var(--design-ease-out);position:absolute}@starting-style{.design-agent-edit{opacity:0}}.design-agent-edit-callout{width:max-content;max-width:260px;position:absolute;inset-block-start:0;inset-inline-start:calc(100% + var(--design-agent-edit-reach) + var(--design-agent-edit-callout-gap))}.design-agent-edit[data-side=left] .design-agent-edit-callout{inset-inline:auto calc(100% + var(--design-agent-edit-reach) + var(--design-agent-edit-callout-gap))}.design-paint{z-index:2;pointer-events:none;position:absolute;inset:0;overflow:hidden}.design-paint-field{background:var(--design-paint-field);background-position:var(--paint-ox,0) var(--paint-oy,0);border:var(--design-paint-field-edge);border-radius:var(--design-paint-radius);animation:design-paint-in .16s var(--design-ease-out) both;position:absolute}.design-paint-field[data-failed]{background:var(--design-paint-field-warn);background-position:var(--paint-ox,0) var(--paint-oy,0);border:var(--design-paint-field-warn-edge)}.design-paint-wipe{animation:.4s cubic-bezier(.77,0,.175,1) both design-paint-wipe}.design-paint-label,.design-paint-pill,.design-paint-chip{border:1px solid var(--design-paint-pill-border);border-radius:var(--design-paint-pill-radius);max-width:320px;height:22px;color:var(--design-paint-pill-fg);background:var(--design-paint-pill-bg);box-shadow:var(--design-paint-pill-shadow);font-family:var(--design-font-display);font-size:12px;font-weight:var(--design-display-weight,600);letter-spacing:var(--design-display-tracking);text-transform:var(--design-display-case);white-space:nowrap;align-items:center;gap:6px;padding:0 9px;display:inline-flex}.design-paint-label b,.design-paint-pill b{font-weight:inherit}.design-paint-label svg,.design-paint-chip svg{flex:none;width:13px;height:13px}.design-paint-label{animation:design-paint-in .16s var(--design-ease-out) both;transform:translateY(calc(-100% - var(--design-frame-label-offset,6px)));position:absolute}.design-paint-label[data-inside]{margin:6px 0 0 6px;transform:none}.design-paint-flash{border:var(--design-paint-outline);border-radius:var(--design-paint-radius);background:var(--design-paint-flash-tint);animation:design-paint-flash .65s var(--design-ease-out) both;position:absolute}.design-paint-cursor{opacity:0;transition:opacity .24s var(--design-ease-out) .9s;will-change:transform;position:absolute;top:0;left:0}.design-paint-cursor[data-shown]{opacity:1;transition-duration:.14s;transition-delay:0s}.design-paint-glide{margin:-1.5px 0 0 -2px;position:relative}.design-paint-glide svg{filter:drop-shadow(0 1px 1px #00000059) drop-shadow(var(--design-paint-cursor-glow));display:block}.design-paint-arrow{fill:var(--design-paint-cursor-fill);stroke:var(--design-paint-cursor-stroke)}.design-paint-pill{width:max-content;position:absolute;top:17px;left:15px}.design-paint-pill span{border-left:1px solid color-mix(in srgb, currentColor 40%, transparent);font-family:var(--design-font-mono,var(--font-mono,ui-monospace, monospace));letter-spacing:0;text-transform:none;opacity:.85;text-overflow:ellipsis;max-width:140px;padding-left:7px;font-size:11px;font-weight:400;overflow:hidden}.design-paint-cursor[data-flip] .design-paint-pill{left:auto;right:15px}.design-paint-cursor[data-failed]{--design-paint-pill-bg:var(--design-paint-warn-bg);--design-paint-pill-fg:var(--design-paint-warn-fg);--design-paint-pill-border:var(--design-paint-warn-border);--design-paint-cursor-fill:var(--design-paint-warn);--design-paint-cursor-stroke:var(--design-paint-warn-cursor-stroke);--design-paint-cursor-glow:none;--design-paint-pill-shadow:var(--design-float-shadow)}.design-paint-cursor[data-failed] .design-paint-pill{border-radius:min(var(--design-paint-pill-radius), 12px);white-space:normal;text-transform:none;letter-spacing:0;max-width:420px;height:auto;padding-block:3px;font-size:12.5px;line-height:1.4;display:block}.design-paint-chip{pointer-events:auto;cursor:pointer;height:28px;padding-inline:10px 12px;position:absolute;transform:translate(-100%,-50%)}.design-paint-chip[data-side=left]{transform:translateY(-50%)}.design-paint-chip[data-side=top]{transform:translate(-50%)}.design-paint-chip[data-side=bottom]{transform:translate(-50%,-100%)}.design-paint-chip:focus-visible{box-shadow:var(--design-focus-ring);outline:none}@keyframes design-paint-in{0%{opacity:0}}@keyframes design-paint-flash{0%{opacity:0}18%,45%{opacity:1}to{opacity:0}}@keyframes design-paint-wipe{0%{clip-path:inset(0)}to{clip-path:inset(0 0 0 100%)}}@media (prefers-reduced-motion:reduce){.design-paint-wipe{animation:design-paint-out .16s var(--design-ease-out) both}.design-paint-cursor{transition-duration:0s}}@keyframes design-paint-out{to{opacity:0}}.design-selection-card{z-index:3;border:1px solid var(--design-island-border);border-radius:var(--design-island-radius);background:var(--design-island-bg);width:300px;max-height:calc(100% - 72px);box-shadow:var(--design-island-shadow);-webkit-backdrop-filter:var(--design-island-backdrop);backdrop-filter:var(--design-island-backdrop);transition:opacity .15s var(--design-ease-out);flex-direction:column;display:flex;position:absolute;inset-block-start:0;inset-inline-start:0;overflow:hidden}@starting-style{.design-selection-card{opacity:0}}.design-selection-card-header{flex:none;align-items:center;gap:6px;padding:7px 6px 7px 12px;display:flex}.design-selection-card-header>svg{color:var(--design-fg-muted);flex:none}.design-selection-card-header h2{flex:1;min-width:0;margin:0;font-size:14px;font-weight:600;display:flex}.design-geometry{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:0 12px;display:grid}.design-geometry>div{border:1px solid var(--design-field-border);border-radius:var(--design-radius-control);background:var(--design-surface-sunken);align-items:center;gap:8px;height:28px;padding:0 8px;display:flex}.design-geometry dt{color:var(--design-fg-muted);font-size:12px}.design-geometry dd{font-variant-numeric:tabular-nums;margin:0}.design-selection-card-actions{flex:none;align-items:center;gap:6px;padding:10px 12px 12px;display:flex}.design-selection-card-more{border-top:1px solid var(--design-panel-border);min-height:0;overflow:auto}.design-canvas-error{z-index:4;inset-inline:16px;border:1px solid var(--warning);border-radius:var(--design-radius-control);background:var(--design-surface);padding:8px 10px;position:absolute;bottom:56px}.design-notice{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;margin:auto;padding:24px;display:flex}.design-notice>svg{color:var(--design-fg-muted)}.design-notice strong{font-size:14px;font-weight:600}.design-notice p{max-width:300px;color:var(--design-fg-muted);line-height:1.4}.design-layer-viewport{flex:1;min-height:0;overflow:auto}.design-layer-row{border-radius:var(--design-radius-small);align-items:center;height:30px;margin-block:1px;padding-right:6px;display:flex;position:absolute;left:4px;right:4px}.design-layer-row:hover{background:var(--design-row-hover)}.design-layer-row[aria-selected=true],.design-layer-row[aria-selected=true]:hover{background:var(--design-row-selected);box-shadow:inset 0 0 0 1px var(--design-panel-border)}.design-layer-disclosure,.design-layer-spacer{border-radius:var(--design-radius-small);width:20px;height:24px;color:var(--design-fg-muted);flex:none;place-items:center;display:grid}.design-layer-select{border-radius:var(--design-radius-small);text-align:left;flex:1;align-items:center;gap:6px;min-width:0;height:100%;display:flex}.design-inspector-content{padding:0 0 12px}.design-inspector-identity{gap:4px;padding:12px 14px;display:grid}.design-inspector-title{align-items:center;gap:6px;min-width:0;margin:0;font-size:14px;font-weight:600;display:flex}.design-inspector-title>svg{color:var(--design-fg-muted);flex:none}.design-inspector-meta{align-items:center;gap:6px;display:flex}.design-inspector-section{border-top:1px solid var(--design-panel-border);margin:0;padding:10px 14px}.design-selection-card-more .design-inspector-section:first-child{border-top:0}.design-inspector-section h3{margin:0 0 6px;font-size:12px;font-weight:600}.design-inspector-section p{color:var(--design-fg-muted);margin-top:4px}.design-property-list{margin:0}.design-property{grid-template-columns:minmax(62px,38%) minmax(0,1fr);align-items:start;gap:7px;padding:4px 0;display:grid}.design-property dt{color:var(--design-fg-muted)}.design-property dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;flex-direction:column;min-width:0;margin:0;display:flex}.design-property dd small{color:var(--design-fg-muted);margin-top:3px;display:block}.design-fill-value{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.design-fill-value small{flex-basis:100%;margin:0}.design-swatch{border:1px solid var(--design-panel-border);border-radius:var(--design-radius-small);flex:none;width:14px;height:14px}.design-inspector-hint{color:var(--design-fg-muted);margin:10px 14px 0}.design-inspector-actions{padding:8px 12px 14px}.design-author-hint{border-bottom:1px solid var(--design-panel-border);color:var(--design-fg-muted);margin:0;padding:10px 12px;font-size:12px}.design-annotation-stale{border-bottom:1px solid var(--design-panel-border);color:var(--design-fg-muted);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.design-comment-heading{align-items:center;gap:8px;display:flex}.design-comment-heading .design-small-muted{margin-inline-start:auto}.design-comment-number{min-width:18px;height:18px;color:var(--primary-foreground);background:var(--primary);font-variant-numeric:tabular-nums;border-radius:50% 50% 50% 0;flex:none;place-items:center;padding:0 4px;font-size:10px;font-weight:600;display:grid}.design-comment-number-blocking{background:var(--warning);color:var(--background)}.design-header{border:1px solid var(--design-panel-border);border-radius:var(--design-radius);background:var(--design-surface);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:8px 12px;min-width:0;min-height:42px;margin:8px 8px 0;padding:4px 6px;display:flex}.design-heading{align-items:center;gap:8px;min-width:0;display:flex}.design-heading .design-small-muted{flex:none}.design-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.design-header-actions button{white-space:nowrap}.design-pane-tabs{border:1px solid var(--design-panel-border);border-radius:var(--design-radius);background:var(--design-surface);flex:none;align-items:center;min-width:0;margin:7px 8px 0;display:flex;overflow:hidden}.design-pane-tabs button{min-width:0;min-height:36px;color:var(--design-fg-muted);text-align:center;white-space:nowrap;border-bottom:2px solid #0000;flex:1;padding:6px 4px}.design-pane-tabs button:hover{color:var(--design-fg)}.design-pane-tabs button[aria-current=page]{border-bottom-color:var(--design-fg);color:var(--design-fg);font-weight:600}.design-pane-content{border:1px solid var(--design-panel-border);border-radius:var(--design-radius);background:var(--design-surface);flex-direction:column;flex:1;min-width:0;min-height:0;margin:7px 8px 0;display:flex}.design-workspace-pane .design-main{flex:1;min-height:0;margin-top:7px}.design-review-error{border-radius:var(--design-radius-control);color:var(--destructive-foreground);background:var(--design-surface);margin:7px 8px 0;padding:7px 12px}.design-review-strip{border:1px solid var(--design-panel-border);border-radius:var(--design-radius);background:var(--design-surface);flex:none;justify-content:space-between;align-items:center;gap:12px;min-height:54px;margin:7px 8px 8px;padding:8px 10px;display:flex}.design-review-summary{flex:1;gap:2px;min-width:0;display:grid}.design-review-summary strong{font-weight:600}.design-review-summary small{color:var(--muted-foreground);line-height:1.35}.design-review-popover{gap:10px;display:grid}.design-review-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.design-review-author{min-width:0;color:var(--muted-foreground);white-space:nowrap;flex:1;align-items:center;gap:8px;font-size:12px;display:flex}.design-workspace :is(button,input,textarea,[tabindex="0"]):not([data-slot]):focus-visible{box-shadow:var(--design-focus-ring);outline:none}@container (width<=900px){.design-topbar{flex-wrap:wrap}.design-topbar-notices{flex-basis:100%;order:3;padding-bottom:3px}}@container (width<=760px){.design-agent{z-index:10;width:min(340px,100%);box-shadow:var(--design-float-shadow);position:absolute;inset-block:0;inset-inline-start:0}}@media (forced-colors:active){.design-layer-row[aria-selected=true],.design-catalog-tabs button[aria-selected=true]{outline:1px solid highlight}}.design-transfer-panel{gap:16px;display:grid}.design-transfer-tabs{border-bottom:1px solid var(--sidebar-border);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.design-transfer-tabs button{min-height:38px;color:var(--muted-foreground);border-bottom:2px solid #0000}.design-transfer-tabs button[aria-selected=true]{border-bottom-color:var(--foreground);color:var(--foreground);font-weight:600}.design-transfer-fields{gap:8px;display:grid}.design-transfer-fields label:not(.design-transfer-checkbox){margin-top:5px}.design-transfer-file{align-items:center;gap:8px;min-width:0;display:flex}.design-transfer-checkbox{color:var(--foreground);align-items:center;gap:8px;font-size:13px;display:flex}.design-transfer-progress,.design-transfer-result{color:var(--muted-foreground);gap:7px;font-size:13px;display:grid}.design-transfer-progress progress{width:100%;accent-color:var(--primary)}.design-transfer-result{border-top:1px solid var(--sidebar-border);overflow-wrap:anywhere;padding-top:12px}.design-transfer-result strong{color:var(--foreground)}.design-transfer-error{color:var(--destructive);font-size:13px}.design-transfer-hint{color:var(--muted-foreground);margin:0;font-size:13px}.design-editor-heading,.design-annotation-editor,.design-reply-form{flex-direction:column;gap:9px;display:flex}.design-annotation-editor{border-bottom:1px solid var(--design-panel-border);padding:12px}.design-annotation-editor label,.design-reply-form label{flex-direction:column;gap:4px;min-width:0;font-size:12px;display:flex}.design-annotation-editor input:not([type=checkbox]),.design-annotation-editor textarea,.design-reply-form textarea{border:1px solid var(--design-field-border);border-radius:var(--design-radius-small);width:100%;min-width:0;color:var(--design-fg);background:var(--design-surface-sunken);padding:7px 8px}.design-editor-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.design-annotation-editor .design-editor-checkbox{flex-direction:row;align-items:center}.design-editor-actions,.design-comment-actions{justify-content:flex-end;gap:6px;display:flex}.design-comments{padding:4px 9px 9px}.design-comment{border-bottom:1px solid var(--design-panel-border);padding:10px 4px}.design-comment p{overflow-wrap:anywhere;margin-top:8px}.design-comment-meta{color:var(--design-fg-muted);flex-wrap:wrap;align-items:center;gap:5px;margin-top:8px;font-size:11px;display:flex}.design-comment-label{border:1px solid var(--design-panel-border);border-radius:var(--design-radius-small);padding:2px 5px}.design-reply{border-inline-start:2px solid var(--design-panel-border);margin:10px 0 0 10px;padding-inline-start:9px}.design-reply-form{margin-top:10px}.design-compare{flex-direction:column;flex:1;min-height:0;display:flex}.design-compare-header{border-bottom:1px solid var(--design-panel-border);background:var(--design-surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.design-compare-revisions{flex-direction:column;min-width:0;display:flex}.design-compare-controls,.design-compare-controls nav{flex-wrap:wrap;gap:4px;display:flex}.design-compare-controls nav button{border-radius:var(--design-radius-small);min-height:30px;color:var(--design-fg-muted);padding:4px 8px}.design-compare-controls nav button[aria-current=page]{color:var(--design-fg);background:var(--accent)}.design-compare-pair{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));min-height:0;display:grid}.design-compare-pair>section{border-inline-end:1px solid var(--design-panel-border);flex-direction:column;min-width:0;min-height:0;display:flex}.design-compare-pair .design-canvas-wrap{min-height:160px}.design-compare-caption{background:var(--design-surface);color:var(--design-fg-muted);padding:5px 10px;font-size:12px}.design-compare-overlay{flex-direction:column;flex:1;min-height:0;display:flex}.design-compare-opacity{background:var(--design-surface);align-items:center;gap:8px;padding:6px 12px;display:flex}.design-compare-overlay-stack{flex:1;min-height:0;position:relative}.design-compare-overlay-stack>.design-canvas-wrap,.design-compare-overlay-stack>div:last-child{position:absolute;inset:0}.design-compare-overlay-stack>.design-canvas-wrap{pointer-events:none}.design-compare-overlay-stack>.design-canvas-wrap .design-canvas-tools,.design-compare-overlay-stack>.design-canvas-wrap .design-canvas-zoom,.design-compare-overlay-stack>.design-canvas-wrap .design-frame-labels,.design-compare-overlay-stack>.design-canvas-wrap .design-selection-badge{display:none}.design-compare .design-canvas-tools{flex-direction:column;inset-block-start:10px;inset-inline-start:10px}.design-compare .design-canvas-zoom{inset-block-end:10px;inset-inline-end:10px}.design-compare-overlay-stack>div:last-child{display:flex}.design-compare-overlay-stack>div:last-child .design-canvas-surface{opacity:var(--design-after-opacity)}.design-compare-changes{min-height:0;padding:12px;overflow:auto}.design-compare-changes li{border-bottom:1px solid var(--design-panel-border);align-items:baseline;gap:10px;padding:8px 0;display:flex}.design-compare-changes code{overflow-wrap:anywhere}.design-compare-changes small{color:var(--design-fg-muted);margin-top:3px;display:block}@container (width<=500px){.design-compare-pair{grid-template-rows:repeat(2,minmax(160px,1fr));grid-template-columns:minmax(0,1fr)}.design-editor-fields{grid-template-columns:minmax(0,1fr)}}.design-switcher-item{align-items:center;gap:8px;width:100%;min-width:0;display:flex}.design-switcher-item>.design-truncate{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}
@@ -0,0 +1,2 @@
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{n as t,r as n,t as r}from"./compiler-runtime-CLAvuQ-D.js";import{Al as i,Dc as a,Di as o,Ei as s,F as c,L as l,Ll as u,Nl as d,Oi as f,P as p,Qf as m,Rc as h,Rs as g,Si as _,Sl as v,Ti as y,_l as b,bi as ee,bl as x,ep as S,i as C,mi as w,mu as T,n as E,nl as D,r as te,ui as O,vi as k,wi as A,xi as j,xn as ne,yi as M,yl as re}from"./textarea-CVN2-Kkx.js";import{$ as ie,B as N,G as ae,K as P,Q as F,W as I,Y as oe,Z as L,ct as R,lt as z,q as se,r as B,tt as V,x as ce}from"./previewAssetResource-J1WeeXS-.js";import{$ as le,$n as H,B as U,E as W,F as G,Fi as ue,Fr as K,Gr as q,Hr as de,I as fe,Ii as pe,Ir as me,Kr as J,L as Y,Lr as X,Qn as he,R as ge,Rr as _e,Ur as ve,V as ye,Vr as be,Wr as xe,Zn as Se,a as Ce,ai as we,bi as Te,c as Ee,ci as De,d as Oe,di as ke,er as Ae,et as je,fi as Me,i as Ne,l as Pe,li as Fe,m as Ie,n as Le,o as Re,oi as ze,pi as Be,qr as Ve,r as He,s as Ue,t as We,tr as Ge,tt as Ke,u as qe,wi as Je,z as Ye,zr as Xe}from"./index-B4Nxc2w0.js";var Ze=g(`camera`,[[`path`,{d:`M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z`,key:`18u6gg`}],[`circle`,{cx:`12`,cy:`13`,r:`3`,key:`1vg3eu`}]]),Qe=g(`ellipsis-vertical`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]]),$e=g(`radio-tower`,[[`path`,{d:`M4.9 16.1C1 12.2 1 5.8 4.9 1.9`,key:`s0qx1y`}],[`path`,{d:`M7.8 4.7a6.14 6.14 0 0 0-.8 7.5`,key:`1idnkw`}],[`circle`,{cx:`12`,cy:`9`,r:`2`,key:`1092wv`}],[`path`,{d:`M16.2 4.8c2 2 2.26 5.11.8 7.47`,key:`ojru2q`}],[`path`,{d:`M19.1 1.9a9.96 9.96 0 0 1 0 14.1`,key:`rhi7fg`}],[`path`,{d:`M9.5 18h5`,key:`mfy3pd`}],[`path`,{d:`m8 22 4-11 4 11`,key:`25yftu`}]]),Z=r(),Q=e(n(),1),$=t(),et=()=>{};function tt(e){let t=(0,Z.c)(116),{url:n,displayUrl:r,loading:i,loadProgress:a,canGoBack:o,canGoForward:s,refreshDisabled:u,inputDisabled:d,focusUrlNonce:m,onBack:h,onForward:g,onRefresh:_,onSubmit:v,onOpenInBrowser:y,onCapture:b,captureDisabled:ee,recording:x,onPictureInPicture:S,pictureInPicture:C,pictureInPictureDisabled:w,onPickElement:T,pickActive:E,pickDisabled:D,pickDisabledReason:te,trailingActions:k}=e,A=(0,Q.useRef)(null),[j,ne]=(0,Q.useState)(n),[M,re]=(0,Q.useState)(!1),ie;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(ie=[],t[0]=ie):ie=t[0];let[N,ae]=(0,Q.useState)(ie),[P,F]=(0,Q.useState)(-1),I=(0,Q.useId)(),oe;t[1]!==j||t[2]!==N||t[3]!==M||t[4]!==n?(oe=M&&j!==n?qe(N,j):[],t[1]=j,t[2]=N,t[3]=M,t[4]=n,t[5]=oe):oe=t[5];let L=oe,R,z;t[6]===m?(R=t[7],z=t[8]):(R=()=>{if(m==null)return;let e=A.current;e&&e.focus()},z=[m],t[6]=m,t[7]=R,t[8]=z),(0,Q.useEffect)(R,z);let se;t[9]!==P||t[10]!==j||t[11]!==v||t[12]!==L?(se=e=>{e?.preventDefault();let t=L[P]?.url??j.trim();t.length!==0&&(v(t),A.current?.blur())},t[9]=P,t[10]=j,t[11]=v,t[12]=L,t[13]=se):se=t[13];let B=se,V=o?h:et,ce=!o,H;t[14]!==V||t[15]!==ce?(H=(0,$.jsx)(O,{variant:`ghost`,size:`icon-xs`,onClick:V,disabled:ce,"aria-label":`Back`,type:`button`}),t[14]=V,t[15]=ce,t[16]=H):H=t[16];let U;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,$.jsx)(pe,{}),t[17]=U):U=t[17];let W;t[18]===H?W=t[19]:(W=(0,$.jsx)(l,{render:H,children:U}),t[18]=H,t[19]=W);let G;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(G=(0,$.jsx)(c,{children:`Back`}),t[20]=G):G=t[20];let K;t[21]===W?K=t[22]:(K=(0,$.jsxs)(p,{children:[W,G]}),t[21]=W,t[22]=K);let q=s?g:et,de=!s,fe;t[23]!==q||t[24]!==de?(fe=(0,$.jsx)(O,{variant:`ghost`,size:`icon-xs`,onClick:q,disabled:de,"aria-label":`Forward`,type:`button`}),t[23]=q,t[24]=de,t[25]=fe):fe=t[25];let me;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(me=(0,$.jsx)(ue,{}),t[26]=me):me=t[26];let J;t[27]===fe?J=t[28]:(J=(0,$.jsx)(l,{render:fe,children:me}),t[27]=fe,t[28]=J);let Y;t[29]===Symbol.for(`react.memo_cache_sentinel`)?(Y=(0,$.jsx)(c,{children:`Forward`}),t[29]=Y):Y=t[29];let X;t[30]===J?X=t[31]:(X=(0,$.jsxs)(p,{children:[J,Y]}),t[30]=J,t[31]=X);let he=u?et:_,ge=i?`Stop`:`Refresh`,_e;t[32]!==u||t[33]!==he||t[34]!==ge?(_e=(0,$.jsx)(O,{variant:`ghost`,size:`icon-xs`,onClick:he,disabled:u,"aria-label":ge,type:`button`}),t[32]=u,t[33]=he,t[34]=ge,t[35]=_e):_e=t[35];let ve=i&&`animate-spin`,ye;t[36]===ve?ye=t[37]:(ye=f(ve),t[36]=ve,t[37]=ye);let be;t[38]===ye?be=t[39]:(be=(0,$.jsx)(we,{className:ye}),t[38]=ye,t[39]=be);let xe;t[40]!==_e||t[41]!==be?(xe=(0,$.jsx)(l,{render:_e,children:be}),t[40]=_e,t[41]=be,t[42]=xe):xe=t[42];let Se=i?`Loading…`:`Refresh`,Ce;t[43]===Se?Ce=t[44]:(Ce=(0,$.jsx)(c,{children:Se}),t[43]=Se,t[44]=Ce);let Te;t[45]!==xe||t[46]!==Ce?(Te=(0,$.jsxs)(p,{children:[xe,Ce]}),t[45]=xe,t[46]=Ce,t[47]=Te):Te=t[47];let Ee;t[48]!==K||t[49]!==X||t[50]!==Te?(Ee=(0,$.jsxs)(`div`,{className:`flex items-center gap-0.5`,role:`group`,"aria-label":`Navigation`,children:[K,X,Te]}),t[48]=K,t[49]=X,t[50]=Te,t[51]=Ee):Ee=t[51];let De=M?j:r??n,Oe=y&&!M&&`group-hover/address:pe-7 transition-[padding]`,Ae;t[52]===Oe?Ae=t[53]:(Ae=f(Oe),t[52]=Oe,t[53]=Ae);let Me;t[54]===Symbol.for(`react.memo_cache_sentinel`)?(Me=e=>{ne(e.target.value),F(-1)},t[54]=Me):Me=t[54];let Ne;t[55]===n?Ne=t[56]:(Ne=()=>{ne(n),ae(Pe()),F(-1),re(!0),queueMicrotask(()=>A.current?.select())},t[55]=n,t[56]=Ne);let Ie;t[57]===Symbol.for(`react.memo_cache_sentinel`)?(Ie=()=>{re(!1)},t[57]=Ie):Ie=t[57];let Le;t[58]!==B||t[59]!==L.length||t[60]!==n?(Le=e=>{if(e.key===`Enter`&&B(e),(e.key===`ArrowDown`||e.key===`ArrowUp`)&&L.length>0){e.preventDefault();let t=e.key===`ArrowDown`?1:-1;F(e=>{let n=e+t;return n>=L.length?-1:n<-1?L.length-1:n})}e.key===`Escape`&&(e.preventDefault(),ne(n),A.current?.blur())},t[58]=B,t[59]=L.length,t[60]=n,t[61]=Le):Le=t[61];let Re=L.length>0,ze=P>=0?`${I}-${P}`:void 0,Be;t[62]!==d||t[63]!==I||t[64]!==De||t[65]!==Ae||t[66]!==Ne||t[67]!==Le||t[68]!==Re||t[69]!==ze?(Be=(0,$.jsx)(l,{render:(0,$.jsx)(Ke,{ref:A,value:De,className:Ae,onChange:Me,onFocus:Ne,onBlur:Ie,onKeyDown:Le,role:`combobox`,"aria-autocomplete":`list`,"aria-expanded":Re,"aria-controls":I,"aria-activedescendant":ze,placeholder:`Search or enter URL`,spellCheck:!1,disabled:d,"data-preview-url-input":!0,size:`sm`})}),t[62]=d,t[63]=I,t[64]=De,t[65]=Ae,t[66]=Ne,t[67]=Le,t[68]=Re,t[69]=ze,t[70]=Be):Be=t[70];let Ve;t[71]!==r||t[72]!==M||t[73]!==n?(Ve=!M&&r?(0,$.jsx)(c,{children:n}):null,t[71]=r,t[72]=M,t[73]=n,t[74]=Ve):Ve=t[74];let He;t[75]!==Be||t[76]!==Ve?(He=(0,$.jsxs)(p,{children:[Be,Ve]}),t[75]=Be,t[76]=Ve,t[77]=He):He=t[77];let Ue;t[78]!==M||t[79]!==y?(Ue=y&&!M?(0,$.jsx)(je,{align:`inline-end`,className:`pointer-events-none absolute inset-y-0 right-0 opacity-0 transition-opacity group-hover/address:pointer-events-auto group-hover/address:opacity-100`,children:(0,$.jsxs)(p,{children:[(0,$.jsx)(l,{render:(0,$.jsx)(O,{variant:`ghost`,size:`icon-xs`,onClick:y,"aria-label":`Open in system browser`,type:`button`}),children:(0,$.jsx)(Je,{})}),(0,$.jsx)(c,{children:`Open in system browser`})]})}):null,t[78]=M,t[79]=y,t[80]=Ue):Ue=t[80];let We;t[81]!==He||t[82]!==Ue?(We=(0,$.jsxs)(le,{className:`group/address h-7 flex-1 rounded-md border-transparent bg-transparent shadow-none before:shadow-none hover:bg-muted/40 focus-within:bg-background`,children:[He,Ue]}),t[81]=He,t[82]=Ue,t[83]=We):We=t[83];let Ge;t[84]!==T||t[85]!==E||t[86]!==D||t[87]!==te?(Ge=T?(0,$.jsxs)(p,{children:[(0,$.jsx)(l,{render:(0,$.jsx)(O,{variant:E?`secondary`:`ghost`,size:`icon-xs`,onClick:T,disabled:D,"aria-label":E?`Cancel annotation`:`Annotate preview`,"aria-pressed":E?`true`:`false`,type:`button`}),children:(0,$.jsx)(ke,{className:f(E&&`text-primary`)})}),(0,$.jsx)(c,{children:D&&te?te:E?`Cancel annotation (Esc)`:`Annotate elements, regions, and drawings`})]}):null,t[84]=T,t[85]=E,t[86]=D,t[87]=te,t[88]=Ge):Ge=t[88];let Ye;t[89]!==ee||t[90]!==b||t[91]!==x?(Ye=b?(0,$.jsxs)(p,{children:[(0,$.jsxs)(l,{render:(0,$.jsx)(O,{variant:x?`secondary`:`ghost`,size:`icon-xs`,onClick:e=>b(e.shiftKey),"aria-label":x?`Stop recording`:`Capture screenshot`,type:`button`,className:`relative`,disabled:ee}),children:[(0,$.jsx)(Ze,{className:f(x&&`text-destructive`)}),x?(0,$.jsx)(`span`,{className:`absolute right-0.5 top-0.5 size-1.5 animate-status-pulse rounded-full bg-destructive`}):null]}),(0,$.jsx)(c,{children:x?`Stop recording`:`Screenshot · Shift-click to record`})]}):null,t[89]=ee,t[90]=b,t[91]=x,t[92]=Ye):Ye=t[92];let Xe;t[93]!==S||t[94]!==C||t[95]!==w?(Xe=S?(0,$.jsxs)(p,{children:[(0,$.jsx)(l,{render:(0,$.jsx)(O,{variant:C?`secondary`:`ghost`,size:`icon-xs`,onClick:S,"aria-label":C?`Close floating preview`:`Float preview over chat`,"aria-pressed":C?`true`:`false`,type:`button`,disabled:w}),children:(0,$.jsx)(Fe,{className:f(C&&`text-primary`)})}),(0,$.jsx)(c,{children:C?`Close floating preview`:`Float preview over chat`})]}):null,t[93]=S,t[94]=C,t[95]=w,t[96]=Xe):Xe=t[96];let Qe;t[97]!==B||t[98]!==Ee||t[99]!==We||t[100]!==Ge||t[101]!==Ye||t[102]!==Xe||t[103]!==k?(Qe=(0,$.jsxs)(`form`,{onSubmit:B,className:`surface-subheader gap-1 px-2`,"data-surface-subheader":!0,children:[Ee,We,Ge,Ye,Xe,k]}),t[97]=B,t[98]=Ee,t[99]=We,t[100]=Ge,t[101]=Ye,t[102]=Xe,t[103]=k,t[104]=Qe):Qe=t[104];let $e;t[105]!==P||t[106]!==v||t[107]!==L||t[108]!==I?($e=L.length>0?(0,$.jsx)(`ul`,{id:I,role:`listbox`,"aria-label":`History suggestions`,className:`absolute inset-x-2 top-full z-50 mt-1 overflow-hidden rounded-lg border border-border bg-popover p-1 text-popover-foreground shadow-lg`,children:L.map((e,t)=>(0,$.jsxs)(`li`,{id:`${I}-${t}`,role:`option`,"aria-selected":t===P,onMouseDown:nt,onClick:()=>{v(e.url),A.current?.blur()},onMouseEnter:()=>F(t),className:`flex cursor-default flex-col rounded-md px-2 py-1 text-sm aria-selected:bg-accent aria-selected:text-accent-foreground`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:e.title||e.url}),e.title?(0,$.jsx)(`span`,{className:`truncate text-xs text-muted-foreground`,children:e.url}):null]},e.url))}):null,t[105]=P,t[106]=v,t[107]=L,t[108]=I,t[109]=$e):$e=t[109];let tt;t[110]===a?tt=t[111]:(tt=a>0?(0,$.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute bottom-0 left-0 z-10 h-0.5 rounded-r-full bg-primary transition-all duration-150 ease-out`,style:{width:`${a}%`,boxShadow:`0 0 6px 1px var(--color-ring)`}}):null,t[110]=a,t[111]=tt);let rt;return t[112]!==Qe||t[113]!==$e||t[114]!==tt?(rt=(0,$.jsxs)(`div`,{className:`relative`,children:[Qe,$e,tt]}),t[112]=Qe,t[113]=$e,t[114]=tt,t[115]=rt):rt=t[115],rt}function nt(e){return e.preventDefault()}function rt(e){try{let t=new URL(e.url),n=new URL(e.environmentHttpBaseUrl);if(t.origin===n.origin&&t.pathname.startsWith(`/api/assets/`)){let n=t.pathname.split(`/`).at(-1);if(!n)return null;let r=decodeURIComponent(n);return!r||r===`.`||r===`..`?null:`${e.environmentLabel} · ${r}`}return t.protocol===`http:`||t.protocol===`https:`?t.host:null}catch{return null}}function it(e){let t=(0,Z.c)(6),{className:n}=e,r;t[0]===n?r=t[1]:(r=f(`relative flex flex-col gap-0.5 overflow-hidden rounded-[5px] border border-border/60 bg-card p-1 shadow-xs/5`,n),t[0]=n,t[1]=r);let i;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsxs)(`div`,{className:`flex gap-[2px]`,children:[(0,$.jsx)(`span`,{className:`size-[3px] rounded-full bg-destructive/80`}),(0,$.jsx)(`span`,{className:`size-[3px] rounded-full bg-warning/80`}),(0,$.jsx)(`span`,{className:`size-[3px] rounded-full bg-success/80`})]}),t[2]=i):i=t[2];let a;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsxs)(`div`,{className:`mt-[1px] flex flex-1 flex-col gap-[2px]`,children:[(0,$.jsx)(`span`,{className:`h-[2px] w-full rounded-full bg-muted-foreground/30`}),(0,$.jsx)(`span`,{className:`h-[2px] w-3/5 rounded-full bg-muted-foreground/20`})]}),t[3]=a):a=t[3];let o;return t[4]===r?o=t[5]:(o=(0,$.jsxs)(`div`,{"aria-hidden":!0,className:r,children:[i,a]}),t[4]=r,t[5]=o),o}function at(e){let t=(0,Z.c)(17),{server:n,onOpen:r}=e,i;t[0]===n?i=t[1]:(i=ot(n),t[0]=n,t[1]=i);let a=i,o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(it,{className:`size-7 shrink-0`}),t[2]=o):o=t[2];let s;t[3]===a?s=t[4]:(s=(0,$.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,children:a}),t[3]=a,t[4]=s);let c;t[5]!==n.host||t[6]!==n.port?(c=(0,$.jsxs)(`span`,{className:`truncate text-xs text-muted-foreground`,children:[n.host,`:`,n.port]}),t[5]=n.host,t[6]=n.port,t[7]=c):c=t[7];let l;t[8]!==s||t[9]!==c?(l=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[s,c]}),t[8]=s,t[9]=c,t[10]=l):l=t[10];let u;t[11]===n.listening?u=t[12]:(u=n.listening?(0,$.jsx)(st,{}):(0,$.jsx)(ct,{}),t[11]=n.listening,t[12]=u);let d;return t[13]!==r||t[14]!==l||t[15]!==u?(d=(0,$.jsxs)(`button`,{type:`button`,onClick:r,className:`group flex w-full items-center gap-3 px-3 py-3 text-left hover:bg-accent/40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,children:[o,l,u]}),t[13]=r,t[14]=l,t[15]=u,t[16]=d):d=t[16],d}function ot(e){return e.processName?e.processName:e.listening?`Listening`:e.source===`configured`?`Configured`:`Recently seen`}function st(){let e=(0,Z.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsxs)(`span`,{"aria-label":`Listening`,className:`relative inline-flex size-2 shrink-0`,children:[(0,$.jsx)(`span`,{className:`absolute inset-0 animate-status-ping rounded-full bg-success opacity-60`}),(0,$.jsx)(`span`,{className:`relative inline-flex size-2 rounded-full bg-success`})]}),e[0]=t):t=e[0],t}function ct(){let e=(0,Z.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsx)(`span`,{"aria-label":`Not currently listening`,className:`size-2 shrink-0 rounded-full bg-muted-foreground/40`}),e[0]=t):t=e[0],t}function lt(e){let t=(0,Z.c)(7),n=Xe(e.environmentId),r;if(t[0]!==e.configuredUrls||t[1]!==e.environmentId||t[2]!==e.recentlySeenUrls||t[3]!==n){let i;t[5]===e.environmentId?i=t[6]:(i=t=>({...t,url:me(e.environmentId,t.url)}),t[5]=e.environmentId,t[6]=i),r=ut({scanner:n.map(i),configuredUrls:e.configuredUrls??[],recentlySeenUrls:e.recentlySeenUrls??[]}),t[0]=e.configuredUrls,t[1]=e.environmentId,t[2]=e.recentlySeenUrls,t[3]=n,t[4]=r}else r=t[4];return r}function ut(e){let t=new Map;for(let n of e.configuredUrls){let e=ft(n);if(!e)continue;let r=dt(e.host,e.port);t.has(r)||t.set(r,{host:e.host,port:e.port,url:e.url,processName:null,pid:null,terminal:null,source:`configured`,listening:!1})}for(let n of e.scanner){let e=dt(n.host,n.port),r=t.get(e);if(r){t.set(e,{...r,processName:n.processName??r.processName,pid:n.pid??r.pid,terminal:n.terminal??r.terminal,listening:!0});continue}t.set(e,{...n,source:`scanner`,listening:!0})}for(let n of e.recentlySeenUrls){let e=ft(n);if(!e)continue;let r=dt(e.host,e.port);t.has(r)||t.set(r,{host:e.host,port:e.port,url:e.url,processName:null,pid:null,terminal:null,source:`recent`,listening:!1})}return Array.from(t.values()).toSorted((e,t)=>{let n={configured:0,scanner:1,recent:2};return n[e.source]===n[t.source]?e.port-t.port:n[e.source]-n[t.source]})}function dt(e,t){return`${e.toLowerCase()}:${t}`}function ft(e){try{let t=new URL(e);if(t.protocol!==`http:`&&t.protocol!==`https:`||!X(t.hostname))return null;let n=t.port?Number.parseInt(t.port,10):t.protocol===`http:`?80:443;return!Number.isFinite(n)||n<=0?null:{host:t.hostname,port:n,url:t.href}}catch{return null}}function pt(e){let t=(0,Z.c)(16),{environmentId:n,configuredUrls:r,recentlySeenUrls:i,onOpenUrl:a}=e,o;t[0]!==r||t[1]!==n||t[2]!==i?(o={environmentId:n,configuredUrls:r,recentlySeenUrls:i},t[0]=r,t[1]=n,t[2]=i,t[3]=o):o=t[3];let s=lt(o);if(s.length===0){let e;return t[4]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsxs)(Se,{children:[(0,$.jsx)(H,{variant:`icon`,children:(0,$.jsx)(Te,{className:`size-4.5 text-muted-foreground`})}),(0,$.jsx)(Ae,{children:`No preview yet`}),(0,$.jsx)(he,{children:`Type a URL above, or run a dev script. Listening localhost ports will show up here automatically.`})]}),t[4]=e):e=t[4],e}let c;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)($e,{className:`size-4 shrink-0`}),(0,$.jsx)(`h2`,{className:`font-medium`,children:`Local servers`})]}),t[5]=c):c=t[5];let l;if(t[6]!==a||t[7]!==s){let e;t[9]===a?e=t[10]:(e=e=>(0,$.jsx)(at,{server:e,onOpen:()=>a(e.url)},`${e.host}:${e.port}`),t[9]=a,t[10]=e),l=s.map(e),t[6]=a,t[7]=s,t[8]=l}else l=t[8];let u;t[11]===l?u=t[12]:(u=(0,$.jsx)(`div`,{className:`flex flex-col divide-y divide-border/60 overflow-hidden rounded-xl border border-border/70 bg-background`,children:l}),t[11]=l,t[12]=u);let d;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(`p`,{className:`px-1 text-xs text-muted-foreground`,children:`Select a listening port to open it in this browser tab.`}),t[13]=d):d=t[13];let f;return t[14]===u?f=t[15]:(f=(0,$.jsx)(`div`,{className:`flex h-full min-h-0 overflow-y-auto px-5 py-8`,children:(0,$.jsxs)(`div`,{className:`m-auto flex w-full max-w-xl flex-col gap-3`,children:[c,u,d]})}),t[14]=u,t[15]=f),f}var mt=e=>(e instanceof Error?e.message:``).replace(/^Error invoking remote method '[^']+':\s*/u,``).replace(/^[A-Za-z]+Error:\s*/u,``).trim()||`Chrome import failed.`;function ht(e){let[t,n]=(0,Q.useState)(null),[r,i]=(0,Q.useState)(null),[a,o]=(0,Q.useState)(!1),[s,c]=(0,Q.useState)(null);(0,Q.useEffect)(()=>{if(!e.open||!G)return;let t=!1;return n(null),c(null),G.listChromeProfiles().then(e=>{t||(n(e),i(e[0]?.id??null))},e=>{t||(n([]),i(null),c(mt(e)))}),()=>{t=!0}},[e.open]);let l=async()=>{if(!(!G||!r)){o(!0);try{let t=await G.importFromChrome({profileId:r});Ee(t.history),R.add({type:`success`,title:`Imported from Chrome`,description:`${t.importedCookies} cookies and ${t.history.length} history entries.${t.failedCookies>0?` ${t.failedCookies} cookies could not be imported.`:``}`}),e.onOpenChange(!1)}catch(e){R.add({type:`error`,title:`Could not import from Chrome`,description:mt(e)})}finally{o(!1)}}};return(0,$.jsx)(be,{open:e.open,onOpenChange:e.onOpenChange,children:(0,$.jsxs)(J,{className:`max-w-md`,children:[(0,$.jsxs)(xe,{children:[(0,$.jsx)(Ve,{children:`Import from Chrome`}),(0,$.jsx)(de,{children:`Copies all cookies and recent history from a Chrome profile into the built-in browser. Agents that use this browser can act with these signed-in sessions. macOS asks for Keychain access to decrypt the cookies.`})]}),(0,$.jsx)(q,{children:s?(0,$.jsx)(`p`,{className:`text-sm text-destructive-foreground`,children:s}):t===null?(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Looking for Chrome profiles…`}):t.length===0?(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No Chrome profiles found. Importing is available on macOS with Google Chrome installed.`}):(0,$.jsx)(`div`,{role:`radiogroup`,"aria-label":`Chrome profile`,className:`space-y-1`,children:t.map(e=>(0,$.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-3 rounded-md px-2 py-1.5 text-sm hover:bg-accent`,children:[(0,$.jsx)(`input`,{type:`radio`,name:`chrome-profile`,value:e.id,checked:r===e.id,onChange:()=>i(e.id)}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.name}),e.name===e.id?null:(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.id})]},e.id))})}),(0,$.jsxs)(ve,{children:[(0,$.jsx)(O,{variant:`outline`,onClick:()=>e.onOpenChange(!1),children:`Cancel`}),(0,$.jsx)(O,{disabled:!r||a,onClick:()=>void l(),children:a?`Importing…`:`Import`})]})]})})}var gt=[{value:`system`,label:`System`},{value:`light`,label:`Light`},{value:`dark`,label:`Dark`}];function _t(e){let t=(0,Z.c)(81),{tabId:n,hasWebContents:r,zoomFactor:i,colorScheme:a,deviceToolbarVisible:u,onToggleDeviceToolbar:d,nativePictureInPicture:f,onNativePictureInPicture:m}=e,[h,g]=(0,Q.useState)(!1);if(!G)return null;let v=!n||!r,b;t[0]===n?b=t[1]:(b=e=>()=>{n&&e(n).catch(Tt)},t[0]=n,t[1]=b);let x=b,S;t[2]===i?S=t[3]:(S=Math.round(i*100),t[2]=i,t[3]=S);let C=`${S}%`,T;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,$.jsxs)(p,{children:[(0,$.jsx)(l,{render:(0,$.jsx)(o,{render:(0,$.jsx)(O,{variant:`ghost`,size:`icon-xs`,type:`button`,"aria-label":`Preview menu`})}),children:(0,$.jsx)(Qe,{})}),(0,$.jsx)(c,{children:`More`})]}),t[4]=T):T=t[4];let E;t[5]===x?E=t[6]:(E=x(G.hardReload),t[5]=x,t[6]=E);let D;t[7]!==E||t[8]!==v?(D=(0,$.jsx)(k,{onClick:E,disabled:v,children:`Hard reload`}),t[7]=E,t[8]=v,t[9]=D):D=t[9];let te;t[10]===x?te=t[11]:(te=x(G.openDevTools),t[10]=x,t[11]=te);let j;t[12]!==te||t[13]!==v?(j=(0,$.jsx)(k,{onClick:te,disabled:v,children:`Open DevTools`}),t[12]=te,t[13]=v,t[14]=j):j=t[14];let ne=f?`Close separate preview window`:`Open separate preview window`,re;t[15]!==m||t[16]!==ne||t[17]!==v?(re=(0,$.jsx)(k,{onClick:m,disabled:v,children:ne}),t[15]=m,t[16]=ne,t[17]=v,t[18]=re):re=t[18];let ie=u?`Hide device toolbar`:`Show device toolbar`,N;t[19]!==d||t[20]!==ie||t[21]!==v?(N=(0,$.jsx)(k,{onClick:d,disabled:v,children:ie}),t[19]=d,t[20]=ie,t[21]=v,t[22]=N):N=t[22];let ae;t[23]===v?ae=t[24]:(ae=(0,$.jsx)(s,{disabled:v,children:`Appearance`}),t[23]=v,t[24]=ae);let P;t[25]===n?P=t[26]:(P=e=>{n&&G.setColorScheme(n,e).catch(wt)},t[25]=n,t[26]=P);let F;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(F=gt.map(Ct),t[27]=F):F=t[27];let I;t[28]!==a||t[29]!==P?(I=(0,$.jsx)(y,{className:`min-w-32`,children:(0,$.jsx)(ee,{value:a,onValueChange:P,children:F})}),t[28]=a,t[29]=P,t[30]=I):I=t[30];let oe;t[31]!==ae||t[32]!==I?(oe=(0,$.jsxs)(A,{children:[ae,I]}),t[31]=ae,t[32]=I,t[33]=oe):oe=t[33];let L;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,$.jsx)(_,{}),t[34]=L):L=t[34];let R;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(`span`,{children:`Zoom`}),t[35]=R):R=t[35];let z;t[36]===x?z=t[37]:(z=x(G.zoomOut),t[36]=x,t[37]=z);let se;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(se=(0,$.jsx)(Be,{}),t[38]=se):se=t[38];let B;t[39]!==z||t[40]!==v?(B=(0,$.jsx)(O,{variant:`outline`,size:`icon-xs`,type:`button`,onClick:z,"aria-label":`Zoom out`,disabled:v,children:se}),t[39]=z,t[40]=v,t[41]=B):B=t[41];let V;t[42]===C?V=t[43]:(V=(0,$.jsx)(`span`,{className:`min-w-12 text-center text-xs tabular-nums text-muted-foreground`,children:C}),t[42]=C,t[43]=V);let ce;t[44]===x?ce=t[45]:(ce=x(G.zoomIn),t[44]=x,t[45]=ce);let le;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(le=(0,$.jsx)(De,{}),t[46]=le):le=t[46];let H;t[47]!==ce||t[48]!==v?(H=(0,$.jsx)(O,{variant:`outline`,size:`icon-xs`,type:`button`,onClick:ce,"aria-label":`Zoom in`,disabled:v,children:le}),t[47]=ce,t[48]=v,t[49]=H):H=t[49];let U;t[50]===x?U=t[51]:(U=x(G.resetZoom),t[50]=x,t[51]=U);let W;t[52]===Symbol.for(`react.memo_cache_sentinel`)?(W=(0,$.jsx)(ze,{}),t[52]=W):W=t[52];let ue;t[53]!==U||t[54]!==v?(ue=(0,$.jsx)(O,{variant:`ghost`,size:`icon-xs`,type:`button`,onClick:U,"aria-label":`Reset zoom`,disabled:v,children:W}),t[53]=U,t[54]=v,t[55]=ue):ue=t[55];let K;t[56]!==B||t[57]!==V||t[58]!==H||t[59]!==ue?(K=(0,$.jsxs)(`span`,{className:`flex items-center gap-1`,children:[B,V,H,ue]}),t[56]=B,t[57]=V,t[58]=H,t[59]=ue,t[60]=K):K=t[60];let q;t[61]!==K||t[62]!==v?(q=(0,$.jsxs)(k,{closeOnClick:!1,onClick:St,className:`justify-between`,disabled:v,children:[R,K]}),t[61]=K,t[62]=v,t[63]=q):q=t[63];let de,fe,pe,me;t[64]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,$.jsx)(_,{}),fe=(0,$.jsx)(k,{onClick:bt,children:`Clear cookies`}),pe=(0,$.jsx)(k,{onClick:vt,children:`Clear cache`}),me=(0,$.jsx)(_,{}),t[64]=de,t[65]=fe,t[66]=pe,t[67]=me):(de=t[64],fe=t[65],pe=t[66],me=t[67]);let J;t[68]===Symbol.for(`react.memo_cache_sentinel`)?(J=(0,$.jsx)(k,{onClick:()=>g(!0),children:`Import from Chrome…`}),t[68]=J):J=t[68];let Y;t[69]!==N||t[70]!==oe||t[71]!==q||t[72]!==D||t[73]!==j||t[74]!==re?(Y=(0,$.jsxs)(w,{children:[T,(0,$.jsxs)(M,{align:`end`,sideOffset:6,className:`min-w-56`,children:[D,j,re,N,oe,L,q,de,fe,pe,me,J]})]}),t[69]=N,t[70]=oe,t[71]=q,t[72]=D,t[73]=j,t[74]=re,t[75]=Y):Y=t[75];let X;t[76]===h?X=t[77]:(X=(0,$.jsx)(ht,{open:h,onOpenChange:g}),t[76]=h,t[77]=X);let he;return t[78]!==Y||t[79]!==X?(he=(0,$.jsxs)($.Fragment,{children:[Y,X]}),t[78]=Y,t[79]=X,t[80]=he):he=t[80],he}function vt(){G.clearCache().catch(yt)}function yt(){}function bt(){G.clearCookies().catch(xt)}function xt(){}function St(e){return e.preventDefault()}function Ct(e){return(0,$.jsx)(j,{value:e.value,children:e.label},e.value)}function wt(){}function Tt(){}function Et(e){return F[e]||(e.length>0?e:`Network error`)}function Dt(e){let t=(0,Z.c)(32),{url:n,code:r,description:i,onReload:a}=e,[o,s]=(0,Q.useState)(!1),c;t[0]===n?c=t[1]:(c=At(n)??n,t[0]=n,t[1]=c);let l=c,u;t[2]===i?u=t[3]:(u=Et(i),t[2]=i,t[3]=u);let d=u,f;t[4]!==r||t[5]!==i?(f=i.length>0?i:`ERR_${Math.abs(r)||`FAILED`}`,t[4]=r,t[5]=i,t[6]=f):f=t[6];let p=f,m,h;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(kt,{className:`mb-6 size-12 text-muted-foreground/70`}),h=(0,$.jsx)(`h1`,{className:`mb-3 text-2xl font-semibold leading-tight text-foreground`,children:`This site can’t be reached`}),t[7]=m,t[8]=h):(m=t[7],h=t[8]);let g;t[9]===l?g=t[10]:(g=(0,$.jsx)(`span`,{className:`font-semibold text-foreground`,children:l}),t[9]=l,t[10]=g);let _;t[11]!==d||t[12]!==g?(_=(0,$.jsxs)(`p`,{className:`text-sm leading-relaxed text-muted-foreground`,children:[g,`: `,d,`.`]}),t[11]=d,t[12]=g,t[13]=_):_=t[13];let v;t[14]===o?v=t[15]:(v=o?(0,$.jsxs)(`div`,{className:`mt-6 rounded-lg border border-border bg-muted/40 p-4 text-sm`,children:[(0,$.jsx)(`p`,{className:`mb-2 font-medium text-foreground`,children:`Try:`}),(0,$.jsxs)(`ul`,{className:`list-disc space-y-1 pl-5 text-muted-foreground`,children:[(0,$.jsx)(`li`,{children:`Checking your connection`}),(0,$.jsx)(`li`,{children:`Confirming the dev server is running`}),(0,$.jsx)(`li`,{children:`Checking the proxy and the firewall`})]})]}):null,t[14]=o,t[15]=v);let y;t[16]===p?y=t[17]:(y=(0,$.jsx)(`div`,{className:`mt-8 text-xs uppercase tracking-wide text-muted-foreground/70`,children:p}),t[16]=p,t[17]=y);let b;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(b=()=>s(Ot),t[18]=b):b=t[18];let ee=o?`Hide details`:`Details`,x;t[19]===ee?x=t[20]:(x=(0,$.jsx)(O,{type:`button`,variant:`outline`,size:`sm`,onClick:b,children:ee}),t[19]=ee,t[20]=x);let S;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,$.jsx)(`div`,{className:`flex-1`}),t[21]=S):S=t[21];let C;t[22]===a?C=t[23]:(C=(0,$.jsx)(O,{type:`button`,size:`sm`,onClick:a,children:`Reload`}),t[22]=a,t[23]=C);let w;t[24]!==x||t[25]!==C?(w=(0,$.jsxs)(`div`,{className:`mt-auto flex items-center gap-2 pt-8`,children:[x,S,C]}),t[24]=x,t[25]=C,t[26]=w):w=t[26];let T;return t[27]!==w||t[28]!==_||t[29]!==v||t[30]!==y?(T=(0,$.jsx)(`div`,{className:`relative flex h-full min-h-0 w-full overflow-y-auto bg-background`,children:(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-1 flex-col px-8 py-12 sm:py-16`,children:[m,h,_,v,y,w]})}),t[27]=w,t[28]=_,t[29]=v,t[30]=y,t[31]=T):T=t[31],T}function Ot(e){return!e}function kt(e){let t=(0,Z.c)(5),{className:n}=e,r,i,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(`path`,{d:`M16 12 L48 12 L48 52 L16 52 Z`}),i=(0,$.jsx)(`path`,{d:`M22 22 L42 22 M22 30 L36 30 M22 38 L40 38`,strokeLinecap:`round`}),a=(0,$.jsx)(`path`,{d:`M52 8 L12 56`,strokeLinecap:`round`}),t[0]=r,t[1]=i,t[2]=a):(r=t[0],i=t[1],a=t[2]);let o;return t[3]===n?o=t[4]:(o=(0,$.jsxs)(`svg`,{viewBox:`0 0 64 64`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,className:n,children:[r,i,a]}),t[3]=n,t[4]=o),o}function At(e){try{return new URL(e).host}catch{return null}}function jt(e){let t=e.toLowerCase();return t.includes(`mac`)?`Reveal in Finder`:t.includes(`win`)?`Reveal in File Explorer`:`Reveal in Files`}var Mt=120,Nt=220,Pt=4,Ft=90,It=.08,Lt=.5;function Rt(e){let[t,n]=(0,Q.useState)(0),r=(0,Q.useRef)(0);return r.current=t,(0,Q.useEffect)(()=>{if(!e){if(r.current===0)return;n(100);let e=window.setTimeout(()=>n(0),Nt);return()=>window.clearTimeout(e)}n(e=>e>0&&e<95?e:Pt);let t=window.setInterval(()=>{let e=r.current;if(e>=Ft)return;let t=Ft-e,i=Math.max(Lt,t*It);n(Math.min(Ft,e+i))},Mt);return()=>window.clearInterval(t)},[e]),t}var zt=class extends S()(`PreviewSessionThreadKeyParseError`,{threadKey:m}){get message(){return`Invalid scoped preview thread key: ${this.threadKey}`}},Bt=b(e=>{let t=d(e);if(t===null)throw new zt({threadKey:e});let n=ie.list({environmentId:t.environmentId,input:{threadId:t.threadId}}),r=ie.events({environmentId:t.environmentId,input:{}});return re(e=>{let a=!1,o=0,s=e=>{i(e)&&P(t,e.value)},c=r=>{if(!i(r)||r.value.threadId!==t.threadId)return;let a=ae(t).serverEpoch;if(a!==null&&a!==r.value.serverEpoch){e.refresh(n);return}N(t,r.value)};e.addFinalizer(()=>{a=!0});let l=e.once(r);e.subscribe(n,e=>{s(e)}),e.subscribe(r,e=>{o+=1,c(e)}),queueMicrotask(()=>{a||(e.refresh(n),o===0&&c(l))})}).pipe(x(1e3),v(`preview:session-sync:${e}`))});function Vt(e){let t=(0,Z.c)(2),n;t[0]===e?n=t[1]:(n=Bt(u(e)),t[0]=e,t[1]=n),h(n)}var Ht=1500,Ut=.001;function Wt(e){let t=(0,Z.c)(11),{zoomFactor:n}=e,[r,i]=(0,Q.useState)(!1),a=(0,Q.useRef)(n),o=(0,Q.useRef)(null),s,c;t[0]===n?(s=t[1],c=t[2]):(s=()=>{if(!(Math.abs(a.current-n)<Ut))return a.current=n,i(!0),o.current!==null&&window.clearTimeout(o.current),o.current=window.setTimeout(()=>{i(!1),o.current=null},Ht),()=>{o.current!==null&&(window.clearTimeout(o.current),o.current=null)}},c=[n],t[0]=n,t[1]=s,t[2]=c),(0,Q.useEffect)(s,c);let l;t[3]===n?l=t[4]:(l=Math.round(n*100),t[3]=n,t[4]=l);let u=`${l}%`,d=!r,p=r?`opacity-100 translate-y-0`:`opacity-0 -translate-y-1`,m;t[5]===p?m=t[6]:(m=f(`pointer-events-none absolute top-3 right-3 z-20 select-none rounded-full border border-border/70 bg-popover/95 px-2.5 py-1 text-xs font-medium text-foreground shadow-md/10 backdrop-blur transition-all duration-200 ease-out`,p),t[5]=p,t[6]=m);let h;return t[7]!==u||t[8]!==d||t[9]!==m?(h=(0,$.jsx)(`div`,{"aria-hidden":d,className:m,children:u}),t[7]=u,t[8]=d,t[9]=m,t[10]=h):h=t[10],h}function Gt(e,t){return e?1:t===`human`?.18:.35}var Kt=700;function qt(e){let t=(0,Z.c)(9),{tabId:n,zoomFactor:r,controller:i}=e,a;t[0]===n?a=t[1]:(a=e=>e.byTabId[n]??null,t[0]=n,t[1]=a);let o=Oe(a),s;t[2]===n?s=t[3]:(s=e=>e.byTabId[n]?.content??null,t[2]=n,t[3]=s);let c=U(s);if(!o)return null;let l;return t[4]!==c||t[5]!==i||t[6]!==o||t[7]!==r?(l=(0,$.jsx)(Jt,{event:o,content:c,zoomFactor:r,controller:i},o.sequence),t[4]=c,t[5]=i,t[6]=o,t[7]=r,t[8]=l):l=t[8],l}function Jt(e){let t=(0,Z.c)(15),{event:n,content:r,zoomFactor:i,controller:a}=e,[o,s]=(0,Q.useState)(!0),c,l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>{let e=window.setTimeout(()=>s(!1),Kt);return()=>window.clearTimeout(e)},l=[],t[0]=c,t[1]=l):(c=t[0],l=t[1]),(0,Q.useEffect)(c,l);let u;t[2]!==o||t[3]!==a?(u=Gt(o,a),t[2]=o,t[3]=a,t[4]=u):u=t[4];let d=`translate3d(${n.x*i*(r?.scale??1)+(r?.x??0)-(r?.scrollLeft??0)}px, ${n.y*i*(r?.scale??1)+(r?.y??0)-(r?.scrollTop??0)}px, 0)`,f;t[5]!==u||t[6]!==d?(f={opacity:u,transform:d},t[5]=u,t[6]=d,t[7]=f):f=t[7];let p;t[8]!==n.phase||t[9]!==n.sequence?(p=n.phase===`click`?(0,$.jsx)(`span`,{className:`absolute left-0.5 top-0.5 size-4 animate-status-ping rounded-full bg-primary/25 motion-reduce:animate-none`},n.sequence):null,t[8]=n.phase,t[9]=n.sequence,t[10]=p):p=t[10];let m;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(Me,{className:`relative size-5 -translate-x-0.5 -translate-y-0.5 fill-background text-primary drop-shadow-sm`,strokeWidth:2}),t[11]=m):m=t[11];let h;return t[12]!==f||t[13]!==p?(h=(0,$.jsxs)(`div`,{className:`pointer-events-none absolute left-0 top-0 z-40 transition-[transform,opacity] duration-150 ease-out motion-reduce:transition-none`,style:f,"aria-hidden":`true`,"data-agent-browser-cursor":!0,children:[p,m]}),t[12]=f,t[13]=p,t[14]=h):h=t[14],h}var Yt=typeof window>`u`?null:V();function Xt({threadRef:e,tabId:t,configuredUrls:n,visible:r}){let[i,o]=(0,Q.useState)(void 0),[s,c]=(0,Q.useState)(!1),l=Re(),d=(0,Q.useRef)(!1),f=(0,Q.useRef)(!0),p=L(e),m=Y(t=>fe(t.byThreadKey,e)),h=ne(e=>e.addPreviewAnnotation),g=ne(e=>e.addImage),_=te(e.environmentId),v=C(e.environmentId),y=E(ie.open),b=E(ie.resize,`preview viewport resize`),{resolvedTheme:ee}=ce();Vt(e),(0,Q.useEffect)(()=>(f.current=!0,()=>{f.current=!1}),[]);let x=t??p.activeTabId,S=x?ge(e,p.serverEpoch,x):null,w=x&&S?l.has(S)?S:He(e,x):null,O=x?p.sessions[x]??null:null,k=x?p.desktopByTabId[x]??null:null;(0,Q.useEffect)(()=>{let e=G;if(!(!e||!S||!k?.pictureInPicture))return e.pictureInPicture.setVisible(S,r),()=>{e.pictureInPicture.setVisible(S,!1)}},[k?.pictureInPicture,S,r]);let A=O?.navStatus??{_tag:`Idle`},j=A._tag===`Idle`?``:A.url,M=k?.loading??A._tag===`Loading`,re=k?.canGoBack??O?.canGoBack??!1,N=k?.canGoForward??O?.canGoForward??!1,ae=A._tag===`Idle`,P=A._tag===`LoadFailed`,F=W(O),I=k?.controller??`none`,V=Rt(M),le=j&&_&&v?rt({url:j,environmentLabel:_.label,environmentHttpBaseUrl:v})??void 0:void 0,H=O?.viewport??T,ue=U(e=>S?e.byTabId[S]?.rect??null:null),q=(0,Q.useCallback)(async t=>{S&&G?(await G.navigate(S,t),se(e,t)):await K({openPreview:y,threadRef:e,url:t})},[y,S,e]),de=(0,Q.useCallback)(async e=>{try{await q(_e(e))}catch{}},[q]),pe=(0,Q.useCallback)(async t=>{try{await q(me(e.environmentId,t))}catch{}},[q,e.environmentId]),J=(0,Q.useCallback)(()=>{G&&S&&G.refresh(S)},[S]),X=(0,Q.useCallback)(()=>{G&&S&&G.zoomIn(S)},[S]),he=(0,Q.useCallback)(()=>{G&&S&&G.zoomOut(S)},[S]),ve=(0,Q.useCallback)(()=>{G&&S&&G.resetZoom(S)},[S]),ye=(0,Q.useCallback)(async t=>{if(!x)return;let n=await b({environmentId:e.environmentId,input:{threadId:e.threadId,tabId:x,viewport:t}});if(n._tag===`Failure`){let e=D(n);throw R.add({type:`error`,title:`Unable to resize browser viewport`,description:e instanceof Error?e.message:`An error occurred.`}),e}oe(e,n.value)},[b,x,e]),be=()=>{if(!S)return;if(H._tag!==`fill`){We(S,T).catch(()=>void 0);return}let e=ue?Ue(ue,k?.zoomFactor):{width:1024,height:768};We(S,{_tag:`freeform`,...e}).catch(()=>void 0)};(0,Q.useEffect)(()=>{if(S)return Le(S,ye)},[ye,S]);let xe=(0,Q.useCallback)(()=>{G&&S&&G.goBack(S)},[S]),Se=(0,Q.useCallback)(()=>{G&&S&&G.goForward(S)},[S]),we=(0,Q.useCallback)(()=>{!Yt||!j||Yt.shell.openExternal(j).catch(()=>void 0)},[j]),Te=(0,Q.useCallback)(()=>{if(x){if(m?.tabId===x){Y.getState().close(e);return}Y.getState().open(e,x),a.getState().close(e)}},[m?.tabId,x,e]),Ee=(0,Q.useCallback)(()=>{!G||!S||(k?.pictureInPicture?G.pictureInPicture.close:G.pictureInPicture.open)(S).catch(e=>{R.add({type:`error`,title:`Unable to update popped-out preview`,description:e instanceof Error?e.message:`An error occurred.`})})},[k?.pictureInPicture,S]),De=(0,Q.useCallback)(t=>{if(!G||!S||!x)return;let n=G;if(w){Ce(w).then(e=>{if(!e)return;let t=!1,r,i=()=>{if(!navigator.clipboard?.writeText){R.update(r,z({type:`error`,title:`Unable to copy recording path`,description:`Clipboard API unavailable.`,actionProps:a}));return}navigator.clipboard.writeText(e.path).then(()=>{t=!0,o(),window.setTimeout(()=>{t=!1,o()},2e3)},e=>{R.update(r,z({type:`error`,title:`Unable to copy recording path`,description:e instanceof Error?e.message:`An error occurred.`,actionProps:a}))})},a={children:jt(navigator.platform),onClick:()=>void n.revealArtifact(e.path)},o=()=>{R.update(r,z({type:`success`,title:`Recording saved`,actionProps:a,data:{secondaryActionProps:{children:t?`Copied!`:`Copy path`,disabled:t,onClick:i},secondaryActionVariant:`outline`}}))};r=R.add(z({type:`success`,title:`Recording saved`,actionProps:a,data:{secondaryActionProps:{children:`Copy path`,onClick:i},secondaryActionVariant:`outline`}}))},e=>{R.add({type:`error`,title:`Unable to stop recording`,description:e instanceof Error?e.message:`An error occurred.`})});return}if(t){Ne(S,e,x).catch(e=>{R.add({type:`error`,title:`Unable to start recording`,description:e instanceof Error?e.message:`An error occurred.`})});return}n.captureScreenshot(S).then(e=>{let t={children:jt(navigator.platform),onClick:()=>void n.revealArtifact(e.path)},r=!1,i=!1,a,o=(e=`success`,n=`Screenshot saved`,o)=>{R.update(a,z({type:e,title:n,description:o,actionProps:{children:i?`Copied!`:`Copy image`,disabled:i,onClick:c},data:{additionalActions:[{id:`copy-path`,props:{children:r?`Copied!`:`Copy path`,disabled:r,onClick:s}}],secondaryActionProps:{...t},secondaryActionVariant:`outline`}}))},s=()=>{if(!navigator.clipboard?.writeText){o(`error`,`Unable to copy screenshot path`,`Clipboard API unavailable.`);return}navigator.clipboard.writeText(e.path).then(()=>{r=!0,o(),window.setTimeout(()=>{r=!1,o()},2e3)},e=>{o(`error`,`Unable to copy screenshot path`,e instanceof Error?e.message:`An error occurred.`)})},c=()=>{n.copyArtifactToClipboard(e.path).then(()=>{i=!0,o(),window.setTimeout(()=>{i=!1,o()},2e3)},e=>{o(`error`,`Unable to copy screenshot`,e instanceof Error?e.message:`An error occurred.`)})};a=R.add(z({type:`success`,title:`Screenshot saved`,actionProps:{children:`Copy image`,onClick:c},data:{additionalActions:[{id:`copy-path`,props:{children:`Copy path`,onClick:s}}],secondaryActionProps:{...t},secondaryActionVariant:`outline`}}))},e=>{R.add({type:`error`,title:`Unable to capture screenshot`,description:e instanceof Error?e.message:`An error occurred.`})})},[w,S,x,e]),Oe=(0,Q.useCallback)(()=>{if(!G||!S)return;if(d.current){G.cancelPickElement(S).catch(()=>void 0);return}let t=typeof document<`u`?document.activeElement:null;d.current=!0,c(!0),(async()=>{try{let t=await G.pickElement(S);if(!t)return;h(e,t);let n=await Ie(t);n&&t.screenshot&&g(e,{type:`image`,id:t.id,name:n.name,mimeType:n.type,sizeBytes:n.size,previewUrl:t.screenshot.dataUrl,file:n})}catch{}finally{if(d.current=!1,f.current&&c(!1),t&&t.isConnected&&typeof t.focus==`function`)try{t.focus({preventScroll:!0})}catch{}}})()},[g,h,S,e]);return(0,Q.useEffect)(()=>{let e=B(j,ee);e&&q(e).catch(()=>void 0)},[q,ee,j]),(0,Q.useEffect)(()=>()=>{d.current&&(d.current=!1,G&&S&&G.cancelPickElement(S).catch(()=>void 0),f.current&&c(!1))},[S]),(0,Q.useEffect)(()=>{if(r)return Ge(e=>{switch(e){case`refresh`:J();return;case`focus-url`:o(e=>(e??0)+1);return;case`zoom-in`:X();return;case`zoom-out`:he();return;case`reset-zoom`:ve();return;case`toggle-panel`:return}})},[J,ve,X,he,r]),(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-background`,"data-thread-key":u(e),children:[(0,$.jsx)(tt,{url:j,displayUrl:le,loading:M,loadProgress:V,canGoBack:re,canGoForward:N,refreshDisabled:ae,focusUrlNonce:i,onBack:xe,onForward:Se,onRefresh:J,onSubmit:e=>void de(e),onOpenInBrowser:x?we:void 0,onCapture:G&&x?De:void 0,captureDisabled:!k||P,recording:w!==null,onPictureInPicture:G&&x?Te:void 0,pictureInPicture:m?.tabId===x,pictureInPictureDisabled:!k?.hasWebContents||P,onPickElement:G&&x?Oe:void 0,pickActive:s,pickDisabled:!x||P,pickDisabledReason:P?`Page didn't load — pick unavailable until the page renders`:void 0,trailingActions:G?(0,$.jsx)(_t,{tabId:S,hasWebContents:k?.hasWebContents??!1,zoomFactor:k?.zoomFactor??1,colorScheme:k?.colorScheme??`system`,deviceToolbarVisible:H._tag!==`fill`,onToggleDeviceToolbar:be,nativePictureInPicture:k?.pictureInPicture??!1,onNativePictureInPicture:Ee}):null}),(0,$.jsxs)(`div`,{className:`relative min-h-0 flex-1 overflow-hidden`,children:[S&&O&&!F?(0,$.jsx)(Ye,{tabId:S,visible:r&&!P,className:`absolute inset-0 h-full w-full`},S):null,F?(0,$.jsx)(pt,{environmentId:e.environmentId,configuredUrls:n,recentlySeenUrls:p.recentlySeenUrls,onOpenUrl:e=>void pe(e)}):null,O&&k?(0,$.jsx)(Wt,{zoomFactor:k.zoomFactor}):null,S&&k&&!F&&!P?(0,$.jsx)(qt,{tabId:S,zoomFactor:k.zoomFactor,controller:I}):null,I===`none`?null:(0,$.jsx)(`div`,{className:`pointer-events-none absolute left-3 top-3 z-40 rounded-full border border-border/70 bg-background/90 px-2.5 py-1 text-[11px] font-medium shadow-sm backdrop-blur`,children:I===`agent`?`Agent controlling browser`:`Human control`}),A._tag===`LoadFailed`?(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,children:(0,$.jsx)(Dt,{url:A.url,code:A.code,description:A.description,onReload:J})}):null]})]})}function Zt(e){let t=(0,Z.c)(13),{mode:n,threadRef:r,tabId:i,configuredUrls:a,visible:o}=e;if(!I()){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col items-center justify-center gap-3 p-8 text-center`,children:(0,$.jsx)(`p`,{className:`max-w-sm text-sm text-muted-foreground`,children:`Preview is only available in the P4 Code desktop app.`})}),t[0]=e):e=t[0];let r;return t[1]===n?r=t[2]:(r=(0,$.jsx)(ye,{mode:n,children:e}),t[1]=n,t[2]=r),r}let s;t[3]===i?s=t[4]:(s=i===void 0?{}:{tabId:i},t[3]=i,t[4]=s);let c;t[5]!==a||t[6]!==s||t[7]!==r||t[8]!==o?(c=(0,$.jsx)(Xt,{threadRef:r,...s,configuredUrls:a,visible:o}),t[5]=a,t[6]=s,t[7]=r,t[8]=o,t[9]=c):c=t[9];let l;return t[10]!==n||t[11]!==c?(l=(0,$.jsx)(ye,{mode:n,children:c}),t[10]=n,t[11]=c,t[12]=l):l=t[12],l}export{Zt as PreviewPanel};
2
+ //# sourceMappingURL=PreviewPanel-B5bhhzbx.js.map
@@ -0,0 +1,251 @@
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{n as t,r as n,t as r}from"./compiler-runtime-CLAvuQ-D.js";import{Di as i,En as a,F as o,Fs as s,Ic as c,Is as l,L as u,Ls as d,Nc as f,Oi as p,P as m,Rs as h,js as ee,l as g,mi as _,n as v,nl as y,t as b,ui as x,vi as S,yi as C}from"./textarea-CVN2-Kkx.js";import{ct as w,ft as T,ht as E,x as D}from"./previewAssetResource-J1WeeXS-.js";import{a as O,c as k,n as A,o as j,r as M,s as te,t as ne}from"./toggle-group-Bs73JkcK.js";import{Ai as N,Cr as re,G as ie,H as ae,J as oe,K as se,Mr as ce,Q as P,Tr as le,U as ue,W as de,X as fe,Y as pe,Zr as me,at as he,dt as ge,ei as _e,ft as F,gi as ve,h as ye,hi as be,ji as xe,ki as Se,lt as Ce,ot as we,pt as Te,q as Ee,st as De,ti as Oe,ui as ke,ut as Ae,wr as je,yi as Me}from"./index-B4Nxc2w0.js";var Ne=h(`message-square-off`,[[`path`,{d:`M19 19H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.7.7 0 0 1 2 21.286V5a2 2 0 0 1 1.184-1.826`,key:`1wyg69`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M8.656 3H20a2 2 0 0 1 2 2v11.344`,key:`mhl4k6`}]]),I=e(n(),1),Pe=new Set([`pnpm-lock.yaml`,`yarn.lock`,`package-lock.json`,`bun.lockb`,`Cargo.lock`,`go.sum`,`composer.lock`,`Gemfile.lock`]),Fe=new Set([`__snapshots__`,`__generated__`,`dist`,`build`,`vendor`]),L=new Set([`__tests__`,`tests`,`test`]),R=[`.ts`,`.tsx`,`.js`,`.jsx`,`.mjs`,`.cjs`];function Ie(e){let t=e.split(`/`),n=t.at(-1)??``;return Pe.has(n)||n.endsWith(`.snap`)||n.endsWith(`.min.js`)||n.endsWith(`.min.css`)||/\.generated\./.test(n)||t.slice(0,-1).some(e=>Fe.has(e))?`generated`:/\.(?:test|spec)\./.test(n)||t.slice(0,-1).some(e=>L.has(e))?`test`:`source`}function Le(e){let t=e.lastIndexOf(`.`);return t>e.lastIndexOf(`/`)?e.slice(0,t):e}function Re(e){return Le(e.split(`/`).at(-1)??``)}function ze(e,t){let n=e.split(`/`).slice(0,-1);for(let e of t.split(`/`))e===`.`||e===``||(e===`..`?n.pop():n.push(e));return n.join(`/`)}var Be=/(?:\bfrom|\bimport|\brequire\s*\()\s*\(?\s*["']([^"']+)["']/g;function Ve(e,t,n,r){let i=new Set;for(let a of t){Be.lastIndex=0;let t=Be.exec(a);for(;t!==null;){let o=t[1]??``,s=o.startsWith(`.`)?ze(e,o):o,c=R.find(e=>s.endsWith(e)),l=c===void 0?s:s.slice(0,-c.length),u=n.get(l)??n.get(`${l}/index`)??r.get(Re(l));u!==void 0&&u!==e&&i.add(u),t=Be.exec(a)}}return i}function He(e,t){let n=new Set(e),r=[],i=[...e].sort((e,t)=>e.localeCompare(t));for(;n.size>0;){let e=i.filter(e=>n.has(e)),a=e.find(e=>[...t.get(e)??[]].every(e=>!n.has(e)))??e[0];n.delete(a),r.push(a)}return r}function z(e){return(e.split(`/`).at(-1)??``).replace(/\.(?:test|spec)\..*$/,``).replace(/\.[^.]+$/,``)}function Ue(e){let t=new Map;for(let n of e)t.set(F(n),n);let n=new Map;for(let e of t.keys())n.set(e,Ie(e));let r=[...t.keys()].filter(e=>n.get(e)===`source`),i=new Map,a=new Set,o=new Map;for(let e of r){i.set(Le(e),e);let t=Re(e);o.has(t)&&a.add(t),o.set(t,e)}for(let e of a)o.delete(e);let s=new Map;for(let e of r){let n=t.get(e);s.set(e,Ve(e,[...n.additionLines,...n.deletionLines],i,o))}let c=He(r,s),l=new Map;c.forEach((e,t)=>{let n=Re(e);l.has(n)||l.set(n,t)});let u=[...t.keys()].filter(e=>n.get(e)===`test`).sort((e,t)=>(l.get(z(e))??2**53-1)-(l.get(z(t))??2**53-1)||e.localeCompare(t)),d=[...t.keys()].filter(e=>n.get(e)===`generated`).sort((e,t)=>e.localeCompare(t));return[...c,...u,...d].map(e=>t.get(e))}function We(e,t){return async n=>{let r=F(n),i=n.prevName?F({...n,name:n.prevName}):r,a=await e({changeType:n.type,oldPath:i,newPath:r}),o={name:r,contents:a.newContents,cacheKey:`${t}:new:${r}`};return n.type===`rename-pure`?{oldFile:null,newFile:o}:{oldFile:{name:i,contents:a.oldContents,cacheKey:`${t}:old:${i}`},newFile:o}}}function Ge(e,t){return We(async({changeType:n,oldPath:r,newPath:i})=>{let a=await e({environmentId:t.environmentId,input:{...t.reference,...t.commit===null?{}:{commit:t.commit},changeType:n,oldPath:r,newPath:i}});if(a._tag!==`Success`)throw y(a);return a.value},t.cacheKey)}var B=r();function V(e,t,n){return!n&&(e.metaKey||e.ctrlKey)&&e.key===`Enter`&&t.trim().length>0}var H=t();function Ke(e){let t=(0,B.c)(43),{kind:n,rangeLabel:r,text:i,onTextChange:a,onCancel:o,onComment:s,onDelete:c,placeholder:l,submitLabel:u,pending:d,secondaryAction:f}=e,p=l===void 0?`Add a comment…`:l,m=u===void 0?`Comment`:u,h=d===void 0?!1:d,[ee,g]=(0,I.useState)(``),_=n===`draft`&&!a?ee:i,v;t[0]===_?v=t[1]:(v=_.trim(),t[0]=_,t[1]=v);let y=v;if(n===`comment`){let e;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,H.jsx)(ve,{className:`mt-0.5 size-3.5 shrink-0 text-primary/70`,"aria-hidden":`true`}),t[2]=e):e=t[2];let n;t[3]===_?n=t[4]:(n=(0,H.jsx)(`p`,{className:`min-w-0 flex-1 whitespace-pre-wrap text-[13px] leading-5`,children:_}),t[3]=_,t[4]=n);let r;t[5]===c?r=t[6]:(r=c?(0,H.jsx)(x,{className:`-my-1 -mr-1 shrink-0 text-muted-foreground opacity-0 transition-opacity group-hover/comment:opacity-100 focus-visible:opacity-100 max-sm:opacity-100`,variant:`ghost`,size:`icon-xs`,"aria-label":`Delete comment`,onClick:c,children:(0,H.jsx)(_e,{className:`size-3`})}):null,t[5]=c,t[6]=r);let i;return t[7]!==n||t[8]!==r?(i=(0,H.jsxs)(`div`,{"data-diff-comment-annotation":!0,className:`group/comment flex min-w-0 items-start gap-2.5 border-s-2 border-primary/55 bg-primary/[0.045] px-3 py-2.5 font-sans text-foreground`,contentEditable:!1,onPointerDown:G,children:[e,n,r]}),t[7]=n,t[8]=r,t[9]=i):i=t[9],i}let S=`Comment on lines ${r}`,C;t[10]===a?C=t[11]:(C=e=>(a??g)(e.target.value),t[10]=a,t[11]=C);let w;t[12]!==o||t[13]!==s||t[14]!==h||t[15]!==y?(w=e=>{e.key===`Escape`&&(e.preventDefault(),o()),V(e,y,h)&&(e.preventDefault(),s(y))},t[12]=o,t[13]=s,t[14]=h,t[15]=y,t[16]=w):w=t[16];let T;t[17]!==_||t[18]!==p||t[19]!==S||t[20]!==C||t[21]!==w?(T=(0,H.jsx)(b,{autoFocus:!0,unstyled:!0,className:`relative inline-flex w-full rounded-md border border-border/50 bg-background/20 font-sans text-foreground transition-colors focus-within:border-border/70 [&_[data-slot=textarea]]:min-h-12 [&_[data-slot=textarea]]:cursor-text [&_[data-slot=textarea]]:px-2.5 [&_[data-slot=textarea]]:py-1.5 [&_[data-slot=textarea]]:font-sans [&_[data-slot=textarea]]:text-xs [&_[data-slot=textarea]]:leading-5 max-sm:[&_[data-slot=textarea]]:min-h-12`,size:`sm`,value:_,placeholder:p,"aria-label":S,onChange:C,onFocus:U,onKeyDown:w}),t[17]=_,t[18]=p,t[19]=S,t[20]=C,t[21]=w,t[22]=T):T=t[22];let E;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,H.jsx)(`span`,{className:`mr-auto text-[10px] text-muted-foreground/70`,children:`⌘/Ctrl Enter to send`}),t[23]=E):E=t[23];let D;t[24]===o?D=t[25]:(D=(0,H.jsx)(x,{className:`text-muted-foreground hover:text-foreground`,variant:`ghost`,size:`xs`,onClick:o,children:`Cancel`}),t[24]=o,t[25]=D);let O;t[26]!==f||t[27]!==y?(O=f?(0,H.jsxs)(x,{size:`xs`,variant:`outline`,disabled:!f.allowEmpty&&!y,onClick:()=>f.onAction(y),children:[f.icon,f.label]}):null,t[26]=f,t[27]=y,t[28]=O):O=t[28];let k=h||!y,A;t[29]!==s||t[30]!==y?(A=()=>s(y),t[29]=s,t[30]=y,t[31]=A):A=t[31];let j;t[32]!==m||t[33]!==k||t[34]!==A?(j=(0,H.jsx)(x,{size:`xs`,disabled:k,onClick:A,children:m}),t[32]=m,t[33]=k,t[34]=A,t[35]=j):j=t[35];let M;t[36]!==D||t[37]!==O||t[38]!==j?(M=(0,H.jsxs)(`div`,{className:`mt-1.5 flex items-center gap-1`,children:[E,D,O,j]}),t[36]=D,t[37]=O,t[38]=j,t[39]=M):M=t[39];let te;return t[40]!==M||t[41]!==T?(te=(0,H.jsxs)(`div`,{"data-diff-comment-annotation":!0,className:`px-3 py-2 font-sans text-foreground`,contentEditable:!1,onPointerDown:W,children:[T,M]}),t[40]=M,t[41]=T,t[42]=te):te=t[42],te}function U(e){let t=e.currentTarget.value.length;e.currentTarget.setSelectionRange(t,t)}function W(e){return e.stopPropagation()}function G(e){return e.stopPropagation()}var K=`${he}
2
+ :is(
3
+ [data-line],
4
+ [data-line-annotation],
5
+ [data-merge-conflict],
6
+ [data-merge-conflict-actions],
7
+ [data-no-newline]
8
+ )[data-selected-line] {
9
+ --diffs-line-bg: light-dark(
10
+ color-mix(
11
+ in lab,
12
+ var(--code-background) 88%,
13
+ color-mix(in srgb, var(--code-background) 50%, var(--diffs-modified-base))
14
+ ),
15
+ color-mix(
16
+ in lab,
17
+ var(--code-background) 80%,
18
+ color-mix(in srgb, var(--code-background) 70%, var(--diffs-modified-base))
19
+ )
20
+ ) !important;
21
+ }
22
+
23
+ :is([data-gutter-buffer], [data-column-number])[data-selected-line] {
24
+ --diffs-line-bg: light-dark(
25
+ color-mix(
26
+ in lab,
27
+ var(--code-background) 91%,
28
+ color-mix(in srgb, var(--code-background) 35%, var(--diffs-modified-base))
29
+ ),
30
+ color-mix(
31
+ in lab,
32
+ var(--code-background) 85%,
33
+ color-mix(in srgb, var(--code-background) 60%, var(--diffs-modified-base))
34
+ )
35
+ ) !important;
36
+ }
37
+
38
+ [data-indicators="bars"]
39
+ :is([data-column-number], [data-gutter-buffer="annotation"])[data-selected-line] {
40
+ position: relative;
41
+ }
42
+
43
+ [data-indicators="bars"]
44
+ :is([data-column-number], [data-gutter-buffer="annotation"])[data-selected-line]::before {
45
+ position: absolute !important;
46
+ inset-block: 0 !important;
47
+ inset-inline-start: 0 !important;
48
+ display: block !important;
49
+ width: 4px !important;
50
+ min-width: 4px !important;
51
+ max-width: 4px !important;
52
+ height: auto !important;
53
+ padding: 0 !important;
54
+ content: "" !important;
55
+ background-color: var(--diffs-modified-base) !important;
56
+ background-image: none !important;
57
+ }
58
+
59
+ [data-file-info] {
60
+ background-color: var(--code-background) !important;
61
+ border-block-color: transparent !important;
62
+ color: var(--code-foreground) !important;
63
+ }
64
+
65
+ [data-diffs-header] {
66
+ position: sticky !important;
67
+ top: 0;
68
+ z-index: 4;
69
+ background-color: var(--code-background) !important;
70
+ border-bottom-color: transparent !important;
71
+ align-items: center !important;
72
+ font-family: var(--font-sans) !important;
73
+ font-size: 12px !important;
74
+ line-height: 1 !important;
75
+ min-height: 32px !important;
76
+ padding-block: 6px !important;
77
+ padding-inline: 8px 12px !important;
78
+ }
79
+
80
+ [data-diffs-header]:hover {
81
+ /* A native scrollbar gutter cannot be painted by descendants. Use an inset edge cue instead
82
+ of a full-width band that would look accidentally clipped at the gutter. */
83
+ background-color: var(--code-background) !important;
84
+ box-shadow: inset 3px 0 color-mix(in srgb, var(--code-foreground) 24%, transparent);
85
+ }
86
+
87
+ :is([data-separator="line-info"], [data-separator="line-info-basic"]) {
88
+ height: 24px !important;
89
+ margin-block: 0 !important;
90
+ background-color: var(--code-background) !important;
91
+ }
92
+
93
+ :is([data-separator="line-info"], [data-separator="line-info-basic"])
94
+ [data-separator-wrapper] {
95
+ padding-inline: 8px 12px !important;
96
+ background-color: transparent !important;
97
+ }
98
+
99
+ :is([data-separator="line-info"], [data-separator="line-info-basic"])
100
+ [data-separator-content] {
101
+ gap: 8px;
102
+ padding-inline: 0 !important;
103
+ background-color: transparent !important;
104
+ color: color-mix(in srgb, var(--code-foreground) 52%, var(--code-background)) !important;
105
+ font-family: var(--font-sans) !important;
106
+ font-size: 11px !important;
107
+ text-decoration: none !important;
108
+ }
109
+
110
+ :is([data-separator="line-info"], [data-separator="line-info-basic"])
111
+ [data-unmodified-lines] {
112
+ display: flex !important;
113
+ min-width: 0;
114
+ flex: 1 1 auto;
115
+ align-items: center;
116
+ gap: 8px;
117
+ }
118
+
119
+ :is([data-separator="line-info"], [data-separator="line-info-basic"])[data-expand-index]
120
+ [data-unmodified-lines] {
121
+ cursor: pointer;
122
+ }
123
+
124
+ :is([data-separator="line-info"], [data-separator="line-info-basic"])
125
+ [data-unmodified-lines]::before,
126
+ :is([data-separator="line-info"], [data-separator="line-info-basic"])
127
+ [data-unmodified-lines]::after {
128
+ width: auto;
129
+ height: 1px;
130
+ flex: 1 1 auto;
131
+ content: "";
132
+ background-color: color-mix(in srgb, var(--code-background) 92%, var(--code-foreground));
133
+ }
134
+
135
+ :is([data-separator="line-info"], [data-separator="line-info-basic"])[data-expand-index]
136
+ [data-separator-wrapper] {
137
+ grid-template-columns: 0 minmax(0, 1fr) !important;
138
+ }
139
+
140
+ :is([data-separator="line-info"], [data-separator="line-info-basic"])[data-expand-index]
141
+ [data-separator-content] {
142
+ grid-column: 2 !important;
143
+ }
144
+
145
+ /* Visually hidden rather than display: none so the expand action stays keyboard-reachable. */
146
+ :is([data-separator="line-info"], [data-separator="line-info-basic"])
147
+ [data-expand-button] {
148
+ position: absolute !important;
149
+ width: 1px !important;
150
+ height: 1px !important;
151
+ margin: -1px !important;
152
+ padding: 0 !important;
153
+ overflow: hidden !important;
154
+ clip-path: inset(50%) !important;
155
+ border: 0 !important;
156
+ white-space: nowrap !important;
157
+ }
158
+
159
+ :is([data-separator="line-info"], [data-separator="line-info-basic"]):has(
160
+ [data-expand-button]
161
+ )
162
+ [data-separator-content] {
163
+ cursor: pointer;
164
+ }
165
+
166
+ :is([data-separator="line-info"], [data-separator="line-info-basic"]):has(
167
+ [data-expand-button]
168
+ ):is(:hover, :focus-within)
169
+ [data-separator-content] {
170
+ color: color-mix(in srgb, var(--code-foreground) 76%, var(--code-background)) !important;
171
+ }
172
+
173
+ :is([data-separator="line-info"], [data-separator="line-info-basic"]):has(
174
+ [data-expand-button]
175
+ ):is(:hover, :focus-within)
176
+ [data-unmodified-lines]::before,
177
+ :is([data-separator="line-info"], [data-separator="line-info-basic"]):has(
178
+ [data-expand-button]
179
+ ):is(:hover, :focus-within)
180
+ [data-unmodified-lines]::after {
181
+ background-color: color-mix(in srgb, var(--code-background) 84%, var(--code-foreground));
182
+ }
183
+
184
+ [data-diffs-header] [data-header-content] {
185
+ align-items: center !important;
186
+ line-height: 1 !important;
187
+ }
188
+
189
+ [data-diffs-header] [data-metadata] {
190
+ align-items: center !important;
191
+ line-height: 1 !important;
192
+ font-variant-numeric: tabular-nums;
193
+ }
194
+
195
+ [data-diffs-header] [data-additions-count],
196
+ [data-diffs-header] [data-deletions-count] {
197
+ font-family: var(--font-mono) !important;
198
+ font-size: 11px !important;
199
+ font-variant-numeric: tabular-nums;
200
+ line-height: 1 !important;
201
+ }
202
+
203
+ [data-diffs-header] [data-change-icon],
204
+ [data-diffs-header] [data-rename-icon] {
205
+ display: block;
206
+ flex-shrink: 0;
207
+ }
208
+
209
+ [data-title] {
210
+ cursor: pointer;
211
+ transition:
212
+ color 120ms ease,
213
+ text-decoration-color 120ms ease;
214
+ text-decoration: underline;
215
+ text-decoration-color: transparent;
216
+ text-underline-offset: 2px;
217
+ font-family: var(--font-sans) !important;
218
+ }
219
+
220
+ [data-title]:hover {
221
+ color: color-mix(in srgb, var(--code-foreground) 84%, var(--primary)) !important;
222
+ text-decoration-color: currentColor;
223
+ }
224
+
225
+ /* Expanding a file mounts its body all at once; easing it in matches the 200ms the app's
226
+ collapsibles take. Appearance only — the viewer owns geometry, so height cannot animate.
227
+ Departing content cuts, the same one-way rule the pull request chrome fold follows. */
228
+ [data-diff],
229
+ [data-file] {
230
+ transition: opacity 200ms ease-out;
231
+ }
232
+
233
+ @starting-style {
234
+ [data-diff],
235
+ [data-file] {
236
+ opacity: 0;
237
+ }
238
+ }
239
+
240
+ @media (prefers-reduced-motion: reduce) {
241
+ [data-diff],
242
+ [data-file] {
243
+ transition: none;
244
+ }
245
+ }
246
+ `;function qe(e){let t=(0,B.c)(18),n,r,i,a,o;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4],o=t[5]):({options:r,viewerRef:o,className:n,unsafeCSSExtra:a,...i}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a,t[5]=o);let s;t[6]===o?s=t[7]:(s=o?{ref:o}:{},t[6]=o,t[7]=s);let c=n?`diff-render-surface outline-none ${n}`:`diff-render-surface outline-none`,l=a?`${K}\n${a}`:K,u,d;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(u={diffHeaderHeight:32,hunkSeparatorHeight:24,spacing:0,paddingTop:0,paddingBottom:0},d={paddingTop:0,paddingBottom:0,gap:0},t[8]=u,t[9]=d):(u=t[8],d=t[9]);let f;t[10]!==r||t[11]!==l?(f={...r,unsafeCSS:l,itemMetrics:u,layout:d},t[10]=r,t[11]=l,t[12]=f):f=t[12];let p;return t[13]!==i||t[14]!==s||t[15]!==c||t[16]!==f?(p=(0,H.jsx)(O,{...i,...s,className:c,options:f}),t[13]=i,t[14]=s,t[15]=c,t[16]=f,t[17]=p):p=t[17],p}var Je=`mx-3 my-2 rounded-xl border border-border/70 bg-background p-3 text-sm shadow-sm`;function Ye(e){return t=>{t.key===`Escape`&&e.onCancel&&(t.preventDefault(),e.onCancel()),V(t,e.value,e.pending)&&(t.preventDefault(),e.onSubmit())}}function Xe(e){let t=(0,B.c)(11),{comment:n,onRemove:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=p(Je,`border-dashed`),t[0]=i):i=t[0];let a,o;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,H.jsx)(be,{className:`size-3.5`}),o=(0,H.jsx)(`span`,{children:`Pending — sent when you submit the review`}),t[1]=a,t[2]=o):(a=t[1],o=t[2]);let s;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,H.jsx)(_e,{className:`size-3.5`}),t[3]=s):s=t[3];let c;t[4]===r?c=t[5]:(c=(0,H.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[a,o,(0,H.jsx)(x,{size:`icon-xs`,variant:`ghost`,className:`ml-auto`,"aria-label":`Discard this comment`,onClick:r,children:s})]}),t[4]=r,t[5]=c);let l;t[6]===n.body?l=t[7]:(l=(0,H.jsx)(`p`,{className:`mt-2 whitespace-pre-wrap leading-relaxed`,children:n.body}),t[6]=n.body,t[7]=l);let u;return t[8]!==c||t[9]!==l?(u=(0,H.jsxs)(`div`,{className:i,contentEditable:!1,onPointerDown:Ze,children:[c,l]}),t[8]=c,t[9]=l,t[10]=u):u=t[10],u}function Ze(e){return e.stopPropagation()}function Qe({thread:e,workspaceRoot:t,canReply:n,canResolve:r,canReact:i,environmentId:a,reference:o,pending:s,fixPending:c,fixLabel:l=`Fix in a thread`,onFix:u,onReply:d,canEditComment:f,onEditComment:p,onToggleResolved:m,onReacted:h}){let[ee,g]=(0,I.useState)(!e.isResolved),[_,v]=(0,I.useState)(!1),[y,S]=(0,I.useState)(``),[C,w]=(0,I.useState)(null),[T,D]=(0,I.useState)(!1),O=(0,I.useRef)(!1),k=async(e,t)=>{if(T)return;D(!0);let n=await p(e,t);D(!1),n&&w(null)},A=async()=>{let e=y.trim();if(!(e.length===0||s||O.current)){O.current=!0;try{await d(e)&&(S(``),v(!1))}finally{O.current=!1}}};return(0,H.jsxs)(`div`,{className:Je,contentEditable:!1,onPointerDown:e=>e.stopPropagation(),children:[(0,H.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[e.isResolved?(0,H.jsx)(E,{className:`size-3.5 text-emerald-600 dark:text-emerald-500`}):(0,H.jsx)(Se,{className:`size-3.5`}),(0,H.jsxs)(`button`,{type:`button`,className:`hover:text-foreground`,"aria-expanded":ee,onClick:()=>g(e=>!e),children:[e.isResolved?`Resolved`:`Open`,` · `,e.comments.length,` `,e.comments.length===1?`comment`:`comments`]}),e.isOutdated?(0,H.jsx)(`span`,{children:`outdated`}):null,u?(0,H.jsxs)(x,{size:`xs`,variant:`ghost`,className:`ml-auto`,disabled:s||c,onClick:u,children:[(0,H.jsx)(Me,{className:`size-3`}),c?`Preparing...`:l]}):null,r?(0,H.jsx)(x,{size:`xs`,variant:`ghost`,className:u?void 0:`ml-auto`,disabled:s,onClick:m,children:e.isResolved?`Unresolve`:`Resolve`}):null]}),ee?(0,H.jsxs)(H.Fragment,{children:[(0,H.jsx)(`div`,{className:`mt-2 space-y-3`,children:e.comments.map(e=>(0,H.jsxs)(`article`,{className:`group min-w-0`,children:[(0,H.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,H.jsx)(Ee,{actor:e.author,className:`text-foreground`}),(0,H.jsx)(`span`,{children:ce(e.createdAt)})]}),C===e.id?(0,H.jsx)(ue,{className:`mt-1`,value:e.body,cwd:t,label:`Edit comment`,saving:T,onSave:t=>void k(e.id,t),onCancel:()=>w(null)}):(0,H.jsxs)(`div`,{className:`mt-1 flex items-start gap-1`,children:[(0,H.jsx)(de,{className:`min-w-0 flex-1 text-sm`,text:e.body,cwd:t}),f(e)?(0,H.jsx)(x,{size:`icon-xs`,variant:`ghost`,className:`shrink-0 text-muted-foreground opacity-0 transition-opacity group-focus-within:opacity-100 group-hover:opacity-100 focus-visible:opacity-100`,"aria-label":`Edit comment`,onClick:()=>w(e.id),children:(0,H.jsx)(ke,{className:`size-3`})}):null]}),(0,H.jsx)(ae,{className:`mt-1.5`,reactions:e.reactions??[],canReact:i,subjectId:e.id,environmentId:a,reference:o,onRefresh:h})]},e.id))}),n?_?(0,H.jsxs)(`div`,{className:`mt-2`,children:[(0,H.jsx)(b,{autoFocus:!0,size:`sm`,value:y,placeholder:`Reply`,"aria-label":`Reply to this conversation`,onChange:e=>S(e.target.value),onKeyDown:Ye({value:y,pending:s,onSubmit:()=>void A(),onCancel:()=>v(!1)})}),(0,H.jsxs)(`div`,{className:`mt-2 flex justify-end gap-2`,children:[(0,H.jsx)(x,{size:`xs`,variant:`ghost`,onClick:()=>v(!1),children:`Cancel`}),(0,H.jsx)(x,{size:`xs`,disabled:s||y.trim().length===0,onClick:()=>void A(),children:`Reply`})]})]}):(0,H.jsx)(x,{size:`xs`,variant:`ghost`,className:`mt-2 px-1`,onClick:()=>v(!0),children:`Reply`}):null]}):null]})}var q=0;function $e(){return q+=1,`pending-review-comment-${q}`}function et(e){return`${e.projectId}/${e.repository}#${e.number}`}var J=[],Y=f()(e=>({drafts:{},summaries:{},addComment:(t,n)=>e(e=>({drafts:{...e.drafts,[t]:[...e.drafts[t]??J,n]}})),removeComment:(t,n)=>e(e=>{let r=(e.drafts[t]??J).filter(e=>e.id!==n);if(r.length>0)return{drafts:{...e.drafts,[t]:r}};let{[t]:i,...a}=e.drafts;return{drafts:a}}),removeComments:(t,n)=>e(e=>{let r=new Set(n),i=(e.drafts[t]??J).filter(e=>!r.has(e.id));if(i.length>0)return{drafts:{...e.drafts,[t]:i}};let{[t]:a,...o}=e.drafts;return{drafts:o}}),clear:t=>e(e=>{let{[t]:n,...r}=e.drafts;return{drafts:r}}),setSummary:(t,n)=>e(e=>({summaries:{...e.summaries,[t]:n}})),clearSummary:(t,n)=>e(e=>{if(e.summaries[t]!==n)return e;let{[t]:r,...i}=e.summaries;return{summaries:i}})}));function tt(e){let t=(0,B.c)(2),n;return t[0]===e?n=t[1]:(n=t=>t.drafts[et(e)]??J,t[0]=e,t[1]=n),Y(n)}var nt=[{value:`comment`,label:`Comment`,sent:`Review submitted`,icon:(0,H.jsx)(be,{className:`size-3`})},{value:`approve`,label:`Approve`,sent:`Pull request approved`,icon:(0,H.jsx)(d,{className:`size-3`})},{value:`request-changes`,label:`Request changes`,sent:`Changes requested`,icon:(0,H.jsx)(N,{className:`size-3`})}];function rt(e){let t=(0,B.c)(13),{environmentId:n,reference:r,verdicts:i,onSubmitted:a}=e,[o,s]=(0,I.useState)(!1),c=tt(r),l=et(r),u=Y(e=>e.summaries[l]??``),d=Y(ct),f=Y(st),p=Y(ot),m=Y(at),h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(h={reportFailure:!1},t[0]=h):h=t[0];let ee=v(P.submitReview,h),g;t[1]===i?g=t[2]:(g=e=>i.includes(e.value),t[1]=i,t[2]=g);let _=nt.filter(g);if(_.length===0)return null;let y=async e=>{if(o)return;let t=u,i=c;s(!0);let d=await ee({environmentId:n,input:{...r,verdict:e.value,body:t,comments:i}});if(s(!1),d._tag===`Failure`){w.add({type:`error`,title:`The review could not be submitted`});return}f(l,i.map(it)),m(l,t),w.add({type:`success`,title:e.sent}),a()},S;t[3]!==u||t[4]!==c.length?(S=e=>e===`approve`||u.trim().length>0||c.length>0,t[3]=u,t[4]=c.length,t[5]=S):S=t[5];let C=S,T=c.length===0?`No line comments yet`:`${c.length} ${c.length===1?`comment`:`comments`} pending`,E;t[6]===T?E=t[7]:(E=(0,H.jsx)(`span`,{children:T}),t[6]=T,t[7]=E);let D=c.length>0?(0,H.jsx)(x,{size:`xs`,variant:`ghost`,disabled:o,onClick:()=>d(l),children:`Discard`}):null,O;t[8]!==E||t[9]!==D?(O=(0,H.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[E,D]}),t[8]=E,t[9]=D,t[10]=O):O=t[10];let k=_.map(e=>(0,H.jsx)(x,{size:`xs`,variant:e.value===`comment`?`outline`:`default`,disabled:o||!C(e.value),onClick:()=>void y(e),children:(0,H.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[e.icon,e.label]})},e.value)),A;return t[11]===k?A=t[12]:(A=(0,H.jsx)(`div`,{className:`mt-2 flex flex-wrap justify-end gap-2`,children:k}),t[11]=k,t[12]=A),(0,H.jsxs)(`div`,{className:`px-4 py-3`,children:[O,(0,H.jsx)(b,{size:`sm`,className:`mt-2`,value:u,placeholder:`Summarize your review (optional)`,"aria-label":`Review summary`,onChange:e=>p(l,e.target.value)}),A]})}function it(e){return e.id}function at(e){return e.clearSummary}function ot(e){return e.setSummary}function st(e){return e.removeComments}function ct(e){return e.clear}function lt(e,t,n){return e.hunks.some(e=>t===`left`?n>=e.deletionStart&&n<e.deletionStart+e.deletionCount:n>=e.additionStart&&n<e.additionStart+e.additionCount)}function ut(e,t,n){let r=t!==`expanded`;return n.has(e)?!r:r}var dt=10,ft=`
247
+ [data-diffs-header] [data-additions-count],
248
+ [data-diffs-header] [data-deletions-count] {
249
+ display: none !important;
250
+ }`,pt=[];function mt(e){return e===`left`?`deletions`:`additions`}function ht(e){return e===`deletions`?`left`:`right`}function X({environmentId:e,reference:t,detail:n,selectedCommitOid:r,onSelectedCommitChange:d,pendingFinding:f,fixFindingLabel:h=`Fix in a thread`,onFixFinding:y,onAddToAgentSelection:b,onRefresh:E,refreshToken:O=0}){let{resolvedTheme:N}=D(),ae=me(),[ce,ue]=(0,I.useState)(()=>new Set),[de,he]=(0,I.useState)(dt),[_e,ve]=(0,I.useState)(null),[Se,Ee]=(0,I.useState)(`stacked`),[ke,Me]=(0,I.useState)(ae.wordWrap),[Pe,Fe]=(0,I.useState)(null),[L,R]=(0,I.useState)(null),[Ie,Le]=(0,I.useState)(!1),[Re,ze]=(0,I.useState)(!1),[Be,Ve]=(0,I.useState)(!1),[He,z]=(0,I.useState)({key:``,cursor:null,slices:pt}),We=(0,I.useRef)(new Map),B=et(t),V=r,U=V===null?B:`${B}@${V}`;(0,I.useEffect)(()=>{R(null),Fe(null),ue(new Set),ve(null),he(dt),ze(!1),z({key:U,cursor:null,slices:pt}),We.current.clear()},[U]);let W=He.key===U?He.slices:pt,G=He.key===U?He.cursor:null,K=g(P.diff({environmentId:e,input:{...t,...G===null?{}:{cursor:G},...V===null?{}:{commit:V}}}));(0,I.useEffect)(()=>{let e=K.data;e!==null&&z(t=>{let n=t.key===U?t.slices:pt,r={cursor:G,patch:e.patch,truncated:e.truncated,nextCursor:e.nextCursor,omittedFileStats:e.omittedFileStats??[]},i=n.findIndex(e=>e.cursor===G);if(i===-1)return{key:U,cursor:G,slices:[...n,r]};let a=n[i];return a!==void 0&&a.patch===r.patch&&a.truncated===r.truncated&&a.nextCursor===r.nextCursor&&a.omittedFileStats.length===r.omittedFileStats.length&&a.omittedFileStats.every((e,t)=>{let n=r.omittedFileStats[t];return n!==void 0&&n.path===e.path&&n.additions===e.additions&&n.deletions===e.deletions})?t:{key:U,cursor:G,slices:[...n.slice(0,i),r]}})},[G,K.data,U]);let Je=c(P.diff({environmentId:e,input:{...t,...V===null?{}:{commit:V}}})),Ye=(0,I.useRef)(O);(0,I.useEffect)(()=>{Ye.current!==O&&(Ye.current=O,z({key:U,cursor:null,slices:pt}),Je())},[O,U,Je]);let Ze=B,q=tt(t),J=Y(e=>e.addComment),nt=Y(e=>e.removeComment),it=v(P.replyToThread,{reportFailure:!1}),at=v(P.setThreadResolution,{reportFailure:!1}),ot=v(P.updateComment,{reportFailure:!1}),st=v(P.diffFileContents),ct=(0,I.useMemo)(()=>Ge(st,{environmentId:e,reference:t,commit:V,cacheKey:`pull-request:${B}:${n.updatedAt}:${V??`all`}`}),[V,n.updatedAt,e,st,t,B]),X=(0,I.useMemo)(()=>{let e=n.capabilities.review,t=n.viewerPermissions;return{inlineComment:e.inlineComment&&t.comment,reply:e.reply&&t.comment,resolve:e.resolve&&t.resolve,verdicts:e.verdicts.filter(e=>t.verdicts.includes(e))}},[n.capabilities.review,n.viewerPermissions]),gt=X.inlineComment&&V===null,_t=(0,I.useMemo)(()=>W.map(e=>{let t=`pull-request:${U}:${N}:${e.cursor??`first`}:${De(e.patch)}`,n=We.current.get(t);if(n)return n;let r=Ae(e.patch,t,{compactPartialHunkOffsets:!0});return r&&We.current.set(t,r),r}),[W,N,U]),Z=(0,I.useMemo)(()=>_t.flatMap(e=>e?.kind===`files`?Ue(e.files):[]),[_t]),Q=W.at(-1)?.nextCursor??null,vt=W.some(e=>e.truncated)||_t.some(e=>e?.kind===`raw`),yt=(0,I.useMemo)(()=>{let e=new Set;if(V!==null)return e;for(let t of Z){let r=F(t);for(let i of n.reviewThreads)i.path===r&&i.line!==null&&lt(t,i.side,i.line)&&e.add(i.id)}return e},[V,n.reviewThreads,Z]),$=(0,I.useMemo)(()=>Z.map(e=>{let t=we(e),r=F(e),i=new Map,a=(e,t)=>{let n=`${e}:${t}`,r=i.get(n);if(r)return r;let a={side:e,line:t,threads:[],pending:[],draft:!1};return i.set(n,a),a};for(let e of n.reviewThreads)e.path!==r||e.line===null||yt.has(e.id)&&a(e.side,e.line).threads.push(e);if(V===null)for(let e of q)e.path===r&&a(e.side,e.line).pending.push(e);L?.fileKey===t&&(a(L.side,L.line).draft=!0);let o=ut(t,_e,ce),s=[...i.values()].map(e=>({side:mt(e.side),lineNumber:e.line,metadata:{threads:e.threads,pending:e.pending,draft:e.draft}}));return{id:t,type:`diff`,fileDiff:e,annotations:s,collapsed:o,version:De(`${o?`1`:`0`}:${s.map(({side:e,lineNumber:t,metadata:n})=>`${e}:${t}:${n.draft?`d`:``}:${n.pending.map(e=>`${e.id}:${e.body}`).join(`,`)}:${n.threads.map(e=>`${e.id}:${e.isResolved?`r`:``}:${e.isOutdated?`o`:``}:${e.comments.map(e=>`${e.id}:${e.author?.login??``}:${e.createdAt}:${e.body}:${(e.reactions??[]).map(e=>`${e.content}:${e.count}:${e.viewerHasReacted?`v`:``}`).join(`,`)}`).join(`;`)}`).join(`,`)}`).join(`|`)}`)}}),[V,n.reviewThreads,L,Z,_e,q,yt,ce]),bt=(0,I.useMemo)(()=>Ce(Z),[Z]),xt=(0,I.useMemo)(()=>new Map(W.flatMap(e=>e.omittedFileStats.map(e=>[e.path,e]))),[W]),St=(0,I.useMemo)(()=>$.map(e=>e.id),[$]),Ct=(0,I.useMemo)(()=>new Set($.filter(e=>e.collapsed===!0).map(e=>e.id)),[$]),wt=M(St,Ct),[Tt,Et]=(0,I.useState)(null);(0,I.useEffect)(()=>{if(Tt===null||Q===null||Q===G||K.isPending||K.error!==null)return;let e=new IntersectionObserver(e=>{e.some(e=>e.isIntersecting)&&z(e=>({...e,cursor:Q}))},{rootMargin:`240px`});return e.observe(Tt),()=>e.disconnect()},[G,K.error,K.isPending,Q,Tt]);let Dt=(0,I.useCallback)(e=>ue(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n}),[]),Ot=()=>{ve(M(St,Ct)?`expanded`:`folded`),ue(new Set)},kt=(0,I.useMemo)(()=>n.commits.toSorted((e,t)=>Date.parse(t.committedDate)-Date.parse(e.committedDate)),[n.commits]),At=(0,I.useCallback)((e,t)=>{if(!e||!gt)return;let n=t.item;if(n.type!==`diff`)return;let r=Z.find(e=>we(e)===n.id);if(!r)return;let i=F(r),a=Te(r);R({fileKey:n.id,path:i,oldPath:a===i?null:a,line:e.end,side:ht(e.endSide??e.side),range:e})},[gt,Z]),jt=(0,I.useCallback)((e,t,r)=>{let i=Z.find(t=>we(t)===e.fileKey),o=i===void 0?null:a({id:`pull-request-selection:${e.fileKey}:${e.range.start}:${e.range.end}`,sectionId:`pull-request:${n.number}`,sectionTitle:`PR #${n.number} review`,filePath:e.path,fileDiff:i,range:e.range,text:t});R(null),Fe(null),o!==null&&r(o)},[n.number,Z]),Mt=(0,I.useCallback)(()=>Q===null?null:(0,H.jsx)(`div`,{ref:Et,className:`flex items-center justify-center gap-2 py-2 text-xs text-muted-foreground`,children:K.error===null?K.isPending?`Loading more files...`:null:(0,H.jsxs)(H.Fragment,{children:[(0,H.jsx)(`span`,{children:`The rest of this diff could not be loaded.`}),(0,H.jsx)(x,{size:`xs`,variant:`outline`,onClick:()=>K.refresh(),children:`Retry`})]})}),[Q,K.error,K.isPending,K.refresh]),Nt=(0,I.useCallback)(e=>{let t=e.collapsed===!0;return(0,H.jsx)(`button`,{type:`button`,"aria-expanded":!t,"aria-label":t?`Expand diff`:`Collapse diff`,className:p(`mr-1 inline-flex size-5 items-center justify-center rounded text-muted-foreground transition-colors hover:text-foreground`),onClick:t=>{t.stopPropagation(),Dt(e.id)},children:t?(0,H.jsx)(s,{className:`size-4`}):(0,H.jsx)(l,{className:`size-4`})})},[Dt]),Pt=(0,I.useCallback)(e=>{if(e.type!==`diff`)return null;let t=0,n=0;for(let r of e.fileDiff.hunks)t+=r.additionLines,n+=r.deletionLines;if(t===0&&n===0){let r=xt.get(F(e.fileDiff));r&&({additions:t,deletions:n}=r)}return(0,H.jsx)(oe,{additions:t,deletions:n,className:`font-mono text-[11px]`})},[xt]),Ft=(0,I.useMemo)(()=>({diffStyle:Se===`split`?`split`:`unified`,lineDiffType:`none`,overflow:ke?`wrap`:`scroll`,theme:ge(N),themeType:N,stickyHeaders:!0,loadDiffFiles:ct,enableGutterUtility:gt&&L===null,enableLineSelection:gt&&L===null,onGutterUtilityClick:At,onLineSelectionEnd:At}),[Se,ke,N,ct,gt,L,At]),It=(0,I.useCallback)(async(e,t)=>{if(Ie)return!1;Le(!0);let n=await t();return Le(!1),n._tag===`Failure`?(w.add({type:`error`,title:e}),!1):(E(),!0)},[E,Ie]),Lt=(0,I.useCallback)(r=>(0,H.jsx)(Qe,{thread:r,workspaceRoot:n.workspaceRoot,canReply:X.reply,canResolve:X.resolve,canReact:n.capabilities.reactions===!0,environmentId:e,reference:t,pending:Ie,fixPending:f===se({kind:`thread`,thread:r}),fixLabel:h,...y?{onFix:()=>y({kind:`thread`,thread:r})}:{},onReply:n=>It(`Reply could not be posted`,()=>it({environmentId:e,input:{...t,threadId:r.id,body:n}})),canEditComment:e=>ie(n,{author:e.author,kind:`review-comment`}),onEditComment:(n,r)=>It(`The comment could not be saved`,()=>ot({environmentId:e,input:{...t,commentId:n,kind:`review-comment`,body:r}})),onToggleResolved:()=>void It(`The conversation could not be updated`,()=>at({environmentId:e,input:{...t,threadId:r.id,resolved:!r.isResolved}})),onReacted:E},`${t.projectId}#${t.number}:${r.id}`),[n,e,h,E,y,f,t,it,X.reply,X.resolve,It,at,Ie,ot]),Rt=(0,I.useCallback)(e=>(0,H.jsxs)(`div`,{className:`py-1 font-sans text-foreground`,children:[e.metadata.threads.map(Lt),e.metadata.pending.map(e=>(0,H.jsx)(Xe,{comment:e,onRemove:()=>nt(Ze,e.id)},e.id)),e.metadata.draft&&L?(0,H.jsx)(Ke,{kind:`draft`,rangeLabel:`${L.path}:${L.line}`,text:``,submitLabel:`Add to review`,...b?{secondaryAction:{label:`Add to agent`,onAction:e=>jt(L,e,t=>b({comment:t,request:e}))}}:{},onCancel:()=>{R(null),Fe(null)},onComment:e=>{J(Ze,{id:$e(),path:L.path,...L.oldPath===null?{}:{oldPath:L.oldPath},line:L.line,side:L.side,body:e}),R(null),Fe(null)}}):null]}),[J,jt,L,b,nt,Lt,Ze]),zt=X.verdicts.length===0?null:(0,H.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 bottom-0 z-10`,children:Be?(0,H.jsxs)(`div`,{className:`chat-composer-glass pointer-events-auto absolute inset-x-3 bottom-3 rounded-xl border border-border/60 shadow-lg`,children:[(0,H.jsx)(x,{type:`button`,size:`icon-sm`,variant:`ghost`,"aria-label":`Close review`,className:`absolute right-2 top-2`,onClick:()=>Ve(!1),children:(0,H.jsx)(ee,{className:`size-3.5`})}),(0,H.jsx)(rt,{environmentId:e,reference:t,verdicts:X.verdicts,onSubmitted:()=>{E(),Ve(!1)}})]}):(0,H.jsxs)(`button`,{type:`button`,className:`chat-composer-glass pointer-events-auto absolute bottom-3 right-4 flex items-center gap-1.5 rounded-full border border-border/60 px-3 py-1.5 text-xs font-medium shadow-lg`,onClick:()=>Ve(!0),children:[(0,H.jsx)(be,{className:`size-3.5`}),`Review`,q.length>0?(0,H.jsx)(`span`,{className:`flex size-4 items-center justify-center rounded-full bg-accent text-[10px] tabular-nums text-accent-foreground`,children:q.length}):null]})}),Bt=kt.find(e=>e.oid===V);(0,I.useEffect)(()=>{V!==null&&Bt===void 0&&d(null)},[V,d,Bt]);let Vt=Bt?Bt.messageHeadline:`All commits`,Ht=(0,H.jsxs)(`div`,{className:`surface-subheader justify-between gap-2 px-4 text-xs text-muted-foreground`,children:[(0,H.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[kt.length>0?(0,H.jsxs)(_,{children:[(0,H.jsxs)(i,{className:`inline-flex h-6 max-w-64 items-center gap-1 rounded-md bg-accent px-2 text-xs font-medium text-accent-foreground outline-none transition-colors hover:bg-accent/80 focus-visible:ring-2 focus-visible:ring-ring`,"aria-label":`Diff scope: ${Vt}`,children:[(0,H.jsx)(`span`,{className:`truncate`,children:Vt}),(0,H.jsx)(l,{className:`size-3.5 shrink-0 opacity-70`})]}),(0,H.jsxs)(C,{align:`start`,className:`w-80`,children:[(0,H.jsx)(S,{className:V===null?`bg-foreground/[0.08]`:void 0,onClick:()=>d(null),children:(0,H.jsx)(`span`,{children:`All commits`})}),kt.slice(0,de).map(e=>(0,H.jsxs)(S,{className:e.oid===V?`bg-foreground/[0.08]`:void 0,onClick:()=>d(e.oid),children:[(0,H.jsx)(`span`,{className:`min-w-0 truncate`,title:e.messageHeadline,children:e.messageHeadline}),(0,H.jsx)(`span`,{className:`ml-auto shrink-0 font-mono text-xs text-muted-foreground`,children:e.oid.slice(0,7)})]},e.oid)),kt.length>de?(0,H.jsx)(S,{closeOnClick:!1,onClick:()=>he(e=>e+dt),children:(0,H.jsxs)(`span`,{className:`text-muted-foreground`,children:[`Show more (`,kt.length-de,` left)`]})}):null]})]}):null,(0,H.jsxs)(pe,{children:[(0,H.jsxs)(`span`,{className:`shrink-0 tabular-nums`,children:[Z.length,` `,Z.length===1?`file`:`files`,Q===null?``:`+`]}),vt?(0,H.jsxs)(m,{children:[(0,H.jsx)(u,{render:(0,H.jsx)(`span`,{className:`flex shrink-0 items-center`}),children:(0,H.jsx)(T,{"aria-label":`Some of this diff was not shown`,className:`size-3.5 text-amber-600 dark:text-amber-500`})}),(0,H.jsx)(o,{side:`bottom`,children:`The host withheld part of this diff — a binary file, or a change too large to inline.`})]}):null,V!==null&&X.inlineComment?(0,H.jsxs)(m,{children:[(0,H.jsx)(u,{render:(0,H.jsx)(`span`,{className:`flex shrink-0 items-center`}),children:(0,H.jsx)(Ne,{"aria-label":`Line comments are written from the whole change`,className:`size-3.5`})}),(0,H.jsx)(o,{side:`bottom`,children:`A comment is anchored to the whole change, so switch to All commits to write one.`})]}):null]})]}),(0,H.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,H.jsx)(oe,{additions:bt.additions,deletions:bt.deletions,className:`mr-1`}),St.length>0?(0,H.jsxs)(m,{children:[(0,H.jsx)(u,{render:(0,H.jsx)(x,{type:`button`,size:`icon-sm`,variant:`ghost`,"aria-label":wt?`Expand all files`:`Collapse all files`,onClick:Ot}),children:wt?(0,H.jsx)(xe,{className:`size-3.5`}):(0,H.jsx)(k,{className:`size-3.5`})}),(0,H.jsx)(o,{side:`top`,children:wt?`Expand all files`:`Collapse all files`})]}):null,(0,H.jsxs)(A,{className:`shrink-0 gap-1`,size:`sm`,value:[Se],onValueChange:e=>{let t=e[0];(t===`stacked`||t===`split`)&&Ee(t)},children:[(0,H.jsx)(ne,{"aria-label":`Stacked diff view`,value:`stacked`,variant:`ghost`,children:(0,H.jsx)(j,{className:`size-3.5`})}),(0,H.jsx)(ne,{"aria-label":`Split diff view`,value:`split`,variant:`ghost`,children:(0,H.jsx)(te,{className:`size-3.5`})})]}),(0,H.jsxs)(m,{children:[(0,H.jsx)(u,{render:(0,H.jsx)(ne,{"aria-label":ke?`Disable diff line wrapping`:`Enable diff line wrapping`,variant:`ghost`,size:`sm`,pressed:ke,onPressedChange:e=>{Me(!!e)}}),children:(0,H.jsx)(Oe,{className:`size-3.5`})}),(0,H.jsx)(o,{side:`top`,children:ke?`Disable line wrapping`:`Enable line wrapping`})]})]})]}),Ut=e=>(0,H.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col`,children:[Ht,(0,H.jsxs)(`div`,{className:`relative min-h-0 flex-1`,children:[(0,H.jsx)(`div`,{className:`h-full overflow-auto`,children:e}),zt]})]});if(K.isPending&&W.length===0)return Ut((0,H.jsx)(fe,{label:`Loading pull request diff...`}));if(K.error&&W.length===0)return Ut((0,H.jsx)(`p`,{className:`px-4 py-5 text-sm text-muted-foreground`,children:K.error}));let Wt=Q===null?_t.flatMap(e=>e?.kind===`raw`?[e]:[]):[];if(Z.length===0&&Wt.length>0)return Ut((0,H.jsx)(`div`,{className:`space-y-4 px-4 py-5`,children:Wt.map(e=>(0,H.jsxs)(`div`,{className:`space-y-2`,children:[(0,H.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.reason}),(0,H.jsx)(`pre`,{className:`whitespace-pre-wrap break-words font-mono text-xs`,children:e.text})]},`${e.reason}:${e.text.slice(0,64)}`))}));if($.length===0&&Q===null)return Ut((0,H.jsx)(`p`,{className:`px-4 py-5 text-sm text-muted-foreground`,children:V===null?`This pull request has no file changes.`:`This commit has no file changes.`}));let Gt=n.reviewThreads.filter(e=>!yt.has(e.id)),Kt=new Map;for(let e of Gt){let t=Kt.get(e.path);t?t.push(e):Kt.set(e.path,[e])}let qt=Wt.length===0?null:(0,H.jsx)(`div`,{className:`space-y-4 border-t border-border/60 px-4 py-5`,children:Wt.map(e=>(0,H.jsxs)(`div`,{className:`space-y-2`,children:[(0,H.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.reason}),(0,H.jsx)(`pre`,{className:`whitespace-pre-wrap break-words font-mono text-xs`,children:e.text})]},`${e.reason}:${e.text.slice(0,64)}`))});return(0,H.jsx)(ye,{children:(0,H.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col`,children:[Ht,Kt.size>0?(0,H.jsxs)(re,{className:`shrink-0 border-b border-border/60`,open:Re,onOpenChange:ze,children:[(0,H.jsx)(`h2`,{children:(0,H.jsxs)(le,{className:`flex w-full items-center gap-1.5 px-4 py-2 text-left text-xs text-muted-foreground`,children:[(0,H.jsx)(`span`,{children:Q===null?`Conversations not on the current diff`:`Conversations not on the diff loaded so far`}),(0,H.jsx)(s,{"aria-hidden":!0,className:p(`size-3.5 transition-transform`,Re&&`rotate-90`)}),(0,H.jsx)(`span`,{"aria-hidden":!0,className:`tabular-nums`,children:Gt.length}),(0,H.jsx)(`span`,{className:`sr-only`,children:Gt.length===1?`1 conversation`:`${Gt.length} conversations`})]})}),(0,H.jsx)(je,{children:(0,H.jsx)(`div`,{className:`max-h-64 space-y-3 overflow-auto px-4 pb-3`,children:[...Kt].map(([e,t])=>(0,H.jsxs)(`div`,{children:[(0,H.jsx)(`p`,{className:`truncate px-3 text-xs text-muted-foreground`,title:e,children:e}),(0,H.jsx)(`div`,{className:`mt-1 space-y-2`,children:t.map(e=>(0,H.jsxs)(`div`,{children:[e.line===null?null:(0,H.jsxs)(`p`,{className:`px-3 text-xs text-muted-foreground`,children:[`Line `,e.line]}),Lt(e)]},e.id))})]},e))})})]}):null,(0,H.jsxs)(`div`,{className:`relative min-h-0 flex-1`,onClickCapture:e=>{let t=e.nativeEvent.composedPath?.()??[];for(let e of t)if(e instanceof HTMLElement){if(e instanceof HTMLButtonElement||e instanceof HTMLAnchorElement)return;if(e.hasAttribute(`data-diffs-header`)){let t=e.querySelector(`[data-title]`)?.textContent?.trim();if(t===void 0||t===``)return;let n=$.find(e=>F(e.fileDiff)===t);n!==void 0&&Dt(n.id);return}}},children:[(0,H.jsx)(qe,{className:`h-full overflow-auto [scrollbar-gutter:stable]`,items:$,selectedLines:Pe,onSelectedLinesChange:Fe,options:Ft,renderCodeViewFooter:Mt,renderHeaderPrefix:Nt,renderHeaderMetadata:Pt,renderAnnotation:Rt,unsafeCSSExtra:ft}),zt]}),qt]})})}export{X as PullRequestCodeTab,X as default};
251
+ //# sourceMappingURL=PullRequestCodeTab-ENp-K16o.js.map
@@ -0,0 +1,2 @@
1
+ import{t as e}from"./compiler-runtime-CLAvuQ-D.js";import{$ as t,Bc as n,Ch as r,Ct as i,Dt as a,Et as o,Ml as s,Mt as c,Ot as ee,Rc as l,Rl as u,Sl as d,Tt as te,Uc as ne,Vc as f,Wc as p,_c as re,_l as m,bh as h,cc as ie,dc as ae,et as g,fc as oe,gl as se,hc as ce,hl as le,jl as ue,kt as de,lc as fe,mc as _,oc as pe,ot as v,pc as y,sc as me,vc as he,vl as ge,wh as b,yc as _e,yl as x,z as S}from"./textarea-CVN2-Kkx.js";var C=e();function w(e){return/^[a-zA-Z]:([/\\]|$)/.test(e)}function T(e){return e.startsWith(`\\\\`)}function E(e){return T(e)||w(e)}function D(e){return e===`.`||e===`..`||e.startsWith(`./`)||e.startsWith(`../`)||e.startsWith(`.\\`)||e.startsWith(`..\\`)}function ve(e){return e===`/`||e===`\\`||/^[a-zA-Z]:[/\\]?$/.test(e)}function ye(e){if(e.length===0||ve(e))return e;let t=e.startsWith(`/`)?e.replace(/\/+$/g,``):e.replace(/[\\/]+$/g,``);return t.length===0?e:/^[a-zA-Z]:$/.test(t)?`${t}\\`:t}function O(e){return ye(e.trim())}function k(e){let t=O(e);return w(t)||T(t)?t.replaceAll(`/`,`\\`).toLowerCase():t}function be(e){return JSON.stringify([e.environmentId,e.cwd,e.relativePath])}function xe(e){let t=n(),r=n(),i=m(e=>x(null).pipe(d(`environment-data:projects:optimistic-file:${e}`))),a={mode:`serial`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.projectId])};return{searchContents:p(e,{label:`environment-data:projects:search-contents`,tag:u.projectsSearchContents,staleTimeMs:0}),searchEntries:p(e,{label:`environment-data:projects:search-entries`,tag:u.projectsSearchEntries,staleTimeMs:15e3}),listEntries:p(e,{label:`environment-data:projects:list-entries`,tag:u.projectsListEntries,staleTimeMs:3e4,idleTtlMs:5*6e4}),readFile:p(e,{label:`environment-data:projects:read-file`,tag:u.projectsReadFile,staleTimeMs:3e4,idleTtlMs:5*6e4}),optimisticFile:e=>i(be(e)),create:f(e,{label:`environment-data:commands:project:create`,execute:e=>re(e),scheduler:t,concurrency:a}),update:f(e,{label:`environment-data:commands:project:update`,execute:e=>_e(e),scheduler:t,concurrency:a}),delete:f(e,{label:`environment-data:commands:project:delete`,execute:e=>he(e),scheduler:t,concurrency:a}),writeFile:ne(e,{label:`environment-data:projects:write-file`,tag:u.projectsWriteFile,scheduler:r,concurrency:{mode:`serial`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.cwd,t.relativePath])}})}}var A=Object.freeze([]),j=new Map;function M(e){let t=m(t=>x(n=>n(e.snapshotAtom(t))?.projects??A).pipe(d(`environment-projects:${t}`))),n=m(e=>x(n=>{let r=n(t(e));return r.length===0?j:new Map(r.map(e=>[e.id,e]))}).pipe(d(`environment-project-index:${e}`))),r=m(e=>{let n=[];return x(r=>{let i=r(t(e)).map(t=>({environmentId:e,projectId:t.id}));return _(n,i)?n:(n=i,i)}).pipe(d(`environment-project-refs:${e}`))}),i=m(e=>{let t=oe(e),r=null,i=null;return x(e=>{let a=e(n(t.environmentId)).get(t.projectId)??null;return a===r?i:(r=a,i=a===null?null:ce(t.environmentId,a),i)}).pipe(d(`environment-project:${e}`))}),a=[],o=x(t=>{let n=[];for(let i of t(e.catalogValueAtom).entries.keys())n.push(...t(r(i)));return _(a,n)?a:(a=n,n)}).pipe(d(`environment-project-refs`)),s=[];return{environmentProjectsAtom:t,environmentProjectIndexAtom:n,environmentProjectRefsAtom:r,projectRefsAtom:o,projectsAtom:x(e=>{let t=e(o).flatMap(t=>{let n=e(i(y(t)));return n===null?[]:[n]});return ae(s,t)||(s=t),s}).pipe(d(`environment-project-list`)),projectAtom:e=>i(y(e))}}var N=e=>/^win(dows)?/i.test(e);function P(e){return w(e)||T(e)?`windows`:e.startsWith(`/`)?`unix`:null}function F(e){let t=P(e);return t===`windows`?`\\`:t===`unix`?`/`:e.includes(`\\`)?`\\`:`/`}function I(e){return(P(e)===`unix`?/\/$/:/[\\/]$/).test(e)}function L(e,t){return e.split(t===`/`?/\/+/:/[\\/]+/).filter(Boolean)}function R(e){return P(e)===`unix`?e.lastIndexOf(`/`):Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`))}function z(e){if(w(e)){let t=`${e.slice(0,2)}\\`;return{root:t,separator:`\\`,segments:L(e.slice(t.length),`\\`)}}if(T(e)){let[t,n,...r]=L(e,`\\`);return!t||!n?null:{root:`\\\\${t}\\${n}\\`,separator:`\\`,segments:r}}return e.startsWith(`/`)?{root:`/`,separator:`/`,segments:L(e.slice(1),`/`)}:null}function Se(e,t=``){let n=N(t);return e.startsWith(`./`)||e.startsWith(`../`)||e.startsWith(`.\\`)||e.startsWith(`..\\`)||e.startsWith(`/`)||e.startsWith(`~/`)||n&&E(e)}function Ce(e,t){return E(e)&&!N(t)}function we(e,t){let n=e.trim();if(!D(n)||!t)return O(n);let r=z(O(t));if(!r)return O(n);let i=[...r.segments];for(let e of n.split(/[\\/]+/))if(!(e.length===0||e===`.`)){if(e===`..`){i.pop();continue}i.push(e)}let a=i.join(r.separator);return O(a.length===0?r.root:`${r.root}${a}`)}function Te(e,t){let n=k(t);if(n.length!==0)return e.find(e=>{let t=e.workspaceRoot??e.cwd;return t?k(t)===n:!1})}function Ee(e){let t=O(e),n=z(t);return n?n.segments.findLast(Boolean)??t:t.split(/[/\\]/).findLast(Boolean)??t}function De(e,t){let n=F(e);return`${B(e)}${t}${n}`}function Oe(e){let t=R(e);return e.slice(t+1)}function B(e){if(I(e))return e;let t=R(e);return t<0?e:e.slice(0,t+1)}function ke(e){let t=e.trim();return t.length===0||I(t)?t:`${t}${F(t)}`}function V(e){let t=O(e),n=z(t);if(n){if(n.segments.length===0)return null;if(n.segments.length===1)return n.root;let e=n.segments.slice(0,-1).join(n.separator);return`${n.root}${e}${n.separator}`}let r=F(e),i=R(t);return i<0?null:i===2&&/^[a-zA-Z]:/.test(t)?`${t.slice(0,2)}${r}`:t.slice(0,i+1)}function Ae(e){return I(e)&&V(e)!==null}var je=fe(g),H=pe(g),U=ie(H.stateAtom);me({catalogValueAtom:t.catalogValueAtom,shellStateValueAtom:H.stateValueAtom});var Me=x(e=>{let n=s(e(t.catalogAtom));if(r(n))return!1;for(let r of n.value.entries.keys()){if(b(e(H.stateValueAtom(r)).snapshot))continue;let n=h(s(e(t.stateAtom(r))),()=>le);if(se(n)!==`disconnected`||n.phase===`backoff`&&n.desired&&n.attempt<=2)return!1}return!0}).pipe(d(`web-all-environment-shells-bootstrapped`)),W=new Set,Ne=x(e=>{let n=new Set;for(let r of e(t.catalogValueAtom).entries.keys())b(e(H.stateValueAtom(r)).snapshot)&&n.add(r);let r=W;return n.size===r.size&&[...n].every(e=>r.has(e))?r:(W=n,n)}).pipe(d(`web-loaded-environment-shell-ids`)),Pe=xe(g),G=M({catalogValueAtom:t.catalogValueAtom,snapshotAtom:U}),Fe=de(g),K=i(g),q=a(K.stateAtom),J=o({catalogValueAtom:t.catalogValueAtom,snapshotAtom:U}),Y=te({catalogValueAtom:t.catalogValueAtom,snapshotAtom:U}),Ie=x(ue(c)).pipe(d(`web-environment-thread:empty`));function Le(e,t){let n=(0,C.c)(5),r;n[0]!==e||n[1]!==t?(r=e!==null&&t!==null?K.stateAtom(e,t):Ie,n[0]=e,n[1]=t,n[2]=r):r=n[2];let i=l(r),a;return n[3]===i?a=n[4]:(a=h(s(i),Re),n[3]=i,n[4]=a),a}function Re(){return c}var ze=Object.freeze([]),Be=Object.freeze([]),Ve=Object.freeze([]),He=Object.freeze([]),Ue=Object.freeze([]),We=x(null).pipe(d(`web-project:empty`));x(ze).pipe(d(`web-project-refs:empty`));var Ge=x(Be).pipe(d(`web-thread-refs:empty`)),Ke=x(null).pipe(d(`web-thread-shell:empty`)),qe=x(null).pipe(d(`web-thread-detail:empty`)),Je=x(`empty`).pipe(d(`web-thread-status:empty`));x(Ve).pipe(d(`web-thread-messages:empty`));var Ye=x(He).pipe(d(`web-thread-activities:empty`)),Xe=x(Ue).pipe(d(`web-thread-proposed-plans:empty`));x(null).pipe(d(`web-thread-session:empty`));var X=x(null).pipe(ge,d(`web-active-environment-id`));function Ze(){return l(X)}function Qe(e){v.set(X,e)}function $e(){return l(J.threadRefsAtom)}function et(e){let t=(0,C.c)(2),n;return t[0]===e?n=t[1]:(n=e===null?Ge:J.environmentThreadRefsAtom(e),t[0]=e,t[1]=n),l(n)}function tt(){return l(G.projectsAtom)}function nt(){return l(S)}function rt(){return l(J.threadShellsAtom)}function it(){return l(Y.threadPairsAtom)}function at(e){return v.get(Y.environmentThreadPairsAtom(e))}function ot(){return l(Me)}function st(e){let t=(0,C.c)(2),n;return t[0]===e?n=t[1]:(n=J.threadShellsForProjectRefsAtom(e),t[0]=e,t[1]=n),l(n)}function ct(e){let t=(0,C.c)(2),n;return t[0]===e?n=t[1]:(n=e===null?We:G.projectAtom(e),t[0]=e,t[1]=n),l(n)}function Z(e){let t=(0,C.c)(2),n;return t[0]===e?n=t[1]:(n=e===null?Ke:J.threadShellAtom(e),t[0]=e,t[1]=n),l(n)}function Q(e){let t=(0,C.c)(2),n;return t[0]===e?n=t[1]:(n=e===null?qe:q.detailAtom(e),t[0]=e,t[1]=n),l(n)}function lt(e){let t=(0,C.c)(2),n;return t[0]===e?n=t[1]:(n=e===null?Je:q.statusAtom(e),t[0]=e,t[1]=n),l(n)}function ut(e,t){return e!==null&&(!t.waitForShell||t.shellExists)?e:null}function dt(e,t){let n=(0,C.c)(7),r=Z(e),i=r!==null,a=t?.waitForShell===!0,o;n[0]!==e||n[1]!==i||n[2]!==a?(o=ut(e,{shellExists:i,waitForShell:a}),n[0]=e,n[1]=i,n[2]=a,n[3]=o):o=n[3];let s=Q(o),c;return n[4]!==s||n[5]!==r?(c=ee(s,r),n[4]=s,n[5]=r,n[6]=c):c=n[6],c}function ft(e){let t=(0,C.c)(2),n;return t[0]===e?n=t[1]:(n=e===null?Ye:q.activitiesAtom(e),t[0]=e,t[1]=n),l(n)}function $(e){let t=(0,C.c)(2),n;return t[0]===e?n=t[1]:(n=e===null?Xe:q.proposedPlansAtom(e),t[0]=e,t[1]=n),l(n)}function pt(e){return v.get(G.projectAtom(e))}function mt(e){return v.get(J.threadShellAtom(e))}function ht(e){return v.get(S).get(e)?.environment.capabilities.threadArchiveCleanup===!0}function gt(e){return v.get(S).get(e)?.environment.capabilities.threadArchiveForceWorktree===!0}function _t(e){return v.get(S).get(e)?.environment.capabilities.threadSnooze===!0}function vt(e){return v.get(S).get(e)}function yt(e){return v.get(S).get(e)?.environment.capabilities.threadPinning===!0}function bt(e){return v.get(J.environmentThreadRefsAtom(e))}export{Le as A,Oe as B,Z as C,q as D,lt as E,De as F,Ce as G,I as H,Ae as I,k as J,we as K,ke as L,H as M,Ne as N,J as O,je as P,Te as R,$e as S,st as T,Ee as U,V,Se as W,dt as _,_t as a,it as b,pt as c,Ze as d,ot as f,nt as g,tt as h,yt as i,Pe as j,Fe as k,mt as l,ct as m,ht as n,at as o,et as p,D as q,gt as r,bt as s,vt as t,Qe as u,ft as v,rt as w,$ as x,Q as y,B as z};
2
+ //# sourceMappingURL=entities-fvtdKO2-.js.map
@@ -0,0 +1,2 @@
1
+ var e=typeof window<`u`&&(window.desktopBridge!==void 0||window.nativeApi!==void 0);export{e as t};
2
+ //# sourceMappingURL=env-jW24S9HL.js.map
@@ -0,0 +1,2 @@
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{n as t,r as n,t as r}from"./compiler-runtime-CLAvuQ-D.js";import{t as i,ui as a}from"./textarea-CVN2-Kkx.js";import{ei as o,gi as s}from"./index-B4Nxc2w0.js";var c=r(),l=e(n(),1),u=t();function d(e){let t=(0,c.c)(44),{kind:n,rangeLabel:r,text:d,onCancel:m,onComment:h,onDelete:g}=e,[_,v]=(0,l.useState)(``);if(n===`comment`){let e,n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,u.jsx)(s,{className:`size-4 text-muted-foreground`}),n=(0,u.jsx)(`span`,{className:`text-xs font-medium`,children:`Local comment`}),t[0]=e,t[1]=n):(e=t[0],n=t[1]);let i;t[2]===r?i=t[3]:(i=(0,u.jsx)(`span`,{className:`ml-auto text-[11px] text-muted-foreground`,children:r}),t[2]=r,t[3]=i);let c;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,u.jsx)(o,{className:`size-3.5`}),t[4]=c):c=t[4];let l;t[5]===g?l=t[6]:(l=(0,u.jsx)(a,{variant:`ghost`,size:`icon-xs`,"aria-label":`Delete comment`,onClick:g,children:c}),t[5]=g,t[6]=l);let f;t[7]!==i||t[8]!==l?(f=(0,u.jsxs)(`div`,{className:`flex items-center gap-2`,children:[e,n,i,l]}),t[7]=i,t[8]=l,t[9]=f):f=t[9];let m;t[10]===d?m=t[11]:(m=(0,u.jsx)(`p`,{className:`mt-2 whitespace-pre-wrap text-sm leading-relaxed text-foreground`,children:d}),t[10]=d,t[11]=m);let h;return t[12]!==f||t[13]!==m?(h=(0,u.jsxs)(`div`,{"data-file-comment-annotation":!0,className:`mx-3 my-2 rounded-xl border border-border/70 bg-background p-3 shadow-sm`,contentEditable:!1,onPointerDown:p,children:[f,m]}),t[12]=f,t[13]=m,t[14]=h):h=t[14],h}let y;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,u.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,u.jsx)(s,{className:`size-4 text-muted-foreground`}),(0,u.jsx)(`span`,{className:`text-sm font-medium`,children:`Local comment`})]}),t[15]=y):y=t[15];let b;t[16]===r?b=t[17]:(b=(0,u.jsxs)(`div`,{className:`mt-1 text-xs text-muted-foreground`,children:[`Comment on lines `,r]}),t[16]=r,t[17]=b);let x=`Comment on lines ${r}`,S;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(S=e=>v(e.target.value),t[18]=S):S=t[18];let C;t[19]!==m||t[20]!==h||t[21]!==_?(C=e=>{e.key===`Escape`&&(e.preventDefault(),m()),(e.metaKey||e.ctrlKey)&&e.key===`Enter`&&_.trim()&&(e.preventDefault(),h(_.trim()))},t[19]=m,t[20]=h,t[21]=_,t[22]=C):C=t[22];let w;t[23]!==x||t[24]!==C||t[25]!==_?(w=(0,u.jsx)(i,{autoFocus:!0,className:`mt-3`,size:`sm`,value:_,placeholder:`Request change`,"aria-label":x,onChange:S,onKeyDown:C}),t[23]=x,t[24]=C,t[25]=_,t[26]=w):w=t[26];let T;t[27]===m?T=t[28]:(T=(0,u.jsx)(a,{variant:`ghost`,size:`sm`,onClick:m,children:`Cancel`}),t[27]=m,t[28]=T);let E;t[29]===_?E=t[30]:(E=_.trim(),t[29]=_,t[30]=E);let D=!E,O;t[31]!==h||t[32]!==_?(O=()=>h(_.trim()),t[31]=h,t[32]=_,t[33]=O):O=t[33];let k;t[34]!==O||t[35]!==D?(k=(0,u.jsx)(a,{size:`sm`,disabled:D,onClick:O,children:`Comment`}),t[34]=O,t[35]=D,t[36]=k):k=t[36];let A;t[37]!==k||t[38]!==T?(A=(0,u.jsxs)(`div`,{className:`mt-3 flex justify-end gap-2`,children:[T,k]}),t[37]=k,t[38]=T,t[39]=A):A=t[39];let j;return t[40]!==A||t[41]!==b||t[42]!==w?(j=(0,u.jsxs)(`div`,{"data-file-comment-annotation":!0,className:`mx-3 my-2 rounded-xl border border-border/70 bg-background p-3 shadow-lg`,contentEditable:!1,onPointerDown:f,children:[y,b,w,A]}),t[40]=A,t[41]=b,t[42]=w,t[43]=j):j=t[43],j}function f(e){return e.stopPropagation()}function p(e){return e.stopPropagation()}var m=0;function h(){return m+=1,`file-comment-${Date.now()}-${m}`}function g(e){return{startLine:Math.min(e.start,e.end),endLine:Math.max(e.start,e.end)}}function _(e,t){return e===t?`L${e}`:`L${e} to L${t}`}function v(e){return e.map(e=>({...e,metadata:{entries:e.metadata.entries.map(t=>{let n=t.endLine-t.startLine;return{...t,endLine:e.lineNumber,startLine:Math.max(1,e.lineNumber-n)}})}}))}export{d as a,v as i,h as n,g as r,_ as t};
2
+ //# sourceMappingURL=fileCommentAnnotations-BPIepn3Q.js.map