getborg 0.0.98 → 0.0.109

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 (81) hide show
  1. package/dist/{BunPtyAdapter-BO6MRm-I.mjs → BunPtyAdapter-B8CZTUkK.mjs} +3 -3
  2. package/dist/{Config-gKAe02uc.mjs → Config-DFbx48ty.mjs} +2 -2
  3. package/dist/{FetchHttpClient-Dkvk_2gy.mjs → FetchHttpClient-DEMRQKIB.mjs} +3 -3
  4. package/dist/{FileSystem-CME3BFzu.mjs → FileSystem-41Cezpd1.mjs} +2 -2
  5. package/dist/{Mime-CECsj7CV.mjs → Mime-D2854Tqo.mjs} +5 -5
  6. package/dist/{NodeHttpIncomingMessage-0aW45tSl.mjs → NodeHttpIncomingMessage-BqU9AHA2.mjs} +4 -4
  7. package/dist/{NodeHttpServer-CdXvBNNA.mjs → NodeHttpServer-C-eqvdR4.mjs} +9 -9
  8. package/dist/{NodePtyAdapter-BWrlUEea.mjs → NodePtyAdapter-BdtcaYPg.mjs} +5 -5
  9. package/dist/{NodeServices-BHXunFtp.mjs → NodeServices-pD4zkANr.mjs} +6 -6
  10. package/dist/{NodeSqliteClient-BwW7kwrY.mjs → NodeSqliteClient-BIVa5aFu.mjs} +5 -5
  11. package/dist/{NodeStream-CWX36BNZ.mjs → NodeStream-BjNgA5_1.mjs} +3 -3
  12. package/dist/{Path-BdYWOglD.mjs → Path-D8BPsRhh.mjs} +2 -2
  13. package/dist/{PtyAdapter-DCErzU8T.mjs → PtyAdapter-B9zQDp9u.mjs} +2 -2
  14. package/dist/{Schema-D5D4He-Q.mjs → Schema-DkAVclKk.mjs} +153 -6
  15. package/dist/{SqlClient-CZnbSIGl.mjs → SqlClient-JflyUX7a.mjs} +3 -3
  16. package/dist/bin.mjs +7449 -3662
  17. package/dist/{borgTelemetryNode-B9H2lcK5.mjs → borgTelemetryNode-B0vVayda.mjs} +6 -6
  18. package/dist/client/.vite/manifest.json +316 -316
  19. package/dist/client/assets/{ArrowRight-B0WzqdPj.js → ArrowRight-BOicMyF9.js} +2 -2
  20. package/dist/client/assets/{ArrowSquareOut-8j4OKqbL.js → ArrowSquareOut-D7Y2Tt3L.js} +2 -2
  21. package/dist/client/assets/{ArrowsClockwise-DlJf49Z-.js → ArrowsClockwise-DycxhEkt.js} +2 -2
  22. package/dist/client/assets/{CaretLeft-Du0MA4fs.js → CaretLeft-CDMA3Uas.js} +2 -2
  23. package/dist/client/assets/{ChatMarkdown-DVGPcDDG.js → ChatMarkdown-Cl8M9HCx.js} +70 -70
  24. package/dist/client/assets/DesignWorkspace-DBL7AxwS.js +3 -0
  25. package/dist/client/assets/DiffPanel-BJ-Ix_7K.js +2 -0
  26. package/dist/client/assets/{DiffWorkerPoolProvider-EEE1VuzL.js → DiffWorkerPoolProvider-_R9JGgmp.js} +2 -2
  27. package/dist/client/assets/{DocxPreview-BbjPKR5c.js → DocxPreview-BFCC5VXn.js} +4 -4
  28. package/dist/client/assets/{FilePreviewPanel-BnW97AGU.js → FilePreviewPanel-CeAwd87I.js} +5 -5
  29. package/dist/client/assets/{HtmlPreview-C2OXgUpJ.js → HtmlPreview-BpBdu9_j.js} +2 -2
  30. package/dist/client/assets/{PdfPreview-CthschRx.js → PdfPreview-CeECoD5z.js} +3 -3
  31. package/dist/client/assets/{PptxPreview-M1wqnWv-.js → PptxPreview-u6gN3x3Z.js} +3 -3
  32. package/dist/client/assets/PreviewPanel-BVJp3UI5.js +2 -0
  33. package/dist/client/assets/PullRequestCodeTab-Bxx0Vkdn.js +6 -0
  34. package/dist/client/assets/{PullRequestReactions-DefnDwQq.js → PullRequestReactions-BWjOU4KY.js} +4 -4
  35. package/dist/client/assets/{RightPanelResizeHandle-CWbwOS4Y.js → RightPanelResizeHandle-DZdzK7y3.js} +2 -2
  36. package/dist/client/assets/{VirtualizedFile-DpXIpMCw.js → VirtualizedFile-CyAKSbzc.js} +2 -2
  37. package/dist/client/assets/{XlsxPreview-yPrELQ0F.js → XlsxPreview-CaykIFrZ.js} +3 -3
  38. package/dist/client/assets/{assetUrls-Cv1BQRgh.js → assetUrls-BBFxUocf.js} +2 -2
  39. package/dist/client/assets/browserHistoryStore-K9gWOOUq.js +2 -0
  40. package/dist/client/assets/{browserRecording-DYgu2qFY.js → browserRecording-DrMz1iOt.js} +2 -2
  41. package/dist/client/assets/{clientPersistenceStorage-TiUunQpN.js → clientPersistenceStorage-DSC61yLx.js} +2 -2
  42. package/dist/client/assets/{combobox-Cf7GvOtx.js → combobox-C4C8XR-w.js} +6 -6
  43. package/dist/client/assets/{composerMentionDrag-TlGe0rUC.js → composerMentionDrag-D06cCeGC.js} +2 -2
  44. package/dist/client/assets/designCanvas.logic-DuuhotDy.js +8 -0
  45. package/dist/client/assets/{designOpenFileContext-CUn4dNFv.js → designOpenFileContext-CCQs4ovB.js} +2 -2
  46. package/dist/client/assets/{diffFileContents-D8w_yRtq.js → diffFileContents-Bj3q_jc2.js} +3 -3
  47. package/dist/client/assets/{empty-a7hA2Ech.js → empty-DynqTxIR.js} +2 -2
  48. package/dist/client/assets/{entities-x8g8jint.js → entities-dwE_i4XM.js} +2 -2
  49. package/dist/client/assets/{index-B3D6JK2-.js → index-BKWzfr1Y.js} +3 -3
  50. package/dist/client/assets/{input-C5hbrs5d.js → input-Q4KA45-f.js} +2 -2
  51. package/dist/client/assets/{lib-xfuwsGna.js → lib-DyhHMOev.js} +2 -2
  52. package/dist/client/assets/main-CI0aXqkB.css +2 -0
  53. package/dist/client/assets/main-DFDCV-Ns.js +145 -0
  54. package/dist/client/assets/{pdf-Cr4HwsSN.js → pdf-C_AIVI51.js} +2 -2
  55. package/dist/client/assets/{popover-CFQuYACO.js → popover-CXGEm4M0.js} +2 -2
  56. package/dist/client/assets/{pptxDocument-Dxc3oYrP.js → pptxDocument-CHL8asXA.js} +2 -2
  57. package/dist/client/assets/{projectFilesQueryState-CtlKP2rG.js → projectFilesQueryState-7mFyaRdj.js} +2 -2
  58. package/dist/client/assets/queries-x5LGu_Fy.js +2 -0
  59. package/dist/client/assets/{scroll-area-DhT-7J-n.js → scroll-area-D8MfzXjN.js} +2 -2
  60. package/dist/client/assets/{session-BpEQOlGw.js → session-DIGL5_Nm.js} +4 -4
  61. package/dist/client/assets/{spinner-Bld_-IfK.js → spinner-CwxxMzkd.js} +2 -2
  62. package/dist/client/assets/textarea-DdNchuIO.js +5 -0
  63. package/dist/client/assets/{toggle-CoeRt1yA.js → toggle-CmeCFqd7.js} +2 -2
  64. package/dist/client/assets/{toggle-group-Cl-JZXj8.js → toggle-group-iEMUfMdW.js} +2 -2
  65. package/dist/client/assets/{useLocalStorage-B6HRw7FK.js → useLocalStorage-2W_I13tQ.js} +2 -2
  66. package/dist/client/assets/{useWorkspaceMutationRefresh-CdZvTsDX.js → useWorkspaceMutationRefresh-YuIxWftk.js} +2 -2
  67. package/dist/client/assets/{utils-CxdSByf6.js → utils-D0kLIGeh.js} +2 -2
  68. package/dist/client/assets/{xlsxDocument-yc7zPhIi.js → xlsxDocument-ANMZ6ewU.js} +2 -2
  69. package/dist/client/index.html +1 -1
  70. package/dist/service-launcher.mjs +1 -1
  71. package/package.json +1 -1
  72. package/dist/client/assets/DesignWorkspace-NVV8GBAk.js +0 -3
  73. package/dist/client/assets/DiffPanel-DEXl5JNm.js +0 -2
  74. package/dist/client/assets/PreviewPanel-T7-TNC-0.js +0 -2
  75. package/dist/client/assets/PullRequestCodeTab-DeLU7Brq.js +0 -6
  76. package/dist/client/assets/browserHistoryStore-Bvr08etl.js +0 -2
  77. package/dist/client/assets/designCanvas.logic-CR5c1cCe.js +0 -8
  78. package/dist/client/assets/main-C_wQnCSV.js +0 -145
  79. package/dist/client/assets/main-H0NXtw22.css +0 -2
  80. package/dist/client/assets/queries-D1aqiDAP.js +0 -2
  81. package/dist/client/assets/textarea-C37zxlv0.js +0 -5
@@ -1,2 +1,2 @@
1
- import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./main-C_wQnCSV.js";var n=e(t(),1),r=5e3,i=200;function a(e){let t=/^([A-Z]+)/i.exec(e)?.[1];if(!t)return 0;let n=0;for(let e of t.toUpperCase())n=n*26+(e.charCodeAt(0)-64);return n-1}var o=e=>Number.isInteger(e)&&e>=0&&e<=1114111&&!(e>=55296&&e<=57343)?String.fromCodePoint(e):null,s=e=>e.replace(/&(?:#(\d+)|#x([0-9a-f]+)|(amp|lt|gt|quot|apos));/gi,(e,t,n,r)=>t?o(Number(t))??e:n?o(Number.parseInt(n,16))??e:{amp:`&`,lt:`<`,gt:`>`,quot:`"`,apos:`'`}[String(r).toLowerCase()]??e);function c(e){return`(?:[A-Za-z_][\\w.-]*:)?${e}`}function l(e){return RegExp(`<(${c(e)})(?=[\\s/>])[^>]*?(?:/>|>([\\s\\S]*?)</\\1\\s*>)`,`g`)}function u(e,t){let n=l(t),r=[];for(let t of e.matchAll(n))r.push(t[2]??``);return r}function d(e,t){let n=l(t);return Array.from(e.matchAll(n),e=>e[0])}var f=(e,t)=>{let n=RegExp(`\\s${c(t)}=(["'])(.*?)\\1`).exec(e)?.[2];return n===void 0?null:s(n)},p=(e,t)=>s(u(e,t).join(``));function m(e,t){let n=[],o=!1;for(let s of d(e,`row`)){if(n.length>=r){o=!0;break}let e=[];for(let n of d(s,`c`)){let r=a(f(n,`r`)??``);if(r>=i){o=!0;continue}let s=f(n,`t`),c=s===`s`?t[Number(p(n,`v`))]??``:s===`inlineStr`?p(n,`t`):p(n,`v`);for(;e.length<r;)e.push(``);e[r]=c}n.push(e)}return{rows:n,truncated:o}}function h(e){return d(e,`si`).map(e=>p(e,`t`))}function g(e){return d(e,`sheet`).map((e,t)=>(f(e,`name`)??``).trim()||`Sheet${t+1}`)}async function _(e){let t=await n.default.loadAsync(e),r=await t.file(`xl/_rels/workbook.xml.rels`)?.async(`string`),i=new Map;for(let e of d(r??``,`Relationship`)){let t=f(e,`Id`),n=f(e,`Target`);if(!t||!n||f(e,`TargetMode`)===`External`||/^[a-z]+:/i.test(n))continue;let r=[];for(let e of(n.startsWith(`/`)?n:`xl/${n}`).split(`/`))e===`..`?r.pop():e&&e!==`.`&&r.push(e);i.set(t,{path:r.join(`/`),type:f(e,`Type`)??``})}let a=[...i.values()].find(e=>e.type.endsWith(`/sharedStrings`))?.path??`xl/sharedStrings.xml`,o=await t.file(a)?.async(`string`),s=o?h(o):[],c=await t.file(`xl/workbook.xml`)?.async(`string`),l=c?g(c):[],u=d(c??``,`sheet`),p=[];for(let[e,n]of l.entries()){let a=i.get(f(u[e]??``,`id`)??``);if(r&&(!a||!a.type.endsWith(`/worksheet`)))continue;let o=a?.path??`xl/worksheets/sheet${e+1}.xml`,c=await t.file(o)?.async(`string`);if(!c)continue;let{rows:l,truncated:d}=m(c,s);p.push({name:n,rows:l,truncated:d})}return p}export{_ as readWorkbook};
2
- //# sourceMappingURL=xlsxDocument-yc7zPhIi.js.map
1
+ import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{t}from"./main-DFDCV-Ns.js";var n=e(t(),1),r=5e3,i=200;function a(e){let t=/^([A-Z]+)/i.exec(e)?.[1];if(!t)return 0;let n=0;for(let e of t.toUpperCase())n=n*26+(e.charCodeAt(0)-64);return n-1}var o=e=>Number.isInteger(e)&&e>=0&&e<=1114111&&!(e>=55296&&e<=57343)?String.fromCodePoint(e):null,s=e=>e.replace(/&(?:#(\d+)|#x([0-9a-f]+)|(amp|lt|gt|quot|apos));/gi,(e,t,n,r)=>t?o(Number(t))??e:n?o(Number.parseInt(n,16))??e:{amp:`&`,lt:`<`,gt:`>`,quot:`"`,apos:`'`}[String(r).toLowerCase()]??e);function c(e){return`(?:[A-Za-z_][\\w.-]*:)?${e}`}function l(e){return RegExp(`<(${c(e)})(?=[\\s/>])[^>]*?(?:/>|>([\\s\\S]*?)</\\1\\s*>)`,`g`)}function u(e,t){let n=l(t),r=[];for(let t of e.matchAll(n))r.push(t[2]??``);return r}function d(e,t){let n=l(t);return Array.from(e.matchAll(n),e=>e[0])}var f=(e,t)=>{let n=RegExp(`\\s${c(t)}=(["'])(.*?)\\1`).exec(e)?.[2];return n===void 0?null:s(n)},p=(e,t)=>s(u(e,t).join(``));function m(e,t){let n=[],o=!1;for(let s of d(e,`row`)){if(n.length>=r){o=!0;break}let e=[];for(let n of d(s,`c`)){let r=a(f(n,`r`)??``);if(r>=i){o=!0;continue}let s=f(n,`t`),c=s===`s`?t[Number(p(n,`v`))]??``:s===`inlineStr`?p(n,`t`):p(n,`v`);for(;e.length<r;)e.push(``);e[r]=c}n.push(e)}return{rows:n,truncated:o}}function h(e){return d(e,`si`).map(e=>p(e,`t`))}function g(e){return d(e,`sheet`).map((e,t)=>(f(e,`name`)??``).trim()||`Sheet${t+1}`)}async function _(e){let t=await n.default.loadAsync(e),r=await t.file(`xl/_rels/workbook.xml.rels`)?.async(`string`),i=new Map;for(let e of d(r??``,`Relationship`)){let t=f(e,`Id`),n=f(e,`Target`);if(!t||!n||f(e,`TargetMode`)===`External`||/^[a-z]+:/i.test(n))continue;let r=[];for(let e of(n.startsWith(`/`)?n:`xl/${n}`).split(`/`))e===`..`?r.pop():e&&e!==`.`&&r.push(e);i.set(t,{path:r.join(`/`),type:f(e,`Type`)??``})}let a=[...i.values()].find(e=>e.type.endsWith(`/sharedStrings`))?.path??`xl/sharedStrings.xml`,o=await t.file(a)?.async(`string`),s=o?h(o):[],c=await t.file(`xl/workbook.xml`)?.async(`string`),l=c?g(c):[],u=d(c??``,`sheet`),p=[];for(let[e,n]of l.entries()){let a=i.get(f(u[e]??``,`id`)??``);if(r&&(!a||!a.type.endsWith(`/worksheet`)))continue;let o=a?.path??`xl/worksheets/sheet${e+1}.xml`,c=await t.file(o)?.async(`string`);if(!c)continue;let{rows:l,truncated:d}=m(c,s);p.push({name:n,rows:l,truncated:d})}return p}export{_ as readWorkbook};
2
+ //# sourceMappingURL=xlsxDocument-ANMZ6ewU.js.map
@@ -450,7 +450,7 @@
450
450
  }
451
451
  </style>
452
452
  <title>Borg (Alpha)</title>
453
- <script type="module" crossorigin src="/assets/index-B3D6JK2-.js"></script>
453
+ <script type="module" crossorigin src="/assets/index-BKWzfr1Y.js"></script>
454
454
  <link rel="stylesheet" crossorigin href="/assets/index-DZprGaeP.css">
455
455
  </head>
456
456
  <body>
@@ -184,7 +184,7 @@ function stripHeaderDsn(header) {
184
184
  }
185
185
  //#endregion
186
186
  //#region package.json
187
- var version = "0.0.98";
187
+ var version = "0.0.109";
188
188
  //#endregion
189
189
  //#region ../../packages/shared/src/borgClientIdentity.ts
190
190
  /** Tags that let an error report be matched to the requests and support info of the same install. */
package/package.json CHANGED
@@ -10,7 +10,7 @@
10
10
  "borg": "./dist/bin.mjs"
11
11
  },
12
12
  "type": "module",
13
- "version": "0.0.98",
13
+ "version": "0.0.109",
14
14
  "engines": {
15
15
  "node": "^22.16 || ^23.11 || >=24.10"
16
16
  },
