prism0x2a 0.11.3 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/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/required-server-files.js +1 -1
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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/capabilities/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/amber/coverage/[scanId]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/amber/coverage/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/amber/files/route.js.nft.json +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/explorer/outdated/route.js +1 -1
- package/.next/standalone/.next/server/app/api/blue/explorer/outdated/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/blue/explorer/route.js +2 -2
- package/.next/standalone/.next/server/app/api/blue/explorer/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/config/route.js +1 -1
- package/.next/standalone/.next/server/app/api/config/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/license/activate/route.js +1 -1
- package/.next/standalone/.next/server/app/api/license/activate/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/license/deactivate/route.js +1 -1
- package/.next/standalone/.next/server/app/api/license/deactivate/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/dashboard/page/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/blue/dashboard/page/build-manifest.json +16 -0
- package/.next/standalone/.next/server/app/blue/dashboard/page/next-font-manifest.json +10 -0
- package/.next/standalone/.next/server/app/blue/dashboard/page/react-loadable-manifest.json +1 -0
- package/.next/standalone/.next/server/app/blue/dashboard/page/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/blue/dashboard/page.js +16 -0
- package/.next/standalone/.next/server/app/blue/dashboard/page.js.map +5 -0
- package/.next/standalone/.next/server/app/blue/dashboard/page.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/blue/dashboard/page_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/blue/explorer/ask/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/ask/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/ask.html +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/ask.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/ask.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/ask.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/ask.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/ask.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/ask.segments/blue/explorer/ask/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/ask.segments/blue/explorer/ask.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/ask.segments/blue/explorer.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/ask.segments/blue.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/explain/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/explain/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/explain.html +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/explain.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/explain.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/explain.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/explain.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/explain.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/explain.segments/blue/explorer/explain/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/explain.segments/blue/explorer/explain.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/explain.segments/blue/explorer.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/explain.segments/blue.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/file/[path]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/flow/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/flow/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/flow.html +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/flow.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/flow.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/flow.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/flow.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/flow.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/flow.segments/blue/explorer/flow/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/flow.segments/blue/explorer/flow.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/flow.segments/blue/explorer.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/flow.segments/blue.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/graph/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/graph/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/graph.html +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/graph.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/graph.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/graph.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/graph.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/graph.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/graph.segments/blue/explorer/graph/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/graph.segments/blue/explorer/graph.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/graph.segments/blue/explorer.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/graph.segments/blue.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/refactor/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/refactor/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/refactor.html +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/refactor.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/refactor.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/refactor.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/refactor.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/refactor.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/refactor.segments/blue/explorer/refactor/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/refactor.segments/blue/explorer/refactor.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/refactor.segments/blue/explorer.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/refactor.segments/blue.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/wire/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/wire/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/wire.html +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/wire.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/wire.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/wire.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/wire.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/wire.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/wire.segments/blue/explorer/wire/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/wire.segments/blue/explorer/wire.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/wire.segments/blue/explorer.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/wire.segments/blue.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/zones/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/zones/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/zones.html +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/zones.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/zones.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer/zones.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/zones.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/zones.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/zones.segments/blue/explorer/zones/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/zones.segments/blue/explorer/zones.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer/zones.segments/blue/explorer.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer/zones.segments/blue.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer.html +2 -2
- package/.next/standalone/.next/server/app/blue/explorer.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer.segments/_full.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/blue/explorer.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/blue/explorer.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer.segments/blue/explorer/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer.segments/blue/explorer.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/blue/explorer.segments/blue.segment.rsc +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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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/opengraph-image/route/middleware-manifest.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/pricing/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/pricing.html +2 -2
- package/.next/standalone/.next/server/app/pricing.rsc +2 -2
- package/.next/standalone/.next/server/app/pricing.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/pricing.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/pricing.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/pricing.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/pricing.segments/pricing/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/pricing.segments/pricing.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/settings/page.js +1 -1
- package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/sitemap.xml.body +2 -2
- package/.next/standalone/.next/server/app-paths-manifest.json +1 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0l5er61._.js → [root-of-the-server]__0d~9v.g._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0lfd1n5._.js → [root-of-the-server]__0iya3md._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zz4pqi._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0q97-bq._.js → [root-of-the-server]__11rli_7._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__133de91._.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_02.nmks.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/0_lp_modules_next_dist_server_route-modules_app-page_vendored_ssr_react-dom_0j2o5l5.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-v0zkq._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__02fj~fq._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__07hbx_~._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0_e85m1._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0dfvt6t._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0f_01kv._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0hu0394._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0je_29r._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0kj~9t5._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0qj9bd9._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0rkr0vj._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0s.m1v5._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ufwt1o._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0v~k49l._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0wbl.9m._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0zc2vvu._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__104zs41._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11g2zs0._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11nem7j._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12el_~a._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_01z7a3z._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_06ehp-1._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0mop~3p._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0svurmy._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_10229r-._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_10yjd82._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_12bwj-4._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_blue_dashboard_page_actions_0eh7qft.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/app_blue_explorer_page_tsx_0xl_925._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/app_blue_explorer_wire_page_tsx_0d_vm6m._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/app_blue_explorer_zones_page_tsx_0bml286._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/components_0fj4wag._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/components_SettingsClient_tsx_0-gd9ob._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0b6~up7.js +4 -0
- package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
- package/.next/standalone/.next/server/middleware-manifest.json +1 -1
- 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 +2 -2
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/{static/chunks/06~81j91_htvp.js → standalone/.next/static/chunks/0.3bg4xkrjvo0.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0f59_jvh6fd4l.js → 0.j_bxggmji1k.js} +1 -1
- package/.next/{static/chunks/0ta.1a8te5kgz.js → standalone/.next/static/chunks/00cxha..pn8~6.js} +1 -1
- package/.next/{static/chunks/0dfua7i7rl295.js → standalone/.next/static/chunks/00dnkxoco_vlr.js} +1 -1
- package/.next/standalone/.next/static/chunks/033oufisr-tx..css +2 -0
- package/.next/standalone/.next/static/chunks/{16p436qs7o0rb.js → 06nj.hjzuqggj.js} +1 -1
- package/.next/standalone/.next/static/chunks/07-dx53lginm0.js +1 -0
- package/.next/{static/chunks/02p06f~i1bknz.js → standalone/.next/static/chunks/0_vcora9w67ub.js} +1 -1
- package/.next/standalone/.next/static/{static/chunks/0eo8ad~0y-h.f.js → chunks/0d.ufos622fi7.js} +1 -1
- package/.next/{static/chunks/145i6072lhi1v.js → standalone/.next/static/chunks/0ea_0cptipeu2.js} +1 -1
- package/.next/standalone/.next/static/chunks/0fm4dzf7b63w..js +1 -0
- package/.next/standalone/.next/static/chunks/{0~0s-op0iuxvy.js → 0h_8jfb.njzxi.js} +1 -1
- package/.next/{static/chunks/0gen29d04~p.7.js → standalone/.next/static/chunks/0j0z7r54d7m_e.js} +1 -1
- package/.next/{static/chunks/12j_ykroo3tih.js → standalone/.next/static/chunks/0j~k3-8clubiz.js} +1 -1
- package/.next/standalone/.next/static/chunks/0kldoaou0205d.js +1 -0
- package/.next/standalone/.next/static/chunks/{0-h3yz2l5bway.js → 0ljl5dz351n5d.js} +1 -1
- package/.next/standalone/.next/static/{static/chunks/07thanmp95eil.js → chunks/0n3_kkvqwqwm6.js} +1 -1
- package/.next/standalone/.next/static/chunks/0nn2kn-xz.a2e.js +1 -0
- package/.next/standalone/.next/static/chunks/0nymymmlvpr56.js +1 -0
- package/.next/standalone/.next/static/{static/chunks/04904c3_3watc.js → chunks/0uvhey9zkzy86.js} +1 -1
- package/.next/standalone/.next/static/{static/chunks/0pc74~c7s1qjt.js → chunks/0vzny0m3asx38.js} +1 -1
- package/.next/standalone/.next/static/{static/chunks/0iqf1ofr-ylk6.js → chunks/0w2i690bzmxw2.js} +1 -1
- package/.next/standalone/.next/static/chunks/0x-h0f6ko35nj.js +1 -0
- package/.next/standalone/.next/static/{static/chunks/0j0tiqo1_22k3.js → chunks/0y_rdkmrqw03e.js} +1 -1
- package/.next/standalone/.next/static/chunks/{113l1vi8ew6kx.js → 0zjr3ecd2fm2e.js} +1 -1
- package/.next/standalone/.next/static/chunks/0~3txj~b.biqj.js +1 -0
- package/.next/standalone/.next/static/{static/chunks/0kneimmac.hcw.js → chunks/128lh2io12_mg.js} +1 -1
- package/.next/{static/chunks/14dh8yt5tk871.js → standalone/.next/static/chunks/171m~3gqt1j1f.js} +1 -1
- package/.next/standalone/.next/static/chunks/17_sp-apw4ih7.js +1 -0
- package/.next/standalone/.next/static/chunks/17z8o_14u~.bb.js +1 -0
- package/.next/standalone/.next/static/static/chunks/{06~81j91_htvp.js → 0.3bg4xkrjvo0.js} +1 -1
- package/.next/{static/chunks/0f59_jvh6fd4l.js → standalone/.next/static/static/chunks/0.j_bxggmji1k.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/{0ta.1a8te5kgz.js → 00cxha..pn8~6.js} +1 -1
- package/.next/standalone/.next/static/{chunks/0dfua7i7rl295.js → static/chunks/00dnkxoco_vlr.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/033oufisr-tx..css +2 -0
- package/.next/standalone/.next/static/static/chunks/{16p436qs7o0rb.js → 06nj.hjzuqggj.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/07-dx53lginm0.js +1 -0
- package/.next/standalone/.next/static/{chunks/02p06f~i1bknz.js → static/chunks/0_vcora9w67ub.js} +1 -1
- package/.next/standalone/.next/static/{chunks/0eo8ad~0y-h.f.js → static/chunks/0d.ufos622fi7.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/{145i6072lhi1v.js → 0ea_0cptipeu2.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/0fm4dzf7b63w..js +1 -0
- package/.next/{static/chunks/0~0s-op0iuxvy.js → standalone/.next/static/static/chunks/0h_8jfb.njzxi.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/{0gen29d04~p.7.js → 0j0z7r54d7m_e.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/{12j_ykroo3tih.js → 0j~k3-8clubiz.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/0kldoaou0205d.js +1 -0
- package/.next/standalone/.next/static/static/chunks/{0-h3yz2l5bway.js → 0ljl5dz351n5d.js} +1 -1
- package/.next/standalone/.next/static/{chunks/07thanmp95eil.js → static/chunks/0n3_kkvqwqwm6.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/0nn2kn-xz.a2e.js +1 -0
- package/.next/standalone/.next/static/static/chunks/0nymymmlvpr56.js +1 -0
- package/.next/{static/chunks/04904c3_3watc.js → standalone/.next/static/static/chunks/0uvhey9zkzy86.js} +1 -1
- package/.next/{static/chunks/0pc74~c7s1qjt.js → standalone/.next/static/static/chunks/0vzny0m3asx38.js} +1 -1
- package/.next/standalone/.next/static/{chunks/0iqf1ofr-ylk6.js → static/chunks/0w2i690bzmxw2.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/0x-h0f6ko35nj.js +1 -0
- package/.next/standalone/.next/static/{chunks/0j0tiqo1_22k3.js → static/chunks/0y_rdkmrqw03e.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/{113l1vi8ew6kx.js → 0zjr3ecd2fm2e.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/0~3txj~b.biqj.js +1 -0
- package/.next/{static/chunks/0kneimmac.hcw.js → standalone/.next/static/static/chunks/128lh2io12_mg.js} +1 -1
- package/.next/standalone/.next/static/{chunks/14dh8yt5tk871.js → static/chunks/171m~3gqt1j1f.js} +1 -1
- package/.next/standalone/.next/static/static/chunks/17_sp-apw4ih7.js +1 -0
- package/.next/standalone/.next/static/static/chunks/17z8o_14u~.bb.js +1 -0
- package/.next/standalone/CHANGELOG.md +30 -0
- package/.next/standalone/app/api/blue/explorer/outdated/route.ts +5 -1
- package/.next/standalone/app/api/blue/explorer/route.ts +26 -2
- package/.next/standalone/app/blue/dashboard/page.tsx +7 -0
- package/.next/standalone/app/blue/explorer/flow/page.tsx +85 -5
- package/.next/standalone/app/blue/explorer/graph/page.tsx +83 -24
- package/.next/standalone/app/blue/explorer/page.tsx +134 -100
- package/.next/standalone/app/blue/explorer/wire/page.tsx +79 -5
- package/.next/standalone/app/blue/explorer/zones/page.tsx +79 -5
- package/.next/standalone/bin/prism.js +91 -0
- package/.next/standalone/components/blue-explorer/DashboardClient.tsx +360 -0
- package/.next/standalone/components/blue-explorer/DemoBanner.tsx +43 -0
- package/.next/standalone/components/blue-explorer/ExplorerGate.tsx +5 -16
- package/.next/standalone/components/blue-explorer/ExplorerNav.tsx +12 -1
- package/.next/standalone/components/blue-explorer/UpgradeBlur.tsx +85 -0
- package/.next/standalone/components/blue-explorer/ViewModeToggle.tsx +32 -0
- package/.next/standalone/lib/prism/blue/explorer/useExplorerBlueprint.ts +10 -6
- package/.next/standalone/lib/prism/blue/explorer/useViewMode.ts +25 -0
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/public/demo/blueprint.json +2902 -0
- package/.next/standalone/public/public/demo/blueprint.json +2902 -0
- package/.next/standalone/scripts/generate-demo-blueprint.js +450 -0
- package/.next/standalone/server.js +1 -1
- package/.next/standalone/tsconfig.tsbuildinfo +1 -1
- package/.next/{standalone/.next/static/chunks/06~81j91_htvp.js → static/chunks/0.3bg4xkrjvo0.js} +1 -1
- package/.next/{standalone/.next/static/static/chunks/0f59_jvh6fd4l.js → static/chunks/0.j_bxggmji1k.js} +1 -1
- package/.next/{standalone/.next/static/chunks/0ta.1a8te5kgz.js → static/chunks/00cxha..pn8~6.js} +1 -1
- package/.next/{standalone/.next/static/static/chunks/0dfua7i7rl295.js → static/chunks/00dnkxoco_vlr.js} +1 -1
- package/.next/static/chunks/033oufisr-tx..css +2 -0
- package/.next/static/chunks/{16p436qs7o0rb.js → 06nj.hjzuqggj.js} +1 -1
- package/.next/static/chunks/07-dx53lginm0.js +1 -0
- package/.next/{standalone/.next/static/static/chunks/02p06f~i1bknz.js → static/chunks/0_vcora9w67ub.js} +1 -1
- package/.next/static/chunks/{0eo8ad~0y-h.f.js → 0d.ufos622fi7.js} +1 -1
- package/.next/{standalone/.next/static/chunks/145i6072lhi1v.js → static/chunks/0ea_0cptipeu2.js} +1 -1
- package/.next/static/chunks/0fm4dzf7b63w..js +1 -0
- package/.next/{standalone/.next/static/static/chunks/0~0s-op0iuxvy.js → static/chunks/0h_8jfb.njzxi.js} +1 -1
- package/.next/{standalone/.next/static/chunks/0gen29d04~p.7.js → static/chunks/0j0z7r54d7m_e.js} +1 -1
- package/.next/{standalone/.next/static/chunks/12j_ykroo3tih.js → static/chunks/0j~k3-8clubiz.js} +1 -1
- package/.next/static/chunks/0kldoaou0205d.js +1 -0
- package/.next/static/chunks/{0-h3yz2l5bway.js → 0ljl5dz351n5d.js} +1 -1
- package/.next/static/chunks/{07thanmp95eil.js → 0n3_kkvqwqwm6.js} +1 -1
- package/.next/static/chunks/0nn2kn-xz.a2e.js +1 -0
- package/.next/static/chunks/0nymymmlvpr56.js +1 -0
- package/.next/{standalone/.next/static/chunks/04904c3_3watc.js → static/chunks/0uvhey9zkzy86.js} +1 -1
- package/.next/{standalone/.next/static/chunks/0pc74~c7s1qjt.js → static/chunks/0vzny0m3asx38.js} +1 -1
- package/.next/static/chunks/{0iqf1ofr-ylk6.js → 0w2i690bzmxw2.js} +1 -1
- package/.next/static/chunks/0x-h0f6ko35nj.js +1 -0
- package/.next/static/chunks/{0j0tiqo1_22k3.js → 0y_rdkmrqw03e.js} +1 -1
- package/.next/static/chunks/{113l1vi8ew6kx.js → 0zjr3ecd2fm2e.js} +1 -1
- package/.next/static/chunks/0~3txj~b.biqj.js +1 -0
- package/.next/{standalone/.next/static/chunks/0kneimmac.hcw.js → static/chunks/128lh2io12_mg.js} +1 -1
- package/.next/{standalone/.next/static/static/chunks/14dh8yt5tk871.js → static/chunks/171m~3gqt1j1f.js} +1 -1
- package/.next/static/chunks/17_sp-apw4ih7.js +1 -0
- package/.next/static/chunks/17z8o_14u~.bb.js +1 -0
- package/CHANGELOG.md +30 -0
- package/bin/prism.js +91 -0
- package/package.json +1 -1
- package/public/demo/blueprint.json +2902 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dyk0qn._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hob61c._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0oo54zk._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0.ka4xf._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_07.lcck._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0coo8pw._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0h6lz_4._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0ip-ny~._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0uh4anr._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0zp-~jg._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_12xcgz-._.js +0 -3
- package/.next/standalone/.next/static/chunks/088~a4503djtf.js +0 -1
- package/.next/standalone/.next/static/chunks/08cugc99x6as4.js +0 -1
- package/.next/standalone/.next/static/chunks/0_80tkutlvwij.js +0 -1
- package/.next/standalone/.next/static/chunks/0iugobs2v97z1.js +0 -1
- package/.next/standalone/.next/static/chunks/0jkwpkx9wn6uh.js +0 -1
- package/.next/standalone/.next/static/chunks/0p.nolrk8ntle.css +0 -2
- package/.next/standalone/.next/static/chunks/0usb21qmle4jd.js +0 -1
- package/.next/standalone/.next/static/chunks/0z67pbgnjs45..js +0 -1
- package/.next/standalone/.next/static/chunks/11rjbrpl3fah0.js +0 -1
- package/.next/standalone/.next/static/static/chunks/088~a4503djtf.js +0 -1
- package/.next/standalone/.next/static/static/chunks/08cugc99x6as4.js +0 -1
- package/.next/standalone/.next/static/static/chunks/0_80tkutlvwij.js +0 -1
- package/.next/standalone/.next/static/static/chunks/0iugobs2v97z1.js +0 -1
- package/.next/standalone/.next/static/static/chunks/0jkwpkx9wn6uh.js +0 -1
- package/.next/standalone/.next/static/static/chunks/0p.nolrk8ntle.css +0 -2
- package/.next/standalone/.next/static/static/chunks/0usb21qmle4jd.js +0 -1
- package/.next/standalone/.next/static/static/chunks/0z67pbgnjs45..js +0 -1
- package/.next/standalone/.next/static/static/chunks/11rjbrpl3fah0.js +0 -1
- package/.next/static/chunks/088~a4503djtf.js +0 -1
- package/.next/static/chunks/08cugc99x6as4.js +0 -1
- package/.next/static/chunks/0_80tkutlvwij.js +0 -1
- package/.next/static/chunks/0iugobs2v97z1.js +0 -1
- package/.next/static/chunks/0jkwpkx9wn6uh.js +0 -1
- package/.next/static/chunks/0p.nolrk8ntle.css +0 -2
- package/.next/static/chunks/0usb21qmle4jd.js +0 -1
- package/.next/static/chunks/0z67pbgnjs45..js +0 -1
- package/.next/static/chunks/11rjbrpl3fah0.js +0 -1
- /package/.next/standalone/.next/static/{4B0PSb_4-FAhQuHa-jI2u → pAZQ9WAfgX65XBLSCQ2yC}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{4B0PSb_4-FAhQuHa-jI2u → pAZQ9WAfgX65XBLSCQ2yC}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{4B0PSb_4-FAhQuHa-jI2u → pAZQ9WAfgX65XBLSCQ2yC}/_ssgManifest.js +0 -0
- /package/.next/standalone/.next/static/static/{4B0PSb_4-FAhQuHa-jI2u → pAZQ9WAfgX65XBLSCQ2yC}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/static/{4B0PSb_4-FAhQuHa-jI2u → pAZQ9WAfgX65XBLSCQ2yC}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/static/{4B0PSb_4-FAhQuHa-jI2u → pAZQ9WAfgX65XBLSCQ2yC}/_ssgManifest.js +0 -0
- /package/.next/static/{4B0PSb_4-FAhQuHa-jI2u → pAZQ9WAfgX65XBLSCQ2yC}/_buildManifest.js +0 -0
- /package/.next/static/{4B0PSb_4-FAhQuHa-jI2u → pAZQ9WAfgX65XBLSCQ2yC}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{4B0PSb_4-FAhQuHa-jI2u → pAZQ9WAfgX65XBLSCQ2yC}/_ssgManifest.js +0 -0
package/.next/standalone/.next/static/{chunks/07thanmp95eil.js → static/chunks/0n3_kkvqwqwm6.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,2974,e=>{"use strict";var s=e.i(47167),t=e.i(43476),r=e.i(71645),a=e.i(50667);e.s(["DashboardHome",0,function(){let[e,l]=(0,r.useState)(s.default.env.NEXT_PUBLIC_PRISM_TARGET??s.default.env.PRISM_TARGET??""),[o,i]=(0,r.useState)(null),[n,c]=(0,r.useState)(!1),[d,x]=(0,r.useState)(null);async function p(){if(e.trim()){c(!0),x(null),i(null);try{let s=await fetch("/api/scan",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({targetPath:e.trim()})}),t=await s.json();if(!s.ok)throw Error(t.error??"Scan failed");i(JSON.stringify(t,null,2))}catch(e){x(e instanceof Error?e.message:String(e))}finally{c(!1)}}}return(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 px-6 gap-8",style:{paddingTop:"var(--dock-clearance-top)"},children:[(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsxs)("h1",{className:"text-2xl font-semibold text-slate-100 tracking-tight",children:["prism",(0,t.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]}),(0,t.jsxs)("p",{className:"mt-1 text-sm text-slate-400",children:["The answer to your codebase. —"," ",(0,t.jsx)("span",{className:"text-sky-400 font-mono",children:"prismlens"})]})]}),(0,t.jsxs)("div",{className:"w-full max-w-lg rounded-xl p-6 flex flex-col gap-4",style:{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)"},children:[(0,t.jsx)("h2",{className:"text-sm font-semibold text-slate-300 uppercase tracking-widest",children:"Scan a directory"}),(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsx)("label",{className:"text-xs text-slate-400",htmlFor:"targetPath",children:"Absolute path"}),(0,t.jsx)("input",{id:"targetPath",type:"text",value:e,onChange:e=>l(e.target.value),placeholder:"/Users/you/your-project",className:"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",style:{background:"rgba(2,6,23,0.6)",border:"1px solid var(--border-default)"},onKeyDown:e=>"Enter"===e.key&&p()})]}),(0,t.jsx)("button",{onClick:p,disabled:n||!e.trim(),className:"w-full py-2 rounded-lg text-sm font-semibold transition-all disabled:opacity-40 disabled:cursor-not-allowed",style:{background:"rgb(14,165,233)",color:"#020617"},children:n?"Scanning…":"Run cycle detection"})]}),(o||d)&&(0,t.jsxs)("div",{className:"w-full max-w-lg rounded-xl p-6 flex flex-col gap-3",style:{background:"var(--surface-panel)",border:`1px solid ${d?"rgba(239,68,68,0.3)":"var(--border-default)"}`},children:[(0,t.jsx)("h2",{className:"text-sm font-semibold text-slate-300 uppercase tracking-widest",children:"Results"}),d&&(0,t.jsx)("p",{className:"text-sm text-red-400 font-mono",children:d}),o&&(0,t.jsx)("pre",{className:"text-xs font-mono text-slate-300 overflow-auto max-h-96 leading-relaxed",style:{whiteSpace:"pre-wrap",wordBreak:"break-all"},children:o})]})]}),(0,t.jsxs)("footer",{className:"text-center py-4 text-xs text-slate-600",style:{marginBottom:"var(--infobar-clearance-bottom)"},children:["prism",(0,t.jsx)("span",{className:"font-mono",children:"0x2A"})," v","0.11.3"]})]})}])},22612,e=>{"use strict";e.i(47167);var s=e.i(43476),t=e.i(71645),r=e.i(22016),a=e.i(18566);function l(){let e=(0,a.usePathname)();return(0,s.jsxs)("header",{className:"fixed top-0 left-0 right-0 z-50 flex items-center justify-between px-6 h-14",style:{background:"rgba(2,6,23,0.75)",backdropFilter:"blur(20px) saturate(1.4)",borderBottom:"1px solid rgba(51,65,85,0.25)"},children:[(0,s.jsxs)(r.default,{href:"/",className:"flex items-center gap-1.5 group flex-shrink-0",children:[(0,s.jsx)("span",{className:"text-sky-400 text-base select-none",children:"✦"}),(0,s.jsxs)("span",{className:"text-slate-200 text-sm font-semibold tracking-tight group-hover:text-white transition-colors",children:["prism",(0,s.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]})]}),(0,s.jsx)("nav",{className:"hidden sm:flex items-center gap-6",children:[{href:"/#features",label:"Features"},{href:"/pricing",label:"Pricing"},{href:"https://github.com/dadenjo/prism0x2A",label:"Docs",external:!0}].map(({href:t,label:a,external:l})=>(0,s.jsx)(r.default,{href:t,target:l?"_blank":void 0,rel:l?"noopener noreferrer":void 0,className:"text-sm transition-colors",style:{color:e===t?"rgb(226,232,240)":"rgba(148,163,184,0.7)"},children:a},t))}),(0,s.jsx)(r.default,{href:"/#quickstart",className:"text-sm font-semibold px-3 py-1.5 rounded-lg transition-all hidden sm:block",style:{background:"rgba(14,165,233,0.15)",color:"rgb(56,189,248)",border:"1px solid rgba(14,165,233,0.3)"},children:"Get Started →"})]})}function o(){return(0,s.jsxs)("footer",{className:"border-t mt-24",style:{borderColor:"rgba(51,65,85,0.3)"},children:[(0,s.jsxs)("div",{className:"max-w-5xl mx-auto px-6 py-16 grid grid-cols-2 sm:grid-cols-4 gap-10",children:[(0,s.jsxs)("div",{className:"col-span-2 sm:col-span-1 flex flex-col gap-3",children:[(0,s.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,s.jsx)("span",{className:"text-sky-400 text-base select-none",children:"✦"}),(0,s.jsxs)("span",{className:"text-slate-200 text-sm font-semibold tracking-tight",children:["prism",(0,s.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]})]}),(0,s.jsxs)("p",{className:"text-xs text-slate-600 leading-relaxed",children:["Local-first code intelligence.",(0,s.jsx)("br",{}),"Engine: ",(0,s.jsx)("span",{className:"font-mono text-slate-500",children:"prismlens"}),"."]}),(0,s.jsx)("p",{className:"text-xs text-slate-700 font-mono",children:"0x2A = 42"})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsx)("h3",{className:"text-xs font-semibold text-slate-500 uppercase tracking-widest",children:"Product"}),(0,s.jsxs)("nav",{className:"flex flex-col gap-2",children:[(0,s.jsx)(r.default,{href:"/pricing",className:"text-xs text-slate-600 hover:text-slate-400 transition-colors",children:"Pricing"}),(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/prism0x2A",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-slate-600 hover:text-slate-400 transition-colors",children:"Docs"}),(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/prism0x2A/blob/main/CHANGELOG.md",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-slate-600 hover:text-slate-400 transition-colors",children:"Changelog"})]})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsx)("h3",{className:"text-xs font-semibold text-slate-500 uppercase tracking-widest",children:"Resources"}),(0,s.jsxs)("nav",{className:"flex flex-col gap-2",children:[(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/prism0x2A",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-slate-600 hover:text-slate-400 transition-colors",children:"GitHub — prism0x2A"}),(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/forge0x2B",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-slate-600 hover:text-slate-400 transition-colors",children:"forge0x2B (coming soon)"}),(0,s.jsx)("span",{className:"text-xs text-slate-700",children:"Engine: prismlens"})]})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsx)("h3",{className:"text-xs font-semibold text-slate-500 uppercase tracking-widest",children:"Legal"}),(0,s.jsxs)("nav",{className:"flex flex-col gap-2",children:[(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/prism0x2A/blob/main/LICENSE",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-slate-600 hover:text-slate-400 transition-colors",children:"License"}),(0,s.jsx)("span",{className:"text-xs text-slate-700",children:"Terms (coming)"}),(0,s.jsx)("span",{className:"text-xs text-slate-700",children:"Privacy (coming)"})]})]})]}),(0,s.jsxs)("div",{className:"max-w-5xl mx-auto px-6 pb-8 flex flex-col sm:flex-row items-center justify-between gap-2 border-t",style:{borderColor:"rgba(51,65,85,0.2)"},children:[(0,s.jsx)("p",{className:"text-xs text-slate-700",children:"Made in Germany 🇩🇪 · © 2026 prism0x2A"}),(0,s.jsx)("p",{className:"text-xs text-slate-700 font-mono",children:"The answer is 42."})]})]})}function i(){return(0,s.jsxs)("svg",{viewBox:"0 0 620 400",className:"w-full max-w-xl","aria-hidden":"true",role:"img",children:[(0,s.jsxs)("defs",{children:[(0,s.jsxs)("linearGradient",{id:"prism-fill",x1:"0%",y1:"0%",x2:"100%",y2:"100%",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgba(148,163,184,0.18)"}),(0,s.jsx)("stop",{offset:"40%",stopColor:"rgba(226,232,240,0.07)"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgba(99,102,241,0.12)"})]}),(0,s.jsxs)("linearGradient",{id:"chaos-fade",x1:"0%",y1:"0%",x2:"100%",y2:"0%",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgba(2,6,23,0)"}),(0,s.jsx)("stop",{offset:"70%",stopColor:"rgba(2,6,23,0.55)"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgba(2,6,23,0.8)"})]}),(0,s.jsxs)("linearGradient",{id:"blue-ray",x1:"292",y1:"118",x2:"440",y2:"42",gradientUnits:"userSpaceOnUse",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgb(59,130,246)",stopOpacity:"0.9"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgb(59,130,246)",stopOpacity:"0.35"})]}),(0,s.jsxs)("linearGradient",{id:"indigo-ray",x1:"292",y1:"148",x2:"440",y2:"120",gradientUnits:"userSpaceOnUse",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgb(99,102,241)",stopOpacity:"0.85"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgb(99,102,241)",stopOpacity:"0.3"})]}),(0,s.jsxs)("linearGradient",{id:"amber-ray",x1:"292",y1:"200",x2:"440",y2:"200",gradientUnits:"userSpaceOnUse",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgb(245,158,11)",stopOpacity:"0.9"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgb(245,158,11)",stopOpacity:"0.35"})]}),(0,s.jsxs)("linearGradient",{id:"green-ray",x1:"292",y1:"248",x2:"440",y2:"278",gradientUnits:"userSpaceOnUse",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgb(16,185,129)",stopOpacity:"0.9"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgb(16,185,129)",stopOpacity:"0.35"})]}),(0,s.jsxs)("linearGradient",{id:"violet-ray",x1:"292",y1:"278",x2:"440",y2:"356",gradientUnits:"userSpaceOnUse",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgb(167,139,250)",stopOpacity:"0.85"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgb(167,139,250)",stopOpacity:"0.3"})]}),(0,s.jsxs)("filter",{id:"soft-glow",x:"-50%",y:"-50%",width:"200%",height:"200%",children:[(0,s.jsx)("feGaussianBlur",{stdDeviation:"4",result:"blur"}),(0,s.jsxs)("feMerge",{children:[(0,s.jsx)("feMergeNode",{in:"blur"}),(0,s.jsx)("feMergeNode",{in:"SourceGraphic"})]})]})]}),[{t:"import { analyze } from './engine'",y:32},{t:"TypeError: Cannot read property 'map'",y:60},{t:" at Object.<anonymous> src/lib:42",y:88},{t:"const deps = await scan(targetPath)",y:116},{t:"// TODO: fix circular ref → api/index",y:144},{t:"export default function Dashboard() {",y:172},{t:"Error: ENOENT no such file or dir",y:200},{t:" at /src/api/route.ts:17:9",y:228},{t:"import type { Config } from '@/lib'",y:256},{t:"✗ 3 import cycles detected",y:284},{t:" src/api → lib/db → src/api",y:312},{t:"✗ 14 uncovered branches",y:340},{t:" heat: 87.4 · complexity: 12",y:368}].map(({t:e,y:t},r)=>(0,s.jsx)("text",{x:"8",y:t,fontSize:"9",fontFamily:"monospace",fill:`rgba(148,163,184,${.42+r%4*.1})`,children:e},r)),(0,s.jsx)("rect",{x:"0",y:"0",width:"195",height:"400",fill:"url(#chaos-fade)"}),(0,s.jsx)("line",{x1:"0",y1:"200",x2:"192",y2:"200",stroke:"rgba(255,255,255,0.12)",strokeWidth:"1.5",strokeDasharray:"5 3"}),(0,s.jsx)("polygon",{points:"192,200 292,98 292,302",fill:"url(#prism-fill)",stroke:"none"}),(0,s.jsx)("line",{x1:"192",y1:"200",x2:"292",y2:"98",stroke:"rgba(226,232,240,0.45)",strokeWidth:"1.2"}),(0,s.jsx)("line",{x1:"192",y1:"200",x2:"292",y2:"302",stroke:"rgba(148,163,184,0.3)",strokeWidth:"1.2"}),(0,s.jsx)("line",{x1:"292",y1:"98",x2:"292",y2:"302",stroke:"rgba(226,232,240,0.5)",strokeWidth:"1.5"}),(0,s.jsx)("line",{x1:"226",y1:"190",x2:"292",y2:"148",stroke:"rgba(255,255,255,0.05)",strokeWidth:"0.7"}),(0,s.jsx)("line",{x1:"226",y1:"200",x2:"292",y2:"200",stroke:"rgba(255,255,255,0.05)",strokeWidth:"0.7"}),(0,s.jsx)("line",{x1:"226",y1:"210",x2:"292",y2:"252",stroke:"rgba(255,255,255,0.05)",strokeWidth:"0.7"}),(0,s.jsx)("text",{x:"242",y:"203",fontSize:"10",fontFamily:"monospace",fill:"rgba(148,163,184,0.38)",textAnchor:"middle",letterSpacing:"0.5",children:"0x2A"}),(0,s.jsx)("line",{x1:"292",y1:"118",x2:"440",y2:"42",stroke:"url(#blue-ray)",strokeWidth:"2",filter:"url(#soft-glow)"}),(0,s.jsx)("line",{x1:"292",y1:"148",x2:"440",y2:"120",stroke:"url(#indigo-ray)",strokeWidth:"1.8",filter:"url(#soft-glow)"}),(0,s.jsx)("line",{x1:"292",y1:"200",x2:"440",y2:"200",stroke:"url(#amber-ray)",strokeWidth:"2.5",filter:"url(#soft-glow)"}),(0,s.jsx)("line",{x1:"292",y1:"248",x2:"440",y2:"278",stroke:"url(#green-ray)",strokeWidth:"1.8",filter:"url(#soft-glow)"}),(0,s.jsx)("line",{x1:"292",y1:"278",x2:"440",y2:"356",stroke:"url(#violet-ray)",strokeWidth:"2",filter:"url(#soft-glow)"}),(0,s.jsx)("rect",{x:"440",y:"10",width:"166",height:"58",rx:"6",fill:"rgba(8,16,36,0.92)",stroke:"rgba(59,130,246,0.4)",strokeWidth:"1"}),(0,s.jsx)("rect",{x:"440",y:"10",width:"166",height:"2.5",rx:"1.5",fill:"rgba(59,130,246,0.65)"}),(0,s.jsx)("text",{x:"454",y:"32",fontSize:"9",fontFamily:"monospace",fill:"rgb(96,165,250)",fontWeight:"bold",letterSpacing:"1",children:"BLUE · List View"}),(0,s.jsx)("text",{x:"454",y:"48",fontSize:"7.5",fontFamily:"monospace",fill:"rgba(100,116,139,0.8)",children:"Sessions + Blueprint Explorer"}),(0,s.jsx)("text",{x:"454",y:"62",fontSize:"7",fontFamily:"sans-serif",fill:"rgba(71,85,105,0.7)",children:"heat · coverage · imports"}),(0,s.jsx)("rect",{x:"440",y:"96",width:"166",height:"54",rx:"6",fill:"rgba(8,16,36,0.92)",stroke:"rgba(99,102,241,0.4)",strokeWidth:"1"}),(0,s.jsx)("rect",{x:"440",y:"96",width:"166",height:"2.5",rx:"1.5",fill:"rgba(99,102,241,0.6)"}),(0,s.jsx)("text",{x:"454",y:"116",fontSize:"9",fontFamily:"monospace",fill:"rgb(129,140,248)",fontWeight:"bold",letterSpacing:"1",children:"Graph View"}),(0,s.jsx)("text",{x:"454",y:"131",fontSize:"7.5",fontFamily:"monospace",fill:"rgba(100,116,139,0.8)",children:"import graph · dagre layout"}),(0,s.jsx)("text",{x:"454",y:"144",fontSize:"7",fontFamily:"sans-serif",fill:"rgba(71,85,105,0.7)",children:"click node → inspector"}),(0,s.jsx)("rect",{x:"440",y:"174",width:"166",height:"54",rx:"6",fill:"rgba(8,16,36,0.92)",stroke:"rgba(245,158,11,0.4)",strokeWidth:"1"}),(0,s.jsx)("rect",{x:"440",y:"174",width:"166",height:"2.5",rx:"1.5",fill:"rgba(245,158,11,0.65)"}),(0,s.jsx)("text",{x:"454",y:"194",fontSize:"9",fontFamily:"monospace",fill:"rgb(251,191,36)",fontWeight:"bold",letterSpacing:"1",children:"AMBER · Zones View"}),(0,s.jsx)("text",{x:"454",y:"209",fontSize:"7.5",fontFamily:"monospace",fill:"rgba(100,116,139,0.8)",children:"Coverage · Registry · Files"}),(0,s.jsx)("text",{x:"454",y:"222",fontSize:"7",fontFamily:"sans-serif",fill:"rgba(71,85,105,0.7)",children:"grouped by directory zone"}),(0,s.jsx)("rect",{x:"440",y:"252",width:"166",height:"54",rx:"6",fill:"rgba(8,16,36,0.92)",stroke:"rgba(16,185,129,0.4)",strokeWidth:"1"}),(0,s.jsx)("rect",{x:"440",y:"252",width:"166",height:"2.5",rx:"1.5",fill:"rgba(16,185,129,0.65)"}),(0,s.jsx)("text",{x:"454",y:"272",fontSize:"9",fontFamily:"monospace",fill:"rgb(52,211,153)",fontWeight:"bold",letterSpacing:"1",children:"GREEN · Wire View"}),(0,s.jsx)("text",{x:"454",y:"287",fontSize:"7.5",fontFamily:"monospace",fill:"rgba(100,116,139,0.8)",children:"Insights · Cross-layer"}),(0,s.jsx)("text",{x:"454",y:"300",fontSize:"7",fontFamily:"sans-serif",fill:"rgba(71,85,105,0.7)",children:"Next.js layout hierarchy"}),(0,s.jsx)("rect",{x:"440",y:"330",width:"166",height:"54",rx:"6",fill:"rgba(8,16,36,0.92)",stroke:"rgba(167,139,250,0.4)",strokeWidth:"1"}),(0,s.jsx)("rect",{x:"440",y:"330",width:"166",height:"2.5",rx:"1.5",fill:"rgba(167,139,250,0.6)"}),(0,s.jsx)("text",{x:"454",y:"350",fontSize:"9",fontFamily:"monospace",fill:"rgb(196,181,253)",fontWeight:"bold",letterSpacing:"1",children:"Flow View"}),(0,s.jsx)("text",{x:"454",y:"365",fontSize:"7.5",fontFamily:"monospace",fill:"rgba(100,116,139,0.8)",children:"page-navigation graph"}),(0,s.jsx)("text",{x:"454",y:"378",fontSize:"7",fontFamily:"sans-serif",fill:"rgba(71,85,105,0.7)",children:"routes as nodes · Pro tier"})]})}function n({text:e}){let[r,a]=(0,t.useState)(!1);return(0,s.jsx)("button",{onClick:()=>{navigator.clipboard.writeText(e).catch(()=>{}),a(!0),setTimeout(()=>a(!1),2e3)},className:"flex-shrink-0 text-xs px-2.5 py-1 rounded transition-all font-mono",style:{background:r?"rgba(52,211,153,0.15)":"rgba(51,65,85,0.4)",color:r?"rgb(52,211,153)":"rgba(148,163,184,0.7)",border:`1px solid ${r?"rgba(52,211,153,0.3)":"rgba(51,65,85,0.4)"}`},children:r?"✓ copied":"copy"})}function c({lines:e,copyText:t}){return(0,s.jsxs)("div",{className:"rounded-xl overflow-hidden",style:{background:"rgba(2,6,23,0.8)",border:"1px solid rgba(51,65,85,0.5)",boxShadow:"0 4px 24px rgba(2,6,23,0.3), inset 0 1px 0 rgba(255,255,255,0.04)"},children:[(0,s.jsxs)("div",{className:"flex items-center justify-between px-4 py-2.5",style:{borderBottom:"1px solid rgba(51,65,85,0.3)"},children:[(0,s.jsxs)("div",{className:"flex gap-1.5",children:[(0,s.jsx)("div",{className:"w-2.5 h-2.5 rounded-full",style:{background:"rgba(239,68,68,0.4)"}}),(0,s.jsx)("div",{className:"w-2.5 h-2.5 rounded-full",style:{background:"rgba(245,158,11,0.4)"}}),(0,s.jsx)("div",{className:"w-2.5 h-2.5 rounded-full",style:{background:"rgba(52,211,153,0.4)"}})]}),t&&(0,s.jsx)(n,{text:t})]}),(0,s.jsx)("pre",{className:"px-4 py-3 text-xs font-mono leading-relaxed overflow-x-auto whitespace-pre-wrap break-all",children:e.map((e,t)=>(0,s.jsx)("div",{children:e.startsWith("#")?(0,s.jsx)("span",{style:{color:"rgba(71,85,105,0.7)"},children:e}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{style:{color:"rgba(52,211,153,0.6)"},children:"$ "}),(0,s.jsx)("span",{style:{color:"rgb(203,213,225)"},children:e})]})},t))})]})}function d({id:e,children:t,className:r=""}){return(0,s.jsx)("section",{id:e,className:`w-full max-w-5xl mx-auto px-6 ${r}`,children:t})}function x({children:e}){return(0,s.jsx)("p",{className:"text-xs font-semibold text-slate-500 uppercase tracking-widest mb-4",children:e})}function p({color:e,label:t,title:a,description:l,href:o}){return(0,s.jsxs)("div",{className:"relative flex flex-col gap-4 p-6 rounded-2xl",style:{background:"#0f172a",border:`1px solid rgba(${e},0.25)`,boxShadow:`0 0 40px rgba(${e},0.04), 0 4px 16px rgba(15,23,42,.1)`},children:[(0,s.jsx)("div",{className:"absolute top-0 left-8 right-8 h-px",style:{background:`linear-gradient(90deg, transparent, rgba(${e},0.5), transparent)`}}),(0,s.jsx)("div",{className:"text-xs font-bold tracking-widest font-mono",style:{color:`rgb(${e})`},children:t}),(0,s.jsx)("h3",{className:"text-base font-semibold text-slate-200",children:a}),(0,s.jsx)("p",{className:"text-sm text-slate-500 leading-relaxed",children:l}),(0,s.jsxs)(r.default,{href:o,className:"text-xs font-semibold transition-colors mt-auto",style:{color:`rgb(${e})`},children:["See ",t," in your code →"]})]})}function m({n:e,title:t,children:r}){return(0,s.jsxs)("div",{className:"flex flex-col gap-4 p-6 rounded-2xl",style:{background:"#0f172a",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,s.jsx)("div",{className:"w-8 h-8 rounded-full flex items-center justify-center text-sm font-bold",style:{background:"rgba(14,165,233,0.15)",color:"rgb(56,189,248)",border:"1px solid rgba(14,165,233,0.3)"},children:e}),(0,s.jsx)("h3",{className:"text-base font-semibold text-slate-200",children:t}),r]})}function g({name:e,price:t,desc:a,features:l,cta:o,ctaHref:i,accent:n,dimCta:c}){return(0,s.jsxs)("div",{className:"flex flex-col gap-4 p-6 rounded-2xl",style:{background:"#0f172a",border:`1px solid rgba(${n},0.2)`},children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-xs font-semibold text-slate-500 uppercase tracking-widest",children:e}),(0,s.jsx)("p",{className:"text-3xl font-bold text-slate-100 mt-1",children:t}),(0,s.jsx)("p",{className:"text-xs text-slate-600 mt-0.5",children:a})]}),(0,s.jsx)("ul",{className:"flex flex-col gap-1.5",children:l.map(e=>(0,s.jsxs)("li",{className:"text-xs text-slate-500 flex gap-1.5",children:[(0,s.jsx)("span",{style:{color:`rgb(${n})`},children:"✦"}),e]},e))}),c?(0,s.jsx)("div",{className:"text-xs text-center py-2 rounded-lg text-slate-600",style:{background:"rgba(51,65,85,0.2)",border:"1px solid rgba(51,65,85,0.3)"},children:o}):(0,s.jsx)(r.default,{href:i,target:i.startsWith("http")?"_blank":void 0,rel:i.startsWith("http")?"noopener noreferrer":void 0,className:"text-xs text-center py-2.5 rounded-lg font-semibold transition-all",style:{background:`rgba(${n},0.12)`,color:`rgb(${n})`,border:`1px solid rgba(${n},0.3)`},children:o})]})}let h=[{q:"Is prism0x2A really local-first?",a:"Yes. All code analysis happens on your machine. We never see your codebase, your prompts, or your API key. The only network calls are: (a) license validation to Lemonsqueezy (every 30 days), and (b) your own LLM calls using YOUR API key."},{q:"What's the LOC limit on Free?",a:"50,000 lines of source code per project. Excludes node_modules, generated code, and build artifacts. Above 50k, Free shows partial analysis — Pro removes the limit entirely."},{q:"Do I need to bring my own LLM API key?",a:"Yes. prism0x2A uses YOUR Anthropic API key (or any compatible provider). This means you control your costs and your data. Free tier doesn't use LLMs at all — static analysis only."},{q:"What's the difference between prism0x2A and Cursor/Copilot?",a:"Cursor/Copilot generate code. prism0x2A makes you understand code (yours or AI-generated). Complementary, not competing. Use them together — let Cursor write it, let prism0x2A make you own it."},{q:"Why hex names?",a:"0x2A is hex for 42. 0x2B is hex for 43 — and yes, '2B or not 2B' is intentional. Some easter eggs write themselves."},{q:"Monorepo support?",a:"Yes, Pro tier. pnpm/npm/yarn workspaces, Lerna, Nx, and Turborepo are auto-detected. Each workspace gets its own scan context; aggregate insights span the full monorepo."},{q:"Can I cancel anytime?",a:"Yes. Subscriptions are monthly or yearly. Cancel via your Lemonsqueezy customer portal. Your dashboard works for the rest of your billing period, then reverts to Free tier."},{q:"Is there an enterprise plan?",a:"Yes. Custom pricing, self-hosted option, SLA. Contact us via GitHub or the Lemonsqueezy portal."},{q:"What's the Blueprint Explorer?",a:"Five interactive views of your codebase: List (files ranked by heat/coverage), Graph (import graph with dagre layout), Zones (grouped by directory), Wire (Next.js layout hierarchy), and Flow (page-navigation graph). All auto-generated from your code. Live-updated on every rescan. Pro tier."},{q:"Can I use this on a 1M-LOC codebase?",a:"Yes, Pro tier removes the LOC limit entirely. Pre-launch benchmark: ~5s initial scan for 1,000 files, <500ms incremental updates using hasSourceChanged() detection. Monorepo workspaces are scanned in parallel."},{q:"What's Architect Mode?",a:"Ask your codebase questions using your own LLM API key. Architect Mode uses your blueprint data to answer questions, explain modules, and suggest refactors — grounded in your actual architecture, not generic AI guesses. Like having a senior engineer who has read every file. Rolling out in Pro tier (v0.11+)."}];e.s(["LandingPage",0,function(){return(0,s.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"#020617"},children:[(0,s.jsx)(l,{}),(0,s.jsx)("section",{className:"w-full min-h-screen flex items-center pt-14",children:(0,s.jsxs)("div",{className:"w-full max-w-5xl mx-auto px-6 py-20 grid grid-cols-1 lg:grid-cols-2 gap-12 items-center",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-7",children:[(0,s.jsxs)("div",{className:"inline-flex self-start items-center gap-2 text-xs px-3 py-1 rounded-full",style:{background:"rgba(14,165,233,0.1)",color:"rgb(56,189,248)",border:"1px solid rgba(14,165,233,0.25)"},children:[(0,s.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-sky-400 inline-block animate-pulse"}),"v","0.11.3"," · now available"]}),(0,s.jsxs)("div",{children:[(0,s.jsxs)("h1",{className:"text-5xl sm:text-6xl font-bold tracking-tight text-slate-100 leading-none",children:["prism",(0,s.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]}),(0,s.jsx)("p",{className:"mt-4 text-2xl font-medium text-slate-300 leading-snug",children:"The architecture map your codebase actually has."}),(0,s.jsx)("p",{className:"mt-2 text-base text-slate-500 leading-relaxed",children:"Auto-generated. Live-updated. Local-first."}),(0,s.jsx)("p",{className:"mt-1 text-sm font-mono leading-relaxed",style:{color:"rgba(167,139,250,0.7)"},children:"Like LeanIX, but generated from your code."})]}),(0,s.jsxs)("div",{id:"quickstart",className:"flex flex-col gap-2",children:[(0,s.jsx)("p",{className:"text-xs text-slate-600 font-mono uppercase tracking-widest",children:"Install in 10 seconds"}),(0,s.jsx)(c,{lines:["npm install --save-dev prism0x2a","npx prism dev"],copyText:"npm install --save-dev prism0x2a"})]}),(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-3",children:[(0,s.jsx)(r.default,{href:"#quickstart",className:"px-5 py-2.5 rounded-xl text-sm font-semibold transition-all",style:{background:"rgb(14,165,233)",color:"#020617"},children:"Get Started Free →"}),(0,s.jsx)(r.default,{href:"/pricing",className:"px-5 py-2.5 rounded-xl text-sm font-semibold transition-all",style:{background:"transparent",color:"rgb(148,163,184)",border:"1px solid rgba(51,65,85,0.5)"},children:"View Pricing →"})]}),(0,s.jsxs)("p",{className:"text-xs text-slate-700 font-mono",children:["v","0.11.3"," · MIT Engine + Source-Available Dashboard · €0 to start"]})]}),(0,s.jsx)("div",{className:"flex items-center justify-center",children:(0,s.jsx)(i,{})})]})}),(0,s.jsxs)(d,{id:"explorer",className:"py-24",children:[(0,s.jsx)(x,{children:"Blueprint Explorer"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight",children:"Your codebase, mapped. Five ways."}),(0,s.jsx)("p",{className:"mt-3 text-slate-500 max-w-xl leading-relaxed",children:"Pro tier unlocks 5 interactive views into your architecture — generated fresh from your code on every scan."}),(0,s.jsx)("div",{className:"mt-10 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4",children:[{icon:"≡",view:"List View",color:"59,130,246",desc:"Every file ranked by heat score, coverage, and import density. Sort, filter, inspect."},{icon:"⬡",view:"Graph View",color:"99,102,241",desc:"Interactive import graph with dagre layout. Cycles glow red. Click any node to inspect."},{icon:"⊞",view:"Zones View",color:"245,158,11",desc:"Files grouped by directory zone. Heat-sorted cards — spot your riskiest areas at a glance."},{icon:"◫",view:"Wire View",color:"16,185,129",desc:"Next.js layout hierarchy as nested blocks. See how your route tree nests at a glance."},{icon:"→",view:"Flow View",color:"167,139,250",desc:"Page-navigation graph. Routes as nodes, links as edges. Understand user journeys in code."},{icon:"✦",view:"Pro · €39/mo",color:"148,163,184",desc:"All 5 views + unlimited LOC + monorepo + LLM insights. Upgrade once, keep clarity forever.",isCta:!0}].map(({icon:e,view:t,color:a,desc:l,isCta:o})=>(0,s.jsxs)("div",{className:"flex flex-col gap-3 p-5 rounded-2xl",style:{background:o?"rgba(14,165,233,0.05)":"#0f172a",border:o?"1px solid rgba(14,165,233,0.25)":`1px solid rgba(${a},0.2)`},children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"w-8 h-8 rounded-lg flex items-center justify-center text-sm font-bold font-mono flex-shrink-0",style:{background:`rgba(${a},0.12)`,color:`rgb(${a})`},children:e}),(0,s.jsx)("span",{className:"text-sm font-semibold text-slate-200",children:t})]}),(0,s.jsx)("p",{className:"text-xs text-slate-500 leading-relaxed",children:l}),o&&(0,s.jsx)(r.default,{href:"/pricing",className:"text-xs font-semibold mt-auto",style:{color:"rgb(56,189,248)"},children:"Upgrade to Pro →"})]},t))}),(0,s.jsxs)("div",{className:"mt-8 flex flex-wrap gap-3",children:[(0,s.jsx)(r.default,{href:"/pricing",className:"px-5 py-2.5 rounded-xl text-sm font-semibold",style:{background:"rgba(59,130,246,0.15)",color:"rgb(96,165,250)",border:"1px solid rgba(59,130,246,0.3)"},children:"Upgrade to Pro — €39/mo →"}),(0,s.jsx)(r.default,{href:"#quickstart",className:"px-5 py-2.5 rounded-xl text-sm font-semibold",style:{background:"transparent",color:"rgb(148,163,184)",border:"1px solid rgba(51,65,85,0.4)"},children:"Try Free — limited features"})]})]}),(0,s.jsxs)(d,{id:"architect",className:"py-24",children:[(0,s.jsx)(x,{children:"Architect Mode"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight",children:"Ask your codebase anything."}),(0,s.jsx)("p",{className:"mt-3 text-slate-500 max-w-xl leading-relaxed",children:"Architect Mode uses your blueprint data + your LLM key to answer questions, explain modules, and suggest refactors — grounded in your actual code structure."}),(0,s.jsxs)("div",{className:"mt-10 grid grid-cols-1 lg:grid-cols-2 gap-8 items-start",children:[(0,s.jsxs)("div",{className:"rounded-2xl overflow-hidden",style:{background:"#0f172a",border:"1px solid rgba(167,139,250,0.2)"},children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 px-4 py-3 border-b",style:{borderColor:"rgba(51,65,85,0.4)",background:"rgba(8,12,24,0.6)"},children:[(0,s.jsx)("span",{className:"text-[10px] font-mono font-bold tracking-widest",style:{color:"rgb(167,139,250)"},children:"ARCHITECT"}),(0,s.jsx)("span",{className:"text-[10px] text-slate-600 font-mono",children:"· Pro tier"})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-3 p-4",children:[(0,s.jsx)("div",{className:"flex justify-end",children:(0,s.jsx)("div",{className:"max-w-xs rounded-xl rounded-tr-sm px-4 py-2.5 text-xs text-slate-200",style:{background:"rgba(59,130,246,0.15)",border:"1px solid rgba(59,130,246,0.25)"},children:"Where should I add the new user-permission system?"})}),(0,s.jsxs)("div",{className:"flex gap-2 items-start",children:[(0,s.jsx)("span",{className:"w-5 h-5 rounded flex items-center justify-center text-[9px] font-bold flex-shrink-0 mt-0.5",style:{background:"rgba(167,139,250,0.15)",color:"rgb(167,139,250)"},children:"✦"}),(0,s.jsxs)("div",{className:"rounded-xl rounded-tl-sm px-4 py-2.5 text-xs text-slate-300 leading-relaxed",style:{background:"rgba(15,23,42,0.8)",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,s.jsxs)("p",{children:["Based on your blueprint, I’d recommend extending ",(0,s.jsx)("span",{className:"font-mono text-violet-300",children:"lib/auth/middleware.ts"})," alongside the existing ",(0,s.jsx)("span",{className:"font-mono text-violet-300",children:"ROLE_PERMISSIONS"})," map in ",(0,s.jsx)("span",{className:"font-mono text-violet-300",children:"lib/auth/roles.ts"}),"."]}),(0,s.jsxs)("p",{className:"mt-2",children:["Your ",(0,s.jsx)("span",{className:"font-mono text-sky-300",children:"auth/"})," zone has 3 files, 0 import cycles, and 82% coverage — a safe extension point. Avoid touching ",(0,s.jsx)("span",{className:"font-mono text-orange-300",children:"api/users/route.ts"})," directly (heat: 87.4, cyclic)."]})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2 mt-2 rounded-xl px-3 py-2",style:{background:"rgba(2,6,23,0.6)",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,s.jsx)("span",{className:"text-xs text-slate-600 flex-1 font-mono",children:"Ask anything about your codebase…"}),(0,s.jsx)("span",{className:"text-[10px] px-2 py-0.5 rounded font-semibold",style:{background:"rgba(167,139,250,0.15)",color:"rgb(167,139,250)"},children:"Send"})]})]})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-4",children:[[{icon:"💬",title:"Ask Architect",desc:"Natural-language questions grounded in your blueprint. References real files and hot-zones."},{icon:"🔍",title:"Explain Module",desc:"Deep-dive on any file — doc summary, symbol list, incoming/outgoing deps, refactor risk."},{icon:"⚡",title:"Suggest Refactors",desc:"Auto-scan for cycles, coverage gaps, and hot-spots. Prioritised by severity."},{icon:"🔑",title:"Your key, your data",desc:"Bring your own Anthropic key. No data leaves your machine. You control the cost."}].map(({icon:e,title:t,desc:r})=>(0,s.jsxs)("div",{className:"flex gap-4 items-start p-4 rounded-xl",style:{background:"#0f172a",border:"1px solid rgba(51,65,85,0.35)"},children:[(0,s.jsx)("span",{className:"text-xl flex-shrink-0",children:e}),(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-semibold text-slate-200",children:t}),(0,s.jsx)("p",{className:"text-xs text-slate-500 mt-0.5 leading-relaxed",children:r})]})]},t)),(0,s.jsxs)("div",{className:"flex items-center gap-3 px-4 py-3 rounded-xl mt-2",style:{background:"rgba(167,139,250,0.06)",border:"1px solid rgba(167,139,250,0.2)"},children:[(0,s.jsx)("span",{className:"text-xs font-mono",style:{color:"rgb(167,139,250)"},children:"✦"}),(0,s.jsxs)("p",{className:"text-xs text-slate-400",children:[(0,s.jsx)("span",{className:"font-semibold text-violet-300",children:"Coming in Pro tier (v0.11+)"})," — Architect Mode is rolling out now. Blueprint must be generated first."]})]})]})]})]}),(0,s.jsxs)(d,{className:"py-24",children:[(0,s.jsx)(x,{children:"The problem"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight max-w-xl",children:"Your codebase is bigger than it was."}),(0,s.jsx)("p",{className:"mt-4 text-slate-500 max-w-lg leading-relaxed",children:"AI-generated code is great. Understanding it is harder. prism0x2A makes your codebase legible to you again."}),(0,s.jsx)("div",{className:"mt-12 grid grid-cols-1 sm:grid-cols-3 gap-4",children:[{icon:"⌨️",headline:"Cursor writes it.",body:"You ship fast. Features land. The AI keeps up with your ideas."},{icon:"🤖",headline:"Claude reviews it.",body:"You get the diff, the explanation, the confidence to merge."},{icon:"✦",headline:"prism0x2A makes you own it.",body:"Coverage gaps, import cycles, cross-layer context — you actually understand what's in production.",accent:!0}].map(({icon:e,headline:t,body:r,accent:a})=>(0,s.jsxs)("div",{className:"flex flex-col gap-4 p-6 rounded-2xl",style:{background:a?"rgba(14,165,233,0.06)":"#0f172a",border:a?"1px solid rgba(14,165,233,0.2)":"1px solid rgba(51,65,85,0.4)"},children:[(0,s.jsx)("span",{className:"text-2xl",children:e}),(0,s.jsx)("h3",{className:"text-base font-semibold text-slate-200",children:t}),(0,s.jsx)("p",{className:"text-sm text-slate-500 leading-relaxed",children:r})]},t))})]}),(0,s.jsxs)(d,{id:"features",className:"py-24",children:[(0,s.jsx)(x,{children:"How it works"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight",children:"Three steps to clarity."}),(0,s.jsxs)("div",{className:"mt-12 grid grid-cols-1 sm:grid-cols-3 gap-4",children:[(0,s.jsxs)(m,{n:"1",title:"Install in seconds",children:[(0,s.jsx)(c,{lines:["npm install --save-dev prism0x2a"],copyText:"npm install --save-dev prism0x2a"}),(0,s.jsx)("p",{className:"text-sm text-slate-500",children:"No cloud. No account. One package."})]}),(0,s.jsxs)(m,{n:"2",title:"Scan your codebase",children:[(0,s.jsx)(c,{lines:["npx prism dev"],copyText:"npx prism dev"}),(0,s.jsx)("p",{className:"text-sm text-slate-500",children:"Dashboard opens at localhost:3001. Cycles, coverage, imports — instantly."})]}),(0,s.jsxs)(m,{n:"3",title:"Get answers",children:[(0,s.jsxs)("div",{className:"rounded-lg px-4 py-3 text-xs font-mono text-slate-400",style:{background:"rgba(2,6,23,0.6)",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,s.jsx)("div",{style:{color:"rgb(52,211,153)"},children:"✓ 0 import cycles"}),(0,s.jsx)("div",{style:{color:"rgb(251,191,36)"},children:"⚠ 14 uncovered branches"}),(0,s.jsx)("div",{style:{color:"rgb(96,165,250)"},children:"✦ 3 AI insights ready"})]}),(0,s.jsx)("p",{className:"text-sm text-slate-500",children:"Activate Pro for LLM-powered insights, monorepo support, and custom queries."})]})]}),(0,s.jsx)("p",{className:"mt-8 text-sm text-slate-600 text-center font-mono",children:"All local. All offline-capable. No data leaves your machine."})]}),(0,s.jsxs)(d,{className:"py-24",children:[(0,s.jsx)(x,{children:"The full spectrum"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight",children:"Code intelligence, all frequencies."}),(0,s.jsx)("p",{className:"mt-3 text-slate-500 max-w-lg leading-relaxed",children:"BLUE leads with Blueprint Explorer — architecture mapping that replaces tools like LeanIX for codebases."}),(0,s.jsxs)("div",{className:"mt-12 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4",children:[(0,s.jsx)(p,{color:"59,130,246",label:"BLUE",title:"Sessions + Blueprint Explorer",description:"LLM-driven code investigations + 5-view architecture mapping (List, Graph, Zones, Wire, Flow). Blueprint Explorer is Pro-tier.",href:"#explorer"}),(0,s.jsx)(p,{color:"245,158,11",label:"AMBER",title:"Coverage + Files + Registry",description:"See what's tested, what's not, and where your business logic lives. Coverage hot-spots, capability registry, file metadata.",href:"#quickstart"}),(0,s.jsx)(p,{color:"16,185,129",label:"GREEN",title:"Insights + Cross-Layer + Queries",description:"Auto-discover patterns across your codebase. Write custom queries. Get cross-layer insights spanning sessions, coverage, and structure.",href:"#quickstart"}),(0,s.jsxs)("div",{className:"relative flex flex-col gap-4 p-6 rounded-2xl",style:{background:"rgba(167,139,250,0.04)",border:"1px solid rgba(167,139,250,0.25)",boxShadow:"0 0 40px rgba(167,139,250,0.04)"},children:[(0,s.jsx)("div",{className:"absolute top-0 left-8 right-8 h-px",style:{background:"linear-gradient(90deg, transparent, rgba(167,139,250,0.5), transparent)"}}),(0,s.jsx)("div",{className:"text-xs font-bold tracking-widest font-mono",style:{color:"rgb(167,139,250)"},children:"BLUEPRINT EXPLORER"}),(0,s.jsx)("h3",{className:"text-base font-semibold text-slate-200",children:"5 Architecture Views"}),(0,s.jsx)("p",{className:"text-sm text-slate-500 leading-relaxed",children:"List · Graph · Zones · Wire · Flow. Generated from your code. Live-updated on every rescan."}),(0,s.jsx)("p",{className:"text-xs font-mono mt-auto",style:{color:"rgba(167,139,250,0.6)"},children:"Pro tier — €39/mo"}),(0,s.jsx)(r.default,{href:"/pricing",className:"text-xs font-semibold mt-1",style:{color:"rgb(167,139,250)"},children:"Upgrade to Pro →"})]})]})]}),(0,s.jsx)(d,{className:"py-24",children:(0,s.jsxs)("div",{className:"relative rounded-2xl p-8 sm:p-12 overflow-hidden",style:{background:"linear-gradient(135deg, rgba(204,102,51,0.06), rgba(232,72,153,0.04))",border:"1px solid rgba(204,102,51,0.2)"},children:[(0,s.jsx)("div",{className:"absolute top-0 left-1/4 right-1/4 h-px",style:{background:"linear-gradient(90deg, transparent, rgba(204,102,51,0.5), transparent)"}}),(0,s.jsxs)("div",{className:"flex flex-col sm:flex-row gap-8 items-start",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-5 flex-1",children:[(0,s.jsx)("div",{children:(0,s.jsx)("span",{className:"text-xs font-semibold px-2.5 py-1 rounded-full",style:{background:"rgba(204,102,51,0.15)",color:"rgb(251,146,60)",border:"1px solid rgba(204,102,51,0.3)"},children:"Early Access — Coming Soon"})}),(0,s.jsxs)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight",children:["Coming Soon: forge",(0,s.jsx)("span",{className:"font-mono",children:"0x2B"})]}),(0,s.jsx)("p",{className:"text-lg text-slate-400 leading-relaxed",children:"An architect AND a marketing department, in a box."}),(0,s.jsx)("p",{className:"text-sm text-slate-500 leading-relaxed italic font-mono",children:"2B or not 2B."}),(0,s.jsx)("ul",{className:"flex flex-col gap-2.5",children:["Auto-generated release notes from your prism0x2A sessions","Blog posts from technical changes","Social copy from feature ships","Internal updates from code-health trends"].map(e=>(0,s.jsxs)("li",{className:"flex items-start gap-2 text-sm text-slate-400",children:[(0,s.jsx)("span",{style:{color:"rgb(251,146,60)"},children:"→"}),e]},e))}),(0,s.jsx)("p",{className:"text-sm text-slate-500 leading-relaxed",children:"Use prism0x2A to understand your code. Use forge0x2B to tell the story."}),(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/forge0x2B",target:"_blank",rel:"noopener noreferrer",className:"self-start text-sm font-semibold px-4 py-2.5 rounded-xl transition-all",style:{background:"rgba(204,102,51,0.12)",color:"rgb(251,146,60)",border:"1px solid rgba(204,102,51,0.3)"},children:"Watch on GitHub →"})]}),(0,s.jsxs)("div",{className:"flex-shrink-0 w-full sm:w-64 rounded-xl p-5 flex flex-col gap-4",style:{background:"rgba(8,16,36,0.6)",border:"1px solid rgba(167,139,250,0.25)"},children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-xs font-semibold text-violet-400 uppercase tracking-widest",children:"Spectrum 0x55 Bundle"}),(0,s.jsxs)("p",{className:"text-2xl font-bold text-slate-100 mt-1",children:["€49",(0,s.jsx)("span",{className:"text-sm font-normal text-slate-500",children:"/mo"})]}),(0,s.jsx)("p",{className:"text-xs text-slate-600 mt-0.5",children:"save €19/mo vs separate"})]}),(0,s.jsxs)("ul",{className:"flex flex-col gap-1.5 text-xs text-slate-500",children:[(0,s.jsxs)("li",{className:"flex gap-1.5",children:[(0,s.jsx)("span",{className:"text-violet-400",children:"✦"}),"prism0x2A Pro — now"]}),(0,s.jsxs)("li",{className:"flex gap-1.5",children:[(0,s.jsx)("span",{className:"text-orange-400",children:"✦"}),"forge0x2B — unlocks at GA"]}),(0,s.jsxs)("li",{className:"flex gap-1.5",children:[(0,s.jsx)("span",{className:"text-emerald-400",children:"✦"}),"Early access pricing locked"]})]}),(0,s.jsx)(r.default,{href:"https://prism0x2a.lemonsqueezy.com/checkout/buy/64d25b45-7c4a-410d-b4aa-7504f98ab5f7",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-center py-2 rounded-lg font-semibold",style:{background:"rgba(99,102,241,0.15)",color:"rgb(167,139,250)",border:"1px solid rgba(167,139,250,0.3)"},children:"Get Spectrum 0x55 →"})]})]})]})}),(0,s.jsxs)(d,{className:"py-24",children:[(0,s.jsx)(x,{children:"Pricing"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight",children:"Pricing that respects your wallet."}),(0,s.jsx)("p",{className:"mt-2 text-slate-500",children:"If you can afford Cursor or Claude Max, you can afford to know what your code does."}),(0,s.jsxs)("div",{className:"mt-8 flex flex-col sm:flex-row items-start sm:items-center justify-between gap-4 px-5 py-4 rounded-xl",style:{background:"linear-gradient(90deg, rgba(99,102,241,0.08), rgba(167,139,250,0.05))",border:"1px solid rgba(167,139,250,0.3)"},children:[(0,s.jsxs)("div",{className:"flex items-center gap-3",children:[(0,s.jsx)("span",{className:"text-xl",children:"✦"}),(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-sm font-semibold text-violet-300",children:"Spectrum 0x55 Bundle — Best Value"}),(0,s.jsx)("p",{className:"text-xs text-slate-500 mt-0.5",children:"prism0x2A Pro + forge0x2B Pro · save €19/mo vs separate"})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-4",children:[(0,s.jsxs)("div",{className:"text-right",children:[(0,s.jsxs)("p",{className:"text-2xl font-bold text-slate-100",children:["€49",(0,s.jsx)("span",{className:"text-sm font-normal text-slate-500",children:"/mo"})]}),(0,s.jsx)("p",{className:"text-[10px] text-slate-600 line-through",children:"€68/mo separate"})]}),(0,s.jsx)(r.default,{href:"https://prism0x2a.lemonsqueezy.com/checkout/buy/64d25b45-7c4a-410d-b4aa-7504f98ab5f7",target:"_blank",rel:"noopener noreferrer",className:"text-xs font-semibold px-4 py-2 rounded-lg whitespace-nowrap",style:{background:"rgba(167,139,250,0.15)",color:"rgb(167,139,250)",border:"1px solid rgba(167,139,250,0.3)"},children:"Get Spectrum →"})]})]}),(0,s.jsxs)("div",{className:"mt-6 grid grid-cols-1 sm:grid-cols-3 gap-4",children:[(0,s.jsx)(g,{name:"Free",price:"€0",desc:"forever",features:["Up to 50k LOC","Static analysis","Import cycles","1 project"],cta:"Start Free",ctaHref:"#quickstart",accent:"148,163,184"}),(0,s.jsx)(g,{name:"Pro",price:"€39",desc:"/mo · save 17% yearly",features:["Unlimited LOC","Blueprint Explorer (5 views)","LLM insights","Monorepo support","Custom queries"],cta:"Get Pro",ctaHref:"https://prism0x2a.lemonsqueezy.com/checkout/buy/a9097951-5d54-438c-89ef-3e093d88f6c6",accent:"59,130,246"}),(0,s.jsx)(g,{name:"Spectrum 0x55",price:"€49",desc:"/mo · Pro + forge0x2B · save €19",features:["Everything in Pro","forge0x2B Pro when GA","Best value bundle","Early access price locked"],cta:"Get Spectrum 0x55",ctaHref:"https://prism0x2a.lemonsqueezy.com/checkout/buy/64d25b45-7c4a-410d-b4aa-7504f98ab5f7",accent:"167,139,250"})]}),(0,s.jsxs)("div",{className:"mt-8 flex flex-col sm:flex-row items-center justify-between gap-4",children:[(0,s.jsx)(r.default,{href:"/pricing",className:"text-sm text-indigo-400 hover:text-indigo-300 transition-colors",children:"View full pricing + Team plan →"}),(0,s.jsxs)("div",{className:"flex items-center gap-4 text-xs text-slate-700",children:[(0,s.jsx)("span",{children:"Powered by Lemon Squeezy"}),(0,s.jsx)("span",{children:"EU VAT compliant"}),(0,s.jsx)("span",{children:"Cancel anytime"})]})]})]}),(0,s.jsxs)(d,{className:"py-24",children:[(0,s.jsx)(x,{children:"FAQ"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight mb-8",children:"Frequently asked questions."}),(0,s.jsx)("div",{className:"flex flex-col gap-3 max-w-2xl",children:h.map(({q:e,a:t})=>(0,s.jsxs)("details",{className:"group rounded-xl px-6 py-4",style:{background:"#0f172a",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,s.jsxs)("summary",{className:"text-sm font-medium text-slate-300 cursor-pointer list-none flex items-center justify-between gap-3",children:[e,(0,s.jsx)("span",{className:"text-slate-600 group-open:rotate-180 transition-transform flex-shrink-0 text-xs",children:"▼"})]}),(0,s.jsx)("p",{className:"mt-3 text-sm text-slate-500 leading-relaxed",children:t})]},e))})]}),(0,s.jsx)(d,{className:"py-24",children:(0,s.jsxs)("div",{className:"rounded-2xl p-10 sm:p-16 text-center flex flex-col items-center gap-8",style:{background:"linear-gradient(135deg, rgba(14,165,233,0.06), rgba(99,102,241,0.04))",border:"1px solid rgba(14,165,233,0.15)"},children:[(0,s.jsx)("h2",{className:"text-3xl sm:text-4xl font-bold text-slate-100 tracking-tight",children:"Get started in 60 seconds."}),(0,s.jsxs)("div",{className:"w-full max-w-lg",children:[(0,s.jsx)(c,{lines:["# In your TypeScript / React project root:","npm install --save-dev prism0x2a","npx prism init","npm run prism"],copyText:"npm install --save-dev prism0x2a"}),(0,s.jsx)("p",{className:"mt-3 text-xs text-slate-600 font-mono",children:"Dashboard opens at http://localhost:3001 scanning your project."})]}),(0,s.jsxs)("div",{className:"flex flex-wrap justify-center gap-4",children:[(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/prism0x2A",target:"_blank",rel:"noopener noreferrer",className:"text-sm font-medium text-slate-400 hover:text-slate-200 transition-colors",children:"Read the docs →"}),(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/prism0x2A",target:"_blank",rel:"noopener noreferrer",className:"text-sm font-medium text-slate-400 hover:text-slate-200 transition-colors",children:"View on GitHub →"})]}),(0,s.jsx)("p",{className:"text-xs text-slate-700 font-mono",children:"Built on a 42nd birthday. 0x2A = 42. The answer to all questions."})]})}),(0,s.jsx)(o,{})]})}],22612)}]);
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,2974,e=>{"use strict";var s=e.i(47167),t=e.i(43476),r=e.i(71645),a=e.i(50667);e.s(["DashboardHome",0,function(){let[e,l]=(0,r.useState)(s.default.env.NEXT_PUBLIC_PRISM_TARGET??s.default.env.PRISM_TARGET??""),[o,i]=(0,r.useState)(null),[n,c]=(0,r.useState)(!1),[d,x]=(0,r.useState)(null);async function p(){if(e.trim()){c(!0),x(null),i(null);try{let s=await fetch("/api/scan",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({targetPath:e.trim()})}),t=await s.json();if(!s.ok)throw Error(t.error??"Scan failed");i(JSON.stringify(t,null,2))}catch(e){x(e instanceof Error?e.message:String(e))}finally{c(!1)}}}return(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 px-6 gap-8",style:{paddingTop:"var(--dock-clearance-top)"},children:[(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsxs)("h1",{className:"text-2xl font-semibold text-slate-100 tracking-tight",children:["prism",(0,t.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]}),(0,t.jsxs)("p",{className:"mt-1 text-sm text-slate-400",children:["The answer to your codebase. —"," ",(0,t.jsx)("span",{className:"text-sky-400 font-mono",children:"prismlens"})]})]}),(0,t.jsxs)("div",{className:"w-full max-w-lg rounded-xl p-6 flex flex-col gap-4",style:{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)"},children:[(0,t.jsx)("h2",{className:"text-sm font-semibold text-slate-300 uppercase tracking-widest",children:"Scan a directory"}),(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsx)("label",{className:"text-xs text-slate-400",htmlFor:"targetPath",children:"Absolute path"}),(0,t.jsx)("input",{id:"targetPath",type:"text",value:e,onChange:e=>l(e.target.value),placeholder:"/Users/you/your-project",className:"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",style:{background:"rgba(2,6,23,0.6)",border:"1px solid var(--border-default)"},onKeyDown:e=>"Enter"===e.key&&p()})]}),(0,t.jsx)("button",{onClick:p,disabled:n||!e.trim(),className:"w-full py-2 rounded-lg text-sm font-semibold transition-all disabled:opacity-40 disabled:cursor-not-allowed",style:{background:"rgb(14,165,233)",color:"#020617"},children:n?"Scanning…":"Run cycle detection"})]}),(o||d)&&(0,t.jsxs)("div",{className:"w-full max-w-lg rounded-xl p-6 flex flex-col gap-3",style:{background:"var(--surface-panel)",border:`1px solid ${d?"rgba(239,68,68,0.3)":"var(--border-default)"}`},children:[(0,t.jsx)("h2",{className:"text-sm font-semibold text-slate-300 uppercase tracking-widest",children:"Results"}),d&&(0,t.jsx)("p",{className:"text-sm text-red-400 font-mono",children:d}),o&&(0,t.jsx)("pre",{className:"text-xs font-mono text-slate-300 overflow-auto max-h-96 leading-relaxed",style:{whiteSpace:"pre-wrap",wordBreak:"break-all"},children:o})]})]}),(0,t.jsxs)("footer",{className:"text-center py-4 text-xs text-slate-600",style:{marginBottom:"var(--infobar-clearance-bottom)"},children:["prism",(0,t.jsx)("span",{className:"font-mono",children:"0x2A"})," v","0.12.0"]})]})}])},22612,e=>{"use strict";e.i(47167);var s=e.i(43476),t=e.i(71645),r=e.i(22016),a=e.i(18566);function l(){let e=(0,a.usePathname)();return(0,s.jsxs)("header",{className:"fixed top-0 left-0 right-0 z-50 flex items-center justify-between px-6 h-14",style:{background:"rgba(2,6,23,0.75)",backdropFilter:"blur(20px) saturate(1.4)",borderBottom:"1px solid rgba(51,65,85,0.25)"},children:[(0,s.jsxs)(r.default,{href:"/",className:"flex items-center gap-1.5 group flex-shrink-0",children:[(0,s.jsx)("span",{className:"text-sky-400 text-base select-none",children:"✦"}),(0,s.jsxs)("span",{className:"text-slate-200 text-sm font-semibold tracking-tight group-hover:text-white transition-colors",children:["prism",(0,s.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]})]}),(0,s.jsx)("nav",{className:"hidden sm:flex items-center gap-6",children:[{href:"/#features",label:"Features"},{href:"/pricing",label:"Pricing"},{href:"https://github.com/dadenjo/prism0x2A",label:"Docs",external:!0}].map(({href:t,label:a,external:l})=>(0,s.jsx)(r.default,{href:t,target:l?"_blank":void 0,rel:l?"noopener noreferrer":void 0,className:"text-sm transition-colors",style:{color:e===t?"rgb(226,232,240)":"rgba(148,163,184,0.7)"},children:a},t))}),(0,s.jsx)(r.default,{href:"/#quickstart",className:"text-sm font-semibold px-3 py-1.5 rounded-lg transition-all hidden sm:block",style:{background:"rgba(14,165,233,0.15)",color:"rgb(56,189,248)",border:"1px solid rgba(14,165,233,0.3)"},children:"Get Started →"})]})}function o(){return(0,s.jsxs)("footer",{className:"border-t mt-24",style:{borderColor:"rgba(51,65,85,0.3)"},children:[(0,s.jsxs)("div",{className:"max-w-5xl mx-auto px-6 py-16 grid grid-cols-2 sm:grid-cols-4 gap-10",children:[(0,s.jsxs)("div",{className:"col-span-2 sm:col-span-1 flex flex-col gap-3",children:[(0,s.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,s.jsx)("span",{className:"text-sky-400 text-base select-none",children:"✦"}),(0,s.jsxs)("span",{className:"text-slate-200 text-sm font-semibold tracking-tight",children:["prism",(0,s.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]})]}),(0,s.jsxs)("p",{className:"text-xs text-slate-600 leading-relaxed",children:["Local-first code intelligence.",(0,s.jsx)("br",{}),"Engine: ",(0,s.jsx)("span",{className:"font-mono text-slate-500",children:"prismlens"}),"."]}),(0,s.jsx)("p",{className:"text-xs text-slate-700 font-mono",children:"0x2A = 42"})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsx)("h3",{className:"text-xs font-semibold text-slate-500 uppercase tracking-widest",children:"Product"}),(0,s.jsxs)("nav",{className:"flex flex-col gap-2",children:[(0,s.jsx)(r.default,{href:"/pricing",className:"text-xs text-slate-600 hover:text-slate-400 transition-colors",children:"Pricing"}),(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/prism0x2A",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-slate-600 hover:text-slate-400 transition-colors",children:"Docs"}),(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/prism0x2A/blob/main/CHANGELOG.md",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-slate-600 hover:text-slate-400 transition-colors",children:"Changelog"})]})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsx)("h3",{className:"text-xs font-semibold text-slate-500 uppercase tracking-widest",children:"Resources"}),(0,s.jsxs)("nav",{className:"flex flex-col gap-2",children:[(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/prism0x2A",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-slate-600 hover:text-slate-400 transition-colors",children:"GitHub — prism0x2A"}),(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/forge0x2B",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-slate-600 hover:text-slate-400 transition-colors",children:"forge0x2B (coming soon)"}),(0,s.jsx)("span",{className:"text-xs text-slate-700",children:"Engine: prismlens"})]})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsx)("h3",{className:"text-xs font-semibold text-slate-500 uppercase tracking-widest",children:"Legal"}),(0,s.jsxs)("nav",{className:"flex flex-col gap-2",children:[(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/prism0x2A/blob/main/LICENSE",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-slate-600 hover:text-slate-400 transition-colors",children:"License"}),(0,s.jsx)("span",{className:"text-xs text-slate-700",children:"Terms (coming)"}),(0,s.jsx)("span",{className:"text-xs text-slate-700",children:"Privacy (coming)"})]})]})]}),(0,s.jsxs)("div",{className:"max-w-5xl mx-auto px-6 pb-8 flex flex-col sm:flex-row items-center justify-between gap-2 border-t",style:{borderColor:"rgba(51,65,85,0.2)"},children:[(0,s.jsx)("p",{className:"text-xs text-slate-700",children:"Made in Germany 🇩🇪 · © 2026 prism0x2A"}),(0,s.jsx)("p",{className:"text-xs text-slate-700 font-mono",children:"The answer is 42."})]})]})}function i(){return(0,s.jsxs)("svg",{viewBox:"0 0 620 400",className:"w-full max-w-xl","aria-hidden":"true",role:"img",children:[(0,s.jsxs)("defs",{children:[(0,s.jsxs)("linearGradient",{id:"prism-fill",x1:"0%",y1:"0%",x2:"100%",y2:"100%",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgba(148,163,184,0.18)"}),(0,s.jsx)("stop",{offset:"40%",stopColor:"rgba(226,232,240,0.07)"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgba(99,102,241,0.12)"})]}),(0,s.jsxs)("linearGradient",{id:"chaos-fade",x1:"0%",y1:"0%",x2:"100%",y2:"0%",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgba(2,6,23,0)"}),(0,s.jsx)("stop",{offset:"70%",stopColor:"rgba(2,6,23,0.55)"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgba(2,6,23,0.8)"})]}),(0,s.jsxs)("linearGradient",{id:"blue-ray",x1:"292",y1:"118",x2:"440",y2:"42",gradientUnits:"userSpaceOnUse",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgb(59,130,246)",stopOpacity:"0.9"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgb(59,130,246)",stopOpacity:"0.35"})]}),(0,s.jsxs)("linearGradient",{id:"indigo-ray",x1:"292",y1:"148",x2:"440",y2:"120",gradientUnits:"userSpaceOnUse",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgb(99,102,241)",stopOpacity:"0.85"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgb(99,102,241)",stopOpacity:"0.3"})]}),(0,s.jsxs)("linearGradient",{id:"amber-ray",x1:"292",y1:"200",x2:"440",y2:"200",gradientUnits:"userSpaceOnUse",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgb(245,158,11)",stopOpacity:"0.9"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgb(245,158,11)",stopOpacity:"0.35"})]}),(0,s.jsxs)("linearGradient",{id:"green-ray",x1:"292",y1:"248",x2:"440",y2:"278",gradientUnits:"userSpaceOnUse",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgb(16,185,129)",stopOpacity:"0.9"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgb(16,185,129)",stopOpacity:"0.35"})]}),(0,s.jsxs)("linearGradient",{id:"violet-ray",x1:"292",y1:"278",x2:"440",y2:"356",gradientUnits:"userSpaceOnUse",children:[(0,s.jsx)("stop",{offset:"0%",stopColor:"rgb(167,139,250)",stopOpacity:"0.85"}),(0,s.jsx)("stop",{offset:"100%",stopColor:"rgb(167,139,250)",stopOpacity:"0.3"})]}),(0,s.jsxs)("filter",{id:"soft-glow",x:"-50%",y:"-50%",width:"200%",height:"200%",children:[(0,s.jsx)("feGaussianBlur",{stdDeviation:"4",result:"blur"}),(0,s.jsxs)("feMerge",{children:[(0,s.jsx)("feMergeNode",{in:"blur"}),(0,s.jsx)("feMergeNode",{in:"SourceGraphic"})]})]})]}),[{t:"import { analyze } from './engine'",y:32},{t:"TypeError: Cannot read property 'map'",y:60},{t:" at Object.<anonymous> src/lib:42",y:88},{t:"const deps = await scan(targetPath)",y:116},{t:"// TODO: fix circular ref → api/index",y:144},{t:"export default function Dashboard() {",y:172},{t:"Error: ENOENT no such file or dir",y:200},{t:" at /src/api/route.ts:17:9",y:228},{t:"import type { Config } from '@/lib'",y:256},{t:"✗ 3 import cycles detected",y:284},{t:" src/api → lib/db → src/api",y:312},{t:"✗ 14 uncovered branches",y:340},{t:" heat: 87.4 · complexity: 12",y:368}].map(({t:e,y:t},r)=>(0,s.jsx)("text",{x:"8",y:t,fontSize:"9",fontFamily:"monospace",fill:`rgba(148,163,184,${.42+r%4*.1})`,children:e},r)),(0,s.jsx)("rect",{x:"0",y:"0",width:"195",height:"400",fill:"url(#chaos-fade)"}),(0,s.jsx)("line",{x1:"0",y1:"200",x2:"192",y2:"200",stroke:"rgba(255,255,255,0.12)",strokeWidth:"1.5",strokeDasharray:"5 3"}),(0,s.jsx)("polygon",{points:"192,200 292,98 292,302",fill:"url(#prism-fill)",stroke:"none"}),(0,s.jsx)("line",{x1:"192",y1:"200",x2:"292",y2:"98",stroke:"rgba(226,232,240,0.45)",strokeWidth:"1.2"}),(0,s.jsx)("line",{x1:"192",y1:"200",x2:"292",y2:"302",stroke:"rgba(148,163,184,0.3)",strokeWidth:"1.2"}),(0,s.jsx)("line",{x1:"292",y1:"98",x2:"292",y2:"302",stroke:"rgba(226,232,240,0.5)",strokeWidth:"1.5"}),(0,s.jsx)("line",{x1:"226",y1:"190",x2:"292",y2:"148",stroke:"rgba(255,255,255,0.05)",strokeWidth:"0.7"}),(0,s.jsx)("line",{x1:"226",y1:"200",x2:"292",y2:"200",stroke:"rgba(255,255,255,0.05)",strokeWidth:"0.7"}),(0,s.jsx)("line",{x1:"226",y1:"210",x2:"292",y2:"252",stroke:"rgba(255,255,255,0.05)",strokeWidth:"0.7"}),(0,s.jsx)("text",{x:"242",y:"203",fontSize:"10",fontFamily:"monospace",fill:"rgba(148,163,184,0.38)",textAnchor:"middle",letterSpacing:"0.5",children:"0x2A"}),(0,s.jsx)("line",{x1:"292",y1:"118",x2:"440",y2:"42",stroke:"url(#blue-ray)",strokeWidth:"2",filter:"url(#soft-glow)"}),(0,s.jsx)("line",{x1:"292",y1:"148",x2:"440",y2:"120",stroke:"url(#indigo-ray)",strokeWidth:"1.8",filter:"url(#soft-glow)"}),(0,s.jsx)("line",{x1:"292",y1:"200",x2:"440",y2:"200",stroke:"url(#amber-ray)",strokeWidth:"2.5",filter:"url(#soft-glow)"}),(0,s.jsx)("line",{x1:"292",y1:"248",x2:"440",y2:"278",stroke:"url(#green-ray)",strokeWidth:"1.8",filter:"url(#soft-glow)"}),(0,s.jsx)("line",{x1:"292",y1:"278",x2:"440",y2:"356",stroke:"url(#violet-ray)",strokeWidth:"2",filter:"url(#soft-glow)"}),(0,s.jsx)("rect",{x:"440",y:"10",width:"166",height:"58",rx:"6",fill:"rgba(8,16,36,0.92)",stroke:"rgba(59,130,246,0.4)",strokeWidth:"1"}),(0,s.jsx)("rect",{x:"440",y:"10",width:"166",height:"2.5",rx:"1.5",fill:"rgba(59,130,246,0.65)"}),(0,s.jsx)("text",{x:"454",y:"32",fontSize:"9",fontFamily:"monospace",fill:"rgb(96,165,250)",fontWeight:"bold",letterSpacing:"1",children:"BLUE · List View"}),(0,s.jsx)("text",{x:"454",y:"48",fontSize:"7.5",fontFamily:"monospace",fill:"rgba(100,116,139,0.8)",children:"Sessions + Blueprint Explorer"}),(0,s.jsx)("text",{x:"454",y:"62",fontSize:"7",fontFamily:"sans-serif",fill:"rgba(71,85,105,0.7)",children:"heat · coverage · imports"}),(0,s.jsx)("rect",{x:"440",y:"96",width:"166",height:"54",rx:"6",fill:"rgba(8,16,36,0.92)",stroke:"rgba(99,102,241,0.4)",strokeWidth:"1"}),(0,s.jsx)("rect",{x:"440",y:"96",width:"166",height:"2.5",rx:"1.5",fill:"rgba(99,102,241,0.6)"}),(0,s.jsx)("text",{x:"454",y:"116",fontSize:"9",fontFamily:"monospace",fill:"rgb(129,140,248)",fontWeight:"bold",letterSpacing:"1",children:"Graph View"}),(0,s.jsx)("text",{x:"454",y:"131",fontSize:"7.5",fontFamily:"monospace",fill:"rgba(100,116,139,0.8)",children:"import graph · dagre layout"}),(0,s.jsx)("text",{x:"454",y:"144",fontSize:"7",fontFamily:"sans-serif",fill:"rgba(71,85,105,0.7)",children:"click node → inspector"}),(0,s.jsx)("rect",{x:"440",y:"174",width:"166",height:"54",rx:"6",fill:"rgba(8,16,36,0.92)",stroke:"rgba(245,158,11,0.4)",strokeWidth:"1"}),(0,s.jsx)("rect",{x:"440",y:"174",width:"166",height:"2.5",rx:"1.5",fill:"rgba(245,158,11,0.65)"}),(0,s.jsx)("text",{x:"454",y:"194",fontSize:"9",fontFamily:"monospace",fill:"rgb(251,191,36)",fontWeight:"bold",letterSpacing:"1",children:"AMBER · Zones View"}),(0,s.jsx)("text",{x:"454",y:"209",fontSize:"7.5",fontFamily:"monospace",fill:"rgba(100,116,139,0.8)",children:"Coverage · Registry · Files"}),(0,s.jsx)("text",{x:"454",y:"222",fontSize:"7",fontFamily:"sans-serif",fill:"rgba(71,85,105,0.7)",children:"grouped by directory zone"}),(0,s.jsx)("rect",{x:"440",y:"252",width:"166",height:"54",rx:"6",fill:"rgba(8,16,36,0.92)",stroke:"rgba(16,185,129,0.4)",strokeWidth:"1"}),(0,s.jsx)("rect",{x:"440",y:"252",width:"166",height:"2.5",rx:"1.5",fill:"rgba(16,185,129,0.65)"}),(0,s.jsx)("text",{x:"454",y:"272",fontSize:"9",fontFamily:"monospace",fill:"rgb(52,211,153)",fontWeight:"bold",letterSpacing:"1",children:"GREEN · Wire View"}),(0,s.jsx)("text",{x:"454",y:"287",fontSize:"7.5",fontFamily:"monospace",fill:"rgba(100,116,139,0.8)",children:"Insights · Cross-layer"}),(0,s.jsx)("text",{x:"454",y:"300",fontSize:"7",fontFamily:"sans-serif",fill:"rgba(71,85,105,0.7)",children:"Next.js layout hierarchy"}),(0,s.jsx)("rect",{x:"440",y:"330",width:"166",height:"54",rx:"6",fill:"rgba(8,16,36,0.92)",stroke:"rgba(167,139,250,0.4)",strokeWidth:"1"}),(0,s.jsx)("rect",{x:"440",y:"330",width:"166",height:"2.5",rx:"1.5",fill:"rgba(167,139,250,0.6)"}),(0,s.jsx)("text",{x:"454",y:"350",fontSize:"9",fontFamily:"monospace",fill:"rgb(196,181,253)",fontWeight:"bold",letterSpacing:"1",children:"Flow View"}),(0,s.jsx)("text",{x:"454",y:"365",fontSize:"7.5",fontFamily:"monospace",fill:"rgba(100,116,139,0.8)",children:"page-navigation graph"}),(0,s.jsx)("text",{x:"454",y:"378",fontSize:"7",fontFamily:"sans-serif",fill:"rgba(71,85,105,0.7)",children:"routes as nodes · Pro tier"})]})}function n({text:e}){let[r,a]=(0,t.useState)(!1);return(0,s.jsx)("button",{onClick:()=>{navigator.clipboard.writeText(e).catch(()=>{}),a(!0),setTimeout(()=>a(!1),2e3)},className:"flex-shrink-0 text-xs px-2.5 py-1 rounded transition-all font-mono",style:{background:r?"rgba(52,211,153,0.15)":"rgba(51,65,85,0.4)",color:r?"rgb(52,211,153)":"rgba(148,163,184,0.7)",border:`1px solid ${r?"rgba(52,211,153,0.3)":"rgba(51,65,85,0.4)"}`},children:r?"✓ copied":"copy"})}function c({lines:e,copyText:t}){return(0,s.jsxs)("div",{className:"rounded-xl overflow-hidden",style:{background:"rgba(2,6,23,0.8)",border:"1px solid rgba(51,65,85,0.5)",boxShadow:"0 4px 24px rgba(2,6,23,0.3), inset 0 1px 0 rgba(255,255,255,0.04)"},children:[(0,s.jsxs)("div",{className:"flex items-center justify-between px-4 py-2.5",style:{borderBottom:"1px solid rgba(51,65,85,0.3)"},children:[(0,s.jsxs)("div",{className:"flex gap-1.5",children:[(0,s.jsx)("div",{className:"w-2.5 h-2.5 rounded-full",style:{background:"rgba(239,68,68,0.4)"}}),(0,s.jsx)("div",{className:"w-2.5 h-2.5 rounded-full",style:{background:"rgba(245,158,11,0.4)"}}),(0,s.jsx)("div",{className:"w-2.5 h-2.5 rounded-full",style:{background:"rgba(52,211,153,0.4)"}})]}),t&&(0,s.jsx)(n,{text:t})]}),(0,s.jsx)("pre",{className:"px-4 py-3 text-xs font-mono leading-relaxed overflow-x-auto whitespace-pre-wrap break-all",children:e.map((e,t)=>(0,s.jsx)("div",{children:e.startsWith("#")?(0,s.jsx)("span",{style:{color:"rgba(71,85,105,0.7)"},children:e}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{style:{color:"rgba(52,211,153,0.6)"},children:"$ "}),(0,s.jsx)("span",{style:{color:"rgb(203,213,225)"},children:e})]})},t))})]})}function d({id:e,children:t,className:r=""}){return(0,s.jsx)("section",{id:e,className:`w-full max-w-5xl mx-auto px-6 ${r}`,children:t})}function x({children:e}){return(0,s.jsx)("p",{className:"text-xs font-semibold text-slate-500 uppercase tracking-widest mb-4",children:e})}function p({color:e,label:t,title:a,description:l,href:o}){return(0,s.jsxs)("div",{className:"relative flex flex-col gap-4 p-6 rounded-2xl",style:{background:"#0f172a",border:`1px solid rgba(${e},0.25)`,boxShadow:`0 0 40px rgba(${e},0.04), 0 4px 16px rgba(15,23,42,.1)`},children:[(0,s.jsx)("div",{className:"absolute top-0 left-8 right-8 h-px",style:{background:`linear-gradient(90deg, transparent, rgba(${e},0.5), transparent)`}}),(0,s.jsx)("div",{className:"text-xs font-bold tracking-widest font-mono",style:{color:`rgb(${e})`},children:t}),(0,s.jsx)("h3",{className:"text-base font-semibold text-slate-200",children:a}),(0,s.jsx)("p",{className:"text-sm text-slate-500 leading-relaxed",children:l}),(0,s.jsxs)(r.default,{href:o,className:"text-xs font-semibold transition-colors mt-auto",style:{color:`rgb(${e})`},children:["See ",t," in your code →"]})]})}function m({n:e,title:t,children:r}){return(0,s.jsxs)("div",{className:"flex flex-col gap-4 p-6 rounded-2xl",style:{background:"#0f172a",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,s.jsx)("div",{className:"w-8 h-8 rounded-full flex items-center justify-center text-sm font-bold",style:{background:"rgba(14,165,233,0.15)",color:"rgb(56,189,248)",border:"1px solid rgba(14,165,233,0.3)"},children:e}),(0,s.jsx)("h3",{className:"text-base font-semibold text-slate-200",children:t}),r]})}function g({name:e,price:t,desc:a,features:l,cta:o,ctaHref:i,accent:n,dimCta:c}){return(0,s.jsxs)("div",{className:"flex flex-col gap-4 p-6 rounded-2xl",style:{background:"#0f172a",border:`1px solid rgba(${n},0.2)`},children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-xs font-semibold text-slate-500 uppercase tracking-widest",children:e}),(0,s.jsx)("p",{className:"text-3xl font-bold text-slate-100 mt-1",children:t}),(0,s.jsx)("p",{className:"text-xs text-slate-600 mt-0.5",children:a})]}),(0,s.jsx)("ul",{className:"flex flex-col gap-1.5",children:l.map(e=>(0,s.jsxs)("li",{className:"text-xs text-slate-500 flex gap-1.5",children:[(0,s.jsx)("span",{style:{color:`rgb(${n})`},children:"✦"}),e]},e))}),c?(0,s.jsx)("div",{className:"text-xs text-center py-2 rounded-lg text-slate-600",style:{background:"rgba(51,65,85,0.2)",border:"1px solid rgba(51,65,85,0.3)"},children:o}):(0,s.jsx)(r.default,{href:i,target:i.startsWith("http")?"_blank":void 0,rel:i.startsWith("http")?"noopener noreferrer":void 0,className:"text-xs text-center py-2.5 rounded-lg font-semibold transition-all",style:{background:`rgba(${n},0.12)`,color:`rgb(${n})`,border:`1px solid rgba(${n},0.3)`},children:o})]})}let h=[{q:"Is prism0x2A really local-first?",a:"Yes. All code analysis happens on your machine. We never see your codebase, your prompts, or your API key. The only network calls are: (a) license validation to Lemonsqueezy (every 30 days), and (b) your own LLM calls using YOUR API key."},{q:"What's the LOC limit on Free?",a:"50,000 lines of source code per project. Excludes node_modules, generated code, and build artifacts. Above 50k, Free shows partial analysis — Pro removes the limit entirely."},{q:"Do I need to bring my own LLM API key?",a:"Yes. prism0x2A uses YOUR Anthropic API key (or any compatible provider). This means you control your costs and your data. Free tier doesn't use LLMs at all — static analysis only."},{q:"What's the difference between prism0x2A and Cursor/Copilot?",a:"Cursor/Copilot generate code. prism0x2A makes you understand code (yours or AI-generated). Complementary, not competing. Use them together — let Cursor write it, let prism0x2A make you own it."},{q:"Why hex names?",a:"0x2A is hex for 42. 0x2B is hex for 43 — and yes, '2B or not 2B' is intentional. Some easter eggs write themselves."},{q:"Monorepo support?",a:"Yes, Pro tier. pnpm/npm/yarn workspaces, Lerna, Nx, and Turborepo are auto-detected. Each workspace gets its own scan context; aggregate insights span the full monorepo."},{q:"Can I cancel anytime?",a:"Yes. Subscriptions are monthly or yearly. Cancel via your Lemonsqueezy customer portal. Your dashboard works for the rest of your billing period, then reverts to Free tier."},{q:"Is there an enterprise plan?",a:"Yes. Custom pricing, self-hosted option, SLA. Contact us via GitHub or the Lemonsqueezy portal."},{q:"What's the Blueprint Explorer?",a:"Five interactive views of your codebase: List (files ranked by heat/coverage), Graph (import graph with dagre layout), Zones (grouped by directory), Wire (Next.js layout hierarchy), and Flow (page-navigation graph). All auto-generated from your code. Live-updated on every rescan. Pro tier."},{q:"Can I use this on a 1M-LOC codebase?",a:"Yes, Pro tier removes the LOC limit entirely. Pre-launch benchmark: ~5s initial scan for 1,000 files, <500ms incremental updates using hasSourceChanged() detection. Monorepo workspaces are scanned in parallel."},{q:"What's Architect Mode?",a:"Ask your codebase questions using your own LLM API key. Architect Mode uses your blueprint data to answer questions, explain modules, and suggest refactors — grounded in your actual architecture, not generic AI guesses. Like having a senior engineer who has read every file. Rolling out in Pro tier (v0.11+)."}];e.s(["LandingPage",0,function(){return(0,s.jsxs)("div",{className:"flex flex-col min-h-screen",style:{background:"#020617"},children:[(0,s.jsx)(l,{}),(0,s.jsx)("section",{className:"w-full min-h-screen flex items-center pt-14",children:(0,s.jsxs)("div",{className:"w-full max-w-5xl mx-auto px-6 py-20 grid grid-cols-1 lg:grid-cols-2 gap-12 items-center",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-7",children:[(0,s.jsxs)("div",{className:"inline-flex self-start items-center gap-2 text-xs px-3 py-1 rounded-full",style:{background:"rgba(14,165,233,0.1)",color:"rgb(56,189,248)",border:"1px solid rgba(14,165,233,0.25)"},children:[(0,s.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-sky-400 inline-block animate-pulse"}),"v","0.12.0"," · now available"]}),(0,s.jsxs)("div",{children:[(0,s.jsxs)("h1",{className:"text-5xl sm:text-6xl font-bold tracking-tight text-slate-100 leading-none",children:["prism",(0,s.jsx)("span",{className:"font-mono text-sky-500",children:"0x2A"})]}),(0,s.jsx)("p",{className:"mt-4 text-2xl font-medium text-slate-300 leading-snug",children:"The architecture map your codebase actually has."}),(0,s.jsx)("p",{className:"mt-2 text-base text-slate-500 leading-relaxed",children:"Auto-generated. Live-updated. Local-first."}),(0,s.jsx)("p",{className:"mt-1 text-sm font-mono leading-relaxed",style:{color:"rgba(167,139,250,0.7)"},children:"Like LeanIX, but generated from your code."})]}),(0,s.jsxs)("div",{id:"quickstart",className:"flex flex-col gap-2",children:[(0,s.jsx)("p",{className:"text-xs text-slate-600 font-mono uppercase tracking-widest",children:"Install in 10 seconds"}),(0,s.jsx)(c,{lines:["npm install --save-dev prism0x2a","npx prism dev"],copyText:"npm install --save-dev prism0x2a"})]}),(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-3",children:[(0,s.jsx)(r.default,{href:"#quickstart",className:"px-5 py-2.5 rounded-xl text-sm font-semibold transition-all",style:{background:"rgb(14,165,233)",color:"#020617"},children:"Get Started Free →"}),(0,s.jsx)(r.default,{href:"/pricing",className:"px-5 py-2.5 rounded-xl text-sm font-semibold transition-all",style:{background:"transparent",color:"rgb(148,163,184)",border:"1px solid rgba(51,65,85,0.5)"},children:"View Pricing →"})]}),(0,s.jsxs)("p",{className:"text-xs text-slate-700 font-mono",children:["v","0.12.0"," · MIT Engine + Source-Available Dashboard · €0 to start"]})]}),(0,s.jsx)("div",{className:"flex items-center justify-center",children:(0,s.jsx)(i,{})})]})}),(0,s.jsxs)(d,{id:"explorer",className:"py-24",children:[(0,s.jsx)(x,{children:"Blueprint Explorer"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight",children:"Your codebase, mapped. Five ways."}),(0,s.jsx)("p",{className:"mt-3 text-slate-500 max-w-xl leading-relaxed",children:"Pro tier unlocks 5 interactive views into your architecture — generated fresh from your code on every scan."}),(0,s.jsx)("div",{className:"mt-10 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4",children:[{icon:"≡",view:"List View",color:"59,130,246",desc:"Every file ranked by heat score, coverage, and import density. Sort, filter, inspect."},{icon:"⬡",view:"Graph View",color:"99,102,241",desc:"Interactive import graph with dagre layout. Cycles glow red. Click any node to inspect."},{icon:"⊞",view:"Zones View",color:"245,158,11",desc:"Files grouped by directory zone. Heat-sorted cards — spot your riskiest areas at a glance."},{icon:"◫",view:"Wire View",color:"16,185,129",desc:"Next.js layout hierarchy as nested blocks. See how your route tree nests at a glance."},{icon:"→",view:"Flow View",color:"167,139,250",desc:"Page-navigation graph. Routes as nodes, links as edges. Understand user journeys in code."},{icon:"✦",view:"Pro · €39/mo",color:"148,163,184",desc:"All 5 views + unlimited LOC + monorepo + LLM insights. Upgrade once, keep clarity forever.",isCta:!0}].map(({icon:e,view:t,color:a,desc:l,isCta:o})=>(0,s.jsxs)("div",{className:"flex flex-col gap-3 p-5 rounded-2xl",style:{background:o?"rgba(14,165,233,0.05)":"#0f172a",border:o?"1px solid rgba(14,165,233,0.25)":`1px solid rgba(${a},0.2)`},children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"w-8 h-8 rounded-lg flex items-center justify-center text-sm font-bold font-mono flex-shrink-0",style:{background:`rgba(${a},0.12)`,color:`rgb(${a})`},children:e}),(0,s.jsx)("span",{className:"text-sm font-semibold text-slate-200",children:t})]}),(0,s.jsx)("p",{className:"text-xs text-slate-500 leading-relaxed",children:l}),o&&(0,s.jsx)(r.default,{href:"/pricing",className:"text-xs font-semibold mt-auto",style:{color:"rgb(56,189,248)"},children:"Upgrade to Pro →"})]},t))}),(0,s.jsxs)("div",{className:"mt-8 flex flex-wrap gap-3",children:[(0,s.jsx)(r.default,{href:"/pricing",className:"px-5 py-2.5 rounded-xl text-sm font-semibold",style:{background:"rgba(59,130,246,0.15)",color:"rgb(96,165,250)",border:"1px solid rgba(59,130,246,0.3)"},children:"Upgrade to Pro — €39/mo →"}),(0,s.jsx)(r.default,{href:"#quickstart",className:"px-5 py-2.5 rounded-xl text-sm font-semibold",style:{background:"transparent",color:"rgb(148,163,184)",border:"1px solid rgba(51,65,85,0.4)"},children:"Try Free — limited features"})]})]}),(0,s.jsxs)(d,{id:"architect",className:"py-24",children:[(0,s.jsx)(x,{children:"Architect Mode"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight",children:"Ask your codebase anything."}),(0,s.jsx)("p",{className:"mt-3 text-slate-500 max-w-xl leading-relaxed",children:"Architect Mode uses your blueprint data + your LLM key to answer questions, explain modules, and suggest refactors — grounded in your actual code structure."}),(0,s.jsxs)("div",{className:"mt-10 grid grid-cols-1 lg:grid-cols-2 gap-8 items-start",children:[(0,s.jsxs)("div",{className:"rounded-2xl overflow-hidden",style:{background:"#0f172a",border:"1px solid rgba(167,139,250,0.2)"},children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 px-4 py-3 border-b",style:{borderColor:"rgba(51,65,85,0.4)",background:"rgba(8,12,24,0.6)"},children:[(0,s.jsx)("span",{className:"text-[10px] font-mono font-bold tracking-widest",style:{color:"rgb(167,139,250)"},children:"ARCHITECT"}),(0,s.jsx)("span",{className:"text-[10px] text-slate-600 font-mono",children:"· Pro tier"})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-3 p-4",children:[(0,s.jsx)("div",{className:"flex justify-end",children:(0,s.jsx)("div",{className:"max-w-xs rounded-xl rounded-tr-sm px-4 py-2.5 text-xs text-slate-200",style:{background:"rgba(59,130,246,0.15)",border:"1px solid rgba(59,130,246,0.25)"},children:"Where should I add the new user-permission system?"})}),(0,s.jsxs)("div",{className:"flex gap-2 items-start",children:[(0,s.jsx)("span",{className:"w-5 h-5 rounded flex items-center justify-center text-[9px] font-bold flex-shrink-0 mt-0.5",style:{background:"rgba(167,139,250,0.15)",color:"rgb(167,139,250)"},children:"✦"}),(0,s.jsxs)("div",{className:"rounded-xl rounded-tl-sm px-4 py-2.5 text-xs text-slate-300 leading-relaxed",style:{background:"rgba(15,23,42,0.8)",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,s.jsxs)("p",{children:["Based on your blueprint, I’d recommend extending ",(0,s.jsx)("span",{className:"font-mono text-violet-300",children:"lib/auth/middleware.ts"})," alongside the existing ",(0,s.jsx)("span",{className:"font-mono text-violet-300",children:"ROLE_PERMISSIONS"})," map in ",(0,s.jsx)("span",{className:"font-mono text-violet-300",children:"lib/auth/roles.ts"}),"."]}),(0,s.jsxs)("p",{className:"mt-2",children:["Your ",(0,s.jsx)("span",{className:"font-mono text-sky-300",children:"auth/"})," zone has 3 files, 0 import cycles, and 82% coverage — a safe extension point. Avoid touching ",(0,s.jsx)("span",{className:"font-mono text-orange-300",children:"api/users/route.ts"})," directly (heat: 87.4, cyclic)."]})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2 mt-2 rounded-xl px-3 py-2",style:{background:"rgba(2,6,23,0.6)",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,s.jsx)("span",{className:"text-xs text-slate-600 flex-1 font-mono",children:"Ask anything about your codebase…"}),(0,s.jsx)("span",{className:"text-[10px] px-2 py-0.5 rounded font-semibold",style:{background:"rgba(167,139,250,0.15)",color:"rgb(167,139,250)"},children:"Send"})]})]})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-4",children:[[{icon:"💬",title:"Ask Architect",desc:"Natural-language questions grounded in your blueprint. References real files and hot-zones."},{icon:"🔍",title:"Explain Module",desc:"Deep-dive on any file — doc summary, symbol list, incoming/outgoing deps, refactor risk."},{icon:"⚡",title:"Suggest Refactors",desc:"Auto-scan for cycles, coverage gaps, and hot-spots. Prioritised by severity."},{icon:"🔑",title:"Your key, your data",desc:"Bring your own Anthropic key. No data leaves your machine. You control the cost."}].map(({icon:e,title:t,desc:r})=>(0,s.jsxs)("div",{className:"flex gap-4 items-start p-4 rounded-xl",style:{background:"#0f172a",border:"1px solid rgba(51,65,85,0.35)"},children:[(0,s.jsx)("span",{className:"text-xl flex-shrink-0",children:e}),(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-semibold text-slate-200",children:t}),(0,s.jsx)("p",{className:"text-xs text-slate-500 mt-0.5 leading-relaxed",children:r})]})]},t)),(0,s.jsxs)("div",{className:"flex items-center gap-3 px-4 py-3 rounded-xl mt-2",style:{background:"rgba(167,139,250,0.06)",border:"1px solid rgba(167,139,250,0.2)"},children:[(0,s.jsx)("span",{className:"text-xs font-mono",style:{color:"rgb(167,139,250)"},children:"✦"}),(0,s.jsxs)("p",{className:"text-xs text-slate-400",children:[(0,s.jsx)("span",{className:"font-semibold text-violet-300",children:"Coming in Pro tier (v0.11+)"})," — Architect Mode is rolling out now. Blueprint must be generated first."]})]})]})]})]}),(0,s.jsxs)(d,{className:"py-24",children:[(0,s.jsx)(x,{children:"The problem"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight max-w-xl",children:"Your codebase is bigger than it was."}),(0,s.jsx)("p",{className:"mt-4 text-slate-500 max-w-lg leading-relaxed",children:"AI-generated code is great. Understanding it is harder. prism0x2A makes your codebase legible to you again."}),(0,s.jsx)("div",{className:"mt-12 grid grid-cols-1 sm:grid-cols-3 gap-4",children:[{icon:"⌨️",headline:"Cursor writes it.",body:"You ship fast. Features land. The AI keeps up with your ideas."},{icon:"🤖",headline:"Claude reviews it.",body:"You get the diff, the explanation, the confidence to merge."},{icon:"✦",headline:"prism0x2A makes you own it.",body:"Coverage gaps, import cycles, cross-layer context — you actually understand what's in production.",accent:!0}].map(({icon:e,headline:t,body:r,accent:a})=>(0,s.jsxs)("div",{className:"flex flex-col gap-4 p-6 rounded-2xl",style:{background:a?"rgba(14,165,233,0.06)":"#0f172a",border:a?"1px solid rgba(14,165,233,0.2)":"1px solid rgba(51,65,85,0.4)"},children:[(0,s.jsx)("span",{className:"text-2xl",children:e}),(0,s.jsx)("h3",{className:"text-base font-semibold text-slate-200",children:t}),(0,s.jsx)("p",{className:"text-sm text-slate-500 leading-relaxed",children:r})]},t))})]}),(0,s.jsxs)(d,{id:"features",className:"py-24",children:[(0,s.jsx)(x,{children:"How it works"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight",children:"Three steps to clarity."}),(0,s.jsxs)("div",{className:"mt-12 grid grid-cols-1 sm:grid-cols-3 gap-4",children:[(0,s.jsxs)(m,{n:"1",title:"Install in seconds",children:[(0,s.jsx)(c,{lines:["npm install --save-dev prism0x2a"],copyText:"npm install --save-dev prism0x2a"}),(0,s.jsx)("p",{className:"text-sm text-slate-500",children:"No cloud. No account. One package."})]}),(0,s.jsxs)(m,{n:"2",title:"Scan your codebase",children:[(0,s.jsx)(c,{lines:["npx prism dev"],copyText:"npx prism dev"}),(0,s.jsx)("p",{className:"text-sm text-slate-500",children:"Dashboard opens at localhost:3001. Cycles, coverage, imports — instantly."})]}),(0,s.jsxs)(m,{n:"3",title:"Get answers",children:[(0,s.jsxs)("div",{className:"rounded-lg px-4 py-3 text-xs font-mono text-slate-400",style:{background:"rgba(2,6,23,0.6)",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,s.jsx)("div",{style:{color:"rgb(52,211,153)"},children:"✓ 0 import cycles"}),(0,s.jsx)("div",{style:{color:"rgb(251,191,36)"},children:"⚠ 14 uncovered branches"}),(0,s.jsx)("div",{style:{color:"rgb(96,165,250)"},children:"✦ 3 AI insights ready"})]}),(0,s.jsx)("p",{className:"text-sm text-slate-500",children:"Activate Pro for LLM-powered insights, monorepo support, and custom queries."})]})]}),(0,s.jsx)("p",{className:"mt-8 text-sm text-slate-600 text-center font-mono",children:"All local. All offline-capable. No data leaves your machine."})]}),(0,s.jsxs)(d,{className:"py-24",children:[(0,s.jsx)(x,{children:"The full spectrum"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight",children:"Code intelligence, all frequencies."}),(0,s.jsx)("p",{className:"mt-3 text-slate-500 max-w-lg leading-relaxed",children:"BLUE leads with Blueprint Explorer — architecture mapping that replaces tools like LeanIX for codebases."}),(0,s.jsxs)("div",{className:"mt-12 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4",children:[(0,s.jsx)(p,{color:"59,130,246",label:"BLUE",title:"Sessions + Blueprint Explorer",description:"LLM-driven code investigations + 5-view architecture mapping (List, Graph, Zones, Wire, Flow). Blueprint Explorer is Pro-tier.",href:"#explorer"}),(0,s.jsx)(p,{color:"245,158,11",label:"AMBER",title:"Coverage + Files + Registry",description:"See what's tested, what's not, and where your business logic lives. Coverage hot-spots, capability registry, file metadata.",href:"#quickstart"}),(0,s.jsx)(p,{color:"16,185,129",label:"GREEN",title:"Insights + Cross-Layer + Queries",description:"Auto-discover patterns across your codebase. Write custom queries. Get cross-layer insights spanning sessions, coverage, and structure.",href:"#quickstart"}),(0,s.jsxs)("div",{className:"relative flex flex-col gap-4 p-6 rounded-2xl",style:{background:"rgba(167,139,250,0.04)",border:"1px solid rgba(167,139,250,0.25)",boxShadow:"0 0 40px rgba(167,139,250,0.04)"},children:[(0,s.jsx)("div",{className:"absolute top-0 left-8 right-8 h-px",style:{background:"linear-gradient(90deg, transparent, rgba(167,139,250,0.5), transparent)"}}),(0,s.jsx)("div",{className:"text-xs font-bold tracking-widest font-mono",style:{color:"rgb(167,139,250)"},children:"BLUEPRINT EXPLORER"}),(0,s.jsx)("h3",{className:"text-base font-semibold text-slate-200",children:"5 Architecture Views"}),(0,s.jsx)("p",{className:"text-sm text-slate-500 leading-relaxed",children:"List · Graph · Zones · Wire · Flow. Generated from your code. Live-updated on every rescan."}),(0,s.jsx)("p",{className:"text-xs font-mono mt-auto",style:{color:"rgba(167,139,250,0.6)"},children:"Pro tier — €39/mo"}),(0,s.jsx)(r.default,{href:"/pricing",className:"text-xs font-semibold mt-1",style:{color:"rgb(167,139,250)"},children:"Upgrade to Pro →"})]})]})]}),(0,s.jsx)(d,{className:"py-24",children:(0,s.jsxs)("div",{className:"relative rounded-2xl p-8 sm:p-12 overflow-hidden",style:{background:"linear-gradient(135deg, rgba(204,102,51,0.06), rgba(232,72,153,0.04))",border:"1px solid rgba(204,102,51,0.2)"},children:[(0,s.jsx)("div",{className:"absolute top-0 left-1/4 right-1/4 h-px",style:{background:"linear-gradient(90deg, transparent, rgba(204,102,51,0.5), transparent)"}}),(0,s.jsxs)("div",{className:"flex flex-col sm:flex-row gap-8 items-start",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-5 flex-1",children:[(0,s.jsx)("div",{children:(0,s.jsx)("span",{className:"text-xs font-semibold px-2.5 py-1 rounded-full",style:{background:"rgba(204,102,51,0.15)",color:"rgb(251,146,60)",border:"1px solid rgba(204,102,51,0.3)"},children:"Early Access — Coming Soon"})}),(0,s.jsxs)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight",children:["Coming Soon: forge",(0,s.jsx)("span",{className:"font-mono",children:"0x2B"})]}),(0,s.jsx)("p",{className:"text-lg text-slate-400 leading-relaxed",children:"An architect AND a marketing department, in a box."}),(0,s.jsx)("p",{className:"text-sm text-slate-500 leading-relaxed italic font-mono",children:"2B or not 2B."}),(0,s.jsx)("ul",{className:"flex flex-col gap-2.5",children:["Auto-generated release notes from your prism0x2A sessions","Blog posts from technical changes","Social copy from feature ships","Internal updates from code-health trends"].map(e=>(0,s.jsxs)("li",{className:"flex items-start gap-2 text-sm text-slate-400",children:[(0,s.jsx)("span",{style:{color:"rgb(251,146,60)"},children:"→"}),e]},e))}),(0,s.jsx)("p",{className:"text-sm text-slate-500 leading-relaxed",children:"Use prism0x2A to understand your code. Use forge0x2B to tell the story."}),(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/forge0x2B",target:"_blank",rel:"noopener noreferrer",className:"self-start text-sm font-semibold px-4 py-2.5 rounded-xl transition-all",style:{background:"rgba(204,102,51,0.12)",color:"rgb(251,146,60)",border:"1px solid rgba(204,102,51,0.3)"},children:"Watch on GitHub →"})]}),(0,s.jsxs)("div",{className:"flex-shrink-0 w-full sm:w-64 rounded-xl p-5 flex flex-col gap-4",style:{background:"rgba(8,16,36,0.6)",border:"1px solid rgba(167,139,250,0.25)"},children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-xs font-semibold text-violet-400 uppercase tracking-widest",children:"Spectrum 0x55 Bundle"}),(0,s.jsxs)("p",{className:"text-2xl font-bold text-slate-100 mt-1",children:["€49",(0,s.jsx)("span",{className:"text-sm font-normal text-slate-500",children:"/mo"})]}),(0,s.jsx)("p",{className:"text-xs text-slate-600 mt-0.5",children:"save €19/mo vs separate"})]}),(0,s.jsxs)("ul",{className:"flex flex-col gap-1.5 text-xs text-slate-500",children:[(0,s.jsxs)("li",{className:"flex gap-1.5",children:[(0,s.jsx)("span",{className:"text-violet-400",children:"✦"}),"prism0x2A Pro — now"]}),(0,s.jsxs)("li",{className:"flex gap-1.5",children:[(0,s.jsx)("span",{className:"text-orange-400",children:"✦"}),"forge0x2B — unlocks at GA"]}),(0,s.jsxs)("li",{className:"flex gap-1.5",children:[(0,s.jsx)("span",{className:"text-emerald-400",children:"✦"}),"Early access pricing locked"]})]}),(0,s.jsx)(r.default,{href:"https://prism0x2a.lemonsqueezy.com/checkout/buy/64d25b45-7c4a-410d-b4aa-7504f98ab5f7",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-center py-2 rounded-lg font-semibold",style:{background:"rgba(99,102,241,0.15)",color:"rgb(167,139,250)",border:"1px solid rgba(167,139,250,0.3)"},children:"Get Spectrum 0x55 →"})]})]})]})}),(0,s.jsxs)(d,{className:"py-24",children:[(0,s.jsx)(x,{children:"Pricing"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight",children:"Pricing that respects your wallet."}),(0,s.jsx)("p",{className:"mt-2 text-slate-500",children:"If you can afford Cursor or Claude Max, you can afford to know what your code does."}),(0,s.jsxs)("div",{className:"mt-8 flex flex-col sm:flex-row items-start sm:items-center justify-between gap-4 px-5 py-4 rounded-xl",style:{background:"linear-gradient(90deg, rgba(99,102,241,0.08), rgba(167,139,250,0.05))",border:"1px solid rgba(167,139,250,0.3)"},children:[(0,s.jsxs)("div",{className:"flex items-center gap-3",children:[(0,s.jsx)("span",{className:"text-xl",children:"✦"}),(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-sm font-semibold text-violet-300",children:"Spectrum 0x55 Bundle — Best Value"}),(0,s.jsx)("p",{className:"text-xs text-slate-500 mt-0.5",children:"prism0x2A Pro + forge0x2B Pro · save €19/mo vs separate"})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-4",children:[(0,s.jsxs)("div",{className:"text-right",children:[(0,s.jsxs)("p",{className:"text-2xl font-bold text-slate-100",children:["€49",(0,s.jsx)("span",{className:"text-sm font-normal text-slate-500",children:"/mo"})]}),(0,s.jsx)("p",{className:"text-[10px] text-slate-600 line-through",children:"€68/mo separate"})]}),(0,s.jsx)(r.default,{href:"https://prism0x2a.lemonsqueezy.com/checkout/buy/64d25b45-7c4a-410d-b4aa-7504f98ab5f7",target:"_blank",rel:"noopener noreferrer",className:"text-xs font-semibold px-4 py-2 rounded-lg whitespace-nowrap",style:{background:"rgba(167,139,250,0.15)",color:"rgb(167,139,250)",border:"1px solid rgba(167,139,250,0.3)"},children:"Get Spectrum →"})]})]}),(0,s.jsxs)("div",{className:"mt-6 grid grid-cols-1 sm:grid-cols-3 gap-4",children:[(0,s.jsx)(g,{name:"Free",price:"€0",desc:"forever",features:["Up to 50k LOC","Static analysis","Import cycles","1 project"],cta:"Start Free",ctaHref:"#quickstart",accent:"148,163,184"}),(0,s.jsx)(g,{name:"Pro",price:"€39",desc:"/mo · save 17% yearly",features:["Unlimited LOC","Blueprint Explorer (5 views)","LLM insights","Monorepo support","Custom queries"],cta:"Get Pro",ctaHref:"https://prism0x2a.lemonsqueezy.com/checkout/buy/a9097951-5d54-438c-89ef-3e093d88f6c6",accent:"59,130,246"}),(0,s.jsx)(g,{name:"Spectrum 0x55",price:"€49",desc:"/mo · Pro + forge0x2B · save €19",features:["Everything in Pro","forge0x2B Pro when GA","Best value bundle","Early access price locked"],cta:"Get Spectrum 0x55",ctaHref:"https://prism0x2a.lemonsqueezy.com/checkout/buy/64d25b45-7c4a-410d-b4aa-7504f98ab5f7",accent:"167,139,250"})]}),(0,s.jsxs)("div",{className:"mt-8 flex flex-col sm:flex-row items-center justify-between gap-4",children:[(0,s.jsx)(r.default,{href:"/pricing",className:"text-sm text-indigo-400 hover:text-indigo-300 transition-colors",children:"View full pricing + Team plan →"}),(0,s.jsxs)("div",{className:"flex items-center gap-4 text-xs text-slate-700",children:[(0,s.jsx)("span",{children:"Powered by Lemon Squeezy"}),(0,s.jsx)("span",{children:"EU VAT compliant"}),(0,s.jsx)("span",{children:"Cancel anytime"})]})]})]}),(0,s.jsxs)(d,{className:"py-24",children:[(0,s.jsx)(x,{children:"FAQ"}),(0,s.jsx)("h2",{className:"text-3xl font-bold text-slate-100 tracking-tight mb-8",children:"Frequently asked questions."}),(0,s.jsx)("div",{className:"flex flex-col gap-3 max-w-2xl",children:h.map(({q:e,a:t})=>(0,s.jsxs)("details",{className:"group rounded-xl px-6 py-4",style:{background:"#0f172a",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,s.jsxs)("summary",{className:"text-sm font-medium text-slate-300 cursor-pointer list-none flex items-center justify-between gap-3",children:[e,(0,s.jsx)("span",{className:"text-slate-600 group-open:rotate-180 transition-transform flex-shrink-0 text-xs",children:"▼"})]}),(0,s.jsx)("p",{className:"mt-3 text-sm text-slate-500 leading-relaxed",children:t})]},e))})]}),(0,s.jsx)(d,{className:"py-24",children:(0,s.jsxs)("div",{className:"rounded-2xl p-10 sm:p-16 text-center flex flex-col items-center gap-8",style:{background:"linear-gradient(135deg, rgba(14,165,233,0.06), rgba(99,102,241,0.04))",border:"1px solid rgba(14,165,233,0.15)"},children:[(0,s.jsx)("h2",{className:"text-3xl sm:text-4xl font-bold text-slate-100 tracking-tight",children:"Get started in 60 seconds."}),(0,s.jsxs)("div",{className:"w-full max-w-lg",children:[(0,s.jsx)(c,{lines:["# In your TypeScript / React project root:","npm install --save-dev prism0x2a","npx prism init","npm run prism"],copyText:"npm install --save-dev prism0x2a"}),(0,s.jsx)("p",{className:"mt-3 text-xs text-slate-600 font-mono",children:"Dashboard opens at http://localhost:3001 scanning your project."})]}),(0,s.jsxs)("div",{className:"flex flex-wrap justify-center gap-4",children:[(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/prism0x2A",target:"_blank",rel:"noopener noreferrer",className:"text-sm font-medium text-slate-400 hover:text-slate-200 transition-colors",children:"Read the docs →"}),(0,s.jsx)(r.default,{href:"https://github.com/dadenjo/prism0x2A",target:"_blank",rel:"noopener noreferrer",className:"text-sm font-medium text-slate-400 hover:text-slate-200 transition-colors",children:"View on GitHub →"})]}),(0,s.jsx)("p",{className:"text-xs text-slate-700 font-mono",children:"Built on a 42nd birthday. 0x2A = 42. The answer to all questions."})]})}),(0,s.jsx)(o,{})]})}],22612)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,80949,e=>{"use strict";var t=e.i(71645),s=e.i(25010);e.s(["useExplorerBlueprint",0,function(){let{tq:e,ready:l}=(0,s.useTargetPath)(),a=new URLSearchParams(e.slice(1)).get("target")??"",[r,n]=(0,t.useState)(null),[i,o]=(0,t.useState)(!1),[c,x]=(0,t.useState)(null),[d,p]=(0,t.useState)(!1),[h,u]=(0,t.useState)(!1),[m,b]=(0,t.useState)(!1);return(0,t.useEffect)(()=>{l&&(o(!0),fetch(`/api/blue/explorer${e}`).then(e=>e.json()).then(({data:t,_isDemo:s,_proGated:l})=>{n(t??null),u(!!s),b(!!l),!t?.generatedAt||s||l||fetch(`/api/blue/explorer/outdated${e}&since=${encodeURIComponent(t.generatedAt)}`).then(e=>e.json()).then(({outdated:e})=>p(!!e)).catch(()=>{})}).catch(()=>x("Failed to load blueprint")).finally(()=>o(!1)))},[l]),{data:r,setData:n,loading:i,error:c,outdated:d,setOutdated:p,target:a,ready:l,isDemo:h,isProGated:m}}])},89458,e=>{"use strict";var t=e.i(43476),s=e.i(22016),l=e.i(18566),a=e.i(71645);function r({target:e,onComplete:s}){let[l,n]=(0,a.useState)(!1);async function i(){n(!0);try{let t=await fetch("/api/blue/explorer",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({target:e})}),l=await t.json();t.ok&&l.data&&s(l.data)}finally{n(!1)}}return(0,t.jsx)("button",{onClick:i,disabled:l,className:"text-xs px-3 py-1 rounded-md font-medium transition-all disabled:opacity-50",style:{background:"rgba(59,130,246,0.15)",color:"rgb(96,165,250)",border:"1px solid rgba(59,130,246,0.25)"},children:l?"Scanning…":"↺ Rescan"})}function n({mode:e,onChange:s}){return(0,t.jsx)("div",{className:"flex items-center rounded-lg overflow-hidden flex-shrink-0",style:{border:"1px solid rgba(51,65,85,0.5)",background:"rgba(15,23,42,0.6)"},children:["simple","expert"].map(l=>(0,t.jsx)("button",{onClick:()=>s(l),className:"px-2.5 py-1 text-[10px] font-semibold capitalize transition-all",style:e===l?{background:"rgba(59,130,246,0.2)",color:"rgb(96,165,250)"}:{background:"transparent",color:"rgb(71,85,105)"},children:"simple"===l?"Simple":"Expert"},l))})}let i=[{href:"/blue/explorer",label:"List",exact:!0},{href:"/blue/explorer/graph",label:"Graph",exact:!1},{href:"/blue/explorer/zones",label:"Zones",exact:!1},{href:"/blue/explorer/wire",label:"Wire",exact:!1},{href:"/blue/explorer/flow",label:"Flow",exact:!1},{href:"/blue/explorer/ask",label:"Ask ✦",exact:!1},{href:"/blue/explorer/refactor",label:"Refactor",exact:!1}];e.s(["ExplorerNav",0,function({target:e,outdated:a,onRescan:o,hideRescan:c,viewMode:x,onViewModeChange:d}){let p=(0,l.usePathname)();return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex items-center gap-1 px-4 py-2 border-b flex-shrink-0",style:{borderColor:"rgba(51,65,85,0.4)",background:"rgba(15,23,42,0.5)"},children:[(0,t.jsx)("span",{className:"text-xs font-semibold text-blue-400 font-mono mr-3",children:"BLUE / Explorer"}),i.map(({href:e,label:l,exact:a})=>{let r=a?p===e:p.startsWith(e)&&!p.startsWith("/blue/explorer/file")&&!p.startsWith("/blue/explorer/explain");return(0,t.jsx)(s.default,{href:e,className:"text-xs px-3 py-1 rounded-md transition-colors",style:{background:r?"rgba(59,130,246,0.15)":"transparent",color:r?"rgb(96,165,250)":"rgb(100,116,139)",border:r?"1px solid rgba(59,130,246,0.3)":"1px solid transparent"},children:l},e)}),(0,t.jsx)("div",{className:"flex-1"}),x&&d&&(0,t.jsx)(n,{mode:x,onChange:d}),!c&&(0,t.jsx)(r,{target:e,onComplete:o})]}),a&&(0,t.jsxs)("div",{className:"px-4 py-2 text-xs font-mono flex items-center gap-2 flex-shrink-0 border-b",style:{background:"rgba(120,53,15,0.2)",borderColor:"rgba(120,53,15,0.4)",color:"rgb(251,191,36)"},children:[(0,t.jsx)("span",{children:"⚠"}),(0,t.jsx)("span",{children:"Source files changed since last scan — run ↺ Rescan to update."})]})]})}],89458)},5503,e=>{"use strict";var t=e.i(43476),s=e.i(71645),l=e.i(18566),a=e.i(80949),r=e.i(89458);e.s(["default",0,function(){let{data:e,setData:n,loading:i,outdated:o,setOutdated:c,target:x}=(0,a.useExplorerBlueprint)(),d=(0,l.useSearchParams)().get("path")??"",[p,h]=(0,s.useState)(null),[u,m]=(0,s.useState)(!1),[b,f]=(0,s.useState)(null);async function g(e){m(!0),f(null),h(null);try{let t=await fetch("/api/blue/explorer/explain",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({target:x,modulePath:e})}),s=await t.json();t.ok?h(s.markdown):f(s.error??"Failed")}catch{f("Network error")}finally{m(!1)}}let[j,N]=(0,s.useState)(!1);return!d||!e||j||u||p||(N(!0),g(d)),e?.files.find(e=>e.path===d),(0,t.jsxs)("main",{className:"flex flex-col flex-1 pt-16 h-screen overflow-hidden",children:[(0,t.jsx)(r.ExplorerNav,{target:x,outdated:o,onRescan:function(e){e&&(n(e),c(!1))}}),i&&(0,t.jsx)("div",{className:"flex-1 flex items-center justify-center text-slate-500 text-sm",children:"Loading blueprint…"}),!i&&!e&&(0,t.jsxs)("div",{className:"flex-1 flex flex-col items-center justify-center gap-3 text-center px-6",children:[(0,t.jsx)("span",{className:"text-4xl",children:"🔍"}),(0,t.jsx)("p",{className:"text-sm text-slate-500",children:"No blueprint yet. Run ↺ Rescan first."})]}),!i&&e&&(0,t.jsxs)("div",{className:"flex flex-1 overflow-hidden",children:[(0,t.jsxs)("div",{className:"w-56 flex-shrink-0 border-r overflow-y-auto",style:{borderColor:"rgba(51,65,85,0.3)",background:"rgba(8,12,24,0.6)"},children:[(0,t.jsx)("p",{className:"text-[10px] uppercase tracking-widest text-slate-600 font-semibold px-3 py-3",children:"Choose a module"}),(0,t.jsx)("div",{className:"flex flex-col",children:e.files.sort((e,t)=>t.metrics.heatScore-e.metrics.heatScore).slice(0,30).map(e=>(0,t.jsxs)("button",{onClick:()=>g(e.path),className:"text-left px-3 py-2 text-[10px] font-mono text-slate-500 hover:text-slate-200 hover:bg-slate-800/40 transition-colors border-b border-slate-800/30 truncate",style:{color:e.path===d?"rgb(167,139,250)":void 0},children:[e.path.split("/").pop(),(0,t.jsx)("span",{className:"ml-1 opacity-50",children:e.metrics.heatScore.toFixed(0)})]},e.id))})]}),(0,t.jsxs)("div",{className:"flex-1 overflow-y-auto p-6",children:[!d&&!u&&!p&&(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center h-full gap-3 text-center",children:[(0,t.jsx)("span",{className:"text-4xl",children:"🔍"}),(0,t.jsx)("p",{className:"text-sm text-slate-500",children:"Select a module from the left to explain it."})]}),u&&(0,t.jsxs)("div",{className:"flex items-center gap-2 text-slate-500 text-sm",children:[(0,t.jsx)("span",{className:"animate-pulse",children:"✦"}),(0,t.jsxs)("span",{children:["Explaining ",d.split("/").pop(),"…"]})]}),b&&(0,t.jsx)("p",{className:"text-sm text-red-400",children:b}),p&&!u&&(0,t.jsx)("div",{className:"prose prose-invert prose-sm max-w-none text-slate-300",style:{fontFamily:"inherit"},children:p.split("\n").map((e,s)=>e.startsWith("# ")?(0,t.jsx)("h1",{className:"text-xl font-bold text-slate-100 mb-3",children:e.slice(2)},s):e.startsWith("## ")?(0,t.jsx)("h2",{className:"text-base font-semibold text-slate-200 mt-6 mb-2",children:e.slice(3)},s):e.startsWith("| ")?(0,t.jsx)("p",{className:"text-xs font-mono text-slate-400",children:e},s):e.startsWith("- ")?(0,t.jsxs)("p",{className:"text-xs text-slate-400 ml-2",children:["• ",e.slice(2)]},s):e.startsWith("> ")?(0,t.jsx)("p",{className:"text-xs italic text-slate-500 border-l-2 border-slate-700 pl-3 my-1",children:e.slice(2)},s):e.startsWith("**")?(0,t.jsx)("p",{className:"text-xs font-semibold text-slate-300",children:e.replace(/\*\*(.*?)\*\*/g,"$1")},s):""===e?(0,t.jsx)("div",{className:"h-1"},s):(0,t.jsx)("p",{className:"text-xs text-slate-400 leading-relaxed",children:e},s))})]})]})]})}])}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,80949,e=>{"use strict";var t=e.i(71645),s=e.i(25010);e.s(["useExplorerBlueprint",0,function(){let{tq:e,ready:l}=(0,s.useTargetPath)(),a=new URLSearchParams(e.slice(1)).get("target")??"",[r,n]=(0,t.useState)(null),[o,i]=(0,t.useState)(!1),[c,x]=(0,t.useState)(null),[d,p]=(0,t.useState)(!1),[m,u]=(0,t.useState)(!1),[h,f]=(0,t.useState)(!1);return(0,t.useEffect)(()=>{l&&(i(!0),fetch(`/api/blue/explorer${e}`).then(e=>e.json()).then(({data:t,_isDemo:s,_proGated:l})=>{n(t??null),u(!!s),f(!!l),!t?.generatedAt||s||l||fetch(`/api/blue/explorer/outdated${e}&since=${encodeURIComponent(t.generatedAt)}`).then(e=>e.json()).then(({outdated:e})=>p(!!e)).catch(()=>{})}).catch(()=>x("Failed to load blueprint")).finally(()=>i(!1)))},[l]),{data:r,setData:n,loading:o,error:c,outdated:d,setOutdated:p,target:a,ready:l,isDemo:m,isProGated:h}}])},89458,e=>{"use strict";var t=e.i(43476),s=e.i(22016),l=e.i(18566),a=e.i(71645);function r({target:e,onComplete:s}){let[l,n]=(0,a.useState)(!1);async function o(){n(!0);try{let t=await fetch("/api/blue/explorer",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({target:e})}),l=await t.json();t.ok&&l.data&&s(l.data)}finally{n(!1)}}return(0,t.jsx)("button",{onClick:o,disabled:l,className:"text-xs px-3 py-1 rounded-md font-medium transition-all disabled:opacity-50",style:{background:"rgba(59,130,246,0.15)",color:"rgb(96,165,250)",border:"1px solid rgba(59,130,246,0.25)"},children:l?"Scanning…":"↺ Rescan"})}function n({mode:e,onChange:s}){return(0,t.jsx)("div",{className:"flex items-center rounded-lg overflow-hidden flex-shrink-0",style:{border:"1px solid rgba(51,65,85,0.5)",background:"rgba(15,23,42,0.6)"},children:["simple","expert"].map(l=>(0,t.jsx)("button",{onClick:()=>s(l),className:"px-2.5 py-1 text-[10px] font-semibold capitalize transition-all",style:e===l?{background:"rgba(59,130,246,0.2)",color:"rgb(96,165,250)"}:{background:"transparent",color:"rgb(71,85,105)"},children:"simple"===l?"Simple":"Expert"},l))})}let o=[{href:"/blue/explorer",label:"List",exact:!0},{href:"/blue/explorer/graph",label:"Graph",exact:!1},{href:"/blue/explorer/zones",label:"Zones",exact:!1},{href:"/blue/explorer/wire",label:"Wire",exact:!1},{href:"/blue/explorer/flow",label:"Flow",exact:!1},{href:"/blue/explorer/ask",label:"Ask ✦",exact:!1},{href:"/blue/explorer/refactor",label:"Refactor",exact:!1}];e.s(["ExplorerNav",0,function({target:e,outdated:a,onRescan:i,hideRescan:c,viewMode:x,onViewModeChange:d}){let p=(0,l.usePathname)();return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex items-center gap-1 px-4 py-2 border-b flex-shrink-0",style:{borderColor:"rgba(51,65,85,0.4)",background:"rgba(15,23,42,0.5)"},children:[(0,t.jsx)("span",{className:"text-xs font-semibold text-blue-400 font-mono mr-3",children:"BLUE / Explorer"}),o.map(({href:e,label:l,exact:a})=>{let r=a?p===e:p.startsWith(e)&&!p.startsWith("/blue/explorer/file")&&!p.startsWith("/blue/explorer/explain");return(0,t.jsx)(s.default,{href:e,className:"text-xs px-3 py-1 rounded-md transition-colors",style:{background:r?"rgba(59,130,246,0.15)":"transparent",color:r?"rgb(96,165,250)":"rgb(100,116,139)",border:r?"1px solid rgba(59,130,246,0.3)":"1px solid transparent"},children:l},e)}),(0,t.jsx)("div",{className:"flex-1"}),x&&d&&(0,t.jsx)(n,{mode:x,onChange:d}),!c&&(0,t.jsx)(r,{target:e,onComplete:i})]}),a&&(0,t.jsxs)("div",{className:"px-4 py-2 text-xs font-mono flex items-center gap-2 flex-shrink-0 border-b",style:{background:"rgba(120,53,15,0.2)",borderColor:"rgba(120,53,15,0.4)",color:"rgb(251,191,36)"},children:[(0,t.jsx)("span",{children:"⚠"}),(0,t.jsx)("span",{children:"Source files changed since last scan — run ↺ Rescan to update."})]})]})}],89458)},14845,63308,e=>{"use strict";var t=e.i(43476);function s(e){switch(e){case"component":return"🧩";case"page":return"📄";case"lib":return"📦";case"api":return"⚡";case"hook":return"🪝";case"config":return"⚙️";case"test":return"🧪";case"app":return"📱";default:return"📁"}}e.s(["COV_BG",0,{none:"rgba(51,65,85,0.3)",low:"rgba(239,68,68,0.1)",mid:"rgba(250,204,21,0.1)",high:"rgba(74,222,128,0.1)"},"COV_BORDER",0,{none:"#334155",low:"#7f1d1d",mid:"#713f12",high:"#14532d"},"COV_COLOR",0,{none:"#475569",low:"#f87171",mid:"#facc15",high:"#4ade80"},"catIcon",0,s,"covAvg",0,function(e){return e?(e.statements+e.branches+e.functions+e.lines)/4:null},"covBucket",0,function(e){return null===e?"none":e>=80?"high":e>=50?"mid":"low"},"heatBadgeClass",0,function(e){return e>=75?"bg-red-950/60 text-red-400 border border-red-900/40":e>=50?"bg-orange-950/60 text-orange-400 border border-orange-900/40":e>=25?"bg-yellow-950/60 text-yellow-500 border border-yellow-900/40":"bg-slate-800/60 text-slate-500 border border-slate-700/40"},"heatBarColor",0,function(e){return e>=75?"#f87171":e>=50?"#fb923c":e>=25?"#facc15":"#475569"},"heatColor",0,function(e){return e>=50?"#ef4444":e>=30?"#f97316":e>=15?"#eab308":e>=5?"#3b82f6":"#475569"}],63308);var l=e.i(71645);function a({values:e,direction:s="neutral",label:r}){let[n,o]=(0,l.useState)(null);if(e.length<2)return null;let i=Math.min(...e),c=Math.max(...e,i+1)-i,x=e.map((t,s)=>`${s/(e.length-1)*48},${10-(t-i)/c*9}`).join(" "),d=e[0],p=e[e.length-1],m=p-d,u=c>0&&Math.abs(m)>.05*c?"up-good"===s?m>0?"#22c55e":"#f97316":"down-good"===s?m<0?"#22c55e":"#f97316":"#64748b":"#64748b",h=e.map((t,s)=>`${s/(e.length-1)*160},${36-(t-i)/c*32}`).join(" "),f=e=>Number.isInteger(e)?e.toString():Math.abs(e)>=10?e.toFixed(1):e.toFixed(2),g=`${m>=0?"+":""}${f(m)}`;return(0,t.jsxs)("div",{className:"relative shrink-0 cursor-default",onMouseEnter:e=>{let t=e.currentTarget.getBoundingClientRect();o({x:t.left+t.width/2,y:t.top})},onMouseLeave:()=>o(null),children:[(0,t.jsx)("svg",{width:48,height:10,className:"opacity-70 block","aria-hidden":!0,children:(0,t.jsx)("polyline",{points:x,fill:"none",stroke:u,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),n&&(0,t.jsx)("div",{className:"pointer-events-none fixed z-[9999]",style:{left:n.x,top:n.y-8,transform:"translate(-50%, -100%)"},children:(0,t.jsxs)("div",{className:"bg-slate-900 border border-slate-700/80 rounded-lg shadow-2xl px-3 pt-2.5 pb-2 w-[188px]",children:[r&&(0,t.jsx)("p",{className:"text-[9px] uppercase tracking-widest text-slate-500 mb-1.5 font-semibold truncate",children:r}),(0,t.jsxs)("svg",{width:160,height:38,className:"block mb-2","aria-hidden":!0,children:[(0,t.jsx)("line",{x1:0,y1:37,x2:160,y2:37,stroke:"#1e293b",strokeWidth:"1"}),(0,t.jsx)("polyline",{points:h,fill:"none",stroke:u,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),(0,t.jsx)("circle",{cx:0,cy:36-(d-i)/c*32,r:"2.5",fill:u,opacity:"0.5"}),(0,t.jsx)("circle",{cx:160,cy:36-(p-i)/c*32,r:"3",fill:u})]}),(0,t.jsxs)("div",{className:"flex items-center justify-between text-[10px] font-mono leading-none mb-1",children:[(0,t.jsx)("span",{className:"text-slate-500",children:f(d)}),(0,t.jsx)("span",{className:"text-slate-600 px-1",children:"→"}),(0,t.jsx)("span",{style:{color:u},className:"font-semibold",children:f(p)}),(0,t.jsx)("span",{className:"ml-auto pl-2 font-semibold",style:{color:0===m?"#64748b":m>0==("up-good"===s)?"#22c55e":"#f97316"},children:g})]}),(0,t.jsxs)("div",{className:"flex items-center justify-between text-[9px] font-mono text-slate-600 pt-1 border-t border-slate-800",children:[(0,t.jsxs)("span",{children:["↓ ",f(i)]}),(0,t.jsxs)("span",{children:[e.length," pts"]}),(0,t.jsxs)("span",{children:["↑ ",f(Math.max(...e))]})]})]})})]})}function r({label:e,value:s,trend:l,direction:n="neutral"}){return(0,t.jsxs)("div",{className:"flex items-center justify-between bg-slate-900/60 px-2.5 py-1.5 rounded gap-2",children:[(0,t.jsx)("span",{className:"text-slate-500 text-xs",children:e}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[l&&l.length>=2&&(0,t.jsx)(a,{values:l,direction:n,label:e}),(0,t.jsx)("span",{className:"text-slate-300 font-mono font-medium text-xs",children:s})]})]})}function n({label:e,value:s}){return(0,t.jsxs)("div",{className:"bg-slate-900 rounded-lg p-3 text-center border border-slate-800",children:[(0,t.jsx)("p",{className:"text-xl font-bold text-slate-100 font-mono",children:s}),(0,t.jsx)("p",{className:"text-[11px] text-slate-500 mt-1",children:e})]})}e.s(["ExplorerFileInspector",0,function({file:e}){let s=e.coverage;return(0,t.jsxs)("div",{className:"flex flex-col gap-4 p-4 overflow-y-auto h-full",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-xs font-semibold text-slate-200 font-mono break-all",children:e.path}),(0,t.jsxs)("div",{className:"flex gap-2 mt-1 flex-wrap",children:[(0,t.jsxs)("span",{className:"text-[10px] font-mono text-slate-500",children:[e.metrics.loc," LOC"]}),(0,t.jsxs)("span",{className:"text-[10px] font-mono text-slate-500",children:["heat ",e.metrics.heatScore.toFixed(1)]}),(0,t.jsx)("span",{className:"text-[10px] font-mono text-slate-500",children:e.category}),e.hasUseClientDirective&&(0,t.jsx)("span",{className:"text-[10px] text-purple-400",children:"client"}),e.isApiRoute&&(0,t.jsx)("span",{className:"text-[10px] text-green-400",children:"api"}),e.isCyclic&&(0,t.jsx)("span",{className:"text-[10px] text-red-400",children:"cyclic"})]})]}),e.docSummary&&(0,t.jsx)("div",{className:"bg-slate-900/60 rounded px-3 py-2",children:(0,t.jsx)("p",{className:"text-xs text-slate-400 leading-relaxed",children:e.docSummary})}),s&&(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-[10px] uppercase tracking-widest font-semibold text-slate-600 mb-1",children:"Coverage"}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-1",children:[(0,t.jsx)(r,{label:"Statements",value:`${s.statements.toFixed(0)}%`}),(0,t.jsx)(r,{label:"Branches",value:`${s.branches.toFixed(0)}%`}),(0,t.jsx)(r,{label:"Functions",value:`${s.functions.toFixed(0)}%`}),(0,t.jsx)(r,{label:"Lines",value:`${s.lines.toFixed(0)}%`})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-[10px] uppercase tracking-widest font-semibold text-slate-600 mb-1",children:"Metrics"}),(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)(r,{label:"Incoming deps",value:e.metrics.incomingRuntimeDeps}),(0,t.jsx)(r,{label:"Outgoing deps",value:e.metrics.outgoingRuntimeDeps}),null!==e.metrics.complexityScore&&(0,t.jsx)(r,{label:"Complexity",value:e.metrics.complexityScore.toFixed(1)}),e.stateComplexity&&(0,t.jsx)(r,{label:"State hooks",value:e.stateComplexity.hookCounts.total})]})]}),e.exports.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-[10px] uppercase tracking-widest font-semibold text-slate-600 mb-1",children:"Exports"}),(0,t.jsxs)("div",{className:"flex flex-col gap-0.5",children:[e.exports.slice(0,8).map(e=>(0,t.jsx)("span",{className:"text-[11px] font-mono text-slate-400 truncate",children:e},e)),e.exports.length>8&&(0,t.jsxs)("span",{className:"text-[10px] text-slate-600",children:["+",e.exports.length-8," more"]})]})]}),e.explainability.symbolSummaries.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-[10px] uppercase tracking-widest font-semibold text-slate-600 mb-1",children:"Symbols"}),(0,t.jsx)("div",{className:"flex flex-col gap-1",children:e.explainability.symbolSummaries.slice(0,6).map(e=>(0,t.jsxs)("div",{className:"bg-slate-900/60 rounded px-2 py-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("span",{className:"text-[9px] font-mono text-slate-500 uppercase",children:e.kind}),(0,t.jsx)("span",{className:"text-[11px] font-mono text-slate-200",children:e.name}),e.exported&&(0,t.jsx)("span",{className:"text-[9px] text-blue-400",children:"↑"})]}),e.doc&&(0,t.jsx)("p",{className:"text-[10px] text-slate-500 mt-0.5 truncate",children:e.doc})]},e.name))})]}),e.internalImports.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsxs)("p",{className:"text-[10px] uppercase tracking-widest font-semibold text-slate-600 mb-1",children:["Imports (",e.internalImports.length," internal)"]}),(0,t.jsxs)("div",{className:"flex flex-col gap-0.5 max-h-32 overflow-y-auto",children:[e.internalImports.slice(0,10).map(e=>(0,t.jsx)("span",{className:"text-[10px] font-mono text-slate-500 truncate",children:e},e)),e.internalImports.length>10&&(0,t.jsxs)("span",{className:"text-[9px] text-slate-600",children:["+",e.internalImports.length-10," more"]})]})]})]})},"ExplorerSummary",0,function({data:e}){let{summary:l,heatmap:a}=e,o=e.files.reduce((e,t)=>(e[t.category]=(e[t.category]??0)+1,e),{}),i=e.files.filter(e=>null!==e.coverage).length,c=l.fileCount>0?Math.round(i/l.fileCount*100):0,x=l.fileCount>0?Math.round(l.cyclicFileCount/l.fileCount*100):0,d=e.files.length>0?e.files.reduce((e,t)=>e+t.metrics.heatScore,0)/e.files.length:0;return(0,t.jsxs)("div",{className:"flex flex-col gap-4 p-4 overflow-y-auto",children:[(0,t.jsxs)("p",{className:"text-[10px] text-slate-600 font-mono",children:["Generated ",new Date(e.generatedAt).toLocaleString()]}),(0,t.jsxs)("div",{className:"grid grid-cols-3 gap-2",children:[(0,t.jsx)(n,{label:"Files",value:l.fileCount}),(0,t.jsx)(n,{label:"Components",value:l.componentCount}),(0,t.jsx)(n,{label:"Routes",value:l.routesDiscovered.length}),(0,t.jsx)(n,{label:"Cyclic",value:l.cyclicFileCount}),(0,t.jsx)(n,{label:"Client",value:l.clientFileCount}),(0,t.jsx)(n,{label:"Server",value:l.serverFileCount})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)(r,{label:"Avg heat score",value:d.toFixed(1)}),(0,t.jsx)(r,{label:"Coverage files",value:`${i} / ${l.fileCount} (${c}%)`,direction:"up-good"}),(0,t.jsx)(r,{label:"Cyclic rate",value:`${x}%`,direction:"down-good"})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("p",{className:"text-[10px] uppercase tracking-widest font-semibold text-slate-600 mb-1",children:"Categories"}),Object.entries(o).sort(([,e],[,t])=>t-e).map(([e,l])=>(0,t.jsxs)("div",{className:"flex items-center justify-between bg-slate-900/60 px-2.5 py-1.5 rounded",children:[(0,t.jsxs)("span",{className:"text-slate-500 text-xs",children:[s(e)," ",e]}),(0,t.jsx)("span",{className:"text-slate-300 font-mono font-medium text-xs",children:l})]},e))]}),a.hottestFiles.length>0&&(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("p",{className:"text-[10px] uppercase tracking-widest font-semibold text-slate-600 mb-1",children:"Hottest files"}),a.hottestFiles.slice(0,6).map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 bg-slate-900/60 px-2.5 py-1.5 rounded",children:[(0,t.jsx)("span",{className:"text-[10px] font-mono text-orange-400 shrink-0",children:e.heatScore.toFixed(0)}),(0,t.jsx)("span",{className:"text-[11px] font-mono text-slate-400 truncate flex-1",children:e.path.split("/").pop()})]},e.path))]}),l.mostImportedFiles.length>0&&(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("p",{className:"text-[10px] uppercase tracking-widest font-semibold text-slate-600 mb-1",children:"Most imported"}),l.mostImportedFiles.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 bg-slate-900/60 px-2.5 py-1.5 rounded",children:[(0,t.jsxs)("span",{className:"text-[10px] font-mono text-blue-400 shrink-0",children:[e.count,"×"]}),(0,t.jsx)("span",{className:"text-[11px] font-mono text-slate-400 truncate flex-1",children:e.path.split("/").pop()})]},e.path))]})]})}],14845)},72265,e=>{"use strict";var t=e.i(43476),s=e.i(22016);e.s(["DemoBanner",0,function(){return(0,t.jsxs)("div",{className:"flex items-center justify-between gap-4 px-4 py-2.5 text-xs",style:{background:"rgba(14,165,233,0.08)",borderBottom:"1px solid rgba(14,165,233,0.2)"},children:[(0,t.jsxs)("span",{className:"flex items-center gap-2 text-sky-400 font-medium",children:[(0,t.jsx)("span",{"aria-hidden":!0,children:"✦"}),"Demo data — NexPay sample project. Install Prism to scan your own codebase."]}),(0,t.jsxs)("div",{className:"flex items-center gap-3 flex-shrink-0",children:[(0,t.jsx)(s.default,{href:"/#quickstart",className:"text-sky-300 hover:text-sky-200 transition-colors font-semibold",children:"Get started →"}),(0,t.jsx)(s.default,{href:"/pricing",className:"px-3 py-1 rounded-md text-xs font-semibold transition-colors",style:{background:"rgba(14,165,233,0.15)",border:"1px solid rgba(14,165,233,0.3)",color:"rgb(125,211,252)"},children:"View pricing"})]})]})}])},38714,e=>{"use strict";var t=e.i(71645);let s="prism.viewMode";e.s(["useViewMode",0,function(){let[e,l]=(0,t.useState)("expert");return(0,t.useEffect)(()=>{try{let e=localStorage.getItem(s);("simple"===e||"expert"===e)&&l(e)}catch{}},[]),[e,(0,t.useCallback)(e=>{l(e);try{localStorage.setItem(s,e)}catch{}},[])]}])},32901,e=>{"use strict";var t=e.i(43476),s=e.i(22016);e.s(["UpgradeBlur",0,function({children:e,feature:l="Blueprint Explorer"}){return(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("div",{className:"pointer-events-none select-none",style:{filter:"blur(5px)",opacity:.45},"aria-hidden":!0,children:e}),(0,t.jsx)("div",{className:"absolute inset-0 flex items-center justify-center",style:{minHeight:320},children:(0,t.jsxs)("div",{className:"rounded-2xl px-8 py-7 flex flex-col items-center gap-4 text-center max-w-sm w-full mx-4",style:{background:"rgba(2,6,23,0.88)",border:"1px solid rgba(59,130,246,0.3)",boxShadow:"0 0 40px rgba(59,130,246,0.12), 0 8px 32px rgba(0,0,0,0.4)",backdropFilter:"blur(8px)"},children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1 rounded-full text-xs font-bold",style:{background:"rgba(59,130,246,0.12)",border:"1px solid rgba(59,130,246,0.3)",color:"rgb(96,165,250)"},children:[(0,t.jsx)("span",{"aria-hidden":!0,children:"✦"}),(0,t.jsx)("span",{children:"PRO FEATURE"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-lg font-semibold text-slate-100 mb-1",children:l}),(0,t.jsx)("p",{className:"text-xs text-slate-400 leading-relaxed",children:"Full view available on Pro and above — heat scores, import graphs, coverage overlays, AI recommendations, and zone analysis."})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-2 w-full",children:[(0,t.jsx)(s.default,{href:"/pricing?utm_source=upgrade_blur&utm_content=blueprint_explorer",className:"w-full py-2.5 rounded-lg text-sm font-semibold text-center transition-all",style:{background:"rgb(59,130,246)",color:"#fff",boxShadow:"0 0 20px rgba(59,130,246,0.3)"},children:"Unlock — from €39/mo"}),(0,t.jsx)(s.default,{href:"/pricing?utm_source=upgrade_blur&utm_content=spectrum",className:"w-full py-2 rounded-lg text-xs font-medium text-center transition-colors",style:{color:"rgb(167,139,250)",border:"1px solid rgba(99,102,241,0.25)"},children:"Spectrum 0x55 bundle — €49/mo (prism + forge)"})]})]})})]})}])},99421,e=>{"use strict";var t=e.i(43476),s=e.i(71645),l=e.i(80949),a=e.i(38714),r=e.i(89458),n=e.i(72265),o=e.i(32901),i=e.i(14845),c=e.i(63308);function x({zone:e,onSelect:s}){let l=(0,c.heatBarColor)(e.avgHeat),a=e.files.reduce((e,t)=>(e[t.category]=(e[t.category]??0)+1,e),{});return(0,t.jsxs)("div",{className:"rounded-lg border flex flex-col overflow-hidden",style:{borderColor:`${l}33`,background:"rgba(8,15,30,0.7)"},children:[(0,t.jsxs)("div",{className:"px-3 py-2 flex items-center gap-2 border-b",style:{borderColor:`${l}22`,background:`${l}0a`},children:[(0,t.jsx)("span",{className:"text-[10px] font-mono font-bold px-1.5 py-0.5 rounded",style:{background:`${l}22`,color:l},children:e.avgHeat.toFixed(1)}),(0,t.jsxs)("span",{className:"text-xs font-mono font-semibold text-slate-200 truncate flex-1",children:[e.name,"/"]}),(0,t.jsxs)("span",{className:"text-[10px] text-slate-500 font-mono",children:[e.files.length," files"]}),e.hasCyclic&&(0,t.jsx)("span",{className:"text-[10px] text-red-400",children:"↺"})]}),(0,t.jsx)("div",{className:"h-0.5 w-full bg-slate-900",children:(0,t.jsx)("div",{className:"h-full",style:{width:`${Math.min(100,e.avgHeat)}%`,background:l}})}),(0,t.jsxs)("div",{className:"px-3 py-1.5 flex flex-wrap gap-1 border-b",style:{borderColor:"rgba(30,41,59,0.5)"},children:[Object.entries(a).sort(([,e],[,t])=>t-e).slice(0,6).map(([e,s])=>(0,t.jsxs)("span",{className:"text-[9px] font-mono px-1 py-0.5 rounded",style:{background:"rgba(30,41,59,0.6)",color:"rgb(100,116,139)",border:"1px solid rgba(51,65,85,0.4)"},children:[(0,c.catIcon)(e)," ",s]},e)),null!==e.avgCov&&(0,t.jsxs)("span",{className:"text-[9px] font-mono px-1 py-0.5 rounded ml-auto",style:{color:c.COV_COLOR[(0,c.covBucket)(e.avgCov)],background:"rgba(20,30,48,0.6)"},children:["🧪 ",e.avgCov.toFixed(0),"%"]})]}),(0,t.jsxs)("div",{className:"flex flex-col divide-y divide-slate-800/40 overflow-y-auto max-h-40",children:[e.files.sort((e,t)=>t.metrics.heatScore-e.metrics.heatScore).slice(0,8).map(e=>(0,t.jsxs)("button",{onClick:()=>s(e),className:"flex items-center gap-2 px-3 py-1 hover:bg-slate-800/40 text-left transition-colors",children:[(0,t.jsx)("span",{className:"text-[9px] font-mono shrink-0",style:{color:(0,c.heatBarColor)(e.metrics.heatScore)},children:e.metrics.heatScore.toFixed(0)}),(0,t.jsx)("span",{className:"text-[10px] font-mono text-slate-400 truncate flex-1",children:e.path.split("/").pop()}),e.isCyclic&&(0,t.jsx)("span",{className:"text-[9px] text-red-400",children:"↺"})]},e.id)),e.files.length>8&&(0,t.jsxs)("div",{className:"px-3 py-1 text-[9px] text-slate-600 font-mono",children:["+",e.files.length-8," more"]})]})]})}function d({data:e,onSelectFile:l}){let a=(0,s.useMemo)(()=>(function(e){let t=new Map;for(let s of e){let e=function(e){let t=e.split("/");return t.length>1?t[0]:"(root)"}(s.path),l=t.get(e)??[];l.push(s),t.set(e,l)}return Array.from(t.entries()).map(([e,t])=>{let s=t.reduce((e,t)=>e+t.metrics.heatScore,0)/t.length,l=t.filter(e=>null!==e.coverage);return{name:e,files:t,avgHeat:s,avgCov:l.length>0?l.reduce((e,t)=>e+((0,c.covAvg)(t.coverage)??0),0)/l.length:null,hasCyclic:t.some(e=>e.isCyclic)}}).sort((e,t)=>t.avgHeat-e.avgHeat)})(e.files),[e]);return(0,t.jsxs)("div",{className:"h-full overflow-y-auto p-4",children:[(0,t.jsx)("div",{className:"grid grid-cols-2 gap-3 xl:grid-cols-3",children:a.map(e=>(0,t.jsx)(x,{zone:e,onSelect:l},e.name))}),0===a.length&&(0,t.jsx)("div",{className:"flex items-center justify-center h-full text-slate-600 text-sm",children:"No files to display."})]})}e.s(["default",0,function(){let{data:e,setData:c,loading:x,error:p,outdated:m,setOutdated:u,target:h,isDemo:f,isProGated:g}=(0,l.useExplorerBlueprint)(),[b,j]=(0,a.useViewMode)(),[v,N]=(0,s.useState)(null),y=(0,s.useMemo)(()=>{if(!e)return[];let t=new Map;for(let s of e.files){let e=s.path.split("/")[0]??"(root)",l=t.get(e)??[];l.push(s),t.set(e,l)}return Array.from(t.entries()).map(([e,t])=>{let s=Math.round(t.reduce((e,t)=>e+t.metrics.heatScore,0)/t.length),l=t.some(e=>e.isCyclic);return{zone:e,count:t.length,avgHeat:s,hasCycle:l}}).sort((e,t)=>t.avgHeat-e.avgHeat)},[e]),k=(0,t.jsxs)("main",{className:"flex flex-col flex-1 pt-16 h-screen overflow-hidden",children:[f&&(0,t.jsx)(n.DemoBanner,{}),(0,t.jsx)(r.ExplorerNav,{target:h,outdated:m,onRescan:function(e){e&&(c(e),u(!1))},hideRescan:f||g,viewMode:b,onViewModeChange:j}),p&&(0,t.jsx)("div",{className:"px-4 py-2 text-xs text-red-400 font-mono bg-red-950/30 border-b border-red-900/30 flex-shrink-0",children:p}),x&&(0,t.jsx)("div",{className:"flex-1 flex items-center justify-center text-slate-500 text-sm",children:"Loading blueprint…"}),!x&&!e&&(0,t.jsxs)("div",{className:"flex-1 flex flex-col items-center justify-center gap-4 text-center px-6",children:[(0,t.jsx)("span",{className:"text-5xl",children:"🗺️"}),(0,t.jsx)("h2",{className:"text-lg font-semibold text-slate-300",children:"No blueprint yet"}),(0,t.jsx)("p",{className:"text-sm text-slate-500 max-w-sm",children:"Run ↺ Rescan above to generate a blueprint."})]}),!x&&e&&(0,t.jsxs)("div",{className:"flex flex-1 overflow-hidden",children:[(0,t.jsx)("div",{className:"flex-1 overflow-hidden",children:"simple"===b?(0,t.jsxs)("div",{className:"flex flex-col h-full overflow-y-auto px-6 py-4 gap-3",children:[(0,t.jsxs)("p",{className:"text-xs text-slate-500",children:["Your codebase is divided into ",y.length," zones. Higher heat means more cross-zone dependencies."]}),(0,t.jsx)("div",{className:"flex flex-col gap-2",children:y.map(({zone:e,count:s,avgHeat:l,hasCycle:a})=>{let r=l>=60?"rgb(248,113,113)":l>=35?"rgb(251,191,36)":"rgb(52,211,153)",n=Math.round(l/100*100);return(0,t.jsxs)("div",{className:"flex items-center gap-4 px-4 py-3 rounded-xl",style:{background:"rgba(15,23,42,0.5)",border:"1px solid rgba(51,65,85,0.35)"},children:[(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 mb-1.5",children:[(0,t.jsx)("span",{className:"text-sm font-semibold text-slate-300 truncate",children:e}),a&&(0,t.jsx)("span",{className:"text-[10px] font-bold px-1.5 py-0.5 rounded flex-shrink-0",style:{background:"rgba(248,113,113,0.15)",color:"rgb(248,113,113)"},children:"circular dep"})]}),(0,t.jsx)("div",{className:"h-1.5 rounded-full w-full",style:{background:"rgba(51,65,85,0.4)"},children:(0,t.jsx)("div",{className:"h-1.5 rounded-full transition-all",style:{width:`${n}%`,background:r}})})]}),(0,t.jsxs)("div",{className:"flex flex-col items-end flex-shrink-0",children:[(0,t.jsx)("span",{className:"text-sm font-semibold font-mono",style:{color:r},children:l}),(0,t.jsxs)("span",{className:"text-[10px] text-slate-600",children:[s," files"]})]})]},e)})})]}):(0,t.jsx)(d,{data:e,onSelectFile:N})}),v&&(0,t.jsxs)("div",{className:"w-72 flex-shrink-0 border-l overflow-y-auto",style:{borderColor:"rgba(51,65,85,0.3)",background:"rgba(8,12,24,0.7)"},children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-2 border-b flex-shrink-0",style:{borderColor:"rgba(51,65,85,0.3)"},children:[(0,t.jsx)("span",{className:"text-[10px] uppercase tracking-widest text-slate-500 font-semibold",children:"Inspector"}),(0,t.jsx)("button",{onClick:()=>N(null),className:"text-slate-600 hover:text-slate-400 text-xs",children:"✕"})]}),(0,t.jsx)(i.ExplorerFileInspector,{file:v})]})]})]});return g?(0,t.jsx)(o.UpgradeBlur,{children:k}):k}],99421)}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return i},searchParamsToUrlQuery:function(){return l},urlQueryToSearchParams:function(){return o}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});function l(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function a(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function o(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,a(e));else t.set(r,a(n));return t}function i(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},18967,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return g},MiddlewareNotFoundError:function(){return v},MissingStaticPage:function(){return j},NormalizeError:function(){return b},PageNotFoundError:function(){return y},SP:function(){return h},ST:function(){return m},WEB_VITALS:function(){return l},execOnce:function(){return a},getDisplayName:function(){return d},getLocationOrigin:function(){return c},getURL:function(){return u},isAbsoluteUrl:function(){return i},isResSent:function(){return p},loadGetInitialProps:function(){return x},normalizeRepeatedSlashes:function(){return f},stringifyError:function(){return N}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let l=["CLS","FCP","FID","INP","LCP","TTFB"];function a(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let o=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,i=e=>o.test(e);function c(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function u(){let{href:e}=window.location,t=c();return e.substring(t.length)}function d(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function p(e){return e.finished||e.headersSent}function f(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function x(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await x(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&p(r))return n;if(!n)throw Object.defineProperty(Error(`"${d(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return n}let h="u">typeof performance,m=h&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class b extends Error{}class y extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class j extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class v extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function N(e){return JSON.stringify({message:e.message,stack:e.stack})}},33525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},95057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return o},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let l=e.r(90809)._(e.r(98183)),a=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,n=e.protocol||"",s=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 n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||a.test(n))&&!1!==c?(c="//"+(c||""),s&&"/"!==s[0]&&(s="/"+s)):c||(c=""),o&&"#"!==o[0]&&(o="#"+o),u&&"?"!==u[0]&&(u="?"+u),s=s.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${n}${c}${s}${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 s}});let n=e.r(71645);function s(e,t){let r=(0,n.useRef)(null),s=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=s.current;t&&(s.current=null,t())}else e&&(r.current=l(e,n)),t&&(s.current=l(t,n))},[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 n=e.r(18967),s=e.r(52817);function l(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.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 n}});let n=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return g},useLinkStatus:function(){return y}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});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),h=e.r(73668),m=e.r(9396);function g(t){var r,n;let s,l,g,[y,j]=(0,o.useOptimistic)(x.IDLE_LINK_STATUS),v=(0,o.useRef)(null),{href:N,as:w,children:k,prefetch:S=null,passHref:P,replace:E,shallow:_,scroll:C,onClick:O,onMouseEnter:T,onTouchStart:R,legacyBehavior:A=!1,onNavigate:L,transitionTypes:$,ref:I,unstable_dynamicOnHover:U,...M}=t;s=k,A&&("string"==typeof s||"number"==typeof s)&&(s=(0,a.jsx)("a",{children:s}));let B=o.default.useContext(c.AppRouterContext),F=!1!==S,D=!1!==S?null===(n=S)||"auto"===n?m.FetchStrategy.PPR:m.FetchStrategy.Full:m.FetchStrategy.PPR,K="string"==typeof(r=w||N)?r:(0,i.formatUrl)(r);if(A){if(s?.$$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(s)}let z=A?l&&"object"==typeof l&&l.ref:I,W=o.default.useCallback(e=>(null!==B&&(v.current=(0,x.mountLinkInstance)(e,K,B,D,F,j)),()=>{v.current&&((0,x.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,x.unmountPrefetchableInstance)(e)}),[F,K,B,D,j]),V={ref:(0,u.useMergedRef)(W,z),onClick(t){A||"function"!=typeof O||O(t),A&&l.props&&"function"==typeof l.props.onClick&&l.props.onClick(t),!B||t.defaultPrevented||function(t,r,n,s,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,h.isLocalURL)(r)){s&&(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,s?"replace":"push",!1===l?f.ScrollBehavior.NoScroll:f.ScrollBehavior.Default,n.current,i)})}}(t,K,v,E,C,L,$)},onMouseEnter(e){A||"function"!=typeof T||T(e),A&&l.props&&"function"==typeof l.props.onMouseEnter&&l.props.onMouseEnter(e),B&&F&&(0,x.onNavigationIntent)(e.currentTarget,!0===U)},onTouchStart:function(e){A||"function"!=typeof R||R(e),A&&l.props&&"function"==typeof l.props.onTouchStart&&l.props.onTouchStart(e),B&&F&&(0,x.onNavigationIntent)(e.currentTarget,!0===U)}};return(0,d.isAbsoluteUrl)(K)?V.href=K:A&&!P&&("a"!==l.type||"href"in l.props)||(V.href=(0,p.addBasePath)(K)),g=A?o.default.cloneElement(l,V):(0,a.jsx)("a",{...M,...V,children:s}),(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)},25010,e=>{"use strict";var t=e.i(71645);e.s(["useTargetPath",0,function(){let[e,r]=(0,t.useState)(""),[n,s]=(0,t.useState)(!1);return(0,t.useEffect)(()=>{fetch("/api/config").then(e=>e.json()).then(e=>{let t=e.targetPath??"";r(t?`?target=${encodeURIComponent(t)}`:"")}).catch(()=>{}).finally(()=>s(!0))},[]),{tq:e,ready:n}}])},50667,36528,60888,13121,e=>{"use strict";var t=e.i(43476),r=e.i(22016),n=e.i(18566),s=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"},blueprint_explorer:{tier:"pro",label:"Blueprint Explorer"},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:n,isPro:l=!1}){let[c,u]=(0,s.useState)(!1),d=(0,s.useRef)(null);if((0,s.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:()=>{n(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:()=>{n(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))]})]})}var c=e.i(25010);function u(e){let[t,r]=(0,s.useState)(null),[n,l]=(0,s.useState)(null),[a,o]=(0,s.useState)(!1);(0,s.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,s.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=n?`&workspace=${encodeURIComponent(n)}`:"";return{monorepo:t,activeWorkspace:n,setActiveWorkspace:i,ready:a,wq:c}}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,s.useState)(null),[n,l]=(0,s.useState)(!1),[a,o]=(0,s.useState)(0);(0,s.useEffect)(()=>{fetch(`/api/license${e}`).then(e=>e.json()).then(e=>r(e)).catch(()=>r(d)).finally(()=>l(!0))},[e,a]);let i=(0,s.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:n,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,n.usePathname)(),{tq:s}=(0,c.useTargetPath)(),{monorepo:l,activeWorkspace:a,setActiveWorkspace:o}=u(s),{isPro:d}=p(s),x=d?[...f.slice(0,1),{href:"/blue/explorer",label:"Explorer",color:"rgb(56,189,248)"},...f.slice(1)]:f;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"})]})]}),x.map(({href:n,label:s,color:l})=>{let a=e===n||"/blue"!==n&&e.startsWith(n);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:n,className:"text-sm font-medium transition-colors px-1",style:{color:a?l??"rgb(226,232,240)":"rgba(148,163,184,0.8)"},children:s})]},n)}),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)},57648,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(22016),s=e.i(18566),l=e.i(50667);let a={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={active:"rgb(59,130,246)",completed:"rgb(52,211,153)",abandoned:"rgba(148,163,184,0.5)"};function i({session:e}){let r=e.turns[e.turns.length-1];return(0,t.jsxs)(n.default,{href:`/blue/sessions/${e.id}`,className:"w-full rounded-xl p-5 flex flex-col gap-2 transition-all hover:brightness-110 cursor-pointer",style:a,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.jsx)("span",{className:"text-xs font-mono px-2 py-0.5 rounded-full flex-shrink-0",style:{background:o[e.status]+"18",color:o[e.status],border:`1px solid ${o[e.status]}35`},children:e.status})]}),r&&(0,t.jsx)("p",{className:"text-xs text-slate-500 leading-relaxed line-clamp-2",children:r.response??r.prompt}),(0,t.jsxs)("div",{className:"flex items-center gap-3 mt-1",children:[(0,t.jsxs)("span",{className:"text-xs text-slate-600",children:[e.turns.length," turn",1!==e.turns.length?"s":""]}),(0,t.jsx)("span",{className:"text-xs text-slate-700",children:"·"}),(0,t.jsx)("span",{className:"text-xs text-slate-600",children:new Date(e.updated_at).toLocaleDateString()}),e.rec_id&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-xs text-slate-700",children:"·"}),(0,t.jsx)("span",{className:"text-xs text-indigo-400 font-mono",children:"linked rec"})]})]})]})}e.s(["default",0,function(){let e=(0,s.useRouter)(),[o,c]=(0,r.useState)([]),[u,d]=(0,r.useState)(!0),[p,f]=(0,r.useState)(!1);async function x(){try{let e=await fetch("/api/blue/sessions"),t=await e.json();c(t.sessions??[])}catch{}finally{d(!1)}}async function h(){f(!0);try{let t=await fetch("/api/blue/sessions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:"New session"})}),r=await t.json();e.push(`/blue/sessions/${r.session.id}`)}catch{f(!1)}}(0,r.useEffect)(()=>{x()},[]);let m=o.filter(e=>"active"===e.status),g=o.filter(e=>"completed"===e.status),b=o.filter(e=>"abandoned"===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)(n.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-indigo-400",children:"Sessions"})})]}),(0,t.jsxs)("p",{className:"text-xs text-slate-500 mt-0.5",children:[o.length," total"]})]}),(0,t.jsx)("button",{onClick:h,disabled:p,className:"px-4 py-2 rounded-lg text-sm font-semibold transition-all disabled:opacity-50",style:{background:"rgb(99,102,241)",color:"#fff"},children:p?"Creating…":"+ New session"})]}),u&&(0,t.jsx)("div",{className:"w-full text-center py-16 text-slate-500 text-sm",children:"Loading…"}),!u&&0===o.length&&(0,t.jsxs)("div",{className:"w-full rounded-xl p-8 text-center flex flex-col items-center gap-3",style:a,children:[(0,t.jsx)("span",{className:"text-4xl",children:"💬"}),(0,t.jsx)("p",{className:"text-slate-300 font-medium",children:"No sessions yet"}),(0,t.jsx)("p",{className:"text-slate-500 text-sm",children:"Start a new session to discuss your codebase with the AI."})]}),!u&&o.length>0&&(0,t.jsxs)(t.Fragment,{children:[m.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-blue-400 uppercase tracking-widest",children:["Active (",m.length,")"]}),m.map(e=>(0,t.jsx)(i,{session:e},e.id))]}),g.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:["Completed (",g.length,")"]}),g.map(e=>(0,t.jsx)(i,{session:e},e.id))]}),b.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-600 uppercase tracking-widest",children:["Abandoned (",b.length,")"]}),b.map(e=>(0,t.jsx)(i,{session: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.11.3"," · BLUE / Sessions"]})]})}])}]);
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return i},searchParamsToUrlQuery:function(){return l},urlQueryToSearchParams:function(){return o}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});function l(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function a(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function o(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,a(e));else t.set(r,a(n));return t}function i(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},18967,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return g},MiddlewareNotFoundError:function(){return v},MissingStaticPage:function(){return j},NormalizeError:function(){return b},PageNotFoundError:function(){return y},SP:function(){return h},ST:function(){return m},WEB_VITALS:function(){return l},execOnce:function(){return a},getDisplayName:function(){return d},getLocationOrigin:function(){return c},getURL:function(){return u},isAbsoluteUrl:function(){return i},isResSent:function(){return p},loadGetInitialProps:function(){return x},normalizeRepeatedSlashes:function(){return f},stringifyError:function(){return N}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let l=["CLS","FCP","FID","INP","LCP","TTFB"];function a(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let o=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,i=e=>o.test(e);function c(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function u(){let{href:e}=window.location,t=c();return e.substring(t.length)}function d(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function p(e){return e.finished||e.headersSent}function f(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function x(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await x(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&p(r))return n;if(!n)throw Object.defineProperty(Error(`"${d(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return n}let h="u">typeof performance,m=h&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class b extends Error{}class y extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class j extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class v extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function N(e){return JSON.stringify({message:e.message,stack:e.stack})}},33525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},95057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return o},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let l=e.r(90809)._(e.r(98183)),a=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,n=e.protocol||"",s=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 n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||a.test(n))&&!1!==c?(c="//"+(c||""),s&&"/"!==s[0]&&(s="/"+s)):c||(c=""),o&&"#"!==o[0]&&(o="#"+o),u&&"?"!==u[0]&&(u="?"+u),s=s.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${n}${c}${s}${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 s}});let n=e.r(71645);function s(e,t){let r=(0,n.useRef)(null),s=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=s.current;t&&(s.current=null,t())}else e&&(r.current=l(e,n)),t&&(s.current=l(t,n))},[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 n=e.r(18967),s=e.r(52817);function l(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.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 n}});let n=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return g},useLinkStatus:function(){return y}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});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),h=e.r(73668),m=e.r(9396);function g(t){var r,n;let s,l,g,[y,j]=(0,o.useOptimistic)(x.IDLE_LINK_STATUS),v=(0,o.useRef)(null),{href:N,as:w,children:k,prefetch:S=null,passHref:P,replace:E,shallow:_,scroll:C,onClick:O,onMouseEnter:T,onTouchStart:R,legacyBehavior:A=!1,onNavigate:L,transitionTypes:$,ref:I,unstable_dynamicOnHover:U,...M}=t;s=k,A&&("string"==typeof s||"number"==typeof s)&&(s=(0,a.jsx)("a",{children:s}));let B=o.default.useContext(c.AppRouterContext),F=!1!==S,D=!1!==S?null===(n=S)||"auto"===n?m.FetchStrategy.PPR:m.FetchStrategy.Full:m.FetchStrategy.PPR,K="string"==typeof(r=w||N)?r:(0,i.formatUrl)(r);if(A){if(s?.$$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(s)}let z=A?l&&"object"==typeof l&&l.ref:I,W=o.default.useCallback(e=>(null!==B&&(v.current=(0,x.mountLinkInstance)(e,K,B,D,F,j)),()=>{v.current&&((0,x.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,x.unmountPrefetchableInstance)(e)}),[F,K,B,D,j]),V={ref:(0,u.useMergedRef)(W,z),onClick(t){A||"function"!=typeof O||O(t),A&&l.props&&"function"==typeof l.props.onClick&&l.props.onClick(t),!B||t.defaultPrevented||function(t,r,n,s,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,h.isLocalURL)(r)){s&&(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,s?"replace":"push",!1===l?f.ScrollBehavior.NoScroll:f.ScrollBehavior.Default,n.current,i)})}}(t,K,v,E,C,L,$)},onMouseEnter(e){A||"function"!=typeof T||T(e),A&&l.props&&"function"==typeof l.props.onMouseEnter&&l.props.onMouseEnter(e),B&&F&&(0,x.onNavigationIntent)(e.currentTarget,!0===U)},onTouchStart:function(e){A||"function"!=typeof R||R(e),A&&l.props&&"function"==typeof l.props.onTouchStart&&l.props.onTouchStart(e),B&&F&&(0,x.onNavigationIntent)(e.currentTarget,!0===U)}};return(0,d.isAbsoluteUrl)(K)?V.href=K:A&&!P&&("a"!==l.type||"href"in l.props)||(V.href=(0,p.addBasePath)(K)),g=A?o.default.cloneElement(l,V):(0,a.jsx)("a",{...M,...V,children:s}),(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)},25010,e=>{"use strict";var t=e.i(71645);e.s(["useTargetPath",0,function(){let[e,r]=(0,t.useState)(""),[n,s]=(0,t.useState)(!1);return(0,t.useEffect)(()=>{fetch("/api/config").then(e=>e.json()).then(e=>{let t=e.targetPath??"";r(t?`?target=${encodeURIComponent(t)}`:"")}).catch(()=>{}).finally(()=>s(!0))},[]),{tq:e,ready:n}}])},50667,36528,60888,13121,e=>{"use strict";var t=e.i(43476),r=e.i(22016),n=e.i(18566),s=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"},blueprint_explorer:{tier:"pro",label:"Blueprint Explorer"},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:n,isPro:l=!1}){let[c,u]=(0,s.useState)(!1),d=(0,s.useRef)(null);if((0,s.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:()=>{n(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:()=>{n(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))]})]})}var c=e.i(25010);function u(e){let[t,r]=(0,s.useState)(null),[n,l]=(0,s.useState)(null),[a,o]=(0,s.useState)(!1);(0,s.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,s.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=n?`&workspace=${encodeURIComponent(n)}`:"";return{monorepo:t,activeWorkspace:n,setActiveWorkspace:i,ready:a,wq:c}}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,s.useState)(null),[n,l]=(0,s.useState)(!1),[a,o]=(0,s.useState)(0);(0,s.useEffect)(()=>{fetch(`/api/license${e}`).then(e=>e.json()).then(e=>r(e)).catch(()=>r(d)).finally(()=>l(!0))},[e,a]);let i=(0,s.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:n,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,n.usePathname)(),{tq:s}=(0,c.useTargetPath)(),{monorepo:l,activeWorkspace:a,setActiveWorkspace:o}=u(s),{isPro:d}=p(s),x=d?[...f.slice(0,1),{href:"/blue/explorer",label:"Explorer",color:"rgb(56,189,248)"},...f.slice(1)]:f;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"})]})]}),x.map(({href:n,label:s,color:l})=>{let a=e===n||"/blue"!==n&&e.startsWith(n);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:n,className:"text-sm font-medium transition-colors px-1",style:{color:a?l??"rgb(226,232,240)":"rgba(148,163,184,0.8)"},children:s})]},n)}),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)},57648,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(22016),s=e.i(18566),l=e.i(50667);let a={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={active:"rgb(59,130,246)",completed:"rgb(52,211,153)",abandoned:"rgba(148,163,184,0.5)"};function i({session:e}){let r=e.turns[e.turns.length-1];return(0,t.jsxs)(n.default,{href:`/blue/sessions/${e.id}`,className:"w-full rounded-xl p-5 flex flex-col gap-2 transition-all hover:brightness-110 cursor-pointer",style:a,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.jsx)("span",{className:"text-xs font-mono px-2 py-0.5 rounded-full flex-shrink-0",style:{background:o[e.status]+"18",color:o[e.status],border:`1px solid ${o[e.status]}35`},children:e.status})]}),r&&(0,t.jsx)("p",{className:"text-xs text-slate-500 leading-relaxed line-clamp-2",children:r.response??r.prompt}),(0,t.jsxs)("div",{className:"flex items-center gap-3 mt-1",children:[(0,t.jsxs)("span",{className:"text-xs text-slate-600",children:[e.turns.length," turn",1!==e.turns.length?"s":""]}),(0,t.jsx)("span",{className:"text-xs text-slate-700",children:"·"}),(0,t.jsx)("span",{className:"text-xs text-slate-600",children:new Date(e.updated_at).toLocaleDateString()}),e.rec_id&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-xs text-slate-700",children:"·"}),(0,t.jsx)("span",{className:"text-xs text-indigo-400 font-mono",children:"linked rec"})]})]})]})}e.s(["default",0,function(){let e=(0,s.useRouter)(),[o,c]=(0,r.useState)([]),[u,d]=(0,r.useState)(!0),[p,f]=(0,r.useState)(!1);async function x(){try{let e=await fetch("/api/blue/sessions"),t=await e.json();c(t.sessions??[])}catch{}finally{d(!1)}}async function h(){f(!0);try{let t=await fetch("/api/blue/sessions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:"New session"})}),r=await t.json();e.push(`/blue/sessions/${r.session.id}`)}catch{f(!1)}}(0,r.useEffect)(()=>{x()},[]);let m=o.filter(e=>"active"===e.status),g=o.filter(e=>"completed"===e.status),b=o.filter(e=>"abandoned"===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)(n.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-indigo-400",children:"Sessions"})})]}),(0,t.jsxs)("p",{className:"text-xs text-slate-500 mt-0.5",children:[o.length," total"]})]}),(0,t.jsx)("button",{onClick:h,disabled:p,className:"px-4 py-2 rounded-lg text-sm font-semibold transition-all disabled:opacity-50",style:{background:"rgb(99,102,241)",color:"#fff"},children:p?"Creating…":"+ New session"})]}),u&&(0,t.jsx)("div",{className:"w-full text-center py-16 text-slate-500 text-sm",children:"Loading…"}),!u&&0===o.length&&(0,t.jsxs)("div",{className:"w-full rounded-xl p-8 text-center flex flex-col items-center gap-3",style:a,children:[(0,t.jsx)("span",{className:"text-4xl",children:"💬"}),(0,t.jsx)("p",{className:"text-slate-300 font-medium",children:"No sessions yet"}),(0,t.jsx)("p",{className:"text-slate-500 text-sm",children:"Start a new session to discuss your codebase with the AI."})]}),!u&&o.length>0&&(0,t.jsxs)(t.Fragment,{children:[m.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-blue-400 uppercase tracking-widest",children:["Active (",m.length,")"]}),m.map(e=>(0,t.jsx)(i,{session:e},e.id))]}),g.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:["Completed (",g.length,")"]}),g.map(e=>(0,t.jsx)(i,{session:e},e.id))]}),b.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-600 uppercase tracking-widest",children:["Abandoned (",b.length,")"]}),b.map(e=>(0,t.jsx)(i,{session: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.12.0"," · BLUE / Sessions"]})]})}])}]);
|