@claude-sessions/web 0.4.7-beta.2 → 0.4.8-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/build/client/_app/immutable/assets/0.CAO2ssDt.css +1 -0
  2. package/build/client/_app/immutable/assets/0.CAO2ssDt.css.br +0 -0
  3. package/build/client/_app/immutable/assets/0.CAO2ssDt.css.gz +0 -0
  4. package/build/client/_app/immutable/chunks/{DB1q-JFC.js → BWi4DUSP.js} +1 -1
  5. package/build/client/_app/immutable/chunks/{DB1q-JFC.js.br → BWi4DUSP.js.br} +0 -0
  6. package/build/client/_app/immutable/chunks/{DB1q-JFC.js.gz → BWi4DUSP.js.gz} +0 -0
  7. package/build/client/_app/immutable/chunks/CIVgrm-h.js +100 -0
  8. package/build/client/_app/immutable/chunks/CIVgrm-h.js.br +0 -0
  9. package/build/client/_app/immutable/chunks/CIVgrm-h.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/{D1duoKAw.js → CV88cyNb.js} +1 -1
  11. package/build/client/_app/immutable/chunks/CV88cyNb.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/CV88cyNb.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/{WK3b3g7j.js → DBydSc_k.js} +1 -1
  14. package/build/client/_app/immutable/chunks/DBydSc_k.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/DBydSc_k.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/DXCdBROZ.js +1 -0
  17. package/build/client/_app/immutable/chunks/DXCdBROZ.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/DXCdBROZ.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/Dn1P-MHB.js +1 -0
  20. package/build/client/_app/immutable/chunks/Dn1P-MHB.js.br +0 -0
  21. package/build/client/_app/immutable/chunks/Dn1P-MHB.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/{6j6qgi5m.js → tmOlV5v8.js} +1 -1
  23. package/build/client/_app/immutable/chunks/tmOlV5v8.js.br +0 -0
  24. package/build/client/_app/immutable/chunks/tmOlV5v8.js.gz +0 -0
  25. package/build/client/_app/immutable/chunks/{CTZvkzKQ.js → xX_XT4gL.js} +1 -1
  26. package/build/client/_app/immutable/chunks/xX_XT4gL.js.br +0 -0
  27. package/build/client/_app/immutable/chunks/xX_XT4gL.js.gz +0 -0
  28. package/build/client/_app/immutable/entry/{app.nHtLn0I6.js → app.916GSB-q.js} +2 -2
  29. package/build/client/_app/immutable/entry/app.916GSB-q.js.br +0 -0
  30. package/build/client/_app/immutable/entry/app.916GSB-q.js.gz +0 -0
  31. package/build/client/_app/immutable/entry/start.BlKpwunw.js +1 -0
  32. package/build/client/_app/immutable/entry/start.BlKpwunw.js.br +0 -0
  33. package/build/client/_app/immutable/entry/start.BlKpwunw.js.gz +0 -0
  34. package/build/client/_app/immutable/nodes/{0.DwdBvQCI.js → 0.BNXYVuau.js} +1 -1
  35. package/build/client/_app/immutable/nodes/0.BNXYVuau.js.br +0 -0
  36. package/build/client/_app/immutable/nodes/0.BNXYVuau.js.gz +0 -0
  37. package/build/client/_app/immutable/nodes/{1.BiB21EXS.js → 1.DsXY_nT9.js} +1 -1
  38. package/build/client/_app/immutable/nodes/1.DsXY_nT9.js.br +0 -0
  39. package/build/client/_app/immutable/nodes/1.DsXY_nT9.js.gz +0 -0
  40. package/build/client/_app/immutable/nodes/2.CZ0cjprV.js +4 -0
  41. package/build/client/_app/immutable/nodes/2.CZ0cjprV.js.br +0 -0
  42. package/build/client/_app/immutable/nodes/2.CZ0cjprV.js.gz +0 -0
  43. package/build/client/_app/immutable/nodes/3.C2uGzWU7.js +10 -0
  44. package/build/client/_app/immutable/nodes/3.C2uGzWU7.js.br +0 -0
  45. package/build/client/_app/immutable/nodes/3.C2uGzWU7.js.gz +0 -0
  46. package/build/client/_app/version.json +1 -1
  47. package/build/client/_app/version.json.br +0 -0
  48. package/build/client/_app/version.json.gz +0 -0
  49. package/build/server/chunks/0-jdsum4C3.js +17 -0
  50. package/build/server/chunks/{0-D-HsJ-vO.js.map → 0-jdsum4C3.js.map} +1 -1
  51. package/build/server/chunks/1-BYeUhsmD.js +9 -0
  52. package/build/server/chunks/{1-DeMndDCs.js.map → 1-BYeUhsmD.js.map} +1 -1
  53. package/build/server/chunks/2-DCTjRzoT.js +9 -0
  54. package/build/server/chunks/{2-D0dwPnJg.js.map → 2-DCTjRzoT.js.map} +1 -1
  55. package/build/server/chunks/3-B9BSW5vF.js +9 -0
  56. package/build/server/chunks/{3-D7qojxmc.js.map → 3-B9BSW5vF.js.map} +1 -1
  57. package/build/server/chunks/{Toast-AVuTocXd.js → Toast-DphhBJuq.js} +2 -2
  58. package/build/server/chunks/{Toast-AVuTocXd.js.map → Toast-DphhBJuq.js.map} +1 -1
  59. package/build/server/chunks/{_layout.svelte-DaSyc-mf.js → _layout.svelte-Ci8sOmOu.js} +3 -3
  60. package/build/server/chunks/{_layout.svelte-DaSyc-mf.js.map → _layout.svelte-Ci8sOmOu.js.map} +1 -1
  61. package/build/server/chunks/{_page.svelte-D0jFzJtD.js → _page.svelte-D_BOH21Z.js} +104 -27
  62. package/build/server/chunks/_page.svelte-D_BOH21Z.js.map +1 -0
  63. package/build/server/chunks/{_page.svelte-D3EVHdvH.js → _page.svelte-qf7I4k56.js} +5 -3
  64. package/build/server/chunks/_page.svelte-qf7I4k56.js.map +1 -0
  65. package/build/server/chunks/{_server.ts-DbJhWH7w.js → _server.ts-B1KT6hNX.js} +2 -2
  66. package/build/server/chunks/{_server.ts-DbJhWH7w.js.map → _server.ts-B1KT6hNX.js.map} +1 -1
  67. package/build/server/chunks/{_server.ts-kBggS0l1.js → _server.ts-B_dPERCt.js} +2 -2
  68. package/build/server/chunks/{_server.ts-kBggS0l1.js.map → _server.ts-B_dPERCt.js.map} +1 -1
  69. package/build/server/chunks/{_server.ts-C923Ajq5.js → _server.ts-C81u7vBe.js} +2 -2
  70. package/build/server/chunks/{_server.ts-C923Ajq5.js.map → _server.ts-C81u7vBe.js.map} +1 -1
  71. package/build/server/chunks/{_server.ts-27jrx6Uo.js → _server.ts-CJWvO9uu.js} +2 -2
  72. package/build/server/chunks/{_server.ts-27jrx6Uo.js.map → _server.ts-CJWvO9uu.js.map} +1 -1
  73. package/build/server/chunks/{_server.ts-ClQdpaTd.js → _server.ts-CTRA41QW.js} +3 -3
  74. package/build/server/chunks/{_server.ts-ClQdpaTd.js.map → _server.ts-CTRA41QW.js.map} +1 -1
  75. package/build/server/chunks/{_server.ts-BthX-Q9z.js → _server.ts-CWet6xGL.js} +2 -2
  76. package/build/server/chunks/{_server.ts-BthX-Q9z.js.map → _server.ts-CWet6xGL.js.map} +1 -1
  77. package/build/server/chunks/{_server.ts-Btc51FlH.js → _server.ts-CapYucgb.js} +3 -3
  78. package/build/server/chunks/{_server.ts-Btc51FlH.js.map → _server.ts-CapYucgb.js.map} +1 -1
  79. package/build/server/chunks/_server.ts-CcSpo97g.js +26 -0
  80. package/build/server/chunks/_server.ts-CcSpo97g.js.map +1 -0
  81. package/build/server/chunks/{_server.ts-BhOezmyL.js → _server.ts-CqQ9rWXw.js} +2 -2
  82. package/build/server/chunks/{_server.ts-BhOezmyL.js.map → _server.ts-CqQ9rWXw.js.map} +1 -1
  83. package/build/server/chunks/{_server.ts-D3dUenaL.js → _server.ts-CvSLjZQw.js} +2 -2
  84. package/build/server/chunks/{_server.ts-D3dUenaL.js.map → _server.ts-CvSLjZQw.js.map} +1 -1
  85. package/build/server/chunks/{_server.ts-DtT_v20j.js → _server.ts-CxiEFRAq.js} +2 -2
  86. package/build/server/chunks/{_server.ts-DtT_v20j.js.map → _server.ts-CxiEFRAq.js.map} +1 -1
  87. package/build/server/chunks/{_server.ts-BhQT5YuB.js → _server.ts-DOFfDn1r.js} +2 -2
  88. package/build/server/chunks/{_server.ts-BhQT5YuB.js.map → _server.ts-DOFfDn1r.js.map} +1 -1
  89. package/build/server/chunks/{_server.ts-SnEIAk-f.js → _server.ts-DcDUM1Kz.js} +2 -2
  90. package/build/server/chunks/{_server.ts-SnEIAk-f.js.map → _server.ts-DcDUM1Kz.js.map} +1 -1
  91. package/build/server/chunks/{_server.ts-D4gj35xA.js → _server.ts-DrOQIgve.js} +3 -3
  92. package/build/server/chunks/{_server.ts-D4gj35xA.js.map → _server.ts-DrOQIgve.js.map} +1 -1
  93. package/build/server/chunks/{_server.ts-CqC271AX.js → _server.ts-SD3IG0Nz.js} +2 -2
  94. package/build/server/chunks/{_server.ts-CqC271AX.js.map → _server.ts-SD3IG0Nz.js.map} +1 -1
  95. package/build/server/chunks/{_server.ts-BFl5HqTC.js → _server.ts-WHg0iN-X.js} +2 -2
  96. package/build/server/chunks/{_server.ts-BFl5HqTC.js.map → _server.ts-WHg0iN-X.js.map} +1 -1
  97. package/build/server/chunks/{_server.ts-Bz6R94Qf.js → _server.ts-fB5v4AVe.js} +2 -2
  98. package/build/server/chunks/{_server.ts-Bz6R94Qf.js.map → _server.ts-fB5v4AVe.js.map} +1 -1
  99. package/build/server/chunks/{index2-gxrJEKeb.js → index2-DXtV4Brk.js} +116 -4
  100. package/build/server/chunks/index2-DXtV4Brk.js.map +1 -0
  101. package/build/server/chunks/{session-CYkrEqv3.js → session-BBfQJrG5.js} +2 -2
  102. package/build/server/chunks/{session-CYkrEqv3.js.map → session-BBfQJrG5.js.map} +1 -1
  103. package/build/server/index.js +1 -1
  104. package/build/server/index.js.map +1 -1
  105. package/build/server/manifest.js +28 -21
  106. package/build/server/manifest.js.map +1 -1
  107. package/package.json +3 -3
  108. package/build/client/_app/immutable/assets/0.nXM4xjKW.css +0 -1
  109. package/build/client/_app/immutable/assets/0.nXM4xjKW.css.br +0 -0
  110. package/build/client/_app/immutable/assets/0.nXM4xjKW.css.gz +0 -0
  111. package/build/client/_app/immutable/chunks/6j6qgi5m.js.br +0 -0
  112. package/build/client/_app/immutable/chunks/6j6qgi5m.js.gz +0 -0
  113. package/build/client/_app/immutable/chunks/B6sDeAgz.js +0 -1
  114. package/build/client/_app/immutable/chunks/B6sDeAgz.js.br +0 -0
  115. package/build/client/_app/immutable/chunks/B6sDeAgz.js.gz +0 -0
  116. package/build/client/_app/immutable/chunks/BylljJLn.js +0 -1
  117. package/build/client/_app/immutable/chunks/BylljJLn.js.br +0 -0
  118. package/build/client/_app/immutable/chunks/BylljJLn.js.gz +0 -0
  119. package/build/client/_app/immutable/chunks/CTZvkzKQ.js.br +0 -0
  120. package/build/client/_app/immutable/chunks/CTZvkzKQ.js.gz +0 -0
  121. package/build/client/_app/immutable/chunks/D1duoKAw.js.br +0 -0
  122. package/build/client/_app/immutable/chunks/D1duoKAw.js.gz +0 -0
  123. package/build/client/_app/immutable/chunks/Do3Mx-wN.js +0 -100
  124. package/build/client/_app/immutable/chunks/Do3Mx-wN.js.br +0 -0
  125. package/build/client/_app/immutable/chunks/Do3Mx-wN.js.gz +0 -0
  126. package/build/client/_app/immutable/chunks/WK3b3g7j.js.br +0 -0
  127. package/build/client/_app/immutable/chunks/WK3b3g7j.js.gz +0 -0
  128. package/build/client/_app/immutable/entry/app.nHtLn0I6.js.br +0 -0
  129. package/build/client/_app/immutable/entry/app.nHtLn0I6.js.gz +0 -0
  130. package/build/client/_app/immutable/entry/start.DHjDjXX8.js +0 -1
  131. package/build/client/_app/immutable/entry/start.DHjDjXX8.js.br +0 -0
  132. package/build/client/_app/immutable/entry/start.DHjDjXX8.js.gz +0 -0
  133. package/build/client/_app/immutable/nodes/0.DwdBvQCI.js.br +0 -0
  134. package/build/client/_app/immutable/nodes/0.DwdBvQCI.js.gz +0 -0
  135. package/build/client/_app/immutable/nodes/1.BiB21EXS.js.br +0 -2
  136. package/build/client/_app/immutable/nodes/1.BiB21EXS.js.gz +0 -0
  137. package/build/client/_app/immutable/nodes/2.BEPizQDT.js +0 -4
  138. package/build/client/_app/immutable/nodes/2.BEPizQDT.js.br +0 -0
  139. package/build/client/_app/immutable/nodes/2.BEPizQDT.js.gz +0 -0
  140. package/build/client/_app/immutable/nodes/3.BgRuDlwU.js +0 -8
  141. package/build/client/_app/immutable/nodes/3.BgRuDlwU.js.br +0 -0
  142. package/build/client/_app/immutable/nodes/3.BgRuDlwU.js.gz +0 -0
  143. package/build/server/chunks/0-D-HsJ-vO.js +0 -17
  144. package/build/server/chunks/1-DeMndDCs.js +0 -9
  145. package/build/server/chunks/2-D0dwPnJg.js +0 -9
  146. package/build/server/chunks/3-D7qojxmc.js +0 -9
  147. package/build/server/chunks/_page.svelte-D0jFzJtD.js.map +0 -1
  148. package/build/server/chunks/_page.svelte-D3EVHdvH.js.map +0 -1
  149. package/build/server/chunks/index2-gxrJEKeb.js.map +0 -1