@@ -1,3 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{a as t}from"./useLocalStorage-B6HRw7FK.js";import{An as n,Bo as r,Co as i,Fn as a,In as o,Mn as s,Nn as c,On as l,Pn as u,So as d,Vn as f,f as p,ho as m,jn as h,t as g,un as _,wo as v}from"./utils-CxdSByf6.js";import{n as y}from"./session-BpEQOlGw.js";import{a as b,i as x,l as S,o as C,r as w,s as T,t as E}from"./designOpenFileContext-CUn4dNFv.js";import{B as D,Jn as O,Mn as k,f as A,gr as j,l as M,nr as N,o as P,or as F,t as I,u as L,w as R}from"./textarea-C37zxlv0.js";import{t as z}from"./ArrowSquareOut-8j4OKqbL.js";import{t as ee}from"./ArrowsClockwise-DlJf49Z-.js";import{$ as te,B as ne,G as re,H as ie,J as ae,K as B,M as V,Q as oe,R as se,W as H,Z as ce,_ as le,b as U,bt as ue,c as de,d as fe,et as pe,f as me,h as he,l as ge,m as _e,n as ve,nt as ye,o as be,p as xe,rt as Se,s as Ce,t as we,tt as Te,u as Ee,v as De,vt as Oe,w as ke,xt as Ae,yt as je,z as Me}from"./designCanvas.logic-CR5c1cCe.js";import{i as Ne}from"./toggle-CoeRt1yA.js";import{i as Pe,n as Fe,r as Ie,t as Le}from"./RightPanelResizeHandle-CWbwOS4Y.js";import{a as Re,i as ze,n as Be,r as Ve,t as He}from"./popover-CFQuYACO.js";import{s as Ue,t as We}from"./env-DgM3kOA4.js";import{n as Ge,t as Ke}from"./toggle-group-Cl-JZXj8.js";import{t as qe}from"./input-C5hbrs5d.js";import{a as Je,i as Ye,o as Xe}from"./assetUrls-Cv1BQRgh.js";import{c as Ze}from"./projectFilesQueryState-CtlKP2rG.js";import{t as Qe}from"./main-C_wQnCSV.js";var W=e(t(),1);function $e(e,t){if(e===void 0)return{shouldBlockFn:()=>!0,withResolver:!1};if(`shouldBlockFn`in e)return e;if(typeof e==`function`){let n=!!(t??!0);return{shouldBlockFn:async()=>n?await e():!1,enableBeforeUnload:n,withResolver:!1}}let n=!!(e.condition??!0),r=e.blockerFn;return{shouldBlockFn:async()=>n&&r!==void 0?await r():n,enableBeforeUnload:n,withResolver:r===void 0}}function et(e,t){let{shouldBlockFn:n,enableBeforeUnload:r=!0,disabled:i=!1,withResolver:a=!1}=$e(e,t),o=j(),{history:s}=o,[c,l]=W.useState({status:`idle`,current:void 0,next:void 0,action:void 0,proceed:void 0,reset:void 0});return W.useEffect(()=>i?void 0:s.block({blockerFn:async e=>{function t(e){let t=o.parseLocation(e),n=o.getMatchedRoutes(t.pathname);return n.foundRoute===void 0?{routeId:`__notFound__`,fullPath:t.pathname,pathname:t.pathname,params:n.routeParams,search:o.options.parseSearch(e.search)}:{routeId:n.foundRoute.id,fullPath:n.foundRoute.fullPath,pathname:t.pathname,params:n.routeParams,search:o.options.parseSearch(e.search)}}let r=t(e.currentLocation),i=t(e.nextLocation);if(r.routeId===`__notFound__`&&i.routeId!==`__notFound__`)return!1;let s=await n({action:e.action,current:r,next:i});if(!a)return s;if(!s)return!1;let c=await new Promise(t=>{l({status:`blocked`,current:r,next:i,action:e.action,proceed:()=>t(!1),reset:()=>t(!0)})});return l({status:`idle`,current:void 0,next:void 0,action:void 0,proceed:void 0,reset:void 0}),c},enableBeforeUnload:r}),[n,r,i,a,s,o]),c}var tt=new Map([[`bold`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M232,116h-4.72A100.21,100.21,0,0,0,140,28.72V24a12,12,0,0,0-24,0v4.72A100.21,100.21,0,0,0,28.72,116H24a12,12,0,0,0,0,24h4.72A100.21,100.21,0,0,0,116,227.28V232a12,12,0,0,0,24,0v-4.72A100.21,100.21,0,0,0,227.28,140H232a12,12,0,0,0,0-24Zm-92,87v-3a12,12,0,0,0-24,0v3a76.15,76.15,0,0,1-63-63h3a12,12,0,0,0,0-24H53a76.15,76.15,0,0,1,63-63v3a12,12,0,0,0,24,0V53a76.15,76.15,0,0,1,63,63h-3a12,12,0,0,0,0,24h3A76.15,76.15,0,0,1,140,203ZM128,84a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,84Zm0,64a20,20,0,1,1,20-20A20,20,0,0,1,128,148Z`}))],[`duotone`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M160,128a32,32,0,1,1-32-32A32,32,0,0,1,160,128Z`,opacity:`0.2`}),W.createElement(`path`,{d:`M232,120h-8.34A96.14,96.14,0,0,0,136,32.34V24a8,8,0,0,0-16,0v8.34A96.14,96.14,0,0,0,32.34,120H24a8,8,0,0,0,0,16h8.34A96.14,96.14,0,0,0,120,223.66V232a8,8,0,0,0,16,0v-8.34A96.14,96.14,0,0,0,223.66,136H232a8,8,0,0,0,0-16Zm-96,87.6V200a8,8,0,0,0-16,0v7.6A80.15,80.15,0,0,1,48.4,136H56a8,8,0,0,0,0-16H48.4A80.15,80.15,0,0,1,120,48.4V56a8,8,0,0,0,16,0V48.4A80.15,80.15,0,0,1,207.6,120H200a8,8,0,0,0,0,16h7.6A80.15,80.15,0,0,1,136,207.6ZM128,88a40,40,0,1,0,40,40A40,40,0,0,0,128,88Zm0,64a24,24,0,1,1,24-24A24,24,0,0,1,128,152Z`}))],[`fill`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M232,120h-8.34A96.14,96.14,0,0,0,136,32.34V24a8,8,0,0,0-16,0v8.34A96.14,96.14,0,0,0,32.34,120H24a8,8,0,0,0,0,16h8.34A96.14,96.14,0,0,0,120,223.66V232a8,8,0,0,0,16,0v-8.34A96.14,96.14,0,0,0,223.66,136H232a8,8,0,0,0,0-16Zm-32,16h7.6A80.15,80.15,0,0,1,136,207.6V200a8,8,0,0,0-16,0v7.6A80.15,80.15,0,0,1,48.4,136H56a8,8,0,0,0,0-16H48.4A80.15,80.15,0,0,1,120,48.4V56a8,8,0,0,0,16,0V48.4A80.15,80.15,0,0,1,207.6,120H200a8,8,0,0,0,0,16Zm-32-8a40,40,0,1,1-40-40A40,40,0,0,1,168,128Z`}))],[`light`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M232,122H221.8A94.13,94.13,0,0,0,134,34.2V24a6,6,0,0,0-12,0V34.2A94.13,94.13,0,0,0,34.2,122H24a6,6,0,0,0,0,12H34.2A94.13,94.13,0,0,0,122,221.8V232a6,6,0,0,0,12,0V221.8A94.13,94.13,0,0,0,221.8,134H232a6,6,0,0,0,0-12Zm-98,87.76V200a6,6,0,0,0-12,0v9.76A82.09,82.09,0,0,1,46.24,134H56a6,6,0,0,0,0-12H46.24A82.09,82.09,0,0,1,122,46.24V56a6,6,0,0,0,12,0V46.24A82.09,82.09,0,0,1,209.76,122H200a6,6,0,0,0,0,12h9.76A82.09,82.09,0,0,1,134,209.76ZM128,90a38,38,0,1,0,38,38A38,38,0,0,0,128,90Zm0,64a26,26,0,1,1,26-26A26,26,0,0,1,128,154Z`}))],[`regular`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M232,120h-8.34A96.14,96.14,0,0,0,136,32.34V24a8,8,0,0,0-16,0v8.34A96.14,96.14,0,0,0,32.34,120H24a8,8,0,0,0,0,16h8.34A96.14,96.14,0,0,0,120,223.66V232a8,8,0,0,0,16,0v-8.34A96.14,96.14,0,0,0,223.66,136H232a8,8,0,0,0,0-16Zm-96,87.6V200a8,8,0,0,0-16,0v7.6A80.15,80.15,0,0,1,48.4,136H56a8,8,0,0,0,0-16H48.4A80.15,80.15,0,0,1,120,48.4V56a8,8,0,0,0,16,0V48.4A80.15,80.15,0,0,1,207.6,120H200a8,8,0,0,0,0,16h7.6A80.15,80.15,0,0,1,136,207.6ZM128,88a40,40,0,1,0,40,40A40,40,0,0,0,128,88Zm0,64a24,24,0,1,1,24-24A24,24,0,0,1,128,152Z`}))],[`thin`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M232,124H219.91A92.13,92.13,0,0,0,132,36.09V24a4,4,0,0,0-8,0V36.09A92.13,92.13,0,0,0,36.09,124H24a4,4,0,0,0,0,8H36.09A92.13,92.13,0,0,0,124,219.91V232a4,4,0,0,0,8,0V219.91A92.13,92.13,0,0,0,219.91,132H232a4,4,0,0,0,0-8ZM132,211.9V200a4,4,0,0,0-8,0v11.9A84.11,84.11,0,0,1,44.1,132H56a4,4,0,0,0,0-8H44.1A84.11,84.11,0,0,1,124,44.1V56a4,4,0,0,0,8,0V44.1A84.11,84.11,0,0,1,211.9,124H200a4,4,0,0,0,0,8h11.9A84.11,84.11,0,0,1,132,211.9ZM128,92a36,36,0,1,0,36,36A36,36,0,0,0,128,92Zm0,64a28,28,0,1,1,28-28A28,28,0,0,1,128,156Z`}))]]),nt=new Map([[`bold`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M176,12H80A28,28,0,0,0,52,40V216a28,28,0,0,0,28,28h96a28,28,0,0,0,28-28V40A28,28,0,0,0,176,12ZM76,76H180V180H76Zm4-40h96a4,4,0,0,1,4,4V52H76V40A4,4,0,0,1,80,36Zm96,184H80a4,4,0,0,1-4-4V204H180v12A4,4,0,0,1,176,220Z`}))],[`duotone`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M192,56V200H64V56Z`,opacity:`0.2`}),W.createElement(`path`,{d:`M176,16H80A24,24,0,0,0,56,40V216a24,24,0,0,0,24,24h96a24,24,0,0,0,24-24V40A24,24,0,0,0,176,16ZM72,64H184V192H72Zm8-32h96a8,8,0,0,1,8,8v8H72V40A8,8,0,0,1,80,32Zm96,192H80a8,8,0,0,1-8-8v-8H184v8A8,8,0,0,1,176,224Z`}))],[`fill`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M176,16H80A24,24,0,0,0,56,40V216a24,24,0,0,0,24,24h96a24,24,0,0,0,24-24V40A24,24,0,0,0,176,16ZM80,32h96a8,8,0,0,1,8,8v8H72V40A8,8,0,0,1,80,32Zm96,192H80a8,8,0,0,1-8-8v-8H184v8A8,8,0,0,1,176,224Z`}))],[`light`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M176,18H80A22,22,0,0,0,58,40V216a22,22,0,0,0,22,22h96a22,22,0,0,0,22-22V40A22,22,0,0,0,176,18ZM70,62H186V194H70ZM80,30h96a10,10,0,0,1,10,10V50H70V40A10,10,0,0,1,80,30Zm96,196H80a10,10,0,0,1-10-10V206H186v10A10,10,0,0,1,176,226Z`}))],[`regular`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M176,16H80A24,24,0,0,0,56,40V216a24,24,0,0,0,24,24h96a24,24,0,0,0,24-24V40A24,24,0,0,0,176,16ZM72,64H184V192H72Zm8-32h96a8,8,0,0,1,8,8v8H72V40A8,8,0,0,1,80,32Zm96,192H80a8,8,0,0,1-8-8v-8H184v8A8,8,0,0,1,176,224Z`}))],[`thin`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M176,20H80A20,20,0,0,0,60,40V216a20,20,0,0,0,20,20h96a20,20,0,0,0,20-20V40A20,20,0,0,0,176,20ZM68,60H188V196H68ZM80,28h96a12,12,0,0,1,12,12V52H68V40A12,12,0,0,1,80,28Zm96,200H80a12,12,0,0,1-12-12V204H188v12A12,12,0,0,1,176,228Z`}))]]),rt=new Map([[`bold`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M192,20H64A28,28,0,0,0,36,48V208a28,28,0,0,0,28,28H192a28,28,0,0,0,28-28V48A28,28,0,0,0,192,20ZM60,84H196v88H60Zm4-40H192a4,4,0,0,1,4,4V60H60V48A4,4,0,0,1,64,44ZM192,212H64a4,4,0,0,1-4-4V196H196v12A4,4,0,0,1,192,212Z`}))],[`duotone`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M208,64V192H48V64Z`,opacity:`0.2`}),W.createElement(`path`,{d:`M192,24H64A24,24,0,0,0,40,48V208a24,24,0,0,0,24,24H192a24,24,0,0,0,24-24V48A24,24,0,0,0,192,24ZM56,72H200V184H56Zm8-32H192a8,8,0,0,1,8,8v8H56V48A8,8,0,0,1,64,40ZM192,216H64a8,8,0,0,1-8-8v-8H200v8A8,8,0,0,1,192,216Z`}))],[`fill`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M192,24H64A24,24,0,0,0,40,48V208a24,24,0,0,0,24,24H192a24,24,0,0,0,24-24V48A24,24,0,0,0,192,24ZM64,40H192a8,8,0,0,1,8,8v8H56V48A8,8,0,0,1,64,40ZM192,216H64a8,8,0,0,1-8-8v-8H200v8A8,8,0,0,1,192,216Z`}))],[`light`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M192,26H64A22,22,0,0,0,42,48V208a22,22,0,0,0,22,22H192a22,22,0,0,0,22-22V48A22,22,0,0,0,192,26ZM54,70H202V186H54ZM64,38H192a10,10,0,0,1,10,10V58H54V48A10,10,0,0,1,64,38ZM192,218H64a10,10,0,0,1-10-10V198H202v10A10,10,0,0,1,192,218Z`}))],[`regular`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M192,24H64A24,24,0,0,0,40,48V208a24,24,0,0,0,24,24H192a24,24,0,0,0,24-24V48A24,24,0,0,0,192,24ZM56,72H200V184H56Zm8-32H192a8,8,0,0,1,8,8v8H56V48A8,8,0,0,1,64,40ZM192,216H64a8,8,0,0,1-8-8v-8H200v8A8,8,0,0,1,192,216Z`}))],[`thin`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M192,28H64A20,20,0,0,0,44,48V208a20,20,0,0,0,20,20H192a20,20,0,0,0,20-20V48A20,20,0,0,0,192,28ZM52,68H204V188H52ZM64,36H192a12,12,0,0,1,12,12V60H52V48A12,12,0,0,1,64,36ZM192,220H64a12,12,0,0,1-12-12V196H204v12A12,12,0,0,1,192,220Z`}))]]),it=new Map([[`bold`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M220,112v96a20,20,0,0,1-20,20H56a20,20,0,0,1-20-20V112A20,20,0,0,1,56,92H76a12,12,0,0,1,0,24H60v88H196V116H180a12,12,0,0,1,0-24h20A20,20,0,0,1,220,112ZM96.49,72.49,116,53v83a12,12,0,0,0,24,0V53l19.51,19.52a12,12,0,1,0,17-17l-40-40a12,12,0,0,0-17,0l-40,40a12,12,0,1,0,17,17Z`}))],[`duotone`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M208,104V216H48V104Z`,opacity:`0.2`}),W.createElement(`path`,{d:`M216,112v96a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V112A16,16,0,0,1,56,96H80a8,8,0,0,1,0,16H56v96H200V112H176a8,8,0,0,1,0-16h24A16,16,0,0,1,216,112ZM93.66,69.66,120,43.31V136a8,8,0,0,0,16,0V43.31l26.34,26.35a8,8,0,0,0,11.32-11.32l-40-40a8,8,0,0,0-11.32,0l-40,40A8,8,0,0,0,93.66,69.66Z`}))],[`fill`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M216,112v96a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V112A16,16,0,0,1,56,96h64v48a8,8,0,0,0,16,0V96h64A16,16,0,0,1,216,112ZM136,43.31l26.34,26.35a8,8,0,0,0,11.32-11.32l-40-40a8,8,0,0,0-11.32,0l-40,40A8,8,0,0,0,93.66,69.66L120,43.31V96h16Z`}))],[`light`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M214,112v96a14,14,0,0,1-14,14H56a14,14,0,0,1-14-14V112A14,14,0,0,1,56,98H80a6,6,0,0,1,0,12H56a2,2,0,0,0-2,2v96a2,2,0,0,0,2,2H200a2,2,0,0,0,2-2V112a2,2,0,0,0-2-2H176a6,6,0,0,1,0-12h24A14,14,0,0,1,214,112ZM92.24,68.24,122,38.49V136a6,6,0,0,0,12,0V38.49l29.76,29.75a6,6,0,1,0,8.48-8.48l-40-40a6,6,0,0,0-8.48,0l-40,40a6,6,0,1,0,8.48,8.48Z`}))],[`regular`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M216,112v96a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V112A16,16,0,0,1,56,96H80a8,8,0,0,1,0,16H56v96H200V112H176a8,8,0,0,1,0-16h24A16,16,0,0,1,216,112ZM93.66,69.66,120,43.31V136a8,8,0,0,0,16,0V43.31l26.34,26.35a8,8,0,0,0,11.32-11.32l-40-40a8,8,0,0,0-11.32,0l-40,40A8,8,0,0,0,93.66,69.66Z`}))],[`thin`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M212,112v96a12,12,0,0,1-12,12H56a12,12,0,0,1-12-12V112a12,12,0,0,1,12-12H80a4,4,0,0,1,0,8H56a4,4,0,0,0-4,4v96a4,4,0,0,0,4,4H200a4,4,0,0,0,4-4V112a4,4,0,0,0-4-4H176a4,4,0,0,1,0-8h24A12,12,0,0,1,212,112ZM90.83,66.83,124,33.66V136a4,4,0,0,0,8,0V33.66l33.17,33.17a4,4,0,1,0,5.66-5.66l-40-40a4,4,0,0,0-5.66,0l-40,40a4,4,0,0,0,5.66,5.66Z`}))]]),at=new Map([[`bold`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M28,64A12,12,0,0,1,40,52H216a12,12,0,0,1,0,24H40A12,12,0,0,1,28,64ZM64,92a12,12,0,0,0,0,24H192a12,12,0,0,0,0-24Zm152,40H40a12,12,0,0,0,0,24H216a12,12,0,0,0,0-24Zm-24,40H64a12,12,0,0,0,0,24H192a12,12,0,0,0,0-24Z`}))],[`duotone`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M216,64V168a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V64Z`,opacity:`0.2`}),W.createElement(`path`,{d:`M32,64a8,8,0,0,1,8-8H216a8,8,0,0,1,0,16H40A8,8,0,0,1,32,64ZM64,96a8,8,0,0,0,0,16H192a8,8,0,0,0,0-16Zm152,40H40a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Zm-24,40H64a8,8,0,0,0,0,16H192a8,8,0,0,0,0-16Z`}))],[`fill`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM176,184H80a8,8,0,0,1,0-16h96a8,8,0,0,1,0,16Zm16-32H64a8,8,0,0,1,0-16H192a8,8,0,0,1,0,16ZM72,112a8,8,0,0,1,8-8h96a8,8,0,0,1,0,16H80A8,8,0,0,1,72,112ZM192,88H64a8,8,0,0,1,0-16H192a8,8,0,0,1,0,16Z`}))],[`light`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M34,64a6,6,0,0,1,6-6H216a6,6,0,0,1,0,12H40A6,6,0,0,1,34,64ZM64,98a6,6,0,0,0,0,12H192a6,6,0,0,0,0-12Zm152,40H40a6,6,0,0,0,0,12H216a6,6,0,0,0,0-12Zm-24,40H64a6,6,0,0,0,0,12H192a6,6,0,0,0,0-12Z`}))],[`regular`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M32,64a8,8,0,0,1,8-8H216a8,8,0,0,1,0,16H40A8,8,0,0,1,32,64ZM64,96a8,8,0,0,0,0,16H192a8,8,0,0,0,0-16Zm152,40H40a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Zm-24,40H64a8,8,0,0,0,0,16H192a8,8,0,0,0,0-16Z`}))],[`thin`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M36,64a4,4,0,0,1,4-4H216a4,4,0,0,1,0,8H40A4,4,0,0,1,36,64Zm28,36a4,4,0,0,0,0,8H192a4,4,0,0,0,0-8Zm152,40H40a4,4,0,0,0,0,8H216a4,4,0,0,0,0-8Zm-24,40H64a4,4,0,0,0,0,8H192a4,4,0,0,0,0-8Z`}))]]),ot=new Map([[`bold`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M28,64A12,12,0,0,1,40,52H216a12,12,0,0,1,0,24H40A12,12,0,0,1,28,64Zm12,52H168a12,12,0,0,0,0-24H40a12,12,0,0,0,0,24Zm176,16H40a12,12,0,0,0,0,24H216a12,12,0,0,0,0-24Zm-48,40H40a12,12,0,0,0,0,24H168a12,12,0,0,0,0-24Z`}))],[`duotone`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M216,64V168a16,16,0,0,1-16,16H40V64Z`,opacity:`0.2`}),W.createElement(`path`,{d:`M32,64a8,8,0,0,1,8-8H216a8,8,0,0,1,0,16H40A8,8,0,0,1,32,64Zm8,48H168a8,8,0,0,0,0-16H40a8,8,0,0,0,0,16Zm176,24H40a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Zm-48,40H40a8,8,0,0,0,0,16H168a8,8,0,0,0,0-16Z`}))],[`fill`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM160,184H64a8,8,0,0,1,0-16h96a8,8,0,0,1,0,16Zm32-32H64a8,8,0,0,1,0-16H192a8,8,0,0,1,0,16ZM56,112a8,8,0,0,1,8-8h96a8,8,0,0,1,0,16H64A8,8,0,0,1,56,112ZM192,88H64a8,8,0,0,1,0-16H192a8,8,0,0,1,0,16Z`}))],[`light`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M34,64a6,6,0,0,1,6-6H216a6,6,0,0,1,0,12H40A6,6,0,0,1,34,64Zm6,46H168a6,6,0,0,0,0-12H40a6,6,0,0,0,0,12Zm176,28H40a6,6,0,0,0,0,12H216a6,6,0,0,0,0-12Zm-48,40H40a6,6,0,0,0,0,12H168a6,6,0,0,0,0-12Z`}))],[`regular`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M32,64a8,8,0,0,1,8-8H216a8,8,0,0,1,0,16H40A8,8,0,0,1,32,64Zm8,48H168a8,8,0,0,0,0-16H40a8,8,0,0,0,0,16Zm176,24H40a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Zm-48,40H40a8,8,0,0,0,0,16H168a8,8,0,0,0,0-16Z`}))],[`thin`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M36,64a4,4,0,0,1,4-4H216a4,4,0,0,1,0,8H40A4,4,0,0,1,36,64Zm4,44H168a4,4,0,0,0,0-8H40a4,4,0,0,0,0,8Zm176,32H40a4,4,0,0,0,0,8H216a4,4,0,0,0,0-8Zm-48,40H40a4,4,0,0,0,0,8H168a4,4,0,0,0,0-8Z`}))]]),st=new Map([[`bold`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M28,64A12,12,0,0,1,40,52H216a12,12,0,0,1,0,24H40A12,12,0,0,1,28,64ZM216,92H88a12,12,0,0,0,0,24H216a12,12,0,0,0,0-24Zm0,40H40a12,12,0,0,0,0,24H216a12,12,0,0,0,0-24Zm0,40H88a12,12,0,0,0,0,24H216a12,12,0,0,0,0-24Z`}))],[`duotone`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M216,64V184H56a16,16,0,0,1-16-16V64Z`,opacity:`0.2`}),W.createElement(`path`,{d:`M32,64a8,8,0,0,1,8-8H216a8,8,0,0,1,0,16H40A8,8,0,0,1,32,64ZM216,96H88a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Zm0,40H40a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Zm0,40H88a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Z`}))],[`fill`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM192,184H96a8,8,0,0,1,0-16h96a8,8,0,0,1,0,16Zm0-32H64a8,8,0,0,1,0-16H192a8,8,0,0,1,0,16Zm0-32H96a8,8,0,0,1,0-16h96a8,8,0,0,1,0,16Zm0-32H64a8,8,0,0,1,0-16H192a8,8,0,0,1,0,16Z`}))],[`light`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M34,64a6,6,0,0,1,6-6H216a6,6,0,0,1,0,12H40A6,6,0,0,1,34,64ZM216,98H88a6,6,0,0,0,0,12H216a6,6,0,0,0,0-12Zm0,40H40a6,6,0,0,0,0,12H216a6,6,0,0,0,0-12Zm0,40H88a6,6,0,0,0,0,12H216a6,6,0,0,0,0-12Z`}))],[`regular`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M32,64a8,8,0,0,1,8-8H216a8,8,0,0,1,0,16H40A8,8,0,0,1,32,64ZM216,96H88a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Zm0,40H40a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Zm0,40H88a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Z`}))],[`thin`,W.createElement(W.Fragment,null,W.createElement(`path`,{d:`M36,64a4,4,0,0,1,4-4H216a4,4,0,0,1,0,8H40A4,4,0,0,1,36,64Zm180,36H88a4,4,0,0,0,0,8H216a4,4,0,0,0,0-8Zm0,40H40a4,4,0,0,0,0,8H216a4,4,0,0,0,0-8Zm0,40H88a4,4,0,0,0,0,8H216a4,4,0,0,0,0-8Z`}))]]),ct=Object.defineProperty,lt=Object.defineProperties,ut=Object.getOwnPropertyDescriptors,dt=Object.getOwnPropertySymbols,ft=Object.prototype.hasOwnProperty,pt=Object.prototype.propertyIsEnumerable,mt=(e,t,n)=>t in e?ct(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ht=(e,t)=>{for(var n in t||={})ft.call(t,n)&&mt(e,n,t[n]);if(dt)for(var n of dt(t))pt.call(t,n)&&mt(e,n,t[n]);return e},gt=(e,t)=>lt(e,ut(t)),_t=(0,W.forwardRef)((e,t)=>W.createElement(i,gt(ht({ref:t},e),{weights:tt})));_t.displayName=`Crosshair`;var vt=Object.defineProperty,yt=Object.defineProperties,bt=Object.getOwnPropertyDescriptors,xt=Object.getOwnPropertySymbols,St=Object.prototype.hasOwnProperty,Ct=Object.prototype.propertyIsEnumerable,wt=(e,t,n)=>t in e?vt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Tt=(e,t)=>{for(var n in t||={})St.call(t,n)&&wt(e,n,t[n]);if(xt)for(var n of xt(t))Ct.call(t,n)&&wt(e,n,t[n]);return e},Et=(e,t)=>yt(e,bt(t)),Dt=(0,W.forwardRef)((e,t)=>W.createElement(i,Et(Tt({ref:t},e),{weights:nt})));Dt.displayName=`DeviceMobile`;var Ot=Object.defineProperty,kt=Object.defineProperties,At=Object.getOwnPropertyDescriptors,jt=Object.getOwnPropertySymbols,Mt=Object.prototype.hasOwnProperty,Nt=Object.prototype.propertyIsEnumerable,Pt=(e,t,n)=>t in e?Ot(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Ft=(e,t)=>{for(var n in t||={})Mt.call(t,n)&&Pt(e,n,t[n]);if(jt)for(var n of jt(t))Nt.call(t,n)&&Pt(e,n,t[n]);return e},It=(e,t)=>kt(e,At(t)),Lt=(0,W.forwardRef)((e,t)=>W.createElement(i,It(Ft({ref:t},e),{weights:rt})));Lt.displayName=`DeviceTablet`;var Rt=Object.defineProperty,zt=Object.defineProperties,Bt=Object.getOwnPropertyDescriptors,Vt=Object.getOwnPropertySymbols,Ht=Object.prototype.hasOwnProperty,Ut=Object.prototype.propertyIsEnumerable,Wt=(e,t,n)=>t in e?Rt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Gt=(e,t)=>{for(var n in t||={})Ht.call(t,n)&&Wt(e,n,t[n]);if(Vt)for(var n of Vt(t))Ut.call(t,n)&&Wt(e,n,t[n]);return e},Kt=(e,t)=>zt(e,Bt(t)),qt=(0,W.forwardRef)((e,t)=>W.createElement(i,Kt(Gt({ref:t},e),{weights:it})));qt.displayName=`Export`;var Jt=Object.defineProperty,Yt=Object.defineProperties,Xt=Object.getOwnPropertyDescriptors,Zt=Object.getOwnPropertySymbols,Qt=Object.prototype.hasOwnProperty,$t=Object.prototype.propertyIsEnumerable,en=(e,t,n)=>t in e?Jt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,tn=(e,t)=>{for(var n in t||={})Qt.call(t,n)&&en(e,n,t[n]);if(Zt)for(var n of Zt(t))$t.call(t,n)&&en(e,n,t[n]);return e},nn=(e,t)=>Yt(e,Xt(t)),rn=(0,W.forwardRef)((e,t)=>W.createElement(i,nn(tn({ref:t},e),{weights:at})));rn.displayName=`TextAlignCenter`;var an=Object.defineProperty,on=Object.defineProperties,sn=Object.getOwnPropertyDescriptors,cn=Object.getOwnPropertySymbols,ln=Object.prototype.hasOwnProperty,un=Object.prototype.propertyIsEnumerable,dn=(e,t,n)=>t in e?an(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,fn=(e,t)=>{for(var n in t||={})ln.call(t,n)&&dn(e,n,t[n]);if(cn)for(var n of cn(t))un.call(t,n)&&dn(e,n,t[n]);return e},pn=(e,t)=>on(e,sn(t)),mn=(0,W.forwardRef)((e,t)=>W.createElement(i,pn(fn({ref:t},e),{weights:ot})));mn.displayName=`TextAlignLeft`;var hn=Object.defineProperty,gn=Object.defineProperties,_n=Object.getOwnPropertyDescriptors,vn=Object.getOwnPropertySymbols,yn=Object.prototype.hasOwnProperty,bn=Object.prototype.propertyIsEnumerable,xn=(e,t,n)=>t in e?hn(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Sn=(e,t)=>{for(var n in t||={})yn.call(t,n)&&xn(e,n,t[n]);if(vn)for(var n of vn(t))bn.call(t,n)&&xn(e,n,t[n]);return e},Cn=(e,t)=>gn(e,_n(t)),wn=(0,W.forwardRef)((e,t)=>W.createElement(i,Cn(Sn({ref:t},e),{weights:st})));wn.displayName=`TextAlignRight`;var G=v(),K=(e,t,n,r=2.4)=>({left:e,top:t,width:n,height:r,kind:`line`}),q=(e,t,n,r)=>({left:e,top:t,width:n,height:r,kind:`block`}),J=(e,t,n,r)=>({left:e,top:t,width:n,height:r,kind:`outline`}),Y=(e,t,n,r,i=!1)=>({left:e,top:t,width:n,height:r,kind:`paint`,round:i}),Tn=1.6,En={website:[{aspect:Tn,blocks:[q(6,7,12,4),K(64,8,8,2),K(76,8,8,2),q(6,23,44,7),q(6,33,32,7),K(6,46,38),K(6,51,28),Y(6,60,14,7,!0),Y(56,21,38,47),J(6,77,27,15),J(36.5,77,27,15),J(67,77,27,15)]},{aspect:Tn,blocks:[K(42,8,16,2.6),q(22,22,56,7),K(30,34,40),Y(42,43,16,7,!0),Y(10,58,80,30),J(14,62,22,22),J(39,62,22,22),J(64,62,22,22)]}],app:[{aspect:.5,blocks:[K(10,4,18,1.4),q(10,10,52,3.4),J(10,17,80,5.5),Y(10,29,14,7,!0),K(30,30,50,1.8),K(30,34,34,1.6),Y(10,42,14,7,!0),K(30,43,46,1.8),K(30,47,30,1.6),J(6,88,88,7),Y(70,74,18,9,!0)]}],slides:[{aspect:16/9,blocks:[q(8,15,48,10),K(8,30,36,3.5),K(8,45,40,3),K(8,54,34,3),K(8,63,38,3),Y(60,15,32,64),K(8,87,14,2)]}],document:[{aspect:.77,blocks:[q(12,9,56,4.4),K(12,16,30,1.6),K(12,24,76,1.5),K(12,28,72,1.5),K(12,32,76,1.5),K(12,36,46,1.5),K(12,43,76,1.5),K(12,47,70,1.5),K(12,51,60,1.5),Y(12,60,76,20),K(30,84,40,1.4)]}],wireframe:[{aspect:Tn,blocks:[J(4,6,92,10),J(4,21,22,72),J(30,21,66,34),J(30,59,31,34),J(65,59,31,34),K(34,27,30),K(34,33,22)]}],dashboard:[{aspect:Tn,blocks:[J(3,5,16,90),K(6,12,10,2),K(6,19,8,2),K(6,26,10,2),q(23,6,22,16),q(48.5,6,22,16),q(74,6,22,16),Y(23,28,73,38),K(23,73,73,3),K(23,80,73,3),K(23,87,73,3)]}],type:[{aspect:Tn,blocks:[Y(8,14,10,16,!0),Y(21,14,10,16,!0),Y(34,14,10,16,!0),q(54,14,38,9),K(54,28,30,5),K(54,38,24,3),K(54,45,20,2),J(8,60,84,30),K(12,66,40,3),K(12,73,60,1.8),K(12,78,52,1.8)]}],"design-system":[{aspect:Tn,blocks:[q(8,10,34,7),K(8,21,44),q(66,30,26,10),K(66,44,20,3),J(8,56,20,9),J(8,72,43,18),K(12,79,26,2),J(58,56,34,34),K(62,62,22,3),K(62,70,26,1.8),Y(8,30,9,14,!0),Y(19,30,9,14,!0),Y(30,30,9,14,!0),Y(41,30,9,14,!0),Y(31,56,20,9)]}]};function Dn(e,t){let n=(e?En[e]:void 0)??En.website;return n[t%n.length]}Object.keys(En);var On=e=>Math.round(380+e.width*11);function kn(e){return[{type:`think`,duration:1500},...e.blocks.map((e,t)=>e.kind===`paint`?{type:`paint`,block:t,duration:900}:{type:`draw`,block:t,duration:On(e)}),{type:`inspect`,duration:2200},{type:`rest`,duration:1800},{type:`clear`,duration:600}]}var An={pencil:[2.8,21.2],lens:[10,10],prism:[12,12]},jn=e=>Math.round(Math.min(104,Math.max(56,e*.16)));function Mn(e,t){let n=Math.max(0,Math.min(640,e.width-64)),r=Math.max(0,e.height-120),i=Math.min(n,r*t);return{width:Math.round(i),height:Math.round(i/t)}}var X=r(),Nn=`(prefers-reduced-motion: reduce)`,Pn=`cubic-bezier(.3,1.1,.4,1)`,Fn=`cubic-bezier(.45,0,.55,1)`,In=`cubic-bezier(.16,1,.3,1)`,Ln=class{animations=new Set;timer=null;paused=!1;stopped=!1;constructor(e){this.paused=e}wait(e){return new Promise(t=>{this.stopped||(this.timer={resolve:t,remaining:e,startedAt:0,id:null},this.paused||this.arm())})}arm(){let e=this.timer;e&&(e.startedAt=performance.now(),e.id=window.setTimeout(()=>{this.timer=null,e.resolve()},e.remaining))}animate(e,t,n){if(this.stopped)return;let r=e.animate(t,{fill:`forwards`,...n});this.animations.add(r),this.paused&&r.pause(),r.finished.then(()=>{this.animations.delete(r),e.isConnected&&(r.commitStyles(),r.cancel())},()=>this.animations.delete(r))}pause(){if(!(this.paused||this.stopped)){this.paused=!0;for(let e of this.animations)e.pause();this.timer?.id!=null&&(window.clearTimeout(this.timer.id),this.timer.remaining=Math.max(0,this.timer.remaining-(performance.now()-this.timer.startedAt)),this.timer.id=null)}}resume(){if(!(!this.paused||this.stopped)){this.paused=!1;for(let e of this.animations)e.play();this.arm()}}stop(){this.stopped=!0,this.timer?.id!=null&&window.clearTimeout(this.timer.id),this.timer=null;for(let e of this.animations)e.cancel();this.animations.clear()}},Rn=e=>`translate(${e.x}px, ${e.y}px)`;function zn(e,t){t.kind===`paint`?(e.style.opacity=`0`,e.style.transform=`scale(0.94)`):(e.style.opacity=`1`,e.style.transform=`scaleX(0)`)}function Bn(e){let t=(0,G.c)(40),n=(0,W.useRef)(null),r=(0,W.useRef)(null),i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=[],t[0]=i):i=t[0];let a=(0,W.useRef)(i),[o,s]=(0,W.useState)(null),[c,l]=(0,W.useState)(0),[u,d]=(0,W.useState)(`thinking`),[f,p]=(0,W.useState)(0),[m,h]=(0,W.useState)(Un),_,v,y;t[1]!==c||t[2]!==e.kind||t[3]!==o?(v=Dn(e.kind,c),_=o?Mn(o,v.aspect):null,y=_?jn(_.width):0,t[1]=c,t[2]=e.kind,t[3]=o,t[4]=_,t[5]=v,t[6]=y):(_=t[4],v=t[5],y=t[6]);let b=y,x;t[7]!==_||t[8]!==b?(x={board:_,borgSize:b},t[7]=_,t[8]=b,t[9]=x):x=t[9];let S=(0,W.useRef)(x),C;t[10]!==_||t[11]!==b?(C=()=>{S.current={board:_,borgSize:b}},t[10]=_,t[11]=b,t[12]=C):C=t[12],(0,W.useLayoutEffect)(C);let w,T;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(w=()=>{let e=n.current;if(!e)return;let t=new ResizeObserver(e=>{let[t]=e;if(!t)return;let{width:n,height:r}=t.contentRect;n>0&&r>0&&s({width:n,height:r})});return t.observe(e),()=>t.disconnect()},T=[],t[13]=w,t[14]=T):(w=t[13],T=t[14]),(0,W.useLayoutEffect)(w,T);let E,D;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(E=()=>{let e=window.matchMedia(Nn),t=()=>h(e.matches);return e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)},D=[],t[15]=E,t[16]=D):(E=t[15],D=t[16]),(0,W.useEffect)(E,D);let O=(0,W.useRef)(null),k=(0,W.useRef)(!0),A,j;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(A=()=>{let e=n.current;if(!e)return;let t=!0,r=()=>{k.current=t&&!document.hidden,k.current?O.current?.resume():O.current?.pause()},i=new IntersectionObserver(e=>{let[n]=e;t=n?.isIntersecting??!1,r()});return i.observe(e),document.addEventListener(`visibilitychange`,r),()=>{i.disconnect(),document.removeEventListener(`visibilitychange`,r)}},j=[],t[17]=A,t[18]=j):(A=t[17],j=t[18]),(0,W.useEffect)(A,j);let M=_!==null,N=(0,W.useRef)(null),P;t[19]!==v||t[20]!==M||t[21]!==m?(P=()=>{let e=r.current,t=S.current;if(!M||!e||!t.board)return;let{blocks:n}=v,i=n.map((e,t)=>a.current[t]??null),o=()=>S.current.board??{width:0,height:0},s=()=>S.current.borgSize/24,c=(e,t)=>({x:t.x-e[0]*s(),y:t.y-e[1]*s()}),u=()=>{let{width:e,height:t}=o();return c(An.prism,{x:e-S.current.borgSize*.3,y:t-S.current.borgSize*.3})};if(m){for(let e of i)e&&(e.style.opacity=`1`,e.style.transform=`none`);N.current=u(),e.style.transform=Rn(N.current),d(`waiting`);return}n.forEach((e,t)=>{let n=i[t];n&&zn(n,e)});let f=new Ln(!k.current);O.current=f;let h=(t,n,r)=>{let i=N.current??t;N.current=t,f.animate(e,[{transform:Rn(i)},{transform:Rn(t)}],{duration:n,easing:r})},g=e=>{let{width:t,height:n}=o();return{left:e.left/100*t,top:e.top/100*n,width:e.width/100*t,height:e.height/100*n}};return(async()=>{let t=kn(v);for(let[r,a]of t.entries()){p(Hn);let{width:s,height:m}=o();if(a.type===`think`){d(`thinking`);let t=c(An.prism,{x:s/2,y:m/2});N.current===null?(N.current=t,e.style.transform=Rn(t)):h(t,480*1.4,Pn),await f.wait(a.duration)}else if(a.type===`draw`){let e=n[a.block],t=i[a.block],r=g(e),o=e.kind===`outline`?r.top:r.top+r.height/2;d(`edit`),h(c(An.pencil,{x:r.left,y:o}),480,Pn),await f.wait(480),t&&f.animate(t,[{transform:`scaleX(0)`},{transform:`scaleX(1)`}],{duration:a.duration,easing:Fn}),h(c(An.pencil,{x:r.left+r.width,y:o}),a.duration,Fn),await f.wait(a.duration)}else if(a.type===`paint`){let e=i[a.block],t=g(n[a.block]);d(`starting`);let r={x:t.left+t.width/2,y:Math.max(S.current.borgSize*.5,t.top-S.current.borgSize*.1)};h(c(An.prism,r),480,Pn),await f.wait(660),e&&f.animate(e,[{opacity:0,transform:`scale(0.94)`},{opacity:1,transform:`scale(1)`}],{duration:520,easing:In}),await f.wait(a.duration)}else if(a.type===`inspect`){d(`search`),h(c(An.lens,{x:s*.2,y:m*.26}),480,Pn),await f.wait(480);let e=a.duration-480;h(c(An.lens,{x:s*.78,y:m*.7}),e,Fn),await f.wait(e)}else if(a.type===`rest`)d(`waiting`),h(u(),480*1.4,Pn),await f.wait(a.duration);else{for(let e of i)e&&f.animate(e,[{opacity:1},{opacity:0}],{duration:a.duration,easing:In});await f.wait(a.duration),r===t.length-1&&l(Vn)}}})(),()=>{f.stop(),O.current===f&&(O.current=null)}},t[19]=v,t[20]=M,t[21]=m,t[22]=P):P=t[22];let F;t[23]!==v||t[24]!==c||t[25]!==M||t[26]!==m?(F=[v,c,M,m],t[23]=v,t[24]=c,t[25]=M,t[26]=m,t[27]=F):F=t[27],(0,W.useLayoutEffect)(P,F);let I;t[28]===e.className?I=t[29]:(I=g(`relative grid h-full place-items-center`,e.className),t[28]=e.className,t[29]=I);let L;t[30]!==_||t[31]!==b||t[32]!==v||t[33]!==c||t[34]!==u||t[35]!==f?(L=_?(0,X.jsxs)(`div`,{className:`flex flex-col items-center gap-6`,children:[(0,X.jsxs)(`div`,{"aria-hidden":!0,className:`relative rounded-control bg-card ring-1 ring-line`,style:{width:_.width,height:_.height},children:[v.blocks.map((e,t)=>(0,X.jsx)(`span`,{ref:e=>{a.current[t]=e},className:g(`absolute`,e.kind===`paint`?`origin-center`:`origin-left`,e.round||e.kind===`line`?`rounded-full`:`rounded-small`,e.kind===`outline`?`ring-1 ring-strong-line ring-inset`:e.kind===`paint`?`bg-brand/55`:`bg-strong-line`),style:{left:`${e.left}%`,top:`${e.top}%`,width:`${e.width}%`,height:`${e.height}%`}},`${c}:${e.left}:${e.top}`)),(0,X.jsx)(`span`,{ref:r,className:`absolute top-0 left-0 text-brand-ink will-change-transform`,children:(0,X.jsx)(`span`,{className:`block`,style:{zoom:b/24},children:(0,X.jsx)(B,{phase:u,step:String(f),seed:`design-artist`})})})]}),(0,X.jsxs)(`span`,{role:`status`,className:`inline-flex items-center gap-2 text-[13px] font-[550] text-brand-ink`,children:[(0,X.jsx)(`span`,{"aria-hidden":!0,className:`size-[5px] rounded-full bg-brand-ink`}),`Designing`]})]}):null,t[30]=_,t[31]=b,t[32]=v,t[33]=c,t[34]=u,t[35]=f,t[36]=L):L=t[36];let R;return t[37]!==I||t[38]!==L?(R=(0,X.jsx)(`div`,{ref:n,className:I,children:L}),t[37]=I,t[38]=L,t[39]=R):R=t[39],R}function Vn(e){return e+1}function Hn(e){return e+1}function Un(){return typeof window<`u`&&window.matchMedia(Nn).matches}var Wn=4e3,Gn=e=>typeof e==`object`&&!!e&&!Array.isArray(e),Z=e=>typeof e==`number`&&Number.isFinite(e),Q=(e,t=Wn)=>typeof e==`string`?e.slice(0,t):null,Kn=/^(?:#[0-9a-f]{3,8}|(?:rgba?|hsla?|hwb|lab|lch|oklab|oklch|color)\([^()]*\)|[a-z]+)$/i,qn=e=>{let t=Q(e,64)?.trim();return t&&Kn.test(t)?t:null};function Jn(e){return!Gn(e)||!Z(e.x)||!Z(e.y)?null:{x:e.x,y:e.y}}function Yn(e){if(!Gn(e))return null;let{x:t,y:n,width:r,height:i}=e;return!Z(t)||!Z(n)||!Z(r)||!Z(i)?null:{x:t,y:n,width:r,height:i}}function Xn(e){return!Gn(e)||!Z(e.node)||!Z(e.fx)||!Z(e.fy)?null:{node:Math.trunc(e.node),fx:e.fx,fy:e.fy}}function Zn(e){if(!Gn(e)||!Z(e.node))return null;let t=Yn(e.rect),n=Q(e.tagName,64);return!t||!n?null:{node:Math.trunc(e.node),tagName:n,label:Q(e.label,120)??n,selector:Q(e.selector,400)??``,htmlPreview:Q(e.htmlPreview,1200)??``,text:Q(e.text,600)??``,rect:t}}function Qn(e){let t=Zn(e);if(!t||!Gn(e))return null;let n={};if(Gn(e.styles))for(let[t,r]of Object.entries(e.styles).slice(0,24)){let e=Q(r,200);e!==null&&(n[t.slice(0,64)]=e)}return{...t,editableText:Q(e.editableText),styles:n}}function $n(e,t,n){if(Array.isArray(e))return e.slice(0,n).map(t).filter(e=>e!==null)}var er=e=>Gn(e)&&Z(e.node)&&Z(e.depth)?{node:Math.trunc(e.node),depth:Math.max(0,Math.min(8,Math.trunc(e.depth))),tagName:Q(e.tagName,64)??``,label:Q(e.label,120)??``}:null,tr=e=>{if(!Gn(e))return null;let t=Q(e.name,120),n=Q(e.value,400);return t?.startsWith(`--`)&&n!==null?{name:t,value:n}:null},nr=8192,rr=(e,t)=>Z(e)&&e>=0&&e<=t,ir=e=>{if(!Gn(e)||!rr(e.width,nr)||!rr(e.height,nr)||!Array.isArray(e.items))return null;let t=e.items.slice(0,600).filter(e=>Gn(e)&&Gn(e.rect)&&rr(e.rect.width,nr)&&rr(e.rect.height,nr));return{...e,items:t}};function ar(e){if(!Gn(e)||e.borgDesignBridge!==1)return null;switch(e.type){case`ready`:return{type:`ready`,title:Q(e.title,300)??``,sourceHash:Q(e.sourceHash,128)??``,slideCount:Z(e.slideCount)?Math.max(0,Math.trunc(e.slideCount)):0};case`pick`:{let t=Jn(e.point),n=Xn(e.anchor),r=Zn(e.target);return t&&n&&r?{type:`pick`,point:t,anchor:n,target:r}:null}case`ink`:{let t=Jn(e.point),n=Yn(e.bounds),r=$n(e.points,Jn,4e3);return!t||!n||!r?null:{type:`ink`,point:t,points:r,bounds:n,anchor:Xn(e.anchor),target:Zn(e.target)}}case`selection`:return{type:`selection`,selection:e.selection===null?null:Qn(e.selection)};case`editing`:return Z(e.node)?{type:`editing`,node:Math.trunc(e.node)}:null;case`text`:{let t=Q(e.text,2e4);return Z(e.node)&&t!==null?{type:`text`,node:Math.trunc(e.node),text:t,exact:e.exact===!0}:null}case`printed`:return{type:`printed`};case`pin`:{let t=Q(e.id,120);return t?{type:`pin`,id:t}:null}case`key`:{let t=Q(e.key,32);return t?{type:`key`,key:t}:null}case`reply`:{let t=Q(e.requestId,64);if(!t)return null;let n=$n(e.layers,er,400),r=$n(e.tokens,tr,60),i=$n(e.palette,qn,8),a=$n(e.slides,ir,80);return{type:`reply`,requestId:t,...n?{layers:n}:{},...r?{tokens:r}:{},...i?{palette:i}:{},...a?{slides:a}:{}}}default:return null}}var or=class{frame=null;listeners=new Set;pending=new Map;requestCount=0;readyEvent=null;connected=!1;constructor(){this.handleMessage=this.handleMessage.bind(this)}connect(){this.connected||(this.connected=!0,window.addEventListener(`message`,this.handleMessage))}disconnect(){if(this.connected){this.connected=!1,window.removeEventListener(`message`,this.handleMessage);for(let e of this.pending.values())e(null);this.pending.clear()}}attach(e){e!==this.frame&&(this.frame=e,this.readyEvent=null)}get ready(){return this.readyEvent}subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)}send(e){this.frame?.contentWindow?.postMessage({[ne]:1,...e},`*`)}request(e,t=4e3){if(!this.frame?.contentWindow)return Promise.resolve(null);this.requestCount+=1;let n=`r${this.requestCount}`;return new Promise(r=>{let i=window.setTimeout(()=>{this.pending.delete(n),r(null)},t);this.pending.set(n,e=>{window.clearTimeout(i),r(e)}),this.send({type:`request`,requestId:n,what:e})})}handleMessage(e){if(!this.frame||e.source!==this.frame.contentWindow)return;let t=ar(e.data);if(t){if(t.type===`ready`&&(this.readyEvent=t),t.type===`reply`){let e=this.pending.get(t.requestId);e&&(this.pending.delete(t.requestId),e(t));return}for(let e of this.listeners)e(t)}}};function sr(e){let t=new URL(e);return t.searchParams.set(ie,`1`),t.toString()}function cr(e){let t=new URL(e);return t.searchParams.delete(ie),t.toString()}function lr(e){return Array.from(Me(new TextEncoder().encode(e)),e=>e.toString(16).padStart(2,`0`)).join(``)}async function ur(e){let t=await fetch(cr(e),{credentials:`omit`,cache:`no-store`});if(!t.ok)throw Error(`The design could not be read (${t.status}).`);return t.text()}async function dr(e){try{let t=await e.readSource();if(lr(t)!==e.sourceHash)return{status:`changed`};let n=H(t,e.edits.map(e=>e.edit)),r=e.edits.filter(e=>n.skipped.includes(e.edit)),i=e.edits.filter(e=>!r.includes(e));return i.length>0&&await e.write(n.html),{status:`saved`,applied:i,skipped:r}}catch(e){return{status:`failed`,message:e instanceof Error?e.message:`The design could not be saved.`}}}function fr(e){if(!e)return`transparent`;let t=e.trim();if(/^#[0-9a-f]{6}$/i.test(t))return t.toLowerCase();if(/^#[0-9a-f]{3}$/i.test(t))return`#${Array.from(t.slice(1),e=>e+e).join(``)}`.toLowerCase();if(t===`transparent`)return`transparent`;let n=/^rgba?\(([^)]+)\)$/i.exec(t)?.[1]?.split(/[\s,/]+/).filter(Boolean);return!n||n.length<3?null:n[3]!==void 0&&Number.parseFloat(n[3])===0?`transparent`:`#${n.slice(0,3).map(e=>Math.max(0,Math.min(255,Math.round(Number(e)))).toString(16).padStart(2,`0`)).join(``)}`}function pr(e,t){return{pageUrl:t,pageTitle:t,tagName:e.tagName,selector:e.selector||null,htmlPreview:e.htmlPreview,componentName:null,source:null,stack:[],styles:``,pickedAt:new Date().toISOString()}}function mr(e){return{id:p(),pageUrl:e.path,pageTitle:e.path,comment:e.comment,elements:e.target?[{id:p(),element:pr(e.target,e.path),rect:e.target.rect}]:[],regions:[],strokes:e.ink?[{id:p(),color:e.inkColor??`#7552b0`,width:3,points:e.ink.points,bounds:e.ink.bounds}]:[],styleChanges:[],screenshot:null,createdAt:new Date().toISOString()}}function hr(e){let t=e.edits.map((e,t)=>({targetId:String(t),selector:e.selector,property:`${e.target}: ${e.property}`,previousValue:e.previousValue,value:e.value})),n=e.edits.length;return{id:p(),pageUrl:e.path,pageTitle:e.path,comment:e.comment??`I edited ${e.path} directly and saved it (${n} change${n===1?``:`s`}). The file already has them; keep them when you next change the page.`,elements:[],regions:[],strokes:[],styleChanges:t,screenshot:null,createdAt:new Date().toISOString()}}var gr=e(Qe(),1),_r=9525,vr=.75,yr=914400,br=51206400,xr=`http://schemas.openxmlformats.org/drawingml/2006/main`,Sr=`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,Cr=`http://schemas.openxmlformats.org/presentationml/2006/main`,wr=`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,$=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2
- `,Tr=/[\u0000-\u0008\u000B\u000C\u000E-\u001F￾￿]/g;function Er(e){return e.replace(Tr,``).replaceAll(`&`,`&amp;`).replaceAll(`<`,`&lt;`).replaceAll(`>`,`&gt;`).replaceAll(`"`,`&quot;`).replaceAll(`'`,`&apos;`)}function Dr(e){if(!e)return null;let t=e.trim().toLowerCase(),n=/^#([0-9a-f]{3,8})$/.exec(t)?.[1];if(n){let e=n.length<=4?n.split(``).map(e=>e+e).join(``):n,t=e.length===8?Number.parseInt(e.slice(6,8),16)/255:1;return t<=.02?null:{hex:e.slice(0,6).toUpperCase(),alpha:t}}let r=/^rgba?\(([^)]+)\)$/.exec(t)?.[1];if(!r)return null;let[i,a,o]=r.split(/[\s,/]+/).filter(Boolean).map(e=>e.endsWith(`%`)?Number.parseFloat(e)/100*255:Number(e));if(![i,a,o].every(e=>Number.isFinite(e)))return null;let s=r.split(/[\s,/]+/).filter(Boolean)[3],c=s===void 0?1:s.endsWith(`%`)?Number.parseFloat(s)/100:Number(s);if(!Number.isFinite(c)||c<=.02)return null;let l=e=>Math.max(0,Math.min(255,Math.round(e))).toString(16).padStart(2,`0`);return{hex:`${l(i)}${l(a)}${l(o)}`.toUpperCase(),alpha:c}}var Or=e=>Math.round(e*_r);function kr(e){return`<a:xfrm><a:off x="${Or(e.x)}" y="${Or(e.y)}"/><a:ext cx="${Math.max(1,Or(e.width))}" cy="${Math.max(1,Or(e.height))}"/></a:xfrm>`}function Ar(e,t=1){let n=Math.round(Math.max(0,Math.min(1,e.alpha*t))*1e5);return`<a:solidFill>${n<1e5?`<a:srgbClr val="${e.hex}"><a:alpha val="${n}"/></a:srgbClr>`:`<a:srgbClr val="${e.hex}"/>`}</a:solidFill>`}function jr(e){let t=Dr(e.color),n=Math.max(100,Math.round(e.fontSize*vr*100)),r=Math.round(e.letterSpacing*vr*100),i=[`lang="en-US"`,`sz="${n}"`,e.bold?`b="1"`:``,e.italic?`i="1"`:``,e.underline?`u="sng"`:``,r===0?``:`spc="${r}"`,`dirty="0"`].filter(Boolean).join(` `),a=Er(e.fontFamily||`Arial`);return`<a:rPr ${i}>${t?Ar(t):``}<a:latin typeface="${a}"/><a:ea typeface="${a}"/><a:cs typeface="${a}"/></a:rPr>`}function Mr(e,t){let n={left:`l`,center:`ctr`,right:`r`,justify:`just`}[t.align],r=t.lineHeight!==null&&t.lineHeight>0?`<a:lnSpc><a:spcPts val="${Math.round(t.lineHeight*vr*100)}"/></a:lnSpc>`:``,i=``;for(let e of t.runs)e.breakBefore&&(i+=`<a:br>${jr(e)}</a:br>`),e.text!==``&&(i+=`<a:r>${jr(e)}<a:t>${Er(e.text)}</a:t></a:r>`);let a=Math.round((t.runs[0]?.fontSize??16)*vr*100);return`<p:sp><p:nvSpPr><p:cNvPr id="${e}" name="Text ${e}"/><p:cNvSpPr txBox="1"/><p:nvPr/></p:nvSpPr><p:spPr>${kr({...t.rect,width:t.rect.width*1.04})}<a:prstGeom prst="rect"><a:avLst/></a:prstGeom><a:noFill/></p:spPr><p:txBody><a:bodyPr wrap="square" lIns="0" tIns="0" rIns="0" bIns="0" rtlCol="0" anchor="t"><a:noAutofit/></a:bodyPr><a:lstStyle/><a:p><a:pPr algn="${n}">${r}</a:pPr>${i}<a:endParaRPr lang="en-US" sz="${a}" dirty="0"/></a:p></p:txBody></p:sp>`}function Nr(e,t){let n=Dr(t.fill),r=Dr(t.borderColor),i=Math.min(t.rect.width,t.rect.height),a=Math.min(t.radius,i/2),o=a>.5&&i>0?`<a:prstGeom prst="roundRect"><a:avLst><a:gd name="adj" fmla="val ${Math.round(a/i*1e5)}"/></a:avLst></a:prstGeom>`:`<a:prstGeom prst="rect"><a:avLst/></a:prstGeom>`,s=r&&t.borderWidth>0?`<a:ln w="${Or(t.borderWidth)}">${Ar(r,t.opacity)}</a:ln>`:`<a:ln><a:noFill/></a:ln>`;return`<p:sp><p:nvSpPr><p:cNvPr id="${e}" name="Shape ${e}"/><p:cNvSpPr/><p:nvPr/></p:nvSpPr><p:spPr>${kr(t.rect)}${o}${n?Ar(n,t.opacity):`<a:noFill/>`}${s}</p:spPr></p:sp>`}function Pr(e,t,n){return`<p:pic><p:nvPicPr><p:cNvPr id="${e}" name="Picture ${e}"/><p:cNvPicPr><a:picLocks noChangeAspect="1"/></p:cNvPicPr><p:nvPr/></p:nvPicPr><p:blipFill><a:blip r:embed="${t}"/><a:stretch><a:fillRect/></a:stretch></p:blipFill><p:spPr>${kr(n)}<a:prstGeom prst="rect"><a:avLst/></a:prstGeom></p:spPr></p:pic>`}var Fr=`<p:nvGrpSpPr><p:cNvPr id="1" name=""/><p:cNvGrpSpPr/><p:nvPr/></p:nvGrpSpPr><p:grpSpPr><a:xfrm><a:off x="0" y="0"/><a:ext cx="0" cy="0"/><a:chOff x="0" y="0"/><a:chExt cx="0" cy="0"/></a:xfrm></p:grpSpPr>`;function Ir(e){return e.kind===`image`?e.src:e.kind===`svg`?`svg:${e.markup}`:null}async function Lr(e){let t=e.slides[0],n=Math.min(br,Math.max(yr,Or(t?.width??1920))),r=Math.min(br,Math.max(yr,Or(t?.height??1080))),i=new gr.default,a=new Map,o=new Set;e.slides.forEach((t,n)=>{let r=[`<Relationship Id="rId1" Type="${wr}/slideLayout" Target="../slideLayouts/slideLayout1.xml"/>`],s=``,c=2;for(let n of t.items){let t=c;if(c+=1,n.kind===`box`){s+=Nr(t,n);continue}if(n.kind===`text`){s+=Mr(t,n);continue}let l=Ir(n),u=l?e.images.get(l):void 0;if(!l||!u)continue;let d=a.get(l);d||(d=`image${a.size+1}.${u.type===`jpeg`?`jpeg`:`png`}`,a.set(l,d),o.add(u.type),i.file(`ppt/media/${d}`,u.data,{compression:`STORE`}));let f=`rId${r.length+1}`;r.push(`<Relationship Id="${f}" Type="${wr}/image" Target="../media/${d}"/>`),s+=Pr(t,f,n.rect)}let l=Dr(t.background)??{hex:`FFFFFF`,alpha:1};i.file(`ppt/slides/slide${n+1}.xml`,`${$}<p:sld xmlns:a="${xr}" xmlns:r="${Sr}" xmlns:p="${Cr}"><p:cSld><p:bg><p:bgPr>${Ar({...l,alpha:1})}<a:effectLst/></p:bgPr></p:bg><p:spTree>${Fr}${s}</p:spTree></p:cSld><p:clrMapOvr><a:masterClrMapping/></p:clrMapOvr></p:sld>`),i.file(`ppt/slides/_rels/slide${n+1}.xml.rels`,`${$}<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">${r.join(``)}</Relationships>`)});let s=e.slides.length,c=e.slides.map((e,t)=>`<Override PartName="/ppt/slides/slide${t+1}.xml" ContentType="application/vnd.openxmlformats-officedocument.presentationml.slide+xml"/>`).join(``);i.file(`[Content_Types].xml`,`${$}<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/><Default Extension="xml" ContentType="application/xml"/>${o.has(`png`)?`<Default Extension="png" ContentType="image/png"/>`:``}${o.has(`jpeg`)?`<Default Extension="jpeg" ContentType="image/jpeg"/>`:``}<Override PartName="/ppt/presentation.xml" ContentType="application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml"/><Override PartName="/ppt/slideMasters/slideMaster1.xml" ContentType="application/vnd.openxmlformats-officedocument.presentationml.slideMaster+xml"/><Override PartName="/ppt/slideLayouts/slideLayout1.xml" ContentType="application/vnd.openxmlformats-officedocument.presentationml.slideLayout+xml"/><Override PartName="/ppt/theme/theme1.xml" ContentType="application/vnd.openxmlformats-officedocument.theme+xml"/><Override PartName="/ppt/presProps.xml" ContentType="application/vnd.openxmlformats-officedocument.presentationml.presProps+xml"/><Override PartName="/ppt/viewProps.xml" ContentType="application/vnd.openxmlformats-officedocument.presentationml.viewProps+xml"/><Override PartName="/ppt/tableStyles.xml" ContentType="application/vnd.openxmlformats-officedocument.presentationml.tableStyles+xml"/><Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/><Override PartName="/docProps/app.xml" ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml"/>${c}</Types>`),i.file(`_rels/.rels`,`${$}<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="${wr}/officeDocument" Target="ppt/presentation.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/><Relationship Id="rId3" Type="${wr}/extended-properties" Target="docProps/app.xml"/></Relationships>`);let l=new Date().toISOString().replace(/\.\d{3}Z$/,`Z`);i.file(`docProps/core.xml`,`${$}<cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:dcmitype="http://purl.org/dc/dcmitype/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><dc:title>${Er(e.title)}</dc:title><dcterms:created xsi:type="dcterms:W3CDTF">${l}</dcterms:created><dcterms:modified xsi:type="dcterms:W3CDTF">${l}</dcterms:modified></cp:coreProperties>`),i.file(`docProps/app.xml`,`${$}<Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties" xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes"><Application>Borg</Application><Slides>${s}</Slides></Properties>`);let u=e.slides.map((e,t)=>`<p:sldId id="${256+t}" r:id="rId${t+2}"/>`).join(``);i.file(`ppt/presentation.xml`,`${$}<p:presentation xmlns:a="${xr}" xmlns:r="${Sr}" xmlns:p="${Cr}" saveSubsetFonts="1"><p:sldMasterIdLst><p:sldMasterId id="2147483648" r:id="rId1"/></p:sldMasterIdLst><p:sldIdLst>${u}</p:sldIdLst><p:sldSz cx="${n}" cy="${r}"/><p:notesSz cx="6858000" cy="9144000"/></p:presentation>`);let d=e.slides.map((e,t)=>`<Relationship Id="rId${t+2}" Type="${wr}/slide" Target="slides/slide${t+1}.xml"/>`).join(``);i.file(`ppt/_rels/presentation.xml.rels`,`${$}<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="${wr}/slideMaster" Target="slideMasters/slideMaster1.xml"/>${d}<Relationship Id="rId${s+2}" Type="${wr}/presProps" Target="presProps.xml"/><Relationship Id="rId${s+3}" Type="${wr}/viewProps" Target="viewProps.xml"/><Relationship Id="rId${s+4}" Type="${wr}/theme" Target="theme/theme1.xml"/><Relationship Id="rId${s+5}" Type="${wr}/tableStyles" Target="tableStyles.xml"/></Relationships>`),i.file(`ppt/presProps.xml`,`${$}<p:presentationPr xmlns:a="${xr}" xmlns:r="${Sr}" xmlns:p="${Cr}"/>`),i.file(`ppt/viewProps.xml`,`${$}<p:viewPr xmlns:a="${xr}" xmlns:r="${Sr}" xmlns:p="${Cr}"><p:normalViewPr><p:restoredLeft sz="15620"/><p:restoredTop sz="94660"/></p:normalViewPr><p:gridSpacing cx="76200" cy="76200"/></p:viewPr>`),i.file(`ppt/tableStyles.xml`,`${$}<a:tblStyleLst xmlns:a="${xr}" def="{5C22544A-7EE6-4342-B048-85BDC9FD1C3A}"/>`);let f=`<p:spTree>${Fr}</p:spTree>`;return i.file(`ppt/slideMasters/slideMaster1.xml`,`${$}<p:sldMaster xmlns:a="${xr}" xmlns:r="${Sr}" xmlns:p="${Cr}"><p:cSld><p:bg><p:bgRef idx="1001"><a:schemeClr val="bg1"/></p:bgRef></p:bg>${f}</p:cSld><p:clrMap bg1="lt1" tx1="dk1" bg2="lt2" tx2="dk2" accent1="accent1" accent2="accent2" accenborg="accenborg" accent4="accent4" accent5="accent5" accent6="accent6" hlink="hlink" folHlink="folHlink"/><p:sldLayoutIdLst><p:sldLayoutId id="2147483649" r:id="rId1"/></p:sldLayoutIdLst><p:txStyles><p:titleStyle><a:lvl1pPr><a:defRPr sz="4400"/></a:lvl1pPr></p:titleStyle><p:bodyStyle><a:lvl1pPr><a:defRPr sz="2400"/></a:lvl1pPr></p:bodyStyle><p:otherStyle><a:lvl1pPr><a:defRPr sz="1800"/></a:lvl1pPr></p:otherStyle></p:txStyles></p:sldMaster>`),i.file(`ppt/slideMasters/_rels/slideMaster1.xml.rels`,`${$}<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="${wr}/slideLayout" Target="../slideLayouts/slideLayout1.xml"/><Relationship Id="rId2" Type="${wr}/theme" Target="../theme/theme1.xml"/></Relationships>`),i.file(`ppt/slideLayouts/slideLayout1.xml`,`${$}<p:sldLayout xmlns:a="${xr}" xmlns:r="${Sr}" xmlns:p="${Cr}" type="blank" preserve="1"><p:cSld name="Blank">${f}</p:cSld><p:clrMapOvr><a:masterClrMapping/></p:clrMapOvr></p:sldLayout>`),i.file(`ppt/slideLayouts/_rels/slideLayout1.xml.rels`,`${$}<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="${wr}/slideMaster" Target="../slideMasters/slideMaster1.xml"/></Relationships>`),i.file(`ppt/theme/theme1.xml`,`${$}${Rr}`),i.generateAsync({type:`blob`,mimeType:`application/vnd.openxmlformats-officedocument.presentationml.presentation`,compression:`DEFLATE`})}var Rr=`<a:theme xmlns:a="${xr}" name="Borg"><a:themeElements><a:clrScheme name="Borg"><a:dk1><a:srgbClr val="111111"/></a:dk1><a:lt1><a:srgbClr val="FFFFFF"/></a:lt1><a:dk2><a:srgbClr val="1F2937"/></a:dk2><a:lt2><a:srgbClr val="F4F4F1"/></a:lt2><a:accent1><a:srgbClr val="4F46E5"/></a:accent1><a:accent2><a:srgbClr val="16A34A"/></a:accent2><a:accenborg><a:srgbClr val="D97706"/></a:accenborg><a:accent4><a:srgbClr val="DC2626"/></a:accent4><a:accent5><a:srgbClr val="0891B2"/></a:accent5><a:accent6><a:srgbClr val="7C3AED"/></a:accent6><a:hlink><a:srgbClr val="2563EB"/></a:hlink><a:folHlink><a:srgbClr val="7C3AED"/></a:folHlink></a:clrScheme><a:fontScheme name="Borg"><a:majorFont><a:latin typeface="Arial"/><a:ea typeface=""/><a:cs typeface=""/></a:majorFont><a:minorFont><a:latin typeface="Arial"/><a:ea typeface=""/><a:cs typeface=""/></a:minorFont></a:fontScheme><a:fmtScheme name="Borg"><a:fillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:solidFill><a:schemeClr val="phClr"/></a:solidFill></a:fillStyleLst><a:lnStyleLst><a:ln w="6350"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill></a:ln><a:ln w="12700"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill></a:ln><a:ln w="19050"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill></a:ln></a:lnStyleLst><a:effectStyleLst><a:effectStyle><a:effectLst/></a:effectStyle><a:effectStyle><a:effectLst/></a:effectStyle><a:effectStyle><a:effectLst/></a:effectStyle></a:effectStyleLst><a:bgFillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:solidFill><a:schemeClr val="phClr"/></a:solidFill></a:bgFillStyleLst></a:fmtScheme></a:themeElements><a:objectDefaults/><a:extraClrSchemeLst/></a:theme>`,zr={width:1920,height:1080};function Br(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,r.click(),window.setTimeout(()=>URL.revokeObjectURL(n),1e3)}function Vr(e,t){return`${e.toLowerCase().replace(/\.[a-z0-9]+$/i,``).replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``).slice(0,60)||`design`}.${t}`}async function Hr(e,t,n){let r=document.createElement(`iframe`);r.setAttribute(`sandbox`,`allow-scripts allow-modals`),r.setAttribute(`aria-hidden`,`true`),r.tabIndex=-1,r.style.cssText=`position:fixed;left:-${t.width+200}px;top:0;width:${t.width}px;height:${t.height}px;border:0;opacity:0;pointer-events:none;`;let i=new or;i.connect(),i.attach(r);try{let t=new Promise((e,t)=>{let n=window.setTimeout(()=>t(Error(`The design did not load in time.`)),2e4),r=i.subscribe(t=>{t.type===`ready`&&(window.clearTimeout(n),r(),e())})});return r.src=e,document.body.append(r),await t,await n(i)}finally{i.disconnect(),r.remove()}}async function Ur(e,t){await Hr(e,t?zr:{width:1280,height:800},async e=>{let t=new Promise(t=>{let n=window.setTimeout(t,30*6e4),r=e.subscribe(e=>{e.type===`printed`&&(window.clearTimeout(n),r(),t())})});e.send({type:`print`}),await t})}async function Wr(e){return new Uint8Array(await e.arrayBuffer())}async function Gr(e,t,n){let r=URL.createObjectURL(e);try{let e=new Image;e.decoding=`async`,e.src=r,await e.decode();let i=document.createElement(`canvas`);i.width=Math.max(1,Math.round((t||e.naturalWidth)*2)),i.height=Math.max(1,Math.round((n||e.naturalHeight)*2));let a=i.getContext(`2d`);if(!a)return null;a.drawImage(e,0,0,i.width,i.height);let o=await new Promise(e=>i.toBlob(e,`image/png`));return o?{data:await Wr(o),type:`png`}:null}catch{return null}finally{URL.revokeObjectURL(r)}}var Kr=15e3;function qr(e,t){try{let n=new URL(e),r=new URL(t),i=r.pathname.slice(0,r.pathname.lastIndexOf(`/`)+1);return n.origin===r.origin&&n.pathname.startsWith(i)}catch{return!1}}async function Jr(e,t){let n=new Map;for(let r of e)for(let e of r.items){let r=Ir(e);if(!(!r||n.has(r))){if(e.kind===`svg`){let t=await Gr(new Blob([e.markup],{type:`image/svg+xml`}),e.rect.width,e.rect.height);t&&n.set(r,t);continue}if(e.kind===`image`&&!(!e.src.startsWith(`data:image/`)&&!qr(e.src,t)))try{let t=await fetch(e.src,{credentials:`omit`,signal:AbortSignal.timeout(Kr)});if(!t.ok)continue;let i=await t.blob(),a=i.type.toLowerCase(),o=a===`image/png`||a===`image/jpeg`?{data:await Wr(i),type:a===`image/png`?`png`:`jpeg`}:await Gr(i,e.rect.width,e.rect.height);o&&n.set(r,o)}catch{}}}return n}async function Yr(e,t){return Hr(e,zr,async n=>{let r=(await n.request(`slides`,3e4))?.slides??[];if(r.length===0)throw Error(`The design has no slides to export.`);return Br(await Lr({title:t,slides:r,images:await Jr(r,e)}),Vr(t,`pptx`)),r.length})}function Xr(){let e=zi(),t=U(),n=S(),r=Ye(k.readFile,{reportFailure:!1,refresh:!0}),i=(0,W.useId)(),[a,o]=(0,W.useState)(!1),[s,c]=(0,W.useState)({status:`reading`}),[l,u]=(0,W.useState)(``),[d,f]=(0,W.useState)(`user`),[p,m]=(0,W.useState)(!1),[h,g]=(0,W.useState)(null),{environmentId:v,threadId:y}=e.threadRef,b=_e(v,y),x=le(t.systems,b),C=xe(e.files,e.current?.path??null),w=C.guide===null?`Borg hasn't written DESIGN.md for this design system yet.`:e.workspaceRoot===null?`This design's folder can't be read here.`:e.designing?`Borg is still working on it.`:null,T=async()=>{let t=e.workspaceRoot;if(C.guide===null||t===null)return;c({status:`reading`});let n=e=>r({environmentId:v,input:{cwd:t,relativePath:e}}).then(t=>{if(t._tag!==`Success`)throw Error(`${e} couldn't be read.`);if(t.value.truncated)throw Error(`${e} is too large to publish.`);return t.value.contents});try{let[t,r]=await Promise.all([n(C.guide),C.tokens===null?Promise.resolve(null):n(C.tokens)]),i=he({guide:t,tokens:r,fallbackName:e.title});u(x?.name??i.name),c({status:`ready`,draft:i})}catch(e){c({status:`failed`,message:e instanceof Error?e.message:`The design system couldn't be read.`})}},E=async()=>{if(s.status!==`ready`||p)return;let e=l.trim();if(!e||s.draft.tooLarge)return;m(!0),g(null);let r={name:e,body:s.draft.body,shortDescription:s.draft.summary,sourceRef:b};try{let e=x?await t.update(x.id,r):await t.create(d,r);o(!1);let i=!x||e.version!==x.version;P.add({type:`success`,title:x?i?`Updated ${e.name}`:`Saved ${e.name}`:`Published ${e.name}`,description:x?i?`Designs made in it use this version from their next turn.`:`Its guide and tokens haven't changed since the last version.`:`It's in your design systems, ready for the next design.`,actionProps:{children:`Start a design`,onClick:()=>{me.getState().setHomeDesignSystemId(V(e.id)),me.getState().setHomeTemplateId(null),n({to:`/design`})}}})}catch(e){g(e instanceof Error?e.message:`The design system couldn't be published.`)}finally{m(!1)}},D=x?`Update`:`Publish`,O=(0,X.jsx)(_,{size:`xs`,className:`gap-1.5 rounded-full`,disabled:w!==null,"aria-label":x?`Update ${x.name}`:`Publish design system`});return(0,X.jsxs)(He,{open:a,onOpenChange:e=>{o(e),e&&(g(null),T())},children:[w===null?(0,X.jsxs)(ze,{render:O,children:[(0,X.jsx)(Oe,{"aria-hidden":!0}),D]}):(0,X.jsxs)(M,{children:[(0,X.jsx)(A,{render:(0,X.jsx)(`span`,{className:`inline-flex`}),children:(0,X.jsxs)(ze,{render:O,children:[(0,X.jsx)(Oe,{"aria-hidden":!0}),D]})}),(0,X.jsx)(L,{side:`bottom`,children:w})]}),(0,X.jsx)(Be,{align:`end`,className:`w-80`,children:(0,X.jsxs)(`form`,{className:`flex flex-col gap-4`,onSubmit:e=>{e.preventDefault(),E()},children:[(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,X.jsx)(Ve,{children:x?`Update ${x.name}`:`Publish design system`}),x?(0,X.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Version `,x.version,x.updatedAt?`, published ${Ue(x.updatedAt)}`:``,x.tier===`customer`?`. Shared with your team.`:`.`]}):null]}),s.status===`failed`?(0,X.jsx)(`p`,{className:`text-[13px] text-destructive-foreground`,children:s.message}):(0,X.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-control bg-canvas-quiet p-3`,children:[(0,X.jsx)(`span`,{className:`flex gap-1`,children:s.status===`ready`&&s.draft.specimen.colors.length>0?s.draft.specimen.colors.map(e=>(0,X.jsx)(`span`,{className:`size-5 rounded-full ring-1 ring-line ring-inset`,style:{background:e}},e)):[0,1,2,3].map(e=>(0,X.jsx)(`span`,{"aria-hidden":!0,className:`size-5 rounded-full bg-line`},e))}),(0,X.jsx)(`span`,{className:`min-h-4 truncate text-xs text-muted-foreground`,children:s.status===`ready`?s.draft.specimen.fonts.slice(0,3).join(` · `)||`No type faces named in DESIGN.md`:`Reading DESIGN.md`})]}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,X.jsx)(ke,{htmlFor:i,children:`Name`}),(0,X.jsx)(qe,{id:i,value:l,maxLength:180,disabled:s.status!==`ready`,onChange:e=>u(e.target.value)})]}),x?null:(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,X.jsx)(ke,{children:`Who can use it`}),(0,X.jsxs)(Ge,{className:`w-fit`,variant:`segmented`,value:[d],onValueChange:e=>{let t=e[0];(t===`user`||t===`customer`)&&f(t)},children:[(0,X.jsx)(Ke,{value:`user`,children:`Only me`}),(0,X.jsx)(Ke,{value:`customer`,children:`Your team`})]})]}),s.status===`ready`&&s.draft.tooLarge?(0,X.jsx)(`p`,{className:`text-[13px] text-destructive-foreground`,children:`DESIGN.md and tokens.css are too long to send with every design. Ask Borg to tighten them.`}):null,h===null?null:(0,X.jsx)(`p`,{className:`text-[13px] text-destructive-foreground`,children:h}),(0,X.jsx)(_,{type:`submit`,className:`self-end`,disabled:s.status!==`ready`||s.draft.tooLarge||!l.trim()||p,children:p?x?`Updating`:`Publishing`:D})]})})]})}function Zr(){let e=(0,G.c)(3),t=zi(),n;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,X.jsx)(Xr,{}),e[0]=n):n=e[0];let r;return e[1]===t.threadRef.environmentId?r=e[2]:(r=(0,X.jsx)(De,{environmentId:t.threadRef.environmentId,children:n}),e[1]=t.threadRef.environmentId,e[2]=r),r}var Qr=[{value:`desktop`,label:`Desktop`,icon:x},{value:`tablet`,label:`Tablet`,icon:Lt},{value:`phone`,label:`Phone`,icon:Dt}],$r={width:1280,height:720},ei=[{value:`fit`,label:`Fit to window`},{value:50,label:`50%`},{value:75,label:`75%`},{value:100,label:`100%`}],ti=[{kind:`page`,label:`Pages`},{kind:`style`,label:`Styles`},{kind:`script`,label:`Scripts`},{kind:`image`,label:`Images`},{kind:`other`,label:`Other files`}];function ni(e){return e.split(`/`).findLast(e=>e.length>0)??e}function ri(e){return getComputedStyle(document.documentElement).getPropertyValue(e).trim()||void 0}function ii(e){let t=(0,G.c)(12),n;t[0]!==e.disabled||t[1]!==e.label||t[2]!==e.onClick?(n=(0,X.jsx)(_,{variant:`ghost`,size:`icon-xs`,"aria-label":e.label,disabled:e.disabled,onClick:e.onClick,className:`rounded-full`}),t[0]=e.disabled,t[1]=e.label,t[2]=e.onClick,t[3]=n):n=t[3];let r;t[4]!==e.children||t[5]!==n?(r=(0,X.jsx)(A,{render:n,children:e.children}),t[4]=e.children,t[5]=n,t[6]=r):r=t[6];let i;t[7]===e.label?i=t[8]:(i=(0,X.jsx)(L,{side:`bottom`,children:e.label}),t[7]=e.label,t[8]=i);let a;return t[9]!==r||t[10]!==i?(a=(0,X.jsxs)(M,{children:[r,i]}),t[9]=r,t[10]=i,t[11]=a):a=t[11],a}function ai(e){let t=(0,G.c)(11),n=e.state===`designing`||e.state===`loading`,r=e.state===`failed`,i=r?`alert`:`status`,a=n?`font-[550] text-brand-ink`:r?`font-[550] text-destructive`:`text-muted-foreground`,o;t[0]===a?o=t[1]:(o=g(`inline-flex items-center gap-2 text-[13px]`,a),t[0]=a,t[1]=o);let s=n?`bg-brand-ink`:r?`bg-destructive`:`bg-muted-foreground`,c;t[2]===s?c=t[3]:(c=g(`size-[5px] rounded-full`,s),t[2]=s,t[3]=c);let l;t[4]===c?l=t[5]:(l=(0,X.jsx)(`span`,{"aria-hidden":!0,className:c}),t[4]=c,t[5]=l);let u=e.state===`designing`?`Designing`:e.state===`loading`?`Opening the design`:r?`This file could not be opened`:e.state===`tunnel`?`The canvas is not available over the Borg tunnel yet`:`No design yet`,d;return t[6]!==i||t[7]!==o||t[8]!==l||t[9]!==u?(d=(0,X.jsx)(`div`,{className:`grid h-full place-items-center rounded-control bg-card ring-1 ring-line`,children:(0,X.jsxs)(`span`,{role:i,className:o,children:[l,u]})}),t[6]=i,t[7]=o,t[8]=l,t[9]=u,t[10]=d):d=t[10],d}function oi(e){let t=(0,G.c)(3),{threadRef:n,workspaceRoot:r}=zi(),i=Ze(n.environmentId,r??``,e.relativePath,r!==null),a;return t[0]!==i.data||t[1]!==i.error?(a=(0,X.jsx)(`div`,{className:`h-full overflow-auto rounded-control bg-card ring-1 ring-line`,children:i.data?(0,X.jsx)(`pre`,{className:`min-w-max p-5 font-mono text-xs leading-relaxed whitespace-pre text-foreground`,children:i.data.contents}):(0,X.jsx)(ai,{state:i.error?`failed`:`loading`})}),t[0]=i.data,t[1]=i.error,t[2]=a):a=t[2],a}function si(e,t,n,r){let i=e.getBoundingClientRect(),a=t.getBoundingClientRect(),o=a.left-i.left+n.x*r+14,s=a.top-i.top+n.y*r-10;return{left:Math.max(8,Math.min(o,i.width-288-8)),top:Math.max(8,Math.min(s,i.height-176-8))}}function ci(e){let t=(0,G.c)(32),[n,r]=(0,W.useState)(``),i;t[0]===n?i=t[1]:(i=n.trim(),t[0]=n,t[1]=i);let a=i,o;t[2]!==e.note.left||t[3]!==e.note.top?(o={left:e.note.left,top:e.note.top},t[2]=e.note.left,t[3]=e.note.top,t[4]=o):o=t[4];let s;t[5]!==e||t[6]!==a?(s=t=>{t.preventDefault(),a&&(e.note.sketch?e.onSend(a):e.onComment(a))},t[5]=e,t[6]=a,t[7]=s):s=t[7];let c;t[8]===e.note.sketch?c=t[9]:(c=e.note.sketch?(0,X.jsx)(je,{"aria-hidden":!0,className:`size-3 shrink-0`}):(0,X.jsx)(_t,{"aria-hidden":!0,className:`size-3 shrink-0`}),t[8]=e.note.sketch,t[9]=c);let l;t[10]===e.note.label?l=t[11]:(l=(0,X.jsx)(`span`,{className:`truncate`,children:e.note.label}),t[10]=e.note.label,t[11]=l);let u;t[12]!==c||t[13]!==l?(u=(0,X.jsxs)(`span`,{className:`inline-flex max-w-full items-center gap-1 self-start truncate rounded-full bg-accent px-2 py-0.5 text-xs text-secondary-label`,children:[c,l]}),t[12]=c,t[13]=l,t[14]=u):u=t[14];let d;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(d=e=>r(e.target.value),t[15]=d):d=t[15];let f;t[16]!==e||t[17]!==a?(f=t=>{if(t.key===`Escape`)t.preventDefault(),e.onClose();else if(t.key===`Enter`&&(t.metaKey||t.ctrlKey)){if(t.preventDefault(),!a)return;e.note.sketch?e.onSend(a):e.onComment(a)}},t[16]=e,t[17]=a,t[18]=f):f=t[18];let p=e.note.sketch?`What should change here?`:`Leave a comment`,m;t[19]!==f||t[20]!==p||t[21]!==n?(m=(0,X.jsx)(I,{unstyled:!0,autoFocus:!0,value:n,onChange:d,onKeyDown:f,placeholder:p,"aria-label":`Comment`,className:`w-full [&_textarea]:min-h-16 [&_textarea]:resize-none [&_textarea]:px-0.5 [&_textarea]:py-0`}),t[19]=f,t[20]=p,t[21]=n,t[22]=m):m=t[22];let h;t[23]!==e||t[24]!==a?(h=(0,X.jsx)(`div`,{className:`flex justify-end gap-1.5`,children:e.note.sketch?(0,X.jsx)(_,{type:`button`,size:`xs`,className:`rounded-full`,disabled:!a,onClick:()=>e.onSend(a),children:`Send to Borg`}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(_,{type:`button`,variant:`ghost`,size:`xs`,className:`rounded-full`,disabled:!a,onClick:()=>e.onSend(a),children:`Send to Borg`}),(0,X.jsx)(_,{type:`submit`,size:`xs`,className:`rounded-full`,disabled:!a,children:`Comment`})]})}),t[23]=e,t[24]=a,t[25]=h):h=t[25];let g;return t[26]!==o||t[27]!==h||t[28]!==s||t[29]!==u||t[30]!==m?(g=(0,X.jsxs)(`form`,{className:`dropdown-glass absolute z-20 flex w-72 flex-col gap-2 rounded-control p-2.5`,style:o,onSubmit:s,children:[u,m,h]}),t[26]=o,t[27]=h,t[28]=s,t[29]=u,t[30]=m,t[31]=g):g=t[31],g}function li(e){let t=(0,G.c)(17),n=(0,W.useRef)(null),r=(0,W.useRef)(null),[i]=(0,W.useState)(pi),a=(0,W.useRef)(e.onClose),o;t[0]===e.onClose?o=t[1]:(o=()=>{a.current=e.onClose},t[0]=e.onClose,t[1]=o),(0,W.useEffect)(o);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=()=>a.current(),t[2]=s):s=t[2];let c=s,l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=[],t[3]=l):l=t[3],(0,W.useEffect)(fi,l);let u,d;t[4]===i?(u=t[5],d=t[6]):(u=()=>{i.connect(),i.attach(r.current);let e=i.subscribe(e=>{e.type===`ready`?(i.send({type:`mode`,mode:`present`,scale:1,ink:`#000`,wash:`transparent`}),r.current?.focus()):e.type===`key`&&e.key===`Escape`&&c()});return()=>{e(),i.disconnect()}},d=[i,c],t[4]=i,t[5]=u,t[6]=d),(0,W.useEffect)(u,d);let f,p;t[7]===e.fullscreen?(f=t[8],p=t[9]):(f=()=>{let t=n.current;e.fullscreen&&t&&t.requestFullscreen?.().catch(di);let r=e=>{e.key===`Escape`&&c()},i=()=>{e.fullscreen&&!document.fullscreenElement&&c()};return window.addEventListener(`keydown`,r),document.addEventListener(`fullscreenchange`,i),()=>{window.removeEventListener(`keydown`,r),document.removeEventListener(`fullscreenchange`,i),document.fullscreenElement&&document.exitFullscreen().catch(ui)}},p=[c,e.fullscreen],t[7]=e.fullscreen,t[8]=f,t[9]=p),(0,W.useEffect)(f,p);let m=`Presenting ${e.title}`,h;t[10]!==e.title||t[11]!==e.url?(h=(0,X.jsx)(`iframe`,{ref:r,src:e.url,sandbox:`allow-scripts`,allow:``,referrerPolicy:`no-referrer`,title:e.title,className:`size-full border-0 bg-white`}),t[10]=e.title,t[11]=e.url,t[12]=h):h=t[12];let g;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,X.jsxs)(_,{variant:`glass`,size:`xs`,onClick:c,className:`absolute top-3.5 right-3.5 rounded-full`,children:[(0,X.jsx)(N,{"aria-hidden":!0}),`Exit`]}),t[13]=g):g=t[13];let v;return t[14]!==m||t[15]!==h?(v=(0,X.jsxs)(`div`,{ref:n,role:`dialog`,"aria-label":m,className:`fixed inset-0 z-100 flex items-center justify-center bg-black`,children:[h,g]}),t[14]=m,t[15]=h,t[16]=v):v=t[16],v}function ui(){}function di(){}function fi(){let e=document.activeElement;return()=>{e instanceof HTMLElement&&e.isConnected&&e.focus()}}function pi(){return new or}var mi=(0,W.memo)(function(e){let t=zi(),{bridge:r,current:i,view:p,setView:v,setMode:y,ready:x,version:S,versions:E,showVersion:O,edits:k}=t,j=R(),N=me(e=>e.kinds[m(t.threadRef)]??null),I=(0,W.useRef)(null),ne=(0,W.useRef)(null),[re,ie]=(0,W.useState)(null),[B,V]=(0,W.useState)(null),[H,le]=(0,W.useState)(null),[U,de]=(0,W.useState)(!1),[fe,he]=(0,W.useState)(!1),[_e,ve]=(0,W.useState)(null),[be,xe]=(0,W.useState)(!1),Ce=re?.scale??1,we=i?.kind===`page`,Ee=p.mode,De=(0,W.useCallback)(()=>le(null),[]);(0,W.useEffect)(()=>{if(xe(!1),!_e||x)return;let e=window.setTimeout(()=>xe(!0),5e3);return()=>window.clearTimeout(e)},[_e,x]);let Oe=(0,W.useCallback)(e=>{ne.current=e,r.attach(e)},[r]);(0,W.useEffect)(()=>{x&&r.send({type:`mode`,mode:Ee,scale:Ce,ink:ri(`--brand-ink`)??`#7552b0`,wash:ri(`--selection`)??`rgba(117,82,176,0.18)`})},[r,Ee,x,Ce]);let ke=(0,W.useCallback)(()=>{V(null),r.send({type:`clear-ink`})},[r]);(0,W.useEffect)(()=>{Ee!==`comment`&&V(null)},[Ee]),(0,W.useEffect)(()=>r.subscribe(e=>{let t=I.current,n=ne.current;if(e.type===`key`&&e.key===`Escape`){B?ke():y(`select`);return}!t||!n||Ee!==`comment`||(e.type===`pick`?V({...si(t,n,e.point,Ce),label:e.target.label,sketch:!1,anchor:e.anchor,target:e.target}):e.type===`ink`&&V({...si(t,n,e.point,Ce),label:e.target?`Sketch on ${e.target.label}`:`Sketch`,sketch:!0,anchor:e.anchor,target:e.target,ink:{points:e.points,bounds:e.bounds}}))}),[r,ke,Ee,B,Ce,y]),(0,W.useEffect)(()=>{if(Ee===`select`&&!B)return;let e=e=>{if(e.key!==`Escape`||e.defaultPrevented)return;let t=e.target;t instanceof HTMLElement&&(t.isContentEditable||t.closest(`input, textarea, select, [role=dialog]`))||(B?ke():y(`select`))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[ke,Ee,B,y]);let Me=i?.url&&we?cr(i.url):null,Fe=(x?.slideCount??0)>0,Le=async(e,n)=>{if(!U){de(!0);try{let e=await t.freshUrl();if(!e)throw Error(`The design could not be read.`);await n(e)}catch(t){P.add({type:`error`,title:`Couldn't ${e}`,description:t instanceof Error?t.message:void 0})}finally{de(!1)}}},ze=i?.path??`design.html`,Be=()=>Le(`download the HTML`,async e=>{let t=await ur(e);Br(new Blob([t],{type:`text/html`}),ni(ze))}),Ve=()=>{if(U)return;let e=typeof navigator>`u`?void 0:navigator.clipboard;if(!e||typeof ClipboardItem>`u`){P.add({type:`error`,title:`Couldn't copy the HTML`,description:`The clipboard is only available to the app on a secure address.`});return}let n=t.freshUrl().then(e=>{if(!e)throw Error(`The design could not be read.`);return ur(e).then(e=>new Blob([e],{type:`text/plain`}))});de(!0),e.write([new ClipboardItem({"text/plain":n})]).then(()=>P.add({type:`success`,title:`Copied ${ni(ze)}`})).catch(e=>P.add({type:`error`,title:`Couldn't copy the HTML`,description:e instanceof Error?e.message:void 0})).finally(()=>de(!1))},He=()=>Le(`export a PDF`,e=>Ur(e,Fe)),We=()=>Le(`export to PowerPoint`,async e=>{let t=await Yr(e,x?.title||ni(ze));P.add({type:`success`,title:`Exported ${t} slide${t===1?``:`s`} to PowerPoint`})}),qe=()=>void Le(`open the design in a browser`,async e=>{let t=D();t&&await t.shell.openExternal(cr(e))}),Je=e=>void Le(`present the design`,async t=>{le({fullscreen:e,url:t})}),Ye=Fe&&p.viewport===`desktop`,Xe=Ye?$r:se[p.viewport],Ze=p.zoom===`fit`?p.viewport===`desktop`&&!Ye?`cover-width`:`contain`:{zoom:p.zoom/100},Qe=p.zoom===`fit`?`Fit · ${Math.round(Ce*100)}%`:`${p.zoom}%`,$e=k.length>0||t.saving,et=ti.map(e=>({...e,files:t.files.filter(t=>t.kind===e.kind)})).filter(e=>e.files.length>0),tt=we&&!S&&x!==null&&!t.saving;return(0,X.jsxs)(`section`,{"aria-label":`Canvas`,className:g(`relative flex min-h-0 flex-col bg-canvas-quiet`,e.className),"data-design-canvas":!0,children:[(0,X.jsxs)(`div`,{className:`flex h-11 min-h-11 shrink-0 items-center gap-1 border-b border-line bg-background px-2.5`,children:[(0,X.jsx)(ii,{label:`Reload`,onClick:t.reload,disabled:!i||$e,children:(0,X.jsx)(ee,{})}),(0,X.jsxs)(l,{children:[(0,X.jsxs)(f,{disabled:et.length===0||$e,render:(0,X.jsx)(_,{variant:`ghost`,size:`xs`,className:`min-w-0 gap-1.5 rounded-full font-[550]`,"aria-label":`Files in this design`}),children:[(0,X.jsx)(ue,{"aria-hidden":!0,className:`text-muted-foreground`}),(0,X.jsx)(`span`,{className:`max-w-44 truncate`,children:i?ni(i.path):`Design`}),(0,X.jsx)(d,{"aria-hidden":!0,className:`size-3 text-muted-foreground`})]}),(0,X.jsx)(c,{align:`start`,className:`min-w-56`,children:et.map((e,r)=>(0,X.jsxs)(n,{children:[r>0?(0,X.jsx)(o,{}):null,(0,X.jsx)(h,{children:e.label}),(0,X.jsx)(u,{value:i?.path??``,onValueChange:e=>t.openFile(e),children:e.files.map(e=>(0,X.jsx)(a,{closeOnClick:!0,value:e.path,children:(0,X.jsx)(`span`,{className:`truncate`,children:ni(e.path)})},e.path))})]},e.kind))})]}),E.length>0?(0,X.jsxs)(l,{children:[(0,X.jsxs)(M,{children:[(0,X.jsx)(A,{render:(0,X.jsx)(f,{disabled:$e,render:(0,X.jsx)(_,{variant:`ghost`,size:`icon-xs`,"aria-label":`Versions`,className:g(`rounded-full`,S&&`bg-selection text-brand-ink`)})}),children:(0,X.jsx)(Pe,{})}),(0,X.jsx)(L,{side:`bottom`,children:`Versions`})]}),(0,X.jsx)(c,{align:`start`,className:`min-w-60`,children:(0,X.jsxs)(n,{children:[(0,X.jsxs)(h,{children:[`Versions of `,i?ni(i.path):`this page`]}),(0,X.jsxs)(u,{value:S?String(S.turnCount):`current`,onValueChange:e=>O(e===`current`?null:E.find(t=>String(t.turnCount)===e)??null),children:[(0,X.jsx)(a,{closeOnClick:!0,value:`current`,children:`Current`}),E.map(e=>(0,X.jsx)(a,{closeOnClick:!0,value:String(e.turnCount),children:(0,X.jsxs)(`span`,{className:`flex w-full items-center justify-between gap-4`,children:[(0,X.jsxs)(`span`,{children:[`After turn `,e.turnCount]}),(0,X.jsx)(`span`,{className:`text-xs text-muted-foreground tabular-nums`,children:Ue(e.completedAt)})]})},e.turnCount))]})]})})]}):null,(0,X.jsx)(`span`,{className:`flex-1`}),we?(0,X.jsxs)(l,{children:[(0,X.jsxs)(f,{render:(0,X.jsx)(_,{variant:`ghost`,size:`xs`,className:`gap-1 rounded-full text-muted-foreground tabular-nums max-sm:hidden`,"aria-label":`Zoom and width`}),children:[Qe,(0,X.jsx)(d,{"aria-hidden":!0,className:`size-3`})]}),(0,X.jsxs)(c,{align:`end`,className:`min-w-52`,children:[(0,X.jsxs)(n,{children:[(0,X.jsx)(h,{children:`Zoom`}),(0,X.jsx)(u,{value:String(p.zoom),onValueChange:e=>v({zoom:e===`fit`?`fit`:Number(e)}),children:ei.map(e=>(0,X.jsx)(a,{closeOnClick:!0,value:String(e.value),children:e.label},e.label))})]}),(0,X.jsx)(o,{}),(0,X.jsxs)(n,{children:[(0,X.jsx)(h,{children:`Width`}),(0,X.jsx)(u,{value:p.viewport,onValueChange:e=>v({viewport:e}),children:Qr.map(e=>(0,X.jsx)(a,{closeOnClick:!0,value:e.value,children:(0,X.jsxs)(`span`,{className:`flex w-full items-center gap-2`,children:[(0,X.jsx)(e.icon,{"aria-hidden":!0,className:`size-4 text-muted-foreground`}),(0,X.jsx)(`span`,{className:`flex-1`,children:e.label}),(0,X.jsx)(`span`,{className:`text-xs text-muted-foreground tabular-nums`,children:se[e.value].width})]})},e.value))})]})]})]}):null,(0,X.jsxs)(Ge,{"aria-label":`Canvas mode`,variant:`segmented`,value:[Ee],onValueChange:e=>{let t=e[0];y(t??`select`)},children:[(0,X.jsxs)(M,{children:[(0,X.jsx)(A,{render:(0,X.jsx)(Ke,{value:`select`,"aria-label":`Select`,className:`px-2`,disabled:!tt}),children:(0,X.jsx)(Ie,{"aria-hidden":!0,className:`size-3.5`})}),(0,X.jsx)(L,{side:`bottom`,children:`Select`})]}),(0,X.jsxs)(Ke,{value:`comment`,"aria-label":`Comment`,className:`gap-1.5 px-2`,disabled:!tt,children:[(0,X.jsx)(Ne,{"aria-hidden":!0,className:`size-3.5`}),(0,X.jsx)(`span`,{className:`max-lg:hidden`,children:`Comment`})]}),(0,X.jsxs)(Ke,{value:`edit`,"aria-label":`Edit`,className:`gap-1.5 px-2`,disabled:!tt,children:[(0,X.jsx)(je,{"aria-hidden":!0,className:`size-3.5`}),(0,X.jsx)(`span`,{className:`max-lg:hidden`,children:`Edit`})]})]}),(0,X.jsx)(`span`,{"aria-hidden":!0,className:`mx-1 h-4.5 w-px bg-line max-md:hidden`}),(0,X.jsxs)(l,{children:[(0,X.jsxs)(f,{disabled:!Me,render:(0,X.jsx)(_,{variant:`ghost`,size:`xs`,className:`gap-1.5 rounded-full max-md:hidden`}),children:[(0,X.jsx)(Re,{"aria-hidden":!0}),`Present`,(0,X.jsx)(d,{"aria-hidden":!0,className:`size-3 text-muted-foreground`})]}),(0,X.jsxs)(c,{align:`end`,className:`min-w-52`,children:[(0,X.jsxs)(s,{onClick:()=>Je(!1),children:[(0,X.jsx)(Re,{"aria-hidden":!0}),`Present in this window`]}),(0,X.jsxs)(s,{onClick:()=>Je(!0),children:[(0,X.jsx)(T,{"aria-hidden":!0}),`Present full screen`]})]})]}),(0,X.jsxs)(l,{children:[(0,X.jsxs)(f,{disabled:!Me||U,render:(0,X.jsx)(_,{variant:t.authoring?`ghost`:`default`,size:`xs`,className:`gap-1.5 rounded-full`}),children:[(0,X.jsx)(qt,{"aria-hidden":!0}),`Export`]}),(0,X.jsxs)(c,{align:`end`,className:`min-w-56`,children:[(0,X.jsxs)(s,{onClick:()=>void Be(),children:[(0,X.jsx)(C,{"aria-hidden":!0}),`Download HTML`]}),(0,X.jsxs)(s,{onClick:Ve,children:[(0,X.jsx)(F,{"aria-hidden":!0}),`Copy HTML`]}),(0,X.jsxs)(s,{onClick:()=>void He(),children:[(0,X.jsx)(b,{"aria-hidden":!0}),`PDF`]}),Fe?(0,X.jsxs)(s,{onClick:()=>void We(),children:[(0,X.jsx)(w,{"aria-hidden":!0}),`PowerPoint`]}):null,(0,X.jsx)(o,{}),D()?(0,X.jsxs)(s,{onClick:qe,children:[(0,X.jsx)(z,{"aria-hidden":!0}),`Open in browser`]}):null,(0,X.jsxs)(s,{onClick:t.sendToWork,children:[(0,X.jsx)(Ae,{"aria-hidden":!0}),`Send to `,ae(`code`,j)]})]})]}),t.authoring?(0,X.jsx)(Zr,{}):null]}),S?(0,X.jsxs)(`div`,{className:`flex h-10 shrink-0 items-center gap-2 border-b border-line bg-selection px-3 text-[13px] text-brand-ink`,children:[(0,X.jsx)(Pe,{"aria-hidden":!0,className:`size-4 shrink-0`}),(0,X.jsxs)(`span`,{className:`min-w-0 flex-1 truncate font-[550]`,children:[`After turn `,S.turnCount,` · `,Ue(S.completedAt)]}),(0,X.jsx)(_,{variant:`ghost`,size:`xs`,className:`rounded-full`,onClick:()=>O(null),children:`Back to current`}),(0,X.jsx)(_,{size:`xs`,className:`rounded-full`,disabled:t.restoring||t.designing,onClick:()=>he(!0),children:t.restoring?`Restoring`:`Restore`})]}):null,be&&we&&!S?(0,X.jsx)(`div`,{role:`status`,className:`flex h-9 shrink-0 items-center border-b border-line bg-background px-3 text-[13px] text-muted-foreground`,children:`Comment and Edit are not available for this page.`}):null,(0,X.jsxs)(`div`,{ref:I,className:`relative min-h-0 flex-1 p-4 max-sm:p-2`,children:[i?i.failure?(0,X.jsx)(ai,{state:i.failure===`tunnel`?`tunnel`:`failed`}):i.kind===`page`?i.url?(0,X.jsx)(ge,{src:i.url,viewport:Xe,fit:Ze,interactive:!0,title:`Design: ${ni(i.path)}`,frameRef:Oe,onGeometry:ie,onLoad:()=>ve(i.url),frameClassName:p.viewport===`desktop`&&p.zoom===`fit`&&!Ye?`rounded-control ring-1 ring-line`:`rounded-tile shadow-card ring-1 ring-line`},i.url):(0,X.jsx)(ai,{state:`loading`}):i.kind===`image`?(0,X.jsx)(`div`,{className:`grid h-full place-items-center overflow-auto rounded-control bg-card ring-1 ring-line`,children:i.url?(0,X.jsx)(`img`,{src:i.url,alt:ni(i.path),className:`max-h-full max-w-full object-contain`}):null}):(0,X.jsx)(oi,{relativePath:i.path}):t.designing?(0,X.jsx)(Bn,{kind:N}):(0,X.jsx)(ai,{state:`empty`}),B?(0,X.jsx)(ci,{note:B,onClose:ke,onComment:e=>{t.addComment({text:e,label:B.label,anchor:B.anchor,target:B.target}),ke()},onSend:e=>{t.sendToAgent({comment:e,target:B.target,...B.ink?{ink:B.ink}:{}}),ke(),y(`select`)}},`${B.left}:${B.top}:${B.label}`):null]}),H&&we?(0,X.jsx)(li,{url:H.url,title:t.title||ni(ze),fullscreen:H.fullscreen,onClose:De}):null,(0,X.jsx)(ce,{open:fe,onOpenChange:he,children:(0,X.jsxs)(ye,{children:[(0,X.jsxs)(Te,{children:[(0,X.jsxs)(Se,{children:[`Restore `,ni(ze),` to turn `,S?.turnCount,`?`]}),(0,X.jsx)(te,{children:`The page as it is now, including edits saved from the canvas, is replaced. Borg hears about it with your next message.`})]}),(0,X.jsxs)(pe,{children:[(0,X.jsx)(oe,{render:(0,X.jsx)(_,{variant:`outline`}),children:`Cancel`}),(0,X.jsx)(_,{onClick:()=>{he(!1),t.restoreVersion()},children:`Restore`})]})]})})]})}),hi=(0,W.memo)(function(e){let t=(0,G.c)(50),n=zi(),{comments:r,focusedCommentId:i,setFocusedCommentId:a}=n,[o,s]=(0,W.useState)(``),c=(0,W.useRef)(null),l,u;t[0]===i?(l=t[1],u=t[2]):(l=()=>{i&&c.current?.querySelector(`[data-comment-id="${CSS.escape(i)}"]`)?.scrollIntoView({block:`nearest`})},u=[i],t[0]=i,t[1]=l,t[2]=u),(0,W.useEffect)(l,u);let d;t[3]!==o||t[4]!==n?(d=()=>{let e=o.trim();e&&(n.addComment({text:e,label:``,anchor:null,target:null}),s(``))},t[3]=o,t[4]=n,t[5]=d):d=t[5];let f=d,p;t[6]===e.className?p=t[7]:(p=g(`flex min-h-0 flex-col bg-background`,e.className),t[6]=e.className,t[7]=p);let m;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,X.jsx)(`h2`,{className:`flex-1 text-[13px] font-[550] text-foreground`,children:`Comments`}),t[8]=m):m=t[8];let h;t[9]!==r||t[10]!==a||t[11]!==n?(h=r.length>1?(0,X.jsx)(_,{variant:`outline`,size:`xs`,className:`rounded-full`,onClick:()=>{n.sendCommentsToAgent(r);for(let e of r)n.removeComment(e.id);a(null),n.setMode(`select`)},children:`Send all to Borg`}):null,t[9]=r,t[10]=a,t[11]=n,t[12]=h):h=t[12];let v;t[13]===n?v=t[14]:(v=(0,X.jsx)(_,{variant:`ghost`,size:`icon-xs`,"aria-label":`Close comments`,className:`rounded-full`,onClick:()=>n.setMode(`select`)}),t[13]=n,t[14]=v);let y;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,X.jsx)(N,{}),t[15]=y):y=t[15];let b;t[16]===v?b=t[17]:(b=(0,X.jsx)(A,{render:v,children:y}),t[16]=v,t[17]=b);let x;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,X.jsx)(L,{side:`bottom`,children:`Close comments`}),t[18]=x):x=t[18];let S;t[19]===b?S=t[20]:(S=(0,X.jsxs)(M,{children:[b,x]}),t[19]=b,t[20]=S);let C;t[21]!==S||t[22]!==h?(C=(0,X.jsxs)(`div`,{className:`flex h-11 shrink-0 items-center gap-2 border-b border-line ps-4 pe-2`,children:[m,h,S]}),t[21]=S,t[22]=h,t[23]=C):C=t[23];let w;t[24]!==r||t[25]!==i||t[26]!==a||t[27]!==n?(w=(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overscroll-contain`,children:r.length===0?(0,X.jsx)(`p`,{className:`px-6 py-8 text-center text-[13px] leading-normal text-muted-foreground`,children:`No comments yet. Click the page to comment on an element, or drag to draw.`}):(0,X.jsx)(`ol`,{ref:c,className:`flex flex-col gap-0.5 p-2`,children:r.map((e,t)=>(0,X.jsxs)(`li`,{"data-comment-id":e.id,"aria-current":e.id===i?`true`:void 0,className:`grid grid-cols-[24px_minmax(0,1fr)] gap-x-2.5 gap-y-1 rounded-control p-2.5 aria-[current=true]:bg-accent`,children:[(0,X.jsx)(`span`,{"aria-hidden":!0,className:`grid size-6 place-items-center rounded-[999px_999px_999px_4px] bg-brand-ink text-[11px] font-semibold text-white`,children:e.anchor?t+1:`·`}),(0,X.jsx)(`p`,{className:`text-[12px] text-muted-foreground tabular-nums`,children:Ue(e.createdAt)}),(0,X.jsx)(`p`,{className:`col-start-2 text-[13px] leading-snug text-body`,children:e.text}),e.label?(0,X.jsxs)(`span`,{className:`col-start-2 inline-flex max-w-full items-center gap-1 justify-self-start truncate rounded-full bg-accent px-2 py-0.5 text-xs text-secondary-label`,children:[(0,X.jsx)(_t,{"aria-hidden":!0,className:`size-3 shrink-0`}),(0,X.jsx)(`span`,{className:`truncate`,children:e.label})]}):null,(0,X.jsxs)(`div`,{className:`col-start-2 -ms-2 flex gap-1`,children:[(0,X.jsx)(_,{variant:`ghost`,size:`xs`,className:`rounded-full`,onClick:()=>{n.sendToAgent({comment:e.text,target:e.target}),n.removeComment(e.id),n.setMode(`select`)},children:`Send to Borg`}),(0,X.jsx)(_,{variant:`ghost`,size:`xs`,className:`rounded-full`,onClick:()=>{i===e.id&&a(null),n.resolveComment(e.id)},children:`Resolve`})]})]},e.id))})}),t[24]=r,t[25]=i,t[26]=a,t[27]=n,t[28]=w):w=t[28];let T;t[29]===f?T=t[30]:(T=e=>{e.preventDefault(),f()},t[29]=f,t[30]=T);let E;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(E=e=>s(e.target.value),t[31]=E):E=t[31];let D;t[32]===f?D=t[33]:(D=e=>{e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),f())},t[32]=f,t[33]=D);let O;t[34]!==o||t[35]!==D?(O=(0,X.jsx)(I,{unstyled:!0,value:o,onChange:E,onKeyDown:D,placeholder:`Add a comment`,"aria-label":`Add a comment`,className:`w-full [&_textarea]:min-h-14 [&_textarea]:resize-none [&_textarea]:px-1 [&_textarea]:py-0.5`}),t[34]=o,t[35]=D,t[36]=O):O=t[36];let k;t[37]===o?k=t[38]:(k=o.trim(),t[37]=o,t[38]=k);let j=!k,P;t[39]===j?P=t[40]:(P=(0,X.jsx)(`div`,{className:`flex items-center justify-end gap-2 ps-1`,children:(0,X.jsx)(_,{type:`submit`,size:`xs`,className:`rounded-full`,disabled:j,children:`Comment`})}),t[39]=j,t[40]=P);let F;t[41]!==T||t[42]!==O||t[43]!==P?(F=(0,X.jsxs)(`form`,{className:`m-2.5 shrink-0 rounded-tile bg-card p-2.5 shadow-card ring-1 ring-line`,onSubmit:T,children:[O,P]}),t[41]=T,t[42]=O,t[43]=P,t[44]=F):F=t[44];let R;return t[45]!==C||t[46]!==w||t[47]!==F||t[48]!==p?(R=(0,X.jsxs)(`section`,{"aria-label":`Comments`,className:p,children:[C,w,F]}),t[45]=C,t[46]=w,t[47]=F,t[48]=p,t[49]=R):R=t[49],R}),gi=[{value:`simple`,label:`Simple`},{value:`layers`,label:`Layers`},{value:`code`,label:`Code`},{value:`tweaks`,label:`Tweaks`}],_i=new Map;function vi(e){let t=_i.get(e);if(t!==void 0)return t;let n=document.createElement(`span`);n.style.color=e;let r=`#000000`;if(n.style.color){document.body.append(n);let e=fr(getComputedStyle(n).color);n.remove(),r=e===null?`#000000`:e===`transparent`?`#ffffff`:e}return _i.size>500&&_i.clear(),_i.set(e,r),r}var yi=e=>/^(#|rgb|hsl|hwb|lab|lch|oklab|oklch|color\()/i.test(e.trim())||/^[a-z]+$/i.test(e.trim())&&CSS.supports(`color`,e.trim());function bi(e){let t=(0,G.c)(6),n;t[0]!==e.htmlFor||t[1]!==e.label?(n=(0,X.jsx)(`label`,{htmlFor:e.htmlFor,className:`text-xs font-[550] text-secondary-label`,children:e.label}),t[0]=e.htmlFor,t[1]=e.label,t[2]=n):n=t[2];let r;return t[3]!==e.children||t[4]!==n?(r=(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[n,e.children]}),t[3]=e.children,t[4]=n,t[5]=r):r=t[5],r}function xi(e){let t=(0,G.c)(18),n=(0,W.useId)(),r=e.label,i=e.min,a=e.max,o=Math.min(e.max,Math.max(e.min,e.value)),s;t[0]===e?s=t[1]:(s=t=>e.onChange(Number(t.target.value)),t[0]=e,t[1]=s);let c;t[2]!==n||t[3]!==e.max||t[4]!==e.min||t[5]!==o||t[6]!==s?(c=(0,X.jsx)(`input`,{id:n,type:`range`,min:i,max:a,value:o,onChange:s,className:`min-w-0 flex-1 accent-brand-ink`}),t[2]=n,t[3]=e.max,t[4]=e.min,t[5]=o,t[6]=s,t[7]=c):c=t[7];let l;t[8]!==n||t[9]!==e.value?(l=(0,X.jsxs)(`output`,{htmlFor:n,className:`w-11 text-right text-xs text-foreground tabular-nums`,children:[e.value,`px`]}),t[8]=n,t[9]=e.value,t[10]=l):l=t[10];let u;t[11]!==c||t[12]!==l?(u=(0,X.jsxs)(`div`,{className:`flex items-center gap-2.5`,children:[c,l]}),t[11]=c,t[12]=l,t[13]=u):u=t[13];let d;return t[14]!==n||t[15]!==e.label||t[16]!==u?(d=(0,X.jsx)(bi,{label:r,htmlFor:n,children:u}),t[14]=n,t[15]=e.label,t[16]=u,t[17]=d):d=t[17],d}function Si(e){let t=(0,G.c)(29),n=(0,W.useId)(),r;t[0]===e.value?r=t[1]:(r=fr(e.value),t[0]=e.value,t[1]=r);let i=r,a;t[2]===e.palette?a=t[3]:(a=new Set(e.palette.map(fr)),t[2]=e.palette,t[3]=a);let o;t[4]===a?o=t[5]:(o=[...a].filter(Ci),t[4]=a,t[5]=o);let s=o,c=e.label,l=e.label,u;t[6]!==i||t[7]!==e?(u=e.allowNone?(0,X.jsx)(`button`,{type:`button`,"aria-label":`None`,"aria-pressed":i===`transparent`,onClick:()=>e.onChange(`transparent`),className:`size-6.5 cursor-pointer rounded-full bg-[repeating-conic-gradient(var(--line)_0_25%,transparent_0_50%)] bg-[length:10px_10px] ring-1 ring-black/12 ring-inset aria-pressed:ring-2 aria-pressed:ring-brand-ink aria-pressed:ring-offset-2 aria-pressed:ring-offset-background`}):null,t[6]=i,t[7]=e,t[8]=u):u=t[8];let d;t[9]!==i||t[10]!==e||t[11]!==s?(d=s.map(t=>(0,X.jsx)(`button`,{type:`button`,"aria-label":t,"aria-pressed":i===t,onClick:()=>e.onChange(t),style:{background:t},className:`size-6.5 cursor-pointer rounded-full ring-1 ring-black/12 ring-inset aria-pressed:ring-2 aria-pressed:ring-brand-ink aria-pressed:ring-offset-2 aria-pressed:ring-offset-background`},t)),t[9]=i,t[10]=e,t[11]=s,t[12]=d):d=t[12];let f=`${e.label}: pick any color`,p=i===null?`#000000`:i===`transparent`?`#ffffff`:i,m;t[13]===e?m=t[14]:(m=t=>e.onChange(t.target.value),t[13]=e,t[14]=m);let h;t[15]!==n||t[16]!==f||t[17]!==p||t[18]!==m?(h=(0,X.jsx)(`input`,{id:n,type:`color`,"aria-label":f,value:p,onChange:m,className:`size-6.5 cursor-pointer rounded-full border-0 bg-transparent p-0 [&::-webkit-color-swatch]:rounded-full [&::-webkit-color-swatch]:border-0 [&::-webkit-color-swatch-wrapper]:p-0`}),t[15]=n,t[16]=f,t[17]=p,t[18]=m,t[19]=h):h=t[19];let g;t[20]!==e.label||t[21]!==h||t[22]!==u||t[23]!==d?(g=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,role:`group`,"aria-label":l,children:[u,d,h]}),t[20]=e.label,t[21]=h,t[22]=u,t[23]=d,t[24]=g):g=t[24];let _;return t[25]!==n||t[26]!==e.label||t[27]!==g?(_=(0,X.jsx)(bi,{label:c,htmlFor:n,children:g}),t[25]=n,t[26]=e.label,t[27]=g,t[28]=_):_=t[28],_}function Ci(e){return e!==null&&e!==`transparent`}function wi(e){let t=(0,G.c)(66),{bridge:n,addEdit:r}=zi(),{selection:i}=e,[a,o]=(0,W.useState)(i.editableText??``),[s]=(0,W.useState)(i.editableText??``),[c,l]=(0,W.useState)(!1),u=(0,W.useId)(),d=i.editableText,f,p;t[0]!==d||t[1]!==c?(f=()=>{!c&&d!==null&&o(d)},p=[d,c],t[0]=d,t[1]=c,t[2]=f,t[3]=p):(f=t[2],p=t[3]),(0,W.useEffect)(f,p);let m;t[4]===i.styles?m=t[5]:(m=e=>Math.round(Number.parseFloat(i.styles[e]??`0`)||0),t[4]=i.styles,t[5]=m);let h=m,g;t[6]!==r||t[7]!==n||t[8]!==i.label||t[9]!==i.node||t[10]!==i.selector||t[11]!==i.styles?(g=(e,t)=>{n.send({type:`style`,node:i.node,property:e,value:t}),r({edit:{kind:`style`,node:i.node,property:e,value:t},target:i.label,selector:i.selector,property:e,previousValue:i.styles[e]??``,value:t})},t[6]=r,t[7]=n,t[8]=i.label,t[9]=i.node,t[10]=i.selector,t[11]=i.styles,t[12]=g):g=t[12];let _=g,v=i.styles[`text-align`]===`start`?`left`:i.styles[`text-align`],y;t[13]!==r||t[14]!==n||t[15]!==s||t[16]!==i.editableText||t[17]!==i.label||t[18]!==i.node||t[19]!==i.selector||t[20]!==a||t[21]!==u?(y=i.editableText===null?null:(0,X.jsx)(bi,{label:`Text`,htmlFor:u,children:(0,X.jsx)(I,{id:u,size:`sm`,className:`[&_textarea]:resize-none`,value:a,onFocus:()=>l(!0),onBlur:()=>l(!1),onChange:e=>{o(e.target.value),n.send({type:`text`,node:i.node,text:e.target.value}),r({edit:{kind:`text`,node:i.node,text:e.target.value},target:i.label,selector:i.selector,property:`text`,previousValue:s,value:e.target.value})}})}),t[13]=r,t[14]=n,t[15]=s,t[16]=i.editableText,t[17]=i.label,t[18]=i.node,t[19]=i.selector,t[20]=a,t[21]=u,t[22]=y):y=t[22];let b;t[23]===h?b=t[24]:(b=h(`font-size`),t[23]=h,t[24]=b);let x;t[25]===_?x=t[26]:(x=e=>_(`font-size`,`${e}px`),t[25]=_,t[26]=x);let S;t[27]!==b||t[28]!==x?(S=(0,X.jsx)(xi,{label:`Size`,min:8,max:160,value:b,onChange:x}),t[27]=b,t[28]=x,t[29]=S):S=t[29];let C=i.styles.color??``,w;t[30]===_?w=t[31]:(w=e=>_(`color`,e),t[30]=_,t[31]=w);let T;t[32]!==e.palette||t[33]!==C||t[34]!==w?(T=(0,X.jsx)(Si,{label:`Color`,value:C,palette:e.palette,onChange:w}),t[32]=e.palette,t[33]=C,t[34]=w,t[35]=T):T=t[35];let E=i.styles[`background-color`]??``,D;t[36]===_?D=t[37]:(D=e=>_(`background-color`,e),t[36]=_,t[37]=D);let O;t[38]!==e.palette||t[39]!==E||t[40]!==D?(O=(0,X.jsx)(Si,{label:`Fill`,value:E,palette:e.palette,allowNone:!0,onChange:D}),t[38]=e.palette,t[39]=E,t[40]=D,t[41]=O):O=t[41];let k;t[42]===v?k=t[43]:(k=v?[v]:[],t[42]=v,t[43]=k);let A;t[44]===_?A=t[45]:(A=e=>{let t=e[0];t&&_(`text-align`,t)},t[44]=_,t[45]=A);let j;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,X.jsx)(Ke,{value:`left`,"aria-label":`Left`,className:`px-2`,children:(0,X.jsx)(mn,{"aria-hidden":!0,className:`size-3.5`})}),t[46]=j):j=t[46];let M;t[47]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,X.jsx)(Ke,{value:`center`,"aria-label":`Center`,className:`px-2`,children:(0,X.jsx)(rn,{"aria-hidden":!0,className:`size-3.5`})}),t[47]=M):M=t[47];let N;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,X.jsx)(Ke,{value:`right`,"aria-label":`Right`,className:`px-2`,children:(0,X.jsx)(wn,{"aria-hidden":!0,className:`size-3.5`})}),t[48]=N):N=t[48];let P;t[49]!==k||t[50]!==A?(P=(0,X.jsx)(bi,{label:`Align`,children:(0,X.jsxs)(Ge,{"aria-label":`Align`,variant:`segmented`,value:k,onValueChange:A,className:`self-start`,children:[j,M,N]})}),t[49]=k,t[50]=A,t[51]=P):P=t[51];let F;t[52]===h?F=t[53]:(F=h(`padding-top`),t[52]=h,t[53]=F);let L;t[54]===_?L=t[55]:(L=e=>_(`padding`,`${e}px`),t[54]=_,t[55]=L);let R;t[56]!==F||t[57]!==L?(R=(0,X.jsx)(xi,{label:`Padding`,min:0,max:160,value:F,onChange:L}),t[56]=F,t[57]=L,t[58]=R):R=t[58];let z;return t[59]!==T||t[60]!==O||t[61]!==P||t[62]!==R||t[63]!==y||t[64]!==S?(z=(0,X.jsxs)(`div`,{className:`flex flex-col gap-5 p-4`,children:[y,S,T,O,P,R]}),t[59]=T,t[60]=O,t[61]=P,t[62]=R,t[63]=y,t[64]=S,t[65]=z):z=t[65],z}function Ti(e){let t=(0,G.c)(6),n=e.failed?`alert`:void 0,r=e.failed?`text-destructive`:`text-muted-foreground`,i;t[0]===r?i=t[1]:(i=g(`px-6 py-8 text-center text-[13px] leading-normal`,r),t[0]=r,t[1]=i);let a;return t[2]!==e.children||t[3]!==n||t[4]!==i?(a=(0,X.jsx)(`p`,{role:n,className:i,children:e.children}),t[2]=e.children,t[3]=n,t[4]=i,t[5]=a):a=t[5],a}function Ei(){let e=(0,G.c)(18),{bridge:t,ready:n,selection:r,edits:i}=zi(),[a,o]=(0,W.useState)(void 0),s;e[0]!==t||e[1]!==n?(s=()=>{if(!n)return;let e=!1;return t.request(`layers`).then(t=>{e||o(t?t.layers??[]:null)}),()=>{e=!0}},e[0]=t,e[1]=n,e[2]=s):s=e[2];let c;if(e[3]!==t||e[4]!==i.length||e[5]!==n?(c=[t,n,i.length],e[3]=t,e[4]=i.length,e[5]=n,e[6]=c):c=e[6],(0,W.useEffect)(s,c),a===void 0){let t;return e[7]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,X.jsx)(Ti,{children:`Reading the page`}),e[7]=t):t=e[7],t}if(a===null){let t;return e[8]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,X.jsx)(Ti,{failed:!0,children:`The page did not list its layers.`}),e[8]=t):t=e[8],t}let l;if(e[9]!==t||e[10]!==a||e[11]!==r?.node){let n;e[13]!==t||e[14]!==r?.node?(n=e=>(0,X.jsx)(`li`,{children:(0,X.jsxs)(`button`,{type:`button`,"aria-current":r?.node===e.node?`true`:void 0,onClick:()=>t.send({type:`select`,node:e.node}),style:{paddingInlineStart:8+e.depth*14},className:`flex h-7 w-full cursor-pointer items-center gap-2 rounded-small pe-2 text-left text-[13px] text-foreground hover:bg-accent aria-[current=true]:bg-selection aria-[current=true]:text-brand-ink`,children:[(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.label}),(0,X.jsx)(`span`,{className:`shrink-0 text-[11px] text-muted-foreground`,children:e.tagName})]})},e.node),e[13]=t,e[14]=r?.node,e[15]=n):n=e[15],l=a.map(n),e[9]=t,e[10]=a,e[11]=r?.node,e[12]=l}else l=e[12];let u;return e[16]===l?u=e[17]:(u=(0,X.jsx)(`ul`,{className:`flex flex-col p-1.5`,"aria-label":`Layers`,children:l}),e[16]=l,e[17]=u),u}function Di(e){let t=(0,G.c)(32),{bridge:n,addEdit:r}=zi(),{source:i,selection:a}=e,o;t[0]!==a.node||t[1]!==i.status||t[2]!==i.text?(o=i.status===`ready`?re(i.text,a.node):null,t[0]=a.node,t[1]=i.status,t[2]=i.text,t[3]=o):o=t[3];let s=o,[c,l]=(0,W.useState)(null),[u,d]=(0,W.useState)(null),[f,p]=(0,W.useState)(!1),m=(0,W.useId)();if(i.status===`reading`){let e;return t[4]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(Ti,{children:`Reading the source`}),t[4]=e):e=t[4],e}if(i.status===`failed`||s===null){let e;return t[5]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(Ti,{failed:!0,children:`The source of this element could not be read.`}),t[5]=e):e=t[5],e}let h=c??s,g=u??h,v;t[6]!==r||t[7]!==n||t[8]!==s||t[9]!==a.label||t[10]!==a.node||t[11]!==a.selector||t[12]!==g?(v=()=>{let e=document.createElement(`template`);e.innerHTML=g;let t=Array.from(e.content.childNodes).filter(Oi);if(t.length!==1||t[0]?.nodeType!==Node.ELEMENT_NODE){p(!0);return}n.send({type:`html`,node:a.node,html:g}),r({edit:{kind:`html`,node:a.node,html:g},target:a.label,selector:a.selector,property:`markup`,previousValue:s,value:g}),l(g),d(null)},t[6]=r,t[7]=n,t[8]=s,t[9]=a.label,t[10]=a.node,t[11]=a.selector,t[12]=g,t[13]=v):v=t[13];let y=v,b=`<${a.tagName}>`,x=f||void 0,S;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(S=e=>{d(e.target.value),p(!1)},t[14]=S):S=t[14];let C;t[15]!==m||t[16]!==x||t[17]!==g?(C=(0,X.jsx)(I,{id:m,spellCheck:!1,value:g,"aria-invalid":x,onChange:S,className:`[&_textarea]:min-h-64 [&_textarea]:font-mono [&_textarea]:text-xs [&_textarea]:leading-normal [&_textarea]:whitespace-pre`}),t[15]=m,t[16]=x,t[17]=g,t[18]=C):C=t[18];let w;t[19]!==m||t[20]!==b||t[21]!==C?(w=(0,X.jsx)(bi,{label:b,htmlFor:m,children:C}),t[19]=m,t[20]=b,t[21]=C,t[22]=w):w=t[22];let T;t[23]===f?T=t[24]:(T=f?(0,X.jsx)(`p`,{role:`alert`,className:`text-xs text-destructive`,children:`Write exactly one element, with its content.`}):null,t[23]=f,t[24]=T);let E=u===null||u===h,D;t[25]!==y||t[26]!==E?(D=(0,X.jsx)(_,{size:`xs`,className:`self-end rounded-full`,disabled:E,onClick:y,children:`Apply`}),t[25]=y,t[26]=E,t[27]=D):D=t[27];let O;return t[28]!==w||t[29]!==T||t[30]!==D?(O=(0,X.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[w,T,D]}),t[28]=w,t[29]=T,t[30]=D,t[31]=O):O=t[31],O}function Oi(e){return e.nodeType!==Node.TEXT_NODE||(e.textContent??``).trim()!==``}function ki(e){let t=(0,G.c)(27),[n,r]=(0,W.useState)(e.token.value),i;t[0]===e.token.value?i=t[1]:(i=yi(e.token.value),t[0]=e.token.value,t[1]=i);let a=i,o=(0,W.useId)(),s;t[2]===e?s=t[3]:(s=t=>{t.trim()&&t!==e.token.value&&e.onChange(t.trim())},t[2]=e,t[3]=s);let c=s,l;t[4]!==o||t[5]!==e.token.name?(l=(0,X.jsx)(`label`,{htmlFor:o,className:`truncate font-mono text-[11px] text-secondary-label`,children:e.token.name}),t[4]=o,t[5]=e.token.name,t[6]=l):l=t[6];let u;t[7]!==a||t[8]!==e||t[9]!==n?(u=a?(0,X.jsx)(`input`,{type:`color`,"aria-label":`${e.token.name}: pick a color`,value:vi(n),onChange:t=>{r(t.target.value),e.onChange(t.target.value)},className:`size-7 shrink-0 cursor-pointer rounded-full border-0 bg-transparent p-0 [&::-webkit-color-swatch]:rounded-full [&::-webkit-color-swatch]:border-0 [&::-webkit-color-swatch-wrapper]:p-0`}):null,t[7]=a,t[8]=e,t[9]=n,t[10]=u):u=t[10];let d;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(d=e=>r(e.target.value),t[11]=d):d=t[11];let f,p;t[12]!==c||t[13]!==n?(f=()=>c(n),p=e=>{e.key===`Enter`&&c(n)},t[12]=c,t[13]=n,t[14]=f,t[15]=p):(f=t[14],p=t[15]);let m;t[16]!==o||t[17]!==f||t[18]!==p||t[19]!==n?(m=(0,X.jsx)(qe,{id:o,size:`sm`,value:n,onChange:d,onBlur:f,onKeyDown:p,className:`font-mono`}),t[16]=o,t[17]=f,t[18]=p,t[19]=n,t[20]=m):m=t[20];let h;t[21]!==u||t[22]!==m?(h=(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[u,m]}),t[21]=u,t[22]=m,t[23]=h):h=t[23];let g;return t[24]!==l||t[25]!==h?(g=(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[l,h]}),t[24]=l,t[25]=h,t[26]=g):g=t[26],g}function Ai(){let e=(0,G.c)(18),{bridge:t,ready:n,addEdit:r}=zi(),[i,a]=(0,W.useState)(void 0),[o,s]=(0,W.useState)(0),c,l;if(e[0]!==t||e[1]!==n?(c=()=>{if(!n)return;let e=!1;return a(void 0),t.request(`tokens`).then(t=>{e||(a(t?t.tokens??[]:null),s(ji))}),()=>{e=!0}},l=[t,n],e[0]=t,e[1]=n,e[2]=c,e[3]=l):(c=e[2],l=e[3]),(0,W.useEffect)(c,l),i===void 0){let t;return e[4]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,X.jsx)(Ti,{children:`Reading the page`}),e[4]=t):t=e[4],t}if(i===null){let t;return e[5]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,X.jsx)(Ti,{failed:!0,children:`The page did not list its CSS variables.`}),e[5]=t):t=e[5],t}if(i.length===0){let t;return e[6]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,X.jsx)(Ti,{children:`This page sets no CSS variables on :root, so there is nothing to tweak across it.`}),e[6]=t):t=e[6],t}let u;if(e[7]!==r||e[8]!==t||e[9]!==o||e[10]!==i){let n;e[12]!==r||e[13]!==t||e[14]!==o?(n=e=>(0,X.jsx)(ki,{token:e,onChange:n=>{t.send({type:`token`,name:e.name,value:n}),r({edit:{kind:`token`,name:e.name,value:n},target:e.name,selector:null,property:e.name,previousValue:e.value,value:n})}},`${o}:${e.name}`),e[12]=r,e[13]=t,e[14]=o,e[15]=n):n=e[15],u=i.map(n),e[7]=r,e[8]=t,e[9]=o,e[10]=i,e[11]=u}else u=e[11];let d;return e[16]===u?d=e[17]:(d=(0,X.jsx)(`div`,{className:`flex flex-col gap-4 p-4`,children:u}),e[16]=u,e[17]=d),d}function ji(e){return e+1}var Mi=(0,W.memo)(function(e){let t=(0,G.c)(64),n=zi(),{selection:r,bridge:i,ready:a,edits:o,current:s,freshUrl:c}=n,[l,u]=(0,W.useState)(`simple`),d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(d=[],t[0]=d):d=t[0];let[f,p]=(0,W.useState)(d),m;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(m={status:`reading`},t[1]=m):m=t[1];let[h,v]=(0,W.useState)(m),y=(0,W.useId)(),b,x;t[2]!==i||t[3]!==a?(b=()=>{if(!a)return;let e=!1;return i.request(`palette`).then(t=>{e||p(t?.palette??[])}),()=>{e=!0}},x=[i,a],t[2]=i,t[3]=a,t[4]=b,t[5]=x):(b=t[4],x=t[5]),(0,W.useEffect)(b,x);let S=s?.url??null,C=(0,W.useRef)(null),w,T;t[6]!==S||t[7]!==c||t[8]!==l?(w=()=>{if(l!==`code`||!S||C.current===S)return;C.current=S;let e=!1;return v({status:`reading`}),c().then(Ni).then(t=>{e||v({status:`ready`,text:t})},()=>{e||(C.current=null,v({status:`failed`}))}),()=>{e=!0}},T=[S,c,l],t[6]=S,t[7]=c,t[8]=l,t[9]=w,t[10]=T):(w=t[9],T=t[10]),(0,W.useEffect)(w,T);let E=l===`simple`||l===`code`,D=n.stale||n.conflict,O;t[11]===e.className?O=t[12]:(O=g(`flex min-h-0 flex-col bg-background`,e.className),t[11]=e.className,t[12]=O);let k;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,X.jsx)(`h2`,{className:`flex-1 text-[13px] font-[550] text-foreground`,children:`Edit`}),t[13]=k):k=t[13];let j=o.length===0||n.saving,P;t[14]!==j||t[15]!==n.discard?(P=(0,X.jsx)(_,{variant:`ghost`,size:`xs`,className:`rounded-full`,disabled:j,onClick:n.discard,children:`Discard`}),t[14]=j,t[15]=n.discard,t[16]=P):P=t[16];let F=o.length===0||n.saving||D,I;t[17]===n?I=t[18]:(I=()=>void n.save(),t[17]=n,t[18]=I);let R=n.saving?`Saving`:`Save`,z;t[19]!==F||t[20]!==I||t[21]!==R?(z=(0,X.jsx)(_,{size:`xs`,className:`rounded-full`,disabled:F,onClick:I,children:R}),t[19]=F,t[20]=I,t[21]=R,t[22]=z):z=t[22];let ee;t[23]===n?ee=t[24]:(ee=()=>n.setMode(`select`),t[23]=n,t[24]=ee);let te;t[25]!==ee||t[26]!==n.saving?(te=(0,X.jsx)(_,{variant:`ghost`,size:`icon-xs`,"aria-label":`Close edit`,className:`rounded-full`,disabled:n.saving,onClick:ee}),t[25]=ee,t[26]=n.saving,t[27]=te):te=t[27];let ne;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(ne=(0,X.jsx)(N,{}),t[28]=ne):ne=t[28];let re;t[29]===te?re=t[30]:(re=(0,X.jsx)(A,{render:te,children:ne}),t[29]=te,t[30]=re);let ie;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(ie=(0,X.jsx)(L,{side:`bottom`,children:`Close edit`}),t[31]=ie):ie=t[31];let ae;t[32]===re?ae=t[33]:(ae=(0,X.jsxs)(M,{children:[re,ie]}),t[32]=re,t[33]=ae);let B;t[34]!==z||t[35]!==ae||t[36]!==P?(B=(0,X.jsxs)(`div`,{className:`flex h-11 shrink-0 items-center gap-1.5 border-b border-line ps-4 pe-2`,children:[k,P,z,ae]}),t[34]=z,t[35]=ae,t[36]=P,t[37]=B):B=t[37];let V;t[38]!==D||t[39]!==n.handEditsToAgent||t[40]!==n.stale?(V=D?(0,X.jsxs)(`div`,{className:`flex flex-col gap-2 border-b border-line bg-warning-surface px-4 py-3 text-[13px] text-warning-foreground`,children:[(0,X.jsx)(`p`,{children:n.stale?`Borg changed this page while you were editing.`:`The file changed since the canvas loaded it, so these edits could not be saved.`}),(0,X.jsx)(_,{size:`xs`,className:`self-start rounded-full`,onClick:n.handEditsToAgent,children:`Hand my edits to Borg`})]}):null,t[38]=D,t[39]=n.handEditsToAgent,t[40]=n.stale,t[41]=V):V=t[41];let oe;t[42]!==l||t[43]!==y?(oe=gi.map(e=>(0,X.jsx)(`button`,{id:`${y}-${e.value}`,type:`button`,role:`tab`,"aria-selected":l===e.value,"aria-controls":`${y}-panel`,tabIndex:l===e.value?0:-1,onClick:()=>u(e.value),className:`h-7 cursor-pointer rounded-full px-2.5 text-[13px] font-[550] text-muted-foreground outline-none hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring aria-selected:bg-accent aria-selected:text-foreground`,children:e.label},e.value)),t[42]=l,t[43]=y,t[44]=oe):oe=t[44];let se;t[45]===oe?se=t[46]:(se=(0,X.jsx)(`div`,{role:`tablist`,"aria-label":`Edit`,onKeyDown:de,className:`flex shrink-0 gap-0.5 border-b border-line px-2.5 py-2`,children:oe}),t[45]=oe,t[46]=se);let H=`${y}-panel`,ce=`${y}-${l}`,le;t[47]!==E||t[48]!==f||t[49]!==r||t[50]!==h||t[51]!==l?(le=E&&!r?(0,X.jsx)(Ti,{children:`Click any element on the canvas to edit it. Double-click text to type on the canvas.`}):l===`simple`&&r?(0,X.jsx)(wi,{selection:r,palette:f},r.node):l===`code`&&r?(0,X.jsx)(Di,{selection:r,source:h},r.node):l===`layers`?(0,X.jsx)(Ei,{}):l===`tweaks`?(0,X.jsx)(Ai,{}):null,t[47]=E,t[48]=f,t[49]=r,t[50]=h,t[51]=l,t[52]=le):le=t[52];let U;t[53]!==H||t[54]!==ce||t[55]!==le||t[56]!==n.saving?(U=(0,X.jsx)(`div`,{id:H,role:`tabpanel`,"aria-labelledby":ce,inert:n.saving,className:`min-h-0 flex-1 overflow-y-auto overscroll-contain`,children:le}),t[53]=H,t[54]=ce,t[55]=le,t[56]=n.saving,t[57]=U):U=t[57];let ue;return t[58]!==B||t[59]!==V||t[60]!==se||t[61]!==U||t[62]!==O?(ue=(0,X.jsxs)(`section`,{"aria-label":`Edit`,className:O,children:[B,V,se,U]}),t[58]=B,t[59]=V,t[60]=se,t[61]=U,t[62]=O,t[63]=ue):ue=t[63],ue});function Ni(e){if(!e)throw Error(`unreadable`);return ur(e)}var Pi=`borgcode:design-conversation-width:v1`,Fi=340,Ii=280,Li=360,Ri=(0,W.createContext)(null);function zi(){let e=(0,W.useContext)(Ri);if(!e)throw Error(`useDesignWorkspace must be used inside a design workspace`);return e}function Bi(e){let{threadRef:t,workspaceRoot:n}=e,r=(0,W.useRef)(e);(0,W.useEffect)(()=>{r.current=e});let i=fe(t),a=Ee(t),o=me(e=>e.setView),s=me(e=>e.addComment),c=me(e=>e.removeComment),l=me(e=>e.setPage),u=Ye(Je.createUrl,{reportFailure:!1,refresh:!0}),d=O(k.writeFile,{reportFailure:!1}),[f]=(0,W.useState)(()=>new or);(0,W.useEffect)(()=>(f.connect(),()=>f.disconnect()),[f]);let m=(0,W.useCallback)(e=>o(t,e),[o,t]),h=(i.path!==null&&e.files.some(e=>e.path===i.path)?i.path:null)??e.documents[0]?.path??null,v=h?we(h):null,b=h===null?null:e.documents.find(e=>e.path===h)?.revision??`0`;(0,W.useEffect)(()=>{h!==null&&v===`page`&&l(t,h)},[v,h,l,t]);let[x,S]=(0,W.useState)(null),[C,w]=(0,W.useState)(0),[T,D]=(0,W.useState)([]),[A,j]=(0,W.useState)(!1),[M,N]=(0,W.useState)(null),[F,I]=(0,W.useState)(null),[L,R]=(0,W.useState)(!1),[z,ee]=(0,W.useState)(!1),[ne,re]=(0,W.useState)(null),ie=h===null?null:`${h}#${b}#${x?.turnCount??`now`}`,ae=ie===null?null:`${ie}#${e.designRevision}#${C}`,B=T.length>0,[V,se]=(0,W.useState)(null);(0,W.useEffect)(()=>{se(!B||ie===null||ae===null?null:e=>e??{documentKey:ie,displayKey:ae})},[ae,ie,B]);let H=B&&V?V.displayKey:ae,le=B&&V!==null&&V.documentKey!==ie,U=(0,W.useCallback)(async(e,n,i)=>{await r.current.onWake?.();let a=i&&n===`page`?{_tag:`design-version`,threadId:t.threadId,checkpointTurnCount:i.turnCount,path:e}:{_tag:`design-preview`,threadId:t.threadId,path:e},o=await u({environmentId:t.environmentId,input:{resource:a}}),s=y(t.environmentId);if(o._tag!==`Success`||!s)return null;let c=Xe(s.httpBaseUrl,o.value.relativeUrl);return c&&n===`page`?sr(c):c},[u,t]),[ue,de]=(0,W.useState)(null);(0,W.useEffect)(()=>{if(H===null||h===null||v===null){de(null);return}if(v!==`page`&&v!==`image`){de({key:H,url:null});return}if(!Ce(t.environmentId)){de({key:H,url:null,tunnel:!0});return}let e=!1;return U(h,v,x).then(t=>{e||de({key:H,url:t})}),()=>{e=!0}},[v,h,H,U,t.environmentId,x]);let he=(0,W.useMemo)(()=>{if(h===null||v===null)return null;let e=ue!==null&&ue.key===H,t=v===`page`||v===`image`;return{path:h,kind:v,url:ue?.url??null,failure:e&&ue.url===null&&t?ue.tunnel?`tunnel`:`unavailable`:null}},[v,h,H,ue]),ge=(0,W.useCallback)(()=>h!==null&&v!==null?U(h,v,x):Promise.resolve(null),[v,h,U,x]);(0,W.useEffect)(()=>{N(null),I(null)},[he?.url??null]);let _e=(0,W.useRef)(()=>void 0),xe=(0,W.useRef)(F),De=(0,W.useRef)(i.mode),Oe=(0,W.useRef)(null);(0,W.useEffect)(()=>{xe.current=F,De.current=i.mode},[F,i.mode]),(0,W.useEffect)(()=>f.subscribe(e=>{if(e.type===`ready`)N(e);else if(e.type===`selection`)De.current===`edit`&&I(e.selection);else if(e.type===`pin`)re(e.id);else if(e.type===`editing`)Oe.current=e.node;else if(e.type===`text`){let t=xe.current;if(De.current!==`edit`||Oe.current!==e.node||t?.node!==e.node)return;Oe.current=null,_e.current({edit:{kind:`text`,node:e.node,text:e.text,exact:e.exact},target:t.label,selector:t.selector,property:`text`,previousValue:t.editableText??``,value:e.text})}}),[f]);let ke=(0,W.useCallback)(e=>{x&&e!==`select`||L||(m({mode:e}),e!==`edit`&&I(null))},[L,m,x]),Ae=(0,W.useMemo)(()=>h&&v===`page`?be(h,e.checkpoints,n):[],[v,h,e.checkpoints,n]),je=(0,W.useCallback)(()=>w(e=>e+1),[]),Me=(0,W.useCallback)(()=>{D([]),j(!1),I(null),je()},[je]),Ne=(0,W.useCallback)(()=>{!h||T.length===0||(r.current.onAttachAnnotation(hr({path:h,edits:T,comment:`Apply these changes to ${h}; I made them on the canvas but the file changed before I could save.`})),D([]),j(!1),je(),P.add({type:`info`,title:`Edits attached to your next message`}))},[h,T,je]),Pe=(0,W.useRef)(!1),Ie=(0,W.useCallback)(async()=>{if(Pe.current||!h||!M||T.length===0||!n)return;Pe.current=!0,R(!0);let e=h,i=await dr({readSource:async()=>{let t=await U(e,`page`,null);if(!t)throw Error(`The design could not be read.`);return ur(t)},sourceHash:M.sourceHash,edits:T,write:async r=>{if((await d({environmentId:t.environmentId,input:{cwd:n,relativePath:e,contents:r}}))._tag!==`Success`)throw Error(`The file could not be written.`)}});if(Pe.current=!1,R(!1),i.status===`changed`){j(!0),P.add({type:`warning`,title:`The page changed while you edited`,description:`Hand your edits to Borg to apply them to the new version, or discard them.`});return}if(i.status===`failed`){P.add({type:`error`,title:`Couldn't save your edits`,description:i.message});return}i.applied.length>0&&r.current.onAttachAnnotation(hr({path:e,edits:i.applied})),D([]),I(null),m({mode:`select`}),je();let a=`Saved ${i.applied.length} edit${i.applied.length===1?``:`s`} to ${e}`;i.skipped.length>0?P.add({type:`warning`,title:i.applied.length>0?a:`Nothing was saved`,description:`${i.skipped.length} edit${i.skipped.length===1?``:`s`} no longer matched the page and ${i.skipped.length===1?`was`:`were`} left out.`}):P.add({type:`success`,title:a,description:`Borg reads them with your next message.`})},[h,T,U,M,je,m,t,n,d]),Re=(0,W.useCallback)(e=>{T.length>0||(S(e),e&&m({mode:`select`}))},[T.length,m]),ze=(0,W.useCallback)(async()=>{if(!x||!h||!n||z)return;let e=x;ee(!0);try{let r=await U(h,`page`,e);if(!r)throw Error(`This version could not be read.`);let i=await ur(r);if((await d({environmentId:t.environmentId,input:{cwd:n,relativePath:h,contents:i}}))._tag!==`Success`)throw Error(`The file could not be written.`)}catch(e){P.add({type:`error`,title:`Couldn't restore this version`,description:e instanceof Error?e.message:void 0});return}finally{ee(!1)}S(null),je(),r.current.onAttachAnnotation(hr({path:h,edits:[],comment:`I restored ${h} to its version from turn ${e.turnCount}. Build on that version from here.`})),P.add({type:`success`,title:`Restored ${h}`})},[h,U,je,z,t,x,n,d]),Be=(0,W.useMemo)(()=>h===null?[]:a.filter(e=>ve(e.path,n)===h),[a,h,n]),Ve=(0,W.useCallback)(e=>{h&&s(t,{...e,id:p(),path:h,createdAt:new Date().toISOString()})},[h,s,t]),He=(0,W.useCallback)(e=>c(t,e),[c,t]),Ue=(0,W.useCallback)(e=>{let n=a.find(t=>t.id===e);c(t,e),n&&P.add({type:`success`,title:`Comment resolved`,actionProps:{children:`Undo`,onClick:()=>s(t,n)}})},[a,s,c,t]),Ge=(0,W.useCallback)(e=>{if(!h)return;let t=getComputedStyle(document.documentElement).getPropertyValue(`--brand-ink`).trim()||void 0;r.current.onSendAnnotations([mr({path:h,comment:e.comment,target:e.target,...e.ink?{ink:e.ink}:{},...t?{inkColor:t}:{}})]),m({pane:`chat`})},[h,m]),Ke=(0,W.useCallback)(e=>{!h||e.length===0||(r.current.onSendAnnotations(e.map(e=>mr({path:h,comment:e.text,target:e.target}))),m({pane:`chat`}))},[h,m]),qe=(0,W.useCallback)(()=>{h&&r.current.onSendToWork(h)},[h]),Ze=(0,W.useCallback)(e=>{T.length>0||(S(null),m({path:e,mode:`select`}))},[T.length,m]),Qe=(0,W.useCallback)(e=>{if(T.length>0){P.add({type:`info`,title:`Save or discard your edits first`});return}Ze(ve(e,n)),m({pane:`canvas`})},[T.length,Ze,m,n]),$e=e.documents[0]?`${e.documents[0].path}#${e.documents[0].revision}`:null,tt=(0,W.useRef)($e);(0,W.useEffect)(()=>{tt.current!==$e&&(tt.current=$e,i.path!==null&&T.length===0&&m({path:null}))},[T.length,$e,m,i.path]);let nt=(0,W.useCallback)(e=>D(t=>{let n=t.at(-1),r=n!==void 0&&n.edit.kind===e.edit.kind&&n.property===e.property&&(`node`in n.edit?n.edit.node:n.edit.name)===(`node`in e.edit?e.edit.node:e.edit.name),i=r?{...e,previousValue:n.previousValue}:e,a=r?t.slice(0,-1):t;return i.edit.kind!==`html`&&i.value===i.previousValue?a:[...a,i]}),[]);(0,W.useEffect)(()=>{_e.current=nt},[nt]),(0,W.useEffect)(()=>{if(!M)return;let e=i.mode===`comment`?Be.flatMap((e,t)=>e.anchor?[{id:e.id,label:String(t+1),...e.anchor}]:[]):[];f.send({type:`pins`,pins:e})},[f,Be,M,i.mode]);let rt=(0,W.useRef)(T);(0,W.useEffect)(()=>{rt.current=T},[T]);let it=et({shouldBlockFn:({current:e,next:t})=>rt.current.length>0&&e.pathname!==t.pathname,enableBeforeUnload:()=>!We&&rt.current.length>0,disabled:!B,withResolver:!0}),at=(0,W.useMemo)(()=>({threadRef:t,title:e.title,designing:e.designing,authoring:e.authoring,workspaceRoot:n,view:i,setView:m,setMode:ke,documents:e.documents,files:e.files,current:he,freshUrl:ge,openFile:Ze,versions:Ae,version:x,showVersion:Re,restoring:z,restoreVersion:ze,reload:je,bridge:f,ready:M,selection:F,edits:T,addEdit:nt,stale:le,conflict:A,saving:L,save:Ie,discard:Me,handEditsToAgent:Ne,comments:Be,addComment:Ve,removeComment:He,resolveComment:Ue,focusedCommentId:ne,setFocusedCommentId:re,sendToAgent:Ge,sendCommentsToAgent:Ke,sendToWork:qe}),[Ve,nt,f,Be,A,he,Me,T,ne,ge,Ne,Ze,e.authoring,e.designing,e.documents,e.files,e.title,M,je,He,Ue,ze,z,Ie,L,F,Ke,Ge,qe,ke,m,Re,le,t,x,Ae,i,n]),ot=(0,W.useRef)(null),[st,ct]=(0,W.useState)(null);(0,W.useLayoutEffect)(()=>{let e=ot.current;if(!e)return;let t=new ResizeObserver(([e])=>{e&&ct(e.contentRect.width)});return t.observe(e),()=>t.disconnect()},[]);let{width:lt,handlers:ut}=Fe({storageKey:Pi,defaultWidth:Fi,minWidth:Ii,maxWidth:Math.max(Ii,(st??1280)-Li),edge:`right`}),dt=i.mode===`comment`||i.mode===`edit`;return(0,X.jsx)(Ri.Provider,{value:at,children:(0,X.jsxs)(E.Provider,{value:Qe,children:[(0,X.jsxs)(`div`,{ref:ot,className:`flex min-h-0 min-w-0 flex-1 border-t border-line`,style:{"--design-conversation-width":`${lt}px`},"data-design-workspace":!0,children:[(0,X.jsxs)(`div`,{className:g(`relative flex min-h-0 min-w-0 flex-1 flex-col md:w-(--design-conversation-width) md:flex-none md:border-e md:border-line`,i.pane!==`chat`&&`max-md:hidden`),"data-design-conversation":!0,children:[(0,X.jsx)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col`,inert:dt,children:e.conversation}),i.mode===`comment`?(0,X.jsx)(hi,{className:`absolute inset-0 z-30`}):null,i.mode===`edit`?(0,X.jsx)(Mi,{className:`absolute inset-0 z-30`}):null,(0,X.jsx)(Le,{handlers:ut,className:`left-auto -right-1 z-40 max-md:hidden`})]}),(0,X.jsx)(mi,{className:g(`min-w-0 flex-1`,i.pane!==`canvas`&&`max-md:hidden`)})]}),(0,X.jsx)(ce,{open:it.status===`blocked`,onOpenChange:e=>{e||it.reset?.()},children:(0,X.jsxs)(ye,{children:[(0,X.jsxs)(Te,{children:[(0,X.jsx)(Se,{children:`Leave without saving your edits?`}),(0,X.jsxs)(te,{children:[T.length,` edit`,T.length===1?``:`s`,` on the canvas`,` `,T.length===1?`has`:`have`,` not been saved to the file.`]})]}),(0,X.jsxs)(pe,{children:[(0,X.jsx)(oe,{render:(0,X.jsx)(_,{variant:`outline`}),children:`Keep editing`}),(0,X.jsx)(_,{variant:`destructive`,onClick:()=>it.proceed?.(),children:`Leave`})]})]})})]})})}export{Bi as DesignWorkspace};
3
- //# sourceMappingURL=DesignWorkspace-NVV8GBAk.js.map
@@ -1,2 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{a as t,o as n}from"./useLocalStorage-B6HRw7FK.js";import{Bn as r,Bo as i,Co as a,G as o,Mn as s,N as c,Nn as l,On as u,R as d,Rn as f,So as p,Vn as ee,pn as te,t as m,un as h,wo as g,xo as ne,zn as re}from"./utils-CxdSByf6.js";import{Bt as _,Nt as v,Pt as ie,i as y,jt as b,nn as x,qt as ae,un as oe}from"./session-BpEQOlGw.js";import{l as S,t as C}from"./queries-D1aqiDAP.js";import{Jn as se,Q as ce,cr as w,f as T,fr as le,ft as E,h as D,kn as O,l as k,or as A,u as j,x as M,xt as N}from"./textarea-C37zxlv0.js";import{t as ue}from"./ArrowRight-B0WzqdPj.js";import{$t as de,Bn as fe,Fn as pe,Jt as me,Lt as he,Qt as ge,Rn as _e,Xt as ve,Yt as ye,Zt as be,en as xe,zn as Se}from"./scroll-area-DhT-7J-n.js";import{t as Ce}from"./ArrowsClockwise-DlJf49Z-.js";import{a as we,i as Te,o as Ee,r as De,s as Oe,t as ke}from"./diffFileContents-D8w_yRtq.js";import{At as Ae,Et as je,F as Me,I as Ne,L as Pe,Ot as Fe,P,a as Ie,i as Le,kt as F,n as Re,r as ze,s as Be,t as Ve,u as He}from"./combobox-Cf7GvOtx.js";import{h as Ue,v as We}from"./entities-x8g8jint.js";import{n as Ge}from"./useWorkspaceMutationRefresh-CdZvTsDX.js";import{c as Ke}from"./env-DgM3kOA4.js";import{l as qe,t as Je,u as Ye}from"./DiffWorkerPoolProvider-EEE1VuzL.js";import{n as I}from"./fileCommentAnnotations-BgdL_7u9.js";import{i as Xe}from"./VirtualizedFile-DpXIpMCw.js";import{n as Ze,t as Qe}from"./toggle-group-Cl-JZXj8.js";var L=e(t(),1),$e=new Map([[`bold`,L.createElement(L.Fragment,null,L.createElement(`path`,{d:`M208,36H96a68,68,0,0,0,0,136h36v36a12,12,0,0,0,24,0V60h16V208a12,12,0,0,0,24,0V60h12a12,12,0,0,0,0-24ZM132,148H96a44,44,0,0,1,0-88h36Z`}))],[`duotone`,L.createElement(L.Fragment,null,L.createElement(`path`,{d:`M144,48V160H96A56,56,0,0,1,96,48Z`,opacity:`0.2`}),L.createElement(`path`,{d:`M208,40H96a64,64,0,0,0,0,128h40v40a8,8,0,0,0,16,0V56h24V208a8,8,0,0,0,16,0V56h16a8,8,0,0,0,0-16ZM136,152H96a48,48,0,0,1,0-96h40Z`}))],[`fill`,L.createElement(L.Fragment,null,L.createElement(`path`,{d:`M216,48a8,8,0,0,1-8,8H192V208a8,8,0,0,1-16,0V56H152V208a8,8,0,0,1-16,0V168H96A64,64,0,0,1,96,40H208A8,8,0,0,1,216,48Z`}))],[`light`,L.createElement(L.Fragment,null,L.createElement(`path`,{d:`M208,42H96a62,62,0,0,0,0,124h42v42a6,6,0,0,0,12,0V54h28V208a6,6,0,0,0,12,0V54h18a6,6,0,0,0,0-12ZM138,154H96A50,50,0,0,1,96,54h42Z`}))],[`regular`,L.createElement(L.Fragment,null,L.createElement(`path`,{d:`M208,40H96a64,64,0,0,0,0,128h40v40a8,8,0,0,0,16,0V56h24V208a8,8,0,0,0,16,0V56h16a8,8,0,0,0,0-16ZM136,152H96a48,48,0,0,1,0-96h40Z`}))],[`thin`,L.createElement(L.Fragment,null,L.createElement(`path`,{d:`M208,44H96a60,60,0,0,0,0,120h44v44a4,4,0,0,0,8,0V52h32V208a4,4,0,0,0,8,0V52h20a4,4,0,0,0,0-8ZM140,156H96A52,52,0,0,1,96,52h44Z`}))]]),R=Object.defineProperty,et=Object.defineProperties,z=Object.getOwnPropertyDescriptors,tt=Object.getOwnPropertySymbols,nt=Object.prototype.hasOwnProperty,rt=Object.prototype.propertyIsEnumerable,B=(e,t,n)=>t in e?R(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,it=(e,t)=>{for(var n in t||={})nt.call(t,n)&&B(e,n,t[n]);if(tt)for(var n of tt(t))rt.call(t,n)&&B(e,n,t[n]);return e},at=(e,t)=>et(e,z(t)),ot=(0,L.forwardRef)((e,t)=>L.createElement(a,at(it({ref:t},e),{weights:$e})));ot.displayName=`Paragraph`;var V=g();function st(e,t){let n=(0,V.c)(4),r=C(e,t),i;return n[0]!==r.data||n[1]!==r.error||n[2]!==r.isPending?(i={data:r.data,error:r.error,isPending:r.isPending},n[0]=r.data,n[1]=r.error,n[2]=r.isPending,n[3]=i):i=n[3],i}var H=i();function ct(e){let t=(0,V.c)(14),{filePath:n}=e,r=(0,L.useRef)(null),i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i={onCopy:()=>Ne(r),onError:e=>Me(r,e),timeout:P},t[0]=i):i=t[0];let{copyToClipboard:a,isCopied:o}=D(i),s;t[1]!==a||t[2]!==n?(s=(0,H.jsx)(h,{ref:r,size:`icon-micro`,variant:`ghost`,className:`text-muted-foreground [:hover,[data-pressed]]:bg-transparent`,"aria-label":`Copy file path`,onClick:()=>a(n,void 0)}),t[1]=a,t[2]=n,t[3]=s):s=t[3];let c;t[4]===o?c=t[5]:(c=o?(0,H.jsx)(w,{className:`size-3 text-success`}):(0,H.jsx)(A,{className:`size-3`}),t[4]=o,t[5]=c);let l;t[6]!==s||t[7]!==c?(l=(0,H.jsx)(T,{render:s,children:c}),t[6]=s,t[7]=c,t[8]=l):l=t[8];let u=o?`Copied`:`Copy path`,d;t[9]===u?d=t[10]:(d=(0,H.jsx)(j,{children:(0,H.jsx)(`p`,{children:u})}),t[9]=u,t[10]=d);let f;return t[11]!==l||t[12]!==d?(f=(0,H.jsxs)(k,{children:[l,d]}),t[11]=l,t[12]=d,t[13]=f):f=t[13],f}var U=[];function W(e){return(e.endSide??e.side)===`deletions`?`deletions`:`additions`}function G(e,t,n){let r=W(t),i=e.findIndex(e=>e.side===r&&e.lineNumber===t.end);return i<0?[...e,{side:r,lineNumber:t.end,metadata:{entries:[n]}}]:e.map((e,t)=>t===i?{...e,metadata:{entries:[...e.metadata.entries,n]}}:e)}function lt(e){let t=(0,V.c)(55),{codeViewKey:n,files:r,sectionId:i,sectionTitle:a,composerDraftTarget:s,options:l,viewerRef:u,className:f,renderHeaderFilenameSuffix:p,renderHeaderPrefix:ee}=e,te=c(ft),m=c(J),h;t[0]===s?h=t[1]:(h=e=>e.getComposerDraft(s)?.reviewComments??U,t[0]=s,t[1]=h);let g=c(h),[ne,re]=(0,L.useState)(null),[_,v]=(0,L.useState)(null),[ie,y]=(0,L.useState)(``),b;t[2]===r?b=t[3]:(b=new Map(r.map(q)),t[2]=r,t[3]=b);let x=b,ae;if(t[4]!==_||t[5]!==r||t[6]!==g||t[7]!==i){let e;t[9]!==_||t[10]!==g||t[11]!==i?(e=e=>{let{fileDiff:t,filePath:n,fileKey:r,collapsed:a}=e,s=g.filter(e=>e.sectionId===i&&e.filePath===n&&(e.fenceLanguage??`diff`)===`diff`).reduce((e,n)=>{let r=o(t,n);return r?G(e,r,{id:n.id,kind:`comment`,range:r,rangeLabel:n.rangeLabel,text:n.text}):e},[]),c=_?.fileKey===r?[...s,_.annotation]:s;return{id:r,type:`diff`,fileDiff:t,annotations:c,collapsed:a,version:ye(`${a?`1`:`0`}:${c.flatMap(ut).join(`:`)}`)}},t[9]=_,t[10]=g,t[11]=i,t[12]=e):e=t[12],ae=r.map(e),t[4]=_,t[5]=r,t[6]=g,t[7]=i,t[8]=ae}else ae=t[8];let oe=ae,S;t[13]!==s||t[14]!==_?.annotation||t[15]!==m?(S=e=>{re(null),_?.annotation.metadata.entries.some(t=>t.id===e)?(v(null),y(``)):m(s,e)},t[13]=s,t[14]=_?.annotation,t[15]=m,t[16]=S):S=t[16];let C=S,se;t[17]!==te||t[18]!==s||t[19]!==_||t[20]!==x||t[21]!==i||t[22]!==a?(se=(e,t)=>{let n=_?.annotation.metadata.entries.find(t=>t.id===e),r=_?x.get(_.fileKey):void 0;if(!n||!r)return;let o=d({id:n.id,sectionId:i,sectionTitle:a,filePath:r.filePath,fileDiff:r.fileDiff,range:n.range,text:t});o&&te(s,o),re(null),v(null),y(``)},t[17]=te,t[18]=s,t[19]=_,t[20]=x,t[21]=i,t[22]=a,t[23]=se):se=t[23];let ce=se,w;t[24]!==x||t[25]!==i||t[26]!==a?(w=(e,t)=>{if(!e)return;let n=t.item;if(n.type!==`diff`)return;let r=x.get(n.id);if(!r)return;let o=I(),s=d({id:o,sectionId:i,sectionTitle:a,filePath:r.filePath,fileDiff:r.fileDiff,range:e,text:``});s&&(y(``),v({fileKey:n.id,annotation:{side:W(e),lineNumber:e.end,metadata:{entries:[{id:o,kind:`draft`,range:e,rangeLabel:s.rangeLabel,text:``}]}}}))},t[24]=x,t[25]=i,t[26]=a,t[27]=w):w=t[27];let T=w,le=_!==null,E;t[28]===u?E=t[29]:(E=u?{viewerRef:u}:{},t[28]=u,t[29]=E);let D;t[30]===f?D=t[31]:(D=f?{className:f}:{},t[30]=f,t[31]=D);let O=!le,k=!le,A;t[32]!==T||t[33]!==l||t[34]!==k||t[35]!==O?(A={...l,enableGutterUtility:O,enableLineSelection:k,onGutterUtilityClick:T},t[32]=T,t[33]=l,t[34]=k,t[35]=O,t[36]=A):A=t[36];let j;t[37]===p?j=t[38]:(j=e=>e.type===`diff`?p(e.fileDiff):null,t[37]=p,t[38]=j);let M;t[39]===ee?M=t[40]:(M=e=>e.type===`diff`?ee(e.fileDiff,e.id,e.collapsed===!0):null,t[39]=ee,t[40]=M);let N;t[41]!==ie||t[42]!==C||t[43]!==ce?(N=e=>(0,H.jsx)(`div`,{className:e.metadata.entries.some(K)?`py-1`:`divide-y divide-border/30 border-y border-border/30`,children:e.metadata.entries.map(e=>(0,H.jsx)(Xe,{kind:e.kind,rangeLabel:e.rangeLabel,text:e.kind===`draft`?ie:e.text,onTextChange:y,onCancel:()=>C(e.id),onComment:t=>ce(e.id,t),onDelete:()=>C(e.id)},e.id))}),t[41]=ie,t[42]=C,t[43]=ce,t[44]=N):N=t[44];let ue;return t[45]!==n||t[46]!==oe||t[47]!==ne||t[48]!==A||t[49]!==j||t[50]!==M||t[51]!==N||t[52]!==E||t[53]!==D?(ue=(0,H.jsx)(De,{...E,...D,items:oe,selectedLines:ne,onSelectedLinesChange:re,options:A,renderHeaderFilenameSuffix:j,renderHeaderPrefix:M,renderAnnotation:N},n),t[45]=n,t[46]=oe,t[47]=ne,t[48]=A,t[49]=j,t[50]=M,t[51]=N,t[52]=E,t[53]=D,t[54]=ue):ue=t[54],ue}function K(e){return e.kind===`draft`}function ut(e){return e.metadata.entries.map(dt)}function dt(e){return`${e.id}:${e.rangeLabel}:${e.text}`}function q(e){return[e.fileKey,e]}function J(e){return e.removeReviewComment}function ft(e){return e.addReviewComment}function pt(e){let t=b();return{diffPreview:ie(e,{label:`environment-data:review:diff-preview`,tag:n.reviewGetDiffPreview,staleTimeMs:5e3}),diffFileContents:v(e,{label:`environment-data:review:diff-file-contents`,tag:n.reviewGetDiffFileContents,scheduler:t,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.cwd,t.sourceKind,t.baseRef,t.headRef,t.oldPath,t.newPath,t.changeType])}})}}var mt=pt(y);function ht(e){return e.remoteName&&e.name.startsWith(`${e.remoteName}/`)?e.name.slice(e.remoteName.length+1):e.name}function gt(e,t){let n=new Set(t),r=e.map(e=>{let r=t.filter(t=>n.has(t)&&ht(t)===e.name),i=r.find(e=>e.remoteName===`origin`)??r[0]??null;return i&&n.delete(i),{id:`local:${e.name}`,label:e.name,local:e,remote:i}}),i=t.filter(e=>n.has(e)).map(e=>({id:`remote:${e.name}`,label:e.name,local:null,remote:e}));return[...r,...i]}function _t(e,t){let n=t.trim().toLocaleLowerCase();return n.length===0?e:e.filter(e=>e.label.toLocaleLowerCase().includes(n)||e.local?.name.toLocaleLowerCase().includes(n)===!0||e.remote?.name.toLocaleLowerCase().includes(n)===!0)}var vt=`__automatic_base_ref__`,yt=new Set;function Y({mode:e=`inline`,composerDraftTarget:t,initialGitScope:n,workspaceMutationId:i}){let{resolvedTheme:a}=N(),o=M(),[c]=(0,L.useState)(n),d=F(e=>e.diffRenderMode),g=F(e=>e.setDiffRenderMode),[v,ie]=(0,L.useState)(o.wordWrap),[y,b]=(0,L.useState)(o.diffIgnoreWhitespace),[C,D]=(0,L.useState)(``),[A,ye]=(0,L.useState)(()=>({scopeKey:null,fileKeys:yt})),[De,Me]=(0,L.useState)(0),Ne=(0,L.useRef)(null),P=le({strict:!1,select:e=>ce(e)}),Je=P?.threadId??null,I=We(P),Xe=I?.projectId??null,$e=Ue(I&&Xe?{environmentId:I.environmentId,projectId:Xe}:null),R=I?.worktreePath??$e?.workspaceRoot,et=I?.worktreePath?void 0:$e?.repositoryIdentity?.rootPath,z=oe(E.configValueAtom(I?.environmentId??null)),tt=pe(I?.environmentId??null,z?.availableEditors??[]),nt=se(mt.diffFileContents),rt=O(I!=null&&R!=null?S.status({environmentId:I.environmentId,input:{cwd:R}}):null),B=F(e=>Fe(e.byThreadKey,P,c===`unstaged`)),it=rt.data?.isRepo??!0,{turnDiffSummaries:at,inferredCheckpointTurnCountByTurnId:V}=Pe(I),U=(0,L.useMemo)(()=>[...at].toSorted((e,t)=>{let n=e.checkpointTurnCount??V[e.turnId]??0,r=t.checkpointTurnCount??V[t.turnId]??0;return n===r?t.completedAt.localeCompare(e.completedAt):r-n}),[V,at]);(0,L.useEffect)(()=>{!P||B.kind!==`turn`||F.getState().reconcileTurnSelection(P,U.map(e=>e.turnId))},[B,U,P]);let W=B.kind===`turn`?B.turnId:null,G=B.kind===`unstaged`?`unstaged`:`branch`,K=B.kind===`branch`?B.baseRef:null,ut=B.kind===`turn`?B.filePath:null,dt=B.kind===`turn`?B.revealRequestId:0,q=W===null?void 0:U.find(e=>e.turnId===W)??U[0],J=q&&(q.checkpointTurnCount??V[q.turnId]),ft=U[0],pt=W===null?G===`unstaged`?`Working tree`:`Branch changes`:q?.turnId===ft?.turnId?`Latest turn`:`Turn ${J??`?`}`,ht=q?`turn:${q.turnId}`:G,Y=P?`${P.environmentId}:${P.threadId}:${ht}`:null,bt=`${Y??ht}:${De}`,xt=A.scopeKey===Y?A.fileKeys:yt,St=q?`Turn ${J??`?`}`:G===`unstaged`?`Working tree`:`Branch changes`,Ct=(0,L.useMemo)(()=>typeof J==`number`?{fromTurnCount:Math.max(0,J-1),toTurnCount:J}:null,[J]),wt=st({environmentId:I?.environmentId??null,threadId:Je,fromTurnCount:Ct?.fromTurnCount??null,toTurnCount:Ct?.toTurnCount??null,ignoreWhitespace:y,cacheScope:q?`turn:${q.turnId}`:null},{enabled:it&&q!==void 0}),Tt=O(W===null&&I&&R?mt.diffPreview({environmentId:I.environmentId,input:{cwd:R,...K?{baseRef:K}:{},ignoreWhitespace:y}}):null),Et=W===null&&Tt.error?.includes(`configured workspace root`)===!0&&z?.cwd!==void 0&&z.cwd!==R,Dt=O(Et&&I&&z?mt.diffPreview({environmentId:I.environmentId,input:{cwd:z.cwd,...K?{baseRef:K}:{},ignoreWhitespace:y}}):null),X=Et?Dt:Tt,Ot=X.refresh,kt=it&&W===null&&I!=null&&R!=null,At=P?`${P.environmentId}:${P.threadId}`:null;(0,L.useEffect)(()=>{if(!kt)return;let e=()=>Ot();return window.addEventListener(`focus`,e),()=>window.removeEventListener(`focus`,e)},[kt,Ot]),Ge({enabled:kt,mutationId:i,refresh:Ot,resourceKey:`diff:${At??``}`});let Z=X.data?.sources.find(e=>e.kind===(G===`unstaged`?`working-tree`:`branch-range`)),jt=(0,L.useMemo)(()=>{let e=X.data;if(!(W!==null||!I||!e||!Z))return ke(nt,{environmentId:I.environmentId,cwd:e.cwd,sourceKind:Z.kind,baseRef:Z.baseRef,headRef:Z.headRef,cacheKey:Z.diffHash})},[I,X.data,nt,Z,W]),Mt=O(W===null&&G===`branch`&&I&&X.data?.cwd?S.listRefs({environmentId:I.environmentId,input:{cwd:X.data.cwd,includeMatchingRemoteRefs:!0,refKind:`local`,...C.trim().length>0?{query:C.trim()}:{},limit:100}}):null),Nt=O(W===null&&G===`branch`&&I&&X.data?.cwd?S.listRefs({environmentId:I.environmentId,input:{cwd:X.data.cwd,includeMatchingRemoteRefs:!0,refKind:`remote`,...C.trim().length>0?{query:C.trim()}:{},limit:100}}):null),Pt=gt(Mt.data?.refs.filter(e=>e.name!==Z?.headRef)??[],Nt.data?.refs??[]),Ft=_t(Pt,C),It=e=>K&&K===e.remote?.name?K:e.local?.name??e.remote?.name??e.id,Lt=[vt,...Pt.map(It)],Rt=[...C.trim().length===0?[vt]:[],...Ft.map(It)],zt=Z?.diff,Bt=q?wt.data?.diff:zt,Vt=!q&&Z?.truncated===!0,Ht=q?wt.isPending:X.isPending,Ut=q?wt.error:X.error,Wt=typeof Bt==`string`&&Bt.trim().length===0,Q=(0,L.useMemo)(()=>ge(Bt,`diff-panel:${a}`,{compactPartialHunkOffsets:W===null}),[a,Bt,W]),Gt=(0,L.useMemo)(()=>!Q||Q.kind!==`files`?[]:Q.files.toSorted((e,t)=>xe(e).localeCompare(xe(t),void 0,{numeric:!0,sensitivity:`base`})),[Q]),Kt=(0,L.useMemo)(()=>Gt.map(e=>({fileDiff:e,fileKey:me(e)})),[Gt]),$=(0,L.useMemo)(()=>Kt.map(({fileDiff:e,fileKey:t})=>({fileDiff:e,filePath:xe(e),fileKey:t,collapsed:xt.has(t)})),[xt,Kt]),qt=(0,L.useMemo)(()=>$.map(e=>e.fileKey),[$]),Jt=Te(qt,xt),Yt=(0,L.useMemo)(()=>be(Gt),[Gt]),Xt=ut?$.find(e=>e.filePath===ut)?.fileKey??null:null;(0,L.useEffect)(()=>{Xt&&Ne.current?.scrollTo({type:`item`,id:Xt,align:`start`})},[bt,Xt,dt]);let Zt=(0,L.useCallback)(e=>{je({threadRef:P,filePath:e,activeCwd:R,repositoryRoot:et,openInEditor:e=>{(async()=>{let t=await tt(e);t._tag===`Failure`&&!_(t)&&console.warn(`Failed to open diff file in editor.`,{operation:`open-diff-file`,...P?{environmentId:P.environmentId,threadId:P.threadId}:{},...x(ae(t))})})()}})},[R,et,tt,P]),Qt=(0,L.useCallback)(e=>{ye(t=>{let n=new Set(t.scopeKey===Y?t.fileKeys:[]);return n.has(e)?n.delete(e):n.add(e),{scopeKey:Y,fileKeys:n}})},[Y]),$t=(0,L.useCallback)(()=>{Me(e=>e+1),ye(e=>{let t=e.scopeKey===Y?e.fileKeys:yt;return{scopeKey:Y,fileKeys:we(qt,t)}})},[Y,qt]),en=e=>{P&&F.getState().selectTurn(P,e)},tn=e=>{P&&F.getState().selectGitScope(P,e)},nn=e=>{P&&F.getState().selectBranchBaseRef(P,e)};return(0,H.jsx)(Ye,{mode:e,header:(0,H.jsxs)(H.Fragment,{children:[(0,H.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3 [-webkit-app-region:no-drag]`,children:[(0,H.jsxs)(u,{children:[(0,H.jsxs)(ee,{className:`inline-flex h-6 max-w-full items-center gap-1 rounded-full bg-hover px-2.5 text-xs font-medium text-foreground outline-none transition-colors hover:bg-strong-line/60 focus-visible:ring-2 focus-visible:ring-ring`,"aria-label":`Changes scope: ${pt}`,children:[(0,H.jsx)(`span`,{className:`truncate`,children:pt}),(0,H.jsx)(p,{className:`size-3.5 shrink-0 opacity-70`})]}),(0,H.jsxs)(l,{align:`start`,className:`w-60`,children:[(0,H.jsx)(s,{className:W===null&&G===`unstaged`?`bg-foreground/[0.08]`:void 0,onClick:()=>tn(`unstaged`),children:(0,H.jsx)(`span`,{children:`Working tree`})}),(0,H.jsx)(s,{className:W===null&&G===`branch`?`bg-foreground/[0.08]`:void 0,onClick:()=>tn(`branch`),children:(0,H.jsx)(`span`,{children:`Branch changes`})}),(0,H.jsx)(s,{className:W!==null&&q?.turnId===ft?.turnId?`bg-foreground/[0.08]`:void 0,onClick:()=>{ft&&en(ft.turnId)},children:(0,H.jsx)(`span`,{children:`Latest turn`})}),(0,H.jsxs)(f,{children:[(0,H.jsx)(r,{children:`Turn`}),(0,H.jsx)(re,{className:`w-64`,children:U.map(e=>{let t=e.checkpointTurnCount??V[e.turnId]??`?`;return(0,H.jsxs)(s,{className:e.turnId===q?.turnId?`bg-foreground/[0.08]`:void 0,onClick:()=>en(e.turnId),children:[(0,H.jsxs)(`span`,{children:[`Turn `,t]}),(0,H.jsx)(`span`,{className:`ml-auto text-xs tabular-nums text-muted-foreground`,children:Ke(e.completedAt,o.timestampFormat)})]},e.turnId)})})]})]})]}),W===null&&G===`branch`&&Z?.baseRef&&(0,H.jsxs)(`div`,{className:`flex min-w-0 max-w-full items-center gap-2 overflow-hidden text-xs text-muted-foreground`,"aria-label":`Comparing ${Z.headRef??`HEAD`} against ${Z.baseRef}`,children:[(0,H.jsxs)(k,{children:[(0,H.jsxs)(T,{render:(0,H.jsx)(`span`,{className:`flex min-w-0 items-center gap-2`}),children:[(0,H.jsx)(`span`,{className:`min-w-0 max-w-48 truncate`,children:Z.headRef??`HEAD`}),(0,H.jsx)(ue,{className:`size-3.5 shrink-0 opacity-70`})]}),(0,H.jsx)(j,{side:`top`,children:`${Z.headRef??`HEAD`} → ${Z.baseRef}`})]}),(0,H.jsxs)(Ve,{items:Lt,filteredItems:Rt,value:K??vt,onOpenChange:e=>{e||D(``)},onValueChange:e=>{e&&nn(e===vt?null:e)},children:[(0,H.jsxs)(He,{className:`inline-flex min-w-0 max-w-48 items-center gap-1 overflow-hidden rounded-md px-1.5 py-1 outline-none transition-colors hover:bg-muted hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring`,"aria-label":`Change comparison target. Currently ${Z.baseRef}`,children:[(0,H.jsx)(`span`,{className:`min-w-0 truncate`,children:Z.baseRef}),(0,H.jsx)(p,{className:`size-3.5 shrink-0 opacity-70`})]}),(0,H.jsxs)(Be,{align:`start`,className:`w-72 min-w-0 max-w-[calc(100vw-1rem)] overflow-hidden`,children:[(0,H.jsx)(`div`,{className:`min-w-0 shrink-0 px-3 pt-2.5`,children:(0,H.jsxs)(`div`,{className:`relative -translate-y-px border-b border-border/70 pb-1.5 transition-colors focus-within:border-ring`,children:[(0,H.jsx)(Ae,{"aria-hidden":`true`,className:`pointer-events-none absolute top-1.5 left-0 size-4 shrink-0 text-muted-foreground/55`}),(0,H.jsx)(ze,{className:`[&_input]:h-6.5 [&_input]:ps-5 [&_input]:font-sans [&_input]:leading-6.5`,inputClassName:`rounded-none bg-transparent text-sm`,placeholder:`Search refs...`,showTrigger:!1,size:`sm`,unstyled:!0,value:C,onChange:e=>D(e.target.value)})]})}),(0,H.jsxs)(`div`,{className:`grid shrink-0 grid-cols-[1rem_minmax(0,1fr)] items-center gap-2 border-b border-line ps-3 pe-6.5 pt-2 pb-1.5 text-[11px] text-muted-foreground`,children:[(0,H.jsx)(`span`,{"aria-hidden":`true`}),(0,H.jsxs)(`div`,{className:`grid min-w-0 grid-cols-[minmax(0,1fr)_2rem] items-center`,children:[(0,H.jsx)(`span`,{children:`Branch`}),(0,H.jsx)(`span`,{className:`text-right`,children:`Remote`})]})]}),(0,H.jsx)(Re,{children:`No matching refs.`}),(0,H.jsxs)(Ie,{className:`max-h-64 min-w-0 overflow-x-hidden`,children:[(0,H.jsx)(Le,{className:`h-8 w-full min-w-0 grid-cols-[1rem_minmax(0,1fr)] py-0`,contentClassName:`w-full min-w-0 overflow-hidden`,value:vt,children:(0,H.jsx)(`span`,{className:`block min-w-0 truncate`,children:`Automatic`})}),Pt.map(e=>{let t=It(e),n=e.local!==null&&e.remote!==null,r=e.remote?.name===t;return(0,H.jsx)(Le,{className:`h-8 w-full min-w-0 grid-cols-[1rem_minmax(0,1fr)] py-0`,contentClassName:`w-full min-w-0 overflow-hidden`,value:t,children:(0,H.jsxs)(`div`,{className:`grid w-full min-w-0 grid-cols-[minmax(0,1fr)_2rem] items-center overflow-hidden`,children:[(0,H.jsx)(`span`,{className:`block min-w-0 truncate pe-2`,children:e.label}),n?(0,H.jsx)(`div`,{className:`flex justify-end`,onClick:e=>e.stopPropagation(),onPointerDown:e=>e.stopPropagation(),children:(0,H.jsx)(te,{"aria-label":`Use remote version of ${e.label}`,checked:r,className:`[--thumb-size:--spacing(3)]`,onCheckedChange:t=>{let n=t?e.remote?.name:e.local?.name;n&&nn(n)}})}):e.remote?(0,H.jsxs)(k,{children:[(0,H.jsx)(T,{render:(0,H.jsx)(`span`,{className:`flex justify-end text-muted-foreground`,children:(0,H.jsx)(w,{role:`img`,"aria-label":`Remote only`,className:`size-3`})})}),(0,H.jsx)(j,{side:`top`,children:`Remote only`})]}):null]})},e.id)})]})]})]})]})]}),(0,H.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1 [-webkit-app-region:no-drag]`,children:[$.length>0&&(0,H.jsx)(he,{additions:Yt.additions,deletions:Yt.deletions,className:`mr-1 text-[11px]`,layout:`inline`}),kt&&(0,H.jsxs)(k,{children:[(0,H.jsx)(T,{render:(0,H.jsx)(h,{type:`button`,size:`icon-sm`,variant:`ghost`,"aria-label":X.isPending?`Refreshing changes`:`Refresh changes`,onClick:Ot}),children:(0,H.jsx)(Ce,{className:m(`size-3.5`,X.isPending&&`animate-spin`)})}),(0,H.jsx)(j,{side:`top`,children:X.isPending?`Refreshing changes…`:`Refresh changes`})]}),$.length>0&&(0,H.jsxs)(k,{children:[(0,H.jsx)(T,{render:(0,H.jsx)(h,{type:`button`,size:`icon-sm`,variant:`ghost`,"aria-label":Jt?`Expand all files`:`Collapse all files`,onClick:$t}),children:Jt?(0,H.jsx)(_e,{className:`size-3.5`}):(0,H.jsx)(Se,{className:`size-3.5`})}),(0,H.jsx)(j,{side:`top`,children:Jt?`Expand all files`:`Collapse all files`})]}),(0,H.jsxs)(Ze,{className:`shrink-0 gap-1`,size:`sm`,value:[d],onValueChange:e=>{let t=e[0];(t===`stacked`||t===`split`)&&g(t)},children:[(0,H.jsx)(Qe,{"aria-label":`Stacked view`,value:`stacked`,variant:`ghost`,children:(0,H.jsx)(Ee,{className:`size-3.5`})}),(0,H.jsx)(Qe,{"aria-label":`Split view`,value:`split`,variant:`ghost`,children:(0,H.jsx)(Oe,{className:`size-3.5`})})]}),(0,H.jsxs)(k,{children:[(0,H.jsx)(T,{render:(0,H.jsx)(Qe,{"aria-label":v?`Disable line wrapping`:`Enable line wrapping`,variant:`ghost`,size:`sm`,pressed:v,onPressedChange:e=>{ie(!!e)}}),children:(0,H.jsx)(fe,{className:`size-3.5`})}),(0,H.jsx)(j,{side:`top`,children:v?`Disable line wrapping`:`Enable line wrapping`})]}),(0,H.jsxs)(k,{children:[(0,H.jsx)(T,{render:(0,H.jsx)(Qe,{"aria-label":y?`Show whitespace changes`:`Hide whitespace changes`,variant:`ghost`,size:`sm`,pressed:y,onPressedChange:e=>{b(!!e)}}),children:(0,H.jsx)(ot,{className:`size-3.5`})}),(0,H.jsx)(j,{side:`top`,children:y?`Show whitespace changes`:`Hide whitespace changes`})]})]})]}),children:I?it?W!==null&&U.length===0?(0,H.jsx)(`div`,{className:`flex flex-1 items-center justify-center px-5 text-center text-xs text-muted-foreground/70`,children:`No completed turns yet.`}):(0,H.jsx)(H.Fragment,{children:(0,H.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-background`,children:[Vt&&(0,H.jsx)(`p`,{className:`shrink-0 border-b border-line bg-canvas-quiet px-3 py-1.5 text-[11px] text-muted-foreground`,children:`This diff was truncated because it exceeded the preview limit. The changes shown are incomplete.`}),Ut&&!Q&&(0,H.jsx)(`div`,{className:`px-3`,children:(0,H.jsx)(`p`,{className:`mb-2 text-[11px] text-error/80`,children:Ut})}),Q?Q.kind===`files`?(0,H.jsx)(`div`,{className:`min-h-0 flex-1`,onClickCapture:e=>{let t=e.nativeEvent.composedPath?.()??[];for(let e of t)if(e instanceof HTMLElement&&(e instanceof HTMLButtonElement||e instanceof HTMLAnchorElement))return;let n=t.find(e=>e instanceof HTMLElement&&e.hasAttribute(`data-title`))?.textContent?.trim();if(n){Zt(n);return}let r=t.find(e=>e instanceof HTMLElement&&e.hasAttribute(`data-diffs-header`))?.querySelector(`[data-title]`)?.textContent?.trim();if(!r)return;let i=$.find(e=>e.filePath===r);i&&Qt(i.fileKey)},children:(0,H.jsx)(lt,{viewerRef:Ne,codeViewKey:bt,className:`h-full min-h-0 overflow-auto`,files:$,sectionId:ht,sectionTitle:St,composerDraftTarget:t,renderHeaderFilenameSuffix:e=>(0,H.jsx)(ct,{filePath:xe(e)}),renderHeaderPrefix:(e,t,n)=>{let r=xe(e);return(0,H.jsxs)(k,{children:[(0,H.jsx)(T,{render:(0,H.jsx)(h,{size:`icon-micro`,variant:`ghost`,className:m(`-ms-0.5 [--control-icon-color:currentColor] bg-transparent hover:bg-foreground/10`,ve(e)),"aria-label":n?`Expand ${r}`:`Collapse ${r}`,"aria-expanded":!n,onClick:e=>{e.stopPropagation(),Qt(t)}}),children:n?(0,H.jsx)(ne,{className:`size-4`}):(0,H.jsx)(p,{className:`size-4`})}),(0,H.jsx)(j,{side:`top`,children:n?`Expand changes`:`Collapse changes`})]})},options:{diffStyle:d===`split`?`split`:`unified`,lineDiffType:`none`,overflow:v?`wrap`:`scroll`,theme:de(a),themeType:a,stickyHeaders:!0,...jt?{loadDiffFiles:jt}:{}}},Y??ht)}):(0,H.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto p-2`,children:(0,H.jsxs)(`div`,{className:`space-y-2`,children:[(0,H.jsx)(`p`,{className:`text-[11px] text-muted-foreground/75`,children:Q.reason}),(0,H.jsx)(`pre`,{className:m(`max-h-[72vh] rounded-control bg-canvas-quiet p-3 font-mono text-[11px] leading-relaxed text-muted-foreground/90`,v?`overflow-auto whitespace-pre-wrap wrap-break-word`:`overflow-auto`),children:Q.text})]})}):Ht?(0,H.jsx)(qe,{label:q?`Loading checkpoint changes...`:G===`unstaged`?`Loading working tree changes...`:`Loading branch changes...`}):(0,H.jsx)(`div`,{className:`flex h-full items-center justify-center px-3 py-2 text-xs text-muted-foreground/70`,children:(0,H.jsx)(`p`,{children:Wt?`No net changes in this selection.`:`No patch available for this selection.`})})]})}):(0,H.jsx)(`div`,{className:`flex flex-1 items-center justify-center px-5 text-center text-xs text-muted-foreground/70`,children:`Turn diffs are unavailable because this project is not a git repository.`}):(0,H.jsx)(`div`,{className:`flex flex-1 items-center justify-center px-5 text-center text-xs text-muted-foreground/70`,children:`Select a thread to inspect turn diffs.`})})}export{Je as DiffWorkerPoolProvider,Y as default};
2
- //# sourceMappingURL=DiffPanel-DEXl5JNm.js.map
@@ -1,2 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{Ha as t,Ra as n,a as r,st as i}from"./useLocalStorage-B6HRw7FK.js";import{Bn as a,Bo as o,Co as s,Fn as c,In as l,Mn as u,N as d,Nn as f,On as p,Pn as m,Rn as h,Vn as g,do as _,ho as v,t as y,un as b,wo as x,zn as S}from"./utils-CxdSByf6.js";import{gn as C,hn as w,pn as T,qt as E,un as D,vn as O,wn as k}from"./session-BpEQOlGw.js";import{Jn as A,N as ee,c as j,f as M,kn as N,l as P,nr as F,o as I,u as te,w as ne,z as re}from"./textarea-C37zxlv0.js";import{a as L,c as ie,l as ae,o as R,r as z,s as oe,t as B,u as V}from"./empty-a7hA2Ech.js";import{$ as se,B as H,E as U,H as W,J as G,K as ce,Q as K,U as q,V as J,X as le,Y,Z as ue,a as de,c as X,d as fe,et as pe,g as me,h as he,i as ge,j as _e,k as ve,n as ye,o as be,p as xe,q as Se,s as Ce,t as we,v as Te,x as Ee,y as De}from"./browserRecording-DYgu2qFY.js";import{t as Oe}from"./ArrowRight-B0WzqdPj.js";import{t as ke}from"./ArrowSquareOut-8j4OKqbL.js";import{i as Ae,r as je}from"./RightPanelResizeHandle-CWbwOS4Y.js";import{D as Me,E as Ne,M as Pe,N as Fe,T as Ie,b as Le,d as Re,f as ze,h as Be,i as Ve,j as He,k as Ue,m as We,n as Ge,o as Ke,r as qe,t as Je,v as Ye,w as Xe}from"./browserHistoryStore-Bvr08etl.js";import{j as Ze}from"./entities-x8g8jint.js";import{s as Qe}from"./env-DgM3kOA4.js";var Z=e(r(),1),$e=new Map([[`bold`,Z.createElement(Z.Fragment,null,Z.createElement(`path`,{d:`M208,52H182.42L170,33.34A12,12,0,0,0,160,28H96a12,12,0,0,0-10,5.34L73.57,52H48A28,28,0,0,0,20,80V192a28,28,0,0,0,28,28H208a28,28,0,0,0,28-28V80A28,28,0,0,0,208,52Zm4,140a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V80a4,4,0,0,1,4-4H80a12,12,0,0,0,10-5.34L102.42,52h51.15L166,70.66A12,12,0,0,0,176,76h32a4,4,0,0,1,4,4ZM128,84a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,84Zm0,72a24,24,0,1,1,24-24A24,24,0,0,1,128,156Z`}))],[`duotone`,Z.createElement(Z.Fragment,null,Z.createElement(`path`,{d:`M208,64H176L160,40H96L80,64H48A16,16,0,0,0,32,80V192a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V80A16,16,0,0,0,208,64ZM128,168a36,36,0,1,1,36-36A36,36,0,0,1,128,168Z`,opacity:`0.2`}),Z.createElement(`path`,{d:`M208,56H180.28L166.65,35.56A8,8,0,0,0,160,32H96a8,8,0,0,0-6.65,3.56L75.71,56H48A24,24,0,0,0,24,80V192a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V80A24,24,0,0,0,208,56Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V80a8,8,0,0,1,8-8H80a8,8,0,0,0,6.66-3.56L100.28,48h55.43l13.63,20.44A8,8,0,0,0,176,72h32a8,8,0,0,1,8,8ZM128,88a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,88Zm0,72a28,28,0,1,1,28-28A28,28,0,0,1,128,160Z`}))],[`fill`,Z.createElement(Z.Fragment,null,Z.createElement(`path`,{d:`M208,56H180.28L166.65,35.56A8,8,0,0,0,160,32H96a8,8,0,0,0-6.65,3.56L75.71,56H48A24,24,0,0,0,24,80V192a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V80A24,24,0,0,0,208,56Zm-44,76a36,36,0,1,1-36-36A36,36,0,0,1,164,132Z`}))],[`light`,Z.createElement(Z.Fragment,null,Z.createElement(`path`,{d:`M208,58H179.21L165,36.67A6,6,0,0,0,160,34H96a6,6,0,0,0-5,2.67L76.78,58H48A22,22,0,0,0,26,80V192a22,22,0,0,0,22,22H208a22,22,0,0,0,22-22V80A22,22,0,0,0,208,58Zm10,134a10,10,0,0,1-10,10H48a10,10,0,0,1-10-10V80A10,10,0,0,1,48,70H80a6,6,0,0,0,5-2.67L99.21,46h57.57L171,67.33A6,6,0,0,0,176,70h32a10,10,0,0,1,10,10ZM128,90a42,42,0,1,0,42,42A42,42,0,0,0,128,90Zm0,72a30,30,0,1,1,30-30A30,30,0,0,1,128,162Z`}))],[`regular`,Z.createElement(Z.Fragment,null,Z.createElement(`path`,{d:`M208,56H180.28L166.65,35.56A8,8,0,0,0,160,32H96a8,8,0,0,0-6.65,3.56L75.71,56H48A24,24,0,0,0,24,80V192a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V80A24,24,0,0,0,208,56Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V80a8,8,0,0,1,8-8H80a8,8,0,0,0,6.66-3.56L100.28,48h55.43l13.63,20.44A8,8,0,0,0,176,72h32a8,8,0,0,1,8,8ZM128,88a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,88Zm0,72a28,28,0,1,1,28-28A28,28,0,0,1,128,160Z`}))],[`thin`,Z.createElement(Z.Fragment,null,Z.createElement(`path`,{d:`M208,60H178.13L163.32,37.78A4,4,0,0,0,160,36H96a4,4,0,0,0-3.32,1.78L77.85,60H48A20,20,0,0,0,28,80V192a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V80A20,20,0,0,0,208,60Zm12,132a12,12,0,0,1-12,12H48a12,12,0,0,1-12-12V80A12,12,0,0,1,48,68H80a4,4,0,0,0,3.33-1.78L98.13,44h59.72l14.82,22.22A4,4,0,0,0,176,68h32a12,12,0,0,1,12,12ZM128,92a40,40,0,1,0,40,40A40,40,0,0,0,128,92Zm0,72a32,32,0,1,1,32-32A32,32,0,0,1,128,164Z`}))]]),et=new Map([[`bold`,Z.createElement(Z.Fragment,null,Z.createElement(`path`,{d:`M112,60a16,16,0,1,1,16,16A16,16,0,0,1,112,60Zm16,52a16,16,0,1,0,16,16A16,16,0,0,0,128,112Zm0,68a16,16,0,1,0,16,16A16,16,0,0,0,128,180Z`}))],[`duotone`,Z.createElement(Z.Fragment,null,Z.createElement(`path`,{d:`M176,32V224a16,16,0,0,1-16,16H96a16,16,0,0,1-16-16V32A16,16,0,0,1,96,16h64A16,16,0,0,1,176,32Z`,opacity:`0.2`}),Z.createElement(`path`,{d:`M140,128a12,12,0,1,1-12-12A12,12,0,0,1,140,128ZM128,72a12,12,0,1,0-12-12A12,12,0,0,0,128,72Zm0,112a12,12,0,1,0,12,12A12,12,0,0,0,128,184Z`}))],[`fill`,Z.createElement(Z.Fragment,null,Z.createElement(`path`,{d:`M160,16H96A16,16,0,0,0,80,32V224a16,16,0,0,0,16,16h64a16,16,0,0,0,16-16V32A16,16,0,0,0,160,16ZM128,208a12,12,0,1,1,12-12A12,12,0,0,1,128,208Zm0-68a12,12,0,1,1,12-12A12,12,0,0,1,128,140Zm0-68a12,12,0,1,1,12-12A12,12,0,0,1,128,72Z`}))],[`light`,Z.createElement(Z.Fragment,null,Z.createElement(`path`,{d:`M118,60a10,10,0,1,1,10,10A10,10,0,0,1,118,60Zm10,58a10,10,0,1,0,10,10A10,10,0,0,0,128,118Zm0,68a10,10,0,1,0,10,10A10,10,0,0,0,128,186Z`}))],[`regular`,Z.createElement(Z.Fragment,null,Z.createElement(`path`,{d:`M140,128a12,12,0,1,1-12-12A12,12,0,0,1,140,128ZM128,72a12,12,0,1,0-12-12A12,12,0,0,0,128,72Zm0,112a12,12,0,1,0,12,12A12,12,0,0,0,128,184Z`}))],[`thin`,Z.createElement(Z.Fragment,null,Z.createElement(`path`,{d:`M120,60a8,8,0,1,1,8,8A8,8,0,0,1,120,60Zm8,60a8,8,0,1,0,8,8A8,8,0,0,0,128,120Zm0,68a8,8,0,1,0,8,8A8,8,0,0,0,128,188Z`}))]]),tt=Object.defineProperty,nt=Object.defineProperties,rt=Object.getOwnPropertyDescriptors,it=Object.getOwnPropertySymbols,at=Object.prototype.hasOwnProperty,ot=Object.prototype.propertyIsEnumerable,st=(e,t,n)=>t in e?tt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ct=(e,t)=>{for(var n in t||={})at.call(t,n)&&st(e,n,t[n]);if(it)for(var n of it(t))ot.call(t,n)&&st(e,n,t[n]);return e},lt=(e,t)=>nt(e,rt(t)),ut=(0,Z.forwardRef)((e,t)=>Z.createElement(s,lt(ct({ref:t},e),{weights:$e})));ut.displayName=`Camera`;var dt=Object.defineProperty,ft=Object.defineProperties,pt=Object.getOwnPropertyDescriptors,mt=Object.getOwnPropertySymbols,ht=Object.prototype.hasOwnProperty,gt=Object.prototype.propertyIsEnumerable,_t=(e,t,n)=>t in e?dt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,vt=(e,t)=>{for(var n in t||={})ht.call(t,n)&&_t(e,n,t[n]);if(mt)for(var n of mt(t))gt.call(t,n)&&_t(e,n,t[n]);return e},yt=(e,t)=>ft(e,pt(t)),bt=(0,Z.forwardRef)((e,t)=>Z.createElement(s,yt(vt({ref:t},e),{weights:et})));bt.displayName=`DotsThreeVertical`;var Q=x(),$=o(),xt=()=>{};function St(e){let t=(0,Q.c)(92),{url:n,loading:r,canGoBack:i,canGoForward:a,refreshDisabled:o,inputDisabled:s,focusUrlNonce:c,onBack:l,onForward:u,onRefresh:d,onSubmit:f,onOpenInBrowser:p,onCapture:m,captureDisabled:h,recording:g,onPictureInPicture:_,pictureInPicture:v,pictureInPictureDisabled:x,onPickElement:S,pickActive:C,pickDisabled:w,pickDisabledReason:T,trailingActions:E}=e,D=(0,Z.useRef)(null),[O,k]=(0,Z.useState)(n),[A,ee]=(0,Z.useState)(!1),j,N;t[0]===c?(j=t[1],N=t[2]):(j=()=>{if(c==null)return;let e=D.current;e&&e.focus()},N=[c],t[0]=c,t[1]=j,t[2]=N),(0,Z.useEffect)(j,N);let F;t[3]!==O||t[4]!==f?(F=e=>{e?.preventDefault();let t=O.trim();t.length!==0&&(f(t),D.current?.blur())},t[3]=O,t[4]=f,t[5]=F):F=t[5];let I=F,ne=i?l:xt,re=!i,L;t[6]!==ne||t[7]!==re?(L=(0,$.jsx)(b,{variant:`ghost`,size:`icon-xs`,onClick:ne,disabled:re,"aria-label":`Back`,type:`button`}),t[6]=ne,t[7]=re,t[8]=L):L=t[8];let R;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(se,{}),t[9]=R):R=t[9];let z;t[10]===L?z=t[11]:(z=(0,$.jsx)(M,{render:L,children:R}),t[10]=L,t[11]=z);let B;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(B=(0,$.jsx)(te,{children:`Back`}),t[12]=B):B=t[12];let H;t[13]===z?H=t[14]:(H=(0,$.jsxs)(P,{children:[z,B]}),t[13]=z,t[14]=H);let U=a?u:xt,W=!a,G;t[15]!==U||t[16]!==W?(G=(0,$.jsx)(b,{variant:`ghost`,size:`icon-xs`,onClick:U,disabled:W,"aria-label":`Forward`,type:`button`}),t[15]=U,t[16]=W,t[17]=G):G=t[17];let ce;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,$.jsx)(Oe,{}),t[18]=ce):ce=t[18];let K;t[19]===G?K=t[20]:(K=(0,$.jsx)(M,{render:G,children:ce}),t[19]=G,t[20]=K);let q;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(q=(0,$.jsx)(te,{children:`Forward`}),t[21]=q):q=t[21];let J;t[22]===K?J=t[23]:(J=(0,$.jsxs)(P,{children:[K,q]}),t[22]=K,t[23]=J);let le=o?xt:d,de=r?`Stop`:`Refresh`,X;t[24]!==o||t[25]!==le||t[26]!==de?(X=(0,$.jsx)(b,{variant:`ghost`,size:`icon-xs`,onClick:le,disabled:o,"aria-label":de,type:`button`}),t[24]=o,t[25]=le,t[26]=de,t[27]=X):X=t[27];let fe=r&&`animate-spin`,pe;t[28]===fe?pe=t[29]:(pe=y(fe),t[28]=fe,t[29]=pe);let me;t[30]===pe?me=t[31]:(me=(0,$.jsx)(V,{className:pe}),t[30]=pe,t[31]=me);let he;t[32]!==X||t[33]!==me?(he=(0,$.jsx)(M,{render:X,children:me}),t[32]=X,t[33]=me,t[34]=he):he=t[34];let ge=r?`Loading…`:`Refresh`,_e;t[35]===ge?_e=t[36]:(_e=(0,$.jsx)(te,{children:ge}),t[35]=ge,t[36]=_e);let ve;t[37]!==he||t[38]!==_e?(ve=(0,$.jsxs)(P,{children:[he,_e]}),t[37]=he,t[38]=_e,t[39]=ve):ve=t[39];let ye;t[40]!==H||t[41]!==J||t[42]!==ve?(ye=(0,$.jsxs)(`div`,{className:`flex items-center gap-0.5`,role:`group`,"aria-label":`Navigation`,children:[H,J,ve]}),t[40]=H,t[41]=J,t[42]=ve,t[43]=ye):ye=t[43];let be=A?O:n,xe=p&&!A&&`group-hover/address:pe-7 transition-[padding]`,Se;t[44]===xe?Se=t[45]:(Se=y(xe),t[44]=xe,t[45]=Se);let Ce;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(Ce=e=>k(e.target.value),t[46]=Ce):Ce=t[46];let we;t[47]===n?we=t[48]:(we=()=>{k(n),ee(!0),queueMicrotask(()=>D.current?.select())},t[47]=n,t[48]=we);let Te;t[49]===Symbol.for(`react.memo_cache_sentinel`)?(Te=()=>{ee(!1)},t[49]=Te):Te=t[49];let Ee;t[50]!==I||t[51]!==n?(Ee=e=>{e.key===`Enter`&&I(e),e.key===`Escape`&&(e.preventDefault(),k(n),D.current?.blur())},t[50]=I,t[51]=n,t[52]=Ee):Ee=t[52];let De;t[53]!==s||t[54]!==be||t[55]!==Se||t[56]!==we||t[57]!==Ee?(De=(0,$.jsx)(P,{children:(0,$.jsx)(M,{render:(0,$.jsx)(ae,{ref:D,value:be,className:Se,onChange:Ce,onFocus:we,onBlur:Te,onKeyDown:Ee,placeholder:`Search or enter URL`,spellCheck:!1,disabled:s,"data-preview-url-input":!0,size:`sm`})})}),t[53]=s,t[54]=be,t[55]=Se,t[56]=we,t[57]=Ee,t[58]=De):De=t[58];let Ae;t[59]!==A||t[60]!==p?(Ae=p&&!A?(0,$.jsx)(ie,{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)(M,{render:(0,$.jsx)(b,{variant:`ghost`,size:`icon-xs`,onClick:p,"aria-label":`Open in system browser`,type:`button`}),children:(0,$.jsx)(ke,{})}),(0,$.jsx)(te,{children:`Open in system browser`})]})}):null,t[59]=A,t[60]=p,t[61]=Ae):Ae=t[61];let je;t[62]!==De||t[63]!==Ae?(je=(0,$.jsxs)(oe,{variant:`ghost`,className:`group/address h-7 flex-1`,children:[De,Ae]}),t[62]=De,t[63]=Ae,t[64]=je):je=t[64];let Me;t[65]!==S||t[66]!==C||t[67]!==w||t[68]!==T?(Me=S?(0,$.jsxs)(P,{children:[(0,$.jsx)(M,{render:(0,$.jsx)(b,{variant:C?`secondary`:`ghost`,size:`icon-xs`,onClick:S,disabled:w,"aria-label":C?`Cancel annotation`:`Annotate preview`,"aria-pressed":C?`true`:`false`,type:`button`}),children:(0,$.jsx)(ue,{className:y(C&&`text-primary`)})}),(0,$.jsx)(te,{children:w&&T?T:C?`Cancel annotation (Esc)`:`Annotate elements, regions, and drawings`})]}):null,t[65]=S,t[66]=C,t[67]=w,t[68]=T,t[69]=Me):Me=t[69];let Ne;t[70]!==h||t[71]!==m||t[72]!==g?(Ne=m?(0,$.jsxs)(P,{children:[(0,$.jsxs)(M,{render:(0,$.jsx)(b,{variant:g?`secondary`:`ghost`,size:`icon-xs`,onClick:e=>m(e.shiftKey),"aria-label":g?`Stop recording`:`Capture screenshot`,type:`button`,className:`relative`,disabled:h}),children:[(0,$.jsx)(ut,{className:y(g&&`text-destructive`)}),g?(0,$.jsx)(`span`,{className:`absolute right-0.5 top-0.5 size-1.5 animate-status-pulse rounded-full bg-destructive`}):null]}),(0,$.jsx)(te,{children:g?`Stop recording`:`Screenshot · Shift-click to record`})]}):null,t[70]=h,t[71]=m,t[72]=g,t[73]=Ne):Ne=t[73];let Pe;t[74]!==_||t[75]!==v||t[76]!==x?(Pe=_?(0,$.jsxs)(P,{children:[(0,$.jsx)(M,{render:(0,$.jsx)(b,{variant:v?`secondary`:`ghost`,size:`icon-xs`,onClick:_,"aria-label":v?`Close floating preview`:`Float preview over chat`,"aria-pressed":v?`true`:`false`,type:`button`,disabled:x}),children:(0,$.jsx)(Y,{className:y(v&&`text-primary`)})}),(0,$.jsx)(te,{children:v?`Close floating preview`:`Float preview over chat`})]}):null,t[74]=_,t[75]=v,t[76]=x,t[77]=Pe):Pe=t[77];let Fe;t[78]!==I||t[79]!==ye||t[80]!==je||t[81]!==Me||t[82]!==Ne||t[83]!==Pe||t[84]!==E?(Fe=(0,$.jsxs)(`form`,{onSubmit:I,className:`flex h-10 min-h-10 shrink-0 items-center gap-1 border-b border-border/60 bg-background px-2 in-data-[preview-panel-mode=inline]:mb-3 in-data-[preview-panel-mode=inline]:h-7 in-data-[preview-panel-mode=inline]:min-h-7 in-data-[preview-panel-mode=inline]:border-b-transparent`,"data-surface-subheader":!0,children:[ye,je,Me,Ne,Pe,E]}),t[78]=I,t[79]=ye,t[80]=je,t[81]=Me,t[82]=Ne,t[83]=Pe,t[84]=E,t[85]=Fe):Fe=t[85];let Ie;t[86]===Symbol.for(`react.memo_cache_sentinel`)?(Ie={boxShadow:`0 0 6px 1px var(--color-ring)`},t[86]=Ie):Ie=t[86];let Le;t[87]===r?Le=t[88]:(Le=(0,$.jsx)(`div`,{"aria-hidden":!0,"data-loading":r,className:`preview-loading-progress pointer-events-none absolute bottom-0 left-0 z-10 h-0.5 w-full origin-left rounded-r-full bg-primary`,style:Ie}),t[87]=r,t[88]=Le);let Re;return t[89]!==Fe||t[90]!==Le?(Re=(0,$.jsxs)(`div`,{className:`relative`,children:[Fe,Le]}),t[89]=Fe,t[90]=Le,t[91]=Re):Re=t[91],Re}function Ct(e){let t=(0,Q.c)(17),{threadRef:n,server:r,onOpen:i}=e,a;t[0]===r?a=t[1]:(a=wt(r),t[0]=r,t[1]=a);let o=a,s;t[2]!==r.requestedUrl||t[3]!==n?(s=(0,$.jsx)(Ee,{threadRef:n,url:r.requestedUrl}),t[2]=r.requestedUrl,t[3]=n,t[4]=s):s=t[4];let c;t[5]===o?c=t[6]:(c=(0,$.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,children:o}),t[5]=o,t[6]=c);let l;t[7]!==r.host||t[8]!==r.port?(l=(0,$.jsxs)(`span`,{className:`truncate text-xs text-muted-foreground`,children:[r.host,`:`,r.port]}),t[7]=r.host,t[8]=r.port,t[9]=l):l=t[9];let u;t[10]!==c||t[11]!==l?(u=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[c,l]}),t[10]=c,t[11]=l,t[12]=u):u=t[12];let d;return t[13]!==i||t[14]!==s||t[15]!==u?(d=(0,$.jsxs)(`button`,{type:`button`,onClick:i,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:[s,u]}),t[13]=i,t[14]=s,t[15]=u,t[16]=d):d=t[16],d}function wt(e){return e.processName?e.processName:`Listening`}function Tt(e){let t=(0,Q.c)(26),{threadRef:n,entry:r,onOpen:i,onRemove:a}=e,o;t[0]===r.url?o=t[1]:(o=new URL(r.url),t[0]=r.url,t[1]=o);let s=o,c=s.pathname===`/`?``:s.pathname,l=`${s.host}${c}${s.search}${s.hash}`,u;t[2]===r.lastVisitedAt?u=t[3]:(u=Je(r.lastVisitedAt)?Qe(new Date(r.lastVisitedAt).toISOString()):``,t[2]=r.lastVisitedAt,t[3]=u);let d=u;De();let f;t[4]!==r.url||t[5]!==n?(f=(0,$.jsx)(Ee,{threadRef:n,url:r.url}),t[4]=r.url,t[5]=n,t[6]=f):f=t[6];let p=r.title??l,m;t[7]===p?m=t[8]:(m=(0,$.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,children:p}),t[7]=p,t[8]=m);let h=r.title?`${l} · `:``,g;t[9]!==h||t[10]!==d?(g=(0,$.jsxs)(`span`,{className:`truncate text-xs text-muted-foreground`,children:[h,d]}),t[9]=h,t[10]=d,t[11]=g):g=t[11];let _;t[12]!==m||t[13]!==g?(_=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[m,g]}),t[12]=m,t[13]=g,t[14]=_):_=t[14];let v;t[15]!==i||t[16]!==f||t[17]!==_?(v=(0,$.jsxs)(`button`,{type:`button`,onClick:i,className:`flex w-full items-center gap-3 px-3 py-3 pr-10 text-left hover:bg-accent/40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,children:[f,_]}),t[15]=i,t[16]=f,t[17]=_,t[18]=v):v=t[18];let y=`Remove ${l} from history`,b;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,$.jsx)(F,{className:`size-3.5`}),t[19]=b):b=t[19];let x;t[20]!==a||t[21]!==y?(x=(0,$.jsx)(`button`,{type:`button`,"aria-label":y,onClick:a,className:`absolute right-3 rounded p-1 text-muted-foreground opacity-0 hover:bg-accent hover:text-foreground focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring group-hover:opacity-100`,children:b}),t[20]=a,t[21]=y,t[22]=x):x=t[22];let S;return t[23]!==x||t[24]!==v?(S=(0,$.jsxs)(`div`,{className:`group relative flex w-full items-center`,children:[v,x]}),t[23]=x,t[24]=v,t[25]=S):S=t[25],S}var Et=Object.freeze([]);function Dt(e){let t=[],n=new Set;for(let r of e??[])if(!(r.length===0||r.length>2048||r.trim().length!==r.length))try{let e=new URL(r);if(e.protocol!==`http:`&&e.protocol!==`https:`||!ze(e.hostname)||e.href.length>2048)continue;let i=new URL(e.href);if(i.hash=``,n.has(i.href))continue;if(n.add(i.href),t.push(e.href),t.length>=32)break}catch{}return t}function Ot(e,t){let n=(0,Q.c)(7),r,i;if(n[0]!==t||n[1]!==e){let a=Dt(t);r=N,i=e===null?null:Ye.discoveredServers({environmentId:e,input:a.length?{configuredUrls:a}:{}}),n[0]=t,n[1]=e,n[2]=r,n[3]=i}else r=n[2],i=n[3];let a=r(i);a.data?.configuredUrlProbing,a.data?.servers;let o=a.data?.servers??Et,s=a.data?.configuredUrlProbing===!0,c;return n[4]!==o||n[5]!==s?(c={servers:o,configuredUrlProbing:s},n[4]=o,n[5]=s,n[6]=c):c=n[6],c}function kt(e){let t=(0,Q.c)(7),n=Ot(e.environmentId,e.configuredUrls),r;if(t[0]!==e.configuredUrls||t[1]!==e.environmentId||t[2]!==n.configuredUrlProbing||t[3]!==n.servers){let i;t[5]===e.environmentId?i=t[6]:(i=t=>({...t,url:Re(e.environmentId,t.url),requestedUrl:t.url}),t[5]=e.environmentId,t[6]=i),r=At({scanner:n.servers.map(i),configuredUrls:e.configuredUrls??[],configuredUrlProbing:n.configuredUrlProbing}),t[0]=e.configuredUrls,t[1]=e.environmentId,t[2]=n.configuredUrlProbing,t[3]=n.servers,t[4]=r}else r=t[4];return r}function At(e){let t=new Map;for(let n of e.configuredUrls){let e=Mt(n);if(!e)continue;let r=jt(e.host,e.port);t.has(r)||t.set(r,e)}let n=[];for(let r of e.scanner){let i=jt(r.host,r.port),a=t.get(i);n.push({...r,requestedUrl:a&&e.configuredUrlProbing===!1?a.url:r.requestedUrl,source:a?`configured`:`scanner`})}return n.toSorted((e,t)=>{let n={configured:0,scanner:1};return n[e.source]===n[t.source]?e.port-t.port:n[e.source]-n[t.source]})}function jt(e,t){let n=e.toLowerCase();return`${ze(n)?`loopback`:n}:${t}`}function Mt(e){try{let t=new URL(e);if(t.protocol!==`http:`&&t.protocol!==`https:`||!ze(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 Nt(e){let t=(0,Q.c)(24),{threadRef:n,environmentId:r,configuredUrls:i,recentEntries:a,onRemoveRecent:o,onOpenUrl:s}=e,c;t[0]!==i||t[1]!==r?(c={environmentId:r,configuredUrls:i},t[0]=i,t[1]=r,t[2]=c):c=t[2];let l=kt(c),u,d,f,p;if(t[3]!==s||t[4]!==o||t[5]!==a||t[6]!==l.length||t[7]!==n){p=Symbol.for(`react.early_return_sentinel`);bb0:{let e=a.filter(Pt).slice(0,8);if(l.length===0&&e.length===0){let e;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsxs)(B,{children:[(0,$.jsx)(L,{variant:`icon`,children:(0,$.jsx)(Fe,{className:`size-4.5 text-muted-foreground`})}),(0,$.jsx)(R,{children:`No preview yet`}),(0,$.jsx)(z,{children:`Type a URL above, or run a dev script. Browser-ready localhost servers will show up here automatically.`})]}),t[12]=e):e=t[12],p=e;break bb0}f=`flex h-full min-h-0 overflow-y-auto px-5 py-8`,u=`mx-auto flex w-full max-w-xl flex-col gap-6`,d=e.length>0?(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(Ae,{className:`size-4 shrink-0`}),(0,$.jsx)(`h2`,{className:`font-medium`,children:`Recently used`})]}),(0,$.jsx)(`div`,{className:`flex flex-col divide-y divide-line overflow-hidden rounded-tile bg-canvas-quiet`,children:e.map(e=>(0,$.jsx)(Tt,{threadRef:n,entry:e,onOpen:()=>s(e.url),onRemove:()=>o(e.url)},e.url))})]}):null}t[3]=s,t[4]=o,t[5]=a,t[6]=l.length,t[7]=n,t[8]=u,t[9]=d,t[10]=f,t[11]=p}else u=t[8],d=t[9],f=t[10],p=t[11];if(p!==Symbol.for(`react.early_return_sentinel`))return p;let m;t[13]!==s||t[14]!==l||t[15]!==n?(m=l.length>0?(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(K,{className:`size-4 shrink-0`}),(0,$.jsx)(`h2`,{className:`font-medium`,children:`Local servers`})]}),(0,$.jsx)(`div`,{className:`flex flex-col divide-y divide-line overflow-hidden rounded-tile bg-canvas-quiet`,children:l.map(e=>(0,$.jsx)(Ct,{threadRef:n,server:e,onOpen:()=>s(e.requestedUrl)},`${e.host}:${e.port}`))}),(0,$.jsx)(`p`,{className:`px-1 text-xs text-muted-foreground`,children:`Select a live local server to open it in this browser tab.`})]}):null,t[13]=s,t[14]=l,t[15]=n,t[16]=m):m=t[16];let h;t[17]!==u||t[18]!==d||t[19]!==m?(h=(0,$.jsxs)(`div`,{className:u,children:[d,m]}),t[17]=u,t[18]=d,t[19]=m,t[20]=h):h=t[20];let g;return t[21]!==f||t[22]!==h?(g=(0,$.jsx)(`div`,{className:f,children:h}),t[21]=f,t[22]=h,t[23]=g):g=t[23],g}function Pt(e){return URL.canParse(e.url)}var Ft=[{value:`system`,label:`System`},{value:`light`,label:`Light`},{value:`dark`,label:`Dark`}];function It(e){let t=(0,Q.c)(73),{tabId:n,hasWebContents:r,zoomFactor:i,colorScheme:o,deviceToolbarVisible:s,onToggleDeviceToolbar:c,nativePictureInPicture:d,onNativePictureInPicture:_}=e,v=ne();if(!J)return null;let y=!n||!r,x;t[0]===n?x=t[1]:(x=e=>()=>{n&&e(n).catch(Wt)},t[0]=n,t[1]=x);let C=x,w;t[2]===i?w=t[3]:(w=Math.round(i*100),t[2]=i,t[3]=w);let T=`${w}%`,E;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsxs)(P,{children:[(0,$.jsx)(M,{render:(0,$.jsx)(g,{render:(0,$.jsx)(b,{variant:`ghost`,size:`icon-xs`,type:`button`,"aria-label":`Preview menu`})}),children:(0,$.jsx)(bt,{})}),(0,$.jsx)(te,{children:`More`})]}),t[4]=E):E=t[4];let D;t[5]===C?D=t[6]:(D=C(J.hardReload),t[5]=C,t[6]=D);let O;t[7]!==D||t[8]!==y?(O=(0,$.jsx)(u,{onClick:D,disabled:y,children:`Hard reload`}),t[7]=D,t[8]=y,t[9]=O):O=t[9];let k;t[10]!==C||t[11]!==v||t[12]!==y?(k=v?(0,$.jsx)(u,{onClick:C(J.openDevTools),disabled:y,children:`Open DevTools`}):null,t[10]=C,t[11]=v,t[12]=y,t[13]=k):k=t[13];let A=d?`Close separate preview window`:`Open separate preview window`,ee;t[14]!==_||t[15]!==A||t[16]!==y?(ee=(0,$.jsx)(u,{onClick:_,disabled:y,children:A}),t[14]=_,t[15]=A,t[16]=y,t[17]=ee):ee=t[17];let j=s?`Hide device toolbar`:`Show device toolbar`,N;t[18]!==c||t[19]!==j||t[20]!==y?(N=(0,$.jsx)(u,{onClick:c,disabled:y,children:j}),t[18]=c,t[19]=j,t[20]=y,t[21]=N):N=t[21];let F;t[22]===y?F=t[23]:(F=(0,$.jsx)(a,{disabled:y,children:`Appearance`}),t[22]=y,t[23]=F);let I;t[24]===n?I=t[25]:(I=e=>{n&&J.setColorScheme(n,e).catch(Ut)},t[24]=n,t[25]=I);let re;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(re=Ft.map(Ht),t[26]=re):re=t[26];let L;t[27]!==o||t[28]!==I?(L=(0,$.jsx)(S,{className:`min-w-32`,children:(0,$.jsx)(m,{value:o,onValueChange:I,children:re})}),t[27]=o,t[28]=I,t[29]=L):L=t[29];let ie;t[30]!==F||t[31]!==L?(ie=(0,$.jsxs)(h,{children:[F,L]}),t[30]=F,t[31]=L,t[32]=ie):ie=t[32];let ae;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(ae=(0,$.jsx)(l,{}),t[33]=ae):ae=t[33];let R;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(`span`,{children:`Zoom`}),t[34]=R):R=t[34];let z;t[35]===C?z=t[36]:(z=C(J.zoomOut),t[35]=C,t[36]=z);let oe;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(oe=(0,$.jsx)(le,{}),t[37]=oe):oe=t[37];let B;t[38]!==z||t[39]!==y?(B=(0,$.jsx)(b,{variant:`outline`,size:`icon-xs`,type:`button`,onClick:z,"aria-label":`Zoom out`,disabled:y,children:oe}),t[38]=z,t[39]=y,t[40]=B):B=t[40];let V;t[41]===T?V=t[42]:(V=(0,$.jsx)(`span`,{className:`min-w-12 text-center text-xs tabular-nums text-muted-foreground`,children:T}),t[41]=T,t[42]=V);let se;t[43]===C?se=t[44]:(se=C(J.zoomIn),t[43]=C,t[44]=se);let H;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,$.jsx)(G,{}),t[45]=H):H=t[45];let U;t[46]!==se||t[47]!==y?(U=(0,$.jsx)(b,{variant:`outline`,size:`icon-xs`,type:`button`,onClick:se,"aria-label":`Zoom in`,disabled:y,children:H}),t[46]=se,t[47]=y,t[48]=U):U=t[48];let W;t[49]===C?W=t[50]:(W=C(J.resetZoom),t[49]=C,t[50]=W);let ce;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,$.jsx)(pe,{}),t[51]=ce):ce=t[51];let K;t[52]!==W||t[53]!==y?(K=(0,$.jsx)(b,{variant:`ghost`,size:`icon-xs`,type:`button`,onClick:W,"aria-label":`Reset zoom`,className:`[:hover,[data-pressed]]:bg-foreground/10`,disabled:y,children:ce}),t[52]=W,t[53]=y,t[54]=K):K=t[54];let q;t[55]!==B||t[56]!==V||t[57]!==U||t[58]!==K?(q=(0,$.jsxs)(`span`,{className:`flex items-center gap-1`,children:[B,V,U,K]}),t[55]=B,t[56]=V,t[57]=U,t[58]=K,t[59]=q):q=t[59];let Y;t[60]!==q||t[61]!==y?(Y=(0,$.jsxs)(u,{closeOnClick:!1,onClick:Vt,className:`justify-between`,disabled:y,children:[R,q]}),t[60]=q,t[61]=y,t[62]=Y):Y=t[62];let ue,de,X;t[63]===Symbol.for(`react.memo_cache_sentinel`)?(ue=(0,$.jsx)(l,{}),de=(0,$.jsx)(u,{onClick:zt,children:`Clear cookies`}),X=(0,$.jsx)(u,{onClick:Lt,children:`Clear cache`}),t[63]=ue,t[64]=de,t[65]=X):(ue=t[63],de=t[64],X=t[65]);let fe;return t[66]!==N||t[67]!==ie||t[68]!==Y||t[69]!==O||t[70]!==k||t[71]!==ee?(fe=(0,$.jsxs)(p,{children:[E,(0,$.jsxs)(f,{align:`end`,sideOffset:6,className:`min-w-56`,children:[O,k,ee,N,ie,ae,Y,ue,de,X]})]}),t[66]=N,t[67]=ie,t[68]=Y,t[69]=O,t[70]=k,t[71]=ee,t[72]=fe):fe=t[72],fe}function Lt(){J.clearCache().catch(Rt)}function Rt(){}function zt(){J.clearCookies().catch(Bt)}function Bt(){}function Vt(e){return e.preventDefault()}function Ht(e){return(0,$.jsx)(c,{value:e.value,children:e.label},e.value)}function Ut(){}function Wt(){}function Gt(e){return Pe[e]||(e.length>0?e:`Network error`)}function Kt(e){let t=(0,Q.c)(32),{url:n,code:r,description:i,onReload:a}=e,[o,s]=(0,Z.useState)(!1),c;t[0]===n?c=t[1]:(c=Yt(n)??n,t[0]=n,t[1]=c);let l=c,u;t[2]===i?u=t[3]:(u=Gt(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)(Jt,{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 x;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(x=()=>s(qt),t[18]=x):x=t[18];let S=o?`Hide details`:`Details`,C;t[19]===S?C=t[20]:(C=(0,$.jsx)(b,{type:`button`,variant:`outline`,size:`sm`,onClick:x,children:S}),t[19]=S,t[20]=C);let w;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,$.jsx)(`div`,{className:`flex-1`}),t[21]=w):w=t[21];let T;t[22]===a?T=t[23]:(T=(0,$.jsx)(b,{type:`button`,size:`sm`,onClick:a,children:`Reload`}),t[22]=a,t[23]=T);let E;t[24]!==C||t[25]!==T?(E=(0,$.jsxs)(`div`,{className:`mt-auto flex items-center gap-2 pt-8`,children:[C,w,T]}),t[24]=C,t[25]=T,t[26]=E):E=t[26];let D;return t[27]!==E||t[28]!==_||t[29]!==v||t[30]!==y?(D=(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,E]})}),t[27]=E,t[28]=_,t[29]=v,t[30]=y,t[31]=D):D=t[31],D}function qt(e){return!e}function Jt(e){let t=(0,Q.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 Yt(e){try{return new URL(e).host}catch{return null}}var Xt=class extends t()(`PreviewSessionThreadKeyParseError`,{threadKey:n}){get message(){return`Invalid scoped preview thread key: ${this.threadKey}`}},Zt=T(e=>{let t=_(e);if(t===null)throw new Xt({threadKey:e});let n=Ye.list({environmentId:t.environmentId,input:{threadId:t.threadId}}),r=Ye.events({environmentId:t.environmentId,input:{}});return w(e=>{let i=!1,a=0,o=e=>{k(e)&&Ne(t,e.value)},s=r=>{if(!k(r)||r.value.threadId!==t.threadId)return;let i=Ie(t).serverEpoch;if(i!==null&&i!==r.value.serverEpoch){e.refresh(n);return}Le(t,r.value)};e.addFinalizer(()=>{i=!0});let c=e.once(r);e.subscribe(n,e=>{o(e)}),e.subscribe(r,e=>{a+=1,s(e)}),queueMicrotask(()=>{i||(e.refresh(n),a===0&&s(c))})}).pipe(C(1e3),O(`preview:session-sync:${e}`))});function Qt(e){let t=(0,Q.c)(2),n;t[0]===e?n=t[1]:(n=Zt(v(e)),t[0]=e,t[1]=n),D(n)}var $t=1500,en=.001;function tn(e){let t=(0,Q.c)(11),{zoomFactor:n}=e,[r,i]=(0,Z.useState)(!1),a=(0,Z.useRef)(n),o=(0,Z.useRef)(null),s,c;t[0]===n?(s=t[1],c=t[2]):(s=()=>{if(!(Math.abs(a.current-n)<en))return a.current=n,i(!0),o.current!==null&&window.clearTimeout(o.current),o.current=window.setTimeout(()=>{i(!1),o.current=null},$t),()=>{o.current!==null&&(window.clearTimeout(o.current),o.current=null)}},c=[n],t[0]=n,t[1]=s,t[2]=c),(0,Z.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,f=r?`opacity-100 translate-y-0`:`opacity-0 -translate-y-1`,p;t[5]===f?p=t[6]:(p=y(`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`,f),t[5]=f,t[6]=p);let m;return t[7]!==u||t[8]!==d||t[9]!==p?(m=(0,$.jsx)(`div`,{"aria-hidden":d,className:p,children:u}),t[7]=u,t[8]=d,t[9]=p,t[10]=m):m=t[10],m}function nn(e,t){return e?1:t===`human`?.18:.35}var rn=700;function an(e){let t=(0,Q.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=Ce(a),s;t[2]===n?s=t[3]:(s=e=>e.byTabId[n]?.content??null,t[2]=n,t[3]=s);let c=fe(s);if(!o)return null;let l;return t[4]!==c||t[5]!==i||t[6]!==o||t[7]!==r?(l=(0,$.jsx)(on,{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 on(e){let t=(0,Q.c)(15),{event:n,content:r,zoomFactor:i,controller:a}=e,[o,s]=(0,Z.useState)(!0),c,l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>{let e=window.setTimeout(()=>s(!1),rn);return()=>window.clearTimeout(e)},l=[],t[0]=c,t[1]=l):(c=t[0],l=t[1]),(0,Z.useEffect)(c,l);let u;t[2]!==o||t[3]!==a?(u=nn(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)(je,{className:`relative size-5 -translate-x-0.5 -translate-y-0.5 text-primary drop-shadow-sm`,weight:`fill`}),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 sn=typeof window>`u`?null:re();function cn({threadRef:e,tabId:t,configuredUrls:n,visible:r,onSendAnnotation:a}){let[o,s]=(0,Z.useState)(void 0),[c,l]=(0,Z.useState)(!1),u=be(),f=(0,Z.useRef)(!1),p=(0,Z.useRef)(!0),m=(0,Z.useRef)(e);m.current=e;let h=He(e),g=Ke(e,50),_=q(t=>W(t.byThreadKey,e)),y=d(e=>e.addPreviewAnnotation),b=d(e=>e.addImage),x=ee(e.environmentId),S=x?new URL(x).hostname:null,C=A(Ye.open),w=A(Ye.resize,`preview viewport resize`);Qt(e),(0,Z.useEffect)(()=>(p.current=!0,()=>{p.current=!1}),[]);let T=t??h.activeTabId,D=T?he(e,h.serverEpoch,T):null,O=T&&D?u.has(D)?D:we(e,T):null,k=T?h.sessions[T]??null:null,M=T?h.desktopByTabId[T]??null:null,N=k?.navStatus??{_tag:`Idle`},P=N._tag===`Idle`?``:N.url,F=M?.loading??N._tag===`Loading`,te=M?.canGoBack??k?.canGoBack??!1,ne=M?.canGoForward??k?.canGoForward??!1,re=N._tag===`Idle`,L=N._tag===`LoadFailed`,ie=xe(k),ae=M?.controller??`none`,R=k?.viewport??i,z=_e(),oe=fe(e=>D?e.byTabId[D]?.rect??null:null),B=N._tag===`Success`?N.url:null,V=N._tag===`Success`?N.title:null,se=g[0]?.url;(0,Z.useEffect)(()=>{!B||!V||!se||Ve(m.current,B,V,S)},[S,se,V,B,v(e)]);let G=(0,Z.useCallback)(async t=>D&&J?(await J.navigate(D,t),Me(e,t),!0):(await U({openPreview:C,threadRef:e,url:t}))._tag===`Success`,[C,D,e]),K=(0,Z.useCallback)(async t=>{try{let n=We(t);await G(n)&&Ge(e,n)}catch{}},[G,e]),le=(0,Z.useCallback)(async t=>{try{let n=Re(e.environmentId,t);await G(n)&&Ge(e,t)}catch{}},[G,e]),Y=(0,Z.useCallback)(()=>{J&&D&&J.refresh(D)},[D]),ue=(0,Z.useCallback)(()=>{J&&D&&J.zoomIn(D)},[D]),pe=(0,Z.useCallback)(()=>{J&&D&&J.zoomOut(D)},[D]),Se=(0,Z.useCallback)(()=>{J&&D&&J.resetZoom(D)},[D]),Ce=(0,Z.useCallback)(async t=>{if(!T)return;let n=await w({environmentId:e.environmentId,input:{threadId:e.threadId,tabId:T,viewport:t}});if(n._tag===`Failure`){let e=E(n);throw I.add({type:`error`,title:`Unable to resize browser viewport`,description:e instanceof Error?e.message:`An error occurred.`}),e}Ue(e,n.value)},[w,T,e]),Ee=()=>{if(D){if(R._tag!==`fill`){me(D,i).catch(()=>void 0);return}me(D,ve({defaults:z,panelRect:oe,zoomFactor:M?.zoomFactor})).catch(()=>void 0)}};(0,Z.useEffect)(()=>{if(D)return Te(D,Ce)},[Ce,D]);let De=(0,Z.useCallback)(()=>{J&&D&&J.goBack(D)},[D]),Oe=(0,Z.useCallback)(()=>{J&&D&&J.goForward(D)},[D]),ke=(0,Z.useCallback)(()=>{!sn||!P||sn.shell.openExternal(P).catch(()=>void 0)},[P]),Ae=(0,Z.useCallback)(()=>{if(T){if(_?.tabId===T){q.getState().close(e);return}q.getState().open(e,T),Ze.getState().close(e)}},[_?.tabId,T,e]),je=(0,Z.useCallback)(()=>{!J||!D||(M?.pictureInPicture?J.pictureInPicture.close:J.pictureInPicture.open)(D).catch(e=>{I.add({type:`error`,title:`Unable to update popped-out preview`,description:e instanceof Error?e.message:`An error occurred.`})})},[M?.pictureInPicture,D]),Ne=(0,Z.useCallback)(t=>{if(!J||!D||!T)return;let n=J;if(O){de(O).then(e=>{if(!e)return;let t=!1,r,i=()=>{if(!navigator.clipboard?.writeText){I.update(r,j({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=>{I.update(r,j({type:`error`,title:`Unable to copy recording path`,description:e instanceof Error?e.message:`An error occurred.`,actionProps:a}))})},a={children:Be(navigator.platform),onClick:()=>void n.revealArtifact(e.path)},o=()=>{I.update(r,j({type:`success`,title:`Recording saved`,actionProps:a,data:{secondaryActionProps:{children:t?`Copied!`:`Copy path`,disabled:t,onClick:i},secondaryActionVariant:`outline`}}))};r=I.add(j({type:`success`,title:`Recording saved`,actionProps:a,data:{secondaryActionProps:{children:`Copy path`,onClick:i},secondaryActionVariant:`outline`}}))},e=>{I.add({type:`error`,title:`Unable to stop recording`,description:e instanceof Error?e.message:`An error occurred.`})});return}if(t){ge(D,e,T).catch(e=>{let t=e instanceof Error?e.message:`An error occurred.`;ye(e)||I.add({type:`error`,title:`Unable to start recording`,description:t})});return}n.captureScreenshot(D).then(e=>{let t={children:Be(navigator.platform),onClick:()=>void n.revealArtifact(e.path)},r=!1,i=!1,a,o=(e=`success`,n=`Screenshot saved`,o)=>{I.update(a,j({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=I.add(j({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=>{I.add({type:`error`,title:`Unable to capture screenshot`,description:e instanceof Error?e.message:`An error occurred.`})})},[O,D,T,e]),Pe=(0,Z.useCallback)(()=>{if(!J||!D)return;if(f.current){J.cancelPickElement(D).catch(()=>void 0);return}let t=typeof document<`u`?document.activeElement:null;f.current=!0,l(!0),(async()=>{try{let t=await J.pickElement(D);if(!t)return;let{annotation:n,submission:r}=t;y(e,n);let i=null;try{i=await ce(n)}catch{}let o=i&&n.screenshot?{type:`image`,id:n.id,name:i.name,mimeType:i.type,sizeBytes:i.size,previewUrl:n.screenshot.dataUrl,file:i}:null;o&&b(e,o),r===`send`&&a?.(n,o)}catch{}finally{if(f.current=!1,p.current&&l(!1),t&&t.isConnected&&typeof t.focus==`function`)try{t.focus({preventScroll:!0})}catch{}}})()},[b,y,a,D,e]);return(0,Z.useEffect)(()=>()=>{f.current&&(f.current=!1,J&&D&&J.cancelPickElement(D).catch(()=>void 0),p.current&&l(!1))},[D]),(0,Z.useEffect)(()=>{if(r)return H(e=>{switch(e){case`refresh`:Y();return;case`focus-url`:s(e=>(e??0)+1);return;case`zoom-in`:ue();return;case`zoom-out`:pe();return;case`reset-zoom`:Se();return;case`toggle-panel`:return}})},[Y,Se,ue,pe,r]),(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-background`,"data-thread-key":v(e),children:[(0,$.jsx)(St,{url:P,loading:F,canGoBack:te,canGoForward:ne,refreshDisabled:re,focusUrlNonce:o,onBack:De,onForward:Oe,onRefresh:Y,onSubmit:e=>void K(e),onOpenInBrowser:T?ke:void 0,onCapture:J&&T?Ne:void 0,captureDisabled:!M||L,recording:O!==null,onPictureInPicture:J&&T?Ae:void 0,pictureInPicture:_?.tabId===T,pictureInPictureDisabled:!M?.hasWebContents||L,onPickElement:J&&T?Pe:void 0,pickActive:c,pickDisabled:!T||L,pickDisabledReason:L?`Page didn't load — pick unavailable until the page renders`:void 0,trailingActions:J?(0,$.jsx)(It,{tabId:D,hasWebContents:M?.hasWebContents??!1,zoomFactor:M?.zoomFactor??1,colorScheme:M?.colorScheme??`system`,deviceToolbarVisible:R._tag!==`fill`,onToggleDeviceToolbar:Ee,nativePictureInPicture:M?.pictureInPicture??!1,onNativePictureInPicture:je}):null}),(0,$.jsxs)(`div`,{className:`relative min-h-0 flex-1 overflow-hidden`,children:[D&&k&&!ie?(0,$.jsx)(X,{tabId:D,visible:r&&!L,className:`absolute inset-0 h-full w-full`},D):null,ie?(0,$.jsx)(Nt,{threadRef:e,environmentId:e.environmentId,configuredUrls:n,recentEntries:g,onRemoveRecent:t=>qe(e,t),onOpenUrl:e=>void le(e)}):null,k&&M?(0,$.jsx)(tn,{zoomFactor:M.zoomFactor}):null,D&&M&&!ie&&!L?(0,$.jsx)(an,{tabId:D,zoomFactor:M.zoomFactor,controller:ae}):null,ae===`none`?null:(0,$.jsx)(`div`,{className:`surface-glass pointer-events-none absolute left-3 top-3 z-40 rounded-full px-2.5 py-1 text-[11px] font-medium shadow-glass`,children:ae===`agent`?`Agent controlling browser`:`Human control`}),N._tag===`LoadFailed`?(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,children:(0,$.jsx)(Kt,{url:N.url,code:N.code,description:N.description,onReload:Y})}):null]})]})}function ln(e){let t=(0,Q.c)(16),{mode:n,threadRef:r,tabId:i,configuredUrls:a,visible:o,onSendAnnotation:s}=e;if(!Xe()){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 Borg desktop app.`})}),t[0]=e):e=t[0];let r;return t[1]===n?r=t[2]:(r=(0,$.jsx)(Se,{mode:n,children:e}),t[1]=n,t[2]=r),r}let c;t[3]===i?c=t[4]:(c=i===void 0?{}:{tabId:i},t[3]=i,t[4]=c);let l;t[5]===s?l=t[6]:(l=s?{onSendAnnotation:s}:{},t[5]=s,t[6]=l);let u;t[7]!==a||t[8]!==c||t[9]!==l||t[10]!==r||t[11]!==o?(u=(0,$.jsx)(cn,{threadRef:r,...c,configuredUrls:a,visible:o,...l}),t[7]=a,t[8]=c,t[9]=l,t[10]=r,t[11]=o,t[12]=u):u=t[12];let d;return t[13]!==n||t[14]!==u?(d=(0,$.jsx)(Se,{mode:n,children:u}),t[13]=n,t[14]=u,t[15]=d):d=t[15],d}export{ln as PreviewPanel};
2
- //# sourceMappingURL=PreviewPanel-T7-TNC-0.js.map
@@ -1,6 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-DAXXjFlN.js";import{a as t}from"./useLocalStorage-B6HRw7FK.js";import{Bo as n,Co as r,Mn as i,Nn as a,On as o,R as s,So as c,Vn as l,W as u,pt as d,t as ee,un as f,wo as p,xo as te}from"./utils-CxdSByf6.js";import{cn as m}from"./session-BpEQOlGw.js";import{Jn as h,cr as g,f as _,ir as ne,kn as v,l as y,nr as re,o as ie,sr as b,t as x,u as S,x as C,xt as w}from"./textarea-C37zxlv0.js";import{$t as T,Bn as E,Jt as D,Ln as O,Qt as ae,Rn as oe,Yt as se,en as k,tn as ce,zn as le}from"./scroll-area-DhT-7J-n.js";import{_ as ue,ut as de,v as fe,y as pe}from"./ChatMarkdown-DVGPcDDG.js";import{$ as me,C as A,Mt as he,Ot as j,Pt as ge,c as _e,ht as ve,l as ye,n as be,o as xe,r as Se,st as Ce,t as we,xt as Te}from"./PullRequestReactions-DefnDwQq.js";import{i as Ee,n as De,o as Oe,r as ke,s as Ae}from"./diffFileContents-D8w_yRtq.js";import{s as je}from"./env-DgM3kOA4.js";import{l as Me,t as Ne}from"./DiffWorkerPoolProvider-EEE1VuzL.js";import{a as Pe,i as Fe}from"./VirtualizedFile-DpXIpMCw.js";import{n as Ie,t as Le}from"./toggle-group-Cl-JZXj8.js";var M=e(t(),1),N=new Map([[`bold`,M.createElement(M.Fragment,null,M.createElement(`path`,{d:`M56.88,31.93a12,12,0,0,0-20.29,4.38A20,20,0,0,0,20,56V184a20,20,0,0,0,20,20H98.11l12.52,21.92a20,20,0,0,0,34.73,0L157.89,204h23l18.25,20.07a12,12,0,0,0,17.76-16.14ZM150.93,180a12,12,0,0,0-10.42,6.05L128,207.94l-12.51-21.89A12,12,0,0,0,105.07,180H44V60h6l109.1,120ZM236,56V174.14a12,12,0,0,1-24,0V60H109.33a12,12,0,1,1,0-24H216A20,20,0,0,1,236,56Z`}))],[`duotone`,M.createElement(M.Fragment,null,M.createElement(`path`,{d:`M224,56V184a8,8,0,0,1-8,8H150.93l-16,28a8,8,0,0,1-13.9,0l-16-28H40a8,8,0,0,1-8-8V56a8,8,0,0,1,8-8H216A8,8,0,0,1,224,56Z`,opacity:`0.2`}),M.createElement(`path`,{d:`M53.92,34.62A8,8,0,0,0,40,40h0A16,16,0,0,0,24,56V184a16,16,0,0,0,16,16h60.43l13.68,23.94a16,16,0,0,0,27.78,0L155.57,200h27.07l19.44,21.38a8,8,0,1,0,11.84-10.76Zm97,149.38a8,8,0,0,0-7,4l-16,28-16-28a8,8,0,0,0-7-4H40V56H51.73L168.1,184ZM232,56V186a8,8,0,0,1-16,0V56H98.52a8,8,0,1,1,0-16H216A16,16,0,0,1,232,56Z`}))],[`fill`,M.createElement(M.Fragment,null,M.createElement(`path`,{d:`M232,56V184a15.93,15.93,0,0,1-4.82,11.42,4,4,0,0,1-5.68-.25L86.52,46.69a4,4,0,0,1,3-6.69H216A16,16,0,0,1,232,56ZM53.92,34.62A8,8,0,0,0,40,40h0A16,16,0,0,0,24,56V184a16,16,0,0,0,16,16h60.43l13.68,23.94a16,16,0,0,0,27.78,0L155.57,200h27.07l19.44,21.38a8,8,0,1,0,11.84-10.76Z`}))],[`light`,M.createElement(M.Fragment,null,M.createElement(`path`,{d:`M52.44,36a6,6,0,0,0-10.1,6H40A14,14,0,0,0,26,56V184a14,14,0,0,0,14,14h61.59L115.84,223a14,14,0,0,0,24.32,0L154.41,198h29.12l20,22a6,6,0,0,0,8.88-8.08Zm98.49,150a6,6,0,0,0-5.21,3l-16,28a2,2,0,0,1-3.48,0l-16-28a6,6,0,0,0-5.21-3H40a2,2,0,0,1-2-2V56a2,2,0,0,1,2-2H52.62l120,132ZM230,56V186a6,6,0,0,1-12,0V56a2,2,0,0,0-2-2H98.52a6,6,0,1,1,0-12H216A14,14,0,0,1,230,56Z`}))],[`regular`,M.createElement(M.Fragment,null,M.createElement(`path`,{d:`M53.92,34.62A8,8,0,0,0,40,40h0A16,16,0,0,0,24,56V184a16,16,0,0,0,16,16h60.43l13.68,23.94a16,16,0,0,0,27.78,0L155.57,200h27.07l19.44,21.38a8,8,0,1,0,11.84-10.76Zm97,149.38a8,8,0,0,0-7,4l-16,28-16-28a8,8,0,0,0-7-4H40V56H51.73L168.1,184ZM232,56V186a8,8,0,0,1-16,0V56H98.52a8,8,0,1,1,0-16H216A16,16,0,0,1,232,56Z`}))],[`thin`,M.createElement(M.Fragment,null,M.createElement(`path`,{d:`M51,37.31A4,4,0,0,0,45,42.69L46.23,44H40A12,12,0,0,0,28,56V184a12,12,0,0,0,12,12h62.75L117.58,222a12,12,0,0,0,20.84,0L153.25,196h31.16L205,218.69a4,4,0,1,0,5.92-5.38ZM150.93,188a4,4,0,0,0-3.47,2l-16,28a4,4,0,0,1-6.94,0l-16-28a4,4,0,0,0-3.47-2H40a4,4,0,0,1-4-4V56a4,4,0,0,1,4-4H53.5L177.14,188ZM228,56V186a4,4,0,0,1-8,0V56a4,4,0,0,0-4-4H98.52a4,4,0,1,1,0-8H216A12,12,0,0,1,228,56Z`}))]]),Re=new Map([[`bold`,M.createElement(M.Fragment,null,M.createElement(`path`,{d:`M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm0,192a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,212Z`}))],[`duotone`,M.createElement(M.Fragment,null,M.createElement(`path`,{d:`M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z`,opacity:`0.2`}),M.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Z`}))],[`fill`,M.createElement(M.Fragment,null,M.createElement(`path`,{d:`M232,128A104,104,0,1,1,128,24,104.13,104.13,0,0,1,232,128Z`}))],[`light`,M.createElement(M.Fragment,null,M.createElement(`path`,{d:`M128,26A102,102,0,1,0,230,128,102.12,102.12,0,0,0,128,26Zm0,192a90,90,0,1,1,90-90A90.1,90.1,0,0,1,128,218Z`}))],[`regular`,M.createElement(M.Fragment,null,M.createElement(`path`,{d:`M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Z`}))],[`thin`,M.createElement(M.Fragment,null,M.createElement(`path`,{d:`M128,28A100,100,0,1,0,228,128,100.11,100.11,0,0,0,128,28Zm0,192a92,92,0,1,1,92-92A92.1,92.1,0,0,1,128,220Z`}))]]),ze=Object.defineProperty,P=Object.defineProperties,F=Object.getOwnPropertyDescriptors,I=Object.getOwnPropertySymbols,L=Object.prototype.hasOwnProperty,Be=Object.prototype.propertyIsEnumerable,Ve=(e,t,n)=>t in e?ze(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,He=(e,t)=>{for(var n in t||={})L.call(t,n)&&Ve(e,n,t[n]);if(I)for(var n of I(t))Be.call(t,n)&&Ve(e,n,t[n]);return e},Ue=(e,t)=>P(e,F(t)),We=(0,M.forwardRef)((e,t)=>M.createElement(r,Ue(He({ref:t},e),{weights:N})));We.displayName=`ChatCenteredSlash`;var Ge=Object.defineProperty,R=Object.defineProperties,z=Object.getOwnPropertyDescriptors,B=Object.getOwnPropertySymbols,V=Object.prototype.hasOwnProperty,H=Object.prototype.propertyIsEnumerable,U=(e,t,n)=>t in e?Ge(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,W=(e,t)=>{for(var n in t||={})V.call(t,n)&&U(e,n,t[n]);if(B)for(var n of B(t))H.call(t,n)&&U(e,n,t[n]);return e},G=(e,t)=>R(e,z(t)),K=(0,M.forwardRef)((e,t)=>M.createElement(r,G(W({ref:t},e),{weights:Re})));K.displayName=`Circle`;var Ke=new Set([`pnpm-lock.yaml`,`yarn.lock`,`package-lock.json`,`bun.lockb`,`Cargo.lock`,`go.sum`,`composer.lock`,`Gemfile.lock`]),qe=new Set([`__snapshots__`,`__generated__`,`dist`,`build`,`vendor`]),Je=new Set([`__tests__`,`tests`,`test`]),Ye=[`.ts`,`.tsx`,`.js`,`.jsx`,`.mjs`,`.cjs`];function Xe(e){let t=e.split(`/`),n=t.at(-1)??``;return Ke.has(n)||n.endsWith(`.snap`)||n.endsWith(`.min.js`)||n.endsWith(`.min.css`)||/\.generated\./.test(n)||t.slice(0,-1).some(e=>qe.has(e))?`generated`:/\.(?:test|spec)\./.test(n)||t.slice(0,-1).some(e=>Je.has(e))?`test`:`source`}function Ze(e){let t=e.lastIndexOf(`.`);return t>e.lastIndexOf(`/`)?e.slice(0,t):e}function Qe(e){return Ze(e.split(`/`).at(-1)??``)}function $e(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 et=/(?:\bfrom|\bimport|\brequire\s*\()\s*\(?\s*["']([^"']+)["']/g;function tt(e,t,n,r){let i=new Set;for(let a of t){et.lastIndex=0;let t=et.exec(a);for(;t!==null;){let o=t[1]??``,s=o.startsWith(`.`)?$e(e,o):o,c=Ye.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(Qe(l));u!==void 0&&u!==e&&i.add(u),t=et.exec(a)}}return i}function nt(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 rt(e){return(e.split(`/`).at(-1)??``).replace(/\.(?:test|spec)\..*$/,``).replace(/\.[^.]+$/,``)}function it(e){let t=new Map;for(let n of e)t.set(k(n),n);let n=new Map;for(let e of t.keys())n.set(e,Xe(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(Ze(e),e);let t=Qe(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,tt(e,[...n.additionLines,...n.deletionLines],i,o))}let c=nt(r,s),l=new Map;c.forEach((e,t)=>{let n=Qe(e);l.has(n)||l.set(n,t)});let u=[...t.keys()].filter(e=>n.get(e)===`test`).sort((e,t)=>(l.get(rt(e))??2**53-1)-(l.get(rt(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))}var q=p(),J=n(),Y=`mx-3 my-2 rounded-xl border border-border/70 bg-background p-3 text-sm shadow-sm`;function at(e){return t=>{t.key===`Escape`&&e.onCancel&&(t.preventDefault(),e.onCancel()),Pe(t,e.value,e.pending)&&(t.preventDefault(),e.onSubmit())}}function ot(e){let t=(0,q.c)(11),{comment:n,onRemove:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=ee(Y,`border-dashed`),t[0]=i):i=t[0];let a,o;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,J.jsx)(de,{className:`size-3.5`}),o=(0,J.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,J.jsx)(O,{className:`size-3.5`}),t[3]=s):s=t[3];let c;t[4]===r?c=t[5]:(c=(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[a,o,(0,J.jsx)(f,{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,J.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,J.jsxs)(`div`,{className:i,contentEditable:!1,onPointerDown:X,children:[c,l]}),t[8]=c,t[9]=l,t[10]=u):u=t[10],u}function X(e){return e.stopPropagation()}function st({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,onLoadMore:ee,canEditComment:p,onEditComment:te,onToggleResolved:m,onReacted:h}){let[g,_]=(0,M.useState)(!e.isResolved),[ne,v]=(0,M.useState)(!1),[y,re]=(0,M.useState)(``),[ie,S]=(0,M.useState)(null),[C,w]=(0,M.useState)(!1),T=(0,M.useRef)(!1),[E,D]=(0,M.useState)(null),[O,ae]=(0,M.useState)(!1),oe=E?.threadId===e.id?E:null,se=ve(e.comments,oe?.comments??[]),k=oe===null?e.nextCommentsCursor??null:oe.nextCursor,ce=e.commentCount??se.length,le=async(t,n)=>{if(C)return;w(!0);let r=await te(t,n);w(!1),r&&(D(r=>r?.threadId===e.id?{...r,comments:Ce(r.comments,t,n)}:r),S(null))},ue=async()=>{let t=y.trim();if(!(t.length===0||s||T.current)){T.current=!0;try{await d(t)&&(D(t=>t?.threadId===e.id?{...t,nextCursor:t.nextCursor??e.nextCommentsCursor??null}:t),re(``),v(!1))}finally{T.current=!1}}},de=async()=>{if(!(k===null||O)){ae(!0);try{let t=await ee(k);if(t===null)return;D(n=>({threadId:e.id,comments:ve(n?.threadId===e.id?n.comments:[],t.comments),nextCursor:t.nextCursor}))}finally{ae(!1)}}};return(0,J.jsxs)(`div`,{className:Y,contentEditable:!1,onPointerDown:e=>e.stopPropagation(),children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[e.isResolved?(0,J.jsx)(b,{className:`size-3.5 text-emerald-600 dark:text-emerald-500`}):(0,J.jsx)(K,{className:`size-3.5`}),(0,J.jsxs)(`button`,{type:`button`,className:`hover:text-foreground`,"aria-expanded":g,onClick:()=>_(e=>!e),children:[e.isResolved?`Resolved`:`Open`,` · `,ce,` `,ce===1?`comment`:`comments`]}),e.isOutdated?(0,J.jsx)(`span`,{children:`outdated`}):null,u?(0,J.jsxs)(f,{size:`xs`,variant:`ghost`,className:`ml-auto`,disabled:s||c,onClick:u,children:[(0,J.jsx)(ge,{className:`size-3`}),c?`Preparing...`:l]}):null,r?(0,J.jsx)(f,{size:`xs`,variant:`ghost`,className:u?void 0:`ml-auto`,disabled:s,onClick:m,children:e.isResolved?`Unresolve`:`Resolve`}):null]}),g?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`div`,{className:`mt-2 space-y-3`,children:se.map(e=>(0,J.jsxs)(`article`,{className:`group min-w-0`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,J.jsx)(xe,{actor:e.author,className:`text-foreground`}),(0,J.jsx)(`span`,{children:je(e.createdAt)})]}),ie===e.id?(0,J.jsx)(be,{className:`mt-1`,value:e.body,cwd:t,environmentId:a,label:`Edit comment`,saving:C,onSave:t=>void le(e.id,t),onCancel:()=>S(null)}):(0,J.jsxs)(`div`,{className:`mt-1 flex items-start gap-1`,children:[(0,J.jsx)(Se,{className:`min-w-0 flex-1 text-sm`,text:e.body,cwd:t,environmentId:a}),p(e)?(0,J.jsx)(f,{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:()=>S(e.id),children:(0,J.jsx)(he,{className:`size-3`})}):null]}),(0,J.jsx)(we,{className:`mt-1.5`,reactions:e.reactions??[],canReact:i,subjectId:e.id,environmentId:a,reference:o,onRefresh:h})]},e.id))}),k===null?null:(0,J.jsx)(`div`,{className:`mt-2`,children:(0,J.jsx)(f,{size:`xs`,variant:`ghost`,className:`px-1`,disabled:O,onClick:()=>void de(),children:O?`Loading...`:`Load more comments`})}),n?ne?(0,J.jsxs)(`div`,{className:`mt-2`,children:[(0,J.jsx)(x,{autoFocus:!0,size:`sm`,value:y,placeholder:`Reply`,"aria-label":`Reply to this conversation`,onChange:e=>re(e.target.value),onKeyDown:at({value:y,pending:s,onSubmit:()=>void ue(),onCancel:()=>v(!1)})}),(0,J.jsxs)(`div`,{className:`mt-2 flex justify-end gap-2`,children:[(0,J.jsx)(f,{size:`xs`,variant:`ghost`,onClick:()=>v(!1),children:`Cancel`}),(0,J.jsx)(f,{size:`xs`,disabled:s||y.trim().length===0,onClick:()=>void ue(),children:`Reply`})]})]}):(0,J.jsx)(f,{size:`xs`,variant:`ghost`,className:`mt-2 px-1`,onClick:()=>v(!0),children:`Reply`}):null]}):null]})}var Z=0;function ct(){return Z+=1,`pending-review-comment-${Z}`}function lt(e){return`${e.projectId}/${e.repository}#${e.number}`}var ut=[],Q=d()(e=>({drafts:{},summaries:{},addComment:(t,n)=>e(e=>({drafts:{...e.drafts,[t]:[...e.drafts[t]??ut,n]}})),removeComment:(t,n)=>e(e=>{let r=(e.drafts[t]??ut).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]??ut).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 dt(e){let t=(0,q.c)(2),n;return t[0]===e?n=t[1]:(n=t=>t.drafts[lt(e)]??ut,t[0]=e,t[1]=n),Q(n)}var ft=[{value:`comment`,label:`Comment`,sent:`Review submitted`,icon:(0,J.jsx)(de,{className:`size-3`})},{value:`approve`,label:`Approve`,sent:`Pull request approved`,icon:(0,J.jsx)(g,{className:`size-3`})},{value:`request-changes`,label:`Request changes`,sent:`Changes requested`,icon:(0,J.jsx)(j,{className:`size-3`})}];function pt(e){let t=(0,q.c)(13),{environmentId:n,reference:r,verdicts:i,onSubmitted:a}=e,[o,s]=(0,M.useState)(!1),c=dt(r),l=lt(r),u=Q(e=>e.summaries[l]??``),d=Q(_t),ee=Q(gt),p=Q(ht),te=Q(mt),m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m={reportFailure:!1},t[0]=m):m=t[0];let g=h(A.submitReview,m),_;t[1]===i?_=t[2]:(_=e=>i.includes(e.value),t[1]=i,t[2]=_);let ne=ft.filter(_);if(ne.length===0)return null;let v=async e=>{if(o)return;let t=u,i=c;s(!0);let d=await g({environmentId:n,input:{...r,verdict:e.value,body:t,comments:i}});if(s(!1),d._tag===`Failure`){ie.add({type:`error`,title:`The review could not be submitted`});return}ee(l,i.map($)),te(l,t),ie.add({type:`success`,title:e.sent}),a()},y;t[3]!==u||t[4]!==c.length?(y=e=>e===`approve`||u.trim().length>0||c.length>0,t[3]=u,t[4]=c.length,t[5]=y):y=t[5];let re=y,b=c.length===0?`No line comments yet`:`${c.length} ${c.length===1?`comment`:`comments`} pending`,S;t[6]===b?S=t[7]:(S=(0,J.jsx)(`span`,{children:b}),t[6]=b,t[7]=S);let C=c.length>0?(0,J.jsx)(f,{size:`xs`,variant:`ghost`,disabled:o,onClick:()=>d(l),children:`Discard`}):null,w;t[8]!==S||t[9]!==C?(w=(0,J.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[S,C]}),t[8]=S,t[9]=C,t[10]=w):w=t[10];let T=ne.map(e=>(0,J.jsx)(f,{size:`xs`,variant:e.value===`comment`?`outline`:`default`,disabled:o||!re(e.value),onClick:()=>void v(e),children:(0,J.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[e.icon,e.label]})},e.value)),E;return t[11]===T?E=t[12]:(E=(0,J.jsx)(`div`,{className:`mt-2 flex flex-wrap justify-end gap-2`,children:T}),t[11]=T,t[12]=E),(0,J.jsxs)(`div`,{className:`px-4 py-3`,children:[w,(0,J.jsx)(x,{size:`sm`,className:`mt-2`,value:u,placeholder:`Summarize your review (optional)`,"aria-label":`Review summary`,onChange:e=>p(l,e.target.value)}),E]})}function $(e){return e.id}function mt(e){return e.clearSummary}function ht(e){return e.setSummary}function gt(e){return e.removeComments}function _t(e){return e.clear}function vt(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 yt(e,t,n){let r=t===`folded`;return n.has(e)?!r:r}var bt=10,xt=`
2
- [data-diffs-header] [data-additions-count],
3
- [data-diffs-header] [data-deletions-count] {
4
- display: none !important;
5
- }`,St=[];function Ct(e){return e===`left`?`deletions`:`additions`}function wt(e){switch(e.kind){case`added`:return{line:e.newLine,side:`right`};case`deleted`:return{line:e.oldLine,side:`left`};case`context`:return{line:e.side===`left`?e.oldLine:e.newLine,side:e.side}}}function Tt({environmentId:e,reference:t,detail:n,selectedCommitOid:r,onSelectedCommitChange:d,pendingFinding:p,fixFindingLabel:g=`Fix in a thread`,onFixFinding:b,onAddToAgentSelection:x,onRefresh:O,refreshToken:he=0}){let{resolvedTheme:j}=w(),ge=C(),[ve,be]=(0,M.useState)(()=>new Set),[xe,Se]=(0,M.useState)(bt),[Ce,we]=(0,M.useState)(null),[je,Pe]=(0,M.useState)(`stacked`),[N,Re]=(0,M.useState)(ge.wordWrap),[ze,P]=(0,M.useState)(null),[F,I]=(0,M.useState)(null),[L,Be]=(0,M.useState)(!1),[Ve,He]=(0,M.useState)(!1),[Ue,Ge]=(0,M.useState)(!1),[R,z]=(0,M.useState)({key:``,cursor:null,slices:St}),B=(0,M.useRef)(new Map),V=lt(t),H=r,U=H===null?V:`${V}@${H}`;(0,M.useEffect)(()=>{I(null),P(null),be(new Set),we(null),Se(bt),He(!1),z({key:U,cursor:null,slices:St}),B.current.clear()},[U]);let W=R.key===U?R.slices:St,G=R.key===U?R.cursor:null,K=v(A.diff({environmentId:e,input:{...t,...G===null?{}:{cursor:G},...H===null?{}:{commit:H}}}));(0,M.useEffect)(()=>{let e=K.data;e!==null&&z(t=>{let n=t.key===U?t.slices:St,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 Ke=m(A.diff({environmentId:e,input:{...t,...H===null?{}:{commit:H}}})),qe=(0,M.useRef)(he);(0,M.useEffect)(()=>{qe.current!==he&&(qe.current=he,z({key:U,cursor:null,slices:St}),Ke())},[he,U,Ke]);let Je=V,Ye=dt(t),Xe=Q(e=>e.addComment),Ze=Q(e=>e.removeComment),Qe=h(A.replyToThread,{reportFailure:!1}),$e=h(A.setThreadResolution,{reportFailure:!1}),et=h(A.updateComment,{reportFailure:!1}),tt=h(A.threadComments,{reportFailure:!1}),nt=h(A.diffFileContents),rt=(0,M.useMemo)(()=>De(nt,{environmentId:e,reference:t,commit:H,cacheKey:`pull-request:${V}:${n.updatedAt}:${H??`all`}`}),[H,n.updatedAt,e,nt,t,V]),q=(0,M.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]),Y=q.inlineComment&&H===null,at=(0,M.useMemo)(()=>W.map(e=>{let t=`pull-request:${U}:${j}:${e.cursor??`first`}:${se(e.patch)}`,n=B.current.get(t);if(n)return n;let r=ae(e.patch,t,{compactPartialHunkOffsets:!0});return r&&B.current.set(t,r),r}),[W,j,U]),X=(0,M.useMemo)(()=>at.flatMap(e=>e?.kind===`files`?it(e.files):[]),[at]),Z=W.at(-1)?.nextCursor??null,ut=W.some(e=>e.truncated)||at.some(e=>e?.kind===`raw`),ft=(0,M.useMemo)(()=>{let e=new Set;if(H!==null)return e;for(let t of X){let r=k(t);for(let i of n.reviewThreads)i.path===r&&i.line!==null&&vt(t,i.side,i.line)&&e.add(i.id)}return e},[H,n.reviewThreads,X]),$=(0,M.useMemo)(()=>X.map(e=>{let t=D(e),r=k(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||ft.has(e.id)&&a(e.side,e.line).threads.push(e);if(H===null)for(let e of Ye){if(e.path!==r)continue;let t=wt(e.position);a(t.side,t.line).pending.push(e)}if(F?.fileKey===t){let e=wt(F.position);a(e.side,e.line).draft=!0}let o=yt(t,Ce,ve),s=[...i.values()].map(e=>({side:Ct(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:se(`${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(`|`)}`)}}),[H,n.reviewThreads,F,X,Ce,Ye,ft,ve]),mt=(0,M.useMemo)(()=>new Map(W.flatMap(e=>e.omittedFileStats.map(e=>[e.path,e]))),[W]),ht=(0,M.useMemo)(()=>$.map(e=>e.id),[$]),gt=(0,M.useMemo)(()=>new Set($.filter(e=>e.collapsed===!0).map(e=>e.id)),[$]),_t=Ee(ht,gt),[Tt,Et]=(0,M.useState)(null);(0,M.useEffect)(()=>{if(Tt===null||Z===null||Z===G||K.isPending||K.error!==null)return;let e=new IntersectionObserver(e=>{e.some(e=>e.isIntersecting)&&z(e=>({...e,cursor:Z}))},{rootMargin:`240px`});return e.observe(Tt),()=>e.disconnect()},[G,K.error,K.isPending,Z,Tt]);let Dt=(0,M.useCallback)(e=>be(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n}),[]),Ot=()=>{we(Ee(ht,gt)?`expanded`:`folded`),be(new Set)},kt=(0,M.useMemo)(()=>n.commits.toSorted((e,t)=>Date.parse(t.committedDate)-Date.parse(e.committedDate)),[n.commits]),At=(0,M.useCallback)((e,t)=>{if(!e||!Y)return;let n=t.item;if(n.type!==`diff`)return;let r=X.find(e=>D(e)===n.id);if(!r)return;let i=k(r),a=ce(r),o=u(r,e.end,e.endSide??e.side);o!==null&&I({fileKey:n.id,path:i,oldPath:a===i?null:a,position:o,range:e})},[Y,X]),jt=(0,M.useCallback)((e,t,r)=>{let i=X.find(t=>D(t)===e.fileKey),a=i===void 0?null:s({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});I(null),P(null),a!==null&&r(a)},[n.number,X]),Mt=(0,M.useCallback)(()=>Z===null?null:(0,J.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,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`span`,{children:`The rest of this diff could not be loaded.`}),(0,J.jsx)(f,{size:`xs`,variant:`outline`,onClick:()=>K.refresh(),children:`Retry`})]})}),[Z,K.error,K.isPending,K.refresh]),Nt=(0,M.useCallback)(e=>{let t=e.collapsed===!0;return(0,J.jsx)(f,{size:`icon-micro`,variant:`ghost-muted`,"aria-expanded":!t,"aria-label":t?`Expand diff`:`Collapse diff`,className:`mr-1 rounded hover:bg-transparent`,onClick:t=>{t.stopPropagation(),Dt(e.id)},children:t?(0,J.jsx)(te,{className:`size-4`}):(0,J.jsx)(c,{className:`size-4`})})},[Dt]),Pt=(0,M.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=mt.get(k(e.fileDiff));r&&({additions:t,deletions:n}=r)}return(0,J.jsx)(_e,{additions:t,deletions:n,className:`font-mono text-[11px]`})},[mt]),Ft=(0,M.useMemo)(()=>({diffStyle:je===`split`?`split`:`unified`,lineDiffType:`none`,overflow:N?`wrap`:`scroll`,theme:T(j),themeType:j,stickyHeaders:!0,loadDiffFiles:rt,enableGutterUtility:Y&&F===null,enableLineSelection:Y&&F===null,onGutterUtilityClick:At,onLineSelectionEnd:At}),[je,N,j,rt,Y,F,At]),It=(0,M.useCallback)(async(e,t)=>{if(L)return!1;Be(!0);let n=await t();return Be(!1),n._tag===`Failure`?(ie.add({type:`error`,title:e}),!1):(O(),!0)},[O,L]),Lt=(0,M.useCallback)(r=>(0,J.jsx)(st,{thread:r,workspaceRoot:n.workspaceRoot,canReply:q.reply,canResolve:q.resolve,canReact:n.capabilities.reactions===!0,environmentId:e,reference:t,pending:L,fixPending:p===Te({kind:`thread`,thread:r}),fixLabel:g,...b?{onFix:()=>b({kind:`thread`,thread:r})}:{},onLoadMore:async n=>{let i=await tt({environmentId:e,input:{...t,threadId:r.id,cursor:n}});return i._tag===`Failure`?(ie.add({type:`error`,title:`More comments could not be loaded`}),null):i.value},onReply:n=>It(`Reply could not be posted`,()=>Qe({environmentId:e,input:{...t,threadId:r.id,body:n}})),canEditComment:e=>me(n,{author:e.author,kind:`review-comment`}),onEditComment:(n,r)=>It(`The comment could not be saved`,()=>et({environmentId:e,input:{...t,commentId:n,kind:`review-comment`,body:r}})),onToggleResolved:()=>void It(`The conversation could not be updated`,()=>$e({environmentId:e,input:{...t,threadId:r.id,resolved:!r.isResolved}})),onReacted:O},`${t.projectId}#${t.number}:${r.id}`),[n,e,g,tt,O,b,p,t,Qe,q.reply,q.resolve,It,$e,L,et]),Rt=(0,M.useCallback)(e=>(0,J.jsxs)(`div`,{className:`py-1 font-sans text-foreground`,children:[e.metadata.threads.map(Lt),e.metadata.pending.map(e=>(0,J.jsx)(ot,{comment:e,onRemove:()=>Ze(Je,e.id)},e.id)),e.metadata.draft&&F?(0,J.jsx)(Fe,{kind:`draft`,rangeLabel:`${F.path}:${wt(F.position).line}`,text:``,submitLabel:`Add to review`,...x?{secondaryAction:{label:`Add to agent`,onAction:e=>jt(F,e,t=>x({comment:t,request:e}))}}:{},onCancel:()=>{I(null),P(null)},onComment:e=>{Xe(Je,{id:ct(),path:F.path,...F.oldPath===null?{}:{oldPath:F.oldPath},position:F.position,body:e}),I(null),P(null)}}):null]}),[Xe,F,jt,x,Ze,Lt,Je]),zt=q.verdicts.length===0?null:(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 bottom-0 z-10`,children:Ue?(0,J.jsxs)(`div`,{className:`surface-glass pointer-events-auto absolute inset-x-3 bottom-3 rounded-xl border border-border/60 shadow-lg`,children:[(0,J.jsx)(f,{type:`button`,size:`icon-sm`,variant:`ghost`,"aria-label":`Close review`,className:`absolute right-2 top-2`,onClick:()=>Ge(!1),children:(0,J.jsx)(re,{className:`size-3.5`})}),(0,J.jsx)(pt,{environmentId:e,reference:t,verdicts:q.verdicts,onSubmitted:()=>{O(),Ge(!1)}})]}):(0,J.jsxs)(f,{className:`pointer-events-auto absolute right-4 bottom-3 rounded-full shadow-lg`,onClick:()=>Ge(!0),size:`compact`,variant:`glass`,children:[(0,J.jsx)(de,{className:`size-3.5`}),`Review`,Ye.length>0?(0,J.jsx)(`span`,{className:`flex size-4 items-center justify-center rounded-full bg-accent text-[10px] tabular-nums text-accent-foreground`,children:Ye.length}):null]})}),Bt=kt.find(e=>e.oid===H);(0,M.useEffect)(()=>{H!==null&&Bt===void 0&&d(null)},[H,d,Bt]);let Vt=Bt?Bt.messageHeadline:`All commits`,Ht=(0,J.jsxs)(`div`,{className:`flex h-10 min-h-10 shrink-0 items-center justify-between gap-2 border-b border-border/60 bg-background px-4 text-xs text-muted-foreground`,children:[(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[kt.length>0?(0,J.jsxs)(o,{children:[(0,J.jsxs)(l,{className:`inline-flex h-6 min-w-0 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,J.jsx)(`span`,{className:`truncate`,children:Vt}),(0,J.jsx)(c,{className:`size-3.5 shrink-0 opacity-70`})]}),(0,J.jsxs)(a,{align:`start`,className:`w-80`,children:[(0,J.jsx)(i,{className:H===null?`bg-foreground/[0.08]`:void 0,onClick:()=>d(null),children:(0,J.jsx)(`span`,{children:`All commits`})}),kt.slice(0,xe).map(e=>(0,J.jsxs)(i,{className:e.oid===H?`bg-foreground/[0.08]`:void 0,onClick:()=>d(e.oid),children:[(0,J.jsxs)(y,{children:[(0,J.jsx)(_,{render:(0,J.jsx)(`span`,{className:`min-w-0 truncate`,children:e.messageHeadline})}),(0,J.jsx)(S,{side:`top`,children:e.messageHeadline})]}),(0,J.jsx)(`span`,{className:`ml-auto shrink-0 font-mono text-xs text-muted-foreground`,children:e.oid.slice(0,7)})]},e.oid)),kt.length>xe?(0,J.jsx)(i,{closeOnClick:!1,onClick:()=>Se(e=>e+bt),children:(0,J.jsxs)(`span`,{className:`text-muted-foreground`,children:[`Show more (`,kt.length-xe,` left)`]})}):null]})]}):null,(0,J.jsxs)(ye,{className:`shrink-0`,children:[(0,J.jsxs)(`span`,{className:`shrink-0 tabular-nums`,children:[X.length,` `,X.length===1?`file`:`files`,Z===null?``:`+`]}),ut?(0,J.jsxs)(y,{children:[(0,J.jsx)(_,{render:(0,J.jsx)(`span`,{className:`flex shrink-0 items-center`}),children:(0,J.jsx)(ne,{"aria-label":`Some of this diff was not shown`,className:`size-3.5 text-amber-600 dark:text-amber-500`})}),(0,J.jsx)(S,{side:`bottom`,children:`The host withheld part of this diff — a binary file, or a change too large to inline.`})]}):null,H!==null&&q.inlineComment?(0,J.jsxs)(y,{children:[(0,J.jsx)(_,{render:(0,J.jsx)(`span`,{className:`flex shrink-0 items-center`}),children:(0,J.jsx)(We,{"aria-label":`Line comments are written from the whole change`,className:`size-3.5`})}),(0,J.jsx)(S,{side:`bottom`,children:`A comment is anchored to the whole change, so switch to All commits to write one.`})]}):null]})]}),(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[ht.length>0?(0,J.jsxs)(y,{children:[(0,J.jsx)(_,{render:(0,J.jsx)(f,{type:`button`,size:`icon-sm`,variant:`ghost`,"aria-label":_t?`Expand all files`:`Collapse all files`,onClick:Ot}),children:_t?(0,J.jsx)(oe,{className:`size-3.5`}):(0,J.jsx)(le,{className:`size-3.5`})}),(0,J.jsx)(S,{side:`top`,children:_t?`Expand all files`:`Collapse all files`})]}):null,(0,J.jsxs)(Ie,{className:`shrink-0 gap-1`,size:`sm`,value:[je],onValueChange:e=>{let t=e[0];(t===`stacked`||t===`split`)&&Pe(t)},children:[(0,J.jsx)(Le,{"aria-label":`Stacked diff view`,value:`stacked`,variant:`ghost`,children:(0,J.jsx)(Oe,{className:`size-3.5`})}),(0,J.jsx)(Le,{"aria-label":`Split diff view`,value:`split`,variant:`ghost`,children:(0,J.jsx)(Ae,{className:`size-3.5`})})]}),(0,J.jsxs)(y,{children:[(0,J.jsx)(_,{render:(0,J.jsx)(Le,{"aria-label":N?`Disable diff line wrapping`:`Enable diff line wrapping`,variant:`ghost`,size:`sm`,pressed:N,onPressedChange:e=>{Re(!!e)}}),children:(0,J.jsx)(E,{className:`size-3.5`})}),(0,J.jsx)(S,{side:`top`,children:N?`Disable line wrapping`:`Enable line wrapping`})]})]})]}),Ut=e=>(0,J.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col`,children:[Ht,(0,J.jsxs)(`div`,{className:`relative min-h-0 flex-1`,children:[(0,J.jsx)(`div`,{className:`h-full overflow-auto`,children:e}),zt]})]});if(K.isPending&&W.length===0)return Ut((0,J.jsx)(Me,{label:`Loading pull request diff...`}));if(K.error&&W.length===0)return Ut((0,J.jsx)(`p`,{className:`px-4 py-5 text-sm text-muted-foreground`,children:K.error}));let Wt=Z===null?at.flatMap(e=>e?.kind===`raw`?[e]:[]):[];if(X.length===0&&Wt.length>0)return Ut((0,J.jsx)(`div`,{className:`space-y-4 px-4 py-5`,children:Wt.map(e=>(0,J.jsxs)(`div`,{className:`space-y-2`,children:[(0,J.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.reason}),(0,J.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&&Z===null)return Ut((0,J.jsx)(`p`,{className:`px-4 py-5 text-sm text-muted-foreground`,children:H===null?`This pull request has no file changes.`:`This commit has no file changes.`}));let Gt=n.reviewThreads.filter(e=>!ft.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,J.jsx)(`div`,{className:`space-y-4 border-t border-border/60 px-4 py-5`,children:Wt.map(e=>(0,J.jsxs)(`div`,{className:`space-y-2`,children:[(0,J.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.reason}),(0,J.jsx)(`pre`,{className:`whitespace-pre-wrap break-words font-mono text-xs`,children:e.text})]},`${e.reason}:${e.text.slice(0,64)}`))});return(0,J.jsx)(Ne,{children:(0,J.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col`,children:[Ht,Kt.size>0?(0,J.jsxs)(ue,{className:`shrink-0 border-b border-border/60`,open:Ve,onOpenChange:He,children:[(0,J.jsx)(`h2`,{children:(0,J.jsxs)(pe,{className:`flex w-full items-center gap-1.5 px-4 py-2 text-left text-xs text-muted-foreground`,children:[(0,J.jsx)(`span`,{children:Z===null?`Conversations not on the current diff`:`Conversations not on the diff loaded so far`}),(0,J.jsx)(te,{"aria-hidden":!0,className:ee(`size-3.5 transition-transform`,Ve&&`rotate-90`)}),(0,J.jsx)(`span`,{"aria-hidden":!0,className:`tabular-nums`,children:Gt.length}),(0,J.jsx)(`span`,{className:`sr-only`,children:Gt.length===1?`1 conversation`:`${Gt.length} conversations`})]})}),(0,J.jsx)(fe,{children:(0,J.jsx)(`div`,{className:`max-h-64 space-y-3 overflow-auto px-4 pb-3`,children:[...Kt].map(([e,t])=>(0,J.jsxs)(`div`,{children:[(0,J.jsxs)(y,{children:[(0,J.jsx)(_,{render:(0,J.jsx)(`p`,{className:`truncate px-3 text-xs text-muted-foreground`,children:e})}),(0,J.jsx)(S,{side:`top`,children:e})]}),(0,J.jsx)(`div`,{className:`mt-1 space-y-2`,children:t.map(e=>(0,J.jsxs)(`div`,{children:[e.line===null?null:(0,J.jsxs)(`p`,{className:`px-3 text-xs text-muted-foreground`,children:[`Line `,e.line]}),Lt(e)]},e.id))})]},e))})})]}):null,(0,J.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=>k(e.fileDiff)===t);n!==void 0&&Dt(n.id);return}}},children:[(0,J.jsx)(ke,{className:`h-full overflow-auto [scrollbar-gutter:stable]`,items:$,selectedLines:ze,onSelectedLinesChange:P,options:Ft,renderCodeViewFooter:Mt,renderHeaderPrefix:Nt,renderHeaderMetadata:Pt,renderAnnotation:Rt,unsafeCSSExtra:xt}),zt]}),qt]})})}export{Tt as PullRequestCodeTab,Tt as default};
6
- //# sourceMappingURL=PullRequestCodeTab-DeLU7Brq.js.map