trybeacon 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -0
- package/.next/app-path-routes-manifest.json +59 -0
- package/.next/build/56416d4ae4ce586f.js +6 -0
- package/.next/build/56416d4ae4ce586f.js.map +5 -0
- package/.next/build/chunks/[root-of-the-server]__0oj80bi._.js +206 -0
- package/.next/build/chunks/[root-of-the-server]__0oj80bi._.js.map +8 -0
- package/.next/build/chunks/[root-of-the-server]__1f933tp._.js +500 -0
- package/.next/build/chunks/[root-of-the-server]__1f933tp._.js.map +11 -0
- package/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_0b7xl6g._.js +13 -0
- package/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_0b7xl6g._.js.map +5 -0
- package/.next/build/chunks/[turbopack]_runtime.js +890 -0
- package/.next/build/chunks/[turbopack]_runtime.js.map +11 -0
- package/.next/build/chunks/node_modules_20v-8wl._.js +6824 -0
- package/.next/build/chunks/node_modules_20v-8wl._.js.map +47 -0
- package/.next/build/package.json +1 -0
- package/.next/build-manifest.json +21 -0
- package/.next/diagnostics/build-diagnostics.json +6 -0
- package/.next/diagnostics/framework.json +1 -0
- package/.next/diagnostics/route-bundle-stats.json +100 -0
- package/.next/export-marker.json +6 -0
- package/.next/fallback-build-manifest.json +13 -0
- package/.next/images-manifest.json +68 -0
- package/.next/next-minimal-server.js.nft.json +1 -0
- package/.next/next-server.js.nft.json +1 -0
- package/.next/package.json +1 -0
- package/.next/prerender-manifest.json +167 -0
- package/.next/required-server-files.js +338 -0
- package/.next/required-server-files.json +338 -0
- package/.next/routes-manifest.json +402 -0
- package/.next/server/app/_global-error/page/app-paths-manifest.json +3 -0
- package/.next/server/app/_global-error/page/build-manifest.json +17 -0
- package/.next/server/app/_global-error/page/next-font-manifest.json +6 -0
- package/.next/server/app/_global-error/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/_global-error/page/server-reference-manifest.json +4 -0
- package/.next/server/app/_global-error/page.js +10 -0
- package/.next/server/app/_global-error/page.js.map +5 -0
- package/.next/server/app/_global-error/page.js.nft.json +1 -0
- package/.next/server/app/_global-error/page_client-reference-manifest.js +3 -0
- package/.next/server/app/_global-error.html +1 -0
- package/.next/server/app/_global-error.meta +15 -0
- package/.next/server/app/_global-error.rsc +14 -0
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_full.segment.rsc +14 -0
- package/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_index.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
- package/.next/server/app/_not-found/page/app-paths-manifest.json +3 -0
- package/.next/server/app/_not-found/page/build-manifest.json +17 -0
- package/.next/server/app/_not-found/page/next-font-manifest.json +11 -0
- package/.next/server/app/_not-found/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/_not-found/page/server-reference-manifest.json +4 -0
- package/.next/server/app/_not-found/page.js +15 -0
- package/.next/server/app/_not-found/page.js.map +5 -0
- package/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/.next/server/app/_not-found/page_client-reference-manifest.js +3 -0
- package/.next/server/app/_not-found.html +1 -0
- package/.next/server/app/_not-found.meta +16 -0
- package/.next/server/app/_not-found.rsc +24 -0
- package/.next/server/app/_not-found.segments/_full.segment.rsc +24 -0
- package/.next/server/app/_not-found.segments/_head.segment.rsc +6 -0
- package/.next/server/app/_not-found.segments/_index.segment.rsc +13 -0
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -0
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +5 -0
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +3 -0
- package/.next/server/app/api/code-graph/position/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/code-graph/position/route/build-manifest.json +9 -0
- package/.next/server/app/api/code-graph/position/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/code-graph/position/route.js +12 -0
- package/.next/server/app/api/code-graph/position/route.js.map +5 -0
- package/.next/server/app/api/code-graph/position/route.js.nft.json +1 -0
- package/.next/server/app/api/code-graph/position/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/code-graph/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/code-graph/route/build-manifest.json +9 -0
- package/.next/server/app/api/code-graph/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/code-graph/route.js +12 -0
- package/.next/server/app/api/code-graph/route.js.map +5 -0
- package/.next/server/app/api/code-graph/route.js.nft.json +1 -0
- package/.next/server/app/api/code-graph/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/context/embed-backfill/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/context/embed-backfill/route/build-manifest.json +9 -0
- package/.next/server/app/api/context/embed-backfill/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/context/embed-backfill/route.js +11 -0
- package/.next/server/app/api/context/embed-backfill/route.js.map +5 -0
- package/.next/server/app/api/context/embed-backfill/route.js.nft.json +1 -0
- package/.next/server/app/api/context/embed-backfill/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/context/feature/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/context/feature/route/build-manifest.json +9 -0
- package/.next/server/app/api/context/feature/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/context/feature/route.js +15 -0
- package/.next/server/app/api/context/feature/route.js.map +5 -0
- package/.next/server/app/api/context/feature/route.js.nft.json +1 -0
- package/.next/server/app/api/context/feature/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/context/file/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/context/file/route/build-manifest.json +9 -0
- package/.next/server/app/api/context/file/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/context/file/route.js +13 -0
- package/.next/server/app/api/context/file/route.js.map +5 -0
- package/.next/server/app/api/context/file/route.js.nft.json +1 -0
- package/.next/server/app/api/context/file/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/context/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/context/route/build-manifest.json +9 -0
- package/.next/server/app/api/context/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/context/route.js +11 -0
- package/.next/server/app/api/context/route.js.map +5 -0
- package/.next/server/app/api/context/route.js.nft.json +1 -0
- package/.next/server/app/api/context/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/db/backfill-access/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/db/backfill-access/route/build-manifest.json +9 -0
- package/.next/server/app/api/db/backfill-access/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/db/backfill-access/route.js +13 -0
- package/.next/server/app/api/db/backfill-access/route.js.map +5 -0
- package/.next/server/app/api/db/backfill-access/route.js.nft.json +1 -0
- package/.next/server/app/api/db/backfill-access/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/db/position/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/db/position/route/build-manifest.json +9 -0
- package/.next/server/app/api/db/position/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/db/position/route.js +15 -0
- package/.next/server/app/api/db/position/route.js.map +5 -0
- package/.next/server/app/api/db/position/route.js.nft.json +1 -0
- package/.next/server/app/api/db/position/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/db/reconcile-endpoints/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/db/reconcile-endpoints/route/build-manifest.json +9 -0
- package/.next/server/app/api/db/reconcile-endpoints/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/db/reconcile-endpoints/route.js +12 -0
- package/.next/server/app/api/db/reconcile-endpoints/route.js.map +5 -0
- package/.next/server/app/api/db/reconcile-endpoints/route.js.nft.json +1 -0
- package/.next/server/app/api/db/reconcile-endpoints/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/db/relations/[id]/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/db/relations/[id]/route/build-manifest.json +9 -0
- package/.next/server/app/api/db/relations/[id]/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/db/relations/[id]/route.js +12 -0
- package/.next/server/app/api/db/relations/[id]/route.js.map +5 -0
- package/.next/server/app/api/db/relations/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/db/relations/[id]/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/db/tables/[id]/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/db/tables/[id]/route/build-manifest.json +9 -0
- package/.next/server/app/api/db/tables/[id]/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/db/tables/[id]/route.js +12 -0
- package/.next/server/app/api/db/tables/[id]/route.js.map +5 -0
- package/.next/server/app/api/db/tables/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/db/tables/[id]/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/draft/approve/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/draft/approve/route/build-manifest.json +9 -0
- package/.next/server/app/api/draft/approve/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/draft/approve/route.js +16 -0
- package/.next/server/app/api/draft/approve/route.js.map +5 -0
- package/.next/server/app/api/draft/approve/route.js.nft.json +1 -0
- package/.next/server/app/api/draft/approve/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/draft/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/draft/route/build-manifest.json +9 -0
- package/.next/server/app/api/draft/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/draft/route.js +16 -0
- package/.next/server/app/api/draft/route.js.map +5 -0
- package/.next/server/app/api/draft/route.js.nft.json +1 -0
- package/.next/server/app/api/draft/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/draft/status/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/draft/status/route/build-manifest.json +9 -0
- package/.next/server/app/api/draft/status/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/draft/status/route.js +13 -0
- package/.next/server/app/api/draft/status/route.js.map +5 -0
- package/.next/server/app/api/draft/status/route.js.nft.json +1 -0
- package/.next/server/app/api/draft/status/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/edges/[id]/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/edges/[id]/route/build-manifest.json +9 -0
- package/.next/server/app/api/edges/[id]/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/edges/[id]/route.js +11 -0
- package/.next/server/app/api/edges/[id]/route.js.map +5 -0
- package/.next/server/app/api/edges/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/edges/[id]/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/edges/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/edges/route/build-manifest.json +9 -0
- package/.next/server/app/api/edges/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/edges/route.js +15 -0
- package/.next/server/app/api/edges/route.js.map +5 -0
- package/.next/server/app/api/edges/route.js.nft.json +1 -0
- package/.next/server/app/api/edges/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/endpoints/[id]/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/endpoints/[id]/route/build-manifest.json +9 -0
- package/.next/server/app/api/endpoints/[id]/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/endpoints/[id]/route.js +12 -0
- package/.next/server/app/api/endpoints/[id]/route.js.map +5 -0
- package/.next/server/app/api/endpoints/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/endpoints/[id]/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/entities/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/entities/route/build-manifest.json +9 -0
- package/.next/server/app/api/entities/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/entities/route.js +11 -0
- package/.next/server/app/api/entities/route.js.map +5 -0
- package/.next/server/app/api/entities/route.js.nft.json +1 -0
- package/.next/server/app/api/entities/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/ingest/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/ingest/route/build-manifest.json +9 -0
- package/.next/server/app/api/ingest/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/ingest/route.js +12 -0
- package/.next/server/app/api/ingest/route.js.map +5 -0
- package/.next/server/app/api/ingest/route.js.nft.json +1 -0
- package/.next/server/app/api/ingest/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/init/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/init/route/build-manifest.json +9 -0
- package/.next/server/app/api/init/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/init/route.js +15 -0
- package/.next/server/app/api/init/route.js.map +5 -0
- package/.next/server/app/api/init/route.js.nft.json +1 -0
- package/.next/server/app/api/init/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/map/describe/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/map/describe/route/build-manifest.json +9 -0
- package/.next/server/app/api/map/describe/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/map/describe/route.js +15 -0
- package/.next/server/app/api/map/describe/route.js.map +5 -0
- package/.next/server/app/api/map/describe/route.js.nft.json +1 -0
- package/.next/server/app/api/map/describe/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/map/files/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/map/files/route/build-manifest.json +9 -0
- package/.next/server/app/api/map/files/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/map/files/route.js +15 -0
- package/.next/server/app/api/map/files/route.js.map +5 -0
- package/.next/server/app/api/map/files/route.js.nft.json +1 -0
- package/.next/server/app/api/map/files/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/map/finish/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/map/finish/route/build-manifest.json +9 -0
- package/.next/server/app/api/map/finish/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/map/finish/route.js +15 -0
- package/.next/server/app/api/map/finish/route.js.map +5 -0
- package/.next/server/app/api/map/finish/route.js.nft.json +1 -0
- package/.next/server/app/api/map/finish/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/map/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/map/route/build-manifest.json +9 -0
- package/.next/server/app/api/map/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/map/route.js +15 -0
- package/.next/server/app/api/map/route.js.map +5 -0
- package/.next/server/app/api/map/route.js.nft.json +1 -0
- package/.next/server/app/api/map/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/map/start/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/map/start/route/build-manifest.json +9 -0
- package/.next/server/app/api/map/start/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/map/start/route.js +15 -0
- package/.next/server/app/api/map/start/route.js.map +5 -0
- package/.next/server/app/api/map/start/route.js.nft.json +1 -0
- package/.next/server/app/api/map/start/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/map/touch-active/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/map/touch-active/route/build-manifest.json +9 -0
- package/.next/server/app/api/map/touch-active/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/map/touch-active/route.js +15 -0
- package/.next/server/app/api/map/touch-active/route.js.map +5 -0
- package/.next/server/app/api/map/touch-active/route.js.nft.json +1 -0
- package/.next/server/app/api/map/touch-active/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/nodes/[id]/position/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/nodes/[id]/position/route/build-manifest.json +9 -0
- package/.next/server/app/api/nodes/[id]/position/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/nodes/[id]/position/route.js +15 -0
- package/.next/server/app/api/nodes/[id]/position/route.js.map +5 -0
- package/.next/server/app/api/nodes/[id]/position/route.js.nft.json +1 -0
- package/.next/server/app/api/nodes/[id]/position/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/nodes/[id]/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/nodes/[id]/route/build-manifest.json +9 -0
- package/.next/server/app/api/nodes/[id]/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/nodes/[id]/route.js +15 -0
- package/.next/server/app/api/nodes/[id]/route.js.map +5 -0
- package/.next/server/app/api/nodes/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/nodes/[id]/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/nodes/positions/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/nodes/positions/route/build-manifest.json +9 -0
- package/.next/server/app/api/nodes/positions/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/nodes/positions/route.js +15 -0
- package/.next/server/app/api/nodes/positions/route.js.map +5 -0
- package/.next/server/app/api/nodes/positions/route.js.nft.json +1 -0
- package/.next/server/app/api/nodes/positions/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/nodes/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/nodes/route/build-manifest.json +9 -0
- package/.next/server/app/api/nodes/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/nodes/route.js +15 -0
- package/.next/server/app/api/nodes/route.js.map +5 -0
- package/.next/server/app/api/nodes/route.js.nft.json +1 -0
- package/.next/server/app/api/nodes/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/nodes/subtasks/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/nodes/subtasks/route/build-manifest.json +9 -0
- package/.next/server/app/api/nodes/subtasks/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/nodes/subtasks/route.js +15 -0
- package/.next/server/app/api/nodes/subtasks/route.js.map +5 -0
- package/.next/server/app/api/nodes/subtasks/route.js.nft.json +1 -0
- package/.next/server/app/api/nodes/subtasks/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/notes/[id]/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/notes/[id]/route/build-manifest.json +9 -0
- package/.next/server/app/api/notes/[id]/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/notes/[id]/route.js +12 -0
- package/.next/server/app/api/notes/[id]/route.js.map +5 -0
- package/.next/server/app/api/notes/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/notes/[id]/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/notes/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/notes/route/build-manifest.json +9 -0
- package/.next/server/app/api/notes/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/notes/route.js +12 -0
- package/.next/server/app/api/notes/route.js.map +5 -0
- package/.next/server/app/api/notes/route.js.nft.json +1 -0
- package/.next/server/app/api/notes/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/open/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/open/route/build-manifest.json +9 -0
- package/.next/server/app/api/open/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/open/route.js +11 -0
- package/.next/server/app/api/open/route.js.map +5 -0
- package/.next/server/app/api/open/route.js.nft.json +1 -0
- package/.next/server/app/api/open/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/plan/annotations/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/plan/annotations/route/build-manifest.json +9 -0
- package/.next/server/app/api/plan/annotations/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/plan/annotations/route.js +15 -0
- package/.next/server/app/api/plan/annotations/route.js.map +5 -0
- package/.next/server/app/api/plan/annotations/route.js.nft.json +1 -0
- package/.next/server/app/api/plan/annotations/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/plan/approve/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/plan/approve/route/build-manifest.json +9 -0
- package/.next/server/app/api/plan/approve/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/plan/approve/route.js +16 -0
- package/.next/server/app/api/plan/approve/route.js.map +5 -0
- package/.next/server/app/api/plan/approve/route.js.nft.json +1 -0
- package/.next/server/app/api/plan/approve/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/plan/history/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/plan/history/route/build-manifest.json +9 -0
- package/.next/server/app/api/plan/history/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/plan/history/route.js +11 -0
- package/.next/server/app/api/plan/history/route.js.map +5 -0
- package/.next/server/app/api/plan/history/route.js.nft.json +1 -0
- package/.next/server/app/api/plan/history/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/plan/markdown/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/plan/markdown/route/build-manifest.json +9 -0
- package/.next/server/app/api/plan/markdown/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/plan/markdown/route.js +16 -0
- package/.next/server/app/api/plan/markdown/route.js.map +5 -0
- package/.next/server/app/api/plan/markdown/route.js.nft.json +1 -0
- package/.next/server/app/api/plan/markdown/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/plan/presence/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/plan/presence/route/build-manifest.json +9 -0
- package/.next/server/app/api/plan/presence/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/plan/presence/route.js +11 -0
- package/.next/server/app/api/plan/presence/route.js.map +5 -0
- package/.next/server/app/api/plan/presence/route.js.nft.json +1 -0
- package/.next/server/app/api/plan/presence/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/plan/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/plan/route/build-manifest.json +9 -0
- package/.next/server/app/api/plan/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/plan/route.js +16 -0
- package/.next/server/app/api/plan/route.js.map +5 -0
- package/.next/server/app/api/plan/route.js.nft.json +1 -0
- package/.next/server/app/api/plan/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/plan/verdict/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/plan/verdict/route/build-manifest.json +9 -0
- package/.next/server/app/api/plan/verdict/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/plan/verdict/route.js +16 -0
- package/.next/server/app/api/plan/verdict/route.js.map +5 -0
- package/.next/server/app/api/plan/verdict/route.js.nft.json +1 -0
- package/.next/server/app/api/plan/verdict/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/preferences/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/preferences/route/build-manifest.json +9 -0
- package/.next/server/app/api/preferences/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/preferences/route.js +7 -0
- package/.next/server/app/api/preferences/route.js.map +5 -0
- package/.next/server/app/api/preferences/route.js.nft.json +1 -0
- package/.next/server/app/api/preferences/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/reset/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/reset/route/build-manifest.json +9 -0
- package/.next/server/app/api/reset/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/reset/route.js +13 -0
- package/.next/server/app/api/reset/route.js.map +5 -0
- package/.next/server/app/api/reset/route.js.nft.json +1 -0
- package/.next/server/app/api/reset/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/settings/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/settings/route/build-manifest.json +9 -0
- package/.next/server/app/api/settings/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/settings/route.js +11 -0
- package/.next/server/app/api/settings/route.js.map +5 -0
- package/.next/server/app/api/settings/route.js.nft.json +1 -0
- package/.next/server/app/api/settings/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/stream/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/stream/route/build-manifest.json +9 -0
- package/.next/server/app/api/stream/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/stream/route.js +12 -0
- package/.next/server/app/api/stream/route.js.map +5 -0
- package/.next/server/app/api/stream/route.js.nft.json +1 -0
- package/.next/server/app/api/stream/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/version/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/version/route/build-manifest.json +9 -0
- package/.next/server/app/api/version/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/version/route.js +12 -0
- package/.next/server/app/api/version/route.js.map +5 -0
- package/.next/server/app/api/version/route.js.nft.json +1 -0
- package/.next/server/app/api/version/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/workspace/activate/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/workspace/activate/route/build-manifest.json +9 -0
- package/.next/server/app/api/workspace/activate/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/workspace/activate/route.js +14 -0
- package/.next/server/app/api/workspace/activate/route.js.map +5 -0
- package/.next/server/app/api/workspace/activate/route.js.nft.json +1 -0
- package/.next/server/app/api/workspace/activate/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/workspace/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/workspace/route/build-manifest.json +9 -0
- package/.next/server/app/api/workspace/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/workspace/route.js +11 -0
- package/.next/server/app/api/workspace/route.js.map +5 -0
- package/.next/server/app/api/workspace/route.js.nft.json +1 -0
- package/.next/server/app/api/workspace/route_client-reference-manifest.js +3 -0
- package/.next/server/app/apple-icon.png/route/app-paths-manifest.json +3 -0
- package/.next/server/app/apple-icon.png/route/build-manifest.json +9 -0
- package/.next/server/app/apple-icon.png/route.js +8 -0
- package/.next/server/app/apple-icon.png/route.js.map +5 -0
- package/.next/server/app/apple-icon.png/route.js.nft.json +1 -0
- package/.next/server/app/apple-icon.png.body +0 -0
- package/.next/server/app/apple-icon.png.meta +1 -0
- package/.next/server/app/help/page/app-paths-manifest.json +3 -0
- package/.next/server/app/help/page/build-manifest.json +17 -0
- package/.next/server/app/help/page/next-font-manifest.json +11 -0
- package/.next/server/app/help/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/help/page/server-reference-manifest.json +4 -0
- package/.next/server/app/help/page.js +16 -0
- package/.next/server/app/help/page.js.map +5 -0
- package/.next/server/app/help/page.js.nft.json +1 -0
- package/.next/server/app/help/page_client-reference-manifest.js +3 -0
- package/.next/server/app/help.html +1 -0
- package/.next/server/app/help.meta +15 -0
- package/.next/server/app/help.rsc +36 -0
- package/.next/server/app/help.segments/_full.segment.rsc +36 -0
- package/.next/server/app/help.segments/_head.segment.rsc +6 -0
- package/.next/server/app/help.segments/_index.segment.rsc +13 -0
- package/.next/server/app/help.segments/_tree.segment.rsc +5 -0
- package/.next/server/app/help.segments/help/__PAGE__.segment.rsc +17 -0
- package/.next/server/app/help.segments/help.segment.rsc +5 -0
- package/.next/server/app/icon.svg/route/app-paths-manifest.json +3 -0
- package/.next/server/app/icon.svg/route/build-manifest.json +9 -0
- package/.next/server/app/icon.svg/route.js +7 -0
- package/.next/server/app/icon.svg/route.js.map +5 -0
- package/.next/server/app/icon.svg/route.js.nft.json +1 -0
- package/.next/server/app/icon.svg.body +4 -0
- package/.next/server/app/icon.svg.meta +1 -0
- package/.next/server/app/index.html +1 -0
- package/.next/server/app/index.meta +14 -0
- package/.next/server/app/index.rsc +26 -0
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +7 -0
- package/.next/server/app/index.segments/_full.segment.rsc +26 -0
- package/.next/server/app/index.segments/_head.segment.rsc +6 -0
- package/.next/server/app/index.segments/_index.segment.rsc +13 -0
- package/.next/server/app/index.segments/_tree.segment.rsc +6 -0
- package/.next/server/app/map/page/app-paths-manifest.json +3 -0
- package/.next/server/app/map/page/build-manifest.json +17 -0
- package/.next/server/app/map/page/next-font-manifest.json +11 -0
- package/.next/server/app/map/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/map/page/server-reference-manifest.json +89 -0
- package/.next/server/app/map/page.js +25 -0
- package/.next/server/app/map/page.js.map +5 -0
- package/.next/server/app/map/page.js.nft.json +1 -0
- package/.next/server/app/map/page_client-reference-manifest.js +3 -0
- package/.next/server/app/page/app-paths-manifest.json +3 -0
- package/.next/server/app/page/build-manifest.json +17 -0
- package/.next/server/app/page/next-font-manifest.json +11 -0
- package/.next/server/app/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/page/server-reference-manifest.json +4 -0
- package/.next/server/app/page.js +16 -0
- package/.next/server/app/page.js.map +5 -0
- package/.next/server/app/page.js.nft.json +1 -0
- package/.next/server/app/page_client-reference-manifest.js +3 -0
- package/.next/server/app/plan/page/app-paths-manifest.json +3 -0
- package/.next/server/app/plan/page/build-manifest.json +17 -0
- package/.next/server/app/plan/page/next-font-manifest.json +11 -0
- package/.next/server/app/plan/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/plan/page/server-reference-manifest.json +89 -0
- package/.next/server/app/plan/page.js +26 -0
- package/.next/server/app/plan/page.js.map +5 -0
- package/.next/server/app/plan/page.js.nft.json +1 -0
- package/.next/server/app/plan/page_client-reference-manifest.js +3 -0
- package/.next/server/app/settings/page/app-paths-manifest.json +3 -0
- package/.next/server/app/settings/page/build-manifest.json +17 -0
- package/.next/server/app/settings/page/next-font-manifest.json +11 -0
- package/.next/server/app/settings/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/settings/page/server-reference-manifest.json +4 -0
- package/.next/server/app/settings/page.js +17 -0
- package/.next/server/app/settings/page.js.map +5 -0
- package/.next/server/app/settings/page.js.nft.json +1 -0
- package/.next/server/app/settings/page_client-reference-manifest.js +3 -0
- package/.next/server/app-paths-manifest.json +59 -0
- package/.next/server/chunks/[externals]_@huggingface_transformers_05bd-zz._.js +3 -0
- package/.next/server/chunks/[externals]_@huggingface_transformers_05bd-zz._.js.map +1 -0
- package/.next/server/chunks/[externals]__1m_jh08._.js +3 -0
- package/.next/server/chunks/[externals]__1m_jh08._.js.map +1 -0
- package/.next/server/chunks/[externals]_next_dist_1081pat._.js +3 -0
- package/.next/server/chunks/[externals]_next_dist_1081pat._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0--8e0y._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0--8e0y._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0-68r22._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0-68r22._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__008acf8._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__008acf8._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__00rostp._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__00rostp._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__04deymo._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__04deymo._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__05_ckr9._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__05_ckr9._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__08b769e._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__08b769e._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0935gge._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0935gge._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0b04f4n._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0b04f4n._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0bule95._.js +11 -0
- package/.next/server/chunks/[root-of-the-server]__0bule95._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0dgnobj._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0dgnobj._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0fnoun8._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0fnoun8._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0gcvcx_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0gcvcx_._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0gnu9c5._.js +11 -0
- package/.next/server/chunks/[root-of-the-server]__0gnu9c5._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0imrhoi._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0imrhoi._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0iq9oau._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0iq9oau._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0k_e0ex._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0k_e0ex._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0kj4pte._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0kj4pte._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0muvnnv._.js +11 -0
- package/.next/server/chunks/[root-of-the-server]__0muvnnv._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0olqs85._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0olqs85._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0r4ba8s._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0r4ba8s._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0sb_5m8._.js +20 -0
- package/.next/server/chunks/[root-of-the-server]__0sb_5m8._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0y6kb2t._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0y6kb2t._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0zfwiuh._.js +11 -0
- package/.next/server/chunks/[root-of-the-server]__0zfwiuh._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__11037f1._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__11037f1._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1197yfd._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1197yfd._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__138pbmp._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__138pbmp._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__166th-t._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__166th-t._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__190_wb7._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__190_wb7._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__190zu98._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__190zu98._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1_7ntsu._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1_7ntsu._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1bwqb44._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1bwqb44._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1d6w22k._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1d6w22k._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1d9wmd_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1d9wmd_._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1j25n4-._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__1j25n4-._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1jtw_i1._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1jtw_i1._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1lv6sqm._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1lv6sqm._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1m2v05v._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1m2v05v._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1n-kcwj._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1n-kcwj._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1nn9crd._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1nn9crd._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1rimo-u._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1rimo-u._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1sb7b9b._.js +9 -0
- package/.next/server/chunks/[root-of-the-server]__1sb7b9b._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1t2egm-._.js +9 -0
- package/.next/server/chunks/[root-of-the-server]__1t2egm-._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1t3s3-y._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1t3s3-y._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1tab6-_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1tab6-_._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1v3_x0a._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1v3_x0a._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1vq6_bb._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1vq6_bb._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1xfg6n4._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1xfg6n4._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__1y_g68p._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1y_g68p._.js.map +1 -0
- package/.next/server/chunks/[turbopack]_runtime.js +903 -0
- package/.next/server/chunks/[turbopack]_runtime.js.map +11 -0
- package/.next/server/chunks/_0-k8r4o._.js +3 -0
- package/.next/server/chunks/_0-k8r4o._.js.map +1 -0
- package/.next/server/chunks/_00drqg3._.js +3 -0
- package/.next/server/chunks/_00drqg3._.js.map +1 -0
- package/.next/server/chunks/_04_hx58._.js +3 -0
- package/.next/server/chunks/_04_hx58._.js.map +1 -0
- package/.next/server/chunks/_0bj_zep._.js +3 -0
- package/.next/server/chunks/_0bj_zep._.js.map +1 -0
- package/.next/server/chunks/_0d9p87n._.js +3 -0
- package/.next/server/chunks/_0d9p87n._.js.map +1 -0
- package/.next/server/chunks/_0uzzk4s._.js +3 -0
- package/.next/server/chunks/_0uzzk4s._.js.map +1 -0
- package/.next/server/chunks/_0x--pb9._.js +3 -0
- package/.next/server/chunks/_0x--pb9._.js.map +1 -0
- package/.next/server/chunks/_1-006gs._.js +11 -0
- package/.next/server/chunks/_1-006gs._.js.map +1 -0
- package/.next/server/chunks/_1gmut2r._.js +3 -0
- package/.next/server/chunks/_1gmut2r._.js.map +1 -0
- package/.next/server/chunks/_1h7jba5._.js +3 -0
- package/.next/server/chunks/_1h7jba5._.js.map +1 -0
- package/.next/server/chunks/_1p13_nj._.js +3 -0
- package/.next/server/chunks/_1p13_nj._.js.map +1 -0
- package/.next/server/chunks/_1v92m46._.js +11 -0
- package/.next/server/chunks/_1v92m46._.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_code-graph_position_route_actions_0ddmfq8.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_code-graph_position_route_actions_0ddmfq8.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_code-graph_route_actions_107oiy1.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_code-graph_route_actions_107oiy1.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_context_embed-backfill_route_actions_0fddf11.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_context_embed-backfill_route_actions_0fddf11.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_context_feature_route_actions_0g4_r0t.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_context_feature_route_actions_0g4_r0t.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_context_file_route_actions_1v15k33.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_context_file_route_actions_1v15k33.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_context_route_actions_066vuc0.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_context_route_actions_066vuc0.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_db_backfill-access_route_actions_0krkam5.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_db_backfill-access_route_actions_0krkam5.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_db_position_route_actions_0y81s5h.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_db_position_route_actions_0y81s5h.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_db_reconcile-endpoints_route_actions_11wjo3_.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_db_reconcile-endpoints_route_actions_11wjo3_.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_db_relations_[id]_route_actions_0ok7b-c.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_db_relations_[id]_route_actions_0ok7b-c.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_db_tables_[id]_route_actions_17b6_8p.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_db_tables_[id]_route_actions_17b6_8p.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_draft_approve_route_actions_12l1gql.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_draft_approve_route_actions_12l1gql.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_draft_route_actions_1y2euqt.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_draft_route_actions_1y2euqt.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_draft_status_route_actions_0imc7yr.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_draft_status_route_actions_0imc7yr.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_edges_[id]_route_actions_1rx28dy.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_edges_[id]_route_actions_1rx28dy.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_edges_route_actions_1i6-f0p.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_edges_route_actions_1i6-f0p.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_endpoints_[id]_route_actions_1hynl36.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_endpoints_[id]_route_actions_1hynl36.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_entities_route_actions_1jx0-vm.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_entities_route_actions_1jx0-vm.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_ingest_route_actions_1oz_9xc.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_ingest_route_actions_1oz_9xc.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_init_route_actions_00i08o0.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_init_route_actions_00i08o0.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_map_describe_route_actions_04m22-e.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_map_describe_route_actions_04m22-e.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_map_files_route_actions_1gsvfd9.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_map_files_route_actions_1gsvfd9.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_map_finish_route_actions_130bs5b.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_map_finish_route_actions_130bs5b.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_map_route_actions_1ylt-yg.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_map_route_actions_1ylt-yg.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_map_start_route_actions_1n4zdon.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_map_start_route_actions_1n4zdon.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_map_touch-active_route_actions_0wvoq-h.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_map_touch-active_route_actions_0wvoq-h.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_nodes_[id]_position_route_actions_0_695u2.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_nodes_[id]_position_route_actions_0_695u2.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_nodes_[id]_route_actions_017e_f3.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_nodes_[id]_route_actions_017e_f3.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_nodes_positions_route_actions_1pz3o9o.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_nodes_positions_route_actions_1pz3o9o.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_nodes_route_actions_0iuxxdu.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_nodes_route_actions_0iuxxdu.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_nodes_subtasks_route_actions_0uw715o.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_nodes_subtasks_route_actions_0uw715o.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_notes_[id]_route_actions_1kpl381.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_notes_[id]_route_actions_1kpl381.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_notes_route_actions_0mm_p_3.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_notes_route_actions_0mm_p_3.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_open_route_actions_1x77eq1.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_open_route_actions_1x77eq1.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_annotations_route_actions_11aui44.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_annotations_route_actions_11aui44.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_approve_route_actions_06jkmnf.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_approve_route_actions_06jkmnf.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_history_route_actions_17hqx0m.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_history_route_actions_17hqx0m.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_markdown_route_actions_1qb1-9r.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_markdown_route_actions_1qb1-9r.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_presence_route_actions_1r91k5c.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_presence_route_actions_1r91k5c.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_route_actions_1_nzr8r.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_route_actions_1_nzr8r.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_verdict_route_actions_10xm0j8.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_plan_verdict_route_actions_10xm0j8.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_preferences_route_actions_14__a0r.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_preferences_route_actions_14__a0r.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_reset_route_actions_1tcp2ms.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_reset_route_actions_1tcp2ms.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_settings_route_actions_1bpm9ac.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_settings_route_actions_1bpm9ac.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_stream_route_actions_0oy6g75.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_stream_route_actions_0oy6g75.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_version_route_actions_0kbx30h.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_version_route_actions_0kbx30h.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_workspace_activate_route_actions_1hv2y82.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_workspace_activate_route_actions_1hv2y82.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_workspace_route_actions_19-xkal.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_workspace_route_actions_19-xkal.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_apple-icon_png_route_actions_0jcl8au.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_apple-icon_png_route_actions_0jcl8au.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_icon_svg_route_actions_1r2h_ub.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_icon_svg_route_actions_1r2h_ub.js.map +1 -0
- package/.next/server/chunks/instrumentation_ts_1oq3o45._.js +3 -0
- package/.next/server/chunks/instrumentation_ts_1oq3o45._.js.map +1 -0
- package/.next/server/chunks/lib_04zrdtl._.js +3 -0
- package/.next/server/chunks/lib_04zrdtl._.js.map +1 -0
- package/.next/server/chunks/lib_0rad2y6._.js +3 -0
- package/.next/server/chunks/lib_0rad2y6._.js.map +1 -0
- package/.next/server/chunks/lib_10tibe8._.js +7 -0
- package/.next/server/chunks/lib_10tibe8._.js.map +1 -0
- package/.next/server/chunks/lib_1upr0dj._.js +3 -0
- package/.next/server/chunks/lib_1upr0dj._.js.map +1 -0
- package/.next/server/chunks/lib_1wz-3od._.js +3 -0
- package/.next/server/chunks/lib_1wz-3od._.js.map +1 -0
- package/.next/server/chunks/lib_1xzwro7._.js +3 -0
- package/.next/server/chunks/lib_1xzwro7._.js.map +1 -0
- package/.next/server/chunks/lib_db_ts_0h_yn5m._.js +3 -0
- package/.next/server/chunks/lib_db_ts_0h_yn5m._.js.map +1 -0
- package/.next/server/chunks/lib_drizzle_provision_ts_1po9dyo._.js +3 -0
- package/.next/server/chunks/lib_drizzle_provision_ts_1po9dyo._.js.map +1 -0
- package/.next/server/chunks/lib_drizzle_schema_ts_0ixydnz._.js +3 -0
- package/.next/server/chunks/lib_drizzle_schema_ts_0ixydnz._.js.map +1 -0
- package/.next/server/chunks/lib_roadmap-force-layout_ts_0e5r3g2._.js +3 -0
- package/.next/server/chunks/lib_roadmap-force-layout_ts_0e5r3g2._.js.map +1 -0
- package/.next/server/chunks/node_modules_drizzle-orm_05n3ooz._.js +3 -0
- package/.next/server/chunks/node_modules_drizzle-orm_05n3ooz._.js.map +1 -0
- package/.next/server/chunks/node_modules_drizzle-orm_0cht0an._.js +3 -0
- package/.next/server/chunks/node_modules_drizzle-orm_0cht0an._.js.map +1 -0
- package/.next/server/chunks/node_modules_drizzle-orm_0ma7f2e._.js +4 -0
- package/.next/server/chunks/node_modules_drizzle-orm_0ma7f2e._.js.map +1 -0
- package/.next/server/chunks/node_modules_drizzle-orm_0q0hg2u._.js +4 -0
- package/.next/server/chunks/node_modules_drizzle-orm_0q0hg2u._.js.map +1 -0
- package/.next/server/chunks/node_modules_drizzle-orm_0rs3wbv._.js +3 -0
- package/.next/server/chunks/node_modules_drizzle-orm_0rs3wbv._.js.map +1 -0
- package/.next/server/chunks/node_modules_drizzle-orm_index_1qnscv7.js +3 -0
- package/.next/server/chunks/node_modules_drizzle-orm_index_1qnscv7.js.map +1 -0
- package/.next/server/chunks/node_modules_drizzle-orm_libsql_0yabams._.js +15 -0
- package/.next/server/chunks/node_modules_drizzle-orm_libsql_0yabams._.js.map +1 -0
- package/.next/server/chunks/node_modules_next_08s853w._.js +13 -0
- package/.next/server/chunks/node_modules_next_08s853w._.js.map +1 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0qz67ql.js +3 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0qz67ql.js.map +1 -0
- package/.next/server/chunks/node_modules_zod_v4_classic_external_1-pw2v2.js +64 -0
- package/.next/server/chunks/node_modules_zod_v4_classic_external_1-pw2v2.js.map +1 -0
- package/.next/server/chunks/ssr/[externals]_@huggingface_transformers_05bd-zz._.js +3 -0
- package/.next/server/chunks/ssr/[externals]_@huggingface_transformers_05bd-zz._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__00vz2sw._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__00vz2sw._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__07b655z._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__07b655z._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0dr0a32._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0dr0a32._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0jx25ik._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0jx25ik._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0nqskgw._.js +19 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0nqskgw._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0pkeb0m._.js +9 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0pkeb0m._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0s74gvr._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0s74gvr._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0v7a-e-._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0v7a-e-._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0x4-71n._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0x4-71n._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0xqf488._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0xqf488._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0y_88xg._.js +33 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0y_88xg._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1-yyv5l._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1-yyv5l._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1366qju._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1366qju._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1_ustu7._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1_ustu7._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1dky4g0._.js +33 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1dky4g0._.js.map +1 -0
- package/.next/server/chunks/ssr/[turbopack]_runtime.js +903 -0
- package/.next/server/chunks/ssr/[turbopack]_runtime.js.map +11 -0
- package/.next/server/chunks/ssr/_0eabx1f._.js +3 -0
- package/.next/server/chunks/ssr/_0eabx1f._.js.map +1 -0
- package/.next/server/chunks/ssr/_0ni84yi._.js +3 -0
- package/.next/server/chunks/ssr/_0ni84yi._.js.map +1 -0
- package/.next/server/chunks/ssr/_0pgw716._.js +67 -0
- package/.next/server/chunks/ssr/_0pgw716._.js.map +1 -0
- package/.next/server/chunks/ssr/_0r84jcg._.js +6 -0
- package/.next/server/chunks/ssr/_0r84jcg._.js.map +1 -0
- package/.next/server/chunks/ssr/_15if8ma._.js +3 -0
- package/.next/server/chunks/ssr/_15if8ma._.js.map +1 -0
- package/.next/server/chunks/ssr/_176djsq._.js +4 -0
- package/.next/server/chunks/ssr/_176djsq._.js.map +1 -0
- package/.next/server/chunks/ssr/_179xsho._.js +3 -0
- package/.next/server/chunks/ssr/_179xsho._.js.map +1 -0
- package/.next/server/chunks/ssr/_1_n8arv._.js +3 -0
- package/.next/server/chunks/ssr/_1_n8arv._.js.map +1 -0
- package/.next/server/chunks/ssr/_1suxp_q._.js +3 -0
- package/.next/server/chunks/ssr/_1suxp_q._.js.map +1 -0
- package/.next/server/chunks/ssr/_1vt70iy._.js +18 -0
- package/.next/server/chunks/ssr/_1vt70iy._.js.map +1 -0
- package/.next/server/chunks/ssr/_1w2komx._.js +3 -0
- package/.next/server/chunks/ssr/_1w2komx._.js.map +1 -0
- package/.next/server/chunks/ssr/_1w73gpg._.js +4 -0
- package/.next/server/chunks/ssr/_1w73gpg._.js.map +1 -0
- package/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0zi5s8-.js +3 -0
- package/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0zi5s8-.js.map +1 -0
- package/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0pt47yr.js +3 -0
- package/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0pt47yr.js.map +1 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_help_page_actions_04daq_g.js +3 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_help_page_actions_04daq_g.js.map +1 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_page_actions_0hhsz1j.js +3 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_page_actions_0hhsz1j.js.map +1 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_settings_page_actions_11x4dq5.js +3 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_settings_page_actions_11x4dq5.js.map +1 -0
- package/.next/server/chunks/ssr/components_1wolv70._.js +157 -0
- package/.next/server/chunks/ssr/components_1wolv70._.js.map +1 -0
- package/.next/server/chunks/ssr/components_graph_files-map-client_tsx_10bha9z._.js +3 -0
- package/.next/server/chunks/ssr/components_graph_files-map-client_tsx_10bha9z._.js.map +1 -0
- package/.next/server/chunks/ssr/components_landing_landing_tsx_1_9k5z7._.js +3 -0
- package/.next/server/chunks/ssr/components_landing_landing_tsx_1_9k5z7._.js.map +1 -0
- package/.next/server/chunks/ssr/components_plan_plan-workspace_tsx_0t1topu._.js +3 -0
- package/.next/server/chunks/ssr/components_plan_plan-workspace_tsx_0t1topu._.js.map +1 -0
- package/.next/server/chunks/ssr/lib_13g58ln._.js +3 -0
- package/.next/server/chunks/ssr/lib_13g58ln._.js.map +1 -0
- package/.next/server/chunks/ssr/lib_db_ts_0bo045t._.js +3 -0
- package/.next/server/chunks/ssr/lib_db_ts_0bo045t._.js.map +1 -0
- package/.next/server/chunks/ssr/lib_drizzle_schema_ts_0oz5uob._.js +3 -0
- package/.next/server/chunks/ssr/lib_drizzle_schema_ts_0oz5uob._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_0h91jdk._.js +33 -0
- package/.next/server/chunks/ssr/node_modules_0h91jdk._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_0vtauab._.js +3 -0
- package/.next/server/chunks/ssr/node_modules_0vtauab._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_drizzle-orm_0txo559._.js +4 -0
- package/.next/server/chunks/ssr/node_modules_drizzle-orm_0txo559._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_drizzle-orm_1d7zgzr._.js +4 -0
- package/.next/server/chunks/ssr/node_modules_drizzle-orm_1d7zgzr._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_drizzle-orm_1zqkwdy._.js +3 -0
- package/.next/server/chunks/ssr/node_modules_drizzle-orm_1zqkwdy._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_drizzle-orm_202ujxv._.js +3 -0
- package/.next/server/chunks/ssr/node_modules_drizzle-orm_202ujxv._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_drizzle-orm_index_0ji3_g8.js +3 -0
- package/.next/server/chunks/ssr/node_modules_drizzle-orm_index_0ji3_g8.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_drizzle-orm_libsql_06opikx._.js +15 -0
- package/.next/server/chunks/ssr/node_modules_drizzle-orm_libsql_06opikx._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_shield-check_mjs_1cccgdy._.js +3 -0
- package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_shield-check_mjs_1cccgdy._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_0890nbp._.js +3 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_0890nbp._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_0airgni._.js +3 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_0airgni._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_0alesp5._.js +3 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_0alesp5._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_0uboya6._.js +6 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_0uboya6._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0wpq8j3._.js +3 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0wpq8j3._.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0symwr9.js +3 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0symwr9.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0-o-goa.js +3 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0-o-goa.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0l_sp0x.js +3 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0l_sp0x.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_compiled_@opentelemetry_api_index_1oy1nwh.js +3 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_compiled_@opentelemetry_api_index_1oy1nwh.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0d7qbqa.js +4 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0d7qbqa.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0s87tpk.js +4 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0s87tpk.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_114qdo2.js +4 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_114qdo2.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_19--w_z.js +4 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_19--w_z.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_19_kztz.js +4 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_19_kztz.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_19qzf81.js +4 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_19qzf81.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1wge0av.js +4 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1wge0av.js.map +1 -0
- package/.next/server/edge/chunks/_0o_tvsk._.js +3 -0
- package/.next/server/edge/chunks/_0o_tvsk._.js.map +1 -0
- package/.next/server/edge/chunks/node_modules_next_dist_esm_build_templates_edge-wrapper_1ipl-lx.js.map +1 -0
- package/.next/server/edge/chunks/turbopack-node_modules_next_dist_esm_build_templates_edge-wrapper_1ipl-lx.js +3 -0
- package/.next/server/functions-config-manifest.json +14 -0
- package/.next/server/instrumentation/middleware-manifest.json +12 -0
- package/.next/server/instrumentation.js +4 -0
- package/.next/server/instrumentation.js.map +5 -0
- package/.next/server/instrumentation.js.nft.json +1 -0
- package/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/.next/server/middleware/middleware-manifest.json +6 -0
- package/.next/server/middleware-build-manifest.js +21 -0
- package/.next/server/middleware-manifest.json +6 -0
- package/.next/server/middleware.js +5 -0
- package/.next/server/middleware.js.map +5 -0
- package/.next/server/middleware.js.nft.json +1 -0
- package/.next/server/next-font-manifest.js +1 -0
- package/.next/server/next-font-manifest.json +31 -0
- package/.next/server/pages/404.html +1 -0
- package/.next/server/pages/500.html +1 -0
- package/.next/server/pages-manifest.json +4 -0
- package/.next/server/prefetch-hints.json +1 -0
- package/.next/server/server-reference-manifest.js +1 -0
- package/.next/server/server-reference-manifest.json +132 -0
- package/.next/static/_wmO3ZSrpuwty88NNlnrH/_buildManifest.js +11 -0
- package/.next/static/_wmO3ZSrpuwty88NNlnrH/_clientMiddlewareManifest.js +6 -0
- package/.next/static/_wmO3ZSrpuwty88NNlnrH/_ssgManifest.js +1 -0
- package/.next/static/chunks/01dkdyukbdpqq.js +31 -0
- package/.next/static/chunks/05-c3ty_6dwfk.js +1 -0
- package/.next/static/chunks/07u_h6i539_wj.js +2 -0
- package/.next/static/chunks/09wlenlnsbkl7.js +2 -0
- package/.next/static/chunks/0_9p121-4am0a.js +1 -0
- package/.next/static/chunks/0cz1d0mv5g_q7.js +1 -0
- package/.next/static/chunks/19cl65vz3pos0.js +1 -0
- package/.next/static/chunks/19hoowcssv0w1.css +1 -0
- package/.next/static/chunks/1bk_i_akra521.css +2 -0
- package/.next/static/chunks/1pp98vred9isg.js +1 -0
- package/.next/static/chunks/2-t6-hz_de2nr.js +155 -0
- package/.next/static/chunks/203o948823s96.css +1 -0
- package/.next/static/chunks/245vq4i7_x7tm.js +1 -0
- package/.next/static/chunks/27jktro2p5rq9.js +4 -0
- package/.next/static/chunks/2hpdskhtooxl4.js +1 -0
- package/.next/static/chunks/368etk_9oovhj.js +1 -0
- package/.next/static/chunks/3n7dm2ojtyzwn.js +1 -0
- package/.next/static/chunks/3oc95d6bep78a.css +1 -0
- package/.next/static/chunks/3qp8f4catg9zw.js +2 -0
- package/.next/static/chunks/3ywpldblg905c.js +1 -0
- package/.next/static/chunks/4397avi9yar6d.js +1 -0
- package/.next/static/chunks/44_nvrzzjs0pv.js +1 -0
- package/.next/static/chunks/turbopack-0rldyqi2kcq2j.js +1 -0
- package/.next/static/media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2 +0 -0
- package/.next/static/media/53b9e256198e5412-s.390ncx5urfkfu.woff2 +0 -0
- package/.next/static/media/5ce348bf30bf5439-s.31988l_ccedte.woff2 +0 -0
- package/.next/static/media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2 +0 -0
- package/.next/static/media/7178b3e590c64307-s.21jp631_3pja2.woff2 +0 -0
- package/.next/static/media/797e433ab948586e-s.p.0r6juujl39pe6.woff2 +0 -0
- package/.next/static/media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2 +0 -0
- package/.next/static/media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2 +0 -0
- package/.next/static/media/apple-icon.0qbqv4vpdxdo0.png +0 -0
- package/.next/static/media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2 +0 -0
- package/.next/static/media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2 +0 -0
- package/.next/static/media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2 +0 -0
- package/.next/static/media/icon.23_qbw6oy1xqy.svg +4 -0
- package/.next/trace +2 -0
- package/.next/trace-build +1 -0
- package/.next/turbopack +0 -0
- package/.next/types/cache-life.d.ts +145 -0
- package/.next/types/routes.d.ts +124 -0
- package/.next/types/validator.ts +538 -0
- package/README.md +94 -0
- package/dist/bin/beacon.js +10 -0
- package/dist/bin/doctor.js +227 -0
- package/dist/bin/hook.js +225 -0
- package/dist/bin/mcp.js +247 -0
- package/dist/bin/plan.js +228 -0
- package/dist/bin/prompt.js +4 -0
- package/dist/bin/stop-hook.js +5 -0
- package/dist/bin/uninstall.js +228 -0
- package/dist/lib/assets.js +192 -0
- package/dist/lib/global-install.js +224 -0
- package/dist/lib/workspaces.js +2 -0
- package/drizzle/0000_bitter_network.sql +230 -0
- package/drizzle/meta/0000_snapshot.json +1589 -0
- package/drizzle/meta/_journal.json +13 -0
- package/next.config.ts +15 -0
- package/package.json +90 -0
- package/public/brand/beacon-apple.svg +30 -0
- package/public/brand/beacon-glyph-128.png +0 -0
- package/public/brand/beacon-glyph-512.png +0 -0
- package/public/brand/beacon-glyph-mono-128.png +0 -0
- package/public/brand/beacon-glyph-mono-512.png +0 -0
- package/public/brand/beacon-glyph-mono.svg +4 -0
- package/public/brand/beacon-glyph.svg +21 -0
- package/public/brand/beacon-icon-1024.png +0 -0
- package/public/brand/beacon-icon-192.png +0 -0
- package/public/brand/beacon-icon-256.png +0 -0
- package/public/brand/beacon-icon-32.png +0 -0
- package/public/brand/beacon-icon-512.png +0 -0
- package/public/brand/beacon-icon-64.png +0 -0
- package/public/brand/beacon-icon-light-192.png +0 -0
- package/public/brand/beacon-icon-light-512.png +0 -0
- package/public/brand/beacon-icon-light.svg +31 -0
- package/public/brand/beacon-icon.svg +33 -0
- package/public/brand/beacon-wordmark-1200.png +0 -0
- package/public/brand/beacon-wordmark.svg +38 -0
- package/public/brand/favicon-16.png +0 -0
- package/public/brand/favicon-32.png +0 -0
- package/public/file.svg +1 -0
- package/public/globe.svg +1 -0
- package/public/install.sh +55 -0
- package/public/next.svg +1 -0
- package/public/vercel.svg +1 -0
- package/public/window.svg +1 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,54548,91889,60208,30590,e=>{"use strict";e.i(47167);var t,n,r,o,i,a,s,l,d,c,u,h,f,p,m,g,x,y=e.i(43476),b=e.i(71645);function v(e){if("string"==typeof e||"number"==typeof e)return""+e;let t="";if(Array.isArray(e))for(let n=0,r;n<e.length;n++)""!==(r=v(e[n]))&&(t+=(t&&" ")+r);else for(let n in e)e[n]&&(t+=(t&&" ")+n);return t}var w={value:()=>{}};function k(){for(var e,t=0,n=arguments.length,r={};t<n;++t){if(!(e=arguments[t]+"")||e in r||/[\s.]/.test(e))throw Error("illegal type: "+e);r[e]=[]}return new N(r)}function N(e){this._=e}function S(e,t,n){for(var r=0,o=e.length;r<o;++r)if(e[r].name===t){e[r]=w,e=e.slice(0,r).concat(e.slice(r+1));break}return null!=n&&e.push({name:t,value:n}),e}function j(){}function C(e){return null==e?j:function(){return this.querySelector(e)}}function E(){return[]}function M(e){return null==e?E:function(){return this.querySelectorAll(e)}}function _(e){return function(){return this.matches(e)}}function A(e){return function(t){return t.matches(e)}}N.prototype=k.prototype={constructor:N,on:function(e,t){var n,r=this._,o=(e+"").trim().split(/^|\s+/).map(function(e){var t="",n=e.indexOf(".");if(n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),e&&!r.hasOwnProperty(e))throw Error("unknown type: "+e);return{type:e,name:t}}),i=-1,a=o.length;if(arguments.length<2){for(;++i<a;)if((n=(e=o[i]).type)&&(n=function(e,t){for(var n,r=0,o=e.length;r<o;++r)if((n=e[r]).name===t)return n.value}(r[n],e.name)))return n;return}if(null!=t&&"function"!=typeof t)throw Error("invalid callback: "+t);for(;++i<a;)if(n=(e=o[i]).type)r[n]=S(r[n],e.name,t);else if(null==t)for(n in r)r[n]=S(r[n],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new N(e)},call:function(e,t){if((n=arguments.length-2)>0)for(var n,r,o=Array(n),i=0;i<n;++i)o[i]=arguments[i+2];if(!this._.hasOwnProperty(e))throw Error("unknown type: "+e);for(r=this._[e],i=0,n=r.length;i<n;++i)r[i].value.apply(t,o)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error("unknown type: "+e);for(var r=this._[e],o=0,i=r.length;o<i;++o)r[o].value.apply(t,n)}},e.s(["dispatch",0,k],91889);var P=Array.prototype.find;function T(){return this.firstElementChild}var D=Array.prototype.filter;function I(){return Array.from(this.children)}function R(e){return Array(e.length)}function z(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}function $(e,t,n,r,o,i){for(var a,s=0,l=t.length,d=i.length;s<d;++s)(a=t[s])?(a.__data__=i[s],r[s]=a):n[s]=new z(e,i[s]);for(;s<l;++s)(a=t[s])&&(o[s]=a)}function O(e,t,n,r,o,i,a){var s,l,d,c=new Map,u=t.length,h=i.length,f=Array(u);for(s=0;s<u;++s)(l=t[s])&&(f[s]=d=a.call(l,l.__data__,s,t)+"",c.has(d)?o[s]=l:c.set(d,l));for(s=0;s<h;++s)d=a.call(e,i[s],s,i)+"",(l=c.get(d))?(r[s]=l,l.__data__=i[s],c.delete(d)):n[s]=new z(e,i[s]);for(s=0;s<u;++s)(l=t[s])&&c.get(f[s])===l&&(o[s]=l)}function L(e){return e.__data__}function B(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}z.prototype={constructor:z,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};var H="http://www.w3.org/1999/xhtml";let F={svg:"http://www.w3.org/2000/svg",xhtml:H,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function V(e){var t=e+="",n=t.indexOf(":");return n>=0&&"xmlns"!==(t=e.slice(0,n))&&(e=e.slice(n+1)),F.hasOwnProperty(t)?{space:F[t],local:e}:e}function X(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function Y(e,t){return e.style.getPropertyValue(t)||X(e).getComputedStyle(e,null).getPropertyValue(t)}function U(e){return e.trim().split(/^|\s+/)}function K(e){return e.classList||new q(e)}function q(e){this._node=e,this._names=U(e.getAttribute("class")||"")}function Z(e,t){for(var n=K(e),r=-1,o=t.length;++r<o;)n.add(t[r])}function W(e,t){for(var n=K(e),r=-1,o=t.length;++r<o;)n.remove(t[r])}function G(){this.textContent=""}function Q(){this.innerHTML=""}function J(){this.nextSibling&&this.parentNode.appendChild(this)}function ee(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function et(e){var t=V(e);return(t.local?function(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}:function(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===H&&t.documentElement.namespaceURI===H?t.createElement(e):t.createElementNS(n,e)}})(t)}function en(){return null}function er(){var e=this.parentNode;e&&e.removeChild(this)}function eo(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function ei(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function ea(e){return function(){var t=this.__on;if(t){for(var n,r=0,o=-1,i=t.length;r<i;++r)(n=t[r],e.type&&n.type!==e.type||n.name!==e.name)?t[++o]=n:this.removeEventListener(n.type,n.listener,n.options);++o?t.length=o:delete this.__on}}}function es(e,t,n){return function(){var r,o=this.__on,i=function(e){t.call(this,e,this.__data__)};if(o){for(var a=0,s=o.length;a<s;++a)if((r=o[a]).type===e.type&&r.name===e.name){this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=i,r.options=n),r.value=t;return}}this.addEventListener(e.type,i,n),r={type:e.type,name:e.name,value:t,listener:i,options:n},o?o.push(r):this.__on=[r]}}function el(e,t,n){var r=X(e),o=r.CustomEvent;"function"==typeof o?o=new o(t,n):(o=r.document.createEvent("Event"),n?(o.initEvent(t,n.bubbles,n.cancelable),o.detail=n.detail):o.initEvent(t,!1,!1)),e.dispatchEvent(o)}q.prototype={add:function(e){0>this._names.indexOf(e)&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};var ed=[null];function ec(e,t){this._groups=e,this._parents=t}function eu(){return new ec([[document.documentElement]],ed)}function eh(e){return"string"==typeof e?new ec([[document.querySelector(e)]],[document.documentElement]):new ec([[e]],ed)}function ef(e,t){if(e=function(e){let t;for(;t=e.sourceEvent;)e=t;return e}(e),void 0===t&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,[(r=r.matrixTransform(t.getScreenCTM().inverse())).x,r.y]}if(t.getBoundingClientRect){var o=t.getBoundingClientRect();return[e.clientX-o.left-t.clientLeft,e.clientY-o.top-t.clientTop]}}return[e.pageX,e.pageY]}ec.prototype=eu.prototype={constructor:ec,select:function(e){"function"!=typeof e&&(e=C(e));for(var t=this._groups,n=t.length,r=Array(n),o=0;o<n;++o)for(var i,a,s=t[o],l=s.length,d=r[o]=Array(l),c=0;c<l;++c)(i=s[c])&&(a=e.call(i,i.__data__,c,s))&&("__data__"in i&&(a.__data__=i.__data__),d[c]=a);return new ec(r,this._parents)},selectAll:function(e){if("function"==typeof e){var t;t=e,e=function(){var e;return e=t.apply(this,arguments),null==e?[]:Array.isArray(e)?e:Array.from(e)}}else e=M(e);for(var n=this._groups,r=n.length,o=[],i=[],a=0;a<r;++a)for(var s,l=n[a],d=l.length,c=0;c<d;++c)(s=l[c])&&(o.push(e.call(s,s.__data__,c,l)),i.push(s));return new ec(o,i)},selectChild:function(e){var t;return this.select(null==e?T:(t="function"==typeof e?e:A(e),function(){return P.call(this.children,t)}))},selectChildren:function(e){var t;return this.selectAll(null==e?I:(t="function"==typeof e?e:A(e),function(){return D.call(this.children,t)}))},filter:function(e){"function"!=typeof e&&(e=_(e));for(var t=this._groups,n=t.length,r=Array(n),o=0;o<n;++o)for(var i,a=t[o],s=a.length,l=r[o]=[],d=0;d<s;++d)(i=a[d])&&e.call(i,i.__data__,d,a)&&l.push(i);return new ec(r,this._parents)},data:function(e,t){if(!arguments.length)return Array.from(this,L);var n=t?O:$,r=this._parents,o=this._groups;"function"!=typeof e&&(y=e,e=function(){return y});for(var i=o.length,a=Array(i),s=Array(i),l=Array(i),d=0;d<i;++d){var c=r[d],u=o[d],h=u.length,f="object"==typeof(x=e.call(c,c&&c.__data__,d,r))&&"length"in x?x:Array.from(x),p=f.length,m=s[d]=Array(p),g=a[d]=Array(p);n(c,u,m,g,l[d]=Array(h),f,t);for(var x,y,b,v,w=0,k=0;w<p;++w)if(b=m[w]){for(w>=k&&(k=w+1);!(v=g[k])&&++k<p;);b._next=v||null}}return(a=new ec(a,r))._enter=s,a._exit=l,a},enter:function(){return new ec(this._enter||this._groups.map(R),this._parents)},exit:function(){return new ec(this._exit||this._groups.map(R),this._parents)},join:function(e,t,n){var r=this.enter(),o=this,i=this.exit();return"function"==typeof e?(r=e(r))&&(r=r.selection()):r=r.append(e+""),null!=t&&(o=t(o))&&(o=o.selection()),null==n?i.remove():n(i),r&&o?r.merge(o).order():o},merge:function(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,o=n.length,i=r.length,a=Math.min(o,i),s=Array(o),l=0;l<a;++l)for(var d,c=n[l],u=r[l],h=c.length,f=s[l]=Array(h),p=0;p<h;++p)(d=c[p]||u[p])&&(f[p]=d);for(;l<o;++l)s[l]=n[l];return new ec(s,this._parents)},selection:function(){return this},order:function(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r,o=e[t],i=o.length-1,a=o[i];--i>=0;)(r=o[i])&&(a&&4^r.compareDocumentPosition(a)&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(e){function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}e||(e=B);for(var n=this._groups,r=n.length,o=Array(r),i=0;i<r;++i){for(var a,s=n[i],l=s.length,d=o[i]=Array(l),c=0;c<l;++c)(a=s[c])&&(d[c]=a);d.sort(t)}return new ec(o,this._parents).order()},call:function(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],o=0,i=r.length;o<i;++o){var a=r[o];if(a)return a}return null},size:function(){let e=0;for(let t of this)++e;return e},empty:function(){return!this.node()},each:function(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var o,i=t[n],a=0,s=i.length;a<s;++a)(o=i[a])&&e.call(o,o.__data__,a,i);return this},attr:function(e,t){var n=V(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((null==t?n.local?function(e){return function(){this.removeAttributeNS(e.space,e.local)}}:function(e){return function(){this.removeAttribute(e)}}:"function"==typeof t?n.local?function(e,t){return function(){var n=t.apply(this,arguments);null==n?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}:function(e,t){return function(){var n=t.apply(this,arguments);null==n?this.removeAttribute(e):this.setAttribute(e,n)}}:n.local?function(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}:function(e,t){return function(){this.setAttribute(e,t)}})(n,t))},style:function(e,t,n){return arguments.length>1?this.each((null==t?function(e){return function(){this.style.removeProperty(e)}}:"function"==typeof t?function(e,t,n){return function(){var r=t.apply(this,arguments);null==r?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}:function(e,t,n){return function(){this.style.setProperty(e,t,n)}})(e,t,null==n?"":n)):Y(this.node(),e)},property:function(e,t){return arguments.length>1?this.each((null==t?function(e){return function(){delete this[e]}}:"function"==typeof t?function(e,t){return function(){var n=t.apply(this,arguments);null==n?delete this[e]:this[e]=n}}:function(e,t){return function(){this[e]=t}})(e,t)):this.node()[e]},classed:function(e,t){var n=U(e+"");if(arguments.length<2){for(var r=K(this.node()),o=-1,i=n.length;++o<i;)if(!r.contains(n[o]))return!1;return!0}return this.each(("function"==typeof t?function(e,t){return function(){(t.apply(this,arguments)?Z:W)(this,e)}}:t?function(e){return function(){Z(this,e)}}:function(e){return function(){W(this,e)}})(n,t))},text:function(e){return arguments.length?this.each(null==e?G:("function"==typeof e?function(e){return function(){var t=e.apply(this,arguments);this.textContent=null==t?"":t}}:function(e){return function(){this.textContent=e}})(e)):this.node().textContent},html:function(e){return arguments.length?this.each(null==e?Q:("function"==typeof e?function(e){return function(){var t=e.apply(this,arguments);this.innerHTML=null==t?"":t}}:function(e){return function(){this.innerHTML=e}})(e)):this.node().innerHTML},raise:function(){return this.each(J)},lower:function(){return this.each(ee)},append:function(e){var t="function"==typeof e?e:et(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})},insert:function(e,t){var n="function"==typeof e?e:et(e),r=null==t?en:"function"==typeof t?t:C(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})},remove:function(){return this.each(er)},clone:function(e){return this.select(e?ei:eo)},datum:function(e){return arguments.length?this.property("__data__",e):this.node().__data__},on:function(e,t,n){var r,o,i=(e+"").trim().split(/^|\s+/).map(function(e){var t="",n=e.indexOf(".");return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}}),a=i.length;if(arguments.length<2){var s=this.node().__on;if(s){for(var l,d=0,c=s.length;d<c;++d)for(r=0,l=s[d];r<a;++r)if((o=i[r]).type===l.type&&o.name===l.name)return l.value}return}for(r=0,s=t?es:ea;r<a;++r)this.each(s(i[r],t,n));return this},dispatch:function(e,t){return this.each(("function"==typeof t?function(e,t){return function(){return el(this,e,t.apply(this,arguments))}}:function(e,t){return function(){return el(this,e,t)}})(e,t))},[Symbol.iterator]:function*(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r,o=e[t],i=0,a=o.length;i<a;++i)(r=o[i])&&(yield r)}};let ep={passive:!1},em={capture:!0,passive:!1};function eg(e){e.stopImmediatePropagation()}function ex(e){e.preventDefault(),e.stopImmediatePropagation()}function ey(e){var t=e.document.documentElement,n=eh(e).on("dragstart.drag",ex,em);"onselectstart"in t?n.on("selectstart.drag",ex,em):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function eb(e,t){var n=e.document.documentElement,r=eh(e).on("dragstart.drag",null);t&&(r.on("click.drag",ex,em),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}let ev=e=>()=>e;function ew(e,{sourceEvent:t,subject:n,target:r,identifier:o,active:i,x:a,y:s,dx:l,dy:d,dispatch:c}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:o,enumerable:!0,configurable:!0},active:{value:i,enumerable:!0,configurable:!0},x:{value:a,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:d,enumerable:!0,configurable:!0},_:{value:c}})}function ek(e){return!e.ctrlKey&&!e.button}function eN(){return this.parentNode}function eS(e,t){return null==t?{x:e.x,y:e.y}:t}function ej(){return navigator.maxTouchPoints||"ontouchstart"in this}function eC(){var e,t,n,r,o=ek,i=eN,a=eS,s=ej,l={},d=k("start","drag","end"),c=0,u=0;function h(e){e.on("mousedown.drag",f).filter(s).on("touchstart.drag",g).on("touchmove.drag",x,ep).on("touchend.drag touchcancel.drag",y).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function f(a,s){if(!r&&o.call(this,a,s)){var l=b(this,i.call(this,a,s),a,s,"mouse");l&&(eh(a.view).on("mousemove.drag",p,em).on("mouseup.drag",m,em),ey(a.view),eg(a),n=!1,e=a.clientX,t=a.clientY,l("start",a))}}function p(r){if(ex(r),!n){var o=r.clientX-e,i=r.clientY-t;n=o*o+i*i>u}l.mouse("drag",r)}function m(e){eh(e.view).on("mousemove.drag mouseup.drag",null),eb(e.view,n),ex(e),l.mouse("end",e)}function g(e,t){if(o.call(this,e,t)){var n,r,a=e.changedTouches,s=i.call(this,e,t),l=a.length;for(n=0;n<l;++n)(r=b(this,s,e,t,a[n].identifier,a[n]))&&(eg(e),r("start",e,a[n]))}}function x(e){var t,n,r=e.changedTouches,o=r.length;for(t=0;t<o;++t)(n=l[r[t].identifier])&&(ex(e),n("drag",e,r[t]))}function y(e){var t,n,o=e.changedTouches,i=o.length;for(r&&clearTimeout(r),r=setTimeout(function(){r=null},500),t=0;t<i;++t)(n=l[o[t].identifier])&&(eg(e),n("end",e,o[t]))}function b(e,t,n,r,o,i){var s,u,f,p=d.copy(),m=ef(i||n,t);if(null!=(f=a.call(e,new ew("beforestart",{sourceEvent:n,target:h,identifier:o,active:c,x:m[0],y:m[1],dx:0,dy:0,dispatch:p}),r)))return s=f.x-m[0]||0,u=f.y-m[1]||0,function n(i,a,d){var g,x=m;switch(i){case"start":l[o]=n,g=c++;break;case"end":delete l[o],--c;case"drag":m=ef(d||a,t),g=c}p.call(i,e,new ew(i,{sourceEvent:a,subject:f,target:h,identifier:o,active:g,x:m[0]+s,y:m[1]+u,dx:m[0]-x[0],dy:m[1]-x[1],dispatch:p}),r)}}return h.filter=function(e){return arguments.length?(o="function"==typeof e?e:ev(!!e),h):o},h.container=function(e){return arguments.length?(i="function"==typeof e?e:ev(e),h):i},h.subject=function(e){return arguments.length?(a="function"==typeof e?e:ev(e),h):a},h.touchable=function(e){return arguments.length?(s="function"==typeof e?e:ev(!!e),h):s},h.on=function(){var e=d.on.apply(d,arguments);return e===d?h:e},h.clickDistance=function(e){return arguments.length?(u=(e*=1)*e,h):Math.sqrt(u)},h}function eE(e){return((e=Math.exp(e))+1/e)/2}ew.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};let eM=function e(t,n,r){function o(e,o){var i,a,s=e[0],l=e[1],d=e[2],c=o[0],u=o[1],h=o[2],f=c-s,p=u-l,m=f*f+p*p;if(m<1e-12)a=Math.log(h/d)/t,i=function(e){return[s+e*f,l+e*p,d*Math.exp(t*e*a)]};else{var g=Math.sqrt(m),x=(h*h-d*d+r*m)/(2*d*n*g),y=(h*h-d*d-r*m)/(2*h*n*g),b=Math.log(Math.sqrt(x*x+1)-x);a=(Math.log(Math.sqrt(y*y+1)-y)-b)/t,i=function(e){var r,o,i=e*a,c=eE(b),u=d/(n*g)*(c*(((r=Math.exp(2*(r=t*i+b)))-1)/(r+1))-((o=Math.exp(o=b))-1/o)/2);return[s+u*f,l+u*p,d*c/eE(t*i+b)]}}return i.duration=1e3*a*t/Math.SQRT2,i}return o.rho=function(t){var n=Math.max(.001,+t),r=n*n;return e(n,r,r*r)},o}(Math.SQRT2,2,4);var e_,eA,eP=0,eT=0,eD=0,eI=0,eR=0,ez=0,e$="object"==typeof performance&&performance.now?performance:Date,eO="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function eL(){return eR||(eO(eB),eR=e$.now()+ez)}function eB(){eR=0}function eH(){this._call=this._time=this._next=null}function eF(e,t,n){var r=new eH;return r.restart(e,t,n),r}function eV(){eR=(eI=e$.now())+ez,eP=eT=0;try{eL(),++eP;for(var e,t=e_;t;)(e=eR-t._time)>=0&&t._call.call(void 0,e),t=t._next;--eP}finally{eP=0,function(){for(var e,t,n=e_,r=1/0;n;)n._call?(r>n._time&&(r=n._time),e=n,n=n._next):(t=n._next,n._next=null,n=e?e._next=t:e_=t);eA=e,eY(r)}(),eR=0}}function eX(){var e=e$.now(),t=e-eI;t>1e3&&(ez-=t,eI=e)}function eY(e){!eP&&(eT&&(eT=clearTimeout(eT)),e-eR>24?(e<1/0&&(eT=setTimeout(eV,e-e$.now()-ez)),eD&&(eD=clearInterval(eD))):(eD||(eI=e$.now(),eD=setInterval(eX,1e3)),eP=1,eO(eV)))}function eU(e,t,n){var r=new eH;return t=null==t?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}eH.prototype=eF.prototype={constructor:eH,restart:function(e,t,n){if("function"!=typeof e)throw TypeError("callback is not a function");n=(null==n?eL():+n)+(null==t?0:+t),this._next||eA===this||(eA?eA._next=this:e_=this,eA=this),this._call=e,this._time=n,eY()},stop:function(){this._call&&(this._call=null,this._time=1/0,eY())}},e.s(["Timer",0,eH,"now",0,eL,"timer",0,eF],60208);var eK=k("start","end","cancel","interrupt"),eq=[];function eZ(e,t,n,r,o,i){var a=e.__transition;if(a){if(n in a)return}else e.__transition={};!function(e,t,n){var r,o=e.__transition;function i(l){var d,c,u,h;if(1!==n.state)return s();for(d in o)if((h=o[d]).name===n.name){if(3===h.state)return eU(i);4===h.state?(h.state=6,h.timer.stop(),h.on.call("interrupt",e,e.__data__,h.index,h.group),delete o[d]):+d<t&&(h.state=6,h.timer.stop(),h.on.call("cancel",e,e.__data__,h.index,h.group),delete o[d])}if(eU(function(){3===n.state&&(n.state=4,n.timer.restart(a,n.delay,n.time),a(l))}),n.state=2,n.on.call("start",e,e.__data__,n.index,n.group),2===n.state){for(d=0,n.state=3,r=Array(u=n.tween.length),c=-1;d<u;++d)(h=n.tween[d].value.call(e,e.__data__,n.index,n.group))&&(r[++c]=h);r.length=c+1}}function a(t){for(var o=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(s),n.state=5,1),i=-1,a=r.length;++i<a;)r[i].call(e,o);5===n.state&&(n.on.call("end",e,e.__data__,n.index,n.group),s())}function s(){for(var r in n.state=6,n.timer.stop(),delete o[t],o)return;delete e.__transition}o[t]=n,n.timer=eF(function(e){n.state=1,n.timer.restart(i,n.delay,n.time),n.delay<=e&&i(e-n.delay)},0,n.time)}(e,n,{name:t,index:r,group:o,on:eK,tween:eq,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:0})}function eW(e,t){var n=eQ(e,t);if(n.state>0)throw Error("too late; already scheduled");return n}function eG(e,t){var n=eQ(e,t);if(n.state>3)throw Error("too late; already running");return n}function eQ(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error("transition not found");return n}function eJ(e,t){var n,r,o,i=e.__transition,a=!0;if(i){for(o in t=null==t?null:t+"",i){if((n=i[o]).name!==t){a=!1;continue}r=n.state>2&&n.state<5,n.state=6,n.timer.stop(),n.on.call(r?"interrupt":"cancel",e,e.__data__,n.index,n.group),delete i[o]}a&&delete e.__transition}}function e0(e,t){return e*=1,t*=1,function(n){return e*(1-n)+t*n}}var e1=180/Math.PI,e2={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function e5(e,t,n,r,o,i){var a,s,l;return(a=Math.sqrt(e*e+t*t))&&(e/=a,t/=a),(l=e*n+t*r)&&(n-=e*l,r-=t*l),(s=Math.sqrt(n*n+r*r))&&(n/=s,r/=s,l/=s),e*r<t*n&&(e=-e,t=-t,l=-l,a=-a),{translateX:o,translateY:i,rotate:Math.atan2(t,e)*e1,skewX:Math.atan(l)*e1,scaleX:a,scaleY:s}}function e3(e,t,n,r){function o(e){return e.length?e.pop()+" ":""}return function(i,a){var s,l,d,c,u=[],h=[];return i=e(i),a=e(a),!function(e,r,o,i,a,s){if(e!==o||r!==i){var l=a.push("translate(",null,t,null,n);s.push({i:l-4,x:e0(e,o)},{i:l-2,x:e0(r,i)})}else(o||i)&&a.push("translate("+o+t+i+n)}(i.translateX,i.translateY,a.translateX,a.translateY,u,h),s=i.rotate,l=a.rotate,s!==l?(s-l>180?l+=360:l-s>180&&(s+=360),h.push({i:u.push(o(u)+"rotate(",null,r)-2,x:e0(s,l)})):l&&u.push(o(u)+"rotate("+l+r),d=i.skewX,c=a.skewX,d!==c?h.push({i:u.push(o(u)+"skewX(",null,r)-2,x:e0(d,c)}):c&&u.push(o(u)+"skewX("+c+r),!function(e,t,n,r,i,a){if(e!==n||t!==r){var s=i.push(o(i)+"scale(",null,",",null,")");a.push({i:s-4,x:e0(e,n)},{i:s-2,x:e0(t,r)})}else(1!==n||1!==r)&&i.push(o(i)+"scale("+n+","+r+")")}(i.scaleX,i.scaleY,a.scaleX,a.scaleY,u,h),i=a=null,function(e){for(var t,n=-1,r=h.length;++n<r;)u[(t=h[n]).i]=t.x(e);return u.join("")}}}var e4=e3(function(e){let t=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?e2:e5(t.a,t.b,t.c,t.d,t.e,t.f)},"px, ","px)","deg)"),e6=e3(function(e){return null==e?e2:(d||(d=document.createElementNS("http://www.w3.org/2000/svg","g")),d.setAttribute("transform",e),e=d.transform.baseVal.consolidate())?e5((e=e.matrix).a,e.b,e.c,e.d,e.e,e.f):e2},", ",")",")");function e8(e,t,n){var r=e._id;return e.each(function(){var e=eG(this,r);(e.value||(e.value={}))[t]=n.apply(this,arguments)}),function(e){return eQ(e,r).value[t]}}function e9(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function e7(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function te(){}var tt="\\s*([+-]?\\d+)\\s*",tn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",tr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",to=/^#([0-9a-f]{3,8})$/,ti=RegExp(`^rgb\\(${tt},${tt},${tt}\\)$`),ta=RegExp(`^rgb\\(${tr},${tr},${tr}\\)$`),ts=RegExp(`^rgba\\(${tt},${tt},${tt},${tn}\\)$`),tl=RegExp(`^rgba\\(${tr},${tr},${tr},${tn}\\)$`),td=RegExp(`^hsl\\(${tn},${tr},${tr}\\)$`),tc=RegExp(`^hsla\\(${tn},${tr},${tr},${tn}\\)$`),tu={aliceblue:0xf0f8ff,antiquewhite:0xfaebd7,aqua:65535,aquamarine:8388564,azure:0xf0ffff,beige:0xf5f5dc,bisque:0xffe4c4,black:0,blanchedalmond:0xffebcd,blue:255,blueviolet:9055202,brown:0xa52a2a,burlywood:0xdeb887,cadetblue:6266528,chartreuse:8388352,chocolate:0xd2691e,coral:0xff7f50,cornflowerblue:6591981,cornsilk:0xfff8dc,crimson:0xdc143c,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:0xb8860b,darkgray:0xa9a9a9,darkgreen:25600,darkgrey:0xa9a9a9,darkkhaki:0xbdb76b,darkmagenta:9109643,darkolivegreen:5597999,darkorange:0xff8c00,darkorchid:0x9932cc,darkred:9109504,darksalmon:0xe9967a,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:0xff1493,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:0xb22222,floralwhite:0xfffaf0,forestgreen:2263842,fuchsia:0xff00ff,gainsboro:0xdcdcdc,ghostwhite:0xf8f8ff,gold:0xffd700,goldenrod:0xdaa520,gray:8421504,green:32768,greenyellow:0xadff2f,grey:8421504,honeydew:0xf0fff0,hotpink:0xff69b4,indianred:0xcd5c5c,indigo:4915330,ivory:0xfffff0,khaki:0xf0e68c,lavender:0xe6e6fa,lavenderblush:0xfff0f5,lawngreen:8190976,lemonchiffon:0xfffacd,lightblue:0xadd8e6,lightcoral:0xf08080,lightcyan:0xe0ffff,lightgoldenrodyellow:0xfafad2,lightgray:0xd3d3d3,lightgreen:9498256,lightgrey:0xd3d3d3,lightpink:0xffb6c1,lightsalmon:0xffa07a,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:0xb0c4de,lightyellow:0xffffe0,lime:65280,limegreen:3329330,linen:0xfaf0e6,magenta:0xff00ff,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:0xba55d3,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:0xc71585,midnightblue:1644912,mintcream:0xf5fffa,mistyrose:0xffe4e1,moccasin:0xffe4b5,navajowhite:0xffdead,navy:128,oldlace:0xfdf5e6,olive:8421376,olivedrab:7048739,orange:0xffa500,orangered:0xff4500,orchid:0xda70d6,palegoldenrod:0xeee8aa,palegreen:0x98fb98,paleturquoise:0xafeeee,palevioletred:0xdb7093,papayawhip:0xffefd5,peachpuff:0xffdab9,peru:0xcd853f,pink:0xffc0cb,plum:0xdda0dd,powderblue:0xb0e0e6,purple:8388736,rebeccapurple:6697881,red:0xff0000,rosybrown:0xbc8f8f,royalblue:4286945,saddlebrown:9127187,salmon:0xfa8072,sandybrown:0xf4a460,seagreen:3050327,seashell:0xfff5ee,sienna:0xa0522d,silver:0xc0c0c0,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:0xfffafa,springgreen:65407,steelblue:4620980,tan:0xd2b48c,teal:32896,thistle:0xd8bfd8,tomato:0xff6347,turquoise:4251856,violet:0xee82ee,wheat:0xf5deb3,white:0xffffff,whitesmoke:0xf5f5f5,yellow:0xffff00,yellowgreen:0x9acd32};function th(){return this.rgb().formatHex()}function tf(){return this.rgb().formatRgb()}function tp(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=to.exec(e))?(n=t[1].length,t=parseInt(t[1],16),6===n?tm(t):3===n?new ty(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===n?tg(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===n?tg(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=ti.exec(e))?new ty(t[1],t[2],t[3],1):(t=ta.exec(e))?new ty(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=ts.exec(e))?tg(t[1],t[2],t[3],t[4]):(t=tl.exec(e))?tg(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=td.exec(e))?tS(t[1],t[2]/100,t[3]/100,1):(t=tc.exec(e))?tS(t[1],t[2]/100,t[3]/100,t[4]):tu.hasOwnProperty(e)?tm(tu[e]):"transparent"===e?new ty(NaN,NaN,NaN,0):null}function tm(e){return new ty(e>>16&255,e>>8&255,255&e,1)}function tg(e,t,n,r){return r<=0&&(e=t=n=NaN),new ty(e,t,n,r)}function tx(e,t,n,r){var o;return 1==arguments.length?((o=e)instanceof te||(o=tp(o)),o)?new ty((o=o.rgb()).r,o.g,o.b,o.opacity):new ty:new ty(e,t,n,null==r?1:r)}function ty(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}function tb(){return`#${tN(this.r)}${tN(this.g)}${tN(this.b)}`}function tv(){let e=tw(this.opacity);return`${1===e?"rgb(":"rgba("}${tk(this.r)}, ${tk(this.g)}, ${tk(this.b)}${1===e?")":`, ${e})`}`}function tw(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function tk(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function tN(e){return((e=tk(e))<16?"0":"")+e.toString(16)}function tS(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new tC(e,t,n,r)}function tj(e){if(e instanceof tC)return new tC(e.h,e.s,e.l,e.opacity);if(e instanceof te||(e=tp(e)),!e)return new tC;if(e instanceof tC)return e;var t=(e=e.rgb()).r/255,n=e.g/255,r=e.b/255,o=Math.min(t,n,r),i=Math.max(t,n,r),a=NaN,s=i-o,l=(i+o)/2;return s?(a=t===i?(n-r)/s+(n<r)*6:n===i?(r-t)/s+2:(t-n)/s+4,s/=l<.5?i+o:2-i-o,a*=60):s=l>0&&l<1?0:a,new tC(a,s,l,e.opacity)}function tC(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}function tE(e){return(e=(e||0)%360)<0?e+360:e}function tM(e){return Math.max(0,Math.min(1,e||0))}function t_(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}function tA(e,t,n,r,o){var i=e*e,a=i*e;return((1-3*e+3*i-a)*t+(4-6*i+3*a)*n+(1+3*e+3*i-3*a)*r+a*o)/6}e9(te,tp,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:th,formatHex:th,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return tj(this).formatHsl()},formatRgb:tf,toString:tf}),e9(ty,tx,e7(te,{brighter(e){return e=null==e?1.4285714285714286:Math.pow(1.4285714285714286,e),new ty(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=null==e?.7:Math.pow(.7,e),new ty(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new ty(tk(this.r),tk(this.g),tk(this.b),tw(this.opacity))},displayable(){return -.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:tb,formatHex:tb,formatHex8:function(){return`#${tN(this.r)}${tN(this.g)}${tN(this.b)}${tN((isNaN(this.opacity)?1:this.opacity)*255)}`},formatRgb:tv,toString:tv})),e9(tC,function(e,t,n,r){return 1==arguments.length?tj(e):new tC(e,t,n,null==r?1:r)},e7(te,{brighter(e){return e=null==e?1.4285714285714286:Math.pow(1.4285714285714286,e),new tC(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?.7:Math.pow(.7,e),new tC(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,o=2*n-r;return new ty(t_(e>=240?e-240:e+120,o,r),t_(e,o,r),t_(e<120?e+240:e-120,o,r),this.opacity)},clamp(){return new tC(tE(this.h),tM(this.s),tM(this.l),tw(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=tw(this.opacity);return`${1===e?"hsl(":"hsla("}${tE(this.h)}, ${100*tM(this.s)}%, ${100*tM(this.l)}%${1===e?")":`, ${e})`}`}}));let tP=e=>()=>e;function tT(e,t){var n=t-e;return n?function(t){return e+t*n}:tP(isNaN(e)?t:e)}let tD=function e(t){var n,r=1==(n=+t)?tT:function(e,t){var r,o,i;return t-e?(r=e,o=t,r=Math.pow(r,i=n),o=Math.pow(o,i)-r,i=1/i,function(e){return Math.pow(r+e*o,i)}):tP(isNaN(e)?t:e)};function o(e,t){var n=r((e=tx(e)).r,(t=tx(t)).r),o=r(e.g,t.g),i=r(e.b,t.b),a=tT(e.opacity,t.opacity);return function(t){return e.r=n(t),e.g=o(t),e.b=i(t),e.opacity=a(t),e+""}}return o.gamma=e,o}(1);function tI(e){return function(t){var n,r,o=t.length,i=Array(o),a=Array(o),s=Array(o);for(n=0;n<o;++n)r=tx(t[n]),i[n]=r.r||0,a[n]=r.g||0,s[n]=r.b||0;return i=e(i),a=e(a),s=e(s),r.opacity=1,function(e){return r.r=i(e),r.g=a(e),r.b=s(e),r+""}}}tI(function(e){var t=e.length-1;return function(n){var r=n<=0?n=0:n>=1?(n=1,t-1):Math.floor(n*t),o=e[r],i=e[r+1],a=r>0?e[r-1]:2*o-i,s=r<t-1?e[r+2]:2*i-o;return tA((n-r/t)*t,a,o,i,s)}}),tI(function(e){var t=e.length;return function(n){var r=Math.floor(((n%=1)<0?++n:n)*t),o=e[(r+t-1)%t],i=e[r%t],a=e[(r+1)%t],s=e[(r+2)%t];return tA((n-r/t)*t,o,i,a,s)}});var tR=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,tz=RegExp(tR.source,"g");function t$(e,t){var n,r,o,i,a,s=tR.lastIndex=tz.lastIndex=0,l=-1,d=[],c=[];for(e+="",t+="";(o=tR.exec(e))&&(i=tz.exec(t));)(a=i.index)>s&&(a=t.slice(s,a),d[l]?d[l]+=a:d[++l]=a),(o=o[0])===(i=i[0])?d[l]?d[l]+=i:d[++l]=i:(d[++l]=null,c.push({i:l,x:e0(o,i)})),s=tz.lastIndex;return s<t.length&&(a=t.slice(s),d[l]?d[l]+=a:d[++l]=a),d.length<2?c[0]?(n=c[0].x,function(e){return n(e)+""}):(r=t,function(){return r}):(t=c.length,function(e){for(var n,r=0;r<t;++r)d[(n=c[r]).i]=n.x(e);return d.join("")})}function tO(e,t){var n;return("number"==typeof t?e0:t instanceof tp?tD:(n=tp(t))?(t=n,tD):t$)(e,t)}var tL=eu.prototype.constructor;function tB(e){return function(){this.style.removeProperty(e)}}var tH=0;function tF(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}var tV=eu.prototype;tF.prototype=(function(e){return eu().transition(e)}).prototype={constructor:tF,select:function(e){var t=this._name,n=this._id;"function"!=typeof e&&(e=C(e));for(var r=this._groups,o=r.length,i=Array(o),a=0;a<o;++a)for(var s,l,d=r[a],c=d.length,u=i[a]=Array(c),h=0;h<c;++h)(s=d[h])&&(l=e.call(s,s.__data__,h,d))&&("__data__"in s&&(l.__data__=s.__data__),u[h]=l,eZ(u[h],t,n,h,u,eQ(s,n)));return new tF(i,this._parents,t,n)},selectAll:function(e){var t=this._name,n=this._id;"function"!=typeof e&&(e=M(e));for(var r=this._groups,o=r.length,i=[],a=[],s=0;s<o;++s)for(var l,d=r[s],c=d.length,u=0;u<c;++u)if(l=d[u]){for(var h,f=e.call(l,l.__data__,u,d),p=eQ(l,n),m=0,g=f.length;m<g;++m)(h=f[m])&&eZ(h,t,n,m,f,p);i.push(f),a.push(l)}return new tF(i,a,t,n)},selectChild:tV.selectChild,selectChildren:tV.selectChildren,filter:function(e){"function"!=typeof e&&(e=_(e));for(var t=this._groups,n=t.length,r=Array(n),o=0;o<n;++o)for(var i,a=t[o],s=a.length,l=r[o]=[],d=0;d<s;++d)(i=a[d])&&e.call(i,i.__data__,d,a)&&l.push(i);return new tF(r,this._parents,this._name,this._id)},merge:function(e){if(e._id!==this._id)throw Error();for(var t=this._groups,n=e._groups,r=t.length,o=n.length,i=Math.min(r,o),a=Array(r),s=0;s<i;++s)for(var l,d=t[s],c=n[s],u=d.length,h=a[s]=Array(u),f=0;f<u;++f)(l=d[f]||c[f])&&(h[f]=l);for(;s<r;++s)a[s]=t[s];return new tF(a,this._parents,this._name,this._id)},selection:function(){return new tL(this._groups,this._parents)},transition:function(){for(var e=this._name,t=this._id,n=++tH,r=this._groups,o=r.length,i=0;i<o;++i)for(var a,s=r[i],l=s.length,d=0;d<l;++d)if(a=s[d]){var c=eQ(a,t);eZ(a,e,n,d,s,{time:c.time+c.delay+c.duration,delay:0,duration:c.duration,ease:c.ease})}return new tF(r,this._parents,e,n)},call:tV.call,nodes:tV.nodes,node:tV.node,size:tV.size,empty:tV.empty,each:tV.each,on:function(e,t){var n,r,o,i,a,s,l=this._id;return arguments.length<2?eQ(this.node(),l).on.on(e):this.each((n=l,r=e,o=t,s=(r+"").trim().split(/^|\s+/).every(function(e){var t=e.indexOf(".");return t>=0&&(e=e.slice(0,t)),!e||"start"===e})?eW:eG,function(){var e=s(this,n),t=e.on;t!==i&&(a=(i=t).copy()).on(r,o),e.on=a}))},attr:function(e,t){var n=V(e),r="transform"===n?e6:tO;return this.attrTween(e,"function"==typeof t?(n.local?function(e,t,n){var r,o,i;return function(){var a,s,l=n(this);return null==l?void this.removeAttributeNS(e.space,e.local):(a=this.getAttributeNS(e.space,e.local))===(s=l+"")?null:a===r&&s===o?i:(o=s,i=t(r=a,l))}}:function(e,t,n){var r,o,i;return function(){var a,s,l=n(this);return null==l?void this.removeAttribute(e):(a=this.getAttribute(e))===(s=l+"")?null:a===r&&s===o?i:(o=s,i=t(r=a,l))}})(n,r,e8(this,"attr."+e,t)):null==t?(n.local?function(e){return function(){this.removeAttributeNS(e.space,e.local)}}:function(e){return function(){this.removeAttribute(e)}})(n):(n.local?function(e,t,n){var r,o,i=n+"";return function(){var a=this.getAttributeNS(e.space,e.local);return a===i?null:a===r?o:o=t(r=a,n)}}:function(e,t,n){var r,o,i=n+"";return function(){var a=this.getAttribute(e);return a===i?null:a===r?o:o=t(r=a,n)}})(n,r,t))},attrTween:function(e,t){var n="attr."+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==t)return this.tween(n,null);if("function"!=typeof t)throw Error();var r=V(e);return this.tween(n,(r.local?function(e,t){var n,r;function o(){var o=t.apply(this,arguments);return o!==r&&(n=(r=o)&&function(t){this.setAttributeNS(e.space,e.local,o.call(this,t))}),n}return o._value=t,o}:function(e,t){var n,r;function o(){var o=t.apply(this,arguments);return o!==r&&(n=(r=o)&&function(t){this.setAttribute(e,o.call(this,t))}),n}return o._value=t,o})(r,t))},style:function(e,t,n){var r,o,i,a,s,l,d,c,u,h,f,p,m,g,x,y,b,v,w,k,N,S="transform"==(e+="")?e4:tO;return null==t?this.styleTween(e,(r=e,function(){var e=Y(this,r),t=(this.style.removeProperty(r),Y(this,r));return e===t?null:e===o&&t===i?a:a=S(o=e,i=t)})).on("end.style."+e,tB(e)):"function"==typeof t?this.styleTween(e,(s=e,l=e8(this,"style."+e,t),function(){var e=Y(this,s),t=l(this),n=t+"";return null==t&&(this.style.removeProperty(s),n=t=Y(this,s)),e===n?null:e===d&&n===c?u:(c=n,u=S(d=e,t))})).each((h=this._id,b="end."+(y="style."+(f=e)),function(){var e=eG(this,h),t=e.on,n=null==e.value[y]?x||(x=tB(f)):void 0;(t!==p||g!==n)&&(m=(p=t).copy()).on(b,g=n),e.on=m})):this.styleTween(e,(v=e,N=t+"",function(){var e=Y(this,v);return e===N?null:e===w?k:k=S(w=e,t)}),n).on("end.style."+e,null)},styleTween:function(e,t,n){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==t)return this.tween(r,null);if("function"!=typeof t)throw Error();return this.tween(r,function(e,t,n){var r,o;function i(){var i=t.apply(this,arguments);return i!==o&&(r=(o=i)&&function(t){this.style.setProperty(e,i.call(this,t),n)}),r}return i._value=t,i}(e,t,null==n?"":n))},text:function(e){var t,n;return this.tween("text","function"==typeof e?(t=e8(this,"text",e),function(){var e=t(this);this.textContent=null==e?"":e}):(n=null==e?"":e+"",function(){this.textContent=n}))},textTween:function(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(null==e)return this.tween(t,null);if("function"!=typeof e)throw Error();return this.tween(t,function(e){var t,n;function r(){var r=e.apply(this,arguments);return r!==n&&(t=(n=r)&&function(e){this.textContent=r.call(this,e)}),t}return r._value=e,r}(e))},remove:function(){var e;return this.on("end.remove",(e=this._id,function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}))},tween:function(e,t){var n=this._id;if(e+="",arguments.length<2){for(var r,o=eQ(this.node(),n).tween,i=0,a=o.length;i<a;++i)if((r=o[i]).name===e)return r.value;return null}return this.each((null==t?function(e,t){var n,r;return function(){var o=eG(this,e),i=o.tween;if(i!==n){r=n=i;for(var a=0,s=r.length;a<s;++a)if(r[a].name===t){(r=r.slice()).splice(a,1);break}}o.tween=r}}:function(e,t,n){var r,o;if("function"!=typeof n)throw Error();return function(){var i=eG(this,e),a=i.tween;if(a!==r){o=(r=a).slice();for(var s={name:t,value:n},l=0,d=o.length;l<d;++l)if(o[l].name===t){o[l]=s;break}l===d&&o.push(s)}i.tween=o}})(n,e,t))},delay:function(e){var t=this._id;return arguments.length?this.each(("function"==typeof e?function(e,t){return function(){eW(this,e).delay=+t.apply(this,arguments)}}:function(e,t){return t*=1,function(){eW(this,e).delay=t}})(t,e)):eQ(this.node(),t).delay},duration:function(e){var t=this._id;return arguments.length?this.each(("function"==typeof e?function(e,t){return function(){eG(this,e).duration=+t.apply(this,arguments)}}:function(e,t){return t*=1,function(){eG(this,e).duration=t}})(t,e)):eQ(this.node(),t).duration},ease:function(e){var t=this._id;return arguments.length?this.each(function(e,t){if("function"!=typeof t)throw Error();return function(){eG(this,e).ease=t}}(t,e)):eQ(this.node(),t).ease},easeVarying:function(e){var t;if("function"!=typeof e)throw Error();return this.each((t=this._id,function(){var n=e.apply(this,arguments);if("function"!=typeof n)throw Error();eG(this,t).ease=n}))},end:function(){var e,t,n=this,r=n._id,o=n.size();return new Promise(function(i,a){var s={value:a},l={value:function(){0==--o&&i()}};n.each(function(){var n=eG(this,r),o=n.on;o!==e&&((t=(e=o).copy())._.cancel.push(s),t._.interrupt.push(s),t._.end.push(l)),n.on=t}),0===o&&i()})},[Symbol.iterator]:tV[Symbol.iterator]};var tX={time:null,delay:0,duration:250,ease:function(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}};eu.prototype.interrupt=function(e){return this.each(function(){eJ(this,e)})},eu.prototype.transition=function(e){var t,n;e instanceof tF?(t=e._id,e=e._name):(t=++tH,(n=tX).time=eL(),e=null==e?null:e+"");for(var r=this._groups,o=r.length,i=0;i<o;++i)for(var a,s=r[i],l=s.length,d=0;d<l;++d)(a=s[d])&&eZ(a,e,t,d,s,n||function(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw Error(`transition ${t} not found`);return n}(a,t));return new tF(r,this._parents,e,t)};let tY=e=>()=>e;function tU(e,{sourceEvent:t,target:n,transform:r,dispatch:o}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:o}})}function tK(e,t,n){this.k=e,this.x=t,this.y=n}tK.prototype={constructor:tK,scale:function(e){return 1===e?this:new tK(this.k*e,this.x,this.y)},translate:function(e,t){return 0===e&0===t?this:new tK(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var tq=new tK(1,0,0);function tZ(e){for(;!e.__zoom;)if(!(e=e.parentNode))return tq;return e.__zoom}function tW(e){e.stopImmediatePropagation()}function tG(e){e.preventDefault(),e.stopImmediatePropagation()}function tQ(e){return(!e.ctrlKey||"wheel"===e.type)&&!e.button}function tJ(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e).hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]:[[0,0],[e.clientWidth,e.clientHeight]]}function t0(){return this.__zoom||tq}function t1(e){return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function t2(){return navigator.maxTouchPoints||"ontouchstart"in this}function t5(e,t,n){var r=e.invertX(t[0][0])-n[0][0],o=e.invertX(t[1][0])-n[1][0],i=e.invertY(t[0][1])-n[0][1],a=e.invertY(t[1][1])-n[1][1];return e.translate(o>r?(r+o)/2:Math.min(0,r)||Math.max(0,o),a>i?(i+a)/2:Math.min(0,i)||Math.max(0,a))}function t3(){var e,t,n,r=tQ,o=tJ,i=t5,a=t1,s=t2,l=[0,1/0],d=[[-1/0,-1/0],[1/0,1/0]],c=250,u=eM,h=k("start","zoom","end"),f=0,p=10;function m(e){e.property("__zoom",t0).on("wheel.zoom",N,{passive:!1}).on("mousedown.zoom",S).on("dblclick.zoom",j).filter(s).on("touchstart.zoom",C).on("touchmove.zoom",E).on("touchend.zoom touchcancel.zoom",M).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g(e,t){return(t=Math.max(l[0],Math.min(l[1],t)))===e.k?e:new tK(t,e.x,e.y)}function x(e,t,n){var r=t[0]-n[0]*e.k,o=t[1]-n[1]*e.k;return r===e.x&&o===e.y?e:new tK(e.k,r,o)}function y(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function b(e,t,n,r){e.on("start.zoom",function(){v(this,arguments).event(r).start()}).on("interrupt.zoom end.zoom",function(){v(this,arguments).event(r).end()}).tween("zoom",function(){var e=arguments,i=v(this,e).event(r),a=o.apply(this,e),s=null==n?y(a):"function"==typeof n?n.apply(this,e):n,l=Math.max(a[1][0]-a[0][0],a[1][1]-a[0][1]),d=this.__zoom,c="function"==typeof t?t.apply(this,e):t,h=u(d.invert(s).concat(l/d.k),c.invert(s).concat(l/c.k));return function(e){if(1===e)e=c;else{var t=h(e),n=l/t[2];e=new tK(n,s[0]-t[0]*n,s[1]-t[1]*n)}i.zoom(null,e)}})}function v(e,t,n){return!n&&e.__zooming||new w(e,t)}function w(e,t){this.that=e,this.args=t,this.active=0,this.sourceEvent=null,this.extent=o.apply(e,t),this.taps=0}function N(e,...t){if(r.apply(this,arguments)){var n=v(this,t).event(e),o=this.__zoom,s=Math.max(l[0],Math.min(l[1],o.k*Math.pow(2,a.apply(this,arguments)))),c=ef(e);if(n.wheel)(n.mouse[0][0]!==c[0]||n.mouse[0][1]!==c[1])&&(n.mouse[1]=o.invert(n.mouse[0]=c)),clearTimeout(n.wheel);else{if(o.k===s)return;n.mouse=[c,o.invert(c)],eJ(this),n.start()}tG(e),n.wheel=setTimeout(function(){n.wheel=null,n.end()},150),n.zoom("mouse",i(x(g(o,s),n.mouse[0],n.mouse[1]),n.extent,d))}}function S(e,...t){if(!n&&r.apply(this,arguments)){var o=e.currentTarget,a=v(this,t,!0).event(e),s=eh(e.view).on("mousemove.zoom",function(e){if(tG(e),!a.moved){var t=e.clientX-c,n=e.clientY-u;a.moved=t*t+n*n>f}a.event(e).zoom("mouse",i(x(a.that.__zoom,a.mouse[0]=ef(e,o),a.mouse[1]),a.extent,d))},!0).on("mouseup.zoom",function(e){s.on("mousemove.zoom mouseup.zoom",null),eb(e.view,a.moved),tG(e),a.event(e).end()},!0),l=ef(e,o),c=e.clientX,u=e.clientY;ey(e.view),tW(e),a.mouse=[l,this.__zoom.invert(l)],eJ(this),a.start()}}function j(e,...t){if(r.apply(this,arguments)){var n=this.__zoom,a=ef(e.changedTouches?e.changedTouches[0]:e,this),s=n.invert(a),l=n.k*(e.shiftKey?.5:2),u=i(x(g(n,l),a,s),o.apply(this,t),d);tG(e),c>0?eh(this).transition().duration(c).call(b,u,a,e):eh(this).call(m.transform,u,a,e)}}function C(n,...o){if(r.apply(this,arguments)){var i,a,s,l,d=n.touches,c=d.length,u=v(this,o,n.changedTouches.length===c).event(n);for(tW(n),a=0;a<c;++a)l=[l=ef(s=d[a],this),this.__zoom.invert(l),s.identifier],u.touch0?u.touch1||u.touch0[2]===l[2]||(u.touch1=l,u.taps=0):(u.touch0=l,i=!0,u.taps=1+!!e);e&&(e=clearTimeout(e)),i&&(u.taps<2&&(t=l[0],e=setTimeout(function(){e=null},500)),eJ(this),u.start())}}function E(e,...t){if(this.__zooming){var n,r,o,a,s=v(this,t).event(e),l=e.changedTouches,c=l.length;for(tG(e),n=0;n<c;++n)o=ef(r=l[n],this),s.touch0&&s.touch0[2]===r.identifier?s.touch0[0]=o:s.touch1&&s.touch1[2]===r.identifier&&(s.touch1[0]=o);if(r=s.that.__zoom,s.touch1){var u=s.touch0[0],h=s.touch0[1],f=s.touch1[0],p=s.touch1[1],m=(m=f[0]-u[0])*m+(m=f[1]-u[1])*m,y=(y=p[0]-h[0])*y+(y=p[1]-h[1])*y;r=g(r,Math.sqrt(m/y)),o=[(u[0]+f[0])/2,(u[1]+f[1])/2],a=[(h[0]+p[0])/2,(h[1]+p[1])/2]}else{if(!s.touch0)return;o=s.touch0[0],a=s.touch0[1]}s.zoom("touch",i(x(r,o,a),s.extent,d))}}function M(e,...r){if(this.__zooming){var o,i,a=v(this,r).event(e),s=e.changedTouches,l=s.length;for(tW(e),n&&clearTimeout(n),n=setTimeout(function(){n=null},500),o=0;o<l;++o)i=s[o],a.touch0&&a.touch0[2]===i.identifier?delete a.touch0:a.touch1&&a.touch1[2]===i.identifier&&delete a.touch1;if(a.touch1&&!a.touch0&&(a.touch0=a.touch1,delete a.touch1),a.touch0)a.touch0[1]=this.__zoom.invert(a.touch0[0]);else if(a.end(),2===a.taps&&(i=ef(i,this),Math.hypot(t[0]-i[0],t[1]-i[1])<p)){var d=eh(this).on("dblclick.zoom");d&&d.apply(this,arguments)}}}return m.transform=function(e,t,n,r){var o=e.selection?e.selection():e;o.property("__zoom",t0),e!==o?b(e,t,n,r):o.interrupt().each(function(){v(this,arguments).event(r).start().zoom(null,"function"==typeof t?t.apply(this,arguments):t).end()})},m.scaleBy=function(e,t,n,r){m.scaleTo(e,function(){var e=this.__zoom.k,n="function"==typeof t?t.apply(this,arguments):t;return e*n},n,r)},m.scaleTo=function(e,t,n,r){m.transform(e,function(){var e=o.apply(this,arguments),r=this.__zoom,a=null==n?y(e):"function"==typeof n?n.apply(this,arguments):n,s=r.invert(a),l="function"==typeof t?t.apply(this,arguments):t;return i(x(g(r,l),a,s),e,d)},n,r)},m.translateBy=function(e,t,n,r){m.transform(e,function(){return i(this.__zoom.translate("function"==typeof t?t.apply(this,arguments):t,"function"==typeof n?n.apply(this,arguments):n),o.apply(this,arguments),d)},null,r)},m.translateTo=function(e,t,n,r,a){m.transform(e,function(){var e=o.apply(this,arguments),a=this.__zoom,s=null==r?y(e):"function"==typeof r?r.apply(this,arguments):r;return i(tq.translate(s[0],s[1]).scale(a.k).translate("function"==typeof t?-t.apply(this,arguments):-t,"function"==typeof n?-n.apply(this,arguments):-n),e,d)},r,a)},w.prototype={event:function(e){return e&&(this.sourceEvent=e),this},start:function(){return 1==++this.active&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(e,t){return this.mouse&&"mouse"!==e&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&"touch"!==e&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&"touch"!==e&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit("zoom"),this},end:function(){return 0==--this.active&&(delete this.that.__zooming,this.emit("end")),this},emit:function(e){var t=eh(this.that).datum();h.call(e,this.that,new tU(e,{sourceEvent:this.sourceEvent,target:m,type:e,transform:this.that.__zoom,dispatch:h}),t)}},m.wheelDelta=function(e){return arguments.length?(a="function"==typeof e?e:tY(+e),m):a},m.filter=function(e){return arguments.length?(r="function"==typeof e?e:tY(!!e),m):r},m.touchable=function(e){return arguments.length?(s="function"==typeof e?e:tY(!!e),m):s},m.extent=function(e){return arguments.length?(o="function"==typeof e?e:tY([[+e[0][0],+e[0][1]],[+e[1][0],+e[1][1]]]),m):o},m.scaleExtent=function(e){return arguments.length?(l[0]=+e[0],l[1]=+e[1],m):[l[0],l[1]]},m.translateExtent=function(e){return arguments.length?(d[0][0]=+e[0][0],d[1][0]=+e[1][0],d[0][1]=+e[0][1],d[1][1]=+e[1][1],m):[[d[0][0],d[0][1]],[d[1][0],d[1][1]]]},m.constrain=function(e){return arguments.length?(i=e,m):i},m.duration=function(e){return arguments.length?(c=+e,m):c},m.interpolate=function(e){return arguments.length?(u=e,m):u},m.on=function(){var e=h.on.apply(h,arguments);return e===h?m:e},m.clickDistance=function(e){return arguments.length?(f=(e*=1)*e,m):Math.sqrt(f)},m.tapDistance=function(e){return arguments.length?(p=+e,m):p},m}function t4(e,t){var n,r,o=typeof t;return null==t||"boolean"===o?tP(t):("number"===o?e0:"string"===o?(r=tp(t))?(t=r,tD):t$:t instanceof tp?tD:t instanceof Date?function(e,t){var n=new Date;return e*=1,t*=1,function(r){return n.setTime(e*(1-r)+t*r),n}}:!ArrayBuffer.isView(n=t)||n instanceof DataView?Array.isArray(t)?function(e,t){var n,r=t?t.length:0,o=e?Math.min(r,e.length):0,i=Array(o),a=Array(r);for(n=0;n<o;++n)i[n]=t4(e[n],t[n]);for(;n<r;++n)a[n]=t[n];return function(e){for(n=0;n<o;++n)a[n]=i[n](e);return a}}:"function"!=typeof t.valueOf&&"function"!=typeof t.toString||isNaN(t)?function(e,t){var n,r={},o={};for(n in(null===e||"object"!=typeof e)&&(e={}),(null===t||"object"!=typeof t)&&(t={}),t)n in e?r[n]=t4(e[n],t[n]):o[n]=t[n];return function(e){for(n in r)o[n]=r[n](e);return o}}:e0:function(e,t){t||(t=[]);var n,r=e?Math.min(t.length,e.length):0,o=t.slice();return function(i){for(n=0;n<r;++n)o[n]=e[n]*(1-i)+t[n]*i;return o}})(e,t)}tZ.prototype=tK.prototype;let t6={error001:(e="react")=>`Seems like you have not used zustand provider as an ancestor. Help: https://${e}flow.dev/error#001`,error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:t,sourceHandle:n,targetHandle:r})=>`Couldn't create edge for ${e} handle id: "${"source"===e?n:r}", edge id: ${t}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.",error016:e=>`Edge with id "${e}" does not exist, it may have been removed. This can happen when an edge is deleted before the "onEdgeClick" handler is called.`},t8=[[-1/0,-1/0],[1/0,1/0]],t9=["Enter"," ","Escape"],t7={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:e,x:t,y:n})=>`Moved selected node ${e}. New position, x: ${t}, y: ${n}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};(t=c||(c={})).Strict="strict",t.Loose="loose",(n=u||(u={})).Free="free",n.Vertical="vertical",n.Horizontal="horizontal",(r=h||(h={})).Partial="partial",r.Full="full";let ne={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};(o=f||(f={})).Bezier="default",o.Straight="straight",o.Step="step",o.SmoothStep="smoothstep",o.SimpleBezier="simplebezier",(i=p||(p={})).Arrow="arrow",i.ArrowClosed="arrowclosed",(a=m||(m={})).Left="left",a.Top="top",a.Right="right",a.Bottom="bottom";let nt={[m.Left]:m.Right,[m.Right]:m.Left,[m.Top]:m.Bottom,[m.Bottom]:m.Top};function nn(e){return null===e?null:e?"valid":"invalid"}let nr=e=>"id"in e&&"source"in e&&"target"in e,no=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),ni=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),na=(e,t=[0,0])=>{let{width:n,height:r}=nR(e),o=e.origin??t,i=n*o[0],a=r*o[1];return{x:e.position.x-i,y:e.position.y-a}},ns=(e,t={nodeOrigin:[0,0]})=>0===e.length?{x:0,y:0,width:0,height:0}:nv(e.reduce((e,n)=>{let r="string"==typeof n,o=t.nodeLookup||r?void 0:n;return t.nodeLookup&&(o=r?t.nodeLookup.get(n):ni(n)?n:t.nodeLookup.get(n.id)),ny(e,o?nk(o,t.nodeOrigin):{x:0,y:0,x2:0,y2:0})},{x:1/0,y:1/0,x2:-1/0,y2:-1/0})),nl=(e,t={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},r=!1;return e.forEach(e=>{(void 0===t.filter||t.filter(e))&&(n=ny(n,nk(e)),r=!0)}),r?nv(n):{x:0,y:0,width:0,height:0}},nd=(e,t,[n,r,o]=[0,0,1],i=!1,a=!1)=>{let s={...n_(t,[n,r,o]),width:t.width/o,height:t.height/o},l=[];for(let t of e.values()){let{measured:e,selectable:n=!0,hidden:r=!1}=t;if(a&&!n||r)continue;let o=e.width??t.width??t.initialWidth??null,d=e.height??t.height??t.initialHeight??null,c=nS(s,nw(t)),u=(o??0)*(d??0),h=i&&c>0;(!t.internals.handleBounds||h||c>=u||t.dragging)&&l.push(t)}return l};async function nc({nodes:e,width:t,height:n,panZoom:r,minZoom:o,maxZoom:i},a){let s,l;if(0===e.size)return!0;let d=nT(nl((s=new Map,l=a?.nodes?new Set(a.nodes.map(e=>e.id)):null,e.forEach(e=>{e.measured.width&&e.measured.height&&(a?.includeHiddenNodes||!e.hidden)&&(!l||l.has(e.id))&&s.set(e.id,e)}),s)),t,n,a?.minZoom??o,a?.maxZoom??i,a?.padding??.1);return await r.setViewport(d,{duration:a?.duration,ease:a?.ease,interpolate:a?.interpolate}),!0}function nu({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:o,onError:i}){let a=n.get(e),s=a.parentId?n.get(a.parentId):void 0,{x:l,y:d}=s?s.internals.positionAbsolute:{x:0,y:0},c=a.origin??r,u=a.extent||o;if("parent"!==a.extent||a.expandParent)s&&nI(a.extent)&&(u=[[a.extent[0][0]+l,a.extent[0][1]+d],[a.extent[1][0]+l,a.extent[1][1]+d]]);else if(s){let e=s.measured.width,t=s.measured.height;e&&t&&(u=[[l,d],[l+e,d+t]])}else i?.("005",t6.error005());let h=nI(u)?np(t,u,a.measured):t;return(void 0===a.measured.width||void 0===a.measured.height)&&i?.("015",t6.error015()),{position:{x:h.x-l+(a.measured.width??0)*c[0],y:h.y-d+(a.measured.height??0)*c[1]},positionAbsolute:h}}async function nh({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:r,onBeforeDelete:o}){let i,a=new Set(e.map(e=>e.id)),s=[];for(let e of n){if(!1===e.deletable)continue;let t=a.has(e.id),n=!t&&e.parentId&&s.find(t=>t.id===e.parentId);(t||n)&&s.push(e)}let l=new Set(t.map(e=>e.id)),d=r.filter(e=>!1!==e.deletable),c=(i=new Set,s.forEach(e=>{i.add(e.id)}),d.filter(e=>i.has(e.source)||i.has(e.target)));for(let e of d)l.has(e.id)&&!c.find(t=>t.id===e.id)&&c.push(e);if(!o)return{edges:c,nodes:s};let u=await o({nodes:s,edges:c});return"boolean"==typeof u?u?{edges:c,nodes:s}:{edges:[],nodes:[]}:u}let nf=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),np=(e={x:0,y:0},t,n)=>({x:nf(e.x,t[0][0],t[1][0]-(n?.width??0)),y:nf(e.y,t[0][1],t[1][1]-(n?.height??0))});function nm(e,t,n){let{width:r,height:o}=nR(n),{x:i,y:a}=n.internals.positionAbsolute;return np(e,[[i,a],[i+r,a+o]],t)}let ng=(e,t,n)=>e<t?nf(Math.abs(e-t),1,t)/t:e>n?-nf(Math.abs(e-n),1,t)/t:0,nx=(e,t,n=15,r=40)=>[ng(e.x,r,t.width-r)*n,ng(e.y,r,t.height-r)*n],ny=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),nb=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),nv=({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}),nw=(e,t=[0,0])=>{let{x:n,y:r}=ni(e)?e.internals.positionAbsolute:na(e,t);return{x:n,y:r,width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}},nk=(e,t=[0,0])=>{let{x:n,y:r}=ni(e)?e.internals.positionAbsolute:na(e,t);return{x:n,y:r,x2:n+(e.measured?.width??e.width??e.initialWidth??0),y2:r+(e.measured?.height??e.height??e.initialHeight??0)}},nN=(e,t)=>nv(ny(nb(e),nb(t))),nS=(e,t)=>Math.ceil(Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x))*Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y))),nj=e=>nC(e.width)&&nC(e.height)&&nC(e.x)&&nC(e.y),nC=e=>!isNaN(e)&&isFinite(e),nE=(e,t)=>(e,t)=>{},nM=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),n_=({x:e,y:t},[n,r,o],i=!1,a=[1,1])=>{let s={x:(e-n)/o,y:(t-r)/o};return i?nM(s,a):s},nA=({x:e,y:t},[n,r,o])=>({x:e*o+n,y:t*o+r});function nP(e,t){if("number"==typeof e)return Math.floor((t-t/(1+e))*.5);if("string"==typeof e&&e.endsWith("px")){let t=parseFloat(e);if(!Number.isNaN(t))return Math.floor(t)}if("string"==typeof e&&e.endsWith("%")){let n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(t*n*.01)}return console.error(`The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}let nT=(e,t,n,r,o,i)=>{let a=function(e,t,n){if("string"==typeof e||"number"==typeof e){let r=nP(e,n),o=nP(e,t);return{top:r,right:o,bottom:r,left:o,x:2*o,y:2*r}}if("object"==typeof e){let r=nP(e.top??e.y??0,n),o=nP(e.bottom??e.y??0,n),i=nP(e.left??e.x??0,t),a=nP(e.right??e.x??0,t);return{top:r,right:a,bottom:o,left:i,x:i+a,y:r+o}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}(i,t,n),s=nf(Math.min((t-a.x)/e.width,(n-a.y)/e.height),r,o),l=e.x+e.width/2,d=e.y+e.height/2,c=t/2-l*s,u=n/2-d*s,h=function(e,t,n,r,o,i){let{x:a,y:s}=nA(e,[t,n,r]),{x:l,y:d}=nA({x:e.x+e.width,y:e.y+e.height},[t,n,r]);return{left:Math.floor(a),top:Math.floor(s),right:Math.floor(o-l),bottom:Math.floor(i-d)}}(e,c,u,s,t,n),f={left:Math.min(h.left-a.left,0),top:Math.min(h.top-a.top,0),right:Math.min(h.right-a.right,0),bottom:Math.min(h.bottom-a.bottom,0)};return{x:c-f.left+f.right,y:u-f.top+f.bottom,zoom:s}},nD=()=>"u">typeof navigator&&navigator?.userAgent?.indexOf("Mac")>=0;function nI(e){return null!=e&&"parent"!==e}function nR(e){return{width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}}function nz(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function n$(e,t={width:0,height:0},n,r,o){let i={...e},a=r.get(n);if(a){let e=a.origin||o;i.x+=a.internals.positionAbsolute.x-(t.width??0)*e[0],i.y+=a.internals.positionAbsolute.y-(t.height??0)*e[1]}return i}function nO(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function nL(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}function nB(e){return{...t7,...e||{}}}function nH(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:r,containerBounds:o}){let{x:i,y:a}=nK(e),s=n_({x:i-(o?.left??0),y:a-(o?.top??0)},r),{x:l,y:d}=n?nM(s,t):s;return{xSnapped:l,ySnapped:d,...s}}let nF=e=>({width:e.offsetWidth,height:e.offsetHeight}),nV=e=>e?.getRootNode?.()||window?.document,nX=["INPUT","SELECT","TEXTAREA"];function nY(e){let t=e.composedPath?.()?.[0]||e.target;return t?.nodeType===1&&(nX.includes(t.nodeName)||t.hasAttribute("contenteditable")||!!t.closest(".nokey"))}let nU=e=>"clientX"in e,nK=(e,t)=>{let n=nU(e),r=n?e.clientX:e.touches?.[0].clientX,o=n?e.clientY:e.touches?.[0].clientY;return{x:r-(t?.left??0),y:o-(t?.top??0)}},nq=(e,t,n,r,o)=>{let i=t.querySelectorAll(`.${e}`);return i&&i.length?Array.from(i).map(t=>{let i=t.getBoundingClientRect();return{id:t.getAttribute("data-handleid"),type:e,nodeId:o,position:t.getAttribute("data-handlepos"),x:(i.left-n.left)/r,y:(i.top-n.top)/r,...nF(t)}}):null};function nZ({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:o,sourceControlY:i,targetControlX:a,targetControlY:s}){let l=.125*e+.375*o+.375*a+.125*n,d=.125*t+.375*i+.375*s+.125*r,c=Math.abs(l-e),u=Math.abs(d-t);return[l,d,c,u]}function nW(e,t){return e>=0?.5*e:25*t*Math.sqrt(-e)}function nG({pos:e,x1:t,y1:n,x2:r,y2:o,c:i}){switch(e){case m.Left:return[t-nW(t-r,i),n];case m.Right:return[t+nW(r-t,i),n];case m.Top:return[t,n-nW(n-o,i)];case m.Bottom:return[t,n+nW(o-n,i)]}}function nQ({sourceX:e,sourceY:t,sourcePosition:n=m.Bottom,targetX:r,targetY:o,targetPosition:i=m.Top,curvature:a=.25}){let[s,l]=nG({pos:n,x1:e,y1:t,x2:r,y2:o,c:a}),[d,c]=nG({pos:i,x1:r,y1:o,x2:e,y2:t,c:a}),[u,h,f,p]=nZ({sourceX:e,sourceY:t,targetX:r,targetY:o,sourceControlX:s,sourceControlY:l,targetControlX:d,targetControlY:c});return[`M${e},${t} C${s},${l} ${d},${c} ${r},${o}`,u,h,f,p]}function nJ({sourceX:e,sourceY:t,targetX:n,targetY:r}){let o=Math.abs(n-e)/2,i=Math.abs(r-t)/2;return[n<e?n+o:n-o,r<t?r+i:r-i,o,i]}function n0({sourceNode:e,targetNode:t,selected:n=!1,zIndex:r=0,elevateOnSelect:o=!1,zIndexMode:i="basic"}){if("manual"===i)return r;let a=Math.max(e.parentId||o&&e.selected?e.internals.z:0,t.parentId||o&&t.selected?t.internals.z:0);return(o&&n?r+1e3:r)+a}function n1({sourceNode:e,targetNode:t,width:n,height:r,transform:o}){let i=ny(nk(e),nk(t));return i.x===i.x2&&(i.x2+=1),i.y===i.y2&&(i.y2+=1),nS({x:-o[0]/o[2],y:-o[1]/o[2],width:n/o[2],height:r/o[2]},nv(i))>0}let n2=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`xy-edge__${e}${t||""}-${n}${r||""}`,n5=(e,t,n={})=>{let r,o;if(!e.source||!e.target)return n.onError?.("006",t6.error006()),t;let i=n.getEdgeId||n2;return(o=r=nr(e)?{...e}:{...e,id:i(e)},t.some(e=>e.source===o.source&&e.target===o.target&&(e.sourceHandle===o.sourceHandle||!e.sourceHandle&&!o.sourceHandle)&&(e.targetHandle===o.targetHandle||!e.targetHandle&&!o.targetHandle)))?t:(null===r.sourceHandle&&delete r.sourceHandle,null===r.targetHandle&&delete r.targetHandle,t.concat(r))};function n3({sourceX:e,sourceY:t,targetX:n,targetY:r}){let[o,i,a,s]=nJ({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,o,i,a,s]}let n4={[m.Left]:{x:-1,y:0},[m.Right]:{x:1,y:0},[m.Top]:{x:0,y:-1},[m.Bottom]:{x:0,y:1}},n6=({source:e,sourcePosition:t=m.Bottom,target:n})=>t===m.Left||t===m.Right?e.x<n.x?{x:1,y:0}:{x:-1,y:0}:e.y<n.y?{x:0,y:1}:{x:0,y:-1},n8=(e,t)=>Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function n9({sourceX:e,sourceY:t,sourcePosition:n=m.Bottom,targetX:r,targetY:o,targetPosition:i=m.Top,borderRadius:a=5,centerX:s,centerY:l,offset:d=20,stepPosition:c=.5}){let[u,h,f,p,g]=function({source:e,sourcePosition:t=m.Bottom,target:n,targetPosition:r=m.Top,center:o,offset:i,stepPosition:a}){let s,l,d=n4[t],c=n4[r],u={x:e.x+d.x*i,y:e.y+d.y*i},h={x:n.x+c.x*i,y:n.y+c.y*i},f=n6({source:u,sourcePosition:t,target:h}),p=0!==f.x?"x":"y",g=f[p],x=[],y={x:0,y:0},b={x:0,y:0},[,,v,w]=nJ({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(d[p]*c[p]==-1){"x"===p?(s=o.x??u.x+(h.x-u.x)*a,l=o.y??(u.y+h.y)/2):(s=o.x??(u.x+h.x)/2,l=o.y??u.y+(h.y-u.y)*a);let e=[{x:s,y:u.y},{x:s,y:h.y}],t=[{x:u.x,y:l},{x:h.x,y:l}];x=d[p]===g?"x"===p?e:t:"x"===p?t:e}else{let o=[{x:u.x,y:h.y}],a=[{x:h.x,y:u.y}];if(x="x"===p?d.x===g?a:o:d.y===g?o:a,t===r){let t=Math.abs(e[p]-n[p]);if(t<=i){let r=Math.min(i-1,i-t);d[p]===g?y[p]=(u[p]>e[p]?-1:1)*r:b[p]=(h[p]>n[p]?-1:1)*r}}if(t!==r){let e="x"===p?"y":"x",t=d[p]===c[e],n=u[e]>h[e],r=u[e]<h[e];(1===d[p]&&(!t&&n||t&&r)||1!==d[p]&&(!t&&r||t&&n))&&(x="x"===p?o:a)}let f={x:u.x+y.x,y:u.y+y.y},m={x:h.x+b.x,y:h.y+b.y};Math.max(Math.abs(f.x-x[0].x),Math.abs(m.x-x[0].x))>=Math.max(Math.abs(f.y-x[0].y),Math.abs(m.y-x[0].y))?(s=(f.x+m.x)/2,l=x[0].y):(s=x[0].x,l=(f.y+m.y)/2)}let k={x:u.x+y.x,y:u.y+y.y},N={x:h.x+b.x,y:h.y+b.y};return[[e,...k.x!==x[0].x||k.y!==x[0].y?[k]:[],...x,...N.x!==x[x.length-1].x||N.y!==x[x.length-1].y?[N]:[],n],s,l,v,w]}({source:{x:e,y:t},sourcePosition:n,target:{x:r,y:o},targetPosition:i,center:{x:s,y:l},offset:d,stepPosition:c}),x=`M${u[0].x} ${u[0].y}`;for(let e=1;e<u.length-1;e++)x+=function(e,t,n,r){let o=Math.min(n8(e,t)/2,n8(t,n)/2,r),{x:i,y:a}=t;if(e.x===i&&i===n.x||e.y===a&&a===n.y)return`L${i} ${a}`;if(e.y===a){let t=e.x<n.x?-1:1,r=e.y<n.y?1:-1;return`L ${i+o*t},${a}Q ${i},${a} ${i},${a+o*r}`}let s=e.x<n.x?1:-1,l=e.y<n.y?-1:1;return`L ${i},${a+o*l}Q ${i},${a} ${i+o*s},${a}`}(u[e-1],u[e],u[e+1],a);return[x+=`L${u[u.length-1].x} ${u[u.length-1].y}`,h,f,p,g]}function n7(e){return e&&!!(e.internals.handleBounds||e.handles?.length)&&!!(e.measured.width||e.width||e.initialWidth)}function re(e){let{sourceNode:t,targetNode:n}=e;if(!n7(t)||!n7(n))return null;let r=t.internals.handleBounds||rt(t.handles),o=n.internals.handleBounds||rt(n.handles),i=rr(r?.source??[],e.sourceHandle),a=rr(e.connectionMode===c.Strict?o?.target??[]:(o?.target??[]).concat(o?.source??[]),e.targetHandle);if(!i||!a)return e.onError?.("008",t6.error008(!i?"source":"target",{id:e.id,sourceHandle:e.sourceHandle,targetHandle:e.targetHandle})),null;let s=i?.position||m.Bottom,l=a?.position||m.Top,d=rn(t,i,s),u=rn(n,a,l);return{sourceX:d.x,sourceY:d.y,targetX:u.x,targetY:u.y,sourcePosition:s,targetPosition:l}}function rt(e){if(!e)return null;let t=[],n=[];for(let r of e)r.width=r.width??1,r.height=r.height??1,"source"===r.type?t.push(r):"target"===r.type&&n.push(r);return{source:t,target:n}}function rn(e,t,n=m.Left,r=!1){let o=(t?.x??0)+e.internals.positionAbsolute.x,i=(t?.y??0)+e.internals.positionAbsolute.y,{width:a,height:s}=t??nR(e);if(r)return{x:o+a/2,y:i+s/2};switch(t?.position??n){case m.Top:return{x:o+a/2,y:i};case m.Right:return{x:o+a,y:i+s/2};case m.Bottom:return{x:o+a/2,y:i+s};case m.Left:return{x:o,y:i+s/2}}}function rr(e,t){return e&&(t?e.find(e=>e.id===t):e[0])||null}function ro(e,t){if(!e)return"";if("string"==typeof e)return e;let n=t?`${t}__`:"";return`${n}${Object.keys(e).sort().map(t=>`${t}=${e[t]}`).join("&")}`}function ri(e,{id:t,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:o}){let i=new Set;return e.reduce((e,a)=>([a.markerStart||r,a.markerEnd||o].forEach(r=>{if(r&&"object"==typeof r){let o=ro(r,t);i.has(o)||(e.push({id:o,color:r.color||n,...r}),i.add(o))}}),e),[]).sort((e,t)=>e.id.localeCompare(t.id))}let ra={left:0,center:50,right:100},rs={top:0,center:50,bottom:100},rl={nodeOrigin:[0,0],nodeExtent:t8,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},rd={...rl,checkEquality:!0};function rc(e,t){let n={...e};for(let e in t)void 0!==t[e]&&(n[e]=t[e]);return n}function ru(e,t,n){let r=rc(rl,n);for(let n of e.values())if(n.parentId)rp(n,e,t,r);else{let e=np(na(n,r.nodeOrigin),nI(n.extent)?n.extent:r.nodeExtent,nR(n));n.internals.positionAbsolute=e}}function rh(e){return"manual"===e}function rf(e,t,n,r={}){let o=rc(rd,r),i={i:0},a=new Map(t),s=o?.elevateNodesOnSelect&&!rh(o.zIndexMode)?1e3:0,l=e.length>0,d=!1;for(let c of(t.clear(),n.clear(),e)){let e=a.get(c.id);if(o.checkEquality&&c===e?.internals.userNode)t.set(c.id,e);else{let n=np(na(c,o.nodeOrigin),nI(c.extent)?c.extent:o.nodeExtent,nR(c));e={...o.defaults,...c,measured:{width:c.measured?.width,height:c.measured?.height},internals:{positionAbsolute:n,handleBounds:function(e,t){if(!e.handles)return e.measured?t?.internals.handleBounds:void 0;let n=[],r=[];for(let t of e.handles){let o={id:t.id,width:t.width??1,height:t.height??1,nodeId:e.id,x:t.x,y:t.y,position:t.position,type:t.type};"source"===t.type?n.push(o):"target"===t.type&&r.push(o)}return{source:n,target:r}}(c,e),z:rm(c,s,o.zIndexMode),userNode:c}},t.set(c.id,e)}void 0!==e.measured&&void 0!==e.measured.width&&void 0!==e.measured.height||e.hidden||(l=!1),c.parentId&&rp(e,t,n,r,i),d||=c.selected??!1}return{nodesInitialized:l,hasSelectedNodes:d}}function rp(e,t,n,r,o){let{elevateNodesOnSelect:i,nodeOrigin:a,nodeExtent:s,zIndexMode:l}=rc(rl,r),d=e.parentId,c=t.get(d);if(!c)return void console.warn(`Parent node ${d} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);!function(e,t){if(!e.parentId)return;let n=t.get(e.parentId);n?n.set(e.id,e):t.set(e.parentId,new Map([[e.id,e]]))}(e,n),o&&!c.parentId&&void 0===c.internals.rootParentIndex&&"auto"===l&&(c.internals.rootParentIndex=++o.i,c.internals.z=c.internals.z+10*o.i),o&&void 0!==c.internals.rootParentIndex&&(o.i=c.internals.rootParentIndex);let{x:u,y:h,z:f}=function(e,t,n,r,o,i){let{x:a,y:s}=t.internals.positionAbsolute,l=nR(e),d=na(e,n),c=nI(e.extent)?np(d,e.extent,l):d,u=np({x:a+c.x,y:s+c.y},r,l);"parent"===e.extent&&(u=nm(u,l,t));let h=rm(e,o,i),f=t.internals.z??0;return{x:u.x,y:u.y,z:f>=h?f+1:h}}(e,c,a,s,i&&!rh(l)?1e3:0,l),{positionAbsolute:p}=e.internals,m=u!==p.x||h!==p.y;(m||f!==e.internals.z)&&t.set(e.id,{...e,internals:{...e.internals,positionAbsolute:m?{x:u,y:h}:p,z:f}})}function rm(e,t,n){let r=nC(e.zIndex)?e.zIndex:0;return rh(n)?r:r+(e.selected?t:0)}function rg(e,t,n,r=[0,0]){let o=[],i=new Map;for(let n of e){let e=t.get(n.parentId);if(!e)continue;let r=nN(i.get(n.parentId)?.expandedRect??nw(e),n.rect);i.set(n.parentId,{expandedRect:r,parent:e})}return i.size>0&&i.forEach(({expandedRect:t,parent:i},a)=>{let s=i.internals.positionAbsolute,l=nR(i),d=i.origin??r,c=t.x<s.x?Math.round(Math.abs(s.x-t.x)):0,u=t.y<s.y?Math.round(Math.abs(s.y-t.y)):0,h=Math.max(l.width,Math.round(t.width)),f=Math.max(l.height,Math.round(t.height)),p=(h-l.width)*d[0],m=(f-l.height)*d[1];(c>0||u>0||p||m)&&(o.push({id:a,type:"position",position:{x:i.position.x-c+p,y:i.position.y-u+m}}),n.get(a)?.forEach(t=>{e.some(e=>e.id===t.id)||o.push({id:t.id,type:"position",position:{x:t.position.x+c,y:t.position.y+u}})})),(l.width<t.width||l.height<t.height||c||u)&&o.push({id:a,type:"dimensions",setAttributes:!0,dimensions:{width:h+(c?d[0]*c-p:0),height:f+(u?d[1]*u-m:0)}})}),o}function rx(e,t,n,r,o,i,a){let s=r?.querySelector(".xyflow__viewport"),l=!1;if(!s)return{changes:[],updatedInternals:l};let d=[],c=window.getComputedStyle(s),{m22:u}=new window.DOMMatrixReadOnly(c.transform),h=[];for(let r of e.values()){let e=t.get(r.id);if(!e)continue;if(e.hidden){t.set(e.id,{...e,internals:{...e.internals,handleBounds:void 0}}),l=!0;continue}let s=nF(r.nodeElement),c=e.measured.width!==s.width||e.measured.height!==s.height;if(s.width&&s.height&&(c||!e.internals.handleBounds||r.force)){let f=r.nodeElement.getBoundingClientRect(),p=nI(e.extent)?e.extent:i,{positionAbsolute:m}=e.internals;e.parentId&&"parent"===e.extent?m=nm(m,s,t.get(e.parentId)):p&&(m=np(m,p,s));let g={...e,measured:s,internals:{...e.internals,positionAbsolute:m,handleBounds:{source:nq("source",r.nodeElement,f,u,e.id),target:nq("target",r.nodeElement,f,u,e.id)}}};t.set(e.id,g),e.parentId&&rp(g,t,n,{nodeOrigin:o,zIndexMode:a}),l=!0,c&&(d.push({id:e.id,type:"dimensions",dimensions:s}),e.expandParent&&e.parentId&&h.push({id:e.id,parentId:e.parentId,rect:nw(g,o)}))}}if(h.length>0){let e=rg(h,t,n,o);d.push(...e)}return{changes:d,updatedInternals:l}}async function ry({delta:e,panZoom:t,transform:n,translateExtent:r,width:o,height:i}){if(!t||!e.x&&!e.y)return!1;let a=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[o,i]],r);return!!a&&(a.x!==n[0]||a.y!==n[1]||a.k!==n[2])}function rb(e,t,n,r,o,i){let a=o,s=r.get(a)||new Map;r.set(a,s.set(n,t)),a=`${o}-${e}`;let l=r.get(a)||new Map;if(r.set(a,l.set(n,t)),i){a=`${o}-${e}-${i}`;let s=r.get(a)||new Map;r.set(a,s.set(n,t))}}function rv(e,t,n){for(let r of(e.clear(),t.clear(),n)){let{source:n,target:o,sourceHandle:i=null,targetHandle:a=null}=r,s={edgeId:r.id,source:n,target:o,sourceHandle:i,targetHandle:a},l=`${n}-${i}--${o}-${a}`;rb("source",s,`${o}-${a}--${n}-${i}`,e,n,i),rb("target",s,l,e,o,a),t.set(r.id,r)}}function rw(e,t,n){let r=e;do{if(r?.matches?.(t))return!0;if(r===n)break;r=r?.parentElement}while(r)return!1}function rk({nodeId:e,dragItems:t,nodeLookup:n,dragging:r=!0}){let o=[];for(let[e,i]of t){let t=n.get(e)?.internals.userNode;t&&o.push({...t,position:i.position,dragging:r})}if(!e)return[o[0],o];let i=n.get(e)?.internals.userNode;return[i?{...i,position:t.get(e)?.position||i.position,dragging:r}:o[0],o]}function rN({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:r,onDragStop:o}){let i={x:null,y:null},a=0,s=new Map,l=!1,d={x:0,y:0},c=null,u=!1,h=null,f=!1,p=!1,m=null;return{update:function({noDragClassName:g,handleSelector:x,domNode:y,isSelectable:b,nodeId:v,nodeClickDistance:w=0}){function k({x:e,y:n}){let{nodeLookup:o,nodeExtent:a,snapGrid:l,snapToGrid:d,nodeOrigin:c,onNodeDrag:u,onSelectionDrag:h,onError:f,updateNodePositions:g}=t();i={x:e,y:n};let x=!1,y=s.size>1,b=y&&a?nb(nl(s)):null,w=y&&d?function({dragItems:e,snapGrid:t,x:n,y:r}){let o=e.values().next().value;if(!o)return null;let i={x:n-o.distance.x,y:r-o.distance.y},a=nM(i,t);return{x:a.x-i.x,y:a.y-i.y}}({dragItems:s,snapGrid:l,x:e,y:n}):null;for(let[t,r]of s){if(!o.has(t))continue;let i={x:e-r.distance.x,y:n-r.distance.y};d&&(i=w?{x:Math.round(i.x+w.x),y:Math.round(i.y+w.y)}:nM(i,l));let s=null;if(y&&a&&!r.extent&&b){let{positionAbsolute:e}=r.internals,t=e.x-b.x+a[0][0],n=e.x+r.measured.width-b.x2+a[1][0];s=[[t,e.y-b.y+a[0][1]],[n,e.y+r.measured.height-b.y2+a[1][1]]]}let{position:u,positionAbsolute:h}=nu({nodeId:t,nextPosition:i,nodeLookup:o,nodeExtent:s||a,nodeOrigin:c,onError:f});x=x||r.position.x!==u.x||r.position.y!==u.y,r.position=u,r.internals.positionAbsolute=h}if(p=p||x,x&&(g(s,!0),m&&(r||u||!v&&h))){let[e,t]=rk({nodeId:v,dragItems:s,nodeLookup:o});r?.(m,s,e,t),u?.(m,e,t),v||h?.(m,t)}}async function N(){if(!c)return;let{transform:e,panBy:n,autoPanSpeed:r,autoPanOnNodeDrag:o}=t();if(!o){l=!1,cancelAnimationFrame(a);return}let[s,u]=nx(d,c,r);(0!==s||0!==u)&&(i.x=(i.x??0)-s/e[2],i.y=(i.y??0)-u/e[2],await n({x:s,y:u})&&k(i)),a=requestAnimationFrame(N)}function S(r){let{nodeLookup:o,multiSelectionActive:a,nodesDraggable:l,transform:d,snapGrid:h,snapToGrid:f,selectNodesOnDrag:p,onNodeDragStart:m,onSelectionDragStart:g,unselectNodesAndEdges:x}=t();u=!0,p&&b||a||!v||o.get(v)?.selected||x(),b&&p&&v&&e?.(v);let y=nH(r.sourceEvent,{transform:d,snapGrid:h,snapToGrid:f,containerBounds:c});if(i=y,(s=function(e,t,n,r){let o=new Map;for(let[i,a]of e)if((a.selected||a.id===r)&&(!a.parentId||!function e(t,n){if(!t.parentId)return!1;let r=n.get(t.parentId);return!!r&&(!!r.selected||e(r,n))}(a,e))&&(a.draggable||t&&void 0===a.draggable)){let t=e.get(i);t&&o.set(i,{id:i,position:t.position||{x:0,y:0},distance:{x:n.x-t.internals.positionAbsolute.x,y:n.y-t.internals.positionAbsolute.y},extent:t.extent,parentId:t.parentId,origin:t.origin,expandParent:t.expandParent,internals:{positionAbsolute:t.internals.positionAbsolute||{x:0,y:0}},measured:{width:t.measured.width??0,height:t.measured.height??0}})}return o}(o,l,y,v)).size>0&&(n||m||!v&&g)){let[e,t]=rk({nodeId:v,dragItems:s,nodeLookup:o});n?.(r.sourceEvent,s,e,t),m?.(r.sourceEvent,e,t),v||g?.(r.sourceEvent,t)}}h=eh(y);let j=eC().clickDistance(w).on("start",e=>{let{domNode:n,nodeDragThreshold:r,transform:o,snapGrid:a,snapToGrid:s}=t();c=n?.getBoundingClientRect()||null,f=!1,p=!1,m=e.sourceEvent,0===r&&S(e),i=nH(e.sourceEvent,{transform:o,snapGrid:a,snapToGrid:s,containerBounds:c}),d=nK(e.sourceEvent,c)}).on("drag",e=>{let{autoPanOnNodeDrag:n,transform:r,snapGrid:o,snapToGrid:a,nodeDragThreshold:h,nodeLookup:p}=t(),g=nH(e.sourceEvent,{transform:r,snapGrid:o,snapToGrid:a,containerBounds:c});if(m=e.sourceEvent,("touchmove"===e.sourceEvent.type&&e.sourceEvent.touches.length>1||v&&!p.has(v))&&(f=!0),!f){if(!l&&n&&u&&(l=!0,N()),!u){let t=nK(e.sourceEvent,c),n=t.x-d.x,r=t.y-d.y;Math.sqrt(n*n+r*r)>h&&S(e)}(i.x!==g.xSnapped||i.y!==g.ySnapped)&&s&&u&&(d=nK(e.sourceEvent,c),k(g))}}).on("end",e=>{if(!u||f){f&&s.size>0&&t().updateNodePositions(s,!1);return}if(l=!1,u=!1,cancelAnimationFrame(a),s.size>0){let{nodeLookup:n,updateNodePositions:r,onNodeDragStop:i,onSelectionDragStop:a}=t();if(p&&(r(s,!1),p=!1),o||i||!v&&a){let[t,r]=rk({nodeId:v,dragItems:s,nodeLookup:n,dragging:!1});o?.(e.sourceEvent,s,t,r),i?.(e.sourceEvent,t,r),v||a?.(e.sourceEvent,r)}}}).filter(e=>{let t=e.target;return!e.button&&(!g||!rw(t,`.${g}`,y))&&(!x||rw(t,x,y))});h.call(j)},destroy:function(){h?.on(".drag",null)}}}function rS(e,t,n,r,o,i=!1){let a=r.get(e);if(!a)return null;let s="strict"===o?a.internals.handleBounds?.[t]:[...a.internals.handleBounds?.source??[],...a.internals.handleBounds?.target??[]],l=(n?s?.find(e=>e.id===n):s?.[0])??null;return l&&i?{...l,...rn(a,l,l.position,!0)}:l}function rj(e,t){return e?e:t?.classList.contains("target")?"target":t?.classList.contains("source")?"source":null}let rC=()=>!0;function rE(e,{handle:t,connectionMode:n,fromNodeId:r,fromHandleId:o,fromType:i,doc:a,lib:s,flowId:l,isValidConnection:d=rC,nodeLookup:u}){let h="target"===i,f=t?a.querySelector(`.${s}-flow__handle[data-id="${l}-${t?.nodeId}-${t?.id}-${t?.type}"]`):null,{x:p,y:m}=nK(e),g=a.elementFromPoint(p,m),x=g?.classList.contains(`${s}-flow__handle`)?g:f,y={handleDomNode:x,isValid:!1,connection:null,toHandle:null};if(x){let e=rj(void 0,x),t=x.getAttribute("data-nodeid"),i=x.getAttribute("data-handleid"),a=x.classList.contains("connectable"),s=x.classList.contains("connectableend");if(!t||!e)return y;let l={source:h?t:r,sourceHandle:h?i:o,target:h?r:t,targetHandle:h?o:i};y.connection=l,y.isValid=a&&s&&(n===c.Strict?h&&"source"===e||!h&&"target"===e:t!==r||i!==o)&&d(l),y.toHandle=rS(t,e,i,u,n,!0)}return y}let rM={onPointerDown:function(e,{connectionMode:t,connectionRadius:n,handleId:r,nodeId:o,edgeUpdaterType:i,isTarget:a,domNode:s,nodeLookup:l,lib:d,autoPanOnConnect:c,flowId:u,panBy:h,cancelConnection:f,onConnectStart:p,onConnect:g,onConnectEnd:x,isValidConnection:y=rC,onReconnectEnd:b,updateConnection:v,getTransform:w,getFromHandle:k,autoPanSpeed:N,dragThreshold:S=1,handleDomNode:j}){let C,E=nV(e.target),M=0,{x:_,y:A}=nK(e),P=rj(i,j),T=s?.getBoundingClientRect(),D=!1;if(!T||!P)return;let I=rS(o,P,r,l,t);if(!I)return;let R=nK(e,T),z=!1,$=null,O=!1,L=null,B={...I,nodeId:o,type:P,position:I.position},H=l.get(o),F={inProgress:!0,isValid:null,from:rn(H,B,m.Left,!0),fromHandle:B,fromPosition:B.position,fromNode:H,to:R,toHandle:null,toPosition:nt[B.position],toNode:null,pointer:R};function V(){D=!0,v(F),p?.(e,{nodeId:o,handleId:r,handleType:P})}function X(e){var i,s;let f;if(!D){let{x:t,y:n}=nK(e),r=t-_,o=n-A;if(!(r*r+o*o>S*S))return;V()}if(!k()||!B)return void Y(e);let p=w();C=function(e,t,n,r){let o=[],i=1/0;for(let a of function(e,t,n){let r=[],o={x:e.x-n,y:e.y-n,width:2*n,height:2*n};for(let e of t.values())nS(o,nw(e))>0&&r.push(e);return r}(e,n,t+250))for(let n of[...a.internals.handleBounds?.source??[],...a.internals.handleBounds?.target??[]]){if(r.nodeId===n.nodeId&&r.type===n.type&&r.id===n.id)continue;let{x:s,y:l}=rn(a,n,n.position,!0),d=Math.sqrt(Math.pow(s-e.x,2)+Math.pow(l-e.y,2));d>t||(d<i?(o=[{...n,x:s,y:l}],i=d):d===i&&o.push({...n,x:s,y:l}))}if(!o.length)return null;if(o.length>1){let e="source"===r.type?"target":"source";return o.find(t=>t.type===e)??o[0]}return o[0]}(n_(R=nK(e,T),p,!1,[1,1]),n,l,B),z||(!function e(){if(!c||!T)return;let[t,n]=nx(R,T,N);h({x:t,y:n}),M=requestAnimationFrame(e)}(),z=!0);let g=rE(e,{handle:C,connectionMode:t,fromNodeId:o,fromHandleId:r,fromType:a?"target":"source",isValidConnection:y,doc:E,lib:d,flowId:u,nodeLookup:l});L=g.handleDomNode,$=g.connection,i=!!C,s=g.isValid,f=null,s?f=!0:i&&!s&&(f=!1),O=f;let x=l.get(o),b=x?rn(x,B,m.Left,!0):F.from,j={...F,from:b,isValid:O,to:g.toHandle&&O?nA({x:g.toHandle.x,y:g.toHandle.y},p):R,toHandle:g.toHandle,toPosition:O&&g.toHandle?g.toHandle.position:nt[B.position],toNode:g.toHandle?l.get(g.toHandle.nodeId):null,pointer:R};v(j),F=j}function Y(e){if(!("touches"in e)||!(e.touches.length>0)){if(D){(C||L)&&$&&O&&g?.($);let{inProgress:t,...n}=F,r={...n,toPosition:F.toHandle?F.toPosition:null};x?.(e,r),i&&b?.(e,r)}f(),cancelAnimationFrame(M),z=!1,O=!1,$=null,L=null,E.removeEventListener("mousemove",X),E.removeEventListener("mouseup",Y),E.removeEventListener("touchmove",X),E.removeEventListener("touchend",Y)}}0===S&&V(),E.addEventListener("mousemove",X),E.addEventListener("mouseup",Y),E.addEventListener("touchmove",X),E.addEventListener("touchend",Y)},isValid:rE};function r_({domNode:e,panZoom:t,getTransform:n,getViewScale:r}){let o=eh(e);return{update:function({translateExtent:e,width:i,height:a,zoomStep:s=1,pannable:l=!0,zoomable:d=!0,inversePan:c=!1}){let u=[0,0],h=t3().on("start",e=>{("mousedown"===e.sourceEvent.type||"touchstart"===e.sourceEvent.type)&&(u=[e.sourceEvent.clientX??e.sourceEvent.touches[0].clientX,e.sourceEvent.clientY??e.sourceEvent.touches[0].clientY])}).on("zoom",l?o=>{let s=n();if("mousemove"!==o.sourceEvent.type&&"touchmove"!==o.sourceEvent.type||!t)return;let l=[o.sourceEvent.clientX??o.sourceEvent.touches[0].clientX,o.sourceEvent.clientY??o.sourceEvent.touches[0].clientY],d=[l[0]-u[0],l[1]-u[1]];u=l;let h=r()*Math.max(s[2],Math.log(s[2]))*(c?-1:1),f={x:s[0]-d[0]*h,y:s[1]-d[1]*h};t.setViewportConstrained({x:f.x,y:f.y,zoom:s[2]},[[0,0],[i,a]],e)}:null).on("zoom.wheel",d?e=>{if("wheel"!==e.sourceEvent.type||!t)return;let r=n(),o=e.sourceEvent.ctrlKey&&nD()?10:1,i=-e.sourceEvent.deltaY*(1===e.sourceEvent.deltaMode?.05:e.sourceEvent.deltaMode?1:.002)*s,a=r[2]*Math.pow(2,i*o);t.scaleTo(a)}:null);o.call(h,{})},destroy:function(){o.on("zoom",null)},pointer:ef}}let rA=e=>({x:e.x,y:e.y,zoom:e.k}),rP=({x:e,y:t,zoom:n})=>tq.translate(e,t).scale(n),rT=(e,t)=>e.target.closest(`.${t}`),rD=(e,t)=>2===t&&Array.isArray(e)&&e.includes(2),rI=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,rR=(e,t=0,n=rI,r=()=>{})=>{let o="number"==typeof t&&t>0;return o||r(),o?e.transition().duration(t).ease(n).on("end",r):e},rz=e=>{let t=e.ctrlKey&&nD()?10:1;return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*t};function r$({domNode:e,minZoom:t,maxZoom:n,translateExtent:r,viewport:o,onPanZoom:i,onPanZoomStart:a,onPanZoomEnd:s,onDraggingChange:l}){let d={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},c=e.getBoundingClientRect(),h=t3().scaleExtent([t,n]).translateExtent(r),f=eh(e).call(h);y({x:o.x,y:o.y,zoom:nf(o.zoom,t,n)},[[0,0],[c.width,c.height]],r);let p=f.on("wheel.zoom"),m=f.on("dblclick.zoom");async function g(e,t){return!!f&&new Promise(n=>{h?.interpolate(t?.interpolate==="linear"?t4:eM).transform(rR(f,t?.duration,t?.ease,()=>n(!0)),e)})}function x(){h.on("zoom",null)}async function y(e,t,n){let r=rP(e),o=h?.constrain()(r,t,n);return o&&await g(o),o}return h.wheelDelta(rz),{update:function({noWheelClassName:e,noPanClassName:t,onPaneContextMenu:n,userSelectionActive:r,panOnScroll:o,panOnDrag:c,panOnScrollMode:g,panOnScrollSpeed:y,preventScrolling:b,zoomOnPinch:v,zoomOnScroll:w,zoomOnDoubleClick:k,zoomActivationKeyPressed:N,lib:S,onTransformChange:j,connectionInProgress:C,paneClickDistance:E,selectionOnDrag:M}){r&&!d.isZoomingOrPanning&&x();let _=o&&!N&&!r;h.clickDistance(M?1/0:!nC(E)||E<0?0:E);let A=_?function({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:r,panOnScrollMode:o,panOnScrollSpeed:i,zoomOnPinch:a,onPanZoomStart:s,onPanZoom:l,onPanZoomEnd:d}){return c=>{if(rT(c,t))return c.ctrlKey&&c.preventDefault(),!1;c.preventDefault(),c.stopImmediatePropagation();let h=n.property("__zoom").k||1;if(c.ctrlKey&&a){let e=ef(c),t=h*Math.pow(2,rz(c));r.scaleTo(n,t,e,c);return}let f=1===c.deltaMode?20:1,p=o===u.Vertical?0:c.deltaX*f,m=o===u.Horizontal?0:c.deltaY*f;!nD()&&c.shiftKey&&o!==u.Vertical&&(p=c.deltaY*f,m=0),r.translateBy(n,-(p/h)*i,-(m/h)*i,{internal:!0});let g=rA(n.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(l?.(c,g),e.panScrollTimeout=setTimeout(()=>{d?.(c,g),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,s?.(c,g))}}({zoomPanValues:d,noWheelClassName:e,d3Selection:f,d3Zoom:h,panOnScrollMode:g,panOnScrollSpeed:y,zoomOnPinch:v,onPanZoomStart:a,onPanZoom:i,onPanZoomEnd:s}):function({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(r,o){let i="wheel"===r.type,a=!t&&i&&!r.ctrlKey,s=rT(r,e);if(r.ctrlKey&&i&&s&&r.preventDefault(),a||s)return null;r.preventDefault(),n.call(this,r,o)}}({noWheelClassName:e,preventScrolling:b,d3ZoomHandler:p});f.on("wheel.zoom",A,{passive:!1});let P=function({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return r=>{if(r.sourceEvent?.internal)return;let o=rA(r.transform);e.mouseButton=r.sourceEvent?.button||0,e.isZoomingOrPanning=!0,e.prevViewport=o,r.sourceEvent?.type==="mousedown"&&t(!0),n&&n?.(r.sourceEvent,o)}}({zoomPanValues:d,onDraggingChange:l,onPanZoomStart:a});h.on("start",P);let T=function({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:r,onPanZoom:o}){return i=>{e.usedRightMouseButton=!!(n&&rD(t,e.mouseButton??0)),i.sourceEvent?.sync||r([i.transform.x,i.transform.y,i.transform.k]),o&&!i.sourceEvent?.internal&&o?.(i.sourceEvent,rA(i.transform))}}({zoomPanValues:d,panOnDrag:c,onPaneContextMenu:!!n,onPanZoom:i,onTransformChange:j});h.on("zoom",T);let D=function({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:o,onPaneContextMenu:i}){return a=>{if(!a.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,i&&rD(t,e.mouseButton??0)&&!e.usedRightMouseButton&&a.sourceEvent&&i(a.sourceEvent),e.usedRightMouseButton=!1,r(!1),o)){let t=rA(a.transform);e.prevViewport=t,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{o?.(a.sourceEvent,t)},150*!!n)}}}({zoomPanValues:d,panOnDrag:c,panOnScroll:o,onPaneContextMenu:n,onPanZoomEnd:s,onDraggingChange:l});h.on("end",D);let I=function({zoomActivationKeyPressed:e,zoomOnScroll:t,zoomOnPinch:n,panOnDrag:r,panOnScroll:o,zoomOnDoubleClick:i,userSelectionActive:a,noWheelClassName:s,noPanClassName:l,lib:d,connectionInProgress:c}){return u=>{let h=e||t,f=n&&u.ctrlKey,p="wheel"===u.type;if(1===u.button&&"mousedown"===u.type&&(rT(u,`${d}-flow__node`)||rT(u,`${d}-flow__edge`)))return!0;if(!r&&!h&&!o&&!i&&!n||a||c&&!p||rT(u,s)&&p||rT(u,l)&&(!p||o&&p&&!e)||!n&&u.ctrlKey&&p)return!1;if(!n&&"touchstart"===u.type&&u.touches?.length>1)return u.preventDefault(),!1;if(!h&&!o&&!f&&p||!r&&("mousedown"===u.type||"touchstart"===u.type)||Array.isArray(r)&&!r.includes(u.button)&&"mousedown"===u.type)return!1;let m=Array.isArray(r)&&r.includes(u.button)||!u.button||u.button<=1;return(!u.ctrlKey||p)&&m}}({zoomActivationKeyPressed:N,panOnDrag:c,zoomOnScroll:w,panOnScroll:o,zoomOnDoubleClick:k,zoomOnPinch:v,userSelectionActive:r,noPanClassName:t,noWheelClassName:e,lib:S,connectionInProgress:C});h.filter(I),k?f.on("dblclick.zoom",m):f.on("dblclick.zoom",null)},destroy:x,setViewport:async function e(e,t){let n=rP(e);return await g(n,t),n},setViewportConstrained:y,getViewport:function(){let e=f?tZ(f.node()):{x:0,y:0,k:1};return{x:e.x,y:e.y,zoom:e.k}},scaleTo:async function e(e,t){return!!f&&new Promise(n=>{h?.interpolate(t?.interpolate==="linear"?t4:eM).scaleTo(rR(f,t?.duration,t?.ease,()=>n(!0)),e)})},scaleBy:async function e(e,t){return!!f&&new Promise(n=>{h?.interpolate(t?.interpolate==="linear"?t4:eM).scaleBy(rR(f,t?.duration,t?.ease,()=>n(!0)),e)})},setScaleExtent:function(e){h?.scaleExtent(e)},setTranslateExtent:function(e){h?.translateExtent(e)},syncViewport:function(e){if(f){let t=rP(e),n=f.property("__zoom");(n.k!==e.zoom||n.x!==e.x||n.y!==e.y)&&h?.transform(f,t,null,{sync:!0})}},setClickDistance:function(e){let t=!nC(e)||e<0?0:e;h?.clickDistance(t)}}}function rO(e){let t=e.includes("right")||e.includes("left"),n=e.includes("bottom")||e.includes("top");return{isHorizontal:t,isVertical:n,affectsX:e.includes("left"),affectsY:e.includes("top")}}function rL(e,t){return Math.max(0,t-e)}function rB(e,t){return Math.max(0,e-t)}function rH(e,t,n){return Math.max(0,t-e,e-n)}(s=g||(g={})).Line="line",s.Handle="handle";let rF={width:0,height:0,x:0,y:0},rV={...rF,pointerX:0,pointerY:0,aspectRatio:1};function rX({domNode:e,nodeId:t,getStoreItems:n,onChange:r,onEnd:o}){let i=eh(e),a={controlDirection:rO("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};return{update:function({controlPosition:e,boundaries:s,keepAspectRatio:l,resizeDirection:d,onResizeStart:c,onResize:u,onResizeEnd:h,shouldResize:f}){let p,m,g,x,y={...rF},b={...rV};a={boundaries:s,resizeDirection:d,keepAspectRatio:l,controlDirection:rO(e)};let v=null,w=[],k=!1,N=eC().on("start",e=>{let{nodeLookup:r,transform:o,snapGrid:i,snapToGrid:a,nodeOrigin:s,paneDomNode:l}=n();if(!(p=r.get(t)))return;v=l?.getBoundingClientRect()??null;let{xSnapped:d,ySnapped:u}=nH(e.sourceEvent,{transform:o,snapGrid:i,snapToGrid:a,containerBounds:v});for(let[e,n]of(b={...y={width:p.measured.width??0,height:p.measured.height??0,x:p.position.x??0,y:p.position.y??0},pointerX:d,pointerY:u,aspectRatio:y.width/y.height},m=void 0,g=nI(p.extent)?p.extent:void 0,p.parentId&&("parent"===p.extent||p.expandParent)&&(m=r.get(p.parentId)),m&&"parent"===p.extent&&(g=[[0,0],[m.measured.width,m.measured.height]]),w=[],x=void 0,r))if(n.parentId===t&&(w.push({id:e,position:{...n.position},extent:n.extent}),"parent"===n.extent||n.expandParent)){let e=function(e,t,n){let r=t.position.x+e.position.x,o=t.position.y+e.position.y,i=e.measured.width??0,a=e.measured.height??0,s=n[0]*i,l=n[1]*a;return[[r-s,o-l],[r+i-s,o+a-l]]}(n,p,n.origin??s);x=x?[[Math.min(e[0][0],x[0][0]),Math.min(e[0][1],x[0][1])],[Math.max(e[1][0],x[1][0]),Math.max(e[1][1],x[1][1])]]:e}c?.(e,{...y})}).on("drag",e=>{let{transform:t,snapGrid:o,snapToGrid:i,nodeOrigin:s}=n(),l=nH(e.sourceEvent,{transform:t,snapGrid:o,snapToGrid:i,containerBounds:v}),d=[];if(!p)return;let{x:c,y:h,width:N,height:S}=y,j={},C=p.origin??s,{width:E,height:M,x:_,y:A}=function(e,t,n,r,o,i,a,s){var l,d,c,u;let{affectsX:h,affectsY:f}=t,{isHorizontal:p,isVertical:m}=t,g=p&&m,{xSnapped:x,ySnapped:y}=n,{minWidth:b,maxWidth:v,minHeight:w,maxHeight:k}=r,{x:N,y:S,width:j,height:C,aspectRatio:E}=e,M=Math.floor(p?x-e.pointerX:0),_=Math.floor(m?y-e.pointerY:0),A=j+(h?-M:M),P=C+(f?-_:_),T=-i[0]*j,D=-i[1]*C,I=rH(A,b,v),R=rH(P,w,k);if(a){let e=0,t=0;h&&M<0?e=rL(N+M+T,a[0][0]):!h&&M>0&&(e=rB(N+A+T,a[1][0])),f&&_<0?t=rL(S+_+D,a[0][1]):!f&&_>0&&(t=rB(S+P+D,a[1][1])),I=Math.max(I,e),R=Math.max(R,t)}if(s){let e=0,t=0;h&&M>0?e=rB(N+M,s[0][0]):!h&&M<0&&(e=rL(N+A,s[1][0])),f&&_>0?t=rB(S+_,s[0][1]):!f&&_<0&&(t=rL(S+P,s[1][1])),I=Math.max(I,e),R=Math.max(R,t)}if(o){if(p){(I=Math.max(I,rH(A/E,w,k)*E),a)&&(I=Math.max(I,(h||f)&&(!h||f||!g)?rL(S+D+(h?M:-M)/E,a[0][1])*E:rB(S+D+A/E,a[1][1])*E));s&&(I=Math.max(I,(h||f)&&(!h||f||!g)?rB(S+(h?M:-M)/E,s[0][1])*E:rL(S+A/E,s[1][1])*E))}if(m){(R=Math.max(R,rH(P*E,b,v)/E),a)&&(R=Math.max(R,(h||f)&&(!f||h||!g)?rL(N+(f?_:-_)*E+T,a[0][0])/E:rB(N+P*E+T,a[1][0])/E));s&&(R=Math.max(R,(h||f)&&(!f||h||!g)?rB(N+(f?_:-_)*E,s[0][0])/E:rL(N+P*E,s[1][0])/E))}}_+=_<0?R:-R,M+=M<0?I:-I,o&&(g?A>P*E?_=((l=h,d=f,l?!d:d)?-M:M)/E:M=((c=h,u=f,c?!u:u)?-_:_)*E:p?(_=M/E,f=h):(M=_*E,h=f));let z=h?N+M:N,$=f?S+_:S;return{width:j+(h?-M:M),height:C+(f?-_:_),x:i[0]*M*(h?-1:1)+z,y:i[1]*_*(f?-1:1)+$}}(b,a.controlDirection,l,a.boundaries,a.keepAspectRatio,C,g,x),P=E!==N,T=M!==S,D=_!==c&&P,I=A!==h&&T;if(!D&&!I&&!P&&!T)return;if((D||I||1===C[0]||1===C[1])&&(j.x=D?_:y.x,j.y=I?A:y.y,y.x=j.x,y.y=j.y,w.length>0)){let e=_-c,t=A-h;for(let n of w)n.position={x:n.position.x-e+C[0]*(E-N),y:n.position.y-t+C[1]*(M-S)},d.push(n)}if((P||T)&&(j.width=P&&(!a.resizeDirection||"horizontal"===a.resizeDirection)?E:y.width,j.height=T&&(!a.resizeDirection||"vertical"===a.resizeDirection)?M:y.height,y.width=j.width,y.height=j.height),m&&p.expandParent){let e=C[0]*(j.width??0);j.x&&j.x<e&&(y.x=e,b.x=b.x-(j.x-e));let t=C[1]*(j.height??0);j.y&&j.y<t&&(y.y=t,b.y=b.y-(j.y-t))}let R=function({width:e,prevWidth:t,height:n,prevHeight:r,affectsX:o,affectsY:i}){let a=e-t,s=n-r,l=[a>0?1:a<0?-1:0,s>0?1:s<0?-1:0];return a&&o&&(l[0]=-1*l[0]),s&&i&&(l[1]=-1*l[1]),l}({width:y.width,prevWidth:N,height:y.height,prevHeight:S,affectsX:a.controlDirection.affectsX,affectsY:a.controlDirection.affectsY}),z={...y,direction:R};!1!==f?.(e,z)&&(k=!0,u?.(e,z),r(j,d))}).on("end",e=>{k&&(h?.(e,{...y}),o?.({...y}),k=!1)});i.call(N)},destroy:function(){i.on(".drag",null)}}}e.s(["ConnectionLineType",0,f,"ConnectionMode",0,c,"MarkerType",0,p,"PanOnScrollMode",0,u,"Position",0,m,"ResizeControlVariant",0,g,"SelectionMode",0,h,"XYDrag",0,rN,"XYHandle",0,rM,"XYMinimap",0,r_,"XYPanZoom",0,r$,"XYResizer",0,rX,"XY_RESIZER_HANDLE_POSITIONS",0,["top-left","top-right","bottom-left","bottom-right"],"XY_RESIZER_LINE_POSITIONS",0,["top","right","bottom","left"],"addEdge",0,n5,"adoptUserNodes",0,rf,"areConnectionMapsEqual",0,function(e,t){if(!e&&!t)return!0;if(!e||!t||e.size!==t.size)return!1;if(!e.size&&!t.size)return!0;for(let n of e.keys())if(!t.has(n))return!1;return!0},"areSetsEqual",0,nO,"calcAutoPan",0,nx,"calculateNodePosition",0,nu,"createDevWarn",0,nE,"createMarkerIds",0,ri,"defaultAriaLabelConfig",0,t7,"elementSelectionKeys",0,t9,"errorMessages",0,t6,"evaluateAbsolutePosition",0,n$,"fitViewport",0,nc,"getBezierEdgeCenter",0,nZ,"getBezierPath",0,nQ,"getBoundsOfRects",0,nN,"getConnectionStatus",0,nn,"getDimensions",0,nF,"getEdgePosition",0,re,"getEdgeToolbarTransform",0,function(e,t,n,r="center",o="center"){return`translate(${e}px, ${t}px) scale(${1/n}) translate(${-(ra[r]??50)}%, ${-(rs[o]??50)}%)`},"getElementsToRemove",0,nh,"getElevatedEdgeZIndex",0,n0,"getEventPosition",0,nK,"getHandlePosition",0,rn,"getHostForElement",0,nV,"getInternalNodesBounds",0,nl,"getMarkerId",0,ro,"getNodeDimensions",0,nR,"getNodeToolbarTransform",0,function(e,t,n,r,o){let i=.5;"start"===o?i=0:"end"===o&&(i=1);let a=[(e.x+e.width*i)*t.zoom+t.x,e.y*t.zoom+t.y-r],s=[-100*i,-100];switch(n){case m.Right:a=[(e.x+e.width)*t.zoom+t.x+r,(e.y+e.height*i)*t.zoom+t.y],s=[0,-100*i];break;case m.Bottom:a[1]=(e.y+e.height)*t.zoom+t.y+r,s[1]=0;break;case m.Left:a=[e.x*t.zoom+t.x-r,(e.y+e.height*i)*t.zoom+t.y],s=[-100,-100*i]}return`translate(${a[0]}px, ${a[1]}px) translate(${s[0]}%, ${s[1]}%)`},"getNodesBounds",0,ns,"getNodesInside",0,nd,"getOverlappingArea",0,nS,"getSmoothStepPath",0,n9,"getStraightPath",0,n3,"getViewportForBounds",0,nT,"handleConnectionChange",0,function(e,t,n){if(!n)return;let r=[];e.forEach((e,n)=>{t?.has(n)||r.push(e)}),r.length&&n(r)},"handleExpandParent",0,rg,"infiniteExtent",0,t8,"initialConnection",0,ne,"isEdgeBase",0,nr,"isEdgeVisible",0,n1,"isInputDOMNode",0,nY,"isMacOs",0,nD,"isMouseEvent",0,nU,"isNodeBase",0,no,"isNumeric",0,nC,"isRectObject",0,nj,"mergeAriaLabelConfig",0,nB,"nodeHasDimensions",0,nz,"nodeToRect",0,nw,"panBy",0,ry,"pointToRendererPoint",0,n_,"reconnectEdge",0,(e,t,n,r={shouldReplaceId:!0})=>{let{id:o,...i}=e;if(!t.source||!t.target)return r.onError?.("006",t6.error006()),n;if(!n.find(t=>t.id===e.id))return r.onError?.("007",t6.error007(o)),n;let a=r.getEdgeId||n2,s={...i,id:r.shouldReplaceId?a(t):o,source:t.source,target:t.target,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle};return n.filter(e=>e.id!==o).concat(s)},"rendererPointToPoint",0,nA,"shallowNodeData",0,function(e,t){if(null===e||null===t)return!1;let n=Array.isArray(e)?e:[e],r=Array.isArray(t)?t:[t];if(n.length!==r.length)return!1;for(let e=0;e<n.length;e++)if(n[e].id!==r[e].id||n[e].type!==r[e].type||!Object.is(n[e].data,r[e].data))return!1;return!0},"snapPosition",0,nM,"updateAbsolutePositions",0,ru,"updateConnectionLookup",0,rv,"updateNodeInternals",0,rx,"withResolvers",0,nL],30590);var rY=e.i(30224);let rU={get url(){return`file://${e.P("node_modules/zustand/esm/vanilla.mjs")}`}},rK=e=>{let t,n=new Set,r=(e,r)=>{let o="function"==typeof e?e(t):e;if(!Object.is(o,t)){let e=t;t=(null!=r?r:"object"!=typeof o||null===o)?o:Object.assign({},t,o),n.forEach(n=>n(t,e))}},o=()=>t,i={setState:r,getState:o,getInitialState:()=>a,subscribe:e=>(n.add(e),()=>n.delete(e)),destroy:()=>{(rU.env?rU.env.MODE:void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},a=t=e(r,o,i);return i},{useDebugValue:rq}=b.default,{useSyncExternalStoreWithSelector:rZ}=rY.default,rW=e=>e;function rG(e,t=rW,n){let r=rZ(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return rq(r),r}let rQ=(e,t)=>{let n=e?rK(e):rK,r=(e,r=t)=>rG(n,e,r);return Object.assign(r,n),r};function rJ(e,t){if(Object.is(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[n,r]of e)if(!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}var r0=e.i(74080);let r1=(0,b.createContext)(null),r2=r1.Provider,r5=t6.error001("react");function r3(e,t){let n=(0,b.useContext)(r1);if(null===n)throw Error(r5);return rG(n,e,t)}function r4(){let e=(0,b.useContext)(r1);if(null===e)throw Error(r5);return(0,b.useMemo)(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}let r6={display:"none"},r8={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},r9="react-flow__node-desc",r7="react-flow__edge-desc",oe=e=>e.ariaLiveMessage,ot=e=>e.ariaLabelConfig;function on({rfId:e}){let t=r3(oe);return(0,y.jsx)("div",{id:`react-flow__aria-live-${e}`,"aria-live":"assertive","aria-atomic":"true",style:r8,children:t})}function or({rfId:e,disableKeyboardA11y:t}){let n=r3(ot);return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)("div",{id:`${r9}-${e}`,style:r6,children:t?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),(0,y.jsx)("div",{id:`${r7}-${e}`,style:r6,children:n["edge.a11yDescription.default"]}),!t&&(0,y.jsx)(on,{rfId:e})]})}let oo=(0,b.forwardRef)(({position:e="top-left",children:t,className:n,style:r,...o},i)=>{let a=`${e}`.split("-");return(0,y.jsx)("div",{className:v(["react-flow__panel",n,...a]),style:r,ref:i,...o,children:t})});function oi({proOptions:e,position:t="bottom-right"}){return e?.hideAttribution?null:(0,y.jsx)(oo,{position:t,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:(0,y.jsx)("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}oo.displayName="Panel";let oa=e=>{let t=[],n=[];for(let[,n]of e.nodeLookup)n.selected&&t.push(n.internals.userNode);for(let[,t]of e.edgeLookup)t.selected&&n.push(t);return{selectedNodes:t,selectedEdges:n}},os=e=>e.id;function ol(e,t){return rJ(e.selectedNodes.map(os),t.selectedNodes.map(os))&&rJ(e.selectedEdges.map(os),t.selectedEdges.map(os))}function od({onSelectionChange:e}){let t=r4(),{selectedNodes:n,selectedEdges:r}=r3(oa,ol);return(0,b.useEffect)(()=>{let o={nodes:n,edges:r};e?.(o),t.getState().onSelectionChangeHandlers.forEach(e=>e(o))},[n,r,e]),null}let oc=e=>!!e.onSelectionChangeHandlers;function ou({onSelectionChange:e}){let t=r3(oc);return e||t?(0,y.jsx)(od,{onSelectionChange:e}):null}let oh=[0,0],of={x:0,y:0,zoom:1},op=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","ariaLabelConfig","zIndexMode","rfId"],om=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),og={translateExtent:t8,nodeOrigin:oh,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function ox(e){let{setNodes:t,setEdges:n,setMinZoom:r,setMaxZoom:o,setTranslateExtent:i,setNodeExtent:a,reset:s,setDefaultNodesAndEdges:l}=r3(om,rJ),d=r4();(0,b.useEffect)(()=>(l(e.defaultNodes,e.defaultEdges),()=>{c.current=og,s()}),[]);let c=(0,b.useRef)(og);return(0,b.useEffect)(()=>{for(let s of op){let l=e[s];l!==c.current[s]&&void 0!==e[s]&&("nodes"===s?t(l):"edges"===s?n(l):"minZoom"===s?r(l):"maxZoom"===s?o(l):"translateExtent"===s?i(l):"nodeExtent"===s?a(l):"ariaLabelConfig"===s?d.setState({ariaLabelConfig:nB(l)}):"fitView"===s?d.setState({fitViewQueued:l}):"fitViewOptions"===s?d.setState({fitViewOptions:l}):d.setState({[s]:l}))}c.current=e},op.map(t=>e[t])),null}function oy(){return"u"<typeof window||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}let ob="u">typeof document?document:null;function ov(e=null,t={target:ob,actInsideInputWithModifier:!0}){let[n,r]=(0,b.useState)(!1),o=(0,b.useRef)(!1),i=(0,b.useRef)(new Set([])),[a,s]=(0,b.useMemo)(()=>{if(null!==e){let t=(Array.isArray(e)?e:[e]).filter(e=>"string"==typeof e).map(e=>e.replace("+","\n").replace("\n\n","\n+").split("\n")),n=t.reduce((e,t)=>e.concat(...t),[]);return[t,n]}return[[],[]]},[e]);return(0,b.useEffect)(()=>{let n=t?.target??ob,l=t?.actInsideInputWithModifier??!0;if(null!==e){let e=e=>{if(o.current=e.ctrlKey||e.metaKey||e.shiftKey||e.altKey,(!o.current||o.current&&!l)&&nY(e))return!1;let n=ok(e.code,s);if(i.current.add(e[n]),ow(a,i.current,!1)){let n=e.composedPath?.()?.[0]||e.target,i=n?.nodeName==="BUTTON"||n?.nodeName==="A";!1!==t.preventDefault&&(o.current||!i)&&e.preventDefault(),r(!0)}},d=e=>{let t=ok(e.code,s);ow(a,i.current,!0)?(r(!1),i.current.clear()):i.current.delete(e[t]),"Meta"===e.key&&i.current.clear(),o.current=!1},c=()=>{i.current.clear(),r(!1)};return n?.addEventListener("keydown",e),n?.addEventListener("keyup",d),window.addEventListener("blur",c),window.addEventListener("contextmenu",c),()=>{n?.removeEventListener("keydown",e),n?.removeEventListener("keyup",d),window.removeEventListener("blur",c),window.removeEventListener("contextmenu",c)}}},[e,r]),n}function ow(e,t,n){return e.filter(e=>n||e.length===t.size).some(e=>e.every(e=>t.has(e)))}function ok(e,t){return t.includes(e)?"code":"key"}function oN(e,t){let n=[],r=new Map,o=[];for(let t of e)if("add"===t.type){o.push(t);continue}else if("remove"===t.type||"replace"===t.type)r.set(t.id,[t]);else{let e=r.get(t.id);e?e.push(t):r.set(t.id,[t])}for(let e of t){let t=r.get(e.id);if(!t){n.push(e);continue}if("remove"===t[0].type)continue;if("replace"===t[0].type){n.push({...t[0].item});continue}let o={...e};for(let e of t){var i=e,a=o;switch(i.type){case"select":a.selected=i.selected;break;case"position":void 0!==i.position&&(a.position=i.position),void 0!==i.dragging&&(a.dragging=i.dragging);break;case"dimensions":void 0!==i.dimensions&&(a.measured={...i.dimensions},i.setAttributes&&((!0===i.setAttributes||"width"===i.setAttributes)&&(a.width=i.dimensions.width),(!0===i.setAttributes||"height"===i.setAttributes)&&(a.height=i.dimensions.height))),"boolean"==typeof i.resizing&&(a.resizing=i.resizing)}}n.push(o)}return o.length&&o.forEach(e=>{void 0!==e.index?n.splice(e.index,0,{...e.item}):n.push({...e.item})}),n}function oS(e,t){return oN(e,t)}function oj(e,t){return oN(e,t)}function oC(e,t){return{id:e,type:"select",selected:t}}function oE(e,t=new Set,n=!1){let r=[];for(let[o,i]of e){let e=t.has(o);(void 0!==i.selected||e)&&i.selected!==e&&(n&&(i.selected=e),r.push(oC(i.id,e)))}return r}function oM({items:e=[],lookup:t}){let n=[],r=new Map(e.map(e=>[e.id,e]));for(let[r,o]of e.entries()){let e=t.get(o.id),i=e?.internals?.userNode??e;void 0!==i&&i!==o&&n.push({id:o.id,item:o,type:"replace"}),void 0===i&&n.push({item:o,type:"add",index:r})}for(let[e]of t)void 0===r.get(e)&&n.push({id:e,type:"remove"});return n}function o_(e){return{id:e.id,type:"remove"}}let oA=nE("React Flow","https://reactflow.dev/");function oP(e){return(0,b.forwardRef)(e)}let oT="u">typeof window?b.useLayoutEffect:b.useEffect;function oD(e){let[t,n]=(0,b.useState)(BigInt(0)),[r]=(0,b.useState)(()=>{var e;let t;return e=()=>n(e=>e+BigInt(1)),t=[],{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}});return oT(()=>{let t=r.get();t.length&&(e(t),r.reset())},[t]),r}let oI=(0,b.createContext)(null);function oR({children:e}){let t=r4(),n=oD((0,b.useCallback)(e=>{let{nodes:n=[],setNodes:r,hasDefaultNodes:o,onNodesChange:i,nodeLookup:a,fitViewQueued:s,onNodesChangeMiddlewareMap:l}=t.getState(),d=n;for(let t of e)d="function"==typeof t?t(d):t;let c=oM({items:d,lookup:a});for(let e of l.values())c=e(c);o&&r(d),c.length>0?i?.(c):s&&window.requestAnimationFrame(()=>{let{fitViewQueued:e,nodes:n,setNodes:r}=t.getState();e&&r(n)})},[])),r=oD((0,b.useCallback)(e=>{let{edges:n=[],setEdges:r,hasDefaultEdges:o,onEdgesChange:i,edgeLookup:a}=t.getState(),s=n;for(let t of e)s="function"==typeof t?t(s):t;o?r(s):i&&i(oM({items:s,lookup:a}))},[])),o=(0,b.useMemo)(()=>({nodeQueue:n,edgeQueue:r}),[]);return(0,y.jsx)(oI.Provider,{value:o,children:e})}let oz=e=>!!e.panZoom;function o$(){let e,t=(e=r4(),(0,b.useMemo)(()=>({zoomIn:async t=>{let{panZoom:n}=e.getState();return!!n&&n.scaleBy(1.2,t)},zoomOut:async t=>{let{panZoom:n}=e.getState();return!!n&&n.scaleBy(1/1.2,t)},zoomTo:async(t,n)=>{let{panZoom:r}=e.getState();return!!r&&r.scaleTo(t,n)},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{let{transform:[r,o,i],panZoom:a}=e.getState();return!!a&&(await a.setViewport({x:t.x??r,y:t.y??o,zoom:t.zoom??i},n),!0)},getViewport:()=>{let[t,n,r]=e.getState().transform;return{x:t,y:n,zoom:r}},setCenter:async(t,n,r)=>e.getState().setCenter(t,n,r),fitBounds:async(t,n)=>{let{width:r,height:o,minZoom:i,maxZoom:a,panZoom:s}=e.getState(),l=nT(t,r,o,i,a,n?.padding??.1);return!!s&&(await s.setViewport(l,{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),!0)},screenToFlowPosition:(t,n={})=>{let{transform:r,snapGrid:o,snapToGrid:i,domNode:a}=e.getState();if(!a)return t;let{x:s,y:l}=a.getBoundingClientRect(),d={x:t.x-s,y:t.y-l},c=n.snapGrid??o;return n_(d,r,n.snapToGrid??i,c)},flowToScreenPosition:t=>{let{transform:n,domNode:r}=e.getState();if(!r)return t;let{x:o,y:i}=r.getBoundingClientRect(),a=nA(t,n);return{x:a.x+o,y:a.y+i}}}),[])),n=r4(),r=function(){let e=(0,b.useContext)(oI);if(!e)throw Error("useBatchContext must be used within a BatchProvider");return e}(),o=r3(oz),i=(0,b.useMemo)(()=>{let e=e=>n.getState().nodeLookup.get(e),t=e=>{r.nodeQueue.push(e)},o=e=>{r.edgeQueue.push(e)},i=e=>{let{nodeLookup:t,nodeOrigin:r}=n.getState(),o=no(e)?e:t.get(e.id),i=o.parentId?n$(o.position,o.measured,o.parentId,t,r):o.position;return nw({...o,position:i,width:o.measured?.width??o.width,height:o.measured?.height??o.height})},a=(e,n,r={replace:!1})=>{t(t=>t.map(t=>{if(t.id===e){let e="function"==typeof n?n(t):n;return r.replace&&no(e)?e:{...t,...e}}return t}))},s=(e,t,n={replace:!1})=>{o(r=>r.map(r=>{if(r.id===e){let e="function"==typeof t?t(r):t;return n.replace&&nr(e)?e:{...r,...e}}return r}))};return{getNodes:()=>n.getState().nodes.map(e=>({...e})),getNode:t=>e(t)?.internals.userNode,getInternalNode:e,getEdges:()=>{let{edges:e=[]}=n.getState();return e.map(e=>({...e}))},getEdge:e=>n.getState().edgeLookup.get(e),setNodes:t,setEdges:o,addNodes:e=>{let t=Array.isArray(e)?e:[e];r.nodeQueue.push(e=>[...e,...t])},addEdges:e=>{let t=Array.isArray(e)?e:[e];r.edgeQueue.push(e=>[...e,...t])},toObject:()=>{let{nodes:e=[],edges:t=[],transform:r}=n.getState(),[o,i,a]=r;return{nodes:e.map(e=>({...e})),edges:t.map(e=>({...e})),viewport:{x:o,y:i,zoom:a}}},deleteElements:async({nodes:e=[],edges:t=[]})=>{let{nodes:r,edges:o,onNodesDelete:i,onEdgesDelete:a,triggerNodeChanges:s,triggerEdgeChanges:l,onDelete:d,onBeforeDelete:c}=n.getState(),{nodes:u,edges:h}=await nh({nodesToRemove:e,edgesToRemove:t,nodes:r,edges:o,onBeforeDelete:c}),f=h.length>0,p=u.length>0;if(f){let e=h.map(o_);a?.(h),l(e)}if(p){let e=u.map(o_);i?.(u),s(e)}return(p||f)&&d?.({nodes:u,edges:h}),{deletedNodes:u,deletedEdges:h}},getIntersectingNodes:(e,t=!0,r)=>{let o=nj(e),a=o?e:i(e),s=void 0!==r;return a?(r||n.getState().nodes).filter(r=>{let i=n.getState().nodeLookup.get(r.id);if(i&&!o&&(r.id===e.id||!i.internals.positionAbsolute))return!1;let l=nw(s?r:i),d=nS(l,a);return t&&d>0||d>=l.width*l.height||d>=a.width*a.height}):[]},isNodeIntersecting:(e,t,n=!0)=>{let r=nj(e)?e:i(e);if(!r)return!1;let o=nS(r,t);return n&&o>0||o>=t.width*t.height||o>=r.width*r.height},updateNode:a,updateNodeData:(e,t,n={replace:!1})=>{a(e,e=>{let r="function"==typeof t?t(e):t;return n.replace?{...e,data:r}:{...e,data:{...e.data,...r}}},n)},updateEdge:s,updateEdgeData:(e,t,n={replace:!1})=>{s(e,e=>{let r="function"==typeof t?t(e):t;return n.replace?{...e,data:r}:{...e,data:{...e.data,...r}}},n)},getNodesBounds:e=>{let{nodeLookup:t,nodeOrigin:r}=n.getState();return ns(e,{nodeLookup:t,nodeOrigin:r})},getHandleConnections:({type:e,id:t,nodeId:r})=>Array.from(n.getState().connectionLookup.get(`${r}-${e}${t?`-${t}`:""}`)?.values()??[]),getNodeConnections:({type:e,handleId:t,nodeId:r})=>Array.from(n.getState().connectionLookup.get(`${r}${e?t?`-${e}-${t}`:`-${e}`:""}`)?.values()??[]),fitView:async e=>{let t=n.getState().fitViewResolver??nL();return n.setState({fitViewQueued:!0,fitViewOptions:e,fitViewResolver:t}),r.nodeQueue.push(e=>[...e]),t.promise}}},[]);return(0,b.useMemo)(()=>({...i,...t,viewportInitialized:o}),[o])}let oO=e=>e.selected,oL="u">typeof window?window:void 0,oB={position:"absolute",width:"100%",height:"100%",top:0,left:0},oH=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function oF({onPaneContextMenu:e,zoomOnScroll:t=!0,zoomOnPinch:n=!0,panOnScroll:r=!1,panOnScrollSpeed:o=.5,panOnScrollMode:i=u.Free,zoomOnDoubleClick:a=!0,panOnDrag:s=!0,defaultViewport:l,translateExtent:d,minZoom:c,maxZoom:h,zoomActivationKeyCode:f,preventScrolling:p=!0,children:m,noWheelClassName:g,noPanClassName:x,onViewportChange:v,isControlledViewport:w,paneClickDistance:k,selectionOnDrag:N}){let S,j=r4(),C=(0,b.useRef)(null),{userSelectionActive:E,lib:M,connectionInProgress:_}=r3(oH,rJ),A=ov(f),P=(0,b.useRef)();S=r4(),(0,b.useEffect)(()=>{let e=()=>{if(!C.current||!(C.current.checkVisibility?.()??!0))return!1;let e=nF(C.current);(0===e.height||0===e.width)&&S.getState().onError?.("004",t6.error004()),S.setState({width:e.width||500,height:e.height||500})};if(C.current){e(),window.addEventListener("resize",e);let t=new ResizeObserver(()=>e());return t.observe(C.current),()=>{window.removeEventListener("resize",e),t&&C.current&&t.unobserve(C.current)}}},[]);let T=(0,b.useCallback)(e=>{v?.({x:e[0],y:e[1],zoom:e[2]}),w||j.setState({transform:e})},[v,w]);return(0,b.useEffect)(()=>{if(C.current){P.current=r$({domNode:C.current,minZoom:c,maxZoom:h,translateExtent:d,viewport:l,onDraggingChange:e=>j.setState(t=>t.paneDragging===e?t:{paneDragging:e}),onPanZoomStart:(e,t)=>{let{onViewportChangeStart:n,onMoveStart:r}=j.getState();r?.(e,t),n?.(t)},onPanZoom:(e,t)=>{let{onViewportChange:n,onMove:r}=j.getState();r?.(e,t),n?.(t)},onPanZoomEnd:(e,t)=>{let{onViewportChangeEnd:n,onMoveEnd:r}=j.getState();r?.(e,t),n?.(t)}});let{x:e,y:t,zoom:n}=P.current.getViewport();return j.setState({panZoom:P.current,transform:[e,t,n],domNode:C.current.closest(".react-flow")}),()=>{P.current?.destroy()}}},[]),(0,b.useEffect)(()=>{P.current?.update({onPaneContextMenu:e,zoomOnScroll:t,zoomOnPinch:n,panOnScroll:r,panOnScrollSpeed:o,panOnScrollMode:i,zoomOnDoubleClick:a,panOnDrag:s,zoomActivationKeyPressed:A,preventScrolling:p,noPanClassName:x,userSelectionActive:E,noWheelClassName:g,lib:M,onTransformChange:T,connectionInProgress:_,selectionOnDrag:N,paneClickDistance:k})},[e,t,n,r,o,i,a,s,A,p,x,E,g,M,T,_,N,k]),(0,y.jsx)("div",{className:"react-flow__renderer",ref:C,style:oB,children:m})}let oV=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function oX(){let{userSelectionActive:e,userSelectionRect:t}=r3(oV,rJ);return e&&t?(0,y.jsx)("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}let oY=(e,t)=>n=>{n.target===t.current&&e?.(n)},oU=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging,panBy:e.panBy,autoPanSpeed:e.autoPanSpeed});function oK({isSelecting:e,selectionKeyPressed:t,selectionMode:n=h.Full,panOnDrag:r,autoPanOnSelection:o,paneClickDistance:i,selectionOnDrag:a,onSelectionStart:s,onSelectionEnd:l,onPaneClick:d,onPaneContextMenu:c,onPaneScroll:u,onPaneMouseEnter:f,onPaneMouseMove:p,onPaneMouseLeave:m,children:g}){let x=(0,b.useRef)(0),w=r4(),{userSelectionActive:k,elementsSelectable:N,dragging:S,connectionInProgress:j,panBy:C,autoPanSpeed:E}=r3(oU,rJ),M=N&&(e||k),_=(0,b.useRef)(null),A=(0,b.useRef)(),P=(0,b.useRef)(new Set),T=(0,b.useRef)(new Set),D=(0,b.useRef)(!1),I=(0,b.useRef)({x:0,y:0}),R=(0,b.useRef)(!1),z=e=>{if(D.current||j){D.current=!1;return}d?.(e),w.getState().resetSelectedElements(),w.setState({nodesSelectionActive:!1})};function $(e,t){let{userSelectionRect:r}=w.getState();if(!r)return;let{transform:o,nodeLookup:i,edgeLookup:a,connectionLookup:s,triggerNodeChanges:l,triggerEdgeChanges:d,defaultEdgeOptions:c}=w.getState(),u={x:r.startX,y:r.startY},{x:f,y:p}=nA(u,o),m={startX:u.x,startY:u.y,x:e<f?e:f,y:t<p?t:p,width:Math.abs(e-f),height:Math.abs(t-p)},g=P.current,x=T.current;P.current=new Set(nd(i,m,o,n===h.Partial,!0).map(e=>e.id)),T.current=new Set;let y=c?.selectable??!0;for(let e of P.current){let t=s.get(e);if(t)for(let{edgeId:e}of t.values()){let t=a.get(e);t&&(t.selectable??y)&&T.current.add(e)}}nO(g,P.current)||l(oE(i,P.current,!0)),nO(x,T.current)||d(oE(a,T.current)),w.setState({userSelectionRect:m,userSelectionActive:!0,nodesSelectionActive:!1})}let O=()=>{cancelAnimationFrame(x.current),x.current=0,R.current=!1};(0,b.useEffect)(()=>()=>O(),[]);let L=!0===r||Array.isArray(r)&&r.includes(0);return(0,y.jsxs)("div",{className:v(["react-flow__pane",{draggable:L,dragging:S,selection:e}]),onClick:M?void 0:oY(z,_),onContextMenu:oY(e=>{Array.isArray(r)&&r?.includes(2)?e.preventDefault():c?.(e)},_),onWheel:oY(u?e=>u(e):void 0,_),onPointerEnter:M?void 0:f,onPointerMove:M?e=>{let{userSelectionRect:n,transform:r,resetSelectedElements:a}=w.getState();if(!A.current||!n)return;let{x:l,y:d}=nK(e.nativeEvent,A.current);I.current={x:l,y:d};let c=nA({x:n.startX,y:n.startY},r);if(!D.current){if(Math.hypot(l-c.x,d-c.y)<=(t?0:i))return;a(),s?.(e)}D.current=!0,R.current||(!function e(){if(!o||!A.current)return;let[t,n]=nx(I.current,A.current,E);C({x:t,y:n}).then(t=>{if(!D.current||!t){x.current=requestAnimationFrame(e);return}let{x:n,y:r}=I.current;$(n,r),x.current=requestAnimationFrame(e)})}(),R.current=!0),$(l,d)}:p,onPointerUp:M?e=>{0===e.button&&(e.target?.releasePointerCapture?.(e.pointerId),!k&&e.target===_.current&&w.getState().userSelectionRect&&z?.(e),w.setState({userSelectionActive:!1,userSelectionRect:null}),D.current&&(l?.(e),w.setState({nodesSelectionActive:P.current.size>0})),O())}:void 0,onPointerCancel:M?e=>{e.target?.releasePointerCapture?.(e.pointerId),O()}:void 0,onPointerDownCapture:M?n=>{let{domNode:r,transform:o}=w.getState();if(A.current=r?.getBoundingClientRect(),!A.current)return;let i=n.target===_.current;if(!i&&n.target.closest(".nokey")||!e||!(a&&i||t)||0!==n.button||!n.isPrimary)return;n.target?.setPointerCapture?.(n.pointerId),D.current=!1;let{x:s,y:l}=nK(n.nativeEvent,A.current),d=n_({x:s,y:l},o);w.setState({userSelectionRect:{width:0,height:0,startX:d.x,startY:d.y,x:s,y:l}}),i||(n.stopPropagation(),n.preventDefault())}:void 0,onClickCapture:M?e=>{D.current&&(e.stopPropagation(),D.current=!1)}:void 0,onPointerLeave:m,ref:_,style:oB,children:[g,(0,y.jsx)(oX,{})]})}function oq({id:e,store:t,unselect:n=!1,nodeRef:r}){let{addSelectedNodes:o,unselectNodesAndEdges:i,multiSelectionActive:a,nodeLookup:s,onError:l}=t.getState(),d=s.get(e);d?(t.setState({nodesSelectionActive:!1}),d.selected?(n||d.selected&&a)&&(i({nodes:[d],edges:[]}),requestAnimationFrame(()=>r?.current?.blur())):o([e])):l?.("012",t6.error012(e))}function oZ({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:r,nodeId:o,isSelectable:i,nodeClickDistance:a}){let s=r4(),[l,d]=(0,b.useState)(!1),c=(0,b.useRef)();return(0,b.useEffect)(()=>{c.current=rN({getStoreItems:()=>s.getState(),onNodeMouseDown:t=>{oq({id:t,store:s,nodeRef:e})},onDragStart:()=>{d(!0)},onDragStop:()=>{d(!1)}})},[]),(0,b.useEffect)(()=>{if(!t&&e.current&&c.current)return c.current.update({noDragClassName:n,handleSelector:r,domNode:e.current,isSelectable:i,nodeId:o,nodeClickDistance:a}),()=>{c.current?.destroy()}},[n,r,t,i,e,o,a]),l}function oW(){let e=r4();return(0,b.useCallback)(t=>{let{nodeExtent:n,snapToGrid:r,snapGrid:o,nodesDraggable:i,onError:a,updateNodePositions:s,nodeLookup:l,nodeOrigin:d}=e.getState(),c=new Map,u=e=>e.selected&&(e.draggable||i&&void 0===e.draggable),h=r?o[0]:5,f=r?o[1]:5,p=t.direction.x*h*t.factor,m=t.direction.y*f*t.factor;for(let[,e]of l){if(!u(e))continue;let t={x:e.internals.positionAbsolute.x+p,y:e.internals.positionAbsolute.y+m};r&&(t=nM(t,o));let{position:i,positionAbsolute:s}=nu({nodeId:e.id,nextPosition:t,nodeLookup:l,nodeExtent:n,nodeOrigin:d,onError:a});e.position=i,e.internals.positionAbsolute=s,c.set(e.id,e)}s(c)},[])}let oG=(0,b.createContext)(null),oQ=oG.Provider;oG.Consumer;let oJ=()=>(0,b.useContext)(oG),o0=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),o1=(0,b.memo)(oP(function({type:e="source",position:t=m.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:o=!0,isConnectableEnd:i=!0,id:a,onConnect:s,children:l,className:d,onMouseDown:u,onTouchStart:h,...f},p){let g=a||null,x="target"===e,b=r4(),w=oJ(),{connectOnClick:k,noPanClassName:N,rfId:S}=r3(o0,rJ),{connectingFrom:j,connectingTo:C,clickConnecting:E,isPossibleEndHandle:M,connectionInProcess:_,clickConnectionInProcess:A,valid:P}=r3(t=>{let{connectionClickStartHandle:n,connectionMode:r,connection:o}=t,{fromHandle:i,toHandle:a,isValid:s}=o,l=a?.nodeId===w&&a?.id===g&&a?.type===e;return{connectingFrom:i?.nodeId===w&&i?.id===g&&i?.type===e,connectingTo:l,clickConnecting:n?.nodeId===w&&n?.id===g&&n?.type===e,isPossibleEndHandle:r===c.Strict?i?.type!==e:w!==i?.nodeId||g!==i?.id,connectionInProcess:!!i,clickConnectionInProcess:!!n,valid:l&&s}},rJ);w||b.getState().onError?.("010",t6.error010());let T=e=>{let{defaultEdgeOptions:t,onConnect:n,hasDefaultEdges:r}=b.getState(),o={...t,...e};if(r){let{edges:e,setEdges:t,onError:n}=b.getState();t(function(e,t,n={}){return n5(e,t,{...n,onError:n.onError??oA})}(o,e,{onError:n}))}n?.(o),s?.(o)},D=e=>{if(!w)return;let t=nU(e.nativeEvent);if(o&&(t&&0===e.button||!t)){let t=b.getState();rM.onPointerDown(e.nativeEvent,{handleDomNode:e.currentTarget,autoPanOnConnect:t.autoPanOnConnect,connectionMode:t.connectionMode,connectionRadius:t.connectionRadius,domNode:t.domNode,nodeLookup:t.nodeLookup,lib:t.lib,isTarget:x,handleId:g,nodeId:w,flowId:t.rfId,panBy:t.panBy,cancelConnection:t.cancelConnection,onConnectStart:t.onConnectStart,onConnectEnd:(...e)=>b.getState().onConnectEnd?.(...e),updateConnection:t.updateConnection,onConnect:T,isValidConnection:n||((...e)=>b.getState().isValidConnection?.(...e)??!0),getTransform:()=>b.getState().transform,getFromHandle:()=>b.getState().connection.fromHandle,autoPanSpeed:t.autoPanSpeed,dragThreshold:t.connectionDragThreshold})}t?u?.(e):h?.(e)};return(0,y.jsx)("div",{"data-handleid":g,"data-nodeid":w,"data-handlepos":t,"data-id":`${S}-${w}-${g}-${e}`,className:v(["react-flow__handle",`react-flow__handle-${t}`,"nodrag",N,d,{source:!x,target:x,connectable:r,connectablestart:o,connectableend:i,clickconnecting:E,connectingfrom:j,connectingto:C,valid:P,connectionindicator:r&&(!_||M)&&(_||A?i:o)}]),onMouseDown:D,onTouchStart:D,onClick:k?t=>{let{onClickConnectStart:r,onClickConnectEnd:i,connectionClickStartHandle:a,connectionMode:s,isValidConnection:l,lib:d,rfId:c,nodeLookup:u,connection:h}=b.getState();if(!w||!a&&!o)return;if(!a){r?.(t.nativeEvent,{nodeId:w,handleId:g,handleType:e}),b.setState({connectionClickStartHandle:{nodeId:w,type:e,id:g}});return}let f=nV(t.target),p=n||l,{connection:m,isValid:x}=rM.isValid(t.nativeEvent,{handle:{nodeId:w,id:g,type:e},connectionMode:s,fromNodeId:a.nodeId,fromHandleId:a.id||null,fromType:a.type,isValidConnection:p,flowId:c,doc:f,lib:d,nodeLookup:u});x&&m&&T(m);let y=structuredClone(h);delete y.inProgress,y.toPosition=y.toHandle?y.toHandle.position:null,i?.(t,y),b.setState({connectionClickStartHandle:null})}:void 0,ref:p,...f,children:l})})),o2={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},o5={input:function({data:e,isConnectable:t,sourcePosition:n=m.Bottom}){return(0,y.jsxs)(y.Fragment,{children:[e?.label,(0,y.jsx)(o1,{type:"source",position:n,isConnectable:t})]})},default:function({data:e,isConnectable:t,targetPosition:n=m.Top,sourcePosition:r=m.Bottom}){return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(o1,{type:"target",position:n,isConnectable:t}),e?.label,(0,y.jsx)(o1,{type:"source",position:r,isConnectable:t})]})},output:function({data:e,isConnectable:t,targetPosition:n=m.Top}){return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(o1,{type:"target",position:n,isConnectable:t}),e?.label]})},group:function(){return null}},o3=e=>{let{width:t,height:n,x:r,y:o}=nl(e.nodeLookup,{filter:e=>!!e.selected});return{width:nC(t)?t:null,height:nC(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${r}px,${o}px)`}};function o4({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){let r=r4(),{width:o,height:i,transformString:a,userSelectionActive:s}=r3(o3,rJ),l=oW(),d=(0,b.useRef)(null);(0,b.useEffect)(()=>{n||d.current?.focus({preventScroll:!0})},[n]);let c=!s&&null!==o&&null!==i;if(oZ({nodeRef:d,disabled:!c}),!c)return null;let u=e?t=>{e(t,r.getState().nodes.filter(e=>e.selected))}:void 0;return(0,y.jsx)("div",{className:v(["react-flow__nodesselection","react-flow__container",t]),style:{transform:a},children:(0,y.jsx)("div",{ref:d,className:"react-flow__nodesselection-rect",onContextMenu:u,tabIndex:n?void 0:-1,onKeyDown:n?void 0:e=>{Object.prototype.hasOwnProperty.call(o2,e.key)&&(e.preventDefault(),l({direction:o2[e.key],factor:e.shiftKey?4:1}))},style:{width:o,height:i}})})}let o6="u">typeof window?window:void 0,o8=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function o9({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:o,onPaneContextMenu:i,onPaneScroll:a,paneClickDistance:s,deleteKeyCode:l,selectionKeyCode:d,selectionOnDrag:c,selectionMode:u,onSelectionStart:h,onSelectionEnd:f,multiSelectionKeyCode:p,panActivationKeyCode:m,zoomActivationKeyCode:g,elementsSelectable:x,zoomOnScroll:v,zoomOnPinch:w,panOnScroll:k,panOnScrollSpeed:N,panOnScrollMode:S,zoomOnDoubleClick:j,panOnDrag:C,autoPanOnSelection:E,defaultViewport:M,translateExtent:_,minZoom:A,maxZoom:P,preventScrolling:T,onSelectionContextMenu:D,noWheelClassName:I,noPanClassName:R,disableKeyboardA11y:z,onViewportChange:$,isControlledViewport:O}){let{nodesSelectionActive:L,userSelectionActive:B}=r3(o8,rJ),H=ov(d,{target:o6}),F=ov(m,{target:o6}),V=F||C,X=F||k,Y=c&&!0!==V,U=H||B||Y;return!function({deleteKeyCode:e,multiSelectionKeyCode:t}){let n=r4(),{deleteElements:r}=o$(),o=ov(e,{actInsideInputWithModifier:!1}),i=ov(t,{target:oL});(0,b.useEffect)(()=>{if(o){let{edges:e,nodes:t}=n.getState();r({nodes:t.filter(oO),edges:e.filter(oO)}),n.setState({nodesSelectionActive:!1})}},[o]),(0,b.useEffect)(()=>{n.setState({multiSelectionActive:i})},[i])}({deleteKeyCode:l,multiSelectionKeyCode:p}),(0,y.jsx)(oF,{onPaneContextMenu:i,elementsSelectable:x,zoomOnScroll:v,zoomOnPinch:w,panOnScroll:X,panOnScrollSpeed:N,panOnScrollMode:S,zoomOnDoubleClick:j,panOnDrag:!H&&V,defaultViewport:M,translateExtent:_,minZoom:A,maxZoom:P,zoomActivationKeyCode:g,preventScrolling:T,noWheelClassName:I,noPanClassName:R,onViewportChange:$,isControlledViewport:O,paneClickDistance:s,selectionOnDrag:Y,children:(0,y.jsxs)(oK,{onSelectionStart:h,onSelectionEnd:f,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:o,onPaneContextMenu:i,onPaneScroll:a,panOnDrag:V,autoPanOnSelection:E,isSelecting:!!U,selectionMode:u,selectionKeyPressed:H,paneClickDistance:s,selectionOnDrag:Y,children:[e,L&&(0,y.jsx)(o4,{onSelectionContextMenu:D,noPanClassName:R,disableKeyboardA11y:z})]})})}o9.displayName="FlowRenderer";let o7=(0,b.memo)(o9),ie=e=>e.updateNodeInternals;var it=(0,b.memo)(function({id:e,onClick:t,onMouseEnter:n,onMouseMove:r,onMouseLeave:o,onContextMenu:i,onDoubleClick:a,nodesDraggable:s,elementsSelectable:l,nodesConnectable:d,nodesFocusable:c,resizeObserver:u,noDragClassName:h,noPanClassName:f,disableKeyboardA11y:p,rfId:m,nodeTypes:g,nodeClickDistance:x,onError:w}){let{node:k,internals:N,isParent:S}=r3(t=>{let n=t.nodeLookup.get(e),r=t.parentLookup.has(e);return{node:n,internals:n.internals,isParent:r}},rJ),j=k.type||"default",C=g?.[j]||o5[j];void 0===C&&(w?.("003",t6.error003(j)),j="default",C=g?.default||o5.default);let E=!!(k.draggable||s&&void 0===k.draggable),M=!!(k.selectable||l&&void 0===k.selectable),_=!!(k.connectable||d&&void 0===k.connectable),A=!!(k.focusable||c&&void 0===k.focusable),P=r4(),T=nz(k),D=function({node:e,nodeType:t,hasDimensions:n,resizeObserver:r}){let o=r4(),i=(0,b.useRef)(null),a=(0,b.useRef)(null),s=(0,b.useRef)(e.sourcePosition),l=(0,b.useRef)(e.targetPosition),d=(0,b.useRef)(t),c=n&&!!e.internals.handleBounds;return(0,b.useEffect)(()=>{!i.current||e.hidden||c&&a.current===i.current||(a.current&&r?.unobserve(a.current),r?.observe(i.current),a.current=i.current)},[c,e.hidden]),(0,b.useEffect)(()=>()=>{a.current&&(r?.unobserve(a.current),a.current=null)},[]),(0,b.useEffect)(()=>{if(i.current){let n=d.current!==t,r=s.current!==e.sourcePosition,a=l.current!==e.targetPosition;(n||r||a)&&(d.current=t,s.current=e.sourcePosition,l.current=e.targetPosition,o.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:i.current,force:!0}]])))}},[e.id,t,e.sourcePosition,e.targetPosition]),i}({node:k,nodeType:j,hasDimensions:T,resizeObserver:u}),I=oZ({nodeRef:D,disabled:k.hidden||!E,noDragClassName:h,handleSelector:k.dragHandle,nodeId:e,isSelectable:M,nodeClickDistance:x}),R=oW();if(k.hidden)return null;let z=nR(k),$=void 0===k.internals.handleBounds?{width:k.width??k.initialWidth??k.style?.width,height:k.height??k.initialHeight??k.style?.height}:{width:k.width??k.style?.width,height:k.height??k.style?.height},O=M||E||t||n||r||o,L=n?e=>n(e,{...N.userNode}):void 0,B=r?e=>r(e,{...N.userNode}):void 0,H=o?e=>o(e,{...N.userNode}):void 0,F=i?e=>i(e,{...N.userNode}):void 0,V=a?e=>a(e,{...N.userNode}):void 0;return(0,y.jsx)("div",{className:v(["react-flow__node",`react-flow__node-${j}`,{[f]:E},k.className,{selected:k.selected,selectable:M,parent:S,draggable:E,dragging:I}]),ref:D,style:{zIndex:N.z,transform:`translate(${N.positionAbsolute.x}px,${N.positionAbsolute.y}px)`,pointerEvents:O?"all":"none",visibility:T?"visible":"hidden",...k.style,...$},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:L,onMouseMove:B,onMouseLeave:H,onContextMenu:F,onClick:n=>{let{selectNodesOnDrag:r,nodeDragThreshold:o}=P.getState();M&&(!r||!E||o>0)&&oq({id:e,store:P,nodeRef:D}),t&&t(n,{...N.userNode})},onDoubleClick:V,onKeyDown:A?t=>{if(!nY(t.nativeEvent)&&!p){if(t9.includes(t.key)&&M)oq({id:e,store:P,unselect:"Escape"===t.key,nodeRef:D});else if(E&&k.selected&&Object.prototype.hasOwnProperty.call(o2,t.key)){t.preventDefault();let{ariaLabelConfig:e}=P.getState();P.setState({ariaLiveMessage:e["node.a11yDescription.ariaLiveMessage"]({direction:t.key.replace("Arrow","").toLowerCase(),x:~~N.positionAbsolute.x,y:~~N.positionAbsolute.y})}),R({direction:o2[t.key],factor:t.shiftKey?4:1})}}}:void 0,tabIndex:A?0:void 0,onFocus:A?()=>{if(p||!D.current?.matches(":focus-visible"))return;let{transform:t,width:n,height:r,autoPanOnNodeFocus:o,setCenter:i}=P.getState();!o||nd(new Map([[e,k]]),{x:0,y:0,width:n,height:r},t,!0).length>0||i(k.position.x+z.width/2,k.position.y+z.height/2,{zoom:t[2]})}:void 0,role:k.ariaRole??(A?"group":void 0),"aria-roledescription":"node","aria-describedby":p?void 0:`${r9}-${m}`,"aria-label":k.ariaLabel,...k.domAttributes,children:(0,y.jsx)(oQ,{value:e,children:(0,y.jsx)(C,{id:e,data:k.data,type:j,positionAbsoluteX:N.positionAbsolute.x,positionAbsoluteY:N.positionAbsolute.y,selected:k.selected??!1,selectable:M,draggable:E,deletable:k.deletable??!0,isConnectable:_,sourcePosition:k.sourcePosition,targetPosition:k.targetPosition,dragging:I,dragHandle:k.dragHandle,zIndex:N.z,parentId:k.parentId,...z})})})});let ir=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function io(e){var t;let{nodesDraggable:n,nodesConnectable:r,nodesFocusable:o,elementsSelectable:i,onError:a}=r3(ir,rJ),s=(t=e.onlyRenderVisibleElements,r3((0,b.useCallback)(e=>t?nd(e.nodeLookup,{x:0,y:0,width:e.width,height:e.height},e.transform,!0).map(e=>e.id):Array.from(e.nodeLookup.keys()),[t]),rJ)),l=function(){let e=r3(ie),[t]=(0,b.useState)(()=>"u"<typeof ResizeObserver?null:new ResizeObserver(t=>{let n=new Map;t.forEach(e=>{let t=e.target.getAttribute("data-id");n.set(t,{id:t,nodeElement:e.target,force:!0})}),e(n)}));return(0,b.useEffect)(()=>()=>{t?.disconnect()},[t]),t}();return(0,y.jsx)("div",{className:"react-flow__nodes",style:oB,children:s.map(t=>(0,y.jsx)(it,{id:t,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:l,nodesDraggable:n,nodesConnectable:r,nodesFocusable:o,elementsSelectable:i,nodeClickDistance:e.nodeClickDistance,onError:a},t))})}io.displayName="NodeRenderer";let ii=(0,b.memo)(io),ia={[p.Arrow]:({color:e="none",strokeWidth:t=1})=>{let n={strokeWidth:t,...e&&{stroke:e}};return(0,y.jsx)("polyline",{className:"arrow",style:n,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},[p.ArrowClosed]:({color:e="none",strokeWidth:t=1})=>{let n={strokeWidth:t,...e&&{stroke:e,fill:e}};return(0,y.jsx)("polyline",{className:"arrowclosed",style:n,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})}},is=({id:e,type:t,color:n,width:r=12.5,height:o=12.5,markerUnits:i="strokeWidth",strokeWidth:a,orient:s="auto-start-reverse"})=>{let l,d=(l=r4(),(0,b.useMemo)(()=>Object.prototype.hasOwnProperty.call(ia,t)?ia[t]:(l.getState().onError?.("009",t6.error009(t)),null),[t]));return d?(0,y.jsx)("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${r}`,markerHeight:`${o}`,viewBox:"-10 -10 20 20",markerUnits:i,orient:s,refX:"0",refY:"0",children:(0,y.jsx)(d,{color:n,strokeWidth:a})}):null},il=({defaultColor:e,rfId:t})=>{let n=r3(e=>e.edges),r=r3(e=>e.defaultEdgeOptions),o=(0,b.useMemo)(()=>ri(n,{id:t,defaultColor:e,defaultMarkerStart:r?.markerStart,defaultMarkerEnd:r?.markerEnd}),[n,r,t,e]);return o.length?(0,y.jsx)("svg",{className:"react-flow__marker","aria-hidden":"true",children:(0,y.jsx)("defs",{children:o.map(e=>(0,y.jsx)(is,{id:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient},e.id))})}):null};il.displayName="MarkerDefinitions";var id=(0,b.memo)(il);function ic({x:e,y:t,label:n,labelStyle:r,labelShowBg:o=!0,labelBgStyle:i,labelBgPadding:a=[2,4],labelBgBorderRadius:s=2,children:l,className:d,...c}){let[u,h]=(0,b.useState)({x:1,y:0,width:0,height:0}),f=v(["react-flow__edge-textwrapper",d]),p=(0,b.useRef)(null);return((0,b.useEffect)(()=>{if(p.current){let e=p.current.getBBox();h({x:e.x,y:e.y,width:e.width,height:e.height})}},[n]),n)?(0,y.jsxs)("g",{transform:`translate(${e-u.width/2} ${t-u.height/2})`,className:f,visibility:u.width?"visible":"hidden",...c,children:[o&&(0,y.jsx)("rect",{width:u.width+2*a[0],x:-a[0],y:-a[1],height:u.height+2*a[1],className:"react-flow__edge-textbg",style:i,rx:s,ry:s}),(0,y.jsx)("text",{className:"react-flow__edge-text",y:u.height/2,dy:"0.3em",ref:p,style:r,children:n}),l]}):null}ic.displayName="EdgeText";let iu=(0,b.memo)(ic);function ih({path:e,labelX:t,labelY:n,label:r,labelStyle:o,labelShowBg:i,labelBgStyle:a,labelBgPadding:s,labelBgBorderRadius:l,interactionWidth:d=20,...c}){return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)("path",{...c,d:e,fill:"none",className:v(["react-flow__edge-path",c.className])}),d?(0,y.jsx)("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:d,className:"react-flow__edge-interaction"}):null,r&&nC(t)&&nC(n)?(0,y.jsx)(iu,{x:t,y:n,label:r,labelStyle:o,labelShowBg:i,labelBgStyle:a,labelBgPadding:s,labelBgBorderRadius:l}):null]})}function ip({pos:e,x1:t,y1:n,x2:r,y2:o}){return e===m.Left||e===m.Right?[.5*(t+r),n]:[t,.5*(n+o)]}function im({sourceX:e,sourceY:t,sourcePosition:n=m.Bottom,targetX:r,targetY:o,targetPosition:i=m.Top}){let[a,s]=ip({pos:n,x1:e,y1:t,x2:r,y2:o}),[l,d]=ip({pos:i,x1:r,y1:o,x2:e,y2:t}),[c,u,h,f]=nZ({sourceX:e,sourceY:t,targetX:r,targetY:o,sourceControlX:a,sourceControlY:s,targetControlX:l,targetControlY:d});return[`M${e},${t} C${a},${s} ${l},${d} ${r},${o}`,c,u,h,f]}function ig(e){return(0,b.memo)(({id:t,sourceX:n,sourceY:r,targetX:o,targetY:i,sourcePosition:a,targetPosition:s,label:l,labelStyle:d,labelShowBg:c,labelBgStyle:u,labelBgPadding:h,labelBgBorderRadius:f,style:p,markerEnd:m,markerStart:g,interactionWidth:x})=>{let[b,v,w]=im({sourceX:n,sourceY:r,sourcePosition:a,targetX:o,targetY:i,targetPosition:s}),k=e.isInternal?void 0:t;return(0,y.jsx)(ih,{id:k,path:b,labelX:v,labelY:w,label:l,labelStyle:d,labelShowBg:c,labelBgStyle:u,labelBgPadding:h,labelBgBorderRadius:f,style:p,markerEnd:m,markerStart:g,interactionWidth:x})})}let ix=ig({isInternal:!1}),iy=ig({isInternal:!0});function ib(e){return(0,b.memo)(({id:t,sourceX:n,sourceY:r,targetX:o,targetY:i,label:a,labelStyle:s,labelShowBg:l,labelBgStyle:d,labelBgPadding:c,labelBgBorderRadius:u,style:h,sourcePosition:f=m.Bottom,targetPosition:p=m.Top,markerEnd:g,markerStart:x,pathOptions:b,interactionWidth:v})=>{let[w,k,N]=n9({sourceX:n,sourceY:r,sourcePosition:f,targetX:o,targetY:i,targetPosition:p,borderRadius:b?.borderRadius,offset:b?.offset,stepPosition:b?.stepPosition}),S=e.isInternal?void 0:t;return(0,y.jsx)(ih,{id:S,path:w,labelX:k,labelY:N,label:a,labelStyle:s,labelShowBg:l,labelBgStyle:d,labelBgPadding:c,labelBgBorderRadius:u,style:h,markerEnd:g,markerStart:x,interactionWidth:v})})}ix.displayName="SimpleBezierEdge",iy.displayName="SimpleBezierEdgeInternal";let iv=ib({isInternal:!1}),iw=ib({isInternal:!0});function ik(e){return(0,b.memo)(({id:t,...n})=>{let r=e.isInternal?void 0:t;return(0,y.jsx)(iv,{...n,id:r,pathOptions:(0,b.useMemo)(()=>({borderRadius:0,offset:n.pathOptions?.offset}),[n.pathOptions?.offset])})})}iv.displayName="SmoothStepEdge",iw.displayName="SmoothStepEdgeInternal";let iN=ik({isInternal:!1}),iS=ik({isInternal:!0});function ij(e){return(0,b.memo)(({id:t,sourceX:n,sourceY:r,targetX:o,targetY:i,label:a,labelStyle:s,labelShowBg:l,labelBgStyle:d,labelBgPadding:c,labelBgBorderRadius:u,style:h,markerEnd:f,markerStart:p,interactionWidth:m})=>{let[g,x,b]=n3({sourceX:n,sourceY:r,targetX:o,targetY:i}),v=e.isInternal?void 0:t;return(0,y.jsx)(ih,{id:v,path:g,labelX:x,labelY:b,label:a,labelStyle:s,labelShowBg:l,labelBgStyle:d,labelBgPadding:c,labelBgBorderRadius:u,style:h,markerEnd:f,markerStart:p,interactionWidth:m})})}iN.displayName="StepEdge",iS.displayName="StepEdgeInternal";let iC=ij({isInternal:!1}),iE=ij({isInternal:!0});function iM(e){return(0,b.memo)(({id:t,sourceX:n,sourceY:r,targetX:o,targetY:i,sourcePosition:a=m.Bottom,targetPosition:s=m.Top,label:l,labelStyle:d,labelShowBg:c,labelBgStyle:u,labelBgPadding:h,labelBgBorderRadius:f,style:p,markerEnd:g,markerStart:x,pathOptions:b,interactionWidth:v})=>{let[w,k,N]=nQ({sourceX:n,sourceY:r,sourcePosition:a,targetX:o,targetY:i,targetPosition:s,curvature:b?.curvature}),S=e.isInternal?void 0:t;return(0,y.jsx)(ih,{id:S,path:w,labelX:k,labelY:N,label:l,labelStyle:d,labelShowBg:c,labelBgStyle:u,labelBgPadding:h,labelBgBorderRadius:f,style:p,markerEnd:g,markerStart:x,interactionWidth:v})})}iC.displayName="StraightEdge",iE.displayName="StraightEdgeInternal";let i_=iM({isInternal:!1}),iA=iM({isInternal:!0});i_.displayName="BezierEdge",iA.displayName="BezierEdgeInternal";let iP={default:iA,straight:iE,step:iS,smoothstep:iw,simplebezier:iy},iT={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},iD="react-flow__edgeupdater";function iI({position:e,centerX:t,centerY:n,radius:r=10,onMouseDown:o,onMouseEnter:i,onMouseOut:a,type:s}){return(0,y.jsx)("circle",{onMouseDown:o,onMouseEnter:i,onMouseOut:a,className:v([iD,`${iD}-${s}`]),cx:e===m.Left?t-r:e===m.Right?t+r:t,cy:e===m.Top?n-r:e===m.Bottom?n+r:n,r:r,stroke:"transparent",fill:"transparent"})}function iR({isReconnectable:e,reconnectRadius:t,edge:n,sourceX:r,sourceY:o,targetX:i,targetY:a,sourcePosition:s,targetPosition:l,onReconnect:d,onReconnectStart:c,onReconnectEnd:u,setReconnecting:h,setUpdateHover:f}){let p=r4(),m=(e,t)=>{if(0!==e.button)return;let{autoPanOnConnect:r,domNode:o,connectionMode:i,connectionRadius:a,lib:s,onConnectStart:l,cancelConnection:f,nodeLookup:m,rfId:g,panBy:x,updateConnection:y}=p.getState(),b="target"===t.type;rM.onPointerDown(e.nativeEvent,{autoPanOnConnect:r,connectionMode:i,connectionRadius:a,domNode:o,handleId:t.id,nodeId:t.nodeId,nodeLookup:m,isTarget:b,edgeUpdaterType:t.type,lib:s,flowId:g,cancelConnection:f,panBy:x,isValidConnection:(...e)=>p.getState().isValidConnection?.(...e)??!0,onConnect:e=>d?.(n,e),onConnectStart:(r,o)=>{h(!0),c?.(e,n,t.type),l?.(r,o)},onConnectEnd:(...e)=>p.getState().onConnectEnd?.(...e),onReconnectEnd:(e,r)=>{h(!1),u?.(e,n,t.type,r)},updateConnection:y,getTransform:()=>p.getState().transform,getFromHandle:()=>p.getState().connection.fromHandle,dragThreshold:p.getState().connectionDragThreshold,handleDomNode:e.currentTarget})},g=()=>f(!0),x=()=>f(!1);return(0,y.jsxs)(y.Fragment,{children:[(!0===e||"source"===e)&&(0,y.jsx)(iI,{position:s,centerX:r,centerY:o,radius:t,onMouseDown:e=>m(e,{nodeId:n.target,id:n.targetHandle??null,type:"target"}),onMouseEnter:g,onMouseOut:x,type:"source"}),(!0===e||"target"===e)&&(0,y.jsx)(iI,{position:l,centerX:i,centerY:a,radius:t,onMouseDown:e=>m(e,{nodeId:n.source,id:n.sourceHandle??null,type:"source"}),onMouseEnter:g,onMouseOut:x,type:"target"})]})}var iz=(0,b.memo)(function({id:e,edgesFocusable:t,edgesReconnectable:n,elementsSelectable:r,onClick:o,onDoubleClick:i,onContextMenu:a,onMouseEnter:s,onMouseMove:l,onMouseLeave:d,reconnectRadius:c,onReconnect:u,onReconnectStart:h,onReconnectEnd:f,rfId:p,edgeTypes:m,noPanClassName:g,onError:x,disableKeyboardA11y:w}){let k=r3(t=>t.edgeLookup.get(e)),N=r3(e=>e.defaultEdgeOptions),S=(k=N?{...N,...k}:k).type||"default",j=m?.[S]||iP[S];void 0===j&&(x?.("011",t6.error011(S)),S="default",j=m?.default||iP.default);let C=!!(k.focusable||t&&void 0===k.focusable),E=void 0!==u&&(k.reconnectable||n&&void 0===k.reconnectable),M=!!(k.selectable||r&&void 0===k.selectable),_=(0,b.useRef)(null),[A,P]=(0,b.useState)(!1),[T,D]=(0,b.useState)(!1),I=r4(),{zIndex:R,sourceX:z,sourceY:$,targetX:O,targetY:L,sourcePosition:B,targetPosition:H}=r3((0,b.useCallback)(t=>{let n=t.nodeLookup.get(k.source),r=t.nodeLookup.get(k.target);if(!n||!r)return{zIndex:k.zIndex,...iT};let o=re({id:e,sourceNode:n,targetNode:r,sourceHandle:k.sourceHandle||null,targetHandle:k.targetHandle||null,connectionMode:t.connectionMode,onError:x});return{zIndex:n0({selected:k.selected,zIndex:k.zIndex,sourceNode:n,targetNode:r,elevateOnSelect:t.elevateEdgesOnSelect,zIndexMode:t.zIndexMode}),...o||iT}},[k.source,k.target,k.sourceHandle,k.targetHandle,k.selected,k.zIndex]),rJ),F=(0,b.useMemo)(()=>k.markerStart?`url('#${ro(k.markerStart,p)}')`:void 0,[k.markerStart,p]),V=(0,b.useMemo)(()=>k.markerEnd?`url('#${ro(k.markerEnd,p)}')`:void 0,[k.markerEnd,p]);if(k.hidden||null===z||null===$||null===O||null===L)return null;let X=i?e=>{i(e,{...k})}:void 0,Y=a?e=>{a(e,{...k})}:void 0,U=s?e=>{s(e,{...k})}:void 0,K=l?e=>{l(e,{...k})}:void 0,q=d?e=>{d(e,{...k})}:void 0;return(0,y.jsx)("svg",{style:{zIndex:R},children:(0,y.jsxs)("g",{className:v(["react-flow__edge",`react-flow__edge-${S}`,k.className,g,{selected:k.selected,animated:k.animated,inactive:!M&&!o,updating:A,selectable:M}]),onClick:t=>{let{addSelectedEdges:n,unselectNodesAndEdges:r,multiSelectionActive:i}=I.getState();M&&(I.setState({nodesSelectionActive:!1}),k.selected&&i?(r({nodes:[],edges:[k]}),_.current?.blur()):n([e])),o&&o(t,k)},onDoubleClick:X,onContextMenu:Y,onMouseEnter:U,onMouseMove:K,onMouseLeave:q,onKeyDown:C?t=>{if(!w&&t9.includes(t.key)&&M){let{unselectNodesAndEdges:n,addSelectedEdges:r}=I.getState();"Escape"===t.key?(_.current?.blur(),n({edges:[k]})):r([e])}}:void 0,tabIndex:C?0:void 0,role:k.ariaRole??(C?"group":"img"),"aria-roledescription":"edge","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":null===k.ariaLabel?void 0:k.ariaLabel||`Edge from ${k.source} to ${k.target}`,"aria-describedby":C?`${r7}-${p}`:void 0,ref:_,...k.domAttributes,children:[!T&&(0,y.jsx)(j,{id:e,source:k.source,target:k.target,type:k.type,selected:k.selected,animated:k.animated,selectable:M,deletable:k.deletable??!0,label:k.label,labelStyle:k.labelStyle,labelShowBg:k.labelShowBg,labelBgStyle:k.labelBgStyle,labelBgPadding:k.labelBgPadding,labelBgBorderRadius:k.labelBgBorderRadius,sourceX:z,sourceY:$,targetX:O,targetY:L,sourcePosition:B,targetPosition:H,data:k.data,style:k.style,sourceHandleId:k.sourceHandle,targetHandleId:k.targetHandle,markerStart:F,markerEnd:V,pathOptions:"pathOptions"in k?k.pathOptions:void 0,interactionWidth:k.interactionWidth}),E&&(0,y.jsx)(iR,{edge:k,isReconnectable:E,reconnectRadius:c,onReconnect:u,onReconnectStart:h,onReconnectEnd:f,sourceX:z,sourceY:$,targetX:O,targetY:L,sourcePosition:B,targetPosition:H,setUpdateHover:P,setReconnecting:D})]})})});let i$=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function iO({defaultMarkerColor:e,onlyRenderVisibleElements:t,rfId:n,edgeTypes:r,noPanClassName:o,onReconnect:i,onEdgeContextMenu:a,onEdgeMouseEnter:s,onEdgeMouseMove:l,onEdgeMouseLeave:d,onEdgeClick:c,reconnectRadius:u,onEdgeDoubleClick:h,onReconnectStart:f,onReconnectEnd:p,disableKeyboardA11y:m}){let{edgesFocusable:g,edgesReconnectable:x,elementsSelectable:v,onError:w}=r3(i$,rJ),k=r3((0,b.useCallback)(e=>{if(!t)return e.edges.map(e=>e.id);let n=[];if(e.width&&e.height)for(let t of e.edges){let r=e.nodeLookup.get(t.source),o=e.nodeLookup.get(t.target);r&&o&&n1({sourceNode:r,targetNode:o,width:e.width,height:e.height,transform:e.transform})&&n.push(t.id)}return n},[t]),rJ);return(0,y.jsxs)("div",{className:"react-flow__edges",children:[(0,y.jsx)(id,{defaultColor:e,rfId:n}),k.map(e=>(0,y.jsx)(iz,{id:e,edgesFocusable:g,edgesReconnectable:x,elementsSelectable:v,noPanClassName:o,onReconnect:i,onContextMenu:a,onMouseEnter:s,onMouseMove:l,onMouseLeave:d,onClick:c,reconnectRadius:u,onDoubleClick:h,onReconnectStart:f,onReconnectEnd:p,rfId:n,onError:w,edgeTypes:r,disableKeyboardA11y:m},e))]})}iO.displayName="EdgeRenderer";let iL=(0,b.memo)(iO),iB=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function iH({children:e}){let t=r3(iB);return(0,y.jsx)("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:t},children:e})}let iF=e=>e.panZoom?.syncViewport;function iV(e){return e.connection.inProgress?{...e.connection,to:n_(e.connection.to,e.transform)}:{...e.connection}}let iX=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function iY({containerStyle:e,style:t,type:n,component:r}){let{nodesConnectable:o,width:i,height:a,isValid:s,inProgress:l}=r3(iX,rJ);return i&&o&&l?(0,y.jsx)("svg",{style:e,width:i,height:a,className:"react-flow__connectionline react-flow__container",children:(0,y.jsx)("g",{className:v(["react-flow__connection",nn(s)]),children:(0,y.jsx)(iU,{style:t,type:n,CustomComponent:r,isValid:s})})}):null}let iU=({style:e,type:t=f.Bezier,CustomComponent:n,isValid:r})=>{let{inProgress:o,from:i,fromNode:a,fromHandle:s,fromPosition:l,to:d,toNode:c,toHandle:u,toPosition:h,pointer:p}=r3(iV,rJ);if(!o)return;if(n)return(0,y.jsx)(n,{connectionLineType:t,connectionLineStyle:e,fromNode:a,fromHandle:s,fromX:i.x,fromY:i.y,toX:d.x,toY:d.y,fromPosition:l,toPosition:h,connectionStatus:nn(r),toNode:c,toHandle:u,pointer:p});let m="",g={sourceX:i.x,sourceY:i.y,sourcePosition:l,targetX:d.x,targetY:d.y,targetPosition:h};switch(t){case f.Bezier:[m]=nQ(g);break;case f.SimpleBezier:[m]=im(g);break;case f.Step:[m]=n9({...g,borderRadius:0});break;case f.SmoothStep:[m]=n9(g);break;default:[m]=n3(g)}return(0,y.jsx)("path",{d:m,fill:"none",className:"react-flow__connection-path",style:e})};iU.displayName="ConnectionLine";let iK={};function iq(e=iK){(0,b.useRef)(e),r4(),(0,b.useEffect)(()=>{},[e])}function iZ({nodeTypes:e,edgeTypes:t,onInit:n,onNodeClick:r,onEdgeClick:o,onNodeDoubleClick:i,onEdgeDoubleClick:a,onNodeMouseEnter:s,onNodeMouseMove:l,onNodeMouseLeave:d,onNodeContextMenu:c,onSelectionContextMenu:u,onSelectionStart:h,onSelectionEnd:f,connectionLineType:p,connectionLineStyle:m,connectionLineComponent:g,connectionLineContainerStyle:x,selectionKeyCode:v,selectionOnDrag:w,selectionMode:k,multiSelectionKeyCode:N,panActivationKeyCode:S,zoomActivationKeyCode:j,deleteKeyCode:C,onlyRenderVisibleElements:E,elementsSelectable:M,defaultViewport:_,translateExtent:A,minZoom:P,maxZoom:T,preventScrolling:D,defaultMarkerColor:I,zoomOnScroll:R,zoomOnPinch:z,panOnScroll:$,panOnScrollSpeed:O,panOnScrollMode:L,zoomOnDoubleClick:B,panOnDrag:H,autoPanOnSelection:F,onPaneClick:V,onPaneMouseEnter:X,onPaneMouseMove:Y,onPaneMouseLeave:U,onPaneScroll:K,onPaneContextMenu:q,paneClickDistance:Z,nodeClickDistance:W,onEdgeContextMenu:G,onEdgeMouseEnter:Q,onEdgeMouseMove:J,onEdgeMouseLeave:ee,reconnectRadius:et,onReconnect:en,onReconnectStart:er,onReconnectEnd:eo,noDragClassName:ei,noWheelClassName:ea,noPanClassName:es,disableKeyboardA11y:el,nodeExtent:ed,rfId:ec,viewport:eu,onViewportChange:eh}){let ef,ep,em,eg;return iq(e),iq(t),r4(),(0,b.useRef)(!1),(0,b.useEffect)(()=>{},[]),ef=o$(),ep=(0,b.useRef)(!1),(0,b.useEffect)(()=>{!ep.current&&ef.viewportInitialized&&n&&(setTimeout(()=>n(ef),1),ep.current=!0)},[n,ef.viewportInitialized]),em=r3(iF),eg=r4(),(0,b.useEffect)(()=>{eu&&(em?.(eu),eg.setState({transform:[eu.x,eu.y,eu.zoom]}))},[eu,em]),(0,y.jsx)(o7,{onPaneClick:V,onPaneMouseEnter:X,onPaneMouseMove:Y,onPaneMouseLeave:U,onPaneContextMenu:q,onPaneScroll:K,paneClickDistance:Z,deleteKeyCode:C,selectionKeyCode:v,selectionOnDrag:w,selectionMode:k,onSelectionStart:h,onSelectionEnd:f,multiSelectionKeyCode:N,panActivationKeyCode:S,zoomActivationKeyCode:j,elementsSelectable:M,zoomOnScroll:R,zoomOnPinch:z,zoomOnDoubleClick:B,panOnScroll:$,panOnScrollSpeed:O,panOnScrollMode:L,panOnDrag:H,autoPanOnSelection:F,defaultViewport:_,translateExtent:A,minZoom:P,maxZoom:T,onSelectionContextMenu:u,preventScrolling:D,noDragClassName:ei,noWheelClassName:ea,noPanClassName:es,disableKeyboardA11y:el,onViewportChange:eh,isControlledViewport:!!eu,children:(0,y.jsxs)(iH,{children:[(0,y.jsx)(iL,{edgeTypes:t,onEdgeClick:o,onEdgeDoubleClick:a,onReconnect:en,onReconnectStart:er,onReconnectEnd:eo,onlyRenderVisibleElements:E,onEdgeContextMenu:G,onEdgeMouseEnter:Q,onEdgeMouseMove:J,onEdgeMouseLeave:ee,reconnectRadius:et,defaultMarkerColor:I,noPanClassName:es,disableKeyboardA11y:el,rfId:ec}),(0,y.jsx)(iY,{style:m,type:p,component:g,containerStyle:x}),(0,y.jsx)("div",{className:"react-flow__edgelabel-renderer"}),(0,y.jsx)(ii,{nodeTypes:e,onNodeClick:r,onNodeDoubleClick:i,onNodeMouseEnter:s,onNodeMouseMove:l,onNodeMouseLeave:d,onNodeContextMenu:c,nodeClickDistance:W,onlyRenderVisibleElements:E,noPanClassName:es,noDragClassName:ei,disableKeyboardA11y:el,nodeExtent:ed,rfId:ec}),(0,y.jsx)("div",{className:"react-flow__viewport-portal"})]})})}iZ.displayName="GraphView";let iW=(0,b.memo)(iZ),iG=nE("React Flow","https://reactflow.dev/"),iQ=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:o,height:i,fitView:a,fitViewOptions:s,minZoom:l=.5,maxZoom:d=2,nodeOrigin:u,nodeExtent:h,zIndexMode:f="basic"}={})=>{let p=new Map,m=new Map,g=new Map,x=new Map,y=r??t??[],b=n??e??[],v=u??[0,0],w=h??t8;rv(g,x,y);let{nodesInitialized:k}=rf(b,p,m,{nodeOrigin:v,nodeExtent:w,zIndexMode:f}),N=[0,0,1];if(a&&o&&i){let{x:e,y:t,zoom:n}=nT(nl(p,{filter:e=>!!((e.width||e.initialWidth)&&(e.height||e.initialHeight))}),o,i,l,d,s?.padding??.1);N=[e,t,n]}return{rfId:"1",width:o??0,height:i??0,transform:N,nodes:b,nodesInitialized:k,nodeLookup:p,parentLookup:m,edges:y,edgeLookup:x,connectionLookup:g,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:void 0!==n,hasDefaultEdges:void 0!==r,panZoom:null,minZoom:l,maxZoom:d,translateExtent:t8,nodeExtent:w,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:c.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:v,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:a??!1,fitViewOptions:s,fitViewResolver:null,connection:{...ne},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:iG,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:t7,zIndexMode:f,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}};function iJ({initialNodes:e,initialEdges:t,defaultNodes:n,defaultEdges:r,initialWidth:o,initialHeight:i,initialMinZoom:a,initialMaxZoom:s,initialFitViewOptions:l,fitView:d,nodeOrigin:c,nodeExtent:u,zIndexMode:h,children:f}){let[p]=(0,b.useState)(()=>(({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:o,height:i,fitView:a,fitViewOptions:s,minZoom:l,maxZoom:d,nodeOrigin:c,nodeExtent:u,zIndexMode:h})=>{let f,p;return f=(f,p)=>{async function g(){let{nodeLookup:e,panZoom:t,fitViewOptions:n,fitViewResolver:r,width:o,height:i,minZoom:a,maxZoom:s}=p();t&&(await nc({nodes:e,width:o,height:i,panZoom:t,minZoom:a,maxZoom:s},n),r?.resolve(!0),f({fitViewResolver:null}))}return{...iQ({nodes:e,edges:t,width:o,height:i,fitView:a,fitViewOptions:s,minZoom:l,maxZoom:d,nodeOrigin:c,nodeExtent:u,defaultNodes:n,defaultEdges:r,zIndexMode:h}),setNodes:e=>{let{nodeLookup:t,parentLookup:n,nodeOrigin:r,elevateNodesOnSelect:o,fitViewQueued:i,zIndexMode:a,nodesSelectionActive:s}=p(),{nodesInitialized:l,hasSelectedNodes:d}=rf(e,t,n,{nodeOrigin:r,nodeExtent:u,elevateNodesOnSelect:o,checkEquality:!0,zIndexMode:a}),c=s&&d;i&&l?(g(),f({nodes:e,nodesInitialized:l,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:c})):f({nodes:e,nodesInitialized:l,nodesSelectionActive:c})},setEdges:e=>{let{connectionLookup:t,edgeLookup:n}=p();rv(t,n,e),f({edges:e})},setDefaultNodesAndEdges:(e,t)=>{if(e){let{setNodes:t}=p();t(e),f({hasDefaultNodes:!0})}if(t){let{setEdges:e}=p();e(t),f({hasDefaultEdges:!0})}},updateNodeInternals:e=>{let{triggerNodeChanges:t,nodeLookup:n,parentLookup:r,domNode:o,nodeOrigin:i,nodeExtent:a,debug:s,fitViewQueued:l,zIndexMode:d}=p(),{changes:c,updatedInternals:u}=rx(e,n,r,o,i,a,d);u&&(ru(n,r,{nodeOrigin:i,nodeExtent:a,zIndexMode:d}),l?(g(),f({fitViewQueued:!1,fitViewOptions:void 0})):f({}),c?.length>0&&(s&&console.log("React Flow: trigger node changes",c),t?.(c)))},updateNodePositions:(e,t=!1)=>{let n=[],r=[],{nodeLookup:o,triggerNodeChanges:i,connection:a,updateConnection:s,onNodesChangeMiddlewareMap:l}=p();for(let[i,l]of e){let e=o.get(i),d=!!(e?.expandParent&&e?.parentId&&l?.position),c={id:i,type:"position",position:d?{x:Math.max(0,l.position.x),y:Math.max(0,l.position.y)}:l.position,dragging:t};if(e&&a.inProgress&&a.fromNode.id===e.id){let t=rn(e,a.fromHandle,m.Left,!0);s({...a,from:t})}d&&e.parentId&&n.push({id:i,parentId:e.parentId,rect:{...l.internals.positionAbsolute,width:l.measured.width??0,height:l.measured.height??0}}),r.push(c)}if(n.length>0){let{parentLookup:e,nodeOrigin:t}=p(),i=rg(n,o,e,t);r.push(...i)}for(let e of l.values())r=e(r);i(r)},triggerNodeChanges:e=>{let{onNodesChange:t,setNodes:n,nodes:r,hasDefaultNodes:o,debug:i}=p();e?.length&&(o&&n(oS(e,r)),i&&console.log("React Flow: trigger node changes",e),t?.(e))},triggerEdgeChanges:e=>{let{onEdgesChange:t,setEdges:n,edges:r,hasDefaultEdges:o,debug:i}=p();e?.length&&(o&&n(oj(e,r)),i&&console.log("React Flow: trigger edge changes",e),t?.(e))},addSelectedNodes:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:r,triggerNodeChanges:o,triggerEdgeChanges:i}=p();t?o(e.map(e=>oC(e,!0))):(o(oE(r,new Set([...e]),!0)),i(oE(n)))},addSelectedEdges:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:r,triggerNodeChanges:o,triggerEdgeChanges:i}=p();t?i(e.map(e=>oC(e,!0))):(i(oE(n,new Set([...e]))),o(oE(r,new Set,!0)))},unselectNodesAndEdges:({nodes:e,edges:t}={})=>{let{edges:n,nodes:r,nodeLookup:o,triggerNodeChanges:i,triggerEdgeChanges:a}=p(),s=[];for(let t of e||r){if(!t.selected)continue;let e=o.get(t.id);e&&(e.selected=!1),s.push(oC(t.id,!1))}let l=[];for(let e of t||n)e.selected&&l.push(oC(e.id,!1));i(s),a(l)},setMinZoom:e=>{let{panZoom:t,maxZoom:n}=p();t?.setScaleExtent([e,n]),f({minZoom:e})},setMaxZoom:e=>{let{panZoom:t,minZoom:n}=p();t?.setScaleExtent([n,e]),f({maxZoom:e})},setTranslateExtent:e=>{p().panZoom?.setTranslateExtent(e),f({translateExtent:e})},resetSelectedElements:()=>{let{edges:e,nodes:t,triggerNodeChanges:n,triggerEdgeChanges:r,elementsSelectable:o}=p();if(!o)return;let i=t.reduce((e,t)=>t.selected?[...e,oC(t.id,!1)]:e,[]),a=e.reduce((e,t)=>t.selected?[...e,oC(t.id,!1)]:e,[]);n(i),r(a)},setNodeExtent:e=>{let{nodes:t,nodeLookup:n,parentLookup:r,nodeOrigin:o,elevateNodesOnSelect:i,nodeExtent:a,zIndexMode:s}=p();(e[0][0]!==a[0][0]||e[0][1]!==a[0][1]||e[1][0]!==a[1][0]||e[1][1]!==a[1][1])&&(rf(t,n,r,{nodeOrigin:o,nodeExtent:e,elevateNodesOnSelect:i,checkEquality:!1,zIndexMode:s}),f({nodeExtent:e}))},panBy:e=>{let{transform:t,width:n,height:r,panZoom:o,translateExtent:i}=p();return ry({delta:e,panZoom:o,transform:t,translateExtent:i,width:n,height:r})},setCenter:async(e,t,n)=>{let{width:r,height:o,maxZoom:i,panZoom:a}=p();if(!a)return!1;let s=void 0!==n?.zoom?n.zoom:i;return await a.setViewport({x:r/2-e*s,y:o/2-t*s,zoom:s},{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),!0},cancelConnection:()=>{f({connection:{...ne}})},updateConnection:e=>{f({connection:e})},reset:()=>f({...iQ()})}},p=Object.is,f?rQ(f,p):rQ})({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:o,height:i,fitView:d,minZoom:a,maxZoom:s,fitViewOptions:l,nodeOrigin:c,nodeExtent:u,zIndexMode:h}));return(0,y.jsx)(r2,{value:p,children:(0,y.jsx)(oR,{children:f})})}function i0({children:e,nodes:t,edges:n,defaultNodes:r,defaultEdges:o,width:i,height:a,fitView:s,fitViewOptions:l,minZoom:d,maxZoom:c,nodeOrigin:u,nodeExtent:h,zIndexMode:f}){return(0,b.useContext)(r1)?(0,y.jsx)(y.Fragment,{children:e}):(0,y.jsx)(iJ,{initialNodes:t,initialEdges:n,defaultNodes:r,defaultEdges:o,initialWidth:i,initialHeight:a,fitView:s,initialFitViewOptions:l,initialMinZoom:d,initialMaxZoom:c,nodeOrigin:u,nodeExtent:h,zIndexMode:f,children:e})}let i1={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};var i2=oP(function({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,className:o,nodeTypes:i,edgeTypes:a,onNodeClick:s,onEdgeClick:l,onInit:d,onMove:c,onMoveStart:p,onMoveEnd:m,onConnect:g,onConnectStart:x,onConnectEnd:w,onClickConnectStart:k,onClickConnectEnd:N,onNodeMouseEnter:S,onNodeMouseMove:j,onNodeMouseLeave:C,onNodeContextMenu:E,onNodeDoubleClick:M,onNodeDragStart:_,onNodeDrag:A,onNodeDragStop:P,onNodesDelete:T,onEdgesDelete:D,onDelete:I,onSelectionChange:R,onSelectionDragStart:z,onSelectionDrag:$,onSelectionDragStop:O,onSelectionContextMenu:L,onSelectionStart:B,onSelectionEnd:H,onBeforeDelete:F,connectionMode:V,connectionLineType:X=f.Bezier,connectionLineStyle:Y,connectionLineComponent:U,connectionLineContainerStyle:K,deleteKeyCode:q="Backspace",selectionKeyCode:Z="Shift",selectionOnDrag:W=!1,selectionMode:G=h.Full,panActivationKeyCode:Q="Space",multiSelectionKeyCode:J=nD()?"Meta":"Control",zoomActivationKeyCode:ee=nD()?"Meta":"Control",snapToGrid:et,snapGrid:en,onlyRenderVisibleElements:er=!1,selectNodesOnDrag:eo,nodesDraggable:ei,autoPanOnNodeFocus:ea,nodesConnectable:es,nodesFocusable:el,nodeOrigin:ed=oh,edgesFocusable:ec,edgesReconnectable:eu,elementsSelectable:eh=!0,defaultViewport:ef=of,minZoom:ep=.5,maxZoom:em=2,translateExtent:eg=t8,preventScrolling:ex=!0,nodeExtent:ey,defaultMarkerColor:eb="#b1b1b7",zoomOnScroll:ev=!0,zoomOnPinch:ew=!0,panOnScroll:ek=!1,panOnScrollSpeed:eN=.5,panOnScrollMode:eS=u.Free,zoomOnDoubleClick:ej=!0,panOnDrag:eC=!0,onPaneClick:eE,onPaneMouseEnter:eM,onPaneMouseMove:e_,onPaneMouseLeave:eA,onPaneScroll:eP,onPaneContextMenu:eT,paneClickDistance:eD=1,nodeClickDistance:eI=0,children:eR,onReconnect:ez,onReconnectStart:e$,onReconnectEnd:eO,onEdgeContextMenu:eL,onEdgeDoubleClick:eB,onEdgeMouseEnter:eH,onEdgeMouseMove:eF,onEdgeMouseLeave:eV,reconnectRadius:eX=10,onNodesChange:eY,onEdgesChange:eU,noDragClassName:eK="nodrag",noWheelClassName:eq="nowheel",noPanClassName:eZ="nopan",fitView:eW,fitViewOptions:eG,connectOnClick:eQ,attributionPosition:eJ,proOptions:e0,defaultEdgeOptions:e1,elevateNodesOnSelect:e2=!0,elevateEdgesOnSelect:e5=!1,disableKeyboardA11y:e3=!1,autoPanOnConnect:e4,autoPanOnNodeDrag:e6,autoPanOnSelection:e8=!0,autoPanSpeed:e9,connectionRadius:e7,isValidConnection:te,onError:tt,style:tn,id:tr,nodeDragThreshold:to,connectionDragThreshold:ti,viewport:ta,onViewportChange:ts,width:tl,height:td,colorMode:tc="light",debug:tu,onScroll:th,ariaLabelConfig:tf,zIndexMode:tp="basic",...tm},tg){let tx=tr||"1",ty=function(e){let[t,n]=(0,b.useState)("system"===e?null:e);return(0,b.useEffect)(()=>{if("system"!==e)return void n(e);let t=oy(),r=()=>n(t?.matches?"dark":"light");return r(),t?.addEventListener("change",r),()=>{t?.removeEventListener("change",r)}},[e]),null!==t?t:oy()?.matches?"dark":"light"}(tc),tb=(0,b.useCallback)(e=>{e.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),th?.(e)},[th]);return(0,y.jsx)("div",{"data-testid":"rf__wrapper",...tm,onScroll:tb,style:{...tn,...i1},ref:tg,className:v(["react-flow",o,ty]),id:tr,role:"application",children:(0,y.jsxs)(i0,{nodes:e,edges:t,width:tl,height:td,fitView:eW,fitViewOptions:eG,minZoom:ep,maxZoom:em,nodeOrigin:ed,nodeExtent:ey,zIndexMode:tp,children:[(0,y.jsx)(ox,{nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:g,onConnectStart:x,onConnectEnd:w,onClickConnectStart:k,onClickConnectEnd:N,nodesDraggable:ei,autoPanOnNodeFocus:ea,nodesConnectable:es,nodesFocusable:el,edgesFocusable:ec,edgesReconnectable:eu,elementsSelectable:eh,elevateNodesOnSelect:e2,elevateEdgesOnSelect:e5,minZoom:ep,maxZoom:em,nodeExtent:ey,onNodesChange:eY,onEdgesChange:eU,snapToGrid:et,snapGrid:en,connectionMode:V,translateExtent:eg,connectOnClick:eQ,defaultEdgeOptions:e1,fitView:eW,fitViewOptions:eG,onNodesDelete:T,onEdgesDelete:D,onDelete:I,onNodeDragStart:_,onNodeDrag:A,onNodeDragStop:P,onSelectionDrag:$,onSelectionDragStart:z,onSelectionDragStop:O,onMove:c,onMoveStart:p,onMoveEnd:m,noPanClassName:eZ,nodeOrigin:ed,rfId:tx,autoPanOnConnect:e4,autoPanOnNodeDrag:e6,autoPanSpeed:e9,onError:tt,connectionRadius:e7,isValidConnection:te,selectNodesOnDrag:eo,nodeDragThreshold:to,connectionDragThreshold:ti,onBeforeDelete:F,debug:tu,ariaLabelConfig:tf,zIndexMode:tp}),(0,y.jsx)(iW,{onInit:d,onNodeClick:s,onEdgeClick:l,onNodeMouseEnter:S,onNodeMouseMove:j,onNodeMouseLeave:C,onNodeContextMenu:E,onNodeDoubleClick:M,nodeTypes:i,edgeTypes:a,connectionLineType:X,connectionLineStyle:Y,connectionLineComponent:U,connectionLineContainerStyle:K,selectionKeyCode:Z,selectionOnDrag:W,selectionMode:G,deleteKeyCode:q,multiSelectionKeyCode:J,panActivationKeyCode:Q,zoomActivationKeyCode:ee,onlyRenderVisibleElements:er,defaultViewport:ef,translateExtent:eg,minZoom:ep,maxZoom:em,preventScrolling:ex,zoomOnScroll:ev,zoomOnPinch:ew,zoomOnDoubleClick:ej,panOnScroll:ek,panOnScrollSpeed:eN,panOnScrollMode:eS,panOnDrag:eC,autoPanOnSelection:e8,onPaneClick:eE,onPaneMouseEnter:eM,onPaneMouseMove:e_,onPaneMouseLeave:eA,onPaneScroll:eP,onPaneContextMenu:eT,paneClickDistance:eD,nodeClickDistance:eI,onSelectionContextMenu:L,onSelectionStart:B,onSelectionEnd:H,onReconnect:ez,onReconnectStart:e$,onReconnectEnd:eO,onEdgeContextMenu:eL,onEdgeDoubleClick:eB,onEdgeMouseEnter:eH,onEdgeMouseMove:eF,onEdgeMouseLeave:eV,reconnectRadius:eX,defaultMarkerColor:eb,noDragClassName:eK,noWheelClassName:eq,noPanClassName:eZ,rfId:tx,disableKeyboardA11y:e3,nodeExtent:ey,viewport:ta,onViewportChange:ts}),(0,y.jsx)(ou,{onSelectionChange:R}),eR,(0,y.jsx)(oi,{proOptions:e0,position:eJ}),(0,y.jsx)(or,{rfId:tx,disableKeyboardA11y:e3})]})})});let i5=e=>e.domNode?.querySelector(".react-flow__edgelabel-renderer"),i3=e=>e.domNode?.querySelector(".react-flow__viewport-portal");function i4({dimensions:e,lineWidth:t,variant:n,className:r}){return(0,y.jsx)("path",{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:v(["react-flow__background-pattern",n,r])})}function i6({radius:e,className:t}){return(0,y.jsx)("circle",{cx:e,cy:e,r:e,className:v(["react-flow__background-pattern","dots",t])})}t6.error014(),(l=x||(x={})).Lines="lines",l.Dots="dots",l.Cross="cross";let i8={[x.Dots]:1,[x.Lines]:1,[x.Cross]:6},i9=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function i7({id:e,variant:t=x.Dots,gap:n=20,size:r,lineWidth:o=1,offset:i=0,color:a,bgColor:s,style:l,className:d,patternClassName:c}){let u=(0,b.useRef)(null),{transform:h,patternId:f}=r3(i9,rJ),p=r||i8[t],m=t===x.Dots,g=t===x.Cross,w=Array.isArray(n)?n:[n,n],k=[w[0]*h[2]||1,w[1]*h[2]||1],N=p*h[2],S=Array.isArray(i)?i:[i,i],j=g?[N,N]:k,C=[S[0]*h[2]||1+j[0]/2,S[1]*h[2]||1+j[1]/2],E=`${f}${e||""}`;return(0,y.jsxs)("svg",{className:v(["react-flow__background",d]),style:{...l,...oB,"--xy-background-color-props":s,"--xy-background-pattern-color-props":a},ref:u,"data-testid":"rf__background",children:[(0,y.jsx)("pattern",{id:E,x:h[0]%k[0],y:h[1]%k[1],width:k[0],height:k[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${C[0]},-${C[1]})`,children:m?(0,y.jsx)(i6,{radius:N/2,className:c}):(0,y.jsx)(i4,{dimensions:j,lineWidth:o,variant:t,className:c})}),(0,y.jsx)("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${E})`})]})}i7.displayName="Background";let ae=(0,b.memo)(i7);function at(){return(0,y.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:(0,y.jsx)("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function an(){return(0,y.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:(0,y.jsx)("path",{d:"M0 0h32v4.2H0z"})})}function ar(){return(0,y.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:(0,y.jsx)("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function ao(){return(0,y.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:(0,y.jsx)("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function ai(){return(0,y.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:(0,y.jsx)("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}function aa({children:e,className:t,...n}){return(0,y.jsx)("button",{type:"button",className:v(["react-flow__controls-button",t]),...n,children:e})}let as=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function al({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:r=!0,fitViewOptions:o,onZoomIn:i,onZoomOut:a,onFitView:s,onInteractiveChange:l,className:d,children:c,position:u="bottom-left",orientation:h="vertical","aria-label":f}){let p=r4(),{isInteractive:m,minZoomReached:g,maxZoomReached:x,ariaLabelConfig:b}=r3(as,rJ),{zoomIn:w,zoomOut:k,fitView:N}=o$();return(0,y.jsxs)(oo,{className:v(["react-flow__controls","horizontal"===h?"horizontal":"vertical",d]),position:u,style:e,"data-testid":"rf__controls","aria-label":f??b["controls.ariaLabel"],children:[t&&(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(aa,{onClick:()=>{w(),i?.()},className:"react-flow__controls-zoomin",title:b["controls.zoomIn.ariaLabel"],"aria-label":b["controls.zoomIn.ariaLabel"],disabled:x,children:(0,y.jsx)(at,{})}),(0,y.jsx)(aa,{onClick:()=>{k(),a?.()},className:"react-flow__controls-zoomout",title:b["controls.zoomOut.ariaLabel"],"aria-label":b["controls.zoomOut.ariaLabel"],disabled:g,children:(0,y.jsx)(an,{})})]}),n&&(0,y.jsx)(aa,{className:"react-flow__controls-fitview",onClick:()=>{N(o),s?.()},title:b["controls.fitView.ariaLabel"],"aria-label":b["controls.fitView.ariaLabel"],children:(0,y.jsx)(ar,{})}),r&&(0,y.jsx)(aa,{className:"react-flow__controls-interactive",onClick:()=>{p.setState({nodesDraggable:!m,nodesConnectable:!m,elementsSelectable:!m}),l?.(!m)},title:b["controls.interactive.ariaLabel"],"aria-label":b["controls.interactive.ariaLabel"],children:m?(0,y.jsx)(ai,{}):(0,y.jsx)(ao,{})}),c]})}al.displayName="Controls";let ad=(0,b.memo)(al),ac=(0,b.memo)(function({id:e,x:t,y:n,width:r,height:o,style:i,color:a,strokeColor:s,strokeWidth:l,className:d,borderRadius:c,shapeRendering:u,selected:h,onClick:f}){let{background:p,backgroundColor:m}=i||{};return(0,y.jsx)("rect",{className:v(["react-flow__minimap-node",{selected:h},d]),x:t,y:n,rx:c,ry:c,width:r,height:o,style:{fill:a||p||m,stroke:s,strokeWidth:l},shapeRendering:u,onClick:f?t=>f(t,e):void 0})}),au=e=>e.nodes.map(e=>e.id),ah=e=>e instanceof Function?e:()=>e,af=(0,b.memo)(function({id:e,nodeColorFunc:t,nodeStrokeColorFunc:n,nodeClassNameFunc:r,nodeBorderRadius:o,nodeStrokeWidth:i,shapeRendering:a,NodeComponent:s,onClick:l}){let{node:d,x:c,y:u,width:h,height:f}=r3(t=>{let n=t.nodeLookup.get(e);if(!n)return{node:void 0,x:0,y:0,width:0,height:0};let r=n.internals.userNode,{x:o,y:i}=n.internals.positionAbsolute,{width:a,height:s}=nR(r);return{node:r,x:o,y:i,width:a,height:s}},rJ);return d&&!d.hidden&&nz(d)?(0,y.jsx)(s,{x:c,y:u,width:h,height:f,style:d.style,selected:!!d.selected,className:r(d),color:t(d),borderRadius:o,strokeColor:n(d),strokeWidth:i,shapeRendering:a,onClick:l,id:d.id}):null});var ap=(0,b.memo)(function({nodeStrokeColor:e,nodeColor:t,nodeClassName:n="",nodeBorderRadius:r=5,nodeStrokeWidth:o,nodeComponent:i=ac,onClick:a}){let s=r3(au,rJ),l=ah(t),d=ah(e),c=ah(n),u="u"<typeof window||window.chrome?"crispEdges":"geometricPrecision";return(0,y.jsx)(y.Fragment,{children:s.map(e=>(0,y.jsx)(af,{id:e,nodeColorFunc:l,nodeStrokeColorFunc:d,nodeClassNameFunc:c,nodeBorderRadius:r,nodeStrokeWidth:o,NodeComponent:i,onClick:a,shapeRendering:u},e))})});let am=e=>!e.hidden,ag=e=>{let t={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:t,boundingRect:e.nodeLookup.size>0?nN(nl(e.nodeLookup,{filter:am}),t):t,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}};function ax({style:e,className:t,nodeStrokeColor:n,nodeColor:r,nodeClassName:o="",nodeBorderRadius:i=5,nodeStrokeWidth:a,nodeComponent:s,bgColor:l,maskColor:d,maskStrokeColor:c,maskStrokeWidth:u,position:h="bottom-right",onClick:f,onNodeClick:p,pannable:m=!1,zoomable:g=!1,ariaLabel:x,inversePan:w,zoomStep:k=1,offsetScale:N=5}){let S=r4(),j=(0,b.useRef)(null),{boundingRect:C,viewBB:E,rfId:M,panZoom:_,translateExtent:A,flowWidth:P,flowHeight:T,ariaLabelConfig:D}=r3(ag,rJ),I=e?.width??200,R=e?.height??150,z=Math.max(C.width/I,C.height/R),$=z*I,O=z*R,L=N*z,B=C.x-($-C.width)/2-L,H=C.y-(O-C.height)/2-L,F=$+2*L,V=O+2*L,X=`react-flow__minimap-desc-${M}`,Y=(0,b.useRef)(0),U=(0,b.useRef)();Y.current=z,(0,b.useEffect)(()=>{if(j.current&&_)return U.current=r_({domNode:j.current,panZoom:_,getTransform:()=>S.getState().transform,getViewScale:()=>Y.current}),()=>{U.current?.destroy()}},[_]),(0,b.useEffect)(()=>{U.current?.update({translateExtent:A,width:P,height:T,inversePan:w,pannable:m,zoomStep:k,zoomable:g})},[m,g,w,k,A,P,T]);let K=f?e=>{let[t,n]=U.current?.pointer(e)||[0,0];f(e,{x:t,y:n})}:void 0,q=p?(0,b.useCallback)((e,t)=>{p(e,S.getState().nodeLookup.get(t).internals.userNode)},[]):void 0,Z=x??D["minimap.ariaLabel"];return(0,y.jsx)(oo,{position:h,style:{...e,"--xy-minimap-background-color-props":"string"==typeof l?l:void 0,"--xy-minimap-mask-background-color-props":"string"==typeof d?d:void 0,"--xy-minimap-mask-stroke-color-props":"string"==typeof c?c:void 0,"--xy-minimap-mask-stroke-width-props":"number"==typeof u?u*z:void 0,"--xy-minimap-node-background-color-props":"string"==typeof r?r:void 0,"--xy-minimap-node-stroke-color-props":"string"==typeof n?n:void 0,"--xy-minimap-node-stroke-width-props":"number"==typeof a?a:void 0},className:v(["react-flow__minimap",t]),"data-testid":"rf__minimap",children:(0,y.jsxs)("svg",{width:I,height:R,viewBox:`${B} ${H} ${F} ${V}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":X,ref:j,onClick:K,children:[Z&&(0,y.jsx)("title",{id:X,children:Z}),(0,y.jsx)(ap,{onClick:q,nodeColor:r,nodeStrokeColor:n,nodeBorderRadius:i,nodeClassName:o,nodeStrokeWidth:a,nodeComponent:s}),(0,y.jsx)("path",{className:"react-flow__minimap-mask",d:`M${B-L},${H-L}h${F+2*L}v${V+2*L}h${-F-2*L}z
|
|
2
|
+
M${E.x},${E.y}h${E.width}v${E.height}h${-E.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}ax.displayName="MiniMap";let ay=(0,b.memo)(ax),ab={[g.Line]:"right",[g.Handle]:"bottom-right"};(0,b.memo)(function({nodeId:e,position:t,variant:n=g.Handle,className:r,style:o,children:i,color:a,minWidth:s=10,minHeight:l=10,maxWidth:d=Number.MAX_VALUE,maxHeight:c=Number.MAX_VALUE,keepAspectRatio:u=!1,resizeDirection:h,autoScale:f=!0,shouldResize:p,onResizeStart:m,onResize:x,onResizeEnd:w}){let k,N=oJ(),S="string"==typeof e?e:N,j=r4(),C=(0,b.useRef)(null),E=n===g.Handle,M=r3((0,b.useCallback)((k=E&&f,e=>k?`${Math.max(1/e.transform[2],1)}`:void 0),[E,f]),rJ),_=(0,b.useRef)(null),A=t??ab[n];(0,b.useEffect)(()=>{if(C.current&&S)return _.current||(_.current=rX({domNode:C.current,nodeId:S,getStoreItems:()=>{let{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:r,nodeOrigin:o,domNode:i}=j.getState();return{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:r,nodeOrigin:o,paneDomNode:i}},onChange:(e,t)=>{let{triggerNodeChanges:n,nodeLookup:r,parentLookup:o,nodeOrigin:i}=j.getState(),a=[],s={x:e.x,y:e.y},l=r.get(S);if(l&&l.expandParent&&l.parentId){let t=l.origin??i,n=e.width??l.measured.width??0,d=e.height??l.measured.height??0,c=rg([{id:l.id,parentId:l.parentId,rect:{width:n,height:d,...n$({x:e.x??l.position.x,y:e.y??l.position.y},{width:n,height:d},l.parentId,r,t)}}],r,o,i);a.push(...c),s.x=e.x?Math.max(t[0]*n,e.x):void 0,s.y=e.y?Math.max(t[1]*d,e.y):void 0}if(void 0!==s.x&&void 0!==s.y){let e={id:S,type:"position",position:{...s}};a.push(e)}if(void 0!==e.width&&void 0!==e.height){let t={id:S,type:"dimensions",resizing:!0,setAttributes:!h||("horizontal"===h?"width":"height"),dimensions:{width:e.width,height:e.height}};a.push(t)}for(let e of t){let t={...e,type:"position"};a.push(t)}n(a)},onEnd:({width:e,height:t})=>{j.getState().triggerNodeChanges([{id:S,type:"dimensions",resizing:!1,dimensions:{width:e,height:t}}])}})),_.current.update({controlPosition:A,boundaries:{minWidth:s,minHeight:l,maxWidth:d,maxHeight:c},keepAspectRatio:u,resizeDirection:h,onResizeStart:m,onResize:x,onResizeEnd:w,shouldResize:p}),()=>{_.current?.destroy()}},[A,s,l,d,c,u,m,x,w,p]);let P=A.split("-");return(0,y.jsx)("div",{className:v(["react-flow__resize-control","nodrag",...P,n,r]),ref:C,style:{...o,scale:M,...a&&{[E?"backgroundColor":"borderColor"]:a}},children:i})}),e.s(["Background",0,ae,"BaseEdge",0,ih,"Controls",0,ad,"EdgeLabelRenderer",0,function({children:e}){let t=r3(i5);return t?(0,r0.createPortal)(e,t):null},"Handle",0,o1,"MiniMap",0,ay,"Panel",0,oo,"ReactFlow",0,i2,"ViewportPortal",0,function({children:e}){let t=r3(i3);return t?(0,r0.createPortal)(e,t):null},"applyEdgeChanges",0,oj,"applyNodeChanges",0,oS,"useInternalNode",0,function(e){return r3((0,b.useCallback)(t=>t.nodeLookup.get(e),[e]),rJ)},"useNodesState",0,function(e){let[t,n]=(0,b.useState)(e),r=(0,b.useCallback)(e=>n(t=>oS(e,t)),[]);return[t,n,r]},"useReactFlow",0,o$],54548)},76248,23089,12092,e=>{"use strict";var t=e.i(56420);let n=(0,t.default)("circle-question-mark",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["HelpCircle",0,n],76248);let r=(0,t.default)("panel-right",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}]]);e.s(["PanelRight",0,r],23089);let o=(0,t.default)("sliders-horizontal",[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]]);e.s(["SlidersHorizontal",0,o],12092)},69846,66595,97886,e=>{"use strict";var t=e.i(56420);let n=(0,t.default)("git-branch",[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]);e.s(["GitBranch",0,n],69846);let r=(0,t.default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["Search",0,r],66595);let o=(0,t.default)("target",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]]);e.s(["Target",0,o],97886)},56504,e=>{"use strict";var t=e.i(43476),n=e.i(54548),r=e.i(30590);e.s(["FourDotHandles",0,function(){let e="!h-2 !w-2 !border-0 !bg-zinc-400";return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.Handle,{type:"target",position:r.Position.Top,id:"tt",className:e}),(0,t.jsx)(n.Handle,{type:"source",position:r.Position.Top,id:"st",className:e}),(0,t.jsx)(n.Handle,{type:"target",position:r.Position.Right,id:"tr",className:e}),(0,t.jsx)(n.Handle,{type:"source",position:r.Position.Right,id:"sr",className:e}),(0,t.jsx)(n.Handle,{type:"target",position:r.Position.Bottom,id:"tb",className:e}),(0,t.jsx)(n.Handle,{type:"source",position:r.Position.Bottom,id:"sb",className:e}),(0,t.jsx)(n.Handle,{type:"target",position:r.Position.Left,id:"tl",className:e}),(0,t.jsx)(n.Handle,{type:"source",position:r.Position.Left,id:"sl",className:e})]})}])},26787,90582,e=>{"use strict";var t=e.i(56420);let n=(0,t.default)("maximize-2",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]]);e.s(["Maximize2",0,n],26787);let r=(0,t.default)("minimize-2",[["path",{d:"m14 10 7-7",key:"oa77jy"}],["path",{d:"M20 10h-6V4",key:"mjg0md"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M4 14h6v6",key:"rmj7iw"}]]);e.s(["Minimize2",0,r],90582)},27491,89765,6537,71829,42348,29310,e=>{"use strict";var t=e.i(56420);let n=(0,t.default)("message-circle-question-mark",[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["MessageCircleQuestion",0,n],27491);let r=(0,t.default)("flask-conical",[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]]);e.s(["FlaskConical",0,r],89765);let o=(0,t.default)("lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]);e.s(["Lock",0,o],6537),e.s(["ARCH_STATUSES",0,["KEEP","REBUILD","REPLACE","DROP"],"ROADMAP_STATUSES",0,["PENDING","IN_PROGRESS","DONE","BLOCKED","CANCELLED","DEPRIORITIZED"],"STATUS_LANE_ORDER",0,["IN_PROGRESS","PENDING","BLOCKED","DONE","DEPRIORITIZED","CANCELLED"],"STATUS_META",0,{DONE:{label:"Done",className:"border-emerald-500/30 bg-emerald-500/15 text-emerald-300"},IN_PROGRESS:{label:"In progress",className:"border-sky-500/30 bg-sky-500/15 text-sky-300"},PENDING:{label:"Pending",className:"border-amber-500/30 bg-amber-500/10 text-amber-200"},BLOCKED:{label:"Blocked",className:"border-orange-500/30 bg-orange-500/15 text-orange-300"},CANCELLED:{label:"Cancelled",className:"border-zinc-500/30 bg-zinc-500/10 text-zinc-400 line-through"},DEPRIORITIZED:{label:"Deprioritized",className:"border-zinc-600/40 bg-zinc-600/10 text-zinc-400"},KEEP:{label:"Keep",className:"border-emerald-500/30 bg-emerald-500/15 text-emerald-300"},REBUILD:{label:"Rebuild",className:"border-violet-500/30 bg-violet-500/15 text-violet-300"},REPLACE:{label:"Replace",className:"border-rose-500/30 bg-rose-500/15 text-rose-300"},DROP:{label:"Drop",className:"border-zinc-500/30 bg-zinc-500/10 text-zinc-400 line-through"}},"clusterLabel",0,function(e){return e?.trim()||"—"}],71829);let i=["bg-emerald-500/15 text-emerald-300","bg-sky-500/15 text-sky-300","bg-violet-500/15 text-violet-300","bg-amber-500/15 text-amber-200","bg-rose-500/15 text-rose-300","bg-cyan-500/15 text-cyan-300","bg-fuchsia-500/15 text-fuchsia-300","bg-lime-500/15 text-lime-300","bg-orange-500/15 text-orange-300","bg-teal-500/15 text-teal-300","bg-indigo-500/15 text-indigo-300","bg-pink-500/15 text-pink-300"];e.s(["categoryColorClass",0,function(e){let t=(e??"").trim().toUpperCase();if(!t)return"bg-white/[0.06] text-muted-foreground";let n=0;for(let e=0;e<t.length;e++)n=31*n+t.charCodeAt(e)>>>0;return i[n%i.length]}],42348);var a=e.i(71645);let s=(0,a.createContext)(null);e.s(["NodeEditContext",0,s,"useNodeEdit",0,function(){let e=(0,a.useContext)(s);if(!e)throw Error("useNodeEdit must be used inside NodeEditContext");return e}],29310)},43442,e=>{"use strict";var t=e.i(43476),n=e.i(71645),r=e.i(47163);function o(e){let t=e.trim();return t.includes("|")&&t.includes("-")&&/^[\s|:-]+$/.test(t)}function i(e){return""!==e.trim()&&e.includes("|")}function a(e){let t=e.trim();return t.startsWith("|")&&(t=t.slice(1)),t.endsWith("|")&&(t=t.slice(0,-1)),t.split("|").map(e=>e.trim())}function s(e){let t=e.trim(),n=t.startsWith(":"),r=t.endsWith(":");return n&&r?"center":r?"right":n?"left":null}let l=/^\s*```[^\s`]*\s*$/;function d(e){let t=e.split("\n"),n=[],r=[],d=()=>{r.length&&(n.push({kind:"p",text:r.join("\n")}),r=[])},c=null,u=()=>{null!==c&&(n.push({kind:"quote",text:c.join("\n")}),c=null)},h=e=>Math.min(6,Math.floor(e.length/2)),f=null,p=null;for(let e=0;e<t.length;e++){let m=t[e];if(null!==f){l.test(m)?(n.push({kind:"code",text:f.join("\n")}),f=null):f.push(m);continue}let g=m.match(/^>\s?(.*)$/);if(g){d(),p=null,(c??=[]).push(g[1]);continue}if(u(),l.test(m)){d(),p=null,f=[];continue}if(/^\s*$/.test(m)){d(),p=null;continue}let x=m.match(/^#### +(.+)$/);if(x){d(),p=null,n.push({kind:"h4",text:x[1]});continue}let y=m.match(/^### +(.+)$/);if(y){d(),p=null,n.push({kind:"h3",text:y[1]});continue}let b=m.match(/^## +(.+)$/);if(b){d(),p=null,n.push({kind:"h2",text:b[1]});continue}let v=m.match(/^# +(.+)$/);if(v){d(),p=null,n.push({kind:"h1",text:v[1]});continue}if(i(m)&&e+1<t.length&&o(t[e+1])){d(),p=null;let r=[a(m)],l=a(t[e+1]).map(s),c=e+2;for(;c<t.length&&i(t[c])&&!o(t[c]);)r.push(a(t[c])),c++;n.push({kind:"table",text:t.slice(e,c).join("\n"),rows:r,align:l}),e=c-1;continue}let w=m.match(/^(\s*)(\d+)\. +(.+)$/);if(w){d(),n.push({kind:"ol",text:w[3],depth:h(w[1]),marker:w[2]}),p=n.length-1;continue}let k=m.match(/^(\s*)- +(.+)$/);if(k){d(),n.push({kind:"ul",text:k[2],depth:h(k[1])}),p=n.length-1;continue}if(null!==p&&0===r.length){n[p].text+=" "+m.trim();continue}r.push(m)}return d(),u(),null!==f&&n.push({kind:"code",text:f.join("\n")}),n}let c=/("(?:\\.|[^"\\])*")(\s*:)?|\b(true|false|null)\b|(-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)/g;function u({text:e}){let n=function(e){let t=e.trim();if(!t||"{"!==t[0]&&"["!==t[0])return null;try{return JSON.stringify(JSON.parse(t),null,2)}catch{return null}}(e);return(0,t.jsx)("pre",{className:"overflow-x-auto rounded-lg border border-white/10 bg-white/[0.06] p-3 text-[12px] leading-relaxed",children:(0,t.jsx)("code",{className:"whitespace-pre font-mono [overflow-wrap:normal]",children:n?function(e){let n,r=[],o=0,i=0,a=e=>(0,t.jsx)("span",{className:"text-foreground/45",children:e},i++);for(c.lastIndex=0;null!==(n=c.exec(e));){if(n.index>o&&r.push(a(e.slice(o,n.index))),void 0!==n[1]){let e=void 0!==n[2];r.push((0,t.jsx)("span",{className:e?"text-sky-300":"text-emerald-300/90",children:n[1]},i++)),e&&n[2]&&r.push(a(n[2]))}else void 0!==n[3]?r.push((0,t.jsx)("span",{className:"text-purple-300",children:n[3]},i++)):void 0!==n[4]&&r.push((0,t.jsx)("span",{className:"text-amber-300",children:n[4]},i++));o=c.lastIndex}return o<e.length&&r.push(a(e.slice(o))),r}(n):(0,t.jsx)("span",{className:"text-foreground/85",children:e})})})}function h({block:e}){let n=e.rows??[];if(0===n.length)return null;let[o,...i]=n,a=e.align??[],s=e=>"center"===a[e]?"text-center":"right"===a[e]?"text-right":"text-left";return(0,t.jsx)("div",{className:"overflow-x-auto rounded-lg border border-white/10",children:(0,t.jsxs)("table",{className:"w-full border-collapse text-[13px] [overflow-wrap:normal]",children:[(0,t.jsx)("thead",{children:(0,t.jsx)("tr",{className:"border-b border-white/15 bg-white/[0.04]",children:o.map((e,n)=>(0,t.jsx)("th",{className:(0,r.cn)("whitespace-nowrap px-3 py-1.5 font-semibold text-foreground",s(n)),children:(0,t.jsx)(g,{text:e})},n))})}),(0,t.jsx)("tbody",{children:i.map((e,n)=>(0,t.jsx)("tr",{className:"border-b border-white/5 last:border-0",children:e.map((e,n)=>(0,t.jsx)("td",{className:(0,r.cn)("px-3 py-1.5 align-top text-foreground/90",s(n)),children:(0,t.jsx)(g,{text:e})},n))},n))})]})})}let f=["h1","h2","h3","h4"];function p(e,n,o,i){let a="reading"===o;switch(e.kind){case"h1":return(0,t.jsx)("h1",{id:i,className:a?"scroll-mt-24 text-xl font-semibold tracking-tight text-foreground":"text-base font-semibold text-foreground",children:n});case"h2":return(0,t.jsx)("h2",{id:i,className:a?"mt-6 scroll-mt-24 border-b border-white/10 pb-1 text-lg font-semibold text-foreground":"mt-3 text-sm font-semibold text-muted-foreground",children:n});case"h3":return(0,t.jsx)("h3",{id:i,className:a?"mt-4 scroll-mt-24 text-base font-semibold text-foreground":"mt-2 text-[13px] font-semibold text-foreground",children:n});case"h4":return(0,t.jsx)("h4",{id:i,className:a?"mt-3 scroll-mt-24 text-sm font-semibold text-muted-foreground":"mt-2 text-[13px] font-semibold text-muted-foreground",children:n});case"ul":case"ol":{let o=e.depth??0;return(0,t.jsxs)("div",{className:(0,r.cn)("flex gap-2",a?"text-foreground/95":"text-foreground/90"),style:{marginLeft:`${.75+1.25*o}rem`},children:[(0,t.jsx)("span",{className:"shrink-0 select-none text-muted-foreground tabular-nums",children:"ol"===e.kind?`${e.marker}.`:"•"}),(0,t.jsx)("span",{className:"min-w-0 flex-1",children:n})]})}case"quote":return(0,t.jsx)("blockquote",{className:(0,r.cn)("whitespace-pre-wrap border-l-2 pl-3 italic",a?"border-white/15 text-foreground/80":"border-white/10 text-foreground/75"),children:n});default:return(0,t.jsx)("p",{className:(0,r.cn)("whitespace-pre-wrap",a?"text-foreground/95":"text-foreground/90"),children:n})}}function m({block:e,variant:n}){return"code"===e.kind?(0,t.jsx)(u,{text:e.text}):"table"===e.kind?(0,t.jsx)(h,{block:e}):(0,t.jsx)(t.Fragment,{children:p(e,(0,t.jsx)(g,{text:e.text}),n)})}function g({text:e}){let n=e.split(/(`[^`]+`|\*\*[\s\S]+?\*\*|\*[^*]+\*)/g);return(0,t.jsx)(t.Fragment,{children:n.map((e,n)=>/^`[^`]+`$/.test(e)?(0,t.jsx)("code",{className:"rounded bg-white/5 px-1 font-mono text-[12px]",children:e.slice(1,-1)},n):/^\*\*[\s\S]+\*\*$/.test(e)?(0,t.jsx)("strong",{className:"font-semibold text-foreground",children:(0,t.jsx)(g,{text:e.slice(2,-2)})},n):/^\*[^*]+\*$/.test(e)?(0,t.jsx)("em",{className:"text-muted-foreground",children:(0,t.jsx)(g,{text:e.slice(1,-1)})},n):(0,t.jsx)("span",{children:e},n))})}e.s(["CodeBlock",0,u,"Inline",0,g,"MarkdownView",0,function({markdown:e,className:o,variant:i="reading"}){let a=(0,n.useMemo)(()=>d(e),[e]),s="reading"===i;return(0,t.jsx)("div",{className:(0,r.cn)("min-w-0 [overflow-wrap:anywhere]",s?"mx-auto w-full max-w-[66ch] space-y-4 text-[15px] leading-[1.6]":"space-y-3.5 text-[13px] leading-relaxed",o),children:a.map((e,n)=>(0,t.jsx)(m,{block:e,variant:i},n))})},"TableBlock",0,h,"headingLevel",0,function(e){let t=f.indexOf(e);return t<0?0:t},"isHeading",0,function(e){return f.includes(e)},"planHeadingAnchor",0,function(e){return`plan-h-${e}`},"renderBlockShell",0,p,"splitBlocks",0,d,"stripInline",0,function(e){return e.replace(/[`*]/g,"").trim()}])},22842,e=>{"use strict";var t=e.i(43476),n=e.i(71645),r=e.i(56504),o=e.i(28623),i=e.i(26787),a=e.i(90582),s=e.i(23089),l=e.i(73474),d=e.i(27491),c=e.i(89765),u=e.i(6537),h=e.i(62870),f=e.i(71829),p=e.i(42348),m=e.i(29310),g=e.i(43442),x=e.i(47163);let y=[{v:0,l:"P0 · critical"},{v:1,l:"P1 · high"},{v:2,l:"P2 · medium"},{v:3,l:"P3 · low"}],b="nodrag nopan";e.s(["NodeCard",0,function({id:e,data:v,selected:w}){let{categories:k,statuses:N,patch:S,isExpanded:j,toggleExpand:C,openDetailed:E,removeNode:M,editingTitleId:_,onAskAgent:A}=(0,m.useNodeEdit)(),P=j(e),[T,D]=(0,n.useState)(!1),[I,R]=(0,n.useState)(!1),[z,$]=(0,n.useState)(v.title),[O,L]=(0,n.useState)(v.cluster??""),[B,H]=(0,n.useState)(v.plain??""),F=0===v.priority,V="CANCELLED"===v.status||"DROP"===v.status,X="DEPRIORITIZED"===v.status,Y="DRAFT"===v.source,U="IN_PROGRESS"===v.status,K="INIT"===v.source&&"ROADMAP"===v.view,q=e=>e.stopPropagation();return(0,t.jsxs)("div",{className:(0,x.cn)("rounded-lg border bg-card px-2.5 py-2 text-card-foreground shadow-sm transition",P?"w-80":v.isChild?"w-56":"w-64",Y?"border-dashed border-sky-400/50 bg-sky-500/[0.06]":K?"border-dashed border-violet-400/60 bg-violet-500/[0.07] shadow-[0_0_0_1px_rgba(167,139,250,0.18)]":F?"border-[#ff3860]/60 shadow-[0_0_0_1px_rgba(255,56,96,0.15)]":"border-border",U&&"border-sky-400/60 shadow-[0_0_0_1px_rgba(56,160,255,0.25)]",v.isNext&&"border-emerald-400/70 shadow-[0_0_0_2px_rgba(52,211,153,0.35)]",w&&"ring-2 ring-[var(--accent,#f5b942)]",V&&"opacity-60",X&&"opacity-70 border-dashed"),children:[(0,t.jsx)(r.FourDotHandles,{}),v.isNext&&(0,t.jsx)("div",{className:"mb-1 inline-flex items-center gap-1 rounded bg-emerald-500/15 px-1 py-0.5 text-[9px] font-semibold uppercase tracking-wide text-emerald-300",children:"work on next"}),(0,t.jsxs)("div",{className:"flex items-start gap-1.5",children:[U&&(0,t.jsx)("span",{title:"em andamento",className:"mt-1.5 inline-block size-2 shrink-0 animate-pulse rounded-full bg-sky-400"}),v.isCriterion&&!U&&(0,t.jsx)("span",{title:"Success criterion",className:"mt-1.5 inline-block size-1.5 shrink-0 rounded-full bg-[var(--accent,#f5b942)]"}),(0,t.jsx)("textarea",{rows:1,value:z,autoFocus:_===e,placeholder:"Title…",onFocus:t=>{_===e&&t.currentTarget.select()},onChange:e=>$(e.target.value),onBlur:()=>{let t=z.trim();t&&t!==v.title&&S(e,{title:t},!0)},onKeyDown:e=>{q(e),"Enter"!==e.key||e.shiftKey||(e.preventDefault(),e.currentTarget.blur())},className:(0,x.cn)(b,"field-sizing-content w-full resize-none bg-transparent text-sm font-medium leading-snug outline-none placeholder:text-muted-foreground/60",V&&"line-through")}),(0,t.jsx)("button",{type:"button",onClick:t=>{q(t),C(e)},title:P?"Collapse":"Expand",className:(0,x.cn)(b,"mt-0.5 shrink-0 text-muted-foreground hover:text-foreground"),children:P?(0,t.jsx)(a.Minimize2,{className:"size-3.5"}):(0,t.jsx)(i.Maximize2,{className:"size-3.5"})})]}),((v.signals?.untested??0)>0||v.signals?.auth)&&(0,t.jsxs)("div",{className:"mt-1 flex flex-wrap items-center gap-1",children:[(v.signals?.untested??0)>0&&(0,t.jsxs)("span",{title:`${v.signals.untested} of ${v.signals.total} attached file(s) have no test importing them`,className:"flex items-center gap-1 rounded bg-amber-500/15 px-1 text-[9px] font-semibold uppercase tracking-wide text-amber-300",children:[(0,t.jsx)(c.FlaskConical,{className:"size-2.5"}),v.signals.untested," untested"]}),v.signals?.auth&&(0,t.jsxs)("span",{title:"touches auth-sensitive files",className:"flex items-center gap-1 rounded bg-red-500/15 px-1 text-[9px] font-semibold uppercase tracking-wide text-red-300",children:[(0,t.jsx)(u.Lock,{className:"size-2.5"})," auth"]})]}),v.role&&(0,t.jsx)("div",{className:(0,x.cn)("mt-0.5 text-[10px] leading-snug text-muted-foreground",!P&&"line-clamp-1"),children:v.role}),(0,t.jsxs)("div",{className:"mt-2 flex items-center gap-1.5",children:["ROADMAP"===v.view?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{title:v.isChild?"Sub-task of a feature":"Feature — top-level roadmap item",className:(0,x.cn)("shrink-0 rounded px-1 py-0.5 text-[9px] font-semibold uppercase tracking-wide",v.isChild?"bg-zinc-500/15 text-zinc-300":"bg-sky-500/15 text-sky-300"),children:v.isChild?"sub-task":"feature"}),K&&(0,t.jsxs)("span",{className:"flex items-center gap-1 rounded bg-violet-500/15 px-1 py-0.5 text-[9px] font-semibold uppercase tracking-wide text-violet-300",children:[(0,t.jsx)(o.Sparkles,{className:"size-2.5"})," IA"]}),(0,t.jsx)("input",{list:`cats-${e}`,value:O,placeholder:"category",onChange:e=>L(e.target.value),onBlur:()=>{let t=O.trim()||null;t!==(v.cluster??null)&&S(e,{cluster:t},!0)},onKeyDown:e=>{q(e),"Enter"===e.key&&e.currentTarget.blur()},className:(0,x.cn)(b,"field-sizing-content min-w-12 max-w-[65%] rounded px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wide outline-none focus:brightness-125",(0,p.categoryColorClass)(O))})]}):(0,t.jsxs)(t.Fragment,{children:[v.isChild&&(0,t.jsx)("span",{title:"Sub-component",className:"shrink-0 rounded bg-zinc-500/15 px-1 py-0.5 text-[9px] font-semibold uppercase tracking-wide text-zinc-300",children:"sub"}),(0,t.jsx)("input",{list:`cats-${e}`,value:O,placeholder:"domain",title:"Architecture domain — the lane this component lives in",onChange:e=>L(e.target.value),onBlur:()=>{let t=O.trim()||null;t!==(v.cluster??null)&&S(e,{cluster:t},!0)},onKeyDown:e=>{q(e),"Enter"===e.key&&e.currentTarget.blur()},className:(0,x.cn)(b,"field-sizing-content min-w-12 max-w-[65%] rounded px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wide outline-none focus:brightness-125",(0,p.categoryColorClass)(O))})]}),(0,t.jsx)("datalist",{id:`cats-${e}`,children:k.map(e=>(0,t.jsx)("option",{value:e},e))}),(0,t.jsxs)(h.Select,{value:v.status,onValueChange:t=>S(e,{status:t},!0),children:[(0,t.jsx)(h.SelectTrigger,{className:(0,x.cn)(b,"ml-auto h-6 shrink-0 gap-1 rounded border px-1.5 py-0 text-[10px] font-medium",f.STATUS_META[v.status]?.className??"border-white/10"),children:(0,t.jsx)(h.SelectValue,{children:e=>f.STATUS_META[e]?.label??e})}),(0,t.jsx)(h.SelectContent,{alignItemWithTrigger:!1,children:N.map(e=>(0,t.jsx)(h.SelectItem,{value:e,children:f.STATUS_META[e]?.label??e},e))})]})]}),P&&(0,t.jsxs)("div",{className:"mt-2 space-y-2 border-t border-white/10 pt-2",children:[I||!B.trim()?(0,t.jsx)("textarea",{autoFocus:I,value:B,placeholder:"Description (markdown)…",onChange:e=>H(e.target.value),onBlur:()=>{R(!1);let t=B.trim()||null;t!==(v.plain??null)&&S(e,{plain:t},!0)},onKeyDown:q,rows:3,className:(0,x.cn)(b,"field-sizing-content max-h-[24rem] min-h-[4.5rem] w-full resize-y rounded bg-white/[0.04] px-1.5 py-1 text-xs outline-none placeholder:text-muted-foreground/50 focus:bg-white/[0.08]")}):(0,t.jsx)("div",{onClick:e=>{q(e),R(!0)},title:"Click to edit",className:"cursor-text rounded bg-white/[0.02] px-1.5 py-1 text-xs hover:bg-white/[0.05]",children:(0,t.jsx)(g.MarkdownView,{markdown:B,variant:"compact",className:"text-[12px]"})}),(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsxs)(h.Select,{value:String(v.priority),onValueChange:t=>S(e,{priority:Number(t)},!0),children:[(0,t.jsx)(h.SelectTrigger,{className:(0,x.cn)(b,"h-6 gap-1 rounded border-white/10 px-1.5 py-0 text-[10px]"),children:(0,t.jsx)(h.SelectValue,{children:e=>y.find(t=>String(t.v)===e)?.l??e})}),(0,t.jsx)(h.SelectContent,{alignItemWithTrigger:!1,children:y.map(e=>(0,t.jsx)(h.SelectItem,{value:String(e.v),children:e.l},e.v))})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[(0,t.jsxs)("button",{type:"button",onClick:t=>{q(t),T?M(e):D(!0)},onBlur:()=>D(!1),title:"Delete node",className:(0,x.cn)(b,"flex items-center gap-1 rounded px-1.5 py-1 text-[10px] transition-colors",T?"bg-red-500/20 text-red-300":"text-muted-foreground hover:bg-white/5 hover:text-red-300"),children:[(0,t.jsx)(l.Trash2,{className:"size-3"}),T&&"Delete?"]}),A&&(0,t.jsxs)("button",{type:"button",onClick:e=>{q(e),A(`feature: ${v.title}`)},title:"Ask the agent a question about this feature (answered in its next round)",className:(0,x.cn)(b,"flex items-center gap-1 rounded px-1.5 py-1 text-[10px] text-sky-300/90 hover:bg-sky-500/15 hover:text-sky-300"),children:[(0,t.jsx)(d.MessageCircleQuestion,{className:"size-3"})," Ask"]}),(0,t.jsxs)("button",{type:"button",onClick:t=>{q(t),E(e)},className:(0,x.cn)(b,"flex items-center gap-1 rounded px-1.5 py-1 text-[10px] text-muted-foreground hover:bg-white/5 hover:text-foreground"),children:[(0,t.jsx)(s.PanelRight,{className:"size-3"})," Details"]})]})]})]})]})}])},50513,e=>{"use strict";var t=e.i(43476),n=e.i(54548),r=e.i(30590),o=e.i(73474);function i(e){let{x:t,y:n}=e.internals.positionAbsolute,r=e.measured?.width??0,o=e.measured?.height??0;return{x:t,y:n,w:r,h:o,cx:t+r/2,cy:n+o/2}}function a(e,t){let n=i(e),r=i(t),o=n.w/2||1,a=n.h/2||1,s=(r.cx-n.cx)/(2*o)-(r.cy-n.cy)/(2*a),l=(r.cx-n.cx)/(2*o)+(r.cy-n.cy)/(2*a),d=1/(Math.abs(s)+Math.abs(l)||1);return{x:o*d*(s+l)+n.cx,y:a*d*(-s+l)+n.cy}}function s(e,t){let n=i(e),o=Math.round(t.x),a=Math.round(t.y);return o<=Math.round(n.x)+1?r.Position.Left:o>=Math.round(n.x+n.w)-1?r.Position.Right:a<=Math.round(n.y)+1?r.Position.Top:r.Position.Bottom}e.s(["DeletableEdge",0,function(e){let i,l,{deleteElements:d}=(0,n.useReactFlow)(),c=(0,n.useInternalNode)(e.source),u=(0,n.useInternalNode)(e.target),h=c&&u?(i=a(c,u),l=a(u,c),{sx:i.x,sy:i.y,tx:l.x,ty:l.y,sourcePos:s(c,i),targetPos:s(u,l)}):null,[f,p,m]=(0,r.getBezierPath)(h?{sourceX:h.sx,sourceY:h.sy,sourcePosition:h.sourcePos,targetX:h.tx,targetY:h.ty,targetPosition:h.targetPos}:{sourceX:e.sourceX,sourceY:e.sourceY,sourcePosition:e.sourcePosition,targetX:e.targetX,targetY:e.targetY,targetPosition:e.targetPosition});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.BaseEdge,{id:e.id,path:f,style:e.style,markerEnd:e.markerEnd,interactionWidth:20}),e.label&&(0,t.jsx)(n.EdgeLabelRenderer,{children:(0,t.jsx)("div",{style:{position:"absolute",transform:`translate(-50%, -120%) translate(${p}px, ${m}px)`,fontSize:11,color:"#cfcfcf",background:"#161616",padding:"1px 4px",borderRadius:4,pointerEvents:"none"},children:e.label})}),e.selected&&(0,t.jsx)(n.EdgeLabelRenderer,{children:(0,t.jsx)("div",{className:"nodrag nopan",style:{position:"absolute",transform:`translate(-50%, 0) translate(${p}px, ${m+14}px)`,pointerEvents:"all",zIndex:1e3},children:(0,t.jsx)("button",{type:"button",onMouseDown:e=>e.stopPropagation(),onClick:t=>{t.stopPropagation(),d({edges:[{id:e.id}]})},title:"Delete (or press Backspace)",className:"flex size-7 items-center justify-center rounded-full border border-white/20 bg-card/95 text-red-300 shadow-lg backdrop-blur-md transition-colors hover:bg-red-500/25 hover:text-red-200",children:(0,t.jsx)(o.Trash2,{className:"size-3.5"})})})})]})}],50513)},30374,e=>{"use strict";var t=e.i(43476);e.s([],75704),e.i(75704);var n=e.i(59141),r=e.i(43444),o=e.i(39362),i=e.i(96918),a=e.i(38449),s=e.i(71645),l=e.i(13104),d=e.i(84739),c=e.i(55057),u=e.i(49899),h=e.i(90951),f=e.i(7840);e.s(["Backdrop",()=>n.DialogBackdrop,"Close",()=>r.DialogClose,"Description",()=>o.DialogDescription,"Handle",()=>f.DialogHandle,"Popup",()=>i.DialogPopup,"Portal",()=>a.DialogPortal,"Root",0,function(e){let t=s.useContext(l.IsDrawerContext)?"drawer":"dialog";return(0,d.useRenderDialogRoot)(e,t)},"Title",()=>u.DialogTitle,"Trigger",()=>h.DialogTrigger,"Viewport",()=>c.DialogViewport,"createHandle",()=>f.createDialogHandle],87913);var p=e.i(87913),p=p,m=e.i(47163),g=e.i(67881),x=e.i(14387),x=x;function y({...e}){return(0,t.jsx)(p.Portal,{"data-slot":"dialog-portal",...e})}function b({className:e,...n}){return(0,t.jsx)(p.Backdrop,{"data-slot":"dialog-overlay",className:(0,m.cn)("fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...n})}e.s(["Dialog",0,function({...e}){return(0,t.jsx)(p.Root,{"data-slot":"dialog",...e})},"DialogContent",0,function({className:e,children:n,showCloseButton:r=!0,...o}){return(0,t.jsxs)(y,{children:[(0,t.jsx)(b,{}),(0,t.jsxs)(p.Popup,{"data-slot":"dialog-content",className:(0,m.cn)("fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),...o,children:[n,r&&(0,t.jsxs)(p.Close,{"data-slot":"dialog-close",render:(0,t.jsx)(g.Button,{variant:"ghost",className:"absolute top-2 right-2",size:"icon-sm"}),children:[(0,t.jsx)(x.default,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})},"DialogDescription",0,function({className:e,...n}){return(0,t.jsx)(p.Description,{"data-slot":"dialog-description",className:(0,m.cn)("text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),...n})},"DialogFooter",0,function({className:e,showCloseButton:n=!1,children:r,...o}){return(0,t.jsxs)("div",{"data-slot":"dialog-footer",className:(0,m.cn)("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end",e),...o,children:[r,n&&(0,t.jsx)(p.Close,{render:(0,t.jsx)(g.Button,{variant:"outline"}),children:"Close"})]})},"DialogHeader",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"dialog-header",className:(0,m.cn)("flex flex-col gap-2",e),...n})},"DialogTitle",0,function({className:e,...n}){return(0,t.jsx)(p.Title,{"data-slot":"dialog-title",className:(0,m.cn)("font-heading text-base leading-none font-medium",e),...n})}],30374)},95187,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var r={callServer:function(){return i.callServer},createServerReference:function(){return s.createServerReference},findSourceMapURL:function(){return a.findSourceMapURL}};for(var o in r)Object.defineProperty(n,o,{enumerable:!0,get:r[o]});let i=e.r(32120),a=e.r(92245),s=e.r(35326)},55245,e=>{"use strict";let t={auth:"#4ea1ff",firms:"#c792ea",search:"#7bd389",storage:"#ffb86b",petitions:"#ff7a45",monitoring:"#f5b942",admin:"#ff6b9d"};e.s(["ACCESS_COLOR",0,{read:"#4ea1ff",write:"#ffb86b","read-write":"#c792ea"},"METHOD_COLOR",0,{GET:"#7bd389",POST:"#4ea1ff",PUT:"#ffb86b",PATCH:"#ffb86b",DELETE:"#ff3860"},"domainColor",0,function(e){return e&&t[e]||"#8a8a8a"},"neighborIds",0,function(e,t){let n=new Set([e]);for(let r of t)r.source===e&&n.add(r.target),r.target===e&&n.add(r.source);return n}])},9584,e=>{"use strict";let t=(0,e.i(56420).default)("database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);e.s(["Database",0,t],9584)},69253,e=>{"use strict";let t=(0,e.i(56420).default)("folder-tree",[["path",{d:"M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"hod4my"}],["path",{d:"M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"w4yl2u"}],["path",{d:"M3 5a2 2 0 0 0 2 2h3",key:"f2jnh7"}],["path",{d:"M3 3v13a2 2 0 0 0 2 2h3",key:"k8epm1"}]]);e.s(["FolderTree",0,t],69253)},48510,e=>{"use strict";let t=(0,e.i(56420).default)("map-pinned",[["path",{d:"M18 8c0 3.613-3.869 7.429-5.393 8.795a1 1 0 0 1-1.214 0C9.87 15.429 6 11.613 6 8a6 6 0 0 1 12 0",key:"11u0oz"}],["circle",{cx:"12",cy:"8",r:"2",key:"1822b1"}],["path",{d:"M8.714 14h-3.71a1 1 0 0 0-.948.683l-2.004 6A1 1 0 0 0 3 22h18a1 1 0 0 0 .948-1.316l-2-6a1 1 0 0 0-.949-.684h-3.712",key:"q8zwxj"}]]);e.s(["MapPinned",0,t],48510)},73970,e=>{"use strict";var t=e.i(43476),n=e.i(22016),r=e.i(9584),o=e.i(69253),i=e.i(48510);let a=(0,e.i(56420).default)("network",[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]]);var s=e.i(47163);let l={ROADMAP:i.MapPinned,ARCHITECTURE:a,FILES:o.FolderTree,DATABASE:r.Database};e.s(["CanvasTabs",0,function({tabs:e,active:r}){return(0,t.jsx)("div",{className:"flex items-center gap-0.5",children:e.map(e=>{let o=e.value===r,i=e.Icon??l[e.value];return(0,t.jsxs)(n.default,{href:e.href,className:(0,s.cn)("flex items-center gap-1.5 rounded-md px-2.5 py-1 text-[12px] font-medium tracking-tight transition-colors",o?"bg-white/10 text-foreground":"text-muted-foreground/80 hover:bg-white/5 hover:text-foreground"),children:[i?(0,t.jsx)(i,{className:"size-3"}):null,(0,t.jsx)("span",{children:e.label})]},e.value)})})}],73970)},80936,e=>{"use strict";var t=e.i(43476),n=e.i(71645),r=e.i(47163);e.s(["CanvasPopover",0,function({trigger:e,title:o,align:i="right",children:a}){let[s,l]=(0,n.useState)(!1),d=(0,n.useRef)(null);return(0,n.useEffect)(()=>{if(!s)return;let e=e=>{d.current?.contains(e.target)||l(!1)},t=e=>{"Escape"===e.key&&l(!1)};return window.addEventListener("mousedown",e),window.addEventListener("keydown",t),()=>{window.removeEventListener("mousedown",e),window.removeEventListener("keydown",t)}},[s]),(0,t.jsxs)("div",{ref:d,className:"relative",children:[e(s,()=>l(e=>!e)),s&&(0,t.jsxs)("div",{className:(0,r.cn)("glass absolute top-full z-30 mt-1.5 w-64 rounded-xl p-3 shadow-xl","right"===i?"right-0":"left-0"),children:[o&&(0,t.jsx)("div",{className:"mb-2 text-[10px] font-semibold uppercase tracking-wider text-muted-foreground",children:o}),a]})]})},"Chip",0,function({on:e,onClick:n,children:o,tone:i="default"}){return(0,t.jsx)("button",{type:"button",onClick:n,className:(0,r.cn)("rounded-md border px-2 py-0.5 text-[11px] font-medium transition-colors",{default:e?"border-foreground/40 bg-white/10 text-foreground":"border-white/10 text-muted-foreground hover:text-foreground",danger:e?"border-red-500/40 bg-red-500/15 text-red-300":"border-white/10 text-muted-foreground hover:text-foreground",accent:e?"border-sky-500/40 bg-sky-500/15 text-sky-300":"border-white/10 text-muted-foreground hover:text-foreground"}[i]),children:o})},"PopoverSection",0,function({title:e,children:n}){return(0,t.jsxs)("div",{className:"mb-2.5 last:mb-0",children:[(0,t.jsx)("div",{className:"mb-1 text-[10px] font-semibold uppercase tracking-wider text-muted-foreground/80",children:e}),(0,t.jsx)("div",{className:"flex flex-wrap gap-1",children:n})]})}])},47633,e=>{"use strict";var t=e.i(43476),n=e.i(71645),r=e.i(54548),o=e.i(30590),i=e.i(69846),a=e.i(76248),s=e.i(23089),l=e.i(77071),d=e.i(66595),c=e.i(12092),u=e.i(97886),h=e.i(22842),f=e.i(50513),p=e.i(18566),m=e.i(99985),g=e.i(28623),x=e.i(63676),y=e.i(50667),b=e.i(43442),v=e.i(71829),w=e.i(67881),k=e.i(62870),N=e.i(30009),S=e.i(30374),j=e.i(47163);function C({className:e,type:n,...r}){return(0,t.jsx)("input",{type:n,"data-slot":"input",className:(0,j.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...r})}function E({className:e,...n}){return(0,t.jsx)("textarea",{"data-slot":"textarea",className:(0,j.cn)("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),...n})}function M(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}e.i(74080);var _=Symbol.for("react.lazy"),A=n[" use ".trim().toString()];function P(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===_&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var T=Symbol("radix.slottable");function D(e){return n.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===T}var I=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,r)=>{var o,i;let a,s,l,d=(i=o=`Primitive.${r}`,(a=n.forwardRef((e,t)=>{let{children:r,...o}=e;if(P(r)&&"function"==typeof A&&(r=A(r._payload)),n.isValidElement(r)){var i;let e,a,s=(i=r,(a=(e=Object.getOwnPropertyDescriptor(i.props,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?i.ref:(a=(e=Object.getOwnPropertyDescriptor(i,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?i.props.ref:i.props.ref||i.ref),l=function(e,t){let n={...t};for(let r in t){let o=e[r],i=t[r];/^on[A-Z]/.test(r)?o&&i?n[r]=(...e)=>{let t=i(...e);return o(...e),t}:o&&(n[r]=o):"style"===r?n[r]={...o,...i}:"className"===r&&(n[r]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}(o,r.props);return r.type!==n.Fragment&&(l.ref=t?function(...e){return t=>{let n=!1,r=e.map(e=>{let r=M(e,t);return n||"function"!=typeof r||(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];"function"==typeof n?n():M(e[t],null)}}}}(t,s):s),n.cloneElement(r,l)}return n.Children.count(r)>1?n.Children.only(null):null})).displayName=`${i}.SlotClone`,s=a,(l=n.forwardRef((e,r)=>{let{children:o,...i}=e;P(o)&&"function"==typeof A&&(o=A(o._payload));let a=n.Children.toArray(o),l=a.find(D);if(l){let e=l.props.children,o=a.map(t=>t!==l?t:n.Children.count(e)>1?n.Children.only(null):n.isValidElement(e)?e.props.children:null);return(0,t.jsx)(s,{...i,ref:r,children:n.isValidElement(e)?n.cloneElement(e,void 0,o):null})}return(0,t.jsx)(s,{...i,ref:r,children:o})})).displayName=`${o}.Slot`,l),c=n.forwardRef((e,n)=>{let{asChild:o,...i}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(o?d:r,{...i,ref:n})});return c.displayName=`Primitive.${r}`,{...e,[r]:c}},{}),R=n.forwardRef((e,n)=>(0,t.jsx)(I.label,{...e,ref:n,onMouseDown:t=>{t.target.closest("button, input, select, textarea")||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));function z({className:e,...n}){return(0,t.jsx)(R,{"data-slot":"label",className:(0,j.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",e),...n})}R.displayName="Label";var $=e.i(95187);let O=(0,$.createServerReference)("40a9a4be96bc36d3ed6234e786be80182dd45c6c3d",$.callServer,void 0,$.findSourceMapURL,"createNodeAction"),L=(0,$.createServerReference)("60992c8fec6007bc4f80d869626294ce0f8e36730d",$.callServer,void 0,$.findSourceMapURL,"updateNodeAction");function B({open:e,onOpenChange:r,mode:o,view:i,heading:a,nodeId:s,parentId:l,position:d,defaults:c}){let u=(0,p.useRouter)(),[h,f]=(0,n.useState)(c?.title??""),[m,g]=(0,n.useState)(c?.role??""),[x,y]=(0,n.useState)(c?.plain??""),[b,N]=(0,n.useState)(c?.cluster??""),[j,M]=(0,n.useState)(c?.status??("ARCHITECTURE"===i?"REBUILD":"PENDING")),[_,A]=(0,n.useState)(!1),P="ARCHITECTURE"===i?v.ARCH_STATUSES:v.ROADMAP_STATUSES;async function T(){if(h.trim()){A(!0);try{"create"===o?await O({view:i,title:h.trim(),role:m.trim()||null,plain:x.trim()||null,cluster:b.trim()||null,parentId:l??null,status:j,x:d?.x??60,y:d?.y??60}):s&&await L(s,{title:h.trim(),role:m.trim()||null,plain:x.trim()||null,cluster:b.trim()||null,status:j}),r(!1),u.refresh()}finally{A(!1)}}}return(0,t.jsx)(S.Dialog,{open:e,onOpenChange:r,children:(0,t.jsxs)(S.DialogContent,{children:[(0,t.jsx)(S.DialogHeader,{children:(0,t.jsx)(S.DialogTitle,{children:a})}),(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)(z,{htmlFor:"nf-title",children:"Title"}),(0,t.jsx)(C,{id:"nf-title",value:h,autoFocus:!0,onChange:e=>f(e.target.value)})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)(z,{htmlFor:"nf-role",children:"Role (one line)"}),(0,t.jsx)(C,{id:"nf-role",value:m,onChange:e=>g(e.target.value)})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)(z,{htmlFor:"nf-plain",children:"Description"}),(0,t.jsx)(E,{id:"nf-plain",rows:3,value:x,onChange:e=>y(e.target.value)})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)(z,{children:"Status"}),(0,t.jsxs)(k.Select,{value:j,onValueChange:e=>null!=e&&M(e),children:[(0,t.jsx)(k.SelectTrigger,{children:(0,t.jsx)(k.SelectValue,{children:e=>v.STATUS_META[e]?.label??e})}),(0,t.jsx)(k.SelectContent,{children:P.map(e=>(0,t.jsx)(k.SelectItem,{value:e,children:v.STATUS_META[e]?.label??e},e))})]})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)(z,{htmlFor:"nf-cluster",children:"Cluster / lane"}),(0,t.jsx)(C,{id:"nf-cluster",value:b,onChange:e=>N(e.target.value)})]})]})]}),(0,t.jsxs)(S.DialogFooter,{children:[(0,t.jsx)(w.Button,{variant:"outline",onClick:()=>r(!1),children:"Cancel"}),(0,t.jsx)(w.Button,{onClick:T,disabled:_||!h.trim(),children:_?"Saving…":"Save"})]})]})})}let H=(0,$.createServerReference)("406ecc0e99c8e4d359de241abfe27b6fafbc5da814",$.callServer,void 0,$.findSourceMapURL,"acceptSuggestionAction"),F=(0,$.createServerReference)("4014d8c7ac0544438beb7b99d68767dc78561cc552",$.callServer,void 0,$.findSourceMapURL,"cancelAction"),V=(0,$.createServerReference)("401078f44d73b2dd236a525e93dcb083ffefbc51a6",$.callServer,void 0,$.findSourceMapURL,"deleteNodeAction"),X=(0,$.createServerReference)("407b4d7e76fbf9b9e732daa768a21520e321a0a6c3",$.callServer,void 0,$.findSourceMapURL,"deprioritizeAction"),Y=(0,$.createServerReference)("6069330b0ff263efb4625c72daee9d6f046442392b",$.callServer,void 0,$.findSourceMapURL,"setStatusAction");function U({view:e,selected:n,allNodes:r,onClose:o,commentsContent:i,commentsCount:a=0,activeTab:s,onTabChange:l,onAddComment:d,topOffset:c}){let u=!!i,h=s??"details";return(0,t.jsxs)(y.GlassPanel,{className:"absolute bottom-3 right-3 z-10 flex w-80 flex-col rounded-2xl",style:{top:c??12},children:[u?(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-white/10 px-1 py-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-0.5",children:[(0,t.jsx)(K,{active:"details"===h,onClick:()=>l?.("details"),children:"Details"}),(0,t.jsxs)(K,{active:"comments"===h,onClick:()=>l?.("comments"),children:["Comments",a>0&&(0,t.jsx)("span",{className:"ml-1 rounded-full bg-white/10 px-1 text-[9px] font-semibold leading-4",children:a})]})]}),(0,t.jsx)("button",{onClick:o,title:"Close panel",className:"mr-1 rounded-md p-1 text-muted-foreground transition-colors hover:bg-white/10 hover:text-foreground",children:(0,t.jsx)(x.X,{className:"size-4"})})]}):(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-white/10 px-3.5 py-2.5",children:[(0,t.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:"Details"}),(0,t.jsx)("button",{onClick:o,title:"Close panel",className:"rounded-md p-1 text-muted-foreground transition-colors hover:bg-white/10 hover:text-foreground",children:(0,t.jsx)(x.X,{className:"size-4"})})]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto",children:(0,t.jsx)("div",{className:"p-3",children:"comments"===h&&u?i:n?(0,t.jsxs)(t.Fragment,{children:[d&&(0,t.jsxs)("button",{type:"button",onClick:()=>d(n.title),className:"mb-3 flex w-full items-center justify-center gap-1.5 rounded-lg border border-white/10 bg-white/[0.03] px-3 py-1.5 text-[11px] font-medium text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:[(0,t.jsx)(m.MessageSquarePlus,{className:"size-3.5"}),"Comment on this ","ARCHITECTURE"===e?"component":"feature"]}),(0,t.jsx)(q,{node:n,view:e},n.id)]}):(0,t.jsx)(Z,{view:e,nodes:r})})})]})}function K({active:e,onClick:n,children:r}){return(0,t.jsx)("button",{type:"button",onClick:n,className:(0,j.cn)("flex items-center gap-1 rounded-md px-2.5 py-1 text-[11px] font-medium transition-colors",e?"bg-white/10 text-foreground":"text-muted-foreground hover:text-foreground"),children:r})}function q({node:e,view:r}){let o=(0,p.useRouter)(),[i,a]=(0,n.useTransition)(),[s,l]=(0,n.useState)(!1),[d,c]=(0,n.useState)(!1),u="ARCHITECTURE"===r?v.ARCH_STATUSES:v.ROADMAP_STATUSES,h=e=>a(async()=>{await e(),o.refresh()});return(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"text-xs uppercase tracking-wide text-muted-foreground",children:[(0,v.clusterLabel)(e.cluster),0===e.priority&&(0,t.jsx)("span",{className:"ml-2 text-[#ff7a90]",children:"· critical path"})]}),(0,t.jsx)("h2",{className:"mt-1 text-lg font-semibold leading-tight",children:e.title})]}),"INIT"===e.source&&(0,t.jsxs)("div",{className:"rounded-lg border border-violet-400/30 bg-violet-500/[0.06] p-2.5",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-xs font-semibold text-violet-300",children:[(0,t.jsx)(g.Sparkles,{className:"size-3.5"})," AI suggestion"]}),(0,t.jsx)("p",{className:"mt-1 text-[11px] leading-snug text-muted-foreground",children:"Suggested direction surfaced when mapping the repo. Accept to turn it into your own feature, or dismiss."}),(0,t.jsxs)("div",{className:"mt-2 flex gap-1.5",children:[(0,t.jsx)(w.Button,{size:"sm",className:"h-7 px-2.5 text-xs",disabled:i,onClick:()=>h(()=>H(e.id)),children:"Accept"}),(0,t.jsx)(w.Button,{size:"sm",variant:"outline",className:"h-7 px-2.5 text-xs text-muted-foreground",disabled:i,onClick:()=>h(()=>V(e.id)),children:"Dismiss"})]})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:"Status"}),(0,t.jsxs)(k.Select,{value:e.status,onValueChange:t=>null!=t&&h(()=>Y(e.id,t)),children:[(0,t.jsx)(k.SelectTrigger,{className:"h-8",disabled:i,children:(0,t.jsx)(k.SelectValue,{children:e=>v.STATUS_META[e]?.label??e})}),(0,t.jsx)(k.SelectContent,{children:u.map(e=>(0,t.jsx)(k.SelectItem,{value:e,children:v.STATUS_META[e]?.label??e},e))})]})]}),e.plain&&(0,t.jsx)("div",{className:"rounded-md border border-white/5 bg-card/40 px-2.5 py-2 text-sm",children:(0,t.jsx)(b.MarkdownView,{markdown:e.plain,variant:"compact",className:"text-[12.5px]"})}),e.sourceRef&&(0,t.jsx)("div",{className:"rounded-md border border-border bg-card px-2 py-1.5 font-mono text-xs text-muted-foreground",children:e.sourceRef}),e.files.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsxs)("h3",{className:"mb-1.5 text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:["Files (",e.files.length,")"]}),(0,t.jsx)("ul",{className:"space-y-0.5",children:e.files.map(e=>(0,t.jsx)("li",{children:(0,t.jsx)("button",{onClick:()=>fetch(`/api/open?path=${encodeURIComponent(e)}`).catch(()=>{}),title:`Open ${e} in editor`,className:"block w-full truncate rounded px-1.5 py-0.5 text-left font-mono text-[11px] text-muted-foreground transition-colors hover:bg-white/5 hover:text-foreground",children:e})},e))})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-1.5 pt-1",children:[(0,t.jsx)(w.Button,{size:"sm",variant:"outline",onClick:()=>l(!0),children:"Edit"}),(0,t.jsx)(w.Button,{size:"sm",variant:"outline",onClick:()=>c(!0),children:"+ Sub-node"}),(0,t.jsx)(w.Button,{size:"sm",variant:"outline",disabled:i,onClick:()=>h(()=>F(e.id)),children:"Cancel"}),(0,t.jsx)(w.Button,{size:"sm",variant:"outline",disabled:i,onClick:()=>h(()=>X(e.id)),children:"Deprioritize"}),(0,t.jsxs)(N.AlertDialog,{children:[(0,t.jsx)(N.AlertDialogTrigger,{render:(0,t.jsx)(w.Button,{size:"sm",variant:"outline",className:"text-red-300",children:"Delete"})}),(0,t.jsxs)(N.AlertDialogContent,{children:[(0,t.jsxs)(N.AlertDialogHeader,{children:[(0,t.jsxs)(N.AlertDialogTitle,{children:["Delete “",e.title,"”?"]}),(0,t.jsx)(N.AlertDialogDescription,{children:"This removes the node and all its sub-nodes. It can’t be undone."})]}),(0,t.jsxs)(N.AlertDialogFooter,{children:[(0,t.jsx)(N.AlertDialogCancel,{children:"Cancel"}),(0,t.jsx)(N.AlertDialogAction,{onClick:()=>h(()=>V(e.id)),children:"Delete"})]})]})]})]}),s&&(0,t.jsx)(B,{open:!0,onOpenChange:l,mode:"edit",view:r,heading:"Edit node",nodeId:e.id,defaults:{title:e.title,role:e.role,plain:e.plain,status:e.status,cluster:e.cluster}}),d&&(0,t.jsx)(B,{open:!0,onOpenChange:c,mode:"create",view:r,heading:"New sub-node",parentId:e.id,position:{x:e.x,y:e.y+120},defaults:{cluster:e.cluster}})]})}function Z({view:e,nodes:n}){let r=n.filter(e=>0===e.priority).length;return(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-sm font-semibold",children:"ROADMAP"===e?"Roadmap":"Architecture"}),(0,t.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:"Click a node for details and actions. Drag to rearrange — positions are saved."})]}),(0,t.jsxs)("dl",{className:"grid grid-cols-2 gap-2 text-center",children:[(0,t.jsx)(W,{label:"nodes",value:n.length}),(0,t.jsx)(W,{label:"critical",value:r})]})]})}function W({label:e,value:n}){return(0,t.jsxs)("div",{className:"rounded-md border border-border bg-card py-2",children:[(0,t.jsx)("div",{className:"text-lg font-semibold",children:n}),(0,t.jsx)("div",{className:"text-[10px] uppercase tracking-wide text-muted-foreground",children:e})]})}var G=e.i(29310),Q=e.i(55245),J=e.i(73970),ee=e.i(80936);let et=[{value:"cluster",label:"Theme"},{value:"status",label:"Status"},{value:"priority",label:"Priority"}],en=new Set(["title","role","plain","cluster","status","priority"]),er={roadmapNode:h.NodeCard,archNode:h.NodeCard},eo={deletable:f.DeletableEdge},ei={CONTAINS:{stroke:"#7c7c8a"},DEPENDS:{stroke:"#f5b942",dash:"6 4"},RELATES:{stroke:"#8a8a95",dash:"4 4"},REPLACES:{stroke:"#ff6b9d"}};e.s(["MapClient",0,function({view:e,nodes:h,edges:f,workOnNextId:p=null,embedded:m=!1,commentsContent:g,commentsCount:x=0,controlRef:y,onAskAgent:b,onAddComment:w}){let k=(0,n.useMemo)(()=>h.map(e=>({id:e.id,type:"ROADMAP"===e.view?"roadmapNode":"archNode",position:{x:e.x,y:e.y},data:{title:e.title,role:e.role,plain:e.plain,status:e.status,priority:e.priority,cluster:e.cluster,view:e.view,source:e.source,sourceRef:e.sourceRef,isCriterion:e.isCriterion,isChild:null!=e.parentId,parentId:e.parentId,signals:e.signals}})),[h]),N=(0,n.useMemo)(()=>{let e;return e=new Set(h.map(e=>e.id)),[...h.filter(t=>t.parentId&&e.has(t.parentId)).map(e=>({id:`c-${e.id}`,source:e.parentId,sourceHandle:"sb",target:e.id,targetHandle:"tt",type:"smoothstep",style:{stroke:ei.CONTAINS.stroke}})),...f.filter(t=>e.has(t.fromId)&&e.has(t.toId)).map(e=>{let t=ei[e.kind]??ei.RELATES,n="DEPENDS"===e.kind?"depends on":void 0;return{id:e.id,source:e.fromId,sourceHandle:e.sourceHandle??void 0,target:e.toId,targetHandle:e.targetHandle??void 0,label:e.label??n,type:"deletable",markerEnd:{type:o.MarkerType.ArrowClosed,color:t.stroke},style:{stroke:t.stroke,strokeDasharray:t.dash}}})]},[h,f]),[S,C]=(0,n.useState)(k),[E,M]=(0,n.useState)(N),[_,A]=(0,n.useState)(null),[P,T]=(0,n.useState)(null),[D,I]=(0,n.useState)(null),[R,z]=(0,n.useState)(!1),[$,O]=(0,n.useState)("details"),L=(0,n.useRef)(!1),B=(0,n.useRef)("details");(0,n.useEffect)(()=>{L.current=R},[R]),(0,n.useEffect)(()=>{B.current=$},[$]),(0,n.useEffect)(()=>{if(y)return y.current={open:()=>{if(L.current){z(!1),O("details");return}z(!0),O("details")},close:()=>{z(!1),O("details")},openComments:()=>{z(!0),O("comments")}},()=>{y&&(y.current=null)}},[y]);let[H,F]=(0,n.useState)(new Set),[V,X]=(0,n.useState)(null),[Y,K]=(0,n.useState)(!1),q=(0,n.useRef)(0),Z=(0,n.useRef)(null);(0,n.useEffect)(()=>C(k),[k]),(0,n.useEffect)(()=>M(N),[N]);let W=(0,n.useCallback)((e,t,n)=>{C(n=>n.map(n=>n.id===e?{...n,data:{...n.data,...t}}:n)),n&&fetch(`/api/nodes/${e}`,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify(Object.fromEntries(Object.entries(t).filter(([e])=>en.has(e))))})},[]),ea=(0,n.useMemo)(()=>Array.from(new Set(S.map(e=>e.data.cluster).filter(e=>!!e))).sort(),[S]),es=(0,n.useCallback)(e=>F(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n}),[]),el=(0,n.useCallback)(e=>{A(e),z(!0),O("details")},[]),ed=(0,n.useCallback)(e=>{C(t=>t.filter(t=>t.id!==e)),A(t=>t===e?null:t),fetch(`/api/nodes/${e}`,{method:"DELETE"})},[]),ec=(0,n.useCallback)(async()=>{let t=q.current++%8*28,n=80+t,r=80+t;try{let t=await fetch("/api/nodes",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({view:e,title:"New node",status:"ARCHITECTURE"===e?"REBUILD":"PENDING",x:n,y:r})});if(!t.ok)return;let o=await t.json();C(t=>[...t,{id:o.id,type:"ROADMAP"===e?"roadmapNode":"archNode",position:{x:n,y:r},data:{title:o.title,role:o.role,plain:o.plain,status:o.status,priority:o.priority,cluster:o.cluster,view:o.view,source:o.source,sourceRef:o.sourceRef,isCriterion:!1,isChild:null!=o.parentId,parentId:o.parentId??null}}]),F(e=>new Set(e).add(o.id)),X(o.id),A(o.id)}catch{}},[e]),eu=(0,n.useMemo)(()=>({view:e,categories:ea,statuses:"ARCHITECTURE"===e?v.ARCH_STATUSES:v.ROADMAP_STATUSES,patch:W,isExpanded:e=>H.has(e),toggleExpand:es,openDetailed:el,removeNode:ed,editingTitleId:V,onAskAgent:b}),[e,ea,W,H,es,el,ed,V,b]),[eh,ef]=(0,n.useState)(null),[ep,em]=(0,n.useState)(""),[eg,ex]=(0,n.useState)(new Set),[ey,eb]=(0,n.useState)(new Set),[ev,ew]=(0,n.useState)(new Set),ek=(0,n.useMemo)(()=>Array.from(new Set(h.map(e=>e.status))),[h]),eN=(0,n.useMemo)(()=>Array.from(new Set(h.map(e=>e.cluster).filter(e=>!!e))).sort(),[h]),eS=(0,n.useMemo)(()=>Array.from(new Set(h.map(e=>e.priority))).sort((e,t)=>e-t),[h]),ej=(0,n.useCallback)(e=>(!eg.size||!!eg.has(e.status))&&(!ey.size||!!e.cluster&&!!ey.has(e.cluster))&&(!ev.size||!!ev.has(e.priority)),[eg,ey,ev]),eC=eg.size+ey.size+ev.size,eE=(0,n.useCallback)(()=>{ex(new Set),eb(new Set),ew(new Set)},[]),eM=(0,n.useMemo)(()=>S.map(e=>({...e,hidden:!ej(e.data)})),[S,ej]),e_=(0,n.useMemo)(()=>new Set(eM.filter(e=>e.hidden).map(e=>e.id)),[eM]),eA=(0,n.useMemo)(()=>E.map(e=>({...e,hidden:e_.has(e.source)||e_.has(e.target)})),[E,e_]),eP=(0,n.useMemo)(()=>{if(P){let e=eA.find(e=>e.id===P);return e?new Set([e.source,e.target]):null}return _?(0,Q.neighborIds)(_,eA.filter(e=>!e.hidden)):null},[_,P,eA]),eT=(0,n.useMemo)(()=>eM.map(e=>{let t=p&&e.id===p?{...e,data:{...e.data,isNext:!0}}:e;return!eP||t.hidden?t:{...t,style:{...t.style,opacity:eP.has(e.id)?1:.45,transition:"opacity 120ms"}}}),[eM,eP,p]),eD=(0,n.useMemo)(()=>{if(!eh||"ROADMAP"!==e)return[];let t=new Map(eT.map(e=>[e.id,e])),n=new Map;for(let e of eT){var r;if(e.hidden)continue;let o=(r=((e.data.parentId?t.get(e.data.parentId):void 0)??e).data,"status"===eh?v.STATUS_META[r.status]?.label??r.status:"priority"===eh?`P${r.priority}`:r.cluster?.trim()||"—"),i=e.measured?.width??(e.data.isChild?224:256),a=e.measured?.height??96,s=e.position.x,l=e.position.y,d=n.get(o);d?(d.minX=Math.min(d.minX,s),d.minY=Math.min(d.minY,l),d.maxX=Math.max(d.maxX,s+i),d.maxY=Math.max(d.maxY,l+a)):n.set(o,{label:o,minX:s,minY:l,maxX:s+i,maxY:l+a})}return Array.from(n.values()).map(e=>({label:e.label,x:e.minX-20,y:e.minY-20-26,w:e.maxX-e.minX+40,h:e.maxY-e.minY+40+26}))},[eT,eh,e]),eI=(0,n.useMemo)(()=>{let e=_??D;return P||e?eA.map(t=>t.hidden?t:(P?t.id===P:t.source===e||t.target===e)?{...t,zIndex:20,style:{...t.style,opacity:1,strokeWidth:2.5}}:{...t,selectable:!1,label:void 0,markerEnd:void 0,style:{...t.style,opacity:.06}}):eA.map(e=>e.hidden?e:{...e,label:void 0,style:{...e.style,opacity:.18}})},[eA,_,P,D]),eR=(0,n.useCallback)(e=>C(t=>(0,r.applyNodeChanges)(e,t)),[]),ez=(0,n.useCallback)(e=>M(t=>(0,r.applyEdgeChanges)(e,t)),[]),e$=(0,n.useCallback)(async e=>{if(!e.source||!e.target||e.source===e.target)return;let t=await fetch("/api/edges",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({fromId:e.source,toId:e.target,kind:"DEPENDS",sourceHandle:e.sourceHandle??null,targetHandle:e.targetHandle??null})});if(!t.ok)return;let n=await t.json(),r=ei.DEPENDS;M(t=>t.some(e=>e.id===n.id)?t:[...t,{id:n.id,source:n.fromId,sourceHandle:e.sourceHandle??void 0,target:n.toId,targetHandle:e.targetHandle??void 0,label:"depends on",type:"deletable",markerEnd:{type:o.MarkerType.ArrowClosed,color:r.stroke},style:{stroke:r.stroke,strokeDasharray:r.dash}}])},[]),eO=(0,n.useCallback)(async(t,n,r)=>{let o=await fetch("/api/nodes",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({view:e,title:"New node",parentId:t.id,cluster:t.data.cluster??null,status:"ARCHITECTURE"===e?"REBUILD":"PENDING",x:n,y:r})});if(!o.ok)return;let i=await o.json();C(o=>[...o,{id:i.id,type:"ROADMAP"===e?"roadmapNode":"archNode",position:{x:n,y:r},data:{title:i.title,role:i.role,plain:i.plain,status:i.status,priority:i.priority,cluster:i.cluster,view:i.view,source:i.source,sourceRef:i.sourceRef,isCriterion:!1,isChild:!0,parentId:t.id}}]),M(e=>[...e,{id:`c-${i.id}`,source:t.id,target:i.id,type:"smoothstep",style:{stroke:ei.CONTAINS.stroke}}]),F(e=>new Set(e).add(i.id)),X(i.id),A(i.id)},[e]),eL=(0,n.useCallback)(async(e,t)=>{if(t.isValid||!t.fromNode||!Z.current)return;let n=e.changedTouches,r=n?.[0]?.clientX??e.clientX,o=n?.[0]?.clientY??e.clientY,{x:i,y:a}=Z.current.screenToFlowPosition({x:r,y:o});await eO(t.fromNode,i,a)},[eO]);(0,n.useEffect)(()=>{if(!Y)return;let e=e=>{"Escape"===e.key&&K(!1)};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[Y]);let eB=(0,n.useMemo)(()=>h.find(e=>e.id===_)??null,[h,_]),eH=(0,n.useCallback)((e,t,n)=>{fetch(`/api/nodes/${e}/position`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({x:t,y:n})})},[]),eF=(0,n.useCallback)(e=>{A(e),T(null);let t=Z.current?.getNode(e);if(!t||!Z.current)return;let n=t.measured?.width??128,r=t.measured?.height??48;Z.current.setCenter(t.position.x+n/2,t.position.y+r/2,{zoom:1.2,duration:600})},[]),eV=(0,n.useCallback)(e=>{let t=function(e,t,n={}){let r=n.colW??320,o=n.rowH??150,i=n.childIndent??24,a=n.laneGap??56,s=n.bandGap??110,l=n.maxCols??4,d=n.maxBandW??6*r,c=new Set(e.map(e=>e.id)),u=e=>!e.parentId||!c.has(e.parentId),h=e.filter(u),f=new Map;for(let t of e){if(u(t))continue;let e=f.get(t.parentId);e?e.push(t):f.set(t.parentId,[t])}let p="status"===t?e=>e.status:"priority"===t?e=>String(e.priority):e=>(e.cluster??"").trim()||"—",m=new Map;for(let e of h){let t=p(e),n=m.get(t);n?n.push(e):m.set(t,[e])}let g=(function(e,t,n){if("status"===e)return[...v.STATUS_LANE_ORDER];if("priority"===e)return["0","1","2","3"];let r=Array.from(new Set(t.map(n))),o=r.filter(e=>"—"!==e).sort();return r.includes("—")?[...o,"—"]:o})(t,h,p).filter(e=>m.has(e)),x=new Map,y=0,b=0,w=0;for(let e of g){let t=m.get(e),n=Math.max(1,Math.min(l,Math.ceil(Math.sqrt(t.length)))),c=n*r;y>0&&y+c>d&&(y=0,b+=w+s,w=0);let u=Array(n).fill(0);for(let e of t){let t=0;for(let e=1;e<n;e++)u[e]<u[t]&&(t=e);let a=y+t*r,s=b+u[t]*o;x.set(e.id,{x:a,y:s});let l=f.get(e.id)??[];l.forEach((e,t)=>{x.set(e.id,{x:a+i,y:s+(t+1)*o})}),u[t]+=1+l.length}w=Math.max(w,u.reduce((e,t)=>Math.max(e,t),0)*o),y+=c+a}return x}(S.map(e=>({id:e.id,parentId:e.data.parentId??null,cluster:e.data.cluster,status:e.data.status,priority:e.data.priority})),e);C(e=>e.map(e=>{let n=t.get(e.id);return n?{...e,position:n}:e}));let n=Array.from(t,([e,t])=>({id:e,x:t.x,y:t.y}));n.length&&fetch("/api/nodes/positions",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({batch:n})}),ef(e),requestAnimationFrame(()=>Z.current?.fitView({duration:600,padding:.2}))},[S]),eX=(0,n.useMemo)(()=>{let e=ep.trim().toLowerCase();return e?S.filter(t=>ej(t.data)&&t.data.title.toLowerCase().includes(e)).slice(0,8):[]},[S,ep,ej]);function eY(e,t){t(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}return(0,t.jsx)(G.NodeEditContext.Provider,{value:eu,children:(0,t.jsxs)("div",{className:(0,j.cn)("relative w-full",m?"h-full":"h-screen"),children:[(0,t.jsxs)(r.ReactFlow,{nodes:eT,edges:eI,nodeTypes:er,edgeTypes:eo,connectionMode:o.ConnectionMode.Loose,connectionLineStyle:{stroke:"var(--accent-2,#ff7a45)",strokeWidth:1.5,strokeDasharray:"4 4"},onInit:e=>{Z.current=e},onNodesChange:eR,onEdgesChange:ez,onConnect:e$,onConnectEnd:eL,onNodeMouseEnter:(e,t)=>I(t.id),onNodeMouseLeave:()=>I(null),onEdgesDelete:e=>{for(let t of e)t.id.startsWith("c-")||fetch(`/api/edges/${t.id}`,{method:"DELETE"})},onNodesDelete:e=>{for(let t of e)fetch(`/api/nodes/${t.id}`,{method:"DELETE"}),A(e=>e===t.id?null:e)},onNodeClick:(e,t)=>{if(Y){if(K(!1),t.data.isChild)return;eO(t,t.position.x+300,t.position.y+60);return}if(A(t.id),T(null),O("details"),m){let t=e.target;t?.closest("input, textarea, select, button, [role='combobox']")||z(!0)}},onEdgeClick:(e,t)=>{T(t.id),A(null),O("details")},onPaneClick:()=>{Y?K(!1):(A(null),T(null))},onNodeDragStop:(e,t)=>eH(t.id,t.position.x,t.position.y),deleteKeyCode:["Backspace","Delete"],colorMode:"dark",fitView:!0,minZoom:.2,panOnScroll:!0,zoomActivationKeyCode:["Meta","Control"],proOptions:{hideAttribution:!0},children:[(0,t.jsx)(r.Background,{gap:22,color:"#2a2a32"}),eD.length>0&&(0,t.jsx)(r.ViewportPortal,{children:eD.map(e=>(0,t.jsx)("div",{style:{position:"absolute",transform:`translate(${e.x}px, ${e.y}px)`,width:e.w,height:e.h,pointerEvents:"none",zIndex:0},className:"rounded-2xl border border-white/[0.08] bg-white/[0.015]",children:(0,t.jsx)("div",{className:"px-3 py-1 text-[11px] font-semibold uppercase tracking-wide text-muted-foreground/70",children:e.label})},e.label))}),(0,t.jsx)(r.Controls,{position:"bottom-right",className:"!overflow-hidden !rounded-xl !border !border-white/10 [&_button]:!border-white/10 [&_button]:!bg-card/70 [&_button]:!text-foreground [&_button]:!backdrop-blur"}),(0,t.jsx)(r.Panel,{position:"bottom-right",style:{marginBottom:152},children:(0,t.jsx)(ee.CanvasPopover,{title:"Legend",trigger:(e,n)=>(0,t.jsx)("button",{type:"button",onClick:n,title:"Legend",className:(0,j.cn)("glass flex size-8 items-center justify-center rounded-lg transition-colors",e?"text-foreground":"text-muted-foreground hover:text-foreground"),children:(0,t.jsx)(a.HelpCircle,{className:"size-4"})}),children:(0,t.jsxs)("ul",{className:"space-y-1.5 text-[10.5px] text-muted-foreground",children:[(0,t.jsxs)("li",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"inline-block rounded bg-sky-500/15 px-1 py-0.5 text-[9px] font-semibold uppercase tracking-wide text-sky-300",children:"feature"}),(0,t.jsx)("span",{children:"top-level card · can have sub-tasks"})]}),(0,t.jsxs)("li",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"inline-block rounded bg-zinc-500/15 px-1 py-0.5 text-[9px] font-semibold uppercase tracking-wide text-zinc-300",children:"sub-task"}),(0,t.jsx)("span",{children:"child of a feature"})]}),(0,t.jsxs)("li",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"inline-block h-px w-6 bg-[#33333a]"}),(0,t.jsx)("span",{children:"contains · drag the bottom handle to empty canvas"})]}),(0,t.jsxs)("li",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"inline-block h-0 w-6 border-t border-dashed",style:{borderColor:"#f5b942"}}),(0,t.jsx)("span",{children:"depends on · drag between two cards"})]})]})})}),!m&&(0,t.jsx)(r.MiniMap,{pannable:!0,zoomable:!0,position:"bottom-left",style:{width:140,height:90},className:"!rounded-xl !border !border-white/10 !bg-card/50 !backdrop-blur",nodeColor:e=>e.data?.priority===0?"#ff3860":"#555"}),(0,t.jsxs)(r.Panel,{position:"bottom-center",className:"!mb-4 flex flex-col items-center gap-2",children:[Y&&(0,t.jsxs)("div",{className:"glass rounded-full px-3 py-1 text-[11px] text-muted-foreground",children:["Click a ","ARCHITECTURE"===e?"component":"feature"," to attach the"," ","ARCHITECTURE"===e?"sub-component":"sub-task"," · Esc to cancel"]}),"ROADMAP"===e&&(0,t.jsxs)("div",{className:"glass flex items-center gap-1 rounded-full p-1",children:[(0,t.jsx)("span",{className:"pl-2 pr-0.5 text-[11px] text-muted-foreground",children:"Group by"}),et.map(e=>(0,t.jsx)("button",{onClick:()=>eV(e.value),title:`Arrange features into lanes by ${e.label.toLowerCase()}`,className:(0,j.cn)("h-7 rounded-full px-2.5 text-[11px] font-medium transition-colors",eh===e.value?"bg-white/[0.12] text-foreground":"text-muted-foreground hover:bg-white/[0.06] hover:text-foreground"),children:e.label},e.value))]}),(0,t.jsxs)("div",{className:"glass flex items-center gap-1 rounded-full p-1",children:[(0,t.jsxs)("button",{onClick:()=>void ec(),title:"ARCHITECTURE"===e?"Add component":"Add feature",className:"flex h-8 items-center gap-1.5 rounded-full px-3 text-[12px] font-medium text-foreground transition-colors hover:bg-white/[0.06]",children:[(0,t.jsx)(l.Plus,{className:"size-3.5 text-[var(--accent-2,#ff7a45)]"}),"ARCHITECTURE"===e?"Component":"Feature"]}),(0,t.jsx)("span",{"aria-hidden":!0,className:"mx-0.5 h-5 w-px bg-white/10"}),(0,t.jsxs)("button",{onClick:()=>K(e=>!e),title:"ARCHITECTURE"===e?"Add sub-component (click a component next)":"Add sub-task (click a feature next)",className:(0,j.cn)("flex h-8 items-center gap-1.5 rounded-full px-3 text-[12px] font-medium transition-colors",Y?"bg-white/[0.1] text-foreground":"text-muted-foreground hover:bg-white/[0.06] hover:text-foreground"),children:[(0,t.jsx)(i.GitBranch,{className:"size-3.5"}),"ARCHITECTURE"===e?"Sub-component":"Sub-task"]})]})]}),!m&&(0,t.jsx)(r.Panel,{position:"top-center",className:"glass rounded-full px-1 py-0.5",children:(0,t.jsx)(J.CanvasTabs,{active:e,tabs:[{value:"ROADMAP",label:"Roadmap",href:"/map?view=ROADMAP"},{value:"ARCHITECTURE",label:"Architecture",href:"/map?view=ARCHITECTURE"},{value:"FILES",label:"Files",href:"/map?view=FILES"},{value:"DATABASE",label:"Database",href:"/map?view=DATABASE"}]})}),(0,t.jsxs)(r.Panel,{position:"top-right",className:(0,j.cn)("flex items-center gap-1 transition-[margin] duration-200",R&&"!mr-[332px]",m&&"hidden"),children:[(0,t.jsxs)(ee.CanvasPopover,{title:"Search",trigger:(e,n)=>(0,t.jsx)("button",{type:"button",onClick:n,title:"Search features",className:(0,j.cn)("glass flex size-8 items-center justify-center rounded-lg transition-colors",e?"text-foreground":"text-muted-foreground hover:text-foreground"),children:(0,t.jsx)(d.Search,{className:"size-4"})}),children:[(0,t.jsx)("input",{autoFocus:!0,value:ep,onChange:e=>em(e.target.value),placeholder:"Find a feature…",className:"w-full rounded-md border border-white/10 bg-white/[0.04] px-2 py-1 text-[12px] outline-none placeholder:text-muted-foreground/50 focus:bg-white/[0.08]"}),(0,t.jsxs)("div",{className:"mt-2 max-h-64 space-y-0.5 overflow-y-auto",children:[ep.trim()&&0===eX.length&&(0,t.jsx)("div",{className:"px-1 py-1 text-[11px] text-muted-foreground",children:"No matches"}),eX.map(e=>(0,t.jsx)("button",{type:"button",onClick:()=>eF(e.id),className:"block w-full truncate rounded-md px-2 py-1 text-left text-[12px] text-muted-foreground transition-colors hover:bg-white/5 hover:text-foreground",children:e.data.title},e.id))]})]}),"ROADMAP"===e&&p&&(0,t.jsx)("button",{type:"button",onClick:()=>eF(p),title:"Jump to the next feature to work on",className:"glass flex size-8 items-center justify-center rounded-lg text-emerald-300 transition-colors hover:text-emerald-200",children:(0,t.jsx)(u.Target,{className:"size-4"})}),(0,t.jsxs)(ee.CanvasPopover,{title:"Filters",trigger:(e,n)=>(0,t.jsxs)("button",{type:"button",onClick:n,title:"Filters",className:(0,j.cn)("glass relative flex size-8 items-center justify-center rounded-lg transition-colors",e||eC>0?"text-foreground":"text-muted-foreground hover:text-foreground"),children:[(0,t.jsx)(c.SlidersHorizontal,{className:"size-4"}),eC>0&&(0,t.jsx)("span",{className:"absolute -right-1 -top-1 flex h-4 min-w-4 items-center justify-center rounded-full bg-[var(--accent-2,#ff7a45)] px-1 text-[9px] font-semibold text-white",children:eC})]}),children:[ek.length>0&&(0,t.jsx)(ee.PopoverSection,{title:"Status",children:ek.map(e=>(0,t.jsx)(ee.Chip,{on:eg.has(e),onClick:()=>eY(e,ex),children:v.STATUS_META[e]?.label??e},e))}),eN.length>0&&(0,t.jsx)(ee.PopoverSection,{title:"Cluster",children:eN.map(e=>(0,t.jsx)(ee.Chip,{on:ey.has(e),onClick:()=>eY(e,eb),children:e},e))}),eS.length>0&&(0,t.jsx)(ee.PopoverSection,{title:"Priority",children:eS.map(e=>(0,t.jsxs)(ee.Chip,{on:ev.has(e),onClick:()=>eY(e,ew),children:["P",e]},e))}),eC>0&&(0,t.jsx)("button",{type:"button",onClick:eE,className:"mt-1 w-full rounded-md border border-white/10 px-2 py-1 text-[11px] font-medium text-muted-foreground transition-colors hover:bg-white/5 hover:text-foreground",children:"clear filters"})]}),!R&&(0,t.jsx)("button",{onClick:()=>{z(!0),O("details")},title:"Show panel",className:"glass flex size-8 items-center justify-center rounded-lg text-muted-foreground transition-colors hover:text-foreground",children:(0,t.jsx)(s.PanelRight,{className:"size-4"})})]})]}),R&&(0,t.jsx)(U,{view:e,selected:eB,allNodes:h,onClose:()=>{z(!1),O("details")},commentsContent:g,commentsCount:x,activeTab:$,onTabChange:O,onAddComment:w,topOffset:m?64:void 0})]})})}],47633)},19205,66817,97109,74466,34732,22851,e=>{"use strict";var t=e.i(43476),n=e.i(71645),r=e.i(56420);let o=(0,r.default)("key-round",[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]]),i=(0,r.default)("link-2",[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]]);var a=e.i(77071),s=e.i(73474),l=e.i(63676),d=e.i(47163),c=e.i(55245);let u=(0,n.createContext)(null);function h(){let e=(0,n.useContext)(u);if(!e)throw Error("useDbEdit must be used inside DbEditContext");return e}e.s(["DbEditContext",0,u,"useDbEdit",0,h],66817);var f=e.i(56504);let p={danger:"bg-red-500/15 text-red-300",warn:"bg-amber-500/15 text-amber-300"};function m({badges:e,className:n}){return e.length?(0,t.jsx)("span",{className:(0,d.cn)("flex shrink-0 items-center gap-0.5",n),children:e.map(e=>(0,t.jsx)("span",{title:e.title,className:(0,d.cn)("rounded px-1 text-[8px] font-semibold uppercase tracking-wide",p[e.tone]),children:e.label},e.label))}):null}let g=/pass(word)?|token|secret|api[_-]?key|credential|priv(ate)?[_-]?key|hash|salt/i,x=/auth|login|logout|session|token|password|oauth|sso|credential/i,y="nodrag nopan",b=f.FourDotHandles;e.s(["DbTableNode",0,function({id:e,data:r,selected:u}){var f;let p,x,v="DRAFT"===r.source,w="added"===r.diffStatus?"#7bd389":"modified"===r.diffStatus?"#ffb86b":"#4ea1ff",k="added"===r.diffStatus?"new":"modified"===r.diffStatus?"changed":"draft",N=r.diffChanges?.length?r.diffChanges.join("\n"):"draft",S=v?w:(0,c.domainColor)(r.domain),j=(f={domain:r.domain,columns:r.columns},p=[],(x=f.columns.filter(e=>g.test(e.name)).map(e=>e.name)).length&&p.push({label:"secrets",tone:"danger",title:`stores credentials: ${x.join(", ")}`}),f.domain&&/auth/i.test(f.domain)&&p.push({label:"auth",tone:"warn",title:"auth-domain table"}),p),C=h(),[E,M]=(0,n.useState)(r.name),[_,A]=(0,n.useState)(r.columns),[P,T]=(0,n.useState)(!1);(0,n.useEffect)(()=>{M(r.name),A(r.columns)},[r.rev]);let D=e=>e.stopPropagation(),I=t=>{A(t),C.patchTable(e,{columns:t})};return v?(0,t.jsxs)("div",{className:(0,d.cn)("w-[252px] overflow-hidden rounded-md border border-dashed bg-card text-card-foreground shadow-sm",u&&"ring-2 ring-[var(--accent,#f5b942)]"),style:{borderColor:`${w}88`},children:[(0,t.jsx)(b,{}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5 px-2 py-1.5",style:{background:`${S}1f`},children:[(0,t.jsx)("span",{title:N,className:"inline-block size-1.5 shrink-0 rounded-full",style:{background:w}}),(0,t.jsx)("input",{value:E,onChange:e=>M(e.target.value),onBlur:()=>{let t=E.trim();t&&t!==r.name&&C.patchTable(e,{name:t})},onKeyDown:e=>{D(e),"Enter"===e.key&&e.currentTarget.blur()},placeholder:"table",className:(0,d.cn)(y,"min-w-0 flex-1 bg-transparent font-mono text-sm font-semibold outline-none")}),(0,t.jsx)(m,{badges:j}),(0,t.jsx)("span",{title:N,className:"shrink-0 rounded px-1 text-[9px] uppercase tracking-wide",style:{background:`${w}26`,color:w},children:k}),(0,t.jsx)("button",{type:"button",onClick:t=>{D(t),P?C.deleteTable(e):T(!0)},onBlur:()=>T(!1),title:"Delete table",className:(0,d.cn)(y,"shrink-0 transition-colors",P?"text-red-300":"text-muted-foreground hover:text-red-300"),children:(0,t.jsx)(s.Trash2,{className:"size-3"})})]}),(0,t.jsxs)("div",{className:"divide-y divide-border/40",children:[_.map((e,n)=>(0,t.jsxs)("div",{className:"flex items-center gap-1 px-2 py-0.5 text-[11px]",children:[(0,t.jsx)("button",{type:"button",onClick:e=>{D(e),I(_.map((e,t)=>t===n?{...e,isPk:!e.isPk}:e))},title:"Primary key",className:(0,d.cn)(y,"shrink-0",e.isPk?"text-amber-400":"text-muted-foreground/40 hover:text-amber-400"),children:(0,t.jsx)(o,{className:"size-3"})}),(0,t.jsx)("button",{type:"button",onClick:e=>{D(e),I(_.map((e,t)=>t===n?{...e,isFk:!e.isFk}:e))},title:"Foreign key",className:(0,d.cn)(y,"shrink-0",e.isFk?"text-sky-400":"text-muted-foreground/40 hover:text-sky-400"),children:(0,t.jsx)(i,{className:"size-3"})}),(0,t.jsx)("input",{value:e.name,onChange:e=>A(t=>t.map((t,r)=>r===n?{...t,name:e.target.value}:t)),onBlur:()=>I(_),onKeyDown:D,placeholder:"column",className:(0,d.cn)(y,"min-w-0 flex-1 bg-transparent font-mono outline-none")}),(0,t.jsx)("input",{value:e.type,onChange:e=>A(t=>t.map((t,r)=>r===n?{...t,type:e.target.value}:t)),onBlur:()=>I(_),onKeyDown:D,placeholder:"type",className:(0,d.cn)(y,"w-16 shrink-0 bg-transparent text-right font-mono text-[10px] text-muted-foreground outline-none")}),(0,t.jsx)("button",{type:"button",onClick:e=>{D(e),I(_.filter((e,t)=>t!==n))},title:"Remove column",className:(0,d.cn)(y,"shrink-0 text-muted-foreground/40 hover:text-red-300"),children:(0,t.jsx)(l.X,{className:"size-3"})})]},n)),(0,t.jsxs)("button",{type:"button",onClick:e=>{D(e),I([..._,{name:"",type:"text",isPk:!1,isFk:!1,nullable:!0,note:null}])},className:(0,d.cn)(y,"flex w-full items-center gap-1 px-2 py-1 text-[10px] text-muted-foreground hover:text-foreground"),children:[(0,t.jsx)(a.Plus,{className:"size-3"})," column"]})]})]}):(0,t.jsxs)("div",{className:(0,d.cn)("w-[232px] overflow-hidden rounded-md border bg-card text-card-foreground shadow-sm",u&&"ring-2 ring-[var(--accent,#f5b942)]"),style:{borderColor:`${S}55`},children:[(0,t.jsx)(b,{}),(0,t.jsxs)("div",{className:"flex items-center justify-between px-2.5 py-1.5",style:{background:`${S}1f`},children:[(0,t.jsxs)("span",{className:"flex items-center gap-1.5 font-mono text-sm font-semibold",children:["INTROSPECTION"===r.source&&(0,t.jsx)("span",{title:"live — derived from your code",className:"inline-block size-1.5 rounded-full bg-emerald-400"}),r.name]}),(0,t.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,t.jsx)(m,{badges:j}),r.domain&&(0,t.jsx)("span",{className:"text-[10px] uppercase tracking-wide",style:{color:S},children:r.domain})]})]}),(0,t.jsx)("div",{className:"divide-y divide-border/40",children:r.columns.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-1.5 px-2.5 py-1 text-[11px]",children:[e.isPk?(0,t.jsx)(o,{className:"size-3 shrink-0 text-amber-400"}):e.isFk?(0,t.jsx)(i,{className:"size-3 shrink-0 text-sky-400"}):(0,t.jsx)("span",{className:"size-3 shrink-0"}),(0,t.jsx)("span",{className:(0,d.cn)("font-mono",e.isPk&&"font-semibold"),children:e.name}),(0,t.jsx)("span",{className:"ml-auto truncate font-mono text-[10px] text-muted-foreground",children:e.type})]},e.name))})]})}],19205);let v="nodrag nopan",w=["GET","POST","PUT","PATCH","DELETE"];e.s(["EndpointNode",0,function({id:e,data:r,selected:o}){var i;let a,l=c.METHOD_COLOR[r.method]??"#8a8a8a",u="DRAFT"===r.source,p="added"===r.diffStatus?"#7bd389":"modified"===r.diffStatus?"#ffb86b":"#4ea1ff",g="added"===r.diffStatus?"new":"modified"===r.diffStatus?"changed":"draft",y=r.diffChanges?.length?r.diffChanges.join("\n"):"draft",b=(i={method:r.method,domain:r.domain,path:r.path},a=[],/^delete$/i.test(i.method.trim())&&a.push({label:"DELETE",tone:"danger",title:"destructive: deletes data"}),(i.domain&&/auth/i.test(i.domain)||x.test(i.path))&&a.push({label:"auth",tone:"warn",title:"auth-related endpoint"}),a),k=h(),[N,S]=(0,n.useState)(r.path),[j,C]=(0,n.useState)(!1);(0,n.useEffect)(()=>{S(r.path)},[r.rev]);let E=e=>e.stopPropagation();return(0,t.jsxs)("div",{className:(0,d.cn)("group flex w-[240px] items-center gap-2 rounded-md border bg-card px-2.5 py-1.5 text-card-foreground shadow-sm",u?"border-dashed":"border-border",o&&"ring-2 ring-[var(--accent,#f5b942)]"),style:u?{borderColor:`${p}88`,background:`${p}0f`}:void 0,children:[(0,t.jsx)(f.FourDotHandles,{}),"INTROSPECTION"===r.source&&(0,t.jsx)("span",{title:"live — derived from your code",className:"inline-block size-1.5 shrink-0 rounded-full bg-emerald-400"}),u?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("select",{value:r.method,onChange:t=>k.patchEndpoint(e,{method:t.target.value}),onPointerDown:E,className:(0,d.cn)(v,"shrink-0 rounded bg-transparent text-[10px] font-bold outline-none"),style:{color:l},title:"Method",children:w.map(e=>(0,t.jsx)("option",{value:e,className:"bg-card text-foreground",children:e},e))}),(0,t.jsx)("input",{value:N,onChange:e=>S(e.target.value),onBlur:()=>{let t=N.trim();t&&t!==r.path&&k.patchEndpoint(e,{path:t})},onKeyDown:e=>{E(e),"Enter"===e.key&&e.currentTarget.blur()},className:(0,d.cn)(v,"min-w-0 flex-1 bg-transparent font-mono text-[11px] outline-none")}),(0,t.jsx)(m,{badges:b}),(0,t.jsx)("span",{title:y,className:"shrink-0 rounded px-1 py-0.5 text-[8px] font-semibold uppercase",style:{background:`${p}26`,color:p},children:g}),(0,t.jsx)("button",{type:"button",onClick:t=>{E(t),j?k.deleteEndpoint(e):C(!0)},onBlur:()=>C(!1),title:"Delete",className:(0,d.cn)(v,"shrink-0 transition-colors",j?"text-red-300":"text-muted-foreground hover:text-red-300"),children:(0,t.jsx)(s.Trash2,{className:"size-3"})})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"rounded px-1.5 py-0.5 text-[10px] font-bold",style:{background:`${l}22`,color:l},children:r.method}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px]",children:r.path}),(0,t.jsx)(m,{badges:b}),(0,t.jsx)("button",{type:"button",onClick:t=>{E(t),j?k.deleteRealEndpoint(e):C(!0)},onBlur:()=>C(!1),title:j?"Click again to delete":"Delete endpoint",className:(0,d.cn)(v,"shrink-0 opacity-0 transition-opacity group-hover:opacity-100",j?"text-red-300 opacity-100":"text-muted-foreground hover:text-red-300"),children:(0,t.jsx)(s.Trash2,{className:"size-3"})})]})]})}],97109);var k=e.i(99985),N=e.i(50667),S=e.i(67881);let j=[{id:"claude",label:"Prompt p/ Claude Code",fn:function(e){let t=["Implement this database schema in this project, following its existing stack and conventions:",""];for(let n of e.tables){let e=`Table \`${n.name}\``+(n.domain?` (domain: ${n.domain})`:"")+(n.description?` — ${n.description}`:"");for(let r of(t.push(e),n.columns)){let e=[r.isPk&&"PK",r.isFk&&"FK",!1===r.nullable&&"NOT NULL"].filter(Boolean).join(", ");t.push(` - ${r.name}: ${r.type}`+(e?` [${e}]`:"")+(r.note?` — ${r.note}`:""))}t.push("")}if(e.relations.length){for(let n of(t.push("Foreign keys:"),e.relations))t.push(` - ${n.fromTable}.${n.fromColumn} -> ${n.toTable}.${n.toColumn}`);t.push("")}return t.push("Create the models/migrations using the project's existing ORM and patterns, wire the relationships, and keep table and column names exactly as given."),t.join("\n")}},{id:"dbml",label:"DBML",fn:function(e){let t=[];for(let n of e.tables){for(let e of(t.push(`Table ${n.name} {`),n.columns)){let n=[e.isPk&&"pk",!1===e.nullable&&!e.isPk&&"not null",e.note&&`note: '${e.note.replace(/'/g,"")}'`].filter(Boolean).join(", ");t.push(` ${e.name} ${e.type}`+(n?` [${n}]`:""))}t.push("}","")}for(let n of e.relations)t.push(`Ref: ${n.fromTable}.${n.fromColumn} > ${n.toTable}.${n.toColumn}`);return t.join("\n").trim()}},{id:"sql",label:"SQL DDL",fn:function(e){let t=[];for(let n of e.tables){t.push(`CREATE TABLE ${n.name} (`);let r=n.columns.map(e=>{let t=[` ${e.name} ${e.type}`];return e.isPk?t.push("PRIMARY KEY"):!1===e.nullable&&t.push("NOT NULL"),t.join(" ")}),o=e.relations.filter(e=>e.fromTable===n.name).map(e=>` FOREIGN KEY (${e.fromColumn}) REFERENCES ${e.toTable}(${e.toColumn})`);t.push([...r,...o].join(",\n")),t.push(");","")}return t.join("\n").trim()}}];function C({draftGraph:e}){let[r,o]=(0,n.useState)(null);if(0===e.tables.length)return null;async function i(t){await navigator.clipboard.writeText(t.fn(e)).catch(()=>{}),o(t.id),setTimeout(()=>o(null),1500)}return(0,t.jsxs)("div",{className:"space-y-2 rounded-xl border border-sky-400/20 bg-sky-500/[0.04] p-3",children:[(0,t.jsxs)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-sky-300",children:["Rascunho · ",e.tables.length," tabelas"]}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,t.jsx)("span",{className:"text-[10px] uppercase tracking-wide text-muted-foreground",children:"copiar:"}),j.map(e=>(0,t.jsx)(S.Button,{size:"sm",variant:"outline",className:"h-6 px-2 text-[11px]",onClick:()=>i(e),children:r===e.id?"✓":e.label},e.id))]})]})}function E({active:e,onClick:n,children:r}){return(0,t.jsx)("button",{type:"button",onClick:n,className:(0,d.cn)("flex items-center gap-1 rounded-md px-2.5 py-1 text-[11px] font-medium transition-colors",e?"bg-white/10 text-foreground":"text-muted-foreground hover:text-foreground"),children:r})}function M({table:e,relations:n,endpoints:r,nameById:a}){let s=n.filter(t=>t.fromTableId===e.id),l=n.filter(t=>t.toTableId===e.id),d=r.map(t=>({e:t,u:t.tables.find(t=>t.tableId===e.id)})).filter(e=>e.u);return(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"text-xs uppercase tracking-wide",style:{color:(0,c.domainColor)(e.domain)},children:e.domain??"table"}),(0,t.jsx)("h2",{className:"font-mono text-lg font-semibold",children:e.name}),e.description&&(0,t.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:e.description})]}),(0,t.jsx)(P,{title:`Columns (${e.columns.length})`,children:(0,t.jsx)("ul",{className:"space-y-0.5",children:e.columns.map(e=>(0,t.jsxs)("li",{className:"flex items-center gap-1.5 text-xs",children:[e.isPk?(0,t.jsx)(o,{className:"size-3 text-amber-400"}):e.isFk?(0,t.jsx)(i,{className:"size-3 text-sky-400"}):(0,t.jsx)("span",{className:"size-3"}),(0,t.jsx)("span",{className:"font-mono",children:e.name}),(0,t.jsxs)("span",{className:"ml-auto font-mono text-[10px] text-muted-foreground",children:[e.type,!e.nullable&&" ·NN"]})]},e.name))})}),s.length>0&&(0,t.jsx)(P,{title:"References (FK out)",children:(0,t.jsx)("ul",{className:"space-y-1 text-xs",children:s.map(e=>(0,t.jsxs)("li",{className:"font-mono text-muted-foreground",children:[e.fromColumn," → ",a.get(e.toTableId),".",e.toColumn]},e.id))})}),l.length>0&&(0,t.jsx)(P,{title:"Referenced by (FK in)",children:(0,t.jsx)("ul",{className:"space-y-1 text-xs",children:l.map(e=>(0,t.jsxs)("li",{className:"font-mono text-muted-foreground",children:[a.get(e.fromTableId),".",e.fromColumn]},e.id))})}),d.length>0&&(0,t.jsx)(P,{title:`Used by endpoints (${d.length})`,children:(0,t.jsx)("ul",{className:"space-y-1 text-xs",children:d.map(({e,u:n})=>(0,t.jsxs)("li",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("span",{style:{color:c.METHOD_COLOR[e.method]},className:"font-bold",children:e.method}),(0,t.jsx)("span",{className:"truncate font-mono",children:e.path}),(0,t.jsx)("span",{className:"ml-auto",style:{color:c.ACCESS_COLOR[n.access]},children:n.access})]},e.id))})})]})}function _({ep:e,nameById:n}){return(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"rounded px-1.5 py-0.5 text-[11px] font-bold",style:{background:`${c.METHOD_COLOR[e.method]}22`,color:c.METHOD_COLOR[e.method]},children:e.method}),(0,t.jsx)("h2",{className:"mt-2 font-mono text-base font-semibold",children:e.path}),e.description&&(0,t.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:e.description})]}),(0,t.jsx)(P,{title:`Tables used (${e.tables.length})`,children:(0,t.jsx)("ul",{className:"space-y-1 text-xs",children:e.tables.map(e=>(0,t.jsxs)("li",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("span",{className:"font-mono",children:n.get(e.tableId)}),(0,t.jsx)("span",{className:"ml-auto",style:{color:c.ACCESS_COLOR[e.access]},children:e.access})]},e.tableId))})})]})}function A({tables:e,relations:n,endpoints:r}){return(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-sm font-semibold",children:"Database"}),(0,t.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:"Live schema derived from your code. Click a table or endpoint to see details. Drag to rearrange — positions are saved."})]}),(0,t.jsxs)("dl",{className:"grid grid-cols-3 gap-2 text-center",children:[(0,t.jsx)(T,{label:"tables",value:e.length}),(0,t.jsx)(T,{label:"FKs",value:n.length}),(0,t.jsx)(T,{label:"endpoints",value:r.length})]}),(0,t.jsx)(P,{title:"Legend",children:(0,t.jsxs)("ul",{className:"space-y-1 text-xs text-muted-foreground",children:[(0,t.jsxs)("li",{className:"flex items-center gap-1.5",children:[(0,t.jsx)(o,{className:"size-3 text-amber-400"})," primary key"]}),(0,t.jsxs)("li",{className:"flex items-center gap-1.5",children:[(0,t.jsx)(i,{className:"size-3 text-sky-400"})," foreign key"]}),(0,t.jsx)("li",{children:"— gray line: FK relation between tables"}),(0,t.jsx)("li",{children:"– – dashed line: endpoint uses table (read/write)"})]})})]})}function P({title:e,children:n}){return(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"mb-1.5 text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:e}),n]})}function T({label:e,value:n}){return(0,t.jsxs)("div",{className:"rounded-lg border border-white/10 bg-white/[0.03] py-2",children:[(0,t.jsx)("div",{className:"text-lg font-semibold",children:n}),(0,t.jsx)("div",{className:"text-[10px] uppercase tracking-wide text-muted-foreground",children:e})]})}e.s(["DbDetailSidebar",0,function({selected:e,tables:n,relations:r,endpoints:o,draftGraph:i,onClose:a,commentsContent:s,commentsCount:d=0,activeTab:c,onTabChange:u,onAddComment:h,topOffset:f}){let p,m,g=new Map(n.map(e=>[e.id,e.name])),x=!!s,y=c??"details",b=e?.kind==="table"?n.find(t=>t.id===e.id)?.name??null:e?.kind==="endpoint"&&(m=o.find(t=>t.id===e.id))?`${m.method} ${m.path}`:null;if(e?.kind==="table"){let i=n.find(t=>t.id===e.id);p=i?(0,t.jsx)(M,{table:i,relations:r,endpoints:o,nameById:g}):null}else if(e?.kind==="endpoint"){let n=o.find(t=>t.id===e.id);p=n?(0,t.jsx)(_,{ep:n,nameById:g}):null}else p=(0,t.jsx)(A,{tables:n,relations:r,endpoints:o});return(0,t.jsxs)(N.GlassPanel,{className:"absolute bottom-3 right-3 z-10 flex w-80 flex-col rounded-2xl",style:{top:f??12},children:[x?(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-white/10 px-1 py-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-0.5",children:[(0,t.jsx)(E,{active:"details"===y,onClick:()=>u?.("details"),children:"Details"}),(0,t.jsxs)(E,{active:"comments"===y,onClick:()=>u?.("comments"),children:["Comments",d>0&&(0,t.jsx)("span",{className:"ml-1 rounded-full bg-white/10 px-1 text-[9px] font-semibold leading-4",children:d})]})]}),(0,t.jsx)("button",{onClick:a,title:"Close panel",className:"mr-1 rounded-md p-1 text-muted-foreground transition-colors hover:bg-white/10 hover:text-foreground",children:(0,t.jsx)(l.X,{className:"size-4"})})]}):(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-white/10 px-3.5 py-2.5",children:[(0,t.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:"Panel"}),(0,t.jsx)("button",{onClick:a,title:"Close panel",className:"rounded-md p-1 text-muted-foreground transition-colors hover:bg-white/10 hover:text-foreground",children:(0,t.jsx)(l.X,{className:"size-4"})})]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto",children:"comments"===y&&x?(0,t.jsx)("div",{className:"p-3",children:s}):(0,t.jsxs)(t.Fragment,{children:[i.tables.length>0&&(0,t.jsx)("div",{className:"border-b border-white/10 p-3.5",children:(0,t.jsx)(C,{draftGraph:i})}),(0,t.jsxs)("div",{className:"p-4",children:[h&&b&&(0,t.jsxs)("button",{type:"button",onClick:()=>h(b),className:"mb-3 flex w-full items-center justify-center gap-1.5 rounded-lg border border-white/10 bg-white/[0.03] px-3 py-1.5 text-[11px] font-medium text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:[(0,t.jsx)(k.MessageSquarePlus,{className:"size-3.5"}),"Comment on this ",e?.kind==="endpoint"?"endpoint":"table"]}),p]})]})})]})}],74466);let D=new Set(["GET","HEAD","OPTIONS"]);e.s(["accessForMethod",0,function(e){return D.has(e.trim().toUpperCase())?"read":"write"}],34732);let I=e=>e.trim().toLowerCase();e.s(["diffDraftEndpoints",0,function(e,t){let n=e=>`${I(e.method)} ${I(e.path)}`,r=new Set(e.map(n)),o=new Map;for(let e of t)o.set(e.id,r.has(n(e))?{status:"unchanged",changes:[]}:{status:"added",changes:["new endpoint"]});return o},"diffDraftTables",0,function(e,t){let n=new Map(e.map(e=>[I(e.name),e])),r=new Map;for(let e of t){let t=n.get(I(e.name));if(!t){r.set(e.id,{status:"added",changes:["new table"]});continue}let o=function(e,t){let n=new Map(e.map(e=>[I(e.name),e])),r=new Set(t.map(e=>I(e.name))),o=[];for(let e of t){let t=n.get(I(e.name));if(!t){o.push(`+ column ${e.name} (${e.type})`);continue}let r=[];I(t.type)!==I(e.type)&&r.push(`type ${t.type}→${e.type}`),t.isPk!==e.isPk&&r.push(e.isPk?"now PK":"no longer PK"),t.isFk!==e.isFk&&r.push(e.isFk?"now FK":"no longer FK"),t.nullable!==e.nullable&&r.push(e.nullable?"now nullable":"now required"),r.length&&o.push(`~ column ${e.name}: ${r.join(", ")}`)}for(let t of e)r.has(I(t.name))||o.push(`- column ${t.name}`);return o}(t.columns,e.columns);r.set(e.id,{status:o.length?"modified":"unchanged",changes:o})}return r}],22851)},89664,e=>{"use strict";var t=e.i(43957);e.s(["Check",()=>t.default])},91535,e=>{"use strict";var t=e.i(43476),n=e.i(71645),r=e.i(18566),o=e.i(54548),i=e.i(30590),a=e.i(19205),s=e.i(97109),l=e.i(66817),d=e.i(74466),c=e.i(55245),u=e.i(80936),h=e.i(73970),f=e.i(34732),p=e.i(22851),m=e.i(47163),g=e.i(89664),x=e.i(76248),y=e.i(23089),b=e.i(56420);let v=(0,b.default)("redo-2",[["path",{d:"m15 14 5-5-5-5",key:"12vg1m"}],["path",{d:"M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13",key:"6uklza"}]]);var w=e.i(12092),k=e.i(73474);let N=(0,b.default)("undo-2",[["path",{d:"M9 14 4 9l5-5",key:"102s5s"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",key:"f3b9sd"}]]);var S=e.i(50513);let j={dbTable:a.DbTableNode,endpoint:s.EndpointNode},C={deletable:S.DeletableEdge},E="beacon:db-draft",M={proposedAt:0,status:"pending",tables:[],relations:[],endpoints:[]};e.s(["DbMapClient",0,function({tables:e,relations:a,endpoints:s,draft:b,workspaceId:S,embedded:_=!1,draftRef:A,onEdit:P,controlRef:T,commentsContent:D,commentsCount:I=0,onAddComment:R}){let z=(0,r.useRouter)(),[$,O]=(0,n.useState)(!0),[L,B]=(0,n.useState)(null),[H,F]=(0,n.useState)(null),[V,X]=(0,n.useState)(!1),[Y,U]=(0,n.useState)("details"),[K,q]=(0,n.useState)(!1);(0,n.useEffect)(()=>{if(T)return T.current={open:()=>{X(!0),U("details")},close:()=>{X(!1),U("details")},openComments:()=>{X(!0),U("comments")}},()=>{T&&(T.current=null)}},[T]);let[Z,W]=(0,n.useState)(new Set),[G,Q]=(0,n.useState)(new Set),[J,ee]=(0,n.useState)(new Set),[et,en]=(0,n.useState)(()=>({past:[],present:b??M,future:[],rev:0,edited:!1})),er=et.present,eo=(0,n.useCallback)(e=>{en(t=>{let n=e(t.present);return n===t.present?t:{past:[...t.past,t.present].slice(-100),present:n,future:[],rev:t.rev+1,edited:!0}})},[]),ei=(0,n.useCallback)(e=>{en(t=>{let n=e(t.present);return n===t.present?t:{...t,present:n}})},[]),ea=(0,n.useCallback)(()=>en(e=>e.past.length?{past:e.past.slice(0,-1),present:e.past[e.past.length-1],future:[e.present,...e.future],rev:e.rev+1,edited:!0}:e),[]),es=(0,n.useCallback)(()=>en(e=>e.future.length?{past:[...e.past,e.present],present:e.future[0],future:e.future.slice(1),rev:e.rev+1,edited:!0}:e),[]),el=(0,n.useCallback)(e=>en(t=>({past:[],present:e,future:[],rev:t.rev+1,edited:!1})),[]),ed=(0,n.useRef)(!1),ec=b?.proposedAt??0;(0,n.useEffect)(()=>{let e=null;if(ed.current)b&&b.proposedAt!==er.proposedAt?e=b:!b&&(er.tables.length>0||er.endpoints.length>0)&&(e=M);else{ed.current=!0;let t=null;try{let e=localStorage.getItem(E);if(e){let n=JSON.parse(e);n.workspaceId===S&&n.doc&&b&&n.doc.proposedAt===b.proposedAt&&(t=n.doc)}}catch{}e=t??b??null}e&&el(e)},[ec]),(0,n.useEffect)(()=>{try{er.tables.length>0||er.endpoints.length>0?localStorage.setItem(E,JSON.stringify({workspaceId:S,doc:er})):localStorage.removeItem(E)}catch{}},[er,S]),(0,n.useEffect)(()=>{A&&(A.current=er)},[A,er]);let eu=(0,n.useRef)(!1);(0,n.useEffect)(()=>{et.edited&&!eu.current&&(eu.current=!0,P?.())},[et.edited,P]);let eh=(0,n.useMemo)(()=>er.tables.map(e=>({id:e.id,name:e.name,domain:e.domain,description:e.description,source:"DRAFT",x:e.x,y:e.y,columns:e.columns})),[er]),ef=(0,n.useMemo)(()=>er.endpoints.map(e=>({id:e.id,method:e.method,path:e.path,domain:e.domain,description:e.description,source:"DRAFT",x:e.x,y:e.y,tables:e.links.map(e=>({tableId:e.tableId,access:e.access}))})),[er]),ep=(0,n.useMemo)(()=>[...e,...eh],[e,eh]),em=(0,n.useMemo)(()=>[...s,...ef],[s,ef]),eg=(0,n.useMemo)(()=>new Map,[]),ex=(0,n.useMemo)(()=>_?(0,p.diffDraftTables)(e,eh):eg,[_,e,eh,eg]),ey=(0,n.useMemo)(()=>_?(0,p.diffDraftEndpoints)(s,ef):eg,[_,s,ef,eg]),eb=(0,n.useMemo)(()=>[...a,...er.relations.map(e=>({id:e.id,fromTableId:e.fromTableId,toTableId:e.toTableId,fromColumn:e.fromColumn,toColumn:e.toColumn,label:e.label}))],[a,er.relations]),ev=(0,n.useMemo)(()=>{let e=new Map;for(let t of em)for(let n of t.tables)e.set(n.tableId,(e.get(n.tableId)??0)+1);return e},[em]),ew=(0,n.useMemo)(()=>{let e=new Map;return ep.forEach(t=>e.set(t.id,t.x)),em.forEach(t=>e.set(t.id,t.x)),e},[ep,em]),ek=(0,n.useCallback)((e,t)=>(ew.get(e)??0)<=(ew.get(t)??0)?{sourceHandle:"sr",targetHandle:"tl"}:{sourceHandle:"sl",targetHandle:"tr"},[ew]),eN=(0,n.useMemo)(()=>new Set([...er.tables.map(e=>e.id),...er.endpoints.map(e=>e.id)]),[er]),eS=(0,n.useMemo)(()=>new Set(e.map(e=>e.id)),[e]),ej=(0,n.useCallback)(()=>[...ep.map(e=>({id:e.id,type:"dbTable",position:{x:e.x,y:e.y},data:{name:e.name,domain:e.domain,columns:e.columns,usageCount:ev.get(e.id)??0,source:e.source,rev:et.rev,diffStatus:ex.get(e.id)?.status,diffChanges:ex.get(e.id)?.changes}})),...em.map(e=>({id:e.id,type:"endpoint",position:{x:e.x,y:e.y},data:{method:e.method,path:e.path,domain:e.domain,source:e.source,rev:et.rev,diffStatus:ey.get(e.id)?.status,diffChanges:ey.get(e.id)?.changes}}))],[ep,em,ev,et.rev,ex,ey]),[eC,eE,eM]=(0,o.useNodesState)(ej());(0,n.useEffect)(()=>{eE(e=>{let t=new Map(e.map(e=>[e.id,e.position]));return ej().map(e=>({...e,position:t.get(e.id)??e.position}))})},[ej,eE]);let e_=(0,n.useCallback)((e,t,n,r)=>{fetch("/api/db/position",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({kind:e,id:t,x:n,y:r})})},[]),eA=(0,n.useCallback)((e,t)=>{let{x:n,y:r}=t.position;eN.has(t.id)?ei(e=>e.tables.some(e=>e.id===t.id)?{...e,tables:e.tables.map(e=>e.id===t.id?{...e,x:n,y:r}:e)}:e.endpoints.some(e=>e.id===t.id)?{...e,endpoints:e.endpoints.map(e=>e.id===t.id?{...e,x:n,y:r}:e)}:e):e_("endpoint"===t.type?"endpoint":"table",t.id,n,r)},[eN,ei,e_]),eP=(0,n.useMemo)(()=>eb.map(e=>({id:`fk-${e.id}`,source:e.fromTableId,target:e.toTableId,...ek(e.fromTableId,e.toTableId),type:"deletable",label:e.label??void 0,markerEnd:{type:i.MarkerType.ArrowClosed,color:"#6b6b6b"},style:{stroke:"#6b6b6b"}})),[eb,ek]),eT=(0,n.useMemo)(()=>em.flatMap(e=>e.tables.map(t=>{let n=c.ACCESS_COLOR[t.access]??"#5a5a5a";return{id:`u-${e.id}-${t.tableId}`,source:e.id,target:t.tableId,...ek(e.id,t.tableId),type:"default",markerEnd:{type:i.MarkerType.ArrowClosed,color:n},style:{stroke:n,strokeDasharray:"4 4",opacity:.7}}})),[em,ek]),eD=(0,n.useMemo)(()=>$?[...eP,...eT]:eP,[eP,eT,$]),eI=(0,n.useMemo)(()=>{if(H){let e=eD.find(e=>e.id===H);return e?new Set([e.source,e.target]):null}return L?(0,c.neighborIds)(L.id,eD):null},[L,H,eD]),eR=(0,n.useMemo)(()=>new Map(ep.map(e=>[e.id,{domain:e.domain,source:e.source}])),[ep]),ez=(0,n.useMemo)(()=>new Map(em.map(e=>[e.id,{method:e.method,source:e.source}])),[em]),e$=(0,n.useMemo)(()=>{let e=new Set;if(!$)for(let t of ez.keys())e.add(t);for(let[t,n]of eR)!Z.size||n.domain&&Z.has(n.domain)||e.add(t),G.size&&!G.has(n.source)&&e.add(t);for(let[t,n]of ez)J.size&&!J.has(n.method)&&e.add(t),G.size&&!G.has(n.source)&&e.add(t);return e},[$,eR,ez,Z,G,J]),eO=(0,n.useMemo)(()=>eC.map(e=>{let t=e$.has(e.id);return eI?{...e,hidden:t,style:{...e.style,opacity:eI.has(e.id)?1:.45,transition:"opacity 120ms"}}:t?{...e,hidden:t}:e}),[eC,e$,eI]),eL=(0,n.useMemo)(()=>eD.map(e=>{let t=e$.has(e.source)||e$.has(e.target);return L||H?(H?e.id===H:L&&(e.source===L.id||e.target===L.id))?{...e,hidden:t,zIndex:20,style:{...e.style,opacity:1,strokeWidth:2.5}}:{...e,hidden:t,selectable:!1,label:void 0,markerEnd:void 0,style:{...e.style,opacity:.08}}:t?{...e,hidden:t}:e}),[eD,L,H,e$]),eB=(0,n.useMemo)(()=>Array.from(new Set(ep.map(e=>e.domain).filter(e=>!!e))).sort(),[ep]),eH=(0,n.useMemo)(()=>Array.from(new Set([...ep.map(e=>e.source),...em.map(e=>e.source)])).sort(),[ep,em]),eF=(0,n.useMemo)(()=>Array.from(new Set(em.map(e=>e.method))).sort(),[em]);function eV(e,t){t(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}let eX=+!$+Z.size+G.size+J.size,eY=(0,n.useCallback)(()=>{O(!0),W(new Set),Q(new Set),ee(new Set)},[]),eU=(0,n.useCallback)(e=>{let{source:t,target:n}=e;t&&n&&t!==n&&eo(e=>{if(!(e.tables.some(e=>e.id===n)||eS.has(n)))return e;let r=e.endpoints.find(e=>e.id===t);return r?r.links.some(e=>e.tableId===n)?e:{...e,endpoints:e.endpoints.map(e=>e.id===t?{...e,links:[...e.links,{tableId:n,access:(0,f.accessForMethod)(e.method)}]}:e)}:e.tables.find(e=>e.id===t)?e.relations.some(e=>e.fromTableId===t&&e.toTableId===n)?e:{...e,relations:[...e.relations,{id:crypto.randomUUID(),fromTableId:t,toTableId:n,fromColumn:"fk",toColumn:"id",label:null}]}:e})},[eo,eS]),eK=(0,n.useMemo)(()=>({patchEndpoint:(e,t)=>eo(n=>({...n,endpoints:n.endpoints.map(n=>n.id===e?{...n,...t}:n)})),deleteEndpoint:e=>eo(t=>({...t,endpoints:t.endpoints.filter(t=>t.id!==e)})),patchTable:(e,t)=>eo(n=>({...n,tables:n.tables.map(n=>n.id===e?{...n,...t}:n)})),deleteTable:e=>eo(t=>({...t,tables:t.tables.filter(t=>t.id!==e),relations:t.relations.filter(t=>t.fromTableId!==e&&t.toTableId!==e),endpoints:t.endpoints.map(t=>({...t,links:t.links.filter(t=>t.tableId!==e)}))})),deleteRealEndpoint:e=>{fetch(`/api/endpoints/${e}`,{method:"DELETE"}).then(e=>{e.ok&&z.refresh()})}}),[eo,z]);(0,n.useEffect)(()=>{let e=e=>{if(!(e.metaKey||e.ctrlKey))return;let t=e.target;if(t&&/^(INPUT|TEXTAREA|SELECT)$/.test(t.tagName))return;let n=e.key.toLowerCase();"z"===n?(e.preventDefault(),e.shiftKey?es():ea()):"y"===n&&(e.preventDefault(),es())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[ea,es]);let eq=(0,n.useCallback)(async()=>{q(!0);try{if((await fetch("/api/draft/approve",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(er)})).ok){try{localStorage.removeItem(E)}catch{}el(M),z.refresh()}}finally{q(!1)}},[er,el,z]),eZ=(0,n.useCallback)(async()=>{q(!0);try{await fetch("/api/draft",{method:"DELETE"})}catch{}try{localStorage.removeItem(E)}catch{}el(M),z.refresh(),q(!1)},[el,z]),eW=(0,n.useMemo)(()=>{let e;return e=new Map(er.tables.map(e=>[e.id,e.name])),{tables:er.tables.map(e=>({name:e.name,domain:e.domain,description:e.description,columns:e.columns.map(e=>({name:e.name,type:e.type,isPk:e.isPk,isFk:e.isFk,nullable:e.nullable,note:e.note}))})),relations:er.relations.flatMap(t=>{let n=e.get(t.fromTableId),r=e.get(t.toTableId);return n&&r?[{fromTable:n,fromColumn:t.fromColumn,toTable:r,toColumn:t.toColumn,label:t.label}]:[]}),endpoints:er.endpoints.map(t=>({method:t.method,path:t.path,domain:t.domain,description:t.description,uses:t.links.flatMap(t=>{let n=e.get(t.tableId);return n?[{table:n,access:t.access}]:[]})}))}},[er]),eG=er.tables.length>0||er.endpoints.length>0,eQ=et.past.length>0,eJ=et.future.length>0;return(0,t.jsx)(l.DbEditContext.Provider,{value:eK,children:(0,t.jsxs)("div",{className:(0,m.cn)("relative w-full",_?"h-full":"h-screen"),children:[(0,t.jsxs)(o.ReactFlow,{nodes:eO,edges:eL,nodeTypes:j,edgeTypes:C,connectionMode:i.ConnectionMode.Loose,connectionLineStyle:{stroke:"var(--accent-2,#ff7a45)",strokeWidth:1.5,strokeDasharray:"4 4"},onNodesChange:eM,onConnect:eU,onNodeClick:(e,t)=>{let n="endpoint"===t.type?"endpoint":"table";B({id:t.id,kind:n}),F(null),X(!0),U("details")},onEdgeClick:(e,t)=>{F(t.id),B(null)},onPaneClick:()=>{B(null),F(null)},onNodeDragStop:eA,onEdgesDelete:e=>{for(let t of e)if(t.id.startsWith("fk-")){let e=t.id.slice(3);fetch(`/api/db/relations/${e}`,{method:"DELETE"})}},onNodesDelete:e=>{for(let t of e)eN.has(t.id)||("endpoint"===t.type?fetch(`/api/endpoints/${t.id}`,{method:"DELETE"}):"dbTable"===t.type&&fetch(`/api/db/tables/${t.id}`,{method:"DELETE"}))},deleteKeyCode:["Backspace","Delete"],colorMode:"dark",fitView:!0,minZoom:.15,panOnScroll:!0,zoomActivationKeyCode:["Meta","Control"],proOptions:{hideAttribution:!0},children:[(0,t.jsx)(o.Background,{gap:22,color:"#2a2a32"}),(0,t.jsx)(o.Controls,{position:"bottom-right",className:"!overflow-hidden !rounded-xl !border !border-white/10 [&_button]:!border-white/10 [&_button]:!bg-card/70 [&_button]:!text-foreground [&_button]:!backdrop-blur"}),!_&&(0,t.jsx)(o.MiniMap,{pannable:!0,zoomable:!0,position:"bottom-left",style:{width:140,height:90},className:"!rounded-xl !border !border-white/10 !bg-card/50 !backdrop-blur",nodeColor:"#555"}),!_&&(0,t.jsx)(o.Panel,{position:"top-center",className:"glass rounded-full px-1 py-0.5",children:(0,t.jsx)(h.CanvasTabs,{active:"DATABASE",tabs:[{value:"ROADMAP",label:"Roadmap",href:"/map?view=ROADMAP"},{value:"ARCHITECTURE",label:"Architecture",href:"/map?view=ARCHITECTURE"},{value:"FILES",label:"Files",href:"/map?view=FILES"},{value:"DATABASE",label:"Database",href:"/map?view=DATABASE"}]})}),(0,t.jsxs)(o.Panel,{position:"top-right",className:(0,m.cn)("flex items-center gap-1 transition-[margin] duration-200",V&&"!mr-[332px]",_&&"hidden"),children:[(0,t.jsxs)(u.CanvasPopover,{title:"Filters",trigger:(e,n)=>(0,t.jsxs)("button",{type:"button",onClick:n,title:"Filters",className:(0,m.cn)("glass relative flex size-8 items-center justify-center rounded-lg transition-colors",e||eX>0?"text-foreground":"text-muted-foreground hover:text-foreground"),children:[(0,t.jsx)(w.SlidersHorizontal,{className:"size-4"}),eX>0&&(0,t.jsx)("span",{className:"absolute -right-1 -top-1 flex h-4 min-w-4 items-center justify-center rounded-full bg-[var(--accent-2,#ff7a45)] px-1 text-[9px] font-semibold text-white",children:eX})]}),children:[(0,t.jsx)(u.PopoverSection,{title:"Show",children:(0,t.jsx)(u.Chip,{tone:"accent",on:$,onClick:()=>O(e=>!e),children:"endpoints"})}),eB.length>0&&(0,t.jsx)(u.PopoverSection,{title:"Domain",children:eB.map(e=>(0,t.jsx)(u.Chip,{on:Z.has(e),onClick:()=>eV(e,W),children:e},e))}),eF.length>0&&(0,t.jsx)(u.PopoverSection,{title:"Method",children:eF.map(e=>(0,t.jsx)(u.Chip,{on:J.has(e),onClick:()=>eV(e,ee),children:e},e))}),eH.length>0&&(0,t.jsx)(u.PopoverSection,{title:"Source",children:eH.map(e=>(0,t.jsx)(u.Chip,{on:G.has(e),onClick:()=>eV(e,Q),children:e.toLowerCase()},e))}),eX>0&&(0,t.jsx)("button",{type:"button",onClick:eY,className:"mt-1 w-full rounded-md border border-white/10 px-2 py-1 text-[11px] font-medium text-muted-foreground transition-colors hover:bg-white/5 hover:text-foreground",children:"clear filters"})]}),(0,t.jsx)(u.CanvasPopover,{title:"Legend",trigger:(e,n)=>(0,t.jsx)("button",{type:"button",onClick:n,title:"Legend",className:(0,m.cn)("glass flex size-8 items-center justify-center rounded-lg transition-colors",e?"text-foreground":"text-muted-foreground hover:text-foreground"),children:(0,t.jsx)(x.HelpCircle,{className:"size-4"})}),children:(0,t.jsxs)("ul",{className:"space-y-1.5 text-[10.5px] text-muted-foreground",children:[(0,t.jsxs)("li",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"inline-block h-px w-6 bg-[#6b6b6b]"}),(0,t.jsx)("span",{children:"foreign key · drag from a table handle"})]}),(0,t.jsxs)("li",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"inline-block h-0 w-6 border-t border-dashed",style:{borderColor:"#4ea1ff"}}),(0,t.jsx)("span",{children:"endpoint read · GET / POST / etc"})]}),(0,t.jsxs)("li",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"inline-block h-0 w-6 border-t border-dashed",style:{borderColor:"#ffb86b"}}),(0,t.jsx)("span",{children:"endpoint write"})]}),(0,t.jsxs)("li",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"inline-block rounded border border-dashed border-sky-400/50 px-1 py-0.5 text-[9px] font-semibold uppercase tracking-wide text-sky-300",children:"draft"}),(0,t.jsx)("span",{children:"agent-proposed · approve to persist"})]})]})}),!V&&(0,t.jsx)("button",{onClick:()=>X(!0),title:"Show panel",className:"glass flex size-8 items-center justify-center rounded-lg text-muted-foreground transition-colors hover:text-foreground",children:(0,t.jsx)(y.PanelRight,{className:"size-4"})})]}),eG&&(0,t.jsxs)(o.Panel,{position:"bottom-center",className:"glass flex items-center gap-1 rounded-xl p-1.5",children:[(0,t.jsxs)("button",{onClick:ea,disabled:!eQ,title:"Undo (⌘Z)",className:"flex items-center gap-1 rounded-md px-2 py-1 text-[11px] font-medium text-muted-foreground transition-colors hover:bg-white/10 hover:text-foreground disabled:opacity-30 disabled:hover:bg-transparent",children:[(0,t.jsx)(N,{className:"size-3.5"})," undo"]}),(0,t.jsxs)("button",{onClick:es,disabled:!eJ,title:"Redo (⇧⌘Z)",className:"flex items-center gap-1 rounded-md px-2 py-1 text-[11px] font-medium text-muted-foreground transition-colors hover:bg-white/10 hover:text-foreground disabled:opacity-30 disabled:hover:bg-transparent",children:[(0,t.jsx)(v,{className:"size-3.5"})," redo"]}),!_&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"mx-1 h-4 w-px bg-white/10"}),(0,t.jsxs)("button",{onClick:eZ,disabled:K,title:"Discard draft",className:"flex items-center gap-1 rounded-md px-2 py-1 text-[11px] font-medium text-muted-foreground transition-colors hover:bg-red-500/15 hover:text-red-300 disabled:opacity-40",children:[(0,t.jsx)(k.Trash2,{className:"size-3.5"})," discard"]}),(0,t.jsxs)("button",{onClick:eq,disabled:K,title:"Approve and persist to the schema",className:"flex items-center gap-1 rounded-md border border-emerald-500/40 bg-emerald-500/15 px-2.5 py-1 text-[11px] font-semibold text-emerald-300 transition-colors hover:bg-emerald-500/25 disabled:opacity-40",children:[(0,t.jsx)(g.Check,{className:"size-3.5"})," approve draft"]})]})]})]}),V&&(0,t.jsx)(d.DbDetailSidebar,{selected:L,tables:ep,relations:eb,endpoints:em,draftGraph:eW,onClose:()=>{X(!1),U("details")},commentsContent:D,commentsCount:I,activeTab:Y,onTabChange:U,onAddComment:R,topOffset:_?64:void 0})]})})}],91535)}]);
|