@@ -2,8 +2,8 @@ import { o as head, p as attr, q as stringify, t as store_get, x as escape_html,
2
2
  import './exports-7ECo9oy7.js';
3
3
  import './client-C63uMw4h.js';
4
4
  import { p as page } from './index3-vPlrIIie.js';
5
- import { C as ConfirmModal, T as Toast } from './Toast-AVuTocXd.js';
6
- import './index2-gxrJEKeb.js';
5
+ import { C as ConfirmModal, T as Toast } from './Toast-DphhBJuq.js';
6
+ import './index2-DXtV4Brk.js';
7
7
  import 'marked';
8
8
  import 'fs';
9
9
  import 'fs/promises';
@@ -131,4 +131,4 @@ function _layout($$renderer, $$props) {
131
131
  }
132
132
 
133
133
  export { _layout as default };
134
- //# sourceMappingURL=_layout.svelte-DaSyc-mf.js.map
134
+ //# sourceMappingURL=_layout.svelte-Ci8sOmOu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_layout.svelte-DaSyc-mf.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/_layout.svelte.js"],"sourcesContent":["import { h as head, a as attr, d as derived$1, s as stringify, b as store_get, e as escape_html, c as attr_class, f as unsubscribe_stores } from \"../../chunks/root.js\";\nimport \"@sveltejs/kit/internal\";\nimport { w as writable, e as derived } from \"../../chunks/index.js\";\nimport \"../../chunks/utils2.js\";\nimport \"@sveltejs/kit/internal/server\";\nimport \"../../chunks/exports.js\";\nimport \"../../chunks/client.js\";\nimport { p as page } from \"../../chunks/index3.js\";\nimport { C as ConfirmModal, T as Toast } from \"../../chunks/Toast.js\";\nimport \"../../chunks/index2.js\";\nconst getStoredPreference = () => {\n if (typeof localStorage === \"undefined\") return \"system\";\n const stored = localStorage.getItem(\"theme\");\n if (stored === \"light\" || stored === \"dark\" || stored === \"system\") return stored;\n return \"system\";\n};\nconst getSystemTheme = () => {\n if (typeof window === \"undefined\") return \"dark\";\n return window.matchMedia(\"(prefers-color-scheme: light)\").matches ? \"light\" : \"dark\";\n};\nconst themePreference = writable(getStoredPreference());\nconst effectiveTheme = derived(themePreference, ($pref) => {\n if ($pref === \"system\") return getSystemTheme();\n return $pref;\n});\nfunction _layout($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n var $$store_subs;\n let { children } = $$props;\n const isSessionPage = derived$1(() => page.url.pathname.startsWith(\"/session/\"));\n const currentSessionInfo = derived$1(() => {\n if (!isSessionPage()) return null;\n const match = page.url.pathname.match(/^\\/session\\/([^/]+)\\/([^/]+)/);\n if (!match) return null;\n return {\n projectName: decodeURIComponent(match[1]),\n sessionId: decodeURIComponent(match[2])\n };\n });\n let cleaning = false;\n let shuttingDown = false;\n let toastMessage = null;\n let toastVariant = \"info\";\n let confirmModal = {\n show: false,\n title: \"\",\n message: \"\",\n variant: \"default\",\n onConfirm: () => {\n }\n };\n const closeConfirm = () => {\n confirmModal = { ...confirmModal, show: false };\n };\n let searchQuery = \"\";\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n head(\"12qhfyh\", $$renderer3, ($$renderer4) => {\n $$renderer4.title(($$renderer5) => {\n $$renderer5.push(`<title>Claude Sessions</title>`);\n });\n });\n $$renderer3.push(`<div class=\"min-h-screen flex flex-col bg-gh-bg text-gh-text\"><header class=\"bg-gh-bg-secondary border-b border-gh-border px-8 py-4 flex justify-between items-center\"><div class=\"flex items-center gap-3\"><a${attr(\"href\", currentSessionInfo() ? `/#project=${encodeURIComponent(currentSessionInfo().projectName)}` : \"/\")} class=\"flex items-center gap-2 hover:text-gh-accent\"${attr(\"title\", currentSessionInfo() ? \"Back to project\" : \"Claude Sessions\")}><svg class=\"w-6 h-6 text-gh-accent\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z\"></path></svg> <span class=\"text-2xl font-semibold hidden sm:inline\">Claude Sessions</span></a> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> <button class=\"p-1.5 rounded-md text-gh-text-secondary hover:text-gh-text hover:bg-gh-border-subtle transition-colors\"${attr(\"title\", `Theme: ${stringify(store_get($$store_subs ??= {}, \"$themePreference\", themePreference))} (${stringify(store_get($$store_subs ??= {}, \"$effectiveTheme\", effectiveTheme))})`)}>`);\n if (store_get($$store_subs ??= {}, \"$effectiveTheme\", effectiveTheme) === \"light\") {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 11-8 0 4 4 0 018 0z\"></path></svg>`);\n } else if (store_get($$store_subs ??= {}, \"$themePreference\", themePreference) === \"system\") {\n $$renderer3.push(\"<!--[1-->\");\n $$renderer3.push(`<svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9.75 17L9 20l-1 1h8l-1-1-.75-3M3 13h18M5 17h14a2 2 0 002-2V5a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z\"></path></svg>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n $$renderer3.push(`<svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M20.354 15.354A9 9 0 018.646 3.646 9.003 9.003 0 0012 21a9.003 9.003 0 008.354-5.646z\"></path></svg>`);\n }\n $$renderer3.push(`<!--]--></button></div> <div class=\"relative flex-1 max-w-md mx-8\"><input type=\"text\" placeholder=\"Search sessions...\"${attr(\"value\", searchQuery)} class=\"w-full px-4 py-2 bg-gh-bg border border-gh-border rounded-md text-sm focus:outline-none focus:border-gh-accent\"/> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div> <div class=\"flex gap-2\"><button class=\"bg-gh-border-subtle border border-gh-border text-gh-text px-4 py-2 rounded-md text-sm transition-colors hover:bg-gh-border hover:border-gh-text-secondary disabled:opacity-50 disabled:cursor-not-allowed\"${attr(\"disabled\", cleaning, true)}>${escape_html(\"Cleanup\")}</button> <button class=\"bg-gh-red border border-gh-red text-white px-4 py-2 rounded-md text-sm transition-colors hover:bg-red-700 disabled:opacity-50 disabled:cursor-not-allowed\"${attr(\"disabled\", shuttingDown, true)}>${escape_html(\"Shutdown\")}</button></div></header> <main${attr_class(`flex-1 ${stringify(isSessionPage() ? \"\" : \"p-8 max-w-7xl mx-auto\")} w-full overflow-y-auto`)}>`);\n children($$renderer3);\n $$renderer3.push(`<!----></main></div> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n ConfirmModal($$renderer3, {\n show: confirmModal.show,\n title: confirmModal.title,\n message: confirmModal.message,\n variant: confirmModal.variant,\n onConfirm: confirmModal.onConfirm,\n onCancel: closeConfirm\n });\n $$renderer3.push(`<!----> `);\n Toast($$renderer3, {\n variant: toastVariant,\n get message() {\n return toastMessage;\n },\n set message($$value) {\n toastMessage = $$value;\n $$settled = false;\n }\n });\n $$renderer3.push(`<!---->`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n if ($$store_subs) unsubscribe_stores($$store_subs);\n });\n}\nexport {\n _layout as default\n};\n"],"names":["derived","derived$1"],"mappings":";;;;;;;;;;;;;;AAUA,MAAM,mBAAmB,GAAG,MAAM;AAClC,EAAE,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,OAAO,QAAQ;AAC1D,EAAE,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;AAC9C,EAAE,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,OAAO,MAAM;AACnF,EAAE,OAAO,QAAQ;AACjB,CAAC;AACD,MAAM,cAAc,GAAG,MAAM;AAC7B,EAAE,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,OAAO,MAAM;AAClD,EAAE,OAAO,MAAM,CAAC,UAAU,CAAC,+BAA+B,CAAC,CAAC,OAAO,GAAG,OAAO,GAAG,MAAM;AACtF,CAAC;AACD,MAAM,eAAe,GAAG,QAAQ,CAAC,mBAAmB,EAAE,CAAC;AACvD,MAAM,cAAc,GAAGA,SAAO,CAAC,eAAe,EAAE,CAAC,KAAK,KAAK;AAC3D,EAAE,IAAI,KAAK,KAAK,QAAQ,EAAE,OAAO,cAAc,EAAE;AACjD,EAAE,OAAO,KAAK;AACd,CAAC,CAAC;AACF,SAAS,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE;AACtC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,KAAK;AACxC,IAAI,IAAI,YAAY;AACpB,IAAI,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO;AAC9B,IAAI,MAAM,aAAa,GAAGC,OAAS,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AACpF,IAAI,MAAM,kBAAkB,GAAGA,OAAS,CAAC,MAAM;AAC/C,MAAM,IAAI,CAAC,aAAa,EAAE,EAAE,OAAO,IAAI;AACvC,MAAM,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,8BAA8B,CAAC;AAC3E,MAAM,IAAI,CAAC,KAAK,EAAE,OAAO,IAAI;AAC7B,MAAM,OAAO;AACb,QAAQ,WAAW,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACjD,QAAQ,SAAS,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9C,OAAO;AACP,IAAI,CAAC,CAAC;AACN,IAAI,IAAI,QAAQ,GAAG,KAAK;AACxB,IAAI,IAAI,YAAY,GAAG,KAAK;AAC5B,IAAI,IAAI,YAAY,GAAG,IAAI;AAC3B,IAAI,IAAI,YAAY,GAAG,MAAM;AAC7B,IAAI,IAAI,YAAY,GAAG;AACvB,MAAM,IAAI,EAAE,KAAK;AACjB,MAAM,KAAK,EAAE,EAAE;AACf,MAAM,OAAO,EAAE,EAAE;AACjB,MAAM,OAAO,EAAE,SAAS;AACxB,MAAM,SAAS,EAAE,MAAM;AACvB,MAAM;AACN,KAAK;AACL,IAAI,MAAM,YAAY,GAAG,MAAM;AAC/B,MAAM,YAAY,GAAG,EAAE,GAAG,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE;AACrD,IAAI,CAAC;AACL,IAAI,IAAI,WAAW,GAAG,EAAE;AACxB,IAAI,IAAI,SAAS,GAAG,IAAI;AACxB,IAAI,IAAI,gBAAgB;AACxB,IAAI,SAAS,cAAc,CAAC,WAAW,EAAE;AACzC,MAAM,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,WAAW,KAAK;AACpD,QAAQ,WAAW,CAAC,KAAK,CAAC,CAAC,WAAW,KAAK;AAC3C,UAAU,WAAW,CAAC,IAAI,CAAC,CAAC,8BAA8B,CAAC,CAAC;AAC5D,QAAQ,CAAC,CAAC;AACV,MAAM,CAAC,CAAC;AACR,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,8MAA8M,EAAE,IAAI,CAAC,MAAM,EAAE,kBAAkB,EAAE,GAAG,CAAC,UAAU,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,qDAAqD,EAAE,IAAI,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,iBAAiB,GAAG,iBAAiB,CAAC,CAAC,yVAAyV,CAAC,CAAC;AACrzB,MAAM;AACN,QAAQ,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,MAAM;AACN,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,+HAA+H,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,YAAY,KAAK,EAAE,EAAE,kBAAkB,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,SAAS,CAAC,YAAY,KAAK,EAAE,EAAE,iBAAiB,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACxV,MAAM,IAAI,SAAS,CAAC,YAAY,KAAK,EAAE,EAAE,iBAAiB,EAAE,cAAc,CAAC,KAAK,OAAO,EAAE;AACzF,QAAQ,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;AACrC,QAAQ,WAAW,CAAC,IAAI,CAAC,CAAC,wTAAwT,CAAC,CAAC;AACpV,MAAM,CAAC,MAAM,IAAI,SAAS,CAAC,YAAY,KAAK,EAAE,EAAE,kBAAkB,EAAE,eAAe,CAAC,KAAK,QAAQ,EAAE;AACnG,QAAQ,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;AACrC,QAAQ,WAAW,CAAC,IAAI,CAAC,CAAC,4QAA4Q,CAAC,CAAC;AACxS,MAAM,CAAC,MAAM;AACb,QAAQ,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,QAAQ,WAAW,CAAC,IAAI,CAAC,CAAC,wPAAwP,CAAC,CAAC;AACpR,MAAM;AACN,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,sHAAsH,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,0HAA0H,CAAC,CAAC;AACvS,MAAM;AACN,QAAQ,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,MAAM;AACN,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;AACnC,MAAM;AACN,QAAQ,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,MAAM;AACN,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,gQAAgQ,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC,mLAAmL,EAAE,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC,8BAA8B,EAAE,UAAU,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,aAAa,EAAE,GAAG,EAAE,GAAG,uBAAuB,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACttB,MAAM,QAAQ,CAAC,WAAW,CAAC;AAC3B,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,qBAAqB,CAAC,CAAC;AAC/C,MAAM;AACN,QAAQ,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,MAAM;AACN,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;AACnC,MAAM;AACN,QAAQ,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,MAAM;AACN,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;AACnC,MAAM,YAAY,CAAC,WAAW,EAAE;AAChC,QAAQ,IAAI,EAAE,YAAY,CAAC,IAAI;AAC/B,QAAQ,KAAK,EAAE,YAAY,CAAC,KAAK;AACjC,QAAQ,OAAO,EAAE,YAAY,CAAC,OAAO;AACrC,QAAQ,OAAO,EAAE,YAAY,CAAC,OAAO;AACrC,QAAQ,SAAS,EAAE,YAAY,CAAC,SAAS;AACzC,QAAQ,QAAQ,EAAE;AAClB,OAAO,CAAC;AACR,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAClC,MAAM,KAAK,CAAC,WAAW,EAAE;AACzB,QAAQ,OAAO,EAAE,YAAY;AAC7B,QAAQ,IAAI,OAAO,GAAG;AACtB,UAAU,OAAO,YAAY;AAC7B,QAAQ,CAAC;AACT,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE;AAC7B,UAAU,YAAY,GAAG,OAAO;AAChC,UAAU,SAAS,GAAG,KAAK;AAC3B,QAAQ;AACR,OAAO,CAAC;AACR,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AACjC,IAAI;AACJ,IAAI,GAAG;AACP,MAAM,SAAS,GAAG,IAAI;AACtB,MAAM,gBAAgB,GAAG,WAAW,CAAC,IAAI,EAAE;AAC3C,MAAM,cAAc,CAAC,gBAAgB,CAAC;AACtC,IAAI,CAAC,QAAQ,CAAC,SAAS;AACvB,IAAI,WAAW,CAAC,OAAO,CAAC,gBAAgB,CAAC;AACzC,IAAI,IAAI,YAAY,EAAE,kBAAkB,CAAC,YAAY,CAAC;AACtD,EAAE,CAAC,CAAC;AACJ;;;;"}
1
+ {"version":3,"file":"_layout.svelte-Ci8sOmOu.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/_layout.svelte.js"],"sourcesContent":["import { h as head, a as attr, d as derived$1, s as stringify, b as store_get, e as escape_html, c as attr_class, f as unsubscribe_stores } from \"../../chunks/root.js\";\nimport \"@sveltejs/kit/internal\";\nimport { w as writable, e as derived } from \"../../chunks/index.js\";\nimport \"../../chunks/utils2.js\";\nimport \"@sveltejs/kit/internal/server\";\nimport \"../../chunks/exports.js\";\nimport \"../../chunks/client.js\";\nimport { p as page } from \"../../chunks/index3.js\";\nimport { C as ConfirmModal, T as Toast } from \"../../chunks/Toast.js\";\nimport \"../../chunks/index2.js\";\nconst getStoredPreference = () => {\n if (typeof localStorage === \"undefined\") return \"system\";\n const stored = localStorage.getItem(\"theme\");\n if (stored === \"light\" || stored === \"dark\" || stored === \"system\") return stored;\n return \"system\";\n};\nconst getSystemTheme = () => {\n if (typeof window === \"undefined\") return \"dark\";\n return window.matchMedia(\"(prefers-color-scheme: light)\").matches ? \"light\" : \"dark\";\n};\nconst themePreference = writable(getStoredPreference());\nconst effectiveTheme = derived(themePreference, ($pref) => {\n if ($pref === \"system\") return getSystemTheme();\n return $pref;\n});\nfunction _layout($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n var $$store_subs;\n let { children } = $$props;\n const isSessionPage = derived$1(() => page.url.pathname.startsWith(\"/session/\"));\n const currentSessionInfo = derived$1(() => {\n if (!isSessionPage()) return null;\n const match = page.url.pathname.match(/^\\/session\\/([^/]+)\\/([^/]+)/);\n if (!match) return null;\n return {\n projectName: decodeURIComponent(match[1]),\n sessionId: decodeURIComponent(match[2])\n };\n });\n let cleaning = false;\n let shuttingDown = false;\n let toastMessage = null;\n let toastVariant = \"info\";\n let confirmModal = {\n show: false,\n title: \"\",\n message: \"\",\n variant: \"default\",\n onConfirm: () => {\n }\n };\n const closeConfirm = () => {\n confirmModal = { ...confirmModal, show: false };\n };\n let searchQuery = \"\";\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n head(\"12qhfyh\", $$renderer3, ($$renderer4) => {\n $$renderer4.title(($$renderer5) => {\n $$renderer5.push(`<title>Claude Sessions</title>`);\n });\n });\n $$renderer3.push(`<div class=\"min-h-screen flex flex-col bg-gh-bg text-gh-text\"><header class=\"bg-gh-bg-secondary border-b border-gh-border px-8 py-4 flex justify-between items-center\"><div class=\"flex items-center gap-3\"><a${attr(\"href\", currentSessionInfo() ? `/#project=${encodeURIComponent(currentSessionInfo().projectName)}` : \"/\")} class=\"flex items-center gap-2 hover:text-gh-accent\"${attr(\"title\", currentSessionInfo() ? \"Back to project\" : \"Claude Sessions\")}><svg class=\"w-6 h-6 text-gh-accent\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z\"></path></svg> <span class=\"text-2xl font-semibold hidden sm:inline\">Claude Sessions</span></a> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> <button class=\"p-1.5 rounded-md text-gh-text-secondary hover:text-gh-text hover:bg-gh-border-subtle transition-colors\"${attr(\"title\", `Theme: ${stringify(store_get($$store_subs ??= {}, \"$themePreference\", themePreference))} (${stringify(store_get($$store_subs ??= {}, \"$effectiveTheme\", effectiveTheme))})`)}>`);\n if (store_get($$store_subs ??= {}, \"$effectiveTheme\", effectiveTheme) === \"light\") {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 11-8 0 4 4 0 018 0z\"></path></svg>`);\n } else if (store_get($$store_subs ??= {}, \"$themePreference\", themePreference) === \"system\") {\n $$renderer3.push(\"<!--[1-->\");\n $$renderer3.push(`<svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9.75 17L9 20l-1 1h8l-1-1-.75-3M3 13h18M5 17h14a2 2 0 002-2V5a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z\"></path></svg>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n $$renderer3.push(`<svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M20.354 15.354A9 9 0 018.646 3.646 9.003 9.003 0 0012 21a9.003 9.003 0 008.354-5.646z\"></path></svg>`);\n }\n $$renderer3.push(`<!--]--></button></div> <div class=\"relative flex-1 max-w-md mx-8\"><input type=\"text\" placeholder=\"Search sessions...\"${attr(\"value\", searchQuery)} class=\"w-full px-4 py-2 bg-gh-bg border border-gh-border rounded-md text-sm focus:outline-none focus:border-gh-accent\"/> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div> <div class=\"flex gap-2\"><button class=\"bg-gh-border-subtle border border-gh-border text-gh-text px-4 py-2 rounded-md text-sm transition-colors hover:bg-gh-border hover:border-gh-text-secondary disabled:opacity-50 disabled:cursor-not-allowed\"${attr(\"disabled\", cleaning, true)}>${escape_html(\"Cleanup\")}</button> <button class=\"bg-gh-red border border-gh-red text-white px-4 py-2 rounded-md text-sm transition-colors hover:bg-red-700 disabled:opacity-50 disabled:cursor-not-allowed\"${attr(\"disabled\", shuttingDown, true)}>${escape_html(\"Shutdown\")}</button></div></header> <main${attr_class(`flex-1 ${stringify(isSessionPage() ? \"\" : \"p-8 max-w-7xl mx-auto\")} w-full overflow-y-auto`)}>`);\n children($$renderer3);\n $$renderer3.push(`<!----></main></div> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n ConfirmModal($$renderer3, {\n show: confirmModal.show,\n title: confirmModal.title,\n message: confirmModal.message,\n variant: confirmModal.variant,\n onConfirm: confirmModal.onConfirm,\n onCancel: closeConfirm\n });\n $$renderer3.push(`<!----> `);\n Toast($$renderer3, {\n variant: toastVariant,\n get message() {\n return toastMessage;\n },\n set message($$value) {\n toastMessage = $$value;\n $$settled = false;\n }\n });\n $$renderer3.push(`<!---->`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n if ($$store_subs) unsubscribe_stores($$store_subs);\n });\n}\nexport {\n _layout as default\n};\n"],"names":["derived","derived$1"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { x as escape_html, E as ensure_array_like, p as attr, y as attr_class, q as stringify, z as derived, t as store_get, F as clsx, G as attributes, B as unsubscribe_stores, H as await_block, I as is_array, J as get_prototype_of, K as object_prototype } from './index-Dqbd-Nxp.js';
2
2
  import { b as base } from './server-Bf8x1V_n.js';
3
- import { T as Toast, C as ConfirmModal, f as formatProjectName, a as appConfig, t as truncate, b as formatDate, m as maskHomePath } from './Toast-AVuTocXd.js';
3
+ import { T as Toast, C as ConfirmModal, f as formatProjectName, a as appConfig, t as truncate, b as formatDate, m as maskHomePath } from './Toast-DphhBJuq.js';
4
4
  import { I as InputModal } from './InputModal-Cp5WgcYP.js';
5
- import { T as TREE_ICONS, x as sortProjects, y as getTotalTodoCount, z as getDisplayTitle, A as sessionHasSubItems, B as getSessionTooltip, C as validateProgressMessages, v as validateChain, D as parseCommandMessage, E as deleteMessageWithChainRepair } from './index2-gxrJEKeb.js';
5
+ import { T as TREE_ICONS, y as sortProjects, z as getTotalTodoCount, A as getDisplayTitle, B as sessionHasSubItems, C as getSessionTooltip, D as validateProgressMessages, v as validateChain, E as parseCommandMessage, F as deleteMessageWithChainRepair } from './index2-DXtV4Brk.js';
6
6
  import 'marked';
7
7
  import 'fs';
8
8
  import 'fs/promises';
@@ -881,6 +881,7 @@ function ProjectTree($$renderer, $$props) {
881
881
  loadingProject,
882
882
  sortField,
883
883
  sortOrder,
884
+ titleDisplayMode,
884
885
  onRenameSession,
885
886
  onDeleteSession,
886
887
  onResumeSession,
@@ -903,7 +904,13 @@ function ProjectTree($$renderer, $$props) {
903
904
  };
904
905
  const getDisplayTitle$1 = (session) => {
905
906
  const data = getSessionData(session.projectName, session.id);
906
- return getDisplayTitle(data?.customTitle, data?.currentSummary, session.title);
907
+ return getDisplayTitle({
908
+ customTitle: data?.customTitle,
909
+ currentSummary: data?.currentSummary,
910
+ title: session.title,
911
+ createdAt: session.createdAt,
912
+ mode: titleDisplayMode
913
+ });
907
914
  };
908
915
  const getSessionInfo = (session) => {
909
916
  const data = getSessionData(session.projectName, session.id);
@@ -963,7 +970,7 @@ function ProjectTree($$renderer, $$props) {
963
970
  $$renderer3.push(`<!--]-->`);
964
971
  }
965
972
  );
966
- $$renderer2.push(` <button class="bg-gh-bg-secondary border border-gh-border rounded px-2 py-1 text-sm cursor-pointer hover:border-gh-accent hover:bg-gh-border-subtle"${attr("title", sortOrder === "desc" ? "Descending (newest first)" : "Ascending (oldest first)")}>${escape_html(sortOrder === "desc" ? "↓" : "↑")}</button></div></div> <ul class="overflow-y-auto flex-1"><!--[-->`);
973
+ $$renderer2.push(` <button class="bg-gh-bg-secondary border border-gh-border rounded px-2 py-1 text-sm cursor-pointer hover:border-gh-accent hover:bg-gh-border-subtle"${attr("title", sortOrder === "desc" ? "Descending (newest first)" : "Ascending (oldest first)")}>${escape_html(sortOrder === "desc" ? "↓" : "↑")}</button> <span class="border-l border-gh-border h-4"></span> <button${attr_class(`bg-gh-bg-secondary border border-gh-border rounded px-2 py-1 text-sm cursor-pointer hover:border-gh-accent hover:bg-gh-border-subtle ${stringify(titleDisplayMode === "datetime" ? "border-gh-accent text-gh-accent" : "")}`)}${attr("aria-label", titleDisplayMode === "message" ? "Showing first message — click for date/time" : "Showing date/time — click for first message")}${attr("title", titleDisplayMode === "message" ? "Showing first message — click for date/time" : "Showing date/time — click for first message")}>${escape_html(titleDisplayMode === "datetime" ? "🕐" : "Aa")}</button></div></div> <ul class="overflow-y-auto flex-1"><!--[-->`);
967
974
  const each_array_1 = ensure_array_like(sortedProjects());
968
975
  for (let $$index_5 = 0, $$length = each_array_1.length; $$index_5 < $$length; $$index_5++) {
969
976
  let project = each_array_1[$$index_5];
@@ -1147,6 +1154,81 @@ function ScrollButtons($$renderer, $$props) {
1147
1154
  $$renderer2.push(`<!--]-->`);
1148
1155
  });
1149
1156
  }
1157
+ function SessionActions($$renderer, $$props) {
1158
+ let {
1159
+ onResumeSession,
1160
+ onCompressSession,
1161
+ onRenameSession,
1162
+ onDeleteSession
1163
+ } = $$props;
1164
+ if (onResumeSession || onCompressSession || onRenameSession || onDeleteSession) {
1165
+ $$renderer.push("<!--[0-->");
1166
+ $$renderer.push(`<div class="flex items-center gap-0.5">`);
1167
+ if (onResumeSession) {
1168
+ $$renderer.push("<!--[0-->");
1169
+ TooltipButton($$renderer, {
1170
+ class: "p-1.5 rounded text-gh-text-secondary hover:text-gh-green hover:bg-gh-green/10 text-sm transition-colors",
1171
+ onclick: onResumeSession,
1172
+ title: "Resume session",
1173
+ children: ($$renderer2) => {
1174
+ $$renderer2.push(`<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M14.752 11.168l-3.197-2.132A1 1 0 0010 9.87v4.263a1 1 0 001.555.832l3.197-2.132a1 1 0 000-1.664z"></path><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path></svg>`);
1175
+ },
1176
+ $$slots: { default: true }
1177
+ });
1178
+ } else {
1179
+ $$renderer.push("<!--[-1-->");
1180
+ }
1181
+ $$renderer.push(`<!--]--> `);
1182
+ if (onCompressSession) {
1183
+ $$renderer.push("<!--[0-->");
1184
+ TooltipButton($$renderer, {
1185
+ class: "p-1.5 rounded text-gh-text-secondary hover:text-gh-accent hover:bg-gh-accent/10 text-sm transition-colors",
1186
+ onclick: onCompressSession,
1187
+ title: "Compress session",
1188
+ children: ($$renderer2) => {
1189
+ $$renderer2.push(`<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m20.25 7.5-.625 10.632a2.25 2.25 0 0 1-2.247 2.118H6.622a2.25 2.25 0 0 1-2.247-2.118L3.75 7.5m8.25 3v6.75m0 0-3-3m3 3 3-3M3.375 7.5h17.25c.621 0 1.125-.504 1.125-1.125v-1.5c0-.621-.504-1.125-1.125-1.125H3.375c-.621 0-1.125.504-1.125 1.125v1.5c0 .621.504 1.125 1.125 1.125Z"></path></svg>`);
1190
+ },
1191
+ $$slots: { default: true }
1192
+ });
1193
+ } else {
1194
+ $$renderer.push("<!--[-1-->");
1195
+ }
1196
+ $$renderer.push(`<!--]--> `);
1197
+ if (onRenameSession) {
1198
+ $$renderer.push("<!--[0-->");
1199
+ TooltipButton($$renderer, {
1200
+ class: "p-1.5 rounded text-gh-text-secondary hover:text-gh-accent hover:bg-gh-accent/10 text-sm transition-colors",
1201
+ onclick: onRenameSession,
1202
+ title: "Rename session",
1203
+ children: ($$renderer2) => {
1204
+ $$renderer2.push(`<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z"></path></svg>`);
1205
+ },
1206
+ $$slots: { default: true }
1207
+ });
1208
+ } else {
1209
+ $$renderer.push("<!--[-1-->");
1210
+ }
1211
+ $$renderer.push(`<!--]--> `);
1212
+ if (onDeleteSession) {
1213
+ $$renderer.push("<!--[0-->");
1214
+ TooltipButton($$renderer, {
1215
+ class: "p-1.5 rounded text-gh-text-secondary hover:text-gh-red hover:bg-gh-red/10 text-sm transition-colors",
1216
+ onclick: onDeleteSession,
1217
+ title: "Delete session",
1218
+ children: ($$renderer2) => {
1219
+ $$renderer2.push(`<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"></path></svg>`);
1220
+ },
1221
+ $$slots: { default: true }
1222
+ });
1223
+ } else {
1224
+ $$renderer.push("<!--[-1-->");
1225
+ }
1226
+ $$renderer.push(`<!--]--></div>`);
1227
+ } else {
1228
+ $$renderer.push("<!--[-1-->");
1229
+ }
1230
+ $$renderer.push(`<!--]-->`);
1231
+ }
1150
1232
  function ValidationBadge($$renderer, $$props) {
1151
1233
  $$renderer.component(($$renderer2) => {
1152
1234
  let {
@@ -1269,7 +1351,9 @@ function SessionViewer($$renderer, $$props) {
1269
1351
  onRefresh,
1270
1352
  onEditTitle,
1271
1353
  onSplitSession,
1354
+ onCompressSession,
1272
1355
  onRenameSession,
1356
+ onResumeSession,
1273
1357
  onDeleteSession,
1274
1358
  enableScroll = true,
1275
1359
  externalScrollContainer = null,
@@ -1388,33 +1472,24 @@ function SessionViewer($$renderer, $$props) {
1388
1472
  $$renderer2.push("<!--[-1-->");
1389
1473
  $$renderer2.push(`<h2 class="text-base font-semibold">Messages</h2>`);
1390
1474
  }
1391
- $$renderer2.push(`<!--]--></div> `);
1392
- {
1475
+ $$renderer2.push(`<!--]--></div> <div class="flex flex-col items-end gap-2">`);
1476
+ if (session) {
1393
1477
  $$renderer2.push("<!--[0-->");
1394
- ScrollButtons($$renderer2, { messages, scrollContainer: scrollContainer() });
1478
+ SessionActions($$renderer2, {
1479
+ onResumeSession,
1480
+ onCompressSession,
1481
+ onRenameSession,
1482
+ onDeleteSession
1483
+ });
1484
+ } else {
1485
+ $$renderer2.push("<!--[-1-->");
1395
1486
  }
1396
1487
  $$renderer2.push(`<!--]--> `);
1397
- if (session && (onRenameSession || onDeleteSession)) {
1488
+ {
1398
1489
  $$renderer2.push("<!--[0-->");
1399
- $$renderer2.push(`<div class="flex items-center gap-0.5">`);
1400
- if (onRenameSession) {
1401
- $$renderer2.push("<!--[0-->");
1402
- $$renderer2.push(`<button class="p-1.5 rounded text-gh-text-secondary hover:text-gh-fg hover:bg-gh-border text-sm transition-colors" title="Rename session" aria-label="Rename session"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z"></path></svg></button>`);
1403
- } else {
1404
- $$renderer2.push("<!--[-1-->");
1405
- }
1406
- $$renderer2.push(`<!--]--> `);
1407
- if (onDeleteSession) {
1408
- $$renderer2.push("<!--[0-->");
1409
- $$renderer2.push(`<button class="p-1.5 rounded text-gh-text-secondary hover:text-gh-red hover:bg-gh-red/10 text-sm transition-colors" title="Delete session" aria-label="Delete session"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"></path></svg></button>`);
1410
- } else {
1411
- $$renderer2.push("<!--[-1-->");
1412
- }
1413
- $$renderer2.push(`<!--]--></div>`);
1414
- } else {
1415
- $$renderer2.push("<!--[-1-->");
1490
+ ScrollButtons($$renderer2, { messages, scrollContainer: scrollContainer() });
1416
1491
  }
1417
- $$renderer2.push(`<!--]--></div> `);
1492
+ $$renderer2.push(`<!--]--></div></div> `);
1418
1493
  if (session) {
1419
1494
  $$renderer2.push("<!--[0-->");
1420
1495
  $$renderer2.push(`<div class="flex border-b border-gh-border bg-gh-bg overflow-x-auto"><div class="flex-1 flex justify-center"><button${attr_class(`px-4 py-2 text-sm font-medium transition-colors whitespace-nowrap ${stringify(
@@ -1485,6 +1560,7 @@ function _page($$renderer, $$props) {
1485
1560
  let toast = null;
1486
1561
  let sortField = "summary";
1487
1562
  let sortOrder = "desc";
1563
+ let titleDisplayMode = "message";
1488
1564
  let confirmModal = {
1489
1565
  show: false,
1490
1566
  title: "",
@@ -1715,6 +1791,7 @@ Old messages (${oldMessagesCount}) will be moved to a new session.`, async () =>
1715
1791
  loadingProject,
1716
1792
  sortField,
1717
1793
  sortOrder,
1794
+ titleDisplayMode,
1718
1795
  onRenameSession: handleRenameSession,
1719
1796
  onDeleteSession: handleDeleteSession,
1720
1797
  onResumeSession: handleResumeSession,
@@ -1792,4 +1869,4 @@ Old messages (${oldMessagesCount}) will be moved to a new session.`, async () =>
1792
1869
  }
1793
1870
 
1794
1871
  export { _page as default };
1795
- //# sourceMappingURL=_page.svelte-D0jFzJtD.js.map
1872
+ //# sourceMappingURL=_page.svelte-D_BOH21Z.js.map