vibedoc 1.6.0 → 1.7.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 +2 -0
- package/.next/build-manifest.json +3 -3
- package/.next/prerender-manifest.json +39 -11
- package/.next/routes-manifest.json +12 -0
- 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.nft.json +1 -1
- package/.next/server/app/(app)/board/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/chat/page/app-paths-manifest.json +3 -0
- package/.next/server/app/(app)/chat/page/build-manifest.json +20 -0
- package/.next/server/app/(app)/chat/page/next-font-manifest.json +11 -0
- package/.next/server/app/(app)/chat/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/(app)/chat/page/server-reference-manifest.json +4 -0
- package/.next/server/app/(app)/chat/page.js +15 -0
- package/.next/server/app/(app)/chat/page.js.map +5 -0
- package/.next/server/app/(app)/chat/page.js.nft.json +1 -0
- package/.next/server/app/(app)/chat/page_client-reference-manifest.js +3 -0
- 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.nft.json +1 -1
- package/.next/server/app/(app)/explorer/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/memory/page.js.nft.json +1 -1
- package/.next/server/app/(app)/memory/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/roadmap/page.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.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.nft.json +1 -1
- package/.next/server/app/(app)/setup/page_client-reference-manifest.js +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.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 +9 -10
- 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.nft.json +1 -1
- package/.next/server/app/api/backlinks/route.js.nft.json +1 -1
- package/.next/server/app/api/chat/route.js.nft.json +1 -1
- package/.next/server/app/api/context/route.js.nft.json +1 -1
- package/.next/server/app/api/conversations/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/conversations/route/build-manifest.json +12 -0
- package/.next/server/app/api/conversations/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/conversations/route.js +9 -0
- package/.next/server/app/api/conversations/route.js.map +5 -0
- package/.next/server/app/api/conversations/route.js.nft.json +1 -0
- package/.next/server/app/api/conversations/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/decisions/route.js.nft.json +1 -1
- package/.next/server/app/api/docs/route.js.nft.json +1 -1
- package/.next/server/app/api/explorer/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/.next/server/app/api/memory/route.js.nft.json +1 -1
- package/.next/server/app/api/plan/apply/route.js.nft.json +1 -1
- package/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/.next/server/app/api/registry/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/create/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/generate/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/layout/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/route.js.nft.json +1 -1
- package/.next/server/app/api/roadmap/update/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/.next/server/app/api/setup/generate/route.js.nft.json +1 -1
- package/.next/server/app/api/setup/write/route.js.nft.json +1 -1
- package/.next/server/app/api/summary/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/create/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/route.js.nft.json +1 -1
- package/.next/server/app/board.html +1 -1
- package/.next/server/app/board.rsc +22 -23
- package/.next/server/app/board.segments/!KGFwcCk/board/__PAGE__.segment.rsc +9 -10
- 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 -0
- package/.next/server/app/chat.meta +31 -0
- package/.next/server/app/chat.rsc +29 -0
- package/.next/server/app/chat.segments/!KGFwcCk/chat/__PAGE__.segment.rsc +31 -0
- package/.next/server/app/chat.segments/_full.segment.rsc +29 -0
- package/.next/server/app/chat.segments/_tree.segment.rsc +4 -0
- package/.next/server/app/docs.html +1 -1
- package/.next/server/app/docs.rsc +22 -27
- package/.next/server/app/docs.segments/!KGFwcCk/docs/__PAGE__.segment.rsc +6 -6
- package/.next/server/app/docs.segments/_full.segment.rsc +22 -27
- 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 +9 -10
- 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/memory.html +1 -1
- package/.next/server/app/memory.rsc +22 -23
- package/.next/server/app/memory.segments/!KGFwcCk/memory/__PAGE__.segment.rsc +9 -10
- package/.next/server/app/memory.segments/_full.segment.rsc +22 -23
- package/.next/server/app/memory.segments/_tree.segment.rsc +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 -26
- package/.next/server/app/roadmap.segments/!KGFwcCk/roadmap/__PAGE__.segment.rsc +9 -11
- package/.next/server/app/roadmap.segments/_full.segment.rsc +22 -26
- 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 +9 -10
- 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 +9 -10
- 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 +2 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1htgzmb._.js +3 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_1htgzmb._.js.map +1 -0
- package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0d2_lq6._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1613hjb._.js +4 -4
- package/.next/server/chunks/[root-of-the-server]__1613hjb._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__1jxu2x9._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1jxu2x9._.js.map +1 -0
- package/.next/server/chunks/_1b5fqxy._.js +1 -1
- package/.next/server/chunks/_1b5fqxy._.js.map +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_conversations_route_actions_1-pu7gs.js +3 -0
- package/.next/server/chunks/ssr/{0_nd_mermaid_dist_mermaid_core_mjs_10jvzv6._.js → 0_nd_mermaid_dist_mermaid_core_mjs_0vv_0i3._.js} +2 -2
- package/.next/server/chunks/ssr/{1u84_katex_dist_katex_mjs_05prlqa._.js → 1u84_katex_dist_katex_mjs_1z0p1bs._.js} +1 -1
- package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_0cvmffy._.js +3 -0
- package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_0cvmffy._.js.map +1 -0
- package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_0u3jxas._.js +3 -0
- package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_0u3jxas._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0xt_0w2._.js.map +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__11lfnu0._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__11lfnu0._.js.map +1 -0
- package/.next/server/chunks/ssr/_059qmur._.js +3 -0
- package/.next/server/chunks/ssr/_059qmur._.js.map +1 -0
- package/.next/server/chunks/ssr/_081irea._.js +3 -0
- package/.next/server/chunks/ssr/_081irea._.js.map +1 -0
- package/.next/server/chunks/ssr/_0d8t8l4._.js +3 -0
- package/.next/server/chunks/ssr/_0d8t8l4._.js.map +1 -0
- package/.next/server/chunks/ssr/_0dyvcdg._.js +3 -0
- package/.next/server/chunks/ssr/_0dyvcdg._.js.map +1 -0
- package/.next/server/chunks/ssr/_1-ghqy4._.js +3 -0
- package/.next/server/chunks/ssr/_1-ghqy4._.js.map +1 -0
- package/.next/server/chunks/ssr/_17jy5db._.js +3 -0
- package/.next/server/chunks/ssr/_17jy5db._.js.map +1 -0
- package/.next/server/chunks/ssr/_1c95ems._.js +1 -1
- package/.next/server/chunks/ssr/_1c95ems._.js.map +1 -1
- package/.next/server/chunks/ssr/_1dllfz5._.js +4 -0
- package/.next/server/chunks/ssr/_1dllfz5._.js.map +1 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_(app)_chat_page_actions_0g4tbzt.js +3 -0
- package/.next/server/chunks/ssr/node_modules__pnpm_006_c8z._.js +3 -0
- package/.next/server/chunks/ssr/node_modules__pnpm_006_c8z._.js.map +1 -0
- package/.next/server/chunks/ssr/{node_modules__pnpm_1kngagu._.js → node_modules__pnpm_0286-tg._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1ad2q27._.js → node_modules__pnpm_04khl_s._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0ns_6dd._.js → node_modules__pnpm_07t_e8c._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0baie09._.js → node_modules__pnpm_08sqeu2._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1jfqun_._.js → node_modules__pnpm_09_i2jk._.js} +1 -1
- package/.next/server/chunks/ssr/node_modules__pnpm_09_i2jk._.js.map +1 -0
- package/.next/server/chunks/ssr/{node_modules__pnpm_1o3_0-n._.js → node_modules__pnpm_0a9b2ei._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0e15nhj._.js → node_modules__pnpm_0ah02mu._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_20tdqv_._.js → node_modules__pnpm_0cj8ryj._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0wnlgm-._.js → node_modules__pnpm_0dwi7mu._.js} +2 -2
- package/.next/server/chunks/ssr/node_modules__pnpm_0dwi7mu._.js.map +1 -0
- package/.next/server/chunks/ssr/{node_modules__pnpm_1h890n6._.js → node_modules__pnpm_0f77_ng._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1u8p2h3._.js → node_modules__pnpm_0fd3pr1._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules__pnpm_1zu-9we._.js → node_modules__pnpm_0gifu-u._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules__pnpm_1_o0jyk._.js → node_modules__pnpm_0jpv2b6._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules__pnpm_1f3lm9p._.js → node_modules__pnpm_0og06fy._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_12s6q4d._.js → node_modules__pnpm_0qc3gsk._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0e3u5g-._.js → node_modules__pnpm_0ts89ne._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1moe8b6._.js → node_modules__pnpm_0ttvopp._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1ly58kw._.js → node_modules__pnpm_0u3u82f._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1hw4h9e._.js → node_modules__pnpm_0y35hs4._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0jhh7p5._.js → node_modules__pnpm_104pzhc._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules__pnpm_1gqkoe3._.js → node_modules__pnpm_195j8p_._.js} +1 -1
- package/.next/server/chunks/ssr/node_modules__pnpm_1kcnkjs._.js +3 -0
- package/.next/server/chunks/ssr/node_modules__pnpm_1kcnkjs._.js.map +1 -0
- package/.next/server/chunks/ssr/{node_modules__pnpm_0i0uccx._.js → node_modules__pnpm_1l8k8w1._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_0rd-a9g._.js → node_modules__pnpm_1w0f1m5._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1gtgu48._.js → node_modules__pnpm_1woddr6._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules__pnpm_0_z3_bl._.js → node_modules__pnpm_1x0t5_z._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_07_kgbe._.js → node_modules__pnpm_1xzf8g_._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_08em703._.js → node_modules__pnpm_1yq90z7._.js} +1 -1
- package/.next/server/chunks/ssr/node_modules__pnpm_1yq90z7._.js.map +1 -0
- package/.next/server/chunks/ssr/src_app_(app)_chat_page_tsx_0c3e4l4._.js +3 -0
- package/.next/server/chunks/ssr/src_app_(app)_chat_page_tsx_0c3e4l4._.js.map +1 -0
- package/.next/server/chunks/ssr/src_app_(app)_layout_tsx_1yu5hom._.js +3 -0
- package/.next/server/chunks/ssr/src_app_(app)_layout_tsx_1yu5hom._.js.map +1 -0
- package/.next/server/chunks/ssr/src_app_(app)_roadmap_page_tsx_0vcq3jr._.js +5 -0
- package/.next/server/chunks/ssr/src_app_(app)_roadmap_page_tsx_0vcq3jr._.js.map +1 -0
- package/.next/server/chunks/ssr/src_app_(app)_settings_page_tsx_0zevtee._.js +2 -2
- package/.next/server/chunks/ssr/src_app_(app)_settings_page_tsx_0zevtee._.js.map +1 -1
- package/.next/server/chunks/ssr/src_context_ChatContext_tsx_0lowp8p._.js +5 -0
- package/.next/server/chunks/ssr/src_context_ChatContext_tsx_0lowp8p._.js.map +1 -0
- package/.next/server/chunks/ssr/{_1wf14_u._.js → src_lib_templates_index_ts_1s61uk7._.js} +2 -2
- package/.next/server/chunks/ssr/{_1wf14_u._.js.map → src_lib_templates_index_ts_1s61uk7._.js.map} +1 -1
- package/.next/server/middleware-build-manifest.js +3 -3
- package/.next/server/next-font-manifest.js +1 -1
- package/.next/server/next-font-manifest.json +4 -0
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/prefetch-hints.json +19 -0
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/050mq8l4e1ubn.js +1 -0
- package/.next/static/chunks/098le48845_fg.js +3 -0
- package/.next/static/chunks/0cw4-ebkoufdc.js +1 -0
- package/.next/static/chunks/0feo-go1w5nct.js +1 -0
- package/.next/static/chunks/14sefb904pl64.js +21 -0
- package/.next/static/chunks/1fer-wulyrjrs.js +3 -0
- package/.next/static/chunks/1o7b1x4umy8a6.js +1 -0
- package/.next/static/chunks/1q_io1j58aukw.js +1 -0
- package/.next/static/chunks/1t-cgh4477hfo.js +1 -0
- package/.next/static/chunks/1u-1po1qesc9f.js +1 -0
- package/.next/static/chunks/1u5kegkgm0xoz.js +1 -0
- package/.next/static/chunks/24ygzsgd-moqy.js +1 -0
- package/.next/static/chunks/26folxgplfa9t.js +68 -0
- package/.next/static/chunks/2ocixvjhv34_3.js +1 -0
- package/.next/static/chunks/3_lsdgxa-h7ma.css +10 -0
- package/.next/static/chunks/3rmv-sb9w9i3e.js +1 -0
- package/.next/static/chunks/3ttzomivj48jh.js +2 -0
- package/README.md +1 -1
- package/package.json +1 -1
- package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_08ca0b4._.js +0 -3
- package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_08ca0b4._.js.map +0 -1
- package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_0c1k9is._.js +0 -3
- package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_0c1k9is._.js.map +0 -1
- package/.next/server/chunks/ssr/_01suk2m._.js +0 -3
- package/.next/server/chunks/ssr/_01suk2m._.js.map +0 -1
- package/.next/server/chunks/ssr/_0qyglif._.js +0 -5
- package/.next/server/chunks/ssr/_0qyglif._.js.map +0 -1
- package/.next/server/chunks/ssr/_0skuoxv._.js +0 -6
- package/.next/server/chunks/ssr/_0skuoxv._.js.map +0 -1
- package/.next/server/chunks/ssr/_14i_6yb._.js +0 -3
- package/.next/server/chunks/ssr/_14i_6yb._.js.map +0 -1
- package/.next/server/chunks/ssr/_1cbhuz4._.js +0 -3
- package/.next/server/chunks/ssr/_1cbhuz4._.js.map +0 -1
- package/.next/server/chunks/ssr/_1ewk_mn._.js +0 -3
- package/.next/server/chunks/ssr/_1ewk_mn._.js.map +0 -1
- package/.next/server/chunks/ssr/node_modules__pnpm_1dcmsrg._.js +0 -3
- package/.next/server/chunks/ssr/node_modules__pnpm_1dcmsrg._.js.map +0 -1
- package/.next/server/chunks/ssr/src_components_008q3v8._.js +0 -3
- package/.next/server/chunks/ssr/src_components_008q3v8._.js.map +0 -1
- package/.next/static/chunks/02sab26ica2x3.js +0 -1
- package/.next/static/chunks/0eggcu0ovk8sd.js +0 -68
- package/.next/static/chunks/0iva6rdtfqpbz.js +0 -1
- package/.next/static/chunks/0qm101bdsxdyh.css +0 -10
- package/.next/static/chunks/0wg9n5zb8mo2p.js +0 -1
- package/.next/static/chunks/0wjw1laqwg-cr.js +0 -21
- package/.next/static/chunks/0z_y7el6m76yk.js +0 -1
- package/.next/static/chunks/1-ekntoveuxzd.js +0 -4
- package/.next/static/chunks/1g6fxjtlpv6p5.js +0 -1
- package/.next/static/chunks/1ytqu-ra-fylk.js +0 -3
- package/.next/static/chunks/3dlnlsyyysw5m.js +0 -1
- package/.next/static/chunks/3kkg030rcpz7l.js +0 -1
- package/.next/static/chunks/3pf_4ye6ju8gt.js +0 -1
- /package/.next/server/chunks/{ssr/0_nd_mermaid_dist_mermaid_core_mjs_10jvzv6._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0d2_lq6._.js.map} +0 -0
- /package/.next/server/chunks/{ssr/1u84_katex_dist_katex_mjs_05prlqa._.js.map → _next-internal_server_app_api_conversations_route_actions_1-pu7gs.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_08em703._.js.map → 0_nd_mermaid_dist_mermaid_core_mjs_0vv_0i3._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0wnlgm-._.js.map → 1u84_katex_dist_katex_mjs_1z0p1bs._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1jfqun_._.js.map → _next-internal_server_app_(app)_chat_page_actions_0g4tbzt.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1kngagu._.js.map → node_modules__pnpm_0286-tg._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1ad2q27._.js.map → node_modules__pnpm_04khl_s._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0ns_6dd._.js.map → node_modules__pnpm_07t_e8c._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0baie09._.js.map → node_modules__pnpm_08sqeu2._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1o3_0-n._.js.map → node_modules__pnpm_0a9b2ei._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0e15nhj._.js.map → node_modules__pnpm_0ah02mu._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_20tdqv_._.js.map → node_modules__pnpm_0cj8ryj._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1h890n6._.js.map → node_modules__pnpm_0f77_ng._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1u8p2h3._.js.map → node_modules__pnpm_0fd3pr1._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1zu-9we._.js.map → node_modules__pnpm_0gifu-u._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1_o0jyk._.js.map → node_modules__pnpm_0jpv2b6._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1f3lm9p._.js.map → node_modules__pnpm_0og06fy._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_12s6q4d._.js.map → node_modules__pnpm_0qc3gsk._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0e3u5g-._.js.map → node_modules__pnpm_0ts89ne._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1moe8b6._.js.map → node_modules__pnpm_0ttvopp._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1ly58kw._.js.map → node_modules__pnpm_0u3u82f._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1hw4h9e._.js.map → node_modules__pnpm_0y35hs4._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0jhh7p5._.js.map → node_modules__pnpm_104pzhc._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1gqkoe3._.js.map → node_modules__pnpm_195j8p_._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0i0uccx._.js.map → node_modules__pnpm_1l8k8w1._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0rd-a9g._.js.map → node_modules__pnpm_1w0f1m5._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1gtgu48._.js.map → node_modules__pnpm_1woddr6._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_0_z3_bl._.js.map → node_modules__pnpm_1x0t5_z._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{node_modules__pnpm_07_kgbe._.js.map → node_modules__pnpm_1xzf8g_._.js.map} +0 -0
- /package/.next/static/{ICaoXcRMmgrIFWk8C_Z6D → uJ5RYxgFnE5svAvnuLDXN}/_buildManifest.js +0 -0
- /package/.next/static/{ICaoXcRMmgrIFWk8C_Z6D → uJ5RYxgFnE5svAvnuLDXN}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{ICaoXcRMmgrIFWk8C_Z6D → uJ5RYxgFnE5svAvnuLDXN}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../node_modules/.pnpm/%40codemirror%2Btheme-one-dark%406.1.3/node_modules/%40codemirror/theme-one-dark/dist/index.js","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/bot.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/trash.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/copy.ts","../../../../node_modules/.pnpm/%40radix-ui%2Breact-collapsible%401.1.20_%40types%2Breact-dom%4019.3.0_%40types%2Breact%4019.3.0__%40types%2B_60ca746e04576a4072dde264acab9013/node_modules/%40radix-ui/react-collapsible/dist/index.mjs","../../../../src/components/ui/collapsible.tsx","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/folder.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/folder-open.ts","../../../../node_modules/.pnpm/%40radix-ui%2Breact-collapsible%401.1.20_%40types%2Breact-dom%4019.3.0_%40types%2Breact%4019.3.0__%40types%2B_60ca746e04576a4072dde264acab9013/node_modules/%40radix-ui/react-collapsible/src/collapsible.tsx","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/pencil.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/plus.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/list.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/users.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/code-xml.ts"],"sourcesContent":["import { EditorView } from '@codemirror/view';\nimport { HighlightStyle, syntaxHighlighting } from '@codemirror/language';\nimport { tags } from '@lezer/highlight';\n\n// Using https://github.com/one-dark/vscode-one-dark-theme/ as reference for the colors\nconst chalky = \"#e5c07b\", coral = \"#e06c75\", cyan = \"#56b6c2\", invalid = \"#ffffff\", ivory = \"#abb2bf\", stone = \"#7d8799\", // Brightened compared to original to increase contrast\nmalibu = \"#61afef\", sage = \"#98c379\", whiskey = \"#d19a66\", violet = \"#c678dd\", darkBackground = \"#21252b\", highlightBackground = \"#2c313a\", background = \"#282c34\", tooltipBackground = \"#353a42\", selection = \"#3E4451\", cursor = \"#528bff\";\n/**\nThe colors used in the theme, as CSS color strings.\n*/\nconst color = {\n chalky,\n coral,\n cyan,\n invalid,\n ivory,\n stone,\n malibu,\n sage,\n whiskey,\n violet,\n darkBackground,\n highlightBackground,\n background,\n tooltipBackground,\n selection,\n cursor\n};\n/**\nThe editor theme styles for One Dark.\n*/\nconst oneDarkTheme = /*@__PURE__*/EditorView.theme({\n \"&\": {\n color: ivory,\n backgroundColor: background\n },\n \".cm-content\": {\n caretColor: cursor\n },\n \".cm-cursor, .cm-dropCursor\": { borderLeftColor: cursor },\n \"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection\": { backgroundColor: selection },\n \".cm-panels\": { backgroundColor: darkBackground, color: ivory },\n \".cm-panels.cm-panels-top\": { borderBottom: \"2px solid black\" },\n \".cm-panels.cm-panels-bottom\": { borderTop: \"2px solid black\" },\n \".cm-searchMatch\": {\n backgroundColor: \"#72a1ff59\",\n outline: \"1px solid #457dff\"\n },\n \".cm-searchMatch.cm-searchMatch-selected\": {\n backgroundColor: \"#6199ff2f\"\n },\n \".cm-activeLine\": { backgroundColor: \"#6699ff0b\" },\n \".cm-selectionMatch\": { backgroundColor: \"#aafe661a\" },\n \"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket\": {\n backgroundColor: \"#bad0f847\"\n },\n \".cm-gutters\": {\n backgroundColor: background,\n color: stone,\n border: \"none\"\n },\n \".cm-activeLineGutter\": {\n backgroundColor: highlightBackground\n },\n \".cm-foldPlaceholder\": {\n backgroundColor: \"transparent\",\n border: \"none\",\n color: \"#ddd\"\n },\n \".cm-tooltip\": {\n border: \"none\",\n backgroundColor: tooltipBackground\n },\n \".cm-tooltip .cm-tooltip-arrow:before\": {\n borderTopColor: \"transparent\",\n borderBottomColor: \"transparent\"\n },\n \".cm-tooltip .cm-tooltip-arrow:after\": {\n borderTopColor: tooltipBackground,\n borderBottomColor: tooltipBackground\n },\n \".cm-tooltip-autocomplete\": {\n \"& > ul > li[aria-selected]\": {\n backgroundColor: highlightBackground,\n color: ivory\n }\n }\n}, { dark: true });\n/**\nThe highlighting style for code in the One Dark theme.\n*/\nconst oneDarkHighlightStyle = /*@__PURE__*/HighlightStyle.define([\n { tag: tags.keyword,\n color: violet },\n { tag: [tags.name, tags.deleted, tags.character, tags.propertyName, tags.macroName],\n color: coral },\n { tag: [/*@__PURE__*/tags.function(tags.variableName), tags.labelName],\n color: malibu },\n { tag: [tags.color, /*@__PURE__*/tags.constant(tags.name), /*@__PURE__*/tags.standard(tags.name)],\n color: whiskey },\n { tag: [/*@__PURE__*/tags.definition(tags.name), tags.separator],\n color: ivory },\n { tag: [tags.typeName, tags.className, tags.number, tags.changed, tags.annotation, tags.modifier, tags.self, tags.namespace],\n color: chalky },\n { tag: [tags.operator, tags.operatorKeyword, tags.url, tags.escape, tags.regexp, tags.link, /*@__PURE__*/tags.special(tags.string)],\n color: cyan },\n { tag: [tags.meta, tags.comment],\n color: stone },\n { tag: tags.strong,\n fontWeight: \"bold\" },\n { tag: tags.emphasis,\n fontStyle: \"italic\" },\n { tag: tags.strikethrough,\n textDecoration: \"line-through\" },\n { tag: tags.link,\n color: stone,\n textDecoration: \"underline\" },\n { tag: tags.heading,\n fontWeight: \"bold\",\n color: coral },\n { tag: [tags.atom, tags.bool, /*@__PURE__*/tags.special(tags.variableName)],\n color: whiskey },\n { tag: [tags.processingInstruction, tags.string, tags.inserted],\n color: sage },\n { tag: tags.invalid,\n color: invalid },\n]);\n/**\nExtension to enable the One Dark theme (both the editor theme and\nthe highlight style).\n*/\nconst oneDark = [oneDarkTheme, /*@__PURE__*/syntaxHighlighting(oneDarkHighlightStyle)];\n\nexport { color, oneDark, oneDarkHighlightStyle, oneDarkTheme };\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'bot',\n size: 24,\n node: [\n ['path', { d: 'M12 8V4H8', key: 'hb8ula' }],\n ['rect', { width: '16', height: '12', x: '4', y: '8', rx: '2', key: 'enze0r' }],\n ['path', { d: 'M2 14h2', key: 'vft8re' }],\n ['path', { d: 'M20 14h2', key: '4cs60a' }],\n ['path', { d: 'M15 13v2', key: '1xurst' }],\n ['path', { d: 'M9 13v2', key: 'rq6x2g' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Bot\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/bot\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Bot = createLucideIcon(__iconData);\n\nexport default Bot;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'trash',\n size: 24,\n node: [\n ['path', { d: 'M10 11v6', key: 'nco0om' }],\n ['path', { d: 'M14 11v6', key: 'outv1u' }],\n ['path', { d: 'M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6', key: 'miytrc' }],\n ['path', { d: 'M3 6h18', key: 'd0wm0j' }],\n ['path', { d: 'M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2', key: 'e791ji' }],\n ],\n aliases: ['trash-2'],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Trash\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/trash\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Trash = createLucideIcon(__iconData);\n\nexport default Trash;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'copy',\n size: 24,\n node: [\n ['rect', { width: '14', height: '14', x: '8', y: '8', rx: '2', ry: '2', key: '17jyea' }],\n ['path', { d: 'M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2', key: 'zix9uf' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Copy\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/copy\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Copy = createLucideIcon(__iconData);\n\nexport default Copy;\n","\"use client\";\nvar __defProp = Object.defineProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\n\n// src/collapsible.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { jsx } from \"react/jsx-runtime\";\nvar COLLAPSIBLE_NAME = \"Collapsible\";\nvar [createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME);\nvar [CollapsibleProvider, useCollapsibleContext] = createCollapsibleContext(COLLAPSIBLE_NAME);\nvar Collapsible = /* @__PURE__ */ React.forwardRef(\n /* @__PURE__ */ __name(function Collapsible2(props, forwardedRef) {\n const {\n __scopeCollapsible,\n open: openProp,\n defaultOpen,\n disabled,\n onOpenChange,\n ...collapsibleProps\n } = props;\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: COLLAPSIBLE_NAME\n });\n return /* @__PURE__ */ jsx(\n CollapsibleProvider,\n {\n scope: __scopeCollapsible,\n disabled,\n contentId: useId(),\n open,\n onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(open),\n \"data-disabled\": disabled ? \"\" : void 0,\n ...collapsibleProps,\n ref: forwardedRef\n }\n )\n }\n );\n }, \"Collapsible\")\n);\nvar TRIGGER_NAME = \"CollapsibleTrigger\";\nvar CollapsibleTrigger = /* @__PURE__ */ React.forwardRef(\n // blank line to reduce diff noise\n /* @__PURE__ */ __name(function CollapsibleTrigger2(props, forwardedRef) {\n const { __scopeCollapsible, ...triggerProps } = props;\n const context = useCollapsibleContext(TRIGGER_NAME, __scopeCollapsible);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n \"aria-controls\": context.open ? context.contentId : void 0,\n \"aria-expanded\": context.open || false,\n \"data-state\": getState(context.open),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n disabled: context.disabled,\n ...triggerProps,\n ref: forwardedRef,\n onClick: composeEventHandlers(props.onClick, context.onOpenToggle)\n }\n );\n }, \"CollapsibleTrigger\")\n);\nvar CONTENT_NAME = \"CollapsibleContent\";\nvar CollapsibleContent = /* @__PURE__ */ React.forwardRef(\n // blank line to reduce diff noise\n /* @__PURE__ */ __name(function CollapsibleContent2(props, forwardedRef) {\n const { forceMount, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, props.__scopeCollapsible);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: ({ present }) => /* @__PURE__ */ jsx(CollapsibleContentImpl, { ...contentProps, ref: forwardedRef, present }) });\n }, \"CollapsibleContent\")\n);\nvar CollapsibleContentImpl = /* @__PURE__ */ React.forwardRef(/* @__PURE__ */ __name(function CollapsibleContentImpl2(props, forwardedRef) {\n const { __scopeCollapsible, present, children, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, __scopeCollapsible);\n const [isPresent, setIsPresent] = React.useState(present);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const heightRef = React.useRef(0);\n const height = heightRef.current;\n const widthRef = React.useRef(0);\n const width = widthRef.current;\n const isOpen = context.open || isPresent;\n const isMountAnimationPreventedRef = React.useRef(isOpen);\n const originalStylesRef = React.useRef(void 0);\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);\n return () => cancelAnimationFrame(rAF);\n }, []);\n useLayoutEffect(() => {\n const node = ref.current;\n if (node) {\n originalStylesRef.current = originalStylesRef.current || {\n transitionDuration: node.style.transitionDuration,\n animationName: node.style.animationName\n };\n node.style.transitionDuration = \"0s\";\n node.style.animationName = \"none\";\n const rect = node.getBoundingClientRect();\n heightRef.current = rect.height;\n widthRef.current = rect.width;\n if (!isMountAnimationPreventedRef.current) {\n node.style.transitionDuration = originalStylesRef.current.transitionDuration;\n node.style.animationName = originalStylesRef.current.animationName;\n }\n setIsPresent(present);\n }\n }, [context.open, present]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(context.open),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n id: context.contentId,\n hidden: !isOpen,\n ...contentProps,\n ref: composedRefs,\n style: {\n [`--radix-collapsible-content-height`]: height ? `${height}px` : void 0,\n [`--radix-collapsible-content-width`]: width ? `${width}px` : void 0,\n ...props.style\n },\n children: isOpen && children\n }\n );\n}, \"CollapsibleContentImpl\"));\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\n__name(getState, \"getState\");\nvar Root = Collapsible;\nvar Trigger = CollapsibleTrigger;\nvar Content = CollapsibleContent;\nexport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n Content,\n Root,\n Trigger,\n createCollapsibleScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\"\r\n\r\nconst Collapsible = CollapsiblePrimitive.Root\r\n\r\nconst CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger\r\n\r\nconst CollapsibleContent = CollapsiblePrimitive.CollapsibleContent\r\n\r\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent }\r\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'folder',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z',\n key: '1kt360',\n },\n ],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Folder\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/folder\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Folder = createLucideIcon(__iconData);\n\nexport default Folder;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'folder-open',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'm6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2',\n key: 'usdka0',\n },\n ],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name FolderOpen\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/folder-open\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst FolderOpen = createLucideIcon(__iconData);\n\nexport default FolderOpen;\n","import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { createContextScope } from '@radix-ui/react-context';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { useLayoutEffect } from '@radix-ui/react-use-layout-effect';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport { Presence } from '@radix-ui/react-presence';\nimport { useId } from '@radix-ui/react-id';\n\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * Collapsible\n * -----------------------------------------------------------------------------------------------*/\n\nconst COLLAPSIBLE_NAME = 'Collapsible';\n\ntype ScopedProps<P> = P & { __scopeCollapsible?: Scope };\nconst [createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME);\n\ntype CollapsibleContextValue = {\n contentId: string;\n disabled?: boolean;\n open: boolean;\n onOpenToggle(): void;\n};\n\nconst [CollapsibleProvider, useCollapsibleContext] =\n createCollapsibleContext<CollapsibleContextValue>(COLLAPSIBLE_NAME);\n\ntype CollapsibleElement = React.ComponentRef<typeof Primitive.div>;\ntype PrimitiveDivProps = React.ComponentPropsWithoutRef<typeof Primitive.div>;\ninterface CollapsibleProps extends PrimitiveDivProps {\n defaultOpen?: boolean;\n open?: boolean;\n disabled?: boolean;\n onOpenChange?(open: boolean): void;\n}\n\nconst Collapsible = /* @__PURE__ */ React.forwardRef<CollapsibleElement, CollapsibleProps>(\n function Collapsible(props: ScopedProps<CollapsibleProps>, forwardedRef) {\n const {\n __scopeCollapsible,\n open: openProp,\n defaultOpen,\n disabled,\n onOpenChange,\n ...collapsibleProps\n } = props;\n\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: COLLAPSIBLE_NAME,\n });\n\n return (\n <CollapsibleProvider\n scope={__scopeCollapsible}\n disabled={disabled}\n contentId={useId()}\n open={open}\n onOpenToggle={React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen])}\n >\n <Primitive.div\n data-state={getState(open)}\n data-disabled={disabled ? '' : undefined}\n {...collapsibleProps}\n ref={forwardedRef}\n />\n </CollapsibleProvider>\n );\n },\n);\n\n/* -------------------------------------------------------------------------------------------------\n * CollapsibleTrigger\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_NAME = 'CollapsibleTrigger';\n\ntype CollapsibleTriggerElement = React.ComponentRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = React.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface CollapsibleTriggerProps extends PrimitiveButtonProps {}\n\nconst CollapsibleTrigger = /* @__PURE__ */ React.forwardRef<\n CollapsibleTriggerElement,\n CollapsibleTriggerProps\n>(\n // blank line to reduce diff noise\n function CollapsibleTrigger(props: ScopedProps<CollapsibleTriggerProps>, forwardedRef) {\n const { __scopeCollapsible, ...triggerProps } = props;\n const context = useCollapsibleContext(TRIGGER_NAME, __scopeCollapsible);\n return (\n <Primitive.button\n type=\"button\"\n aria-controls={context.open ? context.contentId : undefined}\n aria-expanded={context.open || false}\n data-state={getState(context.open)}\n data-disabled={context.disabled ? '' : undefined}\n disabled={context.disabled}\n {...triggerProps}\n ref={forwardedRef}\n onClick={composeEventHandlers(props.onClick, context.onOpenToggle)}\n />\n );\n },\n);\n\n/* -------------------------------------------------------------------------------------------------\n * CollapsibleContent\n * -----------------------------------------------------------------------------------------------*/\n\nconst CONTENT_NAME = 'CollapsibleContent';\n\ntype CollapsibleContentElement = CollapsibleContentImplElement;\ninterface CollapsibleContentProps extends Omit<CollapsibleContentImplProps, 'present'> {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n}\n\nconst CollapsibleContent = /* @__PURE__ */ React.forwardRef<\n CollapsibleContentElement,\n CollapsibleContentProps\n>(\n // blank line to reduce diff noise\n function CollapsibleContent(props: ScopedProps<CollapsibleContentProps>, forwardedRef) {\n const { forceMount, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, props.__scopeCollapsible);\n return (\n <Presence present={forceMount || context.open}>\n {({ present }) => (\n <CollapsibleContentImpl {...contentProps} ref={forwardedRef} present={present} />\n )}\n </Presence>\n );\n },\n);\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype CollapsibleContentImplElement = React.ComponentRef<typeof Primitive.div>;\ninterface CollapsibleContentImplProps extends PrimitiveDivProps {\n present: boolean;\n}\n\nconst CollapsibleContentImpl = /* @__PURE__ */ React.forwardRef<\n CollapsibleContentImplElement,\n CollapsibleContentImplProps\n>(function CollapsibleContentImpl(props: ScopedProps<CollapsibleContentImplProps>, forwardedRef) {\n const { __scopeCollapsible, present, children, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, __scopeCollapsible);\n const [isPresent, setIsPresent] = React.useState(present);\n const ref = React.useRef<CollapsibleContentImplElement>(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const heightRef = React.useRef<number | undefined>(0);\n const height = heightRef.current;\n const widthRef = React.useRef<number | undefined>(0);\n const width = widthRef.current;\n // when opening we want it to immediately open to retrieve dimensions\n // when closing we delay `present` to retrieve dimensions before closing\n const isOpen = context.open || isPresent;\n const isMountAnimationPreventedRef = React.useRef(isOpen);\n const originalStylesRef = React.useRef<Record<string, string>>(undefined);\n\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => (isMountAnimationPreventedRef.current = false));\n return () => cancelAnimationFrame(rAF);\n }, []);\n\n useLayoutEffect(() => {\n const node = ref.current;\n if (node) {\n originalStylesRef.current = originalStylesRef.current || {\n transitionDuration: node.style.transitionDuration,\n animationName: node.style.animationName,\n };\n // block any animations/transitions so the element renders at its full dimensions\n node.style.transitionDuration = '0s';\n node.style.animationName = 'none';\n\n // get width and height from full dimensions\n const rect = node.getBoundingClientRect();\n heightRef.current = rect.height;\n widthRef.current = rect.width;\n\n // kick off any animations/transitions that were originally set up if it isn't the initial mount\n if (!isMountAnimationPreventedRef.current) {\n node.style.transitionDuration = originalStylesRef.current.transitionDuration!;\n node.style.animationName = originalStylesRef.current.animationName!;\n }\n\n setIsPresent(present);\n }\n /**\n * depends on `context.open` because it will change to `false`\n * when a close is triggered but `present` will be `false` on\n * animation end (so when close finishes). This allows us to\n * retrieve the dimensions *before* closing.\n */\n }, [context.open, present]);\n\n return (\n <Primitive.div\n data-state={getState(context.open)}\n data-disabled={context.disabled ? '' : undefined}\n id={context.contentId}\n hidden={!isOpen}\n {...contentProps}\n ref={composedRefs}\n style={{\n [`--radix-collapsible-content-height` as any]: height ? `${height}px` : undefined,\n [`--radix-collapsible-content-width` as any]: width ? `${width}px` : undefined,\n ...props.style,\n }}\n >\n {isOpen && children}\n </Primitive.div>\n );\n});\n\n/* -----------------------------------------------------------------------------------------------*/\n\nfunction getState(open?: boolean) {\n return open ? 'open' : 'closed';\n}\n\nconst Root = Collapsible;\nconst Trigger = CollapsibleTrigger;\nconst Content = CollapsibleContent;\n\nexport {\n createCollapsibleScope,\n //\n Collapsible,\n CollapsibleTrigger,\n CollapsibleContent,\n //\n Root,\n Trigger,\n Content,\n};\nexport type { CollapsibleProps, CollapsibleTriggerProps, CollapsibleContentProps };\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'pencil',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z',\n key: '1a8usu',\n },\n ],\n ['path', { d: 'm15 5 4 4', key: '1mk7zo' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Pencil\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/pencil\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Pencil = createLucideIcon(__iconData);\n\nexport default Pencil;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'plus',\n size: 24,\n node: [\n ['path', { d: 'M5 12h14', key: '1ays0h' }],\n ['path', { d: 'M12 5v14', key: 's699le' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Plus\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/plus\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Plus = createLucideIcon(__iconData);\n\nexport default Plus;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'list',\n size: 24,\n node: [\n ['path', { d: 'M3 5h.01', key: '18ugdj' }],\n ['path', { d: 'M3 12h.01', key: 'nlz23k' }],\n ['path', { d: 'M3 19h.01', key: 'noohij' }],\n ['path', { d: 'M8 5h13', key: '1pao27' }],\n ['path', { d: 'M8 12h13', key: '1za7za' }],\n ['path', { d: 'M8 19h13', key: 'm83p4d' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name List\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/list\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst List = createLucideIcon(__iconData);\n\nexport default List;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'users',\n size: 24,\n node: [\n ['path', { d: 'M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2', key: '1yyitq' }],\n ['path', { d: 'M16 3.128a4 4 0 0 1 0 7.744', key: '16gr8j' }],\n ['path', { d: 'M22 21v-2a4 4 0 0 0-3-3.87', key: 'kshegd' }],\n ['circle', { cx: '9', cy: '7', r: '4', key: 'nufk8' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Users\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/users\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Users = createLucideIcon(__iconData);\n\nexport default Users;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'code-xml',\n size: 24,\n node: [\n ['path', { d: 'm18 16 4-4-4-4', key: '1inbqp' }],\n ['path', { d: 'm6 8-4 4 4 4', key: '15zrgr' }],\n ['path', { d: 'm14.5 4-5 16', key: 'e7oirm' }],\n ],\n aliases: ['code-2'],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name CodeXml\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/code-xml\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst CodeXml = createLucideIcon(__iconData);\n\nexport default CodeXml;\n"],"names":["chalky","coral","cyan","invalid","ivory","stone","malibu","sage","whiskey","violet","darkBackground","highlightBackground","background","tooltipBackground","selection","cursor","color","oneDarkTheme","theme","backgroundColor","caretColor","borderLeftColor","borderBottom","borderTop","outline","border","borderTopColor","borderBottomColor","dark","oneDarkHighlightStyle","define","tag","keyword","name","deleted","character","propertyName","macroName","function","variableName","labelName","constant","standard","definition","separator","typeName","className","number","changed","annotation","modifier","self","namespace","operator","operatorKeyword","url","escape","regexp","link","special","string","meta","comment","strong","fontWeight","emphasis","fontStyle","strikethrough","textDecoration","heading","atom","bool","processingInstruction","inserted","oneDark"],"mappings":"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,CAAjB,AAAiB,CAAjB,AAAiB,CAAA,AAAjB,CAAA,AAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,mKErBuB,CAAA,CAAA,CAAA,CAAA,AAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,0CAC7B,IAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,6CACX,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,YAC9C,GAAA,qBAA+B,OAAA,CAAS,CAAA,SAOF,UAazC,CAAA,ACAR,CAAA,OAAA,EAAA,4GAvB6C,CDAjC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,8DCEqB,CAAA,AFAH,ACAlB,CAAA,ACAqB,AFAH,CCAlB,ACAqB,AFAH,CEAG,ADArB,ADAkB,CCAlB,ACAqB,sDAqBN,CDAF,ACAE,CAAA,ADAF,CAAA,ACAE,CAAA,ADAF,CCAE,ADAF,CCAE,ADAF,CCAE,ADAF,CCAE,ADAQ,CCAR,ADAQ,CCAE,CAAA,sBF3B9B,EAA6B,CACxC,CEAA,ADAA,ADAA,CEAA,ADAA,ADAA,CCAA,ACAA,AFAA,CCAA,ADAA,AEAA,CFAM,CCAA,ACAA,AFAA,CADK,AEAA,ADCL,ADAA,AEAA,ADDK,CAAA,ADAA,AACL,ACAA,ACAA,AADK,CDCL,ACAA,AFAA,AEDK,AFAA,ACAA,CACL,ACAA,AFAA,CEAA,ADAA,ADAA,CCAA,ACAA,CAAA,CAAA,CAAA,EFCA,CEAA,ADAA,ADAA,CCAA,ADAA,AEAA,CFCN,IEAA,ADAA,ADAA,CCAA,ACAA,AFAA,AAAM,EACH,CEAA,ADAA,ADAA,CCAA,ACAA,AFAA,CAAA,AEAA,ADAA,CDAA,AEAA,ADAA,CCAA,ADAA,ADAA,CEAA,ADAA,ADAA,CCAA,ACAA,AFAA,AAAQ,CAAE,AEAF,ADAA,ADAA,EAAK,CCAA,ACAA,AFAA,CEAA,ADAA,ADAA,CEAA,ADAA,ADAA,CAAA,AEAA,ADAA,CDAA,AEAA,ADAA,CCAA,ADAA,ADAA,CAAA,AEAA,ADAA,CAAA,ADAA,AEAA,CAAA,ADAA,ADAA,CCAA,ADAA,AEAA,CAAA,AFAA,ACAA,ADAY,CEAZ,ADAA,ADAY,CAAA,AEAZ,ADAA,CCAA,ADAA,ADAY,CEAZ,AFAY,ACAZ,ADAiB,UAAU,CCA3B,ACAuB,CDAvB,ACAuB,CDAvB,MDCL,CAAA,AAAE,AEAF,ADAA,EDAK,CEAA,ADAA,ADAA,CEAA,ADAA,ADAA,CEAA,ADAA,ADAA,CCAA,ACAA,AFAA,CEAA,AFAA,ACAA,CAAA,ACAA,AFAA,CCAA,ACAA,AFAA,CEAA,ADAA,ADAA,CCAA,ADAA,AEAA,CDAA,ADAA,AEAA,CDAA,ADAA,AEAA,CAAA,AFAa,ACAb,ADAA,CAAa,AEAb,ADAA,CCAA,ADAA,ADAa,EAAK,CCAlB,ACAgB,AFAE,CCAlB,ACAgB,AFAE,QAAU,CAC1C,CAAC,CEAA,AFAA,ACAA,CCAA,ADAA,ADAA,CEAA,ADAA,ADAA,CCAA,ADAA,AEAA,CDAA,ACAA,AFAA,CCAA,ACAA,AFAA,CEAA,AFAQ,ACAR,ADAA,CCAQ,ADAA,AEAA,AFAE,EAAG,CEAA,ADAA,ADAA,CCAA,ACAA,AFAA,CCAA,ACAA,AFAA,CCAA,ADAA,AEAA,CAAA,AFAA,ACAA,CDAA,ACAA,ACAA,CDAA,ACAA,AFAA,CCAA,ACAA,AFAA,CCAA,ACAA,AFAA,CCAA,ACAA,AFAA,CAAA,ACAA,ACAA,CAAA,AFAA,AAAa,ACAb,CCAA,AFAa,ACAb,CDAa,AEAb,ADAA,EDAkB,CEAF,ADAhB,ADAkB,CAAA,AEAF,ADAhB,QDA4B,EACzC,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CAAA,ACAA,CDAA,ACAA,CAAA,ADAA,AAAQ,CAAA,AAAE,ACAV,EDAa,CCAD,ADAC,CCAD,ADAC,QAAW,IAAK,UAAU,CCAD,ADCvC,CCDuC,ADCtC,CEAH,AFAG,CEAH,AFAG,CEAH,AFAG,CEAH,AFAG,CEAH,AFAG,EAAQ,CEAD,AFAC,AAAE,CEAH,CAAA,AFAM,CAAA,AEAN,CFAM,AEAE,SFAU,CAAA,CAAA,CAAA,CAAA,AAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CACzC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,AAAQ,CAAA,AAAE,EAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,AAAY,CAAA,CAAA,CAAA,CAAA,AAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,GAOD,CAAA,CAAA,AAAW,CAAX,AAAW,CAAX,AAAW,CAAX,AAAW,CAAX,AAAW,CAAX,AAa5C,CAb4C,AAa5C,CAAA,AAb4C,CAAA,AAa5C,CAAA,AAAM,CAAN,AAAM,CAAA,CAAA,CAAA,CAAA,AAAO,CAAA,AAAP,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA","ignoreList":[0,1,2,3,4,6,7,8,9,10,11,12,13]}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[578520,a=>{"use strict";var b=a.i(662145);let c={task_updated:"🔨",decision_logged:"📝",memory_updated:"🧠",doc_read:"📄",session_start:"🤖",roadmap_updated:"🗺️"};function d(a){let b=(Date.now()-new Date(a).getTime())/1e3;return b<60?"just now":b<3600?`${Math.floor(b/60)}m ago`:b<86400?`${Math.floor(b/3600)}h ago`:`${Math.floor(b/86400)}d ago`}a.s(["ActivityEventRow",0,function({event:a}){return(0,b.jsxs)("div",{className:"flex gap-4 pb-4 animate-fade-in",children:[(0,b.jsx)("div",{className:"relative shrink-0 w-8 h-8 rounded-full bg-surface2 border border-border flex items-center justify-center text-sm z-10",children:c[a.type]||"•"}),(0,b.jsxs)("div",{className:"flex-1 pt-1 min-w-0",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 mb-0.5",children:[(0,b.jsx)("span",{className:"text-sm font-medium text-txt",children:a.title}),"ai"===a.actor&&(0,b.jsx)("span",{className:"text-xs px-1.5 py-0.5 rounded-sm bg-accent/10 text-accent border border-accent/20 font-mono",children:"AI"})]}),a.detail&&(0,b.jsx)("p",{className:"text-xs text-muted truncate",children:a.detail}),(0,b.jsx)("p",{className:"text-xs text-muted/60 mt-0.5 font-mono",children:d(a.timestamp)})]})]})},"timeAgo",0,d])},749223,a=>{"use strict";var b=a.i(662145),c=a.i(174897),d=a.i(368114),e=a.i(786304),f=a.i(699570);let g={todo:"text-muted border-border2","in-progress":"text-amber border-amber/30 bg-amber/5",blocked:"text-danger border-danger/30 bg-danger/5",done:"text-teal border-teal/30 bg-teal/5",cancelled:"text-muted border-border line-through"},h={todo:"border-border2 text-muted","in-progress":"border-amber/40 text-amber",blocked:"border-danger/40 text-danger",done:"border-teal/40 text-teal",cancelled:"border-border text-muted"},i={todo:"📋","in-progress":"🔨",blocked:"🚫",done:"✅",cancelled:"❌"},j={todo:["in-progress"],"in-progress":["done","blocked","todo"],blocked:["in-progress","cancelled"],done:["todo"],cancelled:["todo"]};a.s(["STATUS_ICONS",0,i,"TaskCard",0,function({task:a,onMove:k,onOpen:l}){let[m,n]=(0,c.useState)(!1),o=j[a.status]||[];return(0,b.jsxs)("div",{draggable:!0,onDragStart:b=>{b.dataTransfer.setData("taskId",a.id),b.dataTransfer.effectAllowed="move",n(!0)},onDragEnd:()=>n(!1),style:{viewTransitionName:`task-${a.file.replace(/[^a-zA-Z0-9_-]/g,"_")}`},className:(0,d.cn)("group relative bg-surface border rounded-lg p-3 text-sm transition-[border-color,opacity] hover:border-border2",g[a.status]||"border-border",m&&"opacity-50 cursor-grabbing"),children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-1.5",children:[(0,b.jsx)("span",{className:"text-xs font-mono text-muted",children:a.id}),(0,b.jsx)(e.Badge,{variant:"outline",className:(0,d.cn)("text-[10px] h-4 px-1.5 font-normal",h[a.status]),children:"in-progress"===a.status?"active":a.status})]}),(0,b.jsx)("p",{className:"font-medium text-txt text-sm leading-snug mb-2",children:a.title}),a.phase&&(0,b.jsx)("p",{className:"text-xs text-muted mb-2",children:a.phase}),(0,b.jsxs)("div",{className:"flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity",children:[(0,b.jsx)(f.Button,{variant:"ghost",size:"sm",className:"h-6 text-xs px-2",onClick:l,children:"open"}),o.map(c=>(0,b.jsxs)(f.Button,{variant:"ghost",size:"sm",className:"h-6 text-xs px-2",onClick:()=>k(a.id,c),children:[i[c]," ","in-progress"===c?"start":c]},c))]})]})}])},536236,a=>{"use strict";var b=a.i(662145),c=a.i(174897),d=a.i(368114),e=a.i(757061),f=a.i(149350),g=a.i(749223),h=a.i(913975),i=a.i(544394),j=a.i(578520);function k({taskId:a,onNavigate:d}){let{rootParam:e}=(0,i.useApp)(),f=(0,h.useRouter)(),[g,l]=(0,c.useState)(null);return(0,c.useEffect)(()=>{let b=e?`${e}&`:"?";fetch(`/api/sessions${b}taskId=${encodeURIComponent(a)}`).then(a=>a.json()).then(a=>l(Array.isArray(a)?a:[])).catch(()=>l([]))},[e,a]),(0,b.jsxs)("div",{className:"px-5 py-3 border-b border-border shrink-0",children:[(0,b.jsx)("p",{className:"mb-2 text-xs font-mono uppercase tracking-wide text-muted",children:"Sessions"}),null===g?null:0===g.length?(0,b.jsx)("p",{className:"text-xs text-muted",children:"No recorded sessions"}):(0,b.jsx)("div",{className:"flex max-h-40 flex-col gap-1 overflow-y-auto",children:g.map(a=>(0,b.jsxs)("button",{onClick:()=>{d(),f.push(`/activity?session=${encodeURIComponent(a.id)}`)},className:"flex items-center gap-2 rounded-sm px-2 py-1 text-left text-xs hover:bg-surface2",children:[(0,b.jsx)("span",{children:"ai"===a.actor?"🤖":"👤"}),(0,b.jsx)("span",{className:"shrink-0 font-mono text-muted",children:(0,j.timeAgo)(a.start)}),(0,b.jsx)("span",{className:"truncate text-txt",children:a.headline})]},a.id))})]})}let l={todo:["in-progress"],"in-progress":["done","blocked","todo"],blocked:["in-progress","cancelled"],done:["todo"],cancelled:["todo"]},m={"in-progress":"start",done:"done",blocked:"blocked",todo:"backlog",cancelled:"cancel"},n={todo:"text-muted border-border2","in-progress":"text-amber border-amber/30 bg-amber/5",blocked:"text-danger border-danger/30 bg-danger/5",done:"text-teal border-teal/30 bg-teal/5",cancelled:"text-muted border-border"};a.s(["TaskDetailPanel",0,function({task:a,onClose:h,onMove:i}){let[j,o]=(0,c.useState)(a);a&&a!==j&&o(a);let p=j&&l[j.status]||[];return(0,b.jsx)(e.Sheet,{open:!!a,onOpenChange:a=>{a||h()},children:(0,b.jsx)(e.SheetContent,{side:"right","aria-describedby":void 0,className:"p-0 gap-0 sm:max-w-[420px] border-border flex flex-col",children:j&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"flex flex-col gap-1 min-w-0 pl-5 pr-12 py-4 border-b border-border shrink-0",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"font-mono text-xs text-muted",children:j.id}),(0,b.jsxs)("span",{className:(0,d.cn)("text-xs px-1.5 py-0.5 rounded-sm border font-mono",n[j.status]),children:[g.STATUS_ICONS[j.status]," ",j.status]})]}),(0,b.jsx)(e.SheetTitle,{className:"font-medium text-txt text-sm leading-snug",children:j.title})]}),p.length>0&&(0,b.jsx)("div",{className:"flex items-center gap-2 px-5 py-3 border-b border-border shrink-0",children:p.map(a=>(0,b.jsxs)("button",{onClick:()=>{i(j.id,a),h()},className:"text-xs px-2.5 py-1 rounded-sm bg-surface2 border border-border text-muted hover:text-txt hover:border-border2 transition-colors",children:[g.STATUS_ICONS[a]," ",m[a]||a]},a))}),(0,b.jsx)(k,{taskId:j.id,onNavigate:h},j.id),(0,b.jsx)("div",{className:"flex-1 overflow-y-auto px-5 py-4",children:j.raw?(0,b.jsx)(f.MarkdownRenderer,{content:j.raw}):(0,b.jsx)("p",{className:"text-sm text-muted",children:"No content available."})})]})})})}],536236)},21215,a=>{"use strict";var b=a.i(662145),c=a.i(368114);a.s(["EmptyState",0,function({icon:a,message:d,subMessage:e,bordered:f}){return(0,b.jsxs)("div",{className:(0,c.cn)("text-center py-16 text-muted text-sm",f&&"border border-dashed border-border rounded-xl"),children:[(0,b.jsx)("p",{className:"text-3xl mb-3",children:a}),(0,b.jsx)("p",{children:d}),e&&(0,b.jsx)("p",{className:"text-xs mt-1",children:e})]})}])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=src_components_008q3v8._.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/activity/ActivityEventRow.tsx","../../../../src/components/board/TaskCard.tsx","../../../../src/components/board/TaskDetailPanel.tsx","../../../../src/components/board/TaskSessions.tsx","../../../../src/components/shared/EmptyState.tsx"],"sourcesContent":["import type { ActivityEvent } from \"@/types\"\r\n\r\nconst ACTIVITY_ICONS: Record<string, string> = {\r\n task_updated: \"🔨\",\r\n decision_logged: \"📝\",\r\n memory_updated: \"🧠\",\r\n doc_read: \"📄\",\r\n session_start: \"🤖\",\n roadmap_updated: \"🗺️\",\r\n}\r\n\r\nexport function timeAgo(ts: string): string {\r\n const d = (Date.now() - new Date(ts).getTime()) / 1000\r\n if (d < 60) return \"just now\"\r\n if (d < 3600) return `${Math.floor(d / 60)}m ago`\r\n if (d < 86400) return `${Math.floor(d / 3600)}h ago`\r\n return `${Math.floor(d / 86400)}d ago`\r\n}\r\n\r\ninterface ActivityEventRowProps {\r\n event: ActivityEvent\r\n}\r\n\r\nexport function ActivityEventRow({ event }: ActivityEventRowProps) {\r\n return (\r\n <div className=\"flex gap-4 pb-4 animate-fade-in\">\r\n <div className=\"relative shrink-0 w-8 h-8 rounded-full bg-surface2 border border-border flex items-center justify-center text-sm z-10\">\r\n {ACTIVITY_ICONS[event.type] || \"•\"}\r\n </div>\r\n <div className=\"flex-1 pt-1 min-w-0\">\r\n <div className=\"flex items-center gap-2 mb-0.5\">\r\n <span className=\"text-sm font-medium text-txt\">{event.title}</span>\r\n {event.actor === \"ai\" && (\r\n <span className=\"text-xs px-1.5 py-0.5 rounded-sm bg-accent/10 text-accent border border-accent/20 font-mono\">\r\n AI\r\n </span>\r\n )}\r\n </div>\r\n {event.detail && (\r\n <p className=\"text-xs text-muted truncate\">{event.detail}</p>\r\n )}\r\n <p className=\"text-xs text-muted/60 mt-0.5 font-mono\">{timeAgo(event.timestamp)}</p>\r\n </div>\r\n </div>\r\n )\r\n}\r\n","\"use client\"\r\n\r\nimport { useState } from \"react\"\r\nimport { cn } from \"@/lib/utils\"\r\nimport { Badge } from \"@/components/ui/badge\"\r\nimport { Button } from \"@/components/ui/button\"\r\nimport type { Task } from \"@/types\"\r\n\r\nconst STATUS_COLORS: Record<string, string> = {\r\n todo: \"text-muted border-border2\",\r\n \"in-progress\": \"text-amber border-amber/30 bg-amber/5\",\r\n blocked: \"text-danger border-danger/30 bg-danger/5\",\r\n done: \"text-teal border-teal/30 bg-teal/5\",\r\n cancelled: \"text-muted border-border line-through\",\r\n}\r\n\r\nexport const STATUS_BADGE_COLORS: Record<string, string> = {\r\n todo: \"border-border2 text-muted\",\r\n \"in-progress\": \"border-amber/40 text-amber\",\r\n blocked: \"border-danger/40 text-danger\",\r\n done: \"border-teal/40 text-teal\",\r\n cancelled: \"border-border text-muted\",\r\n}\r\n\r\nexport const STATUS_ICONS: Record<string, string> = {\r\n todo: \"📋\",\r\n \"in-progress\": \"🔨\",\r\n blocked: \"🚫\",\r\n done: \"✅\",\r\n cancelled: \"❌\",\r\n}\r\n\r\nconst NEXT_STATUS: Record<string, string[]> = {\r\n todo: [\"in-progress\"],\r\n \"in-progress\": [\"done\", \"blocked\", \"todo\"],\r\n blocked: [\"in-progress\", \"cancelled\"],\r\n done: [\"todo\"],\r\n cancelled: [\"todo\"],\r\n}\r\n\r\ninterface TaskCardProps {\r\n task: Task\r\n onMove: (id: string, status: string) => void\r\n onOpen: () => void\r\n}\r\n\r\nexport function TaskCard({ task, onMove, onOpen }: TaskCardProps) {\r\n const [isDragging, setIsDragging] = useState(false)\r\n const nextStatuses = NEXT_STATUS[task.status] || []\r\n\r\n return (\r\n <div\r\n draggable\r\n onDragStart={(e) => {\r\n e.dataTransfer.setData(\"taskId\", task.id)\r\n e.dataTransfer.effectAllowed = \"move\"\r\n setIsDragging(true)\r\n }}\r\n onDragEnd={() => setIsDragging(false)}\r\n style={{ viewTransitionName: `task-${task.file.replace(/[^a-zA-Z0-9_-]/g, \"_\")}` }}\r\n className={cn(\r\n \"group relative bg-surface border rounded-lg p-3 text-sm transition-[border-color,opacity] hover:border-border2\",\r\n STATUS_COLORS[task.status] || \"border-border\",\r\n isDragging && \"opacity-50 cursor-grabbing\",\r\n )}\r\n >\r\n {/* ID + status badge */}\r\n <div className=\"flex items-center justify-between mb-1.5\">\r\n <span className=\"text-xs font-mono text-muted\">{task.id}</span>\r\n <Badge\r\n variant=\"outline\"\r\n className={cn(\"text-[10px] h-4 px-1.5 font-normal\", STATUS_BADGE_COLORS[task.status])}\r\n >\r\n {task.status === \"in-progress\" ? \"active\" : task.status}\r\n </Badge>\r\n </div>\r\n\r\n {/* Title */}\r\n <p className=\"font-medium text-txt text-sm leading-snug mb-2\">{task.title}</p>\r\n\r\n {/* Phase */}\r\n {task.phase && <p className=\"text-xs text-muted mb-2\">{task.phase}</p>}\r\n\r\n {/* Actions */}\r\n <div className=\"flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity\">\r\n <Button\r\n variant=\"ghost\"\r\n size=\"sm\"\r\n className=\"h-6 text-xs px-2\"\r\n onClick={onOpen}\r\n >\r\n open\r\n </Button>\r\n {nextStatuses.map((s) => (\r\n <Button\r\n key={s}\r\n variant=\"ghost\"\r\n size=\"sm\"\r\n className=\"h-6 text-xs px-2\"\r\n onClick={() => onMove(task.id, s)}\r\n >\r\n {STATUS_ICONS[s]} {s === \"in-progress\" ? \"start\" : s}\r\n </Button>\r\n ))}\r\n </div>\r\n </div>\r\n )\r\n}\r\n","\"use client\"\r\n\r\nimport { useState } from \"react\"\r\nimport { cn } from \"@/lib/utils\"\r\nimport { Sheet, SheetContent, SheetTitle } from \"@/components/ui/sheet\"\r\nimport { MarkdownRenderer } from \"@/components/docs/MarkdownRenderer\"\r\nimport type { Task } from \"@/types\"\r\nimport { STATUS_ICONS } from \"./TaskCard\"\r\nimport { TaskSessions } from \"./TaskSessions\"\r\n\r\nconst NEXT_STATUS: Record<string, string[]> = {\r\n todo: [\"in-progress\"],\r\n \"in-progress\": [\"done\", \"blocked\", \"todo\"],\r\n blocked: [\"in-progress\", \"cancelled\"],\r\n done: [\"todo\"],\r\n cancelled: [\"todo\"],\r\n}\r\n\r\nconst STATUS_LABELS: Record<string, string> = {\r\n \"in-progress\": \"start\",\r\n done: \"done\",\r\n blocked: \"blocked\",\r\n todo: \"backlog\",\r\n cancelled: \"cancel\",\r\n}\r\n\r\nconst STATUS_COLORS: Record<string, string> = {\r\n todo: \"text-muted border-border2\",\r\n \"in-progress\": \"text-amber border-amber/30 bg-amber/5\",\r\n blocked: \"text-danger border-danger/30 bg-danger/5\",\r\n done: \"text-teal border-teal/30 bg-teal/5\",\r\n cancelled: \"text-muted border-border\",\r\n}\r\n\r\ninterface TaskDetailPanelProps {\r\n task: Task | null\r\n onClose: () => void\r\n onMove: (id: string, status: string) => void\r\n}\r\n\r\nexport function TaskDetailPanel({ task: openTask, onClose, onMove }: TaskDetailPanelProps) {\r\n // Keep the last task rendered while the sheet slides out\r\n const [task, setTask] = useState(openTask)\r\n if (openTask && openTask !== task) setTask(openTask)\r\n\r\n const nextStatuses = task ? NEXT_STATUS[task.status] || [] : []\r\n\r\n return (\r\n <Sheet open={!!openTask} onOpenChange={(open) => { if (!open) onClose() }}>\r\n <SheetContent side=\"right\" aria-describedby={undefined} className=\"p-0 gap-0 sm:max-w-[420px] border-border flex flex-col\">\r\n {task && (\r\n <>\r\n {/* Header */}\r\n <div className=\"flex flex-col gap-1 min-w-0 pl-5 pr-12 py-4 border-b border-border shrink-0\">\r\n <div className=\"flex items-center gap-2\">\r\n <span className=\"font-mono text-xs text-muted\">{task.id}</span>\r\n <span className={cn(\"text-xs px-1.5 py-0.5 rounded-sm border font-mono\", STATUS_COLORS[task.status])}>\r\n {STATUS_ICONS[task.status]} {task.status}\r\n </span>\r\n </div>\r\n <SheetTitle className=\"font-medium text-txt text-sm leading-snug\">{task.title}</SheetTitle>\r\n </div>\r\n\r\n {/* Quick actions */}\r\n {nextStatuses.length > 0 && (\r\n <div className=\"flex items-center gap-2 px-5 py-3 border-b border-border shrink-0\">\r\n {nextStatuses.map((s) => (\r\n <button\r\n key={s}\r\n onClick={() => { onMove(task.id, s); onClose() }}\r\n className=\"text-xs px-2.5 py-1 rounded-sm bg-surface2 border border-border text-muted hover:text-txt hover:border-border2 transition-colors\"\r\n >\r\n {STATUS_ICONS[s]} {STATUS_LABELS[s] || s}\r\n </button>\r\n ))}\r\n </div>\r\n )}\r\n\r\n <TaskSessions key={task.id} taskId={task.id} onNavigate={onClose} />\r\n\r\n {/* Content */}\r\n <div className=\"flex-1 overflow-y-auto px-5 py-4\">\r\n {task.raw ? (\r\n <MarkdownRenderer content={task.raw} />\r\n ) : (\r\n <p className=\"text-sm text-muted\">No content available.</p>\r\n )}\r\n </div>\r\n </>\r\n )}\r\n </SheetContent>\r\n </Sheet>\r\n )\r\n}\r\n","\"use client\"\n\nimport { useEffect, useState } from \"react\"\nimport { useRouter } from \"next/navigation\"\nimport { useApp } from \"@/context/AppContext\"\nimport { timeAgo } from \"@/components/activity/ActivityEventRow\"\nimport type { Session } from \"@/types\"\n\n// Sessions that moved this task; mount with key={taskId} so state resets per task.\nexport function TaskSessions({ taskId, onNavigate }: { taskId: string; onNavigate: () => void }) {\n const { rootParam } = useApp()\n const router = useRouter()\n const [sessions, setSessions] = useState<Session[] | null>(null)\n\n useEffect(() => {\n const qs = rootParam ? `${rootParam}&` : \"?\"\n fetch(`/api/sessions${qs}taskId=${encodeURIComponent(taskId)}`)\n .then(r => r.json())\n .then(data => setSessions(Array.isArray(data) ? data : []))\n .catch(() => setSessions([]))\n }, [rootParam, taskId])\n\n return (\n <div className=\"px-5 py-3 border-b border-border shrink-0\">\n <p className=\"mb-2 text-xs font-mono uppercase tracking-wide text-muted\">Sessions</p>\n {sessions === null ? null : sessions.length === 0 ? (\n <p className=\"text-xs text-muted\">No recorded sessions</p>\n ) : (\n <div className=\"flex max-h-40 flex-col gap-1 overflow-y-auto\">\n {sessions.map(s => (\n <button\n key={s.id}\n onClick={() => { onNavigate(); router.push(`/activity?session=${encodeURIComponent(s.id)}`) }}\n className=\"flex items-center gap-2 rounded-sm px-2 py-1 text-left text-xs hover:bg-surface2\"\n >\n <span>{s.actor === \"ai\" ? \"🤖\" : \"👤\"}</span>\n <span className=\"shrink-0 font-mono text-muted\">{timeAgo(s.start)}</span>\n <span className=\"truncate text-txt\">{s.headline}</span>\n </button>\n ))}\n </div>\n )}\n </div>\n )\n}\n","import { cn } from \"@/lib/utils\"\r\n\r\ninterface EmptyStateProps {\r\n icon: string\r\n message: string\r\n subMessage?: string\r\n bordered?: boolean\r\n}\r\n\r\nexport function EmptyState({ icon, message, subMessage, bordered }: EmptyStateProps) {\r\n return (\r\n <div\r\n className={cn(\r\n \"text-center py-16 text-muted text-sm\",\r\n bordered && \"border border-dashed border-border rounded-xl\",\r\n )}\r\n >\r\n <p className=\"text-3xl mb-3\">{icon}</p>\r\n <p>{message}</p>\r\n {subMessage && <p className=\"text-xs mt-1\">{subMessage}</p>}\r\n </div>\r\n )\r\n}\r\n"],"names":["ACTIVITY_ICONS","task_updated","decision_logged","memory_updated","doc_read","session_start","roadmap_updated","timeAgo","ts","d","Date","now","getTime","Math","floor","ActivityEventRow","event","className","type","title","actor","detail","timestamp","STATUS_COLORS","todo","blocked","done","cancelled","STATUS_BADGE_COLORS","STATUS_ICONS","NEXT_STATUS","TaskCard","task","onMove","onOpen","isDragging","setIsDragging","nextStatuses","status","draggable","onDragStart","e","dataTransfer","setData","id","effectAllowed","onDragEnd","style","viewTransitionName","file","replace","variant","phase","size","onClick","map","s","TaskSessions","taskId","onNavigate","rootParam","router","sessions","setSessions","qs","fetch","encodeURIComponent","then","r","json","data","Array","isArray","catch","length","push","start","headline","EmptyState","icon","message","subMessage","bordered"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,479432,e=>{"use strict";var t=e.i(83790);let a={name:"bot",size:24,node:[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]};a.node;let s=(0,t.default)(a);e.s(["Bot",0,s],479432)},240595,e=>{"use strict";var t=e.i(83790);let a={name:"loader-circle",size:24,node:[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],aliases:["loader-2"]};a.node;let s=(0,t.default)(a);e.s(["Loader2",0,s],240595)},885600,e=>{"use strict";var t=e.i(83790);let a={name:"sparkles",size:24,node:[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]],aliases:["stars"]};a.node;let s=(0,t.default)(a);e.s(["Sparkles",0,s],885600)},496385,e=>{"use strict";var t=e.i(83790);let a={name:"triangle-alert",size:24,node:[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],aliases:["alert-triangle"]};a.node;let s=(0,t.default)(a);e.s(["AlertTriangle",0,s],496385)},172856,798103,394512,e=>{"use strict";var t=e.i(83790);let a={name:"users",size:24,node:[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]};a.node;let s=(0,t.default)(a);e.s(["Users",0,s],172856);let r={name:"code-xml",size:24,node:[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]],aliases:["code-2"]};r.node;let l=(0,t.default)(r);e.s(["Code2",0,l],798103);let i={name:"list",size:24,node:[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]]};i.node;let n=(0,t.default)(i);e.s(["List",0,n],394512)},294895,e=>{"use strict";var t=e.i(72345),a=e.i(180338),s=e.i(763371),r=e.i(83790);let l={name:"chevron-left",size:24,node:[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]};l.node;let i=(0,r.default)(l);var n=e.i(675964),c=e.i(885600),o=e.i(837001),d=e.i(240595),m=e.i(975157),x=e.i(479432),h=e.i(406952);let p={name:"building-complex",size:24,node:[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]],aliases:["building-2"]};p.node;let u=(0,r.default)(p),b={name:"server",size:24,node:[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]};b.node;let g=(0,r.default)(b);var f=e.i(732460),y=e.i(496385);let v={name:"calendar",size:24,node:[["path",{d:"M8 2v3",key:"1ioesn"}],["path",{d:"M16 2v3",key:"otl347"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}],["path",{d:"M3 9h18",key:"1pudct"}]]};v.node;let j=(0,r.default)(v);var k=e.i(172856);let N={name:"git-branch",size:24,node:[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]};N.node;let w=(0,r.default)(N),C={name:"shield",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]};C.node;let S=(0,r.default)(C),T={name:"database",size:24,node:[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]};T.node;let M=(0,r.default)(T);var P=e.i(798103);let A={name:"workflow",size:24,node:[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]]};A.node;let z=(0,r.default)(A);var I=e.i(394512),L=e.i(649021);let R=[{id:"nextjs-production",name:"Next.js Production",description:"Complete setup for a production Next.js application with CI/CD, Docker, and code quality tools",projectTypes:["web-app"],templateIds:["claude-md","architecture-overview","contributing","security","pr-template","changelog","testing","onboarding","dockerfile","docker-compose","dockerignore","env-example","ci-workflow","cd-workflow","dependabot-config","eslintrc","prettierrc","tsconfig-strict","vscode-settings","vscode-extensions"]},{id:"api-backend",name:"API Backend",description:"Production API service with OpenAPI spec, Docker, monitoring, and runbook",projectTypes:["api-backend"],templateIds:["claude-md","architecture-overview","api-reference","openapi","runbook","contributing","security","pr-template","changelog","testing","dockerfile","docker-compose","dockerignore","env-example","ci-workflow","cd-workflow","health-check-doc","slo-doc"]},{id:"library-sdk",name:"Library / SDK",description:"Open-source library with strict TypeScript, changelog, and release automation",projectTypes:["library"],templateIds:["claude-md","contributing","security","pr-template","changelog","testing","tsconfig-strict","eslintrc","prettierrc","editorconfig","commitlint","dependabot-config","release-workflow","codeowners"]},{id:"cli-tool",name:"CLI Tool",description:"Command-line tool with Makefile automation and release workflow",projectTypes:["cli-tool"],templateIds:["claude-md","contributing","security","pr-template","changelog","testing","makefile","env-example","ci-workflow","release-workflow","commitlint","editorconfig","eslintrc"]},{id:"monorepo",name:"Monorepo",description:"Multi-package monorepo with code ownership, commit conventions, and architecture docs",projectTypes:["monorepo"],templateIds:["claude-md","architecture-overview","contributing","security","pr-template","changelog","testing","onboarding","codeowners","commitlint","ci-workflow","cd-workflow","dockerfile","env-example","eslintrc","lint-staged"]},{id:"ai-first",name:"AI-First",description:"Cross-cutting preset for projects that heavily use AI coding agents",projectTypes:[],templateIds:["claude-md","agents-md","gemini-md","cursorrules","copilot-instructions","contributing","pr-template","changelog"]},{id:"minimal",name:"Minimal",description:"Just the essentials — get started fast with 5 key files",projectTypes:[],templateIds:["claude-md","contributing","pr-template","changelog","env-example"]}],F={"ai-agent":"AI Agent Config",github:"GitHub",process:"Process Docs",technical:"Technical Docs",infrastructure:"Infrastructure","github-actions":"GitHub Actions","code-quality":"Code Quality",monitoring:"Monitoring"},D={"ai-agent":x.Bot,github:w,process:z,technical:h.FileText,infrastructure:g,"github-actions":z,"code-quality":o.Check,monitoring:y.AlertTriangle},B={"claude-md":x.Bot,"agents-md":x.Bot,"gemini-md":x.Bot,cursorrules:P.Code2,windsurfrules:P.Code2,"copilot-instructions":x.Bot,contributing:w,security:S,"pr-template":w,"bug-report":y.AlertTriangle,"feature-request":h.FileText,changelog:I.List,deployment:z,testing:o.Check,glossary:f.BookOpen,prd:h.FileText,"architecture-overview":u,"api-reference":g,runbook:f.BookOpen,adr:y.AlertTriangle,onboarding:k.Users,database:M,openapi:g,"meeting-notes":j,blank:h.FileText},E=function(e){let t=[],a=new Map;for(let s of e)a.has(s.category)||(t.push(s.category),a.set(s.category,[])),a.get(s.category).push(s);return t.map(e=>({category:e,displayName:F[e]??e,items:a.get(e)}))}(L.TEMPLATES);function G({selected:e,onChange:s,projectType:r}){let l,[i,n]=(0,a.useState)("recommended"),c=t=>e.some(e=>e.id===t),d=R.filter(e=>0===e.projectTypes.length||e.projectTypes.includes(r??""));return(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-semibold text-txt mb-2",children:"Select Templates"}),(0,t.jsx)("p",{className:"text-muted",children:"Choose which documentation files to generate for your project."})]}),(0,t.jsxs)("div",{className:"flex gap-1 overflow-x-auto pb-2 border-b border-border",children:[(0,t.jsx)("button",{onClick:()=>n("recommended"),className:(0,m.cn)("px-3 py-1.5 text-sm rounded-md whitespace-nowrap transition-colors","recommended"===i?"bg-accent text-white":"text-muted hover:text-txt"),children:"⭐ Recommended"}),E.map(e=>(0,t.jsx)("button",{onClick:()=>n(e.category),className:(0,m.cn)("px-3 py-1.5 text-sm rounded-md whitespace-nowrap transition-colors",i===e.category?"bg-accent text-white":"text-muted hover:text-txt"),children:e.displayName},e.category))]}),"recommended"===i&&(0,t.jsxs)("div",{className:"space-y-4",children:[0===d.length&&(0,t.jsx)("p",{className:"text-muted text-sm",children:"No presets match your project type. Select templates manually from the tabs above."}),d.map(e=>{let a=e.templateIds.every(e=>c(e));return(0,t.jsx)("div",{className:"p-4 rounded-lg border border-border hover:border-accent/50 transition-colors",children:(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"font-medium text-txt",children:e.name}),(0,t.jsx)("div",{className:"text-sm text-muted mt-1",children:e.description}),(0,t.jsxs)("div",{className:"text-xs text-accent/70 mt-1",children:[e.templateIds.length," templates"]})]}),(0,t.jsx)("button",{onClick:()=>{s(e.templateIds.map(e=>L.TEMPLATES.find(t=>t.id===e)).filter(e=>void 0!==e).map(e=>({id:e.id,name:e.name,path:e.defaultPath})))},className:(0,m.cn)("shrink-0 px-3 py-1.5 text-sm rounded-lg border transition-colors",a?"border-accent bg-accent/10 text-accent":"border-border hover:border-accent text-txt"),children:a?"✓ Selected":"Select bundle"})]})},e.id)})]}),"recommended"!==i&&((l=E.find(e=>e.category===i))?(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("h3",{className:"text-sm font-medium text-muted uppercase tracking-wider",children:l.displayName}),(0,t.jsx)("button",{onClick:()=>(t=>{let a=E.find(e=>e.category===t);if(a)if(a.items.every(e=>c(e.id)))s(e.filter(e=>!a.items.some(t=>t.id===e.id)));else{let t=[...e];a.items.forEach(e=>{c(e.id)||t.push({id:e.id,name:e.name,path:e.defaultPath})}),s(t)}})(l.category),className:"text-xs text-accent hover:text-accent/80 transition-colors",children:l.items.every(e=>c(e.id))?"Deselect all":"Select all"})]}),(0,t.jsx)("div",{className:"grid grid-cols-2 sm:grid-cols-3 gap-3",children:l.items.map(a=>{let r=B[a.id]??D[a.category],l=c(a.id);return(0,t.jsx)("button",{onClick:()=>{c(a.id)?s(e.filter(e=>e.id!==a.id)):s([...e,{id:a.id,name:a.name,path:a.defaultPath}])},className:(0,m.cn)("p-3 rounded-lg border text-left transition-colors",l?"border-accent bg-accent/10":"border-border hover:border-accent/50"),children:(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[(0,t.jsx)("div",{className:(0,m.cn)("w-8 h-8 rounded-lg flex items-center justify-center shrink-0",l?"bg-accent/20":"bg-surface2"),children:(0,t.jsx)(r,{className:(0,m.cn)("w-4 h-4",l?"text-accent":"text-muted")})}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"font-medium text-sm text-txt truncate",children:a.name}),(0,t.jsx)("div",{className:"text-xs text-muted truncate",children:a.description})]}),l&&(0,t.jsx)(o.Check,{className:"w-4 h-4 text-accent shrink-0"})]})},a.id)})})]}):null),(0,t.jsxs)("div",{className:"text-sm text-muted",children:[e.length," template",1!==e.length?"s":""," selected"]})]})}var q=e.i(793479);let V=[{value:"web-app",label:"Web Application"},{value:"api-backend",label:"API / Backend"},{value:"cli-tool",label:"CLI Tool"},{value:"library",label:"Library / SDK"},{value:"mobile-app",label:"Mobile App"},{value:"monorepo",label:"Monorepo"}];function K({answers:e,onChange:a}){let s=(t,s)=>{a({...e,[t]:s})};return(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-semibold text-txt mb-2",children:"Basic Information"}),(0,t.jsx)("p",{className:"text-muted",children:"Tell us about your project to customize the documentation."})]}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:["Project Name ",(0,t.jsx)("span",{className:"text-red-400",children:"*"})]}),(0,t.jsx)(q.Input,{value:e.projectName,onChange:e=>s("projectName",e.target.value),placeholder:"My Awesome Project",className:"bg-surface2"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:"Project Type"}),(0,t.jsx)("select",{value:e.projectType,onChange:e=>s("projectType",e.target.value),className:"w-full h-10 px-3 rounded-md border border-border bg-surface2 text-txt text-sm focus:outline-hidden focus:ring-2 focus:ring-accent/50",children:V.map(e=>(0,t.jsx)("option",{value:e.value,children:e.label},e.value))})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:["Repository URL ",(0,t.jsx)("span",{className:"text-muted",children:"(optional)"})]}),(0,t.jsx)(q.Input,{value:e.repoUrl,onChange:e=>s("repoUrl",e.target.value),placeholder:"https://github.com/org/repo",className:"bg-surface2"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:"Description"}),(0,t.jsx)("textarea",{value:e.description,onChange:e=>s("description",e.target.value),placeholder:"A brief description of what your project does...",rows:3,className:"w-full px-3 py-2 rounded-md border border-border bg-surface2 text-txt text-sm resize-none focus:outline-hidden focus:ring-2 focus:ring-accent/50"})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:["Key Features ",(0,t.jsx)("span",{className:"text-muted",children:"(optional)"})]}),(0,t.jsx)(q.Input,{value:e.keyFeatures,onChange:e=>s("keyFeatures",e.target.value),placeholder:"Auth, payments, real-time sync, etc.",className:"bg-surface2"}),(0,t.jsx)("p",{className:"text-xs text-muted mt-1",children:"Comma-separated list of main features"})]})]})]})}var H=e.i(161863),O=e.i(765470);let Q=[{id:"language",label:"Language",techs:["TypeScript","JavaScript","Python","Go","Rust","Java","C#","Ruby","Kotlin","Swift","PHP","Elixir"]},{id:"frontend",label:"Frontend",techs:["React","Vue","Angular","Next.js","Nuxt","SvelteKit","Remix","Astro","Vite","Tailwind CSS","React Native","Expo"]},{id:"backend",label:"Backend",techs:["Node.js","Express","Fastify","NestJS","FastAPI","Django","Flask","Rails","Spring Boot","Go/Fiber","Rust/Actix","Hono","Bun"]},{id:"database",label:"Database",techs:["PostgreSQL","MySQL","MongoDB","Redis","SQLite","Supabase","PlanetScale","DynamoDB","Cassandra","Prisma","Drizzle","TypeORM"]},{id:"devops",label:"DevOps",techs:["Docker","Kubernetes","GitHub Actions","GitLab CI","CircleCI","Jenkins","Terraform","Pulumi","AWS","GCP","Azure","Vercel","Railway","Fly.io","Render"]},{id:"testing",label:"Testing",techs:["Jest","Vitest","Playwright","Cypress","Testing Library","pytest","RSpec","Mocha","k6"]},{id:"tools",label:"Tools",techs:["ESLint","Prettier","Husky","lint-staged","Storybook","Turborepo","pnpm","Nx","GraphQL","tRPC","Zod","Stripe"]}];Q.flatMap(e=>e.techs);let J=[{id:"nextjs",label:"Next.js Full-Stack",techs:["TypeScript","Next.js","React","Tailwind CSS","PostgreSQL","Prisma"]},{id:"python-api",label:"Python API",techs:["Python","FastAPI","PostgreSQL","Redis","Docker"]},{id:"react-native",label:"React Native",techs:["TypeScript","React Native","Expo"]},{id:"go-service",label:"Go Microservice",techs:["Go","Go/Fiber","PostgreSQL","Docker","Kubernetes"]},{id:"sveltekit",label:"SvelteKit",techs:["TypeScript","SvelteKit","Tailwind CSS","SQLite"]}];function W({value:e,onChange:s}){let[r,l]=(0,a.useState)(""),[i,n]=(0,a.useState)("language"),c=r.trim().length>0,o=t=>{e.includes(t)?s(e.filter(e=>e!==t)):s([...e,t])},d=c?Q.map(e=>({...e,items:e.techs.filter(e=>e.toLowerCase().includes(r.toLowerCase()))})).filter(e=>e.items.length>0):[],x=Q.find(e=>e.id===i)?.techs??[],h=Q.flatMap(e=>e.techs).some(e=>e.toLowerCase()===r.toLowerCase()),p=c&&!h&&r.trim().length>0;return(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-xs font-medium text-muted mb-2 uppercase tracking-wider",children:"Quick Presets"}),(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:J.map(a=>(0,t.jsx)("button",{type:"button",onClick:()=>{let t;(t=a.techs.filter(t=>!e.includes(t))).length>0&&s([...e,...t])},className:"px-3 py-1 rounded-md border border-border text-xs text-txt hover:border-accent hover:text-accent transition-colors",children:a.label},a.id))})]}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)(H.Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-muted pointer-events-none"}),(0,t.jsx)("input",{value:r,onChange:e=>l(e.target.value),onKeyDown:t=>{if("Enter"===t.key){let a;t.preventDefault(),!Q.flatMap(e=>e.techs).some(e=>e.toLowerCase()===r.toLowerCase())&&r.trim()&&((a=r.trim())&&!e.includes(a)&&s([...e,a]),l(""))}else"Escape"===t.key&&l("")},placeholder:"Search technologies...",className:"w-full pl-9 pr-3 py-2 rounded-md border border-border bg-surface2 text-txt text-sm outline-hidden placeholder:text-muted focus:border-accent transition-colors"}),c&&(0,t.jsx)("button",{type:"button",onClick:()=>l(""),className:"absolute right-2 top-1/2 -translate-y-1/2 text-muted hover:text-txt transition-colors",children:(0,t.jsx)(O.X,{className:"w-4 h-4"})})]}),!c&&(0,t.jsx)("div",{className:"flex gap-1 overflow-x-auto pb-1 scrollbar-hide",children:Q.map(e=>(0,t.jsx)("button",{type:"button",onClick:()=>n(e.id),className:(0,m.cn)("px-3 py-1 rounded-md text-xs font-medium whitespace-nowrap transition-colors shrink-0",i===e.id?"bg-accent text-white":"bg-surface2 text-muted hover:text-txt hover:bg-surface"),children:e.label},e.id))}),c?(0,t.jsxs)("div",{className:"space-y-3",children:[d.map(a=>(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-xs font-medium text-muted uppercase tracking-wider mb-1.5",children:a.label}),(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:a.items.map(a=>(0,t.jsx)("button",{type:"button",onClick:()=>o(a),className:(0,m.cn)("px-3 py-1 rounded-full text-sm border transition-colors",e.includes(a)?"bg-accent/15 border-accent text-accent":"bg-surface2 border-border text-txt hover:border-accent/50 hover:text-accent/80"),children:a},a))})]},a.id)),p&&(0,t.jsxs)("p",{className:"text-xs text-muted",children:["Press ",(0,t.jsx)("kbd",{className:"px-1 py-0.5 rounded-sm bg-surface border border-border text-xs",children:"Enter"}),' to add "',r,'"']})]}):(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:x.map(a=>(0,t.jsx)("button",{type:"button",onClick:()=>o(a),className:(0,m.cn)("px-3 py-1 rounded-full text-sm border transition-colors",e.includes(a)?"bg-accent/15 border-accent text-accent":"bg-surface2 border-border text-txt hover:border-accent/50 hover:text-accent/80"),children:a},a))}),e.length>0&&(0,t.jsxs)("div",{className:"pt-2 border-t border-border",children:[(0,t.jsxs)("p",{className:"text-xs font-medium text-muted mb-2",children:["Selected (",e.length,")"]}),(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:e.map(a=>(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-md bg-accent/15 text-accent text-sm font-medium",children:[a,(0,t.jsx)("button",{type:"button",onClick:()=>s(e.filter(e=>e!==a)),className:"hover:text-accent/70 transition-colors",children:(0,t.jsx)(O.X,{className:"w-3 h-3"})})]},a))})]})]})}let U=[{value:"solo",label:"Solo"},{value:"2-5",label:"2–5"},{value:"6-15",label:"6–15"},{value:"15+",label:"15+"}],$=[{value:"",label:"Not sure / other"},{value:"Jest",label:"Jest"},{value:"Vitest",label:"Vitest"},{value:"pytest",label:"pytest"},{value:"RSpec",label:"RSpec"},{value:"Mocha",label:"Mocha"}],Y=[{value:"",label:"Not specified"},{value:"trunk-based",label:"Trunk-based"},{value:"gitflow",label:"Gitflow"},{value:"feature-branch",label:"Feature branches"}],X=["GitHub Actions","GitLab CI","CircleCI","Jenkins","Buildkite","Travis CI"],Z=["ESLint","Prettier","Biome","Stylelint","oxc","Rome"],_=["Vercel","AWS","GCP","Azure","Fly.io","Railway","Render","Docker","Kubernetes","Heroku"];function ee({answers:e,onChange:a}){let s=(t,s)=>{a({...e,[t]:s})};return(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-semibold text-txt mb-2",children:"Team & Conventions"}),(0,t.jsx)("p",{className:"text-muted",children:"Help us tailor documentation to your team. All fields are optional."})]}),(0,t.jsxs)("div",{className:"space-y-5",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-2",children:"Team Size"}),(0,t.jsx)("div",{className:"flex gap-2 flex-wrap",children:U.map(a=>(0,t.jsx)("button",{type:"button",onClick:()=>s("teamSize",e.teamSize===a.value?"":a.value),className:(0,m.cn)("px-4 py-2 rounded-lg border text-sm font-medium transition-colors",e.teamSize===a.value?"border-accent bg-accent/10 text-accent":"border-border text-txt hover:border-accent/50"),children:a.label},a.value))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:"Linting & Formatting"}),(0,t.jsx)("div",{className:"flex gap-2 flex-wrap mb-2",children:Z.map(a=>(0,t.jsx)("button",{type:"button",onClick:()=>{s("linting",e.linting.includes(a)?e.linting.filter(e=>e!==a):[...e.linting,a])},className:(0,m.cn)("px-3 py-1.5 rounded-md border text-sm transition-colors",e.linting.includes(a)?"border-accent bg-accent/10 text-accent":"border-border text-txt hover:border-accent/50"),children:a},a))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:"Test Framework"}),(0,t.jsx)("select",{value:e.testFramework,onChange:e=>s("testFramework",e.target.value),className:"w-full h-10 px-3 rounded-md border border-border bg-surface2 text-txt text-sm focus:outline-hidden focus:ring-2 focus:ring-accent/50",children:$.map(e=>(0,t.jsx)("option",{value:e.value,children:e.label},e.value))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:"CI/CD"}),(0,t.jsx)("div",{className:"flex gap-2 flex-wrap mb-2",children:X.map(a=>(0,t.jsx)("button",{type:"button",onClick:()=>{s("ciCd",e.ciCd.includes(a)?e.ciCd.filter(e=>e!==a):[...e.ciCd,a])},className:(0,m.cn)("px-3 py-1.5 rounded-md border text-sm transition-colors",e.ciCd.includes(a)?"border-accent bg-accent/10 text-accent":"border-border text-txt hover:border-accent/50"),children:a},a))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-2",children:"Branch Strategy"}),(0,t.jsx)("div",{className:"flex gap-2 flex-wrap",children:Y.filter(e=>e.value).map(a=>(0,t.jsx)("button",{type:"button",onClick:()=>s("branchStrategy",e.branchStrategy===a.value?"":a.value),className:(0,m.cn)("px-4 py-2 rounded-lg border text-sm font-medium transition-colors",e.branchStrategy===a.value?"border-accent bg-accent/10 text-accent":"border-border text-txt hover:border-accent/50"),children:a.label},a.value))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:"Deployment Target"}),(0,t.jsx)("div",{className:"flex gap-2 flex-wrap",children:_.map(a=>(0,t.jsx)("button",{type:"button",onClick:()=>{s("deploymentTarget",e.deploymentTarget.includes(a)?e.deploymentTarget.filter(e=>e!==a):[...e.deploymentTarget,a])},className:(0,m.cn)("px-3 py-1.5 rounded-md border text-sm transition-colors",e.deploymentTarget.includes(a)?"border-accent bg-accent/10 text-accent":"border-border text-txt hover:border-accent/50"),children:a},a))})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:["Additional Conventions ",(0,t.jsx)("span",{className:"text-muted",children:"(optional)"})]}),(0,t.jsx)(q.Input,{value:e.conventions,onChange:e=>s("conventions",e.target.value),placeholder:"Conventional Commits, semantic versioning, etc.",className:"bg-surface2"})]})]})]})}let et={name:"chevron-down",size:24,node:[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]};et.node;let ea=(0,r.default)(et),es={name:"circle-alert",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],aliases:["alert-circle"]};es.node;let er=(0,r.default)(es);var el=e.i(998822);function ei({files:e,onWrite:s,isWriting:r,mode:l,onModeChange:i}){let[c,o]=(0,a.useState)(new Set),d=e.filter(e=>!e.skipped),x=e.filter(e=>e.skipped);return 0===e.length?(0,t.jsxs)("div",{className:"text-center py-12",children:[(0,t.jsx)(er,{className:"w-12 h-12 text-muted mx-auto mb-4"}),(0,t.jsx)("h3",{className:"text-lg font-medium text-txt mb-2",children:"No files generated"}),(0,t.jsx)("p",{className:"text-muted",children:"Something went wrong. Please go back and try again."})]}):(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-semibold text-txt mb-2",children:"Preview"}),(0,t.jsx)("p",{className:"text-muted",children:"Review the files that will be created."})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1 bg-surface2 rounded-lg p-1",children:[(0,t.jsx)("button",{onClick:()=>i("quick"),className:(0,m.cn)("px-3 py-1 text-sm rounded-md transition-colors","quick"===l?"bg-surface text-txt shadow-xs":"text-muted hover:text-txt"),children:"Quick"}),(0,t.jsx)("button",{onClick:()=>i("ai"),className:(0,m.cn)("px-3 py-1 text-sm rounded-md transition-colors","ai"===l?"bg-surface text-txt shadow-xs":"text-muted hover:text-txt"),children:"AI"})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("h3",{className:"text-sm font-medium text-muted uppercase tracking-wider",children:["Files to create (",d.length,")"]}),(0,t.jsx)("div",{className:"border border-border rounded-lg divide-y divide-border overflow-hidden",children:d.map(e=>{let a=c.has(e.path),s=e.path.endsWith(".md");return(0,t.jsxs)("div",{children:[(0,t.jsxs)("button",{onClick:()=>{var t;return t=e.path,void o(e=>{let a=new Set(e);return a.has(t)?a.delete(t):a.add(t),a})},className:"w-full flex items-center gap-3 p-3 hover:bg-surface2 transition-colors",children:[a?(0,t.jsx)(ea,{className:"w-4 h-4 text-muted shrink-0"}):(0,t.jsx)(n.ChevronRight,{className:"w-4 h-4 text-muted shrink-0"}),(0,t.jsx)(h.FileText,{className:"w-4 h-4 text-accent shrink-0"}),(0,t.jsx)("span",{className:"text-sm font-mono text-txt",children:e.path})]}),a&&(0,t.jsx)("div",{className:"px-3 pb-3",children:s?(0,t.jsx)("div",{className:"prose prose-invert max-w-none p-3 bg-surface2 rounded-lg max-h-64 overflow-y-auto text-sm",children:(0,t.jsx)(el.MarkdownRenderer,{content:e.content.slice(0,3e3)})}):(0,t.jsxs)("pre",{className:"p-3 bg-surface2 rounded-lg text-xs text-muted overflow-x-auto max-h-64 overflow-y-auto",children:[e.content.slice(0,2e3),e.content.length>2e3&&"\n\n...(truncated)"]})})]},e.path)})})]}),x.length>0&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("h3",{className:"text-sm font-medium text-muted uppercase tracking-wider",children:["Skipped (",x.length,")"]}),(0,t.jsx)("div",{className:"bg-amber-500/10 border border-amber-500/30 rounded-lg p-3 space-y-1",children:x.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[(0,t.jsx)(er,{className:"w-4 h-4 text-amber-400 shrink-0"}),(0,t.jsx)("span",{className:"font-mono text-amber-400",children:e.path}),(0,t.jsxs)("span",{className:"text-amber-400/70",children:["— ",e.reason||"already exists"]})]},e.path))})]}),(0,t.jsxs)("div",{className:"text-sm text-muted",children:[d.length," file",1!==d.length?"s":""," will be created",x.length>0&&`, ${x.length} skipped`]})]})}let en=[{id:"welcome",title:"Welcome"},{id:"basic-info",title:"Basic Info"},{id:"templates",title:"Templates"},{id:"tech-stack",title:"Tech Stack"},{id:"team",title:"Team"},{id:"preview",title:"Preview"},{id:"complete",title:"Complete"}],ec=en.length-1;function eo(){let{activeProject:e,rootParam:r,projects:l}=(0,s.useApp)(),x=l.find(t=>t.root===e),[h,p]=(0,a.useState)(0),[u,b]=(0,a.useState)([]),[g,f]=(0,a.useState)({projectName:"",projectType:"web-app",description:"",repoUrl:"",techStackTags:[],keyFeatures:"",teamSize:"",linting:[],testFramework:"",ciCd:[],branchStrategy:"",deploymentTarget:[],conventions:""}),[y,v]=(0,a.useState)("quick"),[j,k]=(0,a.useState)([]),[N,w]=(0,a.useState)(!1),[C,S]=(0,a.useState)([]);(0,a.useEffect)(()=>{!async function(){try{let e=await fetch(`/api/docs${r}`),t=await e.json();if(!Array.isArray(t))return;let a=t.filter(e=>"CLAUDE.md"===e.path||"AGENTS.md"===e.path).map(e=>e.path);S(a)}catch{}}()},[r]);let T=async()=>{if(4===h){w(!0);try{let e=await fetch(`/api/setup/generate${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({templates:u,answers:g,mode:y})}),t=await e.json();k(t.files||[])}catch{k([])}w(!1)}p(e=>Math.min(e+1,ec))},M=async()=>{w(!0);try{await fetch(`/api/setup/write${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({files:j})}),p(6)}catch{}w(!1)};return(0,t.jsxs)("div",{className:"min-h-screen bg-bg flex flex-col",children:[(0,t.jsx)("div",{className:"border-b border-border bg-surface",children:(0,t.jsxs)("div",{className:"max-w-3xl mx-auto px-6 py-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,t.jsx)("h1",{className:"text-lg font-semibold text-txt",children:"Setup Wizard"}),(0,t.jsxs)("span",{className:"text-sm text-muted",children:["Step ",h+1," of ",en.length]})]}),(0,t.jsx)("div",{className:"flex gap-1",children:en.map((e,a)=>(0,t.jsx)("div",{className:(0,m.cn)("h-1 flex-1 rounded-full transition-colors",a<=h?"bg-accent":"bg-border")},e.id))}),(0,t.jsx)("div",{className:"flex gap-1 mt-1",children:en.map((e,a)=>(0,t.jsx)("div",{className:"flex-1 text-center",children:a===h&&(0,t.jsx)("span",{className:"text-xs text-accent",children:e.title})},e.id))})]})}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto",children:(0,t.jsxs)("div",{className:"max-w-3xl mx-auto px-6 py-8",children:[0===h&&(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{className:"text-center space-y-4",children:[(0,t.jsx)("div",{className:"w-16 h-16 rounded-2xl bg-accent/10 flex items-center justify-center mx-auto",children:(0,t.jsx)(c.Sparkles,{className:"w-8 h-8 text-accent"})}),(0,t.jsx)("h2",{className:"text-2xl font-bold text-txt",children:"Welcome to VibeDoc"}),(0,t.jsx)("p",{className:"text-muted max-w-md mx-auto",children:"Let's set up your project documentation. You can generate AI-optimized docs like CLAUDE.md, architecture overviews, and more."})]}),x&&(0,t.jsxs)("div",{className:"bg-surface border border-border rounded-lg p-4",children:[(0,t.jsx)("div",{className:"text-sm text-muted mb-1",children:"Current Project"}),(0,t.jsx)("div",{className:"font-medium text-txt",children:x.name}),(0,t.jsx)("div",{className:"text-xs text-muted mt-1 font-mono",children:x.root})]}),C.length>0&&(0,t.jsxs)("div",{className:"bg-amber-500/10 border border-amber-500/30 rounded-lg p-4",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-amber-400 mb-1",children:"Existing files detected"}),(0,t.jsxs)("div",{className:"text-sm text-amber-400/80",children:[C.join(", ")," already exist. They will be skipped during generation."]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"text-sm font-medium text-txt mb-3",children:"Quick Start with a Preset"}),(0,t.jsx)("div",{className:"grid grid-cols-2 gap-3",children:["nextjs-production","api-backend","minimal","ai-first"].map(e=>{let a=R.find(t=>t.id===e);return a?(0,t.jsxs)("button",{onClick:()=>{b(a.templateIds.map(e=>L.TEMPLATES.find(t=>t.id===e)).filter(e=>void 0!==e).map(e=>({id:e.id,name:e.name,path:e.defaultPath}))),p(1)},className:"p-3 rounded-lg border border-border hover:border-accent/50 text-left transition-colors",children:[(0,t.jsx)("div",{className:"font-medium text-sm text-txt",children:a.name}),(0,t.jsx)("div",{className:"text-xs text-muted mt-1",children:a.description})]},e):null})})]})]}),1===h&&(0,t.jsx)(K,{answers:g,onChange:f}),2===h&&(0,t.jsx)(G,{selected:u,onChange:b,projectType:g.projectType}),3===h&&(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-semibold text-txt mb-2",children:"Tech Stack"}),(0,t.jsx)("p",{className:"text-muted",children:"Add the technologies your project uses. Search or type custom ones."})]}),(0,t.jsx)(W,{value:g.techStackTags,onChange:e=>f(t=>({...t,techStackTags:e}))}),g.techStackTags.length>0&&(0,t.jsxs)("p",{className:"text-sm text-muted",children:[g.techStackTags.length," technolog",1!==g.techStackTags.length?"ies":"y"," added"]})]}),4===h&&(0,t.jsx)(ee,{answers:g,onChange:f}),5===h&&(0,t.jsx)(ei,{files:j,onWrite:M,isWriting:N,mode:y,onModeChange:v}),6===h&&(0,t.jsxs)("div",{className:"text-center space-y-6",children:[(0,t.jsx)("div",{className:"w-16 h-16 rounded-full bg-green-500/10 flex items-center justify-center mx-auto",children:(0,t.jsx)(o.Check,{className:"w-8 h-8 text-green-500"})}),(0,t.jsx)("h2",{className:"text-2xl font-bold text-txt",children:"Setup Complete!"}),(0,t.jsx)("p",{className:"text-muted max-w-md mx-auto",children:"Your documentation files have been created. You can now view and edit them in the Docs tab."}),(0,t.jsxs)("div",{className:"bg-surface border border-border rounded-lg p-4 text-left max-w-md mx-auto",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-txt mb-2",children:"Next steps:"}),(0,t.jsxs)("ul",{className:"text-sm text-muted space-y-2",children:[(0,t.jsx)("li",{children:"• Review generated files in the Docs tab"}),(0,t.jsx)("li",{children:"• Edit content to match your project specifics"}),(0,t.jsx)("li",{children:"• Connect your coding agent via MCP for AI assistance"})]})]}),(0,t.jsxs)("a",{href:"/docs",className:"inline-flex items-center gap-2 px-4 py-2 bg-accent text-white rounded-lg font-medium hover:bg-accent/90 transition-colors",children:["Go to Docs",(0,t.jsx)(n.ChevronRight,{className:"w-4 h-4"})]})]})]})}),h<ec&&(0,t.jsx)("div",{className:"border-t border-border bg-surface",children:(0,t.jsxs)("div",{className:"max-w-3xl mx-auto px-6 py-4 flex items-center justify-between",children:[(0,t.jsxs)("button",{onClick:()=>{p(e=>Math.max(e-1,0))},disabled:0===h,className:(0,m.cn)("flex items-center gap-2 px-4 py-2 rounded-lg font-medium transition-colors",0===h?"text-muted cursor-not-allowed":"text-txt hover:bg-surface2"),children:[(0,t.jsx)(i,{className:"w-4 h-4"}),"Back"]}),5===h?(0,t.jsx)("button",{onClick:M,disabled:N||0===j.length,className:"flex items-center gap-2 px-4 py-2 bg-accent text-white rounded-lg font-medium hover:bg-accent/90 transition-colors disabled:opacity-50",children:N?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(d.Loader2,{className:"w-4 h-4 animate-spin"}),"Writing..."]}):(0,t.jsxs)(t.Fragment,{children:["Write Files",(0,t.jsx)(o.Check,{className:"w-4 h-4"})]})}):(0,t.jsx)("button",{onClick:T,disabled:!(()=>{switch(h){case 0:default:return!0;case 1:return""!==g.projectName.trim();case 2:return u.length>0}})()||N,className:"flex items-center gap-2 px-4 py-2 bg-accent text-white rounded-lg font-medium hover:bg-accent/90 transition-colors disabled:opacity-50",children:N?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(d.Loader2,{className:"w-4 h-4 animate-spin"}),"Generating..."]}):(0,t.jsxs)(t.Fragment,{children:[4===h?"Generate":"Next",(0,t.jsx)(n.ChevronRight,{className:"w-4 h-4"})]})})]})})]})}e.s(["default",0,function(){return(0,t.jsx)(eo,{})}],294895)}]);
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,83790,e=>{"use strict";var t=e.i(180338);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),n={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"},s=(0,t.createContext)({}),i=(0,t.forwardRef)(({color:e,size:i,width:l,height:a,strokeWidth:o,absoluteStrokeWidth:c,nonScalingStroke:h,className:p="",children:u,iconNode:g=[],icon:k={node:g,aliases:[],size:24},...d},f)=>{let{size:x=24,strokeWidth:b=2,absoluteStrokeWidth:m=!1,nonScalingStroke:w=!1,color:S="currentColor",className:$=""}=(0,t.useContext)(s)??{},y=!!u||(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(d),[R,z,T=[]]=function(e,t={}){return function(e,t={}){let s=t.attributeNames??{},i=e=>s[e]??e,l=e.size??e.width??n.width,a=e.size??e.height??n.height,o=e.aliases?.filter(e=>"string"==typeof e&&""!==e.trim()).map(e=>`lucide-${e}`)??[],c=[...e.name?[`lucide-${e.name}`]:[],...o],h=t.className?.split(" ").filter(Boolean)??[],p=!1===t.includeDefaultClasses?r(...h):r("lucide",...c,...h),u=t.absoluteStrokeWidth?Number(t.strokeWidth??n["stroke-width"])*Number(e.size??e.width??n.width)/Number(t.size??t.width??n.width):t.strokeWidth??n["stroke-width"];return["svg",{...Object.entries(n).reduce((e,[t,r])=>(e[i(t)]=r,e),{}),..."color"in t&&t.color&&{[i("stroke")]:t.color},..."size"in t&&null!=t.size&&{[i("width")]:t.size,[i("height")]:t.size},..."width"in t&&null!=t.width&&{[i("width")]:t.width},..."height"in t&&null!=t.height&&{[i("height")]:t.height},[i("stroke-width")]:u,...p&&{[i("class")]:p},[i("viewBox")]:`0 0 ${l} ${a}`,...!1===t.hasA11yProp?{[i("aria-hidden")]:"true"}:{},..."attributes"in t&&t.attributes},e.node.map(e=>{let[r,n,s]=e,l=t.nonScalingStroke?{[i("vector-effect")]:"non-scaling-stroke",...n}:n;return s?[r,l,s]:[r,l]})]}(e,{...t,attributeNames:{...t.attributeNames,class:"className","stroke-width":"strokeWidth","stroke-linecap":"strokeLinecap","stroke-linejoin":"strokeLinejoin","vector-effect":"vectorEffect"}})}(k,{color:e??S,width:l??i??x,height:a??i??x,strokeWidth:o??b,absoluteStrokeWidth:c??m,nonScalingStroke:h??w,className:r($,p),hasA11yProp:y,attributes:d});return(0,t.createElement)(R,{ref:f,...z},[...T.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(u)?u:[u]])});e.s(["default",0,function(e,r=[],n=[]){let s,l="string"==typeof e?function(e,t,r=[]){if(null==t)throw Error("[lucide]: iconNode is required when icon name is used");return{name:e?.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),size:24,node:t,...r.length>0?{aliases:r}:{}}}(e,r,n):e,a=(0,t.forwardRef)(({className:e,...r},n)=>(0,t.createElement)(i,{ref:n,icon:l,className:e,...r}));return l.name&&(a.displayName=(s=(e=>{let t="",r=!1;for(let n of e){if("-"===n||"_"===n||n<=" "){r=t.length>0;continue}0===t.length?t+=n.toLowerCase():t+=r?n.toUpperCase():n,r=!1}return t})(l.name)).charAt(0).toUpperCase()+s.slice(1)),a}],83790)},765470,e=>{"use strict";var t=e.i(83790);let r={name:"x",size:24,node:[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]};r.node;let n=(0,t.default)(r);e.s(["X",0,n],765470)},998822,e=>{"use strict";var t=e.i(72345),r=e.i(180338);function n(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var s=n(),i={exec:()=>null};function l(e){let t=[];return r=>{let n=Math.max(0,Math.min(3,r-1)),s=t[n];return s||(s=e(n),t[n]=s),s}}function a(e,t=""){let r="string"==typeof e?e:e.source,n={replace:(e,t)=>{let s="string"==typeof t?t:t.source;return s=s.replace(c.caret,"$1"),r=r.replace(e,s),n},getRegex:()=>new RegExp(r,t)};return n}var o=((e="")=>{try{return!!RegExp("(?<=1)(?<!1)"+e)}catch{return!1}})(),c={codeRemoveIndent:/^(?: {0,3}\t| {1,4})/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,endingSpaceTabChar:/[ \t]$/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,leadingSpaceTab:/^[ \t]+/,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,numericCharacterReference:/&#(?:(\d{1,7})|[Xx]([A-Fa-f0-9]{1,6}));/g,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:l(e=>RegExp(`^ {0,${e}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),hrRegex:l(e=>RegExp(`^ {0,${e}}((?:-[ ]*){3,}|(?:_[ ]*){3,}|(?:\\*[ ]*){3,})(?:\\n+|$)`)),fencesBeginRegex:l(e=>RegExp(`^ {0,${e}}(?:\`\`\`|~~~)`)),headingBeginRegex:l(e=>RegExp(`^ {0,${e}}#`)),htmlBeginRegex:l(e=>RegExp(`^ {0,${e}}(?:</?(?:${m})(?: +|$|/?>)|<(?:script|pre|style|textarea|!--))`,"i")),blockquoteBeginRegex:l(e=>RegExp(`^ {0,${e}}>`))},h=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,p=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,u=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |fences|blockquote|heading|hr|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,g=a(u).replace(/bull/g,p).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}(?:\s|$)/).replace(/hr/g,/ {0,3}(?:(?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),k=a(u).replace(/bull/g,p).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}(?:\s|$)/).replace(/hr/g,/ {0,3}(?:(?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),d=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table|[ \t]+\n)[^\n]+)*)/,f=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,x=a(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",f).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),b=a(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g,p).getRegex(),m="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",w=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,S=a("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n*|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>[^\\n]*\\n*|$)|<![A-Z][\\s\\S]*?(?:>[^\\n]*\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>[^\\n]*\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][a-z0-9-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][a-z0-9-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",w).replace("tag",m).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),$=e=>a(d).replace("hr",h).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list",e).replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",m).getRegex(),y=$(/ {0,3}(?:[*+-]|1[.)])[ \t]+[^ \t\n]/),R=$(/ {0,3}(?:[*+-]|\d{1,9}[.)])(?:[ \t]|\n|$)/),z={blockquote:a(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",R).getRegex(),code:/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,def:x,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:h,html:S,lheading:g,list:b,newline:/^(?:[ \t]*(?:\n|$))+/,paragraph:y,table:i,text:/^[^\n]+/},T=a("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",h).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",m).getRegex(),A={...z,lheading:k,table:T,paragraph:a(d).replace("hr",h).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",T).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",m).getRegex()},_={...z,html:a("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",w).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:i,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:a(d).replace("hr",h).replace("heading",` *#{1,6} *[^
|
|
2
|
-
]`).replace("lheading",g).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},P=/^( {2,}|\\)\n(?!\s*$)[ \t]*/,C=/[\p{P}\p{S}]/u,L=/[\s\p{P}\p{S}]/u,E=/[^\s\p{P}\p{S}]/u,I=a(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,L).getRegex(),v=/(?!~)[\p{P}\p{S}]/u,B=a(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",o?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),q=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,Z=a(q,"u").replace(/punct/g,C).getRegex(),N=a(q,"u").replace(/punct/g,v).getRegex(),D=a(/^(?:\*+(?:((?!\*)(?!openQuote)punct)|([^\s*]))?)|^_+(?:((?!_)(?!openQuote)punct)|([^\s_]))?/,"u").replace(/openQuote/g,/[\p{Pi}\p{Ps}"']/u).replace(/punct/g,C).getRegex(),O="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",j=a(O,"gu").replace(/notPunctSpace/g,E).replace(/punctSpace/g,L).replace(/punct/g,C).getRegex(),Q=a(O,"gu").replace(/notPunctSpace/g,/(?:[^\s\p{P}\p{S}]|~)/u).replace(/punctSpace/g,/(?!~)[\s\p{P}\p{S}]/u).replace(/punct/g,v).getRegex(),M=a("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)[\\s](\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|(?:(?!\\*)punct|notPunctSpace)(\\*+)(?!\\*)(?=notPunctSpace)","gu").replace(/notPunctSpace/g,E).replace(/punctSpace/g,L).replace(/punct/g,C).getRegex(),W=a("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,E).replace(/punctSpace/g,L).replace(/punct/g,C).getRegex(),H=a("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)[\\s](_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)|(?:(?!_)punct|notPunctSpace)(_+)(?!_)(?=notPunctSpace)","gu").replace(/notPunctSpace/g,E).replace(/punctSpace/g,L).replace(/punct/g,C).getRegex(),G=a(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,C).getRegex(),U=a("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)","gu").replace(/notPunctSpace/g,E).replace(/punctSpace/g,L).replace(/punct/g,C).getRegex(),X=a(/\\(punct)/,"gu").replace(/punct/g,C).getRegex(),F=a(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),K=a(w).replace("(?:-->|$)","-->").getRegex(),J=a("^comment|^</[a-zA-Z][a-zA-Z0-9-]*\\s*>|^<[a-zA-Z][a-zA-Z0-9-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",K).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),V=/\[(?:\\[\s\S]|[^\[\]\\])*\]/,Y=a(/(?:\[(?:brackets|\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/).replace("brackets",V).getRegex(),ee=a(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Y).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]+|(?=\))/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),et=a(/^!?\[(label)\]\[(ref)\]/).replace("label",Y).replace("ref",f).getRegex(),er=a(/^!?\[(ref)\](?:\[\])?/).replace("ref",f).getRegex(),en=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\]){1,999}/,es=a(/(?:[^\[\]\\`]*(?:\[(?:brackets|\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\]))){0,999}?[^\[\]\\`]*?/).replace("brackets",V).getRegex(),ei=a("reflink|nolink(?!\\()","g").replace("reflink",a(/^!?\[(label)\]\[(ref)\]/).replace("label",es).replace("ref",en).getRegex()).replace("nolink",a(/^!?\[(ref)\](?:\[\])?/).replace("ref",en).getRegex()).getRegex(),el=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,ea=a(/(?:mailto:email|xmpp:email(?:\/[A-Za-z0-9@.]+)?)/).replace(/email/g,/[A-Za-z0-9._+-]+@[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![\w-])/).getRegex(),eo={_backpedal:i,anyPunctuation:X,autolink:F,blockSkip:B,br:P,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:i,delLDelim:i,delRDelim:i,emStrongLDelim:Z,emStrongRDelimAst:j,emStrongRDelimUnd:W,escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,link:ee,nolink:er,punctuation:I,reflink:et,reflinkSearch:ei,tag:J,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,url:i},ec={...eo,emStrongLDelim:D,emStrongRDelimAst:M,emStrongRDelimUnd:H,link:a(/^!?\[(label)\]\((.*?)\)/).replace("label",Y).getRegex(),reflink:a(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Y).getRegex()},eh={...eo,emStrongRDelimAst:Q,emStrongLDelim:N,delLDelim:G,delRDelim:U,url:a(/^emailProtocol|^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("emailProtocol",ea).replace("protocol",el).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![\w-])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:a(/^(?:[^a-zA-Z0-9](?=emailProtocol)|(`+|~+|[^`~])(?:(?=[`~])|(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9](?=emailProtocol)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))))/).replace("protocol",el).replace(/emailProtocol/g,/(?:mailto|xmpp):/).getRegex()},ep={...eh,br:a(P).replace("{2,}","*").getRegex(),text:a(eh.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},eu={normal:z,gfm:A,pedantic:_},eg={normal:eo,gfm:eh,breaks:ep,pedantic:ec},ek={"&":"&","<":"<",">":">",'"':""","'":"'"},ed=e=>ek[e];function ef(e,t){if(t){if(c.escapeTest.test(e))return e.replace(c.escapeReplace,ed)}else if(c.escapeTestNoEncode.test(e))return e.replace(c.escapeReplaceNoEncode,ed);return e}function ex(e){try{e=encodeURI(e).replace(c.percentDecode,"%")}catch{return null}return e}function eb(e,t){let r=e.replace(c.findPipe,(e,t,r)=>{let n=!1,s=t;for(;--s>=0&&"\\"===r[s];)n=!n;return n?"|":" |"}).split(c.splitPipe),n=0;if(r[0].trim()||r.shift(),r.length>0&&!r.at(-1)?.trim()&&r.pop(),t)if(r.length>t)r.splice(t);else for(;r.length<t;)r.push("");for(;n<r.length;n++)r[n]=r[n].trim().replace(c.slashPipe,"|");return r}function em(e,t,r){let n=e.length;if(0===n)return"";let s=0;for(;s<n;){let i=e.charAt(n-s-1);if(i!==t||r)if(i!==t&&r)s++;else break;else s++}return e.slice(0,n-s)}function ew(e){let t=e.split(`
|
|
3
|
-
`),r=t.length-1;for(;r>=0&&c.blankLine.test(t[r]);)r--;return t.length-r<=2?e:t.slice(0,r+1).join(`
|
|
4
|
-
`)}function eS(e){return e.trim().toLowerCase().toUpperCase().toLowerCase()}function e$(e,t=0){let r=t,n="";for(let t of e)if(" "===t){let e=4-r%4;n+=" ".repeat(e),r+=e}else n+=t,r++;return n}function ey(e,t,r,n,s){let i=t.href,l=t.title||null,a=e[1].replace(s.other.outputLinkReplace,"$1"),o="!"===e[0].charAt(0);n.state.inLink=!0;let c=n.state.linkEmitted,h=n.state.inRawBlock;n.state.linkEmitted=!1;let p=n.inlineTokens(a),u=n.state.linkEmitted;if(n.state.linkEmitted=c,n.state.inLink=!1,!o){if(u){n.state.inRawBlock=h;return}n.state.linkEmitted=!0}return{type:o?"image":"link",raw:r,href:i,title:l,text:a,tokens:p}}function eR(e,t,r,n){if(!t.includes("<"))return!1;for(let s=0;s<t.length;s++){if("\\"===t[s]){s++;continue}if("`"===t[s]){let e=n.inline.code.exec(t.slice(s));if(e){s+=e[0].length-1;continue}}if("<"!==t[s])continue;let i=e.slice(r+s),l=n.inline.tag.exec(i)||n.inline.autolink.exec(i);if(l){if(l[0].length>t.length-s)return!0;s+=l[0].length-1}}return!1}var ez=class{options;rules;lexer;constructor(e){this.options=e||s}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let e=this.options.pedantic?t[0]:ew(t[0]),r=e.replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e,codeBlockStyle:"indented",text:r}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let e=t[0],r=function(e,t,r){let n=e.match(r.other.indentCodeCompensation);if(null===n)return t;let s=n[1];return t.split(`
|
|
5
|
-
`).map(e=>{let t=e.match(r.other.beginningSpace);if(null===t)return e;let[n]=t;return e.slice(Math.min(n.length,s.length))}).join(`
|
|
6
|
-
`)}(e,t[3]||"",this.rules);return{type:"code",raw:e,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:r}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let e=t[2].trim();if(this.rules.other.endingHash.test(e)){let t=em(e,"#");(this.options.pedantic||!t||this.rules.other.endingSpaceTabChar.test(t))&&(e=t.trim())}return{type:"heading",raw:em(t[0],`
|
|
7
|
-
`),depth:t[1].length,text:e,tokens:this.lexer.inline(e)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:em(t[0],`
|
|
8
|
-
`)}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let e=em(t[0],`
|
|
9
|
-
`).split(`
|
|
10
|
-
`),r="",n="",s=[];for(;e.length>0;){let t=!1,i=[],l;for(l=0;l<e.length;l++)if(this.rules.other.blockquoteStart.test(e[l]))i.push(e[l]),t=!0;else if(t)break;else i.push(e[l]);e=e.slice(l);let a=i.join(`
|
|
11
|
-
`),o=a.replace(this.rules.other.blockquoteSetextReplace,`
|
|
12
|
-
$1`).replace(this.rules.other.blockquoteSetextReplace2,"");r=r?`${r}
|
|
13
|
-
${a}`:a,n=n?`${n}
|
|
14
|
-
${o}`:o;let c=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(o,s,!0),this.lexer.state.top=c,0===e.length)break;let h=s.at(-1);if(h?.type==="code")break;if(h?.type==="blockquote"){let t=e.join(`
|
|
15
|
-
`),i=h.raw+`
|
|
16
|
-
`+t.replace(this.rules.other.blockquoteSetextReplace2,""),l=this.blockquote(i);s[s.length-1]=l;let a=i.substring(l.raw.length).replace(/^\n/,""),o=a?a.split(`
|
|
17
|
-
`).length:0,c=o?e.slice(0,-o):e;c.length>0&&(r=`${r}
|
|
18
|
-
${c.join(`
|
|
19
|
-
`)}`),n=n.substring(0,n.length-h.text.length)+l.text;break}if(h?.type==="list"){let t=h.raw+`
|
|
20
|
-
`+e.join(`
|
|
21
|
-
`),i=this.list(t);s[s.length-1]=i,r=r.substring(0,r.length-h.raw.length)+i.raw,n=n.substring(0,n.length-h.raw.length)+i.raw,e=t.substring(s.at(-1).raw.length).split(`
|
|
22
|
-
`);continue}}return{type:"blockquote",raw:r,tokens:s,text:n}}}list(e){let t=this.rules.block.list.exec(e);if(t){let r=t[1].trim(),n=r.length>1,s={type:"list",raw:"",ordered:n,start:n?+r.slice(0,-1):"",loose:!1,items:[]};r=n?`\\d{1,9}\\${r.slice(-1)}`:`\\${r}`,this.options.pedantic&&(r=n?r:"[*+-]");let i=this.rules.other.listItemRegex(r),l=!1;for(;e;){let r=!1,n="",a="";if(!(t=i.exec(e))||this.rules.block.hr.test(e))break;n=t[0],e=e.substring(n.length);let o=t[2].split(`
|
|
23
|
-
`,1)[0],c=t[1].length,h=this.options.pedantic?e$(o,c):o.replace(this.rules.other.leadingSpaceTab,e=>e$(e,c)),p=e.split(`
|
|
24
|
-
`,1)[0],u=!h.trim(),g=0;if(this.options.pedantic?(g=2,a=h.trimStart()):u?g=c+1:(g=(g=h.search(this.rules.other.nonSpaceChar))>4?1:g,a=h.slice(g),g+=c),u&&this.rules.other.blankLine.test(p)&&(n+=p+`
|
|
25
|
-
`,e=e.substring(p.length+1),r=!0),!r){let t=this.rules.other.nextBulletRegex(g),r=this.rules.other.hrRegex(g),s=this.rules.other.fencesBeginRegex(g),i=this.rules.other.headingBeginRegex(g),l=this.rules.other.htmlBeginRegex(g),o=this.rules.other.blockquoteBeginRegex(g);for(;e;){let c=e.split(`
|
|
26
|
-
`,1)[0],k;if(p=c,k=this.options.pedantic?p=p.replace(this.rules.other.listReplaceNesting," "):p.replace(this.rules.other.leadingSpaceTab,e=>e.replace(this.rules.other.tabCharGlobal," ")),s.test(p)||i.test(p)||l.test(p)||o.test(p)||t.test(p)||r.test(p))break;if(k.search(this.rules.other.nonSpaceChar)>=g||!p.trim())a+=`
|
|
27
|
-
`+k.slice(g);else{if(u||h.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||s.test(h)||i.test(h)||r.test(h))break;a+=`
|
|
28
|
-
`+p}u=!p.trim(),n+=c+`
|
|
29
|
-
`,e=e.substring(c.length+1),h=k.slice(g)}}s.loose||(l?s.loose=!0:this.rules.other.doubleBlankLine.test(n)&&(l=!0)),s.items.push({type:"list_item",raw:n,task:!!this.options.gfm&&this.rules.other.listIsTask.test(a),loose:!1,text:a,tokens:[]}),s.raw+=n}let a=s.items.at(-1);if(!a)return;for(let e of(a.raw=a.raw.trimEnd(),a.text=a.text.trimEnd(),s.raw=s.raw.trimEnd(),s.items))if(this.lexer.state.top=!1,e.tokens=this.lexer.blockTokens(e.text,[]),!s.loose){let t=e.tokens.filter(e=>"space"===e.type);s.loose=t.length>0&&t.some(e=>this.rules.other.anyLine.test(e.raw))}for(let e of s.items){let t=e.tokens[0];if(e.task&&(t?.type==="text"||t?.type==="paragraph")){e.text=e.text.replace(this.rules.other.listReplaceTask,""),t.raw=t.raw.replace(this.rules.other.listReplaceTask,""),t.text=t.text.replace(this.rules.other.listReplaceTask,"");for(let e=this.lexer.inlineQueue.length-1;e>=0;e--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[e].src)){this.lexer.inlineQueue[e].src=this.lexer.inlineQueue[e].src.replace(this.rules.other.listReplaceTask,"");break}let r=this.rules.other.listTaskCheckbox.exec(e.raw);if(r){let t={type:"checkbox",raw:r[0]+" ",checked:"[ ]"!==r[0]};e.checked=t.checked,s.loose?e.tokens[0]&&["paragraph","text"].includes(e.tokens[0].type)&&"tokens"in e.tokens[0]&&e.tokens[0].tokens?(e.tokens[0].raw=t.raw+e.tokens[0].raw,e.tokens[0].text=t.raw+e.tokens[0].text,e.tokens[0].tokens.unshift(t)):e.tokens.unshift({type:"paragraph",raw:t.raw,text:t.raw,tokens:[t]}):e.tokens.unshift(t)}}else e.task&&(e.task=!1)}if(s.loose)for(let e of s.items)for(let t of(e.loose=!0,e.tokens))"text"===t.type&&(t.type="paragraph");return s}}html(e){let t=this.rules.block.html.exec(e);if(t){let e=ew(t[0]);return{type:"html",block:!0,raw:e,pre:"pre"===t[1]||"script"===t[1]||"style"===t[1],text:e}}}def(e){let t=this.rules.block.def.exec(e);if(t){let e=eS(t[1]).replace(this.rules.other.multipleSpaceGlobal," "),r=t[2]?t[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",n=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:e,raw:em(t[0],`
|
|
30
|
-
`),href:r,title:n}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let r=eb(t[1]),n=t[2].replace(this.rules.other.tableAlignChars,"").split("|"),s=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,"").split(`
|
|
31
|
-
`):[],i={type:"table",raw:em(t[0],`
|
|
32
|
-
`),header:[],align:[],rows:[]};if(r.length===n.length){for(let e of n)this.rules.other.tableAlignRight.test(e)?i.align.push("right"):this.rules.other.tableAlignCenter.test(e)?i.align.push("center"):this.rules.other.tableAlignLeft.test(e)?i.align.push("left"):i.align.push(null);for(let e=0;e<r.length;e++)i.header.push({text:r[e],tokens:this.lexer.inline(r[e]),header:!0,align:i.align[e]});for(let e of s)i.rows.push(eb(e,i.header.length).map((e,t)=>({text:e,tokens:this.lexer.inline(e),header:!1,align:i.align[t]})));return i}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t){let e=t[1].trim();return{type:"heading",raw:em(t[0],`
|
|
33
|
-
`),depth:"="===t[2].charAt(0)?1:2,text:e,tokens:this.lexer.inline(e)}}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let e=t[1].charAt(t[1].length-1)===`
|
|
34
|
-
`?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:e,tokens:this.lexer.inline(e)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let r="!"===t[0].charAt(0)?2:1;if(!this.options.pedantic&&eR(e,t[1],r,this.rules))return;let n=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(n)){if(!this.rules.other.endAngleBracket.test(n))return;let e=em(n.slice(0,-1),"\\");if((n.length-e.length)%2==0)return}else{let e=function(e){if(-1===e.indexOf(")"))return -1;let t=0;for(let r=0;r<e.length;r++)if("\\"===e[r])r++;else if("("===e[r])t++;else if(")"===e[r]&&--t<0)return r;return t>0?-2:-1}(t[2]);if(-2===e)return;if(e>-1){let r=(0===t[0].indexOf("!")?5:4)+t[1].length+e;t[2]=t[2].substring(0,e),t[0]=t[0].substring(0,r).trim(),t[3]=""}}let s=t[2],i="";if(this.options.pedantic){let e=this.rules.other.pedanticHrefTitle.exec(s);e&&(s=e[1],i=e[3])}else i=t[3]?t[3].slice(1,-1):"";return s=s.trim(),this.rules.other.startAngleBracket.test(s)&&(s=this.options.pedantic&&!this.rules.other.endAngleBracket.test(n)?s.slice(1):s.slice(1,-1)),ey(t,{href:s&&s.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer,this.rules)}}reflink(e,t){let r;if((r=this.rules.inline.reflink.exec(e))||(r=this.rules.inline.nolink.exec(e))){let n="!"===r[0].charAt(0)?2:1;if(!this.options.pedantic&&eR(e,r[1],n,this.rules))return;let s=t[eS((r[2]||r[1]).replace(this.rules.other.multipleSpaceGlobal," "))];if(!s){let e=r[0].charAt(0);return{type:"text",raw:e,text:e}}return ey(r,s,r[0],this.lexer,this.rules)}}emStrong(e,t,r=""){let n=this.rules.inline.emStrongLDelim.exec(e);if(!(!n||!n[1]&&!n[2]&&!n[3]&&!n[4]||n[4]&&r.match(this.rules.other.unicodeAlphaNumeric))&&(!(n[1]||n[3])||!r||this.rules.inline.punctuation.exec(r))){let s=[...n[0]].length-1,i,l,a=s,o=0,c=n[0][0],h=r===c,p="*"===c?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(p.lastIndex=0,t=t.slice(-1*e.length+s);null!==(n=p.exec(t));){if(!(i=n[1]||n[2]||n[3]||n[4]||n[5]||n[6]))continue;if(l=[...i].length,n[3]||n[4]){a+=l;continue}if(n[5]||n[6]){if(s%3&&!((s+l)%3)){o+=l;continue}if(h)break}if((a-=l)>0)continue;l=Math.min(l,l+a+o);let t=[...n[0]][0].length,r=e.slice(0,s+n.index+t+l);if(Math.min(s,l)%2){let e=r.slice(1,-1);return{type:"em",raw:r,text:e,tokens:this.lexer.inlineTokens(e)}}let c=r.slice(2,-2);return{type:"strong",raw:r,text:c,tokens:this.lexer.inlineTokens(c)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let e=t[2].replace(this.rules.other.newLineCharGlobal," "),r=this.rules.other.nonSpaceChar.test(e),n=this.rules.other.startingSpaceChar.test(e)&&this.rules.other.endingSpaceChar.test(e);return r&&n&&(e=e.substring(1,e.length-1)),{type:"codespan",raw:t[0],text:e}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e,t,r=""){let n=this.rules.inline.delLDelim.exec(e);if(n&&(!n[1]||!r||this.rules.inline.punctuation.exec(r))){let r=[...n[0]].length-1,s,i,l=r,a=this.rules.inline.delRDelim;for(a.lastIndex=0,t=t.slice(-1*e.length+r);null!==(n=a.exec(t));){if(!(s=n[1]||n[2]||n[3]||n[4]||n[5]||n[6])||(i=[...s].length)!==r)continue;if(n[3]||n[4]){l+=i;continue}if((l-=i)>0)continue;i=Math.min(i,i+l);let t=[...n[0]][0].length,a=e.slice(0,r+n.index+t+i),o=a.slice(r,-r);return{type:"del",raw:a,text:o,tokens:this.lexer.inlineTokens(o)}}}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let e,r;return r="@"===t[2]?"mailto:"+(e=t[1]):e=t[1],{type:"link",raw:t[0],text:e,href:r,autolink:!0,tokens:[{type:"text",raw:e,text:e}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let e,r;if("@"===t[2])r="mailto:"+(e=t[0]);else{let n;do n=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??"";while(n!==t[0])e=t[0],r="www."===t[1]?"http://"+t[0]:t[0]}return{type:"link",raw:t[0],text:e,href:r,autolink:!0,tokens:[{type:"text",raw:e,text:e}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let e=this.lexer.state.inRawBlock;return{type:"text",raw:t[0],text:e?t[0]:t[0].replace(c.numericCharacterReference,(e,t,r)=>{let n=void 0===t?Number.parseInt(r,16):Number.parseInt(t,10);return 0===n||n>1114111||n>=55296&&n<=57343?"�":String.fromCodePoint(n)}),escaped:e}}}},eT=class e{tokens;options;state;inlineQueue;tokenizer;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||s,this.options.tokenizer=this.options.tokenizer||new ez,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,linkEmitted:!1,top:!0};let t={other:c,block:eu.normal,inline:eg.normal};this.options.pedantic?(t.block=eu.pedantic,t.inline=eg.pedantic):this.options.gfm&&(t.block=eu.gfm,this.options.breaks?t.inline=eg.breaks:t.inline=eg.gfm),this.tokenizer.rules=t}static get rules(){return{block:eu,inline:eg}}static lex(t,r){return new e(r).lex(t)}static lexInline(t,r){return new e(r).inlineTokens(t)}lex(e){e=e.replace(c.carriageReturn,`
|
|
35
|
-
`),this.blockTokens(e,this.tokens);for(let e=0;e<this.inlineQueue.length;e++){let t=this.inlineQueue[e];this.inlineTokens(t.src,t.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],r=!1){this.tokenizer.lexer=this,this.options.pedantic&&(e=e.replace(c.tabCharGlobal," ").replace(c.spaceLine,""));let n=1/0;for(;e;){let s;if(e.length<n)n=e.length;else{this.infiniteLoopError(e.charCodeAt(0));break}if(this.options.extensions?.block?.some(r=>!!(s=r.call({lexer:this},e,t))&&(e=e.substring(s.raw.length),t.push(s),!0)))continue;if(s=this.tokenizer.space(e)){e=e.substring(s.raw.length);let r=t.at(-1);1===s.raw.length&&void 0!==r?r.raw+=`
|
|
36
|
-
`:t.push(s);continue}if(s=this.tokenizer.code(e)){e=e.substring(s.raw.length);let r=t.at(-1);r?.type==="paragraph"||r?.type==="text"?(r.raw+=(r.raw.endsWith(`
|
|
37
|
-
`)?"":`
|
|
38
|
-
`)+s.raw,r.text+=`
|
|
39
|
-
`+s.text,this.inlineQueue.at(-1).src=r.text):t.push(s);continue}if((s=this.tokenizer.fences(e))||(s=this.tokenizer.heading(e))||(s=this.tokenizer.hr(e))||(s=this.tokenizer.blockquote(e))||(s=this.tokenizer.list(e))||(s=this.tokenizer.html(e))){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.def(e)){e=e.substring(s.raw.length);let r=t.at(-1);r?.type==="paragraph"||r?.type==="text"?(r.raw+=(r.raw.endsWith(`
|
|
40
|
-
`)?"":`
|
|
41
|
-
`)+s.raw,r.text+=`
|
|
42
|
-
`+s.raw,this.inlineQueue.at(-1).src=r.text):this.tokens.links[s.tag]||(this.tokens.links[s.tag]={href:s.href,title:s.title},t.push(s));continue}if((s=this.tokenizer.table(e))||(s=this.tokenizer.lheading(e))){e=e.substring(s.raw.length),t.push(s);continue}let i=e;if(this.options.extensions?.startBlock){let t=1/0,r=e.slice(1),n;this.options.extensions.startBlock.forEach(e=>{"number"==typeof(n=e.call({lexer:this},r))&&n>=0&&(t=Math.min(t,n))}),t<1/0&&t>=0&&(i=e.substring(0,t+1))}if(this.state.top&&(s=this.tokenizer.paragraph(i))){let n=t.at(-1);r&&n?.type==="paragraph"?(n.raw+=(n.raw.endsWith(`
|
|
43
|
-
`)?"":`
|
|
44
|
-
`)+s.raw,n.text+=`
|
|
45
|
-
`+s.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=n.text):t.push(s),r=i.length!==e.length,e=e.substring(s.raw.length);continue}if(s=this.tokenizer.text(e)){e=e.substring(s.raw.length);let r=t.at(-1);r?.type==="text"?(r.raw+=(r.raw.endsWith(`
|
|
46
|
-
`)?"":`
|
|
47
|
-
`)+s.raw,r.text+=`
|
|
48
|
-
`+s.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=r.text):t.push(s);continue}if(e){this.infiniteLoopError(e.charCodeAt(0));break}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}linkInText(e){if(!e.includes("["))return!1;let t=this.tokenizer.rules.inline.link;for(let r of e.matchAll(this.tokenizer.rules.inline.blockSkip))if(t.test(r[0])&&"!"!==e.charAt(r.index-1))return!0;for(let t of e.matchAll(this.tokenizer.rules.inline.reflinkSearch)){let e=t[0],r=e.lastIndexOf("[");if(!("!"===e.charAt(0)||!Object.hasOwn(this.tokens.links,eS(e.slice(r+1,-1))))&&!(r>1&&this.linkInText(e.slice(1,r-1))))return!0}return!1}inlineTokens(e,t=[]){this.tokenizer.lexer=this;let r=e;if(this.tokens.links&&e.includes("[")){let e=this.tokenizer.rules.inline.reflinkSearch,t=r=>{let n=r.lastIndexOf("[");if(!Object.hasOwn(this.tokens.links,eS(r.slice(n+1,-1))))return r;if(n>1&&"!"!==r.charAt(0)){let s=r.slice(1,n-1);if(this.linkInText(s))return"["+s.replace(e,t)+"]["+"a".repeat(r.length-n-2)+"]"}return"["+"a".repeat(r.length-2)+"]"};r=r.replace(e,t)}r=(r=r.replace(this.tokenizer.rules.inline.anyPunctuation,e=>"+".repeat(e.length))).replace(this.tokenizer.rules.inline.blockSkip,(e,t,r)=>{let n=r?r.length:0;return e.slice(0,n)+"["+"a".repeat(e.length-n-2)+"]"}),r=this.options.hooks?.emStrongMask?.call({lexer:this},r)??r;let n=!1,s="",i=1/0;for(;e;){let l;if(e.length<i)i=e.length;else{this.infiniteLoopError(e.charCodeAt(0));break}if(n||(s=""),n=!1,this.options.extensions?.inline?.some(r=>!!(l=r.call({lexer:this},e,t))&&(e=e.substring(l.raw.length),t.push(l),!0)))continue;if((l=this.tokenizer.escape(e))||(l=this.tokenizer.tag(e))||(l=this.tokenizer.link(e))){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(l.raw.length);let r=t.at(-1);"text"===l.type&&r?.type==="text"?(r.raw+=l.raw,r.text+=l.text):t.push(l);continue}if((l=this.tokenizer.emStrong(e,r,s))||(l=this.tokenizer.codespan(e))||(l=this.tokenizer.br(e))||(l=this.tokenizer.del(e,r,s))||(l=this.tokenizer.autolink(e))||!this.state.inLink&&(l=this.tokenizer.url(e))){e=e.substring(l.raw.length),t.push(l);continue}let a=e;if(this.options.extensions?.startInline){let t=1/0,r=e.slice(1),n;this.options.extensions.startInline.forEach(e=>{"number"==typeof(n=e.call({lexer:this},r))&&n>=0&&(t=Math.min(t,n))}),t<1/0&&t>=0&&(a=e.substring(0,t+1))}if(l=this.tokenizer.inlineText(a)){e=e.substring(l.raw.length),"_"!==l.raw.slice(-1)&&(s=l.raw.slice(-1)),n=!0;let r=t.at(-1);r?.type==="text"?(r.raw+=l.raw,r.text+=l.text):t.push(l);continue}if(e){this.infiniteLoopError(e.charCodeAt(0));break}}return t}infiniteLoopError(e){let t="Infinite loop on byte: "+e;if(this.options.silent)console.error(t);else throw Error(t)}},eA=class{options;parser;constructor(e){this.options=e||s}space(e){return""}code({text:e,lang:t,escaped:r}){let n=(t||"").match(c.notSpaceStart)?.[0],s=e?e.replace(c.endingNewline,"")+`
|
|
49
|
-
`:"";return n?'<pre><code class="language-'+ef(n)+'">'+(r?s:ef(s,!0))+`</code></pre>
|
|
50
|
-
`:"<pre><code>"+(r?s:ef(s,!0))+`</code></pre>
|
|
51
|
-
`}blockquote({tokens:e}){return`<blockquote>
|
|
52
|
-
${this.parser.parse(e)}</blockquote>
|
|
53
|
-
`}html({text:e}){return e}def(e){return""}heading({tokens:e,depth:t}){return`<h${t}>${this.parser.parseInline(e)}</h${t}>
|
|
54
|
-
`}hr(e){return`<hr>
|
|
55
|
-
`}list(e){let t=e.ordered,r=e.start,n="";for(let t=0;t<e.items.length;t++){let r=e.items[t];n+=this.listitem(r)}let s=t?"ol":"ul";return"<"+s+(t&&1!==r?' start="'+r+'"':"")+`>
|
|
56
|
-
`+n+"</"+s+`>
|
|
57
|
-
`}listitem(e){return`<li>${this.parser.parse(e.tokens)}</li>
|
|
58
|
-
`}checkbox({checked:e}){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"> '}paragraph({tokens:e}){return`<p>${this.parser.parseInline(e)}</p>
|
|
59
|
-
`}table(e){let t="",r="";for(let t=0;t<e.header.length;t++)r+=this.tablecell(e.header[t]);t+=this.tablerow({text:r});let n="";for(let t=0;t<e.rows.length;t++){let s=e.rows[t];r="";for(let e=0;e<s.length;e++)r+=this.tablecell(s[e]);n+=this.tablerow({text:r})}return n&&(n=`<tbody>${n}</tbody>`),`<table>
|
|
60
|
-
<thead>
|
|
61
|
-
`+t+`</thead>
|
|
62
|
-
`+n+`</table>
|
|
63
|
-
`}tablerow({text:e}){return`<tr>
|
|
64
|
-
${e}</tr>
|
|
65
|
-
`}tablecell(e){let t=this.parser.parseInline(e.tokens),r=e.header?"th":"td";return(e.align?`<${r} align="${e.align}">`:`<${r}>`)+t+`</${r}>
|
|
66
|
-
`}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${ef(e,!0)}</code>`}br(e){return"<br>"}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,text:r,tokens:n,autolink:s}){let i=s?ef(r,!0):this.parser.parseInline(n),l=ex(e);if(null===l)return i;let a='<a href="'+(e=ef(l,s))+'"';return t&&(a+=' title="'+ef(t)+'"'),a+=">"+i+"</a>"}image({href:e,title:t,text:r,tokens:n}){n&&(r=this.parser.parseInline(n,this.parser.textRenderer));let s=ex(e);if(null===s)return ef(r);e=s;let i=`<img src="${ef(e)}" alt="${ef(r)}"`;return t&&(i+=` title="${ef(t)}"`),i+=">"}text(e){return"tokens"in e&&e.tokens?this.parser.parseInline(e.tokens):"escaped"in e&&e.escaped?e.text:ef(e.text)}},e_=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return""+e}image({text:e}){return""+e}br(){return""}checkbox({raw:e}){return e}},eP=class e{options;renderer;textRenderer;constructor(e){this.options=e||s,this.options.renderer=this.options.renderer||new eA,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new e_}static parse(t,r){return new e(r).parse(t)}static parseInline(t,r){return new e(r).parseInline(t)}parse(e){this.renderer.parser=this;let t="";for(let r=0;r<e.length;r++){let n=e[r];if(this.options.extensions?.renderers?.[n.type]){let e=this.options.extensions.renderers[n.type].call({parser:this},n);if(!1!==e||!["space","hr","heading","code","table","blockquote","list","checkbox","html","def","paragraph","text"].includes(n.type)){t+=e||"";continue}}switch(n.type){case"space":t+=this.renderer.space(n);break;case"hr":t+=this.renderer.hr(n);break;case"heading":t+=this.renderer.heading(n);break;case"code":t+=this.renderer.code(n);break;case"table":t+=this.renderer.table(n);break;case"blockquote":t+=this.renderer.blockquote(n);break;case"list":t+=this.renderer.list(n);break;case"checkbox":t+=this.renderer.checkbox(n);break;case"html":t+=this.renderer.html(n);break;case"def":t+=this.renderer.def(n);break;case"paragraph":t+=this.renderer.paragraph(n);break;case"text":t+=this.renderer.text(n);break;default:{let e='Token with "'+n.type+'" type was not found.';if(this.options.silent)return console.error(e),"";throw Error(e)}}}return t}parseInline(e,t=this.renderer){this.renderer.parser=this;let r="";for(let n=0;n<e.length;n++){let s=e[n];if(this.options.extensions?.renderers?.[s.type]){let e=this.options.extensions.renderers[s.type].call({parser:this},s);if(!1!==e||!["escape","html","link","image","checkbox","strong","em","codespan","br","del","text"].includes(s.type)){r+=e||"";continue}}switch(s.type){case"escape":case"text":r+=t.text(s);break;case"html":r+=t.html(s);break;case"link":r+=t.link(s);break;case"image":r+=t.image(s);break;case"checkbox":r+=t.checkbox(s);break;case"strong":r+=t.strong(s);break;case"em":r+=t.em(s);break;case"codespan":r+=t.codespan(s);break;case"br":r+=t.br(s);break;case"del":r+=t.del(s);break;default:{let e='Token with "'+s.type+'" type was not found.';if(this.options.silent)return console.error(e),"";throw Error(e)}}}return r}},eC=class{options;block;constructor(e){this.options=e||s}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens","emStrongMask"]);static passThroughHooksRespectAsync=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(e=this.block){return e?eT.lex:eT.lexInline}provideParser(e=this.block){return e?eP.parse:eP.parseInline}},eL=new class{defaults=n();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=eP;Renderer=eA;TextRenderer=e_;Lexer=eT;Tokenizer=ez;Hooks=eC;constructor(...e){this.use(...e)}walkTokens(e,t){let r=[];for(let n of e)switch(r=r.concat(t.call(this,n)),n.type){case"table":for(let e of n.header)r=r.concat(this.walkTokens(e.tokens,t));for(let e of n.rows)for(let n of e)r=r.concat(this.walkTokens(n.tokens,t));break;case"list":r=r.concat(this.walkTokens(n.items,t));break;default:{let e=n;this.defaults.extensions?.childTokens?.[e.type]?this.defaults.extensions.childTokens[e.type].forEach(n=>{let s=e[n].flat(1/0);r=r.concat(this.walkTokens(s,t))}):e.tokens&&(r=r.concat(this.walkTokens(e.tokens,t)))}}return r}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(e=>{let r={...e};if(r.async=this.defaults.async||r.async||!1,e.extensions&&(e.extensions.forEach(e=>{if(!e.name)throw Error("extension name required");if("renderer"in e){let r=t.renderers[e.name];r?t.renderers[e.name]=function(...t){let n=e.renderer.apply(this,t);return!1===n&&(n=r.apply(this,t)),n}:t.renderers[e.name]=e.renderer}if("tokenizer"in e){if(!e.level||"block"!==e.level&&"inline"!==e.level)throw Error("extension level must be 'block' or 'inline'");let r=t[e.level];r?r.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&("block"===e.level?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:"inline"===e.level&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}"childTokens"in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)}),r.extensions=t),e.renderer){let t=this.defaults.renderer||new eA(this.defaults);for(let r in e.renderer){if(!(r in t))throw Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;let n=e.renderer[r],s=t[r];t[r]=(...e)=>{let r=n.apply(t,e);return!1===r&&(r=s.apply(t,e)),r||""}}r.renderer=t}if(e.tokenizer){let t=this.defaults.tokenizer||new ez(this.defaults);for(let r in e.tokenizer){if(!(r in t))throw Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;let n=e.tokenizer[r],s=t[r];t[r]=(...e)=>{let r=n.apply(t,e);return!1===r&&(r=s.apply(t,e)),r}}r.tokenizer=t}if(e.hooks){let t=this.defaults.hooks||new eC;for(let r in e.hooks){if(!(r in t))throw Error(`hook '${r}' does not exist`);if(["options","block"].includes(r))continue;let n=e.hooks[r],s=t[r];eC.passThroughHooks.has(r)?t[r]=e=>{if(this.defaults.async&&eC.passThroughHooksRespectAsync.has(r))return(async()=>{let r=await n.call(t,e);return s.call(t,r)})();let i=n.call(t,e);return s.call(t,i)}:t[r]=(...e)=>{if(this.defaults.async)return(async()=>{let r=await n.apply(t,e);return!1===r&&(r=await s.apply(t,e)),r})();let r=n.apply(t,e);return!1===r&&(r=s.apply(t,e)),r}}r.hooks=t}if(e.walkTokens){let t=this.defaults.walkTokens,n=e.walkTokens;r.walkTokens=function(e){let r=[];return r.push(n.call(this,e)),t&&(r=r.concat(t.call(this,e))),r}}this.defaults={...this.defaults,...r}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return eT.lex(e,t??this.defaults)}parser(e,t){return eP.parse(e,t??this.defaults)}parseMarkdown(e){return(t,r)=>{let n={...r},s={...this.defaults,...n},i=this.onError(!!s.silent,!!s.async);if(!0===this.defaults.async&&!1===n.async)return i(Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof t>"u"||null===t)return i(Error("marked(): input parameter is undefined or null"));if("string"!=typeof t)return i(Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected"));if(s.hooks&&(s.hooks.options=s,s.hooks.block=e),s.async)return(async()=>{let r=s.hooks?await s.hooks.preprocess(t):t,n=await (s.hooks?await s.hooks.provideLexer(e):e?eT.lex:eT.lexInline)(r,s),i=s.hooks?await s.hooks.processAllTokens(n):n;s.walkTokens&&await Promise.all(this.walkTokens(i,s.walkTokens));let l=await (s.hooks?await s.hooks.provideParser(e):e?eP.parse:eP.parseInline)(i,s);return s.hooks?await s.hooks.postprocess(l):l})().catch(i);try{s.hooks&&(t=s.hooks.preprocess(t));let r=(s.hooks?s.hooks.provideLexer(e):e?eT.lex:eT.lexInline)(t,s);s.hooks&&(r=s.hooks.processAllTokens(r)),s.walkTokens&&this.walkTokens(r,s.walkTokens);let n=(s.hooks?s.hooks.provideParser(e):e?eP.parse:eP.parseInline)(r,s);return s.hooks&&(n=s.hooks.postprocess(n)),n}catch(e){return i(e)}}}onError(e,t){return r=>{if(r.message+=`
|
|
67
|
-
Please report this to https://github.com/markedjs/marked.`,e){let e="<p>An error occurred:</p><pre>"+ef(r.message+"",!0)+"</pre>";return t?Promise.resolve(e):e}if(t)return Promise.reject(r);throw r}}};function eE(e,t){return eL.parse(e,t)}eE.options=eE.setOptions=function(e){return eL.setOptions(e),eE.defaults=eL.defaults,s=eE.defaults,eE},eE.getDefaults=n,eE.defaults=s,eE.use=function(...e){return eL.use(...e),eE.defaults=eL.defaults,s=eE.defaults,eE},eE.walkTokens=function(e,t){return eL.walkTokens(e,t)},eE.parseInline=eL.parseInline,eE.Parser=eP,eE.parser=eP.parse,eE.Renderer=eA,eE.TextRenderer=e_,eE.Lexer=eT,eE.lexer=eT.lex,eE.Tokenizer=ez,eE.Hooks=eC,eE.parse=eE,eE.options,eE.setOptions,eE.walkTokens,eE.parseInline,eP.parse,eT.lex;var eI=e.i(975157);eE.setOptions({gfm:!0,breaks:!1}),eE.use({renderer:{code({text:e,lang:t}){if("mermaid"===t){let t=e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">");return`<div class="mermaid not-prose">${t}</div>`}return!1}}}),eE.use({renderer:{heading({tokens:e,depth:t}){let r=this.parser.parseInline(e),n=r.replace(/<[^>]*>/g,"").toLowerCase().replace(/[^\w\s-]/g,"").replace(/\s+/g,"-");return`<h${t} id="${n}">${r}</h${t}>
|
|
68
|
-
`}}});let ev=(0,r.memo)(function({content:n,className:s}){let i=eE.parse(n).replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,"").replace(/\son\w+="[^"]*"/gi,"").replace(/\son\w+='[^']*'/gi,""),l=(0,r.useRef)(null);return(0,r.useEffect)(()=>{let t=l.current;if(!t)return;let r=!1,n=setTimeout(()=>{r||e.A(528427).then(e=>{if(r||!t.isConnected)return;let n=Array.from(t.querySelectorAll(".mermaid:not([data-processed])"));0!==n.length&&(e.default.initialize({startOnLoad:!1,theme:"dark",darkMode:!0,securityLevel:"antiscript"}),e.default.run({nodes:n}).catch(e=>{console.error("[mermaid]",e)}))})},120);return()=>{r=!0,clearTimeout(n)}},[i]),(0,t.jsx)("div",{ref:l,className:(0,eI.cn)("prose-dark",s),dangerouslySetInnerHTML:{__html:i}})});e.s(["MarkdownRenderer",0,ev],998822)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,240595,e=>{"use strict";var t=e.i(83790);let s={name:"loader-circle",size:24,node:[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],aliases:["loader-2"]};s.node;let a=(0,t.default)(s);e.s(["Loader2",0,a],240595)},155515,e=>{"use strict";var t=e.i(83790);let s={name:"plus",size:24,node:[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]};s.node;let a=(0,t.default)(s);e.s(["Plus",0,a],155515)},955787,e=>{"use strict";var t=e.i(72345),s=e.i(180338),a=e.i(763371),r=e.i(155515),n=e.i(975157),o=e.i(487486),l=e.i(34086);function d({status:e,tasks:a,onMoveTask:r,onOpenTask:i}){let[c,x]=(0,s.useState)(!1);return(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 mb-1",children:[(0,t.jsx)("span",{className:"text-sm",children:l.STATUS_ICONS[e]}),(0,t.jsx)("span",{className:"text-xs font-mono font-semibold text-muted uppercase tracking-wider",children:e}),(0,t.jsx)(o.Badge,{variant:"secondary",className:"ml-auto font-mono text-xs h-5 px-1.5",children:a.length})]}),(0,t.jsxs)("div",{className:(0,n.cn)("flex flex-col gap-2 min-h-[60px] rounded-lg transition-colors",c&&"ring-1 ring-accent/50 bg-accent/5"),onDragOver:e=>{e.preventDefault(),x(!0)},onDragLeave:e=>{e.currentTarget.contains(e.relatedTarget)||x(!1)},onDrop:t=>{t.preventDefault(),x(!1);let s=t.dataTransfer.getData("taskId");s&&r(s,e)},children:[(a??[]).map(e=>(0,t.jsx)(l.TaskCard,{task:e,onMove:r,onOpen:()=>i(e)},e.id)),0===a.length&&(0,t.jsx)("div",{className:"border border-dashed border-border rounded-lg py-6 text-center text-xs text-muted",children:"empty"})]})]})}function i({board:e,summary:s,onMoveTask:a,onOpenTask:n,onNewTask:o}){return(0,t.jsxs)("div",{className:"p-6",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-6",children:[(0,t.jsx)("h1",{className:"font-display text-xl font-semibold tracking-tight",children:"Task Board"}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsxs)("span",{className:"text-xs font-mono text-muted",children:[s?.tasks.total||0," tasks"]}),(0,t.jsxs)("button",{onClick:o,className:"flex items-center gap-1.5 px-3 py-1.5 bg-accent text-white rounded-lg text-sm font-medium hover:bg-accent/90 transition-colors",children:[(0,t.jsx)(r.Plus,{className:"w-3.5 h-3.5"}),"New Task"]})]})]}),(0,t.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-4 gap-4",children:["in-progress","todo","blocked","done"].map(s=>(0,t.jsx)(d,{status:s,tasks:e[s],onMoveTask:a,onOpenTask:n},s))})]})}var c=e.i(592381),x=e.i(287272),m=e.i(765470),u=e.i(240595);let p=[{value:"XS (< 1 hr)",label:"XS — under 1 hr"},{value:"S (1-2 hrs)",label:"S — 1–2 hrs"},{value:"M (3-4 hrs)",label:"M — 3–4 hrs"},{value:"L (5-8 hrs)",label:"L — 5–8 hrs"},{value:"XL (> 1 day)",label:"XL — over a day"}];function b({open:e,onOpenChange:a,rootParam:o,onTaskCreated:l}){let[d,i]=(0,s.useState)(""),[c,h]=(0,s.useState)(""),[g,f]=(0,s.useState)(""),[j,v]=(0,s.useState)(""),[N,k]=(0,s.useState)(""),[y,w]=(0,s.useState)(""),[T,S]=(0,s.useState)(!1);async function C(e){if(e.preventDefault(),!d.trim())return void w("Title is required");S(!0),w("");try{let e=await fetch(`/api/tasks/create${o}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:d.trim(),phase:c.trim()||void 0,size:g||void 0,description:j.trim()||void 0,dependsOn:N.trim()||void 0})});if(!e.ok){let t=await e.json();w(t.error??"Failed to create task"),S(!1);return}S(!1),l(),a(!1)}catch{w("Network error — please try again"),S(!1)}}return(0,s.useEffect)(()=>{e&&(i(""),h(""),f(""),v(""),k(""),w(""),S(!1))},[e]),(0,t.jsx)(x.Root,{open:e,onOpenChange:a,children:(0,t.jsxs)(x.Portal,{children:[(0,t.jsx)(x.Overlay,{className:"fixed inset-0 z-50 bg-black/60"}),(0,t.jsxs)(x.Content,{className:"fixed z-50 top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-full max-w-lg bg-surface border border-border rounded-xl shadow-2xl",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-5 py-4 border-b border-border",children:[(0,t.jsx)(x.Title,{className:"font-semibold text-txt",children:"New Task"}),(0,t.jsx)(x.Close,{className:"text-muted hover:text-txt transition-colors",children:(0,t.jsx)(m.X,{className:"w-4 h-4"})})]}),(0,t.jsxs)("form",{onSubmit:C,className:"p-5 space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsxs)("label",{className:"block text-xs font-medium text-muted uppercase tracking-wide",children:["Title ",(0,t.jsx)("span",{className:"text-danger",children:"*"})]}),(0,t.jsx)("input",{autoFocus:!0,type:"text",value:d,onChange:e=>i(e.target.value),placeholder:"e.g. Add drag-and-drop to kanban",className:"w-full px-3 py-2 bg-surface2 border border-border rounded-lg text-sm text-txt placeholder:text-muted focus:outline-hidden focus:border-accent transition-colors"})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-muted uppercase tracking-wide",children:"Phase"}),(0,t.jsx)("input",{type:"text",value:c,onChange:e=>h(e.target.value),placeholder:"e.g. 1 — Core",className:"w-full px-3 py-2 bg-surface2 border border-border rounded-lg text-sm text-txt placeholder:text-muted focus:outline-hidden focus:border-accent transition-colors"})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-muted uppercase tracking-wide",children:"Size"}),(0,t.jsxs)("select",{value:g,onChange:e=>f(e.target.value),className:"w-full px-3 py-2 bg-surface2 border border-border rounded-lg text-sm text-txt focus:outline-hidden focus:border-accent transition-colors",children:[(0,t.jsx)("option",{value:"",children:"—"}),p.map(e=>(0,t.jsx)("option",{value:e.value,children:e.label},e.value))]})]})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-muted uppercase tracking-wide",children:"Depends on"}),(0,t.jsx)("input",{type:"text",value:N,onChange:e=>k(e.target.value),placeholder:"e.g. T001, T003",className:"w-full px-3 py-2 bg-surface2 border border-border rounded-lg text-sm text-txt placeholder:text-muted focus:outline-hidden focus:border-accent transition-colors"})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("label",{className:"block text-xs font-medium text-muted uppercase tracking-wide",children:"Description"}),(0,t.jsx)("textarea",{value:j,onChange:e=>v(e.target.value),placeholder:"What needs to be built?",rows:3,className:"w-full px-3 py-2 bg-surface2 border border-border rounded-lg text-sm text-txt placeholder:text-muted focus:outline-hidden focus:border-accent transition-colors resize-none"})]}),y&&(0,t.jsx)("p",{className:"text-sm text-danger",children:y}),(0,t.jsxs)("div",{className:"flex items-center justify-end gap-2 pt-1",children:[(0,t.jsx)(x.Close,{type:"button",className:"px-4 py-2 text-sm text-muted hover:text-txt transition-colors",children:"Cancel"}),(0,t.jsxs)("button",{type:"submit",disabled:T||!d.trim(),className:(0,n.cn)("flex items-center gap-2 px-4 py-2 rounded-lg text-sm font-medium transition-colors","bg-accent text-white hover:bg-accent/90 disabled:opacity-50 disabled:cursor-not-allowed"),children:[T?(0,t.jsx)(u.Loader2,{className:"w-4 h-4 animate-spin"}):(0,t.jsx)(r.Plus,{className:"w-4 h-4"}),T?"Creating…":"Create Task"]})]})]})]})]})})}e.s(["default",0,function(){let{board:e,summary:r,moveTask:n,refresh:o,rootParam:l}=(0,a.useApp)(),[d,x]=(0,s.useState)(null),[m,u]=(0,s.useState)(!1);return e?(0,t.jsxs)("div",{className:"relative flex-1",children:[(0,t.jsx)(i,{board:e,summary:r,onMoveTask:n,onOpenTask:x,onNewTask:()=>u(!0)}),(0,t.jsx)(c.TaskDetailPanel,{task:d,onClose:()=>x(null),onMove:n}),(0,t.jsx)(b,{open:m,onOpenChange:u,rootParam:l,onTaskCreated:o})]}):null}],955787)},329090,e=>{"use strict";var t=e.i(72345);let s={task_updated:"🔨",decision_logged:"📝",memory_updated:"🧠",doc_read:"📄",session_start:"🤖",roadmap_updated:"🗺️"};function a(e){let t=(Date.now()-new Date(e).getTime())/1e3;return t<60?"just now":t<3600?`${Math.floor(t/60)}m ago`:t<86400?`${Math.floor(t/3600)}h ago`:`${Math.floor(t/86400)}d ago`}e.s(["ActivityEventRow",0,function({event:e}){return(0,t.jsxs)("div",{className:"flex gap-4 pb-4 animate-fade-in",children:[(0,t.jsx)("div",{className:"relative shrink-0 w-8 h-8 rounded-full bg-surface2 border border-border flex items-center justify-center text-sm z-10",children:s[e.type]||"•"}),(0,t.jsxs)("div",{className:"flex-1 pt-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 mb-0.5",children:[(0,t.jsx)("span",{className:"text-sm font-medium text-txt",children:e.title}),"ai"===e.actor&&(0,t.jsx)("span",{className:"text-xs px-1.5 py-0.5 rounded-sm bg-accent/10 text-accent border border-accent/20 font-mono",children:"AI"})]}),e.detail&&(0,t.jsx)("p",{className:"text-xs text-muted truncate",children:e.detail}),(0,t.jsx)("p",{className:"text-xs text-muted/60 mt-0.5 font-mono",children:a(e.timestamp)})]})]})},"timeAgo",0,a])},34086,e=>{"use strict";var t=e.i(72345),s=e.i(180338),a=e.i(975157),r=e.i(487486),n=e.i(519455);let o={todo:"text-muted border-border2","in-progress":"text-amber border-amber/30 bg-amber/5",blocked:"text-danger border-danger/30 bg-danger/5",done:"text-teal border-teal/30 bg-teal/5",cancelled:"text-muted border-border line-through"},l={todo:"border-border2 text-muted","in-progress":"border-amber/40 text-amber",blocked:"border-danger/40 text-danger",done:"border-teal/40 text-teal",cancelled:"border-border text-muted"},d={todo:"📋","in-progress":"🔨",blocked:"🚫",done:"✅",cancelled:"❌"},i={todo:["in-progress"],"in-progress":["done","blocked","todo"],blocked:["in-progress","cancelled"],done:["todo"],cancelled:["todo"]};e.s(["STATUS_ICONS",0,d,"TaskCard",0,function({task:e,onMove:c,onOpen:x}){let[m,u]=(0,s.useState)(!1),p=i[e.status]||[];return(0,t.jsxs)("div",{draggable:!0,onDragStart:t=>{t.dataTransfer.setData("taskId",e.id),t.dataTransfer.effectAllowed="move",u(!0)},onDragEnd:()=>u(!1),style:{viewTransitionName:`task-${e.file.replace(/[^a-zA-Z0-9_-]/g,"_")}`},className:(0,a.cn)("group relative bg-surface border rounded-lg p-3 text-sm transition-[border-color,opacity] hover:border-border2",o[e.status]||"border-border",m&&"opacity-50 cursor-grabbing"),children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-1.5",children:[(0,t.jsx)("span",{className:"text-xs font-mono text-muted",children:e.id}),(0,t.jsx)(r.Badge,{variant:"outline",className:(0,a.cn)("text-[10px] h-4 px-1.5 font-normal",l[e.status]),children:"in-progress"===e.status?"active":e.status})]}),(0,t.jsx)("p",{className:"font-medium text-txt text-sm leading-snug mb-2",children:e.title}),e.phase&&(0,t.jsx)("p",{className:"text-xs text-muted mb-2",children:e.phase}),(0,t.jsxs)("div",{className:"flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity",children:[(0,t.jsx)(n.Button,{variant:"ghost",size:"sm",className:"h-6 text-xs px-2",onClick:x,children:"open"}),p.map(s=>(0,t.jsxs)(n.Button,{variant:"ghost",size:"sm",className:"h-6 text-xs px-2",onClick:()=>c(e.id,s),children:[d[s]," ","in-progress"===s?"start":s]},s))]})]})}])},592381,e=>{"use strict";var t=e.i(72345),s=e.i(180338),a=e.i(975157),r=e.i(980376),n=e.i(998822),o=e.i(34086),l=e.i(910172),d=e.i(763371),i=e.i(329090);function c({taskId:e,onNavigate:a}){let{rootParam:r}=(0,d.useApp)(),n=(0,l.useRouter)(),[o,x]=(0,s.useState)(null);return(0,s.useEffect)(()=>{let t=r?`${r}&`:"?";fetch(`/api/sessions${t}taskId=${encodeURIComponent(e)}`).then(e=>e.json()).then(e=>x(Array.isArray(e)?e:[])).catch(()=>x([]))},[r,e]),(0,t.jsxs)("div",{className:"px-5 py-3 border-b border-border shrink-0",children:[(0,t.jsx)("p",{className:"mb-2 text-xs font-mono uppercase tracking-wide text-muted",children:"Sessions"}),null===o?null:0===o.length?(0,t.jsx)("p",{className:"text-xs text-muted",children:"No recorded sessions"}):(0,t.jsx)("div",{className:"flex max-h-40 flex-col gap-1 overflow-y-auto",children:o.map(e=>(0,t.jsxs)("button",{onClick:()=>{a(),n.push(`/activity?session=${encodeURIComponent(e.id)}`)},className:"flex items-center gap-2 rounded-sm px-2 py-1 text-left text-xs hover:bg-surface2",children:[(0,t.jsx)("span",{children:"ai"===e.actor?"🤖":"👤"}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-muted",children:(0,i.timeAgo)(e.start)}),(0,t.jsx)("span",{className:"truncate text-txt",children:e.headline})]},e.id))})]})}let x={todo:["in-progress"],"in-progress":["done","blocked","todo"],blocked:["in-progress","cancelled"],done:["todo"],cancelled:["todo"]},m={"in-progress":"start",done:"done",blocked:"blocked",todo:"backlog",cancelled:"cancel"},u={todo:"text-muted border-border2","in-progress":"text-amber border-amber/30 bg-amber/5",blocked:"text-danger border-danger/30 bg-danger/5",done:"text-teal border-teal/30 bg-teal/5",cancelled:"text-muted border-border"};e.s(["TaskDetailPanel",0,function({task:e,onClose:l,onMove:d}){let[i,p]=(0,s.useState)(e);e&&e!==i&&p(e);let b=i&&x[i.status]||[];return(0,t.jsx)(r.Sheet,{open:!!e,onOpenChange:e=>{e||l()},children:(0,t.jsx)(r.SheetContent,{side:"right","aria-describedby":void 0,className:"p-0 gap-0 sm:max-w-[420px] border-border flex flex-col",children:i&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex flex-col gap-1 min-w-0 pl-5 pr-12 py-4 border-b border-border shrink-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"font-mono text-xs text-muted",children:i.id}),(0,t.jsxs)("span",{className:(0,a.cn)("text-xs px-1.5 py-0.5 rounded-sm border font-mono",u[i.status]),children:[o.STATUS_ICONS[i.status]," ",i.status]})]}),(0,t.jsx)(r.SheetTitle,{className:"font-medium text-txt text-sm leading-snug",children:i.title})]}),b.length>0&&(0,t.jsx)("div",{className:"flex items-center gap-2 px-5 py-3 border-b border-border shrink-0",children:b.map(e=>(0,t.jsxs)("button",{onClick:()=>{d(i.id,e),l()},className:"text-xs px-2.5 py-1 rounded-sm bg-surface2 border border-border text-muted hover:text-txt hover:border-border2 transition-colors",children:[o.STATUS_ICONS[e]," ",m[e]||e]},e))}),(0,t.jsx)(c,{taskId:i.id,onNavigate:l},i.id),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto px-5 py-4",children:i.raw?(0,t.jsx)(n.MarkdownRenderer,{content:i.raw}):(0,t.jsx)("p",{className:"text-sm text-muted",children:"No content available."})})]})})})}],592381)}]);
|