vibedoc 1.5.0 → 1.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +4 -4
- package/.next/prerender-manifest.json +11 -11
- package/.next/required-server-files.json +0 -4
- package/.next/server/app/(app)/activity/page/build-manifest.json +1 -1
- package/.next/server/app/(app)/activity/page.js.nft.json +1 -1
- package/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/board/page/build-manifest.json +1 -1
- package/.next/server/app/(app)/board/page.js.nft.json +1 -1
- package/.next/server/app/(app)/board/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/docs/page/build-manifest.json +1 -1
- package/.next/server/app/(app)/docs/page.js.nft.json +1 -1
- package/.next/server/app/(app)/docs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/explorer/page/build-manifest.json +1 -1
- package/.next/server/app/(app)/explorer/page.js.nft.json +1 -1
- package/.next/server/app/(app)/explorer/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/memory/page/build-manifest.json +1 -1
- package/.next/server/app/(app)/memory/page.js.nft.json +1 -1
- package/.next/server/app/(app)/memory/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/roadmap/page/build-manifest.json +1 -1
- package/.next/server/app/(app)/roadmap/page.js.nft.json +1 -1
- package/.next/server/app/(app)/roadmap/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/settings/page/build-manifest.json +1 -1
- package/.next/server/app/(app)/settings/page.js.nft.json +1 -1
- package/.next/server/app/(app)/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/setup/page/build-manifest.json +1 -1
- package/.next/server/app/(app)/setup/page.js.nft.json +1 -1
- package/.next/server/app/(app)/setup/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error/page/build-manifest.json +1 -1
- package/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page/build-manifest.json +1 -1
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +2 -2
- package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/activity.html +1 -1
- package/.next/server/app/activity.rsc +23 -22
- package/.next/server/app/activity.segments/!KGFwcCk/activity/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/activity.segments/_full.segment.rsc +23 -22
- package/.next/server/app/activity.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/api/activity/route.js +3 -3
- package/.next/server/app/api/activity/route.js.nft.json +1 -1
- package/.next/server/app/api/backlinks/route.js +3 -3
- package/.next/server/app/api/backlinks/route.js.nft.json +1 -1
- package/.next/server/app/api/chat/route.js +3 -3
- package/.next/server/app/api/chat/route.js.nft.json +1 -1
- package/.next/server/app/api/context/route.js +3 -3
- package/.next/server/app/api/context/route.js.nft.json +1 -1
- package/.next/server/app/api/decisions/route.js +3 -3
- package/.next/server/app/api/decisions/route.js.nft.json +1 -1
- package/.next/server/app/api/docs/route.js +3 -3
- package/.next/server/app/api/docs/route.js.nft.json +1 -1
- package/.next/server/app/api/events/route.js.nft.json +1 -1
- package/.next/server/app/api/explorer/route.js +4 -3
- package/.next/server/app/api/explorer/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/route.js +4 -4
- package/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/.next/server/app/api/memory/route.js +3 -3
- package/.next/server/app/api/memory/route.js.nft.json +1 -1
- package/.next/server/app/api/plan/apply/route.js +4 -4
- package/.next/server/app/api/plan/apply/route.js.nft.json +1 -1
- package/.next/server/app/api/projects/route.js +3 -3
- package/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/.next/server/app/api/registry/route.js +3 -3
- package/.next/server/app/api/registry/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/create/route.js +4 -4
- package/.next/server/app/api/roadmap/create/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/delete/route.js +4 -4
- package/.next/server/app/api/roadmap/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/generate/route.js +4 -4
- package/.next/server/app/api/roadmap/generate/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/layout/route.js +4 -4
- package/.next/server/app/api/roadmap/layout/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/route.js +3 -3
- package/.next/server/app/api/roadmap/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/update/route.js +4 -4
- package/.next/server/app/api/roadmap/update/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/route.js +3 -3
- package/.next/server/app/api/sessions/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/route.js +4 -4
- package/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/.next/server/app/api/setup/generate/route.js +2 -2
- package/.next/server/app/api/setup/generate/route.js.nft.json +1 -1
- package/.next/server/app/api/setup/write/route.js +3 -3
- package/.next/server/app/api/setup/write/route.js.nft.json +1 -1
- package/.next/server/app/api/summary/route.js +3 -3
- package/.next/server/app/api/summary/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/create/route.js +3 -3
- package/.next/server/app/api/tasks/create/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/route.js +3 -3
- package/.next/server/app/api/tasks/route.js.nft.json +1 -1
- package/.next/server/app/board.html +1 -1
- package/.next/server/app/board.rsc +23 -21
- package/.next/server/app/board.segments/!KGFwcCk/board/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/board.segments/_full.segment.rsc +23 -21
- package/.next/server/app/board.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/docs.html +1 -1
- package/.next/server/app/docs.rsc +27 -25
- package/.next/server/app/docs.segments/!KGFwcCk/docs/__PAGE__.segment.rsc +9 -10
- package/.next/server/app/docs.segments/_full.segment.rsc +27 -25
- package/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/explorer.html +1 -1
- package/.next/server/app/explorer.rsc +23 -22
- package/.next/server/app/explorer.segments/!KGFwcCk/explorer/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/explorer.segments/_full.segment.rsc +23 -22
- package/.next/server/app/explorer.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +2 -2
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/index.segments/_full.segment.rsc +2 -2
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/memory.html +1 -1
- package/.next/server/app/memory.rsc +23 -22
- package/.next/server/app/memory.segments/!KGFwcCk/memory/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/memory.segments/_full.segment.rsc +23 -22
- package/.next/server/app/memory.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/page/build-manifest.json +1 -1
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roadmap.html +1 -1
- package/.next/server/app/roadmap.rsc +26 -25
- package/.next/server/app/roadmap.segments/!KGFwcCk/roadmap/__PAGE__.segment.rsc +11 -9
- package/.next/server/app/roadmap.segments/_full.segment.rsc +26 -25
- package/.next/server/app/roadmap.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings.html +1 -1
- package/.next/server/app/settings.rsc +23 -22
- package/.next/server/app/settings.segments/!KGFwcCk/settings/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/settings.segments/_full.segment.rsc +23 -22
- package/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/setup.html +1 -1
- package/.next/server/app/setup.rsc +23 -21
- package/.next/server/app/setup.segments/!KGFwcCk/setup/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/setup.segments/_full.segment.rsc +23 -21
- package/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
- package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0-q4v32._.js → 11mp_@anthropic-ai_sdk_0-5bkpj._.js} +2 -2
- package/.next/server/chunks/{11mp_@anthropic-ai_sdk_05hfnhc._.js → 11mp_@anthropic-ai_sdk_00psb_y._.js} +2 -2
- package/.next/server/chunks/{11mp_@anthropic-ai_sdk_05dmim9._.js → 11mp_@anthropic-ai_sdk_01l5h3i._.js} +2 -2
- package/.next/server/chunks/{11mp_@anthropic-ai_sdk_07xtb0h._.js → 11mp_@anthropic-ai_sdk_072r2bd._.js} +2 -2
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0am8bw2._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0enefn6._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0k3n_5f._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0lcfjm4._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0lfx9av._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0qau3qw._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0r1pmvm._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_11t-z2t._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_15hyn79._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1_qk07x._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1b2929e._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1e72c89._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1eq7asn._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1fhdojs._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1lh_vwq._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ludf-o._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1m3luz3._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1x1iz3d._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1xsmwlh._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_202spah._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_215hw9u._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0n-i0pd._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_13pos4j._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_17b4pqr._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1bkcmom._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1hlj_3l._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1ip-sor._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1pex5o1._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1s8lc8_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__03upgv8._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__03upgv8._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__05l6129._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0u2rl0m._.js.map → [root-of-the-server]__05l6129._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__06zf_sh._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__01yk8oi._.js.map → [root-of-the-server]__06zf_sh._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__093hlkh._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1337jpl._.js.map → [root-of-the-server]__093hlkh._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0aynzrb._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0b49g9i._.js.map → [root-of-the-server]__0aynzrb._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0e59y5j._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0eqd-tw._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0yd6wlm._.js.map → [root-of-the-server]__0eqd-tw._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0nfvvy9._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0j-xjbf._.js.map → [root-of-the-server]__0nfvvy9._.js.map} +1 -1
- package/.next/server/chunks/{[root-of-the-server]__03t5uqz._.js → [root-of-the-server]__0qac4k0._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__03t5uqz._.js.map → [root-of-the-server]__0qac4k0._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__106gpvh._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0kaegk7._.js.map → [root-of-the-server]__106gpvh._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__11s-8eg._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__02k1gkk._.js.map → [root-of-the-server]__11s-8eg._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__11s76m8._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__142icjb._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1yow6hw._.js.map → [root-of-the-server]__142icjb._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__14aeqoi._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__14aeqoi._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1613hjb._.js +88 -0
- package/.next/server/chunks/[root-of-the-server]__1613hjb._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__169hmq_._.js +10 -0
- package/.next/server/chunks/{[root-of-the-server]__0d4jkve._.js.map → [root-of-the-server]__169hmq_._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__17p0rkn._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0v8x64y._.js.map → [root-of-the-server]__17p0rkn._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__17xb02p._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0zybyuh._.js.map → [root-of-the-server]__17xb02p._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__18kxo4a._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1znbm9i._.js.map → [root-of-the-server]__18kxo4a._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1c55c2q._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0l3voov._.js.map → [root-of-the-server]__1c55c2q._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1j0rrps._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0635d15._.js.map → [root-of-the-server]__1j0rrps._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1lj_2cv._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0qsx33x._.js.map → [root-of-the-server]__1lj_2cv._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1o4a-4j._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1vaownn._.js.map → [root-of-the-server]__1o4a-4j._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1q4ahvz._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1hsybai._.js.map → [root-of-the-server]__1q4ahvz._.js.map} +1 -1
- package/.next/server/chunks/{[root-of-the-server]__1337jpl._.js → [root-of-the-server]__1u_q61h._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__0kkefbq._.js.map → [root-of-the-server]__1u_q61h._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1wr0m-s._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0-rjzmv._.js.map → [root-of-the-server]__1wr0m-s._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1xb0fmp._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__15suc44._.js.map → [root-of-the-server]__1xb0fmp._.js.map} +1 -1
- package/.next/server/chunks/{[root-of-the-server]__1hsybai._.js → [root-of-the-server]__1y-tt29._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__0af0ma6._.js.map → [root-of-the-server]__1y-tt29._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1y3u5ud._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0xqsv4h._.js.map → [root-of-the-server]__1y3u5ud._.js.map} +1 -1
- package/.next/server/chunks/[turbopack]_runtime.js +0 -132
- package/.next/server/chunks/[turbopack]_runtime.js.map +4 -5
- package/.next/server/chunks/_04byth9._.js +34 -0
- package/.next/server/chunks/_04byth9._.js.map +1 -0
- package/.next/server/chunks/_1au4syj._.js +1 -1
- package/.next/server/chunks/_1au4syj._.js.map +1 -1
- package/.next/server/chunks/_1b5fqxy._.js +3 -0
- package/.next/server/chunks/_1b5fqxy._.js.map +1 -0
- package/.next/server/chunks/_1si7nb_._.js +8 -8
- package/.next/server/chunks/_1si7nb_._.js.map +1 -1
- package/.next/server/chunks/ssr/{0_nd_mermaid_dist_mermaid_core_mjs_10jvzv6._.js → 0_nd_mermaid_dist_mermaid_core_mjs_1vulg1x._.js} +2 -2
- package/.next/server/chunks/ssr/{1u84_katex_dist_katex_mjs_05prlqa._.js → 1u84_katex_dist_katex_mjs_0mwkb-i._.js} +1 -1
- package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_08ca0b4._.js +3 -0
- package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_08ca0b4._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0xt_0w2._.js.map +1 -1
- package/.next/server/chunks/ssr/[turbopack]_runtime.js +0 -132
- package/.next/server/chunks/ssr/[turbopack]_runtime.js.map +4 -5
- package/.next/server/chunks/ssr/_04xff_2._.js +1 -1
- package/.next/server/chunks/ssr/_04xff_2._.js.map +1 -1
- package/.next/server/chunks/ssr/_0qyglif._.js +2 -2
- package/.next/server/chunks/ssr/_0qyglif._.js.map +1 -1
- package/.next/server/chunks/ssr/_0skuoxv._.js +3 -1
- package/.next/server/chunks/ssr/_0skuoxv._.js.map +1 -1
- package/.next/server/chunks/ssr/{_1alz6n5._.js → _14i_6yb._.js} +2 -2
- package/.next/server/chunks/ssr/_14i_6yb._.js.map +1 -0
- package/.next/server/chunks/ssr/_1c95ems._.js +1 -1
- package/.next/server/chunks/ssr/_1c95ems._.js.map +1 -1
- package/.next/server/chunks/ssr/{_1s08bv8._.js → _1cbhuz4._.js} +2 -2
- package/.next/server/chunks/ssr/_1cbhuz4._.js.map +1 -0
- package/.next/server/chunks/ssr/_1ewk_mn._.js +3 -0
- package/.next/server/chunks/ssr/_1ewk_mn._.js.map +1 -0
- package/.next/server/chunks/ssr/_1y-ofyw._.js +3 -0
- package/.next/server/chunks/ssr/_1y-ofyw._.js.map +1 -0
- package/.next/server/chunks/ssr/{node_modules__pnpm_08em703._.js → node_modules__pnpm_0--x5-5._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1gqkoe3._.js → node_modules__pnpm_00i3mh2._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1kngagu._.js → node_modules__pnpm_00wjhj4._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_12s6q4d._.js → node_modules__pnpm_042y3e-._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0wnlgm-._.js → node_modules__pnpm_04xoqd9._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules__pnpm_1hw4h9e._.js → node_modules__pnpm_07j8gcu._.js} +1 -1
- package/.next/server/chunks/ssr/node_modules__pnpm_0bmkw6o._.js +3 -0
- package/.next/server/chunks/ssr/node_modules__pnpm_0bmkw6o._.js.map +1 -0
- package/.next/server/chunks/ssr/{node_modules__pnpm_1jfqun_._.js → node_modules__pnpm_0cj37c-._.js} +1 -1
- package/.next/server/chunks/ssr/node_modules__pnpm_0cj37c-._.js.map +1 -0
- package/.next/server/chunks/ssr/{node_modules__pnpm_0_z3_bl._.js → node_modules__pnpm_0fk-8nl._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_20tdqv_._.js → node_modules__pnpm_0kna82c._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0e15nhj._.js → node_modules__pnpm_0ma8hho._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0rd-a9g._.js → node_modules__pnpm_0nbxdp_._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0baie09._.js → node_modules__pnpm_0p10j87._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1ad2q27._.js → node_modules__pnpm_0w9uewb._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0e3u5g-._.js → node_modules__pnpm_0yixxj2._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1ly58kw._.js → node_modules__pnpm_1-poetj._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1u8p2h3._.js → node_modules__pnpm_11lluiq._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules__pnpm_1f3lm9p._.js → node_modules__pnpm_17o8zbz._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1moe8b6._.js → node_modules__pnpm_18pu1wl._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1h890n6._.js → node_modules__pnpm_19ejwjv._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1o3_0-n._.js → node_modules__pnpm_19ys1iv._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0i0uccx._.js → node_modules__pnpm_1_34wt2._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0jhh7p5._.js → node_modules__pnpm_1a3fo7j._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules__pnpm_1gtgu48._.js → node_modules__pnpm_1l-posw._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules__pnpm_07_kgbe._.js → node_modules__pnpm_1o30a9w._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1_o0jyk._.js → node_modules__pnpm_1r4w_7k._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules__pnpm_1zu-9we._.js → node_modules__pnpm_1xolwvc._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules__pnpm_0ns_6dd._.js → node_modules__pnpm_1zsbfem._.js} +1 -1
- package/.next/server/chunks/ssr/src_app_(app)_settings_page_tsx_0zevtee._.js +2 -2
- package/.next/server/chunks/ssr/src_app_(app)_settings_page_tsx_0zevtee._.js.map +1 -1
- package/.next/server/chunks/ssr/src_components_008q3v8._.js +3 -0
- package/.next/server/chunks/ssr/src_components_008q3v8._.js.map +1 -0
- package/.next/server/middleware-build-manifest.js +4 -4
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/0-vk2d2nnzav2.js +3 -0
- package/.next/static/chunks/0eggcu0ovk8sd.js +68 -0
- package/.next/static/chunks/{145g20k60txhc.js → 0iva6rdtfqpbz.js} +1 -1
- package/.next/static/chunks/0qm101bdsxdyh.css +10 -0
- package/.next/static/chunks/0wg9n5zb8mo2p.js +1 -0
- package/.next/static/chunks/0z_y7el6m76yk.js +1 -0
- package/.next/static/chunks/1-ekntoveuxzd.js +4 -0
- package/.next/static/chunks/10neasnz6hhq1.js +1 -0
- package/.next/static/chunks/1r7z33e9jk3vp.js +1 -0
- package/.next/static/chunks/{2f7yju8yks2m9.js → 1xyepk9227yej.js} +6 -73
- package/.next/static/chunks/22dw7r8x0h2sx.js +1 -0
- package/.next/static/chunks/26ee8jsbellqk.js +21 -0
- package/.next/static/chunks/{0aiy7o5bsiixt.js → 3kkg030rcpz7l.js} +1 -1
- package/.next/static/chunks/3pf_4ye6ju8gt.js +1 -0
- package/.next/static/chunks/turbopack-2qsbj8zx38t0j.js +1 -0
- package/README.md +2 -0
- package/next.config.js +4 -7
- package/package.json +1 -1
- package/skills/epic-breakdown/SKILL.md +11 -1
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0fw_tls._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0q6tm_c._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0qyh79u._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0rfkb6q._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0x1yqfb._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0yt3ewg._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1-kttjy._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_12h8gza._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_18c2w1i._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_18fnlqa._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_19on0yg._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1alh48t._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ck56ir._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1daia98._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1f6snvo._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1p6s626._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ps921l._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1rqxfdf._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1s7maye._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1vuy6_x._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1xv39eu._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_078qkb6._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0q7-hjh._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_165bzk6._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1hfbfb5._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1sa-8tw._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1xq_gof._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0-rjzmv._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__01yk8oi._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__02k1gkk._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0635d15._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0af0ma6._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0b49g9i._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0d4jkve._.js +0 -10
- package/.next/server/chunks/[root-of-the-server]__0j-xjbf._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0kaegk7._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0kkefbq._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0l3voov._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0qsx33x._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0sc44r6._.js +0 -86
- package/.next/server/chunks/[root-of-the-server]__0sc44r6._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__0u2rl0m._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0uk0tga._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0v8x64y._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0xqsv4h._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0yd6wlm._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0zybyuh._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__134sb3d._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__134sb3d._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__15suc44._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1jeqjz6._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1kfohrq._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1mz21a2._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1mz21a2._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__1vaownn._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1yow6hw._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1znbm9i._.js +0 -3
- package/.next/server/chunks/_0csymdc._.js +0 -34
- package/.next/server/chunks/_0csymdc._.js.map +0 -1
- package/.next/server/chunks/_1f1rssd._.js +0 -3
- package/.next/server/chunks/_1f1rssd._.js.map +0 -1
- package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_1v0h3_3._.js +0 -3
- package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_1v0h3_3._.js.map +0 -1
- package/.next/server/chunks/ssr/_0v7muti._.js +0 -3
- package/.next/server/chunks/ssr/_0v7muti._.js.map +0 -1
- package/.next/server/chunks/ssr/_1a9mqm1._.js +0 -3
- package/.next/server/chunks/ssr/_1a9mqm1._.js.map +0 -1
- package/.next/server/chunks/ssr/_1alz6n5._.js.map +0 -1
- package/.next/server/chunks/ssr/_1s08bv8._.js.map +0 -1
- package/.next/server/chunks/ssr/node_modules__pnpm_051nq8c._.js +0 -3
- package/.next/server/chunks/ssr/node_modules__pnpm_051nq8c._.js.map +0 -1
- package/.next/server/chunks/ssr/src_components_0wg3bi2._.js +0 -3
- package/.next/server/chunks/ssr/src_components_0wg3bi2._.js.map +0 -1
- package/.next/static/chunks/05qw7-fs1exlt.js +0 -1
- package/.next/static/chunks/0_vu3y1bvg843.js +0 -1
- package/.next/static/chunks/0fvzbdfwiu4a2.js +0 -1
- package/.next/static/chunks/14ewdzt8piprq.js +0 -1
- package/.next/static/chunks/1g6fxjtlpv6p5.js +0 -1
- package/.next/static/chunks/1lfr973ckp6by.js +0 -3
- package/.next/static/chunks/2-faknwci76np.js +0 -21
- package/.next/static/chunks/2g08tblvdp0t_.js +0 -2
- package/.next/static/chunks/2gdlf-xhbpc75.css +0 -10
- package/.next/static/chunks/2xu8bb_0152j-.js +0 -1
- package/.next/static/chunks/turbopack-181pehyg9iyaw.js +0 -1
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0-q4v32._.js.map → 11mp_@anthropic-ai_sdk_0-5bkpj._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_05dmim9._.js.map → 11mp_@anthropic-ai_sdk_00psb_y._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_05hfnhc._.js.map → 11mp_@anthropic-ai_sdk_01l5h3i._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_07xtb0h._.js.map → 11mp_@anthropic-ai_sdk_072r2bd._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0fw_tls._.js.map → 11mp_@anthropic-ai_sdk_0am8bw2._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0q6tm_c._.js.map → 11mp_@anthropic-ai_sdk_0enefn6._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0qyh79u._.js.map → 11mp_@anthropic-ai_sdk_0k3n_5f._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0rfkb6q._.js.map → 11mp_@anthropic-ai_sdk_0lcfjm4._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0x1yqfb._.js.map → 11mp_@anthropic-ai_sdk_0lfx9av._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0yt3ewg._.js.map → 11mp_@anthropic-ai_sdk_0qau3qw._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1-kttjy._.js.map → 11mp_@anthropic-ai_sdk_0r1pmvm._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_12h8gza._.js.map → 11mp_@anthropic-ai_sdk_11t-z2t._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_18c2w1i._.js.map → 11mp_@anthropic-ai_sdk_15hyn79._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_18fnlqa._.js.map → 11mp_@anthropic-ai_sdk_1_qk07x._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_19on0yg._.js.map → 11mp_@anthropic-ai_sdk_1b2929e._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1alh48t._.js.map → 11mp_@anthropic-ai_sdk_1e72c89._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1ck56ir._.js.map → 11mp_@anthropic-ai_sdk_1eq7asn._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1daia98._.js.map → 11mp_@anthropic-ai_sdk_1fhdojs._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1f6snvo._.js.map → 11mp_@anthropic-ai_sdk_1lh_vwq._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1p6s626._.js.map → 11mp_@anthropic-ai_sdk_1ludf-o._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1ps921l._.js.map → 11mp_@anthropic-ai_sdk_1m3luz3._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1rqxfdf._.js.map → 11mp_@anthropic-ai_sdk_1x1iz3d._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1s7maye._.js.map → 11mp_@anthropic-ai_sdk_1xsmwlh._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1vuy6_x._.js.map → 11mp_@anthropic-ai_sdk_202spah._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1xv39eu._.js.map → 11mp_@anthropic-ai_sdk_215hw9u._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_078qkb6._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0n-i0pd._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0q7-hjh._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_13pos4j._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_165bzk6._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_17b4pqr._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1hfbfb5._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1bkcmom._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1sa-8tw._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1hlj_3l._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1xq_gof._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1ip-sor._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__0uk0tga._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1pex5o1._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__1jeqjz6._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1s8lc8_._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__1kfohrq._.js.map → [root-of-the-server]__0e59y5j._.js.map} +0 -0
- /package/.next/server/chunks/{ssr/0_nd_mermaid_dist_mermaid_core_mjs_10jvzv6._.js.map → [root-of-the-server]__11s76m8._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{1u84_katex_dist_katex_mjs_05prlqa._.js.map → 0_nd_mermaid_dist_mermaid_core_mjs_1vulg1x._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_08em703._.js.map → 1u84_katex_dist_katex_mjs_0mwkb-i._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0wnlgm-._.js.map → node_modules__pnpm_0--x5-5._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1gqkoe3._.js.map → node_modules__pnpm_00i3mh2._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1kngagu._.js.map → node_modules__pnpm_00wjhj4._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_12s6q4d._.js.map → node_modules__pnpm_042y3e-._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1jfqun_._.js.map → node_modules__pnpm_04xoqd9._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1hw4h9e._.js.map → node_modules__pnpm_07j8gcu._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0_z3_bl._.js.map → node_modules__pnpm_0fk-8nl._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_20tdqv_._.js.map → node_modules__pnpm_0kna82c._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0e15nhj._.js.map → node_modules__pnpm_0ma8hho._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0rd-a9g._.js.map → node_modules__pnpm_0nbxdp_._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0baie09._.js.map → node_modules__pnpm_0p10j87._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1ad2q27._.js.map → node_modules__pnpm_0w9uewb._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0e3u5g-._.js.map → node_modules__pnpm_0yixxj2._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1ly58kw._.js.map → node_modules__pnpm_1-poetj._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1u8p2h3._.js.map → node_modules__pnpm_11lluiq._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1f3lm9p._.js.map → node_modules__pnpm_17o8zbz._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1moe8b6._.js.map → node_modules__pnpm_18pu1wl._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1h890n6._.js.map → node_modules__pnpm_19ejwjv._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1o3_0-n._.js.map → node_modules__pnpm_19ys1iv._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0i0uccx._.js.map → node_modules__pnpm_1_34wt2._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0jhh7p5._.js.map → node_modules__pnpm_1a3fo7j._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1gtgu48._.js.map → node_modules__pnpm_1l-posw._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_07_kgbe._.js.map → node_modules__pnpm_1o30a9w._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1_o0jyk._.js.map → node_modules__pnpm_1r4w_7k._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1zu-9we._.js.map → node_modules__pnpm_1xolwvc._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0ns_6dd._.js.map → node_modules__pnpm_1zsbfem._.js.map} +0 -0
- /package/.next/static/{cmDLf8WOU5PVmUOcSPh2H → gJtrYenzL6_deB-6pdvIL}/_buildManifest.js +0 -0
- /package/.next/static/{cmDLf8WOU5PVmUOcSPh2H → gJtrYenzL6_deB-6pdvIL}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{cmDLf8WOU5PVmUOcSPh2H → gJtrYenzL6_deB-6pdvIL}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,901251,e=>{"use strict";var t=e.i(72345),n=e.i(180338),r=e.i(763371),i=e.i(406952),o=e.i(875581),a=e.i(763305),s=e.i(675964),l=e.i(83790);let c={name:"chevrons-down-up",size:24,node:[["path",{d:"m7 20 5-5 5 5",key:"13a0gw"}],["path",{d:"m7 4 5 5 5-5",key:"1kwcof"}]]};c.node;let h=(0,l.default)(c),d={name:"chevrons-up-down",size:24,node:[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]};d.node;let u=(0,l.default)(d);var f=e.i(161863),m=e.i(479432),p=e.i(155515);let g={name:"square-check-big",size:24,node:[["path",{d:"M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344",key:"2acyp4"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],aliases:["check-square"]};g.node;let x=(0,l.default)(g);var v=e.i(609617),y=e.i(837001),b=e.i(765470);let w={name:"ellipsis",size:24,node:[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],aliases:["more-horizontal"]};w.node;let k=(0,l.default)(w);var S=e.i(424991),C=e.i(458055),j=e.i(975157),N=e.i(793479),M=e.i(759684),A=e.i(107308),E=e.i(755146);let D=(0,n.createContext)({active:!1,selected:new Set,toggle:()=>{},onRename:()=>{},onDelete:()=>{},renamingPath:null,setRenamingPath:()=>{},collapsed:new Set,toggleFolder:()=>{}}),T=224;function P(e){return e.replace(/\\/g,"/")}function R(e){return e.replace(/^\d+-/,"").replace(/[-_]/g," ").toLowerCase().replace(/\b\w/g,e=>e.toUpperCase())}function L({node:e,depth:r,selectedPath:l,onDocClick:c,folderPath:h}){let{active:d,selected:u,toggle:f,onRename:m,onDelete:p,renamingPath:g,setRenamingPath:x,collapsed:v,toggleFolder:b}=(0,n.useContext)(D),[w,M]=(0,n.useState)(e.name),T=!!e.docPath,P=e.docPath===l,I=!!e.docPath&&u.has(e.docPath),B=e.docPath===g,O=12*r;return T?B?(0,t.jsxs)("div",{style:{paddingLeft:`${8+O}px`},className:"flex items-center gap-2 h-7 pr-2",children:[(0,t.jsx)(i.FileText,{className:"h-3.5 w-3.5 shrink-0 opacity-50"}),(0,t.jsx)(N.Input,{autoFocus:!0,value:w,onChange:e=>M(e.target.value),onKeyDown:t=>{if("Enter"===t.key){let t=w.trim();if(t&&t!==e.name){let n=e.docPath.split("/").slice(0,-1).join("/");m(n?`${n}/${t}.md`:`${t}.md`)}x(null)}else"Escape"===t.key&&(M(e.name),x(null))},onBlur:()=>{M(e.name),x(null)},className:"h-5 text-xs px-1 py-0"})]}):(0,t.jsxs)("div",{className:(0,j.cn)("group w-full flex items-center gap-2 h-7 pr-1 rounded-md text-xs transition-colors",P&&!d?"bg-accent/10 text-accent font-medium":I?"bg-accent/10 text-accent":"text-muted hover:text-txt hover:bg-surface2"),children:[(0,t.jsxs)("button",{onClick:()=>d?f(e.docPath):c(e.docPath),style:{paddingLeft:`${8+O}px`},className:"flex-1 flex items-center gap-2 h-full truncate",children:[d?(0,t.jsx)("span",{className:(0,j.cn)("h-3.5 w-3.5 shrink-0 rounded-sm border flex items-center justify-center transition-colors",I?"border-accent bg-accent/20":"border-border"),children:I&&(0,t.jsx)(y.Check,{className:"h-2.5 w-2.5 text-accent"})}):(0,t.jsx)(i.FileText,{className:"h-3.5 w-3.5 shrink-0 opacity-50"}),(0,t.jsx)("span",{className:"truncate",children:R(e.name)})]}),!d&&(0,t.jsxs)(E.DropdownMenu,{children:[(0,t.jsx)(E.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsx)("button",{className:"h-5 w-5 shrink-0 flex items-center justify-center rounded-sm opacity-0 group-hover:opacity-100 hover:bg-surface2 transition-opacity",onClick:e=>e.stopPropagation(),children:(0,t.jsx)(k,{className:"h-3.5 w-3.5"})})}),(0,t.jsxs)(E.DropdownMenuContent,{align:"end",className:"w-32",children:[(0,t.jsxs)(E.DropdownMenuItem,{onClick:()=>{M(e.name.replace(/\.md$/,"")),x(e.docPath)},children:[(0,t.jsx)(S.Pencil,{className:"h-3.5 w-3.5 mr-2"})," Rename"]}),(0,t.jsxs)(E.DropdownMenuItem,{onClick:()=>p(e.docPath),className:"text-red-400 focus:text-red-400",children:[(0,t.jsx)(C.Trash2,{className:"h-3.5 w-3.5 mr-2"})," Delete"]})]})]})]}):(0,t.jsxs)(A.Collapsible,{open:!v.has(h),onOpenChange:()=>b(h),children:[(0,t.jsx)(A.CollapsibleTrigger,{asChild:!0,children:(0,t.jsxs)("button",{style:{paddingLeft:`${8+O}px`},className:"group/trigger w-full flex items-center gap-2 h-7 pr-2 rounded-md text-xs font-medium text-muted hover:text-txt hover:bg-surface2 transition-colors",children:[(0,t.jsx)(s.ChevronRight,{className:"h-3 w-3 shrink-0 transition-transform duration-200 group-data-[state=open]/trigger:rotate-90"}),(0,t.jsx)(o.Folder,{className:"h-3.5 w-3.5 shrink-0 text-accent/70 group-data-[state=open]/trigger:hidden"}),(0,t.jsx)(a.FolderOpen,{className:"h-3.5 w-3.5 shrink-0 text-accent/70 hidden group-data-[state=open]/trigger:block"}),(0,t.jsx)("span",{className:"truncate",children:R(e.name)})]})}),(0,t.jsx)(A.CollapsibleContent,{className:"overflow-hidden data-[state=closed]:animate-collapsible-up data-[state=open]:animate-collapsible-down",children:e.children.map(e=>(0,t.jsx)(L,{node:e,depth:r+1,selectedPath:l,onDocClick:c,folderPath:`${h}/${e.name}`},e.docPath??e.name))})]})}function I({docs:e,selectedDocPath:r,searchValue:o,onSearchChange:a,onDocClick:s,onNewDocClick:l,onDocDeleted:c,onDocRenamed:d,rootParam:g=""}){let[w,k]=(0,n.useState)(!1),[S,C]=(0,n.useState)(new Set),[A,E]=(0,n.useState)("idle"),[B,O]=(0,n.useState)(null),[z,V]=(0,n.useState)(null),[F,$]=(0,n.useState)(T),W=(0,n.useRef)(null),[q,U]=(0,n.useState)(new Set),[H,K]=(0,n.useState)(r),J=(0,n.useMemo)(()=>e.filter(e=>{let t=P(e.path);return"CLAUDE.md"===t||"AGENTS.md"===t||t.endsWith("/CLAUDE.md")||t.endsWith("/AGENTS.md")}),[e]),G=(0,n.useMemo)(()=>e.filter(e=>{let t=P(e.path);return"CLAUDE.md"!==t&&"AGENTS.md"!==t&&!t.endsWith("/CLAUDE.md")&&!t.endsWith("/AGENTS.md")}),[e]),_=(0,n.useMemo)(()=>(function(e){let t={name:"",children:[]};for(let n of e){let e=P(n.path).split("/"),r=t;for(let t=0;t<e.length-1;t++){let n=r.children.find(n=>n.name===e[t]&&!n.docPath);n||(n={name:e[t],children:[]},r.children.push(n)),r=n}r.children.push({name:n.name,docPath:n.path,children:[]})}return t.children})(G),[G]),X=(0,n.useMemo)(()=>(function e(t,n=""){return t.flatMap(t=>{if(t.docPath)return[];let r=n?`${n}/${t.name}`:t.name;return[r,...e(t.children,r)]})})(_),[_]),Q=o.trim().length>0,Y=X.length>0&&X.every(e=>q.has(e));if(r!==H){let e;K(r);let t=r?(e=P(r).split("/").slice(0,-1)).map((t,n)=>e.slice(0,n+1).join("/")):[];t.some(e=>q.has(e))&&U(e=>{let n=new Set(e);return t.forEach(e=>n.delete(e)),n})}function Z(e){$(T=Math.min(560,Math.max(180,e)))}function ee(e){C(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}function et(){k(!1),C(new Set),E("idle")}async function en(e){if(B&&d){try{(await fetch(`/api/docs${g}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({oldPath:B,newPath:e})})).ok&&d(B,e)}catch{}O(null)}}async function er(e){if(c&&window.confirm(`Delete ${e}?`))try{(await fetch(`/api/docs${g}`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})})).ok&&c(e)}catch{}}async function ei(){if(0!==S.size){E("copying");try{let e=await fetch(`/api/context${g}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({paths:[...S]})}),{context:t}=await e.json();await navigator.clipboard.writeText(t),E("copied"),setTimeout(()=>E("idle"),2e3)}catch{E("idle")}}}return(0,t.jsx)(D.Provider,{value:{active:w,selected:S,toggle:ee,onRename:en,onDelete:er,renamingPath:B,setRenamingPath:O,collapsed:q,toggleFolder:function(e){U(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}},children:(0,t.jsxs)("aside",{style:{width:F},className:"relative flex flex-col border-r border-border shrink-0 bg-sidebar",children:[(0,t.jsx)("div",{role:"separator","aria-orientation":"vertical","aria-label":"Resize docs panel","aria-valuenow":F,"aria-valuemin":180,"aria-valuemax":560,tabIndex:0,onPointerDown:e=>{e.preventDefault(),e.currentTarget.setPointerCapture(e.pointerId),W.current={startX:e.clientX,startWidth:F}},onPointerMove:e=>{W.current&&Z(W.current.startWidth+e.clientX-W.current.startX)},onPointerUp:()=>{W.current=null},onDoubleClick:()=>Z(224),onKeyDown:e=>{"ArrowLeft"===e.key?Z(F-16):"ArrowRight"===e.key&&Z(F+16)},className:"absolute -right-1 top-0 z-10 h-full w-2 cursor-col-resize after:absolute after:inset-y-0 after:left-1/2 after:w-px after:-translate-x-1/2 after:transition-colors hover:after:bg-accent/60 focus-visible:outline-none focus-visible:after:bg-accent active:after:bg-accent"}),(0,t.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-b border-border",children:[(0,t.jsx)("span",{className:"text-[10px] font-semibold text-muted uppercase tracking-wider",children:"Docs"}),(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[!w&&!Q&&X.length>0&&(0,t.jsx)("button",{onClick:()=>U(Y?new Set:new Set(X)),className:"h-5 w-5 flex items-center justify-center rounded-sm hover:bg-surface2 text-muted hover:text-accent transition-colors",title:Y?"Expand all folders":"Collapse all folders","aria-label":Y?"Expand all folders":"Collapse all folders",children:Y?(0,t.jsx)(u,{className:"h-3.5 w-3.5"}):(0,t.jsx)(h,{className:"h-3.5 w-3.5"})}),(0,t.jsx)("button",{onClick:()=>{w?et():k(!0)},className:(0,j.cn)("h-5 w-5 flex items-center justify-center rounded-sm transition-colors",w?"bg-accent/20 text-accent":"hover:bg-surface2 text-muted hover:text-accent"),title:"Select docs",children:(0,t.jsx)(x,{className:"h-3.5 w-3.5"})}),l&&(0,t.jsx)("button",{onClick:l,className:"h-5 w-5 flex items-center justify-center rounded-sm hover:bg-surface2 text-muted hover:text-accent transition-colors",title:"New document",children:(0,t.jsx)(p.Plus,{className:"h-3.5 w-3.5"})})]})]}),!w&&(0,t.jsx)("div",{className:"p-2 border-b border-border",children:(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)(f.Search,{className:"absolute left-2 top-1/2 -translate-y-1/2 h-3.5 w-3.5 text-muted pointer-events-none"}),(0,t.jsx)(N.Input,{id:"doc-search",value:o,onChange:e=>a(e.target.value),placeholder:"Search docs...",className:"pl-7 h-8 text-xs bg-surface2 border-transparent focus:border-border"})]})}),(0,t.jsx)(M.ScrollArea,{className:"flex-1",children:(0,t.jsx)("div",{className:"p-1.5 space-y-0.5",children:w?e.map(e=>{let n=S.has(e.path);return(0,t.jsxs)("button",{onClick:()=>ee(e.path),className:(0,j.cn)("w-full flex items-center gap-2 h-7 px-2 rounded-md text-xs transition-colors",n?"bg-accent/10 text-accent":"text-muted hover:text-txt hover:bg-surface2"),children:[(0,t.jsx)("span",{className:(0,j.cn)("h-3.5 w-3.5 shrink-0 rounded-sm border flex items-center justify-center transition-colors",n?"border-accent bg-accent/20":"border-border"),children:n&&(0,t.jsx)(y.Check,{className:"h-2.5 w-2.5 text-accent"})}),(0,t.jsx)("span",{className:"truncate flex-1 text-left",children:e.name}),(0,t.jsx)("span",{className:"text-[10px] opacity-40 truncate max-w-[60px]",children:P(e.path).split("/").slice(0,-1).join("/")||"root"})]},e.path)}):(0,t.jsxs)(t.Fragment,{children:[!Q&&J.length>0&&(0,t.jsxs)("div",{className:"mb-2",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 px-2 py-1",children:[(0,t.jsx)(m.Bot,{className:"h-3.5 w-3.5 text-amber-400 shrink-0"}),(0,t.jsx)("span",{className:"text-[10px] font-semibold text-muted uppercase tracking-wider",children:"Agent Config"}),(0,t.jsx)("span",{className:"ml-auto text-[9px] font-medium bg-amber-400/15 text-amber-400 px-1.5 py-0.5 rounded-full",children:"AI"})]}),J.map(e=>(0,t.jsxs)("button",{onClick:()=>s(e.path),className:(0,j.cn)("w-full flex items-center gap-2 h-7 px-2 rounded-md text-xs transition-colors",e.path===r?"bg-accent/10 text-accent font-medium":"text-muted hover:text-txt hover:bg-surface2"),children:[(0,t.jsx)(i.FileText,{className:"h-3.5 w-3.5 shrink-0 opacity-50"}),(0,t.jsx)("span",{className:"truncate",children:e.name})]},e.path)),(0,t.jsx)("div",{className:"mt-2 border-t border-border"})]}),Q?0===e.length?(0,t.jsx)("p",{className:"text-xs text-muted px-2 py-4 text-center",children:"No results"}):e.map(e=>(0,t.jsxs)("button",{onClick:()=>s(e.path),className:(0,j.cn)("w-full flex flex-col items-start gap-0.5 px-2 py-1.5 rounded-md text-xs transition-colors text-left",e.path===r?"bg-accent/10 text-accent":"text-muted hover:text-txt hover:bg-surface2"),children:[(0,t.jsx)("span",{className:"font-medium truncate w-full",children:R(e.name)}),(0,t.jsx)("span",{className:"text-[10px] opacity-50 truncate w-full",children:P(e.path).split("/").slice(0,-1).join("/")})]},e.path)):_.map(e=>(0,t.jsx)(L,{node:e,depth:0,selectedPath:r,onDocClick:s,folderPath:e.name},e.docPath??e.name))]})})}),w&&(0,t.jsxs)("div",{className:"border-t border-border p-2 space-y-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between text-[11px] text-muted",children:[(0,t.jsxs)("span",{children:[S.size," selected"]}),(0,t.jsxs)("button",{onClick:et,className:"hover:text-txt transition-colors flex items-center gap-1",children:[(0,t.jsx)(b.X,{className:"h-3 w-3"})," Clear"]})]}),(0,t.jsx)("button",{onClick:ei,disabled:0===S.size||"copying"===A,className:(0,j.cn)("w-full flex items-center justify-center gap-1.5 h-7 rounded-md text-xs font-medium transition-colors","copied"===A?"bg-green-500/20 text-green-400":0===S.size?"bg-surface2 text-muted cursor-not-allowed":"bg-accent/20 text-accent hover:bg-accent/30"),children:"copied"===A?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(y.Check,{className:"h-3 w-3"})," Copied!"]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(v.Copy,{className:"h-3 w-3"})," Copy Context"]})})]})]})})}var B=e.i(583225);let O={name:"download",size:24,node:[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]};O.node;let z=(0,l.default)(O);var V=e.i(172856);function F(){return(F=Object.assign.bind()).apply(null,arguments)}var $=e.i(859850),W=e.i(588395),q=e.i(986256),U=e.i(78925);function H(e,t){return({state:n,dispatch:r})=>{if(n.readOnly)return!1;let i=e(t,n);return!!i&&(r(n.update(i)),!0)}}let K=H(function(e,t,n=t.selection.ranges){let r=[],i=-1;e:for(let{from:e,to:o}of n){let n=r.length,a=1e9,s;for(let n=e;n<=o;){let l=t.doc.lineAt(n);if(void 0==s&&!(s=_(t,l.from).line))continue e;if(l.from>i&&(e==o||o>l.from)){i=l.from;let e=/^\s*/.exec(l.text)[0].length,t=e==l.length,n=l.text.slice(e,e+s.length)==s?e:-1;e<l.text.length&&e<a&&(a=e),r.push({line:l,comment:n,token:s,indent:e,empty:t,single:!1})}n=l.to+1}if(a<1e9)for(let e=n;e<r.length;e++)r[e].indent<r[e].line.text.length&&(r[e].indent=a);r.length==n+1&&(r[n].single=!0)}if(2!=e&&r.some(e=>e.comment<0&&(!e.empty||e.single))){let e=[];for(let{line:t,token:n,indent:i,empty:o,single:a}of r)(a||!o)&&e.push({from:t.from+i,insert:n+" "});let n=t.changes(e);return{changes:n,selection:t.selection.map(n,1)}}if(1!=e&&r.some(e=>e.comment>=0)){let e=[];for(let{line:t,comment:n,token:i}of r)if(n>=0){let r=t.from+n,o=r+i.length;" "==t.text[o-t.from]&&o++,e.push({from:r,to:o})}return{changes:e}}return null},0),J=H(X,0),G=H((e,t)=>X(e,t,function(e){let t=[];for(let n of e.selection.ranges){let r=e.doc.lineAt(n.from),i=n.to<=r.to?r:e.doc.lineAt(n.to);i.from>r.from&&i.from==n.to&&(i=n.to==r.to+1?r:e.doc.lineAt(n.to-1));let o=t.length-1;o>=0&&t[o].to>r.from?t[o].to=i.to:t.push({from:r.from+/^\s*/.exec(r.text)[0].length,to:i.to})}return t}(t)),0);function _(e,t){let n=e.languageDataAt("commentTokens",t,1);return n.length?n[0]:{}}function X(e,t,n=t.selection.ranges){let r=n.map(e=>_(t,e.from).block);if(!r.every(e=>e))return null;let i=n.map((e,n)=>(function(e,{open:t,close:n},r,i){let o,a,s=e.sliceDoc(r-50,r),l=e.sliceDoc(i,i+50),c=/\s*$/.exec(s)[0].length,h=/^\s*/.exec(l)[0].length,d=s.length-c;if(s.slice(d-t.length,d)==t&&l.slice(h,h+n.length)==n)return{open:{pos:r-c,margin:c&&1},close:{pos:i+h,margin:h&&1}};i-r<=100?o=a=e.sliceDoc(r,i):(o=e.sliceDoc(r,r+50),a=e.sliceDoc(i-50,i));let u=/^\s*/.exec(o)[0].length,f=/\s*$/.exec(a)[0].length,m=a.length-f-n.length;return o.slice(u,u+t.length)==t&&a.slice(m,m+n.length)==n?{open:{pos:r+u+t.length,margin:+!!/\s/.test(o.charAt(u+t.length))},close:{pos:i-f-n.length,margin:+!!/\s/.test(a.charAt(m-1))}}:null})(t,r[n],e.from,e.to));if(2!=e&&!i.every(e=>e))return{changes:t.changes(n.map((e,t)=>i[t]?[]:[{from:e.from,insert:r[t].open+" "},{from:e.to,insert:" "+r[t].close}]))};if(1!=e&&i.some(e=>e)){let e=[];for(let t=0,n;t<i.length;t++)if(n=i[t]){let i=r[t],{open:o,close:a}=n;e.push({from:o.pos-i.open.length,to:o.pos+o.margin},{from:a.pos-a.margin,to:a.pos+i.close.length})}return{changes:e}}return null}let Q=$.Annotation.define(),Y=$.Annotation.define(),Z=$.Facet.define(),ee=$.Facet.define({combine:e=>(0,$.combineConfig)(e,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(n,r)=>e(n,r)||t(n,r)})}),et=$.StateField.define({create:()=>em.empty,update(e,t){let n=t.state.facet(ee),r=t.annotation(Q);if(r){let i=es.fromTransaction(t,r.selection),o=r.side,a=0==o?e.undone:e.done;return a=i?el(a,a.length,n.minDepth,i):ed(a,t.startState.selection),new em(0==o?r.rest:a,0==o?a:r.rest)}let i=t.annotation(Y);if(("full"==i||"before"==i)&&(e=e.isolate()),!1===t.annotation($.Transaction.addToHistory))return t.changes.empty?e:e.addMapping(t.changes.desc);let o=es.fromTransaction(t),a=t.annotation($.Transaction.time),s=t.annotation($.Transaction.userEvent);return o?e=e.addChanges(o,a,s,n,t):t.selection&&(e=e.addSelection(t.startState.selection,a,s,n.newGroupDelay)),("full"==i||"after"==i)&&(e=e.isolate()),e},toJSON:e=>({done:e.done.map(e=>e.toJSON()),undone:e.undone.map(e=>e.toJSON())}),fromJSON:e=>new em(e.done.map(es.fromJSON),e.undone.map(es.fromJSON))});function en(e,t){return function({state:n,dispatch:r}){if(!t&&n.readOnly)return!1;let i=n.field(et,!1);if(!i)return!1;let o=i.pop(e,n,t);return!!o&&(r(o),!0)}}let er=en(0,!1),ei=en(1,!1),eo=en(0,!0),ea=en(1,!0);class es{constructor(e,t,n,r,i){this.changes=e,this.effects=t,this.mapped=n,this.startSelection=r,this.selectionsAfter=i}setSelAfter(e){return new es(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,n;return{changes:null==(e=this.changes)?void 0:e.toJSON(),mapped:null==(t=this.mapped)?void 0:t.toJSON(),startSelection:null==(n=this.startSelection)?void 0:n.toJSON(),selectionsAfter:this.selectionsAfter.map(e=>e.toJSON())}}static fromJSON(e){return new es(e.changes&&$.ChangeSet.fromJSON(e.changes),[],e.mapped&&$.ChangeDesc.fromJSON(e.mapped),e.startSelection&&$.EditorSelection.fromJSON(e.startSelection),e.selectionsAfter.map($.EditorSelection.fromJSON))}static fromTransaction(e,t){let n=eh;for(let t of e.startState.facet(Z)){let r=t(e);r.length&&(n=n.concat(r))}return!n.length&&e.changes.empty?null:new es(e.changes.invert(e.startState.doc),n,void 0,t||e.startState.selection,eh)}static selection(e){return new es(void 0,eh,void 0,void 0,e)}}function el(e,t,n,r){let i=e.slice(t+1>n+20?t-n-1:0,t);return i.push(r),i}function ec(e,t){return e.length?t.length?e.concat(t):e:t}let eh=[];function ed(e,t){if(!e.length)return[es.selection([t])];{let n=e[e.length-1],r=n.selectionsAfter.slice(Math.max(0,n.selectionsAfter.length-200));return r.length&&r[r.length-1].eq(t)?e:(r.push(t),el(e,e.length-1,1e9,n.setSelAfter(r)))}}function eu(e,t){if(!e.length)return e;let n=e.length,r=eh;for(;n;){let i=function(e,t,n){let r=ec(e.selectionsAfter.length?e.selectionsAfter.map(e=>e.map(t)):eh,n);if(!e.changes)return es.selection(r);let i=e.changes.map(t),o=t.mapDesc(e.changes,!0),a=e.mapped?e.mapped.composeDesc(o):o;return new es(i,$.StateEffect.mapEffects(e.effects,t),a,e.startSelection.map(o),r)}(e[n-1],t,r);if(i.changes&&!i.changes.empty||i.effects.length){let t=e.slice(0,n);return t[n-1]=i,t}t=i.mapped,n--,r=i.selectionsAfter}return r.length?[es.selection(r)]:eh}let ef=/^(input\.type|delete)($|\.)/;class em{constructor(e,t,n=0,r){this.done=e,this.undone=t,this.prevTime=n,this.prevUserEvent=r}isolate(){return this.prevTime?new em(this.done,this.undone):this}addChanges(e,t,n,r,i){var o,a;let s,l,c=this.done,h=c[c.length-1];return new em(c=h&&h.changes&&!h.changes.empty&&e.changes&&(!n||ef.test(n))&&(!h.selectionsAfter.length&&t-this.prevTime<r.newGroupDelay&&r.joinToEvent(i,(o=h.changes,a=e.changes,s=[],l=!1,o.iterChangedRanges((e,t)=>s.push(e,t)),a.iterChangedRanges((e,t,n,r)=>{for(let e=0;e<s.length;){let t=s[e++],i=s[e++];r>=t&&n<=i&&(l=!0)}}),l))||"input.type.compose"==n)?el(c,c.length-1,r.minDepth,new es(e.changes.compose(h.changes),ec($.StateEffect.mapEffects(e.effects,h.changes),h.effects),h.mapped,h.startSelection,eh)):el(c,c.length,r.minDepth,e),eh,t,n)}addSelection(e,t,n,r){var i;let o=this.done.length?this.done[this.done.length-1].selectionsAfter:eh;return o.length>0&&t-this.prevTime<r&&n==this.prevUserEvent&&n&&/^select($|\.)/.test(n)&&(i=o[o.length-1],i.ranges.length==e.ranges.length&&0===i.ranges.filter((t,n)=>t.empty!=e.ranges[n].empty).length)?this:new em(ed(this.done,e),this.undone,t,n)}addMapping(e){return new em(eu(this.done,e),eu(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,t,n){let r=0==e?this.done:this.undone;if(0==r.length)return null;let i=r[r.length-1],o=i.selectionsAfter[0]||(i.startSelection?i.startSelection.map(i.changes.invertedDesc,1):t.selection);if(n&&i.selectionsAfter.length){let n,a;return t.update({selection:i.selectionsAfter[i.selectionsAfter.length-1],annotations:Q.of({side:e,rest:(n=r[r.length-1],(a=r.slice())[r.length-1]=n.setSelAfter(n.selectionsAfter.slice(0,n.selectionsAfter.length-1)),a),selection:o}),userEvent:0==e?"select.undo":"select.redo",scrollIntoView:!0})}{if(!i.changes)return null;let n=1==r.length?eh:r.slice(0,r.length-1);return i.mapped&&(n=eu(n,i.mapped)),t.update({changes:i.changes,selection:i.startSelection,effects:i.effects,annotations:Q.of({side:e,rest:n,selection:o}),filter:!1,userEvent:0==e?"undo":"redo",scrollIntoView:!0})}}}em.empty=new em(eh,eh);let ep=[{key:"Mod-z",run:er,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:ei,preventDefault:!0},{linux:"Ctrl-Shift-z",run:ei,preventDefault:!0},{key:"Mod-u",run:eo,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:ea,preventDefault:!0}];function eg(e,t){return $.EditorSelection.create(e.ranges.map(t),e.mainIndex)}function ex(e,t){return e.update({selection:t,scrollIntoView:!0,userEvent:"select"})}function ev({state:e,dispatch:t},n){let r=eg(e.selection,n);return!r.eq(e.selection,!0)&&(t(ex(e,r)),!0)}function ey(e,t){return $.EditorSelection.cursor(t?e.to:e.from)}function eb(e,t){return ev(e,n=>n.empty?e.moveByChar(n,t):ey(n,t))}function ew(e){return e.textDirectionAt(e.state.selection.main.head)==W.Direction.LTR}let ek=e=>eb(e,!ew(e)),eS=e=>eb(e,ew(e));function eC(e,t){return ev(e,n=>n.empty?e.moveByGroup(n,t):ey(n,t))}function ej(e,t,n){let r,i,o=(0,q.syntaxTree)(e).resolveInner(t.head),a=n?U.NodeProp.closedBy:U.NodeProp.openedBy;for(let r=t.head;;){let t=n?o.childAfter(r):o.childBefore(r);if(!t)break;!function(e,t,n){if(t.type.prop(n))return!0;let r=t.to-t.from;return r&&(r>2||/[^\s,.;:]/.test(e.sliceDoc(t.from,t.to)))||t.firstChild}(e,t,a)?r=n?t.to:t.from:o=t}return i=o.type.prop(a)&&(r=n?(0,q.matchBrackets)(e,o.from,1):(0,q.matchBrackets)(e,o.to,-1))&&r.matched?n?r.end.to:r.end.from:n?o.to:o.from,$.EditorSelection.cursor(i,n?-1:1)}function eN(e,t){return ev(e,n=>{if(!n.empty)return ey(n,t);let r=e.moveVertically(n,t);return r.head!=n.head?r:e.moveToLineBoundary(n,t)})}"u">typeof Intl&&Intl.Segmenter;let eM=e=>eN(e,!1),eA=e=>eN(e,!0);function eE(e){let t=e.scrollDOM.clientHeight<e.scrollDOM.scrollHeight-2,n=0,r=0,i;if(t){for(let t of e.state.facet(W.EditorView.scrollMargins)){let i=t(e);(null==i?void 0:i.top)&&(n=Math.max(null==i?void 0:i.top,n)),(null==i?void 0:i.bottom)&&(r=Math.max(null==i?void 0:i.bottom,r))}i=e.scrollDOM.clientHeight-n-r}else i=(e.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:n,marginBottom:r,selfScroll:t,height:Math.max(e.defaultLineHeight,i-5)}}function eD(e,t){let n,r=eE(e),{state:i}=e,o=eg(i.selection,n=>n.empty?e.moveVertically(n,t,r.height):ey(n,t));if(o.eq(i.selection))return!1;if(r.selfScroll){let t=e.coordsAtPos(i.selection.main.head),a=e.scrollDOM.getBoundingClientRect(),s=a.top+r.marginTop,l=a.bottom-r.marginBottom;t&&t.top>s&&t.bottom<l&&(n=W.EditorView.scrollIntoView(o.main.head,{y:"start",yMargin:t.top-s}))}return e.dispatch(ex(i,o),{effects:n}),!0}let eT=e=>eD(e,!1),eP=e=>eD(e,!0);function eR(e,t,n){let r=e.lineBlockAt(t.head),i=e.moveToLineBoundary(t,n);if(i.head==t.head&&i.head!=(n?r.to:r.from)&&(i=e.moveToLineBoundary(t,n,!1)),!n&&i.head==r.from&&r.length){let n=/^\s*/.exec(e.state.sliceDoc(r.from,Math.min(r.from+100,r.to)))[0].length;n&&t.head!=r.from+n&&(i=$.EditorSelection.cursor(r.from+n))}return i}function eL(e,t,n){let r=eg(e.state.selection,e=>{e.undirectional&&e.head>=e.anchor!=t&&(e=$.EditorSelection.range(e.head,e.anchor));let r=n(e);return $.EditorSelection.range(e.anchor,r.head,r.goalColumn,r.bidiLevel||void 0,r.assoc)});return!r.eq(e.state.selection)&&(e.dispatch(ex(e.state,r)),!0)}function eI(e,t){return eL(e,t,n=>e.moveByChar(n,t))}let eB=e=>eI(e,!ew(e)),eO=e=>eI(e,ew(e));function ez(e,t){return eL(e,t,n=>e.moveByGroup(n,t))}function eV(e,t){return eL(e,t,n=>e.moveVertically(n,t))}let eF=e=>eV(e,!1),e$=e=>eV(e,!0);function eW(e,t){return eL(e,t,n=>e.moveVertically(n,t,eE(e).height))}let eq=e=>eW(e,!1),eU=e=>eW(e,!0),eH=({state:e,dispatch:t})=>(t(ex(e,{anchor:0})),!0),eK=({state:e,dispatch:t})=>(t(ex(e,{anchor:e.doc.length})),!0),eJ=({state:e,dispatch:t})=>(t(ex(e,{anchor:e.selection.main.anchor,head:0})),!0),eG=({state:e,dispatch:t})=>(t(ex(e,{anchor:e.selection.main.anchor,head:e.doc.length})),!0);function e_(e,t){let{state:n}=e,r=n.selection,i=n.selection.ranges.slice();for(let r of n.selection.ranges){let o=n.doc.lineAt(r.head);if(t?o.to<e.state.doc.length:o.from>0)for(let n=r;;){let r=e.moveVertically(n,t);if(r.head<o.from||r.head>o.to){i.some(e=>e.head==r.head)||i.push(r);break}if(r.head==n.head)break;n=r}}return i.length!=r.ranges.length&&(e.dispatch(ex(n,$.EditorSelection.create(i,i.length-1))),!0)}function eX(e,t){if(e.state.readOnly)return!1;let n="delete.selection",{state:r}=e,i=r.changeByRange(r=>{let{from:i,to:o}=r;if(i==o){let a=t(r);a<i?(n="delete.backward",a=eQ(e,a,!1)):a>i&&(n="delete.forward",a=eQ(e,a,!0)),i=Math.min(i,a),o=Math.max(o,a)}else i=eQ(e,i,!1),o=eQ(e,o,!0);return i==o?{range:r}:{changes:{from:i,to:o},range:$.EditorSelection.cursor(i,i<r.head?-1:1)}});return!i.changes.empty&&(e.dispatch(r.update(i,{scrollIntoView:!0,userEvent:n,effects:"delete.selection"==n?W.EditorView.announce.of(r.phrase("Selection deleted")):void 0})),!0)}function eQ(e,t,n){if(e instanceof W.EditorView)for(let r of e.state.facet(W.EditorView.atomicRanges).map(t=>t(e)))r.between(t,t,(e,r)=>{e<t&&r>t&&(t=n?r:e)});return t}let eY=(e,t,n)=>eX(e,r=>{let i=r.from,{state:o}=e,a=o.doc.lineAt(i),s,l;if(n&&!t&&i>a.from&&i<a.from+200&&!/[^ \t]/.test(s=a.text.slice(0,i-a.from))){if(" "==s[s.length-1])return i-1;let e=(0,$.countColumn)(s,o.tabSize)%(0,q.getIndentUnit)(o)||(0,q.getIndentUnit)(o);for(let t=0;t<e&&" "==s[s.length-1-t];t++)i--;l=i}else(l=(0,$.findClusterBreak)(a.text,i-a.from,t,t)+a.from)==i&&a.number!=(t?o.doc.lines:1)?l+=t?1:-1:!t&&/[\ufe00-\ufe0f]/.test(a.text.slice(l-a.from,i-a.from))&&(l=(0,$.findClusterBreak)(a.text,l-a.from,!1,!1)+a.from);return l}),eZ=e=>eY(e,!1,!0),e0=e=>eY(e,!0,!1),e1=(e,t)=>eX(e,n=>{let r=n.head,{state:i}=e,o=i.doc.lineAt(r),a=i.charCategorizer(r);for(let e=null;;){if(r==(t?o.to:o.from)){r==n.head&&o.number!=(t?i.doc.lines:1)&&(r+=t?1:-1);break}let s=(0,$.findClusterBreak)(o.text,r-o.from,t)+o.from,l=o.text.slice(Math.min(r,s)-o.from,Math.max(r,s)-o.from),c=a(l);if(null!=e&&c!=e)break;(" "!=l||r!=n.head)&&(e=c),r=s}return r}),e2=e=>e1(e,!1);function e5(e){let t=[],n=-1;for(let r of e.selection.ranges){let i=e.doc.lineAt(r.from),o=e.doc.lineAt(r.to);if(r.empty||r.to!=o.from||(o=e.doc.lineAt(r.to-1)),n>=i.number){let e=t[t.length-1];e.to=o.to,e.ranges.push(r)}else t.push({from:i.from,to:o.to,ranges:[r]});n=o.number+1}return t}function e3(e,t,n){if(e.readOnly)return!1;let r=[],i=[];for(let t of e5(e)){if(n?t.to==e.doc.length:0==t.from)continue;let o=e.doc.lineAt(n?t.to+1:t.from-1),a=o.length+1;if(n)for(let n of(r.push({from:t.to,to:o.to},{from:t.from,insert:o.text+e.lineBreak}),t.ranges))i.push($.EditorSelection.range(Math.min(e.doc.length,n.anchor+a),Math.min(e.doc.length,n.head+a)));else for(let n of(r.push({from:o.from,to:t.from},{from:t.to,insert:e.lineBreak+o.text}),t.ranges))i.push($.EditorSelection.range(n.anchor-a,n.head-a))}return!!r.length&&(t(e.update({changes:r,scrollIntoView:!0,selection:$.EditorSelection.create(i,e.selection.mainIndex),userEvent:"move.line"})),!0)}function e4(e,t,n){if(e.readOnly)return!1;let r=[];for(let t of e5(e))n?r.push({from:t.from,insert:e.doc.slice(t.from,t.to)+e.lineBreak}):r.push({from:t.to,insert:e.lineBreak+e.doc.slice(t.from,t.to)});let i=e.changes(r);return t(e.update({changes:i,selection:e.selection.map(i,n?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}let e6=e8(!1),e7=e8(!0);function e8(e){return({state:t,dispatch:n})=>{if(t.readOnly)return!1;let r=t.changeByRange(n=>{let{from:r,to:i}=n,o=t.doc.lineAt(r),a=!e&&r==i&&function(e,t){if(/\(\)|\[\]|\{\}/.test(e.sliceDoc(t-1,t+1)))return{from:t,to:t};let n=(0,q.syntaxTree)(e).resolveInner(t),r=n.childBefore(t),i=n.childAfter(t),o;return r&&i&&r.to<=t&&i.from>=t&&(o=r.type.prop(U.NodeProp.closedBy))&&o.indexOf(i.name)>-1&&e.doc.lineAt(r.to).from==e.doc.lineAt(i.from).from&&!/\S/.test(e.sliceDoc(r.to,i.from))?{from:r.to,to:i.from}:null}(t,r);e&&(r=i=(i<=o.to?o:t.doc.lineAt(i)).to);let s=new q.IndentContext(t,{simulateBreak:r,simulateDoubleBreak:!!a}),l=(0,q.getIndentation)(s,r);for(null==l&&(l=(0,$.countColumn)(/^\s*/.exec(t.doc.lineAt(r).text)[0],t.tabSize));i<o.to&&/\s/.test(o.text[i-o.from]);)i++;a?{from:r,to:i}=a:r>o.from&&r<o.from+100&&!/\S/.test(o.text.slice(0,r))&&(r=o.from);let c=["",(0,q.indentString)(t,l)];return a&&c.push((0,q.indentString)(t,s.lineIndent(o.from,-1))),{changes:{from:r,to:i,insert:$.Text.of(c)},range:$.EditorSelection.cursor(r+1+c[1].length)}});return n(t.update(r,{scrollIntoView:!0,userEvent:"input"})),!0}}function e9(e,t){let n=-1;return e.changeByRange(r=>{let i=[];for(let o=r.from;o<=r.to;){let a=e.doc.lineAt(o);a.number>n&&(r.empty||r.to>a.from)&&(t(a,i,r),n=a.number),o=a.to+1}let o=e.changes(i);return{changes:i,range:$.EditorSelection.range(o.mapPos(r.anchor,1),o.mapPos(r.head,1))}})}let te=({state:e,dispatch:t})=>!e.readOnly&&(t(e.update(e9(e,(t,n)=>{n.push({from:t.from,insert:e.facet(q.indentUnit)})}),{userEvent:"input.indent"})),!0),tt=({state:e,dispatch:t})=>!e.readOnly&&(t(e.update(e9(e,(t,n)=>{let r=/^\s*/.exec(t.text)[0];if(!r)return;let i=(0,$.countColumn)(r,e.tabSize),o=0,a=(0,q.indentString)(e,Math.max(0,i-(0,q.getIndentUnit)(e)));for(;o<r.length&&o<a.length&&r.charCodeAt(o)==a.charCodeAt(o);)o++;n.push({from:t.from+o,to:t.from+r.length,insert:a.slice(o)})}),{userEvent:"delete.dedent"})),!0),tn=[{key:"Ctrl-b",run:ek,shift:eB,preventDefault:!0},{key:"Ctrl-f",run:eS,shift:eO},{key:"Ctrl-p",run:eM,shift:eF},{key:"Ctrl-n",run:eA,shift:e$},{key:"Ctrl-a",run:e=>ev(e,t=>e.moveToLineBoundary(t,!1,!1)),shift:e=>eL(e,!1,t=>$.EditorSelection.cursor(e.lineBlockAt(t.head).from))},{key:"Ctrl-e",run:e=>ev(e,t=>e.moveToLineBoundary(t,!0,!1)),shift:e=>eL(e,!0,t=>$.EditorSelection.cursor(e.lineBlockAt(t.head).to))},{key:"Ctrl-d",run:e0},{key:"Ctrl-h",run:eZ},{key:"Ctrl-k",run:e=>eX(e,t=>{let n=e.lineBlockAt(t.head).to;return t.head<n?n:Math.min(e.state.doc.length,t.head+1)})},{key:"Ctrl-Alt-h",run:e2},{key:"Ctrl-o",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange(e=>({changes:{from:e.from,to:e.to,insert:$.Text.of(["",""])},range:$.EditorSelection.cursor(e.from)}));return t(e.update(n,{scrollIntoView:!0,userEvent:"input"})),!0}},{key:"Ctrl-t",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange(t=>{if(!t.empty||0==t.from||t.from==e.doc.length)return{range:t};let n=t.from,r=e.doc.lineAt(n),i=n==r.from?n-1:(0,$.findClusterBreak)(r.text,n-r.from,!1)+r.from,o=n==r.to?n+1:(0,$.findClusterBreak)(r.text,n-r.from,!0)+r.from;return{changes:{from:i,to:o,insert:e.doc.slice(n,o).append(e.doc.slice(i,n))},range:$.EditorSelection.cursor(o)}});return!n.changes.empty&&(t(e.update(n,{scrollIntoView:!0,userEvent:"move.character"})),!0)}},{key:"Ctrl-v",run:eP}],tr=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:e=>ev(e,t=>ej(e.state,t,!ew(e))),shift:e=>{let t=!ew(e);return eL(e,t,n=>ej(e.state,n,t))}},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:e=>ev(e,t=>ej(e.state,t,ew(e))),shift:e=>{let t=ew(e);return eL(e,t,n=>ej(e.state,n,t))}},{key:"Alt-ArrowUp",run:({state:e,dispatch:t})=>e3(e,t,!1)},{key:"Shift-Alt-ArrowUp",run:({state:e,dispatch:t})=>e4(e,t,!1)},{key:"Alt-ArrowDown",run:({state:e,dispatch:t})=>e3(e,t,!0)},{key:"Shift-Alt-ArrowDown",run:({state:e,dispatch:t})=>e4(e,t,!0)},{key:"Mod-Alt-ArrowUp",run:e=>e_(e,!1)},{key:"Mod-Alt-ArrowDown",run:e=>e_(e,!0)},{key:"Escape",run:({state:e,dispatch:t})=>{let n=e.selection,r=null;return n.ranges.length>1?r=$.EditorSelection.create([n.main]):n.main.empty||(r=$.EditorSelection.create([$.EditorSelection.cursor(n.main.head)])),!!r&&(t(ex(e,r)),!0)}},{key:"Mod-Enter",run:e7},{key:"Alt-l",mac:"Ctrl-l",run:({state:e,dispatch:t})=>{let n=e5(e).map(({from:t,to:n})=>$.EditorSelection.undirectionalRange(t,Math.min(n+1,e.doc.length)));return t(e.update({selection:$.EditorSelection.create(n),userEvent:"select"})),!0}},{key:"Mod-i",run:({state:e,dispatch:t})=>{let n=eg(e.selection,t=>{let n=(0,q.syntaxTree)(e),r=n.resolveStack(t.from,1);if(t.empty){let e=n.resolveStack(t.from,-1);e.node.from>=r.node.from&&e.node.to<=r.node.to&&(r=e)}for(let e=r;e;e=e.next){let{node:n}=e;if((n.from<t.from&&n.to>=t.to||n.to>t.to&&n.from<=t.from)&&e.next)return $.EditorSelection.undirectionalRange(n.from,n.to)}return t});return!n.eq(e.selection)&&(t(ex(e,n)),!0)},preventDefault:!0},{key:"Mod-[",run:tt},{key:"Mod-]",run:te},{key:"Mod-Alt-\\",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=Object.create(null),r=new q.IndentContext(e,{overrideIndentation:e=>{let t=n[e];return null==t?-1:t}}),i=e9(e,(t,i,o)=>{let a=(0,q.getIndentation)(r,t.from);if(null==a)return;/\S/.test(t.text)||(a=0);let s=/^\s*/.exec(t.text)[0],l=(0,q.indentString)(e,a);(s!=l||o.from<t.from+s.length)&&(n[t.from]=a,i.push({from:t.from,to:t.from+s.length,insert:l}))});return i.changes.empty||t(e.update(i,{userEvent:"indent"})),!0}},{key:"Shift-Mod-k",run:e=>{if(e.state.readOnly)return!1;let{state:t}=e,n=t.changes(e5(t).map(({from:e,to:n})=>(e>0?e--:n<t.doc.length&&n++,{from:e,to:n}))),r=eg(t.selection,t=>{let n;if(e.lineWrapping){let r=e.lineBlockAt(t.head),i=e.coordsAtPos(t.head,t.assoc||1);i&&(n=r.bottom+e.documentTop-i.bottom+e.defaultLineHeight/2)}return e.moveVertically(t,!0,n)}).map(n);return e.dispatch({changes:n,selection:r,scrollIntoView:!0,userEvent:"delete.line"}),!0}},{key:"Shift-Mod-\\",run:({state:e,dispatch:t})=>{let n,r;return n=!1,r=eg(e.selection,t=>{let r=(0,q.matchBrackets)(e,t.head,-1)||(0,q.matchBrackets)(e,t.head,1)||t.head>0&&(0,q.matchBrackets)(e,t.head-1,1)||t.head<e.doc.length&&(0,q.matchBrackets)(e,t.head+1,-1);if(!r||!r.end)return t;n=!0;let i=r.start.from==t.head?r.end.to:r.end.from;return $.EditorSelection.cursor(i)}),!!n&&(t(ex(e,r)),!0)}},{key:"Mod-/",run:e=>{let{state:t}=e,n=t.doc.lineAt(t.selection.main.from),r=_(e.state,n.from);return r.line?K(e):!!r.block&&G(e)}},{key:"Alt-A",mac:"Ctrl-A",run:J},{key:"Ctrl-m",mac:"Shift-Alt-m",run:e=>(e.setTabFocusMode(),!0)}].concat([{key:"ArrowLeft",run:ek,shift:eB,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:e=>eC(e,!ew(e)),shift:e=>ez(e,!ew(e)),preventDefault:!0},{mac:"Cmd-ArrowLeft",run:e=>ev(e,t=>eR(e,t,!ew(e))),shift:e=>{let t=!ew(e);return eL(e,t,n=>eR(e,n,t))},preventDefault:!0},{key:"ArrowRight",run:eS,shift:eO,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:e=>eC(e,ew(e)),shift:e=>ez(e,ew(e)),preventDefault:!0},{mac:"Cmd-ArrowRight",run:e=>ev(e,t=>eR(e,t,ew(e))),shift:e=>{let t=ew(e);return eL(e,t,n=>eR(e,n,t))},preventDefault:!0},{key:"ArrowUp",run:eM,shift:eF,preventDefault:!0},{mac:"Cmd-ArrowUp",run:eH,shift:eJ},{mac:"Ctrl-ArrowUp",run:eT,shift:eq},{key:"ArrowDown",run:eA,shift:e$,preventDefault:!0},{mac:"Cmd-ArrowDown",run:eK,shift:eG},{mac:"Ctrl-ArrowDown",run:eP,shift:eU},{key:"PageUp",run:eT,shift:eq},{key:"PageDown",run:eP,shift:eU},{key:"Home",run:e=>ev(e,t=>eR(e,t,!1)),shift:e=>eL(e,!1,t=>eR(e,t,!1)),preventDefault:!0},{key:"Mod-Home",run:eH,shift:eJ},{key:"End",run:e=>ev(e,t=>eR(e,t,!0)),shift:e=>eL(e,!0,t=>eR(e,t,!0)),preventDefault:!0},{key:"Mod-End",run:eK,shift:eG},{key:"Enter",run:e6,shift:e6},{key:"Mod-a",run:({state:e,dispatch:t})=>(t(e.update({selection:{anchor:0,head:e.doc.length},userEvent:"select"})),!0)},{key:"Backspace",run:eZ,shift:eZ,preventDefault:!0},{key:"Delete",run:e0,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:e2,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:e=>e1(e,!0),preventDefault:!0},{mac:"Mod-Backspace",run:e=>eX(e,t=>{let n=e.moveToLineBoundary(t,!1).head;return t.head>n?n:Math.max(0,t.head-1)}),preventDefault:!0},{mac:"Mod-Delete",run:e=>eX(e,t=>{let n=e.moveToLineBoundary(t,!0).head;return t.head<n?n:Math.min(e.state.doc.length,t.head+1)}),preventDefault:!0}].concat(tn.map(e=>({mac:e.key,run:e.run,shift:e.shift})))),ti={key:"Tab",run:te,shift:tt};var to=e.i(921520);let ta="function"==typeof String.prototype.normalize?e=>e.normalize("NFKD"):e=>e;class ts{constructor(e,t,n=0,r=e.length,i,o){this.test=o,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(n,r),this.bufferStart=n,this.normalize=i?e=>i(ta(e)):ta,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return -1;this.bufferPos=0,this.buffer=this.iter.value}return(0,$.codePointAt)(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=(0,$.fromCodePoint)(e),n=this.bufferStart+this.bufferPos;this.bufferPos+=(0,$.codePointSize)(e);let r=this.normalize(t);if(r.length)for(let e=0,i=n;;e++){let o=r.charCodeAt(e),a=this.match(o,i,this.bufferPos+this.bufferStart);if(e==r.length-1){if(a)return this.value=a,this;break}i==n&&e<t.length&&t.charCodeAt(e)==o&&i++}}}match(e,t,n){let r=null;for(let t=0;t<this.matches.length;t+=2){let i=this.matches[t],o=!1;this.query.charCodeAt(i)==e&&(i==this.query.length-1?r={from:this.matches[t+1],to:n}:(this.matches[t]++,o=!0)),o||(this.matches.splice(t,2),t-=2)}return this.query.charCodeAt(0)==e&&(1==this.query.length?r={from:t,to:n}:this.matches.push(1,t)),r&&this.test&&!this.test(r.from,r.to,this.buffer,this.bufferStart)&&(r=null),r}}"u">typeof Symbol&&(ts.prototype[Symbol.iterator]=function(){return this});let tl={from:-1,to:-1,match:/.*/.exec("")},tc="gm"+(null==/x/.unicode?"":"u");class th{constructor(e,t,n,r=0,i=e.length){if(this.text=e,this.to=i,this.curLine="",this.done=!1,this.value=tl,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new tf(e,t,n,r,i);this.re=new RegExp(t,tc+((null==n?void 0:n.ignoreCase)?"i":"")),this.test=null==n?void 0:n.test,this.iter=e.iter();let o=e.lineAt(r);this.curLineStart=o.from,this.matchPos=tm(e,r),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine="":(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let t=this.matchPos<=this.to&&this.re.exec(this.curLine);if(t){let n=this.curLineStart+t.index,r=n+t[0].length;if(this.matchPos=tm(this.text,r+ +(n==r)),n==this.curLineStart+this.curLine.length&&this.nextLine(),(n<r||n>this.value.to)&&(!this.test||this.test(n,r,t)))return this.value={from:n,to:r,match:t},this;e=this.matchPos-this.curLineStart}else{if(!(this.curLineStart+this.curLine.length<this.to))return this.done=!0,this;this.nextLine(),e=0}}}}let td=new WeakMap;class tu{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(e,t,n){let r=td.get(e);if(!r||r.from>=n||r.to<=t){let r=new tu(t,e.sliceString(t,n));return td.set(e,r),r}if(r.from==t&&r.to==n)return r;let{text:i,from:o}=r;return o>t&&(i=e.sliceString(t,o)+i,o=t),r.to<n&&(i+=e.sliceString(r.to,n)),td.set(e,new tu(o,i)),new tu(t,i.slice(t-o,n-o))}}class tf{constructor(e,t,n,r,i){this.text=e,this.to=i,this.done=!1,this.value=tl,this.matchPos=tm(e,r),this.re=new RegExp(t,tc+((null==n?void 0:n.ignoreCase)?"i":"")),this.test=null==n?void 0:n.test,this.flat=tu.get(e,r,this.chunkEnd(r+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,t=this.re.exec(this.flat.text);if(t&&!t[0]&&t.index==e&&(this.re.lastIndex=e+1,t=this.re.exec(this.flat.text)),t){let e=this.flat.from+t.index,n=e+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(e,n,t)))return this.value={from:e,to:n,match:t},this.matchPos=tm(this.text,n+ +(e==n)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=tu.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+2*this.flat.text.length))}}}function tm(e,t){if(t>=e.length)return t;let n=e.lineAt(t),r;for(;t<n.to&&(r=n.text.charCodeAt(t-n.from))>=56320&&r<57344;)t++;return t}"u">typeof Symbol&&(th.prototype[Symbol.iterator]=tf.prototype[Symbol.iterator]=function(){return this});let tp={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},tg=$.Facet.define({combine:e=>(0,$.combineConfig)(e,tp,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}),tx=W.Decoration.mark({class:"cm-selectionMatch"}),tv=W.Decoration.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function ty(e,t,n,r){return(0==n||e(t.sliceDoc(n-1,n))!=$.CharCategory.Word)&&(r==t.doc.length||e(t.sliceDoc(r,r+1))!=$.CharCategory.Word)}let tb=W.ViewPlugin.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.selectionSet||e.docChanged||e.viewportChanged)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=e.state.facet(tg),{state:n}=e,r=n.selection;if(r.ranges.length>1)return W.Decoration.none;let i=r.main,o,a=null;if(i.empty){if(!t.highlightWordAroundCursor)return W.Decoration.none;let e=n.wordAt(i.head);if(!e)return W.Decoration.none;a=n.charCategorizer(i.head),o=n.sliceDoc(e.from,e.to)}else{let e=i.to-i.from;if(e<t.minSelectionLength||e>200)return W.Decoration.none;if(t.wholeWords){var s,l,c;if(o=n.sliceDoc(i.from,i.to),!(ty(a=n.charCategorizer(i.head),n,i.from,i.to)&&(s=a,l=i.from,c=i.to,s(n.sliceDoc(l,l+1))==$.CharCategory.Word&&s(n.sliceDoc(c-1,c))==$.CharCategory.Word)))return W.Decoration.none}else if(!(o=n.sliceDoc(i.from,i.to)))return W.Decoration.none}let h=[];for(let r of e.visibleRanges){let e=new ts(n.doc,o,r.from,r.to);for(;!e.next().done;){let{from:r,to:o}=e.value;if((!a||ty(a,n,r,o))&&(i.empty&&r<=i.from&&o>=i.to?h.push(tv.range(r,o)):(r>=i.to||o<=i.from)&&h.push(tx.range(r,o)),h.length>t.maxMatches))return W.Decoration.none}}return W.Decoration.set(h)}},{decorations:e=>e.decorations}),tw=W.EditorView.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),tk=$.Facet.define({combine:e=>(0,$.combineConfig)(e,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new tQ(e),scrollToMatch:e=>W.EditorView.scrollIntoView(e)})});class tS{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||function(e){try{return new RegExp(e,tc),!0}catch(e){return!1}}(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord,this.test=e.test}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(e,t)=>"n"==t?"\n":"r"==t?"\r":"t"==t?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord&&this.test==e.test}create(){return this.regexp?new tD(this):new tN(this)}getCursor(e,t=0,n){let r=e.doc?e:$.EditorState.create({doc:e});return null==n&&(n=r.doc.length),this.regexp?tM(this,r,t,n):tj(this,r,t,n)}}class tC{constructor(e){this.spec=e}}function tj(e,t,n,r){var i,o,a,s;let l;return e.wholeWord&&(a=t.doc,s=t.charCategorizer(t.selection.main.head),l=(e,t,n,r)=>((r>e||r+n.length<t)&&(r=Math.max(0,e-2),n=a.sliceString(r,Math.min(a.length,t+2))),(s(tA(n,e-r))!=$.CharCategory.Word||s(tE(n,e-r))!=$.CharCategory.Word)&&(s(tE(n,t-r))!=$.CharCategory.Word||s(tA(n,t-r))!=$.CharCategory.Word))),e.test&&(i=e.test,o=l,l=(e,n,r,a)=>(!o||!!o(e,n,r,a))&&i(e>=a&&n<=a+r.length?r.slice(e-a,n-a):t.doc.sliceString(e,n),t,e,n)),new ts(t.doc,e.unquoted,n,r,e.caseSensitive?void 0:e=>e.toLowerCase(),l)}class tN extends tC{constructor(e){super(e)}nextMatch(e,t,n){let r=tj(this.spec,e,n,e.doc.length).nextOverlapping();if(r.done){let n=Math.min(e.doc.length,t+this.spec.unquoted.length);r=tj(this.spec,e,0,n).nextOverlapping()}return r.done||r.value.from==t&&r.value.to==n?null:r.value}prevMatchInRange(e,t,n){for(let r=n;;){let n=Math.max(t,r-1e4-this.spec.unquoted.length),i=tj(this.spec,e,n,r),o=null;for(;!i.nextOverlapping().done;)o=i.value;if(o)return o;if(n==t)return null;r-=1e4}}prevMatch(e,t,n){let r=this.prevMatchInRange(e,0,t);return r||(r=this.prevMatchInRange(e,Math.max(0,n-this.spec.unquoted.length),e.doc.length)),r&&(r.from!=t||r.to!=n)?r:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let n=tj(this.spec,e,0,e.doc.length),r=[];for(;!n.next().done;){if(r.length>=t)return null;r.push(n.value)}return r}highlight(e,t,n,r){let i=tj(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(n+this.spec.unquoted.length,e.doc.length));for(;!i.next().done;)r(i.value.from,i.value.to)}}function tM(e,t,n,r){var i,o,a;let s;return e.wholeWord&&(a=t.charCategorizer(t.selection.main.head),s=(e,t,n)=>!n[0].length||(a(tA(n.input,n.index))!=$.CharCategory.Word||a(tE(n.input,n.index))!=$.CharCategory.Word)&&(a(tE(n.input,n.index+n[0].length))!=$.CharCategory.Word||a(tA(n.input,n.index+n[0].length))!=$.CharCategory.Word)),e.test&&(i=e.test,o=s,s=(e,n,r)=>(!o||o(e,n,r))&&i(r[0],t,e,n)),new th(t.doc,e.search,{ignoreCase:!e.caseSensitive,test:s},n,r)}function tA(e,t){return e.slice((0,$.findClusterBreak)(e,t,!1),t)}function tE(e,t){return e.slice(t,(0,$.findClusterBreak)(e,t))}class tD extends tC{nextMatch(e,t,n){let r=tM(this.spec,e,n,e.doc.length).next();return r.done&&(r=tM(this.spec,e,0,t).next()),r.done?null:r.value}prevMatchInRange(e,t,n){for(let r=1;;r++){let i=Math.max(t,n-1e4*r),o=tM(this.spec,e,i,n),a=null;for(;!o.next().done;)a=o.value;if(a&&(i==t||a.from>i+10))return a;if(i==t)return null}}prevMatch(e,t,n){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,n,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(t,n)=>{if("&"==n)return e.match[0];if("$"==n)return"$";for(let t=n.length;t>0;t--){let r=+n.slice(0,t);if(r>0&&r<e.match.length)return e.match[r]+n.slice(t)}return t})}matchAll(e,t){let n=tM(this.spec,e,0,e.doc.length),r=[];for(;!n.next().done;){if(r.length>=t)return null;r.push(n.value)}return r}highlight(e,t,n,r){let i=tM(this.spec,e,Math.max(0,t-250),Math.min(n+250,e.doc.length));for(;!i.next().done;)r(i.value.from,i.value.to)}}let tT=$.StateEffect.define(),tP=$.StateEffect.define(),tR=$.StateField.define({create:e=>new tL(tH(e).create(),null),update(e,t){for(let n of t.effects)n.is(tT)?e=new tL(n.value.create(),e.panel):n.is(tP)&&(e=new tL(e.query,n.value?tU:null));return e},provide:e=>W.showPanel.from(e,e=>e.panel)});class tL{constructor(e,t){this.query=e,this.panel=t}}let tI=W.Decoration.mark({class:"cm-searchMatch"}),tB=W.Decoration.mark({class:"cm-searchMatch cm-searchMatch-selected"}),tO=W.ViewPlugin.fromClass(class{constructor(e){this.view=e,this.decorations=this.highlight(e.state.field(tR))}update(e){let t=e.state.field(tR);(t!=e.startState.field(tR)||e.docChanged||e.selectionSet||e.viewportChanged)&&(this.decorations=this.highlight(t))}highlight({query:e,panel:t}){if(!t||!e.spec.valid)return W.Decoration.none;let{view:n}=this,r=new $.RangeSetBuilder;for(let t=0,i=n.visibleRanges,o=i.length;t<o;t++){let{from:a,to:s}=i[t];for(;t<o-1&&s>i[t+1].from-500;)s=i[++t].to;e.highlight(n.state,a,s,(e,t)=>{let i=n.state.selection.ranges.some(n=>n.from==e&&n.to==t);r.add(e,t,i?tB:tI)})}return r.finish()}},{decorations:e=>e.decorations});function tz(e){return t=>{let n=t.state.field(tR,!1);return n&&n.query.spec.valid?e(t,n):tG(t)}}let tV=tz((e,{query:t})=>{let{to:n}=e.state.selection.main,r=t.nextMatch(e.state,n,n);if(!r)return!1;let i=$.EditorSelection.single(r.from,r.to),o=e.state.facet(tk);return e.dispatch({selection:i,effects:[t0(e,r),o.scrollToMatch(i.main,e)],userEvent:"select.search"}),tJ(e),!0}),tF=tz((e,{query:t})=>{let{state:n}=e,{from:r}=n.selection.main,i=t.prevMatch(n,r,r);if(!i)return!1;let o=$.EditorSelection.single(i.from,i.to),a=e.state.facet(tk);return e.dispatch({selection:o,effects:[t0(e,i),a.scrollToMatch(o.main,e)],userEvent:"select.search"}),tJ(e),!0}),t$=tz((e,{query:t})=>{let n=t.matchAll(e.state,1e3);return!!n&&!!n.length&&(e.dispatch({selection:$.EditorSelection.create(n.map(e=>$.EditorSelection.range(e.from,e.to))),userEvent:"select.search.matches"}),!0)}),tW=tz((e,{query:t})=>{let{state:n}=e,{from:r,to:i}=n.selection.main;if(n.readOnly)return!1;let o=t.nextMatch(n,r,r);if(!o)return!1;let a=o,s=[],l,c,h=[];a.from==r&&a.to==i&&(c=n.toText(t.getReplacement(a)),s.push({from:a.from,to:a.to,insert:c}),a=t.nextMatch(n,a.from,a.to),h.push(W.EditorView.announce.of(n.phrase("replaced match on line $",n.doc.lineAt(r).number)+".")));let d=e.state.changes(s);return a&&(l=$.EditorSelection.single(a.from,a.to).map(d),h.push(t0(e,a)),h.push(n.facet(tk).scrollToMatch(l.main,e))),e.dispatch({changes:d,selection:l,effects:h,userEvent:"input.replace"}),!0}),tq=tz((e,{query:t})=>{if(e.state.readOnly)return!1;let n=t.matchAll(e.state,1e9).map(e=>{let{from:n,to:r}=e;return{from:n,to:r,insert:t.getReplacement(e)}});if(!n.length)return!1;let r=e.state.phrase("replaced $ matches",n.length)+".";return e.dispatch({changes:n,effects:W.EditorView.announce.of(r),userEvent:"input.replace.all"}),!0});function tU(e){return e.state.facet(tk).createPanel(e)}function tH(e,t){var n,r,i,o,a;let s=e.selection.main,l=s.empty||s.to>s.from+100?"":e.sliceDoc(s.from,s.to);if(t&&!l)return t;let c=e.facet(tk);return new tS({search:(null!=(n=null==t?void 0:t.literal)?n:c.literal)?l:l.replace(/\n/g,"\\n"),caseSensitive:null!=(r=null==t?void 0:t.caseSensitive)?r:c.caseSensitive,literal:null!=(i=null==t?void 0:t.literal)?i:c.literal,regexp:null!=(o=null==t?void 0:t.regexp)?o:c.regexp,wholeWord:null!=(a=null==t?void 0:t.wholeWord)?a:c.wholeWord})}function tK(e){let t=(0,W.getPanel)(e,tU);return t&&t.dom.querySelector("[main-field]")}function tJ(e){let t=tK(e);t&&t==e.root.activeElement&&t.select()}let tG=e=>{let t=e.state.field(tR,!1);if(t&&t.panel){let n=tK(e);if(n&&n!=e.root.activeElement){let r=tH(e.state,t.query.spec);r.valid&&e.dispatch({effects:tT.of(r)}),n.focus(),n.select()}}else e.dispatch({effects:[tP.of(!0),t?tT.of(tH(e.state,t.query.spec)):$.StateEffect.appendConfig.of(t2)]});return!0},t_=e=>{let t=e.state.field(tR,!1);if(!t||!t.panel)return!1;let n=(0,W.getPanel)(e,tU);return n&&n.dom.contains(e.root.activeElement)&&e.focus(),e.dispatch({effects:tP.of(!1)}),!0},tX=[{key:"Mod-f",run:tG,scope:"editor search-panel"},{key:"F3",run:tV,shift:tF,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:tV,shift:tF,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:t_,scope:"editor search-panel"},{key:"Mod-Shift-l",run:({state:e,dispatch:t})=>{let n=e.selection;if(n.ranges.length>1||n.main.empty)return!1;let{from:r,to:i}=n.main,o=[],a=0;for(let t=new ts(e.doc,e.sliceDoc(r,i));!t.next().done;){if(o.length>1e3)return!1;t.value.from==r&&(a=o.length),o.push($.EditorSelection.range(t.value.from,t.value.to))}return t(e.update({selection:$.EditorSelection.create(o,a),userEvent:"select.search.matches"})),!0}},{key:"Mod-Alt-g",run:e=>{let{state:t}=e,n=String(t.doc.lineAt(e.state.selection.main.head).number),{close:r,result:i}=(0,W.showDialog)(e,{label:t.phrase("Go to line"),input:{type:"text",name:"line",value:n},focus:!0,submitLabel:t.phrase("go")});return i.then(n=>{let i=n&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(n.elements.line.value);if(!i)return void e.dispatch({effects:r});let o=t.doc.lineAt(t.selection.main.head),[,a,s,l,c]=i,h=l?+l.slice(1):0,d=s?+s:o.number;if(s&&c){let e=d/100;a&&(e=e*("-"==a?-1:1)+o.number/t.doc.lines),d=Math.round(t.doc.lines*e)}else s&&a&&(d=d*("-"==a?-1:1)+o.number);let u=t.doc.line(Math.max(1,Math.min(t.doc.lines,d))),f=$.EditorSelection.cursor(u.from+Math.max(0,Math.min(h,u.length)));e.dispatch({effects:[r,W.EditorView.scrollIntoView(f.from,{y:"center"})],selection:f})}),!0}},{key:"Mod-d",run:({state:e,dispatch:t})=>{let{ranges:n}=e.selection;if(n.some(e=>e.from===e.to))return(({state:e,dispatch:t})=>{let{selection:n}=e,r=$.EditorSelection.create(n.ranges.map(t=>e.wordAt(t.head)||$.EditorSelection.cursor(t.head)),n.mainIndex);return!r.eq(n)&&(t(e.update({selection:r})),!0)})({state:e,dispatch:t});let r=e.sliceDoc(n[0].from,n[0].to);if(e.selection.ranges.some(t=>e.sliceDoc(t.from,t.to)!=r))return!1;let i=function(e,t){let{main:n,ranges:r}=e.selection,i=e.wordAt(n.head),o=i&&i.from==n.from&&i.to==n.to;for(let n=!1,i=new ts(e.doc,t,r[r.length-1].to);;)if(i.next(),i.done){if(n)return null;i=new ts(e.doc,t,0,Math.max(0,r[r.length-1].from-1)),n=!0}else{if(n&&r.some(e=>e.from==i.value.from))continue;if(o){let t=e.wordAt(i.value.from);if(!t||t.from!=i.value.from||t.to!=i.value.to)continue}return i.value}}(e,r);return!!i&&(t(e.update({selection:e.selection.addRange($.EditorSelection.range(i.from,i.to),!1),effects:W.EditorView.scrollIntoView(i.to)})),!0)},preventDefault:!0}];class tQ{constructor(e){this.view=e;let t=this.query=e.state.field(tR).query.spec;function n(e,t,n){return(0,to.default)("button",{class:"cm-button",name:e,onclick:t,type:"button"},n)}this.commit=this.commit.bind(this),this.searchField=(0,to.default)("input",{value:t.search,placeholder:tY(e,"Find"),"aria-label":tY(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=(0,to.default)("input",{value:t.replace,placeholder:tY(e,"Replace"),"aria-label":tY(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=(0,to.default)("input",{type:"checkbox",name:"case",form:"",checked:t.caseSensitive,onchange:this.commit}),this.reField=(0,to.default)("input",{type:"checkbox",name:"re",form:"",checked:t.regexp,onchange:this.commit}),this.wordField=(0,to.default)("input",{type:"checkbox",name:"word",form:"",checked:t.wholeWord,onchange:this.commit}),this.dom=(0,to.default)("div",{onkeydown:e=>this.keydown(e),class:"cm-search"},[this.searchField,n("next",()=>tV(e),[tY(e,"next")]),n("prev",()=>tF(e),[tY(e,"previous")]),n("select",()=>t$(e),[tY(e,"all")]),(0,to.default)("label",null,[this.caseField,tY(e,"match case")]),(0,to.default)("label",null,[this.reField,tY(e,"regexp")]),(0,to.default)("label",null,[this.wordField,tY(e,"by word")]),...e.state.readOnly?[]:[(0,to.default)("br"),this.replaceField,n("replace",()=>tW(e),[tY(e,"replace")]),n("replaceAll",()=>tq(e),[tY(e,"replace all")])],(0,to.default)("button",{name:"close",onclick:()=>t_(e),"aria-label":tY(e,"close"),type:"button"},["×"])])}commit(){let e=new tS({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:tT.of(e)}))}keydown(e){(0,W.runScopeHandlers)(this.view,e,"search-panel")?e.preventDefault():13==e.keyCode&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?tF:tV)(this.view)):13==e.keyCode&&e.target==this.replaceField&&(e.preventDefault(),tW(this.view))}update(e){for(let t of e.transactions)for(let e of t.effects)e.is(tT)&&!e.value.eq(this.query)&&this.setQuery(e.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(tk).top}}function tY(e,t){return e.state.phrase(t)}let tZ=/[\s\.,:;?!]/;function t0(e,{from:t,to:n}){let r=e.state.doc.lineAt(t),i=e.state.doc.lineAt(n).to,o=Math.max(r.from,t-30),a=Math.min(i,n+30),s=e.state.sliceDoc(o,a);if(o!=r.from){for(let e=0;e<30;e++)if(!tZ.test(s[e+1])&&tZ.test(s[e])){s=s.slice(e);break}}if(a!=i){for(let e=s.length-1;e>s.length-30;e--)if(!tZ.test(s[e-1])&&tZ.test(s[e])){s=s.slice(0,e);break}}return W.EditorView.announce.of(`${e.state.phrase("current match")}. ${s} ${e.state.phrase("on line")} ${r.number}.`)}let t1=W.EditorView.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),t2=[tR,$.Prec.low(tO),t1];var t5=e.i(424060),t3=W;class t4{constructor(e,t,n){this.from=e,this.to=t,this.diagnostic=n}}class t6{constructor(e,t,n){this.diagnostics=e,this.panel=t,this.selected=n}static init(e,t,n){let r=n.facet(ns).markerFilter;r&&(e=r(e,n));let i=e.slice().sort((e,t)=>e.from-t.from||e.to-t.to),o=new $.RangeSetBuilder,a=[],s=0,l=n.doc.iter(),c=0,h=n.doc.length;for(let e=0;;){let t,n,r=e==i.length?null:i[e];if(!r&&!a.length)break;if(a.length)t=s,n=a.reduce((e,t)=>Math.min(e,t.to),r&&r.from>t?r.from:1e8);else{if((t=r.from)>h)break;n=r.to,a.push(r),e++}for(;e<i.length;){let r=i[e];if(r.from==t&&(r.to>r.from||r.to==t))a.push(r),e++,n=Math.min(r.to,n);else{n=Math.min(r.from,n);break}}n=Math.min(n,h);let d=!1;if(a.some(e=>e.from==t&&(e.to==n||n==h))&&!(d=t==n)&&n-t<10){let e=t-(c+l.value.length);e>0&&(l.next(e),c=t);for(let e=t;;){if(e>=n){d=!0;break}if(!l.lineBreak&&c+l.value.length>e)break;e=c+l.value.length,c+=l.value.length,l.next()}}let u=ng(a);if(d)o.add(t,t,t3.Decoration.widget({widget:new nd(u),diagnostics:a.slice()}));else{let e=a.reduce((e,t)=>t.markClass?e+" "+t.markClass:e,"");o.add(t,n,t3.Decoration.mark({class:"cm-lintRange cm-lintRange-"+u+e,diagnostics:a.slice(),inclusiveEnd:a.some(e=>e.to>n)}))}if((s=n)==h)break;for(let e=0;e<a.length;e++)a[e].to<=s&&a.splice(e--,1)}let d=o.finish();return new t6(d,t,t7(d))}}function t7(e,t=null,n=0){let r=null;return e.between(n,1e9,(e,n,{spec:i})=>{if(!(t&&0>i.diagnostics.indexOf(t)))if(r){if(0>i.diagnostics.indexOf(r.diagnostic))return!1;r=new t4(r.from,n,r.diagnostic)}else r=new t4(e,n,t||i.diagnostics[0])}),r}function t8(e,t){let n=t.pos,r=t.end||n,i=e.state.facet(ns).hideOn(e,n,r);if(null!=i)return i;let o=e.startState.doc.lineAt(t.pos);return!!(e.effects.some(e=>e.is(t9))||e.changes.touchesRange(o.from,Math.max(o.to,r)))}let t9=$.StateEffect.define(),ne=$.StateEffect.define(),nt=$.StateEffect.define(),nn=$.StateField.define({create:()=>new t6(t3.Decoration.none,null,null),update(e,t){if(t.docChanged&&e.diagnostics.size){let n=e.diagnostics.map(t.changes),r=null,i=e.panel;if(e.selected){let i=t.changes.mapPos(e.selected.from,1);r=t7(n,e.selected.diagnostic,i)||t7(n,null,i)}!n.size&&i&&t.state.facet(ns).autoPanel&&(i=null),e=new t6(n,i,r)}for(let n of t.effects)if(n.is(t9)){let r=t.state.facet(ns).autoPanel?n.value.length?nf.open:null:e.panel;e=t6.init(n.value,r,t.state)}else n.is(ne)?e=new t6(e.diagnostics,n.value?nf.open:null,e.selected):n.is(nt)&&(e=new t6(e.diagnostics,e.panel,n.value));return e},provide:e=>[t3.showPanel.from(e,e=>e.panel),t3.EditorView.decorations.from(e,e=>e.diagnostics)]}),nr=t3.Decoration.mark({class:"cm-lintRange cm-lintRange-active"});function ni(e,t){return(0,to.default)("ul",{class:"cm-tooltip-lint"},t.map(t=>nh(e,t,!1)))}let no=e=>{let t=e.state.field(nn,!1);return!!t&&!!t.panel&&(e.dispatch({effects:ne.of(!1)}),!0)},na=[{key:"Mod-Shift-m",run:e=>{var t,n;let r=e.state.field(nn,!1);r&&r.panel||e.dispatch({effects:(t=e.state,n=[ne.of(!0)],t.field(nn,!1)?n:n.concat($.StateEffect.appendConfig.of(nb)))});let i=(0,t3.getPanel)(e,nf.open);return i&&i.dom.querySelector(".cm-panel-lint ul").focus(),!0},preventDefault:!0},{key:"F8",run:e=>{let t=e.state.field(nn,!1);if(!t)return!1;let n=e.state.selection.main,r=t7(t.diagnostics,null,n.to+1);return(!!r||!!(r=t7(t.diagnostics,null,0))&&(r.from!=n.from||r.to!=n.to))&&(e.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0}),(0,t3.activateHover)(e,r.from,1,{tooltip:ny,until:e=>e.docChanged||e.newSelection.main.head<r.from||e.newSelection.main.head>r.to}),!0)}}],ns=$.Facet.define({combine:e=>({sources:e.map(e=>e.source).filter(e=>null!=e),...(0,$.combineConfig)(e.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:nl,tooltipFilter:nl,needsRefresh:(e,t)=>e?t?n=>e(n)||t(n):e:t,hideOn:(e,t)=>e?t?(n,r,i)=>e(n,r,i)||t(n,r,i):e:t,autoPanel:(e,t)=>e||t})})});function nl(e,t){return e?t?(n,r)=>t(e(n,r),r):e:t}function nc(e){let t=[];if(e)t:for(let{name:n}of e){for(let e=0;e<n.length;e++){let r=n[e];if(/[a-zA-Z]/.test(r)&&!t.some(e=>e.toLowerCase()==r.toLowerCase())){t.push(r);continue t}}t.push("")}return t}function nh(e,t,n){var r;let i=n?nc(t.actions):[];return(0,to.default)("li",{class:"cm-diagnostic cm-diagnostic-"+t.severity},(0,to.default)("span",{class:"cm-diagnosticText"},t.renderMessage?t.renderMessage(e):t.message),null==(r=t.actions)?void 0:r.map((n,r)=>{let o=!1,a=r=>{if(r.preventDefault(),o)return;o=!0;let i=t7(e.state.field(nn).diagnostics,t);i&&n.apply(e,i.from,i.to)},{name:s}=n,l=i[r]?s.indexOf(i[r]):-1,c=l<0?s:[s.slice(0,l),(0,to.default)("u",s.slice(l,l+1)),s.slice(l+1)],h=n.markClass?" "+n.markClass:"";return(0,to.default)("button",{type:"button",class:"cm-diagnosticAction"+h,onclick:a,onmousedown:a,"aria-label":` Action: ${s}${l<0?"":` (access key "${i[r]})"`}.`},c)}),t.source&&(0,to.default)("div",{class:"cm-diagnosticSource"},t.source))}class nd extends t3.WidgetType{constructor(e){super(),this.sev=e}eq(e){return e.sev==this.sev}toDOM(){return(0,to.default)("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}}class nu{constructor(e,t){this.diagnostic=t,this.id="item_"+Math.floor(0xffffffff*Math.random()).toString(16),this.dom=nh(e,t,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class nf{constructor(e){this.view=e,this.items=[];let t=t=>{if(!t.ctrlKey&&!t.altKey&&!t.metaKey){if(27==t.keyCode)no(this.view),this.view.focus();else if(38==t.keyCode||33==t.keyCode)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(40==t.keyCode||34==t.keyCode)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(36==t.keyCode)this.moveSelection(0);else if(35==t.keyCode)this.moveSelection(this.items.length-1);else if(13==t.keyCode)this.view.focus();else{if(!(t.keyCode>=65)||!(t.keyCode<=90)||!(this.selectedIndex>=0))return;let{diagnostic:n}=this.items[this.selectedIndex],r=nc(n.actions);for(let i=0;i<r.length;i++)if(r[i].toUpperCase().charCodeAt(0)==t.keyCode){let t=t7(this.view.state.field(nn).diagnostics,n);t&&n.actions[i].apply(e,t.from,t.to)}}t.preventDefault()}},n=e=>{for(let t=0;t<this.items.length;t++)this.items[t].dom.contains(e.target)&&this.moveSelection(t)};this.list=(0,to.default)("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:t,onclick:n}),this.dom=(0,to.default)("div",{class:"cm-panel-lint"},this.list,(0,to.default)("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>no(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(nn).selected;if(!e)return -1;for(let t=0;t<this.items.length;t++)if(this.items[t].diagnostic==e.diagnostic)return t;return -1}update(){let{diagnostics:e,selected:t}=this.view.state.field(nn),n=0,r=!1,i=null,o=new Set;for(e.between(0,this.view.state.doc.length,(e,a,{spec:s})=>{for(let e of s.diagnostics){if(o.has(e))continue;o.add(e);let a=-1,s;for(let t=n;t<this.items.length;t++)if(this.items[t].diagnostic==e){a=t;break}a<0?(s=new nu(this.view,e),this.items.splice(n,0,s),r=!0):(s=this.items[a],a>n&&(this.items.splice(n,a-n),r=!0)),t&&s.diagnostic==t.diagnostic?s.dom.hasAttribute("aria-selected")||(s.dom.setAttribute("aria-selected","true"),i=s):s.dom.hasAttribute("aria-selected")&&s.dom.removeAttribute("aria-selected"),n++}});n<this.items.length&&!(1==this.items.length&&this.items[0].diagnostic.from<0);)r=!0,this.items.pop();0==this.items.length&&(this.items.push(new nu(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),r=!0),i?(this.list.setAttribute("aria-activedescendant",i.id),this.view.requestMeasure({key:this,read:()=>({sel:i.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:e,panel:t})=>{let n=t.height/this.list.offsetHeight;e.top<t.top?this.list.scrollTop-=(t.top-e.top)/n:e.bottom>t.bottom&&(this.list.scrollTop+=(e.bottom-t.bottom)/n)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),r&&this.sync()}sync(){let e=this.list.firstChild;function t(){let t=e;e=t.nextSibling,t.remove()}for(let n of this.items)if(n.dom.parentNode==this.list){for(;e!=n.dom;)t();e=n.dom.nextSibling}else this.list.insertBefore(n.dom,e);for(;e;)t()}moveSelection(e){if(this.selectedIndex<0)return;let t=t7(this.view.state.field(nn).diagnostics,this.items[e].diagnostic);t&&this.view.dispatch({selection:{anchor:t.from,head:t.to},scrollIntoView:!0,effects:nt.of(t)})}static open(e){return new nf(e)}}function nm(e){return function(e,t='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${t}>${encodeURIComponent(e)}</svg>')`}(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${e}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}let np=t3.EditorView.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:nm("#f11")},".cm-lintRange-warning":{backgroundImage:nm("orange")},".cm-lintRange-info":{backgroundImage:nm("#999")},".cm-lintRange-hint":{backgroundImage:nm("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}},"&dark .cm-lintRange-active":{backgroundColor:"#86714a80"},"&dark .cm-panel.cm-panel-lint ul":{"& [aria-selected]":{backgroundColor:"#2e343e"}}});function ng(e){let t="hint",n=1;for(let i of e){var r;let e="error"==(r=i.severity)?4:"warning"==r?3:"info"==r?2:1;e>n&&(n=e,t=i.severity)}return t}t3.GutterMarker;let nx=$.StateEffect.define(),nv=$.StateField.define({create:()=>null,update:(e,t)=>(e&&t.docChanged&&(e=t8(t,e)?null:{...e,pos:t.changes.mapPos(e.pos)}),t.effects.reduce((e,t)=>t.is(nx)?t.value:e,e)),provide:e=>t3.showTooltip.from(e)}),ny=(0,t3.hoverTooltip)(function(e,t,n){let{diagnostics:r}=e.state.field(nn),i,o=-1,a=-1;r.between(t-(n<0),t+ +(n>0),(e,r,{spec:s})=>{if(t>=e&&t<=r&&(e==r||(t>e||n>0)&&(t<r||n<0)))return i=s.diagnostics,o=e,a=r,!1});let s=e.state.facet(ns).tooltipFilter;return(i&&s&&(i=s(i,e.state)),i)?{pos:o,end:a,above:!0,create:()=>({dom:ni(e,i)})}:null},{hideOn:t8}),nb=[nn,t3.EditorView.decorations.compute([nn],e=>{let{selected:t,panel:n}=e.field(nn);return t&&n&&t.from!=t.to?t3.Decoration.set([nr.range(t.from,t.to)]):t3.Decoration.none}),ny,np],nw=$.Facet.define({combine:e=>(0,$.combineConfig)(e,{hoverTime:300,markerFilter:null,tooltipFilter:null})});var nk=function(e){void 0===e&&(e={});var t=e.crosshairCursor,n=[];!1!==e.closeBracketsKeymap&&(n=n.concat(t5.closeBracketsKeymap)),!1!==e.defaultKeymap&&(n=n.concat(tr)),!1!==e.searchKeymap&&(n=n.concat(tX)),!1!==e.historyKeymap&&(n=n.concat(ep)),!1!==e.foldKeymap&&(n=n.concat(q.foldKeymap)),!1!==e.completionKeymap&&(n=n.concat(t5.completionKeymap)),!1!==e.lintKeymap&&(n=n.concat(na));var r=[];return!1!==e.lineNumbers&&r.push((0,W.lineNumbers)()),!1!==e.highlightActiveLineGutter&&r.push((0,W.highlightActiveLineGutter)()),!1!==e.highlightSpecialChars&&r.push((0,W.highlightSpecialChars)()),!1!==e.history&&r.push(function(e={}){return[et,ee.of(e),W.EditorView.domEventHandlers({beforeinput(e,t){let n="historyUndo"==e.inputType?er:"historyRedo"==e.inputType?ei:null;return!!n&&(e.preventDefault(),n(t))}})]}()),!1!==e.foldGutter&&r.push((0,q.foldGutter)()),!1!==e.drawSelection&&r.push((0,W.drawSelection)()),!1!==e.dropCursor&&r.push((0,W.dropCursor)()),!1!==e.allowMultipleSelections&&r.push($.EditorState.allowMultipleSelections.of(!0)),!1!==e.indentOnInput&&r.push((0,q.indentOnInput)()),!1!==e.syntaxHighlighting&&r.push((0,q.syntaxHighlighting)(q.defaultHighlightStyle,{fallback:!0})),!1!==e.bracketMatching&&r.push((0,q.bracketMatching)()),!1!==e.closeBrackets&&r.push((0,t5.closeBrackets)()),!1!==e.autocompletion&&r.push((0,t5.autocompletion)()),!1!==e.rectangularSelection&&r.push((0,W.rectangularSelection)()),!1!==(void 0!==t&&t)&&r.push((0,W.crosshairCursor)()),!1!==e.highlightActiveLine&&r.push((0,W.highlightActiveLine)()),!1!==e.highlightSelectionMatches&&r.push([tw,tb]),e.tabSize&&"number"==typeof e.tabSize&&r.push(q.indentUnit.of(" ".repeat(e.tabSize))),r.concat([W.keymap.of(n.flat())]).filter(Boolean)},nS=e.i(915966),nC=W.EditorView.theme({"&":{backgroundColor:"#fff"}},{dark:!1}),nj=function(e){void 0===e&&(e={});var t=e,n=t.indentWithTab,r=t.editable,i=t.readOnly,o=t.theme,a=void 0===o?"light":o,s=t.placeholder,l=void 0===s?"":s,c=t.basicSetup,h=void 0===c||c,d=[];switch((void 0===n||n)&&d.unshift(W.keymap.of([ti])),h&&("boolean"==typeof h?d.unshift(nk()):d.unshift(nk(h))),l&&d.unshift((0,W.placeholder)(l)),a){case"light":d.push(nC);break;case"dark":d.push(nS.oneDark);break;case"none":break;default:d.push(a)}return!1===(void 0===r||r)&&d.push(W.EditorView.editable.of(!1)),void 0!==i&&i&&d.push($.EditorState.readOnly.of(!0)),[...d]};class nN{constructor(e,t){this.timeLeftMS=void 0,this.timeoutMS=void 0,this.isCancelled=!1,this.isTimeExhausted=!1,this.callbacks=[],this.timeLeftMS=t,this.timeoutMS=t,this.callbacks.push(e)}tick(){if(!this.isCancelled&&!this.isTimeExhausted&&(this.timeLeftMS--,this.timeLeftMS<=0)){this.isTimeExhausted=!0;var e=this.callbacks.slice();this.callbacks.length=0,e.forEach(e=>{try{e()}catch(e){console.error("TimeoutLatch callback error:",e)}})}}cancel(){this.isCancelled=!0,this.callbacks.length=0}reset(){this.timeLeftMS=this.timeoutMS,this.isCancelled=!1,this.isTimeExhausted=!1}get isDone(){return this.isCancelled||this.isTimeExhausted}}class nM{constructor(){this.interval=null,this.latches=new Set}add(e){this.latches.add(e),this.start()}remove(e){this.latches.delete(e),0===this.latches.size&&this.stop()}start(){null===this.interval&&(this.interval=setInterval(()=>{this.latches.forEach(e=>{e.tick(),e.isDone&&this.remove(e)})},1))}stop(){null!==this.interval&&(clearInterval(this.interval),this.interval=null)}}var nA=null,nE=W.EditorView.theme({"& .cm-scroller":{height:"100% !important"}}),nD=null,nT=null,nP=$.Annotation.define(),nR=[],nL=["className","value","selection","extensions","onChange","onStatistics","onCreateEditor","onUpdate","autoFocus","theme","height","minHeight","maxHeight","width","minWidth","maxWidth","basicSetup","placeholder","indentWithTab","editable","readOnly","root","initialState"],nI=(0,n.forwardRef)((e,r)=>{var i,o,a,s,l,c,h,d,u,f,m,p,g,x,v,y,b,w,k,S,C,j,N,M,A,E,D,T,P,R,L,I,B,O,z,V,q,U,H,K,J,G,_,X,Q,Y,Z,ee,et,en=e.className,er=e.value,ei=void 0===er?"":er,eo=e.selection,ea=e.extensions,es=e.onChange,el=e.onStatistics,ec=e.onCreateEditor,eh=e.onUpdate,ed=e.autoFocus,eu=e.theme,ef=void 0===eu?"light":eu,em=e.height,ep=e.minHeight,eg=e.maxHeight,ex=e.width,ev=e.minWidth,ey=e.maxWidth,eb=e.basicSetup,ew=e.placeholder,ek=e.indentWithTab,eS=e.editable,eC=e.readOnly,ej=e.root,eN=e.initialState,eM=function(e,t){if(null==e)return{};var n={};for(var r in e)if(({}).hasOwnProperty.call(e,r)){if(-1!==t.indexOf(r))continue;n[r]=e[r]}return n}(e,nL),eA=(0,n.useRef)(null),eE=(o=(i={root:ej,value:ei,autoFocus:ed,theme:ef,height:em,minHeight:ep,maxHeight:eg,width:ex,minWidth:ev,maxWidth:ey,basicSetup:eb,placeholder:ew,indentWithTab:ek,editable:eS,readOnly:eC,selection:eo,onChange:es,onStatistics:el,onCreateEditor:ec,onUpdate:eh,extensions:void 0===ea?[]:ea,initialState:eN}).value,a=i.selection,s=i.onChange,l=i.onStatistics,c=i.onCreateEditor,h=i.onUpdate,u=void 0===(d=i.extensions)?nR:d,f=i.autoFocus,p=void 0===(m=i.theme)?"light":m,x=void 0===(g=i.height)?null:g,y=void 0===(v=i.minHeight)?null:v,w=void 0===(b=i.maxHeight)?null:b,S=void 0===(k=i.width)?null:k,j=void 0===(C=i.minWidth)?null:C,M=void 0===(N=i.maxWidth)?null:N,E=void 0===(A=i.placeholder)?"":A,T=void 0===(D=i.editable)||D,R=void 0!==(P=i.readOnly)&&P,I=void 0===(L=i.indentWithTab)||L,O=void 0===(B=i.basicSetup)||B,z=i.root,V=i.initialState,U=(q=(0,n.useState)())[0],H=q[1],J=(K=(0,n.useState)())[0],G=K[1],X=(_=(0,n.useState)())[0],Q=_[1],Y=(0,n.useState)(()=>({current:null}))[0],Z=(0,n.useState)(()=>({current:null}))[0],ee=function(e,t,n,r,i,o){if(!e&&!t&&!n&&!r&&!i&&!o)return null;var a=JSON.stringify({height:e,minHeight:t,maxHeight:n,width:r,minWidth:i,maxWidth:o});return a===nD?nT:(nD=a,nT=W.EditorView.theme({"&":{height:e,minHeight:t,maxHeight:n,width:r,minWidth:i,maxWidth:o}}))}(x,y,w,S,j,M),et=[W.EditorView.updateListener.of(e=>{e.docChanged&&"function"==typeof s&&!e.transactions.some(e=>e.annotation(nP))&&(Y.current?Y.current.reset():(Y.current=new nN(()=>{if(Z.current){var e=Z.current;Z.current=null,e()}Y.current=null},200),("u"<typeof window?new nM:(!nA&&(nA=new nM),nA)).add(Y.current)),s(e.state.doc.toString(),e)),l&&l({line:e.state.doc.lineAt(e.state.selection.main.from),lineCount:e.state.doc.lines,lineBreak:e.state.lineBreak,length:e.state.doc.length,readOnly:e.state.readOnly,tabSize:e.state.tabSize,selection:e.state.selection,selectionAsSingle:e.state.selection.asSingle().main,ranges:e.state.selection.ranges,selectionCode:e.state.sliceDoc(e.state.selection.main.from,e.state.selection.main.to),selections:e.state.selection.ranges.map(t=>e.state.sliceDoc(t.from,t.to)),selectedText:e.state.selection.ranges.some(e=>!e.empty)})}),...ee?[ee]:[],nE,...nj({theme:p,editable:T,readOnly:R,placeholder:E,indentWithTab:I,basicSetup:O})],h&&"function"==typeof h&&et.push(W.EditorView.updateListener.of(h)),et=et.concat(u),(0,n.useLayoutEffect)(()=>{if(U&&!X){var e={doc:o,selection:a,extensions:et},t=V?$.EditorState.fromJSON(V.json,e,V.fields):$.EditorState.create(e);if(Q(t),!J){var n=new W.EditorView({state:t,parent:U,root:z});G(n),c&&c(n,t)}}return()=>{J&&(Q(void 0),G(void 0))}},[U,X]),(0,n.useEffect)(()=>{i.container&&H(i.container)},[i.container]),(0,n.useEffect)(()=>()=>{J&&(J.destroy(),G(void 0)),Y.current&&(Y.current.cancel(),Y.current=null)},[J]),(0,n.useEffect)(()=>{f&&J&&J.focus()},[f,J]),(0,n.useEffect)(()=>{J&&J.dispatch({effects:$.StateEffect.reconfigure.of(et)})},[p,u,x,y,w,S,j,M,E,T,R,I,O,s,h]),(0,n.useEffect)(()=>{if(void 0!==o){var e=J?J.state.doc.toString():"";if(J&&o!==e){var t=Y.current&&!Y.current.isDone,n=()=>{J&&o!==J.state.doc.toString()&&J.dispatch({changes:{from:0,to:J.state.doc.toString().length,insert:o||""},annotations:[nP.of(!0)]})};t?Z.current=n:n()}}},[o,J]),{state:X,setState:Q,view:J,setView:G,container:U,setContainer:H}),eD=eE.state,eT=eE.view,eP=eE.container,eR=eE.setContainer;(0,n.useImperativeHandle)(r,()=>({editor:eA.current,state:eD,view:eT}),[eA,eP,eD,eT]);var eL=(0,n.useCallback)(e=>{eA.current=e,eR(e)},[eR]);if("string"!=typeof ei)throw Error("value must be typeof string but got "+typeof ei);return(0,t.jsx)("div",F({ref:eL,className:("string"==typeof ef?"cm-theme-"+ef:"cm-theme")+(en?" "+en:"")},eM))});nI.displayName="CodeMirror";var nB=e.i(487486),nO=e.i(519455),nz=e.i(543836),nV=e.i(264145),nF=e.i(360065),n$=e.i(997611),nW=e.i(978238),nq=e.i(900877),nU=e.i(315671),nH=e.i(432567),nK=Object.defineProperty,nJ=(e,t)=>nK(e,"name",{value:t,configurable:!0}),nG="Tabs",[n_,nX]=(0,nV.createContextScope)(nG,[nF.createRovingFocusGroupScope]),nQ=(0,nF.createRovingFocusGroupScope)(),[nY,nZ]=n_(nG),n0=n.forwardRef(nJ(function(e,n){let{__scopeTabs:r,value:i,onValueChange:o,defaultValue:a,orientation:s="horizontal",dir:l,activationMode:c="automatic",...h}=e,d=(0,nq.useDirection)(l),[u,f]=(0,nU.useControllableState)({prop:i,onChange:o,defaultProp:a??"",caller:nG});return(0,t.jsx)(nY,{scope:r,baseId:(0,nH.useId)(),value:u,onValueChange:f,orientation:s,dir:d,activationMode:c,children:(0,t.jsx)(nW.Primitive.div,{dir:d,"data-orientation":s,...h,ref:n})})},"Tabs")),n1=n.forwardRef(nJ(function(e,n){let{__scopeTabs:r,loop:i=!0,...o}=e,a=nZ("TabsList",r),s=nQ(r);return(0,t.jsx)(nF.Root,{asChild:!0,...s,orientation:a.orientation,dir:a.dir,loop:i,children:(0,t.jsx)(nW.Primitive.div,{role:"tablist","aria-orientation":a.orientation,...o,ref:n})})},"TabsList")),n2=n.forwardRef(nJ(function(e,n){let{__scopeTabs:r,value:i,disabled:o=!1,...a}=e,s=nZ("TabsTrigger",r),l=nQ(r),c=n3(s.baseId,i),h=n4(s.baseId,i),d=i===s.value;return(0,t.jsx)(nF.Item,{asChild:!0,...l,focusable:!o,active:d,children:(0,t.jsx)(nW.Primitive.button,{type:"button",role:"tab","aria-selected":d,"aria-controls":h,"data-state":d?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:c,...a,ref:n,onMouseDown:(0,nz.composeEventHandlers)(e.onMouseDown,e=>{o||0!==e.button||!1!==e.ctrlKey?e.preventDefault():s.onValueChange(i)}),onKeyDown:(0,nz.composeEventHandlers)(e.onKeyDown,e=>{!o&&e.target===e.currentTarget&&[" ","Enter"].includes(e.key)&&s.onValueChange(i)}),onFocus:(0,nz.composeEventHandlers)(e.onFocus,()=>{let e="manual"!==s.activationMode;d||o||!e||s.onValueChange(i)})})})},"TabsTrigger")),n5=n.forwardRef(nJ(function(e,r){let{__scopeTabs:i,value:o,forceMount:a,children:s,...l}=e,c=nZ("TabsContent",i),h=n3(c.baseId,o),d=n4(c.baseId,o),u=o===c.value,f=n.useRef(u);return n.useEffect(()=>{let e=requestAnimationFrame(()=>f.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,t.jsx)(n$.Presence,{present:a||u,children:({present:n})=>(0,t.jsx)(nW.Primitive.div,{"data-state":u?"active":"inactive","data-orientation":c.orientation,role:"tabpanel","aria-labelledby":h,hidden:!n,id:d,tabIndex:0,...l,ref:r,style:{...e.style,animationDuration:f.current?"0s":void 0},children:n&&s})})},"TabsContent"));function n3(e,t){return`${e}-trigger-${t}`}function n4(e,t){return`${e}-content-${t}`}nJ(n3,"makeTriggerId"),nJ(n4,"makeContentId");let n6=n.forwardRef(({className:e,...n},r)=>(0,t.jsx)(n1,{ref:r,className:(0,j.cn)("inline-flex h-10 items-center justify-center rounded-md bg-surface2 p-1 text-muted",e),...n}));n6.displayName=n1.displayName;let n7=n.forwardRef(({className:e,...n},r)=>(0,t.jsx)(n2,{ref:r,className:(0,j.cn)("inline-flex items-center justify-center whitespace-nowrap rounded-xs px-3 py-1.5 text-sm font-medium ring-offset-bg transition-[color,background-color,box-shadow] focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-bg data-[state=active]:text-txt data-[state=active]:shadow-xs",e),...n}));n7.displayName=n2.displayName,n.forwardRef(({className:e,...n},r)=>(0,t.jsx)(n5,{ref:r,className:(0,j.cn)("mt-2 ring-offset-bg focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2",e),...n})).displayName=n5.displayName;var n8=e.i(746798);let n9={name:"bold",size:24,node:[["path",{d:"M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8",key:"mg9rjx"}]]};n9.node;let re=(0,l.default)(n9),rt={name:"italic",size:24,node:[["line",{x1:"19",x2:"10",y1:"4",y2:"4",key:"15jd3p"}],["line",{x1:"14",x2:"5",y1:"20",y2:"20",key:"bu0au3"}],["line",{x1:"15",x2:"9",y1:"4",y2:"20",key:"uljnxc"}]]};rt.node;let rn=(0,l.default)(rt),rr={name:"strikethrough",size:24,node:[["path",{d:"M16 4H9a3 3 0 0 0-2.83 4",key:"43sutm"}],["path",{d:"M14 12a4 4 0 0 1 0 8H6",key:"nlfj13"}],["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}]]};rr.node;let ri=(0,l.default)(rr),ro={name:"heading-1",size:24,node:[["path",{d:"M4 12h8",key:"17cfdx"}],["path",{d:"M4 18V6",key:"1rz3zl"}],["path",{d:"M12 18V6",key:"zqpxq5"}],["path",{d:"m17 12 3-2v8",key:"1hhhft"}]]};ro.node;let ra=(0,l.default)(ro),rs={name:"heading-2",size:24,node:[["path",{d:"M4 12h8",key:"17cfdx"}],["path",{d:"M4 18V6",key:"1rz3zl"}],["path",{d:"M12 18V6",key:"zqpxq5"}],["path",{d:"M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1",key:"9jr5yi"}]]};rs.node;let rl=(0,l.default)(rs),rc={name:"heading-3",size:24,node:[["path",{d:"M4 12h8",key:"17cfdx"}],["path",{d:"M4 18V6",key:"1rz3zl"}],["path",{d:"M12 18V6",key:"zqpxq5"}],["path",{d:"M17.5 10.5c1.7-1 3.5 0 3.5 1.5a2 2 0 0 1-2 2",key:"68ncm8"}],["path",{d:"M17 17.5c2 1.5 4 .3 4-1.5a2 2 0 0 0-2-2",key:"1ejuhz"}]]};rc.node;let rh=(0,l.default)(rc),rd={name:"link-2",size:24,node:[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]]};rd.node;let ru=(0,l.default)(rd),rf={name:"code",size:24,node:[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]};rf.node;let rm=(0,l.default)(rf);var rp=e.i(798103);let rg={name:"quote",size:24,node:[["path",{d:"M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z",key:"rib7q0"}],["path",{d:"M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z",key:"1ymkrd"}]]};rg.node;let rx=(0,l.default)(rg),rv={name:"minus",size:24,node:[["path",{d:"M5 12h14",key:"1ays0h"}]]};rv.node;let ry=(0,l.default)(rv);var rb=e.i(394512);let rw={name:"list-ordered",size:24,node:[["path",{d:"M11 5h10",key:"1cz7ny"}],["path",{d:"M11 12h10",key:"1438ji"}],["path",{d:"M11 19h10",key:"11t30w"}],["path",{d:"M4 4h1v5",key:"10yrso"}],["path",{d:"M4 9h2",key:"r1h2o0"}],["path",{d:"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02",key:"xtkcd5"}]]};rw.node;let rk=(0,l.default)(rw);var rS=e.i(772436);function rC(e,t,n){let{from:r,to:i}=e.state.selection.main,o=e.state.sliceDoc(r,i);e.dispatch({changes:{from:r,to:i,insert:t+o+n},selection:{anchor:r+t.length,head:r+t.length+o.length}}),e.focus()}function rj(e,t){let{from:n}=e.state.selection.main,r=e.state.doc.lineAt(n);e.dispatch({changes:{from:r.from,to:r.from,insert:t},selection:{anchor:n+t.length}}),e.focus()}function rN({icon:e,label:n,onClick:r}){return(0,t.jsxs)(n8.Tooltip,{children:[(0,t.jsx)(n8.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(nO.Button,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:r,children:e})}),(0,t.jsx)(n8.TooltipContent,{side:"bottom",children:n})]})}function rM({editorView:e}){return(0,t.jsx)(n8.TooltipProvider,{delayDuration:300,children:(0,t.jsxs)("div",{className:"flex items-center gap-0.5 px-2 py-1 border-b border-border bg-surface shrink-0",children:[(0,t.jsx)(rN,{icon:(0,t.jsx)(re,{className:"h-3.5 w-3.5"}),label:"Bold",onClick:function(){e&&rC(e,"**","**")}}),(0,t.jsx)(rN,{icon:(0,t.jsx)(rn,{className:"h-3.5 w-3.5"}),label:"Italic",onClick:function(){e&&rC(e,"*","*")}}),(0,t.jsx)(rN,{icon:(0,t.jsx)(ri,{className:"h-3.5 w-3.5"}),label:"Strikethrough",onClick:function(){e&&rC(e,"~~","~~")}}),(0,t.jsx)(rS.Separator,{orientation:"vertical",className:"h-4 mx-1"}),(0,t.jsx)(rN,{icon:(0,t.jsx)(ra,{className:"h-3.5 w-3.5"}),label:"Heading 1",onClick:function(){e&&rj(e,"# ")}}),(0,t.jsx)(rN,{icon:(0,t.jsx)(rl,{className:"h-3.5 w-3.5"}),label:"Heading 2",onClick:function(){e&&rj(e,"## ")}}),(0,t.jsx)(rN,{icon:(0,t.jsx)(rh,{className:"h-3.5 w-3.5"}),label:"Heading 3",onClick:function(){e&&rj(e,"### ")}}),(0,t.jsx)(rS.Separator,{orientation:"vertical",className:"h-4 mx-1"}),(0,t.jsx)(rN,{icon:(0,t.jsx)(ru,{className:"h-3.5 w-3.5"}),label:"Link",onClick:function(){if(!e)return;let{from:t,to:n}=e.state.selection.main,r=e.state.sliceDoc(t,n)||"link text";e.dispatch({changes:{from:t,to:n,insert:`[${r}](url)`},selection:{anchor:t+r.length+3,head:t+r.length+3+3}}),e.focus()}}),(0,t.jsx)(rN,{icon:(0,t.jsx)(rm,{className:"h-3.5 w-3.5"}),label:"Inline code",onClick:function(){e&&rC(e,"`","`")}}),(0,t.jsx)(rN,{icon:(0,t.jsx)(rp.Code2,{className:"h-3.5 w-3.5"}),label:"Code block",onClick:function(){e&&rC(e,"```\n","\n```")}}),(0,t.jsx)(rN,{icon:(0,t.jsx)(rx,{className:"h-3.5 w-3.5"}),label:"Blockquote",onClick:function(){e&&rj(e,"> ")}}),(0,t.jsx)(rS.Separator,{orientation:"vertical",className:"h-4 mx-1"}),(0,t.jsx)(rN,{icon:(0,t.jsx)(ry,{className:"h-3.5 w-3.5"}),label:"Horizontal rule",onClick:function(){e&&function(e,t){let{from:n,to:r}=e.state.selection.main;e.dispatch({changes:{from:n,to:r,insert:t},selection:{anchor:n+t.length}}),e.focus()}(e,"\n---\n")}}),(0,t.jsx)(rN,{icon:(0,t.jsx)(rb.List,{className:"h-3.5 w-3.5"}),label:"Unordered list",onClick:function(){e&&rj(e,"- ")}}),(0,t.jsx)(rN,{icon:(0,t.jsx)(rk,{className:"h-3.5 w-3.5"}),label:"Ordered list",onClick:function(){e&&rj(e,"1. ")}})]})})}var rA=e.i(998822);function rE({docPath:i,initialContent:o,onSave:a,onDirtyChange:s,onContentChange:l,wordWrap:c=!0,lineNumbers:h=!0}){let d=(0,n.useRef)(null),{rootParam:u}=(0,r.useApp)(),f=(0,n.useRef)(null),m=(0,n.useRef)(null),[p,g]=(0,n.useState)("split"),[x,v]=(0,n.useState)(o),[b,w]=(0,n.useState)("saved"),[k,S]=(0,n.useState)(1),[C,j]=(0,n.useState)([]),[N,M]=(0,n.useState)([]),[A,E]=(0,n.useState)(!1),D=(0,n.useRef)(void 0),T=(0,n.useRef)(void 0),P=(0,n.useRef)(o);(0,n.useEffect)(()=>{P.current=x},[x]),(0,n.useEffect)(()=>{v(o),P.current=o,w("saved"),j([]),M([]),E(!1),S(1),clearTimeout(D.current),clearTimeout(T.current),s?.(!1)},[i]),(0,n.useEffect)(()=>{let t=!1,n=null,r=null;return(async function(){let[{Doc:a,UndoManager:s},{WebsocketProvider:l},{yCollab:h},{markdown:d},{oneDark:u},{EditorView:p}]=await Promise.all([e.A(892171),e.A(685361),e.A(169155),e.A(456526),e.A(190905),e.A(973121)]);if(t)return;let g=[d(),u];c&&g.push(p.lineWrapping),j(g);let x=new a,v=x.getText("codemirror"),y=new s(v),b=new l(B.default.env.NEXT_PUBLIC_WS_URL??"ws://localhost:1234",i,x);r=x,f.current=v,m.current=b.awareness,n=b;let w=360*Math.random()|0,k=`hsl(${w},70%,50%)`;b.awareness.setLocalStateField("user",{color:k,colorLight:k+"44"}),b.awareness.on("change",()=>{S(b.awareness.getStates().size)}),b.on("sync",e=>{e&&!t&&(0===v.length&&v.insert(0,o),M([h(v,b.awareness,{undoManager:y})]),E(!0))})})().catch(console.error),()=>{t=!0,f.current=null,m.current=null,n?.disconnect(),r?.destroy()}},[i,o]),(0,n.useEffect)(()=>{async function e(e){let t=e.detail;if(t?.type!=="doc_updated"||t.payload?.actor!=="ai"||String(t.payload.path).replace(/^\.\//,"")!==i)return;let n=f.current,r=m.current;if(!n?.doc||!r||Math.min(...Array.from(r.getStates().keys()))!==n.doc.clientID)return;let o=Array.isArray(t.payload.edits)?t.payload.edits:void 0,a=null;if(!o){let e=await fetch(`/api/docs${u}&read=${encodeURIComponent(i)}`),t=(await e.json())?.content;if("string"!=typeof t)return;a=t}n.doc.transact(()=>{if(o)for(let{old_string:e,new_string:t}of o){let r=n.toString(),i=""===e?""===r?0:-1:r.indexOf(e);-1!==i&&(n.delete(i,e.length),n.insert(i,t))}else if(null!==a){let e=n.toString(),t=0;for(;t<e.length&&t<a.length&&e[t]===a[t];)t++;let r=0;for(;r<e.length-t&&r<a.length-t&&e[e.length-1-r]===a[a.length-1-r];)r++;n.delete(t,e.length-t-r),n.insert(t,a.slice(t,a.length-r))}})}return window.addEventListener("vibedoc:sse",e),()=>window.removeEventListener("vibedoc:sse",e)},[i,u]),(0,n.useEffect)(()=>{0!==C.length&&t().catch(console.error);async function t(){let[{markdown:t},{oneDark:n},{EditorView:r},{lineNumbers:i}]=await Promise.all([e.A(456526),e.A(190905),e.A(973121),e.A(973121)]),o=[t(),n];c&&o.push(r.lineWrapping),h&&o.push(i()),j(o)}},[c,h]),(0,n.useEffect)(()=>{if("unsaved"===b)return clearTimeout(D.current),D.current=setTimeout(async()=>{w("saving");try{await a(P.current),w("saved"),s?.(!1)}catch{w("unsaved")}},2e3),()=>clearTimeout(D.current)},[x,b]),(0,n.useEffect)(()=>{function e(e){(e.ctrlKey||e.metaKey)&&"s"===e.key&&(e.preventDefault(),clearTimeout(D.current),w("saving"),a(P.current).then(()=>{w("saved"),s?.(!1)}).catch(()=>w("unsaved")))}return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[a,s]);let R=(0,n.useCallback)(e=>{e!==P.current&&(v(e),w("unsaved"),s?.(!0),clearTimeout(T.current),T.current=setTimeout(()=>{l?.(e)},500))},[s,l]),L=d.current?.view??null,I="preview"!==p,O="edit"!==p,F=A?[...C,...N]:C,$="saving"===b?"text-muted":"saved"===b?"text-teal-400":"text-yellow-400";return(0,t.jsx)(n8.TooltipProvider,{delayDuration:300,children:(0,t.jsxs)("div",{className:"flex flex-col h-full overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-4 py-2 border-b border-border shrink-0",children:[(0,t.jsx)("span",{className:"text-xs font-mono text-muted flex-1 truncate min-w-0",children:i}),(0,t.jsx)(n0,{value:p,onValueChange:e=>g(e),children:(0,t.jsxs)(n6,{className:"h-7 bg-surface2 p-0.5",children:[(0,t.jsx)(n7,{value:"edit",className:"h-6 px-2.5 text-xs",children:"Edit"}),(0,t.jsx)(n7,{value:"split",className:"h-6 px-2.5 text-xs",children:"Split"}),(0,t.jsx)(n7,{value:"preview",className:"h-6 px-2.5 text-xs",children:"Preview"})]})}),k>1&&(0,t.jsxs)(nB.Badge,{variant:"secondary",className:"h-5 gap-1 text-[10px] px-1.5",children:[(0,t.jsx)(V.Users,{className:"h-3 w-3"}),k]}),(0,t.jsxs)(n8.Tooltip,{children:[(0,t.jsx)(n8.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(nO.Button,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:function(){let e=new Blob([P.current],{type:"text/markdown"}),t=URL.createObjectURL(e),n=document.createElement("a");n.href=t,n.download=i.split("/").pop()??"document.md",n.click(),URL.revokeObjectURL(t)},children:(0,t.jsx)(z,{className:"h-3.5 w-3.5"})})}),(0,t.jsx)(n8.TooltipContent,{side:"bottom",children:"Download .md"})]}),(0,t.jsxs)("span",{className:`text-xs flex items-center gap-1 ${$}`,children:["saved"===b&&(0,t.jsx)(y.Check,{className:"h-3 w-3"}),"saving"===b?"Saving…":"saved"===b?"Saved":"Unsaved"]})]}),"preview"!==p&&(0,t.jsx)(rM,{editorView:L}),(0,t.jsxs)("div",{className:`flex-1 overflow-hidden ${I&&O?"grid grid-cols-2 divide-x divide-border":"flex"}`,children:[I&&(0,t.jsx)("div",{className:"flex flex-col overflow-hidden min-h-0",children:0===C.length?(0,t.jsx)("div",{className:"flex-1 p-4 font-mono text-sm text-txt bg-[#282c34] overflow-auto whitespace-pre-wrap",children:x}):(0,t.jsx)(nI,{ref:d,value:x,theme:"none",onChange:R,extensions:F,style:{height:"100%",overflow:"auto"},className:"h-full text-sm"},i)}),O&&(0,t.jsx)("div",{className:"flex-1 overflow-y-auto p-6 min-w-0",children:(0,t.jsx)(rA.MarkdownRenderer,{content:x})})]})]})})}function rD({docPath:e,rootParam:r,onOpenDoc:o}){let[a,s]=(0,n.useState)(null),[l,c]=(0,n.useState)(!1),[h,d]=(0,n.useState)(!1),u=(0,n.useCallback)(async()=>{if(!h){c(!0);try{let t=await fetch(`/api/backlinks${r}&path=${encodeURIComponent(e)}`),n=await t.json();s(n.links??[])}catch{s([])}finally{c(!1),d(!0)}}},[e,r,h]);return(0,t.jsxs)("div",{className:"fixed right-4 bottom-8 z-40 group",onMouseEnter:()=>{h||u()},children:[(0,t.jsx)("div",{className:"w-8 h-8 rounded-full bg-surface border border-border flex items-center justify-center group-hover:opacity-0 transition-opacity duration-200 shadow-xs",children:(0,t.jsx)(ru,{className:"h-4 w-4 text-muted"})}),(0,t.jsxs)("div",{className:(0,j.cn)("absolute right-0 bottom-0 w-72 max-h-[50vh] bg-surface/95 backdrop-blur-xs border border-border rounded-lg shadow-xl","opacity-0 scale-95 origin-bottom-right pointer-events-none","group-hover:opacity-100 group-hover:scale-100 group-hover:pointer-events-auto","transition-[opacity,scale] duration-(--duration-base) ease-out-soft"),children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2.5 border-b border-border/50",children:[(0,t.jsx)(ru,{className:"h-3.5 w-3.5 text-accent"}),(0,t.jsx)("span",{className:"text-[11px] font-semibold text-muted uppercase tracking-wider",children:"Referenced by"}),null!==a&&(0,t.jsx)("span",{className:"text-[10px] text-muted/60 bg-accent/10 px-1.5 py-0.5 rounded-full ml-auto",children:a.length})]}),(0,t.jsxs)("div",{className:"overflow-y-auto max-h-[calc(50vh-44px)]",children:[l&&(0,t.jsxs)("div",{className:"px-3 py-6 text-center",children:[(0,t.jsx)("div",{className:"w-5 h-5 border-2 border-accent/30 border-t-accent rounded-full animate-spin mx-auto"}),(0,t.jsx)("p",{className:"text-xs text-muted/60 mt-2",children:"Scanning docs..."})]}),!l&&null!==a&&0===a.length&&(0,t.jsxs)("div",{className:"px-3 py-6 text-center",children:[(0,t.jsx)(ru,{className:"h-8 w-8 text-muted/30 mx-auto mb-2"}),(0,t.jsx)("p",{className:"text-xs text-muted/60",children:"No other docs link to this file"})]}),!l&&null!==a&&a.length>0&&(0,t.jsx)("div",{className:"py-1",children:a.map((e,n)=>(0,t.jsxs)("button",{onClick:()=>o(e.file),className:"w-full text-left px-3 py-2 hover:bg-accent/10 transition-colors group/item",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(i.FileText,{className:"h-3.5 w-3.5 text-muted shrink-0"}),(0,t.jsx)("span",{className:"text-sm font-medium text-txt truncate",children:e.file.split("/").pop()?.replace(/\.md$/,"")}),(0,t.jsxs)("span",{className:"text-[10px] text-muted/50 shrink-0",children:["L",e.line]})]}),(0,t.jsx)("p",{className:"text-[11px] text-muted/70 mt-1 truncate pl-5",children:e.text})]},`${e.file}-${e.line}-${n}`))})]})]})]})}function rT({doc:e,onDirtyChange:n,onContentChange:i}){let{rootParam:o,setSelectedDoc:a,openDoc:s,editorSettings:l}=(0,r.useApp)();if(!e)return(0,t.jsx)("div",{className:"flex items-center justify-center h-full text-muted text-sm",children:"Select a document to read"});async function c(t){let n=await fetch(`/api/docs${o}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e.path,content:t})});if(!n.ok)throw Error((await n.json()).error??"Save failed");a({...e,content:t})}return(0,t.jsxs)("div",{className:"flex flex-col h-full",children:[(0,t.jsx)(rE,{docPath:e.path,initialContent:e.content,onSave:c,onDirtyChange:n,onContentChange:i,wordWrap:l.wordWrap,lineNumbers:l.lineNumbers}),(0,t.jsx)(rD,{docPath:e.path,rootParam:o,onOpenDoc:s})]})}function rP({headings:e}){return 0===e.length?null:(0,t.jsxs)("div",{className:"fixed right-4 top-20 z-40 group",children:[(0,t.jsx)("div",{className:"w-1 h-32 bg-muted/20 rounded-full group-hover:opacity-0 transition-opacity duration-200"}),(0,t.jsxs)("div",{className:(0,j.cn)("absolute right-0 top-0 w-56 max-h-[70vh] bg-surface/95 backdrop-blur-xs border border-border rounded-lg shadow-xl","opacity-0 scale-95 origin-top-right pointer-events-none","group-hover:opacity-100 group-hover:scale-100 group-hover:pointer-events-auto","transition-[opacity,scale] duration-(--duration-base) ease-out-soft"),children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2.5 border-b border-border/50",children:[(0,t.jsx)(rb.List,{className:"h-3.5 w-3.5 text-accent"}),(0,t.jsx)("span",{className:"text-[11px] font-semibold text-muted uppercase tracking-wider",children:"Outline"}),(0,t.jsx)("span",{className:"text-[10px] text-muted/60 bg-accent/10 px-1.5 py-0.5 rounded-full ml-auto",children:e.length})]}),(0,t.jsx)("div",{className:"overflow-y-auto max-h-[calc(70vh-44px)] py-2",children:e.map((e,n)=>(0,t.jsx)("button",{onClick:()=>{var t;return t=e.anchor,void document.getElementById(t)?.scrollIntoView({behavior:"smooth",block:"start"})},className:(0,j.cn)("w-full text-left text-[13px] py-1.5 px-3 hover:bg-accent/10 transition-colors truncate",1===e.level&&"font-medium text-txt",2===e.level&&"pl-5 text-muted hover:text-txt",3===e.level&&"pl-7 text-muted/70 text-[12px] hover:text-muted"),children:e.text},n))})]})]})}function rR({docs:e,selectedDoc:r,docSearch:i,onSearchChange:o,onDocSelect:a,onDirtyChange:s,onNewDocClick:l,onDocDeleted:c,onDocRenamed:h,rootParam:d}){let[u,f]=(0,n.useState)(r?.content??"");(0,n.useEffect)(()=>{f(r?.content??"")},[r?.path]);let m=(0,n.useMemo)(()=>u.split("\n").filter(e=>/^#{1,3} /.test(e)).flatMap(e=>{let t=e.match(/^(#{1,3}) (.+)/);if(!t)return[];let n=t[2].trim(),r=n.toLowerCase().replace(/[^\w\s-]/g,"").replace(/\s+/g,"-");return[{level:t[1].length,text:n,anchor:r}]}),[u]);return(0,t.jsxs)("div",{className:"flex h-full relative",style:{minHeight:"calc(100vh - 3rem)"},children:[(0,t.jsx)(I,{docs:e,selectedDocPath:r?.path,searchValue:i,onSearchChange:o,onDocClick:a,onNewDocClick:l,onDocDeleted:c,onDocRenamed:h,rootParam:d}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto",children:(0,t.jsx)(rT,{doc:r,onDirtyChange:s,onContentChange:f})}),r&&(0,t.jsx)(rP,{headings:m})]})}var rL=e.i(91881);e.s(["default",0,function(){let{selectedDoc:e,setSelectedDoc:i,rootParam:o,activeProject:a}=(0,r.useApp)(),[s,l]=(0,n.useState)([]),[c,h]=(0,n.useState)(""),[d,u]=(0,n.useState)(!1),f=(0,n.useRef)(!1),m=(0,n.useCallback)(()=>{a&&fetch(`/api/docs${o}`).then(e=>e.json()).then(e=>l(Array.isArray(e)?e:[])).catch(()=>{})},[a,o]);(0,n.useEffect)(()=>{m()},[m]);let p=(0,n.useCallback)(async e=>{if(!e.trim())return void m();let t=await fetch(`/api/docs${o}&q=${encodeURIComponent(e)}`),n=await t.json();l(n.results?.map(e=>({path:e.file,section:"search",name:e.file}))||[])},[o,m]);async function g(e){if(f.current&&!window.confirm("You have unsaved changes. Discard?"))return;f.current=!1;let t=await fetch(`/api/docs${o}&read=${encodeURIComponent(e)}`);i(await t.json())}async function x(e){m(),await g(e)}async function v(t,n){m(),e?.path===t&&await g(n)}return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(rR,{docs:s,selectedDoc:e,docSearch:c,onSearchChange:function(e){h(e),p(e)},onDocSelect:g,onDirtyChange:function(e){f.current=e},onNewDocClick:()=>u(!0),onDocDeleted:function(t){m(),e?.path===t&&i(null)},onDocRenamed:v,rootParam:o}),(0,t.jsx)(rL.NewDocModal,{open:d,onOpenChange:u,rootParam:o,onDocCreated:x})]})}],901251)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,910172,(e,o,r)=>{o.exports=e.r(814772)},763371,243668,7284,975157,e=>{"use strict";let o,r,t,n,s;var a,l=e.i(72345),i=e.i(180338),c=e.i(399531),d=e.i(910172);let m={theme:"dark",accentColor:"blue",fontSize:"medium",fontSans:"geist",fontMono:"geist-mono",editor:{autoSave:10,wordWrap:!0,lineNumbers:!0,previewMode:"split"},project:{autoRefresh:10,showHidden:!1},mcp:{endpoint:"http://localhost:3000/api/mcp"}};e.s(["DEFAULT_AGENTS",0,[{id:"code-assistant",name:"Code Assistant",icon:"🤖",description:"General-purpose coding help",skills:["code-review","test-writer"],prompt:"You are a helpful coding assistant. Help the user with their coding tasks.",active:!0},{id:"doc-bot",name:"Documentation Bot",icon:"📚",description:"Focused on docs and comments",skills:["doc-generator"],prompt:"You are a documentation specialist. Focus on creating and improving documentation.",active:!0}],"DEFAULT_SETTINGS",0,m,"DEFAULT_SKILLS",0,[{id:"code-review",name:"Code Review",description:"Analyzes code for quality, security, and performance issues",trigger:"/review",prompt:"You are an expert code reviewer. Analyze the provided code for:\n- Code quality and best practices\n- Security vulnerabilities\n- Performance issues\n- Maintainability concerns\n\nProvide actionable feedback.",tools:["vibedoc_read_doc","vibedoc_search_docs"],icon:"🔧"},{id:"doc-generator",name:"Documentation Generator",description:"Creates documentation from code and comments",trigger:"/docs",prompt:"You are a technical documentation writer. Generate clear, comprehensive documentation for the provided code or feature.",tools:["vibedoc_read_doc","vibedoc_write_doc"],icon:"📝"},{id:"test-writer",name:"Test Writer",description:"Generates unit tests for functions and components",trigger:"/test",prompt:"You are a testing expert. Write comprehensive unit tests for the provided code, covering edge cases and ensuring good test coverage.",tools:["vibedoc_read_doc","vibedoc_search_docs"],icon:"🧪"}],"MONO_FONTS",0,[{id:"geist-mono",label:"Geist Mono",note:"Pairs with Geist."},{id:"jetbrains-mono",label:"JetBrains Mono",note:"Tall letters, made for code."},{id:"ibm-plex-mono",label:"IBM Plex Mono",note:"Pairs with IBM Plex Sans."},{id:"dm-mono",label:"DM Mono",note:"The previous default."},{id:"system",label:"System",note:"Your OS monospace font."}],"SANS_FONTS",0,[{id:"geist",label:"Geist",note:"Made for developer tools. Clean and neutral."},{id:"inter",label:"Inter",note:"The standard UI font. Very clear at small sizes."},{id:"ibm-plex-sans",label:"IBM Plex Sans",note:"Warm and humanist. Good for long reading."},{id:"atkinson",label:"Atkinson Hyperlegible",note:"Letters are easy to tell apart. Best for legibility."},{id:"dm-sans",label:"DM Sans",note:"Geometric. The previous default."},{id:"system",label:"System",note:"Your OS font. Nothing to download."}]],243668);let p=(0,i.createContext)(null);function b(){for(var e,o,r=0,t="",n=arguments.length;r<n;r++)(e=arguments[r])&&(o=function e(o){var r,t,n="";if("string"==typeof o||"number"==typeof o)n+=o;else if("object"==typeof o)if(Array.isArray(o)){var s=o.length;for(r=0;r<s;r++)o[r]&&(t=e(o[r]))&&(n&&(n+=" "),n+=t)}else for(t in o)o[t]&&(n&&(n+=" "),n+=t);return n}(e))&&(t&&(t+=" "),t+=o);return t}e.s(["AppProvider",0,function({children:e}){let o=(0,d.useRouter)(),[r,t]=(0,i.useState)([]),[n,s]=(0,i.useState)(""),[a,b]=(0,i.useState)(null),[u,f]=(0,i.useState)(null),[g,h]=(0,i.useState)([]),[k,w]=(0,i.useState)(!0),[v,x]=(0,i.useState)(!1),[y,z]=(0,i.useState)(null),[S,j]=(0,i.useState)(m.editor),[C,G]=(0,i.useState)(0),T=(0,i.useRef)(null),_=n?`?root=${encodeURIComponent(n)}`:"",A=(0,i.useCallback)(async e=>{let o=e||n;if(!o)return;let r=`?root=${encodeURIComponent(o)}`;try{let[e,o,t]=await Promise.all([fetch(`/api/summary${r}`).then(e=>e.json()),fetch(`/api/tasks${r}`).then(e=>e.json()),fetch(`/api/activity${r}&limit=30`).then(e=>e.json())]);b(e);let n=o?.board;f(n&&"object"==typeof n?{todo:n.todo??[],"in-progress":n["in-progress"]??[],blocked:n.blocked??[],done:n.done??[],cancelled:n.cancelled??[]}:null),h(Array.isArray(t)?t:[])}catch{}w(!1)},[n]);(0,i.useEffect)(()=>{fetch("/api/projects").then(e=>e.json()).then(e=>{t(e),e.length>0?(s(e[0].root),A(e[0].root)):w(!1)}).catch(()=>w(!1))},[]),(0,i.useEffect)(()=>{if(!n)return;let e=new EventSource("/api/events");return T.current=e,e.onmessage=e=>{try{let o=JSON.parse(e.data);if("connected"===o.type)return;window.dispatchEvent(new CustomEvent("vibedoc:sse",{detail:o})),x(!0),setTimeout(()=>x(!1),2e3),["task_updated","task_created","decision_logged","memory_updated","session_start"].includes(o.type)&&A()}catch{}},()=>{e.close()}},[n,A]);let M=(0,i.useCallback)(async(e,o)=>{let r=()=>f(r=>{let t;if(!r)return r;let n=structuredClone(r);for(let r of Object.keys(n)){let s=n[r].findIndex(o=>o.id===e);-1!==s&&(t={...n[r][s],status:o},n[r]=n[r].filter(o=>o.id!==e))}return t&&n[o]&&(n[o]=[...n[o],t].sort((e,o)=>e.file<o.file?-1:+(e.file>o.file))),n});"u">typeof document&&"startViewTransition"in document?document.startViewTransition(()=>(0,c.flushSync)(r)):r();try{await fetch(`/api/tasks${_}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({taskId:e,status:o,actor:"human"})}),A()}catch{A()}},[_,A]),O=(0,i.useCallback)(async e=>{let r=await fetch(`/api/docs${_}&read=${encodeURIComponent(e)}`);z(await r.json()),o.push("/docs")},[_,o]);return(0,l.jsx)(p.Provider,{value:{projects:r,activeProject:n,summary:a,board:u,activity:g,liveIndicator:v,loading:k,selectedDoc:y,setSelectedDoc:z,rootParam:_,onProjectChange:function(e){s(e),A(e)},refresh:A,moveTask:M,openDoc:O,editorSettings:S,setEditorSettings:j,autoRefreshSeconds:C,setAutoRefreshSeconds:G},children:e})},"useApp",0,function(){let e=(0,i.useContext)(p);if(!e)throw Error("useApp must be used inside AppProvider");return e}],763371),e.s(["clsx",0,b],7284);let u=(e=new Map,o=null,r)=>({nextPart:e,validators:o,classGroupId:r}),f=[],g=(e,o,r)=>{if(0==e.length-o)return r.classGroupId;let t=e[o],n=r.nextPart.get(t);if(n){let r=g(e,o+1,n);if(r)return r}let s=r.validators;if(null===s)return;let a=0===o?e.join("-"):e.slice(o).join("-"),l=s.length;for(let e=0;e<l;e++){let o=s[e];if(o.validator(a))return o.classGroupId}},h=(e,o)=>{let r=u();for(let t in e)k(e[t],r,t,o);return r},k=(e,o,r,t)=>{let n=e.length;for(let s=0;s<n;s++)w(e[s],o,r,t)},w=(e,o,r,t)=>{"string"==typeof e?v(e,o,r):"function"==typeof e?x(e,o,r,t):y(e,o,r,t)},v=(e,o,r)=>{(""===e?o:z(o,e)).classGroupId=r},x=(e,o,r,t)=>{S(e)?k(e(t),o,r,t):(null===o.validators&&(o.validators=[]),o.validators.push({classGroupId:r,validator:e}))},y=(e,o,r,t)=>{let n=Object.entries(e),s=n.length;for(let e=0;e<s;e++){let[s,a]=n[e];k(a,z(o,s),r,t)}},z=(e,o)=>{let r=e,t=o.split("-"),n=t.length;for(let e=0;e<n;e++){let o=t[e],n=r.nextPart.get(o);n||(n=u(),r.nextPart.set(o,n)),r=n}return r},S=e=>"isThemeGetter"in e&&!0===e.isThemeGetter,j=[],C=(e,o,r,t,n)=>({modifiers:e,hasImportantModifier:o,baseClassName:r,maybePostfixModifierPosition:t,isExternal:n}),G=/\s+/,T=e=>{let o;if("string"==typeof e)return e;let r="";for(let t=0;t<e.length;t++)e[t]&&(o=T(e[t]))&&(r&&(r+=" "),r+=o);return r},_=[],A=e=>{let o=o=>o[e]||_;return o.isThemeGetter=!0,o.themeKey=e,o},M=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,O=/^\((?:(\w[\w-]*):)?(.+)\)$/i,I=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,N=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,P=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,$=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix|color|light-dark)\(.+\)$/,W=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,E=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,L=e=>I.test(e),R=e=>!!e&&!Number.isNaN(Number(e)),U=e=>!!e&&Number.isInteger(Number(e)),B=e=>e.endsWith("%")&&R(e.slice(0,-1)),D=e=>N.test(e),F=()=>!0,Y=e=>P.test(e)&&!$.test(e),q=()=>!1,K=e=>W.test(e),H=e=>E.test(e),J=e=>!X(e)&&!ea(e),V=e=>e.startsWith("@container")&&("/"===e[10]&&void 0!==e[11]||"s"===e[11]&&void 0!==e[16]&&e.startsWith("-size/",10)||"n"===e[11]&&void 0!==e[18]&&e.startsWith("-normal/",10)),Q=e=>eu(e,ek,q),X=e=>M.test(e),Z=e=>eu(e,ew,Y),ee=e=>eu(e,ev,R),eo=e=>eu(e,ey,F),er=e=>eu(e,ex,q),et=e=>eu(e,eg,q),en=e=>eu(e,eh,H),es=e=>eu(e,ez,K),ea=e=>O.test(e),el=e=>ef(e,ew),ei=e=>ef(e,ex),ec=e=>ef(e,eg),ed=e=>ef(e,ek),em=e=>ef(e,eh),ep=e=>ef(e,ez,!0),eb=e=>ef(e,ey,!0),eu=(e,o,r)=>{let t=M.exec(e);return!!t&&(t[1]?o(t[1]):r(t[2]))},ef=(e,o,r=!1)=>{let t=O.exec(e);return!!t&&(t[1]?o(t[1]):r)},eg=e=>"position"===e||"percentage"===e,eh=e=>"image"===e||"url"===e,ek=e=>"length"===e||"size"===e||"bg-size"===e,ew=e=>"length"===e,ev=e=>"number"===e,ex=e=>"family-name"===e,ey=e=>"number"===e||"weight"===e,ez=e=>"shadow"===e,eS=(a=()=>{let e=A("color"),o=A("font"),r=A("text"),t=A("font-weight"),n=A("tracking"),s=A("leading"),a=A("breakpoint"),l=A("container"),i=A("spacing"),c=A("radius"),d=A("shadow"),m=A("inset-shadow"),p=A("text-shadow"),b=A("drop-shadow"),u=A("blur"),f=A("perspective"),g=A("aspect"),h=A("ease"),k=A("animate"),w=()=>["auto","avoid","all","avoid-page","page","left","right","column"],v=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],x=()=>[...v(),ea,X],y=()=>["auto","hidden","clip","visible","scroll"],z=()=>["auto","contain","none"],S=()=>[ea,X,i],j=()=>[L,"full","auto",...S()],C=()=>[U,"none","subgrid",ea,X],G=()=>["auto",{span:["full",U,ea,X]},U,ea,X],T=()=>[U,"auto",ea,X],_=()=>["auto","min","max","fr",ea,X],M=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],O=()=>["start","end","center","stretch","center-safe","end-safe"],I=()=>["auto",...S()],N=()=>[L,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...S()],P=()=>[l,L,"screen","full","dvw","lvw","svw","min","max","fit",...S()],$=()=>[L,"screen","full","lh","dvh","lvh","svh","min","max","fit",...S()],W=()=>[e,ea,X],E=()=>[...v(),ec,et,{position:[ea,X]}],Y=()=>["no-repeat",{repeat:["","x","y","space","round"]}],q=()=>["auto","cover","contain",ed,Q,{size:[ea,X]}],K=()=>[B,el,Z],H=()=>["","none","full",c,ea,X],eu=()=>["",R,el,Z],ef=()=>["solid","dashed","dotted","double"],eg=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],eh=()=>[R,B,ec,et],ek=()=>["","none",u,ea,X],ew=()=>["none",R,ea,X],ev=()=>["none",R,ea,X],ex=()=>[R,ea,X],ey=()=>[L,"full",...S()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[D],breakpoint:[D],color:[F],container:[D],"drop-shadow":[D],ease:["in","out","in-out"],font:[J],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[D],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[D],shadow:[D],spacing:["px",R],text:[D],"text-shadow":[D],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",L,X,ea,g]}],container:["container"],"container-type":[{"@container":["","normal","size",ea,X]}],"container-named":[V],columns:[{columns:[R,"auto",X,ea,l]}],"break-after":[{"break-after":w()}],"break-before":[{"break-before":w()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:x()}],overflow:[{overflow:y()}],"overflow-x":[{"overflow-x":y()}],"overflow-y":[{"overflow-y":y()}],overscroll:[{overscroll:z()}],"overscroll-x":[{"overscroll-x":z()}],"overscroll-y":[{"overscroll-y":z()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:j()}],"inset-x":[{"inset-x":j()}],"inset-y":[{"inset-y":j()}],start:[{"inset-s":j(),start:j()}],end:[{"inset-e":j(),end:j()}],"inset-bs":[{"inset-bs":j()}],"inset-be":[{"inset-be":j()}],top:[{top:j()}],right:[{right:j()}],bottom:[{bottom:j()}],left:[{left:j()}],visibility:["visible","invisible","collapse"],z:[{z:[U,"auto",ea,X]}],basis:[{basis:[L,"full","auto",l,...S()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[R,L,"auto","initial","none",X]}],grow:[{grow:["",R,ea,X]}],shrink:[{shrink:["",R,ea,X]}],order:[{order:[U,"first","last","none",ea,X]}],"grid-cols":[{"grid-cols":C()}],"col-start-end":[{col:G()}],"col-start":[{"col-start":T()}],"col-end":[{"col-end":T()}],"grid-rows":[{"grid-rows":C()}],"row-start-end":[{row:G()}],"row-start":[{"row-start":T()}],"row-end":[{"row-end":T()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":_()}],"auto-rows":[{"auto-rows":_()}],gap:[{gap:S()}],"gap-x":[{"gap-x":S()}],"gap-y":[{"gap-y":S()}],"justify-content":[{justify:[...M(),"normal"]}],"justify-items":[{"justify-items":[...O(),"normal"]}],"justify-self":[{"justify-self":["auto",...O()]}],"align-content":[{content:["normal",...M()]}],"align-items":[{items:[...O(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...O(),{baseline:["","last"]}]}],"place-content":[{"place-content":M()}],"place-items":[{"place-items":[...O(),"baseline"]}],"place-self":[{"place-self":["auto",...O()]}],p:[{p:S()}],px:[{px:S()}],py:[{py:S()}],ps:[{ps:S()}],pe:[{pe:S()}],pbs:[{pbs:S()}],pbe:[{pbe:S()}],pt:[{pt:S()}],pr:[{pr:S()}],pb:[{pb:S()}],pl:[{pl:S()}],m:[{m:I()}],mx:[{mx:I()}],my:[{my:I()}],ms:[{ms:I()}],me:[{me:I()}],mbs:[{mbs:I()}],mbe:[{mbe:I()}],mt:[{mt:I()}],mr:[{mr:I()}],mb:[{mb:I()}],ml:[{ml:I()}],"space-x":[{"space-x":S()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":S()}],"space-y-reverse":["space-y-reverse"],size:[{size:N()}],"inline-size":[{inline:["auto",...P()]}],"min-inline-size":[{"min-inline":["auto",...P()]}],"max-inline-size":[{"max-inline":["none",...P()]}],"block-size":[{block:["auto",...$()]}],"min-block-size":[{"min-block":["auto",...$()]}],"max-block-size":[{"max-block":["none",...$()]}],w:[{w:[l,"screen",...N()]}],"min-w":[{"min-w":[l,"screen","none",...N()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[a]},...N()]}],h:[{h:["screen","lh",...N()]}],"min-h":[{"min-h":["screen","lh","none",...N()]}],"max-h":[{"max-h":["screen","lh","none",...N()]}],"font-size":[{text:["base",r,el,Z]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[t,eb,eo]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",B,X]}],"font-family":[{font:[ei,er,o]}],"font-features":[{"font-features":[X]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[n,ea,X]}],"line-clamp":[{"line-clamp":[R,"none",ea,ee]}],leading:[{leading:["none",s,...S()]}],"list-image":[{"list-image":["none",ea,X]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",ea,X]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:W()}],"text-color":[{text:W()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...ef(),"wavy"]}],"text-decoration-thickness":[{decoration:[R,"from-font","auto",ea,Z]}],"text-decoration-color":[{decoration:W()}],"underline-offset":[{"underline-offset":[R,"auto",ea,X]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:S()}],"tab-size":[{tab:[U,ea,X]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",ea,X]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",ea,X]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:E()}],"bg-repeat":[{bg:Y()}],"bg-size":[{bg:q()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},U,ea,X],radial:["",ea,X],conic:["",U,ea,X]},em,en]}],"bg-color":[{bg:W()}],"gradient-from-pos":[{from:K()}],"gradient-via-pos":[{via:K()}],"gradient-to-pos":[{to:K()}],"gradient-from":[{from:W()}],"gradient-via":[{via:W()}],"gradient-to":[{to:W()}],rounded:[{rounded:H()}],"rounded-s":[{"rounded-s":H()}],"rounded-e":[{"rounded-e":H()}],"rounded-t":[{"rounded-t":H()}],"rounded-r":[{"rounded-r":H()}],"rounded-b":[{"rounded-b":H()}],"rounded-l":[{"rounded-l":H()}],"rounded-ss":[{"rounded-ss":H()}],"rounded-se":[{"rounded-se":H()}],"rounded-ee":[{"rounded-ee":H()}],"rounded-es":[{"rounded-es":H()}],"rounded-tl":[{"rounded-tl":H()}],"rounded-tr":[{"rounded-tr":H()}],"rounded-br":[{"rounded-br":H()}],"rounded-bl":[{"rounded-bl":H()}],"border-w":[{border:eu()}],"border-w-x":[{"border-x":eu()}],"border-w-y":[{"border-y":eu()}],"border-w-s":[{"border-s":eu()}],"border-w-e":[{"border-e":eu()}],"border-w-bs":[{"border-bs":eu()}],"border-w-be":[{"border-be":eu()}],"border-w-t":[{"border-t":eu()}],"border-w-r":[{"border-r":eu()}],"border-w-b":[{"border-b":eu()}],"border-w-l":[{"border-l":eu()}],"divide-x":[{"divide-x":eu()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":eu()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...ef(),"hidden","none"]}],"divide-style":[{divide:[...ef(),"hidden","none"]}],"border-color":[{border:W()}],"border-color-x":[{"border-x":W()}],"border-color-y":[{"border-y":W()}],"border-color-s":[{"border-s":W()}],"border-color-e":[{"border-e":W()}],"border-color-bs":[{"border-bs":W()}],"border-color-be":[{"border-be":W()}],"border-color-t":[{"border-t":W()}],"border-color-r":[{"border-r":W()}],"border-color-b":[{"border-b":W()}],"border-color-l":[{"border-l":W()}],"divide-color":[{divide:W()}],"outline-style":[{outline:[...ef(),"none","hidden"]}],"outline-offset":[{"outline-offset":[R,ea,X]}],"outline-w":[{outline:["",R,el,Z]}],"outline-color":[{outline:W()}],shadow:[{shadow:["","inner","none",d,ep,es]}],"shadow-color":[{shadow:W()}],"inset-shadow":[{"inset-shadow":["none",m,ep,es]}],"inset-shadow-color":[{"inset-shadow":W()}],"ring-w":[{ring:eu()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:W()}],"ring-offset-w":[{"ring-offset":[R,Z]}],"ring-offset-color":[{"ring-offset":W()}],"inset-ring-w":[{"inset-ring":eu()}],"inset-ring-color":[{"inset-ring":W()}],"text-shadow":[{"text-shadow":["none",p,ep,es]}],"text-shadow-color":[{"text-shadow":W()}],opacity:[{opacity:[R,ea,X]}],"mix-blend":[{"mix-blend":[...eg(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":eg()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[R]}],"mask-image-linear-from-pos":[{"mask-linear-from":eh()}],"mask-image-linear-to-pos":[{"mask-linear-to":eh()}],"mask-image-linear-from-color":[{"mask-linear-from":W()}],"mask-image-linear-to-color":[{"mask-linear-to":W()}],"mask-image-t-from-pos":[{"mask-t-from":eh()}],"mask-image-t-to-pos":[{"mask-t-to":eh()}],"mask-image-t-from-color":[{"mask-t-from":W()}],"mask-image-t-to-color":[{"mask-t-to":W()}],"mask-image-r-from-pos":[{"mask-r-from":eh()}],"mask-image-r-to-pos":[{"mask-r-to":eh()}],"mask-image-r-from-color":[{"mask-r-from":W()}],"mask-image-r-to-color":[{"mask-r-to":W()}],"mask-image-b-from-pos":[{"mask-b-from":eh()}],"mask-image-b-to-pos":[{"mask-b-to":eh()}],"mask-image-b-from-color":[{"mask-b-from":W()}],"mask-image-b-to-color":[{"mask-b-to":W()}],"mask-image-l-from-pos":[{"mask-l-from":eh()}],"mask-image-l-to-pos":[{"mask-l-to":eh()}],"mask-image-l-from-color":[{"mask-l-from":W()}],"mask-image-l-to-color":[{"mask-l-to":W()}],"mask-image-x-from-pos":[{"mask-x-from":eh()}],"mask-image-x-to-pos":[{"mask-x-to":eh()}],"mask-image-x-from-color":[{"mask-x-from":W()}],"mask-image-x-to-color":[{"mask-x-to":W()}],"mask-image-y-from-pos":[{"mask-y-from":eh()}],"mask-image-y-to-pos":[{"mask-y-to":eh()}],"mask-image-y-from-color":[{"mask-y-from":W()}],"mask-image-y-to-color":[{"mask-y-to":W()}],"mask-image-radial":[{"mask-radial":[ea,X]}],"mask-image-radial-from-pos":[{"mask-radial-from":eh()}],"mask-image-radial-to-pos":[{"mask-radial-to":eh()}],"mask-image-radial-from-color":[{"mask-radial-from":W()}],"mask-image-radial-to-color":[{"mask-radial-to":W()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":v()}],"mask-image-conic-pos":[{"mask-conic":[R]}],"mask-image-conic-from-pos":[{"mask-conic-from":eh()}],"mask-image-conic-to-pos":[{"mask-conic-to":eh()}],"mask-image-conic-from-color":[{"mask-conic-from":W()}],"mask-image-conic-to-color":[{"mask-conic-to":W()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:E()}],"mask-repeat":[{mask:Y()}],"mask-size":[{mask:q()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",ea,X]}],filter:[{filter:["","none",ea,X]}],blur:[{blur:ek()}],brightness:[{brightness:[R,ea,X]}],contrast:[{contrast:[R,ea,X]}],"drop-shadow":[{"drop-shadow":["","none",b,ep,es]}],"drop-shadow-color":[{"drop-shadow":W()}],grayscale:[{grayscale:["",R,ea,X]}],"hue-rotate":[{"hue-rotate":[R,ea,X]}],invert:[{invert:["",R,ea,X]}],saturate:[{saturate:[R,ea,X]}],sepia:[{sepia:["",R,ea,X]}],"backdrop-filter":[{"backdrop-filter":["","none",ea,X]}],"backdrop-blur":[{"backdrop-blur":ek()}],"backdrop-brightness":[{"backdrop-brightness":[R,ea,X]}],"backdrop-contrast":[{"backdrop-contrast":[R,ea,X]}],"backdrop-grayscale":[{"backdrop-grayscale":["",R,ea,X]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[R,ea,X]}],"backdrop-invert":[{"backdrop-invert":["",R,ea,X]}],"backdrop-opacity":[{"backdrop-opacity":[R,ea,X]}],"backdrop-saturate":[{"backdrop-saturate":[R,ea,X]}],"backdrop-sepia":[{"backdrop-sepia":["",R,ea,X]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":S()}],"border-spacing-x":[{"border-spacing-x":S()}],"border-spacing-y":[{"border-spacing-y":S()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",ea,X]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[R,"initial",ea,X]}],ease:[{ease:["linear","initial",h,ea,X]}],delay:[{delay:[R,ea,X]}],animate:[{animate:["none",k,ea,X]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[f,ea,X]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:ew()}],"rotate-x":[{"rotate-x":ew()}],"rotate-y":[{"rotate-y":ew()}],"rotate-z":[{"rotate-z":ew()}],scale:[{scale:ev()}],"scale-x":[{"scale-x":ev()}],"scale-y":[{"scale-y":ev()}],"scale-z":[{"scale-z":ev()}],"scale-3d":["scale-3d"],skew:[{skew:ex()}],"skew-x":[{"skew-x":ex()}],"skew-y":[{"skew-y":ex()}],transform:[{transform:[ea,X,"","none","gpu","cpu"]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:ey()}],"translate-x":[{"translate-x":ey()}],"translate-y":[{"translate-y":ey()}],"translate-z":[{"translate-z":ey()}],"translate-none":["translate-none"],zoom:[{zoom:[U,ea,X]}],accent:[{accent:W()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:W()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",ea,X]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":W()}],"scrollbar-track-color":[{"scrollbar-track":W()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":S()}],"scroll-mx":[{"scroll-mx":S()}],"scroll-my":[{"scroll-my":S()}],"scroll-ms":[{"scroll-ms":S()}],"scroll-me":[{"scroll-me":S()}],"scroll-mbs":[{"scroll-mbs":S()}],"scroll-mbe":[{"scroll-mbe":S()}],"scroll-mt":[{"scroll-mt":S()}],"scroll-mr":[{"scroll-mr":S()}],"scroll-mb":[{"scroll-mb":S()}],"scroll-ml":[{"scroll-ml":S()}],"scroll-p":[{"scroll-p":S()}],"scroll-px":[{"scroll-px":S()}],"scroll-py":[{"scroll-py":S()}],"scroll-ps":[{"scroll-ps":S()}],"scroll-pe":[{"scroll-pe":S()}],"scroll-pbs":[{"scroll-pbs":S()}],"scroll-pbe":[{"scroll-pbe":S()}],"scroll-pt":[{"scroll-pt":S()}],"scroll-pr":[{"scroll-pr":S()}],"scroll-pb":[{"scroll-pb":S()}],"scroll-pl":[{"scroll-pl":S()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",ea,X]}],fill:[{fill:["none",...W()]}],"stroke-w":[{stroke:[R,el,Z,ee]}],stroke:[{stroke:["none",...W()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["start","end","right","left"],"inset-y":["inset-bs","inset-be","top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["ps","pe","pr","pl"],py:["pbs","pbe","pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["ms","me","mr","ml"],my:["mbs","mbe","mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-s","border-w-e","border-w-r","border-w-l"],"border-w-y":["border-w-bs","border-w-be","border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-s","border-color-e","border-color-r","border-color-l"],"border-color-y":["border-color-bs","border-color-be","border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-ms","scroll-me","scroll-mr","scroll-ml"],"scroll-my":["scroll-mbs","scroll-mbe","scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-ps","scroll-pe","scroll-pr","scroll-pl"],"scroll-py":["scroll-pbs","scroll-pbe","scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},s=e=>{let n=r(e);if(n)return n;let s=((e,o)=>{let{parseClassName:r,getClassGroupId:t,getConflictingClassGroupIds:n,sortModifiers:s,postfixLookupClassGroupIds:a}=o,l=[],i=e.trim().split(G),c="";for(let e=i.length-1;e>=0;e-=1){let o,d=i[e],{isExternal:m,modifiers:p,hasImportantModifier:b,baseClassName:u,maybePostfixModifierPosition:f}=r(d);if(m){c=d+(c.length>0?" "+c:c);continue}let g=!!f;if(g){let e=(o=t(u.substring(0,f)))&&a[o]?t(u):void 0;e&&e!==o&&(o=e,g=!1)}else o=t(u);if(!o){if(!g||!(o=t(u))){c=d+(c.length>0?" "+c:c);continue}g=!1}let h=0===p.length?"":1===p.length?p[0]:s(p).join(":"),k=b?h+"!":h,w=k+o;if(l.indexOf(w)>-1)continue;l.push(w);let v=n(o,g);for(let e=0;e<v.length;++e){let o=v[e];l.push(k+o)}c=d+(c.length>0?" "+c:c)}return c})(e,o);return t(e,s),s},n=e=>{var l;let i;return r=(o={cache:(e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let o=0,r=Object.create(null),t=Object.create(null),n=(n,s)=>{r[n]=s,++o>e&&(o=0,t=r,r=Object.create(null))};return{get(e){let o=r[e];return void 0!==o?o:void 0!==(o=t[e])?(n(e,o),o):void 0},set(e,o){e in r?r[e]=o:n(e,o)}}})((l=[].reduce((e,o)=>o(e),a())).cacheSize),parseClassName:(e=>{let{prefix:o,experimentalParseClassName:r}=e,t=e=>{let o,r=[],t=0,n=0,s=0,a=e.length;for(let l=0;l<a;l++){let a=e[l];if(0===t&&0===n){if(":"===a){r.push(e.slice(s,l)),s=l+1;continue}if("/"===a){o=l;continue}}"["===a?t++:"]"===a?t--:"("===a?n++:")"===a&&n--}let l=0===r.length?e:e.slice(s),i=l,c=!1;return l.endsWith("!")?(i=l.slice(0,-1),c=!0):l.startsWith("!")&&(i=l.slice(1),c=!0),C(r,c,i,o&&o>s?o-s:void 0)};if(o){let e=o+":",r=t;t=o=>o.startsWith(e)?r(o.slice(e.length)):C(j,!1,o,void 0,!0)}if(r){let e=t;t=o=>r({className:o,parseClassName:e})}return t})(l),sortModifiers:(i=new Map,l.orderSensitiveModifiers.forEach((e,o)=>{i.set(e,1e6+o)}),e=>{let o=[],r=[];for(let t=0;t<e.length;t++){let n=e[t],s="["===n[0],a=i.has(n);s||a?(r.length>0&&(r.sort(),o.push(...r),r=[]),o.push(n)):r.push(n)}return r.length>0&&(r.sort(),o.push(...r)),o}),postfixLookupClassGroupIds:(e=>{let o=Object.create(null),r=e.postfixLookupClassGroups;if(r)for(let e=0;e<r.length;e++)o[r[e]]=!0;return o})(l),...(e=>{let o=(e=>{let{theme:o,classGroups:r}=e;return h(r,o)})(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:t}=e;return{getClassGroupId:e=>{if(e.startsWith("[")&&e.endsWith("]")){var r;let o,t,n;return -1===(r=e).slice(1,-1).indexOf(":")?void 0:(t=(o=r.slice(1,-1)).indexOf(":"),(n=o.slice(0,t))?"arbitrary.."+n:void 0)}let t=e.split("-"),n=+(""===t[0]&&t.length>1);return g(t,n,o)},getConflictingClassGroupIds:(e,o)=>{if(o){let o=t[e],n=r[e];if(o){if(n){let e=Array(n.length+o.length);for(let o=0;o<n.length;o++)e[o]=n[o];for(let r=0;r<o.length;r++)e[n.length+r]=o[r];return e}return o}return n||f}return r[e]||f}}})(l)}).cache.get,t=o.cache.set,n=s,s(e)},(...e)=>n(((...e)=>{let o,r,t=0,n="";for(;t<e.length;)(o=e[t++])&&(r=T(o))&&(n&&(n+=" "),n+=r);return n})(...e)));e.s(["cn",0,function(...e){return eS(b(e))}],975157)}]);
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,138324,(e,t,r)=>{"use strict";e.i(583225),Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return b},useLinkStatus:function(){return y}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let s=e.r(56421),o=e.r(72345),i=s._(e.r(180338)),l=e.r(626167),d=e.r(757336),c=e.r(863555),u=e.r(549757),p=e.r(671412),f=e.r(235871),h=e.r(716851),m=e.r(658853),x=e.r(571921);function b(t){var r;let a,n,s,[b,y]=(0,i.useOptimistic)(h.IDLE_LINK_STATUS),v=(0,i.useRef)(null),{href:j,as:w,children:N,prefetch:k=null,passHref:S,replace:_,shallow:C,scroll:E,onClick:A,onMouseEnter:M,onTouchStart:T,legacyBehavior:R=!1,onNavigate:P,transitionTypes:O,ref:$,unstable_dynamicOnHover:z,...D}=t;a=N,R&&("string"==typeof a||"number"==typeof a)&&(a=(0,o.jsx)("a",{children:a}));let I=i.default.useContext(d.AppRouterContext),L=!1!==k,q=!1===k?"none":!0===k?"full":"auto",U="none"!==q?"auto"===q?x.FetchStrategy.PPR:x.FetchStrategy.Full:x.FetchStrategy.PPR,B="string"==typeof(r=w||j)?r:(0,l.formatUrl)(r);if(R){if(a?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});n=i.default.Children.only(a)}let K=R?n&&"object"==typeof n&&n.ref:$,F,G=i.default.useCallback(e=>(null!==I&&(v.current=(0,h.mountLinkInstance)(e,B,I,U,L,y,F)),()=>{v.current&&((0,h.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,h.unmountPrefetchableInstance)(e)}),[L,B,I,U,y,F]),V={ref:(0,c.useMergedRef)(G,K),onClick(t){R||"function"!=typeof A||A(t),R&&n.props&&"function"==typeof n.props.onClick&&n.props.onClick(t),!I||t.defaultPrevented||function(t,r,a,n,s,o,l,d="none"){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(r)){n&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),o){let e=!1;if(o({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:p}=e.r(187250);i.default.startTransition(()=>{p(r,n?"replace":"push",!1===s?f.ScrollBehavior.NoScroll:f.ScrollBehavior.Default,a.current,l,d)})}}(t,B,v,_,E,P,O,q)},onMouseEnter(e){R||"function"!=typeof M||M(e),R&&n.props&&"function"==typeof n.props.onMouseEnter&&n.props.onMouseEnter(e),I&&L&&(0,h.onNavigationIntent)(e.currentTarget,!0===z)},onTouchStart:function(e){R||"function"!=typeof T||T(e),R&&n.props&&"function"==typeof n.props.onTouchStart&&n.props.onTouchStart(e),I&&L&&(0,h.onNavigationIntent)(e.currentTarget,!0===z)}};return(0,u.isAbsoluteUrl)(B)?V.href=B:R&&!S&&("a"!==n.type||"href"in n.props)||(V.href=(0,p.addBasePath)(B)),s=R?i.default.cloneElement(n,V):(0,o.jsx)("a",{...D,...V,children:a}),(0,o.jsx)(g.Provider,{value:b,children:s})}let g=(0,i.createContext)(h.IDLE_LINK_STATUS),y=()=>(0,i.useContext)(g);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},863555,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return n}});let a=e.r(180338);function n(e,t){let r=(0,a.useRef)(null),n=(0,a.useRef)(null);return(0,a.useCallback)(a=>{if(null===a){let e=r.current;e&&(r.current=null,e());let t=n.current;t&&(n.current=null,t())}else e&&(r.current=s(e,a)),t&&(n.current=s(t,a))},[e,t])}function s(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},549757,(e,t,r)=>{"use strict";e.i(583225),Object.defineProperty(r,"__esModule",{value:!0});var a={DecodeError:function(){return b},MiddlewareNotFoundError:function(){return j},MissingStaticPage:function(){return v},NormalizeError:function(){return g},PageNotFoundError:function(){return y},SP:function(){return m},ST:function(){return x},WEB_VITALS:function(){return s},execOnce:function(){return o},getDisplayName:function(){return u},getLocationOrigin:function(){return d},getURL:function(){return c},isAbsoluteUrl:function(){return l},isResSent:function(){return p},loadGetInitialProps:function(){return h},normalizeRepeatedSlashes:function(){return f},stringifyError:function(){return w}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let s=["CLS","FCP","FID","INP","LCP","TTFB"];function o(e){let t,r=!1;return(...a)=>(r||(r=!0,t=e(...a)),t)}let i=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,l=e=>{let t=e.charCodeAt(0);return!!(t>=65&&t<=90||t>=97&&t<=122)&&i.test(e)};function d(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=d();return e.substring(t.length)}function u(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function p(e){return e.finished||e.headersSent}function f(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function h(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await h(t.Component,t.ctx)}:{};let a=await e.getInitialProps(t);if(r&&p(r))return a;if(!a)throw Object.defineProperty(Error(`"${u(e)}.getInitialProps()" should resolve to an object. But found "${a}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return a}let m="u">typeof performance,x=m&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class b extends Error{}class g extends Error{}class y extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class v extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class j extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function w(e){return JSON.stringify({message:e.message,stack:e.stack})}},658853,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return s}});let a=e.r(549757),n=e.r(144654);function s(e){if(!(0,a.isAbsoluteUrl)(e))return!0;try{let t=(0,a.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,n.hasBasePath)(r.pathname)}catch(e){return!1}}},818732,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={assign:function(){return l},searchParamsToUrlQuery:function(){return s},urlQueryToSearchParams:function(){return i}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});function s(e){let t={};for(let[r,a]of e.entries()){let e=t[r];void 0===e?t[r]=a:Array.isArray(e)?e.push(a):t[r]=[e,a]}return t}function o(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function i(e){let t=new URLSearchParams;for(let[r,a]of Object.entries(e))if(Array.isArray(a))for(let e of a)t.append(r,o(e));else t.set(r,o(a));return t}function l(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,a]of r.entries())e.append(t,a)}return e}},626167,(e,t,r)=>{"use strict";e.i(583225),Object.defineProperty(r,"__esModule",{value:!0});var a={formatUrl:function(){return i},formatWithValidation:function(){return d},urlObjectKeys:function(){return l}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let s=e.r(56421)._(e.r(818732)),o=/https?|ftp|gopher|file/;function i(e){let{auth:t,hostname:r}=e,a=e.protocol||"",n=e.pathname||"",i=e.hash||"",l=e.query||"",d=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?d=t+e.host:r&&(d=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(d+=":"+e.port)),l&&"object"==typeof l&&(l=String(s.urlQueryToSearchParams(l)));let c=e.search||l&&`?${l}`||"";return a&&!a.endsWith(":")&&(a+=":"),e.slashes||(!a||o.test(a))&&!1!==d?(d="//"+(d||""),n&&"/"!==n[0]&&(n="/"+n)):d||(d=""),i&&"#"!==i[0]&&(i="#"+i),c&&"?"!==c[0]&&(c="?"+c),n=n.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${a}${d}${n}${c}${i}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function d(e){return i(e)}},588537,e=>{"use strict";var t=e.i(72345),r=e.i(180338),a=e.i(910172),n=e.i(763371),s=e.i(573009),o=e.i(243668);function i(){let{rootParam:e,refresh:t,setEditorSettings:a,setAutoRefreshSeconds:i,autoRefreshSeconds:l}=(0,n.useApp)(),d=(0,r.useRef)(null);return(0,r.useEffect)(()=>{if(!e)return;let t=!1;return fetch(`/api/settings${e}&type=settings`).then(e=>e.ok?e.json():o.DEFAULT_SETTINGS).then(e=>{t||((0,s.applyTheme)(e.theme),(0,s.applyAccent)(e.accentColor),(0,s.applyFontSize)(e.fontSize),(0,s.applyFonts)(e),a(e.editor),i(e.project?.autoRefresh??0))}).catch(()=>{}),()=>{t=!0}},[e]),(0,r.useEffect)(()=>(d.current&&clearInterval(d.current),l>0&&(d.current=setInterval(t,1e3*l)),()=>{d.current&&(clearInterval(d.current),d.current=null)}),[l,t]),null}function l(){return(0,t.jsx)("div",{className:"min-h-screen flex items-center justify-center",children:(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsx)("div",{className:"flex gap-1.5 justify-center mb-4",children:[0,1,2].map(e=>(0,t.jsx)("div",{className:"w-2 h-2 rounded-full bg-accent animate-pulse-dot",style:{animationDelay:`${.15*e}s`}},e))}),(0,t.jsx)("p",{className:"text-muted text-sm font-mono",children:"Loading project..."})]})})}var d=e.i(755146);function c({projects:e,activeProject:r,currentName:a,onSelect:n}){return(0,t.jsxs)(d.DropdownMenu,{children:[(0,t.jsx)(d.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsxs)("button",{className:"flex items-center gap-1.5 px-3 py-1.5 rounded-md bg-surface2 border border-border text-sm hover:border-border2 transition-colors",children:[(0,t.jsx)("span",{className:"text-txt font-medium truncate max-w-[200px]",children:a||"Select project"}),(0,t.jsx)("span",{className:"text-muted text-xs",children:"▾"})]})}),(0,t.jsx)(d.DropdownMenuContent,{className:"w-64 bg-surface border-border2 text-txt",align:"start",children:0===e.length?(0,t.jsx)("div",{className:"px-3 py-2 text-sm text-muted",children:"No projects found"}):e.map(e=>(0,t.jsx)(d.DropdownMenuItem,{onClick:()=>n(e.root),className:`cursor-pointer hover:bg-surface2 focus:bg-surface2 ${e.root===r?"text-accent":""}`,children:(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"font-medium",children:e.name}),(0,t.jsx)("div",{className:"text-xs text-muted truncate font-mono",children:e.root})]})},e.root))})]})}var u=e.i(487486);function p({board:e}){return(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsxs)(u.Badge,{variant:"secondary",className:"gap-1 text-xs font-mono text-amber",children:["🔨 ",e["in-progress"]||0]}),(0,t.jsxs)(u.Badge,{variant:"secondary",className:"gap-1 text-xs font-mono text-muted",children:["📋 ",e.todo||0]}),(0,t.jsxs)(u.Badge,{variant:"secondary",className:"gap-1 text-xs font-mono text-teal",children:["✅ ",e.done||0]})]})}var f=e.i(975157);function h({active:e}){return(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-xs font-mono text-muted",children:[(0,t.jsx)("div",{className:(0,f.cn)("w-1.5 h-1.5 rounded-full transition-colors duration-500",e?"bg-teal shadow-[0_0_6px_#4fd8b4]":"bg-border2")}),(0,t.jsx)("span",{children:e?"live update":"connected"})]})}var m=e.i(617739),x=e.i(294237),b=e.i(83790);let g={name:"panel-left",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]],aliases:["sidebar"]};g.node;let y=(0,b.default)(g);var v=e.i(519455),j=e.i(793479),w=e.i(772436),N=e.i(980376);function k({className:e,...r}){return(0,t.jsx)("div",{className:(0,f.cn)("animate-pulse rounded-md bg-surface2",e),...r})}var S=e.i(746798);let _=r.createContext(null);function C(){let e=r.useContext(_);if(!e)throw Error("useSidebar must be used within a SidebarProvider.");return e}let E=r.forwardRef(({defaultOpen:e=!0,open:a,onOpenChange:n,className:s,style:o,children:i,...l},d)=>{let c=function(){let[e,t]=r.useState(void 0);return r.useEffect(()=>{let e=window.matchMedia("(max-width: 767px)"),r=()=>{t(window.innerWidth<768)};return e.addEventListener("change",r),t(window.innerWidth<768),()=>e.removeEventListener("change",r)},[]),!!e}(),[u,p]=r.useState(!1),[h,m]=r.useState(e),x=a??h,b=r.useCallback(e=>{let t="function"==typeof e?e(x):e;n?n(t):m(t),document.cookie=`sidebar_state=${t}; path=/; max-age=604800`},[n,x]),g=r.useCallback(()=>c?p(e=>!e):b(e=>!e),[c,b,p]);r.useEffect(()=>{let e=e=>{"b"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),g())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[g]);let y=x?"expanded":"collapsed",v=r.useMemo(()=>({state:y,open:x,setOpen:b,isMobile:c,openMobile:u,setOpenMobile:p,toggleSidebar:g}),[y,x,b,c,u,p,g]);return(0,t.jsx)(_.Provider,{value:v,children:(0,t.jsx)(S.TooltipProvider,{delayDuration:0,children:(0,t.jsx)("div",{style:{"--sidebar-width":"16rem","--sidebar-width-icon":"3rem",...o},className:(0,f.cn)("group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar",s),ref:d,...l,children:i})})})});E.displayName="SidebarProvider";let A=r.forwardRef(({side:e="left",variant:r="sidebar",collapsible:a="offcanvas",className:n,children:s,...o},i)=>{let{isMobile:l,state:d,openMobile:c,setOpenMobile:u}=C();return"none"===a?(0,t.jsx)("div",{className:(0,f.cn)("flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground",n),ref:i,...o,children:s}):l?(0,t.jsx)(N.Sheet,{open:c,onOpenChange:u,...o,children:(0,t.jsxs)(N.SheetContent,{"data-sidebar":"sidebar","data-mobile":"true",className:"w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",style:{"--sidebar-width":"18rem"},side:e,children:[(0,t.jsxs)(N.SheetHeader,{className:"sr-only",children:[(0,t.jsx)(N.SheetTitle,{children:"Sidebar"}),(0,t.jsx)(N.SheetDescription,{children:"Displays the mobile sidebar."})]}),(0,t.jsx)("div",{className:"flex h-full w-full flex-col",children:s})]})}):(0,t.jsxs)("div",{ref:i,className:"group peer hidden text-sidebar-foreground md:block","data-state":d,"data-collapsible":"collapsed"===d?a:"","data-variant":r,"data-side":e,children:[(0,t.jsx)("div",{className:(0,f.cn)("relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180","floating"===r||"inset"===r?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon)")}),(0,t.jsx)("div",{className:(0,f.cn)("fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex","left"===e?"left-0 group-data-[collapsible=offcanvas]:-left-(--sidebar-width)":"right-0 group-data-[collapsible=offcanvas]:-right-(--sidebar-width)","floating"===r||"inset"===r?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l",n),...o,children:(0,t.jsx)("div",{"data-sidebar":"sidebar",className:"flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow-sm",children:s})})]})});A.displayName="Sidebar";let M=r.forwardRef(({className:e,onClick:r,...a},n)=>{let{toggleSidebar:s}=C();return(0,t.jsxs)(v.Button,{ref:n,"data-sidebar":"trigger",variant:"ghost",size:"icon",className:(0,f.cn)("h-7 w-7",e),onClick:e=>{r?.(e),s()},...a,children:[(0,t.jsx)(y,{}),(0,t.jsx)("span",{className:"sr-only",children:"Toggle Sidebar"})]})});M.displayName="SidebarTrigger",r.forwardRef(({className:e,...r},a)=>{let{toggleSidebar:n}=C();return(0,t.jsx)("button",{ref:a,"data-sidebar":"rail","aria-label":"Toggle Sidebar",tabIndex:-1,onClick:n,title:"Toggle Sidebar",className:(0,f.cn)("absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-[translate,background-color] ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex","in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize","[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize","group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar","[[data-side=left][data-collapsible=offcanvas]_&]:-right-2","[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",e),...r})}).displayName="SidebarRail";let T=r.forwardRef(({className:e,...r},a)=>(0,t.jsx)("main",{ref:a,className:(0,f.cn)("relative flex w-full flex-1 flex-col bg-bg","md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm",e),...r}));T.displayName="SidebarInset",r.forwardRef(({className:e,...r},a)=>(0,t.jsx)(j.Input,{ref:a,"data-sidebar":"input",className:(0,f.cn)("h-8 w-full bg-bg shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring",e),...r})).displayName="SidebarInput";let R=r.forwardRef(({className:e,...r},a)=>(0,t.jsx)("div",{ref:a,"data-sidebar":"header",className:(0,f.cn)("flex flex-col gap-2 p-2",e),...r}));R.displayName="SidebarHeader",r.forwardRef(({className:e,...r},a)=>(0,t.jsx)("div",{ref:a,"data-sidebar":"footer",className:(0,f.cn)("flex flex-col gap-2 p-2",e),...r})).displayName="SidebarFooter";let P=r.forwardRef(({className:e,...r},a)=>(0,t.jsx)(w.Separator,{ref:a,"data-sidebar":"separator",className:(0,f.cn)("mx-2 w-auto bg-sidebar-border",e),...r}));P.displayName="SidebarSeparator";let O=r.forwardRef(({className:e,...r},a)=>(0,t.jsx)("div",{ref:a,"data-sidebar":"content",className:(0,f.cn)("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",e),...r}));O.displayName="SidebarContent";let $=r.forwardRef(({className:e,...r},a)=>(0,t.jsx)("div",{ref:a,"data-sidebar":"group",className:(0,f.cn)("relative flex w-full min-w-0 flex-col p-2",e),...r}));$.displayName="SidebarGroup";let z=r.forwardRef(({className:e,asChild:r=!1,...a},n)=>{let s=r?m.Slot:"div";return(0,t.jsx)(s,{ref:n,"data-sidebar":"group-label",className:(0,f.cn)("flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 outline-hidden ring-sidebar-ring transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",e),...a})});z.displayName="SidebarGroupLabel",r.forwardRef(({className:e,asChild:r=!1,...a},n)=>{let s=r?m.Slot:"button";return(0,t.jsx)(s,{ref:n,"data-sidebar":"group-action",className:(0,f.cn)("absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-hidden ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 md:after:hidden","group-data-[collapsible=icon]:hidden",e),...a})}).displayName="SidebarGroupAction";let D=r.forwardRef(({className:e,...r},a)=>(0,t.jsx)("div",{ref:a,"data-sidebar":"group-content",className:(0,f.cn)("w-full text-sm",e),...r}));D.displayName="SidebarGroupContent";let I=r.forwardRef(({className:e,...r},a)=>(0,t.jsx)("ul",{ref:a,"data-sidebar":"menu",className:(0,f.cn)("flex w-full min-w-0 flex-col gap-1",e),...r}));I.displayName="SidebarMenu";let L=r.forwardRef(({className:e,...r},a)=>(0,t.jsx)("li",{ref:a,"data-sidebar":"menu-item",className:(0,f.cn)("group/menu-item relative",e),...r}));L.displayName="SidebarMenuItem";let q=(0,x.cva)("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",{variants:{variant:{default:"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",outline:"bg-bg shadow-[0_0_0_1px_rgb(var(--rgb-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_rgb(var(--rgb-surface2))]"},size:{default:"h-8 text-sm",sm:"h-7 text-xs",lg:"h-12 text-sm group-data-[collapsible=icon]:p-0!"}},defaultVariants:{variant:"default",size:"default"}}),U=r.forwardRef(({asChild:e=!1,isActive:r=!1,variant:a="default",size:n="default",tooltip:s,className:o,...i},l)=>{let d=e?m.Slot:"button",{isMobile:c,state:u}=C(),p=(0,t.jsx)(d,{ref:l,"data-sidebar":"menu-button","data-size":n,"data-active":r,className:(0,f.cn)(q({variant:a,size:n}),o),...i});return s?("string"==typeof s&&(s={children:s}),(0,t.jsxs)(S.Tooltip,{children:[(0,t.jsx)(S.TooltipTrigger,{asChild:!0,children:p}),(0,t.jsx)(S.TooltipContent,{side:"right",align:"center",hidden:"collapsed"!==u||c,...s})]})):p});function B({summary:e,projects:r,activeProject:a,liveIndicator:n,onProjectChange:s,onToggleChat:o}){return(0,t.jsxs)("header",{className:"h-12 border-b border-border flex items-center px-4 gap-4 shrink-0 bg-surface/80 backdrop-blur-xs sticky top-0 z-50",children:[(0,t.jsx)(M,{className:"-ml-1"}),(0,t.jsx)(w.Separator,{orientation:"vertical",className:"mr-2 h-4"}),(0,t.jsxs)("div",{className:"flex items-center gap-2 shrink-0",children:[(0,t.jsx)("div",{className:"w-6 h-6 rounded-md bg-linear-to-br from-accent to-teal flex items-center justify-center text-xs",children:"⬡"}),(0,t.jsx)("span",{className:"font-mono text-xs text-muted tracking-widest uppercase",children:"VibeDoc"})]}),(0,t.jsx)(c,{projects:r,activeProject:a,currentName:e?.name||"",onSelect:s}),e&&(0,t.jsx)(p,{board:e.tasks.board}),(0,t.jsx)("div",{className:"flex-1"}),(0,t.jsx)(h,{active:n}),(0,t.jsx)("button",{onClick:o,title:"Agent chat (c)",className:"px-2 py-1 rounded-sm border border-border bg-surface2 text-xs font-mono text-muted hover:text-txt",children:"Agent"}),(0,t.jsxs)("div",{className:"hidden md:flex items-center gap-1.5 px-2 py-1 rounded-sm bg-surface2 border border-border",children:[(0,t.jsx)("span",{className:"text-xs font-mono text-muted",children:"MCP"}),(0,t.jsx)("code",{className:"text-xs font-mono text-accent",children:"localhost:3000/api/mcp"})]})]})}U.displayName="SidebarMenuButton",r.forwardRef(({className:e,asChild:r=!1,showOnHover:a=!1,...n},s)=>{let o=r?m.Slot:"button";return(0,t.jsx)(o,{ref:s,"data-sidebar":"menu-action",className:(0,f.cn)("absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-hidden ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 peer-hover/menu-button:text-sidebar-accent-foreground [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 md:after:hidden","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",a&&"group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0",e),...n})}).displayName="SidebarMenuAction",r.forwardRef(({className:e,...r},a)=>(0,t.jsx)("div",{ref:a,"data-sidebar":"menu-badge",className:(0,f.cn)("pointer-events-none absolute right-1 flex h-5 min-w-5 select-none items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums text-sidebar-foreground","peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",e),...r})).displayName="SidebarMenuBadge",r.forwardRef(({className:e,showIcon:a=!1,...n},s)=>{let o=r.useMemo(()=>`${Math.floor(40*Math.random())+50}%`,[]);return(0,t.jsxs)("div",{ref:s,"data-sidebar":"menu-skeleton",className:(0,f.cn)("flex h-8 items-center gap-2 rounded-md px-2",e),...n,children:[a&&(0,t.jsx)(k,{className:"size-4 rounded-md","data-sidebar":"menu-skeleton-icon"}),(0,t.jsx)(k,{className:"h-4 max-w-(--skeleton-width) flex-1","data-sidebar":"menu-skeleton-text",style:{"--skeleton-width":o}})]})}).displayName="SidebarMenuSkeleton",r.forwardRef(({className:e,...r},a)=>(0,t.jsx)("ul",{ref:a,"data-sidebar":"menu-sub",className:(0,f.cn)("mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5","group-data-[collapsible=icon]:hidden",e),...r})).displayName="SidebarMenuSub",r.forwardRef(({...e},r)=>(0,t.jsx)("li",{ref:r,...e})).displayName="SidebarMenuSubItem",r.forwardRef(({asChild:e=!1,size:r="md",isActive:a,className:n,...s},o)=>{let i=e?m.Slot:"a";return(0,t.jsx)(i,{ref:o,"data-sidebar":"menu-sub-button","data-size":r,"data-active":a,className:(0,f.cn)("flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground outline-hidden ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground","data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground","sm"===r&&"text-xs","md"===r&&"text-sm","group-data-[collapsible=icon]:hidden",n),...s})}).displayName="SidebarMenuSubButton";let K={name:"layout-dashboard",size:24,node:[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]};K.node;let F=(0,b.default)(K);var G=e.i(732460),V=e.i(788293);let W={name:"brain",size:24,node:[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]]};W.node;let H=(0,b.default)(W),J={name:"circle-dot",size:24,node:[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]};J.node;let Z=(0,b.default)(J),Q={name:"ban",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}]]};Q.node;let X=(0,b.default)(Q),Y={name:"clipboard-list",size:24,node:[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"M12 11h4",key:"1jrz19"}],["path",{d:"M12 16h4",key:"n85exb"}],["path",{d:"M8 11h.01",key:"1dfujw"}],["path",{d:"M8 16h.01",key:"18s6g9"}]]};Y.node;let ee=(0,b.default)(Y),et={name:"circle-check",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16 9-5.5 5.5L8 12",key:"xofnsj"}]],aliases:["check-circle-2"]};et.node;let er=(0,b.default)(et);var ea=e.i(463464);let en={name:"folder-tree",size:24,node:[["path",{d:"M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"hod4my"}],["path",{d:"M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"w4yl2u"}],["path",{d:"M3 5a2 2 0 0 0 2 2h3",key:"f2jnh7"}],["path",{d:"M3 3v13a2 2 0 0 0 2 2h3",key:"k8epm1"}]]};en.node;let es=(0,b.default)(en),eo={name:"map",size:24,node:[["path",{d:"M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619v12.764a1 1 0 0 1-.553.894l-4.553 2.277a2 2 0 0 1-1.788 0l-4.212-2.106a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0z",key:"169xi5"}],["path",{d:"M15 5.764v15",key:"1pn4in"}],["path",{d:"M9 3.236v15",key:"1uimfh"}]]};eo.node;let ei=(0,b.default)(eo);var el=e.i(138324);let ed=[{href:"/board",icon:F,label:"Board"},{href:"/roadmap",icon:ei,label:"Roadmap"},{href:"/docs",icon:G.BookOpen,label:"Docs"},{href:"/activity",icon:V.Zap,label:"Activity"},{href:"/memory",icon:H,label:"Memory"},{href:"/explorer",icon:es,label:"Explorer"},{href:"/settings",icon:ea.Settings,label:"Settings"}],ec=[{status:"in-progress",icon:Z,label:"Active"},{status:"blocked",icon:X,label:"Blocked"},{status:"todo",icon:ee,label:"Todo"},{status:"done",icon:er,label:"Done"}];function eu({board:e}){let r=(0,a.usePathname)();return(0,t.jsxs)(A,{collapsible:"icon",children:[(0,t.jsx)(R,{children:(0,t.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1",children:[(0,t.jsx)("div",{className:"w-6 h-6 rounded-md bg-linear-to-br from-accent to-teal flex items-center justify-center text-xs shrink-0",children:"⬡"}),(0,t.jsx)("span",{className:"font-mono text-xs text-muted tracking-widest uppercase group-data-[collapsible=icon]:hidden",children:"VibeDoc"})]})}),(0,t.jsxs)(O,{children:[(0,t.jsx)($,{children:(0,t.jsx)(D,{children:(0,t.jsx)(I,{children:ed.map(({href:e,icon:a,label:n})=>(0,t.jsx)(L,{children:(0,t.jsx)(U,{asChild:!0,isActive:r.startsWith(e),tooltip:n,children:(0,t.jsxs)(el.default,{href:e,children:[(0,t.jsx)(a,{}),(0,t.jsx)("span",{children:n})]})})},e))})})}),e&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(P,{}),(0,t.jsxs)($,{children:[(0,t.jsx)(z,{children:"Board"}),(0,t.jsx)(D,{children:(0,t.jsx)(I,{children:ec.map(({status:r,icon:a,label:n})=>{let s=e[r]?.length||0;return(0,t.jsx)(L,{children:(0,t.jsxs)(U,{tooltip:`${n}: ${s}`,children:[(0,t.jsx)(a,{}),(0,t.jsx)("span",{children:n}),(0,t.jsx)("span",{className:"ml-auto font-mono text-xs",children:s})]})},r)})})})]})]})]})]})}var ep=e.i(161863);let ef={name:"file-plus",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M9 15h6",key:"cctwl0"}],["path",{d:"M12 18v-6",key:"17g6i2"}]]};ef.node;let eh=(0,b.default)(ef),em={name:"activity",size:24,node:[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]};em.node;let ex=(0,b.default)(em);var eb=e.i(776639),eg=e.i(759684);function ey({open:e,onClose:n,onOpenDoc:s,onNewDoc:o,rootParam:i}){let l=(0,a.useRouter)(),[d,c]=(0,r.useState)(""),[u,p]=(0,r.useState)([]),[h,m]=(0,r.useState)(0),x=[{label:"New Doc",icon:eh,action:()=>{o?.(),n()}},{label:"Go to Board",icon:F,action:()=>{l.push("/board"),n()}},{label:"Go to Roadmap",icon:ei,action:()=>{l.push("/roadmap"),n()}},{label:"Go to Activity",icon:ex,action:()=>{l.push("/activity"),n()}},{label:"Go to Memory",icon:H,action:()=>{l.push("/memory"),n()}}];function b(e){s(e.path),n()}(0,r.useEffect)(()=>{e||(c(""),p([]),m(0))},[e]),(0,r.useEffect)(()=>{if(d.length<2){p([]),m(0);return}let e=setTimeout(async()=>{try{let e=await fetch(`/api/docs${i}&q=${encodeURIComponent(d)}`),t=await e.json();p(t.results?.map(e=>({path:e.file,section:e.file.split("/").slice(0,-1).join("/"),name:e.file.split("/").pop()?.replace(/\.md$/,"")??e.file}))??[]),m(0)}catch{}},300);return()=>clearTimeout(e)},[d,i]);let g=""===d;return(0,t.jsx)(eb.Dialog,{open:e,onOpenChange:e=>{e||n()},children:(0,t.jsxs)(eb.DialogContent,{className:"max-w-lg p-0 overflow-hidden bg-surface border-border gap-0",children:[(0,t.jsx)(eb.DialogTitle,{className:"sr-only",children:"Command Palette"}),(0,t.jsxs)("div",{className:"flex items-center px-4 h-12",children:[(0,t.jsx)(ep.Search,{className:"h-4 w-4 text-muted shrink-0 mr-3"}),(0,t.jsx)(j.Input,{autoFocus:!0,value:d,onChange:e=>c(e.target.value),onKeyDown:function(e){let t=u.length>0,r=t?u.length:x.length;"ArrowDown"===e.key?(e.preventDefault(),m(e=>Math.min(e+1,r-1))):"ArrowUp"===e.key?(e.preventDefault(),m(e=>Math.max(e-1,0))):"Enter"===e.key&&(t&&u[h]?b(u[h]):!t&&d.length<2&&x[h]&&x[h].action())},placeholder:"Search docs…",className:"border-0 bg-transparent h-full text-sm shadow-none focus-visible:ring-0 px-0 placeholder:text-muted"})]}),(0,t.jsx)("div",{className:"border-t border-border"}),(0,t.jsxs)(eg.ScrollArea,{className:"max-h-72",children:[g&&(0,t.jsx)("div",{className:"py-1",children:x.map((e,r)=>(0,t.jsxs)("button",{onClick:e.action,onMouseEnter:()=>m(r),className:(0,f.cn)("flex items-center gap-3 w-full px-4 py-2 text-sm text-left transition-colors",h===r?"bg-accent/10 text-txt":"text-muted hover:text-txt"),children:[(0,t.jsx)(e.icon,{className:"h-4 w-4 shrink-0"}),e.label]},e.label))}),!g&&u.length>0&&(0,t.jsx)("div",{className:"py-1",children:u.map((e,r)=>(0,t.jsxs)("button",{onClick:()=>b(e),onMouseEnter:()=>m(r),className:(0,f.cn)("flex items-center justify-between w-full px-4 py-2 text-sm text-left transition-colors",h===r?"bg-accent/10":"hover:bg-accent/5"),children:[(0,t.jsx)("span",{className:"font-medium text-txt truncate",children:e.name}),e.section&&(0,t.jsx)("span",{className:"text-xs text-muted ml-3 shrink-0 truncate max-w-[40%]",children:e.section})]},e.path))}),!g&&d.length>=2&&0===u.length&&(0,t.jsx)("div",{className:"px-4 py-6 text-center text-sm text-muted",children:"No docs found"})]})]})})}var ev=e.i(406952);let ej=/[/\-_. ]/;function ew({open:e,onClose:a,onOpenDoc:n,rootParam:s}){let[o,i]=(0,r.useState)([]),[l,d]=(0,r.useState)(""),[c,u]=(0,r.useState)(0),p=(0,r.useRef)(null),[h,m]=(0,r.useState)(e);e!==h&&(m(e),e&&(d(""),u(0))),(0,r.useEffect)(()=>{e&&fetch(`/api/docs${s}`).then(e=>e.json()).then(e=>i(Array.isArray(e)?e:[])).catch(()=>i([]))},[e,s]);let x=(0,r.useMemo)(()=>{var e;return e=e=>e.path,o.map(t=>({item:t,path:e(t),score:function(e,t){let r=e.toLowerCase().replace(/\s+/g,"");if(!r)return 0;let a=t.toLowerCase(),n=null;for(let e=a.indexOf(r[0]);-1!==e;e=a.indexOf(r[0],e+1)){let t=function(e,t,r){let a=t.lastIndexOf("/")+1,n=0,s=0,o=-2;for(let i=r;i<t.length&&s<e.length;i++)t[i]===e[s]&&(n+=1,i===o+1&&(n+=5),(0===i||ej.test(t[i-1]))&&(n+=8),i>=a&&(n+=3),o=i,s++);return s===e.length?n:null}(r,a,e);null!==t&&(null===n||t>n)&&(n=t)}return n}(l,e(t))})).filter(e=>null!==e.score).sort((e,t)=>t.score-e.score||e.path.length-t.path.length).map(e=>e.item)},[l,o]),b=x.slice(0,50);function g(e){e&&(n(e.path),a())}return(0,r.useEffect)(()=>{p.current?.querySelector(`[data-index="${c}"]`)?.scrollIntoView({block:"nearest"})},[c]),(0,t.jsx)(eb.Dialog,{open:e,onOpenChange:e=>{e||a()},children:(0,t.jsxs)(eb.DialogContent,{className:"max-w-xl p-0 overflow-hidden bg-surface border-border gap-0 top-[20%] translate-y-0",children:[(0,t.jsx)(eb.DialogTitle,{className:"sr-only",children:"Go to file"}),(0,t.jsx)(j.Input,{autoFocus:!0,value:l,onChange:e=>{d(e.target.value),u(0)},onKeyDown:function(e){"ArrowDown"===e.key||e.ctrlKey&&"n"===e.key?(e.preventDefault(),u(e=>Math.min(e+1,b.length-1))):"ArrowUp"===e.key||e.ctrlKey&&"p"===e.key?(e.preventDefault(),u(e=>Math.max(e-1,0))):"Enter"===e.key&&(e.preventDefault(),g(b[c]))},placeholder:"Go to file…",className:"h-11 rounded-none border-0 border-b border-border bg-transparent px-4 text-sm shadow-none focus-visible:ring-0 placeholder:text-muted"}),(0,t.jsxs)("div",{ref:p,className:"max-h-80 overflow-y-auto py-1",children:[b.map((e,r)=>{let a=e.path.lastIndexOf("/");return(0,t.jsxs)("button",{"data-index":r,onClick:()=>g(e),onMouseMove:()=>u(r),className:(0,f.cn)("flex items-center gap-2.5 w-full px-4 py-1.5 text-left text-sm transition-colors",c===r?"bg-accent/10 text-txt":"text-muted"),children:[(0,t.jsx)(ev.FileText,{className:"h-3.5 w-3.5 shrink-0 opacity-60"}),(0,t.jsx)("span",{className:"truncate text-txt",children:e.path.slice(a+1)}),a>0&&(0,t.jsx)("span",{className:"truncate text-xs text-muted",children:e.path.slice(0,a)})]},e.path)}),0===b.length&&(0,t.jsx)("div",{className:"px-4 py-6 text-center text-sm text-muted",children:"No matching files"}),x.length>50&&(0,t.jsxs)("div",{className:"px-4 py-1.5 text-xs text-muted",children:[x.length-50," more — keep typing to narrow"]})]})]})})}var eN=e.i(91881),ek=e.i(998822);function eS({proposal:e,onResolve:a}){let{rootParam:s,openDoc:o}=(0,n.useApp)(),[i,l]=(0,r.useState)(null),[d,c]=(0,r.useState)(null),[u,p]=(0,r.useState)(!1);(0,r.useEffect)(()=>{fetch(`/api/docs${s}&read=${encodeURIComponent(e.path)}`).then(e=>e.ok?e.json():null).then(t=>l(t?.path===e.path.replace(/^\.\//,"")&&"string"==typeof t.content?t.content:"")).catch(()=>l(""))},[e.path,s]);let h=(0,r.useMemo)(()=>null===i?null:function(e,t){let r=e;for(let[e,a]of t.entries()){if("string"!=typeof a?.old_string||"string"!=typeof a?.new_string)return{error:`Edit ${e+1}: old_string and new_string must be strings`};if(""===a.old_string){if(""!==r)return{error:`Edit ${e+1}: empty old_string is only allowed for a new, empty doc`};r=a.new_string;continue}let t=r.indexOf(a.old_string);if(-1===t)return{error:`Edit ${e+1}: old_string not found in the doc`};if(-1!==r.indexOf(a.old_string,t+1))return{error:`Edit ${e+1}: old_string matches more than once; include more surrounding text`};r=r.slice(0,t)+a.new_string+r.slice(t+a.old_string.length)}return{content:r}}(i,e.edits),[i,e.edits]),m=null!==h&&"error"in h?h.error:null,x=(0,r.useMemo)(()=>{var e;let t,r;return null===i||!h||"error"in h?[]:(t=(e=function(e,t){let r=e.split("\n"),a=t.split("\n"),n=0;for(;n<r.length&&n<a.length&&r[n]===a[n];)n++;let s=r.length,o=a.length;for(;s>n&&o>n&&r[s-1]===a[o-1];)s--,o--;let i=r.slice(n,s),l=a.slice(n,o),d=Array.from({length:i.length+1},()=>Array(l.length+1).fill(0));for(let e=i.length-1;e>=0;e--)for(let t=l.length-1;t>=0;t--)d[e][t]=i[e]===l[t]?d[e+1][t+1]+1:Math.max(d[e+1][t],d[e][t+1]);let c=[],u=0,p=0;for(;u<i.length||p<l.length;)u<i.length&&p<l.length&&i[u]===l[p]?(c.push({op:" ",text:i[u]}),u++,p++):u<i.length&&(p===l.length||d[u+1][p]>=d[u][p+1])?(c.push({op:"-",text:i[u]}),u++):(c.push({op:"+",text:l[p]}),p++);return[...r.slice(0,n).map(e=>({op:" ",text:e})),...c,...r.slice(s).map(e=>({op:" ",text:e}))]}(i,h.content)).map(()=>!1),e.forEach((r,a)=>{if(" "!==r.op)for(let r=Math.max(0,a-2);r<=Math.min(e.length-1,a+2);r++)t[r]=!0}),r=[],e.forEach((e,a)=>{t[a]?r.push(e):"number"==typeof r[r.length-1]?r[r.length-1]=r[r.length-1]+1:r.push(1)}),r)},[i,h]),b=x.filter(e=>"number"!=typeof e&&"+"===e.op).length,g=x.filter(e=>"number"!=typeof e&&"-"===e.op).length;async function y(){p(!0),c(null);try{let t=await fetch(`/api/docs${s}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e.path,edits:e.edits,actor:"ai"})});if(!t.ok)throw Error((await t.json().catch(()=>null))?.error??"Save failed");a("accepted")}catch(e){c(e.message)}finally{p(!1)}}return(0,t.jsxs)("div",{className:"my-2 rounded-md border border-border overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1.5 bg-surface2 border-b border-border",children:[(0,t.jsx)("button",{onClick:()=>o(e.path),className:"text-xs font-mono text-accent truncate hover:underline",title:e.path,children:e.path}),(0,t.jsxs)("span",{className:"text-[10px] font-mono text-teal-400",children:["+",b]}),(0,t.jsxs)("span",{className:"text-[10px] font-mono text-red-400",children:["-",g]})]}),e.summary&&(0,t.jsx)("div",{className:"px-2 py-1 text-xs text-muted border-b border-border",children:e.summary}),(0,t.jsxs)("div",{className:"max-h-72 overflow-auto text-[11px] font-mono leading-5",children:[null===i&&(0,t.jsx)("div",{className:"px-2 py-1 text-muted",children:"Loading diff…"}),m&&(0,t.jsxs)("div",{className:"px-2 py-1 text-red-400",children:["Doc changed since this proposal (",m,"). Ask the agent to propose again."]}),null!==i&&!m&&0===x.length&&(0,t.jsx)("div",{className:"px-2 py-1 text-muted",children:"No changes"}),x.map((e,r)=>"number"==typeof e?(0,t.jsxs)("div",{className:"px-2 text-muted bg-surface2/50",children:["⋯ ",e," unchanged line",e>1?"s":""]},r):(0,t.jsxs)("div",{className:(0,f.cn)("px-2 whitespace-pre-wrap break-words","+"===e.op&&"bg-teal-500/10 text-teal-300","-"===e.op&&"bg-red-500/10 text-red-300 line-through decoration-red-400/40"),children:[e.op," ",e.text||" "]},r))]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1.5 border-t border-border",children:["pending"===e.status?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:y,disabled:u||null===i||!!m,className:"text-xs px-2 py-0.5 rounded-sm bg-accent/20 text-accent hover:bg-accent/30 disabled:opacity-50",children:u?"Applying…":"Accept"}),(0,t.jsx)("button",{onClick:()=>a("rejected"),disabled:u,className:"text-xs px-2 py-0.5 rounded-sm text-muted hover:text-txt",children:"Reject"})]}):(0,t.jsx)("span",{className:(0,f.cn)("text-xs","accepted"===e.status?"text-teal-400":"text-muted"),children:"accepted"===e.status?"✓ Applied":"Rejected"}),d&&(0,t.jsx)("span",{className:"text-xs text-red-400 truncate",children:d})]})]})}function e_({proposal:e,onResolve:a}){let{rootParam:s,openDoc:o}=(0,n.useApp)(),i=e.plan,l="breakdown"===i.kind?i.tasks:[],d="roadmap"===i.kind?i.horizons??[]:[],c="roadmap"===i.kind?i.epics??[]:[],u="breakdown"===i.kind?i.epic.toUpperCase():"",[p,f]=(0,r.useState)(new Map),[h,m]=(0,r.useState)(new Set),[x,b]=(0,r.useState)(null),[g,y]=(0,r.useState)(null),[v,j]=(0,r.useState)(!1);(0,r.useEffect)(()=>{fetch(`/api/roadmap${s}`).then(e=>e.ok?e.json():null).then(e=>f(new Map((e?.items??[]).map(e=>[e.id,e.title])))).catch(()=>f(new Map))},[s]);let w=("breakdown"===i.kind?l.map(e=>e.key):[...d,...c].map(e=>e.key)).filter(e=>!h.has(e)),N="pending"===e.status,k=new Set(d.map(e=>e.key)),S=(e,r,a,n,s=!1)=>(0,t.jsx)(eC,{rowKey:e,title:r,meta:a,body:n,indent:s,checked:!h.has(e),disabled:!N||v,onToggle:()=>{y(null),m(t=>{let r=new Set(t),a=r.has(e);for(let t of k.has(e)?[e,...c.filter(t=>t.parent.trim()===e).map(e=>e.key)]:[e])a?r.delete(t):r.add(t);let n=c.find(t=>t.key===e)?.parent.trim();return a&&n&&k.has(n)&&r.delete(n),r})},open:x===e,onOpen:()=>b(x===e?null:e)},e),_=e=>e.trim().split("\n")[0]??"",C=[...new Set(c.map(e=>e.parent.trim()).filter(e=>!k.has(e)))];async function E(){j(!0),y(null);try{let e=await fetch(`/api/plan/apply${s}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({plan:i,selected:w})}),t=await e.json().catch(()=>null);if(!e.ok)throw Error(t?.error??`Apply failed (${e.status})`);a("accepted",t?.created??[],[...h])}catch(e){y(e.message)}finally{j(!1)}}return(0,t.jsxs)("div",{className:"my-2 rounded-md border border-border overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1.5 bg-surface2 border-b border-border",children:[(0,t.jsx)("span",{className:"text-[10px] font-mono uppercase tracking-widest text-muted",children:"Plan"}),"breakdown"===i.kind?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-xs font-mono text-accent",children:u}),(0,t.jsx)("span",{className:"text-xs text-txt truncate",children:p.get(u)??""}),(0,t.jsxs)("span",{className:"ml-auto text-[10px] font-mono text-muted",children:[l.length," tasks"]})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-xs text-txt",children:"Roadmap"}),(0,t.jsxs)("span",{className:"ml-auto text-[10px] font-mono text-muted",children:[d.length?`${d.length} horizons \xb7 `:"",c.length," epics"]})]})]}),(0,t.jsxs)("ul",{className:"max-h-80 overflow-auto",children:[l.map(e=>S(e.key,e.title,[e.size,e.dependsOn?.length?`after ${e.dependsOn.join(", ")}`:null,e.due?`due ${e.due}`:null].filter(Boolean).join(" · "),e.body)),d.map(e=>[S(e.key,e.title,"new horizon",e.body),...c.filter(t=>t.parent.trim()===e.key).map(e=>S(e.key,e.title,_(e.body),e.body,!0))]),C.map(e=>[(0,t.jsxs)("li",{className:"px-2 py-1.5 border-b border-border text-xs text-muted",children:[(0,t.jsx)("span",{className:"font-mono text-accent mr-1",children:e.toUpperCase()}),p.get(e.toUpperCase())??""]},`parent-${e}`),...c.filter(t=>t.parent.trim()===e).map(e=>S(e.key,e.title,_(e.body),e.body,!0))])]}),g&&(0,t.jsx)("div",{className:"px-2 py-1 text-xs text-red-400 whitespace-pre-wrap border-t border-border",children:g}),(0,t.jsx)("div",{className:"flex items-center gap-2 px-2 py-1.5 border-t border-border",children:N?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:E,disabled:v||0===w.length,className:"text-xs px-2 py-0.5 rounded-sm bg-accent/20 text-accent hover:bg-accent/30 disabled:opacity-50",children:v?"Creating…":`Accept (${w.length})`}),(0,t.jsx)("button",{onClick:()=>a("rejected",[],[]),disabled:v,className:"text-xs px-2 py-0.5 rounded-sm text-muted hover:text-txt",children:"Reject"})]}):"accepted"===e.status?(0,t.jsxs)("span",{className:"text-xs text-teal-400",children:["✓ Created"," ",(e.created??[]).map((e,r)=>(0,t.jsxs)("span",{children:[r>0&&", ",(0,t.jsx)("button",{onClick:()=>o(e.file),className:"font-mono hover:underline",children:e.id})]},e.id))]}):(0,t.jsx)("span",{className:"text-xs text-muted",children:"Rejected"})})]})}function eC({rowKey:e,title:r,meta:a,body:n,indent:s,checked:o,disabled:i,onToggle:l,open:d,onOpen:c}){return(0,t.jsxs)("li",{"data-plan-row":e,className:"border-b border-border last:border-b-0",children:[(0,t.jsxs)("div",{className:(0,f.cn)("flex items-start gap-2 px-2 py-1.5",s&&"pl-6"),children:[(0,t.jsx)("input",{type:"checkbox","aria-label":`Include ${r}`,checked:o,disabled:i,onChange:l,className:"mt-0.5 accent-accent"}),(0,t.jsxs)("button",{onClick:c,className:"flex-1 min-w-0 text-left",children:[(0,t.jsxs)("div",{className:(0,f.cn)("text-xs text-txt",!o&&"line-through text-muted"),children:[(0,t.jsx)("span",{className:"font-mono text-muted mr-1",children:e}),r]}),a&&(0,t.jsx)("div",{className:"text-[10px] font-mono text-muted truncate",children:a})]})]}),d&&n&&(0,t.jsx)("div",{className:"px-3 pb-2 border-t border-border bg-surface2/40",children:(0,t.jsx)(ek.MarkdownRenderer,{content:n,className:"text-xs"})})]})}let eE="\0other";function eA({set:e,disabled:a,onSubmit:n}){let[s,o]=(0,r.useState)(()=>e.questions.map(()=>[])),[i,l]=(0,r.useState)(()=>e.questions.map(()=>"")),d=!!e.answers,c=e.questions.map((e,t)=>{let r=e.options.map(e=>e.label).filter(e=>s[t].includes(e));return s[t].includes(eE)&&i[t].trim()&&r.push(`Other: "${i[t].trim()}"`),r.join(", ")}),u=c.every(Boolean);return(0,t.jsxs)("div",{className:"my-2 rounded-md border border-border overflow-hidden","data-question-card":!0,children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1.5 bg-surface2 border-b border-border",children:[(0,t.jsx)("span",{className:"text-[10px] font-mono uppercase tracking-widest text-muted",children:"Questions"}),d&&(0,t.jsx)("span",{className:"ml-auto text-[10px] font-mono text-accent",children:"✓ Answered"})]}),(0,t.jsxs)("div",{className:"p-2 space-y-3",children:[e.questions.map((r,a)=>(0,t.jsxs)("fieldset",{disabled:d,className:"space-y-1",children:[(0,t.jsxs)("legend",{className:"mb-1",children:[(0,t.jsx)("span",{className:"text-[10px] font-mono px-1.5 py-0.5 rounded-sm bg-surface2 border border-border text-accent mr-1.5",children:r.header}),(0,t.jsx)("span",{className:"text-xs text-txt",children:r.question})]}),d?(0,t.jsx)("p",{className:"text-xs text-txt pl-1",children:e.answers?.[a]}):(0,t.jsxs)(t.Fragment,{children:[[...r.options,{label:"Other",value:eE}].map(n=>{let i="value"in n?n.value:n.label,l=s[a].includes(i);return(0,t.jsxs)("label",{className:(0,f.cn)("flex gap-2 items-start rounded-sm px-1 py-0.5 cursor-pointer hover:bg-surface2",l&&"bg-surface2"),children:[(0,t.jsx)("input",{type:r.multiSelect?"checkbox":"radio",name:`${e.id}-${a}`,checked:l,onChange:()=>{var e;return e=r.multiSelect,void o(t=>t.map((t,r)=>r!==a?t:e?t.includes(i)?t.filter(e=>e!==i):[...t,i]:[i]))},className:"mt-0.5 accent-accent"}),(0,t.jsxs)("span",{className:"text-xs",children:[(0,t.jsx)("span",{className:"text-txt",children:n.label}),"description"in n&&n.description&&(0,t.jsx)("span",{className:"block text-muted",children:n.description})]})]},i)}),s[a].includes(eE)&&(0,t.jsx)("input",{value:i[a],onChange:e=>l(t=>t.map((t,r)=>r===a?e.target.value:t)),placeholder:"Your answer","aria-label":`Other answer for ${r.header}`,className:"ml-6 w-[calc(100%-1.5rem)] rounded-sm bg-surface2 border border-border px-2 py-1 text-xs text-txt placeholder:text-muted focus:outline-hidden focus:border-accent"})]})]},a)),!d&&(0,t.jsx)("button",{onClick:()=>n(c),disabled:!u||a,className:"text-xs px-2 py-0.5 rounded-sm bg-accent/20 text-accent hover:bg-accent/30 disabled:opacity-50",children:"Submit"})]})]})}let eM=e=>!!e&&"object"==typeof e&&!Array.isArray(e);var eT=e.i(956555);function eR({onClose:e}){let{rootParam:s,activeProject:o,selectedDoc:i}=(0,n.useApp)(),l=(0,a.usePathname)(),[d,c]=(0,r.useState)([]),[u,p]=(0,r.useState)(""),[h,m]=(0,r.useState)(!1),[x,b]=(0,r.useState)(null),g=(0,r.useRef)(null),y=(0,r.useRef)(null),v=(0,r.useRef)(null),j=(0,r.useRef)([]),w="/docs"===l?i?.path:void 0;function N(e){c(t=>[...t.slice(0,-1),e(t[t.length-1])])}async function k(e){let t=(e??u).trim();if(!t||h)return;void 0===e&&p(""),b(null),m(!0),c(e=>[...e,{role:"user",text:t,tools:[],proposals:[],plans:[],questions:[]},{role:"assistant",text:"",tools:[],proposals:[],plans:[],questions:[]}]);let r=j.current.splice(0),a=r.length?`[${r.join(" ")}]
|
|
2
|
-
|
|
3
|
-
${t}`:t,n=new AbortController;y.current=n;try{let e=await fetch(`/api/chat${s}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({message:a,sessionId:g.current,docPath:w}),signal:n.signal});if(!e.ok||!e.body){let t=await e.json().catch(()=>null);throw Error(t?.error??`Request failed (${e.status})`)}let t=e.body.getReader(),r=new TextDecoder,o="";for(;;){let{done:e,value:a}=await t.read();if(e)break;let n=(o+=r.decode(a,{stream:!0})).split("\n");for(let e of(o=n.pop()??"",n))if(e.trim())try{!function(e){if(e.session_id&&(g.current=e.session_id),"stream_event"===e.type){let t=e.event;t?.type==="message_start"?N(e=>e.text&&!e.text.endsWith("\n\n")?{...e,text:e.text+"\n\n"}:e):t?.type==="content_block_delta"&&t.delta?.type==="text_delta"&&N(e=>({...e,text:e.text+t.delta.text}))}else if("assistant"===e.type){let t=(e.message?.content??[]).filter(e=>"tool_use"===e.type),r=t.filter(e=>e.name.endsWith("vibedoc_propose_edit")&&"string"==typeof e.input?.path&&Array.isArray(e.input?.edits)).map(e=>({id:e.id,path:e.input.path,edits:e.input.edits,summary:"string"==typeof e.input.summary?e.input.summary:void 0,status:"pending"})),a=t.filter(e=>e.name.endsWith("vibedoc_propose_plan")).flatMap(e=>{let t=function(e){if(!eM(e))return null;let t=(e,t)=>Array.isArray(e)&&e.every(e=>eM(e)&&t.every(t=>"string"==typeof e[t])&&(void 0===e.dependsOn||Array.isArray(e.dependsOn)));if("breakdown"===e.kind)return"string"==typeof e.epic&&t(e.tasks,["key","title"])&&e.tasks.length>0?e:null;if("roadmap"===e.kind){let r=e.horizons??[],a=e.epics??[];return t(r,["key","title"])&&t(a,["key","title","parent"])?{kind:"roadmap",horizons:r,epics:a}:null}return null}(e.input?.plan);return t?[{id:e.id,plan:t,status:"pending"}]:[]}),n=t.filter(e=>{var t;return e.name.endsWith("vibedoc_ask_questions")&&Array.isArray(t=e.input?.questions)&&t.length>0&&t.every(e=>!!e&&"object"==typeof e&&"string"==typeof e.question&&"string"==typeof e.header&&Array.isArray(e.options)&&e.options.every(e=>!!e&&"object"==typeof e&&"string"==typeof e.label))}).map(e=>({id:e.id,questions:e.input.questions})),s=["vibedoc_propose_edit","vibedoc_propose_plan","vibedoc_ask_questions"],o=t.filter(e=>!s.some(t=>e.name.endsWith(t))).map(e=>e.name.replace(/^mcp__vibedoc__vibedoc_/,""));(o.length||r.length||a.length||n.length)&&N(e=>({...e,tools:[...e.tools,...o],proposals:[...e.proposals,...r],plans:[...e.plans,...a],questions:[...e.questions,...n]}))}else if("user"===e.type){let t=new Set((e.message?.content??[]).filter(e=>"tool_result"===e.type&&e.is_error).map(e=>e.tool_use_id));t.size&&N(e=>({...e,proposals:e.proposals.filter(e=>!t.has(e.id)),plans:e.plans.filter(e=>!t.has(e.id)),questions:e.questions.filter(e=>!t.has(e.id))}))}else"result"===e.type&&e.is_error?N(t=>({...t,error:e.result??e.subtype??"Agent error"})):"error"===e.type&&N(t=>({...t,error:e.message}))}(JSON.parse(e))}catch{}}}catch(e){n.signal.aborted||N(t=>({...t,error:e.message}))}finally{m(!1)}}(0,r.useEffect)(()=>{y.current?.abort(),g.current=null,j.current=[],c([])},[o]),(0,r.useEffect)(()=>{let e=v.current;e&&(e.scrollTop=e.scrollHeight)},[d]),(0,r.useEffect)(()=>{function e(e){let t=e.detail?.message;t&&(h?b("Agent is busy. Try again when this turn finishes."):k(t))}return window.addEventListener(eT.ASK_AGENT_EVENT,e),()=>window.removeEventListener(eT.ASK_AGENT_EVENT,e)});let S=!!d[d.length-1]?.questions.some(e=>!e.answers);return(0,t.jsxs)("aside",{className:"w-[380px] h-full border-l border-border bg-surface flex flex-col",children:[(0,t.jsxs)("div",{className:"h-10 px-3 flex items-center gap-2 border-b border-border",children:[(0,t.jsx)("span",{className:"text-xs font-mono uppercase tracking-widest text-muted",children:"Agent"}),(0,t.jsx)("div",{className:"flex-1"}),(0,t.jsx)("button",{onClick:function(){y.current?.abort(),g.current=null,j.current=[],c([])},className:"text-xs text-muted hover:text-txt",children:"New chat"}),(0,t.jsx)("button",{onClick:e,className:"text-muted hover:text-txt text-lg leading-none","aria-label":"Close chat",children:"×"})]}),(0,t.jsxs)("div",{ref:v,className:"flex-1 overflow-y-auto p-3 space-y-3 text-sm",children:[0===d.length&&(0,t.jsx)("p",{className:"text-muted text-xs",children:"Ask the agent to read, write or restructure docs. Runs on your local Claude Code login."}),d.map((e,r)=>(0,t.jsx)("div",{className:(0,f.cn)("user"===e.role&&"ml-8 rounded-lg bg-surface2 px-3 py-2 whitespace-pre-wrap"),children:"user"===e.role?e.text:(0,t.jsxs)(t.Fragment,{children:[e.tools.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap gap-1 mb-2",children:e.tools.map((e,r)=>(0,t.jsx)("span",{className:"text-[10px] font-mono px-1.5 py-0.5 rounded-sm bg-surface2 border border-border text-accent",children:e},r))}),e.proposals.map(e=>(0,t.jsx)(eS,{proposal:e,onResolve:t=>{var r,a;return r=e.id,a=e.path,void(j.current.push(`User ${t} your proposed edit to ${a}.`),c(e=>e.map(e=>({...e,proposals:e.proposals.map(e=>e.id===r?{...e,status:t}:e)}))))}},e.id)),e.plans.map(e=>(0,t.jsx)(e_,{proposal:e,onResolve:(t,r,a)=>{let n;return n="breakdown"===e.plan.kind?e.plan.epic.toUpperCase():"the roadmap",void(j.current.push("accepted"===t?`User accepted plan for ${n}: created ${r.map(e=>e.id).join(", ")}${a.length?` (unchecked: ${a.join(", ")})`:""}.`:`User rejected the plan for ${n}.`),c(a=>a.map(a=>({...a,plans:a.plans.map(a=>a.id===e.id?{...a,status:t,created:r}:a)}))))}},e.id)),e.questions.map(e=>(0,t.jsx)(eA,{set:e,disabled:h,onSubmit:t=>(function(e,t){if(!h){var r;c(r=>r.map(r=>({...r,questions:r.questions.map(r=>r.id===e.id?{...r,answers:t}:r)}))),k((r=e.questions,["Answers:",...r.map((e,r)=>`- ${e.header}: ${t[r]}`)].join("\n")))}})(e,t)},e.id)),e.text&&(0,t.jsx)(ek.MarkdownRenderer,{content:e.text,className:"text-sm"}),!e.text&&!e.error&&h&&r===d.length-1&&(0,t.jsx)("span",{className:"text-muted text-xs",children:"Thinking…"}),e.error&&(0,t.jsx)("p",{className:"text-red-400 text-xs whitespace-pre-wrap",children:e.error})]})},r))]}),(0,t.jsxs)("div",{className:"border-t border-border p-2",children:[x&&(0,t.jsx)("div",{className:"text-[11px] text-amber px-1 pb-1",children:x}),w&&(0,t.jsxs)("div",{className:"text-[10px] font-mono text-muted px-1 pb-1 truncate",children:["@ ",w]}),(0,t.jsx)("textarea",{value:u,onChange:e=>p(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||e.nativeEvent.isComposing||(e.preventDefault(),k())},rows:3,placeholder:h?"Agent is working…":S?"Answer the questions above…":"Ask the agent… (Enter to send)",className:"w-full resize-none rounded-md bg-surface2 border border-border px-2 py-1.5 text-sm text-txt placeholder:text-muted focus:outline-hidden focus:border-accent"})]})]})}let eP=[{key:"Cmd+K",description:"Open command palette"},{key:"Cmd+P",description:"Go to file"},{key:"b",description:"Go to Board"},{key:"d",description:"Go to Docs"},{key:"a",description:"Go to Activity"},{key:"m",description:"Go to Memory"},{key:"e",description:"Go to Explorer"},{key:"c",description:"Toggle agent chat"},{key:"/",description:"Focus doc search"},{key:"?",description:"Toggle this help"},{key:"Esc",description:"Close panel / modal"}];function eO({children:e}){let{loading:s,summary:o,projects:i,activeProject:d,liveIndicator:c,onProjectChange:u,board:p,openDoc:h,rootParam:m}=(0,n.useApp)(),x=(0,a.useRouter)(),b=(0,a.usePathname)(),[g,y]=(0,r.useState)(!1),[v,j]=(0,r.useState)(!1),[w,N]=(0,r.useState)(!1),[k,S]=(0,r.useState)(!1),[_,C]=(0,r.useState)(!1);return((0,r.useEffect)(()=>{function e(e){if((e.metaKey||e.ctrlKey)&&"k"===e.key){e.preventDefault(),j(e=>!e);return}if((e.metaKey||e.ctrlKey)&&"p"===e.key){e.preventDefault(),j(!1),N(e=>!e);return}let t=e.target?.tagName;if("INPUT"!==t&&"TEXTAREA"!==t)switch(e.key){case"b":x.push("/board");break;case"d":x.push("/docs");break;case"a":x.push("/activity");break;case"m":x.push("/memory");break;case"e":x.push("/explorer");break;case"c":C(e=>!e);break;case"?":y(e=>!e);break;case"Escape":y(!1);break;case"/":e.preventDefault(),"/docs"===b?document.getElementById("doc-search")?.focus():x.push("/docs")}}return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[x,b]),(0,r.useEffect)(()=>{let e=()=>C(!0);return window.addEventListener(eT.ASK_AGENT_EVENT,e),()=>window.removeEventListener(eT.ASK_AGENT_EVENT,e)},[]),s)?(0,t.jsx)(l,{}):(0,t.jsxs)(E,{children:[(0,t.jsx)(eu,{board:p}),(0,t.jsxs)(T,{className:"min-w-0",children:[(0,t.jsx)(B,{summary:o,projects:i,activeProject:d,liveIndicator:c,onProjectChange:u,onToggleChat:()=>C(e=>!e)}),(0,t.jsxs)("div",{className:"flex flex-1 min-h-0",children:[(0,t.jsx)("main",{className:"flex-1 overflow-y-auto",children:e}),(0,t.jsx)("div",{inert:!_,className:(0,f.cn)("shrink-0 overflow-hidden sticky top-12 h-[calc(100svh-3rem)] transition-[width] duration-[var(--duration-slow)] ease-out-soft",_?"w-[380px]":"w-0"),children:(0,t.jsx)(eR,{onClose:()=>C(!1)})})]}),(0,t.jsx)(ew,{open:w,onClose:()=>N(!1),onOpenDoc:h,rootParam:m}),(0,t.jsx)(ey,{open:v,onClose:()=>j(!1),onOpenDoc:h,onNewDoc:()=>{j(!1),S(!0)},rootParam:m}),(0,t.jsx)(eN.NewDocModal,{open:k,onOpenChange:S,rootParam:m,onDocCreated:async e=>{await h(e)}}),(0,t.jsx)(eb.Dialog,{open:g,onOpenChange:y,children:(0,t.jsxs)(eb.DialogContent,{"aria-describedby":void 0,className:"block w-80 p-5 rounded-xl sm:rounded-xl shadow-2xl",children:[(0,t.jsx)(eb.DialogTitle,{className:"font-display text-sm font-semibold text-txt mb-4",children:"Keyboard shortcuts"}),(0,t.jsx)("table",{className:"w-full text-xs",children:(0,t.jsx)("tbody",{children:eP.map(({key:e,description:r})=>(0,t.jsxs)("tr",{className:"border-t border-border first:border-0",children:[(0,t.jsx)("td",{className:"py-1.5 pr-4",children:(0,t.jsx)("kbd",{className:"font-mono bg-surface2 border border-border rounded-sm px-1.5 py-0.5 text-accent",children:e})}),(0,t.jsx)("td",{className:"py-1.5 text-muted",children:r})]},e))})})]})})]})]})}e.s(["default",0,function({children:e}){return(0,t.jsxs)(n.AppProvider,{children:[(0,t.jsx)(i,{}),(0,t.jsx)(eO,{children:e})]})}],588537)}]);
|