wednesdayai 0.6.1-dev.32 → 0.6.1-dev.33
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.
- package/README.md +1 -1
- package/dist/{agent-3FzVgs63.js → agent-2N9tEN3b.js} +26 -26
- package/dist/{agent-BRCd10MY.js → agent-B9sehkTT.js} +33 -33
- package/dist/{agent-DWnmq11O.js → agent-C31FKy1u.js} +11 -11
- package/dist/{agent-turn-execute-BFxbgU1N.js → agent-turn-execute-VfgfznZ9.js} +46 -46
- package/dist/{agent-turn-runner-T5NCMyJ_.js → agent-turn-runner-BUl_5WBC.js} +5 -5
- package/dist/{agent-turn-runner-CSA2LtLh.js → agent-turn-runner-D6au_ann.js} +6 -6
- package/dist/{agent-turn-runner-B4cl3TsM.js → agent-turn-runner-Pc5bI_FG.js} +6 -6
- package/dist/{auth-5so61ncT.js → auth-kjIpJLfy.js} +1 -1
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +32 -32
- package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
- package/dist/bundled/command-logger/handler.js +2 -2
- package/dist/bundled/session-journal/handler.js +31 -31
- package/dist/bundled/session-memory/handler.js +32 -32
- package/dist/{call-DVys4c4T.js → call-CrRxRh7U.js} +4 -4
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{plugin-sdk/chrome-BqXrH3aN.js → chrome-B_WMQAhO.js} +32 -32
- package/dist/{chrome-CQUZm4YB.js → chrome-Dhi-l6wT.js} +6 -6
- package/dist/{chrome-DqTgSmFm.js → chrome-DnhfF77Z.js} +6 -6
- package/dist/{command-queue-BSbitNdP.js → command-queue-AIWqKnVD.js} +1 -1
- package/dist/{command-queue-DogAVmq_.js → command-queue-CYUdNrXN.js} +1 -1
- package/dist/{command-queue-D3kWdijx.js → command-queue-Ctuw0Dti.js} +1 -1
- package/dist/control-ui-v2/assets/{AgentsView-BHoDo1L_.js → AgentsView-BykJAM_R.js} +1 -1
- package/dist/control-ui-v2/assets/{AutomationsView-CkkUCwky.js → AutomationsView-DC7X5Cuq.js} +1 -1
- package/dist/control-ui-v2/assets/Badge-BThfbCAq.js +1 -0
- package/dist/control-ui-v2/assets/{Button-CAmVftjk.js → Button-sKbvzDVv.js} +1 -1
- package/dist/control-ui-v2/assets/{ChannelsView-C9mkTqc6.js → ChannelsView-HkWy9hsS.js} +1 -1
- package/dist/control-ui-v2/assets/{ConfigForm-LRLk4KUb.js → ConfigForm-BJ2kFOXh.js} +1 -1
- package/dist/control-ui-v2/assets/{ConfirmDialog-F2xUWFqq.js → ConfirmDialog-CdyUa20w.js} +1 -1
- package/dist/control-ui-v2/assets/{DataTable-DOMUEHUS.js → DataTable-DYjiiFEO.js} +1 -1
- package/dist/control-ui-v2/assets/{DebugView-Brby9otE.js → DebugView-BBnZon9I.js} +1 -1
- package/dist/control-ui-v2/assets/{Dialog-GhMZjPwr.js → Dialog-C3D58UYL.js} +1 -1
- package/dist/control-ui-v2/assets/{DreamsView-DY7ted1D.js → DreamsView-DrwwXxFE.js} +1 -1
- package/dist/control-ui-v2/assets/{EntityLink-CrtCt-Qs.js → EntityLink-Z9K13Z04.js} +1 -1
- package/dist/control-ui-v2/assets/{FilterPills-CkHzGD5G.js → FilterPills-KLG4v-tl.js} +1 -1
- package/dist/control-ui-v2/assets/{InstancesView-CFs-ov6N.js → InstancesView-LuIMblfp.js} +1 -1
- package/dist/control-ui-v2/assets/{LearningView-BTIvp31K.js → LearningView-C2puhMj4.js} +1 -1
- package/dist/control-ui-v2/assets/{LogsView-BuFHneew.js → LogsView-Dy215edw.js} +1 -1
- package/dist/control-ui-v2/assets/{NodesView-7y8z5Q_T.js → NodesView-B71zmfhs.js} +1 -1
- package/dist/control-ui-v2/assets/{OverviewView-CIhAnOeN.js → OverviewView-JLhTfCru.js} +1 -1
- package/dist/control-ui-v2/assets/{Panel-BSfoMFU-.js → Panel-D78gp_RZ.js} +1 -1
- package/dist/control-ui-v2/assets/{PluginMount-Cr2vPF1o.js → PluginMount-DYlgGaMj.js} +1 -1
- package/dist/control-ui-v2/assets/{PluginPageView-BM2wjaCs.js → PluginPageView-Bg02Y5T6.js} +1 -1
- package/dist/control-ui-v2/assets/{PluginPanels-CrZnLVxd.js → PluginPanels-BleAmjiK.js} +1 -1
- package/dist/control-ui-v2/assets/{RunsView-B3eXHaoR.js → RunsView-BSGqEHKy.js} +1 -1
- package/dist/control-ui-v2/assets/{SessionsView-Bg4wx4lK.js → SessionsView-CMPY9Hgt.js} +1 -1
- package/dist/control-ui-v2/assets/{SettingsView-DGF7hzQG.js → SettingsView-D4QcuA0E.js} +1 -1
- package/dist/control-ui-v2/assets/{SkillsView-Cg7pJC7c.js → SkillsView-BWwsXZqF.js} +1 -1
- package/dist/control-ui-v2/assets/{Stat-lXrvX_LU.js → Stat-CXVUEU8q.js} +1 -1
- package/dist/control-ui-v2/assets/{StatusDot-mq9dIxHu.js → StatusDot-BOn9P0HR.js} +1 -1
- package/dist/control-ui-v2/assets/{StorageView-DwpkJ4z3.js → StorageView-Bn5jFxV6.js} +1 -1
- package/dist/control-ui-v2/assets/{UpdatedAgo-C4M24VEo.js → UpdatedAgo-CGh7wGn5.js} +1 -1
- package/dist/control-ui-v2/assets/{UsageView-Chdv6FaY.js → UsageView-D8N9_FXE.js} +1 -1
- package/dist/control-ui-v2/assets/{config-store-Cl6ZDEWe.js → config-store-CvkpUhCj.js} +1 -1
- package/dist/control-ui-v2/assets/{format-B5-CxWkB.js → format-CDdlmhUx.js} +1 -1
- package/dist/control-ui-v2/assets/{gateway-features-cO4oPTtR.js → gateway-features-BO759ssE.js} +1 -1
- package/dist/control-ui-v2/assets/{index-CJgogGns.js → index-DbvFKOkE.js} +1 -1
- package/dist/control-ui-v2/assets/{links-Cc4kr7jc.js → links-CQf0Dstl.js} +2 -2
- package/dist/control-ui-v2/assets/{run-rows-B5xQqo0g.js → run-rows-B7a70RYo.js} +1 -1
- package/dist/control-ui-v2/assets/runs-store-CBxmiHic.js +1 -0
- package/dist/control-ui-v2/assets/{use-gateway-query-DkXhPwE7.js → use-gateway-query-Dd6G1xB1.js} +1 -1
- package/dist/control-ui-v2/index.html +7 -7
- package/dist/{credentials-BwbcjFrG.js → credentials-By3Y4AcL.js} +3 -3
- package/dist/daemon-cli.js +10 -10
- package/dist/{deliver-D5-592ul.js → deliver-BNwRhCqc.js} +28 -28
- package/dist/{deliver-uol2d4WF.js → deliver-CZ0gpdcA.js} +6 -6
- package/dist/{deliver-DI3pbsEG.js → deliver-lAcWrtsj.js} +8 -8
- package/dist/{diagnostic-BZYYYnMx.js → diagnostic-DJ11ZJIJ.js} +3 -3
- package/dist/{diagnostic-CjNtSJJy.js → diagnostic-Dlx1Uind.js} +3 -3
- package/dist/{diagnostic-DutvZ2o1.js → diagnostic-dKeDyhIs.js} +1 -1
- package/dist/{plugin-sdk/errors-CVfTQSbb.js → errors-0-at0aYV.js} +1 -1
- package/dist/{errors-BRYMqzPb.js → errors-7NHaEHOi.js} +1 -1
- package/dist/extensionAPI.js +24 -24
- package/dist/{fences-DdMLzXvz.js → fences-BXndK9rN.js} +2 -2
- package/dist/{fences-Dtk43Q2a.js → fences-Z8d1dj8p.js} +16 -16
- package/dist/{fences-DxsYNv6D.js → fences-qAryzYhN.js} +1 -1
- package/dist/{fetch-guard-CIElogmD.js → fetch-guard-C1e2uLCm.js} +2 -2
- package/dist/{fetch-guard-huDqYgcZ.js → fetch-guard-DVq681NM.js} +2 -2
- package/dist/{fetch-guard-BfFAgAdL.js → fetch-guard-jXOgaL7k.js} +2 -2
- package/dist/{frontmatter-DHBTRDiB.js → frontmatter-CzhUc9Ri.js} +5 -5
- package/dist/{fs-safe-BXAFIPNF.js → fs-safe-B9UKPVRL.js} +2 -2
- package/dist/{fs-safe-QppbBgli.js → fs-safe-BFMvT9d3.js} +1 -1
- package/dist/{fs-safe-CyG0wflg.js → fs-safe-DMWtsz4J.js} +26 -26
- package/dist/{group-DNWpfMve.js → group-Dvl8dfJ2.js} +6 -6
- package/dist/{legacy-names-6uH6aLhq.js → legacy-names-chsmo2vs.js} +26 -26
- package/dist/llm-slug-generator.js +31 -31
- package/dist/{manager-DEELDila.js → manager-CIl1uCF4.js} +5 -5
- package/dist/{manager-Dv0046Wp.js → manager-Cd7Dgpw3.js} +16 -16
- package/dist/{manager-BNDUt5V7.js → manager-Edt-T8Bi.js} +3 -3
- package/dist/{model-selection-DfBJgjil.js → model-selection-BkyEkRcd.js} +1 -1
- package/dist/{model-selection-BKz1FEg5.js → model-selection-ik2bHbgK.js} +82 -82
- package/dist/{net-B0Jtxfrs.js → net-DJsykMK1.js} +1 -1
- package/dist/{nudge-D6njZF1b.js → nudge-D3beOdMV.js} +6 -6
- package/dist/{nudge-iXg_oCkW.js → nudge-Dg8Pe_sD.js} +9 -9
- package/dist/{nudge-D6LqS1z9.js → nudge-DyQYIOed.js} +32 -32
- package/dist/{outbound-attachment-DkplciK0.js → outbound-attachment-C3f9uSt-.js} +4 -4
- package/dist/{outbound-attachment-6hHA3eSm.js → outbound-attachment-DQtDt9Ne.js} +9 -9
- package/dist/{outbound-attachment-DFE9e7Dz.js → outbound-attachment-DwgRvpkl.js} +7 -7
- package/dist/{pi-embedded-CM4cbQEb.js → pi-embedded-BUj1tpxL.js} +40 -40
- package/dist/{pi-embedded-BJeshpuP.js → pi-embedded-DRpnAuxu.js} +229 -229
- package/dist/{pi-model-discovery-CEEWv-kw.js → pi-model-discovery-DnTVd1y8.js} +1 -1
- package/dist/{pi-model-discovery-Dy1iZEn3.js → pi-model-discovery-MJKT8QcH.js} +1 -1
- package/dist/{pi-model-discovery-BzUe_TlM.js → pi-model-discovery-ihTZFn93.js} +7 -7
- package/dist/plugin-sdk/{agent-CUhnjg2h.js → agent-CACbclxE.js} +33 -33
- package/dist/plugin-sdk/{agent-turn-execute-0wNK8kb-.js → agent-turn-execute-BKMaKZMH.js} +52 -52
- package/dist/plugin-sdk/{agent-turn-runner-Bc1Wdfjl.js → agent-turn-runner-Dfbuq8sa.js} +6 -6
- package/dist/{chrome-D5VU16Pm.js → plugin-sdk/chrome-CRKazKtD.js} +7 -7
- package/dist/plugin-sdk/{command-queue-BuyhMwmf.js → command-queue-CYthkMHd.js} +1 -1
- package/dist/plugin-sdk/{deliver-BbYD9jbj.js → deliver-Bh_zU4gN.js} +10 -10
- package/dist/plugin-sdk/{diagnostic-YH_V803S.js → diagnostic-DUBIUJLy.js} +3 -3
- package/dist/{errors-CK3mNfUZ.js → plugin-sdk/errors-BYlk21G9.js} +1 -1
- package/dist/plugin-sdk/{fetch-guard-BiQARj-q.js → fetch-guard-tC95Od8D.js} +2 -2
- package/dist/plugin-sdk/{fs-safe-CGzRyGpY.js → fs-safe-DkRYPO9h.js} +2 -2
- package/dist/plugin-sdk/{image-ops-BrERoy-B.js → image-ops-BwFCJNka.js} +2 -2
- package/dist/plugin-sdk/{manager-DPJBcR4V.js → manager-BFK04-sl.js} +5 -5
- package/dist/plugin-sdk/{model-auth-BtSCt2Us.js → model-auth-5dizn5pk.js} +6 -6
- package/dist/plugin-sdk/{models-config-GBg5F8hJ.js → models-config-Q1RpJb2l.js} +2 -2
- package/dist/plugin-sdk/{nudge-DRCem0PL.js → nudge-RygJmKvJ.js} +10 -10
- package/dist/plugin-sdk/{openai-compatible-video-5WcKNGBU.js → openai-compatible-video-Dcy2Li9N.js} +6 -6
- package/dist/plugin-sdk/{outbound-attachment-DTKZLRZQ.js → outbound-attachment-BzyByi-v.js} +7 -7
- package/dist/plugin-sdk/{pi-embedded-helpers-CuwPxkvz.js → pi-embedded-helpers-BFhpUeAU.js} +13 -13
- package/dist/plugin-sdk/{pi-embedded-utils-C8Mld73X.js → pi-embedded-utils-DwU_Dm_t.js} +3 -3
- package/dist/plugin-sdk/{pi-model-discovery-DF78NwCY.js → pi-model-discovery-JhPOgHc2.js} +1 -1
- package/dist/plugin-sdk/provider-media-understanding.js +16 -16
- package/dist/plugin-sdk/{pw-ai-DE9_F3UT.js → pw-ai-CetM9Gvn.js} +8 -8
- package/dist/plugin-sdk/{qmd-manager-Be0AD8g6.js → qmd-manager-D-4-ofwq.js} +6 -6
- package/dist/plugin-sdk/{qmd-scope-ChYVD8_V.js → qmd-scope-C2Q-gYkx.js} +1 -1
- package/dist/plugin-sdk/{query-expansion-D7KVLAEI.js → query-expansion-WqJIYjMY.js} +2 -2
- package/dist/plugin-sdk/{recorder-CYbCMbkp.js → recorder-Buet60MM.js} +2 -2
- package/dist/{redact-DU9QXIsh.js → plugin-sdk/redact-BsmP2_ML.js} +1 -1
- package/dist/plugin-sdk/{reply-directives-C8nS86oo.js → reply-directives-vq-0__VY.js} +2 -2
- package/dist/plugin-sdk/{runs-DaXWESgL.js → runs-Bo9ZU_tS.js} +7 -7
- package/dist/plugin-sdk/{send-DNtB7RqD.js → send-C7mdLoxn.js} +5 -5
- package/dist/plugin-sdk/{send-A18Yldb9.js → send-O0_QKrFT.js} +4 -4
- package/dist/plugin-sdk/{sessions-CaOQHLR9.js → sessions-DBkZJFck.js} +3 -3
- package/dist/plugin-sdk/{ssrf-BUsxUAWv.js → ssrf-DwUheH8N.js} +1 -1
- package/dist/{subsystem-DoQFckDJ.js → plugin-sdk/subsystem-DGPv0F8I.js} +5 -5
- package/dist/plugin-sdk/{tool-loop-detection-CofD0zz1.js → tool-loop-detection-CJnz5pAZ.js} +1 -1
- package/dist/plugin-sdk/{user-run-recording-BHcbX_ct.js → user-run-recording-CcRIjxcn.js} +2 -2
- package/dist/plugin-sdk/{ws-fpqheALb.js → ws-BmHfUkZI.js} +1 -1
- package/dist/{ports-B3BTfmE-.js → ports-af3jAFGh.js} +2 -2
- package/dist/{progress-CuNmfDlK.js → progress-CmedxTqJ.js} +3 -3
- package/dist/{proxy-env-CHdvLB3R.js → proxy-env-B9kcG28B.js} +1 -1
- package/dist/{proxy-env-E2mZELS1.js → proxy-env-Catj9Viz.js} +1 -1
- package/dist/{proxy-env-Dayk9Sh-.js → proxy-env-DQFy-pBt.js} +1 -1
- package/dist/{pw-ai-mN-uQx62.js → pw-ai-BWm3mCae.js} +9 -9
- package/dist/{pw-ai-BV3I_k2z.js → pw-ai-CDg9EuQp.js} +5 -5
- package/dist/{pw-ai--9RsLl-I.js → pw-ai-DoQ300T0.js} +11 -11
- package/dist/{qmd-manager-IBVkRbDA.js → qmd-manager-DFBcLXne.js} +6 -6
- package/dist/{qmd-manager-B4bmSWg6.js → qmd-manager-DbHyIFsT.js} +4 -4
- package/dist/{qmd-manager-pXzVcStZ.js → qmd-manager-jGcc2exw.js} +9 -9
- package/dist/{qmd-scope-C-qiTyK0.js → qmd-scope-D25aU1jR.js} +1 -1
- package/dist/{qmd-scope-CyWbQgiS.js → qmd-scope-DMUA3Vq9.js} +1 -1
- package/dist/{qmd-scope-C3LDIy_f.js → qmd-scope-DxmwIijL.js} +1 -1
- package/dist/{query-expansion-DUYY60_G.js → query-expansion-BC9pRVpQ.js} +1 -1
- package/dist/{query-expansion-BfJwCH-1.js → query-expansion-DJ7rNitK.js} +2 -2
- package/dist/{query-expansion-DOdiE1jh.js → query-expansion-Dji7d64T.js} +13 -13
- package/dist/{recorder-BaUTigy-.js → recorder-CBd8Sa3f.js} +2 -2
- package/dist/{recorder-DbOS8cq-.js → recorder-ciEoXXwJ.js} +2 -2
- package/dist/{recorder-tm_DPmVq.js → recorder-jtfym7ix.js} +1 -1
- package/dist/{plugin-sdk/redact-SduMExGO.js → redact-BvO7EAk7.js} +1 -1
- package/dist/{redact-C4XKILzo.js → redact-LOuk7TRy.js} +1 -1
- package/dist/{reply-directives-lb54XxBO.js → reply-directives-BZPLXOax.js} +14 -14
- package/dist/{reply-directives-Cjv6usSI.js → reply-directives-CD8SVo0d.js} +49 -49
- package/dist/{reply-directives-DQdLCsf7.js → reply-directives-CzQd7ai4.js} +9 -9
- package/dist/{runs-C6ZLA3dQ.js → runs-CKVgIXbm.js} +7 -7
- package/dist/{runs-Bfh4gXhE.js → runs-CW-qjeWY.js} +8 -8
- package/dist/{runs-CRfwfxl9.js → runs-CX5t6UjO.js} +5 -5
- package/dist/{send-DhxoS0EQ.js → send-BClohEtC.js} +5 -5
- package/dist/{send-x0brK-7B.js → send-Bb4J4QPH.js} +4 -4
- package/dist/{send-DdufVWN0.js → send-Bn1WCNeb.js} +4 -4
- package/dist/{send-CQXAcrXk.js → send-C9EWa4Gn.js} +3 -3
- package/dist/{send-DgX5MIBr.js → send-CpXb_hwQ.js} +5 -5
- package/dist/{send-CDE-Y46D.js → send-DkfdQWGD.js} +4 -4
- package/dist/{sessions-DFfMZLkJ.js → sessions-C98njXHy.js} +1 -1
- package/dist/{sessions-CoqAntnj.js → sessions-Dwd5H-eS.js} +5 -5
- package/dist/{subsystem-DY5Ww-lX.js → subsystem-BntNuBAj.js} +4 -4
- package/dist/{plugin-sdk/subsystem-Btq0amiz.js → subsystem-cFv2jJm-.js} +70 -70
- package/dist/{tool-loop-detection-CtOkwPJY.js → tool-loop-detection-9fAxiikd.js} +2 -2
- package/dist/{tool-loop-detection-C8jnlLQJ.js → tool-loop-detection-BMpeJ2DE.js} +1 -1
- package/dist/{user-run-recording-Dw1uyV3d.js → user-run-recording-BsWiQH6f.js} +1 -1
- package/dist/{user-run-recording-D-qMoYVy.js → user-run-recording-CisdKSzW.js} +2 -2
- package/dist/{user-run-recording-UvvXT13r.js → user-run-recording-DBqvoOPn.js} +2 -2
- package/dist/web-client/assets/{hast-util-from-dom-SbSARCyf.js → hast-util-from-dom-CUZ3hAh_.js} +1 -1
- package/dist/web-client/assets/{hast-util-to-mdast-C1n0gLxk.js → hast-util-to-mdast-DsCIyZ_Y.js} +1 -1
- package/dist/web-client/assets/{index-UZef_CpP.js → index-BvHk50NK.js} +2 -2
- package/dist/web-client/index.html +1 -1
- package/dist/{ws-kGFg1v4B.js → ws-B4SUb9f_.js} +1 -1
- package/dist/{ws-BJ7VU-8f.js → ws-BOnegOZK.js} +1 -1
- package/extensions/a2a/package.json +1 -1
- package/extensions/acpx/package.json +1 -1
- package/extensions/anthropic/package.json +1 -1
- package/extensions/bifrost/package.json +1 -1
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/deepgram/package.json +1 -1
- package/extensions/deepinfra/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/diffs/package.json +1 -1
- package/extensions/discord/package.json +1 -1
- package/extensions/dream-cycle/package.json +1 -1
- package/extensions/elevenlabs/package.json +1 -1
- package/extensions/feishu/package.json +1 -1
- package/extensions/gemini-search/package.json +1 -1
- package/extensions/google/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/package.json +1 -1
- package/extensions/grok-search/package.json +1 -1
- package/extensions/groq/package.json +1 -1
- package/extensions/identity-oidc/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/irc/package.json +1 -1
- package/extensions/kimi-search/package.json +1 -1
- package/extensions/kokoro/package.json +1 -1
- package/extensions/learning-core/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/lobster/package.json +1 -1
- package/extensions/matrix/CHANGELOG.md +1 -1
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/mistral/package.json +1 -1
- package/extensions/moonshot/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +1 -1
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +1 -1
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/openai/package.json +1 -1
- package/extensions/openai-realtime/package.json +1 -1
- package/extensions/openrouter/package.json +1 -1
- package/extensions/perplexity-search/package.json +1 -1
- package/extensions/searxng-search/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/slack/package.json +1 -1
- package/extensions/synology-chat/package.json +1 -1
- package/extensions/telegram/package.json +1 -1
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/CHANGELOG.md +1 -1
- package/extensions/twitch/package.json +1 -1
- package/extensions/ui-surfaces/package.json +1 -1
- package/extensions/voice-call/CHANGELOG.md +1 -1
- package/extensions/voice-call/package.json +1 -1
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/zai/package.json +1 -1
- package/extensions/zalo/CHANGELOG.md +1 -1
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +1 -1
- package/extensions/zalouser/package.json +1 -1
- package/package.json +3 -1
- package/dist/control-ui-v2/assets/Badge-Ckq3aEJa.js +0 -1
- package/dist/control-ui-v2/assets/runs-store-D8Ckq4AP.js +0 -1
- package/dist/github-copilot-token-Bm6yG6tw.js +0 -106
- package/dist/paths-BIDPYPVC.js +0 -233
- package/docs/reference/templates/BOOT.md +0 -11
- /package/dist/{config-1om7Pwz0.js → config-CM9p9U7m.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,a)=>(a=n==null?{}:e(i(n)),s(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),l=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function ee(e,t){return E(e.type,t,e.props)}function D(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function te(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var O=/\/+/g;function ne(e,t){return typeof e==`object`&&e&&e.key!=null?te(``+e.key):t.toString(36)}function re(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function k(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,k(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+ne(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(O,`$&/`)+`/`),k(o,r,i,``,function(e){return e})):o!=null&&(D(o)&&(o=ee(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(O,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+ne(a,u),c+=k(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+ne(a,u++),c+=k(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return k(re(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function A(e,t,n){if(e==null)return e;var r=[],i=0;return k(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function j(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var M=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},ie={map:A,forEach:function(e,t,n){A(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return A(e,function(){t++}),t},toArray:function(e){return A(e,function(e){return e})||[]},only:function(e){if(!D(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=ie,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=D,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:j}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,M)}catch(e){M(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.4`})),u=o(((e,t)=>{t.exports=l()})),d=c(u(),1),f={WEBCHAT_UI:`webchat-ui`,CONTROL_UI:`openclaw-control-ui`,WEBCHAT:`webchat`,CLI:`cli`,GATEWAY_CLIENT:`gateway-client`,MACOS_APP:`openclaw-macos`,IOS_APP:`openclaw-ios`,ANDROID_APP:`openclaw-android`,NODE_HOST:`node-host`,EVEN_G2_NODE:`openclaw-even-g2-node`,WEDNESDAYAI_GLASS_NODE:`wednesdayai-glass-node`,MENTRA_NODE:`openclaw-mentra-node`,USER_CLIENT:`openclaw-user-client`,TEST:`test`,FINGERPRINT:`fingerprint`,PROBE:`openclaw-probe`},p={WEBCHAT:`webchat`,CLI:`cli`,UI:`ui`,BACKEND:`backend`,NODE:`node`,PROBE:`probe`,TEST:`test`};new Set(Object.values(f)),new Set(Object.values(p));var m=f.CONTROL_UI,h={id:m,mode:p.WEBCHAT,role:`operator`,scopes:[`operator.admin`,`operator.approvals`,`operator.pairing`],platform:`web`,version:`0.6.1-dev.32+a8bf98fde`,storageNamespace:`openclaw.control-v2`};function g(e){return typeof e==`string`&&e.trim()||``}function _(e){return e.replace(/[A-Z]/g,e=>String.fromCharCode(e.charCodeAt(0)+32))}function v(e){let t=g(e);return t?_(t):``}function y(e){let t=e.scopes.join(`,`),n=e.token??``,r=v(e.platform),i=v(e.deviceFamily);return[`v3`,e.deviceId,e.clientId,e.clientMode,e.role,t,String(e.signedAtMs),n,e.nonce,r,i].join(`|`)}var b=Object.freeze({p:57896044618658097711785492504343953926634992332820282019728792003956564819949n,n:7237005577332262213973186563042994240857116359379907606001950938285454250989n,h:8n,a:57896044618658097711785492504343953926634992332820282019728792003956564819948n,d:37095705934669439343138083508754565189542113879843219016388785533085940283555n,Gx:15112221349535400772501151409588531511454012693041857206046113283949847762202n,Gy:46316835694926478169428394003475163141307993866256225615783033603165251855960n}),{p:x,n:S,Gx:C,Gy:w,a:T,d:E,h:ee}=b,D=32,te=(...e)=>{`captureStackTrace`in Error&&typeof Error.captureStackTrace==`function`&&Error.captureStackTrace(...e)},O=(e=``)=>{let t=Error(e);throw te(t,O),t},ne=e=>typeof e==`bigint`,re=e=>typeof e==`string`,k=e=>e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`&&`BYTES_PER_ELEMENT`in e&&e.BYTES_PER_ELEMENT===1,A=(e,t,n=``)=>{let r=k(e),i=e?.length,a=t!==void 0;if(!r||a&&i!==t){let o=n&&`"${n}" `,s=a?` of length ${t}`:``,c=r?`length=${i}`:`type=${typeof e}`,l=o+`expected Uint8Array`+s+`, got `+c;throw r?RangeError(l):TypeError(l)}return e},j=e=>new Uint8Array(e),M=e=>Uint8Array.from(e),ie=(e,t)=>e.toString(16).padStart(t,`0`),ae=e=>Array.from(A(e)).map(e=>ie(e,2)).join(``),N={_0:48,_9:57,A:65,F:70,a:97,f:102},oe=e=>{if(e>=N._0&&e<=N._9)return e-N._0;if(e>=N.A&&e<=N.F)return e-(N.A-10);if(e>=N.a&&e<=N.f)return e-(N.a-10)},se=e=>{let t=`hex invalid`;if(!re(e))return O(t);let n=e.length,r=n/2;if(n%2)return O(t);let i=j(r);for(let n=0,a=0;n<r;n++,a+=2){let r=oe(e.charCodeAt(a)),o=oe(e.charCodeAt(a+1));if(r===void 0||o===void 0)return O(t);i[n]=r*16+o}return i},ce=()=>globalThis?.crypto,le=()=>ce()?.subtle??O(`crypto.subtle must be defined, consider polyfill`),P=(...e)=>{let t=0;for(let n of e)t+=A(n).length;let n=j(t),r=0;return e.forEach(e=>{n.set(e,r),r+=e.length}),n},ue=(e=D)=>ce().getRandomValues(j(e)),F=BigInt,I=(e,t,n,r=`bad number: out of range`)=>{if(!ne(e))throw TypeError(r);if(t<=e&&e<n)return e;throw RangeError(r)},L=(e,t=x)=>{let n=e%t;return n>=0n?n:t+n},de=(1n<<255n)-1n,R=e=>{e<0n&&O(`negative coordinate`);let t=(e>>255n)*19n+(e&de);return t=(t>>255n)*19n+(t&de),t%x},fe=e=>L(e,S),pe=(e,t)=>{(e===0n||t<=0n)&&O(`no inverse n=`+e+` mod=`+t);let n=L(e,t),r=t,i=0n,a=1n,o=1n,s=0n;for(;n!==0n;){let e=r/n,t=r%n,c=i-o*e,l=a-s*e;r=n,n=t,i=o,a=s,o=c,s=l}return r===1n?L(i,t):O(`no inverse`)},me=e=>{let t=Ne[e];return typeof t!=`function`&&O(`hashes.`+e+` not set`),t},he=e=>A(e,64,`digest`),ge=e=>e instanceof z?e:O(`Point expected`),_e=2n**256n,z=class e{static BASE;static ZERO;X;Y;Z;T;constructor(e,t,n,r){let i=_e;this.X=I(e,0n,i),this.Y=I(t,0n,i),this.Z=I(n,1n,i),this.T=I(r,0n,i),Object.freeze(this)}static CURVE(){return b}static fromAffine(t){return new e(t.x,t.y,1n,R(t.x*t.y))}static fromBytes(t,n=!1){let r=E,i=M(A(t,D)),a=t[31];i[31]=a&-129;let o=ye(i);I(o,0n,n?_e:x);let s=R(o*o),{isValid:c,value:l}=Se(L(s-1n),R(r*s+1n));c||O(`bad point: y not sqrt`);let u=(l&1n)==1n,d=(a&128)!=0;return!n&&l===0n&&d&&O(`bad point: x==0, isLastByteOdd`),d!==u&&(l=L(-l)),new e(l,o,1n,R(l*o))}static fromHex(t,n){return e.fromBytes(se(t),n)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}assertValidity(){let e=T,t=E,n=this;if(n.is0())return O(`bad point: ZERO`);let{X:r,Y:i,Z:a,T:o}=n,s=R(r*r),c=R(i*i),l=R(a*a),u=R(l*l);return R(l*(R(s*e)+c))===L(u+R(t*R(s*c)))?R(r*i)===R(a*o)?this:O(`bad point: equation left != right (2)`):O(`bad point: equation left != right (1)`)}equals(e){let{X:t,Y:n,Z:r}=this,{X:i,Y:a,Z:o}=ge(e),s=R(t*o),c=R(i*r),l=R(n*o),u=R(a*r);return s===c&&l===u}is0(){return this.equals(V)}negate(){return new e(L(-this.X),this.Y,this.Z,L(-this.T))}double(){let{X:t,Y:n,Z:r}=this,i=T,a=R(t*t),o=R(n*n),s=R(2n*r*r),c=R(i*a),l=L(t+n),u=L(R(l*l)-a-o),d=L(c+o),f=L(d-s),p=L(c-o),m=R(u*f),h=R(d*p),g=R(u*p),_=R(f*d);return new e(m,h,_,g)}add(t){let{X:n,Y:r,Z:i,T:a}=this,{X:o,Y:s,Z:c,T:l}=ge(t),u=T,d=E,f=R(n*o),p=R(r*s),m=R(R(a*d)*l),h=R(i*c),g=L(R(L(n+r)*L(o+s))-f-p),_=L(h-m),v=L(h+m),y=L(p-R(u*f)),b=R(g*_),x=R(v*y),S=R(g*y),C=R(_*v);return new e(b,x,C,S)}subtract(e){return this.add(ge(e).negate())}multiply(e,t=!0){if(!t&&e===0n||(I(e,1n,S),!t&&this.is0()))return V;if(e===1n)return this;if(this.equals(B))return Ve(e).p;let n=V,r=B;for(let i=this;e>0n;i=i.double(),e>>=1n)e&1n?n=n.add(i):t&&(r=r.add(i));return n}multiplyUnsafe(e){return this.multiply(e,!1)}toAffine(){let{X:e,Y:t,Z:n}=this;if(this.equals(V))return{x:0n,y:1n};let r=pe(n,x);return R(n*r)!==1n&&O(`invalid inverse`),{x:R(e*r),y:R(t*r)}}toBytes(){let{x:e,y:t}=this.toAffine(),n=ve(t);return n[31]|=e&1n?128:0,n}toHex(){return ae(this.toBytes())}clearCofactor(){return this.multiply(F(ee),!1)}isSmallOrder(){return this.clearCofactor().is0()}isTorsionFree(){let e=this.multiply(S/2n,!1).double();return S%2n&&(e=e.add(this)),e.is0()}},B=new z(C,w,1n,L(C*w)),V=new z(0n,1n,1n,0n);z.BASE=B,z.ZERO=V;var ve=e=>se(ie(I(e,0n,_e),64)).reverse(),ye=e=>F(`0x`+ae(M(A(e)).reverse())),H=(e,t)=>{let n=e;for(;t-->0n;)n=R(n*n);return n},be=e=>{let t=R(R(e*e)*e),n=R(H(R(H(t,2n)*t),1n)*e),r=R(H(n,5n)*n),i=R(H(r,10n)*r),a=R(H(i,20n)*i),o=R(H(a,40n)*a);return{pow_p_5_8:R(H(R(H(R(H(R(H(o,80n)*o),80n)*o),10n)*r),2n)*e),b2:t}},xe=19681161376707505956807079304988542015446066515923890162744021073123829784752n,Se=(e,t)=>{let n=R(t*R(t*t)),r=be(R(e*R(R(n*n)*t))).pow_p_5_8,i=R(e*R(n*r)),a=R(t*R(i*i)),o=i,s=R(i*xe),c=a===e,l=a===L(-e),u=a===L(-e*xe);return c&&(i=o),(l||u)&&(i=s),(L(i)&1n)==1n&&(i=L(-i)),{isValid:c||l,value:i}},Ce=e=>fe(ye(e)),we=(...e)=>Promise.resolve(me(`sha512Async`)(P(...e))).then(he),Te=(...e)=>he(me(`sha512`)(P(...e))),Ee=e=>{let t=M(e),n=t.slice(0,32);n[0]&=248,n[31]&=127,n[31]|=64;let r=t.slice(32,64),i=Ce(n),a=B.multiply(i);return{head:n,prefix:r,scalar:i,point:a,pointBytes:a.toBytes()}},De=e=>we(A(e,D)).then(Ee),Oe=e=>Ee(Te(A(e,D))),ke=e=>De(e).then(e=>e.pointBytes),Ae=e=>we(e.hashable).then(e.finish),je=(e,t,n)=>{let{pointBytes:r,scalar:i}=e,a=Ce(t),o=B.multiply(a).toBytes();return{hashable:P(o,r,n),finish:e=>{let t=fe(a+Ce(e)*i);return A(P(o,ve(t)),64)}}},Me=async(e,t)=>{let n=A(e),r=await De(t);return Ae(je(r,await we(r.prefix,n),n))},Ne={sha512Async:async e=>{let t=le(),n=P(e);return j(await t.digest(`SHA-512`,n.buffer))},sha512:void 0},Pe=Object.freeze({getExtendedPublicKeyAsync:De,getExtendedPublicKey:Oe,randomSecretKey:e=>(e=e===void 0?ue(D):e,A(e,D))}),Fe=8,Ie=Math.ceil(256/Fe)+1,Le=2**(Fe-1),Re=()=>{let e=[],t=B,n=t;for(let r=0;r<Ie;r++){n=t,e.push(n);for(let r=1;r<Le;r++)n=n.add(t),e.push(n);t=n.double()}return e},ze=void 0,Be=(e,t)=>{let n=t.negate();return e?n:t},Ve=e=>{let t=ze||=Re(),n=V,r=B,i=2**Fe,a=i,o=F(i-1),s=F(Fe);for(let i=0;i<Ie;i++){let c=Number(e&o);e>>=s,c>Le&&(c-=a,e+=1n);let l=i*Le,u=l,d=l+Math.abs(c)-1,f=i%2!=0,p=c<0;c===0?r=r.add(Be(f,t[u])):n=n.add(Be(p,t[d]))}return e!==0n&&O(`invalid wnaf`),{p:n,f:r}};function He(e){return`${e}.device-identity.v1`}var Ue=class extends Error{constructor(){super(`This client needs a secure context (HTTPS, or a loopback origin) to create its device key.`),this.name=`InsecureContextError`}};function We(e){let t=``;for(let n of e)t+=String.fromCharCode(n);return btoa(t).replaceAll(`+`,`-`).replaceAll(`/`,`_`).replace(/=+$/g,``)}function Ge(e){let t=e.replaceAll(`-`,`+`).replaceAll(`_`,`/`),n=t+`=`.repeat((4-t.length%4)%4),r=atob(n),i=new Uint8Array(r.length);for(let e=0;e<r.length;e+=1)i[e]=r.charCodeAt(e);return i}function Ke(e){return[...e].map(e=>e.toString(16).padStart(2,`0`)).join(``)}function qe(){return typeof crypto<`u`&&!!crypto.subtle}async function Je(e){let t=await crypto.subtle.digest(`SHA-256`,e.slice().buffer);return Ke(new Uint8Array(t))}function Ye(e){try{let t=globalThis.localStorage?.getItem(He(e));if(!t)return null;let n=JSON.parse(t);return n?.version!==1||typeof n.deviceId!=`string`||typeof n.publicKey!=`string`||typeof n.privateKey!=`string`?null:n}catch{return null}}function Xe(e,t){try{globalThis.localStorage?.setItem(He(e),JSON.stringify(t))}catch{}}async function Ze(e){if(!qe())throw new Ue;let t=Ye(e);if(t){let n=await Je(Ge(t.publicKey));if(n===t.deviceId)return{deviceId:t.deviceId,publicKey:t.publicKey,privateKey:t.privateKey};let r={...t,deviceId:n};return Xe(e,r),{deviceId:n,publicKey:r.publicKey,privateKey:r.privateKey}}let n=Pe.randomSecretKey(),r=await ke(n),i={deviceId:await Je(r),publicKey:We(r),privateKey:We(n)};return Xe(e,{version:1,createdAtMs:Date.now(),...i}),i}async function Qe(e,t){return We(await Me(new TextEncoder().encode(t),Ge(e)))}function $e(e){try{globalThis.localStorage?.removeItem(He(e))}catch{}}function et(e){return Ye(e)!==null}async function tt(e){let t=e.client,n=[...t.scopes],r=e.signedAtMs??Date.now(),i=e.credential,a=y({deviceId:e.identity.deviceId,clientId:t.id,clientMode:t.mode,role:t.role,scopes:n,signedAtMs:r,token:i.kind===`password`?null:i.token,nonce:e.nonce,platform:t.platform}),o=await Qe(e.identity.privateKey,a);return{minProtocol:3,maxProtocol:3,client:{id:t.id,version:t.version,platform:t.platform,mode:t.mode},role:t.role,scopes:n,caps:t.caps?[...t.caps]:[],auth:i.kind===`bootstrap`?{bootstrapToken:i.token}:i.kind===`device`?{deviceToken:i.token}:i.kind===`shared-token`?{token:i.token}:{password:i.password},device:{id:e.identity.deviceId,publicKey:e.identity.publicKey,signature:o,signedAt:r,nonce:e.nonce}}}var U={AUTH_REQUIRED:`AUTH_REQUIRED`,AUTH_UNAUTHORIZED:`AUTH_UNAUTHORIZED`,AUTH_TOKEN_MISSING:`AUTH_TOKEN_MISSING`,AUTH_TOKEN_MISMATCH:`AUTH_TOKEN_MISMATCH`,AUTH_TOKEN_NOT_CONFIGURED:`AUTH_TOKEN_NOT_CONFIGURED`,AUTH_PASSWORD_MISSING:`AUTH_PASSWORD_MISSING`,AUTH_PASSWORD_MISMATCH:`AUTH_PASSWORD_MISMATCH`,AUTH_PASSWORD_NOT_CONFIGURED:`AUTH_PASSWORD_NOT_CONFIGURED`,AUTH_DEVICE_TOKEN_MISMATCH:`AUTH_DEVICE_TOKEN_MISMATCH`,AUTH_RATE_LIMITED:`AUTH_RATE_LIMITED`,AUTH_TAILSCALE_IDENTITY_MISSING:`AUTH_TAILSCALE_IDENTITY_MISSING`,AUTH_TAILSCALE_PROXY_MISSING:`AUTH_TAILSCALE_PROXY_MISSING`,AUTH_TAILSCALE_WHOIS_FAILED:`AUTH_TAILSCALE_WHOIS_FAILED`,AUTH_TAILSCALE_IDENTITY_MISMATCH:`AUTH_TAILSCALE_IDENTITY_MISMATCH`,CONTROL_UI_DEVICE_IDENTITY_REQUIRED:`CONTROL_UI_DEVICE_IDENTITY_REQUIRED`,CLIENT_SHARED_AUTH_NOT_ALLOWED:`CLIENT_SHARED_AUTH_NOT_ALLOWED`,CLIENT_DEVICE_CREDENTIAL_REQUIRED:`CLIENT_DEVICE_CREDENTIAL_REQUIRED`,WEB_CLIENT_ORIGIN_NOT_ALLOWED:`WEB_CLIENT_ORIGIN_NOT_ALLOWED`,DEVICE_IDENTITY_REQUIRED:`DEVICE_IDENTITY_REQUIRED`,DEVICE_AUTH_INVALID:`DEVICE_AUTH_INVALID`,DEVICE_AUTH_DEVICE_ID_MISMATCH:`DEVICE_AUTH_DEVICE_ID_MISMATCH`,DEVICE_AUTH_SIGNATURE_EXPIRED:`DEVICE_AUTH_SIGNATURE_EXPIRED`,DEVICE_AUTH_NONCE_REQUIRED:`DEVICE_AUTH_NONCE_REQUIRED`,DEVICE_AUTH_NONCE_MISMATCH:`DEVICE_AUTH_NONCE_MISMATCH`,DEVICE_AUTH_SIGNATURE_INVALID:`DEVICE_AUTH_SIGNATURE_INVALID`,DEVICE_AUTH_PUBLIC_KEY_INVALID:`DEVICE_AUTH_PUBLIC_KEY_INVALID`,PAIRING_REQUIRED:`PAIRING_REQUIRED`,BOOTSTRAP_TOKEN_INVALID:`bootstrap_token_invalid`,BOOTSTRAP_TOKEN_EXPIRED:`bootstrap_token_expired`,BOOTSTRAP_TOKEN_CONSUMED:`bootstrap_token_consumed`,BOOTSTRAP_TOKEN_DEVICE_MISMATCH:`bootstrap_token_device_mismatch`,BOOTSTRAP_PROFILE_VIOLATION:`bootstrap_profile_violation`};function nt(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e.code;return typeof t==`string`&&t.trim().length>0?t:null}function rt(e){return`${e}.device-credential.v1`}function W(e){return`${e.gatewayUrl}|${e.clientId}`}function G(e){try{let t=globalThis.localStorage?.getItem(rt(e));if(!t)return{version:1,entries:{}};let n=JSON.parse(t);return n?.version!==1||typeof n.entries!=`object`||n.entries===null?{version:1,entries:{}}:{version:1,entries:n.entries}}catch{return{version:1,entries:{}}}}function it(e,t){try{globalThis.localStorage?.setItem(rt(e),JSON.stringify(t))}catch{}}function at(e){let t=G(e.namespace).entries[W(e)];return!t||typeof t.token!=`string`||t.token.length===0||t.deviceId!==e.deviceId?null:t}function ot(e){let t=G(e.namespace),n={deviceId:e.deviceId,token:e.token,role:e.role,scopes:[...e.scopes??[]],updatedAtMs:Date.now()};return t.entries[W(e)]=n,it(e.namespace,t),n}function st(e){let t=G(e.namespace);W(e)in t.entries&&(delete t.entries[W(e)],it(e.namespace,t))}function ct(e){return Object.values(G(e).entries).some(e=>typeof e?.token==`string`&&e.token.length>0)}var lt=750,ut=2e4,dt=800,ft=15e3,pt=5e3,mt=5e3,K=class extends Error{code;details;detailCode;retryable;retryAfterMs;constructor(e){super(e.message),this.name=`GatewayRequestError`,this.code=e.code,this.details=e.details,this.detailCode=nt(e.details),this.retryable=e.retryable??!1,this.retryAfterMs=e.retryAfterMs??null}},ht=1;function gt(e){if(typeof e==`object`&&e&&`data`in e){let t=e.data;return typeof t==`string`?t:``}return``}function _t(e){return new WebSocket(e)}function vt(){return globalThis.crypto?.randomUUID?.()??`r-${Date.now()}-${Math.random().toString(16).slice(2)}`}var yt={[U.AUTH_RATE_LIMITED]:!0,[U.DEVICE_AUTH_SIGNATURE_EXPIRED]:!0,[U.DEVICE_AUTH_NONCE_REQUIRED]:!0,[U.DEVICE_AUTH_NONCE_MISMATCH]:!0};function bt(e){return!(e instanceof K)||e.retryable||e.code===`UNAVAILABLE`||e.code===`RECOVERY_NOT_READY`?!0:e.detailCode!==null&&Object.hasOwn(yt,e.detailCode)}var xt=class{opts;setTimer;clearTimer;ws=null;pending=new Map;identity=null;stopped=!0;status=`offline`;challengeNonce=null;connectSent=!1;challengeTimer=null;reconnectTimer=null;backoffMs=dt;lastFrameAt=0;tickIntervalMs=3e4;livenessTimer=null;livenessProbe=null;lifecycleAttached=!1;pendingCredential=null;credentialWaiter=null;readyWaiters=[];constructor(e){this.opts=e,this.setTimer=e.setTimer??((e,t)=>globalThis.setTimeout(e,t)),this.clearTimer=e.clearTimer??(e=>globalThis.clearTimeout(e))}get gatewayUrl(){return this.opts.gatewayUrl}get connectionStatus(){return this.status}isStopped(){return this.stopped}get deviceId(){return this.identity?.deviceId??null}async ensureIdentity(){return this.identity??=await Ze(this.opts.client.storageNamespace),this.identity}async hasStoredCredential(){let e=await this.ensureIdentity();return at({namespace:this.opts.client.storageNamespace,gatewayUrl:this.opts.gatewayUrl,clientId:this.opts.client.id,deviceId:e.deviceId})!==null}async start(){return await this.hasStoredCredential()?(this.stopped=!1,this.attachLifecycleListeners(),this.openSocket(),!0):(this.setStatus(`offline`),!1)}async presentCredential(e){e.kind===`bootstrap`&&et(this.opts.client.storageNamespace)&&!ct(this.opts.client.storageNamespace)&&($e(this.opts.client.storageNamespace),this.identity=null),await this.ensureIdentity(),this.teardownSocket(),this.stopped=!1,this.attachLifecycleListeners(),this.pendingCredential=e;let t=new Promise((e,t)=>{this.credentialWaiter={resolve:e,reject:t}});return this.openSocket(),t}logout(e){this.stop(),st({namespace:this.opts.client.storageNamespace,gatewayUrl:this.opts.gatewayUrl,clientId:this.opts.client.id}),e?.forgetDevice&&($e(this.opts.client.storageNamespace),this.identity=null)}stop(){this.stopped=!0,this.cancelReconnect(),this.detachLifecycleListeners(),this.teardownSocket(),this.setStatus(`offline`),this.releaseReadyWaiters(Error(`gateway not connected`)),this.pendingCredential=null;let e=this.credentialWaiter;this.credentialWaiter=null,e?.reject(Error(`gateway connection stopped`))}async request(e,t,n){if(await this.waitUntilReady(),n?.canDispatch?.()===!1)throw Error(`gateway connection closed`);let r=this.ws;if(!r||r.readyState!==ht)throw Error(`gateway not connected`);return this.sendRequest(r,e,t)}sendRequest(e,t,n){let r=vt();return new Promise((i,a)=>{this.pending.set(r,{resolve:e=>i(e),reject:a});try{e.send(JSON.stringify({type:`req`,id:r,method:t,params:n}))}catch(e){this.pending.delete(r),a(e instanceof Error?e:Error(String(e)))}})}waitUntilReady(){return this.status===`connected`&&this.ws?.readyState===ht?Promise.resolve():this.stopped?Promise.reject(Error(`gateway not connected`)):new Promise((e,t)=>{let n={resolve:e,reject:t};this.readyWaiters.push(n);let r=this.setTimer(()=>{this.readyWaiters=this.readyWaiters.filter(e=>e!==n),t(Error(`timed out waiting for the gateway connection`))},ut),i=e=>{this.clearTimer(r),e()};n.resolve=()=>i(e),n.reject=e=>i(()=>t(e))})}releaseReadyWaiters(e){let t=this.readyWaiters;this.readyWaiters=[];for(let n of t)e?n.reject(e):n.resolve()}setStatus(e){this.status!==e&&(this.status=e,this.opts.onStatus?.(e))}teardownSocket(){this.challengeTimer!==null&&(this.clearTimer(this.challengeTimer),this.challengeTimer=null),this.stopLivenessWatchdog();let e=this.ws;this.ws=null,this.connectSent=!1,this.challengeNonce=null,this.rejectPending(Error(`gateway connection closed`)),e?.close()}rejectPending(e){let t=[...this.pending.values()];this.pending.clear();for(let n of t)n.reject(e)}cancelReconnect(){this.reconnectTimer!==null&&(this.clearTimer(this.reconnectTimer),this.reconnectTimer=null)}openSocket(){if(this.stopped)return;this.cancelReconnect(),this.ws!==null&&this.teardownSocket();let e=(this.opts.socketFactory??_t)(this.opts.gatewayUrl);this.ws=e,this.lastFrameAt=Date.now(),this.connectSent=!1,this.challengeNonce=null,e.addEventListener(`open`,()=>{e===this.ws&&(this.lastFrameAt=Date.now(),this.handleOpen())}),e.addEventListener(`message`,t=>{e===this.ws&&(this.lastFrameAt=Date.now(),this.handleMessage(gt(t)))}),e.addEventListener(`close`,()=>this.handleClose(e)),e.addEventListener(`error`,()=>{})}handleOpen(){this.challengeTimer=this.setTimer(()=>{this.sendConnect()},lt)}handleClose(e){if(e!==this.ws)return;let t=this.credentialWaiter;if(this.ws=null,this.connectSent=!1,this.rejectPending(Error(`gateway connection closed`)),this.challengeTimer!==null&&(this.clearTimer(this.challengeTimer),this.challengeTimer=null),this.stopLivenessWatchdog(),t&&(this.credentialWaiter=null,this.pendingCredential=null,this.stopped=!0,t.reject(Error(`The gateway closed the connection before accepting the credential.`))),this.stopped){this.setStatus(`offline`),this.releaseReadyWaiters(Error(`gateway not connected`));return}this.setStatus(`reconnecting`);let n=this.backoffMs;this.backoffMs=Math.min(Math.round(this.backoffMs*1.7),ft),this.reconnectTimer=this.setTimer(()=>{this.reconnectTimer=null,this.openSocket()},n)}handleMessage(e){let t;try{t=JSON.parse(e)}catch{return}if(typeof t!=`object`||!t)return;let n=t;if(n.type===`event`){let e=t;if(e.event===`connect.challenge`){let t=e.payload?.nonce;typeof t==`string`&&t.trim()&&(this.challengeNonce=t.trim(),this.sendConnect());return}this.opts.onEvent?.(e);return}if(n.type===`res`){let e=t,n=this.pending.get(e.id);if(!n)return;if(this.pending.delete(e.id),e.ok){n.resolve(e.payload);return}n.reject(new K({code:e.error?.code??`UNAVAILABLE`,message:e.error?.message??`request failed`,details:e.error?.details,retryable:e.error?.retryable===!0,retryAfterMs:typeof e.error?.retryAfterMs==`number`?e.error.retryAfterMs:null}))}}async sendConnect(){if(this.connectSent)return;this.connectSent=!0,this.challengeTimer!==null&&(this.clearTimer(this.challengeTimer),this.challengeTimer=null);let e=this.ws;if(!e||e.readyState!==ht)return;let t;try{t=await this.ensureIdentity()}catch(e){this.failAuth({code:`DEVICE_IDENTITY_UNAVAILABLE`,detailCode:null,message:e instanceof Error?e.message:String(e),needsOnboarding:!0});return}if(e!==this.ws)return;let n=this.pendingCredential,r=n?null:at({namespace:this.opts.client.storageNamespace,gatewayUrl:this.opts.gatewayUrl,clientId:this.opts.client.id,deviceId:t.deviceId});if(!n&&!r){this.stopped=!0,this.setStatus(`offline`),e.close();return}let i=await tt({client:this.opts.client,identity:t,credential:n??{kind:`device`,token:r?.token??``},nonce:this.challengeNonce??``});if(e===this.ws)try{let n=await this.sendRequest(e,`connect`,i);if(e!==this.ws)return;this.handleHello(n,t)}catch(t){if(e!==this.ws)return;this.handleConnectRejection(t,!!n)}}handleHello(e,t){let n=e?.auth?.deviceToken;n&&(ot({namespace:this.opts.client.storageNamespace,gatewayUrl:this.opts.gatewayUrl,clientId:this.opts.client.id,deviceId:t.deviceId,token:n,role:e.auth?.role??this.opts.client.role,scopes:e.auth?.scopes??[...this.opts.client.scopes]}),this.pendingCredential=null),this.backoffMs=dt,this.tickIntervalMs=e.policy?.tickIntervalMs??3e4,this.setStatus(`connected`),this.startLivenessWatchdog(),this.opts.onHello?.(e);let r=this.credentialWaiter;this.credentialWaiter=null,r?.resolve(),this.releaseReadyWaiters()}handleConnectRejection(e,t){if(this.credentialWaiter===null&&bt(e)){this.recoverTransientConnectFailure(e);return}let n=e instanceof K?e:null,r={code:n?.code??`UNAVAILABLE`,detailCode:n?.detailCode??null,message:n?.message??(e instanceof Error?e.message:String(e)),needsOnboarding:!0};t||st({namespace:this.opts.client.storageNamespace,gatewayUrl:this.opts.gatewayUrl,clientId:this.opts.client.id}),this.pendingCredential=null,this.stopped=!0,this.cancelReconnect();let i=this.credentialWaiter;this.credentialWaiter=null,this.ws?.close(),this.failAuth(r),i?.reject(Error(r.message))}recoverTransientConnectFailure(e){e instanceof K&&(e.retryAfterMs!==null&&e.retryAfterMs>this.backoffMs?this.backoffMs=e.retryAfterMs:e.detailCode===U.AUTH_RATE_LIMITED&&(this.backoffMs=ft));let t=this.ws;t?.close(),t!==null&&t===this.ws&&this.handleClose(t)}forceReconnect(e){let t=this.ws;t&&(t.close(4e3,e),this.handleClose(t))}startLivenessWatchdog(){this.stopLivenessWatchdog();let e=()=>{if(this.livenessTimer=null,Date.now()-this.lastFrameAt>2*this.tickIntervalMs){this.forceReconnect(`tick timeout`);return}this.livenessTimer=this.setTimer(e,this.tickIntervalMs)};this.livenessTimer=this.setTimer(e,this.tickIntervalMs)}stopLivenessWatchdog(){this.livenessTimer!==null&&(this.clearTimer(this.livenessTimer),this.livenessTimer=null)}verifyLive(e=pt){if(this.livenessProbe!==null)return this.livenessProbe;let t=this.ws;if(this.status!==`connected`||!t||t.readyState!==ht)return Promise.resolve(!1);let n=this.runLivenessProbe(t,e);return this.livenessProbe=n,n.then(()=>{this.livenessProbe===n&&(this.livenessProbe=null)}),n}runLivenessProbe(e,t){return new Promise(n=>{let r=null,i=!1,a=e=>{i||(i=!0,r!==null&&this.clearTimer(r),n(e))};this.sendRequest(e,`health`).then(()=>a(!0),e=>a(e instanceof K)),r=this.setTimer(()=>{r=null,e===this.ws&&this.status===`connected`&&this.forceReconnect(`liveness probe timeout`),a(!1)},t)})}attachLifecycleListeners(){typeof window>`u`||this.lifecycleAttached||(this.lifecycleAttached=!0,window.addEventListener(`online`,this.handlePageResume),window.addEventListener(`pageshow`,this.handlePageResume),document.addEventListener(`visibilitychange`,this.handlePageResume),document.addEventListener(`resume`,this.handlePageResume))}detachLifecycleListeners(){this.lifecycleAttached&&(this.lifecycleAttached=!1,window.removeEventListener(`online`,this.handlePageResume),window.removeEventListener(`pageshow`,this.handlePageResume),document.removeEventListener(`visibilitychange`,this.handlePageResume),document.removeEventListener(`resume`,this.handlePageResume))}handlePageResume=e=>{if(!this.stopped&&!(e.type===`visibilitychange`&&document.visibilityState!==`visible`)){if(this.status===`reconnecting`){if(this.ws!==null){if(Date.now()-this.lastFrameAt>2*this.tickIntervalMs){this.forceReconnect(`stale handshake on resume`);return}return}this.cancelReconnect(),this.backoffMs=dt,this.openSocket();return}if(this.status===`connected`&&Date.now()-this.lastFrameAt>2*this.tickIntervalMs){this.forceReconnect(`stale on resume`);return}this.status===`connected`&&Date.now()-this.lastFrameAt>mt&&this.verifyLive()}};failAuth(e){this.setStatus(`offline`),this.releaseReadyWaiters(Error(e.message)),this.opts.onAuthFailure?.(e)}},St=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},Ct=(e=>e?St(e):St),wt=e=>e;function Tt(e,t=wt){let n=d.useSyncExternalStore(e.subscribe,d.useCallback(()=>t(e.getState()),[e,t]),d.useCallback(()=>t(e.getInitialState()),[e,t]));return d.useDebugValue(n),n}var Et=e=>{let t=Ct(e),n=e=>Tt(t,e);return Object.assign(n,t),n},q=(e=>e?Et(e):Et),Dt={pending:[],panelOpen:!1},Ot=500,J=new Map;function kt(e){let t=J.get(e);t!==void 0&&(clearTimeout(t),J.delete(e))}function At(e){if(typeof e!=`object`||!e||Array.isArray(e)||!(`id`in e)||typeof e.id!=`string`||e.id.length===0)return null;let t=`request`in e&&typeof e.request==`object`&&e.request!==null?e.request:{},n=`expiresAtMs`in e&&typeof e.expiresAtMs==`number`&&e.expiresAtMs>0?e.expiresAtMs:void 0;return{id:e.id,request:t,expiresAtMs:n}}function Y(e){return typeof e==`string`&&e.trim().length>0?e:null}var jt=q()((e,t)=>({...Dt,requested:n=>{let r=At(n);if(!r)return;let i={id:r.id,sessionKey:Y(r.request.sessionKey),agentId:Y(r.request.agentId),command:Y(r.request.command),cwd:Y(r.request.cwd),...r.expiresAtMs===void 0?{}:{expiresAtMs:r.expiresAtMs}};if(e(e=>({pending:[...e.pending.filter(e=>e.id!==i.id),i]})),kt(i.id),i.expiresAtMs!==void 0){let e=Math.max(0,i.expiresAtMs-Date.now()+Ot);J.set(i.id,window.setTimeout(()=>{t().remove(i.id)},e))}},resolved:e=>{let n=At(e);n&&t().remove(n.id)},remove:t=>{kt(t),e(e=>({pending:e.pending.filter(e=>e.id!==t)}))},openPanel:()=>{e({panelOpen:!0})},closePanel:()=>{e({panelOpen:!1})},reset:()=>{for(let e of J.values())window.clearTimeout(e);J.clear(),e({...Dt})}})),Mt=1,Nt=q()(e=>({entries:[],record:(t,n)=>e(e=>({entries:[{id:Mt++,ts:Date.now(),event:t,payload:n},...e.entries].slice(0,250)})),clear:()=>e({entries:[]})})),Pt={status:`offline`,hello:null,authFailure:null,booted:!1,needsSignIn:!0},X=null,Ft=null,Z=new Map,It=0;function Lt(e,t){for(let n of Z.get(e)??[])n(t)}var Rt=q()((e,t)=>({...Pt,boot:(t,n)=>(Ft??=(async()=>{X=new xt({client:h,gatewayUrl:t.gatewayUrl,socketFactory:n?.socketFactory,onStatus:t=>{e({status:t})},onHello:t=>{e({hello:t,needsSignIn:!1,authFailure:null})},onAuthFailure:t=>{e({authFailure:t,needsSignIn:!0})},onEvent:e=>{Nt.getState().record(e.event,e.payload),Lt(e.event,e.payload)}}),e(await X.start().catch(()=>!1)?{needsSignIn:!1}:{status:`offline`,needsSignIn:!0}),e({booted:!0})})(),Ft),signIn:async n=>{e({authFailure:null});let r=X;if(!r)return;let i=It;try{await r.presentCredential(n)}catch(n){i===It&&!t().authFailure&&e({authFailure:{code:`UNAVAILABLE`,detailCode:null,message:n instanceof Error?n.message:String(n),needsOnboarding:!1},needsSignIn:!0})}},signOut:()=>{It+=1,X?.logout(),jt.getState().reset(),e({hello:null,authFailure:null,needsSignIn:!0,status:`offline`})},request:async(e,t)=>{let n=X;if(!n)throw Error(`gateway not connected`);return n.request(e,t)},subscribe:(e,t)=>{let n=Z.get(e)??new Set;return n.add(t),Z.set(e,n),()=>{let n=Z.get(e);n&&(n.delete(t),n.size===0&&Z.delete(e))}},reset:()=>{It+=1,X?.stop(),X=null,Ft=null,Z.clear(),e({...Pt})}})),zt=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),Bt=o(((e,t)=>{t.exports=zt()})),Vt=Bt();function Ht({message:e,hint:t,tone:n=`neutral`,testId:r}){return(0,Vt.jsxs)(`div`,{className:`ct-empty ct-empty--${n}`,role:n===`error`?`alert`:void 0,"aria-busy":n===`loading`||void 0,"data-testid":r,children:[(0,Vt.jsx)(`p`,{className:`ct-empty__message`,children:e}),t===void 0?null:(0,Vt.jsx)(`p`,{className:`ct-empty__hint`,children:t})]})}var Q=6e4,$=60*Q,Ut=24*$;function Wt(e){if(typeof e==`number`)return Number.isFinite(e)?e:null;if(typeof e==`string`&&e.length>0){let t=Date.parse(e);return Number.isNaN(t)?null:t}return null}function Gt(e,t=Date.now()){let n=Wt(e);if(n===null)return`—`;let r=t-n;if(r<0){let e=-r;return e<Q?`in under a minute`:e<$?`in ${Math.round(e/Q)}m`:e<Ut?`in ${Math.round(e/$)}h`:`in ${Math.round(e/Ut)}d`}return r<Q?`just now`:r<$?`${Math.floor(r/Q)}m ago`:r<Ut?`${Math.floor(r/$)}h ago`:`${Math.floor(r/Ut)}d ago`}function Kt(e){if(typeof e!=`number`||!Number.isFinite(e)||e<0)return`—`;let t=Math.round(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60);return n<60?`${n}m ${String(t%60).padStart(2,`0`)}s`:`${Math.floor(n/60)}h ${String(n%60).padStart(2,`0`)}m`}function qt(e){return typeof e!=`number`||!Number.isFinite(e)?`—`:e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(Math.round(e))}function Jt(e,t=`USD`){return typeof e!=`number`||!Number.isFinite(e)?`—`:new Intl.NumberFormat(`en-AU`,{style:`currency`,currency:t,currencyDisplay:`narrowSymbol`,minimumFractionDigits:2,maximumFractionDigits:e!==0&&Math.abs(e)<1?4:2}).format(e)}function Yt(e){return e instanceof Error?e.message:String(e)}export{c as _,qt as a,Bt as c,jt as d,q as f,o as g,u as h,Gt as i,Rt as l,m,Jt as n,Wt as o,U as p,Kt as r,Ht as s,Yt as t,Nt as u};
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,a)=>(a=n==null?{}:e(i(n)),s(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),l=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function ee(e,t){return E(e.type,t,e.props)}function D(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function te(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var O=/\/+/g;function ne(e,t){return typeof e==`object`&&e&&e.key!=null?te(``+e.key):t.toString(36)}function re(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function k(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,k(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+ne(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(O,`$&/`)+`/`),k(o,r,i,``,function(e){return e})):o!=null&&(D(o)&&(o=ee(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(O,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+ne(a,u),c+=k(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+ne(a,u++),c+=k(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return k(re(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function A(e,t,n){if(e==null)return e;var r=[],i=0;return k(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function j(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var M=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},ie={map:A,forEach:function(e,t,n){A(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return A(e,function(){t++}),t},toArray:function(e){return A(e,function(e){return e})||[]},only:function(e){if(!D(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=ie,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=D,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:j}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,M)}catch(e){M(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.4`})),u=o(((e,t)=>{t.exports=l()})),d=c(u(),1),f={WEBCHAT_UI:`webchat-ui`,CONTROL_UI:`openclaw-control-ui`,WEBCHAT:`webchat`,CLI:`cli`,GATEWAY_CLIENT:`gateway-client`,MACOS_APP:`openclaw-macos`,IOS_APP:`openclaw-ios`,ANDROID_APP:`openclaw-android`,NODE_HOST:`node-host`,EVEN_G2_NODE:`openclaw-even-g2-node`,WEDNESDAYAI_GLASS_NODE:`wednesdayai-glass-node`,MENTRA_NODE:`openclaw-mentra-node`,USER_CLIENT:`openclaw-user-client`,TEST:`test`,FINGERPRINT:`fingerprint`,PROBE:`openclaw-probe`},p={WEBCHAT:`webchat`,CLI:`cli`,UI:`ui`,BACKEND:`backend`,NODE:`node`,PROBE:`probe`,TEST:`test`};new Set(Object.values(f)),new Set(Object.values(p));var m=f.CONTROL_UI,h={id:m,mode:p.WEBCHAT,role:`operator`,scopes:[`operator.admin`,`operator.approvals`,`operator.pairing`],platform:`web`,version:`0.6.1-dev.33+049e031eb`,storageNamespace:`openclaw.control-v2`};function g(e){return typeof e==`string`&&e.trim()||``}function _(e){return e.replace(/[A-Z]/g,e=>String.fromCharCode(e.charCodeAt(0)+32))}function v(e){let t=g(e);return t?_(t):``}function y(e){let t=e.scopes.join(`,`),n=e.token??``,r=v(e.platform),i=v(e.deviceFamily);return[`v3`,e.deviceId,e.clientId,e.clientMode,e.role,t,String(e.signedAtMs),n,e.nonce,r,i].join(`|`)}var b=Object.freeze({p:57896044618658097711785492504343953926634992332820282019728792003956564819949n,n:7237005577332262213973186563042994240857116359379907606001950938285454250989n,h:8n,a:57896044618658097711785492504343953926634992332820282019728792003956564819948n,d:37095705934669439343138083508754565189542113879843219016388785533085940283555n,Gx:15112221349535400772501151409588531511454012693041857206046113283949847762202n,Gy:46316835694926478169428394003475163141307993866256225615783033603165251855960n}),{p:x,n:S,Gx:C,Gy:w,a:T,d:E,h:ee}=b,D=32,te=(...e)=>{`captureStackTrace`in Error&&typeof Error.captureStackTrace==`function`&&Error.captureStackTrace(...e)},O=(e=``)=>{let t=Error(e);throw te(t,O),t},ne=e=>typeof e==`bigint`,re=e=>typeof e==`string`,k=e=>e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`&&`BYTES_PER_ELEMENT`in e&&e.BYTES_PER_ELEMENT===1,A=(e,t,n=``)=>{let r=k(e),i=e?.length,a=t!==void 0;if(!r||a&&i!==t){let o=n&&`"${n}" `,s=a?` of length ${t}`:``,c=r?`length=${i}`:`type=${typeof e}`,l=o+`expected Uint8Array`+s+`, got `+c;throw r?RangeError(l):TypeError(l)}return e},j=e=>new Uint8Array(e),M=e=>Uint8Array.from(e),ie=(e,t)=>e.toString(16).padStart(t,`0`),ae=e=>Array.from(A(e)).map(e=>ie(e,2)).join(``),N={_0:48,_9:57,A:65,F:70,a:97,f:102},oe=e=>{if(e>=N._0&&e<=N._9)return e-N._0;if(e>=N.A&&e<=N.F)return e-(N.A-10);if(e>=N.a&&e<=N.f)return e-(N.a-10)},se=e=>{let t=`hex invalid`;if(!re(e))return O(t);let n=e.length,r=n/2;if(n%2)return O(t);let i=j(r);for(let n=0,a=0;n<r;n++,a+=2){let r=oe(e.charCodeAt(a)),o=oe(e.charCodeAt(a+1));if(r===void 0||o===void 0)return O(t);i[n]=r*16+o}return i},ce=()=>globalThis?.crypto,le=()=>ce()?.subtle??O(`crypto.subtle must be defined, consider polyfill`),P=(...e)=>{let t=0;for(let n of e)t+=A(n).length;let n=j(t),r=0;return e.forEach(e=>{n.set(e,r),r+=e.length}),n},ue=(e=D)=>ce().getRandomValues(j(e)),F=BigInt,I=(e,t,n,r=`bad number: out of range`)=>{if(!ne(e))throw TypeError(r);if(t<=e&&e<n)return e;throw RangeError(r)},L=(e,t=x)=>{let n=e%t;return n>=0n?n:t+n},de=(1n<<255n)-1n,R=e=>{e<0n&&O(`negative coordinate`);let t=(e>>255n)*19n+(e&de);return t=(t>>255n)*19n+(t&de),t%x},fe=e=>L(e,S),pe=(e,t)=>{(e===0n||t<=0n)&&O(`no inverse n=`+e+` mod=`+t);let n=L(e,t),r=t,i=0n,a=1n,o=1n,s=0n;for(;n!==0n;){let e=r/n,t=r%n,c=i-o*e,l=a-s*e;r=n,n=t,i=o,a=s,o=c,s=l}return r===1n?L(i,t):O(`no inverse`)},me=e=>{let t=Ne[e];return typeof t!=`function`&&O(`hashes.`+e+` not set`),t},he=e=>A(e,64,`digest`),ge=e=>e instanceof z?e:O(`Point expected`),_e=2n**256n,z=class e{static BASE;static ZERO;X;Y;Z;T;constructor(e,t,n,r){let i=_e;this.X=I(e,0n,i),this.Y=I(t,0n,i),this.Z=I(n,1n,i),this.T=I(r,0n,i),Object.freeze(this)}static CURVE(){return b}static fromAffine(t){return new e(t.x,t.y,1n,R(t.x*t.y))}static fromBytes(t,n=!1){let r=E,i=M(A(t,D)),a=t[31];i[31]=a&-129;let o=ye(i);I(o,0n,n?_e:x);let s=R(o*o),{isValid:c,value:l}=Se(L(s-1n),R(r*s+1n));c||O(`bad point: y not sqrt`);let u=(l&1n)==1n,d=(a&128)!=0;return!n&&l===0n&&d&&O(`bad point: x==0, isLastByteOdd`),d!==u&&(l=L(-l)),new e(l,o,1n,R(l*o))}static fromHex(t,n){return e.fromBytes(se(t),n)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}assertValidity(){let e=T,t=E,n=this;if(n.is0())return O(`bad point: ZERO`);let{X:r,Y:i,Z:a,T:o}=n,s=R(r*r),c=R(i*i),l=R(a*a),u=R(l*l);return R(l*(R(s*e)+c))===L(u+R(t*R(s*c)))?R(r*i)===R(a*o)?this:O(`bad point: equation left != right (2)`):O(`bad point: equation left != right (1)`)}equals(e){let{X:t,Y:n,Z:r}=this,{X:i,Y:a,Z:o}=ge(e),s=R(t*o),c=R(i*r),l=R(n*o),u=R(a*r);return s===c&&l===u}is0(){return this.equals(V)}negate(){return new e(L(-this.X),this.Y,this.Z,L(-this.T))}double(){let{X:t,Y:n,Z:r}=this,i=T,a=R(t*t),o=R(n*n),s=R(2n*r*r),c=R(i*a),l=L(t+n),u=L(R(l*l)-a-o),d=L(c+o),f=L(d-s),p=L(c-o),m=R(u*f),h=R(d*p),g=R(u*p),_=R(f*d);return new e(m,h,_,g)}add(t){let{X:n,Y:r,Z:i,T:a}=this,{X:o,Y:s,Z:c,T:l}=ge(t),u=T,d=E,f=R(n*o),p=R(r*s),m=R(R(a*d)*l),h=R(i*c),g=L(R(L(n+r)*L(o+s))-f-p),_=L(h-m),v=L(h+m),y=L(p-R(u*f)),b=R(g*_),x=R(v*y),S=R(g*y),C=R(_*v);return new e(b,x,C,S)}subtract(e){return this.add(ge(e).negate())}multiply(e,t=!0){if(!t&&e===0n||(I(e,1n,S),!t&&this.is0()))return V;if(e===1n)return this;if(this.equals(B))return Ve(e).p;let n=V,r=B;for(let i=this;e>0n;i=i.double(),e>>=1n)e&1n?n=n.add(i):t&&(r=r.add(i));return n}multiplyUnsafe(e){return this.multiply(e,!1)}toAffine(){let{X:e,Y:t,Z:n}=this;if(this.equals(V))return{x:0n,y:1n};let r=pe(n,x);return R(n*r)!==1n&&O(`invalid inverse`),{x:R(e*r),y:R(t*r)}}toBytes(){let{x:e,y:t}=this.toAffine(),n=ve(t);return n[31]|=e&1n?128:0,n}toHex(){return ae(this.toBytes())}clearCofactor(){return this.multiply(F(ee),!1)}isSmallOrder(){return this.clearCofactor().is0()}isTorsionFree(){let e=this.multiply(S/2n,!1).double();return S%2n&&(e=e.add(this)),e.is0()}},B=new z(C,w,1n,L(C*w)),V=new z(0n,1n,1n,0n);z.BASE=B,z.ZERO=V;var ve=e=>se(ie(I(e,0n,_e),64)).reverse(),ye=e=>F(`0x`+ae(M(A(e)).reverse())),H=(e,t)=>{let n=e;for(;t-->0n;)n=R(n*n);return n},be=e=>{let t=R(R(e*e)*e),n=R(H(R(H(t,2n)*t),1n)*e),r=R(H(n,5n)*n),i=R(H(r,10n)*r),a=R(H(i,20n)*i),o=R(H(a,40n)*a);return{pow_p_5_8:R(H(R(H(R(H(R(H(o,80n)*o),80n)*o),10n)*r),2n)*e),b2:t}},xe=19681161376707505956807079304988542015446066515923890162744021073123829784752n,Se=(e,t)=>{let n=R(t*R(t*t)),r=be(R(e*R(R(n*n)*t))).pow_p_5_8,i=R(e*R(n*r)),a=R(t*R(i*i)),o=i,s=R(i*xe),c=a===e,l=a===L(-e),u=a===L(-e*xe);return c&&(i=o),(l||u)&&(i=s),(L(i)&1n)==1n&&(i=L(-i)),{isValid:c||l,value:i}},Ce=e=>fe(ye(e)),we=(...e)=>Promise.resolve(me(`sha512Async`)(P(...e))).then(he),Te=(...e)=>he(me(`sha512`)(P(...e))),Ee=e=>{let t=M(e),n=t.slice(0,32);n[0]&=248,n[31]&=127,n[31]|=64;let r=t.slice(32,64),i=Ce(n),a=B.multiply(i);return{head:n,prefix:r,scalar:i,point:a,pointBytes:a.toBytes()}},De=e=>we(A(e,D)).then(Ee),Oe=e=>Ee(Te(A(e,D))),ke=e=>De(e).then(e=>e.pointBytes),Ae=e=>we(e.hashable).then(e.finish),je=(e,t,n)=>{let{pointBytes:r,scalar:i}=e,a=Ce(t),o=B.multiply(a).toBytes();return{hashable:P(o,r,n),finish:e=>{let t=fe(a+Ce(e)*i);return A(P(o,ve(t)),64)}}},Me=async(e,t)=>{let n=A(e),r=await De(t);return Ae(je(r,await we(r.prefix,n),n))},Ne={sha512Async:async e=>{let t=le(),n=P(e);return j(await t.digest(`SHA-512`,n.buffer))},sha512:void 0},Pe=Object.freeze({getExtendedPublicKeyAsync:De,getExtendedPublicKey:Oe,randomSecretKey:e=>(e=e===void 0?ue(D):e,A(e,D))}),Fe=8,Ie=Math.ceil(256/Fe)+1,Le=2**(Fe-1),Re=()=>{let e=[],t=B,n=t;for(let r=0;r<Ie;r++){n=t,e.push(n);for(let r=1;r<Le;r++)n=n.add(t),e.push(n);t=n.double()}return e},ze=void 0,Be=(e,t)=>{let n=t.negate();return e?n:t},Ve=e=>{let t=ze||=Re(),n=V,r=B,i=2**Fe,a=i,o=F(i-1),s=F(Fe);for(let i=0;i<Ie;i++){let c=Number(e&o);e>>=s,c>Le&&(c-=a,e+=1n);let l=i*Le,u=l,d=l+Math.abs(c)-1,f=i%2!=0,p=c<0;c===0?r=r.add(Be(f,t[u])):n=n.add(Be(p,t[d]))}return e!==0n&&O(`invalid wnaf`),{p:n,f:r}};function He(e){return`${e}.device-identity.v1`}var Ue=class extends Error{constructor(){super(`This client needs a secure context (HTTPS, or a loopback origin) to create its device key.`),this.name=`InsecureContextError`}};function We(e){let t=``;for(let n of e)t+=String.fromCharCode(n);return btoa(t).replaceAll(`+`,`-`).replaceAll(`/`,`_`).replace(/=+$/g,``)}function Ge(e){let t=e.replaceAll(`-`,`+`).replaceAll(`_`,`/`),n=t+`=`.repeat((4-t.length%4)%4),r=atob(n),i=new Uint8Array(r.length);for(let e=0;e<r.length;e+=1)i[e]=r.charCodeAt(e);return i}function Ke(e){return[...e].map(e=>e.toString(16).padStart(2,`0`)).join(``)}function qe(){return typeof crypto<`u`&&!!crypto.subtle}async function Je(e){let t=await crypto.subtle.digest(`SHA-256`,e.slice().buffer);return Ke(new Uint8Array(t))}function Ye(e){try{let t=globalThis.localStorage?.getItem(He(e));if(!t)return null;let n=JSON.parse(t);return n?.version!==1||typeof n.deviceId!=`string`||typeof n.publicKey!=`string`||typeof n.privateKey!=`string`?null:n}catch{return null}}function Xe(e,t){try{globalThis.localStorage?.setItem(He(e),JSON.stringify(t))}catch{}}async function Ze(e){if(!qe())throw new Ue;let t=Ye(e);if(t){let n=await Je(Ge(t.publicKey));if(n===t.deviceId)return{deviceId:t.deviceId,publicKey:t.publicKey,privateKey:t.privateKey};let r={...t,deviceId:n};return Xe(e,r),{deviceId:n,publicKey:r.publicKey,privateKey:r.privateKey}}let n=Pe.randomSecretKey(),r=await ke(n),i={deviceId:await Je(r),publicKey:We(r),privateKey:We(n)};return Xe(e,{version:1,createdAtMs:Date.now(),...i}),i}async function Qe(e,t){return We(await Me(new TextEncoder().encode(t),Ge(e)))}function $e(e){try{globalThis.localStorage?.removeItem(He(e))}catch{}}function et(e){return Ye(e)!==null}async function tt(e){let t=e.client,n=[...t.scopes],r=e.signedAtMs??Date.now(),i=e.credential,a=y({deviceId:e.identity.deviceId,clientId:t.id,clientMode:t.mode,role:t.role,scopes:n,signedAtMs:r,token:i.kind===`password`?null:i.token,nonce:e.nonce,platform:t.platform}),o=await Qe(e.identity.privateKey,a);return{minProtocol:3,maxProtocol:3,client:{id:t.id,version:t.version,platform:t.platform,mode:t.mode},role:t.role,scopes:n,caps:t.caps?[...t.caps]:[],auth:i.kind===`bootstrap`?{bootstrapToken:i.token}:i.kind===`device`?{deviceToken:i.token}:i.kind===`shared-token`?{token:i.token}:{password:i.password},device:{id:e.identity.deviceId,publicKey:e.identity.publicKey,signature:o,signedAt:r,nonce:e.nonce}}}var U={AUTH_REQUIRED:`AUTH_REQUIRED`,AUTH_UNAUTHORIZED:`AUTH_UNAUTHORIZED`,AUTH_TOKEN_MISSING:`AUTH_TOKEN_MISSING`,AUTH_TOKEN_MISMATCH:`AUTH_TOKEN_MISMATCH`,AUTH_TOKEN_NOT_CONFIGURED:`AUTH_TOKEN_NOT_CONFIGURED`,AUTH_PASSWORD_MISSING:`AUTH_PASSWORD_MISSING`,AUTH_PASSWORD_MISMATCH:`AUTH_PASSWORD_MISMATCH`,AUTH_PASSWORD_NOT_CONFIGURED:`AUTH_PASSWORD_NOT_CONFIGURED`,AUTH_DEVICE_TOKEN_MISMATCH:`AUTH_DEVICE_TOKEN_MISMATCH`,AUTH_RATE_LIMITED:`AUTH_RATE_LIMITED`,AUTH_TAILSCALE_IDENTITY_MISSING:`AUTH_TAILSCALE_IDENTITY_MISSING`,AUTH_TAILSCALE_PROXY_MISSING:`AUTH_TAILSCALE_PROXY_MISSING`,AUTH_TAILSCALE_WHOIS_FAILED:`AUTH_TAILSCALE_WHOIS_FAILED`,AUTH_TAILSCALE_IDENTITY_MISMATCH:`AUTH_TAILSCALE_IDENTITY_MISMATCH`,CONTROL_UI_DEVICE_IDENTITY_REQUIRED:`CONTROL_UI_DEVICE_IDENTITY_REQUIRED`,CLIENT_SHARED_AUTH_NOT_ALLOWED:`CLIENT_SHARED_AUTH_NOT_ALLOWED`,CLIENT_DEVICE_CREDENTIAL_REQUIRED:`CLIENT_DEVICE_CREDENTIAL_REQUIRED`,WEB_CLIENT_ORIGIN_NOT_ALLOWED:`WEB_CLIENT_ORIGIN_NOT_ALLOWED`,DEVICE_IDENTITY_REQUIRED:`DEVICE_IDENTITY_REQUIRED`,DEVICE_AUTH_INVALID:`DEVICE_AUTH_INVALID`,DEVICE_AUTH_DEVICE_ID_MISMATCH:`DEVICE_AUTH_DEVICE_ID_MISMATCH`,DEVICE_AUTH_SIGNATURE_EXPIRED:`DEVICE_AUTH_SIGNATURE_EXPIRED`,DEVICE_AUTH_NONCE_REQUIRED:`DEVICE_AUTH_NONCE_REQUIRED`,DEVICE_AUTH_NONCE_MISMATCH:`DEVICE_AUTH_NONCE_MISMATCH`,DEVICE_AUTH_SIGNATURE_INVALID:`DEVICE_AUTH_SIGNATURE_INVALID`,DEVICE_AUTH_PUBLIC_KEY_INVALID:`DEVICE_AUTH_PUBLIC_KEY_INVALID`,PAIRING_REQUIRED:`PAIRING_REQUIRED`,BOOTSTRAP_TOKEN_INVALID:`bootstrap_token_invalid`,BOOTSTRAP_TOKEN_EXPIRED:`bootstrap_token_expired`,BOOTSTRAP_TOKEN_CONSUMED:`bootstrap_token_consumed`,BOOTSTRAP_TOKEN_DEVICE_MISMATCH:`bootstrap_token_device_mismatch`,BOOTSTRAP_PROFILE_VIOLATION:`bootstrap_profile_violation`};function nt(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e.code;return typeof t==`string`&&t.trim().length>0?t:null}function rt(e){return`${e}.device-credential.v1`}function W(e){return`${e.gatewayUrl}|${e.clientId}`}function G(e){try{let t=globalThis.localStorage?.getItem(rt(e));if(!t)return{version:1,entries:{}};let n=JSON.parse(t);return n?.version!==1||typeof n.entries!=`object`||n.entries===null?{version:1,entries:{}}:{version:1,entries:n.entries}}catch{return{version:1,entries:{}}}}function it(e,t){try{globalThis.localStorage?.setItem(rt(e),JSON.stringify(t))}catch{}}function at(e){let t=G(e.namespace).entries[W(e)];return!t||typeof t.token!=`string`||t.token.length===0||t.deviceId!==e.deviceId?null:t}function ot(e){let t=G(e.namespace),n={deviceId:e.deviceId,token:e.token,role:e.role,scopes:[...e.scopes??[]],updatedAtMs:Date.now()};return t.entries[W(e)]=n,it(e.namespace,t),n}function st(e){let t=G(e.namespace);W(e)in t.entries&&(delete t.entries[W(e)],it(e.namespace,t))}function ct(e){return Object.values(G(e).entries).some(e=>typeof e?.token==`string`&&e.token.length>0)}var lt=750,ut=2e4,dt=800,ft=15e3,pt=5e3,mt=5e3,K=class extends Error{code;details;detailCode;retryable;retryAfterMs;constructor(e){super(e.message),this.name=`GatewayRequestError`,this.code=e.code,this.details=e.details,this.detailCode=nt(e.details),this.retryable=e.retryable??!1,this.retryAfterMs=e.retryAfterMs??null}},ht=1;function gt(e){if(typeof e==`object`&&e&&`data`in e){let t=e.data;return typeof t==`string`?t:``}return``}function _t(e){return new WebSocket(e)}function vt(){return globalThis.crypto?.randomUUID?.()??`r-${Date.now()}-${Math.random().toString(16).slice(2)}`}var yt={[U.AUTH_RATE_LIMITED]:!0,[U.DEVICE_AUTH_SIGNATURE_EXPIRED]:!0,[U.DEVICE_AUTH_NONCE_REQUIRED]:!0,[U.DEVICE_AUTH_NONCE_MISMATCH]:!0};function bt(e){return!(e instanceof K)||e.retryable||e.code===`UNAVAILABLE`||e.code===`RECOVERY_NOT_READY`?!0:e.detailCode!==null&&Object.hasOwn(yt,e.detailCode)}var xt=class{opts;setTimer;clearTimer;ws=null;pending=new Map;identity=null;stopped=!0;status=`offline`;challengeNonce=null;connectSent=!1;challengeTimer=null;reconnectTimer=null;backoffMs=dt;lastFrameAt=0;tickIntervalMs=3e4;livenessTimer=null;livenessProbe=null;lifecycleAttached=!1;pendingCredential=null;credentialWaiter=null;readyWaiters=[];constructor(e){this.opts=e,this.setTimer=e.setTimer??((e,t)=>globalThis.setTimeout(e,t)),this.clearTimer=e.clearTimer??(e=>globalThis.clearTimeout(e))}get gatewayUrl(){return this.opts.gatewayUrl}get connectionStatus(){return this.status}isStopped(){return this.stopped}get deviceId(){return this.identity?.deviceId??null}async ensureIdentity(){return this.identity??=await Ze(this.opts.client.storageNamespace),this.identity}async hasStoredCredential(){let e=await this.ensureIdentity();return at({namespace:this.opts.client.storageNamespace,gatewayUrl:this.opts.gatewayUrl,clientId:this.opts.client.id,deviceId:e.deviceId})!==null}async start(){return await this.hasStoredCredential()?(this.stopped=!1,this.attachLifecycleListeners(),this.openSocket(),!0):(this.setStatus(`offline`),!1)}async presentCredential(e){e.kind===`bootstrap`&&et(this.opts.client.storageNamespace)&&!ct(this.opts.client.storageNamespace)&&($e(this.opts.client.storageNamespace),this.identity=null),await this.ensureIdentity(),this.teardownSocket(),this.stopped=!1,this.attachLifecycleListeners(),this.pendingCredential=e;let t=new Promise((e,t)=>{this.credentialWaiter={resolve:e,reject:t}});return this.openSocket(),t}logout(e){this.stop(),st({namespace:this.opts.client.storageNamespace,gatewayUrl:this.opts.gatewayUrl,clientId:this.opts.client.id}),e?.forgetDevice&&($e(this.opts.client.storageNamespace),this.identity=null)}stop(){this.stopped=!0,this.cancelReconnect(),this.detachLifecycleListeners(),this.teardownSocket(),this.setStatus(`offline`),this.releaseReadyWaiters(Error(`gateway not connected`)),this.pendingCredential=null;let e=this.credentialWaiter;this.credentialWaiter=null,e?.reject(Error(`gateway connection stopped`))}async request(e,t,n){if(await this.waitUntilReady(),n?.canDispatch?.()===!1)throw Error(`gateway connection closed`);let r=this.ws;if(!r||r.readyState!==ht)throw Error(`gateway not connected`);return this.sendRequest(r,e,t)}sendRequest(e,t,n){let r=vt();return new Promise((i,a)=>{this.pending.set(r,{resolve:e=>i(e),reject:a});try{e.send(JSON.stringify({type:`req`,id:r,method:t,params:n}))}catch(e){this.pending.delete(r),a(e instanceof Error?e:Error(String(e)))}})}waitUntilReady(){return this.status===`connected`&&this.ws?.readyState===ht?Promise.resolve():this.stopped?Promise.reject(Error(`gateway not connected`)):new Promise((e,t)=>{let n={resolve:e,reject:t};this.readyWaiters.push(n);let r=this.setTimer(()=>{this.readyWaiters=this.readyWaiters.filter(e=>e!==n),t(Error(`timed out waiting for the gateway connection`))},ut),i=e=>{this.clearTimer(r),e()};n.resolve=()=>i(e),n.reject=e=>i(()=>t(e))})}releaseReadyWaiters(e){let t=this.readyWaiters;this.readyWaiters=[];for(let n of t)e?n.reject(e):n.resolve()}setStatus(e){this.status!==e&&(this.status=e,this.opts.onStatus?.(e))}teardownSocket(){this.challengeTimer!==null&&(this.clearTimer(this.challengeTimer),this.challengeTimer=null),this.stopLivenessWatchdog();let e=this.ws;this.ws=null,this.connectSent=!1,this.challengeNonce=null,this.rejectPending(Error(`gateway connection closed`)),e?.close()}rejectPending(e){let t=[...this.pending.values()];this.pending.clear();for(let n of t)n.reject(e)}cancelReconnect(){this.reconnectTimer!==null&&(this.clearTimer(this.reconnectTimer),this.reconnectTimer=null)}openSocket(){if(this.stopped)return;this.cancelReconnect(),this.ws!==null&&this.teardownSocket();let e=(this.opts.socketFactory??_t)(this.opts.gatewayUrl);this.ws=e,this.lastFrameAt=Date.now(),this.connectSent=!1,this.challengeNonce=null,e.addEventListener(`open`,()=>{e===this.ws&&(this.lastFrameAt=Date.now(),this.handleOpen())}),e.addEventListener(`message`,t=>{e===this.ws&&(this.lastFrameAt=Date.now(),this.handleMessage(gt(t)))}),e.addEventListener(`close`,()=>this.handleClose(e)),e.addEventListener(`error`,()=>{})}handleOpen(){this.challengeTimer=this.setTimer(()=>{this.sendConnect()},lt)}handleClose(e){if(e!==this.ws)return;let t=this.credentialWaiter;if(this.ws=null,this.connectSent=!1,this.rejectPending(Error(`gateway connection closed`)),this.challengeTimer!==null&&(this.clearTimer(this.challengeTimer),this.challengeTimer=null),this.stopLivenessWatchdog(),t&&(this.credentialWaiter=null,this.pendingCredential=null,this.stopped=!0,t.reject(Error(`The gateway closed the connection before accepting the credential.`))),this.stopped){this.setStatus(`offline`),this.releaseReadyWaiters(Error(`gateway not connected`));return}this.setStatus(`reconnecting`);let n=this.backoffMs;this.backoffMs=Math.min(Math.round(this.backoffMs*1.7),ft),this.reconnectTimer=this.setTimer(()=>{this.reconnectTimer=null,this.openSocket()},n)}handleMessage(e){let t;try{t=JSON.parse(e)}catch{return}if(typeof t!=`object`||!t)return;let n=t;if(n.type===`event`){let e=t;if(e.event===`connect.challenge`){let t=e.payload?.nonce;typeof t==`string`&&t.trim()&&(this.challengeNonce=t.trim(),this.sendConnect());return}this.opts.onEvent?.(e);return}if(n.type===`res`){let e=t,n=this.pending.get(e.id);if(!n)return;if(this.pending.delete(e.id),e.ok){n.resolve(e.payload);return}n.reject(new K({code:e.error?.code??`UNAVAILABLE`,message:e.error?.message??`request failed`,details:e.error?.details,retryable:e.error?.retryable===!0,retryAfterMs:typeof e.error?.retryAfterMs==`number`?e.error.retryAfterMs:null}))}}async sendConnect(){if(this.connectSent)return;this.connectSent=!0,this.challengeTimer!==null&&(this.clearTimer(this.challengeTimer),this.challengeTimer=null);let e=this.ws;if(!e||e.readyState!==ht)return;let t;try{t=await this.ensureIdentity()}catch(e){this.failAuth({code:`DEVICE_IDENTITY_UNAVAILABLE`,detailCode:null,message:e instanceof Error?e.message:String(e),needsOnboarding:!0});return}if(e!==this.ws)return;let n=this.pendingCredential,r=n?null:at({namespace:this.opts.client.storageNamespace,gatewayUrl:this.opts.gatewayUrl,clientId:this.opts.client.id,deviceId:t.deviceId});if(!n&&!r){this.stopped=!0,this.setStatus(`offline`),e.close();return}let i=await tt({client:this.opts.client,identity:t,credential:n??{kind:`device`,token:r?.token??``},nonce:this.challengeNonce??``});if(e===this.ws)try{let n=await this.sendRequest(e,`connect`,i);if(e!==this.ws)return;this.handleHello(n,t)}catch(t){if(e!==this.ws)return;this.handleConnectRejection(t,!!n)}}handleHello(e,t){let n=e?.auth?.deviceToken;n&&(ot({namespace:this.opts.client.storageNamespace,gatewayUrl:this.opts.gatewayUrl,clientId:this.opts.client.id,deviceId:t.deviceId,token:n,role:e.auth?.role??this.opts.client.role,scopes:e.auth?.scopes??[...this.opts.client.scopes]}),this.pendingCredential=null),this.backoffMs=dt,this.tickIntervalMs=e.policy?.tickIntervalMs??3e4,this.setStatus(`connected`),this.startLivenessWatchdog(),this.opts.onHello?.(e);let r=this.credentialWaiter;this.credentialWaiter=null,r?.resolve(),this.releaseReadyWaiters()}handleConnectRejection(e,t){if(this.credentialWaiter===null&&bt(e)){this.recoverTransientConnectFailure(e);return}let n=e instanceof K?e:null,r={code:n?.code??`UNAVAILABLE`,detailCode:n?.detailCode??null,message:n?.message??(e instanceof Error?e.message:String(e)),needsOnboarding:!0};t||st({namespace:this.opts.client.storageNamespace,gatewayUrl:this.opts.gatewayUrl,clientId:this.opts.client.id}),this.pendingCredential=null,this.stopped=!0,this.cancelReconnect();let i=this.credentialWaiter;this.credentialWaiter=null,this.ws?.close(),this.failAuth(r),i?.reject(Error(r.message))}recoverTransientConnectFailure(e){e instanceof K&&(e.retryAfterMs!==null&&e.retryAfterMs>this.backoffMs?this.backoffMs=e.retryAfterMs:e.detailCode===U.AUTH_RATE_LIMITED&&(this.backoffMs=ft));let t=this.ws;t?.close(),t!==null&&t===this.ws&&this.handleClose(t)}forceReconnect(e){let t=this.ws;t&&(t.close(4e3,e),this.handleClose(t))}startLivenessWatchdog(){this.stopLivenessWatchdog();let e=()=>{if(this.livenessTimer=null,Date.now()-this.lastFrameAt>2*this.tickIntervalMs){this.forceReconnect(`tick timeout`);return}this.livenessTimer=this.setTimer(e,this.tickIntervalMs)};this.livenessTimer=this.setTimer(e,this.tickIntervalMs)}stopLivenessWatchdog(){this.livenessTimer!==null&&(this.clearTimer(this.livenessTimer),this.livenessTimer=null)}verifyLive(e=pt){if(this.livenessProbe!==null)return this.livenessProbe;let t=this.ws;if(this.status!==`connected`||!t||t.readyState!==ht)return Promise.resolve(!1);let n=this.runLivenessProbe(t,e);return this.livenessProbe=n,n.then(()=>{this.livenessProbe===n&&(this.livenessProbe=null)}),n}runLivenessProbe(e,t){return new Promise(n=>{let r=null,i=!1,a=e=>{i||(i=!0,r!==null&&this.clearTimer(r),n(e))};this.sendRequest(e,`health`).then(()=>a(!0),e=>a(e instanceof K)),r=this.setTimer(()=>{r=null,e===this.ws&&this.status===`connected`&&this.forceReconnect(`liveness probe timeout`),a(!1)},t)})}attachLifecycleListeners(){typeof window>`u`||this.lifecycleAttached||(this.lifecycleAttached=!0,window.addEventListener(`online`,this.handlePageResume),window.addEventListener(`pageshow`,this.handlePageResume),document.addEventListener(`visibilitychange`,this.handlePageResume),document.addEventListener(`resume`,this.handlePageResume))}detachLifecycleListeners(){this.lifecycleAttached&&(this.lifecycleAttached=!1,window.removeEventListener(`online`,this.handlePageResume),window.removeEventListener(`pageshow`,this.handlePageResume),document.removeEventListener(`visibilitychange`,this.handlePageResume),document.removeEventListener(`resume`,this.handlePageResume))}handlePageResume=e=>{if(!this.stopped&&!(e.type===`visibilitychange`&&document.visibilityState!==`visible`)){if(this.status===`reconnecting`){if(this.ws!==null){if(Date.now()-this.lastFrameAt>2*this.tickIntervalMs){this.forceReconnect(`stale handshake on resume`);return}return}this.cancelReconnect(),this.backoffMs=dt,this.openSocket();return}if(this.status===`connected`&&Date.now()-this.lastFrameAt>2*this.tickIntervalMs){this.forceReconnect(`stale on resume`);return}this.status===`connected`&&Date.now()-this.lastFrameAt>mt&&this.verifyLive()}};failAuth(e){this.setStatus(`offline`),this.releaseReadyWaiters(Error(e.message)),this.opts.onAuthFailure?.(e)}},St=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},Ct=(e=>e?St(e):St),wt=e=>e;function Tt(e,t=wt){let n=d.useSyncExternalStore(e.subscribe,d.useCallback(()=>t(e.getState()),[e,t]),d.useCallback(()=>t(e.getInitialState()),[e,t]));return d.useDebugValue(n),n}var Et=e=>{let t=Ct(e),n=e=>Tt(t,e);return Object.assign(n,t),n},q=(e=>e?Et(e):Et),Dt={pending:[],panelOpen:!1},Ot=500,J=new Map;function kt(e){let t=J.get(e);t!==void 0&&(clearTimeout(t),J.delete(e))}function At(e){if(typeof e!=`object`||!e||Array.isArray(e)||!(`id`in e)||typeof e.id!=`string`||e.id.length===0)return null;let t=`request`in e&&typeof e.request==`object`&&e.request!==null?e.request:{},n=`expiresAtMs`in e&&typeof e.expiresAtMs==`number`&&e.expiresAtMs>0?e.expiresAtMs:void 0;return{id:e.id,request:t,expiresAtMs:n}}function Y(e){return typeof e==`string`&&e.trim().length>0?e:null}var jt=q()((e,t)=>({...Dt,requested:n=>{let r=At(n);if(!r)return;let i={id:r.id,sessionKey:Y(r.request.sessionKey),agentId:Y(r.request.agentId),command:Y(r.request.command),cwd:Y(r.request.cwd),...r.expiresAtMs===void 0?{}:{expiresAtMs:r.expiresAtMs}};if(e(e=>({pending:[...e.pending.filter(e=>e.id!==i.id),i]})),kt(i.id),i.expiresAtMs!==void 0){let e=Math.max(0,i.expiresAtMs-Date.now()+Ot);J.set(i.id,window.setTimeout(()=>{t().remove(i.id)},e))}},resolved:e=>{let n=At(e);n&&t().remove(n.id)},remove:t=>{kt(t),e(e=>({pending:e.pending.filter(e=>e.id!==t)}))},openPanel:()=>{e({panelOpen:!0})},closePanel:()=>{e({panelOpen:!1})},reset:()=>{for(let e of J.values())window.clearTimeout(e);J.clear(),e({...Dt})}})),Mt=1,Nt=q()(e=>({entries:[],record:(t,n)=>e(e=>({entries:[{id:Mt++,ts:Date.now(),event:t,payload:n},...e.entries].slice(0,250)})),clear:()=>e({entries:[]})})),Pt={status:`offline`,hello:null,authFailure:null,booted:!1,needsSignIn:!0},X=null,Ft=null,Z=new Map,It=0;function Lt(e,t){for(let n of Z.get(e)??[])n(t)}var Rt=q()((e,t)=>({...Pt,boot:(t,n)=>(Ft??=(async()=>{X=new xt({client:h,gatewayUrl:t.gatewayUrl,socketFactory:n?.socketFactory,onStatus:t=>{e({status:t})},onHello:t=>{e({hello:t,needsSignIn:!1,authFailure:null})},onAuthFailure:t=>{e({authFailure:t,needsSignIn:!0})},onEvent:e=>{Nt.getState().record(e.event,e.payload),Lt(e.event,e.payload)}}),e(await X.start().catch(()=>!1)?{needsSignIn:!1}:{status:`offline`,needsSignIn:!0}),e({booted:!0})})(),Ft),signIn:async n=>{e({authFailure:null});let r=X;if(!r)return;let i=It;try{await r.presentCredential(n)}catch(n){i===It&&!t().authFailure&&e({authFailure:{code:`UNAVAILABLE`,detailCode:null,message:n instanceof Error?n.message:String(n),needsOnboarding:!1},needsSignIn:!0})}},signOut:()=>{It+=1,X?.logout(),jt.getState().reset(),e({hello:null,authFailure:null,needsSignIn:!0,status:`offline`})},request:async(e,t)=>{let n=X;if(!n)throw Error(`gateway not connected`);return n.request(e,t)},subscribe:(e,t)=>{let n=Z.get(e)??new Set;return n.add(t),Z.set(e,n),()=>{let n=Z.get(e);n&&(n.delete(t),n.size===0&&Z.delete(e))}},reset:()=>{It+=1,X?.stop(),X=null,Ft=null,Z.clear(),e({...Pt})}})),zt=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),Bt=o(((e,t)=>{t.exports=zt()})),Vt=Bt();function Ht({message:e,hint:t,tone:n=`neutral`,testId:r}){return(0,Vt.jsxs)(`div`,{className:`ct-empty ct-empty--${n}`,role:n===`error`?`alert`:void 0,"aria-busy":n===`loading`||void 0,"data-testid":r,children:[(0,Vt.jsx)(`p`,{className:`ct-empty__message`,children:e}),t===void 0?null:(0,Vt.jsx)(`p`,{className:`ct-empty__hint`,children:t})]})}var Q=6e4,$=60*Q,Ut=24*$;function Wt(e){if(typeof e==`number`)return Number.isFinite(e)?e:null;if(typeof e==`string`&&e.length>0){let t=Date.parse(e);return Number.isNaN(t)?null:t}return null}function Gt(e,t=Date.now()){let n=Wt(e);if(n===null)return`—`;let r=t-n;if(r<0){let e=-r;return e<Q?`in under a minute`:e<$?`in ${Math.round(e/Q)}m`:e<Ut?`in ${Math.round(e/$)}h`:`in ${Math.round(e/Ut)}d`}return r<Q?`just now`:r<$?`${Math.floor(r/Q)}m ago`:r<Ut?`${Math.floor(r/$)}h ago`:`${Math.floor(r/Ut)}d ago`}function Kt(e){if(typeof e!=`number`||!Number.isFinite(e)||e<0)return`—`;let t=Math.round(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60);return n<60?`${n}m ${String(t%60).padStart(2,`0`)}s`:`${Math.floor(n/60)}h ${String(n%60).padStart(2,`0`)}m`}function qt(e){return typeof e!=`number`||!Number.isFinite(e)?`—`:e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(Math.round(e))}function Jt(e,t=`USD`){return typeof e!=`number`||!Number.isFinite(e)?`—`:new Intl.NumberFormat(`en-AU`,{style:`currency`,currency:t,currencyDisplay:`narrowSymbol`,minimumFractionDigits:2,maximumFractionDigits:e!==0&&Math.abs(e)<1?4:2}).format(e)}function Yt(e){return e instanceof Error?e.message:String(e)}export{c as _,qt as a,Bt as c,jt as d,q as f,o as g,u as h,Gt as i,Rt as l,m,Jt as n,Wt as o,U as p,Kt as r,Ht as s,Yt as t,Nt as u};
|
package/dist/control-ui-v2/assets/{gateway-features-cO4oPTtR.js → gateway-features-BO759ssE.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{l as e}from"./format-
|
|
1
|
+
import{l as e}from"./format-CDdlmhUx.js";function t(e,t){return e?.features?.methods?.includes(t)??!1}function n(n){return e(e=>t(e.hello,n))}function r(e,t){return e?.features?.capabilities?.includes(t)??!1}function i(t){return e(e=>r(e.hello,t))}export{i as n,n as r,t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as e,c as t,d as n,f as r,g as i,h as a,l as o,m as s,p as c,s as l,t as u}from"./format-B5-CxWkB.js";import{i as d,r as f}from"./runs-store-D8Ckq4AP.js";import{t as p}from"./gateway-features-cO4oPTtR.js";import{a as m,c as h,d as g,f as _,l as v,n as y,o as b,r as x,s as ee,t as te,u as ne}from"./links-Cc4kr7jc.js";import{t as re}from"./Button-CAmVftjk.js";import{n as ie,t as ae}from"./Dialog-GhMZjPwr.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var oe=i((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,ee||(ee=!0,oe());else{var t=n(l);t!==null&&le(x,t.startTime-e)}}var ee=!1,te=-1,ne=5,re=-1;function ie(){return g?!0:!(e.unstable_now()-re<ne)}function ae(){if(g=!1,ee){var t=e.unstable_now();re=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(te),te=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&ie());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&le(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?oe():ee=!1}}}var oe;if(typeof y==`function`)oe=function(){y(ae)};else if(typeof MessageChannel<`u`){var se=new MessageChannel,ce=se.port2;se.port1.onmessage=ae,oe=function(){ce.postMessage(null)}}else oe=function(){_(ae,0)};function le(t,n){te=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):ne=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(te),te=-1):h=!0,le(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,ee||(ee=!0,oe()))),r},e.unstable_shouldYield=ie,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),se=i(((e,t)=>{t.exports=oe()})),ce=i((e=>{var t=a();function n(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function r(){}var i={d:{f:r,r:function(){throw Error(n(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},o=Symbol.for(`react.portal`);function s(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var c=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function l(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,e.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(n(299));return s(e,t,null,r)},e.flushSync=function(e){var t=c.T,n=i.p;try{if(c.T=null,i.p=2,e)return e()}finally{c.T=t,i.p=n,i.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,i.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&i.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin),a=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?i.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:a,fetchPriority:o}):n===`script`&&i.d.X(e,{crossOrigin:r,integrity:a,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`)if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=l(t.as,t.crossOrigin);i.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??i.d.M(e)},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin);i.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`)if(t){var n=l(t.as,t.crossOrigin);i.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else i.d.m(e)},e.requestFormReset=function(e){i.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return c.H.useFormState(e,t,n)},e.useFormStatus=function(){return c.H.useHostTransitionStatus()},e.version=`19.2.4`})),le=i(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=ce()})),ue=i((e=>{var t=se(),n=a(),r=le();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function o(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function s(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function c(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function u(e){if(s(e)!==e)throw Error(i(188))}function d(e){var t=e.alternate;if(!t){if(t=s(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var o=a.alternate;if(o===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===o.child){for(o=a.child;o;){if(o===n)return u(a),e;if(o===r)return u(a),t;o=o.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=o;else{for(var c=!1,l=a.child;l;){if(l===n){c=!0,n=a,r=o;break}if(l===r){c=!0,r=a,n=o;break}l=l.sibling}if(!c){for(l=o.child;l;){if(l===n){c=!0,n=o,r=a;break}if(l===r){c=!0,r=o,n=a;break}l=l.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function f(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=f(e),t!==null)return t;e=e.sibling}return null}var p=Object.assign,m=Symbol.for(`react.element`),h=Symbol.for(`react.transitional.element`),g=Symbol.for(`react.portal`),_=Symbol.for(`react.fragment`),v=Symbol.for(`react.strict_mode`),y=Symbol.for(`react.profiler`),b=Symbol.for(`react.consumer`),x=Symbol.for(`react.context`),ee=Symbol.for(`react.forward_ref`),te=Symbol.for(`react.suspense`),ne=Symbol.for(`react.suspense_list`),re=Symbol.for(`react.memo`),ie=Symbol.for(`react.lazy`),ae=Symbol.for(`react.activity`),oe=Symbol.for(`react.memo_cache_sentinel`),ce=Symbol.iterator;function ue(e){return typeof e!=`object`||!e?null:(e=ce&&e[ce]||e[`@@iterator`],typeof e==`function`?e:null)}var de=Symbol.for(`react.client.reference`);function S(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===de?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case _:return`Fragment`;case y:return`Profiler`;case v:return`StrictMode`;case te:return`Suspense`;case ne:return`SuspenseList`;case ae:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case g:return`Portal`;case x:return e.displayName||`Context`;case b:return(e._context.displayName||`Context`)+`.Consumer`;case ee:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case re:return t=e.displayName||null,t===null?S(e.type)||`Memo`:t;case ie:t=e._payload,e=e._init;try{return S(e(t))}catch{}}return null}var fe=Array.isArray,C=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,w=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,pe={pending:!1,data:null,method:null,action:null},me=[],T=-1;function he(e){return{current:e}}function E(e){0>T||(e.current=me[T],me[T]=null,T--)}function D(e,t){T++,me[T]=e.current,e.current=t}var ge=he(null),_e=he(null),ve=he(null),ye=he(null);function be(e,t){switch(D(ve,t),D(_e,e),D(ge,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Vd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Vd(t),e=Hd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}E(ge),D(ge,e)}function xe(){E(ge),E(_e),E(ve)}function Se(e){e.memoizedState!==null&&D(ye,e);var t=ge.current,n=Hd(t,e.type);t!==n&&(D(_e,e),D(ge,n))}function Ce(e){_e.current===e&&(E(ge),E(_e)),ye.current===e&&(E(ye),Qf._currentValue=pe)}var we,O;function Te(e){if(we===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);we=t&&t[1]||``,O=-1<e.stack.indexOf(`
|
|
1
|
+
import{_ as e,c as t,d as n,f as r,g as i,h as a,l as o,m as s,p as c,s as l,t as u}from"./format-CDdlmhUx.js";import{i as d,r as f}from"./runs-store-CBxmiHic.js";import{t as p}from"./gateway-features-BO759ssE.js";import{a as m,c as h,d as g,f as _,l as v,n as y,o as b,r as x,s as ee,t as te,u as ne}from"./links-CQf0Dstl.js";import{t as re}from"./Button-sKbvzDVv.js";import{n as ie,t as ae}from"./Dialog-C3D58UYL.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var oe=i((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,ee||(ee=!0,oe());else{var t=n(l);t!==null&&le(x,t.startTime-e)}}var ee=!1,te=-1,ne=5,re=-1;function ie(){return g?!0:!(e.unstable_now()-re<ne)}function ae(){if(g=!1,ee){var t=e.unstable_now();re=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(te),te=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&ie());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&le(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?oe():ee=!1}}}var oe;if(typeof y==`function`)oe=function(){y(ae)};else if(typeof MessageChannel<`u`){var se=new MessageChannel,ce=se.port2;se.port1.onmessage=ae,oe=function(){ce.postMessage(null)}}else oe=function(){_(ae,0)};function le(t,n){te=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):ne=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(te),te=-1):h=!0,le(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,ee||(ee=!0,oe()))),r},e.unstable_shouldYield=ie,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),se=i(((e,t)=>{t.exports=oe()})),ce=i((e=>{var t=a();function n(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function r(){}var i={d:{f:r,r:function(){throw Error(n(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},o=Symbol.for(`react.portal`);function s(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var c=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function l(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,e.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(n(299));return s(e,t,null,r)},e.flushSync=function(e){var t=c.T,n=i.p;try{if(c.T=null,i.p=2,e)return e()}finally{c.T=t,i.p=n,i.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,i.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&i.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin),a=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?i.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:a,fetchPriority:o}):n===`script`&&i.d.X(e,{crossOrigin:r,integrity:a,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`)if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=l(t.as,t.crossOrigin);i.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??i.d.M(e)},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin);i.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`)if(t){var n=l(t.as,t.crossOrigin);i.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else i.d.m(e)},e.requestFormReset=function(e){i.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return c.H.useFormState(e,t,n)},e.useFormStatus=function(){return c.H.useHostTransitionStatus()},e.version=`19.2.4`})),le=i(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=ce()})),ue=i((e=>{var t=se(),n=a(),r=le();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function o(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function s(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function c(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function u(e){if(s(e)!==e)throw Error(i(188))}function d(e){var t=e.alternate;if(!t){if(t=s(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var o=a.alternate;if(o===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===o.child){for(o=a.child;o;){if(o===n)return u(a),e;if(o===r)return u(a),t;o=o.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=o;else{for(var c=!1,l=a.child;l;){if(l===n){c=!0,n=a,r=o;break}if(l===r){c=!0,r=a,n=o;break}l=l.sibling}if(!c){for(l=o.child;l;){if(l===n){c=!0,n=o,r=a;break}if(l===r){c=!0,r=o,n=a;break}l=l.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function f(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=f(e),t!==null)return t;e=e.sibling}return null}var p=Object.assign,m=Symbol.for(`react.element`),h=Symbol.for(`react.transitional.element`),g=Symbol.for(`react.portal`),_=Symbol.for(`react.fragment`),v=Symbol.for(`react.strict_mode`),y=Symbol.for(`react.profiler`),b=Symbol.for(`react.consumer`),x=Symbol.for(`react.context`),ee=Symbol.for(`react.forward_ref`),te=Symbol.for(`react.suspense`),ne=Symbol.for(`react.suspense_list`),re=Symbol.for(`react.memo`),ie=Symbol.for(`react.lazy`),ae=Symbol.for(`react.activity`),oe=Symbol.for(`react.memo_cache_sentinel`),ce=Symbol.iterator;function ue(e){return typeof e!=`object`||!e?null:(e=ce&&e[ce]||e[`@@iterator`],typeof e==`function`?e:null)}var de=Symbol.for(`react.client.reference`);function S(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===de?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case _:return`Fragment`;case y:return`Profiler`;case v:return`StrictMode`;case te:return`Suspense`;case ne:return`SuspenseList`;case ae:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case g:return`Portal`;case x:return e.displayName||`Context`;case b:return(e._context.displayName||`Context`)+`.Consumer`;case ee:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case re:return t=e.displayName||null,t===null?S(e.type)||`Memo`:t;case ie:t=e._payload,e=e._init;try{return S(e(t))}catch{}}return null}var fe=Array.isArray,C=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,w=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,pe={pending:!1,data:null,method:null,action:null},me=[],T=-1;function he(e){return{current:e}}function E(e){0>T||(e.current=me[T],me[T]=null,T--)}function D(e,t){T++,me[T]=e.current,e.current=t}var ge=he(null),_e=he(null),ve=he(null),ye=he(null);function be(e,t){switch(D(ve,t),D(_e,e),D(ge,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Vd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Vd(t),e=Hd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}E(ge),D(ge,e)}function xe(){E(ge),E(_e),E(ve)}function Se(e){e.memoizedState!==null&&D(ye,e);var t=ge.current,n=Hd(t,e.type);t!==n&&(D(_e,e),D(ge,n))}function Ce(e){_e.current===e&&(E(ge),E(_e)),ye.current===e&&(E(ye),Qf._currentValue=pe)}var we,O;function Te(e){if(we===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);we=t&&t[1]||``,O=-1<e.stack.indexOf(`
|
|
2
2
|
at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
|
|
3
3
|
`+we+e+O}var Ee=!1;function De(e,t){if(!e||Ee)return``;Ee=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
|
|
4
4
|
`),l=s.split(`
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./OverviewView-
|
|
2
|
-
import{_ as e,h as t}from"./format-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./OverviewView-JLhTfCru.js","./format-CDdlmhUx.js","./runs-store-CBxmiHic.js","./index-DbvFKOkE.js","./gateway-features-BO759ssE.js","./Button-sKbvzDVv.js","./Dialog-C3D58UYL.js","./index-CYyjTEZb.css","./use-gateway-query-Dd6G1xB1.js","./Panel-D78gp_RZ.js","./EntityLink-Z9K13Z04.js","./Stat-CXVUEU8q.js","./StatusDot-BOn9P0HR.js","./usage-range-C-j75vK8.js","./UpdatedAgo-CGh7wGn5.js","./Badge-BThfbCAq.js","./run-rows-B7a70RYo.js","./SessionsView-CMPY9Hgt.js","./DataTable-DYjiiFEO.js","./FilterPills-KLG4v-tl.js","./PluginPanels-BleAmjiK.js","./PluginMount-DYlgGaMj.js","./SessionsView-CWUQ8JCr.css","./RunsView-BSGqEHKy.js","./UsageView-D8N9_FXE.js","./LogsView-Dy215edw.js","./DebugView-BBnZon9I.js","./DebugView-C3ed9ljl.css","./AgentsView-BykJAM_R.js","./config-store-CvkpUhCj.js","./form-utils-BkwTm73v.js","./skills-model-DANiC-ui.js","./AgentsView-CTSdnLGm.css","./AutomationsView-DC7X5Cuq.js","./AutomationsView-BVbhWi9I.css","./ChannelsView-HkWy9hsS.js","./ConfigForm-BJ2kFOXh.js","./ConfigForm-DyPX24b_.css","./ConfirmDialog-CdyUa20w.js","./ChannelsView-DHXXjPnu.css","./SkillsView-BWwsXZqF.js","./SkillsView-DeHnMV3Z.css","./SettingsView-D4QcuA0E.js","./SettingsView-CAodlnAF.css","./NodesView-B71zmfhs.js","./NodesView-uPrFn0X3.css","./InstancesView-LuIMblfp.js","./InstancesView-DukTMUBS.css","./StorageView-Bn5jFxV6.js","./StorageView-CYNrg430.css","./LearningView-C2puhMj4.js","./LearningView-DyJYn6RQ.css","./DreamsView-DrwwXxFE.js","./DreamsView-DzYPa7vA.css","./PluginPageView-Bg02Y5T6.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{_ as e,h as t}from"./format-CDdlmhUx.js";import{t as n}from"./gateway-features-BO759ssE.js";var r=e(t(),1),i=`modulepreload`,a=function(e,t){return new URL(e,t).href},o={},s=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),s=document.querySelector(`meta[property=csp-nonce]`),c=s?.nonce||s?.getAttribute(`nonce`);function l(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function u(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=l(t.map(t=>{if(t=a(t,n),t=u(t),t in o)return;o[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let s=document.createElement(`link`);if(s.rel=r?`stylesheet`:i,r||(s.as=`script`),s.crossOrigin=``,s.href=t,c&&s.setAttribute(`nonce`,c),document.head.appendChild(s),r)return new Promise((e,n)=>{s.addEventListener(`load`,e),s.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function s(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&s(e.reason);return e().catch(s)})},c=[`overview`,`sessions`,`runs`,`usage`,`logs`,`debug`,`agents`,`automations`,`channels`,`skills`,`settings`,`nodes`,`instances`,`storage`,`learning`,`dreams`,`plugin`],l={overview:`Overview`,sessions:`Sessions`,runs:`Runs`,usage:`Usage`,logs:`Logs`,debug:`Debug`,agents:`Agents`,automations:`Automations`,channels:`Channels`,skills:`Skills`,settings:`Settings`,nodes:`Nodes & devices`,instances:`Instances`,storage:`Storage`,learning:`Learning`,dreams:`Dreams`,plugin:`Plugin page`},u=[`Monitor`,`Configure`,`Fleet`,`Learning`,`Plugins`],d={overview:{group:`Monitor`,load:()=>s(()=>import(`./OverviewView-JLhTfCru.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]),import.meta.url)},sessions:{group:`Monitor`,load:()=>s(()=>import(`./SessionsView-CMPY9Hgt.js`),__vite__mapDeps([17,1,2,4,5,3,6,7,8,15,9,10,11,18,19,13,14,20,21,22]),import.meta.url)},runs:{group:`Monitor`,load:()=>s(()=>import(`./RunsView-BSGqEHKy.js`),__vite__mapDeps([23,1,2,5,6,3,4,7,8,15,9,10,18,19,12,14,16,20,21]),import.meta.url)},usage:{group:`Monitor`,load:()=>s(()=>import(`./UsageView-D8N9_FXE.js`),__vite__mapDeps([24,1,8,3,2,4,5,6,7,9,10,11,18,13,14,15]),import.meta.url)},logs:{group:`Monitor`,load:()=>s(()=>import(`./LogsView-Dy215edw.js`),__vite__mapDeps([25,1,5,3,2,4,6,7,9,19]),import.meta.url)},debug:{group:`Monitor`,load:()=>s(()=>import(`./DebugView-BBnZon9I.js`),__vite__mapDeps([26,1,5,3,2,4,6,7,8,9,27]),import.meta.url)},agents:{group:`Configure`,load:()=>s(()=>import(`./AgentsView-BykJAM_R.js`),__vite__mapDeps([28,1,5,6,29,30,8,3,2,4,7,15,9,10,11,31,32]),import.meta.url)},automations:{group:`Configure`,load:()=>s(()=>import(`./AutomationsView-DC7X5Cuq.js`),__vite__mapDeps([33,1,5,6,8,3,2,4,7,15,9,10,11,18,19,12,34]),import.meta.url)},channels:{group:`Configure`,load:()=>s(()=>import(`./ChannelsView-HkWy9hsS.js`),__vite__mapDeps([35,1,5,29,30,8,3,2,4,6,7,9,36,37,38,39]),import.meta.url)},skills:{group:`Configure`,load:()=>s(()=>import(`./SkillsView-BWwsXZqF.js`),__vite__mapDeps([40,1,5,8,3,2,4,6,7,15,9,31,41]),import.meta.url)},settings:{group:`Configure`,load:()=>s(()=>import(`./SettingsView-D4QcuA0E.js`),__vite__mapDeps([42,1,5,6,29,30,15,36,37,43]),import.meta.url)},nodes:{group:`Fleet`,load:()=>s(()=>import(`./NodesView-B71zmfhs.js`),__vite__mapDeps([44,1,5,6,3,2,4,7,30,8,15,9,18,19,12,38,45]),import.meta.url)},instances:{group:`Fleet`,load:()=>s(()=>import(`./InstancesView-LuIMblfp.js`),__vite__mapDeps([46,1,5,8,3,2,4,6,7,9,47]),import.meta.url)},storage:{group:`Fleet`,requiresMethod:`sessions.storage.status`,load:()=>s(()=>import(`./StorageView-Bn5jFxV6.js`),__vite__mapDeps([48,1,5,8,3,2,4,6,7,15,9,11,18,12,38,49]),import.meta.url)},learning:{group:`Learning`,requiresMethod:`learning.overview`,load:()=>s(()=>import(`./LearningView-C2puhMj4.js`),__vite__mapDeps([50,1,5,8,3,2,4,6,7,15,9,10,11,18,19,38,51]),import.meta.url)},dreams:{group:`Learning`,requiresMethod:`dream.status`,load:()=>s(()=>import(`./DreamsView-DrwwXxFE.js`),__vite__mapDeps([52,1,4,8,3,2,5,6,7,15,9,18,53]),import.meta.url)},plugin:{group:`Plugins`,requiresMethod:`plugins.controlUi.list`,navHidden:!0,load:()=>s(()=>import(`./PluginPageView-Bg02Y5T6.js`),__vite__mapDeps([54,1,3,2,4,5,6,7,21]),import.meta.url)}};function f(e,t){return e.requiresMethod===void 0||n(t,e.requiresMethod)}var p=`/`,m=new Set,h=null;function g(e){let t=e.startsWith(`/`)?e:`/${e}`;return t.endsWith(`/`)?t:`${t}/`}function _(e){p=g(e),h=null}function v(e){return c.includes(e)}function y(e){let t=(e.startsWith(p)?e.slice(p.length):e).replace(/^\/+/,``).split(`/`)[0]??``;return v(t)?t:`overview`}function b(e){return v((e.startsWith(p)?e.slice(p.length):e).replace(/^\/+/,``).split(`/`)[0]??``)}function x(){h=null;for(let e of m)e()}function S(e){return m.add(e),()=>{m.delete(e)}}function C(){let e=window.location.href;return(h===null||h.href!==e)&&(h={href:e,route:{view:y(window.location.pathname),params:new URLSearchParams(window.location.search)}}),h.route}function w(e,t){let n=t?new URLSearchParams(t).toString():``;return`${p}${e}${n?`?${n}`:``}`}function T(e,t){window.history.pushState({},``,w(e,t)),x()}function E(){let e=(0,r.useSyncExternalStore)(S,C,C);return(0,r.useEffect)(()=>{b(window.location.pathname)||(window.history.replaceState({},``,`${p}overview`),x())},[e]),e}typeof window<`u`&&window.addEventListener(`popstate`,x);var D={session(e,t={}){let n={session:e},r=t.tab??(t.entry!==void 0||t.run!==void 0?`transcript`:void 0);return r!==void 0&&r!==`overview`&&(n.tab=r),t.entry!==void 0&&(n.entry=t.entry),t.run!==void 0&&(n.run=t.run),{view:`sessions`,params:n}},sessions(e={}){return{view:`sessions`,params:k({agent:e.agent})}},run(e){return{view:`runs`,params:{run:e}}},runs(e={}){return{view:`runs`,params:k({session:e.session,agent:e.agent,filter:e.filter&&e.filter!==`all`?e.filter:void 0})}},agent(e,t){return{view:`agents`,params:k({agent:e,tab:t&&t!==`overview`?t:void 0})}},automation(e){return{view:`automations`,params:{job:e}}},view(e){return{view:e,params:{}}}};function O(e){T(e.view,e.params)}function k(e){let t={};for(let[n,r]of Object.entries(e))r!==void 0&&(t[n]=r);return t}export{T as a,d as c,f as d,s as f,w as i,c as l,D as n,E as o,_ as r,u as s,O as t,l as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./format-
|
|
1
|
+
import{o as e}from"./format-CDdlmhUx.js";import{o as t,t as n}from"./runs-store-CBxmiHic.js";var r={all:`All`,queued:`Queued`,running:`Running`,needs:`Needs attention`,failed:`Failed`,done:`Done`},i={queued:`neutral`,running:`accent`,needs:`warn`,failed:`danger`,done:`ok`};function a(t,r){return{entry:t,filter:n(t),agent:r?.agentId??null,kind:r?.kind??`session`,sessionKey:r?.sessionKey??null,runId:r?.runId??null,sessionRunId:t.id,startedAt:e(r?.startedAt??r?.updatedAt),endedAt:e(r?.completedAt),decisionVersion:r?.decisionVersion??null}}function o(e){return e.map(e=>a(t(e),e))}function s(t){if(!t)return[];let r=new Map(t.lists.sessions.rows.map(e=>[e.sessionRunId,e])),i=new Map(t.lists.tasks.rows.map(e=>[e.taskRunId,e]));return t.entries.map(t=>{let o={entry:t,filter:n(t),agent:null,kind:t.kind===`work`?`queued task`:`task`,sessionKey:null,runId:null,sessionRunId:null,startedAt:e(t.changedAt),endedAt:null,decisionVersion:null};if(t.kind===`session`)return a(t,r.get(t.id));if(t.kind===`task`){let n=i.get(t.id);return{...o,startedAt:e(n?.startedAt??n?.createdAt),endedAt:e(n?.completedAt)}}return o})}function c(e,t=Date.now()){return e.startedAt===null?null:e.endedAt===null?e.filter===`running`?t-e.startedAt:null:e.endedAt-e.startedAt}export{c as a,o as i,i as n,a as o,s as r,r as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as e}from"./format-CDdlmhUx.js";var t=[`queued`,`running`,`action-needed`,`terminal`],n={pending:`running`,running:`running`,retrying:`running`,preempted:`running`,deferred:`running`,completed:`terminal`,failed:`terminal`,dlq:`terminal`,preempted_ceiling:`terminal`,rolled_back:`terminal`,cancelled:`terminal`},r={pending:`queued`,running:`running`,recovering:`running`,completed:`terminal`,failed:`terminal`,cancelled:`terminal`,abandoned:`terminal`,interrupted:`action-needed`,needs_recovery_decision:`action-needed`};function i(e){return n[e]??`running`}function a(e){return r[e]??`running`}function o(){return{generation:0,appliedGeneration:-1,lists:{queued:{rows:[],cursor:null,error:null,errorCode:null,errorDetailCode:null},tasks:{rows:[],cursor:null,error:null,errorCode:null,errorDetailCode:null},sessions:{rows:[],cursor:null,error:null,errorCode:null,errorDetailCode:null}},removedWork:{},lastReconciledAt:null,lastReason:null}}function s(e){return{...e,generation:e.generation+1}}function c(e,t){if(t.generation<e.appliedGeneration)return e;let n={};for(let[r,i]of Object.entries(e.removedWork))i>=t.generation&&(n[r]=i);return{...e,appliedGeneration:t.generation,lists:{queued:{rows:t.queued.rows,cursor:t.queued.cursor,error:null,errorCode:null,errorDetailCode:null},tasks:{rows:t.tasks.rows,cursor:t.tasks.cursor,error:null,errorCode:null,errorDetailCode:null},sessions:{rows:t.sessions.rows,cursor:t.sessions.cursor,error:null,errorCode:null,errorDetailCode:null}},removedWork:n,lastReconciledAt:t.atMs,lastReason:t.reason}}function l(e,t){return e===`queued`?t.workId:e===`tasks`?t.taskRunId:t.sessionRunId}function u(e,t,n){let r=e.lists[t].rows,i=new Set(r.map(e=>l(t,e))),a=n.rows.filter(e=>{let n=l(t,e);return i.has(n)?!1:(i.add(n),!0)});return{...e,lists:{...e.lists,[t]:{rows:[...r,...a],cursor:n.cursor,error:null,errorCode:null,errorDetailCode:null}}}}function d(e,t,n,r=null,i=null){let a=e.lists[t],o=r===null||r===`RECOVERY_NOT_READY`;return{...e,lists:{...e.lists,[t]:o?{...a,error:n,errorCode:r,errorDetailCode:i}:{rows:[],cursor:null,error:n,errorCode:r,errorDetailCode:i}}}}function f(e,t){if(t.scope!==`work`)return e;if(t.state===`removed`)return e.generation<=e.appliedGeneration?e:{...e,removedWork:{...e.removedWork,[t.workId]:e.generation}};if(!(t.workId in e.removedWork))return e;let n={...e.removedWork};return delete n[t.workId],{...e,removedWork:n}}function p(e,t){let n=e[t];return typeof n==`string`&&n.length>0?n:null}function m(e){if(typeof e!=`object`||!e)return null;let t=e;if(t.scope===`work`){let e=p(t,`workId`),n=p(t,`topic`),r=p(t,`changedAt`),i=t.state;return!e||!n||!r||i!==`queued`&&i!==`removed`?null:{scope:`work`,workId:e,topic:n,state:i,changedAt:r}}if(t.scope===`task`){let e=p(t,`taskRunId`),n=p(t,`status`),r=p(t,`updatedAt`);return e&&n&&r?{scope:`task`,taskRunId:e,status:n,updatedAt:r}:null}if(t.scope===`session`){let e=p(t,`sessionRunId`),n=p(t,`status`),r=p(t,`updatedAt`);return e&&n&&r?{scope:`session`,sessionRunId:e,status:n,updatedAt:r}:null}return null}function h(e){return e.startsWith(`task.`)?e.slice(5):void 0}function g(e){let t=h(e.topic);return{key:`work:${e.workId}`,kind:`work`,id:e.workId,group:`queued`,status:`queued`,title:t??e.topic,subtitle:`work ${e.workId}`,...t?{taskId:t}:{},changedAt:e.changedAt}}function _(e){return{key:`task:${e.taskRunId}`,kind:`task`,id:e.taskRunId,group:i(e.status),status:e.status,title:e.taskId,subtitle:`attempt ${e.attempts}`,taskId:e.taskId,changedAt:e.updatedAt}}function v(e){return{key:`session:${e.sessionRunId}`,kind:`session`,id:e.sessionRunId,group:a(e.status),status:e.status,title:e.summaryLine?.trim()||e.sessionKey,subtitle:`${e.kind} run`,changedAt:e.updatedAt}}function y(e){let t=[],n=new Set,r=e=>{n.has(e.key)||(n.add(e.key),t.push(e))};for(let t of e.lists.queued.rows){let n=e.removedWork[t.workId];n!==void 0&&n>=e.appliedGeneration||r(g(t))}for(let t of e.lists.tasks.rows)r(_(t));for(let t of e.lists.sessions.rows)r(v(t));return t}function b(e){let n=Object.fromEntries(t.map(e=>[e,[]]));for(let t of y(e))n[t.group].push(t);return n}var x={key:null,loading:!1,error:null,queued:null,task:null,events:[],session:null};function S(e){return e instanceof Error?e.message:String(e)}function C(e){return e&&typeof e==`object`&&`code`in e&&typeof e.code==`string`?e.code:null}function w(e){return e&&typeof e==`object`&&`detailCode`in e&&typeof e.detailCode==`string`?e.detailCode:null}var T=class{request;now;pageLimit;refreshIntervalMs;coalesceMs;runs=o();detail=x;refreshingCount=0;started=!1;intervalHandle=null;coalesceHandle=null;listeners=new Set;cached=null;constructor(e){this.request=e.request,this.now=e.now??(()=>Date.now()),this.pageLimit=e.pageLimit??20,this.refreshIntervalMs=e.refreshIntervalMs??1e4,this.coalesceMs=e.coalesceMs??120}snapshot(){return this.cached??={entries:y(this.runs),groups:b(this.runs),lists:this.runs.lists,lastReconciledAt:this.runs.lastReconciledAt,lastReason:this.runs.lastReason,generation:this.runs.appliedGeneration+1,refreshing:this.refreshingCount>0,detail:this.detail},this.cached}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}start(){this.started||(this.started=!0,this.refresh(`open`),this.intervalHandle=setInterval(()=>{this.refresh(`interval`)},this.refreshIntervalMs))}stop(){this.started=!1,this.intervalHandle!==null&&(clearInterval(this.intervalHandle),this.intervalHandle=null),this.coalesceHandle!==null&&(clearTimeout(this.coalesceHandle),this.coalesceHandle=null)}handleInvalidation(e){this.setRuns(f(this.runs,e)),!(!this.started||this.coalesceHandle!==null)&&(this.coalesceHandle=setTimeout(()=>{this.coalesceHandle=null,this.refresh(`event`)},this.coalesceMs))}handleReconnect(){this.started&&this.refresh(`reconnect`)}async refresh(e){let t=s(this.runs);this.refreshingCount+=1;let n=!1,r=()=>{n||(n=!0,--this.refreshingCount,this.cached=null)};try{this.setRuns(t);let n=t.generation,i={},a=async(t,n,r)=>{let a=this.runs.lists[t];if(this.isLatchedUnavailable(t,e))return i[t]={message:a.error??`unavailable`,code:a.errorCode,detailCode:a.errorDetailCode},{rows:[],cursor:null};try{return await this.readPage(n,r,`runs`)}catch(e){let n=C(e),r=w(e);if(i[t]={message:S(e),code:n,detailCode:r},n===null||n===`RECOVERY_NOT_READY`){let e=this.runs.lists[t];return{rows:e.rows,cursor:e.cursor}}return{rows:[],cursor:null}}},o=await a(`queued`,`tasks.runs.list`,{view:`queued`,limit:this.pageLimit}),[s,l]=await Promise.all([a(`tasks`,`tasks.runs.list`,{view:`history`,limit:this.pageLimit}),a(`sessions`,`sessions.runs.list`,{limit:this.pageLimit})]),u=c(this.runs,{generation:n,reason:e,queued:o,tasks:s,sessions:l,atMs:this.now()}),f=u!==this.runs||this.runs.appliedGeneration===n;if(f)for(let[e,t]of Object.entries(i))u=d(u,e,t.message,t.code,t.detailCode);r(),this.setRuns(u),f&&await this.reloadDetail()}finally{r()}}async loadMore(e){let t=this.runs.lists[e].cursor;if(t)try{if(e===`queued`){let e=await this.readPage(`tasks.runs.list`,{view:`queued`,limit:this.pageLimit,cursor:t},`runs`);this.setRuns(u(this.runs,`queued`,e));return}if(e===`tasks`){let e=await this.readPage(`tasks.runs.list`,{view:`history`,limit:this.pageLimit,cursor:t},`runs`);this.setRuns(u(this.runs,`tasks`,e));return}let n=await this.readPage(`sessions.runs.list`,{limit:this.pageLimit,cursor:t},`runs`);this.setRuns(u(this.runs,`sessions`,n))}catch(t){this.setRuns(d(this.runs,e,S(t),C(t),w(t)))}}async select(e){if(e===null){this.setDetail(x);return}this.setDetail({...x,key:e,loading:!0}),await this.loadDetail(e)}async reloadDetail(){let e=this.detail.key;e&&await this.loadDetail(e)}async loadDetail(e){let[t,n]=E(e),r=t=>{this.detail.key===e&&this.setDetail(t)};try{if(t===`work`){let t=this.runs.lists.queued.rows.find(e=>e.workId===n);this.setDetail({...x,key:e,queued:t??null,error:t?null:`This work item is no longer queued.`});return}if(t===`task`){let[t,i]=await Promise.all([this.request(`tasks.runs.get`,{taskRunId:n}),this.request(`tasks.runs.events`,{taskRunId:n,limit:this.pageLimit})]);r({...x,key:e,task:t,events:i.events??[]});return}let i=(await this.request(`sessions.runs.get`,{sessionRunId:n})).record??null;r({...x,key:e,session:i,error:i?null:`This run is no longer available.`})}catch(t){r({...x,key:e,error:S(t)})}}isLatchedUnavailable(e,t){return this.runs.lists[e].errorCode===`UNAVAILABLE`&&t!==`open`&&t!==`manual`&&t!==`reconnect`}async readPage(e,t,n){let r=await this.request(e,t),i=r[n],a=r.nextCursor;return{rows:Array.isArray(i)?i:[],cursor:typeof a==`string`&&a.length>0?a:null}}setRuns(e){this.runs=e,this.publish()}setDetail(e){this.detail=e,this.publish()}publish(){this.cached=null;let e=this.snapshot();for(let t of new Set(this.listeners))t(e)}};function E(e){let t=e.indexOf(`:`);return[e.slice(0,t),e.slice(t+1)]}var D=3e4,O=null,k=e()(e=>({view:null,attach:(t,n)=>{O?.stop();let r=new T({request:t,coalesceMs:250,refreshIntervalMs:D});O=r,e({view:r.snapshot()});let i=r.subscribe(t=>e({view:t})),a=n(`runs.invalidated`,e=>{let t=m(e);t&&r.handleInvalidation(t)});return()=>{r.stop(),i(),a(),O===r&&(O=null)}},start:()=>{O?.start()},stop:()=>{O?.stop()},select:async e=>{await O?.select(e)},loadMore:async e=>{await O?.loadMore(e)},refresh:async()=>{await O?.refresh(`manual`)},reset:()=>{O?.stop(),O=null,e({view:null})}}));function A(e){return e.view?.groups[`action-needed`].length??0}function j(e){let t=new Set;for(let n of e?.lists.sessions.rows??[]){let e=a(n.status);(e===`queued`||e===`running`)&&t.add(n.sessionKey)}return t}var M={failed:!0,abandoned:!0,dlq:!0,preempted_ceiling:!0,rolled_back:!0};function N(e){return e.group===`action-needed`?`needs`:e.group===`terminal`?Object.hasOwn(M,e.status)?`failed`:`done`:e.group===`queued`?`queued`:`running`}export{m as a,k as i,j as n,v as o,A as r,N as t};
|
package/dist/control-ui-v2/assets/{use-gateway-query-DkXhPwE7.js → use-gateway-query-Dd6G1xB1.js}
RENAMED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{_ as e,h as t,l as n,t as r}from"./format-
|
|
1
|
+
import{_ as e,h as t,l as n,t as r}from"./format-CDdlmhUx.js";import{i,r as a}from"./index-DbvFKOkE.js";var o=e(t(),1),s=3e4;function c(e,t,s={}){let{refreshMs:c,invalidateOn:l,enabled:u=!0}=s,d=n(e=>e.request),f=n(e=>e.status),p=i(),[m,h]=(0,o.useState)(null),[g,_]=(0,o.useState)(null),[v,y]=(0,o.useState)(u),[b,x]=(0,o.useState)(null),S=(0,o.useRef)(0),C=(0,o.useRef)(null),w=(0,o.useRef)(!1),T=(0,o.useRef)(null),E=JSON.stringify(t),D=l?.join(`
|
|
2
2
|
`)??``,O=(0,o.useCallback)(()=>{let t=++S.current;C.current=Date.now(),y(!0),d(e,JSON.parse(E)).then(e=>{t===S.current&&(h(e),_(null),x(Date.now()))}).catch(e=>{t===S.current&&_(r(e))}).finally(()=>{t===S.current&&y(!1)})},[d,e,E]);(0,o.useEffect)(()=>{if(!u){S.current+=1;return}return f===`connected`&&(w.current=!1,O()),()=>{S.current+=1}},[O,f,u]),(0,o.useEffect)(()=>{if(!u||!c||f!==`connected`||!p)return;let e=window.setInterval(O,c);return()=>window.clearInterval(e)},[O,f,p,c,u]),(0,o.useEffect)(()=>{if(!u||D===``)return;let e=D.split(`
|
|
3
3
|
`),t=()=>{if(!a()){w.current=!0;return}T.current===null&&(T.current=window.setTimeout(()=>{if(T.current=null,!a()){w.current=!0;return}n.getState().status===`connected`&&(w.current=!1,O())},500))},r=e.map(e=>n.getState().subscribe(e,t));return()=>{T.current!==null&&(window.clearTimeout(T.current),T.current=null);for(let e of r)e()}},[O,D,u]);let k=(0,o.useRef)(p);return(0,o.useEffect)(()=>{let e=p&&!k.current;if(k.current=p,!e||!u||f!==`connected`)return;let t=c!==void 0&&C.current!==null&&Date.now()-C.current>=c;(w.current||t)&&(w.current=!1,O())},[p,u,f,c,O]),u?{data:m,error:g,loading:v,updatedAt:b,reload:O}:{data:null,error:null,loading:!1,updatedAt:null,reload:O}}export{c as n,s as t};
|
|
@@ -8,13 +8,13 @@
|
|
|
8
8
|
<link rel="icon" href="./icon-192.png" type="image/png" />
|
|
9
9
|
<link rel="apple-touch-icon" href="./apple-touch-icon.png" />
|
|
10
10
|
<title>WednesdayAI Control</title>
|
|
11
|
-
<script type="module" crossorigin src="./assets/index-
|
|
12
|
-
<link rel="modulepreload" crossorigin href="./assets/format-
|
|
13
|
-
<link rel="modulepreload" crossorigin href="./assets/runs-store-
|
|
14
|
-
<link rel="modulepreload" crossorigin href="./assets/gateway-features-
|
|
15
|
-
<link rel="modulepreload" crossorigin href="./assets/links-
|
|
16
|
-
<link rel="modulepreload" crossorigin href="./assets/Button-
|
|
17
|
-
<link rel="modulepreload" crossorigin href="./assets/Dialog-
|
|
11
|
+
<script type="module" crossorigin src="./assets/index-DbvFKOkE.js"></script>
|
|
12
|
+
<link rel="modulepreload" crossorigin href="./assets/format-CDdlmhUx.js">
|
|
13
|
+
<link rel="modulepreload" crossorigin href="./assets/runs-store-CBxmiHic.js">
|
|
14
|
+
<link rel="modulepreload" crossorigin href="./assets/gateway-features-BO759ssE.js">
|
|
15
|
+
<link rel="modulepreload" crossorigin href="./assets/links-CQf0Dstl.js">
|
|
16
|
+
<link rel="modulepreload" crossorigin href="./assets/Button-sKbvzDVv.js">
|
|
17
|
+
<link rel="modulepreload" crossorigin href="./assets/Dialog-C3D58UYL.js">
|
|
18
18
|
<link rel="stylesheet" crossorigin href="./assets/index-CYyjTEZb.css">
|
|
19
19
|
</head>
|
|
20
20
|
<body>
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Ct as resolveStorePath, Eo as parseAgentSessionKey, Et as DEFAULT_IDLE_MINUTES, Ja as DEFAULT_AGENT_ID, Qa as buildAgentMainSessionKey, Ri as resolveSecretInputRef, Xt as normalizeChatType, Y as getConversationReadQuery, Z as requireSessionStorageRuntime, Za as RAW_PEER_KEY_PREFIX, _a as serializeRetryPolicy, _t as SESSION_RUN_STORE_FILE_NAME, ao as normalizeAgentId, bo as WAKE_GATE_SESSION_KEY_SEGMENT, et as updateSessionStore, ga as parseRetryPolicy, ha as isRetryExhausted, ht as resolveUpdatedAfterPageSize, in as loadConfig, l as normalizeMessageChannel, lo as resolveCanonicalIdentity, ma as computeNextAvailableAtMs, no as computeIdentityLinkScopedMatchKey, oo as normalizeMainKey, pt as serializeSessionIndexRecordKey, rn as CtxProjectionCorruptionError, st as loadSessionStore, t as resolveGroupSessionKey, to as computeIdentityLinkMatchKeys, uo as resolveConfiguredCanonicalIdentity, ut as getConfiguredSessionStorageRuntime, vo as BACKGROUND_SESSION_KEY_SEGMENT, vt as resolveDefaultSessionStorePath, wo as isCronTriggerSessionKey, yo as HEARTBEAT_SESSION_KEY_SEGMENT, yt as resolveSessionFilePath } from "./group-
|
|
1
|
+
import { Ct as resolveStorePath, Eo as parseAgentSessionKey, Et as DEFAULT_IDLE_MINUTES, Ja as DEFAULT_AGENT_ID, Qa as buildAgentMainSessionKey, Ri as resolveSecretInputRef, Xt as normalizeChatType, Y as getConversationReadQuery, Z as requireSessionStorageRuntime, Za as RAW_PEER_KEY_PREFIX, _a as serializeRetryPolicy, _t as SESSION_RUN_STORE_FILE_NAME, ao as normalizeAgentId, bo as WAKE_GATE_SESSION_KEY_SEGMENT, et as updateSessionStore, ga as parseRetryPolicy, ha as isRetryExhausted, ht as resolveUpdatedAfterPageSize, in as loadConfig, l as normalizeMessageChannel, lo as resolveCanonicalIdentity, ma as computeNextAvailableAtMs, no as computeIdentityLinkScopedMatchKey, oo as normalizeMainKey, pt as serializeSessionIndexRecordKey, rn as CtxProjectionCorruptionError, st as loadSessionStore, t as resolveGroupSessionKey, to as computeIdentityLinkMatchKeys, uo as resolveConfiguredCanonicalIdentity, ut as getConfiguredSessionStorageRuntime, vo as BACKGROUND_SESSION_KEY_SEGMENT, vt as resolveDefaultSessionStorePath, wo as isCronTriggerSessionKey, yo as HEARTBEAT_SESSION_KEY_SEGMENT, yt as resolveSessionFilePath } from "./group-Dvl8dfJ2.js";
|
|
2
2
|
import { u as resolveStateDir } from "./paths-2qlGWRjc.js";
|
|
3
|
-
import { E as truncateUtf16Safe, T as sliceUtf16Safe, _ as normalizeE164, t as createSubsystemLogger } from "./subsystem-
|
|
3
|
+
import { E as truncateUtf16Safe, T as sliceUtf16Safe, _ as normalizeE164, t as createSubsystemLogger } from "./subsystem-BntNuBAj.js";
|
|
4
4
|
import { n as resolveProcessScopedMap } from "./plain-object-Doc_YkH1.js";
|
|
5
5
|
import { a as guardVerificationStoreInputs, i as clientResumeRecordArtifactId, n as VERIFICATION_STORE_ERROR_CODES, r as VerificationStoreError, t as CLIENT_RESUME_RECORD_KIND } from "./verification-store-UVzXANCQ.js";
|
|
6
6
|
import { t as emitDiagnosticEvent } from "./diagnostic-events-DqojT7DQ.js";
|
|
7
|
-
import { n as formatErrorChainMessage } from "./errors-
|
|
7
|
+
import { n as formatErrorChainMessage } from "./errors-7NHaEHOi.js";
|
|
8
8
|
import { t as emitSessionTranscriptUpdate } from "./transcript-events-YVxlGEnI.js";
|
|
9
9
|
import { createRequire } from "node:module";
|
|
10
10
|
import path, { join } from "node:path";
|
package/dist/daemon-cli.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { Bo as docsSiteUrl, Io as VERSION, Li as normalizeSecretInputString, Lo as formatCliCommand, Nr as secretRefKey, Ri as resolveSecretInputRef, an as readConfigFileSnapshot, bi as resolveGatewayConsoleBasePath, ci as sanitizeTerminalText, cn as createConfigIO, in as loadConfig, m as GATEWAY_CLIENT_NAMES, p as GATEWAY_CLIENT_MODES, sn as writeConfigFile, ur as resolveSecretRefValues } from "./group-
|
|
1
|
+
import { Bo as docsSiteUrl, Io as VERSION, Li as normalizeSecretInputString, Lo as formatCliCommand, Nr as secretRefKey, Ri as resolveSecretInputRef, an as readConfigFileSnapshot, bi as resolveGatewayConsoleBasePath, ci as sanitizeTerminalText, cn as createConfigIO, in as loadConfig, m as GATEWAY_CLIENT_NAMES, p as GATEWAY_CLIENT_MODES, sn as writeConfigFile, ur as resolveSecretRefValues } from "./group-Dvl8dfJ2.js";
|
|
2
2
|
import { o as resolveGatewayPort, r as resolveConfigPath, s as resolveIsNixMode, u as resolveStateDir } from "./paths-2qlGWRjc.js";
|
|
3
|
-
import { C as shortenHomePath, F as isRich, I as theme, P as colorize, _t as isBunRuntime, o as defaultRuntime, ut as collectConfigServiceEnvVars, vt as isNodeRuntime, w as sleep, z as getResolvedLoggerSettings } from "./subsystem-
|
|
4
|
-
import { _ as resolveGatewayWindowsTaskName, a as randomToken, c as isWSLEnv, d as GATEWAY_SERVICE_MARKER, f as normalizeGatewayProfile, g as resolveGatewaySystemdServiceName, h as resolveGatewayServiceDescription, l as GATEWAY_LAUNCH_AGENT_LABEL, m as resolveGatewayProfileSuffix, o as resolveControlUiLinks, p as resolveGatewayLaunchAgentLabel, r as killProcessTree, s as isWSL, t as withProgress, u as GATEWAY_SERVICE_KIND, v as resolveLegacyGatewayLaunchAgentLabels, y as formatDocsLink } from "./progress-
|
|
3
|
+
import { C as shortenHomePath, F as isRich, I as theme, P as colorize, _t as isBunRuntime, o as defaultRuntime, ut as collectConfigServiceEnvVars, vt as isNodeRuntime, w as sleep, z as getResolvedLoggerSettings } from "./subsystem-BntNuBAj.js";
|
|
4
|
+
import { _ as resolveGatewayWindowsTaskName, a as randomToken, c as isWSLEnv, d as GATEWAY_SERVICE_MARKER, f as normalizeGatewayProfile, g as resolveGatewaySystemdServiceName, h as resolveGatewayServiceDescription, l as GATEWAY_LAUNCH_AGENT_LABEL, m as resolveGatewayProfileSuffix, o as resolveControlUiLinks, p as resolveGatewayLaunchAgentLabel, r as killProcessTree, s as isWSL, t as withProgress, u as GATEWAY_SERVICE_KIND, v as resolveLegacyGatewayLaunchAgentLabels, y as formatDocsLink } from "./progress-CmedxTqJ.js";
|
|
5
5
|
import "./github-copilot-token-ChvUJEAY.js";
|
|
6
|
-
import { t as resolveGatewayCredentialsFromConfig } from "./credentials-
|
|
6
|
+
import { t as resolveGatewayCredentialsFromConfig } from "./credentials-By3Y4AcL.js";
|
|
7
7
|
import "./diagnostic-events-DqojT7DQ.js";
|
|
8
|
-
import "./redact-
|
|
9
|
-
import "./errors-
|
|
10
|
-
import { t as callGateway, u as loadGatewayTlsRuntime } from "./call-
|
|
11
|
-
import { t as resolveGatewayAuth } from "./auth-
|
|
12
|
-
import { o as resolveGatewayBindHost, s as pickPrimaryTailnetIPv4 } from "./net-
|
|
13
|
-
import { a as formatPortDiagnostics, i as classifyPortListener, n as inspectPortUsage } from "./ports-
|
|
8
|
+
import "./redact-BvO7EAk7.js";
|
|
9
|
+
import "./errors-7NHaEHOi.js";
|
|
10
|
+
import { t as callGateway, u as loadGatewayTlsRuntime } from "./call-CrRxRh7U.js";
|
|
11
|
+
import { t as resolveGatewayAuth } from "./auth-kjIpJLfy.js";
|
|
12
|
+
import { o as resolveGatewayBindHost, s as pickPrimaryTailnetIPv4 } from "./net-DJsykMK1.js";
|
|
13
|
+
import { a as formatPortDiagnostics, i as classifyPortListener, n as inspectPortUsage } from "./ports-af3jAFGh.js";
|
|
14
14
|
import os from "node:os";
|
|
15
15
|
import path from "node:path";
|
|
16
16
|
import fs from "node:fs/promises";
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { Cn as updateSessionStoreEntry, H as loadConfig, Jt as getActivePluginRegistry, Kn as resolveStorePath, Nn as getConfiguredSessionStorageRuntime, Oa as resolveSessionAgentId, Pn as listConfiguredSessionStorageAgentIds, Qi as resolveOpenClawAgentDir, Ta as resolveDefaultAgentId, Xt as getActivePluginRegistryVersion, _ as resolveImplicitBedrockProvider, _a as listAgentEntries, _n as getConversationReadQuery, ar as getChannelDock, cr as getChannelPlugin, g as normalizeProviders, ha as isAgentUserFacing, hn as StorageReadAccessError, kn as loadSessionStore, ur as normalizeChannelId, v as resolveImplicitCopilotProvider, y as resolveImplicitProviders } from "./model-selection-
|
|
3
|
-
import { l as resolveStateDir } from "./paths-
|
|
4
|
-
import { G as applyConfigEnvVars, f as logVerbose, rt as isRecord, t as createSubsystemLogger } from "./subsystem-
|
|
5
|
-
import { $ as normalizeAccountId, H as normalizeAgentId, U as normalizeMainKey, et as normalizeOptionalAccountId, lt as parseAgentSessionKey, n as createInternalHookEvent, o as triggerInternalHook } from "./legacy-names-
|
|
6
|
-
import { _ as isMessagingToolDuplicate, r as extractTextFromChatContent, t as parseReplyDirectives } from "./reply-directives-
|
|
7
|
-
import { Bt as getGlobalHookRunner, F as canonicalizeMainSessionAlias, Jt as buildPluginRuntimeIdentity, R as resolveMainSessionKey, Rt as hasInterSessionUserProvenance, Yt as buildPluginTurnIdentity, a as resolveMirroredTranscriptText, ft as eventOrder, i as appendAssistantMessageToSessionTranscript, o as parseInlineDirectives } from "./sessions-
|
|
2
|
+
import { Cn as updateSessionStoreEntry, H as loadConfig, Jt as getActivePluginRegistry, Kn as resolveStorePath, Nn as getConfiguredSessionStorageRuntime, Oa as resolveSessionAgentId, Pn as listConfiguredSessionStorageAgentIds, Qi as resolveOpenClawAgentDir, Ta as resolveDefaultAgentId, Xt as getActivePluginRegistryVersion, _ as resolveImplicitBedrockProvider, _a as listAgentEntries, _n as getConversationReadQuery, ar as getChannelDock, cr as getChannelPlugin, g as normalizeProviders, ha as isAgentUserFacing, hn as StorageReadAccessError, kn as loadSessionStore, ur as normalizeChannelId, v as resolveImplicitCopilotProvider, y as resolveImplicitProviders } from "./model-selection-ik2bHbgK.js";
|
|
3
|
+
import { l as resolveStateDir } from "./paths-B_gs59ga.js";
|
|
4
|
+
import { G as applyConfigEnvVars, f as logVerbose, rt as isRecord, t as createSubsystemLogger } from "./subsystem-cFv2jJm-.js";
|
|
5
|
+
import { $ as normalizeAccountId, H as normalizeAgentId, U as normalizeMainKey, et as normalizeOptionalAccountId, lt as parseAgentSessionKey, n as createInternalHookEvent, o as triggerInternalHook } from "./legacy-names-chsmo2vs.js";
|
|
6
|
+
import { _ as isMessagingToolDuplicate, r as extractTextFromChatContent, t as parseReplyDirectives } from "./reply-directives-CD8SVo0d.js";
|
|
7
|
+
import { Bt as getGlobalHookRunner, F as canonicalizeMainSessionAlias, Jt as buildPluginRuntimeIdentity, R as resolveMainSessionKey, Rt as hasInterSessionUserProvenance, Yt as buildPluginTurnIdentity, a as resolveMirroredTranscriptText, ft as eventOrder, i as appendAssistantMessageToSessionTranscript, o as parseInlineDirectives } from "./sessions-Dwd5H-eS.js";
|
|
8
8
|
import { n as generateSecureUuid } from "./secure-random-CSsVRTTy.js";
|
|
9
|
-
import { i as hasErrnoCode } from "./errors-
|
|
10
|
-
import { S as getAgentScopedMediaLocalRoots, a as resolveMarkdownTableMode, f as chunkMarkdownTextWithMode, h as resolveChunkDelivery, u as chunkByParagraph, v as resolveTextChunkLimit } from "./outbound-attachment-
|
|
11
|
-
import { l as markdownToSignalTextChunks, t as sendMessageSignal } from "./send-
|
|
9
|
+
import { i as hasErrnoCode } from "./errors-0-at0aYV.js";
|
|
10
|
+
import { S as getAgentScopedMediaLocalRoots, a as resolveMarkdownTableMode, f as chunkMarkdownTextWithMode, h as resolveChunkDelivery, u as chunkByParagraph, v as resolveTextChunkLimit } from "./outbound-attachment-DQtDt9Ne.js";
|
|
11
|
+
import { l as markdownToSignalTextChunks, t as sendMessageSignal } from "./send-BClohEtC.js";
|
|
12
12
|
import path from "node:path";
|
|
13
|
-
import
|
|
14
|
-
import fs
|
|
13
|
+
import syncFs from "node:fs";
|
|
14
|
+
import fs from "node:fs/promises";
|
|
15
15
|
import { createHash } from "node:crypto";
|
|
16
16
|
import { setTimeout } from "node:timers/promises";
|
|
17
17
|
|
|
@@ -103,7 +103,7 @@ function mergeProviders(params) {
|
|
|
103
103
|
}
|
|
104
104
|
async function readJson(pathname) {
|
|
105
105
|
try {
|
|
106
|
-
const raw = await fs
|
|
106
|
+
const raw = await fs.readFile(pathname, "utf8");
|
|
107
107
|
return JSON.parse(raw);
|
|
108
108
|
} catch {
|
|
109
109
|
return null;
|
|
@@ -163,7 +163,7 @@ async function resolveProvidersForMode(params) {
|
|
|
163
163
|
}
|
|
164
164
|
async function readRawFile(pathname) {
|
|
165
165
|
try {
|
|
166
|
-
return await fs
|
|
166
|
+
return await fs.readFile(pathname, "utf8");
|
|
167
167
|
} catch {
|
|
168
168
|
return "";
|
|
169
169
|
}
|
|
@@ -195,11 +195,11 @@ async function ensureOpenClawModelsJson(config, agentDirOverride) {
|
|
|
195
195
|
agentDir,
|
|
196
196
|
wrote: false
|
|
197
197
|
};
|
|
198
|
-
await fs
|
|
198
|
+
await fs.mkdir(agentDir, {
|
|
199
199
|
recursive: true,
|
|
200
200
|
mode: 448
|
|
201
201
|
});
|
|
202
|
-
await fs
|
|
202
|
+
await fs.writeFile(targetPath, next, { mode: 384 });
|
|
203
203
|
return {
|
|
204
204
|
agentDir,
|
|
205
205
|
wrote: true
|
|
@@ -690,7 +690,7 @@ function ensureContextWindowCacheLoaded() {
|
|
|
690
690
|
await ensureOpenClawModelsJson(cfg);
|
|
691
691
|
} catch {}
|
|
692
692
|
try {
|
|
693
|
-
const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-
|
|
693
|
+
const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-ihTZFn93.js").then((n) => n.r);
|
|
694
694
|
const agentDir = resolveOpenClawAgentDir();
|
|
695
695
|
const modelRegistry = discoverModels(discoverAuthStorage(agentDir), agentDir);
|
|
696
696
|
applyDiscoveredContextWindows({
|
|
@@ -927,7 +927,7 @@ function listExistingAgentIdsFromDisk() {
|
|
|
927
927
|
const root = resolveStateDir();
|
|
928
928
|
const agentsDir = path.join(root, "agents");
|
|
929
929
|
try {
|
|
930
|
-
return
|
|
930
|
+
return syncFs.readdirSync(agentsDir, { withFileTypes: true }).filter((entry) => entry.isDirectory()).map((entry) => normalizeAgentId(entry.name)).filter(Boolean);
|
|
931
931
|
} catch {
|
|
932
932
|
return [];
|
|
933
933
|
}
|
|
@@ -1461,11 +1461,11 @@ function resolveFailedDir(stateDir) {
|
|
|
1461
1461
|
/** Ensure the queue directory (and failed/ subdirectory) exist. */
|
|
1462
1462
|
async function ensureQueueDir(stateDir) {
|
|
1463
1463
|
const queueDir = resolveQueueDir(stateDir);
|
|
1464
|
-
await
|
|
1464
|
+
await syncFs.promises.mkdir(queueDir, {
|
|
1465
1465
|
recursive: true,
|
|
1466
1466
|
mode: 448
|
|
1467
1467
|
});
|
|
1468
|
-
await
|
|
1468
|
+
await syncFs.promises.mkdir(resolveFailedDir(stateDir), {
|
|
1469
1469
|
recursive: true,
|
|
1470
1470
|
mode: 448
|
|
1471
1471
|
});
|
|
@@ -1495,18 +1495,18 @@ async function enqueueDelivery(params, stateDir) {
|
|
|
1495
1495
|
const filePath = path.join(queueDir, `${id}.json`);
|
|
1496
1496
|
const tmp = `${filePath}.${process.pid}.tmp`;
|
|
1497
1497
|
const json = JSON.stringify(entry, null, 2);
|
|
1498
|
-
await
|
|
1498
|
+
await syncFs.promises.writeFile(tmp, json, {
|
|
1499
1499
|
encoding: "utf-8",
|
|
1500
1500
|
mode: 384
|
|
1501
1501
|
});
|
|
1502
|
-
await
|
|
1502
|
+
await syncFs.promises.rename(tmp, filePath);
|
|
1503
1503
|
return id;
|
|
1504
1504
|
}
|
|
1505
1505
|
/** Remove a successfully delivered entry from the queue. */
|
|
1506
1506
|
async function ackDelivery(id, stateDir) {
|
|
1507
1507
|
const filePath = path.join(resolveQueueDir(stateDir), `${id}.json`);
|
|
1508
1508
|
try {
|
|
1509
|
-
await
|
|
1509
|
+
await syncFs.promises.unlink(filePath);
|
|
1510
1510
|
} catch (err) {
|
|
1511
1511
|
if ((err && typeof err === "object" && "code" in err ? String(err.code) : null) !== "ENOENT") throw err;
|
|
1512
1512
|
}
|
|
@@ -1533,22 +1533,22 @@ async function failDelivery(id, error, stateDir) {
|
|
|
1533
1533
|
return serializeByKey(filePath, () => failDeliveryWrite(filePath, error));
|
|
1534
1534
|
}
|
|
1535
1535
|
async function failDeliveryWrite(filePath, error) {
|
|
1536
|
-
const raw = await
|
|
1536
|
+
const raw = await syncFs.promises.readFile(filePath, "utf-8");
|
|
1537
1537
|
const entry = JSON.parse(raw);
|
|
1538
1538
|
entry.retryCount += 1;
|
|
1539
1539
|
entry.lastAttemptAt = Date.now();
|
|
1540
1540
|
entry.lastError = error;
|
|
1541
1541
|
const tmp = `${filePath}.${process.pid}.tmp`;
|
|
1542
|
-
await
|
|
1542
|
+
await syncFs.promises.writeFile(tmp, JSON.stringify(entry, null, 2), {
|
|
1543
1543
|
encoding: "utf-8",
|
|
1544
1544
|
mode: 384
|
|
1545
1545
|
});
|
|
1546
|
-
await
|
|
1546
|
+
await syncFs.promises.rename(tmp, filePath);
|
|
1547
1547
|
}
|
|
1548
1548
|
/** Read a queue entry raw; null when the file is missing. */
|
|
1549
1549
|
async function readEntryFile(filePath) {
|
|
1550
1550
|
try {
|
|
1551
|
-
const raw = await
|
|
1551
|
+
const raw = await syncFs.promises.readFile(filePath, "utf-8");
|
|
1552
1552
|
return JSON.parse(raw);
|
|
1553
1553
|
} catch (err) {
|
|
1554
1554
|
if (hasErrnoCode(err, "ENOENT")) return null;
|
|
@@ -1570,11 +1570,11 @@ function markDeliveryPhase(filePath, transition) {
|
|
|
1570
1570
|
const next = transition(entry);
|
|
1571
1571
|
if (!next.advanced) return next;
|
|
1572
1572
|
const tmp = `${filePath}.${process.pid}.tmp`;
|
|
1573
|
-
await
|
|
1573
|
+
await syncFs.promises.writeFile(tmp, JSON.stringify(next.entry, null, 2), {
|
|
1574
1574
|
encoding: "utf-8",
|
|
1575
1575
|
mode: 384
|
|
1576
1576
|
});
|
|
1577
|
-
await
|
|
1577
|
+
await syncFs.promises.rename(tmp, filePath);
|
|
1578
1578
|
return next;
|
|
1579
1579
|
});
|
|
1580
1580
|
}
|