@p4code/cli 0.8.37 → 0.9.1

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 (287) hide show
  1. package/dist/bin.mjs +1 -1
  2. package/dist/{binCli-mInzhqSL.mjs → binCli-B8_9WRM7.mjs} +2563 -2301
  3. package/dist/client/.vite/manifest.json +2008 -2048
  4. package/dist/client/assets/{2NI2N5EU-DVsZziQ3.js → 2NI2N5EU-Cc9Gs6p1.js} +2 -2
  5. package/dist/client/assets/{4UO7MD6I-Cs3yBe-m.js → 4UO7MD6I--tXEX5R9.js} +2 -2
  6. package/dist/client/assets/{5B3SVYGG-CxW0L1iX.js → 5B3SVYGG-CPRAqyzZ.js} +2 -2
  7. package/dist/client/assets/{5GK6JWQ2-Cb25PEnx.js → 5GK6JWQ2-OC2-LRPx.js} +2 -2
  8. package/dist/client/assets/{5N7A7DKN-udLyT643.js → 5N7A7DKN-BUa1-OZ6.js} +2 -2
  9. package/dist/client/assets/{5OC2THR4-DqD-reis.js → 5OC2THR4-DKcwc3u1.js} +2 -2
  10. package/dist/client/assets/{5S6HY5KT-Cy7mIKKq.js → 5S6HY5KT-Dqth6iG8.js} +2 -2
  11. package/dist/client/assets/{6IMQ5BUJ-Qu9PVsT7.js → 6IMQ5BUJ-DmEcg0r1.js} +2 -2
  12. package/dist/client/assets/{6OLKWJ4F-BYzZS9mf.js → 6OLKWJ4F-W-G6qP3r.js} +2 -2
  13. package/dist/client/assets/{74OO7NKP-h3ga2-vb.js → 74OO7NKP-u02yiNi7.js} +2 -2
  14. package/dist/client/assets/{75O6YZUN-ByAK3P56.js → 75O6YZUN-xx4y2KbP.js} +2 -2
  15. package/dist/client/assets/{77XECAW3-D_lZqaZv.js → 77XECAW3-SIARa2Fi.js} +2 -2
  16. package/dist/client/assets/{ABYRPUBD-BPWfXZyu.js → ABYRPUBD-B_0r9NT4.js} +2 -2
  17. package/dist/client/assets/AlertDialogRoot-D5eL1YFA.js +2 -0
  18. package/dist/client/assets/{AnimatedHeight-D0-6CAPr.js → AnimatedHeight-BZhIfVtA.js} +2 -2
  19. package/dist/client/assets/AuthSurfaceShell-DPlJfFlL.js +2 -0
  20. package/dist/client/assets/{BB2UYUI2-CGgafKC2.js → BB2UYUI2-CujjjZN9.js} +2 -2
  21. package/dist/client/assets/{BUM34MOA-Cn4iaSBT.js → BUM34MOA-NuuTH6rj.js} +2 -2
  22. package/dist/client/assets/{CEQABKGZ-CmBEfzh3.js → CEQABKGZ-DDaGayTm.js} +2 -2
  23. package/dist/client/assets/{CXAC5362-xibpmz3Y.js → CXAC5362-CB6ETtV8.js} +2 -2
  24. package/dist/client/assets/{ChatGptUsageButton-DU3PVHJW.js → ChatGptUsageButton-DqJ-vZMe.js} +2 -2
  25. package/dist/client/assets/{ChatMarkdown-D-cNSjFn.js → ChatMarkdown-C94Vrzqf.js} +7 -7
  26. package/dist/client/assets/{CheckboxIndicator-CZCy38xt.js → CheckboxIndicator-DZ8vBLEv.js} +2 -2
  27. package/dist/client/assets/{ClippedText-D_rM_XDj.js → ClippedText-Dswe5Mb4.js} +2 -2
  28. package/dist/client/assets/CodexSetupSection.logic-DOe05Yxb.js +2 -0
  29. package/dist/client/assets/{ComboboxClear-tOmMpuVi.js → ComboboxClear-By718biy.js} +2 -2
  30. package/dist/client/assets/{ComboboxGroupLabel-CgZZIHwV.js → ComboboxGroupLabel-DjWIIS5_.js} +2 -2
  31. package/dist/client/assets/{CommandBlock-6rjypfVF.js → CommandBlock-BUY_4yYG.js} +2 -2
  32. package/dist/client/assets/{ComposerPromptEditor-Dxfhec2W.js → ComposerPromptEditor-BXlsIVOQ.js} +10 -10
  33. package/dist/client/assets/{CompositeRoot-Bsb8efI6.js → CompositeRoot-BFPe8O0M.js} +2 -2
  34. package/dist/client/assets/{ConnectionDiagnosisDetails-Q0M5gCCf.js → ConnectionDiagnosisDetails-DoemNrMF.js} +2 -2
  35. package/dist/client/assets/{ConnectionStatusDot-DAuD0jkU.js → ConnectionStatusDot-wmgCjAfF.js} +2 -2
  36. package/dist/client/assets/{DRLTVNUE-BVseXOzv.js → DRLTVNUE-D0oW6kzx.js} +2 -2
  37. package/dist/client/assets/{DYY6UVD2-Bz33D3dq.js → DYY6UVD2-DBOhEG0-.js} +2 -2
  38. package/dist/client/assets/{DevicePanel-CsSQr7vQ.js → DevicePanel-B5VTFku5.js} +2 -2
  39. package/dist/client/assets/DeviceSetup-C7hesHao.js +2 -0
  40. package/dist/client/assets/{DialogTitle-bcvBtKP-.js → DialogTitle-DNp9zThp.js} +2 -2
  41. package/dist/client/assets/{DiffCommentAnnotation-bhzNqujM.js → DiffCommentAnnotation-DDYXWdY5.js} +2 -2
  42. package/dist/client/assets/{DiffFileTree-BySeJqhq.js → DiffFileTree-SBs4YWHB.js} +2 -2
  43. package/dist/client/assets/{DiffPanel-CCFas4eA.js → DiffPanel-Cd7uZSwI.js} +2 -2
  44. package/dist/client/assets/{DiffWorkerPoolProvider-CkkqWbz-.js → DiffWorkerPoolProvider-elvn0oLt.js} +3 -3
  45. package/dist/client/assets/{EmbeddedDesign-iuThcPT3.js → EmbeddedDesign-BDMR5UJo.js} +2 -2
  46. package/dist/client/assets/{EnvironmentMachineIcon-iUmoTUYt.js → EnvironmentMachineIcon-DBWK6C8T.js} +2 -2
  47. package/dist/client/assets/{ExpandableText-ByCx68yv.js → ExpandableText-B9cfY7p2.js} +2 -2
  48. package/dist/client/assets/{FNOVOB4O-DK3iet1g.js → FNOVOB4O-C55ATzH6.js} +2 -2
  49. package/dist/client/assets/{FieldControl-DtsEariK.js → FieldControl-BOrs67_f.js} +2 -2
  50. package/dist/client/assets/{FileDiff-Bu2BSqBV.js → FileDiff-DpQM5r9o.js} +2 -2
  51. package/dist/client/assets/{FilePreviewPanel-8cI8gciT.js → FilePreviewPanel-DWeewVws.js} +10 -10
  52. package/dist/client/assets/{FoldedSettingsSection-RYq8GTvV.js → FoldedSettingsSection-KMTLX6MR.js} +2 -2
  53. package/dist/client/assets/{FormContext-CIK8MKa2.js → FormContext-DcLeIpxJ.js} +2 -2
  54. package/dist/client/assets/{HDGCDEEZ-B_J1N6RY.js → HDGCDEEZ-BhXkP8CI.js} +2 -2
  55. package/dist/client/assets/{HSJLKHB7-B2SbZQUf.js → HSJLKHB7-ad9jby8d.js} +2 -2
  56. package/dist/client/assets/{Icons-xsXA_L6w.js → Icons-B1qw9fnR.js} +2 -2
  57. package/dist/client/assets/Input-DQflEYBs.js +2 -0
  58. package/dist/client/assets/JZOYTAAL-CifPXszn.js +1 -0
  59. package/dist/client/assets/{K3MD6TGW-VU68yYxr.js → K3MD6TGW-CG-BXshu.js} +2 -2
  60. package/dist/client/assets/{K7RP3OMA-zaD_NBVC.js → K7RP3OMA-Dvs72E71.js} +2 -2
  61. package/dist/client/assets/{KeybindingsSettings.logic-BJe27xmi.js → KeybindingsSettings.logic-BA5WG7V2.js} +2 -2
  62. package/dist/client/assets/{LHDIQX7Q-DCLqoRGy.js → LHDIQX7Q-DBbVLdBb.js} +2 -2
  63. package/dist/client/assets/{LUXOKEGN-CmxZpSzC.js → LUXOKEGN-B8HcSY56.js} +2 -2
  64. package/dist/client/assets/{MathTypeset-Hhqwg4PF.js → MathTypeset-D0cDlCZy.js} +2 -2
  65. package/dist/client/assets/{N3JZAHOW-Cev8Cn9M.js → N3JZAHOW-BXwh9_vP.js} +2 -2
  66. package/dist/client/assets/{NUIALGQ3-CV92Kt25.js → NUIALGQ3-ClxnUm8B.js} +2 -2
  67. package/dist/client/assets/{NoProjectsHero-CMqIlSNl.js → NoProjectsHero-Bn4v5ofT.js} +2 -2
  68. package/dist/client/assets/{O65XPQGZ-bGyTGMsB.js → O65XPQGZ-BEEpAP2l.js} +2 -2
  69. package/dist/client/assets/{O7XIQ6OM-DVdEfB1N.js → O7XIQ6OM-CkSDwviv.js} +2 -2
  70. package/dist/client/assets/{OFQON5FD-Ca_CNS26.js → OFQON5FD-4EbpxjZS.js} +2 -2
  71. package/dist/client/assets/{P4ConnectAccountPages-Buss2oTL.js → P4ConnectAccountPages-DgxvyIGG.js} +2 -2
  72. package/dist/client/assets/{P4ConnectSidebarSignIn-D1n4y6Gq.js → P4ConnectSidebarSignIn-Bn9hP_6_.js} +2 -2
  73. package/dist/client/assets/{PJQHF43J-B__IdKwP.js → PJQHF43J-D_j27v4O.js} +2 -2
  74. package/dist/client/assets/{PanelLayoutControls-EIunk_2Q.js → PanelLayoutControls-BHEJEPDp.js} +7 -7
  75. package/dist/client/assets/{PierreEntryIcon-GQImyog1.js → PierreEntryIcon-BCv2OXDn.js} +2 -2
  76. package/dist/client/assets/{PopoverHandle-Cj5egwXv.js → PopoverHandle-CqjlXffy.js} +2 -2
  77. package/dist/client/assets/PreviewPanel-D3CQGyTY.js +2 -0
  78. package/dist/client/assets/{ProjectDefaultsSettings-DX2Kf-tx.js → ProjectDefaultsSettings-CqigWqDQ.js} +2 -2
  79. package/dist/client/assets/{ProjectFavicon-OMOnEzVu.js → ProjectFavicon-BzkwZEKX.js} +3 -3
  80. package/dist/client/assets/{ProjectIconPickerDialog-Q4GkqwDs.js → ProjectIconPickerDialog-Bl7a1F6c.js} +2 -2
  81. package/dist/client/assets/{ProjectMonogram-Br5sgd24.js → ProjectMonogram-Ba70a8_s.js} +2 -2
  82. package/dist/client/assets/{ProviderAuthTerminal-Q584HoOn.js → ProviderAuthTerminal-BxyDTl04.js} +2 -2
  83. package/dist/client/assets/{ProviderModelPicker-JNM9nJs_.js → ProviderModelPicker-BjWN45iR.js} +2 -2
  84. package/dist/client/assets/{ProviderSettingsForm-CdiKhrJE.js → ProviderSettingsForm-9qRf6JzH.js} +2 -2
  85. package/dist/client/assets/{PullRequestCodeTab-Co76Qf6Z.js → PullRequestCodeTab-2fq1MIQq.js} +3 -3
  86. package/dist/client/assets/{RHNBAITX-Oryl0UiR.js → RHNBAITX-DaSH9fj2.js} +2 -2
  87. package/dist/client/assets/{ReadOnlySourcePreview-aUjexBVb.js → ReadOnlySourcePreview-CUL87R5C.js} +2 -2
  88. package/dist/client/assets/{RenderErrorBoundary-Oe5BzG3n.js → RenderErrorBoundary-CEX4aXRH.js} +2 -2
  89. package/dist/client/assets/{SLD4V6NK-DbsINoTD.js → SLD4V6NK-BPOaMXu1.js} +2 -2
  90. package/dist/client/assets/ScheduledTasksSettings-BEw_vC1N.js +4 -0
  91. package/dist/client/assets/{ScopedSwitch-D8-FelRH.js → ScopedSwitch-DPPAQKgb.js} +2 -2
  92. package/dist/client/assets/{ScrollAreaCorner-nnFi-Ecx.js → ScrollAreaCorner-DF4GCx0d.js} +2 -2
  93. package/dist/client/assets/{SecretInput-CqAhFuNO.js → SecretInput-Dg6ZsU9p.js} +2 -2
  94. package/dist/client/assets/{SelectScrollUpArrow-BQJrvk31.js → SelectScrollUpArrow-DeRXucOo.js} +2 -2
  95. package/dist/client/assets/{SettingsPanels-CNgY_ZPe.js → SettingsPanels-wkOx3NMK.js} +8 -8
  96. package/dist/client/assets/{SettingsPanels.logic-Dr_NyHjE.js → SettingsPanels.logic-BwMoKlP_.js} +2 -2
  97. package/dist/client/assets/{SettingsScopeNotice-BFxCBOnl.js → SettingsScopeNotice-5BIXPKKZ.js} +2 -2
  98. package/dist/client/assets/SidebarStageBackdrop-Cc8Os5aB.js +2 -0
  99. package/dist/client/assets/{T3PCR2KE-2R1FY5zG.js → T3PCR2KE-DF_ihTb_.js} +2 -2
  100. package/dist/client/assets/{TKWO2OVW-BjhIZzCe.js → TKWO2OVW-BpYa7JbN.js} +2 -2
  101. package/dist/client/assets/{TSHNXIZL-B_cvoUct.js → TSHNXIZL-icuUBQJZ.js} +2 -2
  102. package/dist/client/assets/ThemeEditorPanel-K5Z_cKr_.js +5 -0
  103. package/dist/client/assets/{ThreadTerminalDrawer-DHoyxd6-.js → ThreadTerminalDrawer-BEzEKbGr.js} +4 -4
  104. package/dist/client/assets/TooltipViewport-DJXNIjFt.js +2 -0
  105. package/dist/client/assets/{UQJE5E4I-2r98lr05.js → UQJE5E4I-jTtBmXGD.js} +2 -2
  106. package/dist/client/assets/{USNYFO5S-CvTI5t_o.js → USNYFO5S-COMhBWxE.js} +2 -2
  107. package/dist/client/assets/{Virtualizer-BgcEI5KE.js → Virtualizer-3W_tqqHL.js} +2 -2
  108. package/dist/client/assets/{WEVWDWVA-U7ygIdf3.js → WEVWDWVA-DoGSbgZU.js} +2 -2
  109. package/dist/client/assets/{WorkspaceBreadcrumb-_zND61qF.js → WorkspaceBreadcrumb-Dr-p0Dtn.js} +2 -2
  110. package/dist/client/assets/{WorkspacePageContainer-LYv_7Qc0.js → WorkspacePageContainer-MDWEFwmu.js} +2 -2
  111. package/dist/client/assets/{WorkspacePageHeader-B_0ute56.js → WorkspacePageHeader-CNcKDaqG.js} +2 -2
  112. package/dist/client/assets/{X5RFHQXM-D4S0_b0W.js → X5RFHQXM-pFbOarC5.js} +2 -2
  113. package/dist/client/assets/{X62E3GBT-CrIC4h9P.js → X62E3GBT-CSXB08Iw.js} +2 -2
  114. package/dist/client/assets/{XBNEOJTC-D2_RQZjM.js → XBNEOJTC-CvXlFTiB.js} +2 -2
  115. package/dist/client/assets/{YHV2MVVZ-BmAcJLBt.js → YHV2MVVZ-BxyA2-Iu.js} +2 -2
  116. package/dist/client/assets/{YURCZMG2-RCCTu3bv.js → YURCZMG2-WkhL6rVs.js} +2 -2
  117. package/dist/client/assets/{YVG2LODB-Cvp0Ei-1.js → YVG2LODB-BlCOW5Bm.js} +2 -2
  118. package/dist/client/assets/_chat-B72aqP_1.js +45 -0
  119. package/dist/client/assets/{_chat.design-DX1VqYkX.js → _chat.design-BzS-6FDR.js} +2 -2
  120. package/dist/client/assets/{_chat.index-Dzh3d42S.js → _chat.index-DyO0DElX.js} +2 -2
  121. package/dist/client/assets/{_chat.new-BHRvXFPr.js → _chat.new-Dy39C0PE.js} +3 -3
  122. package/dist/client/assets/_chat.pull-requests-Bzb1CyG6.js +2 -0
  123. package/dist/client/assets/{alert-BN-r9V4f.js → alert-DpVw79VA.js} +2 -2
  124. package/dist/client/assets/{assetUrls-B6vsSVWR.js → assetUrls-DSeSTRY1.js} +2 -2
  125. package/dist/client/assets/{assets-CID0y4Uv.js → assets-B_r3wLhD.js} +2 -2
  126. package/dist/client/assets/{browserHistoryStore-CK4YsfkQ.js → browserHistoryStore-BG8TrOnZ.js} +2 -2
  127. package/dist/client/assets/{browserLinkTarget-BJ30b4-s.js → browserLinkTarget-jRu1-WRM.js} +2 -2
  128. package/dist/client/assets/{checkbox-BJhN1L_L.js → checkbox-4yBjrqWQ.js} +2 -2
  129. package/dist/client/assets/{color-picker-D2LwMwlZ.js → color-picker-B6JEgpDa.js} +2 -2
  130. package/dist/client/assets/{combobox-Cw2-7qyI.js → combobox-CKWbcPIR.js} +2 -2
  131. package/dist/client/assets/{command-BIELTYJu.js → command-D8XZec1r.js} +2 -2
  132. package/dist/client/assets/{connect-D4llmZsa.js → connect-a25FIa26.js} +2 -2
  133. package/dist/client/assets/{connect-agent-BlR0FAbF.js → connect-agent-C1UODlly.js} +2 -2
  134. package/dist/client/assets/{design-Cdl1XCBU.js → design-C7HRMO73.js} +2 -2
  135. package/dist/client/assets/{device-Bc5H3PTz.js → device-BNK9g-io.js} +2 -2
  136. package/dist/client/assets/{dialog-BRtKKGzk.js → dialog-_vbB7RKH.js} +2 -2
  137. package/dist/client/assets/{diffRendering-DtBTalAD.js → diffRendering-UEl_19xa.js} +2 -2
  138. package/dist/client/assets/{dist-oE_MNxpZ.js → dist-ATiHSdUa.js} +3 -3
  139. package/dist/client/assets/{draft-input-vviXwx5Q.js → draft-input-C-u_3cDw.js} +2 -2
  140. package/dist/client/assets/{duoViewer-kcp00m8a.js → duoViewer-C7BduYuF.js} +2 -2
  141. package/dist/client/assets/{dynamic-C8_ODyue.js → dynamic-CFqi-4NG.js} +2 -2
  142. package/dist/client/assets/{embeddedScripts-skldQmE1.js → embeddedScripts-BNfDELW_.js} +2 -2
  143. package/dist/client/assets/{empty-rC3eYvxq.js → empty-BlKDGTzb.js} +2 -2
  144. package/dist/client/assets/{entities-B8Vupv5g.js → entities-pafv-XUM.js} +2 -2
  145. package/dist/client/assets/{fileLinks-BoyzENAX.js → fileLinks-pJLWwULO.js} +2 -2
  146. package/dist/client/assets/{fileTreeExpansion-DndrZZAD.js → fileTreeExpansion-CXgwpUPc.js} +2 -2
  147. package/dist/client/assets/{getDiffFileInput-C1QBFdFu.js → getDiffFileInput-eTK8du_O.js} +2 -2
  148. package/dist/client/assets/{guideRunStore-BgFFILxA.js → guideRunStore-83fw4RPw.js} +2 -2
  149. package/dist/client/assets/{htmlRender-ddkOIEbT.js → htmlRender-C3rZ0xgC.js} +2 -2
  150. package/dist/client/assets/{index-BwdieRvq.js → index-C0oEvzQc.js} +3 -3
  151. package/dist/client/assets/{input-BYd74ook.js → input-DXGWoa4O.js} +2 -2
  152. package/dist/client/assets/{input-group-DMFlSk_7.js → input-group-De0xZXfc.js} +2 -2
  153. package/dist/client/assets/{kbd-rp5mX21h.js → kbd-WWNLIkTn.js} +2 -2
  154. package/dist/client/assets/{keybindings-B_kRk5Fi.js → keybindings-DAHl8jIl.js} +2 -2
  155. package/dist/client/assets/{lazy-CeaQ3-Fj.js → lazy-B292152Q.js} +4 -4
  156. package/dist/client/assets/{lazyRouteComponent-COYyJY2H.js → lazyRouteComponent-BU0ER5FO.js} +2 -2
  157. package/dist/client/assets/{link-CsXnX9WM.js → link-C3TbL1do.js} +2 -2
  158. package/dist/client/assets/{linkedPrompt-B5iI7U8H.js → linkedPrompt-BOQDb8-o.js} +2 -2
  159. package/dist/client/assets/main-Cywp3EWc.js +37 -0
  160. package/dist/client/assets/main-DjrB0l0D.css +2 -0
  161. package/dist/client/assets/{mediaReference-ZW7gfO5X.js → mediaReference-onv8z3Oz.js} +2 -2
  162. package/dist/client/assets/{mediaSource-DsT6G6Wm.js → mediaSource-BhEv5iyl.js} +2 -2
  163. package/dist/client/assets/{number-field-CEA6qXbs.js → number-field-qEfih146.js} +2 -2
  164. package/dist/client/assets/{observeResize-DSyLC8QK.js → observeResize-DzSkewug.js} +2 -2
  165. package/dist/client/assets/{onboarding-BPkAEHBV.js → onboarding-y217_KQL.js} +2 -2
  166. package/dist/client/assets/{openFileInPreview-CGM83ICx.js → openFileInPreview-DeuqxJFn.js} +2 -2
  167. package/dist/client/assets/{p4ProjectFile-CwpteA7b.js → p4ProjectFile-BuzidL5M.js} +2 -2
  168. package/dist/client/assets/{pair-D9v8gc0o.js → pair-BjRq2ZHP.js} +2 -2
  169. package/dist/client/assets/{pendingSendStore-BuEVrrEM.js → pendingSendStore-BFVsboDn.js} +2 -2
  170. package/dist/client/assets/{phoneViewer-CNE0SVmy.js → phoneViewer-DYOR2qAi.js} +2 -2
  171. package/dist/client/assets/{pierre-icons-ChDlOt-h.js → pierre-icons-BDVVO9cA.js} +2 -2
  172. package/dist/client/assets/{popover-BjUpdrKu.js → popover-CogH2zM4.js} +2 -2
  173. package/dist/client/assets/{preview-3EscFepc.js → preview-BoTHkmVi.js} +2 -2
  174. package/dist/client/assets/{preview-DHLYKEKb.js → preview-O1ZL8Awg.js} +2 -2
  175. package/dist/client/assets/{previewMiniPlayerStore-DHjQeV1U.js → previewMiniPlayerStore-C5z1mN8S.js} +2 -2
  176. package/dist/client/assets/{primary-NcsmRI6j.js → primary-DiwDV4KJ.js} +2 -2
  177. package/dist/client/assets/{primaryCloudLinkState-DkXIVBHW.js → primaryCloudLinkState-BgmcA0C5.js} +2 -2
  178. package/dist/client/assets/{projectFilesQueryState-0jxJ50Qq.js → projectFilesQueryState-C_yH-05-.js} +2 -2
  179. package/dist/client/assets/{projectScriptEditor-CMGXoIEJ.js → projectScriptEditor-Cu65VaAw.js} +2 -2
  180. package/dist/client/assets/{providerSkills-4hnESoi_.js → providerSkills-CgtkB3rc.js} +2 -2
  181. package/dist/client/assets/{pullRequestDetail.logic-sbOM8yDW.js → pullRequestDetail.logic-FUlKz34F.js} +2 -2
  182. package/dist/client/assets/{pullRequestIcons-B7Om_B_D.js → pullRequestIcons-DPbMXqGp.js} +2 -2
  183. package/dist/client/assets/{pullRequestReviewStore-CIL8WfOG.js → pullRequestReviewStore-BAxwf6rl.js} +2 -2
  184. package/dist/client/assets/{pullRequests-CMTRCOu7.js → pullRequests-C8-SkuQU.js} +2 -2
  185. package/dist/client/assets/{queries-hhl_J8u9.js → queries-BZGM6AjA.js} +2 -2
  186. package/dist/client/assets/{query-CfGzD8v6.js → query-B3Zo1YOE.js} +2 -2
  187. package/dist/client/assets/{radio-group-up2QNXjf.js → radio-group-l1Zl-3hQ.js} +2 -2
  188. package/dist/client/assets/{renderScheduler-Dgqqs-EX.js → renderScheduler-CGMZZETC.js} +2 -2
  189. package/dist/client/assets/{rightPanelStore-CGF0-d-1.js → rightPanelStore-Cv1U3yrU.js} +2 -2
  190. package/dist/client/assets/{runtime-Ca_Z-vg5.js → runtime-BBIAfWJY.js} +3 -3
  191. package/dist/client/assets/{runtime-OeWFs5Hf.js → runtime-CABaKt1A.js} +3 -3
  192. package/dist/client/assets/{runtimeModeConfig-BTG9FTYe.js → runtimeModeConfig-BQ0QCQhj.js} +2 -2
  193. package/dist/client/assets/{scheduledTasksSettings.logic-BeuOnCov.js → scheduledTasksSettings.logic-DFlgKyt2.js} +2 -2
  194. package/dist/client/assets/{scroll-area-BNQKEZbp.js → scroll-area-CQNIjQ8U.js} +2 -2
  195. package/dist/client/assets/{select-D_zHR42Y.js → select-Cbpdz6n3.js} +2 -2
  196. package/dist/client/assets/{selfImproveFindings-CAZ0j1GD.js → selfImproveFindings-CT79AgdK.js} +2 -2
  197. package/dist/client/assets/{server-6nKYyc8r.js → server-mIR8e8Vz.js} +2 -2
  198. package/dist/client/assets/{session-BxUdP61p.js → session-BlCBDyVn.js} +2 -2
  199. package/dist/client/assets/{session-logic-Dr1plzXe.js → session-logic-CwBN7BBv.js} +3 -3
  200. package/dist/client/assets/{settings-DE_hSu0q.js → settings-fTPmNkCr.js} +2 -2
  201. package/dist/client/assets/{settings.appearance-C--uy4It.js → settings.appearance-D96WohbH.js} +2 -2
  202. package/dist/client/assets/settings.archived-CnXEwX0Z.js +2 -0
  203. package/dist/client/assets/{settings.computer-use-DhnqPqMm.js → settings.computer-use-DZTx8sD-.js} +2 -2
  204. package/dist/client/assets/settings.connections-Rl7zwQ75.js +2 -0
  205. package/dist/client/assets/settings.data-controls-DuyfuMcN.js +2 -0
  206. package/dist/client/assets/{settings.decisions-CU-6rIpn.js → settings.decisions-eRAu1hqY.js} +2 -2
  207. package/dist/client/assets/{settings.designs-DHYhhG4k.js → settings.designs-C0RxEgfD.js} +2 -2
  208. package/dist/client/assets/{settings.diagnostics-csgW1_E8.js → settings.diagnostics-BDo1Ma1e.js} +2 -2
  209. package/dist/client/assets/{settings.general-CeBkrL9-.js → settings.general-CpbG8_Ml.js} +2 -2
  210. package/dist/client/assets/{settings.integrations-DqSYBosl.js → settings.integrations-CujbsXfc.js} +2 -2
  211. package/dist/client/assets/{settings.keybindings-C7D1i238.js → settings.keybindings-CQ5xk9v3.js} +2 -2
  212. package/dist/client/assets/{settings.open-source-licenses-6oFDgAt7.js → settings.open-source-licenses-DIBdHSDB.js} +2 -2
  213. package/dist/client/assets/{settings.plugins-DfM65Xio.js → settings.plugins-BbsrwhRq.js} +4 -4
  214. package/dist/client/assets/settings.projects-BeNHSNe9.js +4 -0
  215. package/dist/client/assets/settings.providers-DQT6izvS.js +3 -0
  216. package/dist/client/assets/{settings.scheduled-tasks-Csi8wfij.js → settings.scheduled-tasks-vKCtN-OC.js} +2 -2
  217. package/dist/client/assets/settings.snap-shot-DgPUS-Zo.js +2 -0
  218. package/dist/client/assets/settings.source-control-B87geXn3.js +2 -0
  219. package/dist/client/assets/{settings.storage-DTcg-0aj.js → settings.storage-BYfdzwhk.js} +2 -2
  220. package/dist/client/assets/{settingsLayout-4ySvFdXb.js → settingsLayout-vgYGia0Q.js} +3 -3
  221. package/dist/client/assets/{sidebar-CHDwV4Ca.js → sidebar-BhJqncti.js} +2 -2
  222. package/dist/client/assets/{sidebarProjectGrouping-BcOVY8p-.js → sidebarProjectGrouping-DaMfJpqc.js} +2 -2
  223. package/dist/client/assets/{skeleton-BcLPbojY.js → skeleton-CFtayHTe.js} +2 -2
  224. package/dist/client/assets/{sourceControl-CPrl7cyO.js → sourceControl-CcPqr0UX.js} +2 -2
  225. package/dist/client/assets/{sourceControlClients-oNOd36Cq.js → sourceControlClients-DtjbXUDt.js} +2 -2
  226. package/dist/client/assets/{spinner-_ourbdVb.js → spinner-BZh9P0sD.js} +2 -2
  227. package/dist/client/assets/{terminal-links-DuZi4b83.js → terminal-links-CFKe0iu0.js} +2 -2
  228. package/dist/client/assets/{terminalSessions-D0vbdqqx.js → terminalSessions-0YYscaVr.js} +2 -2
  229. package/dist/client/assets/{textarea-DlXXDHPJ.js → textarea-hXQFbdrS.js} +2 -2
  230. package/dist/client/assets/themePalette-MbAn2gqj.js +5 -0
  231. package/dist/client/assets/{toast-DXWclCrr.js → toast-D26NINYU.js} +2 -2
  232. package/dist/client/assets/{toggle-Dofc34s2.js → toggle-B03MQDgB.js} +2 -2
  233. package/dist/client/assets/{toggle-group-CYKsfBbD.js → toggle-group-yF5GZ53o.js} +2 -2
  234. package/dist/client/assets/{tooltip-CY3W5y-f.js → tooltip-ChmjT8Ns.js} +2 -2
  235. package/dist/client/assets/uiStateStore-CKKy2mq4.js +2 -0
  236. package/dist/client/assets/{usage-DQcgd75_.js → usage-BDFFNkIV.js} +2 -2
  237. package/dist/client/assets/{usageAccess-CCSxXl9X.js → usageAccess-kgUHYKOw.js} +2 -2
  238. package/dist/client/assets/{usageFormat-ByjmRjTe.js → usageFormat-D5Mz5ugL.js} +2 -2
  239. package/dist/client/assets/{usageShortcuts-DOWm0Vo9.js → usageShortcuts-mAekk3eG.js} +2 -2
  240. package/dist/client/assets/{use-atom-command-vqjL7n-x.js → use-atom-command-C4y634Qy.js} +2 -2
  241. package/dist/client/assets/{useAriaLabelledBy-B7FNFpmO.js → useAriaLabelledBy-DjNn9irU.js} +2 -2
  242. package/dist/client/assets/useHandleNewThread-C7ynA68A.js +2 -0
  243. package/dist/client/assets/{useLocation-B_XV0lDx.js → useLocation-Cwv1HZ3K.js} +2 -2
  244. package/dist/client/assets/{useNavigate-BWqAWfiZ.js → useNavigate-Cdrlv-yJ.js} +2 -2
  245. package/dist/client/assets/{useNavigateBack-C52nbvbb.js → useNavigateBack-CwjQ4iuL.js} +2 -2
  246. package/dist/client/assets/{useP4ConnectAuthPrompt-DKhdNYj8.js → useP4ConnectAuthPrompt-5uCMQUT1.js} +2 -2
  247. package/dist/client/assets/{useParams-ekGanxxb.js → useParams-C5D_t-0u.js} +2 -2
  248. package/dist/client/assets/{usePermissionStatus-CWV_yoZe.js → usePermissionStatus-CKmeNk61.js} +2 -2
  249. package/dist/client/assets/{usePullRequestActions-DxtkLQ5D.js → usePullRequestActions-cmzmOrJ-.js} +2 -2
  250. package/dist/client/assets/{useRegisterFieldControl-BAJIcFiO.js → useRegisterFieldControl-DUs9w2Me.js} +2 -2
  251. package/dist/client/assets/{useScopedModelAvailability-815e0x20.js → useScopedModelAvailability-kczZtr1M.js} +2 -2
  252. package/dist/client/assets/useSettings-CHt2_4He.js +3 -0
  253. package/dist/client/assets/utils-CBe1bHL7.js +37 -0
  254. package/dist/client/assets/{vcsRefInvalidation-CW_MIqdt.js → vcsRefInvalidation-CytQodoP.js} +2 -2
  255. package/dist/client/assets/{welcome-k7S47hyM.js → welcome-pbssrwWd.js} +2 -2
  256. package/dist/client/index.html +1 -1
  257. package/dist/{renderer-Ay-1ojn7.mjs → renderer-BBWgEvuE.mjs} +2 -2
  258. package/dist/{runtime-bP6MSuMS.mjs → runtime-DNjlpJkJ.mjs} +286 -242
  259. package/package.json +1 -1
  260. package/dist/client/assets/AlertDialogRoot-BSP6M0Mu.js +0 -2
  261. package/dist/client/assets/AuthSurfaceShell-30QvY1bI.js +0 -2
  262. package/dist/client/assets/CodexSetupSection.logic-g6_GE4bw.js +0 -2
  263. package/dist/client/assets/DeviceSetup-Cl7L9wsi.js +0 -2
  264. package/dist/client/assets/Input-D3Qi4jCN.js +0 -2
  265. package/dist/client/assets/JZOYTAAL-BlxFvoz4.js +0 -1
  266. package/dist/client/assets/PreviewPanel-BkFeksTl.js +0 -2
  267. package/dist/client/assets/ScheduledTasksSettings-1uXNtcPA.js +0 -4
  268. package/dist/client/assets/ThemeEditorPanel-B7MiqZ90.js +0 -5
  269. package/dist/client/assets/TooltipViewport-ThbbZQDo.js +0 -2
  270. package/dist/client/assets/_chat-CwO3_WVM.js +0 -45
  271. package/dist/client/assets/_chat.pull-requests-BZilN1TK.js +0 -2
  272. package/dist/client/assets/composer-logic-P-jVPXi4.js +0 -6
  273. package/dist/client/assets/composerDraftUploads-S66xDlS0.js +0 -2
  274. package/dist/client/assets/main-DdVSHl80.css +0 -2
  275. package/dist/client/assets/main-VfCRP294.js +0 -29
  276. package/dist/client/assets/settings.archived-D-55XnxQ.js +0 -2
  277. package/dist/client/assets/settings.connections-BPVLazeK.js +0 -2
  278. package/dist/client/assets/settings.data-controls-CIzGvqCI.js +0 -2
  279. package/dist/client/assets/settings.projects-CeoZzdMW.js +0 -4
  280. package/dist/client/assets/settings.providers-BBgppyE3.js +0 -3
  281. package/dist/client/assets/settings.snap-shot-BdVdSIJy.js +0 -2
  282. package/dist/client/assets/settings.source-control-Bme3qg7j.js +0 -2
  283. package/dist/client/assets/themePalette-VIM7Gehx.js +0 -5
  284. package/dist/client/assets/uiStateStore-CdkBStdp.js +0 -6
  285. package/dist/client/assets/useHandleNewThread-BYNZXzR_.js +0 -2
  286. package/dist/client/assets/useSettings-gPlpTIWi.js +0 -3
  287. package/dist/client/assets/utils-DhUt689t.js +0 -37
@@ -1,6 +1,6 @@
1
- import{$C as e,$S as t,$T as n,$b as r,$c as i,$l as a,$v as o,$w as s,$x as c,AS as l,AT as u,Ab as d,Av as f,Aw as p,Ax as m,BC as h,BS as g,BT as _,Bu as ee,Bw as v,Bx as y,CC as b,CE as x,CS as S,CT as C,Cb as te,Cw as ne,Cx as w,Cy as re,DC as T,DE as E,DS as ie,DT as ae,Dg as oe,Ds as se,Dv as ce,Dx as le,EC as ue,EE as de,ET as fe,Eb as pe,Eg as me,Ev as he,Ew as ge,Ex as _e,FC as ve,FS as ye,Fv as be,Fw as xe,Fx as Se,GC as Ce,GS as we,GT as Te,Gb as Ee,Gg as De,Gv as Oe,Gw as ke,Gx as D,Gy as O,HC as Ae,HS as je,Hc as Me,Hg as Ne,Hv as Pe,Hw as Fe,Hx as Ie,Hy as Le,IC as Re,IS as ze,IT as Be,Iu as Ve,Iw as He,Ix as Ue,JC as We,JS as Ge,JT as Ke,Jb as qe,Jv as Je,Jw as Ye,Jx as Xe,Jy as Ze,KC as Qe,KS as $e,KT as et,Kb as tt,Kw as nt,Kx as rt,Ky as it,LC as at,LS as k,Lb as ot,Lg as st,Lu as ct,Lv as lt,Lx as ut,MS as dt,MT as ft,Mb as pt,Mw as mt,Mx as ht,My as gt,NS as _t,NT as vt,Nb as yt,Nl as bt,Nu as xt,Nw as St,Nx as Ct,OC as wt,OE as Tt,OS as Et,OT as Dt,Os as Ot,Ov as kt,Ow as At,PS as jt,Pb as Mt,Pu as Nt,Pv as Pt,Px as Ft,QC as It,QS as Lt,QT as Rt,Qb as zt,Ql as Bt,Qv as Vt,Qw as Ht,Qx as Ut,Qy as Wt,RC as Gt,RS as Kt,R_ as qt,Rb as Jt,Rg as A,Ru as Yt,Rw as Xt,Rx as Zt,SC as Qt,SE as $t,SS as en,ST as tn,Sg as nn,Ss as rn,Sv as an,Sw as on,Sx as j,Sy as sn,TC as cn,TE as ln,TS as un,TT as M,Tb as dn,Ts as fn,Tv as pn,Tw as mn,Tx as hn,UC as gn,Uc as _n,Ug as N,Uv as vn,Uw as yn,Ux as bn,Uy as xn,VC as Sn,VT as Cn,V_ as wn,Vw as Tn,Vx as En,WC as Dn,WS as On,WT as kn,Wc as An,Wv as jn,Ww as Mn,Wx as Nn,Wy as Pn,XC as Fn,XS as In,XT as Ln,Xb as Rn,Xl as zn,Xv as Bn,Xw as Vn,Xx as P,Xy as F,YC as Hn,YS as Un,YT as Wn,Yb as Gn,Yl as Kn,Yv as qn,Yw as Jn,Yy as Yn,ZS as Xn,Zb as Zn,Zl as Qn,Zv as $n,Zw as er,Zx as tr,Zy as nr,_C as rr,_E as ir,_S as ar,_s as or,_w as sr,_y as cr,aC as lr,aE as I,aS as ur,ab as dr,ac as fr,as as pr,au as mr,av as hr,aw as gr,ax as _r,ay as vr,bC as yr,bS as br,bT as xr,b_ as Sr,bb as Cr,bg as wr,bs as Tr,bv as Er,bw as Dr,bx as Or,by as kr,cE as L,cS as Ar,cb as R,cc as jr,cu as Mr,cw as Nr,cx as Pr,cy as Fr,dC as Ir,dS as Lr,dT as Rr,db as zr,dc as Br,ds as Vr,du as Hr,dv as Ur,dw as Wr,dy as Gr,eC as Kr,eE as qr,eS as z,eb as Jr,el as Yr,eu as Xr,ew as Zr,ey as Qr,fC as $r,fS as ei,fT as ti,fb as ni,fu as ri,fv as ii,fy as ai,gC as oi,gE as si,gS as ci,gv as li,gw as ui,gy as di,hC as fi,hE as pi,hS as mi,hT as hi,hv as gi,hw as _i,hy as vi,iC as yi,iE as bi,iT as xi,ib as B,ic as Si,is as Ci,iu as wi,iv as Ti,iw as Ei,ix as Di,iy as Oi,jS as ki,ju as Ai,jv as ji,jw as Mi,jx as Ni,kS as Pi,kT as Fi,kv as Ii,kw as Li,kx as Ri,lC as zi,lE as V,lS as H,lT as Bi,lc as Vi,ls as Hi,lu as Ui,lw as Wi,lx as Gi,ly as Ki,mC as qi,mS as Ji,mT as Yi,mw as Xi,my as Zi,nC as Qi,nS as $i,nT as ea,nb as ta,nc as na,nu as ra,nw as ia,ny as aa,oC as oa,oE as sa,oS as ca,oT as la,ob as ua,oc as da,ou as fa,ov as pa,ow as ma,ox as ha,pC as ga,pS as _a,pT as va,pc as ya,ps as ba,pu as xa,pv as Sa,pw as Ca,py as wa,qC as Ta,qS as Ea,qT as Da,qb as Oa,qv as ka,qw as Aa,qx as ja,rC as Ma,rE as Na,rS as Pa,rT as Fa,rb as Ia,rc as La,rs as Ra,ru as za,rw as Ba,rx as Va,ry as Ha,sC as U,sE as Ua,sS as Wa,sT as Ga,sb as Ka,sc as qa,su as Ja,sv as Ya,sw as Xa,sx as Za,tC as Qa,tE as W,tS as $a,tT as eo,tb as to,tc as no,tl as ro,tu as io,tw as ao,tx as oo,ty as so,uC as G,uS as co,uT as lo,uc as uo,us as fo,uu as po,uv as mo,uw as ho,ux as go,vC as _o,vE as vo,vS as yo,vT as bo,vb as xo,vs as So,vv as Co,vw as wo,vx as To,vy as Eo,wC as Do,wE as Oo,wS as ko,wT as Ao,wg as jo,wv as Mo,ww as No,wx as Po,wy as Fo,xC as Io,xS as K,xT as Lo,xb as Ro,xg as zo,xv as Bo,xw as Vo,xx as Ho,xy as Uo,yC as Wo,yE as Go,yS as Ko,yT as qo,y_ as Jo,yb as Yo,ys as Xo,yv as Zo,yw as Qo,yx as $o,yy as es,zS as ts,zT as ns,zb as rs,zg as is,zu as as,zw as os,zx as ss}from"./utils-DhUt689t.js";var cs=Ao(`effect/Random`,{defaultValue:()=>({nextIntUnsafe(){return Math.floor(Math.random()*(2**53-1- -(2**53-1)+1))+-(2**53-1)},nextDoubleUnsafe(){return Math.random()}})}),ls=(e,t,n)=>{let r=n*(t-e)+e;if(r!==t||e>=t||!Number.isFinite(t))return r;if(t===0)return-Number.MIN_VALUE;let i=new DataView(new ArrayBuffer(8));i.setFloat64(0,t);let a=i.getBigUint64(0);return i.setBigUint64(0,t>0?a-BigInt(1):a+BigInt(1)),i.getFloat64(0)},us=e=>go(e).replace(/=/g,``).replace(/\+/g,`-`).replace(/\//g,`_`),ds=e=>{let t=e.replace(/[\n\r]/g,``),n=t.length;if(n%4==1)return Cn(new Ga({module:`Base64Url`,kind:`Decode`,input:t,message:`Length should be a multiple of 4, but is ${n}`}));if(!/^[-_A-Z0-9]*?={0,2}$/i.test(t))return Cn(new Ga({module:`Base64Url`,kind:`Decode`,input:t,message:`Invalid input`}));let r=n%4==2?`${t}==`:n%4==3?`${t}=`:t;return r=r.replace(/-/g,`+`).replace(/_/g,`/`),Gi(r)},fs=e=>et(ds(e),e=>ps.decode(e)),ps=new TextDecoder,ms=cs,hs=(e=>cn(t=>U(e(t.getRef(ms)))))(e=>e.nextDoubleUnsafe()),gs=`~effect/PlatformError`,_s=class extends Bi(`BadArgument`){get message(){return`${this.module}.${this.method}${this.description?`: ${this.description}`:``}`}},vs=class extends Bi(`PlatformError`){constructor(e){`cause`in e?super({reason:e,cause:e.cause}):super({reason:e})}[gs]=gs;get message(){return this.reason.message}},ys=e=>new vs(new _s(e));function bs(e){return{_tag:`Value`,value:e}}function xs(e,t){return{_tag:`Record`,keys:e,value:t}}function Ss(e,t){return{_tag:`Array`,length:e,value:t}}var Cs=Ao(`effect/ConfigProvider`,{defaultValue:()=>js()}),ws={...pi,toJSON(){return{_id:`ConfigProvider`}}},Ts=e=>e;function Es(e,t){let n=Object.create(ws);return n.load=e,n.mapInput=t,n}function Ds(e,t){return Es(n=>e(t(n)),n=>Ds(e,e=>n(t(e))))}function Os(e){return Ds(e,Ts)}function ks(e,t){return e===``&&!t?void 0:e}function As(e,t){let n=t?.preserveEmptyStrings===!0,r=Ms(e);return Os(t=>U(Ns(r,e,t,n)))}function js(e){return As(e?.env??{APP_VERSION:`0.8.37`,BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,TSS_INLINE_CSS_ENABLED:`false`,VITE_CLERK_CLI_OAUTH_CLIENT_ID:``,VITE_CLERK_JWT_TEMPLATE:``,VITE_CLERK_PUBLISHABLE_KEY:``,VITE_HOSTED_APP_CHANNEL:``,VITE_HOSTED_APP_URL:``,VITE_HTTP_URL:``,VITE_P4CODE_RELAY_URL:``,VITE_RELAY_OTLP_TRACES_DATASET:``,VITE_RELAY_OTLP_TRACES_TOKEN:``,VITE_RELAY_OTLP_TRACES_URL:``,VITE_WS_URL:``},{preserveEmptyStrings:e?.preserveEmptyStrings})}function Ms(e){let t={};for(let[n,r]of Object.entries(e)){if(r===void 0)continue;let e=n.split(`_`),i=t;for(let t of e){let e=i.children??=Object.create(null);i=e[t]??={}}}return t}function Ns(e,t,n,r){let i=n.map(String).join(`_`),a=ks(Object.hasOwn(t,i)?t[i]:void 0,r),o=Ps(e,n),s=o?.children?Object.keys(o.children):[];return s.length===0?a===void 0?void 0:bs(a):s.every(Be)?Ss(Math.max(...s.map(e=>parseInt(e,10)))+1,a):xs(new Set(s),a)}function Ps(e,t){if(t.length===0)return e;let n=e;for(let e of t)if(n=n?.children?.[String(e)],!n)return;return n}var Fs=`~effect/Config`,Is=class{_tag=`ConfigError`;name=`ConfigError`;cause;constructor(e){this.cause=e}get message(){return this.cause.toString()}toString(){return`ConfigError(${this.message})`}},Ls={...vt({label:`Config`,evaluate(e){return this.parse(e.getRef(Cs))}}),[Fs]:Fs,toJSON(){return{_id:`Config`}}};function Rs(e){let t=Object.create(Ls);return t.evaluator=e,t.parse=t=>tr(e(t,[]),Ar),t}var zs=(e,t,n)=>e.evaluator(t,n),Bs=ln(2,(e,t)=>Rs((n,r)=>en(zs(e,n,r),e=>kn(e)?Da(t):e))),Vs=e=>x(e,`SourceError`),Hs=()=>`<configuration>`,Us=e=>t=>m(t,t=>rt(Xt(t.reasons.map(e)))),Ws=(e,t)=>e.load(t).pipe(Us(e=>ke(e)?nt(e.error).annotate(er(e)):e),en(n=>({provider:e,path:t,node:n,toString:Hs}))),Gs=(e,t)=>Ws(e.provider,[...e.path,t]),Ks=(e,t)=>qe(Rn,e,new Zn(Va(e=>t(e)),oo())),qs=e=>{switch(e._tag){case`Union`:return e.types.every(qs);case`Objects`:case`Arrays`:case`Suspend`:return!1;default:return!0}},Js=(e,t)=>{switch(e._tag){case`Objects`:return t?._tag===`Record`;case`Arrays`:return t?._tag===`Array`;case`Union`:return e.types.some(e=>Js(e,t));case`Suspend`:return Js(e.thunk(),t);default:return t?.value!==void 0}},Ys=Tt(e=>{let t=new WeakSet,n=Oa(e=>{switch(t.add(e),e._tag){case`Objects`:{let t=e.indexSignatures.map(e=>Ee(e.parameter)),r=z(function*(n){if(n.node?._tag!==`Record`)return;let r=n.node,i=new Set;for(let t of e.propertySignatures)typeof t.name==`string`&&i.add(t.name);if(t.length>0)for(let e of r.keys)t.some(t=>t(e))&&i.add(e);let a={};for(let e of i){let t=yield*Gs(n,e);t.node!==void 0&&ir(a,e,t)}return a});return Ks(e.recur(n,e=>e),r)}case`Arrays`:{let t=z(function*(e){if(e.node?._tag!==`Array`)return;let t=[];for(let n=0;n<e.node.length;n++)t.push(yield*Gs(e,n));return t});return Ks(e.recur(n),t)}case`Union`:for(let t of e.types)n(t);if(!qs(e))return e.recur(n);break;case`Suspend`:{let r=e.thunk();return t.has(r)||n(r),e.recur(n)}case`Declaration`:case`Any`:throw new globalThis.Error(`Config.schema does not support opaque StringTree encodings`,{cause:e})}return Ks(e,e=>U(e.node?.value))});return n(e)});function Xs(e,t){let n=rs(e),r=Gn(n.ast),i=tt(pt(Ys(n.ast))),a=typeof t==`string`?[t]:t??[];return Rs((e,t)=>{let n=[...t,...a];return Ws(e,n).pipe(tr(e=>i(e).pipe(en(Da),ht(t=>{let i=new Is(new Ia(n.length>0?new Di(n,t):t));return Js(r,e.node)?D(i):U(Cn(i))}))),Us(e=>Mn(e)&&Vs(e.defect)?Aa(new Is(e.defect)).annotate(er(e)):e))})}var Zs=e=>$t(e)||globalThis.Array.isArray(e);function Qs(e){return Xs(B,e)}function $s(e,t,n,i){let a=Zs(n),o=ta(e,t),s=zt(a?i:n),c=B.pipe(Yo(rs(o),{decode:s.decode,encode:r(oo({strict:!1}),s.encode)}));return Xs(ni([o,c]),a?n:void 0)}var ec=2**48-1,tc=`0123456789ABCDEFGHJKMNPQRSTVWXYZ`,nc=(e,t)=>{if(t.length!==10)throw Error(`ULID randomness must be exactly 10 bytes, received ${t.length}`);let n=Math.min(Math.max(0,Math.trunc(e)),ec),r=``;for(let e=45;e>=0;e-=5)r+=tc[Math.floor(n/2**e)&31];let i=0,a=0;for(let e of t){for(i=i<<8|e,a+=8;a>=5;)a-=5,r+=tc[i>>>a&31];i&=(1<<a)-1}return r},rc=e=>e.toString(16).padStart(2,`0`),ic=e=>[e.subarray(0,4),e.subarray(4,6),e.subarray(6,8),e.subarray(8,10),e.subarray(10,16)].map(e=>Array.from(e,rc).join(``)).join(`-`),ac=()=>globalThis.crypto.getRandomValues(new Uint8Array(16));function oc(e=ac()){return e[6]=e[6]&15|64,e[8]=e[8]&63|128,e}var sc=2**48-1;function cc(e,t=ac()){let n=Math.min(Math.max(0,Math.trunc(e)),sc);return t[0]=Math.floor(n/2**40),t[1]=Math.floor(n/2**32)&255,t[2]=Math.floor(n/2**24)&255,t[3]=Math.floor(n/2**16)&255,t[4]=Math.floor(n/256)&255,t[5]=n&255,t[6]=t[6]&15|112,t[8]=t[8]&63|128,t}var lc=`~effect/Crypto`,uc=M(`effect/Crypto`),dc=e=>{let t=e.randomBytes,n=e=>K(fc(`randomBytes`,e),t),r=e=>(e[0]&31)*2**48+e[1]*2**40+e[2]*2**32+e[3]*2**24+e[4]*2**16+e[5]*256+e[6],i=()=>r(t(7))/2**53,a=()=>{for(;;){let e=t(7),n=r(e);if(!(e[0]&32))return n+-(2**53-1);if(n<2**53-1)return n+1}};return uc.of({[lc]:lc,randomBytes:n,nextDoubleUnsafe:i,nextIntUnsafe:a,digest:e.digest,random:G(()=>i()),randomBoolean:G(()=>i()>.5),randomInt:G(()=>a()),randomBetween:(e,t)=>G(()=>ls(e,t,i())),randomIntBetween(e,t,n){let r=n?.halfOpen===!0?0:1;return G(()=>{let n=Math.ceil(e),a=Math.floor(t);return Math.floor(i()*(a-n+r))+n})},randomShuffle:e=>G(()=>{let t=Array.from(e);for(let e=t.length-1;e>=1;--e){let n=Math.min(e,Math.floor(i()*(e+1))),r=t[e];t[e]=t[n],t[n]=r}return t}),randomUUIDv4:e=>G(()=>{let n=oc(t(16));return e?.format===`bytes`?n:ic(n)}),randomUUIDv7:e=>Ue(n=>{let r=cc(n.currentTimeMillisUnsafe(),t(16));return U(e?.format===`bytes`?r:ic(r))}),randomULID:Ue(e=>U(nc(e.currentTimeMillisUnsafe(),t(10))))})},fc=(e,t)=>Number.isSafeInteger(t)&&t>=0?U(t):D(ys({module:`Crypto`,method:e,description:`size must be a non-negative safe integer`})),pc=`~effect/FiberSet`,mc=e=>Go(e,pc),hc={[pc]:pc,[Symbol.iterator](){return this.state._tag===`Closed`?ns():this.state.backing[Symbol.iterator]()},...pi,toJSON(){return{_id:`FiberSet`,state:this.state}}},gc=(e,t)=>{let n=Object.create(hc);return n.state={_tag:`Open`,backing:e},n.deferred=t,n},_c=()=>To(G(()=>gc(new Set,on())),e=>zi(()=>{let t=e.state;if(t._tag===`Closed`)return b;e.state={_tag:`Closed`};let n=t.backing;return sn(n).pipe(Qo(e.deferred))})),vc=-1,yc=ti(lo(xe,Rr(vc))),bc=ln(e=>mc(e[0]),(e,t,n)=>{if(e.state._tag===`Closed`){t.interruptUnsafe(vc);return}e.state.backing.has(t)||(e.state.backing.add(t),t.addObserver(r=>{e.state._tag!==`Closed`&&(e.state.backing.delete(t),Li(r)&&(n?.propagateInterruption===!0?!yc(r.cause):!Tn(r.cause))&&ui(e.deferred,r))}))}),xc=function(){let e;return()=>(e===void 0&&(e=Ea(ei)),e)}(),Sc=function(){let e=arguments[0];if(!Ji(arguments[1])){let t=arguments[1];return n=>Cc(e,n,t)}return Cc(e,arguments[1],arguments[2])},Cc=(e,t,n)=>cn(r=>{if(e.state._tag===`Closed`)return G(xc);let i=s(r,t,n?.startImmediately??!0,!0);return bc(e,i,n),U(i)}),wc=e=>()=>K(ut(),t=>{let n=Ge(t);return(t,r)=>{if(e.state._tag===`Closed`)return xc();let i=n(t,r);return bc(e,i,r),i}}),Tc=e=>Do({while:()=>e.state._tag===`Open`&&e.state.backing.size>0,body:()=>es(_(e)),step:Oo}),Ec=`~effect/ManagedRuntime`,Dc=(e,n)=>{let r=n?.memoMap??It(),i=Ca(`sequential`),a=Wr(i,`sequential`),o=Wr(i,`parallel`),s={onFiberStart:Fo(o)},c=e=>e?{...e,onFiberStart:e.onFiberStart?t=>{s.onFiberStart(t),e.onFiberStart(t)}:s.onFiberStart}:s,l,u=cn(t=>(l||=Ea(Ir(We(e,r,a),e=>G(()=>{d.cachedContext=e})),{...s,scheduler:t.cache.scheduler}),Ut(es(l)))),d={[Ec]:Ec,memoMap:r,scope:i,contextEffect:u,cachedContext:void 0,context(){return d.cachedContext===void 0?Un(d.contextEffect):Promise.resolve(d.cachedContext)},dispose(){return Un(d.disposeEffect)},[Symbol.asyncDispose](){return d.dispose()},disposeEffect:cn(e=>{for(let t=e;t;t=t._parent)eo(o,t);return d.contextEffect=Ie(`ManagedRuntime disposed`),d.cachedContext=void 0,Wi(d.scope,mt)}),runFork(e,t){return d.cachedContext===void 0?Ea(Oc(d,e),c(t)):Ge(d.cachedContext)(e,c(t))},runCallback(e,t){return d.cachedContext===void 0?we(Oc(d,e),c(t)):$e(d.cachedContext)(e,c(t))},runSyncExit(e){return d.cachedContext===void 0?Kr(Oc(d,e)):Qa(d.cachedContext)(e)},runSync(e){return d.cachedContext===void 0?t(Oc(d,e)):Qi(d.cachedContext)(e)},runPromiseExit(e,t){return d.cachedContext===void 0?In(Oc(d,e),c(t)):Xn(d.cachedContext)(e,c(t))},runPromise(e,t){return d.cachedContext===void 0?Un(Oc(d,e),c(t)):Lt(d.cachedContext)(e,c(t))}};return d};function Oc(e,t){return P(e.contextEffect,e=>ze(t,e))}var kc={"~effect/Ref":{_A:E},...pi,toJSON(){return{_id:`Ref`,ref:this.ref}}},Ac=e=>{let t=Object.create(kc);return t.ref=di(e),t},q=e=>G(()=>Ac(e)),J=e=>G(()=>e.ref.current),Y=ln(2,(e,t)=>G(()=>cr(e.ref,t))),jc=ln(2,(e,t)=>G(()=>{let n=e.ref.current;return e.ref.current=t,n})),Mc=ln(2,(e,t)=>G(()=>{let[n,r]=t(e.ref.current);return e.ref.current=r,n})),Nc=ln(2,(e,t)=>G(()=>{e.ref.current=t(e.ref.current)})),Pc=ln(2,(e,t)=>G(()=>e.ref.current=t(e.ref.current))),Fc=`~effect/SynchronizedRef`,Ic={...pi,[Fc]:Fc,toJSON(){return{_id:`SynchronizedRef`,value:this.backing.ref.current}}},Lc=e=>{let t=Object.create(Ic);return t.semaphore=o(1),t.backing=Ac(e),t},Rc=e=>G(()=>Lc(e)),zc=e=>e.backing.ref.current,Bc=e=>G(()=>zc(e)),Vc=ln(2,(e,t)=>e.semaphore.withPermit(zi(()=>{let n=zc(e);return K(t(n),([t,n])=>(e.backing.ref.current=n,t))}))),Hc=ln(2,(e,t)=>e.semaphore.withPermit(Y(e.backing,t))),Uc=`4.0.4`,Wc=()=>Uc,Gc=`~effect/socket/Socket`,Kc=M(`effect/socket/Socket`),qc=e=>Kc.of({[Gc]:Gc,reader:e.reader,writer:e.writer}),Jc=new TextEncoder,Yc=`~effect/socket/Socket/CloseEvent`,Xc=e=>Go(e,Yc),Zc=`~effect/socket/Socket/SocketError`,Qc=e=>Go(e,Zc),$c=class extends it(`effect/socket/Socket/SocketReadError`)({_tag:ot(`SocketReadError`),cause:O()}){message=`An error occurred during Read`},el=class extends it(`effect/socket/Socket/SocketWriteError`)({_tag:ot(`SocketWriteError`),cause:O()}){message=`An error occurred during Write`},tl=class extends it(`effect/socket/Socket/SocketOpenError`)({_tag:ot(`SocketOpenError`),kind:F([`Unknown`,`Timeout`]),cause:O()}){get message(){return this.kind===`Timeout`?`timeout waiting for "open"`:`An error occurred during Open`}},nl=class e extends it(`effect/socket/Socket/SocketUpgradeError`)({_tag:ot(`SocketUpgradeError`),cause:yt(O())}){static unsupported=()=>D(new al({reason:new e({})}));get message(){return this.cause===void 0?`Socket does not support TLS upgrade`:`An error occurred during TLS upgrade`}},rl=class extends it(`effect/socket/Socket/SocketCloseError`)({_tag:ot(`SocketCloseError`),code:Ze,closeReason:yt(B)}){get message(){return this.closeReason?`${this.code}: ${this.closeReason}`:`${this.code}`}},il=ni([$c,el,tl,nl,rl]),al=class extends R(Zc)(`SocketError`,{_tag:ot(`SocketError`),reason:il}){constructor(e){`cause`in e.reason?super({...e,cause:e.reason.cause}):super(e)}[Zc]=Zc;static is(e){return Qc(e)}message=this.reason.message},ol=(e,t)=>new al({reason:new rl({code:e,closeReason:t})}),sl=class extends M()(`@effect/platform/Socket/WebSocketConstructor`){},cl=Ba(sl)((e,t)=>{if(t!==void 0&&typeof t!=`string`&&!Array.isArray(t))throw TypeError(`WebSocket client options are not supported by the global WebSocket constructor`);return new globalThis.WebSocket(e,t)}),ll=(e,t)=>sl.use(n=>dl(To((typeof e==`string`?U(e):e).pipe(K(e=>n(e,t?.headers===void 0?t?.protocols:{protocols:t.protocols,headers:t.headers}))),e=>G(()=>e.close(1e3))),t)),ul=e=>`pause`in e&&typeof e.pause==`function`,dl=(e,t)=>cn(n=>{let r,i=Eo(!1),a=n.context,o=H(function*(){let n=yield*Ma,a=yield*Xi(e,n);`binaryType`in a&&(a.binaryType=`arraybuffer`);let o=ul(a),s=t?.highWaterMark??(o?fl:void 0),c=a.readyState===1,l=o&&`isPaused`in a&&a.isPaused===!0,u=[],d=0,f,p,m;function h(){o&&!l&&(a.pause(),l=!0)}function g(){o&&l&&(a.resume(),l=!1)}function _(){let e=u;return u=[],d=0,f===void 0&&g(),e}function ee(){if(p===void 0||u.length===0)return;let e=p;p=void 0,e(U(_()))}function v(e){u.push(e),s!==void 0&&(d+=typeof e==`string`?Jc.encode(e).byteLength:e.byteLength),p!==void 0&&ee(),o&&d>=s?h():!o&&!p&&s!==void 0&&d>s&&y(new al({reason:new $c({cause:Error(`Socket highWaterMark of ${s} bytes exceeded`)})}))}function y(e){if(f===void 0&&(f=e),m!==void 0){let{cleanup:e,resume:t}=m;m=void 0,e(),t(D(f))}if(p!==void 0){let e=p;p=void 0,e(u.length>0?U(_()):D(f))}}function x(e){let t=e.data;if(typeof Blob<`u`&&t instanceof Blob){t.arrayBuffer().then(e=>v(new Uint8Array(e)),e=>{y(new al({reason:new $c({cause:e})}))});return}v(t instanceof ArrayBuffer?new Uint8Array(t):t)}function S(e){y(new al({reason:c?new $c({cause:e}):new tl({kind:`Unknown`,cause:e})}))}function C(e){y(ol(typeof e.code==`number`?e.code:1006,e.reason))}return a.addEventListener(`message`,x),a.addEventListener(`error`,S,{once:!0}),a.addEventListener(`close`,C,{once:!0}),yield*Xa(n,G(()=>{if(y(ol(1006)),a.removeEventListener(`message`,x),a.removeEventListener(`error`,S),a.removeEventListener(`close`,C),o)try{g()}catch{}i.closeUnsafe(),r=void 0})),a.readyState>=2?yield*D(f??ol(1006)):(c||=(yield*Ri(e=>{let t=()=>{m?.resume===e&&(m=void 0,a.removeEventListener(`open`,t),e(b))},n=()=>a.removeEventListener(`open`,t);return m={resume:e,cleanup:n},a.addEventListener(`open`,t,{once:!0}),G(()=>{m?.resume===e&&(m=void 0),n()})}).pipe(oi({duration:t?.openTimeout??1e4,orElse:()=>D(new al({reason:new tl({kind:`Timeout`,cause:Error(`timeout waiting for "open"`)})}))})),!0),f===void 0&&d<s&&g(),r=a,i.openUnsafe(),{pull:Ri(e=>u.length>0?e(U(_())):f===void 0?(p=e,G(()=>{p===e&&(p=void 0)})):e(D(f))),upgrade:nl.unsupported})}).pipe(Io(e=>ft(a,e))),s=e=>zi(()=>{let t=r;if(t===void 0)return i.whenOpen(s(e));try{return Xc(e)?t.close(e.code,e.reason):t.send(e),b}catch(e){return D(new al({reason:new el({cause:e})}))}}),c=e=>zi(()=>{let t=r;if(t===void 0)return i.whenOpen(c(e));try{for(let n=0;n<e.length;n++)t.send(e[n]);return b}catch(e){return D(new al({reason:new el({cause:e})}))}}),l=U({write:s,writeAll:c});return U(qc({reader:o,writer:l}))}),fl=65536,pl=de(ll,Hn(Kc)),ml=class extends M()(`effect/workers/Transferable/Collector`){},hl=()=>{let e=[],t=t=>{e.push(...t)},n=()=>e,r=()=>{let t=e;return e=[],t};return ml.of({addAllUnsafe:t,addAll:e=>G(()=>t(e)),readUnsafe:n,read:G(n),clearUnsafe:r,clear:G(r)})},gl=ni([class extends it(`effect/workers/WorkerError/WorkerSpawnError`)({_tag:ot(`WorkerSpawnError`),message:B,cause:yt(O())}){},class extends it(`effect/workers/WorkerError/WorkerSendError`)({_tag:ot(`WorkerSendError`),message:B,cause:yt(O())}){},class extends it(`effect/workers/WorkerError/WorkerReceiveError`)({_tag:ot(`WorkerReceiveError`),message:B,cause:yt(O())}){},class extends it(`effect/workers/WorkerError/WorkerUnknownError`)({_tag:ot(`WorkerUnknownError`),message:B,cause:yt(O())}){}]),_l=(e,t)=>e===void 0?t:`${e}.${t}`,vl=(e,t)=>({"rpc.system.name":`effect_rpc`,"rpc.method":e,...t}),yl=`~effect/rpc/RpcClientError`,bl=class extends it(`effect/rpc/RpcClientError/RpcClientDefect`)({_tag:ot(`RpcClientDefect`),message:B,cause:O()}){},xl=class extends it(yl)({_tag:ot(`RpcClientError`),reason:ni([gl,il,jo,bl])}){[yl]=yl;get message(){return`${this.reason._tag}: ${this.reason.message}`}},Sl=e=>e,Cl={_tag:`Ping`},wl=Jt,Tl,El=e=>(Tl??=new TextDecoder).decode(e),Dl=class extends M()(`effect/rpc/RpcSerialization`){},Ol=Dl.of({contentType:`application/json`,includesFraming:!1,codecFor:wl,makeUnsafe:()=>({decode:e=>{let t=JSON.parse(typeof e==`string`?e:El(e));return Array.isArray(t)?t:[t]},encode:e=>JSON.stringify(e)})}),kl=Ba(Dl)(Ol),Al=e=>zi(()=>{let t=new Set,n=new Map,r=new Map,i=(e,t)=>Zt(r=>{let i=n.get(e);return i||(i=[],n.set(e,i)),i.push([t,r]),b});return K(e((e,t)=>{let n=r.get(e);return n?n(t):i(e,t)},t),e=>({...e,run(e,i){return H(function*(){t.add(e),r.set(e,i);let a=n.get(e);if(a){n.delete(e);for(let[e,t]of a)yield*ze(zi(()=>i(e)),t)}return yield*Pi(ie,()=>(t.delete(e),r.delete(e),b))})}}))}),jl=0,Ml=z(function*(e,t){let n=t.spanPrefix,r=t?.supportsAck??!0,i=t?.disableTracing??!1,a=t?.generateRequestId??(()=>jl++),o=yield*ut(),s=Dt(o,ma),c=new Map,d=!1;yield*Xa(s,cn(e=>(d=!0,f(At(e.id)))));let f=z(function*(e){for(let[t,n]of c)c.delete(t),n._tag===`Queue`?yield*e._tag===`Success`?aa(n.queue):Ha(n.queue,e.cause):n.resume(e)}),p=e=>{let r=ro(e.successSchema),a=_(e);return(o,s)=>{let c=s?.headers?ha(s.headers):_r,l=s?.context??ae();if(!r){let r=t=>h(e,a,t,e.payloadSchema.make(o),c,l,s?.discard??!1);return i?r(void 0):Qt(_l(n,e._tag),{kind:`client`,attributes:vl(e._tag,t.spanAttributes)},r)}let u=g(e,a,e.payloadSchema.make(o),c,s?.streamBufferSize??16,l);return s?.asQueue?u:qn(K(u,he))}},h=(e,n,r,i,o,s,u)=>cn(f=>{if(d)return ei;let p=a(),m=n(e=>t.onFromClient({message:e,context:s,discard:u}),{_tag:`Request`,id:p,tag:e._tag,payload:i,...r?{traceId:r.traceId,spanId:r.spanId,sampled:r.sampled}:{},headers:Za(f.getRef(Il),o)});if(u)return m;let h;return l(Ri(t=>{let n={_tag:`Effect`,rpc:e,context:s,resume(e){t(e),h&&!h.pollUnsafe()&&f.currentDispatcher.scheduleTask(()=>{h.interruptUnsafe(f.id)},0)}};c.set(p,n),h=m.pipe(r?ue(r,{captureStackTrace:!1}):E,Ge(f.context)),h.addObserver(e=>{if(e._tag===`Failure`)return t(e)})}),e=>(c.delete(p),j(Uo(h),ee(p,Array.from(e),s))))}),g=z(function*(e,r,o,s,l,f){if(d)return yield*ei;let p=i?void 0:yield*br(_l(n,e._tag),{kind:`client`,attributes:vl(e._tag,t.spanAttributes)}),m=kr(),h=a(),g=u(m.context,ma),_=yield*Qr(l);return yield*Nr(g,e=>(Ki(_),c.has(h)?(c.delete(h),ee(h,Li(e)?Array.from(Fe(e.cause)):[],f)):b)),c.set(h,{_tag:`Queue`,rpc:e,queue:_,scope:g,context:f}),yield*r(e=>t.onFromClient({message:e,context:f,discard:!1}),{_tag:`Request`,id:h,tag:e._tag,payload:o,...p?{traceId:p.traceId,spanId:p.spanId,sampled:p.sampled}:{},headers:Za(m.getRef(Il),s)}).pipe(p?ue(p,{captureStackTrace:!1}):E,Et(e=>Ha(_,e)),_a,ur(g,{startImmediately:!0})),_}),_=e=>{let t=[];for(let n of e.middlewares.values()){let e=Fi(o,`${n.key}/Client`);e&&t.push(e)}return t.length===0?(e,t)=>e(t):function n(r,i,a=t.length-1){return a===-1?r(i):t[a]({rpc:e,request:i,next(e){return n(r,e,a-1)}})}},ee=(e,n,r)=>Ri(i=>{let a=kr();t.onFromClient({message:{_tag:`Interrupt`,requestId:e,interruptors:n},context:r,discard:!1}).pipe(qi(1e3),Ge(a.context)).addObserver(()=>{i(b)})}),v=e=>{switch(e._tag){case`Chunk`:{let n=e.requestId,i=c.get(n);return!i||i._tag!==`Queue`?b:vr(i.queue,e.values).pipe(r?P(()=>t.onFromClient({message:{_tag:`Ack`,requestId:e.requestId},context:i.context,discard:!1})):E,m(e=>Ha(i.queue,e)))}case`Exit`:{let t=e.requestId,n=c.get(t);return n?(c.delete(t),n._tag===`Effect`?(n.resume(e.exit),b):e.exit._tag===`Success`?aa(n.queue):Ha(n.queue,e.exit.cause)):b}case`Defect`:return f(No(e.defect));case`ClientEnd`:return b}},y;if(t.flatten){let t=new Map;y=function(n,r,i){let a=t.get(n);return a||(a=p(e.requests.get(n)),t.set(n,a)),a(r,i)}}else y={},e.requests.forEach(e=>{ir(y,e._tag,p(e))});return{client:y,write:v}}),Nl=0,Pl=z(function*(e,t){let n=Nl++,{codecFor:r,run:i,send:a,supportsAck:o,supportsTransferables:s}=yield*Ll,c=Fl(r),l=xo(r(O())),u=new Map,d=e=>u.has(e)?(u.delete(e),a(n,{_tag:`Interrupt`,requestId:e})):b,{client:f,write:p}=yield*Ml(e,{...t,supportsAck:o,onFromClient({message:t}){switch(t._tag){case`Request`:{let r=e.requests.get(t.tag),i=s?hl():void 0,o=kr(),l={rpc:r,context:i?fe(o.context,ml,i):o.context,schemas:c(r)};return u.set(t.id,l),l.schemas.encodePayload(t.payload).pipe(ze(l.context),dt,P(e=>a(n,{...t,id:t.id,payload:e,headers:Object.entries(t.headers)},i&&i.readUnsafe())))}case`Ack`:return u.get(t.requestId)?a(n,{_tag:`Ack`,requestId:t.requestId}):b;case`Interrupt`:return d(t.requestId);case`Eof`:return b}}});return yield*i(n,e=>{switch(e._tag){case`Chunk`:{let t=Sl(e.requestId),n=u.get(t);if(!n||bi(n.schemas.decodeChunk))return b;let r=n.schemas.decodeChunk.value;return yr(i=>i(r(e.values).pipe(ze(n.context),dt,P(e=>p({_tag:`Chunk`,clientId:0,requestId:t,values:e})))).pipe(Et(e=>p({_tag:`Exit`,clientId:0,requestId:t,exit:ge(e)}).pipe(j(v(e)?b:co(d(t))))),Ni(e=>!v(e),()=>b)))}case`Exit`:{let t=Sl(e.requestId),n=u.get(t);return n?(u.delete(t),n.schemas.decodeExit(e.exit).pipe(ze(n.context),dt,un({onSuccess:e=>p({_tag:`Exit`,clientId:0,requestId:t,exit:e}),onFailure:e=>p({_tag:`Exit`,clientId:0,requestId:t,exit:ge(e)})}))):b}case`Defect`:return p({_tag:`Defect`,clientId:0,defect:l(e.defect)});case`ClientProtocolError`:{let t=mn(e.error);return $a(Array.from(u.keys()),e=>p({_tag:`Exit`,clientId:0,requestId:e,exit:t}))}default:return b}}).pipe(m(ar),_a,ca),f}),Fl=e=>{let t=new WeakMap;return n=>{let r=t.get(n);if(r!==void 0)return r;let a=Yr(n.successSchema);return r={decodeChunk:sa(a,t=>Cr(e(Wt(t.success)))),encodePayload:te(e(n.payloadSchema)),decodeExit:Cr(e(i(n)))},t.set(n,r),r}},Il=Ao(`effect/rpc/RpcClient/CurrentHeaders`,{defaultValue:()=>_r}),Ll=class extends M()(`effect/rpc/RpcClient/Protocol`){static make=Al},Rl=e=>Ll.make(z(function*(t,n){let r=yield*Kc,i=yield*Dl,a=yield*lr(Vl),o=new Map,s=yield*r.writer,c=i.makeUnsafe(),l=yield*Bl(zi(()=>s.write(c.encode(Cl))),e),u=Lr(e?.onPingTimeout??b,{log:!0,message:`RpcClient onPingTimeout hook failed`}),d,f=e=>$a(n,n=>t(n,e)),p=e=>(d=e,f({_tag:`ClientProtocolError`,error:e})),m=e=>{try{let n=c.decode(e);if(n.length===0)return b;l.onFrame();let r=0;return Do({while:()=>r<n.length,body:()=>{let e=n[r++];if(e._tag===`Pong`)return b;if(Object.hasOwn(e,`requestId`)){let n=e.requestId,r=o.get(n);if(r!==void 0)return e._tag===`Exit`&&o.delete(n),t(r,e)}return f(e)},step:Oo})}catch(e){return f({_tag:`ClientProtocolError`,error:new xl({reason:new bl({message:`Error decoding message`,cause:e})})})}};return yield*zi(()=>{c=i.makeUnsafe(),l.reset();let e=!1;return H(function*(){let{pull:t}=yield*r.reader;for(d=void 0,e=!0,I(a)&&(yield*a.value.onConnect);;){let e=yield*t;for(let t=0;t<e.length;t++)yield*m(e[t])}}).pipe(yi,ts(l.timeout),j(()=>e?u:b),j(()=>D(new al({reason:new $c({cause:Error(`ping timeout`)})}))))}).pipe(I(a)?bn(a.value.onDisconnect):E,$r(t=>{let n=He(t),r=Te(n),i=new xl({reason:r?n.success.reason:new bl({message:`Unknown socket error`,cause:Ht(t)})});return e?.retryTransientErrors&&r&&n.success.reason._tag===`SocketOpenError`?(e.onTransientError?.(i)??b).pipe(Lr({log:!0,message:`RpcClient onTransientError hook failed`})):p(i)}),On(e?.retryPolicy??zl,e=>p(new xl({reason:e.reason}))),Po({module:`RpcClient`,method:`makeProtocolSocket`}),ca),{send(e,t){if(d)return D(d);t._tag===`Request`&&o.set(t.id,e);let n=c.encode(t);return n===void 0?b:dt(s.write(n))},supportsAck:!0,supportsTransferables:!1,codecFor:i.codecFor}})),zl=Gt([Re(500,1.5),Ae(5e3)]),Bl=z(function*(e,t){let n=yield*Dn,r=t?.pingInterval??`5 seconds`,i=Lo(t?.pingTimeout??r),a=n.currentTimeMillisUnsafe(),o=Eo(),s=()=>{a=n.currentTimeMillisUnsafe()};return yield*zi(()=>n.currentTimeMillisUnsafe()-a>i?o.open:e).pipe(En(r),co,$i,_a,ca),{timeout:o.await,reset:()=>{s(),o.closeUnsafe()},onFrame:s}}),Vl=class extends M()(`effect/rpc/RpcClient/ConnectionHooks`){},Hl=e=>{let t=n(e).pipe(Ln(gn));if(I(t))return U(qo(t.value));if(e===void 0)return U(qo(5));let r=Date.parse(e);return Number.isNaN(r)?U(qo(5)):K(Dn,e=>hi(Math.max(r-e.currentTimeMillisUnsafe(),1)))},Ul=at.pipe(h,ve(({output:e})=>me(e)&&e.reason._tag===`StatusCodeError`&&e.reason.response.status===429?Hl(e.reason.response.headers[`retry-after`]):U(qo(1)))),Wl=class extends M()(`effect/observability/OtlpExporter/Flusher`){},Gl=Ei(Wl,()=>{let e=new Set;return{flush:zi(()=>e.size===0?b:$a(e,E,{concurrency:`unbounded`,discard:!0})),register:t=>P(ma,n=>(e.add(t),Xa(n,G(()=>e.delete(t)))))}}),Kl=z(function*(e){let t=yield*ut(),n=Dt(t,Dn),r=Dt(t,ma),i=Yi(va(e.exportInterval),C),a,o=Dt(t,Ai).pipe(Yt(e=>co(e.arrayBuffer)),as(e=>e.response?co(e.response.arrayBuffer):b),Nt,ee(k(xt,!1)),ct({schedule:Ul,times:3})),s=`OTel-OTLP-Exporter-JavaScript-Effect-${e.label}/${Wc()}`,c=ha(e.headers),l=c[`user-agent`],u=Pr(c,`user-agent`,l?`${l} ${s}`:s),d=zo(e.url,{headers:u}),f=[],p=zi(()=>{if(a!==void 0&&n.currentTimeMillisUnsafe()<a||(a!==void 0&&(a=void 0),f.length===0&&(e.maxBatchSize!==`disabled`||e.exportEmpty!==!0)))return b;let t=f;f=[];let[r,i]=e.body(t);return o.execute(nn(d,r)).pipe(j(i),le,wt(!1))}).pipe(m(e=>a===void 0?(a=n.currentTimeMillisUnsafe()+6e4,f=[],ci(`Disabling exporter for 60 seconds`,e)):b),Po({package:`@effect/opentelemetry`,module:e.label})),h=yield*_c(),g=yield*wc(h)();return yield*(yield*Wl).register(p),yield*Xa(r,zi(()=>a===void 0?(g(p),Tc(h)):b).pipe(co,_a,fi(e.shutdownTimeout))),yield*oa(i).pipe(j(Sc(h,p)),P(es),$i,ur(r)),{push(t){a===void 0&&(f.push(t),e.maxBatchSize!==`disabled`&&f.length>=e.maxBatchSize&&g(p))}}}),ql=`window`in globalThis||`importScripts`in globalThis,Jl=e=>({attributes:Xl(Object.entries({"telemetry.sdk.name":`effect`,"telemetry.sdk.language":ql?`webjs`:`nodejs`,"telemetry.sdk.version":Wc(),...e.attributes,...e.serviceName?{"service.name":e.serviceName}:void 0,...e.serviceVersion?{"service.version":e.serviceVersion}:void 0})),droppedAttributesCount:0}),Yl=z(function*(e){let t=yield*$s(dr,dr,`OTEL_RESOURCE_ATTRIBUTES`).pipe(Bs(void 0)),n=e?.serviceName??e?.attributes?.[`service.name`]??(yield*Xs(zr(B),`OTEL_SERVICE_NAME`))??t?.[`service.name`]??(yield*Qs(`OTEL_SERVICE_NAME`)),r=e?.serviceVersion??e?.attributes?.[`service.version`]??(yield*Xs(zr(B),`OTEL_SERVICE_VERSION`))??t?.[`service.version`],i={...t,...e?.attributes};return delete i[`service.name`],delete i[`service.version`],Jl({serviceName:n,serviceVersion:r,attributes:i})},dt),Xl=e=>{let t=[];for(let[n,r]of e)t.push({key:n,value:Zl(r)});return t},Zl=e=>{if(Array.isArray(e))return{arrayValue:{values:e.map(Zl)}};switch(typeof e){case`string`:return{stringValue:e};case`bigint`:return{intValue:String(e)};case`number`:return Number.isInteger(e)?{intValue:e}:{doubleValue:e};case`boolean`:return{boolValue:e};default:return{stringValue:si(e)}}},Ql=class extends M()(`effect/observability/OtlpSerialization`){},$l=Ba(Ql,{traces:e=>oe(e),metrics:e=>oe(e),logs:e=>oe(e)}),eu=z(function*(e){let t=yield*Yl(e.resource),n=yield*Ql,r={name:`effect`,version:Wc()},i=yield*Kl({label:`OtlpTracer`,url:e.url,headers:e.headers,exportInterval:e.exportInterval??qo(5),maxBatchSize:e.maxBatchSize??1e3,body(e){let i={resourceSpans:[{resource:t,scopeSpans:[{scope:r,spans:e}]}]};return[n.traces(i),b]},shutdownTimeout:e.shutdownTimeout??qo(3)});function a(e){e.sampled&&i.push(ru(e))}return xi({span(e){return new nu(e,a)},context:e.context?function(t,n){return n.cache.span===void 0?t[`~effect/Effect/evaluate`](n):e.context(t,n.cache.span)}:void 0})}),tu=de(eu,Hn(Fa),ia(Gl)),nu=class{_tag=`Span`;name;parent;annotations;links;kind;sampled;export;status;_traceId=void 0;_spanId=void 0;_attributes=void 0;_events=void 0;constructor(e,t){this.name=e.name,this.parent=e.parent,this.annotations=e.annotations,this.links=e.links,this.kind=e.kind,this.sampled=e.sampled,this.export=t,this.status={_tag:`Started`,startTime:e.startTime}}get traceId(){return this._traceId??=I(this.parent)?this.parent.value.traceId:la(32)}get spanId(){return this._spanId??=la(16)}get attributes(){return this._attributes??=new Map}get events(){return this._events??=[]}end(e,t){this.status={_tag:`Ended`,startTime:this.status.startTime,endTime:e,exit:t},this.export(this)}attribute(e,t){this.attributes.set(e,t)}event(e,t,n){this.events.push([e,t,n])}addLinks(e){this.links.push(...e)}},ru=e=>{let t=e.status,n=e._attributes===void 0?[]:Xl(e._attributes),r=[];if(e._events!==void 0)for(let t=0;t<e._events.length;t++){let[n,i,a]=e._events[t];r.push({name:n,timeUnixNano:String(i),attributes:a?Xl(Object.entries(a)):[],droppedAttributesCount:0})}let i;if(t.exit._tag===`Success`)i={code:iu.Ok};else if(Tn(t.exit.cause))i={code:iu.Unset},n.push({key:`effect.fiber.interrupted`,value:{boolValue:!0}});else{let e=Vn(t.exit.cause,{includeCauseInStack:!0});i=e.length>0?{code:iu.Error,message:e[0].message}:{code:iu.Ok};for(let n of e)r.push({name:`exception`,timeUnixNano:String(t.endTime),droppedAttributesCount:0,attributes:[{key:`exception.type`,value:{stringValue:n.name}},{key:`exception.message`,value:{stringValue:n.message}},{key:`exception.stacktrace`,value:{stringValue:n.stack??`No stack trace available`}}]})}let a=[];for(let t=0;t<e.links.length;t++){let n=e.links[t];a.push({traceId:n.span.traceId,spanId:n.span.spanId,attributes:Xl(Object.entries(n.attributes)),droppedAttributesCount:0})}return{traceId:e.traceId,spanId:e.spanId,parentSpanId:I(e.parent)?e.parent.value.spanId:void 0,name:e.name,kind:au[e.kind],startTimeUnixNano:String(t.startTime),endTimeUnixNano:String(t.endTime),attributes:n,droppedAttributesCount:0,events:r,droppedEventsCount:0,status:i,links:a,droppedLinksCount:0}},iu={Unset:0,Ok:1,Error:2},au={unspecified:0,internal:1,server:2,client:3,producer:4,consumer:5},ou=class extends Ao(`@p4code/shared/relayTracing/RelayClientTracer`,{defaultValue:()=>L()}){},su=class extends Ao(`@p4code/shared/relayTracing/LocalTracer`,{defaultValue:()=>L()}){},cu=e=>ou.pipe(P(Ua({onNone:()=>e,onSome:t=>Fa.pipe(P(n=>e.pipe(k(Fa,t),k(su,V(n)))))})));function lu(e){let t=e.stack??`${e.name}: ${e.message}`,n=t.split(`
1
+ import{$C as e,$S as t,$T as n,$b as r,$c as i,$l as a,$v as o,$w as s,$x as c,AS as l,AT as u,Ab as d,Av as f,Aw as p,Ax as m,BC as h,BS as g,BT as _,Bu as ee,Bw as v,Bx as y,CC as b,CE as x,CS as S,CT as C,Cb as te,Cw as ne,Cx as w,Cy as re,DC as T,DE as E,DS as ie,DT as ae,Dg as oe,Ds as se,Dv as ce,Dx as le,EC as ue,EE as de,ET as fe,Eb as pe,Eg as me,Ev as he,Ew as ge,Ex as _e,FC as ve,FS as ye,Fv as be,Fw as xe,Fx as Se,GC as Ce,GS as we,GT as Te,Gb as Ee,Gg as De,Gv as Oe,Gw as ke,Gx as D,Gy as O,HC as Ae,HS as je,Hc as Me,Hg as Ne,Hv as Pe,Hw as Fe,Hx as Ie,Hy as Le,IC as Re,IS as ze,IT as Be,Iu as Ve,Iw as He,Ix as Ue,JC as We,JS as Ge,JT as Ke,Jb as qe,Jv as Je,Jw as Ye,Jx as Xe,Jy as Ze,KC as Qe,KS as $e,KT as et,Kb as tt,Kw as nt,Kx as rt,Ky as it,LC as at,LS as k,Lb as ot,Lg as st,Lu as ct,Lv as lt,Lx as ut,MS as dt,MT as ft,Mb as pt,Mw as mt,Mx as ht,My as gt,NS as _t,NT as vt,Nb as yt,Nl as bt,Nu as xt,Nw as St,Nx as Ct,OC as wt,OE as Tt,OS as Et,OT as Dt,Os as Ot,Ov as kt,Ow as At,PS as jt,Pb as Mt,Pu as Nt,Pv as Pt,Px as Ft,QC as It,QS as Lt,QT as Rt,Qb as zt,Ql as Bt,Qv as Vt,Qw as Ht,Qx as Ut,Qy as Wt,RC as Gt,RS as Kt,R_ as qt,Rb as Jt,Rg as A,Ru as Yt,Rw as Xt,Rx as Zt,SC as Qt,SE as $t,SS as en,ST as tn,Sg as nn,Ss as rn,Sv as an,Sw as on,Sx as j,Sy as sn,TC as cn,TE as ln,TS as un,TT as M,Tb as dn,Ts as fn,Tv as pn,Tw as mn,Tx as hn,UC as gn,Uc as _n,Ug as N,Uv as vn,Uw as yn,Ux as bn,Uy as xn,VC as Sn,VT as Cn,V_ as wn,Vw as Tn,Vx as En,WC as Dn,WS as On,WT as kn,Wc as An,Wv as jn,Ww as Mn,Wx as Nn,Wy as Pn,XC as Fn,XS as In,XT as Ln,Xb as Rn,Xl as zn,Xv as Bn,Xw as Vn,Xx as P,Xy as F,YC as Hn,YS as Un,YT as Wn,Yb as Gn,Yl as Kn,Yv as qn,Yw as Jn,Yy as Yn,ZS as Xn,Zb as Zn,Zl as Qn,Zv as $n,Zw as er,Zx as tr,Zy as nr,_C as rr,_E as ir,_S as ar,_s as or,_w as sr,_y as cr,aC as lr,aE as I,aS as ur,ab as dr,ac as fr,as as pr,au as mr,av as hr,aw as gr,ax as _r,ay as vr,bC as yr,bS as br,bT as xr,b_ as Sr,bb as Cr,bg as wr,bs as Tr,bv as Er,bw as Dr,bx as Or,by as kr,cE as L,cS as Ar,cb as R,cc as jr,cu as Mr,cw as Nr,cx as Pr,cy as Fr,dC as Ir,dS as Lr,dT as Rr,db as zr,dc as Br,ds as Vr,du as Hr,dv as Ur,dw as Wr,dy as Gr,eC as Kr,eE as qr,eS as z,eb as Jr,el as Yr,eu as Xr,ew as Zr,ey as Qr,fC as $r,fS as ei,fT as ti,fb as ni,fu as ri,fv as ii,fy as ai,gC as oi,gE as si,gS as ci,gv as li,gw as ui,gy as di,hC as fi,hE as pi,hS as mi,hT as hi,hv as gi,hw as _i,hy as vi,iC as yi,iE as bi,iT as xi,ib as B,ic as Si,is as Ci,iu as wi,iv as Ti,iw as Ei,ix as Di,iy as Oi,jS as ki,ju as Ai,jv as ji,jw as Mi,jx as Ni,kS as Pi,kT as Fi,kv as Ii,kw as Li,kx as Ri,lC as zi,lE as V,lS as H,lT as Bi,lc as Vi,ls as Hi,lu as Ui,lw as Wi,lx as Gi,ly as Ki,mC as qi,mS as Ji,mT as Yi,mw as Xi,my as Zi,nC as Qi,nS as $i,nT as ea,nb as ta,nc as na,nu as ra,nw as ia,ny as aa,oC as oa,oE as sa,oS as ca,oT as la,ob as ua,oc as da,ou as fa,ov as pa,ow as ma,ox as ha,pC as ga,pS as _a,pT as va,pc as ya,ps as ba,pu as xa,pv as Sa,pw as Ca,py as wa,qC as Ta,qS as Ea,qT as Da,qb as Oa,qv as ka,qw as Aa,qx as ja,rC as Ma,rE as Na,rS as Pa,rT as Fa,rb as Ia,rc as La,rs as Ra,ru as za,rw as Ba,rx as Va,ry as Ha,sC as U,sE as Ua,sS as Wa,sT as Ga,sb as Ka,sc as qa,su as Ja,sv as Ya,sw as Xa,sx as Za,tC as Qa,tE as W,tS as $a,tT as eo,tb as to,tc as no,tl as ro,tu as io,tw as ao,tx as oo,ty as so,uC as G,uS as co,uT as lo,uc as uo,us as fo,uu as po,uv as mo,uw as ho,ux as go,vC as _o,vE as vo,vS as yo,vT as bo,vb as xo,vs as So,vv as Co,vw as wo,vx as To,vy as Eo,wC as Do,wE as Oo,wS as ko,wT as Ao,wg as jo,wv as Mo,ww as No,wx as Po,wy as Fo,xC as Io,xS as K,xT as Lo,xb as Ro,xg as zo,xv as Bo,xw as Vo,xx as Ho,xy as Uo,yC as Wo,yE as Go,yS as Ko,yT as qo,y_ as Jo,yb as Yo,ys as Xo,yv as Zo,yw as Qo,yx as $o,yy as es,zS as ts,zT as ns,zb as rs,zg as is,zu as as,zw as os,zx as ss}from"./utils-CBe1bHL7.js";var cs=Ao(`effect/Random`,{defaultValue:()=>({nextIntUnsafe(){return Math.floor(Math.random()*(2**53-1- -(2**53-1)+1))+-(2**53-1)},nextDoubleUnsafe(){return Math.random()}})}),ls=(e,t,n)=>{let r=n*(t-e)+e;if(r!==t||e>=t||!Number.isFinite(t))return r;if(t===0)return-Number.MIN_VALUE;let i=new DataView(new ArrayBuffer(8));i.setFloat64(0,t);let a=i.getBigUint64(0);return i.setBigUint64(0,t>0?a-BigInt(1):a+BigInt(1)),i.getFloat64(0)},us=e=>go(e).replace(/=/g,``).replace(/\+/g,`-`).replace(/\//g,`_`),ds=e=>{let t=e.replace(/[\n\r]/g,``),n=t.length;if(n%4==1)return Cn(new Ga({module:`Base64Url`,kind:`Decode`,input:t,message:`Length should be a multiple of 4, but is ${n}`}));if(!/^[-_A-Z0-9]*?={0,2}$/i.test(t))return Cn(new Ga({module:`Base64Url`,kind:`Decode`,input:t,message:`Invalid input`}));let r=n%4==2?`${t}==`:n%4==3?`${t}=`:t;return r=r.replace(/-/g,`+`).replace(/_/g,`/`),Gi(r)},fs=e=>et(ds(e),e=>ps.decode(e)),ps=new TextDecoder,ms=cs,hs=(e=>cn(t=>U(e(t.getRef(ms)))))(e=>e.nextDoubleUnsafe()),gs=`~effect/PlatformError`,_s=class extends Bi(`BadArgument`){get message(){return`${this.module}.${this.method}${this.description?`: ${this.description}`:``}`}},vs=class extends Bi(`PlatformError`){constructor(e){`cause`in e?super({reason:e,cause:e.cause}):super({reason:e})}[gs]=gs;get message(){return this.reason.message}},ys=e=>new vs(new _s(e));function bs(e){return{_tag:`Value`,value:e}}function xs(e,t){return{_tag:`Record`,keys:e,value:t}}function Ss(e,t){return{_tag:`Array`,length:e,value:t}}var Cs=Ao(`effect/ConfigProvider`,{defaultValue:()=>js()}),ws={...pi,toJSON(){return{_id:`ConfigProvider`}}},Ts=e=>e;function Es(e,t){let n=Object.create(ws);return n.load=e,n.mapInput=t,n}function Ds(e,t){return Es(n=>e(t(n)),n=>Ds(e,e=>n(t(e))))}function Os(e){return Ds(e,Ts)}function ks(e,t){return e===``&&!t?void 0:e}function As(e,t){let n=t?.preserveEmptyStrings===!0,r=Ms(e);return Os(t=>U(Ns(r,e,t,n)))}function js(e){return As(e?.env??{APP_VERSION:`0.9.1`,BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,TSS_INLINE_CSS_ENABLED:`false`,VITE_CLERK_CLI_OAUTH_CLIENT_ID:``,VITE_CLERK_JWT_TEMPLATE:``,VITE_CLERK_PUBLISHABLE_KEY:``,VITE_HOSTED_APP_CHANNEL:``,VITE_HOSTED_APP_URL:``,VITE_HTTP_URL:``,VITE_P4CODE_RELAY_URL:``,VITE_RELAY_OTLP_TRACES_DATASET:``,VITE_RELAY_OTLP_TRACES_TOKEN:``,VITE_RELAY_OTLP_TRACES_URL:``,VITE_WS_URL:``},{preserveEmptyStrings:e?.preserveEmptyStrings})}function Ms(e){let t={};for(let[n,r]of Object.entries(e)){if(r===void 0)continue;let e=n.split(`_`),i=t;for(let t of e){let e=i.children??=Object.create(null);i=e[t]??={}}}return t}function Ns(e,t,n,r){let i=n.map(String).join(`_`),a=ks(Object.hasOwn(t,i)?t[i]:void 0,r),o=Ps(e,n),s=o?.children?Object.keys(o.children):[];return s.length===0?a===void 0?void 0:bs(a):s.every(Be)?Ss(Math.max(...s.map(e=>parseInt(e,10)))+1,a):xs(new Set(s),a)}function Ps(e,t){if(t.length===0)return e;let n=e;for(let e of t)if(n=n?.children?.[String(e)],!n)return;return n}var Fs=`~effect/Config`,Is=class{_tag=`ConfigError`;name=`ConfigError`;cause;constructor(e){this.cause=e}get message(){return this.cause.toString()}toString(){return`ConfigError(${this.message})`}},Ls={...vt({label:`Config`,evaluate(e){return this.parse(e.getRef(Cs))}}),[Fs]:Fs,toJSON(){return{_id:`Config`}}};function Rs(e){let t=Object.create(Ls);return t.evaluator=e,t.parse=t=>tr(e(t,[]),Ar),t}var zs=(e,t,n)=>e.evaluator(t,n),Bs=ln(2,(e,t)=>Rs((n,r)=>en(zs(e,n,r),e=>kn(e)?Da(t):e))),Vs=e=>x(e,`SourceError`),Hs=()=>`<configuration>`,Us=e=>t=>m(t,t=>rt(Xt(t.reasons.map(e)))),Ws=(e,t)=>e.load(t).pipe(Us(e=>ke(e)?nt(e.error).annotate(er(e)):e),en(n=>({provider:e,path:t,node:n,toString:Hs}))),Gs=(e,t)=>Ws(e.provider,[...e.path,t]),Ks=(e,t)=>qe(Rn,e,new Zn(Va(e=>t(e)),oo())),qs=e=>{switch(e._tag){case`Union`:return e.types.every(qs);case`Objects`:case`Arrays`:case`Suspend`:return!1;default:return!0}},Js=(e,t)=>{switch(e._tag){case`Objects`:return t?._tag===`Record`;case`Arrays`:return t?._tag===`Array`;case`Union`:return e.types.some(e=>Js(e,t));case`Suspend`:return Js(e.thunk(),t);default:return t?.value!==void 0}},Ys=Tt(e=>{let t=new WeakSet,n=Oa(e=>{switch(t.add(e),e._tag){case`Objects`:{let t=e.indexSignatures.map(e=>Ee(e.parameter)),r=z(function*(n){if(n.node?._tag!==`Record`)return;let r=n.node,i=new Set;for(let t of e.propertySignatures)typeof t.name==`string`&&i.add(t.name);if(t.length>0)for(let e of r.keys)t.some(t=>t(e))&&i.add(e);let a={};for(let e of i){let t=yield*Gs(n,e);t.node!==void 0&&ir(a,e,t)}return a});return Ks(e.recur(n,e=>e),r)}case`Arrays`:{let t=z(function*(e){if(e.node?._tag!==`Array`)return;let t=[];for(let n=0;n<e.node.length;n++)t.push(yield*Gs(e,n));return t});return Ks(e.recur(n),t)}case`Union`:for(let t of e.types)n(t);if(!qs(e))return e.recur(n);break;case`Suspend`:{let r=e.thunk();return t.has(r)||n(r),e.recur(n)}case`Declaration`:case`Any`:throw new globalThis.Error(`Config.schema does not support opaque StringTree encodings`,{cause:e})}return Ks(e,e=>U(e.node?.value))});return n(e)});function Xs(e,t){let n=rs(e),r=Gn(n.ast),i=tt(pt(Ys(n.ast))),a=typeof t==`string`?[t]:t??[];return Rs((e,t)=>{let n=[...t,...a];return Ws(e,n).pipe(tr(e=>i(e).pipe(en(Da),ht(t=>{let i=new Is(new Ia(n.length>0?new Di(n,t):t));return Js(r,e.node)?D(i):U(Cn(i))}))),Us(e=>Mn(e)&&Vs(e.defect)?Aa(new Is(e.defect)).annotate(er(e)):e))})}var Zs=e=>$t(e)||globalThis.Array.isArray(e);function Qs(e){return Xs(B,e)}function $s(e,t,n,i){let a=Zs(n),o=ta(e,t),s=zt(a?i:n),c=B.pipe(Yo(rs(o),{decode:s.decode,encode:r(oo({strict:!1}),s.encode)}));return Xs(ni([o,c]),a?n:void 0)}var ec=2**48-1,tc=`0123456789ABCDEFGHJKMNPQRSTVWXYZ`,nc=(e,t)=>{if(t.length!==10)throw Error(`ULID randomness must be exactly 10 bytes, received ${t.length}`);let n=Math.min(Math.max(0,Math.trunc(e)),ec),r=``;for(let e=45;e>=0;e-=5)r+=tc[Math.floor(n/2**e)&31];let i=0,a=0;for(let e of t){for(i=i<<8|e,a+=8;a>=5;)a-=5,r+=tc[i>>>a&31];i&=(1<<a)-1}return r},rc=e=>e.toString(16).padStart(2,`0`),ic=e=>[e.subarray(0,4),e.subarray(4,6),e.subarray(6,8),e.subarray(8,10),e.subarray(10,16)].map(e=>Array.from(e,rc).join(``)).join(`-`),ac=()=>globalThis.crypto.getRandomValues(new Uint8Array(16));function oc(e=ac()){return e[6]=e[6]&15|64,e[8]=e[8]&63|128,e}var sc=2**48-1;function cc(e,t=ac()){let n=Math.min(Math.max(0,Math.trunc(e)),sc);return t[0]=Math.floor(n/2**40),t[1]=Math.floor(n/2**32)&255,t[2]=Math.floor(n/2**24)&255,t[3]=Math.floor(n/2**16)&255,t[4]=Math.floor(n/256)&255,t[5]=n&255,t[6]=t[6]&15|112,t[8]=t[8]&63|128,t}var lc=`~effect/Crypto`,uc=M(`effect/Crypto`),dc=e=>{let t=e.randomBytes,n=e=>K(fc(`randomBytes`,e),t),r=e=>(e[0]&31)*2**48+e[1]*2**40+e[2]*2**32+e[3]*2**24+e[4]*2**16+e[5]*256+e[6],i=()=>r(t(7))/2**53,a=()=>{for(;;){let e=t(7),n=r(e);if(!(e[0]&32))return n+-(2**53-1);if(n<2**53-1)return n+1}};return uc.of({[lc]:lc,randomBytes:n,nextDoubleUnsafe:i,nextIntUnsafe:a,digest:e.digest,random:G(()=>i()),randomBoolean:G(()=>i()>.5),randomInt:G(()=>a()),randomBetween:(e,t)=>G(()=>ls(e,t,i())),randomIntBetween(e,t,n){let r=n?.halfOpen===!0?0:1;return G(()=>{let n=Math.ceil(e),a=Math.floor(t);return Math.floor(i()*(a-n+r))+n})},randomShuffle:e=>G(()=>{let t=Array.from(e);for(let e=t.length-1;e>=1;--e){let n=Math.min(e,Math.floor(i()*(e+1))),r=t[e];t[e]=t[n],t[n]=r}return t}),randomUUIDv4:e=>G(()=>{let n=oc(t(16));return e?.format===`bytes`?n:ic(n)}),randomUUIDv7:e=>Ue(n=>{let r=cc(n.currentTimeMillisUnsafe(),t(16));return U(e?.format===`bytes`?r:ic(r))}),randomULID:Ue(e=>U(nc(e.currentTimeMillisUnsafe(),t(10))))})},fc=(e,t)=>Number.isSafeInteger(t)&&t>=0?U(t):D(ys({module:`Crypto`,method:e,description:`size must be a non-negative safe integer`})),pc=`~effect/FiberSet`,mc=e=>Go(e,pc),hc={[pc]:pc,[Symbol.iterator](){return this.state._tag===`Closed`?ns():this.state.backing[Symbol.iterator]()},...pi,toJSON(){return{_id:`FiberSet`,state:this.state}}},gc=(e,t)=>{let n=Object.create(hc);return n.state={_tag:`Open`,backing:e},n.deferred=t,n},_c=()=>To(G(()=>gc(new Set,on())),e=>zi(()=>{let t=e.state;if(t._tag===`Closed`)return b;e.state={_tag:`Closed`};let n=t.backing;return sn(n).pipe(Qo(e.deferred))})),vc=-1,yc=ti(lo(xe,Rr(vc))),bc=ln(e=>mc(e[0]),(e,t,n)=>{if(e.state._tag===`Closed`){t.interruptUnsafe(vc);return}e.state.backing.has(t)||(e.state.backing.add(t),t.addObserver(r=>{e.state._tag!==`Closed`&&(e.state.backing.delete(t),Li(r)&&(n?.propagateInterruption===!0?!yc(r.cause):!Tn(r.cause))&&ui(e.deferred,r))}))}),xc=function(){let e;return()=>(e===void 0&&(e=Ea(ei)),e)}(),Sc=function(){let e=arguments[0];if(!Ji(arguments[1])){let t=arguments[1];return n=>Cc(e,n,t)}return Cc(e,arguments[1],arguments[2])},Cc=(e,t,n)=>cn(r=>{if(e.state._tag===`Closed`)return G(xc);let i=s(r,t,n?.startImmediately??!0,!0);return bc(e,i,n),U(i)}),wc=e=>()=>K(ut(),t=>{let n=Ge(t);return(t,r)=>{if(e.state._tag===`Closed`)return xc();let i=n(t,r);return bc(e,i,r),i}}),Tc=e=>Do({while:()=>e.state._tag===`Open`&&e.state.backing.size>0,body:()=>es(_(e)),step:Oo}),Ec=`~effect/ManagedRuntime`,Dc=(e,n)=>{let r=n?.memoMap??It(),i=Ca(`sequential`),a=Wr(i,`sequential`),o=Wr(i,`parallel`),s={onFiberStart:Fo(o)},c=e=>e?{...e,onFiberStart:e.onFiberStart?t=>{s.onFiberStart(t),e.onFiberStart(t)}:s.onFiberStart}:s,l,u=cn(t=>(l||=Ea(Ir(We(e,r,a),e=>G(()=>{d.cachedContext=e})),{...s,scheduler:t.cache.scheduler}),Ut(es(l)))),d={[Ec]:Ec,memoMap:r,scope:i,contextEffect:u,cachedContext:void 0,context(){return d.cachedContext===void 0?Un(d.contextEffect):Promise.resolve(d.cachedContext)},dispose(){return Un(d.disposeEffect)},[Symbol.asyncDispose](){return d.dispose()},disposeEffect:cn(e=>{for(let t=e;t;t=t._parent)eo(o,t);return d.contextEffect=Ie(`ManagedRuntime disposed`),d.cachedContext=void 0,Wi(d.scope,mt)}),runFork(e,t){return d.cachedContext===void 0?Ea(Oc(d,e),c(t)):Ge(d.cachedContext)(e,c(t))},runCallback(e,t){return d.cachedContext===void 0?we(Oc(d,e),c(t)):$e(d.cachedContext)(e,c(t))},runSyncExit(e){return d.cachedContext===void 0?Kr(Oc(d,e)):Qa(d.cachedContext)(e)},runSync(e){return d.cachedContext===void 0?t(Oc(d,e)):Qi(d.cachedContext)(e)},runPromiseExit(e,t){return d.cachedContext===void 0?In(Oc(d,e),c(t)):Xn(d.cachedContext)(e,c(t))},runPromise(e,t){return d.cachedContext===void 0?Un(Oc(d,e),c(t)):Lt(d.cachedContext)(e,c(t))}};return d};function Oc(e,t){return P(e.contextEffect,e=>ze(t,e))}var kc={"~effect/Ref":{_A:E},...pi,toJSON(){return{_id:`Ref`,ref:this.ref}}},Ac=e=>{let t=Object.create(kc);return t.ref=di(e),t},q=e=>G(()=>Ac(e)),J=e=>G(()=>e.ref.current),Y=ln(2,(e,t)=>G(()=>cr(e.ref,t))),jc=ln(2,(e,t)=>G(()=>{let n=e.ref.current;return e.ref.current=t,n})),Mc=ln(2,(e,t)=>G(()=>{let[n,r]=t(e.ref.current);return e.ref.current=r,n})),Nc=ln(2,(e,t)=>G(()=>{e.ref.current=t(e.ref.current)})),Pc=ln(2,(e,t)=>G(()=>e.ref.current=t(e.ref.current))),Fc=`~effect/SynchronizedRef`,Ic={...pi,[Fc]:Fc,toJSON(){return{_id:`SynchronizedRef`,value:this.backing.ref.current}}},Lc=e=>{let t=Object.create(Ic);return t.semaphore=o(1),t.backing=Ac(e),t},Rc=e=>G(()=>Lc(e)),zc=e=>e.backing.ref.current,Bc=e=>G(()=>zc(e)),Vc=ln(2,(e,t)=>e.semaphore.withPermit(zi(()=>{let n=zc(e);return K(t(n),([t,n])=>(e.backing.ref.current=n,t))}))),Hc=ln(2,(e,t)=>e.semaphore.withPermit(Y(e.backing,t))),Uc=`4.0.4`,Wc=()=>Uc,Gc=`~effect/socket/Socket`,Kc=M(`effect/socket/Socket`),qc=e=>Kc.of({[Gc]:Gc,reader:e.reader,writer:e.writer}),Jc=new TextEncoder,Yc=`~effect/socket/Socket/CloseEvent`,Xc=e=>Go(e,Yc),Zc=`~effect/socket/Socket/SocketError`,Qc=e=>Go(e,Zc),$c=class extends it(`effect/socket/Socket/SocketReadError`)({_tag:ot(`SocketReadError`),cause:O()}){message=`An error occurred during Read`},el=class extends it(`effect/socket/Socket/SocketWriteError`)({_tag:ot(`SocketWriteError`),cause:O()}){message=`An error occurred during Write`},tl=class extends it(`effect/socket/Socket/SocketOpenError`)({_tag:ot(`SocketOpenError`),kind:F([`Unknown`,`Timeout`]),cause:O()}){get message(){return this.kind===`Timeout`?`timeout waiting for "open"`:`An error occurred during Open`}},nl=class e extends it(`effect/socket/Socket/SocketUpgradeError`)({_tag:ot(`SocketUpgradeError`),cause:yt(O())}){static unsupported=()=>D(new al({reason:new e({})}));get message(){return this.cause===void 0?`Socket does not support TLS upgrade`:`An error occurred during TLS upgrade`}},rl=class extends it(`effect/socket/Socket/SocketCloseError`)({_tag:ot(`SocketCloseError`),code:Ze,closeReason:yt(B)}){get message(){return this.closeReason?`${this.code}: ${this.closeReason}`:`${this.code}`}},il=ni([$c,el,tl,nl,rl]),al=class extends R(Zc)(`SocketError`,{_tag:ot(`SocketError`),reason:il}){constructor(e){`cause`in e.reason?super({...e,cause:e.reason.cause}):super(e)}[Zc]=Zc;static is(e){return Qc(e)}message=this.reason.message},ol=(e,t)=>new al({reason:new rl({code:e,closeReason:t})}),sl=class extends M()(`@effect/platform/Socket/WebSocketConstructor`){},cl=Ba(sl)((e,t)=>{if(t!==void 0&&typeof t!=`string`&&!Array.isArray(t))throw TypeError(`WebSocket client options are not supported by the global WebSocket constructor`);return new globalThis.WebSocket(e,t)}),ll=(e,t)=>sl.use(n=>dl(To((typeof e==`string`?U(e):e).pipe(K(e=>n(e,t?.headers===void 0?t?.protocols:{protocols:t.protocols,headers:t.headers}))),e=>G(()=>e.close(1e3))),t)),ul=e=>`pause`in e&&typeof e.pause==`function`,dl=(e,t)=>cn(n=>{let r,i=Eo(!1),a=n.context,o=H(function*(){let n=yield*Ma,a=yield*Xi(e,n);`binaryType`in a&&(a.binaryType=`arraybuffer`);let o=ul(a),s=t?.highWaterMark??(o?fl:void 0),c=a.readyState===1,l=o&&`isPaused`in a&&a.isPaused===!0,u=[],d=0,f,p,m;function h(){o&&!l&&(a.pause(),l=!0)}function g(){o&&l&&(a.resume(),l=!1)}function _(){let e=u;return u=[],d=0,f===void 0&&g(),e}function ee(){if(p===void 0||u.length===0)return;let e=p;p=void 0,e(U(_()))}function v(e){u.push(e),s!==void 0&&(d+=typeof e==`string`?Jc.encode(e).byteLength:e.byteLength),p!==void 0&&ee(),o&&d>=s?h():!o&&!p&&s!==void 0&&d>s&&y(new al({reason:new $c({cause:Error(`Socket highWaterMark of ${s} bytes exceeded`)})}))}function y(e){if(f===void 0&&(f=e),m!==void 0){let{cleanup:e,resume:t}=m;m=void 0,e(),t(D(f))}if(p!==void 0){let e=p;p=void 0,e(u.length>0?U(_()):D(f))}}function x(e){let t=e.data;if(typeof Blob<`u`&&t instanceof Blob){t.arrayBuffer().then(e=>v(new Uint8Array(e)),e=>{y(new al({reason:new $c({cause:e})}))});return}v(t instanceof ArrayBuffer?new Uint8Array(t):t)}function S(e){y(new al({reason:c?new $c({cause:e}):new tl({kind:`Unknown`,cause:e})}))}function C(e){y(ol(typeof e.code==`number`?e.code:1006,e.reason))}return a.addEventListener(`message`,x),a.addEventListener(`error`,S,{once:!0}),a.addEventListener(`close`,C,{once:!0}),yield*Xa(n,G(()=>{if(y(ol(1006)),a.removeEventListener(`message`,x),a.removeEventListener(`error`,S),a.removeEventListener(`close`,C),o)try{g()}catch{}i.closeUnsafe(),r=void 0})),a.readyState>=2?yield*D(f??ol(1006)):(c||=(yield*Ri(e=>{let t=()=>{m?.resume===e&&(m=void 0,a.removeEventListener(`open`,t),e(b))},n=()=>a.removeEventListener(`open`,t);return m={resume:e,cleanup:n},a.addEventListener(`open`,t,{once:!0}),G(()=>{m?.resume===e&&(m=void 0),n()})}).pipe(oi({duration:t?.openTimeout??1e4,orElse:()=>D(new al({reason:new tl({kind:`Timeout`,cause:Error(`timeout waiting for "open"`)})}))})),!0),f===void 0&&d<s&&g(),r=a,i.openUnsafe(),{pull:Ri(e=>u.length>0?e(U(_())):f===void 0?(p=e,G(()=>{p===e&&(p=void 0)})):e(D(f))),upgrade:nl.unsupported})}).pipe(Io(e=>ft(a,e))),s=e=>zi(()=>{let t=r;if(t===void 0)return i.whenOpen(s(e));try{return Xc(e)?t.close(e.code,e.reason):t.send(e),b}catch(e){return D(new al({reason:new el({cause:e})}))}}),c=e=>zi(()=>{let t=r;if(t===void 0)return i.whenOpen(c(e));try{for(let n=0;n<e.length;n++)t.send(e[n]);return b}catch(e){return D(new al({reason:new el({cause:e})}))}}),l=U({write:s,writeAll:c});return U(qc({reader:o,writer:l}))}),fl=65536,pl=de(ll,Hn(Kc)),ml=class extends M()(`effect/workers/Transferable/Collector`){},hl=()=>{let e=[],t=t=>{e.push(...t)},n=()=>e,r=()=>{let t=e;return e=[],t};return ml.of({addAllUnsafe:t,addAll:e=>G(()=>t(e)),readUnsafe:n,read:G(n),clearUnsafe:r,clear:G(r)})},gl=ni([class extends it(`effect/workers/WorkerError/WorkerSpawnError`)({_tag:ot(`WorkerSpawnError`),message:B,cause:yt(O())}){},class extends it(`effect/workers/WorkerError/WorkerSendError`)({_tag:ot(`WorkerSendError`),message:B,cause:yt(O())}){},class extends it(`effect/workers/WorkerError/WorkerReceiveError`)({_tag:ot(`WorkerReceiveError`),message:B,cause:yt(O())}){},class extends it(`effect/workers/WorkerError/WorkerUnknownError`)({_tag:ot(`WorkerUnknownError`),message:B,cause:yt(O())}){}]),_l=(e,t)=>e===void 0?t:`${e}.${t}`,vl=(e,t)=>({"rpc.system.name":`effect_rpc`,"rpc.method":e,...t}),yl=`~effect/rpc/RpcClientError`,bl=class extends it(`effect/rpc/RpcClientError/RpcClientDefect`)({_tag:ot(`RpcClientDefect`),message:B,cause:O()}){},xl=class extends it(yl)({_tag:ot(`RpcClientError`),reason:ni([gl,il,jo,bl])}){[yl]=yl;get message(){return`${this.reason._tag}: ${this.reason.message}`}},Sl=e=>e,Cl={_tag:`Ping`},wl=Jt,Tl,El=e=>(Tl??=new TextDecoder).decode(e),Dl=class extends M()(`effect/rpc/RpcSerialization`){},Ol=Dl.of({contentType:`application/json`,includesFraming:!1,codecFor:wl,makeUnsafe:()=>({decode:e=>{let t=JSON.parse(typeof e==`string`?e:El(e));return Array.isArray(t)?t:[t]},encode:e=>JSON.stringify(e)})}),kl=Ba(Dl)(Ol),Al=e=>zi(()=>{let t=new Set,n=new Map,r=new Map,i=(e,t)=>Zt(r=>{let i=n.get(e);return i||(i=[],n.set(e,i)),i.push([t,r]),b});return K(e((e,t)=>{let n=r.get(e);return n?n(t):i(e,t)},t),e=>({...e,run(e,i){return H(function*(){t.add(e),r.set(e,i);let a=n.get(e);if(a){n.delete(e);for(let[e,t]of a)yield*ze(zi(()=>i(e)),t)}return yield*Pi(ie,()=>(t.delete(e),r.delete(e),b))})}}))}),jl=0,Ml=z(function*(e,t){let n=t.spanPrefix,r=t?.supportsAck??!0,i=t?.disableTracing??!1,a=t?.generateRequestId??(()=>jl++),o=yield*ut(),s=Dt(o,ma),c=new Map,d=!1;yield*Xa(s,cn(e=>(d=!0,f(At(e.id)))));let f=z(function*(e){for(let[t,n]of c)c.delete(t),n._tag===`Queue`?yield*e._tag===`Success`?aa(n.queue):Ha(n.queue,e.cause):n.resume(e)}),p=e=>{let r=ro(e.successSchema),a=_(e);return(o,s)=>{let c=s?.headers?ha(s.headers):_r,l=s?.context??ae();if(!r){let r=t=>h(e,a,t,e.payloadSchema.make(o),c,l,s?.discard??!1);return i?r(void 0):Qt(_l(n,e._tag),{kind:`client`,attributes:vl(e._tag,t.spanAttributes)},r)}let u=g(e,a,e.payloadSchema.make(o),c,s?.streamBufferSize??16,l);return s?.asQueue?u:qn(K(u,he))}},h=(e,n,r,i,o,s,u)=>cn(f=>{if(d)return ei;let p=a(),m=n(e=>t.onFromClient({message:e,context:s,discard:u}),{_tag:`Request`,id:p,tag:e._tag,payload:i,...r?{traceId:r.traceId,spanId:r.spanId,sampled:r.sampled}:{},headers:Za(f.getRef(Il),o)});if(u)return m;let h;return l(Ri(t=>{let n={_tag:`Effect`,rpc:e,context:s,resume(e){t(e),h&&!h.pollUnsafe()&&f.currentDispatcher.scheduleTask(()=>{h.interruptUnsafe(f.id)},0)}};c.set(p,n),h=m.pipe(r?ue(r,{captureStackTrace:!1}):E,Ge(f.context)),h.addObserver(e=>{if(e._tag===`Failure`)return t(e)})}),e=>(c.delete(p),j(Uo(h),ee(p,Array.from(e),s))))}),g=z(function*(e,r,o,s,l,f){if(d)return yield*ei;let p=i?void 0:yield*br(_l(n,e._tag),{kind:`client`,attributes:vl(e._tag,t.spanAttributes)}),m=kr(),h=a(),g=u(m.context,ma),_=yield*Qr(l);return yield*Nr(g,e=>(Ki(_),c.has(h)?(c.delete(h),ee(h,Li(e)?Array.from(Fe(e.cause)):[],f)):b)),c.set(h,{_tag:`Queue`,rpc:e,queue:_,scope:g,context:f}),yield*r(e=>t.onFromClient({message:e,context:f,discard:!1}),{_tag:`Request`,id:h,tag:e._tag,payload:o,...p?{traceId:p.traceId,spanId:p.spanId,sampled:p.sampled}:{},headers:Za(m.getRef(Il),s)}).pipe(p?ue(p,{captureStackTrace:!1}):E,Et(e=>Ha(_,e)),_a,ur(g,{startImmediately:!0})),_}),_=e=>{let t=[];for(let n of e.middlewares.values()){let e=Fi(o,`${n.key}/Client`);e&&t.push(e)}return t.length===0?(e,t)=>e(t):function n(r,i,a=t.length-1){return a===-1?r(i):t[a]({rpc:e,request:i,next(e){return n(r,e,a-1)}})}},ee=(e,n,r)=>Ri(i=>{let a=kr();t.onFromClient({message:{_tag:`Interrupt`,requestId:e,interruptors:n},context:r,discard:!1}).pipe(qi(1e3),Ge(a.context)).addObserver(()=>{i(b)})}),v=e=>{switch(e._tag){case`Chunk`:{let n=e.requestId,i=c.get(n);return!i||i._tag!==`Queue`?b:vr(i.queue,e.values).pipe(r?P(()=>t.onFromClient({message:{_tag:`Ack`,requestId:e.requestId},context:i.context,discard:!1})):E,m(e=>Ha(i.queue,e)))}case`Exit`:{let t=e.requestId,n=c.get(t);return n?(c.delete(t),n._tag===`Effect`?(n.resume(e.exit),b):e.exit._tag===`Success`?aa(n.queue):Ha(n.queue,e.exit.cause)):b}case`Defect`:return f(No(e.defect));case`ClientEnd`:return b}},y;if(t.flatten){let t=new Map;y=function(n,r,i){let a=t.get(n);return a||(a=p(e.requests.get(n)),t.set(n,a)),a(r,i)}}else y={},e.requests.forEach(e=>{ir(y,e._tag,p(e))});return{client:y,write:v}}),Nl=0,Pl=z(function*(e,t){let n=Nl++,{codecFor:r,run:i,send:a,supportsAck:o,supportsTransferables:s}=yield*Ll,c=Fl(r),l=xo(r(O())),u=new Map,d=e=>u.has(e)?(u.delete(e),a(n,{_tag:`Interrupt`,requestId:e})):b,{client:f,write:p}=yield*Ml(e,{...t,supportsAck:o,onFromClient({message:t}){switch(t._tag){case`Request`:{let r=e.requests.get(t.tag),i=s?hl():void 0,o=kr(),l={rpc:r,context:i?fe(o.context,ml,i):o.context,schemas:c(r)};return u.set(t.id,l),l.schemas.encodePayload(t.payload).pipe(ze(l.context),dt,P(e=>a(n,{...t,id:t.id,payload:e,headers:Object.entries(t.headers)},i&&i.readUnsafe())))}case`Ack`:return u.get(t.requestId)?a(n,{_tag:`Ack`,requestId:t.requestId}):b;case`Interrupt`:return d(t.requestId);case`Eof`:return b}}});return yield*i(n,e=>{switch(e._tag){case`Chunk`:{let t=Sl(e.requestId),n=u.get(t);if(!n||bi(n.schemas.decodeChunk))return b;let r=n.schemas.decodeChunk.value;return yr(i=>i(r(e.values).pipe(ze(n.context),dt,P(e=>p({_tag:`Chunk`,clientId:0,requestId:t,values:e})))).pipe(Et(e=>p({_tag:`Exit`,clientId:0,requestId:t,exit:ge(e)}).pipe(j(v(e)?b:co(d(t))))),Ni(e=>!v(e),()=>b)))}case`Exit`:{let t=Sl(e.requestId),n=u.get(t);return n?(u.delete(t),n.schemas.decodeExit(e.exit).pipe(ze(n.context),dt,un({onSuccess:e=>p({_tag:`Exit`,clientId:0,requestId:t,exit:e}),onFailure:e=>p({_tag:`Exit`,clientId:0,requestId:t,exit:ge(e)})}))):b}case`Defect`:return p({_tag:`Defect`,clientId:0,defect:l(e.defect)});case`ClientProtocolError`:{let t=mn(e.error);return $a(Array.from(u.keys()),e=>p({_tag:`Exit`,clientId:0,requestId:e,exit:t}))}default:return b}}).pipe(m(ar),_a,ca),f}),Fl=e=>{let t=new WeakMap;return n=>{let r=t.get(n);if(r!==void 0)return r;let a=Yr(n.successSchema);return r={decodeChunk:sa(a,t=>Cr(e(Wt(t.success)))),encodePayload:te(e(n.payloadSchema)),decodeExit:Cr(e(i(n)))},t.set(n,r),r}},Il=Ao(`effect/rpc/RpcClient/CurrentHeaders`,{defaultValue:()=>_r}),Ll=class extends M()(`effect/rpc/RpcClient/Protocol`){static make=Al},Rl=e=>Ll.make(z(function*(t,n){let r=yield*Kc,i=yield*Dl,a=yield*lr(Vl),o=new Map,s=yield*r.writer,c=i.makeUnsafe(),l=yield*Bl(zi(()=>s.write(c.encode(Cl))),e),u=Lr(e?.onPingTimeout??b,{log:!0,message:`RpcClient onPingTimeout hook failed`}),d,f=e=>$a(n,n=>t(n,e)),p=e=>(d=e,f({_tag:`ClientProtocolError`,error:e})),m=e=>{try{let n=c.decode(e);if(n.length===0)return b;l.onFrame();let r=0;return Do({while:()=>r<n.length,body:()=>{let e=n[r++];if(e._tag===`Pong`)return b;if(Object.hasOwn(e,`requestId`)){let n=e.requestId,r=o.get(n);if(r!==void 0)return e._tag===`Exit`&&o.delete(n),t(r,e)}return f(e)},step:Oo})}catch(e){return f({_tag:`ClientProtocolError`,error:new xl({reason:new bl({message:`Error decoding message`,cause:e})})})}};return yield*zi(()=>{c=i.makeUnsafe(),l.reset();let e=!1;return H(function*(){let{pull:t}=yield*r.reader;for(d=void 0,e=!0,I(a)&&(yield*a.value.onConnect);;){let e=yield*t;for(let t=0;t<e.length;t++)yield*m(e[t])}}).pipe(yi,ts(l.timeout),j(()=>e?u:b),j(()=>D(new al({reason:new $c({cause:Error(`ping timeout`)})}))))}).pipe(I(a)?bn(a.value.onDisconnect):E,$r(t=>{let n=He(t),r=Te(n),i=new xl({reason:r?n.success.reason:new bl({message:`Unknown socket error`,cause:Ht(t)})});return e?.retryTransientErrors&&r&&n.success.reason._tag===`SocketOpenError`?(e.onTransientError?.(i)??b).pipe(Lr({log:!0,message:`RpcClient onTransientError hook failed`})):p(i)}),On(e?.retryPolicy??zl,e=>p(new xl({reason:e.reason}))),Po({module:`RpcClient`,method:`makeProtocolSocket`}),ca),{send(e,t){if(d)return D(d);t._tag===`Request`&&o.set(t.id,e);let n=c.encode(t);return n===void 0?b:dt(s.write(n))},supportsAck:!0,supportsTransferables:!1,codecFor:i.codecFor}})),zl=Gt([Re(500,1.5),Ae(5e3)]),Bl=z(function*(e,t){let n=yield*Dn,r=t?.pingInterval??`5 seconds`,i=Lo(t?.pingTimeout??r),a=n.currentTimeMillisUnsafe(),o=Eo(),s=()=>{a=n.currentTimeMillisUnsafe()};return yield*zi(()=>n.currentTimeMillisUnsafe()-a>i?o.open:e).pipe(En(r),co,$i,_a,ca),{timeout:o.await,reset:()=>{s(),o.closeUnsafe()},onFrame:s}}),Vl=class extends M()(`effect/rpc/RpcClient/ConnectionHooks`){},Hl=e=>{let t=n(e).pipe(Ln(gn));if(I(t))return U(qo(t.value));if(e===void 0)return U(qo(5));let r=Date.parse(e);return Number.isNaN(r)?U(qo(5)):K(Dn,e=>hi(Math.max(r-e.currentTimeMillisUnsafe(),1)))},Ul=at.pipe(h,ve(({output:e})=>me(e)&&e.reason._tag===`StatusCodeError`&&e.reason.response.status===429?Hl(e.reason.response.headers[`retry-after`]):U(qo(1)))),Wl=class extends M()(`effect/observability/OtlpExporter/Flusher`){},Gl=Ei(Wl,()=>{let e=new Set;return{flush:zi(()=>e.size===0?b:$a(e,E,{concurrency:`unbounded`,discard:!0})),register:t=>P(ma,n=>(e.add(t),Xa(n,G(()=>e.delete(t)))))}}),Kl=z(function*(e){let t=yield*ut(),n=Dt(t,Dn),r=Dt(t,ma),i=Yi(va(e.exportInterval),C),a,o=Dt(t,Ai).pipe(Yt(e=>co(e.arrayBuffer)),as(e=>e.response?co(e.response.arrayBuffer):b),Nt,ee(k(xt,!1)),ct({schedule:Ul,times:3})),s=`OTel-OTLP-Exporter-JavaScript-Effect-${e.label}/${Wc()}`,c=ha(e.headers),l=c[`user-agent`],u=Pr(c,`user-agent`,l?`${l} ${s}`:s),d=zo(e.url,{headers:u}),f=[],p=zi(()=>{if(a!==void 0&&n.currentTimeMillisUnsafe()<a||(a!==void 0&&(a=void 0),f.length===0&&(e.maxBatchSize!==`disabled`||e.exportEmpty!==!0)))return b;let t=f;f=[];let[r,i]=e.body(t);return o.execute(nn(d,r)).pipe(j(i),le,wt(!1))}).pipe(m(e=>a===void 0?(a=n.currentTimeMillisUnsafe()+6e4,f=[],ci(`Disabling exporter for 60 seconds`,e)):b),Po({package:`@effect/opentelemetry`,module:e.label})),h=yield*_c(),g=yield*wc(h)();return yield*(yield*Wl).register(p),yield*Xa(r,zi(()=>a===void 0?(g(p),Tc(h)):b).pipe(co,_a,fi(e.shutdownTimeout))),yield*oa(i).pipe(j(Sc(h,p)),P(es),$i,ur(r)),{push(t){a===void 0&&(f.push(t),e.maxBatchSize!==`disabled`&&f.length>=e.maxBatchSize&&g(p))}}}),ql=`window`in globalThis||`importScripts`in globalThis,Jl=e=>({attributes:Xl(Object.entries({"telemetry.sdk.name":`effect`,"telemetry.sdk.language":ql?`webjs`:`nodejs`,"telemetry.sdk.version":Wc(),...e.attributes,...e.serviceName?{"service.name":e.serviceName}:void 0,...e.serviceVersion?{"service.version":e.serviceVersion}:void 0})),droppedAttributesCount:0}),Yl=z(function*(e){let t=yield*$s(dr,dr,`OTEL_RESOURCE_ATTRIBUTES`).pipe(Bs(void 0)),n=e?.serviceName??e?.attributes?.[`service.name`]??(yield*Xs(zr(B),`OTEL_SERVICE_NAME`))??t?.[`service.name`]??(yield*Qs(`OTEL_SERVICE_NAME`)),r=e?.serviceVersion??e?.attributes?.[`service.version`]??(yield*Xs(zr(B),`OTEL_SERVICE_VERSION`))??t?.[`service.version`],i={...t,...e?.attributes};return delete i[`service.name`],delete i[`service.version`],Jl({serviceName:n,serviceVersion:r,attributes:i})},dt),Xl=e=>{let t=[];for(let[n,r]of e)t.push({key:n,value:Zl(r)});return t},Zl=e=>{if(Array.isArray(e))return{arrayValue:{values:e.map(Zl)}};switch(typeof e){case`string`:return{stringValue:e};case`bigint`:return{intValue:String(e)};case`number`:return Number.isInteger(e)?{intValue:e}:{doubleValue:e};case`boolean`:return{boolValue:e};default:return{stringValue:si(e)}}},Ql=class extends M()(`effect/observability/OtlpSerialization`){},$l=Ba(Ql,{traces:e=>oe(e),metrics:e=>oe(e),logs:e=>oe(e)}),eu=z(function*(e){let t=yield*Yl(e.resource),n=yield*Ql,r={name:`effect`,version:Wc()},i=yield*Kl({label:`OtlpTracer`,url:e.url,headers:e.headers,exportInterval:e.exportInterval??qo(5),maxBatchSize:e.maxBatchSize??1e3,body(e){let i={resourceSpans:[{resource:t,scopeSpans:[{scope:r,spans:e}]}]};return[n.traces(i),b]},shutdownTimeout:e.shutdownTimeout??qo(3)});function a(e){e.sampled&&i.push(ru(e))}return xi({span(e){return new nu(e,a)},context:e.context?function(t,n){return n.cache.span===void 0?t[`~effect/Effect/evaluate`](n):e.context(t,n.cache.span)}:void 0})}),tu=de(eu,Hn(Fa),ia(Gl)),nu=class{_tag=`Span`;name;parent;annotations;links;kind;sampled;export;status;_traceId=void 0;_spanId=void 0;_attributes=void 0;_events=void 0;constructor(e,t){this.name=e.name,this.parent=e.parent,this.annotations=e.annotations,this.links=e.links,this.kind=e.kind,this.sampled=e.sampled,this.export=t,this.status={_tag:`Started`,startTime:e.startTime}}get traceId(){return this._traceId??=I(this.parent)?this.parent.value.traceId:la(32)}get spanId(){return this._spanId??=la(16)}get attributes(){return this._attributes??=new Map}get events(){return this._events??=[]}end(e,t){this.status={_tag:`Ended`,startTime:this.status.startTime,endTime:e,exit:t},this.export(this)}attribute(e,t){this.attributes.set(e,t)}event(e,t,n){this.events.push([e,t,n])}addLinks(e){this.links.push(...e)}},ru=e=>{let t=e.status,n=e._attributes===void 0?[]:Xl(e._attributes),r=[];if(e._events!==void 0)for(let t=0;t<e._events.length;t++){let[n,i,a]=e._events[t];r.push({name:n,timeUnixNano:String(i),attributes:a?Xl(Object.entries(a)):[],droppedAttributesCount:0})}let i;if(t.exit._tag===`Success`)i={code:iu.Ok};else if(Tn(t.exit.cause))i={code:iu.Unset},n.push({key:`effect.fiber.interrupted`,value:{boolValue:!0}});else{let e=Vn(t.exit.cause,{includeCauseInStack:!0});i=e.length>0?{code:iu.Error,message:e[0].message}:{code:iu.Ok};for(let n of e)r.push({name:`exception`,timeUnixNano:String(t.endTime),droppedAttributesCount:0,attributes:[{key:`exception.type`,value:{stringValue:n.name}},{key:`exception.message`,value:{stringValue:n.message}},{key:`exception.stacktrace`,value:{stringValue:n.stack??`No stack trace available`}}]})}let a=[];for(let t=0;t<e.links.length;t++){let n=e.links[t];a.push({traceId:n.span.traceId,spanId:n.span.spanId,attributes:Xl(Object.entries(n.attributes)),droppedAttributesCount:0})}return{traceId:e.traceId,spanId:e.spanId,parentSpanId:I(e.parent)?e.parent.value.spanId:void 0,name:e.name,kind:au[e.kind],startTimeUnixNano:String(t.startTime),endTimeUnixNano:String(t.endTime),attributes:n,droppedAttributesCount:0,events:r,droppedEventsCount:0,status:i,links:a,droppedLinksCount:0}},iu={Unset:0,Ok:1,Error:2},au={unspecified:0,internal:1,server:2,client:3,producer:4,consumer:5},ou=class extends Ao(`@p4code/shared/relayTracing/RelayClientTracer`,{defaultValue:()=>L()}){},su=class extends Ao(`@p4code/shared/relayTracing/LocalTracer`,{defaultValue:()=>L()}){},cu=e=>ou.pipe(P(Ua({onNone:()=>e,onSome:t=>Fa.pipe(P(n=>e.pipe(k(Fa,t),k(su,V(n)))))})));function lu(e){let t=e.stack??`${e.name}: ${e.message}`,n=t.split(`
2
2
  `),r=n.findIndex((e,t)=>t>0&&/(?:Generator\.next|~effect\/Effect)/.test(e));return r<0?t:n.slice(0,r).join(`
3
3
  `)}function uu(e,t=new WeakSet){let n=e instanceof Error||typeof e==`object`&&e&&`message`in e&&typeof e.message==`string`?e.message:String(e),r;typeof e==`object`&&e&&!t.has(e)&&(t.add(e),`cause`in e&&e.cause!==void 0&&(r=uu(e.cause,t)));let i=Error(n,r?{cause:r}:void 0);return e instanceof Error?(i.name=e.name,i.stack=lu(e)):typeof e==`object`&&e&&`name`in e&&typeof e.name==`string`&&(i.name=e.name),r&&(i.stack=`${i.stack??`${i.name}: ${i.message}`}\nCaused by: ${r.stack??`${r.name}: ${r.message}`}`),i}function du(e){return p(e)?e:ge(Xt(e.cause.reasons.map(e=>ke(e)?Aa(uu(e.error)):Mn(e)?nt(uu(e.defect)):e)))}function fu(e){return xi({span(t){let n=e.span(t),r=n.end.bind(n);return n.end=(e,t)=>{try{r(e,du(t))}catch{}},n},...e.context?{context:e.context}:{}})}function pu(e,t){if(e===null)return Ba(ou,L());let n=tu({url:e.tracesUrl,headers:{Authorization:`Bearer ${e.tracesToken}`,"X-Axiom-Dataset":e.tracesDataset},resource:{serviceName:t.serviceName,serviceVersion:t.serviceVersion,attributes:{"service.namespace":`p4code`,"service.runtime":t.runtime,"service.component":t.component??`relay-client`,"p4.client.surface":t.client}}}).pipe(ao($l));return Hn(ou,Fa.pipe(K(fu),_e)).pipe(ao(n))}var mu=/^[\u0021\u0023-\u005b\u005d-\u007e]+$/u,hu=class extends R()(`OAuthScopeEncodingError`,{scopes:Le(B),invalidScopes:Le(B),duplicateScopes:Le(B)}){get message(){return`OAuth scopes must be non-empty, syntactically valid, and unique.`}};function gu(e){if(e.length===0)return null;let t=e.split(` `);return t.some(e=>!mu.test(e))?null:[...new Set(t)]}function _u(e){let t=e.filter(e=>!mu.test(e)),n=new Set,r=new Set;for(let t of e)n.has(t)&&r.add(t),n.add(t);if(e.length===0||t.length>0||r.size>0)throw new hu({scopes:e,invalidScopes:t,duplicateScopes:[...r]});return e.join(` `)}function vu(e,t){let n=gu(e);return n!==null&&n.length===new Set(t).size&&n.every(e=>t.includes(e))}var yu=1e4,bu=e=>{let t=e?.os;return{...e?.label?{client_label:e.label}:{},...e?.deviceType?{client_device_type:e.deviceType}:{},...t&&t!==`unknown`&&t!==`other`?{client_os:t}:{}}},xu=(e,t,n)=>{if(t?.surface&&e.searchParams.set(`clientSurface`,t.surface),t?.appVersion&&e.searchParams.set(`clientAppVersion`,t.appVersion),t?.deviceType){let n=t.deviceType===`mobile`?`phone`:t.deviceType===`desktop`||t.deviceType===`tablet`?t.deviceType:`unknown`;e.searchParams.set(`clientDeviceType`,n)}t?.os&&e.searchParams.set(`clientOs`,t.os),t?.surface===`web`&&(t.webDeployment&&e.searchParams.set(`clientWebDeployment`,t.webDeployment),t.browser&&e.searchParams.set(`clientBrowser`,t.browser)),t?.surface===`mobile`&&(t.osMajorVersion!==void 0&&e.searchParams.set(`clientOsMajorVersion`,String(t.osMajorVersion)),t.deviceModel&&e.searchParams.set(`clientDeviceModel`,t.deviceModel)),n&&e.searchParams.set(`connectionMethod`,n)},Su=c(`clientRuntime.authorization.exchangeRemoteDpopAccessToken`)(function*(e){let t=yield*qa(e.httpBaseUrl,`auth`);return yield*Si(ya(e.httpBaseUrl,`/oauth/token`),e.timeoutMs??yu,t.token({headers:{dpop:e.dpopProof},payload:{grant_type:Ti,subject_token:e.credential,subject_token_type:wn,requested_token_type:qt,...e.scopes?{scope:_u(e.scopes)}:{},...bu(e.clientMetadata)}}))}),Cu=c(`clientRuntime.authorization.bootstrapRemoteBearerSession`)(function*(e){let t=yield*qa(e.httpBaseUrl,`auth`);return yield*Si(ya(e.httpBaseUrl,`/oauth/token`),e.timeoutMs??yu,t.token({headers:{},payload:{grant_type:Ti,subject_token:e.credential,subject_token_type:wn,requested_token_type:qt,...e.scopes?{scope:_u(e.scopes)}:{},...bu(e.clientMetadata)}}))});c(`clientRuntime.authorization.fetchRemoteSessionState`)(function*(e){let t=yield*qa(e.httpBaseUrl,`auth`);return yield*Si(ya(e.httpBaseUrl,`/api/auth/session`),e.timeoutMs??yu,t.session({headers:{authorization:`Bearer ${e.bearerToken}`}}))});var wu=c(`clientRuntime.authorization.issueRemoteWebSocketTicket`)(function*(e){let t=yield*qa(e.httpBaseUrl,`auth`);return yield*Si(ya(e.httpBaseUrl,`/api/auth/websocket-ticket`),e.timeoutMs??yu,t.webSocketTicket({headers:{authorization:`Bearer ${e.bearerToken}`}}))}),Tu=c(`clientRuntime.authorization.issueRemoteDpopWebSocketTicket`)(function*(e){let t=yield*qa(e.httpBaseUrl,`auth`);return yield*Si(ya(e.httpBaseUrl,`/api/auth/websocket-ticket`),e.timeoutMs??yu,t.webSocketTicket({headers:{authorization:`DPoP ${e.accessToken}`,dpop:e.dpopProof}}))}),Eu=c(`clientRuntime.authorization.resolveRemoteWebSocketConnectionUrl`)(function*(e){let t=yield*wu({httpBaseUrl:e.httpBaseUrl,bearerToken:e.bearerToken,...e.timeoutMs?{timeoutMs:e.timeoutMs}:{}}),n=new URL(e.wsBaseUrl);return(n.pathname===``||n.pathname===`/`)&&(n.pathname=`/ws`),n.searchParams.set(`wsTicket`,t.ticket),xu(n,e.clientMetadata,e.connectionMethod),n.toString()}),Du=c(`clientRuntime.authorization.resolveRemoteDpopWebSocketConnectionUrl`)(function*(e){let t=yield*Tu({httpBaseUrl:e.httpBaseUrl,accessToken:e.accessToken,dpopProof:e.dpopProof,...e.timeoutMs?{timeoutMs:e.timeoutMs}:{}}),n=new URL(e.wsBaseUrl);return(n.pathname===``||n.pathname===`/`)&&(n.pathname=`/ws`),n.searchParams.set(`wsTicket`,t.ticket),xu(n,e.clientMetadata,e.connectionMethod),n.toString()}),Ou=`Hint: Check that automatic date and time is enabled on both devices, then try again.`,ku=`Hint: Try again. If it still fails, clock skew may be the cause; check that automatic date and time is enabled on both devices.`,Au=`Hint: Try again. If the problem continues, copy the trace ID.`;function ju(e){return e===`time_window`?Ou:e===void 0?ku:Au}function Mu(e,t){return`${e} ${ju(t)}`}function Nu(e){switch(e._tag){case`RelayAuthInvalidError`:switch(e.reason){case`missing_bearer`:case`invalid_bearer`:return`Relay rejected the cloud session token.`;case`invalid_dpop`:return Mu(`Relay rejected the DPoP proof.`,e.dpopFailureReason);case`not_authorized`:return`Relay rejected the authenticated request.`}case`RelayEnvironmentLinkProofExpiredError`:return`Relay rejected an expired environment link proof.`;case`RelayEnvironmentLinkProofInvalidError`:return`Relay rejected the environment link proof (${e.reason}).`;case`RelayEnvironmentConnectNotAuthorizedError`:return e.reason===`environment_link_not_found`?`Relay has no active link for this environment. If it was deregistered from P4 Connect, link it again on that machine.`:e.reason===`managed_endpoint_allocation_not_ready`?`The environment's P4 Connect tunnel is still being set up.`:e.reason===`endpoint_provider_not_managed`?`This environment is linked only to publish agent activity, so it cannot accept connections. On that computer, open Settings > Connections and turn P4 Connect on.`:e.reason?`Relay rejected the environment connection request (${e.reason}).`:`Relay rejected the environment connection request.`;case`RelayEnvironmentEndpointUnavailableError`:return`Relay could not reach the environment endpoint (${e.reason}).`;case`RelayEnvironmentEndpointTimedOutError`:return`Relay timed out while contacting the environment endpoint.`;case`RelayEnvironmentLinkFailedError`:return`Relay could not link the environment (${e.reason}).`;case`RelayEnvironmentLinkUnavailableError`:return`Relay cannot provision the managed endpoint (${e.reason}).`;case`RelayEnvironmentLinkLimitExceededError`:return`Relay refused the link: this account already has its maximum of ${e.maxTunnels} managed tunnels. Unlink an environment to free one up.`;case`RelayAgentActivityPublishProofExpiredError`:return`Relay rejected an expired agent activity publish proof.`;case`RelayAgentActivityPublishProofInvalidError`:return`Relay rejected the agent activity publish proof (${e.reason}).`;case`RelayInternalError`:return`Relay encountered an internal error (${e.reason}).`}}var Pu=`Relay timed out before it finished the request (HTTP 504). Try again in a few minutes. If it keeps failing, copy the trace ID when you report it.`;function Fu(e){return e.relayError?Nu(e.relayError):e.status===504?Pu:e.status===void 0?null:`Relay returned an unexpected HTTP ${e.status}.`}var Iu=`Offline for a while, so its P4 Connect tunnel was removed. Start P4 Code on that computer and update it to the latest version to reconnect.`;function Lu(e){switch(e.offlineReason){case`tunnel_released`:return Iu;case void 0:return null}}var Ru=`Your DNS or firewall may be blocking P4 Connect. Try another network, such as a phone hotspot.`,zu={environmentId:gt,label:B},Bu=class extends Ka()(`PrimaryConnectionTarget`,{...zu,httpBaseUrl:B,wsBaseUrl:B}){},Vu=class extends Ka()(`BearerConnectionTarget`,{...zu,connectionId:B}){},Hu=class extends Ka()(`RelayConnectionTarget`,{...zu}){},Uu=class extends Ka()(`SshConnectionTarget`,{...zu,connectionId:B}){};ni([Bu,Vu,Hu,Uu]);var Wu=ni([Vu,Hu,Uu]),Gu=F([`network`,`timeout`,`transport`,`endpoint-unavailable`,`relay-unavailable`,`remote-unavailable`]),Ku=F([`authentication`,`configuration`,`permission`,`unsupported`]),qu=F([`device`,`relay`,`tunnel`,`server`]),Ju=F([...ra.literals,`clock_skew`,`not_linked`,`relay_error`,`tunnel_pending`,`tunnel_not_enabled`]),Yu={hop:Mt(qu),via:Mt(F([`relay`,`direct`])),failureCause:Mt(Ju),httpStatus:Mt(to)},X=class extends R()(`ConnectionTransientError`,{reason:Gu,detail:B,traceId:Mt(B),...Yu}){get message(){return this.detail}},Z=class extends R()(`ConnectionBlockedError`,{reason:Ku,detail:B,traceId:Mt(B),...Yu,serverUpdateRequired:Mt(xn)}){get message(){return this.detail}};function Xu(e){switch(e.phase){case`connecting`:return`synchronizing`;case`connected`:return`ready`;case`available`:case`offline`:case`backoff`:case`blocked`:return`disconnected`}}var Zu=Object.freeze({desired:!1,network:`unknown`,phase:`available`,stage:null,attempt:0,generation:0,lastFailure:null,retryAt:null});function Qu(e){return new Z({reason:`configuration`,detail:`Connection profile ${e} is unavailable.`,hop:`device`})}function $u(e){return new Z({reason:`authentication`,detail:`Connection credential ${e} is unavailable.`,hop:`device`})}function ed(e){return new Z({reason:`configuration`,detail:`Connected environment ${e.actual} does not match ${e.expected}.`})}function td(e){let t=Nu(e),n=e.traceId;switch(e._tag){case`RelayAuthInvalidError`:return new Z({reason:`authentication`,detail:t,traceId:n,hop:`relay`,...e.dpopFailureReason===`time_window`?{failureCause:`clock_skew`}:{}});case`RelayEnvironmentLinkProofExpiredError`:case`RelayAgentActivityPublishProofExpiredError`:case`RelayAgentActivityPublishProofInvalidError`:return new Z({reason:`authentication`,detail:t,traceId:n,hop:`relay`});case`RelayEnvironmentConnectNotAuthorizedError`:return e.reason===`managed_endpoint_allocation_not_ready`?new X({reason:`endpoint-unavailable`,detail:t,traceId:n,hop:`tunnel`,failureCause:`tunnel_pending`}):e.reason===`endpoint_provider_not_managed`?new Z({reason:`permission`,detail:t,traceId:n,hop:`tunnel`,failureCause:`tunnel_not_enabled`}):new Z({reason:`permission`,detail:t,traceId:n,hop:`relay`,...e.reason===`environment_link_not_found`?{failureCause:`not_linked`}:{}});case`RelayEnvironmentLinkProofInvalidError`:case`RelayEnvironmentLinkLimitExceededError`:return new Z({reason:`permission`,detail:t,traceId:n,hop:`relay`});case`RelayEnvironmentEndpointTimedOutError`:return new X({reason:`timeout`,detail:t,traceId:n,hop:`tunnel`,failureCause:`timeout`});case`RelayEnvironmentEndpointUnavailableError`:{let r=e.endpointFailure??(e.reason===`endpoint_response_invalid`?`invalid_response`:void 0);return new X({reason:`endpoint-unavailable`,detail:t,traceId:n,hop:r===`origin_unreachable`||r===`invalid_response`?`server`:`tunnel`,via:`relay`,...r?{failureCause:r}:{},...e.endpointStatus?{httpStatus:e.endpointStatus}:{}})}case`RelayEnvironmentLinkUnavailableError`:return new X({reason:`endpoint-unavailable`,detail:t,traceId:n,hop:`tunnel`});case`RelayEnvironmentLinkFailedError`:case`RelayInternalError`:return new X({reason:`relay-unavailable`,detail:t,traceId:n,hop:`relay`,failureCause:`relay_error`})}}function nd(e){switch(e._tag){case`ManagedRelayRequestFailedError`:return e.relayError?td(e.relayError):new X({reason:`relay-unavailable`,detail:e.message,hop:`relay`,...e.status===void 0?{}:{httpStatus:e.status,failureCause:`relay_error`},...e.traceId?{traceId:e.traceId}:{}});case`ManagedRelayRequestTimeoutError`:return new X({reason:`timeout`,detail:e.message,hop:`relay`});case`ManagedRelayUrlInvalidError`:return new Z({reason:`configuration`,detail:e.message,hop:`relay`});case`ManagedRelayAccessTokenScopesUnexpectedError`:return new Z({reason:`permission`,detail:e.message,hop:`relay`});case`ManagedRelayDpopKeyLoadError`:case`ManagedRelayTokenProofCreationError`:case`ManagedRelayRequestProofCreationError`:return new Z({reason:`authentication`,detail:e.message,hop:`device`})}}function rd(e,t=`direct`){let n=t===`relay`?` ${Ru}`:``,r=t===`relay`?`tunnel`:`server`,i=t===`relay`?`relay`:`direct`;switch(e._tag){case`EnvironmentAuthInvalidError`:return new Z({reason:`authentication`,detail:`The environment credential is invalid.`,traceId:e.traceId,hop:`server`,via:i});case`EnvironmentScopeRequiredError`:case`EnvironmentOperationForbiddenError`:return new Z({reason:`permission`,detail:`The environment credential does not grant the required access.`,traceId:e.traceId,hop:`server`,via:i});case`EnvironmentRequestInvalidError`:return new Z({reason:`configuration`,detail:`The environment rejected the authentication request.`,traceId:e.traceId,hop:`server`,via:i});case`EnvironmentResourceNotFoundError`:return new Z({reason:`configuration`,detail:`The environment endpoint could not be found.`,traceId:e.traceId,hop:`server`,via:i});case`RemoteEnvironmentAuthTimeoutError`:return new X({reason:`timeout`,detail:`${e.message}${n}`,hop:r,via:i});case`RemoteEnvironmentAuthFetchError`:return new X({reason:`network`,detail:`${e.message}${n}`,hop:r,via:i});case`EnvironmentInternalError`:return new X({reason:`remote-unavailable`,detail:`The environment could not authorize the connection.`,traceId:e.traceId,hop:`server`,via:i});case`RemoteEnvironmentAuthInvalidJsonError`:case`RemoteEnvironmentAuthUndeclaredStatusError`:return new X({reason:`remote-unavailable`,detail:e.message,hop:`server`,via:i})}}function id(e){return e._tag===`EnvironmentAuthInvalidError`&&e.reason===`invalid_credential`?new Z({reason:`authentication`,detail:Mu(`The environment credential is invalid.`,e.dpopFailureReason),traceId:e.traceId,hop:`server`,via:`relay`,...e.dpopFailureReason===`time_window`?{failureCause:`clock_skew`}:{}}):rd(e,`relay`)}var ad=class extends M()(`@p4code/client-runtime/platform/capabilities/CloudSession`){},od=class extends M()(`@p4code/client-runtime/platform/capabilities/RelayDeviceIdentity`){},sd=class extends M()(`@p4code/client-runtime/platform/capabilities/ClientPresentation`){},cd=class extends M()(`@p4code/client-runtime/platform/capabilities/PrimaryEnvironmentAuth`){},ld=class extends M()(`@p4code/client-runtime/platform/capabilities/SshEnvironmentGateway`){},ud=new TextEncoder,dd=new TextDecoder;function fd(...e){let t=e.reduce((e,{length:t})=>e+t,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function pd(e){let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);if(r>127)throw TypeError(`non-ASCII string encountered in encode()`);t[n]=r}return t}function md(e){if(Uint8Array.prototype.toBase64)return e.toBase64();let t=32768,n=[];for(let r=0;r<e.length;r+=t)n.push(String.fromCharCode.apply(null,e.subarray(r,r+t)));return btoa(n.join(``))}function hd(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64(e);let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}function gd(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64(typeof e==`string`?e:dd.decode(e),{alphabet:`base64url`});let t=e;t instanceof Uint8Array&&(t=dd.decode(t)),t=t.replace(/-/g,`+`).replace(/_/g,`/`);try{return hd(t)}catch{throw TypeError(`The input to be decoded is not correctly encoded.`)}}function _d(e){let t=e;return typeof t==`string`&&(t=ud.encode(t)),Uint8Array.prototype.toBase64?t.toBase64({alphabet:`base64url`,omitPadding:!0}):md(t).replace(/=/g,``).replace(/\+/g,`-`).replace(/\//g,`_`)}var vd=(e,t=`algorithm.name`)=>TypeError(`CryptoKey does not support this operation, its ${t} must be ${e}`),yd=(e,t)=>e.name===t;function bd(e){return parseInt(e.name.slice(4),10)}function xd(e,t){if(bd(e.hash)!==t)throw vd(`SHA-${t}`,`algorithm.hash`)}function Sd(e){switch(e){case`ES256`:return`P-256`;case`ES384`:return`P-384`;case`ES512`:return`P-521`;default:throw Error(`unreachable`)}}function Cd(e,t){if(t&&!e.usages.includes(t))throw TypeError(`CryptoKey does not support this operation, its usages must include ${t}.`)}function wd(e,t,n){switch(t){case`HS256`:case`HS384`:case`HS512`:if(!yd(e.algorithm,`HMAC`))throw vd(`HMAC`);xd(e.algorithm,parseInt(t.slice(2),10));break;case`RS256`:case`RS384`:case`RS512`:if(!yd(e.algorithm,`RSASSA-PKCS1-v1_5`))throw vd(`RSASSA-PKCS1-v1_5`);xd(e.algorithm,parseInt(t.slice(2),10));break;case`PS256`:case`PS384`:case`PS512`:if(!yd(e.algorithm,`RSA-PSS`))throw vd(`RSA-PSS`);xd(e.algorithm,parseInt(t.slice(2),10));break;case`Ed25519`:case`EdDSA`:if(!yd(e.algorithm,`Ed25519`))throw vd(`Ed25519`);break;case`ML-DSA-44`:case`ML-DSA-65`:case`ML-DSA-87`:if(!yd(e.algorithm,t))throw vd(t);break;case`ES256`:case`ES384`:case`ES512`:{if(!yd(e.algorithm,`ECDSA`))throw vd(`ECDSA`);let n=Sd(t);if(e.algorithm.namedCurve!==n)throw vd(n,`algorithm.namedCurve`);break}default:throw TypeError(`CryptoKey does not support this operation`)}Cd(e,n)}function Td(e,t,...n){if(n=n.filter(Boolean),n.length>2){let t=n.pop();e+=`one of type ${n.join(`, `)}, or ${t}.`}else n.length===2?e+=`one of type ${n[0]} or ${n[1]}.`:e+=`of type ${n[0]}.`;return t==null?e+=` Received ${t}`:typeof t==`function`&&t.name?e+=` Received function ${t.name}`:typeof t==`object`&&t&&t.constructor?.name&&(e+=` Received an instance of ${t.constructor.name}`),e}var Ed=(e,...t)=>Td(`Key must be `,e,...t),Dd=(e,t,...n)=>Td(`Key for the ${e} algorithm must be `,t,...n),Od=class extends Error{static code=`ERR_JOSE_GENERIC`;code=`ERR_JOSE_GENERIC`;constructor(e,t){super(e,t),this.name=this.constructor.name,Error.captureStackTrace?.(this,this.constructor)}},kd=class extends Od{static code=`ERR_JOSE_NOT_SUPPORTED`;code=`ERR_JOSE_NOT_SUPPORTED`},Ad=class extends Od{static code=`ERR_JWS_INVALID`;code=`ERR_JWS_INVALID`},jd=class extends Od{static code=`ERR_JWT_INVALID`;code=`ERR_JWT_INVALID`},Md=e=>{if(e?.[Symbol.toStringTag]===`CryptoKey`)return!0;try{return e instanceof CryptoKey}catch{return!1}},Nd=e=>e?.[Symbol.toStringTag]===`KeyObject`,Pd=e=>Md(e)||Nd(e);function Fd(e,t){if(e)throw TypeError(`${t} can only be called once`)}var Id=e=>typeof e==`object`&&!!e;function Ld(e){if(!Id(e)||Object.prototype.toString.call(e)!==`[object Object]`)return!1;if(Object.getPrototypeOf(e)===null)return!0;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function Rd(...e){let t=e.filter(Boolean);if(t.length===0||t.length===1)return!0;let n;for(let e of t){let t=Object.keys(e);if(!n||n.size===0){n=new Set(t);continue}for(let e of t){if(n.has(e))return!1;n.add(e)}}return!0}var zd=e=>Ld(e)&&typeof e.kty==`string`,Bd=e=>e.kty!==`oct`&&(e.kty===`AKP`&&typeof e.priv==`string`||typeof e.d==`string`),Vd=e=>e.kty!==`oct`&&e.d===void 0&&e.priv===void 0,Hd=e=>e.kty===`oct`&&typeof e.k==`string`;function Ud(e,t){if(e.startsWith(`RS`)||e.startsWith(`PS`)){let{modulusLength:n}=t.algorithm;if(typeof n!=`number`||n<2048)throw TypeError(`${e} requires key modulusLength to be 2048 bits or larger`)}}function Wd(e,t){let n=`SHA-${e.slice(-3)}`;switch(e){case`HS256`:case`HS384`:case`HS512`:return{hash:n,name:`HMAC`};case`PS256`:case`PS384`:case`PS512`:return{hash:n,name:`RSA-PSS`,saltLength:parseInt(e.slice(-3),10)>>3};case`RS256`:case`RS384`:case`RS512`:return{hash:n,name:`RSASSA-PKCS1-v1_5`};case`ES256`:case`ES384`:case`ES512`:return{hash:n,name:`ECDSA`,namedCurve:t.namedCurve};case`Ed25519`:case`EdDSA`:return{name:`Ed25519`};case`ML-DSA-44`:case`ML-DSA-65`:case`ML-DSA-87`:return{name:e};default:throw new kd(`alg ${e} is not supported either by JOSE or your javascript runtime`)}}async function Gd(e,t,n){if(t instanceof Uint8Array){if(!e.startsWith(`HS`))throw TypeError(Ed(t,`CryptoKey`,`KeyObject`,`JSON Web Key`));return crypto.subtle.importKey(`raw`,t,{hash:`SHA-${e.slice(-3)}`,name:`HMAC`},!1,[n])}return wd(t,e,n),t}async function Kd(e,t,n){let r=await Gd(e,t,`sign`);Ud(e,r);let i=await crypto.subtle.sign(Wd(e,r.algorithm),r,n);return new Uint8Array(i)}var qd=`Invalid or unsupported JWK "alg" (Algorithm) Parameter value`;function Jd(e){let t,n;switch(e.kty){case`AKP`:switch(e.alg){case`ML-DSA-44`:case`ML-DSA-65`:case`ML-DSA-87`:t={name:e.alg},n=e.priv?[`sign`]:[`verify`];break;default:throw new kd(qd)}break;case`RSA`:switch(e.alg){case`PS256`:case`PS384`:case`PS512`:t={name:`RSA-PSS`,hash:`SHA-${e.alg.slice(-3)}`},n=e.d?[`sign`]:[`verify`];break;case`RS256`:case`RS384`:case`RS512`:t={name:`RSASSA-PKCS1-v1_5`,hash:`SHA-${e.alg.slice(-3)}`},n=e.d?[`sign`]:[`verify`];break;case`RSA-OAEP`:case`RSA-OAEP-256`:case`RSA-OAEP-384`:case`RSA-OAEP-512`:t={name:`RSA-OAEP`,hash:`SHA-${parseInt(e.alg.slice(-3),10)||1}`},n=e.d?[`decrypt`,`unwrapKey`]:[`encrypt`,`wrapKey`];break;default:throw new kd(qd)}break;case`EC`:switch(e.alg){case`ES256`:case`ES384`:case`ES512`:t={name:`ECDSA`,namedCurve:{ES256:`P-256`,ES384:`P-384`,ES512:`P-521`}[e.alg]},n=e.d?[`sign`]:[`verify`];break;case`ECDH-ES`:case`ECDH-ES+A128KW`:case`ECDH-ES+A192KW`:case`ECDH-ES+A256KW`:t={name:`ECDH`,namedCurve:e.crv},n=e.d?[`deriveBits`]:[];break;default:throw new kd(qd)}break;case`OKP`:switch(e.alg){case`Ed25519`:case`EdDSA`:t={name:`Ed25519`},n=e.d?[`sign`]:[`verify`];break;case`ECDH-ES`:case`ECDH-ES+A128KW`:case`ECDH-ES+A192KW`:case`ECDH-ES+A256KW`:t={name:e.crv},n=e.d?[`deriveBits`]:[];break;default:throw new kd(qd)}break;default:throw new kd(`Invalid or unsupported JWK "kty" (Key Type) Parameter value`)}return{algorithm:t,keyUsages:n}}async function Yd(e){if(!e.alg)throw TypeError(`"alg" argument is required when "jwk.alg" is not present`);let{algorithm:t,keyUsages:n}=Jd(e),r={...e};return r.kty!==`AKP`&&delete r.alg,delete r.use,crypto.subtle.importKey(`jwk`,r,t,e.ext??!(e.d||e.priv),e.key_ops??n)}var Xd=`given KeyObject instance cannot be used for this algorithm`,Zd,Qd=async(e,t,n,r=!1)=>{Zd||=new WeakMap;let i=Zd.get(e);if(i?.[n])return i[n];let a=await Yd({...t,alg:n});return r&&Object.freeze(e),i?i[n]=a:Zd.set(e,{[n]:a}),a},$d=(e,t)=>{Zd||=new WeakMap;let n=Zd.get(e);if(n?.[t])return n[t];let r=e.type===`public`,i=!!r,a;if(e.asymmetricKeyType===`x25519`){switch(t){case`ECDH-ES`:case`ECDH-ES+A128KW`:case`ECDH-ES+A192KW`:case`ECDH-ES+A256KW`:break;default:throw TypeError(Xd)}a=e.toCryptoKey(e.asymmetricKeyType,i,r?[]:[`deriveBits`])}if(e.asymmetricKeyType===`ed25519`){if(t!==`EdDSA`&&t!==`Ed25519`)throw TypeError(Xd);a=e.toCryptoKey(e.asymmetricKeyType,i,[r?`verify`:`sign`])}switch(e.asymmetricKeyType){case`ml-dsa-44`:case`ml-dsa-65`:case`ml-dsa-87`:if(t!==e.asymmetricKeyType.toUpperCase())throw TypeError(Xd);a=e.toCryptoKey(e.asymmetricKeyType,i,[r?`verify`:`sign`])}if(e.asymmetricKeyType===`rsa`){let n;switch(t){case`RSA-OAEP`:n=`SHA-1`;break;case`RS256`:case`PS256`:case`RSA-OAEP-256`:n=`SHA-256`;break;case`RS384`:case`PS384`:case`RSA-OAEP-384`:n=`SHA-384`;break;case`RS512`:case`PS512`:case`RSA-OAEP-512`:n=`SHA-512`;break;default:throw TypeError(Xd)}if(t.startsWith(`RSA-OAEP`))return e.toCryptoKey({name:`RSA-OAEP`,hash:n},i,r?[`encrypt`]:[`decrypt`]);a=e.toCryptoKey({name:t.startsWith(`PS`)?`RSA-PSS`:`RSASSA-PKCS1-v1_5`,hash:n},i,[r?`verify`:`sign`])}if(e.asymmetricKeyType===`ec`){let n=new Map([[`prime256v1`,`P-256`],[`secp384r1`,`P-384`],[`secp521r1`,`P-521`]]).get(e.asymmetricKeyDetails?.namedCurve);if(!n)throw TypeError(Xd);let o={ES256:`P-256`,ES384:`P-384`,ES512:`P-521`};o[t]&&n===o[t]&&(a=e.toCryptoKey({name:`ECDSA`,namedCurve:n},i,[r?`verify`:`sign`])),t.startsWith(`ECDH-ES`)&&(a=e.toCryptoKey({name:`ECDH`,namedCurve:n},i,r?[]:[`deriveBits`]))}if(!a)throw TypeError(Xd);return n?n[t]=a:Zd.set(e,{[t]:a}),a};async function ef(e,t){if(e instanceof Uint8Array||Md(e))return e;if(Nd(e)){if(e.type===`secret`)return e.export();if(`toCryptoKey`in e&&typeof e.toCryptoKey==`function`)try{return $d(e,t)}catch(e){if(e instanceof TypeError)throw e}return Qd(e,e.export({format:`jwk`}),t)}if(zd(e))return e.k?gd(e.k):Qd(e,e,t,!0);throw Error(`unreachable`)}async function tf(e,t,n){if(!Ld(e))throw TypeError(`JWK must be an object`);let r;switch(t??=e.alg,r??=n?.extractable??e.ext,e.kty){case`oct`:if(typeof e.k!=`string`||!e.k)throw TypeError(`missing "k" (Key Value) Parameter value`);return gd(e.k);case`RSA`:if(`oth`in e&&e.oth!==void 0)throw new kd(`RSA JWK "oth" (Other Primes Info) Parameter value is not supported`);return Yd({...e,alg:t,ext:r});case`AKP`:if(typeof e.alg!=`string`||!e.alg)throw TypeError(`missing "alg" (Algorithm) Parameter value`);if(t!==void 0&&t!==e.alg)throw TypeError(`JWK alg and alg option value mismatch`);return Yd({...e,ext:r});case`EC`:case`OKP`:return Yd({...e,alg:t,ext:r});default:throw new kd(`Unsupported "kty" (Key Type) Parameter value`)}}function nf(e,t,n,r,i){if(i.crit!==void 0&&r?.crit===void 0)throw new e(`"crit" (Critical) Header Parameter MUST be integrity protected`);if(!r||r.crit===void 0)return new Set;if(!Array.isArray(r.crit)||r.crit.length===0||r.crit.some(e=>typeof e!=`string`||e.length===0))throw new e(`"crit" (Critical) Header Parameter MUST be an array of non-empty strings when present`);let a;a=n===void 0?t:new Map([...Object.entries(n),...t.entries()]);for(let t of r.crit){if(!a.has(t))throw new kd(`Extension Header Parameter "${t}" is not recognized`);if(i[t]===void 0)throw new e(`Extension Header Parameter "${t}" is missing`);if(a.get(t)&&r[t]===void 0)throw new e(`Extension Header Parameter "${t}" MUST be integrity protected`)}return new Set(r.crit)}var rf=e=>e?.[Symbol.toStringTag],af=(e,t,n)=>{if(t.use!==void 0){let e;switch(n){case`sign`:case`verify`:e=`sig`;break;case`encrypt`:case`decrypt`:e=`enc`}if(t.use!==e)throw TypeError(`Invalid key for this operation, its "use" must be "${e}" when present`)}if(t.alg!==void 0&&t.alg!==e)throw TypeError(`Invalid key for this operation, its "alg" must be "${e}" when present`);if(Array.isArray(t.key_ops)){let r;switch(!0){case n===`sign`||n===`verify`:case e===`dir`:case e.includes(`CBC-HS`):r=n;break;case e.startsWith(`PBES2`):r=`deriveBits`;break;case/^A\d{3}(?:GCM)?(?:KW)?$/.test(e):r=!e.includes(`GCM`)&&e.endsWith(`KW`)?n===`encrypt`?`wrapKey`:`unwrapKey`:n;break;case n===`encrypt`&&e.startsWith(`RSA`):r=`wrapKey`;break;case n===`decrypt`:r=e.startsWith(`RSA`)?`unwrapKey`:`deriveBits`}if(r&&t.key_ops?.includes?.(r)===!1)throw TypeError(`Invalid key for this operation, its "key_ops" must include "${r}" when present`)}return!0},of=(e,t,n)=>{if(!(t instanceof Uint8Array)){if(zd(t)){if(Hd(t)&&af(e,t,n))return;throw TypeError(`JSON Web Key for symmetric algorithms must have JWK "kty" (Key Type) equal to "oct" and the JWK "k" (Key Value) present`)}if(!Pd(t))throw TypeError(Dd(e,t,`CryptoKey`,`KeyObject`,`JSON Web Key`,`Uint8Array`));if(t.type!==`secret`)throw TypeError(`${rf(t)} instances for symmetric algorithms must be of type "secret"`)}},sf=(e,t,n)=>{if(zd(t))switch(n){case`decrypt`:case`sign`:if(Bd(t)&&af(e,t,n))return;throw TypeError(`JSON Web Key for this operation must be a private JWK`);case`encrypt`:case`verify`:if(Vd(t)&&af(e,t,n))return;throw TypeError(`JSON Web Key for this operation must be a public JWK`)}if(!Pd(t))throw TypeError(Dd(e,t,`CryptoKey`,`KeyObject`,`JSON Web Key`));if(t.type===`secret`)throw TypeError(`${rf(t)} instances for asymmetric algorithms must not be of type "secret"`);if(t.type===`public`)switch(n){case`sign`:throw TypeError(`${rf(t)} instances for asymmetric algorithm signing must be of type "private"`);case`decrypt`:throw TypeError(`${rf(t)} instances for asymmetric algorithm decryption must be of type "private"`)}if(t.type===`private`)switch(n){case`verify`:throw TypeError(`${rf(t)} instances for asymmetric algorithm verifying must be of type "public"`);case`encrypt`:throw TypeError(`${rf(t)} instances for asymmetric algorithm encryption must be of type "public"`)}};function cf(e,t,n){switch(e.substring(0,2)){case`A1`:case`A2`:case`di`:case`HS`:case`PB`:of(e,t,n);break;default:sf(e,t,n)}}var lf=e=>Math.floor(e.getTime()/1e3),uf=60,df=3600,ff=df*24,pf=ff*7,mf=ff*365.25,hf=/^(\+|\-)? ?(\d+|\d+\.\d+) ?(seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)(?: (ago|from now))?$/i;function gf(e){let t=hf.exec(e);if(!t||t[4]&&t[1])throw TypeError(`Invalid time period format`);let n=parseFloat(t[2]),r=t[3].toLowerCase(),i;switch(r){case`sec`:case`secs`:case`second`:case`seconds`:case`s`:i=Math.round(n);break;case`minute`:case`minutes`:case`min`:case`mins`:case`m`:i=Math.round(n*uf);break;case`hour`:case`hours`:case`hr`:case`hrs`:case`h`:i=Math.round(n*df);break;case`day`:case`days`:case`d`:i=Math.round(n*ff);break;case`week`:case`weeks`:case`w`:i=Math.round(n*pf);break;default:i=Math.round(n*mf)}return t[1]===`-`||t[4]===`ago`?-i:i}function _f(e,t){if(!Number.isFinite(t))throw TypeError(`Invalid ${e} input`);return t}var vf=class{#e;constructor(e){if(!Ld(e))throw TypeError(`JWT Claims Set MUST be an object`);this.#e=structuredClone(e)}data(){return ud.encode(JSON.stringify(this.#e))}get iss(){return this.#e.iss}set iss(e){this.#e.iss=e}get sub(){return this.#e.sub}set sub(e){this.#e.sub=e}get aud(){return this.#e.aud}set aud(e){this.#e.aud=e}set jti(e){this.#e.jti=e}set nbf(e){typeof e==`number`?this.#e.nbf=_f(`setNotBefore`,e):e instanceof Date?this.#e.nbf=_f(`setNotBefore`,lf(e)):this.#e.nbf=lf(new Date)+gf(e)}set exp(e){typeof e==`number`?this.#e.exp=_f(`setExpirationTime`,e):e instanceof Date?this.#e.exp=_f(`setExpirationTime`,lf(e)):this.#e.exp=lf(new Date)+gf(e)}set iat(e){e===void 0?this.#e.iat=lf(new Date):e instanceof Date?this.#e.iat=_f(`setIssuedAt`,lf(e)):typeof e==`string`?this.#e.iat=_f(`setIssuedAt`,lf(new Date)+gf(e)):this.#e.iat=_f(`setIssuedAt`,e)}},yf=class{#e;#t;#n;constructor(e){if(!(e instanceof Uint8Array))throw TypeError(`payload must be an instance of Uint8Array`);this.#e=e}setProtectedHeader(e){return Fd(this.#t,`setProtectedHeader`),this.#t=e,this}setUnprotectedHeader(e){return Fd(this.#n,`setUnprotectedHeader`),this.#n=e,this}async sign(e,t){if(!this.#t&&!this.#n)throw new Ad(`either setProtectedHeader or setUnprotectedHeader must be called before #sign()`);if(!Rd(this.#t,this.#n))throw new Ad(`JWS Protected and JWS Unprotected Header Parameter names must be disjoint`);let n={...this.#t,...this.#n},r=nf(Ad,new Map([[`b64`,!0]]),t?.crit,this.#t,n),i=!0;if(r.has(`b64`)&&(i=this.#t.b64,typeof i!=`boolean`))throw new Ad(`The "b64" (base64url-encode payload) Header Parameter must be a boolean`);let{alg:a}=n;if(typeof a!=`string`||!a)throw new Ad(`JWS "alg" (Algorithm) Header Parameter missing or invalid`);cf(a,e,`sign`);let o,s;i?(o=_d(this.#e),s=pd(o)):(s=this.#e,o=``);let c,l;this.#t?(c=_d(JSON.stringify(this.#t)),l=pd(c)):(c=``,l=new Uint8Array);let u=fd(l,pd(`.`),s),d={signature:_d(await Kd(a,await ef(e,a),u)),payload:o};return this.#n&&(d.header=this.#n),this.#t&&(d.protected=c),d}},bf=class{#e;constructor(e){this.#e=new yf(e)}setProtectedHeader(e){return this.#e.setProtectedHeader(e),this}async sign(e,t){let n=await this.#e.sign(e,t);if(n.payload===void 0)throw TypeError(`use the flattened module for creating JWS with b64: false`);return`${n.protected}.${n.payload}.${n.signature}`}},xf=class{#e;#t;constructor(e={}){this.#t=new vf(e)}setIssuer(e){return this.#t.iss=e,this}setSubject(e){return this.#t.sub=e,this}setAudience(e){return this.#t.aud=e,this}setJti(e){return this.#t.jti=e,this}setNotBefore(e){return this.#t.nbf=e,this}setExpirationTime(e){return this.#t.exp=e,this}setIssuedAt(e){return this.#t.iat=e,this}setProtectedHeader(e){return this.#e=e,this}async sign(e,t){let n=new bf(this.#t.data());if(n.setProtectedHeader(this.#e),Array.isArray(this.#e?.crit)&&this.#e.crit.includes(`b64`)&&this.#e.b64===!1)throw new jd(`JWTs MUST NOT use unencoded payload`);return n.sign(e,t)}};function Sf(e){if(typeof e!=`string`)throw new jd(`JWTs must use Compact JWS serialization, JWT must be a string`);let{1:t,length:n}=e.split(`.`);if(n===5)throw new jd(`Only JWTs using Compact JWS serialization can be decoded`);if(n!==3)throw new jd(`Invalid JWT`);if(!t)throw new jd(`JWTs must contain a payload`);let r;try{r=gd(t)}catch{throw new jd(`Failed to base64url decode the payload`)}let i;try{i=JSON.parse(dd.decode(r))}catch{throw new jd(`Failed to parse the decoded payload as JSON`)}if(!Ld(i))throw new jd(`Invalid JWT Claims Set`);return i}R()(`RelayJwtError`,{operation:F([`sign`,`verify`]),typ:B,issuer:yt(B),audience:yt(B),cause:O()});function Cf(e){return Sf(e)}function wf(e){try{let t=new URL(e.trim());return t.protocol!==`https:`||t.username.length>0||t.password.length>0||t.search.length>0||t.hash.length>0||!/^\/+$/u.test(t.pathname)?null:t.origin}catch{return null}}var Tf=class extends R()(`ManagedRelayDpopKeyLoadError`,{keyStore:F([`expo-secure-store`,`indexed-db`]),cause:O()}){get message(){return`Could not load relay DPoP proof key.`}},Ef=class extends R()(`ManagedRelayDpopProofCreationError`,{method:B,url:B,cause:O()}){get message(){return`Could not create the relay DPoP proof for ${this.method} ${this.url}.`}};ni([Tf,Ef]);var Df=F([`exchange relay DPoP access token`,`list relay-managed environments`,`list relay client devices`,`create relay environment link challenge`,`link relay environment`,`unlink relay environment`,`get relay environment status`,`connect relay environment`,`register relay mobile device`,`unregister relay mobile device`,`register relay live activity`,`read relay agent activity snapshot`]),Of=F([`Relay DPoP access token exchange`,`Relay environment listing`,`Relay client device listing`,`Relay environment link challenge`,`Relay environment linking`,`Relay environment unlinking`,`Relay environment status request`,`Relay environment connection`,`Relay mobile device registration`,`Relay mobile device unregistration`,`Relay Live Activity registration`,`Relay agent activity snapshot`]),kf=class extends R()(`ManagedRelayRequestTimeoutError`,{activity:Of,timeoutMs:to,traceId:Jr(B)}){get message(){return`${this.activity} timed out. ${Ru}`}},Af=class extends R()(`ManagedRelayUrlInvalidError`,{relayUrl:B}){get message(){return`Relay URL must be a secure absolute HTTPS origin.`}},jf=class extends R()(`ManagedRelayRequestFailedError`,{action:Df,transportFailed:Mt(xn),cause:O(),relayError:yt(Ui),status:yt(to),traceId:yt(B)}){get message(){let e=`Could not ${this.action}.`;return this.transportFailed?`${e} ${Ru}`:e}},Mf=class extends R()(`ManagedRelayAccessTokenScopesUnexpectedError`,{requestedScopes:Le(a),grantedScope:B}){get message(){return`Relay granted unexpected DPoP access token scopes.`}},Nf=class extends R()(`ManagedRelayTokenProofCreationError`,{method:B,url:B,cause:O()}){get message(){return`Could not create relay token DPoP proof.`}},Pf=class extends R()(`ManagedRelayRequestProofCreationError`,{method:B,url:B,cause:O()}){get message(){return`Could not create relay request DPoP proof.`}};ni([Af,jf,kf,Mf,Tf,Nf,Pf]);var Ff=class extends M()(`@p4code/client-runtime/relay/managedRelay/ManagedRelayDpopSigner`){},If=1e4,Lf=class extends M()(`@p4code/client-runtime/relay/managedRelay/ManagedRelayClient`){},Rf=pe(Ui),zf=/^[\da-f]{2}-([\da-f]{32})-[\da-f]{16}-[\da-f]{2}$/i;function Bf(e){let t=me(e)?e.response:void 0;if(!t)return{};let n=zf.exec(t.headers.traceparent??``)?.[1];return{status:t.status,...n?{traceId:n}:{}}}function Vf(e){return t=>new jf({action:e,transportFailed:me(t)&&t.reason._tag===`TransportError`,cause:t,...Rf(t)?{relayError:t,traceId:t.traceId}:Bf(t)})}function Hf(e){return{method:e.method,url:e.url,cause:e}}function Uf(e){return e._tag===`ManagedRelayRequestFailedError`&&e.relayError?._tag===`RelayAuthInvalidError`&&e.relayError.reason===`invalid_bearer`}function Wf(e){return t=>t.pipe(fi(hi(If)),P(Ua({onNone:()=>ss.pipe(K(e=>e.traceId),_t(()=>null),P(t=>D(new kf({activity:e,timeoutMs:If,traceId:t})))),onSome:U})))}function Gf(e,t){return e.accountId===t.accountId&&e.clientId===t.clientId&&e.relayUrl===t.relayUrl&&e.thumbprint===t.thumbprint&&e.expiresAtMillis>t.nowMillis+5e3&&t.scopes.every(t=>e.scopes.includes(t))}function Kf(e){try{return Rt(Cf(e).sub).pipe(Wn(e=>e.length>0))}catch{return L()}}function qf(e){return{authorization:`Bearer ${e}`}}function Jf(e){return{authorization:`DPoP ${e.accessToken}`,dpop:e.proof}}function Yf(e){let t=t=>c(t)(function*(){return yield*new Af({relayUrl:e})});return Lf.of({relayUrl:e,listEnvironments:t(`clientRuntime.managedRelay.listEnvironments`),listDevices:t(`clientRuntime.managedRelay.listDevices`),createEnvironmentLinkChallenge:t(`clientRuntime.managedRelay.createEnvironmentLinkChallenge`),linkEnvironment:t(`clientRuntime.managedRelay.linkEnvironment`),unlinkEnvironment:t(`clientRuntime.managedRelay.unlinkEnvironment`),getEnvironmentStatus:t(`clientRuntime.managedRelay.getEnvironmentStatus`),connectEnvironment:t(`clientRuntime.managedRelay.connectEnvironment`),registerDevice:t(`clientRuntime.managedRelay.registerDevice`),unregisterDevice:t(`clientRuntime.managedRelay.unregisterDevice`),registerLiveActivity:t(`clientRuntime.managedRelay.registerLiveActivity`),getAgentActivitySnapshot:t(`clientRuntime.managedRelay.getAgentActivitySnapshot`),resetTokenCache:b.pipe(T(`clientRuntime.managedRelay.resetTokenCache`))})}var Xf=c(`ManagedRelayClient.make`)(function*(e){let t=wf(e.relayUrl);if(t===null)return Yf(e.relayUrl);let n=yield*Ff,r=yield*Vi(Qn,{baseUrl:t}),i=yield*Rc((e.accessTokenStore?yield*e.accessTokenStore.load:[]).filter(t=>t.clientId===e.clientId)),a=uo(Qn,{baseUrl:t}),o={exchangeAccessToken:()=>({method:wi.method,url:a.token.exchangeDpopAccessToken()}),getEnvironmentStatus:e=>({method:mr.method,url:a.dpopClient.getEnvironmentStatus({params:{environmentId:e}})}),connectEnvironment:e=>({method:Bt.method,url:a.dpopClient.connectEnvironment({params:{environmentId:e}})}),registerDevice:()=>({method:po.method,url:a.mobile.registerDevice()}),unregisterDevice:e=>({method:ri.method,url:a.mobile.unregisterDevice({params:{deviceId:e}})}),getAgentActivitySnapshot:()=>({method:zn.method,url:a.mobile.getAgentActivitySnapshot()}),registerLiveActivity:()=>({method:Hr.method,url:a.mobile.registerLiveActivity()})},s=c(`clientRuntime.managedRelay.exchangeAccessToken`)(function*(i){yield*w({"relay.client_id":e.clientId,"relay.scopes":i.scopes.join(` `)});let a=yield*n.createProof(o.exchangeAccessToken()).pipe(S(e=>new Nf(Hf(e)))),s=yield*r.token.exchangeDpopAccessToken({headers:{dpop:a},payload:{grant_type:Xr,subject_token:i.clerkToken,subject_token_type:fa,requested_token_type:Kn,resource:t,scope:_u(i.scopes),client_id:e.clientId}}).pipe(S(Vf(`exchange relay DPoP access token`)),Wf(`Relay DPoP access token exchange`));return vu(s.scope,i.scopes)?s:yield*new Mf({requestedScopes:i.scopes,grantedScope:s.scope})}),l=c(`clientRuntime.managedRelay.obtainAccessToken`)(function*(n){yield*w({"relay.client_id":e.clientId,"relay.scopes":n.scopes.join(` `)});let r=yield*Ce,a=Kf(n.clerkToken);if(bi(a)){yield*w({"relay.token_cache.result":`bypass`,"relay.token_cache.bypass_reason":`invalid_subject_token`});let i=yield*s(n);return{accountId:``,clientId:e.clientId,relayUrl:t,thumbprint:n.thumbprint,scopes:n.scopes,accessToken:i.access_token,expiresAtMillis:r+i.expires_in*1e3}}let o={accountId:a.value,clientId:e.clientId,relayUrl:t,thumbprint:n.thumbprint,scopes:n.scopes,nowMillis:r},c=(yield*Bc(i)).find(e=>Gf(e,o));return c?(yield*w({"relay.token_cache.result":`hit`}),c):yield*Vc(i,r=>H(function*(){let i=yield*Ce,c=r.filter(e=>e.expiresAtMillis>i+5e3),l=c.find(e=>Gf(e,{...o,nowMillis:i}));if(l)return yield*w({"relay.token_cache.result":`hit`}),[l,c];yield*w({"relay.token_cache.result":`miss`});let u=yield*s(n),d={accountId:a.value,clientId:e.clientId,relayUrl:t,thumbprint:n.thumbprint,scopes:n.scopes,accessToken:u.access_token,expiresAtMillis:i+u.expires_in*1e3},f=[...c,d];return e.accessTokenStore&&(yield*e.accessTokenStore.save(f)),[d,f]})).pipe(T(`clientRuntime.managedRelay.tokenCacheCriticalSection`))}),u=c(`clientRuntime.managedRelay.authorize`)(function*(t){yield*w({"relay.client_id":e.clientId,"relay.scopes":t.scopes.join(` `),"http.request.method":t.target.method,"url.full":t.target.url});let r=yield*n.thumbprint,i=yield*l({clerkToken:t.clerkToken,scopes:t.scopes,thumbprint:r}),a=yield*n.createProof({...t.target,accessToken:i.accessToken}).pipe(S(e=>new Pf(Hf(e))));return{accessToken:i.accessToken,proof:a,thumbprint:r}}),d=c(`clientRuntime.managedRelay.invalidateAccessToken`)(function*(t){return yield*Vc(i,n=>{let r=n.filter(e=>e.accessToken!==t);return r.length===n.length?U([!1,n]):(e.accessTokenStore?e.accessTokenStore.save(r):b).pipe(hn([!0,r]))})}),f=(e,t)=>{let n=r=>u(e).pipe(P(e=>t(e).pipe(Ct(Uf,t=>d(e.accessToken).pipe(Ir(e=>w({"relay.token_cache.invalidated":e,"relay.token_cache.invalidation_reason":`invalid_bearer`,"relay.token_cache.retry_after_invalidation":r})),Ir(e=>e&&r?Ko(`Relay rejected a cached DPoP access token; refreshing it once.`):b),j(r?n(!1):D(t)))))));return n(!0)},p=(e,t)=>f({...e,scopes:[Mr]},t);return Lf.of({relayUrl:t,listEnvironments:z(function*(e){return yield*r.client.listEnvironments({headers:qf(e.clerkToken)}).pipe(K(e=>e.environments),S(Vf(`list relay-managed environments`)),Wf(`Relay environment listing`))},T(`clientRuntime.managedRelay.listEnvironments`),cu),listDevices:z(function*(e){return yield*r.client.listDevicesV2({headers:qf(e.clerkToken)}).pipe(K(e=>e.devices),S(Vf(`list relay client devices`)),Wf(`Relay client device listing`))},T(`clientRuntime.managedRelay.listDevices`),cu),createEnvironmentLinkChallenge:z(function*(e){return yield*r.client.createEnvironmentLinkChallenge({headers:qf(e.clerkToken),payload:e.payload}).pipe(S(Vf(`create relay environment link challenge`)),Wf(`Relay environment link challenge`))},T(`clientRuntime.managedRelay.createEnvironmentLinkChallenge`),cu),linkEnvironment:z(function*(e){return yield*r.client.linkEnvironment({headers:qf(e.clerkToken),payload:e.payload}).pipe(S(Vf(`link relay environment`)),Wf(`Relay environment linking`))},T(`clientRuntime.managedRelay.linkEnvironment`),cu),unlinkEnvironment:z(function*(e){return yield*r.client.unlinkEnvironment({headers:qf(e.clerkToken),params:{environmentId:e.environmentId}}).pipe(S(Vf(`unlink relay environment`)),Wf(`Relay environment unlinking`))},T(`clientRuntime.managedRelay.unlinkEnvironment`),cu),getEnvironmentStatus:z(function*(e){return yield*w({"environment.id":e.environmentId}),yield*f({clerkToken:e.clerkToken,scopes:e.scopes,target:o.getEnvironmentStatus(e.environmentId)},t=>r.dpopClient.getEnvironmentStatus({headers:Jf(t),params:{environmentId:e.environmentId}}).pipe(S(Vf(`get relay environment status`)),Wf(`Relay environment status request`)))},T(`clientRuntime.managedRelay.getEnvironmentStatus`),cu),connectEnvironment:z(function*(e){return yield*w({"environment.id":e.environmentId}),yield*f({clerkToken:e.clerkToken,scopes:e.scopes,target:o.connectEnvironment(e.environmentId)},t=>{let n={...e.deviceId?{deviceId:e.deviceId}:{},clientKeyThumbprint:t.thumbprint};return r.dpopClient.connectEnvironment({headers:Jf(t),params:{environmentId:e.environmentId},payload:n}).pipe(S(Vf(`connect relay environment`)),Wf(`Relay environment connection`))})},T(`clientRuntime.managedRelay.connectEnvironment`),cu),registerDevice:z(function*(e){return yield*p({clerkToken:e.clerkToken,target:o.registerDevice()},t=>r.mobile.registerDevice({headers:Jf(t),payload:e.payload}).pipe(S(Vf(`register relay mobile device`)),Wf(`Relay mobile device registration`)))},T(`clientRuntime.managedRelay.registerDevice`),cu),unregisterDevice:z(function*(e){return yield*p({clerkToken:e.clerkToken,target:o.unregisterDevice(e.deviceId)},t=>r.mobile.unregisterDevice({headers:Jf(t),params:{deviceId:e.deviceId}}).pipe(S(Vf(`unregister relay mobile device`)),Wf(`Relay mobile device unregistration`)))},T(`clientRuntime.managedRelay.unregisterDevice`),cu),getAgentActivitySnapshot:z(function*(e){return yield*p({clerkToken:e.clerkToken,target:o.getAgentActivitySnapshot()},e=>r.mobile.getAgentActivitySnapshot({headers:Jf(e)}).pipe(S(Vf(`read relay agent activity snapshot`)),Wf(`Relay agent activity snapshot`)))},T(`clientRuntime.managedRelay.getAgentActivitySnapshot`),cu),registerLiveActivity:z(function*(e){return yield*p({clerkToken:e.clerkToken,target:o.registerLiveActivity()},t=>r.mobile.registerLiveActivity({headers:Jf(t),payload:e.payload}).pipe(S(Vf(`register relay live activity`)),Wf(`Relay Live Activity registration`)))},T(`clientRuntime.managedRelay.registerLiveActivity`),cu),resetTokenCache:Hc(i,[]).pipe(j(e.accessTokenStore?e.accessTokenStore.clear:b),T(`clientRuntime.managedRelay.resetTokenCache`),cu)})}),Zf=e=>Hn(Lf,Xf(e)),Qf=class extends Pn(`@p4code/client-runtime/authorization/RemoteDpopAccessToken`)({environmentId:gt,accountId:Mt(B),label:B,endpoint:Ja,accessToken:B,expiresAtEpochMs:to,dpopThumbprint:B}){},$f=class extends M()(`@p4code/client-runtime/authorization/tokenStore/RemoteDpopAccessTokenStore`){},ep=e=>$f.of(e),tp=class extends M()(`@p4code/client-runtime/authorization/service/RemoteEnvironmentAuthorization`){},np=3e3,rp=1e4,ip=3e4;function ap(e){return e._tag===`ConnectionTransientError`||e._tag===`ConnectionBlockedError`?e:id(e)}var op=c(`clientRuntime.connection.remote.fetchDescriptor`)(function*(e,t){return yield*no({httpBaseUrl:e}).pipe(S(e=>rd(e,t)))}),sp=H(function*(){let e=yield*ma,t=yield*Ff,n=yield*Lf,r=yield*ad,i=yield*od,a=yield*sd,o=yield*$f,s=yield*Ai,l=yield*Vt(1),u=new Map,d=new Map,f=yield*q(new Map),p=c(`clientRuntime.connection.remote.verifyDirectEndpoint`)(function*(e){let t=yield*Ce,n=(yield*J(f)).get(e.expectedEnvironmentId),r=n?.httpBaseUrl===e.httpBaseUrl&&n.validatedAtEpochMs+rp>t,i=r?n.descriptor:yield*op(e.httpBaseUrl,e.connectionMethod).pipe(k(Ai,s));return i.environmentId===e.expectedEnvironmentId?(r||(yield*Nc(f,n=>{let r=new Map(n);return r.set(e.expectedEnvironmentId,{httpBaseUrl:e.httpBaseUrl,descriptor:i,validatedAtEpochMs:t}),r})),i):yield*ed({expected:e.expectedEnvironmentId,actual:i.environmentId})}),m=c(`clientRuntime.connection.remote.authorizeBearer`)(function*(e){let t=yield*p(e),n=yield*Eu({wsBaseUrl:e.wsBaseUrl,httpBaseUrl:e.httpBaseUrl,bearerToken:e.bearerToken,clientMetadata:a.metadata,connectionMethod:e.connectionMethod}).pipe(S(rd),k(Ai,s));return{environmentId:t.environmentId,label:t.label,httpBaseUrl:e.httpBaseUrl,socketUrl:n,httpAuthorization:{_tag:`Bearer`,token:e.bearerToken}}}),h=c(`clientRuntime.connection.remote.createDpopSocketUrl`)(function*(e,n,r=e.endpoint){let i=yield*t.createProof({method:`POST`,url:ya(r.httpBaseUrl,`/api/auth/websocket-ticket`),accessToken:e.accessToken}).pipe(S(()=>new Z({reason:`configuration`,detail:`Could not create the websocket authorization proof.`})));return yield*Du({wsBaseUrl:r.wsBaseUrl,httpBaseUrl:r.httpBaseUrl,accessToken:e.accessToken,dpopProof:i,clientMetadata:a.metadata,connectionMethod:`relay`,...n===void 0?{}:{timeoutMs:n}}).pipe(k(Ai,s))}),g=()=>new Z({reason:`authentication`,detail:`Your cloud sign-in changed. Sign in again to authorize the environment.`}),_=z(function*(e){let t=yield*r.identity;if(bi(t)||t.value!==e)return yield*g()}),ee=z(function*(e,t){let n=yield*o.get(e);I(n)&&n.value.accessToken===t&&(yield*o.remove(e),u.delete(e))}),v=c(`relay.connection.bootstrap.obtain`)(function*(e,t){yield*_(t);let a=yield*r.clerkToken.pipe(T(`relay.connection.cloudSessionToken.resolve`)),o=yield*i.deviceId.pipe(T(`relay.connection.deviceIdentity.resolve`));yield*_(t);let s=yield*n.connectEnvironment({clerkToken:a,scopes:[io],environmentId:e,...I(o)?{deviceId:o.value}:{}}).pipe(S(nd));return s.environmentId===e?(yield*_(t),s):yield*ed({expected:e,actual:s.environmentId})}),y=c(`clientRuntime.connection.remote.exchangeDpopToken`)(function*(e,n,r){let i=yield*v(e,r),o=yield*op(i.endpoint.httpBaseUrl,`relay`).pipe(k(Ai,s),T(`environment.authorization.descriptor`));if(o.environmentId!==e)return yield*ed({expected:e,actual:o.environmentId});let c=yield*t.createProof({method:`POST`,url:ya(i.endpoint.httpBaseUrl,`/oauth/token`)}).pipe(S(()=>new Z({reason:`configuration`,detail:`Could not create the environment authorization proof.`})));yield*_(r);let l=yield*Su({httpBaseUrl:i.endpoint.httpBaseUrl,credential:i.credential,dpopProof:c,clientMetadata:a.metadata}).pipe(S(id),k(Ai,s),T(`environment.authorization.accessToken.exchange`)),u=yield*Ce;return new Qf({environmentId:o.environmentId,accountId:r.accountId,label:o.label,endpoint:i.endpoint,accessToken:l.access_token,expiresAtEpochMs:u+l.expires_in*1e3,dpopThumbprint:n})}),b=c(`clientRuntime.connection.remote.getDpopToken`)(function*(n){let i=yield*r.identity;if(bi(i))return yield*g();let a=i.value,s=yield*t.thumbprint.pipe(S(()=>new Z({reason:`configuration`,detail:`Could not load the environment authorization key.`})),T(`environment.authorization.dpopKey.resolve`)),c=yield*l.withPermits(1)(H(function*(){yield*_(a);let t=yield*Ce,i=yield*o.get(n.expectedEnvironmentId).pipe(T(`environment.authorization.accessToken.cache`)),c=u.get(n.expectedEnvironmentId);if(I(i)&&i.value.environmentId===n.expectedEnvironmentId&&i.value.accountId===a.accountId&&i.value.dpopThumbprint===s&&i.value.expiresAtEpochMs>t+6e4&&i.value.accessToken!==n.rejectedAccessToken&&(c?.accessToken!==i.value.accessToken||c.identity===a))return u.set(n.expectedEnvironmentId,{accessToken:i.value.accessToken,identity:a}),{token:U(i.value),fromCache:!0};n.rejectedAccessToken!==void 0&&(yield*ee(n.expectedEnvironmentId,n.rejectedAccessToken));let f=d.get(n.expectedEnvironmentId);if(f?.identity===a&&f.thumbprint===s)return{token:f.token,fromCache:!1};let p={},m=yield*y(n.expectedEnvironmentId,s,a).pipe(P(e=>l.withPermits(1)(H(function*(){yield*_(a),yield*o.put(e).pipe(T(`environment.authorization.accessToken.persist`));let t=yield*r.identity;return bi(t)||t.value!==a?(yield*ee(n.expectedEnvironmentId,e.accessToken),yield*g()):(u.set(n.expectedEnvironmentId,{accessToken:e.accessToken,identity:a}),d.get(n.expectedEnvironmentId)?.id===p&&d.delete(n.expectedEnvironmentId),e)}))),oi({duration:ip,orElse:()=>D(new X({reason:`timeout`,detail:`Timed out renewing the environment credential.`}))}),bn(l.withPermits(1)(G(()=>{d.get(n.expectedEnvironmentId)?.id===p&&d.delete(n.expectedEnvironmentId)}))),ur(e)),h=re(m);return d.set(n.expectedEnvironmentId,{id:p,identity:a,thumbprint:s,token:h}),{token:h,fromCache:!1}}));yield*w({"connection.remote_token_cache":c.fromCache?`hit`:`miss`});let f=yield*c.token;return yield*_(a),{token:f,fromCache:c.fromCache,identity:a}}),x=(e,t=e.endpoint.httpBaseUrl)=>({environmentId:e.environmentId,label:e.label,httpBaseUrl:t,httpAuthorization:{_tag:`Dpop`,accessToken:e.accessToken,expiresAtEpochMs:e.expiresAtEpochMs}}),C=c(`clientRuntime.connection.remote.authorizeDpop`)(function*(e){let t=e.directEndpoint;t!==void 0&&(yield*p({expectedEnvironmentId:e.expectedEnvironmentId,httpBaseUrl:t.httpBaseUrl,connectionMethod:`direct`}));let n=(e,n)=>({...x(e,t?.httpBaseUrl),socketUrl:n}),r=yield*b(e);if(r.fromCache){let i=yield*h(r.token,np,t).pipe(je);if(Te(i))return yield*_(r.identity),n(r.token,i.success);if(i.failure._tag===`ConnectionBlockedError`||t!==void 0&&i.failure._tag!==`EnvironmentAuthInvalidError`)return yield*ap(i.failure);r=yield*b({...e,rejectedAccessToken:r.token.accessToken})}let i=yield*h(r.token,void 0,t).pipe(je);return kn(i)?((t===void 0||i.failure._tag===`ConnectionBlockedError`)&&(yield*l.withPermits(1)(ee(e.expectedEnvironmentId,r.token.accessToken))),yield*ap(i.failure)):(yield*_(r.identity),n(r.token,i.success))});return tp.of({authorizeBearer:m,authorizeDpop:e=>C(e).pipe(T(`environment.authorization`)),authorizeDpopHttp:e=>b(e).pipe(K(({token:e})=>x(e)),T(`environment.authorization.http`),cu)})}),cp=Hn(tp,sp),lp={connectionId:B,environmentId:gt,label:B},up=class extends Ka()(`BearerConnectionProfile`,{...lp,httpBaseUrl:B,wsBaseUrl:B,learned:Mt(Yn(!0)),authorization:Mt(Yn(`p4-connect`)),network:Mt(Yn(`tailscale`))}){},dp=class extends Ka()(`SshConnectionProfile`,{...lp,target:bt}){},fp=ni([up,dp]),pp=class extends Ka()(`BearerConnectionCredential`,{token:B}){},mp=ni([pp]),hp=class extends Ka()(`PrimaryConnectionRegistration`,{target:Bu}){},gp=class extends Ka()(`RelayConnectionRegistration`,{target:Hu}){},_p=class extends Ka()(`BearerConnectionRegistration`,{target:Vu,profile:up,credential:pp}){},vp=class extends Ka()(`SshConnectionRegistration`,{target:Uu,profile:dp}){};ni([gp,_p,vp]),ni([hp,_p]);function yp(e){switch(e._tag){case`PrimaryConnectionRegistration`:case`RelayConnectionRegistration`:return{target:e.target,profile:L(),enabled:!0};case`BearerConnectionRegistration`:case`SshConnectionRegistration`:return{target:e.target,profile:V(e.profile),enabled:!0}}}var bp=class extends M()(`@p4code/client-runtime/connection/credentialStore/ConnectionCredentialStore`){},xp=e=>bp.of(e),Sp=class extends M()(`@p4code/client-runtime/connection/profileStore/ConnectionProfileStore`){},Cp=e=>Sp.of(e),wp=class extends M()(`@p4code/client-runtime/connection/connectivity`){},Tp=e=>wp.of(e),Ep=e=>Ba(wp,Tp(e)),Dp=class extends R()(`ConnectionPersistenceError`,{operation:F([`list-targets`,`list-disabled-targets`,`register-connection`,`set-connection-routes`,`remove-connection`,`set-connection-enabled`,`load-shell`,`save-shell`,`load-thread`,`save-thread`,`remove-thread`,`load-server-config`,`save-server-config`,`load-vcs-refs`,`save-vcs-refs`,`remove-vcs-refs`,`clear-vcs-refs`,`clear-environment`]),message:B}){},Op=class extends M()(`@p4code/client-runtime/platform/persistence/ConnectionTargetStore`){},kp=class extends M()(`@p4code/client-runtime/platform/persistence/ConnectionRegistrationStore`){},Ap=class extends M()(`@p4code/client-runtime/platform/persistence/EnvironmentCacheStore`){},jp=class extends Ao(`@p4code/client-runtime/platform/persistence/EnvironmentOwnedDataCleanup`,{defaultValue:()=>({clear:()=>b})}){},Mp=F([`off`,`read`,`read-write`]),Np=ua({environmentId:gt,connectionKey:B,permission:Mp});function Pp(e){let t=[{target:e.target,profile:e.profile},...e.alternateRoutes??[]].filter(e=>{let t=W(e.profile);return t?._tag!==`BearerConnectionProfile`||t.learned!==!0});if(t.length===1)return Fp(t[0].target,t[0].profile);let n=t.map(e=>Fp(e.target,e.profile));return n.every(e=>e!==null)?JSON.stringify([...n].sort()):null}function Fp(e,t){let n={profile:t};if(e._tag===`RelayConnectionTarget`)return JSON.stringify([e._tag,e.environmentId]);let r=W(n.profile);if(e._tag===`SshConnectionTarget`){if(r?._tag!==`SshConnectionProfile`)return null;let{alias:t,hostname:n,username:i,port:a}=r.target;return JSON.stringify([e._tag,e.environmentId,t,n,i,a])}let i=e._tag===`PrimaryConnectionTarget`?[e.httpBaseUrl,e.wsBaseUrl]:r?._tag===`BearerConnectionProfile`?[r.httpBaseUrl,r.wsBaseUrl]:null;if(i===null)return null;try{let t=i.map(e=>new URL(e));return![`http:`,`https:`].includes(t[0].protocol)||![`ws:`,`wss:`].includes(t[1].protocol)||t.some(e=>e.username||e.password)?null:JSON.stringify([e._tag,e.environmentId,...t.map(e=>e.href.replace(/\/+$/,``))])}catch{return null}}function Ip(e,t){let n=Pp(e);return n===null?`off`:t.find(e=>e.connectionKey===n)?.permission??`off`}var Lp=class extends Ao(`@p4code/client-runtime/connection/GitHubRoutingPermissions`,{defaultValue:()=>({get:()=>U(`off`),changes:Pe([]),set:()=>D(new Z({reason:`unsupported`,detail:`GitHub routing preferences are unavailable on this client.`})),forget:()=>b})}){};c(`makeGitHubRoutingPermissions`)(function*(e){let t=yield*is(yield*e.read),n=yield*Vt(1),r=r=>n.withPermits(1)(H(function*(){let n=yield*A(t),i=r(n);i!==n&&(yield*e.write(i),yield*Ne(t,i))}));return Lp.of({get:e=>A(t).pipe(K(t=>Ip(e,t))),changes:st(t),set:(e,t)=>{let n=Pp(e);return n===null?D(new Z({reason:`configuration`,detail:`This environment does not have a saved connection endpoint.`})):r(r=>[...r.filter(t=>t.environmentId!==e.target.environmentId),...t===`off`?[]:[{environmentId:e.target.environmentId,connectionKey:n,permission:t}]])},forget:e=>r(t=>t.some(t=>t.environmentId===e)?t.filter(t=>t.environmentId!==e):t)})});function Rp(e){let t=e.orchestrationProtocolVersion??1;return t===2?null:t>2?new Z({reason:`unsupported`,detail:`This client is not supported by this server. Update your app or use a compatible release to connect to ${e.label}.`}):new Z({reason:`unsupported`,detail:`This client requires a newer server. Update P4 Code on ${e.label} to connect.`,...zp(e)?{serverUpdateRequired:!0}:{}})}function zp(e){let{serverSelfUpdate:t,desktopAppUpdate:n}=e.capabilities;return t!==void 0&&(t!==`desktop-managed`||n===!0)}function Bp(e){let t=new URL(e);return t.searchParams.set(Sr,`2`),t.toString()}var Vp=e=>e.toLowerCase().replace(/^\[|\]$/g,``).replace(/\.+$/u,``),Hp=e=>{let t=Vp(e).split(`.`).map(Number);return t.length===4&&t.every(e=>Number.isInteger(e)&&e>=0&&e<=255)?t:null},Up=e=>{let t=Vp(e);if(!t.startsWith(`::ffff:`))return null;let n=t.slice(7),r=Hp(n);if(r)return r;let i=n.split(`:`);if(i.length!==2||i.some(e=>!/^[\da-f]{1,4}$/u.test(e)))return null;let a=Number.parseInt(i[0],16),o=Number.parseInt(i[1],16);return[a>>>8,a&255,o>>>8,o&255]},Wp=e=>{let t=Vp(e);if(!t.includes(`:`))return null;let n=t.split(`::`);if(n.length>2)return null;let r=n[0]?n[0].split(`:`):[],i=n[1]?n[1].split(`:`):[];if([...r,...i].some(e=>!/^[\da-f]{1,4}$/u.test(e)))return null;let a=8-r.length-i.length;return n.length===1&&a!==0||n.length===2&&a<1?null:[...r,...Array.from({length:a},()=>`0`),...i].map(e=>Number.parseInt(e,16))},Gp=(e,t,n)=>{let r=Math.floor(n/16);if(e.slice(0,r).some((e,n)=>e!==t[n]))return!1;let i=n%16;if(i===0)return!0;let a=65535<<16-i&65535;return(e[r]&a)===(t[r]&a)},Kp=e=>e[0]===0||e[0]===10||e[0]===127||e[0]===100&&e[1]>=64&&e[1]<=127||e[0]===172&&e[1]>=16&&e[1]<=31||e[0]===192&&e[1]===168||e[0]===169&&e[1]===254||e[0]===198&&e[1]>=18&&e[1]<=19,qp=e=>Kp(e)||e[0]>=224||e[0]===192&&e[1]===0&&e[2]===0||e[0]===192&&e[1]===0&&e[2]===2||e[0]===192&&e[1]===88&&e[2]===99||e[0]===198&&e[1]===51&&e[2]===100||e[0]===203&&e[1]===0&&e[2]===113,Jp=e=>{let t=Vp(e);return t===`localhost`||t===`::1`||Hp(t)?.[0]===127},Yp=e=>{let t=Vp(e);if(t.endsWith(`.ts.net`))return!0;let n=Wp(t);return n!==null&&Gp(n,[64890,4444,41440,0,0,0,0,0],48)},Xp=e=>{let t=Hp(e);return t!==null&&t[0]===100&&t[1]>=64&&t[1]<=127},Zp=e=>{let t=Vp(e);if(t===`::`||Jp(t)||t.endsWith(`.localhost`)||t.endsWith(`.local`)||t===`home.arpa`||t.endsWith(`.home.arpa`)||!t.includes(`.`)&&!t.includes(`:`)||t.endsWith(`.ts.net`))return!0;let n=Hp(t)??Up(t);if(n)return Kp(n);let r=t.split(`:`,1)[0]??``;if(!t.includes(`:`)||!/^[\da-f]{1,4}$/u.test(r))return!1;let i=Number.parseInt(r,16);return Number.isInteger(i)&&((i&65024)==64512||(i&65472)==65152)},Qp=[`.alt`,`.corp`,`.example`,`.home`,`.internal`,`.intranet`,`.invalid`,`.lan`,`.onion`,`.private`,`.test`],$p=new Set([`corp`,`internal`,`intranet`]),em=e=>{if(e.endsWith(`..`))return!1;let t=Vp(e);if(Zp(t)||Qp.some(e=>t===e.slice(1)||t.endsWith(e))||t.split(`.`).some(e=>$p.has(e)))return!1;let n=Hp(t)??Up(t);if(n)return!qp(n);if(!t.includes(`:`))return!0;let r=Wp(t);if(!r)return!1;if(Gp(r,[100,65435,0,0,0,0,0,0],96))return!qp([r[6]>>>8,r[6]&255,r[7]>>>8,r[7]&255]);let i=r[0];return(i&57344)==8192?Gp(r,[8193,0,0,0,0,0,0,0],23)?r[1]===1&&r.slice(2,7).every(e=>e===0)&&[1,2,3].includes(r[7])||Gp(r,[8193,3,0,0,0,0,0,0],32)||Gp(r,[8193,4,274,0,0,0,0,0],48)||Gp(r,[8193,32,0,0,0,0,0,0],28)||Gp(r,[8193,48,0,0,0,0,0,0],28):!(Gp(r,[8193,3512,0,0,0,0,0,0],32)||Gp(r,[8194,0,0,0,0,0,0,0],16)||i===16383&&!(r[1]&61440)):!1},tm=`relay`;function Q(e){switch(e._tag){case`PrimaryConnectionTarget`:return`primary`;case`RelayConnectionTarget`:return tm;case`BearerConnectionTarget`:case`SshConnectionTarget`:return e.connectionId}}function $(e){return[{target:e.target,profile:e.profile},...e.alternateRoutes??[]]}function nm(e,t){let[n,...r]=t;if(n===void 0)throw Error(`A saved environment needs at least one route.`);let{alternateRoutes:i,...a}=e;return{...a,target:n.target,profile:n.profile,...r.length===0?{}:{alternateRoutes:r}}}function rm(e,t){return nm(e,[t])}function im(e){if(e.target._tag===`PrimaryConnectionTarget`)return e.target.httpBaseUrl;let t=W(e.profile);return t?._tag===`BearerConnectionProfile`?t.httpBaseUrl:null}function am(e){let t=im(e);if(t===null)return null;try{return new URL(t).hostname}catch{return null}}function om(e){switch(e.target._tag){case`RelayConnectionTarget`:return`relay`;case`SshConnectionTarget`:return`ssh`;case`PrimaryConnectionTarget`:case`BearerConnectionTarget`:{let t=am(e);if(t===null)return`public`;if(Jp(t))return`loopback`;let n=W(e.profile);return n?._tag===`BearerConnectionProfile`&&n.network===`tailscale`||Yp(t)?`tailnet`:Xp(t)?`vpn`:Zp(t)?`lan`:`public`}}}var sm={loopback:0,lan:1,tailnet:2,vpn:2,public:3,ssh:4,relay:5};function cm(e,t){let n=sm[om(t)],r=e.findIndex(e=>sm[om(e)]>n);return r===-1?[...e,t]:[...e.slice(0,r),t,...e.slice(r)]}function lm(e,t){let n=Q(t.target);return e.some(e=>Q(e.target)===n)?e.map(e=>Q(e.target)===n?t:e):cm(e,t)}function um(e,t){let n=dm(t);return n===null?void 0:e.find(e=>dm(e)===n)}function dm(e){let t=W(e.profile);switch(t?._tag){case`BearerConnectionProfile`:return`bearer:${t.httpBaseUrl.replace(/\/+$/,``)}`;case`SshConnectionProfile`:return`ssh:${xm(t.target)}`;default:return null}}function fm(e){switch(om(e)){case`relay`:return`P4 Connect`;case`loopback`:return`This device`;case`lan`:return`LAN`;case`tailnet`:return`Tailscale`;case`vpn`:return`VPN`;case`ssh`:{let t=W(e.profile);return t?._tag===`SshConnectionProfile`?`SSH ${t.target.username?`${t.target.username}@`:``}${t.target.hostname}`:`SSH`}case`public`:return am(e)??`Remote link`}}function pm(e){if(e.target._tag===`SshConnectionTarget`){let t=W(e.profile);return t?._tag===`SshConnectionProfile`?t.target.alias:null}return im(e)}function mm(e){return[e.target,...(e.alternateRoutes??[]).map(e=>e.target)].some(e=>e._tag===`RelayConnectionTarget`)}function hm(e){let{entry:t}=e,n=e.activeRoute.target,r=$(t);if(n._tag!==`RelayConnectionTarget`&&n._tag!==`BearerConnectionTarget`)return null;let i=W(e.activeRoute.profile),a=n._tag===`RelayConnectionTarget`||i?._tag===`BearerConnectionProfile`&&i.authorization===`p4-connect`?`p4-connect`:void 0,o=a===void 0&&n._tag===`BearerConnectionTarget`?vm(n.connectionId):void 0,s=new Map,c=new Set;for(let t of e.reported){let n;try{n=new URL(t.httpBaseUrl)}catch{continue}(n.protocol===`http:`||n.protocol===`https:`)&&(n.protocol!==`http:`||e.allowInsecure)&&(Jp(n.hostname)||(s.set(n.origin,n),t.kind===`tailnet`&&c.add(n.origin)))}let l=e=>e.replace(/\/+$/,``),u=new Set(r.flatMap(e=>{let t=im(e);return t===null||ym(e)?[]:[l(t)]})),d=r.flatMap(e=>{let t=im(e);return ym(e)?t===null||!s.has(l(t))||u.has(l(t))?[]:(u.add(l(t)),[gm(e,c.has(l(t)))]):[t===null||!s.has(l(t))?e:gm(e,c.has(l(t)))]});for(let e of s.values()){if(u.has(e.origin))continue;let n=`${e.origin}/`,r=_m(t.target.environmentId,e.origin,o);d=cm(d,{target:new Vu({environmentId:t.target.environmentId,label:t.target.label,connectionId:r}),profile:V(new up({connectionId:r,environmentId:t.target.environmentId,label:t.target.label,httpBaseUrl:n,wsBaseUrl:`${e.protocol===`https:`?`wss:`:`ws:`}//${e.host}/`,learned:!0,...a===void 0?{}:{authorization:a},...c.has(e.origin)?{network:`tailscale`}:{}}))})}let f=e=>e.map(e=>`${Q(e.target)} ${im(e)??``} ${om(e)}`).join(`
4
4
  `);return f(r)===f(d)?null:d}function gm(e,t){let n=W(e.profile);return n?._tag!==`BearerConnectionProfile`||n.network===`tailscale`===t?e:{target:e.target,profile:V(new up({connectionId:n.connectionId,environmentId:n.environmentId,label:n.label,httpBaseUrl:n.httpBaseUrl,wsBaseUrl:n.wsBaseUrl,...n.learned===void 0?{}:{learned:n.learned},...n.authorization===void 0?{}:{authorization:n.authorization},...t?{network:`tailscale`}:{}}))}}function _m(e,t,n){return n===void 0?`learned:${e}:${t}`:`learned:${e}:${t}@${n}`}function vm(e){let t=e.indexOf(`@`);return e.startsWith(`learned:`)&&t!==-1?e.slice(t+1):e}function ym(e){let t=W(e.profile);return t?._tag===`BearerConnectionProfile`&&t.learned===!0}function bm(e,t){let n=e.find(e=>Q(e.target)===t);return n===void 0?e:e.filter(e=>{if(e===n)return!1;if(!ym(e))return!0;let r=W(e.profile);return r?._tag===`BearerConnectionProfile`&&r.authorization===`p4-connect`?n.target._tag!==`RelayConnectionTarget`:vm(Q(e.target))!==t})}function xm(e){return JSON.stringify([e.alias,e.hostname,e.username,e.port])}var Sm=class extends M()(`@p4code/client-runtime/connection/resolver/ConnectionResolver`){},Cm=pe(up),wm=pe(dp),Tm=pe(pp);function Em(e,t){let n=new URL(e.wsBaseUrl);return(n.pathname===``||n.pathname===`/`)&&(n.pathname=`/ws`),xu(n,t,`direct`),n.toString()}var Dm=c(`clientRuntime.connection.broker.makePrimary`)(function*(){let e=yield*cd,t=yield*sd,n=yield*tp;return c(`clientRuntime.connection.broker.primary`)(function*(r){let i=yield*e.bearerToken;return bi(i)?{environmentId:r.environmentId,label:r.label,httpBaseUrl:r.httpBaseUrl,socketUrl:Em(r,t.metadata),httpAuthorization:null,target:r}:{...yield*n.authorizeBearer({expectedEnvironmentId:r.environmentId,httpBaseUrl:r.httpBaseUrl,wsBaseUrl:r.wsBaseUrl,bearerToken:i.value,connectionMethod:`direct`}),target:r}})}),Om=c(`clientRuntime.connection.broker.makeBearer`)(function*(){let e=yield*bp,t=yield*tp;return c(`clientRuntime.connection.broker.bearer`)(function*(n){let r=n.target,i=yield*Wa(n.profile,()=>Qu(r.connectionId));if(!Cm(i))return yield*new Z({reason:`configuration`,detail:`Connection profile ${r.connectionId} is not a bearer connection.`});if(i.environmentId!==r.environmentId)return yield*ed({expected:r.environmentId,actual:i.environmentId});if(i.authorization===`p4-connect`)return{...yield*t.authorizeDpop({expectedEnvironmentId:r.environmentId,directEndpoint:{httpBaseUrl:i.httpBaseUrl,wsBaseUrl:i.wsBaseUrl}}),target:r};let a=yield*e.get(vm(r.connectionId)).pipe(P(Ua({onNone:()=>D($u(r.connectionId)),onSome:U})));if(!Tm(a))return yield*$u(r.connectionId);let o=yield*t.authorizeBearer({expectedEnvironmentId:r.environmentId,httpBaseUrl:i.httpBaseUrl,wsBaseUrl:i.wsBaseUrl,bearerToken:a.token,connectionMethod:`direct`});return{environmentId:o.environmentId,label:o.label,httpBaseUrl:o.httpBaseUrl,socketUrl:o.socketUrl,httpAuthorization:o.httpAuthorization,target:r}})}),km=c(`clientRuntime.connection.broker.makeRelay`)(function*(){let e=yield*tp;return z(function*(t){let n=yield*e.authorizeDpop({expectedEnvironmentId:t.environmentId});return{environmentId:n.environmentId,label:n.label,httpBaseUrl:n.httpBaseUrl,socketUrl:n.socketUrl,httpAuthorization:n.httpAuthorization,target:t}},T(`clientRuntime.connection.broker.relay`),cu)}),Am=c(`clientRuntime.connection.broker.makeSsh`)(function*(){let e=yield*Sp,t=yield*ld,n=yield*tp;return c(`clientRuntime.connection.broker.ssh`)(function*(r){let i=r.target,a=yield*Wa(r.profile,()=>Qu(i.connectionId));if(!wm(a))return yield*new Z({reason:`configuration`,detail:`Connection profile ${i.connectionId} is not an SSH connection.`});if(a.environmentId!==i.environmentId)return yield*ed({expected:i.environmentId,actual:a.environmentId});let o=yield*t.prepare({connectionId:i.connectionId,expectedEnvironmentId:i.environmentId,target:a.target}),s=new dp({connectionId:a.connectionId,environmentId:a.environmentId,label:a.label,target:o.bootstrap.target});Pp(r)!==Pp({...r,profile:V(s)})&&(yield*(yield*Lp).forget(i.environmentId)),yield*e.put(s);let c=yield*n.authorizeBearer({expectedEnvironmentId:i.environmentId,httpBaseUrl:o.bootstrap.httpBaseUrl,wsBaseUrl:o.bootstrap.wsBaseUrl,bearerToken:o.bearerToken,connectionMethod:`ssh`});return{environmentId:c.environmentId,label:c.label,httpBaseUrl:c.httpBaseUrl,socketUrl:c.socketUrl,httpAuthorization:c.httpAuthorization,target:i}})}),jm=H(function*(){let e=yield*Dm(),t=yield*Om(),n=yield*km(),r=yield*Am(),i=yield*Ai,a=c(`clientRuntime.connection.broker.authorize`)(function*(a){let o=a.target;yield*w({"connection.environment.id":o.environmentId,"connection.target.kind":o._tag});let s=yield*(()=>{switch(o._tag){case`PrimaryConnectionTarget`:return e(o);case`BearerConnectionTarget`:return t({...a,target:o});case`RelayConnectionTarget`:return n(o);case`SshConnectionTarget`:return r({...a,target:o})}})(),c=yield*no({httpBaseUrl:s.httpBaseUrl}).pipe(S(rd),k(Ai,i));return c.environmentId===o.environmentId?{prepared:s,descriptor:c}:yield*ed({expected:o.environmentId,actual:c.environmentId})}),o=c(`clientRuntime.connection.broker.prepare`)(function*(e){let{prepared:t,descriptor:n}=yield*a(e),r=Rp(n);return r===null?{...t,socketUrl:Bp(t.socketUrl)}:yield*r});return Sm.of({prepare:o,prepareForUpdate:a})}),Mm=Hn(Sm,jm),Nm=Pl(An),Pm=`15 seconds`;function Fm(e){if(e.environmentThemes===void 0&&e.usageLimitSources===void 0)return e;let{environmentThemes:t,usageLimitSources:n,...r}=e;return r}function Im(e,t){switch(t.type){case`snapshot`:{let n=t.config.environment.capabilities,r=n.environmentThemes===!0&&I(e)?e.value.config.environmentThemes:void 0,i=n.usageLimitSources===!0&&I(e)?e.value.config.usageLimitSources:void 0;return V({config:{...t.config,...r===void 0?{}:{environmentThemes:r},...i===void 0?{}:{usageLimitSources:i}},latestEvent:t,source:`live`})}case`keybindingsUpdated`:return sa(e,e=>({config:{...e.config,keybindings:t.payload.keybindings,issues:t.payload.issues},latestEvent:t,source:`live`}));case`providerStatuses`:return sa(e,e=>({config:{...e.config,providers:t.payload.providers},latestEvent:t,source:`live`}));case`settingsUpdated`:return sa(e,e=>({config:{...e.config,settings:t.payload.settings},latestEvent:t,source:`live`}));case`environmentThemesUpdated`:return sa(e,e=>({config:{...e.config,environmentThemes:t.payload.themes.length>0?t.payload.themes:void 0},latestEvent:t,source:`live`}));case`usageLimitSourcesUpdated`:return sa(e,e=>({config:{...e.config,usageLimitSources:t.payload.sources.length>0?t.payload.sources:void 0},latestEvent:t,source:`live`}))}}var Lm=`15 seconds`,Rm=class extends M()(`@p4code/client-runtime/rpc/session/RpcSessionFactory`){};function zm(e){return[{version:1,type:`snapshot`,config:Fm(e.projection.config)},...e.themesEvent===void 0?[]:[e.themesEvent],...e.sourcesEvent===void 0?[]:[e.sourcesEvent]]}var Bm=pe(il);function Vm(e,t,n){switch(e._tag){case`EnvironmentAuthorizationError`:return new Z({reason:`permission`,detail:e.message,hop:`server`,via:n});case`KeybindingsConfigParseError`:case`ServerSettingsError`:return new X({reason:`remote-unavailable`,detail:e.message,hop:`server`,via:n});case`RpcClientError`:return new X({reason:`transport`,detail:`${e.message}${Bm(e.reason)?t:``}`,...Hm(n)})}}function Hm(e){return{hop:e===`relay`?`tunnel`:`server`,via:e}}var Um=c(`RpcSessionFactory.make`)(function*(e={}){let t=yield*sl,n={...e.environmentThemes===!0?{environmentThemes:!0}:{},...e.usageLimitSources===!0?{usageLimitSources:!0}:{},...e.usageLimitsCommand===!0?{usageLimitsCommand:!0}:{}},r=z(function*(e){let r=e.target._tag===`RelayConnectionTarget`?`relay`:`direct`,i=r===`relay`?` ${Ru}`:``,a=e=>Vm(e,i,r);yield*w({"connection.environment.id":e.environmentId});let o=yield*Vo(),s=yield*Vo(),c=yield*q(!1),l=Vl.of({onConnect:ne(o,void 0).pipe(le),onDisconnect:Ho([Dr(o),J(c)]).pipe(P(([t,n])=>sr(s,new X({reason:`transport`,detail:`${t?n?`${e.label} stopped responding.`:`${e.label} disconnected.`:`${e.label} could not establish a WebSocket connection.`}${i}`,...Hm(r)}))),le)}),u=pl(e.socketUrl,{openTimeout:Lm}).pipe(ao(Ba(sl,t))),d=Hn(Ll,Rl({pingTimeout:Pm,retryTransientErrors:!1,retryPolicy:Sn(0),onPingTimeout:Y(c,!0)})).pipe(ao(Zr(u,kl,Ba(Vl,l)))),f=yield*Ta(d).pipe(T(`environment.websocket.connect`)),m=yield*Nm.pipe(ye(f)),h=yield*Vo(),g=yield*Vo(),_=yield*Vo(),ee=yield*q(L()),v=yield*Zi(64),y=new X({reason:`remote-unavailable`,detail:`${e.label} config subscription ended.`});yield*m[_n.subscribeServerConfig](n).pipe(lt(e=>H(function*(){let t=yield*Mc(ee,t=>{let n=Im(sa(t,e=>e.projection),e);if(bi(n))return[L(),t];let r={projection:n.value,revision:Ua(t,{onNone:()=>1,onSome:e=>e.revision+1}),themesEvent:e.type===`environmentThemesUpdated`?e:e.type===`snapshot`&&e.config.environment.capabilities.environmentThemes!==!0?void 0:Na(t)?.themesEvent,sourcesEvent:e.type===`usageLimitSourcesUpdated`?e:e.type===`snapshot`&&e.config.environment.capabilities.usageLimitSources!==!0?void 0:Na(t)?.sourcesEvent};return[V({event:e,replay:r,revision:r.revision}),V(r)]});I(t)&&(yield*wa(v,t.value)),e.type===`snapshot`&&(yield*ne(h,e.config))})),Pi(e=>p(e)?Ho([ne(g,void 0),sr(_,y)]).pipe(le):Tn(e.cause)?b:Ho([wo(g,e.cause),wo(_,Ye(e.cause,a))]).pipe(le))).pipe(ca);let x=ts(_i(h),_i(g).pipe(S(a),P(()=>D(y)))).pipe(ja(t=>t.environment.environmentId===e.environmentId,t=>ed({expected:e.environmentId,actual:t.environment.environmentId})),T(`environment.initialSync`)),C=qn(H(function*(){let e=yield*vi(v),t=yield*J(ee);if(bi(t))return Co;let n=ce(e).pipe(an(e=>e.revision>t.value.revision),Ii(()=>t.value.revision,(e,t)=>[t.revision,t.revision===e+1?[t.event]:zm(t.replay)])),r=Mo(_i(g)).pipe(gi);return Sa(pn(zm(t.value)),ji(n,r,{haltStrategy:`either`}))})).pipe(mo(t=>Tn(t)?Bo(t):Er(new xl({reason:new bl({message:`${e.label} config subscription failed.`,cause:t})})))),te=x.pipe(S(t=>new xl({reason:new bl({message:`${e.label} config subscription failed.`,cause:t})}))),re=e=>qn(te.pipe(hn(vo(e,n)?C:m[_n.subscribeServerConfig](e)))),E=x.pipe(P(e=>(e.environment.capabilities.connectionProbe===!0?m[_n.serverProbe]({}):m[_n.serverGetConfig]({})).pipe(S(a))),le,T(`clientRuntime.connection.rpcSession.probe`));return{client:m,initialConfig:x,subscribeServerConfig:re,ready:_i(o).pipe(j(x),le,ts(_i(s))),probe:E,closed:ts(_i(s),_i(_))}});return Rm.of({connect:r})}),Wm=e=>Hn(Rm,Um(e)),Gm=2500,Km=class extends M()(`@p4code/client-runtime/connection/driver/ConnectionDriver`){},qm=c(`ConnectionDriver.connectOverRoutes`)(function*(e,t,n){let r=$(e),i=r.length===1?[]:yield*$a(r,e=>Pa(t(e))),a=yield*ma,o,s,c=z(function*(e){let t=yield*ho(a),r=yield*n(e).pipe(Xi(t),Pi(e=>p(e)?b:Wi(t,e)),je);return r._tag===`Failure`&&(r.failure._tag===`ConnectionTransientError`?o??=r.failure:s??=r.failure),r}),l=[];for(let[e,t]of r.entries()){if((i.length===0?`unchecked`:yield*re(i[e]))===`silent`){l.push(t);continue}let n=yield*c(t);if(n._tag===`Success`)return n.success;if(n.failure.reason===`unsupported`)return yield*n.failure}for(let e of l){let t=yield*c(e);if(t._tag===`Success`)return t.success;if(t.failure.reason===`unsupported`)return yield*t.failure}return yield*o??s??new X({reason:`endpoint-unavailable`,detail:`${e.target.label} did not answer on any saved route.`})}),Jm=H(function*(){let e=yield*Sm,t=yield*Rm,n=yield*Ai,r=(e,t)=>{let r=im(t);return r===null?U(`unchecked`):no({httpBaseUrl:r,timeoutMs:Gm}).pipe(K(t=>t.environmentId===e.target.environmentId?`answered`:`silent`),_t(()=>`silent`),k(Ai,n),T(`ConnectionDriver.checkRoute`,{attributes:{"connection.target.kind":t.target._tag}}))},i=c(`ConnectionDriver.connect`)(function*(n,i){let a=n.target;return yield*w({"connection.environment.id":a.environmentId,"connection.target.kind":a._tag,"connection.route.count":$(n).length}),yield*i({stage:`preparing`}),yield*qm(n,e=>r(n,e),z(function*(r){let a=yield*e.prepare(rm(n,r));yield*i({stage:`opening`,prepared:a});let o=yield*t.connect(a);return yield*i({stage:`synchronizing`,prepared:a}),yield*o.ready,{prepared:a,session:o}}))});return Km.of({connect:i,checkRoute:r,preflight:(t,n)=>r(t,n).pipe(P(r=>r===`answered`?e.prepare(rm(t,n)).pipe(hn(!0),_t(()=>!1)):U(!1)),T(`ConnectionDriver.preflight`))})}),Ym=Hn(Km,Jm),Xm=/^(?:Error|EvalError|RangeError|ReferenceError|SyntaxError|TypeError|URIError|AggregateError|DOMException|[A-Za-z][A-Za-z0-9]*(?:Error|Failure))$/,Zm=/^[A-Za-z0-9._:-]{1,128}$/,Qm=32;function $m(e){return typeof e==`string`&&Xm.test(e)?e:void 0}function eh(e){try{let t=new URL(e);return t.username=``,t.password=``,t.search=``,t.hash=``,t.toString()}catch{return e}}function th(e){return e.replace(/(?:https?|file):\/\/[^\s)]+/g,eh)}function nh(e){try{let t=e.stack?.split(/\r?\n/).filter(e=>/^\s*at\s+/.test(e)||/^[^@\s]+@(?:https?|file):\/\//.test(e)).slice(0,Qm).map(th);return t&&t.length>0?t.join(`
5
- `):void 0}catch{return}}function rh(e){try{return typeof e!=`object`||!e?void 0:$m(e._tag)}catch{return}}function ih(e){try{let t=new Set,n=e;for(;typeof n==`object`&&n&&!t.has(n);){t.add(n);let e=n;if(typeof e.traceId==`string`&&Zm.test(e.traceId))return e.traceId;n=e.cause}return}catch{return}}function ah(e){let t=rh(e),n=ih(e);if(e instanceof Error){let r=$m(e.name),i=nh(e);return{errorType:`error`,...r===void 0?{}:{errorName:r},...t===void 0?{}:{errorTag:t},...n===void 0?{}:{traceId:n},...i===void 0?{}:{stack:i}}}return{errorType:e===null?`null`:Array.isArray(e)?`array`:typeof e==`object`?`object`:`primitive`,...t===void 0?{}:{errorTag:t},...n===void 0?{}:{traceId:n}}}function oh(e){return e===`application-active`||e===`application-active-probe`||e===`application-active-reconnect`}function sh(e){return oh(e)||e===`network-changed`}function ch(e){return e===`application-active`||e===`application-active-probe`}var lh=class extends M()(`@p4code/client-runtime/connection/wakeups/ConnectionWakeups`){},uh=e=>lh.of(e),dh=e=>Ba(lh,uh(e)),fh=1e3,ph=3e5,mh=va(`15 seconds`),hh=va(`75 seconds`),gh=`15 seconds`,_h=`3 seconds`,vh=3e4,yh=`60 seconds`,bh=3e5;function xh(e){return un(e,{onFailure:e=>v(e)?ei:U(ge(e)),onSuccess:e=>U(Mi(e))})}function Sh(e,t){let n=Math.min(ph,fh*2**(e+1));return Math.round(n/2+n/2*t)}function Ch(e){return w({"environment.id":e.environmentId,"environment.label":e.label,"environment.target.kind":e._tag})}function wh(e,t){return{desired:!1,network:e.network,phase:`available`,stage:null,attempt:0,generation:t,lastFailure:null,retryAt:null}}function Th(e,t,n,r){return{desired:!0,network:e.network,phase:`offline`,stage:null,attempt:n,generation:t,lastFailure:r,retryAt:null}}function Eh(e,t,n,r,i=`preparing`){return{desired:!0,network:e.network,phase:`connecting`,stage:i,attempt:n,generation:t,lastFailure:r,retryAt:null}}function Dh(e,t,n,r){if(p(t)||Tn(t.cause))return{_tag:`Interrupted`,established:n,stable:r,resetRetry:!1};let i=t.cause.reasons.find(ke);return i?{_tag:`Failure`,established:n,stable:r,failure:i.error}:{_tag:`Failure`,established:n,stable:r,failure:{error:new X({reason:`transport`,detail:`${e.label} connection failed unexpectedly.`}),attemptSpan:L()}}}var Oh=class extends M()(`@p4code/client-runtime/connection/supervisor/EnvironmentSupervisor`){},kh=c(`EnvironmentSupervisor.make`)(function*(e,t){let n=e.target,r=$(e).some(e=>e.target._tag===`RelayConnectionTarget`),i=`${n.label} did not respond during connection setup.${r?` ${Ru}`:``}`;yield*Ch(n);let a=yield*wp,o=yield*Km,s=yield*lh,l={desired:t?.initiallyDesired??!1,network:yield*a.status},u=yield*q(l),d=yield*ai(),f=yield*q(!1),m=yield*q(!1),h=yield*is(l.desired?l.network===`offline`?Th(l,0,0,null):Eh(l,0,1,null):wh(l,0)),_=yield*is(L()),ee=yield*is(L()),v=yield*q(e),x=J(v).pipe(K($)),C=yield*q(L()),te=yield*q(new Map),ne=H(function*(){let e=yield*J(v),t=$(e),n=yield*jc(C,L());if(bi(n))return e;let r=t.find(e=>Q(e.target)===n.value);return r===void 0?e:nm(e,[r,...t.filter(e=>e!==r)])}),re=z(function*(e,t){let n=yield*t.session.initialConfig.pipe(ki),r=Na(n)?.directEndpoints;if(r===void 0)return;let i=Q(t.prepared.target),a=(yield*x).find(e=>Q(e.target)===i);if(a===void 0)return;let o=yield*e({activeRoute:a,reported:r});I(o)&&(yield*Y(v,o.value),yield*oe(t))}),E=e=>x.pipe(K(t=>t.findIndex(t=>Q(t.target)===Q(e.prepared.target)))),ie=z(function*(e){let t=yield*J(v),n=yield*E(e);if(n<=0)return;let r=yield*Qe,i=yield*J(te),a=$(t).slice(0,n).filter(e=>(i.get(Q(e.target))??0n)<=r),s=(yield*$a(a,e=>o.preflight(t,e),{concurrency:`unbounded`})).indexOf(!0);if(s===-1)return;let c=yield*A(_);bi(c)||c.value!==e.session||(yield*ue({_tag:`BetterRouteAvailable`,routeId:Q(a[s].target)}))}),ae=yield*so(1),oe=e=>E(e).pipe(P(t=>t>0?Oi(ae,e).pipe(le):b)),se=Ho([Ne(_,L()),Ne(ee,L())],{discard:!0}),ce=c(`EnvironmentSupervisor.setState`)(function*(e){yield*Ne(h,e)}),ue=c(`EnvironmentSupervisor.signal`)(function*(e){yield*Oi(d,e)}),de=yo(`Managed relay account changed; restarting the environment connection.`).pipe(Po({"environment.id":n.environmentId,"environment.label":n.label})),fe=c(`EnvironmentSupervisor.reportProgress`)(function*(e,t,n,r){`prepared`in r&&(yield*Ne(ee,V(r.prepared))),yield*ce(Eh(yield*J(u),t,e,n,r.stage))}),pe=z(function*(e,t,n,r){return yield*o.connect(yield*ne,i=>(i.stage===`synchronizing`?Nc(r,e=>e+1):b).pipe(j(fe(e,t,n,i))))}),me=(e,t,r,i)=>{let a=H(function*(){let a=yield*y.pipe(dt);yield*Ch(n),yield*w({"connection.attempt":t,"connection.generation":r,"connection.retry.failure_count":Ua(i,{onNone:()=>0,onSome:e=>e.failureCount})});let o=yield*e.pipe(S(e=>({error:e,attemptSpan:V(a)})));return{attemptSpan:V(a),lease:o}}).pipe(T(`relay.connection.attempt`,{root:!0}));return Ua(i,{onNone:()=>a,onSome:e=>a.pipe(mi(e.previousAttempt,{"connection.retry.delay_ms":e.delayMs,"connection.retry.reason":e.reason}))}).pipe(cu)},he=z(function*(e,t,n,i,a){return r?yield*me(pe(e,t,n,a),e,t,i):yield*pe(e,t,n,a).pipe(K(e=>({attemptSpan:L(),lease:e})),S(e=>({error:e,attemptSpan:L()})))}),ge=z(function*(){for(;;){let e=yield*Gr(d);switch(e._tag){case`DisconnectRequested`:case`RetryRequested`:return!1;case`NetworkChanged`:if(e.network===`offline`)return!1;break;case`ConnectRequested`:case`BetterRouteAvailable`:break;case`Wakeup`:if(e.reason===`application-active-reconnect`)return!0;if(e.reason===`credentials-changed`&&r)return yield*de,!1}}}),_e=e=>e.prepared.target._tag===`RelayConnectionTarget`,ve=z(function*(e,t){if(e._tag===`DisconnectRequested`)return`end`;if(e._tag===`BetterRouteAvailable`)return yield*Y(C,V(e.routeId)),`reset`;if(e._tag===`Wakeup`){if(e.reason===`application-active-reconnect`)return`reset`;if(e.reason===`credentials-changed`&&_e(t))return yield*de,`end`}}),ye=e=>{switch(e._tag){case`RetryRequested`:return _h;case`NetworkChanged`:return e.network===`offline`?_h:void 0;case`Wakeup`:return e.reason===`application-active`?gh:e.reason===`application-active-probe`||e.reason===`network-changed`?_h:void 0;case`ConnectRequested`:case`DisconnectRequested`:case`BetterRouteAvailable`:return}},be=z(function*(e){let t=Gr(d).pipe(Ir(e=>e._tag===`RetryRequested`?Y(f,!1):b));for(yield*Je(yh).pipe(li(1),lt(()=>oe(e)),ca);;){let r=yield*t,i=yield*ve(r,e);if(i!==void 0)return i===`reset`;(r._tag===`NetworkChanged`&&r.network!==`offline`||r._tag===`Wakeup`&&sh(r.reason))&&(yield*oe(e));let a=ye(r);if(a===void 0)continue;yield*Y(m,!0);let o=yield*Pa(e.session.probe),s=(yield*Qe)+tn(a);for(;;){let r=s-(yield*Qe),i=yield*Kt([es(o).pipe(K(e=>({_tag:`ProbeCompleted`,exit:e}))),t.pipe(K(e=>({_tag:`Signal`,signal:e}))),oa(bo(r>0n?r:0n)).pipe(hn({_tag:`TimedOut`}))]);if(i._tag===`TimedOut`)return yield*Uo(o),yield*new X({reason:`timeout`,detail:`${n.label} did not respond to a connection health check.`});if(i._tag===`ProbeCompleted`){p(i.exit)&&(yield*Y(m,!1)),yield*i.exit;break}let a=yield*ve(i.signal,e);if(a!==void 0)return yield*Uo(o),a===`reset`;let c=ye(i.signal);if(c!==void 0){let e=(yield*Qe)+tn(c);e<s&&(s=e)}}}}),xe=z(function*(e,r,a,o,s){let c=yield*J(C);yield*Ne(ee,L());let l=yield*q(0),d=yield*Kt([xh(he(e,r,a,o,l)).pipe(K(e=>({_tag:`Completed`,exit:e}))),ge().pipe(K(e=>({_tag:`Interrupted`,resetRetry:e}))),H(function*(){let e=$(yield*J(v)).length,t=yield*Qe,n=tn(xr(mh,e));for(;;){let e=BigInt(yield*J(l)),r=t+n+e*tn(hh)-(yield*Qe);if(r<=0n)return{_tag:`TimedOut`};yield*oa(bo(r))}})]);if(d._tag===`Interrupted`)return{_tag:`Interrupted`,established:!1,stable:!1,resetRetry:d.resetRetry};if(d._tag===`TimedOut`)return{_tag:`Failure`,established:!1,stable:!1,failure:{error:new X({reason:`timeout`,detail:i}),attemptSpan:L()}};if(Li(d.exit)){let e=!Tn(d.exit.cause)&&!d.exit.cause.reasons.some(ke),t=Dh(n,d.exit,!1,!1);if(e){let e=d.exit.cause.reasons.find(Mn)?.defect;yield*ar(`Connection attempt failed with an unexpected defect.`).pipe(Po({"environment.id":n.environmentId,"environment.label":n.label,"cause.reason_count":d.exit.cause.reasons.length,...ah(e)}))}return t}let f=d.exit.value;if(I(c)&&Q(f.lease.prepared.target)!==c.value){let e=(yield*Qe)+BigInt(bh)*1000000n;yield*Nc(te,t=>new Map(t).set(c.value,e))}let m=yield*J(u);if(!m.desired||m.network===`offline`&&!s)return{_tag:`Interrupted`,established:!1,stable:!1,resetRetry:!1};let h=yield*Ce;yield*Ne(ee,V(f.lease.prepared)),yield*Ne(_,V(f.lease.session)),t?.learnRoutes!==void 0&&(yield*re(t.learnRoutes,f.lease).pipe(ca)),yield*ce({desired:!0,network:m.network,phase:`connected`,stage:null,attempt:e,generation:r,lastFailure:null,retryAt:null});let g=yield*ts(f.lease.session.closed.pipe(S(e=>({error:e,attemptSpan:f.attemptSpan}))),be(f.lease).pipe(S(e=>({error:e,attemptSpan:f.attemptSpan})))).pipe(xh),y=(yield*Ce)-h;if(p(g))return{_tag:`Interrupted`,established:!0,stable:y>=vh,resetRetry:g.value};let x=Dh(n,g,!0,y>=vh);return x._tag===`Failure`&&(yield*b.pipe(T(`EnvironmentSupervisor.connectionLost`,{root:!0,attributes:{"environment.id":n.environmentId,"environment.label":n.label,"environment.target.kind":n._tag,"connection.connected_ms":y,"connection.failure.reason":x.failure.error.reason,"connection.failure.detail":x.failure.error.detail}}))),x},bn(se)),Se=z(function*(e){return yield*ts(oa(e).pipe(hn(!1)),H(function*(){for(;;){let e=yield*Gr(d);switch(e._tag){case`Wakeup`:return sh(e.reason);case`ConnectRequested`:case`DisconnectRequested`:case`RetryRequested`:case`NetworkChanged`:return!1}}}))}),we=Gr(d).pipe(g({while:e=>e._tag===`BetterRouteAvailable`}),K(e=>e._tag===`Wakeup`&&sh(e.reason))),Te=z(function*(){let e=0,t=0,n=null,r=L(),i=()=>{e=0,r=L()},a=!1;for(;;){(yield*jc(f,!1))&&(e=0,n=null,r=L());let o=yield*J(u);if(!o.desired){i(),n=null,yield*se,yield*ce(wh(o,t)),yield*we;continue}if(o.network===`offline`&&!a){yield*se,yield*ce(Th(o,t,e+1,n)),(yield*we)&&i();continue}let s=e+1,c=t+1,l=yield*yi(xe(s,c,n,r,a));a=!1;let d=yield*jc(m,!1);if(l.established&&(t=c,l.stable&&(i(),n=null)),l._tag===`Interrupted`){l.resetRetry&&(i(),a=!0);continue}let p=l.failure.attemptSpan,h=l.failure.error;if(n=h,h._tag===`ConnectionBlockedError`){let e=yield*J(u);yield*ce({desired:e.desired,network:e.network,phase:`blocked`,stage:null,attempt:s,generation:t,lastFailure:h,retryAt:null}),(yield*we)&&i();continue}if(d){i(),yield*ce(Eh(yield*J(u),t,1,h));continue}e+=1;let g=Sh(e-1,yield*hs);r=sa(p,t=>({previousAttempt:t,failureCount:e,delayMs:g,reason:h.reason}));let _=yield*J(u);yield*ce({desired:_.desired,network:_.network,phase:`backoff`,stage:null,attempt:s,generation:t,lastFailure:h,retryAt:(yield*Ce)+g}),(yield*Se(g))&&i()}});yield*a.changes.pipe(lt(e=>Mc(u,t=>t.network===e?[!1,t]:[!0,{...t,network:e}]).pipe(P(t=>t?ue({_tag:`NetworkChanged`,network:e}):b))),ca),yield*s.changes.pipe(lt(e=>ue({_tag:`Wakeup`,reason:e})),ca),yield*Gr(ae).pipe(P(ie),$i,ca),yield*Te().pipe(ca);let Ee=Nc(u,e=>({...e,desired:!0})).pipe(j(ue({_tag:`ConnectRequested`})),T(`EnvironmentSupervisor.connect`)),De=Nc(u,e=>({...e,desired:!1})).pipe(j(ue({_tag:`DisconnectRequested`})),T(`EnvironmentSupervisor.disconnect`)),Oe=Y(f,!0).pipe(j(ue({_tag:`RetryRequested`})),T(`EnvironmentSupervisor.retryNow`));return yield*Or(()=>Fr(d).pipe(j(se))),Oh.of({target:n,state:h,session:_,prepared:ee,connect:Ee,disconnect:De,retryNow:Oe})}),Ah=pe(dp);function jh(e){return{...e.unsupportedReason===void 0?{}:{unsupportedReason:e.unsupportedReason},...e.serverUpdateRequired===!0?{serverUpdateRequired:!0}:{}}}var Mh=class extends R()(`EnvironmentNotRegisteredError`,{environmentId:gt}){get message(){return`Environment ${this.environmentId} is not registered.`}},Nh=class extends R()(`PlatformEnvironmentRemovalError`,{environmentId:gt}){get message(){return`Platform-managed environment ${this.environmentId} cannot be removed.`}},Ph=class extends M()(`@p4code/client-runtime/connection/registry/EnvironmentRegistry`){},Fh=H(function*(){let e=yield*ma,t=yield*Op,r=yield*kp,i=yield*Ap,a=yield*jp,o=yield*Sp,s=yield*bp,l=yield*Lp,u=yield*wp,d=yield*Km,f=yield*lh,p=yield*ld,m=yield*t.list,h=new Set(yield*t.listDisabled),g=c(`EnvironmentRegistry.loadRoute`)(function*(e){return{target:e,profile:e._tag===`BearerConnectionTarget`||e._tag===`SshConnectionTarget`?yield*o.get(e.connectionId):L()}}),_=new Map;for(let e of m){let t=_.get(e.environmentId)??[];t.push(e),_.set(e.environmentId,t)}let ee=new Map(yield*$a(_,c(`EnvironmentRegistry.loadCatalogEntry`)(function*([e,t]){let n=yield*$a(t,g,{concurrency:`unbounded`}),r=new Set,i=n.filter(e=>{let t=Q(e.target);return!r.has(t)&&(r.add(t),!(t.startsWith(`learned:`)&&bi(e.profile)))}),a=i.length>0?i:n.slice(0,1),o=a[0];return[e,nm({target:o.target,profile:o.profile,enabled:!h.has(e)},a)]}),{concurrency:`unbounded`})),v=yield*is(ee),y=yield*is(yield*u.status),x=yield*is(new Map),C=yield*q(new Set),te=yield*q(new Set(_.keys())),ne=yield*q(new Map),w=yield*Vt(1),re=yield*q(!1),E=(e,t)=>$o(w.withPermits(1)(H(function*(){let t=yield*J(ne),n=t.get(e);if(n!==void 0)return yield*Y(ne,new Map(t).set(e,{semaphore:n.semaphore,users:n.users+1})),n.semaphore;let r=yield*Vt(1);return yield*Y(ne,new Map(t).set(e,{semaphore:r,users:1})),r})),e=>e.withPermits(1)(t),t=>w.withPermits(1)(Nc(ne,n=>{let r=n.get(e);if(r===void 0||r.semaphore!==t)return n;let i=new Map(n);return r.users===1?i.delete(e):i.set(e,{semaphore:t,users:r.users-1}),i}))).pipe(T(`EnvironmentRegistry.withLeaseLock`)),ie=c(`EnvironmentRegistry.getEntry`)(function*(e){let t=(yield*A(v)).get(e);return t===void 0?yield*new Mh({environmentId:e}):t}),ae=c(`EnvironmentRegistry.closeServiceScope`)(function*(e){let t=yield*A(x),n=t.get(e);if(n===void 0)return;let r=new Map(t);r.delete(e),yield*Ne(x,r),yield*Wi(n.scope,mt)}),oe=c(`EnvironmentRegistry.createServiceScope`)(t=>Wo(H(function*(){let n=t.target.environmentId,r=yield*ho(e),i=yield*kh(t,{initiallyDesired:!1,learnRoutes:e=>D({environmentId:n,...e})}).pipe(k(wp,u),k(Km,d),k(lh,f),Xi(r),Et(()=>Wi(r,mt)));return t.enabled&&(yield*i.connect),yield*N(x,e=>{let a=new Map(e);return a.set(n,{entry:t,supervisor:i,scope:r}),a}),yield*st(i.state).pipe(lt(e=>e.phase===`blocked`&&e.lastFailure?.reason===`unsupported`?Le(n,e.lastFailure).pipe(Se(e=>Ko(`Could not disable an unsupported environment.`,{environmentId:n,error:e}))):b),ur(r)),i}))),se=c(`EnvironmentRegistry.acquireSupervisor`)(function*(e){return yield*E(e,H(function*(){let t=yield*ie(e),n=(yield*A(x)).get(e);if(n!==void 0){if(vo(n.entry,t))return n.supervisor;yield*ae(e)}return yield*oe(t)}))}),ce=c(`EnvironmentRegistry.run`)(function*(e,t){let n=yield*se(e);return yield*k(t,Oh,n)}),le=(e,t)=>qn(se(e).pipe(K(e=>be(t,Oh,e)))),ue=(e,t)=>Sa(Mo(A(v)),st(v)).pipe(kt(t=>n(t.get(e))),ii((e,t)=>W(e)===W(t)),jn(Ua({onNone:()=>Co,onSome:()=>qn(se(e).pipe(ko({onFailure:()=>Co,onSuccess:e=>be(t,Oh,e)})))}))),de=H(function*(){(yield*jc(re,!0))||(yield*$a(_.keys(),e=>se(e).pipe(Ft({EnvironmentNotRegisteredError:()=>b})),{concurrency:`unbounded`,discard:!0}))}).pipe(T(`EnvironmentRegistry.start`)),fe=c(`EnvironmentRegistry.installEntryLocked`)(function*(e,t){let n=e.target,r=(yield*A(v)).get(n.environmentId),i=(yield*A(x)).get(n.environmentId);t?.retainEquivalentRuntime===!0&&r!==void 0&&vo(r,e)&&i!==void 0&&vo(i.entry,e)||(yield*ae(n.environmentId),yield*N(v,t=>{let r=new Map(t);return r.set(n.environmentId,e),r}),yield*oe(e))}),pe=(e,t)=>l.forget(e).pipe(S(e=>new Dp({operation:t,message:e.message}))),me=e=>$(e).map(e=>e.target),he=(e,t)=>{let n=nm(e,t);if(Pp(e)===Pp(n))return{entry:n,addressesChanged:!1};let{unsupportedReason:r,serverUpdateRequired:i,...a}=n;return{entry:a,addressesChanged:!0}},ge=c(`EnvironmentRegistry.register`)(function*(e){let t=yp(e),n=t.target.environmentId;return yield*E(n,H(function*(){if((yield*J(C)).has(n))return!1;let i=(yield*A(v)).get(n),a=t;if(i!==void 0){let e={target:t.target,profile:t.profile},r=$(i),o=um(r,e),s=r.filter(t=>t!==o||Q(t.target)===Q(e.target)),c=he(i,lm(s,e));c.addressesChanged&&(yield*pe(n,`register-connection`)),a=c.entry}return yield*r.register(e,me(a)),yield*Nc(te,e=>new Set(e).add(n)),yield*fe(a),!0}))}),_e=c(`EnvironmentRegistry.replaceRoutesLocked`)(function*(e,t){let n=e.target.environmentId,i=he(e,t);i.addressesChanged&&(yield*pe(n,`set-connection-routes`)),yield*r.setRoutes(n,me(i.entry)),yield*fe(i.entry)}),ve=c(`EnvironmentRegistry.userEntry`)(function*(e){return(yield*J(C)).has(e)?yield*new Nh({environmentId:e}):yield*ie(e)}),ye=c(`EnvironmentRegistry.installPlatformRegistration`)(function*(e){let t=yp(e),n=t.target;yield*E(n.environmentId,H(function*(){let i=(yield*A(v)).get(n.environmentId),a=i?.unsupportedReason!==void 0&&Pp(i)===Pp(t)?{...t,enabled:!1,...jh(i)}:t,o=(yield*J(te)).has(n.environmentId);if(o||i!==void 0&&Pp(i)!==Pp(a)){let e=yield*l.forget(n.environmentId).pipe(ga(e=>Ko(`Could not clear GitHub routing permission for a platform environment.`,{environmentId:n.environmentId,error:e})),Nn);if(Li(e))return}yield*Nc(C,e=>{let t=new Set(e);return t.add(n.environmentId),t});let c=!1;if(e._tag===`BearerConnectionRegistration`){let t=yield*s.get(e.target.connectionId).pipe(_t(()=>L())),r=I(t)&&!vo(t.value,e.credential);c=yield*s.put(e.target.connectionId,e.credential).pipe(hn(r),Se(e=>Ko(`Could not store the platform bearer credential.`,{environmentId:n.environmentId,error:e}).pipe(hn(!1))))}if(o&&(yield*r.remove(n.environmentId).pipe(Ir(()=>Nc(te,e=>{let t=new Set(e);return t.delete(n.environmentId),t})),Se(e=>Ko(`Could not remove a persisted registration shadowed by a platform environment.`,{environmentId:n.environmentId,error:e})))),yield*fe(a,{retainEquivalentRuntime:!0}),c&&e._tag===`BearerConnectionRegistration`){let t=(yield*A(x)).get(n.environmentId);if(t!==void 0){let n=yield*A(t.supervisor.state);if(n.phase===`connecting`||n.phase===`backoff`||n.phase===`blocked`&&n.lastFailure?._tag===`ConnectionBlockedError`&&n.lastFailure.reason===`authentication`)yield*t.supervisor.retryNow;else if(n.phase===`connected`){let n=e.credential.token;yield*De(t.supervisor.prepared,t=>I(t)&&t.value.target._tag===`BearerConnectionTarget`&&vm(t.value.target.connectionId)===e.target.connectionId&&t.value.httpAuthorization?._tag===`Bearer`&&t.value.httpAuthorization.token!==n?V(V({...t.value,httpAuthorization:{_tag:`Bearer`,token:n}})):L())}}}}))}),xe=c(`EnvironmentRegistry.removePlatformEnvironment`)(function*(e){yield*E(e,H(function*(){let t=(yield*A(v)).get(e),n=yield*l.forget(e).pipe(ga(t=>Ko(`Could not clear GitHub routing permission after platform removal.`,{environmentId:e,error:t})),Nn);Li(n)||(yield*Nc(C,t=>{let n=new Set(t);return n.delete(e),n}),yield*ae(e),yield*N(v,t=>{let n=new Map(t);return n.delete(e),n}),t!==void 0&&t.target._tag===`BearerConnectionTarget`&&(yield*s.remove(t.target.connectionId).pipe(Se(t=>Ko(`Could not clear the platform bearer credential.`,{environmentId:e,error:t})))),yield*Ho([i.clear(e).pipe(Se(t=>Ko(`Could not clear cached environment data after removal.`,{environmentId:e,error:t}))),a.clear(e)],{concurrency:`unbounded`,discard:!0}))}))}),Ce=c(`EnvironmentRegistry.registerPlatform`)(function*(e){yield*ye(e)}),we=c(`EnvironmentRegistry.reconcilePlatform`)(function*(e){let t=new Set(e.map(e=>e.target.environmentId)),n=yield*J(C);yield*$a(n,e=>t.has(e)?b:xe(e),{discard:!0}),yield*$a(e,ye,{discard:!0})}),Te=c(`EnvironmentRegistry.removeLocked`)(function*(e){if((yield*J(C)).has(e))return yield*new Nh({environmentId:e});let t=yield*ie(e);yield*l.forget(e),yield*r.remove(e),yield*Nc(te,t=>{let n=new Set(t);return n.delete(e),n}),yield*ae(e),yield*N(v,t=>{let n=new Map(t);return n.delete(e),n}),yield*Ho([i.clear(e).pipe(Se(t=>Ko(`Could not clear cached environment data after removal.`,{environmentId:e,error:t}))),a.clear(e)],{concurrency:`unbounded`,discard:!0});for(let n of $(t)){let t=W(n.profile);t!==null&&Ah(t)&&(yield*Oe(e,t))}}),Ee=c(`EnvironmentRegistry.remove`)(function*(e){return yield*E(e,Te(e))}),Oe=(e,t)=>p.disconnect(t.target).pipe(ga(t=>Ko(`Could not disconnect the managed SSH environment.`,{environmentId:e,error:t})),co),ke=globalThis.location===void 0||globalThis.location.protocol!==`https:`,D=c(`EnvironmentRegistry.learnRoutes`)(function*(e){return yield*E(e.environmentId,H(function*(){if((yield*J(C)).has(e.environmentId))return L();let t=(yield*A(v)).get(e.environmentId);if(t===void 0)return L();let n=hm({entry:t,activeRoute:e.activeRoute,reported:e.reported,allowInsecure:ke});if(n===null)return L();let i=nm(t,n),a=new Map($(t).map(e=>[Q(e.target),W(e.profile)]));for(let e of n){let t=W(e.profile);t!==null&&a.get(Q(e.target))!==t&&(yield*o.put(t))}yield*r.setRoutes(e.environmentId,me(i));let s=(yield*A(x)).get(e.environmentId);return s!==void 0&&(yield*N(x,t=>new Map(t).set(e.environmentId,{...s,entry:i}))),yield*N(v,t=>new Map(t).set(e.environmentId,i)),V(i)})).pipe(Se(t=>Ko(`Could not save routes learned from the environment.`,{environmentId:e.environmentId,error:t}).pipe(hn(L()))))}),O=c(`EnvironmentRegistry.removeRoute`)(function*(e,t){yield*E(e,H(function*(){let n=yield*ve(e),r=$(n),i=r.find(e=>Q(e.target)===t);if(i===void 0)return;let a=bm(r,t);if(a.length===0)return yield*Te(e);yield*_e(n,a);let o=W(i.profile);o!==null&&Ah(o)&&(yield*Oe(e,o))}))}),Ae=c(`EnvironmentRegistry.reorderRoutes`)(function*(e,t){yield*E(e,H(function*(){let n=yield*ve(e),r=$(n),i=new Map(r.map(e=>[Q(e.target),e])),a=t.flatMap(e=>i.get(e)??[]);if(a.length!==r.length||new Set(t).size!==r.length)return yield*new Z({reason:`configuration`,detail:`The route order must list every saved route once.`});a.every((e,t)=>e===r[t])||(yield*_e(n,a))}))}),je=c(`EnvironmentRegistry.removeRelayEnvironments`)(function*(){let e=[...(yield*A(v)).values()].filter(e=>$(e).some(e=>e.target._tag===`RelayConnectionTarget`)).map(e=>e.target.environmentId);yield*$a(e,e=>O(e,tm).pipe(Ft({EnvironmentNotRegisteredError:()=>b})),{concurrency:`unbounded`,discard:!0})}),Me=e=>se(e).pipe(P(e=>e.retryNow),Ft({EnvironmentNotRegisteredError:()=>b}),T(`EnvironmentRegistry.retryNow`)),Pe=c(`EnvironmentRegistry.setEnabled`)(function*(e,t){yield*E(e,H(function*(){let n=yield*ie(e);if(t&&n.unsupportedReason!==void 0)return yield*new Z({reason:`unsupported`,detail:n.unsupportedReason});if(n.enabled===t)return;(yield*J(C)).has(e)||(yield*r.setEnabled(e,t));let i={...n,enabled:t},a=(yield*A(x)).get(e);if(a!==void 0&&(yield*N(x,t=>{let n=new Map(t);return n.set(e,{...a,entry:i}),n})),yield*N(v,t=>{let n=new Map(t);return n.set(e,i),n}),a===void 0?t&&(yield*oe(i)):yield*t?a.supervisor.connect:a.supervisor.disconnect,!t)for(let t of $(n)){let n=W(t.profile);n!==null&&Ah(n)&&(yield*Oe(e,n))}}))}),Fe=c(`EnvironmentRegistry.state`)(function*(e){let t=yield*se(e);return yield*A(t.state)}),Ie=e=>ue(e,qn(Oh.pipe(K(e=>st(e.state)))));yield*Or(()=>A(x).pipe(P(e=>$a(e.values(),e=>Wi(e.scope,mt),{concurrency:`unbounded`,discard:!0})))),yield*u.changes.pipe(lt(e=>Ne(y,e)),ca);let Le=c(`EnvironmentRegistry.setCompatibility`)(function*(e,t){yield*E(e,H(function*(){let n=(yield*A(v)).get(e);if(n===void 0||n.unsupportedReason===(t?.message??void 0)&&n.serverUpdateRequired===(t?.serverUpdateRequired??void 0))return;let{unsupportedReason:i,serverUpdateRequired:a,...o}=n,s=t===null?o:{...o,enabled:!1,unsupportedReason:t.message,...t.serverUpdateRequired===!0?{serverUpdateRequired:!0}:{}};t!==null&&n.enabled&&!(yield*J(C)).has(e)&&(yield*r.setEnabled(e,!1));let c=(yield*A(x)).get(e);c!==void 0&&(yield*N(x,t=>new Map(t).set(e,{...c,entry:s})),t!==null&&(yield*c.supervisor.disconnect)),yield*N(v,t=>new Map(t).set(e,s))}))});return Ph.of({entries:v,networkStatus:y,start:de,register:ge,registerPlatform:Ce,reconcilePlatform:we,remove:Ee,removeRoute:O,reorderRoutes:Ae,removeRelayEnvironments:je,retryNow:Me,setEnabled:Pe,setCompatibility:Le,state:Fe,stateChanges:Ie,run:ce,runStream:le,followStream:ue})}),Ih=Hn(Ph,Fh);function Lh(e){return{...e,[Jo]:`2`}}var Rh=(e,t)=>e===null?t.pipe(k(Br,{credentials:`include`})):t,zh=(e,t,n,r)=>H(function*(){if(e===null)return{};if(e._tag===`Bearer`)return{authorization:`Bearer ${e.token}`};if(bi(r))return yield*new na({message:`No DPoP signer is available to authorize the environment request.`,cause:e._tag});let i=yield*r.value.createProof({method:t,url:n,accessToken:e.accessToken}).pipe(S(e=>new na({message:`Could not create the environment request authorization proof.`,cause:e})));return{authorization:`DPoP ${e.accessToken}`,dpop:i}}),Bh=e=>e.prepared.httpAuthorization?._tag===`Dpop`?Hh(e).pipe(T(Vh,{root:!0}),cu):Hh(e).pipe(T(Vh)),Vh=`clientRuntime.state.executeAuthenticatedEnvironmentHttpRequest`,Hh=z(function*(e){let t=e.prepared.httpBaseUrl,n=t=>e.url(jr(t)[e.group]);return yield*H(function*(){let r;for(;;){let i=e.prepared.httpAuthorization;if(i?._tag===`Dpop`){let n=e.remoteAuthorization;if(n===void 0||bi(n))return yield*new na({message:`No relay authorization service is available for the environment request.`,cause:e.prepared.target._tag});let a=yield*n.value.authorizeDpopHttp({expectedEnvironmentId:e.prepared.environmentId,...r===void 0?{}:{rejectedAccessToken:r}}).pipe(S(e=>new na({message:`Could not authorize the environment request.`,cause:e})));e.prepared.target._tag===`RelayConnectionTarget`&&(t=a.httpBaseUrl),i=a.httpAuthorization}let a=n(t),o=yield*qa(t,e.group),s=yield*zh(i,e.method,a,e.signer),c=yield*Si(a,e.timeoutMs,Rh(i,e.request({client:o,headers:s}))).pipe(je);if(kn(c)){if(i?._tag===`Dpop`&&r===void 0&&c.failure._tag===`EnvironmentAuthInvalidError`&&c.failure.reason===`invalid_credential`){r=i.accessToken;continue}return yield*c.failure}if(i?._tag===`Dpop`&&e.isUnauthorizedResponse?.(c.success)===!0){if(r===void 0){r=i.accessToken;continue}return yield*new na({message:`The environment rejected the renewed session authorization.`,cause:c.success})}return c.success}}).pipe(oi({duration:e.timeoutMs,orElse:()=>D(new La(n(t),e.timeoutMs))}))});function Uh(e,t){return qn(Ph.pipe(K(n=>n.runStream(e,t))))}function Wh(e,t){return qn(Ph.pipe(K(n=>n.followStream(e,t))))}var Gh=class extends Bi(`SessionHttpClientUnavailable`){};function Kh(e){return e.pipe(_e,Se(e=>Ko(`Could not load the initial environment configuration.`).pipe(Po({...ah(e)}),hn(L()))))}var qh=6e3,Jh=c(`clientRuntime.state.fetchEnvironmentSessionState`)(function*(e){return yield*Bh({...e,group:`auth`,method:`GET`,url:e=>e.session(),timeoutMs:e.timeoutMs??qh,request:({client:e,headers:t})=>e.session({headers:t}),isUnauthorizedResponse:e=>!e.authenticated})});function Yh(e){let t=Ra(t=>e.atom(Wh(t,qn(Oh.pipe(K(e=>st(e.session).pipe(f(Ua({onNone:()=>U(L()),onSome:e=>Kh(e.initialConfig)}))))))),{initialValue:L()})),n=Ra(e=>pr(n=>W(qr(Ot(n(t(e))),()=>L()))).pipe(ba(`environment-config-value:${e}`))),r=Ra(t=>e.atom(Wh(t,qn(Oh.pipe(K(e=>st(e.prepared))))),{initialValue:L()})),i=Ra(e=>pr(t=>qr(Ot(t(r(e))),()=>L())).pipe(ba(`environment-prepared-connection:${e}`))),a=Ra(t=>e.atom(e=>{let n=W(e(i(t)));return n===null?ie:H(function*(){let e=yield*lr(Ff),t=yield*lr(tp),r=yield*lr(Ai);return bi(r)?yield*new Gh:yield*Jh({prepared:n,signer:e,remoteAuthorization:t}).pipe(k(Ai,r.value))})}).pipe(fo({staleTime:3e4,revalidateOnMount:!0}),Hi(3e5),ba(`environment-session-state:${t}`)));return{initialConfigAtom:t,initialConfigValueAtom:n,preparedConnectionAtom:r,preparedConnectionValueAtom:i,sessionStateAtom:a,sessionStateValueAtom:Ra(e=>pr(t=>W(Ot(t(a(e))))??null).pipe(ba(`environment-session-state-value:${e}`)))}}var Xh=new WeakMap;function Zh(e){let t=Xh.get(e);if(t)return t;let n=Yh(e);return Xh.set(e,n),n}function Qh(e,t){let n=Zh(e),r=e=>Me(t,e),i=Ra(e=>Ra(t=>pr(r=>{if(e===null)return!1;let i=t.split(`,`).filter(Boolean);if(i.length===0)return!0;let a=r(n.sessionStateAtom(e)),o=W(Ot(a));return a._tag!==`Failure`&&o!==null&&i.every(e=>Ya(o,e))})));return{requiredScopes:r,permissionAtom:(e,t)=>i(e)(r(t).join(`,`)),authorize:(e,t,i)=>zi(()=>{let a=r(i);if(a.length===0)return b;let o=n.sessionStateAtom(t);return yi(H(function*(){yield*So(e,o);let t=yield*or(e,o,{suspendOnWaiting:!1}).pipe(fi(6e3),Se(()=>U(L()))),n=a.find(e=>bi(t)||!Ya(t.value,e));if(n!==void 0)return yield*D(new hr({...pa(n),message:`This connection requires ${n}.`}))}))})}}var $h=new WeakMap;function eg(e,t){let n=$h.get(e);n===void 0&&(n=new Map,$h.set(e,n));let r=n.get(t);if(r!==void 0)return r;let i=Qh(e,t);return n.set(t,i),i}var tg=class extends R()(`EnvironmentRpcUnavailableError`,{environmentId:B,message:B}){},ng=class extends Ao(`@p4code/client-runtime/rpc/EnvironmentRpcRequestObserver`,{defaultValue:()=>({observe:()=>U(b)})}){},rg=class extends Ao(`@p4code/client-runtime/rpc/EnvironmentRpcSubscriptionObserver`,{defaultValue:()=>({observe:()=>U(b)})}){},ig=pe(xl),ag=pe(hr),og=3e4,sg=c(`EnvironmentRpc.currentSession`)(function*(){let e=yield*Oh;return yield*A(e.session).pipe(P(Ua({onNone:()=>D(new tg({environmentId:e.target.environmentId,message:`${e.target.label} is not connected.`})),onSome:U})))}),cg=c(`EnvironmentRpc.getInitialServerConfig`)(function*(){return yield*(yield*sg()).initialConfig}),lg=class extends Ao(`@p4code/client-runtime/rpc/RpcPermissionGuard`,{defaultValue:()=>({authorize:(e,t,n)=>{let r=Me(t,n)[0];return r===void 0?b:D(new hr({...pa(r),message:`This connection requires ${r}.`}))}})}){},ug=c(`EnvironmentRpc.authorize`)(function*(e,t){if(Me(e,t).length===0)return;let n=yield*Oh;yield*(yield*lg).authorize(n.target.environmentId,e,t)}),dg=c(`EnvironmentRpc.request`)(function*(e,t){let n=yield*Oh;yield*w({"environment.id":n.target.environmentId,"rpc.method":e});let r=yield*sg();yield*ug(e,t);let i=yield*ng,a=r.client[e],o=yield*i.observe({environmentId:n.target.environmentId,method:e});return yield*a(t).pipe(bn(o))});function fg(e,t){return qn(ug(e,t).pipe(j(sg()),K(n=>{let r=n.client[e];return r(t)}))).pipe(Bn(`EnvironmentRpc.runStream`,{attributes:{"rpc.method":e}}))}function pg(e,t,n,r){return qn(H(function*(){let i=yield*Oh,a=yield*rg,o=st(i.session);return(r?.resubscribe===void 0?o:ji(o,r.resubscribe.pipe(f(()=>A(i.session))))).pipe(jn(Ua({onNone:()=>Co,onSome:o=>{let s=e===_n.subscribeServerConfig?o.subscribeServerConfig:o.client[e],c=0,l=()=>vn(()=>qn(H(function*(){let r=yield*t(o),l=yield*a.observe({environmentId:i.target.environmentId,method:e,input:r});return n(o,s(r)).pipe(Pt(()=>G(()=>{c=0}))).pipe(Zo(l))})).pipe(ka(e=>r?.onDefect!==void 0&&e.reasons.some(e=>e._tag===`Die`||e._tag===`Fail`&&ig(e.error)&&e.error.reason._tag===`RpcClientDefect`)?r.onDefect(e):b),mo(t=>{let n=t.reasons.length>0&&t.reasons.every(e=>e._tag===`Fail`);if(n&&t.reasons.every(e=>e._tag===`Fail`&&ig(e.error)))return Mo(Ko(`Durable RPC subscription lost its transport; waiting for the next session.`,{cause:Jn(t),method:e,environmentId:i.target.environmentId})).pipe(gi);if(n&&r?.onExpectedFailure!==void 0){let e=Mo(r.onExpectedFailure(t)).pipe(gi),n=t.reasons.some(e=>e._tag===`Fail`&&ag(e.error));if(r.retryExpectedFailureAfter===void 0||n)return e;let i=hi(Math.min(Lo(r.retryExpectedFailureAfter)*2**c,og));return c+=1,e.pipe(Sa(Mo(oa(i)).pipe(gi)),Sa(l()))}return Bo(t)})));return l()}})))})).pipe(Bn(`EnvironmentRpc.subscribe`,{attributes:{"rpc.method":e}}))}function mg(e,t,n){return pg(e,t,(e,t)=>t,n)}function hg(e,t,n){return pg(e,t,(e,t)=>t.pipe(kt(t=>[e,t])),n)}function gg(e,t,n){return mg(e,()=>U(t),n)}var _g=(e,t)=>dg(e,t),vg=(e,t)=>fg(e,t);async function yg(e){try{return await e()}catch(e){return Tr(St(e))}}function bg(){let e=new WeakMap,t=t=>{let n=e.get(t);if(n!==void 0)return n;let r={serial:new Map,singleFlight:new Map,latest:new Map};return e.set(t,r),r};return{schedule:(e,n,r,i)=>{if(n.mode===`parallel`)return i();let a=n.key(r),o=t(e);if(n.mode===`singleFlight`){let e=o.singleFlight.get(a);if(e!==void 0)return e;let t=i();return o.singleFlight.set(a,t),t.then(()=>{o.singleFlight.get(a)===t&&o.singleFlight.delete(a)},()=>{o.singleFlight.get(a)===t&&o.singleFlight.delete(a)}),t}if(n.mode===`serial`){let e=o.serial.get(a),t=e===void 0?i():e.then(i,i);return o.serial.set(a,t),t.then(()=>{o.serial.get(a)===t&&o.serial.delete(a)},()=>{o.serial.get(a)===t&&o.serial.delete(a)}),t}let s=o.latest.get(a);s===void 0&&(s={running:!1,pending:void 0},o.latest.set(a,s));let c=s,l=new Promise(e=>{if(c.pending===void 0){c.pending={execute:i,resolve:[e]};return}c.pending.execute=i,c.pending.resolve.push(e)});return c.running||(c.running=!0,(async()=>{for(;c.pending!==void 0;){let e=c.pending;c.pending=void 0;let t;try{t=await e.execute()}catch(e){t=Tr(St(e))}for(let n of e.resolve)n(t)}c.running=!1,o.latest.get(a)===c&&o.latest.delete(a)})()),l}}}function xg(e,t,n,r,i){return H(function*(){let a=yield*ut(),o=yield*jt(o=>t.schedule(e,n,r,async()=>{let e=await Xn(a)(i,{signal:o});return p(e)?se(e.value):Tr(e.cause)}));return o._tag===`Success`?o.value:yield*rt(o.cause)})}async function Sg(e,t,n,r={},i=console){let a=await yg(()=>t.run(e,n));return Ag(a,{...r,label:r.label??t.label},i),a}function Cg(e,t){return e._tag===`Success`?se(t(e.value)):Tr(e.cause)}function wg(e){return e._tag===`Failure`&&Tn(e.cause)}function Tg(e){return Ht(e.cause)}async function Eg(e){try{return rn(await e())}catch(e){return Tr(St(e))}}async function Dg(e,t={},n=console){let r=await Eg(e);return Ag(r,t,n),r}async function Og(e,t,n={},r=console){let i=yi(H(function*(){return yield*So(e,t),n.refresh&&(yield*G(()=>{let n=e.get(t);n._tag!==`Initial`&&!n.waiting&&e.refresh(t)})),yield*or(e,t,{suspendOnWaiting:!0})}));return Dg(()=>In(i,{signal:n.signal}),n,r)}function kg(e,t){let n=t.scheduler??bg(),r=t.concurrency??{mode:`parallel`};return{label:t.label,run:(i,a)=>yg(()=>n.schedule(i,r,a,()=>Og(i,e.atom(t.execute(a,i)).pipe(ba(t.label)),{reportDefect:!1,reportFailure:!1})))}}function Ag(e,t={},n=console){if(fn(e)||Tn(e.cause))return;let r=t.label??`atom command`;os(e.cause)?(t.reportDefect??!0)&&n.error(`[atom-command] ${r} defected`,e.cause):(t.reportFailure??!0)&&n.warn(`[atom-command] ${r} failed`,e.cause)}async function jg(e){try{return se(await e())}catch(e){return Tr(St(e))}}function Mg(e){return JSON.stringify([e.environmentId,e.input])}function Ng(e){let t=JSON.parse(e);return{environmentId:gt.make(t[0]),input:t[1]}}function Pg(e,t){return Ph.pipe(P(n=>n.run(e,t)))}var Fg=(e,t)=>n=>{let r=new WeakMap;return Vr(n,i=>{let a=i(e);i.subscribe(n,e=>i.setSelf(e));let o=r.has(i.registry)&&!Object.is(r.get(i.registry),a);return r.set(i.registry,a),o&&!t(i.once(n))&&i.refresh(n),i.once(n)},{initialValueTarget:n})},Ig=(e,t)=>n=>Vr(n,r=>{let i=r(n);if(!t(i)){let t=setTimeout(()=>r.refresh(n),e);r.addFinalizer(()=>clearTimeout(t))}return i},{initialValueTarget:n});function Lg(e,t){let n=Ra(t=>e.atom(Wh(t,qn(Oh.pipe(K(e=>st(e.state).pipe($n(st(e.session))))))),{initialValue:null})),r=Ra(r=>{let i=Ng(r),a=t.idleTtlMs??3e5,o=e.atom(e=>{let r=W(Ot(e(n(i.environmentId)))),a=t=>G(()=>e.setSelf(se(t,{waiting:!0}))).pipe(j(jt(()=>Promise.resolve()))),o=()=>{if(r===null)return ie;let[e,n]=r;switch(e.phase){case`connected`:return I(n)?Pg(i.environmentId,t.execute(i.input,a)):ie;case`connecting`:case`backoff`:return ie;case`available`:case`offline`:case`blocked`:return e.lastFailure===null?D(new tg({environmentId:i.environmentId,message:`Environment ${i.environmentId} is ${e.phase===`available`?`not connected`:e.phase}.`})):D(e.lastFailure)}};if(!t.persistence)return o();let s=t.persistence,c=JSON.stringify([t.label,i.input]),l=Ln(e.self(),Ot);return H(function*(){let e=I(l)?l:yield*s.load(i.environmentId,c);return I(e)&&(r===null||r[0].phase!==`connected`)?e.value:(bi(l)&&I(e)&&(yield*a(e.value)),yield*o().pipe(Ir(e=>s.save(i.environmentId,c,e))))})}).pipe(fo({staleTime:t.staleTimeMs??3e4,revalidateOnMount:!0}),Hi(a)),s=e=>t.isFinal!==void 0&&Ke(Ot(e),t.isFinal),c=t.refreshIntervalMs===void 0?o:o.pipe(Ig(t.refreshIntervalMs,s)),l=t.refreshTrigger?.(i);return(l===void 0?c:c.pipe(Fg(l,s))).pipe(Hi(a),ba(`${t.label}:${r}`))});return e=>r(Mg(e))}function Rg(e,t){let n=Ra(n=>{let r=Ng(n);return e.atom(Wh(r.environmentId,t.subscribe(r.input)).pipe(t.completeWhen?Oe(t.completeWhen):e=>e)).pipe(Hi(t.idleTtlMs??3e5),ba(t.sensitiveInput?`${t.label}:${r.environmentId}`:`${t.label}:${n}`))});return e=>n(Mg(e))}function zg(e,t){return kg(e,{label:t.label,...t.scheduler===void 0?{}:{scheduler:t.scheduler},...t.concurrency===void 0?{}:{concurrency:t.concurrency},execute:(e,n)=>Pg(e.environmentId,t.execute(e.input,n,e.environmentId))})}function Bg(e,t){return Lg(e,{label:t.label,...t.persistence===void 0?{}:{persistence:t.persistence},...t.staleTimeMs===void 0?{}:{staleTimeMs:t.staleTimeMs},...t.idleTtlMs===void 0?{}:{idleTtlMs:t.idleTtlMs},...t.refreshIntervalMs===void 0?{}:{refreshIntervalMs:t.refreshIntervalMs},...t.refreshTrigger===void 0?{}:{refreshTrigger:t.refreshTrigger},...t.isFinal===void 0?{}:{isFinal:t.isFinal},execute:(e,n)=>t.execute?.(e,n)??_g(t.tag,e)})}function Vg(e,t){return Rg(e,{label:t.label,...t.completeWhen===void 0?{}:{completeWhen:t.completeWhen},...t.idleTtlMs===void 0?{}:{idleTtlMs:t.idleTtlMs},subscribe:e=>{let n=gg(t.tag,e);return t.transform===void 0?n:t.transform(n)}})}function Hg(e,t){let n=eg(e,t.tag);return{...zg(e,{label:t.label,...t.scheduler===void 0?{}:{scheduler:t.scheduler},...t.concurrency===void 0?{}:{concurrency:t.concurrency},execute:(r,i,a)=>{let o={environmentId:a,input:r};return n.authorize(i,a,r).pipe(j(()=>t.execute?.(r)??dg(t.tag,r)),k(lg,{authorize:(t,n,r)=>eg(e,n).authorize(i,t,r)}),Ir(e=>t.onSuccess?.(o,i,e)??b),bn(t.onSettled?.(o,i)??b))}}),requiredScopes:n.requiredScopes,permissionAtom:n.permissionAtom}}var Ug=128;function Wg(e){let t=new Set,n=[e],r=0;for(;n.length>0&&r<Ug;){let e=n.pop();if(r+=1,typeof e!=`object`||!e||t.has(e))continue;t.add(e);let i=e;if(typeof i.traceId==`string`&&i.traceId.trim().length>0)return i.traceId;if(Array.isArray(i.errors))for(let e=i.errors.length-1;e>=0;--e)n.push(i.errors[e]);if(yn(e))for(let t=e.reasons.length-1;t>=0;--t){let r=e.reasons[t];switch(r?._tag){case`Fail`:n.push(r.error);break;case`Die`:n.push(r.defect)}}`cause`in i&&n.push(i.cause)}return null}var Gg=class extends M()(`@p4code/client-runtime/relay/discovery/RelayEnvironmentDiscovery`){},Kg={environments:new Map,refreshing:!1,offline:!1,error:L()};function qg(e,t){return t.environmentId===e.environmentId?t.endpoint.httpBaseUrl!==e.endpoint.httpBaseUrl||t.endpoint.wsBaseUrl!==e.endpoint.wsBaseUrl||t.endpoint.providerKind!==e.endpoint.providerKind?D(new Z({reason:`configuration`,detail:`Relay returned status for a different environment endpoint.`})):t.descriptor!==void 0&&t.descriptor.environmentId!==e.environmentId?D(new Z({reason:`configuration`,detail:`Relay returned a descriptor for a different environment.`})):U(t):D(new Z({reason:`configuration`,detail:`Relay returned status for a different environment.`}))}function Jg(e){try{return Rt(Cf(e).sub).pipe(Wn(e=>e.length>0))}catch{return L()}}var Yg=c(`RelayEnvironmentDiscovery.make`)(function*(){let e=yield*Lf,t=yield*ad,n=yield*wp,r=yield*lh,i=yield*is(Kg),a=yield*Vt(1),o=yield*q(!1),s=yield*q(0),l=yield*q(L()),u=yield*q(0),d=yield*q(new Map),f=c(`RelayEnvironmentDiscovery.clearOfflineReport`)(function*(e){yield*Nc(d,t=>{if(!t.has(e))return t;let n=new Map(t);return n.delete(e),n})}),p=c(`RelayEnvironmentDiscovery.updateEnvironment`)(function*(e,t,n){(yield*J(s))===e&&(yield*N(i,e=>{let r=e.environments.get(t);if(r===void 0)return e;let i=new Map(e.environments);return i.set(t,n(r)),{...e,environments:i}}))}),m=c(`RelayEnvironmentDiscovery.refreshStatus`)(function*(t,n,r){let i=yield*e.getEnvironmentStatus({clerkToken:n,scopes:[za,io],environmentId:r.environmentId}).pipe(S(nd),P(e=>qg(r,e)),je);if(i._tag===`Success`){if(i.success.status===`offline`){let e=`${i.success.endpoint.httpBaseUrl}\n${i.success.error??``}`;(yield*Mc(d,t=>t.get(r.environmentId)===e?[!1,t]:[!0,new Map(t).set(r.environmentId,e)]))&&(yield*Ko(`Relay environment health check reported offline`,{environmentId:i.success.environmentId,endpoint:i.success.endpoint.httpBaseUrl,message:i.success.error,traceId:i.success.traceId}))}else yield*f(r.environmentId);yield*p(t,r.environmentId,e=>({...e,availability:i.success.status,status:V(i.success),error:L()}));return}yield*f(r.environmentId),yield*p(t,r.environmentId,e=>({...e,availability:`error`,error:V(i.failure)}))}),h=a.withPermits(1)(H(function*(){if(yield*Y(o,!0),(yield*n.status)===`offline`){yield*N(i,e=>({...e,refreshing:!1,offline:!0}));return}let r=yield*J(s);yield*Y(u,r),yield*Ne(i,{environments:new Map,refreshing:!0,offline:!1,error:L()});let a=yield*je(t.clerkToken);if(a._tag===`Failure`){let e=a.failure;if(e._tag===`ConnectionBlockedError`&&e.reason===`authentication`){if((yield*J(s))!==r)return;yield*N(i,e=>({...e,refreshing:!1}));return}return yield*e}let c=a.success;if((yield*J(s))!==r)return;let d=Jg(c),f=yield*J(l);I(f)&&(!I(d)||f.value!==d.value)&&(r=yield*Pc(s,e=>e+1),yield*Y(u,r)),yield*Y(l,d);let p=yield*e.listEnvironments({clerkToken:c}).pipe(S(nd));if((yield*J(s))!==r)return;let h=new Map;for(let e of p)h.set(e.environmentId,{environment:e,availability:`checking`,status:L(),error:L()});yield*N(i,e=>({...e,environments:h})),yield*$a(p,e=>m(r,c,e),{concurrency:`unbounded`,discard:!0}),(yield*J(s))===r&&(yield*N(i,e=>({...e,refreshing:!1})))}).pipe(Se(e=>H(function*(){let t=yield*J(u);(yield*J(s))===t&&(yield*N(i,t=>({...t,refreshing:!1,error:V(e)})))}))));return yield*n.changes.pipe(Ur,lt(e=>e===`offline`?N(i,e=>({...e,refreshing:!1,offline:!0})):J(o).pipe(P(e=>e?h:b))),ca),yield*r.changes.pipe(lt(e=>e===`credentials-changed`?H(function*(){yield*Nc(s,e=>e+1),yield*Y(l,L()),yield*Y(d,new Map),yield*Ne(i,Kg),yield*h.pipe(ca)}):b),ca),Gg.of({state:i,refresh:h})}),Xg=Hn(Gg,Yg());function Zg(){return window.desktopBridge?.getLocalEnvironmentEnabled?.()===!1}var Qg=F([`configured`,`window-origin`,`desktop-managed`]),$g=F([`http-base-url`,`websocket-base-url`,`development-server-url`,`window-location-url`]),e_=class extends R()(`PrimaryEnvironmentUrlInvalidError`,{source:Qg,urlKind:$g,cause:O()}){get message(){return`Could not parse ${this.urlKind} for the ${this.source} primary environment target.`}},t_=class extends R()(`PrimaryEnvironmentProtocolUnsupportedError`,{source:Qg,protocol:B}){get message(){return`The ${this.source} primary environment target uses unsupported protocol ${this.protocol}.`}},n_=class extends R()(`DesktopEnvironmentBootstrapIncompleteError`,{hasHttpBaseUrl:xn,hasWsBaseUrl:xn}){get message(){return`Desktop bootstrap is missing ${[...this.hasHttpBaseUrl?[]:[`httpBaseUrl`],...this.hasWsBaseUrl?[]:[`wsBaseUrl`]].join(` and `)} for the local environment.`}},r_=class extends R()(`PrimaryEnvironmentDisabledError`,{}){get message(){return`The local environment is disabled.`}};pe(e_),pe(t_),pe(n_);var i_=new Set([`127.0.0.1`,`::1`,`localhost`]);function a_(){return(window.desktopBridge?.getLocalEnvironmentBootstraps()??[]).find(e=>e.id===`primary`)??null}function o_(e){try{return e.baseUrl===void 0?new URL(e.rawValue):new URL(e.rawValue,e.baseUrl)}catch(t){throw new e_({source:e.source,urlKind:e.urlKind,cause:t})}}function s_(e,t,n){return o_({rawValue:e,baseUrl:window.location.origin,source:t,urlKind:n}).toString()}function c_(e){return e.trim().toLowerCase().replace(/^\[(.*)\]$/,`$1`)}function l_(e){return i_.has(c_(e))}function u_(e){return e.target.httpBaseUrl}function d_(){return null}function f_(){let e=o_({rawValue:window.location.origin,source:`window-origin`,urlKind:`http-base-url`}),t=e.toString();if(e.protocol===`http:`)e.protocol=`ws:`;else if(e.protocol===`https:`)e.protocol=`wss:`;else throw new t_({source:`window-origin`,protocol:e.protocol});return{source:`window-origin`,target:{httpBaseUrl:t,wsBaseUrl:e.toString()}}}function p_(){let e=a_();if(!e||!e.httpBaseUrl&&!e.wsBaseUrl)return null;if(!e.httpBaseUrl||!e.wsBaseUrl)throw new n_({hasHttpBaseUrl:!!e.httpBaseUrl,hasWsBaseUrl:!!e.wsBaseUrl});return{source:`desktop-managed`,target:{httpBaseUrl:s_(e.httpBaseUrl,`desktop-managed`,`http-base-url`),wsBaseUrl:s_(e.wsBaseUrl,`desktop-managed`,`websocket-base-url`)}}}function m_(e,t){let n=h_();if(!n)throw new r_;let r=o_({rawValue:u_(n),source:n.source,urlKind:`http-base-url`});return r.pathname=e,t&&(r.search=new URLSearchParams(t).toString()),r.toString()}function h_(){return Zg()?null:p_()??d_()??f_()}var g_=M(`@p4code/web/environments/primary/httpClient/PrimaryEnvironmentHttpClient`),__=zi(()=>da(m_(`/`))),v_=Hn(g_,__),y_=null;function b_(){if(typeof window>`u`)return Promise.resolve(null);let e=window.desktopBridge;return e?(y_??=e.getLocalEnvironmentBearerToken().catch(e=>{throw y_=null,e}),y_):Promise.resolve(null)}function x_(){return typeof window>`u`||window.desktopBridge!==void 0||!window.location.origin.startsWith(`http`)?!1:new URL(m_(`/`)).origin===window.location.origin}function S_(e){return e.pipe(Ve(e=>jt(b_).pipe(K(t=>t?wr(e,t):e))))}function C_(){return gr(G(()=>{let t=fr(globalThis.fetch);if(x_())return e(t,Ba(Br,{credentials:`include`}));let n=Hn(Ai,K(Ai,S_)).pipe(ao(t));return e(n,Ba(Br,{credentials:`omit`}))}))}var w_=C_();function T_(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function E_(e,...t){if(!T_(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function D_(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function O_(e,t){E_(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function k_(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function A_(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function j_(e,t){return e<<32-t|e>>>t}var M_=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,N_=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`));function P_(e){if(E_(e),M_)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=N_[e[n]];return t}function F_(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function I_(e){return typeof e==`string`&&(e=F_(e)),E_(e),e}var L_=class{};function R_(e){let t=t=>e().update(I_(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function z_(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function B_(e,t,n){return e&t^~e&n}function V_(e,t,n){return e&t^e&n^t&n}var H_=class extends L_{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=A_(this.buffer)}update(e){D_(this),e=I_(e),E_(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=A_(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){D_(this),O_(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,k_(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;z_(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=A_(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},U_=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),W_=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),G_=new Uint32Array(64),K_=class extends H_{constructor(e=32){super(64,e,8,!1),this.A=U_[0]|0,this.B=U_[1]|0,this.C=U_[2]|0,this.D=U_[3]|0,this.E=U_[4]|0,this.F=U_[5]|0,this.G=U_[6]|0,this.H=U_[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)G_[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=G_[e-15],n=G_[e-2],r=j_(t,7)^j_(t,18)^t>>>3,i=j_(n,17)^j_(n,19)^n>>>10;G_[e]=i+G_[e-7]+r+G_[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=j_(o,6)^j_(o,11)^j_(o,25),u=l+t+B_(o,s,c)+W_[e]+G_[e]|0,d=(j_(n,2)^j_(n,13)^j_(n,22))+V_(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){k_(G_)}destroy(){this.set(0,0,0,0,0,0,0,0),k_(this.buffer)}},q_=R_(()=>new K_),J_=ua({kty:Yn(`EC`),crv:Yn(`P-256`),x:B.check(d()),y:B.check(d())});function Y_(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function X_(e){return Array.isArray(e)?`[${e.map(X_).join(`,`)}]`:Y_(e)?`{${Object.entries(e).filter(([,e])=>e!==void 0).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>`${JSON.stringify(e)}:${X_(t)}`).join(`,`)}}`:JSON.stringify(e)??`null`}var Z_=`dpop+jwt`,Q_=`ES256`,$_=J_;F([`missing_proof`,`malformed_proof`,`key_mismatch`,`method_mismatch`,`url_mismatch`,`access_token_hash_mismatch`,`time_window`,`invalid_signature`,`invalid_proof`]);var ev=ua({...J_.fields,d:Mt(nr)}),tv=dn(ua({typ:Yn(Z_),alg:Yn(Q_),jwk:ev}));Ro(tv);var nv=dn(ua({htm:B.check(d()),htu:B.check(d()),jti:B.check(d()),iat:Ze,ath:Mt(B)}));Ro(nv);function rv(e){return X_({crv:e.crv,kty:e.kty,x:e.x,y:e.y})}function iv(e){return us(q_(new TextEncoder().encode(rv(e))))}function av(e){return us(q_(new TextEncoder().encode(e)))}var ov=class extends Bi(`BrowserDpopError`){},sv=`p4code:cloud-auth`,cv=1,lv=`keys`,uv=`relay-dpop-proof-key`,dv=Cr($_),fv=Ba(uc,dc({randomBytes:e=>globalThis.crypto.getRandomValues(new Uint8Array(e)),digest:(e,t)=>jt(async()=>{let n=new Uint8Array(t.length);return n.set(t),new Uint8Array(await globalThis.crypto.subtle.digest(e,n.buffer))})}));function pv(e,t){return new ov({message:e,...t===void 0?{}:{cause:t}})}function mv(){return Ri(e=>{let t=indexedDB.open(sv,cv);t.addEventListener(`error`,()=>e(D(pv(`Could not open DPoP key storage.`,t.error??void 0)))),t.addEventListener(`upgradeneeded`,()=>{t.result.objectStoreNames.contains(lv)||t.result.createObjectStore(lv)}),t.addEventListener(`success`,()=>e(U(t.result)))})}function hv(){return typeof indexedDB>`u`?U(null):$o(mv(),e=>Ri(t=>{let n=e.transaction(lv,`readonly`).objectStore(lv).get(uv);n.addEventListener(`error`,()=>t(D(pv(`Could not read DPoP key.`,n.error??void 0)))),n.addEventListener(`success`,()=>t(U(n.result??null)))}),e=>G(()=>e.close()))}function gv(e){return typeof indexedDB>`u`?b:$o(mv(),t=>Ri(n=>{let r=t.transaction(lv,`readwrite`);r.addEventListener(`error`,()=>n(D(pv(`Could not write DPoP key.`,r.error??void 0)))),r.addEventListener(`complete`,()=>n(b)),r.objectStore(lv).put(e,uv)}),e=>G(()=>e.close()))}var _v=H(function*(){let e=yield*rr({try:()=>crypto.subtle.generateKey({name:`ECDSA`,namedCurve:`P-256`},!0,[`sign`,`verify`]),catch:e=>pv(`Could not generate DPoP proof key.`,e)}),t=yield*rr({try:()=>crypto.subtle.exportKey(`jwk`,e.privateKey),catch:e=>pv(`Could not export DPoP private key.`,e)}),n=yield*rr({try:()=>crypto.subtle.exportKey(`jwk`,e.publicKey),catch:e=>pv(`Could not export DPoP public key.`,e)}).pipe(P(e=>dv(e)),S(e=>e instanceof ov?e:pv(`Generated DPoP public key is invalid.`,e)));return{privateKey:yield*rr({try:()=>tf(t,`ES256`,{extractable:!1}),catch:e=>pv(`Could not import DPoP private key.`,e)}),publicJwk:n,thumbprint:iv(n)}});function vv(e){return H(function*(){let t=yield*_o({try:()=>new URL(e.url),catch:e=>pv(`Could not normalize DPoP proof URL.`,e)});t.search=``,t.hash=``;let n=yield*uc.pipe(P(e=>e.randomUUIDv4()),S(e=>pv(`Could not generate DPoP proof identifier.`,e)));return{proof:yield*rr({try:()=>new xf({htm:e.method.toUpperCase(),htu:t.toString(),jti:n,...e.accessToken?{ath:av(e.accessToken)}:{}}).setProtectedHeader({typ:`dpop+jwt`,alg:`ES256`,jwk:e.proofKey.publicJwk}).setIssuedAt().sign(e.proofKey.privateKey),catch:e=>pv(`Could not sign DPoP proof.`,e)}),thumbprint:e.proofKey.thumbprint}})}var yv=15e3,bv=3e5,xv=pe(jf),Sv=class extends Bi(`ManagedRelaySessionError`){},Cv=class extends Bi(`ManagedRelaySnapshotError`){},wv=pr(null).pipe(Ci,ba(`managed-relay:session`));function Tv(e){return Xo(e,wv).pipe(kt(e=>e?.accountId??null),Ur,li(1))}function Ev(e){return e.readClerkToken().pipe(Xe(e=>!!e,()=>new Sv({message:`The P4 Connect session token is unavailable.`})))}var Dv=c(`clientRuntime.managedRelaySession.deregisterEnvironment`)(function*(e,t){let n=e.get(wv);if(!n||n.accountId!==t.accountId)return yield*new Sv({message:`Sign in to P4 Connect before deregistering an environment.`});let r=yield*Ev(n);yield*(yield*Lf).unlinkEnvironment({clerkToken:r,environmentId:t.environmentId})});function Ov(e,t){let n=e(wv);return!n||n.accountId!==t?D(new Sv({message:`Sign in to P4 Connect before loading relay data.`})):Ev(n)}function kv(e){return JSON.stringify(e)}function Av(e){return JSON.parse(e)}function jv(e,t){return e.httpBaseUrl===t.httpBaseUrl&&e.wsBaseUrl===t.wsBaseUrl&&e.providerKind===t.providerKind}function Mv(e,t){return t.environmentId===e.environmentId?jv(t.endpoint,e.endpoint)?t.descriptor&&t.descriptor.environmentId!==e.environmentId?D(new Cv({message:`Relay returned status descriptor for a different environment.`})):U(t):D(new Cv({message:`Relay returned status for a different endpoint.`})):D(new Cv({message:`Relay returned status for a different environment.`}))}function Nv(e){let t=null,n=null;if(e._tag===`Failure`){let r=Ht(e.cause);t=xv(r)&&r.relayError?Nu(r.relayError):r instanceof Error?r.message:`Could not load P4 Connect data.`,n=Wg(r)}return{data:W(Ot(e)),error:t,errorTraceId:n,isPending:e.waiting}}function Pv(e,t){let n=t?.staleTimeMs??yv,r=t?.idleTtlMs??bv,i=(e,n)=>H(function*(){return t?.onQueryEvent?.({...e,phase:`start`}),yield*n.pipe(Pi(n=>G(()=>{if(n._tag===`Success`){t?.onQueryEvent?.({...e,phase:`success`});return}let r=Ht(n.cause);t?.onQueryEvent?.({...e,phase:`failure`,message:r instanceof Error?r.message:String(r),traceId:Wg(r)})})))}),a=Ra(t=>e.atom(e=>H(function*(){let n={operation:`environments`,accountId:t},r=yield*i({...n,stage:`clerk-token`},Ov(e,t)),a=yield*Lf;return yield*i({...n,stage:`relay-request`},a.listEnvironments({clerkToken:r}))})).pipe(fo({staleTime:n,revalidateOnMount:!0}),Hi(r),ba(`managed-relay:environments:${t}`))),o=Ra(t=>e.atom(e=>H(function*(){let n={operation:`devices`,accountId:t},r=yield*i({...n,stage:`clerk-token`},Ov(e,t)),a=yield*Lf;return yield*i({...n,stage:`relay-request`},a.listDevices({clerkToken:r}))})).pipe(fo({staleTime:n,revalidateOnMount:!0}),Hi(r),ba(`managed-relay:devices:${t}`))),s=Ra(t=>{let{accountId:a,environment:o}=Av(t);return e.atom(e=>H(function*(){let t={operation:`environment-status`,accountId:a,environmentId:o.environmentId},n=yield*i({...t,stage:`clerk-token`},Ov(e,a)),r=yield*Lf,s=yield*i({...t,stage:`relay-request`},r.getEnvironmentStatus({clerkToken:n,scopes:[za,io],environmentId:o.environmentId}));return yield*i({...t,stage:`validation`},Mv(o,s))})).pipe(fo({staleTime:n,revalidateOnMount:!0}),Hi(r),ba(`managed-relay:environment-status:${t}`))});return{environmentsAtom:a,devicesAtom:o,environmentStatusAtom:e=>s(kv(e)),refreshEnvironments(e,t){e.refresh(a(t))},refreshDevices(e,t){e.refresh(o(t))},refreshEnvironmentStatus(e,t){e.refresh(s(kv(t)))}}}var Fv=Hn(Ff,H(function*(){let e=yield*uc,t=yield*Vt(1),n=null,r=t.withPermit(H(function*(){if(n)return n;let e=yield*hv();if(e)return n=e,e;let t=yield*_v;return yield*gv(t),n=t,t}));return Ff.of({thumbprint:r.pipe(K(e=>e.thumbprint),S(e=>new Tf({keyStore:`indexed-db`,cause:e})),T(`web.managedRelayDpopSigner.loadThumbprint`)),createProof:c(`web.managedRelayDpopSigner.createProof`)(function*(t){let n=yield*r.pipe(S(e=>new Ef({method:t.method,url:t.url,cause:e})));return yield*vv({...t,proofKey:n}).pipe(k(uc,e),K(e=>e.proof),S(e=>new Ef({method:t.method,url:t.url,cause:e})))})})})),Iv=e=>Zf({relayUrl:e,clientId:xa}).pipe(ia(Fv)),Lv=F([`pk_test`,`pk_live`,`unknown`]),Rv=class extends R()(`ClerkPublishableKeyDecodeError`,{keyPrefix:Lv,cause:O()}){get message(){return`Failed to decode Clerk publishable key (${this.keyPrefix}).`}},zv=class extends R()(`ClerkPublishableKeyFrontendApiError`,{keyPrefix:Lv,frontendApi:B,reason:F([`empty`,`contains-path`,`invalid-url`]),cause:yt(O())}){get message(){return`Invalid Clerk frontend API decoded from publishable key (${this.keyPrefix}; ${this.reason}).`}};function Bv(e){let t=e.startsWith(`pk_test_`)?`pk_test`:e.startsWith(`pk_live_`)?`pk_live`:`unknown`,n=e.split(`_`).slice(2).join(`_`),r;try{r=globalThis.atob(n).replace(/\$$/u,``)}catch(e){throw new Rv({keyPrefix:t,cause:e})}if(r.length===0)throw new zv({keyPrefix:t,frontendApi:r,reason:`empty`});if(r.includes(`/`))throw new zv({keyPrefix:t,frontendApi:r,reason:`contains-path`});let i=`https://${r}`;try{return{hostname:new URL(i).hostname,url:i}}catch(e){throw new zv({keyPrefix:t,frontendApi:r,reason:`invalid-url`,cause:e})}}function Vv(e){return Bv(e).url}function Hv(e){return{template:e,skipCache:!0}}var Uv=class extends R()(`CloudPublicConfigMissingError`,{key:Yn(`P4CODE_CLERK_JWT_TEMPLATE`)}){get message(){return`${this.key} is not configured.`}};function Wv(e){return e?.trim()||null}function Gv(e){try{let t=new URL(e);return t.protocol===`https:`?t.toString():null}catch{return null}}function Kv(){return{clerkPublishableKey:Wv(``),clerkJwtTemplate:Wv(``),relayUrl:wf(``),relayTracing:{tracesUrl:Gv(``),tracesDataset:Wv(``),tracesToken:Wv(``)}}}function qv(){let{relayTracing:e}=Kv();return e.tracesUrl&&e.tracesDataset&&e.tracesToken?{tracesUrl:e.tracesUrl,tracesDataset:e.tracesDataset,tracesToken:e.tracesToken}:null}function Jv(){let e=Kv();return!!(e.clerkPublishableKey&&e.clerkJwtTemplate&&e.relayUrl)}function Yv(){let{clerkJwtTemplate:e}=Kv();if(!e)throw new Uv({key:`P4CODE_CLERK_JWT_TEMPLATE`});return Hv(e)}var Xv=null;function Zv(e){Xv=e}function Qv(){return Xv!==null}var $v=Ba(Fa,xi({span(e){return Xv?.span(e)??new ea(e)}}));function ey(){return Kv().relayUrl??`http://relay.invalid`}var ty=fr((e,t)=>globalThis.fetch(e,t)),ny=pu(qv(),{serviceName:`p4code-web`,serviceVersion:`0.8.37`,runtime:`browser`,client:typeof window<`u`&&window.desktopBridge?`desktop`:`web`}).pipe(ao(ty)),ry=Dc(v_.pipe(ao(w_))),iy=e=>ry.runPromise(e),ay=e=>iy(e),oy=Dc(Zr(ty,fv,cl,$v,ny,Iv(ey()).pipe(ao(Zr(ty,fv))))),sy=Fn(oy.contextEffect);export{vg as $,xp as $t,zg as A,Xu as An,mm as At,Sg as B,kl as Bn,Lp as Bt,m_ as C,Vu as Cn,Nm as Ct,Xg as D,Bu as Dn,Q as Dt,Gg as E,Wu as En,pm as Et,Rg as F,eu as Fn,Jp as Ft,ng as G,Y as Gn,kp as Gt,Eg as H,pl as Hn,Pp as Ht,kg as I,$l as In,Zp as It,lg as J,uc as Jn,jp as Jt,rg as K,Nc as Kn,Op as Kt,Og as L,Gl as Ln,em as Lt,Hg as M,Lu as Mn,rm as Mt,Bg as N,Fu as Nn,im as Nt,Wg as O,Hu as On,fm as Ot,Vg as P,Cu as Pn,xm as Pt,dg as Q,bp as Qt,wg as R,Ll as Rn,Vp as Rt,h_ as S,Zu as Sn,Pm as St,Kg as T,X as Tn,Mm as Tt,jg as U,J as Un,Ip as Ut,xg as V,sl as Vn,Np as Vt,Tg as W,q as Wn,Dp as Wt,ig as X,us as Xn,Sp as Xt,cg as Y,fs as Yn,Ep as Yt,_g as Z,Cp as Zt,P_ as _,ad as _n,ah as _t,Zv as a,hp as an,Zh as at,g_ as b,ld as bn,Im as bt,Yv as c,vp as cn,Bh as ct,Pv as d,Qf as dn,Ph as dt,pp as en,fg as et,Dv as f,$f as fn,Ih as ft,q_ as g,sd as gn,ch as gt,Nv as h,Ff as hn,dh as ht,Qv as i,fp as in,eg as it,Lg as j,Ru as jn,ym as jt,bg as k,Uu as kn,$ as kt,Wv as l,tp as ln,Lh as lt,wv as m,Lf as mn,lh as mt,ay as n,_p as nn,mg as nt,Jv as o,gp as on,Wh as ot,Tv as p,ep as pn,Oh as pt,tg as q,Dc as qn,Ap as qt,oy as r,mp as rn,hg as rt,Kv as s,dp as sn,Uh as st,sy as t,up as tn,gg as tt,Vv as u,cp as un,Mh as ut,w_ as v,cd as vn,Ym as vt,Zg as w,Z as wn,Sm as wt,l_ as x,rd as xn,Fm as xt,b_ as y,od as yn,Wm as yt,Cg as z,Rl as zn,Rp as zt};
6
- //# sourceMappingURL=runtime-OeWFs5Hf.js.map
5
+ `):void 0}catch{return}}function rh(e){try{return typeof e!=`object`||!e?void 0:$m(e._tag)}catch{return}}function ih(e){try{let t=new Set,n=e;for(;typeof n==`object`&&n&&!t.has(n);){t.add(n);let e=n;if(typeof e.traceId==`string`&&Zm.test(e.traceId))return e.traceId;n=e.cause}return}catch{return}}function ah(e){let t=rh(e),n=ih(e);if(e instanceof Error){let r=$m(e.name),i=nh(e);return{errorType:`error`,...r===void 0?{}:{errorName:r},...t===void 0?{}:{errorTag:t},...n===void 0?{}:{traceId:n},...i===void 0?{}:{stack:i}}}return{errorType:e===null?`null`:Array.isArray(e)?`array`:typeof e==`object`?`object`:`primitive`,...t===void 0?{}:{errorTag:t},...n===void 0?{}:{traceId:n}}}function oh(e){return e===`application-active`||e===`application-active-probe`||e===`application-active-reconnect`}function sh(e){return oh(e)||e===`network-changed`}function ch(e){return e===`application-active`||e===`application-active-probe`}var lh=class extends M()(`@p4code/client-runtime/connection/wakeups/ConnectionWakeups`){},uh=e=>lh.of(e),dh=e=>Ba(lh,uh(e)),fh=1e3,ph=3e5,mh=va(`15 seconds`),hh=va(`75 seconds`),gh=`15 seconds`,_h=`3 seconds`,vh=3e4,yh=`60 seconds`,bh=3e5;function xh(e){return un(e,{onFailure:e=>v(e)?ei:U(ge(e)),onSuccess:e=>U(Mi(e))})}function Sh(e,t){let n=Math.min(ph,fh*2**(e+1));return Math.round(n/2+n/2*t)}function Ch(e){return w({"environment.id":e.environmentId,"environment.label":e.label,"environment.target.kind":e._tag})}function wh(e,t){return{desired:!1,network:e.network,phase:`available`,stage:null,attempt:0,generation:t,lastFailure:null,retryAt:null}}function Th(e,t,n,r){return{desired:!0,network:e.network,phase:`offline`,stage:null,attempt:n,generation:t,lastFailure:r,retryAt:null}}function Eh(e,t,n,r,i=`preparing`){return{desired:!0,network:e.network,phase:`connecting`,stage:i,attempt:n,generation:t,lastFailure:r,retryAt:null}}function Dh(e,t,n,r){if(p(t)||Tn(t.cause))return{_tag:`Interrupted`,established:n,stable:r,resetRetry:!1};let i=t.cause.reasons.find(ke);return i?{_tag:`Failure`,established:n,stable:r,failure:i.error}:{_tag:`Failure`,established:n,stable:r,failure:{error:new X({reason:`transport`,detail:`${e.label} connection failed unexpectedly.`}),attemptSpan:L()}}}var Oh=class extends M()(`@p4code/client-runtime/connection/supervisor/EnvironmentSupervisor`){},kh=c(`EnvironmentSupervisor.make`)(function*(e,t){let n=e.target,r=$(e).some(e=>e.target._tag===`RelayConnectionTarget`),i=`${n.label} did not respond during connection setup.${r?` ${Ru}`:``}`;yield*Ch(n);let a=yield*wp,o=yield*Km,s=yield*lh,l={desired:t?.initiallyDesired??!1,network:yield*a.status},u=yield*q(l),d=yield*ai(),f=yield*q(!1),m=yield*q(!1),h=yield*is(l.desired?l.network===`offline`?Th(l,0,0,null):Eh(l,0,1,null):wh(l,0)),_=yield*is(L()),ee=yield*is(L()),v=yield*q(e),x=J(v).pipe(K($)),C=yield*q(L()),te=yield*q(new Map),ne=H(function*(){let e=yield*J(v),t=$(e),n=yield*jc(C,L());if(bi(n))return e;let r=t.find(e=>Q(e.target)===n.value);return r===void 0?e:nm(e,[r,...t.filter(e=>e!==r)])}),re=z(function*(e,t){let n=yield*t.session.initialConfig.pipe(ki),r=Na(n)?.directEndpoints;if(r===void 0)return;let i=Q(t.prepared.target),a=(yield*x).find(e=>Q(e.target)===i);if(a===void 0)return;let o=yield*e({activeRoute:a,reported:r});I(o)&&(yield*Y(v,o.value),yield*oe(t))}),E=e=>x.pipe(K(t=>t.findIndex(t=>Q(t.target)===Q(e.prepared.target)))),ie=z(function*(e){let t=yield*J(v),n=yield*E(e);if(n<=0)return;let r=yield*Qe,i=yield*J(te),a=$(t).slice(0,n).filter(e=>(i.get(Q(e.target))??0n)<=r),s=(yield*$a(a,e=>o.preflight(t,e),{concurrency:`unbounded`})).indexOf(!0);if(s===-1)return;let c=yield*A(_);bi(c)||c.value!==e.session||(yield*ue({_tag:`BetterRouteAvailable`,routeId:Q(a[s].target)}))}),ae=yield*so(1),oe=e=>E(e).pipe(P(t=>t>0?Oi(ae,e).pipe(le):b)),se=Ho([Ne(_,L()),Ne(ee,L())],{discard:!0}),ce=c(`EnvironmentSupervisor.setState`)(function*(e){yield*Ne(h,e)}),ue=c(`EnvironmentSupervisor.signal`)(function*(e){yield*Oi(d,e)}),de=yo(`Managed relay account changed; restarting the environment connection.`).pipe(Po({"environment.id":n.environmentId,"environment.label":n.label})),fe=c(`EnvironmentSupervisor.reportProgress`)(function*(e,t,n,r){`prepared`in r&&(yield*Ne(ee,V(r.prepared))),yield*ce(Eh(yield*J(u),t,e,n,r.stage))}),pe=z(function*(e,t,n,r){return yield*o.connect(yield*ne,i=>(i.stage===`synchronizing`?Nc(r,e=>e+1):b).pipe(j(fe(e,t,n,i))))}),me=(e,t,r,i)=>{let a=H(function*(){let a=yield*y.pipe(dt);yield*Ch(n),yield*w({"connection.attempt":t,"connection.generation":r,"connection.retry.failure_count":Ua(i,{onNone:()=>0,onSome:e=>e.failureCount})});let o=yield*e.pipe(S(e=>({error:e,attemptSpan:V(a)})));return{attemptSpan:V(a),lease:o}}).pipe(T(`relay.connection.attempt`,{root:!0}));return Ua(i,{onNone:()=>a,onSome:e=>a.pipe(mi(e.previousAttempt,{"connection.retry.delay_ms":e.delayMs,"connection.retry.reason":e.reason}))}).pipe(cu)},he=z(function*(e,t,n,i,a){return r?yield*me(pe(e,t,n,a),e,t,i):yield*pe(e,t,n,a).pipe(K(e=>({attemptSpan:L(),lease:e})),S(e=>({error:e,attemptSpan:L()})))}),ge=z(function*(){for(;;){let e=yield*Gr(d);switch(e._tag){case`DisconnectRequested`:case`RetryRequested`:return!1;case`NetworkChanged`:if(e.network===`offline`)return!1;break;case`ConnectRequested`:case`BetterRouteAvailable`:break;case`Wakeup`:if(e.reason===`application-active-reconnect`)return!0;if(e.reason===`credentials-changed`&&r)return yield*de,!1}}}),_e=e=>e.prepared.target._tag===`RelayConnectionTarget`,ve=z(function*(e,t){if(e._tag===`DisconnectRequested`)return`end`;if(e._tag===`BetterRouteAvailable`)return yield*Y(C,V(e.routeId)),`reset`;if(e._tag===`Wakeup`){if(e.reason===`application-active-reconnect`)return`reset`;if(e.reason===`credentials-changed`&&_e(t))return yield*de,`end`}}),ye=e=>{switch(e._tag){case`RetryRequested`:return _h;case`NetworkChanged`:return e.network===`offline`?_h:void 0;case`Wakeup`:return e.reason===`application-active`?gh:e.reason===`application-active-probe`||e.reason===`network-changed`?_h:void 0;case`ConnectRequested`:case`DisconnectRequested`:case`BetterRouteAvailable`:return}},be=z(function*(e){let t=Gr(d).pipe(Ir(e=>e._tag===`RetryRequested`?Y(f,!1):b));for(yield*Je(yh).pipe(li(1),lt(()=>oe(e)),ca);;){let r=yield*t,i=yield*ve(r,e);if(i!==void 0)return i===`reset`;(r._tag===`NetworkChanged`&&r.network!==`offline`||r._tag===`Wakeup`&&sh(r.reason))&&(yield*oe(e));let a=ye(r);if(a===void 0)continue;yield*Y(m,!0);let o=yield*Pa(e.session.probe),s=(yield*Qe)+tn(a);for(;;){let r=s-(yield*Qe),i=yield*Kt([es(o).pipe(K(e=>({_tag:`ProbeCompleted`,exit:e}))),t.pipe(K(e=>({_tag:`Signal`,signal:e}))),oa(bo(r>0n?r:0n)).pipe(hn({_tag:`TimedOut`}))]);if(i._tag===`TimedOut`)return yield*Uo(o),yield*new X({reason:`timeout`,detail:`${n.label} did not respond to a connection health check.`});if(i._tag===`ProbeCompleted`){p(i.exit)&&(yield*Y(m,!1)),yield*i.exit;break}let a=yield*ve(i.signal,e);if(a!==void 0)return yield*Uo(o),a===`reset`;let c=ye(i.signal);if(c!==void 0){let e=(yield*Qe)+tn(c);e<s&&(s=e)}}}}),xe=z(function*(e,r,a,o,s){let c=yield*J(C);yield*Ne(ee,L());let l=yield*q(0),d=yield*Kt([xh(he(e,r,a,o,l)).pipe(K(e=>({_tag:`Completed`,exit:e}))),ge().pipe(K(e=>({_tag:`Interrupted`,resetRetry:e}))),H(function*(){let e=$(yield*J(v)).length,t=yield*Qe,n=tn(xr(mh,e));for(;;){let e=BigInt(yield*J(l)),r=t+n+e*tn(hh)-(yield*Qe);if(r<=0n)return{_tag:`TimedOut`};yield*oa(bo(r))}})]);if(d._tag===`Interrupted`)return{_tag:`Interrupted`,established:!1,stable:!1,resetRetry:d.resetRetry};if(d._tag===`TimedOut`)return{_tag:`Failure`,established:!1,stable:!1,failure:{error:new X({reason:`timeout`,detail:i}),attemptSpan:L()}};if(Li(d.exit)){let e=!Tn(d.exit.cause)&&!d.exit.cause.reasons.some(ke),t=Dh(n,d.exit,!1,!1);if(e){let e=d.exit.cause.reasons.find(Mn)?.defect;yield*ar(`Connection attempt failed with an unexpected defect.`).pipe(Po({"environment.id":n.environmentId,"environment.label":n.label,"cause.reason_count":d.exit.cause.reasons.length,...ah(e)}))}return t}let f=d.exit.value;if(I(c)&&Q(f.lease.prepared.target)!==c.value){let e=(yield*Qe)+BigInt(bh)*1000000n;yield*Nc(te,t=>new Map(t).set(c.value,e))}let m=yield*J(u);if(!m.desired||m.network===`offline`&&!s)return{_tag:`Interrupted`,established:!1,stable:!1,resetRetry:!1};let h=yield*Ce;yield*Ne(ee,V(f.lease.prepared)),yield*Ne(_,V(f.lease.session)),t?.learnRoutes!==void 0&&(yield*re(t.learnRoutes,f.lease).pipe(ca)),yield*ce({desired:!0,network:m.network,phase:`connected`,stage:null,attempt:e,generation:r,lastFailure:null,retryAt:null});let g=yield*ts(f.lease.session.closed.pipe(S(e=>({error:e,attemptSpan:f.attemptSpan}))),be(f.lease).pipe(S(e=>({error:e,attemptSpan:f.attemptSpan})))).pipe(xh),y=(yield*Ce)-h;if(p(g))return{_tag:`Interrupted`,established:!0,stable:y>=vh,resetRetry:g.value};let x=Dh(n,g,!0,y>=vh);return x._tag===`Failure`&&(yield*b.pipe(T(`EnvironmentSupervisor.connectionLost`,{root:!0,attributes:{"environment.id":n.environmentId,"environment.label":n.label,"environment.target.kind":n._tag,"connection.connected_ms":y,"connection.failure.reason":x.failure.error.reason,"connection.failure.detail":x.failure.error.detail}}))),x},bn(se)),Se=z(function*(e){return yield*ts(oa(e).pipe(hn(!1)),H(function*(){for(;;){let e=yield*Gr(d);switch(e._tag){case`Wakeup`:return sh(e.reason);case`ConnectRequested`:case`DisconnectRequested`:case`RetryRequested`:case`NetworkChanged`:return!1}}}))}),we=Gr(d).pipe(g({while:e=>e._tag===`BetterRouteAvailable`}),K(e=>e._tag===`Wakeup`&&sh(e.reason))),Te=z(function*(){let e=0,t=0,n=null,r=L(),i=()=>{e=0,r=L()},a=!1;for(;;){(yield*jc(f,!1))&&(e=0,n=null,r=L());let o=yield*J(u);if(!o.desired){i(),n=null,yield*se,yield*ce(wh(o,t)),yield*we;continue}if(o.network===`offline`&&!a){yield*se,yield*ce(Th(o,t,e+1,n)),(yield*we)&&i();continue}let s=e+1,c=t+1,l=yield*yi(xe(s,c,n,r,a));a=!1;let d=yield*jc(m,!1);if(l.established&&(t=c,l.stable&&(i(),n=null)),l._tag===`Interrupted`){l.resetRetry&&(i(),a=!0);continue}let p=l.failure.attemptSpan,h=l.failure.error;if(n=h,h._tag===`ConnectionBlockedError`){let e=yield*J(u);yield*ce({desired:e.desired,network:e.network,phase:`blocked`,stage:null,attempt:s,generation:t,lastFailure:h,retryAt:null}),(yield*we)&&i();continue}if(d){i(),yield*ce(Eh(yield*J(u),t,1,h));continue}e+=1;let g=Sh(e-1,yield*hs);r=sa(p,t=>({previousAttempt:t,failureCount:e,delayMs:g,reason:h.reason}));let _=yield*J(u);yield*ce({desired:_.desired,network:_.network,phase:`backoff`,stage:null,attempt:s,generation:t,lastFailure:h,retryAt:(yield*Ce)+g}),(yield*Se(g))&&i()}});yield*a.changes.pipe(lt(e=>Mc(u,t=>t.network===e?[!1,t]:[!0,{...t,network:e}]).pipe(P(t=>t?ue({_tag:`NetworkChanged`,network:e}):b))),ca),yield*s.changes.pipe(lt(e=>ue({_tag:`Wakeup`,reason:e})),ca),yield*Gr(ae).pipe(P(ie),$i,ca),yield*Te().pipe(ca);let Ee=Nc(u,e=>({...e,desired:!0})).pipe(j(ue({_tag:`ConnectRequested`})),T(`EnvironmentSupervisor.connect`)),De=Nc(u,e=>({...e,desired:!1})).pipe(j(ue({_tag:`DisconnectRequested`})),T(`EnvironmentSupervisor.disconnect`)),Oe=Y(f,!0).pipe(j(ue({_tag:`RetryRequested`})),T(`EnvironmentSupervisor.retryNow`));return yield*Or(()=>Fr(d).pipe(j(se))),Oh.of({target:n,state:h,session:_,prepared:ee,connect:Ee,disconnect:De,retryNow:Oe})}),Ah=pe(dp);function jh(e){return{...e.unsupportedReason===void 0?{}:{unsupportedReason:e.unsupportedReason},...e.serverUpdateRequired===!0?{serverUpdateRequired:!0}:{}}}var Mh=class extends R()(`EnvironmentNotRegisteredError`,{environmentId:gt}){get message(){return`Environment ${this.environmentId} is not registered.`}},Nh=class extends R()(`PlatformEnvironmentRemovalError`,{environmentId:gt}){get message(){return`Platform-managed environment ${this.environmentId} cannot be removed.`}},Ph=class extends M()(`@p4code/client-runtime/connection/registry/EnvironmentRegistry`){},Fh=H(function*(){let e=yield*ma,t=yield*Op,r=yield*kp,i=yield*Ap,a=yield*jp,o=yield*Sp,s=yield*bp,l=yield*Lp,u=yield*wp,d=yield*Km,f=yield*lh,p=yield*ld,m=yield*t.list,h=new Set(yield*t.listDisabled),g=c(`EnvironmentRegistry.loadRoute`)(function*(e){return{target:e,profile:e._tag===`BearerConnectionTarget`||e._tag===`SshConnectionTarget`?yield*o.get(e.connectionId):L()}}),_=new Map;for(let e of m){let t=_.get(e.environmentId)??[];t.push(e),_.set(e.environmentId,t)}let ee=new Map(yield*$a(_,c(`EnvironmentRegistry.loadCatalogEntry`)(function*([e,t]){let n=yield*$a(t,g,{concurrency:`unbounded`}),r=new Set,i=n.filter(e=>{let t=Q(e.target);return!r.has(t)&&(r.add(t),!(t.startsWith(`learned:`)&&bi(e.profile)))}),a=i.length>0?i:n.slice(0,1),o=a[0];return[e,nm({target:o.target,profile:o.profile,enabled:!h.has(e)},a)]}),{concurrency:`unbounded`})),v=yield*is(ee),y=yield*is(yield*u.status),x=yield*is(new Map),C=yield*q(new Set),te=yield*q(new Set(_.keys())),ne=yield*q(new Map),w=yield*Vt(1),re=yield*q(!1),E=(e,t)=>$o(w.withPermits(1)(H(function*(){let t=yield*J(ne),n=t.get(e);if(n!==void 0)return yield*Y(ne,new Map(t).set(e,{semaphore:n.semaphore,users:n.users+1})),n.semaphore;let r=yield*Vt(1);return yield*Y(ne,new Map(t).set(e,{semaphore:r,users:1})),r})),e=>e.withPermits(1)(t),t=>w.withPermits(1)(Nc(ne,n=>{let r=n.get(e);if(r===void 0||r.semaphore!==t)return n;let i=new Map(n);return r.users===1?i.delete(e):i.set(e,{semaphore:t,users:r.users-1}),i}))).pipe(T(`EnvironmentRegistry.withLeaseLock`)),ie=c(`EnvironmentRegistry.getEntry`)(function*(e){let t=(yield*A(v)).get(e);return t===void 0?yield*new Mh({environmentId:e}):t}),ae=c(`EnvironmentRegistry.closeServiceScope`)(function*(e){let t=yield*A(x),n=t.get(e);if(n===void 0)return;let r=new Map(t);r.delete(e),yield*Ne(x,r),yield*Wi(n.scope,mt)}),oe=c(`EnvironmentRegistry.createServiceScope`)(t=>Wo(H(function*(){let n=t.target.environmentId,r=yield*ho(e),i=yield*kh(t,{initiallyDesired:!1,learnRoutes:e=>D({environmentId:n,...e})}).pipe(k(wp,u),k(Km,d),k(lh,f),Xi(r),Et(()=>Wi(r,mt)));return t.enabled&&(yield*i.connect),yield*N(x,e=>{let a=new Map(e);return a.set(n,{entry:t,supervisor:i,scope:r}),a}),yield*st(i.state).pipe(lt(e=>e.phase===`blocked`&&e.lastFailure?.reason===`unsupported`?Le(n,e.lastFailure).pipe(Se(e=>Ko(`Could not disable an unsupported environment.`,{environmentId:n,error:e}))):b),ur(r)),i}))),se=c(`EnvironmentRegistry.acquireSupervisor`)(function*(e){return yield*E(e,H(function*(){let t=yield*ie(e),n=(yield*A(x)).get(e);if(n!==void 0){if(vo(n.entry,t))return n.supervisor;yield*ae(e)}return yield*oe(t)}))}),ce=c(`EnvironmentRegistry.run`)(function*(e,t){let n=yield*se(e);return yield*k(t,Oh,n)}),le=(e,t)=>qn(se(e).pipe(K(e=>be(t,Oh,e)))),ue=(e,t)=>Sa(Mo(A(v)),st(v)).pipe(kt(t=>n(t.get(e))),ii((e,t)=>W(e)===W(t)),jn(Ua({onNone:()=>Co,onSome:()=>qn(se(e).pipe(ko({onFailure:()=>Co,onSuccess:e=>be(t,Oh,e)})))}))),de=H(function*(){(yield*jc(re,!0))||(yield*$a(_.keys(),e=>se(e).pipe(Ft({EnvironmentNotRegisteredError:()=>b})),{concurrency:`unbounded`,discard:!0}))}).pipe(T(`EnvironmentRegistry.start`)),fe=c(`EnvironmentRegistry.installEntryLocked`)(function*(e,t){let n=e.target,r=(yield*A(v)).get(n.environmentId),i=(yield*A(x)).get(n.environmentId);t?.retainEquivalentRuntime===!0&&r!==void 0&&vo(r,e)&&i!==void 0&&vo(i.entry,e)||(yield*ae(n.environmentId),yield*N(v,t=>{let r=new Map(t);return r.set(n.environmentId,e),r}),yield*oe(e))}),pe=(e,t)=>l.forget(e).pipe(S(e=>new Dp({operation:t,message:e.message}))),me=e=>$(e).map(e=>e.target),he=(e,t)=>{let n=nm(e,t);if(Pp(e)===Pp(n))return{entry:n,addressesChanged:!1};let{unsupportedReason:r,serverUpdateRequired:i,...a}=n;return{entry:a,addressesChanged:!0}},ge=c(`EnvironmentRegistry.register`)(function*(e){let t=yp(e),n=t.target.environmentId;return yield*E(n,H(function*(){if((yield*J(C)).has(n))return!1;let i=(yield*A(v)).get(n),a=t;if(i!==void 0){let e={target:t.target,profile:t.profile},r=$(i),o=um(r,e),s=r.filter(t=>t!==o||Q(t.target)===Q(e.target)),c=he(i,lm(s,e));c.addressesChanged&&(yield*pe(n,`register-connection`)),a=c.entry}return yield*r.register(e,me(a)),yield*Nc(te,e=>new Set(e).add(n)),yield*fe(a),!0}))}),_e=c(`EnvironmentRegistry.replaceRoutesLocked`)(function*(e,t){let n=e.target.environmentId,i=he(e,t);i.addressesChanged&&(yield*pe(n,`set-connection-routes`)),yield*r.setRoutes(n,me(i.entry)),yield*fe(i.entry)}),ve=c(`EnvironmentRegistry.userEntry`)(function*(e){return(yield*J(C)).has(e)?yield*new Nh({environmentId:e}):yield*ie(e)}),ye=c(`EnvironmentRegistry.installPlatformRegistration`)(function*(e){let t=yp(e),n=t.target;yield*E(n.environmentId,H(function*(){let i=(yield*A(v)).get(n.environmentId),a=i?.unsupportedReason!==void 0&&Pp(i)===Pp(t)?{...t,enabled:!1,...jh(i)}:t,o=(yield*J(te)).has(n.environmentId);if(o||i!==void 0&&Pp(i)!==Pp(a)){let e=yield*l.forget(n.environmentId).pipe(ga(e=>Ko(`Could not clear GitHub routing permission for a platform environment.`,{environmentId:n.environmentId,error:e})),Nn);if(Li(e))return}yield*Nc(C,e=>{let t=new Set(e);return t.add(n.environmentId),t});let c=!1;if(e._tag===`BearerConnectionRegistration`){let t=yield*s.get(e.target.connectionId).pipe(_t(()=>L())),r=I(t)&&!vo(t.value,e.credential);c=yield*s.put(e.target.connectionId,e.credential).pipe(hn(r),Se(e=>Ko(`Could not store the platform bearer credential.`,{environmentId:n.environmentId,error:e}).pipe(hn(!1))))}if(o&&(yield*r.remove(n.environmentId).pipe(Ir(()=>Nc(te,e=>{let t=new Set(e);return t.delete(n.environmentId),t})),Se(e=>Ko(`Could not remove a persisted registration shadowed by a platform environment.`,{environmentId:n.environmentId,error:e})))),yield*fe(a,{retainEquivalentRuntime:!0}),c&&e._tag===`BearerConnectionRegistration`){let t=(yield*A(x)).get(n.environmentId);if(t!==void 0){let n=yield*A(t.supervisor.state);if(n.phase===`connecting`||n.phase===`backoff`||n.phase===`blocked`&&n.lastFailure?._tag===`ConnectionBlockedError`&&n.lastFailure.reason===`authentication`)yield*t.supervisor.retryNow;else if(n.phase===`connected`){let n=e.credential.token;yield*De(t.supervisor.prepared,t=>I(t)&&t.value.target._tag===`BearerConnectionTarget`&&vm(t.value.target.connectionId)===e.target.connectionId&&t.value.httpAuthorization?._tag===`Bearer`&&t.value.httpAuthorization.token!==n?V(V({...t.value,httpAuthorization:{_tag:`Bearer`,token:n}})):L())}}}}))}),xe=c(`EnvironmentRegistry.removePlatformEnvironment`)(function*(e){yield*E(e,H(function*(){let t=(yield*A(v)).get(e),n=yield*l.forget(e).pipe(ga(t=>Ko(`Could not clear GitHub routing permission after platform removal.`,{environmentId:e,error:t})),Nn);Li(n)||(yield*Nc(C,t=>{let n=new Set(t);return n.delete(e),n}),yield*ae(e),yield*N(v,t=>{let n=new Map(t);return n.delete(e),n}),t!==void 0&&t.target._tag===`BearerConnectionTarget`&&(yield*s.remove(t.target.connectionId).pipe(Se(t=>Ko(`Could not clear the platform bearer credential.`,{environmentId:e,error:t})))),yield*Ho([i.clear(e).pipe(Se(t=>Ko(`Could not clear cached environment data after removal.`,{environmentId:e,error:t}))),a.clear(e)],{concurrency:`unbounded`,discard:!0}))}))}),Ce=c(`EnvironmentRegistry.registerPlatform`)(function*(e){yield*ye(e)}),we=c(`EnvironmentRegistry.reconcilePlatform`)(function*(e){let t=new Set(e.map(e=>e.target.environmentId)),n=yield*J(C);yield*$a(n,e=>t.has(e)?b:xe(e),{discard:!0}),yield*$a(e,ye,{discard:!0})}),Te=c(`EnvironmentRegistry.removeLocked`)(function*(e){if((yield*J(C)).has(e))return yield*new Nh({environmentId:e});let t=yield*ie(e);yield*l.forget(e),yield*r.remove(e),yield*Nc(te,t=>{let n=new Set(t);return n.delete(e),n}),yield*ae(e),yield*N(v,t=>{let n=new Map(t);return n.delete(e),n}),yield*Ho([i.clear(e).pipe(Se(t=>Ko(`Could not clear cached environment data after removal.`,{environmentId:e,error:t}))),a.clear(e)],{concurrency:`unbounded`,discard:!0});for(let n of $(t)){let t=W(n.profile);t!==null&&Ah(t)&&(yield*Oe(e,t))}}),Ee=c(`EnvironmentRegistry.remove`)(function*(e){return yield*E(e,Te(e))}),Oe=(e,t)=>p.disconnect(t.target).pipe(ga(t=>Ko(`Could not disconnect the managed SSH environment.`,{environmentId:e,error:t})),co),ke=globalThis.location===void 0||globalThis.location.protocol!==`https:`,D=c(`EnvironmentRegistry.learnRoutes`)(function*(e){return yield*E(e.environmentId,H(function*(){if((yield*J(C)).has(e.environmentId))return L();let t=(yield*A(v)).get(e.environmentId);if(t===void 0)return L();let n=hm({entry:t,activeRoute:e.activeRoute,reported:e.reported,allowInsecure:ke});if(n===null)return L();let i=nm(t,n),a=new Map($(t).map(e=>[Q(e.target),W(e.profile)]));for(let e of n){let t=W(e.profile);t!==null&&a.get(Q(e.target))!==t&&(yield*o.put(t))}yield*r.setRoutes(e.environmentId,me(i));let s=(yield*A(x)).get(e.environmentId);return s!==void 0&&(yield*N(x,t=>new Map(t).set(e.environmentId,{...s,entry:i}))),yield*N(v,t=>new Map(t).set(e.environmentId,i)),V(i)})).pipe(Se(t=>Ko(`Could not save routes learned from the environment.`,{environmentId:e.environmentId,error:t}).pipe(hn(L()))))}),O=c(`EnvironmentRegistry.removeRoute`)(function*(e,t){yield*E(e,H(function*(){let n=yield*ve(e),r=$(n),i=r.find(e=>Q(e.target)===t);if(i===void 0)return;let a=bm(r,t);if(a.length===0)return yield*Te(e);yield*_e(n,a);let o=W(i.profile);o!==null&&Ah(o)&&(yield*Oe(e,o))}))}),Ae=c(`EnvironmentRegistry.reorderRoutes`)(function*(e,t){yield*E(e,H(function*(){let n=yield*ve(e),r=$(n),i=new Map(r.map(e=>[Q(e.target),e])),a=t.flatMap(e=>i.get(e)??[]);if(a.length!==r.length||new Set(t).size!==r.length)return yield*new Z({reason:`configuration`,detail:`The route order must list every saved route once.`});a.every((e,t)=>e===r[t])||(yield*_e(n,a))}))}),je=c(`EnvironmentRegistry.removeRelayEnvironments`)(function*(){let e=[...(yield*A(v)).values()].filter(e=>$(e).some(e=>e.target._tag===`RelayConnectionTarget`)).map(e=>e.target.environmentId);yield*$a(e,e=>O(e,tm).pipe(Ft({EnvironmentNotRegisteredError:()=>b})),{concurrency:`unbounded`,discard:!0})}),Me=e=>se(e).pipe(P(e=>e.retryNow),Ft({EnvironmentNotRegisteredError:()=>b}),T(`EnvironmentRegistry.retryNow`)),Pe=c(`EnvironmentRegistry.setEnabled`)(function*(e,t){yield*E(e,H(function*(){let n=yield*ie(e);if(t&&n.unsupportedReason!==void 0)return yield*new Z({reason:`unsupported`,detail:n.unsupportedReason});if(n.enabled===t)return;(yield*J(C)).has(e)||(yield*r.setEnabled(e,t));let i={...n,enabled:t},a=(yield*A(x)).get(e);if(a!==void 0&&(yield*N(x,t=>{let n=new Map(t);return n.set(e,{...a,entry:i}),n})),yield*N(v,t=>{let n=new Map(t);return n.set(e,i),n}),a===void 0?t&&(yield*oe(i)):yield*t?a.supervisor.connect:a.supervisor.disconnect,!t)for(let t of $(n)){let n=W(t.profile);n!==null&&Ah(n)&&(yield*Oe(e,n))}}))}),Fe=c(`EnvironmentRegistry.state`)(function*(e){let t=yield*se(e);return yield*A(t.state)}),Ie=e=>ue(e,qn(Oh.pipe(K(e=>st(e.state)))));yield*Or(()=>A(x).pipe(P(e=>$a(e.values(),e=>Wi(e.scope,mt),{concurrency:`unbounded`,discard:!0})))),yield*u.changes.pipe(lt(e=>Ne(y,e)),ca);let Le=c(`EnvironmentRegistry.setCompatibility`)(function*(e,t){yield*E(e,H(function*(){let n=(yield*A(v)).get(e);if(n===void 0||n.unsupportedReason===(t?.message??void 0)&&n.serverUpdateRequired===(t?.serverUpdateRequired??void 0))return;let{unsupportedReason:i,serverUpdateRequired:a,...o}=n,s=t===null?o:{...o,enabled:!1,unsupportedReason:t.message,...t.serverUpdateRequired===!0?{serverUpdateRequired:!0}:{}};t!==null&&n.enabled&&!(yield*J(C)).has(e)&&(yield*r.setEnabled(e,!1));let c=(yield*A(x)).get(e);c!==void 0&&(yield*N(x,t=>new Map(t).set(e,{...c,entry:s})),t!==null&&(yield*c.supervisor.disconnect)),yield*N(v,t=>new Map(t).set(e,s))}))});return Ph.of({entries:v,networkStatus:y,start:de,register:ge,registerPlatform:Ce,reconcilePlatform:we,remove:Ee,removeRoute:O,reorderRoutes:Ae,removeRelayEnvironments:je,retryNow:Me,setEnabled:Pe,setCompatibility:Le,state:Fe,stateChanges:Ie,run:ce,runStream:le,followStream:ue})}),Ih=Hn(Ph,Fh);function Lh(e){return{...e,[Jo]:`2`}}var Rh=(e,t)=>e===null?t.pipe(k(Br,{credentials:`include`})):t,zh=(e,t,n,r)=>H(function*(){if(e===null)return{};if(e._tag===`Bearer`)return{authorization:`Bearer ${e.token}`};if(bi(r))return yield*new na({message:`No DPoP signer is available to authorize the environment request.`,cause:e._tag});let i=yield*r.value.createProof({method:t,url:n,accessToken:e.accessToken}).pipe(S(e=>new na({message:`Could not create the environment request authorization proof.`,cause:e})));return{authorization:`DPoP ${e.accessToken}`,dpop:i}}),Bh=e=>e.prepared.httpAuthorization?._tag===`Dpop`?Hh(e).pipe(T(Vh,{root:!0}),cu):Hh(e).pipe(T(Vh)),Vh=`clientRuntime.state.executeAuthenticatedEnvironmentHttpRequest`,Hh=z(function*(e){let t=e.prepared.httpBaseUrl,n=t=>e.url(jr(t)[e.group]);return yield*H(function*(){let r;for(;;){let i=e.prepared.httpAuthorization;if(i?._tag===`Dpop`){let n=e.remoteAuthorization;if(n===void 0||bi(n))return yield*new na({message:`No relay authorization service is available for the environment request.`,cause:e.prepared.target._tag});let a=yield*n.value.authorizeDpopHttp({expectedEnvironmentId:e.prepared.environmentId,...r===void 0?{}:{rejectedAccessToken:r}}).pipe(S(e=>new na({message:`Could not authorize the environment request.`,cause:e})));e.prepared.target._tag===`RelayConnectionTarget`&&(t=a.httpBaseUrl),i=a.httpAuthorization}let a=n(t),o=yield*qa(t,e.group),s=yield*zh(i,e.method,a,e.signer),c=yield*Si(a,e.timeoutMs,Rh(i,e.request({client:o,headers:s}))).pipe(je);if(kn(c)){if(i?._tag===`Dpop`&&r===void 0&&c.failure._tag===`EnvironmentAuthInvalidError`&&c.failure.reason===`invalid_credential`){r=i.accessToken;continue}return yield*c.failure}if(i?._tag===`Dpop`&&e.isUnauthorizedResponse?.(c.success)===!0){if(r===void 0){r=i.accessToken;continue}return yield*new na({message:`The environment rejected the renewed session authorization.`,cause:c.success})}return c.success}}).pipe(oi({duration:e.timeoutMs,orElse:()=>D(new La(n(t),e.timeoutMs))}))});function Uh(e,t){return qn(Ph.pipe(K(n=>n.runStream(e,t))))}function Wh(e,t){return qn(Ph.pipe(K(n=>n.followStream(e,t))))}var Gh=class extends Bi(`SessionHttpClientUnavailable`){};function Kh(e){return e.pipe(_e,Se(e=>Ko(`Could not load the initial environment configuration.`).pipe(Po({...ah(e)}),hn(L()))))}var qh=6e3,Jh=c(`clientRuntime.state.fetchEnvironmentSessionState`)(function*(e){return yield*Bh({...e,group:`auth`,method:`GET`,url:e=>e.session(),timeoutMs:e.timeoutMs??qh,request:({client:e,headers:t})=>e.session({headers:t}),isUnauthorizedResponse:e=>!e.authenticated})});function Yh(e){let t=Ra(t=>e.atom(Wh(t,qn(Oh.pipe(K(e=>st(e.session).pipe(f(Ua({onNone:()=>U(L()),onSome:e=>Kh(e.initialConfig)}))))))),{initialValue:L()})),n=Ra(e=>pr(n=>W(qr(Ot(n(t(e))),()=>L()))).pipe(ba(`environment-config-value:${e}`))),r=Ra(t=>e.atom(Wh(t,qn(Oh.pipe(K(e=>st(e.prepared))))),{initialValue:L()})),i=Ra(e=>pr(t=>qr(Ot(t(r(e))),()=>L())).pipe(ba(`environment-prepared-connection:${e}`))),a=Ra(t=>e.atom(e=>{let n=W(e(i(t)));return n===null?ie:H(function*(){let e=yield*lr(Ff),t=yield*lr(tp),r=yield*lr(Ai);return bi(r)?yield*new Gh:yield*Jh({prepared:n,signer:e,remoteAuthorization:t}).pipe(k(Ai,r.value))})}).pipe(fo({staleTime:3e4,revalidateOnMount:!0}),Hi(3e5),ba(`environment-session-state:${t}`)));return{initialConfigAtom:t,initialConfigValueAtom:n,preparedConnectionAtom:r,preparedConnectionValueAtom:i,sessionStateAtom:a,sessionStateValueAtom:Ra(e=>pr(t=>W(Ot(t(a(e))))??null).pipe(ba(`environment-session-state-value:${e}`)))}}var Xh=new WeakMap;function Zh(e){let t=Xh.get(e);if(t)return t;let n=Yh(e);return Xh.set(e,n),n}function Qh(e,t){let n=Zh(e),r=e=>Me(t,e),i=Ra(e=>Ra(t=>pr(r=>{if(e===null)return!1;let i=t.split(`,`).filter(Boolean);if(i.length===0)return!0;let a=r(n.sessionStateAtom(e)),o=W(Ot(a));return a._tag!==`Failure`&&o!==null&&i.every(e=>Ya(o,e))})));return{requiredScopes:r,permissionAtom:(e,t)=>i(e)(r(t).join(`,`)),authorize:(e,t,i)=>zi(()=>{let a=r(i);if(a.length===0)return b;let o=n.sessionStateAtom(t);return yi(H(function*(){yield*So(e,o);let t=yield*or(e,o,{suspendOnWaiting:!1}).pipe(fi(6e3),Se(()=>U(L()))),n=a.find(e=>bi(t)||!Ya(t.value,e));if(n!==void 0)return yield*D(new hr({...pa(n),message:`This connection requires ${n}.`}))}))})}}var $h=new WeakMap;function eg(e,t){let n=$h.get(e);n===void 0&&(n=new Map,$h.set(e,n));let r=n.get(t);if(r!==void 0)return r;let i=Qh(e,t);return n.set(t,i),i}var tg=class extends R()(`EnvironmentRpcUnavailableError`,{environmentId:B,message:B}){},ng=class extends Ao(`@p4code/client-runtime/rpc/EnvironmentRpcRequestObserver`,{defaultValue:()=>({observe:()=>U(b)})}){},rg=class extends Ao(`@p4code/client-runtime/rpc/EnvironmentRpcSubscriptionObserver`,{defaultValue:()=>({observe:()=>U(b)})}){},ig=pe(xl),ag=pe(hr),og=3e4,sg=c(`EnvironmentRpc.currentSession`)(function*(){let e=yield*Oh;return yield*A(e.session).pipe(P(Ua({onNone:()=>D(new tg({environmentId:e.target.environmentId,message:`${e.target.label} is not connected.`})),onSome:U})))}),cg=c(`EnvironmentRpc.getInitialServerConfig`)(function*(){return yield*(yield*sg()).initialConfig}),lg=class extends Ao(`@p4code/client-runtime/rpc/RpcPermissionGuard`,{defaultValue:()=>({authorize:(e,t,n)=>{let r=Me(t,n)[0];return r===void 0?b:D(new hr({...pa(r),message:`This connection requires ${r}.`}))}})}){},ug=c(`EnvironmentRpc.authorize`)(function*(e,t){if(Me(e,t).length===0)return;let n=yield*Oh;yield*(yield*lg).authorize(n.target.environmentId,e,t)}),dg=c(`EnvironmentRpc.request`)(function*(e,t){let n=yield*Oh;yield*w({"environment.id":n.target.environmentId,"rpc.method":e});let r=yield*sg();yield*ug(e,t);let i=yield*ng,a=r.client[e],o=yield*i.observe({environmentId:n.target.environmentId,method:e});return yield*a(t).pipe(bn(o))});function fg(e,t){return qn(ug(e,t).pipe(j(sg()),K(n=>{let r=n.client[e];return r(t)}))).pipe(Bn(`EnvironmentRpc.runStream`,{attributes:{"rpc.method":e}}))}function pg(e,t,n,r){return qn(H(function*(){let i=yield*Oh,a=yield*rg,o=st(i.session);return(r?.resubscribe===void 0?o:ji(o,r.resubscribe.pipe(f(()=>A(i.session))))).pipe(jn(Ua({onNone:()=>Co,onSome:o=>{let s=e===_n.subscribeServerConfig?o.subscribeServerConfig:o.client[e],c=0,l=()=>vn(()=>qn(H(function*(){let r=yield*t(o),l=yield*a.observe({environmentId:i.target.environmentId,method:e,input:r});return n(o,s(r)).pipe(Pt(()=>G(()=>{c=0}))).pipe(Zo(l))})).pipe(ka(e=>r?.onDefect!==void 0&&e.reasons.some(e=>e._tag===`Die`||e._tag===`Fail`&&ig(e.error)&&e.error.reason._tag===`RpcClientDefect`)?r.onDefect(e):b),mo(t=>{let n=t.reasons.length>0&&t.reasons.every(e=>e._tag===`Fail`);if(n&&t.reasons.every(e=>e._tag===`Fail`&&ig(e.error)))return Mo(Ko(`Durable RPC subscription lost its transport; waiting for the next session.`,{cause:Jn(t),method:e,environmentId:i.target.environmentId})).pipe(gi);if(n&&r?.onExpectedFailure!==void 0){let e=Mo(r.onExpectedFailure(t)).pipe(gi),n=t.reasons.some(e=>e._tag===`Fail`&&ag(e.error));if(r.retryExpectedFailureAfter===void 0||n)return e;let i=hi(Math.min(Lo(r.retryExpectedFailureAfter)*2**c,og));return c+=1,e.pipe(Sa(Mo(oa(i)).pipe(gi)),Sa(l()))}return Bo(t)})));return l()}})))})).pipe(Bn(`EnvironmentRpc.subscribe`,{attributes:{"rpc.method":e}}))}function mg(e,t,n){return pg(e,t,(e,t)=>t,n)}function hg(e,t,n){return pg(e,t,(e,t)=>t.pipe(kt(t=>[e,t])),n)}function gg(e,t,n){return mg(e,()=>U(t),n)}var _g=(e,t)=>dg(e,t),vg=(e,t)=>fg(e,t);async function yg(e){try{return await e()}catch(e){return Tr(St(e))}}function bg(){let e=new WeakMap,t=t=>{let n=e.get(t);if(n!==void 0)return n;let r={serial:new Map,singleFlight:new Map,latest:new Map};return e.set(t,r),r};return{schedule:(e,n,r,i)=>{if(n.mode===`parallel`)return i();let a=n.key(r),o=t(e);if(n.mode===`singleFlight`){let e=o.singleFlight.get(a);if(e!==void 0)return e;let t=i();return o.singleFlight.set(a,t),t.then(()=>{o.singleFlight.get(a)===t&&o.singleFlight.delete(a)},()=>{o.singleFlight.get(a)===t&&o.singleFlight.delete(a)}),t}if(n.mode===`serial`){let e=o.serial.get(a),t=e===void 0?i():e.then(i,i);return o.serial.set(a,t),t.then(()=>{o.serial.get(a)===t&&o.serial.delete(a)},()=>{o.serial.get(a)===t&&o.serial.delete(a)}),t}let s=o.latest.get(a);s===void 0&&(s={running:!1,pending:void 0},o.latest.set(a,s));let c=s,l=new Promise(e=>{if(c.pending===void 0){c.pending={execute:i,resolve:[e]};return}c.pending.execute=i,c.pending.resolve.push(e)});return c.running||(c.running=!0,(async()=>{for(;c.pending!==void 0;){let e=c.pending;c.pending=void 0;let t;try{t=await e.execute()}catch(e){t=Tr(St(e))}for(let n of e.resolve)n(t)}c.running=!1,o.latest.get(a)===c&&o.latest.delete(a)})()),l}}}function xg(e,t,n,r,i){return H(function*(){let a=yield*ut(),o=yield*jt(o=>t.schedule(e,n,r,async()=>{let e=await Xn(a)(i,{signal:o});return p(e)?se(e.value):Tr(e.cause)}));return o._tag===`Success`?o.value:yield*rt(o.cause)})}async function Sg(e,t,n,r={},i=console){let a=await yg(()=>t.run(e,n));return Ag(a,{...r,label:r.label??t.label},i),a}function Cg(e,t){return e._tag===`Success`?se(t(e.value)):Tr(e.cause)}function wg(e){return e._tag===`Failure`&&Tn(e.cause)}function Tg(e){return Ht(e.cause)}async function Eg(e){try{return rn(await e())}catch(e){return Tr(St(e))}}async function Dg(e,t={},n=console){let r=await Eg(e);return Ag(r,t,n),r}async function Og(e,t,n={},r=console){let i=yi(H(function*(){return yield*So(e,t),n.refresh&&(yield*G(()=>{let n=e.get(t);n._tag!==`Initial`&&!n.waiting&&e.refresh(t)})),yield*or(e,t,{suspendOnWaiting:!0})}));return Dg(()=>In(i,{signal:n.signal}),n,r)}function kg(e,t){let n=t.scheduler??bg(),r=t.concurrency??{mode:`parallel`};return{label:t.label,run:(i,a)=>yg(()=>n.schedule(i,r,a,()=>Og(i,e.atom(t.execute(a,i)).pipe(ba(t.label)),{reportDefect:!1,reportFailure:!1})))}}function Ag(e,t={},n=console){if(fn(e)||Tn(e.cause))return;let r=t.label??`atom command`;os(e.cause)?(t.reportDefect??!0)&&n.error(`[atom-command] ${r} defected`,e.cause):(t.reportFailure??!0)&&n.warn(`[atom-command] ${r} failed`,e.cause)}async function jg(e){try{return se(await e())}catch(e){return Tr(St(e))}}function Mg(e){return JSON.stringify([e.environmentId,e.input])}function Ng(e){let t=JSON.parse(e);return{environmentId:gt.make(t[0]),input:t[1]}}function Pg(e,t){return Ph.pipe(P(n=>n.run(e,t)))}var Fg=(e,t)=>n=>{let r=new WeakMap;return Vr(n,i=>{let a=i(e);i.subscribe(n,e=>i.setSelf(e));let o=r.has(i.registry)&&!Object.is(r.get(i.registry),a);return r.set(i.registry,a),o&&!t(i.once(n))&&i.refresh(n),i.once(n)},{initialValueTarget:n})},Ig=(e,t)=>n=>Vr(n,r=>{let i=r(n);if(!t(i)){let t=setTimeout(()=>r.refresh(n),e);r.addFinalizer(()=>clearTimeout(t))}return i},{initialValueTarget:n});function Lg(e,t){let n=Ra(t=>e.atom(Wh(t,qn(Oh.pipe(K(e=>st(e.state).pipe($n(st(e.session))))))),{initialValue:null})),r=Ra(r=>{let i=Ng(r),a=t.idleTtlMs??3e5,o=e.atom(e=>{let r=W(Ot(e(n(i.environmentId)))),a=t=>G(()=>e.setSelf(se(t,{waiting:!0}))).pipe(j(jt(()=>Promise.resolve()))),o=()=>{if(r===null)return ie;let[e,n]=r;switch(e.phase){case`connected`:return I(n)?Pg(i.environmentId,t.execute(i.input,a)):ie;case`connecting`:case`backoff`:return ie;case`available`:case`offline`:case`blocked`:return e.lastFailure===null?D(new tg({environmentId:i.environmentId,message:`Environment ${i.environmentId} is ${e.phase===`available`?`not connected`:e.phase}.`})):D(e.lastFailure)}};if(!t.persistence)return o();let s=t.persistence,c=JSON.stringify([t.label,i.input]),l=Ln(e.self(),Ot);return H(function*(){let e=I(l)?l:yield*s.load(i.environmentId,c);return I(e)&&(r===null||r[0].phase!==`connected`)?e.value:(bi(l)&&I(e)&&(yield*a(e.value)),yield*o().pipe(Ir(e=>s.save(i.environmentId,c,e))))})}).pipe(fo({staleTime:t.staleTimeMs??3e4,revalidateOnMount:!0}),Hi(a)),s=e=>t.isFinal!==void 0&&Ke(Ot(e),t.isFinal),c=t.refreshIntervalMs===void 0?o:o.pipe(Ig(t.refreshIntervalMs,s)),l=t.refreshTrigger?.(i);return(l===void 0?c:c.pipe(Fg(l,s))).pipe(Hi(a),ba(`${t.label}:${r}`))});return e=>r(Mg(e))}function Rg(e,t){let n=Ra(n=>{let r=Ng(n);return e.atom(Wh(r.environmentId,t.subscribe(r.input)).pipe(t.completeWhen?Oe(t.completeWhen):e=>e)).pipe(Hi(t.idleTtlMs??3e5),ba(t.sensitiveInput?`${t.label}:${r.environmentId}`:`${t.label}:${n}`))});return e=>n(Mg(e))}function zg(e,t){return kg(e,{label:t.label,...t.scheduler===void 0?{}:{scheduler:t.scheduler},...t.concurrency===void 0?{}:{concurrency:t.concurrency},execute:(e,n)=>Pg(e.environmentId,t.execute(e.input,n,e.environmentId))})}function Bg(e,t){return Lg(e,{label:t.label,...t.persistence===void 0?{}:{persistence:t.persistence},...t.staleTimeMs===void 0?{}:{staleTimeMs:t.staleTimeMs},...t.idleTtlMs===void 0?{}:{idleTtlMs:t.idleTtlMs},...t.refreshIntervalMs===void 0?{}:{refreshIntervalMs:t.refreshIntervalMs},...t.refreshTrigger===void 0?{}:{refreshTrigger:t.refreshTrigger},...t.isFinal===void 0?{}:{isFinal:t.isFinal},execute:(e,n)=>t.execute?.(e,n)??_g(t.tag,e)})}function Vg(e,t){return Rg(e,{label:t.label,...t.completeWhen===void 0?{}:{completeWhen:t.completeWhen},...t.idleTtlMs===void 0?{}:{idleTtlMs:t.idleTtlMs},subscribe:e=>{let n=gg(t.tag,e);return t.transform===void 0?n:t.transform(n)}})}function Hg(e,t){let n=eg(e,t.tag);return{...zg(e,{label:t.label,...t.scheduler===void 0?{}:{scheduler:t.scheduler},...t.concurrency===void 0?{}:{concurrency:t.concurrency},execute:(r,i,a)=>{let o={environmentId:a,input:r};return n.authorize(i,a,r).pipe(j(()=>t.execute?.(r)??dg(t.tag,r)),k(lg,{authorize:(t,n,r)=>eg(e,n).authorize(i,t,r)}),Ir(e=>t.onSuccess?.(o,i,e)??b),bn(t.onSettled?.(o,i)??b))}}),requiredScopes:n.requiredScopes,permissionAtom:n.permissionAtom}}var Ug=128;function Wg(e){let t=new Set,n=[e],r=0;for(;n.length>0&&r<Ug;){let e=n.pop();if(r+=1,typeof e!=`object`||!e||t.has(e))continue;t.add(e);let i=e;if(typeof i.traceId==`string`&&i.traceId.trim().length>0)return i.traceId;if(Array.isArray(i.errors))for(let e=i.errors.length-1;e>=0;--e)n.push(i.errors[e]);if(yn(e))for(let t=e.reasons.length-1;t>=0;--t){let r=e.reasons[t];switch(r?._tag){case`Fail`:n.push(r.error);break;case`Die`:n.push(r.defect)}}`cause`in i&&n.push(i.cause)}return null}var Gg=class extends M()(`@p4code/client-runtime/relay/discovery/RelayEnvironmentDiscovery`){},Kg={environments:new Map,refreshing:!1,offline:!1,error:L()};function qg(e,t){return t.environmentId===e.environmentId?t.endpoint.httpBaseUrl!==e.endpoint.httpBaseUrl||t.endpoint.wsBaseUrl!==e.endpoint.wsBaseUrl||t.endpoint.providerKind!==e.endpoint.providerKind?D(new Z({reason:`configuration`,detail:`Relay returned status for a different environment endpoint.`})):t.descriptor!==void 0&&t.descriptor.environmentId!==e.environmentId?D(new Z({reason:`configuration`,detail:`Relay returned a descriptor for a different environment.`})):U(t):D(new Z({reason:`configuration`,detail:`Relay returned status for a different environment.`}))}function Jg(e){try{return Rt(Cf(e).sub).pipe(Wn(e=>e.length>0))}catch{return L()}}var Yg=c(`RelayEnvironmentDiscovery.make`)(function*(){let e=yield*Lf,t=yield*ad,n=yield*wp,r=yield*lh,i=yield*is(Kg),a=yield*Vt(1),o=yield*q(!1),s=yield*q(0),l=yield*q(L()),u=yield*q(0),d=yield*q(new Map),f=c(`RelayEnvironmentDiscovery.clearOfflineReport`)(function*(e){yield*Nc(d,t=>{if(!t.has(e))return t;let n=new Map(t);return n.delete(e),n})}),p=c(`RelayEnvironmentDiscovery.updateEnvironment`)(function*(e,t,n){(yield*J(s))===e&&(yield*N(i,e=>{let r=e.environments.get(t);if(r===void 0)return e;let i=new Map(e.environments);return i.set(t,n(r)),{...e,environments:i}}))}),m=c(`RelayEnvironmentDiscovery.refreshStatus`)(function*(t,n,r){let i=yield*e.getEnvironmentStatus({clerkToken:n,scopes:[za,io],environmentId:r.environmentId}).pipe(S(nd),P(e=>qg(r,e)),je);if(i._tag===`Success`){if(i.success.status===`offline`){let e=`${i.success.endpoint.httpBaseUrl}\n${i.success.error??``}`;(yield*Mc(d,t=>t.get(r.environmentId)===e?[!1,t]:[!0,new Map(t).set(r.environmentId,e)]))&&(yield*Ko(`Relay environment health check reported offline`,{environmentId:i.success.environmentId,endpoint:i.success.endpoint.httpBaseUrl,message:i.success.error,traceId:i.success.traceId}))}else yield*f(r.environmentId);yield*p(t,r.environmentId,e=>({...e,availability:i.success.status,status:V(i.success),error:L()}));return}yield*f(r.environmentId),yield*p(t,r.environmentId,e=>({...e,availability:`error`,error:V(i.failure)}))}),h=a.withPermits(1)(H(function*(){if(yield*Y(o,!0),(yield*n.status)===`offline`){yield*N(i,e=>({...e,refreshing:!1,offline:!0}));return}let r=yield*J(s);yield*Y(u,r),yield*Ne(i,{environments:new Map,refreshing:!0,offline:!1,error:L()});let a=yield*je(t.clerkToken);if(a._tag===`Failure`){let e=a.failure;if(e._tag===`ConnectionBlockedError`&&e.reason===`authentication`){if((yield*J(s))!==r)return;yield*N(i,e=>({...e,refreshing:!1}));return}return yield*e}let c=a.success;if((yield*J(s))!==r)return;let d=Jg(c),f=yield*J(l);I(f)&&(!I(d)||f.value!==d.value)&&(r=yield*Pc(s,e=>e+1),yield*Y(u,r)),yield*Y(l,d);let p=yield*e.listEnvironments({clerkToken:c}).pipe(S(nd));if((yield*J(s))!==r)return;let h=new Map;for(let e of p)h.set(e.environmentId,{environment:e,availability:`checking`,status:L(),error:L()});yield*N(i,e=>({...e,environments:h})),yield*$a(p,e=>m(r,c,e),{concurrency:`unbounded`,discard:!0}),(yield*J(s))===r&&(yield*N(i,e=>({...e,refreshing:!1})))}).pipe(Se(e=>H(function*(){let t=yield*J(u);(yield*J(s))===t&&(yield*N(i,t=>({...t,refreshing:!1,error:V(e)})))}))));return yield*n.changes.pipe(Ur,lt(e=>e===`offline`?N(i,e=>({...e,refreshing:!1,offline:!0})):J(o).pipe(P(e=>e?h:b))),ca),yield*r.changes.pipe(lt(e=>e===`credentials-changed`?H(function*(){yield*Nc(s,e=>e+1),yield*Y(l,L()),yield*Y(d,new Map),yield*Ne(i,Kg),yield*h.pipe(ca)}):b),ca),Gg.of({state:i,refresh:h})}),Xg=Hn(Gg,Yg());function Zg(){return window.desktopBridge?.getLocalEnvironmentEnabled?.()===!1}var Qg=F([`configured`,`window-origin`,`desktop-managed`]),$g=F([`http-base-url`,`websocket-base-url`,`development-server-url`,`window-location-url`]),e_=class extends R()(`PrimaryEnvironmentUrlInvalidError`,{source:Qg,urlKind:$g,cause:O()}){get message(){return`Could not parse ${this.urlKind} for the ${this.source} primary environment target.`}},t_=class extends R()(`PrimaryEnvironmentProtocolUnsupportedError`,{source:Qg,protocol:B}){get message(){return`The ${this.source} primary environment target uses unsupported protocol ${this.protocol}.`}},n_=class extends R()(`DesktopEnvironmentBootstrapIncompleteError`,{hasHttpBaseUrl:xn,hasWsBaseUrl:xn}){get message(){return`Desktop bootstrap is missing ${[...this.hasHttpBaseUrl?[]:[`httpBaseUrl`],...this.hasWsBaseUrl?[]:[`wsBaseUrl`]].join(` and `)} for the local environment.`}},r_=class extends R()(`PrimaryEnvironmentDisabledError`,{}){get message(){return`The local environment is disabled.`}};pe(e_),pe(t_),pe(n_);var i_=new Set([`127.0.0.1`,`::1`,`localhost`]);function a_(){return(window.desktopBridge?.getLocalEnvironmentBootstraps()??[]).find(e=>e.id===`primary`)??null}function o_(e){try{return e.baseUrl===void 0?new URL(e.rawValue):new URL(e.rawValue,e.baseUrl)}catch(t){throw new e_({source:e.source,urlKind:e.urlKind,cause:t})}}function s_(e,t,n){return o_({rawValue:e,baseUrl:window.location.origin,source:t,urlKind:n}).toString()}function c_(e){return e.trim().toLowerCase().replace(/^\[(.*)\]$/,`$1`)}function l_(e){return i_.has(c_(e))}function u_(e){return e.target.httpBaseUrl}function d_(){return null}function f_(){let e=o_({rawValue:window.location.origin,source:`window-origin`,urlKind:`http-base-url`}),t=e.toString();if(e.protocol===`http:`)e.protocol=`ws:`;else if(e.protocol===`https:`)e.protocol=`wss:`;else throw new t_({source:`window-origin`,protocol:e.protocol});return{source:`window-origin`,target:{httpBaseUrl:t,wsBaseUrl:e.toString()}}}function p_(){let e=a_();if(!e||!e.httpBaseUrl&&!e.wsBaseUrl)return null;if(!e.httpBaseUrl||!e.wsBaseUrl)throw new n_({hasHttpBaseUrl:!!e.httpBaseUrl,hasWsBaseUrl:!!e.wsBaseUrl});return{source:`desktop-managed`,target:{httpBaseUrl:s_(e.httpBaseUrl,`desktop-managed`,`http-base-url`),wsBaseUrl:s_(e.wsBaseUrl,`desktop-managed`,`websocket-base-url`)}}}function m_(e,t){let n=h_();if(!n)throw new r_;let r=o_({rawValue:u_(n),source:n.source,urlKind:`http-base-url`});return r.pathname=e,t&&(r.search=new URLSearchParams(t).toString()),r.toString()}function h_(){return Zg()?null:p_()??d_()??f_()}var g_=M(`@p4code/web/environments/primary/httpClient/PrimaryEnvironmentHttpClient`),__=zi(()=>da(m_(`/`))),v_=Hn(g_,__),y_=null;function b_(){if(typeof window>`u`)return Promise.resolve(null);let e=window.desktopBridge;return e?(y_??=e.getLocalEnvironmentBearerToken().catch(e=>{throw y_=null,e}),y_):Promise.resolve(null)}function x_(){return typeof window>`u`||window.desktopBridge!==void 0||!window.location.origin.startsWith(`http`)?!1:new URL(m_(`/`)).origin===window.location.origin}function S_(e){return e.pipe(Ve(e=>jt(b_).pipe(K(t=>t?wr(e,t):e))))}function C_(){return gr(G(()=>{let t=fr(globalThis.fetch);if(x_())return e(t,Ba(Br,{credentials:`include`}));let n=Hn(Ai,K(Ai,S_)).pipe(ao(t));return e(n,Ba(Br,{credentials:`omit`}))}))}var w_=C_();function T_(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function E_(e,...t){if(!T_(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function D_(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function O_(e,t){E_(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function k_(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function A_(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function j_(e,t){return e<<32-t|e>>>t}var M_=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,N_=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`));function P_(e){if(E_(e),M_)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=N_[e[n]];return t}function F_(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function I_(e){return typeof e==`string`&&(e=F_(e)),E_(e),e}var L_=class{};function R_(e){let t=t=>e().update(I_(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function z_(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function B_(e,t,n){return e&t^~e&n}function V_(e,t,n){return e&t^e&n^t&n}var H_=class extends L_{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=A_(this.buffer)}update(e){D_(this),e=I_(e),E_(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=A_(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){D_(this),O_(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,k_(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;z_(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=A_(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},U_=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),W_=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),G_=new Uint32Array(64),K_=class extends H_{constructor(e=32){super(64,e,8,!1),this.A=U_[0]|0,this.B=U_[1]|0,this.C=U_[2]|0,this.D=U_[3]|0,this.E=U_[4]|0,this.F=U_[5]|0,this.G=U_[6]|0,this.H=U_[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)G_[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=G_[e-15],n=G_[e-2],r=j_(t,7)^j_(t,18)^t>>>3,i=j_(n,17)^j_(n,19)^n>>>10;G_[e]=i+G_[e-7]+r+G_[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=j_(o,6)^j_(o,11)^j_(o,25),u=l+t+B_(o,s,c)+W_[e]+G_[e]|0,d=(j_(n,2)^j_(n,13)^j_(n,22))+V_(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){k_(G_)}destroy(){this.set(0,0,0,0,0,0,0,0),k_(this.buffer)}},q_=R_(()=>new K_),J_=ua({kty:Yn(`EC`),crv:Yn(`P-256`),x:B.check(d()),y:B.check(d())});function Y_(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function X_(e){return Array.isArray(e)?`[${e.map(X_).join(`,`)}]`:Y_(e)?`{${Object.entries(e).filter(([,e])=>e!==void 0).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>`${JSON.stringify(e)}:${X_(t)}`).join(`,`)}}`:JSON.stringify(e)??`null`}var Z_=`dpop+jwt`,Q_=`ES256`,$_=J_;F([`missing_proof`,`malformed_proof`,`key_mismatch`,`method_mismatch`,`url_mismatch`,`access_token_hash_mismatch`,`time_window`,`invalid_signature`,`invalid_proof`]);var ev=ua({...J_.fields,d:Mt(nr)}),tv=dn(ua({typ:Yn(Z_),alg:Yn(Q_),jwk:ev}));Ro(tv);var nv=dn(ua({htm:B.check(d()),htu:B.check(d()),jti:B.check(d()),iat:Ze,ath:Mt(B)}));Ro(nv);function rv(e){return X_({crv:e.crv,kty:e.kty,x:e.x,y:e.y})}function iv(e){return us(q_(new TextEncoder().encode(rv(e))))}function av(e){return us(q_(new TextEncoder().encode(e)))}var ov=class extends Bi(`BrowserDpopError`){},sv=`p4code:cloud-auth`,cv=1,lv=`keys`,uv=`relay-dpop-proof-key`,dv=Cr($_),fv=Ba(uc,dc({randomBytes:e=>globalThis.crypto.getRandomValues(new Uint8Array(e)),digest:(e,t)=>jt(async()=>{let n=new Uint8Array(t.length);return n.set(t),new Uint8Array(await globalThis.crypto.subtle.digest(e,n.buffer))})}));function pv(e,t){return new ov({message:e,...t===void 0?{}:{cause:t}})}function mv(){return Ri(e=>{let t=indexedDB.open(sv,cv);t.addEventListener(`error`,()=>e(D(pv(`Could not open DPoP key storage.`,t.error??void 0)))),t.addEventListener(`upgradeneeded`,()=>{t.result.objectStoreNames.contains(lv)||t.result.createObjectStore(lv)}),t.addEventListener(`success`,()=>e(U(t.result)))})}function hv(){return typeof indexedDB>`u`?U(null):$o(mv(),e=>Ri(t=>{let n=e.transaction(lv,`readonly`).objectStore(lv).get(uv);n.addEventListener(`error`,()=>t(D(pv(`Could not read DPoP key.`,n.error??void 0)))),n.addEventListener(`success`,()=>t(U(n.result??null)))}),e=>G(()=>e.close()))}function gv(e){return typeof indexedDB>`u`?b:$o(mv(),t=>Ri(n=>{let r=t.transaction(lv,`readwrite`);r.addEventListener(`error`,()=>n(D(pv(`Could not write DPoP key.`,r.error??void 0)))),r.addEventListener(`complete`,()=>n(b)),r.objectStore(lv).put(e,uv)}),e=>G(()=>e.close()))}var _v=H(function*(){let e=yield*rr({try:()=>crypto.subtle.generateKey({name:`ECDSA`,namedCurve:`P-256`},!0,[`sign`,`verify`]),catch:e=>pv(`Could not generate DPoP proof key.`,e)}),t=yield*rr({try:()=>crypto.subtle.exportKey(`jwk`,e.privateKey),catch:e=>pv(`Could not export DPoP private key.`,e)}),n=yield*rr({try:()=>crypto.subtle.exportKey(`jwk`,e.publicKey),catch:e=>pv(`Could not export DPoP public key.`,e)}).pipe(P(e=>dv(e)),S(e=>e instanceof ov?e:pv(`Generated DPoP public key is invalid.`,e)));return{privateKey:yield*rr({try:()=>tf(t,`ES256`,{extractable:!1}),catch:e=>pv(`Could not import DPoP private key.`,e)}),publicJwk:n,thumbprint:iv(n)}});function vv(e){return H(function*(){let t=yield*_o({try:()=>new URL(e.url),catch:e=>pv(`Could not normalize DPoP proof URL.`,e)});t.search=``,t.hash=``;let n=yield*uc.pipe(P(e=>e.randomUUIDv4()),S(e=>pv(`Could not generate DPoP proof identifier.`,e)));return{proof:yield*rr({try:()=>new xf({htm:e.method.toUpperCase(),htu:t.toString(),jti:n,...e.accessToken?{ath:av(e.accessToken)}:{}}).setProtectedHeader({typ:`dpop+jwt`,alg:`ES256`,jwk:e.proofKey.publicJwk}).setIssuedAt().sign(e.proofKey.privateKey),catch:e=>pv(`Could not sign DPoP proof.`,e)}),thumbprint:e.proofKey.thumbprint}})}var yv=15e3,bv=3e5,xv=pe(jf),Sv=class extends Bi(`ManagedRelaySessionError`){},Cv=class extends Bi(`ManagedRelaySnapshotError`){},wv=pr(null).pipe(Ci,ba(`managed-relay:session`));function Tv(e){return Xo(e,wv).pipe(kt(e=>e?.accountId??null),Ur,li(1))}function Ev(e){return e.readClerkToken().pipe(Xe(e=>!!e,()=>new Sv({message:`The P4 Connect session token is unavailable.`})))}var Dv=c(`clientRuntime.managedRelaySession.deregisterEnvironment`)(function*(e,t){let n=e.get(wv);if(!n||n.accountId!==t.accountId)return yield*new Sv({message:`Sign in to P4 Connect before deregistering an environment.`});let r=yield*Ev(n);yield*(yield*Lf).unlinkEnvironment({clerkToken:r,environmentId:t.environmentId})});function Ov(e,t){let n=e(wv);return!n||n.accountId!==t?D(new Sv({message:`Sign in to P4 Connect before loading relay data.`})):Ev(n)}function kv(e){return JSON.stringify(e)}function Av(e){return JSON.parse(e)}function jv(e,t){return e.httpBaseUrl===t.httpBaseUrl&&e.wsBaseUrl===t.wsBaseUrl&&e.providerKind===t.providerKind}function Mv(e,t){return t.environmentId===e.environmentId?jv(t.endpoint,e.endpoint)?t.descriptor&&t.descriptor.environmentId!==e.environmentId?D(new Cv({message:`Relay returned status descriptor for a different environment.`})):U(t):D(new Cv({message:`Relay returned status for a different endpoint.`})):D(new Cv({message:`Relay returned status for a different environment.`}))}function Nv(e){let t=null,n=null;if(e._tag===`Failure`){let r=Ht(e.cause);t=xv(r)&&r.relayError?Nu(r.relayError):r instanceof Error?r.message:`Could not load P4 Connect data.`,n=Wg(r)}return{data:W(Ot(e)),error:t,errorTraceId:n,isPending:e.waiting}}function Pv(e,t){let n=t?.staleTimeMs??yv,r=t?.idleTtlMs??bv,i=(e,n)=>H(function*(){return t?.onQueryEvent?.({...e,phase:`start`}),yield*n.pipe(Pi(n=>G(()=>{if(n._tag===`Success`){t?.onQueryEvent?.({...e,phase:`success`});return}let r=Ht(n.cause);t?.onQueryEvent?.({...e,phase:`failure`,message:r instanceof Error?r.message:String(r),traceId:Wg(r)})})))}),a=Ra(t=>e.atom(e=>H(function*(){let n={operation:`environments`,accountId:t},r=yield*i({...n,stage:`clerk-token`},Ov(e,t)),a=yield*Lf;return yield*i({...n,stage:`relay-request`},a.listEnvironments({clerkToken:r}))})).pipe(fo({staleTime:n,revalidateOnMount:!0}),Hi(r),ba(`managed-relay:environments:${t}`))),o=Ra(t=>e.atom(e=>H(function*(){let n={operation:`devices`,accountId:t},r=yield*i({...n,stage:`clerk-token`},Ov(e,t)),a=yield*Lf;return yield*i({...n,stage:`relay-request`},a.listDevices({clerkToken:r}))})).pipe(fo({staleTime:n,revalidateOnMount:!0}),Hi(r),ba(`managed-relay:devices:${t}`))),s=Ra(t=>{let{accountId:a,environment:o}=Av(t);return e.atom(e=>H(function*(){let t={operation:`environment-status`,accountId:a,environmentId:o.environmentId},n=yield*i({...t,stage:`clerk-token`},Ov(e,a)),r=yield*Lf,s=yield*i({...t,stage:`relay-request`},r.getEnvironmentStatus({clerkToken:n,scopes:[za,io],environmentId:o.environmentId}));return yield*i({...t,stage:`validation`},Mv(o,s))})).pipe(fo({staleTime:n,revalidateOnMount:!0}),Hi(r),ba(`managed-relay:environment-status:${t}`))});return{environmentsAtom:a,devicesAtom:o,environmentStatusAtom:e=>s(kv(e)),refreshEnvironments(e,t){e.refresh(a(t))},refreshDevices(e,t){e.refresh(o(t))},refreshEnvironmentStatus(e,t){e.refresh(s(kv(t)))}}}var Fv=Hn(Ff,H(function*(){let e=yield*uc,t=yield*Vt(1),n=null,r=t.withPermit(H(function*(){if(n)return n;let e=yield*hv();if(e)return n=e,e;let t=yield*_v;return yield*gv(t),n=t,t}));return Ff.of({thumbprint:r.pipe(K(e=>e.thumbprint),S(e=>new Tf({keyStore:`indexed-db`,cause:e})),T(`web.managedRelayDpopSigner.loadThumbprint`)),createProof:c(`web.managedRelayDpopSigner.createProof`)(function*(t){let n=yield*r.pipe(S(e=>new Ef({method:t.method,url:t.url,cause:e})));return yield*vv({...t,proofKey:n}).pipe(k(uc,e),K(e=>e.proof),S(e=>new Ef({method:t.method,url:t.url,cause:e})))})})})),Iv=e=>Zf({relayUrl:e,clientId:xa}).pipe(ia(Fv)),Lv=F([`pk_test`,`pk_live`,`unknown`]),Rv=class extends R()(`ClerkPublishableKeyDecodeError`,{keyPrefix:Lv,cause:O()}){get message(){return`Failed to decode Clerk publishable key (${this.keyPrefix}).`}},zv=class extends R()(`ClerkPublishableKeyFrontendApiError`,{keyPrefix:Lv,frontendApi:B,reason:F([`empty`,`contains-path`,`invalid-url`]),cause:yt(O())}){get message(){return`Invalid Clerk frontend API decoded from publishable key (${this.keyPrefix}; ${this.reason}).`}};function Bv(e){let t=e.startsWith(`pk_test_`)?`pk_test`:e.startsWith(`pk_live_`)?`pk_live`:`unknown`,n=e.split(`_`).slice(2).join(`_`),r;try{r=globalThis.atob(n).replace(/\$$/u,``)}catch(e){throw new Rv({keyPrefix:t,cause:e})}if(r.length===0)throw new zv({keyPrefix:t,frontendApi:r,reason:`empty`});if(r.includes(`/`))throw new zv({keyPrefix:t,frontendApi:r,reason:`contains-path`});let i=`https://${r}`;try{return{hostname:new URL(i).hostname,url:i}}catch(e){throw new zv({keyPrefix:t,frontendApi:r,reason:`invalid-url`,cause:e})}}function Vv(e){return Bv(e).url}function Hv(e){return{template:e,skipCache:!0}}var Uv=class extends R()(`CloudPublicConfigMissingError`,{key:Yn(`P4CODE_CLERK_JWT_TEMPLATE`)}){get message(){return`${this.key} is not configured.`}};function Wv(e){return e?.trim()||null}function Gv(e){try{let t=new URL(e);return t.protocol===`https:`?t.toString():null}catch{return null}}function Kv(){return{clerkPublishableKey:Wv(``),clerkJwtTemplate:Wv(``),relayUrl:wf(``),relayTracing:{tracesUrl:Gv(``),tracesDataset:Wv(``),tracesToken:Wv(``)}}}function qv(){let{relayTracing:e}=Kv();return e.tracesUrl&&e.tracesDataset&&e.tracesToken?{tracesUrl:e.tracesUrl,tracesDataset:e.tracesDataset,tracesToken:e.tracesToken}:null}function Jv(){let e=Kv();return!!(e.clerkPublishableKey&&e.clerkJwtTemplate&&e.relayUrl)}function Yv(){let{clerkJwtTemplate:e}=Kv();if(!e)throw new Uv({key:`P4CODE_CLERK_JWT_TEMPLATE`});return Hv(e)}var Xv=null;function Zv(e){Xv=e}function Qv(){return Xv!==null}var $v=Ba(Fa,xi({span(e){return Xv?.span(e)??new ea(e)}}));function ey(){return Kv().relayUrl??`http://relay.invalid`}var ty=fr((e,t)=>globalThis.fetch(e,t)),ny=pu(qv(),{serviceName:`p4code-web`,serviceVersion:`0.9.1`,runtime:`browser`,client:typeof window<`u`&&window.desktopBridge?`desktop`:`web`}).pipe(ao(ty)),ry=Dc(v_.pipe(ao(w_))),iy=e=>ry.runPromise(e),ay=e=>iy(e),oy=Dc(Zr(ty,fv,cl,$v,ny,Iv(ey()).pipe(ao(Zr(ty,fv))))),sy=Fn(oy.contextEffect);export{vg as $,xp as $t,zg as A,Xu as An,mm as At,Sg as B,kl as Bn,Lp as Bt,m_ as C,Vu as Cn,Nm as Ct,Xg as D,Bu as Dn,Q as Dt,Gg as E,Wu as En,pm as Et,Rg as F,eu as Fn,Jp as Ft,ng as G,Y as Gn,kp as Gt,Eg as H,pl as Hn,Pp as Ht,kg as I,$l as In,Zp as It,lg as J,uc as Jn,jp as Jt,rg as K,Nc as Kn,Op as Kt,Og as L,Gl as Ln,em as Lt,Hg as M,Lu as Mn,rm as Mt,Bg as N,Fu as Nn,im as Nt,Wg as O,Hu as On,fm as Ot,Vg as P,Cu as Pn,xm as Pt,dg as Q,bp as Qt,wg as R,Ll as Rn,Vp as Rt,h_ as S,Zu as Sn,Pm as St,Kg as T,X as Tn,Mm as Tt,jg as U,J as Un,Ip as Ut,xg as V,sl as Vn,Np as Vt,Tg as W,q as Wn,Dp as Wt,ig as X,us as Xn,Sp as Xt,cg as Y,fs as Yn,Ep as Yt,_g as Z,Cp as Zt,P_ as _,ad as _n,ah as _t,Zv as a,hp as an,Zh as at,g_ as b,ld as bn,Im as bt,Yv as c,vp as cn,Bh as ct,Pv as d,Qf as dn,Ph as dt,pp as en,fg as et,Dv as f,$f as fn,Ih as ft,q_ as g,sd as gn,ch as gt,Nv as h,Ff as hn,dh as ht,Qv as i,fp as in,eg as it,Lg as j,Ru as jn,ym as jt,bg as k,Uu as kn,$ as kt,Wv as l,tp as ln,Lh as lt,wv as m,Lf as mn,lh as mt,ay as n,_p as nn,mg as nt,Jv as o,gp as on,Wh as ot,Tv as p,ep as pn,Oh as pt,tg as q,Dc as qn,Ap as qt,oy as r,mp as rn,hg as rt,Kv as s,dp as sn,Uh as st,sy as t,up as tn,gg as tt,Vv as u,cp as un,Mh as ut,w_ as v,cd as vn,Ym as vt,Zg as w,Z as wn,Sm as wt,l_ as x,rd as xn,Fm as xt,b_ as y,od as yn,Wm as yt,Cg as z,Rl as zn,Rp as zt};
6
+ //# sourceMappingURL=runtime-CABaKt1A.js.map