vibedoc 1.8.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +6 -0
- package/.next/build-manifest.json +3 -3
- package/.next/prerender-manifest.json +13 -13
- package/.next/routes-manifest.json +36 -0
- package/.next/server/app/(app)/activity/page.js +2 -2
- 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.js +2 -2
- 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)/chat/page.js +2 -2
- package/.next/server/app/(app)/chat/page.js.nft.json +1 -1
- package/.next/server/app/(app)/chat/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/docs/page.js +2 -2
- 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.js +2 -2
- 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)/manual-tests/page.js +2 -2
- package/.next/server/app/(app)/manual-tests/page.js.nft.json +1 -1
- package/.next/server/app/(app)/manual-tests/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/memory/page.js +2 -2
- 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.js +2 -2
- 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.js +2 -2
- 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.js +2 -2
- 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.js +2 -2
- 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.js +2 -2
- 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 +22 -23
- package/.next/server/app/activity.segments/!KGFwcCk/activity/__PAGE__.segment.rsc +11 -9
- package/.next/server/app/activity.segments/_full.segment.rsc +22 -23
- package/.next/server/app/activity.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/api/activity/route.js +2 -2
- package/.next/server/app/api/activity/route.js.nft.json +1 -1
- package/.next/server/app/api/backlinks/route.js +2 -2
- 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 +2 -2
- package/.next/server/app/api/context/route.js.nft.json +1 -1
- package/.next/server/app/api/conversations/route.js +3 -3
- package/.next/server/app/api/conversations/route.js.nft.json +1 -1
- package/.next/server/app/api/decisions/route.js +2 -2
- 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/explorer/route.js +3 -3
- package/.next/server/app/api/explorer/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/route.js +3 -3
- package/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/.next/server/app/api/memory/entries/delete/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/memory/entries/delete/route/build-manifest.json +12 -0
- package/.next/server/app/api/memory/entries/delete/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/memory/entries/delete/route.js +9 -0
- package/.next/server/app/api/memory/entries/delete/route.js.map +5 -0
- package/.next/server/app/api/memory/entries/delete/route.js.nft.json +1 -0
- package/.next/server/app/api/memory/entries/delete/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/memory/entries/restore/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/memory/entries/restore/route/build-manifest.json +12 -0
- package/.next/server/app/api/memory/entries/restore/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/memory/entries/restore/route.js +9 -0
- package/.next/server/app/api/memory/entries/restore/route.js.map +5 -0
- package/.next/server/app/api/memory/entries/restore/route.js.nft.json +1 -0
- package/.next/server/app/api/memory/entries/restore/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/memory/entries/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/memory/entries/route/build-manifest.json +12 -0
- package/.next/server/app/api/memory/entries/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/memory/entries/route.js +8 -0
- package/.next/server/app/api/memory/entries/route.js.map +5 -0
- package/.next/server/app/api/memory/entries/route.js.nft.json +1 -0
- package/.next/server/app/api/memory/entries/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/memory/entries/save/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/memory/entries/save/route/build-manifest.json +12 -0
- package/.next/server/app/api/memory/entries/save/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/memory/entries/save/route.js +9 -0
- package/.next/server/app/api/memory/entries/save/route.js.map +5 -0
- package/.next/server/app/api/memory/entries/save/route.js.nft.json +1 -0
- package/.next/server/app/api/memory/entries/save/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/memory/graph/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/memory/graph/route/build-manifest.json +12 -0
- package/.next/server/app/api/memory/graph/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/memory/graph/route.js +9 -0
- package/.next/server/app/api/memory/graph/route.js.map +5 -0
- package/.next/server/app/api/memory/graph/route.js.nft.json +1 -0
- package/.next/server/app/api/memory/graph/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/memory/history/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/memory/history/route/build-manifest.json +12 -0
- package/.next/server/app/api/memory/history/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/memory/history/route.js +9 -0
- package/.next/server/app/api/memory/history/route.js.map +5 -0
- package/.next/server/app/api/memory/history/route.js.nft.json +1 -0
- package/.next/server/app/api/memory/history/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/memory/route.js +2 -2
- package/.next/server/app/api/memory/route.js.nft.json +1 -1
- package/.next/server/app/api/plan/apply/route.js +3 -3
- package/.next/server/app/api/plan/apply/route.js.nft.json +1 -1
- package/.next/server/app/api/projects/route.js +2 -2
- package/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/.next/server/app/api/registry/route.js +2 -2
- package/.next/server/app/api/registry/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/create/route.js +3 -3
- package/.next/server/app/api/roadmap/create/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/delete/route.js +3 -3
- package/.next/server/app/api/roadmap/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/generate/route.js +3 -3
- package/.next/server/app/api/roadmap/generate/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/layout/route.js +3 -3
- package/.next/server/app/api/roadmap/layout/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/restore/route.js +3 -3
- package/.next/server/app/api/roadmap/restore/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/route.js +2 -2
- package/.next/server/app/api/roadmap/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/update/route.js +3 -3
- package/.next/server/app/api/roadmap/update/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/route.js +2 -2
- package/.next/server/app/api/sessions/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/route.js +2 -2
- package/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/.next/server/app/api/setup/generate/route.js +4 -4
- package/.next/server/app/api/setup/generate/route.js.nft.json +1 -1
- package/.next/server/app/api/setup/write/route.js +2 -2
- package/.next/server/app/api/setup/write/route.js.nft.json +1 -1
- package/.next/server/app/api/summary/route.js +2 -2
- package/.next/server/app/api/summary/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/bulk/route.js +3 -3
- package/.next/server/app/api/tasks/bulk/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/create/route.js +2 -2
- package/.next/server/app/api/tasks/create/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/delete/route.js +3 -3
- package/.next/server/app/api/tasks/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/manual-tests/route.js +2 -2
- package/.next/server/app/api/tasks/manual-tests/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/restore/route.js +3 -3
- package/.next/server/app/api/tasks/restore/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/review/route.js +3 -3
- package/.next/server/app/api/tasks/review/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/route.js +2 -2
- package/.next/server/app/api/tasks/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/update/route.js +3 -3
- package/.next/server/app/api/tasks/update/route.js.nft.json +1 -1
- package/.next/server/app/api/views/route.js +3 -3
- package/.next/server/app/api/views/route.js.nft.json +1 -1
- package/.next/server/app/board.html +1 -1
- package/.next/server/app/board.rsc +22 -23
- package/.next/server/app/board.segments/!KGFwcCk/board/__PAGE__.segment.rsc +6 -6
- package/.next/server/app/board.segments/_full.segment.rsc +22 -23
- package/.next/server/app/board.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/chat.html +1 -1
- package/.next/server/app/chat.rsc +22 -23
- package/.next/server/app/chat.segments/!KGFwcCk/chat/__PAGE__.segment.rsc +9 -11
- package/.next/server/app/chat.segments/_full.segment.rsc +22 -23
- package/.next/server/app/chat.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/docs.html +1 -1
- package/.next/server/app/docs.rsc +22 -23
- package/.next/server/app/docs.segments/!KGFwcCk/docs/__PAGE__.segment.rsc +6 -6
- package/.next/server/app/docs.segments/_full.segment.rsc +22 -23
- 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 +22 -23
- package/.next/server/app/explorer.segments/!KGFwcCk/explorer/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/explorer.segments/_full.segment.rsc +22 -23
- 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/manual-tests.html +1 -1
- package/.next/server/app/manual-tests.rsc +22 -23
- package/.next/server/app/manual-tests.segments/!KGFwcCk/manual-tests/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/manual-tests.segments/_full.segment.rsc +22 -23
- package/.next/server/app/manual-tests.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/memory.html +1 -1
- package/.next/server/app/memory.rsc +23 -23
- package/.next/server/app/memory.segments/!KGFwcCk/memory/__PAGE__.segment.rsc +12 -10
- package/.next/server/app/memory.segments/_full.segment.rsc +23 -23
- package/.next/server/app/memory.segments/_tree.segment.rsc +3 -2
- package/.next/server/app/page.js +2 -2
- 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 +22 -23
- package/.next/server/app/roadmap.segments/!KGFwcCk/roadmap/__PAGE__.segment.rsc +6 -6
- package/.next/server/app/roadmap.segments/_full.segment.rsc +22 -23
- 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 +22 -23
- package/.next/server/app/settings.segments/!KGFwcCk/settings/__PAGE__.segment.rsc +10 -9
- package/.next/server/app/settings.segments/_full.segment.rsc +22 -23
- 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 +22 -23
- package/.next/server/app/setup.segments/!KGFwcCk/setup/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/setup.segments/_full.segment.rsc +22 -23
- package/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
- package/.next/server/app-paths-manifest.json +6 -0
- package/.next/server/chunks/{11mp_@anthropic-ai_sdk_00p3fu1._.js → 11mp_@anthropic-ai_sdk_0-_cqh8._.js} +1 -1
- package/.next/server/chunks/{11mp_@anthropic-ai_sdk_01jjl08._.js → 11mp_@anthropic-ai_sdk_00o5o78._.js} +1 -1
- package/.next/server/chunks/{11mp_@anthropic-ai_sdk_01amtux._.js → 11mp_@anthropic-ai_sdk_03cp17a._.js} +1 -1
- package/.next/server/chunks/{11mp_@anthropic-ai_sdk_071zfm8._.js → 11mp_@anthropic-ai_sdk_07dk2er._.js} +1 -1
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0_e9zpr._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0_xx_qf._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0aer9lc._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0ax30pe._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0gn7vgs._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0hye94a._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0ir5cgk._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0je0_pa._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0jfgh0o._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0mha4x1._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0n__boa._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0sqv26_._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0wnc6g-._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0xh0g59._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1-5wyhj._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_13ahm3n._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_13e6aq4._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_14eg0ld._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_15md1n2._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_16av8b9._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_16hjhv1._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_16txvf7._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_198yu7d._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1_9tfq3._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1_izr2o._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1fljcyg._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1lrt6ul._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1nev_ee._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1pgoe2i._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1rgl7mu._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1slq49k._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1slq49k._.js.map +1 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1t9bdf0._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1t9bdf0._.js.map +1 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1u6qqm2._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1u6qqm2._.js.map +1 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1v7ygvz._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1v7ygvz._.js.map +1 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1wls8zc._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1wls8zc._.js.map +1 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ywboja._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ywboja._.js.map +1 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_00kwqu5._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_01j2nrd._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_05ybj3t._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0adt7jj._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0bnl14w._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0f557t9._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0ra6giw._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_107cqfx._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1377sl6._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1_2hcok._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1g--m6y._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1geopi5._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1i11dte._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1mj3_qk._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1qgy210._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1rkng9q._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1vr8q8y._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1x8b64g._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1x8b64g._.js.map +1 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1zhahf7._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1zhahf7._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__008focd._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1vh9g2o._.js.map → [root-of-the-server]__008focd._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__01xmabe._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1-e3i_5._.js.map → [root-of-the-server]__01xmabe._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__03ogp2r._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__03ogp2r._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__05us508._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0vcsqzd._.js.map → [root-of-the-server]__05us508._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__08yaps5._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1ezzeji._.js.map → [root-of-the-server]__08yaps5._.js.map} +1 -1
- package/.next/server/chunks/{[root-of-the-server]__11s-8eg._.js → [root-of-the-server]__09oyvwa._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__1wr0m-s._.js.map → [root-of-the-server]__09oyvwa._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0axugex._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0-pmfg2._.js.map → [root-of-the-server]__0axugex._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0b2488c._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0b5pwze._.js.map → [root-of-the-server]__0b2488c._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0b6w_wb._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0b6w_wb._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__04tibmn._.js → [root-of-the-server]__0cbh1s-._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__02co2yq._.js.map → [root-of-the-server]__0cbh1s-._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0exzf-v._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1qusy4g._.js.map → [root-of-the-server]__0exzf-v._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0gnil0m._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__18kxo4a._.js.map → [root-of-the-server]__0gnil0m._.js.map} +1 -1
- package/.next/server/chunks/{[root-of-the-server]__1mrmaf9._.js → [root-of-the-server]__0hfyuhq._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__0hfyuhq._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0hg1r2b._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0q3-t8a._.js.map → [root-of-the-server]__0hg1r2b._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0ikbk15._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__19k8t87._.js.map → [root-of-the-server]__0ikbk15._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0jr_5eq._.js +110 -0
- package/.next/server/chunks/[root-of-the-server]__0jr_5eq._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0khz7sy._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1jxu2x9._.js.map → [root-of-the-server]__0khz7sy._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0lf11mz._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1lj_2cv._.js.map → [root-of-the-server]__0lf11mz._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0m8hmg0._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1umrorf._.js.map → [root-of-the-server]__0m8hmg0._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0qij7wy._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1vq38ov._.js.map → [root-of-the-server]__0qij7wy._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0vf-0gp._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0vf-0gp._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0x8wtot._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__05g5cgo._.js.map → [root-of-the-server]__0x8wtot._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0y5usoz._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1-ic3af._.js.map → [root-of-the-server]__0y5usoz._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__15c5snv._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__05l6129._.js.map → [root-of-the-server]__15c5snv._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__16u25oa._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0druay_._.js.map → [root-of-the-server]__16u25oa._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__18dt3sr._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__14aeqoi._.js.map → [root-of-the-server]__18dt3sr._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__19rxcu4._.js +110 -0
- package/.next/server/chunks/[root-of-the-server]__19rxcu4._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1_qenei._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1_qenei._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1a7d63a._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__11a4ptn._.js.map → [root-of-the-server]__1a7d63a._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1b448u7._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__197vw9g._.js.map → [root-of-the-server]__1b448u7._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1e68zmx._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__15ck1wv._.js.map → [root-of-the-server]__1e68zmx._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1gvv2xp._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__04tibmn._.js.map → [root-of-the-server]__1gvv2xp._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1jel07j._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__12nzy_6._.js.map → [root-of-the-server]__1jel07j._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1jz98vb._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__0p6ja6l._.js.map → [root-of-the-server]__1jz98vb._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1la-6xe._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1la-6xe._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1p6-0l0._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1xb0fmp._.js.map → [root-of-the-server]__1p6-0l0._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1qd-ecl._.js +110 -0
- package/.next/server/chunks/[root-of-the-server]__1qd-ecl._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1r_0uma._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__11s-8eg._.js.map → [root-of-the-server]__1r_0uma._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1ssunti._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1mrmaf9._.js.map → [root-of-the-server]__1ssunti._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__1tu85zx._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1tu85zx._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1wcd2x9._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1wcd2x9._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1xpp36t._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1xpp36t._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1z3tswg._.js +3 -0
- package/.next/server/chunks/{[root-of-the-server]__1n68akx._.js.map → [root-of-the-server]__1z3tswg._.js.map} +1 -1
- package/.next/server/chunks/_04byth9._.js +33 -23
- package/.next/server/chunks/_04byth9._.js.map +1 -1
- package/.next/server/chunks/_0safx0g._.js +10 -0
- package/.next/server/chunks/_0safx0g._.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_entries_delete_route_actions_1a4-ad5.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_entries_delete_route_actions_1a4-ad5.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_entries_restore_route_actions_07637mh.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_entries_restore_route_actions_07637mh.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_entries_route_actions_0bxuv92.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_entries_route_actions_0bxuv92.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_entries_save_route_actions_0bwga-2.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_entries_save_route_actions_0bwga-2.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_graph_route_actions_0pca9et.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_graph_route_actions_0pca9et.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_history_route_actions_0w5pu5p.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_history_route_actions_0w5pu5p.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0opgo3t._.js +14 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__0noc5ay._.js.map → [root-of-the-server]__0opgo3t._.js.map} +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1jv5ug1._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__1pk-w2i._.js.map → [root-of-the-server]__1jv5ug1._.js.map} +1 -1
- package/.next/server/chunks/ssr/_0i75x-o._.js +3 -0
- package/.next/server/chunks/ssr/_0i75x-o._.js.map +1 -0
- package/.next/server/chunks/ssr/_15qpb4z._.js +3 -0
- package/.next/server/chunks/ssr/_15qpb4z._.js.map +1 -0
- package/.next/server/chunks/ssr/_1fg0usp._.js +3 -0
- package/.next/server/chunks/ssr/_1fg0usp._.js.map +1 -0
- package/.next/server/chunks/ssr/_1h0wfpz._.js +3 -0
- package/.next/server/chunks/ssr/_1h0wfpz._.js.map +1 -0
- package/.next/server/chunks/ssr/_1ocnpth._.js +3 -0
- package/.next/server/chunks/ssr/_1ocnpth._.js.map +1 -0
- package/.next/server/chunks/ssr/{_14emfpq._.js → _1uno162._.js} +2 -2
- package/.next/server/chunks/ssr/_1uno162._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules__pnpm_0al3nfy._.js +3 -0
- package/.next/server/chunks/ssr/node_modules__pnpm_0al3nfy._.js.map +1 -0
- package/.next/server/chunks/ssr/{_1ftruw6._.js → node_modules__pnpm_0aoa6rg._.js} +2 -2
- package/.next/server/chunks/ssr/node_modules__pnpm_0aoa6rg._.js.map +1 -0
- package/.next/server/chunks/ssr/src_app_(app)_memory_page_tsx_19jhb1c._.js +13 -0
- package/.next/server/chunks/ssr/src_app_(app)_memory_page_tsx_19jhb1c._.js.map +1 -0
- package/.next/server/chunks/ssr/src_app_(app)_settings_page_tsx_0zevtee._.js +1 -1
- package/.next/server/chunks/ssr/src_app_(app)_settings_page_tsx_0zevtee._.js.map +1 -1
- package/.next/server/chunks/ssr/src_components_0eyr_zi._.js +3 -0
- package/.next/server/chunks/ssr/src_components_0eyr_zi._.js.map +1 -0
- package/.next/server/chunks/ssr/src_components_1s861m8._.js +3 -0
- package/.next/server/chunks/ssr/src_components_1s861m8._.js.map +1 -0
- package/.next/server/middleware-build-manifest.js +3 -3
- 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/0b547y6rqct9z.js +1 -0
- package/.next/static/chunks/0e3ha56i_0j05.css +1 -0
- package/.next/static/chunks/0f32hudp0yir7.js +2 -0
- package/.next/static/chunks/0rsmz1jgro1kj.js +1 -0
- package/.next/static/chunks/0wnq_kh8-6wc1.js +2 -0
- package/.next/static/chunks/1acpfyut6j4e2.js +1 -0
- package/.next/static/chunks/{1xyepk9227yej.js → 1l_dys0-y5-r7.js} +6 -6
- package/.next/static/chunks/1rko_88i85yqb.js +21 -0
- package/.next/static/chunks/20mdcup14_0yi.js +11 -0
- package/.next/static/chunks/24u_rc2tbkhai.js +3 -0
- package/.next/static/chunks/2p-pkveutoh75.js +1 -0
- package/.next/static/chunks/{41oxcdcw-pcwt.js → 329sozud9-tvr.js} +1 -1
- package/.next/static/chunks/3qqvn9vv6i0gy.js +68 -0
- package/.next/static/chunks/{2_xpm7qhr69n8.js → 3xqcluqa32mjv.js} +2 -2
- package/README.md +11 -4
- package/package.json +1 -1
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_07v3boe._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_09iva72._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0bom1b1._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0dvji7p._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0dzo8jn._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0hvqsqq._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0i7i-jw._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0k0iop5._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0l3-6aq._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0oegm3y._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0p5cyes._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0qw8i6_._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_0yk-a7v._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_11fsqvb._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_143_7ez._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_14a4-64._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_17d_oma._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_18qwuyb._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_19au8y6._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ak_hy5._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1cqa0nq._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1i-x_q0._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1jmtliz._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1jouwlj._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1r_q5um._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1t959xd._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1vkprw9._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1y95ax9._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1y9misr._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_21b8wwy._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_08ecfgc._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_09--sd6._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0e3mwc6._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0go4301._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0iq9dmt._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0n9ijke._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0szcyrx._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0xy2s3x._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0yaujn7._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0z9ly74._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1hmq3al._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1tqk4bp._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1x-hr6f._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1zsdhg0._.js +0 -3
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_20t__fe._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0-pmfg2._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__02co2yq._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__05g5cgo._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__05l6129._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0b5pwze._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0druay_._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0p6ja6l._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0q3-t8a._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0vcsqzd._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1-e3i_5._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1-ic3af._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__11a4ptn._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__11c8641._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__12nzy_6._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__14aeqoi._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__15ck1wv._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1613hjb._.js +0 -99
- package/.next/server/chunks/[root-of-the-server]__1613hjb._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__169hmq_._.js +0 -10
- package/.next/server/chunks/[root-of-the-server]__169hmq_._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__18kxo4a._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__197vw9g._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__19k8t87._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1ezzeji._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1jxu2x9._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1lj_2cv._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1n68akx._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1npya5q._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1qusy4g._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1umrorf._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1vh9g2o._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1vq38ov._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1wr0m-s._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1xb0fmp._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0noc5ay._.js +0 -14
- package/.next/server/chunks/ssr/[root-of-the-server]__1pk-w2i._.js +0 -3
- package/.next/server/chunks/ssr/_09b02z-._.js +0 -3
- package/.next/server/chunks/ssr/_09b02z-._.js.map +0 -1
- package/.next/server/chunks/ssr/_0d0f1s1._.js +0 -3
- package/.next/server/chunks/ssr/_0d0f1s1._.js.map +0 -1
- package/.next/server/chunks/ssr/_0lnt_va._.js +0 -4
- package/.next/server/chunks/ssr/_0lnt_va._.js.map +0 -1
- package/.next/server/chunks/ssr/_0qlymco._.js +0 -3
- package/.next/server/chunks/ssr/_0qlymco._.js.map +0 -1
- package/.next/server/chunks/ssr/_0sg1oeq._.js +0 -3
- package/.next/server/chunks/ssr/_0sg1oeq._.js.map +0 -1
- package/.next/server/chunks/ssr/_14emfpq._.js.map +0 -1
- package/.next/server/chunks/ssr/_1ftruw6._.js.map +0 -1
- package/.next/server/chunks/ssr/_1x7ggg5._.js +0 -4
- package/.next/server/chunks/ssr/_1x7ggg5._.js.map +0 -1
- package/.next/server/chunks/ssr/node_modules__pnpm_1q89l7p._.js +0 -3
- package/.next/server/chunks/ssr/node_modules__pnpm_1q89l7p._.js.map +0 -1
- package/.next/server/chunks/ssr/src_1lkod9y._.js +0 -8
- package/.next/server/chunks/ssr/src_1lkod9y._.js.map +0 -1
- package/.next/static/chunks/0p1-hkgnm2ll2.js +0 -1
- package/.next/static/chunks/0pgu5q5vodev6.js +0 -1
- package/.next/static/chunks/0rqzvayflendx.js +0 -2
- package/.next/static/chunks/0vcfs7dii85tw.js +0 -21
- package/.next/static/chunks/150y5rwg6gwvx.css +0 -1
- package/.next/static/chunks/1fd43t9y42wd3.js +0 -1
- package/.next/static/chunks/1q50zh5z-fq2k.js +0 -2
- package/.next/static/chunks/2ls_yp4-qgb42.js +0 -1
- package/.next/static/chunks/2zz0ip2l_29c3.js +0 -3
- package/.next/static/chunks/3h4ehgq7i44wb.js +0 -6
- package/.next/static/chunks/3vf5nnd4xjo5_.js +0 -1
- package/.next/static/chunks/40jaenrnspnlh.js +0 -68
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_00p3fu1._.js.map → 11mp_@anthropic-ai_sdk_0-_cqh8._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_01amtux._.js.map → 11mp_@anthropic-ai_sdk_00o5o78._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_01jjl08._.js.map → 11mp_@anthropic-ai_sdk_03cp17a._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_071zfm8._.js.map → 11mp_@anthropic-ai_sdk_07dk2er._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_07v3boe._.js.map → 11mp_@anthropic-ai_sdk_0_e9zpr._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_09iva72._.js.map → 11mp_@anthropic-ai_sdk_0_xx_qf._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0bom1b1._.js.map → 11mp_@anthropic-ai_sdk_0aer9lc._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0dvji7p._.js.map → 11mp_@anthropic-ai_sdk_0ax30pe._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0dzo8jn._.js.map → 11mp_@anthropic-ai_sdk_0gn7vgs._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0hvqsqq._.js.map → 11mp_@anthropic-ai_sdk_0hye94a._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0i7i-jw._.js.map → 11mp_@anthropic-ai_sdk_0ir5cgk._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0k0iop5._.js.map → 11mp_@anthropic-ai_sdk_0je0_pa._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0l3-6aq._.js.map → 11mp_@anthropic-ai_sdk_0jfgh0o._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0oegm3y._.js.map → 11mp_@anthropic-ai_sdk_0mha4x1._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0p5cyes._.js.map → 11mp_@anthropic-ai_sdk_0n__boa._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0qw8i6_._.js.map → 11mp_@anthropic-ai_sdk_0sqv26_._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0yk-a7v._.js.map → 11mp_@anthropic-ai_sdk_0wnc6g-._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_11fsqvb._.js.map → 11mp_@anthropic-ai_sdk_0xh0g59._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_143_7ez._.js.map → 11mp_@anthropic-ai_sdk_1-5wyhj._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_14a4-64._.js.map → 11mp_@anthropic-ai_sdk_13ahm3n._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_17d_oma._.js.map → 11mp_@anthropic-ai_sdk_13e6aq4._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_18qwuyb._.js.map → 11mp_@anthropic-ai_sdk_14eg0ld._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_19au8y6._.js.map → 11mp_@anthropic-ai_sdk_15md1n2._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1ak_hy5._.js.map → 11mp_@anthropic-ai_sdk_16av8b9._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1cqa0nq._.js.map → 11mp_@anthropic-ai_sdk_16hjhv1._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1i-x_q0._.js.map → 11mp_@anthropic-ai_sdk_16txvf7._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1jmtliz._.js.map → 11mp_@anthropic-ai_sdk_198yu7d._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1jouwlj._.js.map → 11mp_@anthropic-ai_sdk_1_9tfq3._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1r_q5um._.js.map → 11mp_@anthropic-ai_sdk_1_izr2o._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1t959xd._.js.map → 11mp_@anthropic-ai_sdk_1fljcyg._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1vkprw9._.js.map → 11mp_@anthropic-ai_sdk_1lrt6ul._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1y95ax9._.js.map → 11mp_@anthropic-ai_sdk_1nev_ee._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1y9misr._.js.map → 11mp_@anthropic-ai_sdk_1pgoe2i._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_21b8wwy._.js.map → 11mp_@anthropic-ai_sdk_1rgl7mu._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_08ecfgc._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_00kwqu5._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_09--sd6._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_01j2nrd._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0e3mwc6._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_05ybj3t._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0go4301._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0adt7jj._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0iq9dmt._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0bnl14w._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0n9ijke._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0f557t9._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0szcyrx._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0ra6giw._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0xy2s3x._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_107cqfx._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0yaujn7._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1377sl6._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0z9ly74._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1_2hcok._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1hmq3al._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1g--m6y._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1tqk4bp._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1geopi5._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1x-hr6f._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1i11dte._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1zsdhg0._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1mj3_qk._.js.map} +0 -0
- /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_20t__fe._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1qgy210._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__11c8641._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1rkng9q._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__1npya5q._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1vr8q8y._.js.map} +0 -0
- /package/.next/static/{fGPda81_8-K4GmaNUE6KA → Q29Tn_NjyVms0d3pKn4Yx}/_buildManifest.js +0 -0
- /package/.next/static/{fGPda81_8-K4GmaNUE6KA → Q29Tn_NjyVms0d3pKn4Yx}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{fGPda81_8-K4GmaNUE6KA → Q29Tn_NjyVms0d3pKn4Yx}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
module.exports=[233405,(t,e,i)=>{e.exports=t.x("child_process",()=>require("child_process"))},522734,(t,e,i)=>{e.exports=t.x("fs",()=>require("fs"))},924868,(t,e,i)=>{e.exports=t.x("fs/promises",()=>require("fs/promises"))},687769,(t,e,i)=>{e.exports=t.x("node:events",()=>require("node:events"))},899871,(t,e,i)=>{e.exports=t.x("node:string_decoder",()=>require("node:string_decoder"))},857764,(t,e,i)=>{e.exports=t.x("node:url",()=>require("node:url"))},845285,471448,388985,731946,975283,31451,5704,531208,840980,806723,845122,404466,t=>{"use strict";var e=t.i(857764),i=t.i(750227),s=t.i(522734),r=t.i(902157),n=t.i(912714),a=t.i(687769),o=t.i(81111),l=t.i(899871),h=(t,e,i)=>{let s=t instanceof RegExp?d(t,i):t,r=e instanceof RegExp?d(e,i):e,n=null!==s&&null!=r&&u(s,r,i);return n&&{start:n[0],end:n[1],pre:i.slice(0,n[0]),body:i.slice(n[0]+s.length,n[1]),post:i.slice(n[1]+r.length)}},d=(t,e)=>{let i=e.match(t);return i?i[0]:null},u=(t,e,i)=>{let s,r,n,a,o,l=i.indexOf(t),h=i.indexOf(e,l+1),d=l;if(l>=0&&h>0){if(t===e)return[l,h];for(s=[],n=i.length;d>=0&&!o;){if(d===l)s.push(d),l=i.indexOf(t,d+1);else if(1===s.length){let t=s.pop();void 0!==t&&(o=[t,h])}else void 0!==(r=s.pop())&&r<n&&(n=r,a=h),h=i.indexOf(e,d+1);d=l<h&&l>=0?l:h}s.length&&void 0!==a&&(o=[n,a])}return o},c="\0SLASH"+Math.random()+"\0",f="\0OPEN"+Math.random()+"\0",p="\0CLOSE"+Math.random()+"\0",m="\0COMMA"+Math.random()+"\0",g="\0PERIOD"+Math.random()+"\0",w=RegExp(c,"g"),y=RegExp(f,"g"),b=RegExp(p,"g"),v=RegExp(m,"g"),S=RegExp(g,"g"),$=/\\\\/g,k=/\\{/g,E=/\\}/g,x=/\\,/g,C=/\\./g;function A(t){return isNaN(t)?t.charCodeAt(0):parseInt(t,10)}function O(t){return t.replace(w,"\\").replace(y,"{").replace(b,"}").replace(v,",").replace(S,".")}function j(t){return"{"+t+"}"}function T(t){return/^-?0\d/.test(t)}function F(t,e){return t<=e}function R(t,e){return t>=e}var _=t=>{if("string"!=typeof t)throw TypeError("invalid pattern");if(t.length>65536)throw TypeError("pattern is too long")},D={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},M=t=>t.replace(/[[\]\\-]/g,"\\$&"),N=(t,e)=>{if("["!==t.charAt(e))throw Error("not in a brace expression");let i=[],s=[],r=e+1,n=!1,a=!1,o=!1,l=!1,h=e,d="";t:for(;r<t.length;){let u=t.charAt(r);if(("!"===u||"^"===u)&&r===e+1){l=!0,r++;continue}if("]"===u&&n&&!o){h=r+1;break}if(n=!0,"\\"===u&&!o){o=!0,r++;continue}if("["===u&&!o){for(let[n,[o,l,h]]of Object.entries(D))if(t.startsWith(n,r)){if(d)return["$.",!1,t.length-e,!0];r+=n.length,h?s.push(o):i.push(o),a=a||l;continue t}}if(o=!1,d){u>d?i.push(M(d)+"-"+M(u)):u===d&&i.push(M(u)),d="",r++;continue}if(t.startsWith("-]",r+1)){i.push(M(u+"-")),r+=2;continue}if(t.startsWith("-",r+1)){d=u,r+=2;continue}i.push(M(u)),r++}if(h<r)return["",!1,0,!1];if(!i.length&&!s.length)return["$.",!1,t.length-e,!0];if(0===s.length&&1===i.length&&/^\\?.$/.test(i[0])&&!l)return[(2===i[0].length?i[0].slice(-1):i[0]).replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),!1,h-e,!1];let u="["+(l?"^":"")+i.join("")+"]",c="["+(l?"":"^")+s.join("")+"]";return[i.length&&s.length?"("+u+"|"+c+")":i.length?u:c,a,h-e,!0]},P=(t,{windowsPathsNoEscape:e=!1,magicalBraces:i=!0}={})=>i?e?t.replace(/\[([^\/\\])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1"):e?t.replace(/\[([^\/\\{}])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\{}])\]/g,"$1$2").replace(/\\([^\/{}])/g,"$1"),L=new Set(["!","?","+","*","@"]),I=t=>L.has(t),W="(?!\\.)",z=new Set(["[","."]),U=new Set(["..","."]),B=new Set("().*{}+?[]^$\\!"),G=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),q="[^/]",Y=q+"*?",J=q+"+?",H=class t{type;#t;#e;#i=!1;#s=[];#r;#n;#a;#o=!1;#l;#h;#d=!1;constructor(t,e,i={}){this.type=t,t&&(this.#e=!0),this.#r=e,this.#t=this.#r?this.#r.#t:this,this.#l=this.#t===this?i:this.#t.#l,this.#a=this.#t===this?[]:this.#t.#a,"!"!==t||this.#t.#o||this.#a.push(this),this.#n=this.#r?this.#r.#s.length:0}get hasMagic(){if(void 0!==this.#e)return this.#e;for(let t of this.#s)if("string"!=typeof t&&(t.type||t.hasMagic))return this.#e=!0;return this.#e}toString(){return void 0!==this.#h?this.#h:this.type?this.#h=this.type+"("+this.#s.map(t=>String(t)).join("|")+")":this.#h=this.#s.map(t=>String(t)).join("")}#u(){let t;if(this!==this.#t)throw Error("should only call on root");if(this.#o)return this;for(this.toString(),this.#o=!0;t=this.#a.pop();){if("!"!==t.type)continue;let e=t,i=e.#r;for(;i;){for(let s=e.#n+1;!i.type&&s<i.#s.length;s++)for(let e of t.#s){if("string"==typeof e)throw Error("string part in extglob AST??");e.copyIn(i.#s[s])}i=(e=i).#r}}return this}push(...e){for(let i of e)if(""!==i){if("string"!=typeof i&&!(i instanceof t&&i.#r===this))throw Error("invalid part: "+i);this.#s.push(i)}}toJSON(){let t=null===this.type?this.#s.slice().map(t=>"string"==typeof t?t:t.toJSON()):[this.type,...this.#s.map(t=>t.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#t||this.#t.#o&&this.#r?.type==="!")&&t.push({}),t}isStart(){if(this.#t===this)return!0;if(!this.#r?.isStart())return!1;if(0===this.#n)return!0;let e=this.#r;for(let i=0;i<this.#n;i++){let s=e.#s[i];if(!(s instanceof t&&"!"===s.type))return!1}return!0}isEnd(){if(this.#t===this||this.#r?.type==="!")return!0;if(!this.#r?.isEnd())return!1;if(!this.type)return this.#r?.isEnd();let t=this.#r?this.#r.#s.length:0;return this.#n===t-1}copyIn(t){"string"==typeof t?this.push(t):this.push(t.clone(this))}clone(e){let i=new t(this.type,e);for(let t of this.#s)i.copyIn(t);return i}static #c(e,i,s,r){let n=!1,a=!1,o=-1,l=!1;if(null===i.type){let h=s,d="";for(;h<e.length;){let s=e.charAt(h++);if(n||"\\"===s){n=!n,d+=s;continue}if(a){h===o+1?("^"===s||"!"===s)&&(l=!0):"]"!==s||h===o+2&&l||(a=!1),d+=s;continue}if("["===s){a=!0,o=h,l=!1,d+=s;continue}if(!r.noext&&I(s)&&"("===e.charAt(h)){i.push(d),d="";let n=new t(s,i);h=t.#c(e,n,h,r),i.push(n);continue}d+=s}return i.push(d),h}let h=s+1,d=new t(null,i),u=[],c="";for(;h<e.length;){let s=e.charAt(h++);if(n||"\\"===s){n=!n,c+=s;continue}if(a){h===o+1?("^"===s||"!"===s)&&(l=!0):"]"!==s||h===o+2&&l||(a=!1),c+=s;continue}if("["===s){a=!0,o=h,l=!1,c+=s;continue}if(I(s)&&"("===e.charAt(h)){d.push(c),c="";let i=new t(s,d);d.push(i),h=t.#c(e,i,h,r);continue}if("|"===s){d.push(c),c="",u.push(d),d=new t(null,i);continue}if(")"===s)return""===c&&0===i.#s.length&&(i.#d=!0),d.push(c),c="",i.push(...u,d),h;c+=s}return i.type=null,i.#e=void 0,i.#s=[e.substring(s-1)],h}static fromGlob(e,i={}){let s=new t(null,void 0,i);return t.#c(e,s,0,i),s}toMMPattern(){if(this!==this.#t)return this.#t.toMMPattern();let t=this.toString(),[e,i,s,r]=this.toRegExpSource();return s||this.#e||this.#l.nocase&&!this.#l.nocaseMagicOnly&&t.toUpperCase()!==t.toLowerCase()?Object.assign(RegExp(`^${e}$`,(this.#l.nocase?"i":"")+(r?"u":"")),{_src:e,_glob:t}):i}get options(){return this.#l}toRegExpSource(e){let i=e??!!this.#l.dot;if(this.#t===this&&this.#u(),!this.type){let s=this.isStart()&&this.isEnd()&&!this.#s.some(t=>"string"!=typeof t),r=this.#s.map(i=>{let[r,n,a,o]="string"==typeof i?t.#f(i,this.#e,s):i.toRegExpSource(e);return this.#e=this.#e||a,this.#i=this.#i||o,r}).join(""),n="";if(this.isStart()&&"string"==typeof this.#s[0]&&!(1===this.#s.length&&U.has(this.#s[0]))){let t=i&&z.has(r.charAt(0))||r.startsWith("\\.")&&z.has(r.charAt(2))||r.startsWith("\\.\\.")&&z.has(r.charAt(4)),s=!i&&!e&&z.has(r.charAt(0));n=t?"(?!(?:^|/)\\.\\.?(?:$|/))":s?W:""}let a="";return this.isEnd()&&this.#t.#o&&this.#r?.type==="!"&&(a="(?:$|\\/)"),[n+r+a,P(r),this.#e=!!this.#e,this.#i]}let s="*"===this.type||"+"===this.type,r="!"===this.type?"(?:(?!(?:":"(?:",n=this.#p(i);if(this.isStart()&&this.isEnd()&&!n&&"!"!==this.type){let t=this.toString();return this.#s=[t],this.type=null,this.#e=void 0,[t,P(this.toString()),!1,!1]}let a=!s||e||i||!W?"":this.#p(!0);a===n&&(a=""),a&&(n=`(?:${n})(?:${a})*?`);return["!"===this.type&&this.#d?(this.isStart()&&!i?W:"")+J:r+n+("!"===this.type?"))"+(!this.isStart()||i||e?"":W)+Y+")":"@"===this.type?")":"?"===this.type?")?":"+"===this.type&&a?")":"*"===this.type&&a?")?":`)${this.type}`),P(n),this.#e=!!this.#e,this.#i]}#p(t){return this.#s.map(e=>{if("string"==typeof e)throw Error("string type in extglob ast??");let[i,s,r,n]=e.toRegExpSource(t);return this.#i=this.#i||n,i}).filter(t=>!(this.isStart()&&this.isEnd())||!!t).join("|")}static #f(t,e,i=!1){let s=!1,r="",n=!1,a=!1;for(let o=0;o<t.length;o++){let l=t.charAt(o);if(s){s=!1,r+=(B.has(l)?"\\":"")+l;continue}if("*"===l){if(a)continue;a=!0,r+=i&&/^[*]+$/.test(t)?J:Y,e=!0;continue}if(a=!1,"\\"===l){o===t.length-1?r+="\\\\":s=!0;continue}if("["===l){let[i,s,a,l]=N(t,o);if(a){r+=i,n=n||s,o+=a-1,e=e||l;continue}}if("?"===l){r+=q,e=!0;continue}r+=G(l)}return[r,P(t),!!e,n]}},X=(t,{windowsPathsNoEscape:e=!1,magicalBraces:i=!1}={})=>i?e?t.replace(/[?*()[\]{}]/g,"[$&]"):t.replace(/[?*()[\]\\{}]/g,"\\$&"):e?t.replace(/[?*()[\]]/g,"[$&]"):t.replace(/[?*()[\]\\]/g,"\\$&"),Z=(t,e,i={})=>(_(e),(!!i.nocomment||"#"!==e.charAt(0))&&new tp(e,i).match(t)),V=/^\*+([^+@!?\*\[\(]*)$/,K=/^\*+\.\*+$/,Q=t=>!t.startsWith(".")&&t.includes("."),tt=t=>"."!==t&&".."!==t&&t.includes("."),te=/^\.\*+$/,ti=t=>"."!==t&&".."!==t&&t.startsWith("."),ts=/^\*+$/,tr=t=>0!==t.length&&!t.startsWith("."),tn=t=>0!==t.length&&"."!==t&&".."!==t,ta=/^\?+([^+@!?\*\[\(]*)?$/,to=([t])=>{let e=t.length;return t=>t.length===e&&!t.startsWith(".")},tl=([t])=>{let e=t.length;return t=>t.length===e&&"."!==t&&".."!==t},th="object"==typeof process&&process?"object"==typeof process.env&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix";Z.sep="win32"===th?"\\":"/";var td=Symbol("globstar **");Z.GLOBSTAR=td;Z.filter=(t,e={})=>i=>Z(i,t,e);var tu=(t,e={})=>Object.assign({},t,e);Z.defaults=t=>{if(!t||"object"!=typeof t||!Object.keys(t).length)return Z;let e=Z;return Object.assign((i,s,r={})=>e(i,s,tu(t,r)),{Minimatch:class extends e.Minimatch{constructor(e,i={}){super(e,tu(t,i))}static defaults(i){return e.defaults(tu(t,i)).Minimatch}},AST:class extends e.AST{constructor(e,i,s={}){super(e,i,tu(t,s))}static fromGlob(i,s={}){return e.AST.fromGlob(i,tu(t,s))}},unescape:(i,s={})=>e.unescape(i,tu(t,s)),escape:(i,s={})=>e.escape(i,tu(t,s)),filter:(i,s={})=>e.filter(i,tu(t,s)),defaults:i=>e.defaults(tu(t,i)),makeRe:(i,s={})=>e.makeRe(i,tu(t,s)),braceExpand:(i,s={})=>e.braceExpand(i,tu(t,s)),match:(i,s,r={})=>e.match(i,s,tu(t,r)),sep:e.sep,GLOBSTAR:td})};var tc=(t,e={})=>(_(t),e.nobrace||!/\{(?:(?!\{).)*\}/.test(t)?[t]:function(t,e={}){if(!t)return[];let{max:i=1e5}=e;return"{}"===t.slice(0,2)&&(t="\\{\\}"+t.slice(2)),(function t(e,i,s){let r=[],n=h("{","}",e);if(!n)return[e];let a=n.pre,o=n.post.length?t(n.post,i,!1):[""];if(/\$$/.test(n.pre))for(let t=0;t<o.length&&t<i;t++){let e=a+"{"+n.body+"}"+o[t];r.push(e)}else{let l,d,u=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(n.body),c=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(n.body),f=u||c,m=n.body.indexOf(",")>=0;if(!f&&!m)return n.post.match(/,(?!,).*\}/)?t(e=n.pre+"{"+n.body+p+n.post,i,!0):[e];if(f)l=n.body.split(/\.\./);else if(1===(l=function t(e){if(!e)return[""];let i=[],s=h("{","}",e);if(!s)return e.split(",");let{pre:r,body:n,post:a}=s,o=r.split(",");o[o.length-1]+="{"+n+"}";let l=t(a);return a.length&&(o[o.length-1]+=l.shift(),o.push.apply(o,l)),i.push.apply(i,o),i}(n.body)).length&&void 0!==l[0]&&1===(l=t(l[0],i,!1).map(j)).length)return o.map(t=>n.pre+l[0]+t);if(f&&void 0!==l[0]&&void 0!==l[1]){let t=A(l[0]),e=A(l[1]),i=Math.max(l[0].length,l[1].length),s=3===l.length&&void 0!==l[2]?Math.abs(A(l[2])):1,r=F;e<t&&(s*=-1,r=R);let n=l.some(T);d=[];for(let a=t;r(a,e);a+=s){let t;if(c)"\\"===(t=String.fromCharCode(a))&&(t="");else if(t=String(a),n){let e=i-t.length;if(e>0){let i=Array(e+1).join("0");t=a<0?"-"+i+t.slice(1):i+t}}d.push(t)}}else{d=[];for(let e=0;e<l.length;e++)d.push.apply(d,t(l[e],i,!1))}for(let t=0;t<d.length;t++)for(let e=0;e<o.length&&r.length<i;e++){let i=a+d[t]+o[e];(!s||f||i)&&r.push(i)}}return r})(t.replace($,c).replace(k,f).replace(E,p).replace(x,m).replace(C,g),i,!0).map(O)}(t,{max:e.braceExpandMax}));Z.braceExpand=tc,Z.makeRe=(t,e={})=>new tp(t,e).makeRe(),Z.match=(t,e,i={})=>{let s=new tp(e,i);return t=t.filter(t=>s.match(t)),s.options.nonull&&!t.length&&t.push(e),t};var tf=/[?*]|[+@!]\(.*?\)|\[|\]/,tp=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(t,e={}){_(t),e=e||{},this.options=e,this.pattern=t,this.platform=e.platform||th,this.isWindows="win32"===this.platform,this.windowsPathsNoEscape=!!e.windowsPathsNoEscape||!1===e.allowWindowsEscape,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!e.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!e.nonegate,this.comment=!1,this.empty=!1,this.partial=!!e.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=void 0!==e.windowsNoMagicRoot?e.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let e of t)if("string"!=typeof e)return!0;return!1}debug(){}make(){let t=this.pattern,e=this.options;if(!e.nocomment&&"#"===t.charAt(0)){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],e.debug&&(this.debug=(...t)=>console.error(...t)),this.debug(this.pattern,this.globSet);let i=this.globSet.map(t=>this.slashSplit(t));this.globParts=this.preprocess(i),this.debug(this.pattern,this.globParts);let s=this.globParts.map((t,e,i)=>{if(this.isWindows&&this.windowsNoMagicRoot){let e=""===t[0]&&""===t[1]&&("?"===t[2]||!tf.test(t[2]))&&!tf.test(t[3]),i=/^[a-z]:/i.test(t[0]);if(e)return[...t.slice(0,4),...t.slice(4).map(t=>this.parse(t))];if(i)return[t[0],...t.slice(1).map(t=>this.parse(t))]}return t.map(t=>this.parse(t))});if(this.debug(this.pattern,s),this.set=s.filter(t=>-1===t.indexOf(!1)),this.isWindows)for(let t=0;t<this.set.length;t++){let e=this.set[t];""===e[0]&&""===e[1]&&"?"===this.globParts[t][2]&&"string"==typeof e[3]&&/^[a-z]:$/i.test(e[3])&&(e[2]="?")}this.debug(this.pattern,this.set)}preprocess(t){if(this.options.noglobstar)for(let e=0;e<t.length;e++)for(let i=0;i<t[e].length;i++)"**"===t[e][i]&&(t[e][i]="*");let{optimizationLevel:e=1}=this.options;return e>=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):t=e>=1?this.levelOneOptimize(t):this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(t=>{let e=-1;for(;-1!==(e=t.indexOf("**",e+1));){let i=e;for(;"**"===t[i+1];)i++;i!==e&&t.splice(e,i-e)}return t})}levelOneOptimize(t){return t.map(t=>0===(t=t.reduce((t,e)=>{let i=t[t.length-1];return"**"===e&&"**"===i||(".."===e&&i&&".."!==i&&"."!==i&&"**"!==i?t.pop():t.push(e)),t},[])).length?[""]:t)}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let e=!1;do{if(e=!1,!this.preserveMultipleSlashes){for(let i=1;i<t.length-1;i++){let s=t[i];1===i&&""===s&&""===t[0]||("."===s||""===s)&&(e=!0,t.splice(i,1),i--)}"."===t[0]&&2===t.length&&("."===t[1]||""===t[1])&&(e=!0,t.pop())}let i=0;for(;-1!==(i=t.indexOf("..",i+1));){let s=t[i-1];s&&"."!==s&&".."!==s&&"**"!==s&&(e=!0,t.splice(i-1,2),i-=2)}}while(e)return 0===t.length?[""]:t}firstPhasePreProcess(t){let e=!1;do for(let i of(e=!1,t)){let s=-1;for(;-1!==(s=i.indexOf("**",s+1));){let r=s;for(;"**"===i[r+1];)r++;r>s&&i.splice(s+1,r-s);let n=i[s+1],a=i[s+2],o=i[s+3];if(".."!==n||!a||"."===a||".."===a||!o||"."===o||".."===o)continue;e=!0,i.splice(s,1);let l=i.slice(0);l[s]="**",t.push(l),s--}if(!this.preserveMultipleSlashes){for(let t=1;t<i.length-1;t++){let s=i[t];1===t&&""===s&&""===i[0]||("."===s||""===s)&&(e=!0,i.splice(t,1),t--)}"."===i[0]&&2===i.length&&("."===i[1]||""===i[1])&&(e=!0,i.pop())}let r=0;for(;-1!==(r=i.indexOf("..",r+1));){let t=i[r-1];if(t&&"."!==t&&".."!==t&&"**"!==t){e=!0;let t=1===r&&"**"===i[r+1]?["."]:[];i.splice(r-1,2,...t),0===i.length&&i.push(""),r-=2}}}while(e)return t}secondPhasePreProcess(t){for(let e=0;e<t.length-1;e++)for(let i=e+1;i<t.length;i++){let s=this.partsMatch(t[e],t[i],!this.preserveMultipleSlashes);if(s){t[e]=[],t[i]=s;break}}return t.filter(t=>t.length)}partsMatch(t,e,i=!1){let s=0,r=0,n=[],a="";for(;s<t.length&&r<e.length;)if(t[s]===e[r])n.push("b"===a?e[r]:t[s]),s++,r++;else if(i&&"**"===t[s]&&e[r]===t[s+1])n.push(t[s]),s++;else if(i&&"**"===e[r]&&t[s]===e[r+1])n.push(e[r]),r++;else if("*"===t[s]&&e[r]&&(this.options.dot||!e[r].startsWith("."))&&"**"!==e[r]){if("b"===a)return!1;a="a",n.push(t[s]),s++,r++}else{if("*"!==e[r]||!t[s]||!this.options.dot&&t[s].startsWith(".")||"**"===t[s]||"a"===a)return!1;a="b",n.push(e[r]),s++,r++}return t.length===e.length&&n}parseNegate(){if(this.nonegate)return;let t=this.pattern,e=!1,i=0;for(let s=0;s<t.length&&"!"===t.charAt(s);s++)e=!e,i++;i&&(this.pattern=t.slice(i)),this.negate=e}matchOne(t,e,i=!1){let s=this.options;if(this.isWindows){let i="string"==typeof t[0]&&/^[a-z]:$/i.test(t[0]),s=!i&&""===t[0]&&""===t[1]&&"?"===t[2]&&/^[a-z]:$/i.test(t[3]),r="string"==typeof e[0]&&/^[a-z]:$/i.test(e[0]),n=!r&&""===e[0]&&""===e[1]&&"?"===e[2]&&"string"==typeof e[3]&&/^[a-z]:$/i.test(e[3]),a=s?3:i?0:void 0,o=n?3:r?0:void 0;if("number"==typeof a&&"number"==typeof o){let[i,s]=[t[a],e[o]];i.toLowerCase()===s.toLowerCase()&&(e[o]=i,o>a?e=e.slice(o):a>o&&(t=t.slice(a)))}}let{optimizationLevel:r=1}=this.options;r>=2&&(t=this.levelTwoFileOptimize(t)),this.debug("matchOne",this,{file:t,pattern:e}),this.debug("matchOne",t.length,e.length);for(var n=0,a=0,o=t.length,l=e.length;n<o&&a<l;n++,a++){let r;this.debug("matchOne loop");var h=e[a],d=t[n];if(this.debug(e,h,d),!1===h)return!1;if(h===td){this.debug("GLOBSTAR",[e,h,d]);var u=n,c=a+1;if(c===l){for(this.debug("** at the end");n<o;n++)if("."===t[n]||".."===t[n]||!s.dot&&"."===t[n].charAt(0))return!1;return!0}for(;u<o;){var f=t[u];if(this.debug(`
|
|
2
|
+
globstar while`,t,u,e,c,f),this.matchOne(t.slice(u),e.slice(c),i))return this.debug("globstar found match!",u,o,f),!0;if("."===f||".."===f||!s.dot&&"."===f.charAt(0)){this.debug("dot detected!",t,u,e,c);break}this.debug("globstar swallow a segment, and continue"),u++}return!!(i&&(this.debug(`
|
|
3
|
+
>>> no match, partial?`,t,u,e,c),u===o))}if("string"==typeof h?(r=d===h,this.debug("string match",h,d,r)):(r=h.test(d),this.debug("pattern match",h,d,r)),!r)return!1}if(n===o&&a===l)return!0;if(n===o)return i;if(a===l)return n===o-1&&""===t[n];throw Error("wtf?")}braceExpand(){return tc(this.pattern,this.options)}parse(t){_(t);let e=this.options;if("**"===t)return td;if(""===t)return"";let i,s=null;(i=t.match(ts))?s=e.dot?tn:tr:(i=t.match(V))?s=(e.nocase?e.dot?t=>(t=t.toLowerCase(),e=>e.toLowerCase().endsWith(t)):t=>(t=t.toLowerCase(),e=>!e.startsWith(".")&&e.toLowerCase().endsWith(t)):e.dot?t=>e=>e.endsWith(t):t=>e=>!e.startsWith(".")&&e.endsWith(t))(i[1]):(i=t.match(ta))?s=(e.nocase?e.dot?([t,e=""])=>{let i=tl([t]);return e?(e=e.toLowerCase(),t=>i(t)&&t.toLowerCase().endsWith(e)):i}:([t,e=""])=>{let i=to([t]);return e?(e=e.toLowerCase(),t=>i(t)&&t.toLowerCase().endsWith(e)):i}:e.dot?([t,e=""])=>{let i=tl([t]);return e?t=>i(t)&&t.endsWith(e):i}:([t,e=""])=>{let i=to([t]);return e?t=>i(t)&&t.endsWith(e):i})(i):(i=t.match(K))?s=e.dot?tt:Q:(i=t.match(te))&&(s=ti);let r=H.fromGlob(t,this.options).toMMPattern();return s&&"object"==typeof r&&Reflect.defineProperty(r,"test",{value:s}),r}makeRe(){if(this.regexp||!1===this.regexp)return this.regexp;let t=this.set;if(!t.length)return this.regexp=!1,this.regexp;let e=this.options,i=e.noglobstar?"[^/]*?":e.dot?"(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?":"(?:(?!(?:\\/|^)\\.).)*?",s=new Set(e.nocase?["i"]:[]),r=t.map(t=>{let e=t.map(t=>{if(t instanceof RegExp)for(let e of t.flags.split(""))s.add(e);return"string"==typeof t?t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):t===td?td:t._src});e.forEach((t,s)=>{let r=e[s+1],n=e[s-1];t!==td||n===td||(void 0===n?void 0!==r&&r!==td?e[s+1]="(?:\\/|"+i+"\\/)?"+r:e[s]=i:void 0===r?e[s-1]=n+"(?:\\/|\\/"+i+")?":r!==td&&(e[s-1]=n+"(?:\\/|\\/"+i+"\\/)"+r,e[s+1]=td))});let r=e.filter(t=>t!==td);if(this.partial&&r.length>=1){let t=[];for(let e=1;e<=r.length;e++)t.push(r.slice(0,e).join("/"));return"(?:"+t.join("|")+")"}return r.join("/")}).join("|"),[n,a]=t.length>1?["(?:",")"]:["",""];r="^"+n+r+a+"$",this.partial&&(r="^(?:\\/|"+n+r.slice(1,-1)+a+")$"),this.negate&&(r="^(?!"+r+").+$");try{this.regexp=new RegExp(r,[...s].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(t)?["",...t.split(/\/+/)]:t.split(/\/+/)}match(t,e=this.partial){if(this.debug("match",t,this.pattern),this.comment)return!1;if(this.empty)return""===t;if("/"===t&&e)return!0;let i=this.options;this.isWindows&&(t=t.split("\\").join("/"));let s=this.slashSplit(t);this.debug(this.pattern,"split",s);let r=this.set;this.debug(this.pattern,"set",r);let n=s[s.length-1];if(!n)for(let t=s.length-2;!n&&t>=0;t--)n=s[t];for(let t=0;t<r.length;t++){let a=r[t],o=s;if(i.matchBase&&1===a.length&&(o=[n]),this.matchOne(o,a,e))return!!i.flipNegate||!this.negate}return!i.flipNegate&&this.negate}static defaults(t){return Z.defaults(t).Minimatch}};Z.AST=H,Z.Minimatch=tp,Z.escape=X,Z.unescape=P;var tm="object"==typeof performance&&performance&&"function"==typeof performance.now?performance:Date,tg=new Set,tw="object"==typeof process&&process?process:{},ty=(t,e,i,s)=>{"function"==typeof tw.emitWarning?tw.emitWarning(t,e,i,s):console.error(`[${i}] ${e}: ${t}`)},tb=globalThis.AbortController,tv=globalThis.AbortSignal;if(typeof tb>"u"){tv=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(t,e){this._onabort.push(e)}},tb=class{constructor(){e()}signal=new tv;abort(t){if(!this.signal.aborted){for(let e of(this.signal.reason=t,this.signal.aborted=!0,this.signal._onabort))e(t);this.signal.onabort?.(t)}}};let t=tw.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",e=()=>{t&&(t=!1,ty("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))}}var tS=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),t$=t=>tS(t)?t<=256?Uint8Array:t<=65536?Uint16Array:t<=0x100000000?Uint32Array:t<=Number.MAX_SAFE_INTEGER?tk:null:null,tk=class extends Array{constructor(t){super(t),this.fill(0)}},tE=class t{heap;length;static #t=!1;static create(e){let i=t$(e);if(!i)return[];t.#t=!0;let s=new t(e,i);return t.#t=!1,s}constructor(e,i){if(!t.#t)throw TypeError("instantiate Stack using Stack.create(n)");this.heap=new i(e),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},tx=class t{#t;#e;#i;#s;#r;#n;#a;#o;get perf(){return this.#o}ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#l;#h;#d;#u;#c;#p;#f;#m;#g;#w;#y;#b;#v;#S;#$;#k;#E;#x;#C;static unsafeExposeInternals(t){return{starts:t.#v,ttls:t.#S,autopurgeTimers:t.#$,sizes:t.#b,keyMap:t.#d,keyList:t.#u,valList:t.#c,next:t.#p,prev:t.#f,get head(){return t.#m},get tail(){return t.#g},free:t.#w,isBackgroundFetch:e=>t.#A(e),backgroundFetch:(e,i,s,r)=>t.#O(e,i,s,r),moveToTail:e=>t.#j(e),indexes:e=>t.#T(e),rindexes:e=>t.#F(e),isStale:e=>t.#R(e)}}get max(){return this.#t}get maxSize(){return this.#e}get calculatedSize(){return this.#h}get size(){return this.#l}get fetchMethod(){return this.#n}get memoMethod(){return this.#a}get dispose(){return this.#i}get onInsert(){return this.#s}get disposeAfter(){return this.#r}constructor(e){let{max:i=0,ttl:s,ttlResolution:r=1,ttlAutopurge:n,updateAgeOnGet:a,updateAgeOnHas:o,allowStale:l,dispose:h,onInsert:d,disposeAfter:u,noDisposeOnSet:c,noUpdateTTL:f,maxSize:p=0,maxEntrySize:m=0,sizeCalculation:g,fetchMethod:w,memoMethod:y,noDeleteOnFetchRejection:b,noDeleteOnStaleGet:v,allowStaleOnFetchRejection:S,allowStaleOnFetchAbort:$,ignoreFetchAbort:k,perf:E}=e;if(void 0!==E&&"function"!=typeof E?.now)throw TypeError("perf option must have a now() method if specified");if(this.#o=E??tm,0!==i&&!tS(i))throw TypeError("max option must be a nonnegative integer");let x=i?t$(i):Array;if(!x)throw Error("invalid max value: "+i);if(this.#t=i,this.#e=p,this.maxEntrySize=m||this.#e,this.sizeCalculation=g,this.sizeCalculation){if(!this.#e&&!this.maxEntrySize)throw TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if("function"!=typeof this.sizeCalculation)throw TypeError("sizeCalculation set to non-function")}if(void 0!==y&&"function"!=typeof y)throw TypeError("memoMethod must be a function if defined");if(this.#a=y,void 0!==w&&"function"!=typeof w)throw TypeError("fetchMethod must be a function if specified");if(this.#n=w,this.#E=!!w,this.#d=new Map,this.#u=Array(i).fill(void 0),this.#c=Array(i).fill(void 0),this.#p=new x(i),this.#f=new x(i),this.#m=0,this.#g=0,this.#w=tE.create(i),this.#l=0,this.#h=0,"function"==typeof h&&(this.#i=h),"function"==typeof d&&(this.#s=d),"function"==typeof u?(this.#r=u,this.#y=[]):(this.#r=void 0,this.#y=void 0),this.#k=!!this.#i,this.#C=!!this.#s,this.#x=!!this.#r,this.noDisposeOnSet=!!c,this.noUpdateTTL=!!f,this.noDeleteOnFetchRejection=!!b,this.allowStaleOnFetchRejection=!!S,this.allowStaleOnFetchAbort=!!$,this.ignoreFetchAbort=!!k,0!==this.maxEntrySize){if(0!==this.#e&&!tS(this.#e))throw TypeError("maxSize must be a positive integer if specified");if(!tS(this.maxEntrySize))throw TypeError("maxEntrySize must be a positive integer if specified");this.#_()}if(this.allowStale=!!l,this.noDeleteOnStaleGet=!!v,this.updateAgeOnGet=!!a,this.updateAgeOnHas=!!o,this.ttlResolution=tS(r)||0===r?r:1,this.ttlAutopurge=!!n,this.ttl=s||0,this.ttl){if(!tS(this.ttl))throw TypeError("ttl must be a positive integer if specified");this.#D()}if(0===this.#t&&0===this.ttl&&0===this.#e)throw TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#t&&!this.#e){let e="LRU_CACHE_UNBOUNDED";(t=>!tg.has(t))(e)&&(tg.add(e),ty("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",e,t))}}getRemainingTTL(t){return this.#d.has(t)?1/0:0}#D(){let t=new tk(this.#t),e=new tk(this.#t);this.#S=t,this.#v=e;let i=this.ttlAutopurge?Array(this.#t):void 0;this.#$=i,this.#M=(s,r,n=this.#o.now())=>{if(e[s]=0!==r?n:0,t[s]=r,i?.[s]&&(clearTimeout(i[s]),i[s]=void 0),0!==r&&i){let t=setTimeout(()=>{this.#R(s)&&this.#N(this.#u[s],"expire")},r+1);t.unref&&t.unref(),i[s]=t}},this.#P=i=>{e[i]=0!==t[i]?this.#o.now():0},this.#L=(i,n)=>{if(t[n]){let a=t[n],o=e[n];if(!a||!o)return;i.ttl=a,i.start=o,i.now=s||r();let l=i.now-o;i.remainingTTL=a-l}};let s=0,r=()=>{let t=this.#o.now();if(this.ttlResolution>0){s=t;let e=setTimeout(()=>s=0,this.ttlResolution);e.unref&&e.unref()}return t};this.getRemainingTTL=i=>{let n=this.#d.get(i);if(void 0===n)return 0;let a=t[n],o=e[n];return a&&o?a-((s||r())-o):1/0},this.#R=i=>{let n=e[i],a=t[i];return!!a&&!!n&&(s||r())-n>a}}#P=()=>{};#L=()=>{};#M=()=>{};#R=()=>!1;#_(){let t=new tk(this.#t);this.#h=0,this.#b=t,this.#I=e=>{this.#h-=t[e],t[e]=0},this.#W=(t,e,i,s)=>{if(this.#A(e))return 0;if(!tS(i))if(s){if("function"!=typeof s)throw TypeError("sizeCalculation must be a function");if(!tS(i=s(e,t)))throw TypeError("sizeCalculation return invalid (expect positive integer)")}else throw TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return i},this.#z=(e,i,s)=>{if(t[e]=i,this.#e){let i=this.#e-t[e];for(;this.#h>i;)this.#U(!0)}this.#h+=t[e],s&&(s.entrySize=i,s.totalCalculatedSize=this.#h)}}#I=t=>{};#z=(t,e,i)=>{};#W=(t,e,i,s)=>{if(i||s)throw TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#T({allowStale:t=this.allowStale}={}){if(this.#l)for(let e=this.#g;!(!this.#B(e)||((t||!this.#R(e))&&(yield e),e===this.#m));)e=this.#f[e]}*#F({allowStale:t=this.allowStale}={}){if(this.#l)for(let e=this.#m;!(!this.#B(e)||((t||!this.#R(e))&&(yield e),e===this.#g));)e=this.#p[e]}#B(t){return void 0!==t&&this.#d.get(this.#u[t])===t}*entries(){for(let t of this.#T())void 0===this.#c[t]||void 0===this.#u[t]||this.#A(this.#c[t])||(yield[this.#u[t],this.#c[t]])}*rentries(){for(let t of this.#F())void 0===this.#c[t]||void 0===this.#u[t]||this.#A(this.#c[t])||(yield[this.#u[t],this.#c[t]])}*keys(){for(let t of this.#T()){let e=this.#u[t];void 0===e||this.#A(this.#c[t])||(yield e)}}*rkeys(){for(let t of this.#F()){let e=this.#u[t];void 0===e||this.#A(this.#c[t])||(yield e)}}*values(){for(let t of this.#T())void 0===this.#c[t]||this.#A(this.#c[t])||(yield this.#c[t])}*rvalues(){for(let t of this.#F())void 0===this.#c[t]||this.#A(this.#c[t])||(yield this.#c[t])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(t,e={}){for(let i of this.#T()){let s=this.#c[i],r=this.#A(s)?s.__staleWhileFetching:s;if(void 0!==r&&t(r,this.#u[i],this))return this.get(this.#u[i],e)}}forEach(t,e=this){for(let i of this.#T()){let s=this.#c[i],r=this.#A(s)?s.__staleWhileFetching:s;void 0!==r&&t.call(e,r,this.#u[i],this)}}rforEach(t,e=this){for(let i of this.#F()){let s=this.#c[i],r=this.#A(s)?s.__staleWhileFetching:s;void 0!==r&&t.call(e,r,this.#u[i],this)}}purgeStale(){let t=!1;for(let e of this.#F({allowStale:!0}))this.#R(e)&&(this.#N(this.#u[e],"expire"),t=!0);return t}info(t){let e=this.#d.get(t);if(void 0===e)return;let i=this.#c[e],s=this.#A(i)?i.__staleWhileFetching:i;if(void 0===s)return;let r={value:s};if(this.#S&&this.#v){let t=this.#S[e],i=this.#v[e];t&&i&&(r.ttl=t-(this.#o.now()-i),r.start=Date.now())}return this.#b&&(r.size=this.#b[e]),r}dump(){let t=[];for(let e of this.#T({allowStale:!0})){let i=this.#u[e],s=this.#c[e],r=this.#A(s)?s.__staleWhileFetching:s;if(void 0===r||void 0===i)continue;let n={value:r};if(this.#S&&this.#v){n.ttl=this.#S[e];let t=this.#o.now()-this.#v[e];n.start=Math.floor(Date.now()-t)}this.#b&&(n.size=this.#b[e]),t.unshift([i,n])}return t}load(t){for(let[e,i]of(this.clear(),t)){if(i.start){let t=Date.now()-i.start;i.start=this.#o.now()-t}this.set(e,i.value,i)}}set(t,e,i={}){if(void 0===e)return this.delete(t),this;let{ttl:s=this.ttl,start:r,noDisposeOnSet:n=this.noDisposeOnSet,sizeCalculation:a=this.sizeCalculation,status:o}=i,{noUpdateTTL:l=this.noUpdateTTL}=i,h=this.#W(t,e,i.size||0,a);if(this.maxEntrySize&&h>this.maxEntrySize)return o&&(o.set="miss",o.maxEntrySizeExceeded=!0),this.#N(t,"set"),this;let d=0===this.#l?void 0:this.#d.get(t);if(void 0===d)d=0===this.#l?this.#g:0!==this.#w.length?this.#w.pop():this.#l===this.#t?this.#U(!1):this.#l,this.#u[d]=t,this.#c[d]=e,this.#d.set(t,d),this.#p[this.#g]=d,this.#f[d]=this.#g,this.#g=d,this.#l++,this.#z(d,h,o),o&&(o.set="add"),l=!1,this.#C&&this.#s?.(e,t,"add");else{this.#j(d);let i=this.#c[d];if(e!==i){if(this.#E&&this.#A(i)){i.__abortController.abort(Error("replaced"));let{__staleWhileFetching:e}=i;void 0!==e&&!n&&(this.#k&&this.#i?.(e,t,"set"),this.#x&&this.#y?.push([e,t,"set"]))}else n||(this.#k&&this.#i?.(i,t,"set"),this.#x&&this.#y?.push([i,t,"set"]));if(this.#I(d),this.#z(d,h,o),this.#c[d]=e,o){o.set="replace";let t=i&&this.#A(i)?i.__staleWhileFetching:i;void 0!==t&&(o.oldValue=t)}}else o&&(o.set="update");this.#C&&this.onInsert?.(e,t,e===i?"update":"replace")}if(0===s||this.#S||this.#D(),this.#S&&(l||this.#M(d,s,r),o&&this.#L(o,d)),!n&&this.#x&&this.#y){let t=this.#y,e;for(;e=t?.shift();)this.#r?.(...e)}return this}pop(){try{for(;this.#l;){let t=this.#c[this.#m];if(this.#U(!0),this.#A(t)){if(t.__staleWhileFetching)return t.__staleWhileFetching}else if(void 0!==t)return t}}finally{if(this.#x&&this.#y){let t=this.#y,e;for(;e=t?.shift();)this.#r?.(...e)}}}#U(t){let e=this.#m,i=this.#u[e],s=this.#c[e];return this.#E&&this.#A(s)?s.__abortController.abort(Error("evicted")):(this.#k||this.#x)&&(this.#k&&this.#i?.(s,i,"evict"),this.#x&&this.#y?.push([s,i,"evict"])),this.#I(e),this.#$?.[e]&&(clearTimeout(this.#$[e]),this.#$[e]=void 0),t&&(this.#u[e]=void 0,this.#c[e]=void 0,this.#w.push(e)),1===this.#l?(this.#m=this.#g=0,this.#w.length=0):this.#m=this.#p[e],this.#d.delete(i),this.#l--,e}has(t,e={}){let{updateAgeOnHas:i=this.updateAgeOnHas,status:s}=e,r=this.#d.get(t);if(void 0!==r){let t=this.#c[r];if(this.#A(t)&&void 0===t.__staleWhileFetching)return!1;if(!this.#R(r))return i&&this.#P(r),s&&(s.has="hit",this.#L(s,r)),!0;s&&(s.has="stale",this.#L(s,r))}else s&&(s.has="miss");return!1}peek(t,e={}){let{allowStale:i=this.allowStale}=e,s=this.#d.get(t);if(void 0===s||!i&&this.#R(s))return;let r=this.#c[s];return this.#A(r)?r.__staleWhileFetching:r}#O(t,e,i,s){let r=void 0===e?void 0:this.#c[e];if(this.#A(r))return r;let n=new tb,{signal:a}=i;a?.addEventListener("abort",()=>n.abort(a.reason),{signal:n.signal});let o={signal:n.signal,options:i,context:s},l=(s,r=!1)=>{let{aborted:a}=n.signal,l=i.ignoreFetchAbort&&void 0!==s,d=i.ignoreFetchAbort||!!(i.allowStaleOnFetchAbort&&void 0!==s);if(i.status&&(a&&!r?(i.status.fetchAborted=!0,i.status.fetchError=n.signal.reason,l&&(i.status.fetchAbortIgnored=!0)):i.status.fetchResolved=!0),a&&!l&&!r)return h(n.signal.reason,d);let c=this.#c[e];return(c===u||l&&r&&void 0===c)&&(void 0===s?void 0!==u.__staleWhileFetching?this.#c[e]=u.__staleWhileFetching:this.#N(t,"fetch"):(i.status&&(i.status.fetchUpdated=!0),this.set(t,s,o.options))),s},h=(s,r)=>{let{aborted:a}=n.signal,o=a&&i.allowStaleOnFetchAbort,l=o||i.allowStaleOnFetchRejection,h=l||i.noDeleteOnFetchRejection;if(this.#c[e]===u&&(h&&(r||void 0!==u.__staleWhileFetching)?o||(this.#c[e]=u.__staleWhileFetching):this.#N(t,"fetch")),l)return i.status&&void 0!==u.__staleWhileFetching&&(i.status.returnedStale=!0),u.__staleWhileFetching;if(u.__returned===u)throw s},d=(e,s)=>{let a=this.#n?.(t,r,o);a&&a instanceof Promise&&a.then(t=>e(void 0===t?void 0:t),s),n.signal.addEventListener("abort",()=>{(!i.ignoreFetchAbort||i.allowStaleOnFetchAbort)&&(e(void 0),i.allowStaleOnFetchAbort&&(e=t=>l(t,!0)))})};i.status&&(i.status.fetchDispatched=!0);let u=new Promise(d).then(l,t=>(i.status&&(i.status.fetchRejected=!0,i.status.fetchError=t),h(t,!1))),c=Object.assign(u,{__abortController:n,__staleWhileFetching:r,__returned:void 0});return void 0===e?(this.set(t,c,{...o.options,status:void 0}),e=this.#d.get(t)):this.#c[e]=c,c}#A(t){return!!this.#E&&!!t&&t instanceof Promise&&t.hasOwnProperty("__staleWhileFetching")&&t.__abortController instanceof tb}async fetch(t,e={}){let{allowStale:i=this.allowStale,updateAgeOnGet:s=this.updateAgeOnGet,noDeleteOnStaleGet:r=this.noDeleteOnStaleGet,ttl:n=this.ttl,noDisposeOnSet:a=this.noDisposeOnSet,size:o=0,sizeCalculation:l=this.sizeCalculation,noUpdateTTL:h=this.noUpdateTTL,noDeleteOnFetchRejection:d=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:u=this.allowStaleOnFetchRejection,ignoreFetchAbort:c=this.ignoreFetchAbort,allowStaleOnFetchAbort:f=this.allowStaleOnFetchAbort,context:p,forceRefresh:m=!1,status:g,signal:w}=e;if(!this.#E)return g&&(g.fetch="get"),this.get(t,{allowStale:i,updateAgeOnGet:s,noDeleteOnStaleGet:r,status:g});let y={allowStale:i,updateAgeOnGet:s,noDeleteOnStaleGet:r,ttl:n,noDisposeOnSet:a,size:o,sizeCalculation:l,noUpdateTTL:h,noDeleteOnFetchRejection:d,allowStaleOnFetchRejection:u,allowStaleOnFetchAbort:f,ignoreFetchAbort:c,status:g,signal:w},b=this.#d.get(t);if(void 0===b){g&&(g.fetch="miss");let e=this.#O(t,b,y,p);return e.__returned=e}{let e=this.#c[b];if(this.#A(e)){let t=i&&void 0!==e.__staleWhileFetching;return g&&(g.fetch="inflight",t&&(g.returnedStale=!0)),t?e.__staleWhileFetching:e.__returned=e}let r=this.#R(b);if(!m&&!r)return g&&(g.fetch="hit"),this.#j(b),s&&this.#P(b),g&&this.#L(g,b),e;let n=this.#O(t,b,y,p),a=void 0!==n.__staleWhileFetching&&i;return g&&(g.fetch=r?"stale":"refresh",a&&r&&(g.returnedStale=!0)),a?n.__staleWhileFetching:n.__returned=n}}async forceFetch(t,e={}){let i=await this.fetch(t,e);if(void 0===i)throw Error("fetch() returned undefined");return i}memo(t,e={}){let i=this.#a;if(!i)throw Error("no memoMethod provided to constructor");let{context:s,forceRefresh:r,...n}=e,a=this.get(t,n);if(!r&&void 0!==a)return a;let o=i(t,a,{options:n,context:s});return this.set(t,o,n),o}get(t,e={}){let{allowStale:i=this.allowStale,updateAgeOnGet:s=this.updateAgeOnGet,noDeleteOnStaleGet:r=this.noDeleteOnStaleGet,status:n}=e,a=this.#d.get(t);if(void 0!==a){let e=this.#c[a],o=this.#A(e);return n&&this.#L(n,a),this.#R(a)?(n&&(n.get="stale"),o?(n&&i&&void 0!==e.__staleWhileFetching&&(n.returnedStale=!0),i?e.__staleWhileFetching:void 0):(r||this.#N(t,"expire"),n&&i&&(n.returnedStale=!0),i?e:void 0)):(n&&(n.get="hit"),o?e.__staleWhileFetching:(this.#j(a),s&&this.#P(a),e))}n&&(n.get="miss")}#G(t,e){this.#f[e]=t,this.#p[t]=e}#j(t){t!==this.#g&&(t===this.#m?this.#m=this.#p[t]:this.#G(this.#f[t],this.#p[t]),this.#G(this.#g,t),this.#g=t)}delete(t){return this.#N(t,"delete")}#N(t,e){let i=!1;if(0!==this.#l){let s=this.#d.get(t);if(void 0!==s)if(this.#$?.[s]&&(clearTimeout(this.#$?.[s]),this.#$[s]=void 0),i=!0,1===this.#l)this.#q(e);else{this.#I(s);let i=this.#c[s];if(this.#A(i)?i.__abortController.abort(Error("deleted")):(this.#k||this.#x)&&(this.#k&&this.#i?.(i,t,e),this.#x&&this.#y?.push([i,t,e])),this.#d.delete(t),this.#u[s]=void 0,this.#c[s]=void 0,s===this.#g)this.#g=this.#f[s];else if(s===this.#m)this.#m=this.#p[s];else{let t=this.#f[s];this.#p[t]=this.#p[s];let e=this.#p[s];this.#f[e]=this.#f[s]}this.#l--,this.#w.push(s)}}if(this.#x&&this.#y?.length){let t=this.#y,e;for(;e=t?.shift();)this.#r?.(...e)}return i}clear(){return this.#q("delete")}#q(t){for(let e of this.#F({allowStale:!0})){let i=this.#c[e];if(this.#A(i))i.__abortController.abort(Error("deleted"));else{let s=this.#u[e];this.#k&&this.#i?.(i,s,t),this.#x&&this.#y?.push([i,s,t])}}if(this.#d.clear(),this.#c.fill(void 0),this.#u.fill(void 0),this.#S&&this.#v){for(let t of(this.#S.fill(0),this.#v.fill(0),this.#$??[]))void 0!==t&&clearTimeout(t);this.#$?.fill(void 0)}if(this.#b&&this.#b.fill(0),this.#m=0,this.#g=0,this.#w.length=0,this.#h=0,this.#l=0,this.#x&&this.#y){let t=this.#y,e;for(;e=t?.shift();)this.#r?.(...e)}}},tC="object"==typeof process&&process?process:{stdout:null,stderr:null},tA=t=>!!t&&"object"==typeof t&&(t instanceof ee||t instanceof o.default||tO(t)||tj(t)),tO=t=>!!t&&"object"==typeof t&&t instanceof a.EventEmitter&&"function"==typeof t.pipe&&t.pipe!==o.default.Writable.prototype.pipe,tj=t=>!!t&&"object"==typeof t&&t instanceof a.EventEmitter&&"function"==typeof t.write&&"function"==typeof t.end,tT=Symbol("EOF"),tF=Symbol("maybeEmitEnd"),tR=Symbol("emittedEnd"),t_=Symbol("emittingEnd"),tD=Symbol("emittedError"),tM=Symbol("closed"),tN=Symbol("read"),tP=Symbol("flush"),tL=Symbol("flushChunk"),tI=Symbol("encoding"),tW=Symbol("decoder"),tz=Symbol("flowing"),tU=Symbol("paused"),tB=Symbol("resume"),tG=Symbol("buffer"),tq=Symbol("pipes"),tY=Symbol("bufferLength"),tJ=Symbol("bufferPush"),tH=Symbol("bufferShift"),tX=Symbol("objectMode"),tZ=Symbol("destroyed"),tV=Symbol("error"),tK=Symbol("emitData"),tQ=Symbol("emitEnd"),t0=Symbol("emitEnd2"),t1=Symbol("async"),t2=Symbol("abort"),t8=Symbol("aborted"),t4=Symbol("signal"),t3=Symbol("dataListeners"),t5=Symbol("discarded"),t6=t=>Promise.resolve().then(t),t7=t=>t(),t9=class{src;dest;opts;ondrain;constructor(t,e,i){this.src=t,this.dest=e,this.opts=i,this.ondrain=()=>t[tB](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(t){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},et=class extends t9{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,e,i){super(t,e,i),this.proxyErrors=t=>this.dest.emit("error",t),t.on("error",this.proxyErrors)}},ee=class extends a.EventEmitter{[tz]=!1;[tU]=!1;[tq]=[];[tG]=[];[tX];[tI];[t1];[tW];[tT]=!1;[tR]=!1;[t_]=!1;[tM]=!1;[tD]=null;[tY]=0;[tZ]=!1;[t4];[t8]=!1;[t3]=0;[t5]=!1;writable=!0;readable=!0;constructor(...t){let e=t[0]||{};if(super(),e.objectMode&&"string"==typeof e.encoding)throw TypeError("Encoding and objectMode may not be used together");(t=>!!t.objectMode)(e)?(this[tX]=!0,this[tI]=null):(t=>!t.objectMode&&!!t.encoding&&"buffer"!==t.encoding)(e)?(this[tI]=e.encoding,this[tX]=!1):(this[tX]=!1,this[tI]=null),this[t1]=!!e.async,this[tW]=this[tI]?new l.StringDecoder(this[tI]):null,e&&!0===e.debugExposeBuffer&&Object.defineProperty(this,"buffer",{get:()=>this[tG]}),e&&!0===e.debugExposePipes&&Object.defineProperty(this,"pipes",{get:()=>this[tq]});let{signal:i}=e;i&&(this[t4]=i,i.aborted?this[t2]():i.addEventListener("abort",()=>this[t2]()))}get bufferLength(){return this[tY]}get encoding(){return this[tI]}set encoding(t){throw Error("Encoding must be set at instantiation time")}setEncoding(t){throw Error("Encoding must be set at instantiation time")}get objectMode(){return this[tX]}set objectMode(t){throw Error("objectMode must be set at instantiation time")}get async(){return this[t1]}set async(t){this[t1]=this[t1]||!!t}[t2](){this[t8]=!0,this.emit("abort",this[t4]?.reason),this.destroy(this[t4]?.reason)}get aborted(){return this[t8]}set aborted(t){}write(t,e,i){if(this[t8])return!1;if(this[tT])throw Error("write after end");if(this[tZ])return this.emit("error",Object.assign(Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;"function"==typeof e&&(i=e,e="utf8"),e||(e="utf8");let s=this[t1]?t6:t7;if(!this[tX]&&!Buffer.isBuffer(t)){let e;if(e=t,!Buffer.isBuffer(e)&&ArrayBuffer.isView(e))t=Buffer.from(t.buffer,t.byteOffset,t.byteLength);else{let e;if((e=t)instanceof ArrayBuffer||e&&"object"==typeof e&&e.constructor&&"ArrayBuffer"===e.constructor.name&&e.byteLength>=0)t=Buffer.from(t);else if("string"!=typeof t)throw Error("Non-contiguous data written to non-objectMode stream")}}return this[tX]?(this[tz]&&0!==this[tY]&&this[tP](!0),this[tz]?this.emit("data",t):this[tJ](t)):t.length&&("string"==typeof t&&(e!==this[tI]||this[tW]?.lastNeed)&&(t=Buffer.from(t,e)),Buffer.isBuffer(t)&&this[tI]&&(t=this[tW].write(t)),this[tz]&&0!==this[tY]&&this[tP](!0),this[tz]?this.emit("data",t):this[tJ](t)),0!==this[tY]&&this.emit("readable"),i&&s(i),this[tz]}read(t){if(this[tZ])return null;if(this[t5]=!1,0===this[tY]||0===t||t&&t>this[tY])return this[tF](),null;this[tX]&&(t=null),this[tG].length>1&&!this[tX]&&(this[tG]=[this[tI]?this[tG].join(""):Buffer.concat(this[tG],this[tY])]);let e=this[tN](t||null,this[tG][0]);return this[tF](),e}[tN](t,e){if(this[tX])this[tH]();else{let i=e;t===i.length||null===t?this[tH]():("string"==typeof i?(this[tG][0]=i.slice(t),e=i.slice(0,t)):(this[tG][0]=i.subarray(t),e=i.subarray(0,t)),this[tY]-=t)}return this.emit("data",e),this[tG].length||this[tT]||this.emit("drain"),e}end(t,e,i){return"function"==typeof t&&(i=t,t=void 0),"function"==typeof e&&(i=e,e="utf8"),void 0!==t&&this.write(t,e),i&&this.once("end",i),this[tT]=!0,this.writable=!1,(this[tz]||!this[tU])&&this[tF](),this}[tB](){this[tZ]||(this[t3]||this[tq].length||(this[t5]=!0),this[tU]=!1,this[tz]=!0,this.emit("resume"),this[tG].length?this[tP]():this[tT]?this[tF]():this.emit("drain"))}resume(){return this[tB]()}pause(){this[tz]=!1,this[tU]=!0,this[t5]=!1}get destroyed(){return this[tZ]}get flowing(){return this[tz]}get paused(){return this[tU]}[tJ](t){this[tX]?this[tY]+=1:this[tY]+=t.length,this[tG].push(t)}[tH](){return this[tX]?this[tY]-=1:this[tY]-=this[tG][0].length,this[tG].shift()}[tP](t=!1){do;while(this[tL](this[tH]())&&this[tG].length)t||this[tG].length||this[tT]||this.emit("drain")}[tL](t){return this.emit("data",t),this[tz]}pipe(t,e){if(this[tZ])return t;this[t5]=!1;let i=this[tR];return e=e||{},t===tC.stdout||t===tC.stderr?e.end=!1:e.end=!1!==e.end,e.proxyErrors=!!e.proxyErrors,i?e.end&&t.end():(this[tq].push(e.proxyErrors?new et(this,t,e):new t9(this,t,e)),this[t1]?t6(()=>this[tB]()):this[tB]()),t}unpipe(t){let e=this[tq].find(e=>e.dest===t);e&&(1===this[tq].length?(this[tz]&&0===this[t3]&&(this[tz]=!1),this[tq]=[]):this[tq].splice(this[tq].indexOf(e),1),e.unpipe())}addListener(t,e){return this.on(t,e)}on(t,e){let i=super.on(t,e);if("data"===t)this[t5]=!1,this[t3]++,this[tq].length||this[tz]||this[tB]();else if("readable"===t&&0!==this[tY])super.emit("readable");else("end"===t||"finish"===t||"prefinish"===t)&&this[tR]?(super.emit(t),this.removeAllListeners(t)):"error"===t&&this[tD]&&(this[t1]?t6(()=>e.call(this,this[tD])):e.call(this,this[tD]));return i}removeListener(t,e){return this.off(t,e)}off(t,e){let i=super.off(t,e);return"data"===t&&(this[t3]=this.listeners("data").length,0!==this[t3]||this[t5]||this[tq].length||(this[tz]=!1)),i}removeAllListeners(t){let e=super.removeAllListeners(t);return("data"===t||void 0===t)&&(this[t3]=0,this[t5]||this[tq].length||(this[tz]=!1)),e}get emittedEnd(){return this[tR]}[tF](){this[t_]||this[tR]||this[tZ]||0!==this[tG].length||!this[tT]||(this[t_]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[tM]&&this.emit("close"),this[t_]=!1)}emit(t,...e){let i=e[0];if("error"!==t&&"close"!==t&&t!==tZ&&this[tZ])return!1;if("data"===t)return(!!this[tX]||!!i)&&(this[t1]?(t6(()=>this[tK](i)),!0):this[tK](i));if("end"===t)return this[tQ]();if("close"===t){if(this[tM]=!0,!this[tR]&&!this[tZ])return!1;let t=super.emit("close");return this.removeAllListeners("close"),t}if("error"===t){this[tD]=i,super.emit(tV,i);let t=(!this[t4]||!!this.listeners("error").length)&&super.emit("error",i);return this[tF](),t}if("resume"===t){let t=super.emit("resume");return this[tF](),t}if("finish"===t||"prefinish"===t){let e=super.emit(t);return this.removeAllListeners(t),e}let s=super.emit(t,...e);return this[tF](),s}[tK](t){for(let e of this[tq])!1===e.dest.write(t)&&this.pause();let e=!this[t5]&&super.emit("data",t);return this[tF](),e}[tQ](){return!this[tR]&&(this[tR]=!0,this.readable=!1,this[t1]?(t6(()=>this[t0]()),!0):this[t0]())}[t0](){if(this[tW]){let t=this[tW].end();if(t){for(let e of this[tq])e.dest.write(t);this[t5]||super.emit("data",t)}}for(let t of this[tq])t.end();let t=super.emit("end");return this.removeAllListeners("end"),t}async collect(){let t=Object.assign([],{dataLength:0});this[tX]||(t.dataLength=0);let e=this.promise();return this.on("data",e=>{t.push(e),this[tX]||(t.dataLength+=e.length)}),await e,t}async concat(){if(this[tX])throw Error("cannot concat in objectMode");let t=await this.collect();return this[tI]?t.join(""):Buffer.concat(t,t.dataLength)}async promise(){return new Promise((t,e)=>{this.on(tZ,()=>e(Error("stream destroyed"))),this.on("error",t=>e(t)),this.on("end",()=>t())})}[Symbol.asyncIterator](){this[t5]=!1;let t=!1,e=async()=>(this.pause(),t=!0,{value:void 0,done:!0});return{next:()=>{if(t)return e();let i=this.read();if(null!==i)return Promise.resolve({done:!1,value:i});if(this[tT])return e();let s,r,n=t=>{this.off("data",a),this.off("end",o),this.off(tZ,l),e(),r(t)},a=t=>{this.off("error",n),this.off("end",o),this.off(tZ,l),this.pause(),s({value:t,done:!!this[tT]})},o=()=>{this.off("error",n),this.off("data",a),this.off(tZ,l),e(),s({done:!0,value:void 0})},l=()=>n(Error("stream destroyed"));return new Promise((t,e)=>{r=e,s=t,this.once(tZ,l),this.once("error",n),this.once("end",o),this.once("data",a)})},throw:e,return:e,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[t5]=!1;let t=!1,e=()=>(this.pause(),this.off(tV,e),this.off(tZ,e),this.off("end",e),t=!0,{done:!0,value:void 0}),i=()=>{if(t)return e();let i=this.read();return null===i?e():{done:!1,value:i}};return this.once("end",e),this.once(tV,e),this.once(tZ,e),{next:i,throw:e,return:e,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(t){return this[tZ]||(this[tZ]=!0,this[t5]=!0,this[tG].length=0,this[tY]=0,"function"!=typeof this.close||this[tM]||this.close()),t?this.emit("error",t):this.emit(tZ),this}static get isStream(){return tA}},ei=s.realpathSync.native,es={lstatSync:s.lstatSync,readdir:s.readdir,readdirSync:s.readdirSync,readlinkSync:s.readlinkSync,realpathSync:ei,promises:{lstat:n.lstat,readdir:n.readdir,readlink:n.readlink,realpath:n.realpath}},er=t=>t&&t!==es&&t!==r?{...es,...t,promises:{...es.promises,...t.promises||{}}}:es,en=/^\\\\\?\\([a-z]:)\\?$/i,ea=/[\\\/]/,eo=t=>t.isFile()?8:t.isDirectory()?4:t.isSymbolicLink()?10:t.isCharacterDevice()?2:t.isBlockDevice()?6:t.isSocket()?12:+!!t.isFIFO(),el=new tx({max:4096}),eh=t=>{let e=el.get(t);if(e)return e;let i=t.normalize("NFKD");return el.set(t,i),i},ed=new tx({max:4096}),eu=t=>{let e=ed.get(t);if(e)return e;let i=eh(t.toLowerCase());return ed.set(t,i),i},ec=class extends tx{constructor(){super({max:256})}},ef=class extends tx{constructor(t=16384){super({maxSize:t,sizeCalculation:t=>t.length+1})}},ep=Symbol("PathScurry setAsCwd"),em=class{name;root;roots;parent;nocase;isCWD=!1;#t;#e;get dev(){return this.#e}#i;get mode(){return this.#i}#s;get nlink(){return this.#s}#r;get uid(){return this.#r}#n;get gid(){return this.#n}#a;get rdev(){return this.#a}#o;get blksize(){return this.#o}#l;get ino(){return this.#l}#h;get size(){return this.#h}#d;get blocks(){return this.#d}#u;get atimeMs(){return this.#u}#c;get mtimeMs(){return this.#c}#p;get ctimeMs(){return this.#p}#f;get birthtimeMs(){return this.#f}#m;get atime(){return this.#m}#g;get mtime(){return this.#g}#w;get ctime(){return this.#w}#y;get birthtime(){return this.#y}#b;#v;#S;#$;#k;#E;#x;#C;#D;#P;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(t,e=0,i,s,r,n,a){this.name=t,this.#b=r?eu(t):eh(t),this.#x=1023&e,this.nocase=r,this.roots=s,this.root=i||this,this.#C=n,this.#S=a.fullpath,this.#k=a.relative,this.#E=a.relativePosix,this.parent=a.parent,this.parent?this.#t=this.parent.#t:this.#t=er(a.fs)}depth(){return void 0!==this.#v?this.#v:this.parent?this.#v=this.parent.depth()+1:this.#v=0}childrenCache(){return this.#C}resolve(t){if(!t)return this;let e=this.getRootString(t),i=t.substring(e.length).split(this.splitSep);return e?this.getRoot(e).#L(i):this.#L(i)}#L(t){let e=this;for(let i of t)e=e.child(i);return e}children(){let t=this.#C.get(this);if(t)return t;let e=Object.assign([],{provisional:0});return this.#C.set(this,e),this.#x&=-17,e}child(t,e){if(""===t||"."===t)return this;if(".."===t)return this.parent||this;let i=this.children(),s=this.nocase?eu(t):eh(t);for(let t of i)if(t.#b===s)return t;let r=this.parent?this.sep:"",n=this.#S?this.#S+r+t:void 0,a=this.newChild(t,0,{...e,parent:this,fullpath:n});return this.canReaddir()||(a.#x|=128),i.push(a),a}relative(){if(this.isCWD)return"";if(void 0!==this.#k)return this.#k;let t=this.name,e=this.parent;if(!e)return this.#k=this.name;let i=e.relative();return i+(i&&e.parent?this.sep:"")+t}relativePosix(){if("/"===this.sep)return this.relative();if(this.isCWD)return"";if(void 0!==this.#E)return this.#E;let t=this.name,e=this.parent;if(!e)return this.#E=this.fullpathPosix();let i=e.relativePosix();return i+(i&&e.parent?"/":"")+t}fullpath(){if(void 0!==this.#S)return this.#S;let t=this.name,e=this.parent;if(!e)return this.#S=this.name;let i=e.fullpath()+(e.parent?this.sep:"")+t;return this.#S=i}fullpathPosix(){if(void 0!==this.#$)return this.#$;if("/"===this.sep)return this.#$=this.fullpath();if(!this.parent){let t=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(t)?this.#$=`//?/${t}`:this.#$=t}let t=this.parent,e=t.fullpathPosix(),i=e+(e&&t.parent?"/":"")+this.name;return this.#$=i}isUnknown(){return(15&this.#x)==0}isType(t){return this[`is${t}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(15&this.#x)==8}isDirectory(){return(15&this.#x)==4}isCharacterDevice(){return(15&this.#x)==2}isBlockDevice(){return(15&this.#x)==6}isFIFO(){return(15&this.#x)==1}isSocket(){return(15&this.#x)==12}isSymbolicLink(){return(10&this.#x)==10}lstatCached(){return 32&this.#x?this:void 0}readlinkCached(){return this.#D}realpathCached(){return this.#P}readdirCached(){let t=this.children();return t.slice(0,t.provisional)}canReadlink(){if(this.#D)return!0;if(!this.parent)return!1;let t=15&this.#x;return!(0!==t&&10!==t||256&this.#x||128&this.#x)}calledReaddir(){return!!(16&this.#x)}isENOENT(){return!!(128&this.#x)}isNamed(t){return this.nocase?this.#b===eu(t):this.#b===eh(t)}async readlink(){let t=this.#D;if(t)return t;if(this.canReadlink()&&this.parent)try{let t=await this.#t.promises.readlink(this.fullpath()),e=(await this.parent.realpath())?.resolve(t);if(e)return this.#D=e}catch(t){this.#F(t.code);return}}readlinkSync(){let t=this.#D;if(t)return t;if(this.canReadlink()&&this.parent)try{let t=this.#t.readlinkSync(this.fullpath()),e=this.parent.realpathSync()?.resolve(t);if(e)return this.#D=e}catch(t){this.#F(t.code);return}}#M(t){this.#x|=16;for(let e=t.provisional;e<t.length;e++){let i=t[e];i&&i.#R()}}#R(){128&this.#x||(this.#x=(128|this.#x)&-16,this.#_())}#_(){let t=this.children();for(let e of(t.provisional=0,t))e.#R()}#I(){this.#x|=512,this.#z()}#z(){if(64&this.#x)return;let t=this.#x;(15&t)==4&&(t&=-16),this.#x=64|t,this.#_()}#W(t=""){"ENOTDIR"===t||"EPERM"===t?this.#z():"ENOENT"===t?this.#R():this.children().provisional=0}#T(t=""){"ENOTDIR"===t?this.parent.#z():"ENOENT"===t&&this.#R()}#F(t=""){let e=this.#x;e|=256,"ENOENT"===t&&(e|=128),("EINVAL"===t||"UNKNOWN"===t)&&(e&=-16),this.#x=e,"ENOTDIR"===t&&this.parent&&this.parent.#z()}#B(t,e){return this.#O(t,e)||this.#U(t,e)}#U(t,e){let i=eo(t),s=this.newChild(t.name,i,{parent:this}),r=15&s.#x;return 4!==r&&10!==r&&0!==r&&(s.#x|=64),e.unshift(s),e.provisional++,s}#O(t,e){for(let i=e.provisional;i<e.length;i++){let s=e[i];if((this.nocase?eu(t.name):eh(t.name))===s.#b)return this.#A(t,s,i,e)}}#A(t,e,i,s){let r=e.name;return e.#x=-16&e.#x|eo(t),r!==t.name&&(e.name=t.name),i!==s.provisional&&(i===s.length-1?s.pop():s.splice(i,1),s.unshift(e)),s.provisional++,e}async lstat(){if((128&this.#x)==0)try{return this.#G(await this.#t.promises.lstat(this.fullpath())),this}catch(t){this.#T(t.code)}}lstatSync(){if((128&this.#x)==0)try{return this.#G(this.#t.lstatSync(this.fullpath())),this}catch(t){this.#T(t.code)}}#G(t){let{atime:e,atimeMs:i,birthtime:s,birthtimeMs:r,blksize:n,blocks:a,ctime:o,ctimeMs:l,dev:h,gid:d,ino:u,mode:c,mtime:f,mtimeMs:p,nlink:m,rdev:g,size:w,uid:y}=t;this.#m=e,this.#u=i,this.#y=s,this.#f=r,this.#o=n,this.#d=a,this.#w=o,this.#p=l,this.#e=h,this.#n=d,this.#l=u,this.#i=c,this.#g=f,this.#c=p,this.#s=m,this.#a=g,this.#h=w,this.#r=y;let b=eo(t);this.#x=-16&this.#x|b|32,0!==b&&4!==b&&10!==b&&(this.#x|=64)}#j=[];#N=!1;#q(t){this.#N=!1;let e=this.#j.slice();this.#j.length=0,e.forEach(e=>e(null,t))}readdirCB(t,e=!1){if(!this.canReaddir())return void(e?t(null,[]):queueMicrotask(()=>t(null,[])));let i=this.children();if(this.calledReaddir()){let s=i.slice(0,i.provisional);e?t(null,s):queueMicrotask(()=>t(null,s));return}if(this.#j.push(t),this.#N)return;this.#N=!0;let s=this.fullpath();this.#t.readdir(s,{withFileTypes:!0},(t,e)=>{if(t)this.#W(t.code),i.provisional=0;else{for(let t of e)this.#B(t,i);this.#M(i)}this.#q(i.slice(0,i.provisional))})}#Y;async readdir(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let e=this.fullpath();if(this.#Y)await this.#Y;else{let i=()=>{};this.#Y=new Promise(t=>i=t);try{for(let i of(await this.#t.promises.readdir(e,{withFileTypes:!0})))this.#B(i,t);this.#M(t)}catch(e){this.#W(e.code),t.provisional=0}this.#Y=void 0,i()}return t.slice(0,t.provisional)}readdirSync(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let e=this.fullpath();try{for(let i of this.#t.readdirSync(e,{withFileTypes:!0}))this.#B(i,t);this.#M(t)}catch(e){this.#W(e.code),t.provisional=0}return t.slice(0,t.provisional)}canReaddir(){if(704&this.#x)return!1;let t=15&this.#x;return 0===t||4===t||10===t}shouldWalk(t,e){return(4&this.#x)==4&&!(704&this.#x)&&!t.has(this)&&(!e||e(this))}async realpath(){if(this.#P)return this.#P;if(!(896&this.#x))try{let t=await this.#t.promises.realpath(this.fullpath());return this.#P=this.resolve(t)}catch{this.#I()}}realpathSync(){if(this.#P)return this.#P;if(!(896&this.#x))try{let t=this.#t.realpathSync(this.fullpath());return this.#P=this.resolve(t)}catch{this.#I()}}[ep](t){if(t===this)return;t.isCWD=!1,this.isCWD=!0;let e=new Set([]),i=[],s=this;for(;s&&s.parent;)e.add(s),s.#k=i.join(this.sep),s.#E=i.join("/"),s=s.parent,i.push("..");for(s=t;s&&s.parent&&!e.has(s);)s.#k=void 0,s.#E=void 0,s=s.parent}},eg=class t extends em{sep="\\";splitSep=ea;constructor(t,e=0,i,s,r,n,a){super(t,e,i,s,r,n,a)}newChild(e,i=0,s={}){return new t(e,i,this.root,this.roots,this.nocase,this.childrenCache(),s)}getRootString(t){return i.win32.parse(t).root}getRoot(t){if((t=t.toUpperCase().replace(/\//g,"\\").replace(en,"$1\\"))===this.root.name)return this.root;for(let[e,i]of Object.entries(this.roots))if(this.sameRoot(t,e))return this.roots[t]=i;return this.roots[t]=new eb(t,this).root}sameRoot(t,e=this.root.name){return(t=t.toUpperCase().replace(/\//g,"\\").replace(en,"$1\\"))===e}},ew=class t extends em{splitSep="/";sep="/";constructor(t,e=0,i,s,r,n,a){super(t,e,i,s,r,n,a)}getRootString(t){return t.startsWith("/")?"/":""}getRoot(t){return this.root}newChild(e,i=0,s={}){return new t(e,i,this.root,this.roots,this.nocase,this.childrenCache(),s)}},ey=class{root;rootPath;roots;cwd;#t;#e;#i;nocase;#s;constructor(t=process.cwd(),i,s,{nocase:r,childrenCacheSize:n=16384,fs:a=es}={}){this.#s=er(a),(t instanceof URL||t.startsWith("file://"))&&(t=(0,e.fileURLToPath)(t));let o=i.resolve(t);this.roots=Object.create(null),this.rootPath=this.parseRootPath(o),this.#t=new ec,this.#e=new ec,this.#i=new ef(n);let l=o.substring(this.rootPath.length).split(s);if(1!==l.length||l[0]||l.pop(),void 0===r)throw TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=r,this.root=this.newRoot(this.#s),this.roots[this.rootPath]=this.root;let h=this.root,d=l.length-1,u=i.sep,c=this.rootPath,f=!1;for(let t of l){let e=d--;h=h.child(t,{relative:Array(e).fill("..").join(u),relativePosix:Array(e).fill("..").join("/"),fullpath:c+=(f?"":u)+t}),f=!0}this.cwd=h}depth(t=this.cwd){return"string"==typeof t&&(t=this.cwd.resolve(t)),t.depth()}childrenCache(){return this.#i}resolve(...t){let e="";for(let i=t.length-1;i>=0;i--){let s=t[i];if(!(!s||"."===s)&&(e=e?`${s}/${e}`:s,this.isAbsolute(s)))break}let i=this.#t.get(e);if(void 0!==i)return i;let s=this.cwd.resolve(e).fullpath();return this.#t.set(e,s),s}resolvePosix(...t){let e="";for(let i=t.length-1;i>=0;i--){let s=t[i];if(!(!s||"."===s)&&(e=e?`${s}/${e}`:s,this.isAbsolute(s)))break}let i=this.#e.get(e);if(void 0!==i)return i;let s=this.cwd.resolve(e).fullpathPosix();return this.#e.set(e,s),s}relative(t=this.cwd){return"string"==typeof t&&(t=this.cwd.resolve(t)),t.relative()}relativePosix(t=this.cwd){return"string"==typeof t&&(t=this.cwd.resolve(t)),t.relativePosix()}basename(t=this.cwd){return"string"==typeof t&&(t=this.cwd.resolve(t)),t.name}dirname(t=this.cwd){return"string"==typeof t&&(t=this.cwd.resolve(t)),(t.parent||t).fullpath()}async readdir(t=this.cwd,e={withFileTypes:!0}){"string"==typeof t?t=this.cwd.resolve(t):t instanceof em||(e=t,t=this.cwd);let{withFileTypes:i}=e;if(!t.canReaddir())return[];{let e=await t.readdir();return i?e:e.map(t=>t.name)}}readdirSync(t=this.cwd,e={withFileTypes:!0}){"string"==typeof t?t=this.cwd.resolve(t):t instanceof em||(e=t,t=this.cwd);let{withFileTypes:i=!0}=e;return t.canReaddir()?i?t.readdirSync():t.readdirSync().map(t=>t.name):[]}async lstat(t=this.cwd){return"string"==typeof t&&(t=this.cwd.resolve(t)),t.lstat()}lstatSync(t=this.cwd){return"string"==typeof t&&(t=this.cwd.resolve(t)),t.lstatSync()}async readlink(t=this.cwd,{withFileTypes:e}={withFileTypes:!1}){"string"==typeof t?t=this.cwd.resolve(t):t instanceof em||(e=t.withFileTypes,t=this.cwd);let i=await t.readlink();return e?i:i?.fullpath()}readlinkSync(t=this.cwd,{withFileTypes:e}={withFileTypes:!1}){"string"==typeof t?t=this.cwd.resolve(t):t instanceof em||(e=t.withFileTypes,t=this.cwd);let i=t.readlinkSync();return e?i:i?.fullpath()}async realpath(t=this.cwd,{withFileTypes:e}={withFileTypes:!1}){"string"==typeof t?t=this.cwd.resolve(t):t instanceof em||(e=t.withFileTypes,t=this.cwd);let i=await t.realpath();return e?i:i?.fullpath()}realpathSync(t=this.cwd,{withFileTypes:e}={withFileTypes:!1}){"string"==typeof t?t=this.cwd.resolve(t):t instanceof em||(e=t.withFileTypes,t=this.cwd);let i=t.realpathSync();return e?i:i?.fullpath()}async walk(t=this.cwd,e={}){"string"==typeof t?t=this.cwd.resolve(t):t instanceof em||(e=t,t=this.cwd);let{withFileTypes:i=!0,follow:s=!1,filter:r,walkFilter:n}=e,a=[];(!r||r(t))&&a.push(i?t:t.fullpath());let o=new Set,l=(t,e)=>{o.add(t),t.readdirCB((t,h)=>{if(t)return e(t);let d=h.length;if(!d)return e();let u=()=>{0==--d&&e()};for(let t of h)(!r||r(t))&&a.push(i?t:t.fullpath()),s&&t.isSymbolicLink()?t.realpath().then(t=>t?.isUnknown()?t.lstat():t).then(t=>t?.shouldWalk(o,n)?l(t,u):u()):t.shouldWalk(o,n)?l(t,u):u()},!0)},h=t;return new Promise((t,e)=>{l(h,i=>{if(i)return e(i);t(a)})})}walkSync(t=this.cwd,e={}){"string"==typeof t?t=this.cwd.resolve(t):t instanceof em||(e=t,t=this.cwd);let{withFileTypes:i=!0,follow:s=!1,filter:r,walkFilter:n}=e,a=[];(!r||r(t))&&a.push(i?t:t.fullpath());let o=new Set([t]);for(let t of o)for(let e of t.readdirSync()){(!r||r(e))&&a.push(i?e:e.fullpath());let t=e;if(e.isSymbolicLink()){if(!(s&&(t=e.realpathSync())))continue;t.isUnknown()&&t.lstatSync()}t.shouldWalk(o,n)&&o.add(t)}return a}[Symbol.asyncIterator](){return this.iterate()}iterate(t=this.cwd,e={}){return"string"==typeof t?t=this.cwd.resolve(t):t instanceof em||(e=t,t=this.cwd),this.stream(t,e)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(t=this.cwd,e={}){"string"==typeof t?t=this.cwd.resolve(t):t instanceof em||(e=t,t=this.cwd);let{withFileTypes:i=!0,follow:s=!1,filter:r,walkFilter:n}=e;(!r||r(t))&&(yield i?t:t.fullpath());let a=new Set([t]);for(let t of a)for(let e of t.readdirSync()){(!r||r(e))&&(yield i?e:e.fullpath());let t=e;if(e.isSymbolicLink()){if(!(s&&(t=e.realpathSync())))continue;t.isUnknown()&&t.lstatSync()}t.shouldWalk(a,n)&&a.add(t)}}stream(t=this.cwd,e={}){"string"==typeof t?t=this.cwd.resolve(t):t instanceof em||(e=t,t=this.cwd);let{withFileTypes:i=!0,follow:s=!1,filter:r,walkFilter:n}=e,a=new ee({objectMode:!0});(!r||r(t))&&a.write(i?t:t.fullpath());let o=new Set,l=[t],h=0,d=()=>{let t=!1;for(;!t;){let e=l.shift();if(!e){0===h&&a.end();return}h++,o.add(e);let u=(e,f,p=!1)=>{if(e)return a.emit("error",e);if(s&&!p){let t=[];for(let e of f)e.isSymbolicLink()&&t.push(e.realpath().then(t=>t?.isUnknown()?t.lstat():t));if(t.length)return void Promise.all(t).then(()=>u(null,f,!0))}for(let e of f)e&&(!r||r(e))&&(a.write(i?e:e.fullpath())||(t=!0));for(let t of(h--,f)){let e=t.realpathCached()||t;e.shouldWalk(o,n)&&l.push(e)}t&&!a.flowing?a.once("drain",d):c||d()},c=!0;e.readdirCB(u,!0),c=!1}};return d(),a}streamSync(t=this.cwd,e={}){"string"==typeof t?t=this.cwd.resolve(t):t instanceof em||(e=t,t=this.cwd);let{withFileTypes:i=!0,follow:s=!1,filter:r,walkFilter:n}=e,a=new ee({objectMode:!0}),o=new Set;(!r||r(t))&&a.write(i?t:t.fullpath());let l=[t],h=0,d=()=>{let t=!1;for(;!t;){let e=l.shift();if(!e){0===h&&a.end();return}h++,o.add(e);let d=e.readdirSync();for(let e of d)(!r||r(e))&&(a.write(i?e:e.fullpath())||(t=!0));for(let t of(h--,d)){let e=t;if(t.isSymbolicLink()){if(!(s&&(e=t.realpathSync())))continue;e.isUnknown()&&e.lstatSync()}e.shouldWalk(o,n)&&l.push(e)}}t&&!a.flowing&&a.once("drain",d)};return d(),a}chdir(t=this.cwd){let e=this.cwd;this.cwd="string"==typeof t?this.cwd.resolve(t):t,this.cwd[ep](e)}},eb=class extends ey{sep="\\";constructor(t=process.cwd(),e={}){let{nocase:s=!0}=e;super(t,i.win32,"\\",{...e,nocase:s}),this.nocase=s;for(let t=this.cwd;t;t=t.parent)t.nocase=this.nocase}parseRootPath(t){return i.win32.parse(t).root.toUpperCase()}newRoot(t){return new eg(this.rootPath,4,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")||t.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(t)}},ev=class extends ey{sep="/";constructor(t=process.cwd(),e={}){let{nocase:s=!1}=e;super(t,i.posix,"/",{...e,nocase:s}),this.nocase=s}parseRootPath(t){return"/"}newRoot(t){return new ew(this.rootPath,4,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")}},eS=class extends ev{constructor(t=process.cwd(),e={}){let{nocase:i=!0}=e;super(t,{...e,nocase:i})}},e$=Symbol.for("nodejs.util.inspect.custom"),ek=class t{#t;#e;#i;length;#s;#r;#n;#a;#o;#l;#h=!0;constructor(t,e,i,s){if(!(t=>t.length>=1)(t))throw TypeError("empty pattern list");if(!(t=>t.length>=1)(e))throw TypeError("empty glob list");if(e.length!==t.length)throw TypeError("mismatched pattern list and glob list lengths");if(this.length=t.length,i<0||i>=this.length)throw TypeError("index out of range");if(this.#t=t,this.#e=e,this.#i=i,this.#s=s,0===this.#i){if(this.isUNC()){let[t,e,i,s,...r]=this.#t,[n,a,o,l,...h]=this.#e;""===r[0]&&(r.shift(),h.shift());let d=[t,e,i,s,""].join("/"),u=[n,a,o,l,""].join("/");this.#t=[d,...r],this.#e=[u,...h],this.length=this.#t.length}else if(this.isDrive()||this.isAbsolute()){let[t,...e]=this.#t,[i,...s]=this.#e;""===e[0]&&(e.shift(),s.shift()),this.#t=[t+"/",...e],this.#e=[i+"/",...s],this.length=this.#t.length}}}[e$](){return"Pattern <"+this.#e.slice(this.#i).join("/")+">"}pattern(){return this.#t[this.#i]}isString(){return"string"==typeof this.#t[this.#i]}isGlobstar(){return this.#t[this.#i]===td}isRegExp(){return this.#t[this.#i]instanceof RegExp}globString(){return this.#n=this.#n||(0===this.#i?this.isAbsolute()?this.#e[0]+this.#e.slice(1).join("/"):this.#e.join("/"):this.#e.slice(this.#i).join("/"))}hasMore(){return this.length>this.#i+1}rest(){return void 0!==this.#r?this.#r:this.hasMore()?(this.#r=new t(this.#t,this.#e,this.#i+1,this.#s),this.#r.#l=this.#l,this.#r.#o=this.#o,this.#r.#a=this.#a,this.#r):this.#r=null}isUNC(){let t=this.#t;return void 0!==this.#o?this.#o:this.#o="win32"===this.#s&&0===this.#i&&""===t[0]&&""===t[1]&&"string"==typeof t[2]&&!!t[2]&&"string"==typeof t[3]&&!!t[3]}isDrive(){let t=this.#t;return void 0!==this.#a?this.#a:this.#a="win32"===this.#s&&0===this.#i&&this.length>1&&"string"==typeof t[0]&&/^[a-z]:$/i.test(t[0])}isAbsolute(){let t=this.#t;return void 0!==this.#l?this.#l:this.#l=""===t[0]&&t.length>1||this.isDrive()||this.isUNC()}root(){let t=this.#t[0];return"string"==typeof t&&this.isAbsolute()&&0===this.#i?t:""}checkFollowGlobstar(){return!(0===this.#i||!this.isGlobstar()||!this.#h)}markFollowGlobstar(){return 0!==this.#i&&!!this.isGlobstar()&&!!this.#h&&(this.#h=!1,!0)}},eE="object"==typeof process&&process&&"string"==typeof process.platform?process.platform:"linux",ex=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(t,{nobrace:e,nocase:i,noext:s,noglobstar:r,platform:n=eE}){for(let a of(this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=n,this.mmopts={dot:!0,nobrace:e,nocase:i,noext:s,noglobstar:r,optimizationLevel:2,platform:n,nocomment:!0,nonegate:!0},t))this.add(a)}add(t){let e=new tp(t,this.mmopts);for(let t=0;t<e.set.length;t++){let i=e.set[t],s=e.globParts[t];if(!i||!s)throw Error("invalid pattern object");for(;"."===i[0]&&"."===s[0];)i.shift(),s.shift();let r=new ek(i,s,0,this.platform),n=new tp(r.globString(),this.mmopts),a="**"===s[s.length-1],o=r.isAbsolute();o?this.absolute.push(n):this.relative.push(n),a&&(o?this.absoluteChildren.push(n):this.relativeChildren.push(n))}}ignored(t){let e=t.fullpath(),i=`${e}/`,s=t.relative()||".",r=`${s}/`;for(let t of this.relative)if(t.match(s)||t.match(r))return!0;for(let t of this.absolute)if(t.match(e)||t.match(i))return!0;return!1}childrenIgnored(t){let e=t.fullpath()+"/",i=(t.relative()||".")+"/";for(let t of this.relativeChildren)if(t.match(i))return!0;for(let t of this.absoluteChildren)if(t.match(e))return!0;return!1}},eC=class t{store;constructor(t=new Map){this.store=t}copy(){return new t(new Map(this.store))}hasWalked(t,e){return this.store.get(t.fullpath())?.has(e.globString())}storeWalked(t,e){let i=t.fullpath(),s=this.store.get(i);s?s.add(e.globString()):this.store.set(i,new Set([e.globString()]))}},eA=class{store=new Map;add(t,e,i){let s=2*!!e|!!i,r=this.store.get(t);this.store.set(t,void 0===r?s:s&r)}entries(){return[...this.store.entries()].map(([t,e])=>[t,!!(2&e),!!(1&e)])}},eO=class{store=new Map;add(t,e){if(!t.canReaddir())return;let i=this.store.get(t);i?i.find(t=>t.globString()===e.globString())||i.push(e):this.store.set(t,[e])}get(t){let e=this.store.get(t);if(!e)throw Error("attempting to walk unknown path");return e}entries(){return this.keys().map(t=>[t,this.store.get(t)])}keys(){return[...this.store.keys()].filter(t=>t.canReaddir())}},ej=class t{hasWalkedCache;matches=new eA;subwalks=new eO;patterns;follow;dot;opts;constructor(t,e){this.opts=t,this.follow=!!t.follow,this.dot=!!t.dot,this.hasWalkedCache=e?e.copy():new eC}processPatterns(t,e){for(let[i,s]of(this.patterns=e,e.map(e=>[t,e]))){this.hasWalkedCache.storeWalked(i,s);let t=s.root(),e=s.isAbsolute()&&!1!==this.opts.absolute;if(t){i=i.resolve("/"===t&&void 0!==this.opts.root?this.opts.root:t);let e=s.rest();if(e)s=e;else{this.matches.add(i,!0,!1);continue}}if(i.isENOENT())continue;let r,n,a=!1;for(;"string"==typeof(r=s.pattern())&&(n=s.rest());)i=i.resolve(r),s=n,a=!0;if(r=s.pattern(),n=s.rest(),a){if(this.hasWalkedCache.hasWalked(i,s))continue;this.hasWalkedCache.storeWalked(i,s)}if("string"==typeof r){let t=".."===r||""===r||"."===r;this.matches.add(i.resolve(r),e,t);continue}if(r===td){(!i.isSymbolicLink()||this.follow||s.checkFollowGlobstar())&&this.subwalks.add(i,s);let t=n?.pattern(),r=n?.rest();if(n&&(""!==t&&"."!==t||r)){if(".."===t){let t=i.parent||i;r?this.hasWalkedCache.hasWalked(t,r)||this.subwalks.add(t,r):this.matches.add(t,e,!0)}}else this.matches.add(i,e,""===t||"."===t)}else r instanceof RegExp&&this.subwalks.add(i,s)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new t(this.opts,this.hasWalkedCache)}filterEntries(t,e){let i=this.subwalks.get(t),s=this.child();for(let t of e)for(let e of i){let i=e.isAbsolute(),r=e.pattern(),n=e.rest();r===td?s.testGlobstar(t,e,n,i):r instanceof RegExp?s.testRegExp(t,r,n,i):s.testString(t,r,n,i)}return s}testGlobstar(t,e,i,s){if((this.dot||!t.name.startsWith("."))&&(e.hasMore()||this.matches.add(t,s,!1),t.canReaddir()&&(this.follow||!t.isSymbolicLink()?this.subwalks.add(t,e):t.isSymbolicLink()&&(i&&e.checkFollowGlobstar()?this.subwalks.add(t,i):e.markFollowGlobstar()&&this.subwalks.add(t,e)))),i){let e=i.pattern();if("string"==typeof e&&".."!==e&&""!==e&&"."!==e)this.testString(t,e,i.rest(),s);else if(".."===e){let e=t.parent||t;this.subwalks.add(e,i)}else e instanceof RegExp&&this.testRegExp(t,e,i.rest(),s)}}testRegExp(t,e,i,s){e.test(t.name)&&(i?this.subwalks.add(t,i):this.matches.add(t,s,!1))}testString(t,e,i,s){t.isNamed(e)&&(i?this.subwalks.add(t,i):this.matches.add(t,s,!1))}},eT=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#t=[];#e;#i;signal;maxDepth;includeChildMatches;constructor(t,e,i){if(this.patterns=t,this.path=e,this.opts=i,this.#i=i.posix||"win32"!==i.platform?"/":"\\",this.includeChildMatches=!1!==i.includeChildMatches,(i.ignore||!this.includeChildMatches)&&(this.#e=((t,e)=>"string"==typeof t?new ex([t],e):Array.isArray(t)?new ex(t,e):t)(i.ignore??[],i),!this.includeChildMatches&&"function"!=typeof this.#e.add))throw Error("cannot ignore child matches, ignore lacks add() method.");this.maxDepth=i.maxDepth||1/0,i.signal&&(this.signal=i.signal,this.signal.addEventListener("abort",()=>{this.#t.length=0}))}#s(t){return this.seen.has(t)||!!this.#e?.ignored?.(t)}#r(t){return!!this.#e?.childrenIgnored?.(t)}pause(){this.paused=!0}resume(){let t;if(!this.signal?.aborted)for(this.paused=!1;!this.paused&&(t=this.#t.shift());)t()}onResume(t){this.signal?.aborted||(this.paused?this.#t.push(t):t())}async matchCheck(t,e){let i;if(e&&this.opts.nodir)return;if(this.opts.realpath){if(!(i=t.realpathCached()||await t.realpath()))return;t=i}let s=t.isUnknown()||this.opts.stat?await t.lstat():t;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let t=await s.realpath();t&&(t.isUnknown()||this.opts.stat)&&await t.lstat()}return this.matchCheckTest(s,e)}matchCheckTest(t,e){return t&&(this.maxDepth===1/0||t.depth()<=this.maxDepth)&&(!e||t.canReaddir())&&(!this.opts.nodir||!t.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!t.isSymbolicLink()||!t.realpathCached()?.isDirectory())&&!this.#s(t)?t:void 0}matchCheckSync(t,e){let i;if(e&&this.opts.nodir)return;if(this.opts.realpath){if(!(i=t.realpathCached()||t.realpathSync()))return;t=i}let s=t.isUnknown()||this.opts.stat?t.lstatSync():t;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let t=s.realpathSync();t&&(t?.isUnknown()||this.opts.stat)&&t.lstatSync()}return this.matchCheckTest(s,e)}matchFinish(t,e){if(this.#s(t))return;if(!this.includeChildMatches&&this.#e?.add){let e=`${t.relativePosix()}/**`;this.#e.add(e)}let i=void 0===this.opts.absolute?e:this.opts.absolute;this.seen.add(t);let s=this.opts.mark&&t.isDirectory()?this.#i:"";if(this.opts.withFileTypes)this.matchEmit(t);else if(i){let e=this.opts.posix?t.fullpathPosix():t.fullpath();this.matchEmit(e+s)}else{let e=this.opts.posix?t.relativePosix():t.relative(),i=this.opts.dotRelative&&!e.startsWith(".."+this.#i)?"."+this.#i:"";this.matchEmit(e?i+e+s:"."+s)}}async match(t,e,i){let s=await this.matchCheck(t,i);s&&this.matchFinish(s,e)}matchSync(t,e,i){let s=this.matchCheckSync(t,i);s&&this.matchFinish(s,e)}walkCB(t,e,i){this.signal?.aborted&&i(),this.walkCB2(t,e,new ej(this.opts),i)}walkCB2(t,e,i,s){if(this.#r(t))return s();if(this.signal?.aborted&&s(),this.paused)return void this.onResume(()=>this.walkCB2(t,e,i,s));i.processPatterns(t,e);let r=1,n=()=>{0==--r&&s()};for(let[t,e,s]of i.matches.entries())this.#s(t)||(r++,this.match(t,e,s).then(()=>n()));for(let t of i.subwalkTargets()){if(this.maxDepth!==1/0&&t.depth()>=this.maxDepth)continue;r++;let e=t.readdirCached();t.calledReaddir()?this.walkCB3(t,e,i,n):t.readdirCB((e,s)=>this.walkCB3(t,s,i,n),!0)}n()}walkCB3(t,e,i,s){i=i.filterEntries(t,e);let r=1,n=()=>{0==--r&&s()};for(let[t,e,s]of i.matches.entries())this.#s(t)||(r++,this.match(t,e,s).then(()=>n()));for(let[t,e]of i.subwalks.entries())r++,this.walkCB2(t,e,i.child(),n);n()}walkCBSync(t,e,i){this.signal?.aborted&&i(),this.walkCB2Sync(t,e,new ej(this.opts),i)}walkCB2Sync(t,e,i,s){if(this.#r(t))return s();if(this.signal?.aborted&&s(),this.paused)return void this.onResume(()=>this.walkCB2Sync(t,e,i,s));i.processPatterns(t,e);let r=1,n=()=>{0==--r&&s()};for(let[t,e,s]of i.matches.entries())this.#s(t)||this.matchSync(t,e,s);for(let t of i.subwalkTargets()){if(this.maxDepth!==1/0&&t.depth()>=this.maxDepth)continue;r++;let e=t.readdirSync();this.walkCB3Sync(t,e,i,n)}n()}walkCB3Sync(t,e,i,s){i=i.filterEntries(t,e);let r=1,n=()=>{0==--r&&s()};for(let[t,e,s]of i.matches.entries())this.#s(t)||this.matchSync(t,e,s);for(let[t,e]of i.subwalks.entries())r++,this.walkCB2Sync(t,e,i.child(),n);n()}},eF=class extends eT{matches=new Set;constructor(t,e,i){super(t,e,i)}matchEmit(t){this.matches.add(t)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((t,e)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?e(this.signal.reason):t(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}},eR=class extends eT{results;constructor(t,e,i){super(t,e,i),this.results=new ee({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(t){this.results.write(t),this.results.flowing||this.pause()}stream(){let t=this.path;return t.isUnknown()?t.lstat().then(()=>{this.walkCB(t,this.patterns,()=>this.results.end())}):this.walkCB(t,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}},e_="object"==typeof process&&process&&"string"==typeof process.platform?process.platform:"linux",eD=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(t,i){if(!i)throw TypeError("glob options required");if(this.withFileTypes=!!i.withFileTypes,this.signal=i.signal,this.follow=!!i.follow,this.dot=!!i.dot,this.dotRelative=!!i.dotRelative,this.nodir=!!i.nodir,this.mark=!!i.mark,i.cwd?(i.cwd instanceof URL||i.cwd.startsWith("file://"))&&(i.cwd=(0,e.fileURLToPath)(i.cwd)):this.cwd="",this.cwd=i.cwd||"",this.root=i.root,this.magicalBraces=!!i.magicalBraces,this.nobrace=!!i.nobrace,this.noext=!!i.noext,this.realpath=!!i.realpath,this.absolute=i.absolute,this.includeChildMatches=!1!==i.includeChildMatches,this.noglobstar=!!i.noglobstar,this.matchBase=!!i.matchBase,this.maxDepth="number"==typeof i.maxDepth?i.maxDepth:1/0,this.stat=!!i.stat,this.ignore=i.ignore,this.withFileTypes&&void 0!==this.absolute)throw Error("cannot set absolute and withFileTypes:true");if("string"==typeof t&&(t=[t]),this.windowsPathsNoEscape=!!i.windowsPathsNoEscape||!1===i.allowWindowsEscape,this.windowsPathsNoEscape&&(t=t.map(t=>t.replace(/\\/g,"/"))),this.matchBase){if(i.noglobstar)throw TypeError("base matching requires globstar");t=t.map(t=>t.includes("/")?t:`./**/${t}`)}if(this.pattern=t,this.platform=i.platform||e_,this.opts={...i,platform:this.platform},i.scurry){if(this.scurry=i.scurry,void 0!==i.nocase&&i.nocase!==i.scurry.nocase)throw Error("nocase option contradicts provided scurry option")}else{let t="win32"===i.platform?eb:"darwin"===i.platform?eS:(i.platform,ev);this.scurry=new t(this.cwd,{nocase:i.nocase,fs:i.fs})}this.nocase=this.scurry.nocase;let s="darwin"===this.platform||"win32"===this.platform,r={braceExpandMax:1e4,...i,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:s,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},[n,a]=this.pattern.map(t=>new tp(t,r)).reduce((t,e)=>(t[0].push(...e.set),t[1].push(...e.globParts),t),[[],[]]);this.patterns=n.map((t,e)=>{let i=a[e];if(!i)throw Error("invalid pattern object");return new ek(t,i,0,this.platform)})}async walk(){return[...await new eF(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new eF(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new eR(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new eR(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};function eM(t,e={}){return new eD(t,e).streamSync()}function eN(t,e={}){return new eD(t,e).stream()}function eP(t,e={}){return new eD(t,e).walkSync()}async function eL(t,e={}){return new eD(t,e).walk()}function eI(t,e={}){return new eD(t,e).iterateSync()}function eW(t,e={}){return new eD(t,e).iterate()}var ez=Object.assign(eN,{sync:eM}),eU=Object.assign(eW,{sync:eI}),eB=Object.assign(eP,{stream:eM,iterate:eI}),eG=Object.assign(eL,{glob:eL,globSync:eP,sync:eB,globStream:eN,stream:ez,globStreamSync:eM,streamSync:eM,globIterate:eW,iterate:eU,globIterateSync:eI,iterateSync:eI,Glob:eD,hasMagic:(t,e={})=>{for(let i of(Array.isArray(t)||(t=[t]),t))if(new tp(i,e).hasMagic())return!0;return!1},escape:X,unescape:P});eG.glob=eG,t.s(["glob",0,eG],845285),t.s(["applyEdits",0,function(t,e){let i=t;for(let[t,s]of e.entries()){if("string"!=typeof s?.old_string||"string"!=typeof s?.new_string)return{error:`Edit ${t+1}: old_string and new_string must be strings`};if(""===s.old_string){if(""!==i)return{error:`Edit ${t+1}: empty old_string is only allowed for a new, empty doc`};i=s.new_string;continue}let e=i.indexOf(s.old_string);if(-1===e)return{error:`Edit ${t+1}: old_string not found in the doc`};if(-1!==i.indexOf(s.old_string,e+1))return{error:`Edit ${t+1}: old_string matches more than once; include more surrounding text`};i=i.slice(0,e)+s.new_string+i.slice(e+s.old_string.length)}return{content:i}}],471448);let eq=/\b(shipped|done|released|complete[d]?)\b/i;function eY(t){return t.replace(/\[([^\]]+)\]\([^)]*\)/g,"$1").replace(/[*_`]/g,"").replace(/\s+/g," ").trim()}function eJ(t){return t.length>80?`${t.slice(0,79).trimEnd()}…`:t}function eH(t){return t.length&&t.every(t=>"done"===t)?"done":t.some(t=>"planned"!==t)?"in-progress":"planned"}let eX=t=>{let e=parseFloat(t);return Number.isFinite(e)?e:1/0};t.s(["roadmapFromMarkdown",0,function(t){let e=[],i=null,s=[],r=null,n=0,a=()=>{if(i&&n>0){i.body=s.join(" ").trim();let t=e.filter(t=>t.parent===i?.key).map(t=>t.status);"done"!==i.status&&(i.status=eH(t))}else i&&e.splice(e.indexOf(i),1);i=null,r=null,s=[],n=0};for(let o of t.split("\n")){let t=o.match(/^##\s+(.+?)\s*#*\s*$/);if(t){a();let s=eJ(eY(t[1]));i={key:`h${e.length}`,title:s,parent:null,status:eq.test(s)?"done":"planned",tasks:[],body:""},e.push(i);continue}if(!i)continue;if(/^#/.test(o)){a();continue}let l=o.match(/^[-*]\s+(?:\[([ xX])\]\s+)?(.*)$/);if(l){let t=l[2],s=t.match(/^\*\*(.+?)\*\*\s*(?:[—–:-]\s*)?(.*)$/),a=eJ(eY(s?s[1]:t));if(!a)continue;let o=l[1]?"x"===l[1].toLowerCase()?"done":"planned":"done"===i.status?"done":"planned";r={key:`f${e.length}`,title:a,parent:i.key,status:o,tasks:[],body:s?s[2].trim():""},e.push(r),n++;continue}let h=o.match(/^\s+(\S.*)$/);r&&h?r.body=[r.body,h[1].replace(/^[-*]\s+/,"- ")].filter(Boolean).join("\n"):!r&&o.trim()&&!/^-{3,}$/.test(o.trim())&&s.push(o.trim())}return a(),e},"roadmapFromTasks",0,function(t){let e=new Map;for(let i of t){if("cancelled"===i.status)continue;let t=eY(i.phase||"").replace(/^—$/,"")||"Unphased";e.set(t,[...e.get(t)??[],i])}let i=[...e.keys()].sort((t,e)=>eX(t)-eX(e)||t.localeCompare(e)),s=[];for(let t of i){let i=`h${s.length}`,r=(e.get(t)??[]).map(t=>({key:`f${t.id}`,title:eJ(t.title),parent:i,status:"done"===t.status?"done":"in-progress"===t.status?"in-progress":"planned",tasks:[t.id],body:""}));s.push({key:i,title:eJ(t),parent:null,status:eH(r.map(t=>t.status)),tasks:[],body:""},...r)}return s},"starterRoadmap",0,function(){let t=(t,e,i,s)=>({key:t,title:e,parent:null,status:i,tasks:[],body:s});return[t("shipped","Shipped","done","What is already live."),t("now","Now","planned","What we are building right now."),t("next","Next","planned","Planned once the current work ships."),t("later","Later","planned","Ideas — not committed.")]}],388985);let eZ=t=>"done"===t||"cancelled"===t;t.s(["pickNextTask",0,function(t,e){let i=new Map(e.map(t=>[t.id,t])),s=t.tasks.map(t=>i.get(t)).filter(t=>!!t),r=t=>[...new Set((t.dependsOn.match(/\bT\d+\b/gi)??[]).map(t=>t.toUpperCase()))].filter(t=>{let e=i.get(t);return!e||!eZ(e.status)});for(let t of s)if("todo"===t.status&&!r(t).length)return{kind:"ready",taskId:t.id};if(s.every(t=>eZ(t.status)))return{kind:"finished"};let n=new Set(t.tasks),a=new Map,o=t=>{if(a.has(t))return a.get(t)??!1;a.set(t,!1);let e=i.get(t),s=!!e&&"blocked"!==e.status&&"paused"!==e.status&&"review"!==e.status&&("todo"!==e.status||n.has(t)&&r(e).every(o));return a.set(t,s),s},l=[];for(let e of t.tasks){let t=i.get(e);if(t){if("in-progress"===t.status)l.push({taskId:e,reason:`${e} is in progress (claimed)`});else if("blocked"===t.status)l.push({taskId:e,reason:`${e} is blocked`});else if("paused"===t.status)l.push({taskId:e,reason:`${e} is paused — needs a human to resume it`});else if("review"===t.status)l.push({taskId:e,reason:`${e} in review — needs a human`});else if("todo"===t.status){let s=r(t).map(t=>`${t} (${i.get(t)?.status??"missing"})`);l.push({taskId:e,reason:`${e} waits on ${s.join(", ")}`})}}else l.push({taskId:e,reason:`${e} has no task file`})}return{kind:"waiting",waiting:l,needsHuman:l.every(t=>!o(t.taskId))}}],731946);let eV=t=>!!t&&"object"==typeof t&&!Array.isArray(t),eK=t=>"string"==typeof t?t.trim():"";function eQ(t,e,i="is not an existing roadmap item"){let s=e.find(e=>e.id===t.toUpperCase());return s?null!==s.parent?{error:`parent ${s.id} is an epic, not a horizon (max depth is 2)`}:{id:s.id}:{error:`parent "${t}" ${i}`}}let e0=(t,e,i)=>t.find(t=>(t.parent??"")===e&&t.title.trim().toLowerCase()===i.toLowerCase())?.id,e1=["planned","in-progress","done"];t.s(["planTarget",0,function(t){return eK(t.epic)?eK(t.epic).toUpperCase():t.newEpic?`new epic "${eK(t.newEpic.title)}"`:"no epic"},"selectPlan",0,function(t,e){if("roadmap"===t.kind)return function(t,e){let i=[],s=t.horizons??[],r=t.epics??[],n=new Set(s.map(t=>t.key)),a=new Set([...n,...r.map(t=>t.key)]),o=new Set(e);for(let t of o)a.has(t)||i.push(`unknown key "${t}"`);let l=s.filter(t=>o.has(t.key)),h=r.filter(t=>o.has(t.key));for(let t of(l.length+h.length===0&&i.push("nothing selected"),h)){let e=t.parent.trim();n.has(e)&&!o.has(e)&&i.push(`${t.key} is under ${e}, which you unchecked; check ${e} or uncheck ${t.key}`)}return{plan:{...t,horizons:l,epics:h},errors:i}}(t,e);let i=[],s=new Set(t.tasks.map(t=>t.key.trim())),r=new Set(e.map(t=>t.trim()));for(let t of r)s.has(t)||i.push(`unknown key "${t}"`);let n=t.tasks.filter(t=>r.has(t.key.trim()));for(let t of(0===n.length&&i.push("nothing selected"),n))for(let e of(t.dependsOn??[]).map(t=>t.trim()))s.has(e)&&!r.has(e)&&i.push(`${t.key.trim()} depends on ${e}, which you unchecked`);return{plan:{...t,tasks:n},errors:i}},"validatePlan",0,function(t,e){if(!eV(t))return["plan must be an object"];if("roadmap"===t.kind)return function(t,e){let i=[],s=t.horizons??[],r=t.epics??[];if(Array.isArray(s)||i.push("horizons must be an array"),Array.isArray(r)||i.push("epics must be an array"),i.length>0)return i;if(s.length+r.length===0)return["a roadmap plan needs at least one horizon or epic"];let n=new Set,a=new Set,o=(t,e,s)=>{let r=eV(t)?eK(t.key):"";r?n.has(r)?i.push(`duplicate key "${r}"`):(n.add(r),s&&a.add(r)):i.push(`${e}: key is required`)};s.forEach((t,e)=>o(t,`horizon #${e+1}`,!0)),r.forEach((t,e)=>o(t,`epic #${e+1}`,!1));let l=new Map,h=(t,s,r)=>{let n=`${t}\0${s.toLowerCase()}`,a=e0(e.roadmap,t,s)??l.get(n);a?i.push(`${r}: "${s}" already exists ${t?`under ${t}`:"as a horizon"} (${a})`):l.set(n,r)};return s.forEach((t,e)=>{if(!eV(t))return void i.push(`horizon #${e+1} must be an object`);let s=eK(t.key)||`horizon #${e+1}`,r=eK(t.title);r?h("",r,s):i.push(`${s}: title is required`),void 0!==t.body&&"string"!=typeof t.body&&i.push(`${s}: body must be a markdown string`)}),r.forEach((t,s)=>{if(!eV(t))return void i.push(`epic #${s+1} must be an object`);let r=eK(t.key)||`epic #${s+1}`,o=eK(t.title);o||i.push(`${r}: title is required`),"string"!=typeof t.body&&i.push(`${r}: body must be a markdown string`),void 0===t.status||e1.includes(t.status)||i.push(`${r}: status must be one of ${e1.join(", ")} (got ${JSON.stringify(t.status)})`);let l=eK(t.parent),d="";if(l)if(a.has(l))d=l;else if(n.has(l))i.push(`${r}: parent "${l}" is an epic in this plan; an epic's parent must be a horizon`);else{let t=eQ(l,e.roadmap,"is neither a horizon key in this plan nor an existing roadmap item");"id"in t?d=t.id:i.push(`${r}: ${t.error}`)}else i.push(`${r}: parent is required (an existing horizon id or a horizon key in this plan)`);o&&d&&h(d,o,r)}),i}(t,e);if("breakdown"!==t.kind)return[`plan.kind must be "breakdown" or "roadmap" (got ${JSON.stringify(t.kind)})`];let i=[],s=eK(t.epic).toUpperCase();if(void 0!==t.epic&&"string"!=typeof t.epic)i.push("epic must be a string (an epic id)");else if(s&&void 0!==t.newEpic)i.push("pass either epic (an existing epic) or newEpic, not both");else if(s){let r=e.roadmap.find(t=>t.id===s);r?r.parent||i.push(`${r.id} is a horizon, not an epic; pass an epic id`):i.push(`Epic ${JSON.stringify(t.epic)} not found`)}else if(void 0!==t.newEpic){let s=t.newEpic;if(eV(s)){let t=eK(s.title),r=eK(s.parent);if(t||i.push("newEpic: title is required"),"string"!=typeof s.body&&i.push("newEpic: body must be a markdown string"),r){let s=eQ(r,e.roadmap);if("error"in s)i.push(`newEpic: ${s.error}`);else if(t){let r=e0(e.roadmap,s.id,t);r&&i.push(`newEpic: "${t}" already exists under ${s.id} (${r})`)}}else i.push("newEpic: parent is required (an existing horizon id)")}else i.push("newEpic must be an object { title, parent, body }")}if(!Array.isArray(t.tasks)||0===t.tasks.length)return i.push("tasks must be a non-empty array"),i;let r=t.tasks,n=new Set(e.taskIds.map(t=>t.toUpperCase())),a=new Map;r.forEach((t,e)=>{let s=eV(t)?eK(t.key):"";s?a.has(s)?i.push(`duplicate key "${s}"`):a.set(s,e):i.push(`task #${e+1}: key is required`)});let o=new Map;r.forEach((t,e)=>{var s;let r;if(!eV(t))return void i.push(`task #${e+1} must be an object`);let l=eK(t.key)||`task #${e+1}`;if(eK(t.title)||i.push(`${l}: title is required`),"string"!=typeof t.body&&i.push(`${l}: body must be a markdown string`),void 0!==t.size&&"string"!=typeof t.size&&i.push(`${l}: size must be a string`),void 0===t.due||"string"==typeof t.due&&(r=(s=t.due).match(/^(\d{4})-(\d{2})-(\d{2})$/))&&new Date(Date.UTC(+r[1],r[2]-1,+r[3])).toISOString().slice(0,10)===s||i.push(`${l}: due must be a date YYYY-MM-DD (got ${JSON.stringify(t.due)})`),void 0===t.dependsOn)return;if(!Array.isArray(t.dependsOn))return void i.push(`${l}: dependsOn must be an array`);let h=[];for(let e of t.dependsOn){let t=eK(e);a.has(t)?h.push(t):n.has(t.toUpperCase())||i.push(`${l}: dependsOn "${String(e)}" is neither a key in this plan nor an existing task`)}eK(t.key)&&o.set(eK(t.key),h)});let l=new Map,h=new Set,d=(t,e)=>{if("done"!==l.get(t)){if("open"===l.get(t)){let s=[...e.slice(e.indexOf(t)),t];s.some(t=>h.has(t))||i.push(`dependency cycle: ${s.join(" → ")}`),s.forEach(t=>h.add(t));return}for(let i of(l.set(t,"open"),o.get(t)??[]))d(i,[...e,t]);l.set(t,"done")}};for(let t of o.keys())d(t,[]);for(let[t,e]of o)if(!h.has(t))for(let s of e)(a.get(s)??0)>(a.get(t)??0)&&i.push(`${t} depends on ${s}, which comes later; list ${s} first`);return i}],975283);let e2=(t,e)=>`${t} ${e}${1===t?"":"s"}`;t.s(["SESSION_GAP_MS",0,18e5,"groupSessions",0,function(t,e={}){let i=e.gapMs??18e5,s=[...t].sort((t,e)=>t.timestamp.localeCompare(e.timestamp)),r=new Map,n=new Map;for(let t of s){let e=t.sessionId;if(!e){let s=Date.parse(t.timestamp),r=n.get(t.actor);(!r||"session_start"===t.type||s-r.lastAt>i)&&(r={id:`legacy_${t.id}`,lastAt:s},n.set(t.actor,r)),r.lastAt=s,e=r.id}let s=r.get(e);s?s.push(t):r.set(e,[t])}return[...r].map(([t,e])=>(function(t,e){let i=new Map,s=new Set,r=[],n=!1,a=0;for(let t of e){"task_updated"===t.type&&t.taskId&&t.taskStatus&&i.set(t.taskId,t.taskStatus);let e=function(t){switch(t.type){case"doc_created":return t.detail??t.title.replace(/^Created: /,"");case"doc_deleted":return t.title.replace(/^Deleted /,"");case"doc_renamed":return t.title.split(" → ")[1]??null;default:return null}}(t);e&&s.add(e),"decision_logged"===t.type&&r.push(t.title),"memory_updated"===t.type&&(n=!0),"roadmap_updated"===t.type&&a++}let o=[...i].map(([t,e])=>({id:t,lastStatus:e})),l=o.filter(t=>"done"===t.lastStatus).length,h=[o.length?`${e2(o.length,"task")} moved${l?` (${l} done)`:""}`:"",s.size?`${e2(s.size,"doc")} changed`:"",r.length?e2(r.length,"ADR"):"",a?e2(a,"roadmap edit"):"",n?"memory updated":""].filter(Boolean);return{id:t,actor:e[0].actor,start:e[0].timestamp,end:e[e.length-1].timestamp,eventCount:e.length,eventIds:e.map(t=>t.id),tasks:o,docs:[...s],decisions:r,memoryUpdated:n,headline:h.join(" · ")||e2(e.length,"event")}})(t,e)).sort((t,e)=>e.start.localeCompare(t.start))},"sessionDuration",0,function(t){let e=Math.round((Date.parse(t.end)-Date.parse(t.start))/6e4);return e<1?"<1m":e<60?`${e}m`:`${Math.floor(e/60)}h ${e%60}m`},"sessionsForTask",0,function(t,e){return t.filter(t=>t.tasks.some(t=>t.id===e))}],31451);let e8="## Manual tests",e4=/^\s*[-*]\s+\[( |x|X)\]\s+(.*)$/,e3=/^\s*[-*]\s+(.*)$/;function e5(t){let e,i=(e=!1,t.map(t=>/^\s*```/.test(t)?(e=!e,!0):e)),s=t.findIndex((t,e)=>!i[e]&&t.trim()===e8);if(s<0)return null;let r=t.findIndex((t,e)=>e>s&&!i[e]&&/^##\s/.test(t));return[s,r<0?t.length:r]}t.s(["parseManualTests",0,function(t){let e=t.split("\n"),i=e5(e);if(!i)return null;let s=[],r="steps",n=null;for(let t of e.slice(i[0]+1,i[1])){let e=t.match(/^_(\d{4}-\d{2}-\d{2})\b/);if(e&&!n&&!s.length){n=e[1];continue}if(/^\s*###\s/.test(t)){r=/^\s*###\s+regression/i.test(t)?"regression":"steps";continue}let i=t.match(e4);i&&s.push({text:i[2].trim(),checked:" "!==i[1],group:r,index:s.length})}return s.length?{items:s,total:s.length,done:s.filter(t=>t.checked).length,date:n}:null},"setManualTests",0,function(t,e,i,s){let r=function(t){let e=[];for(let i of t.replace(/\r\n/g,"\n").split("\n")){let t=i.trimEnd();if(!t.trim())continue;if(/^\s*###\s/.test(t)){e.push(t.trim());continue}if(/^\s*##?\s/.test(t))continue;let s=t.match(e4),r=s?s[2]:t.match(e3)?.[1]??t.trim();e.some(t=>t.startsWith("### "))||e.push("### Steps"),e.push(`- [${s&&" "!==s[1]?"x":" "}] ${r.trim()}`)}return e.join("\n")}(e);if(!r)throw Error("manualTests is empty: give at least one checklist item");let n=t.split("\n"),a=e5(n),o=(a?[...n.slice(0,a[0]),...n.slice(a[1])]:n).join("\n").replace(/\s+$/,"");return`${o}
|
|
4
|
+
|
|
5
|
+
${e8}
|
|
6
|
+
_${s} — ${i}_
|
|
7
|
+
${r}
|
|
8
|
+
`},"toggleManualTest",0,function(t,e,i){let s=t.split("\n"),r=e5(s);if(!r)throw RangeError("This task has no manual tests");let n=0;for(let t=r[0]+1;t<r[1];t++)if(e4.test(s[t])&&n++===e)return s[t]=s[t].replace(/\[( |x|X)\]/,i?"[x]":"[ ]"),s.join("\n");throw RangeError(`No manual test item ${e} (the task has ${n})`)}],5704);let e6="## Review",e7=/^###\s+(\S+)\s+—\s+(approved|changes requested)\s*$/;function e9(t){let e,i=(e=!1,t.map(t=>/^\s*```/.test(t)?(e=!e,!0):e)),s=t.findIndex((t,e)=>!i[e]&&t.trim()===e6);if(s<0)return null;let r=t.findIndex((t,e)=>e>s&&!i[e]&&/^##\s/.test(t));return[s,r<0?t.length:r]}t.s(["appendReviewEntry",0,function(t,e,i,s){let r=i.trim();if("changes requested"===e&&!r)throw Error("A note is required to send a task back");let n=r.split("\n").map(t=>/^#{1,3}\s/.test(t)?`\\${t}`:t).join("\n"),a=[`### ${s} — ${e}`,...n?[n]:[]],o=t.split("\n"),l=e9(o);if(!l)return`${t.replace(/\s+$/,"")}
|
|
9
|
+
|
|
10
|
+
${e6}
|
|
11
|
+
${a.join("\n")}
|
|
12
|
+
`;let h=l[1];for(;h>l[0]+1&&!o[h-1].trim();)h--;let d=[...o.slice(0,h),...a,...o.slice(h)].join("\n");return l[1]===o.length?`${d.replace(/\s+$/,"")}
|
|
13
|
+
`:d},"latestReview",0,function(t){let e=function(t){let e=t.split("\n"),i=e9(e);if(!i)return[];let s=[];for(let t of e.slice(i[0]+1,i[1])){let e=t.match(e7);if(e)s.push({at:e[1],outcome:e[2],note:""});else if(s.length){let e=s[s.length-1];e.note=e.note?`${e.note}
|
|
14
|
+
${t}`:t}}return s.map(t=>({...t,note:t.note.trim()}))}(t);return e[e.length-1]??null}],531208);let it=["claude","cursor","codex","copilot","gemini","windsurf","cline","opencode"];t.s(["agentFromUserAgent",0,function(t){let e=(t??"").toLowerCase();return it.find(t=>e.includes(t))??"agent"},"parseOwner",0,function(t){let e=(t??"").trim().toLowerCase();if("human"===e)return"human";let i=e.match(/^ai(?::\s*([a-z0-9._-]+))?$/);return i?`ai:${i[1]??"agent"}`:null}],840980);let ie={XS:1,S:1,M:3,L:7,XL:14};t.s(["DEFAULT_SIZE_DAYS",0,ie,"datesOnMove",0,function(t,e,i,s,r=ie){let n={...e};if("in-progress"===t){n.started??=s;let t=r[i.trim().match(/^(XS|XL|S|M|L)\b/i)?.[1].toUpperCase()??null??""];!n.due&&"number"==typeof t&&t>=0&&(n.due=function(t,e){let[i,s,r]=t.split("-").map(Number);return new Date(Date.UTC(i,s-1,r+e)).toISOString().slice(0,10)}(n.started,t))}return"done"===t?n.done=s:n.done&&(n.done=null),n}],806723);let ii=["todo","in-progress","review","blocked","paused","done","cancelled"],is={todo:"📋","in-progress":"🔨",review:"👀",blocked:"🚫",paused:"⏸️",done:"✅",cancelled:"❌"},ir={ready:"todo",planned:"todo","not started":"todo",wip:"in-progress",doing:"in-progress",active:"in-progress",start:"in-progress",started:"in-progress",complete:"done",completed:"done",finished:"done",finish:"done",block:"blocked","on hold":"paused","on-hold":"paused",pause:"paused",hold:"paused","in review":"review",reviewing:"review","needs review":"review",cancel:"cancelled",skip:"cancelled"},ia=["gray","amber","accent","red","slate","teal","blue","pink","green","orange"],io=[{id:"todo",label:"Todo",color:"gray",category:"todo"},{id:"in-progress",label:"In progress",color:"amber",category:"in-progress"},{id:"review",label:"Review",color:"accent",category:"review"},{id:"blocked",label:"Blocked",color:"red",category:"blocked"},{id:"paused",label:"Paused",color:"slate",category:"paused"},{id:"done",label:"Done",color:"teal",category:"done"},{id:"cancelled",label:"Cancelled",color:"gray",category:"cancelled"}],il=t=>ii.includes(t);function ih(t,e=io){let i=t.toLowerCase().replace(/[📋🔨👀✅🚫❌⏸️]/g,"").trim(),s=ir[i]??i;if(il(s))return{status:s};let r=e.find(t=>t.id===s||t.id===s.replace(/\s+/g,"-"));return r&&!il(r.id)?{status:r.category,customStatus:r.id}:{status:"todo",unknown:!0}}function id(t,e,i){let s;return t?"done"===e?"done":t<i?"overdue":7>=Math.round(((s=t=>Date.UTC(+t.slice(0,4),t.slice(5,7)-1,+t.slice(8,10)))(t)-s(i))/864e5)?"soon":"ok":null}function iu(t){return t.every(t=>"done"===t)?"done":t.some(t=>"other"!==t)?"in-progress":"planned"}t.s(["resolveStatus",0,ih,"statusDefs",0,function(t){if(!Array.isArray(t))return io;let e=[];for(let i of t){let t="string"==typeof i?.id?i.id.trim().toLowerCase():"";if(!t||e.some(e=>e.id===t))continue;let s=il(t),r=s?t:i?.category;if(!r||!il(r)||!s&&(/^[a-z0-9][a-z0-9-]{0,39}$/.test(t)?il(t)||t in ir||t.replace(/-/g," ")in ir?`"${t}" already means a built-in status`:null:"use lowercase letters, digits and dashes"))continue;let n=io.find(e=>e.id===(s?t:r));e.push({id:t,label:"string"==typeof i?.label&&i.label.trim()?i.label.trim():n?.label??t,color:ia.includes(i?.color)?i?.color:n?.color??"gray",category:r})}for(let t of io)e.some(e=>e.id===t.id)||e.push(t);return e},"statusLine",0,function(t,e=io){let{status:i,customStatus:s}=ih(t,e),r=s??i;return`${is[i]} ${r.charAt(0).toUpperCase()}${r.slice(1)}`}],845122),t.s(["dueState",0,id,"localToday",0,function(t=new Date){let e=t=>String(t).padStart(2,"0");return`${t.getFullYear()}-${e(t.getMonth()+1)}-${e(t.getDate())}`},"roadmapHealth",0,function(t,e,i){let s={},r=[];for(let e of t)e.due&&"overdue"===id(e.due,e.status,i)&&r.push({id:e.id,kind:"overdue",message:`${e.id} "${e.title}" is overdue since ${e.due}`});let n=new Set(t.filter(t=>null===t.parent).map(t=>t.id));for(let n of t){if(null===n.parent)continue;let t=n.tasks.filter(t=>!(t in e));t.length&&r.push({id:n.id,kind:"missing-task",message:`${n.id} links unknown task ${t.join(", ")}`});let a=n.tasks.filter(t=>t in e&&"cancelled"!==e[t].status),o="done"===n.status||"paused"===n.status?[]:function(t,e,i,s){let r=[];for(let t of e){let e=i[t];"done"!==e.status&&e.due&&e.due<s&&r.push(`${t} overdue since ${e.due}`),"blocked"===e.status&&r.push(`${t} blocked`)}let n=e.some(t=>["done","in-progress","review"].includes(i[t].status));return t.due&&"soon"===id(t.due,t.status,s)&&!n&&r.push(`due ${t.due}, nothing started`),r}(n,a,e,i);if(o.length&&r.push({id:n.id,kind:"at-risk",message:`${n.id} "${n.title}" at risk: ${o.join("; ")}`}),!a.length)continue;let l=a.map(t=>"done"===e[t].status?"done":"in-progress"===e[t].status||"review"===e[t].status?"in-progress":"other");s[n.id]={done:l.filter(t=>"done"===t).length,total:a.length};let h=iu(l);if(h!==n.status&&("paused"!==n.status||"done"===h)){let t=a.filter(t=>"done"!==e[t].status);r.push({id:n.id,kind:"status-mismatch",message:"done"===h?`${n.id} "${n.title}": all tasks done but status is ${n.status}`:`${n.id} "${n.title}" is ${n.status} but tasks ${t.join(", ")} are not done`,suggestedStatus:h})}}for(let e of t){if(!n.has(e.id))continue;let i=t.filter(t=>t.parent===e.id);if(!i.length)continue;let a=i.map(t=>"done"===t.status?"done":"in-progress"===t.status?"in-progress":"other");s[e.id]=i.reduce((t,e)=>{let i=s[e.id]??{done:+("done"===e.status),total:1};return{done:t.done+i.done,total:t.total+i.total}},{done:0,total:0});let o=iu(a);o!==e.status&&("paused"!==e.status||"done"===o)&&r.push({id:e.id,kind:"status-mismatch",message:`${e.id} "${e.title}" is ${e.status} but its features say ${o}`,suggestedStatus:o})}return{progress:s,drift:r}}],404466)},799501,t=>{"use strict";var e=t.i(924868),i=t.i(814747),s=t.i(845285),r=t.i(233405),n=t.i(224361),a=t.i(471448),o=t.i(388985),l=t.i(731946),h=t.i(975283),d=t.i(31451),u=t.i(5704),c=t.i(531208),f=t.i(840980),p=t.i(806723),m=t.i(845122),g=t.i(404466),w=t.i(817466),y=t.i(166045),b=t.i(976259);function v(){return process.env.VIBEDOC_ROOT||process.cwd()}async function S(t){let s=t||i.default.dirname(v()),r=[];try{for(let t of(await e.default.readdir(s,{withFileTypes:!0}))){if(!t.isDirectory())continue;let n=i.default.join(s,t.name),a=!1;for(let t of["CLAUDE.md","AGENTS.md","docs/architecture",".vibedoc"])try{await e.default.access(i.default.join(n,t)),a=!0;break}catch{}a&&r.push({id:t.name,name:t.name,root:n,hasVibedoc:!0})}}catch{}let n=v(),a=i.default.basename(n),o=r.findIndex(t=>t.root===n);if(o>0){let[t]=r.splice(o,1);r.unshift(t)}else -1===o&&r.unshift({id:a,name:a,root:n,hasVibedoc:!0});return r}async function $(t){return(await (0,s.glob)("**/*.md",{cwd:t,ignore:["node_modules/**",".git/**",".next/**"],nodir:!0})).sort().map(t=>{var e;return{path:t,section:(e=t).includes("/")?e.startsWith("memory/")?"memory":e.startsWith("plans/")?"plans":e.includes("01-overview")?"overview":e.includes("02-high-level")||e.includes("high-level-design")?"high-level-design":e.includes("03-services")||e.includes("/services/")?"services":e.includes("04-data")||e.includes("/data/")?"data":e.includes("05-infra")||e.includes("/infrastructure/")?"infrastructure":e.includes("06-security")||e.includes("/security/")?"security":e.includes("07-observ")||e.includes("/observability/")?"observability":e.includes("08-resil")||e.includes("/resilience/")?"resilience":e.includes("decisions/")||e.includes("ADR")?"decisions":"other":"root",name:i.default.basename(t,".md")}})}async function k(t,r){for(let s of[i.default.join(r,t),i.default.join(r,`${t}.md`),i.default.join(r,"docs",t),i.default.join(r,"docs",`${t}.md`),i.default.join(r,"docs","architecture",t),i.default.join(r,"docs","architecture",`${t}.md`),i.default.join(r,"memory",t),i.default.join(r,"memory",`${t}.md`),i.default.join(r,"plans",t),i.default.join(r,"plans",`${t}.md`)])try{let t=await e.default.readFile(s,"utf8");return{path:i.default.relative(r,s),content:t}}catch{}for(let n of[`**/${t}.md`,`**/${t}*.md`,`**/*${t}*.md`]){let t=await (0,s.glob)(n,{cwd:r,ignore:["node_modules/**",".git/**",".next/**"],nodir:!0,nocase:!0});if(t.length>0){let s=await e.default.readFile(i.default.join(r,t[0]),"utf8");return{path:t[0],content:s}}}throw Error(`Doc not found: "${t}"`)}async function E(t,s,r){let n=i.default.resolve(r),a=i.default.resolve(r,t);if(!a.startsWith(n+i.default.sep)&&a!==n)throw Error("Path outside root");await e.default.mkdir(i.default.dirname(a),{recursive:!0}),await e.default.writeFile(a,s,"utf8")}async function x(t,s,r,n=!1){let o=i.default.resolve(r),l=i.default.resolve(r,t);if(!l.startsWith(o+i.default.sep))throw Error("Path outside root");let h=await e.default.readFile(l,"utf8").catch(t=>{if("ENOENT"===t.code)return"";throw t}),d=(0,a.applyEdits)(h,s);if("error"in d)throw Error(d.error);return n||(await e.default.mkdir(i.default.dirname(l),{recursive:!0}),await e.default.writeFile(l,d.content,"utf8")),{before:h,content:d.content}}async function C(t,e){let i=[];for(let s of t)try{let{content:t}=await k(s,e);i.push(`--- FILE: ${s} ---
|
|
15
|
+
|
|
16
|
+
${t.trim()}`)}catch{}return i.join("\n\n---\n\n")}async function A(t,s,r){let n=i.default.resolve(r),a=i.default.resolve(r,t);if(!a.startsWith(n+i.default.sep)&&a!==n)throw Error("Path outside root");try{await e.default.access(a);let i=Error(`File already exists: ${t}`);throw i.code="EEXIST",i}catch(t){if("ENOENT"!==t.code)throw t}await e.default.mkdir(i.default.dirname(a),{recursive:!0}),await e.default.writeFile(a,s,"utf8"),await tE(r,{type:"doc_created",actor:"human",title:`Created: ${t}`,detail:t});try{let{exists:t}=await tN(r);t&&await tP(r)}catch{}}async function O(t,r){let n=await (0,s.glob)("**/*.md",{cwd:r,ignore:["node_modules/**",".git/**",".next/**"],nodir:!0}),a=t.toLowerCase(),o=[];for(let t of n)try{let s=(await e.default.readFile(i.default.join(r,t),"utf8")).split("\n").map((t,e)=>({line:e+1,text:t.trim().slice(0,120)})).filter(t=>t.text.toLowerCase().includes(a));s.length>0&&o.push({file:t,hits:s.slice(0,4),totalHits:s.length})}catch{}return o.sort((t,e)=>e.totalHits-t.totalHits).slice(0,20)}let j=new Set;function T(t,e,s){let r=e.split("\n"),n=i.default.basename(t,".md"),a=(r.find(t=>t.startsWith("# "))||"").replace(/^#+\s*/,"").replace(/^T\d+\s*[:—–-]\s*/i,"").trim()||n,o={};for(let t of r.slice(0,t1(r))){let e=t.match(/\*\*([^*]+):\*\*\s*(.+)/);e&&(o[e[1].toLowerCase().trim()]=e[2].trim())}let l=(0,m.resolveStatus)(o.status||"todo",s),h=`${t}\0${o.status}`;l.unknown&&!j.has(h)&&(j.add(h),console.warn(`[vibedoc] ${t}: unknown status "${o.status}", shown as todo`));let{status:d,customStatus:c}=l,p=n.match(/^(T\d+)/i),g=p?p[1].toUpperCase():n.toUpperCase(),w=(0,u.parseManualTests)(e),y=w&&{total:w.total,done:w.done};return{id:g,title:a,status:d,...c&&{customStatus:c},size:o.size||"",phase:o.phase||"",dependsOn:o["depends on"]||"",owner:(0,f.parseOwner)(o.owner),due:tK(o.due||""),started:tK(o.started||""),finished:tK(o.done||""),manualTests:y,file:t,raw:e}}async function F(t){let{statuses:r}=await _(t),n=await (0,s.glob)("plans/tasks/T*.md",{cwd:t,nodir:!0});0===n.length&&(n=await (0,s.glob)("plans/T*.md",{cwd:t,nodir:!0}));let a=[];for(let s of n.sort())try{let n=await e.default.readFile(i.default.join(t,s),"utf8");a.push(T(s,n,r))}catch{}let o={todo:[],"in-progress":[],review:[],blocked:[],paused:[],done:[],cancelled:[]};for(let t of a){let e=o[t.status]?t.status:"todo";o[e].push(t)}return{tasks:a,board:o}}async function R(t,r){let{statuses:n}=await _(r),a=t.toUpperCase().startsWith("T")?t.toUpperCase():`T${t}`;for(let t of[`plans/tasks/${a}*.md`,`plans/${a}*.md`]){let a=await (0,s.glob)(t,{cwd:r,nodir:!0});if(a.length>0){let t=await e.default.readFile(i.default.join(r,a[0]),"utf8");return T(a[0],t,n)}}throw Error(`Task not found: ${t}`)}async function _(t){let s=null;try{s=JSON.parse(await e.default.readFile(i.default.join(t,".vibedoc","settings.json"),"utf8"))}catch{}let r=Number(s?.memory?.sessionBudgetTokens);return{sizeDays:{...p.DEFAULT_SIZE_DAYS,...s?.tasks?.sizeDays??{}},statuses:(0,m.statusDefs)(s?.statuses),sessionBudgetTokens:r>0?r:w.DEFAULT_SESSION_BUDGET}}function D(t,e,i){let s=t.split("\n"),r=t1(s),n=s.slice(0,r).findIndex(t=>t.toLowerCase().startsWith(`**${e.toLowerCase()}:**`));return i?n>=0?s[n]=`**${e}:** ${i}`:s.splice(r,0,`**${e}:** ${i}`):n>=0&&s.splice(n,1),s.join("\n")}async function M(t,s,r,n="human",a){var o;let l=await R(t,r),h=l.status,{statuses:d,sizeDays:u}=await _(r),c=(0,m.resolveStatus)(s,d);if(c.unknown)throw new tU(`Unknown status "${s}" (expected ${d.map(t=>t.id).join(" | ")})`);let w=c.status,y=(0,m.statusLine)(s,d),b=l.raw,v=/(\*\*Status:\*\*\s*).+/;b=v.test(b)?b.replace(v,`$1${y}`):b.replace(/^(#[^\n]+\n)/,`$1**Status:** ${y}
|
|
17
|
+
`);let S=(o=l.owner,a?"ai"===a.actor?"in-progress"===w?(0,f.parseOwner)(`ai:${a.agent||"agent"}`)??"ai:agent":o:o??"human":o);S!==l.owner&&(b=D(b,"Owner",S));let $=(0,p.datesOnMove)(w,{due:l.due,started:l.started,done:l.finished},l.size,(0,g.localToday)(),u);$.due!==l.due&&(b=D(b,"Due",$.due)),$.started!==l.started&&(b=D(b,"Started",$.started)),$.done!==l.finished&&(b=D(b,"Done",$.done)),await e.default.writeFile(i.default.join(r,l.file),b,"utf8"),await tE(r,{type:"task_updated",actor:n,title:`${l.id} moved to ${w}`,detail:l.title,taskId:l.id,taskStatus:w});let{customStatus:k,...E}=l;return{task:{...E,status:w,...c.customStatus&&{customStatus:c.customStatus},owner:S,due:$.due,started:$.started,finished:$.done,raw:b},previousStatus:h}}let N=[["phase","Phase"],["size","Size"],["dependsOn","Depends on"],["due","Due"],["owner","Owner"]];async function P(t,s,r,n="human"){let a=await R(t,r),o=t=>t.replace(/\s+/g," ").trim(),l=a.raw.split("\n"),h=t1(l);if(void 0!==s.title){let t=o(s.title);if(!t)throw new tU("title must not be empty");let e=l.findIndex(t=>t.startsWith("# "));e>=0?l[e]=`# ${a.id}: ${t}`:(l.unshift(`# ${a.id}: ${t}`),h++)}for(let[t,e]of N){let i=s[t];if(void 0===i)continue;let r=null===i?"":o(i);if("due"===t&&r){let t=tK(r);if(!t)throw new tU(`due must be a date YYYY-MM-DD (got ${JSON.stringify(i)})`);r=t}if("owner"===t&&r){let t=(0,f.parseOwner)(r);if(!t)throw new tU(`owner must be "human" or "ai:<agent>" (got ${JSON.stringify(i)})`);r=t}let n=l.slice(0,h).findIndex(t=>t.toLowerCase().startsWith(`**${e.toLowerCase()}:**`));if(!r&&("due"===t||"owner"===t)){n>=0&&(l.splice(n,1),h--);continue}let a=`**${e}:** ${r||"—"}`;n>=0?l[n]=a:(l.splice(h,0,a),h++)}let d=l.join("\n");return d===a.raw?a:(await e.default.writeFile(i.default.join(r,a.file),d,"utf8"),await tE(r,{type:"task_updated",actor:n,title:`${a.id} edited`,detail:a.title,taskId:a.id}),R(a.id,r))}function L(t,s,r="human"){return J(async()=>{let n=await R(t,s);await e.default.unlink(i.default.join(s,n.file));let{items:a}=await et(s),o=[];for(let t of a.filter(t=>t.tasks.includes(n.id)))o.push({epic:t.id,index:t.tasks.indexOf(n.id)}),await el(t.id,{tasks:t.tasks.filter(t=>t!==n.id)},s,r);return await tE(s,{type:"task_updated",actor:r,title:`${n.id} deleted`,detail:n.title,taskId:n.id}),{task:n,links:o}})}async function I(t,e,i,s="human"){let r=await R(t,i),{items:n}=await et(i),a=e?n.find(t=>t.id===e.trim().toUpperCase()&&null!==t.parent):void 0;if(e&&!a)throw new tU(`Epic not found: ${e}`);for(let t of n.filter(t=>t.tasks.includes(r.id)&&t.id!==a?.id))await el(t.id,{tasks:t.tasks.filter(t=>t!==r.id)},i,s);return a&&!a.tasks.includes(r.id)&&await el(a.id,{tasks:[...a.tasks,r.id]},i,s),P(r.id,{phase:a?`${a.id} — ${a.title}`:""},i,s)}async function W(t,e,i,s="human"){let r=[];for(let n of t)"status"in e?await M(n,e.status,i,s,{actor:s}):"epic"in e?await I(n,e.epic,i,s):"delete"in e&&r.push(await L(n,i,s));return{deleted:r}}function z(t,e,s){if("string"!=typeof t)return!1;let r=i.default.posix.normalize(t);return r===t&&i.default.posix.dirname(r)===e&&s.test(i.default.posix.basename(r))}async function U(t,s,r,n="ai"){let a=await R(t,r),o=(0,u.setManualTests)(a.raw??"",s,n,new Date().toISOString().slice(0,10));return await e.default.writeFile(i.default.join(r,a.file),o,"utf8"),R(a.id,r)}class B extends Error{}async function G(t,s,r,n,a){let o=await R(t,a);if("review"!==o.status)throw new B(`${o.id} is ${o.status}, not in review`);let l=new Date().toISOString().replace(/\.\d{3}Z$/,"Z"),h=(0,c.appendReviewEntry)(o.raw??"",s,r,l);return await e.default.writeFile(i.default.join(a,o.file),h,"utf8"),M(o.id,n,a,"human")}async function q(t,s,r,n){let a=await R(t,n),o=(0,u.toggleManualTest)(a.raw??"",s,r);return o!==a.raw&&await e.default.writeFile(i.default.join(n,a.file),o,"utf8"),R(a.id,n)}let Y=Promise.resolve();function J(t){let e=Y.then(t,t);return Y=e.catch(()=>{}),e}async function H(t,s){let{tasks:r}=await F(s),n=t.title.replace(/\s+/g," ").trim(),a=r.map(t=>parseInt(t.id.replace(/^T/i,""),10)).filter(t=>!isNaN(t)),o=a.length>0?Math.max(...a)+1:1,l=`T${String(o).padStart(3,"0")}`,h=n.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"").slice(0,40)||"task",d=`${l}-${h}.md`,u=i.default.join(s,"plans","tasks");await e.default.mkdir(u,{recursive:!0});let c=i.default.join(u,d),f=t.due?tK(t.due):null;if(t.due&&!f)throw new tU(`due must be a date YYYY-MM-DD (got ${JSON.stringify(t.due)})`);let p=t.phase?.trim().match(/^(R\d+)\b/i)?.[1];!f&&p&&(f=(await ee(p,s).catch(()=>null))?.due??null);let m=`# ${l}: ${n}
|
|
18
|
+
**Status:** 📋 Ready
|
|
19
|
+
**Phase:** ${t.phase||"—"}
|
|
20
|
+
**Size:** ${t.size||"—"}
|
|
21
|
+
**Depends on:** ${t.dependsOn||"—"}
|
|
22
|
+
${f?`**Due:** ${f}
|
|
23
|
+
`:""}`,g=void 0!==t.body?`${m}
|
|
24
|
+
${t.body.trim()}
|
|
25
|
+
`:`${m}
|
|
26
|
+
## What to build
|
|
27
|
+
${t.description||"—"}
|
|
28
|
+
|
|
29
|
+
## Scope
|
|
30
|
+
- [ ]
|
|
31
|
+
|
|
32
|
+
## Acceptance criteria
|
|
33
|
+
- [ ]
|
|
34
|
+
|
|
35
|
+
## Definition of done
|
|
36
|
+
—
|
|
37
|
+
`;return await e.default.writeFile(c,g,{flag:"wx",encoding:"utf8"}),R(l,s)}function X(t,e,i,s){let r=(0,h.validatePlan)(t,{roadmap:i,taskIds:s});if(r.length>0)throw new tU(r.join("\n"));if(!Array.isArray(e))throw new tU("selected must be an array of plan keys");let{plan:n,errors:a}=(0,h.selectPlan)(t,e.map(String));if(a.length>0)throw new tU(a.join("\n"));return n}async function Z(t,r,n="human"){let{title:a,context:o,decision:l,rationale:h,alternatives:d=[],consequences:u}=t,c=(await (0,s.glob)("docs/architecture/decisions/ADR-*.md",{cwd:r,nodir:!0})).map(t=>parseInt(i.default.basename(t).match(/ADR-(\d+)/)?.[1]||"0")).filter(t=>!isNaN(t)),f=String(c.length>0?Math.max(...c)+1:1).padStart(3,"0"),p=a.toLowerCase().replace(/[^a-z0-9\s-]/g,"").replace(/\s+/g,"-").slice(0,50),m=`ADR-${f}-${p}.md`,g=new Date().toISOString().split("T")[0],w=d.length>0?d.map(t=>`| ${t.option} | ${t.reason} |`).join("\n"):"| (none) | — |",y=`# ADR-${f}: ${a}
|
|
38
|
+
|
|
39
|
+
**Status:** ✅ Accepted
|
|
40
|
+
**Date:** ${g}
|
|
41
|
+
|
|
42
|
+
## Context
|
|
43
|
+
${o}
|
|
44
|
+
|
|
45
|
+
## Decision
|
|
46
|
+
${l}
|
|
47
|
+
|
|
48
|
+
## Rationale
|
|
49
|
+
${h||""}
|
|
50
|
+
|
|
51
|
+
## Alternatives considered
|
|
52
|
+
| Option | Why rejected |
|
|
53
|
+
|--------|-------------|
|
|
54
|
+
${w}
|
|
55
|
+
|
|
56
|
+
## Consequences
|
|
57
|
+
${u||""}
|
|
58
|
+
`,b=i.default.join(r,"docs/architecture/decisions",m);await e.default.mkdir(i.default.dirname(b),{recursive:!0}),await e.default.writeFile(b,y,"utf8");let v=i.default.join(r,"docs/architecture/decisions/_INDEX.md");try{let t=await e.default.readFile(v,"utf8");t=t.trimEnd()+`
|
|
59
|
+
| ADR-${f} | ${a} | ✅ Accepted | ${g} |
|
|
60
|
+
`,await e.default.writeFile(v,t,"utf8")}catch{await e.default.writeFile(v,`# ADR Index
|
|
61
|
+
|
|
62
|
+
| ADR | Title | Status | Date |
|
|
63
|
+
|-----|-------|--------|------|
|
|
64
|
+
| ADR-${f} | ${a} | ✅ Accepted | ${g} |
|
|
65
|
+
`,"utf8")}return await tE(r,{type:"decision_logged",actor:n,title:`ADR-${f}: ${a}`,detail:l.slice(0,100)}),{adrNumber:`ADR-${f}`,path:`docs/architecture/decisions/${m}`}}async function V(t){try{return{content:await e.default.readFile(i.default.join(t,"memory","MEMORY.md"),"utf8"),exists:!0}}catch{return{content:"*(No MEMORY.md found — AI will create one at end of session)*",exists:!1}}}async function K(t,s,r="human"){let{currentState:n,justCompleted:a=[],workingOn:o="",upNext:l=[],issues:h=[],decisions:d=[],techDebt:u=[],handoff:c}=t,f=new Date,p=f.toISOString().split("T")[0],m=f.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit"}),g=`# Project Memory
|
|
66
|
+
**Last updated:** ${p} at ${m}
|
|
67
|
+
|
|
68
|
+
## Current state
|
|
69
|
+
${n}
|
|
70
|
+
|
|
71
|
+
## Just completed
|
|
72
|
+
${a.map(t=>`- ${t}`).join("\n")||"- (nothing this session)"}
|
|
73
|
+
|
|
74
|
+
## Working on now
|
|
75
|
+
${o||"(nothing active)"}
|
|
76
|
+
|
|
77
|
+
## Up next
|
|
78
|
+
${l.map((t,e)=>`${e+1}. ${t}`).join("\n")||"1. (define next steps)"}
|
|
79
|
+
|
|
80
|
+
## Active issues
|
|
81
|
+
| Issue | Severity | Status |
|
|
82
|
+
|-------|----------|--------|
|
|
83
|
+
${h.map(t=>"string"==typeof t?`| ${t} | medium | open |`:`| ${t.issue} | ${t.severity||"medium"} | ${t.status||"open"} |`).join("\n")||"| None | — | — |"}
|
|
84
|
+
|
|
85
|
+
## Recent decisions
|
|
86
|
+
${d.map(t=>`- ${t}`).join("\n")||"- (none this session)"}
|
|
87
|
+
|
|
88
|
+
## Tech debt
|
|
89
|
+
${u.map(t=>`- ${t}`).join("\n")||"- (none noted)"}
|
|
90
|
+
|
|
91
|
+
## Handoff for next session
|
|
92
|
+
${c}
|
|
93
|
+
`;await e.default.mkdir(i.default.join(s,"memory"),{recursive:!0}),await e.default.writeFile(i.default.join(s,"memory","MEMORY.md"),g,"utf8"),await tE(s,{type:"memory_updated",actor:r,title:"Session memory updated",detail:c.slice(0,120)})}let Q=i.default.join("memory","entries"),tt=Promise.resolve();function te(t){let e=tt.then(t,t);return tt=e.catch(()=>{}),e}async function ti(t){let s;try{s=await e.default.readdir(i.default.join(t,Q))}catch{return[]}return(await Promise.all(s.filter(t=>t.endsWith(".md")).map(async s=>{let r=i.default.join(Q,s);return(0,b.parseEntry)(await e.default.readFile(i.default.join(t,r),"utf8"),r)}))).filter(t=>!!t).sort((t,e)=>t.id.localeCompare(e.id,"en",{numeric:!0}))}async function ts(t,e){let i=(0,b.normalizeEntryId)(t);return(await ti(e)).find(t=>t.id===i)??null}async function tr(t,e){let i=new Map((await ti(e)).map(t=>[t.id,t])),s=[],r=[];for(let e of t){let t=i.get((0,b.normalizeEntryId)(String(e))??"");t?s.push(t):r.push(String(e))}return{found:s,missing:r}}async function tn(t){let[e,i,{sessionBudgetTokens:s}]=await Promise.all([V(t),ti(t),_(t)]);return(0,w.fitToBudget)(e.content,(0,w.indexHits)(i),s).text}async function ta(t,e,i=3){let s=await ti(e);return(0,w.formatRelated)((0,w.rankEntries)(s,(0,w.taskQuery)(t),{limit:s.length}),i)}let to=(0,n.promisify)(r.execFile),tl=/^[0-9a-f]{7,40}$/;async function th(t,e){let{stdout:i}=await to("git",t,{cwd:e,maxBuffer:4194304});return i}async function td(t,e,s=20){let r=function(t,e){let s=i.default.resolve(e,t);if(!s.startsWith(i.default.resolve(e)+i.default.sep))throw new tU("Path outside root");return i.default.relative(e,s).split(i.default.sep).join("/")}(t,e),n=/^(E\d+)-[^/]*\.md$/.exec(i.default.posix.basename(r))?.[1],a=n?[`:(glob)${i.default.posix.dirname(r)}/${n}-*.md`]:["--follow",r];try{let t=(await th(["log","--name-status","--format=%x1e%H%x1f%an%x1f%aI%x1f%s","-n",String(Math.min(s,50)),...n?["--",...a]:[a[0],"--",a[1]]],e)).split("\x1e").filter(t=>t.trim()).map(t=>{let[e,...i]=t.split("\n"),[s,r,n,a]=e.split("\x1f"),o=i.map(t=>t.split(" ")).filter(t=>t.length>1&&"D"!==t[0]).map(t=>t[t.length-1]);return{sha:s,author:r,date:n,subject:a,path:o[0]??""}}),i=await th(["status","--porcelain","--",n?a[0]:r],e);return{history:t,uncommitted:i.trim().length>0}}catch(t){return console.warn(`git history unavailable for ${r}`,t instanceof Error?t.message:t),{history:[],uncommitted:!1,reason:"no-git"}}}async function tu(t,e,i){if(!tl.test(e))throw new tU(`Invalid commit "${e}"`);let{history:s}=await td(t,i,50),r=s.find(t=>t.sha.startsWith(e));if(!r)throw new tU(`Commit ${e} did not touch ${t}`,404);if(!r.path)throw new tU(`The file was deleted in ${r.sha.slice(0,7)}`,404);let n=(await th(["rev-parse","--show-toplevel"],i)).trim();return th(["show",`${r.sha}:${r.path}`],n)}async function tc(t,e,i){return(0,w.rankEntries)(await ti(i),t,e)}let tf=".vibedoc-activity.json",tp=".vibedoc-descriptions.json";async function tm(t){try{let s=await e.default.readFile(i.default.join(t,tp),"utf8");return JSON.parse(s)}catch{return{}}}async function tg(t,s){let r=i.default.join(t,tp);await e.default.mkdir(i.default.dirname(r),{recursive:!0}),await e.default.writeFile(r,JSON.stringify(s,null,2),"utf8")}async function tw(t,e,s){let r=i.default.normalize(e).replace(/\\/g,"/"),n=await tm(t);n[r]=s,await tg(t,n)}let ty=null;async function tb(){if(!ty){let{default:e}=await t.A(400829);ty=new e({apiKey:process.env.ANTHROPIC_API_KEY})}return ty}async function tv(t,s){let r=i.default.resolve(s),n=i.default.resolve(s,t);if(!n.startsWith(r+i.default.sep)&&n!==r)throw Error("Path outside root");let a=await tb(),o=await e.default.readFile(n,"utf8"),l=(await a.messages.create({model:"claude-haiku-4-5-20251001",max_tokens:100,messages:[{role:"user",content:`Write a single sentence (max 120 characters) describing what this file is about. Output ONLY the sentence, nothing else.
|
|
94
|
+
|
|
95
|
+
${o.slice(0,2e3)}`}]})).content.find(t=>"text"===t.type);if(!l)throw Error("No text block in Anthropic response");let h=l.text.trim().slice(0,120);return await tw(s,t,{description:h,source:"ai",updatedAt:new Date().toISOString()}),h}async function tS(t){let s=await $(t),r=await tm(t);return Promise.all(s.map(async s=>{let n=r[s.path],a=n?.description??"",o=n?.source??"extracted",l=new Date().toISOString();try{l=(await e.default.stat(i.default.join(t,s.path))).mtime.toISOString()}catch{}let h=n?.updatedAt??l;if(!n)try{let r=await e.default.readFile(i.default.join(t,s.path),"utf8");a=function(t){let e=t.split("\n"),i="";for(let t of e){let e=t.match(/^#{1,3}\s+(.+)/);if(e&&!i){i=e[1].trim().slice(0,120);continue}let s=t.trim();if(s&&!s.startsWith("#")&&!s.startsWith("```")&&!s.startsWith("|")&&!s.startsWith("-")&&!s.startsWith("*")&&s.length>20)return s.slice(0,120)}return i}(r)}catch{}return{path:s.path,name:s.name,section:s.section,description:a,source:o,updatedAt:h,mtime:l}}))}let t$=globalThis,tk=t$.vibedocSessions??(t$.vibedocSessions=new Map);async function tE(t,s){let r,n,a=Date.now(),o={id:`evt_${a}_${Math.random().toString(36).slice(2,7)}`,timestamp:new Date(a).toISOString(),...s,sessionId:(r=`${t}\0${s.actor}`,(n=tk.get(r))&&"session_start"!==s.type&&!(a-n.lastAt>d.SESSION_GAP_MS)||(n={id:`ses_${a}_${Math.random().toString(36).slice(2,7)}`,lastAt:a},tk.set(r,n)),n.lastAt=a,n.id)},l=i.default.join(t,tf),h=[];try{let t=await e.default.readFile(l,"utf8");h=JSON.parse(t)}catch{}h.unshift(o),h.length>2e3&&(h=h.slice(0,2e3)),await e.default.writeFile(l,JSON.stringify(h,null,2),"utf8")}async function tx(t,s,r){let n=i.default.join(t,tf),a=[];try{a=JSON.parse(await e.default.readFile(n,"utf8"))}catch{}let o=a.slice(0,50).findIndex(t=>"doc_updated"===t.type&&t.detail===s),l=o>=0?a[o]:void 0;if(l&&l.actor===r&&Date.now()-Date.parse(l.timestamp)<6e5){a.splice(o,1),a.unshift({...l,timestamp:new Date().toISOString()}),await e.default.writeFile(n,JSON.stringify(a,null,2),"utf8");return}await tE(t,{type:"doc_updated",actor:r,title:`Edited ${s}`,detail:s})}async function tC(t,e){let i=(await tA(t,2e3)).find(t=>("doc_updated"===t.type||"doc_created"===t.type)&&t.detail===e);return i?{actor:i.actor,at:i.timestamp}:null}async function tA(t,s=50){try{let r=await e.default.readFile(i.default.join(t,tf),"utf8");return JSON.parse(r).slice(0,s)}catch{return[]}}async function tO(t,e="ai"){await tE(t,{type:"session_start",actor:e,title:"Session started",detail:"Agent connected"})}async function tj(t,s,r){let n,a=i.default.resolve(r),o=i.default.resolve(r,t);if(!o.startsWith(a+i.default.sep)&&o!==a)throw Error("Path outside root");try{n=await e.default.readFile(o,"utf8")}catch{throw Error(`Doc not found: ${t}`)}await e.default.writeFile(o,n.trimEnd()+"\n\n"+s,"utf8")}async function tT(t,s,r){let n=i.default.resolve(r),a=i.default.resolve(r,t),o=i.default.resolve(r,s);if(!a.startsWith(n+i.default.sep)&&a!==n||!o.startsWith(n+i.default.sep)&&o!==n)throw Error("Path outside root");if(o!==a&&await e.default.access(o).then(()=>!0,()=>!1))throw Error(`A file already exists at ${s}`);await e.default.mkdir(i.default.dirname(o),{recursive:!0});try{await e.default.rename(a,o)}catch(t){if("EXDEV"===t.code)await e.default.copyFile(a,o),await e.default.unlink(a);else throw t}await tE(r,{type:"doc_renamed",actor:"human",title:`Renamed ${t} → ${s}`});try{let{exists:t}=await tN(r);t&&await tP(r)}catch{}}async function tF(t,s){let r=i.default.resolve(s),n=i.default.resolve(s,t);if(!n.startsWith(r+i.default.sep)&&n!==r)throw Error("Path outside root");let a=await e.default.readFile(n,"utf8");await e.default.unlink(n),await tE(s,{type:"doc_deleted",actor:"human",title:`Deleted ${t}`});try{let{exists:t}=await tN(s);t&&await tP(s)}catch{}return a}let tR="docs/REGISTRY.md",t_="<!-- REGISTRY_ANNOTATIONS_START -->",tD="<!-- REGISTRY_ANNOTATIONS_END -->";function tM(t){let e=new Map,i=t.indexOf(t_),s=t.indexOf(tD);if(-1===i||-1===s)return e;for(let r of t.slice(i+t_.length,s).split("\n").filter(t=>t.startsWith("|")&&!t.includes("---")&&!t.includes("Path"))){let t=r.split("|").map(t=>t.trim()).filter(Boolean);t.length>=3&&e.set(t[0],{description:t[1],keywords:t[2]})}return e}async function tN(t){try{return{content:await e.default.readFile(i.default.join(t,tR),"utf8"),exists:!0}}catch{return{content:"*(No REGISTRY.md found — call vibedoc_rebuild_registry to generate it)*",exists:!1}}}async function tP(t,s="human"){let r=(await $(t)).map(t=>t.path),n="";try{n=await e.default.readFile(i.default.join(t,tR),"utf8")}catch{}let a=tM(n),o=function(t){let e=new Map;for(let s of t){let t=i.default.dirname(s);e.has(t)||e.set(t,[]),e.get(t).push(i.default.basename(s))}let s=[],r=Array.from(e.keys()).sort(),n=new Set;return!function t(a,o){if(n.has(a))return;n.add(a);let l=" ".repeat(o);if("."!==a){let t=a.split("/");s.push(`${l}${t[t.length-1]}/`)}let h="."===a?0:o+1,d=" ".repeat(h);for(let t of(e.get(a)||[]).sort())s.push(`${d}${t}`);for(let e of r)e!==a&&i.default.dirname(e)===a&&t(e,h)}(".",0),s.join("\n")}(r),l=[];for(let t of r){let e=a.get(t);l.push(`| ${t} | ${e?.description??""} | ${e?.keywords??""} |`)}let h=new Date().toISOString(),d=["# Document Registry",`**Generated:** ${h} **Total:** ${r.length} files`,"","> Edit the Annotations table — it survives rebuilds.","> Run `vibedoc_rebuild_registry` after adding/removing docs.","","## File Tree","```",o,"```","","## Annotations","",t_,"| Path | Description | Keywords |","|------|-------------|----------|",...l,tD,""].join("\n");return await E(tR,d,t),await tE(t,{type:"registry_rebuilt",actor:s,title:"Document registry rebuilt",detail:`${r.length} files indexed`}),{path:tR,totalFiles:r.length}}async function tL(t,e,i,s){let{content:r,exists:n}=await tN(s);if(!n)throw Error("Registry not found — call vibedoc_rebuild_registry first");let a=tM(r);a.set(t,{description:e,keywords:i});let o=r.indexOf(t_),l=r.indexOf(tD);if(-1===o||-1===l)throw Error("Registry format invalid — rebuild first");let h=[t_,"| Path | Description | Keywords |","|------|-------------|----------|",...Array.from(a.entries()).map(([t,e])=>`| ${t} | ${e.description} | ${e.keywords} |`),tD].join("\n"),d=r.slice(0,o)+h+r.slice(l+tD.length);await E(tR,d,s)}async function tI(t,r){let n=await (0,s.glob)("**/*.md",{cwd:r,ignore:["node_modules/**",".git/**",".next/**"],nodir:!0}),a=t.replace(/\\/g,"/"),o=i.default.basename(a),l=[];for(let t of n)if(t.replace(/\\/g,"/")!==a)try{(await e.default.readFile(i.default.join(r,t),"utf8")).split("\n").forEach((e,i)=>{/\[.*\]\(.*\)/.test(e)&&(e.includes(o)||e.includes(a))&&l.push({file:t,line:i+1,text:e.trim().slice(0,120)})})}catch{}return l}async function tW(t){let[r,n]=await Promise.all([ti(t),(0,s.glob)("**/*.md",{cwd:t,ignore:["node_modules/**",".git/**",".next/**","memory/entries/**"],nodir:!0})]),a=await Promise.all(n.map(async s=>{try{let r=await e.default.readFile(i.default.join(t,s),"utf8");return{...(0,y.fileNode)(s,r),text:r}}catch(t){return console.warn(`memory graph: skipped ${s}`,t),null}}));return(0,y.buildGraph)(r.map(t=>({id:t.id,kind:"entry",label:t.summary,path:t.file.replace(/\\/g,"/"),text:`${t.summary}
|
|
96
|
+
${t.body}`})),a.filter(t=>!!t))}async function tz(t){let[{tasks:e,board:s},r,n,a]=await Promise.all([F(t),$(t),V(t),tA(t,10)]);return{root:t,name:i.default.basename(t),tasks:{total:e.length,board:{todo:s.todo.length,"in-progress":s["in-progress"].length,review:s.review.length,blocked:s.blocked.length,done:s.done.length,cancelled:s.cancelled.length},active:s["in-progress"],blocked:s.blocked},docs:{total:r.length},memory:n,activity:a}}class tU extends Error{status;constructor(t,e=400){super(t),this.status=e,this.name="RoadmapError"}}let tB=i.default.join("plans","roadmap"),tG=i.default.join(tB,"layout.json"),tq=["planned","in-progress","paused","done"],tY=/^\*\*([^*]+):\*\*/;function tJ(t){let e=String(t??"").trim().toUpperCase();if(!/^R\d+$/.test(e))throw new tU(`Invalid roadmap id: ${String(t)}`);return e}function tH(t){let e=i.default.basename(t).match(/^(R\d+)(?:-|\.md$)/i);return e?e[1].toUpperCase():null}function tX(t){let e=String(t??"").toLowerCase().trim().replace(/\s+/g,"-"),i="on-hold"===e?"paused":e;if(!tq.includes(i))throw new tU(`Invalid status "${String(t)}" (expected ${tq.join(" | ")})`);return i}function tZ(t){if(!Array.isArray(t))throw new tU("tasks must be an array of task ids");return t.map(t=>{let e=String(t).trim().toUpperCase();if(!/^T\d+$/.test(e))throw new tU(`Invalid task id: ${String(t)}`);return e})}function tV(t){let e=String(t??"").replace(/\s+/g," ").trim();if(!e)throw new tU("Title is required");return e}function tK(t){let e=t.match(/^(\d{4})-(\d{2})-(\d{2})$/);return e&&new Date(Date.UTC(+e[1],e[2]-1,+e[3])).toISOString().slice(0,10)===t?t:null}function tQ(t){if(null===t||""===t)return null;let e="string"==typeof t?tK(t.trim()):null;if(!e)throw new tU(`due must be a date YYYY-MM-DD (got ${JSON.stringify(t)})`);return e}function t0(t){let e=Number(t);if("number"!=typeof t||!Number.isFinite(e))throw new tU("order must be a finite number");return e}function t1(t){let e=t.findIndex(t=>t.startsWith("# ")),i=e=e<0?0:e+1;for(;i<t.length&&""===t[i].trim();)i++;for(i<t.length&&tY.test(t[i])&&(e=i);e<t.length&&tY.test(t[e]);)e++;return e}function t2(t,e){let s=e.split("\n"),r=s.find(t=>t.startsWith("# ")),n=tH(t)??i.default.basename(t,".md").toUpperCase(),a=(r||"").replace(/^#+\s*/,"").replace(/^R\d+:\s*/i,"").trim()||n,o=t1(s),l={};for(let t of s.slice(0,Math.min(o,30))){let e=t.match(/\*\*([^*]+):\*\*\s*(.+)/);e&&(l[e[1].toLowerCase().trim()]=e[2].trim())}let h=(l.parent||"").toUpperCase(),d="planned";try{d=tX((l.status||"").replace(/[^a-z\s-]/gi,""))}catch{}let u=parseFloat(l.order||"");return{id:n,title:a,parent:/^R\d+$/.test(h)?h:null,status:d,order:Number.isFinite(u)?u:0,tasks:(l.tasks||"").split(/[,\s]+/).map(t=>t.toUpperCase()).filter(t=>/^T\d+$/.test(t)),due:tK(l.due||""),owner:(0,f.parseOwner)(l.owner),body:s.slice(o).join("\n").trim(),file:t}}async function t8(t){let r=await (0,s.glob)("plans/roadmap/R*.md",{cwd:t,nodir:!0}),n=[];for(let s of r)if(tH(s))try{let r=await e.default.readFile(i.default.join(t,s),"utf8");n.push({item:t2(s,r),raw:r})}catch{}return n}async function t4(t,r){let n=tJ(t),a=(await (0,s.glob)(`plans/roadmap/${n}*.md`,{cwd:r,nodir:!0})).filter(t=>tH(t)===n).sort();if(0===a.length)throw new tU(`Roadmap item not found: ${n}`,404);let o=await e.default.readFile(i.default.join(r,a[0]),"utf8");return{item:t2(a[0],o),raw:o}}function t3(t,e,i){if(t===e)throw new tU("An item cannot be its own parent");let s=i.find(e=>e.id===t);if(!s)throw new tU(`Parent not found: ${t}`);if(null!==s.parent)throw new tU(`Parent ${t} is not a horizon (max depth is 2)`)}function t5(t){if("string"!=typeof t)throw new tU("body must be a string");return t.trim()}let t6=Promise.resolve();function t7(t){let e=t6.then(t,t);return t6=e.catch(()=>{}),e}function t9(t){return t.length>0?t.join(", "):"—"}async function et(t){var e;let i,[s,r]=await Promise.all([t8(t),eu(t)]);return{items:(e=s.map(t=>t.item),i=t=>parseInt(t.slice(1),10),e.sort((t,e)=>t.order-e.order||i(t.id)-i(e.id))),layout:r}}async function ee(t,e){return(await t4(t,e)).item}function ei(t,e,i="human"){return t7(()=>eo(t??{},e,i))}let es=t=>`R${String(t).padStart(3,"0")}`;async function er(t,s){let r=s.title.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"").slice(0,40),n=r?`${s.id}-${r}.md`:`${s.id}.md`,a=[`# ${s.id}: ${s.title}`,...s.parent?[`**Parent:** ${s.parent}`]:[],`**Status:** ${s.status}`,`**Order:** ${s.order}`,`**Tasks:** ${t9(s.tasks)}`,...s.due?[`**Due:** ${s.due}`]:[],""].join("\n")+(s.body?`
|
|
97
|
+
${s.body}
|
|
98
|
+
`:"");await e.default.writeFile(i.default.join(t,tB,n),a,{flag:"wx",encoding:"utf8"})}async function en(t){return(await ea(t)).source}async function ea(t){try{let s=(0,o.roadmapFromMarkdown)(await e.default.readFile(i.default.join(t,"ROADMAP.md"),"utf8"));if(s.length>0)return{source:"roadmap-md",drafts:s}}catch{}let{tasks:s}=await F(t),r=(0,o.roadmapFromTasks)(s);return r.length>0?{source:"tasks",drafts:r}:{source:"starter",drafts:(0,o.starterRoadmap)()}}async function eo(t,s,r){let n=tV(t.title),a=void 0===t.status?"planned":tX(t.status),o=void 0===t.tasks?[]:tZ(t.tasks),l=void 0===t.body?"":t5(t.body),h=void 0===t.due?null:tQ(t.due),d=(await t8(s)).map(t=>t.item),u=null==t.parent||""===t.parent?null:tJ(t.parent);u&&t3(u,null,d);let c=d.filter(t=>t.parent===u).map(t=>t.order),f=void 0===t.order?(c.length>0?Math.max(...c):0)+10:t0(t.order),p=d.map(t=>parseInt(t.id.slice(1),10)).filter(t=>!isNaN(t)),m=es(p.length>0?Math.max(...p)+1:1);return await e.default.mkdir(i.default.join(s,tB),{recursive:!0}),await er(s,{id:m,title:n,parent:u,status:a,order:f,tasks:o,due:h,body:l}),await tE(s,{type:"roadmap_updated",actor:r,title:`${m} created`,detail:n}),ee(m,s)}function el(t,e,i,s="human"){return t7(()=>eh(t,e,i,s))}async function eh(t,s,r,n){let a,o,{item:l,raw:h}=await t4(t,r),d=s??{},u=void 0===d.title?void 0:tV(d.title),c=void 0===d.status?void 0:tX(d.status),p=void 0===d.order?void 0:t0(d.order),m=void 0===d.tasks?void 0:tZ(d.tasks),g=void 0===d.body?void 0:t5(d.body),w=void 0===d.due?void 0:tQ(d.due);if(void 0!==d.owner&&(a=null===d.owner||""===d.owner?null:(0,f.parseOwner)(d.owner),d.owner&&!a))throw new tU(`owner must be "human" or "ai:<agent>" (got ${JSON.stringify(d.owner)})`);if(void 0!==d.parent&&null!==(o=null===d.parent||""===d.parent?null:tJ(d.parent))){let t=(await t8(r)).map(t=>t.item);if(t3(o,l.id,t),t.some(t=>t.parent===l.id))throw new tU(`${l.id} has children and cannot be given a parent`)}let y=h.split("\n");if(void 0!==u){let t=y.findIndex(t=>t.startsWith("# "));t>=0?y[t]=`# ${l.id}: ${u}`:y.unshift(`# ${l.id}: ${u}`)}let b=t1(y),v=y.slice(0,b),S=y.slice(b),$=(t,e)=>{let i=v.findIndex(e=>e.match(tY)?.[1].trim().toLowerCase()===t.toLowerCase());if(null===e){i>=0&&v.splice(i,1);return}let s=`**${t}:** ${e}`;i>=0?v[i]=s:v.push(s)};void 0!==o&&$("Parent",o),void 0!==c&&$("Status",c),void 0!==p&&$("Order",String(p)),void 0!==m&&$("Tasks",t9(m)),void 0!==w&&$("Due",w),void 0!==a&&$("Owner",a),void 0!==g&&(S=g?["",g,""]:[""]),await e.default.writeFile(i.default.join(r,l.file),[...v,...S].join("\n"),"utf8");let k=await ee(l.id,r);return await tE(r,{type:"roadmap_updated",actor:n,title:`${l.id} updated`,detail:k.title}),k}async function ed(t,s,r){let{item:n,raw:a}=await t4(t,s),o=(await eu(s))[n.id]??null,l=(await t8(s)).map(t=>t.item).filter(t=>t.parent===n.id).map(t=>t.id);if(l.length>0)throw new tU(`${n.id} still has children (${l.join(", ")}); move or delete them first`);return await e.default.unlink(i.default.join(s,n.file)),await ec({},s),await tE(s,{type:"roadmap_updated",actor:r,title:`${n.id} deleted`,detail:n.title}),{item:n,raw:a,position:o}}async function eu(t){try{let s=JSON.parse(await e.default.readFile(i.default.join(t,tG),"utf8"));if(!s||"object"!=typeof s||Array.isArray(s))return{};let r={};for(let[t,e]of Object.entries(s))e&&Number.isFinite(e.x)&&Number.isFinite(e.y)&&(r[t]={x:e.x,y:e.y});return r}catch{return{}}}async function ec(t,s){let r={};for(let[e,i]of Object.entries(t??{})){let t=e.trim().toUpperCase();if(!(/^R\d+$/.test(t)&&i&&"object"==typeof i&&"number"==typeof i.x&&"number"==typeof i.y&&Number.isFinite(i.x)&&Number.isFinite(i.y)))throw new tU(`Invalid position for ${e}`);r[t]={x:i.x,y:i.y}}let n={...await eu(s),...r},a=new Set((await t8(s)).map(t=>t.item.id)),o={};for(let t of Object.keys(n).sort())a.has(t)&&(o[t]=n[t]);return await e.default.mkdir(i.default.join(s,tB),{recursive:!0}),await e.default.writeFile(i.default.join(s,tG),JSON.stringify(o,null,2)+"\n","utf8"),o}let ef={roadmap:"roadmap-planner",breakdown:"epic-breakdown"};async function ep(t){if(!Object.hasOwn(ef,t))throw Error(`Unknown planning kind "${t}" (expected: ${Object.keys(ef).join(", ")})`);return(await e.default.readFile(i.default.join(process.cwd(),"skills",ef[t],"SKILL.md"),"utf-8")).replace(/^---\r?\n[\s\S]*?\r?\n---\r?\n/,"").trimStart()}let em=i.default.join(".vibedoc","chats"),eg=/^[a-z0-9-]{1,64}$/;function ew(t,e){if(!eg.test(t))throw Error(`Invalid chat id "${t}"`);return i.default.join(e,em,`${t}.json`)}async function ey(t){let s=i.default.join(t,em),r=await e.default.readdir(s).catch(()=>[]);return(await Promise.all(r.filter(t=>t.endsWith(".json")).map(async t=>{try{return JSON.parse(await e.default.readFile(i.default.join(s,t),"utf-8"))}catch(e){return console.warn(`[vibedoc] skipping unreadable chat ${t}: ${e.message}`),null}}))).filter(t=>null!==t)}async function eb(t,s){let r=t?.id;if("string"!=typeof r)throw Error("chat.id is required");let n=ew(r,s);await e.default.mkdir(i.default.dirname(n),{recursive:!0});let a=`${n}.tmp`;await e.default.writeFile(a,JSON.stringify(t),"utf-8"),await e.default.rename(a,n)}async function ev(t,i){await e.default.rm(ew(t,i),{force:!0})}let eS=i.default.join(".vibedoc","views.json");async function e$(t){let s;try{s=await e.default.readFile(i.default.join(t,eS),"utf-8")}catch{return null}try{let t=JSON.parse(s)?.views;if(!Array.isArray(t))throw Error('"views" is not an array');return t}catch(t){return console.warn(`[vibedoc] ignoring unreadable ${eS}: ${t.message}`),null}}async function ek(t,s){let r=i.default.join(s,eS);await e.default.mkdir(i.default.dirname(r),{recursive:!0});let n=`${r}.tmp`;await e.default.writeFile(n,JSON.stringify({views:t},null,2)+"\n","utf-8"),await e.default.rename(n,r)}t.s(["RoadmapError",0,tU,"TaskStateError",0,B,"appendDoc",0,tj,"applyPlan",0,function(t,e,i,s="human"){return t?.kind==="roadmap"?t7(async()=>{let[r,{tasks:n}]=await Promise.all([t8(i),F(i)]),a=X(t,e,r.map(t=>t.item),n.map(t=>t.id));if("roadmap"!==a.kind)throw new tU("expected a roadmap plan");let o=new Map,l=[];for(let t of a.horizons){let e=await eo({title:t.title.trim(),body:t.body},i,s);o.set(t.key.trim(),e.id),l.push({key:t.key,id:e.id,file:e.file})}for(let t of a.epics){let e=o.get(t.parent.trim())??t.parent.trim().toUpperCase(),r=await eo({title:t.title.trim(),parent:e,status:t.status,body:t.body},i,s);l.push({key:t.key,id:r.id,file:r.file})}return{created:l,epic:null}}):J(async()=>{let[{items:r},{tasks:n}]=await Promise.all([et(i),F(i)]),a=X(t,e,r,n.map(t=>t.id));if("breakdown"!==a.kind)throw new tU("expected a breakdown plan");let o=a.epic?.trim()?await ee(a.epic,i):a.newEpic?await ei({title:a.newEpic.title.trim(),parent:a.newEpic.parent.trim().toUpperCase(),body:a.newEpic.body},i,s):null,l=new Map,h=[];for(let t of a.tasks){let e=(t.dependsOn??[]).map(t=>l.get(t.trim())??t.trim().toUpperCase()),s=await H({title:t.title.trim(),phase:o?`${o.id} — ${o.title}`:void 0,size:t.size,dependsOn:e.join(", ")||void 0,due:t.due,body:t.body},i);l.set(t.key.trim(),s.id),h.push({key:t.key,id:s.id,file:s.file})}if(!o)return{created:h,epic:null};let d=await ee(o.id,i),u=await el(o.id,{tasks:[...d.tasks,...h.map(t=>t.id)]},i,s);return{created:h,epic:u}})},"approveTask",0,function(t,e,i=""){return G(t,"approved",i,"done",e)},"bulkTasks",0,W,"claimNextTask",0,function(t,e,i){return J(async()=>{let s=await ee(t,e);if(!s.parent)throw Error(`${s.id} is a horizon; pass an epic id`);let{tasks:r}=await F(e),n=(0,l.pickNextTask)(s,r);if("ready"!==n.kind)return{result:n};let{task:a,previousStatus:o}=await M(n.taskId,"in-progress",e,"ai",{actor:"ai",agent:i});return{result:n,task:a,previousStatus:o}})},"createDoc",0,A,"createRoadmapItem",0,ei,"createTask",0,function(t,e){return J(()=>H(t,e))},"deleteChat",0,ev,"deleteDoc",0,tF,"deleteEntry",0,function(t,s,r="human"){let n=(0,b.normalizeEntryId)(String(t??""));return n?te(async()=>{let t=(await ti(s)).find(t=>t.id===n);if(!t)throw Error(`Entry ${n} not found`);let a=await e.default.readFile(i.default.join(s,t.file),"utf8");return await e.default.rm(i.default.join(s,t.file)),await tE(s,{type:"memory_updated",actor:r,title:`Entry ${n} deleted`,detail:t.summary}),{...t,raw:a}}):Promise.reject(Error(`Invalid id "${t}": expected E followed by a number, e.g. E001`))},"deleteRoadmapItem",0,function(t,e,i="human"){return t7(()=>ed(t,e,i))},"deleteTask",0,L,"detectRoadmapSource",0,en,"discoverProjects",0,S,"docLastEdit",0,tC,"editDoc",0,x,"enrichDescription",0,tv,"findBacklinks",0,tI,"generateRoadmap",0,function(t,s="human"){return t7(async()=>{if((await t8(t)).length>0)throw new tU("Roadmap already exists");let{source:r,drafts:n}=await ea(t),a=new Map(n.map((t,e)=>[t.key,es(e+1)])),o=new Map;for(let s of(await e.default.mkdir(i.default.join(t,tB),{recursive:!0}),n)){let e=(o.get(s.parent)??0)+1;o.set(s.parent,e),await er(t,{id:a.get(s.key),title:s.title,parent:null===s.parent?null:a.get(s.parent)??null,status:s.status,order:10*e,tasks:s.tasks,due:null,body:s.body})}await tE(t,{type:"roadmap_updated",actor:s,title:`Roadmap generated (${n.length} items)`,detail:`from ${r}`});let{items:l}=await et(t);return{items:l,source:r}})},"getConfiguredRoot",0,v,"getContext",0,C,"getEntriesByIds",0,tr,"getEntry",0,ts,"getFileAtCommit",0,tu,"getFileHistory",0,td,"getMemoryGraph",0,tW,"getProjectSummary",0,tz,"getTask",0,R,"listChats",0,ey,"listDocs",0,$,"listEntries",0,ti,"listExplorerFiles",0,tS,"listRoadmap",0,et,"listTasks",0,F,"logDecision",0,Z,"logSessionStart",0,tO,"noteDocEdit",0,tx,"readActivity",0,tA,"readDoc",0,k,"readMemory",0,V,"readPlanningSkill",0,ep,"readProjectSettings",0,_,"readRegistry",0,tN,"readViews",0,e$,"rebuildRegistry",0,tP,"recallEntries",0,tc,"relatedEntries",0,ta,"renameDoc",0,tT,"restoreEntry",0,function(t,s,r,n="human"){return te(async()=>{if(!z(t,"memory/entries",/^E\d+[^/]*\.md$/)||"string"!=typeof s)throw new tU("Invalid entry to restore");let a=(0,b.parseEntry)(s,t),o=(0,b.normalizeEntryId)(i.default.basename(t).match(/^(E\d+)/i)?.[1]??"");if(!a||a.id!==o)throw new tU("Invalid entry to restore");if((await ti(r)).some(t=>t.id===o))throw new tU(`${o} already exists`);return await e.default.mkdir(i.default.join(r,Q),{recursive:!0}),await e.default.writeFile(i.default.join(r,t),s,{flag:"wx",encoding:"utf8"}),await tE(r,{type:"memory_updated",actor:n,title:`Entry ${o} restored`,detail:a.summary}),a})},"restoreRoadmapItem",0,function(t,s,r,n,a="human"){return t7(async()=>{if(!z(t,tB,/^R\d+[^/]*\.md$/)||"string"!=typeof s)throw new tU("Invalid roadmap item to restore");let o=tH(t);if(!o)throw new tU("Invalid roadmap item to restore");if(await t4(o,n).then(()=>!0,()=>!1))throw new tU(`${o} already exists`);return await e.default.mkdir(i.default.join(n,tB),{recursive:!0}),await e.default.writeFile(i.default.join(n,t),s,{flag:"wx",encoding:"utf8"}),r&&await ec({[o]:r},n),await tE(n,{type:"roadmap_updated",actor:a,title:`${o} restored`}),(await t4(o,n)).item})},"restoreTask",0,function(t,s,r,n,a="human"){return J(async()=>{if(!z(t,"plans/tasks",/^T\d+[^/]*\.md$/)||"string"!=typeof s)throw new tU("Invalid task to restore");let o=i.default.basename(t).match(/^(T\d+)/i)[1].toUpperCase();if(await R(o,n).then(()=>!0,()=>!1))throw new tU(`${o} already exists`);await e.default.mkdir(i.default.join(n,"plans/tasks"),{recursive:!0}),await e.default.writeFile(i.default.join(n,t),s,{flag:"wx",encoding:"utf8"});let{items:l}=await et(n);for(let t of Array.isArray(r)?r:[]){let e=l.find(e=>e.id===t?.epic);if(!e||e.tasks.includes(o))continue;let i=[...e.tasks];i.splice(Math.max(0,Math.min(Number(t.index)||0,i.length)),0,o),await el(e.id,{tasks:i},n,a)}return await tE(n,{type:"task_updated",actor:a,title:`${o} restored`,taskId:o}),R(o,n)})},"saveChat",0,eb,"saveEntry",0,function(t,s,r="human",n){let a=(0,b.validateEntryInput)(t);return a?Promise.reject(Error(a)):te(async()=>{let a,o,l=await ti(s);if(void 0!==t.id){if(a=(0,b.normalizeEntryId)(String(t.id)),!(o=l.find(t=>t.id===a)))throw Error(`Entry ${a} not found`)}else a=(0,b.nextEntryId)(l.map(t=>t.id));let h=t.summary.trim(),d={id:a,type:t.type,summary:h,body:(t.body??"").trim(),updatedAt:(0,g.localToday)(),by:"human"===r?"human":(0,f.parseOwner)(`ai:${n||"agent"}`)??"ai:agent",file:i.default.join(Q,`${a}-${(0,b.entrySlug)(h)}.md`)};return await e.default.mkdir(i.default.join(s,Q),{recursive:!0}),await e.default.writeFile(i.default.join(s,d.file),(0,b.formatEntry)(d),"utf8"),o&&o.file!==d.file&&await e.default.rm(i.default.join(s,o.file),{force:!0}),await tE(s,{type:"memory_updated",actor:r,title:`Entry ${a} saved`,detail:h}),d})},"saveManualTests",0,U,"saveViews",0,ek,"searchDocs",0,O,"sendBackTask",0,function(t,e,i){return G(t,"changes requested",e,"todo",i)},"sessionStartMemory",0,tn,"setManualTestChecked",0,q,"updateMemory",0,K,"updateRegistryAnnotation",0,tL,"updateRoadmapItem",0,el,"updateTaskMeta",0,P,"updateTaskStatus",0,M,"writeDoc",0,E,"writeRoadmapLayout",0,function(t,e){return t7(()=>ec(t,e))}])},976259,t=>{"use strict";let e=["convention","gotcha","decision","preference"];function i(t){let e=/^e(\d+)$/i.exec(t.trim());if(!e)return null;let i=Number(e[1]);return i>0?`E${String(i).padStart(3,"0")}`:null}t.s(["ENTRY_TYPES",0,e,"entrySlug",0,function(t){return t.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"").slice(0,40).replace(/-$/,"")},"formatEntry",0,function(t){let e=`# ${t.id}: ${t.summary}
|
|
99
|
+
**Type:** ${t.type}
|
|
100
|
+
**Updated:** ${t.updatedAt}
|
|
101
|
+
${t.by?`**By:** ${t.by}
|
|
102
|
+
`:""}`;return t.body.trim()?`${e}
|
|
103
|
+
${t.body.trim()}
|
|
104
|
+
`:e},"nextEntryId",0,function(t){let e=Math.max(0,...t.map(t=>Number(i(t)?.slice(1)??0)));return`E${String(e+1).padStart(3,"0")}`},"normalizeEntryId",0,i,"parseEntry",0,function(t,s){let r=t.replace(/\r\n/g,"\n").split("\n"),n=/^#\s+(E\d+):\s*(.+?)\s*$/i.exec(r[0]??""),a=n&&i(n[1]);if(!n||!a)return null;let o={},l=1;for(;l<r.length;l++){let t=/^\*\*(\w+):\*\*\s*(.*)$/.exec(r[l]);if(!t)break;o[t[1].toLowerCase()]=t[2].trim()}let h=o.type??"";return e.includes(h)?{id:a,type:h,summary:n[2],body:r.slice(l).join("\n").trim(),updatedAt:o.updated??"",by:o.by||null,file:s}:null},"validateEntryInput",0,function(t){let s;if(void 0!==t.id&&!i(String(t.id)))return`Invalid id "${t.id}": expected E followed by a number, e.g. E001`;if(s=String(t.type??""),!e.includes(s))return`Invalid type "${t.type??""}": use one of ${e.join(", ")}`;let r=String(t.summary??"").trim();return r?/\n/.test(r)?"summary must be one line":r.length>120?`summary is ${r.length} characters; keep it to 120`:void 0!==t.body&&"string"!=typeof t.body?"body must be a string":null:"summary is required"}])},817466,166045,t=>{"use strict";let e=new Set("a an and are as at be but by can do does for from how i if in into is it its of on or our so that the their then there these this to use used using was we what when where which who why will with you your".split(" "));function i(t){return t.toLowerCase().split(/[^a-z0-9]+/).filter(t=>t.length>1&&!e.has(t)).map(t=>t.length>3&&t.endsWith("s")&&!t.endsWith("ss")?t.slice(0,-1):t)}function s(t){return Math.ceil(t.length/4)}function r(t){return`${t.id} \xb7 ${t.type} \xb7 ${t.summary} (~${t.tokens} tok)`}t.s(["DEFAULT_SESSION_BUDGET",0,2e3,"fitToBudget",0,function(t,e,i){let n,a=(i,s)=>[t.trimEnd(),"",...s?[s]:[],`## Knowledge entries (${e.length})`,...e.slice(0,i).map(r),...i<e.length?[`+${e.length-i} more entries — use vibedoc_recall { query }`]:[],"Save new facts with vibedoc_save_entry; fetch bodies with vibedoc_get_entries."].join("\n"),o=t=>s(a(t))<=i,l=0;if(o(0)){for(;l<e.length&&o(l+1);)l++;n=a(l)}else n=a(0,`⚠️ The handoff alone is ~${s(t)} tokens, over the ${i}-token session budget: trim memory/MEMORY.md.`);return{text:n,shown:l,omitted:e.length-l,tokens:s(n)}},"formatCompactLine",0,r,"formatRelated",0,function(t,e=3){let i=t.filter(t=>t.score>=3).slice(0,e);return i.length?`## Related memory
|
|
105
|
+
${i.map(r).join("\n")}
|
|
106
|
+
Fetch with vibedoc_get_entries`:""},"indexHits",0,function(t){return[...t].sort((t,e)=>e.updatedAt.localeCompare(t.updatedAt)||t.id.localeCompare(e.id,"en",{numeric:!0})).map(t=>({id:t.id,type:t.type,summary:t.summary,tokens:s(`${t.summary}
|
|
107
|
+
${t.body}`),score:0}))},"rankEntries",0,function(t,e,r={}){let n=[...new Set(i(e))];if(!n.length)return[];let a=[];for(let e of t){if(r.type&&e.type!==r.type)continue;let t=new Set(i(e.summary)),o=new Set(i(e.body)),l=new Set([e.id.toLowerCase(),...i(e.type)]),h=0;for(let e of n)t.has(e)&&(h+=3),l.has(e)&&(h+=2),o.has(e)&&(h+=1);h>0&&a.push({id:e.id,type:e.type,summary:e.summary,tokens:s(`${e.summary}
|
|
108
|
+
${e.body}`),score:h,updatedAt:e.updatedAt})}return a.sort((t,e)=>e.score-t.score||e.updatedAt.localeCompare(t.updatedAt)),a.slice(0,r.limit??10).map(({updatedAt:t,...e})=>e)},"taskQuery",0,function(t){let e=/^## Goal[ \t]*\n([\s\S]*?)(?=^## |(?![\s\S]))/m.exec(t.raw??"")?.[1].trim()??"",i=(t.phase??"").replace(/^R\d+\s*[—–-]\s*/,"");return[t.title,e.slice(0,500),i].filter(Boolean).join(" ")},"tokenize",0,i],817466);let n=/(?<![A-Za-z0-9_-])(E\d+|T\d{3,}|R\d{3,}|ADR-\d+)(?![A-Za-z0-9_])/g,a=/`([^`\s]+\.md)`/g,o=/\]\(\s*<?([^)\s>#]+\.md)(?:#[^)\s]*)?>?\s*\)/g,l=t=>String(Number(t)).padStart(3,"0");function h(t){return t.startsWith("ADR-")?`ADR-${l(t.slice(4))}`:t.startsWith("E")?`E${l(t.slice(1))}`:t}let d=t=>t.replace(/\\/g,"/").replace(/^\.?\//,"");function u(t){let e=new Set;for(let i of t.matchAll(n))/^E0+$/.test(i[1])||e.add(h(i[1]));let i=new Set;for(let e of[a,o])for(let s of t.matchAll(e))/^[a-z]+:\/\//i.test(s[1])||i.add(d(s[1]));return{ids:[...e],paths:[...i]}}t.s(["buildGraph",0,function(t,e){let i=[...t,...e],s=new Map(i.map(t=>[t.id,t])),r=new Map(i.map(t=>[t.path,t])),n=new Set(t.map(t=>t.id)),a=new Map,o=(t,e)=>{t!==e&&a.set(`${t}\u0000${e}`,{from:t,to:e})};for(let e of t){let{ids:t,paths:i}=u(e.text);for(let i of t)s.has(i)&&o(e.id,i);for(let t of i){let i=r.get(t);i&&o(e.id,i.id)}}for(let t of e)for(let e of u(t.text).ids)n.has(e)&&o(t.id,e);let l=new Set(n);for(let t of a.values())l.add(t.from),l.add(t.to);return{nodes:i.filter(t=>l.has(t.id)).map(({text:t,...e})=>e),edges:[...a.values()]}},"fileNode",0,function(t,e){let i,s=d(t),r=s.split("/").pop()??s,n=/^#\s+(.+?)\s*$/m.exec(e)?.[1]??"",a=t=>n.replace(RegExp(`^${t}\\s*[:—–-]\\s*`),"")||r.replace(/\.md$/,"");return(i=/^plans\/tasks\/(T\d{3,})[^/]*\.md$/.exec(s))?{id:i[1],kind:"task",label:a(i[1]),path:s}:(i=/^plans\/roadmap\/(R\d{3,})[^/]*\.md$/.exec(s))?{id:i[1],kind:"epic",label:a(i[1]),path:s}:(i=/(?:^|\/)(ADR-\d+)[^/]*\.md$/.exec(s))?{id:h(i[1]),kind:"adr",label:a(i[1]),path:s}:{id:s,kind:"doc",label:n||r.replace(/\.md$/,""),path:s}},"formatEntryLinks",0,function(t,e,i=10){let s=(t,e)=>{if(!e.length)return[];let s=e.length>i?`, +${e.length-i} more`:"";return[`${t}: ${e.slice(0,i).join(", ")}${s}`]};return[...s("Links",t.edges.filter(t=>t.from===e).map(t=>t.to)),...s("Linked from",t.edges.filter(t=>t.to===e).map(t=>t.from))]},"neighbourhood",0,function(t,e){if(!t.nodes.some(t=>t.id===e))return{nodes:[],edges:[]};let i=t.edges.filter(t=>t.from===e||t.to===e),s=new Set([e,...i.flatMap(t=>[t.from,t.to])]);return{nodes:t.nodes.filter(t=>s.has(t.id)),edges:i}}],166045)}];
|
|
109
|
+
|
|
110
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__19rxcu4._.js.map
|