prism0x2a 0.7.1 → 0.7.2
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/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-path-routes-manifest.json +1 -0
- package/.next/standalone/.next/build-manifest.json +3 -3
- package/.next/standalone/.next/prerender-manifest.json +24 -0
- package/.next/standalone/.next/required-server-files.json +1 -1
- package/.next/standalone/.next/routes-manifest.json +6 -0
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber/capabilities/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/amber/capabilities/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/amber/capabilities.html +1 -1
- package/.next/standalone/.next/server/app/amber/capabilities.rsc +3 -3
- package/.next/standalone/.next/server/app/amber/capabilities.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/amber/capabilities.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/amber/capabilities.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber/capabilities.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber/capabilities.segments/amber/capabilities/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber/capabilities.segments/amber/capabilities.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/amber/capabilities.segments/amber.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/amber/coverage/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/amber/coverage.html +1 -1
- package/.next/standalone/.next/server/app/amber/coverage.rsc +3 -3
- package/.next/standalone/.next/server/app/amber/coverage.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/amber/coverage.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/amber/coverage.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber/coverage.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber/coverage.segments/amber/coverage/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber/coverage.segments/amber/coverage.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/amber/coverage.segments/amber.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/amber/files/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/amber/files.html +1 -1
- package/.next/standalone/.next/server/app/amber/files.rsc +3 -3
- package/.next/standalone/.next/server/app/amber/files.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/amber/files.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/amber/files.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber/files.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber/files.segments/amber/files/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber/files.segments/amber/files.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/amber/files.segments/amber.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/amber/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/amber.html +1 -1
- package/.next/standalone/.next/server/app/amber.rsc +3 -3
- package/.next/standalone/.next/server/app/amber.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/amber.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/amber.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber.segments/amber/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/amber.segments/amber.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/api/amber/scan/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/blue/scan/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/green/cross-layer/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/green/queries/[id]/run/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/monorepo/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/blue/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/recommendations/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/recommendations/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/recommendations.html +1 -1
- package/.next/standalone/.next/server/app/blue/recommendations.rsc +3 -3
- package/.next/standalone/.next/server/app/blue/recommendations.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/blue/recommendations.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/recommendations.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/recommendations.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/recommendations.segments/blue/recommendations/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/recommendations.segments/blue/recommendations.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/recommendations.segments/blue.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/sessions/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/sessions/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/sessions.html +1 -1
- package/.next/standalone/.next/server/app/blue/sessions.rsc +3 -3
- package/.next/standalone/.next/server/app/blue/sessions.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/blue/sessions.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/sessions.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/sessions.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/sessions.segments/blue/sessions/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/sessions.segments/blue/sessions.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/sessions.segments/blue.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue.html +1 -1
- package/.next/standalone/.next/server/app/blue.rsc +3 -3
- package/.next/standalone/.next/server/app/blue.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/blue.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue.segments/blue/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue.segments/blue.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/green/cross-layer/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/green/cross-layer.html +1 -1
- package/.next/standalone/.next/server/app/green/cross-layer.rsc +3 -3
- package/.next/standalone/.next/server/app/green/cross-layer.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/green/cross-layer.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/green/cross-layer.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/green/cross-layer.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/green/cross-layer.segments/green/cross-layer/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/green/cross-layer.segments/green/cross-layer.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/green/cross-layer.segments/green.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/green/insights/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/green/insights/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/green/insights.html +1 -1
- package/.next/standalone/.next/server/app/green/insights.rsc +3 -3
- package/.next/standalone/.next/server/app/green/insights.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/green/insights.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/green/insights.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/green/insights.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/green/insights.segments/green/insights/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/green/insights.segments/green/insights.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/green/insights.segments/green.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/green/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/green/queries/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/green/queries/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/green/queries.html +1 -1
- package/.next/standalone/.next/server/app/green/queries.rsc +3 -3
- package/.next/standalone/.next/server/app/green/queries.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/green/queries.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/green/queries.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/green/queries.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/green/queries.segments/green/queries/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/green/queries.segments/green/queries.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/green/queries.segments/green.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/green.html +1 -1
- package/.next/standalone/.next/server/app/green.rsc +3 -3
- package/.next/standalone/.next/server/app/green.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/green.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/green.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/green.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/green.segments/green/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/green.segments/green.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +3 -3
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/pricing/page/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/pricing/page/build-manifest.json +16 -0
- package/.next/standalone/.next/server/app/pricing/page/next-font-manifest.json +10 -0
- package/.next/standalone/.next/server/app/pricing/page/react-loadable-manifest.json +1 -0
- package/.next/standalone/.next/server/app/pricing/page/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/pricing/page.js +14 -0
- package/.next/standalone/.next/server/app/pricing/page.js.map +5 -0
- package/.next/standalone/.next/server/app/pricing/page.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/pricing/page_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/pricing.html +1 -0
- package/.next/standalone/.next/server/app/pricing.meta +15 -0
- package/.next/standalone/.next/server/app/pricing.rsc +21 -0
- package/.next/standalone/.next/server/app/pricing.segments/_full.segment.rsc +21 -0
- package/.next/standalone/.next/server/app/pricing.segments/_head.segment.rsc +6 -0
- package/.next/standalone/.next/server/app/pricing.segments/_index.segment.rsc +5 -0
- package/.next/standalone/.next/server/app/pricing.segments/_tree.segment.rsc +3 -0
- package/.next/standalone/.next/server/app/pricing.segments/pricing/__PAGE__.segment.rsc +9 -0
- package/.next/standalone/.next/server/app/pricing.segments/pricing.segment.rsc +5 -0
- package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings.html +2 -2
- package/.next/standalone/.next/server/app/settings.rsc +3 -3
- package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/settings.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/settings.segments/settings.segment.rsc +1 -1
- package/.next/standalone/.next/server/app-paths-manifest.json +1 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__08rxe0c._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0es1n-0._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0a2egyj._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_pricing_page_actions_0gvv0qw.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/app_amber_capabilities_[id]_page_tsx_12~.miw._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_amber_capabilities_page_tsx_0.t9mpr._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_amber_coverage_page_tsx_01yia_n._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_amber_files_page_tsx_00pdkc~._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_amber_page_tsx_0ihx6zl._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_blue_page_tsx_0zg5eg-._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_blue_recommendations_[id]_page_tsx_10zzlnx._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_blue_recommendations_page_tsx_08w-50l._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_blue_sessions_[id]_page_tsx_0_~w1xj._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_blue_sessions_page_tsx_0kbuf.c._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_green_cross-layer_page_tsx_0a80o-~._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_green_insights_[id]_page_tsx_0se6uk1._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_green_insights_page_tsx_04g8_lf._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_green_page_tsx_10g2g6w._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_green_queries_[id]_page_tsx_0hg.qma._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_green_queries_page_tsx_0.p0r7z._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_page_tsx_0es_sk2._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_pricing_page_tsx_0uxncj9._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/app_settings_page_tsx_0~q~t-v._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_09d0h78.js +4 -0
- package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
- package/.next/standalone/.next/server/next-font-manifest.js +1 -1
- package/.next/standalone/.next/server/next-font-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/static/chunks/{084jj1qvspd5q.js → 0-nogwaahf00r.js} +1 -1
- package/.next/standalone/.next/static/chunks/{060eaovbkat-h.js → 0-ozct-0~_~y0.js} +1 -1
- package/.next/{static/chunks/0z5b7hbocrn0k.js → standalone/.next/static/chunks/0043va.q9c120.js} +1 -1
- package/.next/standalone/.next/static/{static/chunks/13gu~y8285gmc.js → chunks/0062k_6y6ie8k.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0~fd5.2v15..-.js → 01x6uo5zvt23j.js} +1 -1
- package/.next/standalone/.next/static/chunks/03f4g06bhu.q-.js +1 -0
- package/.next/standalone/.next/static/chunks/06ciexs8mfsoh.js +1 -0
- package/.next/standalone/.next/static/{static/chunks/0bn7nidxp0z1s.js → chunks/06lbhw~p794rn.js} +1 -1
- package/.next/standalone/.next/static/{static/chunks/0pzddagh.5c96.js → chunks/0921_~z_rxr9h.js} +1 -1
- package/.next/standalone/.next/static/chunks/{025srq69s.4vw.js → 0_uy4bqezjrpu.js} +1 -1
- package/.next/standalone/.next/static/chunks/0aqr1e8db8tr2.js +1 -0
- package/.next/{static/chunks/0r_f617o--_ew.js → standalone/.next/static/chunks/0gtjarbzj_b0s.js} +1 -1
- package/.next/standalone/.next/static/chunks/0i826dpus7xfj.js +1 -0
- package/.next/standalone/.next/static/chunks/0l.f7bl92nc~2.css +2 -0
- package/.next/{static/chunks/040ishla0m-l2.js → standalone/.next/static/chunks/0mtsra7dpsxy_.js} +1 -1
- package/.next/{static/chunks/03pm.ery8hgop.js → standalone/.next/static/chunks/0nc15zt~yfrj3.js} +1 -1
- package/.next/{static/chunks/154-kyu.ej3ea.js → standalone/.next/static/chunks/0ptkiyk6p_hgq.js} +1 -1
- package/.next/standalone/.next/static/{static/chunks/05dd-x8ti6pfs.js → chunks/0vsoyv8nkj.rx.js} +1 -1
- package/.next/{static/chunks/0xyj3.tdpvqe4.js → standalone/.next/static/chunks/0zpu7b02c6huw.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0vuk.7e07_u10.js → 10ibvf69namr1.js} +1 -1
- package/.next/standalone/.next/static/{static/chunks/0ck1t6t3dy~gs.js → chunks/1655x4_8fq5li.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/{084jj1qvspd5q.js → 0-nogwaahf00r.js} +1 -1
- package/.next/{static/chunks/060eaovbkat-h.js → standalone/.next/static/static/chunks/0-ozct-0~_~y0.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/{0z5b7hbocrn0k.js → 0043va.q9c120.js} +1 -1
- package/.next/{static/chunks/13gu~y8285gmc.js → standalone/.next/static/static/chunks/0062k_6y6ie8k.js} +1 -1
- package/.next/{static/chunks/0~fd5.2v15..-.js → standalone/.next/static/static/chunks/01x6uo5zvt23j.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/03f4g06bhu.q-.js +1 -0
- package/.next/standalone/.next/static/static/chunks/06ciexs8mfsoh.js +1 -0
- package/.next/{static/chunks/0bn7nidxp0z1s.js → standalone/.next/static/static/chunks/06lbhw~p794rn.js} +1 -1
- package/.next/standalone/.next/static/{chunks/0pzddagh.5c96.js → static/chunks/0921_~z_rxr9h.js} +1 -1
- package/.next/{static/chunks/025srq69s.4vw.js → standalone/.next/static/static/chunks/0_uy4bqezjrpu.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/0aqr1e8db8tr2.js +1 -0
- package/.next/standalone/.next/static/static/chunks/{0r_f617o--_ew.js → 0gtjarbzj_b0s.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/0i826dpus7xfj.js +1 -0
- package/.next/standalone/.next/static/static/chunks/0l.f7bl92nc~2.css +2 -0
- package/.next/standalone/.next/static/static/chunks/{040ishla0m-l2.js → 0mtsra7dpsxy_.js} +1 -1
- package/.next/standalone/.next/static/{chunks/03pm.ery8hgop.js → static/chunks/0nc15zt~yfrj3.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/{154-kyu.ej3ea.js → 0ptkiyk6p_hgq.js} +1 -1
- package/.next/{static/chunks/05dd-x8ti6pfs.js → standalone/.next/static/static/chunks/0vsoyv8nkj.rx.js} +1 -1
- package/.next/standalone/.next/static/{chunks/0xyj3.tdpvqe4.js → static/chunks/0zpu7b02c6huw.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/{0vuk.7e07_u10.js → 10ibvf69namr1.js} +1 -1
- package/.next/{static/chunks/0ck1t6t3dy~gs.js → standalone/.next/static/static/chunks/1655x4_8fq5li.js} +1 -1
- package/.next/standalone/CHANGELOG.md +12 -0
- package/.next/standalone/app/pricing/page.tsx +289 -0
- package/.next/standalone/app/settings/page.tsx +8 -4
- package/.next/standalone/components/PrismDock.tsx +1 -0
- package/.next/standalone/components/pricing/BillingToggle.tsx +53 -0
- package/.next/standalone/components/pricing/FeatureList.tsx +19 -0
- package/.next/standalone/components/pricing/PricingCard.tsx +120 -0
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/server.js +1 -1
- package/.next/standalone/tsconfig.tsbuildinfo +1 -1
- package/.next/static/chunks/{084jj1qvspd5q.js → 0-nogwaahf00r.js} +1 -1
- package/.next/{standalone/.next/static/static/chunks/060eaovbkat-h.js → static/chunks/0-ozct-0~_~y0.js} +1 -1
- package/.next/{standalone/.next/static/chunks/0z5b7hbocrn0k.js → static/chunks/0043va.q9c120.js} +1 -1
- package/.next/{standalone/.next/static/chunks/13gu~y8285gmc.js → static/chunks/0062k_6y6ie8k.js} +1 -1
- package/.next/{standalone/.next/static/static/chunks/0~fd5.2v15..-.js → static/chunks/01x6uo5zvt23j.js} +1 -1
- package/.next/static/chunks/03f4g06bhu.q-.js +1 -0
- package/.next/static/chunks/06ciexs8mfsoh.js +1 -0
- package/.next/{standalone/.next/static/chunks/0bn7nidxp0z1s.js → static/chunks/06lbhw~p794rn.js} +1 -1
- package/.next/static/chunks/{0pzddagh.5c96.js → 0921_~z_rxr9h.js} +1 -1
- package/.next/{standalone/.next/static/static/chunks/025srq69s.4vw.js → static/chunks/0_uy4bqezjrpu.js} +1 -1
- package/.next/static/chunks/0aqr1e8db8tr2.js +1 -0
- package/.next/{standalone/.next/static/chunks/0r_f617o--_ew.js → static/chunks/0gtjarbzj_b0s.js} +1 -1
- package/.next/static/chunks/0i826dpus7xfj.js +1 -0
- package/.next/static/chunks/0l.f7bl92nc~2.css +2 -0
- package/.next/{standalone/.next/static/chunks/040ishla0m-l2.js → static/chunks/0mtsra7dpsxy_.js} +1 -1
- package/.next/{standalone/.next/static/static/chunks/03pm.ery8hgop.js → static/chunks/0nc15zt~yfrj3.js} +1 -1
- package/.next/{standalone/.next/static/chunks/154-kyu.ej3ea.js → static/chunks/0ptkiyk6p_hgq.js} +1 -1
- package/.next/{standalone/.next/static/chunks/05dd-x8ti6pfs.js → static/chunks/0vsoyv8nkj.rx.js} +1 -1
- package/.next/{standalone/.next/static/static/chunks/0xyj3.tdpvqe4.js → static/chunks/0zpu7b02c6huw.js} +1 -1
- package/.next/static/chunks/{0vuk.7e07_u10.js → 10ibvf69namr1.js} +1 -1
- package/.next/{standalone/.next/static/chunks/0ck1t6t3dy~gs.js → static/chunks/1655x4_8fq5li.js} +1 -1
- package/CHANGELOG.md +12 -0
- package/package.json +1 -1
- package/.next/standalone/.next/static/chunks/0-u-st8-.soco.js +0 -1
- package/.next/standalone/.next/static/chunks/07bef4gh~ubvq.js +0 -1
- package/.next/standalone/.next/static/chunks/07~.mame73grt.js +0 -1
- package/.next/standalone/.next/static/chunks/0ddo77uynla4l.css +0 -2
- package/.next/standalone/.next/static/static/chunks/0-u-st8-.soco.js +0 -1
- package/.next/standalone/.next/static/static/chunks/07bef4gh~ubvq.js +0 -1
- package/.next/standalone/.next/static/static/chunks/07~.mame73grt.js +0 -1
- package/.next/standalone/.next/static/static/chunks/0ddo77uynla4l.css +0 -2
- package/.next/static/chunks/0-u-st8-.soco.js +0 -1
- package/.next/static/chunks/07bef4gh~ubvq.js +0 -1
- package/.next/static/chunks/07~.mame73grt.js +0 -1
- package/.next/static/chunks/0ddo77uynla4l.css +0 -2
- /package/.next/standalone/.next/static/{NZmaO_6ZZEbF4JCKrJtF0 → W2AhxwlOVhsTt-b4T3Mjc}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{NZmaO_6ZZEbF4JCKrJtF0 → W2AhxwlOVhsTt-b4T3Mjc}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{NZmaO_6ZZEbF4JCKrJtF0 → W2AhxwlOVhsTt-b4T3Mjc}/_ssgManifest.js +0 -0
- /package/.next/standalone/.next/static/static/{NZmaO_6ZZEbF4JCKrJtF0 → W2AhxwlOVhsTt-b4T3Mjc}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/static/{NZmaO_6ZZEbF4JCKrJtF0 → W2AhxwlOVhsTt-b4T3Mjc}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/static/{NZmaO_6ZZEbF4JCKrJtF0 → W2AhxwlOVhsTt-b4T3Mjc}/_ssgManifest.js +0 -0
- /package/.next/static/{NZmaO_6ZZEbF4JCKrJtF0 → W2AhxwlOVhsTt-b4T3Mjc}/_buildManifest.js +0 -0
- /package/.next/static/{NZmaO_6ZZEbF4JCKrJtF0 → W2AhxwlOVhsTt-b4T3Mjc}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{NZmaO_6ZZEbF4JCKrJtF0 → W2AhxwlOVhsTt-b4T3Mjc}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,95057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={formatUrl:function(){return o},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let l=e.r(90809)._(e.r(98183)),s=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,a=e.protocol||"",n=e.pathname||"",o=e.hash||"",i=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(c+=":"+e.port)),i&&"object"==typeof i&&(i=String(l.urlQueryToSearchParams(i)));let u=e.search||i&&`?${i}`||"";return a&&!a.endsWith(":")&&(a+=":"),e.slashes||(!a||s.test(a))&&!1!==c?(c="//"+(c||""),n&&"/"!==n[0]&&(n="/"+n)):c||(c=""),o&&"#"!==o[0]&&(o="#"+o),u&&"?"!==u[0]&&(u="?"+u),n=n.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${a}${c}${n}${u}${o}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return o(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return n}});let a=e.r(71645);function n(e,t){let r=(0,a.useRef)(null),n=(0,a.useRef)(null);return(0,a.useCallback)(a=>{if(null===a){let e=r.current;e&&(r.current=null,e());let t=n.current;t&&(n.current=null,t())}else e&&(r.current=l(e,a)),t&&(n.current=l(t,a))},[e,t])}function l(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},73668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return l}});let a=e.r(18967),n=e.r(52817);function l(e){if(!(0,a.isAbsoluteUrl)(e))return!0;try{let t=(0,a.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,n.hasBasePath)(r.pathname)}catch(e){return!1}}},84508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return b},useLinkStatus:function(){return y}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let l=e.r(90809),s=e.r(43476),o=l._(e.r(71645)),i=e.r(95057),c=e.r(8372),u=e.r(18581),d=e.r(18967),p=e.r(5550);e.r(33525);let f=e.r(88540),x=e.r(91949),h=e.r(73668),m=e.r(9396);function b(t){var r,a;let n,l,b,[y,j]=(0,o.useOptimistic)(x.IDLE_LINK_STATUS),v=(0,o.useRef)(null),{href:N,as:_,children:k,prefetch:w=null,passHref:S,replace:C,shallow:R,scroll:E,onClick:P,onMouseEnter:O,onTouchStart:T,legacyBehavior:A=!1,onNavigate:$,transitionTypes:L,ref:M,unstable_dynamicOnHover:I,...U}=t;n=k,A&&("string"==typeof n||"number"==typeof n)&&(n=(0,s.jsx)("a",{children:n}));let B=o.default.useContext(c.AppRouterContext),D=!1!==w,F=!1!==w?null===(a=w)||"auto"===a?m.FetchStrategy.PPR:m.FetchStrategy.Full:m.FetchStrategy.PPR,K="string"==typeof(r=_||N)?r:(0,i.formatUrl)(r);if(A){if(n?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});l=o.default.Children.only(n)}let W=A?l&&"object"==typeof l&&l.ref:M,q=o.default.useCallback(e=>(null!==B&&(v.current=(0,x.mountLinkInstance)(e,K,B,F,D,j)),()=>{v.current&&((0,x.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,x.unmountPrefetchableInstance)(e)}),[D,K,B,F,j]),z={ref:(0,u.useMergedRef)(q,W),onClick(t){A||"function"!=typeof P||P(t),A&&l.props&&"function"==typeof l.props.onClick&&l.props.onClick(t),!B||t.defaultPrevented||function(t,r,a,n,l,s,i){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,h.isLocalURL)(r)){n&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),s){let e=!1;if(s({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(99781);o.default.startTransition(()=>{d(r,n?"replace":"push",!1===l?f.ScrollBehavior.NoScroll:f.ScrollBehavior.Default,a.current,i)})}}(t,K,v,C,E,$,L)},onMouseEnter(e){A||"function"!=typeof O||O(e),A&&l.props&&"function"==typeof l.props.onMouseEnter&&l.props.onMouseEnter(e),B&&D&&(0,x.onNavigationIntent)(e.currentTarget,!0===I)},onTouchStart:function(e){A||"function"!=typeof T||T(e),A&&l.props&&"function"==typeof l.props.onTouchStart&&l.props.onTouchStart(e),B&&D&&(0,x.onNavigationIntent)(e.currentTarget,!0===I)}};return(0,d.isAbsoluteUrl)(K)?z.href=K:A&&!S&&("a"!==l.type||"href"in l.props)||(z.href=(0,p.addBasePath)(K)),b=A?o.default.cloneElement(l,z):(0,s.jsx)("a",{...U,...z,children:n}),(0,s.jsx)(g.Provider,{value:y,children:b})}e.r(84508);let g=(0,o.createContext)(x.IDLE_LINK_STATUS),y=()=>(0,o.useContext)(g);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18566,(e,t,r)=>{t.exports=e.r(76562)},50667,36528,25010,60888,13121,e=>{"use strict";var t=e.i(43476),r=e.i(22016),a=e.i(18566),n=e.i(71645);let l={monorepo:{tier:"pro",label:"Monorepo support"},aggregate_scan:{tier:"pro",label:"Aggregate workspace scan"},cross_workspace_insights:{tier:"pro",label:"Cross-workspace insights"},llm_insights:{tier:"pro",label:"AI-powered insights"},custom_queries:{tier:"pro",label:"Custom GREEN queries"},cross_layer_context:{tier:"pro",label:"Cross-layer context"},auto_insights:{tier:"pro",label:"Auto-generated insights"},team_sync:{tier:"team",label:"Team sync"},ci_integration:{tier:"team",label:"CI integration"},forge_unlimited:{tier:"forge-pro",label:"forge0x2B unlimited"},forge_unlimited_generation:{tier:"forge-pro",label:"forge0x2B unlimited generation"}};function s(e){return"free"!==l[e].tier}e.s(["FREE_TIER_LOC_LIMIT",0,5e4,"showProBadge",0,s],36528);let o=()=>(0,t.jsx)("span",{className:"text-[10px] font-bold px-1 py-0.5 rounded leading-none",style:{background:"rgba(251,191,36,0.15)",color:"rgb(251,191,36)",border:"1px solid rgba(251,191,36,0.3)"},children:"PRO"});function i({monorepo:e,activeWorkspace:r,onSelect:a,isPro:l=!1}){let[c,u]=(0,n.useState)(!1),d=(0,n.useRef)(null);if((0,n.useEffect)(()=>{function e(e){d.current&&!d.current.contains(e.target)&&u(!1)}return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]),!e||"single"===e.type||0===e.packages.length)return null;let p=s("monorepo")&&!l;return(0,t.jsxs)("div",{className:"relative",ref:d,children:[(0,t.jsxs)("button",{onClick:()=>u(e=>!e),className:"flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-medium transition-colors",style:{background:c?"rgba(51,65,85,0.5)":"rgba(51,65,85,0.25)",border:"1px solid rgba(51,65,85,0.5)",color:"rgb(148,163,184)"},title:`Monorepo: ${e.type}`,children:[(0,t.jsx)("span",{className:"font-mono",style:{color:"rgb(52,211,153)",fontSize:10},children:e.type.toUpperCase()}),(0,t.jsx)("span",{className:"max-w-[80px] truncate",children:r??"all workspaces"}),p&&(0,t.jsx)(o,{}),(0,t.jsx)("svg",{width:"8",height:"8",viewBox:"0 0 8 8",fill:"currentColor",className:"opacity-60",children:(0,t.jsx)("path",{d:"M1 2.5l3 3 3-3",stroke:"currentColor",strokeWidth:"1.2",fill:"none",strokeLinecap:"round"})})]}),c&&(0,t.jsxs)("div",{className:"absolute top-full mt-1 right-0 z-50 rounded-xl overflow-hidden py-1 min-w-[180px]",style:{background:"rgba(15,23,42,0.95)",backdropFilter:"blur(20px)",border:"1px solid rgba(51,65,85,0.5)",boxShadow:"0 4px 24px rgba(0,0,0,0.4)"},children:[(0,t.jsxs)("button",{className:"w-full text-left px-3 py-2 text-xs flex items-center gap-2 transition-colors hover:bg-white/5",style:{color:null===r?"rgb(52,211,153)":"rgb(148,163,184)"},onClick:()=>{a(null),u(!1)},children:[(0,t.jsx)("span",{className:"font-mono text-[10px] opacity-60",children:"∑"}),"All workspaces",null===r&&(0,t.jsx)("span",{className:"ml-auto text-[10px] opacity-60",children:"✓"})]}),(0,t.jsx)("div",{className:"my-1",style:{borderTop:"1px solid rgba(51,65,85,0.3)"}}),e.packages.map(e=>(0,t.jsxs)("button",{className:"w-full text-left px-3 py-2 text-xs flex items-center gap-2 transition-colors hover:bg-white/5",style:{color:r===e.name?"rgb(52,211,153)":"rgb(148,163,184)"},onClick:()=>{a(e.name),u(!1)},children:[(0,t.jsx)("span",{className:"font-mono text-[10px] opacity-50",children:"pkg"}),(0,t.jsx)("span",{className:"flex-1 truncate",children:e.name}),void 0!==e.loc&&(0,t.jsxs)("span",{className:"text-[10px] font-mono opacity-40",children:[(e.loc/1e3).toFixed(1),"k"]}),r===e.name&&(0,t.jsx)("span",{className:"text-[10px] opacity-60",children:"✓"})]},e.path))]})]})}function c(){let[e,t]=(0,n.useState)(""),[r,a]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{fetch("/api/config").then(e=>e.json()).then(e=>{let r=e.targetPath??"";t(r?`?target=${encodeURIComponent(r)}`:"")}).catch(()=>{}).finally(()=>a(!0))},[]),{tq:e,ready:r}}function u(e){let[t,r]=(0,n.useState)(null),[a,l]=(0,n.useState)(null),[s,o]=(0,n.useState)(!1);(0,n.useEffect)(()=>{Promise.all([fetch(`/api/monorepo${e}`).then(e=>e.json()).catch(()=>({monorepo:null})),fetch(`/api/monorepo/active${e}`).then(e=>e.json()).catch(()=>({workspace:null}))]).then(([e,t])=>{r(e.monorepo??null),l(t.workspace??null)}).finally(()=>o(!0))},[e]);let i=(0,n.useCallback)(async t=>{l(t),await fetch(`/api/monorepo/active${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workspace:t})}).catch(()=>{})},[e]),c=a?`&workspace=${encodeURIComponent(a)}`:"";return{monorepo:t,activeWorkspace:a,setActiveWorkspace:i,ready:s,wq:c}}e.s(["useTargetPath",0,c],25010),e.s(["useActiveWorkspace",0,u],60888);let d={tier:"free",issuedAt:null,expiresAt:null,userId:null,features:[],isValid:!1,isExpired:!1,licenseKey:null,instanceId:null,productName:null,subscriptionStatus:null,validatedAt:null,revalidationDue:null,gracePeriodEnd:null,activationLimit:null,activationUsage:null,cacheStatus:"no-cache",daysSinceValidation:null};function p(e){let[t,r]=(0,n.useState)(null),[a,l]=(0,n.useState)(!1),[s,o]=(0,n.useState)(0);(0,n.useEffect)(()=>{fetch(`/api/license${e}`).then(e=>e.json()).then(e=>r(e)).catch(()=>r(d)).finally(()=>l(!0))},[e,s]);let i=(0,n.useCallback)(()=>o(e=>e+1),[]),c=!!t&&"free"!==t.tier&&"forge-pro"!==t.tier&&t.isValid&&!t.isExpired&&"expired"!==t.cacheStatus;return{license:t,ready:a,refresh:i,isPro:c}}e.s(["useLicense",0,p],13121);let f=[{href:"/blue",label:"BLUE",color:"rgb(59,130,246)"},{href:"/amber",label:"AMBER",color:"rgb(251,191,36)"},{href:"/green",label:"GREEN",color:"rgb(52,211,153)"},{href:"/settings",label:"⚙",color:void 0}];e.s(["PrismDock",0,function(){let e=(0,a.usePathname)(),{tq:n}=c(),{monorepo:l,activeWorkspace:s,setActiveWorkspace:o}=u(n),{isPro:d}=p(n);return(0,t.jsxs)("div",{className:"fixed top-3 left-1/2 -translate-x-1/2 z-50 flex items-center gap-2 px-4 py-2 rounded-full",style:{background:"linear-gradient(to bottom, rgba(15,23,42,0.4), rgba(2,6,23,0.5))",backdropFilter:"blur(24px) saturate(1.5)",border:"1px solid rgba(51,65,85,0.3)",boxShadow:"0 1px 2px rgba(15,23,42,.06),0 4px 12px rgba(15,23,42,.12),0 16px 40px rgba(15,23,42,.18),inset 0 1px 0 rgba(255,255,255,.08),inset 0 -1px 0 rgba(15,23,42,.4)"},children:[(0,t.jsxs)(r.default,{href:"/",className:"flex items-center gap-1.5 group",children:[(0,t.jsx)("span",{className:"text-sky-400 text-lg select-none",children:"✦"}),(0,t.jsxs)("span",{className:"text-slate-200 text-sm font-semibold tracking-tight group-hover:text-white transition-colors",children:["prism",(0,t.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]})]}),f.map(({href:a,label:n,color:l})=>{let s=e.startsWith(a);return(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"w-px h-4",style:{background:"rgba(51,65,85,0.6)"}}),(0,t.jsx)(r.default,{href:a,className:"text-sm font-medium transition-colors px-1",style:{color:s?l??"rgb(226,232,240)":"rgba(148,163,184,0.8)"},children:n})]},a)}),l&&"single"!==l.type&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"w-px h-4",style:{background:"rgba(51,65,85,0.6)"}}),(0,t.jsx)(i,{monorepo:l,activeWorkspace:s,onSelect:o,isPro:d})]})]})}],50667)},41147,e=>{"use strict";var t=e.i(43476),r=e.i(71645),a=e.i(22016),n=e.i(50667),l=e.i(25010),s=e.i(60888);let o="rgb(251,191,36)",i={background:"var(--surface-panel)",border:"1px solid var(--border-default)",boxShadow:"0 1px 2px rgba(15,23,42,.05),0 4px 16px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.04)"},c={background:"rgba(15,23,42,0.5)",border:"1px solid rgba(51,65,85,0.4)"};function u({label:e,value:r,accent:a}){return(0,t.jsxs)("div",{className:"rounded-lg px-4 py-3 flex flex-col gap-0.5",style:c,children:[(0,t.jsx)("span",{className:"text-xs text-slate-500 uppercase tracking-widest",children:e}),(0,t.jsx)("span",{className:"text-xl font-semibold font-mono",style:{color:a??"rgb(226,232,240)"},children:r})]})}e.s(["default",0,function(){let{tq:e,ready:c}=(0,l.useTargetPath)(),{wq:d}=(0,s.useActiveWorkspace)(e),[p,f]=(0,r.useState)(null),[x,h]=(0,r.useState)(null),[m,b]=(0,r.useState)(!1),[g,y]=(0,r.useState)(null);async function j(){b(!0),y(null);try{let t=await fetch(`/api/amber/scan${e}${d}`,{method:"POST"}),r=await t.json();if(!t.ok)throw Error(r.error??"Scan failed");f(r.scan)}catch(e){y(e instanceof Error?e.message:String(e))}finally{b(!1)}}(0,r.useEffect)(()=>{c&&(fetch(`/api/amber/scan${e}${d}`).then(e=>e.json()).then(({scan:e})=>f(e??null)).catch(()=>{}),fetch(`/api/amber/registry${e}${d}`).then(e=>e.json()).then(({capabilities:e})=>h(Array.isArray(e)?e.length:0)).catch(()=>{}))},[c,d]);let v=[{href:"/amber/capabilities",label:"Capabilities",icon:"🧩",desc:`${x??"—"} registered`},{href:"/amber/files",label:"Files",icon:"📁",desc:p?`${p.file_count} scanned`:"No scan yet"},{href:"/amber/coverage",label:"Coverage",icon:"📊",desc:p?`${p.drift_count} drift entries`:"No scan yet"}];return(0,t.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"var(--bg-app)"},children:[(0,t.jsx)(n.PrismDock,{}),(0,t.jsxs)("main",{className:"flex-1 flex flex-col items-center px-6 pt-32 pb-16 gap-6",style:{maxWidth:720,margin:"0 auto",width:"100%"},children:[(0,t.jsxs)("div",{className:"w-full flex items-center justify-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("h1",{className:"text-xl font-semibold text-slate-100 tracking-tight",children:[(0,t.jsx)("span",{className:"font-mono",style:{color:o},children:"AMBER"}),(0,t.jsx)("span",{className:"text-slate-400 text-sm font-normal ml-2",children:"Capability Registry + Coverage"})]}),p&&(0,t.jsxs)("p",{className:"text-xs text-slate-500 mt-0.5 font-mono",children:["Last scan: ",new Date(p.created_at).toLocaleString()," · ",p.target]})]}),(0,t.jsx)("button",{onClick:j,disabled:m,className:"px-4 py-2 rounded-lg text-sm font-semibold transition-all disabled:opacity-50",style:{background:o,color:"#020617"},children:m?"Scanning…":p?"Re-scan":"Run scan"})]}),g&&(0,t.jsx)("div",{className:"w-full rounded-lg px-4 py-3 text-sm text-red-400 font-mono",style:{background:"rgba(239,68,68,0.08)",border:"1px solid rgba(239,68,68,0.2)"},children:g}),!p&&!m&&(0,t.jsxs)("div",{className:"w-full rounded-xl p-8 text-center flex flex-col items-center gap-3",style:i,children:[(0,t.jsx)("span",{className:"text-4xl",children:"🟡"}),(0,t.jsx)("p",{className:"text-slate-300 font-medium",children:"No AMBER scan yet"}),(0,t.jsxs)("p",{className:"text-slate-500 text-sm max-w-sm",children:["Run a scan to analyse your capability registry, file coverage, and documentation drift. Requires a ",(0,t.jsx)("span",{className:"font-mono text-amber-400",children:".amber/capabilities.md"})," in the target project."]})]}),p&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"w-full grid grid-cols-4 gap-3",children:[(0,t.jsx)(u,{label:"Files",value:p.file_count}),(0,t.jsx)(u,{label:"Capabilities",value:x??p.capability_count,accent:o}),(0,t.jsx)(u,{label:"Drift",value:p.drift_count,accent:p.drift_count>0?"rgb(248,113,113)":"rgb(52,211,153)"}),(0,t.jsx)(u,{label:"Orphans",value:p.orphan_capability_count,accent:p.orphan_capability_count>0?"rgb(251,191,36)":"rgb(52,211,153)"})]}),p.drift_count>0&&(0,t.jsxs)("div",{className:"w-full rounded-xl p-5 flex flex-col gap-3",style:i,children:[(0,t.jsxs)("h2",{className:"text-xs font-semibold text-slate-400 uppercase tracking-widest",children:["Recent Drift (",p.drift_count,")"]}),(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[p.drift.slice(0,5).map((e,r)=>(0,t.jsxs)("div",{className:"flex items-center justify-between py-1 border-b",style:{borderColor:"rgba(51,65,85,0.3)"},children:[(0,t.jsx)("span",{className:"text-xs font-mono text-slate-400 truncate flex-1",children:e.file}),(0,t.jsx)("span",{className:"text-xs font-mono text-amber-400 ml-3 flex-shrink-0",children:e.kind.replace(/_/g," ")})]},r)),p.drift_count>5&&(0,t.jsxs)(a.default,{href:"/amber/coverage",className:"text-xs text-amber-400 hover:underline mt-1",children:["+",p.drift_count-5," more → Coverage"]})]})]}),p.orphan_capability_count>0&&(0,t.jsxs)("div",{className:"w-full rounded-xl p-5 flex flex-col gap-3",style:i,children:[(0,t.jsxs)("h2",{className:"text-xs font-semibold text-amber-400 uppercase tracking-widest",children:["Orphan Capabilities (",p.orphan_capability_count,")"]}),(0,t.jsx)("p",{className:"text-xs text-slate-500",children:"Registered in capabilities.md but matched no scanned files."}),(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:p.orphan_capability_ids.map(e=>(0,t.jsx)(a.default,{href:`/amber/capabilities/${encodeURIComponent(e)}`,className:"text-xs font-mono px-2 py-1 rounded hover:brightness-110 transition-all",style:{background:"rgba(251,191,36,0.1)",color:o,border:"1px solid rgba(251,191,36,0.25)"},children:e},e))})]}),p.unknown_ref_count>0&&(0,t.jsxs)("div",{className:"w-full rounded-xl p-5 flex flex-col gap-3",style:i,children:[(0,t.jsxs)("h2",{className:"text-xs font-semibold text-red-400 uppercase tracking-widest",children:["Unknown Capability Refs (",p.unknown_ref_count,")"]}),(0,t.jsx)("p",{className:"text-xs text-slate-500",children:"Files reference capability IDs not in the registry."}),(0,t.jsx)("div",{className:"flex flex-col gap-1",children:p.unknown_capability_refs.slice(0,5).map((e,r)=>(0,t.jsxs)("div",{className:"flex items-center gap-3 py-1 border-b",style:{borderColor:"rgba(51,65,85,0.3)"},children:[(0,t.jsx)("span",{className:"text-xs font-mono text-slate-400 truncate flex-1",children:e.file}),(0,t.jsx)("span",{className:"text-xs font-mono text-red-400",children:e.id})]},r))})]})]}),(0,t.jsx)("div",{className:"w-full grid grid-cols-3 gap-3",children:v.map(({href:e,label:r,icon:n,desc:l})=>(0,t.jsxs)(a.default,{href:e,className:"rounded-xl p-5 flex flex-col gap-2 transition-all hover:brightness-110",style:{...i,borderColor:o+"30"},children:[(0,t.jsx)("span",{className:"text-2xl",children:n}),(0,t.jsx)("span",{className:"text-sm font-semibold",style:{color:o},children:r}),(0,t.jsx)("span",{className:"text-xs text-slate-500",children:l})]},e))})]}),(0,t.jsxs)("footer",{className:"text-center py-4 text-xs text-slate-600",children:["prism",(0,t.jsx)("span",{className:"font-mono",children:"0x2A"})," v","0.7.1"," · AMBER"]})]})}])}]);
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,95057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={formatUrl:function(){return o},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let l=e.r(90809)._(e.r(98183)),s=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,a=e.protocol||"",n=e.pathname||"",o=e.hash||"",i=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(c+=":"+e.port)),i&&"object"==typeof i&&(i=String(l.urlQueryToSearchParams(i)));let u=e.search||i&&`?${i}`||"";return a&&!a.endsWith(":")&&(a+=":"),e.slashes||(!a||s.test(a))&&!1!==c?(c="//"+(c||""),n&&"/"!==n[0]&&(n="/"+n)):c||(c=""),o&&"#"!==o[0]&&(o="#"+o),u&&"?"!==u[0]&&(u="?"+u),n=n.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${a}${c}${n}${u}${o}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return o(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return n}});let a=e.r(71645);function n(e,t){let r=(0,a.useRef)(null),n=(0,a.useRef)(null);return(0,a.useCallback)(a=>{if(null===a){let e=r.current;e&&(r.current=null,e());let t=n.current;t&&(n.current=null,t())}else e&&(r.current=l(e,a)),t&&(n.current=l(t,a))},[e,t])}function l(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},73668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return l}});let a=e.r(18967),n=e.r(52817);function l(e){if(!(0,a.isAbsoluteUrl)(e))return!0;try{let t=(0,a.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,n.hasBasePath)(r.pathname)}catch(e){return!1}}},84508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return b},useLinkStatus:function(){return y}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let l=e.r(90809),s=e.r(43476),o=l._(e.r(71645)),i=e.r(95057),c=e.r(8372),u=e.r(18581),d=e.r(18967),p=e.r(5550);e.r(33525);let f=e.r(88540),x=e.r(91949),h=e.r(73668),m=e.r(9396);function b(t){var r,a;let n,l,b,[y,j]=(0,o.useOptimistic)(x.IDLE_LINK_STATUS),v=(0,o.useRef)(null),{href:N,as:_,children:k,prefetch:w=null,passHref:S,replace:C,shallow:R,scroll:E,onClick:P,onMouseEnter:O,onTouchStart:T,legacyBehavior:A=!1,onNavigate:$,transitionTypes:L,ref:M,unstable_dynamicOnHover:I,...U}=t;n=k,A&&("string"==typeof n||"number"==typeof n)&&(n=(0,s.jsx)("a",{children:n}));let B=o.default.useContext(c.AppRouterContext),D=!1!==w,F=!1!==w?null===(a=w)||"auto"===a?m.FetchStrategy.PPR:m.FetchStrategy.Full:m.FetchStrategy.PPR,K="string"==typeof(r=_||N)?r:(0,i.formatUrl)(r);if(A){if(n?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});l=o.default.Children.only(n)}let W=A?l&&"object"==typeof l&&l.ref:M,q=o.default.useCallback(e=>(null!==B&&(v.current=(0,x.mountLinkInstance)(e,K,B,F,D,j)),()=>{v.current&&((0,x.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,x.unmountPrefetchableInstance)(e)}),[D,K,B,F,j]),z={ref:(0,u.useMergedRef)(q,W),onClick(t){A||"function"!=typeof P||P(t),A&&l.props&&"function"==typeof l.props.onClick&&l.props.onClick(t),!B||t.defaultPrevented||function(t,r,a,n,l,s,i){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,h.isLocalURL)(r)){n&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),s){let e=!1;if(s({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(99781);o.default.startTransition(()=>{d(r,n?"replace":"push",!1===l?f.ScrollBehavior.NoScroll:f.ScrollBehavior.Default,a.current,i)})}}(t,K,v,C,E,$,L)},onMouseEnter(e){A||"function"!=typeof O||O(e),A&&l.props&&"function"==typeof l.props.onMouseEnter&&l.props.onMouseEnter(e),B&&D&&(0,x.onNavigationIntent)(e.currentTarget,!0===I)},onTouchStart:function(e){A||"function"!=typeof T||T(e),A&&l.props&&"function"==typeof l.props.onTouchStart&&l.props.onTouchStart(e),B&&D&&(0,x.onNavigationIntent)(e.currentTarget,!0===I)}};return(0,d.isAbsoluteUrl)(K)?z.href=K:A&&!S&&("a"!==l.type||"href"in l.props)||(z.href=(0,p.addBasePath)(K)),b=A?o.default.cloneElement(l,z):(0,s.jsx)("a",{...U,...z,children:n}),(0,s.jsx)(g.Provider,{value:y,children:b})}e.r(84508);let g=(0,o.createContext)(x.IDLE_LINK_STATUS),y=()=>(0,o.useContext)(g);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18566,(e,t,r)=>{t.exports=e.r(76562)},50667,36528,25010,60888,13121,e=>{"use strict";var t=e.i(43476),r=e.i(22016),a=e.i(18566),n=e.i(71645);let l={monorepo:{tier:"pro",label:"Monorepo support"},aggregate_scan:{tier:"pro",label:"Aggregate workspace scan"},cross_workspace_insights:{tier:"pro",label:"Cross-workspace insights"},llm_insights:{tier:"pro",label:"AI-powered insights"},custom_queries:{tier:"pro",label:"Custom GREEN queries"},cross_layer_context:{tier:"pro",label:"Cross-layer context"},auto_insights:{tier:"pro",label:"Auto-generated insights"},team_sync:{tier:"team",label:"Team sync"},ci_integration:{tier:"team",label:"CI integration"},forge_unlimited:{tier:"forge-pro",label:"forge0x2B unlimited"},forge_unlimited_generation:{tier:"forge-pro",label:"forge0x2B unlimited generation"}};function s(e){return"free"!==l[e].tier}e.s(["FREE_TIER_LOC_LIMIT",0,5e4,"showProBadge",0,s],36528);let o=()=>(0,t.jsx)("span",{className:"text-[10px] font-bold px-1 py-0.5 rounded leading-none",style:{background:"rgba(251,191,36,0.15)",color:"rgb(251,191,36)",border:"1px solid rgba(251,191,36,0.3)"},children:"PRO"});function i({monorepo:e,activeWorkspace:r,onSelect:a,isPro:l=!1}){let[c,u]=(0,n.useState)(!1),d=(0,n.useRef)(null);if((0,n.useEffect)(()=>{function e(e){d.current&&!d.current.contains(e.target)&&u(!1)}return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]),!e||"single"===e.type||0===e.packages.length)return null;let p=s("monorepo")&&!l;return(0,t.jsxs)("div",{className:"relative",ref:d,children:[(0,t.jsxs)("button",{onClick:()=>u(e=>!e),className:"flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-medium transition-colors",style:{background:c?"rgba(51,65,85,0.5)":"rgba(51,65,85,0.25)",border:"1px solid rgba(51,65,85,0.5)",color:"rgb(148,163,184)"},title:`Monorepo: ${e.type}`,children:[(0,t.jsx)("span",{className:"font-mono",style:{color:"rgb(52,211,153)",fontSize:10},children:e.type.toUpperCase()}),(0,t.jsx)("span",{className:"max-w-[80px] truncate",children:r??"all workspaces"}),p&&(0,t.jsx)(o,{}),(0,t.jsx)("svg",{width:"8",height:"8",viewBox:"0 0 8 8",fill:"currentColor",className:"opacity-60",children:(0,t.jsx)("path",{d:"M1 2.5l3 3 3-3",stroke:"currentColor",strokeWidth:"1.2",fill:"none",strokeLinecap:"round"})})]}),c&&(0,t.jsxs)("div",{className:"absolute top-full mt-1 right-0 z-50 rounded-xl overflow-hidden py-1 min-w-[180px]",style:{background:"rgba(15,23,42,0.95)",backdropFilter:"blur(20px)",border:"1px solid rgba(51,65,85,0.5)",boxShadow:"0 4px 24px rgba(0,0,0,0.4)"},children:[(0,t.jsxs)("button",{className:"w-full text-left px-3 py-2 text-xs flex items-center gap-2 transition-colors hover:bg-white/5",style:{color:null===r?"rgb(52,211,153)":"rgb(148,163,184)"},onClick:()=>{a(null),u(!1)},children:[(0,t.jsx)("span",{className:"font-mono text-[10px] opacity-60",children:"∑"}),"All workspaces",null===r&&(0,t.jsx)("span",{className:"ml-auto text-[10px] opacity-60",children:"✓"})]}),(0,t.jsx)("div",{className:"my-1",style:{borderTop:"1px solid rgba(51,65,85,0.3)"}}),e.packages.map(e=>(0,t.jsxs)("button",{className:"w-full text-left px-3 py-2 text-xs flex items-center gap-2 transition-colors hover:bg-white/5",style:{color:r===e.name?"rgb(52,211,153)":"rgb(148,163,184)"},onClick:()=>{a(e.name),u(!1)},children:[(0,t.jsx)("span",{className:"font-mono text-[10px] opacity-50",children:"pkg"}),(0,t.jsx)("span",{className:"flex-1 truncate",children:e.name}),void 0!==e.loc&&(0,t.jsxs)("span",{className:"text-[10px] font-mono opacity-40",children:[(e.loc/1e3).toFixed(1),"k"]}),r===e.name&&(0,t.jsx)("span",{className:"text-[10px] opacity-60",children:"✓"})]},e.path))]})]})}function c(){let[e,t]=(0,n.useState)(""),[r,a]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{fetch("/api/config").then(e=>e.json()).then(e=>{let r=e.targetPath??"";t(r?`?target=${encodeURIComponent(r)}`:"")}).catch(()=>{}).finally(()=>a(!0))},[]),{tq:e,ready:r}}function u(e){let[t,r]=(0,n.useState)(null),[a,l]=(0,n.useState)(null),[s,o]=(0,n.useState)(!1);(0,n.useEffect)(()=>{Promise.all([fetch(`/api/monorepo${e}`).then(e=>e.json()).catch(()=>({monorepo:null})),fetch(`/api/monorepo/active${e}`).then(e=>e.json()).catch(()=>({workspace:null}))]).then(([e,t])=>{r(e.monorepo??null),l(t.workspace??null)}).finally(()=>o(!0))},[e]);let i=(0,n.useCallback)(async t=>{l(t),await fetch(`/api/monorepo/active${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workspace:t})}).catch(()=>{})},[e]),c=a?`&workspace=${encodeURIComponent(a)}`:"";return{monorepo:t,activeWorkspace:a,setActiveWorkspace:i,ready:s,wq:c}}e.s(["useTargetPath",0,c],25010),e.s(["useActiveWorkspace",0,u],60888);let d={tier:"free",issuedAt:null,expiresAt:null,userId:null,features:[],isValid:!1,isExpired:!1,licenseKey:null,instanceId:null,productName:null,subscriptionStatus:null,validatedAt:null,revalidationDue:null,gracePeriodEnd:null,activationLimit:null,activationUsage:null,cacheStatus:"no-cache",daysSinceValidation:null};function p(e){let[t,r]=(0,n.useState)(null),[a,l]=(0,n.useState)(!1),[s,o]=(0,n.useState)(0);(0,n.useEffect)(()=>{fetch(`/api/license${e}`).then(e=>e.json()).then(e=>r(e)).catch(()=>r(d)).finally(()=>l(!0))},[e,s]);let i=(0,n.useCallback)(()=>o(e=>e+1),[]),c=!!t&&"free"!==t.tier&&"forge-pro"!==t.tier&&t.isValid&&!t.isExpired&&"expired"!==t.cacheStatus;return{license:t,ready:a,refresh:i,isPro:c}}e.s(["useLicense",0,p],13121);let f=[{href:"/blue",label:"BLUE",color:"rgb(59,130,246)"},{href:"/amber",label:"AMBER",color:"rgb(251,191,36)"},{href:"/green",label:"GREEN",color:"rgb(52,211,153)"},{href:"/pricing",label:"Plans",color:"rgb(167,139,250)"},{href:"/settings",label:"⚙",color:void 0}];e.s(["PrismDock",0,function(){let e=(0,a.usePathname)(),{tq:n}=c(),{monorepo:l,activeWorkspace:s,setActiveWorkspace:o}=u(n),{isPro:d}=p(n);return(0,t.jsxs)("div",{className:"fixed top-3 left-1/2 -translate-x-1/2 z-50 flex items-center gap-2 px-4 py-2 rounded-full",style:{background:"linear-gradient(to bottom, rgba(15,23,42,0.4), rgba(2,6,23,0.5))",backdropFilter:"blur(24px) saturate(1.5)",border:"1px solid rgba(51,65,85,0.3)",boxShadow:"0 1px 2px rgba(15,23,42,.06),0 4px 12px rgba(15,23,42,.12),0 16px 40px rgba(15,23,42,.18),inset 0 1px 0 rgba(255,255,255,.08),inset 0 -1px 0 rgba(15,23,42,.4)"},children:[(0,t.jsxs)(r.default,{href:"/",className:"flex items-center gap-1.5 group",children:[(0,t.jsx)("span",{className:"text-sky-400 text-lg select-none",children:"✦"}),(0,t.jsxs)("span",{className:"text-slate-200 text-sm font-semibold tracking-tight group-hover:text-white transition-colors",children:["prism",(0,t.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]})]}),f.map(({href:a,label:n,color:l})=>{let s=e.startsWith(a);return(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"w-px h-4",style:{background:"rgba(51,65,85,0.6)"}}),(0,t.jsx)(r.default,{href:a,className:"text-sm font-medium transition-colors px-1",style:{color:s?l??"rgb(226,232,240)":"rgba(148,163,184,0.8)"},children:n})]},a)}),l&&"single"!==l.type&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"w-px h-4",style:{background:"rgba(51,65,85,0.6)"}}),(0,t.jsx)(i,{monorepo:l,activeWorkspace:s,onSelect:o,isPro:d})]})]})}],50667)},41147,e=>{"use strict";var t=e.i(43476),r=e.i(71645),a=e.i(22016),n=e.i(50667),l=e.i(25010),s=e.i(60888);let o="rgb(251,191,36)",i={background:"var(--surface-panel)",border:"1px solid var(--border-default)",boxShadow:"0 1px 2px rgba(15,23,42,.05),0 4px 16px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.04)"},c={background:"rgba(15,23,42,0.5)",border:"1px solid rgba(51,65,85,0.4)"};function u({label:e,value:r,accent:a}){return(0,t.jsxs)("div",{className:"rounded-lg px-4 py-3 flex flex-col gap-0.5",style:c,children:[(0,t.jsx)("span",{className:"text-xs text-slate-500 uppercase tracking-widest",children:e}),(0,t.jsx)("span",{className:"text-xl font-semibold font-mono",style:{color:a??"rgb(226,232,240)"},children:r})]})}e.s(["default",0,function(){let{tq:e,ready:c}=(0,l.useTargetPath)(),{wq:d}=(0,s.useActiveWorkspace)(e),[p,f]=(0,r.useState)(null),[x,h]=(0,r.useState)(null),[m,b]=(0,r.useState)(!1),[g,y]=(0,r.useState)(null);async function j(){b(!0),y(null);try{let t=await fetch(`/api/amber/scan${e}${d}`,{method:"POST"}),r=await t.json();if(!t.ok)throw Error(r.error??"Scan failed");f(r.scan)}catch(e){y(e instanceof Error?e.message:String(e))}finally{b(!1)}}(0,r.useEffect)(()=>{c&&(fetch(`/api/amber/scan${e}${d}`).then(e=>e.json()).then(({scan:e})=>f(e??null)).catch(()=>{}),fetch(`/api/amber/registry${e}${d}`).then(e=>e.json()).then(({capabilities:e})=>h(Array.isArray(e)?e.length:0)).catch(()=>{}))},[c,d]);let v=[{href:"/amber/capabilities",label:"Capabilities",icon:"🧩",desc:`${x??"—"} registered`},{href:"/amber/files",label:"Files",icon:"📁",desc:p?`${p.file_count} scanned`:"No scan yet"},{href:"/amber/coverage",label:"Coverage",icon:"📊",desc:p?`${p.drift_count} drift entries`:"No scan yet"}];return(0,t.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"var(--bg-app)"},children:[(0,t.jsx)(n.PrismDock,{}),(0,t.jsxs)("main",{className:"flex-1 flex flex-col items-center px-6 pt-32 pb-16 gap-6",style:{maxWidth:720,margin:"0 auto",width:"100%"},children:[(0,t.jsxs)("div",{className:"w-full flex items-center justify-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("h1",{className:"text-xl font-semibold text-slate-100 tracking-tight",children:[(0,t.jsx)("span",{className:"font-mono",style:{color:o},children:"AMBER"}),(0,t.jsx)("span",{className:"text-slate-400 text-sm font-normal ml-2",children:"Capability Registry + Coverage"})]}),p&&(0,t.jsxs)("p",{className:"text-xs text-slate-500 mt-0.5 font-mono",children:["Last scan: ",new Date(p.created_at).toLocaleString()," · ",p.target]})]}),(0,t.jsx)("button",{onClick:j,disabled:m,className:"px-4 py-2 rounded-lg text-sm font-semibold transition-all disabled:opacity-50",style:{background:o,color:"#020617"},children:m?"Scanning…":p?"Re-scan":"Run scan"})]}),g&&(0,t.jsx)("div",{className:"w-full rounded-lg px-4 py-3 text-sm text-red-400 font-mono",style:{background:"rgba(239,68,68,0.08)",border:"1px solid rgba(239,68,68,0.2)"},children:g}),!p&&!m&&(0,t.jsxs)("div",{className:"w-full rounded-xl p-8 text-center flex flex-col items-center gap-3",style:i,children:[(0,t.jsx)("span",{className:"text-4xl",children:"🟡"}),(0,t.jsx)("p",{className:"text-slate-300 font-medium",children:"No AMBER scan yet"}),(0,t.jsxs)("p",{className:"text-slate-500 text-sm max-w-sm",children:["Run a scan to analyse your capability registry, file coverage, and documentation drift. Requires a ",(0,t.jsx)("span",{className:"font-mono text-amber-400",children:".amber/capabilities.md"})," in the target project."]})]}),p&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"w-full grid grid-cols-4 gap-3",children:[(0,t.jsx)(u,{label:"Files",value:p.file_count}),(0,t.jsx)(u,{label:"Capabilities",value:x??p.capability_count,accent:o}),(0,t.jsx)(u,{label:"Drift",value:p.drift_count,accent:p.drift_count>0?"rgb(248,113,113)":"rgb(52,211,153)"}),(0,t.jsx)(u,{label:"Orphans",value:p.orphan_capability_count,accent:p.orphan_capability_count>0?"rgb(251,191,36)":"rgb(52,211,153)"})]}),p.drift_count>0&&(0,t.jsxs)("div",{className:"w-full rounded-xl p-5 flex flex-col gap-3",style:i,children:[(0,t.jsxs)("h2",{className:"text-xs font-semibold text-slate-400 uppercase tracking-widest",children:["Recent Drift (",p.drift_count,")"]}),(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[p.drift.slice(0,5).map((e,r)=>(0,t.jsxs)("div",{className:"flex items-center justify-between py-1 border-b",style:{borderColor:"rgba(51,65,85,0.3)"},children:[(0,t.jsx)("span",{className:"text-xs font-mono text-slate-400 truncate flex-1",children:e.file}),(0,t.jsx)("span",{className:"text-xs font-mono text-amber-400 ml-3 flex-shrink-0",children:e.kind.replace(/_/g," ")})]},r)),p.drift_count>5&&(0,t.jsxs)(a.default,{href:"/amber/coverage",className:"text-xs text-amber-400 hover:underline mt-1",children:["+",p.drift_count-5," more → Coverage"]})]})]}),p.orphan_capability_count>0&&(0,t.jsxs)("div",{className:"w-full rounded-xl p-5 flex flex-col gap-3",style:i,children:[(0,t.jsxs)("h2",{className:"text-xs font-semibold text-amber-400 uppercase tracking-widest",children:["Orphan Capabilities (",p.orphan_capability_count,")"]}),(0,t.jsx)("p",{className:"text-xs text-slate-500",children:"Registered in capabilities.md but matched no scanned files."}),(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:p.orphan_capability_ids.map(e=>(0,t.jsx)(a.default,{href:`/amber/capabilities/${encodeURIComponent(e)}`,className:"text-xs font-mono px-2 py-1 rounded hover:brightness-110 transition-all",style:{background:"rgba(251,191,36,0.1)",color:o,border:"1px solid rgba(251,191,36,0.25)"},children:e},e))})]}),p.unknown_ref_count>0&&(0,t.jsxs)("div",{className:"w-full rounded-xl p-5 flex flex-col gap-3",style:i,children:[(0,t.jsxs)("h2",{className:"text-xs font-semibold text-red-400 uppercase tracking-widest",children:["Unknown Capability Refs (",p.unknown_ref_count,")"]}),(0,t.jsx)("p",{className:"text-xs text-slate-500",children:"Files reference capability IDs not in the registry."}),(0,t.jsx)("div",{className:"flex flex-col gap-1",children:p.unknown_capability_refs.slice(0,5).map((e,r)=>(0,t.jsxs)("div",{className:"flex items-center gap-3 py-1 border-b",style:{borderColor:"rgba(51,65,85,0.3)"},children:[(0,t.jsx)("span",{className:"text-xs font-mono text-slate-400 truncate flex-1",children:e.file}),(0,t.jsx)("span",{className:"text-xs font-mono text-red-400",children:e.id})]},r))})]})]}),(0,t.jsx)("div",{className:"w-full grid grid-cols-3 gap-3",children:v.map(({href:e,label:r,icon:n,desc:l})=>(0,t.jsxs)(a.default,{href:e,className:"rounded-xl p-5 flex flex-col gap-2 transition-all hover:brightness-110",style:{...i,borderColor:o+"30"},children:[(0,t.jsx)("span",{className:"text-2xl",children:n}),(0,t.jsx)("span",{className:"text-sm font-semibold",style:{color:o},children:r}),(0,t.jsx)("span",{className:"text-xs text-slate-500",children:l})]},e))})]}),(0,t.jsxs)("footer",{className:"text-center py-4 text-xs text-slate-600",children:["prism",(0,t.jsx)("span",{className:"font-mono",children:"0x2A"})," v","0.7.2"," · AMBER"]})]})}])}]);
|
package/.next/{standalone/.next/static/chunks/0ck1t6t3dy~gs.js → static/chunks/1655x4_8fq5li.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,95057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var s={formatUrl:function(){return o},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var n in s)Object.defineProperty(r,n,{enumerable:!0,get:s[n]});let l=e.r(90809)._(e.r(98183)),a=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,s=e.protocol||"",n=e.pathname||"",o=e.hash||"",i=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(c+=":"+e.port)),i&&"object"==typeof i&&(i=String(l.urlQueryToSearchParams(i)));let u=e.search||i&&`?${i}`||"";return s&&!s.endsWith(":")&&(s+=":"),e.slashes||(!s||a.test(s))&&!1!==c?(c="//"+(c||""),n&&"/"!==n[0]&&(n="/"+n)):c||(c=""),o&&"#"!==o[0]&&(o="#"+o),u&&"?"!==u[0]&&(u="?"+u),n=n.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${s}${c}${n}${u}${o}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return o(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return n}});let s=e.r(71645);function n(e,t){let r=(0,s.useRef)(null),n=(0,s.useRef)(null);return(0,s.useCallback)(s=>{if(null===s){let e=r.current;e&&(r.current=null,e());let t=n.current;t&&(n.current=null,t())}else e&&(r.current=l(e,s)),t&&(n.current=l(t,s))},[e,t])}function l(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},73668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return l}});let s=e.r(18967),n=e.r(52817);function l(e){if(!(0,s.isAbsoluteUrl)(e))return!0;try{let t=(0,s.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,n.hasBasePath)(r.pathname)}catch(e){return!1}}},84508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return s}});let s=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var s={default:function(){return b},useLinkStatus:function(){return y}};for(var n in s)Object.defineProperty(r,n,{enumerable:!0,get:s[n]});let l=e.r(90809),a=e.r(43476),o=l._(e.r(71645)),i=e.r(95057),c=e.r(8372),u=e.r(18581),d=e.r(18967),p=e.r(5550);e.r(33525);let f=e.r(88540),x=e.r(91949),m=e.r(73668),h=e.r(9396);function b(t){var r,s;let n,l,b,[y,j]=(0,o.useOptimistic)(x.IDLE_LINK_STATUS),v=(0,o.useRef)(null),{href:N,as:k,children:w,prefetch:S=null,passHref:_,replace:C,shallow:E,scroll:P,onClick:O,onMouseEnter:T,onTouchStart:R,legacyBehavior:L=!1,onNavigate:A,transitionTypes:I,ref:M,unstable_dynamicOnHover:U,...$}=t;n=w,L&&("string"==typeof n||"number"==typeof n)&&(n=(0,a.jsx)("a",{children:n}));let B=o.default.useContext(c.AppRouterContext),D=!1!==S,K=!1!==S?null===(s=S)||"auto"===s?h.FetchStrategy.PPR:h.FetchStrategy.Full:h.FetchStrategy.PPR,F="string"==typeof(r=k||N)?r:(0,i.formatUrl)(r);if(L){if(n?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});l=o.default.Children.only(n)}let W=L?l&&"object"==typeof l&&l.ref:M,z=o.default.useCallback(e=>(null!==B&&(v.current=(0,x.mountLinkInstance)(e,F,B,K,D,j)),()=>{v.current&&((0,x.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,x.unmountPrefetchableInstance)(e)}),[D,F,B,K,j]),q={ref:(0,u.useMergedRef)(z,W),onClick(t){L||"function"!=typeof O||O(t),L&&l.props&&"function"==typeof l.props.onClick&&l.props.onClick(t),!B||t.defaultPrevented||function(t,r,s,n,l,a,i){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(r)){n&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),a){let e=!1;if(a({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(99781);o.default.startTransition(()=>{d(r,n?"replace":"push",!1===l?f.ScrollBehavior.NoScroll:f.ScrollBehavior.Default,s.current,i)})}}(t,F,v,C,P,A,I)},onMouseEnter(e){L||"function"!=typeof T||T(e),L&&l.props&&"function"==typeof l.props.onMouseEnter&&l.props.onMouseEnter(e),B&&D&&(0,x.onNavigationIntent)(e.currentTarget,!0===U)},onTouchStart:function(e){L||"function"!=typeof R||R(e),L&&l.props&&"function"==typeof l.props.onTouchStart&&l.props.onTouchStart(e),B&&D&&(0,x.onNavigationIntent)(e.currentTarget,!0===U)}};return(0,d.isAbsoluteUrl)(F)?q.href=F:L&&!_&&("a"!==l.type||"href"in l.props)||(q.href=(0,p.addBasePath)(F)),b=L?o.default.cloneElement(l,q):(0,a.jsx)("a",{...$,...q,children:n}),(0,a.jsx)(g.Provider,{value:y,children:b})}e.r(84508);let g=(0,o.createContext)(x.IDLE_LINK_STATUS),y=()=>(0,o.useContext)(g);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18566,(e,t,r)=>{t.exports=e.r(76562)},50667,36528,25010,60888,13121,e=>{"use strict";var t=e.i(43476),r=e.i(22016),s=e.i(18566),n=e.i(71645);let l={monorepo:{tier:"pro",label:"Monorepo support"},aggregate_scan:{tier:"pro",label:"Aggregate workspace scan"},cross_workspace_insights:{tier:"pro",label:"Cross-workspace insights"},llm_insights:{tier:"pro",label:"AI-powered insights"},custom_queries:{tier:"pro",label:"Custom GREEN queries"},cross_layer_context:{tier:"pro",label:"Cross-layer context"},auto_insights:{tier:"pro",label:"Auto-generated insights"},team_sync:{tier:"team",label:"Team sync"},ci_integration:{tier:"team",label:"CI integration"},forge_unlimited:{tier:"forge-pro",label:"forge0x2B unlimited"},forge_unlimited_generation:{tier:"forge-pro",label:"forge0x2B unlimited generation"}};function a(e){return"free"!==l[e].tier}e.s(["FREE_TIER_LOC_LIMIT",0,5e4,"showProBadge",0,a],36528);let o=()=>(0,t.jsx)("span",{className:"text-[10px] font-bold px-1 py-0.5 rounded leading-none",style:{background:"rgba(251,191,36,0.15)",color:"rgb(251,191,36)",border:"1px solid rgba(251,191,36,0.3)"},children:"PRO"});function i({monorepo:e,activeWorkspace:r,onSelect:s,isPro:l=!1}){let[c,u]=(0,n.useState)(!1),d=(0,n.useRef)(null);if((0,n.useEffect)(()=>{function e(e){d.current&&!d.current.contains(e.target)&&u(!1)}return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]),!e||"single"===e.type||0===e.packages.length)return null;let p=a("monorepo")&&!l;return(0,t.jsxs)("div",{className:"relative",ref:d,children:[(0,t.jsxs)("button",{onClick:()=>u(e=>!e),className:"flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-medium transition-colors",style:{background:c?"rgba(51,65,85,0.5)":"rgba(51,65,85,0.25)",border:"1px solid rgba(51,65,85,0.5)",color:"rgb(148,163,184)"},title:`Monorepo: ${e.type}`,children:[(0,t.jsx)("span",{className:"font-mono",style:{color:"rgb(52,211,153)",fontSize:10},children:e.type.toUpperCase()}),(0,t.jsx)("span",{className:"max-w-[80px] truncate",children:r??"all workspaces"}),p&&(0,t.jsx)(o,{}),(0,t.jsx)("svg",{width:"8",height:"8",viewBox:"0 0 8 8",fill:"currentColor",className:"opacity-60",children:(0,t.jsx)("path",{d:"M1 2.5l3 3 3-3",stroke:"currentColor",strokeWidth:"1.2",fill:"none",strokeLinecap:"round"})})]}),c&&(0,t.jsxs)("div",{className:"absolute top-full mt-1 right-0 z-50 rounded-xl overflow-hidden py-1 min-w-[180px]",style:{background:"rgba(15,23,42,0.95)",backdropFilter:"blur(20px)",border:"1px solid rgba(51,65,85,0.5)",boxShadow:"0 4px 24px rgba(0,0,0,0.4)"},children:[(0,t.jsxs)("button",{className:"w-full text-left px-3 py-2 text-xs flex items-center gap-2 transition-colors hover:bg-white/5",style:{color:null===r?"rgb(52,211,153)":"rgb(148,163,184)"},onClick:()=>{s(null),u(!1)},children:[(0,t.jsx)("span",{className:"font-mono text-[10px] opacity-60",children:"∑"}),"All workspaces",null===r&&(0,t.jsx)("span",{className:"ml-auto text-[10px] opacity-60",children:"✓"})]}),(0,t.jsx)("div",{className:"my-1",style:{borderTop:"1px solid rgba(51,65,85,0.3)"}}),e.packages.map(e=>(0,t.jsxs)("button",{className:"w-full text-left px-3 py-2 text-xs flex items-center gap-2 transition-colors hover:bg-white/5",style:{color:r===e.name?"rgb(52,211,153)":"rgb(148,163,184)"},onClick:()=>{s(e.name),u(!1)},children:[(0,t.jsx)("span",{className:"font-mono text-[10px] opacity-50",children:"pkg"}),(0,t.jsx)("span",{className:"flex-1 truncate",children:e.name}),void 0!==e.loc&&(0,t.jsxs)("span",{className:"text-[10px] font-mono opacity-40",children:[(e.loc/1e3).toFixed(1),"k"]}),r===e.name&&(0,t.jsx)("span",{className:"text-[10px] opacity-60",children:"✓"})]},e.path))]})]})}function c(){let[e,t]=(0,n.useState)(""),[r,s]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{fetch("/api/config").then(e=>e.json()).then(e=>{let r=e.targetPath??"";t(r?`?target=${encodeURIComponent(r)}`:"")}).catch(()=>{}).finally(()=>s(!0))},[]),{tq:e,ready:r}}function u(e){let[t,r]=(0,n.useState)(null),[s,l]=(0,n.useState)(null),[a,o]=(0,n.useState)(!1);(0,n.useEffect)(()=>{Promise.all([fetch(`/api/monorepo${e}`).then(e=>e.json()).catch(()=>({monorepo:null})),fetch(`/api/monorepo/active${e}`).then(e=>e.json()).catch(()=>({workspace:null}))]).then(([e,t])=>{r(e.monorepo??null),l(t.workspace??null)}).finally(()=>o(!0))},[e]);let i=(0,n.useCallback)(async t=>{l(t),await fetch(`/api/monorepo/active${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workspace:t})}).catch(()=>{})},[e]),c=s?`&workspace=${encodeURIComponent(s)}`:"";return{monorepo:t,activeWorkspace:s,setActiveWorkspace:i,ready:a,wq:c}}e.s(["useTargetPath",0,c],25010),e.s(["useActiveWorkspace",0,u],60888);let d={tier:"free",issuedAt:null,expiresAt:null,userId:null,features:[],isValid:!1,isExpired:!1,licenseKey:null,instanceId:null,productName:null,subscriptionStatus:null,validatedAt:null,revalidationDue:null,gracePeriodEnd:null,activationLimit:null,activationUsage:null,cacheStatus:"no-cache",daysSinceValidation:null};function p(e){let[t,r]=(0,n.useState)(null),[s,l]=(0,n.useState)(!1),[a,o]=(0,n.useState)(0);(0,n.useEffect)(()=>{fetch(`/api/license${e}`).then(e=>e.json()).then(e=>r(e)).catch(()=>r(d)).finally(()=>l(!0))},[e,a]);let i=(0,n.useCallback)(()=>o(e=>e+1),[]),c=!!t&&"free"!==t.tier&&"forge-pro"!==t.tier&&t.isValid&&!t.isExpired&&"expired"!==t.cacheStatus;return{license:t,ready:s,refresh:i,isPro:c}}e.s(["useLicense",0,p],13121);let f=[{href:"/blue",label:"BLUE",color:"rgb(59,130,246)"},{href:"/amber",label:"AMBER",color:"rgb(251,191,36)"},{href:"/green",label:"GREEN",color:"rgb(52,211,153)"},{href:"/settings",label:"⚙",color:void 0}];e.s(["PrismDock",0,function(){let e=(0,s.usePathname)(),{tq:n}=c(),{monorepo:l,activeWorkspace:a,setActiveWorkspace:o}=u(n),{isPro:d}=p(n);return(0,t.jsxs)("div",{className:"fixed top-3 left-1/2 -translate-x-1/2 z-50 flex items-center gap-2 px-4 py-2 rounded-full",style:{background:"linear-gradient(to bottom, rgba(15,23,42,0.4), rgba(2,6,23,0.5))",backdropFilter:"blur(24px) saturate(1.5)",border:"1px solid rgba(51,65,85,0.3)",boxShadow:"0 1px 2px rgba(15,23,42,.06),0 4px 12px rgba(15,23,42,.12),0 16px 40px rgba(15,23,42,.18),inset 0 1px 0 rgba(255,255,255,.08),inset 0 -1px 0 rgba(15,23,42,.4)"},children:[(0,t.jsxs)(r.default,{href:"/",className:"flex items-center gap-1.5 group",children:[(0,t.jsx)("span",{className:"text-sky-400 text-lg select-none",children:"✦"}),(0,t.jsxs)("span",{className:"text-slate-200 text-sm font-semibold tracking-tight group-hover:text-white transition-colors",children:["prism",(0,t.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]})]}),f.map(({href:s,label:n,color:l})=>{let a=e.startsWith(s);return(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"w-px h-4",style:{background:"rgba(51,65,85,0.6)"}}),(0,t.jsx)(r.default,{href:s,className:"text-sm font-medium transition-colors px-1",style:{color:a?l??"rgb(226,232,240)":"rgba(148,163,184,0.8)"},children:n})]},s)}),l&&"single"!==l.type&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"w-px h-4",style:{background:"rgba(51,65,85,0.6)"}}),(0,t.jsx)(i,{monorepo:l,activeWorkspace:a,onSelect:o,isPro:d})]})]})}],50667)},7307,e=>{"use strict";var t=e.i(43476),r=e.i(71645),s=e.i(22016),n=e.i(50667);let l={background:"var(--surface-panel)",border:"1px solid var(--border-default)",boxShadow:"0 1px 2px rgba(15,23,42,.05),0 4px 16px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.04)"};function a({turn:e}){return(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)("div",{className:"max-w-lg rounded-2xl rounded-tr-sm px-4 py-3 text-sm text-slate-200 leading-relaxed",style:{background:"rgba(59,130,246,0.15)",border:"1px solid rgba(59,130,246,0.25)"},children:e.prompt})}),e.response?(0,t.jsx)("div",{className:"flex justify-start",children:(0,t.jsxs)("div",{className:"max-w-lg rounded-2xl rounded-tl-sm px-4 py-3 text-sm text-slate-300 leading-relaxed",style:{background:"rgba(15,23,42,0.6)",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,t.jsx)("span",{className:"text-blue-400 text-xs font-mono mr-2",children:"✦"}),(0,t.jsx)("span",{style:{whiteSpace:"pre-wrap"},children:e.response})]})}):(0,t.jsx)("div",{className:"flex justify-start",children:(0,t.jsxs)("div",{className:"rounded-2xl rounded-tl-sm px-4 py-3 flex items-center gap-2",style:{background:"rgba(15,23,42,0.6)",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,t.jsx)("span",{className:"animate-spin inline-block w-3 h-3 border border-blue-400 border-t-transparent rounded-full"}),(0,t.jsx)("span",{className:"text-xs text-slate-500",children:"Thinking…"})]})})]})}e.s(["default",0,function({params:e}){let{id:o}=(0,r.use)(e),[i,c]=(0,r.useState)(null),[u,d]=(0,r.useState)(!0),[p,f]=(0,r.useState)(!1),[x,m]=(0,r.useState)(""),[h,b]=(0,r.useState)(!1),[g,y]=(0,r.useState)(!1),j=(0,r.useRef)(null);async function v(){try{let e=await fetch(`/api/blue/sessions/${o}`);if(404===e.status)return void f(!0);let t=await e.json();c(t.session)}catch{f(!0)}finally{d(!1)}}async function N(){if(!x.trim()||h||!i)return;let e=x.trim();m(""),b(!0),c(t=>t?{...t,turns:[...t.turns,{turn:t.turns.length+1,prompt:e,created_at:new Date().toISOString()}]}:t);try{let t=await fetch(`/api/blue/sessions/${o}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({prompt:e})}),r=await t.json();c(r.session)}catch{await v()}finally{b(!1)}}async function k(e){if(i){y(!0);try{let t=await fetch(`/api/blue/sessions/${o}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({status:e})}),r=await t.json();c(r.session)}finally{y(!1)}}}if((0,r.useEffect)(()=>{v()},[o]),(0,r.useEffect)(()=>{j.current?.scrollIntoView({behavior:"smooth"})},[i?.turns.length]),u)return(0,t.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"var(--bg-app)"},children:[(0,t.jsx)(n.PrismDock,{}),(0,t.jsx)("main",{className:"flex-1 flex items-center justify-center",children:(0,t.jsx)("span",{className:"text-slate-500 text-sm",children:"Loading…"})})]});if(p||!i)return(0,t.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"var(--bg-app)"},children:[(0,t.jsx)(n.PrismDock,{}),(0,t.jsxs)("main",{className:"flex-1 flex flex-col items-center justify-center gap-4",children:[(0,t.jsx)("p",{className:"text-slate-400",children:"Session not found."}),(0,t.jsx)(s.default,{href:"/blue/sessions",className:"text-indigo-400 text-sm hover:underline",children:"← Back to Sessions"})]})]});let w="active"===i.status;return(0,t.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"var(--bg-app)"},children:[(0,t.jsx)(n.PrismDock,{}),(0,t.jsxs)("main",{className:"flex-1 flex flex-col items-center px-6 pt-28 pb-4",style:{maxWidth:720,margin:"0 auto",width:"100%"},children:[(0,t.jsxs)("div",{className:"w-full flex items-center justify-between mb-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[(0,t.jsx)(s.default,{href:"/blue",className:"text-slate-500 hover:text-slate-300 transition-colors",children:"BLUE"}),(0,t.jsx)("span",{className:"text-slate-700",children:"/"}),(0,t.jsx)(s.default,{href:"/blue/sessions",className:"text-slate-500 hover:text-slate-300 transition-colors",children:"Sessions"}),(0,t.jsx)("span",{className:"text-slate-700",children:"/"}),(0,t.jsx)("span",{className:"text-slate-300 font-medium truncate max-w-xs",children:i.title})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[w&&(0,t.jsx)("button",{onClick:()=>k("completed"),disabled:g,className:"text-xs px-3 py-1 rounded-lg font-medium transition-all disabled:opacity-40",style:{background:"rgba(52,211,153,0.1)",color:"rgb(52,211,153)",border:"1px solid rgba(52,211,153,0.25)"},children:"Mark complete"}),w&&(0,t.jsx)("button",{onClick:()=>k("abandoned"),disabled:g,className:"text-xs px-3 py-1 rounded-lg font-medium transition-all disabled:opacity-40",style:{background:"rgba(148,163,184,0.08)",color:"rgba(148,163,184,0.6)",border:"1px solid rgba(148,163,184,0.15)"},children:"Abandon"}),!w&&(0,t.jsx)("span",{className:"text-xs font-mono px-2 py-1 rounded-lg",style:{background:"rgba(148,163,184,0.08)",color:"rgba(148,163,184,0.6)",border:"1px solid rgba(148,163,184,0.15)"},children:i.status})]})]}),i.rec_id&&(0,t.jsx)("div",{className:"w-full mb-4",children:(0,t.jsx)(s.default,{href:`/blue/recommendations/${i.rec_id}`,className:"text-xs text-indigo-400 hover:text-indigo-300 transition-colors font-mono",children:"↗ linked recommendation"})}),(0,t.jsxs)("div",{className:"w-full flex flex-col gap-5 flex-1 overflow-y-auto pb-4",children:[0===i.turns.length&&(0,t.jsx)("div",{className:"w-full rounded-xl p-8 text-center flex flex-col items-center gap-2",style:l,children:(0,t.jsx)("p",{className:"text-slate-400 text-sm",children:"No messages yet. Ask your first question below."})}),i.turns.map(e=>(0,t.jsx)(a,{turn:e},e.turn)),(0,t.jsx)("div",{ref:j})]}),w&&(0,t.jsx)("div",{className:"w-full mt-4 sticky bottom-4",children:(0,t.jsxs)("div",{className:"w-full rounded-xl p-3 flex items-end gap-3",style:{background:"rgba(2,6,23,0.85)",backdropFilter:"blur(16px)",border:"1px solid rgba(51,65,85,0.5)",boxShadow:"0 4px 24px rgba(0,0,0,0.4)"},children:[(0,t.jsx)("textarea",{rows:3,value:x,onChange:e=>m(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),N())},placeholder:"Ask about your codebase… (Enter to send, Shift+Enter for newline)",disabled:h,className:"flex-1 bg-transparent text-sm font-mono text-slate-200 outline-none resize-none placeholder:text-slate-600 disabled:opacity-50"}),(0,t.jsx)("button",{onClick:N,disabled:!x.trim()||h,className:"px-4 py-2 rounded-lg text-sm font-semibold transition-all disabled:opacity-40 flex-shrink-0 self-end",style:{background:"rgb(59,130,246)",color:"#fff"},children:h?(0,t.jsx)("span",{className:"animate-spin inline-block w-4 h-4 border-2 border-white border-t-transparent rounded-full"}):"Send"})]})})]}),(0,t.jsxs)("footer",{className:"text-center py-3 text-xs text-slate-600",children:["prism",(0,t.jsx)("span",{className:"font-mono",children:"0x2A"})," v","0.7.1"," · BLUE / Sessions"]})]})}])}]);
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,95057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var s={formatUrl:function(){return o},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var n in s)Object.defineProperty(r,n,{enumerable:!0,get:s[n]});let l=e.r(90809)._(e.r(98183)),a=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,s=e.protocol||"",n=e.pathname||"",o=e.hash||"",i=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(c+=":"+e.port)),i&&"object"==typeof i&&(i=String(l.urlQueryToSearchParams(i)));let u=e.search||i&&`?${i}`||"";return s&&!s.endsWith(":")&&(s+=":"),e.slashes||(!s||a.test(s))&&!1!==c?(c="//"+(c||""),n&&"/"!==n[0]&&(n="/"+n)):c||(c=""),o&&"#"!==o[0]&&(o="#"+o),u&&"?"!==u[0]&&(u="?"+u),n=n.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${s}${c}${n}${u}${o}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return o(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return n}});let s=e.r(71645);function n(e,t){let r=(0,s.useRef)(null),n=(0,s.useRef)(null);return(0,s.useCallback)(s=>{if(null===s){let e=r.current;e&&(r.current=null,e());let t=n.current;t&&(n.current=null,t())}else e&&(r.current=l(e,s)),t&&(n.current=l(t,s))},[e,t])}function l(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},73668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return l}});let s=e.r(18967),n=e.r(52817);function l(e){if(!(0,s.isAbsoluteUrl)(e))return!0;try{let t=(0,s.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,n.hasBasePath)(r.pathname)}catch(e){return!1}}},84508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return s}});let s=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var s={default:function(){return b},useLinkStatus:function(){return y}};for(var n in s)Object.defineProperty(r,n,{enumerable:!0,get:s[n]});let l=e.r(90809),a=e.r(43476),o=l._(e.r(71645)),i=e.r(95057),c=e.r(8372),u=e.r(18581),d=e.r(18967),p=e.r(5550);e.r(33525);let f=e.r(88540),x=e.r(91949),m=e.r(73668),h=e.r(9396);function b(t){var r,s;let n,l,b,[y,j]=(0,o.useOptimistic)(x.IDLE_LINK_STATUS),v=(0,o.useRef)(null),{href:N,as:k,children:w,prefetch:S=null,passHref:_,replace:C,shallow:P,scroll:E,onClick:O,onMouseEnter:T,onTouchStart:R,legacyBehavior:L=!1,onNavigate:A,transitionTypes:I,ref:M,unstable_dynamicOnHover:U,...$}=t;n=w,L&&("string"==typeof n||"number"==typeof n)&&(n=(0,a.jsx)("a",{children:n}));let B=o.default.useContext(c.AppRouterContext),D=!1!==S,K=!1!==S?null===(s=S)||"auto"===s?h.FetchStrategy.PPR:h.FetchStrategy.Full:h.FetchStrategy.PPR,F="string"==typeof(r=k||N)?r:(0,i.formatUrl)(r);if(L){if(n?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});l=o.default.Children.only(n)}let W=L?l&&"object"==typeof l&&l.ref:M,z=o.default.useCallback(e=>(null!==B&&(v.current=(0,x.mountLinkInstance)(e,F,B,K,D,j)),()=>{v.current&&((0,x.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,x.unmountPrefetchableInstance)(e)}),[D,F,B,K,j]),q={ref:(0,u.useMergedRef)(z,W),onClick(t){L||"function"!=typeof O||O(t),L&&l.props&&"function"==typeof l.props.onClick&&l.props.onClick(t),!B||t.defaultPrevented||function(t,r,s,n,l,a,i){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(r)){n&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),a){let e=!1;if(a({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(99781);o.default.startTransition(()=>{d(r,n?"replace":"push",!1===l?f.ScrollBehavior.NoScroll:f.ScrollBehavior.Default,s.current,i)})}}(t,F,v,C,E,A,I)},onMouseEnter(e){L||"function"!=typeof T||T(e),L&&l.props&&"function"==typeof l.props.onMouseEnter&&l.props.onMouseEnter(e),B&&D&&(0,x.onNavigationIntent)(e.currentTarget,!0===U)},onTouchStart:function(e){L||"function"!=typeof R||R(e),L&&l.props&&"function"==typeof l.props.onTouchStart&&l.props.onTouchStart(e),B&&D&&(0,x.onNavigationIntent)(e.currentTarget,!0===U)}};return(0,d.isAbsoluteUrl)(F)?q.href=F:L&&!_&&("a"!==l.type||"href"in l.props)||(q.href=(0,p.addBasePath)(F)),b=L?o.default.cloneElement(l,q):(0,a.jsx)("a",{...$,...q,children:n}),(0,a.jsx)(g.Provider,{value:y,children:b})}e.r(84508);let g=(0,o.createContext)(x.IDLE_LINK_STATUS),y=()=>(0,o.useContext)(g);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18566,(e,t,r)=>{t.exports=e.r(76562)},50667,36528,25010,60888,13121,e=>{"use strict";var t=e.i(43476),r=e.i(22016),s=e.i(18566),n=e.i(71645);let l={monorepo:{tier:"pro",label:"Monorepo support"},aggregate_scan:{tier:"pro",label:"Aggregate workspace scan"},cross_workspace_insights:{tier:"pro",label:"Cross-workspace insights"},llm_insights:{tier:"pro",label:"AI-powered insights"},custom_queries:{tier:"pro",label:"Custom GREEN queries"},cross_layer_context:{tier:"pro",label:"Cross-layer context"},auto_insights:{tier:"pro",label:"Auto-generated insights"},team_sync:{tier:"team",label:"Team sync"},ci_integration:{tier:"team",label:"CI integration"},forge_unlimited:{tier:"forge-pro",label:"forge0x2B unlimited"},forge_unlimited_generation:{tier:"forge-pro",label:"forge0x2B unlimited generation"}};function a(e){return"free"!==l[e].tier}e.s(["FREE_TIER_LOC_LIMIT",0,5e4,"showProBadge",0,a],36528);let o=()=>(0,t.jsx)("span",{className:"text-[10px] font-bold px-1 py-0.5 rounded leading-none",style:{background:"rgba(251,191,36,0.15)",color:"rgb(251,191,36)",border:"1px solid rgba(251,191,36,0.3)"},children:"PRO"});function i({monorepo:e,activeWorkspace:r,onSelect:s,isPro:l=!1}){let[c,u]=(0,n.useState)(!1),d=(0,n.useRef)(null);if((0,n.useEffect)(()=>{function e(e){d.current&&!d.current.contains(e.target)&&u(!1)}return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]),!e||"single"===e.type||0===e.packages.length)return null;let p=a("monorepo")&&!l;return(0,t.jsxs)("div",{className:"relative",ref:d,children:[(0,t.jsxs)("button",{onClick:()=>u(e=>!e),className:"flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-medium transition-colors",style:{background:c?"rgba(51,65,85,0.5)":"rgba(51,65,85,0.25)",border:"1px solid rgba(51,65,85,0.5)",color:"rgb(148,163,184)"},title:`Monorepo: ${e.type}`,children:[(0,t.jsx)("span",{className:"font-mono",style:{color:"rgb(52,211,153)",fontSize:10},children:e.type.toUpperCase()}),(0,t.jsx)("span",{className:"max-w-[80px] truncate",children:r??"all workspaces"}),p&&(0,t.jsx)(o,{}),(0,t.jsx)("svg",{width:"8",height:"8",viewBox:"0 0 8 8",fill:"currentColor",className:"opacity-60",children:(0,t.jsx)("path",{d:"M1 2.5l3 3 3-3",stroke:"currentColor",strokeWidth:"1.2",fill:"none",strokeLinecap:"round"})})]}),c&&(0,t.jsxs)("div",{className:"absolute top-full mt-1 right-0 z-50 rounded-xl overflow-hidden py-1 min-w-[180px]",style:{background:"rgba(15,23,42,0.95)",backdropFilter:"blur(20px)",border:"1px solid rgba(51,65,85,0.5)",boxShadow:"0 4px 24px rgba(0,0,0,0.4)"},children:[(0,t.jsxs)("button",{className:"w-full text-left px-3 py-2 text-xs flex items-center gap-2 transition-colors hover:bg-white/5",style:{color:null===r?"rgb(52,211,153)":"rgb(148,163,184)"},onClick:()=>{s(null),u(!1)},children:[(0,t.jsx)("span",{className:"font-mono text-[10px] opacity-60",children:"∑"}),"All workspaces",null===r&&(0,t.jsx)("span",{className:"ml-auto text-[10px] opacity-60",children:"✓"})]}),(0,t.jsx)("div",{className:"my-1",style:{borderTop:"1px solid rgba(51,65,85,0.3)"}}),e.packages.map(e=>(0,t.jsxs)("button",{className:"w-full text-left px-3 py-2 text-xs flex items-center gap-2 transition-colors hover:bg-white/5",style:{color:r===e.name?"rgb(52,211,153)":"rgb(148,163,184)"},onClick:()=>{s(e.name),u(!1)},children:[(0,t.jsx)("span",{className:"font-mono text-[10px] opacity-50",children:"pkg"}),(0,t.jsx)("span",{className:"flex-1 truncate",children:e.name}),void 0!==e.loc&&(0,t.jsxs)("span",{className:"text-[10px] font-mono opacity-40",children:[(e.loc/1e3).toFixed(1),"k"]}),r===e.name&&(0,t.jsx)("span",{className:"text-[10px] opacity-60",children:"✓"})]},e.path))]})]})}function c(){let[e,t]=(0,n.useState)(""),[r,s]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{fetch("/api/config").then(e=>e.json()).then(e=>{let r=e.targetPath??"";t(r?`?target=${encodeURIComponent(r)}`:"")}).catch(()=>{}).finally(()=>s(!0))},[]),{tq:e,ready:r}}function u(e){let[t,r]=(0,n.useState)(null),[s,l]=(0,n.useState)(null),[a,o]=(0,n.useState)(!1);(0,n.useEffect)(()=>{Promise.all([fetch(`/api/monorepo${e}`).then(e=>e.json()).catch(()=>({monorepo:null})),fetch(`/api/monorepo/active${e}`).then(e=>e.json()).catch(()=>({workspace:null}))]).then(([e,t])=>{r(e.monorepo??null),l(t.workspace??null)}).finally(()=>o(!0))},[e]);let i=(0,n.useCallback)(async t=>{l(t),await fetch(`/api/monorepo/active${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workspace:t})}).catch(()=>{})},[e]),c=s?`&workspace=${encodeURIComponent(s)}`:"";return{monorepo:t,activeWorkspace:s,setActiveWorkspace:i,ready:a,wq:c}}e.s(["useTargetPath",0,c],25010),e.s(["useActiveWorkspace",0,u],60888);let d={tier:"free",issuedAt:null,expiresAt:null,userId:null,features:[],isValid:!1,isExpired:!1,licenseKey:null,instanceId:null,productName:null,subscriptionStatus:null,validatedAt:null,revalidationDue:null,gracePeriodEnd:null,activationLimit:null,activationUsage:null,cacheStatus:"no-cache",daysSinceValidation:null};function p(e){let[t,r]=(0,n.useState)(null),[s,l]=(0,n.useState)(!1),[a,o]=(0,n.useState)(0);(0,n.useEffect)(()=>{fetch(`/api/license${e}`).then(e=>e.json()).then(e=>r(e)).catch(()=>r(d)).finally(()=>l(!0))},[e,a]);let i=(0,n.useCallback)(()=>o(e=>e+1),[]),c=!!t&&"free"!==t.tier&&"forge-pro"!==t.tier&&t.isValid&&!t.isExpired&&"expired"!==t.cacheStatus;return{license:t,ready:s,refresh:i,isPro:c}}e.s(["useLicense",0,p],13121);let f=[{href:"/blue",label:"BLUE",color:"rgb(59,130,246)"},{href:"/amber",label:"AMBER",color:"rgb(251,191,36)"},{href:"/green",label:"GREEN",color:"rgb(52,211,153)"},{href:"/pricing",label:"Plans",color:"rgb(167,139,250)"},{href:"/settings",label:"⚙",color:void 0}];e.s(["PrismDock",0,function(){let e=(0,s.usePathname)(),{tq:n}=c(),{monorepo:l,activeWorkspace:a,setActiveWorkspace:o}=u(n),{isPro:d}=p(n);return(0,t.jsxs)("div",{className:"fixed top-3 left-1/2 -translate-x-1/2 z-50 flex items-center gap-2 px-4 py-2 rounded-full",style:{background:"linear-gradient(to bottom, rgba(15,23,42,0.4), rgba(2,6,23,0.5))",backdropFilter:"blur(24px) saturate(1.5)",border:"1px solid rgba(51,65,85,0.3)",boxShadow:"0 1px 2px rgba(15,23,42,.06),0 4px 12px rgba(15,23,42,.12),0 16px 40px rgba(15,23,42,.18),inset 0 1px 0 rgba(255,255,255,.08),inset 0 -1px 0 rgba(15,23,42,.4)"},children:[(0,t.jsxs)(r.default,{href:"/",className:"flex items-center gap-1.5 group",children:[(0,t.jsx)("span",{className:"text-sky-400 text-lg select-none",children:"✦"}),(0,t.jsxs)("span",{className:"text-slate-200 text-sm font-semibold tracking-tight group-hover:text-white transition-colors",children:["prism",(0,t.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]})]}),f.map(({href:s,label:n,color:l})=>{let a=e.startsWith(s);return(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"w-px h-4",style:{background:"rgba(51,65,85,0.6)"}}),(0,t.jsx)(r.default,{href:s,className:"text-sm font-medium transition-colors px-1",style:{color:a?l??"rgb(226,232,240)":"rgba(148,163,184,0.8)"},children:n})]},s)}),l&&"single"!==l.type&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"w-px h-4",style:{background:"rgba(51,65,85,0.6)"}}),(0,t.jsx)(i,{monorepo:l,activeWorkspace:a,onSelect:o,isPro:d})]})]})}],50667)},7307,e=>{"use strict";var t=e.i(43476),r=e.i(71645),s=e.i(22016),n=e.i(50667);let l={background:"var(--surface-panel)",border:"1px solid var(--border-default)",boxShadow:"0 1px 2px rgba(15,23,42,.05),0 4px 16px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.04)"};function a({turn:e}){return(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)("div",{className:"max-w-lg rounded-2xl rounded-tr-sm px-4 py-3 text-sm text-slate-200 leading-relaxed",style:{background:"rgba(59,130,246,0.15)",border:"1px solid rgba(59,130,246,0.25)"},children:e.prompt})}),e.response?(0,t.jsx)("div",{className:"flex justify-start",children:(0,t.jsxs)("div",{className:"max-w-lg rounded-2xl rounded-tl-sm px-4 py-3 text-sm text-slate-300 leading-relaxed",style:{background:"rgba(15,23,42,0.6)",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,t.jsx)("span",{className:"text-blue-400 text-xs font-mono mr-2",children:"✦"}),(0,t.jsx)("span",{style:{whiteSpace:"pre-wrap"},children:e.response})]})}):(0,t.jsx)("div",{className:"flex justify-start",children:(0,t.jsxs)("div",{className:"rounded-2xl rounded-tl-sm px-4 py-3 flex items-center gap-2",style:{background:"rgba(15,23,42,0.6)",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,t.jsx)("span",{className:"animate-spin inline-block w-3 h-3 border border-blue-400 border-t-transparent rounded-full"}),(0,t.jsx)("span",{className:"text-xs text-slate-500",children:"Thinking…"})]})})]})}e.s(["default",0,function({params:e}){let{id:o}=(0,r.use)(e),[i,c]=(0,r.useState)(null),[u,d]=(0,r.useState)(!0),[p,f]=(0,r.useState)(!1),[x,m]=(0,r.useState)(""),[h,b]=(0,r.useState)(!1),[g,y]=(0,r.useState)(!1),j=(0,r.useRef)(null);async function v(){try{let e=await fetch(`/api/blue/sessions/${o}`);if(404===e.status)return void f(!0);let t=await e.json();c(t.session)}catch{f(!0)}finally{d(!1)}}async function N(){if(!x.trim()||h||!i)return;let e=x.trim();m(""),b(!0),c(t=>t?{...t,turns:[...t.turns,{turn:t.turns.length+1,prompt:e,created_at:new Date().toISOString()}]}:t);try{let t=await fetch(`/api/blue/sessions/${o}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({prompt:e})}),r=await t.json();c(r.session)}catch{await v()}finally{b(!1)}}async function k(e){if(i){y(!0);try{let t=await fetch(`/api/blue/sessions/${o}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({status:e})}),r=await t.json();c(r.session)}finally{y(!1)}}}if((0,r.useEffect)(()=>{v()},[o]),(0,r.useEffect)(()=>{j.current?.scrollIntoView({behavior:"smooth"})},[i?.turns.length]),u)return(0,t.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"var(--bg-app)"},children:[(0,t.jsx)(n.PrismDock,{}),(0,t.jsx)("main",{className:"flex-1 flex items-center justify-center",children:(0,t.jsx)("span",{className:"text-slate-500 text-sm",children:"Loading…"})})]});if(p||!i)return(0,t.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"var(--bg-app)"},children:[(0,t.jsx)(n.PrismDock,{}),(0,t.jsxs)("main",{className:"flex-1 flex flex-col items-center justify-center gap-4",children:[(0,t.jsx)("p",{className:"text-slate-400",children:"Session not found."}),(0,t.jsx)(s.default,{href:"/blue/sessions",className:"text-indigo-400 text-sm hover:underline",children:"← Back to Sessions"})]})]});let w="active"===i.status;return(0,t.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"var(--bg-app)"},children:[(0,t.jsx)(n.PrismDock,{}),(0,t.jsxs)("main",{className:"flex-1 flex flex-col items-center px-6 pt-28 pb-4",style:{maxWidth:720,margin:"0 auto",width:"100%"},children:[(0,t.jsxs)("div",{className:"w-full flex items-center justify-between mb-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[(0,t.jsx)(s.default,{href:"/blue",className:"text-slate-500 hover:text-slate-300 transition-colors",children:"BLUE"}),(0,t.jsx)("span",{className:"text-slate-700",children:"/"}),(0,t.jsx)(s.default,{href:"/blue/sessions",className:"text-slate-500 hover:text-slate-300 transition-colors",children:"Sessions"}),(0,t.jsx)("span",{className:"text-slate-700",children:"/"}),(0,t.jsx)("span",{className:"text-slate-300 font-medium truncate max-w-xs",children:i.title})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[w&&(0,t.jsx)("button",{onClick:()=>k("completed"),disabled:g,className:"text-xs px-3 py-1 rounded-lg font-medium transition-all disabled:opacity-40",style:{background:"rgba(52,211,153,0.1)",color:"rgb(52,211,153)",border:"1px solid rgba(52,211,153,0.25)"},children:"Mark complete"}),w&&(0,t.jsx)("button",{onClick:()=>k("abandoned"),disabled:g,className:"text-xs px-3 py-1 rounded-lg font-medium transition-all disabled:opacity-40",style:{background:"rgba(148,163,184,0.08)",color:"rgba(148,163,184,0.6)",border:"1px solid rgba(148,163,184,0.15)"},children:"Abandon"}),!w&&(0,t.jsx)("span",{className:"text-xs font-mono px-2 py-1 rounded-lg",style:{background:"rgba(148,163,184,0.08)",color:"rgba(148,163,184,0.6)",border:"1px solid rgba(148,163,184,0.15)"},children:i.status})]})]}),i.rec_id&&(0,t.jsx)("div",{className:"w-full mb-4",children:(0,t.jsx)(s.default,{href:`/blue/recommendations/${i.rec_id}`,className:"text-xs text-indigo-400 hover:text-indigo-300 transition-colors font-mono",children:"↗ linked recommendation"})}),(0,t.jsxs)("div",{className:"w-full flex flex-col gap-5 flex-1 overflow-y-auto pb-4",children:[0===i.turns.length&&(0,t.jsx)("div",{className:"w-full rounded-xl p-8 text-center flex flex-col items-center gap-2",style:l,children:(0,t.jsx)("p",{className:"text-slate-400 text-sm",children:"No messages yet. Ask your first question below."})}),i.turns.map(e=>(0,t.jsx)(a,{turn:e},e.turn)),(0,t.jsx)("div",{ref:j})]}),w&&(0,t.jsx)("div",{className:"w-full mt-4 sticky bottom-4",children:(0,t.jsxs)("div",{className:"w-full rounded-xl p-3 flex items-end gap-3",style:{background:"rgba(2,6,23,0.85)",backdropFilter:"blur(16px)",border:"1px solid rgba(51,65,85,0.5)",boxShadow:"0 4px 24px rgba(0,0,0,0.4)"},children:[(0,t.jsx)("textarea",{rows:3,value:x,onChange:e=>m(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),N())},placeholder:"Ask about your codebase… (Enter to send, Shift+Enter for newline)",disabled:h,className:"flex-1 bg-transparent text-sm font-mono text-slate-200 outline-none resize-none placeholder:text-slate-600 disabled:opacity-50"}),(0,t.jsx)("button",{onClick:N,disabled:!x.trim()||h,className:"px-4 py-2 rounded-lg text-sm font-semibold transition-all disabled:opacity-40 flex-shrink-0 self-end",style:{background:"rgb(59,130,246)",color:"#fff"},children:h?(0,t.jsx)("span",{className:"animate-spin inline-block w-4 h-4 border-2 border-white border-t-transparent rounded-full"}):"Send"})]})})]}),(0,t.jsxs)("footer",{className:"text-center py-3 text-xs text-slate-600",children:["prism",(0,t.jsx)("span",{className:"font-mono",children:"0x2A"})," v","0.7.2"," · BLUE / Sessions"]})]})}])}]);
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.7.2 — Pricing Page
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- **`app/pricing/page.tsx`**: full pricing page with Monthly/Yearly billing toggle (−17% yearly), tier grid for prism Free/Pro/Team, forge Pro card, Spectrum 0x55 bundle card, feature comparison table, and FAQ section.
|
|
8
|
+
- **`components/pricing/PricingCard.tsx`**: reusable tier card with price display, CTA button, current-plan badge, and highlighted border variant.
|
|
9
|
+
- **`components/pricing/BillingToggle.tsx`**: monthly/yearly toggle with animated pill and −17% badge.
|
|
10
|
+
- **`components/pricing/FeatureList.tsx`**: simple feature bullet list.
|
|
11
|
+
- **Lemonsqueezy checkout links** wired up to all 4 products (Pro, Team, forge, Spectrum).
|
|
12
|
+
- **PrismDock** "Plans" link → `/pricing` (violet accent).
|
|
13
|
+
- **Settings license section**: "View Plans →" internal link to `/pricing` alongside existing "Get a license →" external link.
|
|
14
|
+
|
|
3
15
|
## 0.7.1 — Lemonsqueezy Hardening + Typed Errors
|
|
4
16
|
|
|
5
17
|
### Added
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,95057,(e,t,l)=>{"use strict";Object.defineProperty(l,"__esModule",{value:!0});var r={formatUrl:function(){return o},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var a in r)Object.defineProperty(l,a,{enumerable:!0,get:r[a]});let s=e.r(90809)._(e.r(98183)),n=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:l}=e,r=e.protocol||"",a=e.pathname||"",o=e.hash||"",i=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:l&&(c=t+(~l.indexOf(":")?`[${l}]`:l),e.port&&(c+=":"+e.port)),i&&"object"==typeof i&&(i=String(s.urlQueryToSearchParams(i)));let u=e.search||i&&`?${i}`||"";return r&&!r.endsWith(":")&&(r+=":"),e.slashes||(!r||n.test(r))&&!1!==c?(c="//"+(c||""),a&&"/"!==a[0]&&(a="/"+a)):c||(c=""),o&&"#"!==o[0]&&(o="#"+o),u&&"?"!==u[0]&&(u="?"+u),a=a.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${r}${c}${a}${u}${o}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return o(e)}},18581,(e,t,l)=>{"use strict";Object.defineProperty(l,"__esModule",{value:!0}),Object.defineProperty(l,"useMergedRef",{enumerable:!0,get:function(){return a}});let r=e.r(71645);function a(e,t){let l=(0,r.useRef)(null),a=(0,r.useRef)(null);return(0,r.useCallback)(r=>{if(null===r){let e=l.current;e&&(l.current=null,e());let t=a.current;t&&(a.current=null,t())}else e&&(l.current=s(e,r)),t&&(a.current=s(t,r))},[e,t])}function s(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let l=e(t);return"function"==typeof l?l:()=>e(null)}}("function"==typeof l.default||"object"==typeof l.default&&null!==l.default)&&void 0===l.default.__esModule&&(Object.defineProperty(l.default,"__esModule",{value:!0}),Object.assign(l.default,l),t.exports=l.default)},73668,(e,t,l)=>{"use strict";Object.defineProperty(l,"__esModule",{value:!0}),Object.defineProperty(l,"isLocalURL",{enumerable:!0,get:function(){return s}});let r=e.r(18967),a=e.r(52817);function s(e){if(!(0,r.isAbsoluteUrl)(e))return!0;try{let t=(0,r.getLocationOrigin)(),l=new URL(e,t);return l.origin===t&&(0,a.hasBasePath)(l.pathname)}catch(e){return!1}}},84508,(e,t,l)=>{"use strict";Object.defineProperty(l,"__esModule",{value:!0}),Object.defineProperty(l,"errorOnce",{enumerable:!0,get:function(){return r}});let r=e=>{}},22016,(e,t,l)=>{"use strict";Object.defineProperty(l,"__esModule",{value:!0});var r={default:function(){return g},useLinkStatus:function(){return y}};for(var a in r)Object.defineProperty(l,a,{enumerable:!0,get:r[a]});let s=e.r(90809),n=e.r(43476),o=s._(e.r(71645)),i=e.r(95057),c=e.r(8372),u=e.r(18581),p=e.r(18967),d=e.r(5550);e.r(33525);let x=e.r(88540),f=e.r(91949),h=e.r(73668),m=e.r(9396);function g(t){var l,r;let a,s,g,[y,j]=(0,o.useOptimistic)(f.IDLE_LINK_STATUS),v=(0,o.useRef)(null),{href:N,as:k,children:_,prefetch:w=null,passHref:S,replace:C,shallow:E,scroll:P,onClick:R,onMouseEnter:O,onTouchStart:T,legacyBehavior:A=!1,onNavigate:L,transitionTypes:I,ref:M,unstable_dynamicOnHover:U,...$}=t;a=_,A&&("string"==typeof a||"number"==typeof a)&&(a=(0,n.jsx)("a",{children:a}));let B=o.default.useContext(c.AppRouterContext),D=!1!==w,F=!1!==w?null===(r=w)||"auto"===r?m.FetchStrategy.PPR:m.FetchStrategy.Full:m.FetchStrategy.PPR,K="string"==typeof(l=k||N)?l:(0,i.formatUrl)(l);if(A){if(a?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});s=o.default.Children.only(a)}let W=A?s&&"object"==typeof s&&s.ref:M,V=o.default.useCallback(e=>(null!==B&&(v.current=(0,f.mountLinkInstance)(e,K,B,F,D,j)),()=>{v.current&&((0,f.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,f.unmountPrefetchableInstance)(e)}),[D,K,B,F,j]),z={ref:(0,u.useMergedRef)(V,W),onClick(t){A||"function"!=typeof R||R(t),A&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(t),!B||t.defaultPrevented||function(t,l,r,a,s,n,i){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,h.isLocalURL)(l)){a&&(t.preventDefault(),location.replace(l));return}if(t.preventDefault(),n){let e=!1;if(n({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:p}=e.r(99781);o.default.startTransition(()=>{p(l,a?"replace":"push",!1===s?x.ScrollBehavior.NoScroll:x.ScrollBehavior.Default,r.current,i)})}}(t,K,v,C,P,L,I)},onMouseEnter(e){A||"function"!=typeof O||O(e),A&&s.props&&"function"==typeof s.props.onMouseEnter&&s.props.onMouseEnter(e),B&&D&&(0,f.onNavigationIntent)(e.currentTarget,!0===U)},onTouchStart:function(e){A||"function"!=typeof T||T(e),A&&s.props&&"function"==typeof s.props.onTouchStart&&s.props.onTouchStart(e),B&&D&&(0,f.onNavigationIntent)(e.currentTarget,!0===U)}};return(0,p.isAbsoluteUrl)(K)?z.href=K:A&&!S&&("a"!==s.type||"href"in s.props)||(z.href=(0,d.addBasePath)(K)),g=A?o.default.cloneElement(s,z):(0,n.jsx)("a",{...$,...z,children:a}),(0,n.jsx)(b.Provider,{value:y,children:g})}e.r(84508);let b=(0,o.createContext)(f.IDLE_LINK_STATUS),y=()=>(0,o.useContext)(b);("function"==typeof l.default||"object"==typeof l.default&&null!==l.default)&&void 0===l.default.__esModule&&(Object.defineProperty(l.default,"__esModule",{value:!0}),Object.assign(l.default,l),t.exports=l.default)},18566,(e,t,l)=>{t.exports=e.r(76562)},50667,36528,25010,60888,13121,e=>{"use strict";var t=e.i(43476),l=e.i(22016),r=e.i(18566),a=e.i(71645);let s={monorepo:{tier:"pro",label:"Monorepo support"},aggregate_scan:{tier:"pro",label:"Aggregate workspace scan"},cross_workspace_insights:{tier:"pro",label:"Cross-workspace insights"},llm_insights:{tier:"pro",label:"AI-powered insights"},custom_queries:{tier:"pro",label:"Custom GREEN queries"},cross_layer_context:{tier:"pro",label:"Cross-layer context"},auto_insights:{tier:"pro",label:"Auto-generated insights"},team_sync:{tier:"team",label:"Team sync"},ci_integration:{tier:"team",label:"CI integration"},forge_unlimited:{tier:"forge-pro",label:"forge0x2B unlimited"},forge_unlimited_generation:{tier:"forge-pro",label:"forge0x2B unlimited generation"}};function n(e){return"free"!==s[e].tier}e.s(["FREE_TIER_LOC_LIMIT",0,5e4,"showProBadge",0,n],36528);let o=()=>(0,t.jsx)("span",{className:"text-[10px] font-bold px-1 py-0.5 rounded leading-none",style:{background:"rgba(251,191,36,0.15)",color:"rgb(251,191,36)",border:"1px solid rgba(251,191,36,0.3)"},children:"PRO"});function i({monorepo:e,activeWorkspace:l,onSelect:r,isPro:s=!1}){let[c,u]=(0,a.useState)(!1),p=(0,a.useRef)(null);if((0,a.useEffect)(()=>{function e(e){p.current&&!p.current.contains(e.target)&&u(!1)}return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]),!e||"single"===e.type||0===e.packages.length)return null;let d=n("monorepo")&&!s;return(0,t.jsxs)("div",{className:"relative",ref:p,children:[(0,t.jsxs)("button",{onClick:()=>u(e=>!e),className:"flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-medium transition-colors",style:{background:c?"rgba(51,65,85,0.5)":"rgba(51,65,85,0.25)",border:"1px solid rgba(51,65,85,0.5)",color:"rgb(148,163,184)"},title:`Monorepo: ${e.type}`,children:[(0,t.jsx)("span",{className:"font-mono",style:{color:"rgb(52,211,153)",fontSize:10},children:e.type.toUpperCase()}),(0,t.jsx)("span",{className:"max-w-[80px] truncate",children:l??"all workspaces"}),d&&(0,t.jsx)(o,{}),(0,t.jsx)("svg",{width:"8",height:"8",viewBox:"0 0 8 8",fill:"currentColor",className:"opacity-60",children:(0,t.jsx)("path",{d:"M1 2.5l3 3 3-3",stroke:"currentColor",strokeWidth:"1.2",fill:"none",strokeLinecap:"round"})})]}),c&&(0,t.jsxs)("div",{className:"absolute top-full mt-1 right-0 z-50 rounded-xl overflow-hidden py-1 min-w-[180px]",style:{background:"rgba(15,23,42,0.95)",backdropFilter:"blur(20px)",border:"1px solid rgba(51,65,85,0.5)",boxShadow:"0 4px 24px rgba(0,0,0,0.4)"},children:[(0,t.jsxs)("button",{className:"w-full text-left px-3 py-2 text-xs flex items-center gap-2 transition-colors hover:bg-white/5",style:{color:null===l?"rgb(52,211,153)":"rgb(148,163,184)"},onClick:()=>{r(null),u(!1)},children:[(0,t.jsx)("span",{className:"font-mono text-[10px] opacity-60",children:"∑"}),"All workspaces",null===l&&(0,t.jsx)("span",{className:"ml-auto text-[10px] opacity-60",children:"✓"})]}),(0,t.jsx)("div",{className:"my-1",style:{borderTop:"1px solid rgba(51,65,85,0.3)"}}),e.packages.map(e=>(0,t.jsxs)("button",{className:"w-full text-left px-3 py-2 text-xs flex items-center gap-2 transition-colors hover:bg-white/5",style:{color:l===e.name?"rgb(52,211,153)":"rgb(148,163,184)"},onClick:()=>{r(e.name),u(!1)},children:[(0,t.jsx)("span",{className:"font-mono text-[10px] opacity-50",children:"pkg"}),(0,t.jsx)("span",{className:"flex-1 truncate",children:e.name}),void 0!==e.loc&&(0,t.jsxs)("span",{className:"text-[10px] font-mono opacity-40",children:[(e.loc/1e3).toFixed(1),"k"]}),l===e.name&&(0,t.jsx)("span",{className:"text-[10px] opacity-60",children:"✓"})]},e.path))]})]})}function c(){let[e,t]=(0,a.useState)(""),[l,r]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{fetch("/api/config").then(e=>e.json()).then(e=>{let l=e.targetPath??"";t(l?`?target=${encodeURIComponent(l)}`:"")}).catch(()=>{}).finally(()=>r(!0))},[]),{tq:e,ready:l}}function u(e){let[t,l]=(0,a.useState)(null),[r,s]=(0,a.useState)(null),[n,o]=(0,a.useState)(!1);(0,a.useEffect)(()=>{Promise.all([fetch(`/api/monorepo${e}`).then(e=>e.json()).catch(()=>({monorepo:null})),fetch(`/api/monorepo/active${e}`).then(e=>e.json()).catch(()=>({workspace:null}))]).then(([e,t])=>{l(e.monorepo??null),s(t.workspace??null)}).finally(()=>o(!0))},[e]);let i=(0,a.useCallback)(async t=>{s(t),await fetch(`/api/monorepo/active${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workspace:t})}).catch(()=>{})},[e]),c=r?`&workspace=${encodeURIComponent(r)}`:"";return{monorepo:t,activeWorkspace:r,setActiveWorkspace:i,ready:n,wq:c}}e.s(["useTargetPath",0,c],25010),e.s(["useActiveWorkspace",0,u],60888);let p={tier:"free",issuedAt:null,expiresAt:null,userId:null,features:[],isValid:!1,isExpired:!1,licenseKey:null,instanceId:null,productName:null,subscriptionStatus:null,validatedAt:null,revalidationDue:null,gracePeriodEnd:null,activationLimit:null,activationUsage:null,cacheStatus:"no-cache",daysSinceValidation:null};function d(e){let[t,l]=(0,a.useState)(null),[r,s]=(0,a.useState)(!1),[n,o]=(0,a.useState)(0);(0,a.useEffect)(()=>{fetch(`/api/license${e}`).then(e=>e.json()).then(e=>l(e)).catch(()=>l(p)).finally(()=>s(!0))},[e,n]);let i=(0,a.useCallback)(()=>o(e=>e+1),[]),c=!!t&&"free"!==t.tier&&"forge-pro"!==t.tier&&t.isValid&&!t.isExpired&&"expired"!==t.cacheStatus;return{license:t,ready:r,refresh:i,isPro:c}}e.s(["useLicense",0,d],13121);let x=[{href:"/blue",label:"BLUE",color:"rgb(59,130,246)"},{href:"/amber",label:"AMBER",color:"rgb(251,191,36)"},{href:"/green",label:"GREEN",color:"rgb(52,211,153)"},{href:"/settings",label:"⚙",color:void 0}];e.s(["PrismDock",0,function(){let e=(0,r.usePathname)(),{tq:a}=c(),{monorepo:s,activeWorkspace:n,setActiveWorkspace:o}=u(a),{isPro:p}=d(a);return(0,t.jsxs)("div",{className:"fixed top-3 left-1/2 -translate-x-1/2 z-50 flex items-center gap-2 px-4 py-2 rounded-full",style:{background:"linear-gradient(to bottom, rgba(15,23,42,0.4), rgba(2,6,23,0.5))",backdropFilter:"blur(24px) saturate(1.5)",border:"1px solid rgba(51,65,85,0.3)",boxShadow:"0 1px 2px rgba(15,23,42,.06),0 4px 12px rgba(15,23,42,.12),0 16px 40px rgba(15,23,42,.18),inset 0 1px 0 rgba(255,255,255,.08),inset 0 -1px 0 rgba(15,23,42,.4)"},children:[(0,t.jsxs)(l.default,{href:"/",className:"flex items-center gap-1.5 group",children:[(0,t.jsx)("span",{className:"text-sky-400 text-lg select-none",children:"✦"}),(0,t.jsxs)("span",{className:"text-slate-200 text-sm font-semibold tracking-tight group-hover:text-white transition-colors",children:["prism",(0,t.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]})]}),x.map(({href:r,label:a,color:s})=>{let n=e.startsWith(r);return(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"w-px h-4",style:{background:"rgba(51,65,85,0.6)"}}),(0,t.jsx)(l.default,{href:r,className:"text-sm font-medium transition-colors px-1",style:{color:n?s??"rgb(226,232,240)":"rgba(148,163,184,0.8)"},children:a})]},r)}),s&&"single"!==s.type&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"w-px h-4",style:{background:"rgba(51,65,85,0.6)"}}),(0,t.jsx)(i,{monorepo:s,activeWorkspace:n,onSelect:o,isPro:p})]})]})}],50667)},17403,e=>{"use strict";var t=e.i(43476),l=e.i(71645),r=e.i(22016),a=e.i(50667);let s="rgb(251,191,36)",n={background:"var(--surface-panel)",border:"1px solid var(--border-default)",boxShadow:"0 1px 2px rgba(15,23,42,.05),0 4px 16px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.04)"},o={critical:"rgb(248,113,113)",high:"rgb(251,191,36)",medium:"rgb(99,102,241)",low:"rgb(52,211,153)"},i=[{key:"eyebrow",label:"Eyebrow"},{key:"headline",label:"Headline"},{key:"body",label:"Body"},{key:"microcopy",label:"Microcopy"},{key:"value_statement",label:"Value Statement"},{key:"example_flow",label:"Example Flow"},{key:"visual_hint",label:"Visual Hint"}];function c({label:e,children:l}){return(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("span",{className:"text-xs font-semibold text-slate-500 uppercase tracking-widest",children:e}),(0,t.jsx)("div",{className:"text-sm text-slate-300 leading-relaxed",children:l})]})}e.s(["default",0,function({params:e}){let{id:u}=(0,l.use)(e),p=decodeURIComponent(u),[d,x]=(0,l.useState)(null),[f,h]=(0,l.useState)([]),[m,g]=(0,l.useState)(0),[b,y]=(0,l.useState)(!0),[j,v]=(0,l.useState)(!1);return((0,l.useEffect)(()=>{fetch(`/api/amber/capabilities/${encodeURIComponent(p)}`).then(async e=>{if(404===e.status)return void v(!0);let t=await e.json();x(t.capability),h(t.tagged_files??[]),g(t.depth_field_count??0)}).catch(()=>v(!0)).finally(()=>y(!1))},[p]),b)?(0,t.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"var(--bg-app)"},children:[(0,t.jsx)(a.PrismDock,{}),(0,t.jsx)("main",{className:"flex-1 flex items-center justify-center",children:(0,t.jsx)("span",{className:"text-slate-500 text-sm",children:"Loading…"})})]}):j||!d?(0,t.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"var(--bg-app)"},children:[(0,t.jsx)(a.PrismDock,{}),(0,t.jsxs)("main",{className:"flex-1 flex flex-col items-center justify-center gap-4",children:[(0,t.jsxs)("p",{className:"text-slate-400",children:["Capability not found: ",(0,t.jsx)("span",{className:"font-mono text-amber-400",children:p})]}),(0,t.jsx)(r.default,{href:"/amber/capabilities",className:"text-sm hover:underline",style:{color:s},children:"← Capabilities"})]})]}):(0,t.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"var(--bg-app)"},children:[(0,t.jsx)(a.PrismDock,{}),(0,t.jsxs)("main",{className:"flex-1 flex flex-col items-center px-6 pt-32 pb-16 gap-6",style:{maxWidth:720,margin:"0 auto",width:"100%"},children:[(0,t.jsxs)("div",{className:"w-full flex items-center gap-2 text-sm",children:[(0,t.jsx)(r.default,{href:"/amber",className:"text-slate-500 hover:text-slate-300 transition-colors",children:"AMBER"}),(0,t.jsx)("span",{className:"text-slate-700",children:"/"}),(0,t.jsx)(r.default,{href:"/amber/capabilities",className:"text-slate-500 hover:text-slate-300 transition-colors",children:"Capabilities"}),(0,t.jsx)("span",{className:"text-slate-700",children:"/"}),(0,t.jsx)("span",{className:"font-mono",style:{color:s},children:d.id})]}),(0,t.jsxs)("div",{className:"w-full flex flex-col gap-2",children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,t.jsx)("h1",{className:"text-xl font-semibold text-slate-100",children:d.name}),(0,t.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0",children:[d.criticality&&(0,t.jsx)("span",{className:"text-xs font-mono px-2 py-0.5 rounded-full",style:{background:(o[d.criticality]??s)+"18",color:o[d.criticality]??s,border:`1px solid ${o[d.criticality]??s}30`},children:d.criticality}),(0,t.jsxs)("span",{className:"text-xs font-mono px-2 py-0.5 rounded-full",style:{background:"rgba(251,191,36,0.08)",color:s,border:"1px solid rgba(251,191,36,0.2)"},children:[m,"/9 depth fields"]})]})]}),(0,t.jsx)("span",{className:"text-xs font-mono text-slate-500",children:d.id})]}),(0,t.jsxs)("div",{className:"w-full rounded-xl p-6 flex flex-col gap-4",style:n,children:[d.description&&(0,t.jsx)(c,{label:"Description",children:d.description}),(0,t.jsxs)("div",{className:"grid grid-cols-3 gap-4 pt-1",children:[d.owner&&(0,t.jsx)(c,{label:"Owner",children:d.owner}),d.lifecycle&&(0,t.jsx)(c,{label:"Lifecycle",children:d.lifecycle}),void 0!==d.external&&(0,t.jsx)(c,{label:"Exposure",children:d.external?"External":"Internal"})]}),d.depends_on&&d.depends_on.length>0&&(0,t.jsx)(c,{label:"Depends on",children:(0,t.jsx)("div",{className:"flex flex-wrap gap-1 mt-0.5",children:d.depends_on.map(e=>(0,t.jsx)(r.default,{href:`/amber/capabilities/${encodeURIComponent(e)}`,className:"text-xs font-mono px-2 py-0.5 rounded hover:brightness-110 transition-all",style:{background:"rgba(251,191,36,0.08)",color:s,border:"1px solid rgba(251,191,36,0.2)"},children:e},e))})}),d.file_path_patterns&&d.file_path_patterns.length>0&&(0,t.jsx)(c,{label:"File Patterns",children:(0,t.jsx)("div",{className:"flex flex-col gap-0.5 mt-0.5",children:d.file_path_patterns.map(e=>(0,t.jsx)("span",{className:"text-xs font-mono text-slate-400 bg-slate-800/60 px-2 py-0.5 rounded",children:e},e))})})]}),i.some(e=>d[e.key])&&(0,t.jsxs)("div",{className:"w-full rounded-xl p-6 flex flex-col gap-4",style:n,children:[(0,t.jsxs)("h2",{className:"text-xs font-semibold uppercase tracking-widest",style:{color:s},children:["Depth Fields (",m,"/9)"]}),i.filter(e=>d[e.key]).map(e=>(0,t.jsx)(c,{label:e.label,children:Array.isArray(d[e.key])?d[e.key].join(", "):String(d[e.key])},e.key)),d.key_concepts&&d.key_concepts.length>0&&(0,t.jsx)(c,{label:"Key Concepts",children:(0,t.jsx)("div",{className:"flex flex-wrap gap-1 mt-0.5",children:d.key_concepts.map(e=>(0,t.jsx)("span",{className:"text-xs font-mono text-slate-400 bg-slate-800/50 px-2 py-0.5 rounded",children:e},e))})}),d.panel_anchors&&d.panel_anchors.length>0&&(0,t.jsx)(c,{label:"Panel Anchors",children:(0,t.jsx)("div",{className:"flex flex-wrap gap-1 mt-0.5",children:d.panel_anchors.map(e=>(0,t.jsx)("span",{className:"text-xs font-mono text-indigo-400 bg-indigo-900/20 px-2 py-0.5 rounded",children:e},e))})})]}),(0,t.jsxs)("div",{className:"w-full rounded-xl p-6 flex flex-col gap-3",style:n,children:[(0,t.jsxs)("h2",{className:"text-xs font-semibold text-slate-400 uppercase tracking-widest",children:["Tagged Files (",f.length,")"]}),0===f.length?(0,t.jsxs)("p",{className:"text-xs text-slate-500",children:["No files tagged with this capability in the last scan.",d.file_path_patterns?.length?" Files may be matched via file_path_patterns.":" Add @amber-capability tags or file_path_patterns to the registry."]}):(0,t.jsx)("div",{className:"flex flex-col gap-1",children:f.map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between py-1 border-b",style:{borderColor:"rgba(51,65,85,0.3)"},children:[(0,t.jsx)("span",{className:"text-xs font-mono text-slate-400 truncate flex-1",children:e.path}),e.has_doc&&(0,t.jsx)("span",{className:"text-xs text-emerald-400 ml-3 flex-shrink-0",children:"doc ✓"})]},e.path))})]})]}),(0,t.jsxs)("footer",{className:"text-center py-4 text-xs text-slate-600",children:["prism",(0,t.jsx)("span",{className:"font-mono",children:"0x2A"})," v","0.7.1"," · AMBER / Capabilities"]})]})}])}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,32545,e=>{"use strict";let t;e.i(47167);var a,s,r,i,n,d,o,l=e.i(43476),c=e.i(71645);e.s([],38570),e.i(38570),(a=i||(i={})).assertEqual=e=>{},a.assertIs=function(e){},a.assertNever=function(e){throw Error()},a.arrayToEnum=e=>{let t={};for(let a of e)t[a]=a;return t},a.getValidEnumValues=e=>{let t=a.objectKeys(e).filter(t=>"number"!=typeof e[e[t]]),s={};for(let a of t)s[a]=e[a];return a.objectValues(s)},a.objectValues=e=>a.objectKeys(e).map(function(t){return e[t]}),a.objectKeys="function"==typeof Object.keys?e=>Object.keys(e):e=>{let t=[];for(let a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.push(a);return t},a.find=(e,t)=>{for(let a of e)if(t(a))return a},a.isInteger="function"==typeof Number.isInteger?e=>Number.isInteger(e):e=>"number"==typeof e&&Number.isFinite(e)&&Math.floor(e)===e,a.joinValues=function(e,t=" | "){return e.map(e=>"string"==typeof e?`'${e}'`:e).join(t)},a.jsonStringifyReplacer=(e,t)=>"bigint"==typeof t?t.toString():t,(n||(n={})).mergeShapes=(e,t)=>({...e,...t});let u=i.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),h=e=>{switch(typeof e){case"undefined":return u.undefined;case"string":return u.string;case"number":return Number.isNaN(e)?u.nan:u.number;case"boolean":return u.boolean;case"function":return u.function;case"bigint":return u.bigint;case"symbol":return u.symbol;case"object":if(Array.isArray(e))return u.array;if(null===e)return u.null;if(e.then&&"function"==typeof e.then&&e.catch&&"function"==typeof e.catch)return u.promise;if("u">typeof Map&&e instanceof Map)return u.map;if("u">typeof Set&&e instanceof Set)return u.set;if("u">typeof Date&&e instanceof Date)return u.date;return u.object;default:return u.unknown}};e.s(["ZodParsedType",0,u,"getParsedType",0,h,"objectUtil",0,n,"util",0,i],4783);let p=i.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),m=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:");class f extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}format(e){let t=e||function(e){return e.message},a={_errors:[]},s=e=>{for(let r of e.issues)if("invalid_union"===r.code)r.unionErrors.map(s);else if("invalid_return_type"===r.code)s(r.returnTypeError);else if("invalid_arguments"===r.code)s(r.argumentsError);else if(0===r.path.length)a._errors.push(t(r));else{let e=a,s=0;for(;s<r.path.length;){let a=r.path[s];s===r.path.length-1?(e[a]=e[a]||{_errors:[]},e[a]._errors.push(t(r))):e[a]=e[a]||{_errors:[]},e=e[a],s++}}};return s(this),a}static assert(e){if(!(e instanceof f))throw Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,i.jsonStringifyReplacer,2)}get isEmpty(){return 0===this.issues.length}flatten(e=e=>e.message){let t={},a=[];for(let s of this.issues)if(s.path.length>0){let a=s.path[0];t[a]=t[a]||[],t[a].push(e(s))}else a.push(e(s));return{formErrors:a,fieldErrors:t}}get formErrors(){return this.flatten()}}f.create=e=>new f(e),e.s(["ZodError",0,f,"ZodIssueCode",0,p,"quotelessJson",0,m],69790);let g=(e,t)=>{let a;switch(e.code){case p.invalid_type:a=e.received===u.undefined?"Required":`Expected ${e.expected}, received ${e.received}`;break;case p.invalid_literal:a=`Invalid literal value, expected ${JSON.stringify(e.expected,i.jsonStringifyReplacer)}`;break;case p.unrecognized_keys:a=`Unrecognized key(s) in object: ${i.joinValues(e.keys,", ")}`;break;case p.invalid_union:a="Invalid input";break;case p.invalid_union_discriminator:a=`Invalid discriminator value. Expected ${i.joinValues(e.options)}`;break;case p.invalid_enum_value:a=`Invalid enum value. Expected ${i.joinValues(e.options)}, received '${e.received}'`;break;case p.invalid_arguments:a="Invalid function arguments";break;case p.invalid_return_type:a="Invalid function return type";break;case p.invalid_date:a="Invalid date";break;case p.invalid_string:"object"==typeof e.validation?"includes"in e.validation?(a=`Invalid input: must include "${e.validation.includes}"`,"number"==typeof e.validation.position&&(a=`${a} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?a=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?a=`Invalid input: must end with "${e.validation.endsWith}"`:i.assertNever(e.validation):a="regex"!==e.validation?`Invalid ${e.validation}`:"Invalid";break;case p.too_small:a="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:"number"===e.type||"bigint"===e.type?`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:"date"===e.type?`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:"Invalid input";break;case p.too_big:a="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:"number"===e.type?`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"bigint"===e.type?`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"date"===e.type?`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:"Invalid input";break;case p.custom:a="Invalid input";break;case p.invalid_intersection_types:a="Intersection results could not be merged";break;case p.not_multiple_of:a=`Number must be a multiple of ${e.multipleOf}`;break;case p.not_finite:a="Number must be finite";break;default:a=t.defaultError,i.assertNever(e)}return{message:a}},y=g;function v(e){y=e}function _(){return y}e.s(["getErrorMap",0,_,"setErrorMap",0,v],37904),e.i(37904),e.s(["defaultErrorMap",0,g,"getErrorMap",0,_,"setErrorMap",0,v],77290),e.i(77290);let x=e=>{let{data:t,path:a,errorMaps:s,issueData:r}=e,i=[...a,...r.path||[]],n={...r,path:i};if(void 0!==r.message)return{...r,path:i,message:r.message};let d="";for(let e of s.filter(e=>!!e).slice().reverse())d=e(n,{data:t,defaultError:d}).message;return{...r,path:i,message:d}},b=[];function k(e,t){let a=_(),s=x({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,a,a===g?void 0:g].filter(e=>!!e)});e.common.issues.push(s)}class w{constructor(){this.value="valid"}dirty(){"valid"===this.value&&(this.value="dirty")}abort(){"aborted"!==this.value&&(this.value="aborted")}static mergeArray(e,t){let a=[];for(let s of t){if("aborted"===s.status)return j;"dirty"===s.status&&e.dirty(),a.push(s.value)}return{status:e.value,value:a}}static async mergeObjectAsync(e,t){let a=[];for(let e of t){let t=await e.key,s=await e.value;a.push({key:t,value:s})}return w.mergeObjectSync(e,a)}static mergeObjectSync(e,t){let a={};for(let s of t){let{key:t,value:r}=s;if("aborted"===t.status||"aborted"===r.status)return j;"dirty"===t.status&&e.dirty(),"dirty"===r.status&&e.dirty(),"__proto__"!==t.value&&(void 0!==r.value||s.alwaysSet)&&(a[t.value]=r.value)}return{status:e.value,value:a}}}let j=Object.freeze({status:"aborted"}),N=e=>({status:"dirty",value:e}),Z=e=>({status:"valid",value:e}),T=e=>"aborted"===e.status,S=e=>"dirty"===e.status,C=e=>"valid"===e.status,O=e=>"u">typeof Promise&&e instanceof Promise;e.s(["DIRTY",0,N,"EMPTY_PATH",0,b,"INVALID",0,j,"OK",0,Z,"ParseStatus",0,w,"addIssueToContext",0,k,"isAborted",0,T,"isAsync",0,O,"isDirty",0,S,"isValid",0,C,"makeIssue",0,x],65354),e.i(65354),e.s([],27404),e.i(27404),e.i(4783),(s=d||(d={})).errToObj=e=>"string"==typeof e?{message:e}:e||{},s.toString=e=>"string"==typeof e?e:e?.message;class A{constructor(e,t,a,s){this._cachedPath=[],this.parent=e,this.data=t,this._path=a,this._key=s}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}let E=(e,t)=>{if(C(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let t=new f(e.common.issues);return this._error=t,this._error}}};function I(e){if(!e)return{};let{errorMap:t,invalid_type_error:a,required_error:s,description:r}=e;if(t&&(a||s))throw Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');return t?{errorMap:t,description:r}:{errorMap:(t,r)=>{let{message:i}=e;return"invalid_enum_value"===t.code?{message:i??r.defaultError}:void 0===r.data?{message:i??s??r.defaultError}:"invalid_type"!==t.code?{message:r.defaultError}:{message:i??a??r.defaultError}},description:r}}class P{get description(){return this._def.description}_getType(e){return h(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:h(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new w,ctx:{common:e.parent.common,data:e.data,parsedType:h(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(O(t))throw Error("Synchronous parse encountered promise.");return t}_parseAsync(e){return Promise.resolve(this._parse(e))}parse(e,t){let a=this.safeParse(e,t);if(a.success)return a.data;throw a.error}safeParse(e,t){let a={common:{issues:[],async:t?.async??!1,contextualErrorMap:t?.errorMap},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:h(e)},s=this._parseSync({data:e,path:a.path,parent:a});return E(a,s)}"~validate"(e){let t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:h(e)};if(!this["~standard"].async)try{let a=this._parseSync({data:e,path:[],parent:t});return C(a)?{value:a.value}:{issues:t.common.issues}}catch(e){e?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(e=>C(e)?{value:e.value}:{issues:t.common.issues})}async parseAsync(e,t){let a=await this.safeParseAsync(e,t);if(a.success)return a.data;throw a.error}async safeParseAsync(e,t){let a={common:{issues:[],contextualErrorMap:t?.errorMap,async:!0},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:h(e)},s=this._parse({data:e,path:a.path,parent:a});return E(a,await (O(s)?s:Promise.resolve(s)))}refine(e,t){return this._refinement((a,s)=>{let r=e(a),i=()=>s.addIssue({code:p.custom,..."string"==typeof t||void 0===t?{message:t}:"function"==typeof t?t(a):t});return"u">typeof Promise&&r instanceof Promise?r.then(e=>!!e||(i(),!1)):!!r||(i(),!1)})}refinement(e,t){return this._refinement((a,s)=>!!e(a)||(s.addIssue("function"==typeof t?t(a,s):t),!1))}_refinement(e){return new eS({schema:this,typeName:o.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:e=>this["~validate"](e)}}optional(){return eC.create(this,this._def)}nullable(){return eO.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return eu.create(this)}promise(){return eT.create(this,this._def)}or(e){return ep.create([this,e],this._def)}and(e){return eg.create(this,e,this._def)}transform(e){return new eS({...I(this._def),schema:this,typeName:o.ZodEffects,effect:{type:"transform",transform:e}})}default(e){return new eA({...I(this._def),innerType:this,defaultValue:"function"==typeof e?e:()=>e,typeName:o.ZodDefault})}brand(){return new e$({typeName:o.ZodBranded,type:this,...I(this._def)})}catch(e){return new eE({...I(this._def),innerType:this,catchValue:"function"==typeof e?e:()=>e,typeName:o.ZodCatch})}describe(e){return new this.constructor({...this._def,description:e})}pipe(e){return eR.create(this,e)}readonly(){return eM.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}let $=/^c[^\s-]{8,}$/i,R=/^[0-9a-z]+$/,M=/^[0-9A-HJKMNP-TV-Z]{26}$/i,F=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,L=/^[a-z0-9_-]{21}$/i,D=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,z=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,U=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,V=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,K=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,X=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,B=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,W=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,q=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,J="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Y=RegExp(`^${J}$`);function H(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:null==e.precision&&(t=`${t}(\\.\\d+)?`);let a=e.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${a}`}function G(e){let t=`${J}T${H(e)}`,a=[];return a.push(e.local?"Z?":"Z"),e.offset&&a.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${a.join("|")})`,RegExp(`^${t}$`)}class Q extends P{_parse(e){var a,s,r,n;let d;if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==u.string){let t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.string,received:t.parsedType}),j}let o=new w;for(let l of this._def.checks)if("min"===l.kind)e.data.length<l.value&&(k(d=this._getOrReturnCtx(e,d),{code:p.too_small,minimum:l.value,type:"string",inclusive:!0,exact:!1,message:l.message}),o.dirty());else if("max"===l.kind)e.data.length>l.value&&(k(d=this._getOrReturnCtx(e,d),{code:p.too_big,maximum:l.value,type:"string",inclusive:!0,exact:!1,message:l.message}),o.dirty());else if("length"===l.kind){let t=e.data.length>l.value,a=e.data.length<l.value;(t||a)&&(d=this._getOrReturnCtx(e,d),t?k(d,{code:p.too_big,maximum:l.value,type:"string",inclusive:!0,exact:!0,message:l.message}):a&&k(d,{code:p.too_small,minimum:l.value,type:"string",inclusive:!0,exact:!0,message:l.message}),o.dirty())}else if("email"===l.kind)U.test(e.data)||(k(d=this._getOrReturnCtx(e,d),{validation:"email",code:p.invalid_string,message:l.message}),o.dirty());else if("emoji"===l.kind)t||(t=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),t.test(e.data)||(k(d=this._getOrReturnCtx(e,d),{validation:"emoji",code:p.invalid_string,message:l.message}),o.dirty());else if("uuid"===l.kind)F.test(e.data)||(k(d=this._getOrReturnCtx(e,d),{validation:"uuid",code:p.invalid_string,message:l.message}),o.dirty());else if("nanoid"===l.kind)L.test(e.data)||(k(d=this._getOrReturnCtx(e,d),{validation:"nanoid",code:p.invalid_string,message:l.message}),o.dirty());else if("cuid"===l.kind)$.test(e.data)||(k(d=this._getOrReturnCtx(e,d),{validation:"cuid",code:p.invalid_string,message:l.message}),o.dirty());else if("cuid2"===l.kind)R.test(e.data)||(k(d=this._getOrReturnCtx(e,d),{validation:"cuid2",code:p.invalid_string,message:l.message}),o.dirty());else if("ulid"===l.kind)M.test(e.data)||(k(d=this._getOrReturnCtx(e,d),{validation:"ulid",code:p.invalid_string,message:l.message}),o.dirty());else if("url"===l.kind)try{new URL(e.data)}catch{k(d=this._getOrReturnCtx(e,d),{validation:"url",code:p.invalid_string,message:l.message}),o.dirty()}else"regex"===l.kind?(l.regex.lastIndex=0,l.regex.test(e.data)||(k(d=this._getOrReturnCtx(e,d),{validation:"regex",code:p.invalid_string,message:l.message}),o.dirty())):"trim"===l.kind?e.data=e.data.trim():"includes"===l.kind?e.data.includes(l.value,l.position)||(k(d=this._getOrReturnCtx(e,d),{code:p.invalid_string,validation:{includes:l.value,position:l.position},message:l.message}),o.dirty()):"toLowerCase"===l.kind?e.data=e.data.toLowerCase():"toUpperCase"===l.kind?e.data=e.data.toUpperCase():"startsWith"===l.kind?e.data.startsWith(l.value)||(k(d=this._getOrReturnCtx(e,d),{code:p.invalid_string,validation:{startsWith:l.value},message:l.message}),o.dirty()):"endsWith"===l.kind?e.data.endsWith(l.value)||(k(d=this._getOrReturnCtx(e,d),{code:p.invalid_string,validation:{endsWith:l.value},message:l.message}),o.dirty()):"datetime"===l.kind?G(l).test(e.data)||(k(d=this._getOrReturnCtx(e,d),{code:p.invalid_string,validation:"datetime",message:l.message}),o.dirty()):"date"===l.kind?Y.test(e.data)||(k(d=this._getOrReturnCtx(e,d),{code:p.invalid_string,validation:"date",message:l.message}),o.dirty()):"time"===l.kind?RegExp(`^${H(l)}$`).test(e.data)||(k(d=this._getOrReturnCtx(e,d),{code:p.invalid_string,validation:"time",message:l.message}),o.dirty()):"duration"===l.kind?z.test(e.data)||(k(d=this._getOrReturnCtx(e,d),{validation:"duration",code:p.invalid_string,message:l.message}),o.dirty()):"ip"===l.kind?(a=e.data,!(("v4"===(s=l.version)||!s)&&V.test(a)||("v6"===s||!s)&&X.test(a))&&1&&(k(d=this._getOrReturnCtx(e,d),{validation:"ip",code:p.invalid_string,message:l.message}),o.dirty())):"jwt"===l.kind?!function(e,t){if(!D.test(e))return!1;try{let[a]=e.split(".");if(!a)return!1;let s=a.replace(/-/g,"+").replace(/_/g,"/").padEnd(a.length+(4-a.length%4)%4,"="),r=JSON.parse(atob(s));if("object"!=typeof r||null===r||"typ"in r&&r?.typ!=="JWT"||!r.alg||t&&r.alg!==t)return!1;return!0}catch{return!1}}(e.data,l.alg)&&(k(d=this._getOrReturnCtx(e,d),{validation:"jwt",code:p.invalid_string,message:l.message}),o.dirty()):"cidr"===l.kind?(r=e.data,!(("v4"===(n=l.version)||!n)&&K.test(r)||("v6"===n||!n)&&B.test(r))&&1&&(k(d=this._getOrReturnCtx(e,d),{validation:"cidr",code:p.invalid_string,message:l.message}),o.dirty())):"base64"===l.kind?W.test(e.data)||(k(d=this._getOrReturnCtx(e,d),{validation:"base64",code:p.invalid_string,message:l.message}),o.dirty()):"base64url"===l.kind?q.test(e.data)||(k(d=this._getOrReturnCtx(e,d),{validation:"base64url",code:p.invalid_string,message:l.message}),o.dirty()):i.assertNever(l);return{status:o.value,value:e.data}}_regex(e,t,a){return this.refinement(t=>e.test(t),{validation:t,code:p.invalid_string,...d.errToObj(a)})}_addCheck(e){return new Q({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...d.errToObj(e)})}url(e){return this._addCheck({kind:"url",...d.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...d.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...d.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...d.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...d.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...d.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...d.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...d.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...d.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...d.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...d.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...d.errToObj(e)})}datetime(e){return"string"==typeof e?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:void 0===e?.precision?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...d.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return"string"==typeof e?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:void 0===e?.precision?null:e?.precision,...d.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...d.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...d.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t?.position,...d.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...d.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...d.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...d.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...d.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...d.errToObj(t)})}nonempty(e){return this.min(1,d.errToObj(e))}trim(){return new Q({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Q({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Q({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>"datetime"===e.kind)}get isDate(){return!!this._def.checks.find(e=>"date"===e.kind)}get isTime(){return!!this._def.checks.find(e=>"time"===e.kind)}get isDuration(){return!!this._def.checks.find(e=>"duration"===e.kind)}get isEmail(){return!!this._def.checks.find(e=>"email"===e.kind)}get isURL(){return!!this._def.checks.find(e=>"url"===e.kind)}get isEmoji(){return!!this._def.checks.find(e=>"emoji"===e.kind)}get isUUID(){return!!this._def.checks.find(e=>"uuid"===e.kind)}get isNANOID(){return!!this._def.checks.find(e=>"nanoid"===e.kind)}get isCUID(){return!!this._def.checks.find(e=>"cuid"===e.kind)}get isCUID2(){return!!this._def.checks.find(e=>"cuid2"===e.kind)}get isULID(){return!!this._def.checks.find(e=>"ulid"===e.kind)}get isIP(){return!!this._def.checks.find(e=>"ip"===e.kind)}get isCIDR(){return!!this._def.checks.find(e=>"cidr"===e.kind)}get isBase64(){return!!this._def.checks.find(e=>"base64"===e.kind)}get isBase64url(){return!!this._def.checks.find(e=>"base64url"===e.kind)}get minLength(){let e=null;for(let t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(let t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return e}}Q.create=e=>new Q({checks:[],typeName:o.ZodString,coerce:e?.coerce??!1,...I(e)});class ee extends P{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){let t;if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==u.number){let t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.number,received:t.parsedType}),j}let a=new w;for(let s of this._def.checks)"int"===s.kind?i.isInteger(e.data)||(k(t=this._getOrReturnCtx(e,t),{code:p.invalid_type,expected:"integer",received:"float",message:s.message}),a.dirty()):"min"===s.kind?(s.inclusive?e.data<s.value:e.data<=s.value)&&(k(t=this._getOrReturnCtx(e,t),{code:p.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),a.dirty()):"max"===s.kind?(s.inclusive?e.data>s.value:e.data>=s.value)&&(k(t=this._getOrReturnCtx(e,t),{code:p.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),a.dirty()):"multipleOf"===s.kind?0!==function(e,t){let a=(e.toString().split(".")[1]||"").length,s=(t.toString().split(".")[1]||"").length,r=a>s?a:s;return Number.parseInt(e.toFixed(r).replace(".",""))%Number.parseInt(t.toFixed(r).replace(".",""))/10**r}(e.data,s.value)&&(k(t=this._getOrReturnCtx(e,t),{code:p.not_multiple_of,multipleOf:s.value,message:s.message}),a.dirty()):"finite"===s.kind?Number.isFinite(e.data)||(k(t=this._getOrReturnCtx(e,t),{code:p.not_finite,message:s.message}),a.dirty()):i.assertNever(s);return{status:a.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,d.toString(t))}gt(e,t){return this.setLimit("min",e,!1,d.toString(t))}lte(e,t){return this.setLimit("max",e,!0,d.toString(t))}lt(e,t){return this.setLimit("max",e,!1,d.toString(t))}setLimit(e,t,a,s){return new ee({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:a,message:d.toString(s)}]})}_addCheck(e){return new ee({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:d.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:d.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:d.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:d.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:d.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:d.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:d.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:d.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:d.toString(e)})}get minValue(){let e=null;for(let t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>"int"===e.kind||"multipleOf"===e.kind&&i.isInteger(e.value))}get isFinite(){let e=null,t=null;for(let a of this._def.checks)if("finite"===a.kind||"int"===a.kind||"multipleOf"===a.kind)return!0;else"min"===a.kind?(null===t||a.value>t)&&(t=a.value):"max"===a.kind&&(null===e||a.value<e)&&(e=a.value);return Number.isFinite(t)&&Number.isFinite(e)}}ee.create=e=>new ee({checks:[],typeName:o.ZodNumber,coerce:e?.coerce||!1,...I(e)});class et extends P{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){let t;if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==u.bigint)return this._getInvalidInput(e);let a=new w;for(let s of this._def.checks)"min"===s.kind?(s.inclusive?e.data<s.value:e.data<=s.value)&&(k(t=this._getOrReturnCtx(e,t),{code:p.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),a.dirty()):"max"===s.kind?(s.inclusive?e.data>s.value:e.data>=s.value)&&(k(t=this._getOrReturnCtx(e,t),{code:p.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),a.dirty()):"multipleOf"===s.kind?e.data%s.value!==BigInt(0)&&(k(t=this._getOrReturnCtx(e,t),{code:p.not_multiple_of,multipleOf:s.value,message:s.message}),a.dirty()):i.assertNever(s);return{status:a.value,value:e.data}}_getInvalidInput(e){let t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.bigint,received:t.parsedType}),j}gte(e,t){return this.setLimit("min",e,!0,d.toString(t))}gt(e,t){return this.setLimit("min",e,!1,d.toString(t))}lte(e,t){return this.setLimit("max",e,!0,d.toString(t))}lt(e,t){return this.setLimit("max",e,!1,d.toString(t))}setLimit(e,t,a,s){return new et({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:a,message:d.toString(s)}]})}_addCheck(e){return new et({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:d.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:d.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:d.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:d.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:d.toString(t)})}get minValue(){let e=null;for(let t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return e}}et.create=e=>new et({checks:[],typeName:o.ZodBigInt,coerce:e?.coerce??!1,...I(e)});class ea extends P{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==u.boolean){let t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.boolean,received:t.parsedType}),j}return Z(e.data)}}ea.create=e=>new ea({typeName:o.ZodBoolean,coerce:e?.coerce||!1,...I(e)});class es extends P{_parse(e){let t;if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==u.date){let t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.date,received:t.parsedType}),j}if(Number.isNaN(e.data.getTime()))return k(this._getOrReturnCtx(e),{code:p.invalid_date}),j;let a=new w;for(let s of this._def.checks)"min"===s.kind?e.data.getTime()<s.value&&(k(t=this._getOrReturnCtx(e,t),{code:p.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),a.dirty()):"max"===s.kind?e.data.getTime()>s.value&&(k(t=this._getOrReturnCtx(e,t),{code:p.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),a.dirty()):i.assertNever(s);return{status:a.value,value:new Date(e.data.getTime())}}_addCheck(e){return new es({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:d.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:d.toString(t)})}get minDate(){let e=null;for(let t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return null!=e?new Date(e):null}get maxDate(){let e=null;for(let t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return null!=e?new Date(e):null}}es.create=e=>new es({checks:[],coerce:e?.coerce||!1,typeName:o.ZodDate,...I(e)});class er extends P{_parse(e){if(this._getType(e)!==u.symbol){let t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.symbol,received:t.parsedType}),j}return Z(e.data)}}er.create=e=>new er({typeName:o.ZodSymbol,...I(e)});class ei extends P{_parse(e){if(this._getType(e)!==u.undefined){let t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.undefined,received:t.parsedType}),j}return Z(e.data)}}ei.create=e=>new ei({typeName:o.ZodUndefined,...I(e)});class en extends P{_parse(e){if(this._getType(e)!==u.null){let t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.null,received:t.parsedType}),j}return Z(e.data)}}en.create=e=>new en({typeName:o.ZodNull,...I(e)});class ed extends P{constructor(){super(...arguments),this._any=!0}_parse(e){return Z(e.data)}}ed.create=e=>new ed({typeName:o.ZodAny,...I(e)});class eo extends P{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Z(e.data)}}eo.create=e=>new eo({typeName:o.ZodUnknown,...I(e)});class el extends P{_parse(e){let t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.never,received:t.parsedType}),j}}el.create=e=>new el({typeName:o.ZodNever,...I(e)});class ec extends P{_parse(e){if(this._getType(e)!==u.undefined){let t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.void,received:t.parsedType}),j}return Z(e.data)}}ec.create=e=>new ec({typeName:o.ZodVoid,...I(e)});class eu extends P{_parse(e){let{ctx:t,status:a}=this._processInputParams(e),s=this._def;if(t.parsedType!==u.array)return k(t,{code:p.invalid_type,expected:u.array,received:t.parsedType}),j;if(null!==s.exactLength){let e=t.data.length>s.exactLength.value,r=t.data.length<s.exactLength.value;(e||r)&&(k(t,{code:e?p.too_big:p.too_small,minimum:r?s.exactLength.value:void 0,maximum:e?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),a.dirty())}if(null!==s.minLength&&t.data.length<s.minLength.value&&(k(t,{code:p.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),a.dirty()),null!==s.maxLength&&t.data.length>s.maxLength.value&&(k(t,{code:p.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),a.dirty()),t.common.async)return Promise.all([...t.data].map((e,a)=>s.type._parseAsync(new A(t,e,t.path,a)))).then(e=>w.mergeArray(a,e));let r=[...t.data].map((e,a)=>s.type._parseSync(new A(t,e,t.path,a)));return w.mergeArray(a,r)}get element(){return this._def.type}min(e,t){return new eu({...this._def,minLength:{value:e,message:d.toString(t)}})}max(e,t){return new eu({...this._def,maxLength:{value:e,message:d.toString(t)}})}length(e,t){return new eu({...this._def,exactLength:{value:e,message:d.toString(t)}})}nonempty(e){return this.min(1,e)}}eu.create=(e,t)=>new eu({type:e,minLength:null,maxLength:null,exactLength:null,typeName:o.ZodArray,...I(t)});class eh extends P{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(null!==this._cached)return this._cached;let e=this._def.shape(),t=i.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==u.object){let t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.object,received:t.parsedType}),j}let{status:t,ctx:a}=this._processInputParams(e),{shape:s,keys:r}=this._getCached(),i=[];if(!(this._def.catchall instanceof el&&"strip"===this._def.unknownKeys))for(let e in a.data)r.includes(e)||i.push(e);let n=[];for(let e of r){let t=s[e],r=a.data[e];n.push({key:{status:"valid",value:e},value:t._parse(new A(a,r,a.path,e)),alwaysSet:e in a.data})}if(this._def.catchall instanceof el){let e=this._def.unknownKeys;if("passthrough"===e)for(let e of i)n.push({key:{status:"valid",value:e},value:{status:"valid",value:a.data[e]}});else if("strict"===e)i.length>0&&(k(a,{code:p.unrecognized_keys,keys:i}),t.dirty());else if("strip"===e);else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let e=this._def.catchall;for(let t of i){let s=a.data[t];n.push({key:{status:"valid",value:t},value:e._parse(new A(a,s,a.path,t)),alwaysSet:t in a.data})}}return a.common.async?Promise.resolve().then(async()=>{let e=[];for(let t of n){let a=await t.key,s=await t.value;e.push({key:a,value:s,alwaysSet:t.alwaysSet})}return e}).then(e=>w.mergeObjectSync(t,e)):w.mergeObjectSync(t,n)}get shape(){return this._def.shape()}strict(e){return d.errToObj,new eh({...this._def,unknownKeys:"strict",...void 0!==e?{errorMap:(t,a)=>{let s=this._def.errorMap?.(t,a).message??a.defaultError;return"unrecognized_keys"===t.code?{message:d.errToObj(e).message??s}:{message:s}}}:{}})}strip(){return new eh({...this._def,unknownKeys:"strip"})}passthrough(){return new eh({...this._def,unknownKeys:"passthrough"})}extend(e){return new eh({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new eh({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:o.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new eh({...this._def,catchall:e})}pick(e){let t={};for(let a of i.objectKeys(e))e[a]&&this.shape[a]&&(t[a]=this.shape[a]);return new eh({...this._def,shape:()=>t})}omit(e){let t={};for(let a of i.objectKeys(this.shape))e[a]||(t[a]=this.shape[a]);return new eh({...this._def,shape:()=>t})}deepPartial(){return function e(t){if(t instanceof eh){let a={};for(let s in t.shape){let r=t.shape[s];a[s]=eC.create(e(r))}return new eh({...t._def,shape:()=>a})}if(t instanceof eu)return new eu({...t._def,type:e(t.element)});if(t instanceof eC)return eC.create(e(t.unwrap()));if(t instanceof eO)return eO.create(e(t.unwrap()));if(t instanceof ey)return ey.create(t.items.map(t=>e(t)));else return t}(this)}partial(e){let t={};for(let a of i.objectKeys(this.shape)){let s=this.shape[a];e&&!e[a]?t[a]=s:t[a]=s.optional()}return new eh({...this._def,shape:()=>t})}required(e){let t={};for(let a of i.objectKeys(this.shape))if(e&&!e[a])t[a]=this.shape[a];else{let e=this.shape[a];for(;e instanceof eC;)e=e._def.innerType;t[a]=e}return new eh({...this._def,shape:()=>t})}keyof(){return ej(i.objectKeys(this.shape))}}eh.create=(e,t)=>new eh({shape:()=>e,unknownKeys:"strip",catchall:el.create(),typeName:o.ZodObject,...I(t)}),eh.strictCreate=(e,t)=>new eh({shape:()=>e,unknownKeys:"strict",catchall:el.create(),typeName:o.ZodObject,...I(t)}),eh.lazycreate=(e,t)=>new eh({shape:e,unknownKeys:"strip",catchall:el.create(),typeName:o.ZodObject,...I(t)});class ep extends P{_parse(e){let{ctx:t}=this._processInputParams(e),a=this._def.options;if(t.common.async)return Promise.all(a.map(async e=>{let a={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:a}),ctx:a}})).then(function(e){for(let t of e)if("valid"===t.result.status)return t.result;for(let a of e)if("dirty"===a.result.status)return t.common.issues.push(...a.ctx.common.issues),a.result;let a=e.map(e=>new f(e.ctx.common.issues));return k(t,{code:p.invalid_union,unionErrors:a}),j});{let e,s=[];for(let r of a){let a={...t,common:{...t.common,issues:[]},parent:null},i=r._parseSync({data:t.data,path:t.path,parent:a});if("valid"===i.status)return i;"dirty"!==i.status||e||(e={result:i,ctx:a}),a.common.issues.length&&s.push(a.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;let r=s.map(e=>new f(e));return k(t,{code:p.invalid_union,unionErrors:r}),j}}get options(){return this._def.options}}ep.create=(e,t)=>new ep({options:e,typeName:o.ZodUnion,...I(t)});let em=e=>{if(e instanceof ek)return em(e.schema);if(e instanceof eS)return em(e.innerType());if(e instanceof ew)return[e.value];if(e instanceof eN)return e.options;if(e instanceof eZ)return i.objectValues(e.enum);else if(e instanceof eA)return em(e._def.innerType);else if(e instanceof ei)return[void 0];else if(e instanceof en)return[null];else if(e instanceof eC)return[void 0,...em(e.unwrap())];else if(e instanceof eO)return[null,...em(e.unwrap())];else if(e instanceof e$)return em(e.unwrap());else if(e instanceof eM)return em(e.unwrap());else if(e instanceof eE)return em(e._def.innerType);else return[]};class ef extends P{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==u.object)return k(t,{code:p.invalid_type,expected:u.object,received:t.parsedType}),j;let a=this.discriminator,s=t.data[a],r=this.optionsMap.get(s);return r?t.common.async?r._parseAsync({data:t.data,path:t.path,parent:t}):r._parseSync({data:t.data,path:t.path,parent:t}):(k(t,{code:p.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[a]}),j)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,a){let s=new Map;for(let a of t){let t=em(a.shape[e]);if(!t.length)throw Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let r of t){if(s.has(r))throw Error(`Discriminator property ${String(e)} has duplicate value ${String(r)}`);s.set(r,a)}}return new ef({typeName:o.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:s,...I(a)})}}class eg extends P{_parse(e){let{status:t,ctx:a}=this._processInputParams(e),s=(e,s)=>{if(T(e)||T(s))return j;let r=function e(t,a){let s=h(t),r=h(a);if(t===a)return{valid:!0,data:t};if(s===u.object&&r===u.object){let s=i.objectKeys(a),r=i.objectKeys(t).filter(e=>-1!==s.indexOf(e)),n={...t,...a};for(let s of r){let r=e(t[s],a[s]);if(!r.valid)return{valid:!1};n[s]=r.data}return{valid:!0,data:n}}if(s===u.array&&r===u.array){if(t.length!==a.length)return{valid:!1};let s=[];for(let r=0;r<t.length;r++){let i=e(t[r],a[r]);if(!i.valid)return{valid:!1};s.push(i.data)}return{valid:!0,data:s}}if(s===u.date&&r===u.date&&+t==+a)return{valid:!0,data:t};return{valid:!1}}(e.value,s.value);return r.valid?((S(e)||S(s))&&t.dirty(),{status:t.value,value:r.data}):(k(a,{code:p.invalid_intersection_types}),j)};return a.common.async?Promise.all([this._def.left._parseAsync({data:a.data,path:a.path,parent:a}),this._def.right._parseAsync({data:a.data,path:a.path,parent:a})]).then(([e,t])=>s(e,t)):s(this._def.left._parseSync({data:a.data,path:a.path,parent:a}),this._def.right._parseSync({data:a.data,path:a.path,parent:a}))}}eg.create=(e,t,a)=>new eg({left:e,right:t,typeName:o.ZodIntersection,...I(a)});class ey extends P{_parse(e){let{status:t,ctx:a}=this._processInputParams(e);if(a.parsedType!==u.array)return k(a,{code:p.invalid_type,expected:u.array,received:a.parsedType}),j;if(a.data.length<this._def.items.length)return k(a,{code:p.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),j;!this._def.rest&&a.data.length>this._def.items.length&&(k(a,{code:p.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());let s=[...a.data].map((e,t)=>{let s=this._def.items[t]||this._def.rest;return s?s._parse(new A(a,e,a.path,t)):null}).filter(e=>!!e);return a.common.async?Promise.all(s).then(e=>w.mergeArray(t,e)):w.mergeArray(t,s)}get items(){return this._def.items}rest(e){return new ey({...this._def,rest:e})}}ey.create=(e,t)=>{if(!Array.isArray(e))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new ey({items:e,typeName:o.ZodTuple,rest:null,...I(t)})};class ev extends P{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:a}=this._processInputParams(e);if(a.parsedType!==u.object)return k(a,{code:p.invalid_type,expected:u.object,received:a.parsedType}),j;let s=[],r=this._def.keyType,i=this._def.valueType;for(let e in a.data)s.push({key:r._parse(new A(a,e,a.path,e)),value:i._parse(new A(a,a.data[e],a.path,e)),alwaysSet:e in a.data});return a.common.async?w.mergeObjectAsync(t,s):w.mergeObjectSync(t,s)}get element(){return this._def.valueType}static create(e,t,a){return new ev(t instanceof P?{keyType:e,valueType:t,typeName:o.ZodRecord,...I(a)}:{keyType:Q.create(),valueType:e,typeName:o.ZodRecord,...I(t)})}}class e_ extends P{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:a}=this._processInputParams(e);if(a.parsedType!==u.map)return k(a,{code:p.invalid_type,expected:u.map,received:a.parsedType}),j;let s=this._def.keyType,r=this._def.valueType,i=[...a.data.entries()].map(([e,t],i)=>({key:s._parse(new A(a,e,a.path,[i,"key"])),value:r._parse(new A(a,t,a.path,[i,"value"]))}));if(a.common.async){let e=new Map;return Promise.resolve().then(async()=>{for(let a of i){let s=await a.key,r=await a.value;if("aborted"===s.status||"aborted"===r.status)return j;("dirty"===s.status||"dirty"===r.status)&&t.dirty(),e.set(s.value,r.value)}return{status:t.value,value:e}})}{let e=new Map;for(let a of i){let s=a.key,r=a.value;if("aborted"===s.status||"aborted"===r.status)return j;("dirty"===s.status||"dirty"===r.status)&&t.dirty(),e.set(s.value,r.value)}return{status:t.value,value:e}}}}e_.create=(e,t,a)=>new e_({valueType:t,keyType:e,typeName:o.ZodMap,...I(a)});class ex extends P{_parse(e){let{status:t,ctx:a}=this._processInputParams(e);if(a.parsedType!==u.set)return k(a,{code:p.invalid_type,expected:u.set,received:a.parsedType}),j;let s=this._def;null!==s.minSize&&a.data.size<s.minSize.value&&(k(a,{code:p.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),t.dirty()),null!==s.maxSize&&a.data.size>s.maxSize.value&&(k(a,{code:p.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),t.dirty());let r=this._def.valueType;function i(e){let a=new Set;for(let s of e){if("aborted"===s.status)return j;"dirty"===s.status&&t.dirty(),a.add(s.value)}return{status:t.value,value:a}}let n=[...a.data.values()].map((e,t)=>r._parse(new A(a,e,a.path,t)));return a.common.async?Promise.all(n).then(e=>i(e)):i(n)}min(e,t){return new ex({...this._def,minSize:{value:e,message:d.toString(t)}})}max(e,t){return new ex({...this._def,maxSize:{value:e,message:d.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}ex.create=(e,t)=>new ex({valueType:e,minSize:null,maxSize:null,typeName:o.ZodSet,...I(t)});class eb extends P{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==u.function)return k(t,{code:p.invalid_type,expected:u.function,received:t.parsedType}),j;function a(e,a){return x({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,_(),g].filter(e=>!!e),issueData:{code:p.invalid_arguments,argumentsError:a}})}function s(e,a){return x({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,_(),g].filter(e=>!!e),issueData:{code:p.invalid_return_type,returnTypeError:a}})}let r={errorMap:t.common.contextualErrorMap},i=t.data;if(this._def.returns instanceof eT){let e=this;return Z(async function(...t){let n=new f([]),d=await e._def.args.parseAsync(t,r).catch(e=>{throw n.addIssue(a(t,e)),n}),o=await Reflect.apply(i,this,d);return await e._def.returns._def.type.parseAsync(o,r).catch(e=>{throw n.addIssue(s(o,e)),n})})}{let e=this;return Z(function(...t){let n=e._def.args.safeParse(t,r);if(!n.success)throw new f([a(t,n.error)]);let d=Reflect.apply(i,this,n.data),o=e._def.returns.safeParse(d,r);if(!o.success)throw new f([s(d,o.error)]);return o.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new eb({...this._def,args:ey.create(e).rest(eo.create())})}returns(e){return new eb({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,a){return new eb({args:e||ey.create([]).rest(eo.create()),returns:t||eo.create(),typeName:o.ZodFunction,...I(a)})}}class ek extends P{get schema(){return this._def.getter()}_parse(e){let{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}ek.create=(e,t)=>new ek({getter:e,typeName:o.ZodLazy,...I(t)});class ew extends P{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return k(t,{received:t.data,code:p.invalid_literal,expected:this._def.value}),j}return{status:"valid",value:e.data}}get value(){return this._def.value}}function ej(e,t){return new eN({values:e,typeName:o.ZodEnum,...I(t)})}ew.create=(e,t)=>new ew({value:e,typeName:o.ZodLiteral,...I(t)});class eN extends P{_parse(e){if("string"!=typeof e.data){let t=this._getOrReturnCtx(e),a=this._def.values;return k(t,{expected:i.joinValues(a),received:t.parsedType,code:p.invalid_type}),j}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let t=this._getOrReturnCtx(e),a=this._def.values;return k(t,{received:t.data,code:p.invalid_enum_value,options:a}),j}return Z(e.data)}get options(){return this._def.values}get enum(){let e={};for(let t of this._def.values)e[t]=t;return e}get Values(){let e={};for(let t of this._def.values)e[t]=t;return e}get Enum(){let e={};for(let t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return eN.create(e,{...this._def,...t})}exclude(e,t=this._def){return eN.create(this.options.filter(t=>!e.includes(t)),{...this._def,...t})}}eN.create=ej;class eZ extends P{_parse(e){let t=i.getValidEnumValues(this._def.values),a=this._getOrReturnCtx(e);if(a.parsedType!==u.string&&a.parsedType!==u.number){let e=i.objectValues(t);return k(a,{expected:i.joinValues(e),received:a.parsedType,code:p.invalid_type}),j}if(this._cache||(this._cache=new Set(i.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let e=i.objectValues(t);return k(a,{received:a.data,code:p.invalid_enum_value,options:e}),j}return Z(e.data)}get enum(){return this._def.values}}eZ.create=(e,t)=>new eZ({values:e,typeName:o.ZodNativeEnum,...I(t)});class eT extends P{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);return t.parsedType!==u.promise&&!1===t.common.async?(k(t,{code:p.invalid_type,expected:u.promise,received:t.parsedType}),j):Z((t.parsedType===u.promise?t.data:Promise.resolve(t.data)).then(e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap})))}}eT.create=(e,t)=>new eT({type:e,typeName:o.ZodPromise,...I(t)});class eS extends P{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===o.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:t,ctx:a}=this._processInputParams(e),s=this._def.effect||null,r={addIssue:e=>{k(a,e),e.fatal?t.abort():t.dirty()},get path(){return a.path}};if(r.addIssue=r.addIssue.bind(r),"preprocess"===s.type){let e=s.transform(a.data,r);if(a.common.async)return Promise.resolve(e).then(async e=>{if("aborted"===t.value)return j;let s=await this._def.schema._parseAsync({data:e,path:a.path,parent:a});return"aborted"===s.status?j:"dirty"===s.status||"dirty"===t.value?N(s.value):s});{if("aborted"===t.value)return j;let s=this._def.schema._parseSync({data:e,path:a.path,parent:a});return"aborted"===s.status?j:"dirty"===s.status||"dirty"===t.value?N(s.value):s}}if("refinement"===s.type){let e=e=>{let t=s.refinement(e,r);if(a.common.async)return Promise.resolve(t);if(t instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return e};if(!1!==a.common.async)return this._def.schema._parseAsync({data:a.data,path:a.path,parent:a}).then(a=>"aborted"===a.status?j:("dirty"===a.status&&t.dirty(),e(a.value).then(()=>({status:t.value,value:a.value}))));{let s=this._def.schema._parseSync({data:a.data,path:a.path,parent:a});return"aborted"===s.status?j:("dirty"===s.status&&t.dirty(),e(s.value),{status:t.value,value:s.value})}}if("transform"===s.type)if(!1!==a.common.async)return this._def.schema._parseAsync({data:a.data,path:a.path,parent:a}).then(e=>C(e)?Promise.resolve(s.transform(e.value,r)).then(e=>({status:t.value,value:e})):j);else{let e=this._def.schema._parseSync({data:a.data,path:a.path,parent:a});if(!C(e))return j;let i=s.transform(e.value,r);if(i instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:i}}i.assertNever(s)}}eS.create=(e,t,a)=>new eS({schema:e,typeName:o.ZodEffects,effect:t,...I(a)}),eS.createWithPreprocess=(e,t,a)=>new eS({schema:t,effect:{type:"preprocess",transform:e},typeName:o.ZodEffects,...I(a)});class eC extends P{_parse(e){return this._getType(e)===u.undefined?Z(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}eC.create=(e,t)=>new eC({innerType:e,typeName:o.ZodOptional,...I(t)});class eO extends P{_parse(e){return this._getType(e)===u.null?Z(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}eO.create=(e,t)=>new eO({innerType:e,typeName:o.ZodNullable,...I(t)});class eA extends P{_parse(e){let{ctx:t}=this._processInputParams(e),a=t.data;return t.parsedType===u.undefined&&(a=this._def.defaultValue()),this._def.innerType._parse({data:a,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}eA.create=(e,t)=>new eA({innerType:e,typeName:o.ZodDefault,defaultValue:"function"==typeof t.default?t.default:()=>t.default,...I(t)});class eE extends P{_parse(e){let{ctx:t}=this._processInputParams(e),a={...t,common:{...t.common,issues:[]}},s=this._def.innerType._parse({data:a.data,path:a.path,parent:{...a}});return O(s)?s.then(e=>({status:"valid",value:"valid"===e.status?e.value:this._def.catchValue({get error(){return new f(a.common.issues)},input:a.data})})):{status:"valid",value:"valid"===s.status?s.value:this._def.catchValue({get error(){return new f(a.common.issues)},input:a.data})}}removeCatch(){return this._def.innerType}}eE.create=(e,t)=>new eE({innerType:e,typeName:o.ZodCatch,catchValue:"function"==typeof t.catch?t.catch:()=>t.catch,...I(t)});class eI extends P{_parse(e){if(this._getType(e)!==u.nan){let t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.nan,received:t.parsedType}),j}return{status:"valid",value:e.data}}}eI.create=e=>new eI({typeName:o.ZodNaN,...I(e)});let eP=Symbol("zod_brand");class e$ extends P{_parse(e){let{ctx:t}=this._processInputParams(e),a=t.data;return this._def.type._parse({data:a,path:t.path,parent:t})}unwrap(){return this._def.type}}class eR extends P{_parse(e){let{status:t,ctx:a}=this._processInputParams(e);if(a.common.async)return(async()=>{let e=await this._def.in._parseAsync({data:a.data,path:a.path,parent:a});return"aborted"===e.status?j:"dirty"===e.status?(t.dirty(),N(e.value)):this._def.out._parseAsync({data:e.value,path:a.path,parent:a})})();{let e=this._def.in._parseSync({data:a.data,path:a.path,parent:a});return"aborted"===e.status?j:"dirty"===e.status?(t.dirty(),{status:"dirty",value:e.value}):this._def.out._parseSync({data:e.value,path:a.path,parent:a})}}static create(e,t){return new eR({in:e,out:t,typeName:o.ZodPipeline})}}class eM extends P{_parse(e){let t=this._def.innerType._parse(e),a=e=>(C(e)&&(e.value=Object.freeze(e.value)),e);return O(t)?t.then(e=>a(e)):a(t)}unwrap(){return this._def.innerType}}function eF(e,t){let a="function"==typeof e?e(t):"string"==typeof e?{message:e}:e;return"string"==typeof a?{message:a}:a}function eL(e,t={},a){return e?ed.create().superRefine((s,r)=>{let i=e(s);if(i instanceof Promise)return i.then(e=>{if(!e){let e=eF(t,s),i=e.fatal??a??!0;r.addIssue({code:"custom",...e,fatal:i})}});if(!i){let e=eF(t,s),i=e.fatal??a??!0;r.addIssue({code:"custom",...e,fatal:i})}}):ed.create()}eM.create=(e,t)=>new eM({innerType:e,typeName:o.ZodReadonly,...I(t)});let eD={object:eh.lazycreate};(r=o||(o={})).ZodString="ZodString",r.ZodNumber="ZodNumber",r.ZodNaN="ZodNaN",r.ZodBigInt="ZodBigInt",r.ZodBoolean="ZodBoolean",r.ZodDate="ZodDate",r.ZodSymbol="ZodSymbol",r.ZodUndefined="ZodUndefined",r.ZodNull="ZodNull",r.ZodAny="ZodAny",r.ZodUnknown="ZodUnknown",r.ZodNever="ZodNever",r.ZodVoid="ZodVoid",r.ZodArray="ZodArray",r.ZodObject="ZodObject",r.ZodUnion="ZodUnion",r.ZodDiscriminatedUnion="ZodDiscriminatedUnion",r.ZodIntersection="ZodIntersection",r.ZodTuple="ZodTuple",r.ZodRecord="ZodRecord",r.ZodMap="ZodMap",r.ZodSet="ZodSet",r.ZodFunction="ZodFunction",r.ZodLazy="ZodLazy",r.ZodLiteral="ZodLiteral",r.ZodEnum="ZodEnum",r.ZodEffects="ZodEffects",r.ZodNativeEnum="ZodNativeEnum",r.ZodOptional="ZodOptional",r.ZodNullable="ZodNullable",r.ZodDefault="ZodDefault",r.ZodCatch="ZodCatch",r.ZodPromise="ZodPromise",r.ZodBranded="ZodBranded",r.ZodPipeline="ZodPipeline",r.ZodReadonly="ZodReadonly";let ez=(e,t={message:`Input not instance of ${e.name}`})=>eL(t=>t instanceof e,t),eU=Q.create,eV=ee.create,eK=eI.create,eX=et.create,eB=ea.create,eW=es.create,eq=er.create,eJ=ei.create,eY=en.create,eH=ed.create,eG=eo.create,eQ=el.create,e0=ec.create,e1=eu.create,e4=eh.create,e2=eh.strictCreate,e5=ep.create,e9=ef.create,e3=eg.create,e6=ey.create,e8=ev.create,e7=e_.create,te=ex.create,tt=eb.create,ta=ek.create,ts=ew.create,tr=eN.create,ti=eZ.create,tn=eT.create,td=eS.create,to=eC.create,tl=eO.create,tc=eS.createWithPreprocess,tu=eR.create,th=()=>eU().optional(),tp=()=>eV().optional(),tm=()=>eB().optional(),tf={string:e=>Q.create({...e,coerce:!0}),number:e=>ee.create({...e,coerce:!0}),boolean:e=>ea.create({...e,coerce:!0}),bigint:e=>et.create({...e,coerce:!0}),date:e=>es.create({...e,coerce:!0})};e.s(["BRAND",0,eP,"NEVER",0,j,"Schema",0,P,"ZodAny",0,ed,"ZodArray",0,eu,"ZodBigInt",0,et,"ZodBoolean",0,ea,"ZodBranded",0,e$,"ZodCatch",0,eE,"ZodDate",0,es,"ZodDefault",0,eA,"ZodDiscriminatedUnion",0,ef,"ZodEffects",0,eS,"ZodEnum",0,eN,"ZodFirstPartyTypeKind",0,o,"ZodFunction",0,eb,"ZodIntersection",0,eg,"ZodLazy",0,ek,"ZodLiteral",0,ew,"ZodMap",0,e_,"ZodNaN",0,eI,"ZodNativeEnum",0,eZ,"ZodNever",0,el,"ZodNull",0,en,"ZodNullable",0,eO,"ZodNumber",0,ee,"ZodObject",0,eh,"ZodOptional",0,eC,"ZodPipeline",0,eR,"ZodPromise",0,eT,"ZodReadonly",0,eM,"ZodRecord",0,ev,"ZodSchema",0,P,"ZodSet",0,ex,"ZodString",0,Q,"ZodSymbol",0,er,"ZodTransformer",0,eS,"ZodTuple",0,ey,"ZodType",0,P,"ZodUndefined",0,ei,"ZodUnion",0,ep,"ZodUnknown",0,eo,"ZodVoid",0,ec,"any",0,eH,"array",0,e1,"bigint",0,eX,"boolean",0,eB,"coerce",0,tf,"custom",0,eL,"date",0,eW,"datetimeRegex",0,G,"discriminatedUnion",0,e9,"effect",0,td,"enum",0,tr,"function",0,tt,"instanceof",0,ez,"intersection",0,e3,"late",0,eD,"lazy",0,ta,"literal",0,ts,"map",0,e7,"nan",0,eK,"nativeEnum",0,ti,"never",0,eQ,"null",0,eY,"nullable",0,tl,"number",0,eV,"object",0,e4,"oboolean",0,tm,"onumber",0,tp,"optional",0,to,"ostring",0,th,"pipeline",0,tu,"preprocess",0,tc,"promise",0,tn,"record",0,e8,"set",0,te,"strictObject",0,e2,"string",0,eU,"symbol",0,eq,"transformer",0,td,"tuple",0,e6,"undefined",0,eJ,"union",0,e5,"unknown",0,eG,"void",0,e0],65638),e.i(65638),e.i(69790),e.s(["BRAND",0,eP,"DIRTY",0,N,"EMPTY_PATH",0,b,"INVALID",0,j,"NEVER",0,j,"OK",0,Z,"ParseStatus",0,w,"Schema",0,P,"ZodAny",0,ed,"ZodArray",0,eu,"ZodBigInt",0,et,"ZodBoolean",0,ea,"ZodBranded",0,e$,"ZodCatch",0,eE,"ZodDate",0,es,"ZodDefault",0,eA,"ZodDiscriminatedUnion",0,ef,"ZodEffects",0,eS,"ZodEnum",0,eN,"ZodError",0,f,"ZodFirstPartyTypeKind",0,o,"ZodFunction",0,eb,"ZodIntersection",0,eg,"ZodIssueCode",0,p,"ZodLazy",0,ek,"ZodLiteral",0,ew,"ZodMap",0,e_,"ZodNaN",0,eI,"ZodNativeEnum",0,eZ,"ZodNever",0,el,"ZodNull",0,en,"ZodNullable",0,eO,"ZodNumber",0,ee,"ZodObject",0,eh,"ZodOptional",0,eC,"ZodParsedType",0,u,"ZodPipeline",0,eR,"ZodPromise",0,eT,"ZodReadonly",0,eM,"ZodRecord",0,ev,"ZodSchema",0,P,"ZodSet",0,ex,"ZodString",0,Q,"ZodSymbol",0,er,"ZodTransformer",0,eS,"ZodTuple",0,ey,"ZodType",0,P,"ZodUndefined",0,ei,"ZodUnion",0,ep,"ZodUnknown",0,eo,"ZodVoid",0,ec,"addIssueToContext",0,k,"any",0,eH,"array",0,e1,"bigint",0,eX,"boolean",0,eB,"coerce",0,tf,"custom",0,eL,"date",0,eW,"datetimeRegex",0,G,"defaultErrorMap",0,g,"discriminatedUnion",0,e9,"effect",0,td,"enum",0,tr,"function",0,tt,"getErrorMap",0,_,"getParsedType",0,h,"instanceof",0,ez,"intersection",0,e3,"isAborted",0,T,"isAsync",0,O,"isDirty",0,S,"isValid",0,C,"late",0,eD,"lazy",0,ta,"literal",0,ts,"makeIssue",0,x,"map",0,e7,"nan",0,eK,"nativeEnum",0,ti,"never",0,eQ,"null",0,eY,"nullable",0,tl,"number",0,eV,"object",0,e4,"objectUtil",0,n,"oboolean",0,tm,"onumber",0,tp,"optional",0,to,"ostring",0,th,"pipeline",0,tu,"preprocess",0,tc,"promise",0,tn,"quotelessJson",0,m,"record",0,e8,"set",0,te,"setErrorMap",0,v,"strictObject",0,e2,"string",0,eU,"symbol",0,eq,"transformer",0,td,"tuple",0,e6,"undefined",0,eJ,"union",0,e5,"unknown",0,eG,"util",0,i,"void",0,e0],88685);var tg=e.i(88685),tg=tg;let ty=tg.object({apiKey:tg.string().min(1),model:tg.string().default("claude-opus-4-7"),baseUrl:tg.string().url().optional()}),tv=tg.object({provider:tg.enum(["anthropic-direct","atlas-embedded"]).default("anthropic-direct"),anthropic:ty.optional()}),t_=tg.object({include:tg.array(tg.string()).default(["src/**/*.{ts,tsx}"]),exclude:tg.array(tg.string()).default(["node_modules",".next","dist"])});tg.object({version:tg.literal(1).default(1),llm:tv.default({}),scan:t_.default({})}).parse({version:1,llm:{provider:"anthropic-direct"},scan:{include:["src/**/*.{ts,tsx}"],exclude:["node_modules",".next","dist"]}});let tx=[{id:"claude-opus-4-7",label:"Claude Opus 4.7"},{id:"claude-sonnet-4-6",label:"Claude Sonnet 4.6"},{id:"claude-haiku-4-5-20251001",label:"Claude Haiku 4.5"}];var tb=e.i(50667),tk=e.i(13121),tw=e.i(25010);let tj={background:"var(--bg-app)"},tN="w-full max-w-lg",tZ="rounded-xl p-6 flex flex-col gap-5",tT={background:"var(--surface-panel)",border:"1px solid var(--border-default)",boxShadow:"0 1px 2px rgba(15,23,42,.05),0 4px 16px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.04)"},tS="text-xs font-semibold text-slate-400 uppercase tracking-widest",tC="text-xs text-slate-400",tO="w-full rounded-lg px-3 py-2 text-sm font-mono text-slate-200 outline-none focus:ring-2 focus:ring-sky-500/50",tA={background:"rgba(2,6,23,0.6)",border:"1px solid var(--border-default)"},tE="px-4 py-2 rounded-lg text-sm font-semibold transition-all disabled:opacity-40 disabled:cursor-not-allowed",tI={background:"rgb(14,165,233)",color:"#020617"},tP="px-4 py-2 rounded-lg text-sm font-semibold transition-all border",t$={background:"transparent",border:"1px solid var(--border-default)",color:"var(--text-secondary, rgb(148,163,184))"},tR="w-full rounded-lg px-3 py-2 text-sm font-mono text-slate-200 outline-none focus:ring-2 focus:ring-sky-500/50 resize-none";function tM({state:e}){return"idle"===e.status?null:"testing"===e.status?(0,l.jsxs)("span",{className:"text-xs text-sky-400 flex items-center gap-1",children:[(0,l.jsx)("span",{className:"animate-spin inline-block w-3 h-3 border border-sky-400 border-t-transparent rounded-full"}),"Testing…"]}):"success"===e.status?(0,l.jsxs)("span",{className:"text-xs text-emerald-400",children:["Connected — ",e.model," (",e.latency,"ms)"]}):(0,l.jsxs)("span",{className:"text-xs text-red-400 font-mono break-all",children:["Failed — ",e.message]})}function tF({isConfigured:e,testState:t}){return"success"===t.status?(0,l.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs px-2 py-0.5 rounded-full font-medium",style:{background:"rgba(52,211,153,0.1)",color:"rgb(52,211,153)",border:"1px solid rgba(52,211,153,0.25)"},children:[(0,l.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-emerald-400 inline-block"}),"Connected"]}):e?(0,l.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs px-2 py-0.5 rounded-full font-medium",style:{background:"rgba(251,191,36,0.1)",color:"rgb(251,191,36)",border:"1px solid rgba(251,191,36,0.25)"},children:[(0,l.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-amber-400 inline-block"}),"Configured — run Test Connection to verify"]}):(0,l.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs px-2 py-0.5 rounded-full font-medium",style:{background:"rgba(148,163,184,0.08)",color:"rgb(148,163,184)",border:"1px solid rgba(148,163,184,0.2)"},children:[(0,l.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-slate-500 inline-block"}),"Not configured"]})}let tL={free:{bg:"rgba(148,163,184,0.08)",text:"rgb(148,163,184)",border:"rgba(148,163,184,0.2)"},pro:{bg:"rgba(59,130,246,0.12)",text:"rgb(96,165,250)",border:"rgba(59,130,246,0.3)"},"forge-pro":{bg:"rgba(236,72,153,0.12)",text:"rgb(244,114,182)",border:"rgba(236,72,153,0.3)"},spectrum:{bg:"rgba(99,102,241,0.12)",text:"rgb(167,139,250)",border:"rgba(99,102,241,0.3)"},team:{bg:"rgba(52,211,153,0.1)",text:"rgb(52,211,153)",border:"rgba(52,211,153,0.25)"},enterprise:{bg:"rgba(251,191,36,0.1)",text:"rgb(251,191,36)",border:"rgba(251,191,36,0.25)"}},tD={free:"Free",pro:"Pro","forge-pro":"forge Pro",spectrum:"Spectrum 0x55",team:"Team",enterprise:"Enterprise"};function tz({tier:e}){let t=tL[e];return"spectrum"===e?(0,l.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs px-2.5 py-1 rounded-full font-semibold tracking-wide",style:{background:"linear-gradient(90deg, rgba(59,130,246,0.15), rgba(236,72,153,0.15))",color:"rgb(167,139,250)",border:"1px solid rgba(167,139,250,0.35)"},children:[(0,l.jsx)("span",{className:"w-1.5 h-1.5 rounded-full inline-block",style:{background:"linear-gradient(90deg, rgb(96,165,250), rgb(244,114,182))"}}),"Spectrum 0x55"]}):(0,l.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs px-2.5 py-1 rounded-full font-semibold uppercase tracking-wide",style:{background:t.bg,color:t.text,border:`1px solid ${t.border}`},children:[(0,l.jsx)("span",{className:"w-1.5 h-1.5 rounded-full inline-block",style:{background:t.text}}),tD[e]]})}function tU(e){return e?new Date(1e3*e).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"}):"—"}e.s(["default",0,function(){let{tq:e}=(0,tw.useTargetPath)(),{license:t,isPro:a,refresh:s}=(0,tk.useLicense)(e),[r,i]=(0,c.useState)(""),[n,d]=(0,c.useState)(!1),[o,u]=(0,c.useState)(!1),[h,p]=(0,c.useState)(null);async function m(){if(r.trim()){d(!0),p(null);try{let t=await fetch(`/api/license/activate${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({licenseKey:r.trim()})}),a=await t.json();if(!t.ok)throw Error(a.error??"Activation failed");p({ok:!0,text:`Activated — ${a.productName} (${a.tier})`}),i(""),s()}catch(e){p({ok:!1,text:e instanceof Error?e.message:String(e)})}finally{d(!1)}}}async function f(){u(!0),p(null);try{let t=await fetch(`/api/license/validate${e}`,{method:"POST"}),a=await t.json();if(!t.ok)throw Error(a.error??"Re-validation failed");p({ok:!0,text:`Validated — ${a.tier}, last check: now`}),s()}catch(e){p({ok:!1,text:e instanceof Error?e.message:String(e)})}finally{u(!1)}}async function g(){p(null);try{let t=await fetch(`/api/license/deactivate${e}`,{method:"POST"});if(!t.ok){let e=await t.json();throw Error(e.error??"Deactivation failed")}s()}catch(e){p({ok:!1,text:e instanceof Error?e.message:String(e)})}}let[y,v]=(0,c.useState)("anthropic-direct"),[_,x]=(0,c.useState)(""),[b,k]=(0,c.useState)(!1),[w,j]=(0,c.useState)(""),[N,Z]=(0,c.useState)(!1),[T,S]=(0,c.useState)(!1),[C,O]=(0,c.useState)(tx[0].id),[A,E]=(0,c.useState)("src/**/*.{ts,tsx}"),[I,P]=(0,c.useState)("node_modules\n.next\ndist"),[$,R]=(0,c.useState)(!1),[M,F]=(0,c.useState)(!1),[L,D]=(0,c.useState)(!1),[z,U]=(0,c.useState)(!1),[V,K]=(0,c.useState)({status:"idle"});(0,c.useEffect)(()=>{fetch("/api/config").then(e=>e.json()).then(({config:e,apiKeyConfigured:t})=>{e&&(e.llm.provider&&v(e.llm.provider),e.llm.anthropic?.model&&O(e.llm.anthropic.model),t&&(k(!0),j(e.llm.anthropic?.apiKey??"")),e.scan?.include?.length&&E(e.scan.include.join("\n")),e.scan?.exclude?.length&&P(e.scan.exclude.join("\n")))}).catch(()=>{})},[]);let X=(0,c.useCallback)(()=>({version:1,llm:{provider:y,..."anthropic-direct"===y?{anthropic:{..._.trim()?{apiKey:_.trim()}:{},model:C}}:{}},scan:{include:A.split("\n").map(e=>e.trim()).filter(Boolean),exclude:I.split("\n").map(e=>e.trim()).filter(Boolean)}}),[y,_,C,A,I]);async function B(){K({status:"testing"});try{let e=await fetch("/api/config/test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({config:X()})}),t=await e.json();t.success?K({status:"success",latency:t.latency,model:t.model}):K({status:"error",message:t.error??"Unknown error"})}catch(e){K({status:"error",message:e instanceof Error?e.message:String(e)})}}async function W(){R(!0),D(!1);try{(await fetch("/api/config",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({config:X()})})).ok&&(_.trim()&&(k(!0),j(_.replace(/(?<=^.{10}).*(?=.{4}$)/,"***")),x(""),Z(!1)),D(!0),setTimeout(()=>D(!1),2e3))}finally{R(!1)}}async function q(){F(!0),U(!1);try{await fetch("/api/config",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({config:X()})}),U(!0),setTimeout(()=>U(!1),2e3)}finally{F(!1)}}let J=b||!!_.trim();return(0,l.jsxs)("div",{className:"flex flex-col min-h-screen",style:tj,children:[(0,l.jsx)(tb.PrismDock,{}),(0,l.jsxs)("main",{className:"flex-1 flex flex-col items-center px-6 pt-32 pb-16 gap-6",children:[(0,l.jsxs)("div",{className:`${tN} text-center`,children:[(0,l.jsxs)("h1",{className:"text-2xl font-semibold text-slate-100 tracking-tight",children:[(0,l.jsx)("span",{className:"font-semibold",children:"prism"}),(0,l.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]}),(0,l.jsxs)("p",{className:"mt-0.5 text-xs text-slate-500 font-mono",children:["Settings · v","0.7.1"," · powered by prismlens"]})]}),(0,l.jsxs)("div",{className:`${tN} ${tZ}`,style:tT,children:[(0,l.jsx)("h2",{className:tS,children:"LLM Provider"}),(0,l.jsx)("div",{className:"flex flex-col gap-3",children:["anthropic-direct","atlas-embedded"].map(e=>(0,l.jsxs)("label",{className:"flex items-center gap-3 cursor-pointer group",onClick:()=>v(e),children:[(0,l.jsx)("div",{className:"w-4 h-4 rounded-full flex items-center justify-center flex-shrink-0",style:{border:`2px solid ${y===e?"rgb(14,165,233)":"rgba(71,85,105,0.6)"}`,background:y===e?"rgb(14,165,233)":"transparent"},children:y===e&&(0,l.jsx)("div",{className:"w-1.5 h-1.5 rounded-full",style:{background:"#020617"}})}),(0,l.jsx)("span",{className:"text-sm text-slate-300",children:"anthropic-direct"===e?"Standalone (Anthropic SDK direct)":"Atlas-embedded (auto-detect)"})]},e))}),"anthropic-direct"===y&&(0,l.jsxs)("div",{className:"flex flex-col gap-4 pt-1",children:[(0,l.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("label",{className:tC,htmlFor:"apiKey",children:"Anthropic API Key"}),(0,l.jsx)(tF,{isConfigured:b,testState:V})]}),b&&!N?(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)("div",{className:`${tO} flex-1 text-slate-500 select-none`,style:{...tA,cursor:"default"},"aria-label":"API key configured (masked)",children:w||"••••••••••••••••••••"}),(0,l.jsx)("button",{type:"button",onClick:()=>{Z(!0),x("")},className:"px-3 py-2 rounded-lg text-xs font-semibold text-slate-300 hover:text-white transition-colors flex-shrink-0",style:{background:"rgba(51,65,85,0.5)",border:"1px solid rgba(51,65,85,0.6)"},children:"Replace"})]}):(0,l.jsx)("div",{className:"flex flex-col gap-1.5",children:(0,l.jsxs)("div",{className:"relative",children:[(0,l.jsx)("input",{id:"apiKey",type:T?"text":"password",value:_,onChange:e=>x(e.target.value),placeholder:N?"Paste new key to replace the configured one":"Paste your Anthropic API key here (sk-ant-...)",className:`${tO} pr-24`,style:tA,autoComplete:"off",autoFocus:N}),(0,l.jsxs)("div",{className:"absolute right-2 top-1/2 -translate-y-1/2 flex items-center gap-1",children:[(0,l.jsx)("button",{type:"button",onClick:()=>S(e=>!e),className:"text-xs text-slate-500 hover:text-slate-300 transition-colors px-1",children:T?"hide":"show"}),N&&(0,l.jsx)("button",{type:"button",onClick:()=>{Z(!1),x("")},className:"text-xs text-slate-500 hover:text-red-400 transition-colors px-1",children:"cancel"})]})]})})]}),(0,l.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,l.jsx)("label",{className:tC,htmlFor:"model",children:"Model"}),(0,l.jsx)("select",{id:"model",value:C,onChange:e=>O(e.target.value),className:tO,style:tA,children:tx.map(e=>(0,l.jsx)("option",{value:e.id,children:e.label},e.id))})]}),(0,l.jsxs)("div",{className:"flex items-center gap-3 pt-1",children:[(0,l.jsx)("button",{onClick:B,disabled:!J||"testing"===V.status,className:tP,style:t$,children:"Test Connection"}),(0,l.jsx)(tM,{state:V})]})]}),(0,l.jsx)("div",{className:"pt-1 border-t",style:{borderColor:"var(--border-default)"},children:(0,l.jsx)("button",{onClick:W,disabled:$,className:tE,style:tI,children:$?"Saving…":L?"Saved ✓":"Save"})})]}),(0,l.jsxs)("div",{className:`${tN} ${tZ}`,style:tT,children:[(0,l.jsx)("h2",{className:tS,children:"Scan Configuration"}),(0,l.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,l.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,l.jsx)("label",{className:tC,htmlFor:"include",children:"Include patterns (one per line)"}),(0,l.jsx)("textarea",{id:"include",rows:3,value:A,onChange:e=>E(e.target.value),className:tR,style:tA})]}),(0,l.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,l.jsx)("label",{className:tC,htmlFor:"exclude",children:"Exclude patterns (one per line)"}),(0,l.jsx)("textarea",{id:"exclude",rows:3,value:I,onChange:e=>P(e.target.value),className:tR,style:tA})]})]}),(0,l.jsx)("div",{className:"pt-1 border-t",style:{borderColor:"var(--border-default)"},children:(0,l.jsx)("button",{onClick:q,disabled:M,className:tE,style:tI,children:M?"Saving…":z?"Saved ✓":"Save"})})]}),(0,l.jsxs)("div",{className:`${tN} ${tZ}`,style:tT,children:[(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h2",{className:tS,children:"License"}),t&&(0,l.jsx)(tz,{tier:t.tier})]}),n&&(0,l.jsxs)("div",{className:"flex items-center gap-2 text-sm text-slate-400",children:[(0,l.jsx)("span",{className:"animate-spin inline-block w-4 h-4 border-2 border-indigo-400 border-t-transparent rounded-full"}),"Activating with Lemonsqueezy…"]}),!n&&a&&t&&(0,l.jsxs)("div",{className:"flex flex-col gap-2.5 text-xs text-slate-500",children:[t.productName&&(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("span",{children:"Product"}),(0,l.jsx)("span",{className:"text-slate-300 font-medium",children:t.productName})]}),t.userId&&(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("span",{children:"Account"}),(0,l.jsx)("span",{className:"font-mono text-slate-400 truncate max-w-48",children:t.userId})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("span",{children:"Last validated"}),(0,l.jsx)("span",{className:"font-mono text-slate-400",children:function(e){if(!e)return"never";let t=Math.floor(Date.now()/1e3)-e;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`}(t.validatedAt)})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("span",{children:"Subscription"}),(0,l.jsx)("span",{className:`font-medium ${"active"===t.subscriptionStatus?"text-emerald-400":"text-amber-400"}`,children:"active"===t.subscriptionStatus?"Active":"cancelled"===t.subscriptionStatus?`Cancelled${t.expiresAt?`, active until ${tU(t.expiresAt)}`:""}`:t.subscriptionStatus??"Unknown"})]}),t.instanceId&&(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("span",{children:"Instance"}),(0,l.jsx)("span",{className:"font-mono text-slate-500 text-[10px] truncate max-w-40",children:t.instanceId})]}),null!==t.activationLimit&&null!==t.activationUsage&&(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("span",{children:"Activations"}),(0,l.jsxs)("span",{className:"font-mono text-slate-400",children:[t.activationUsage," / ",t.activationLimit??"∞"]})]}),"grace"===t.cacheStatus&&(0,l.jsxs)("p",{className:"text-amber-400 text-xs",children:["Cache expired — re-validation overdue. Running in 7-day grace period.",t.gracePeriodEnd&&` Expires ${tU(t.gracePeriodEnd)}.`]}),t.isExpired&&(0,l.jsx)("p",{className:"text-red-400 text-xs",children:"Subscription expired — downgraded to free tier."})]}),!n&&a&&(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-3 pt-1 border-t",style:{borderColor:"var(--border-default)"},children:[(0,l.jsx)("button",{onClick:f,disabled:o,className:tP,style:t$,children:o?"Checking…":"Validate now"}),(0,l.jsx)("a",{href:"https://prism0x2a.lemonsqueezy.com/billing",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-indigo-400 hover:text-indigo-300 transition-colors",children:"Manage subscription →"}),(0,l.jsx)("button",{onClick:g,className:"text-xs text-red-400 hover:text-red-300 transition-colors ml-auto",children:"Deactivate this instance"})]}),!n&&!a&&(0,l.jsxs)("div",{className:"flex flex-col gap-3 pt-1 border-t",style:{borderColor:"var(--border-default)"},children:[(0,l.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,l.jsx)("label",{className:tC,children:"License Key"}),(0,l.jsx)("input",{type:"text",value:r,onChange:e=>i(e.target.value),onKeyDown:e=>{"Enter"===e.key&&m()},placeholder:"LS-XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX",className:tO,style:tA,spellCheck:!1})]}),(0,l.jsxs)("div",{className:"flex items-center gap-3",children:[(0,l.jsx)("button",{onClick:m,disabled:!r.trim(),className:tE,style:{background:"rgb(99,102,241)",color:"#fff",opacity:r.trim()?1:.4},children:"Activate"}),(0,l.jsx)("a",{href:"https://prism0x2a.lemonsqueezy.com",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-indigo-400 hover:text-indigo-300 transition-colors",children:"Get a license →"})]}),(0,l.jsx)("p",{className:"text-xs text-slate-600",children:"Pro $39/mo · Team $99/dev/mo · Spectrum 0x55 $49/mo (bundle)"})]}),h&&(0,l.jsx)("p",{className:`text-xs font-mono ${h.ok?"text-emerald-400":"text-red-400"}`,children:h.text})]})]}),(0,l.jsxs)("footer",{className:"text-center py-4 text-xs text-slate-600",style:{marginBottom:"var(--infobar-clearance-bottom)"},children:[(0,l.jsx)("span",{className:"font-mono",children:"0x2A = 42."})," The answer to all questions."]})]})}],32545)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,95057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var s={formatUrl:function(){return o},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var l in s)Object.defineProperty(r,l,{enumerable:!0,get:s[l]});let n=e.r(90809)._(e.r(98183)),a=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,s=e.protocol||"",l=e.pathname||"",o=e.hash||"",i=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(c+=":"+e.port)),i&&"object"==typeof i&&(i=String(n.urlQueryToSearchParams(i)));let u=e.search||i&&`?${i}`||"";return s&&!s.endsWith(":")&&(s+=":"),e.slashes||(!s||a.test(s))&&!1!==c?(c="//"+(c||""),l&&"/"!==l[0]&&(l="/"+l)):c||(c=""),o&&"#"!==o[0]&&(o="#"+o),u&&"?"!==u[0]&&(u="?"+u),l=l.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${s}${c}${l}${u}${o}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return o(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return l}});let s=e.r(71645);function l(e,t){let r=(0,s.useRef)(null),l=(0,s.useRef)(null);return(0,s.useCallback)(s=>{if(null===s){let e=r.current;e&&(r.current=null,e());let t=l.current;t&&(l.current=null,t())}else e&&(r.current=n(e,s)),t&&(l.current=n(t,s))},[e,t])}function n(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},73668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return n}});let s=e.r(18967),l=e.r(52817);function n(e){if(!(0,s.isAbsoluteUrl)(e))return!0;try{let t=(0,s.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,l.hasBasePath)(r.pathname)}catch(e){return!1}}},84508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return s}});let s=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var s={default:function(){return g},useLinkStatus:function(){return y}};for(var l in s)Object.defineProperty(r,l,{enumerable:!0,get:s[l]});let n=e.r(90809),a=e.r(43476),o=n._(e.r(71645)),i=e.r(95057),c=e.r(8372),u=e.r(18581),d=e.r(18967),p=e.r(5550);e.r(33525);let f=e.r(88540),x=e.r(91949),h=e.r(73668),m=e.r(9396);function g(t){var r,s;let l,n,g,[y,j]=(0,o.useOptimistic)(x.IDLE_LINK_STATUS),v=(0,o.useRef)(null),{href:N,as:k,children:w,prefetch:_=null,passHref:S,replace:E,shallow:C,scroll:P,onClick:R,onMouseEnter:O,onTouchStart:T,legacyBehavior:L=!1,onNavigate:A,transitionTypes:U,ref:I,unstable_dynamicOnHover:M,...$}=t;l=w,L&&("string"==typeof l||"number"==typeof l)&&(l=(0,a.jsx)("a",{children:l}));let B=o.default.useContext(c.AppRouterContext),D=!1!==_,F=!1!==_?null===(s=_)||"auto"===s?m.FetchStrategy.PPR:m.FetchStrategy.Full:m.FetchStrategy.PPR,K="string"==typeof(r=k||N)?r:(0,i.formatUrl)(r);if(L){if(l?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});n=o.default.Children.only(l)}let W=L?n&&"object"==typeof n&&n.ref:I,G=o.default.useCallback(e=>(null!==B&&(v.current=(0,x.mountLinkInstance)(e,K,B,F,D,j)),()=>{v.current&&((0,x.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,x.unmountPrefetchableInstance)(e)}),[D,K,B,F,j]),z={ref:(0,u.useMergedRef)(G,W),onClick(t){L||"function"!=typeof R||R(t),L&&n.props&&"function"==typeof n.props.onClick&&n.props.onClick(t),!B||t.defaultPrevented||function(t,r,s,l,n,a,i){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,h.isLocalURL)(r)){l&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),a){let e=!1;if(a({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(99781);o.default.startTransition(()=>{d(r,l?"replace":"push",!1===n?f.ScrollBehavior.NoScroll:f.ScrollBehavior.Default,s.current,i)})}}(t,K,v,E,P,A,U)},onMouseEnter(e){L||"function"!=typeof O||O(e),L&&n.props&&"function"==typeof n.props.onMouseEnter&&n.props.onMouseEnter(e),B&&D&&(0,x.onNavigationIntent)(e.currentTarget,!0===M)},onTouchStart:function(e){L||"function"!=typeof T||T(e),L&&n.props&&"function"==typeof n.props.onTouchStart&&n.props.onTouchStart(e),B&&D&&(0,x.onNavigationIntent)(e.currentTarget,!0===M)}};return(0,d.isAbsoluteUrl)(K)?z.href=K:L&&!S&&("a"!==n.type||"href"in n.props)||(z.href=(0,p.addBasePath)(K)),g=L?o.default.cloneElement(n,z):(0,a.jsx)("a",{...$,...z,children:l}),(0,a.jsx)(b.Provider,{value:y,children:g})}e.r(84508);let b=(0,o.createContext)(x.IDLE_LINK_STATUS),y=()=>(0,o.useContext)(b);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18566,(e,t,r)=>{t.exports=e.r(76562)},50667,36528,25010,60888,13121,e=>{"use strict";var t=e.i(43476),r=e.i(22016),s=e.i(18566),l=e.i(71645);let n={monorepo:{tier:"pro",label:"Monorepo support"},aggregate_scan:{tier:"pro",label:"Aggregate workspace scan"},cross_workspace_insights:{tier:"pro",label:"Cross-workspace insights"},llm_insights:{tier:"pro",label:"AI-powered insights"},custom_queries:{tier:"pro",label:"Custom GREEN queries"},cross_layer_context:{tier:"pro",label:"Cross-layer context"},auto_insights:{tier:"pro",label:"Auto-generated insights"},team_sync:{tier:"team",label:"Team sync"},ci_integration:{tier:"team",label:"CI integration"},forge_unlimited:{tier:"forge-pro",label:"forge0x2B unlimited"},forge_unlimited_generation:{tier:"forge-pro",label:"forge0x2B unlimited generation"}};function a(e){return"free"!==n[e].tier}e.s(["FREE_TIER_LOC_LIMIT",0,5e4,"showProBadge",0,a],36528);let o=()=>(0,t.jsx)("span",{className:"text-[10px] font-bold px-1 py-0.5 rounded leading-none",style:{background:"rgba(251,191,36,0.15)",color:"rgb(251,191,36)",border:"1px solid rgba(251,191,36,0.3)"},children:"PRO"});function i({monorepo:e,activeWorkspace:r,onSelect:s,isPro:n=!1}){let[c,u]=(0,l.useState)(!1),d=(0,l.useRef)(null);if((0,l.useEffect)(()=>{function e(e){d.current&&!d.current.contains(e.target)&&u(!1)}return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]),!e||"single"===e.type||0===e.packages.length)return null;let p=a("monorepo")&&!n;return(0,t.jsxs)("div",{className:"relative",ref:d,children:[(0,t.jsxs)("button",{onClick:()=>u(e=>!e),className:"flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-medium transition-colors",style:{background:c?"rgba(51,65,85,0.5)":"rgba(51,65,85,0.25)",border:"1px solid rgba(51,65,85,0.5)",color:"rgb(148,163,184)"},title:`Monorepo: ${e.type}`,children:[(0,t.jsx)("span",{className:"font-mono",style:{color:"rgb(52,211,153)",fontSize:10},children:e.type.toUpperCase()}),(0,t.jsx)("span",{className:"max-w-[80px] truncate",children:r??"all workspaces"}),p&&(0,t.jsx)(o,{}),(0,t.jsx)("svg",{width:"8",height:"8",viewBox:"0 0 8 8",fill:"currentColor",className:"opacity-60",children:(0,t.jsx)("path",{d:"M1 2.5l3 3 3-3",stroke:"currentColor",strokeWidth:"1.2",fill:"none",strokeLinecap:"round"})})]}),c&&(0,t.jsxs)("div",{className:"absolute top-full mt-1 right-0 z-50 rounded-xl overflow-hidden py-1 min-w-[180px]",style:{background:"rgba(15,23,42,0.95)",backdropFilter:"blur(20px)",border:"1px solid rgba(51,65,85,0.5)",boxShadow:"0 4px 24px rgba(0,0,0,0.4)"},children:[(0,t.jsxs)("button",{className:"w-full text-left px-3 py-2 text-xs flex items-center gap-2 transition-colors hover:bg-white/5",style:{color:null===r?"rgb(52,211,153)":"rgb(148,163,184)"},onClick:()=>{s(null),u(!1)},children:[(0,t.jsx)("span",{className:"font-mono text-[10px] opacity-60",children:"∑"}),"All workspaces",null===r&&(0,t.jsx)("span",{className:"ml-auto text-[10px] opacity-60",children:"✓"})]}),(0,t.jsx)("div",{className:"my-1",style:{borderTop:"1px solid rgba(51,65,85,0.3)"}}),e.packages.map(e=>(0,t.jsxs)("button",{className:"w-full text-left px-3 py-2 text-xs flex items-center gap-2 transition-colors hover:bg-white/5",style:{color:r===e.name?"rgb(52,211,153)":"rgb(148,163,184)"},onClick:()=>{s(e.name),u(!1)},children:[(0,t.jsx)("span",{className:"font-mono text-[10px] opacity-50",children:"pkg"}),(0,t.jsx)("span",{className:"flex-1 truncate",children:e.name}),void 0!==e.loc&&(0,t.jsxs)("span",{className:"text-[10px] font-mono opacity-40",children:[(e.loc/1e3).toFixed(1),"k"]}),r===e.name&&(0,t.jsx)("span",{className:"text-[10px] opacity-60",children:"✓"})]},e.path))]})]})}function c(){let[e,t]=(0,l.useState)(""),[r,s]=(0,l.useState)(!1);return(0,l.useEffect)(()=>{fetch("/api/config").then(e=>e.json()).then(e=>{let r=e.targetPath??"";t(r?`?target=${encodeURIComponent(r)}`:"")}).catch(()=>{}).finally(()=>s(!0))},[]),{tq:e,ready:r}}function u(e){let[t,r]=(0,l.useState)(null),[s,n]=(0,l.useState)(null),[a,o]=(0,l.useState)(!1);(0,l.useEffect)(()=>{Promise.all([fetch(`/api/monorepo${e}`).then(e=>e.json()).catch(()=>({monorepo:null})),fetch(`/api/monorepo/active${e}`).then(e=>e.json()).catch(()=>({workspace:null}))]).then(([e,t])=>{r(e.monorepo??null),n(t.workspace??null)}).finally(()=>o(!0))},[e]);let i=(0,l.useCallback)(async t=>{n(t),await fetch(`/api/monorepo/active${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workspace:t})}).catch(()=>{})},[e]),c=s?`&workspace=${encodeURIComponent(s)}`:"";return{monorepo:t,activeWorkspace:s,setActiveWorkspace:i,ready:a,wq:c}}e.s(["useTargetPath",0,c],25010),e.s(["useActiveWorkspace",0,u],60888);let d={tier:"free",issuedAt:null,expiresAt:null,userId:null,features:[],isValid:!1,isExpired:!1,licenseKey:null,instanceId:null,productName:null,subscriptionStatus:null,validatedAt:null,revalidationDue:null,gracePeriodEnd:null,activationLimit:null,activationUsage:null,cacheStatus:"no-cache",daysSinceValidation:null};function p(e){let[t,r]=(0,l.useState)(null),[s,n]=(0,l.useState)(!1),[a,o]=(0,l.useState)(0);(0,l.useEffect)(()=>{fetch(`/api/license${e}`).then(e=>e.json()).then(e=>r(e)).catch(()=>r(d)).finally(()=>n(!0))},[e,a]);let i=(0,l.useCallback)(()=>o(e=>e+1),[]),c=!!t&&"free"!==t.tier&&"forge-pro"!==t.tier&&t.isValid&&!t.isExpired&&"expired"!==t.cacheStatus;return{license:t,ready:s,refresh:i,isPro:c}}e.s(["useLicense",0,p],13121);let f=[{href:"/blue",label:"BLUE",color:"rgb(59,130,246)"},{href:"/amber",label:"AMBER",color:"rgb(251,191,36)"},{href:"/green",label:"GREEN",color:"rgb(52,211,153)"},{href:"/settings",label:"⚙",color:void 0}];e.s(["PrismDock",0,function(){let e=(0,s.usePathname)(),{tq:l}=c(),{monorepo:n,activeWorkspace:a,setActiveWorkspace:o}=u(l),{isPro:d}=p(l);return(0,t.jsxs)("div",{className:"fixed top-3 left-1/2 -translate-x-1/2 z-50 flex items-center gap-2 px-4 py-2 rounded-full",style:{background:"linear-gradient(to bottom, rgba(15,23,42,0.4), rgba(2,6,23,0.5))",backdropFilter:"blur(24px) saturate(1.5)",border:"1px solid rgba(51,65,85,0.3)",boxShadow:"0 1px 2px rgba(15,23,42,.06),0 4px 12px rgba(15,23,42,.12),0 16px 40px rgba(15,23,42,.18),inset 0 1px 0 rgba(255,255,255,.08),inset 0 -1px 0 rgba(15,23,42,.4)"},children:[(0,t.jsxs)(r.default,{href:"/",className:"flex items-center gap-1.5 group",children:[(0,t.jsx)("span",{className:"text-sky-400 text-lg select-none",children:"✦"}),(0,t.jsxs)("span",{className:"text-slate-200 text-sm font-semibold tracking-tight group-hover:text-white transition-colors",children:["prism",(0,t.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]})]}),f.map(({href:s,label:l,color:n})=>{let a=e.startsWith(s);return(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"w-px h-4",style:{background:"rgba(51,65,85,0.6)"}}),(0,t.jsx)(r.default,{href:s,className:"text-sm font-medium transition-colors px-1",style:{color:a?n??"rgb(226,232,240)":"rgba(148,163,184,0.8)"},children:l})]},s)}),n&&"single"!==n.type&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"w-px h-4",style:{background:"rgba(51,65,85,0.6)"}}),(0,t.jsx)(i,{monorepo:n,activeWorkspace:a,onSelect:o,isPro:d})]})]})}],50667)},15805,e=>{"use strict";var t=e.i(43476),r=e.i(71645),s=e.i(22016),l=e.i(50667);let n={background:"var(--surface-panel)",border:"1px solid var(--border-default)",boxShadow:"0 1px 2px rgba(15,23,42,.05),0 4px 16px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.04)"},a={draft:"rgba(148,163,184,0.9)",approved:"rgb(52,211,153)",rejected:"rgb(248,113,113)"},o={low:"rgb(52,211,153)",medium:"rgb(251,191,36)",high:"rgb(248,113,113)"};function i({rec:e}){return(0,t.jsxs)(s.default,{href:`/blue/recommendations/${e.id}`,className:"w-full rounded-xl p-5 flex flex-col gap-2 transition-all hover:brightness-110 cursor-pointer",style:n,children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsx)("h3",{className:"text-sm font-semibold text-slate-200 leading-snug flex-1",children:e.title}),(0,t.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0",children:[(0,t.jsxs)("span",{className:"text-xs font-mono px-2 py-0.5 rounded-full",style:{background:o[e.risk_level]+"20",color:o[e.risk_level],border:`1px solid ${o[e.risk_level]}40`},children:[e.risk_level," risk"]}),(0,t.jsx)("span",{className:"text-xs font-mono px-2 py-0.5 rounded-full",style:{background:a[e.status]+"18",color:a[e.status],border:`1px solid ${a[e.status]}30`},children:e.status})]})]}),(0,t.jsx)("p",{className:"text-xs text-slate-400 leading-relaxed line-clamp-2",children:e.summary}),e.suggested_files.length>0&&(0,t.jsxs)("div",{className:"flex flex-wrap gap-1 mt-1",children:[e.suggested_files.slice(0,3).map(e=>(0,t.jsx)("span",{className:"text-xs font-mono text-slate-500 bg-slate-800/60 px-2 py-0.5 rounded",children:e.split("/").pop()},e)),e.suggested_files.length>3&&(0,t.jsxs)("span",{className:"text-xs text-slate-600",children:["+",e.suggested_files.length-3," more"]})]}),(0,t.jsxs)("p",{className:"text-xs text-slate-600 mt-1",children:["llm-generated"===e.source?"✦ AI-generated":"User"," · ",new Date(e.created_at).toLocaleDateString()]})]})}e.s(["default",0,function(){let[e,a]=(0,r.useState)([]),[o,c]=(0,r.useState)(!0),[u,d]=(0,r.useState)(!1),[p,f]=(0,r.useState)(null);async function x(){try{let e=await fetch("/api/blue/recommendations"),t=await e.json();a(t.recommendations??[])}catch{}finally{c(!1)}}async function h(){d(!0),f(null);try{let e=await fetch("/api/blue/recommendations",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({generate:!0})}),t=await e.json();if(!e.ok)throw Error(t.error??"Generation failed");await x()}catch(e){f(e instanceof Error?e.message:String(e))}finally{d(!1)}}(0,r.useEffect)(()=>{x()},[]);let m={approved:e.filter(e=>"approved"===e.status),draft:e.filter(e=>"draft"===e.status),rejected:e.filter(e=>"rejected"===e.status)};return(0,t.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"var(--bg-app)"},children:[(0,t.jsx)(l.PrismDock,{}),(0,t.jsxs)("main",{className:"flex-1 flex flex-col items-center px-6 pt-32 pb-16 gap-6",style:{maxWidth:720,margin:"0 auto",width:"100%"},children:[(0,t.jsxs)("div",{className:"w-full flex items-center justify-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(s.default,{href:"/blue",className:"text-slate-500 hover:text-slate-300 text-sm transition-colors",children:"← BLUE"}),(0,t.jsx)("span",{className:"text-slate-700",children:"/"}),(0,t.jsx)("h1",{className:"text-xl font-semibold text-slate-100 tracking-tight",children:(0,t.jsx)("span",{className:"font-mono text-blue-400",children:"Recommendations"})})]}),(0,t.jsxs)("p",{className:"text-xs text-slate-500 mt-0.5",children:[e.length," total"]})]}),(0,t.jsx)("button",{onClick:h,disabled:u,className:"px-4 py-2 rounded-lg text-sm font-semibold transition-all disabled:opacity-50 flex items-center gap-2",style:{background:"rgb(59,130,246)",color:"#fff"},children:u?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"animate-spin inline-block w-3 h-3 border border-white border-t-transparent rounded-full"}),"Generating…"]}):"✦ Generate with AI"})]}),p&&(0,t.jsx)("div",{className:"w-full rounded-lg px-4 py-3 text-sm text-red-400 font-mono",style:{background:"rgba(239,68,68,0.08)",border:"1px solid rgba(239,68,68,0.2)"},children:p}),o&&(0,t.jsx)("div",{className:"w-full text-center py-16 text-slate-500 text-sm",children:"Loading…"}),!o&&0===e.length&&(0,t.jsxs)("div",{className:"w-full rounded-xl p-8 text-center flex flex-col items-center gap-3",style:n,children:[(0,t.jsx)("span",{className:"text-4xl",children:"💡"}),(0,t.jsx)("p",{className:"text-slate-300 font-medium",children:"No recommendations yet"}),(0,t.jsx)("p",{className:"text-slate-500 text-sm max-w-sm",children:'Run a BLUE scan first, then click "Generate with AI" to get architecture recommendations.'})]}),!o&&e.length>0&&(0,t.jsxs)(t.Fragment,{children:[m.approved.length>0&&(0,t.jsxs)("div",{className:"w-full flex flex-col gap-3",children:[(0,t.jsxs)("h2",{className:"text-xs font-semibold text-emerald-400 uppercase tracking-widest",children:["Approved (",m.approved.length,")"]}),m.approved.map(e=>(0,t.jsx)(i,{rec:e},e.id))]}),m.draft.length>0&&(0,t.jsxs)("div",{className:"w-full flex flex-col gap-3",children:[(0,t.jsxs)("h2",{className:"text-xs font-semibold text-slate-400 uppercase tracking-widest",children:["Draft (",m.draft.length,")"]}),m.draft.map(e=>(0,t.jsx)(i,{rec:e},e.id))]}),m.rejected.length>0&&(0,t.jsxs)("div",{className:"w-full flex flex-col gap-3",children:[(0,t.jsxs)("h2",{className:"text-xs font-semibold text-red-400 uppercase tracking-widest",children:["Rejected (",m.rejected.length,")"]}),m.rejected.map(e=>(0,t.jsx)(i,{rec:e},e.id))]})]})]}),(0,t.jsxs)("footer",{className:"text-center py-4 text-xs text-slate-600",children:["prism",(0,t.jsx)("span",{className:"font-mono",children:"0x2A"})," v","0.7.1"," · BLUE / Recommendations"]})]})}])}]);
|