claude-mux 0.26.2 → 0.26.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/server/ws-handlers.d.ts.map +1 -1
- package/dist/server/ws-handlers.js +7 -4
- package/dist/server/ws-handlers.js.map +1 -1
- package/dist/tmux/pane.d.ts +7 -3
- package/dist/tmux/pane.d.ts.map +1 -1
- package/dist/tmux/pane.js +35 -13
- package/dist/tmux/pane.js.map +1 -1
- package/dist/utils/version.d.ts +1 -1
- package/dist/utils/version.js +1 -1
- package/dist/web/client/_app/immutable/assets/0.CiLJk_Xe.css +1 -0
- package/dist/web/client/_app/immutable/chunks/{DmEI2TOa.js → BPG41LQc.js} +13 -13
- package/dist/web/client/_app/immutable/chunks/BxK27rIF.js +1 -0
- package/dist/web/client/_app/immutable/chunks/DvtCSRbx.js +1 -0
- package/dist/web/client/_app/immutable/chunks/Iym5fv6V.js +2 -0
- package/{web/.svelte-kit/output/client/_app/immutable/chunks/Cotx9uI_.js → dist/web/client/_app/immutable/chunks/ZzVAGtsj.js} +1 -1
- package/dist/web/client/_app/immutable/entry/{app.DXHW0aPL.js → app.BrdmX1nT.js} +2 -2
- package/dist/web/client/_app/immutable/entry/start.z3GFCeFl.js +1 -0
- package/dist/web/client/_app/immutable/nodes/{0.DAnv2asW.js → 0.DX7LpCH-.js} +1 -1
- package/dist/web/client/_app/immutable/nodes/{1.CU8f4oNB.js → 1.LA4NLAbZ.js} +1 -1
- package/dist/web/client/_app/immutable/nodes/{2.BYpvCgtu.js → 2.CC3GVyR0.js} +1 -1
- package/dist/web/client/_app/immutable/nodes/{3.DuMzeRg3.js → 3.s97PqS3X.js} +1 -1
- package/dist/web/client/_app/version.json +1 -1
- package/dist/web/server/chunks/{0-C-AAPmon.js → 0-D-tZOQ7R.js} +9 -9
- package/dist/web/server/chunks/{0-C-AAPmon.js.map → 0-D-tZOQ7R.js.map} +1 -1
- package/dist/web/server/chunks/{1-T_dogl8W.js → 1-CG5NsrbP.js} +3 -3
- package/dist/web/server/chunks/{1-T_dogl8W.js.map → 1-CG5NsrbP.js.map} +1 -1
- package/dist/web/server/chunks/{2-FlchE_4u.js → 2-yV51EcS-.js} +7 -7
- package/dist/web/server/chunks/{2-FlchE_4u.js.map → 2-yV51EcS-.js.map} +1 -1
- package/dist/web/server/chunks/{3-U2bTntXU.js → 3-D75yomeT.js} +6 -6
- package/dist/web/server/chunks/{3-U2bTntXU.js.map → 3-D75yomeT.js.map} +1 -1
- package/dist/web/server/chunks/{_layout.svelte-Ddn9Wu-V.js → _layout.svelte-B22DMQF4.js} +4 -4
- package/dist/web/server/chunks/{_layout.svelte-Ddn9Wu-V.js.map → _layout.svelte-B22DMQF4.js.map} +1 -1
- package/dist/web/server/chunks/{_page.svelte-_F3qltju.js → _page.svelte-DkZsH6VV.js} +2 -2
- package/dist/web/server/chunks/{_page.svelte-_F3qltju.js.map → _page.svelte-DkZsH6VV.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-C6MJsvPN.js → _server.ts-BLpwF6cO.js} +3 -3
- package/dist/web/server/chunks/{_server.ts-C6MJsvPN.js.map → _server.ts-BLpwF6cO.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-fnuGtMqr.js → _server.ts-BceRCUNN.js} +3 -3
- package/dist/web/server/chunks/{_server.ts-fnuGtMqr.js.map → _server.ts-BceRCUNN.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-Df32fD_Q.js → _server.ts-DLwZHSdd.js} +2 -2
- package/dist/web/server/chunks/{_server.ts-Df32fD_Q.js.map → _server.ts-DLwZHSdd.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-CNU4yPZZ.js → _server.ts-IZp35sUH.js} +4 -2
- package/dist/web/server/chunks/_server.ts-IZp35sUH.js.map +1 -0
- package/dist/web/server/chunks/{_server.ts-CtsPyICr.js → _server.ts-ilTVJ4A9.js} +2 -2
- package/dist/web/server/chunks/{_server.ts-CtsPyICr.js.map → _server.ts-ilTVJ4A9.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-C00ejke7.js → _server.ts-pihD3w10.js} +2 -2
- package/dist/web/server/chunks/{_server.ts-C00ejke7.js.map → _server.ts-pihD3w10.js.map} +1 -1
- package/dist/web/server/chunks/{_server.ts-BBrtrcEt.js → _server.ts-xXEIfBqh.js} +2 -2
- package/dist/web/server/chunks/{_server.ts-BBrtrcEt.js.map → _server.ts-xXEIfBqh.js.map} +1 -1
- package/dist/web/server/chunks/{button-C1GVS_oY.js → button-svhFQKMs.js} +21 -3
- package/dist/web/server/chunks/{button-C1GVS_oY.js.map → button-svhFQKMs.js.map} +1 -1
- package/dist/web/server/chunks/{hooks.server-DG_lyHkY.js → hooks.server-BschOmH0.js} +3 -3
- package/dist/web/server/chunks/{hooks.server-DG_lyHkY.js.map → hooks.server-BschOmH0.js.map} +1 -1
- package/dist/web/server/chunks/{ws-handlers-BQ2RtlNl.js → ws-handlers-DmdbIqkc.js} +61 -16
- package/dist/web/server/chunks/ws-handlers-DmdbIqkc.js.map +1 -0
- package/dist/web/server/chunks/{ws-managers-DLQiiQnX.js → ws-managers-Cw_QNOpo.js} +2 -2
- package/dist/web/server/chunks/{ws-managers-DLQiiQnX.js.map → ws-managers-Cw_QNOpo.js.map} +1 -1
- package/dist/web/server/index.js +2 -2
- package/dist/web/server/index.js.map +1 -1
- package/dist/web/server/manifest.js +17 -17
- package/dist/web/server/manifest.js.map +1 -1
- package/package.json +1 -1
- package/src/server/ws-handlers.ts +6 -4
- package/src/tmux/pane.ts +35 -11
- package/src/utils/version.ts +1 -1
- package/tests/tmux/activity-line.test.ts +47 -0
- package/web/.svelte-kit/adapter-bun/.vite/manifest.json +3 -7
- package/web/.svelte-kit/adapter-bun/_app/immutable/assets/_layout.6tlxP3iE.css +1 -0
- package/web/.svelte-kit/adapter-bun/chunks/button.js +21 -0
- package/web/.svelte-kit/adapter-bun/chunks/internal2.js +1 -1
- package/web/.svelte-kit/adapter-bun/chunks/ws-handlers.js +45 -15
- package/web/.svelte-kit/adapter-bun/chunks/ws-managers.js +1 -1
- package/web/.svelte-kit/adapter-bun/entries/endpoints/api/projects/new-session/_server.ts.js +3 -1
- package/web/.svelte-kit/adapter-bun/entries/endpoints/api/sessions/_server.ts.js +1 -1
- package/web/.svelte-kit/adapter-bun/entries/endpoints/api/settings/_server.ts.js +1 -1
- package/web/.svelte-kit/adapter-bun/entries/pages/_layout.svelte.js +2 -2
- package/web/.svelte-kit/adapter-bun/manifest-full.js +1 -1
- package/web/.svelte-kit/adapter-bun/manifest.js +1 -1
- package/web/.svelte-kit/adapter-bun/nodes/0.js +2 -2
- package/web/.svelte-kit/adapter-bun/nodes/1.js +1 -1
- package/web/.svelte-kit/adapter-bun/nodes/2.js +1 -1
- package/web/.svelte-kit/adapter-bun/nodes/3.js +1 -1
- package/web/.svelte-kit/generated/server/internal.js +1 -1
- package/web/.svelte-kit/output/client/.vite/manifest.json +60 -60
- package/web/.svelte-kit/output/client/_app/immutable/assets/0.CiLJk_Xe.css +1 -0
- package/web/.svelte-kit/output/client/_app/immutable/chunks/{DmEI2TOa.js → BPG41LQc.js} +13 -13
- package/web/.svelte-kit/output/client/_app/immutable/chunks/BxK27rIF.js +1 -0
- package/web/.svelte-kit/output/client/_app/immutable/chunks/DvtCSRbx.js +1 -0
- package/web/.svelte-kit/output/client/_app/immutable/chunks/Iym5fv6V.js +2 -0
- package/{dist/web/client/_app/immutable/chunks/Cotx9uI_.js → web/.svelte-kit/output/client/_app/immutable/chunks/ZzVAGtsj.js} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/entry/{app.DXHW0aPL.js → app.BrdmX1nT.js} +2 -2
- package/web/.svelte-kit/output/client/_app/immutable/entry/start.z3GFCeFl.js +1 -0
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{0.DAnv2asW.js → 0.DX7LpCH-.js} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{1.CU8f4oNB.js → 1.LA4NLAbZ.js} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{2.BYpvCgtu.js → 2.CC3GVyR0.js} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{3.DuMzeRg3.js → 3.s97PqS3X.js} +1 -1
- package/web/.svelte-kit/output/client/_app/version.json +1 -1
- package/web/.svelte-kit/output/server/.vite/manifest.json +3 -7
- package/web/.svelte-kit/output/server/_app/immutable/assets/_layout.6tlxP3iE.css +1 -0
- package/web/.svelte-kit/output/server/chunks/button.js +21 -0
- package/web/.svelte-kit/output/server/chunks/internal2.js +1 -1
- package/web/.svelte-kit/output/server/chunks/ws-handlers.js +45 -15
- package/web/.svelte-kit/output/server/chunks/ws-managers.js +1 -1
- package/web/.svelte-kit/output/server/entries/endpoints/api/projects/new-session/_server.ts.js +3 -1
- package/web/.svelte-kit/output/server/entries/endpoints/api/sessions/_server.ts.js +1 -1
- package/web/.svelte-kit/output/server/entries/endpoints/api/settings/_server.ts.js +1 -1
- package/web/.svelte-kit/output/server/entries/pages/_layout.svelte.js +2 -2
- package/web/.svelte-kit/output/server/manifest-full.js +1 -1
- package/web/.svelte-kit/output/server/manifest.js +1 -1
- package/web/.svelte-kit/output/server/nodes/0.js +2 -2
- package/web/.svelte-kit/output/server/nodes/1.js +1 -1
- package/web/.svelte-kit/output/server/nodes/2.js +1 -1
- package/web/.svelte-kit/output/server/nodes/3.js +1 -1
- package/web/src/lib/actions/longPress.ts +52 -6
- package/web/src/lib/components/AllSessionsPanel.svelte +12 -3
- package/web/src/lib/stores/websocket-base.svelte.ts +24 -1
- package/web/src/routes/api/projects/new-session/+server.ts +3 -0
- package/dist/web/client/_app/immutable/assets/0.DwaaTdPO.css +0 -1
- package/dist/web/client/_app/immutable/chunks/1pIWnoD_.js +0 -1
- package/dist/web/client/_app/immutable/chunks/DfoR1zCV.js +0 -1
- package/dist/web/client/_app/immutable/chunks/DtVU-s3j.js +0 -2
- package/dist/web/client/_app/immutable/entry/start.CchjowOg.js +0 -1
- package/dist/web/server/chunks/_server.ts-CNU4yPZZ.js.map +0 -1
- package/dist/web/server/chunks/geometry-CUMMOI9q.js +0 -46
- package/dist/web/server/chunks/geometry-CUMMOI9q.js.map +0 -1
- package/dist/web/server/chunks/ws-handlers-BQ2RtlNl.js.map +0 -1
- package/web/.svelte-kit/adapter-bun/_app/immutable/assets/_layout.Bpy37C6o.css +0 -1
- package/web/.svelte-kit/adapter-bun/chunks/geometry.js +0 -32
- package/web/.svelte-kit/output/client/_app/immutable/assets/0.DwaaTdPO.css +0 -1
- package/web/.svelte-kit/output/client/_app/immutable/chunks/1pIWnoD_.js +0 -1
- package/web/.svelte-kit/output/client/_app/immutable/chunks/DfoR1zCV.js +0 -1
- package/web/.svelte-kit/output/client/_app/immutable/chunks/DtVU-s3j.js +0 -2
- package/web/.svelte-kit/output/client/_app/immutable/entry/start.CchjowOg.js +0 -1
- package/web/.svelte-kit/output/server/_app/immutable/assets/_layout.Bpy37C6o.css +0 -1
- package/web/.svelte-kit/output/server/chunks/geometry.js +0 -32
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "./root-CpxFdOD_.js";
|
|
2
2
|
import { z as head } from "./chunks-DjkFKU0Z.js";
|
|
3
3
|
import "./state.svelte-DaxvD0LT.js";
|
|
4
|
-
import "./button-
|
|
4
|
+
import "./button-svhFQKMs.js";
|
|
5
5
|
//#region .svelte-kit/adapter-bun/entries/pages/_page.svelte.js
|
|
6
6
|
function _page($$renderer, $$props) {
|
|
7
7
|
$$renderer.component(($$renderer2) => {
|
|
@@ -17,4 +17,4 @@ function _page($$renderer, $$props) {
|
|
|
17
17
|
//#endregion
|
|
18
18
|
export { _page as default };
|
|
19
19
|
|
|
20
|
-
//# sourceMappingURL=_page.svelte-
|
|
20
|
+
//# sourceMappingURL=_page.svelte-DkZsH6VV.js.map
|
package/dist/web/server/chunks/{_page.svelte-_F3qltju.js.map → _page.svelte-DkZsH6VV.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_page.svelte-
|
|
1
|
+
{"version":3,"file":"_page.svelte-DkZsH6VV.js","names":[],"sources":["../../../../web/.svelte-kit/adapter-bun/entries/pages/_page.svelte.js"],"sourcesContent":["import { t as head } from \"../../chunks/index.js\";\nimport \"@sveltejs/kit/internal\";\nimport \"../../chunks/exports.js\";\nimport \"../../chunks/utils2.js\";\nimport \"@sveltejs/kit/internal/server\";\nimport \"../../chunks/root.js\";\nimport \"../../chunks/state.svelte.js\";\nimport \"../../chunks/button.js\";\nimport \"clsx\";\n/* empty css */\nfunction _page($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n head(\"1uha8ag\", $$renderer2, ($$renderer3) => {\n $$renderer3.title(($$renderer4) => {\n $$renderer4.push(`<title>claude-mux</title>`);\n });\n });\n {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]-->`);\n });\n}\nexport {\n _page as default\n};\n"],"mappings":";;;;;AAUA,SAAS,MAAM,YAAY,SAAS;CAClC,WAAW,WAAW,gBAAgB;EACpC,KAAK,WAAW,cAAc,gBAAgB;GAC5C,YAAY,OAAO,gBAAgB;IACjC,YAAY,KAAK,2BAA2B;GAC9C,CAAC;EACH,CAAC;EAEC,YAAY,KAAK,YAAY;EAE/B,YAAY,KAAK,UAAU;CAC7B,CAAC;AACH"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as json } from "./exports-piA4c_uA.js";
|
|
2
|
-
import {
|
|
3
|
-
import { t as broadcastSessions } from "./ws-managers-
|
|
2
|
+
import { o as getSettings, p as updateSettings } from "./ws-handlers-DmdbIqkc.js";
|
|
3
|
+
import { t as broadcastSessions } from "./ws-managers-Cw_QNOpo.js";
|
|
4
4
|
//#region .svelte-kit/adapter-bun/entries/endpoints/api/settings/_server.ts.js
|
|
5
5
|
const GET = async () => {
|
|
6
6
|
return json({ settings: getSettings() });
|
|
@@ -24,4 +24,4 @@ const POST = async ({ request }) => {
|
|
|
24
24
|
//#endregion
|
|
25
25
|
export { GET, POST };
|
|
26
26
|
|
|
27
|
-
//# sourceMappingURL=_server.ts-
|
|
27
|
+
//# sourceMappingURL=_server.ts-BLpwF6cO.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-BLpwF6cO.js","names":[],"sources":["../../../../web/.svelte-kit/adapter-bun/entries/endpoints/api/settings/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { d as getSettings, u as updateSettings } from \"../../../../chunks/ws-handlers.js\";\nimport { b as broadcastSessions } from \"../../../../chunks/ws-managers.js\";\nconst GET = async () => {\n return json({ settings: getSettings() });\n};\nconst POST = async ({ request }) => {\n let body;\n try {\n body = await request.json();\n } catch {\n return json({ error: \"Invalid JSON\" }, { status: 400 });\n }\n const patch = {};\n if (typeof body.autoRemoteControl === \"boolean\") patch.autoRemoteControl = body.autoRemoteControl;\n const settings = updateSettings(patch);\n broadcastSessions();\n return json({ ok: true, settings });\n};\nexport {\n GET,\n POST\n};\n"],"mappings":";;;;AAGA,MAAM,MAAM,YAAY;CACtB,OAAO,KAAK,EAAE,UAAU,YAAY,EAAE,CAAC;AACzC;AACA,MAAM,OAAO,OAAO,EAAE,cAAc;CAClC,IAAI;CACJ,IAAI;EACF,OAAO,MAAM,QAAQ,KAAK;CAC5B,QAAQ;EACN,OAAO,KAAK,EAAE,OAAO,eAAe,GAAG,EAAE,QAAQ,IAAI,CAAC;CACxD;CACA,MAAM,QAAQ,CAAC;CACf,IAAI,OAAO,KAAK,sBAAsB,WAAW,MAAM,oBAAoB,KAAK;CAChF,MAAM,WAAW,eAAe,KAAK;CACrC,kBAAkB;CAClB,OAAO,KAAK;EAAE,IAAI;EAAM;CAAS,CAAC;AACpC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as json } from "./exports-piA4c_uA.js";
|
|
2
|
-
import { a as getSavedProjects, d as saveProject, l as removeProject } from "./ws-handlers-
|
|
3
|
-
import { t as broadcastSessions } from "./ws-managers-
|
|
2
|
+
import { a as getSavedProjects, d as saveProject, l as removeProject } from "./ws-handlers-DmdbIqkc.js";
|
|
3
|
+
import { t as broadcastSessions } from "./ws-managers-Cw_QNOpo.js";
|
|
4
4
|
//#region .svelte-kit/adapter-bun/entries/endpoints/api/projects/_server.ts.js
|
|
5
5
|
const GET = async () => {
|
|
6
6
|
return json({ projects: getSavedProjects() });
|
|
@@ -34,4 +34,4 @@ const DELETE = async ({ request }) => {
|
|
|
34
34
|
//#endregion
|
|
35
35
|
export { DELETE, GET, POST };
|
|
36
36
|
|
|
37
|
-
//# sourceMappingURL=_server.ts-
|
|
37
|
+
//# sourceMappingURL=_server.ts-BceRCUNN.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-BceRCUNN.js","names":[],"sources":["../../../../web/.svelte-kit/adapter-bun/entries/endpoints/api/projects/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { a as removeProject, g as getSavedProjects, s as saveProject } from \"../../../../chunks/ws-handlers.js\";\nimport { b as broadcastSessions } from \"../../../../chunks/ws-managers.js\";\nconst GET = async () => {\n return json({ projects: getSavedProjects() });\n};\nasync function readCwd(request) {\n try {\n const body = await request.json();\n return typeof body.cwd === \"string\" && body.cwd.startsWith(\"/\") ? body.cwd : null;\n } catch {\n return null;\n }\n}\nconst POST = async ({ request }) => {\n const cwd = await readCwd(request);\n if (!cwd) return json({ error: \"cwd must be an absolute path\" }, { status: 400 });\n if (saveProject(cwd)) broadcastSessions();\n return json({ ok: true, projects: getSavedProjects() });\n};\nconst DELETE = async ({ request }) => {\n const cwd = await readCwd(request);\n if (!cwd) return json({ error: \"cwd must be an absolute path\" }, { status: 400 });\n if (removeProject(cwd)) broadcastSessions();\n return json({ ok: true, projects: getSavedProjects() });\n};\nexport {\n DELETE,\n GET,\n POST\n};\n"],"mappings":";;;;AAGA,MAAM,MAAM,YAAY;CACtB,OAAO,KAAK,EAAE,UAAU,iBAAiB,EAAE,CAAC;AAC9C;AACA,eAAe,QAAQ,SAAS;CAC9B,IAAI;EACF,MAAM,OAAO,MAAM,QAAQ,KAAK;EAChC,OAAO,OAAO,KAAK,QAAQ,YAAY,KAAK,IAAI,WAAW,GAAG,IAAI,KAAK,MAAM;CAC/E,QAAQ;EACN,OAAO;CACT;AACF;AACA,MAAM,OAAO,OAAO,EAAE,cAAc;CAClC,MAAM,MAAM,MAAM,QAAQ,OAAO;CACjC,IAAI,CAAC,KAAK,OAAO,KAAK,EAAE,OAAO,+BAA+B,GAAG,EAAE,QAAQ,IAAI,CAAC;CAChF,IAAI,YAAY,GAAG,GAAG,kBAAkB;CACxC,OAAO,KAAK;EAAE,IAAI;EAAM,UAAU,iBAAiB;CAAE,CAAC;AACxD;AACA,MAAM,SAAS,OAAO,EAAE,cAAc;CACpC,MAAM,MAAM,MAAM,QAAQ,OAAO;CACjC,IAAI,CAAC,KAAK,OAAO,KAAK,EAAE,OAAO,+BAA+B,GAAG,EAAE,QAAQ,IAAI,CAAC;CAChF,IAAI,cAAc,GAAG,GAAG,kBAAkB;CAC1C,OAAO,KAAK;EAAE,IAAI;EAAM,UAAU,iBAAiB;CAAE,CAAC;AACxD"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as json } from "./exports-piA4c_uA.js";
|
|
2
|
-
import { i as getEnrichedSessionsAsync } from "./ws-handlers-
|
|
2
|
+
import { i as getEnrichedSessionsAsync } from "./ws-handlers-DmdbIqkc.js";
|
|
3
3
|
//#region .svelte-kit/adapter-bun/entries/endpoints/api/sessions/_server.ts.js
|
|
4
4
|
const GET = async () => {
|
|
5
5
|
try {
|
|
@@ -16,4 +16,4 @@ const GET = async () => {
|
|
|
16
16
|
//#endregion
|
|
17
17
|
export { GET };
|
|
18
18
|
|
|
19
|
-
//# sourceMappingURL=_server.ts-
|
|
19
|
+
//# sourceMappingURL=_server.ts-DLwZHSdd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-DLwZHSdd.js","names":[],"sources":["../../../../web/.svelte-kit/adapter-bun/entries/endpoints/api/sessions/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { c as getEnrichedSessionsAsync } from \"../../../../chunks/ws-handlers.js\";\nconst GET = async () => {\n try {\n const sessions = await getEnrichedSessionsAsync();\n return json({\n sessions,\n count: sessions.length,\n timestamp: Date.now()\n });\n } catch {\n return json({ error: \"Error reading sessions\" }, { status: 500 });\n }\n};\nexport {\n GET\n};\n"],"mappings":";;;AAEA,MAAM,MAAM,YAAY;CACtB,IAAI;EACF,MAAM,WAAW,MAAM,yBAAyB;EAChD,OAAO,KAAK;GACV;GACA,OAAO,SAAS;GAChB,WAAW,KAAK,IAAI;EACtB,CAAC;CACH,QAAQ;EACN,OAAO,KAAK,EAAE,OAAO,yBAAyB,GAAG,EAAE,QAAQ,IAAI,CAAC;CAClE;AACF"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { r as json } from "./exports-piA4c_uA.js";
|
|
2
2
|
import { f as upsertSession } from "./sessions-json-BVFqIpMt.js";
|
|
3
|
-
import {
|
|
3
|
+
import { f as sizeArgsForNewSession } from "./ws-handlers-DmdbIqkc.js";
|
|
4
|
+
import { t as broadcastSessions } from "./ws-managers-Cw_QNOpo.js";
|
|
4
5
|
import { r as parseAgent, t as AGENTS } from "./agents-21cPpmjY.js";
|
|
5
6
|
import { homedir } from "os";
|
|
6
7
|
import { existsSync, readFileSync, statSync, writeFileSync } from "fs";
|
|
@@ -74,6 +75,7 @@ const POST = async ({ request }) => {
|
|
|
74
75
|
state: "idle",
|
|
75
76
|
agent: selectedAgent
|
|
76
77
|
});
|
|
78
|
+
broadcastSessions();
|
|
77
79
|
return json({
|
|
78
80
|
ok: true,
|
|
79
81
|
session: sessionName,
|
|
@@ -93,4 +95,4 @@ const POST = async ({ request }) => {
|
|
|
93
95
|
//#endregion
|
|
94
96
|
export { POST };
|
|
95
97
|
|
|
96
|
-
//# sourceMappingURL=_server.ts-
|
|
98
|
+
//# sourceMappingURL=_server.ts-IZp35sUH.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-IZp35sUH.js","names":[],"sources":["../../../../web/.svelte-kit/adapter-bun/entries/endpoints/api/projects/new-session/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { existsSync, statSync, readFileSync, writeFileSync } from \"fs\";\nimport { execFileSync } from \"child_process\";\nimport { u as upsertSession } from \"../../../../../chunks/sessions-json.js\";\nimport { basename, join } from \"path\";\nimport { homedir } from \"os\";\nimport { p as parseAgent, A as AGENTS } from \"../../../../../chunks/agents.js\";\nimport { b as sizeArgsForNewSession } from \"../../../../../chunks/ws-handlers.js\";\nimport { b as broadcastSessions } from \"../../../../../chunks/ws-managers.js\";\nfunction projectSlug(cwd, fallback) {\n return basename(cwd).replace(/[^A-Za-z0-9_-]/g, \"_\") || fallback;\n}\nfunction ensureWorkspaceTrusted(cwd) {\n const claudeJsonPath = join(homedir(), \".claude.json\");\n try {\n const data = existsSync(claudeJsonPath) ? JSON.parse(readFileSync(claudeJsonPath, \"utf-8\")) : {};\n if (!data.projects) data.projects = {};\n if (!data.projects[cwd]) data.projects[cwd] = {};\n if (!data.projects[cwd].hasTrustDialogAccepted) {\n data.projects[cwd].hasTrustDialogAccepted = true;\n writeFileSync(claudeJsonPath, JSON.stringify(data, null, 2));\n }\n } catch (err) {\n console.error(\"[new-session] Failed to pre-trust workspace:\", err);\n }\n}\nconst POST = async ({ request }) => {\n const { cwd, agent } = await request.json();\n if (!cwd) {\n return json({ error: \"cwd required\" }, { status: 400 });\n }\n const selectedAgent = parseAgent(agent);\n if (!existsSync(cwd)) {\n return json({ error: \"Folder does not exist\" }, { status: 400 });\n }\n const stat = statSync(cwd);\n if (!stat.isDirectory()) {\n return json({ error: \"Path is not a directory\" }, { status: 400 });\n }\n try {\n ensureWorkspaceTrusted(cwd);\n const sessionName = `${projectSlug(cwd, selectedAgent)}-${selectedAgent}-${Date.now()}`;\n const { TMUX: _tmux, TMUX_PANE: _pane, ...tmuxEnv } = process.env;\n execFileSync(\"tmux\", [\n \"new-session\",\n \"-d\",\n \"-s\",\n sessionName,\n \"-c\",\n cwd,\n // Detached, the window would be 80x24; the dashboard reads dialogs\n // off the screen and wants them unwrapped (see tmux/geometry).\n ...sizeArgsForNewSession(),\n \"--\",\n \"env\",\n \"-u\",\n \"CLAUDECODE\",\n ...AGENTS[selectedAgent].argv\n ], {\n stdio: \"ignore\",\n env: tmuxEnv\n });\n const baseIndex = execFileSync(\"tmux\", [\"show-option\", \"-gv\", \"base-index\"], {\n encoding: \"utf-8\",\n env: tmuxEnv\n }).trim() || \"0\";\n const paneBaseIndex = execFileSync(\"tmux\", [\"show-option\", \"-gv\", \"pane-base-index\"], {\n encoding: \"utf-8\",\n env: tmuxEnv\n }).trim() || \"0\";\n const tmuxTarget = `${sessionName}:${baseIndex}.${paneBaseIndex}`;\n const record = upsertSession({\n id: crypto.randomUUID(),\n pid: 0,\n cwd,\n tmux_target: tmuxTarget,\n state: \"idle\",\n agent: selectedAgent\n });\n broadcastSessions();\n return json({ ok: true, session: sessionName, tmuxTarget, agent: selectedAgent, record });\n } catch (err) {\n const detail = err instanceof Error ? err.message : String(err);\n console.error(\"[new-session] Failed to create session:\", detail);\n return json({ error: \"Failed to create session\", detail }, { status: 500 });\n }\n};\nexport {\n POST\n};\n"],"mappings":";;;;;;;;;;AASA,SAAS,YAAY,KAAK,UAAU;CAClC,OAAO,SAAS,GAAG,CAAC,CAAC,QAAQ,mBAAmB,GAAG,KAAK;AAC1D;AACA,SAAS,uBAAuB,KAAK;CACnC,MAAM,iBAAiB,KAAK,QAAQ,GAAG,cAAc;CACrD,IAAI;EACF,MAAM,OAAO,WAAW,cAAc,IAAI,KAAK,MAAM,aAAa,gBAAgB,OAAO,CAAC,IAAI,CAAC;EAC/F,IAAI,CAAC,KAAK,UAAU,KAAK,WAAW,CAAC;EACrC,IAAI,CAAC,KAAK,SAAS,MAAM,KAAK,SAAS,OAAO,CAAC;EAC/C,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,wBAAwB;GAC9C,KAAK,SAAS,IAAI,CAAC,yBAAyB;GAC5C,cAAc,gBAAgB,KAAK,UAAU,MAAM,MAAM,CAAC,CAAC;EAC7D;CACF,SAAS,KAAK;EACZ,QAAQ,MAAM,gDAAgD,GAAG;CACnE;AACF;AACA,MAAM,OAAO,OAAO,EAAE,cAAc;CAClC,MAAM,EAAE,KAAK,UAAU,MAAM,QAAQ,KAAK;CAC1C,IAAI,CAAC,KACH,OAAO,KAAK,EAAE,OAAO,eAAe,GAAG,EAAE,QAAQ,IAAI,CAAC;CAExD,MAAM,gBAAgB,WAAW,KAAK;CACtC,IAAI,CAAC,WAAW,GAAG,GACjB,OAAO,KAAK,EAAE,OAAO,wBAAwB,GAAG,EAAE,QAAQ,IAAI,CAAC;CAGjE,IAAI,CADS,SAAS,GACd,CAAC,CAAC,YAAY,GACpB,OAAO,KAAK,EAAE,OAAO,0BAA0B,GAAG,EAAE,QAAQ,IAAI,CAAC;CAEnE,IAAI;EACF,uBAAuB,GAAG;EAC1B,MAAM,cAAc,GAAG,YAAY,KAAK,aAAa,EAAE,GAAG,cAAc,GAAG,KAAK,IAAI;EACpF,MAAM,EAAE,MAAM,OAAO,WAAW,OAAO,GAAG,YAAY,QAAQ;EAC9D,aAAa,QAAQ;GACnB;GACA;GACA;GACA;GACA;GACA;GAGA,GAAG,sBAAsB;GACzB;GACA;GACA;GACA;GACA,GAAG,OAAO,cAAc,CAAC;EAC3B,GAAG;GACD,OAAO;GACP,KAAK;EACP,CAAC;EASD,MAAM,aAAa,GAAG,YAAY,GARhB,aAAa,QAAQ;GAAC;GAAe;GAAO;EAAY,GAAG;GAC3E,UAAU;GACV,KAAK;EACP,CAAC,CAAC,CAAC,KAAK,KAAK,IAKkC,GAJzB,aAAa,QAAQ;GAAC;GAAe;GAAO;EAAiB,GAAG;GACpF,UAAU;GACV,KAAK;EACP,CAAC,CAAC,CAAC,KAAK,KAAK;EAEb,MAAM,SAAS,cAAc;GAC3B,IAAI,OAAO,WAAW;GACtB,KAAK;GACL;GACA,aAAa;GACb,OAAO;GACP,OAAO;EACT,CAAC;EACD,kBAAkB;EAClB,OAAO,KAAK;GAAE,IAAI;GAAM,SAAS;GAAa;GAAY,OAAO;GAAe;EAAO,CAAC;CAC1F,SAAS,KAAK;EACZ,MAAM,SAAS,eAAe,QAAQ,IAAI,UAAU,OAAO,GAAG;EAC9D,QAAQ,MAAM,2CAA2C,MAAM;EAC/D,OAAO,KAAK;GAAE,OAAO;GAA4B;EAAO,GAAG,EAAE,QAAQ,IAAI,CAAC;CAC5E;AACF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as json } from "./exports-piA4c_uA.js";
|
|
2
2
|
import { n as deleteSession } from "./sessions-json-BVFqIpMt.js";
|
|
3
|
-
import { t as broadcastSessions } from "./ws-managers-
|
|
3
|
+
import { t as broadcastSessions } from "./ws-managers-Cw_QNOpo.js";
|
|
4
4
|
import { execFileSync } from "child_process";
|
|
5
5
|
//#region .svelte-kit/adapter-bun/entries/endpoints/api/sessions/_id_/restart/_server.ts.js
|
|
6
6
|
const POST = async ({ params, request }) => {
|
|
@@ -39,4 +39,4 @@ const POST = async ({ params, request }) => {
|
|
|
39
39
|
//#endregion
|
|
40
40
|
export { POST };
|
|
41
41
|
|
|
42
|
-
//# sourceMappingURL=_server.ts-
|
|
42
|
+
//# sourceMappingURL=_server.ts-ilTVJ4A9.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-ilTVJ4A9.js","names":[],"sources":["../../../../web/.svelte-kit/adapter-bun/entries/endpoints/api/sessions/_id_/restart/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { execFileSync } from \"child_process\";\nimport { d as deleteSession } from \"../../../../../../chunks/sessions-json.js\";\nimport { b as broadcastSessions } from \"../../../../../../chunks/ws-managers.js\";\nconst POST = async ({ params, request }) => {\n const id = decodeURIComponent(params.id);\n const body = await request.json().catch(() => ({}));\n const { pid, tmux_target, cwd } = body;\n if (!tmux_target || typeof tmux_target !== \"string\") {\n return json({ error: \"tmux_target required\" }, { status: 400 });\n }\n if (!cwd || typeof cwd !== \"string\") {\n return json({ error: \"cwd required\" }, { status: 400 });\n }\n try {\n if (typeof pid === \"number\" && pid > 0 && Number.isInteger(pid)) {\n try {\n execFileSync(\"kill\", [\"-9\", String(pid)], { stdio: \"ignore\" });\n } catch {\n }\n }\n try {\n deleteSession(id);\n } catch {\n }\n broadcastSessions();\n await new Promise((resolve) => setTimeout(resolve, 300));\n execFileSync(\"tmux\", [\"send-keys\", \"-t\", tmux_target, \"C-c\"], {\n stdio: \"ignore\"\n });\n await new Promise((resolve) => setTimeout(resolve, 100));\n execFileSync(\"tmux\", [\"send-keys\", \"-t\", tmux_target, `cd \"${cwd}\" && claude --dangerously-skip-permissions`, \"Enter\"], {\n stdio: \"ignore\"\n });\n return json({ ok: true });\n } catch (err) {\n return json({ error: \"Failed to restart session\" }, { status: 500 });\n }\n};\nexport {\n POST\n};\n"],"mappings":";;;;;AAIA,MAAM,OAAO,OAAO,EAAE,QAAQ,cAAc;CAC1C,MAAM,KAAK,mBAAmB,OAAO,EAAE;CAEvC,MAAM,EAAE,KAAK,aAAa,QAAQ,MADf,QAAQ,KAAK,CAAC,CAAC,aAAa,CAAC,EAAE;CAElD,IAAI,CAAC,eAAe,OAAO,gBAAgB,UACzC,OAAO,KAAK,EAAE,OAAO,uBAAuB,GAAG,EAAE,QAAQ,IAAI,CAAC;CAEhE,IAAI,CAAC,OAAO,OAAO,QAAQ,UACzB,OAAO,KAAK,EAAE,OAAO,eAAe,GAAG,EAAE,QAAQ,IAAI,CAAC;CAExD,IAAI;EACF,IAAI,OAAO,QAAQ,YAAY,MAAM,KAAK,OAAO,UAAU,GAAG,GAC5D,IAAI;GACF,aAAa,QAAQ,CAAC,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,OAAO,SAAS,CAAC;EAC/D,QAAQ,CACR;EAEF,IAAI;GACF,cAAc,EAAE;EAClB,QAAQ,CACR;EACA,kBAAkB;EAClB,MAAM,IAAI,SAAS,YAAY,WAAW,SAAS,GAAG,CAAC;EACvD,aAAa,QAAQ;GAAC;GAAa;GAAM;GAAa;EAAK,GAAG,EAC5D,OAAO,SACT,CAAC;EACD,MAAM,IAAI,SAAS,YAAY,WAAW,SAAS,GAAG,CAAC;EACvD,aAAa,QAAQ;GAAC;GAAa;GAAM;GAAa,OAAO,IAAI;GAA6C;EAAO,GAAG,EACtH,OAAO,SACT,CAAC;EACD,OAAO,KAAK,EAAE,IAAI,KAAK,CAAC;CAC1B,SAAS,KAAK;EACZ,OAAO,KAAK,EAAE,OAAO,4BAA4B,GAAG,EAAE,QAAQ,IAAI,CAAC;CACrE;AACF"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { r as json } from "./exports-piA4c_uA.js";
|
|
2
2
|
import { d as updateSession, i as getSession, u as sanitizeDisplayName } from "./sessions-json-BVFqIpMt.js";
|
|
3
3
|
import { n as enqueue } from "./message-queue-D4vYsMyd.js";
|
|
4
|
-
import { t as broadcastSessions } from "./ws-managers-
|
|
4
|
+
import { t as broadcastSessions } from "./ws-managers-Cw_QNOpo.js";
|
|
5
5
|
//#region .svelte-kit/adapter-bun/entries/endpoints/api/sessions/_id_/rename/_server.ts.js
|
|
6
6
|
const POST = async ({ params, request }) => {
|
|
7
7
|
const id = params.id;
|
|
@@ -25,4 +25,4 @@ const POST = async ({ params, request }) => {
|
|
|
25
25
|
//#endregion
|
|
26
26
|
export { POST };
|
|
27
27
|
|
|
28
|
-
//# sourceMappingURL=_server.ts-
|
|
28
|
+
//# sourceMappingURL=_server.ts-pihD3w10.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-pihD3w10.js","names":[],"sources":["../../../../web/.svelte-kit/adapter-bun/entries/endpoints/api/sessions/_id_/rename/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { g as getSession, s as sanitizeDisplayName, c as updateSession } from \"../../../../../../chunks/sessions-json.js\";\nimport { e as enqueue } from \"../../../../../../chunks/message-queue.js\";\nimport { b as broadcastSessions } from \"../../../../../../chunks/ws-managers.js\";\nconst POST = async ({ params, request }) => {\n const id = params.id;\n const session = getSession(id);\n if (!session) return json({ error: \"Session not found\", id }, { status: 404 });\n let body;\n try {\n body = await request.json();\n } catch {\n return json({ error: \"Invalid JSON\" }, { status: 400 });\n }\n const name = sanitizeDisplayName(body.name);\n updateSession(id, { display_name: name });\n broadcastSessions();\n if (session.tmux_target && name) {\n enqueue(session.tmux_target, `/rename ${name}`, \"control\");\n }\n return json({ ok: true });\n};\nexport {\n POST\n};\n"],"mappings":";;;;;AAIA,MAAM,OAAO,OAAO,EAAE,QAAQ,cAAc;CAC1C,MAAM,KAAK,OAAO;CAClB,MAAM,UAAU,WAAW,EAAE;CAC7B,IAAI,CAAC,SAAS,OAAO,KAAK;EAAE,OAAO;EAAqB;CAAG,GAAG,EAAE,QAAQ,IAAI,CAAC;CAC7E,IAAI;CACJ,IAAI;EACF,OAAO,MAAM,QAAQ,KAAK;CAC5B,QAAQ;EACN,OAAO,KAAK,EAAE,OAAO,eAAe,GAAG,EAAE,QAAQ,IAAI,CAAC;CACxD;CACA,MAAM,OAAO,oBAAoB,KAAK,IAAI;CAC1C,cAAc,IAAI,EAAE,cAAc,KAAK,CAAC;CACxC,kBAAkB;CAClB,IAAI,QAAQ,eAAe,MACzB,QAAQ,QAAQ,aAAa,WAAW,QAAQ,SAAS;CAE3D,OAAO,KAAK,EAAE,IAAI,KAAK,CAAC;AAC1B"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as json } from "./exports-piA4c_uA.js";
|
|
2
2
|
import { n as deleteSession } from "./sessions-json-BVFqIpMt.js";
|
|
3
|
-
import { t as broadcastSessions } from "./ws-managers-
|
|
3
|
+
import { t as broadcastSessions } from "./ws-managers-Cw_QNOpo.js";
|
|
4
4
|
import { execFileSync } from "child_process";
|
|
5
5
|
//#region .svelte-kit/adapter-bun/entries/endpoints/api/sessions/_id_/kill/_server.ts.js
|
|
6
6
|
const POST = async ({ params, request }) => {
|
|
@@ -33,4 +33,4 @@ const POST = async ({ params, request }) => {
|
|
|
33
33
|
//#endregion
|
|
34
34
|
export { POST };
|
|
35
35
|
|
|
36
|
-
//# sourceMappingURL=_server.ts-
|
|
36
|
+
//# sourceMappingURL=_server.ts-xXEIfBqh.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-xXEIfBqh.js","names":[],"sources":["../../../../web/.svelte-kit/adapter-bun/entries/endpoints/api/sessions/_id_/kill/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { execFileSync } from \"child_process\";\nimport { d as deleteSession } from \"../../../../../../chunks/sessions-json.js\";\nimport { b as broadcastSessions } from \"../../../../../../chunks/ws-managers.js\";\nconst POST = async ({ params, request }) => {\n const id = decodeURIComponent(params.id);\n const body = await request.json().catch(() => ({}));\n const { pid, tmux_target } = body;\n try {\n if (typeof pid === \"number\" && pid > 0 && Number.isInteger(pid)) {\n try {\n execFileSync(\"kill\", [\"-9\", String(pid)], { stdio: \"ignore\" });\n } catch {\n }\n }\n if (tmux_target && typeof tmux_target === \"string\") {\n try {\n execFileSync(\"tmux\", [\"kill-pane\", \"-t\", tmux_target], { stdio: \"ignore\" });\n } catch {\n }\n }\n try {\n deleteSession(id);\n } catch {\n }\n broadcastSessions();\n return json({ ok: true });\n } catch {\n try {\n deleteSession(id);\n } catch {\n }\n broadcastSessions();\n return json({ ok: true });\n }\n};\nexport {\n POST\n};\n"],"mappings":";;;;;AAIA,MAAM,OAAO,OAAO,EAAE,QAAQ,cAAc;CAC1C,MAAM,KAAK,mBAAmB,OAAO,EAAE;CAEvC,MAAM,EAAE,KAAK,gBAAgB,MADV,QAAQ,KAAK,CAAC,CAAC,aAAa,CAAC,EAAE;CAElD,IAAI;EACF,IAAI,OAAO,QAAQ,YAAY,MAAM,KAAK,OAAO,UAAU,GAAG,GAC5D,IAAI;GACF,aAAa,QAAQ,CAAC,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,OAAO,SAAS,CAAC;EAC/D,QAAQ,CACR;EAEF,IAAI,eAAe,OAAO,gBAAgB,UACxC,IAAI;GACF,aAAa,QAAQ;IAAC;IAAa;IAAM;GAAW,GAAG,EAAE,OAAO,SAAS,CAAC;EAC5E,QAAQ,CACR;EAEF,IAAI;GACF,cAAc,EAAE;EAClB,QAAQ,CACR;EACA,kBAAkB;EAClB,OAAO,KAAK,EAAE,IAAI,KAAK,CAAC;CAC1B,QAAQ;EACN,IAAI;GACF,cAAc,EAAE;EAClB,QAAQ,CACR;EACA,kBAAkB;EAClB,OAAO,KAAK,EAAE,IAAI,KAAK,CAAC;CAC1B;AACF"}
|
|
@@ -12675,7 +12675,7 @@ const DEFAULT_CONFIG = {
|
|
|
12675
12675
|
baseReconnectDelay: 1e3,
|
|
12676
12676
|
maxReconnectDelay: 3e4
|
|
12677
12677
|
};
|
|
12678
|
-
var ReliableWebSocket = class {
|
|
12678
|
+
var ReliableWebSocket = class ReliableWebSocket {
|
|
12679
12679
|
connected = false;
|
|
12680
12680
|
/**
|
|
12681
12681
|
* True once any data message has arrived on the current subscription — the
|
|
@@ -12763,7 +12763,22 @@ var ReliableWebSocket = class {
|
|
|
12763
12763
|
}
|
|
12764
12764
|
}, this.config.pingInterval);
|
|
12765
12765
|
}
|
|
12766
|
+
/** How long a ping sent on returning to the page may go unanswered. */
|
|
12767
|
+
static WAKE_PONG_TIMEOUT = 3e3;
|
|
12768
|
+
wakeTimer = null;
|
|
12769
|
+
expectPong() {
|
|
12770
|
+
if (this.wakeTimer) clearTimeout(this.wakeTimer);
|
|
12771
|
+
const asked = Date.now();
|
|
12772
|
+
this.wakeTimer = setTimeout(() => {
|
|
12773
|
+
this.wakeTimer = null;
|
|
12774
|
+
if (this.ws && this.lastPong < asked) this.forceReconnect();
|
|
12775
|
+
}, ReliableWebSocket.WAKE_PONG_TIMEOUT);
|
|
12776
|
+
}
|
|
12766
12777
|
stopPingTimer() {
|
|
12778
|
+
if (this.wakeTimer) {
|
|
12779
|
+
clearTimeout(this.wakeTimer);
|
|
12780
|
+
this.wakeTimer = null;
|
|
12781
|
+
}
|
|
12767
12782
|
if (this.pingTimer) {
|
|
12768
12783
|
clearInterval(this.pingTimer);
|
|
12769
12784
|
this.pingTimer = null;
|
|
@@ -12783,7 +12798,10 @@ var ReliableWebSocket = class {
|
|
|
12783
12798
|
this.visibilityHandler = () => {
|
|
12784
12799
|
if (document.visibilityState === "visible" && this.shouldReconnect()) {
|
|
12785
12800
|
if (!this.ws || this.ws.readyState !== WebSocket.OPEN) this.forceReconnect();
|
|
12786
|
-
else
|
|
12801
|
+
else {
|
|
12802
|
+
this.ws.send("ping");
|
|
12803
|
+
this.expectPong();
|
|
12804
|
+
}
|
|
12787
12805
|
}
|
|
12788
12806
|
};
|
|
12789
12807
|
document.addEventListener("visibilitychange", this.visibilityHandler);
|
|
@@ -13238,4 +13256,4 @@ function Button($$renderer, $$props) {
|
|
|
13238
13256
|
//#endregion
|
|
13239
13257
|
export { cn as a, getProjectColor as c, sessionStore as d, tv as f, buttonVariants as i, getSessionDisplayName as l, ReliableWebSocket as n, createPersisted as o, SessionsWsMessageSchema as r, findDeepestProject as s, Button as t, groupSessions as u };
|
|
13240
13258
|
|
|
13241
|
-
//# sourceMappingURL=button-
|
|
13259
|
+
//# sourceMappingURL=button-svhFQKMs.js.map
|