@p4code/cli 0.8.22 → 0.8.23

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 (372) hide show
  1. package/dist/bin.mjs +1 -1
  2. package/dist/{binCli-CfXLOppT.mjs → binCli-DzKk3bdm.mjs} +747 -492
  3. package/dist/client/.vite/manifest.json +2255 -2213
  4. package/dist/client/assets/AlertDialogRoot-Cc8kVCUa.js +2 -0
  5. package/dist/client/assets/{AnimatedHeight-DcrvwWWb.js → AnimatedHeight-wZzihILs.js} +2 -2
  6. package/dist/client/assets/{AuthSurfaceShell-CFBHG1UK.js → AuthSurfaceShell-DJcUG_EN.js} +2 -2
  7. package/dist/client/assets/{CSPContext-BP4s0CJv.js → CSPContext-BjqtxKhA.js} +2 -2
  8. package/dist/client/assets/ChatGptUsageButton-BDCO7XMy.js +2 -0
  9. package/dist/client/assets/{ChatMarkdown-C6I8N1IH.js → ChatMarkdown-CDno8Ayh.js} +12 -12
  10. package/dist/client/assets/CheckboxIndicator-CuZi7Ixm.js +2 -0
  11. package/dist/client/assets/ClippedText-DPgP0ObI.js +2 -0
  12. package/dist/client/assets/CodexSetupSection.logic-BB9JxUR1.js +2 -0
  13. package/dist/client/assets/ComboboxClear-zheEdyAa.js +2 -0
  14. package/dist/client/assets/ComboboxGroupLabel-BxCdL7I3.js +2 -0
  15. package/dist/client/assets/{CommandBlock-B5S9so33.js → CommandBlock-DQi0VdAG.js} +2 -2
  16. package/dist/client/assets/{ComposerPromptEditor-C7ZRV_6P.js → ComposerPromptEditor-DCjk2_nI.js} +44 -44
  17. package/dist/client/assets/CompositeRoot-Bg5KGYGp.js +2 -0
  18. package/dist/client/assets/{ConnectionStatusDot-Bz5Ps6Bm.js → ConnectionStatusDot-Bx8Imvqc.js} +2 -2
  19. package/dist/client/assets/DesignPageTile-ClF5Va3g.js +2 -0
  20. package/dist/client/assets/DevicePanel-D192Fic3.js +2 -0
  21. package/dist/client/assets/{DeviceSetup-Br_kHy6n.js → DeviceSetup-D9F7F9pV.js} +2 -2
  22. package/dist/client/assets/DialogTitle-CVP748Gv.js +2 -0
  23. package/dist/client/assets/{DiffCommentAnnotation-FcSG-wBG.js → DiffCommentAnnotation-mA-RZ8Su.js} +3 -3
  24. package/dist/client/assets/{DiffFileTree-IIdU6CqP.js → DiffFileTree-CaPQB8J4.js} +2 -2
  25. package/dist/client/assets/DiffPanel-3G1enpU9.js +2 -0
  26. package/dist/client/assets/{DiffWorkerPoolProvider-C_VbNhAr.js → DiffWorkerPoolProvider-BOInEqDW.js} +3 -3
  27. package/dist/client/assets/EmbeddedDesign-D97sS_-D.js +19 -0
  28. package/dist/client/assets/EmbeddedDesign-DYfQOv0y.css +1 -0
  29. package/dist/client/assets/{EnvironmentMachineIcon-b_kKEeAf.js → EnvironmentMachineIcon-B2v_GWgB.js} +2 -2
  30. package/dist/client/assets/{ExpandableText-anFaXhXF.js → ExpandableText-fJVIbCvG.js} +3 -3
  31. package/dist/client/assets/{FieldControl-w2_zp1DT.js → FieldControl-mq4xNgmP.js} +2 -2
  32. package/dist/client/assets/{FileDiff-B-9keGlb.js → FileDiff-DLYKd8S8.js} +2 -2
  33. package/dist/client/assets/{FilePreviewPanel-C1f_ibuL.js → FilePreviewPanel-BCtCBzc7.js} +10 -10
  34. package/dist/client/assets/{FoldedSettingsSection-gN3w1sSZ.js → FoldedSettingsSection-BIr-uvTu.js} +2 -2
  35. package/dist/client/assets/{FormContext-BWWAKTFF.js → FormContext-Vtmj_mkP.js} +2 -2
  36. package/dist/client/assets/{Icons-DzTpHpn1.js → Icons-C0Zjws-3.js} +2 -2
  37. package/dist/client/assets/Input-B0ah2lnC.js +2 -0
  38. package/dist/client/assets/{KeybindingsSettings.logic-D8LAdmvB.js → KeybindingsSettings.logic-D-GClV-c.js} +2 -2
  39. package/dist/client/assets/{NoProjectsHero-CtzChQ7p.js → NoProjectsHero-Dj3URl4e.js} +2 -2
  40. package/dist/client/assets/{P4ConnectAccountPages-B3SBsg6B.js → P4ConnectAccountPages-CFPHk3YU.js} +2 -2
  41. package/dist/client/assets/{P4ConnectSidebarSignIn-DKcaDv93.js → P4ConnectSidebarSignIn-BMrzp8XI.js} +2 -2
  42. package/dist/client/assets/PanelLayoutControls-C1Bf67DQ.js +216 -0
  43. package/dist/client/assets/{PierreEntryIcon-CjZ8gyJq.js → PierreEntryIcon--dw21QmY.js} +2 -2
  44. package/dist/client/assets/PopoverHandle-BT83XTq9.js +2 -0
  45. package/dist/client/assets/PreviewPanel-DCqFsoQM.js +2 -0
  46. package/dist/client/assets/ProjectDefaultsSettings-B4srG1Zj.js +2 -0
  47. package/dist/client/assets/{ProjectFavicon-va5UQPLo.js → ProjectFavicon--HkFaTb7.js} +3 -3
  48. package/dist/client/assets/{ProjectIconPickerDialog-CN2gK_o7.js → ProjectIconPickerDialog-Bl6Uid40.js} +2 -2
  49. package/dist/client/assets/{ProjectMonogram-B3Dkc8yq.js → ProjectMonogram-BUy_N1of.js} +2 -2
  50. package/dist/client/assets/{ProviderAuthTerminal-BSIgib7h.js → ProviderAuthTerminal-njw98kWo.js} +2 -2
  51. package/dist/client/assets/ProviderModelPicker-DBjdgQjr.js +2 -0
  52. package/dist/client/assets/{ProviderSettingsForm-D6zHGIeN.js → ProviderSettingsForm-_kCwzsZ5.js} +2 -2
  53. package/dist/client/assets/PullRequestCodeTab-2OTuKeLP.js +6 -0
  54. package/dist/client/assets/{ReadOnlySourcePreview-BSCVTdYH.js → ReadOnlySourcePreview-BfF8Dhuk.js} +2 -2
  55. package/dist/client/assets/RenderErrorBoundary-CReszKsZ.js +2 -0
  56. package/dist/client/assets/ScheduledTasksSettings-BJ6fD98R.js +4 -0
  57. package/dist/client/assets/{ScopedSwitch-D3fAHI1-.js → ScopedSwitch-QH2iiv6j.js} +2 -2
  58. package/dist/client/assets/{ScrollAreaCorner-CNzfnpwK.js → ScrollAreaCorner-3gSiyg8H.js} +2 -2
  59. package/dist/client/assets/{SecretInput-D7hYUoFA.js → SecretInput-itt3KL-b.js} +2 -2
  60. package/dist/client/assets/SelectScrollUpArrow-D_o_f6Fh.js +2 -0
  61. package/dist/client/assets/{SettingsPanels-6SOZMWhg.js → SettingsPanels-BRQsxDAj.js} +7 -7
  62. package/dist/client/assets/{SettingsPanels.logic-CMErdEeV.js → SettingsPanels.logic-DADnLbJa.js} +2 -2
  63. package/dist/client/assets/{SettingsScopeNotice-CyzbYUPJ.js → SettingsScopeNotice-D8WXgfaz.js} +2 -2
  64. package/dist/client/assets/{ThemeEditorPanel-vZ4MSCBx.js → ThemeEditorPanel-UEzfMVAc.js} +3 -3
  65. package/dist/client/assets/ThreadTerminalDrawer-Do19kCZu.js +5 -0
  66. package/dist/client/assets/TooltipViewport-DJ2VRKCt.js +2 -0
  67. package/dist/client/assets/{Virtualizer-CoK0zXAG.js → Virtualizer-BSpDafyf.js} +2 -2
  68. package/dist/client/assets/{WorkspaceBreadcrumb-qAYKTgm8.js → WorkspaceBreadcrumb-B5ZV6VNj.js} +2 -2
  69. package/dist/client/assets/{WorkspacePageContainer-D6i--Hwz.js → WorkspacePageContainer-BTN44jG6.js} +2 -2
  70. package/dist/client/assets/{WorkspacePageHeader-covOFYhv.js → WorkspacePageHeader-BaCxaW-R.js} +2 -2
  71. package/dist/client/assets/_chat-D4YotsBW.js +45 -0
  72. package/dist/client/assets/_chat.design-BPvdgNpo.js +2 -0
  73. package/dist/client/assets/{_chat.index-C3PnT6ae.js → _chat.index-Z_VqAv7I.js} +2 -2
  74. package/dist/client/assets/{_chat.new-CxErZ7CC.js → _chat.new-DOi-AUHb.js} +3 -3
  75. package/dist/client/assets/_chat.pull-requests-6QyjmUBZ.js +2 -0
  76. package/dist/client/assets/{abnfDiagram-VCTEODGH-CWxKS58m.js → abnfDiagram-VCTEODGH--jeYDB6y.js} +2 -2
  77. package/dist/client/assets/{alert-DsgAHDNi.js → alert-CdZT7d18.js} +2 -2
  78. package/dist/client/assets/architecture-7GRP2DOG-5FKzTtFB.js +1 -0
  79. package/dist/client/assets/{architectureDiagram-5GKGNRK7-kc6KNP-H.js → architectureDiagram-5GKGNRK7-CZT297Q4.js} +2 -2
  80. package/dist/client/assets/assets-CJFG5Oow.js +2 -0
  81. package/dist/client/assets/{blockDiagram-I7D4REHJ-CFJYOAbd.js → blockDiagram-I7D4REHJ-EkNtHyvf.js} +2 -2
  82. package/dist/client/assets/{browserHistoryStore-DjDw15jq.js → browserHistoryStore-DO5WuJ8O.js} +2 -2
  83. package/dist/client/assets/{browserLinkTarget-Br8BmA6w.js → browserLinkTarget-CJGymzWC.js} +2 -2
  84. package/dist/client/assets/{c4Diagram-7LVT6UL2-Sxaodxxv.js → c4Diagram-7LVT6UL2-CWpB4Da8.js} +2 -2
  85. package/dist/client/assets/channel-mtMr1s7n.js +2 -0
  86. package/dist/client/assets/{checkbox-D33R1soh.js → checkbox-Q0bv8RvC.js} +2 -2
  87. package/dist/client/assets/{chunk-4HAMMTFA-CxocYFD0.js → chunk-4HAMMTFA-DmxkShmg.js} +2 -2
  88. package/dist/client/assets/{chunk-75Z2AOVW-CBCO5Noa.js → chunk-75Z2AOVW-DR0PpYOm.js} +2 -2
  89. package/dist/client/assets/{chunk-DU6HZSFF-CEaklbmE.js → chunk-DU6HZSFF-BO8x-KoS.js} +2 -2
  90. package/dist/client/assets/{chunk-F27PBJKO-Iw-0qjF9.js → chunk-F27PBJKO-Bj6z3Mgi.js} +2 -2
  91. package/dist/client/assets/{chunk-GMAD6QVW-CbDVrypn.js → chunk-GMAD6QVW-DDPfmhbi.js} +2 -2
  92. package/dist/client/assets/{chunk-GVQU2GXP-BEqmpgLD.js → chunk-GVQU2GXP-Dt2y3Ljq.js} +2 -2
  93. package/dist/client/assets/{chunk-IMKFNOWR-bgZmQWS5.js → chunk-IMKFNOWR-ulVnFkwU.js} +2 -2
  94. package/dist/client/assets/{chunk-L3NEJ4N5-LW_IXl13.js → chunk-L3NEJ4N5-Bq_d7JXK.js} +2 -2
  95. package/dist/client/assets/{chunk-OSK3NFVY-DvGdSD7J.js → chunk-OSK3NFVY-D3zjZoqS.js} +2 -2
  96. package/dist/client/assets/{chunk-P2QGCYS3-BAXEcEik.js → chunk-P2QGCYS3-BO8zGK2Q.js} +2 -2
  97. package/dist/client/assets/{chunk-POPQ4Y6H-yM2kH99r.js → chunk-POPQ4Y6H-gzBrIuwg.js} +2 -2
  98. package/dist/client/assets/{chunk-PWAF6VOD-B19ZyrVH.js → chunk-PWAF6VOD-D5kNvXnl.js} +2 -2
  99. package/dist/client/assets/{chunk-SHT3W25Y-BhcwXJOc.js → chunk-SHT3W25Y-BUoRhLSC.js} +2 -2
  100. package/dist/client/assets/{chunk-SVP7TREG-B9xbRF9R.js → chunk-SVP7TREG-Bjv2VnZc.js} +2 -2
  101. package/dist/client/assets/{chunk-TICWLB2K-D_VEGQbw.js → chunk-TICWLB2K-DAdtg5Kx.js} +2 -2
  102. package/dist/client/assets/classDiagram-ZZMXUADV-B1oFCLrU.js +2 -0
  103. package/dist/client/assets/classDiagram-v2-VYDZK3BY-B1oFCLrU.js +2 -0
  104. package/dist/client/assets/{color-picker-D3b0sEoy.js → color-picker-BWZhsiZJ.js} +2 -2
  105. package/dist/client/assets/{combobox-DzFRsaks.js → combobox-BdGKdc6i.js} +2 -2
  106. package/dist/client/assets/{command-IDMJ6pXc.js → command-CIj8Rufv.js} +2 -2
  107. package/dist/client/assets/composer-logic-LXlav2Vb.js +6 -0
  108. package/dist/client/assets/{composerDraftUploads-Qq0xOGEc.js → composerDraftUploads-ykQlcbPE.js} +2 -2
  109. package/dist/client/assets/{connect-BTIPE2au.js → connect-BtrTxy8-.js} +2 -2
  110. package/dist/client/assets/{connect-agent-hbkOBaFx.js → connect-agent-CVmArWh1.js} +2 -2
  111. package/dist/client/assets/{cynefin-OW5HDTMX-CWOcHmwk.js → cynefin-OW5HDTMX-DOViMxbO.js} +1 -1
  112. package/dist/client/assets/{cynefinDiagram-5FMLGOSQ-ksIfZeWS.js → cynefinDiagram-5FMLGOSQ-BWRCt23-.js} +2 -2
  113. package/dist/client/assets/{dagre-GXQ25YYZ-D7qz-Azr.js → dagre-GXQ25YYZ-DgnOAR1P.js} +2 -2
  114. package/dist/client/assets/design-D2FoGDbP.js +2 -0
  115. package/dist/client/assets/device-CdLsoK0D.js +2 -0
  116. package/dist/client/assets/{diagram-S7CK7UJ4-IBhHReDK.js → diagram-S7CK7UJ4-C-BUdvbR.js} +2 -2
  117. package/dist/client/assets/{diagram-UQ7AKVKN-EX7tFJEV.js → diagram-UQ7AKVKN-CYox921O.js} +2 -2
  118. package/dist/client/assets/{diagram-VSXAHHWV-BEHOoBER.js → diagram-VSXAHHWV-CCHV1RQz.js} +2 -2
  119. package/dist/client/assets/{diagram-VX7I27RA-Df_ThjhC.js → diagram-VX7I27RA-B4SkxxZx.js} +2 -2
  120. package/dist/client/assets/{diagram-Z3DM3KII-DudywHX4.js → diagram-Z3DM3KII-D80OJGVQ.js} +2 -2
  121. package/dist/client/assets/{dialog-YpQOq7Ug.js → dialog-Cgb4jap2.js} +2 -2
  122. package/dist/client/assets/{diffRendering-CgLbOp0J.js → diffRendering-CdquEtfn.js} +2 -2
  123. package/dist/client/assets/{discovery-list-CnlrZrDo.js → discovery-list-DXkskf2A.js} +2 -2
  124. package/dist/client/assets/{dist-usNgCtd_.js → dist-DWlOCBGN.js} +5 -5
  125. package/dist/client/assets/{draft-input-DW6EgVbF.js → draft-input-DQxVE9YJ.js} +2 -2
  126. package/dist/client/assets/{duoViewer-CgVOZcYe.js → duoViewer-Cig0lw70.js} +2 -2
  127. package/dist/client/assets/{dynamic-C1qIL2Wy.js → dynamic-DUhOBcsP.js} +3 -3
  128. package/dist/client/assets/{ebnfDiagram-PWID7BFC-DPJg2C3n.js → ebnfDiagram-PWID7BFC-AJpsDjYU.js} +2 -2
  129. package/dist/client/assets/{embeddedScripts-CAZM4r8Y.js → embeddedScripts-DVwzRCwI.js} +2 -2
  130. package/dist/client/assets/{empty-QSN6WiRO.js → empty-DHl8_LXy.js} +2 -2
  131. package/dist/client/assets/entities-BBhhC0Ry.js +2 -0
  132. package/dist/client/assets/{erDiagram-RLTQ6QDP-BySDEjHG.js → erDiagram-RLTQ6QDP-qU4wtJw2.js} +2 -2
  133. package/dist/client/assets/eventmodeling-NTZA5JFV-CIzOZUSe.js +1 -0
  134. package/dist/client/assets/{fileLinks-ShhGM_AF.js → fileLinks-16LrhkMX.js} +2 -2
  135. package/dist/client/assets/{fileTreeExpansion-DZnEBuaB.js → fileTreeExpansion-BwModZ8t.js} +2 -2
  136. package/dist/client/assets/flowDiagram-HODETNUW-G6NoS3v2.js +1 -0
  137. package/dist/client/assets/{ganttDiagram-EL5Y4UJY-CJAhE7we.js → ganttDiagram-EL5Y4UJY-CMa5sD7U.js} +2 -2
  138. package/dist/client/assets/{getDiffFileInput-BxuEGdnM.js → getDiffFileInput-CMp2lO2J.js} +2 -2
  139. package/dist/client/assets/git-compare-CCnx9obs.js +2 -0
  140. package/dist/client/assets/{gitGraph-4MIJSDKK-BqKoI8Rd.js → gitGraph-4MIJSDKK-d8ivfU97.js} +1 -1
  141. package/dist/client/assets/{gitGraphDiagram-WWUBYQGX-BPFwoaRw.js → gitGraphDiagram-WWUBYQGX-dltGGWCt.js} +2 -2
  142. package/dist/client/assets/{guideRunStore-CYD68wqk.js → guideRunStore-CKZDf9-2.js} +2 -2
  143. package/dist/client/assets/{htmlRender-p6atQGoW.js → htmlRender-BUb_wWp9.js} +2 -2
  144. package/dist/client/assets/{index-CnQWjeBY.js → index-oiPu1asR.js} +3 -3
  145. package/dist/client/assets/{info-A6RAGUB7-R8j64K2s.js → info-A6RAGUB7-B_ozJ3Df.js} +1 -1
  146. package/dist/client/assets/{infoDiagram-27XIBGKW-DFqL9n-v.js → infoDiagram-27XIBGKW-BiB0fE5_.js} +2 -2
  147. package/dist/client/assets/{input-Df_UyHLk.js → input-D_jxqXLR.js} +2 -2
  148. package/dist/client/assets/{input-group-CpRPTpIU.js → input-group-BM_USnbh.js} +2 -2
  149. package/dist/client/assets/{ishikawaDiagram-5VMMS53U-C-786VMl.js → ishikawaDiagram-5VMMS53U-DhfuI9PX.js} +2 -2
  150. package/dist/client/assets/{journeyDiagram-3NMN7TZE-lzAoDD4e.js → journeyDiagram-3NMN7TZE-8alknR0e.js} +2 -2
  151. package/dist/client/assets/{kanban-definition-UXKFOSKX-CJDCWAxz.js → kanban-definition-UXKFOSKX-IrCQ1z1D.js} +2 -2
  152. package/dist/client/assets/{kbd-BWmfbdyt.js → kbd-B2uytHus.js} +2 -2
  153. package/dist/client/assets/{keybindings-Cwx4RZou.js → keybindings-CqjUKNRx.js} +2 -2
  154. package/dist/client/assets/{lazyRouteComponent-AWcDof8d.js → lazyRouteComponent-CByGrW41.js} +2 -2
  155. package/dist/client/assets/{line-BV7EkscB.js → line-wwHo_z2p.js} +2 -2
  156. package/dist/client/assets/{link-ymnjoepm.js → link-BjP3qTK9.js} +2 -2
  157. package/dist/client/assets/{linkedPrompt-D1v0zLjD.js → linkedPrompt-P6UqYCja.js} +2 -2
  158. package/dist/client/assets/main-COMts6-0.js +28 -0
  159. package/dist/client/assets/main-Dwir4BoC.css +2 -0
  160. package/dist/client/assets/{mediaReference-DjHCSaNZ.js → mediaReference-C10FT-nO.js} +2 -2
  161. package/dist/client/assets/mediaSource-tGWQYhPt.js +2 -0
  162. package/dist/client/assets/{mermaid-parser.core-dhHCExtt.js → mermaid-parser.core-YE1Gxotj.js} +4 -4
  163. package/dist/client/assets/{mermaid.core-DixI3w-9.js → mermaid.core-DE9uOpTH.js} +5 -5
  164. package/dist/client/assets/{mindmap-definition-YA3MSWOX-BHehI_9I.js → mindmap-definition-YA3MSWOX-CLa2hbBW.js} +2 -2
  165. package/dist/client/assets/number-field-Dj0uYTJQ.js +2 -0
  166. package/dist/client/assets/{observeResize-uogErzin.js → observeResize-jHx61cGA.js} +2 -2
  167. package/dist/client/assets/onboarding-DCwprQF7.js +2 -0
  168. package/dist/client/assets/openFileInPreview-Dj9ZUFfJ.js +2 -0
  169. package/dist/client/assets/{p4ProjectFile-B9fwmcbM.js → p4ProjectFile-DfE23uqD.js} +2 -2
  170. package/dist/client/assets/{packet-AYTQ26CC-DhFsyjVR.js → packet-AYTQ26CC-Be9nXFns.js} +1 -1
  171. package/dist/client/assets/{pair-DJbA4cVs.js → pair-CZDxH6ja.js} +2 -2
  172. package/dist/client/assets/{pegDiagram-XKGWAZYB-DBKpIU8U.js → pegDiagram-XKGWAZYB-C230ixTv.js} +2 -2
  173. package/dist/client/assets/pendingSendStore-CaGsppQi.js +2 -0
  174. package/dist/client/assets/{phoneViewer-CywOkDco.js → phoneViewer-CdFM4t6r.js} +2 -2
  175. package/dist/client/assets/{pie-WAS4IAKB-cW3as8Lm.js → pie-WAS4IAKB-DdxLVm9y.js} +1 -1
  176. package/dist/client/assets/{pieDiagram-E7YTZNPT-CuM-4V4_.js → pieDiagram-E7YTZNPT-AK3e5d1A.js} +2 -2
  177. package/dist/client/assets/{pierre-icons-Bhwlc2rO.js → pierre-icons-BodtO6xC.js} +2 -2
  178. package/dist/client/assets/{popover-2GkuSL2i.js → popover-2XJd3KEJ.js} +2 -2
  179. package/dist/client/assets/{preview-BnLuRquy.js → preview-8bBtJM5H.js} +2 -2
  180. package/dist/client/assets/{preview-DWVmLubs.js → preview-x-GNJPih.js} +2 -2
  181. package/dist/client/assets/{previewMiniPlayerStore-B2cko9-z.js → previewMiniPlayerStore-DMd0mA7a.js} +2 -2
  182. package/dist/client/assets/primary-BDy4SXjC.js +2 -0
  183. package/dist/client/assets/primaryCloudLinkState--Kh80aBj.js +2 -0
  184. package/dist/client/assets/projectFilesQueryState-Bb-3twEo.js +2 -0
  185. package/dist/client/assets/projectScriptEditor-CAk1a7Bv.js +2 -0
  186. package/dist/client/assets/{providerSkills-OICI2srI.js → providerSkills-9AaADmXt.js} +2 -2
  187. package/dist/client/assets/{pullRequestDetail.logic-DT8Qo5OA.js → pullRequestDetail.logic-Fv7ouL_B.js} +4 -4
  188. package/dist/client/assets/{pullRequestIcons-BBzWaymE.js → pullRequestIcons-e8EZW8_y.js} +2 -2
  189. package/dist/client/assets/{pullRequestReviewStore-DKeU327h.js → pullRequestReviewStore-DJx8EOVl.js} +2 -2
  190. package/dist/client/assets/pullRequests-I9yJXxf5.js +2 -0
  191. package/dist/client/assets/{quadrantDiagram-AXDQQJYC-DSJ5VFnE.js → quadrantDiagram-AXDQQJYC-CcagVHbG.js} +2 -2
  192. package/dist/client/assets/queries-DY5q7KFy.js +2 -0
  193. package/dist/client/assets/query-BFP47tsD.js +2 -0
  194. package/dist/client/assets/{radar-RG4KPBEZ-CfIGvIx_.js → radar-RG4KPBEZ-YiDR7Sp-.js} +1 -1
  195. package/dist/client/assets/radio-group-BNV16qlg.js +2 -0
  196. package/dist/client/assets/{railroad-74A4TZTK-DB4Av5dd.js → railroad-74A4TZTK-Cg9vU93U.js} +1 -1
  197. package/dist/client/assets/railroad-abnf-HS5TGJTU-CFQBiMqT.js +1 -0
  198. package/dist/client/assets/railroad-ebnf-LZEXJU2U-KvUMMzpJ.js +1 -0
  199. package/dist/client/assets/railroad-peg-WCYAUIDC-ps7Jjity.js +1 -0
  200. package/dist/client/assets/{railroadDiagram-O6MQD6OU-cpv2Uyk5.js → railroadDiagram-O6MQD6OU-DKJFQoet.js} +2 -2
  201. package/dist/client/assets/{renderScheduler-h5pQXGNH.js → renderScheduler-skv2ZK84.js} +2 -2
  202. package/dist/client/assets/{requirementDiagram-BXWQKSXE-DYwMIoLP.js → requirementDiagram-BXWQKSXE-CsnTqOO2.js} +2 -2
  203. package/dist/client/assets/rightPanelStore-XfAJpUIA.js +2 -0
  204. package/dist/client/assets/runtime-BSS7jQw6.js +2 -0
  205. package/dist/client/assets/runtime-D-mOwjrE.js +6 -0
  206. package/dist/client/assets/runtimeModeConfig-sQBlbgY3.js +2 -0
  207. package/dist/client/assets/{sankeyDiagram-P5KCCOFB-BqmXJBYG.js → sankeyDiagram-P5KCCOFB-DkydPO4_.js} +2 -2
  208. package/dist/client/assets/{scheduledTasksSettings.logic-Cg8SF9mr.js → scheduledTasksSettings.logic-C-rCAoCn.js} +3 -3
  209. package/dist/client/assets/{scroll-area-0-l4q4Pk.js → scroll-area-DORwTFtw.js} +2 -2
  210. package/dist/client/assets/{select-Dhapqr3j.js → select-Bsag72zE.js} +2 -2
  211. package/dist/client/assets/{sequenceDiagram-WJ2MYXX4-h3AJox3t.js → sequenceDiagram-WJ2MYXX4-Df0N4Qqb.js} +2 -2
  212. package/dist/client/assets/server-WufAYYa2.js +2 -0
  213. package/dist/client/assets/session-logic-VyTvpA5f.js +26 -0
  214. package/dist/client/assets/session-pjgqVscl.js +2 -0
  215. package/dist/client/assets/{settings-CGf9Ad5Y.js → settings-CsOciX79.js} +2 -2
  216. package/dist/client/assets/settings.appearance-BTa_DZJP.js +2 -0
  217. package/dist/client/assets/settings.archived-5E_Gxvpz.js +2 -0
  218. package/dist/client/assets/{settings.computer-use-C3SE4DHj.js → settings.computer-use-0aB9RoDX.js} +2 -2
  219. package/dist/client/assets/settings.connections-DUkG_06v.js +2 -0
  220. package/dist/client/assets/{settings.data-controls-DjgZVIMy.js → settings.data-controls-Cn2MWFbv.js} +2 -2
  221. package/dist/client/assets/{settings.decisions-z3RVOG7-.js → settings.decisions-nRlfWokn.js} +2 -2
  222. package/dist/client/assets/settings.designs-CYIwYmP5.js +2 -0
  223. package/dist/client/assets/settings.diagnostics-pCb9rEgL.js +2 -0
  224. package/dist/client/assets/settings.general-DPkJcwHC.js +2 -0
  225. package/dist/client/assets/settings.integrations-DVMeSb1K.js +2 -0
  226. package/dist/client/assets/{settings.keybindings-D78CWKIy.js → settings.keybindings-PZlDKFMi.js} +2 -2
  227. package/dist/client/assets/{settings.open-source-licenses-BhpBR1nY.js → settings.open-source-licenses-CoY0kkph.js} +2 -2
  228. package/dist/client/assets/{settings.plugins-d9-jrUr-.js → settings.plugins-DCo7nzjN.js} +4 -4
  229. package/dist/client/assets/settings.projects-iA51Y3aj.js +4 -0
  230. package/dist/client/assets/settings.providers-BkUKaZF-.js +3 -0
  231. package/dist/client/assets/settings.scheduled-tasks-C0FpV34l.js +2 -0
  232. package/dist/client/assets/settings.snap-shot-C29-fDJw.js +2 -0
  233. package/dist/client/assets/settings.source-control-CqLszsPJ.js +2 -0
  234. package/dist/client/assets/{settings.storage-D6vDu4vG.js → settings.storage-JCo0X6p0.js} +2 -2
  235. package/dist/client/assets/settingsLayout-DkRcMtAs.js +3 -0
  236. package/dist/client/assets/{sidebar-DTT0HQ9J.js → sidebar-CV_a9dPF.js} +2 -2
  237. package/dist/client/assets/{sidebarProjectGrouping-JqsedUb6.js → sidebarProjectGrouping-C94BzdFc.js} +2 -2
  238. package/dist/client/assets/{skeleton-D-FcvmF0.js → skeleton-Bq50sEah.js} +2 -2
  239. package/dist/client/assets/{sourceControl-CrjTZJC-.js → sourceControl-BvubWC9K.js} +2 -2
  240. package/dist/client/assets/{sourceControlClients-DYQ3gMZ2.js → sourceControlClients-DKVeNHGN.js} +2 -2
  241. package/dist/client/assets/{spinner-AJeHmaWN.js → spinner-Bzrp5oww.js} +2 -2
  242. package/dist/client/assets/{standalone-page-Df29sgRU.js → standalone-page-BGqmgLmI.js} +2 -2
  243. package/dist/client/assets/{stateDiagram-D77RDMKH-C0KiABVq.js → stateDiagram-D77RDMKH-Ctp0qVPg.js} +2 -2
  244. package/dist/client/assets/stateDiagram-v2-MP3YSRHH-DTjnbS5I.js +2 -0
  245. package/dist/client/assets/{swimlanes-42K2YHIH-BdAWIkuy.js → swimlanes-42K2YHIH-_LIKBAWu.js} +2 -2
  246. package/dist/client/assets/swimlanesDiagram-VR7AAH4N-BEo2_7TC.js +9 -0
  247. package/dist/client/assets/{terminal-links-BjKL3dH7.js → terminal-links-DHw7nXFF.js} +2 -2
  248. package/dist/client/assets/{terminalSessions-dkFe-6qM.js → terminalSessions-WR45SySR.js} +2 -2
  249. package/dist/client/assets/{textarea-CqADnND1.js → textarea-wDfYVvpo.js} +2 -2
  250. package/dist/client/assets/{themePalette-Co4xeJnW.js → themePalette-CLR_iiPi.js} +3 -3
  251. package/dist/client/assets/{timeline-definition-24CTP7MA-CkYp2QT_.js → timeline-definition-24CTP7MA--fH4g9Xi.js} +2 -2
  252. package/dist/client/assets/toast-x69BFrW5.js +2 -0
  253. package/dist/client/assets/{toggle-BM8lnQ29.js → toggle-ExdxBJoI.js} +2 -2
  254. package/dist/client/assets/{toggle-group-DaqkIApY.js → toggle-group-Clz6KDtW.js} +2 -2
  255. package/dist/client/assets/{tooltip-ngKqo-lA.js → tooltip-D-SzZpgJ.js} +2 -2
  256. package/dist/client/assets/{treeView-Q6P3EWNA-YWYRI1IG.js → treeView-Q6P3EWNA-BYF4NjYA.js} +1 -1
  257. package/dist/client/assets/{treemap-WGGIJYW6-DOqHNCbg.js → treemap-WGGIJYW6-DTEnfmuA.js} +1 -1
  258. package/dist/client/assets/{uiStateStore-Ddhpg65j.js → uiStateStore-CP4WDmc8.js} +3 -3
  259. package/dist/client/assets/usage-C8NW06hk.js +2 -0
  260. package/dist/client/assets/{usageAccess-AcIxVQqJ.js → usageAccess-ZgmQIiWk.js} +2 -2
  261. package/dist/client/assets/{usageFormat-BXW38hCK.js → usageFormat-C54RJiV9.js} +2 -2
  262. package/dist/client/assets/{usageShortcuts-Qkdifm3k.js → usageShortcuts-B3af64g0.js} +2 -2
  263. package/dist/client/assets/{use-atom-command-BJxdfyHC.js → use-atom-command-rhVarDA8.js} +2 -2
  264. package/dist/client/assets/{useAriaLabelledBy-C0a8QEEb.js → useAriaLabelledBy-BG5RCb1o.js} +2 -2
  265. package/dist/client/assets/useHandleNewThread-Bhl1v82B.js +2 -0
  266. package/dist/client/assets/{useLocation-BQDC59xg.js → useLocation-7uJHNdPS.js} +2 -2
  267. package/dist/client/assets/useNavigate-DCj963r2.js +2 -0
  268. package/dist/client/assets/{useNavigateBack-BH5As9D1.js → useNavigateBack-DpCLZais.js} +2 -2
  269. package/dist/client/assets/{useP4ConnectAuthPrompt-DHu7R38-.js → useP4ConnectAuthPrompt-ubtmHQ6f.js} +2 -2
  270. package/dist/client/assets/{useParams-BMa26XZG.js → useParams-Br7l7qPU.js} +2 -2
  271. package/dist/client/assets/{usePermissionStatus-CUViQRYY.js → usePermissionStatus-SyBwmFSK.js} +2 -2
  272. package/dist/client/assets/{usePullRequestActions-DGkavykA.js → usePullRequestActions-Djf1UHJs.js} +3 -3
  273. package/dist/client/assets/{useRegisterFieldControl-CosvijuC.js → useRegisterFieldControl-qXOWsCr5.js} +2 -2
  274. package/dist/client/assets/{useScopedModelAvailability-DOJzIjns.js → useScopedModelAvailability-BAzgc0gB.js} +2 -2
  275. package/dist/client/assets/useSettings-BNs1IeKk.js +3 -0
  276. package/dist/client/assets/utils-hgbJ2TVM.js +37 -0
  277. package/dist/client/assets/vcsRefInvalidation-DmqB0sWy.js +2 -0
  278. package/dist/client/assets/{vennDiagram-4TSXK5OY-DvpVodA1.js → vennDiagram-4TSXK5OY-BzIqk05W.js} +2 -2
  279. package/dist/client/assets/{wardley-WFR3VGLG-CW8u1RAF.js → wardley-WFR3VGLG-CWuiB19I.js} +1 -1
  280. package/dist/client/assets/{wardleyDiagram-VM6X3IG4-B34GmEPm.js → wardleyDiagram-VM6X3IG4-C3KRakQk.js} +2 -2
  281. package/dist/client/assets/welcome-BFUhADQd.js +2 -0
  282. package/dist/client/assets/{xychartDiagram-S5SC5T6Z-Ds5Ioly5.js → xychartDiagram-S5SC5T6Z-cK0SAbmi.js} +2 -2
  283. package/dist/client/index.html +1 -1
  284. package/dist/{renderer-ClrN4p2R.mjs → renderer-U6GevbYv.mjs} +2 -2
  285. package/dist/{runtime-BQydA64s.mjs → runtime-Cui_uQWU.mjs} +88 -5
  286. package/package.json +1 -1
  287. package/dist/client/assets/AlertDialogRoot-DCfR_LaK.js +0 -2
  288. package/dist/client/assets/ChatGptUsageButton-CoiZRjaS.js +0 -2
  289. package/dist/client/assets/CheckboxIndicator-DcH9EpvK.js +0 -2
  290. package/dist/client/assets/CodexSetupSection.logic-sXohw-MK.js +0 -2
  291. package/dist/client/assets/CollapsiblePanel-FknKvWoA.js +0 -2
  292. package/dist/client/assets/ComboboxClear-RsGmZUJN.js +0 -2
  293. package/dist/client/assets/ComboboxGroupLabel-DO1lnPnr.js +0 -2
  294. package/dist/client/assets/CompositeRoot-DDZcK2m0.js +0 -2
  295. package/dist/client/assets/DevicePanel-DmfTFNuU.js +0 -2
  296. package/dist/client/assets/DialogTitle-Dr-LJLpq.js +0 -2
  297. package/dist/client/assets/DiffPanel-CEx8f_mo.js +0 -2
  298. package/dist/client/assets/EmbeddedDesign-DmybFtYo.css +0 -1
  299. package/dist/client/assets/EmbeddedDesign-Hba9k7LF.js +0 -19
  300. package/dist/client/assets/Input-DCMTYdrA.js +0 -2
  301. package/dist/client/assets/PanelLayoutControls-CCYVBazN.js +0 -216
  302. package/dist/client/assets/PopoverHandle-1bqR8KHF.js +0 -2
  303. package/dist/client/assets/PreviewPanel-Kq4mVufQ.js +0 -2
  304. package/dist/client/assets/ProjectDefaultsSettings-DUCUj4oc.js +0 -2
  305. package/dist/client/assets/ProviderModelPicker-BrEkNDPF.js +0 -2
  306. package/dist/client/assets/PullRequestCodeTab-DA-5pWeg.js +0 -6
  307. package/dist/client/assets/RenderErrorBoundary-yWjbnzsc.js +0 -2
  308. package/dist/client/assets/ScheduledTasksSettings-B1bSNXTP.js +0 -4
  309. package/dist/client/assets/SelectScrollUpArrow-kQBsA9rk.js +0 -2
  310. package/dist/client/assets/ThreadTerminalDrawer-BU_DR6wu.js +0 -5
  311. package/dist/client/assets/TooltipViewport-CG7gtflQ.js +0 -2
  312. package/dist/client/assets/_chat-DMXSEEst.js +0 -45
  313. package/dist/client/assets/_chat.pull-requests-w2FCKIZ8.js +0 -2
  314. package/dist/client/assets/architecture-7GRP2DOG-BVExhwPq.js +0 -1
  315. package/dist/client/assets/assets-DW8sK93I.js +0 -2
  316. package/dist/client/assets/channel-BLnKdGtk.js +0 -2
  317. package/dist/client/assets/classDiagram-ZZMXUADV-B839piSM.js +0 -2
  318. package/dist/client/assets/classDiagram-v2-VYDZK3BY-B839piSM.js +0 -2
  319. package/dist/client/assets/composer-logic-CEsP6SV6.js +0 -6
  320. package/dist/client/assets/design-B7V20I1i.js +0 -2
  321. package/dist/client/assets/device-DX-G6J1j.js +0 -2
  322. package/dist/client/assets/entities-Bj5ceyfn.js +0 -2
  323. package/dist/client/assets/eventmodeling-NTZA5JFV-CrSSBuUT.js +0 -1
  324. package/dist/client/assets/flowDiagram-HODETNUW-GdATwCAd.js +0 -1
  325. package/dist/client/assets/git-compare-DW_c6fci.js +0 -2
  326. package/dist/client/assets/main-Byysx0nX.css +0 -2
  327. package/dist/client/assets/main-D8FWUaO_.js +0 -26
  328. package/dist/client/assets/mediaSource-DrVcMaQl.js +0 -2
  329. package/dist/client/assets/number-field-BHWzsgFF.js +0 -2
  330. package/dist/client/assets/onboarding-BkSIwdaJ.js +0 -2
  331. package/dist/client/assets/openFileInPreview-3vlmqdKv.js +0 -2
  332. package/dist/client/assets/primary-CKEI970r.js +0 -2
  333. package/dist/client/assets/primaryCloudLinkState-CwxbxrZn.js +0 -2
  334. package/dist/client/assets/projectFilesQueryState-45r9sIZp.js +0 -2
  335. package/dist/client/assets/projectScriptEditor-CI1LZs9V.js +0 -2
  336. package/dist/client/assets/pullRequests-DLPX2CY-.js +0 -2
  337. package/dist/client/assets/queries-lVyDrFzk.js +0 -2
  338. package/dist/client/assets/query-tgXMuDtS.js +0 -2
  339. package/dist/client/assets/radio-group-CJu78gKo.js +0 -2
  340. package/dist/client/assets/railroad-abnf-HS5TGJTU-Ce_EhWE2.js +0 -1
  341. package/dist/client/assets/railroad-ebnf-LZEXJU2U-BWrImE-J.js +0 -1
  342. package/dist/client/assets/railroad-peg-WCYAUIDC-BydBUlqT.js +0 -1
  343. package/dist/client/assets/rightPanelStore-Csibei0O.js +0 -2
  344. package/dist/client/assets/runtime-DATbE5vH.js +0 -6
  345. package/dist/client/assets/runtime-Dks8Wo5P.js +0 -2
  346. package/dist/client/assets/runtimeModeConfig-n1vq0Zzd.js +0 -2
  347. package/dist/client/assets/server-rxH1493J.js +0 -2
  348. package/dist/client/assets/session-Bgs0dTwK.js +0 -2
  349. package/dist/client/assets/session-logic-BuYRdtPc.js +0 -26
  350. package/dist/client/assets/settings.appearance-DV608fbL.js +0 -2
  351. package/dist/client/assets/settings.archived-Cav4CAd_.js +0 -2
  352. package/dist/client/assets/settings.connections-C9Kh1b2k.js +0 -2
  353. package/dist/client/assets/settings.designs-DgLVIZOE.js +0 -2
  354. package/dist/client/assets/settings.diagnostics-CaXx9YEU.js +0 -2
  355. package/dist/client/assets/settings.general-BOpvFj1F.js +0 -2
  356. package/dist/client/assets/settings.integrations-MHjX-SLC.js +0 -2
  357. package/dist/client/assets/settings.projects-BiDMtruF.js +0 -4
  358. package/dist/client/assets/settings.providers-BarMZxaG.js +0 -3
  359. package/dist/client/assets/settings.scheduled-tasks-BA_O1-Fn.js +0 -2
  360. package/dist/client/assets/settings.snap-shot-Crh49RtQ.js +0 -2
  361. package/dist/client/assets/settings.source-control-DIrrX9Dt.js +0 -2
  362. package/dist/client/assets/settingsLayout-BQsOdImg.js +0 -3
  363. package/dist/client/assets/stateDiagram-v2-MP3YSRHH-DlcRyn96.js +0 -2
  364. package/dist/client/assets/swimlanesDiagram-VR7AAH4N-lbxQDJ07.js +0 -9
  365. package/dist/client/assets/toast-gFAddE-Q.js +0 -2
  366. package/dist/client/assets/usage-B3PzCXST.js +0 -2
  367. package/dist/client/assets/useHandleNewThread-BUYzfgdc.js +0 -2
  368. package/dist/client/assets/useNavigate-BziZQ-Vx.js +0 -2
  369. package/dist/client/assets/useSettings-B_WzhJqU.js +0 -3
  370. package/dist/client/assets/utils-BctiQ4Ue.js +0 -37
  371. package/dist/client/assets/vcsRefInvalidation-cn2N4Xey.js +0 -2
  372. package/dist/client/assets/welcome-DEFnpzjQ.js +0 -2
@@ -1,4 +1,4 @@
1
- import{n as e,t}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as n}from"./src-oBChb5qS.js";import{H as r,K as i,U as a,a as o,b as s,v as c,w as l,x as u,y as d}from"./chunk-DU6HZSFF-CEaklbmE.js";import{g as f}from"./chunk-75Z2AOVW-CBCO5Noa.js";import"./chunk-PWAF6VOD-B19ZyrVH.js";import"./chunk-GMAD6QVW-CbDVrypn.js";import"./chunk-P2QGCYS3-BAXEcEik.js";import"./chunk-4HAMMTFA-CxocYFD0.js";import"./chunk-GVQU2GXP-BEqmpgLD.js";import"./chunk-OSK3NFVY-DvGdSD7J.js";import{t as p}from"./chunk-XXDRQBXY-BvKO0v-W.js";import{t as m}from"./chunk-POPQ4Y6H-yM2kH99r.js";import"./chunk-L3NEJ4N5-LW_IXl13.js";import{d as h,u as g}from"./mermaid.core-DixI3w-9.js";var _=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,3],r=[1,4],i=[1,5],a=[1,6],o=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],s=[1,22],c=[2,7],l=[1,26],u=[1,27],d=[1,28],f=[1,29],p=[1,33],m=[1,34],h=[1,35],g=[1,36],_=[1,37],v=[1,38],y=[1,24],b=[1,31],x=[1,32],S=[1,30],C=[1,39],w=[1,40],T=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],E=[1,61],D=[89,90],O=[5,8,9,11,13,21,22,23,24,27,29,41,42,43,44,45,46,54,61,63,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],k=[27,29],ee=[1,70],A=[1,71],te=[1,72],ne=[1,73],re=[1,74],ie=[1,75],ae=[1,76],j=[1,83],M=[1,80],N=[1,84],P=[1,85],F=[1,86],I=[1,87],L=[1,88],R=[1,89],z=[1,90],B=[1,91],V=[1,92],oe=[5,8,9,11,13,21,22,23,24,27,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],H=[63,64],se=[1,101],ce=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],U=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],W=[1,110],G=[1,106],K=[1,107],q=[1,108],J=[1,109],Y=[1,111],X=[1,116],Z=[1,117],Q=[1,114],$=[1,115],le={trace:e(function(){},`trace`),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,direction:17,styleStatement:18,classDefStatement:19,classStatement:20,direction_tb:21,direction_bt:22,direction_rl:23,direction_lr:24,requirementType:25,requirementName:26,STRUCT_START:27,requirementBody:28,STYLE_SEPARATOR:29,idList:30,ID:31,COLONSEP:32,id:33,TEXT:34,text:35,RISK:36,riskLevel:37,VERIFYMTHD:38,verifyType:39,STRUCT_STOP:40,REQUIREMENT:41,FUNCTIONAL_REQUIREMENT:42,INTERFACE_REQUIREMENT:43,PERFORMANCE_REQUIREMENT:44,PHYSICAL_REQUIREMENT:45,DESIGN_CONSTRAINT:46,LOW_RISK:47,MED_RISK:48,HIGH_RISK:49,VERIFY_ANALYSIS:50,VERIFY_DEMONSTRATION:51,VERIFY_INSPECTION:52,VERIFY_TEST:53,ELEMENT:54,elementName:55,elementBody:56,TYPE:57,type:58,DOCREF:59,ref:60,END_ARROW_L:61,relationship:62,LINE:63,END_ARROW_R:64,CONTAINS:65,COPIES:66,DERIVES:67,SATISFIES:68,VERIFIES:69,REFINES:70,TRACES:71,CLASSDEF:72,stylesOpt:73,CLASS:74,ALPHA:75,COMMA:76,STYLE:77,style:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,MINUS:86,LABEL:87,SEMICOLON:88,unqString:89,qString:90,$accept:0,$end:1},terminals_:{2:`error`,5:`NEWLINE`,6:`RD`,8:`EOF`,9:`acc_title`,10:`acc_title_value`,11:`acc_descr`,12:`acc_descr_value`,13:`acc_descr_multiline_value`,21:`direction_tb`,22:`direction_bt`,23:`direction_rl`,24:`direction_lr`,27:`STRUCT_START`,29:`STYLE_SEPARATOR`,31:`ID`,32:`COLONSEP`,34:`TEXT`,36:`RISK`,38:`VERIFYMTHD`,40:`STRUCT_STOP`,41:`REQUIREMENT`,42:`FUNCTIONAL_REQUIREMENT`,43:`INTERFACE_REQUIREMENT`,44:`PERFORMANCE_REQUIREMENT`,45:`PHYSICAL_REQUIREMENT`,46:`DESIGN_CONSTRAINT`,47:`LOW_RISK`,48:`MED_RISK`,49:`HIGH_RISK`,50:`VERIFY_ANALYSIS`,51:`VERIFY_DEMONSTRATION`,52:`VERIFY_INSPECTION`,53:`VERIFY_TEST`,54:`ELEMENT`,57:`TYPE`,59:`DOCREF`,61:`END_ARROW_L`,63:`LINE`,64:`END_ARROW_R`,65:`CONTAINS`,66:`COPIES`,67:`DERIVES`,68:`SATISFIES`,69:`VERIFIES`,70:`REFINES`,71:`TRACES`,72:`CLASSDEF`,74:`CLASS`,75:`ALPHA`,76:`COMMA`,77:`STYLE`,80:`NUM`,81:`COLON`,82:`UNIT`,83:`SPACE`,84:`BRKT`,85:`PCT`,86:`MINUS`,87:`LABEL`,88:`SEMICOLON`,89:`unqString`,90:`qString`},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[17,1],[17,1],[17,1],[17,1],[14,5],[14,7],[28,5],[28,5],[28,5],[28,5],[28,2],[28,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[37,1],[37,1],[37,1],[39,1],[39,1],[39,1],[39,1],[15,5],[15,7],[56,5],[56,5],[56,2],[56,1],[16,5],[16,5],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[19,3],[20,3],[20,3],[30,1],[30,3],[30,1],[30,3],[18,3],[73,1],[73,3],[78,1],[78,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[26,1],[26,1],[33,1],[33,1],[35,1],[35,1],[55,1],[55,1],[58,1],[58,1],[60,1],[60,1]],performAction:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 4:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 5:case 6:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:r.setDirection(`TB`);break;case 18:r.setDirection(`BT`);break;case 19:r.setDirection(`RL`);break;case 20:r.setDirection(`LR`);break;case 21:r.addRequirement(a[s-3],a[s-4]);break;case 22:r.addRequirement(a[s-5],a[s-6]),r.setClass([a[s-5]],a[s-3]);break;case 23:r.setNewReqId(a[s-2]);break;case 24:r.setNewReqText(a[s-2]);break;case 25:r.setNewReqRisk(a[s-2]);break;case 26:r.setNewReqVerifyMethod(a[s-2]);break;case 29:this.$=r.RequirementType.REQUIREMENT;break;case 30:this.$=r.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=r.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=r.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=r.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=r.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=r.RiskLevel.LOW_RISK;break;case 36:this.$=r.RiskLevel.MED_RISK;break;case 37:this.$=r.RiskLevel.HIGH_RISK;break;case 38:this.$=r.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=r.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=r.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=r.VerifyType.VERIFY_TEST;break;case 42:r.addElement(a[s-3]);break;case 43:r.addElement(a[s-5]),r.setClass([a[s-5]],a[s-3]);break;case 44:r.setNewElementType(a[s-2]);break;case 45:r.setNewElementDocRef(a[s-2]);break;case 48:r.addRelationship(a[s-2],a[s],a[s-4]);break;case 49:r.addRelationship(a[s-2],a[s-4],a[s]);break;case 50:this.$=r.Relationships.CONTAINS;break;case 51:this.$=r.Relationships.COPIES;break;case 52:this.$=r.Relationships.DERIVES;break;case 53:this.$=r.Relationships.SATISFIES;break;case 54:this.$=r.Relationships.VERIFIES;break;case 55:this.$=r.Relationships.REFINES;break;case 56:this.$=r.Relationships.TRACES;break;case 57:this.$=a[s-2],r.defineClass(a[s-1],a[s]);break;case 58:r.setClass(a[s-1],a[s]);break;case 59:r.setClass([a[s-2]],a[s]);break;case 60:case 62:this.$=[a[s]];break;case 61:case 63:this.$=a[s-2].concat([a[s]]);break;case 64:this.$=a[s-2],r.setCssStyle(a[s-1],a[s]);break;case 65:this.$=[a[s]];break;case 66:a[s-2].push(a[s]),this.$=a[s-2];break;case 68:this.$=a[s-1]+a[s]}},`anonymous`),table:[{3:1,4:2,6:n,9:r,11:i,13:a},{1:[3]},{3:8,4:2,5:[1,7],6:n,9:r,11:i,13:a},{5:[1,9]},{10:[1,10]},{12:[1,11]},t(o,[2,6]),{3:12,4:2,6:n,9:r,11:i,13:a},{1:[2,2]},{4:17,5:s,7:13,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},t(o,[2,4]),t(o,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:s,7:42,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:43,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:44,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:45,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:46,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:47,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:48,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:49,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:50,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{26:51,89:[1,52],90:[1,53]},{55:54,89:[1,55],90:[1,56]},{29:[1,59],61:[1,57],63:[1,58]},t(T,[2,17]),t(T,[2,18]),t(T,[2,19]),t(T,[2,20]),{30:60,33:62,75:E,89:C,90:w},{30:63,33:62,75:E,89:C,90:w},{30:64,33:62,75:E,89:C,90:w},t(D,[2,29]),t(D,[2,30]),t(D,[2,31]),t(D,[2,32]),t(D,[2,33]),t(D,[2,34]),t(O,[2,81]),t(O,[2,82]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{8:[2,13]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{27:[1,65],29:[1,66]},t(k,[2,79]),t(k,[2,80]),{27:[1,67],29:[1,68]},t(k,[2,85]),t(k,[2,86]),{62:69,65:ee,66:A,67:te,68:ne,69:re,70:ie,71:ae},{62:77,65:ee,66:A,67:te,68:ne,69:re,70:ie,71:ae},{30:78,33:62,75:E,89:C,90:w},{73:79,75:j,76:M,78:81,79:82,80:N,81:P,82:F,83:I,84:L,85:R,86:z,87:B,88:V},t(oe,[2,60]),t(oe,[2,62]),{73:93,75:j,76:M,78:81,79:82,80:N,81:P,82:F,83:I,84:L,85:R,86:z,87:B,88:V},{30:94,33:62,75:E,76:M,89:C,90:w},{5:[1,95]},{30:96,33:62,75:E,89:C,90:w},{5:[1,97]},{30:98,33:62,75:E,89:C,90:w},{63:[1,99]},t(H,[2,50]),t(H,[2,51]),t(H,[2,52]),t(H,[2,53]),t(H,[2,54]),t(H,[2,55]),t(H,[2,56]),{64:[1,100]},t(T,[2,59],{76:M}),t(T,[2,64],{76:se}),{33:103,75:[1,102],89:C,90:w},t(ce,[2,65],{79:104,75:j,80:N,81:P,82:F,83:I,84:L,85:R,86:z,87:B,88:V}),t(U,[2,67]),t(U,[2,69]),t(U,[2,70]),t(U,[2,71]),t(U,[2,72]),t(U,[2,73]),t(U,[2,74]),t(U,[2,75]),t(U,[2,76]),t(U,[2,77]),t(U,[2,78]),t(T,[2,57],{76:se}),t(T,[2,58],{76:M}),{5:W,28:105,31:G,34:K,36:q,38:J,40:Y},{27:[1,112],76:M},{5:X,40:Z,56:113,57:Q,59:$},{27:[1,118],76:M},{33:119,89:C,90:w},{33:120,89:C,90:w},{75:j,78:121,79:82,80:N,81:P,82:F,83:I,84:L,85:R,86:z,87:B,88:V},t(oe,[2,61]),t(oe,[2,63]),t(U,[2,68]),t(T,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:W,28:126,31:G,34:K,36:q,38:J,40:Y},t(T,[2,28]),{5:[1,127]},t(T,[2,42]),{32:[1,128]},{32:[1,129]},{5:X,40:Z,56:130,57:Q,59:$},t(T,[2,47]),{5:[1,131]},t(T,[2,48]),t(T,[2,49]),t(ce,[2,66],{79:104,75:j,80:N,81:P,82:F,83:I,84:L,85:R,86:z,87:B,88:V}),{33:132,89:C,90:w},{35:133,89:[1,134],90:[1,135]},{37:136,47:[1,137],48:[1,138],49:[1,139]},{39:140,50:[1,141],51:[1,142],52:[1,143],53:[1,144]},t(T,[2,27]),{5:W,28:145,31:G,34:K,36:q,38:J,40:Y},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},t(T,[2,46]),{5:X,40:Z,56:152,57:Q,59:$},{5:[1,153]},{5:[1,154]},{5:[2,83]},{5:[2,84]},{5:[1,155]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[1,156]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,41]},t(T,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},t(T,[2,43]),{5:W,28:159,31:G,34:K,36:q,38:J,40:Y},{5:W,28:160,31:G,34:K,36:q,38:J,40:Y},{5:W,28:161,31:G,34:K,36:q,38:J,40:Y},{5:W,28:162,31:G,34:K,36:q,38:J,40:Y},{5:X,40:Z,56:163,57:Q,59:$},{5:X,40:Z,56:164,57:Q,59:$},t(T,[2,23]),t(T,[2,24]),t(T,[2,25]),t(T,[2,26]),t(T,[2,44]),t(T,[2,45])],defaultActions:{8:[2,2],12:[2,1],41:[2,3],42:[2,8],43:[2,9],44:[2,10],45:[2,11],46:[2,12],47:[2,13],48:[2,14],49:[2,15],50:[2,16],134:[2,83],135:[2,84],137:[2,35],138:[2,36],139:[2,37],141:[2,38],142:[2,39],143:[2,40],144:[2,41],147:[2,87],148:[2,88],150:[2,89],151:[2,90]},parseError:e(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:e(function(t){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(t,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;this.parseError=typeof g.yy.parseError==`function`?g.yy.parseError:Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}e(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}e(x,`lex`);for(var S,C,w,T,E,D={},O,k,ee,A;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var te=``;for(O in A=[],s[w])this.terminals_[O]&&O>f&&A.push(`'`+this.terminals_[O]+`'`);te=h.showPosition?`Parse error on line `+(l+1)+`:
1
+ import{n as e,t}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as n}from"./src-oBChb5qS.js";import{H as r,K as i,U as a,a as o,b as s,v as c,w as l,x as u,y as d}from"./chunk-DU6HZSFF-BO8x-KoS.js";import{g as f}from"./chunk-75Z2AOVW-DR0PpYOm.js";import"./chunk-PWAF6VOD-D5kNvXnl.js";import"./chunk-GMAD6QVW-DDPfmhbi.js";import"./chunk-P2QGCYS3-BO8zGK2Q.js";import"./chunk-4HAMMTFA-DmxkShmg.js";import"./chunk-GVQU2GXP-Dt2y3Ljq.js";import"./chunk-OSK3NFVY-D3zjZoqS.js";import{t as p}from"./chunk-XXDRQBXY-BvKO0v-W.js";import{t as m}from"./chunk-POPQ4Y6H-gzBrIuwg.js";import"./chunk-L3NEJ4N5-Bq_d7JXK.js";import{d as h,u as g}from"./mermaid.core-DE9uOpTH.js";var _=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,3],r=[1,4],i=[1,5],a=[1,6],o=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],s=[1,22],c=[2,7],l=[1,26],u=[1,27],d=[1,28],f=[1,29],p=[1,33],m=[1,34],h=[1,35],g=[1,36],_=[1,37],v=[1,38],y=[1,24],b=[1,31],x=[1,32],S=[1,30],C=[1,39],w=[1,40],T=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],E=[1,61],D=[89,90],O=[5,8,9,11,13,21,22,23,24,27,29,41,42,43,44,45,46,54,61,63,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],k=[27,29],ee=[1,70],A=[1,71],te=[1,72],ne=[1,73],re=[1,74],ie=[1,75],ae=[1,76],j=[1,83],M=[1,80],N=[1,84],P=[1,85],F=[1,86],I=[1,87],L=[1,88],R=[1,89],z=[1,90],B=[1,91],V=[1,92],oe=[5,8,9,11,13,21,22,23,24,27,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],H=[63,64],se=[1,101],ce=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],U=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],W=[1,110],G=[1,106],K=[1,107],q=[1,108],J=[1,109],Y=[1,111],X=[1,116],Z=[1,117],Q=[1,114],$=[1,115],le={trace:e(function(){},`trace`),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,direction:17,styleStatement:18,classDefStatement:19,classStatement:20,direction_tb:21,direction_bt:22,direction_rl:23,direction_lr:24,requirementType:25,requirementName:26,STRUCT_START:27,requirementBody:28,STYLE_SEPARATOR:29,idList:30,ID:31,COLONSEP:32,id:33,TEXT:34,text:35,RISK:36,riskLevel:37,VERIFYMTHD:38,verifyType:39,STRUCT_STOP:40,REQUIREMENT:41,FUNCTIONAL_REQUIREMENT:42,INTERFACE_REQUIREMENT:43,PERFORMANCE_REQUIREMENT:44,PHYSICAL_REQUIREMENT:45,DESIGN_CONSTRAINT:46,LOW_RISK:47,MED_RISK:48,HIGH_RISK:49,VERIFY_ANALYSIS:50,VERIFY_DEMONSTRATION:51,VERIFY_INSPECTION:52,VERIFY_TEST:53,ELEMENT:54,elementName:55,elementBody:56,TYPE:57,type:58,DOCREF:59,ref:60,END_ARROW_L:61,relationship:62,LINE:63,END_ARROW_R:64,CONTAINS:65,COPIES:66,DERIVES:67,SATISFIES:68,VERIFIES:69,REFINES:70,TRACES:71,CLASSDEF:72,stylesOpt:73,CLASS:74,ALPHA:75,COMMA:76,STYLE:77,style:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,MINUS:86,LABEL:87,SEMICOLON:88,unqString:89,qString:90,$accept:0,$end:1},terminals_:{2:`error`,5:`NEWLINE`,6:`RD`,8:`EOF`,9:`acc_title`,10:`acc_title_value`,11:`acc_descr`,12:`acc_descr_value`,13:`acc_descr_multiline_value`,21:`direction_tb`,22:`direction_bt`,23:`direction_rl`,24:`direction_lr`,27:`STRUCT_START`,29:`STYLE_SEPARATOR`,31:`ID`,32:`COLONSEP`,34:`TEXT`,36:`RISK`,38:`VERIFYMTHD`,40:`STRUCT_STOP`,41:`REQUIREMENT`,42:`FUNCTIONAL_REQUIREMENT`,43:`INTERFACE_REQUIREMENT`,44:`PERFORMANCE_REQUIREMENT`,45:`PHYSICAL_REQUIREMENT`,46:`DESIGN_CONSTRAINT`,47:`LOW_RISK`,48:`MED_RISK`,49:`HIGH_RISK`,50:`VERIFY_ANALYSIS`,51:`VERIFY_DEMONSTRATION`,52:`VERIFY_INSPECTION`,53:`VERIFY_TEST`,54:`ELEMENT`,57:`TYPE`,59:`DOCREF`,61:`END_ARROW_L`,63:`LINE`,64:`END_ARROW_R`,65:`CONTAINS`,66:`COPIES`,67:`DERIVES`,68:`SATISFIES`,69:`VERIFIES`,70:`REFINES`,71:`TRACES`,72:`CLASSDEF`,74:`CLASS`,75:`ALPHA`,76:`COMMA`,77:`STYLE`,80:`NUM`,81:`COLON`,82:`UNIT`,83:`SPACE`,84:`BRKT`,85:`PCT`,86:`MINUS`,87:`LABEL`,88:`SEMICOLON`,89:`unqString`,90:`qString`},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[17,1],[17,1],[17,1],[17,1],[14,5],[14,7],[28,5],[28,5],[28,5],[28,5],[28,2],[28,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[37,1],[37,1],[37,1],[39,1],[39,1],[39,1],[39,1],[15,5],[15,7],[56,5],[56,5],[56,2],[56,1],[16,5],[16,5],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[19,3],[20,3],[20,3],[30,1],[30,3],[30,1],[30,3],[18,3],[73,1],[73,3],[78,1],[78,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[26,1],[26,1],[33,1],[33,1],[35,1],[35,1],[55,1],[55,1],[58,1],[58,1],[60,1],[60,1]],performAction:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 4:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 5:case 6:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:r.setDirection(`TB`);break;case 18:r.setDirection(`BT`);break;case 19:r.setDirection(`RL`);break;case 20:r.setDirection(`LR`);break;case 21:r.addRequirement(a[s-3],a[s-4]);break;case 22:r.addRequirement(a[s-5],a[s-6]),r.setClass([a[s-5]],a[s-3]);break;case 23:r.setNewReqId(a[s-2]);break;case 24:r.setNewReqText(a[s-2]);break;case 25:r.setNewReqRisk(a[s-2]);break;case 26:r.setNewReqVerifyMethod(a[s-2]);break;case 29:this.$=r.RequirementType.REQUIREMENT;break;case 30:this.$=r.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=r.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=r.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=r.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=r.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=r.RiskLevel.LOW_RISK;break;case 36:this.$=r.RiskLevel.MED_RISK;break;case 37:this.$=r.RiskLevel.HIGH_RISK;break;case 38:this.$=r.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=r.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=r.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=r.VerifyType.VERIFY_TEST;break;case 42:r.addElement(a[s-3]);break;case 43:r.addElement(a[s-5]),r.setClass([a[s-5]],a[s-3]);break;case 44:r.setNewElementType(a[s-2]);break;case 45:r.setNewElementDocRef(a[s-2]);break;case 48:r.addRelationship(a[s-2],a[s],a[s-4]);break;case 49:r.addRelationship(a[s-2],a[s-4],a[s]);break;case 50:this.$=r.Relationships.CONTAINS;break;case 51:this.$=r.Relationships.COPIES;break;case 52:this.$=r.Relationships.DERIVES;break;case 53:this.$=r.Relationships.SATISFIES;break;case 54:this.$=r.Relationships.VERIFIES;break;case 55:this.$=r.Relationships.REFINES;break;case 56:this.$=r.Relationships.TRACES;break;case 57:this.$=a[s-2],r.defineClass(a[s-1],a[s]);break;case 58:r.setClass(a[s-1],a[s]);break;case 59:r.setClass([a[s-2]],a[s]);break;case 60:case 62:this.$=[a[s]];break;case 61:case 63:this.$=a[s-2].concat([a[s]]);break;case 64:this.$=a[s-2],r.setCssStyle(a[s-1],a[s]);break;case 65:this.$=[a[s]];break;case 66:a[s-2].push(a[s]),this.$=a[s-2];break;case 68:this.$=a[s-1]+a[s]}},`anonymous`),table:[{3:1,4:2,6:n,9:r,11:i,13:a},{1:[3]},{3:8,4:2,5:[1,7],6:n,9:r,11:i,13:a},{5:[1,9]},{10:[1,10]},{12:[1,11]},t(o,[2,6]),{3:12,4:2,6:n,9:r,11:i,13:a},{1:[2,2]},{4:17,5:s,7:13,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},t(o,[2,4]),t(o,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:s,7:42,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:43,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:44,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:45,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:46,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:47,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:48,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:49,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{4:17,5:s,7:50,8:c,9:r,11:i,13:a,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:l,22:u,23:d,24:f,25:23,33:25,41:p,42:m,43:h,44:g,45:_,46:v,54:y,72:b,74:x,77:S,89:C,90:w},{26:51,89:[1,52],90:[1,53]},{55:54,89:[1,55],90:[1,56]},{29:[1,59],61:[1,57],63:[1,58]},t(T,[2,17]),t(T,[2,18]),t(T,[2,19]),t(T,[2,20]),{30:60,33:62,75:E,89:C,90:w},{30:63,33:62,75:E,89:C,90:w},{30:64,33:62,75:E,89:C,90:w},t(D,[2,29]),t(D,[2,30]),t(D,[2,31]),t(D,[2,32]),t(D,[2,33]),t(D,[2,34]),t(O,[2,81]),t(O,[2,82]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{8:[2,13]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{27:[1,65],29:[1,66]},t(k,[2,79]),t(k,[2,80]),{27:[1,67],29:[1,68]},t(k,[2,85]),t(k,[2,86]),{62:69,65:ee,66:A,67:te,68:ne,69:re,70:ie,71:ae},{62:77,65:ee,66:A,67:te,68:ne,69:re,70:ie,71:ae},{30:78,33:62,75:E,89:C,90:w},{73:79,75:j,76:M,78:81,79:82,80:N,81:P,82:F,83:I,84:L,85:R,86:z,87:B,88:V},t(oe,[2,60]),t(oe,[2,62]),{73:93,75:j,76:M,78:81,79:82,80:N,81:P,82:F,83:I,84:L,85:R,86:z,87:B,88:V},{30:94,33:62,75:E,76:M,89:C,90:w},{5:[1,95]},{30:96,33:62,75:E,89:C,90:w},{5:[1,97]},{30:98,33:62,75:E,89:C,90:w},{63:[1,99]},t(H,[2,50]),t(H,[2,51]),t(H,[2,52]),t(H,[2,53]),t(H,[2,54]),t(H,[2,55]),t(H,[2,56]),{64:[1,100]},t(T,[2,59],{76:M}),t(T,[2,64],{76:se}),{33:103,75:[1,102],89:C,90:w},t(ce,[2,65],{79:104,75:j,80:N,81:P,82:F,83:I,84:L,85:R,86:z,87:B,88:V}),t(U,[2,67]),t(U,[2,69]),t(U,[2,70]),t(U,[2,71]),t(U,[2,72]),t(U,[2,73]),t(U,[2,74]),t(U,[2,75]),t(U,[2,76]),t(U,[2,77]),t(U,[2,78]),t(T,[2,57],{76:se}),t(T,[2,58],{76:M}),{5:W,28:105,31:G,34:K,36:q,38:J,40:Y},{27:[1,112],76:M},{5:X,40:Z,56:113,57:Q,59:$},{27:[1,118],76:M},{33:119,89:C,90:w},{33:120,89:C,90:w},{75:j,78:121,79:82,80:N,81:P,82:F,83:I,84:L,85:R,86:z,87:B,88:V},t(oe,[2,61]),t(oe,[2,63]),t(U,[2,68]),t(T,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:W,28:126,31:G,34:K,36:q,38:J,40:Y},t(T,[2,28]),{5:[1,127]},t(T,[2,42]),{32:[1,128]},{32:[1,129]},{5:X,40:Z,56:130,57:Q,59:$},t(T,[2,47]),{5:[1,131]},t(T,[2,48]),t(T,[2,49]),t(ce,[2,66],{79:104,75:j,80:N,81:P,82:F,83:I,84:L,85:R,86:z,87:B,88:V}),{33:132,89:C,90:w},{35:133,89:[1,134],90:[1,135]},{37:136,47:[1,137],48:[1,138],49:[1,139]},{39:140,50:[1,141],51:[1,142],52:[1,143],53:[1,144]},t(T,[2,27]),{5:W,28:145,31:G,34:K,36:q,38:J,40:Y},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},t(T,[2,46]),{5:X,40:Z,56:152,57:Q,59:$},{5:[1,153]},{5:[1,154]},{5:[2,83]},{5:[2,84]},{5:[1,155]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[1,156]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,41]},t(T,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},t(T,[2,43]),{5:W,28:159,31:G,34:K,36:q,38:J,40:Y},{5:W,28:160,31:G,34:K,36:q,38:J,40:Y},{5:W,28:161,31:G,34:K,36:q,38:J,40:Y},{5:W,28:162,31:G,34:K,36:q,38:J,40:Y},{5:X,40:Z,56:163,57:Q,59:$},{5:X,40:Z,56:164,57:Q,59:$},t(T,[2,23]),t(T,[2,24]),t(T,[2,25]),t(T,[2,26]),t(T,[2,44]),t(T,[2,45])],defaultActions:{8:[2,2],12:[2,1],41:[2,3],42:[2,8],43:[2,9],44:[2,10],45:[2,11],46:[2,12],47:[2,13],48:[2,14],49:[2,15],50:[2,16],134:[2,83],135:[2,84],137:[2,35],138:[2,36],139:[2,37],141:[2,38],142:[2,39],143:[2,40],144:[2,41],147:[2,87],148:[2,88],150:[2,89],151:[2,90]},parseError:e(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:e(function(t){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(t,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;this.parseError=typeof g.yy.parseError==`function`?g.yy.parseError:Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}e(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}e(x,`lex`);for(var S,C,w,T,E,D={},O,k,ee,A;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var te=``;for(O in A=[],s[w])this.terminals_[O]&&O>f&&A.push(`'`+this.terminals_[O]+`'`);te=h.showPosition?`Parse error on line `+(l+1)+`:
2
2
  `+h.showPosition()+`
3
3
  Expecting `+A.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on line `+(l+1)+`: Unexpected `+(S==p?`end of input`:`'`+(this.terminals_[S]||S)+`'`),this.parseError(te,{text:h.match,token:this.terminals_[S]||S,line:h.yylineno,loc:v,expected:A})}if(T[0]instanceof Array&&T.length>1)throw Error(`Parse Error: multiple actions possible at state: `+w+`, token: `+S);switch(T[0]){case 1:r.push(S),a.push(h.yytext),o.push(h.yylloc),r.push(T[1]),S=null,C?(S=C,C=null):(u=h.yyleng,c=h.yytext,l=h.yylineno,v=h.yylloc,d>0&&d--);break;case 2:if(k=this.productions_[T[1]][1],D.$=a[a.length-k],D._$={first_line:o[o.length-(k||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(k||1)].first_column,last_column:o[o.length-1].last_column},y&&(D._$.range=[o[o.length-(k||1)].range[0],o[o.length-1].range[1]]),E=this.performAction.apply(D,[c,u,l,g.yy,T[1],a,o].concat(m)),E!==void 0)return E;k&&(r=r.slice(0,-1*k*2),a=a.slice(0,-1*k),o=o.slice(0,-1*k)),r.push(this.productions_[T[1]][0]),a.push(D.$),o.push(D._$),ee=s[r[r.length-2]][r[r.length-1]],r.push(ee);break;case 3:return!0}}return!0},`parse`)};le.lexer=(function(){return{EOF:1,parseError:e(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:e(function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match=``,this.conditionStack=[`INITIAL`],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},`setInput`),input:e(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},`input`),unput:e(function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},`unput`),more:e(function(){return this._more=!0,this},`more`),reject:e(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError(`Lexical error on line `+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:e(function(e){this.unput(this.match.slice(e))},`less`),pastInput:e(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},`pastInput`),upcomingInput:e(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},`upcomingInput`),showPosition:e(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
@@ -82,4 +82,4 @@ Expecting `+A.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on l
82
82
  }
83
83
 
84
84
  `},`getStyles`),S={};t(S,{draw:()=>C});var C=e(async function(e,t,r,i){n.info(`REF0:`),n.info(`Drawing requirement diagram (unified)`,t);let{securityLevel:a,state:o,layout:s,look:c}=u(),l=i.db.getData(),d=p(t,a);l.type=i.type,l.layoutAlgorithm=g(s),l.nodeSpacing=o?.nodeSpacing??50,l.rankSpacing=o?.rankSpacing??50,l.markers=c===`neo`?[`requirement_contains_neo`,`requirement_arrow_neo`]:[`requirement_contains`,`requirement_arrow`],l.diagramId=t,await h(l,d),f.insertTitle(d,`requirementDiagramTitleText`,o?.titleTopMargin??25,i.db.getDiagramTitle()),m(d,8,`requirementDiagram`,o?.useMaxWidth??!0)},`draw`),w={parser:v,get db(){return new y},renderer:S,styles:x};export{w as diagram};
85
- //# sourceMappingURL=requirementDiagram-BXWQKSXE-DYwMIoLP.js.map
85
+ //# sourceMappingURL=requirementDiagram-BXWQKSXE-CsnTqOO2.js.map
@@ -0,0 +1,2 @@
1
+ import{Dg as e,H as t,Js as n,Qs as r,R as i,Sy as a,U as o,W as s,Xg as c,Xs as l,bg as u,hy as d,l as f,lb as p}from"./utils-hgbJ2TVM.js";var m=(e,t)=>{if(e.kind!==t.kind||r(e.threadRef)!==r(t.threadRef))return!1;switch(e.kind){case`panel-tab`:return t.kind===`panel-tab`&&e.surface.id===t.surface.id;case`browser`:return t.kind===`browser`&&e.snapshot.tabId===t.snapshot.tabId}},h=e=>e.kind!==`browser`||e.snapshot.profileId!==`incognito`,g=p(c),_=p(u),v=p(e),y=e=>{let t=e;if(!t||typeof t.id!=`string`||!g(t.threadRef))return!1;if(t.kind===`browser`)return _(t.snapshot);if(t.kind!==`panel-tab`)return!1;let n=t.surface;if(!n||typeof n.id!=`string`)return!1;switch(n.kind){case`diff`:case`files`:case`pull-requests`:return n.id===n.kind;case`preview`:return n.resourceId===null||typeof n.resourceId==`string`;case`file`:return typeof n.relativePath==`string`&&(n.revealLine===null||Number.isSafeInteger(n.revealLine))&&Number.isSafeInteger(n.revealRequestId)&&(n.attachment===void 0||v(n.attachment));case`device`:return(n.title===void 0||typeof n.title==`string`)&&(n.target===void 0||n.target!==null&&typeof n.target.hostId==`string`&&typeof n.target.deviceId==`string`&&typeof n.target.name==`string`&&(n.target.platform===`ios`||n.target.platform===`android`));case`pull-request`:return typeof n.projectId==`string`&&typeof n.repository==`string`&&Number.isSafeInteger(n.number)&&n.number>0&&(n.environmentId===void 0||typeof n.environmentId==`string`)&&(n.host===void 0||typeof n.host==`string`)&&(n.url===void 0||typeof n.url==`string`);default:return!1}},b=s()(o(e=>({entries:[],remember:t=>{let n=f();return e(e=>({entries:[{...t,id:n},...e.entries.filter(e=>!m(e,t))].slice(0,20)})),n},defer:t=>e(e=>{let n=e.entries.find(e=>e.id===t);return n?{entries:[...e.entries.filter(e=>e.id!==t),n]}:e}),remove:t=>e(e=>({entries:e.entries.filter(e=>e.id!==t)}))}),{name:`p4code:closed-views:v2`,storage:t(()=>i(typeof window<`u`?window.localStorage:void 0)),version:2,migrate:e=>{let t=e?.entries;return{entries:Array.isArray(t)?t.filter(y).filter(h):[]}},partialize:({entries:e})=>({entries:e.filter(h)})})),x=`p4code:right-panel-state:v2`,S=14,C=l(d.make(`pull-requests-panel`),a.make(`pull-requests-panel`)),w=e=>e.endsWith(`:pull-requests-panel`),T={isOpen:!1,activeSurfaceId:null,surfaces:[]},E={inlineOpen:!0,popoverOpen:!1},D={inlineOpen:!1,popoverOpen:!1},O=e=>{switch(e){case`diff`:return{id:`diff`,kind:e};case`files`:return{id:`files`,kind:e};case`design`:return{id:`design`,kind:e};case`pull-requests`:return{id:`pull-requests`,kind:e};case`device`:return{id:`device`,kind:e};case`tools`:return{id:`tools`,kind:e}}},k=e=>e?{id:`browser:${e}`,kind:`preview`,resourceId:e}:{id:`browser:new`,kind:`preview`,resourceId:null},A=(e,t,n)=>({id:`file:${e}`,kind:`file`,relativePath:e,revealLine:t,revealRequestId:n}),j=e=>({id:`attachment:${e.id}`,kind:`file`,relativePath:e.name,revealLine:null,revealRequestId:0,attachment:e}),M=e=>({id:`terminal:${e}`,kind:`terminal`,resourceId:e,terminalIds:[e],activeTerminalId:e}),N=new Map;function P(e,t,n){let i=r(e),a={hostRef:t,onOwnPanelOpen:n};return N.set(i,a),()=>{N.get(i)===a&&N.delete(i)}}function F(e,t){return t?.inOwnPanel===!0?e:N.get(r(e))?.hostRef??e}function I(e){N.get(r(e))?.onOwnPanelOpen()}var L=e=>({id:`aside:${e}`,kind:`aside`,threadId:e});function R(e){let t=e.environmentId===void 0?``:`${encodeURIComponent(e.environmentId)}:`,n=e.host===void 0?``:`${encodeURIComponent(e.host.toLowerCase())}:`;return`pull-request:${t}${encodeURIComponent(e.projectId)}:${n}${encodeURIComponent(e.repository)}:${e.number}`}function z(e){return{id:R(e),kind:`pull-request`,...e.environmentId===void 0?{}:{environmentId:e.environmentId},projectId:e.projectId,...typeof e.host==`string`?{host:e.host.toLowerCase()}:{},repository:e.repository,number:e.number,...typeof e.url==`string`?{url:e.url}:{}}}var B=(e,t,n=!0,r=!0)=>{let i=e.surfaces.some(e=>e.id===t.id);return n&&r&&t.id!==`tools`&&e.activeSurfaceId===`tools`?{...e,isOpen:!0,surfaces:i?e.surfaces.filter(e=>e.id!==`tools`):e.surfaces.map(e=>e.id===`tools`?t:e),activeSurfaceId:t.id}:{...e,isOpen:!0,surfaces:i?e.surfaces:[...e.surfaces,t],activeSurfaceId:n?t.id:e.activeSurfaceId}},V=(e,t,n)=>{let r=e[t]??T,i=n(r);if(!i.isOpen&&i.activeSurfaceId===null&&i.surfaces.length===0&&!i.dismissedDeviceSurfaceIds?.length){if(!(t in e))return e;let{[t]:n,...r}=e;return r}return i===r?e:{...e,[t]:i}},H=(e,t,n,r=!1)=>{let i=e[t]??(r?D:E),a=n(i);if(!r&&a.inlineOpen&&!a.popoverOpen){if(!(t in e))return e;let{[t]:n,...r}=e;return r}return a===i?e:{...e,[t]:a}},U=(e,t,n)=>{let r=e.byThreadKey[t]??T,i=V(e.byThreadKey,t,n),a=i[t]??T,o=e.threadPanelVisibilityByThreadKey;return!r.isOpen&&a.isOpen?o=H(o,t,e=>e.popoverOpen?{...e,popoverOpen:!1}:e):r.isOpen&&!a.isOpen&&(o=H(o,t,e=>e.popoverOpen&&!e.inlineOpen?{...e,inlineOpen:!0}:e)),{byThreadKey:i,threadPanelVisibilityByThreadKey:o}},W=(e,t,n)=>({...U(e,t,n)}),G=(e,t,n,r=!1)=>({...U(e,t,e=>{let t=n(e);if(t===e)return e;let r=e.surfaces.filter(e=>e.kind===`device`&&!t.surfaces.some(t=>t.id===e.id));return r.length===0?t:{...t,dismissedDeviceSurfaceIds:[...new Set([...t.dismissedDeviceSurfaceIds??[],...r.map(e=>e.id)])]}}),userActionRevisionByThreadKey:{...e.userActionRevisionByThreadKey,[t]:(e.userActionRevisionByThreadKey[t]??0)+1},...r?{closeRevisionByThreadKey:{...e.closeRevisionByThreadKey,[t]:(e.closeRevisionByThreadKey[t]??0)+1}}:{}}),K=(e,t,n)=>G(e,t,n,!0);function q(e){return e===void 0||!Number.isFinite(e)?null:Math.max(1,Math.trunc(e))}function J(e){return!e||typeof e!=`object`?{byThreadKey:{},threadPanelVisibilityByThreadKey:{}}:{byThreadKey:`byThreadKey`in e&&e.byThreadKey&&typeof e.byThreadKey==`object`?Object.fromEntries(Object.entries(e.byThreadKey).filter(([e])=>!w(e)).map(([e,t])=>{let n=t&&typeof t==`object`?t:null,r=Array.isArray(n?.surfaces)?n.surfaces.flatMap(e=>{let t=e.kind;if(t===`plan`||t===`agents`)return[];if(e.kind===`file`){let t=typeof e.revealLine==`number`&&Number.isFinite(e.revealLine)?Math.max(1,Math.trunc(e.revealLine)):null,n=typeof e.revealRequestId==`number`&&Number.isSafeInteger(e.revealRequestId)&&e.revealRequestId>=0?e.revealRequestId:0;return[{...e,revealLine:t,revealRequestId:n}]}if(e.kind===`aside`)return typeof e.threadId==`string`&&e.threadId.length>0?[L(e.threadId)]:[];if(e.kind===`pull-request`){if(typeof e.projectId!=`string`||typeof e.repository!=`string`||typeof e.number!=`number`||!Number.isSafeInteger(e.number)||e.number<1)return[];let{environmentId:t,...n}=e;return[z({...n,...typeof t==`string`?{environmentId:t}:{}})]}if(e.kind!==`terminal`)return[e];if(!(`resourceId`in e)||typeof e.resourceId!=`string`||e.id!==`terminal:${e.resourceId}`)return[];let n=`terminalIds`in e&&Array.isArray(e.terminalIds)?[...new Set(e.terminalIds.filter(e=>typeof e==`string`))]:[e.resourceId],r=`activeTerminalId`in e&&typeof e.activeTerminalId==`string`&&n.includes(e.activeTerminalId)?e.activeTerminalId:n[0]??e.resourceId;return[{...e,terminalIds:n.length>0?n:[e.resourceId],activeTerminalId:r}]}):[],i=n?.activeSurfaceId,a=r.some(e=>e.id===i)?i??null:i===`pull-request`?r.find(e=>e.kind===`pull-request`)?.id??null:null,o=r.length>0&&(typeof n?.isOpen==`boolean`?n.isOpen:a!==null);return[e,{isOpen:o,surfaces:r,activeSurfaceId:a??(o||i===`agents`?r[0]?.id??null:null),...Array.isArray(n?.dismissedDeviceSurfaceIds)?{dismissedDeviceSurfaceIds:n.dismissedDeviceSurfaceIds.filter(e=>typeof e==`string`)}:{},...n?.maximized===!0?{maximized:!0}:{}}]})):{},threadPanelVisibilityByThreadKey:`threadPanelVisibilityByThreadKey`in e&&e.threadPanelVisibilityByThreadKey&&typeof e.threadPanelVisibilityByThreadKey==`object`?Object.fromEntries(Object.entries(e.threadPanelVisibilityByThreadKey).flatMap(([e,t])=>!t||typeof t!=`object`||!(`inlineOpen`in t)?[]:t.inlineOpen===!1?[[e,{inlineOpen:!1,popoverOpen:!1}]]:[])):{}}}var Y=s()(o((e,t)=>({byThreadKey:{},pendingMaximizeThreadKey:null,requestMaximize:t=>e({pendingMaximizeThreadKey:r(t)}),consumeMaximizeRequest:n=>t().pendingMaximizeThreadKey===r(n)&&(e({pendingMaximizeThreadKey:null}),!0),threadPanelVisibilityByThreadKey:{},userActionRevisionByThreadKey:{},closeRevisionByThreadKey:{},getUserActionRevision:e=>t().userActionRevisionByThreadKey[r(e)]??0,openProactive:(t,n,i)=>{let a=!1;return e(e=>{let o=r(t);return(e.userActionRevisionByThreadKey[o]??0)!==i||n.kind===`diff`&&(Q(e.byThreadKey,t)===`pull-request`||Q(e.byThreadKey,t)===`pull-requests`)?e:(a=!0,W(e,o,e=>B(e,n,!0,!1)))}),a},open:(t,n)=>{e(e=>G(e,r(t),e=>n===`preview`?B(e,e.surfaces.find(e=>e.kind===`preview`)??k(null)):B(e,O(n)))),I(t)},openDevice:(t,n,i=!1)=>{e(e=>(i?W:G)(e,r(t),e=>{let t=`device:${encodeURIComponent(n.hostId)}:${encodeURIComponent(n.deviceId)}`;if(i&&e.dismissedDeviceSurfaceIds?.includes(t))return e;let r={id:t,kind:`device`,target:n},a=e.surfaces.find(e=>e.id===t),o=a?e.surfaces.filter(e=>e.id!==`device`):e.surfaces.map(e=>e.id===`device`?r:e);return B({...e,surfaces:o,dismissedDeviceSurfaceIds:(e.dismissedDeviceSurfaceIds??[]).filter(e=>e!==t)},a??r,!0,!i)})),i||I(t)},renameDevice:(t,n,i)=>e(e=>G(e,r(t),e=>({...e,surfaces:e.surfaces.map(e=>e.id===n&&e.kind===`device`?{...e,title:i.trim()||e.target?.name||`Device`}:e)}))),openBrowser:(t,n)=>{e(e=>G(e,r(t),e=>{let t=k(n),r=n?e.surfaces.filter(e=>e.id!==`browser:new`):e.surfaces;return B({...e,surfaces:r},t)})),I(t)},openPullRequest:(t,n,i)=>e(e=>G(e,r(F(t,i)),e=>{let t=z(n),r=B(e,t);return n.url?{...r,surfaces:r.surfaces.map(e=>e.id===t.id?t:e)}:r})),openFile:(t,n,i,a)=>e(e=>G(e,r(F(t,a)),e=>{if(n===`.`)return B(e,O(`files`));let t=/^[A-Za-z]:\/+$/.test(n)?n:n.replace(/\/+$/,``)||n,r=e.surfaces.filter(e=>e.kind!==`files`),a=`file:${t}`,o=r.find(e=>e.id===a&&e.kind===`file`),s=A(t,q(i),(o?.revealRequestId??0)+1);return{...e,isOpen:!0,activeSurfaceId:s.id,surfaces:o?r.map(e=>e.id===s.id?s:e):[...r,s]}})),openAttachment:(t,n,i)=>e(e=>G(e,r(F(t,i)),e=>{let t=e.surfaces.filter(e=>e.kind!==`files`);return B({...e,surfaces:t},j(n))})),openAside:(t,n)=>e(e=>G(e,r(t),e=>B(e,L(n)))),openTerminal:(t,n)=>e(e=>G(e,r(t),e=>B(e,M(n)))),splitTerminal:(t,n,i,a=`horizontal`)=>e(e=>G(e,r(t),e=>({...e,isOpen:!0,activeSurfaceId:n,surfaces:e.surfaces.map(e=>{if(e.id!==n||e.kind!==`terminal`)return e;let{splitDirection:t,...r}=e;return{...r,terminalIds:e.terminalIds.includes(i)?e.terminalIds:[...e.terminalIds,i],activeTerminalId:i,...a===`vertical`?{splitDirection:`vertical`}:{}}})}))),activateTerminal:(t,n,i)=>e(e=>G(e,r(t),e=>({...e,activeSurfaceId:n,surfaces:e.surfaces.map(e=>e.id===n&&e.kind===`terminal`&&e.terminalIds.includes(i)?{...e,activeTerminalId:i}:e)}))),closeTerminal:(t,n,i)=>e(e=>K(e,r(t),e=>{let t=e.surfaces.find(e=>e.id===n&&e.kind===`terminal`);if(!t||t.kind!==`terminal`)return e;let r=t.terminalIds.filter(e=>e!==i);if(r.length===0){let t=e.surfaces.findIndex(e=>e.id===n),r=e.surfaces.filter(e=>e.id!==n),i=r[Math.min(t,r.length-1)]??null;return{...e,isOpen:r.length>0&&e.isOpen,surfaces:r,activeSurfaceId:e.activeSurfaceId===n?i?.id??null:e.activeSurfaceId}}return{...e,surfaces:e.surfaces.map(e=>e.id===n&&e.kind===`terminal`?{...e,terminalIds:r,activeTerminalId:e.activeTerminalId===i?r.at(-1)??r[0]:e.activeTerminalId}:e)}})),activateSurface:(t,n)=>e(e=>G(e,r(t),e=>e.surfaces.some(e=>e.id===n)?{...e,isOpen:!0,activeSurfaceId:n}:e)),closeSurface:(t,n)=>e(e=>K(e,r(t),e=>{let t=e.surfaces.findIndex(e=>e.id===n);if(t<0)return e;let r=e.surfaces.filter(e=>e.id!==n),i={...e,isOpen:r.length>0&&e.isOpen,surfaces:r};if(e.activeSurfaceId!==n)return i;let a=r[Math.min(t,r.length-1)]??null;return{...i,activeSurfaceId:a?.id??null}})),closeOtherSurfaces:(t,n)=>e(e=>K(e,r(t),e=>{let t=e.surfaces.find(e=>e.id===n);return!t||e.surfaces.length===1?e:{...e,isOpen:!0,surfaces:[t],activeSurfaceId:t.id}})),closeSurfacesToRight:(t,n)=>e(e=>K(e,r(t),e=>{let t=e.surfaces.findIndex(e=>e.id===n);if(t<0||t===e.surfaces.length-1)return e;let r=e.surfaces.slice(0,t+1),i=r.some(t=>t.id===e.activeSurfaceId);return{...e,surfaces:r,activeSurfaceId:i?e.activeSurfaceId:n}})),closeAllSurfaces:t=>e(e=>K(e,r(t),e=>e.surfaces.length===0?e:{...e,isOpen:!1,surfaces:[],activeSurfaceId:null})),moveSurface:(t,n,i)=>e(e=>U(e,r(t),e=>{let t=e.surfaces.findIndex(e=>e.id===n);if(t<0||t===i)return e;let r=[...e.surfaces];return r.splice(i,0,...r.splice(t,1)),{...e,surfaces:r}})),reconcileBrowserSurfaces:(t,n,i)=>e(e=>W(e,r(t),e=>{let t=new Set(n.map(e=>`browser:${e}`)),r=e.surfaces.filter(e=>e.kind!==`preview`||e.id!==`browser:new`&&t.has(e.id)),a=new Set(r.map(e=>e.id)),o=n.filter(e=>!a.has(`browser:${e}`)&&!i?.has(e)).map(e=>k(e)),s=[...r,...o],c=s.some(t=>t.id===e.activeSurfaceId),l=s.find(e=>e.kind===`preview`);return{...e,surfaces:s,activeSurfaceId:c?e.activeSurfaceId:l?.id??s[0]?.id??null}})),reconcileFileSurfaces:(t,n)=>e(e=>W(e,r(t),e=>{if(n)return e;let t=e.surfaces.filter(e=>e.kind!==`files`&&(e.kind!==`file`||e.attachment!==void 0));if(t.length===e.surfaces.length)return e;let r=t.some(t=>t.id===e.activeSurfaceId);return{...e,isOpen:t.length>0&&e.isOpen,surfaces:t,activeSurfaceId:r?e.activeSurfaceId:t.at(-1)?.id??null}})),show:t=>e(e=>G(e,r(t),e=>e.isOpen?e:{...e,isOpen:!0})),close:t=>e(e=>G(e,r(t),e=>e.isOpen?{...e,isOpen:!1}:e)),setMaximized:(t,n)=>e(e=>W(e,r(t),e=>{if((e.maximized??!1)===n)return e;let{maximized:t,...r}=e;return n?{...r,maximized:!0}:r})),toggleVisibility:t=>e(e=>G(e,r(t),e=>({...e,isOpen:!e.isOpen}))),toggle:(t,n)=>e(e=>G(e,r(t),e=>{let t=e.surfaces.find(t=>t.id===e.activeSurfaceId);return e.isOpen&&t?.kind===n?{...e,isOpen:!1}:n===`preview`?B(e,e.surfaces.find(e=>e.kind===`preview`)??k(null)):B(e,O(n))})),setThreadPanelOpen:(t,n,i,a)=>e(e=>({threadPanelVisibilityByThreadKey:H(e.threadPanelVisibilityByThreadKey,r(t),e=>{let t=n===`inline`?`inlineOpen`:`popoverOpen`;return e[t]===i?e:{...e,[t]:i}},a)})),toggleThreadPanel:(t,n,i)=>e(e=>({threadPanelVisibilityByThreadKey:H(e.threadPanelVisibilityByThreadKey,r(t),e=>n===`inline`?{...e,inlineOpen:!e.inlineOpen}:{...e,popoverOpen:!e.popoverOpen},i)})),removeThread:t=>e(e=>{let n=r(t);if(!(n in e.byThreadKey)&&!(n in e.threadPanelVisibilityByThreadKey)&&!(n in e.userActionRevisionByThreadKey)&&!(n in e.closeRevisionByThreadKey))return e;let{[n]:i,...a}=e.byThreadKey,{[n]:o,...s}=e.threadPanelVisibilityByThreadKey,{[n]:c,...l}=e.userActionRevisionByThreadKey,{[n]:u,...d}=e.closeRevisionByThreadKey;return{byThreadKey:a,threadPanelVisibilityByThreadKey:s,userActionRevisionByThreadKey:l,closeRevisionByThreadKey:d}})}),{name:x,version:S,storage:t(()=>i(typeof window<`u`?window.localStorage:void 0)),partialize:e=>({byThreadKey:Object.fromEntries(Object.entries(e.byThreadKey).filter(([e])=>!w(e))),threadPanelVisibilityByThreadKey:Object.fromEntries(Object.entries(e.threadPanelVisibilityByThreadKey).flatMap(([e,t])=>t.inlineOpen?[]:[[e,{inlineOpen:!1,popoverOpen:!1}]]))}),migrate:J}));Y.subscribe((e,t)=>{if(e.closeRevisionByThreadKey!==t.closeRevisionByThreadKey)for(let[r,i]of Object.entries(e.closeRevisionByThreadKey)){if(i===t.closeRevisionByThreadKey[r])continue;let a=n(r);if(!a)continue;let o=t.byThreadKey[r]??T,s=e.byThreadKey[r]??T,c=o.surfaces.filter(e=>!s.surfaces.some(t=>t.id===e.id)),l=[...c.filter(e=>e.id!==o.activeSurfaceId),...c.filter(e=>e.id===o.activeSurfaceId)];for(let e of l)e.kind===`terminal`||e.kind===`tools`||e.kind===`aside`||e.kind===`preview`&&e.resourceId!==null||b.getState().remember({kind:`panel-tab`,threadRef:a,surface:e})}});function X(e,t){return t?e[r(t)]??T:T}function Z(e,t,n=!1){let i=n?D:E;return t?e[r(t)]??i:i}function ee(e,t,n,r=!1){let i=Z(e,t,r);return n===`inline`?i.inlineOpen:i.popoverOpen}function Q(e,t){let n=X(e,t);return n.isOpen?n.surfaces.find(e=>e.id===n.activeSurfaceId)?.kind??null:null}function te(e,t){return X(e,t).isOpen?$(e,t):null}function $(e,t){let n=X(e,t);return n.surfaces.find(e=>e.id===n.activeSurfaceId)??null}export{Q as a,ee as c,b as d,P as i,X as l,z as n,te as o,R as r,$ as s,C as t,Y as u};
2
+ //# sourceMappingURL=rightPanelStore-XfAJpUIA.js.map
@@ -0,0 +1,2 @@
1
+ import{$S as e,$_ as t,$o as n,$s as r,$x as i,AC as a,AT as o,A_ as s,BC as c,BS as l,B_ as u,Bh as d,Bx as f,CS as p,Cb as m,Cv as h,Cw as ee,DC as te,DT as ne,Dv as re,Dx as g,Es as _,FT as ie,Fh as ae,Fw as oe,GS as v,GT as y,G_ as se,Gs as ce,Gv as le,Gy as b,HS as ue,HT as x,H_ as de,Hh as fe,Hx as pe,IT as me,Ih as he,Il as ge,Ix as S,JS as _e,JT as ve,J_ as ye,Jb as be,Jh as xe,Jy as Se,KS as Ce,KT as C,K_ as we,Kh as Te,Kv as Ee,Kw as De,Kx as w,Ky as Oe,LC as ke,LT as Ae,Lh as je,Lv as Me,Lx as Ne,Ly as Pe,MC as Fe,Mw as Ie,Mx as Le,My as Re,NC as ze,NT as Be,Nl as Ve,Nv as He,Nx as T,Ny as Ue,OC as We,Ow as Ge,Ox as E,Oy as Ke,PC as qe,PT as Je,Ph as Ye,Ps as Xe,Pv as Ze,QC as Qe,QS as $e,Q_ as et,Qb as tt,Qh as nt,Qy as rt,RC as it,RT as D,Rh as at,Rx as ot,Ry as st,Ss as ct,Su as lt,Sv as ut,Sy as dt,TC as ft,TS as pt,TT as mt,Tb as ht,Tc as gt,Ts as _t,Ty as vt,UC as yt,US as bt,UT as xt,U_ as St,Uv as Ct,Ux as O,Uy as wt,VS as Tt,VT as k,V_ as Et,Vc as A,Vx as Dt,Vy as j,WS as M,WT as Ot,W_ as kt,XS as At,Xh as jt,Xv as Mt,Yh as Nt,Yo as Pt,Yv as Ft,Yx as It,Yy as Lt,ZS as Rt,Zb as zt,Zh as Bt,_S as Vt,_b as Ht,_v as Ut,_x as Wt,_y as Gt,ab as Kt,aw as qt,ax as Jt,bS as Yt,bT as Xt,cT as Zt,cb as Qt,cu as $t,cv as en,cx as tn,cy as nn,dl as rn,ds as N,du as an,dv as on,dx as sn,eC as cn,eT as ln,ex as un,fE as dn,fS as fn,fb as pn,fu as mn,fw as hn,fx as gn,fy as _n,gS as vn,gb as yn,gl as bn,gu as xn,gv as Sn,gx as Cn,h as wn,hS as Tn,hu as En,hv as Dn,hy as On,iE as kn,iS as P,ib as An,iw as jn,ix as Mn,jT as Nn,jl as Pn,jt as Fn,jv as In,jx as Ln,kx as Rn,l as zn,lS as Bn,lT as Vn,lb as Hn,lg as Un,mS as Wn,mT as Gn,mb as Kn,mu as qn,mx as Jn,my as Yn,nS as F,nT as Xn,ns as Zn,nv as Qn,oC as I,oS as L,ob as $n,os as er,ow as tr,oy as nr,pS as rr,ps as ir,pu as ar,pv as or,pw as sr,px as cr,py as lr,qS as R,qb as ur,qx as dr,rC as fr,rb as pr,rs as z,rv as mr,rx as hr,sT as gr,sb as _r,sg as vr,ss as yr,su as br,sv as xr,sx as B,tC as Sr,ts as V,tx as Cr,uC as wr,uS as Tr,uc as Er,uu as Dr,uw as Or,ux as kr,vS as Ar,vT as jr,vl as Mr,vv as Nr,vx as H,wC as Pr,ws as Fr,wv as Ir,ww as Lr,xT as Rr,xb as zr,xu as Br,ys as Vr,yy as Hr,zC as Ur,zT as Wr,z_ as Gr,zh as Kr,zs as qr}from"./utils-hgbJ2TVM.js";import{$ as Jr,$t as Yr,A as U,An as Xr,At as Zr,Bn as Qr,Bt as $r,Cn as ei,Ct as ti,D as ni,Dn as ri,Dt as ii,E as ai,En as oi,F as si,G as ci,Gn as W,Gt as li,Hn as ui,Ht as di,I as fi,Jn as pi,Jt as mi,K as hi,Kn as gi,Kt as _i,M as G,Mt as vi,N as K,Nt as yi,P as bi,Pn as xi,Pt as Si,Q as Ci,Qt as wi,R as Ti,Rn as Ei,S as Di,Sn as Oi,St as ki,Tn as Ai,Tt as ji,Un as q,Ut as Mi,V as Ni,Vn as Pi,Vt as Fi,W as Ii,Wn as Li,Wt as Ri,X as zi,Xt as Bi,Y as Vi,Yt as Hi,Z as Ui,Zt as Wi,_n as Gi,_t as Ki,an as qi,bn as Ji,bt as Yi,cn as Xi,ct as Zi,dn as Qi,dt as J,en as $i,fn as ea,ft as ta,gn as na,gt as ra,hn as ia,ht as aa,in as oa,j as sa,k as ca,kn as la,kt as ua,ln as da,lt as fa,m as pa,mt as ma,nn as ha,nt as ga,ot as _a,p as va,pn as ya,pt as ba,q as xa,qt as Sa,rn as Ca,rt as wa,sn as Ta,t as Ea,tn as Da,tt as Oa,un as ka,ut as Aa,v as ja,vn as Ma,vt as Na,w as Pa,wn as Fa,wt as Ia,xn as La,xt as Ra,y as za,yn as Ba,yt as Va,zn as Ha,zt as Ua}from"./runtime-D-mOwjrE.js";function Wa(e){let t=new URL(e);if(t.protocol===`ws:`?t.protocol=`http:`:t.protocol===`wss:`&&(t.protocol=`https:`),t.protocol!==`http:`&&t.protocol!==`https:`)throw Error(`Endpoint must use HTTP or HTTPS. Received ${t.protocol}`);return t.pathname=`/`,t.search=``,t.hash=``,t.toString()}function Ga(e){let t=new URL(Wa(e));return t.protocol=t.protocol===`https:`?`wss:`:`ws:`,t.toString()}function Ka(e,t){return[...e].sort(t)}function qa(e){return/^[a-zA-Z]:([/\\]|$)/.test(e)}function Ja(e){return e.startsWith(`\\\\`)}function Ya(e){return Ja(e)||qa(e)}function Xa(e){return e===`.`||e===`..`||e.startsWith(`./`)||e.startsWith(`../`)||e.startsWith(`.\\`)||e.startsWith(`..\\`)}function Za(e){return e===`/`||e===`\\`||/^[a-zA-Z]:[/\\]$/.test(e)}function Qa(e){if(e.length===0||Za(e))return e;let t=e.startsWith(`/`)?e.replace(/\/+$/g,``):e.replace(/[\\/]+$/g,``);return t.length===0?e:/^[a-zA-Z]:$/.test(t)?`${t}\\`:t}function $a(e){return Qa(e.trim())}function eo(e){let t=$a(e);return qa(t)||Ja(t)?t.replaceAll(`/`,`\\`).toLowerCase():t}var to=/^(con|prn|aux|nul|com[1-9]|lpt[1-9])$/;function no(e){let t=e.normalize(`NFKD`).replace(/[̀-ͯ]/g,``).toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+/,``).slice(0,64).replace(/-+$/,``);return t.length===0?`project`:to.test(t)?`${t}-project`:t}var ro=/^\/[A-Za-z]:[\\/]/;function io(e){return ro.test(e)?e.slice(1):e}function ao(e){let t=e.replace(/[/\\]+$/,``);if(t.length===0)return e;let n=Math.max(t.lastIndexOf(`/`),t.lastIndexOf(`\\`));return n>=0?t.slice(n+1):t}function oo(e,t){if(!t)return null;let n=io(e.replaceAll(`\\`,`/`)),r=io(t.replaceAll(`\\`,`/`)).replace(/\/+$/,``),i=Ya(io(t)),a=i?n.toLowerCase():n,o=i?r.toLowerCase():r;return a.replace(/\/+$/,``)===o?`.`:a.startsWith(`${o}/`)?n.slice(r.length+1):null}function so(e){return e.startsWith(`/`)||Ya(e)}function co(e,t){if(so(e)||e.startsWith(`~/`)||e.startsWith(`~\\`))return e;let n=t.replace(/[/\\]+$/,``);return Ya(t)?`${n}\\${e.replaceAll(`/`,`\\`)}`:`${n}/${e}`}function lo(e){if(!e)return null;if(e.provider===`azure-devops`){let t=(e.displayName??``).split(`/`).filter(e=>e!==`_git`);return e.name||t.at(-1)||null}return e.displayName?e.displayName:e.owner&&e.name?`${e.owner}/${e.name}`:null}function uo(e){return e.replace(/^(?:ssh\.dev\.azure\.com|vs-ssh\.visualstudio\.com)\/v3\/([^/]+)\/([^/]+)\/([^/]+)$/u,`dev.azure.com/$1/$2/_git/$3`).replace(/^([^.]+)\.visualstudio\.com\/(?:defaultcollection\/)?([^/]+)\/_git\/([^/]+)$/u,`dev.azure.com/$1/$2/_git/$3`)}function fo(e,t,n){return e===t||e.endsWith(`.${t}`)?!0:n!==void 0&&e.split(`.`).includes(n)}function po(e){let t;try{t=new URL(e)}catch{return null}if(t.protocol!==`https:`&&t.protocol!==`http:`)return null;let n=t.hostname.toLowerCase();if(n===`git.cafe`||n===`staging.git.cafe`)return mo(n,/^\/([^/]+\/[^/]+)\/pulls\/(\d+)(?:\/|$)/u.exec(t.pathname));if(fo(n,`github.com`,`github`)){let e=/^\/([^/]+\/[^/]+)\/pull\/(\d+)(?:\/|$)/u.exec(t.pathname);if(e)return mo(n,e)}let r=/^\/([^/]+(?:\/[^/]+)+)\/pulls\/(\d+)(?:\/|$)/u.exec(t.pathname);if(r){let e=mo(n,r);return e===null?null:{...e,authority:t.host.toLowerCase()}}let i=/^\/([^/]+(?:\/[^/]+)+)\/-\/merge_requests\/(\d+)(?:\/|$)/u.exec(t.pathname);return i?mo(n,i):fo(n,`bitbucket.org`,`bitbucket`)?mo(n,/^\/([^/]+\/[^/]+)\/pull-requests\/(\d+)(?:\/|$)/u.exec(t.pathname)):fo(n,`dev.azure.com`)||n.endsWith(`.visualstudio.com`)?mo(n,/^\/((?:[^/]+\/)*_git\/[^/]+)\/pullrequest\/(\d+)(?:\/|$)/u.exec(t.pathname)):null}function mo(e,t){let n=t?.[1],r=Number(t?.[2]);return n&&Number.isSafeInteger(r)&&r>0?{host:e,repository:n.toLowerCase(),number:r}:null}function ho(e,t,n){if(e?.provider!==`github`||!Number.isSafeInteger(n)||n<1)return null;let r=t.split(`/`);if(r.length!==2||r.some(e=>e.length===0||e===`.`||e===`..`))return null;let i=null;try{let t=new URL(e.locator.remoteUrl.trim());(t.protocol===`http:`||t.protocol===`https:`)&&(i=t.origin)}catch{}let a=e.canonicalKey.split(`/`)[0];if(i===null&&!a)return null;try{let e=new URL(i??`https://${a}`);return e.pathname=`/${r.join(`/`)}/pull/${n}`,e.toString()}catch{return null}}function go(e){let t;try{t=new URL(e)}catch{return null}if(t.protocol!==`https:`&&t.protocol!==`http:`||!(t.hostname.toLowerCase()===`github.com`||t.hostname.toLowerCase().endsWith(`.github.com`)||t.hostname.toLowerCase().split(`.`).includes(`github`)))return null;let n=/^\/([^/]+\/[^/]+)\/issues\/(\d+)(?:\/|$)/u.exec(t.pathname);return n?.[1]===void 0||n[2]===void 0?null:(t.pathname=`/${n[1]}/pull/${n[2]}`,t.toString())}function _o(e,t){let n=po(e.url),r=po(t);return n!==null&&r!==null&&n.host===r.host&&n.repository===r.repository&&n.number===r.number&&n.authority===r.authority}function vo(e){if(po(e)===null)return null;let t=new URL(e),n=/^(.*?)\/-\/merge_requests\/\d+(?:\/|$)/iu.exec(t.pathname)?.[1]??/^(.*?)(?:\/pulls?\/\d+|\/-\/merge_requests\/\d+|\/pull-requests\/\d+|\/pullrequest\/\d+)(?:\/|$)/iu.exec(t.pathname)?.[1];return n?(t.pathname=n,t.search=``,t.hash=``,t.toString()):null}function yo(e){let t=e.url===void 0?null:po(e.url),n=uo(`${(e.authority??(t?.repository===e.repository.trim().toLowerCase()&&t.number===e.number?t.authority:void 0)??e.host).trim().toLowerCase()}/${e.repository.trim().toLowerCase()}`),r=n.indexOf(`/`);return{host:n.slice(0,r),repository:n.slice(r+1),number:e.number}}function bo(e,t){let n=po(e.url);if(n!==null&&n.number===e.number){let e=uo(`${n.host}/${n.repository}`);if(n.authority!==void 0||e.startsWith(`dev.azure.com/`))return yo(n)}let r=t;if(r===void 0)try{r=new URL(e.url).hostname}catch{r=`unknown`}return{host:r.trim().toLowerCase()||`unknown`,repository:e.repository.trim().toLowerCase(),number:e.number}}function xo(e,t){return So(e)===So(t)}function So(e){let t=yo(e);return`${t.host}/${t.repository}#${t.number}`}function Co(e){return e.filter(e=>e.source!==`stack-dismissed`)}function wo(e){return e.snapshot===null||e.snapshot.state===`open`}function To(e){let t=e.snapshot?.updatedAt??e.linkedAt,n=Date.parse(t);return Number.isNaN(n)?0:n}function Eo(e){let t=Co(e);if(t.length===0)return null;let n=t.filter(wo);if(n.length===1)return{kind:`single`,link:n[0]};let r=Oo(t);if(n.length>1){let e=r.map(e=>[...e.layers].reverse().filter(wo)).filter(e=>e.length>0).sort((e,t)=>Math.max(...t.map(e=>Date.parse(e.linkedAt)))-Math.max(...e.map(e=>Date.parse(e.linkedAt)))).flat();return{kind:`stack`,open:e,top:e[0]}}return r.length===1?{kind:`single`,link:r[0].layers.at(-1)}:{kind:`single`,link:[...t].sort((e,t)=>To(t)-To(e))[0]}}function Do(e){let t=Eo(e);return t===null?null:t.kind===`single`?t.link:t.top}function Oo(e){let t=Co(e),n=[],r=new Set,i=new Map;for(let e of t){if(e.stack===null)continue;let t=yo(e),n=`${t.host}/${t.repository}#stack:${e.stack.id}`,r=i.get(n)??[];r.push(e),i.set(n,r)}for(let e of i.values()){let t=new Map(e[0].stack.layers.map((e,t)=>[e.number,t]));e.sort((e,n)=>(t.get(e.number)??0)-(t.get(n.number)??0));for(let t of e)r.add(So(t));n.push({kind:`native`,layers:e})}let a=t.filter(e=>!r.has(So(e))),o=(e,t)=>{let n=yo(e);return`${n.host}/${n.repository}:${t}`},s=new Map;for(let e of a){if(e.snapshot===null)continue;let t=o(e,e.snapshot.headBranch);s.set(t,s.has(t)?null:e)}let c=new Set;for(let e of a){if(e.snapshot===null)continue;let t=s.get(o(e,e.snapshot.baseBranch));t!=null&&t!==e&&c.add(So(t))}for(let e of a){if(c.has(So(e)))continue;let t=[],i=e;for(;i!==void 0&&!r.has(So(i));)r.add(So(i)),t.unshift(i),i=i.snapshot===null?void 0:s.get(o(i,i.snapshot.baseBranch))??void 0;t.length>0&&n.push({kind:`derived`,layers:t})}for(let e of a)r.has(So(e))||n.push({kind:`derived`,layers:[e]});return n}function ko(e){let t=Co(e??[]);if(t.length===0)return null;let n=t.map(e=>e.snapshot?.state??`open`),r=t.every(e=>e.snapshot?.state===`open`&&e.snapshot.isDraft)?`draft`:n.includes(`open`)?`open`:n.every(e=>e===`merged`)?`merged`:`closed`,i=Oo(t);return t.length>1&&i.length===1?{kind:`stack`,layers:t.length,state:r}:{kind:`pull-request`,others:t.length-1,state:r}}function Ao(e){let t=e.branchPullRequest,n=t?[`#${t.number}`,`${t.repository}#${t.number}`,t.url]:[];if(e.pullRequests!==void 0&&e.pullRequests.length>0)return n.concat(Co(e.pullRequests).flatMap(e=>[`#${e.number}`,`${e.repository}#${e.number}`,e.url,e.snapshot?.title??``]));let r=e.linkedPullRequest;return r?n.concat([`#${r.number}`,`${r.repository}#${r.number}`,r.url]):n}function jo(e){if(e.pullRequests!==void 0)return e.pullRequests;let t=e.linkedPullRequest;return t==null?[]:[{...bo(t),url:t.url,source:`manual`,linkedAt:`1970-01-01T00:00:00.000Z`,snapshot:null,stack:null}]}function Mo(e,t){return{...e,pullRequests:jo(e).map(e=>xo(e,t)?t:e)}}var No=new Set([`command_execution`,`dynamic_tool`,`subagent`]),Po=new Set([`cancelled`,`completed`,`failed`,`interrupted`,`waiting`]);function Fo(e){return e.some(e=>Io(e.kind))}function Io(e){switch(e){case`command`:return!1;case`subagent`:case`monitor`:case`background_task`:return!0}}function Lo(e){return e!=null&&Po.has(e.status)}function Ro(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Reflect.get(e,`persistent`)===!0}function zo(e){if(typeof e.title==`string`&&e.title.trim().length>0)return e.title.trim();if(e.type===`command_execution`&&typeof e.input==`string`){let t=e.input.trim();return t.length>0?t:void 0}if(e.type===`dynamic_tool`){let t=Reflect.get(e,`toolName`);if(typeof t==`string`&&t.trim().length>0)return t.trim()}if(e.type===`subagent`&&typeof e.prompt==`string`){let t=e.prompt.trim();return t.length>0?t:void 0}}function Bo(e,t){let n=zo(t),r={taskId:e,...n===void 0?{}:{description:n}};switch(t.type){case`subagent`:return{...r,kind:`subagent`,...t.owningProviderInstanceId===void 0?{}:{providerInstanceId:t.owningProviderInstanceId},...t.childThreadId==null?{}:{childThreadId:t.childThreadId}};case`command_execution`:return{...r,kind:`command`};default:return{...r,kind:`background_task`}}}function Vo(e){let t=e.nativeItemRef?.nativeId;return typeof t==`string`&&t.length>0?t:String(e.id)}function Ho(e){let t=new Set((e.runs??[]).filter(e=>e.status===`rolled_back`).map(e=>String(e.id)));return e.turnItems.filter(e=>No.has(e.type)&&En(e.status)&&!(e.type===`dynamic_tool`&&Ro(e.input))&&(e.runId===void 0||e.runId===null||!t.has(String(e.runId))))}function Uo(e){if(e.hasActiveRun??e.runs?.some(e=>e.status===`preparing`||e.status===`starting`||e.status===`running`)??!1)return[];if(e.latestRun==null)return Wo(e.pullRequests);if(!Lo(e.latestRun))return[];let t=new Map,n=e.activeProviderThreadId===void 0||e.activeProviderThreadId===null?e.providerThreads:e.providerThreads.filter(t=>t.id===e.activeProviderThreadId);for(let e of n)for(let n of e.pendingBackgroundTasks??[]){if(n.taskId.length===0||t.has(n.taskId))continue;let{description:r,...i}=n,a=r?.trim();t.set(n.taskId,{...i,...n.kind===`subagent`?{providerInstanceId:e.providerInstanceId}:{},...a===void 0||a.length===0?{}:{description:a}})}for(let n of Ho(e)){let e=Vo(n);t.has(e)||t.set(e,Bo(e,n))}for(let n of Wo(e.pullRequests))t.set(n.taskId,n);return Array.from(t.values())}function Wo(e){return(e??[]).flatMap(e=>e.watch===void 0||e.source===`stack-dismissed`?[]:[{taskId:`pull-request-watch:${So(e)}`,description:`Watching pull request #${e.number}`,kind:`monitor`}])}var Y=S(`EnvironmentCommands.allocateCommandId`)(function*(e){if(e.commandId!==void 0)return e.commandId;let t=yield*pi;return Yn.make(yield*t.randomUUIDv4().pipe(Tn))}),X=e=>Ui(br.dispatchCommand,e),Go=e=>Ui(br.getThreadProjection,{threadId:e}),Ko=S(`EnvironmentCommands.supportsServerResolvedCommandContext`)(function*(){return(yield*Vi()).environment.capabilities.serverResolvedCommandContext===!0}),qo=S(`EnvironmentCommands.persistAttachments`)(function*(e,t,n){let r=n.filter(e=>!(`dataUrl`in e)),i=n.filter(e=>`dataUrl`in e);if(i.length===0)return r;let a=yield*Ui(A.assetsPersistChatAttachments,{threadId:e,messageId:t,attachments:i});if(r.length===0)return a.attachments;let o=new Map(i.map((e,t)=>[e,a.attachments[t]]));return n.flatMap(e=>{if(!(`dataUrl`in e))return[e];let t=o.get(e);return t===void 0?[]:[t]})}),Jo=S(`EnvironmentCommands.mutateProject`)(function*(e){return yield*Ui(A.projectsMutate,e)}),Yo=S(`EnvironmentCommands.createProject`)(function*(e){return yield*Jo({type:`project.create`,commandId:yield*Y(e),projectId:e.projectId,title:e.title,workspaceRoot:e.workspaceRoot,...e.createWorkspaceRootIfMissing===void 0?{}:{createWorkspaceRootIfMissing:e.createWorkspaceRootIfMissing},...e.defaultModelSelection===void 0?{}:{defaultModelSelection:e.defaultModelSelection},...e.scripts===void 0?{}:{scripts:e.scripts}})}),Xo=S(`EnvironmentCommands.updateProject`)(function*(e){return yield*Jo({type:`project.update`,commandId:yield*Y(e),projectId:e.projectId,...e.title===void 0?{}:{title:e.title},...e.workspaceRoot===void 0?{}:{workspaceRoot:e.workspaceRoot},...e.defaultModelSelection===void 0?{}:{defaultModelSelection:e.defaultModelSelection},...e.autoPull===void 0?{}:{autoPull:e.autoPull},...e.projectIcon===void 0?{}:{projectIcon:e.projectIcon},...e.faviconPath===void 0?{}:{faviconPath:e.faviconPath},...e.defaultThreadEnvMode===void 0?{}:{defaultThreadEnvMode:e.defaultThreadEnvMode},...e.scripts===void 0?{}:{scripts:e.scripts}})}),Zo=S(`EnvironmentCommands.deleteProject`)(function*(e){return yield*Jo({type:`project.delete`,commandId:yield*Y(e),projectId:e.projectId,...e.force===void 0?{}:{force:e.force}})}),Qo=S(`EnvironmentCommands.createThread`)(function*(e){return yield*X({type:`thread.create`,commandId:yield*Y(e),createdBy:`user`,creationSource:e.creationSource??`web`,threadId:e.threadId,projectId:e.projectId,title:e.title,modelSelection:e.modelSelection,runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,branch:e.branch,worktreePath:e.worktreePath,...e.parentThreadId===void 0?{}:{parentThreadId:e.parentThreadId},...e.sideChat===void 0?{}:{sideChat:e.sideChat}})});function $o(e,t){return Y(t).pipe(T(n=>X({type:e,commandId:n,threadId:t.threadId})))}var es=S(`EnvironmentCommands.deleteThread`)(function*(e){return e.expectedEmpty!==!0&&e.expectedSideChat!==!0?yield*$o(`thread.delete`,e):yield*X({type:`thread.delete`,commandId:yield*Y(e),threadId:e.threadId,...e.expectedEmpty===!0?{expectedEmpty:!0}:{},...e.expectedSideChat===!0?{expectedSideChat:!0}:{}})}),ts=S(`EnvironmentCommands.archiveThread`)(function*(e){return yield*$o(`thread.archive`,e)}),ns=S(`EnvironmentCommands.unarchiveThread`)(function*(e){return yield*$o(`thread.unarchive`,e)}),rs=S(`EnvironmentCommands.settleThread`)(function*(e){return yield*$o(`thread.settle`,e)}),is=S(`EnvironmentCommands.pinThread`)(function*(e){return yield*X({type:`thread.pin`,commandId:yield*Y(e),threadId:e.threadId,...e.orderKey===void 0?{}:{orderKey:e.orderKey}})}),as=S(`EnvironmentCommands.setThreadAutoSettle`)(function*(e){return yield*X({type:`thread.auto-settle.set`,commandId:yield*Y(e),threadId:e.threadId,enabled:e.enabled})}),os=S(`EnvironmentCommands.reorderPinnedThread`)(function*(e){return yield*X({type:`thread.pin.reorder`,commandId:yield*Y(e),threadId:e.threadId,orderKey:e.orderKey})}),ss=S(`EnvironmentCommands.reorderActiveThread`)(function*(e){return yield*X({type:`thread.active.reorder`,commandId:yield*Y(e),threadId:e.threadId,orderKey:e.orderKey})}),cs=S(`EnvironmentCommands.unpinThread`)(function*(e){return yield*$o(`thread.unpin`,e)}),ls=S(`EnvironmentCommands.unsettleThread`)(function*(e){return yield*X({type:`thread.unsettle`,commandId:yield*Y(e),threadId:e.threadId,reason:e.reason})}),us=S(`EnvironmentCommands.snoozeThread`)(function*(e){return yield*X({type:`thread.snooze`,commandId:yield*Y(e),threadId:e.threadId,snoozedUntil:e.snoozedUntil})}),ds=S(`EnvironmentCommands.unsnoozeThread`)(function*(e){return yield*X({type:`thread.unsnooze`,commandId:yield*Y(e),threadId:e.threadId,reason:e.reason})}),fs=S(`EnvironmentCommands.visitThread`)(function*(e){return yield*X({type:`thread.visit`,commandId:yield*Y(e),threadId:e.threadId,visitedAt:e.visitedAt})}),ps=S(`EnvironmentCommands.markThreadUnread`)(function*(e){return yield*X({type:`thread.mark-unread`,commandId:yield*Y(e),threadId:e.threadId})}),ms=S(`EnvironmentCommands.updateThreadMetadata`)(function*(e){let t=yield*Y(e),n=null;return(e.projectId!==void 0||e.title!==void 0||e.branch!==void 0||e.worktreePath!==void 0||e.regenerateTitle!==void 0||e.linkedPullRequest!==void 0||e.sideChat!==void 0||e.limitRecovery!==void 0)&&(n=yield*X({type:`thread.metadata.update`,...e.projectId===void 0?{}:{projectId:e.projectId},...e.limitRecovery===void 0?{}:{limitRecovery:e.limitRecovery},commandId:t,threadId:e.threadId,...e.title===void 0?{}:{title:e.title},...e.branch===void 0?{}:{branch:e.branch},...e.worktreePath===void 0?{}:{worktreePath:e.worktreePath},...e.expectedEmpty===!0?{expectedEmpty:!0}:{},...e.regenerateTitle===void 0?{}:{regenerateTitle:e.regenerateTitle},...e.linkedPullRequest===void 0?{}:{linkedPullRequest:e.linkedPullRequest},...e.sideChat===void 0?{}:{sideChat:e.sideChat}})),e.modelSelection!==void 0&&(n=yield*X({type:(yield*Ko())?`thread.model-selection.set`:qr((yield*Go(e.threadId)).thread.providerInstanceId,e.modelSelection),commandId:n===null?t:Yn.make(`${t}:model-selection`),threadId:e.threadId,modelSelection:e.modelSelection})),n??{sequence:0}}),hs=S(`EnvironmentCommands.setThreadRuntimeMode`)(function*(e){return yield*X({type:`thread.runtime-mode.set`,commandId:yield*Y(e),threadId:e.threadId,runtimeMode:e.runtimeMode})}),gs=S(`EnvironmentCommands.setThreadInteractionMode`)(function*(e){return yield*X({type:`thread.interaction-mode.set`,commandId:yield*Y(e),threadId:e.threadId,interactionMode:e.interactionMode})}),_s=S(`EnvironmentCommands.startThreadTurn`)(function*(e){let t=yield*Y(e),n=yield*qo(e.threadId,e.message.messageId,e.message.attachments),r=gt(e.message.context,e.message.attachments,n),i=e.bootstrap?.createThread,a=e.bootstrap?.prepareWorktree;if(i!==void 0||a!==void 0){let o=i===void 0?yield*Go(e.threadId):null,s=i??o.thread,c=a===void 0?i?.worktreePath?{type:`existing_worktree`,worktreePath:i.worktreePath,...i.branch===null?{}:{branch:i.branch}}:{type:`root`,...i?.branch===null||i?.branch===void 0?{}:{branch:i.branch}}:{type:a.auto===!0?`auto`:`worktree`,baseRef:a.baseBranch,...a.branch===void 0?{}:{branch:a.branch},...a.startFromOrigin===void 0?{}:{startFromOrigin:a.startFromOrigin}};return yield*Ui(br.launchThread,{commandId:t,creationSource:e.creationSource??`web`,threadId:e.threadId,...i===void 0?{reuseExistingThread:!0}:{},projectId:s.projectId,title:e.titleSeed??s.title,generateTitle:e.titleSeed!==void 0,modelSelection:e.modelSelection??s.modelSelection,runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,workspaceStrategy:c,initialMessage:{messageId:e.message.messageId,text:e.message.text,...r?{context:r}:{},attachments:n}})}let o=e.dispatchMode??`auto`;if(o===`start`)return yield*X({type:`message.dispatch`,commandId:t,createdBy:`user`,creationSource:e.creationSource??`web`,threadId:e.threadId,messageId:e.message.messageId,...e.manualContinuationOfRunId===void 0?{}:{manualContinuationOfRunId:e.manualContinuationOfRunId},text:e.message.text,...r?{context:r}:{},attachments:n,...e.modelSelection===void 0?{}:{modelSelection:e.modelSelection},...e.sourceProposedPlan===void 0?{}:{sourcePlanRef:e.sourceProposedPlan},dispatchMode:{type:`start_immediately`}});let s=yield*Ko(),c=s?null:yield*Go(e.threadId),l=c?.runs.findLast(e=>e.status===`preparing`||e.status===`starting`||e.status===`running`||e.status===`waiting`),u=l===void 0?void 0:c?.providerThreads.find(e=>e.id===l.providerThreadId),d=(u?.providerSessionId===null||u?.providerSessionId===void 0?void 0:c?.providerSessions.find(e=>e.id===u.providerSessionId))?.capabilities.turns,f=s?o===`queue`?{type:`queue_after_active`}:{type:`start_immediately`}:l===void 0?{type:`start_immediately`}:o===`steer`?{type:`steer_active`,targetRunId:l.id}:o===`restart`?{type:`restart_active`,targetRunId:l.id}:o===`queue`?{type:`queue_after_active`}:d?.supportsActiveSteering===!0?{type:`steer_active`,targetRunId:l.id}:d?.supportsQueuedMessages===!0?{type:`queue_after_active`}:d?.supportsSteeringByInterruptRestart===!0?{type:`restart_active`,targetRunId:l.id}:{type:`queue_after_active`},p=e.titleSeed!==void 0&&(s||c?.messages.length===0);return yield*X({type:`message.dispatch`,commandId:t,createdBy:`user`,creationSource:e.creationSource??`web`,threadId:e.threadId,messageId:e.message.messageId,text:e.message.text,...r?{context:r}:{},attachments:n,...p?{titleSeed:e.titleSeed}:{},...e.modelSelection===void 0?{}:{modelSelection:e.modelSelection},...e.sourceProposedPlan===void 0?{}:{sourcePlanRef:e.sourceProposedPlan},...s&&o!==`queue`?{deliveryIntent:o}:{},dispatchMode:f})}),vs=S(`EnvironmentCommands.interruptThreadTurn`)(function*(e){if(e.subagentId!==void 0){let t=(yield*Go(e.threadId)).subagents.find(t=>t.id===e.subagentId);return t?.runId==null?{sequence:0}:yield*X({type:`subagent.stop`,commandId:yield*Y(e),threadId:e.threadId,runId:t.runId,subagentId:t.id})}let t=e.runId??e.turnId;if(t===void 0){let n=yield*Go(e.threadId);if(t=n.runs.findLast(e=>e.status===`preparing`||e.status===`starting`||e.status===`running`||e.status===`waiting`)?.id,t===void 0){let e=n.runs.at(-1);Uo({latestRun:e,providerThreads:n.providerThreads,turnItems:n.turnItems,activeProviderThreadId:n.thread.activeProviderThreadId,runs:n.runs}).length>0&&(t=e?.id)}if(t===void 0){let t={sequence:0};for(let r of Co(n.thread.pullRequests??[]))r.watch!==void 0&&(t=yield*X({type:`thread.pull-request.watch`,commandId:yield*Y(t.sequence===0?e:{}),threadId:e.threadId,host:r.host,repository:r.repository,number:r.number,watching:!1}));return t}}return t===void 0?{sequence:0}:yield*X({type:`run.interrupt`,commandId:yield*Y(e),threadId:e.threadId,runId:t,holdQueue:!0})}),ys=S(`EnvironmentCommands.respondToThreadApproval`)(function*(e){return yield*X({type:`runtime-request.respond`,commandId:yield*Y(e),threadId:e.threadId,requestId:e.requestId,decision:e.decision})}),bs=S(`EnvironmentCommands.respondToThreadUserInput`)(function*(e){return yield*X({type:`runtime-request.respond`,commandId:yield*Y(e),threadId:e.threadId,requestId:e.requestId,answers:e.answers,...e.attachmentsByQuestionId===void 0?{}:{attachmentsByQuestionId:e.attachmentsByQuestionId}})}),xs=S(`EnvironmentCommands.dismissThreadUserInput`)(function*(e){return yield*X({type:`thread.user-input.dismiss`,commandId:yield*Y(e),threadId:e.threadId,requestId:e.requestId})}),Ss=S(`EnvironmentCommands.revertThreadCheckpoint`)(function*(e){if(e.checkpointId!==void 0&&e.scopeId!==void 0&&(yield*Ko()))return yield*X({type:`checkpoint.rollback`,...e.restoreFiles===void 0?{}:{restoreFiles:e.restoreFiles},commandId:yield*Y(e),threadId:e.threadId,scopeId:lr.make(e.scopeId),checkpointId:_n.make(e.checkpointId)});let t=yield*Go(e.threadId),n=t.checkpoints.find(t=>t.id===e.checkpointId&&t.scopeId===e.scopeId)??t.checkpoints.findLast(t=>e.turnCount===0?t.ordinalWithinScope===0&&t.appRunOrdinal===null:t.appRunOrdinal===e.turnCount);if(n===void 0||n.status!==`ready`){let t=e.checkpointId===void 0?`run ordinal ${e.turnCount??`unknown`}`:`checkpoint ${e.checkpointId}`;return yield*new $t({threadId:e.threadId,target:t})}return yield*X({type:`checkpoint.rollback`,...e.restoreFiles===void 0?{}:{restoreFiles:e.restoreFiles},commandId:yield*Y(e),threadId:e.threadId,scopeId:n.scopeId,checkpointId:n.id})}),Cs=S(`EnvironmentCommands.stopThreadSession`)(function*(e){let t=yield*Go(e.threadId),n=yield*Y(e),r={sequence:0};for(let i of t.providerSessions)r=yield*X({type:`provider-session.detach`,commandId:Yn.make(`${n}:detach:${i.id}`),threadId:e.threadId,providerSessionId:i.id,reason:`client-requested`});return r}),ws=S(`EnvironmentCommands.forkThreadFromRun`)(function*(e){return yield*X({type:`thread.fork`,commandId:yield*Y(e),createdBy:`user`,creationSource:e.creationSource??`web`,sourceThreadId:e.sourceThreadId,targetThreadId:e.targetThreadId,sourcePoint:e.runId===void 0?{type:`latest_stable`}:{type:`run`,runId:e.runId},...e.title===void 0?{}:{title:e.title},...e.sideChat===void 0?{}:{sideChat:e.sideChat},...e.runtimeMode===void 0?{}:{runtimeMode:e.runtimeMode}})}),Ts=S(`EnvironmentCommands.mergeThreadBack`)(function*(e){return yield*X({type:`thread.merge_back`,commandId:yield*Y(e),createdBy:`user`,creationSource:e.creationSource??`web`,sourceThreadId:e.sourceThreadId,targetThreadId:e.targetThreadId,sourcePoint:{type:`run`,runId:e.runId}})}),Es=S(`EnvironmentCommands.resumeThreadQueue`)(function*(e){return yield*X({type:`queue.resume`,commandId:yield*Y(e),threadId:e.threadId})}),Ds=S(`EnvironmentCommands.reorderQueuedRun`)(function*(e){return yield*X({type:`queued-run.reorder`,commandId:yield*Y(e),threadId:e.threadId,runId:e.runId,beforeRunId:e.beforeRunId})}),Os=S(`EnvironmentCommands.promoteQueuedRun`)(function*(e){return yield*X({type:`queued-message.promote-to-steer`,commandId:yield*Y(e),threadId:e.threadId,queuedRunId:e.queuedRunId,targetRunId:e.targetRunId})}),ks=S(`EnvironmentCommands.cancelQueuedRun`)(function*(e){return yield*X({type:`queued-run.cancel`,commandId:yield*Y(e),threadId:e.threadId,runId:e.runId})}),As=S(`EnvironmentCommands.retryWorkspacePreparation`)(function*(e){return yield*X({type:`prepared-run.retry`,commandId:yield*Y(e),threadId:e.threadId,runId:e.runId})}),js=S(`EnvironmentCommands.editQueuedRun`)(function*(e){let t=e.edit===void 0?void 0:yield*qo(e.threadId,e.edit.messageId,e.edit.attachments);return yield*X({type:`queued-run.edit`,commandId:yield*Y(e),threadId:e.threadId,runId:e.runId,text:e.text,...t===void 0?{}:{attachments:t},...e.edit?.context&&t?{context:gt(e.edit.context,e.edit.attachments,t)}:{}})}),Ms=S(`EnvironmentCommands.linkThreadPullRequest`)(function*(e){return yield*X({...e,type:`thread.pull-request.link`,commandId:yield*Y(e)})}),Ns=S(`EnvironmentCommands.linkThreadDesign`)(function*(e){return yield*X({...e,type:`thread.design.link`,commandId:yield*Y(e)})}),Ps=S(`EnvironmentCommands.unlinkThreadDesign`)(function*(e){return yield*X({...e,type:`thread.design.unlink`,commandId:yield*Y(e)})}),Fs=S(`EnvironmentCommands.watchThreadPullRequest`)(function*(e){return yield*X({...e,type:`thread.pull-request.watch`,commandId:yield*Y(e)})}),Is=S(`EnvironmentCommands.unlinkThreadPullRequest`)(function*(e){return yield*X({...e,type:`thread.pull-request.unlink`,commandId:yield*Y(e)})}),Ls=new Set([`completed`,`failed`,`cancelled`,`interrupted`]);function Rs(e){return Ls.has(e)}function zs(e){return En(e)}function Bs(e){return e.type===`subagent`&&En(e.status)}function Vs(e){return e.totalTokens===void 0?null:{totalTokens:e.totalTokens,...e.toolCalls===void 0?{}:{toolUses:e.toolCalls},...e.durationMs===void 0?{}:{durationMs:e.durationMs}}}function Hs(e){return e===void 0?null:be(zt(e))}function Us(e,t){return t.agents.map(t=>{let n=(t.state===`queued`||t.state===`running`)&&Rs(e.status)?e.status:t.state===`queued`?`pending`:t.state,r=n===`failed`,i=Hs(t.startedAt),a=Rs(n)?t.startedAt!==void 0&&t.durationMs!==void 0?Hs(t.startedAt+t.durationMs):e.completedAt:null;return{...e,id:`${e.id}:agent:${t.index}`,kind:`workflow_agent`,title:t.label,model:t.model??null,status:n,activationCount:t.attempt??1,usage:Vs(t),progress:t.prompt??null,result:r?null:t.result??null,error:r?t.result??null:null,parentAgentId:e.id,agentIndex:t.index,phaseIndex:t.phaseIndex??null,phaseTitle:t.phaseTitle??null,attempt:t.attempt??null,phases:[],childThreadId:t.childThreadId??null,recentActivity:[],firstSeenAt:Hs(t.queuedAt)??i??e.firstSeenAt,startedAt:i,completedAt:a,updatedAt:a??i??e.firstSeenAt}})}function Ws(e){return e.flatMap(e=>{let t=be(e.updatedAt),n=e.startedAt===null?null:be(e.startedAt),r=n??t,{workflow:i}=e,a=i?.runHandles??null,o={id:e.id,kind:i===void 0?`subagent`:`workflow`,title:e.title??(e.prompt.length>80?`${e.prompt.slice(0,77)}...`:e.prompt),role:null,model:e.model,effort:null,status:e.status,activationCount:1,usage:i===void 0?null:Vs(i),progress:e.progress??null,lastToolName:null,result:e.result,error:e.status===`failed`?e.result??null:null,outputFile:null,parentAgentId:null,agentIndex:null,phaseIndex:null,phaseTitle:null,attempt:null,workflowName:i?.name??null,phases:i?.phases??[],runHandles:a,childThreadId:e.childThreadId??null,recentActivity:[],firstSeenAt:r,startedAt:n,completedAt:e.completedAt===null?null:be(e.completedAt),updatedAt:t};return i===void 0?[o]:[o,...Us(o,i)]})}function Gs(e){let t=e.filter(e=>e.kind===`workflow`).sort((e,t)=>e.firstSeenAt.localeCompare(t.firstSeenAt)||e.id.localeCompare(t.id)),n=jr(e.filter(e=>e.kind!==`workflow`&&e.parentAgentId!==null),e=>e.parentAgentId);return t.map(e=>{let t=Object.hasOwn(n,e.id)?n[e.id]:[],r=new Map;for(let e of t)e.phaseIndex!==null&&r.set(e.phaseIndex,e.phaseTitle??r.get(e.phaseIndex)??`Phase ${e.phaseIndex+1}`);for(let t of e.phases)r.set(t.index,t.title);return{workflow:e,phases:Array.from(r.entries()).map(([e,t])=>({index:e,title:t})).sort((e,t)=>e.index-t.index).map(e=>{let n=t.filter(t=>t.phaseIndex===e.index).sort((e,t)=>(e.agentIndex??0)-(t.agentIndex??0)),r=n.some(e=>zs(e.status)||e.status===`idle`),i=n.filter(e=>Rs(e.status)).length,a=n.length===0?`pending`:r?`running`:`done`;return{index:e.index,title:e.title,members:n,state:a,settledCount:i}}),unphasedMembers:t.filter(e=>e.phaseIndex===null).sort((e,t)=>(e.agentIndex??0)-(t.agentIndex??0))}})}function Ks(e){let t=e.some(({status:e})=>e===`pending`||e===`running`||e===`waiting`);return{label:`${t?`Kicked off`:`Ran`} ${e.length} ${e.length===1?`subagent`:`subagents`}`,active:t,failed:e.some(({status:e})=>e===`failed`)}}function qs(e){let t={working:0,done:0,failed:0,stopped:0,idle:0};for(let n of e)n===`pending`||n===`running`||n===`waiting`?t.working+=1:n===`completed`?t.done+=1:n===`failed`?t.failed+=1:n===`idle`?t.idle+=1:t.stopped+=1;return Object.keys(t).filter(e=>t[e]>0).map(e=>`${t[e]} ${e}`).join(` · `)}function Js(e){let t=e.replace(/^Subagent:\s*/i,``),n=/^\/root\/(?:[^/]+\/)*([^/]+)\/?$/u.exec(t);return n===null?t:n[1].replace(/[_\s]+/gu,` `).trim().replace(/(^|\s)\S/gu,e=>e.toUpperCase())||t}function Ys(e){let t=e.model?.trim(),n=e.provider?ce(e.provider.driver,t,e.provider.models):t,r=e.provider?.models.find(e=>e.slug===n),i=r?r.shortName||r.name:t?Xe(t):`Not reported`,a=r?.subProvider?.trim(),o=a&&i.replace(RegExp(`^${a.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}(?:\\s*[.:/-]\\s*|\\s+)`,`iu`),``).trim()||i,s=e.parentThread?.worktreePath??e.parentProject?.workspaceRoot,c=e.childThread?.worktreePath??e.childProject?.workspaceRoot;return{modelLabel:o,workspace:[...e.parentThread&&e.childProject&&e.childProject.id!==e.parentThread.projectId?[{label:`Project`,value:e.childProject.title}]:[],...s&&c&&s!==c?[{label:e.childThread?.branch?`Branch`:e.childThread?.worktreePath?`Worktree`:`Workspace`,value:e.childThread?.branch??ao(c)}]:[]]}}function Xs(e){let t=e.result?.trim(),n=e.progress?.trim(),r=((Rs(e.status)?t||n:n||t)||``).replace(/\s+/gu,` `);return r.length>280?`${r.slice(0,280).trimEnd()}…`:r||null}function Zs(e){return e!=null&&$s(e.status)}function Qs(e){return e?.status===`queued`?e.activeRunId===null:e?.status!==`preparing`&&e?.status!==`starting`&&e?.status!==`running`}function $s(e){return e===`preparing`||e===`queued`||e===`starting`||e===`running`||e===`waiting`}function ec(e){return be(e)}function tc(e){return e===null?null:ec(e)}function nc(e){return e===`completed`||e===`interrupted`||e===`failed`||e===`cancelled`||e===`rolled_back`}function rc(e){let t=Fo(e.pendingBackgroundTasks??[])&&e.status!==`failed`;return e.latestRunId===null&&e.activeProviderThreadId===null&&!t?null:{status:t?`idle`:e.activityRunStatus??e.status,activeRunId:e.activeRunId,activityStartedAt:e.activityRunStartedAt===void 0?void 0:tc(e.activityRunStartedAt),providerInstanceId:e.providerInstanceId,providerName:null,lastError:e.lastError??null,lastErrorClass:e.lastErrorClass??null,usageLimitResetAt:e.usageLimitResetAt??null,updatedAt:ec(e.updatedAt)}}function ic(e,t){return{...t,environmentId:e}}function ac(e,t,n=null){let r=ec(t.updatedAt),i=t.latestRunId===null?null:{runId:t.latestRunId,status:t.status===`idle`?`completed`:t.status,requestedAt:tc(t.latestRunRequestedAt??null),startedAt:tc(t.latestRunStartedAt??null),completedAt:t.latestRunCompletedAt===void 0?t.status===`idle`||nc(t.status)?r:null:tc(t.latestRunCompletedAt),assistantMessageId:null};return{environmentId:e,id:t.id,projectId:t.projectId,title:t.lineage.relationshipToParent===`subagent`?Js(t.title):t.title,providerInstanceId:t.providerInstanceId,modelSelection:t.modelSelection,runtimeMode:t.runtimeMode,interactionMode:t.interactionMode,branch:t.branch,worktreePath:t.worktreePath,pullRequests:jo(t),designs:t.designs??[],linkedPullRequest:t.linkedPullRequest??null,branchPullRequest:t.branchPullRequest??null,sideChat:t.sideChat===!0,lineage:t.lineage,forkedFrom:t.forkedFrom,activeProviderThreadId:t.activeProviderThreadId,latestRun:i,runtime:rc(t),latestUserMessageAt:tc(t.latestUserMessageAt),...t.latestUserAuthoredMessageAt===void 0?{}:{latestUserAuthoredMessageAt:tc(t.latestUserAuthoredMessageAt)},hasPendingApprovals:t.pendingRuntimeRequest!==null&&t.pendingRuntimeRequest.kind!==`user_input`&&t.pendingRuntimeRequest.kind!==`auth_refresh`,hasPendingUserInput:t.pendingRuntimeRequest?.kind===`user_input`,pendingSubagentRequest:n,hasActionableProposedPlan:t.hasActionableProposedPlan,pendingBackgroundTasks:t.pendingBackgroundTasks??[],providerInstanceHistory:t.providerInstanceHistory??[],goal:t.goal??null,itemCount:t.itemCount,visibleItemCount:t.visibleItemCount,createdAt:ec(t.createdAt),updatedAt:r,archivedAt:tc(t.archivedAt),settledOverride:t.settledOverride,settledAt:tc(t.settledAt),unsettledAt:tc(t.unsettledAt??null),snoozedUntil:tc(t.snoozedUntil??null),snoozedAt:tc(t.snoozedAt??null),limitRecovery:t.limitRecovery??null,pinnedAt:tc(t.pinnedAt??null),autoSettleDisabledAt:tc(t.autoSettleDisabledAt??null),pinOrderKey:t.pinOrderKey??null,activeOrderKey:t.activeOrderKey??null,...t.lastVisitedAt===void 0?{}:{lastVisitedAt:tc(t.lastVisitedAt)},titleRegeneration:t.titleRegeneration==null?null:{requestId:t.titleRegeneration.requestId,startedAt:ec(t.titleRegeneration.startedAt)},deletedAt:tc(t.deletedAt),source:t}}function oc(e){let t=e=>e!=null&&Number.isFinite(Date.parse(e))?e:null;if(e.runtime?.activityStartedAt!==void 0)return t(e.runtime.activityStartedAt);let n=e.latestRun;return n?.completedAt===null&&n.runId===e.runtime?.activeRunId?t(n.startedAt)??t(n.requestedAt):null}function*sc(e){for(let[t,n]of e.entries)n.enabled&&(yield t)}var cc=Object.freeze({isReady:!1,entries:new Map});function lc(e){let t=ca(),n={mode:`serial`,key:()=>`environment-catalog`},r=e.atom(Ze(J.pipe(P(e=>Gr(e.entries).pipe(or(e=>({isReady:!0,entries:e})))))),{initialValue:cc}),i=z(e=>Ae(_(e(r)),()=>cc)).pipe(N(`environment-catalog-value`)),a=e.atom(Ze($r.pipe(P(e=>e.changes))),{initialValue:[]}),o=z(e=>Ae(_(e(a)),()=>[])).pipe(N(`environment-github-routing-permissions`)),s=fi(e,{label:`environment-catalog:github-routing-permission`,scheduler:t,concurrency:n,execute:S(function*(e){let t=yield*J,n=(yield*u(t.entries)).get(e.environmentId);if(n===void 0)return yield*new Aa({environmentId:e.environmentId});yield*(yield*$r).set(n,e.permission)})}),c=e.atom(Ze(J.pipe(P(e=>Gr(e.networkStatus)))),{initialValue:`unknown`}),l=z(e=>Ae(_(e(c)),()=>`unknown`)).pipe(N(`environment-network-status-value`)),d=V(t=>e.atom(_a(t,Ze(ba.pipe(P(e=>Gr(e.state))))),{initialValue:Oi})),f=fi(e,{label:`environment-catalog:register`,scheduler:t,concurrency:n,execute:e=>J.pipe(T(t=>t.register(e)))}),p=fi(e,{label:`environment-catalog:remove`,scheduler:t,concurrency:n,execute:e=>J.pipe(T(t=>t.remove(e)))}),m=fi(e,{label:`environment-catalog:remove-relay-environments`,scheduler:t,concurrency:n,execute:e=>J.pipe(T(e=>e.removeRelayEnvironments()))}),h=fi(e,{label:`environment-catalog:set-enabled`,scheduler:t,concurrency:n,execute:e=>J.pipe(T(t=>t.setEnabled(e.environmentId,e.enabled)))});return{catalogAtom:r,catalogValueAtom:i,githubRoutingPermissionsValueAtom:o,setGitHubRoutingPermission:s,networkStatusAtom:c,networkStatusValueAtom:l,stateAtom:d,register:f,remove:p,removeRoute:fi(e,{label:`environment-catalog:remove-route`,scheduler:t,concurrency:n,execute:e=>J.pipe(T(t=>t.removeRoute(e.environmentId,e.routeId)))}),reorderRoutes:fi(e,{label:`environment-catalog:reorder-routes`,scheduler:t,concurrency:n,execute:e=>J.pipe(T(t=>t.reorderRoutes(e.environmentId,e.routeIds)))}),removeRelayEnvironments:m,retryNow:fi(e,{label:`environment-catalog:retry-now`,scheduler:t,concurrency:n,execute:e=>J.pipe(T(t=>t.retryNow(e)))}),setEnabled:h}}var uc=class extends b()(`InvalidScopedProjectKeyError`,{key:j}){get message(){return`Invalid scoped project atom key: ${JSON.stringify(this.key)}.`}},dc=class extends b()(`InvalidScopedThreadKeyError`,{key:j}){get message(){return`Invalid scoped thread atom key: ${JSON.stringify(this.key)}.`}},fc=class extends b()(`InvalidScopedProjectRefCollectionKeyError`,{key:j,cause:Ke()}){get message(){return`Invalid scoped project reference collection atom key: ${JSON.stringify(this.key)}.`}},pc=Kt(vt(Oe([j,j])));function mc(e){return`${e.environmentId}\u0000${e.projectId}`}function Z(e){return`${e.environmentId}\u0000${e.threadId}`}function hc(e){return JSON.stringify(e.map(e=>[e.environmentId,e.projectId]))}function gc(e){let t=e.indexOf(`\0`);if(t<0)throw new uc({key:e});return{environmentId:On.make(e.slice(0,t)),projectId:Hr.make(e.slice(t+1))}}function _c(e){let t;try{t=pc(JSON.parse(e))}catch(t){throw new fc({key:e,cause:t})}return t.map(([e,t])=>({environmentId:On.make(e),projectId:Hr.make(t)}))}function vc(e){let t=e.indexOf(`\0`);if(t<0)throw new dc({key:e});return{environmentId:On.make(e.slice(0,t)),threadId:dt.make(e.slice(t+1))}}function yc(e,t){return e.length===t.length&&e.every((e,n)=>e.environmentId===t[n]?.environmentId&&e.projectId===t[n]?.projectId)}function bc(e,t){return e.length===t.length&&e.every((e,n)=>e.environmentId===t[n]?.environmentId&&e.threadId===t[n]?.threadId)}function xc(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}var Sc=`token`,Cc=`host`,wc=`label`,Tc=new Set([`http:`,`https:`,`ws:`,`wss:`]),Ec=e=>new URLSearchParams(e.hash.startsWith(`#`)?e.hash.slice(1):e.hash),Dc=class extends b()(`RemoteBackendUrlMissingError`,{}){get message(){return`Enter a backend URL.`}},Oc=class extends b()(`RemotePairingUrlInvalidError`,{cause:yn(Ke()),protocol:yn(j)}){get message(){return`Pairing URL is invalid.`}},kc=class extends b()(`RemoteBackendUrlInvalidError`,{source:Ue([`direct-host`,`hosted-pairing-host`]),cause:yn(Ke()),protocol:yn(j)}){get message(){return`Backend URL is invalid.`}},Ac=class extends b()(`RemotePairingTokenMissingError`,{host:j}){get message(){return`Pairing URL is missing its token.`}},jc=class extends b()(`RemotePairingCodeMissingError`,{host:j}){get message(){return`Enter a pairing code.`}};Lt([Dc,Oc,kc,Ac,jc]);var Mc=e=>Tc.has(e.protocol),Nc=(e,t)=>{let n=e.trim();if(!n)throw new Dc;let r=n.replace(/^\/+/,``),i=/^[a-zA-Z][a-zA-Z\d+-]*:\/\//.test(r)?r:`https://${r}`,a;try{a=new URL(i)}catch(e){throw new kc({source:t,cause:e})}if(!Mc(a))throw new kc({source:t,protocol:a.protocol});return a.pathname=`/`,a.search=``,a.hash=``,a},Pc=e=>{let t=new URL(e.toString());return t.protocol===`ws:`?t.protocol=`http:`:t.protocol===`wss:`&&(t.protocol=`https:`),t.pathname=`/`,t.search=``,t.hash=``,t.toString()},Fc=e=>{let t=new URL(e.toString());return t.protocol===`http:`?t.protocol=`ws:`:t.protocol===`https:`&&(t.protocol=`wss:`),t.pathname=`/`,t.search=``,t.hash=``,t.toString()},Ic=e=>{let t=Ec(e).get(Sc)?.trim()??``;if(t.length>0)return t;let n=e.searchParams.get(Sc)?.trim()??``;return n.length>0?n:null},Lc=e=>{let t=new URL(e.toString()),n=Ec(t);return n.has(Sc)&&(n.delete(Sc),t.hash=n.toString()),t.searchParams.delete(Sc),t},Rc=(e,t)=>{let n=new URL(e.toString());return n.searchParams.delete(Sc),n.hash=new URLSearchParams([[Sc,t]]).toString(),n},zc=e=>{let t=e.searchParams.get(Cc)?.trim()??``,n=Ic(e)?.trim()??``,r=e.searchParams.get(wc)?.trim()??``;return!t||!n?null:{host:t,token:n,label:r}},Bc=e=>{let t=e.pairingUrl?.trim()??``;if(t.length>0){let e;try{e=new URL(t)}catch(e){throw new Oc({cause:e})}if(!Mc(e))throw new Oc({protocol:e.protocol});let n=zc(e);if(n){let e=Nc(n.host,`hosted-pairing-host`);return{credential:n.token,httpBaseUrl:Pc(e),wsBaseUrl:Fc(e)}}let r=Ic(e)??``;if(!r)throw new Ac({host:e.host});return{credential:r,httpBaseUrl:Pc(e),wsBaseUrl:Fc(e)}}let n=e.host?.trim()??``,r=e.pairingCode?.trim()??``;if(!n)throw new Dc;let i=Nc(n,`direct-host`);if(!r)throw new jc({host:i.host});return{credential:r,httpBaseUrl:Pc(i),wsBaseUrl:Fc(i)}},Vc=class extends Zt()(`@p4code/client-runtime/connection/onboarding/ConnectionOnboarding`){},Hc=S(`clientRuntime.connection.onboarding.resolvePairingTarget`)(function*(e){return yield*Sr({try:()=>Bc(e),catch:e=>new Fa({reason:`configuration`,detail:e instanceof Error?e.message:`The pairing details are invalid.`})})});function Uc(e,t){return`bearer:${e}:${new URL(t).origin}`}function Wc(e){return new Fa({reason:`configuration`,detail:`That address reaches ${e}, a different machine. Add it as its own environment instead.`})}var Gc=S(`clientRuntime.connection.onboarding.preparePairingRegistration`)(function*(e){let t=yield*Hc(e),n=yield*na,i=yield*r({httpBaseUrl:t.httpBaseUrl}).pipe(L(La));if(e.expectedEnvironmentId!==void 0&&i.environmentId!==e.expectedEnvironmentId)return yield*Wc(i.label);let a=Ua(i);if(a!==null&&a.serverUpdateRequired!==!0)return yield*a;let o=yield*xi({httpBaseUrl:t.httpBaseUrl,credential:t.credential,clientMetadata:n.metadata}).pipe(L(La)),s=Uc(i.environmentId,t.httpBaseUrl);return new ha({target:new ei({environmentId:i.environmentId,label:i.label,connectionId:s}),profile:new Da({connectionId:s,environmentId:i.environmentId,label:i.label,httpBaseUrl:t.httpBaseUrl,wsBaseUrl:t.wsBaseUrl}),credential:new $i({token:o.access_token})})}),Kc=S(`clientRuntime.connection.onboarding.registerPairingConnection`)(function*(e){let t=yield*Gc(e),n=yield*J;return(yield*n.register(t))?(yield*n.setCompatibility(t.target.environmentId,null),yield*n.setEnabled(t.target.environmentId,!0).pipe(Wt({EnvironmentNotRegisteredError:()=>I})),t.target.environmentId):t.target.environmentId}),qc=Hn($i),Jc=Hn(Da),Yc=S(`clientRuntime.connection.onboarding.updateBearerConnection`)(function*(e){let t=yield*J,n=yield*wi,r=(yield*u(t.entries)).get(e.environmentId),i=r===void 0?void 0:ua(r).find(e=>e.target._tag===`BearerConnectionTarget`),a=r===void 0||i===void 0?r:vi(r,i),o=a?.target._tag===`BearerConnectionTarget`?yield*n.get(a.target.connectionId):y(),s=yield*Xc({input:e,entry:me(a),credential:o});yield*t.register(s)}),Xc=S(`clientRuntime.connection.onboarding.prepareBearerConnectionUpdate`)(function*(e){let t=D(e.entry);if(t==null||t.target._tag!==`BearerConnectionTarget`||k(t.profile)||!Jc(t.profile.value))return yield*new Fa({reason:`configuration`,detail:`Only saved bearer environments can be edited.`});let n=e.credential;if(k(n)||!qc(n.value))return yield*new Fa({reason:`authentication`,detail:`The saved bearer credential is unavailable.`});let r=e.input.label.trim();if(r===``)return yield*new Fa({reason:`configuration`,detail:`Environment label cannot be empty.`});let i=yield*Sr({try:()=>Wa(e.input.httpBaseUrl),catch:e=>new Fa({reason:`configuration`,detail:e instanceof Error?e.message:`The environment URL is invalid.`})}),a=t.target.connectionId;return new ha({target:new ei({environmentId:e.input.environmentId,label:r,connectionId:a}),profile:new Da({connectionId:a,environmentId:e.input.environmentId,label:r,httpBaseUrl:i,wsBaseUrl:Ga(i)}),credential:n.value})}),Zc=S(`clientRuntime.connection.onboarding.prepareSshRegistration`)(function*(e){let t=yield*(yield*Ji).provision(e.target,e.expectedEnvironmentId),n=`ssh:${t.environmentId}:${Si(t.bootstrap.target)}`,r=e.label?.trim()||t.label||t.bootstrap.target.alias;return new Xi({target:new la({environmentId:t.environmentId,label:r,connectionId:n}),profile:new Ta({connectionId:n,environmentId:t.environmentId,label:r,target:t.bootstrap.target})})}),Qc=S(`clientRuntime.connection.onboarding.registerSshConnection`)(function*(e){let t=yield*Zc(e);return e.expectedEnvironmentId!==void 0&&t.target.environmentId!==e.expectedEnvironmentId?yield*Wc(t.target.label):(yield*(yield*J).register(t),t.target.environmentId)}),$c=w(function*(){let e=yield*J,t=yield*na,n=yield*lt,r=yield*Ji,i=yield*wi;return Vc.of({registerPairing:r=>Kc(r).pipe(Yt(J,e),Yt(na,t),Yt(lt,n)),registerSsh:t=>Qc(t).pipe(Yt(J,e),Yt(Ji,r)),updateBearer:t=>Yc(t).pipe(Yt(J,e),Yt(wi,i))})}),el=Fe(Vc,$c),tl=class extends Zt()(`@p4code/client-runtime/platform/source/PlatformConnectionSource`){},nl=S(`connection.watchDiscoveredCompatibility`)(function*(){let e=yield*J,t=yield*ai,n=new Map;yield*Sn(Gr(t.state),Gr(e.entries)).pipe(ut(()=>w(function*(){let r=yield*u(t.state);if(!r.refreshing)for(let e of n.keys())r.environments.has(e)||n.delete(e);let i=yield*u(e.entries);for(let t of r.environments.values()){let r=D(t.status),a=r?.descriptor;if(r===null||a===void 0)continue;let o=t.environment.environmentId,s=i.get(o);if(s===void 0||ua(s).length!==1||!Zr(s))continue;let c=n.get(o),l=c?.checkedAt!==r.checkedAt||(c.descriptor?.orchestrationProtocolVersion??1)!==(a.orchestrationProtocolVersion??1)||c.descriptor?.serverVersion!==a.serverVersion,u=Ua(a);(u!==null||l)&&(yield*e.setCompatibility(o,u)),n.set(o,r)}}).pipe(H(e=>F(`Could not apply discovered environment compatibility.`,{error:e})))))});function rl(e){let t=Na.pipe(it(ke(ji,Va(e)))),n=ta.pipe(it(t)),r=el.pipe(it(n)),i=ke(n,ni,r,ji);return qe(w(function*(){let e=yield*J,t=yield*tl;yield*nl().pipe(O),yield*e.start,yield*t.registrations.pipe(ut(e.reconcilePlatform),O)}).pipe(wr(`clientRuntime.connection.application.start`))).pipe(Ur(i),Ur(ka))}rl({});function il(e){switch(e.phase){case`available`:return{phase:`available`,error:null,traceId:null};case`offline`:return{phase:`offline`,error:null,traceId:null};case`connecting`:return{phase:e.attempt<=1&&e.lastFailure===null?`connecting`:`reconnecting`,error:e.lastFailure?.message??null,traceId:e.lastFailure?.traceId??null};case`connected`:return{phase:`connected`,error:null,traceId:null};case`backoff`:return{phase:`reconnecting`,error:e.lastFailure?.message??null,traceId:e.lastFailure?.traceId??null};case`blocked`:return{phase:e.lastFailure?.reason===`unsupported`?`unsupported`:`error`,error:e.lastFailure?.message??null,traceId:e.lastFailure?.traceId??null}}}function al(e){switch(e.phase){case`available`:return`Available`;case`offline`:return`Offline`;case`connecting`:return`Connecting...`;case`reconnecting`:return e.error?`Failed to connect. Reconnecting... Reason: ${e.error}`:`Reconnecting...`;case`connected`:return`Connected`;case`unsupported`:return`Client not supported`;case`error`:return e.error?`Connection failed. Reason: ${e.error}`:`Connection failed`}}function ol(e){return e.phase===`reconnecting`&&e.error?`Failed to connect. Reconnecting...`:al({...e,error:null})}function sl(e){return il(e)}function cl(e){let t=e.connectedTarget?ii(e.connectedTarget):null,n=ua(e.entry),r=n.find(e=>ii(e.target)===t);for(let t of r?[r,...n]:n){let n=t.target._tag===`RelayConnectionTarget`?e.relayHttpBaseUrl??null:yi(t),r=n===null?null:ll(n);if(r!==null)return r}return null}function ll(e){let t;try{t=new URL(e)}catch{return null}return t.pathname=`/mcp`,t.search=``,t.hash=``,t.toString()}function ul(e){switch(e.target._tag){case`PrimaryConnectionTarget`:return e.target.httpBaseUrl;case`RelayConnectionTarget`:return null;case`BearerConnectionTarget`:return x(e.profile)&&e.profile.value._tag===`BearerConnectionProfile`?e.profile.value.httpBaseUrl:null;case`SshConnectionTarget`:return x(e.profile)&&e.profile.value._tag===`SshConnectionProfile`?`${e.profile.value.target.username}@${e.profile.value.target.hostname}`:null}}var dl=S(`runCachePersistence`)(function*(e,t){let n=yield*Mt(e);for(yield*bt(`500 millis`),n=Ae(yield*Ee(e),()=>n);;)yield*t(n),yield*bt(`10 seconds`),n=yield*Mt(e)}),fl={status:`idle`},pl=z(fl).pipe(N(`environment-data:server:update-state:empty`)),ml=V(e=>z(fl).pipe(N(`environment-data:server:update-state:${e}`))),hl=class extends b()(`ServerUpdateResumeTimeoutError`,{environmentId:j,targetVersion:j}){get message(){return`The server did not resume on @p4code/cli@${this.targetVersion}.`}},gl=class extends b()(`ServerUpdateProgressIncompleteError`,{targetVersion:j}){get message(){return`The @p4code/cli@${this.targetVersion} update ended before the server accepted the restart.`}},_l=class extends b()(`ServerUpdateTerminalError`,{targetVersion:j,status:Ue([`committed`,`rolled-back`,`failed`]),reason:yn(j)}){get message(){return this.reason??`The @p4code/cli@${this.targetVersion} update ${this.status}.`}},vl=ln(32);function yl(e,t){return e.updateId===void 0?t.payload.environment.serverVersion===e.targetVersion:t.payload.updateOutcome?.id===e.updateId}function bl(e,t){return e.method===`desktop-app`&&e.desktopUpdateToken!==void 0||yl(e,t)}function xl(e,t){if(e.updateId===void 0)return I;let n=t.payload.updateOutcome;return n?.id===e.updateId&&n.status===`committed`&&n.targetVersion===e.targetVersion&&t.payload.environment.serverVersion===e.targetVersion?I:E(new _l({targetVersion:e.targetVersion,status:n?.status??`failed`,reason:n?.reason??`The service launcher resumed without committing the requested server version.`}))}function Sl(e){return e.stateChanges.pipe(xr(e=>e.phase===`backoff`||e.phase===`blocked`&&e.lastFailure?.reason===`authentication`),ut(()=>bt(e.interval??Xn(1)).pipe(Jt(e.retryNow))),$e(vl),dr)}function Cl(e){return e.pipe(Qn(e=>e.phase===`connected`),xr(e=>e.phase===`connected`),Ir,kr)}var wl=S(`runDesktopCommitWithReconnectObserver`)(function*(e,t){let n=yield*jn(),r=yield*jn(),i=yield*e.pipe(In(()=>tr(n,void 0)),Cl,Jt(tr(r,void 0)),f);yield*Qe(n);let a=yield*t.pipe(g);if(sr(a)){yield*nr(i);return}return Al(a.cause)?(yield*Qe(r).pipe(Rt(vl)),yield*Rn(a.cause)):(yield*nr(i),yield*Rn(a.cause))}),Tl=S(`waitForDesktopUpdateTarget`)(function*(e,t,n,r=3){for(let i=1;i<=r;i+=1){let a=yield*t;if(a.payload.environment.serverVersion===e)return a;if(i===r)break;let o=yield*n.pipe(g);if(sr(o))break;if(!Al(o.cause))return yield*Rn(o.cause)}return yield*new _l({targetVersion:e,status:`failed`,reason:`The desktop app resumed without installing the prepared update.`})});function El(e,t,n){return{status:`running`,stage:n.type===`complete`?`resuming`:n.stage,fromVersion:e,targetVersion:t}}function Dl(e,t){return e.status===`idle`||e.status===`running`||t===null||e.fromVersion===t?e:fl}function Ol(e){return e instanceof Error?e.message:`Server update failed.`}function kl(e){if(!zi(e))return!1;switch(e.reason._tag){case`SocketReadError`:case`SocketWriteError`:case`SocketCloseError`:return!0;default:return!1}}function Al(e){return Lr(e)?!0:e.reasons.length>0&&e.reasons.every(e=>Ge(e)&&kl(e.error))}function jl(e,t,n){return x(t)&&(sr(n)||Al(n.cause))?M(t.value):hn(n)?Rn(n.cause):E(new gl({targetVersion:e}))}var Ml=e=>({version:1,type:`snapshot`,config:e}),Nl=S(`EnvironmentServerConfigState.make`)(function*(e){let t=yield*ba,n=yield*Sa,r=t.target.environmentId,i=yield*n.loadServerConfig(r).pipe(H(e=>F(`Could not load cached server configuration.`).pipe(B({environmentId:r,...Ki(e)}),tn(y())))),a=yield*Et(xt(i,e=>({config:Ra(e),latestEvent:Ml(Ra(e)),source:`cache`}))),o=yield*Ft(1),s=yield*Li(y()),c=S(`EnvironmentServerConfigState.persist`)(function*(e){return yield*n.saveServerConfig(r,Ra(e)).pipe(tn(!0),H(e=>F(`Could not persist cached server configuration.`).pipe(B({environmentId:r,...Ki(e)}),tn(!1))))}),l=S(`EnvironmentServerConfigState.persistPending`)(function*(e){(yield*c(e))&&(yield*gi(s,t=>x(t)&&t.value===e?y():t))});return yield*hr(()=>q(s).pipe(T(Ot({onNone:()=>I,onSome:e=>c(e).pipe(kr)})))),yield*dl(o,l).pipe(O),yield*Oa(A.subscribeServerConfig,{...e.environmentThemes===!0?{environmentThemes:!0}:{},...e.usageLimitSources===!0?{usageLimitSources:!0}:{},...e.usageLimitsCommand===!0?{usageLimitsCommand:!0}:{}}).pipe(ut(e=>w(function*(){let t=Yi(yield*u(a),e);k(t)||(yield*W(s,C(t.value.config)),yield*kt(a,t),yield*Ct(o,t.value.config))})),O),a});function Pl(e,t){return _a(e,Ze(Nl(t).pipe(P(e=>Gr(e).pipe(en(e=>Ot(e,{onNone:()=>mt,onSome:e=>o(e)})))))))}function Fl(e,t,n){return n.type===`welcome`&&e.currentSession===t?{...e,welcomeSession:t,welcome:n.payload}:e}function Il(e){return e.currentSession===e.welcomeSession?e.welcome:null}var Ll=S(`EnvironmentServerWelcomeState.make`)(function*(){let e=yield*ba,t=D(yield*u(e.session)),n=yield*Et({currentSession:t,welcomeSession:null,welcome:null}),r=S(`EnvironmentServerWelcomeState.updateWithCurrentSession`)(function*(t){return yield*St(n,n=>u(e.session).pipe(P(e=>[void 0,t(n,D(e))])))});return yield*Gr(e.session).pipe(ut(()=>r((e,t)=>({...e,currentSession:t}))),O),yield*wa(A.subscribeServerLifecycle,S(`EnvironmentServerWelcomeState.makeSubscribeInput`)(function*(e){return yield*r((t,n)=>n===e?{...t,currentSession:n,welcomeSession:e,welcome:null}:{...t,currentSession:n}),{}})).pipe(ut(([e,t])=>r((n,r)=>Fl({...n,currentSession:r},e,t))),O),n});function Rl(e){return _a(e,Ze(Ll().pipe(P(e=>Gr(e).pipe(or(Il))))))}function zl(e,t){return e?.source===`live`&&(t===null||e.config.environment.serverVersion===t.environment.serverVersion)?e.config:t??e?.config??null}function Bl(e,t){let n=ca(),r=ca(),i={mode:`serial`,key:({environmentId:e})=>e},a=V(n=>e.atom(Pl(n,{...t.environmentThemes===!0?{environmentThemes:!0}:{},...t.usageLimitSources===!0?{usageLimitSources:!0}:{},...t.usageLimitsCommand===!0?{usageLimitsCommand:!0}:{}})).pipe(yr(3e5),N(`environment-data:server:config-projection:${n}`))),s=e=>a(e.environmentId),c=z(null).pipe(N(`environment-data:server:config:empty`)),l=V(e=>e===null?c:z(n=>zl(D(_(n(s({environmentId:e,input:{}})))),n(t.initialConfigValueAtom(e)))).pipe(N(`environment-data:server:config:${e}`))),u=V(e=>z(t=>Dl(t(ml(e)),t(l(e))?.environment.serverVersion??null)).pipe(N(`environment-data:server:update-state-value:${e}`))),d=e=>e===null?pl:u(e),p=fi(e,{label:`environment-data:server:update-server`,scheduler:r,concurrency:i,execute:(e,t)=>{let r=ml(e.environmentId),a=e.input.targetVersion,o=t.get(l(e.environmentId))?.environment.serverVersion??a,s=`downloading`,c=!1;return t.set(r,{status:`running`,stage:s,fromVersion:o,targetVersion:a}),w(function*(){let u=yield*J,d=yield*jn(),p=yield*jn(),m=yield*jn();yield*Qe(d).pipe(Jt(u.stateChanges(e.environmentId).pipe(In(()=>tr(p,void 0)),Qn(e=>e.phase===`connected`),xr(e=>e.phase===`connected`),Ir)),Jt(tr(m,void 0)),f);let h=yield*Ni(t,n,i,e,w(function*(){let n=t.get(l(e.environmentId));o=n?.environment.serverVersion??a,t.set(r,{status:`running`,stage:s,fromVersion:o,targetVersion:a});let i=n?.environment.capabilities.serverSelfUpdateProgress===!0?yield*w(function*(){let n=yield*Li(y()),i=yield*u.runStream(e.environmentId,Jr(A.serverUpdateServerWithProgress,e.input)).pipe(ut(e=>R(()=>{s=e.type===`complete`?`resuming`:e.stage,t.set(r,El(o,a,e))}).pipe(Jt(e.type===`complete`?W(n,C(e.result)):I))),g);return yield*jl(a,yield*q(n),i)}):yield*w(function*(){let t=n?.environment.capabilities.serverSelfUpdate,r=yield*u.run(e.environmentId,Ui(A.serverUpdateServer,e.input)).pipe(g);return sr(r)?r.value:(t===`boot-service`||t===`respawn`)&&Al(r.cause)?{targetVersion:a,method:t}:yield*Rn(r.cause)});if(i.method===`desktop-app`&&i.desktopUpdateToken!==void 0){yield*tr(d,void 0),yield*Qe(p);let t=yield*u.run(e.environmentId,Ui(A.serverCommitDesktopUpdate,{requestId:i.desktopUpdateToken})).pipe(g);if(hn(t)&&!Al(t.cause))return yield*Rn(t.cause);c=hn(t)}return a=i.targetVersion,s=`resuming`,t.set(r,{status:`running`,stage:s,fromVersion:o,targetVersion:a}),i}));yield*Sl({stateChanges:u.stateChanges(e.environmentId),retryNow:u.retryNow(e.environmentId)}).pipe(f),h.method===`desktop-app`&&c&&(yield*Qe(m).pipe(Rt(vl)));let ee=u.followStream(e.environmentId,Oa(A.subscribeServerLifecycle,{})).pipe(xr(e=>e.type===`ready`&&bl(h,e)),Ir,$e(vl),P(Je)).pipe(T(Ot({onNone:()=>new hl({environmentId:e.environmentId,targetVersion:a}),onSome:M}))),te=h.desktopUpdateToken;return yield*xl(h,h.method===`desktop-app`&&te!==void 0?yield*Tl(h.targetVersion,ee,wl(u.stateChanges(e.environmentId),u.run(e.environmentId,Ui(A.serverCommitDesktopUpdate,{requestId:te})).pipe(kr))):yield*ee),t.set(r,fl),h}).pipe(fn(e=>R(()=>{if(!sr(e)){if(Lr(e.cause)){t.set(r,fl);return}t.set(r,{status:`failed`,stage:s,fromVersion:o,targetVersion:a,message:Ol(oe(e.cause))})}})))}}),m=V(e=>z(t=>t(l(e))?.settings??null).pipe(N(`environment-data:server:settings:${e}`))),h=V(e=>z(t=>{let n=t(m(e))?.usagePriceOverrides??{};return JSON.stringify(Object.keys(n).sort().map(e=>{let t=n[e];return[e,t.inputCostPerMillionTokens,t.outputCostPerMillionTokens,t.cacheReadCostPerMillionTokens,t.cacheWriteCostPerMillionTokens]}))}).pipe(N(`environment-data:server:usage-prices:${e}`))),ee=V(e=>z(t=>{let n=t(m(e)),r=n?.usageModelAliases??{};return JSON.stringify([t(h(e)),Object.keys(r).sort().map(e=>[e,r[e]]),n?.cursorKeychainUsageEnabled??!1])}).pipe(N(`environment-data:server:usage-scan-settings:${e}`))),te=V(e=>z(t=>t(l(e))?.providers??null).pipe(N(`environment-data:server:providers:${e}`))),ne=V(t=>e.atom(Rl(t),{initialValue:null}).pipe(yr(3e5),N(`environment-data:server:welcome-state:${t}`))),re=V(e=>z(t=>{let n=t(ne(e));return n._tag===`Success`?n.value===null?ct(n.waiting):_t(n.value,n):n}).pipe(N(`environment-data:server:welcome:${e}`))),ie=e=>re(e.environmentId),ae=G(e,{label:`environment-data:server:update-settings`,tag:A.serverUpdateSettings,scheduler:n,concurrency:i});return{configValueAtom:l,runStorageCleanup:G(e,{label:`environment-data:server:run-storage-cleanup`,tag:A.serverRunStorageCleanup,concurrency:{mode:`singleFlight`,key:({environmentId:e})=>e}}),storageCleanupReport:bi(e,{label:`environment-data:server:storage-cleanup-report`,tag:A.serverGetStorageCleanupReport,idleTtlMs:0}),updateStateAtom:d,settingsValueAtom:m,providersValueAtom:te,providerAuthState:bi(e,{label:`environment-data:provider:auth-state`,tag:A.providerAuthSubscribe,idleTtlMs:0}),startProviderAuth:G(e,{label:`environment-data:provider:auth-start`,tag:A.providerAuthStart,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>JSON.stringify([e,t])}}),respondProviderAuth:G(e,{label:`environment-data:provider:auth-respond`,tag:A.providerAuthRespond}),completeProviderAuth:G(e,{label:`environment-data:provider:auth-complete`,tag:A.providerAuthComplete}),chatGptReconnectProfile:G(e,{label:`environment-data:chatgpt:reconnect-profile`,tag:A.chatGptReconnectProfile}),chatGptImportProfile:G(e,{label:`environment-data:chatgpt:import-profile`,tag:A.chatGptImportProfile}),chatGptHandoffState:si(e,{label:`environment-data:chatgpt:handoff`,sensitiveInput:!0,subscribe:e=>Jr(A.chatGptHandoffSubscribe,e),idleTtlMs:0}),codexAuthCallbackState:bi(e,{label:`environment-data:codex:auth-callback`,tag:A.codexAuthCallbackSubscribe,idleTtlMs:0}),cancelProviderAuth:G(e,{label:`environment-data:provider:auth-cancel`,tag:A.providerAuthCancel}),logoutProviderAuth:G(e,{label:`environment-data:provider:auth-logout`,tag:A.providerAuthLogout}),providerInstallState:bi(e,{label:`environment-data:provider:install-state`,tag:A.providerInstallSubscribe,idleTtlMs:0}),startProviderInstall:G(e,{label:`environment-data:provider:install-start`,tag:A.providerInstallStart,concurrency:{mode:`singleFlight`,key:({environmentId:e})=>e}}),cancelProviderInstall:G(e,{label:`environment-data:provider:install-cancel`,tag:A.providerInstallCancel}),removeProviderInstallation:G(e,{label:`environment-data:provider:install-remove`,tag:A.providerInstallRemove}),traceDiagnostics:K(e,{label:`environment-data:server:trace-diagnostics`,tag:A.serverGetTraceDiagnostics}),processDiagnostics:K(e,{label:`environment-data:server:process-diagnostics`,tag:A.serverGetProcessDiagnostics}),hostResources:sa(e,{label:`environment-data:server:host-resources`,idleTtlMs:0,staleTimeMs:5e3,execute:e=>Ui(A.serverGetHostResources,e).pipe(Rt(`5 seconds`))}),processResourceHistory:K(e,{label:`environment-data:server:process-resource-history`,tag:A.serverGetProcessResourceHistory}),scheduledTaskWebhookDeliveries:K(e,{label:`environment-data:server:scheduled-task:webhook-deliveries`,tag:A.scheduledTasksListWebhookDeliveries}),scheduledTaskWebhookDelivery:K(e,{label:`environment-data:server:scheduled-task:webhook-delivery`,tag:A.scheduledTasksGetWebhookDelivery}),scheduledTasksLive:bi(e,{label:`environment-data:server:scheduled-tasks:live`,tag:A.scheduledTasksSubscribe}),threadDecisionsLive:bi(e,{label:`environment-data:server:thread-decisions:live`,tag:A.subscribeThreadDecisions}),usageSummary:K(e,{label:`environment-data:server:usage-summary`,tag:A.serverGetUsageSummary,staleTimeMs:6e4,refreshTrigger:({environmentId:e})=>ee(e),execute:(e,t)=>Ui(A.serverGetUsageSummary,e).pipe(T(n=>n.sources.some(e=>e.refreshing===!0)?t(n).pipe(Jt(Ui(A.serverGetUsageSummary,{...e,awaitRefresh:!0})),H(e=>F(`Could not refresh slow usage sources.`).pipe(B({...Ki(e)}),tn(n)))):M(n)))}),resourceTelemetry:bi(e,{label:`environment-data:server:resource-telemetry`,tag:A.subscribeResourceTelemetry,idleTtlMs:0}),resourceTelemetryHistory:K(e,{label:`environment-data:server:resource-telemetry-history`,tag:A.serverGetResourceTelemetryHistory,staleTimeMs:5e3}),searchAcpRegistry:K(e,{label:`environment-data:server:acp-registry:search`,tag:A.serverSearchAcpRegistry,staleTimeMs:0,idleTtlMs:0}),configProjection:s,welcome:ie,legacyThreadMigration:bi(e,{label:`environment-data:server:legacy-thread-migration`,tag:A.subscribeServerLifecycle,transform:e=>e.pipe(en(e=>e.type===`legacyThreadMigration`?o(e.payload):mt))}),consumeResetCredit:G(e,{label:`environment-data:server:consume-reset-credit`,tag:A.providerConsumeResetCredit,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>JSON.stringify([e,t])}}),refreshProviders:G(e,{label:`environment-data:server:refresh-providers`,tag:A.serverRefreshProviders,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.instanceId??null,t.cwd??null,t.fresh??!1,t.refreshModels??!1])}}),updateProvider:G(e,{label:`environment-data:server:update-provider`,tag:A.serverUpdateProvider,scheduler:n,concurrency:i}),updateServer:p,upsertKeybinding:G(e,{label:`environment-data:server:upsert-keybinding`,tag:A.serverUpsertKeybinding,scheduler:n,concurrency:i}),removeKeybinding:G(e,{label:`environment-data:server:remove-keybinding`,tag:A.serverRemoveKeybinding,scheduler:n,concurrency:i}),updateSettings:ae,mutateProviderInstance:ae,prepareAcpRegistryAgent:G(e,{label:`environment-data:server:acp-registry:prepare`,tag:A.serverPrepareAcpRegistryAgent,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>`${e}:${t.agentId}`}}),uninstallAcpRegistryManagedBinary:G(e,{label:`environment-data:server:acp-registry:uninstall-managed-binary`,tag:A.serverUninstallAcpRegistryManagedBinary,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>`${e}:${t.agentId}`}}),acceptAcpRegistryUrlAuth:G(e,{label:`environment-data:server:acp-registry:accept-url-auth`,tag:A.serverAcceptAcpRegistryUrlAuth,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>`${e}:${t.instanceId}:${t.elicitationId}`}}),listAcpRegistrySessions:G(e,{label:`environment-data:server:acp-registry:list-sessions`,tag:A.serverListAcpRegistrySessions,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>`${e}:${t.instanceId}:${t.projectId}:${t.cursor??`first`}`}}),importAcpRegistrySession:G(e,{label:`environment-data:server:acp-registry:import-session`,tag:A.serverImportAcpRegistrySession,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>`${e}:${t.instanceId}:${t.projectId}:${t.sessionId}`}}),deleteAcpRegistrySession:G(e,{label:`environment-data:server:acp-registry:delete-session`,tag:A.serverDeleteAcpRegistrySession,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>`${e}:${t.instanceId}:${t.projectId}:${t.sessionId}`}}),listAcpRegistryProviders:G(e,{label:`environment-data:server:acp-registry:list-providers`,tag:A.serverListAcpRegistryProviders,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>`${e}:${t.instanceId}:${t.projectId}`}}),setAcpRegistryProvider:G(e,{label:`environment-data:server:acp-registry:set-provider`,tag:A.serverSetAcpRegistryProvider,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>`${e}:${t.instanceId}:${t.projectId}:${t.providerId}`}}),disableAcpRegistryProvider:G(e,{label:`environment-data:server:acp-registry:disable-provider`,tag:A.serverDisableAcpRegistryProvider,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>`${e}:${t.instanceId}:${t.projectId}:${t.providerId}`}}),logoutAcpRegistry:G(e,{label:`environment-data:server:acp-registry:logout`,tag:A.serverLogoutAcpRegistry,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>`${e}:${t.instanceId}`}}),signalProcess:G(e,{label:`environment-data:server:signal-process`,tag:A.serverSignalProcess}),upsertScheduledTask:G(e,{label:`environment-data:server:scheduled-task:upsert`,tag:A.scheduledTasksUpsert,scheduler:n,concurrency:i}),setScheduledTaskEnabled:G(e,{label:`environment-data:server:scheduled-task:set-enabled`,tag:A.scheduledTasksSetEnabled,scheduler:n,concurrency:i}),deleteScheduledTask:G(e,{label:`environment-data:server:scheduled-task:delete`,tag:A.scheduledTasksDelete,scheduler:n,concurrency:i}),runScheduledTaskNow:G(e,{label:`environment-data:server:scheduled-task:run-now`,tag:A.scheduledTasksRunNow}),rotateScheduledTaskWebhookToken:G(e,{label:`environment-data:server:scheduled-task:rotate-webhook-token`,tag:A.scheduledTasksRotateWebhookToken,scheduler:n,concurrency:i}),answerSecretRequest:G(e,{label:`environment-data:server:secrets:answer-request`,tag:A.secretsAnswerRequest,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.threadId,t.turnItemId])}}),refreshUsageRates:G(e,{label:`environment-data:server:refresh-usage-rates`,tag:A.serverRefreshUsageRates,concurrency:{mode:`singleFlight`,key:({environmentId:e})=>e}}),mcpRegistryState:G(e,{label:`environment-data:mcp-registry:state`,tag:A.mcpRegistryState}),mcpRegistryTest:G(e,{label:`environment-data:mcp-registry:test`,tag:A.mcpRegistryTest,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.serverId])}}),mcpRegistryOAuthStart:G(e,{label:`environment-data:mcp-registry:oauth-start`,tag:A.mcpRegistryOAuthStart}),mcpRegistryOAuthSignOut:G(e,{label:`environment-data:mcp-registry:oauth-sign-out`,tag:A.mcpRegistryOAuthSignOut}),mcpRegistryProviderSignInState:G(e,{label:`environment-data:mcp-registry:provider-sign-in-state`,tag:A.mcpRegistryProviderSignInState,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.serverId])}}),mcpRegistryProviderSignInStart:G(e,{label:`environment-data:mcp-registry:provider-sign-in-start`,tag:A.mcpRegistryProviderSignInStart}),mcpRegistryProviderSignInComplete:G(e,{label:`environment-data:mcp-registry:provider-sign-in-complete`,tag:A.mcpRegistryProviderSignInComplete}),mcpRegistryProviderSignInCancel:G(e,{label:`environment-data:mcp-registry:provider-sign-in-cancel`,tag:A.mcpRegistryProviderSignInCancel}),mcpRegistryProviderSignInWait:G(e,{label:`environment-data:mcp-registry:provider-sign-in-wait`,tag:A.mcpRegistryProviderSignInWait}),mcpRegistryProviderSignOut:G(e,{label:`environment-data:mcp-registry:provider-sign-out`,tag:A.mcpRegistryProviderSignOut}),mcpRegistryDiscover:G(e,{label:`environment-data:mcp-registry:discover`,tag:A.mcpRegistryDiscover,concurrency:{mode:`singleFlight`,key:({environmentId:e})=>e}}),mcpRegistryImport:G(e,{label:`environment-data:mcp-registry:import`,tag:A.mcpRegistryImport}),checkOtlpEndpoint:G(e,{label:`environment-data:server:check-otlp-endpoint`,tag:A.serverCheckOtlpEndpoint}),retryResourceTelemetry:G(e,{label:`environment-data:server:retry-resource-telemetry`,tag:A.serverRetryResourceTelemetry,concurrency:{mode:`singleFlight`,key:({environmentId:e})=>e}})}}var Vl=ln(4),Hl=`15 seconds`,Ul=class extends b()(`OutdatedHostUpdateError`,{environmentId:j,message:j}){},Wl=S(`clientRuntime.connection.updateOutdatedHost`)(function*(e,t,n){let i=yield*J,o=yield*Ia,s=yield*Pi,l=yield*lt,d=(yield*u(i.entries)).get(e);if(d===void 0)return yield*new Aa({environmentId:e});let{prepared:f,descriptor:m}=yield*Le(ua(d).map(e=>o.prepareForUpdate(vi(d,e)))),h=m.capabilities;if(h.serverSelfUpdate===void 0||h.serverSelfUpdate===`desktop-managed`&&h.desktopAppUpdate!==!0)return yield*new Ul({environmentId:e,message:`Update P4 Code on ${m.label} manually; it cannot update itself.`});let ee=yield*Tt(w(function*(){let e=yield*a(Fe(Ei,Ha({pingTimeout:ki,retryTransientErrors:!1,retryPolicy:Pr(0)})).pipe(it(ke(ui(f.socketUrl,{openTimeout:Hl}).pipe(it(c(Pi,s))),Qr)))),r=yield*ti.pipe(Ar(e)),i=h.serverSelfUpdateProgress===!0?yield*w(function*(){let e=yield*Li(y()),i=yield*r[A.serverUpdateServerWithProgress](t).pipe(ut(t=>t.type===`complete`?W(e,C(t.result)):n(t.stage)),g);return yield*jl(t.targetVersion,yield*q(e),i)}):yield*r[A.serverUpdateServer](t).pipe(Jn(e=>(h.serverSelfUpdate===`boot-service`||h.serverSelfUpdate===`respawn`)&&Al(e),()=>M({targetVersion:t.targetVersion,method:h.serverSelfUpdate})));return i.method===`desktop-app`&&i.desktopUpdateToken!==void 0&&(yield*r[A.serverCommitDesktopUpdate]({requestId:i.desktopUpdateToken}).pipe(Jn(e=>Al(e),()=>I))),i}));yield*n(`resuming`);let te=[f.httpBaseUrl,...ua(d).flatMap(e=>yi(e)??[])].filter((e,t,n)=>n.indexOf(e)===t),ne=yield*Le(te.map(t=>r({httpBaseUrl:t}).pipe(Ln(t=>t.environmentId===e&&Gl(t),()=>`not-ready`)))).pipe(Yt(lt,l),Wn,p({schedule:ft(Xn(1)),until:e=>Nn(e,Gl)}),$e(Vl),P(Je));return k(ne)?yield*new Ul({environmentId:e,message:`${m.label} did not come back on a compatible P4 Code version.`}):(Zr(d)&&(yield*(yield*ai).refresh),yield*i.setCompatibility(e,null),yield*i.setEnabled(e,!0),{...ee,targetVersion:ne.value.serverVersion})});function Gl(e){return(e.orchestrationProtocolVersion??1)===2}var Kl=bt(`1 millis`),ql=pr(Se(zr(vt(Br)))),Jl=400;function Yl(e){if(!kn(e))return[];let t=e.threads;return Array.isArray(t)?t.map(e=>{if(!kn(e))return;let t=e.pullRequests;return delete e.pullRequests,t}):[]}function Xl(e,t){let n=e.threads.map(e=>e.id),r=w(function*(){let e=new Map,r=Jl;for(let[i,a]of n.entries()){let n=t[i];if(n===void 0)continue;let o=Array.isArray(n)?n.length:1;r+o>Jl&&(yield*Kl,r=0),r+=o;let s=yield*ql(n).pipe(H(e=>F(`Discarding unreadable shell pull request links.`,{threadId:a,cause:String(e)}).pipe(tn(void 0))));s!==void 0&&e.set(a,s)}return e});return{...e,loadPullRequests:r}}var Zl=pr(zr(Dr)),Ql=Ne(function*(e){let t=Yl(e);return Xl(yield*Zl(e),t)}),$l=2e4,eu=S(`clientRuntime.state.fetchEnvironmentShellSnapshot`)(function*(e){return yield*Zi({...e,group:`orchestration`,method:`GET`,url:e=>e.shellSnapshot(),timeoutMs:e.timeoutMs??$l,request:({client:e,headers:t})=>e.shellSnapshot({headers:fa(t),responseMode:`response-only`}).pipe(T(nu))})}),tu=pr(zr(ge)),nu=e=>{if(e.status===200)return e.json.pipe(T(Ql));let t=new vr({reason:new Un({request:e.request,response:e})});return e.json.pipe(T(tu),Bn({onFailure:()=>E(t),onSuccess:E}))},ru=class extends Zt()(`@p4code/client-runtime/state/shellSnapshotHttp/ShellSnapshotLoader`){},iu=Fe(ru,w(function*(){let e=yield*lt,t=yield*ue(ia),n=yield*ue(da);return ru.of({load:r=>eu({prepared:r,signer:t,remoteAuthorization:n}).pipe(P(C),Yt(lt,e),cr(e=>F(`Could not load the environment shell snapshot over HTTP; using the socket snapshot instead.`).pipe(B({cause:Ie(e)}),tn(y()))))})})),au=m(qn),ou=m(Se(vt(Br)));function su(e,t){return e===t||ou(e,t)}function cu(e,t){if(e===null||e.threads.length===0)return t;let n=new Map(e.threads.map(e=>[e.id,e])),r=0,i=t.threads.map(e=>{let t=n.get(e.id);return t===void 0||!au(t,e.pullRequests===void 0&&t.pullRequests!==void 0?{...e,pullRequests:t.pullRequests}:e)?e:(r+=1,t)});return r===0?t:{...t,threads:i}}function lu(e,t){let n=e.findIndex(e=>e.id===t.id);return n===-1?[...e,t]:e.map((e,r)=>r===n?t:e)}function uu(e,t){return t.repositoryIdentity==null&&e?.repositoryIdentity!=null&&e.workspaceRoot===t.workspaceRoot?{...t,repositoryIdentity:e.repositoryIdentity}:t}function du(e,t,n){if(e==null)return t;let r=n!==void 0,i=r?new Set(n.resolvedRepositoryIdentityRoots):null;if(r){let n=new Map(t.projects.map(e=>[e.id,e]));return{...e,projects:e.projects.map(e=>{let t=n.get(e.id);return t===void 0||t.workspaceRoot!==e.workspaceRoot?e:i?.has(e.workspaceRoot)===!0||e.repositoryIdentity==null&&t.repositoryIdentity!=null?{...e,repositoryIdentity:t.repositoryIdentity}:e})}}let a=new Map(e.projects.map(e=>[e.id,e]));return{...t,projects:t.projects.map(e=>{let t=a.get(e.id);return i?.has(e.workspaceRoot)===!0?e:uu(t,e)})}}function fu(e,t){if(t.sequence<=e.snapshotSequence)return e;switch(t.kind){case`project.updated`:{let n=uu(e.projects.find(e=>e.id===t.project.id),t.project);return{...e,projects:lu(e.projects,n),snapshotSequence:t.sequence}}case`project.removed`:return{...e,projects:e.projects.filter(e=>e.id!==t.projectId),snapshotSequence:t.sequence};case`thread.updated`:{let n=t.location===`active`?e.threads.find(e=>e.id===t.thread.id):void 0;if(n!==void 0&&au(n,t.thread))return{...e,snapshotSequence:t.sequence};let r=e=>e.filter(e=>e.id!==t.thread.id);return{...e,threads:t.location===`active`?lu(e.threads,t.thread):r(e.threads),archivedThreads:r(e.archivedThreads),snapshotSequence:t.sequence}}case`thread.removed`:return{...e,threads:e.threads.filter(e=>e.id!==t.threadId),archivedThreads:e.archivedThreads.filter(e=>e.id!==t.threadId),snapshotSequence:t.sequence};default:return e}}function pu(e){return{openInEditor:G(e,{label:`environment-data:shell:open-in-editor`,tag:A.shellOpenInEditor})}}var mu={snapshot:y(),status:`empty`,error:y()};function hu(e){return x(e)?`cached`:`empty`}function gu(e){if(e.loadPullRequests===void 0)return e;let{loadPullRequests:t,...n}=e;return n}var _u=`Could not synchronize environment data.`,vu=S(`EnvironmentShellState.make`)(function*(){let e=yield*ba,t=yield*Sa,n=yield*ru,r=yield*ue(ma),i=e.target.environmentId,a=yield*t.loadShell(i).pipe(H(e=>F(`Could not load cached environment shell.`).pipe(B({environmentId:i,...Ki(e)}),tn(y())))),o=xt(a,gu),s=yield*Et({snapshot:o,status:hu(o),error:y()}),c=yield*Li(!1),d=yield*Li(null),f=yield*Li(null),p=yield*Li(y()),m=yield*Ft(1),ee=yield*Me(1),te,ne=new Set,re=S(`EnvironmentShellState.persistLatest`)(function*(e){for(;;){let n=yield*q(p);if(k(n)||n.value===te||n.value.threads.some(e=>ne.has(e)))return;let r=n.value;if(!(yield*t.saveShell(i,r).pipe(tn(!0),H(e=>F(`Could not persist environment shell cache.`).pipe(B({environmentId:i,...Ki(e)}),tn(!1)))))||(te=r,!e))return}},ee.withPermit),g=()=>re(!1),_=re(!0);yield*hr(()=>_),yield*dl(m,g).pipe(O);let ie=W(c,!1).pipe(Jt(se(s,e=>({...e,status:hu(e.snapshot)}))),Jt(_.pipe(O)),kr),ae=se(s,e=>({...e,status:`synchronizing`,error:y()})),v=se(s,e=>e.status===`live`?e:{...e,status:`synchronizing`,error:y()}),ce=e=>W(c,!1).pipe(Jt(F(`Could not synchronize the environment shell.`)),B({environmentId:i,...Ki(e)}),Jt(se(s,e=>({...e,status:hu(e.snapshot),error:C(_u)})))),le=yield*Me(1),b=S(`EnvironmentShellState.applyItems`)(function*(e,t){let n=yield*u(s),r=yield*q(c),i=n,a=!1;for(let t of e){if(t.kind===`synchronized`){r=!1,x(i.snapshot)&&(i={...i,status:`live`,error:y()});continue}let e=t.kind===`snapshot`?du(D(i.snapshot),t.snapshot,t.resolvedRepositoryIdentityRoots===void 0?void 0:{resolvedRepositoryIdentityRoots:t.resolvedRepositoryIdentityRoots}):Ot(i.snapshot,{onNone:()=>null,onSome:e=>t.sequence>e.snapshotSequence?fu(e,t):e});e!==null&&(a||=t.kind===`snapshot`,i={snapshot:C(e),status:r?`synchronizing`:`live`,error:y()})}if(yield*W(c,r),i!==n){if(t!==void 0&&x(i.snapshot)&&(ne=new Set(i.snapshot.value.threads.filter(e=>t.has(e.id)))),x(i.snapshot)&&(yield*W(p,i.snapshot)),yield*kt(s,i),a){let e=yield*q(f);e!==null&&(yield*W(d,e))}i.snapshot!==n.snapshot&&x(i.snapshot)&&(yield*Ct(m,i.snapshot.value))}},le.withPermit),fe=yield*l,me,he=Ce(()=>{let e=me;return me=void 0,e===void 0?I:nr(e)}),ge=Ne(function*(e,t){if(yield*he,e.loadPullRequests===void 0)return;let n=new Set(t.threads),r=new Set(e.threads.map(e=>e.id));ne=new Set(t.threads.filter(e=>r.has(e.id))),me=yield*e.loadPullRequests.pipe(T(e=>_e(e,n,r)),pe(fe))}),_e=Ne(function*(e,t,n){let r=yield*de(s,r=>{if(k(r.snapshot))return[y(),r];let i=r.snapshot.value,a=!1,o=i.threads.map(r=>{if(!t.has(r)||!n.has(r.id))return r;let i=e.get(r.id);if(su(r.pullRequests,i))return r;if(a=!0,i===void 0){let{pullRequests:e,...t}=r;return t}return{...r,pullRequests:i}});if(!a)return[y(),r];let s={...i,threads:o};return[C(s),{...r,snapshot:C(s)}]});ne=new Set;let i=yield*q(p);if(k(i))return;let a=x(r)?r:i;yield*W(p,a),yield*Ct(m,a.value)},e=>le.withPermit(e));x(a)&&x(o)&&(yield*ge(a.value,o.value));let ve=Ot(r,{onNone:()=>Nr,onSome:e=>e.changes.pipe(xr(ra))});return yield*ae,yield*O(ga(br.subscribeShell,S(`EnvironmentShellState.makeSubscribeInput`)(function*(t){yield*W(f,t);let r=yield*t.initialConfig.pipe(P(e=>e.shellResumeCompletionMarker===!0),vn(()=>!1));yield*W(c,r),yield*ae;let i=(yield*q(d))===t,a=i,o=yield*u(s);if(!i||k(o.snapshot)){let t=yield*u(e.prepared).pipe(T(Ot({onSome:M,onNone:()=>Gr(e.prepared).pipe(xr(x),or(e=>e.value),Ir,P(Wr))}))),r=yield*n.load(t);if(x(r)){yield*he;let e=yield*u(s),t=cu(D(e.snapshot),gu(r.value)),n=new Set(r.value.loadPullRequests===void 0?[]:r.value.threads.map(e=>e.id));yield*b([{kind:`snapshot`,snapshot:t}],n),a=!0,o=yield*u(s),x(o.snapshot)&&(yield*ge(r.value,o.snapshot.value))}}return!a||k(o.snapshot)?r?{requestCompletionMarker:!0}:{}:(r||(yield*se(s,e=>({...e,status:`live`,error:y()}))),{afterSequence:o.snapshot.value.snapshotSequence,...r?{requestCompletionMarker:!0}:{}})}),{onExpectedFailure:e=>ce(oe(e)),retryExpectedFailureAfter:`250 millis`,resubscribe:ve}).pipe(h(e=>b(e)))),yield*Gr(e.state).pipe(ut(e=>{switch(Xr(e)){case`synchronizing`:return ae;case`disconnected`:return ie;case`ready`:return v}}),O),s});function yu(e){return _a(e,Ze(vu().pipe(P(Gr))))}Object.freeze({hasSnapshot:!1,hasSynchronizingShell:!1,hasCachedShell:!1,hasLiveShell:!1,firstError:null});var bu=new Map;function xu(e,t){if(e.size!==t.size)return!1;for(let[n,r]of e)if(t.get(n)!==r)return!1;return!0}function Su(e){let t=bu;return z(n=>{let r=new Map;for(let t of sc(n(e.catalogValueAtom))){let i=n(e.serverConfigValueAtom(t));i!==null&&r.set(t,i)}return xu(t,r)||(t=r),t}).pipe(N(`environment-server-configs`))}function Cu(e){let t=V(t=>e.atom(yu(t),{initialValue:mu}));return{stateAtom:t,stateValueAtom:V(e=>z(n=>Ae(_(n(t(e))),()=>mu)).pipe(N(`environment-shell-state-value:${e}`)))}}function wu(e,t){return t.visibility===`local`||t.sourceThreadId===e.thread.id}function Tu(e){let t=e.visibleTurnItems.filter(t=>wu(e,t)).map(e=>e.item);return t.length===0?e:{...e,turnItems:[...t,...e.turnItems]}}function Eu(e){return e.turnItemsOmitLocalVisible===!0?Tu(e.projection):e.projection}function Du(e){let{item:t}=e;return t.type!==`run_interrupt_result`||t.runId===null||t.nodeId===null||!e.attempts.some(e=>e.runId===t.runId&&e.rootNodeId===t.nodeId&&e.status===`superseded`)?!1:!e.items.some(e=>e.type===`run_interrupt_request`&&e.runId===t.runId)}function Ou(e){let{item:t}=e;return t.runId!==null&&e.runs.some(e=>e.id===t.runId&&e.status===`rolled_back`)||t.type===`user_message`&&t.inputIntent===`queued_turn`&&t.runId!==null&&e.runs.some(e=>e.id===t.runId&&e.status===`cancelled`)?!1:!Du({item:t,attempts:e.attempts,items:e.items})}function ku(e){let t=new Map(e.runs.map(e=>[e.id,e.status])),n=new Map;for(let t of e.attempts){if(t.status!==`superseded`)continue;let e=n.get(t.runId);e===void 0&&n.set(t.runId,e=new Set),e.add(t.rootNodeId)}let r=new Set(e.items.filter(e=>e.type===`run_interrupt_request`).map(e=>e.runId));return e=>{let i=e.runId===null?void 0:t.get(e.runId);return i===`rolled_back`||i===`cancelled`&&e.type===`user_message`&&e.inputIntent===`queued_turn`?!1:!(e.type===`run_interrupt_result`&&e.runId!==null&&e.nodeId!==null&&n.get(e.runId)?.has(e.nodeId)===!0&&!r.has(e.runId))}}function Au(e,t){let n=e.findIndex(e=>e.id===t.id);if(n===-1)return[...e,t];let r=[...e];return r[n]=t,r}function ju(e,t){let n=e.findIndex(e=>e.sourceItemId===t);return n===-1?e:Mu([...e.slice(0,n),...e.slice(n+1)])}function Mu(e){return e.map((e,t)=>e.position===t?e:{...e,position:t})}function Nu(e,t){return Ou({item:t,runs:e.runs,attempts:e.attempts,items:e.turnItems})}function Pu(e){let t=e.visibleTurnItems,n=ku({runs:e.runs,attempts:e.attempts,items:e.turnItems}),r=null;for(let e=0;e<t.length;e+=1){let i=t[e];if(!(i.visibility!==`local`||n(i.item))){r??=t.slice(0,e);continue}r?.push(i)}return r===null?t:Mu(r)}function Fu(e){let t=null;for(let n of e)n.visibility===`local`&&(t===null||n.item.ordinal<t)&&(t=n.item.ordinal);return t}var Iu=new Set([`preparing`,`queued`,`starting`,`running`,`waiting`]);function Lu(e,t,n){return e.visibleTurnItems.some(e=>e.sourceItemId===t.id)?!1:t.runId===null?Ru(e,t,n):e.runs.some(e=>e.id===t.runId&&Iu.has(e.status))||e.visibleTurnItems.some(e=>e.visibility===`local`&&e.item.runId===t.runId&&e.item.ordinal<=t.ordinal)?!1:Ru(e,t,n)}function Ru(e,t,n){if(n!=null&&t.ordinal<=n)return!0;let r=Fu(e.visibleTurnItems);return r!==null&&t.ordinal<r}function zu(e,t,n,r){let i=e.visibleTurnItems,a=i.findIndex(e=>e.sourceItemId===t.id),o={position:0,visibility:`local`,sourceThreadId:t.threadId,sourceItemId:t.id,item:t},s=a===-1?void 0:i[a];if(s!==void 0&&s.visibility===o.visibility&&s.sourceThreadId===o.sourceThreadId&&s.sourceItemId===o.sourceItemId&&s.item===t||a===-1&&n&&Lu(e,t,r))return i;let c=a===-1?[...i]:[...i.slice(0,a),...i.slice(a+1)],l=c.findIndex(e=>e.visibility===`local`&&(e.item.ordinal>t.ordinal||e.item.ordinal===t.ordinal&&String(e.item.id).localeCompare(String(t.id))>0));return c.splice(l===-1?c.length:l,0,o),Mu(c)}function Bu(e,t,n){if(e===null||t.threadId!==e.thread.id)return e;let r=n?.partialTimeline===!0,i=n?.latestLocalTurnOrdinal,a={...e,updatedAt:t.occurredAt};switch(t.type){case`thread.pull-request-link-updated`:return{...a,thread:Mo(e.thread,t.payload)};case`thread.created`:case`thread.archived`:case`thread.unarchived`:case`thread.deleted`:case`thread.settled`:case`thread.unsettled`:case`thread.snoozed`:case`thread.unsnoozed`:case`thread.auto-settle-set`:case`thread.pinned`:case`thread.unpinned`:case`thread.pin-reordered`:case`thread.active-reordered`:case`thread.metadata-updated`:case`thread.pull-request-synced`:case`thread.runtime-mode-updated`:case`thread.interaction-mode-updated`:case`thread.model-selection-updated`:case`thread.provider-switched`:return{...a,thread:t.payload};case`thread.visited`:case`thread.marked-unread`:return{...e,thread:t.payload};case`run.created`:case`run.updated`:{let e={...a,runs:Au(a.runs,t.payload)};return{...e,visibleTurnItems:Pu(e)}}case`run.background-work-cancelled`:return{...a,runs:a.runs.map(e=>e.id===t.payload.runId?{...e,restartCancelledBackgroundWork:t.payload.restartCancelledBackgroundWork}:e)};case`run-attempt.created`:case`run-attempt.updated`:{let e={...a,attempts:Au(a.attempts,t.payload)};return{...e,visibleTurnItems:Pu(e)}}case`node.updated`:return{...a,nodes:Au(a.nodes,t.payload)};case`subagent.updated`:return{...a,subagents:Au(a.subagents,t.payload)};case`provider-session.attached`:case`provider-session.updated`:return{...a,providerSessions:Au(a.providerSessions,t.payload)};case`provider-session.detached`:return{...a,providerSessions:a.providerSessions.filter(e=>e.id!==t.payload.providerSessionId)};case`provider-thread.updated`:return{...a,providerThreads:Au(a.providerThreads,t.payload)};case`provider-turn.updated`:return{...a,providerTurns:Au(a.providerTurns,{...t.payload,...(t.payload.tokenUsage??a.providerTurns.find(e=>e.id===t.payload.id)?.tokenUsage)===void 0?{}:{tokenUsage:t.payload.tokenUsage??a.providerTurns.find(e=>e.id===t.payload.id)?.tokenUsage}})};case`runtime-request.updated`:return{...a,runtimeRequests:Au(a.runtimeRequests,t.payload)};case`message.updated`:return{...a,messages:Au(a.messages,t.payload)};case`plan.updated`:return{...a,plans:Au(a.plans,t.payload)};case`turn-item.updated`:{if(r&&!e.turnItems.some(e=>e.id===t.payload.id)&&Lu(e,t.payload,i))return e;let n={...a,turnItems:Au(a.turnItems,t.payload)},o=e.turnItems.find(e=>e.id===t.payload.id),s=t.payload.type===`run_interrupt_request`||o?.type===`run_interrupt_request`?{...n,visibleTurnItems:Pu(n)}:n;return{...n,visibleTurnItems:Nu(n,t.payload)?zu(s,t.payload,r,i):ju(s.visibleTurnItems,t.payload.id)}}case`checkpoint-scope.created`:return{...a,checkpointScopes:Au(a.checkpointScopes,t.payload)};case`checkpoint.captured`:return{...a,checkpoints:Au(a.checkpoints,t.payload)};case`checkpoint.rollback-requested`:return a;case`context-handoff.updated`:return{...a,contextHandoffs:Au(a.contextHandoffs,t.payload)};case`context-transfer.created`:case`context-transfer.updated`:return{...a,contextTransfers:Au(a.contextTransfers,t.payload)}}}var Vu=3e5,Hu=class extends Zt()(`@p4code/client-runtime/state/threadHistoryController`){},Uu=Fe(Hu,w(function*(){let e=yield*Li(new Map);return Hu.of({register:(t,n,r)=>gi(e,e=>{let i=new Map(e);return i.set(Z({environmentId:t,threadId:n}),r),i}).pipe(tn({environmentId:t,threadId:n,handler:r})),unregister:t=>gi(e,e=>{let n=Z({environmentId:t.environmentId,threadId:t.threadId});if(e.get(n)!==t.handler)return e;let r=new Map(e);return r.delete(n),r}),loadEarlier:(t,n,r)=>q(e).pipe(T(e=>{let i=e.get(Z({environmentId:t,threadId:n}));return i===void 0?M({_tag:`noop`}):i.loadEarlier(r)}))})})),Wu=6e3,Gu=S(`clientRuntime.state.fetchEnvironmentThreadHistoryPage`)(function*(e){let t={params:{threadId:e.threadId},query:{cursor:e.cursor,...e.view===void 0?{}:{view:e.view},...e.throughEntryId===void 0?{}:{throughEntryId:e.throughEntryId}}};return yield*Zi({...e,group:`orchestration`,method:`GET`,url:e=>e.threadHistoryPage(t),timeoutMs:e.timeoutMs??Wu,request:({client:e,headers:n})=>e.threadHistoryPage({...t,headers:fa(n)})})}),Ku={historyCursor:null,hasMoreHistory:!1,loading:!1,error:null,expanded:!1,latestLocalTurnOrdinal:null};function qu(e,t){return t.historyCursor===e}function Ju(e,t){return!qu(e,t)||!t.loading?t:{...t,loading:!1}}function Yu(e){return`${e.sourceThreadId}:${e.sourceItemId}`}function Xu(e){return e.map((e,t)=>e.position===t?e:{...e,position:t})}function Zu(e,t){if(t.length===0)return e;let n=new Map(e.visibleTurnItems.map(e=>[Yu(e),e])),r=new Map(e.turnItems.map(e=>[String(e.id),e])),i=new Set,a=[];for(let o of t){let t=Yu(o);if(i.has(t))continue;let s=n.get(t)??o;if(!n.has(t)&&(s.visibility===`local`||s.sourceThreadId===e.thread.id)){let t=r.get(String(s.sourceItemId));if(t!==void 0){if(t.type!==`run_interrupt_request`||!Ou({item:t,runs:e.runs,attempts:e.attempts,items:e.turnItems}))continue;s={...s,item:t}}}i.add(t),a.push(s),(s.visibility===`local`||s.sourceThreadId===e.thread.id)&&!r.has(String(s.sourceItemId))&&r.set(String(s.sourceItemId),s.item)}if(a.length===0)return e;let o=[...a,...e.visibleTurnItems.filter(e=>!i.has(Yu(e)))];return o.length===e.visibleTurnItems.length&&o.every((t,n)=>t===e.visibleTurnItems[n])?e:{...e,turnItems:[...r.values()],visibleTurnItems:Xu(o)}}function Qu(e,t){return{historyCursor:t.nextCursor,hasMoreHistory:t.hasMoreHistory,loading:!1,error:null,expanded:!0,latestLocalTurnOrdinal:e.latestLocalTurnOrdinal}}function $u(e){return e.hasMoreHistory||e.error!==null}var ed=2e4,td=S(`clientRuntime.state.fetchEnvironmentThreadSnapshot`)(function*(e){return yield*Zi({...e,group:`orchestration`,method:`GET`,url:t=>t.threadSnapshot({params:{threadId:e.threadId}}),timeoutMs:e.timeoutMs??ed,request:({client:t,headers:n})=>t.threadSnapshot({params:{threadId:e.threadId},headers:fa(n)})})}),nd=class extends Zt()(`@p4code/client-runtime/state/threadSnapshotHttp/ThreadSnapshotLoader`){},rd={data:y(),status:`empty`,error:y(),history:Ku},id=``,ad=ve;function od(e){return dn(e,Rr(ad),e=>e.join(id))}function sd(e){return e.length===0?[]:dn(e.split(id),Xt(e=>On.make(e)))}function cd(e){return V(t=>z(n=>{let r=[],i=null,a=!1;for(let o of sd(t)){let t=n(e.getSnapshotAtom(o));a||=t.waiting;let s=D(_(t));s!==null&&r.push({environmentId:o,snapshot:s}),i===null&&t._tag===`Failure`&&(i=`Failed to load archived threads.`)}return{snapshots:r,error:i,isLoading:a}}).pipe(N(`${e.labelPrefix}:${t}`)))}var ld=6e3,ud=S(`clientRuntime.state.fetchEnvironmentBoundedThreadSnapshot`)(function*(e){let t={params:{threadId:e.threadId},query:{compactTurnItems:`1`}};return yield*Zi({...e,group:`orchestration`,method:`GET`,url:e=>e.threadBoundedSnapshot(t),timeoutMs:e.timeoutMs??ld,request:({client:e,headers:n})=>e.threadBoundedSnapshot({...t,headers:fa(n)})}).pipe(P(({turnItemsOmitLocalVisible:e,...t})=>({...t,projection:Eu({...t,turnItemsOmitLocalVisible:e})})))}),dd=Fe(nd,w(function*(){let e=yield*lt,t=yield*ue(ia),n=yield*ue(da);return nd.of({load:(r,a)=>{let o=td({prepared:r,threadId:a,signer:t,remoteAuthorization:n}).pipe(P(e=>({_tag:`present`,snapshot:e})),Yt(lt,e),Wt({EnvironmentResourceNotFoundError:()=>i(`Full thread snapshot not found over HTTP after bounded fallback; treating the thread as deleted.`).pipe(B({threadId:a}),tn({_tag:`missing`}))}),cr(e=>F(`Could not load the full thread snapshot over HTTP after bounded fallback; using the socket snapshot instead.`).pipe(B({threadId:a,cause:Ie(e)}),tn({_tag:`unavailable`}))));return ud({prepared:r,threadId:a,signer:t,remoteAuthorization:n}).pipe(P(e=>({_tag:`present`,snapshot:{snapshotSequence:e.snapshotSequence,projection:e.projection,latestLocalTurnOrdinal:e.latestLocalTurnOrdinal},history:{historyCursor:e.historyCursor,hasMoreHistory:e.hasMoreHistory,latestLocalTurnOrdinal:e.latestLocalTurnOrdinal}})),Yt(lt,e),Wt({EnvironmentResourceNotFoundError:()=>i(`Bounded thread snapshot not found over HTTP; treating the thread as deleted.`).pipe(B({threadId:a}),tn({_tag:`missing`})),RemoteEnvironmentAuthInvalidJsonError:e=>i(`Bounded thread snapshot returned an invalid response; trying the full HTTP thread snapshot for an older server.`).pipe(B({threadId:a,cause:e.message}),Jt(o)),RemoteEnvironmentAuthUndeclaredStatusError:e=>e.status===404?i(`Bounded thread snapshot route was not found; trying the full HTTP thread snapshot for an older server.`).pipe(B({threadId:a}),Jt(o)):E(e)}),cr(e=>F(`Could not load the bounded thread snapshot over HTTP; using the socket snapshot instead.`).pipe(B({threadId:a,cause:Ie(e)}),tn({_tag:`unavailable`}))))}})}));function fd(e){let t=V(e=>z([]).pipe(Zn)),n=V(n=>z(r=>{let i=r(e(n)),a=r(t(n));if(i===null||a.length===0)return i;let o=new Map;for(let e of a){if(e.sequence!==void 0&&e.sequence<=i.snapshotSequence)continue;let t=o.get(e.threadId)??[];t.push(e),o.set(e.threadId,t)}return o.size===0?i:{...i,threads:i.threads.map(e=>(o.get(e.id)??[]).reduce((e,t)=>t.apply(e),e))}}));function r(n,r){return{label:n.label,run:async(i,a)=>{let o=tt(),s=t(a.environmentId),c=e(a.environmentId),l={threadId:a.input.threadId,apply:e=>r(e,a.input,o,l.sequence!==void 0)},u=()=>i.update(s,e=>e.filter(e=>e!==l));i.update(s,e=>[...e,l]);let d=!1;try{let e=await n.run(i,a);if(e._tag===`Success`){l.sequence=e.value.sequence,i.update(s,e=>[...e]);let t=t=>{(t===null||t.snapshotSequence>=e.value.sequence)&&(u(),n())},n=i.subscribe(c,t);t(i.get(c)),d=!0}return e}finally{d||u()}}}}return{snapshotAtom:n,wrap:r}}function pd(e,t){let n=ca(),r={mode:`serial`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.threadId])},i={create:U(e,{label:`environment-data:commands:thread:create`,execute:e=>Qo(e),scheduler:n,concurrency:r}),delete:U(e,{label:`environment-data:commands:thread:delete`,execute:e=>es(e),scheduler:n,concurrency:r}),archive:U(e,{label:`environment-data:commands:thread:archive`,execute:e=>ts(e),scheduler:n,concurrency:r}),unarchive:U(e,{label:`environment-data:commands:thread:unarchive`,execute:e=>ns(e),scheduler:n,concurrency:r}),settle:U(e,{label:`environment-data:commands:thread:settle`,execute:e=>rs(e),scheduler:n,concurrency:r}),unsettle:U(e,{label:`environment-data:commands:thread:unsettle`,execute:e=>ls(e),scheduler:n,concurrency:r}),snooze:U(e,{label:`environment-data:commands:thread:snooze`,execute:e=>us(e),scheduler:n,concurrency:r}),unsnooze:U(e,{label:`environment-data:commands:thread:unsnooze`,execute:e=>ds(e),scheduler:n,concurrency:r}),pin:U(e,{label:`environment-data:commands:thread:pin`,execute:e=>is(e),scheduler:n,concurrency:r}),unpin:U(e,{label:`environment-data:commands:thread:unpin`,execute:e=>cs(e),scheduler:n,concurrency:r}),reorderPin:U(e,{label:`environment-data:commands:thread:reorder-pin`,execute:e=>os(e),scheduler:n,concurrency:r}),setAutoSettle:U(e,{label:`environment-data:commands:thread:set-auto-settle`,execute:e=>as(e),scheduler:n,concurrency:r}),reorderActive:U(e,{label:`environment-data:commands:thread:reorder-active`,execute:e=>ss(e),scheduler:n,concurrency:r}),visit:U(e,{label:`environment-data:commands:thread:visit`,execute:e=>fs(e),scheduler:n,concurrency:r}),markUnread:U(e,{label:`environment-data:commands:thread:mark-unread`,execute:e=>ps(e),scheduler:n,concurrency:r}),updateMetadata:U(e,{label:`environment-data:commands:thread:update-metadata`,execute:e=>ms(e),scheduler:n,concurrency:r}),linkPullRequest:U(e,{label:`environment-data:commands:thread:link-pull-request`,execute:e=>Ms(e),scheduler:n,concurrency:r}),unlinkPullRequest:U(e,{label:`environment-data:commands:thread:unlink-pull-request`,execute:e=>Is(e),scheduler:n,concurrency:r}),linkDesign:U(e,{label:`environment-data:commands:thread:link-design`,execute:e=>Ns(e),scheduler:n,concurrency:r}),unlinkDesign:U(e,{label:`environment-data:commands:thread:unlink-design`,execute:e=>Ps(e),scheduler:n,concurrency:r}),watchPullRequest:U(e,{label:`environment-data:commands:thread:watch-pull-request`,execute:e=>Fs(e),scheduler:n,concurrency:r}),setRuntimeMode:U(e,{label:`environment-data:commands:thread:set-runtime-mode`,execute:e=>hs(e),scheduler:n,concurrency:r}),setInteractionMode:U(e,{label:`environment-data:commands:thread:set-interaction-mode`,execute:e=>gs(e),scheduler:n,concurrency:r}),startTurn:U(e,{label:`environment-data:commands:thread:start-turn`,execute:e=>_s(e),scheduler:n,concurrency:r}),interruptTurn:U(e,{label:`environment-data:commands:thread:interrupt-turn`,execute:e=>vs(e),scheduler:n,concurrency:r}),respondToApproval:U(e,{label:`environment-data:commands:thread:respond-to-approval`,execute:e=>ys(e),scheduler:n,concurrency:r}),respondToUserInput:U(e,{label:`environment-data:commands:thread:respond-to-user-input`,execute:e=>bs(e),scheduler:n,concurrency:r}),dismissUserInput:U(e,{label:`environment-data:commands:thread:dismiss-user-input`,execute:e=>xs(e),scheduler:n,concurrency:r}),revertCheckpoint:U(e,{label:`environment-data:commands:thread:revert-checkpoint`,execute:e=>Ss(e),scheduler:n,concurrency:r}),stopSession:U(e,{label:`environment-data:commands:thread:stop-session`,execute:e=>Cs(e),scheduler:n,concurrency:r}),forkFromRun:U(e,{label:`environment-data:commands:thread:fork-from-run`,execute:e=>ws(e),scheduler:n,concurrency:{mode:`serial`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.sourceThreadId])}}),mergeBack:U(e,{label:`environment-data:commands:thread:merge-back`,execute:e=>Ts(e),scheduler:n,concurrency:{mode:`serial`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.sourceThreadId,t.targetThreadId])}}),resumeThreadQueue:U(e,{label:`environment-data:commands:thread:resume-queue`,execute:e=>Es(e),scheduler:n,concurrency:r}),reorderQueuedRun:U(e,{label:`environment-data:commands:thread:reorder-queued-run`,execute:e=>Ds(e),scheduler:n,concurrency:r}),promoteQueuedRun:U(e,{label:`environment-data:commands:thread:promote-queued-run`,execute:e=>Os(e),scheduler:n,concurrency:r}),cancelQueuedRun:U(e,{label:`environment-data:commands:thread:cancel-queued-run`,execute:e=>ks(e),scheduler:n,concurrency:r}),retryWorkspacePreparation:U(e,{label:`environment-data:commands:thread:retry-workspace-preparation`,execute:e=>As(e),scheduler:n,concurrency:r}),editQueuedRun:U(e,{label:`environment-data:commands:thread:edit-queued-run`,execute:e=>js(e),scheduler:n,concurrency:r}),loadEarlierHistory:U(e,{label:`environment-data:commands:thread:load-earlier-history`,execute:e=>w(function*(){let t=yield*ba,n=yield*ue(Hu);return k(n)?{_tag:`noop`}:yield*n.value.loadEarlier(t.target.environmentId,e.threadId,e.throughEntryId)}),scheduler:n,concurrency:{mode:`serial`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.threadId])}}),uploadFeedback:G(e,{label:`environment-data:commands:thread:upload-feedback`,tag:A.providerUploadFeedback,scheduler:n,concurrency:r})},a=fd(t);return{...i,snapshotAtom:a.snapshotAtom,settle:a.wrap(i.settle,(e,t,n,r)=>!r&&(e.pendingRuntimeRequest!==null||[`preparing`,`queued`,`starting`,`running`,`waiting`].includes(e.status))?e:{...e,pendingRuntimeRequest:null,settledOverride:`settled`,settledAt:e.settledOverride===`settled`?e.settledAt??n:n,unsettledAt:null,activeOrderKey:null,pinnedAt:null,pinOrderKey:null,snoozedAt:null,snoozedUntil:null}),unsettle:a.wrap(i.unsettle,(e,t,n)=>({...e,settledOverride:t.reason===`user`?`active`:null,settledAt:null,unsettledAt:e.settledOverride===`active`?e.unsettledAt??null:n})),snooze:a.wrap(i.snooze,(e,t,n,r)=>!r&&(e.pendingRuntimeRequest!==null||[`preparing`,`queued`,`starting`].includes(e.status))||!(Date.parse(t.snoozedUntil)>un(n))?e:{...e,pendingRuntimeRequest:null,snoozedUntil:zt(t.snoozedUntil),snoozedAt:e.snoozedUntil!=null&&be(e.snoozedUntil)===t.snoozedUntil?e.snoozedAt??n:n}),unsnooze:a.wrap(i.unsnooze,e=>({...e,snoozedUntil:null,snoozedAt:null})),setAutoSettle:a.wrap(i.setAutoSettle,(e,t,n)=>({...e,autoSettleDisabledAt:t.enabled?null:e.autoSettleDisabledAt??n})),pin:a.wrap(i.pin,(e,t,n)=>({...e,pinnedAt:e.pinnedAt??n,pinOrderKey:e.pinnedAt==null?t.orderKey??null:e.pinOrderKey,...e.settledOverride===`settled`?{settledOverride:`active`,settledAt:null,unsettledAt:n}:{},snoozedUntil:null,snoozedAt:null})),unpin:a.wrap(i.unpin,e=>({...e,pinnedAt:null,pinOrderKey:null})),reorderPin:a.wrap(i.reorderPin,(e,t)=>({...e,pinOrderKey:t.orderKey})),reorderActive:a.wrap(i.reorderActive,(e,t)=>({...e,activeOrderKey:t.orderKey}))}}function md(e){let t=/^\/feedback(?:\s+([\s\S]*))?$/iu.exec(e.trim());if(!t)return null;let n=t[1]?.trim();return n?{reason:n}:{}}function hd(e){switch(e.status){case`interrupted`:return null;case`uploading`:return{title:`Sending feedback to OpenAI...`,description:void 0};case`sent`:return{title:`Feedback sent to OpenAI`,description:`Thread ID: ${e.feedbackId}`};case`failed`:return{title:`Could not send feedback to OpenAI`,description:e.errorMessage}}}function gd(e,t=`user`){let n=t===`user`?e.command:e.status===`sent`?`Feedback sent to OpenAI.\n\nThread ID: \`${e.feedbackId}\``:e.status===`failed`?`Could not send feedback to OpenAI.\n\n${e.errorMessage}`:`Sending feedback to OpenAI...`;return{id:t===`user`?e.id:Gt.make(`${e.id}:feedback`),role:t,text:n,turnId:null,streaming:!1,createdAt:e.createdAt,updatedAt:e.createdAt}}async function _d(e){e.onUpdate({...e.submission,status:`uploading`}),e.clearDraft();let t=await e.upload();if(t._tag===`Success`)e.onUpdate({...e.submission,status:`sent`,feedbackId:t.value.feedbackId});else if(Ti(t))e.onUpdate({...e.submission,status:`interrupted`});else{let n=Ii(t);e.onUpdate({...e.submission,status:`failed`,errorMessage:n instanceof Error?n.message:`An error occurred.`})}return t}var vd=new Set([`preparing`,`starting`,`running`,`waiting`]),yd=new Set([`waiting`,`completed`]),bd=new Set([`preparing`,`starting`,`running`]);function xd(e){return e.runs.findLast(e=>vd.has(e.status))??null}function Sd(e){let t=e.runs.reduce((e,t)=>yd.has(t.status)&&(e===null||t.ordinal>e.ordinal)?t:e,null);return t===null||e.runs.some(e=>e.ordinal>t.ordinal&&bd.has(e.status))?null:t}function Cd(e){let t=xd(e)?.providerThreadId??e.thread.activeProviderThreadId,n=((t===null?null:e.providerThreads.find(e=>e.id===t)??null)??e.providerThreads.find(t=>t.appThreadId===e.thread.id&&t.providerSessionId!==null)??null)?.providerSessionId??null;return n===null?e.providerSessions.findLast(e=>e.status!==`stopped`&&e.status!==`error`)??null:e.providerSessions.find(e=>e.id===n)??null}function wd(e){if(e==null)return!1;let t=Cd(e);return t===null?xd(e)===null?e.thread.historyOrigin===`v1_import`||e.runs.length===0||e.providerThreads.some(t=>t.id===e.thread.activeProviderThreadId&&t.appThreadId===e.thread.id&&t.providerInstanceId===e.thread.modelSelection.instanceId&&t.nativeThreadRef!==null):!1:t.capabilities.sessions.supportsProviderSwitchingViaHandoff}function Td(e){let t=new Set(e.messages.filter(e=>e.delegatedCompletion!==void 0||e.notification!==void 0).map(e=>e.id));return e.runs.filter(e=>e.status===`queued`&&!t.has(e.userMessageId))}function Ed(e){let t=xd(e),n=Cd(e)?.capabilities.turns,r=t?.status===`running`&&t.activeAttemptId!==null&&e.providerTurns.some(e=>e.runAttemptId===t.activeAttemptId&&e.status===`running`);return{activeRun:t,queuedRuns:Ka(Td(e),(e,t)=>(e.queuePosition??e.ordinal)-(t.queuePosition??t.ordinal)||e.ordinal-t.ordinal).map(t=>{let n=e.messages.find(e=>e.id===t.userMessageId);return{run:t,text:n?.text??`Queued message`,attachments:n?.attachments??[],messageId:t.userMessageId,...n?.context?{context:n.context}:{}}}),isHeld:e.runs.some(e=>e.status===`queued`&&e.queueHeld===!0),canReorder:n?.supportsQueuedMessages===!0,canPromoteToSteer:r&&(n?.supportsActiveSteering===!0||n?.supportsSteeringByInterruptRestart===!0),canSteerAll:r&&n?.supportsActiveSteering===!0}}function Dd(e){let t=e.projectedItem.item;if(t.type!==`assistant_message`||t.runId===null||t.status!==`completed`)return!1;if(e.capabilities===void 0)return!0;let n=e.capabilities;return n.threads.canForkThread&&n.threads.canForkFromTurn&&n.identity.nativeThreadIds===`strong`||n.context.supportsFullThreadHandoff}function Od(e){let t=Cd(e);return t!==null&&t.status!==`stopped`&&t.status!==`error`}function kd(e){if(e==null)return{available:!1,reason:`This thread is still loading.`};let t=e.runs.reduce((e,t)=>t.status===`completed`&&t.checkpointId!==null&&(e===null||t.ordinal>e.ordinal)?t:e,null);if(t===null)return{available:!1,reason:`Nothing to share yet. A run has to finish first.`};let n=Cd(e)?.capabilities;return n!==void 0&&!(n.threads.canForkThread&&n.threads.canForkFromTurn&&n.identity.nativeThreadIds===`strong`)&&!n.context.supportsFullThreadHandoff?{available:!1,reason:`This provider cannot share history with a side chat yet.`}:{available:!0,upToRunOrdinal:t.ordinal}}function Ad(e){if(e.forkedFrom?.type!==`run`)return`Sees no history`;let t=e.forkedFrom.runId,n=e.parentRuns?.find(e=>e.id===t);return n===void 0?`Sees history`:`Sees up to run ${n.ordinal}`}function jd(e){let t=new Set(e.flatMap(e=>e.deletedAt?[]:[`${e.environmentId}:${e.id}`]));return e=>{let n=e.lineage?.parentThreadId;return!e.sideChat||!n||!t.has(`${e.environmentId}:${n}`)}}function Md(e){return un(e.startedAt??e.updatedAt)}function Nd(e){if(e.subagents.length===0)return null;let t=xd(e),n=e.subagents.reduce((e,t)=>un(t.updatedAt)>un(e.updatedAt)?t:e),r=t?.id??n.runId,i=Ka(e.subagents.filter(e=>e.runId===r),(e,t)=>Md(e)-Md(t)||e.id.localeCompare(t.id));if(i.length===0)return null;let a=0,o=0;for(let e of i)zs(e.status)?a+=1:Rs(e.status)&&(o+=1);return{runId:r,turnActive:t!==null,subagents:i,liveCount:a,settledCount:o}}function Pd(e,t){let n=t;for(let r of e)r.initialAnswer!==void 0&&r.allowCustomAnswer!==!1&&n[r.id]===void 0&&(n===t&&(n={...t}),n[r.id]={customAnswer:r.initialAnswer});return n}function Fd(e){let t=[],n=[];for(let r of e.runtimeRequests){if(r.status!==`pending`)continue;let i=r.responseCapability.type;if(r.kind===`user_input`){let t=e.turnItems.findLast(e=>e.type===`user_input_request`&&e.requestId===r.id);if(t===void 0||t.type!==`user_input_request`)continue;n.push({requestId:r.id,createdAt:be(r.createdAt),questions:t.questions.map(e=>({...e,multiSelect:e.multiSelect??!1})),responseCapability:i,dismissible:t.responseMode===`message`||i===`message`,...t.responseMode===`message`||i===`message`?{responseMode:`message`}:{}});continue}if(r.kind===`auth_refresh`||r.kind===`dynamic_tool_call`)continue;let a=e.turnItems.findLast(e=>e.type===`approval_request`&&e.requestId===r.id);t.push({requestId:r.id,requestKind:r.kind,createdAt:be(r.createdAt),...a?.type===`approval_request`&&a.prompt?{detail:a.prompt}:{},...a?.type===`approval_request`&&a.appName?{appName:a.appName}:{},...a?.type===`approval_request`&&a.options!==void 0?{options:a.options}:{},responseCapability:i===`live`?`live`:`not_resumable`})}return{approvals:t,userInputs:n}}function Id(){let e,t,n,r=new WeakMap;return i=>{let{visibleTurnItems:a,runtimeRequests:o}=i;if(a===e&&o===t&&n)return n;let s=new Map(o.map(e=>[e.id,e])),c;for(let[e,t]of a.entries()){let n=t.item,i=n.type===`user_input_request`&&!n.questionAnswer?s.get(n.requestId):void 0,o=t;if(n.type===`user_input_request`&&i?.status===`resolved`&&i.answers!==void 0){let e=r.get(t);o=e?.request===i?e.row:{...t,item:{...n,questionAnswer:{requestId:i.id,answers:i.answers,attachmentsByQuestionId:{},questionTextById:Object.fromEntries(n.questions.map(e=>[e.id,e.question]))}}},r.set(t,{request:i,row:o})}o!==t&&(c??=a.slice(0,e)),c?.push(o)}return e=a,t=o,n=c??a,n}}var Ld=Object.freeze([]);function Rd(e){let t=V(t=>{let n=vc(t);return z(t=>Ae(_(t(e(n.environmentId,n.threadId))),()=>rd)).pipe(yr(0),N(`environment-thread-state-value:${t}`))}),n=V(e=>{let n=vc(e),r=null,i=null;return z(a=>{let o=D(a(t(e)).data);return o===r?i:(r=o,i=o===null?null:{environmentId:n.environmentId,projection:o},i)}).pipe(yr(0),N(`environment-thread:${e}`))}),r=V(e=>{let n=Id();return z(r=>{let i=D(r(t(e)).data);return i===null?Ld:n(i)}).pipe(yr(0),N(`environment-thread-visible-turn-items:${e}`))}),i=V(e=>{let n=null,r=null;return z(i=>{let a=D(i(t(e)).data);if(a===null)n=null,r=null;else if(n===null||a.thread!==n.thread||a.runs!==n.runs||a.messages!==n.messages||a.providerThreads!==n.providerThreads||a.providerSessions!==n.providerSessions||a.providerTurns!==n.providerTurns){r=Ed(a);let{thread:e,runs:t,messages:i,providerThreads:o,providerSessions:s,providerTurns:c}=a;n={thread:e,runs:t,messages:i,providerThreads:o,providerSessions:s,providerTurns:c}}return r}).pipe(yr(0),N(`environment-thread-queue:${e}`))}),a=V(e=>{let n=null,r=0;return z(i=>{let a=D(i(t(e)).data);if(a===null)n=null,r=0;else if(a.runs!==n?.runs||a.messages!==n?.messages){let{runs:e,messages:t}=a;n={runs:e,messages:t},r=Td(n).length}return r}).pipe(yr(0),N(`environment-thread-queue-count:${e}`))}),o=V(e=>{let n=null,r=null;return z(i=>{let a=D(i(t(e)).data);if(a===null)n=null,r=null;else if(a.runs!==n?.runs||a.subagents!==n?.subagents){let{runs:e,subagents:t}=a;n={runs:e,subagents:t},r=Nd(n)}return r}).pipe(yr(0),N(`environment-thread-turn-subagents:${e}`))}),s=V(e=>z(n=>D(n(t(e)).data)?.thread.worktreePath??null).pipe(yr(0),N(`environment-thread-worktree:${e}`))),c=V(e=>{let n=null,r=null;return z(i=>{let a=D(i(t(e)).data);if(a===null)return n=null,r=null,r;let o=a.runtimeRequests.filter(e=>e.status===`pending`),s=new Set(o.map(e=>e.id)),c=s.size===0?[]:a.turnItems.filter(e=>(e.type===`approval_request`||e.type===`user_input_request`)&&s.has(e.requestId));return(n===null||!xc(n.runtimeRequests,o)||!xc(n.turnItems,c))&&(n={runtimeRequests:o,turnItems:c},r=Fd(n)),r}).pipe(yr(0),N(`environment-thread-pending-requests:${e}`))}),l=V(e=>z(n=>n(t(e)).status).pipe(yr(0),N(`environment-thread-status:${e}`))),u=V(e=>z(n=>D(n(t(e)).error)).pipe(yr(0),N(`environment-thread-error:${e}`))),d=V(e=>z(n=>n(t(e)).history).pipe(yr(0),N(`environment-thread-history:${e}`)));return{worktreePathAtom:e=>s(Z(e)),pendingRequestsAtom:e=>c(Z(e)),queueWorkflowAtom:e=>i(Z(e)),queuedCountAtom:e=>a(Z(e)),turnSubagentsAtom:e=>o(Z(e)),stateAtom:e=>t(Z(e)),threadAtom:e=>n(Z(e)),visibleTurnItemsAtom:e=>r(Z(e)),statusAtom:e=>l(Z(e)),errorAtom:e=>u(Z(e)),historyAtom:e=>d(Z(e))}}var zd=Object.freeze([]),Bd=Object.freeze([]),Vd=new Map,Hd=new Map,Ud=new Map,Wd=e=>e.activityRunStatus===void 0?e.status===`preparing`||e.status===`starting`||e.status===`running`||e.status===`waiting`:e.activityRunStatus!==null;function Gd(e){let t=e.pendingRuntimeRequest?.kind;return t===void 0||t===`auth_refresh`||e.lineage.relationshipToParent!==`subagent`||xn(e)||!Wd(e)?null:t===`user_input`?`user_input`:`approval`}function Kd(e){let t=new Map,n;for(let r of e){let i=Gd(r);if(i===null)continue;n??=new Map(e.map(e=>[e.id,e]));let a=new Set([r.id]),o=r;for(;o?.lineage.relationshipToParent===`subagent`;){let e=o.lineage.parentThreadId;if(e===null||a.has(e))break;a.add(e),t.get(e)!==`approval`&&t.set(e,i),o=n.get(e)}}return t.size===0?Hd:t}function qd(e){let t=e.filter(e=>e.hasPendingApprovals).length,n=t===0?`input`:t===e.length?`approval`:`you`;return e.length===1?`Subagent needs ${n}`:`${e.length} subagents need ${n}`}function Jd(e){let t=new WeakMap,n=(e,n,r)=>{let i=t.get(n);i===void 0&&(i=new Map,t.set(n,i));let a=r.get(n.id)??null,o=a===null?e:`${e}:${a}`,s=i.get(o);return s===void 0&&(s=ac(e,n,a),i.set(o,s)),s},r=V(t=>z(n=>n(e.snapshotAtom(t))?.threads??zd).pipe(N(`environment-threads:${t}`))),i=V(e=>z(t=>{let n=t(r(e));return n.length===0?Vd:new Map(n.map(e=>[e.id,e]))}).pipe(N(`environment-thread-index:${e}`))),a=V(e=>{let t=Hd;return z(n=>{let i=Kd(n(r(e)));return i.size===t.size&&[...i].every(([e,n])=>t.get(e)===n)?t:(t=i,i)}).pipe(N(`environment-pending-subagent-requests:${e}`))}),o=V(e=>{let t=[];return z(n=>{let i=n(r(e)).map(t=>({environmentId:e,threadId:t.id}));return bc(t,i)?t:(t=i,i)}).pipe(N(`environment-thread-refs:${e}`))}),s=V(e=>{let t=Ud;return z(n=>{let i=new Map;for(let t of n(r(e))){let n=i.get(t.projectId),r={environmentId:e,threadId:t.id};n===void 0?i.set(t.projectId,[r]):n.push(r)}if(i.size===0)return t=Ud,t;let a=new Map;for(let[e,n]of i){let r=t.get(e);a.set(e,r!==void 0&&bc(r,n)?r:n)}let o=[...t.keys()];return a.size===t.size&&[...a].every(([e,n],r)=>o[r]===e&&t.get(e)===n)||(t=a),t}).pipe(N(`environment-thread-refs-by-project:${e}`))}),c=V(e=>{let t=vc(e);return z(e=>{let r=e(i(t.environmentId)).get(t.threadId)??null;return r===null?null:n(t.environmentId,r,e(a(t.environmentId)))}).pipe(N(`environment-thread-shell:${e}`))}),l=V(e=>{let t=vc(e),i=[];return z(e=>{let o=new Map;for(let n of e(r(t.environmentId))){let e=n.lineage.parentThreadId;if(e===null||n.lineage.relationshipToParent!==`subagent`)continue;let t=o.get(e);t?t.push(n):o.set(e,[n])}let s=e(a(t.environmentId)),c=new Set([t.threadId]),l=[t.threadId],u=[];for(let e of l)for(let r of o.get(e)??[])c.has(r.id)||(c.add(r.id),l.push(r.id),Gd(r)!==null&&u.push(n(t.environmentId,r,s)));return i.length===u.length&&i.every((e,t)=>e.id===u[t]?.id&&e.title===u[t]?.title&&e.hasPendingApprovals===u[t]?.hasPendingApprovals)?i:(i=u,u)}).pipe(N(`environment-child-thread-inputs:${e}`))}),u=V(e=>{let t=_c(e),r=[];return z(e=>{let o=[],c=new Set;for(let r of t){let t=e(s(r.environmentId)).get(r.projectId)??Bd;if(t.length===0)continue;let l=e(i(r.environmentId)),u=e(a(r.environmentId));for(let e of t){let t=Z(e);if(c.has(t))continue;c.add(t);let r=l.get(e.threadId);r!==void 0&&o.push(n(e.environmentId,r,u))}}return xc(r,o)||(r=o),r}).pipe(N(`environment-thread-shells-for-projects:${e}`))}),d=[],f=z(t=>{let n=[];for(let r of sc(t(e.catalogValueAtom)))n.push(...t(o(r)));return bc(d,n)?d:(d=n,n)}).pipe(N(`environment-thread-refs`)),p=[],m=z(t=>{let i=[];for(let o of sc(t(e.catalogValueAtom))){let e=t(a(o));for(let a of t(r(o)))i.push(n(o,a,e))}return xc(p,i)||(p=i),p}).pipe(N(`environment-thread-shell-list`)),h=[];return{environmentThreadsAtom:r,environmentThreadIndexAtom:i,environmentThreadRefsAtom:o,environmentThreadRefsByProjectAtom:s,threadRefsAtom:f,threadShellsAtom:m,navigationThreadShellsAtom:z(t=>{let i=[];for(let o of sc(t(e.catalogValueAtom))){let e=t(a(o)),s=t(r(o)).map(t=>n(o,t,e)),c=jd(s);for(let e of s)e.archivedAt===null&&e.lineage.relationshipToParent!==`subagent`&&c(e)&&i.push(e)}return xc(h,i)?h:(h=i,i)}).pipe(N(`environment-navigation-thread-shells`)),threadShellsForProjectRefsAtom:e=>u(hc(e)),threadShellAtom:e=>c(Z(e)),childThreadInputsAtom:e=>l(Z(e))}}function Yd(e){return x(e)?`cached`:`empty`}function Xd(e){let t=oe(e);return t instanceof Error&&t.message.trim().length>0?t.message:`Could not synchronize the thread.`}function Zd(e){return e instanceof Error&&e.message.trim().length>0?e.message:`Could not load earlier activity.`}function Qd(e){return{historyCursor:e.historyCursor??null,hasMoreHistory:e.hasMoreHistory??!1,loading:!1,error:null,expanded:!1,latestLocalTurnOrdinal:e.latestLocalTurnOrdinal??null}}function $d(e,t,n,r){return r||n.hasMoreHistory||n.historyCursor!==null?{snapshotSequence:e,projection:t,historyCursor:n.historyCursor,hasMoreHistory:n.hasMoreHistory,latestLocalTurnOrdinal:n.latestLocalTurnOrdinal}:{snapshotSequence:e,projection:t}}function ef(e,t){return!t.expanded&&!e.runs.some(e=>e.status===`preparing`||e.status===`starting`||e.status===`running`)}function tf(e,t,n,r){if(e.sequence!==n||D(e.state.data)!==t)return!1;let i=e.state.history;return i.historyCursor===r.historyCursor&&i.hasMoreHistory===r.hasMoreHistory&&(!(r.hasMoreHistory||r.historyCursor!==null)||i.latestLocalTurnOrdinal===r.latestLocalTurnOrdinal)}function nf(e){return{...e,status:e.status===`deleted`||e.status===`live`&&x(e.data)?e.status:Yd(e.data),error:y(),history:{...e.history,loading:!1,error:null}}}var rf=S(`EnvironmentThreadState.make`)(function*(e,t){let n=yield*ba,r=yield*Sa,a=yield*nd,o=yield*ue(Hu),s=yield*ue(lt),c=yield*ue(ia),l=yield*ue(da),d=yield*ue(ma),f=n.target.environmentId,p=t?.snapshot,m={};t&&(t.owner=m);let ee=p===void 0?yield*r.loadThread(f,e).pipe(H(t=>F(`Could not load cached thread.`).pipe(B({environmentId:f,threadId:e,error:t.message}),tn(y())))):y(),te=xt(ee,e=>e.projection),re=p?nf(p.state):{data:te,status:Yd(te),error:y(),history:Ot(ee,{onNone:()=>Ku,onSome:Qd})},g=yield*Et(re),_=x(s)&&x(o),ie=yield*Li(_),ae=p?.sequence??Ot(ee,{onNone:()=>0,onSome:e=>e.snapshotSequence}),oe=yield*Et(ae),v={state:re,sequence:ae,persisted:p?.persisted??x(ee),acceptsBoundedSnapshots:_};t?.owner===m&&(t.snapshot=v);let ce=yield*Li(!1),le=yield*Me(1),b=w(function*(){let e=yield*u(g),n=yield*u(oe);v={state:e,sequence:n,acceptsBoundedSnapshots:yield*q(ie),persisted:v.persisted&&tf(v,D(e.data),n,e.history)},t?.owner===m&&(t.snapshot=v)}),fe=yield*Ft(1),me=S(`EnvironmentThreadState.persist`)(function*(n){(t===void 0||t.owner===m)&&v.state.status!==`deleted`&&(v.persisted&&tf(v,n.projection,n.snapshotSequence,Qd(n))||(yield*r.saveThread(f,n).pipe(_e(()=>R(()=>{tf(v,n.projection,n.snapshotSequence,Qd(n))&&(v={...v,persisted:!0},t?.owner===m&&(t.snapshot=v))})),H(t=>F(`Could not persist the thread cache.`).pipe(B({environmentId:f,threadId:e,error:t.message}))))))});yield*hr(()=>Ce(()=>{let{state:e,sequence:t}=v;return Ot(e.data,{onNone:()=>I,onSome:n=>ef(n,e.history)?me($d(t,n,e.history,v.acceptsBoundedSnapshots===!0)):I})})),yield*dl(fe,me).pipe(O);let he=se(g,e=>e.status===`deleted`||x(e.error)?e:{...e,status:`synchronizing`,error:y()}),ge=se(g,e=>e.status===`live`||e.status===`deleted`||x(e.error)?e:{...e,status:`synchronizing`,error:y()}),ve=w(function*(){yield*W(ce,!1),yield*se(g,e=>({...e,status:e.status===`deleted`?e.status:Yd(e.data)}))}),ye=e=>W(ce,!1).pipe(Jt(se(g,t=>({...t,status:t.status===`deleted`?t.status:Yd(t.data),error:C(e)})))),be=S(`EnvironmentThreadState.setThread`)(function*(e,t){let n=yield*q(ce),r=yield*we(g,r=>{let i=t?.history===void 0?t?.resetHistory===!0?Ku:r.history:t.history;return{...r,data:C(e),status:x(r.error)?`cached`:n?`synchronizing`:`live`,error:r.error,history:i}});if(ef(e,r.history)){let t=yield*u(oe);yield*Ct(fe,$d(t,e,r.history,yield*q(ie)))}}),xe=e=>se(g,t=>({...t,history:e(t.history)})),Se=S(`EnvironmentThreadState.setDeleted`)(function*(){yield*W(ce,!1),yield*kt(g,{data:y(),status:`deleted`,error:y(),history:Ku}),yield*b,(t===void 0||t.owner===m)&&(yield*r.removeThread(f,e).pipe(H(t=>F(`Could not remove the cached thread.`).pipe(B({environmentId:f,threadId:e,error:t.message})))))}),Te=S(`EnvironmentThreadState.applyEventsLocked`)(function*(t){let n=yield*u(oe),r=n,a=[];for(let n of t)if(!(n.sequence<=r)){if(r=n.sequence,n.kind===`event`){a.push(n);continue}yield*i(`Skipped a thread event type this client does not know.`).pipe(B({environmentId:f,threadId:e,eventType:n.eventType.slice(0,64),sequence:n.sequence}))}if(r===n||(yield*kt(oe,r),a.length===0))return;let o=yield*q(ce),s=(e,t)=>{if(e.status===`deleted`)return[{_tag:`noop`},e];if(k(e.data))return[t.event.type===`thread.deleted`?{_tag:`delete`}:{_tag:`noop`},e];if(t.event.type===`thread.deleted`)return[{_tag:`delete`},e];let n=e.history.hasMoreHistory||e.history.historyCursor!==null?{partialTimeline:!0,latestLocalTurnOrdinal:e.history.latestLocalTurnOrdinal}:void 0,r=Bu(e.data.value,t.event,n);if(r===null||r===e.data.value)return[{_tag:`noop`},e];let i=e.history;if(n!==void 0&&t.event.type===`turn-item.updated`){let e=t.event.payload.ordinal,n=i.latestLocalTurnOrdinal;(n===null||e>n)&&(i={...i,latestLocalTurnOrdinal:e})}let a={...e,data:C(r),status:o?`synchronizing`:`live`,error:y(),history:i};return[{_tag:`applied`,projection:r,history:a.history},a]},c=yield*de(g,e=>{let t={_tag:`noop`};for(let n of a){let[r,i]=s(e,n);if(e=i,r._tag!==`noop`&&(t=r),r._tag===`delete`)break}return[t,e]});if(c._tag===`delete`){yield*Se();return}if(c._tag===`applied`&&ef(c.projection,c.history)){let e=yield*u(oe);yield*Ct(fe,$d(e,c.projection,c.history,yield*q(ie)))}}),Ee=S(`EnvironmentThreadState.applyItemLocked`)(function*(e){if(e.kind===`synchronized`){yield*W(ce,!1),yield*se(g,e=>x(e.data)&&e.status!==`deleted`&&k(e.error)?{...e,status:`live`,error:y()}:e);return}if(e.kind===`snapshot`){yield*kt(oe,e.snapshotSequence);let t=e.historyCursor!==void 0||e.hasMoreHistory!==void 0||e.latestLocalTurnOrdinal!==void 0;yield*be(Eu(e),t?{history:{historyCursor:e.historyCursor??null,hasMoreHistory:e.hasMoreHistory??!1,loading:!1,error:null,expanded:!1,latestLocalTurnOrdinal:e.latestLocalTurnOrdinal??null}}:{resetHistory:!0});return}yield*Te([e])}),De=S(`EnvironmentThreadState.applyItems`)(function*(e){yield*le.withPermits(1)(w(function*(){let t=[];for(let n of e){if(n.kind===`unknown-event`||n.kind===`event`&&n.event.type!==`thread.deleted`){t.push(n);continue}yield*Te(t),t=[],yield*Ee(n)}yield*Te(t),yield*b}))}),Oe=S(`EnvironmentThreadState.loadEarlier`)(function*(t){let r=yield*u(g);if(r.status===`deleted`||k(r.data)||!r.history.hasMoreHistory||r.history.historyCursor===null)return{_tag:`noop`};if(r.history.loading)return{_tag:`busy`};let i=r.history.historyCursor;yield*xe(e=>qu(i,e)?{...e,loading:!0,error:null}:e);let a=e=>de(g,t=>qu(i,t.history)?[{_tag:`error`,message:e},{...t,history:{...t.history,loading:!1,error:e}}]:[{_tag:`noop`},t]);return yield*w(function*(){let r=yield*u(n.prepared);if(k(r)||k(s))return yield*a(`Environment is not connected.`);let o=t===void 0?[void 0]:[`conversation`,void 0];for(let n of o){let o=yield*Gu({prepared:r.value,threadId:e,cursor:i,throughEntryId:t,view:n,signer:c,remoteAuthorization:l}).pipe(Yt(lt,s.value),pt);if(ne(o))return yield*a(Zd(o.failure));let u=o.success,d=n===void 0,f=yield*q(ce),p=yield*le.withPermits(1)(de(g,e=>qu(i,e.history)?k(e.data)||e.status===`deleted`?[{_tag:`noop`},{...e,history:Ku}]:[{_tag:`loaded`},{...e,data:C(Zu(e.data.value,u.items)),status:d&&f?`synchronizing`:e.status,history:d?Qu(e.history,u):{...e.history,expanded:!0}}]:[{_tag:`noop`},e]));if(p._tag!==`loaded`)return p;d&&(yield*b)}return{_tag:`loaded`}}).pipe(rr(()=>se(g,e=>({...e,history:Ju(i,e.history)}))))});if(x(o)){let t=yield*yt,n=yield*o.value.register(f,e,{loadEarlier:e=>Oe(e).pipe(pe(t),T(nn))});yield*hr(()=>o.value.unregister(n))}yield*Gr(n.state).pipe(ut(e=>{switch(Xr(e)){case`synchronizing`:return he;case`disconnected`:return ve;case`ready`:return ge}}),O);let ke=Ot(d,{onNone:()=>Nr,onSome:e=>e.changes.pipe(xr(ra))}),Ae=yield*Li(re.status===`live`),je=w(function*(){(yield*q(Ae))||(yield*se(g,e=>e.status===`deleted`?e:{...e,status:`synchronizing`,error:y()}))});return yield*je,yield*O(ga(br.subscribeThread,S(`EnvironmentThreadState.makeSubscribeInput`)(function*(t){let r=yield*u(g);if(r.status===`deleted`)return yield*Tr;let i=yield*t.initialConfig.pipe(P(e=>e.threadResumeCompletionMarker===!0),vn(()=>!1));if(yield*W(ce,i),yield*je,yield*W(Ae,!1),k(r.data)){let t=yield*u(n.prepared).pipe(T(Ot({onSome:M,onNone:()=>Gr(n.prepared).pipe(xr(x),or(e=>e.value),Ir,P(Wr))}))),i=yield*a.load(t,e);switch(i._tag){case`present`:_&&i.history!==void 0&&(yield*W(ie,!0)),yield*le.withPermits(1)(w(function*(){yield*kt(oe,i.snapshot.snapshotSequence);let e=i.history===void 0?Ku:{historyCursor:i.history.historyCursor,hasMoreHistory:i.history.hasMoreHistory,loading:!1,error:null,expanded:!1,latestLocalTurnOrdinal:i.history.latestLocalTurnOrdinal??null};yield*be(i.snapshot.projection,{history:e}),yield*b})),r=yield*u(g);break;case`missing`:return yield*Se(),yield*Tr}}let o=yield*u(oe),s=x(r.data),c=yield*q(ie);return!i&&s&&(yield*se(g,e=>({...e,status:e.status===`deleted`?e.status:`live`,error:y()}))),{threadId:e,...s?{afterSequence:o}:{},...i?{requestCompletionMarker:!0}:{},...c?{acceptBoundedSnapshot:!0,acceptCompactTurnItems:!0}:{}}}),{onDefect:()=>ye(`Could not synchronize the thread.`),onExpectedFailure:e=>ye(Xd(e)),retryExpectedFailureAfter:`250 millis`,resubscribe:ke}).pipe(h(De))),g});function af(e,t,n){return _a(e,Ze(rf(t,n).pipe(P(Gr))))}function of(e){let t=V(e=>z(()=>({snapshot:void 0,owner:void 0})).pipe(yr(Vu),N(`environment-thread-resume:${e}`))),n=V(n=>{let{environmentId:r,threadId:i}=vc(n),a=t(n);return e.atom(e=>{e.mount(a);let t=e.once(a),n=af(r,i,t);return t.snapshot===void 0?n:et(re(nf(t.snapshot.state)),n)},{initialValue:rd}).pipe(yr(0),N(`environment-thread-state:${n}`))});return{stateAtom:(e,t)=>n(Z({environmentId:e,threadId:t}))}}var sf=class extends gr(`@p4code/client-runtime/EnvironmentQueryStore`,{defaultValue:()=>null}){};function cf(e){let t=Qt(zr(e));return{load:(e,n)=>w(function*(){let r=yield*sf;if(r===null)return y();let i=yield*r.load(e,n);return k(i)?y():yield*pr(t)(i.value).pipe(P(C),H(()=>v))}),save:(e,n,r)=>w(function*(){let i=yield*sf;if(i===null)return;let a=yield*$n(t)(r);yield*i.save(e,n,a)}).pipe(H(()=>F(`Offline query cache save failed`)))}}var lf=Qt(Oe([j,xe])),uf=e=>JSON.stringify([`pull-request-stat`,e.projectId,e.host??``,e.repository,e.number]);function df(){let e=cf(at);return{load:(t,n)=>w(function*(){let[,r]=yield*rt(lf)(n),i=(yield*ot(r.refs,n=>e.load(t,uf(n)))).flatMap(e=>x(e)?[e.value]:[]);return i.length?C({stats:i}):y()}).pipe(vn(()=>y())),save:(t,n,r)=>w(function*(){let[,i]=yield*rt(lf)(n);yield*ot(r.stats,n=>{let r=i.refs.find(e=>e.projectId===n.projectId&&e.repository===n.repository&&e.number===n.number);return r?e.save(t,uf(r),n):I})}).pipe(dr)}}var ff=new Set([A.pullRequestsSummary,A.pullRequestsStack,A.pullRequestsDetail,A.pullRequestsPreview,A.pullRequestsChecks,A.pullRequestsActivity,A.pullRequestsThreadComments,A.pullRequestsDiffFileContents,A.pullRequestsFilesViewed,A.pullRequestsReviewerCandidates,A.pullRequestsLabelCandidates]),pf=new Set([A.pullRequestsSetFilesViewed,A.pullRequestsRunAction,A.pullRequestsUpdate,A.pullRequestsComment,A.pullRequestsUpdateComment,A.pullRequestsSubmitReview,A.pullRequestsReplyToThread,A.pullRequestsSetReaction,A.pullRequestsSetThreadResolution,A.pullRequestsRequestReviewers,A.pullRequestsSetLabels]),mf=Hn(Bt),hf=Hn(wt({state:nt})),gf=Hn(d),_f=t=>e({duration:`30 seconds`,orElse:()=>E(new xa({environmentId:t,message:`The environment did not respond to the PR request.`}))}),vf=new WeakMap,yf=Hn(Aa),bf=_r(Qt(vt(Pe(j)))),xf=new WeakMap,Sf=new WeakMap;function Cf(e,t,n){return fr(r=>w(function*(){let i=yield*ba,a=yield*u(i.session);if(k(a))return yield*r(n);let o=e.get(a.value)??new Map;e.set(a.value,o);let s=o.get(t);if(s!==void 0){let i=yield*r(Qe(s));return yield*r(Or(i)?Cf(e,t,n):i)}let c=qt();return o.set(t,c),yield*r(n).pipe(fn(e=>R(()=>o.delete(t)).pipe(Jt(tr(c,e)))))}))}function wf(e){let t=e.target._tag===`PrimaryConnectionTarget`?e.target.httpBaseUrl:x(e.profile)&&e.profile.value._tag===`BearerConnectionProfile`?e.profile.value.httpBaseUrl:void 0;if(t===void 0)return!1;try{return[`localhost`,`127.0.0.1`,`[::1]`].includes(new URL(t).hostname)}catch{return!1}}function Tf(e){return typeof e==`object`&&!!e&&`_tag`in e&&(e._tag===`EnvironmentRpcUnavailableError`||e._tag===`EnvironmentNotRegisteredError`||e._tag===`PullRequestOperationError`&&`operation`in e&&e.operation===`routeIdentity`)}var Ef=S(`PullRequestRouting.allowed`)(function*(e,t,n,r){let i=yield*u(e.entries),a=i.get(t),o=i.get(n);if(!a?.enabled||!o?.enabled)return!1;let s=yield*$r,c=yield*s.get(a),l=yield*s.get(o);if(!(r?c===`read-write`&&l===`read-write`:c!==`off`&&l!==`off`))return!1;for(let e of[a,o]){if(e.target._tag!==`SshConnectionTarget`)continue;let t=yield*ue(Bi);if(k(t))return!1;let n=yield*t.value.get(e.target.connectionId).pipe(vn(()=>y())),r=di(e);if(r===null||r!==di({...e,profile:n}))return!1}return!0});function Df(e,t){return e.projectId===t.projectId&&e.repository.toLowerCase()===t.repository.toLowerCase()&&e.number===t.number&&(t.host===void 0||e.host?.toLowerCase()===t.host.toLowerCase())}var Of=S(`PullRequestRouting.invalidateTarget`)(function*(e,t,n,r){(n===t||(yield*Ef(e,t,n,!1)))&&(yield*ot(r,t=>e.run(n,Ci(A.pullRequestsInvalidate,t)).pipe($e(`1 second`),vn(()=>void 0)),{concurrency:3,discard:!0}))}),kf=({allowStale:e,expectedAccountId:t,...n},r)=>Ci(A.pullRequestsReportState,{reference:n,state:r}).pipe($e(`5 seconds`),dr,Dt,kr);function Af(){let e=S(`PullRequestRouting.request`)(function*(e,t,n){let r=n??Ci(e,t);if(e===A.pullRequestsInvalidate&&gf(t)){let n=yield*Ci(e,t),r=yield*ba,i=yield*J,a=vf.get(i),o=new Map;for(let e of a?.values()??[]){if(e.origin!==r.target.environmentId)continue;let n=t.reference;if(n===void 0||Df(e.reference,n)){for(let t of e.targets)o.set(t,e.reference);t.reference!==void 0&&o.set(r.target.environmentId,e.reference)}}return yield*ot(o,([e,n])=>Of(i,r.target.environmentId,e,[{...t,...t.reference===void 0?{}:{reference:n}}]),{concurrency:4,discard:!0}),n}if(!ff.has(e)&&!pf.has(e)||!mf(t))return yield*Ci(e,t);let i=t,a=yield*ba,o=yield*J,s=yield*u(o.entries),c=s.get(a.target.environmentId),l=vf.get(o)??new Map;vf.set(o,l);let d=bf([a.target.environmentId,i.projectId,i.host?.toLowerCase()??null,i.repository.toLowerCase(),String(i.number)]),f=t=>t.pipe(_e(()=>{if(!pf.has(e)||l.size===0)return I;let t=new Map([[a.target.environmentId,[i]]]);for(let e of l.values())if(e.origin===a.target.environmentId&&Df(e.reference,i))for(let n of[...e.targets,a.target.environmentId]){let r=t.get(n)??[];r.some(t=>t.host===e.reference.host)||r.push(e.reference),t.set(n,r)}return ot(t,([t,n])=>Of(o,a.target.environmentId,t,[...n.map(t=>({reference:t,...e===A.pullRequestsSetFilesViewed?{filesViewedOnly:!0}:{}})),...e===A.pullRequestsSetFilesViewed?[]:[{}]]),{concurrency:4,discard:!0})})),p=[];for(let[t,n]of s){if(t===a.target.environmentId||!(yield*Ef(o,a.target.environmentId,t,pf.has(e))))continue;let r=yield*o.run(t,ba.pipe(T(e=>u(e.session)))).pipe(vn(()=>y()));k(r)||(e!==A.pullRequestsChecks||(yield*r.value.initialConfig.pipe(P(e=>e.environment.capabilities.pullRequestChecks===!0),Rt(`2 seconds`),cr(e=>ee(e)?It:M(!1)))))&&p.push({id:t,local:wf(n)})}if(p.length===0)return yield*f(r);let m=Ci(A.pullRequestsRouting,i).pipe(Rt(`2 seconds`),cr(e=>ee(e)?It:M(null))),h=yield*ff.has(e)?Cf(xf,bf([i.projectId,i.host?.toLowerCase()??null,i.repository.toLowerCase()]),m):m;if(h===null||h.provider!==`github`)return yield*f(r);let te={...t,host:h.host,expectedAccountId:h.accountId},ne=n??(yield*sn(Ci(e,te))),re=p.filter(e=>e.local),g=p.filter(e=>!e.local),_=c!==void 0&&wf(c),ie=[..._&&pf.has(e)?[a.target.environmentId]:[],...re.map(e=>e.id),...!_&&pf.has(e)?[a.target.environmentId]:[],...g.map(e=>e.id),...ff.has(e)?[a.target.environmentId]:[]],ae=t=>(t===a.target.environmentId?ne:o.run(t,Ci(e,te))).pipe(_e(e=>t!==a.target.environmentId&&hf(e)?kf(i,e.state):I),_e(()=>R(()=>{let e=l.get(d)??{origin:a.target.environmentId,reference:{...i,host:h.host},targets:new Set};if(e.targets.add(t),l.size>=256&&!l.has(d)){let e=l.keys().next().value;e!==void 0&&l.delete(e)}l.set(d,e)})),L(e=>yf(e)?new xa({environmentId:t,message:`The environment was removed.`}):e)),oe=t=>{let n=ie[t];return n===void 0?ne:w(function*(){if(n!==a.target.environmentId){if(!(yield*Ef(o,a.target.environmentId,n,pf.has(e))))return yield*oe(t+1);let r=Ci(A.pullRequestsRoutingIdentity,{host:h.host}).pipe(Rt(`2 seconds`),cr(e=>ee(e)?It:M(null))),i=yield*o.run(n,ff.has(e)?Cf(Sf,h.host.toLowerCase(),r):r).pipe(Rt(`2 seconds`),cr(e=>ee(e)?It:M(null)));if(i===null||i.provider!==`github`||i.host.toLowerCase()!==h.host.toLowerCase()||i.accountId!==h.accountId||!(yield*Ef(o,a.target.environmentId,n,pf.has(e))))return yield*oe(t+1)}let r=ae(n);return yield*(ff.has(e)?r.pipe(_f(n)):r).pipe(Cn(n=>(ff.has(e)||Tf(n))&&t+1<ie.length,()=>oe(t+1)),P(t=>typeof t==`object`&&t&&`projectId`in t?{...t,projectId:i.projectId,...e===A.pullRequestsDetail?{projectTitle:h.projectTitle,workspaceRoot:h.workspaceRoot}:{}}:t))})};return yield*f(oe(0))});return S(`PullRequestRouting.readOrWrite`)(function*(t,n){if(!ff.has(t)||!mf(n))return yield*e(t,n);let r=yield*J,i=yield*u(r.entries);if(i.size<2)return yield*Ci(t,n);let a=yield*ba,o=!1;for(let e of i.keys())if(e!==a.target.environmentId&&(yield*Ef(r,a.target.environmentId,e,!1))){o=!0;break}if(!o)return yield*Ci(t,n);let s={...n,allowStale:!1},c=yield*sn(Ci(t,s).pipe(_f(a.target.environmentId))),l=i.get(a.target.environmentId),d=e(t,s,c);return yield*(l!==void 0&&wf(l)?c.pipe(H(()=>d)):d).pipe(H(e=>n.allowStale!==!1&&(t===A.pullRequestsSummary||t===A.pullRequestsDetail)?Ci(t,n):E(e)))})}var jf=6e4,Mf=class extends b()(`PullRequestDiffCredentialRejectedError`,{repository:j,number:st,traceId:j,cause:Ve}){get message(){return`This environment session is no longer valid (invalid_credential). Refresh the page or quit and reopen P4 Code.`}},Nf=S(`clientRuntime.state.fetchEnvironmentPullRequestDiff`)(function*(e){return yield*Zi({...e,group:`pullRequests`,method:`POST`,url:e=>e.diff(),timeoutMs:e.timeoutMs??jf,request:({client:t,headers:n})=>t.diff({payload:e.diff,headers:n})}).pipe(L(t=>t._tag===`EnvironmentAuthInvalidError`&&t.reason===`invalid_credential`?new Mf({repository:e.diff.repository,number:e.diff.number,traceId:t.traceId,cause:t}):t))}),Pf=class extends Zt()(`@p4code/client-runtime/state/pullRequestDiffHttp/PullRequestDiffLoader`){},Ff=Fe(Pf,w(function*(){let e=yield*lt,t=yield*ue(ia),n=yield*ue(da);return Pf.of({load:(r,i)=>Nf({prepared:r,diff:i,signer:t,remoteAuthorization:n}).pipe(Yt(lt,e))})})),If=class extends De(`EnvironmentHttpConnectionNotReadyError`){},Lf=5e3;function Rf(e){let t=V(e=>ir(t=>{let n=t(e);if(n._tag===`Success`&&!n.waiting)return n;let r=t.self(),i=Be(r,_);return k(i)?n:n._tag===`Failure`?Vr(n.cause,{previous:r,waiting:n.waiting}):_t(i.value,n)},(e,t)=>e.setSelf(t),t=>t(e)).pipe(yr(3e5)));return({environmentId:n,input:{projectId:r,host:i,repository:a,number:o,allowStale:s}})=>t(e({environmentId:n,input:{projectId:r,...i===void 0?{}:{host:i},repository:a,number:o,...s===void 0?{}:{allowStale:s}}}))}function zf(e,t,n,r=!1){(r||e.get(t).waiting)&&e.refresh(t),e.update(t,Fr(n))}function Bf(e){return bi(e,{label:`environment-data:pull-requests:turn-refreshes`,tag:A.pullRequestsSubscribeRefreshes})}function Vf(e,t=Bf(e)){let n=Af();return K(e,{label:`environment-data:pull-requests:linked-summary`,tag:A.pullRequestsSummary,execute:e=>n(A.pullRequestsSummary,e),staleTimeMs:6e4,refreshIntervalMs:6e4,idleTtlMs:Lf,refreshTrigger:({environmentId:e})=>t({environmentId:e,input:{}}),isFinal:e=>e.state===`merged`})}function Hf(e,t=Bf(e)){let n=Af();return K(e,{label:`environment-data:pull-requests:stack`,tag:A.pullRequestsStack,execute:e=>n(A.pullRequestsStack,e),staleTimeMs:6e4,idleTtlMs:Lf,refreshTrigger:({environmentId:e})=>t({environmentId:e,input:{}})})}function Uf(e){return{number:e.number,title:e.title,url:e.url,baseRef:e.baseBranch,headRef:e.headBranch,state:e.state,...e.isDraft===!0?{isDraft:!0}:{},updatedAt:e.updatedAt}}function Wf(e){let t=Bf(e),n=ca(),r=Af(),i={mode:`serial`,key:({environmentId:e})=>e},a=Rf(K(e,{label:`environment-data:pull-requests:activity`,persistence:cf(Ye),tag:A.pullRequestsActivity,execute:e=>r(A.pullRequestsActivity,e),staleTimeMs:6e4,refreshTrigger:({environmentId:e})=>t({environmentId:e,input:{}})})),o=Rf(K(e,{label:`environment-data:pull-requests:detail`,persistence:cf(he),tag:A.pullRequestsDetail,execute:e=>r(A.pullRequestsDetail,e),staleTimeMs:6e4,refreshTrigger:({environmentId:e})=>t({environmentId:e,input:{}})})),s=Rf(K(e,{label:`environment-data:pull-requests:preview`,persistence:cf(jt),tag:A.pullRequestsPreview,execute:e=>r(A.pullRequestsPreview,e),staleTimeMs:6e4,refreshTrigger:({environmentId:e})=>t({environmentId:e,input:{}})})),c=Rf(K(e,{label:`environment-data:pull-requests:label-candidates`,tag:A.pullRequestsLabelCandidates,execute:e=>r(A.pullRequestsLabelCandidates,e),staleTimeMs:6e4})),l=Rf(K(e,{label:`environment-data:pull-requests:review-guide`,persistence:cf(rn),tag:A.pullRequestsReviewGuide,execute:e=>r(A.pullRequestsReviewGuide,e),staleTimeMs:6e4,refreshTrigger:({environmentId:e})=>t({environmentId:e,input:{}})})),d=Rf(K(e,{label:`environment-data:pull-requests:reviewer-candidates`,tag:A.pullRequestsReviewerCandidates,execute:e=>r(A.pullRequestsReviewerCandidates,e),staleTimeMs:6e4}));return{refreshes:t,linkedThreads:K(e,{label:`environment-data:pull-requests:linked-threads`,persistence:cf(fe),tag:A.pullRequestsLinkedThreads,staleTimeMs:0,refreshIntervalMs:1e4,refreshTrigger:({environmentId:e})=>t({environmentId:e,input:{}})}),list:K(e,{label:`environment-data:pull-requests:list`,persistence:cf(Te),tag:A.pullRequestsList,staleTimeMs:3e4,refreshTrigger:({environmentId:e,input:n})=>n.cursors===void 0?t({environmentId:e,input:{}}):void 0}),listStats:K(e,{label:`environment-data:pull-requests:list-stats`,persistence:df(),tag:A.pullRequestsListStats,staleTimeMs:6e4,refreshTrigger:({environmentId:e})=>t({environmentId:e,input:{}})}),detail:o,preview:s,checks:K(e,{label:`environment-data:pull-requests:checks`,persistence:cf(Pe(ae)),tag:A.pullRequestsChecks,execute:e=>r(A.pullRequestsChecks,e),staleTimeMs:45e3,refreshTrigger:({environmentId:e})=>t({environmentId:e,input:{}})}),activity:a,threadComments:G(e,{label:`environment-data:pull-requests:thread-comments`,tag:A.pullRequestsThreadComments,execute:e=>r(A.pullRequestsThreadComments,e),scheduler:n,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.threadId,t.cursor])}}),diff:sa(e,{label:`environment-data:pull-requests:diff`,persistence:cf(je),staleTimeMs:6e4,execute:e=>w(function*(){let t=yield*ba,n=yield*Pf,r=yield*u(t.prepared);return k(r)?yield*new If({message:`The environment HTTP connection is not ready.`}):yield*n.load(r.value,e)})}),diffFileContents:G(e,{label:`environment-data:pull-requests:diff-file-contents`,tag:A.pullRequestsDiffFileContents,execute:e=>r(A.pullRequestsDiffFileContents,e),scheduler:n,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.projectId,t.host?.toLowerCase()??null,t.repository,t.number,t.commit??null,t.changeType,t.oldPath,t.newPath])}}),filesViewed:K(e,{label:`environment-data:pull-requests:files-viewed`,persistence:cf(Kr),tag:A.pullRequestsFilesViewed,execute:e=>r(A.pullRequestsFilesViewed,e),staleTimeMs:15e3}),setFilesViewed:G(e,{label:`environment-data:pull-requests:set-files-viewed`,tag:A.pullRequestsSetFilesViewed,execute:e=>r(A.pullRequestsSetFilesViewed,e),scheduler:n,concurrency:{mode:`serial`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.projectId,t.repository,t.number])}}),runAction:G(e,{tag:A.pullRequestsRunAction,label:`environment-data:pull-requests:run-action`,execute:e=>w(function*(){let{resolveMergeMethod:t,...n}=e,i=n;if(n.action===`merge`&&t!==void 0){let{projectId:e,host:a,repository:o,number:s}=n,c={projectId:e,host:a,repository:o,number:s,allowStale:!1},l=yield*r(A.pullRequestsDetail,c);if(l.state!==`open`||l.isDraft||!l.capabilities.actions.includes(`merge`)||!l.viewerPermissions.actions.includes(`merge`))return yield*new Nt({operation:`runAction`,detail:`This pull request cannot be merged.`});if(l.capabilities.stackActions&&(yield*r(A.pullRequestsStack,c))!==null)return yield*new Nt({operation:`runAction`,detail:`Open this pull request to merge its stack.`});let u=yield*Sr({try:()=>t(l),catch:e=>new Nt({operation:`runAction`,detail:e instanceof Error?e.message:`Could not choose a merge method.`})});i={...n,mergeMethod:u}}return yield*r(A.pullRequestsRunAction,i)}),onSuccess:({environmentId:e,input:t},n)=>R(()=>n.refresh(s({environmentId:e,input:t}))),scheduler:n,concurrency:i}),update:G(e,{label:`environment-data:pull-requests:update`,tag:A.pullRequestsUpdate,execute:e=>r(A.pullRequestsUpdate,e),onSuccess:(e,t)=>R(()=>t.refresh(s(e))),scheduler:n,concurrency:i}),comment:G(e,{label:`environment-data:pull-requests:comment`,tag:A.pullRequestsComment,execute:e=>r(A.pullRequestsComment,e),scheduler:n,concurrency:i}),updateComment:G(e,{label:`environment-data:pull-requests:update-comment`,tag:A.pullRequestsUpdateComment,execute:e=>r(A.pullRequestsUpdateComment,e),scheduler:n,concurrency:i,onSuccess:({environmentId:e,input:{projectId:t,host:n,repository:r,number:i}},o)=>R(()=>o.refresh(a({environmentId:e,input:{projectId:t,...n===void 0?{}:{host:n},repository:r,number:i}})))}),submitReview:G(e,{label:`environment-data:pull-requests:submit-review`,tag:A.pullRequestsSubmitReview,execute:e=>r(A.pullRequestsSubmitReview,e),scheduler:n,concurrency:i}),replyToThread:G(e,{label:`environment-data:pull-requests:reply-to-thread`,tag:A.pullRequestsReplyToThread,execute:e=>r(A.pullRequestsReplyToThread,e),scheduler:n,concurrency:i}),reviewerCandidates:d,requestReviewers:G(e,{label:`environment-data:pull-requests:request-reviewers`,tag:A.pullRequestsRequestReviewers,execute:e=>r(A.pullRequestsRequestReviewers,e),scheduler:n,concurrency:i,onSuccess:(e,t)=>R(()=>{let{reviewers:n,requested:r}=e.input,i=d(e),s=D(_(t.get(i)))?.candidates.filter(e=>n.some(t=>t.id===e.id&&t.kind===e.kind))??[],c=s.length<n.length;zf(t,i,e=>({...e,candidates:e.candidates.map(e=>s.includes(e)?{...e,isRequested:r}:e)}));let l=new Set(s.map(e=>e.login.toLowerCase())),u=(e,t=e=>!1)=>r?[...e,...s.filter(t=>!e.some(e=>e.login.toLowerCase()===t.login.toLowerCase())).map(({login:e,name:t,avatarUrl:n})=>({login:e,name:t,avatarUrl:n}))]:e.filter(e=>!l.has(e.login.toLowerCase())||t(e));zf(t,o(e),e=>({...e,reviewers:u(e.reviewers)}),c),zf(t,a(e),e=>({...e,reviewers:e.reviewers===void 0?void 0:u(e.reviewers,t=>e.comments.some(e=>(e.kind===`review`||e.kind===`review-comment`)&&e.author?.login.toLowerCase()===t.login.toLowerCase()))}),c)})}),reviewGuide:l,generateReviewGuide:G(e,{label:`environment-data:pull-requests:generate-review-guide`,tag:A.pullRequestsGenerateReviewGuide,execute:e=>r(A.pullRequestsGenerateReviewGuide,e),onSuccess:(e,t,n)=>R(()=>{zf(t,l(e),()=>n,!0)})}),labelCandidates:c,setLabels:G(e,{label:`environment-data:pull-requests:set-labels`,tag:A.pullRequestsSetLabels,execute:e=>r(A.pullRequestsSetLabels,e),scheduler:n,concurrency:i,onSuccess:(e,t)=>R(()=>{let{labels:n,applied:r}=e.input,i=c(e),a=D(_(t.get(i))),s=new Set(n);zf(t,i,e=>({...e,candidates:e.candidates.map(e=>s.has(e.name)?{...e,isApplied:r}:e)})),zf(t,o(e),e=>({...e,labels:r?[...e.labels,...n.filter(t=>!e.labels.some(e=>e.name===t)).map(e=>({name:e,color:a?.candidates.find(t=>t.name===e)?.color??null}))]:e.labels.filter(e=>!s.has(e.name))}))})}),setThreadResolution:G(e,{label:`environment-data:pull-requests:set-thread-resolution`,tag:A.pullRequestsSetThreadResolution,execute:e=>r(A.pullRequestsSetThreadResolution,e),scheduler:n,concurrency:i}),setReaction:G(e,{label:`environment-data:pull-requests:set-reaction`,tag:A.pullRequestsSetReaction,execute:e=>r(A.pullRequestsSetReaction,e),scheduler:n,concurrency:i}),invalidate:G(e,{label:`environment-data:pull-requests:invalidate`,tag:A.pullRequestsInvalidate,execute:e=>r(A.pullRequestsInvalidate,e),onSuccess:({environmentId:e,input:t},n)=>R(()=>{t.reference!==void 0&&n.refresh(s({environmentId:e,input:t.reference}))}),scheduler:n,concurrency:i})}}var Gf=`p4.backgroundActivity.clientId`,Kf=25e3,qf=45e3,Jf=qf,Yf=[{type:`provider-status`}],Xf=new Map,Zf=new Set;function Qf(){for(let e of Zf)try{e()}catch{}}function $f(e,t){switch(t.type){case`server-config`:case`diagnostics`:return JSON.stringify([e,t.type]);case`provider-status`:return JSON.stringify([e,t.type,t.instanceId??null]);case`vcs-status`:case`git-refs`:return JSON.stringify([e,t.type,t.cwd]);case`thread`:return JSON.stringify([e,t.type,t.threadId])}}function ep(){try{let e=window.localStorage.getItem(Gf);if(e)return e;let t=zn();return window.localStorage.setItem(Gf,t),t}catch{return`ephemeral-browser-client`}}function tp(){return window.desktopBridge?`desktop-renderer`:`web`}function np(e,t){return e<=t&&t-e<=Jf}function rp(e,t,n){let r=[...Yf];for(let t of Xf.values())t.environmentId===e&&r.push(t.scope);return{environmentId:e,clientId:ep(),clientKind:tp(),visible:document.visibilityState===`visible`,focused:document.hasFocus(),recentlyInteracted:np(t,n),appState:document.visibilityState===`visible`?`active`:`background`,scopes:r,ttlMs:qf,observedAt:zt(n)}}function ip(e){if(e.method===A.subscribeResourceTelemetry)return{type:`diagnostics`};if(e.method!==A.subscribeVcsStatus)return null;let t=e.input;return t.includeRemote===!1?null:typeof t.cwd==`string`?{type:`vcs-status`,cwd:t.cwd}:null}function ap(e,t){let n=$f(e,t),r=Xf.get(n);return r?r.refCount+=1:(Xf.set(n,{environmentId:e,scope:t,refCount:1}),Qf()),()=>{let e=Xf.get(n);e&&(--e.refCount,e.refCount<=0&&(Xf.delete(n),Qf()))}}function op(e){let t=ip(e);return t===null?M(I):R(()=>{let n=ap(e.environmentId,t);return R(n)})}var sp=c(hi,hi.of({observe:op})),cp=qe(w(function*(){if(typeof window>`u`||typeof document>`u`)return;let e=yield*J,n=yield*te,r=yield*Ft(1),i=()=>le(r,void 0),a=n.currentTimeMillisUnsafe(),o=()=>{let e=n.currentTimeMillisUnsafe(),t=np(a,e);a=e,t||i()},s={passive:!0},c=w(function*(){let t=yield*We,n=yield*u(e.entries);yield*ot(n.keys(),n=>e.run(n,Ui(A.serverReportClientActivity,rp(n,a,t))).pipe(dr),{concurrency:`unbounded`,discard:!0})}).pipe(wr(`web.backgroundActivity.report`));yield*Cr(R(()=>{Zf.add(i),document.addEventListener(`visibilitychange`,i),window.addEventListener(`focus`,i),window.addEventListener(`blur`,i),window.addEventListener(`online`,i),window.addEventListener(`pointermove`,o),window.addEventListener(`keydown`,o),window.addEventListener(`wheel`,o,s),window.addEventListener(`touchstart`,o,s)}),()=>R(()=>{Zf.delete(i),document.removeEventListener(`visibilitychange`,i),window.removeEventListener(`focus`,i),window.removeEventListener(`blur`,i),window.removeEventListener(`online`,i),window.removeEventListener(`pointermove`,o),window.removeEventListener(`keydown`,o),window.removeEventListener(`wheel`,o),window.removeEventListener(`touchstart`,o)})),yield*Gr(e.entries).pipe(ut(()=>R(i)),O),yield*on(r).pipe(t(`250 millis`),ut(()=>c),O),yield*R(i).pipe(p(ft(`${Kf} millis`)),O)})),lp=wt({schemaVersion:Re(3),environmentId:On,snapshot:an}),up=wt({schemaVersion:Re(4),environmentId:On,threadId:dt,snapshot:mn.mapFields(e=>({...e,projection:ar}))});function dp(e,t){return e.pipe(H(()=>t.pipe(tn(y()))))}var fp=wt({connectionId:j,credential:Ca}),pp=wt({schemaVersion:Re(1),targets:vt(oi),profiles:vt(oa),credentials:vt(fp),remoteDpopTokens:vt(Qi),githubRoutingPermissions:Ht(vt(Fi)),disabledEnvironmentIds:vt(On).pipe(ht(M([])))}),mp=Object.freeze({schemaVersion:1,targets:[],profiles:[],credentials:[],remoteDpopTokens:[],disabledEnvironmentIds:[]});function hp(e,t,n){let r=t(n);return[...e.filter(e=>t(e)!==r),n]}function gp(e,t,n){return e.filter(e=>t(e)!==n)}function _p(e){switch(e._tag){case`PrimaryConnectionTarget`:case`RelayConnectionTarget`:return null;case`BearerConnectionTarget`:case`SshConnectionTarget`:return e.connectionId}}function vp(e){return _p(e)??e._tag}function yp(e,t){let n=new Set(t.flatMap(e=>_p(e)??[])),r=t.some(e=>e._tag===`RelayConnectionTarget`),i=new Set(t.map(e=>e.environmentId));return{...e,profiles:e.profiles.filter(e=>!n.has(e.connectionId)),credentials:e.credentials.filter(e=>!n.has(e.connectionId)),remoteDpopTokens:r?e.remoteDpopTokens.filter(e=>!i.has(e.environmentId)):e.remoteDpopTokens}}function bp(e,t){return e.targets.filter(e=>e.environmentId===t)}function xp(e,t,n){let r=new Set(n.map(vp)),i=bp(e,t).filter(e=>!r.has(vp(e))),a=e.targets.findIndex(e=>e.environmentId===t),o=e.targets.filter(e=>e.environmentId!==t),s=a===-1?o.length:e.targets.slice(0,a).filter(e=>e.environmentId!==t).length;return{...yp(e,i),targets:[...o.slice(0,s),...n,...o.slice(s)]}}function Sp(e,t,n=[t.target]){let r=xp(e,t.target.environmentId,n);switch(t._tag){case`RelayConnectionRegistration`:return r;case`BearerConnectionRegistration`:return{...r,profiles:hp(r.profiles,e=>e.connectionId,t.profile),credentials:hp(r.credentials,e=>e.connectionId,{connectionId:t.target.connectionId,credential:t.credential})};case`SshConnectionRegistration`:return{...r,profiles:hp(r.profiles,e=>e.connectionId,t.profile)}}}function Cp(e,t){let n=xp(e,t,[]);return{...n,remoteDpopTokens:gp(n.remoteDpopTokens,e=>e.environmentId,t),disabledEnvironmentIds:gp(n.disabledEnvironmentIds,e=>e,t),...n.githubRoutingPermissions===void 0?{}:{githubRoutingPermissions:n.githubRoutingPermissions.filter(e=>e.environmentId!==t)}}}function wp(e,t,n){let r=e.targets.some(e=>e.environmentId===t),i=gp(e.disabledEnvironmentIds,e=>e,t);return{...e,disabledEnvironmentIds:r&&!n?[...i,t]:i}}function Tp(e,t){return e.targets.some(e=>e._tag===`RelayConnectionTarget`&&e.environmentId===t.environmentId)?{...e,remoteDpopTokens:hp(e.remoteDpopTokens,e=>e.environmentId,t)}:e}var Ep=/^[^-+]+-(?:nightly|preview)\.\d{8}\.\d+$/;function Dp(e){return e.stageLabel.trim().toLowerCase()===`latest`?e.baseName:`${e.baseName} (${e.stageLabel})`}function Op(e){return e.primaryServerVersion&&Ep.test(e.primaryServerVersion)?`Nightly`:e.fallbackStageLabel}function kp(e){let t=Op({primaryServerVersion:e.primaryServerVersion,fallbackStageLabel:e.fallbackStageLabel});return t===e.fallbackStageLabel?e.fallbackDisplayName:Dp({baseName:e.baseName,stageLabel:t})}function Ap(){return typeof window>`u`?null:window.desktopBridge?.getAppBranding?.()??null}var jp=Ap(),Mp=``,Np=Mp===`latest`||Mp===`nightly`?Mp:null,Pp=Np===`nightly`?`Nightly`:Np===`latest`?`Latest`:null,Fp=jp?.baseName??`P4 Code`,Ip=jp?.stageLabel??Pp??`Latest`,Lp=jp?.displayName??Dp({baseName:Fp,stageLabel:Ip}),Rp=`0.8.23`,zp=`state`,Bp=`challenge`,Vp=`port`,Hp=`/callback`,Up=`https://app.p4.codes`,Wp=[`openid`,`profile`,`email`,`offline_access`];function Gp(e){let t=Ec(e),n=t.get(zp)?.trim()??``,r=t.get(Bp)?.trim()??``,i=Kp(t.get(Vp)?.trim()??``);return!n||!r||i===null?null:{state:n,challenge:r,loopbackPort:i}}function Kp(e){if(!/^\d{1,5}$/.test(e))return null;let t=Number(e);return t>=1&&t<=65535?t:null}function qp(e){return`http://127.0.0.1:${e}${Hp}`}function Jp(e){let t=new URL(e.authorizationEndpoint);return t.searchParams.set(`client_id`,e.clientId),t.searchParams.set(`redirect_uri`,e.redirectUri),t.searchParams.set(`response_type`,`code`),t.searchParams.set(`scope`,e.scopes.join(` `)),t.searchParams.set(`state`,e.state),t.searchParams.set(`code_challenge`,e.challenge),t.searchParams.set(`code_challenge_method`,`S256`),t.toString()}function Yp(){return Up}function Xp(){return``}function Zp(){return null}function Qp(e){try{return new URL(e).origin}catch{return null}}function $p(e){if(Xp())return!1;if(Zp())return!0;if(e===void 0&&(typeof window>`u`||window.location===void 0))return!1;let t=Qp(Yp());return t!==null&&(e??new URL(window.location.href)).origin===t}function em(e=new URL(window.location.href)){let t=e.searchParams.get(`host`)?.trim()??``,n=Ic(e)?.trim()??``,r=e.searchParams.get(`label`)?.trim()??``;return!t||!n?null:{host:t,token:n,label:r}}function tm(e=new URL(window.location.href)){return em(e)!==null}function nm(e){let t=new URL(`/pair`,Yp());t.searchParams.set(`host`,e.host);let n=e.label?.trim();return n&&t.searchParams.set(`label`,n),Rc(t,e.token).toString()}function rm(e){let t=new URL(`/__p4code/channel`,Yp());return t.searchParams.set(`channel`,e.channel),t.toString()}var im=15e3,am=12e4,om=im,sm=new Map,cm=new Set([A.serverGetUsageSummary,A.mcpRegistryProviderSignInWait]),lm=new Set([A.serverUpdateProvider,A.serverRefreshProviders,A.serverUpdateServer]),um=z([]).pipe(Zn,N(`slow-rpc-ack-requests`));function dm(e){Pt.set(um,[...e])}function fm(){return Pt.get(um)}function pm(e){return!e.includes(`subscribe`)&&!e.startsWith(`pullRequests.`)&&!cm.has(e)}function mm(e){return lm.has(e)?Math.max(om,am):om}function hm(e,t,n=t){if(!pm(t))return;_m(e),ym();let r=Date.now(),i=mm(t),a={requestId:e,startedAt:new Date(r).toISOString(),startedAtMs:r,tag:n,thresholdMs:i},o=setTimeout(()=>{sm.delete(e),vm(a)},i);sm.set(e,{request:a,timeoutId:o})}function gm(e){_m(e);let t=fm();t.some(t=>t.requestId===e)&&dm(t.filter(t=>t.requestId!==e))}function _m(e){let t=sm.get(e);t&&(clearTimeout(t.timeoutId),sm.delete(e))}function vm(e){let t=[...fm(),e];if(t.length<=256){dm(t);return}dm(t.slice(-256))}function ym(){for(;sm.size>=256;){let e=sm.keys().next().value;if(e===void 0)return;_m(e)}}function bm(){return n(um)}var xm=`local:`;function Sm(e){return`${xm}${e}`}function Cm(e){return e._tag===`BearerConnectionTarget`&&e.connectionId.startsWith(xm)}function wm(e){return Cm(e)?e.connectionId.slice(6):null}function Tm(e){return wm(e)?.startsWith(`wsl:`)===!0}function Em(e){let t=[],n=()=>{let n=e();if(n===void 0)return t.length>0&&(t=[]),{_tag:`Success`,bootstraps:t};try{let e=n.getLocalEnvironmentBootstraps().filter(e=>e.id!==Pn);return(e.length!==t.length||e.some((e,n)=>{let r=t[n];return r===void 0||e.id!==r.id||e.label!==r.label||e.runningDistro!==r.runningDistro||e.httpBaseUrl!==r.httpBaseUrl||e.wsBaseUrl!==r.wsBaseUrl||e.bootstrapToken!==r.bootstrapToken}))&&(t=e),{_tag:`Success`,bootstraps:t}}catch(e){return{_tag:`Failure`,cause:e}}};return{readResult:n,readSnapshot:()=>{let e=n();return e._tag===`Success`?e.bootstraps:t}}}var Dm=Em(()=>window.desktopBridge);function Om(){return Dm.readResult()}function km(){return Dm.readSnapshot()}var Am={"image/png":`png`,"image/jpeg":`jpg`,"image/gif":`gif`,"image/webp":`webp`,"application/pdf":`pdf`,"application/zip":`zip`,"application/vnd.sqlite3":`sqlite`,"text/x-python":`py`,"text/javascript":`js`,"text/x-ruby":`rb`,"text/x-shellscript":`sh`};function jm(e,t){let n=Am[t??``];return n?`file.${n}`:e}function Mm(e){let t=e.mimeType?.split(`;`,1)[0]?.trim().toLowerCase()??``,n=e.name.toLowerCase(),r=n.slice(n.lastIndexOf(`.`)),i=!t||t===`application/octet-stream`||t===`text/plain`;if(t===`application/pdf`)return`pdf`;if(t===`text/html`)return`html`;if(t===`text/markdown`||t===`text/x-markdown`)return`markdown`;if(t.startsWith(`image/`))return`image`;if(t.startsWith(`video/`))return`video`;if(t.startsWith(`audio/`))return`audio`;if(i){if(r===`.pdf`)return`pdf`;if(/^\.html?$/.test(r))return`html`;if(/^\.(md|markdown|mdown|mkd|mdx)$/.test(r))return`markdown`;let e=zm(r);if(e?.startsWith(`image/`))return`image`;if(e?.startsWith(`video/`))return`video`;if(Rm(r)!==null)return`audio`;if(/^\.(txt|log|json|jsonc|jsonl|ndjson|yaml|yml|toml|ini|conf|config|env|csv|tsv|xml|css|scss|sass|less|js|jsx|mjs|cjs|ts|tsx|mts|cts|py|pyi|rb|go|rs|swift|kt|kts|java|c|h|cc|cpp|hpp|cs|php|sh|bash|zsh|fish|sql|graphql|gql|vue|svelte|r|lua|ex|exs|erl|hs|clj|dart|diff|patch|lock|properties|gradle)$/.test(r)||/^(dockerfile|makefile|gemfile|rakefile|license|readme|\.gitignore|\.gitattributes|\.editorconfig|\.env)(\.|$)/i.test(n.split(/[\\/]/).at(-1)??``))return`text`}return t.startsWith(`text/`)||/^(application\/(json|.*\+json|xml|.*\+xml|javascript|x-javascript|yaml|x-yaml|toml|sql))$/.test(t)?`text`:`unsupported`}var Nm=1048576;function Pm(e,t=!1){let n=e.subarray(0,Nm);if(n.some(e=>e===0))throw Error(`This file contains binary data and cannot be shown as text.`);let r=new TextDecoder(`utf-8`,{fatal:!0});try{return{text:r.decode(n,{stream:t||e.length>n.length}),truncated:t||e.length>n.length}}catch{throw Error(`This file is not UTF-8 text. Open it in another app to view its contents.`)}}var Fm=[`.avif`,`.gif`,`.ico`,`.jpeg`,`.jpg`,`.png`,`.svg`,`.webp`],Im=new Map([[`.avif`,`image/avif`],[`.gif`,`image/gif`],[`.ico`,`image/x-icon`],[`.jpeg`,`image/jpeg`],[`.jpg`,`image/jpeg`],[`.png`,`image/png`],[`.svg`,`image/svg+xml`],[`.webp`,`image/webp`]]),Lm=new Map([[`.mp3`,`audio/mpeg`],[`.wav`,`audio/wav`],[`.ogg`,`audio/ogg`],[`.oga`,`audio/ogg`],[`.flac`,`audio/flac`],[`.aac`,`audio/aac`],[`.m4a`,`audio/mp4`],[`.opus`,`audio/ogg`],[`.aiff`,`audio/aiff`]]);function Rm(e){return/^\.[a-z0-9]+$/i.test(e)?Lm.get(e.toLowerCase())??null:null}function zm(e){return/^\.[a-z0-9]+$/i.test(e)?Im.get(e.toLowerCase())??Fn({name:`media${e}`,mimeType:``}):null}function Bm(e){let t=e.trim(),n=t.startsWith(`<`)&&t.endsWith(`>`)?t.slice(1,-1):t,r=/^data:((?:image|video)\/[\w.+-]+)[;,]/i.exec(n)?.[1];if(r)return r.toLowerCase();let i=n.split(/[?#]/,1)[0]??``;if(/^(?:https?:|file:|\/\/)/i.test(n))try{i=new URL(n,`https://media.invalid`).pathname}catch{return null}try{i=decodeURIComponent(i)}catch{}let a=i.split(/[\\/]/).at(-1)??``,o=a.lastIndexOf(`.`);return o<0?null:zm(a.slice(o))}function Vm(e){let t=Bm(e);return t===null?null:t.startsWith(`video/`)?`video`:`image`}function Hm(e,t){let n=e.toLowerCase();return t.some(e=>n.endsWith(e))}function Um(e){return Hm(e,Fm)}function Wm(e){return Fn({name:e,mimeType:``})!==null}function Gm(e){let t=e.lastIndexOf(`.`);return t>=0&&Rm(e.slice(t))!==null}var Km=`project-favicon-missing`;[...Fm];function qm(e,t,n){return JSON.stringify([e,t,n||null])}function Jm(e,t,n){let r=n;try{let e=new URL(n,`https://p4.invalid`).pathname;r=e.slice(e.lastIndexOf(`/`)+1)}catch{}return JSON.stringify([e,t,r])}function Ym(e){if(!e)return!1;try{let t=new URL(e,`https://p4.invalid`).pathname;return t.slice(t.lastIndexOf(`/`)+1)===Km}catch{return!1}}var Xm=32768,Zm=4194304,Qm=j.check(pn(Xm),Kn(/^data:image\/(?:png|jpeg|gif|webp|avif|svg\+xml|x-icon|vnd\.microsoft\.icon);base64,[A-Za-z0-9+/]+={0,2}$/)),$m=wt({environmentId:On,cwd:j,faviconPath:Pe(j),revision:j,dataUrl:Qm}),eh=An($m),th=Hn(Qm);function nh(e){return qm(e.environmentId,e.cwd,e.faviconPath)}async function rh(e,t){if(Number(e.headers.get(`content-length`))>t)throw Error(`Project icon is too large to decode.`);if(!e.body){let n=new Uint8Array(await e.arrayBuffer());if(n.byteLength>t)throw Error(`Project icon is too large to decode.`);return n}let n=e.body.getReader(),r=[],i=0;try{for(;;){let{done:e,value:a}=await n.read();if(e)break;if(i+=a.byteLength,i>t)throw Error(`Project icon is too large to decode.`);r.push(a)}}finally{n.cancel().catch(()=>{})}let a=new Uint8Array(new ArrayBuffer(i)),o=0;for(let e of r)a.set(e,o),o+=e.byteLength;return a}function ih(e){let t=e.fetch??globalThis.fetch;return async(n,r)=>{let i=await t(n,{signal:r});if(!i.ok)throw Error(`Project icon request failed with ${i.status}.`);let a=i.headers.get(`content-type`)?.split(`;`,1)[0]?.trim().toLowerCase(),o=a?.startsWith(`image/`)?a:Bm(n);if(!o)throw Error(`Project icon has no image type.`);let s=await rh(i,Zm);r.throwIfAborted();let c=`data:${o};base64,${ur(s)}`;if(th(c))return c;if(o===`image/svg+xml`)throw Error(`Project icon exceeds the cache limit.`);return e.downscale({url:n,mimeType:o,bytes:s},r)}}function ah(e){let t=new Map,n=new Map,r=0,i,a,o=new Set,s=e=>{let t=e().catch(()=>{}).finally(()=>o.delete(t));o.add(t)},c=n=>{let r=t.get(n);r&&(t.delete(n),s(()=>e.storage.remove(n,r)))},l=()=>{let e=0;for(let n of t.values())e+=n.dataUrl.length;for(;t.size>128||e>1048576;){let n=t.entries().next().value;if(!n)break;e-=n[1].dataUrl.length,c(n[0])}},u=()=>i??=(async()=>{try{for(let n of await e.storage.list()){let e=eh(n);x(e)&&t.set(nh(e.value),e.value)}l()}catch{}})(),d=e=>t.get(nh(e))?.dataUrl??null,f=async(i,o,f)=>{await a;let p=r,m=n.get(i.environmentId)??0;if(await u(),f.aborted||o===null)return d(i);let h=nh(i);if(Ym(o))return c(h),null;let ee=Jm(i.environmentId,i.cwd,o),te=t.get(h);if(te&&(t.delete(h),t.set(h,te),te.revision===ee))return te.dataUrl;try{let a=await e.load(o,f);if(f.aborted||p!==r||m!==(n.get(i.environmentId)??0))return d(i);if(th(a)){let n={environmentId:i.environmentId,cwd:i.cwd,faviconPath:i.faviconPath||null,revision:ee,dataUrl:a};return t.set(h,n),s(()=>e.storage.put(h,n)),l(),a}}catch{}return d(i)??o},p=async()=>{await Promise.all(o)},m=async e=>{e===void 0?r+=1:n.set(e,(n.get(e)??0)+1);let i=a,o=(async()=>{await i,await u();for(let[n,r]of t)(e===void 0||r.environmentId===e)&&c(n);await p()})().finally(()=>{a===o&&(a=void 0)});a=o,await o};return{hydrate:u,peek:d,resolve:f,clearEnvironment:e=>m(e),clearAll:()=>m(),flush:p}}var oh=`p4code:project-favicons`,sh=2,ch=`images`,lh;function uh(){return lh??=new Promise((e,t)=>{let n=indexedDB.open(oh,sh);n.addEventListener(`upgradeneeded`,()=>{for(let e of n.result.objectStoreNames)e!==ch&&n.result.deleteObjectStore(e);n.result.objectStoreNames.contains(ch)||n.result.createObjectStore(ch)}),n.addEventListener(`success`,()=>e(n.result)),n.addEventListener(`error`,()=>t(n.error)),n.addEventListener(`blocked`,()=>t(Error(`Project icon cache is blocked.`)))})}function dh(e){return new Promise((t,n)=>{e.addEventListener(`complete`,()=>t()),e.addEventListener(`abort`,()=>n(e.error)),e.addEventListener(`error`,()=>n(e.error))})}async function fh(e,t){let n=(await uh()).transaction(ch,e),r=t(n.objectStore(ch));return await dh(n),r?.result}async function ph(e,t){let n=await createImageBitmap(new Blob([e.bytes],{type:e.mimeType}));try{t.throwIfAborted();let e=document.createElement(`canvas`);for(let t of[96,48]){let r=Math.min(1,t/n.width,t/n.height);e.width=Math.max(1,Math.round(n.width*r)),e.height=Math.max(1,Math.round(n.height*r));let i=e.getContext(`2d`);if(!i)throw Error(`Canvas is unavailable.`);i.clearRect(0,0,e.width,e.height),i.drawImage(n,0,0,e.width,e.height);let a=e.toDataURL(`image/webp`,.85);if(a.length<=32768)return a}throw Error(`Project icon thumbnail exceeds the cache limit.`)}finally{n.close()}}var mh=ah({storage:{list:async()=>await fh(`readonly`,e=>e.getAll())??[],put:async(e,t)=>{await fh(`readwrite`,n=>n.put(t,e))},remove:async e=>{await fh(`readwrite`,t=>t.delete(e))}},load:ih({downscale:ph})}),hh=`p4code:connection-runtime`,gh=4,_h=`catalog`,vh=`shell`,yh=`thread`,bh=`server-config`,xh=`vcs-refs`,Sh=`document`,Ch=Qt(lp),wh=Qt(up),Th=wt({schemaVersion:Re(1),environmentId:On,config:Mr}),Eh=Qt(Th),Dh=wt({schemaVersion:Re(1),environmentId:On,cwd:j,refs:bn}),Oh=Qt(Dh),kh=Qt(pp),Ah=pr(kh),jh=$n(kh),Mh=pr(Ch),Nh=$n(Ch),Ph=pr(wh),Fh=$n(wh),Ih=pr(Eh),Lh=$n(Eh),Rh=pr(Oh),zh=$n(Oh);function Q(e,t){return new Ai({reason:`remote-unavailable`,detail:`Could not ${e} the local connection catalog: ${String(t)}`})}function $(e,t){return new Ri({operation:e,message:`Could not ${e.replaceAll(`-`,` `)}: ${String(t)}`})}var Bh=S(`web.connectionStorage.openDatabase`)(function*(){return yield*gn(e=>{if(typeof indexedDB>`u`){e(E(Q(`open`,`IndexedDB is unavailable in this browser context.`)));return}try{let t=indexedDB.open(hh,gh);t.addEventListener(`upgradeneeded`,()=>{t.result.objectStoreNames.contains(_h)||t.result.createObjectStore(_h),t.result.objectStoreNames.contains(vh)||t.result.createObjectStore(vh),t.result.objectStoreNames.contains(yh)||t.result.createObjectStore(yh),t.result.objectStoreNames.contains(bh)||t.result.createObjectStore(bh),t.result.objectStoreNames.contains(xh)||t.result.createObjectStore(xh)}),t.addEventListener(`error`,()=>{e(E(Q(`open`,t.error??`Unknown IndexedDB error`)))}),t.addEventListener(`success`,()=>{e(M(t.result))})}catch(t){e(E(Q(`open`,t)))}})}),Vh=S(`web.connectionStorage.makeDatabaseHandle`)(function*(){let e=yield*Me(1),t=null,n=e=>{t===e&&(t=null)},r=Ce(()=>t===null?e.withPermits(1)(w(function*(){if(t!==null)return t;let e=yield*Bh();return t=e,e.addEventListener(`close`,()=>n(e)),e.addEventListener(`versionchange`,()=>{n(e),e.close()}),e})):M(t)),i=e.withPermits(1)(R(()=>{t?.close(),t=null}));return{handle:{get:r,invalidate:e=>R(()=>n(e))},close:i}});function Hh(e,t){let n=Symbol(`closedConnection`);return T(e.get,r=>t(r).pipe(Cn(e=>e.detail.includes(`InvalidStateError`),t=>e.invalidate(r).pipe(Jt(E({[n]:t})))))).pipe(Cn(e=>n in e,()=>T(e.get,t)))}function Uh(e,t,n){return gn(r=>{try{let i=e.transaction(t,`readonly`).objectStore(t).get(n);i.addEventListener(`error`,()=>{r(E(Q(`read`,i.error??`Unknown IndexedDB read error`)))}),i.addEventListener(`success`,()=>{r(M(i.result))})}catch(e){r(E(Q(`read`,e)))}}).pipe(wr(`web.connectionStorage.readDatabaseValue`))}function Wh(e,t,n,r){return gn(i=>{try{let a=e.transaction(t,`readwrite`);a.addEventListener(`abort`,()=>{i(E(Q(`write`,a.error??`Unknown IndexedDB write error`)))}),a.addEventListener(`complete`,()=>{i(I)}),a.objectStore(t).put(r,n)}catch(e){i(E(Q(`write`,e)))}}).pipe(wr(`web.connectionStorage.writeDatabaseValue`))}function Gh(e,t,n){return gn(r=>{try{let i=e.transaction(t,`readwrite`);i.addEventListener(`abort`,()=>{r(E(Q(`remove`,i.error??`Unknown IndexedDB remove error`)))}),i.addEventListener(`complete`,()=>{r(I)}),i.objectStore(t).delete(n)}catch(e){r(E(Q(`remove`,e)))}}).pipe(wr(`web.connectionStorage.removeDatabaseValue`))}function Kh(e,t,n){return gn(r=>{try{let i=e.transaction(t,`readwrite`);i.addEventListener(`abort`,()=>{r(E(Q(`remove`,i.error??`Unknown IndexedDB cursor error`)))}),i.addEventListener(`complete`,()=>{r(I)});let a=i.objectStore(t).openCursor(n);a.addEventListener(`error`,()=>{r(E(Q(`remove`,a.error??`Unknown IndexedDB cursor error`)))}),a.addEventListener(`success`,()=>{let e=a.result;if(e!==null)try{e.delete(),e.continue()}catch(e){r(E(Q(`remove`,e)))}})}catch(e){r(E(Q(`remove`,e)))}}).pipe(wr(`web.connectionStorage.removeDatabaseValuesInRange`))}function qh(e,t,n){return Hh(e,e=>Uh(e,t,n))}function Jh(e,t,n,r){return Hh(e,e=>Wh(e,t,n,r))}function Yh(e,t,n){return Hh(e,e=>Gh(e,t,n))}function Xh(e,t,n){return Hh(e,e=>Kh(e,t,n))}function Zh(e,t){return`${e}:${t}`}function Qh(e,t){return`${e}:${t}`}var $h=S(`web.connectionStorage.decodeCatalog`)(function*(e){return yield*Ah(e).pipe(L(e=>Q(`decode`,e)))}),eg=S(`web.connectionStorage.encodeCatalog`)(function*(e){return yield*jh(e).pipe(L(e=>Q(`encode`,e)))});function tg(e){let t=window.desktopBridge;return t?.getConnectionCatalog!==void 0&&t.setConnectionCatalog!==void 0?{read:cn({try:()=>t.getConnectionCatalog(),catch:e=>Q(`load`,e)}),write:e=>cn({try:()=>t.setConnectionCatalog(e),catch:e=>Q(`save`,e)}).pipe(T(e=>e?I:E(Q(`save`,`Desktop secure storage is unavailable in this system context.`))))}:{read:qh(e,_h,Sh).pipe(P(e=>typeof e==`string`?e:null)),write:t=>Jh(e,_h,Sh,t),quarantine:t=>Jh(e,_h,`${Sh}:corrupt:${Date.now()}`,t)}}var ng=S(`web.connectionStorage.makeCatalogStore`)(function*(e){let t=yield*Li(y()),n=yield*Me(1),r=S(`web.connectionStorage.loadCatalog`)(function*(){let n=yield*q(t);if(x(n))return n.value;let r=yield*e.read,i=mp;return r!==null&&r.trim()!==``&&(i=yield*$h(r).pipe(H(t=>w(function*(){yield*F(`Discarding a corrupt web connection catalog.`,{error:t.message}),e.quarantine!==void 0&&(yield*e.quarantine(r).pipe(H(e=>F(`Could not quarantine the corrupt web connection catalog.`,{error:e.message}))));let n=yield*eg(mp);return yield*e.write(n).pipe(H(e=>F(`Could not persist the recovered web connection catalog.`,{error:e.message}))),mp})))),yield*W(t,C(i)),i});return{read:n.withPermits(1)(r()),update:S(`web.connectionStorage.updateCatalog`)(function*(i){yield*n.withPermits(1)(w(function*(){let n=i(yield*r());yield*e.write(yield*eg(n)),yield*W(t,C(n))}))})}}),rg=`p4code:github-routing:`,ig=`p4code:github-routing-changed`,ag=Hn(Fi),og=_r(Qt(Fi));function sg(e=window){let t=t=>{try{let n=e.localStorage.getItem(t),r=n===null?null:JSON.parse(n);return ag(r)&&t===`${rg}${r.environmentId}`?r:null}catch{return null}},n=()=>{try{let n=[],r=e.localStorage;for(let e=0;e<r.length;e++){let i=r.key(e);if(i?.startsWith(rg)){let e=t(i);e!==null&&n.push(e)}}return n}catch{return[]}},r=(t,n)=>Sr({try:()=>{let r=`${rg}${t}`;n===null?e.localStorage.removeItem(r):e.localStorage.setItem(r,og(n)),e.dispatchEvent(new Event(ig))},catch:e=>Q(`save GitHub routing permissions in`,e)});return $r.of({get:e=>R(()=>{let n=t(`${rg}${e.target.environmentId}`);return Mi(e,n===null?[]:[n])}),changes:ye(t=>Cr(R(()=>{let r=e=>{if(e.type===`storage`){let t=e.key;if(t!==null&&!t?.startsWith(rg))return}le(t,n())};return e.addEventListener(`storage`,r),e.addEventListener(ig,r),le(t,n()),r}),t=>R(()=>{e.removeEventListener(`storage`,t),e.removeEventListener(ig,t)})).pipe(kr)),set:(e,t)=>{let n=di(e);return n===null?E(new Fa({reason:`configuration`,detail:`This environment does not have a saved connection endpoint.`})):r(e.target.environmentId,t===`off`?null:{environmentId:e.target.environmentId,connectionKey:n,permission:t})},forget:e=>r(e,null)})}var cg=ze(w(function*(){let{handle:e}=yield*Cr(Vh(),e=>e.close),t=yield*ng(tg(e)),n=sg(),r=_i.of({list:t.read.pipe(P(e=>e.targets),L(e=>$(`list-targets`,e))),listDisabled:t.read.pipe(P(e=>e.disabledEnvironmentIds),L(e=>$(`list-disabled-targets`,e)))}),i=li.of({register:(e,n)=>t.update(t=>Sp(t,e,n)).pipe(L(e=>$(`register-connection`,e))),setRoutes:(e,n)=>t.update(t=>xp(t,e,n)).pipe(L(e=>$(`set-connection-routes`,e))),remove:e=>t.update(t=>Cp(t,e)).pipe(L(e=>$(`remove-connection`,e))),setEnabled:(e,n)=>t.update(t=>wp(t,e,n)).pipe(L(e=>$(`set-connection-enabled`,e)))}),a=Wi({get:e=>t.read.pipe(P(t=>me(t.profiles.find(t=>t.connectionId===e)))),put:e=>t.update(t=>({...t,profiles:hp(t.profiles,e=>e.connectionId,e)})),remove:e=>t.update(t=>({...t,profiles:gp(t.profiles,e=>e.connectionId,e)}))}),o=Yr({get:e=>t.read.pipe(P(t=>me(t.credentials.find(t=>t.connectionId===e)?.credential))),put:(e,n)=>t.update(t=>({...t,credentials:hp(t.credentials,e=>e.connectionId,{connectionId:e,credential:n})})),remove:e=>t.update(t=>({...t,credentials:gp(t.credentials,e=>e.connectionId,e)}))}),s=ya({get:e=>t.read.pipe(P(t=>me(t.remoteDpopTokens.find(t=>t.environmentId===e)))),put:e=>t.update(t=>Tp(t,e)),remove:e=>t.update(t=>({...t,remoteDpopTokens:gp(t.remoteDpopTokens,e=>e.environmentId,e)}))}),c=Sa.of({loadShell:t=>qh(e,vh,t).pipe(_e(()=>Vt(()=>mh.hydrate())),T(n=>typeof n==`string`?dp(Mh(n).pipe(L(e=>$(`load-shell`,e)),P(e=>e.environmentId===t?C(e.snapshot):y())),Yh(e,vh,t)):v),L(e=>$(`load-shell`,e))),saveShell:(t,n)=>w(function*(){let r=yield*Nh({schemaVersion:3,environmentId:t,snapshot:n}).pipe(L(e=>$(`save-shell`,e)));yield*Jh(e,vh,t,r)}).pipe(L(e=>e._tag===`ConnectionPersistenceError`?e:$(`save-shell`,e))),loadServerConfig:t=>qh(e,bh,t).pipe(T(e=>typeof e==`string`?Ih(e).pipe(L(e=>$(`load-server-config`,e)),P(e=>e.environmentId===t?C(e.config):y())):v),L(e=>e._tag===`ConnectionPersistenceError`?e:$(`load-server-config`,e))),saveServerConfig:(t,n)=>w(function*(){let r=yield*Lh({schemaVersion:1,environmentId:t,config:n}).pipe(L(e=>$(`save-server-config`,e)));yield*Jh(e,bh,t,r)}).pipe(L(e=>e._tag===`ConnectionPersistenceError`?e:$(`save-server-config`,e))),loadThread:(t,n)=>qh(e,yh,Zh(t,n)).pipe(T(r=>typeof r==`string`?dp(Ph(r).pipe(L(e=>$(`load-thread`,e)),P(e=>e.environmentId===t&&e.threadId===n?C(e.snapshot):y())),Yh(e,yh,Zh(t,n))):v),L(e=>$(`load-thread`,e))),saveThread:(t,n)=>w(function*(){let r=yield*Fh({schemaVersion:4,environmentId:t,threadId:n.projection.thread.id,snapshot:n}).pipe(L(e=>$(`save-thread`,e)));yield*Jh(e,yh,Zh(t,n.projection.thread.id),r)}).pipe(L(e=>e._tag===`ConnectionPersistenceError`?e:$(`save-thread`,e))),loadVcsRefs:(t,n)=>qh(e,xh,Qh(t,n)).pipe(T(e=>typeof e==`string`?Rh(e).pipe(L(e=>$(`load-vcs-refs`,e)),P(e=>e.environmentId===t&&e.cwd===n?C(e.refs):y())):v),L(e=>e._tag===`ConnectionPersistenceError`?e:$(`load-vcs-refs`,e))),saveVcsRefs:(t,n,r)=>w(function*(){let i=yield*zh({schemaVersion:1,environmentId:t,cwd:n,refs:r}).pipe(L(e=>$(`save-vcs-refs`,e)));yield*Jh(e,xh,Qh(t,n),i)}).pipe(L(e=>e._tag===`ConnectionPersistenceError`?e:$(`save-vcs-refs`,e))),removeVcsRefs:(t,n)=>Yh(e,xh,Qh(t,n)).pipe(L(e=>$(`remove-vcs-refs`,e))),clearVcsRefs:t=>Xh(e,xh,IDBKeyRange.bound(`${t}:`,`${t}:\uffff`)).pipe(L(e=>$(`clear-vcs-refs`,e))),removeThread:(t,n)=>Yh(e,yh,Zh(t,n)).pipe(L(e=>$(`remove-thread`,e))),clear:t=>Mn([Vt(()=>mh.clearEnvironment(t)),Yh(e,vh,t),Xh(e,yh,IDBKeyRange.bound(`${t}:`,`${t}:\uffff`)),Yh(e,bh,t),Xh(e,xh,IDBKeyRange.bound(`${t}:`,`${t}:\uffff`))],{concurrency:`unbounded`,discard:!0}).pipe(L(e=>$(`clear-environment`,e)))});return Gn(_i,r).pipe(Vn($r,n),Vn(li,i),Vn(Bi,a),Vn(wi,o),Vn(ea,s),Vn(Sa,c))}));function lg(e){switch(e){case`darwin`:return`macOS`;case`win32`:return`Windows`;case`linux`:return`Linux`;default:return e?`other`:`unknown`}}function ug(e){return/macintosh/i.test(e.userAgent)&&/mac/i.test(e.platform)&&e.maxTouchPoints>1}function dg(e){let t=e.userAgent;return t.trim()===``?`unknown`:/iphone|ipad|ipod/i.test(t)||ug(e)?`iOS`:/android/i.test(t)?`Android`:/cros/i.test(t)?`ChromeOS`:/windows/i.test(t)?`Windows`:/macintosh|mac os x/i.test(t)?`macOS`:/linux|x11/i.test(t)?`Linux`:`other`}function fg(e){return e.trim()===``?`unknown`:/edg(?:e|a|ios)?\//i.test(e)?`Edge`:/opr\/|opios\//i.test(e)?`Opera`:/samsungbrowser\//i.test(e)?`Samsung Internet`:/firefox\/|fxios\//i.test(e)?`Firefox`:/chrome\/|crios\//i.test(e)?`Chrome`:/safari\//i.test(e)?`Safari`:`other`}function pg(e){let t=e.userAgent;return t.trim()===``?`unknown`:/ipad|tablet|kindle|silk/i.test(t)||/android/i.test(t)&&!/mobile/i.test(t)||ug(e)?`tablet`:/iphone|ipod|android.+mobile|mobile/i.test(t)?`mobile`:`desktop`}function mg(e){return e.desktopBridge===void 0?{label:`P4 Code Web`,deviceType:pg(e.identity),os:dg(e.identity),surface:`web`,webDeployment:e.hosted?`hosted`:`server`,browser:fg(e.identity.userAgent),...e.appVersion===`0.0.0`?{}:{appVersion:e.appVersion}}:{label:`P4 Code Desktop`,deviceType:`desktop`,os:lg(e.desktopBridge.getClientPlatform?.()),surface:`desktop`,...e.appVersion===`0.0.0`?{}:{appVersion:e.appVersion}}}var hg=0;function gg(){return typeof navigator>`u`?`unknown`:navigator.onLine?`online`:`offline`}var _g=Hi({status:R(gg),changes:ye(e=>Cr(R(()=>{let t=()=>le(e,`online`),n=()=>le(e,`offline`);return window.addEventListener(`online`,t),window.addEventListener(`offline`,n),{online:t,offline:n}}),({online:e,offline:t})=>R(()=>{window.removeEventListener(`online`,e),window.removeEventListener(`offline`,t)})).pipe(kr))}),vg=ye(e=>Cr(R(()=>{let t=typeof navigator>`u`?void 0:navigator.connection;if(t?.type===void 0)return;let n=t.type,r=()=>{let r=t.type;r!==void 0&&r!==n&&(n=r,le(e,`network-changed`))};return t.addEventListener(`change`,r),{connection:t,listener:r}}),e=>R(()=>e?.connection.removeEventListener(`change`,e.listener))).pipe(kr)),yg=aa({changes:Ut([ye(e=>Cr(R(()=>{let t=()=>{document.visibilityState===`visible`&&le(e,`application-active`)};return document.addEventListener(`visibilitychange`,t),t}),e=>R(()=>{document.removeEventListener(`visibilitychange`,e)})).pipe(kr)),va(Pt).pipe(or(()=>`credentials-changed`)),vg],{concurrency:`unbounded`})});function bg(){return mg({appVersion:Rp,hosted:$p(),identity:{userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints},desktopBridge:window.desktopBridge})}function xg(e){let t=e instanceof Error?e.message:String(e);return t.toLowerCase().includes(`cancel`)?new Fa({reason:`authentication`,detail:t}):new Ai({reason:`remote-unavailable`,detail:`Could not prepare the SSH environment: ${t}`})}var Sg=S(`web.connectionPlatform.ssh.provisionDesktop`)(function*(e,t,n){let r=yield*cn({try:()=>e.ensureSshEnvironment(t,{issuePairingToken:!0}),catch:xg}),i=r.pairingToken;if(i===null)return yield*new Fa({reason:`authentication`,detail:`The SSH environment did not issue a pairing credential.`});let a=yield*cn({try:()=>e.fetchSshEnvironmentDescriptor(r.httpBaseUrl),catch:xg});if(n!==void 0&&a.environmentId!==n)return yield*new Fa({reason:`configuration`,detail:`That host reaches ${a.label}, a different machine. Add it as its own environment instead.`});let o=yield*cn({try:()=>e.bootstrapSshBearerSession(r.httpBaseUrl,i),catch:xg});return{environmentId:a.environmentId,label:a.label,bootstrap:r,bearerToken:o.access_token}}),Cg=ze(R(()=>{let e=na.of({metadata:bg()}),t=Gi.of({identity:R(()=>ie(Pt.get(pa))),clerkToken:w(function*(){let e=Pt.get(pa);if(e===null)return yield*new Fa({reason:`authentication`,detail:`Sign in to P4 Connect to connect this environment.`});let t=yield*e.readClerkToken().pipe(L(e=>new Ai({reason:`network`,detail:e.message})));return t===null?yield*new Fa({reason:`authentication`,detail:`The P4 Connect session is unavailable.`}):t})}),n=Ba.of({deviceId:v}),r=Ma.of({bearerToken:cn({try:za,catch:e=>new Ai({reason:`remote-unavailable`,detail:`Could not load the desktop primary credential: ${String(e)}`})}).pipe(P(ie))}),i=Ji.of({provision:S(`web.connectionPlatform.ssh.provision`)(function*(e,t){let n=window.desktopBridge;return n===void 0?yield*new Fa({reason:`unsupported`,detail:`SSH environments are only available in the desktop app.`}):yield*Sg(n,e,t)}),prepare:S(`web.connectionPlatform.ssh.prepare`)(function*(e){let t=window.desktopBridge;if(t===void 0)return yield*new Fa({reason:`unsupported`,detail:`SSH environments are only available in the desktop app.`});let n=yield*cn({try:()=>t.ensureSshEnvironment(e.target,{issuePairingToken:!0}),catch:xg});return n.pairingToken===null?yield*new Fa({reason:`authentication`,detail:`The SSH environment did not issue a pairing credential.`}):{bootstrap:n,bearerToken:(yield*cn({try:()=>t.bootstrapSshBearerSession(n.httpBaseUrl,n.pairingToken),catch:xg})).access_token}}),disconnect:S(`web.connectionPlatform.ssh.disconnect`)(function*(e){let t=window.desktopBridge;t!==void 0&&(yield*cn({try:()=>t.disconnectSshEnvironment(e),catch:e=>new Ai({reason:`remote-unavailable`,detail:`Could not disconnect the SSH environment: ${String(e)}`})}))})});return Gn(Gi,t).pipe(Vn(Ma,r),Vn(Ba,n),Vn(na,e),Vn(Ji,i))})),wg=S(`web.connectionPlatform.loadPrimaryConnectionRegistration`)(function*(e){let t=yield*r({httpBaseUrl:e.target.httpBaseUrl}).pipe(Ar(ja),L(La));return new qi({target:new ri({environmentId:t.environmentId,label:t.label,httpBaseUrl:e.target.httpBaseUrl,wsBaseUrl:e.target.wsBaseUrl})})}),Tg=S(`web.connectionPlatform.loadSecondaryConnectionRegistration`)(function*(e){if(e.httpBaseUrl===null||e.wsBaseUrl===null||e.bootstrapToken===void 0)return yield*new Ai({reason:`endpoint-unavailable`,detail:`Desktop-local backend ${e.id} is not ready yet.`});let t=e.httpBaseUrl,n=e.wsBaseUrl,i=yield*r({httpBaseUrl:t}).pipe(L(La)),a=yield*We,o=yield*xi({httpBaseUrl:t,credential:e.bootstrapToken,scopes:s,clientMetadata:bg()}).pipe(L(La)),c=Sm(e.id),l=e.label||i.label;return{registration:new ha({target:new ei({environmentId:i.environmentId,label:l,connectionId:c}),profile:new Da({connectionId:c,environmentId:i.environmentId,label:l,httpBaseUrl:t,wsBaseUrl:n}),credential:new $i({token:o.access_token})}),expiresAtEpochMs:Og(a,o.expires_in),refreshAtEpochMs:kg(a,o.expires_in)}}),Eg=`3 seconds`,Dg=5e3;function Og(e,t){return e+Math.max(0,t*1e3)}function kg(e,t){return Math.max(e,Og(e,t)-Dg)}function Ag(e=Di){try{return{_tag:`Success`,target:e()}}catch(e){return{_tag:`Failure`,cause:e}}}function jg(e,t){return t._tag===`Failure`?e.get(Pn):void 0}function Mg(e,t,n){return e.signature===t&&(e.refreshAtEpochMs===void 0||n<e.refreshAtEpochMs)}function Ng(e,t,n){return e.signature===t&&e.expiresAtEpochMs!==void 0&&n<e.expiresAtEpochMs}var Pg=6e4,Fg=18e5;function Ig(e,t,n){return e!==void 0&&e.signature===t&&n<e.retryAtEpochMs}function Lg(e,t,n){let r=e?.signature===t?Math.min(e.delayMs*2,Fg):Pg;return{signature:t,retryAtEpochMs:n+r,delayMs:r}}function Rg(e){return e._tag===`ConnectionBlockedError`&&e.reason===`authentication`}function zg(e,t,n){return t._tag===`Success`?new Map:new Map([...e].filter(([,e])=>e.expiresAtEpochMs!==void 0&&n<e.expiresAtEpochMs))}var Bg=Fe(tl,w(function*(){if($p()||Pa())return tl.of({registrations:mr});let e=yield*Li(new Map),t=yield*Li(new Map),n=w(function*(){let n=yield*q(e),r=yield*We,i=new Map,a=[],o=Ag(),s=jg(n,o);if(s!==void 0&&(i.set(Pn,s),a.push(s.registration)),o._tag===`Failure`)yield*F(`Could not read the primary environment topology.`,{cause:o.cause});else if(o.target!==null){let e=o.target,t=`primary|${e.target.httpBaseUrl}|${e.target.wsBaseUrl}`,s=n.get(Pn);if(s!==void 0&&Mg(s,t,r))i.set(Pn,s),a.push(s.registration);else{let n=yield*wg(e).pipe(At(e=>F(`Could not discover the primary environment.`,{error:e})),Wn);if(x(n)){let e={signature:t,registration:n.value};i.set(Pn,e),a.push(n.value)}}}let c=Om();for(let[e,t]of zg(n,c,r))i.set(e,t),a.push(t.registration);if(c._tag===`Failure`)yield*F(`Could not read the desktop-local backend topology.`,{cause:c.cause});else{let e=yield*q(t),o=new Map;for(let t of c.bootstraps){let s=`${t.httpBaseUrl}|${t.wsBaseUrl}`,c=`${s}|${t.bootstrapToken??``}`,l=n.get(t.id);if(l!==void 0&&l.bootstrapToken===t.bootstrapToken&&Mg(l,s,r)){i.set(t.id,l),a.push(l.registration);continue}let u=e.get(t.id);if(Ig(u,c,r)){o.set(t.id,u),l!==void 0&&Ng(l,s,r)&&(i.set(t.id,l),a.push(l.registration));continue}let d=yield*Tg(t).pipe(At(e=>F(`Could not connect a desktop-local backend.`,{id:t.id,error:e})),At(e=>Rg(e)?We.pipe(P(e=>o.set(t.id,Lg(u,c,e)))):I),Wn);if(x(d)){let e={signature:s,...t.bootstrapToken===void 0?{}:{bootstrapToken:t.bootstrapToken},...d.value};i.set(t.id,e),a.push(d.value.registration)}else l!==void 0&&Ng(l,s,r)&&(i.set(t.id,l),a.push(l.registration))}yield*W(t,o)}return yield*W(e,i),a}).pipe(Ar(Er));return tl.of({registrations:He(Eg).pipe(Dn(()=>n))})})),Vg=c(mi,mi.of({clear:e=>R(()=>{wn(e)})})),Hg=c(ci,ci.of({observe:({environmentId:e,method:t})=>R(()=>{hg+=1;let n=`${e}:${hg}`;return hm(n,t,`${t} · ${e}`),R(()=>{gm(n)})})})),Ug=ke(cg,_g,yg,Cg,Bg,Vg,Hg).pipe(it(Ea)),Wg=ke(dd,iu,Uu,Ff).pipe(Ur(rl({environmentThemes:!0,usageLimitSources:!0,usageLimitsCommand:!0})),Ur(ke(Ea,Ug,sp))),Gg=cp.pipe(Ur(Wg)),Kg=er(Gg);export{Ed as $,Fo as $t,qp as A,Lc as At,Vf as B,Qs as Bt,Yp as C,qa as Cn,al as Ct,Wp as D,co as Dn,Vc as Dt,em as E,$a as En,sl as Et,Rp as F,lc as Ft,qd as G,Ks as Gt,Hf as H,Js as Ht,Np as I,sc as It,Rd as J,Bs as Jt,Jd as K,qs as Kt,Pp as L,ac as Lt,Fp as M,gc as Mt,Lp as N,mc as Nt,Up as O,io as On,Ic as Ot,Ip as P,yc as Pt,Dd as Q,Xo as Qt,kp as R,oc as Rt,nm as S,Ya as Sn,ul as St,$p as T,eo as Tn,cl as Tt,Uf as U,Ys as Ut,Wf as V,Zs as Vt,of as W,Xs as Wt,Pd as X,Yo as Xt,Fd as Y,Ws as Yt,Od as Z,Zo as Zt,Cm as _,lo as _n,pu as _t,Ym as a,Oo as an,gd as at,bm as b,Xa as bn,Ol as bt,jm as c,Ao as cn,_d as ct,Um as d,vo as dn,od as dt,Uo as en,Ad as et,Wm as f,ho as fn,rd as ft,wm as g,uo as gn,Cu as gt,zm as h,go as hn,Su as ht,qm as i,ko as in,wd as it,Gp as j,xc as jt,Jp as k,oo as kn,Rc as kt,Mm as l,jo as ln,pd as lt,Bm as m,po as mn,$u as mt,mh as n,yo as nn,Sd as nt,Nm as o,So as on,hd as ot,Vm as p,_o as pn,Ku as pt,Kd as q,Gs as qt,Jm as r,Do as rn,kd as rt,Pm as s,xo as sn,md as st,Kg as t,bo as tn,jd as tt,Gm as u,Co as un,cd as ut,Tm as v,ao as vn,Wl as vt,tm as w,no as wn,ol as wt,rm as x,Ja as xn,ml as xt,km as y,so as yn,Bl as yt,Op as z,ic as zt};
2
+ //# sourceMappingURL=runtime-BSS7jQw6.js.map